diff --git a/src/lib/components/Facets/Facets.svelte b/src/lib/components/Facets/Facets.svelte
index f257436f..24d9f85f 100644
--- a/src/lib/components/Facets/Facets.svelte
+++ b/src/lib/components/Facets/Facets.svelte
@@ -1,34 +1,17 @@
@@ -148,7 +153,9 @@
bind:checked={selectedGroups[group.name]}
bind:group={selectedGroups}
>
-
{group.displayName}
+
+ {group.displayName}{group.count !== undefined ? ` (${group.count})` : ''}
+
diff --git a/src/lib/index.ts b/src/lib/index.ts
index c9c981ee..084a7a4c 100644
--- a/src/lib/index.ts
+++ b/src/lib/index.ts
@@ -32,6 +32,7 @@ import type { TableConfig, Columns, Column } from './models/Models';
//Facets
import Facets from './components/Facets/Facets.svelte';
+import type { FacetGroup, FacetOption, SelectedFacetGroup } from './models/Models';
// CodeEditor
import CodeEditor from './components/CodeEditor/CodeEditor.svelte';
@@ -108,6 +109,7 @@ export { Table, TableFilter, columnFilter, searchFilter };
// Facets
export { Facets };
+export type { FacetGroup, FacetOption, SelectedFacetGroup };
// CodeEditor
export { CodeEditor };
diff --git a/src/lib/models/Models.ts b/src/lib/models/Models.ts
index 6505df10..bff6997d 100644
--- a/src/lib/models/Models.ts
+++ b/src/lib/models/Models.ts
@@ -195,23 +195,20 @@ export interface FacetOption {
name: string;
displayName: string;
count?: number;
+ selected?: boolean;
}
export interface FacetGroup {
name: string;
displayName: string;
+ selected?: boolean;
children: FacetOption[];
count?: number;
}
-export interface SelectedFacetOption extends FacetOption {
- selected: boolean;
-}
-
export interface SelectedFacetGroup extends Omit {
- selected: boolean;
children: {
- [key: string]: SelectedFacetOption;
+ [key: string]: FacetOption;
};
}
diff --git a/src/routes/components/facets/data/data.ts b/src/routes/components/facets/data/data.ts
index 8c442be0..04e7649c 100644
--- a/src/routes/components/facets/data/data.ts
+++ b/src/routes/components/facets/data/data.ts
@@ -64,9 +64,10 @@ export const groups: FacetGroup[] = [
{ name: 'Stephen King', displayName: 'Stephen King', count: 10 },
{ name: 'J.K. Rowling', displayName: 'J.K. Rowling', count: 3 },
{ name: 'Agatha Christie', displayName: 'Agatha Christie', count: 4 },
- { name: 'Dan Brown', displayName: 'Dan Brown', count: 7 }
+ { name: 'Dan Brown', displayName: 'Dan Brown', count: 7, selected: true },
],
name: 'authors',
- displayName: 'Authors'
+ displayName: 'Authors',
+ count: 24
}
];
diff --git a/src/routes/components/facets/examples/FacetsGroupSelection.svelte b/src/routes/components/facets/examples/FacetsGroupSelection.svelte
index 6307a563..c0d2864f 100644
--- a/src/routes/components/facets/examples/FacetsGroupSelection.svelte
+++ b/src/routes/components/facets/examples/FacetsGroupSelection.svelte
@@ -1,20 +1,12 @@
@@ -23,6 +15,6 @@
svelte={facetsGroupSelectionSvelte}
data={facetsNoGroupSelectionData}
>
-
+ console.log(e)} />
diff --git a/src/routes/components/facets/examples/FacetsNoGroupSelection.svelte b/src/routes/components/facets/examples/FacetsNoGroupSelection.svelte
index 755beab4..ef32a66f 100644
--- a/src/routes/components/facets/examples/FacetsNoGroupSelection.svelte
+++ b/src/routes/components/facets/examples/FacetsNoGroupSelection.svelte
@@ -1,18 +1,20 @@
-
-
+
+ console.log(e)} />