Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 13 additions & 8 deletions app/src/js/modules/events.js
Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@
import { sortDirection, sortSelection, parsedProjectsData } from "./data";
import { updateFilters } from "./filters";
import { getFilteredProjects, setFilteredProjects, updateFilters, updateFilteredProjects } from "./filters";
import { sortCards } from "./sorting";
import { createProjectCards } from "./rendering";
import { renderPaginatedProjects } from "./rendering";
Comment thread
DinneK marked this conversation as resolved.

let currentPage;
let filteredProjects = [...parsedProjectsData];

export function setupEventListeners() {
sortSelection.addEventListener('change', () => sortCards());
Expand Down Expand Up @@ -34,9 +33,15 @@ document.addEventListener("DOMContentLoaded", () => {

searchBox.addEventListener("input", () => {
const query = searchBox.value.toLowerCase();
filteredProjects = parsedProjectsData.filter((project) => project.name.toLowerCase().includes(query.toLowerCase()));
currentPage = 1
createProjectCards()
if(query === '') {
updateFilteredProjects();
Comment thread
DinneK marked this conversation as resolved.
} else {
const newFilteredProjects = parsedProjectsData.filter((project) =>
project.name.toLowerCase().includes(query.toLowerCase())
);
Comment thread
DinneK marked this conversation as resolved.
setFilteredProjects(newFilteredProjects)
currentPage = 1
renderPaginatedProjects(getFilteredProjects());
Comment thread
DinneK marked this conversation as resolved.
}
})
createProjectCards()
})
});
Comment thread
DinneK marked this conversation as resolved.
11 changes: 10 additions & 1 deletion app/src/js/modules/filters.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,16 @@ import { renderPaginatedProjects, renderPaginationControls } from "./rendering";
import { sortCards } from "./sorting";


export let filteredProjects = [...parsedProjectsData];
let filteredProjects = [...parsedProjectsData];
Comment thread
DinneK marked this conversation as resolved.

export function getFilteredProjects() {
return filteredProjects;
Comment thread
DinneK marked this conversation as resolved.
}

export function setFilteredProjects(projects) {
filteredProjects = projects;
Comment thread
DinneK marked this conversation as resolved.
}

let currentPage = 1
const itemsPerPage = 10;

Expand Down
7 changes: 3 additions & 4 deletions app/src/js/modules/rendering.js
Comment thread
DinneK marked this conversation as resolved.
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { reportHeadingTemplate, projectCardTemplate } from "../templates";
import { templateDiv, parsedProjectsData, orgsData, siteData, findObject, baseurl } from "./data";
import { updateFilters } from "./filters";
import { getFilteredProjects, updateFilters } from "./filters";
import { getPageRange, updateHeadingVisibility } from "./utilities";
import DOMPurify from 'dompurify';
Comment thread
DinneK marked this conversation as resolved.

Expand All @@ -9,11 +9,10 @@ const parsedOrgsData = orgsData
let currentPage = 1
const itemsPerPage = 10;

export function createProjectCards() {
let filteredProjects = [...parsedProjectsData];
export function createProjectCards(projects = getFilteredProjects()) {
templateDiv.innerHTML = ''

const allProjects = (filteredProjects || parsedProjectsData).map((project) => ({
const allProjects = (projects || parsedProjectsData).map((project) => ({
...project,
org: project.owner
}));
Expand Down
24 changes: 0 additions & 24 deletions node_modules/.package-lock.json

This file was deleted.

21 changes: 0 additions & 21 deletions node_modules/@types/dompurify/LICENSE

This file was deleted.

16 changes: 0 additions & 16 deletions node_modules/@types/dompurify/README.md

This file was deleted.

138 changes: 0 additions & 138 deletions node_modules/@types/dompurify/index.d.ts

This file was deleted.

47 changes: 0 additions & 47 deletions node_modules/@types/dompurify/package.json

This file was deleted.

21 changes: 0 additions & 21 deletions node_modules/@types/trusted-types/LICENSE

This file was deleted.

15 changes: 0 additions & 15 deletions node_modules/@types/trusted-types/README.md

This file was deleted.

Loading
Loading