{"version":3,"file":"B0rJGkSF.js","sources":["../../../../../../src/lib/stores/sidebarStore.ts"],"sourcesContent":["import { writable, derived } from 'svelte/store';\n\ninterface SidebarState {\n isExpanded: boolean;\n width: number;\n sortBy: 'name' | 'balance' | 'value' | 'price';\n sortDirection: 'asc' | 'desc';\n filterText: string;\n isOpen: boolean;\n}\n\nfunction createSidebarStore() {\n const { subscribe, update, set } = writable({\n isExpanded: false, // Always start collapsed\n width: 527,\n sortBy: 'value',\n sortDirection: 'desc',\n filterText: '',\n isOpen: false\n });\n\n const isExpanded = derived(\n { subscribe },\n $state => $state.isExpanded\n );\n\n return {\n subscribe,\n isExpanded,\n toggleExpand: () => {\n update(state => ({\n ...state,\n isExpanded: !state.isExpanded, // Actually toggle the state\n isOpen: true, // Make sure sidebar is open\n width: 527 // Keep consistent width\n }));\n },\n setWidth: (width: number) => {\n update(state => ({ ...state, width: Math.min(width, 527) })); // Never allow width larger than 527\n },\n setSortBy: (sortBy: 'name' | 'balance' | 'value' | 'price') => {\n update(state => ({\n ...state,\n sortBy,\n sortDirection: state.sortBy === sortBy \n ? (state.sortDirection === 'asc' ? 'desc' : 'asc')\n : 'desc'\n }));\n },\n setFilterText: (filterText: string) => {\n update(state => ({ ...state, filterText }));\n },\n open: () => {\n update(state => ({ ...state, isOpen: true }));\n },\n close: () => {\n update(state => ({ ...state, isOpen: false }));\n },\n toggleOpen: () => {\n update(state => ({ ...state, isOpen: !state.isOpen }));\n },\n collapse: () => {\n update(state => ({ \n ...state, \n isExpanded: false, \n width: 527,\n isOpen: false \n }));\n }\n };\n}\n\nexport const sidebarStore = createSidebarStore();\n"],"names":["sidebarStore","subscribe","update","set","writable","isExpanded","width","sortBy","sortDirection","filterText","isOpen","derived","$state","toggleExpand","state","setWidth","Math","min","setSortBy","setFilterText","open","close","toggleOpen","collapse","createSidebarStore"],"mappings":"yCAwEO,MAAMA,EA7Db,WACI,MAAMC,UAAEA,EAAAC,OAAWA,EAAQC,IAAAA,GAAQC,EAAuB,CACtDC,YAAY,EACZC,MAAO,IACPC,OAAQ,QACRC,cAAe,OACfC,WAAY,GACZC,QAAQ,IAQL,MAAA,CACHT,YACAI,WAPeM,EACf,CAAEV,iBACQW,EAAOP,aAMjBQ,aAAc,KACVX,GAAiBY,IAAA,IACVA,EACHT,YAAaS,EAAMT,WACnBK,QAAQ,EACRJ,MAAO,OACT,EAENS,SAAWT,IACAJ,GAAAY,IAAU,IAAKA,EAAOR,MAAOU,KAAKC,IAAIX,EAAO,QAAO,EAE/DY,UAAYX,IACRL,GAAiBY,IAAA,IACVA,EACHP,SACAC,cAAeM,EAAMP,SAAWA,EACD,QAAxBO,EAAMN,cAA0B,OAAS,MAC1C,UACR,EAENW,cAAgBV,IACZP,GAAiBY,IAAA,IAAKA,EAAOL,gBAAa,EAE9CW,KAAM,KACFlB,OAAiB,IAAKY,EAAOJ,QAAQ,KAAO,EAEhDW,MAAO,KACHnB,OAAiB,IAAKY,EAAOJ,QAAQ,KAAQ,EAEjDY,WAAY,KACDpB,GAAAY,QAAeA,EAAOJ,QAASI,EAAMJ,UAAS,EAEzDa,SAAU,KACNrB,GAAiBY,IAAA,IACVA,EACHT,YAAY,EACZC,MAAO,IACPI,QAAQ,KACV,EAGd,CAE4Bc"}