@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
@@ -1,220 +0,0 @@
1
- import { e as y, n as h } from "./provide-tcktw8xB.js";
2
- import { T as u } from "./tailwind.mixin-Bp_PR6yc.js";
3
- import { css as v, html as m } from "lit";
4
- import { property as e, customElement as d } from "lit/decorators.js";
5
- var p = Object.defineProperty, f = Object.getOwnPropertyDescriptor, s = (i, a, n, c) => {
6
- for (var t, o = c > 1 ? void 0 : c ? f(a, n) : a, l = i.length - 1; l >= 0; l--) (t = i[l]) && (o = (c ? t(a, n, o) : t(o)) || o);
7
- return c && o && p(a, n, o), o;
8
- };
9
- const b = h("surface");
10
- let r = class extends u(v`
11
- :host {
12
- display: block;
13
- box-sizing: border-box;
14
- overflow: visible;
15
- }
16
-
17
- /* Fill styles */
18
- :host([fill='all']) {
19
- height: 100%;
20
- width: 100%;
21
- }
22
- :host([fill='width']) {
23
- width: 100%;
24
- }
25
- :host([fill='height']) {
26
- height: 100%;
27
- }
28
-
29
- /* Rounded corner styles using M3 shape tokens */
30
- :host([rounded='none']) {
31
- border-radius: 0;
32
- }
33
- :host([rounded='top']) {
34
- border-radius: var(--schmancy-sys-shape-corner-small) var(--schmancy-sys-shape-corner-small) 0 0;
35
- }
36
- :host([rounded='left']) {
37
- border-radius: var(--schmancy-sys-shape-corner-small) 0 0 var(--schmancy-sys-shape-corner-small);
38
- }
39
- :host([rounded='right']) {
40
- border-radius: 0 var(--schmancy-sys-shape-corner-small) var(--schmancy-sys-shape-corner-small) 0;
41
- }
42
- :host([rounded='bottom']) {
43
- border-radius: 0 0 var(--schmancy-sys-shape-corner-small) var(--schmancy-sys-shape-corner-small);
44
- }
45
- :host([rounded='all']) {
46
- border-radius: var(--schmancy-sys-shape-corner-small);
47
- }
48
-
49
- /* Elevation styles with M3 surface tint support */
50
- :host([elevation='1']) {
51
- box-shadow: var(--schmancy-sys-elevation-1);
52
- /* Apply surface tint for elevated surfaces */
53
- position: relative;
54
- }
55
- :host([elevation='2']) {
56
- box-shadow: var(--schmancy-sys-elevation-2);
57
- position: relative;
58
- }
59
- :host([elevation='3']) {
60
- box-shadow: var(--schmancy-sys-elevation-3);
61
- position: relative;
62
- }
63
- :host([elevation='4']) {
64
- box-shadow: var(--schmancy-sys-elevation-4);
65
- position: relative;
66
- }
67
- :host([elevation='5']) {
68
- box-shadow: var(--schmancy-sys-elevation-5);
69
- position: relative;
70
- }
71
-
72
- /* M3 Surface tint overlay for elevated surfaces */
73
- :host([elevation]:not([elevation='0']))::after {
74
- content: '';
75
- position: absolute;
76
- inset: 0;
77
- border-radius: inherit;
78
- pointer-events: none;
79
- background: var(--schmancy-sys-color-surface-tint);
80
- /* Tint opacity increases with elevation */
81
- opacity: calc(var(--elevation, 0) * 0.02);
82
- }
83
- :host([elevation='1'])::after { --elevation: 1; }
84
- :host([elevation='2'])::after { --elevation: 2; }
85
- :host([elevation='3'])::after { --elevation: 3; }
86
- :host([elevation='4'])::after { --elevation: 4; }
87
- :host([elevation='5'])::after { --elevation: 5; }
88
-
89
- /* Surface type styles - background and text colors */
90
- /* Note: surface-low/high/lowest/highest map to M3 containerLow/High/Lowest/Highest */
91
- :host([type='surface']) {
92
- background-color: var(--schmancy-sys-color-surface-default);
93
- color: var(--schmancy-sys-color-surface-on);
94
- }
95
- :host([type='surfaceDim']) {
96
- background-color: var(--schmancy-sys-color-surface-dim);
97
- color: var(--schmancy-sys-color-surface-on);
98
- }
99
- :host([type='surfaceBright']) {
100
- background-color: var(--schmancy-sys-color-surface-bright);
101
- color: var(--schmancy-sys-color-surface-on);
102
- }
103
- :host([type='containerLowest']) {
104
- /* M3 containerLowest */
105
- background-color: var(--schmancy-sys-color-surface-lowest);
106
- color: var(--schmancy-sys-color-surface-on);
107
- }
108
- :host([type='containerLow']) {
109
- /* M3 containerLow */
110
- background-color: var(--schmancy-sys-color-surface-low);
111
- color: var(--schmancy-sys-color-surface-on);
112
- }
113
- :host([type='container']) {
114
- /* M3 container */
115
- background-color: var(--schmancy-sys-color-surface-container);
116
- color: var(--schmancy-sys-color-surface-on);
117
- }
118
- :host([type='containerHigh']) {
119
- /* M3 containerHigh */
120
- background-color: var(--schmancy-sys-color-surface-high);
121
- color: var(--schmancy-sys-color-surface-on);
122
- }
123
- :host([type='containerHighest']) {
124
- /* M3 containerHighest */
125
- background-color: var(--schmancy-sys-color-surface-highest);
126
- color: var(--schmancy-sys-color-surface-on);
127
- }
128
- :host([type='glass']) {
129
- /* Glassmorphism effect with theme-aware colors */
130
- background-color: color-mix(in srgb, var(--schmancy-sys-color-surface-container) 70%, transparent);
131
- backdrop-filter: blur(10px) saturate(180%);
132
- -webkit-backdrop-filter: blur(10px) saturate(180%);
133
- color: var(--schmancy-sys-color-surface-on);
134
- border: 1px solid color-mix(in srgb, var(--schmancy-sys-color-surface-on) 10%, transparent);
135
- }
136
- :host([type='transparent']) {
137
- /* Fully transparent background */
138
- background-color: transparent;
139
- color: var(--schmancy-sys-color-surface-on);
140
- }
141
- :host([type='glassOforim']) {
142
- /* Oforim-specific glass variant with enhanced blur */
143
- background-color: color-mix(in srgb, var(--schmancy-sys-color-surface-container) 60%, transparent);
144
- backdrop-filter: blur(16px) saturate(200%) brightness(1.1);
145
- -webkit-backdrop-filter: blur(16px) saturate(200%) brightness(1.1);
146
- color: var(--schmancy-sys-color-surface-on);
147
- border: 1px solid color-mix(in srgb, var(--schmancy-sys-color-primary-default) 20%, transparent);
148
- }
149
-
150
- /* State-based surface types for selection/active states */
151
- :host([type='primary']) {
152
- background-color: var(--schmancy-sys-color-primary-default);
153
- color: var(--schmancy-sys-color-primary-on);
154
- }
155
- :host([type='primaryContainer']) {
156
- background-color: var(--schmancy-sys-color-primary-container);
157
- color: var(--schmancy-sys-color-primary-onContainer);
158
- }
159
- :host([type='secondary']) {
160
- background-color: var(--schmancy-sys-color-secondary-default);
161
- color: var(--schmancy-sys-color-secondary-on);
162
- }
163
- :host([type='secondaryContainer']) {
164
- background-color: var(--schmancy-sys-color-secondary-container);
165
- color: var(--schmancy-sys-color-secondary-onContainer);
166
- }
167
- :host([type='tertiary']) {
168
- background-color: var(--schmancy-sys-color-tertiary-default);
169
- color: var(--schmancy-sys-color-tertiary-on);
170
- }
171
- :host([type='tertiaryContainer']) {
172
- background-color: var(--schmancy-sys-color-tertiary-container);
173
- color: var(--schmancy-sys-color-tertiary-onContainer);
174
- }
175
- :host([type='error']) {
176
- background-color: var(--schmancy-sys-color-error-container);
177
- color: var(--schmancy-sys-color-error-onContainer);
178
- }
179
- :host([type='errorContainer']) {
180
- background-color: var(--schmancy-sys-color-error-container);
181
- color: var(--schmancy-sys-color-error-onContainer);
182
- }
183
- :host([type='success']) {
184
- background-color: var(--schmancy-sys-color-success-default);
185
- color: var(--schmancy-sys-color-success-on);
186
- }
187
- :host([type='successContainer']) {
188
- background-color: var(--schmancy-sys-color-success-container);
189
- color: var(--schmancy-sys-color-success-onContainer);
190
- }
191
- :host([type='warning']) {
192
- background-color: var(--schmancy-sys-color-warning-default);
193
- color: var(--schmancy-sys-color-warning-on);
194
- }
195
- :host([type='warningContainer']) {
196
- background-color: var(--schmancy-sys-color-warning-container);
197
- color: var(--schmancy-sys-color-warning-onContainer);
198
- }
199
- :host([type='info']) {
200
- background-color: var(--schmancy-sys-color-info-default);
201
- color: var(--schmancy-sys-color-info-on);
202
- }
203
- :host([type='infoContainer']) {
204
- background-color: var(--schmancy-sys-color-info-container);
205
- color: var(--schmancy-sys-color-info-onContainer);
206
- }
207
- `) {
208
- constructor() {
209
- super(...arguments), this.fill = "auto", this.rounded = "none", this.type = "container", this.elevation = 0;
210
- }
211
- render() {
212
- return m`<slot></slot>`;
213
- }
214
- };
215
- s([e({ type: String, reflect: !0 })], r.prototype, "fill", 2), s([e({ reflect: !0 })], r.prototype, "rounded", 2), s([y({ context: b }), e({ reflect: !0 })], r.prototype, "type", 2), s([e({ type: Number, reflect: !0 })], r.prototype, "elevation", 2), r = s([d("schmancy-surface")], r);
216
- export {
217
- b as S,
218
- r as a
219
- };
220
- //# sourceMappingURL=surface-eBfnSwQS.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"surface-eBfnSwQS.js","sources":["../src/surface/surface.ts"],"sourcesContent":["import { createContext, provide } from '@lit/context'\nimport { TailwindElement } from '@mixins/tailwind.mixin'\nimport { TSurfaceColor } from '@schmancy/types'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\n\nexport const SchmancySurfaceTypeContext = createContext<TSurfaceColor>('surface')\n\nexport type SchmancySurfaceFill = 'all' | 'width' | 'height' | 'auto'\n/**\n * `<schmancy-surface>` component\n *\n * This component renders a styled container that adapts its dimensions based on the `fill` property.\n * It supports various rounding options, elevation levels, and applies background and text color classes\n * based on the specified surface variant. Additionally, when the `scroller` property is true, the component\n * enables internal scrolling by applying overflow and scroll-behavior styles.\n *\n * @element schmancy-surface\n * @slot - Default slot for projecting child content.\n *\n * @example\n * <schmancy-surface fill=\"all\" rounded=\"all\" elevation=\"3\" type=\"surfaceBright\" scroller>\n * <p>Your scrollable content here</p>\n * </schmancy-surface>\n */\n@customElement('schmancy-surface')\nexport class SchmancySurface extends TailwindElement(css`\n\t:host {\n\t\tdisplay: block;\n\t\tbox-sizing: border-box;\n overflow: visible;\n\t}\n\t\n\t/* Fill styles */\n\t:host([fill='all']) {\n\t\theight: 100%;\n\t\twidth: 100%;\n\t}\n\t:host([fill='width']) {\n\t\twidth: 100%;\n\t}\n\t:host([fill='height']) {\n\t\theight: 100%;\n\t}\n\t\n\t/* Rounded corner styles using M3 shape tokens */\n\t:host([rounded='none']) {\n\t\tborder-radius: 0;\n\t}\n\t:host([rounded='top']) {\n\t\tborder-radius: var(--schmancy-sys-shape-corner-small) var(--schmancy-sys-shape-corner-small) 0 0;\n\t}\n\t:host([rounded='left']) {\n\t\tborder-radius: var(--schmancy-sys-shape-corner-small) 0 0 var(--schmancy-sys-shape-corner-small);\n\t}\n\t:host([rounded='right']) {\n\t\tborder-radius: 0 var(--schmancy-sys-shape-corner-small) var(--schmancy-sys-shape-corner-small) 0;\n\t}\n\t:host([rounded='bottom']) {\n\t\tborder-radius: 0 0 var(--schmancy-sys-shape-corner-small) var(--schmancy-sys-shape-corner-small);\n\t}\n\t:host([rounded='all']) {\n\t\tborder-radius: var(--schmancy-sys-shape-corner-small);\n\t}\n\t\n\t/* Elevation styles with M3 surface tint support */\n\t:host([elevation='1']) {\n\t\tbox-shadow: var(--schmancy-sys-elevation-1);\n\t\t/* Apply surface tint for elevated surfaces */\n\t\tposition: relative;\n\t}\n\t:host([elevation='2']) {\n\t\tbox-shadow: var(--schmancy-sys-elevation-2);\n\t\tposition: relative;\n\t}\n\t:host([elevation='3']) {\n\t\tbox-shadow: var(--schmancy-sys-elevation-3);\n\t\tposition: relative;\n\t}\n\t:host([elevation='4']) {\n\t\tbox-shadow: var(--schmancy-sys-elevation-4);\n\t\tposition: relative;\n\t}\n\t:host([elevation='5']) {\n\t\tbox-shadow: var(--schmancy-sys-elevation-5);\n\t\tposition: relative;\n\t}\n\n\t/* M3 Surface tint overlay for elevated surfaces */\n\t:host([elevation]:not([elevation='0']))::after {\n\t\tcontent: '';\n\t\tposition: absolute;\n\t\tinset: 0;\n\t\tborder-radius: inherit;\n\t\tpointer-events: none;\n\t\tbackground: var(--schmancy-sys-color-surface-tint);\n\t\t/* Tint opacity increases with elevation */\n\t\topacity: calc(var(--elevation, 0) * 0.02);\n\t}\n\t:host([elevation='1'])::after { --elevation: 1; }\n\t:host([elevation='2'])::after { --elevation: 2; }\n\t:host([elevation='3'])::after { --elevation: 3; }\n\t:host([elevation='4'])::after { --elevation: 4; }\n\t:host([elevation='5'])::after { --elevation: 5; }\n\t\n\t/* Surface type styles - background and text colors */\n\t/* Note: surface-low/high/lowest/highest map to M3 containerLow/High/Lowest/Highest */\n\t:host([type='surface']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-default);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='surfaceDim']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-dim);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='surfaceBright']) {\n\t\tbackground-color: var(--schmancy-sys-color-surface-bright);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='containerLowest']) {\n\t\t/* M3 containerLowest */\n\t\tbackground-color: var(--schmancy-sys-color-surface-lowest);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='containerLow']) {\n\t\t/* M3 containerLow */\n\t\tbackground-color: var(--schmancy-sys-color-surface-low);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='container']) {\n\t\t/* M3 container */\n\t\tbackground-color: var(--schmancy-sys-color-surface-container);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='containerHigh']) {\n\t\t/* M3 containerHigh */\n\t\tbackground-color: var(--schmancy-sys-color-surface-high);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='containerHighest']) {\n\t\t/* M3 containerHighest */\n\t\tbackground-color: var(--schmancy-sys-color-surface-highest);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='glass']) {\n\t\t/* Glassmorphism effect with theme-aware colors */\n\t\tbackground-color: color-mix(in srgb, var(--schmancy-sys-color-surface-container) 70%, transparent);\n\t\tbackdrop-filter: blur(10px) saturate(180%);\n\t\t-webkit-backdrop-filter: blur(10px) saturate(180%);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t\tborder: 1px solid color-mix(in srgb, var(--schmancy-sys-color-surface-on) 10%, transparent);\n\t}\n\t:host([type='transparent']) {\n\t\t/* Fully transparent background */\n\t\tbackground-color: transparent;\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t}\n\t:host([type='glassOforim']) {\n\t\t/* Oforim-specific glass variant with enhanced blur */\n\t\tbackground-color: color-mix(in srgb, var(--schmancy-sys-color-surface-container) 60%, transparent);\n\t\tbackdrop-filter: blur(16px) saturate(200%) brightness(1.1);\n\t\t-webkit-backdrop-filter: blur(16px) saturate(200%) brightness(1.1);\n\t\tcolor: var(--schmancy-sys-color-surface-on);\n\t\tborder: 1px solid color-mix(in srgb, var(--schmancy-sys-color-primary-default) 20%, transparent);\n\t}\n\n\t/* State-based surface types for selection/active states */\n\t:host([type='primary']) {\n\t\tbackground-color: var(--schmancy-sys-color-primary-default);\n\t\tcolor: var(--schmancy-sys-color-primary-on);\n\t}\n\t:host([type='primaryContainer']) {\n\t\tbackground-color: var(--schmancy-sys-color-primary-container);\n\t\tcolor: var(--schmancy-sys-color-primary-onContainer);\n\t}\n\t:host([type='secondary']) {\n\t\tbackground-color: var(--schmancy-sys-color-secondary-default);\n\t\tcolor: var(--schmancy-sys-color-secondary-on);\n\t}\n\t:host([type='secondaryContainer']) {\n\t\tbackground-color: var(--schmancy-sys-color-secondary-container);\n\t\tcolor: var(--schmancy-sys-color-secondary-onContainer);\n\t}\n\t:host([type='tertiary']) {\n\t\tbackground-color: var(--schmancy-sys-color-tertiary-default);\n\t\tcolor: var(--schmancy-sys-color-tertiary-on);\n\t}\n\t:host([type='tertiaryContainer']) {\n\t\tbackground-color: var(--schmancy-sys-color-tertiary-container);\n\t\tcolor: var(--schmancy-sys-color-tertiary-onContainer);\n\t}\n\t:host([type='error']) {\n\t\tbackground-color: var(--schmancy-sys-color-error-container);\n\t\tcolor: var(--schmancy-sys-color-error-onContainer);\n\t}\n\t:host([type='errorContainer']) {\n\t\tbackground-color: var(--schmancy-sys-color-error-container);\n\t\tcolor: var(--schmancy-sys-color-error-onContainer);\n\t}\n\t:host([type='success']) {\n\t\tbackground-color: var(--schmancy-sys-color-success-default);\n\t\tcolor: var(--schmancy-sys-color-success-on);\n\t}\n\t:host([type='successContainer']) {\n\t\tbackground-color: var(--schmancy-sys-color-success-container);\n\t\tcolor: var(--schmancy-sys-color-success-onContainer);\n\t}\n\t:host([type='warning']) {\n\t\tbackground-color: var(--schmancy-sys-color-warning-default);\n\t\tcolor: var(--schmancy-sys-color-warning-on);\n\t}\n\t:host([type='warningContainer']) {\n\t\tbackground-color: var(--schmancy-sys-color-warning-container);\n\t\tcolor: var(--schmancy-sys-color-warning-onContainer);\n\t}\n\t:host([type='info']) {\n\t\tbackground-color: var(--schmancy-sys-color-info-default);\n\t\tcolor: var(--schmancy-sys-color-info-on);\n\t}\n\t:host([type='infoContainer']) {\n\t\tbackground-color: var(--schmancy-sys-color-info-container);\n\t\tcolor: var(--schmancy-sys-color-info-onContainer);\n\t}\n`) {\n\t/**\n\t * Fill the width and/or height of the parent container.\n\t * Options: 'all', 'width', 'height', 'auto'.\n\t * @default 'auto'\n\t */\n\t@property({ type: String, reflect: true })\n\tfill: 'all' | 'width' | 'height' | 'auto' = 'auto'\n\n\t/**\n\t * Specifies the rounding style of the component's corners.\n\t * Options: 'none', 'top', 'left', 'right', 'bottom', 'all'.\n\t * @default 'none'\n\t */\n\t@property({ reflect: true })\n\trounded: 'none' | 'top' | 'left' | 'right' | 'bottom' | 'all' = 'none'\n\n\t/**\n\t * Specifies the surface type for styling.\n\t * Provided to descendant components via context.\n\t * Options: 'surface', 'surfaceDim', 'surfaceBright', 'containerLowest',\n\t * 'containerLow', 'container', 'containerHigh', 'containerHighest',\n\t * 'glass', 'transparent', 'glassOforim', 'primary', 'primaryContainer',\n\t * 'secondary', 'secondaryContainer', 'tertiary', 'tertiaryContainer',\n\t * 'error', 'errorContainer', 'success', 'successContainer',\n\t * 'warning', 'warningContainer', 'info', 'infoContainer'.\n\t * @default 'container'\n\t */\n\t@provide({ context: SchmancySurfaceTypeContext })\n\t@property({ reflect: true })\n\ttype: TSurfaceColor = 'container'\n\n\t/**\n\t * Defines the elevation level (shadow depth) of the surface.\n\t * Valid values: 0, 1, 2, 3, 4, 5.\n\t * @default 0\n\t */\n\t@property({ type: Number, reflect: true })\n\televation: 0 | 1 | 2 | 3 | 4 | 5 = 0\n\n\tprotected render(): unknown {\n\t\treturn html`<slot></slot>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-surface': SchmancySurface\n\t}\n}\n"],"names":["SchmancySurfaceTypeContext","createContext","SchmancySurface","TailwindElement","css","super","arguments","this","fill","rounded","type","elevation","render","html","__decorateClass","property","String","reflect","prototype","provide","context","Number","customElement"],"mappings":";;;;;;;;AAMO,MAAMA,IAA6BC,EAA6B,SAAA;AAoBhE,IAAMC,IAAN,cAA8BC,EAAgBC;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,CAA9C,EAAA;AAAA,EAAA;AAAAC,UAAAA,GAAAC,SAAAA,GA4MNC,KAAAC,OAA4C,QAQ5CD,KAAAE,UAAgE,QAehEF,KAAAG,OAAsB,aAQtBH,KAAAI,YAAmC;AAAA,EAAA;AAAA,EAEzB,SAAAC;AACT,WAAOC;AAAAA,EACR;AAAA;AAnCAC,EAAA,CADCC,EAAS,EAAEL,MAAMM,QAAQC,SAAAA,GAAS,CAAA,CAAA,GA3MvBf,EA4MZgB,WAAA,QAAA,CAAA,GAQAJ,EAAA,CADCC,EAAS,EAAEE,SAAAA,GAAS,CAAA,CAAA,GAnNTf,EAoNZgB,WAAA,WAAA,CAAA,GAeAJ,EAAA,CAFCK,EAAQ,EAAEC,SAASpB,EAAAA,CAAAA,GACnBe,EAAS,EAAEE,SAAAA,GAAS,CAAA,CAAA,GAlOTf,EAmOZgB,WAAA,QAAA,CAAA,GAQAJ,EAAA,CADCC,EAAS,EAAEL,MAAMW,QAAQJ,SAAAA,QA1Odf,EA2OZgB,WAAA,aAAA,CAAA,GA3OYhB,IAANY,EAAA,CADNQ,EAAc,kBAAA,CAAA,GACFpB;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"surface.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"surface.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
@@ -1,64 +0,0 @@
1
- "use strict";const y=require("./tslib.es6-DgOcxv4s.cjs"),h=require("lit"),g=require("lit/decorators/property.js"),x=require("lit/directive.js"),A=require("lit/async-directive.js"),N=require("lit/directives/repeat.js"),D=require("./litElement.mixin-CrpeGpZ7.cjs"),c=require("lit/decorators.js");var B=Object.defineProperty,j=Object.getOwnPropertyDescriptor,v=(l,t,e,i)=>{for(var s,r=i>1?void 0:i?j(t,e):t,o=l.length-1;o>=0;o--)(s=l[o])&&(r=(i?s(t,e,r):s(r))||r);return i&&r&&B(t,e,r),r};exports.SchmancyTableRow=class extends D.$LitElement(){constructor(){super(...arguments),this.columns=[],this.cols=this.columns.map(()=>"1fr").join(" ")}renderCell(l){if(l.render)return h.html`
2
- <div class="overflow-hidden text-ellipsis">
3
- <schmancy-typography align="${l.align||"left"}" maxLines="2" weight="${l.weight||"normal"}">
4
- ${l.render(this.item)}
5
- </schmancy-typography>
6
- </div>
7
- `;const t=l.key?this.item[l.key]:"";return h.html`
8
- <div class="overflow-hidden text-ellipsis">
9
- <schmancy-typography align="${l.align||"left"}" maxLines="2" weight="${l.weight||"normal"}">
10
- ${t}
11
- </schmancy-typography>
12
- </div>
13
- `}render(){return h.html`
14
- <schmancy-list-item class="w-full">
15
- <schmancy-grid .cols=${this.cols} align="center" gap="md">
16
- ${this.columns.map(l=>this.renderCell(l))}
17
- </schmancy-grid>
18
- </schmancy-list-item>
19
- `}},v([c.property({type:Array,attribute:!1})],exports.SchmancyTableRow.prototype,"columns",2),v([c.property({type:Object,attribute:!1})],exports.SchmancyTableRow.prototype,"item",2),v([c.property({type:String})],exports.SchmancyTableRow.prototype,"cols",2),exports.SchmancyTableRow=v([c.customElement("schmancy-table-row")],exports.SchmancyTableRow);class C extends Event{constructor(t){super(C.eventName,{bubbles:!1}),this.first=t.first,this.last=t.last}}C.eventName="rangeChanged";class S extends Event{constructor(t){super(S.eventName,{bubbles:!1}),this.first=t.first,this.last=t.last}}S.eventName="visibilityChanged";class E extends Event{constructor(){super(E.eventName,{bubbles:!1})}}E.eventName="unpinned";class P{constructor(t){this._element=null;const e=t??window;this._node=e,t&&(this._element=t)}get element(){return this._element||document.scrollingElement||document.documentElement}get scrollTop(){return this.element.scrollTop||window.scrollY}get scrollLeft(){return this.element.scrollLeft||window.scrollX}get scrollHeight(){return this.element.scrollHeight}get scrollWidth(){return this.element.scrollWidth}get viewportHeight(){return this._element?this._element.getBoundingClientRect().height:window.innerHeight}get viewportWidth(){return this._element?this._element.getBoundingClientRect().width:window.innerWidth}get maxScrollTop(){return this.scrollHeight-this.viewportHeight}get maxScrollLeft(){return this.scrollWidth-this.viewportWidth}}class H extends P{constructor(t,e){super(e),this._clients=new Set,this._retarget=null,this._end=null,this.t=null,this.correctingScrollError=!1,this._checkForArrival=this._checkForArrival.bind(this),this._updateManagedScrollTo=this._updateManagedScrollTo.bind(this),this.scrollTo=this.scrollTo.bind(this),this.scrollBy=this.scrollBy.bind(this);const i=this._node;this._originalScrollTo=i.scrollTo,this._originalScrollBy=i.scrollBy,this._originalScroll=i.scroll,this._attach(t)}get _destination(){return this.t}get scrolling(){return this._destination!==null}scrollTo(t,e){const i=typeof t=="number"&&typeof e=="number"?{left:t,top:e}:t;this._scrollTo(i)}scrollBy(t,e){const i=typeof t=="number"&&typeof e=="number"?{left:t,top:e}:t;i.top!==void 0&&(i.top+=this.scrollTop),i.left!==void 0&&(i.left+=this.scrollLeft),this._scrollTo(i)}_nativeScrollTo(t){this._originalScrollTo.bind(this._element||window)(t)}_scrollTo(t,e=null,i=null){this._end!==null&&this._end(),t.behavior==="smooth"?(this._setDestination(t),this._retarget=e,this._end=i):this._resetScrollState(),this._nativeScrollTo(t)}_setDestination(t){let{top:e,left:i}=t;return e=e===void 0?void 0:Math.max(0,Math.min(e,this.maxScrollTop)),i=i===void 0?void 0:Math.max(0,Math.min(i,this.maxScrollLeft)),(this._destination===null||i!==this._destination.left||e!==this._destination.top)&&(this.t={top:e,left:i,behavior:"smooth"},!0)}_resetScrollState(){this.t=null,this._retarget=null,this._end=null}_updateManagedScrollTo(t){this._destination&&this._setDestination(t)&&this._nativeScrollTo(this._destination)}managedScrollTo(t,e,i){return this._scrollTo(t,e,i),this._updateManagedScrollTo}correctScrollError(t){this.correctingScrollError=!0,requestAnimationFrame(()=>requestAnimationFrame(()=>this.correctingScrollError=!1)),this._nativeScrollTo(t),this._retarget&&this._setDestination(this._retarget()),this._destination&&this._nativeScrollTo(this._destination)}_checkForArrival(){if(this._destination!==null){const{scrollTop:t,scrollLeft:e}=this;let{top:i,left:s}=this._destination;i=Math.min(i||0,this.maxScrollTop),s=Math.min(s||0,this.maxScrollLeft);const r=Math.abs(i-t),o=Math.abs(s-e);r<1&&o<1&&(this._end&&this._end(),this._resetScrollState())}}detach(t){return this._clients.delete(t),this._clients.size===0&&(this._node.scrollTo=this._originalScrollTo,this._node.scrollBy=this._originalScrollBy,this._node.scroll=this._originalScroll,this._node.removeEventListener("scroll",this._checkForArrival)),null}_attach(t){this._clients.add(t),this._clients.size===1&&(this._node.scrollTo=this.scrollTo,this._node.scrollBy=this.scrollBy,this._node.scroll=this.scrollTo,this._node.addEventListener("scroll",this._checkForArrival))}}let L=typeof window<"u"?window.ResizeObserver:void 0;const T=Symbol("virtualizerRef"),b="virtualizer-sizer";let z;class q{constructor(t){if(this._benchmarkStart=null,this._layout=null,this._clippingAncestors=[],this._scrollSize=null,this._scrollError=null,this._childrenPos=null,this._childMeasurements=null,this._toBeMeasured=new Map,this._rangeChanged=!0,this._itemsChanged=!0,this._visibilityChanged=!0,this._scrollerController=null,this._isScroller=!1,this._sizer=null,this._hostElementRO=null,this._childrenRO=null,this._mutationObserver=null,this._scrollEventListeners=[],this._scrollEventListenerOptions={passive:!0},this._loadListener=this._childLoaded.bind(this),this._scrollIntoViewTarget=null,this._updateScrollIntoViewCoordinates=null,this._items=[],this._first=-1,this._last=-1,this._firstVisible=-1,this._lastVisible=-1,this._scheduled=new WeakSet,this._measureCallback=null,this._measureChildOverride=null,this._layoutCompletePromise=null,this._layoutCompleteResolver=null,this._layoutCompleteRejecter=null,this._pendingLayoutComplete=null,this._layoutInitialized=null,this._connected=!1,!t)throw new Error("Virtualizer constructor requires a configuration object");if(!t.hostElement)throw new Error('Virtualizer configuration requires the "hostElement" property');this._init(t)}set items(t){Array.isArray(t)&&t!==this._items&&(this._itemsChanged=!0,this._items=t,this._schedule(this._updateLayout))}_init(t){this._isScroller=!!t.scroller,this._initHostElement(t);const e=t.layout||{};this._layoutInitialized=this._initLayout(e)}_initObservers(){this._mutationObserver=new MutationObserver(this._finishDOMUpdate.bind(this)),this._hostElementRO=new L(()=>this._hostElementSizeChanged()),this._childrenRO=new L(this._childrenSizeChanged.bind(this))}_initHostElement(t){const e=this._hostElement=t.hostElement;this._applyVirtualizerStyles(),e[T]=this}connected(){this._initObservers();const t=this._isScroller;this._clippingAncestors=(function(e,i=!1){let s=!1;return(function(r,o=!1){const u=[];let n=o?r:k(r);for(;n!==null;)u.push(n),n=k(n);return u})(e,i).filter(r=>{if(s)return!1;const o=getComputedStyle(r);return s=o.position==="fixed",o.overflow!=="visible"})})(this._hostElement,t),this._scrollerController=new H(this,this._clippingAncestors[0]),this._schedule(this._updateLayout),this._observeAndListen(),this._connected=!0}_observeAndListen(){this._mutationObserver.observe(this._hostElement,{childList:!0}),this._hostElementRO.observe(this._hostElement),this._scrollEventListeners.push(window),window.addEventListener("scroll",this,this._scrollEventListenerOptions),this._clippingAncestors.forEach(t=>{t.addEventListener("scroll",this,this._scrollEventListenerOptions),this._scrollEventListeners.push(t),this._hostElementRO.observe(t)}),this._hostElementRO.observe(this._scrollerController.element),this._children.forEach(t=>this._childrenRO.observe(t)),this._scrollEventListeners.forEach(t=>t.addEventListener("scroll",this,this._scrollEventListenerOptions))}disconnected(){this._scrollEventListeners.forEach(t=>t.removeEventListener("scroll",this,this._scrollEventListenerOptions)),this._scrollEventListeners=[],this._clippingAncestors=[],this._scrollerController?.detach(this),this._scrollerController=null,this._mutationObserver?.disconnect(),this._mutationObserver=null,this._hostElementRO?.disconnect(),this._hostElementRO=null,this._childrenRO?.disconnect(),this._childrenRO=null,this._rejectLayoutCompletePromise("disconnected"),this._connected=!1}_applyVirtualizerStyles(){const t=this._hostElement.style;t.display=t.display||"block",t.position=t.position||"relative",t.contain=t.contain||"size layout",this._isScroller&&(t.overflow=t.overflow||"auto",t.minHeight=t.minHeight||"150px")}_getSizer(){const t=this._hostElement;if(!this._sizer){let e=t.querySelector(`[${b}]`);e||(e=document.createElement("div"),e.setAttribute(b,""),t.appendChild(e)),Object.assign(e.style,{position:"absolute",margin:"-2px 0 0 0",padding:0,visibility:"hidden",fontSize:"2px"}),e.textContent="&nbsp;",e.setAttribute(b,""),this._sizer=e}return this._sizer}async updateLayoutConfig(t){await this._layoutInitialized;const e=t.type||z;if(typeof e=="function"&&this._layout instanceof e){const i={...t};return delete i.type,this._layout.config=i,!0}return!1}async _initLayout(t){let e,i;if(typeof t.type=="function"){i=t.type;const s={...t};delete s.type,e=s}else e=t;i===void 0&&(z=i=(await Promise.resolve().then(()=>require("./flow-D0e7hGXO.cjs"))).FlowLayout),this._layout=new i(s=>this._handleLayoutMessage(s),e),this._layout.measureChildren&&typeof this._layout.updateItemSizes=="function"&&(typeof this._layout.measureChildren=="function"&&(this._measureChildOverride=this._layout.measureChildren),this._measureCallback=this._layout.updateItemSizes.bind(this._layout)),this._layout.listenForChildLoadEvents&&this._hostElement.addEventListener("load",this._loadListener,!0),this._schedule(this._updateLayout)}startBenchmarking(){this._benchmarkStart===null&&(this._benchmarkStart=window.performance.now())}stopBenchmarking(){if(this._benchmarkStart!==null){const t=window.performance.now(),e=t-this._benchmarkStart,i=performance.getEntriesByName("uv-virtualizing","measure").filter(s=>s.startTime>=this._benchmarkStart&&s.startTime<t).reduce((s,r)=>s+r.duration,0);return this._benchmarkStart=null,{timeElapsed:e,virtualizationTime:i}}return null}_measureChildren(){const t={},e=this._children,i=this._measureChildOverride||this._measureChild;for(let s=0;s<e.length;s++){const r=e[s],o=this._first+s;(this._itemsChanged||this._toBeMeasured.has(r))&&(t[o]=i.call(this,r,this._items[o]))}this._childMeasurements=t,this._schedule(this._updateLayout),this._toBeMeasured.clear()}_measureChild(t){const{width:e,height:i}=t.getBoundingClientRect();return Object.assign({width:e,height:i},(function(s){const r=window.getComputedStyle(s);return{marginTop:w(r.marginTop),marginRight:w(r.marginRight),marginBottom:w(r.marginBottom),marginLeft:w(r.marginLeft)}})(t))}async _schedule(t){this._scheduled.has(t)||(this._scheduled.add(t),await Promise.resolve(),this._scheduled.delete(t),t.call(this))}async _updateDOM(t){this._scrollSize=t.scrollSize,this._adjustRange(t.range),this._childrenPos=t.childPositions,this._scrollError=t.scrollError||null;const{_rangeChanged:e,_itemsChanged:i}=this;this._visibilityChanged&&(this._notifyVisibility(),this._visibilityChanged=!1),(e||i)&&(this._notifyRange(),this._rangeChanged=!1),this._finishDOMUpdate()}_finishDOMUpdate(){this._connected&&(this._children.forEach(t=>this._childrenRO.observe(t)),this._checkScrollIntoViewTarget(this._childrenPos),this._positionChildren(this._childrenPos),this._sizeHostElement(this._scrollSize),this._correctScrollError(),this._benchmarkStart&&"mark"in window.performance&&window.performance.mark("uv-end"))}_updateLayout(){this._layout&&this._connected&&(this._layout.items=this._items,this._updateView(),this._childMeasurements!==null&&(this._measureCallback&&this._measureCallback(this._childMeasurements),this._childMeasurements=null),this._layout.reflowIfNeeded(),this._benchmarkStart&&"mark"in window.performance&&window.performance.mark("uv-end"))}_handleScrollEvent(){if(this._benchmarkStart&&"mark"in window.performance){try{window.performance.measure("uv-virtualizing","uv-start","uv-end")}catch{}window.performance.mark("uv-start")}this._scrollerController.correctingScrollError===!1&&this._layout?.unpin(),this._schedule(this._updateLayout)}handleEvent(t){t.type==="scroll"&&(t.currentTarget===window||this._clippingAncestors.includes(t.currentTarget))&&this._handleScrollEvent()}_handleLayoutMessage(t){t.type==="stateChanged"?this._updateDOM(t):t.type==="visibilityChanged"?(this._firstVisible=t.firstVisible,this._lastVisible=t.lastVisible,this._notifyVisibility()):t.type==="unpinned"&&this._hostElement.dispatchEvent(new E)}get _children(){const t=[];let e=this._hostElement.firstElementChild;for(;e;)e.hasAttribute(b)||t.push(e),e=e.nextElementSibling;return t}_updateView(){const t=this._hostElement,e=this._scrollerController?.element,i=this._layout;if(t&&e&&i){let s,r,o,u;const n=t.getBoundingClientRect();s=0,r=0,o=window.innerHeight,u=window.innerWidth;const a=this._clippingAncestors.map(_=>_.getBoundingClientRect());a.unshift(n);for(const _ of a)s=Math.max(s,_.top),r=Math.max(r,_.left),o=Math.min(o,_.bottom),u=Math.min(u,_.right);const p=e.getBoundingClientRect(),f={left:n.left-p.left,top:n.top-p.top},R={width:e.scrollWidth,height:e.scrollHeight},M=s-n.top+t.scrollTop,$=r-n.left+t.scrollLeft,I=Math.max(0,o-s),F=Math.max(0,u-r);i.viewportSize={width:F,height:I},i.viewportScroll={top:M,left:$},i.totalScrollSize=R,i.offsetWithinScroller=f}}_sizeHostElement(t){const i=t&&t.width!==null?Math.min(82e5,t.width):0,s=t&&t.height!==null?Math.min(82e5,t.height):0;if(this._isScroller)this._getSizer().style.transform=`translate(${i}px, ${s}px)`;else{const r=this._hostElement.style;r.minWidth=i?`${i}px`:"100%",r.minHeight=s?`${s}px`:"100%"}}_positionChildren(t){t&&t.forEach(({top:e,left:i,width:s,height:r,xOffset:o,yOffset:u},n)=>{const a=this._children[n-this._first];a&&(a.style.position="absolute",a.style.boxSizing="border-box",a.style.transform=`translate(${i}px, ${e}px)`,s!==void 0&&(a.style.width=s+"px"),r!==void 0&&(a.style.height=r+"px"),a.style.left=o===void 0?null:o+"px",a.style.top=u===void 0?null:u+"px")})}async _adjustRange(t){const{_first:e,_last:i,_firstVisible:s,_lastVisible:r}=this;this._first=t.first,this._last=t.last,this._firstVisible=t.firstVisible,this._lastVisible=t.lastVisible,this._rangeChanged=this._rangeChanged||this._first!==e||this._last!==i,this._visibilityChanged=this._visibilityChanged||this._firstVisible!==s||this._lastVisible!==r}_correctScrollError(){if(this._scrollError){const{scrollTop:t,scrollLeft:e}=this._scrollerController,{top:i,left:s}=this._scrollError;this._scrollError=null,this._scrollerController.correctScrollError({top:t-i,left:e-s})}}element(t){return t===1/0&&(t=this._items.length-1),this._items?.[t]===void 0?void 0:{scrollIntoView:(e={})=>this._scrollElementIntoView({...e,index:t})}}_scrollElementIntoView(t){if(t.index>=this._first&&t.index<=this._last)this._children[t.index-this._first].scrollIntoView(t);else if(t.index=Math.min(t.index,this._items.length-1),t.behavior==="smooth"){const e=this._layout.getScrollIntoViewCoordinates(t),{behavior:i}=t;this._updateScrollIntoViewCoordinates=this._scrollerController.managedScrollTo(Object.assign(e,{behavior:i}),()=>this._layout.getScrollIntoViewCoordinates(t),()=>this._scrollIntoViewTarget=null),this._scrollIntoViewTarget=t}else this._layout.pin=t}_checkScrollIntoViewTarget(t){const{index:e}=this._scrollIntoViewTarget||{};e&&t?.has(e)&&this._updateScrollIntoViewCoordinates(this._layout.getScrollIntoViewCoordinates(this._scrollIntoViewTarget))}_notifyRange(){this._hostElement.dispatchEvent(new C({first:this._first,last:this._last}))}_notifyVisibility(){this._hostElement.dispatchEvent(new S({first:this._firstVisible,last:this._lastVisible}))}get layoutComplete(){return this._layoutCompletePromise||(this._layoutCompletePromise=new Promise((t,e)=>{this._layoutCompleteResolver=t,this._layoutCompleteRejecter=e})),this._layoutCompletePromise}_rejectLayoutCompletePromise(t){this._layoutCompleteRejecter!==null&&this._layoutCompleteRejecter(t),this._resetLayoutCompleteState()}_scheduleLayoutComplete(){this._layoutCompletePromise&&this._pendingLayoutComplete===null&&(this._pendingLayoutComplete=requestAnimationFrame(()=>requestAnimationFrame(()=>this._resolveLayoutCompletePromise())))}_resolveLayoutCompletePromise(){this._layoutCompleteResolver!==null&&this._layoutCompleteResolver(),this._resetLayoutCompleteState()}_resetLayoutCompleteState(){this._layoutCompletePromise=null,this._layoutCompleteResolver=null,this._layoutCompleteRejecter=null,this._pendingLayoutComplete=null}_hostElementSizeChanged(){this._schedule(this._updateLayout)}_childLoaded(){}_childrenSizeChanged(t){if(this._layout?.measureChildren){for(const e of t)this._toBeMeasured.set(e.target,e.contentRect);this._measureChildren()}this._scheduleLayoutComplete(),this._itemsChanged=!1,this._rangeChanged=!1}}function w(l){const t=l?parseFloat(l):NaN;return Number.isNaN(t)?0:t}function k(l){if(l.assignedSlot!==null)return l.assignedSlot;if(l.parentElement!==null)return l.parentElement;const t=l.parentNode;return t&&t.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&t.host||null}const O=l=>l,V=(l,t)=>h.html`${t}: ${JSON.stringify(l,null,2)}`;class W extends A.AsyncDirective{constructor(t){if(super(t),this._virtualizer=null,this._first=0,this._last=-1,this._renderItem=(e,i)=>V(e,i+this._first),this._keyFunction=(e,i)=>O(e,this._first),this._items=[],t.type!==x.PartType.CHILD)throw new Error("The virtualize directive can only be used in child expressions")}render(t){t&&this._setFunctions(t);const e=[];if(this._first>=0&&this._last>=this._first)for(let i=this._first;i<=this._last;i++)e.push(this._items[i]);return N.repeat(e,this._keyFunction,this._renderItem)}update(t,[e]){this._setFunctions(e);const i=this._items!==e.items;return this._items=e.items||[],this._virtualizer?this._updateVirtualizerConfig(t,e):this._initialize(t,e),i?h.noChange:this.render()}async _updateVirtualizerConfig(t,e){if(!await this._virtualizer.updateLayoutConfig(e.layout||{})){const i=t.parentNode;this._makeVirtualizer(i,e)}this._virtualizer.items=this._items}_setFunctions(t){const{renderItem:e,keyFunction:i}=t;e&&(this._renderItem=(s,r)=>e(s,r+this._first)),i&&(this._keyFunction=(s,r)=>i(s,r+this._first))}_makeVirtualizer(t,e){this._virtualizer&&this._virtualizer.disconnected();const{layout:i,scroller:s,items:r}=e;this._virtualizer=new q({hostElement:t,layout:i,scroller:s}),this._virtualizer.items=r,this._virtualizer.connected()}_initialize(t,e){const i=t.parentNode;i&&i.nodeType===1&&(i.addEventListener("rangeChanged",s=>{this._first=s.first,this._last=s.last,this.setValue(this.render())}),this._makeVirtualizer(i,e))}disconnected(){this._virtualizer?.disconnected()}reconnected(){this._virtualizer?.connected()}}const U=x.directive(W);class m extends h.LitElement{constructor(){super(...arguments),this.items=[],this.renderItem=V,this.keyFunction=O,this.layout={},this.scroller=!1}createRenderRoot(){return this}render(){const{items:t,renderItem:e,keyFunction:i,layout:s,scroller:r}=this;return h.html`${U({items:t,renderItem:e,keyFunction:i,layout:s,scroller:r})}`}element(t){return this[T]?.element(t)}get layoutComplete(){return this[T]?.layoutComplete}scrollToIndex(t,e="start"){this.element(t)?.scrollIntoView({block:e})}}y.i([g.property({attribute:!1})],m.prototype,"items",void 0),y.i([g.property()],m.prototype,"renderItem",void 0),y.i([g.property()],m.prototype,"keyFunction",void 0),y.i([g.property({attribute:!1})],m.prototype,"layout",void 0),y.i([g.property({reflect:!0,type:Boolean})],m.prototype,"scroller",void 0),customElements.define("lit-virtualizer",m);var G=Object.defineProperty,J=Object.getOwnPropertyDescriptor,d=(l,t,e,i)=>{for(var s,r=i>1?void 0:i?J(t,e):t,o=l.length-1;o>=0;o--)(s=l[o])&&(r=(i?s(t,e,r):s(r))||r);return i&&r&&G(t,e,r),r};exports.SchmancyDataTable=class extends D.$LitElement(){constructor(){super(),this.columns=[],this.data=[],this.keyField="id",this.cols="1fr",this.sortable=!1,this.sortColumn=null,this.sortDirection=null,this.filteredData=[],this.filteredData=this.data}willUpdate(l){(l.has("data")||l.has("sortColumn")||l.has("sortDirection"))&&this.processData()}isDate(l){return l&&typeof l=="object"&&Object.prototype.toString.call(l)==="[object Date]"}processData(){let l=[...this.data];if(this.sortable&&this.sortColumn&&this.sortDirection){const t=this.columns.find(e=>e.key===this.sortColumn);l.sort((e,i)=>{let s,r;if(t&&t.value?(s=t.value(e),r=t.value(i)):(s=e[this.sortColumn],r=i[this.sortColumn]),s==null)return this.sortDirection==="asc"?1:-1;if(r==null)return this.sortDirection==="asc"?-1:1;if(typeof s=="number"&&typeof r=="number")return this.sortDirection==="asc"?s-r:r-s;const o=typeof s=="string"&&!isNaN(Number(s)),u=typeof r=="string"&&!isNaN(Number(r));if(o&&u){const p=parseFloat(s),f=parseFloat(r);return this.sortDirection==="asc"?p-f:f-p}if(this.isDate(s)&&this.isDate(r))return this.sortDirection==="asc"?s.getTime()-r.getTime():r.getTime()-s.getTime();const n=String(s),a=String(r);return this.sortDirection==="asc"?n.localeCompare(a):a.localeCompare(n)})}this.filteredData=l}toggleSort(l){if(!l.key||l.sortable===!1)return;const t=l.key;t===this.sortColumn?this.sortDirection==="asc"?this.sortDirection="desc":this.sortDirection==="desc"?this.sortDirection=null:this.sortDirection="asc":(this.sortColumn=t,this.sortDirection="asc"),this.dispatchEvent(new CustomEvent("sort-change",{detail:{column:this.sortColumn,direction:this.sortDirection},bubbles:!0,composed:!0}))}renderSortIndicator(l){return this.sortable&&l.sortable!==!1&&l.key&&l.key===this.sortColumn?h.html`
20
- <span class="ml-1">
21
- ${this.sortDirection==="asc"?h.html`<schmancy-icon size="16px">arrow_upward</schmancy-icon>`:this.sortDirection==="desc"?h.html`<schmancy-icon size="16px">arrow_downward</schmancy-icon>`:null}
22
- </span>
23
- `:null}render(){const l=t=>({"flex items-center":!0,"cursor-pointer gap-1":this.sortable&&t.sortable!==!1&&t.key});return h.html`
24
- <schmancy-grid class="h-full w-full" cols="1fr" rows="auto 1fr">
25
- <schmancy-surface rounded="top" elevation="1" type="containerHighest" class="sticky top-0 z-10">
26
- <schmancy-grid align="center" class="px-4 py-3" .cols=${this.cols} gap="md" rows="1fr">
27
- ${this.columns.map(t=>h.html`
28
- <div
29
- class=${this.classMap(l(t))}
30
- @click=${()=>this.sortable&&t.sortable!==!1?this.toggleSort(t):null}
31
- >
32
- <schmancy-typography align=${t.align??"left"} weight=${t.weight??"bold"}>
33
- ${t.name}
34
- </schmancy-typography>
35
- ${this.renderSortIndicator(t)}
36
- </div>
37
- `)}
38
- </schmancy-grid>
39
- </schmancy-surface>
40
-
41
- ${this.filteredData.length>0?h.html`
42
- <lit-virtualizer
43
- scroller
44
- class="w-full h-full relative overflow-auto"
45
- .items=${this.filteredData}
46
- .keyFunction=${(t,e)=>{const i=t?.[this.keyField];return i==null?e:typeof i=="string"||typeof i=="number"?i:String(i)}}
47
- .renderItem=${(t,e)=>h.html`
48
- <schmancy-table-row
49
- class="w-full border-b border-solid border-outlineVariant"
50
- .columns=${this.columns}
51
- .item=${t}
52
- cols=${this.cols}
53
- @click=${()=>{const i={item:t,index:e};this.dispatchEvent(new CustomEvent("click",{detail:i,bubbles:!0,composed:!0}))}}
54
- ></schmancy-table-row>
55
- `}
56
- ></lit-virtualizer>
57
- `:h.html`
58
- <div class="flex items-center justify-center w-full h-full p-8 text-center">
59
- <schmancy-typography type="body" token="lg"> No data available </schmancy-typography>
60
- </div>
61
- `}
62
- </schmancy-grid>
63
- `}},d([c.property({type:Array,attribute:!1})],exports.SchmancyDataTable.prototype,"columns",2),d([c.property({type:Array,attribute:!1})],exports.SchmancyDataTable.prototype,"data",2),d([c.property({type:String})],exports.SchmancyDataTable.prototype,"keyField",2),d([c.property({type:String})],exports.SchmancyDataTable.prototype,"cols",2),d([c.property({type:Boolean})],exports.SchmancyDataTable.prototype,"sortable",2),d([c.state()],exports.SchmancyDataTable.prototype,"sortColumn",2),d([c.state()],exports.SchmancyDataTable.prototype,"sortDirection",2),d([c.state()],exports.SchmancyDataTable.prototype,"filteredData",2),exports.SchmancyDataTable=d([c.customElement("schmancy-table")],exports.SchmancyDataTable);
64
- //# sourceMappingURL=table-D0tiSL_u.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"table-D0tiSL_u.cjs","sources":["../src/table/row.ts","../node_modules/@lit-labs/virtualizer/events.js","../node_modules/@lit-labs/virtualizer/ScrollerController.js","../node_modules/@lit-labs/virtualizer/Virtualizer.js","../node_modules/@lit-labs/virtualizer/virtualize.js","../node_modules/@lit-labs/virtualizer/LitVirtualizer.js","../node_modules/@lit-labs/virtualizer/lit-virtualizer.js","../src/table/table.ts"],"sourcesContent":["import { $LitElement } from '@mixins/litElement.mixin'\nimport { html, TemplateResult } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { TableColumn } from './table' // Import TableColumn interface with updated types\n\n@customElement('schmancy-table-row')\nexport class SchmancyTableRow<T extends Record<string, any> = any> extends $LitElement() {\n\t@property({ type: Array, attribute: false })\n\tcolumns: TableColumn<T>[] = []\n\n\t@property({ type: Object, attribute: false })\n\titem!: T\n\n\t@property({ type: String })\n\tcols: string = this.columns.map(() => '1fr').join(' ')\n\n\t/**\n\t * Renders a cell based on column configuration.\n\t * Uses custom render function if provided, otherwise extracts data from item.\n\t */\n\tprivate renderCell(column: TableColumn<T>): TemplateResult {\n\t\t// Use the render function if provided\n\t\tif (column.render) {\n\t\t\treturn html`\n\t\t\t\t<div class=\"overflow-hidden text-ellipsis\">\n\t\t\t\t\t<schmancy-typography align=\"${column.align || 'left'}\" maxLines=\"2\" weight=\"${column.weight || 'normal'}\">\n\t\t\t\t\t\t${column.render(this.item)}\n\t\t\t\t\t</schmancy-typography>\n\t\t\t\t</div>\n\t\t\t`\n\t\t}\n\n\t\t// Otherwise extract data using the key if available\n\t\tconst value = column.key ? this.item[column.key] : ''\n\n\t\treturn html`\n\t\t\t<div class=\"overflow-hidden text-ellipsis\">\n\t\t\t\t<schmancy-typography align=\"${column.align || 'left'}\" maxLines=\"2\" weight=\"${column.weight || 'normal'}\">\n\t\t\t\t\t${value}\n\t\t\t\t</schmancy-typography>\n\t\t\t</div>\n\t\t`\n\t}\n\n\trender(): TemplateResult {\n\t\treturn html`\n\t\t\t<schmancy-list-item class=\"w-full\">\n\t\t\t\t<schmancy-grid .cols=${this.cols} align=\"center\" gap=\"md\">\n\t\t\t\t\t${this.columns.map(column => this.renderCell(column))}\n\t\t\t\t</schmancy-grid>\n\t\t\t</schmancy-list-item>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-table-row': SchmancyTableRow\n\t}\n}\n","/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nexport class RangeChangedEvent extends Event {\n constructor(range) {\n super(RangeChangedEvent.eventName, { bubbles: false });\n this.first = range.first;\n this.last = range.last;\n }\n}\nRangeChangedEvent.eventName = 'rangeChanged';\nexport class VisibilityChangedEvent extends Event {\n constructor(range) {\n super(VisibilityChangedEvent.eventName, { bubbles: false });\n this.first = range.first;\n this.last = range.last;\n }\n}\nVisibilityChangedEvent.eventName = 'visibilityChanged';\nexport class UnpinnedEvent extends Event {\n constructor() {\n super(UnpinnedEvent.eventName, { bubbles: false });\n }\n}\nUnpinnedEvent.eventName = 'unpinned';\n//# sourceMappingURL=events.js.map","/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nexport class ScrollerShim {\n constructor(element) {\n this._element = null;\n const node = element ?? window;\n this._node = node;\n if (element) {\n this._element = element;\n }\n }\n get element() {\n return (this._element || document.scrollingElement || document.documentElement);\n }\n get scrollTop() {\n return this.element.scrollTop || window.scrollY;\n }\n get scrollLeft() {\n return this.element.scrollLeft || window.scrollX;\n }\n get scrollHeight() {\n return this.element.scrollHeight;\n }\n get scrollWidth() {\n return this.element.scrollWidth;\n }\n get viewportHeight() {\n return this._element\n ? this._element.getBoundingClientRect().height\n : window.innerHeight;\n }\n get viewportWidth() {\n return this._element\n ? this._element.getBoundingClientRect().width\n : window.innerWidth;\n }\n get maxScrollTop() {\n return this.scrollHeight - this.viewportHeight;\n }\n get maxScrollLeft() {\n return this.scrollWidth - this.viewportWidth;\n }\n}\nexport class ScrollerController extends ScrollerShim {\n constructor(client, element) {\n super(element);\n this._clients = new Set();\n this._retarget = null;\n this._end = null;\n this.__destination = null;\n this.correctingScrollError = false;\n this._checkForArrival = this._checkForArrival.bind(this);\n this._updateManagedScrollTo = this._updateManagedScrollTo.bind(this);\n this.scrollTo = this.scrollTo.bind(this);\n this.scrollBy = this.scrollBy.bind(this);\n const node = this._node;\n this._originalScrollTo = node.scrollTo;\n this._originalScrollBy = node.scrollBy;\n this._originalScroll = node.scroll;\n this._attach(client);\n }\n get _destination() {\n return this.__destination;\n }\n get scrolling() {\n return this._destination !== null;\n }\n scrollTo(p1, p2) {\n const options = typeof p1 === 'number' && typeof p2 === 'number'\n ? { left: p1, top: p2 }\n : p1;\n this._scrollTo(options);\n }\n scrollBy(p1, p2) {\n const options = typeof p1 === 'number' && typeof p2 === 'number'\n ? { left: p1, top: p2 }\n : p1;\n if (options.top !== undefined) {\n options.top += this.scrollTop;\n }\n if (options.left !== undefined) {\n options.left += this.scrollLeft;\n }\n this._scrollTo(options);\n }\n _nativeScrollTo(options) {\n this._originalScrollTo.bind(this._element || window)(options);\n }\n _scrollTo(options, retarget = null, end = null) {\n if (this._end !== null) {\n this._end();\n }\n if (options.behavior === 'smooth') {\n this._setDestination(options);\n this._retarget = retarget;\n this._end = end;\n }\n else {\n this._resetScrollState();\n }\n this._nativeScrollTo(options);\n }\n _setDestination(options) {\n let { top, left } = options;\n top =\n top === undefined\n ? undefined\n : Math.max(0, Math.min(top, this.maxScrollTop));\n left =\n left === undefined\n ? undefined\n : Math.max(0, Math.min(left, this.maxScrollLeft));\n if (this._destination !== null &&\n left === this._destination.left &&\n top === this._destination.top) {\n return false;\n }\n this.__destination = { top, left, behavior: 'smooth' };\n return true;\n }\n _resetScrollState() {\n this.__destination = null;\n this._retarget = null;\n this._end = null;\n }\n _updateManagedScrollTo(coordinates) {\n if (this._destination) {\n if (this._setDestination(coordinates)) {\n this._nativeScrollTo(this._destination);\n }\n }\n }\n managedScrollTo(options, retarget, end) {\n this._scrollTo(options, retarget, end);\n return this._updateManagedScrollTo;\n }\n correctScrollError(coordinates) {\n this.correctingScrollError = true;\n requestAnimationFrame(() => requestAnimationFrame(() => (this.correctingScrollError = false)));\n // Correct the error\n this._nativeScrollTo(coordinates);\n // Then, if we were headed for a specific destination, we continue scrolling:\n // First, we update our target destination, if applicable...\n if (this._retarget) {\n this._setDestination(this._retarget());\n }\n // Then we go ahead and resume scrolling\n if (this._destination) {\n this._nativeScrollTo(this._destination);\n }\n }\n _checkForArrival() {\n if (this._destination !== null) {\n const { scrollTop, scrollLeft } = this;\n let { top, left } = this._destination;\n top = Math.min(top || 0, this.maxScrollTop);\n left = Math.min(left || 0, this.maxScrollLeft);\n const topDiff = Math.abs(top - scrollTop);\n const leftDiff = Math.abs(left - scrollLeft);\n // We check to see if we've arrived at our destination.\n if (topDiff < 1 && leftDiff < 1) {\n if (this._end) {\n this._end();\n }\n this._resetScrollState();\n }\n }\n }\n detach(client) {\n this._clients.delete(client);\n /**\n * If there aren't any more clients, then return the node's default\n * scrolling methods\n */\n if (this._clients.size === 0) {\n this._node.scrollTo = this._originalScrollTo;\n this._node.scrollBy = this._originalScrollBy;\n this._node.scroll = this._originalScroll;\n this._node.removeEventListener('scroll', this._checkForArrival);\n }\n return null;\n }\n _attach(client) {\n this._clients.add(client);\n /**\n * The node should only have the methods shimmed when adding the first\n * client – otherwise it's redundant\n */\n if (this._clients.size === 1) {\n this._node.scrollTo = this.scrollTo;\n this._node.scrollBy = this.scrollBy;\n this._node.scroll = this.scrollTo;\n this._node.addEventListener('scroll', this._checkForArrival);\n }\n }\n}\n//# sourceMappingURL=ScrollerController.js.map","/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nimport { RangeChangedEvent, VisibilityChangedEvent, UnpinnedEvent, } from './events.js';\nimport { ScrollerController } from './ScrollerController.js';\n// Virtualizer depends on `ResizeObserver`, which is supported in\n// all modern browsers. For developers whose browser support\n// matrix includes older browsers, we include a compatible\n// polyfill in the package; this bit of module state facilitates\n// a simple mechanism (see ./polyfillLoaders/ResizeObserver.js.)\n// for loading the polyfill.\nlet _ResizeObserver = typeof window !== 'undefined' ? window.ResizeObserver : undefined;\n/**\n * Call this function to provide a `ResizeObserver` polyfill for Virtualizer to use.\n * @param Ctor Constructor for a `ResizeObserver` polyfill (recommend using the one provided with the Virtualizer package)\n */\nexport function provideResizeObserver(Ctor) {\n _ResizeObserver = Ctor;\n}\nexport const virtualizerRef = Symbol('virtualizerRef');\nconst SIZER_ATTRIBUTE = 'virtualizer-sizer';\nlet DefaultLayoutConstructor;\n/**\n * Provides virtual scrolling boilerplate.\n *\n * Extensions of this class must set hostElement and layout.\n *\n * Extensions of this class must also override VirtualRepeater's DOM\n * manipulation methods.\n */\nexport class Virtualizer {\n constructor(config) {\n this._benchmarkStart = null;\n this._layout = null;\n this._clippingAncestors = [];\n /**\n * Layout provides these values, we set them on _render().\n * TODO @straversi: Can we find an XOR type, usable for the key here?\n */\n this._scrollSize = null;\n /**\n * Difference between scroll target's current and required scroll offsets.\n * Provided by layout.\n */\n this._scrollError = null;\n /**\n * A list of the positions (top, left) of the children in the current range.\n */\n this._childrenPos = null;\n // TODO: (graynorton): type\n this._childMeasurements = null;\n this._toBeMeasured = new Map();\n this._rangeChanged = true;\n this._itemsChanged = true;\n this._visibilityChanged = true;\n this._scrollerController = null;\n this._isScroller = false;\n this._sizer = null;\n /**\n * Resize observer attached to hostElement.\n */\n this._hostElementRO = null;\n /**\n * Resize observer attached to children.\n */\n this._childrenRO = null;\n this._mutationObserver = null;\n this._scrollEventListeners = [];\n this._scrollEventListenerOptions = {\n passive: true,\n };\n // TODO (graynorton): Rethink, per longer comment below\n this._loadListener = this._childLoaded.bind(this);\n /**\n * Index of element to scroll into view, plus scroll\n * behavior options, as imperatively specified via\n * `element(index).scrollIntoView()`\n */\n this._scrollIntoViewTarget = null;\n this._updateScrollIntoViewCoordinates = null;\n /**\n * Items to render. Set by items.\n */\n this._items = [];\n /**\n * Index of the first child in the range, not necessarily the first visible child.\n * TODO @straversi: Consider renaming these.\n */\n this._first = -1;\n /**\n * Index of the last child in the range.\n */\n this._last = -1;\n /**\n * Index of the first item intersecting the viewport.\n */\n this._firstVisible = -1;\n /**\n * Index of the last item intersecting the viewport.\n */\n this._lastVisible = -1;\n this._scheduled = new WeakSet();\n /**\n * Invoked at the end of each render cycle: children in the range are\n * measured, and their dimensions passed to this callback. Use it to layout\n * children as needed.\n */\n this._measureCallback = null;\n this._measureChildOverride = null;\n /**\n * State for `layoutComplete` promise\n */\n this._layoutCompletePromise = null;\n this._layoutCompleteResolver = null;\n this._layoutCompleteRejecter = null;\n this._pendingLayoutComplete = null;\n /**\n * Layout initialization is async because we dynamically load\n * the default layout if none is specified. This state is to track\n * whether init is complete.\n */\n this._layoutInitialized = null;\n /**\n * Track connection state to guard against errors / unnecessary work\n */\n this._connected = false;\n if (!config) {\n throw new Error('Virtualizer constructor requires a configuration object');\n }\n if (config.hostElement) {\n this._init(config);\n }\n else {\n throw new Error('Virtualizer configuration requires the \"hostElement\" property');\n }\n }\n set items(items) {\n if (Array.isArray(items) && items !== this._items) {\n this._itemsChanged = true;\n this._items = items;\n this._schedule(this._updateLayout);\n }\n }\n _init(config) {\n this._isScroller = !!config.scroller;\n this._initHostElement(config);\n // If no layout is specified, we make an empty\n // layout config, which will result in the default\n // layout with default parameters\n const layoutConfig = config.layout || {};\n // Save the promise returned by `_initLayout` as a state\n // variable we can check before updating layout config\n this._layoutInitialized = this._initLayout(layoutConfig);\n }\n _initObservers() {\n this._mutationObserver = new MutationObserver(this._finishDOMUpdate.bind(this));\n this._hostElementRO = new _ResizeObserver(() => this._hostElementSizeChanged());\n this._childrenRO = new _ResizeObserver(this._childrenSizeChanged.bind(this));\n }\n _initHostElement(config) {\n const hostElement = (this._hostElement = config.hostElement);\n this._applyVirtualizerStyles();\n hostElement[virtualizerRef] = this;\n }\n connected() {\n this._initObservers();\n const includeSelf = this._isScroller;\n this._clippingAncestors = getClippingAncestors(this._hostElement, includeSelf);\n this._scrollerController = new ScrollerController(this, this._clippingAncestors[0]);\n this._schedule(this._updateLayout);\n this._observeAndListen();\n this._connected = true;\n }\n _observeAndListen() {\n this._mutationObserver.observe(this._hostElement, { childList: true });\n this._hostElementRO.observe(this._hostElement);\n this._scrollEventListeners.push(window);\n window.addEventListener('scroll', this, this._scrollEventListenerOptions);\n this._clippingAncestors.forEach((ancestor) => {\n ancestor.addEventListener('scroll', this, this._scrollEventListenerOptions);\n this._scrollEventListeners.push(ancestor);\n this._hostElementRO.observe(ancestor);\n });\n this._hostElementRO.observe(this._scrollerController.element);\n this._children.forEach((child) => this._childrenRO.observe(child));\n this._scrollEventListeners.forEach((target) => target.addEventListener('scroll', this, this._scrollEventListenerOptions));\n }\n disconnected() {\n this._scrollEventListeners.forEach((target) => target.removeEventListener('scroll', this, this._scrollEventListenerOptions));\n this._scrollEventListeners = [];\n this._clippingAncestors = [];\n this._scrollerController?.detach(this);\n this._scrollerController = null;\n this._mutationObserver?.disconnect();\n this._mutationObserver = null;\n this._hostElementRO?.disconnect();\n this._hostElementRO = null;\n this._childrenRO?.disconnect();\n this._childrenRO = null;\n this._rejectLayoutCompletePromise('disconnected');\n this._connected = false;\n }\n _applyVirtualizerStyles() {\n const hostElement = this._hostElement;\n // Would rather set these CSS properties on the host using Shadow Root\n // style scoping (and falling back to a global stylesheet where native\n // Shadow DOM is not available), but this Mobile Safari bug is preventing\n // that from working: https://bugs.webkit.org/show_bug.cgi?id=226195\n const style = hostElement.style;\n style.display = style.display || 'block';\n style.position = style.position || 'relative';\n style.contain = style.contain || 'size layout';\n if (this._isScroller) {\n style.overflow = style.overflow || 'auto';\n style.minHeight = style.minHeight || '150px';\n }\n }\n _getSizer() {\n const hostElement = this._hostElement;\n if (!this._sizer) {\n // Use a preexisting sizer element if provided (for better integration\n // with vDOM renderers)\n let sizer = hostElement.querySelector(`[${SIZER_ATTRIBUTE}]`);\n if (!sizer) {\n sizer = document.createElement('div');\n sizer.setAttribute(SIZER_ATTRIBUTE, '');\n hostElement.appendChild(sizer);\n }\n // When the scrollHeight is large, the height of this element might be\n // ignored. Setting content and font-size ensures the element has a size.\n Object.assign(sizer.style, {\n position: 'absolute',\n margin: '-2px 0 0 0',\n padding: 0,\n visibility: 'hidden',\n fontSize: '2px',\n });\n sizer.textContent = '&nbsp;';\n sizer.setAttribute(SIZER_ATTRIBUTE, '');\n this._sizer = sizer;\n }\n return this._sizer;\n }\n async updateLayoutConfig(layoutConfig) {\n // If layout initialization hasn't finished yet, we wait\n // for it to finish so we can check whether the new config\n // is compatible with the existing layout before proceeding.\n await this._layoutInitialized;\n const Ctor = layoutConfig.type ||\n // The new config is compatible with the current layout,\n // so we update the config and return true to indicate\n // a successful update\n DefaultLayoutConstructor;\n if (typeof Ctor === 'function' && this._layout instanceof Ctor) {\n const config = { ...layoutConfig };\n delete config.type;\n this._layout.config = config;\n // The new config requires a different layout altogether, but\n // to limit implementation complexity we don't support dynamically\n // changing the layout of an existing virtualizer instance.\n // Returning false here lets the caller know that they should\n // instead make a new virtualizer instance with the desired layout.\n return true;\n }\n return false;\n }\n async _initLayout(layoutConfig) {\n let config;\n let Ctor;\n if (typeof layoutConfig.type === 'function') {\n // If we have a full LayoutSpecifier, the `type` property\n // gives us our constructor...\n Ctor = layoutConfig.type;\n // ...while the rest of the specifier is our layout config\n const copy = { ...layoutConfig };\n delete copy.type;\n config = copy;\n }\n else {\n // If we don't have a full LayoutSpecifier, we just\n // have a config for the default layout\n config = layoutConfig;\n }\n if (Ctor === undefined) {\n // If we don't have a constructor yet, load the default\n DefaultLayoutConstructor = Ctor = (await import('./layouts/flow.js'))\n .FlowLayout;\n }\n this._layout = new Ctor((message) => this._handleLayoutMessage(message), config);\n if (this._layout.measureChildren &&\n typeof this._layout.updateItemSizes === 'function') {\n if (typeof this._layout.measureChildren === 'function') {\n this._measureChildOverride = this._layout.measureChildren;\n }\n this._measureCallback = this._layout.updateItemSizes.bind(this._layout);\n }\n if (this._layout.listenForChildLoadEvents) {\n this._hostElement.addEventListener('load', this._loadListener, true);\n }\n this._schedule(this._updateLayout);\n }\n // TODO (graynorton): Rework benchmarking so that it has no API and\n // instead is always on except in production builds\n startBenchmarking() {\n if (this._benchmarkStart === null) {\n this._benchmarkStart = window.performance.now();\n }\n }\n stopBenchmarking() {\n if (this._benchmarkStart !== null) {\n const now = window.performance.now();\n const timeElapsed = now - this._benchmarkStart;\n const entries = performance.getEntriesByName('uv-virtualizing', 'measure');\n const virtualizationTime = entries\n .filter((e) => e.startTime >= this._benchmarkStart && e.startTime < now)\n .reduce((t, m) => t + m.duration, 0);\n this._benchmarkStart = null;\n return { timeElapsed, virtualizationTime };\n }\n return null;\n }\n _measureChildren() {\n const mm = {};\n const children = this._children;\n const fn = this._measureChildOverride || this._measureChild;\n for (let i = 0; i < children.length; i++) {\n const child = children[i];\n const idx = this._first + i;\n if (this._itemsChanged || this._toBeMeasured.has(child)) {\n mm[idx] = fn.call(this, child, this._items[idx]);\n }\n }\n this._childMeasurements = mm;\n this._schedule(this._updateLayout);\n this._toBeMeasured.clear();\n }\n /**\n * Returns the width, height, and margins of the given child.\n */\n _measureChild(element) {\n // offsetWidth doesn't take transforms in consideration, so we use\n // getBoundingClientRect which does.\n const { width, height } = element.getBoundingClientRect();\n return Object.assign({ width, height }, getMargins(element));\n }\n async _schedule(method) {\n if (!this._scheduled.has(method)) {\n this._scheduled.add(method);\n await Promise.resolve();\n this._scheduled.delete(method);\n method.call(this);\n }\n }\n async _updateDOM(state) {\n this._scrollSize = state.scrollSize;\n this._adjustRange(state.range);\n this._childrenPos = state.childPositions;\n this._scrollError = state.scrollError || null;\n const { _rangeChanged, _itemsChanged } = this;\n if (this._visibilityChanged) {\n this._notifyVisibility();\n this._visibilityChanged = false;\n }\n if (_rangeChanged || _itemsChanged) {\n this._notifyRange();\n this._rangeChanged = false;\n }\n this._finishDOMUpdate();\n }\n _finishDOMUpdate() {\n if (this._connected) {\n // _childrenRO should be non-null if we're connected\n this._children.forEach((child) => this._childrenRO.observe(child));\n this._checkScrollIntoViewTarget(this._childrenPos);\n this._positionChildren(this._childrenPos);\n this._sizeHostElement(this._scrollSize);\n this._correctScrollError();\n if (this._benchmarkStart && 'mark' in window.performance) {\n window.performance.mark('uv-end');\n }\n }\n }\n _updateLayout() {\n if (this._layout && this._connected) {\n this._layout.items = this._items;\n this._updateView();\n if (this._childMeasurements !== null) {\n // If the layout has been changed, we may have measurements but no callback\n if (this._measureCallback) {\n this._measureCallback(this._childMeasurements);\n }\n this._childMeasurements = null;\n }\n this._layout.reflowIfNeeded();\n if (this._benchmarkStart && 'mark' in window.performance) {\n window.performance.mark('uv-end');\n }\n }\n }\n _handleScrollEvent() {\n if (this._benchmarkStart && 'mark' in window.performance) {\n try {\n window.performance.measure('uv-virtualizing', 'uv-start', 'uv-end');\n }\n catch (e) {\n console.warn('Error measuring performance data: ', e);\n }\n window.performance.mark('uv-start');\n }\n if (this._scrollerController.correctingScrollError === false) {\n // This is a user-initiated scroll, so we unpin the layout\n this._layout?.unpin();\n }\n this._schedule(this._updateLayout);\n }\n handleEvent(event) {\n switch (event.type) {\n case 'scroll':\n if (event.currentTarget === window ||\n this._clippingAncestors.includes(event.currentTarget)) {\n this._handleScrollEvent();\n }\n break;\n default:\n console.warn('event not handled', event);\n }\n }\n _handleLayoutMessage(message) {\n if (message.type === 'stateChanged') {\n this._updateDOM(message);\n }\n else if (message.type === 'visibilityChanged') {\n this._firstVisible = message.firstVisible;\n this._lastVisible = message.lastVisible;\n this._notifyVisibility();\n }\n else if (message.type === 'unpinned') {\n this._hostElement.dispatchEvent(new UnpinnedEvent());\n }\n }\n get _children() {\n const arr = [];\n let next = this._hostElement.firstElementChild;\n while (next) {\n if (!next.hasAttribute(SIZER_ATTRIBUTE)) {\n arr.push(next);\n }\n next = next.nextElementSibling;\n }\n return arr;\n }\n _updateView() {\n const hostElement = this._hostElement;\n const scrollingElement = this._scrollerController?.element;\n const layout = this._layout;\n if (hostElement && scrollingElement && layout) {\n let top, left, bottom, right;\n const hostElementBounds = hostElement.getBoundingClientRect();\n top = 0;\n left = 0;\n bottom = window.innerHeight;\n right = window.innerWidth;\n const ancestorBounds = this._clippingAncestors.map((ancestor) => ancestor.getBoundingClientRect());\n ancestorBounds.unshift(hostElementBounds);\n for (const bounds of ancestorBounds) {\n top = Math.max(top, bounds.top);\n left = Math.max(left, bounds.left);\n bottom = Math.min(bottom, bounds.bottom);\n right = Math.min(right, bounds.right);\n }\n const scrollingElementBounds = scrollingElement.getBoundingClientRect();\n const offsetWithinScroller = {\n left: hostElementBounds.left - scrollingElementBounds.left,\n top: hostElementBounds.top - scrollingElementBounds.top,\n };\n const totalScrollSize = {\n width: scrollingElement.scrollWidth,\n height: scrollingElement.scrollHeight,\n };\n const scrollTop = top - hostElementBounds.top + hostElement.scrollTop;\n const scrollLeft = left - hostElementBounds.left + hostElement.scrollLeft;\n const height = Math.max(0, bottom - top);\n const width = Math.max(0, right - left);\n layout.viewportSize = { width, height };\n layout.viewportScroll = { top: scrollTop, left: scrollLeft };\n layout.totalScrollSize = totalScrollSize;\n layout.offsetWithinScroller = offsetWithinScroller;\n }\n }\n /**\n * Styles the host element so that its size reflects the\n * total size of all items.\n */\n _sizeHostElement(size) {\n // Some browsers seem to crap out if the host element gets larger than\n // a certain size, so we clamp it here (this value based on ad hoc\n // testing in Chrome / Safari / Firefox Mac)\n const max = 8200000;\n const h = size && size.width !== null ? Math.min(max, size.width) : 0;\n const v = size && size.height !== null ? Math.min(max, size.height) : 0;\n if (this._isScroller) {\n this._getSizer().style.transform = `translate(${h}px, ${v}px)`;\n }\n else {\n const style = this._hostElement.style;\n style.minWidth = h ? `${h}px` : '100%';\n style.minHeight = v ? `${v}px` : '100%';\n }\n }\n /**\n * Sets the top and left transform style of the children from the values in\n * pos.\n */\n _positionChildren(pos) {\n if (pos) {\n pos.forEach(({ top, left, width, height, xOffset, yOffset }, index) => {\n const child = this._children[index - this._first];\n if (child) {\n child.style.position = 'absolute';\n child.style.boxSizing = 'border-box';\n child.style.transform = `translate(${left}px, ${top}px)`;\n if (width !== undefined) {\n child.style.width = width + 'px';\n }\n if (height !== undefined) {\n child.style.height = height + 'px';\n }\n child.style.left =\n xOffset === undefined ? null : xOffset + 'px';\n child.style.top =\n yOffset === undefined ? null : yOffset + 'px';\n }\n });\n }\n }\n async _adjustRange(range) {\n const { _first, _last, _firstVisible, _lastVisible } = this;\n this._first = range.first;\n this._last = range.last;\n this._firstVisible = range.firstVisible;\n this._lastVisible = range.lastVisible;\n this._rangeChanged =\n this._rangeChanged || this._first !== _first || this._last !== _last;\n this._visibilityChanged =\n this._visibilityChanged ||\n this._firstVisible !== _firstVisible ||\n this._lastVisible !== _lastVisible;\n }\n _correctScrollError() {\n if (this._scrollError) {\n const { scrollTop, scrollLeft } = this._scrollerController;\n const { top, left } = this._scrollError;\n this._scrollError = null;\n this._scrollerController.correctScrollError({\n top: scrollTop - top,\n left: scrollLeft - left,\n });\n }\n }\n element(index) {\n if (index === Infinity) {\n index = this._items.length - 1;\n }\n return this._items?.[index] === undefined\n ? undefined\n : {\n scrollIntoView: (options = {}) => this._scrollElementIntoView({ ...options, index }),\n };\n }\n _scrollElementIntoView(options) {\n if (options.index >= this._first && options.index <= this._last) {\n this._children[options.index - this._first].scrollIntoView(options);\n }\n else {\n options.index = Math.min(options.index, this._items.length - 1);\n if (options.behavior === 'smooth') {\n const coordinates = this._layout.getScrollIntoViewCoordinates(options);\n const { behavior } = options;\n this._updateScrollIntoViewCoordinates =\n this._scrollerController.managedScrollTo(Object.assign(coordinates, { behavior }), () => this._layout.getScrollIntoViewCoordinates(options), () => (this._scrollIntoViewTarget = null));\n this._scrollIntoViewTarget = options;\n }\n else {\n this._layout.pin = options;\n }\n }\n }\n /**\n * If we are smoothly scrolling to an element and the target element\n * is in the DOM, we update our target coordinates as needed\n */\n _checkScrollIntoViewTarget(pos) {\n const { index } = this._scrollIntoViewTarget || {};\n if (index && pos?.has(index)) {\n this._updateScrollIntoViewCoordinates(this._layout.getScrollIntoViewCoordinates(this._scrollIntoViewTarget));\n }\n }\n /**\n * Emits a rangechange event with the current first, last, firstVisible, and\n * lastVisible.\n */\n _notifyRange() {\n this._hostElement.dispatchEvent(new RangeChangedEvent({ first: this._first, last: this._last }));\n }\n _notifyVisibility() {\n this._hostElement.dispatchEvent(new VisibilityChangedEvent({\n first: this._firstVisible,\n last: this._lastVisible,\n }));\n }\n get layoutComplete() {\n // Lazily create promise\n if (!this._layoutCompletePromise) {\n this._layoutCompletePromise = new Promise((resolve, reject) => {\n this._layoutCompleteResolver = resolve;\n this._layoutCompleteRejecter = reject;\n });\n }\n return this._layoutCompletePromise;\n }\n _rejectLayoutCompletePromise(reason) {\n if (this._layoutCompleteRejecter !== null) {\n this._layoutCompleteRejecter(reason);\n }\n this._resetLayoutCompleteState();\n }\n _scheduleLayoutComplete() {\n // Don't do anything unless we have a pending promise\n // And only request a frame if we haven't already done so\n if (this._layoutCompletePromise && this._pendingLayoutComplete === null) {\n // Wait one additional frame to be sure the layout is stable\n this._pendingLayoutComplete = requestAnimationFrame(() => requestAnimationFrame(() => this._resolveLayoutCompletePromise()));\n }\n }\n _resolveLayoutCompletePromise() {\n if (this._layoutCompleteResolver !== null) {\n this._layoutCompleteResolver();\n }\n this._resetLayoutCompleteState();\n }\n _resetLayoutCompleteState() {\n this._layoutCompletePromise = null;\n this._layoutCompleteResolver = null;\n this._layoutCompleteRejecter = null;\n this._pendingLayoutComplete = null;\n }\n /**\n * Render and update the view at the next opportunity with the given\n * hostElement size.\n */\n _hostElementSizeChanged() {\n this._schedule(this._updateLayout);\n }\n // TODO (graynorton): Rethink how this works. Probably child loading is too specific\n // to have dedicated support for; might want some more generic lifecycle hooks for\n // layouts to use. Possibly handle measurement this way, too, or maybe that remains\n // a first-class feature?\n _childLoaded() { }\n // This is the callback for the ResizeObserver that watches the\n // virtualizer's children. We land here at the end of every virtualizer\n // update cycle that results in changes to physical items, and we also\n // end up here if one or more children change size independently of\n // the virtualizer update cycle.\n _childrenSizeChanged(changes) {\n // Only measure if the layout requires it\n if (this._layout?.measureChildren) {\n for (const change of changes) {\n this._toBeMeasured.set(change.target, change.contentRect);\n }\n this._measureChildren();\n }\n // If this is the end of an update cycle, we need to reset some\n // internal state. This should be a harmless no-op if we're handling\n // an out-of-cycle ResizeObserver callback, so we don't need to\n // distinguish between the two cases.\n this._scheduleLayoutComplete();\n this._itemsChanged = false;\n this._rangeChanged = false;\n }\n}\nfunction getMargins(el) {\n const style = window.getComputedStyle(el);\n return {\n marginTop: getMarginValue(style.marginTop),\n marginRight: getMarginValue(style.marginRight),\n marginBottom: getMarginValue(style.marginBottom),\n marginLeft: getMarginValue(style.marginLeft),\n };\n}\nfunction getMarginValue(value) {\n const float = value ? parseFloat(value) : NaN;\n return Number.isNaN(float) ? 0 : float;\n}\n// TODO (graynorton): Deal with iframes?\nfunction getParentElement(el) {\n if (el.assignedSlot !== null) {\n return el.assignedSlot;\n }\n if (el.parentElement !== null) {\n return el.parentElement;\n }\n const parentNode = el.parentNode;\n if (parentNode && parentNode.nodeType === Node.DOCUMENT_FRAGMENT_NODE) {\n return parentNode.host || null;\n }\n return null;\n}\n///\nfunction getElementAncestors(el, includeSelf = false) {\n const ancestors = [];\n let parent = includeSelf ? el : getParentElement(el);\n while (parent !== null) {\n ancestors.push(parent);\n parent = getParentElement(parent);\n }\n return ancestors;\n}\nfunction getClippingAncestors(el, includeSelf = false) {\n let foundFixed = false;\n return getElementAncestors(el, includeSelf).filter((a) => {\n if (foundFixed) {\n return false;\n }\n const style = getComputedStyle(a);\n foundFixed = style.position === 'fixed';\n return style.overflow !== 'visible';\n });\n}\n//# sourceMappingURL=Virtualizer.js.map","/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nimport { html, noChange } from 'lit';\nimport { directive, PartType } from 'lit/directive.js';\nimport { AsyncDirective } from 'lit/async-directive.js';\nimport { repeat } from 'lit/directives/repeat.js';\nimport { Virtualizer } from './Virtualizer.js';\nexport { virtualizerRef } from './Virtualizer.js';\nexport const defaultKeyFunction = (item) => item;\nexport const defaultRenderItem = (item, idx) => html `${idx}: ${JSON.stringify(item, null, 2)}`;\nclass VirtualizeDirective extends AsyncDirective {\n constructor(part) {\n super(part);\n this._virtualizer = null;\n this._first = 0;\n this._last = -1;\n this._renderItem = (item, idx) => defaultRenderItem(item, idx + this._first);\n this._keyFunction = (item, idx) => defaultKeyFunction(item, idx + this._first);\n this._items = [];\n if (part.type !== PartType.CHILD) {\n throw new Error('The virtualize directive can only be used in child expressions');\n }\n }\n render(config) {\n if (config) {\n this._setFunctions(config);\n }\n const itemsToRender = [];\n if (this._first >= 0 && this._last >= this._first) {\n for (let i = this._first; i <= this._last; i++) {\n itemsToRender.push(this._items[i]);\n }\n }\n return repeat(itemsToRender, this._keyFunction, this._renderItem);\n }\n update(part, [config]) {\n this._setFunctions(config);\n const itemsChanged = this._items !== config.items;\n this._items = config.items || [];\n if (this._virtualizer) {\n this._updateVirtualizerConfig(part, config);\n }\n else {\n this._initialize(part, config);\n }\n return itemsChanged ? noChange : this.render();\n }\n async _updateVirtualizerConfig(part, config) {\n const compatible = await this._virtualizer.updateLayoutConfig(config.layout || {});\n if (!compatible) {\n const hostElement = part.parentNode;\n this._makeVirtualizer(hostElement, config);\n }\n this._virtualizer.items = this._items;\n }\n _setFunctions(config) {\n const { renderItem, keyFunction } = config;\n if (renderItem) {\n this._renderItem = (item, idx) => renderItem(item, idx + this._first);\n }\n if (keyFunction) {\n this._keyFunction = (item, idx) => keyFunction(item, idx + this._first);\n }\n }\n _makeVirtualizer(hostElement, config) {\n if (this._virtualizer) {\n this._virtualizer.disconnected();\n }\n const { layout, scroller, items } = config;\n this._virtualizer = new Virtualizer({ hostElement, layout, scroller });\n this._virtualizer.items = items;\n this._virtualizer.connected();\n }\n _initialize(part, config) {\n const hostElement = part.parentNode;\n if (hostElement && hostElement.nodeType === 1) {\n hostElement.addEventListener('rangeChanged', (e) => {\n this._first = e.first;\n this._last = e.last;\n this.setValue(this.render());\n });\n this._makeVirtualizer(hostElement, config);\n }\n }\n disconnected() {\n this._virtualizer?.disconnected();\n }\n reconnected() {\n this._virtualizer?.connected();\n }\n}\nexport const virtualize = directive(VirtualizeDirective);\n//# sourceMappingURL=virtualize.js.map","/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nimport { __decorate } from \"tslib\";\nimport { html, LitElement } from 'lit';\nimport { property } from 'lit/decorators/property.js';\nimport { virtualize, virtualizerRef, defaultRenderItem, defaultKeyFunction, } from './virtualize.js';\nexport class LitVirtualizer extends LitElement {\n constructor() {\n super(...arguments);\n this.items = [];\n this.renderItem = defaultRenderItem;\n this.keyFunction = defaultKeyFunction;\n this.layout = {};\n this.scroller = false;\n }\n createRenderRoot() {\n return this;\n }\n render() {\n const { items, renderItem, keyFunction, layout, scroller } = this;\n return html `${virtualize({\n items,\n renderItem,\n keyFunction,\n layout,\n scroller,\n })}`;\n }\n element(index) {\n return this[virtualizerRef]?.element(index);\n }\n get layoutComplete() {\n return this[virtualizerRef]?.layoutComplete;\n }\n /**\n * This scrollToIndex() shim is here to provide backwards compatibility with other 0.x versions of\n * lit-virtualizer. It is deprecated and will likely be removed in the 1.0.0 release.\n */\n scrollToIndex(index, position = 'start') {\n this.element(index)?.scrollIntoView({ block: position });\n }\n}\n__decorate([\n property({ attribute: false })\n], LitVirtualizer.prototype, \"items\", void 0);\n__decorate([\n property()\n], LitVirtualizer.prototype, \"renderItem\", void 0);\n__decorate([\n property()\n], LitVirtualizer.prototype, \"keyFunction\", void 0);\n__decorate([\n property({ attribute: false })\n], LitVirtualizer.prototype, \"layout\", void 0);\n__decorate([\n property({ reflect: true, type: Boolean })\n], LitVirtualizer.prototype, \"scroller\", void 0);\n//# sourceMappingURL=LitVirtualizer.js.map","/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nimport { LitVirtualizer } from './LitVirtualizer.js';\nexport { LitVirtualizer };\nexport { RangeChangedEvent, VisibilityChangedEvent } from './events.js';\n/**\n * Import this module to declare the lit-virtualizer custom element.\n */\ncustomElements.define('lit-virtualizer', LitVirtualizer);\n//# sourceMappingURL=lit-virtualizer.js.map","import '@lit-labs/virtualizer'\nimport { $LitElement } from '@mixins/litElement.mixin'\nimport { html, TemplateResult } from 'lit'\nimport { customElement, property, state } from 'lit/decorators.js'\nimport './row' // Import the schmancy-table-row component\n\n// Define a generic TableColumn interface.\n// The `key` is now a key of T, and the render function accepts T.\nexport interface TableColumn<T extends Record<string, any> = any> {\n\tname: string\n\tkey?: keyof T // Key to access the property on the data object.\n\talign?: 'left' | 'right' | 'center'\n\tweight?: 'normal' | 'bold'\n\trender?: (item: T) => TemplateResult | string | number // Custom render function for complex content\n\tsortable?: boolean // Whether this column is sortable\n\tvalue?: (item: T) => any // Custom value function for sorting\n}\n\n// Define an event detail interface for row events.\nexport interface RowEventDetail<T> {\n\titem: T\n\tindex: number\n}\n\n// Define sort direction type\nexport type SortDirection = 'asc' | 'desc' | null\n\n/**\n * SchmancyDataTable is a generic data table component.\n * It supports sorting, filtering, and custom rendering of rows.\n *\n */\n@customElement('schmancy-table')\nexport class SchmancyDataTable<T extends Record<string, any> = any> extends $LitElement() {\n\t@property({ type: Array, attribute: false })\n\tcolumns: TableColumn<T>[] = []\n\n\t@property({ type: Array, attribute: false })\n\tdata: T[] = []\n\n\t// The keyField is now of type keyof T.\n\t@property({ type: String })\n\tkeyField: keyof T = 'id' as keyof T\n\n\t@property({ type: String })\n\tcols: string = '1fr'\n\n\t// Sorting property\n\t@property({ type: Boolean })\n\tsortable: boolean = false\n\n\t// Internal state properties\n\t@state() private sortColumn: keyof T | null = null\n\t@state() private sortDirection: SortDirection = null\n\t@state() private filteredData: T[] = []\n\n\tconstructor() {\n\t\tsuper()\n\t\tthis.filteredData = this.data\n\t}\n\n\t// Process the data whenever our dependencies change\n\tprotected willUpdate(changedProperties: Map<PropertyKey, unknown>): void {\n\t\tif (\n\t\t\tchangedProperties.has('data') ||\n\t\t\tchangedProperties.has('sortColumn') ||\n\t\t\tchangedProperties.has('sortDirection')\n\t\t) {\n\t\t\tthis.processData()\n\t\t}\n\t}\n\n\t/**\n\t * Helper function to check if a value is a Date object in a type-safe way\n\t */\n\tprivate isDate(value: any): value is Date {\n\t\treturn value && typeof value === 'object' && Object.prototype.toString.call(value) === '[object Date]'\n\t}\n\n\tprivate processData(): void {\n\t\tlet result = [...this.data]\n\n\t\t// Apply sorting\n\t\tif (this.sortable && this.sortColumn && this.sortDirection) {\n\t\t\t// Find the column configuration for the sorting column\n\t\t\tconst sortColumnConfig = this.columns.find(col => col.key === this.sortColumn)\n\n\t\t\tresult.sort((a, b) => {\n\t\t\t\t// Use the value function if provided in the column configuration\n\t\t\t\tlet aValue, bValue\n\n\t\t\t\tif (sortColumnConfig && sortColumnConfig.value) {\n\t\t\t\t\t// Use custom value function for sorting\n\t\t\t\t\taValue = sortColumnConfig.value(a)\n\t\t\t\t\tbValue = sortColumnConfig.value(b)\n\t\t\t\t} else {\n\t\t\t\t\t// Use standard property access\n\t\t\t\t\taValue = a[this.sortColumn as keyof T]\n\t\t\t\t\tbValue = b[this.sortColumn as keyof T]\n\t\t\t\t}\n\n\t\t\t\t// Handle null/undefined values - always sort them to the end regardless of sort direction\n\t\t\t\tif (aValue === null || aValue === undefined) {\n\t\t\t\t\treturn this.sortDirection === 'asc' ? 1 : -1\n\t\t\t\t}\n\t\t\t\tif (bValue === null || bValue === undefined) {\n\t\t\t\t\treturn this.sortDirection === 'asc' ? -1 : 1\n\t\t\t\t}\n\n\t\t\t\t// Handle numbers\n\t\t\t\tif (typeof aValue === 'number' && typeof bValue === 'number') {\n\t\t\t\t\treturn this.sortDirection === 'asc' ? aValue - bValue : bValue - aValue\n\t\t\t\t}\n\n\t\t\t\t// Detect and handle numeric strings - convert to numbers if both values are numeric\n\t\t\t\tconst aNumeric = typeof aValue === 'string' && !isNaN(Number(aValue))\n\t\t\t\tconst bNumeric = typeof bValue === 'string' && !isNaN(Number(bValue))\n\n\t\t\t\tif (aNumeric && bNumeric) {\n\t\t\t\t\tconst aNum = parseFloat(aValue as string)\n\t\t\t\t\tconst bNum = parseFloat(bValue as string)\n\t\t\t\t\treturn this.sortDirection === 'asc' ? aNum - bNum : bNum - aNum\n\t\t\t\t}\n\n\t\t\t\t// Handle dates - with proper type checking\n\t\t\t\tif (this.isDate(aValue) && this.isDate(bValue)) {\n\t\t\t\t\treturn this.sortDirection === 'asc'\n\t\t\t\t\t\t? aValue.getTime() - bValue.getTime()\n\t\t\t\t\t\t: bValue.getTime() - aValue.getTime()\n\t\t\t\t}\n\n\t\t\t\t// Convert to strings for string comparison or fallback comparison\n\t\t\t\tconst aStr = String(aValue)\n\t\t\t\tconst bStr = String(bValue)\n\t\t\t\treturn this.sortDirection === 'asc' ? aStr.localeCompare(bStr) : bStr.localeCompare(aStr)\n\t\t\t})\n\t\t}\n\n\t\tthis.filteredData = result\n\t}\n\n\t// Toggle sort for a column\n\tprivate toggleSort(column: TableColumn<T>): void {\n\t\tif (!column.key || column.sortable === false) return\n\n\t\tconst columnKey = column.key\n\n\t\t// If clicking the same column, cycle through sort states: asc -> desc -> null\n\t\tif (columnKey === this.sortColumn) {\n\t\t\tif (this.sortDirection === 'asc') {\n\t\t\t\tthis.sortDirection = 'desc'\n\t\t\t} else if (this.sortDirection === 'desc') {\n\t\t\t\tthis.sortDirection = null\n\t\t\t} else {\n\t\t\t\tthis.sortDirection = 'asc'\n\t\t\t}\n\t\t} else {\n\t\t\t// New column, start with ascending\n\t\t\tthis.sortColumn = columnKey\n\t\t\tthis.sortDirection = 'asc'\n\t\t}\n\n\t\t// Dispatch sort event\n\t\tthis.dispatchEvent(\n\t\t\tnew CustomEvent('sort-change', {\n\t\t\t\tdetail: {\n\t\t\t\t\tcolumn: this.sortColumn,\n\t\t\t\t\tdirection: this.sortDirection,\n\t\t\t\t},\n\t\t\t\tbubbles: true,\n\t\t\t\tcomposed: true,\n\t\t\t}),\n\t\t)\n\t}\n\n\t// Render sort indicator\n\tprivate renderSortIndicator(column: TableColumn<T>): TemplateResult | null {\n\t\tif (!this.sortable || column.sortable === false || !column.key || column.key !== this.sortColumn) {\n\t\t\treturn null\n\t\t}\n\n\t\treturn html`\n\t\t\t<span class=\"ml-1\">\n\t\t\t\t${this.sortDirection === 'asc'\n\t\t\t\t\t? html`<schmancy-icon size=\"16px\">arrow_upward</schmancy-icon>`\n\t\t\t\t\t: this.sortDirection === 'desc'\n\t\t\t\t\t\t? html`<schmancy-icon size=\"16px\">arrow_downward</schmancy-icon>`\n\t\t\t\t\t\t: null}\n\t\t\t</span>\n\t\t`\n\t}\n\n\trender(): TemplateResult {\n\t\tconst columnHeadClasses = column => ({\n\t\t\t'flex items-center': true,\n\t\t\t'cursor-pointer gap-1': this.sortable && column.sortable !== false && column.key,\n\t\t})\n\t\treturn html`\n\t\t\t<schmancy-grid class=\"h-full w-full\" cols=\"1fr\" rows=\"auto 1fr\">\n\t\t\t\t<schmancy-surface rounded=\"top\" elevation=\"1\" type=\"containerHighest\" class=\"sticky top-0 z-10\">\n\t\t\t\t\t<schmancy-grid align=\"center\" class=\"px-4 py-3\" .cols=${this.cols} gap=\"md\" rows=\"1fr\">\n\t\t\t\t\t\t${this.columns.map(\n\t\t\t\t\t\t\tcolumn => html`\n\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\tclass=${this.classMap(columnHeadClasses(column))}\n\t\t\t\t\t\t\t\t\t@click=${() => (this.sortable && column.sortable !== false ? this.toggleSort(column) : null)}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<schmancy-typography align=${column.align ?? 'left'} weight=${column.weight ?? 'bold'}>\n\t\t\t\t\t\t\t\t\t\t${column.name}\n\t\t\t\t\t\t\t\t\t</schmancy-typography>\n\t\t\t\t\t\t\t\t\t${this.renderSortIndicator(column)}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t`,\n\t\t\t\t\t\t)}\n\t\t\t\t\t</schmancy-grid>\n\t\t\t\t</schmancy-surface>\n\n\t\t\t\t${this.filteredData.length > 0\n\t\t\t\t\t? html`\n\t\t\t\t\t\t\t<lit-virtualizer\n\t\t\t\t\t\t\t\tscroller\n\t\t\t\t\t\t\t\tclass=\"w-full h-full relative overflow-auto\"\n\t\t\t\t\t\t\t\t.items=${this.filteredData}\n\t\t\t\t\t\t\t\t.keyFunction=${(item: T, index: number) => {\n\t\t\t\t\t\t\t\t\tconst keyValue = item?.[this.keyField]\n\t\t\t\t\t\t\t\t\tif (keyValue === undefined || keyValue === null) {\n\t\t\t\t\t\t\t\t\t\treturn index\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\treturn typeof keyValue === 'string' || typeof keyValue === 'number' ? keyValue : String(keyValue)\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t.renderItem=${(item: T, index: number) =>\n\t\t\t\t\t\t\t\t\thtml`\n\t\t\t\t\t\t\t\t\t\t<schmancy-table-row\n\t\t\t\t\t\t\t\t\t\t\tclass=\"w-full border-b border-solid border-outlineVariant\"\n\t\t\t\t\t\t\t\t\t\t\t.columns=${this.columns}\n\t\t\t\t\t\t\t\t\t\t\t.item=${item}\n\t\t\t\t\t\t\t\t\t\t\tcols=${this.cols}\n\t\t\t\t\t\t\t\t\t\t\t@click=${() => {\n\t\t\t\t\t\t\t\t\t\t\t\tconst detail = { item, index }\n\t\t\t\t\t\t\t\t\t\t\t\tthis.dispatchEvent(\n\t\t\t\t\t\t\t\t\t\t\t\t\tnew CustomEvent('click', {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tdetail,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tbubbles: true,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tcomposed: true,\n\t\t\t\t\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t></schmancy-table-row>\n\t\t\t\t\t\t\t\t\t` as TemplateResult}\n\t\t\t\t\t\t\t></lit-virtualizer>\n\t\t\t\t\t\t`\n\t\t\t\t\t: html`\n\t\t\t\t\t\t\t<div class=\"flex items-center justify-center w-full h-full p-8 text-center\">\n\t\t\t\t\t\t\t\t<schmancy-typography type=\"body\" token=\"lg\"> No data available </schmancy-typography>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t`}\n\t\t\t</schmancy-grid>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-table': SchmancyDataTable\n\t}\n}\n"],"names":["SchmancyTableRow","$LitElement","constructor","super","arguments","this","columns","cols","map","join","column","render","html","align","weight","item","value","key","renderCell","__decorateClass","property","type","Array","attribute","prototype","Object","String","customElement","RangeChangedEvent","Event","range","eventName","bubbles","first","last","VisibilityChangedEvent","UnpinnedEvent","ScrollerShim","element","_element","node","window","_node","document","scrollingElement","documentElement","scrollTop","scrollY","scrollLeft","scrollX","scrollHeight","scrollWidth","getBoundingClientRect","height","innerHeight","width","innerWidth","maxScrollTop","viewportHeight","maxScrollLeft","viewportWidth","ScrollerController","client","_clients","Set","_retarget","_end","__destination","correctingScrollError","_checkForArrival","bind","_updateManagedScrollTo","scrollTo","scrollBy","_originalScrollTo","_originalScrollBy","_originalScroll","scroll","_attach","_destination","scrolling","p1","p2","options","left","top","_scrollTo","retarget","end","behavior","_setDestination","_resetScrollState","_nativeScrollTo","Math","max","min","coordinates","requestAnimationFrame","topDiff","abs","leftDiff","delete","size","removeEventListener","add","addEventListener","_ResizeObserver","ResizeObserver","virtualizerRef","Symbol","SIZER_ATTRIBUTE","DefaultLayoutConstructor","Virtualizer","config","_benchmarkStart","_layout","_clippingAncestors","_scrollSize","_scrollError","_childrenPos","_childMeasurements","_toBeMeasured","Map","_rangeChanged","_itemsChanged","_visibilityChanged","_scrollerController","_isScroller","_sizer","_hostElementRO","_childrenRO","_mutationObserver","_scrollEventListeners","_scrollEventListenerOptions","passive","_loadListener","_childLoaded","_scrollIntoViewTarget","_updateScrollIntoViewCoordinates","_items","_first","_last","_firstVisible","_lastVisible","_scheduled","WeakSet","_measureCallback","_measureChildOverride","_layoutCompletePromise","_layoutCompleteResolver","_layoutCompleteRejecter","_pendingLayoutComplete","_layoutInitialized","_connected","Error","hostElement","_init","items","isArray","_schedule","_updateLayout","scroller","_initHostElement","layoutConfig","layout","_initLayout","MutationObserver","_finishDOMUpdate","_hostElementSizeChanged","_childrenSizeChanged","_hostElement","_applyVirtualizerStyles","connected","_initObservers","includeSelf","el","foundFixed","ancestors","parent","getParentElement","push","filter","a","style","getComputedStyle","position","overflow","_observeAndListen","observe","childList","forEach","ancestor","_children","child","target","detach","disconnect","_rejectLayoutCompletePromise","display","contain","minHeight","sizer","querySelector","createElement","setAttribute","appendChild","assign","margin","padding","visibility","fontSize","textContent","Ctor","copy","Promise","resolve","then","require","FlowLayout","message","_handleLayoutMessage","measureChildren","updateItemSizes","listenForChildLoadEvents","startBenchmarking","performance","now","stopBenchmarking","timeElapsed","virtualizationTime","getEntriesByName","e","startTime","reduce","t","m","duration","mm","children","fn","_measureChild","i","length","idx","has","call","clear","marginTop","getMarginValue","marginRight","marginBottom","marginLeft","method","state","scrollSize","_adjustRange","childPositions","scrollError","_notifyVisibility","_notifyRange","_checkScrollIntoViewTarget","_positionChildren","_sizeHostElement","_correctScrollError","mark","_updateView","reflowIfNeeded","_handleScrollEvent","measure","unpin","event","currentTarget","includes","_updateDOM","firstVisible","lastVisible","dispatchEvent","arr","next","firstElementChild","hasAttribute","nextElementSibling","bottom","right","hostElementBounds","ancestorBounds","unshift","bounds","scrollingElementBounds","offsetWithinScroller","totalScrollSize","viewportSize","viewportScroll","h","v","_getSizer","transform","minWidth","pos","xOffset","yOffset","index","boxSizing","correctScrollError","Infinity","scrollIntoView","_scrollElementIntoView","getScrollIntoViewCoordinates","managedScrollTo","pin","layoutComplete","reject","reason","_resetLayoutCompleteState","_scheduleLayoutComplete","_resolveLayoutCompletePromise","changes","change","set","contentRect","_measureChildren","float","parseFloat","NaN","Number","isNaN","assignedSlot","parentElement","parentNode","nodeType","Node","DOCUMENT_FRAGMENT_NODE","host","defaultKeyFunction","defaultRenderItem","JSON","stringify","VirtualizeDirective","AsyncDirective","part","_virtualizer","_renderItem","_keyFunction","PartType","CHILD","_setFunctions","itemsToRender","repeat","itemsChanged","_updateVirtualizerConfig","_initialize","noChange","updateLayoutConfig","_makeVirtualizer","renderItem","keyFunction","disconnected","setValue","virtualize","directive","LitVirtualizer","LitElement","createRenderRoot","block","__decorate","reflect","Boolean","customElements","define","SchmancyDataTable","data","keyField","sortable","sortColumn","sortDirection","filteredData","changedProperties","processData","toString","result","sortColumnConfig","find","col","sort","b","aValue","bValue","aNumeric","bNumeric","aNum","bNum","isDate","getTime","aStr","bStr","localeCompare","columnKey","CustomEvent","detail","direction","composed","columnHeadClasses","classMap","toggleSort","name","renderSortIndicator","keyValue"],"mappings":"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","x_google_ignoreList":[1,2,3,4,5,6]}