@mhmo91/schmancy 0.8.6 → 0.9.2

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 (1396) hide show
  1. package/README.md +110 -1
  2. package/ai/animation.md +64 -0
  3. package/ai/area.md +35 -256
  4. package/ai/autocomplete.md +44 -162
  5. package/ai/avatar.md +47 -178
  6. package/ai/badge.md +41 -108
  7. package/ai/busy.md +25 -184
  8. package/ai/button.md +52 -150
  9. package/ai/card.md +42 -215
  10. package/ai/checkbox.md +32 -135
  11. package/ai/chips.md +73 -383
  12. package/ai/code-highlight.md +33 -226
  13. package/ai/content-drawer.md +65 -232
  14. package/ai/date-range.md +43 -198
  15. package/ai/details.md +48 -453
  16. package/ai/dialog.md +55 -164
  17. package/ai/directives.md +258 -405
  18. package/ai/divider.md +15 -137
  19. package/ai/dropdown.md +44 -235
  20. package/ai/form.md +41 -137
  21. package/ai/icons.md +31 -235
  22. package/ai/input.md +50 -210
  23. package/ai/lightbox.md +25 -370
  24. package/ai/list.md +51 -130
  25. package/ai/menu.md +25 -134
  26. package/ai/mixins.md +70 -0
  27. package/ai/nav-drawer.md +30 -184
  28. package/ai/navigation-bar.md +27 -184
  29. package/ai/navigation-rail.md +62 -630
  30. package/ai/notification.md +49 -183
  31. package/ai/progress.md +26 -65
  32. package/ai/radio-group.md +45 -189
  33. package/ai/select.md +49 -209
  34. package/ai/sheet.md +74 -506
  35. package/ai/steps.md +30 -392
  36. package/ai/store.md +60 -247
  37. package/ai/surface.md +58 -245
  38. package/ai/table.md +56 -330
  39. package/ai/tabs.md +31 -176
  40. package/ai/textarea.md +48 -232
  41. package/ai/theme.md +40 -1089
  42. package/ai/tooltip.md +35 -146
  43. package/ai/tree.md +45 -271
  44. package/ai/typography.md +43 -296
  45. package/custom-elements.json +10955 -0
  46. package/dist/ai/animation.md +64 -0
  47. package/dist/ai/area.md +35 -256
  48. package/dist/ai/autocomplete.md +44 -162
  49. package/dist/ai/avatar.md +47 -178
  50. package/dist/ai/badge.md +41 -108
  51. package/dist/ai/busy.md +25 -184
  52. package/dist/ai/button.md +52 -150
  53. package/dist/ai/card.md +42 -215
  54. package/dist/ai/checkbox.md +32 -135
  55. package/dist/ai/chips.md +73 -383
  56. package/dist/ai/code-highlight.md +33 -226
  57. package/dist/ai/content-drawer.md +65 -232
  58. package/dist/ai/date-range.md +43 -198
  59. package/dist/ai/details.md +48 -453
  60. package/dist/ai/dialog.md +55 -164
  61. package/dist/ai/directives.md +258 -405
  62. package/dist/ai/divider.md +15 -137
  63. package/dist/ai/dropdown.md +44 -235
  64. package/dist/ai/form.md +41 -137
  65. package/dist/ai/icons.md +31 -235
  66. package/dist/ai/input.md +50 -210
  67. package/dist/ai/lightbox.md +25 -370
  68. package/dist/ai/list.md +51 -130
  69. package/dist/ai/menu.md +25 -134
  70. package/dist/ai/mixins.md +70 -0
  71. package/dist/ai/nav-drawer.md +30 -184
  72. package/dist/ai/navigation-bar.md +27 -184
  73. package/dist/ai/navigation-rail.md +62 -630
  74. package/dist/ai/notification.md +49 -183
  75. package/dist/ai/progress.md +26 -65
  76. package/dist/ai/radio-group.md +45 -189
  77. package/dist/ai/select.md +49 -209
  78. package/dist/ai/sheet.md +74 -506
  79. package/dist/ai/steps.md +30 -392
  80. package/dist/ai/store.md +60 -247
  81. package/dist/ai/surface.md +58 -245
  82. package/dist/ai/table.md +56 -330
  83. package/dist/ai/tabs.md +31 -176
  84. package/dist/ai/textarea.md +48 -232
  85. package/dist/ai/theme.md +40 -1089
  86. package/dist/ai/tooltip.md +35 -146
  87. package/dist/ai/tree.md +45 -271
  88. package/dist/ai/typography.md +43 -296
  89. package/dist/animation-BK-8BwY8.js +173 -0
  90. package/dist/animation-BK-8BwY8.js.map +1 -0
  91. package/dist/animation-CO_Csq84.cjs +16 -0
  92. package/dist/animation-CO_Csq84.cjs.map +1 -0
  93. package/dist/area-1h9xEpTc.cjs +12 -0
  94. package/dist/area-1h9xEpTc.cjs.map +1 -0
  95. package/dist/area-DbBcfm5p.js +590 -0
  96. package/dist/area-DbBcfm5p.js.map +1 -0
  97. package/dist/area.cjs +1 -2
  98. package/dist/area.js +2 -29
  99. package/dist/audio-DtYYgzYD.cjs +1 -0
  100. package/dist/audio-DtYYgzYD.cjs.map +1 -0
  101. package/dist/audio-kz8UgPTO.js +335 -0
  102. package/dist/audio-kz8UgPTO.js.map +1 -0
  103. package/dist/audio.cjs +1 -2
  104. package/dist/audio.js +3 -9
  105. package/dist/autocomplete-DDVsegep.js +378 -0
  106. package/dist/autocomplete-DDVsegep.js.map +1 -0
  107. package/dist/autocomplete-OE70CcYP.cjs +111 -0
  108. package/dist/autocomplete-OE70CcYP.cjs.map +1 -0
  109. package/dist/autocomplete.cjs +1 -2
  110. package/dist/autocomplete.js +1 -2
  111. package/dist/badge.cjs +1 -2
  112. package/dist/badge.js +2 -6
  113. package/dist/boat-Cf1oJ0ka.cjs +80 -0
  114. package/dist/boat-Cf1oJ0ka.cjs.map +1 -0
  115. package/dist/boat-T8Ov4-yA.js +347 -0
  116. package/dist/boat-T8Ov4-yA.js.map +1 -0
  117. package/dist/boat.cjs +1 -2
  118. package/dist/boat.js +2 -5
  119. package/dist/busy-BD6D5P-l.js +167 -0
  120. package/dist/busy-BD6D5P-l.js.map +1 -0
  121. package/dist/busy-DF9wztWL.cjs +134 -0
  122. package/dist/busy-DF9wztWL.cjs.map +1 -0
  123. package/dist/busy.cjs +1 -2
  124. package/dist/busy.js +1 -2
  125. package/dist/button.cjs +113 -2
  126. package/dist/button.cjs.map +1 -1
  127. package/dist/button.js +398 -5
  128. package/dist/button.js.map +1 -1
  129. package/dist/card-Csvu8UJ9.cjs +177 -0
  130. package/dist/card-Csvu8UJ9.cjs.map +1 -0
  131. package/dist/card-DM_miKMd.js +284 -0
  132. package/dist/card-DM_miKMd.js.map +1 -0
  133. package/dist/card.cjs +1 -2
  134. package/dist/card.js +1 -2
  135. package/dist/charts.cjs +112 -2
  136. package/dist/charts.cjs.map +1 -1
  137. package/dist/charts.js +368 -8
  138. package/dist/charts.js.map +1 -1
  139. package/dist/checkbox-BgGtMaMR.js +610 -0
  140. package/dist/checkbox-BgGtMaMR.js.map +1 -0
  141. package/dist/checkbox-sJujc_ga.cjs +39 -0
  142. package/dist/checkbox-sJujc_ga.cjs.map +1 -0
  143. package/dist/checkbox.cjs +1 -2
  144. package/dist/checkbox.js +2 -5
  145. package/dist/chips-BZaH4wez.js +645 -0
  146. package/dist/chips-BZaH4wez.js.map +1 -0
  147. package/dist/chips-D_e6wijp.cjs +253 -0
  148. package/dist/chips-D_e6wijp.cjs.map +1 -0
  149. package/dist/chips.cjs +1 -2
  150. package/dist/chips.js +3 -10
  151. package/dist/chunk-BCfY8kxB.cjs +1 -0
  152. package/dist/chunk-C_1VqBVD.js +11 -0
  153. package/dist/code-highlight-DlhERv_O.cjs +190 -0
  154. package/dist/code-highlight-DlhERv_O.cjs.map +1 -0
  155. package/dist/code-highlight-Q3cc6ukq.js +290 -0
  156. package/dist/code-highlight-Q3cc6ukq.js.map +1 -0
  157. package/dist/code-highlight.cjs +1 -2
  158. package/dist/code-highlight.js +2 -7
  159. package/dist/components-CRhkB3V2.js +730 -0
  160. package/dist/components-CRhkB3V2.js.map +1 -0
  161. package/dist/components-DnlEYYDs.cjs +73 -0
  162. package/dist/components-DnlEYYDs.cjs.map +1 -0
  163. package/dist/components.cjs +1 -2
  164. package/dist/components.js +2 -5
  165. package/dist/connectivity.cjs +59 -0
  166. package/dist/connectivity.cjs.map +1 -0
  167. package/dist/connectivity.js +86 -0
  168. package/dist/connectivity.js.map +1 -0
  169. package/dist/content-drawer.cjs +1 -2
  170. package/dist/content-drawer.js +2 -13
  171. package/dist/cursor-glow-Ah7VXSj7.js +46 -0
  172. package/dist/cursor-glow-Ah7VXSj7.js.map +1 -0
  173. package/dist/cursor-glow-DtSy_PJd.cjs +1 -0
  174. package/dist/cursor-glow-DtSy_PJd.cjs.map +1 -0
  175. package/dist/date-range-C0IYnvHF.js +946 -0
  176. package/dist/date-range-C0IYnvHF.js.map +1 -0
  177. package/dist/date-range-cymbTDnl.cjs +131 -0
  178. package/dist/date-range-cymbTDnl.cjs.map +1 -0
  179. package/dist/date-range-inline-0ENN4Plz.js +267 -0
  180. package/dist/date-range-inline-0ENN4Plz.js.map +1 -0
  181. package/dist/date-range-inline-Cfwt-ReH.cjs +43 -0
  182. package/dist/date-range-inline-Cfwt-ReH.cjs.map +1 -0
  183. package/dist/date-range-inline.cjs +1 -2
  184. package/dist/date-range-inline.js +2 -5
  185. package/dist/date-range.cjs +1 -2
  186. package/dist/date-range.js +2 -6
  187. package/dist/delay-D1dVP93u.js +346 -0
  188. package/dist/delay-D1dVP93u.js.map +1 -0
  189. package/dist/delay-D6mQLUp-.cjs +9 -0
  190. package/dist/delay-D6mQLUp-.cjs.map +1 -0
  191. package/dist/delay.cjs +1 -2
  192. package/dist/delay.js +2 -6
  193. package/dist/details-CPT_Mi4e.cjs +168 -0
  194. package/dist/details-CPT_Mi4e.cjs.map +1 -0
  195. package/dist/details-Cv4OOrVW.js +293 -0
  196. package/dist/details-Cv4OOrVW.js.map +1 -0
  197. package/dist/details.cjs +1 -2
  198. package/dist/details.js +2 -5
  199. package/dist/dialog-service-NZEvyEK-.js +193 -0
  200. package/dist/dialog-service-NZEvyEK-.js.map +1 -0
  201. package/dist/dialog-service-VnW4gkmE.cjs +1 -0
  202. package/dist/dialog-service-VnW4gkmE.cjs.map +1 -0
  203. package/dist/dialog.cjs +82 -2
  204. package/dist/dialog.cjs.map +1 -1
  205. package/dist/dialog.js +396 -9
  206. package/dist/dialog.js.map +1 -1
  207. package/dist/directives.cjs +108 -2
  208. package/dist/directives.cjs.map +1 -1
  209. package/dist/directives.js +1362 -14
  210. package/dist/directives.js.map +1 -1
  211. package/dist/discovery.cjs +1 -2
  212. package/dist/discovery.cjs.map +1 -1
  213. package/dist/discovery.js +61 -6
  214. package/dist/discovery.js.map +1 -1
  215. package/dist/divider-DDC-kND3.js +87 -0
  216. package/dist/divider-DDC-kND3.js.map +1 -0
  217. package/dist/divider-nZ_2to2N.cjs +57 -0
  218. package/dist/divider-nZ_2to2N.cjs.map +1 -0
  219. package/dist/divider.cjs +1 -2
  220. package/dist/divider.js +1 -2
  221. package/dist/dropdown.cjs +57 -2
  222. package/dist/dropdown.cjs.map +1 -1
  223. package/dist/dropdown.js +160 -5
  224. package/dist/dropdown.js.map +1 -1
  225. package/dist/expand-Bp3N8CcL.js +336 -0
  226. package/dist/expand-Bp3N8CcL.js.map +1 -0
  227. package/dist/expand-Crdts9q_.cjs +141 -0
  228. package/dist/expand-Crdts9q_.cjs.map +1 -0
  229. package/dist/expand.cjs +1 -0
  230. package/dist/expand.js +2 -0
  231. package/dist/extra-B0IZCg0t.cjs +31 -0
  232. package/dist/extra-B0IZCg0t.cjs.map +1 -0
  233. package/dist/extra-DupwhQhC.js +3435 -0
  234. package/dist/extra-DupwhQhC.js.map +1 -0
  235. package/dist/extra.cjs +1 -2
  236. package/dist/extra.js +2 -6
  237. package/dist/float-CQoJ_oSB.cjs +1 -0
  238. package/dist/float-CQoJ_oSB.cjs.map +1 -0
  239. package/dist/float-Dqdc1_S5.js +5 -0
  240. package/dist/float-Dqdc1_S5.js.map +1 -0
  241. package/dist/float.cjs +1 -0
  242. package/dist/float.js +2 -0
  243. package/dist/flow-Bbwn6dRN.cjs +1 -0
  244. package/dist/flow-Bbwn6dRN.cjs.map +1 -0
  245. package/dist/flow-CUj0fDT_.js +386 -0
  246. package/dist/flow-CUj0fDT_.js.map +1 -0
  247. package/dist/form-CW5XNuTg.js +270 -0
  248. package/dist/form-CW5XNuTg.js.map +1 -0
  249. package/dist/form-CvoLqMY7.cjs +1 -0
  250. package/dist/form-CvoLqMY7.cjs.map +1 -0
  251. package/dist/form.cjs +1 -2
  252. package/dist/form.js +1 -2
  253. package/dist/hashContent-DYM21p6t.js +6 -0
  254. package/dist/hashContent-DYM21p6t.js.map +1 -0
  255. package/dist/hashContent-DaeGmY-p.cjs +1 -0
  256. package/dist/hashContent-DaeGmY-p.cjs.map +1 -0
  257. package/dist/icons-BLQHEbIk.cjs +52 -0
  258. package/dist/icons-BLQHEbIk.cjs.map +1 -0
  259. package/dist/icons-Cpfdb7sA.js +161 -0
  260. package/dist/icons-Cpfdb7sA.js.map +1 -0
  261. package/dist/icons.cjs +1 -2
  262. package/dist/icons.js +1 -2
  263. package/dist/iframe-DG6HVYdy.js +44 -0
  264. package/dist/iframe-DG6HVYdy.js.map +1 -0
  265. package/dist/iframe-sJGXBbxT.cjs +24 -0
  266. package/dist/iframe-sJGXBbxT.cjs.map +1 -0
  267. package/dist/iframe.cjs +1 -0
  268. package/dist/iframe.js +2 -0
  269. package/dist/index.cjs +1 -2
  270. package/dist/index.js +69 -285
  271. package/dist/input-BevxycIt.js +364 -0
  272. package/dist/input-BevxycIt.js.map +1 -0
  273. package/dist/input-DGTdmp1Q.cjs +51 -0
  274. package/dist/input-DGTdmp1Q.cjs.map +1 -0
  275. package/dist/input-chip-BWS-SFU4.js +301 -0
  276. package/dist/input-chip-BWS-SFU4.js.map +1 -0
  277. package/dist/input-chip-CKVtjInb.cjs +146 -0
  278. package/dist/input-chip-CKVtjInb.cjs.map +1 -0
  279. package/dist/input.cjs +1 -2
  280. package/dist/input.js +2 -6
  281. package/dist/intersection-BPLpqYEd.js +12 -0
  282. package/dist/intersection-BPLpqYEd.js.map +1 -0
  283. package/dist/intersection-CZpaIHeT.cjs +1 -0
  284. package/dist/intersection-CZpaIHeT.cjs.map +1 -0
  285. package/dist/json.cjs +11 -2
  286. package/dist/json.cjs.map +1 -1
  287. package/dist/json.js +40 -4
  288. package/dist/json.js.map +1 -1
  289. package/dist/layout-4C-6_cre.cjs +1 -0
  290. package/dist/layout-4C-6_cre.cjs.map +1 -0
  291. package/dist/layout-CQdd8UCr.cjs +17 -0
  292. package/dist/layout-CQdd8UCr.cjs.map +1 -0
  293. package/dist/layout-DxLjlDfr.js +267 -0
  294. package/dist/layout-DxLjlDfr.js.map +1 -0
  295. package/dist/layout-yxSlLybo.js +94 -0
  296. package/dist/layout-yxSlLybo.js.map +1 -0
  297. package/dist/layout.cjs +1 -2
  298. package/dist/layout.js +3 -9
  299. package/dist/lightbox-Bjc55lHH.js +678 -0
  300. package/dist/lightbox-Bjc55lHH.js.map +1 -0
  301. package/dist/lightbox-C_863_XU.cjs +202 -0
  302. package/dist/lightbox-C_863_XU.cjs.map +1 -0
  303. package/dist/lightbox.cjs +1 -2
  304. package/dist/lightbox.js +2 -8
  305. package/dist/list-BAqhlzZd.js +105 -0
  306. package/dist/list-BAqhlzZd.js.map +1 -0
  307. package/dist/list-CaXzdN9_.cjs +40 -0
  308. package/dist/list-CaXzdN9_.cjs.map +1 -0
  309. package/dist/list.cjs +1 -2
  310. package/dist/list.js +2 -7
  311. package/dist/litElement.mixin-DN6X9_wD.cjs +1 -0
  312. package/dist/litElement.mixin-DN6X9_wD.cjs.map +1 -0
  313. package/dist/litElement.mixin-Dktub0ri.js +12 -0
  314. package/dist/litElement.mixin-Dktub0ri.js.map +1 -0
  315. package/dist/magnetic-BZGFxAWG.js +47 -0
  316. package/dist/magnetic-BZGFxAWG.js.map +1 -0
  317. package/dist/magnetic-Dux4QwO4.cjs +1 -0
  318. package/dist/magnetic-Dux4QwO4.cjs.map +1 -0
  319. package/dist/mailbox-BvsLXpvy.cjs +1142 -0
  320. package/dist/mailbox-BvsLXpvy.cjs.map +1 -0
  321. package/dist/mailbox-DuMUH4f3.js +1584 -0
  322. package/dist/mailbox-DuMUH4f3.js.map +1 -0
  323. package/dist/mailbox.cjs +1 -2
  324. package/dist/mailbox.js +2 -9
  325. package/dist/map-C2Msv9TQ.cjs +80 -0
  326. package/dist/map-C2Msv9TQ.cjs.map +1 -0
  327. package/dist/map-DkIy1ph7.js +205 -0
  328. package/dist/map-DkIy1ph7.js.map +1 -0
  329. package/dist/map.cjs +1 -2
  330. package/dist/map.js +2 -5
  331. package/dist/menu-DEeDKW5U.js +51 -0
  332. package/dist/menu-DEeDKW5U.js.map +1 -0
  333. package/dist/menu-Mm71lv9k.cjs +23 -0
  334. package/dist/menu-Mm71lv9k.cjs.map +1 -0
  335. package/dist/menu.cjs +1 -2
  336. package/dist/menu.js +1 -2
  337. package/dist/mixins.cjs +1 -2
  338. package/dist/mixins.cjs.map +1 -1
  339. package/dist/mixins.js +59 -12
  340. package/dist/mixins.js.map +1 -1
  341. package/dist/nav-drawer.cjs +1 -2
  342. package/dist/nav-drawer.js +2 -12
  343. package/dist/navigation-bar.cjs +1 -2
  344. package/dist/navigation-bar.js +2 -6
  345. package/dist/navigation-rail.cjs +71 -2
  346. package/dist/navigation-rail.cjs.map +1 -1
  347. package/dist/navigation-rail.js +363 -5
  348. package/dist/navigation-rail.js.map +1 -1
  349. package/dist/notification-K-ug8cKk.js +304 -0
  350. package/dist/notification-K-ug8cKk.js.map +1 -0
  351. package/dist/notification-cTgXEDZ0.cjs +23 -0
  352. package/dist/notification-cTgXEDZ0.cjs.map +1 -0
  353. package/dist/notification.cjs +1 -2
  354. package/dist/notification.js +2 -9
  355. package/dist/option-5rEOmtAm.cjs +43 -0
  356. package/dist/option-5rEOmtAm.cjs.map +1 -0
  357. package/dist/option-TFSKvSjT.js +97 -0
  358. package/dist/option-TFSKvSjT.js.map +1 -0
  359. package/dist/option.cjs +1 -2
  360. package/dist/option.js +1 -2
  361. package/dist/overlay-stack-DQey9Qph.cjs +1 -0
  362. package/dist/overlay-stack-DQey9Qph.cjs.map +1 -0
  363. package/dist/overlay-stack-DT1SdaGW.js +39 -0
  364. package/dist/overlay-stack-DT1SdaGW.js.map +1 -0
  365. package/dist/page.cjs +20 -2
  366. package/dist/page.cjs.map +1 -1
  367. package/dist/page.js +71 -4
  368. package/dist/page.js.map +1 -1
  369. package/dist/progress-Cta3nM-f.js +128 -0
  370. package/dist/progress-Cta3nM-f.js.map +1 -0
  371. package/dist/progress-iu0AMbSg.cjs +51 -0
  372. package/dist/progress-iu0AMbSg.cjs.map +1 -0
  373. package/dist/progress.cjs +1 -2
  374. package/dist/progress.js +1 -2
  375. package/dist/provide-BEyyKlDM.cjs +1 -0
  376. package/dist/provide-BEyyKlDM.cjs.map +1 -0
  377. package/dist/provide-D69zybs5.js +107 -0
  378. package/dist/provide-D69zybs5.js.map +1 -0
  379. package/dist/qr-scanner.cjs +35 -2
  380. package/dist/qr-scanner.cjs.map +1 -1
  381. package/dist/qr-scanner.js +119 -4
  382. package/dist/qr-scanner.js.map +1 -1
  383. package/dist/radio-group-BjSWmYJC.js +105 -0
  384. package/dist/radio-group-BjSWmYJC.js.map +1 -0
  385. package/dist/radio-group-DKPN0T50.cjs +40 -0
  386. package/dist/radio-group-DKPN0T50.cjs.map +1 -0
  387. package/dist/radio-group.cjs +1 -2
  388. package/dist/radio-group.js +2 -6
  389. package/dist/range.cjs +62 -0
  390. package/dist/range.cjs.map +1 -0
  391. package/dist/range.js +85 -0
  392. package/dist/range.js.map +1 -0
  393. package/dist/reduced-motion-D-L12p7G.js +7 -0
  394. package/dist/reduced-motion-D-L12p7G.js.map +1 -0
  395. package/dist/reduced-motion-Ds05GPyz.cjs +1 -0
  396. package/dist/reduced-motion-Ds05GPyz.cjs.map +1 -0
  397. package/dist/rxjs-utils-BSjmI9-Q.js +32 -0
  398. package/dist/rxjs-utils-BSjmI9-Q.js.map +1 -0
  399. package/dist/rxjs-utils-DCsfzeap.cjs +1 -0
  400. package/dist/rxjs-utils-DCsfzeap.cjs.map +1 -0
  401. package/dist/rxjs-utils.cjs +1 -2
  402. package/dist/rxjs-utils.js +2 -14
  403. package/dist/scroll-mayaGGpE.cjs +26 -0
  404. package/dist/scroll-mayaGGpE.cjs.map +1 -0
  405. package/dist/scroll-tG1vaRFO.js +112 -0
  406. package/dist/scroll-tG1vaRFO.js.map +1 -0
  407. package/dist/search-C4dFHYbX.js +91 -0
  408. package/dist/search-C4dFHYbX.js.map +1 -0
  409. package/dist/search-Ds8tt7Et.cjs +1 -0
  410. package/dist/search-Ds8tt7Et.cjs.map +1 -0
  411. package/dist/select-C4YK5Arj.cjs +56 -0
  412. package/dist/select-C4YK5Arj.cjs.map +1 -0
  413. package/dist/select-CepryGGP.js +305 -0
  414. package/dist/select-CepryGGP.js.map +1 -0
  415. package/dist/select.cjs +1 -2
  416. package/dist/select.js +2 -5
  417. package/dist/sheet-Cy4C2-kG.cjs +35 -0
  418. package/dist/sheet-Cy4C2-kG.cjs.map +1 -0
  419. package/dist/sheet-D2uT95S1.js +168 -0
  420. package/dist/sheet-D2uT95S1.js.map +1 -0
  421. package/dist/sheet.cjs +1 -2
  422. package/dist/sheet.js +3 -7
  423. package/dist/sheet.service-Dv5Hwj3k.cjs +1 -0
  424. package/dist/sheet.service-Dv5Hwj3k.cjs.map +1 -0
  425. package/dist/sheet.service-Os8KJGSE.js +86 -0
  426. package/dist/sheet.service-Os8KJGSE.js.map +1 -0
  427. package/dist/slider.cjs +82 -2
  428. package/dist/slider.cjs.map +1 -1
  429. package/dist/slider.js +143 -5
  430. package/dist/slider.js.map +1 -1
  431. package/dist/sound.service-Bu3EQLv2.cjs +1 -0
  432. package/dist/sound.service-Bu3EQLv2.cjs.map +1 -0
  433. package/dist/sound.service-m3BrSfuH.js +2353 -0
  434. package/dist/sound.service-m3BrSfuH.js.map +1 -0
  435. package/dist/src-BLcmKlCH.js +1244 -0
  436. package/dist/src-BLcmKlCH.js.map +1 -0
  437. package/dist/src-tfU0akqI.cjs +269 -0
  438. package/dist/src-tfU0akqI.cjs.map +1 -0
  439. package/dist/steps.cjs +70 -2
  440. package/dist/steps.cjs.map +1 -1
  441. package/dist/steps.js +178 -7
  442. package/dist/steps.js.map +1 -1
  443. package/dist/store-CorvD3bT.cjs +1 -0
  444. package/dist/store-CorvD3bT.cjs.map +1 -0
  445. package/dist/store-DYqDLAvT.js +1654 -0
  446. package/dist/store-DYqDLAvT.js.map +1 -0
  447. package/dist/store.cjs +1 -2
  448. package/dist/store.js +2 -47
  449. package/dist/surface-CiiIYeJN.cjs +7 -0
  450. package/dist/surface-CiiIYeJN.cjs.map +1 -0
  451. package/dist/surface-fXvRpS6s.js +21 -0
  452. package/dist/surface-fXvRpS6s.js.map +1 -0
  453. package/dist/surface.cjs +1 -2
  454. package/dist/surface.js +2 -6
  455. package/dist/surface.mixin-C4hbgyaP.cjs +297 -0
  456. package/dist/surface.mixin-C4hbgyaP.cjs.map +1 -0
  457. package/dist/surface.mixin-DBuxL5aL.js +320 -0
  458. package/dist/surface.mixin-DBuxL5aL.js.map +1 -0
  459. package/dist/table-BRVKlNjl.cjs +63 -0
  460. package/dist/table-BRVKlNjl.cjs.map +1 -0
  461. package/dist/table-BeXnwSsq.js +631 -0
  462. package/dist/table-BeXnwSsq.js.map +1 -0
  463. package/dist/table.cjs +1 -2
  464. package/dist/table.js +2 -6
  465. package/dist/tabs-CBU9Ctqm.cjs +31 -0
  466. package/dist/tabs-CBU9Ctqm.cjs.map +1 -0
  467. package/dist/tabs-y708NWQ2.js +125 -0
  468. package/dist/tabs-y708NWQ2.js.map +1 -0
  469. package/dist/tabs.cjs +1 -2
  470. package/dist/tabs.js +1 -2
  471. package/dist/tailwind.mixin-C4cx3IOr.js +225 -0
  472. package/dist/tailwind.mixin-C4cx3IOr.js.map +1 -0
  473. package/dist/tailwind.mixin-DGiyLbEi.cjs +2 -0
  474. package/dist/tailwind.mixin-DGiyLbEi.cjs.map +1 -0
  475. package/dist/teleport.cjs +1 -2
  476. package/dist/teleport.js +2 -8
  477. package/dist/textarea-BhAoJg8c.cjs +35 -0
  478. package/dist/textarea-BhAoJg8c.cjs.map +1 -0
  479. package/dist/textarea-Bl8-gQEJ.js +195 -0
  480. package/dist/textarea-Bl8-gQEJ.js.map +1 -0
  481. package/dist/textarea.cjs +1 -2
  482. package/dist/textarea.js +1 -2
  483. package/dist/theme-C-vdR-Ic.cjs +181 -0
  484. package/dist/theme-C-vdR-Ic.cjs.map +1 -0
  485. package/dist/theme-DZUpYJn-.js +4121 -0
  486. package/dist/theme-DZUpYJn-.js.map +1 -0
  487. package/dist/theme-button-CwrvpOMK.js +19 -0
  488. package/dist/theme-button-CwrvpOMK.js.map +1 -0
  489. package/dist/theme-button-Cx1iKh7G.cjs +8 -0
  490. package/dist/theme-button-Cx1iKh7G.cjs.map +1 -0
  491. package/dist/theme-button.cjs +1 -2
  492. package/dist/theme-button.js +1 -2
  493. package/dist/theme.cjs +1 -2
  494. package/dist/theme.events-Cv7N4Toe.js +2 -0
  495. package/dist/theme.events-Cv7N4Toe.js.map +1 -0
  496. package/dist/theme.events-DM4H5F2d.cjs +1 -0
  497. package/dist/theme.events-DM4H5F2d.cjs.map +1 -0
  498. package/dist/theme.interface-CXloMUCw.js +276 -0
  499. package/dist/theme.interface-CXloMUCw.js.map +1 -0
  500. package/dist/theme.interface-Da23QAYb.cjs +1 -0
  501. package/dist/theme.interface-Da23QAYb.cjs.map +1 -0
  502. package/dist/theme.js +6 -21
  503. package/dist/theme.service-C_tjlqgy.cjs +1 -0
  504. package/dist/theme.service-C_tjlqgy.cjs.map +1 -0
  505. package/dist/theme.service-D9lEas89.js +108 -0
  506. package/dist/theme.service-D9lEas89.js.map +1 -0
  507. package/dist/tooltip.cjs +6 -2
  508. package/dist/tooltip.cjs.map +1 -1
  509. package/dist/tooltip.js +200 -5
  510. package/dist/tooltip.js.map +1 -1
  511. package/dist/tree.cjs +26 -2
  512. package/dist/tree.cjs.map +1 -1
  513. package/dist/tree.js +64 -4
  514. package/dist/tree.js.map +1 -1
  515. package/dist/tslib.es6-D7BIeDVB.cjs +1 -0
  516. package/dist/tslib.es6-D7BIeDVB.cjs.map +1 -0
  517. package/dist/tslib.es6-ErZEp3OO.js +7 -0
  518. package/dist/tslib.es6-ErZEp3OO.js.map +1 -0
  519. package/dist/types.cjs +1 -2
  520. package/dist/types.cjs.map +1 -1
  521. package/dist/types.js +4 -5
  522. package/dist/types.js.map +1 -1
  523. package/dist/typewriter-CXQIzqPV.cjs +123 -0
  524. package/dist/typewriter-CXQIzqPV.cjs.map +1 -0
  525. package/dist/typewriter-mxVw5dFn.js +700 -0
  526. package/dist/typewriter-mxVw5dFn.js.map +1 -0
  527. package/dist/typewriter.cjs +1 -2
  528. package/dist/typewriter.js +2 -5
  529. package/dist/typography.cjs +282 -2
  530. package/dist/typography.cjs.map +1 -1
  531. package/dist/typography.js +353 -4
  532. package/dist/typography.js.map +1 -1
  533. package/dist/utils-BcaKtQuA.cjs +1 -0
  534. package/dist/utils-BcaKtQuA.cjs.map +1 -0
  535. package/dist/utils-CoU7M2YS.js +259 -0
  536. package/dist/utils-CoU7M2YS.js.map +1 -0
  537. package/dist/utils.cjs +1 -2
  538. package/dist/utils.js +6 -9
  539. package/dist/window-DFMlB1Tq.cjs +59 -0
  540. package/dist/window-DFMlB1Tq.cjs.map +1 -0
  541. package/dist/window-EWYJJC_H.js +548 -0
  542. package/dist/window-EWYJJC_H.js.map +1 -0
  543. package/dist/window.cjs +1 -0
  544. package/dist/window.js +2 -0
  545. package/mixins/baseElement.ts +118 -1
  546. package/mixins/discovery.service.ts +162 -1
  547. package/mixins/formField.mixin.ts +13 -8
  548. package/mixins/index.ts +2 -0
  549. package/mixins/surface.mixin.ts +93 -0
  550. package/mixins/tailwind.css +331 -14
  551. package/package.json +32 -28
  552. package/src/CLAUDE.md +428 -0
  553. package/src/area/.excalidraw +357 -0
  554. package/src/area/area.component.ts +449 -0
  555. package/src/area/area.service.test.ts +1007 -0
  556. package/src/area/area.service.ts +748 -0
  557. package/src/area/ecrypt.ts +7 -0
  558. package/src/area/index.ts +7 -0
  559. package/src/area/lazy.ts +83 -0
  560. package/src/area/readme.md +338 -0
  561. package/src/area/route.component.ts +79 -0
  562. package/src/area/router-guide.md +360 -0
  563. package/src/area/router.types.ts +101 -0
  564. package/src/area/utils.ts +354 -0
  565. package/src/audio/emotional-sounds.ts +940 -0
  566. package/src/audio/index.ts +53 -0
  567. package/src/audio/sound.service.ts +1079 -0
  568. package/src/autocomplete/README.md +485 -0
  569. package/src/autocomplete/autocomplete.scss +24 -0
  570. package/src/autocomplete/autocomplete.ts +733 -0
  571. package/src/autocomplete/index.ts +1 -0
  572. package/src/avatar.ts +164 -0
  573. package/src/badge/badge.ts +286 -0
  574. package/src/badge/index.ts +1 -0
  575. package/src/boat/boat.ts +664 -0
  576. package/src/boat/index.ts +1 -0
  577. package/src/busy/busy.ts +39 -0
  578. package/src/busy/index.ts +2 -0
  579. package/src/busy/spinner.ts +165 -0
  580. package/src/button/button.ts +382 -0
  581. package/src/button/icon-button.ts +287 -0
  582. package/src/button/index.ts +2 -0
  583. package/src/card/actions.ts +28 -0
  584. package/src/card/card.ts +319 -0
  585. package/src/card/content.ts +24 -0
  586. package/src/card/index.ts +4 -0
  587. package/src/card/media.ts +77 -0
  588. package/src/charts/area-chart.ts +495 -0
  589. package/src/charts/index.ts +4 -0
  590. package/src/charts/pills.ts +350 -0
  591. package/src/charts/types.ts +66 -0
  592. package/src/charts/utils.ts +65 -0
  593. package/src/checkbox/checkbox.ts +122 -0
  594. package/src/checkbox/index.ts +1 -0
  595. package/src/chips/assist-chip.ts +261 -0
  596. package/src/chips/chips.ts +259 -0
  597. package/src/chips/filter-chip.ts +255 -0
  598. package/src/chips/index.ts +5 -0
  599. package/src/chips/input-chip.ts +408 -0
  600. package/src/chips/suggestion-chip.ts +266 -0
  601. package/src/code-highlight/code-highlight.ts +344 -0
  602. package/src/code-highlight/code-preview.ts +123 -0
  603. package/src/code-highlight/index.ts +3 -0
  604. package/src/components/form-elements/index.ts +1 -0
  605. package/src/components/form-elements/payment-card-form.ts +331 -0
  606. package/src/components/index.ts +1 -0
  607. package/src/connectivity/connectivity-status.ts +153 -0
  608. package/src/connectivity/index.ts +1 -0
  609. package/src/content-drawer/context.ts +13 -0
  610. package/src/content-drawer/drawer.service.ts +148 -0
  611. package/src/content-drawer/drawer.ts +183 -0
  612. package/src/content-drawer/index.ts +5 -0
  613. package/src/content-drawer/main.ts +83 -0
  614. package/src/content-drawer/readme.md +709 -0
  615. package/src/content-drawer/sheet.ts +180 -0
  616. package/src/date-range/date-range-dialog.ts +230 -0
  617. package/src/date-range/date-range-helpers.ts +135 -0
  618. package/src/date-range/date-range-presets.ts +220 -0
  619. package/src/date-range/date-range.ts +530 -0
  620. package/src/date-range/date-utils.ts +58 -0
  621. package/src/date-range/index.ts +2 -0
  622. package/src/date-range-inline/date-range-inline.ts +522 -0
  623. package/src/date-range-inline/index.ts +2 -0
  624. package/src/delay/delay.ts +136 -0
  625. package/src/delay/index.ts +1 -0
  626. package/src/details/details.ts +429 -0
  627. package/src/details/index.ts +1 -0
  628. package/src/dialog/dialog-base.mixin.ts +565 -0
  629. package/src/dialog/dialog-events.ts +17 -0
  630. package/src/dialog/dialog-service.ts +482 -0
  631. package/src/dialog/dialog.component.ts +394 -0
  632. package/src/dialog/index.ts +3 -0
  633. package/src/directives/animate-text.ts +551 -0
  634. package/src/directives/color.ts +41 -0
  635. package/src/directives/confirm-click.ts +350 -0
  636. package/src/directives/cursor-glow.ts +142 -0
  637. package/src/directives/cycle-text.ts +496 -0
  638. package/src/directives/depth-of-field.ts +83 -0
  639. package/src/directives/drag.ts +370 -0
  640. package/src/directives/gravity.ts +117 -0
  641. package/src/directives/index.ts +19 -0
  642. package/src/directives/intersect.ts +204 -0
  643. package/src/directives/layout.ts +261 -0
  644. package/src/directives/liquid.ts +150 -0
  645. package/src/directives/living-border.ts +166 -0
  646. package/src/directives/long-press.ts +150 -0
  647. package/src/directives/magnetic.ts +133 -0
  648. package/src/directives/nebula.ts +773 -0
  649. package/src/directives/reduced-motion.ts +30 -0
  650. package/src/directives/reveal.ts +158 -0
  651. package/src/directives/ripple.ts +102 -0
  652. package/src/directives/typewriter.ts +349 -0
  653. package/src/discovery/discovery.service.ts +210 -0
  654. package/src/discovery/index.ts +1 -0
  655. package/src/divider/divider.ts +100 -0
  656. package/src/divider/index.ts +1 -0
  657. package/src/dropdown/dropdown-component.ts +264 -0
  658. package/src/dropdown/dropdown-content.ts +108 -0
  659. package/src/dropdown/index.ts +2 -0
  660. package/src/expand/expand-root.component.ts +278 -0
  661. package/src/expand/expand.component.ts +287 -0
  662. package/src/expand/index.ts +2 -0
  663. package/src/extra/countries/countries.data.ts +196 -0
  664. package/src/extra/countries/countries.ts +107 -0
  665. package/src/extra/countries/index.ts +2 -0
  666. package/src/extra/index.ts +2 -0
  667. package/src/extra/timezone/index.ts +2 -0
  668. package/src/extra/timezone/timezone.ts +116 -0
  669. package/src/extra/timezone/timezones.data.ts +2546 -0
  670. package/src/float/float.ts +18 -0
  671. package/src/float/index.ts +1 -0
  672. package/src/form/form-v2.ts +268 -0
  673. package/src/form/form.ts +194 -0
  674. package/src/form/index.ts +2 -0
  675. package/src/icons/icon.ts +293 -0
  676. package/src/icons/index.ts +1 -0
  677. package/src/icons/readme.md +37 -0
  678. package/src/iframe/iframe.ts +98 -0
  679. package/src/iframe/index.ts +1 -0
  680. package/src/index.ts +69 -0
  681. package/src/input/index.ts +8 -0
  682. package/src/input/input.scss +211 -0
  683. package/src/input/input.ts +951 -0
  684. package/src/json/index.ts +1 -0
  685. package/src/json/json.ts +55 -0
  686. package/src/layout/flex/flex.scss +4 -0
  687. package/src/layout/flex/flex.ts +74 -0
  688. package/src/layout/flex/index.ts +1 -0
  689. package/src/layout/grid/.readme +79 -0
  690. package/src/layout/grid/grid.scss +5 -0
  691. package/src/layout/grid/grid.ts +121 -0
  692. package/src/layout/grid/index.ts +1 -0
  693. package/src/layout/index.ts +5 -0
  694. package/src/layout/layout.ts +122 -0
  695. package/src/layout/scroll/index.ts +1 -0
  696. package/src/layout/scroll/scroll.ts +351 -0
  697. package/src/layout/v2/flex.ts +243 -0
  698. package/src/layout/v2/grid.ts +93 -0
  699. package/src/layout/v2/index.ts +1 -0
  700. package/src/lightbox/flip-directive.ts +270 -0
  701. package/src/lightbox/index.ts +4 -0
  702. package/src/lightbox/lightbox-service.ts +378 -0
  703. package/src/lightbox/lightbox.directive.ts +256 -0
  704. package/src/lightbox/lightbox.ts +417 -0
  705. package/src/list/context.ts +3 -0
  706. package/src/list/index.ts +3 -0
  707. package/src/list/list-item.ts +94 -0
  708. package/src/list/list.ts +87 -0
  709. package/src/list/readme.md +62 -0
  710. package/src/mailbox/README.md +131 -0
  711. package/src/mailbox/email-editor.ts +1071 -0
  712. package/src/mailbox/email-layout-selector.ts +58 -0
  713. package/src/mailbox/email-recipients.ts +594 -0
  714. package/src/mailbox/email-template-picker.ts +296 -0
  715. package/src/mailbox/email-viewer.ts +715 -0
  716. package/src/mailbox/index.ts +31 -0
  717. package/src/mailbox/mailbox.ts +363 -0
  718. package/src/mailbox/types.ts +181 -0
  719. package/src/map/index.ts +1 -0
  720. package/src/map/map.ts +483 -0
  721. package/src/menu/index.ts +2 -0
  722. package/src/menu/menu-item.ts +26 -0
  723. package/src/menu/menu.ts +83 -0
  724. package/src/nav-drawer/$navbar.ts +51 -0
  725. package/src/nav-drawer/appbar.ts +26 -0
  726. package/src/nav-drawer/content.ts +32 -0
  727. package/src/nav-drawer/context.ts +6 -0
  728. package/src/nav-drawer/drawer.ts +128 -0
  729. package/src/nav-drawer/index.ts +6 -0
  730. package/src/nav-drawer/navbar.ts +191 -0
  731. package/src/navigation-bar/index.ts +2 -0
  732. package/src/navigation-bar/navigation-bar-item.ts +417 -0
  733. package/src/navigation-bar/navigation-bar.ts +482 -0
  734. package/src/navigation-rail/index.ts +2 -0
  735. package/src/navigation-rail/navigation-rail-item.ts +443 -0
  736. package/src/navigation-rail/navigation-rail.ts +492 -0
  737. package/src/notification/index.ts +6 -0
  738. package/src/notification/notification-service.ts +324 -0
  739. package/src/notification/notification.scss +117 -0
  740. package/src/notification/notification.ts +263 -0
  741. package/src/notification/notify.ts +207 -0
  742. package/src/notification/outlet.ts +16 -0
  743. package/src/option/index.ts +1 -0
  744. package/src/option/option.ts +180 -0
  745. package/src/page/index.ts +1 -0
  746. package/src/page/page.ts +135 -0
  747. package/src/progress/index.ts +1 -0
  748. package/src/progress/progress.ts +143 -0
  749. package/src/qr-scanner/index.ts +1 -0
  750. package/src/qr-scanner/qr-scanner.ts +240 -0
  751. package/src/radio-group/index.ts +2 -0
  752. package/src/radio-group/radio-button.ts +81 -0
  753. package/src/radio-group/radio-group.scss +4 -0
  754. package/src/radio-group/radio-group.ts +110 -0
  755. package/src/radio-group/readme.md +315 -0
  756. package/src/range/index.ts +1 -0
  757. package/src/range/range.ts +102 -0
  758. package/src/rxjs-utils/index.ts +6 -0
  759. package/src/rxjs-utils/mutation-observer.ts +22 -0
  760. package/src/rxjs-utils/waitForElement.ts +33 -0
  761. package/src/rxjs-utils/waitForElementAll.ts +34 -0
  762. package/src/rxjs-utils/waitForElements.ts +40 -0
  763. package/src/rxjs-utils/waitForElementsAll.ts +42 -0
  764. package/src/rxjs-utils/waitUntil.ts +16 -0
  765. package/src/select/README.md +405 -0
  766. package/src/select/index.ts +2 -0
  767. package/src/select/select.ts +766 -0
  768. package/src/sheet/hook.ts +40 -0
  769. package/src/sheet/index.ts +2 -0
  770. package/src/sheet/sheet.service.ts +235 -0
  771. package/src/sheet/sheet.ts +236 -0
  772. package/src/slider/index.ts +2 -0
  773. package/src/slider/slide.ts +107 -0
  774. package/src/slider/slider.ts +164 -0
  775. package/src/steps/index.ts +3 -0
  776. package/src/steps/schmancy-step.ts +213 -0
  777. package/src/steps/schmancy-steps-container.ts +109 -0
  778. package/src/steps/steps.context.ts +23 -0
  779. package/src/store/context-array.ts +358 -0
  780. package/src/store/context-collection.ts +218 -0
  781. package/src/store/context-create.ts +284 -0
  782. package/src/store/context-object.ts +298 -0
  783. package/src/store/filter-directive.ts +614 -0
  784. package/src/store/immer-integration.ts +99 -0
  785. package/src/store/index.ts +10 -0
  786. package/src/store/selector-hook.ts +259 -0
  787. package/src/store/selectors.ts +289 -0
  788. package/src/store/storage-manager.ts +269 -0
  789. package/src/store/store.class.ts +239 -0
  790. package/src/store/types.ts +327 -0
  791. package/src/surface/context.ts +3 -0
  792. package/src/surface/index.ts +1 -0
  793. package/src/surface/surface.styles.ts +334 -0
  794. package/src/surface/surface.ts +59 -0
  795. package/src/table/index.ts +2 -0
  796. package/src/table/row.ts +60 -0
  797. package/src/table/table.ts +266 -0
  798. package/src/tabs/Readme.md +397 -0
  799. package/src/tabs/context.ts +5 -0
  800. package/src/tabs/index.ts +4 -0
  801. package/src/tabs/tab.ts +39 -0
  802. package/src/tabs/tabs-compatibility.ts +20 -0
  803. package/src/tabs/tabs-group.ts +184 -0
  804. package/src/teleport/.excalidraw +2511 -0
  805. package/src/teleport/index.ts +2 -0
  806. package/src/teleport/readme.md +91 -0
  807. package/src/teleport/teleport.component.ts +132 -0
  808. package/src/teleport/teleport.service.ts +139 -0
  809. package/src/teleport/watcher.ts +20 -0
  810. package/src/textarea/index.ts +1 -0
  811. package/src/textarea/textarea.scss +54 -0
  812. package/src/textarea/textarea.ts +432 -0
  813. package/src/theme/context.ts +28 -0
  814. package/src/theme/index.ts +17 -0
  815. package/src/theme/theme-audio-player.ts +470 -0
  816. package/src/theme/theme-controller-boat.ts +49 -0
  817. package/src/theme/theme-controller-example.md +152 -0
  818. package/src/theme/theme-controller.ts +205 -0
  819. package/src/theme/theme.component.ts +305 -0
  820. package/src/theme/theme.events.ts +59 -0
  821. package/src/theme/theme.format.ts +417 -0
  822. package/src/theme/theme.interface.ts +399 -0
  823. package/src/theme/theme.service.ts +520 -0
  824. package/src/theme/theme.style.css +619 -0
  825. package/src/theme-button/index.ts +1 -0
  826. package/src/theme-button/theme-button.ts +35 -0
  827. package/src/tooltip/index.ts +2 -0
  828. package/src/tooltip/tooltip.directive.ts +277 -0
  829. package/src/tooltip/tooltip.ts +216 -0
  830. package/src/tree/README.md +59 -0
  831. package/src/tree/index.ts +1 -0
  832. package/src/tree/tree.ts +132 -0
  833. package/src/types/events.ts +5 -0
  834. package/src/types/index.ts +3 -0
  835. package/src/types/mood-audio.types.ts +220 -0
  836. package/src/types/surface.ts +52 -0
  837. package/src/typewriter/IMPROVEMENTS.md +174 -0
  838. package/src/typewriter/QUICK_REFERENCE.md +166 -0
  839. package/src/typewriter/index.ts +1 -0
  840. package/src/typewriter/test-typewriter.html +97 -0
  841. package/src/typewriter/typewriter.ts +376 -0
  842. package/src/typography/index.ts +1 -0
  843. package/src/typography/typography.ts +448 -0
  844. package/src/utils/animation.ts +418 -0
  845. package/src/utils/hashContent.ts +12 -0
  846. package/src/utils/index.ts +6 -0
  847. package/src/utils/intersection.ts +22 -0
  848. package/src/utils/number.ts +529 -0
  849. package/src/utils/overlay-stack.ts +101 -0
  850. package/src/utils/search.ts +322 -0
  851. package/src/vite-env.d.ts +2 -0
  852. package/src/window/index.ts +10 -0
  853. package/src/window/window-manager.ts +204 -0
  854. package/src/window/window-position.ts +136 -0
  855. package/src/window/window-registry.ts +34 -0
  856. package/src/window/window.ts +724 -0
  857. package/types/mixins/baseElement.d.ts +12 -0
  858. package/types/mixins/discovery.service.d.ts +72 -0
  859. package/types/mixins/index.d.ts +2 -0
  860. package/types/mixins/surface.mixin.d.ts +39 -0
  861. package/types/src/area/area.service.d.ts +2 -0
  862. package/types/src/badge/badge.d.ts +1 -1
  863. package/types/src/boat/boat.d.ts +40 -33
  864. package/types/src/button/icon-button.d.ts +10 -0
  865. package/types/src/chips/filter-chip.d.ts +0 -12
  866. package/types/src/connectivity/connectivity-status.d.ts +25 -0
  867. package/types/src/connectivity/index.d.ts +1 -0
  868. package/types/src/content-drawer/drawer.service.d.ts +3 -0
  869. package/types/src/date-range/date-range.d.ts +2 -0
  870. package/types/src/details/details.d.ts +26 -2
  871. package/types/src/dialog/dialog-base.mixin.d.ts +7 -3
  872. package/types/src/dialog/dialog-service.d.ts +27 -1
  873. package/types/src/dialog/dialog.component.d.ts +35 -1
  874. package/types/src/directives/animate-text.d.ts +67 -0
  875. package/types/src/directives/color.d.ts +2 -3
  876. package/types/src/directives/confirm-click.d.ts +38 -0
  877. package/types/src/directives/cursor-glow.d.ts +38 -0
  878. package/types/src/directives/cycle-text.d.ts +44 -0
  879. package/types/src/directives/depth-of-field.d.ts +38 -0
  880. package/types/src/directives/drag.d.ts +8 -8
  881. package/types/src/directives/gravity.d.ts +40 -0
  882. package/types/src/directives/index.d.ts +16 -2
  883. package/types/src/directives/intersect.d.ts +60 -0
  884. package/types/src/directives/layout.d.ts +62 -0
  885. package/types/src/directives/liquid.d.ts +38 -0
  886. package/types/src/directives/living-border.d.ts +39 -0
  887. package/types/src/directives/long-press.d.ts +38 -0
  888. package/types/src/directives/magnetic.d.ts +35 -0
  889. package/types/src/directives/nebula.d.ts +80 -0
  890. package/types/src/directives/reduced-motion.d.ts +2 -0
  891. package/types/src/directives/reveal.d.ts +54 -0
  892. package/types/src/directives/ripple.d.ts +15 -5
  893. package/types/src/directives/typewriter.d.ts +50 -0
  894. package/types/src/discovery/discovery.service.d.ts +72 -0
  895. package/types/src/expand/expand-root.component.d.ts +30 -0
  896. package/types/src/expand/expand.component.d.ts +38 -0
  897. package/types/src/expand/index.d.ts +2 -0
  898. package/types/src/float/float.d.ts +14 -0
  899. package/types/src/float/index.d.ts +1 -0
  900. package/types/src/icons/icon.d.ts +14 -0
  901. package/types/src/iframe/iframe.d.ts +37 -0
  902. package/types/src/iframe/index.d.ts +1 -0
  903. package/types/src/index.d.ts +6 -1
  904. package/types/src/input/index.d.ts +1 -1
  905. package/types/src/layout/scroll/scroll.d.ts +11 -0
  906. package/types/src/lightbox/lightbox.d.ts +1 -0
  907. package/types/src/mailbox/email-recipients.d.ts +2 -2
  908. package/types/src/mailbox/types.d.ts +1 -1
  909. package/types/src/navigation-bar/navigation-bar.d.ts +17 -0
  910. package/types/src/notification/notification.d.ts +1 -0
  911. package/types/src/page/page.d.ts +6 -0
  912. package/types/src/range/index.d.ts +1 -0
  913. package/types/src/range/range.d.ts +25 -0
  914. package/types/src/sheet/sheet.d.ts +0 -1
  915. package/types/src/steps/schmancy-steps-container.d.ts +8 -6
  916. package/types/src/surface/surface.d.ts +4 -27
  917. package/types/src/surface/surface.styles.d.ts +31 -0
  918. package/types/src/tabs/tab.d.ts +1 -0
  919. package/types/src/textarea/textarea.d.ts +3 -2
  920. package/types/src/theme/context.d.ts +2 -282
  921. package/types/src/theme/theme.component.d.ts +9 -1
  922. package/types/src/theme/theme.format.d.ts +1 -1
  923. package/types/src/theme/theme.interface.d.ts +8 -1
  924. package/types/src/theme/theme.service.d.ts +20 -282
  925. package/types/src/types/surface.d.ts +27 -1
  926. package/types/src/typography/typography.d.ts +17 -3
  927. package/types/src/utils/animation.d.ts +254 -0
  928. package/types/src/utils/index.d.ts +2 -0
  929. package/types/src/utils/number.d.ts +18 -2
  930. package/types/src/utils/overlay-stack.d.ts +54 -0
  931. package/types/src/window/index.d.ts +3 -0
  932. package/types/src/window/window-manager.d.ts +49 -0
  933. package/types/src/window/window-position.d.ts +64 -0
  934. package/types/src/window/window-registry.d.ts +28 -0
  935. package/types/src/window/window.d.ts +67 -0
  936. package/ai/animated-text.md +0 -116
  937. package/ai/audio.md +0 -241
  938. package/ai/boat.md +0 -53
  939. package/ai/component-relationships.md +0 -93
  940. package/ai/context.md +0 -572
  941. package/ai/countries.md +0 -271
  942. package/ai/date-range-inline.md +0 -262
  943. package/ai/delay.md +0 -158
  944. package/ai/index.md +0 -112
  945. package/ai/layout.md +0 -187
  946. package/ai/mailbox.md +0 -530
  947. package/ai/map.md +0 -234
  948. package/ai/navigation-bar-item.md +0 -259
  949. package/ai/option.md +0 -173
  950. package/ai/payment-card-form.md +0 -242
  951. package/ai/slider.md +0 -227
  952. package/ai/spinner.md +0 -165
  953. package/ai/teleport.md +0 -197
  954. package/ai/template.md +0 -144
  955. package/ai/theme-button.md +0 -173
  956. package/ai/timezone.md +0 -276
  957. package/ai/typewriter.md +0 -335
  958. package/dist/_commonjsHelpers-Dw9sPFZy.js +0 -7
  959. package/dist/_commonjsHelpers-Dw9sPFZy.js.map +0 -1
  960. package/dist/_commonjsHelpers-k2hpEU-q.cjs +0 -2
  961. package/dist/_commonjsHelpers-k2hpEU-q.cjs.map +0 -1
  962. package/dist/ai/animated-text.md +0 -116
  963. package/dist/ai/audio.md +0 -241
  964. package/dist/ai/boat.md +0 -53
  965. package/dist/ai/component-relationships.md +0 -93
  966. package/dist/ai/context.md +0 -572
  967. package/dist/ai/countries.md +0 -271
  968. package/dist/ai/date-range-inline.md +0 -262
  969. package/dist/ai/delay.md +0 -158
  970. package/dist/ai/index.md +0 -112
  971. package/dist/ai/layout.md +0 -187
  972. package/dist/ai/mailbox.md +0 -530
  973. package/dist/ai/map.md +0 -234
  974. package/dist/ai/navigation-bar-item.md +0 -259
  975. package/dist/ai/option.md +0 -173
  976. package/dist/ai/payment-card-form.md +0 -242
  977. package/dist/ai/slider.md +0 -227
  978. package/dist/ai/spinner.md +0 -165
  979. package/dist/ai/teleport.md +0 -197
  980. package/dist/ai/template.md +0 -144
  981. package/dist/ai/theme-button.md +0 -173
  982. package/dist/ai/timezone.md +0 -276
  983. package/dist/ai/typewriter.md +0 -335
  984. package/dist/animated-text-B3DQRJBy.cjs +0 -37
  985. package/dist/animated-text-B3DQRJBy.cjs.map +0 -1
  986. package/dist/animated-text-BAj4-6hE.js +0 -76
  987. package/dist/animated-text-BAj4-6hE.js.map +0 -1
  988. package/dist/animated-text.cjs +0 -2
  989. package/dist/animated-text.cjs.map +0 -1
  990. package/dist/animated-text.js +0 -2
  991. package/dist/animated-text.js.map +0 -1
  992. package/dist/area.cjs.map +0 -1
  993. package/dist/area.component-CP4DZ0d8.js +0 -330
  994. package/dist/area.component-CP4DZ0d8.js.map +0 -1
  995. package/dist/area.component-ChxSLt16.cjs +0 -12
  996. package/dist/area.component-ChxSLt16.cjs.map +0 -1
  997. package/dist/area.js.map +0 -1
  998. package/dist/audio.cjs.map +0 -1
  999. package/dist/audio.js.map +0 -1
  1000. package/dist/autocomplete-CAaVSg4g.cjs +0 -112
  1001. package/dist/autocomplete-CAaVSg4g.cjs.map +0 -1
  1002. package/dist/autocomplete-CGbACUYd.js +0 -333
  1003. package/dist/autocomplete-CGbACUYd.js.map +0 -1
  1004. package/dist/autocomplete.cjs.map +0 -1
  1005. package/dist/autocomplete.js.map +0 -1
  1006. package/dist/avatar-nWOZXEsW.cjs +0 -273
  1007. package/dist/avatar-nWOZXEsW.cjs.map +0 -1
  1008. package/dist/avatar-rLCF6MSI.js +0 -895
  1009. package/dist/avatar-rLCF6MSI.js.map +0 -1
  1010. package/dist/badge.cjs.map +0 -1
  1011. package/dist/badge.js.map +0 -1
  1012. package/dist/boat-Ckt9v__d.js +0 -301
  1013. package/dist/boat-Ckt9v__d.js.map +0 -1
  1014. package/dist/boat-yNAZ2LLB.cjs +0 -97
  1015. package/dist/boat-yNAZ2LLB.cjs.map +0 -1
  1016. package/dist/boat.cjs.map +0 -1
  1017. package/dist/boat.js.map +0 -1
  1018. package/dist/busy.cjs.map +0 -1
  1019. package/dist/busy.js.map +0 -1
  1020. package/dist/card.cjs.map +0 -1
  1021. package/dist/card.js.map +0 -1
  1022. package/dist/checkbox-BnAlpsJN.cjs +0 -40
  1023. package/dist/checkbox-BnAlpsJN.cjs.map +0 -1
  1024. package/dist/checkbox-D22yfGe3.js +0 -526
  1025. package/dist/checkbox-D22yfGe3.js.map +0 -1
  1026. package/dist/checkbox.cjs.map +0 -1
  1027. package/dist/checkbox.js.map +0 -1
  1028. package/dist/chips.cjs.map +0 -1
  1029. package/dist/chips.js.map +0 -1
  1030. package/dist/code-highlight.cjs.map +0 -1
  1031. package/dist/code-highlight.js.map +0 -1
  1032. package/dist/code-preview-DPlQayFd.js +0 -967
  1033. package/dist/code-preview-DPlQayFd.js.map +0 -1
  1034. package/dist/code-preview-jPnX60FF.cjs +0 -193
  1035. package/dist/code-preview-jPnX60FF.cjs.map +0 -1
  1036. package/dist/components.cjs.map +0 -1
  1037. package/dist/components.js.map +0 -1
  1038. package/dist/consume-5D1qfVWM.js +0 -38
  1039. package/dist/consume-5D1qfVWM.js.map +0 -1
  1040. package/dist/consume-edta5ng5.cjs +0 -2
  1041. package/dist/consume-edta5ng5.cjs.map +0 -1
  1042. package/dist/content-drawer.cjs.map +0 -1
  1043. package/dist/content-drawer.js.map +0 -1
  1044. package/dist/context-create-B_S-sD5B.js +0 -1107
  1045. package/dist/context-create-B_S-sD5B.js.map +0 -1
  1046. package/dist/context-create-DTybDbZp.cjs +0 -2
  1047. package/dist/context-create-DTybDbZp.cjs.map +0 -1
  1048. package/dist/date-range-GFm5NG33.js +0 -639
  1049. package/dist/date-range-GFm5NG33.js.map +0 -1
  1050. package/dist/date-range-inline-CgX2o0FP.cjs +0 -44
  1051. package/dist/date-range-inline-CgX2o0FP.cjs.map +0 -1
  1052. package/dist/date-range-inline-DTQLESAZ.js +0 -197
  1053. package/dist/date-range-inline-DTQLESAZ.js.map +0 -1
  1054. package/dist/date-range-inline.cjs.map +0 -1
  1055. package/dist/date-range-inline.js.map +0 -1
  1056. package/dist/date-range-ug3B9CFT.cjs +0 -119
  1057. package/dist/date-range-ug3B9CFT.cjs.map +0 -1
  1058. package/dist/date-range.cjs.map +0 -1
  1059. package/dist/date-range.js.map +0 -1
  1060. package/dist/delay-CWtBL0VD.cjs +0 -10
  1061. package/dist/delay-CWtBL0VD.cjs.map +0 -1
  1062. package/dist/delay-DEe1CmHc.js +0 -288
  1063. package/dist/delay-DEe1CmHc.js.map +0 -1
  1064. package/dist/delay.cjs.map +0 -1
  1065. package/dist/delay.js.map +0 -1
  1066. package/dist/details-D-LXW23W.js +0 -100
  1067. package/dist/details-D-LXW23W.js.map +0 -1
  1068. package/dist/details-DVke77dU.cjs +0 -55
  1069. package/dist/details-DVke77dU.cjs.map +0 -1
  1070. package/dist/details.cjs.map +0 -1
  1071. package/dist/details.js.map +0 -1
  1072. package/dist/dialog-service-C86xTS8q.cjs +0 -2
  1073. package/dist/dialog-service-C86xTS8q.cjs.map +0 -1
  1074. package/dist/dialog-service-D9E3jLAR.js +0 -118
  1075. package/dist/dialog-service-D9E3jLAR.js.map +0 -1
  1076. package/dist/dialog.component-BM0D-hK9.cjs +0 -48
  1077. package/dist/dialog.component-BM0D-hK9.cjs.map +0 -1
  1078. package/dist/dialog.component-a7FlKhGD.js +0 -145
  1079. package/dist/dialog.component-a7FlKhGD.js.map +0 -1
  1080. package/dist/discovery.service-BbYjU5x8.js +0 -21
  1081. package/dist/discovery.service-BbYjU5x8.js.map +0 -1
  1082. package/dist/discovery.service-BpGCuXPd.cjs +0 -2
  1083. package/dist/discovery.service-BpGCuXPd.cjs.map +0 -1
  1084. package/dist/divider-CzTpxOqt.js +0 -84
  1085. package/dist/divider-CzTpxOqt.js.map +0 -1
  1086. package/dist/divider-D8KStUhN.cjs +0 -58
  1087. package/dist/divider-D8KStUhN.cjs.map +0 -1
  1088. package/dist/divider.cjs.map +0 -1
  1089. package/dist/divider.js.map +0 -1
  1090. package/dist/dropdown-content-CngZN3vv.cjs +0 -58
  1091. package/dist/dropdown-content-CngZN3vv.cjs.map +0 -1
  1092. package/dist/dropdown-content-DCn-g0-f.js +0 -147
  1093. package/dist/dropdown-content-DCn-g0-f.js.map +0 -1
  1094. package/dist/email-recipients-BhntMZMf.cjs +0 -1173
  1095. package/dist/email-recipients-BhntMZMf.cjs.map +0 -1
  1096. package/dist/email-recipients-BzjAKNJ0.js +0 -1733
  1097. package/dist/email-recipients-BzjAKNJ0.js.map +0 -1
  1098. package/dist/emotional-sounds-BRnFhww6.js +0 -234
  1099. package/dist/emotional-sounds-BRnFhww6.js.map +0 -1
  1100. package/dist/emotional-sounds-DVGhmoZf.cjs +0 -2
  1101. package/dist/emotional-sounds-DVGhmoZf.cjs.map +0 -1
  1102. package/dist/extra.cjs.map +0 -1
  1103. package/dist/extra.js.map +0 -1
  1104. package/dist/flex-5dR48zie.js +0 -183
  1105. package/dist/flex-5dR48zie.js.map +0 -1
  1106. package/dist/flex-oHl2EfYB.cjs +0 -18
  1107. package/dist/flex-oHl2EfYB.cjs.map +0 -1
  1108. package/dist/flow-D0e7hGXO.cjs +0 -2
  1109. package/dist/flow-D0e7hGXO.cjs.map +0 -1
  1110. package/dist/flow-DXYqC9OA.js +0 -340
  1111. package/dist/flow-DXYqC9OA.js.map +0 -1
  1112. package/dist/form-BlPiAPt7.cjs +0 -2
  1113. package/dist/form-BlPiAPt7.cjs.map +0 -1
  1114. package/dist/form-BxVM6JTn.js +0 -141
  1115. package/dist/form-BxVM6JTn.js.map +0 -1
  1116. package/dist/form.cjs.map +0 -1
  1117. package/dist/form.js.map +0 -1
  1118. package/dist/formField.mixin-BCGA7Ea3.js +0 -48
  1119. package/dist/formField.mixin-BCGA7Ea3.js.map +0 -1
  1120. package/dist/formField.mixin-BfJMifU9.cjs +0 -2
  1121. package/dist/formField.mixin-BfJMifU9.cjs.map +0 -1
  1122. package/dist/height-CfECBO2j.js +0 -44
  1123. package/dist/height-CfECBO2j.js.map +0 -1
  1124. package/dist/height-Z70qJYJK.cjs +0 -2
  1125. package/dist/height-Z70qJYJK.cjs.map +0 -1
  1126. package/dist/icon-DHEXr3c-.cjs +0 -49
  1127. package/dist/icon-DHEXr3c-.cjs.map +0 -1
  1128. package/dist/icon-DYpLoegR.js +0 -84
  1129. package/dist/icon-DYpLoegR.js.map +0 -1
  1130. package/dist/icon-button-CmZBLHWC.js +0 -164
  1131. package/dist/icon-button-CmZBLHWC.js.map +0 -1
  1132. package/dist/icon-button-IbSX8C98.cjs +0 -70
  1133. package/dist/icon-button-IbSX8C98.cjs.map +0 -1
  1134. package/dist/icons.cjs.map +0 -1
  1135. package/dist/icons.js.map +0 -1
  1136. package/dist/index-CCi1otmh.cjs +0 -2
  1137. package/dist/index-CCi1otmh.cjs.map +0 -1
  1138. package/dist/index-CW6PhEkx.js +0 -17
  1139. package/dist/index-CW6PhEkx.js.map +0 -1
  1140. package/dist/index.cjs.map +0 -1
  1141. package/dist/index.js.map +0 -1
  1142. package/dist/input-BByjYlgl.cjs +0 -51
  1143. package/dist/input-BByjYlgl.cjs.map +0 -1
  1144. package/dist/input-D0cQ9DOY.js +0 -237
  1145. package/dist/input-D0cQ9DOY.js.map +0 -1
  1146. package/dist/input-chip-B5ErXgCB.js +0 -206
  1147. package/dist/input-chip-B5ErXgCB.js.map +0 -1
  1148. package/dist/input-chip-DkWaTciP.cjs +0 -147
  1149. package/dist/input-chip-DkWaTciP.cjs.map +0 -1
  1150. package/dist/input.cjs.map +0 -1
  1151. package/dist/input.js.map +0 -1
  1152. package/dist/intersection-CJxzz8c-.js +0 -15
  1153. package/dist/intersection-CJxzz8c-.js.map +0 -1
  1154. package/dist/intersection-CVvaDv96.cjs +0 -2
  1155. package/dist/intersection-CVvaDv96.cjs.map +0 -1
  1156. package/dist/json-BZVe74np.cjs +0 -12
  1157. package/dist/json-BZVe74np.cjs.map +0 -1
  1158. package/dist/json-PKewOWuJ.js +0 -51
  1159. package/dist/json-PKewOWuJ.js.map +0 -1
  1160. package/dist/layout.cjs.map +0 -1
  1161. package/dist/layout.js.map +0 -1
  1162. package/dist/lightbox-service-D-0JtxB1.cjs +0 -202
  1163. package/dist/lightbox-service-D-0JtxB1.cjs.map +0 -1
  1164. package/dist/lightbox-service-DZMnb1eU.js +0 -458
  1165. package/dist/lightbox-service-DZMnb1eU.js.map +0 -1
  1166. package/dist/lightbox.cjs.map +0 -1
  1167. package/dist/lightbox.js.map +0 -1
  1168. package/dist/list-B_2m7l3g.cjs +0 -17
  1169. package/dist/list-B_2m7l3g.cjs.map +0 -1
  1170. package/dist/list-CW56LV-v.js +0 -69
  1171. package/dist/list-CW56LV-v.js.map +0 -1
  1172. package/dist/list.cjs.map +0 -1
  1173. package/dist/list.js.map +0 -1
  1174. package/dist/litElement.mixin-CrpeGpZ7.cjs +0 -2
  1175. package/dist/litElement.mixin-CrpeGpZ7.cjs.map +0 -1
  1176. package/dist/litElement.mixin-DHZXtvYq.js +0 -15
  1177. package/dist/litElement.mixin-DHZXtvYq.js.map +0 -1
  1178. package/dist/mailbox.cjs.map +0 -1
  1179. package/dist/mailbox.js.map +0 -1
  1180. package/dist/map-2Hl60a0A.js +0 -175
  1181. package/dist/map-2Hl60a0A.js.map +0 -1
  1182. package/dist/map-DyPS9G7M.cjs +0 -81
  1183. package/dist/map-DyPS9G7M.cjs.map +0 -1
  1184. package/dist/map.cjs.map +0 -1
  1185. package/dist/map.js.map +0 -1
  1186. package/dist/media-CS8HpKnK.cjs +0 -152
  1187. package/dist/media-CS8HpKnK.cjs.map +0 -1
  1188. package/dist/media-DtWbcRxL.js +0 -244
  1189. package/dist/media-DtWbcRxL.js.map +0 -1
  1190. package/dist/menu-Caju5-zd.js +0 -60
  1191. package/dist/menu-Caju5-zd.js.map +0 -1
  1192. package/dist/menu-rX5RPAI2.cjs +0 -24
  1193. package/dist/menu-rX5RPAI2.cjs.map +0 -1
  1194. package/dist/menu.cjs.map +0 -1
  1195. package/dist/menu.js.map +0 -1
  1196. package/dist/nav-drawer.cjs.map +0 -1
  1197. package/dist/nav-drawer.js.map +0 -1
  1198. package/dist/navigation-bar.cjs.map +0 -1
  1199. package/dist/navigation-bar.js.map +0 -1
  1200. package/dist/navigation-rail-Ctketq5a.js +0 -256
  1201. package/dist/navigation-rail-Ctketq5a.js.map +0 -1
  1202. package/dist/navigation-rail-DC9_oSIM.cjs +0 -79
  1203. package/dist/navigation-rail-DC9_oSIM.cjs.map +0 -1
  1204. package/dist/notification-service-CUlfXqmj.js +0 -155
  1205. package/dist/notification-service-CUlfXqmj.js.map +0 -1
  1206. package/dist/notification-service-DknbpqTt.cjs +0 -19
  1207. package/dist/notification-service-DknbpqTt.cjs.map +0 -1
  1208. package/dist/notification.cjs.map +0 -1
  1209. package/dist/notification.js.map +0 -1
  1210. package/dist/notify-DJSOWTxv.js +0 -35
  1211. package/dist/notify-DJSOWTxv.js.map +0 -1
  1212. package/dist/notify-DickIEHW.cjs +0 -2
  1213. package/dist/notify-DickIEHW.cjs.map +0 -1
  1214. package/dist/number-B7aCRYnH.cjs +0 -2
  1215. package/dist/number-B7aCRYnH.cjs.map +0 -1
  1216. package/dist/number-BhTiptLA.js +0 -99
  1217. package/dist/number-BhTiptLA.js.map +0 -1
  1218. package/dist/option-Bng41-rY.js +0 -77
  1219. package/dist/option-Bng41-rY.js.map +0 -1
  1220. package/dist/option-DYT5Rkgy.cjs +0 -44
  1221. package/dist/option-DYT5Rkgy.cjs.map +0 -1
  1222. package/dist/option.cjs.map +0 -1
  1223. package/dist/option.js.map +0 -1
  1224. package/dist/page-BLn9gtSd.cjs +0 -20
  1225. package/dist/page-BLn9gtSd.cjs.map +0 -1
  1226. package/dist/page-D-ROcQDd.js +0 -48
  1227. package/dist/page-D-ROcQDd.js.map +0 -1
  1228. package/dist/payment-card-form-5UtfWzoW.cjs +0 -74
  1229. package/dist/payment-card-form-5UtfWzoW.cjs.map +0 -1
  1230. package/dist/payment-card-form-BJa4RgF2.js +0 -515
  1231. package/dist/payment-card-form-BJa4RgF2.js.map +0 -1
  1232. package/dist/pills-BS5rZ6C3.js +0 -346
  1233. package/dist/pills-BS5rZ6C3.js.map +0 -1
  1234. package/dist/pills-Blf7IAeq.cjs +0 -113
  1235. package/dist/pills-Blf7IAeq.cjs.map +0 -1
  1236. package/dist/progress-DlhYniW_.cjs +0 -35
  1237. package/dist/progress-DlhYniW_.cjs.map +0 -1
  1238. package/dist/progress-yTIX6EqC.js +0 -56
  1239. package/dist/progress-yTIX6EqC.js.map +0 -1
  1240. package/dist/progress.cjs.map +0 -1
  1241. package/dist/progress.js.map +0 -1
  1242. package/dist/provide-BxZ2kn_p.cjs +0 -2
  1243. package/dist/provide-BxZ2kn_p.cjs.map +0 -1
  1244. package/dist/provide-tcktw8xB.js +0 -100
  1245. package/dist/provide-tcktw8xB.js.map +0 -1
  1246. package/dist/qr-scanner-DOs7uNS_.cjs +0 -29
  1247. package/dist/qr-scanner-DOs7uNS_.cjs.map +0 -1
  1248. package/dist/qr-scanner-DjZ8mgHV.js +0 -743
  1249. package/dist/qr-scanner-DjZ8mgHV.js.map +0 -1
  1250. package/dist/radio-button-N_PrrxKB.cjs +0 -41
  1251. package/dist/radio-button-N_PrrxKB.cjs.map +0 -1
  1252. package/dist/radio-button-me3SRHGu.js +0 -115
  1253. package/dist/radio-button-me3SRHGu.js.map +0 -1
  1254. package/dist/radio-group.cjs.map +0 -1
  1255. package/dist/radio-group.js.map +0 -1
  1256. package/dist/ripple-BgJXbNSP.js +0 -124
  1257. package/dist/ripple-BgJXbNSP.js.map +0 -1
  1258. package/dist/ripple-x6sTX02K.cjs +0 -16
  1259. package/dist/ripple-x6sTX02K.cjs.map +0 -1
  1260. package/dist/rxjs-utils.cjs.map +0 -1
  1261. package/dist/rxjs-utils.js.map +0 -1
  1262. package/dist/schmancy-steps-container-J6P-NNNj.js +0 -156
  1263. package/dist/schmancy-steps-container-J6P-NNNj.js.map +0 -1
  1264. package/dist/schmancy-steps-container-T57BKMzi.cjs +0 -70
  1265. package/dist/schmancy-steps-container-T57BKMzi.cjs.map +0 -1
  1266. package/dist/scroll-C_gfUgjn.js +0 -87
  1267. package/dist/scroll-C_gfUgjn.js.map +0 -1
  1268. package/dist/scroll-CecsowP7.cjs +0 -27
  1269. package/dist/scroll-CecsowP7.cjs.map +0 -1
  1270. package/dist/search-B1s7thB0.cjs +0 -2
  1271. package/dist/search-B1s7thB0.cjs.map +0 -1
  1272. package/dist/search-DxxnLa5u.js +0 -95
  1273. package/dist/search-DxxnLa5u.js.map +0 -1
  1274. package/dist/select-BBA0gBHf.js +0 -280
  1275. package/dist/select-BBA0gBHf.js.map +0 -1
  1276. package/dist/select-D9oCjv7N.cjs +0 -57
  1277. package/dist/select-D9oCjv7N.cjs.map +0 -1
  1278. package/dist/select.cjs.map +0 -1
  1279. package/dist/select.js.map +0 -1
  1280. package/dist/selector-hook-9w2auh2O.cjs +0 -2
  1281. package/dist/selector-hook-9w2auh2O.cjs.map +0 -1
  1282. package/dist/selector-hook-CHV4kDMd.js +0 -319
  1283. package/dist/selector-hook-CHV4kDMd.js.map +0 -1
  1284. package/dist/sheet-0oUfBmXX.cjs +0 -15
  1285. package/dist/sheet-0oUfBmXX.cjs.map +0 -1
  1286. package/dist/sheet-CNcDT3VP.js +0 -97
  1287. package/dist/sheet-CNcDT3VP.js.map +0 -1
  1288. package/dist/sheet.cjs.map +0 -1
  1289. package/dist/sheet.js.map +0 -1
  1290. package/dist/sheet.service-2MobB-9z.js +0 -68
  1291. package/dist/sheet.service-2MobB-9z.js.map +0 -1
  1292. package/dist/sheet.service-su_7yDQ-.cjs +0 -2
  1293. package/dist/sheet.service-su_7yDQ-.cjs.map +0 -1
  1294. package/dist/slider-CV-Ehp_5.cjs +0 -83
  1295. package/dist/slider-CV-Ehp_5.cjs.map +0 -1
  1296. package/dist/slider-CkE-iFUy.js +0 -161
  1297. package/dist/slider-CkE-iFUy.js.map +0 -1
  1298. package/dist/sound.service-Nza4c6wv.js +0 -102
  1299. package/dist/sound.service-Nza4c6wv.js.map +0 -1
  1300. package/dist/sound.service-eRirZw59.cjs +0 -2
  1301. package/dist/sound.service-eRirZw59.cjs.map +0 -1
  1302. package/dist/spinner-Bfn8KC-9.cjs +0 -135
  1303. package/dist/spinner-Bfn8KC-9.cjs.map +0 -1
  1304. package/dist/spinner-DiMbWXp9.js +0 -168
  1305. package/dist/spinner-DiMbWXp9.js.map +0 -1
  1306. package/dist/store.cjs.map +0 -1
  1307. package/dist/store.js.map +0 -1
  1308. package/dist/suggestion-chip-CEDqUNoS.js +0 -481
  1309. package/dist/suggestion-chip-CEDqUNoS.js.map +0 -1
  1310. package/dist/suggestion-chip-HhsLtZXR.cjs +0 -271
  1311. package/dist/suggestion-chip-HhsLtZXR.cjs.map +0 -1
  1312. package/dist/surface-CW3H23Va.cjs +0 -199
  1313. package/dist/surface-CW3H23Va.cjs.map +0 -1
  1314. package/dist/surface-eBfnSwQS.js +0 -220
  1315. package/dist/surface-eBfnSwQS.js.map +0 -1
  1316. package/dist/surface.cjs.map +0 -1
  1317. package/dist/surface.js.map +0 -1
  1318. package/dist/table-D0tiSL_u.cjs +0 -64
  1319. package/dist/table-D0tiSL_u.cjs.map +0 -1
  1320. package/dist/table-Dmo4TvTx.js +0 -561
  1321. package/dist/table-Dmo4TvTx.js.map +0 -1
  1322. package/dist/table.cjs.map +0 -1
  1323. package/dist/table.js.map +0 -1
  1324. package/dist/tabs-compatibility-Bit6y6en.js +0 -104
  1325. package/dist/tabs-compatibility-Bit6y6en.js.map +0 -1
  1326. package/dist/tabs-compatibility-Vq_2-ekz.cjs +0 -35
  1327. package/dist/tabs-compatibility-Vq_2-ekz.cjs.map +0 -1
  1328. package/dist/tabs.cjs.map +0 -1
  1329. package/dist/tabs.js.map +0 -1
  1330. package/dist/tailwind.mixin-Bp_PR6yc.js +0 -67
  1331. package/dist/tailwind.mixin-Bp_PR6yc.js.map +0 -1
  1332. package/dist/tailwind.mixin-Cp4PyXok.cjs +0 -2
  1333. package/dist/tailwind.mixin-Cp4PyXok.cjs.map +0 -1
  1334. package/dist/teleport.cjs.map +0 -1
  1335. package/dist/teleport.js.map +0 -1
  1336. package/dist/textarea-B1d1QCqT.js +0 -134
  1337. package/dist/textarea-B1d1QCqT.js.map +0 -1
  1338. package/dist/textarea-DG8CHhZA.cjs +0 -44
  1339. package/dist/textarea-DG8CHhZA.cjs.map +0 -1
  1340. package/dist/textarea.cjs.map +0 -1
  1341. package/dist/textarea.js.map +0 -1
  1342. package/dist/theme-button-CPL6Eaqd.cjs +0 -9
  1343. package/dist/theme-button-CPL6Eaqd.cjs.map +0 -1
  1344. package/dist/theme-button-CrLuMQNe.js +0 -27
  1345. package/dist/theme-button-CrLuMQNe.js.map +0 -1
  1346. package/dist/theme-button.cjs.map +0 -1
  1347. package/dist/theme-button.js.map +0 -1
  1348. package/dist/theme-controller-boat-CXbNJSI3.cjs +0 -178
  1349. package/dist/theme-controller-boat-CXbNJSI3.cjs.map +0 -1
  1350. package/dist/theme-controller-boat-CzSmjyKq.js +0 -1159
  1351. package/dist/theme-controller-boat-CzSmjyKq.js.map +0 -1
  1352. package/dist/theme.cjs.map +0 -1
  1353. package/dist/theme.events-CPSLaOlR.js +0 -6
  1354. package/dist/theme.events-CPSLaOlR.js.map +0 -1
  1355. package/dist/theme.events-Car6U_SQ.cjs +0 -2
  1356. package/dist/theme.events-Car6U_SQ.cjs.map +0 -1
  1357. package/dist/theme.interface-BLfE5J_1.js +0 -5
  1358. package/dist/theme.interface-BLfE5J_1.js.map +0 -1
  1359. package/dist/theme.interface-BMeNadVb.cjs +0 -2
  1360. package/dist/theme.interface-BMeNadVb.cjs.map +0 -1
  1361. package/dist/theme.js.map +0 -1
  1362. package/dist/timezone-4vwX0BgA.js +0 -112
  1363. package/dist/timezone-4vwX0BgA.js.map +0 -1
  1364. package/dist/timezone-BxvQcqe1.cjs +0 -32
  1365. package/dist/timezone-BxvQcqe1.cjs.map +0 -1
  1366. package/dist/tooltip-CjdvBf4X.js +0 -119
  1367. package/dist/tooltip-CjdvBf4X.js.map +0 -1
  1368. package/dist/tooltip-ZtnGjoJd.cjs +0 -7
  1369. package/dist/tooltip-ZtnGjoJd.cjs.map +0 -1
  1370. package/dist/tree-CBEjV7jP.js +0 -65
  1371. package/dist/tree-CBEjV7jP.js.map +0 -1
  1372. package/dist/tree-DP5U00NA.cjs +0 -27
  1373. package/dist/tree-DP5U00NA.cjs.map +0 -1
  1374. package/dist/tslib.es6-DgOcxv4s.cjs +0 -2
  1375. package/dist/tslib.es6-DgOcxv4s.cjs.map +0 -1
  1376. package/dist/tslib.es6-ujVQHAQ4.js +0 -10
  1377. package/dist/tslib.es6-ujVQHAQ4.js.map +0 -1
  1378. package/dist/typewriter-C6kFjLcX.cjs +0 -124
  1379. package/dist/typewriter-C6kFjLcX.cjs.map +0 -1
  1380. package/dist/typewriter-Eo5qXoGC.js +0 -555
  1381. package/dist/typewriter-Eo5qXoGC.js.map +0 -1
  1382. package/dist/typewriter.cjs.map +0 -1
  1383. package/dist/typewriter.js.map +0 -1
  1384. package/dist/typography-C_1gdM2I.js +0 -264
  1385. package/dist/typography-C_1gdM2I.js.map +0 -1
  1386. package/dist/typography-DGyjlLCE.cjs +0 -243
  1387. package/dist/typography-DGyjlLCE.cjs.map +0 -1
  1388. package/dist/utils-C38P63L6.cjs +0 -2
  1389. package/dist/utils-C38P63L6.cjs.map +0 -1
  1390. package/dist/utils-CYOVFxSx.js +0 -150
  1391. package/dist/utils-CYOVFxSx.js.map +0 -1
  1392. package/dist/utils.cjs.map +0 -1
  1393. package/dist/utils.js.map +0 -1
  1394. package/types/src/animated-text/animated-text.d.ts +0 -30
  1395. package/types/src/animated-text/index.d.ts +0 -1
  1396. package/types/src/directives/height.d.ts +0 -20
