@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.
Files changed (1426) hide show
  1. package/README.md +54 -1
  2. package/ai/INDEX.md +321 -0
  3. package/ai/animation.md +64 -0
  4. package/ai/area.md +170 -237
  5. package/ai/audio.md +50 -222
  6. package/ai/autocomplete.md +44 -162
  7. package/ai/avatar.md +47 -178
  8. package/ai/badge.md +41 -108
  9. package/ai/boat.md +35 -41
  10. package/ai/busy.md +25 -184
  11. package/ai/button.md +52 -150
  12. package/ai/card.md +42 -215
  13. package/ai/charts.md +93 -0
  14. package/ai/checkbox.md +32 -135
  15. package/ai/chips.md +73 -383
  16. package/ai/code-highlight.md +33 -226
  17. package/ai/connectivity.md +36 -0
  18. package/ai/content-drawer.md +65 -232
  19. package/ai/date-range-inline.md +40 -258
  20. package/ai/date-range.md +43 -198
  21. package/ai/delay.md +31 -139
  22. package/ai/details.md +48 -453
  23. package/ai/dialog.md +55 -164
  24. package/ai/directives.md +258 -405
  25. package/ai/discovery.md +67 -0
  26. package/ai/divider.md +15 -137
  27. package/ai/dropdown.md +44 -235
  28. package/ai/expand.md +63 -0
  29. package/ai/extra.md +59 -0
  30. package/ai/float.md +14 -0
  31. package/ai/form.md +41 -137
  32. package/ai/icons.md +31 -235
  33. package/ai/iframe.md +44 -0
  34. package/ai/input.md +50 -210
  35. package/ai/json.md +33 -0
  36. package/ai/layout.md +45 -169
  37. package/ai/lightbox.md +25 -370
  38. package/ai/list.md +51 -130
  39. package/ai/mailbox.md +80 -508
  40. package/ai/map.md +47 -226
  41. package/ai/menu.md +25 -134
  42. package/ai/mixins.md +201 -0
  43. package/ai/nav-drawer.md +30 -184
  44. package/ai/navigation-bar.md +27 -184
  45. package/ai/navigation-rail.md +62 -630
  46. package/ai/notification.md +49 -183
  47. package/ai/option.md +30 -160
  48. package/ai/page.md +42 -0
  49. package/ai/progress.md +26 -65
  50. package/ai/qr-scanner.md +51 -0
  51. package/ai/radio-group.md +45 -189
  52. package/ai/range.md +47 -0
  53. package/ai/rxjs-utils.md +60 -0
  54. package/ai/select.md +49 -209
  55. package/ai/sheet.md +74 -506
  56. package/ai/slider.md +30 -214
  57. package/ai/steps.md +30 -392
  58. package/ai/store.md +173 -251
  59. package/ai/surface.md +58 -245
  60. package/ai/table.md +56 -330
  61. package/ai/tabs.md +31 -176
  62. package/ai/teleport.md +35 -177
  63. package/ai/textarea.md +48 -232
  64. package/ai/theme-button.md +16 -163
  65. package/ai/theme.md +40 -1089
  66. package/ai/tooltip.md +35 -146
  67. package/ai/tree.md +45 -271
  68. package/ai/typewriter.md +28 -317
  69. package/ai/typography.md +43 -296
  70. package/ai/utils.md +95 -0
  71. package/ai/window.md +67 -0
  72. package/custom-elements.json +10955 -0
  73. package/dist/ai/INDEX.md +321 -0
  74. package/dist/ai/animation.md +64 -0
  75. package/dist/ai/area.md +170 -237
  76. package/dist/ai/audio.md +50 -222
  77. package/dist/ai/autocomplete.md +44 -162
  78. package/dist/ai/avatar.md +47 -178
  79. package/dist/ai/badge.md +41 -108
  80. package/dist/ai/boat.md +35 -41
  81. package/dist/ai/busy.md +25 -184
  82. package/dist/ai/button.md +52 -150
  83. package/dist/ai/card.md +42 -215
  84. package/dist/ai/charts.md +93 -0
  85. package/dist/ai/checkbox.md +32 -135
  86. package/dist/ai/chips.md +73 -383
  87. package/dist/ai/code-highlight.md +33 -226
  88. package/dist/ai/connectivity.md +36 -0
  89. package/dist/ai/content-drawer.md +65 -232
  90. package/dist/ai/date-range-inline.md +40 -258
  91. package/dist/ai/date-range.md +43 -198
  92. package/dist/ai/delay.md +31 -139
  93. package/dist/ai/details.md +48 -453
  94. package/dist/ai/dialog.md +55 -164
  95. package/dist/ai/directives.md +258 -405
  96. package/dist/ai/discovery.md +67 -0
  97. package/dist/ai/divider.md +15 -137
  98. package/dist/ai/dropdown.md +44 -235
  99. package/dist/ai/expand.md +63 -0
  100. package/dist/ai/extra.md +59 -0
  101. package/dist/ai/float.md +14 -0
  102. package/dist/ai/form.md +41 -137
  103. package/dist/ai/icons.md +31 -235
  104. package/dist/ai/iframe.md +44 -0
  105. package/dist/ai/input.md +50 -210
  106. package/dist/ai/json.md +33 -0
  107. package/dist/ai/layout.md +45 -169
  108. package/dist/ai/lightbox.md +25 -370
  109. package/dist/ai/list.md +51 -130
  110. package/dist/ai/mailbox.md +80 -508
  111. package/dist/ai/map.md +47 -226
  112. package/dist/ai/menu.md +25 -134
  113. package/dist/ai/mixins.md +201 -0
  114. package/dist/ai/nav-drawer.md +30 -184
  115. package/dist/ai/navigation-bar.md +27 -184
  116. package/dist/ai/navigation-rail.md +62 -630
  117. package/dist/ai/notification.md +49 -183
  118. package/dist/ai/option.md +30 -160
  119. package/dist/ai/page.md +42 -0
  120. package/dist/ai/progress.md +26 -65
  121. package/dist/ai/qr-scanner.md +51 -0
  122. package/dist/ai/radio-group.md +45 -189
  123. package/dist/ai/range.md +47 -0
  124. package/dist/ai/rxjs-utils.md +60 -0
  125. package/dist/ai/select.md +49 -209
  126. package/dist/ai/sheet.md +74 -506
  127. package/dist/ai/slider.md +30 -214
  128. package/dist/ai/steps.md +30 -392
  129. package/dist/ai/store.md +173 -251
  130. package/dist/ai/surface.md +58 -245
  131. package/dist/ai/table.md +56 -330
  132. package/dist/ai/tabs.md +31 -176
  133. package/dist/ai/teleport.md +35 -177
  134. package/dist/ai/textarea.md +48 -232
  135. package/dist/ai/theme-button.md +16 -163
  136. package/dist/ai/theme.md +40 -1089
  137. package/dist/ai/tooltip.md +35 -146
  138. package/dist/ai/tree.md +45 -271
  139. package/dist/ai/typewriter.md +28 -317
  140. package/dist/ai/typography.md +43 -296
  141. package/dist/ai/utils.md +95 -0
  142. package/dist/ai/window.md +67 -0
  143. package/dist/animation-BK-8BwY8.js +173 -0
  144. package/dist/animation-BK-8BwY8.js.map +1 -0
  145. package/dist/animation-CO_Csq84.cjs +16 -0
  146. package/dist/animation-CO_Csq84.cjs.map +1 -0
  147. package/dist/area-CC8fUnra.js +590 -0
  148. package/dist/area-CC8fUnra.js.map +1 -0
  149. package/dist/area-wnWUAHEn.cjs +12 -0
  150. package/dist/area-wnWUAHEn.cjs.map +1 -0
  151. package/dist/area.cjs +1 -2
  152. package/dist/area.js +2 -29
  153. package/dist/audio-DtYYgzYD.cjs +1 -0
  154. package/dist/audio-DtYYgzYD.cjs.map +1 -0
  155. package/dist/audio-kz8UgPTO.js +335 -0
  156. package/dist/audio-kz8UgPTO.js.map +1 -0
  157. package/dist/audio.cjs +1 -2
  158. package/dist/audio.js +3 -9
  159. package/dist/autocomplete-B2Z3WK_7.cjs +111 -0
  160. package/dist/autocomplete-B2Z3WK_7.cjs.map +1 -0
  161. package/dist/autocomplete-CJ7YgtKN.js +378 -0
  162. package/dist/autocomplete-CJ7YgtKN.js.map +1 -0
  163. package/dist/autocomplete.cjs +1 -2
  164. package/dist/autocomplete.js +1 -2
  165. package/dist/badge.cjs +1 -2
  166. package/dist/badge.js +2 -6
  167. package/dist/boat-B57_4TzJ.cjs +80 -0
  168. package/dist/boat-B57_4TzJ.cjs.map +1 -0
  169. package/dist/boat-C9eU6NO-.js +347 -0
  170. package/dist/boat-C9eU6NO-.js.map +1 -0
  171. package/dist/boat.cjs +1 -2
  172. package/dist/boat.js +2 -5
  173. package/dist/busy--6oimtop.cjs +134 -0
  174. package/dist/busy--6oimtop.cjs.map +1 -0
  175. package/dist/busy-CGZXy0h-.js +167 -0
  176. package/dist/busy-CGZXy0h-.js.map +1 -0
  177. package/dist/busy.cjs +1 -2
  178. package/dist/busy.js +1 -2
  179. package/dist/button.cjs +113 -2
  180. package/dist/button.cjs.map +1 -1
  181. package/dist/button.js +398 -5
  182. package/dist/button.js.map +1 -1
  183. package/dist/card-BGJ0Hb1O.cjs +177 -0
  184. package/dist/card-BGJ0Hb1O.cjs.map +1 -0
  185. package/dist/card-C-ee-l5O.js +284 -0
  186. package/dist/card-C-ee-l5O.js.map +1 -0
  187. package/dist/card.cjs +1 -2
  188. package/dist/card.js +1 -2
  189. package/dist/charts.cjs +112 -2
  190. package/dist/charts.cjs.map +1 -1
  191. package/dist/charts.js +368 -8
  192. package/dist/charts.js.map +1 -1
  193. package/dist/checkbox-DuYaKoDZ.cjs +39 -0
  194. package/dist/checkbox-DuYaKoDZ.cjs.map +1 -0
  195. package/dist/checkbox-FRcorDrD.js +610 -0
  196. package/dist/checkbox-FRcorDrD.js.map +1 -0
  197. package/dist/checkbox.cjs +1 -2
  198. package/dist/checkbox.js +2 -5
  199. package/dist/chips-BpA0A-qr.cjs +253 -0
  200. package/dist/chips-BpA0A-qr.cjs.map +1 -0
  201. package/dist/chips-CyzNbKJD.js +645 -0
  202. package/dist/chips-CyzNbKJD.js.map +1 -0
  203. package/dist/chips.cjs +1 -2
  204. package/dist/chips.js +3 -10
  205. package/dist/chunk-BCfY8kxB.cjs +1 -0
  206. package/dist/chunk-C_1VqBVD.js +11 -0
  207. package/dist/code-highlight-C7O9ltXm.js +290 -0
  208. package/dist/code-highlight-C7O9ltXm.js.map +1 -0
  209. package/dist/code-highlight-DsBdSQBG.cjs +190 -0
  210. package/dist/code-highlight-DsBdSQBG.cjs.map +1 -0
  211. package/dist/code-highlight.cjs +1 -2
  212. package/dist/code-highlight.js +2 -7
  213. package/dist/components-CkMvOiTR.js +730 -0
  214. package/dist/components-CkMvOiTR.js.map +1 -0
  215. package/dist/components-dDI3xeIf.cjs +73 -0
  216. package/dist/components-dDI3xeIf.cjs.map +1 -0
  217. package/dist/components.cjs +1 -2
  218. package/dist/components.js +2 -5
  219. package/dist/connectivity.cjs +59 -0
  220. package/dist/connectivity.cjs.map +1 -0
  221. package/dist/connectivity.js +86 -0
  222. package/dist/connectivity.js.map +1 -0
  223. package/dist/content-drawer.cjs +1 -2
  224. package/dist/content-drawer.js +2 -13
  225. package/dist/cursor-glow-Ah7VXSj7.js +46 -0
  226. package/dist/cursor-glow-Ah7VXSj7.js.map +1 -0
  227. package/dist/cursor-glow-DtSy_PJd.cjs +1 -0
  228. package/dist/cursor-glow-DtSy_PJd.cjs.map +1 -0
  229. package/dist/date-range-70zhLUKE.cjs +131 -0
  230. package/dist/date-range-70zhLUKE.cjs.map +1 -0
  231. package/dist/date-range-BrN_Bs6_.js +946 -0
  232. package/dist/date-range-BrN_Bs6_.js.map +1 -0
  233. package/dist/date-range-inline-CPzD-tIv.cjs +43 -0
  234. package/dist/date-range-inline-CPzD-tIv.cjs.map +1 -0
  235. package/dist/date-range-inline-Cp294DxR.js +267 -0
  236. package/dist/date-range-inline-Cp294DxR.js.map +1 -0
  237. package/dist/date-range-inline.cjs +1 -2
  238. package/dist/date-range-inline.js +2 -5
  239. package/dist/date-range.cjs +1 -2
  240. package/dist/date-range.js +2 -6
  241. package/dist/delay-COcAkBqB.cjs +9 -0
  242. package/dist/delay-COcAkBqB.cjs.map +1 -0
  243. package/dist/delay-IV0Swce2.js +346 -0
  244. package/dist/delay-IV0Swce2.js.map +1 -0
  245. package/dist/delay.cjs +1 -2
  246. package/dist/delay.js +2 -6
  247. package/dist/details-CuKmr3Qw.js +293 -0
  248. package/dist/details-CuKmr3Qw.js.map +1 -0
  249. package/dist/details-DgWkPqmt.cjs +168 -0
  250. package/dist/details-DgWkPqmt.cjs.map +1 -0
  251. package/dist/details.cjs +1 -2
  252. package/dist/details.js +2 -5
  253. package/dist/dialog-service-NZEvyEK-.js +193 -0
  254. package/dist/dialog-service-NZEvyEK-.js.map +1 -0
  255. package/dist/dialog-service-VnW4gkmE.cjs +1 -0
  256. package/dist/dialog-service-VnW4gkmE.cjs.map +1 -0
  257. package/dist/dialog.cjs +82 -2
  258. package/dist/dialog.cjs.map +1 -1
  259. package/dist/dialog.js +396 -9
  260. package/dist/dialog.js.map +1 -1
  261. package/dist/directives.cjs +108 -2
  262. package/dist/directives.cjs.map +1 -1
  263. package/dist/directives.js +1362 -14
  264. package/dist/directives.js.map +1 -1
  265. package/dist/discovery.cjs +1 -2
  266. package/dist/discovery.cjs.map +1 -1
  267. package/dist/discovery.js +61 -6
  268. package/dist/discovery.js.map +1 -1
  269. package/dist/divider-BWoUbfgZ.js +87 -0
  270. package/dist/divider-BWoUbfgZ.js.map +1 -0
  271. package/dist/divider-BghtrMbn.cjs +57 -0
  272. package/dist/divider-BghtrMbn.cjs.map +1 -0
  273. package/dist/divider.cjs +1 -2
  274. package/dist/divider.js +1 -2
  275. package/dist/dropdown.cjs +57 -2
  276. package/dist/dropdown.cjs.map +1 -1
  277. package/dist/dropdown.js +160 -5
  278. package/dist/dropdown.js.map +1 -1
  279. package/dist/expand-CJU9m4ga.js +336 -0
  280. package/dist/expand-CJU9m4ga.js.map +1 -0
  281. package/dist/expand-XyDE5SsO.cjs +141 -0
  282. package/dist/expand-XyDE5SsO.cjs.map +1 -0
  283. package/dist/expand.cjs +1 -0
  284. package/dist/expand.js +2 -0
  285. package/dist/extra-BxXFmW1w.js +3435 -0
  286. package/dist/extra-BxXFmW1w.js.map +1 -0
  287. package/dist/extra-CsrRKKqE.cjs +31 -0
  288. package/dist/extra-CsrRKKqE.cjs.map +1 -0
  289. package/dist/extra.cjs +1 -2
  290. package/dist/extra.js +2 -6
  291. package/dist/float-BD86t_NU.js +5 -0
  292. package/dist/float-BD86t_NU.js.map +1 -0
  293. package/dist/float-DBv1FINW.cjs +1 -0
  294. package/dist/float-DBv1FINW.cjs.map +1 -0
  295. package/dist/float.cjs +1 -0
  296. package/dist/float.js +2 -0
  297. package/dist/flow-Bbwn6dRN.cjs +1 -0
  298. package/dist/flow-Bbwn6dRN.cjs.map +1 -0
  299. package/dist/flow-CUj0fDT_.js +386 -0
  300. package/dist/flow-CUj0fDT_.js.map +1 -0
  301. package/dist/form-Cp5-I_ZV.js +270 -0
  302. package/dist/form-Cp5-I_ZV.js.map +1 -0
  303. package/dist/form-D0bIeDWT.cjs +1 -0
  304. package/dist/form-D0bIeDWT.cjs.map +1 -0
  305. package/dist/form.cjs +1 -2
  306. package/dist/form.js +1 -2
  307. package/dist/hashContent-DYM21p6t.js +6 -0
  308. package/dist/hashContent-DYM21p6t.js.map +1 -0
  309. package/dist/hashContent-DaeGmY-p.cjs +1 -0
  310. package/dist/hashContent-DaeGmY-p.cjs.map +1 -0
  311. package/dist/icons-BpU0_l92.js +161 -0
  312. package/dist/icons-BpU0_l92.js.map +1 -0
  313. package/dist/icons-D8w_20mO.cjs +52 -0
  314. package/dist/icons-D8w_20mO.cjs.map +1 -0
  315. package/dist/icons.cjs +1 -2
  316. package/dist/icons.js +1 -2
  317. package/dist/iframe-BjwxA2Pg.cjs +24 -0
  318. package/dist/iframe-BjwxA2Pg.cjs.map +1 -0
  319. package/dist/iframe-tY1GY5g1.js +44 -0
  320. package/dist/iframe-tY1GY5g1.js.map +1 -0
  321. package/dist/iframe.cjs +1 -0
  322. package/dist/iframe.js +2 -0
  323. package/dist/index.cjs +1 -2
  324. package/dist/index.js +69 -285
  325. package/dist/input-BnfTpRN9.js +364 -0
  326. package/dist/input-BnfTpRN9.js.map +1 -0
  327. package/dist/input-BwxwognS.cjs +51 -0
  328. package/dist/input-BwxwognS.cjs.map +1 -0
  329. package/dist/input-chip-CkM2aYmO.js +301 -0
  330. package/dist/input-chip-CkM2aYmO.js.map +1 -0
  331. package/dist/input-chip-MjOwX5EY.cjs +146 -0
  332. package/dist/input-chip-MjOwX5EY.cjs.map +1 -0
  333. package/dist/input.cjs +1 -2
  334. package/dist/input.js +2 -6
  335. package/dist/intersection-BPLpqYEd.js +12 -0
  336. package/dist/intersection-BPLpqYEd.js.map +1 -0
  337. package/dist/intersection-CZpaIHeT.cjs +1 -0
  338. package/dist/intersection-CZpaIHeT.cjs.map +1 -0
  339. package/dist/json.cjs +11 -2
  340. package/dist/json.cjs.map +1 -1
  341. package/dist/json.js +40 -4
  342. package/dist/json.js.map +1 -1
  343. package/dist/layout-4C-6_cre.cjs +1 -0
  344. package/dist/layout-4C-6_cre.cjs.map +1 -0
  345. package/dist/layout-BV0EeyUS.cjs +17 -0
  346. package/dist/layout-BV0EeyUS.cjs.map +1 -0
  347. package/dist/layout-CJSlZlFL.js +267 -0
  348. package/dist/layout-CJSlZlFL.js.map +1 -0
  349. package/dist/layout-yxSlLybo.js +94 -0
  350. package/dist/layout-yxSlLybo.js.map +1 -0
  351. package/dist/layout.cjs +1 -2
  352. package/dist/layout.js +3 -9
  353. package/dist/lightbox-CpNMZHZW.cjs +202 -0
  354. package/dist/lightbox-CpNMZHZW.cjs.map +1 -0
  355. package/dist/lightbox-groqGmJH.js +678 -0
  356. package/dist/lightbox-groqGmJH.js.map +1 -0
  357. package/dist/lightbox.cjs +1 -2
  358. package/dist/lightbox.js +2 -8
  359. package/dist/list-CyHd0Zc2.cjs +40 -0
  360. package/dist/list-CyHd0Zc2.cjs.map +1 -0
  361. package/dist/list-DzkqT_r-.js +105 -0
  362. package/dist/list-DzkqT_r-.js.map +1 -0
  363. package/dist/list.cjs +1 -2
  364. package/dist/list.js +2 -7
  365. package/dist/litElement.mixin-BG6_-nYX.cjs +1 -0
  366. package/dist/litElement.mixin-BG6_-nYX.cjs.map +1 -0
  367. package/dist/litElement.mixin-Dm-4L8zL.js +12 -0
  368. package/dist/litElement.mixin-Dm-4L8zL.js.map +1 -0
  369. package/dist/magnetic-BZGFxAWG.js +47 -0
  370. package/dist/magnetic-BZGFxAWG.js.map +1 -0
  371. package/dist/magnetic-Dux4QwO4.cjs +1 -0
  372. package/dist/magnetic-Dux4QwO4.cjs.map +1 -0
  373. package/dist/mailbox-BcqnXYVP.js +1584 -0
  374. package/dist/mailbox-BcqnXYVP.js.map +1 -0
  375. package/dist/mailbox-C5eYTd7p.cjs +1142 -0
  376. package/dist/mailbox-C5eYTd7p.cjs.map +1 -0
  377. package/dist/mailbox.cjs +1 -2
  378. package/dist/mailbox.js +2 -9
  379. package/dist/map-BncheFt5.cjs +80 -0
  380. package/dist/map-BncheFt5.cjs.map +1 -0
  381. package/dist/map-C0o1PgLE.js +205 -0
  382. package/dist/map-C0o1PgLE.js.map +1 -0
  383. package/dist/map.cjs +1 -2
  384. package/dist/map.js +2 -5
  385. package/dist/menu-uwqlQbLd.js +51 -0
  386. package/dist/menu-uwqlQbLd.js.map +1 -0
  387. package/dist/menu-yXzwJZFf.cjs +23 -0
  388. package/dist/menu-yXzwJZFf.cjs.map +1 -0
  389. package/dist/menu.cjs +1 -2
  390. package/dist/menu.js +1 -2
  391. package/dist/mixins.cjs +1 -2
  392. package/dist/mixins.cjs.map +1 -1
  393. package/dist/mixins.js +59 -12
  394. package/dist/mixins.js.map +1 -1
  395. package/dist/nav-drawer.cjs +1 -2
  396. package/dist/nav-drawer.js +2 -12
  397. package/dist/navigation-bar.cjs +1 -2
  398. package/dist/navigation-bar.js +2 -6
  399. package/dist/navigation-rail.cjs +71 -2
  400. package/dist/navigation-rail.cjs.map +1 -1
  401. package/dist/navigation-rail.js +363 -5
  402. package/dist/navigation-rail.js.map +1 -1
  403. package/dist/notification-BjwTfLAl.cjs +23 -0
  404. package/dist/notification-BjwTfLAl.cjs.map +1 -0
  405. package/dist/notification-DzYT4deA.js +304 -0
  406. package/dist/notification-DzYT4deA.js.map +1 -0
  407. package/dist/notification.cjs +1 -2
  408. package/dist/notification.js +2 -9
  409. package/dist/option-BJsD3u2D.cjs +43 -0
  410. package/dist/option-BJsD3u2D.cjs.map +1 -0
  411. package/dist/option-JFHxgiYl.js +97 -0
  412. package/dist/option-JFHxgiYl.js.map +1 -0
  413. package/dist/option.cjs +1 -2
  414. package/dist/option.js +1 -2
  415. package/dist/overlay-stack-DQey9Qph.cjs +1 -0
  416. package/dist/overlay-stack-DQey9Qph.cjs.map +1 -0
  417. package/dist/overlay-stack-DT1SdaGW.js +39 -0
  418. package/dist/overlay-stack-DT1SdaGW.js.map +1 -0
  419. package/dist/page.cjs +20 -2
  420. package/dist/page.cjs.map +1 -1
  421. package/dist/page.js +71 -4
  422. package/dist/page.js.map +1 -1
  423. package/dist/progress-BUh5WBqx.js +128 -0
  424. package/dist/progress-BUh5WBqx.js.map +1 -0
  425. package/dist/progress-BoRmyGAa.cjs +51 -0
  426. package/dist/progress-BoRmyGAa.cjs.map +1 -0
  427. package/dist/progress.cjs +1 -2
  428. package/dist/progress.js +1 -2
  429. package/dist/provide-8MrDz_qX.js +107 -0
  430. package/dist/provide-8MrDz_qX.js.map +1 -0
  431. package/dist/provide-CDkxgjHb.cjs +1 -0
  432. package/dist/provide-CDkxgjHb.cjs.map +1 -0
  433. package/dist/qr-scanner.cjs +35 -2
  434. package/dist/qr-scanner.cjs.map +1 -1
  435. package/dist/qr-scanner.js +119 -4
  436. package/dist/qr-scanner.js.map +1 -1
  437. package/dist/radio-group-DbOWUPhi.js +105 -0
  438. package/dist/radio-group-DbOWUPhi.js.map +1 -0
  439. package/dist/radio-group-rhrvhB5X.cjs +40 -0
  440. package/dist/radio-group-rhrvhB5X.cjs.map +1 -0
  441. package/dist/radio-group.cjs +1 -2
  442. package/dist/radio-group.js +2 -6
  443. package/dist/range.cjs +62 -0
  444. package/dist/range.cjs.map +1 -0
  445. package/dist/range.js +85 -0
  446. package/dist/range.js.map +1 -0
  447. package/dist/reduced-motion-D-L12p7G.js +7 -0
  448. package/dist/reduced-motion-D-L12p7G.js.map +1 -0
  449. package/dist/reduced-motion-Ds05GPyz.cjs +1 -0
  450. package/dist/reduced-motion-Ds05GPyz.cjs.map +1 -0
  451. package/dist/rxjs-utils-BSjmI9-Q.js +32 -0
  452. package/dist/rxjs-utils-BSjmI9-Q.js.map +1 -0
  453. package/dist/rxjs-utils-DCsfzeap.cjs +1 -0
  454. package/dist/rxjs-utils-DCsfzeap.cjs.map +1 -0
  455. package/dist/rxjs-utils.cjs +1 -2
  456. package/dist/rxjs-utils.js +2 -14
  457. package/dist/scroll-BE9W9PF2.cjs +26 -0
  458. package/dist/scroll-BE9W9PF2.cjs.map +1 -0
  459. package/dist/scroll-qGks1R0k.js +112 -0
  460. package/dist/scroll-qGks1R0k.js.map +1 -0
  461. package/dist/search-C4dFHYbX.js +91 -0
  462. package/dist/search-C4dFHYbX.js.map +1 -0
  463. package/dist/search-Ds8tt7Et.cjs +1 -0
  464. package/dist/search-Ds8tt7Et.cjs.map +1 -0
  465. package/dist/select-D9sgBRjU.js +305 -0
  466. package/dist/select-D9sgBRjU.js.map +1 -0
  467. package/dist/select-DXU2kzg4.cjs +56 -0
  468. package/dist/select-DXU2kzg4.cjs.map +1 -0
  469. package/dist/select.cjs +1 -2
  470. package/dist/select.js +2 -5
  471. package/dist/sheet-CIxCCJ3H.js +168 -0
  472. package/dist/sheet-CIxCCJ3H.js.map +1 -0
  473. package/dist/sheet-CeX6BbNp.cjs +35 -0
  474. package/dist/sheet-CeX6BbNp.cjs.map +1 -0
  475. package/dist/sheet.cjs +1 -2
  476. package/dist/sheet.js +3 -7
  477. package/dist/sheet.service-CAB7weBc.js +86 -0
  478. package/dist/sheet.service-CAB7weBc.js.map +1 -0
  479. package/dist/sheet.service-DPAp7E3x.cjs +1 -0
  480. package/dist/sheet.service-DPAp7E3x.cjs.map +1 -0
  481. package/dist/slider.cjs +82 -2
  482. package/dist/slider.cjs.map +1 -1
  483. package/dist/slider.js +143 -5
  484. package/dist/slider.js.map +1 -1
  485. package/dist/sound.service-Bu3EQLv2.cjs +1 -0
  486. package/dist/sound.service-Bu3EQLv2.cjs.map +1 -0
  487. package/dist/sound.service-m3BrSfuH.js +2353 -0
  488. package/dist/sound.service-m3BrSfuH.js.map +1 -0
  489. package/dist/src-CbO5kJ2O.js +1244 -0
  490. package/dist/src-CbO5kJ2O.js.map +1 -0
  491. package/dist/src-SraDxEeg.cjs +269 -0
  492. package/dist/src-SraDxEeg.cjs.map +1 -0
  493. package/dist/steps.cjs +70 -2
  494. package/dist/steps.cjs.map +1 -1
  495. package/dist/steps.js +178 -7
  496. package/dist/steps.js.map +1 -1
  497. package/dist/store-CorvD3bT.cjs +1 -0
  498. package/dist/store-CorvD3bT.cjs.map +1 -0
  499. package/dist/store-DYqDLAvT.js +1654 -0
  500. package/dist/store-DYqDLAvT.js.map +1 -0
  501. package/dist/store.cjs +1 -2
  502. package/dist/store.js +2 -47
  503. package/dist/surface-DuH0pm2v.cjs +7 -0
  504. package/dist/surface-DuH0pm2v.cjs.map +1 -0
  505. package/dist/surface-eN_Jy2MJ.js +21 -0
  506. package/dist/surface-eN_Jy2MJ.js.map +1 -0
  507. package/dist/surface.cjs +1 -2
  508. package/dist/surface.js +2 -6
  509. package/dist/surface.mixin-CIXgN6iw.cjs +297 -0
  510. package/dist/surface.mixin-CIXgN6iw.cjs.map +1 -0
  511. package/dist/surface.mixin-D9jv1sKG.js +320 -0
  512. package/dist/surface.mixin-D9jv1sKG.js.map +1 -0
  513. package/dist/table-C9rRQJEB.cjs +63 -0
  514. package/dist/table-C9rRQJEB.cjs.map +1 -0
  515. package/dist/table-Dg_tUGB_.js +631 -0
  516. package/dist/table-Dg_tUGB_.js.map +1 -0
  517. package/dist/table.cjs +1 -2
  518. package/dist/table.js +2 -6
  519. package/dist/tabs-BbFC9omR.js +125 -0
  520. package/dist/tabs-BbFC9omR.js.map +1 -0
  521. package/dist/tabs-soTL-x4G.cjs +31 -0
  522. package/dist/tabs-soTL-x4G.cjs.map +1 -0
  523. package/dist/tabs.cjs +1 -2
  524. package/dist/tabs.js +1 -2
  525. package/dist/tailwind.mixin-BIVhjNvD.js +225 -0
  526. package/dist/tailwind.mixin-BIVhjNvD.js.map +1 -0
  527. package/dist/tailwind.mixin-DSuEu-y3.cjs +2 -0
  528. package/dist/tailwind.mixin-DSuEu-y3.cjs.map +1 -0
  529. package/dist/teleport.cjs +1 -2
  530. package/dist/teleport.js +2 -8
  531. package/dist/textarea-DaRUJ0ri.cjs +35 -0
  532. package/dist/textarea-DaRUJ0ri.cjs.map +1 -0
  533. package/dist/textarea-hChvHbNM.js +195 -0
  534. package/dist/textarea-hChvHbNM.js.map +1 -0
  535. package/dist/textarea.cjs +1 -2
  536. package/dist/textarea.js +1 -2
  537. package/dist/theme-B0M8Hlyo.js +4121 -0
  538. package/dist/theme-B0M8Hlyo.js.map +1 -0
  539. package/dist/theme-ZYH2MqX9.cjs +181 -0
  540. package/dist/theme-ZYH2MqX9.cjs.map +1 -0
  541. package/dist/theme-button-BtlX_Zgd.js +19 -0
  542. package/dist/theme-button-BtlX_Zgd.js.map +1 -0
  543. package/dist/theme-button-Dvqg-rE_.cjs +8 -0
  544. package/dist/theme-button-Dvqg-rE_.cjs.map +1 -0
  545. package/dist/theme-button.cjs +1 -2
  546. package/dist/theme-button.js +1 -2
  547. package/dist/theme.cjs +1 -2
  548. package/dist/theme.events-Cv7N4Toe.js +2 -0
  549. package/dist/theme.events-Cv7N4Toe.js.map +1 -0
  550. package/dist/theme.events-DM4H5F2d.cjs +1 -0
  551. package/dist/theme.events-DM4H5F2d.cjs.map +1 -0
  552. package/dist/theme.interface-CXloMUCw.js +276 -0
  553. package/dist/theme.interface-CXloMUCw.js.map +1 -0
  554. package/dist/theme.interface-Da23QAYb.cjs +1 -0
  555. package/dist/theme.interface-Da23QAYb.cjs.map +1 -0
  556. package/dist/theme.js +6 -21
  557. package/dist/theme.service-C_tjlqgy.cjs +1 -0
  558. package/dist/theme.service-C_tjlqgy.cjs.map +1 -0
  559. package/dist/theme.service-D9lEas89.js +108 -0
  560. package/dist/theme.service-D9lEas89.js.map +1 -0
  561. package/dist/tooltip.cjs +6 -2
  562. package/dist/tooltip.cjs.map +1 -1
  563. package/dist/tooltip.js +200 -5
  564. package/dist/tooltip.js.map +1 -1
  565. package/dist/tree.cjs +26 -2
  566. package/dist/tree.cjs.map +1 -1
  567. package/dist/tree.js +64 -4
  568. package/dist/tree.js.map +1 -1
  569. package/dist/tslib.es6-D7BIeDVB.cjs +1 -0
  570. package/dist/tslib.es6-D7BIeDVB.cjs.map +1 -0
  571. package/dist/tslib.es6-ErZEp3OO.js +7 -0
  572. package/dist/tslib.es6-ErZEp3OO.js.map +1 -0
  573. package/dist/types.cjs +1 -2
  574. package/dist/types.cjs.map +1 -1
  575. package/dist/types.js +4 -5
  576. package/dist/types.js.map +1 -1
  577. package/dist/typewriter-CCel8Nta.js +700 -0
  578. package/dist/typewriter-CCel8Nta.js.map +1 -0
  579. package/dist/typewriter-Cf9f2bdx.cjs +123 -0
  580. package/dist/typewriter-Cf9f2bdx.cjs.map +1 -0
  581. package/dist/typewriter.cjs +1 -2
  582. package/dist/typewriter.js +2 -5
  583. package/dist/typography.cjs +282 -2
  584. package/dist/typography.cjs.map +1 -1
  585. package/dist/typography.js +353 -4
  586. package/dist/typography.js.map +1 -1
  587. package/dist/utils-BcaKtQuA.cjs +1 -0
  588. package/dist/utils-BcaKtQuA.cjs.map +1 -0
  589. package/dist/utils-CoU7M2YS.js +259 -0
  590. package/dist/utils-CoU7M2YS.js.map +1 -0
  591. package/dist/utils.cjs +1 -2
  592. package/dist/utils.js +6 -9
  593. package/dist/window-B9_14c12.cjs +59 -0
  594. package/dist/window-B9_14c12.cjs.map +1 -0
  595. package/dist/window-CbgdwOZD.js +548 -0
  596. package/dist/window-CbgdwOZD.js.map +1 -0
  597. package/dist/window.cjs +1 -0
  598. package/dist/window.js +2 -0
  599. package/mixins/baseElement.ts +118 -1
  600. package/mixins/discovery.service.ts +162 -1
  601. package/mixins/formField.mixin.ts +13 -8
  602. package/mixins/index.ts +2 -0
  603. package/mixins/surface.mixin.ts +93 -0
  604. package/mixins/tailwind.css +331 -14
  605. package/package.json +32 -28
  606. package/src/CLAUDE.md +428 -0
  607. package/src/area/.excalidraw +357 -0
  608. package/src/area/area.component.ts +449 -0
  609. package/src/area/area.service.test.ts +1007 -0
  610. package/src/area/area.service.ts +748 -0
  611. package/src/area/ecrypt.ts +7 -0
  612. package/src/area/index.ts +7 -0
  613. package/src/area/lazy.ts +83 -0
  614. package/src/area/readme.md +338 -0
  615. package/src/area/route.component.ts +79 -0
  616. package/src/area/router-guide.md +360 -0
  617. package/src/area/router.types.ts +101 -0
  618. package/src/area/utils.ts +354 -0
  619. package/src/audio/emotional-sounds.ts +940 -0
  620. package/src/audio/index.ts +53 -0
  621. package/src/audio/sound.service.ts +1079 -0
  622. package/src/autocomplete/README.md +485 -0
  623. package/src/autocomplete/autocomplete.scss +24 -0
  624. package/src/autocomplete/autocomplete.ts +733 -0
  625. package/src/autocomplete/index.ts +1 -0
  626. package/src/avatar.ts +164 -0
  627. package/src/badge/badge.ts +286 -0
  628. package/src/badge/index.ts +1 -0
  629. package/src/boat/boat.ts +664 -0
  630. package/src/boat/index.ts +1 -0
  631. package/src/busy/busy.ts +39 -0
  632. package/src/busy/index.ts +2 -0
  633. package/src/busy/spinner.ts +165 -0
  634. package/src/button/button.ts +382 -0
  635. package/src/button/icon-button.ts +287 -0
  636. package/src/button/index.ts +2 -0
  637. package/src/card/actions.ts +28 -0
  638. package/src/card/card.ts +319 -0
  639. package/src/card/content.ts +24 -0
  640. package/src/card/index.ts +4 -0
  641. package/src/card/media.ts +77 -0
  642. package/src/charts/area-chart.ts +495 -0
  643. package/src/charts/index.ts +4 -0
  644. package/src/charts/pills.ts +350 -0
  645. package/src/charts/types.ts +66 -0
  646. package/src/charts/utils.ts +65 -0
  647. package/src/checkbox/checkbox.ts +122 -0
  648. package/src/checkbox/index.ts +1 -0
  649. package/src/chips/assist-chip.ts +261 -0
  650. package/src/chips/chips.ts +259 -0
  651. package/src/chips/filter-chip.ts +255 -0
  652. package/src/chips/index.ts +5 -0
  653. package/src/chips/input-chip.ts +408 -0
  654. package/src/chips/suggestion-chip.ts +266 -0
  655. package/src/code-highlight/code-highlight.ts +344 -0
  656. package/src/code-highlight/code-preview.ts +123 -0
  657. package/src/code-highlight/index.ts +3 -0
  658. package/src/components/form-elements/index.ts +1 -0
  659. package/src/components/form-elements/payment-card-form.ts +331 -0
  660. package/src/components/index.ts +1 -0
  661. package/src/connectivity/connectivity-status.ts +153 -0
  662. package/src/connectivity/index.ts +1 -0
  663. package/src/content-drawer/context.ts +13 -0
  664. package/src/content-drawer/drawer.service.ts +148 -0
  665. package/src/content-drawer/drawer.ts +183 -0
  666. package/src/content-drawer/index.ts +5 -0
  667. package/src/content-drawer/main.ts +83 -0
  668. package/src/content-drawer/readme.md +709 -0
  669. package/src/content-drawer/sheet.ts +180 -0
  670. package/src/date-range/date-range-dialog.ts +230 -0
  671. package/src/date-range/date-range-helpers.ts +135 -0
  672. package/src/date-range/date-range-presets.ts +220 -0
  673. package/src/date-range/date-range.ts +530 -0
  674. package/src/date-range/date-utils.ts +58 -0
  675. package/src/date-range/index.ts +2 -0
  676. package/src/date-range-inline/date-range-inline.ts +522 -0
  677. package/src/date-range-inline/index.ts +2 -0
  678. package/src/delay/delay.ts +136 -0
  679. package/src/delay/index.ts +1 -0
  680. package/src/details/details.ts +429 -0
  681. package/src/details/index.ts +1 -0
  682. package/src/dialog/dialog-base.mixin.ts +565 -0
  683. package/src/dialog/dialog-events.ts +17 -0
  684. package/src/dialog/dialog-service.ts +482 -0
  685. package/src/dialog/dialog.component.ts +394 -0
  686. package/src/dialog/index.ts +3 -0
  687. package/src/directives/animate-text.ts +551 -0
  688. package/src/directives/color.ts +41 -0
  689. package/src/directives/confirm-click.ts +350 -0
  690. package/src/directives/cursor-glow.ts +142 -0
  691. package/src/directives/cycle-text.ts +496 -0
  692. package/src/directives/depth-of-field.ts +83 -0
  693. package/src/directives/drag.ts +370 -0
  694. package/src/directives/gravity.ts +117 -0
  695. package/src/directives/index.ts +19 -0
  696. package/src/directives/intersect.ts +204 -0
  697. package/src/directives/layout.ts +261 -0
  698. package/src/directives/liquid.ts +150 -0
  699. package/src/directives/living-border.ts +166 -0
  700. package/src/directives/long-press.ts +150 -0
  701. package/src/directives/magnetic.ts +133 -0
  702. package/src/directives/nebula.ts +773 -0
  703. package/src/directives/reduced-motion.ts +30 -0
  704. package/src/directives/reveal.ts +158 -0
  705. package/src/directives/ripple.ts +102 -0
  706. package/src/directives/typewriter.ts +349 -0
  707. package/src/discovery/discovery.service.ts +210 -0
  708. package/src/discovery/index.ts +1 -0
  709. package/src/divider/divider.ts +100 -0
  710. package/src/divider/index.ts +1 -0
  711. package/src/dropdown/dropdown-component.ts +264 -0
  712. package/src/dropdown/dropdown-content.ts +108 -0
  713. package/src/dropdown/index.ts +2 -0
  714. package/src/expand/expand-root.component.ts +278 -0
  715. package/src/expand/expand.component.ts +287 -0
  716. package/src/expand/index.ts +2 -0
  717. package/src/extra/countries/countries.data.ts +196 -0
  718. package/src/extra/countries/countries.ts +107 -0
  719. package/src/extra/countries/index.ts +2 -0
  720. package/src/extra/index.ts +2 -0
  721. package/src/extra/timezone/index.ts +2 -0
  722. package/src/extra/timezone/timezone.ts +116 -0
  723. package/src/extra/timezone/timezones.data.ts +2546 -0
  724. package/src/float/float.ts +18 -0
  725. package/src/float/index.ts +1 -0
  726. package/src/form/form-v2.ts +268 -0
  727. package/src/form/form.ts +194 -0
  728. package/src/form/index.ts +2 -0
  729. package/src/icons/icon.ts +293 -0
  730. package/src/icons/index.ts +1 -0
  731. package/src/icons/readme.md +37 -0
  732. package/src/iframe/iframe.ts +98 -0
  733. package/src/iframe/index.ts +1 -0
  734. package/src/index.ts +69 -0
  735. package/src/input/index.ts +8 -0
  736. package/src/input/input.scss +211 -0
  737. package/src/input/input.ts +951 -0
  738. package/src/json/index.ts +1 -0
  739. package/src/json/json.ts +55 -0
  740. package/src/layout/flex/flex.scss +4 -0
  741. package/src/layout/flex/flex.ts +74 -0
  742. package/src/layout/flex/index.ts +1 -0
  743. package/src/layout/grid/.readme +79 -0
  744. package/src/layout/grid/grid.scss +5 -0
  745. package/src/layout/grid/grid.ts +121 -0
  746. package/src/layout/grid/index.ts +1 -0
  747. package/src/layout/index.ts +5 -0
  748. package/src/layout/layout.ts +122 -0
  749. package/src/layout/scroll/index.ts +1 -0
  750. package/src/layout/scroll/scroll.ts +351 -0
  751. package/src/layout/v2/flex.ts +243 -0
  752. package/src/layout/v2/grid.ts +93 -0
  753. package/src/layout/v2/index.ts +1 -0
  754. package/src/lightbox/flip-directive.ts +270 -0
  755. package/src/lightbox/index.ts +4 -0
  756. package/src/lightbox/lightbox-service.ts +378 -0
  757. package/src/lightbox/lightbox.directive.ts +256 -0
  758. package/src/lightbox/lightbox.ts +417 -0
  759. package/src/list/context.ts +3 -0
  760. package/src/list/index.ts +3 -0
  761. package/src/list/list-item.ts +94 -0
  762. package/src/list/list.ts +87 -0
  763. package/src/list/readme.md +62 -0
  764. package/src/mailbox/README.md +131 -0
  765. package/src/mailbox/email-editor.ts +1071 -0
  766. package/src/mailbox/email-layout-selector.ts +58 -0
  767. package/src/mailbox/email-recipients.ts +594 -0
  768. package/src/mailbox/email-template-picker.ts +296 -0
  769. package/src/mailbox/email-viewer.ts +715 -0
  770. package/src/mailbox/index.ts +31 -0
  771. package/src/mailbox/mailbox.ts +363 -0
  772. package/src/mailbox/types.ts +181 -0
  773. package/src/map/index.ts +1 -0
  774. package/src/map/map.ts +483 -0
  775. package/src/menu/index.ts +2 -0
  776. package/src/menu/menu-item.ts +26 -0
  777. package/src/menu/menu.ts +83 -0
  778. package/src/nav-drawer/$navbar.ts +51 -0
  779. package/src/nav-drawer/appbar.ts +26 -0
  780. package/src/nav-drawer/content.ts +32 -0
  781. package/src/nav-drawer/context.ts +6 -0
  782. package/src/nav-drawer/drawer.ts +128 -0
  783. package/src/nav-drawer/index.ts +6 -0
  784. package/src/nav-drawer/navbar.ts +191 -0
  785. package/src/navigation-bar/index.ts +2 -0
  786. package/src/navigation-bar/navigation-bar-item.ts +417 -0
  787. package/src/navigation-bar/navigation-bar.ts +482 -0
  788. package/src/navigation-rail/index.ts +2 -0
  789. package/src/navigation-rail/navigation-rail-item.ts +443 -0
  790. package/src/navigation-rail/navigation-rail.ts +492 -0
  791. package/src/notification/index.ts +6 -0
  792. package/src/notification/notification-service.ts +324 -0
  793. package/src/notification/notification.scss +117 -0
  794. package/src/notification/notification.ts +263 -0
  795. package/src/notification/notify.ts +207 -0
  796. package/src/notification/outlet.ts +16 -0
  797. package/src/option/index.ts +1 -0
  798. package/src/option/option.ts +180 -0
  799. package/src/page/index.ts +1 -0
  800. package/src/page/page.ts +135 -0
  801. package/src/progress/index.ts +1 -0
  802. package/src/progress/progress.ts +143 -0
  803. package/src/qr-scanner/index.ts +1 -0
  804. package/src/qr-scanner/qr-scanner.ts +240 -0
  805. package/src/radio-group/index.ts +2 -0
  806. package/src/radio-group/radio-button.ts +81 -0
  807. package/src/radio-group/radio-group.scss +4 -0
  808. package/src/radio-group/radio-group.ts +110 -0
  809. package/src/radio-group/readme.md +315 -0
  810. package/src/range/index.ts +1 -0
  811. package/src/range/range.ts +102 -0
  812. package/src/rxjs-utils/index.ts +6 -0
  813. package/src/rxjs-utils/mutation-observer.ts +22 -0
  814. package/src/rxjs-utils/waitForElement.ts +33 -0
  815. package/src/rxjs-utils/waitForElementAll.ts +34 -0
  816. package/src/rxjs-utils/waitForElements.ts +40 -0
  817. package/src/rxjs-utils/waitForElementsAll.ts +42 -0
  818. package/src/rxjs-utils/waitUntil.ts +16 -0
  819. package/src/select/README.md +405 -0
  820. package/src/select/index.ts +2 -0
  821. package/src/select/select.ts +766 -0
  822. package/src/sheet/hook.ts +40 -0
  823. package/src/sheet/index.ts +2 -0
  824. package/src/sheet/sheet.service.ts +235 -0
  825. package/src/sheet/sheet.ts +236 -0
  826. package/src/slider/index.ts +2 -0
  827. package/src/slider/slide.ts +107 -0
  828. package/src/slider/slider.ts +164 -0
  829. package/src/steps/index.ts +3 -0
  830. package/src/steps/schmancy-step.ts +213 -0
  831. package/src/steps/schmancy-steps-container.ts +109 -0
  832. package/src/steps/steps.context.ts +23 -0
  833. package/src/store/context-array.ts +358 -0
  834. package/src/store/context-collection.ts +218 -0
  835. package/src/store/context-create.ts +284 -0
  836. package/src/store/context-object.ts +298 -0
  837. package/src/store/filter-directive.ts +614 -0
  838. package/src/store/immer-integration.ts +99 -0
  839. package/src/store/index.ts +10 -0
  840. package/src/store/selector-hook.ts +259 -0
  841. package/src/store/selectors.ts +289 -0
  842. package/src/store/storage-manager.ts +269 -0
  843. package/src/store/store.class.ts +239 -0
  844. package/src/store/types.ts +327 -0
  845. package/src/surface/context.ts +3 -0
  846. package/src/surface/index.ts +1 -0
  847. package/src/surface/surface.styles.ts +334 -0
  848. package/src/surface/surface.ts +59 -0
  849. package/src/table/index.ts +2 -0
  850. package/src/table/row.ts +60 -0
  851. package/src/table/table.ts +266 -0
  852. package/src/tabs/Readme.md +397 -0
  853. package/src/tabs/context.ts +5 -0
  854. package/src/tabs/index.ts +4 -0
  855. package/src/tabs/tab.ts +39 -0
  856. package/src/tabs/tabs-compatibility.ts +20 -0
  857. package/src/tabs/tabs-group.ts +184 -0
  858. package/src/teleport/.excalidraw +2511 -0
  859. package/src/teleport/index.ts +2 -0
  860. package/src/teleport/readme.md +91 -0
  861. package/src/teleport/teleport.component.ts +132 -0
  862. package/src/teleport/teleport.service.ts +139 -0
  863. package/src/teleport/watcher.ts +20 -0
  864. package/src/textarea/index.ts +1 -0
  865. package/src/textarea/textarea.scss +54 -0
  866. package/src/textarea/textarea.ts +432 -0
  867. package/src/theme/context.ts +28 -0
  868. package/src/theme/index.ts +17 -0
  869. package/src/theme/theme-audio-player.ts +470 -0
  870. package/src/theme/theme-controller-boat.ts +49 -0
  871. package/src/theme/theme-controller-example.md +152 -0
  872. package/src/theme/theme-controller.ts +205 -0
  873. package/src/theme/theme.component.ts +305 -0
  874. package/src/theme/theme.events.ts +59 -0
  875. package/src/theme/theme.format.ts +417 -0
  876. package/src/theme/theme.interface.ts +399 -0
  877. package/src/theme/theme.service.ts +520 -0
  878. package/src/theme/theme.style.css +619 -0
  879. package/src/theme-button/index.ts +1 -0
  880. package/src/theme-button/theme-button.ts +35 -0
  881. package/src/tooltip/index.ts +2 -0
  882. package/src/tooltip/tooltip.directive.ts +277 -0
  883. package/src/tooltip/tooltip.ts +216 -0
  884. package/src/tree/README.md +59 -0
  885. package/src/tree/index.ts +1 -0
  886. package/src/tree/tree.ts +132 -0
  887. package/src/types/events.ts +5 -0
  888. package/src/types/index.ts +3 -0
  889. package/src/types/mood-audio.types.ts +220 -0
  890. package/src/types/surface.ts +52 -0
  891. package/src/typewriter/IMPROVEMENTS.md +174 -0
  892. package/src/typewriter/QUICK_REFERENCE.md +166 -0
  893. package/src/typewriter/index.ts +1 -0
  894. package/src/typewriter/test-typewriter.html +97 -0
  895. package/src/typewriter/typewriter.ts +376 -0
  896. package/src/typography/index.ts +1 -0
  897. package/src/typography/typography.ts +448 -0
  898. package/src/utils/animation.ts +418 -0
  899. package/src/utils/hashContent.ts +12 -0
  900. package/src/utils/index.ts +6 -0
  901. package/src/utils/intersection.ts +22 -0
  902. package/src/utils/number.ts +529 -0
  903. package/src/utils/overlay-stack.ts +101 -0
  904. package/src/utils/search.ts +322 -0
  905. package/src/vite-env.d.ts +2 -0
  906. package/src/window/index.ts +10 -0
  907. package/src/window/window-manager.ts +204 -0
  908. package/src/window/window-position.ts +136 -0
  909. package/src/window/window-registry.ts +34 -0
  910. package/src/window/window.ts +724 -0
  911. package/types/mixins/baseElement.d.ts +12 -0
  912. package/types/mixins/discovery.service.d.ts +72 -0
  913. package/types/mixins/index.d.ts +2 -0
  914. package/types/mixins/surface.mixin.d.ts +39 -0
  915. package/types/src/area/area.service.d.ts +2 -0
  916. package/types/src/badge/badge.d.ts +1 -1
  917. package/types/src/boat/boat.d.ts +40 -33
  918. package/types/src/button/icon-button.d.ts +10 -0
  919. package/types/src/chips/filter-chip.d.ts +0 -12
  920. package/types/src/connectivity/connectivity-status.d.ts +25 -0
  921. package/types/src/connectivity/index.d.ts +1 -0
  922. package/types/src/content-drawer/drawer.service.d.ts +3 -0
  923. package/types/src/date-range/date-range.d.ts +2 -0
  924. package/types/src/details/details.d.ts +26 -2
  925. package/types/src/dialog/dialog-base.mixin.d.ts +7 -3
  926. package/types/src/dialog/dialog-service.d.ts +27 -1
  927. package/types/src/dialog/dialog.component.d.ts +35 -1
  928. package/types/src/directives/animate-text.d.ts +67 -0
  929. package/types/src/directives/color.d.ts +2 -3
  930. package/types/src/directives/confirm-click.d.ts +38 -0
  931. package/types/src/directives/cursor-glow.d.ts +38 -0
  932. package/types/src/directives/cycle-text.d.ts +44 -0
  933. package/types/src/directives/depth-of-field.d.ts +38 -0
  934. package/types/src/directives/drag.d.ts +8 -8
  935. package/types/src/directives/gravity.d.ts +40 -0
  936. package/types/src/directives/index.d.ts +16 -2
  937. package/types/src/directives/intersect.d.ts +60 -0
  938. package/types/src/directives/layout.d.ts +62 -0
  939. package/types/src/directives/liquid.d.ts +38 -0
  940. package/types/src/directives/living-border.d.ts +39 -0
  941. package/types/src/directives/long-press.d.ts +38 -0
  942. package/types/src/directives/magnetic.d.ts +35 -0
  943. package/types/src/directives/nebula.d.ts +80 -0
  944. package/types/src/directives/reduced-motion.d.ts +2 -0
  945. package/types/src/directives/reveal.d.ts +54 -0
  946. package/types/src/directives/ripple.d.ts +15 -5
  947. package/types/src/directives/typewriter.d.ts +50 -0
  948. package/types/src/discovery/discovery.service.d.ts +72 -0
  949. package/types/src/expand/expand-root.component.d.ts +30 -0
  950. package/types/src/expand/expand.component.d.ts +38 -0
  951. package/types/src/expand/index.d.ts +2 -0
  952. package/types/src/float/float.d.ts +14 -0
  953. package/types/src/float/index.d.ts +1 -0
  954. package/types/src/icons/icon.d.ts +14 -0
  955. package/types/src/iframe/iframe.d.ts +37 -0
  956. package/types/src/iframe/index.d.ts +1 -0
  957. package/types/src/index.d.ts +6 -1
  958. package/types/src/input/index.d.ts +1 -1
  959. package/types/src/layout/scroll/scroll.d.ts +11 -0
  960. package/types/src/lightbox/lightbox.d.ts +1 -0
  961. package/types/src/mailbox/email-recipients.d.ts +2 -2
  962. package/types/src/mailbox/types.d.ts +1 -1
  963. package/types/src/navigation-bar/navigation-bar.d.ts +17 -0
  964. package/types/src/notification/notification.d.ts +1 -0
  965. package/types/src/page/page.d.ts +6 -0
  966. package/types/src/range/index.d.ts +1 -0
  967. package/types/src/range/range.d.ts +25 -0
  968. package/types/src/sheet/sheet.d.ts +0 -1
  969. package/types/src/steps/schmancy-steps-container.d.ts +8 -6
  970. package/types/src/surface/surface.d.ts +4 -27
  971. package/types/src/surface/surface.styles.d.ts +31 -0
  972. package/types/src/tabs/tab.d.ts +1 -0
  973. package/types/src/textarea/textarea.d.ts +3 -2
  974. package/types/src/theme/context.d.ts +2 -282
  975. package/types/src/theme/theme.component.d.ts +9 -1
  976. package/types/src/theme/theme.format.d.ts +1 -1
  977. package/types/src/theme/theme.interface.d.ts +8 -1
  978. package/types/src/theme/theme.service.d.ts +20 -282
  979. package/types/src/types/surface.d.ts +27 -1
  980. package/types/src/typography/typography.d.ts +17 -3
  981. package/types/src/utils/animation.d.ts +254 -0
  982. package/types/src/utils/index.d.ts +2 -0
  983. package/types/src/utils/number.d.ts +18 -2
  984. package/types/src/utils/overlay-stack.d.ts +54 -0
  985. package/types/src/window/index.d.ts +3 -0
  986. package/types/src/window/window-manager.d.ts +49 -0
  987. package/types/src/window/window-position.d.ts +64 -0
  988. package/types/src/window/window-registry.d.ts +28 -0
  989. package/types/src/window/window.d.ts +67 -0
  990. package/ai/animated-text.md +0 -116
  991. package/ai/component-relationships.md +0 -93
  992. package/ai/context.md +0 -572
  993. package/ai/countries.md +0 -271
  994. package/ai/index.md +0 -112
  995. package/ai/navigation-bar-item.md +0 -259
  996. package/ai/payment-card-form.md +0 -242
  997. package/ai/spinner.md +0 -165
  998. package/ai/template.md +0 -144
  999. package/ai/timezone.md +0 -276
  1000. package/dist/_commonjsHelpers-Dw9sPFZy.js +0 -7
  1001. package/dist/_commonjsHelpers-Dw9sPFZy.js.map +0 -1
  1002. package/dist/_commonjsHelpers-k2hpEU-q.cjs +0 -2
  1003. package/dist/_commonjsHelpers-k2hpEU-q.cjs.map +0 -1
  1004. package/dist/ai/animated-text.md +0 -116
  1005. package/dist/ai/component-relationships.md +0 -93
  1006. package/dist/ai/context.md +0 -572
  1007. package/dist/ai/countries.md +0 -271
  1008. package/dist/ai/index.md +0 -112
  1009. package/dist/ai/navigation-bar-item.md +0 -259
  1010. package/dist/ai/payment-card-form.md +0 -242
  1011. package/dist/ai/spinner.md +0 -165
  1012. package/dist/ai/template.md +0 -144
  1013. package/dist/ai/timezone.md +0 -276
  1014. package/dist/animated-text-B3DQRJBy.cjs +0 -37
  1015. package/dist/animated-text-B3DQRJBy.cjs.map +0 -1
  1016. package/dist/animated-text-BAj4-6hE.js +0 -76
  1017. package/dist/animated-text-BAj4-6hE.js.map +0 -1
  1018. package/dist/animated-text.cjs +0 -2
  1019. package/dist/animated-text.cjs.map +0 -1
  1020. package/dist/animated-text.js +0 -2
  1021. package/dist/animated-text.js.map +0 -1
  1022. package/dist/area.cjs.map +0 -1
  1023. package/dist/area.component-CP4DZ0d8.js +0 -330
  1024. package/dist/area.component-CP4DZ0d8.js.map +0 -1
  1025. package/dist/area.component-ChxSLt16.cjs +0 -12
  1026. package/dist/area.component-ChxSLt16.cjs.map +0 -1
  1027. package/dist/area.js.map +0 -1
  1028. package/dist/audio.cjs.map +0 -1
  1029. package/dist/audio.js.map +0 -1
  1030. package/dist/autocomplete-CAaVSg4g.cjs +0 -112
  1031. package/dist/autocomplete-CAaVSg4g.cjs.map +0 -1
  1032. package/dist/autocomplete-CGbACUYd.js +0 -333
  1033. package/dist/autocomplete-CGbACUYd.js.map +0 -1
  1034. package/dist/autocomplete.cjs.map +0 -1
  1035. package/dist/autocomplete.js.map +0 -1
  1036. package/dist/avatar-nWOZXEsW.cjs +0 -273
  1037. package/dist/avatar-nWOZXEsW.cjs.map +0 -1
  1038. package/dist/avatar-rLCF6MSI.js +0 -895
  1039. package/dist/avatar-rLCF6MSI.js.map +0 -1
  1040. package/dist/badge.cjs.map +0 -1
  1041. package/dist/badge.js.map +0 -1
  1042. package/dist/boat-Ckt9v__d.js +0 -301
  1043. package/dist/boat-Ckt9v__d.js.map +0 -1
  1044. package/dist/boat-yNAZ2LLB.cjs +0 -97
  1045. package/dist/boat-yNAZ2LLB.cjs.map +0 -1
  1046. package/dist/boat.cjs.map +0 -1
  1047. package/dist/boat.js.map +0 -1
  1048. package/dist/busy.cjs.map +0 -1
  1049. package/dist/busy.js.map +0 -1
  1050. package/dist/card.cjs.map +0 -1
  1051. package/dist/card.js.map +0 -1
  1052. package/dist/checkbox-BnAlpsJN.cjs +0 -40
  1053. package/dist/checkbox-BnAlpsJN.cjs.map +0 -1
  1054. package/dist/checkbox-D22yfGe3.js +0 -526
  1055. package/dist/checkbox-D22yfGe3.js.map +0 -1
  1056. package/dist/checkbox.cjs.map +0 -1
  1057. package/dist/checkbox.js.map +0 -1
  1058. package/dist/chips.cjs.map +0 -1
  1059. package/dist/chips.js.map +0 -1
  1060. package/dist/code-highlight.cjs.map +0 -1
  1061. package/dist/code-highlight.js.map +0 -1
  1062. package/dist/code-preview-DPlQayFd.js +0 -967
  1063. package/dist/code-preview-DPlQayFd.js.map +0 -1
  1064. package/dist/code-preview-jPnX60FF.cjs +0 -193
  1065. package/dist/code-preview-jPnX60FF.cjs.map +0 -1
  1066. package/dist/components.cjs.map +0 -1
  1067. package/dist/components.js.map +0 -1
  1068. package/dist/consume-5D1qfVWM.js +0 -38
  1069. package/dist/consume-5D1qfVWM.js.map +0 -1
  1070. package/dist/consume-edta5ng5.cjs +0 -2
  1071. package/dist/consume-edta5ng5.cjs.map +0 -1
  1072. package/dist/content-drawer.cjs.map +0 -1
  1073. package/dist/content-drawer.js.map +0 -1
  1074. package/dist/context-create-B_S-sD5B.js +0 -1107
  1075. package/dist/context-create-B_S-sD5B.js.map +0 -1
  1076. package/dist/context-create-DTybDbZp.cjs +0 -2
  1077. package/dist/context-create-DTybDbZp.cjs.map +0 -1
  1078. package/dist/date-range-GFm5NG33.js +0 -639
  1079. package/dist/date-range-GFm5NG33.js.map +0 -1
  1080. package/dist/date-range-inline-CgX2o0FP.cjs +0 -44
  1081. package/dist/date-range-inline-CgX2o0FP.cjs.map +0 -1
  1082. package/dist/date-range-inline-DTQLESAZ.js +0 -197
  1083. package/dist/date-range-inline-DTQLESAZ.js.map +0 -1
  1084. package/dist/date-range-inline.cjs.map +0 -1
  1085. package/dist/date-range-inline.js.map +0 -1
  1086. package/dist/date-range-ug3B9CFT.cjs +0 -119
  1087. package/dist/date-range-ug3B9CFT.cjs.map +0 -1
  1088. package/dist/date-range.cjs.map +0 -1
  1089. package/dist/date-range.js.map +0 -1
  1090. package/dist/delay-CWtBL0VD.cjs +0 -10
  1091. package/dist/delay-CWtBL0VD.cjs.map +0 -1
  1092. package/dist/delay-DEe1CmHc.js +0 -288
  1093. package/dist/delay-DEe1CmHc.js.map +0 -1
  1094. package/dist/delay.cjs.map +0 -1
  1095. package/dist/delay.js.map +0 -1
  1096. package/dist/details-D-LXW23W.js +0 -100
  1097. package/dist/details-D-LXW23W.js.map +0 -1
  1098. package/dist/details-DVke77dU.cjs +0 -55
  1099. package/dist/details-DVke77dU.cjs.map +0 -1
  1100. package/dist/details.cjs.map +0 -1
  1101. package/dist/details.js.map +0 -1
  1102. package/dist/dialog-service-C86xTS8q.cjs +0 -2
  1103. package/dist/dialog-service-C86xTS8q.cjs.map +0 -1
  1104. package/dist/dialog-service-D9E3jLAR.js +0 -118
  1105. package/dist/dialog-service-D9E3jLAR.js.map +0 -1
  1106. package/dist/dialog.component-BM0D-hK9.cjs +0 -48
  1107. package/dist/dialog.component-BM0D-hK9.cjs.map +0 -1
  1108. package/dist/dialog.component-a7FlKhGD.js +0 -145
  1109. package/dist/dialog.component-a7FlKhGD.js.map +0 -1
  1110. package/dist/discovery.service-BbYjU5x8.js +0 -21
  1111. package/dist/discovery.service-BbYjU5x8.js.map +0 -1
  1112. package/dist/discovery.service-BpGCuXPd.cjs +0 -2
  1113. package/dist/discovery.service-BpGCuXPd.cjs.map +0 -1
  1114. package/dist/divider-CzTpxOqt.js +0 -84
  1115. package/dist/divider-CzTpxOqt.js.map +0 -1
  1116. package/dist/divider-D8KStUhN.cjs +0 -58
  1117. package/dist/divider-D8KStUhN.cjs.map +0 -1
  1118. package/dist/divider.cjs.map +0 -1
  1119. package/dist/divider.js.map +0 -1
  1120. package/dist/dropdown-content-CngZN3vv.cjs +0 -58
  1121. package/dist/dropdown-content-CngZN3vv.cjs.map +0 -1
  1122. package/dist/dropdown-content-DCn-g0-f.js +0 -147
  1123. package/dist/dropdown-content-DCn-g0-f.js.map +0 -1
  1124. package/dist/email-recipients-BhntMZMf.cjs +0 -1173
  1125. package/dist/email-recipients-BhntMZMf.cjs.map +0 -1
  1126. package/dist/email-recipients-BzjAKNJ0.js +0 -1733
  1127. package/dist/email-recipients-BzjAKNJ0.js.map +0 -1
  1128. package/dist/emotional-sounds-BRnFhww6.js +0 -234
  1129. package/dist/emotional-sounds-BRnFhww6.js.map +0 -1
  1130. package/dist/emotional-sounds-DVGhmoZf.cjs +0 -2
  1131. package/dist/emotional-sounds-DVGhmoZf.cjs.map +0 -1
  1132. package/dist/extra.cjs.map +0 -1
  1133. package/dist/extra.js.map +0 -1
  1134. package/dist/flex-5dR48zie.js +0 -183
  1135. package/dist/flex-5dR48zie.js.map +0 -1
  1136. package/dist/flex-oHl2EfYB.cjs +0 -18
  1137. package/dist/flex-oHl2EfYB.cjs.map +0 -1
  1138. package/dist/flow-D0e7hGXO.cjs +0 -2
  1139. package/dist/flow-D0e7hGXO.cjs.map +0 -1
  1140. package/dist/flow-DXYqC9OA.js +0 -340
  1141. package/dist/flow-DXYqC9OA.js.map +0 -1
  1142. package/dist/form-BlPiAPt7.cjs +0 -2
  1143. package/dist/form-BlPiAPt7.cjs.map +0 -1
  1144. package/dist/form-BxVM6JTn.js +0 -141
  1145. package/dist/form-BxVM6JTn.js.map +0 -1
  1146. package/dist/form.cjs.map +0 -1
  1147. package/dist/form.js.map +0 -1
  1148. package/dist/formField.mixin-BCGA7Ea3.js +0 -48
  1149. package/dist/formField.mixin-BCGA7Ea3.js.map +0 -1
  1150. package/dist/formField.mixin-BfJMifU9.cjs +0 -2
  1151. package/dist/formField.mixin-BfJMifU9.cjs.map +0 -1
  1152. package/dist/height-CfECBO2j.js +0 -44
  1153. package/dist/height-CfECBO2j.js.map +0 -1
  1154. package/dist/height-Z70qJYJK.cjs +0 -2
  1155. package/dist/height-Z70qJYJK.cjs.map +0 -1
  1156. package/dist/icon-DHEXr3c-.cjs +0 -49
  1157. package/dist/icon-DHEXr3c-.cjs.map +0 -1
  1158. package/dist/icon-DYpLoegR.js +0 -84
  1159. package/dist/icon-DYpLoegR.js.map +0 -1
  1160. package/dist/icon-button-CmZBLHWC.js +0 -164
  1161. package/dist/icon-button-CmZBLHWC.js.map +0 -1
  1162. package/dist/icon-button-IbSX8C98.cjs +0 -70
  1163. package/dist/icon-button-IbSX8C98.cjs.map +0 -1
  1164. package/dist/icons.cjs.map +0 -1
  1165. package/dist/icons.js.map +0 -1
  1166. package/dist/index-CCi1otmh.cjs +0 -2
  1167. package/dist/index-CCi1otmh.cjs.map +0 -1
  1168. package/dist/index-CW6PhEkx.js +0 -17
  1169. package/dist/index-CW6PhEkx.js.map +0 -1
  1170. package/dist/index.cjs.map +0 -1
  1171. package/dist/index.js.map +0 -1
  1172. package/dist/input-BByjYlgl.cjs +0 -51
  1173. package/dist/input-BByjYlgl.cjs.map +0 -1
  1174. package/dist/input-D0cQ9DOY.js +0 -237
  1175. package/dist/input-D0cQ9DOY.js.map +0 -1
  1176. package/dist/input-chip-B5ErXgCB.js +0 -206
  1177. package/dist/input-chip-B5ErXgCB.js.map +0 -1
  1178. package/dist/input-chip-DkWaTciP.cjs +0 -147
  1179. package/dist/input-chip-DkWaTciP.cjs.map +0 -1
  1180. package/dist/input.cjs.map +0 -1
  1181. package/dist/input.js.map +0 -1
  1182. package/dist/intersection-CJxzz8c-.js +0 -15
  1183. package/dist/intersection-CJxzz8c-.js.map +0 -1
  1184. package/dist/intersection-CVvaDv96.cjs +0 -2
  1185. package/dist/intersection-CVvaDv96.cjs.map +0 -1
  1186. package/dist/json-BZVe74np.cjs +0 -12
  1187. package/dist/json-BZVe74np.cjs.map +0 -1
  1188. package/dist/json-PKewOWuJ.js +0 -51
  1189. package/dist/json-PKewOWuJ.js.map +0 -1
  1190. package/dist/layout.cjs.map +0 -1
  1191. package/dist/layout.js.map +0 -1
  1192. package/dist/lightbox-service-D-0JtxB1.cjs +0 -202
  1193. package/dist/lightbox-service-D-0JtxB1.cjs.map +0 -1
  1194. package/dist/lightbox-service-DZMnb1eU.js +0 -458
  1195. package/dist/lightbox-service-DZMnb1eU.js.map +0 -1
  1196. package/dist/lightbox.cjs.map +0 -1
  1197. package/dist/lightbox.js.map +0 -1
  1198. package/dist/list-B_2m7l3g.cjs +0 -17
  1199. package/dist/list-B_2m7l3g.cjs.map +0 -1
  1200. package/dist/list-CW56LV-v.js +0 -69
  1201. package/dist/list-CW56LV-v.js.map +0 -1
  1202. package/dist/list.cjs.map +0 -1
  1203. package/dist/list.js.map +0 -1
  1204. package/dist/litElement.mixin-CrpeGpZ7.cjs +0 -2
  1205. package/dist/litElement.mixin-CrpeGpZ7.cjs.map +0 -1
  1206. package/dist/litElement.mixin-DHZXtvYq.js +0 -15
  1207. package/dist/litElement.mixin-DHZXtvYq.js.map +0 -1
  1208. package/dist/mailbox.cjs.map +0 -1
  1209. package/dist/mailbox.js.map +0 -1
  1210. package/dist/map-2Hl60a0A.js +0 -175
  1211. package/dist/map-2Hl60a0A.js.map +0 -1
  1212. package/dist/map-DyPS9G7M.cjs +0 -81
  1213. package/dist/map-DyPS9G7M.cjs.map +0 -1
  1214. package/dist/map.cjs.map +0 -1
  1215. package/dist/map.js.map +0 -1
  1216. package/dist/media-CS8HpKnK.cjs +0 -152
  1217. package/dist/media-CS8HpKnK.cjs.map +0 -1
  1218. package/dist/media-DtWbcRxL.js +0 -244
  1219. package/dist/media-DtWbcRxL.js.map +0 -1
  1220. package/dist/menu-Caju5-zd.js +0 -60
  1221. package/dist/menu-Caju5-zd.js.map +0 -1
  1222. package/dist/menu-rX5RPAI2.cjs +0 -24
  1223. package/dist/menu-rX5RPAI2.cjs.map +0 -1
  1224. package/dist/menu.cjs.map +0 -1
  1225. package/dist/menu.js.map +0 -1
  1226. package/dist/nav-drawer.cjs.map +0 -1
  1227. package/dist/nav-drawer.js.map +0 -1
  1228. package/dist/navigation-bar.cjs.map +0 -1
  1229. package/dist/navigation-bar.js.map +0 -1
  1230. package/dist/navigation-rail-Ctketq5a.js +0 -256
  1231. package/dist/navigation-rail-Ctketq5a.js.map +0 -1
  1232. package/dist/navigation-rail-DC9_oSIM.cjs +0 -79
  1233. package/dist/navigation-rail-DC9_oSIM.cjs.map +0 -1
  1234. package/dist/notification-service-CUlfXqmj.js +0 -155
  1235. package/dist/notification-service-CUlfXqmj.js.map +0 -1
  1236. package/dist/notification-service-DknbpqTt.cjs +0 -19
  1237. package/dist/notification-service-DknbpqTt.cjs.map +0 -1
  1238. package/dist/notification.cjs.map +0 -1
  1239. package/dist/notification.js.map +0 -1
  1240. package/dist/notify-DJSOWTxv.js +0 -35
  1241. package/dist/notify-DJSOWTxv.js.map +0 -1
  1242. package/dist/notify-DickIEHW.cjs +0 -2
  1243. package/dist/notify-DickIEHW.cjs.map +0 -1
  1244. package/dist/number-B7aCRYnH.cjs +0 -2
  1245. package/dist/number-B7aCRYnH.cjs.map +0 -1
  1246. package/dist/number-BhTiptLA.js +0 -99
  1247. package/dist/number-BhTiptLA.js.map +0 -1
  1248. package/dist/option-Bng41-rY.js +0 -77
  1249. package/dist/option-Bng41-rY.js.map +0 -1
  1250. package/dist/option-DYT5Rkgy.cjs +0 -44
  1251. package/dist/option-DYT5Rkgy.cjs.map +0 -1
  1252. package/dist/option.cjs.map +0 -1
  1253. package/dist/option.js.map +0 -1
  1254. package/dist/page-BLn9gtSd.cjs +0 -20
  1255. package/dist/page-BLn9gtSd.cjs.map +0 -1
  1256. package/dist/page-D-ROcQDd.js +0 -48
  1257. package/dist/page-D-ROcQDd.js.map +0 -1
  1258. package/dist/payment-card-form-5UtfWzoW.cjs +0 -74
  1259. package/dist/payment-card-form-5UtfWzoW.cjs.map +0 -1
  1260. package/dist/payment-card-form-BJa4RgF2.js +0 -515
  1261. package/dist/payment-card-form-BJa4RgF2.js.map +0 -1
  1262. package/dist/pills-BS5rZ6C3.js +0 -346
  1263. package/dist/pills-BS5rZ6C3.js.map +0 -1
  1264. package/dist/pills-Blf7IAeq.cjs +0 -113
  1265. package/dist/pills-Blf7IAeq.cjs.map +0 -1
  1266. package/dist/progress-DlhYniW_.cjs +0 -35
  1267. package/dist/progress-DlhYniW_.cjs.map +0 -1
  1268. package/dist/progress-yTIX6EqC.js +0 -56
  1269. package/dist/progress-yTIX6EqC.js.map +0 -1
  1270. package/dist/progress.cjs.map +0 -1
  1271. package/dist/progress.js.map +0 -1
  1272. package/dist/provide-BxZ2kn_p.cjs +0 -2
  1273. package/dist/provide-BxZ2kn_p.cjs.map +0 -1
  1274. package/dist/provide-tcktw8xB.js +0 -100
  1275. package/dist/provide-tcktw8xB.js.map +0 -1
  1276. package/dist/qr-scanner-DOs7uNS_.cjs +0 -29
  1277. package/dist/qr-scanner-DOs7uNS_.cjs.map +0 -1
  1278. package/dist/qr-scanner-DjZ8mgHV.js +0 -743
  1279. package/dist/qr-scanner-DjZ8mgHV.js.map +0 -1
  1280. package/dist/radio-button-N_PrrxKB.cjs +0 -41
  1281. package/dist/radio-button-N_PrrxKB.cjs.map +0 -1
  1282. package/dist/radio-button-me3SRHGu.js +0 -115
  1283. package/dist/radio-button-me3SRHGu.js.map +0 -1
  1284. package/dist/radio-group.cjs.map +0 -1
  1285. package/dist/radio-group.js.map +0 -1
  1286. package/dist/ripple-BgJXbNSP.js +0 -124
  1287. package/dist/ripple-BgJXbNSP.js.map +0 -1
  1288. package/dist/ripple-x6sTX02K.cjs +0 -16
  1289. package/dist/ripple-x6sTX02K.cjs.map +0 -1
  1290. package/dist/rxjs-utils.cjs.map +0 -1
  1291. package/dist/rxjs-utils.js.map +0 -1
  1292. package/dist/schmancy-steps-container-J6P-NNNj.js +0 -156
  1293. package/dist/schmancy-steps-container-J6P-NNNj.js.map +0 -1
  1294. package/dist/schmancy-steps-container-T57BKMzi.cjs +0 -70
  1295. package/dist/schmancy-steps-container-T57BKMzi.cjs.map +0 -1
  1296. package/dist/scroll-C_gfUgjn.js +0 -87
  1297. package/dist/scroll-C_gfUgjn.js.map +0 -1
  1298. package/dist/scroll-CecsowP7.cjs +0 -27
  1299. package/dist/scroll-CecsowP7.cjs.map +0 -1
  1300. package/dist/search-B1s7thB0.cjs +0 -2
  1301. package/dist/search-B1s7thB0.cjs.map +0 -1
  1302. package/dist/search-DxxnLa5u.js +0 -95
  1303. package/dist/search-DxxnLa5u.js.map +0 -1
  1304. package/dist/select-BBA0gBHf.js +0 -280
  1305. package/dist/select-BBA0gBHf.js.map +0 -1
  1306. package/dist/select-D9oCjv7N.cjs +0 -57
  1307. package/dist/select-D9oCjv7N.cjs.map +0 -1
  1308. package/dist/select.cjs.map +0 -1
  1309. package/dist/select.js.map +0 -1
  1310. package/dist/selector-hook-9w2auh2O.cjs +0 -2
  1311. package/dist/selector-hook-9w2auh2O.cjs.map +0 -1
  1312. package/dist/selector-hook-CHV4kDMd.js +0 -319
  1313. package/dist/selector-hook-CHV4kDMd.js.map +0 -1
  1314. package/dist/sheet-0oUfBmXX.cjs +0 -15
  1315. package/dist/sheet-0oUfBmXX.cjs.map +0 -1
  1316. package/dist/sheet-CNcDT3VP.js +0 -97
  1317. package/dist/sheet-CNcDT3VP.js.map +0 -1
  1318. package/dist/sheet.cjs.map +0 -1
  1319. package/dist/sheet.js.map +0 -1
  1320. package/dist/sheet.service-2MobB-9z.js +0 -68
  1321. package/dist/sheet.service-2MobB-9z.js.map +0 -1
  1322. package/dist/sheet.service-su_7yDQ-.cjs +0 -2
  1323. package/dist/sheet.service-su_7yDQ-.cjs.map +0 -1
  1324. package/dist/slider-CV-Ehp_5.cjs +0 -83
  1325. package/dist/slider-CV-Ehp_5.cjs.map +0 -1
  1326. package/dist/slider-CkE-iFUy.js +0 -161
  1327. package/dist/slider-CkE-iFUy.js.map +0 -1
  1328. package/dist/sound.service-Nza4c6wv.js +0 -102
  1329. package/dist/sound.service-Nza4c6wv.js.map +0 -1
  1330. package/dist/sound.service-eRirZw59.cjs +0 -2
  1331. package/dist/sound.service-eRirZw59.cjs.map +0 -1
  1332. package/dist/spinner-Bfn8KC-9.cjs +0 -135
  1333. package/dist/spinner-Bfn8KC-9.cjs.map +0 -1
  1334. package/dist/spinner-DiMbWXp9.js +0 -168
  1335. package/dist/spinner-DiMbWXp9.js.map +0 -1
  1336. package/dist/store.cjs.map +0 -1
  1337. package/dist/store.js.map +0 -1
  1338. package/dist/suggestion-chip-CEDqUNoS.js +0 -481
  1339. package/dist/suggestion-chip-CEDqUNoS.js.map +0 -1
  1340. package/dist/suggestion-chip-HhsLtZXR.cjs +0 -271
  1341. package/dist/suggestion-chip-HhsLtZXR.cjs.map +0 -1
  1342. package/dist/surface-CW3H23Va.cjs +0 -199
  1343. package/dist/surface-CW3H23Va.cjs.map +0 -1
  1344. package/dist/surface-eBfnSwQS.js +0 -220
  1345. package/dist/surface-eBfnSwQS.js.map +0 -1
  1346. package/dist/surface.cjs.map +0 -1
  1347. package/dist/surface.js.map +0 -1
  1348. package/dist/table-D0tiSL_u.cjs +0 -64
  1349. package/dist/table-D0tiSL_u.cjs.map +0 -1
  1350. package/dist/table-Dmo4TvTx.js +0 -561
  1351. package/dist/table-Dmo4TvTx.js.map +0 -1
  1352. package/dist/table.cjs.map +0 -1
  1353. package/dist/table.js.map +0 -1
  1354. package/dist/tabs-compatibility-Bit6y6en.js +0 -104
  1355. package/dist/tabs-compatibility-Bit6y6en.js.map +0 -1
  1356. package/dist/tabs-compatibility-Vq_2-ekz.cjs +0 -35
  1357. package/dist/tabs-compatibility-Vq_2-ekz.cjs.map +0 -1
  1358. package/dist/tabs.cjs.map +0 -1
  1359. package/dist/tabs.js.map +0 -1
  1360. package/dist/tailwind.mixin-Bp_PR6yc.js +0 -67
  1361. package/dist/tailwind.mixin-Bp_PR6yc.js.map +0 -1
  1362. package/dist/tailwind.mixin-Cp4PyXok.cjs +0 -2
  1363. package/dist/tailwind.mixin-Cp4PyXok.cjs.map +0 -1
  1364. package/dist/teleport.cjs.map +0 -1
  1365. package/dist/teleport.js.map +0 -1
  1366. package/dist/textarea-B1d1QCqT.js +0 -134
  1367. package/dist/textarea-B1d1QCqT.js.map +0 -1
  1368. package/dist/textarea-DG8CHhZA.cjs +0 -44
  1369. package/dist/textarea-DG8CHhZA.cjs.map +0 -1
  1370. package/dist/textarea.cjs.map +0 -1
  1371. package/dist/textarea.js.map +0 -1
  1372. package/dist/theme-button-CPL6Eaqd.cjs +0 -9
  1373. package/dist/theme-button-CPL6Eaqd.cjs.map +0 -1
  1374. package/dist/theme-button-CrLuMQNe.js +0 -27
  1375. package/dist/theme-button-CrLuMQNe.js.map +0 -1
  1376. package/dist/theme-button.cjs.map +0 -1
  1377. package/dist/theme-button.js.map +0 -1
  1378. package/dist/theme-controller-boat-CXbNJSI3.cjs +0 -178
  1379. package/dist/theme-controller-boat-CXbNJSI3.cjs.map +0 -1
  1380. package/dist/theme-controller-boat-CzSmjyKq.js +0 -1159
  1381. package/dist/theme-controller-boat-CzSmjyKq.js.map +0 -1
  1382. package/dist/theme.cjs.map +0 -1
  1383. package/dist/theme.events-CPSLaOlR.js +0 -6
  1384. package/dist/theme.events-CPSLaOlR.js.map +0 -1
  1385. package/dist/theme.events-Car6U_SQ.cjs +0 -2
  1386. package/dist/theme.events-Car6U_SQ.cjs.map +0 -1
  1387. package/dist/theme.interface-BLfE5J_1.js +0 -5
  1388. package/dist/theme.interface-BLfE5J_1.js.map +0 -1
  1389. package/dist/theme.interface-BMeNadVb.cjs +0 -2
  1390. package/dist/theme.interface-BMeNadVb.cjs.map +0 -1
  1391. package/dist/theme.js.map +0 -1
  1392. package/dist/timezone-4vwX0BgA.js +0 -112
  1393. package/dist/timezone-4vwX0BgA.js.map +0 -1
  1394. package/dist/timezone-BxvQcqe1.cjs +0 -32
  1395. package/dist/timezone-BxvQcqe1.cjs.map +0 -1
  1396. package/dist/tooltip-CjdvBf4X.js +0 -119
  1397. package/dist/tooltip-CjdvBf4X.js.map +0 -1
  1398. package/dist/tooltip-ZtnGjoJd.cjs +0 -7
  1399. package/dist/tooltip-ZtnGjoJd.cjs.map +0 -1
  1400. package/dist/tree-CBEjV7jP.js +0 -65
  1401. package/dist/tree-CBEjV7jP.js.map +0 -1
  1402. package/dist/tree-DP5U00NA.cjs +0 -27
  1403. package/dist/tree-DP5U00NA.cjs.map +0 -1
  1404. package/dist/tslib.es6-DgOcxv4s.cjs +0 -2
  1405. package/dist/tslib.es6-DgOcxv4s.cjs.map +0 -1
  1406. package/dist/tslib.es6-ujVQHAQ4.js +0 -10
  1407. package/dist/tslib.es6-ujVQHAQ4.js.map +0 -1
  1408. package/dist/typewriter-C6kFjLcX.cjs +0 -124
  1409. package/dist/typewriter-C6kFjLcX.cjs.map +0 -1
  1410. package/dist/typewriter-Eo5qXoGC.js +0 -555
  1411. package/dist/typewriter-Eo5qXoGC.js.map +0 -1
  1412. package/dist/typewriter.cjs.map +0 -1
  1413. package/dist/typewriter.js.map +0 -1
  1414. package/dist/typography-C_1gdM2I.js +0 -264
  1415. package/dist/typography-C_1gdM2I.js.map +0 -1
  1416. package/dist/typography-DGyjlLCE.cjs +0 -243
  1417. package/dist/typography-DGyjlLCE.cjs.map +0 -1
  1418. package/dist/utils-C38P63L6.cjs +0 -2
  1419. package/dist/utils-C38P63L6.cjs.map +0 -1
  1420. package/dist/utils-CYOVFxSx.js +0 -150
  1421. package/dist/utils-CYOVFxSx.js.map +0 -1
  1422. package/dist/utils.cjs.map +0 -1
  1423. package/dist/utils.js.map +0 -1
  1424. package/types/src/animated-text/animated-text.d.ts +0 -30
  1425. package/types/src/animated-text/index.d.ts +0 -1
  1426. 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]}