diff --git a/src/lib/components/BoardFilter.component.svelte b/src/lib/components/BoardFilter.component.svelte
new file mode 100644
index 0000000..669a9dd
--- /dev/null
+++ b/src/lib/components/BoardFilter.component.svelte
@@ -0,0 +1,75 @@
+
+
+
+
+
+
+ -
+ All Boards
+
+ -
+ My Boards
+
+ -
+ Public Boards
+
+ {#if !isAnonymous}
+ -
+ Private Boards
+
+ {/if}
+
+
diff --git a/src/lib/components/common/Dropdown/Dropdown.component.svelte b/src/lib/components/common/Dropdown/Dropdown.component.svelte
index 8c749e5..8691537 100644
--- a/src/lib/components/common/Dropdown/Dropdown.component.svelte
+++ b/src/lib/components/common/Dropdown/Dropdown.component.svelte
@@ -48,7 +48,6 @@
z-index: 20;
right: 0;
width: max-content;
- box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.05);
}
.dropDownWrapper.active {
diff --git a/src/lib/enums/App.enums.ts b/src/lib/enums/App.enums.ts
new file mode 100644
index 0000000..e7dfec8
--- /dev/null
+++ b/src/lib/enums/App.enums.ts
@@ -0,0 +1,8 @@
+// contains enums related to app (frontend)
+export enum BoardFilterOption {
+ PRIVATE = 'Private Boards',
+ PUBLIC = 'Public Boards',
+ MY_BOARDS = 'My Boards',
+ ALL_BOARDS = 'All Boards',
+ COLLABORATED = 'Collaborated Boards',
+}
diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte
index f03853b..4422074 100644
--- a/src/routes/+page.svelte
+++ b/src/routes/+page.svelte
@@ -6,9 +6,12 @@
import type { PageData } from './$types';
import boardStore from '$lib/store/boards.store';
import Masonry from '$components/Layouts/Masonry.component.svelte';
+ import BoardFilter from '$components/BoardFilter.component.svelte';
+ import { onDestroy } from 'svelte';
export let data: PageData;
let boards = data.boards;
+ $: filteredBoards = data.boards;
let isModalOpen = false;
@@ -16,10 +19,17 @@
isModalOpen = true;
};
- boardStore.subscribe((boardsData) => {
+ const unsub = boardStore.subscribe((boardsData) => {
boards = boardsData.boards;
isModalOpen = boardsData.isCreateBoardModalOpen;
});
+
+ onDestroy(unsub);
+
+ const hanldeApplyFilter = (e: CustomEvent): void => {
+ const filterValues: string[] = e.detail;
+ console.log(filterValues);
+ };
All Boards | Krello
@@ -29,12 +39,15 @@
All Boards
-
+
+
+
+
- {#each boards as board}
+ {#each filteredBoards as board}