@mhmo91/schmancy 0.8.6 → 0.9.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +54 -1
- package/ai/INDEX.md +321 -0
- package/ai/animation.md +64 -0
- package/ai/area.md +170 -237
- package/ai/audio.md +50 -222
- package/ai/autocomplete.md +44 -162
- package/ai/avatar.md +47 -178
- package/ai/badge.md +41 -108
- package/ai/boat.md +35 -41
- package/ai/busy.md +25 -184
- package/ai/button.md +52 -150
- package/ai/card.md +42 -215
- package/ai/charts.md +93 -0
- package/ai/checkbox.md +32 -135
- package/ai/chips.md +73 -383
- package/ai/code-highlight.md +33 -226
- package/ai/connectivity.md +36 -0
- package/ai/content-drawer.md +65 -232
- package/ai/date-range-inline.md +40 -258
- package/ai/date-range.md +43 -198
- package/ai/delay.md +31 -139
- package/ai/details.md +48 -453
- package/ai/dialog.md +55 -164
- package/ai/directives.md +258 -405
- package/ai/discovery.md +67 -0
- package/ai/divider.md +15 -137
- package/ai/dropdown.md +44 -235
- package/ai/expand.md +63 -0
- package/ai/extra.md +59 -0
- package/ai/float.md +14 -0
- package/ai/form.md +41 -137
- package/ai/icons.md +31 -235
- package/ai/iframe.md +44 -0
- package/ai/input.md +50 -210
- package/ai/json.md +33 -0
- package/ai/layout.md +45 -169
- package/ai/lightbox.md +25 -370
- package/ai/list.md +51 -130
- package/ai/mailbox.md +80 -508
- package/ai/map.md +47 -226
- package/ai/menu.md +25 -134
- package/ai/mixins.md +201 -0
- package/ai/nav-drawer.md +30 -184
- package/ai/navigation-bar.md +27 -184
- package/ai/navigation-rail.md +62 -630
- package/ai/notification.md +49 -183
- package/ai/option.md +30 -160
- package/ai/page.md +42 -0
- package/ai/progress.md +26 -65
- package/ai/qr-scanner.md +51 -0
- package/ai/radio-group.md +45 -189
- package/ai/range.md +47 -0
- package/ai/rxjs-utils.md +60 -0
- package/ai/select.md +49 -209
- package/ai/sheet.md +74 -506
- package/ai/slider.md +30 -214
- package/ai/steps.md +30 -392
- package/ai/store.md +173 -251
- package/ai/surface.md +58 -245
- package/ai/table.md +56 -330
- package/ai/tabs.md +31 -176
- package/ai/teleport.md +35 -177
- package/ai/textarea.md +48 -232
- package/ai/theme-button.md +16 -163
- package/ai/theme.md +40 -1089
- package/ai/tooltip.md +35 -146
- package/ai/tree.md +45 -271
- package/ai/typewriter.md +28 -317
- package/ai/typography.md +43 -296
- package/ai/utils.md +95 -0
- package/ai/window.md +67 -0
- package/custom-elements.json +10955 -0
- package/dist/ai/INDEX.md +321 -0
- package/dist/ai/animation.md +64 -0
- package/dist/ai/area.md +170 -237
- package/dist/ai/audio.md +50 -222
- package/dist/ai/autocomplete.md +44 -162
- package/dist/ai/avatar.md +47 -178
- package/dist/ai/badge.md +41 -108
- package/dist/ai/boat.md +35 -41
- package/dist/ai/busy.md +25 -184
- package/dist/ai/button.md +52 -150
- package/dist/ai/card.md +42 -215
- package/dist/ai/charts.md +93 -0
- package/dist/ai/checkbox.md +32 -135
- package/dist/ai/chips.md +73 -383
- package/dist/ai/code-highlight.md +33 -226
- package/dist/ai/connectivity.md +36 -0
- package/dist/ai/content-drawer.md +65 -232
- package/dist/ai/date-range-inline.md +40 -258
- package/dist/ai/date-range.md +43 -198
- package/dist/ai/delay.md +31 -139
- package/dist/ai/details.md +48 -453
- package/dist/ai/dialog.md +55 -164
- package/dist/ai/directives.md +258 -405
- package/dist/ai/discovery.md +67 -0
- package/dist/ai/divider.md +15 -137
- package/dist/ai/dropdown.md +44 -235
- package/dist/ai/expand.md +63 -0
- package/dist/ai/extra.md +59 -0
- package/dist/ai/float.md +14 -0
- package/dist/ai/form.md +41 -137
- package/dist/ai/icons.md +31 -235
- package/dist/ai/iframe.md +44 -0
- package/dist/ai/input.md +50 -210
- package/dist/ai/json.md +33 -0
- package/dist/ai/layout.md +45 -169
- package/dist/ai/lightbox.md +25 -370
- package/dist/ai/list.md +51 -130
- package/dist/ai/mailbox.md +80 -508
- package/dist/ai/map.md +47 -226
- package/dist/ai/menu.md +25 -134
- package/dist/ai/mixins.md +201 -0
- package/dist/ai/nav-drawer.md +30 -184
- package/dist/ai/navigation-bar.md +27 -184
- package/dist/ai/navigation-rail.md +62 -630
- package/dist/ai/notification.md +49 -183
- package/dist/ai/option.md +30 -160
- package/dist/ai/page.md +42 -0
- package/dist/ai/progress.md +26 -65
- package/dist/ai/qr-scanner.md +51 -0
- package/dist/ai/radio-group.md +45 -189
- package/dist/ai/range.md +47 -0
- package/dist/ai/rxjs-utils.md +60 -0
- package/dist/ai/select.md +49 -209
- package/dist/ai/sheet.md +74 -506
- package/dist/ai/slider.md +30 -214
- package/dist/ai/steps.md +30 -392
- package/dist/ai/store.md +173 -251
- package/dist/ai/surface.md +58 -245
- package/dist/ai/table.md +56 -330
- package/dist/ai/tabs.md +31 -176
- package/dist/ai/teleport.md +35 -177
- package/dist/ai/textarea.md +48 -232
- package/dist/ai/theme-button.md +16 -163
- package/dist/ai/theme.md +40 -1089
- package/dist/ai/tooltip.md +35 -146
- package/dist/ai/tree.md +45 -271
- package/dist/ai/typewriter.md +28 -317
- package/dist/ai/typography.md +43 -296
- package/dist/ai/utils.md +95 -0
- package/dist/ai/window.md +67 -0
- package/dist/animation-BK-8BwY8.js +173 -0
- package/dist/animation-BK-8BwY8.js.map +1 -0
- package/dist/animation-CO_Csq84.cjs +16 -0
- package/dist/animation-CO_Csq84.cjs.map +1 -0
- package/dist/area-CC8fUnra.js +590 -0
- package/dist/area-CC8fUnra.js.map +1 -0
- package/dist/area-wnWUAHEn.cjs +12 -0
- package/dist/area-wnWUAHEn.cjs.map +1 -0
- package/dist/area.cjs +1 -2
- package/dist/area.js +2 -29
- package/dist/audio-DtYYgzYD.cjs +1 -0
- package/dist/audio-DtYYgzYD.cjs.map +1 -0
- package/dist/audio-kz8UgPTO.js +335 -0
- package/dist/audio-kz8UgPTO.js.map +1 -0
- package/dist/audio.cjs +1 -2
- package/dist/audio.js +3 -9
- package/dist/autocomplete-B2Z3WK_7.cjs +111 -0
- package/dist/autocomplete-B2Z3WK_7.cjs.map +1 -0
- package/dist/autocomplete-CJ7YgtKN.js +378 -0
- package/dist/autocomplete-CJ7YgtKN.js.map +1 -0
- package/dist/autocomplete.cjs +1 -2
- package/dist/autocomplete.js +1 -2
- package/dist/badge.cjs +1 -2
- package/dist/badge.js +2 -6
- package/dist/boat-B57_4TzJ.cjs +80 -0
- package/dist/boat-B57_4TzJ.cjs.map +1 -0
- package/dist/boat-C9eU6NO-.js +347 -0
- package/dist/boat-C9eU6NO-.js.map +1 -0
- package/dist/boat.cjs +1 -2
- package/dist/boat.js +2 -5
- package/dist/busy--6oimtop.cjs +134 -0
- package/dist/busy--6oimtop.cjs.map +1 -0
- package/dist/busy-CGZXy0h-.js +167 -0
- package/dist/busy-CGZXy0h-.js.map +1 -0
- package/dist/busy.cjs +1 -2
- package/dist/busy.js +1 -2
- package/dist/button.cjs +113 -2
- package/dist/button.cjs.map +1 -1
- package/dist/button.js +398 -5
- package/dist/button.js.map +1 -1
- package/dist/card-BGJ0Hb1O.cjs +177 -0
- package/dist/card-BGJ0Hb1O.cjs.map +1 -0
- package/dist/card-C-ee-l5O.js +284 -0
- package/dist/card-C-ee-l5O.js.map +1 -0
- package/dist/card.cjs +1 -2
- package/dist/card.js +1 -2
- package/dist/charts.cjs +112 -2
- package/dist/charts.cjs.map +1 -1
- package/dist/charts.js +368 -8
- package/dist/charts.js.map +1 -1
- package/dist/checkbox-DuYaKoDZ.cjs +39 -0
- package/dist/checkbox-DuYaKoDZ.cjs.map +1 -0
- package/dist/checkbox-FRcorDrD.js +610 -0
- package/dist/checkbox-FRcorDrD.js.map +1 -0
- package/dist/checkbox.cjs +1 -2
- package/dist/checkbox.js +2 -5
- package/dist/chips-BpA0A-qr.cjs +253 -0
- package/dist/chips-BpA0A-qr.cjs.map +1 -0
- package/dist/chips-CyzNbKJD.js +645 -0
- package/dist/chips-CyzNbKJD.js.map +1 -0
- package/dist/chips.cjs +1 -2
- package/dist/chips.js +3 -10
- package/dist/chunk-BCfY8kxB.cjs +1 -0
- package/dist/chunk-C_1VqBVD.js +11 -0
- package/dist/code-highlight-C7O9ltXm.js +290 -0
- package/dist/code-highlight-C7O9ltXm.js.map +1 -0
- package/dist/code-highlight-DsBdSQBG.cjs +190 -0
- package/dist/code-highlight-DsBdSQBG.cjs.map +1 -0
- package/dist/code-highlight.cjs +1 -2
- package/dist/code-highlight.js +2 -7
- package/dist/components-CkMvOiTR.js +730 -0
- package/dist/components-CkMvOiTR.js.map +1 -0
- package/dist/components-dDI3xeIf.cjs +73 -0
- package/dist/components-dDI3xeIf.cjs.map +1 -0
- package/dist/components.cjs +1 -2
- package/dist/components.js +2 -5
- package/dist/connectivity.cjs +59 -0
- package/dist/connectivity.cjs.map +1 -0
- package/dist/connectivity.js +86 -0
- package/dist/connectivity.js.map +1 -0
- package/dist/content-drawer.cjs +1 -2
- package/dist/content-drawer.js +2 -13
- package/dist/cursor-glow-Ah7VXSj7.js +46 -0
- package/dist/cursor-glow-Ah7VXSj7.js.map +1 -0
- package/dist/cursor-glow-DtSy_PJd.cjs +1 -0
- package/dist/cursor-glow-DtSy_PJd.cjs.map +1 -0
- package/dist/date-range-70zhLUKE.cjs +131 -0
- package/dist/date-range-70zhLUKE.cjs.map +1 -0
- package/dist/date-range-BrN_Bs6_.js +946 -0
- package/dist/date-range-BrN_Bs6_.js.map +1 -0
- package/dist/date-range-inline-CPzD-tIv.cjs +43 -0
- package/dist/date-range-inline-CPzD-tIv.cjs.map +1 -0
- package/dist/date-range-inline-Cp294DxR.js +267 -0
- package/dist/date-range-inline-Cp294DxR.js.map +1 -0
- package/dist/date-range-inline.cjs +1 -2
- package/dist/date-range-inline.js +2 -5
- package/dist/date-range.cjs +1 -2
- package/dist/date-range.js +2 -6
- package/dist/delay-COcAkBqB.cjs +9 -0
- package/dist/delay-COcAkBqB.cjs.map +1 -0
- package/dist/delay-IV0Swce2.js +346 -0
- package/dist/delay-IV0Swce2.js.map +1 -0
- package/dist/delay.cjs +1 -2
- package/dist/delay.js +2 -6
- package/dist/details-CuKmr3Qw.js +293 -0
- package/dist/details-CuKmr3Qw.js.map +1 -0
- package/dist/details-DgWkPqmt.cjs +168 -0
- package/dist/details-DgWkPqmt.cjs.map +1 -0
- package/dist/details.cjs +1 -2
- package/dist/details.js +2 -5
- package/dist/dialog-service-NZEvyEK-.js +193 -0
- package/dist/dialog-service-NZEvyEK-.js.map +1 -0
- package/dist/dialog-service-VnW4gkmE.cjs +1 -0
- package/dist/dialog-service-VnW4gkmE.cjs.map +1 -0
- package/dist/dialog.cjs +82 -2
- package/dist/dialog.cjs.map +1 -1
- package/dist/dialog.js +396 -9
- package/dist/dialog.js.map +1 -1
- package/dist/directives.cjs +108 -2
- package/dist/directives.cjs.map +1 -1
- package/dist/directives.js +1362 -14
- package/dist/directives.js.map +1 -1
- package/dist/discovery.cjs +1 -2
- package/dist/discovery.cjs.map +1 -1
- package/dist/discovery.js +61 -6
- package/dist/discovery.js.map +1 -1
- package/dist/divider-BWoUbfgZ.js +87 -0
- package/dist/divider-BWoUbfgZ.js.map +1 -0
- package/dist/divider-BghtrMbn.cjs +57 -0
- package/dist/divider-BghtrMbn.cjs.map +1 -0
- package/dist/divider.cjs +1 -2
- package/dist/divider.js +1 -2
- package/dist/dropdown.cjs +57 -2
- package/dist/dropdown.cjs.map +1 -1
- package/dist/dropdown.js +160 -5
- package/dist/dropdown.js.map +1 -1
- package/dist/expand-CJU9m4ga.js +336 -0
- package/dist/expand-CJU9m4ga.js.map +1 -0
- package/dist/expand-XyDE5SsO.cjs +141 -0
- package/dist/expand-XyDE5SsO.cjs.map +1 -0
- package/dist/expand.cjs +1 -0
- package/dist/expand.js +2 -0
- package/dist/extra-BxXFmW1w.js +3435 -0
- package/dist/extra-BxXFmW1w.js.map +1 -0
- package/dist/extra-CsrRKKqE.cjs +31 -0
- package/dist/extra-CsrRKKqE.cjs.map +1 -0
- package/dist/extra.cjs +1 -2
- package/dist/extra.js +2 -6
- package/dist/float-BD86t_NU.js +5 -0
- package/dist/float-BD86t_NU.js.map +1 -0
- package/dist/float-DBv1FINW.cjs +1 -0
- package/dist/float-DBv1FINW.cjs.map +1 -0
- package/dist/float.cjs +1 -0
- package/dist/float.js +2 -0
- package/dist/flow-Bbwn6dRN.cjs +1 -0
- package/dist/flow-Bbwn6dRN.cjs.map +1 -0
- package/dist/flow-CUj0fDT_.js +386 -0
- package/dist/flow-CUj0fDT_.js.map +1 -0
- package/dist/form-Cp5-I_ZV.js +270 -0
- package/dist/form-Cp5-I_ZV.js.map +1 -0
- package/dist/form-D0bIeDWT.cjs +1 -0
- package/dist/form-D0bIeDWT.cjs.map +1 -0
- package/dist/form.cjs +1 -2
- package/dist/form.js +1 -2
- package/dist/hashContent-DYM21p6t.js +6 -0
- package/dist/hashContent-DYM21p6t.js.map +1 -0
- package/dist/hashContent-DaeGmY-p.cjs +1 -0
- package/dist/hashContent-DaeGmY-p.cjs.map +1 -0
- package/dist/icons-BpU0_l92.js +161 -0
- package/dist/icons-BpU0_l92.js.map +1 -0
- package/dist/icons-D8w_20mO.cjs +52 -0
- package/dist/icons-D8w_20mO.cjs.map +1 -0
- package/dist/icons.cjs +1 -2
- package/dist/icons.js +1 -2
- package/dist/iframe-BjwxA2Pg.cjs +24 -0
- package/dist/iframe-BjwxA2Pg.cjs.map +1 -0
- package/dist/iframe-tY1GY5g1.js +44 -0
- package/dist/iframe-tY1GY5g1.js.map +1 -0
- package/dist/iframe.cjs +1 -0
- package/dist/iframe.js +2 -0
- package/dist/index.cjs +1 -2
- package/dist/index.js +69 -285
- package/dist/input-BnfTpRN9.js +364 -0
- package/dist/input-BnfTpRN9.js.map +1 -0
- package/dist/input-BwxwognS.cjs +51 -0
- package/dist/input-BwxwognS.cjs.map +1 -0
- package/dist/input-chip-CkM2aYmO.js +301 -0
- package/dist/input-chip-CkM2aYmO.js.map +1 -0
- package/dist/input-chip-MjOwX5EY.cjs +146 -0
- package/dist/input-chip-MjOwX5EY.cjs.map +1 -0
- package/dist/input.cjs +1 -2
- package/dist/input.js +2 -6
- package/dist/intersection-BPLpqYEd.js +12 -0
- package/dist/intersection-BPLpqYEd.js.map +1 -0
- package/dist/intersection-CZpaIHeT.cjs +1 -0
- package/dist/intersection-CZpaIHeT.cjs.map +1 -0
- package/dist/json.cjs +11 -2
- package/dist/json.cjs.map +1 -1
- package/dist/json.js +40 -4
- package/dist/json.js.map +1 -1
- package/dist/layout-4C-6_cre.cjs +1 -0
- package/dist/layout-4C-6_cre.cjs.map +1 -0
- package/dist/layout-BV0EeyUS.cjs +17 -0
- package/dist/layout-BV0EeyUS.cjs.map +1 -0
- package/dist/layout-CJSlZlFL.js +267 -0
- package/dist/layout-CJSlZlFL.js.map +1 -0
- package/dist/layout-yxSlLybo.js +94 -0
- package/dist/layout-yxSlLybo.js.map +1 -0
- package/dist/layout.cjs +1 -2
- package/dist/layout.js +3 -9
- package/dist/lightbox-CpNMZHZW.cjs +202 -0
- package/dist/lightbox-CpNMZHZW.cjs.map +1 -0
- package/dist/lightbox-groqGmJH.js +678 -0
- package/dist/lightbox-groqGmJH.js.map +1 -0
- package/dist/lightbox.cjs +1 -2
- package/dist/lightbox.js +2 -8
- package/dist/list-CyHd0Zc2.cjs +40 -0
- package/dist/list-CyHd0Zc2.cjs.map +1 -0
- package/dist/list-DzkqT_r-.js +105 -0
- package/dist/list-DzkqT_r-.js.map +1 -0
- package/dist/list.cjs +1 -2
- package/dist/list.js +2 -7
- package/dist/litElement.mixin-BG6_-nYX.cjs +1 -0
- package/dist/litElement.mixin-BG6_-nYX.cjs.map +1 -0
- package/dist/litElement.mixin-Dm-4L8zL.js +12 -0
- package/dist/litElement.mixin-Dm-4L8zL.js.map +1 -0
- package/dist/magnetic-BZGFxAWG.js +47 -0
- package/dist/magnetic-BZGFxAWG.js.map +1 -0
- package/dist/magnetic-Dux4QwO4.cjs +1 -0
- package/dist/magnetic-Dux4QwO4.cjs.map +1 -0
- package/dist/mailbox-BcqnXYVP.js +1584 -0
- package/dist/mailbox-BcqnXYVP.js.map +1 -0
- package/dist/mailbox-C5eYTd7p.cjs +1142 -0
- package/dist/mailbox-C5eYTd7p.cjs.map +1 -0
- package/dist/mailbox.cjs +1 -2
- package/dist/mailbox.js +2 -9
- package/dist/map-BncheFt5.cjs +80 -0
- package/dist/map-BncheFt5.cjs.map +1 -0
- package/dist/map-C0o1PgLE.js +205 -0
- package/dist/map-C0o1PgLE.js.map +1 -0
- package/dist/map.cjs +1 -2
- package/dist/map.js +2 -5
- package/dist/menu-uwqlQbLd.js +51 -0
- package/dist/menu-uwqlQbLd.js.map +1 -0
- package/dist/menu-yXzwJZFf.cjs +23 -0
- package/dist/menu-yXzwJZFf.cjs.map +1 -0
- package/dist/menu.cjs +1 -2
- package/dist/menu.js +1 -2
- package/dist/mixins.cjs +1 -2
- package/dist/mixins.cjs.map +1 -1
- package/dist/mixins.js +59 -12
- package/dist/mixins.js.map +1 -1
- package/dist/nav-drawer.cjs +1 -2
- package/dist/nav-drawer.js +2 -12
- package/dist/navigation-bar.cjs +1 -2
- package/dist/navigation-bar.js +2 -6
- package/dist/navigation-rail.cjs +71 -2
- package/dist/navigation-rail.cjs.map +1 -1
- package/dist/navigation-rail.js +363 -5
- package/dist/navigation-rail.js.map +1 -1
- package/dist/notification-BjwTfLAl.cjs +23 -0
- package/dist/notification-BjwTfLAl.cjs.map +1 -0
- package/dist/notification-DzYT4deA.js +304 -0
- package/dist/notification-DzYT4deA.js.map +1 -0
- package/dist/notification.cjs +1 -2
- package/dist/notification.js +2 -9
- package/dist/option-BJsD3u2D.cjs +43 -0
- package/dist/option-BJsD3u2D.cjs.map +1 -0
- package/dist/option-JFHxgiYl.js +97 -0
- package/dist/option-JFHxgiYl.js.map +1 -0
- package/dist/option.cjs +1 -2
- package/dist/option.js +1 -2
- package/dist/overlay-stack-DQey9Qph.cjs +1 -0
- package/dist/overlay-stack-DQey9Qph.cjs.map +1 -0
- package/dist/overlay-stack-DT1SdaGW.js +39 -0
- package/dist/overlay-stack-DT1SdaGW.js.map +1 -0
- package/dist/page.cjs +20 -2
- package/dist/page.cjs.map +1 -1
- package/dist/page.js +71 -4
- package/dist/page.js.map +1 -1
- package/dist/progress-BUh5WBqx.js +128 -0
- package/dist/progress-BUh5WBqx.js.map +1 -0
- package/dist/progress-BoRmyGAa.cjs +51 -0
- package/dist/progress-BoRmyGAa.cjs.map +1 -0
- package/dist/progress.cjs +1 -2
- package/dist/progress.js +1 -2
- package/dist/provide-8MrDz_qX.js +107 -0
- package/dist/provide-8MrDz_qX.js.map +1 -0
- package/dist/provide-CDkxgjHb.cjs +1 -0
- package/dist/provide-CDkxgjHb.cjs.map +1 -0
- package/dist/qr-scanner.cjs +35 -2
- package/dist/qr-scanner.cjs.map +1 -1
- package/dist/qr-scanner.js +119 -4
- package/dist/qr-scanner.js.map +1 -1
- package/dist/radio-group-DbOWUPhi.js +105 -0
- package/dist/radio-group-DbOWUPhi.js.map +1 -0
- package/dist/radio-group-rhrvhB5X.cjs +40 -0
- package/dist/radio-group-rhrvhB5X.cjs.map +1 -0
- package/dist/radio-group.cjs +1 -2
- package/dist/radio-group.js +2 -6
- package/dist/range.cjs +62 -0
- package/dist/range.cjs.map +1 -0
- package/dist/range.js +85 -0
- package/dist/range.js.map +1 -0
- package/dist/reduced-motion-D-L12p7G.js +7 -0
- package/dist/reduced-motion-D-L12p7G.js.map +1 -0
- package/dist/reduced-motion-Ds05GPyz.cjs +1 -0
- package/dist/reduced-motion-Ds05GPyz.cjs.map +1 -0
- package/dist/rxjs-utils-BSjmI9-Q.js +32 -0
- package/dist/rxjs-utils-BSjmI9-Q.js.map +1 -0
- package/dist/rxjs-utils-DCsfzeap.cjs +1 -0
- package/dist/rxjs-utils-DCsfzeap.cjs.map +1 -0
- package/dist/rxjs-utils.cjs +1 -2
- package/dist/rxjs-utils.js +2 -14
- package/dist/scroll-BE9W9PF2.cjs +26 -0
- package/dist/scroll-BE9W9PF2.cjs.map +1 -0
- package/dist/scroll-qGks1R0k.js +112 -0
- package/dist/scroll-qGks1R0k.js.map +1 -0
- package/dist/search-C4dFHYbX.js +91 -0
- package/dist/search-C4dFHYbX.js.map +1 -0
- package/dist/search-Ds8tt7Et.cjs +1 -0
- package/dist/search-Ds8tt7Et.cjs.map +1 -0
- package/dist/select-D9sgBRjU.js +305 -0
- package/dist/select-D9sgBRjU.js.map +1 -0
- package/dist/select-DXU2kzg4.cjs +56 -0
- package/dist/select-DXU2kzg4.cjs.map +1 -0
- package/dist/select.cjs +1 -2
- package/dist/select.js +2 -5
- package/dist/sheet-CIxCCJ3H.js +168 -0
- package/dist/sheet-CIxCCJ3H.js.map +1 -0
- package/dist/sheet-CeX6BbNp.cjs +35 -0
- package/dist/sheet-CeX6BbNp.cjs.map +1 -0
- package/dist/sheet.cjs +1 -2
- package/dist/sheet.js +3 -7
- package/dist/sheet.service-CAB7weBc.js +86 -0
- package/dist/sheet.service-CAB7weBc.js.map +1 -0
- package/dist/sheet.service-DPAp7E3x.cjs +1 -0
- package/dist/sheet.service-DPAp7E3x.cjs.map +1 -0
- package/dist/slider.cjs +82 -2
- package/dist/slider.cjs.map +1 -1
- package/dist/slider.js +143 -5
- package/dist/slider.js.map +1 -1
- package/dist/sound.service-Bu3EQLv2.cjs +1 -0
- package/dist/sound.service-Bu3EQLv2.cjs.map +1 -0
- package/dist/sound.service-m3BrSfuH.js +2353 -0
- package/dist/sound.service-m3BrSfuH.js.map +1 -0
- package/dist/src-CbO5kJ2O.js +1244 -0
- package/dist/src-CbO5kJ2O.js.map +1 -0
- package/dist/src-SraDxEeg.cjs +269 -0
- package/dist/src-SraDxEeg.cjs.map +1 -0
- package/dist/steps.cjs +70 -2
- package/dist/steps.cjs.map +1 -1
- package/dist/steps.js +178 -7
- package/dist/steps.js.map +1 -1
- package/dist/store-CorvD3bT.cjs +1 -0
- package/dist/store-CorvD3bT.cjs.map +1 -0
- package/dist/store-DYqDLAvT.js +1654 -0
- package/dist/store-DYqDLAvT.js.map +1 -0
- package/dist/store.cjs +1 -2
- package/dist/store.js +2 -47
- package/dist/surface-DuH0pm2v.cjs +7 -0
- package/dist/surface-DuH0pm2v.cjs.map +1 -0
- package/dist/surface-eN_Jy2MJ.js +21 -0
- package/dist/surface-eN_Jy2MJ.js.map +1 -0
- package/dist/surface.cjs +1 -2
- package/dist/surface.js +2 -6
- package/dist/surface.mixin-CIXgN6iw.cjs +297 -0
- package/dist/surface.mixin-CIXgN6iw.cjs.map +1 -0
- package/dist/surface.mixin-D9jv1sKG.js +320 -0
- package/dist/surface.mixin-D9jv1sKG.js.map +1 -0
- package/dist/table-C9rRQJEB.cjs +63 -0
- package/dist/table-C9rRQJEB.cjs.map +1 -0
- package/dist/table-Dg_tUGB_.js +631 -0
- package/dist/table-Dg_tUGB_.js.map +1 -0
- package/dist/table.cjs +1 -2
- package/dist/table.js +2 -6
- package/dist/tabs-BbFC9omR.js +125 -0
- package/dist/tabs-BbFC9omR.js.map +1 -0
- package/dist/tabs-soTL-x4G.cjs +31 -0
- package/dist/tabs-soTL-x4G.cjs.map +1 -0
- package/dist/tabs.cjs +1 -2
- package/dist/tabs.js +1 -2
- package/dist/tailwind.mixin-BIVhjNvD.js +225 -0
- package/dist/tailwind.mixin-BIVhjNvD.js.map +1 -0
- package/dist/tailwind.mixin-DSuEu-y3.cjs +2 -0
- package/dist/tailwind.mixin-DSuEu-y3.cjs.map +1 -0
- package/dist/teleport.cjs +1 -2
- package/dist/teleport.js +2 -8
- package/dist/textarea-DaRUJ0ri.cjs +35 -0
- package/dist/textarea-DaRUJ0ri.cjs.map +1 -0
- package/dist/textarea-hChvHbNM.js +195 -0
- package/dist/textarea-hChvHbNM.js.map +1 -0
- package/dist/textarea.cjs +1 -2
- package/dist/textarea.js +1 -2
- package/dist/theme-B0M8Hlyo.js +4121 -0
- package/dist/theme-B0M8Hlyo.js.map +1 -0
- package/dist/theme-ZYH2MqX9.cjs +181 -0
- package/dist/theme-ZYH2MqX9.cjs.map +1 -0
- package/dist/theme-button-BtlX_Zgd.js +19 -0
- package/dist/theme-button-BtlX_Zgd.js.map +1 -0
- package/dist/theme-button-Dvqg-rE_.cjs +8 -0
- package/dist/theme-button-Dvqg-rE_.cjs.map +1 -0
- package/dist/theme-button.cjs +1 -2
- package/dist/theme-button.js +1 -2
- package/dist/theme.cjs +1 -2
- package/dist/theme.events-Cv7N4Toe.js +2 -0
- package/dist/theme.events-Cv7N4Toe.js.map +1 -0
- package/dist/theme.events-DM4H5F2d.cjs +1 -0
- package/dist/theme.events-DM4H5F2d.cjs.map +1 -0
- package/dist/theme.interface-CXloMUCw.js +276 -0
- package/dist/theme.interface-CXloMUCw.js.map +1 -0
- package/dist/theme.interface-Da23QAYb.cjs +1 -0
- package/dist/theme.interface-Da23QAYb.cjs.map +1 -0
- package/dist/theme.js +6 -21
- package/dist/theme.service-C_tjlqgy.cjs +1 -0
- package/dist/theme.service-C_tjlqgy.cjs.map +1 -0
- package/dist/theme.service-D9lEas89.js +108 -0
- package/dist/theme.service-D9lEas89.js.map +1 -0
- package/dist/tooltip.cjs +6 -2
- package/dist/tooltip.cjs.map +1 -1
- package/dist/tooltip.js +200 -5
- package/dist/tooltip.js.map +1 -1
- package/dist/tree.cjs +26 -2
- package/dist/tree.cjs.map +1 -1
- package/dist/tree.js +64 -4
- package/dist/tree.js.map +1 -1
- package/dist/tslib.es6-D7BIeDVB.cjs +1 -0
- package/dist/tslib.es6-D7BIeDVB.cjs.map +1 -0
- package/dist/tslib.es6-ErZEp3OO.js +7 -0
- package/dist/tslib.es6-ErZEp3OO.js.map +1 -0
- package/dist/types.cjs +1 -2
- package/dist/types.cjs.map +1 -1
- package/dist/types.js +4 -5
- package/dist/types.js.map +1 -1
- package/dist/typewriter-CCel8Nta.js +700 -0
- package/dist/typewriter-CCel8Nta.js.map +1 -0
- package/dist/typewriter-Cf9f2bdx.cjs +123 -0
- package/dist/typewriter-Cf9f2bdx.cjs.map +1 -0
- package/dist/typewriter.cjs +1 -2
- package/dist/typewriter.js +2 -5
- package/dist/typography.cjs +282 -2
- package/dist/typography.cjs.map +1 -1
- package/dist/typography.js +353 -4
- package/dist/typography.js.map +1 -1
- package/dist/utils-BcaKtQuA.cjs +1 -0
- package/dist/utils-BcaKtQuA.cjs.map +1 -0
- package/dist/utils-CoU7M2YS.js +259 -0
- package/dist/utils-CoU7M2YS.js.map +1 -0
- package/dist/utils.cjs +1 -2
- package/dist/utils.js +6 -9
- package/dist/window-B9_14c12.cjs +59 -0
- package/dist/window-B9_14c12.cjs.map +1 -0
- package/dist/window-CbgdwOZD.js +548 -0
- package/dist/window-CbgdwOZD.js.map +1 -0
- package/dist/window.cjs +1 -0
- package/dist/window.js +2 -0
- package/mixins/baseElement.ts +118 -1
- package/mixins/discovery.service.ts +162 -1
- package/mixins/formField.mixin.ts +13 -8
- package/mixins/index.ts +2 -0
- package/mixins/surface.mixin.ts +93 -0
- package/mixins/tailwind.css +331 -14
- package/package.json +32 -28
- package/src/CLAUDE.md +428 -0
- package/src/area/.excalidraw +357 -0
- package/src/area/area.component.ts +449 -0
- package/src/area/area.service.test.ts +1007 -0
- package/src/area/area.service.ts +748 -0
- package/src/area/ecrypt.ts +7 -0
- package/src/area/index.ts +7 -0
- package/src/area/lazy.ts +83 -0
- package/src/area/readme.md +338 -0
- package/src/area/route.component.ts +79 -0
- package/src/area/router-guide.md +360 -0
- package/src/area/router.types.ts +101 -0
- package/src/area/utils.ts +354 -0
- package/src/audio/emotional-sounds.ts +940 -0
- package/src/audio/index.ts +53 -0
- package/src/audio/sound.service.ts +1079 -0
- package/src/autocomplete/README.md +485 -0
- package/src/autocomplete/autocomplete.scss +24 -0
- package/src/autocomplete/autocomplete.ts +733 -0
- package/src/autocomplete/index.ts +1 -0
- package/src/avatar.ts +164 -0
- package/src/badge/badge.ts +286 -0
- package/src/badge/index.ts +1 -0
- package/src/boat/boat.ts +664 -0
- package/src/boat/index.ts +1 -0
- package/src/busy/busy.ts +39 -0
- package/src/busy/index.ts +2 -0
- package/src/busy/spinner.ts +165 -0
- package/src/button/button.ts +382 -0
- package/src/button/icon-button.ts +287 -0
- package/src/button/index.ts +2 -0
- package/src/card/actions.ts +28 -0
- package/src/card/card.ts +319 -0
- package/src/card/content.ts +24 -0
- package/src/card/index.ts +4 -0
- package/src/card/media.ts +77 -0
- package/src/charts/area-chart.ts +495 -0
- package/src/charts/index.ts +4 -0
- package/src/charts/pills.ts +350 -0
- package/src/charts/types.ts +66 -0
- package/src/charts/utils.ts +65 -0
- package/src/checkbox/checkbox.ts +122 -0
- package/src/checkbox/index.ts +1 -0
- package/src/chips/assist-chip.ts +261 -0
- package/src/chips/chips.ts +259 -0
- package/src/chips/filter-chip.ts +255 -0
- package/src/chips/index.ts +5 -0
- package/src/chips/input-chip.ts +408 -0
- package/src/chips/suggestion-chip.ts +266 -0
- package/src/code-highlight/code-highlight.ts +344 -0
- package/src/code-highlight/code-preview.ts +123 -0
- package/src/code-highlight/index.ts +3 -0
- package/src/components/form-elements/index.ts +1 -0
- package/src/components/form-elements/payment-card-form.ts +331 -0
- package/src/components/index.ts +1 -0
- package/src/connectivity/connectivity-status.ts +153 -0
- package/src/connectivity/index.ts +1 -0
- package/src/content-drawer/context.ts +13 -0
- package/src/content-drawer/drawer.service.ts +148 -0
- package/src/content-drawer/drawer.ts +183 -0
- package/src/content-drawer/index.ts +5 -0
- package/src/content-drawer/main.ts +83 -0
- package/src/content-drawer/readme.md +709 -0
- package/src/content-drawer/sheet.ts +180 -0
- package/src/date-range/date-range-dialog.ts +230 -0
- package/src/date-range/date-range-helpers.ts +135 -0
- package/src/date-range/date-range-presets.ts +220 -0
- package/src/date-range/date-range.ts +530 -0
- package/src/date-range/date-utils.ts +58 -0
- package/src/date-range/index.ts +2 -0
- package/src/date-range-inline/date-range-inline.ts +522 -0
- package/src/date-range-inline/index.ts +2 -0
- package/src/delay/delay.ts +136 -0
- package/src/delay/index.ts +1 -0
- package/src/details/details.ts +429 -0
- package/src/details/index.ts +1 -0
- package/src/dialog/dialog-base.mixin.ts +565 -0
- package/src/dialog/dialog-events.ts +17 -0
- package/src/dialog/dialog-service.ts +482 -0
- package/src/dialog/dialog.component.ts +394 -0
- package/src/dialog/index.ts +3 -0
- package/src/directives/animate-text.ts +551 -0
- package/src/directives/color.ts +41 -0
- package/src/directives/confirm-click.ts +350 -0
- package/src/directives/cursor-glow.ts +142 -0
- package/src/directives/cycle-text.ts +496 -0
- package/src/directives/depth-of-field.ts +83 -0
- package/src/directives/drag.ts +370 -0
- package/src/directives/gravity.ts +117 -0
- package/src/directives/index.ts +19 -0
- package/src/directives/intersect.ts +204 -0
- package/src/directives/layout.ts +261 -0
- package/src/directives/liquid.ts +150 -0
- package/src/directives/living-border.ts +166 -0
- package/src/directives/long-press.ts +150 -0
- package/src/directives/magnetic.ts +133 -0
- package/src/directives/nebula.ts +773 -0
- package/src/directives/reduced-motion.ts +30 -0
- package/src/directives/reveal.ts +158 -0
- package/src/directives/ripple.ts +102 -0
- package/src/directives/typewriter.ts +349 -0
- package/src/discovery/discovery.service.ts +210 -0
- package/src/discovery/index.ts +1 -0
- package/src/divider/divider.ts +100 -0
- package/src/divider/index.ts +1 -0
- package/src/dropdown/dropdown-component.ts +264 -0
- package/src/dropdown/dropdown-content.ts +108 -0
- package/src/dropdown/index.ts +2 -0
- package/src/expand/expand-root.component.ts +278 -0
- package/src/expand/expand.component.ts +287 -0
- package/src/expand/index.ts +2 -0
- package/src/extra/countries/countries.data.ts +196 -0
- package/src/extra/countries/countries.ts +107 -0
- package/src/extra/countries/index.ts +2 -0
- package/src/extra/index.ts +2 -0
- package/src/extra/timezone/index.ts +2 -0
- package/src/extra/timezone/timezone.ts +116 -0
- package/src/extra/timezone/timezones.data.ts +2546 -0
- package/src/float/float.ts +18 -0
- package/src/float/index.ts +1 -0
- package/src/form/form-v2.ts +268 -0
- package/src/form/form.ts +194 -0
- package/src/form/index.ts +2 -0
- package/src/icons/icon.ts +293 -0
- package/src/icons/index.ts +1 -0
- package/src/icons/readme.md +37 -0
- package/src/iframe/iframe.ts +98 -0
- package/src/iframe/index.ts +1 -0
- package/src/index.ts +69 -0
- package/src/input/index.ts +8 -0
- package/src/input/input.scss +211 -0
- package/src/input/input.ts +951 -0
- package/src/json/index.ts +1 -0
- package/src/json/json.ts +55 -0
- package/src/layout/flex/flex.scss +4 -0
- package/src/layout/flex/flex.ts +74 -0
- package/src/layout/flex/index.ts +1 -0
- package/src/layout/grid/.readme +79 -0
- package/src/layout/grid/grid.scss +5 -0
- package/src/layout/grid/grid.ts +121 -0
- package/src/layout/grid/index.ts +1 -0
- package/src/layout/index.ts +5 -0
- package/src/layout/layout.ts +122 -0
- package/src/layout/scroll/index.ts +1 -0
- package/src/layout/scroll/scroll.ts +351 -0
- package/src/layout/v2/flex.ts +243 -0
- package/src/layout/v2/grid.ts +93 -0
- package/src/layout/v2/index.ts +1 -0
- package/src/lightbox/flip-directive.ts +270 -0
- package/src/lightbox/index.ts +4 -0
- package/src/lightbox/lightbox-service.ts +378 -0
- package/src/lightbox/lightbox.directive.ts +256 -0
- package/src/lightbox/lightbox.ts +417 -0
- package/src/list/context.ts +3 -0
- package/src/list/index.ts +3 -0
- package/src/list/list-item.ts +94 -0
- package/src/list/list.ts +87 -0
- package/src/list/readme.md +62 -0
- package/src/mailbox/README.md +131 -0
- package/src/mailbox/email-editor.ts +1071 -0
- package/src/mailbox/email-layout-selector.ts +58 -0
- package/src/mailbox/email-recipients.ts +594 -0
- package/src/mailbox/email-template-picker.ts +296 -0
- package/src/mailbox/email-viewer.ts +715 -0
- package/src/mailbox/index.ts +31 -0
- package/src/mailbox/mailbox.ts +363 -0
- package/src/mailbox/types.ts +181 -0
- package/src/map/index.ts +1 -0
- package/src/map/map.ts +483 -0
- package/src/menu/index.ts +2 -0
- package/src/menu/menu-item.ts +26 -0
- package/src/menu/menu.ts +83 -0
- package/src/nav-drawer/$navbar.ts +51 -0
- package/src/nav-drawer/appbar.ts +26 -0
- package/src/nav-drawer/content.ts +32 -0
- package/src/nav-drawer/context.ts +6 -0
- package/src/nav-drawer/drawer.ts +128 -0
- package/src/nav-drawer/index.ts +6 -0
- package/src/nav-drawer/navbar.ts +191 -0
- package/src/navigation-bar/index.ts +2 -0
- package/src/navigation-bar/navigation-bar-item.ts +417 -0
- package/src/navigation-bar/navigation-bar.ts +482 -0
- package/src/navigation-rail/index.ts +2 -0
- package/src/navigation-rail/navigation-rail-item.ts +443 -0
- package/src/navigation-rail/navigation-rail.ts +492 -0
- package/src/notification/index.ts +6 -0
- package/src/notification/notification-service.ts +324 -0
- package/src/notification/notification.scss +117 -0
- package/src/notification/notification.ts +263 -0
- package/src/notification/notify.ts +207 -0
- package/src/notification/outlet.ts +16 -0
- package/src/option/index.ts +1 -0
- package/src/option/option.ts +180 -0
- package/src/page/index.ts +1 -0
- package/src/page/page.ts +135 -0
- package/src/progress/index.ts +1 -0
- package/src/progress/progress.ts +143 -0
- package/src/qr-scanner/index.ts +1 -0
- package/src/qr-scanner/qr-scanner.ts +240 -0
- package/src/radio-group/index.ts +2 -0
- package/src/radio-group/radio-button.ts +81 -0
- package/src/radio-group/radio-group.scss +4 -0
- package/src/radio-group/radio-group.ts +110 -0
- package/src/radio-group/readme.md +315 -0
- package/src/range/index.ts +1 -0
- package/src/range/range.ts +102 -0
- package/src/rxjs-utils/index.ts +6 -0
- package/src/rxjs-utils/mutation-observer.ts +22 -0
- package/src/rxjs-utils/waitForElement.ts +33 -0
- package/src/rxjs-utils/waitForElementAll.ts +34 -0
- package/src/rxjs-utils/waitForElements.ts +40 -0
- package/src/rxjs-utils/waitForElementsAll.ts +42 -0
- package/src/rxjs-utils/waitUntil.ts +16 -0
- package/src/select/README.md +405 -0
- package/src/select/index.ts +2 -0
- package/src/select/select.ts +766 -0
- package/src/sheet/hook.ts +40 -0
- package/src/sheet/index.ts +2 -0
- package/src/sheet/sheet.service.ts +235 -0
- package/src/sheet/sheet.ts +236 -0
- package/src/slider/index.ts +2 -0
- package/src/slider/slide.ts +107 -0
- package/src/slider/slider.ts +164 -0
- package/src/steps/index.ts +3 -0
- package/src/steps/schmancy-step.ts +213 -0
- package/src/steps/schmancy-steps-container.ts +109 -0
- package/src/steps/steps.context.ts +23 -0
- package/src/store/context-array.ts +358 -0
- package/src/store/context-collection.ts +218 -0
- package/src/store/context-create.ts +284 -0
- package/src/store/context-object.ts +298 -0
- package/src/store/filter-directive.ts +614 -0
- package/src/store/immer-integration.ts +99 -0
- package/src/store/index.ts +10 -0
- package/src/store/selector-hook.ts +259 -0
- package/src/store/selectors.ts +289 -0
- package/src/store/storage-manager.ts +269 -0
- package/src/store/store.class.ts +239 -0
- package/src/store/types.ts +327 -0
- package/src/surface/context.ts +3 -0
- package/src/surface/index.ts +1 -0
- package/src/surface/surface.styles.ts +334 -0
- package/src/surface/surface.ts +59 -0
- package/src/table/index.ts +2 -0
- package/src/table/row.ts +60 -0
- package/src/table/table.ts +266 -0
- package/src/tabs/Readme.md +397 -0
- package/src/tabs/context.ts +5 -0
- package/src/tabs/index.ts +4 -0
- package/src/tabs/tab.ts +39 -0
- package/src/tabs/tabs-compatibility.ts +20 -0
- package/src/tabs/tabs-group.ts +184 -0
- package/src/teleport/.excalidraw +2511 -0
- package/src/teleport/index.ts +2 -0
- package/src/teleport/readme.md +91 -0
- package/src/teleport/teleport.component.ts +132 -0
- package/src/teleport/teleport.service.ts +139 -0
- package/src/teleport/watcher.ts +20 -0
- package/src/textarea/index.ts +1 -0
- package/src/textarea/textarea.scss +54 -0
- package/src/textarea/textarea.ts +432 -0
- package/src/theme/context.ts +28 -0
- package/src/theme/index.ts +17 -0
- package/src/theme/theme-audio-player.ts +470 -0
- package/src/theme/theme-controller-boat.ts +49 -0
- package/src/theme/theme-controller-example.md +152 -0
- package/src/theme/theme-controller.ts +205 -0
- package/src/theme/theme.component.ts +305 -0
- package/src/theme/theme.events.ts +59 -0
- package/src/theme/theme.format.ts +417 -0
- package/src/theme/theme.interface.ts +399 -0
- package/src/theme/theme.service.ts +520 -0
- package/src/theme/theme.style.css +619 -0
- package/src/theme-button/index.ts +1 -0
- package/src/theme-button/theme-button.ts +35 -0
- package/src/tooltip/index.ts +2 -0
- package/src/tooltip/tooltip.directive.ts +277 -0
- package/src/tooltip/tooltip.ts +216 -0
- package/src/tree/README.md +59 -0
- package/src/tree/index.ts +1 -0
- package/src/tree/tree.ts +132 -0
- package/src/types/events.ts +5 -0
- package/src/types/index.ts +3 -0
- package/src/types/mood-audio.types.ts +220 -0
- package/src/types/surface.ts +52 -0
- package/src/typewriter/IMPROVEMENTS.md +174 -0
- package/src/typewriter/QUICK_REFERENCE.md +166 -0
- package/src/typewriter/index.ts +1 -0
- package/src/typewriter/test-typewriter.html +97 -0
- package/src/typewriter/typewriter.ts +376 -0
- package/src/typography/index.ts +1 -0
- package/src/typography/typography.ts +448 -0
- package/src/utils/animation.ts +418 -0
- package/src/utils/hashContent.ts +12 -0
- package/src/utils/index.ts +6 -0
- package/src/utils/intersection.ts +22 -0
- package/src/utils/number.ts +529 -0
- package/src/utils/overlay-stack.ts +101 -0
- package/src/utils/search.ts +322 -0
- package/src/vite-env.d.ts +2 -0
- package/src/window/index.ts +10 -0
- package/src/window/window-manager.ts +204 -0
- package/src/window/window-position.ts +136 -0
- package/src/window/window-registry.ts +34 -0
- package/src/window/window.ts +724 -0
- package/types/mixins/baseElement.d.ts +12 -0
- package/types/mixins/discovery.service.d.ts +72 -0
- package/types/mixins/index.d.ts +2 -0
- package/types/mixins/surface.mixin.d.ts +39 -0
- package/types/src/area/area.service.d.ts +2 -0
- package/types/src/badge/badge.d.ts +1 -1
- package/types/src/boat/boat.d.ts +40 -33
- package/types/src/button/icon-button.d.ts +10 -0
- package/types/src/chips/filter-chip.d.ts +0 -12
- package/types/src/connectivity/connectivity-status.d.ts +25 -0
- package/types/src/connectivity/index.d.ts +1 -0
- package/types/src/content-drawer/drawer.service.d.ts +3 -0
- package/types/src/date-range/date-range.d.ts +2 -0
- package/types/src/details/details.d.ts +26 -2
- package/types/src/dialog/dialog-base.mixin.d.ts +7 -3
- package/types/src/dialog/dialog-service.d.ts +27 -1
- package/types/src/dialog/dialog.component.d.ts +35 -1
- package/types/src/directives/animate-text.d.ts +67 -0
- package/types/src/directives/color.d.ts +2 -3
- package/types/src/directives/confirm-click.d.ts +38 -0
- package/types/src/directives/cursor-glow.d.ts +38 -0
- package/types/src/directives/cycle-text.d.ts +44 -0
- package/types/src/directives/depth-of-field.d.ts +38 -0
- package/types/src/directives/drag.d.ts +8 -8
- package/types/src/directives/gravity.d.ts +40 -0
- package/types/src/directives/index.d.ts +16 -2
- package/types/src/directives/intersect.d.ts +60 -0
- package/types/src/directives/layout.d.ts +62 -0
- package/types/src/directives/liquid.d.ts +38 -0
- package/types/src/directives/living-border.d.ts +39 -0
- package/types/src/directives/long-press.d.ts +38 -0
- package/types/src/directives/magnetic.d.ts +35 -0
- package/types/src/directives/nebula.d.ts +80 -0
- package/types/src/directives/reduced-motion.d.ts +2 -0
- package/types/src/directives/reveal.d.ts +54 -0
- package/types/src/directives/ripple.d.ts +15 -5
- package/types/src/directives/typewriter.d.ts +50 -0
- package/types/src/discovery/discovery.service.d.ts +72 -0
- package/types/src/expand/expand-root.component.d.ts +30 -0
- package/types/src/expand/expand.component.d.ts +38 -0
- package/types/src/expand/index.d.ts +2 -0
- package/types/src/float/float.d.ts +14 -0
- package/types/src/float/index.d.ts +1 -0
- package/types/src/icons/icon.d.ts +14 -0
- package/types/src/iframe/iframe.d.ts +37 -0
- package/types/src/iframe/index.d.ts +1 -0
- package/types/src/index.d.ts +6 -1
- package/types/src/input/index.d.ts +1 -1
- package/types/src/layout/scroll/scroll.d.ts +11 -0
- package/types/src/lightbox/lightbox.d.ts +1 -0
- package/types/src/mailbox/email-recipients.d.ts +2 -2
- package/types/src/mailbox/types.d.ts +1 -1
- package/types/src/navigation-bar/navigation-bar.d.ts +17 -0
- package/types/src/notification/notification.d.ts +1 -0
- package/types/src/page/page.d.ts +6 -0
- package/types/src/range/index.d.ts +1 -0
- package/types/src/range/range.d.ts +25 -0
- package/types/src/sheet/sheet.d.ts +0 -1
- package/types/src/steps/schmancy-steps-container.d.ts +8 -6
- package/types/src/surface/surface.d.ts +4 -27
- package/types/src/surface/surface.styles.d.ts +31 -0
- package/types/src/tabs/tab.d.ts +1 -0
- package/types/src/textarea/textarea.d.ts +3 -2
- package/types/src/theme/context.d.ts +2 -282
- package/types/src/theme/theme.component.d.ts +9 -1
- package/types/src/theme/theme.format.d.ts +1 -1
- package/types/src/theme/theme.interface.d.ts +8 -1
- package/types/src/theme/theme.service.d.ts +20 -282
- package/types/src/types/surface.d.ts +27 -1
- package/types/src/typography/typography.d.ts +17 -3
- package/types/src/utils/animation.d.ts +254 -0
- package/types/src/utils/index.d.ts +2 -0
- package/types/src/utils/number.d.ts +18 -2
- package/types/src/utils/overlay-stack.d.ts +54 -0
- package/types/src/window/index.d.ts +3 -0
- package/types/src/window/window-manager.d.ts +49 -0
- package/types/src/window/window-position.d.ts +64 -0
- package/types/src/window/window-registry.d.ts +28 -0
- package/types/src/window/window.d.ts +67 -0
- package/ai/animated-text.md +0 -116
- package/ai/component-relationships.md +0 -93
- package/ai/context.md +0 -572
- package/ai/countries.md +0 -271
- package/ai/index.md +0 -112
- package/ai/navigation-bar-item.md +0 -259
- package/ai/payment-card-form.md +0 -242
- package/ai/spinner.md +0 -165
- package/ai/template.md +0 -144
- package/ai/timezone.md +0 -276
- package/dist/_commonjsHelpers-Dw9sPFZy.js +0 -7
- package/dist/_commonjsHelpers-Dw9sPFZy.js.map +0 -1
- package/dist/_commonjsHelpers-k2hpEU-q.cjs +0 -2
- package/dist/_commonjsHelpers-k2hpEU-q.cjs.map +0 -1
- package/dist/ai/animated-text.md +0 -116
- package/dist/ai/component-relationships.md +0 -93
- package/dist/ai/context.md +0 -572
- package/dist/ai/countries.md +0 -271
- package/dist/ai/index.md +0 -112
- package/dist/ai/navigation-bar-item.md +0 -259
- package/dist/ai/payment-card-form.md +0 -242
- package/dist/ai/spinner.md +0 -165
- package/dist/ai/template.md +0 -144
- package/dist/ai/timezone.md +0 -276
- package/dist/animated-text-B3DQRJBy.cjs +0 -37
- package/dist/animated-text-B3DQRJBy.cjs.map +0 -1
- package/dist/animated-text-BAj4-6hE.js +0 -76
- package/dist/animated-text-BAj4-6hE.js.map +0 -1
- package/dist/animated-text.cjs +0 -2
- package/dist/animated-text.cjs.map +0 -1
- package/dist/animated-text.js +0 -2
- package/dist/animated-text.js.map +0 -1
- package/dist/area.cjs.map +0 -1
- package/dist/area.component-CP4DZ0d8.js +0 -330
- package/dist/area.component-CP4DZ0d8.js.map +0 -1
- package/dist/area.component-ChxSLt16.cjs +0 -12
- package/dist/area.component-ChxSLt16.cjs.map +0 -1
- package/dist/area.js.map +0 -1
- package/dist/audio.cjs.map +0 -1
- package/dist/audio.js.map +0 -1
- package/dist/autocomplete-CAaVSg4g.cjs +0 -112
- package/dist/autocomplete-CAaVSg4g.cjs.map +0 -1
- package/dist/autocomplete-CGbACUYd.js +0 -333
- package/dist/autocomplete-CGbACUYd.js.map +0 -1
- package/dist/autocomplete.cjs.map +0 -1
- package/dist/autocomplete.js.map +0 -1
- package/dist/avatar-nWOZXEsW.cjs +0 -273
- package/dist/avatar-nWOZXEsW.cjs.map +0 -1
- package/dist/avatar-rLCF6MSI.js +0 -895
- package/dist/avatar-rLCF6MSI.js.map +0 -1
- package/dist/badge.cjs.map +0 -1
- package/dist/badge.js.map +0 -1
- package/dist/boat-Ckt9v__d.js +0 -301
- package/dist/boat-Ckt9v__d.js.map +0 -1
- package/dist/boat-yNAZ2LLB.cjs +0 -97
- package/dist/boat-yNAZ2LLB.cjs.map +0 -1
- package/dist/boat.cjs.map +0 -1
- package/dist/boat.js.map +0 -1
- package/dist/busy.cjs.map +0 -1
- package/dist/busy.js.map +0 -1
- package/dist/card.cjs.map +0 -1
- package/dist/card.js.map +0 -1
- package/dist/checkbox-BnAlpsJN.cjs +0 -40
- package/dist/checkbox-BnAlpsJN.cjs.map +0 -1
- package/dist/checkbox-D22yfGe3.js +0 -526
- package/dist/checkbox-D22yfGe3.js.map +0 -1
- package/dist/checkbox.cjs.map +0 -1
- package/dist/checkbox.js.map +0 -1
- package/dist/chips.cjs.map +0 -1
- package/dist/chips.js.map +0 -1
- package/dist/code-highlight.cjs.map +0 -1
- package/dist/code-highlight.js.map +0 -1
- package/dist/code-preview-DPlQayFd.js +0 -967
- package/dist/code-preview-DPlQayFd.js.map +0 -1
- package/dist/code-preview-jPnX60FF.cjs +0 -193
- package/dist/code-preview-jPnX60FF.cjs.map +0 -1
- package/dist/components.cjs.map +0 -1
- package/dist/components.js.map +0 -1
- package/dist/consume-5D1qfVWM.js +0 -38
- package/dist/consume-5D1qfVWM.js.map +0 -1
- package/dist/consume-edta5ng5.cjs +0 -2
- package/dist/consume-edta5ng5.cjs.map +0 -1
- package/dist/content-drawer.cjs.map +0 -1
- package/dist/content-drawer.js.map +0 -1
- package/dist/context-create-B_S-sD5B.js +0 -1107
- package/dist/context-create-B_S-sD5B.js.map +0 -1
- package/dist/context-create-DTybDbZp.cjs +0 -2
- package/dist/context-create-DTybDbZp.cjs.map +0 -1
- package/dist/date-range-GFm5NG33.js +0 -639
- package/dist/date-range-GFm5NG33.js.map +0 -1
- package/dist/date-range-inline-CgX2o0FP.cjs +0 -44
- package/dist/date-range-inline-CgX2o0FP.cjs.map +0 -1
- package/dist/date-range-inline-DTQLESAZ.js +0 -197
- package/dist/date-range-inline-DTQLESAZ.js.map +0 -1
- package/dist/date-range-inline.cjs.map +0 -1
- package/dist/date-range-inline.js.map +0 -1
- package/dist/date-range-ug3B9CFT.cjs +0 -119
- package/dist/date-range-ug3B9CFT.cjs.map +0 -1
- package/dist/date-range.cjs.map +0 -1
- package/dist/date-range.js.map +0 -1
- package/dist/delay-CWtBL0VD.cjs +0 -10
- package/dist/delay-CWtBL0VD.cjs.map +0 -1
- package/dist/delay-DEe1CmHc.js +0 -288
- package/dist/delay-DEe1CmHc.js.map +0 -1
- package/dist/delay.cjs.map +0 -1
- package/dist/delay.js.map +0 -1
- package/dist/details-D-LXW23W.js +0 -100
- package/dist/details-D-LXW23W.js.map +0 -1
- package/dist/details-DVke77dU.cjs +0 -55
- package/dist/details-DVke77dU.cjs.map +0 -1
- package/dist/details.cjs.map +0 -1
- package/dist/details.js.map +0 -1
- package/dist/dialog-service-C86xTS8q.cjs +0 -2
- package/dist/dialog-service-C86xTS8q.cjs.map +0 -1
- package/dist/dialog-service-D9E3jLAR.js +0 -118
- package/dist/dialog-service-D9E3jLAR.js.map +0 -1
- package/dist/dialog.component-BM0D-hK9.cjs +0 -48
- package/dist/dialog.component-BM0D-hK9.cjs.map +0 -1
- package/dist/dialog.component-a7FlKhGD.js +0 -145
- package/dist/dialog.component-a7FlKhGD.js.map +0 -1
- package/dist/discovery.service-BbYjU5x8.js +0 -21
- package/dist/discovery.service-BbYjU5x8.js.map +0 -1
- package/dist/discovery.service-BpGCuXPd.cjs +0 -2
- package/dist/discovery.service-BpGCuXPd.cjs.map +0 -1
- package/dist/divider-CzTpxOqt.js +0 -84
- package/dist/divider-CzTpxOqt.js.map +0 -1
- package/dist/divider-D8KStUhN.cjs +0 -58
- package/dist/divider-D8KStUhN.cjs.map +0 -1
- package/dist/divider.cjs.map +0 -1
- package/dist/divider.js.map +0 -1
- package/dist/dropdown-content-CngZN3vv.cjs +0 -58
- package/dist/dropdown-content-CngZN3vv.cjs.map +0 -1
- package/dist/dropdown-content-DCn-g0-f.js +0 -147
- package/dist/dropdown-content-DCn-g0-f.js.map +0 -1
- package/dist/email-recipients-BhntMZMf.cjs +0 -1173
- package/dist/email-recipients-BhntMZMf.cjs.map +0 -1
- package/dist/email-recipients-BzjAKNJ0.js +0 -1733
- package/dist/email-recipients-BzjAKNJ0.js.map +0 -1
- package/dist/emotional-sounds-BRnFhww6.js +0 -234
- package/dist/emotional-sounds-BRnFhww6.js.map +0 -1
- package/dist/emotional-sounds-DVGhmoZf.cjs +0 -2
- package/dist/emotional-sounds-DVGhmoZf.cjs.map +0 -1
- package/dist/extra.cjs.map +0 -1
- package/dist/extra.js.map +0 -1
- package/dist/flex-5dR48zie.js +0 -183
- package/dist/flex-5dR48zie.js.map +0 -1
- package/dist/flex-oHl2EfYB.cjs +0 -18
- package/dist/flex-oHl2EfYB.cjs.map +0 -1
- package/dist/flow-D0e7hGXO.cjs +0 -2
- package/dist/flow-D0e7hGXO.cjs.map +0 -1
- package/dist/flow-DXYqC9OA.js +0 -340
- package/dist/flow-DXYqC9OA.js.map +0 -1
- package/dist/form-BlPiAPt7.cjs +0 -2
- package/dist/form-BlPiAPt7.cjs.map +0 -1
- package/dist/form-BxVM6JTn.js +0 -141
- package/dist/form-BxVM6JTn.js.map +0 -1
- package/dist/form.cjs.map +0 -1
- package/dist/form.js.map +0 -1
- package/dist/formField.mixin-BCGA7Ea3.js +0 -48
- package/dist/formField.mixin-BCGA7Ea3.js.map +0 -1
- package/dist/formField.mixin-BfJMifU9.cjs +0 -2
- package/dist/formField.mixin-BfJMifU9.cjs.map +0 -1
- package/dist/height-CfECBO2j.js +0 -44
- package/dist/height-CfECBO2j.js.map +0 -1
- package/dist/height-Z70qJYJK.cjs +0 -2
- package/dist/height-Z70qJYJK.cjs.map +0 -1
- package/dist/icon-DHEXr3c-.cjs +0 -49
- package/dist/icon-DHEXr3c-.cjs.map +0 -1
- package/dist/icon-DYpLoegR.js +0 -84
- package/dist/icon-DYpLoegR.js.map +0 -1
- package/dist/icon-button-CmZBLHWC.js +0 -164
- package/dist/icon-button-CmZBLHWC.js.map +0 -1
- package/dist/icon-button-IbSX8C98.cjs +0 -70
- package/dist/icon-button-IbSX8C98.cjs.map +0 -1
- package/dist/icons.cjs.map +0 -1
- package/dist/icons.js.map +0 -1
- package/dist/index-CCi1otmh.cjs +0 -2
- package/dist/index-CCi1otmh.cjs.map +0 -1
- package/dist/index-CW6PhEkx.js +0 -17
- package/dist/index-CW6PhEkx.js.map +0 -1
- package/dist/index.cjs.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/input-BByjYlgl.cjs +0 -51
- package/dist/input-BByjYlgl.cjs.map +0 -1
- package/dist/input-D0cQ9DOY.js +0 -237
- package/dist/input-D0cQ9DOY.js.map +0 -1
- package/dist/input-chip-B5ErXgCB.js +0 -206
- package/dist/input-chip-B5ErXgCB.js.map +0 -1
- package/dist/input-chip-DkWaTciP.cjs +0 -147
- package/dist/input-chip-DkWaTciP.cjs.map +0 -1
- package/dist/input.cjs.map +0 -1
- package/dist/input.js.map +0 -1
- package/dist/intersection-CJxzz8c-.js +0 -15
- package/dist/intersection-CJxzz8c-.js.map +0 -1
- package/dist/intersection-CVvaDv96.cjs +0 -2
- package/dist/intersection-CVvaDv96.cjs.map +0 -1
- package/dist/json-BZVe74np.cjs +0 -12
- package/dist/json-BZVe74np.cjs.map +0 -1
- package/dist/json-PKewOWuJ.js +0 -51
- package/dist/json-PKewOWuJ.js.map +0 -1
- package/dist/layout.cjs.map +0 -1
- package/dist/layout.js.map +0 -1
- package/dist/lightbox-service-D-0JtxB1.cjs +0 -202
- package/dist/lightbox-service-D-0JtxB1.cjs.map +0 -1
- package/dist/lightbox-service-DZMnb1eU.js +0 -458
- package/dist/lightbox-service-DZMnb1eU.js.map +0 -1
- package/dist/lightbox.cjs.map +0 -1
- package/dist/lightbox.js.map +0 -1
- package/dist/list-B_2m7l3g.cjs +0 -17
- package/dist/list-B_2m7l3g.cjs.map +0 -1
- package/dist/list-CW56LV-v.js +0 -69
- package/dist/list-CW56LV-v.js.map +0 -1
- package/dist/list.cjs.map +0 -1
- package/dist/list.js.map +0 -1
- package/dist/litElement.mixin-CrpeGpZ7.cjs +0 -2
- package/dist/litElement.mixin-CrpeGpZ7.cjs.map +0 -1
- package/dist/litElement.mixin-DHZXtvYq.js +0 -15
- package/dist/litElement.mixin-DHZXtvYq.js.map +0 -1
- package/dist/mailbox.cjs.map +0 -1
- package/dist/mailbox.js.map +0 -1
- package/dist/map-2Hl60a0A.js +0 -175
- package/dist/map-2Hl60a0A.js.map +0 -1
- package/dist/map-DyPS9G7M.cjs +0 -81
- package/dist/map-DyPS9G7M.cjs.map +0 -1
- package/dist/map.cjs.map +0 -1
- package/dist/map.js.map +0 -1
- package/dist/media-CS8HpKnK.cjs +0 -152
- package/dist/media-CS8HpKnK.cjs.map +0 -1
- package/dist/media-DtWbcRxL.js +0 -244
- package/dist/media-DtWbcRxL.js.map +0 -1
- package/dist/menu-Caju5-zd.js +0 -60
- package/dist/menu-Caju5-zd.js.map +0 -1
- package/dist/menu-rX5RPAI2.cjs +0 -24
- package/dist/menu-rX5RPAI2.cjs.map +0 -1
- package/dist/menu.cjs.map +0 -1
- package/dist/menu.js.map +0 -1
- package/dist/nav-drawer.cjs.map +0 -1
- package/dist/nav-drawer.js.map +0 -1
- package/dist/navigation-bar.cjs.map +0 -1
- package/dist/navigation-bar.js.map +0 -1
- package/dist/navigation-rail-Ctketq5a.js +0 -256
- package/dist/navigation-rail-Ctketq5a.js.map +0 -1
- package/dist/navigation-rail-DC9_oSIM.cjs +0 -79
- package/dist/navigation-rail-DC9_oSIM.cjs.map +0 -1
- package/dist/notification-service-CUlfXqmj.js +0 -155
- package/dist/notification-service-CUlfXqmj.js.map +0 -1
- package/dist/notification-service-DknbpqTt.cjs +0 -19
- package/dist/notification-service-DknbpqTt.cjs.map +0 -1
- package/dist/notification.cjs.map +0 -1
- package/dist/notification.js.map +0 -1
- package/dist/notify-DJSOWTxv.js +0 -35
- package/dist/notify-DJSOWTxv.js.map +0 -1
- package/dist/notify-DickIEHW.cjs +0 -2
- package/dist/notify-DickIEHW.cjs.map +0 -1
- package/dist/number-B7aCRYnH.cjs +0 -2
- package/dist/number-B7aCRYnH.cjs.map +0 -1
- package/dist/number-BhTiptLA.js +0 -99
- package/dist/number-BhTiptLA.js.map +0 -1
- package/dist/option-Bng41-rY.js +0 -77
- package/dist/option-Bng41-rY.js.map +0 -1
- package/dist/option-DYT5Rkgy.cjs +0 -44
- package/dist/option-DYT5Rkgy.cjs.map +0 -1
- package/dist/option.cjs.map +0 -1
- package/dist/option.js.map +0 -1
- package/dist/page-BLn9gtSd.cjs +0 -20
- package/dist/page-BLn9gtSd.cjs.map +0 -1
- package/dist/page-D-ROcQDd.js +0 -48
- package/dist/page-D-ROcQDd.js.map +0 -1
- package/dist/payment-card-form-5UtfWzoW.cjs +0 -74
- package/dist/payment-card-form-5UtfWzoW.cjs.map +0 -1
- package/dist/payment-card-form-BJa4RgF2.js +0 -515
- package/dist/payment-card-form-BJa4RgF2.js.map +0 -1
- package/dist/pills-BS5rZ6C3.js +0 -346
- package/dist/pills-BS5rZ6C3.js.map +0 -1
- package/dist/pills-Blf7IAeq.cjs +0 -113
- package/dist/pills-Blf7IAeq.cjs.map +0 -1
- package/dist/progress-DlhYniW_.cjs +0 -35
- package/dist/progress-DlhYniW_.cjs.map +0 -1
- package/dist/progress-yTIX6EqC.js +0 -56
- package/dist/progress-yTIX6EqC.js.map +0 -1
- package/dist/progress.cjs.map +0 -1
- package/dist/progress.js.map +0 -1
- package/dist/provide-BxZ2kn_p.cjs +0 -2
- package/dist/provide-BxZ2kn_p.cjs.map +0 -1
- package/dist/provide-tcktw8xB.js +0 -100
- package/dist/provide-tcktw8xB.js.map +0 -1
- package/dist/qr-scanner-DOs7uNS_.cjs +0 -29
- package/dist/qr-scanner-DOs7uNS_.cjs.map +0 -1
- package/dist/qr-scanner-DjZ8mgHV.js +0 -743
- package/dist/qr-scanner-DjZ8mgHV.js.map +0 -1
- package/dist/radio-button-N_PrrxKB.cjs +0 -41
- package/dist/radio-button-N_PrrxKB.cjs.map +0 -1
- package/dist/radio-button-me3SRHGu.js +0 -115
- package/dist/radio-button-me3SRHGu.js.map +0 -1
- package/dist/radio-group.cjs.map +0 -1
- package/dist/radio-group.js.map +0 -1
- package/dist/ripple-BgJXbNSP.js +0 -124
- package/dist/ripple-BgJXbNSP.js.map +0 -1
- package/dist/ripple-x6sTX02K.cjs +0 -16
- package/dist/ripple-x6sTX02K.cjs.map +0 -1
- package/dist/rxjs-utils.cjs.map +0 -1
- package/dist/rxjs-utils.js.map +0 -1
- package/dist/schmancy-steps-container-J6P-NNNj.js +0 -156
- package/dist/schmancy-steps-container-J6P-NNNj.js.map +0 -1
- package/dist/schmancy-steps-container-T57BKMzi.cjs +0 -70
- package/dist/schmancy-steps-container-T57BKMzi.cjs.map +0 -1
- package/dist/scroll-C_gfUgjn.js +0 -87
- package/dist/scroll-C_gfUgjn.js.map +0 -1
- package/dist/scroll-CecsowP7.cjs +0 -27
- package/dist/scroll-CecsowP7.cjs.map +0 -1
- package/dist/search-B1s7thB0.cjs +0 -2
- package/dist/search-B1s7thB0.cjs.map +0 -1
- package/dist/search-DxxnLa5u.js +0 -95
- package/dist/search-DxxnLa5u.js.map +0 -1
- package/dist/select-BBA0gBHf.js +0 -280
- package/dist/select-BBA0gBHf.js.map +0 -1
- package/dist/select-D9oCjv7N.cjs +0 -57
- package/dist/select-D9oCjv7N.cjs.map +0 -1
- package/dist/select.cjs.map +0 -1
- package/dist/select.js.map +0 -1
- package/dist/selector-hook-9w2auh2O.cjs +0 -2
- package/dist/selector-hook-9w2auh2O.cjs.map +0 -1
- package/dist/selector-hook-CHV4kDMd.js +0 -319
- package/dist/selector-hook-CHV4kDMd.js.map +0 -1
- package/dist/sheet-0oUfBmXX.cjs +0 -15
- package/dist/sheet-0oUfBmXX.cjs.map +0 -1
- package/dist/sheet-CNcDT3VP.js +0 -97
- package/dist/sheet-CNcDT3VP.js.map +0 -1
- package/dist/sheet.cjs.map +0 -1
- package/dist/sheet.js.map +0 -1
- package/dist/sheet.service-2MobB-9z.js +0 -68
- package/dist/sheet.service-2MobB-9z.js.map +0 -1
- package/dist/sheet.service-su_7yDQ-.cjs +0 -2
- package/dist/sheet.service-su_7yDQ-.cjs.map +0 -1
- package/dist/slider-CV-Ehp_5.cjs +0 -83
- package/dist/slider-CV-Ehp_5.cjs.map +0 -1
- package/dist/slider-CkE-iFUy.js +0 -161
- package/dist/slider-CkE-iFUy.js.map +0 -1
- package/dist/sound.service-Nza4c6wv.js +0 -102
- package/dist/sound.service-Nza4c6wv.js.map +0 -1
- package/dist/sound.service-eRirZw59.cjs +0 -2
- package/dist/sound.service-eRirZw59.cjs.map +0 -1
- package/dist/spinner-Bfn8KC-9.cjs +0 -135
- package/dist/spinner-Bfn8KC-9.cjs.map +0 -1
- package/dist/spinner-DiMbWXp9.js +0 -168
- package/dist/spinner-DiMbWXp9.js.map +0 -1
- package/dist/store.cjs.map +0 -1
- package/dist/store.js.map +0 -1
- package/dist/suggestion-chip-CEDqUNoS.js +0 -481
- package/dist/suggestion-chip-CEDqUNoS.js.map +0 -1
- package/dist/suggestion-chip-HhsLtZXR.cjs +0 -271
- package/dist/suggestion-chip-HhsLtZXR.cjs.map +0 -1
- package/dist/surface-CW3H23Va.cjs +0 -199
- package/dist/surface-CW3H23Va.cjs.map +0 -1
- package/dist/surface-eBfnSwQS.js +0 -220
- package/dist/surface-eBfnSwQS.js.map +0 -1
- package/dist/surface.cjs.map +0 -1
- package/dist/surface.js.map +0 -1
- package/dist/table-D0tiSL_u.cjs +0 -64
- package/dist/table-D0tiSL_u.cjs.map +0 -1
- package/dist/table-Dmo4TvTx.js +0 -561
- package/dist/table-Dmo4TvTx.js.map +0 -1
- package/dist/table.cjs.map +0 -1
- package/dist/table.js.map +0 -1
- package/dist/tabs-compatibility-Bit6y6en.js +0 -104
- package/dist/tabs-compatibility-Bit6y6en.js.map +0 -1
- package/dist/tabs-compatibility-Vq_2-ekz.cjs +0 -35
- package/dist/tabs-compatibility-Vq_2-ekz.cjs.map +0 -1
- package/dist/tabs.cjs.map +0 -1
- package/dist/tabs.js.map +0 -1
- package/dist/tailwind.mixin-Bp_PR6yc.js +0 -67
- package/dist/tailwind.mixin-Bp_PR6yc.js.map +0 -1
- package/dist/tailwind.mixin-Cp4PyXok.cjs +0 -2
- package/dist/tailwind.mixin-Cp4PyXok.cjs.map +0 -1
- package/dist/teleport.cjs.map +0 -1
- package/dist/teleport.js.map +0 -1
- package/dist/textarea-B1d1QCqT.js +0 -134
- package/dist/textarea-B1d1QCqT.js.map +0 -1
- package/dist/textarea-DG8CHhZA.cjs +0 -44
- package/dist/textarea-DG8CHhZA.cjs.map +0 -1
- package/dist/textarea.cjs.map +0 -1
- package/dist/textarea.js.map +0 -1
- package/dist/theme-button-CPL6Eaqd.cjs +0 -9
- package/dist/theme-button-CPL6Eaqd.cjs.map +0 -1
- package/dist/theme-button-CrLuMQNe.js +0 -27
- package/dist/theme-button-CrLuMQNe.js.map +0 -1
- package/dist/theme-button.cjs.map +0 -1
- package/dist/theme-button.js.map +0 -1
- package/dist/theme-controller-boat-CXbNJSI3.cjs +0 -178
- package/dist/theme-controller-boat-CXbNJSI3.cjs.map +0 -1
- package/dist/theme-controller-boat-CzSmjyKq.js +0 -1159
- package/dist/theme-controller-boat-CzSmjyKq.js.map +0 -1
- package/dist/theme.cjs.map +0 -1
- package/dist/theme.events-CPSLaOlR.js +0 -6
- package/dist/theme.events-CPSLaOlR.js.map +0 -1
- package/dist/theme.events-Car6U_SQ.cjs +0 -2
- package/dist/theme.events-Car6U_SQ.cjs.map +0 -1
- package/dist/theme.interface-BLfE5J_1.js +0 -5
- package/dist/theme.interface-BLfE5J_1.js.map +0 -1
- package/dist/theme.interface-BMeNadVb.cjs +0 -2
- package/dist/theme.interface-BMeNadVb.cjs.map +0 -1
- package/dist/theme.js.map +0 -1
- package/dist/timezone-4vwX0BgA.js +0 -112
- package/dist/timezone-4vwX0BgA.js.map +0 -1
- package/dist/timezone-BxvQcqe1.cjs +0 -32
- package/dist/timezone-BxvQcqe1.cjs.map +0 -1
- package/dist/tooltip-CjdvBf4X.js +0 -119
- package/dist/tooltip-CjdvBf4X.js.map +0 -1
- package/dist/tooltip-ZtnGjoJd.cjs +0 -7
- package/dist/tooltip-ZtnGjoJd.cjs.map +0 -1
- package/dist/tree-CBEjV7jP.js +0 -65
- package/dist/tree-CBEjV7jP.js.map +0 -1
- package/dist/tree-DP5U00NA.cjs +0 -27
- package/dist/tree-DP5U00NA.cjs.map +0 -1
- package/dist/tslib.es6-DgOcxv4s.cjs +0 -2
- package/dist/tslib.es6-DgOcxv4s.cjs.map +0 -1
- package/dist/tslib.es6-ujVQHAQ4.js +0 -10
- package/dist/tslib.es6-ujVQHAQ4.js.map +0 -1
- package/dist/typewriter-C6kFjLcX.cjs +0 -124
- package/dist/typewriter-C6kFjLcX.cjs.map +0 -1
- package/dist/typewriter-Eo5qXoGC.js +0 -555
- package/dist/typewriter-Eo5qXoGC.js.map +0 -1
- package/dist/typewriter.cjs.map +0 -1
- package/dist/typewriter.js.map +0 -1
- package/dist/typography-C_1gdM2I.js +0 -264
- package/dist/typography-C_1gdM2I.js.map +0 -1
- package/dist/typography-DGyjlLCE.cjs +0 -243
- package/dist/typography-DGyjlLCE.cjs.map +0 -1
- package/dist/utils-C38P63L6.cjs +0 -2
- package/dist/utils-C38P63L6.cjs.map +0 -1
- package/dist/utils-CYOVFxSx.js +0 -150
- package/dist/utils-CYOVFxSx.js.map +0 -1
- package/dist/utils.cjs.map +0 -1
- package/dist/utils.js.map +0 -1
- package/types/src/animated-text/animated-text.d.ts +0 -30
- package/types/src/animated-text/index.d.ts +0 -1
- package/types/src/directives/height.d.ts +0 -20
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"context-create-DTybDbZp.cjs","sources":["../node_modules/immer/dist/immer.mjs","../src/store/store.class.ts","../src/store/context-object.ts","../src/store/types.ts","../src/store/storage-manager.ts","../src/store/context-array.ts","../src/store/context-collection.ts","../src/store/context-create.ts"],"sourcesContent":["// src/utils/env.ts\nvar NOTHING = Symbol.for(\"immer-nothing\");\nvar DRAFTABLE = Symbol.for(\"immer-draftable\");\nvar DRAFT_STATE = Symbol.for(\"immer-state\");\n\n// src/utils/errors.ts\nvar errors = process.env.NODE_ENV !== \"production\" ? [\n // All error codes, starting by 0:\n function(plugin) {\n return `The plugin for '${plugin}' has not been loaded into Immer. To enable the plugin, import and call \\`enable${plugin}()\\` when initializing your application.`;\n },\n function(thing) {\n return `produce can only be called on things that are draftable: plain objects, arrays, Map, Set or classes that are marked with '[immerable]: true'. Got '${thing}'`;\n },\n \"This object has been frozen and should not be mutated\",\n function(data) {\n return \"Cannot use a proxy that has been revoked. Did you pass an object from inside an immer function to an async process? \" + data;\n },\n \"An immer producer returned a new value *and* modified its draft. Either return a new value *or* modify the draft.\",\n \"Immer forbids circular references\",\n \"The first or second argument to `produce` must be a function\",\n \"The third argument to `produce` must be a function or undefined\",\n \"First argument to `createDraft` must be a plain object, an array, or an immerable object\",\n \"First argument to `finishDraft` must be a draft returned by `createDraft`\",\n function(thing) {\n return `'current' expects a draft, got: ${thing}`;\n },\n \"Object.defineProperty() cannot be used on an Immer draft\",\n \"Object.setPrototypeOf() cannot be used on an Immer draft\",\n \"Immer only supports deleting array indices\",\n \"Immer only supports setting array indices and the 'length' property\",\n function(thing) {\n return `'original' expects a draft, got: ${thing}`;\n }\n // Note: if more errors are added, the errorOffset in Patches.ts should be increased\n // See Patches.ts for additional errors\n] : [];\nfunction die(error, ...args) {\n if (process.env.NODE_ENV !== \"production\") {\n const e = errors[error];\n const msg = typeof e === \"function\" ? e.apply(null, args) : e;\n throw new Error(`[Immer] ${msg}`);\n }\n throw new Error(\n `[Immer] minified error nr: ${error}. Full error at: https://bit.ly/3cXEKWf`\n );\n}\n\n// src/utils/common.ts\nvar getPrototypeOf = Object.getPrototypeOf;\nfunction isDraft(value) {\n return !!value && !!value[DRAFT_STATE];\n}\nfunction isDraftable(value) {\n if (!value)\n return false;\n return isPlainObject(value) || Array.isArray(value) || !!value[DRAFTABLE] || !!value.constructor?.[DRAFTABLE] || isMap(value) || isSet(value);\n}\nvar objectCtorString = Object.prototype.constructor.toString();\nvar cachedCtorStrings = /* @__PURE__ */ new WeakMap();\nfunction isPlainObject(value) {\n if (!value || typeof value !== \"object\")\n return false;\n const proto = Object.getPrototypeOf(value);\n if (proto === null || proto === Object.prototype)\n return true;\n const Ctor = Object.hasOwnProperty.call(proto, \"constructor\") && proto.constructor;\n if (Ctor === Object)\n return true;\n if (typeof Ctor !== \"function\")\n return false;\n let ctorString = cachedCtorStrings.get(Ctor);\n if (ctorString === void 0) {\n ctorString = Function.toString.call(Ctor);\n cachedCtorStrings.set(Ctor, ctorString);\n }\n return ctorString === objectCtorString;\n}\nfunction original(value) {\n if (!isDraft(value))\n die(15, value);\n return value[DRAFT_STATE].base_;\n}\nfunction each(obj, iter, strict = true) {\n if (getArchtype(obj) === 0 /* Object */) {\n const keys = strict ? Reflect.ownKeys(obj) : Object.keys(obj);\n keys.forEach((key) => {\n iter(key, obj[key], obj);\n });\n } else {\n obj.forEach((entry, index) => iter(index, entry, obj));\n }\n}\nfunction getArchtype(thing) {\n const state = thing[DRAFT_STATE];\n return state ? state.type_ : Array.isArray(thing) ? 1 /* Array */ : isMap(thing) ? 2 /* Map */ : isSet(thing) ? 3 /* Set */ : 0 /* Object */;\n}\nfunction has(thing, prop) {\n return getArchtype(thing) === 2 /* Map */ ? thing.has(prop) : Object.prototype.hasOwnProperty.call(thing, prop);\n}\nfunction get(thing, prop) {\n return getArchtype(thing) === 2 /* Map */ ? thing.get(prop) : thing[prop];\n}\nfunction set(thing, propOrOldValue, value) {\n const t = getArchtype(thing);\n if (t === 2 /* Map */)\n thing.set(propOrOldValue, value);\n else if (t === 3 /* Set */) {\n thing.add(value);\n } else\n thing[propOrOldValue] = value;\n}\nfunction is(x, y) {\n if (x === y) {\n return x !== 0 || 1 / x === 1 / y;\n } else {\n return x !== x && y !== y;\n }\n}\nfunction isMap(target) {\n return target instanceof Map;\n}\nfunction isSet(target) {\n return target instanceof Set;\n}\nfunction latest(state) {\n return state.copy_ || state.base_;\n}\nfunction shallowCopy(base, strict) {\n if (isMap(base)) {\n return new Map(base);\n }\n if (isSet(base)) {\n return new Set(base);\n }\n if (Array.isArray(base))\n return Array.prototype.slice.call(base);\n const isPlain = isPlainObject(base);\n if (strict === true || strict === \"class_only\" && !isPlain) {\n const descriptors = Object.getOwnPropertyDescriptors(base);\n delete descriptors[DRAFT_STATE];\n let keys = Reflect.ownKeys(descriptors);\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i];\n const desc = descriptors[key];\n if (desc.writable === false) {\n desc.writable = true;\n desc.configurable = true;\n }\n if (desc.get || desc.set)\n descriptors[key] = {\n configurable: true,\n writable: true,\n // could live with !!desc.set as well here...\n enumerable: desc.enumerable,\n value: base[key]\n };\n }\n return Object.create(getPrototypeOf(base), descriptors);\n } else {\n const proto = getPrototypeOf(base);\n if (proto !== null && isPlain) {\n return { ...base };\n }\n const obj = Object.create(proto);\n return Object.assign(obj, base);\n }\n}\nfunction freeze(obj, deep = false) {\n if (isFrozen(obj) || isDraft(obj) || !isDraftable(obj))\n return obj;\n if (getArchtype(obj) > 1) {\n Object.defineProperties(obj, {\n set: dontMutateMethodOverride,\n add: dontMutateMethodOverride,\n clear: dontMutateMethodOverride,\n delete: dontMutateMethodOverride\n });\n }\n Object.freeze(obj);\n if (deep)\n Object.values(obj).forEach((value) => freeze(value, true));\n return obj;\n}\nfunction dontMutateFrozenCollections() {\n die(2);\n}\nvar dontMutateMethodOverride = {\n value: dontMutateFrozenCollections\n};\nfunction isFrozen(obj) {\n if (obj === null || typeof obj !== \"object\")\n return true;\n return Object.isFrozen(obj);\n}\n\n// src/utils/plugins.ts\nvar plugins = {};\nfunction getPlugin(pluginKey) {\n const plugin = plugins[pluginKey];\n if (!plugin) {\n die(0, pluginKey);\n }\n return plugin;\n}\nfunction loadPlugin(pluginKey, implementation) {\n if (!plugins[pluginKey])\n plugins[pluginKey] = implementation;\n}\n\n// src/core/scope.ts\nvar currentScope;\nfunction getCurrentScope() {\n return currentScope;\n}\nfunction createScope(parent_, immer_) {\n return {\n drafts_: [],\n parent_,\n immer_,\n // Whenever the modified draft contains a draft from another scope, we\n // need to prevent auto-freezing so the unowned draft can be finalized.\n canAutoFreeze_: true,\n unfinalizedDrafts_: 0\n };\n}\nfunction usePatchesInScope(scope, patchListener) {\n if (patchListener) {\n getPlugin(\"Patches\");\n scope.patches_ = [];\n scope.inversePatches_ = [];\n scope.patchListener_ = patchListener;\n }\n}\nfunction revokeScope(scope) {\n leaveScope(scope);\n scope.drafts_.forEach(revokeDraft);\n scope.drafts_ = null;\n}\nfunction leaveScope(scope) {\n if (scope === currentScope) {\n currentScope = scope.parent_;\n }\n}\nfunction enterScope(immer2) {\n return currentScope = createScope(currentScope, immer2);\n}\nfunction revokeDraft(draft) {\n const state = draft[DRAFT_STATE];\n if (state.type_ === 0 /* Object */ || state.type_ === 1 /* Array */)\n state.revoke_();\n else\n state.revoked_ = true;\n}\n\n// src/core/finalize.ts\nfunction processResult(result, scope) {\n scope.unfinalizedDrafts_ = scope.drafts_.length;\n const baseDraft = scope.drafts_[0];\n const isReplaced = result !== void 0 && result !== baseDraft;\n if (isReplaced) {\n if (baseDraft[DRAFT_STATE].modified_) {\n revokeScope(scope);\n die(4);\n }\n if (isDraftable(result)) {\n result = finalize(scope, result);\n if (!scope.parent_)\n maybeFreeze(scope, result);\n }\n if (scope.patches_) {\n getPlugin(\"Patches\").generateReplacementPatches_(\n baseDraft[DRAFT_STATE].base_,\n result,\n scope.patches_,\n scope.inversePatches_\n );\n }\n } else {\n result = finalize(scope, baseDraft, []);\n }\n revokeScope(scope);\n if (scope.patches_) {\n scope.patchListener_(scope.patches_, scope.inversePatches_);\n }\n return result !== NOTHING ? result : void 0;\n}\nfunction finalize(rootScope, value, path) {\n if (isFrozen(value))\n return value;\n const useStrictIteration = rootScope.immer_.shouldUseStrictIteration();\n const state = value[DRAFT_STATE];\n if (!state) {\n each(\n value,\n (key, childValue) => finalizeProperty(rootScope, state, value, key, childValue, path),\n useStrictIteration\n );\n return value;\n }\n if (state.scope_ !== rootScope)\n return value;\n if (!state.modified_) {\n maybeFreeze(rootScope, state.base_, true);\n return state.base_;\n }\n if (!state.finalized_) {\n state.finalized_ = true;\n state.scope_.unfinalizedDrafts_--;\n const result = state.copy_;\n let resultEach = result;\n let isSet2 = false;\n if (state.type_ === 3 /* Set */) {\n resultEach = new Set(result);\n result.clear();\n isSet2 = true;\n }\n each(\n resultEach,\n (key, childValue) => finalizeProperty(\n rootScope,\n state,\n result,\n key,\n childValue,\n path,\n isSet2\n ),\n useStrictIteration\n );\n maybeFreeze(rootScope, result, false);\n if (path && rootScope.patches_) {\n getPlugin(\"Patches\").generatePatches_(\n state,\n path,\n rootScope.patches_,\n rootScope.inversePatches_\n );\n }\n }\n return state.copy_;\n}\nfunction finalizeProperty(rootScope, parentState, targetObject, prop, childValue, rootPath, targetIsSet) {\n if (childValue == null) {\n return;\n }\n if (typeof childValue !== \"object\" && !targetIsSet) {\n return;\n }\n const childIsFrozen = isFrozen(childValue);\n if (childIsFrozen && !targetIsSet) {\n return;\n }\n if (process.env.NODE_ENV !== \"production\" && childValue === targetObject)\n die(5);\n if (isDraft(childValue)) {\n const path = rootPath && parentState && parentState.type_ !== 3 /* Set */ && // Set objects are atomic since they have no keys.\n !has(parentState.assigned_, prop) ? rootPath.concat(prop) : void 0;\n const res = finalize(rootScope, childValue, path);\n set(targetObject, prop, res);\n if (isDraft(res)) {\n rootScope.canAutoFreeze_ = false;\n } else\n return;\n } else if (targetIsSet) {\n targetObject.add(childValue);\n }\n if (isDraftable(childValue) && !childIsFrozen) {\n if (!rootScope.immer_.autoFreeze_ && rootScope.unfinalizedDrafts_ < 1) {\n return;\n }\n if (parentState && parentState.base_ && parentState.base_[prop] === childValue && childIsFrozen) {\n return;\n }\n finalize(rootScope, childValue);\n if ((!parentState || !parentState.scope_.parent_) && typeof prop !== \"symbol\" && (isMap(targetObject) ? targetObject.has(prop) : Object.prototype.propertyIsEnumerable.call(targetObject, prop)))\n maybeFreeze(rootScope, childValue);\n }\n}\nfunction maybeFreeze(scope, value, deep = false) {\n if (!scope.parent_ && scope.immer_.autoFreeze_ && scope.canAutoFreeze_) {\n freeze(value, deep);\n }\n}\n\n// src/core/proxy.ts\nfunction createProxyProxy(base, parent) {\n const isArray = Array.isArray(base);\n const state = {\n type_: isArray ? 1 /* Array */ : 0 /* Object */,\n // Track which produce call this is associated with.\n scope_: parent ? parent.scope_ : getCurrentScope(),\n // True for both shallow and deep changes.\n modified_: false,\n // Used during finalization.\n finalized_: false,\n // Track which properties have been assigned (true) or deleted (false).\n assigned_: {},\n // The parent draft state.\n parent_: parent,\n // The base state.\n base_: base,\n // The base proxy.\n draft_: null,\n // set below\n // The base copy with any updated values.\n copy_: null,\n // Called by the `produce` function.\n revoke_: null,\n isManual_: false\n };\n let target = state;\n let traps = objectTraps;\n if (isArray) {\n target = [state];\n traps = arrayTraps;\n }\n const { revoke, proxy } = Proxy.revocable(target, traps);\n state.draft_ = proxy;\n state.revoke_ = revoke;\n return proxy;\n}\nvar objectTraps = {\n get(state, prop) {\n if (prop === DRAFT_STATE)\n return state;\n const source = latest(state);\n if (!has(source, prop)) {\n return readPropFromProto(state, source, prop);\n }\n const value = source[prop];\n if (state.finalized_ || !isDraftable(value)) {\n return value;\n }\n if (value === peek(state.base_, prop)) {\n prepareCopy(state);\n return state.copy_[prop] = createProxy(value, state);\n }\n return value;\n },\n has(state, prop) {\n return prop in latest(state);\n },\n ownKeys(state) {\n return Reflect.ownKeys(latest(state));\n },\n set(state, prop, value) {\n const desc = getDescriptorFromProto(latest(state), prop);\n if (desc?.set) {\n desc.set.call(state.draft_, value);\n return true;\n }\n if (!state.modified_) {\n const current2 = peek(latest(state), prop);\n const currentState = current2?.[DRAFT_STATE];\n if (currentState && currentState.base_ === value) {\n state.copy_[prop] = value;\n state.assigned_[prop] = false;\n return true;\n }\n if (is(value, current2) && (value !== void 0 || has(state.base_, prop)))\n return true;\n prepareCopy(state);\n markChanged(state);\n }\n if (state.copy_[prop] === value && // special case: handle new props with value 'undefined'\n (value !== void 0 || prop in state.copy_) || // special case: NaN\n Number.isNaN(value) && Number.isNaN(state.copy_[prop]))\n return true;\n state.copy_[prop] = value;\n state.assigned_[prop] = true;\n return true;\n },\n deleteProperty(state, prop) {\n if (peek(state.base_, prop) !== void 0 || prop in state.base_) {\n state.assigned_[prop] = false;\n prepareCopy(state);\n markChanged(state);\n } else {\n delete state.assigned_[prop];\n }\n if (state.copy_) {\n delete state.copy_[prop];\n }\n return true;\n },\n // Note: We never coerce `desc.value` into an Immer draft, because we can't make\n // the same guarantee in ES5 mode.\n getOwnPropertyDescriptor(state, prop) {\n const owner = latest(state);\n const desc = Reflect.getOwnPropertyDescriptor(owner, prop);\n if (!desc)\n return desc;\n return {\n writable: true,\n configurable: state.type_ !== 1 /* Array */ || prop !== \"length\",\n enumerable: desc.enumerable,\n value: owner[prop]\n };\n },\n defineProperty() {\n die(11);\n },\n getPrototypeOf(state) {\n return getPrototypeOf(state.base_);\n },\n setPrototypeOf() {\n die(12);\n }\n};\nvar arrayTraps = {};\neach(objectTraps, (key, fn) => {\n arrayTraps[key] = function() {\n arguments[0] = arguments[0][0];\n return fn.apply(this, arguments);\n };\n});\narrayTraps.deleteProperty = function(state, prop) {\n if (process.env.NODE_ENV !== \"production\" && isNaN(parseInt(prop)))\n die(13);\n return arrayTraps.set.call(this, state, prop, void 0);\n};\narrayTraps.set = function(state, prop, value) {\n if (process.env.NODE_ENV !== \"production\" && prop !== \"length\" && isNaN(parseInt(prop)))\n die(14);\n return objectTraps.set.call(this, state[0], prop, value, state[0]);\n};\nfunction peek(draft, prop) {\n const state = draft[DRAFT_STATE];\n const source = state ? latest(state) : draft;\n return source[prop];\n}\nfunction readPropFromProto(state, source, prop) {\n const desc = getDescriptorFromProto(source, prop);\n return desc ? `value` in desc ? desc.value : (\n // This is a very special case, if the prop is a getter defined by the\n // prototype, we should invoke it with the draft as context!\n desc.get?.call(state.draft_)\n ) : void 0;\n}\nfunction getDescriptorFromProto(source, prop) {\n if (!(prop in source))\n return void 0;\n let proto = getPrototypeOf(source);\n while (proto) {\n const desc = Object.getOwnPropertyDescriptor(proto, prop);\n if (desc)\n return desc;\n proto = getPrototypeOf(proto);\n }\n return void 0;\n}\nfunction markChanged(state) {\n if (!state.modified_) {\n state.modified_ = true;\n if (state.parent_) {\n markChanged(state.parent_);\n }\n }\n}\nfunction prepareCopy(state) {\n if (!state.copy_) {\n state.copy_ = shallowCopy(\n state.base_,\n state.scope_.immer_.useStrictShallowCopy_\n );\n }\n}\n\n// src/core/immerClass.ts\nvar Immer2 = class {\n constructor(config) {\n this.autoFreeze_ = true;\n this.useStrictShallowCopy_ = false;\n this.useStrictIteration_ = true;\n /**\n * The `produce` function takes a value and a \"recipe function\" (whose\n * return value often depends on the base state). The recipe function is\n * free to mutate its first argument however it wants. All mutations are\n * only ever applied to a __copy__ of the base state.\n *\n * Pass only a function to create a \"curried producer\" which relieves you\n * from passing the recipe function every time.\n *\n * Only plain objects and arrays are made mutable. All other objects are\n * considered uncopyable.\n *\n * Note: This function is __bound__ to its `Immer` instance.\n *\n * @param {any} base - the initial state\n * @param {Function} recipe - function that receives a proxy of the base state as first argument and which can be freely modified\n * @param {Function} patchListener - optional function that will be called with all the patches produced here\n * @returns {any} a new state, or the initial state if nothing was modified\n */\n this.produce = (base, recipe, patchListener) => {\n if (typeof base === \"function\" && typeof recipe !== \"function\") {\n const defaultBase = recipe;\n recipe = base;\n const self = this;\n return function curriedProduce(base2 = defaultBase, ...args) {\n return self.produce(base2, (draft) => recipe.call(this, draft, ...args));\n };\n }\n if (typeof recipe !== \"function\")\n die(6);\n if (patchListener !== void 0 && typeof patchListener !== \"function\")\n die(7);\n let result;\n if (isDraftable(base)) {\n const scope = enterScope(this);\n const proxy = createProxy(base, void 0);\n let hasError = true;\n try {\n result = recipe(proxy);\n hasError = false;\n } finally {\n if (hasError)\n revokeScope(scope);\n else\n leaveScope(scope);\n }\n usePatchesInScope(scope, patchListener);\n return processResult(result, scope);\n } else if (!base || typeof base !== \"object\") {\n result = recipe(base);\n if (result === void 0)\n result = base;\n if (result === NOTHING)\n result = void 0;\n if (this.autoFreeze_)\n freeze(result, true);\n if (patchListener) {\n const p = [];\n const ip = [];\n getPlugin(\"Patches\").generateReplacementPatches_(base, result, p, ip);\n patchListener(p, ip);\n }\n return result;\n } else\n die(1, base);\n };\n this.produceWithPatches = (base, recipe) => {\n if (typeof base === \"function\") {\n return (state, ...args) => this.produceWithPatches(state, (draft) => base(draft, ...args));\n }\n let patches, inversePatches;\n const result = this.produce(base, recipe, (p, ip) => {\n patches = p;\n inversePatches = ip;\n });\n return [result, patches, inversePatches];\n };\n if (typeof config?.autoFreeze === \"boolean\")\n this.setAutoFreeze(config.autoFreeze);\n if (typeof config?.useStrictShallowCopy === \"boolean\")\n this.setUseStrictShallowCopy(config.useStrictShallowCopy);\n if (typeof config?.useStrictIteration === \"boolean\")\n this.setUseStrictIteration(config.useStrictIteration);\n }\n createDraft(base) {\n if (!isDraftable(base))\n die(8);\n if (isDraft(base))\n base = current(base);\n const scope = enterScope(this);\n const proxy = createProxy(base, void 0);\n proxy[DRAFT_STATE].isManual_ = true;\n leaveScope(scope);\n return proxy;\n }\n finishDraft(draft, patchListener) {\n const state = draft && draft[DRAFT_STATE];\n if (!state || !state.isManual_)\n die(9);\n const { scope_: scope } = state;\n usePatchesInScope(scope, patchListener);\n return processResult(void 0, scope);\n }\n /**\n * Pass true to automatically freeze all copies created by Immer.\n *\n * By default, auto-freezing is enabled.\n */\n setAutoFreeze(value) {\n this.autoFreeze_ = value;\n }\n /**\n * Pass true to enable strict shallow copy.\n *\n * By default, immer does not copy the object descriptors such as getter, setter and non-enumrable properties.\n */\n setUseStrictShallowCopy(value) {\n this.useStrictShallowCopy_ = value;\n }\n /**\n * Pass false to use faster iteration that skips non-enumerable properties\n * but still handles symbols for compatibility.\n *\n * By default, strict iteration is enabled (includes all own properties).\n */\n setUseStrictIteration(value) {\n this.useStrictIteration_ = value;\n }\n shouldUseStrictIteration() {\n return this.useStrictIteration_;\n }\n applyPatches(base, patches) {\n let i;\n for (i = patches.length - 1; i >= 0; i--) {\n const patch = patches[i];\n if (patch.path.length === 0 && patch.op === \"replace\") {\n base = patch.value;\n break;\n }\n }\n if (i > -1) {\n patches = patches.slice(i + 1);\n }\n const applyPatchesImpl = getPlugin(\"Patches\").applyPatches_;\n if (isDraft(base)) {\n return applyPatchesImpl(base, patches);\n }\n return this.produce(\n base,\n (draft) => applyPatchesImpl(draft, patches)\n );\n }\n};\nfunction createProxy(value, parent) {\n const draft = isMap(value) ? getPlugin(\"MapSet\").proxyMap_(value, parent) : isSet(value) ? getPlugin(\"MapSet\").proxySet_(value, parent) : createProxyProxy(value, parent);\n const scope = parent ? parent.scope_ : getCurrentScope();\n scope.drafts_.push(draft);\n return draft;\n}\n\n// src/core/current.ts\nfunction current(value) {\n if (!isDraft(value))\n die(10, value);\n return currentImpl(value);\n}\nfunction currentImpl(value) {\n if (!isDraftable(value) || isFrozen(value))\n return value;\n const state = value[DRAFT_STATE];\n let copy;\n let strict = true;\n if (state) {\n if (!state.modified_)\n return state.base_;\n state.finalized_ = true;\n copy = shallowCopy(value, state.scope_.immer_.useStrictShallowCopy_);\n strict = state.scope_.immer_.shouldUseStrictIteration();\n } else {\n copy = shallowCopy(value, true);\n }\n each(\n copy,\n (key, childValue) => {\n set(copy, key, currentImpl(childValue));\n },\n strict\n );\n if (state) {\n state.finalized_ = false;\n }\n return copy;\n}\n\n// src/plugins/patches.ts\nfunction enablePatches() {\n const errorOffset = 16;\n if (process.env.NODE_ENV !== \"production\") {\n errors.push(\n 'Sets cannot have \"replace\" patches.',\n function(op) {\n return \"Unsupported patch operation: \" + op;\n },\n function(path) {\n return \"Cannot apply patch, path doesn't resolve: \" + path;\n },\n \"Patching reserved attributes like __proto__, prototype and constructor is not allowed\"\n );\n }\n const REPLACE = \"replace\";\n const ADD = \"add\";\n const REMOVE = \"remove\";\n function generatePatches_(state, basePath, patches, inversePatches) {\n switch (state.type_) {\n case 0 /* Object */:\n case 2 /* Map */:\n return generatePatchesFromAssigned(\n state,\n basePath,\n patches,\n inversePatches\n );\n case 1 /* Array */:\n return generateArrayPatches(state, basePath, patches, inversePatches);\n case 3 /* Set */:\n return generateSetPatches(\n state,\n basePath,\n patches,\n inversePatches\n );\n }\n }\n function generateArrayPatches(state, basePath, patches, inversePatches) {\n let { base_, assigned_ } = state;\n let copy_ = state.copy_;\n if (copy_.length < base_.length) {\n ;\n [base_, copy_] = [copy_, base_];\n [patches, inversePatches] = [inversePatches, patches];\n }\n for (let i = 0; i < base_.length; i++) {\n if (assigned_[i] && copy_[i] !== base_[i]) {\n const path = basePath.concat([i]);\n patches.push({\n op: REPLACE,\n path,\n // Need to maybe clone it, as it can in fact be the original value\n // due to the base/copy inversion at the start of this function\n value: clonePatchValueIfNeeded(copy_[i])\n });\n inversePatches.push({\n op: REPLACE,\n path,\n value: clonePatchValueIfNeeded(base_[i])\n });\n }\n }\n for (let i = base_.length; i < copy_.length; i++) {\n const path = basePath.concat([i]);\n patches.push({\n op: ADD,\n path,\n // Need to maybe clone it, as it can in fact be the original value\n // due to the base/copy inversion at the start of this function\n value: clonePatchValueIfNeeded(copy_[i])\n });\n }\n for (let i = copy_.length - 1; base_.length <= i; --i) {\n const path = basePath.concat([i]);\n inversePatches.push({\n op: REMOVE,\n path\n });\n }\n }\n function generatePatchesFromAssigned(state, basePath, patches, inversePatches) {\n const { base_, copy_ } = state;\n each(state.assigned_, (key, assignedValue) => {\n const origValue = get(base_, key);\n const value = get(copy_, key);\n const op = !assignedValue ? REMOVE : has(base_, key) ? REPLACE : ADD;\n if (origValue === value && op === REPLACE)\n return;\n const path = basePath.concat(key);\n patches.push(op === REMOVE ? { op, path } : { op, path, value });\n inversePatches.push(\n op === ADD ? { op: REMOVE, path } : op === REMOVE ? { op: ADD, path, value: clonePatchValueIfNeeded(origValue) } : { op: REPLACE, path, value: clonePatchValueIfNeeded(origValue) }\n );\n });\n }\n function generateSetPatches(state, basePath, patches, inversePatches) {\n let { base_, copy_ } = state;\n let i = 0;\n base_.forEach((value) => {\n if (!copy_.has(value)) {\n const path = basePath.concat([i]);\n patches.push({\n op: REMOVE,\n path,\n value\n });\n inversePatches.unshift({\n op: ADD,\n path,\n value\n });\n }\n i++;\n });\n i = 0;\n copy_.forEach((value) => {\n if (!base_.has(value)) {\n const path = basePath.concat([i]);\n patches.push({\n op: ADD,\n path,\n value\n });\n inversePatches.unshift({\n op: REMOVE,\n path,\n value\n });\n }\n i++;\n });\n }\n function generateReplacementPatches_(baseValue, replacement, patches, inversePatches) {\n patches.push({\n op: REPLACE,\n path: [],\n value: replacement === NOTHING ? void 0 : replacement\n });\n inversePatches.push({\n op: REPLACE,\n path: [],\n value: baseValue\n });\n }\n function applyPatches_(draft, patches) {\n patches.forEach((patch) => {\n const { path, op } = patch;\n let base = draft;\n for (let i = 0; i < path.length - 1; i++) {\n const parentType = getArchtype(base);\n let p = path[i];\n if (typeof p !== \"string\" && typeof p !== \"number\") {\n p = \"\" + p;\n }\n if ((parentType === 0 /* Object */ || parentType === 1 /* Array */) && (p === \"__proto__\" || p === \"constructor\"))\n die(errorOffset + 3);\n if (typeof base === \"function\" && p === \"prototype\")\n die(errorOffset + 3);\n base = get(base, p);\n if (typeof base !== \"object\")\n die(errorOffset + 2, path.join(\"/\"));\n }\n const type = getArchtype(base);\n const value = deepClonePatchValue(patch.value);\n const key = path[path.length - 1];\n switch (op) {\n case REPLACE:\n switch (type) {\n case 2 /* Map */:\n return base.set(key, value);\n case 3 /* Set */:\n die(errorOffset);\n default:\n return base[key] = value;\n }\n case ADD:\n switch (type) {\n case 1 /* Array */:\n return key === \"-\" ? base.push(value) : base.splice(key, 0, value);\n case 2 /* Map */:\n return base.set(key, value);\n case 3 /* Set */:\n return base.add(value);\n default:\n return base[key] = value;\n }\n case REMOVE:\n switch (type) {\n case 1 /* Array */:\n return base.splice(key, 1);\n case 2 /* Map */:\n return base.delete(key);\n case 3 /* Set */:\n return base.delete(patch.value);\n default:\n return delete base[key];\n }\n default:\n die(errorOffset + 1, op);\n }\n });\n return draft;\n }\n function deepClonePatchValue(obj) {\n if (!isDraftable(obj))\n return obj;\n if (Array.isArray(obj))\n return obj.map(deepClonePatchValue);\n if (isMap(obj))\n return new Map(\n Array.from(obj.entries()).map(([k, v]) => [k, deepClonePatchValue(v)])\n );\n if (isSet(obj))\n return new Set(Array.from(obj).map(deepClonePatchValue));\n const cloned = Object.create(getPrototypeOf(obj));\n for (const key in obj)\n cloned[key] = deepClonePatchValue(obj[key]);\n if (has(obj, DRAFTABLE))\n cloned[DRAFTABLE] = obj[DRAFTABLE];\n return cloned;\n }\n function clonePatchValueIfNeeded(obj) {\n if (isDraft(obj)) {\n return deepClonePatchValue(obj);\n } else\n return obj;\n }\n loadPlugin(\"Patches\", {\n applyPatches_,\n generatePatches_,\n generateReplacementPatches_\n });\n}\n\n// src/plugins/mapset.ts\nfunction enableMapSet() {\n class DraftMap extends Map {\n constructor(target, parent) {\n super();\n this[DRAFT_STATE] = {\n type_: 2 /* Map */,\n parent_: parent,\n scope_: parent ? parent.scope_ : getCurrentScope(),\n modified_: false,\n finalized_: false,\n copy_: void 0,\n assigned_: void 0,\n base_: target,\n draft_: this,\n isManual_: false,\n revoked_: false\n };\n }\n get size() {\n return latest(this[DRAFT_STATE]).size;\n }\n has(key) {\n return latest(this[DRAFT_STATE]).has(key);\n }\n set(key, value) {\n const state = this[DRAFT_STATE];\n assertUnrevoked(state);\n if (!latest(state).has(key) || latest(state).get(key) !== value) {\n prepareMapCopy(state);\n markChanged(state);\n state.assigned_.set(key, true);\n state.copy_.set(key, value);\n state.assigned_.set(key, true);\n }\n return this;\n }\n delete(key) {\n if (!this.has(key)) {\n return false;\n }\n const state = this[DRAFT_STATE];\n assertUnrevoked(state);\n prepareMapCopy(state);\n markChanged(state);\n if (state.base_.has(key)) {\n state.assigned_.set(key, false);\n } else {\n state.assigned_.delete(key);\n }\n state.copy_.delete(key);\n return true;\n }\n clear() {\n const state = this[DRAFT_STATE];\n assertUnrevoked(state);\n if (latest(state).size) {\n prepareMapCopy(state);\n markChanged(state);\n state.assigned_ = /* @__PURE__ */ new Map();\n each(state.base_, (key) => {\n state.assigned_.set(key, false);\n });\n state.copy_.clear();\n }\n }\n forEach(cb, thisArg) {\n const state = this[DRAFT_STATE];\n latest(state).forEach((_value, key, _map) => {\n cb.call(thisArg, this.get(key), key, this);\n });\n }\n get(key) {\n const state = this[DRAFT_STATE];\n assertUnrevoked(state);\n const value = latest(state).get(key);\n if (state.finalized_ || !isDraftable(value)) {\n return value;\n }\n if (value !== state.base_.get(key)) {\n return value;\n }\n const draft = createProxy(value, state);\n prepareMapCopy(state);\n state.copy_.set(key, draft);\n return draft;\n }\n keys() {\n return latest(this[DRAFT_STATE]).keys();\n }\n values() {\n const iterator = this.keys();\n return {\n [Symbol.iterator]: () => this.values(),\n next: () => {\n const r = iterator.next();\n if (r.done)\n return r;\n const value = this.get(r.value);\n return {\n done: false,\n value\n };\n }\n };\n }\n entries() {\n const iterator = this.keys();\n return {\n [Symbol.iterator]: () => this.entries(),\n next: () => {\n const r = iterator.next();\n if (r.done)\n return r;\n const value = this.get(r.value);\n return {\n done: false,\n value: [r.value, value]\n };\n }\n };\n }\n [(DRAFT_STATE, Symbol.iterator)]() {\n return this.entries();\n }\n }\n function proxyMap_(target, parent) {\n return new DraftMap(target, parent);\n }\n function prepareMapCopy(state) {\n if (!state.copy_) {\n state.assigned_ = /* @__PURE__ */ new Map();\n state.copy_ = new Map(state.base_);\n }\n }\n class DraftSet extends Set {\n constructor(target, parent) {\n super();\n this[DRAFT_STATE] = {\n type_: 3 /* Set */,\n parent_: parent,\n scope_: parent ? parent.scope_ : getCurrentScope(),\n modified_: false,\n finalized_: false,\n copy_: void 0,\n base_: target,\n draft_: this,\n drafts_: /* @__PURE__ */ new Map(),\n revoked_: false,\n isManual_: false\n };\n }\n get size() {\n return latest(this[DRAFT_STATE]).size;\n }\n has(value) {\n const state = this[DRAFT_STATE];\n assertUnrevoked(state);\n if (!state.copy_) {\n return state.base_.has(value);\n }\n if (state.copy_.has(value))\n return true;\n if (state.drafts_.has(value) && state.copy_.has(state.drafts_.get(value)))\n return true;\n return false;\n }\n add(value) {\n const state = this[DRAFT_STATE];\n assertUnrevoked(state);\n if (!this.has(value)) {\n prepareSetCopy(state);\n markChanged(state);\n state.copy_.add(value);\n }\n return this;\n }\n delete(value) {\n if (!this.has(value)) {\n return false;\n }\n const state = this[DRAFT_STATE];\n assertUnrevoked(state);\n prepareSetCopy(state);\n markChanged(state);\n return state.copy_.delete(value) || (state.drafts_.has(value) ? state.copy_.delete(state.drafts_.get(value)) : (\n /* istanbul ignore next */\n false\n ));\n }\n clear() {\n const state = this[DRAFT_STATE];\n assertUnrevoked(state);\n if (latest(state).size) {\n prepareSetCopy(state);\n markChanged(state);\n state.copy_.clear();\n }\n }\n values() {\n const state = this[DRAFT_STATE];\n assertUnrevoked(state);\n prepareSetCopy(state);\n return state.copy_.values();\n }\n entries() {\n const state = this[DRAFT_STATE];\n assertUnrevoked(state);\n prepareSetCopy(state);\n return state.copy_.entries();\n }\n keys() {\n return this.values();\n }\n [(DRAFT_STATE, Symbol.iterator)]() {\n return this.values();\n }\n forEach(cb, thisArg) {\n const iterator = this.values();\n let result = iterator.next();\n while (!result.done) {\n cb.call(thisArg, result.value, result.value, this);\n result = iterator.next();\n }\n }\n }\n function proxySet_(target, parent) {\n return new DraftSet(target, parent);\n }\n function prepareSetCopy(state) {\n if (!state.copy_) {\n state.copy_ = /* @__PURE__ */ new Set();\n state.base_.forEach((value) => {\n if (isDraftable(value)) {\n const draft = createProxy(value, state);\n state.drafts_.set(value, draft);\n state.copy_.add(draft);\n } else {\n state.copy_.add(value);\n }\n });\n }\n }\n function assertUnrevoked(state) {\n if (state.revoked_)\n die(3, JSON.stringify(latest(state)));\n }\n loadPlugin(\"MapSet\", { proxyMap_, proxySet_ });\n}\n\n// src/immer.ts\nvar immer = new Immer2();\nvar produce = immer.produce;\nvar produceWithPatches = /* @__PURE__ */ immer.produceWithPatches.bind(\n immer\n);\nvar setAutoFreeze = /* @__PURE__ */ immer.setAutoFreeze.bind(immer);\nvar setUseStrictShallowCopy = /* @__PURE__ */ immer.setUseStrictShallowCopy.bind(\n immer\n);\nvar setUseStrictIteration = /* @__PURE__ */ immer.setUseStrictIteration.bind(\n immer\n);\nvar applyPatches = /* @__PURE__ */ immer.applyPatches.bind(immer);\nvar createDraft = /* @__PURE__ */ immer.createDraft.bind(immer);\nvar finishDraft = /* @__PURE__ */ immer.finishDraft.bind(immer);\nfunction castDraft(value) {\n return value;\n}\nfunction castImmutable(value) {\n return value;\n}\nexport {\n Immer2 as Immer,\n applyPatches,\n castDraft,\n castImmutable,\n createDraft,\n current,\n enableMapSet,\n enablePatches,\n finishDraft,\n freeze,\n DRAFTABLE as immerable,\n isDraft,\n isDraftable,\n NOTHING as nothing,\n original,\n produce,\n produceWithPatches,\n setAutoFreeze,\n setUseStrictIteration,\n setUseStrictShallowCopy\n};\n//# sourceMappingURL=immer.mjs.map","// src/store/store.class.ts - Fixed version\n\nimport { produce, enableMapSet, immerable } from 'immer'\nimport { BehaviorSubject, Subject } from 'rxjs'\nimport { createStorageManager } from './storage-manager'\nimport { IStorageManager, StorageType, StoreError } from './types'\n\n// Enable Map and Set support for Immer\nenableMapSet()\n\n/**\n * Base store class to handle common functionality between store types\n * Now with Immer integration for immutability\n */\nexport abstract class BaseStore<T> {\n\t// Mark the class as immerable to allow Immer to create drafts\n\t[immerable] = true\n\n\t// State tracking\n\tprotected _ready: boolean = false\n\tprotected _destroy$ = new Subject<void>()\n\n\t// Observable streams\n\tpublic $: BehaviorSubject<T>\n\tpublic error$ = new BehaviorSubject<StoreError | null>(null)\n\n\t// Default value for the store\n\tpublic readonly defaultValue: T\n\n\t// Storage manager\n\tprotected storage: IStorageManager<T>\n\n\t/**\n\t * Get store ready state\n\t */\n\tpublic get ready(): boolean {\n\t\treturn this._ready\n\t}\n\n\t/**\n\t * Set store ready state\n\t */\n\tpublic set ready(value: boolean) {\n\t\tthis._ready = value\n\t\tthis.updateState(this.$.value)\n\t}\n\n\t/**\n\t * Get the current value\n\t */\n\tpublic get value(): T {\n\t\treturn this.$.getValue()\n\t}\n\n\t/**\n\t * Initialize the base store\n\t * @param storageType Storage type to use\n\t * @param key Unique key for the store\n\t * @param defaultValue Default/initial value\n\t */\n\tconstructor(\n\t\tprotected storageType: StorageType,\n\t\tprotected key: string,\n\t\tdefaultValue: T,\n\t) {\n\t\t// Before using produce, ensure the input is draftable\n\t\t// This ensures Immer won't throw an error on non-draftable values\n\t\tlet safeDefaultValue: T\n\n\t\tif (defaultValue instanceof Map) {\n\t\t\t// For Maps, create a new Map instance\n\t\t\tsafeDefaultValue = new Map(defaultValue) as unknown as T\n\t\t} else if (Array.isArray(defaultValue)) {\n\t\t\t// For arrays, create a new array instance\n\t\t\tsafeDefaultValue = [...defaultValue] as unknown as T\n\t\t} else if (defaultValue && typeof defaultValue === 'object') {\n\t\t\t// For objects, create a shallow copy\n\t\t\tsafeDefaultValue = { ...defaultValue } as T\n\t\t} else {\n\t\t\t// For primitives or other non-draftable types\n\t\t\tsafeDefaultValue = defaultValue\n\t\t}\n\n\t\t// Make an immutable copy of the default value when possible\n\t\ttry {\n\t\t\tthis.defaultValue = this.isImmerDraftable(safeDefaultValue)\n\t\t\t\t? produce(safeDefaultValue, draft => draft)\n\t\t\t\t: safeDefaultValue\n\t\t} catch (error) {\n\t\t\tconsole.warn(`[BaseStore] Unable to produce immutable copy of defaultValue:`, error)\n\t\t\tthis.defaultValue = safeDefaultValue\n\t\t}\n\n\t\t// Initialize BehaviorSubject with the default value\n\t\tthis.$ = new BehaviorSubject<T>(this.defaultValue)\n\t\tthis.storage = createStorageManager<T>(storageType, key)\n\n\t\t// Set ready immediately for memory storage\n\t\tif (storageType === 'memory') {\n\t\t\tthis._ready = true\n\t\t} else {\n\t\t\t// Initialize from storage for persistent stores\n\t\t\tthis.initializeFromStorage()\n\t\t}\n\t}\n\n\t/**\n\t * Check if a value can be safely used with Immer's produce\n\t */\n\tprotected isImmerDraftable(value: any): boolean {\n\t\treturn (\n\t\t\tvalue !== null &&\n\t\t\ttypeof value === 'object' &&\n\t\t\t(Array.isArray(value) ||\n\t\t\t\tvalue instanceof Map ||\n\t\t\t\tvalue instanceof Set ||\n\t\t\t\tObject.getPrototypeOf(value) === Object.prototype ||\n\t\t\t\tvalue[immerable] === true)\n\t\t)\n\t}\n\n\t/**\n\t * Cleanup method for all store types\n\t */\n\tpublic destroy(): void {\n\t\tthis._destroy$.next()\n\t\tthis._destroy$.complete()\n\t\tthis.$.complete()\n\t\tthis.error$.complete()\n\t}\n\n\t/**\n\t * Replace the entire store state immutably\n\t */\n\tpublic replace(newValue: T): void {\n\t\ttry {\n\t\t\t// Use Immer to create an immutable copy if possible\n\t\t\tconst nextState = this.isImmerDraftable(newValue) ? produce(newValue, draft => draft) : newValue\n\n\t\t\tthis.updateState(nextState)\n\t\t} catch (error) {\n\t\t\tconst storeError = new StoreError<unknown>(`Error replacing state in ${this.key}`, error)\n\t\t\tthis.error$.next(storeError)\n\t\t\tconsole.error(storeError)\n\n\t\t\t// Fallback to direct assignment\n\t\t\tthis.updateState(newValue)\n\t\t}\n\t}\n\n\t/**\n\t * Reset to default value - to be implemented by subclasses\n\t */\n\tpublic abstract clear(): void\n\n\t/**\n\t * Update the state with proper error handling and immutability\n\t */\n\tprotected updateState(newValue: T): void {\n\t\ttry {\n\t\t\t// Ensure immutability by creating a fresh copy with Immer when possible\n\t\t\tlet nextState: T\n\n\t\t\tif (this.isImmerDraftable(newValue)) {\n\t\t\t\tnextState = produce(newValue, draft => draft)\n\t\t\t} else {\n\t\t\t\tnextState = newValue\n\t\t\t}\n\n\t\t\tthis.$.next(nextState)\n\n\t\t\t// Persist to storage\n\t\t\tif (this.storageType !== 'memory') {\n\t\t\t\tthis.persistToStorage(nextState).catch(err => {\n\t\t\t\t\tconst error = new StoreError<unknown>(`Error saving to ${this.storageType} storage for ${this.key}`, err)\n\t\t\t\t\tthis.error$.next(error)\n\t\t\t\t\tconsole.error(error)\n\t\t\t\t})\n\t\t\t}\n\t\t} catch (err) {\n\t\t\tconst error = new StoreError<unknown>(`Error updating state in ${this.key}`, err)\n\t\t\tthis.error$.next(error)\n\t\t\tconsole.error(error)\n\n\t\t\t// Fallback to direct update\n\t\t\tthis.$.next(newValue)\n\t\t}\n\t}\n\n\t/**\n\t * Initialize the store from persistent storage\n\t */\n\tprotected async initializeFromStorage(): Promise<void> {\n\t\ttry {\n\t\t\tconst storedValue = await this.storage.load()\n\t\t\tif (storedValue) {\n\t\t\t\t// Process and update state with the stored value\n\t\t\t\tconst processedValue = this.processStoredValue(storedValue)\n\n\t\t\t\ttry {\n\t\t\t\t\t// Only use Immer if the value is draftable\n\t\t\t\t\tconst immutableValue = this.isImmerDraftable(processedValue)\n\t\t\t\t\t\t? produce(processedValue, draft => draft)\n\t\t\t\t\t\t: processedValue\n\n\t\t\t\t\tthis.updateState(immutableValue)\n\t\t\t\t} catch (error) {\n\t\t\t\t\tconsole.warn(`[BaseStore] Unable to create immutable copy, using value directly:`, error)\n\t\t\t\t\tthis.updateState(processedValue)\n\t\t\t\t}\n\t\t\t}\n\t\t\tthis._ready = true\n\t\t} catch (err) {\n\t\t\tconst error = new StoreError<unknown>(`Error loading from ${this.storageType} storage for ${this.key}`, err)\n\t\t\tthis.error$.next(error)\n\t\t\tconsole.error(error)\n\t\t\tthis._ready = true // Mark as ready even if loading fails\n\t\t}\n\t}\n\n\t/**\n\t * Process stored value (can be overridden by subclasses)\n\t */\n\tprotected processStoredValue(storedValue: T): T {\n\t\treturn storedValue\n\t}\n\n\t/**\n\t * Persist state to storage\n\t */\n\tprotected async persistToStorage(state: T): Promise<void> {\n\t\treturn this.storage.save(state)\n\t}\n\n\t/**\n\t * Setup development tools\n\t */\n\tprotected abstract setupDevTools(): void\n}\n","// src/store/context-object.ts - Fixed version\n\nimport { BaseStore } from './store.class'\nimport { IStore, StorageType, StoreError } from './types'\nimport { produce, Draft, castDraft, immerable } from 'immer'\n\n/**\n * Enhanced store object with better TypeScript support and immutability\n * Now extends BaseStore for common functionality and uses Immer\n */\nexport class SchmancyStoreObject<T extends Record<string, any>> extends BaseStore<T> implements IStore<T> {\n\t// Mark as immerable so Immer can create drafts of this class\n\t[immerable] = true\n\n\tpublic static type = 'object'\n\n\t// Static map to hold instances with proper typing\n\tprivate static instances: Map<string, SchmancyStoreObject<any>> = new Map()\n\n\t/**\n\t * Static method to get or create an instance with strong typing\n\t */\n\tpublic static getInstance<T extends Record<string, any>>(\n\t\tstorage: StorageType,\n\t\tkey: string,\n\t\tdefaultValue: T,\n\t): SchmancyStoreObject<T> {\n\t\tconst instanceKey = `${storage}:${key}`\n\t\tif (!this.instances.has(instanceKey)) {\n\t\t\tthis.instances.set(instanceKey, new SchmancyStoreObject<T>(storage, key, defaultValue))\n\t\t}\n\t\treturn this.instances.get(instanceKey) as SchmancyStoreObject<T>\n\t}\n\n\t/**\n\t * Set state with proper typing and immutability using Immer\n\t */\n\tpublic set(value: Partial<T>, merge: boolean = true): void {\n\t\ttry {\n\t\t\tif (!this.isImmerDraftable(this.value)) {\n\t\t\t\t// If current value isn't draftable, handle directly\n\t\t\t\tconst nextState = merge ? { ...this.value, ...value } : (value as T)\n\n\t\t\t\tthis.updateState(nextState)\n\t\t\t\tthis.error$.next(null)\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\t// Use Immer to create an immutable update\n\t\t\tconst nextState = produce(this.value, draft => {\n\t\t\t\tif (merge) {\n\t\t\t\t\t// Handle null/undefined value safely\n\t\t\t\t\tif (value === null || value === undefined) {\n\t\t\t\t\t\treturn\n\t\t\t\t\t}\n\n\t\t\t\t\t// Merge new values into existing state\n\t\t\t\t\t// Use castDraft to properly type the value for the draft context\n\t\t\t\t\ttry {\n\t\t\t\t\t\tObject.assign(draft, castDraft(value) as Draft<Partial<T>>)\n\t\t\t\t\t} catch (err) {\n\t\t\t\t\t\tconsole.warn('[SchmancyStoreObject] Error casting to draft, falling back to direct assign:', err)\n\t\t\t\t\t\t// Fallback to direct property assignment\n\t\t\t\t\t\tObject.keys(value).forEach(key => {\n\t\t\t\t\t\t\t;(draft as any)[key] = (value as any)[key]\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t// For complete replacement, return a completely new object\n\t\t\t\t\t// This is handled specially by Immer\n\t\t\t\t\ttry {\n\t\t\t\t\t\treturn castDraft(value as T) as Draft<T>\n\t\t\t\t\t} catch (err) {\n\t\t\t\t\t\tconsole.warn('[SchmancyStoreObject] Error casting to draft, returning value directly:', err)\n\t\t\t\t\t\treturn value as unknown as Draft<T>\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\n\n\t\t\tthis.updateState(nextState)\n\t\t\tthis.error$.next(null) // Clear any previous errors\n\t\t} catch (err) {\n\t\t\tconst error = new StoreError<unknown>(`Error updating store: ${this.key}`, err, { value, merge })\n\t\t\tthis.error$.next(error)\n\t\t\tconsole.error(error)\n\n\t\t\t// Fallback to direct update\n\t\t\ttry {\n\t\t\t\tconst fallbackState = merge ? { ...this.value, ...value } : (value as T)\n\t\t\t\tthis.updateState(fallbackState)\n\t\t\t} catch (fallbackErr) {\n\t\t\t\tconsole.error('Failed fallback update:', fallbackErr)\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Reset the store to its default value\n\t */\n\tpublic clear(): void {\n\t\ttry {\n\t\t\t// Create a fresh copy of the default value using Immer\n\t\t\tif (this.isImmerDraftable(this.defaultValue)) {\n\t\t\t\tconst freshDefaultValue = produce(this.defaultValue, draft => draft)\n\t\t\t\tthis.set(freshDefaultValue, false)\n\t\t\t} else {\n\t\t\t\t// For non-draftable values, use direct replacement\n\t\t\t\tthis.set(this.defaultValue as any, false)\n\t\t\t}\n\t\t} catch (err) {\n\t\t\tconst error = new StoreError<unknown>(`Error clearing store: ${this.key}`, err)\n\t\t\tthis.error$.next(error)\n\t\t\tconsole.error(error)\n\n\t\t\t// Fallback to direct reset\n\t\t\tthis.updateState(this.defaultValue)\n\t\t}\n\t}\n\n\t/**\n\t * Delete a specific key from the store with type checking and immutability\n\t */\n\tpublic delete<K extends keyof T>(key: K): void {\n\t\ttry {\n\t\t\tif (!this.isImmerDraftable(this.value)) {\n\t\t\t\t// Handle non-draftable objects directly\n\t\t\t\tconst nextState = { ...this.value }\n\t\t\t\tdelete nextState[key]\n\t\t\t\tthis.updateState(nextState as T)\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\t// Use Immer to create an immutable update that removes the key\n\t\t\tconst nextState = produce(this.value, draft => {\n\t\t\t\t// Use type assertion to tell TypeScript this is safe\n\t\t\t\tdelete draft[key as keyof Draft<T>]\n\t\t\t})\n\n\t\t\tthis.updateState(nextState)\n\t\t} catch (err) {\n\t\t\tconst error = new StoreError<unknown>(`Error deleting key ${String(key)} from store: ${this.key}`, err)\n\t\t\tthis.error$.next(error)\n\t\t\tconsole.error(error)\n\n\t\t\t// Fallback to direct modification\n\t\t\ttry {\n\t\t\t\tconst fallbackState = { ...this.value }\n\t\t\t\tdelete fallbackState[key]\n\t\t\t\tthis.updateState(fallbackState as T)\n\t\t\t} catch (fallbackErr) {\n\t\t\t\tconsole.error('Failed fallback delete:', fallbackErr)\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Update a nested property at a specific path\n\t * @param path Dot-separated path to the property (e.g., 'user.profile.name')\n\t * @param value New value to set\n\t */\n\tpublic setPath(path: string, value: any): void {\n\t\ttry {\n\t\t\tif (!path) {\n\t\t\t\tconsole.warn('[SchmancyStoreObject] Empty path provided to setPath')\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tif (!this.isImmerDraftable(this.value)) {\n\t\t\t\t// Handle non-draftable objects with direct modification\n\t\t\t\tconst parts = path.split('.')\n\t\t\t\tconst nextState = { ...this.value }\n\t\t\t\tlet current: any = nextState\n\n\t\t\t\tfor (let i = 0; i < parts.length - 1; i++) {\n\t\t\t\t\tconst part = parts[i]\n\t\t\t\t\tif (current[part] === undefined) {\n\t\t\t\t\t\tcurrent[part] = {}\n\t\t\t\t\t} else if (typeof current[part] !== 'object' || current[part] === null) {\n\t\t\t\t\t\tcurrent[part] = {}\n\t\t\t\t\t}\n\t\t\t\t\tcurrent = current[part]\n\t\t\t\t}\n\n\t\t\t\tcurrent[parts[parts.length - 1]] = value\n\t\t\t\tthis.updateState(nextState)\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\t// Use Immer for immutable deep updates\n\t\t\tconst nextState = produce(this.value, draft => {\n\t\t\t\tconst parts = path.split('.')\n\t\t\t\tlet current: any = draft\n\n\t\t\t\t// Navigate to the parent of the property we want to update\n\t\t\t\tfor (let i = 0; i < parts.length - 1; i++) {\n\t\t\t\t\tconst part = parts[i]\n\n\t\t\t\t\t// Create the path if it doesn't exist\n\t\t\t\t\tif (current[part] === undefined) {\n\t\t\t\t\t\tcurrent[part] = {}\n\t\t\t\t\t} else if (typeof current[part] !== 'object' || current[part] === null) {\n\t\t\t\t\t\t// Convert to object if it's not one already\n\t\t\t\t\t\tcurrent[part] = {}\n\t\t\t\t\t}\n\n\t\t\t\t\tcurrent = current[part]\n\t\t\t\t}\n\n\t\t\t\t// Set the value at the final path segment\n\t\t\t\tconst lastPart = parts[parts.length - 1]\n\t\t\t\ttry {\n\t\t\t\t\tcurrent[lastPart] = castDraft(value)\n\t\t\t\t} catch (err) {\n\t\t\t\t\tconsole.warn('[SchmancyStoreObject] Error casting to draft, setting directly:', err)\n\t\t\t\t\tcurrent[lastPart] = value\n\t\t\t\t}\n\t\t\t})\n\n\t\t\tthis.updateState(nextState)\n\t\t\tthis.error$.next(null)\n\t\t} catch (err) {\n\t\t\tconst error = new StoreError<unknown>(`Error setting path ${path} in ${this.key}`, err)\n\t\t\tthis.error$.next(error)\n\t\t\tconsole.error(error)\n\n\t\t\t// Fallback to direct path setting\n\t\t\ttry {\n\t\t\t\tconst parts = path.split('.')\n\t\t\t\tconst nextState = { ...this.value }\n\t\t\t\tlet current: any = nextState\n\n\t\t\t\tfor (let i = 0; i < parts.length - 1; i++) {\n\t\t\t\t\tconst part = parts[i]\n\t\t\t\t\tif (current[part] === undefined) {\n\t\t\t\t\t\tcurrent[part] = {}\n\t\t\t\t\t} else if (typeof current[part] !== 'object' || current[part] === null) {\n\t\t\t\t\t\tcurrent[part] = {}\n\t\t\t\t\t}\n\t\t\t\t\tcurrent = current[part]\n\t\t\t\t}\n\n\t\t\t\tcurrent[parts[parts.length - 1]] = value\n\t\t\t\tthis.updateState(nextState)\n\t\t\t} catch (fallbackErr) {\n\t\t\t\tconsole.error('Failed fallback setPath:', fallbackErr)\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Process stored value by merging with default value\n\t */\n\tprotected processStoredValue(storedValue: T): T {\n\t\ttry {\n\t\t\t// Use Immer to create a clean merged state if possible\n\t\t\tif (this.isImmerDraftable(this.defaultValue) && this.isImmerDraftable(storedValue)) {\n\t\t\t\treturn produce(this.defaultValue, draft => {\n\t\t\t\t\tObject.assign(draft, castDraft(storedValue) as Draft<T>)\n\t\t\t\t})\n\t\t\t} else {\n\t\t\t\t// Otherwise use a standard merge\n\t\t\t\treturn { ...this.defaultValue, ...storedValue }\n\t\t\t}\n\t\t} catch (err) {\n\t\t\tconsole.warn(`[SchmancyStoreObject] Error processing stored value, returning as-is:`, err)\n\t\t\treturn storedValue\n\t\t}\n\t}\n\n\t/**\n\t * Setup development tools for debugging\n\t */\n\tprotected setupDevTools(): void {\n\t\tif (typeof window !== 'undefined') {\n\t\t\t// Add to global store registry\n\t\t\t;(window as any).__STORES__ = (window as any).__STORES__ || {}\n\t\t\t;(window as any).__STORES__[this.key] = {\n\t\t\t\tgetState: () => this.value,\n\t\t\t\tset: this.set.bind(this),\n\t\t\t\tdelete: this.delete.bind(this),\n\t\t\t\tclear: this.clear.bind(this),\n\t\t\t\tsetPath: this.setPath.bind(this),\n\t\t\t\tsubscribe: (callback: (state: T) => void) => {\n\t\t\t\t\tconst subscription = this.$.subscribe(callback)\n\t\t\t\t\treturn () => subscription.unsubscribe()\n\t\t\t\t},\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Inherit isImmerDraftable from BaseStore, but also check for [immerable]\n\t */\n\tprotected isImmerDraftable(value: any): boolean {\n\t\t// Use the parent implementation and add our own checks\n\t\treturn value !== null && typeof value === 'object' && (super.isImmerDraftable(value) || value[immerable] === true)\n\t}\n}\n","// src/store/types.ts\nimport { Draft } from 'immer'\nimport { BehaviorSubject, Observable, Subject } from 'rxjs'\n\n/**\n * Storage types supported by the store\n */\nexport type StorageType = 'memory' | 'local' | 'session' | 'indexeddb'\n\n/**\n * Base store options\n */\nexport interface StoreOptions<T> {\n\t/** Key used for persistent storage */\n\tkey: string\n\n\t/** Storage type */\n\tstorage: StorageType\n\n\t/** Initial state */\n\tinitialState: T\n\n\t/** Enable dev tools */\n\tdevTools?: boolean\n}\n\n/**\n * Enhanced store error with type information and better context handling\n */\nexport class StoreError<T = unknown> extends Error {\n\t/** Original error that caused this store error */\n\tpublic readonly cause?: T\n\n\t/** Additional contextual information */\n\tpublic readonly context?: Record<string, unknown>\n\n\t/** Timestamp when the error occurred */\n\tpublic readonly timestamp: Date\n\n\tconstructor(message: string, cause?: T, context?: Record<string, unknown>) {\n\t\tsuper(message)\n\t\tthis.name = 'StoreError'\n\t\tthis.cause = cause\n\t\tthis.context = context\n\t\tthis.timestamp = new Date()\n\n\t\t// Capture stack trace if available\n\t\tif (Error.captureStackTrace) {\n\t\t\tError.captureStackTrace(this, StoreError)\n\t\t}\n\t}\n\n\t/**\n\t * Returns a JSON-serializable representation of the error\n\t */\n\ttoJSON(): Record<string, unknown> {\n\t\treturn {\n\t\t\tname: this.name,\n\t\t\tmessage: this.message,\n\t\t\tcause: this.cause,\n\t\t\tcontext: this.context,\n\t\t\ttimestamp: this.timestamp.toISOString(),\n\t\t\tstack: this.stack,\n\t\t}\n\t}\n}\n\n/**\n * Core store interface with improved type definitions\n */\nexport interface IStore<T extends Record<string, any>> {\n\t/** Get the current store value */\n\treadonly value: T\n\n\t/** Observable stream of store values */\n\treadonly $: BehaviorSubject<T>\n\n\t/** The default/initial value of the store */\n\treadonly defaultValue: T\n\n\t/** Whether the store is ready (loaded from storage) */\n\tready: boolean\n\n\t/** Observable stream of store errors */\n\treadonly error$: Subject<StoreError | null>\n\n\t/**\n\t * Update store value with partial data\n\t * @param value Partial data to update\n\t * @param merge Whether to merge with existing data (default: true)\n\t */\n\tset(value: Partial<T>, merge?: boolean): void\n\n\t/**\n\t * Reset store to default value\n\t */\n\tclear(): void\n\n\t/**\n\t * Replace entire store value\n\t * @param newValue New value to set\n\t */\n\treplace(newValue: T): void\n\n\t/**\n\t * Delete a specific key from the store\n\t * @param key Key to delete\n\t */\n\tdelete<K extends keyof T>(key: K): void\n\n\t/**\n\t * Clean up resources\n\t */\n\tdestroy(): void\n}\n\n/**\n * Interface for collection stores with improved typing\n */\nexport interface ICollectionStore<T> {\n\t/** Get the current collection value */\n\treadonly value: Map<string, T>\n\n\t/** Observable stream of collection values */\n\treadonly $: BehaviorSubject<Map<string, T>>\n\n\t/** The default/initial value of the collection */\n\treadonly defaultValue: Map<string, T>\n\n\t/** Whether the store is ready (loaded from storage) */\n\tready: boolean\n\n\t/** Observable stream of store errors */\n\treadonly error$: Observable<StoreError | null>\n\n\t/**\n\t * Set a value in the collection\n\t * @param key Item key\n\t * @param value Item value\n\t */\n\tset<V = T>(key: string, value: V): void\n\n\t/**\n\t * Delete an item from the collection\n\t * @param key Item key to delete\n\t */\n\tdelete(key: string): void\n\n\t/**\n\t * Clear all items from the collection\n\t */\n\tclear(): void\n\n\t/**\n\t * Replace the entire collection\n\t * @param newValue New collection value\n\t */\n\treplace(newValue: Map<string, T>): void\n\n\t/**\n\t * Clean up resources\n\t */\n\tdestroy(): void\n}\n\n/**\n * Interface for a storage manager\n */\nexport interface IStorageManager<T> {\n\t/**\n\t * Load data from storage\n\t * @returns Promise resolving to stored data or null\n\t */\n\tload(): Promise<T | null>\n\n\t/**\n\t * Save data to storage\n\t * @param state Data to save\n\t */\n\tsave(state: T): Promise<void>\n\n\t/**\n\t * Clear data from storage\n\t */\n\tclear(): Promise<void>\n}\n\n/**\n * Factory function type for creating stores\n */\nexport type StoreFactory = <T extends Record<string, any>>(\n\tinitialData: T,\n\tstorage: StorageType,\n\tkey: string,\n) => IStore<T>\n\n/**\n * Factory function type for creating collection stores\n */\nexport type CollectionStoreFactory = <T>(\n\tinitialData: Map<string, T>,\n\tstorage: StorageType,\n\tkey: string,\n) => ICollectionStore<T>\n// Add this to your src/store/types.ts file\n\n/**\n * Interface for array stores with improved typing\n */\nexport interface IArrayStore<T> {\n\t/** Get the current array value */\n\treadonly value: T[]\n\n\t/** Observable stream of array values */\n\treadonly $: BehaviorSubject<T[]>\n\n\t/** The default/initial value of the array */\n\treadonly defaultValue: T[]\n\n\t/** Whether the store is ready (loaded from storage) */\n\tready: boolean\n\n\t/** Observable stream of store errors */\n\treadonly error$: Observable<StoreError | null>\n\n\t/**\n\t * Add item(s) to the end of the array\n\t * @param items Items to add\n\t */\n\tpush(...items: T[]): void\n\n\t/**\n\t * Remove and return the last item from the array\n\t * @returns The removed item or undefined if the array was empty\n\t */\n\tpop(): T | undefined\n\n\t/**\n\t * Add item(s) to the beginning of the array\n\t * @param items Items to add\n\t */\n\tunshift(...items: T[]): void\n\n\t/**\n\t * Remove and return the first item from the array\n\t * @returns The removed item or undefined if the array was empty\n\t */\n\tshift(): T | undefined\n\n\t/**\n\t * Update an item at a specific index\n\t * @param index The index to update\n\t * @param value The new value\n\t */\n\tset(index: number, value: T): void\n\n\t/**\n\t * Get the item at a specific index\n\t * @param index The index to get\n\t * @returns The item or undefined if index is out of bounds\n\t */\n\tget(index: number): T | undefined\n\n\t/**\n\t * Remove items from the array and optionally insert new ones\n\t * @param start The start index\n\t * @param deleteCount The number of items to delete\n\t * @param items Items to insert\n\t * @returns The removed items\n\t */\n\tsplice(start: number, deleteCount?: number, ...items: T[]): T[]\n\n\t/**\n\t * Remove an item by value (first occurrence)\n\t * @param item The item to remove\n\t * @param compareFn Optional function to compare items\n\t * @returns True if the item was found and removed\n\t */\n\tremove(item: T, compareFn?: (a: T, b: T) => boolean): boolean\n\n\t/**\n\t * Replace the entire array\n\t * @param newArray The new array\n\t */\n\treplace(newArray: T[]): void\n\n\t/**\n\t * Filter items in the array\n\t * @param predicate Function to test each item\n\t */\n\tfilter(predicate: (value: T, index: number, array: T[]) => boolean): void\n\n\t/**\n\t * Map over the array and transform items\n\t * @param mapper Function to transform each item\n\t * @returns Array of transformed items\n\t */\n\tmap<U>(mapper: (value: T, index: number, array: T[]) => U): U[]\n\n\t/**\n\t * Sort the array in place\n\t * @param compareFn Optional function to determine sort order\n\t */\n\tsort(compareFn?: (a: T, b: T) => number): void\n\n\t/**\n\t * Update a specific item using a callback function\n\t * @param index The index to update\n\t * @param updater Function that can modify the item\n\t */\n\tupdate(index: number, updater: (item: Draft<T>) => void): void\n\n\t/**\n\t * Clear all items from the array\n\t */\n\tclear(): void\n\n\t/**\n\t * Clean up resources\n\t */\n\tdestroy(): void\n}\n\n/**\n * Factory function type for creating array stores\n */\nexport type ArrayStoreFactory = <T>(initialData: T[], storage: StorageType, key: string) => IArrayStore<T>\n","import { IStorageManager, StorageType, StoreError } from './types'\n\n/**\n * Custom JSON replacer to handle Map and Set serialization\n *\n * LIMITATIONS:\n * - Only supports Maps with string/number/primitive keys\n * - Object keys will be stringified and may collide (e.g., {id: 1} and {id: 2} both become \"[object Object]\")\n * - Circular references are not supported (JSON.stringify limitation)\n *\n * @example\n * ```typescript\n * // ✅ Supported\n * new Map([['key', 'value'], [123, 'number-key']])\n *\n * // ❌ Not supported (object keys will become strings)\n * new Map([[{id: 1}, 'value']])\n * ```\n */\nfunction mapSetReplacer(_key: string, value: unknown): unknown {\n\tif (value instanceof Map) {\n\t\treturn {\n\t\t\t__type: 'Map',\n\t\t\tentries: Array.from(value.entries()),\n\t\t}\n\t}\n\tif (value instanceof Set) {\n\t\treturn {\n\t\t\t__type: 'Set',\n\t\t\tvalues: Array.from(value.values()),\n\t\t}\n\t}\n\treturn value\n}\n\n/**\n * Custom JSON reviver to handle Map and Set deserialization\n *\n * Includes validation to prevent malformed data or __type injection attacks.\n * Invalid structures are ignored and returned as-is.\n */\nfunction mapSetReviver(_key: string, value: unknown): unknown {\n\tif (value && typeof value === 'object' && '__type' in value) {\n\t\tconst typed = value as { __type: string; entries?: unknown[]; values?: unknown[] }\n\n\t\t// Validate and reconstruct Map\n\t\tif (typed.__type === 'Map') {\n\t\t\tif (!Array.isArray(typed.entries)) {\n\t\t\t\tconsole.warn('Invalid Map structure in storage (entries not an array), ignoring')\n\t\t\t\treturn value\n\t\t\t}\n\t\t\t// Validate all entries are [key, value] pairs\n\t\t\tconst isValid = typed.entries.every(e => Array.isArray(e) && e.length === 2)\n\t\t\tif (!isValid) {\n\t\t\t\tconsole.warn('Invalid Map structure in storage (malformed entries), ignoring')\n\t\t\t\treturn value\n\t\t\t}\n\t\t\treturn new Map(typed.entries as Iterable<readonly [unknown, unknown]>)\n\t\t}\n\n\t\t// Validate and reconstruct Set\n\t\tif (typed.__type === 'Set') {\n\t\t\tif (!Array.isArray(typed.values)) {\n\t\t\t\tconsole.warn('Invalid Set structure in storage (values not an array), ignoring')\n\t\t\t\treturn value\n\t\t\t}\n\t\t\treturn new Set(typed.values)\n\t\t}\n\n\t\t// Unknown __type marker, log warning and ignore\n\t\tconsole.warn(`Unknown __type \"${typed.__type}\" in storage, ignoring`)\n\t}\n\treturn value\n}\n\n/**\n * Memory storage manager implementation\n */\nexport class MemoryStorageManager<T> implements IStorageManager<T> {\n\tprivate data: T | null = null\n\n\tasync load(): Promise<T | null> {\n\t\treturn this.data\n\t}\n\n\tasync save(state: T): Promise<void> {\n\t\tthis.data = state\n\t}\n\n\tasync clear(): Promise<void> {\n\t\tthis.data = null\n\t}\n}\n\n/**\n * Local storage manager implementation\n */\nexport class LocalStorageManager<T> implements IStorageManager<T> {\n\tconstructor(private key: string) {}\n\n\tasync load(): Promise<T | null> {\n\t\ttry {\n\t\t\tconst data = localStorage.getItem(this.key)\n\t\t\treturn data ? JSON.parse(data, mapSetReviver) : null\n\t\t} catch (err) {\n\t\t\tconsole.error(`Failed to load from localStorage (${this.key}):`, err)\n\t\t\treturn null\n\t\t}\n\t}\n\n\tasync save(state: T): Promise<void> {\n\t\ttry {\n\t\t\tlocalStorage.setItem(this.key, JSON.stringify(state, mapSetReplacer))\n\t\t} catch (err) {\n\t\t\tconsole.error(`Failed to save to localStorage (${this.key}):`, err)\n\t\t\tthrow new StoreError<unknown>(`Failed to save to localStorage (${this.key})`, err)\n\t\t}\n\t}\n\n\tasync clear(): Promise<void> {\n\t\tlocalStorage.removeItem(this.key)\n\t}\n}\n\n/**\n * Session storage manager implementation\n */\nexport class SessionStorageManager<T> implements IStorageManager<T> {\n\tconstructor(private key: string) {}\n\n\tasync load(): Promise<T | null> {\n\t\ttry {\n\t\t\tconst data = sessionStorage.getItem(this.key)\n\t\t\treturn data ? JSON.parse(data, mapSetReviver) : null\n\t\t} catch (err) {\n\t\t\tconsole.error(`Failed to load from sessionStorage (${this.key}):`, err)\n\t\t\treturn null\n\t\t}\n\t}\n\n\tasync save(state: T): Promise<void> {\n\t\ttry {\n\t\t\tsessionStorage.setItem(this.key, JSON.stringify(state, mapSetReplacer))\n\t\t} catch (err) {\n\t\t\tconsole.error(`Failed to save to sessionStorage (${this.key}):`, err)\n\t\t\tthrow new StoreError<unknown>(`Failed to save to sessionStorage (${this.key})`, err)\n\t\t}\n\t}\n\n\tasync clear(): Promise<void> {\n\t\tsessionStorage.removeItem(this.key)\n\t}\n}\n\n/**\n * IndexedDB storage manager implementation with better error typing\n */\nexport class IndexedDBStorageManager<T> implements IStorageManager<T> {\n\tprivate static DB_NAME = 'StoreDB'\n\tprivate static STORE_NAME = 'states'\n\tprivate static DB_VERSION = 1\n\n\tconstructor(private key: string) {}\n\n\tprivate openDB(): Promise<IDBDatabase> {\n\t\treturn new Promise<IDBDatabase>((resolve, reject) => {\n\t\t\tconst request = indexedDB.open(IndexedDBStorageManager.DB_NAME, IndexedDBStorageManager.DB_VERSION)\n\n\t\t\trequest.onupgradeneeded = () => {\n\t\t\t\tconst db = request.result\n\t\t\t\tif (!db.objectStoreNames.contains(IndexedDBStorageManager.STORE_NAME)) {\n\t\t\t\t\tdb.createObjectStore(IndexedDBStorageManager.STORE_NAME)\n\t\t\t\t}\n\t\t\t}\n\n\t\t\trequest.onsuccess = () => resolve(request.result)\n\t\t\trequest.onerror = () => reject(request.error)\n\t\t})\n\t}\n\n\tasync load(): Promise<T | null> {\n\t\ttry {\n\t\t\tconst db = await this.openDB()\n\t\t\treturn new Promise<T | null>((resolve, reject) => {\n\t\t\t\tconst transaction = db.transaction(IndexedDBStorageManager.STORE_NAME, 'readonly')\n\t\t\t\tconst store = transaction.objectStore(IndexedDBStorageManager.STORE_NAME)\n\t\t\t\tconst request = store.get(this.key)\n\n\t\t\t\trequest.onsuccess = () => {\n\t\t\t\t\tdb.close()\n\t\t\t\t\tresolve(request.result || null)\n\t\t\t\t}\n\n\t\t\t\trequest.onerror = () => {\n\t\t\t\t\tdb.close()\n\t\t\t\t\treject(request.error)\n\t\t\t\t}\n\t\t\t})\n\t\t} catch (err) {\n\t\t\tconsole.error(`Failed to load from IndexedDB (${this.key}):`, err)\n\t\t\treturn null\n\t\t}\n\t}\n\n\tasync save(state: T): Promise<void> {\n\t\ttry {\n\t\t\tconst db = await this.openDB()\n\t\t\treturn new Promise<void>((resolve, reject) => {\n\t\t\t\tconst transaction = db.transaction(IndexedDBStorageManager.STORE_NAME, 'readwrite')\n\t\t\t\tconst store = transaction.objectStore(IndexedDBStorageManager.STORE_NAME)\n\t\t\t\tconst request = store.put(state, this.key)\n\n\t\t\t\trequest.onsuccess = () => {\n\t\t\t\t\tdb.close()\n\t\t\t\t\tresolve()\n\t\t\t\t}\n\n\t\t\t\trequest.onerror = () => {\n\t\t\t\t\tdb.close()\n\t\t\t\t\treject(request.error)\n\t\t\t\t}\n\t\t\t})\n\t\t} catch (err) {\n\t\t\tconsole.error(`Failed to save to IndexedDB (${this.key}):`, err)\n\t\t\tthrow new StoreError<unknown>(`Failed to save to IndexedDB (${this.key})`, err)\n\t\t}\n\t}\n\n\tasync clear(): Promise<void> {\n\t\ttry {\n\t\t\tconst db = await this.openDB()\n\t\t\treturn new Promise<void>((resolve, reject) => {\n\t\t\t\tconst transaction = db.transaction(IndexedDBStorageManager.STORE_NAME, 'readwrite')\n\t\t\t\tconst store = transaction.objectStore(IndexedDBStorageManager.STORE_NAME)\n\t\t\t\tconst request = store.delete(this.key)\n\n\t\t\t\trequest.onsuccess = () => {\n\t\t\t\t\tdb.close()\n\t\t\t\t\tresolve()\n\t\t\t\t}\n\n\t\t\t\trequest.onerror = () => {\n\t\t\t\t\tdb.close()\n\t\t\t\t\treject(request.error)\n\t\t\t\t}\n\t\t\t})\n\t\t} catch (err) {\n\t\t\tconsole.error(`Failed to clear from IndexedDB (${this.key}):`, err)\n\t\t\tthrow new StoreError<unknown>(`Failed to clear from IndexedDB (${this.key})`, err)\n\t\t}\n\t}\n}\n\n/**\n * Factory function to create the appropriate storage manager\n */\nexport function createStorageManager<T>(type: StorageType, key: string): IStorageManager<T> {\n\tswitch (type) {\n\t\tcase 'local':\n\t\t\treturn new LocalStorageManager<T>(key)\n\t\tcase 'session':\n\t\t\treturn new SessionStorageManager<T>(key)\n\t\tcase 'indexeddb':\n\t\t\treturn new IndexedDBStorageManager<T>(key)\n\t\tcase 'memory':\n\t\tdefault:\n\t\t\treturn new MemoryStorageManager<T>()\n\t}\n}\n","// src/store/context-array.ts - Array store implementation with Immer\nimport { Draft, castDraft, produce } from 'immer'\nimport { throttleTime } from 'rxjs'\nimport { BaseStore } from './store.class'\nimport { IArrayStore, StorageType, StoreError } from './types'\n\n/**\n * Enhanced array store with TypeScript support and immutability\n * Extends BaseStore for common functionality\n */\nexport class SchmancyArrayStore<T = any> extends BaseStore<T[]> implements IArrayStore<T> {\n\tpublic static type = 'array'\n\n\t// Static map to hold instances\n\tprivate static instances: Map<string, SchmancyArrayStore<any>> = new Map()\n\n\t/**\n\t * Static method to get or create an instance with proper typing\n\t */\n\tpublic static getInstance<T = any>(storage: StorageType, key: string, defaultValue: T[] = []): SchmancyArrayStore<T> {\n\t\tconst instanceKey = `${storage}:${key}`\n\t\tif (!this.instances.has(instanceKey)) {\n\t\t\tthis.instances.set(instanceKey, new SchmancyArrayStore<T>(storage, key, defaultValue))\n\t\t}\n\t\treturn this.instances.get(instanceKey) as SchmancyArrayStore<T>\n\t}\n\n\t/**\n\t * Constructor extension to set up persistence\n\t */\n\tconstructor(storageType: StorageType, key: string, defaultValue: T[] = []) {\n\t\tsuper(storageType, key, defaultValue)\n\n\t\t// Set up persistence throttling for better performance\n\t\tif (storageType !== 'memory') {\n\t\t\tthis.setupPersistence()\n\t\t}\n\t}\n\n\t/**\n\t * Set up persistence to storage with throttling\n\t */\n\tprivate setupPersistence(): void {\n\t\tthis.$.pipe(throttleTime(100, undefined, { leading: true, trailing: true })).subscribe(currentValue => {\n\t\t\tthis.storage.save(currentValue).catch(err => {\n\t\t\t\tconst error = new StoreError<unknown>(`Error saving to ${this.storageType} storage for ${this.key}`, err)\n\t\t\t\tthis.error$.next(error)\n\t\t\t\tconsole.error(error)\n\t\t\t})\n\t\t})\n\t}\n\n\t/**\n\t * Add an item to the end of the array\n\t */\n\tpublic push(...items: T[]): void {\n\t\ttry {\n\t\t\t// Use Immer to create a new immutable array\n\t\t\tconst nextState = produce(this.value, draft => {\n\t\t\t\tdraft.push(...items.map(item => castDraft(item) as Draft<T>))\n\t\t\t})\n\n\t\t\tthis.updateState(nextState)\n\t\t\tthis.error$.next(null) // Clear any previous errors\n\t\t} catch (err) {\n\t\t\tconst error = new StoreError<unknown>(`Error pushing items in ${this.key}`, err)\n\t\t\tthis.error$.next(error)\n\t\t\tconsole.error(error)\n\t\t}\n\t}\n\n\t/**\n\t * Remove and return the last item from the array\n\t */\n\tpublic pop(): T | undefined {\n\t\ttry {\n\t\t\t// Get the item before modifying the array\n\t\t\tconst originalItem = this.value.length > 0 ? this.value[this.value.length - 1] : undefined\n\n\t\t\t// Use Immer to create a new immutable array\n\t\t\tconst nextState = produce(this.value, draft => {\n\t\t\t\tdraft.pop()\n\t\t\t})\n\n\t\t\tthis.updateState(nextState)\n\t\t\tthis.error$.next(null) // Clear any previous errors\n\t\t\treturn originalItem\n\t\t} catch (err) {\n\t\t\tconst error = new StoreError<unknown>(`Error popping item from ${this.key}`, err)\n\t\t\tthis.error$.next(error)\n\t\t\tconsole.error(error)\n\t\t\treturn undefined\n\t\t}\n\t}\n\t/**\n\t * Add item(s) to the beginning of the array\n\t */\n\tpublic unshift(...items: T[]): void {\n\t\ttry {\n\t\t\t// Use Immer to create a new immutable array\n\t\t\tconst nextState = produce(this.value, draft => {\n\t\t\t\tdraft.unshift(...items.map(item => castDraft(item) as Draft<T>))\n\t\t\t})\n\n\t\t\tthis.updateState(nextState)\n\t\t\tthis.error$.next(null)\n\t\t} catch (err) {\n\t\t\tconst error = new StoreError<unknown>(`Error unshifting items in ${this.key}`, err)\n\t\t\tthis.error$.next(error)\n\t\t\tconsole.error(error)\n\t\t}\n\t}\n\n\t/**\n\t * Remove and return the first item from the array\n\t */\n\tpublic shift(): T | undefined {\n\t\ttry {\n\t\t\t// Get the item before modifying the array\n\t\t\tconst originalItem = this.value.length > 0 ? this.value[0] : undefined\n\n\t\t\t// Use Immer to create a new immutable array\n\t\t\tconst nextState = produce(this.value, draft => {\n\t\t\t\tdraft.shift()\n\t\t\t})\n\n\t\t\tthis.updateState(nextState)\n\t\t\tthis.error$.next(null)\n\t\t\treturn originalItem\n\t\t} catch (err) {\n\t\t\tconst error = new StoreError<unknown>(`Error shifting item from ${this.key}`, err)\n\t\t\tthis.error$.next(error)\n\t\t\tconsole.error(error)\n\t\t\treturn undefined\n\t\t}\n\t}\n\n\t/**\n\t * Update an item at a specific index\n\t */\n\tpublic set(index: number, value: T): void {\n\t\ttry {\n\t\t\t// Use Immer to create a new immutable array\n\t\t\tconst nextState = produce(this.value, draft => {\n\t\t\t\tif (index >= 0 && index < draft.length) {\n\t\t\t\t\tdraft[index] = castDraft(value) as Draft<T>\n\t\t\t\t} else {\n\t\t\t\t\tthrow new Error(`Index ${index} out of bounds (length: ${draft.length})`)\n\t\t\t\t}\n\t\t\t})\n\n\t\t\tthis.updateState(nextState)\n\t\t\tthis.error$.next(null)\n\t\t} catch (err) {\n\t\t\tconst error = new StoreError<unknown>(`Error setting item at index ${index} in ${this.key}`, err)\n\t\t\tthis.error$.next(error)\n\t\t\tconsole.error(error)\n\t\t}\n\t}\n\n\t/**\n\t * Get item at a specific index\n\t */\n\tpublic get(index: number): T | undefined {\n\t\treturn this.value[index]\n\t}\n\n\t/**\n\t * Remove items from the array\n\t */\n\tpublic splice(start: number, deleteCount?: number, ...items: T[]): T[] {\n\t\ttry {\n\t\t\t// Get a copy of the current array\n\t\t\tconst originalArray = [...this.value]\n\n\t\t\t// Perform splice on the copy to get the removed items\n\t\t\tconst removed = originalArray.splice(start, deleteCount ?? 0, ...items)\n\n\t\t\t// Now use Immer to create the new state with the same changes\n\t\t\tconst nextState = produce(this.value, draft => {\n\t\t\t\tdraft.splice(start, deleteCount ?? 0, ...items.map(item => castDraft(item) as Draft<T>))\n\t\t\t})\n\n\t\t\tthis.updateState(nextState)\n\t\t\tthis.error$.next(null)\n\t\t\treturn removed\n\t\t} catch (err) {\n\t\t\tconst error = new StoreError<unknown>(`Error splicing items in ${this.key}`, err)\n\t\t\tthis.error$.next(error)\n\t\t\tconsole.error(error)\n\t\t\treturn []\n\t\t}\n\t}\n\n\t/**\n\t * Remove an item by value (first occurrence)\n\t */\n\tpublic remove(item: T, compareFn?: (a: T, b: T) => boolean): boolean {\n\t\ttry {\n\t\t\tconst equals = compareFn || ((a, b) => a === b)\n\n\t\t\t// Find the index in the original array\n\t\t\tconst index = this.value.findIndex(currentItem => equals(currentItem, item))\n\n\t\t\t// If found, remove using Immer\n\t\t\tif (index !== -1) {\n\t\t\t\tconst nextState = produce(this.value, draft => {\n\t\t\t\t\tdraft.splice(index, 1)\n\t\t\t\t})\n\n\t\t\t\tthis.updateState(nextState)\n\t\t\t\tthis.error$.next(null)\n\t\t\t\treturn true\n\t\t\t}\n\n\t\t\t// Item not found\n\t\t\tthis.error$.next(null)\n\t\t\treturn false\n\t\t} catch (err) {\n\t\t\tconst error = new StoreError<unknown>(`Error removing item in ${this.key}`, err)\n\t\t\tthis.error$.next(error)\n\t\t\tconsole.error(error)\n\t\t\treturn false\n\t\t}\n\t}\n\n\t/**\n\t * Replace entire array\n\t */\n\tpublic replace(newArray: T[]): void {\n\t\ttry {\n\t\t\t// Create a fresh immutable copy with Immer\n\t\t\tconst nextState = produce(newArray, draft => draft)\n\t\t\tthis.updateState(nextState)\n\t\t\tthis.error$.next(null)\n\t\t} catch (err) {\n\t\t\tconst error = new StoreError<unknown>(`Error replacing array in ${this.key}`, err)\n\t\t\tthis.error$.next(error)\n\t\t\tconsole.error(error)\n\t\t}\n\t}\n\n\t/**\n\t * Filter items in the array\n\t */\n\tpublic filter(predicate: (value: T, index: number, array: T[]) => boolean): void {\n\t\ttry {\n\t\t\t// Filter the original array first\n\t\t\tconst filteredArray = this.value.filter(predicate)\n\n\t\t\t// Then use Immer to create a new immutable array\n\t\t\tconst nextState = produce(this.value, draft => {\n\t\t\t\t// Clear the draft array and fill it with the filtered items\n\t\t\t\tdraft.length = 0\n\t\t\t\tdraft.push(...filteredArray.map(item => castDraft(item) as Draft<T>))\n\t\t\t})\n\n\t\t\tthis.updateState(nextState)\n\t\t\tthis.error$.next(null)\n\t\t} catch (err) {\n\t\t\tconst error = new StoreError<unknown>(`Error filtering array in ${this.key}`, err)\n\t\t\tthis.error$.next(error)\n\t\t\tconsole.error(error)\n\t\t}\n\t}\n\n\t/**\n\t * Map over the array and transform items\n\t */\n\tpublic map<U>(mapper: (value: T, index: number, array: T[]) => U): U[] {\n\t\treturn this.value.map(mapper)\n\t}\n\n\t/**\n\t * Sort the array in place\n\t */\n\tpublic sort(compareFn?: (a: T, b: T) => number): void {\n\t\ttry {\n\t\t\t// Create a copy of the current array and apply the sort operation\n\t\t\tconst sortedArray = [...this.value].sort(compareFn)\n\n\t\t\t// Use Immer to create a new immutable array that matches the sorted array\n\t\t\tconst nextState = produce(this.value, draft => {\n\t\t\t\t// Clear the array and refill it with the sorted items\n\t\t\t\tdraft.length = 0\n\t\t\t\tdraft.push(...sortedArray.map(item => castDraft(item) as Draft<T>))\n\t\t\t})\n\n\t\t\tthis.updateState(nextState)\n\t\t\tthis.error$.next(null)\n\t\t} catch (err) {\n\t\t\tconst error = new StoreError<unknown>(`Error sorting array in ${this.key}`, err)\n\t\t\tthis.error$.next(error)\n\t\t\tconsole.error(error)\n\t\t}\n\t}\n\n\t/**\n\t * Update a specific item using a callback function\n\t */\n\tpublic update(index: number, updater: (item: Draft<T>) => void): void {\n\t\ttry {\n\t\t\t// Use Immer to create a new immutable array\n\t\t\tconst nextState = produce(this.value, draft => {\n\t\t\t\tif (index >= 0 && index < draft.length) {\n\t\t\t\t\tupdater(draft[index])\n\t\t\t\t} else {\n\t\t\t\t\tthrow new Error(`Index ${index} out of bounds (length: ${draft.length})`)\n\t\t\t\t}\n\t\t\t})\n\n\t\t\tthis.updateState(nextState)\n\t\t\tthis.error$.next(null)\n\t\t} catch (err) {\n\t\t\tconst error = new StoreError<unknown>(`Error updating item at index ${index} in ${this.key}`, err)\n\t\t\tthis.error$.next(error)\n\t\t\tconsole.error(error)\n\t\t}\n\t}\n\n\t/**\n\t * Clear the array\n\t */\n\tpublic clear(): void {\n\t\tthis.updateState([])\n\t}\n\n\t/**\n\t * Setup development tools for debugging\n\t */\n\tprotected setupDevTools(): void {\n\t\tif (typeof window !== 'undefined') {\n\t\t\t// Add to global store registry\n\t\t\t;(window as any).__STORES__ = (window as any).__STORES__ || {}\n\t\t\t;(window as any).__STORES__[this.key] = {\n\t\t\t\tgetState: () => this.value,\n\t\t\t\tpush: this.push.bind(this),\n\t\t\t\tpop: this.pop.bind(this),\n\t\t\t\tunshift: this.unshift.bind(this),\n\t\t\t\tshift: this.shift.bind(this),\n\t\t\t\tset: this.set.bind(this),\n\t\t\t\tget: this.get.bind(this),\n\t\t\t\tsplice: this.splice.bind(this),\n\t\t\t\tremove: this.remove.bind(this),\n\t\t\t\treplace: this.replace.bind(this),\n\t\t\t\tfilter: this.filter.bind(this),\n\t\t\t\tmap: this.map.bind(this),\n\t\t\t\tsort: this.sort.bind(this),\n\t\t\t\tupdate: this.update.bind(this),\n\t\t\t\tclear: this.clear.bind(this),\n\t\t\t\tsubscribe: (callback: (state: T[]) => void) => {\n\t\t\t\t\tconst subscription = this.$.subscribe(callback)\n\t\t\t\t\treturn () => subscription.unsubscribe()\n\t\t\t\t},\n\t\t\t}\n\t\t}\n\t}\n}\n","// src/store/context-collection.ts - Updated with Immer for immutability\nimport { throttleTime } from 'rxjs'\nimport { BaseStore } from './store.class'\nimport { ICollectionStore, StorageType, StoreError } from './types'\nimport { produce, Draft, castDraft } from 'immer'\n\n/**\n * Enhanced collection store with better TypeScript support and immutability\n * Now extends BaseStore for common functionality\n */\nexport default class SchmancyCollectionStore<V = any> extends BaseStore<Map<string, V>> implements ICollectionStore<V> {\n\tpublic static type = 'collection'\n\n\t// Static map to hold instances\n\tprivate static instances: Map<string, SchmancyCollectionStore<any>> = new Map()\n\n\t/**\n\t * Static method to get or create an instance with proper typing\n\t */\n\tpublic static getInstance<V = any>(\n\t\tstorage: StorageType,\n\t\tkey: string,\n\t\tdefaultValue: Map<string, V>,\n\t): SchmancyCollectionStore<V> {\n\t\tconst instanceKey = `${storage}:${key}`\n\t\tif (!this.instances.has(instanceKey)) {\n\t\t\tthis.instances.set(instanceKey, new SchmancyCollectionStore<V>(storage, key, defaultValue))\n\t\t}\n\t\treturn this.instances.get(instanceKey) as SchmancyCollectionStore<V>\n\t}\n\n\t/**\n\t * Set values in the collection with proper typing and immutability.\n\t * Supports multiple input types to prevent common developer mistakes.\n\t * \n\t * @example\n\t * // Single key-value pair\n\t * store.set('key1', value1)\n\t * \n\t * @example\n\t * // Merge from a Map\n\t * const dataMap = new Map([['key1', value1], ['key2', value2]])\n\t * store.set(dataMap)\n\t * \n\t * @example\n\t * // Merge from an object\n\t * store.set({ key1: value1, key2: value2 })\n\t */\n\tpublic set<T = V>(keyOrData: string | Map<string, T> | Record<string, T>, value?: T): void {\n\t\ttry {\n\t\t\tconst nextState = produce(this.value, draft => {\n\t\t\t\t// Handle different input types\n\t\t\t\tif (typeof keyOrData === 'string') {\n\t\t\t\t\t// Traditional key-value pair\n\t\t\t\t\tif (value === undefined) {\n\t\t\t\t\t\tthrow new Error('Value is required when setting a single key')\n\t\t\t\t\t}\n\t\t\t\t\tdraft.set(keyOrData, castDraft(value) as unknown as Draft<V>)\n\t\t\t\t} else if (keyOrData instanceof Map) {\n\t\t\t\t\t// Merge all entries from the Map\n\t\t\t\t\tArray.from(keyOrData.entries()).forEach(([key, val]) => {\n\t\t\t\t\t\tdraft.set(key, castDraft(val) as unknown as Draft<V>)\n\t\t\t\t\t})\n\t\t\t\t} else if (typeof keyOrData === 'object' && keyOrData !== null) {\n\t\t\t\t\t// Merge all properties from the object\n\t\t\t\t\tObject.entries(keyOrData).forEach(([key, val]) => {\n\t\t\t\t\t\tdraft.set(key, castDraft(val) as unknown as Draft<V>)\n\t\t\t\t\t})\n\t\t\t\t} else {\n\t\t\t\t\tthrow new Error('Invalid input: expected string key with value, Map, or object')\n\t\t\t\t}\n\t\t\t})\n\n\t\t\t// Update the state with the new immutable Map\n\t\t\tthis.updateState(nextState)\n\t\t\tthis.error$.next(null) // Clear any previous errors\n\t\t} catch (err) {\n\t\t\tconst error = new StoreError<unknown>(`Error setting values in ${this.key}`, err)\n\t\t\tthis.error$.next(error)\n\t\t\tconsole.error(error)\n\t\t}\n\t}\n\n\t/**\n\t * Merge a Map into the collection. This is a helper method that provides\n\t * explicit semantics for merging operations.\n\t * \n\t * @param map The Map to merge into the collection\n\t * @example\n\t * const dataMap = new Map([['key1', value1], ['key2', value2]])\n\t * store.merge(dataMap)\n\t */\n\tpublic merge<T = V>(map: Map<string, T>): void {\n\t\tthis.set(map)\n\t}\n\n\t/**\n\t * Delete a value from the collection immutably\n\t */\n\tpublic delete(key: string): void {\n\t\ttry {\n\t\t\t// Use Immer to create a new immutable Map with the key deleted\n\t\t\tconst nextState = produce(this.value, draft => {\n\t\t\t\tdraft.delete(key)\n\t\t\t})\n\n\t\t\tthis.updateState(nextState)\n\t\t\tthis.error$.next(null) // Clear any previous errors\n\t\t} catch (err) {\n\t\t\tconst error = new StoreError<unknown>(`Error deleting key ${key} from ${this.key}`, err)\n\t\t\tthis.error$.next(error)\n\t\t\tconsole.error(error)\n\t\t}\n\t}\n\n\t/**\n\t * Clear the collection immutably\n\t */\n\tpublic clear(): void {\n\t\t// Create a fresh empty Map\n\t\tthis.updateState(new Map<string, V>())\n\t}\n\n\t/**\n\t * Batch update multiple items in the collection\n\t * @param updates Object with keys and values to update\n\t */\n\tpublic batchUpdate(updates: Record<string, V>): void {\n\t\ttry {\n\t\t\t// Use Immer to apply all updates in a single immutable operation\n\t\t\tconst nextState = produce(this.value, draft => {\n\t\t\t\tObject.entries(updates).forEach(([key, value]) => {\n\t\t\t\t\tdraft.set(key, castDraft(value) as unknown as Draft<V>)\n\t\t\t\t})\n\t\t\t})\n\n\t\t\tthis.updateState(nextState)\n\t\t\tthis.error$.next(null)\n\t\t} catch (err) {\n\t\t\tconst error = new StoreError<unknown>(`Error batch updating in ${this.key}`, err)\n\t\t\tthis.error$.next(error)\n\t\t\tconsole.error(error)\n\t\t}\n\t}\n\n\t/**\n\t * Update an existing item in the collection using an updater function\n\t * @param key Key of the item to update\n\t * @param updater Function that receives the current value and returns the new value\n\t */\n\tpublic update(key: string, updater: (currentValue: Draft<V>) => void): void {\n\t\ttry {\n\t\t\t// Use Immer to update the specific item\n\t\t\tconst nextState = produce(this.value, draft => {\n\t\t\t\tconst currentValue = draft.get(key)\n\t\t\t\tif (currentValue !== undefined) {\n\t\t\t\t\tupdater(currentValue)\n\t\t\t\t\t// No need to set the value back since it's updated in place\n\t\t\t\t}\n\t\t\t})\n\n\t\t\tthis.updateState(nextState)\n\t\t\tthis.error$.next(null)\n\t\t} catch (err) {\n\t\t\tconst error = new StoreError<unknown>(`Error updating item ${key} in ${this.key}`, err)\n\t\t\tthis.error$.next(error)\n\t\t\tconsole.error(error)\n\t\t}\n\t}\n\n\t/**\n\t * Constructor extension to set up persistence\n\t */\n\tconstructor(storageType: StorageType, key: string, defaultValue: Map<string, V>) {\n\t\tsuper(storageType, key, defaultValue)\n\n\t\t// Set up persistence throttling for better performance\n\t\tif (storageType !== 'memory') {\n\t\t\tthis.setupPersistence()\n\t\t}\n\t}\n\n\t/**\n\t * Set up persistence to storage with throttling\n\t */\n\tprivate setupPersistence(): void {\n\t\tthis.$.pipe(throttleTime(100, undefined, { leading: true, trailing: true })).subscribe(currentValue => {\n\t\t\tthis.storage.save(currentValue).catch(err => {\n\t\t\t\tconst error = new StoreError<unknown>(`Error saving to ${this.storageType} storage for ${this.key}`, err)\n\t\t\t\tthis.error$.next(error)\n\t\t\t\tconsole.error(error)\n\t\t\t})\n\t\t})\n\t}\n\n\t/**\n\t * Setup development tools for debugging\n\t */\n\tprotected setupDevTools(): void {\n\t\tif (typeof window !== 'undefined') {\n\t\t\t// Add to global store registry\n\t\t\t;(window as any).__STORES__ = (window as any).__STORES__ || {}\n\t\t\t;(window as any).__STORES__[this.key] = {\n\t\t\t\tgetState: () => this.value,\n\t\t\t\tset: this.set.bind(this),\n\t\t\t\tmerge: this.merge.bind(this),\n\t\t\t\tdelete: this.delete.bind(this),\n\t\t\t\tclear: this.clear.bind(this),\n\t\t\t\tbatchUpdate: this.batchUpdate.bind(this),\n\t\t\t\tupdate: this.update.bind(this),\n\t\t\t\tsubscribe: (callback: (state: Map<string, V>) => void) => {\n\t\t\t\t\tconst subscription = this.$.subscribe(callback)\n\t\t\t\t\treturn () => subscription.unsubscribe()\n\t\t\t\t},\n\t\t\t}\n\t\t}\n\t}\n}\n","// src/store/context-create.ts - Fixed version\n\nimport { SchmancyArrayStore } from './context-array'\nimport SchmancyCollectionStore from './context-collection'\nimport { SchmancyStoreObject } from './context-object'\nimport { IArrayStore, ICollectionStore, IStore, StorageType } from './types'\n\n/**\n * Type guard to check if an object is empty\n */\nfunction isEmptyObject(obj: unknown): boolean {\n\tif (typeof obj !== 'object' || obj === null) {\n\t\treturn false\n\t}\n\treturn Object.keys(obj).length === 0\n}\n\n/**\n * Type guard for Map objects\n */\nfunction isMap<K, V>(value: unknown): value is Map<K, V> {\n\treturn value instanceof Map\n}\n\n/**\n * Type guard for Array objects\n */\nfunction isArray<T>(value: unknown): value is Array<T> {\n\treturn Array.isArray(value)\n}\n\n/**\n * Type guard for plain objects (not arrays, maps, null, etc.)\n */\nfunction isPlainObject(value: unknown): boolean {\n\treturn (\n\t\tvalue !== null &&\n\t\ttypeof value === 'object' &&\n\t\t!Array.isArray(value) &&\n\t\t!(value instanceof Map) &&\n\t\t!(value instanceof Set) &&\n\t\t!(value instanceof Date) &&\n\t\t!(value instanceof RegExp) &&\n\t\tObject.getPrototypeOf(value) === Object.prototype\n\t)\n}\n\n/**\n * Creates a regular object store with better typing and error handling\n */\nfunction createObjectStore<T extends Record<string, any>>(\n\tinitialData: T,\n\tstorage: StorageType,\n\tkey: string,\n): IStore<T> & SchmancyStoreObject<T> {\n\ttry {\n\t\t// Validate storage type\n\t\tif (storage === 'indexeddb') {\n\t\t\tconsole.warn(`IndexedDB storage is not optimal for plain objects. Using 'local' instead for key: ${key}`)\n\t\t\tstorage = 'local'\n\t\t}\n\n\t\t// Ensure initialData is a plain object\n\t\tif (!isPlainObject(initialData)) {\n\t\t\tconsole.warn(`Initial data is not a plain object. Converting to object for key: ${key}`)\n\t\t\tinitialData = { ...initialData } as T\n\t\t}\n\n\t\t// Create the store instance\n\t\tconst store = SchmancyStoreObject.getInstance<T>(storage, key, initialData)\n\n\t\t// Initialize with provided data if store is empty\n\t\tif (isEmptyObject(store.value)) {\n\t\t\tstore.set({ ...initialData }) // Use spread to create a copy\n\t\t}\n\n\t\treturn store\n\t} catch (err) {\n\t\tconsole.error(`Failed to create object store for key: ${key}`, err)\n\t\t// Fall back to a basic implementation that won't throw\n\t\tconst fallbackStore = SchmancyStoreObject.getInstance<T>(\n\t\t\t'memory', // Fallback to memory storage\n\t\t\t`${key}-fallback`,\n\t\t\tinitialData,\n\t\t)\n\t\tconsole.warn(`Using fallback memory store for key: ${key}`)\n\t\treturn fallbackStore\n\t}\n}\n\n/**\n * Creates a collection store with better typing and error handling\n */\nfunction createCollectionStore<V>(\n\tinitialData: Map<string, V>,\n\tstorage: StorageType,\n\tkey: string,\n): ICollectionStore<V> & SchmancyCollectionStore<V> {\n\ttry {\n\t\t// Create the store instance\n\t\tconst store = SchmancyCollectionStore.getInstance(storage, key, initialData)\n\n\t\t// Initialize with provided data if store is empty\n\t\tif (!store.value.size) {\n\t\t\t// Create a new Map instance to avoid modifying the input\n\t\t\tstore.replace(new Map(initialData))\n\t\t}\n\n\t\treturn store\n\t} catch (err) {\n\t\tconsole.error(`Failed to create collection store for key: ${key}`, err)\n\t\t// Fall back to a basic implementation that won't throw\n\t\tconst fallbackStore = SchmancyCollectionStore.getInstance<V>(\n\t\t\t'memory', // Fallback to memory storage\n\t\t\t`${key}-fallback`,\n\t\t\tnew Map(initialData),\n\t\t)\n\t\tconsole.warn(`Using fallback memory store for key: ${key}`)\n\t\treturn fallbackStore\n\t}\n}\n\n/**\n * Creates an array store with better typing and error handling\n */\nfunction createArrayStore<T>(\n\tinitialData: T[],\n\tstorage: StorageType,\n\tkey: string,\n): IArrayStore<T> & SchmancyArrayStore<T> {\n\ttry {\n\t\t// Create the store instance\n\t\tconst store = SchmancyArrayStore.getInstance(storage, key, initialData)\n\n\t\t// Initialize with provided data if store is empty\n\t\tif (!store.value.length) {\n\t\t\t// Create a new array instance to avoid modifying the input\n\t\t\tstore.replace([...initialData])\n\t\t}\n\n\t\treturn store\n\t} catch (err) {\n\t\tconsole.error(`Failed to create array store for key: ${key}`, err)\n\t\t// Fall back to a basic implementation that won't throw\n\t\tconst fallbackStore = SchmancyArrayStore.getInstance<T>(\n\t\t\t'memory', // Fallback to memory storage\n\t\t\t`${key}-fallback`,\n\t\t\t[...initialData],\n\t\t)\n\t\tconsole.warn(`Using fallback memory store for key: ${key}`)\n\t\treturn fallbackStore\n\t}\n}\n\n// Function overloads for better type inference\n/**\n * Creates a context for managing object state\n * @param initialData The initial object data\n * @param storage Storage type to use\n * @param key Unique key for the store\n * @returns A store instance for the object\n */\nexport function createContext<T extends Record<string, any>>(\n\tinitialData: T,\n\tstorage: StorageType,\n\tkey: string,\n): IStore<T> & SchmancyStoreObject<T>\n\n/**\n * Creates a context for managing collection state\n * @param initialData The initial Map collection\n * @param storage Storage type to use\n * @param key Unique key for the store\n * @returns A collection store instance\n */\nexport function createContext<V>(\n\tinitialData: Map<string, V>,\n\tstorage: StorageType,\n\tkey: string,\n): ICollectionStore<V> & SchmancyCollectionStore<V>\n\n/**\n * Creates a context for managing array state\n * @param initialData The initial array\n * @param storage Storage type to use\n * @param key Unique key for the store\n * @returns An array store instance\n */\nexport function createContext<T>(\n\tinitialData: T[],\n\tstorage: StorageType,\n\tkey: string,\n): IArrayStore<T> & SchmancyArrayStore<T>\n\n/**\n * Implementation of the createContext function with complete type checking\n * and robust error handling\n */\nexport function createContext<T extends Record<string, any> | Map<string, any> | any[]>(\n\tinitialData: T,\n\tstorage: StorageType,\n\tkey: string,\n):\n\t| (IStore<T> & SchmancyStoreObject<T>)\n\t| (ICollectionStore<any> & SchmancyCollectionStore<any>)\n\t| (IArrayStore<any> & SchmancyArrayStore<any>) {\n\ttry {\n\t\t// Validate input\n\t\tif (initialData === null || initialData === undefined) {\n\t\t\tconsole.error('Initial data cannot be null or undefined')\n\t\t\t// Provide a sensible default based on type expected\n\t\t\tif (key.includes('collection') || key.includes('map')) {\n\t\t\t\tinitialData = new Map() as unknown as T\n\t\t\t} else if (key.includes('array') || key.includes('list')) {\n\t\t\t\tinitialData = [] as unknown as T\n\t\t\t} else {\n\t\t\t\tinitialData = {} as T\n\t\t\t}\n\t\t}\n\n\t\t// Determine store type based on input data with improved type checking\n\t\tif (isMap<string, any>(initialData)) {\n\t\t\treturn createCollectionStore<any>(initialData, storage, key)\n\t\t} else if (isArray<any>(initialData)) {\n\t\t\treturn createArrayStore<any>(initialData, storage, key)\n\t\t} else if (typeof initialData === 'object') {\n\t\t\treturn createObjectStore<any>(initialData as Record<string, any>, storage, key)\n\t\t} else {\n\t\t\t// Handle non-object data by wrapping it\n\t\t\tconsole.warn(`Initial data must be an object, array, or Map. Got ${typeof initialData}. Creating object wrapper.`)\n\t\t\treturn createObjectStore<any>({ value: initialData } as Record<string, any>, storage, key)\n\t\t}\n\t} catch (error) {\n\t\t// Last-resort error handling\n\t\tconsole.error(`Fatal error creating context for ${key}:`, error)\n\n\t\t// Create an emergency fallback store that won't throw\n\t\treturn createObjectStore<any>(\n\t\t\ttypeof initialData === 'object' && initialData !== null ? { ...initialData } : { value: initialData },\n\t\t\t'memory',\n\t\t\t`emergency-fallback-${key}`,\n\t\t)\n\t}\n}\n\n/**\n * Creates an array context with simplified API and type inference\n * @param initialData The initial array data\n * @param key Unique key for the store\n * @param storage Storage type to use (defaults to 'local')\n * @returns An array store instance\n */\nexport function createArrayContext<T>(\n\tinitialData: T[] = [],\n\tkey: string,\n\tstorage: StorageType = 'local',\n): IArrayStore<T> & SchmancyArrayStore<T> {\n\ttry {\n\t\treturn createContext<T>(initialData, storage, key)\n\t} catch (err) {\n\t\tconsole.error(`Failed to create array context for key: ${key}`, err)\n\t\t// Return a fallback store\n\t\treturn createArrayStore<T>(initialData, 'memory', `${key}-fallback`)\n\t}\n}\n\n/**\n * Creates a testable array context\n * @param initialData The initial array data\n * @param key Unique key for the store\n * @returns An array store that uses memory storage\n */\nexport function createTestArrayContext<T>(\n\tinitialData: T[] = [],\n\tkey: string = 'test-array',\n): IArrayStore<T> & SchmancyArrayStore<T> {\n\ttry {\n\t\treturn createContext<T>(initialData, 'memory', key)\n\t} catch (err) {\n\t\tconsole.error(`Failed to create test array context for key: ${key}`, err)\n\t\t// Return a fallback store with a different key\n\t\treturn createArrayStore<T>(initialData, 'memory', `${key}-emergency-fallback`)\n\t}\n}\n"],"names":["NOTHING","Symbol","for","DRAFTABLE","DRAFT_STATE","errors","process","env","NODE_ENV","plugin","thing","data","die","error","args","e","msg","apply","Error","getPrototypeOf","Object","isDraft","value","isDraftable","isPlainObject","Array","isArray","constructor","isMap","isSet","objectCtorString","prototype","toString","cachedCtorStrings","WeakMap","proto","Ctor","hasOwnProperty","call","ctorString","get","Function","set","each","obj","iter","strict","getArchtype","Reflect","ownKeys","keys","forEach","key","entry","index","state","type_","has","prop","propOrOldValue","t","add","target","Map","Set","latest","copy_","base_","shallowCopy","base","slice","isPlain","descriptors","getOwnPropertyDescriptors","i","length","desc","writable","configurable","enumerable","create","assign","freeze","deep","isFrozen","defineProperties","dontMutateMethodOverride","clear","delete","values","currentScope","plugins","getPlugin","pluginKey","getCurrentScope","usePatchesInScope","scope","patchListener","patches_","inversePatches_","patchListener_","revokeScope","leaveScope","drafts_","revokeDraft","parent_","enterScope","immer2","immer_","canAutoFreeze_","unfinalizedDrafts_","draft","revoke_","revoked_","processResult","result","baseDraft","modified_","finalize","maybeFreeze","generateReplacementPatches_","rootScope","path","useStrictIteration","shouldUseStrictIteration","childValue","finalizeProperty","scope_","finalized_","resultEach","isSet2","generatePatches_","parentState","targetObject","rootPath","targetIsSet","childIsFrozen","res","assigned_","concat","autoFreeze_","propertyIsEnumerable","objectTraps","source","getDescriptorFromProto","draft_","peek","prepareCopy","createProxy","current2","currentState","x","y","markChanged","Number","isNaN","deleteProperty","owner","getOwnPropertyDescriptor","defineProperty","setPrototypeOf","arrayTraps","useStrictShallowCopy_","fn","arguments","this","parseInt","parent","proxyMap_","proxySet_","isManual_","traps","revoke","proxy","Proxy","revocable","push","currentImpl","copy","_a","_b","produce","config","useStrictIteration_","recipe","defaultBase","self","base2","hasError","p","ip","produceWithPatches","patches","inversePatches","autoFreeze","setAutoFreeze","useStrictShallowCopy","setUseStrictShallowCopy","setUseStrictIteration","patch","op","applyPatchesImpl","applyPatches_","StoreError","message","cause","context","super","name","timestamp","Date","captureStackTrace","toJSON","toISOString","stack","mapSetReplacer","_key","__type","entries","from","mapSetReviver","typed","every","MemoryStorageManager","load","LocalStorageManager","localStorage","getItem","JSON","parse","err","setItem","stringify","removeItem","SessionStorageManager","sessionStorage","IndexedDBStorageManager","Promise","resolve","reject","request","indexedDB","open","DB_NAME","DB_VERSION","onupgradeneeded","db","objectStoreNames","contains","STORE_NAME","createObjectStore","onsuccess","onerror","openDB","transaction","objectStore","close","put","_tt","createStorageManager","type","DraftMap","size","assertUnrevoked","prepareMapCopy","cb","thisArg","_value","_map","iterator","next","r","done","DraftSet","prepareSetCopy","implementation","enableMapSet","immerable","BaseStore","storageType","defaultValue","safeDefaultValue","_ready","_destroy$","Subject","error$","BehaviorSubject","isImmerDraftable","$","storage","initializeFromStorage","ready","updateState","getValue","destroy","complete","newValue","nextState","storeError","persistToStorage","catch","storedValue","processedValue","processStoredValue","immutableValue","save","SchmancyArrayStore","instanceKey","instances","setupPersistence","pipe","throttleTime","leading","trailing","subscribe","currentValue","items","map","item","pop","originalItem","unshift","shift","start","deleteCount","removed","splice","compareFn","equals","a","b","findIndex","currentItem","newArray","predicate","filteredArray","filter","mapper","sortedArray","sort","updater","setupDevTools","window","__STORES__","getState","bind","remove","replace","update","callback","subscription","unsubscribe","_nt","SchmancyCollectionStore","keyOrData","val","updates","merge","batchUpdate","_st","SchmancyStoreObject","fallbackState","fallbackErr","freshDefaultValue","String","parts","split","current","part","lastPart","setPath","_it","initialData","RegExp","store","getInstance","createArrayStore","createContext","includes"],"mappings":"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","x_google_ignoreList":[0]}
|