@@ -0,0 +1,10 @@
1
+ export * from './context-array'
2
+ export * from './context-collection'
3
+ export * from './context-create'
4
+ export * from './context-object'
5
+ export * from './filter-directive'
6
+ export * from './selector-hook'
7
+ export * from './selectors'
8
+ export * from './storage-manager'
9
+ export * from './store.class'
10
+ export * from './types'
@@ -0,0 +1,259 @@
1
+ // src/store/selector-hook.ts - Improved memory management
2
+ import { property as litProperty } from 'lit/decorators.js'
3
+ import { Observable, Subject, Subscription } from 'rxjs'
4
+ import { takeUntil } from 'rxjs/operators'
5
+ import { createCollectionSelector, createSelector } from './selectors'
6
+ import { ICollectionStore, IStore } from './types'
7
+
8
+ /**
9
+ * Symbol used for storing cleanup resources
10
+ * Using a Symbol prevents name collisions with component properties
11
+ */
12
+ const CLEANUP_SUBJECT = Symbol('selectorCleanup')
13
+ const SUBSCRIPTIONS = Symbol('selectorSubscriptions')
14
+ const INITIALIZED = Symbol('selectorInitialized')
15
+ const CONNECTED_CALLED = Symbol('connectedCallbackCalled')
16
+
17
+ /**
18
+ * Component lifecycle interface
19
+ */
20
+ interface ComponentWithLifecycle {
21
+ // Lifecycle hooks
22
+ isConnected: boolean
23
+ disconnectedCallback?: () => void
24
+ connectedCallback?: () => void
25
+ requestUpdate?: () => void
26
+
27
+ // Internal properties using symbols to avoid name collisions
28
+ [CLEANUP_SUBJECT]?: Subject<void>
29
+ [SUBSCRIPTIONS]?: Map<string, Subscription>
30
+ [INITIALIZED]?: Set<string>
31
+ [CONNECTED_CALLED]?: boolean
32
+
33
+ // Value storage
34
+ [key: string]: any
35
+ }
36
+
37
+ /**
38
+ * Property descriptor interface
39
+ */
40
+ type PropertyDescriptor<T> = {
41
+ get?: () => T
42
+ set?: (value: T) => void
43
+ value?: T
44
+ configurable?: boolean
45
+ enumerable?: boolean
46
+ writable?: boolean
47
+ }
48
+
49
+ /**
50
+ * Options for selecting from a store
51
+ */
52
+ interface SelectOptions {
53
+ /** If true, will wait for selector to emit a value (including null) before calling connectedCallback. Only undefined is considered "not ready". Default is true. */
54
+ required?: boolean
55
+
56
+ /** If true, will only update the component and not set the property value */
57
+ updateOnly?: boolean
58
+
59
+ /** If true, will use structuredClone to deeply clone values (prevents mutations) */
60
+ deepClone?: boolean
61
+
62
+ /** Custom equality function to determine when to update */
63
+ equals?: (a: any, b: any) => boolean
64
+
65
+ /** Debug mode - logs selector activity */
66
+ debug?: boolean
67
+ }
68
+
69
+ /**
70
+ * Type guard to check if a store is a collection store
71
+ */
72
+ function isCollectionStore<T>(store: IStore<any> | ICollectionStore<T>): store is ICollectionStore<T> {
73
+ return 'set' in store && typeof store.set === 'function' && store.value instanceof Map
74
+ }
75
+
76
+ /**
77
+ * Ensures the cleanup resources exist on the component
78
+ */
79
+ function ensureCleanupResources(component: ComponentWithLifecycle): void {
80
+ if (!component[CLEANUP_SUBJECT] || component[CLEANUP_SUBJECT].closed) {
81
+ component[CLEANUP_SUBJECT] = new Subject<void>()
82
+ }
83
+
84
+ if (!component[SUBSCRIPTIONS]) {
85
+ component[SUBSCRIPTIONS] = new Map()
86
+ }
87
+
88
+ if (!component[INITIALIZED]) {
89
+ component[INITIALIZED] = new Set()
90
+ }
91
+ }
92
+
93
+ /**
94
+ * Cleans up all selector resources
95
+ */
96
+ function cleanupSelectorResources(component: ComponentWithLifecycle): void {
97
+ if (component[CLEANUP_SUBJECT]) {
98
+ component[CLEANUP_SUBJECT].next()
99
+ component[CLEANUP_SUBJECT].complete()
100
+ component[CLEANUP_SUBJECT] = undefined
101
+ }
102
+
103
+ if (component[SUBSCRIPTIONS]) {
104
+ component[SUBSCRIPTIONS].forEach(sub => sub.unsubscribe())
105
+ component[SUBSCRIPTIONS].clear()
106
+ component[SUBSCRIPTIONS] = undefined
107
+ }
108
+
109
+ if (component[INITIALIZED]) {
110
+ component[INITIALIZED].clear()
111
+ component[INITIALIZED] = undefined
112
+ }
113
+
114
+ // Reset the connected flag when cleaning up
115
+ component[CONNECTED_CALLED] = undefined
116
+ }
117
+
118
+ /**
119
+ * Selector decorator that connects a component property to a store selector
120
+ * with improved memory management
121
+ *
122
+ * @param store The store to select from
123
+ * @param selectorFn Optional function to transform the store state
124
+ * @param options Additional options for the selector
125
+ */
126
+ export function select<T, R>(
127
+ store: IStore<T> | ICollectionStore<T>,
128
+ selectorFn: (state: any) => R = (state: R) => state,
129
+ options: SelectOptions = { required: true },
130
+ ) {
131
+ return function (proto: Record<string, any>, propName: string, _descriptor?: PropertyDescriptor<R>) {
132
+ // Register as a Lit property
133
+ litProperty({ attribute: false, type: Object })(proto, propName)
134
+
135
+ // Store original lifecycle methods
136
+ const originalConnectedCallback = proto.connectedCallback
137
+ const originalDisconnectedCallback = proto.disconnectedCallback
138
+
139
+ // Override connectedCallback to set up subscription
140
+ proto.connectedCallback = function (this: ComponentWithLifecycle) {
141
+ // Initialize cleanup resources
142
+ ensureCleanupResources(this)
143
+
144
+ // Create the appropriate selector
145
+ const selector: Observable<R> = isCollectionStore(store)
146
+ ? createCollectionSelector(store, selectorFn)
147
+ : createSelector(store as IStore<T>, selectorFn)
148
+
149
+ // Call original connectedCallback immediately if not waiting for data
150
+ if (!options.required && !this[CONNECTED_CALLED]) {
151
+ originalConnectedCallback?.call(this)
152
+ this[CONNECTED_CALLED] = true
153
+ }
154
+
155
+ // Clean up any existing subscription
156
+ if (this[SUBSCRIPTIONS]!.has(propName)) {
157
+ this[SUBSCRIPTIONS]!.get(propName)?.unsubscribe()
158
+ this[SUBSCRIPTIONS]!.delete(propName)
159
+ }
160
+
161
+ // Debug log if needed
162
+ if (options.debug) {
163
+ console.debug(`[select] Setting up subscription for ${propName}`)
164
+ }
165
+
166
+ // Create new subscription with better error handling
167
+ const subscription = selector.pipe(takeUntil(this[CLEANUP_SUBJECT]!)).subscribe({
168
+ next: (value: R) => {
169
+ // Handle value updates
170
+ const newValue = options.deepClone ? structuredClone(value) : value
171
+
172
+ if (options.debug) {
173
+ console.debug(`[select] New value for ${propName}:`, newValue)
174
+ }
175
+
176
+ if (!options.updateOnly) {
177
+ this[propName] = newValue
178
+ }
179
+
180
+ this.requestUpdate?.()
181
+
182
+ // If required and not initialized, call connectedCallback when we get a value
183
+ // Allow null values but not undefined (undefined means the selector hasn't emitted yet)
184
+ if (options.required && !this[INITIALIZED]!.has(propName) && newValue !== undefined) {
185
+ this[INITIALIZED]!.add(propName)
186
+
187
+ // Only call original connectedCallback once, regardless of how many selectors
188
+ if (!this[CONNECTED_CALLED]) {
189
+ if (options.debug) {
190
+ console.debug(`[select] Calling delayed connectedCallback for ${propName}`)
191
+ }
192
+
193
+ originalConnectedCallback?.call(this)
194
+ this[CONNECTED_CALLED] = true
195
+ }
196
+ }
197
+ },
198
+ error: (err: Error) => {
199
+ console.error(`Error in selector subscription for ${propName}:`, err)
200
+ // Resubscribe on error to prevent component from becoming unresponsive
201
+ if (this.isConnected) {
202
+ // Small delay to prevent immediate resubscription
203
+ setTimeout(() => {
204
+ if (this.isConnected) {
205
+ if (options.debug) {
206
+ console.debug(`[select] Resubscribing after error for ${propName}`)
207
+ }
208
+ this.connectedCallback?.()
209
+ }
210
+ }, 1000)
211
+ }
212
+ },
213
+ })
214
+
215
+ // Store the subscription for cleanup
216
+ this[SUBSCRIPTIONS]!.set(propName, subscription)
217
+ }
218
+
219
+ // Override disconnectedCallback to clean up subscriptions
220
+ proto.disconnectedCallback = function (this: ComponentWithLifecycle) {
221
+ // Call original disconnectedCallback
222
+ originalDisconnectedCallback?.call(this)
223
+
224
+ // Debug log if needed
225
+ if (options.debug) {
226
+ console.debug(`[select] Cleaning up resources in disconnectedCallback`)
227
+ }
228
+
229
+ // Clean up all subscription resources
230
+ cleanupSelectorResources(this)
231
+ }
232
+ }
233
+ }
234
+
235
+ /**
236
+ * Creates a selector decorator that selects a specific item from a collection store
237
+ * with improved memory management
238
+ *
239
+ * @param store The collection store
240
+ * @param keyGetter Function that returns the key to select
241
+ * @param options Additional options
242
+ */
243
+ export function selectItem<T>(
244
+ store: ICollectionStore<T>,
245
+ keyGetter: (component: any) => string,
246
+ options: SelectOptions = { required: true },
247
+ ) {
248
+ return function (proto: Record<string, any>, propName: string, _descriptor?: PropertyDescriptor<T | undefined>) {
249
+ select(
250
+ store,
251
+ function (state) {
252
+ // This will be evaluated during subscription, when 'this' is available
253
+ const itemKey = keyGetter(this)
254
+ return itemKey ? state.get(itemKey) : undefined
255
+ },
256
+ options,
257
+ )(proto, propName)
258
+ }
259
+ }
@@ -0,0 +1,289 @@
1
+ // src/store/selectors.ts
2
+ import { BehaviorSubject, Observable, combineLatest, distinctUntilChanged, map, share, shareReplay } from 'rxjs'
3
+ import { ICollectionStore, IStore, StoreError } from './types'
4
+
5
+ /**
6
+ * Deep equality comparison for maps and complex objects
7
+ * More efficient than JSON.stringify for large objects
8
+ */
9
+ function deepEqual(a: unknown, b: unknown): boolean {
10
+ if (a === b) return true
11
+
12
+ if (a instanceof Map && b instanceof Map) {
13
+ if (a.size !== b.size) return false
14
+ for (const [key, value] of a) {
15
+ if (!b.has(key) || !deepEqual(value, b.get(key))) return false
16
+ }
17
+ return true
18
+ }
19
+
20
+ if (a instanceof Set && b instanceof Set) {
21
+ if (a.size !== b.size) return false
22
+ for (const item of a) {
23
+ if (!b.has(item)) return false
24
+ }
25
+ return true
26
+ }
27
+
28
+ if (typeof a === 'object' && a !== null && typeof b === 'object' && b !== null) {
29
+ const keysA = Object.keys(a)
30
+ const keysB = Object.keys(b)
31
+
32
+ if (keysA.length !== keysB.length) return false
33
+
34
+ for (const key of keysA) {
35
+ // @ts-ignore: Index signature
36
+ if (!deepEqual(a[key], b[key])) return false
37
+ }
38
+
39
+ return true
40
+ }
41
+
42
+ return false
43
+ }
44
+
45
+ /**
46
+ * Creates a selector that derives a value from store state
47
+ *
48
+ * @param store The store to observe
49
+ * @param selectorFn Function that transforms the state
50
+ * @returns An observable of the selected state that only emits when the derived value changes
51
+ */
52
+ export function createSelector<T, R>(store: IStore<T>, selectorFn: (state: T) => R): Observable<R> {
53
+ return store.$.pipe(map(selectorFn), distinctUntilChanged<R>(deepEqual), shareReplay(1))
54
+ }
55
+
56
+ /**
57
+ * Creates a selector for collection stores that derives a value from the collection
58
+ *
59
+ * @param store The collection store to observe
60
+ * @param selectorFn Function that transforms the collection
61
+ * @returns An observable of the selected state that only emits when the derived value changes
62
+ */
63
+ export function createCollectionSelector<T, R>(
64
+ store: ICollectionStore<T>,
65
+ selectorFn: (state: Map<string, T>) => R,
66
+ ): Observable<R> {
67
+ return store.$.pipe(map(selectorFn), distinctUntilChanged<R>(deepEqual), shareReplay(1))
68
+ }
69
+
70
+ /**
71
+ * Creates a selector that returns all items from a collection as an array
72
+ *
73
+ * @param store The collection store
74
+ * @returns An observable of all items as an array
75
+ */
76
+ export function createItemsSelector<T>(store: ICollectionStore<T>): Observable<T[]> {
77
+ return createCollectionSelector(store, collection => Array.from(collection.values()))
78
+ }
79
+
80
+ /**
81
+ * Creates a selector that retrieves a single item from a collection
82
+ *
83
+ * @param store The collection store
84
+ * @param itemKey The key of the item to select
85
+ * @returns An observable of the selected item that emits when the item changes
86
+ */
87
+ export function createItemSelector<T>(store: ICollectionStore<T>, itemKey: string): Observable<T | undefined> {
88
+ return createCollectionSelector(store, collection => collection.get(itemKey))
89
+ }
90
+
91
+ /**
92
+ * Creates a selector that returns all keys from a collection
93
+ */
94
+ export function createKeysSelector<T>(store: ICollectionStore<T>): Observable<string[]> {
95
+ return createCollectionSelector(store, collection => Array.from(collection.keys()))
96
+ }
97
+
98
+ /**
99
+ * Creates a selector that returns entries (key-value pairs) from a collection
100
+ */
101
+ export function createEntriesSelector<T>(store: ICollectionStore<T>): Observable<[string, T][]> {
102
+ return createCollectionSelector(store, collection => Array.from(collection.entries()))
103
+ }
104
+
105
+ /**
106
+ * Creates a selector that sorts collection items
107
+ */
108
+ export function createSortSelector<T>(store: ICollectionStore<T>, compareFn: (a: T, b: T) => number): Observable<T[]> {
109
+ return createCollectionSelector(store, collection => {
110
+ return Array.from(collection.values()).sort(compareFn)
111
+ })
112
+ }
113
+
114
+ /**
115
+ * Creates a selector that finds the first item matching a predicate
116
+ */
117
+ export function createFindSelector<T>(
118
+ store: ICollectionStore<T>,
119
+ predicate: (item: T, key: string) => boolean,
120
+ ): Observable<T | undefined> {
121
+ return createCollectionSelector(store, collection => {
122
+ for (const [key, item] of collection.entries()) {
123
+ if (predicate(item, key)) {
124
+ return item
125
+ }
126
+ }
127
+ return undefined
128
+ })
129
+ }
130
+
131
+ /**
132
+ * Creates a selector that filters items from a collection - OPTIMIZED
133
+ *
134
+ * @param store The collection store
135
+ * @param filterFn Function that returns true for items to include
136
+ * @returns An observable of filtered items as an array
137
+ */
138
+ export function createFilterSelector<T>(
139
+ store: ICollectionStore<T>,
140
+ filterFn: (item: T, key: string) => boolean,
141
+ ): Observable<T[]> {
142
+ return createCollectionSelector(store, collection =>
143
+ Array.from(collection.entries())
144
+ .filter(([key, item]) => filterFn(item, key))
145
+ .map(([_, item]) => item),
146
+ )
147
+ }
148
+
149
+ /**
150
+ * Creates a selector that maps collection values through a transform function - OPTIMIZED
151
+ */
152
+ export function createMapSelector<T, R>(
153
+ store: ICollectionStore<T>,
154
+ mapFn: (item: T, key: string) => R,
155
+ ): Observable<R[]> {
156
+ return createCollectionSelector(store, collection =>
157
+ Array.from(collection.entries()).map(([key, item]) => mapFn(item, key)),
158
+ )
159
+ }
160
+
161
+ /**
162
+ * Creates a selector that counts items in a collection, optionally filtered - OPTIMIZED
163
+ *
164
+ * @param store The collection store
165
+ * @param filterFn Optional function to filter which items to count
166
+ * @returns An observable of the count
167
+ */
168
+ export function createCountSelector<T>(
169
+ store: ICollectionStore<T>,
170
+ filterFn?: (item: T, key: string) => boolean,
171
+ ): Observable<number> {
172
+ return createCollectionSelector(store, collection => {
173
+ if (!filterFn) return collection.size
174
+
175
+ return Array.from(collection.entries()).filter(([key, item]) => filterFn(item, key)).length
176
+ })
177
+ }
178
+
179
+ /**
180
+ * Optimized RxJS Pipeline - use share with reset on refCount zero for better memory management
181
+ * in scenarios where selector subscriptions come and go
182
+ *
183
+ * @param store The store to observe
184
+ * @param selectorFn Function that transforms the state
185
+ * @returns An observable of the selected state with improved memory management
186
+ */
187
+ export function createOptimizedSelector<T, R>(store: IStore<T>, selectorFn: (state: T) => R): Observable<R> {
188
+ return store.$.pipe(
189
+ map(selectorFn),
190
+ distinctUntilChanged<R>(deepEqual),
191
+ share({
192
+ resetOnRefCountZero: true,
193
+ resetOnError: false,
194
+ resetOnComplete: false,
195
+ }),
196
+ )
197
+ }
198
+
199
+ /**
200
+ * Creates a compound selector from multiple stores
201
+ *
202
+ * This function combines data from multiple stores to create a derived
203
+ * state that's compatible with the @select decorator.
204
+ *
205
+ * @param stores Array of stores to derive state from
206
+ * @param selectorFns Selector functions for each store
207
+ * @param combinerFn Function that combines the selected values
208
+ * @returns A store-compatible object to use with @select
209
+ */
210
+ export function createCompoundSelector<R>(
211
+ stores: Array<IStore<any> | ICollectionStore<any>>,
212
+ selectorFns: Array<(state: any) => any>,
213
+ combinerFn: (...values: any[]) => R,
214
+ ): IStore<R> {
215
+ // Calculate initial value
216
+ const initialValues = stores.map((store, index) => selectorFns[index](store.value))
217
+ const initialValue = combinerFn(...initialValues)
218
+
219
+ // Create a store with the initial value
220
+ const result: IStore<R> = {
221
+ $: new BehaviorSubject<R>(initialValue),
222
+ error$: new BehaviorSubject<StoreError | null>(null),
223
+ ready: true,
224
+ defaultValue: initialValue,
225
+
226
+ get value(): R {
227
+ return this.$.getValue()
228
+ },
229
+
230
+ // These methods are no-ops for read-only stores
231
+ set(_value: Partial<R>, _merge?: boolean): void {
232
+ console.warn('Compound selector store is read-only')
233
+ },
234
+
235
+ clear(): void {
236
+ this.$.next(this.defaultValue)
237
+ },
238
+
239
+ replace(_newValue: R): void {
240
+ console.warn('Compound selector store is read-only')
241
+ },
242
+
243
+ delete<K extends keyof R>(_key: K): void {
244
+ console.warn('Compound selector store is read-only')
245
+ },
246
+
247
+ destroy(): void {
248
+ this.$.complete()
249
+ this.error$.complete()
250
+ },
251
+ }
252
+
253
+ // Set up the reactivity by subscribing to all source stores
254
+ const observables = stores.map((store, _) => store.$)
255
+
256
+ // Create a subscription that updates the result whenever any source changes
257
+ const subscription = combineLatest(observables).subscribe({
258
+ next: storeValues => {
259
+ try {
260
+ // Apply selectors to each store value
261
+ const selectedValues = storeValues.map((value, index) => selectorFns[index](value))
262
+
263
+ // Apply combiner function
264
+ const newValue = combinerFn(...selectedValues)
265
+
266
+ // Update the BehaviorSubject
267
+ result.$.next(newValue)
268
+ } catch (err) {
269
+ const error = new StoreError('Error in compound selector', err)
270
+ result.error$.next(error)
271
+ console.error(error)
272
+ }
273
+ },
274
+ error: err => {
275
+ const error = new StoreError('Error in store subscription', err)
276
+ result.error$.next(error)
277
+ console.error(error)
278
+ },
279
+ })
280
+
281
+ // Ensure the subscription is cleaned up when the store is destroyed
282
+ const originalDestroy = result.destroy
283
+ result.destroy = function () {
284
+ subscription.unsubscribe()
285
+ originalDestroy.call(this)
286
+ }
287
+
288
+ return result
289
+ }