@@ -11,14 +11,20 @@ export const useFacetStore = defineStore('facets', () => {
1111
1212 const facets : Ref < Facet [ ] > = ref ( [ ] )
1313 const facetExpanded : Ref < { [ key : string ] : boolean | undefined } > = ref ( { } )
14- const computedExpansionState : { [ key : string ] : WritableComputedRef < boolean > } = { }
14+ const computedExpansionState : { [ key : string ] : WritableComputedRef < boolean > } = { }
15+ const isMobile = typeof window !== 'undefined' && window . innerWidth <= 700
16+ const facetsOpen = ref ( ! isMobile )
1517
1618 // ------------------------------
1719 // Computed properties
1820
1921 const facetNames = computed ( ( ) => { return facets . value . map ( f => f . name ) } )
2022
21- function expanded ( facetName : string ) {
23+ function toggleFacets ( ) {
24+ facetsOpen . value = ! facetsOpen . value
25+ }
26+
27+ function expanded ( facetName : string ) {
2228 let expansionState = computedExpansionState [ facetName ]
2329 if ( ! expansionState ) {
2430 expansionState = computed ( {
@@ -37,24 +43,24 @@ export const useFacetStore = defineStore('facets', () => {
3743 // ------------------------------
3844 // Actions
3945
40- function expandAll ( expandedNames = facetNames . value ) {
46+ function expandAll ( expandedNames = facetNames . value ) {
4147 const expanded = { ...facetExpanded . value }
4248 for ( const facetName of expandedNames ) {
4349 expanded [ facetName ] = true
4450 }
4551 facetExpanded . value = expanded
4652 }
4753
48- function collapseAll ( ) {
54+ function collapseAll ( ) {
4955 facetExpanded . value = { }
5056 }
5157
52- function facetForName ( name : string ) : Facet | undefined {
58+ function facetForName ( name : string ) : Facet | undefined {
5359 return facets . value . find ( ( f ) => f . name === name )
5460 }
5561
5662 // ------------------------------
5763 // Store
5864
59- return { facets, expanded, facetNames, facetForName, expandAll, collapseAll }
65+ return { facets, expanded, facetNames, facetForName, expandAll, collapseAll, facetsOpen , toggleFacets }
6066} )
0 commit comments