@mhmo91/schmancy 0.8.6 → 0.9.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +54 -1
- package/ai/INDEX.md +321 -0
- package/ai/animation.md +64 -0
- package/ai/area.md +170 -237
- package/ai/audio.md +50 -222
- package/ai/autocomplete.md +44 -162
- package/ai/avatar.md +47 -178
- package/ai/badge.md +41 -108
- package/ai/boat.md +35 -41
- package/ai/busy.md +25 -184
- package/ai/button.md +52 -150
- package/ai/card.md +42 -215
- package/ai/charts.md +93 -0
- package/ai/checkbox.md +32 -135
- package/ai/chips.md +73 -383
- package/ai/code-highlight.md +33 -226
- package/ai/connectivity.md +36 -0
- package/ai/content-drawer.md +65 -232
- package/ai/date-range-inline.md +40 -258
- package/ai/date-range.md +43 -198
- package/ai/delay.md +31 -139
- package/ai/details.md +48 -453
- package/ai/dialog.md +55 -164
- package/ai/directives.md +258 -405
- package/ai/discovery.md +67 -0
- package/ai/divider.md +15 -137
- package/ai/dropdown.md +44 -235
- package/ai/expand.md +63 -0
- package/ai/extra.md +59 -0
- package/ai/float.md +14 -0
- package/ai/form.md +41 -137
- package/ai/icons.md +31 -235
- package/ai/iframe.md +44 -0
- package/ai/input.md +50 -210
- package/ai/json.md +33 -0
- package/ai/layout.md +45 -169
- package/ai/lightbox.md +25 -370
- package/ai/list.md +51 -130
- package/ai/mailbox.md +80 -508
- package/ai/map.md +47 -226
- package/ai/menu.md +25 -134
- package/ai/mixins.md +201 -0
- package/ai/nav-drawer.md +30 -184
- package/ai/navigation-bar.md +27 -184
- package/ai/navigation-rail.md +62 -630
- package/ai/notification.md +49 -183
- package/ai/option.md +30 -160
- package/ai/page.md +42 -0
- package/ai/progress.md +26 -65
- package/ai/qr-scanner.md +51 -0
- package/ai/radio-group.md +45 -189
- package/ai/range.md +47 -0
- package/ai/rxjs-utils.md +60 -0
- package/ai/select.md +49 -209
- package/ai/sheet.md +74 -506
- package/ai/slider.md +30 -214
- package/ai/steps.md +30 -392
- package/ai/store.md +173 -251
- package/ai/surface.md +58 -245
- package/ai/table.md +56 -330
- package/ai/tabs.md +31 -176
- package/ai/teleport.md +35 -177
- package/ai/textarea.md +48 -232
- package/ai/theme-button.md +16 -163
- package/ai/theme.md +40 -1089
- package/ai/tooltip.md +35 -146
- package/ai/tree.md +45 -271
- package/ai/typewriter.md +28 -317
- package/ai/typography.md +43 -296
- package/ai/utils.md +95 -0
- package/ai/window.md +67 -0
- package/custom-elements.json +10955 -0
- package/dist/ai/INDEX.md +321 -0
- package/dist/ai/animation.md +64 -0
- package/dist/ai/area.md +170 -237
- package/dist/ai/audio.md +50 -222
- package/dist/ai/autocomplete.md +44 -162
- package/dist/ai/avatar.md +47 -178
- package/dist/ai/badge.md +41 -108
- package/dist/ai/boat.md +35 -41
- package/dist/ai/busy.md +25 -184
- package/dist/ai/button.md +52 -150
- package/dist/ai/card.md +42 -215
- package/dist/ai/charts.md +93 -0
- package/dist/ai/checkbox.md +32 -135
- package/dist/ai/chips.md +73 -383
- package/dist/ai/code-highlight.md +33 -226
- package/dist/ai/connectivity.md +36 -0
- package/dist/ai/content-drawer.md +65 -232
- package/dist/ai/date-range-inline.md +40 -258
- package/dist/ai/date-range.md +43 -198
- package/dist/ai/delay.md +31 -139
- package/dist/ai/details.md +48 -453
- package/dist/ai/dialog.md +55 -164
- package/dist/ai/directives.md +258 -405
- package/dist/ai/discovery.md +67 -0
- package/dist/ai/divider.md +15 -137
- package/dist/ai/dropdown.md +44 -235
- package/dist/ai/expand.md +63 -0
- package/dist/ai/extra.md +59 -0
- package/dist/ai/float.md +14 -0
- package/dist/ai/form.md +41 -137
- package/dist/ai/icons.md +31 -235
- package/dist/ai/iframe.md +44 -0
- package/dist/ai/input.md +50 -210
- package/dist/ai/json.md +33 -0
- package/dist/ai/layout.md +45 -169
- package/dist/ai/lightbox.md +25 -370
- package/dist/ai/list.md +51 -130
- package/dist/ai/mailbox.md +80 -508
- package/dist/ai/map.md +47 -226
- package/dist/ai/menu.md +25 -134
- package/dist/ai/mixins.md +201 -0
- package/dist/ai/nav-drawer.md +30 -184
- package/dist/ai/navigation-bar.md +27 -184
- package/dist/ai/navigation-rail.md +62 -630
- package/dist/ai/notification.md +49 -183
- package/dist/ai/option.md +30 -160
- package/dist/ai/page.md +42 -0
- package/dist/ai/progress.md +26 -65
- package/dist/ai/qr-scanner.md +51 -0
- package/dist/ai/radio-group.md +45 -189
- package/dist/ai/range.md +47 -0
- package/dist/ai/rxjs-utils.md +60 -0
- package/dist/ai/select.md +49 -209
- package/dist/ai/sheet.md +74 -506
- package/dist/ai/slider.md +30 -214
- package/dist/ai/steps.md +30 -392
- package/dist/ai/store.md +173 -251
- package/dist/ai/surface.md +58 -245
- package/dist/ai/table.md +56 -330
- package/dist/ai/tabs.md +31 -176
- package/dist/ai/teleport.md +35 -177
- package/dist/ai/textarea.md +48 -232
- package/dist/ai/theme-button.md +16 -163
- package/dist/ai/theme.md +40 -1089
- package/dist/ai/tooltip.md +35 -146
- package/dist/ai/tree.md +45 -271
- package/dist/ai/typewriter.md +28 -317
- package/dist/ai/typography.md +43 -296
- package/dist/ai/utils.md +95 -0
- package/dist/ai/window.md +67 -0
- package/dist/animation-BK-8BwY8.js +173 -0
- package/dist/animation-BK-8BwY8.js.map +1 -0
- package/dist/animation-CO_Csq84.cjs +16 -0
- package/dist/animation-CO_Csq84.cjs.map +1 -0
- package/dist/area-CC8fUnra.js +590 -0
- package/dist/area-CC8fUnra.js.map +1 -0
- package/dist/area-wnWUAHEn.cjs +12 -0
- package/dist/area-wnWUAHEn.cjs.map +1 -0
- package/dist/area.cjs +1 -2
- package/dist/area.js +2 -29
- package/dist/audio-DtYYgzYD.cjs +1 -0
- package/dist/audio-DtYYgzYD.cjs.map +1 -0
- package/dist/audio-kz8UgPTO.js +335 -0
- package/dist/audio-kz8UgPTO.js.map +1 -0
- package/dist/audio.cjs +1 -2
- package/dist/audio.js +3 -9
- package/dist/autocomplete-B2Z3WK_7.cjs +111 -0
- package/dist/autocomplete-B2Z3WK_7.cjs.map +1 -0
- package/dist/autocomplete-CJ7YgtKN.js +378 -0
- package/dist/autocomplete-CJ7YgtKN.js.map +1 -0
- package/dist/autocomplete.cjs +1 -2
- package/dist/autocomplete.js +1 -2
- package/dist/badge.cjs +1 -2
- package/dist/badge.js +2 -6
- package/dist/boat-B57_4TzJ.cjs +80 -0
- package/dist/boat-B57_4TzJ.cjs.map +1 -0
- package/dist/boat-C9eU6NO-.js +347 -0
- package/dist/boat-C9eU6NO-.js.map +1 -0
- package/dist/boat.cjs +1 -2
- package/dist/boat.js +2 -5
- package/dist/busy--6oimtop.cjs +134 -0
- package/dist/busy--6oimtop.cjs.map +1 -0
- package/dist/busy-CGZXy0h-.js +167 -0
- package/dist/busy-CGZXy0h-.js.map +1 -0
- package/dist/busy.cjs +1 -2
- package/dist/busy.js +1 -2
- package/dist/button.cjs +113 -2
- package/dist/button.cjs.map +1 -1
- package/dist/button.js +398 -5
- package/dist/button.js.map +1 -1
- package/dist/card-BGJ0Hb1O.cjs +177 -0
- package/dist/card-BGJ0Hb1O.cjs.map +1 -0
- package/dist/card-C-ee-l5O.js +284 -0
- package/dist/card-C-ee-l5O.js.map +1 -0
- package/dist/card.cjs +1 -2
- package/dist/card.js +1 -2
- package/dist/charts.cjs +112 -2
- package/dist/charts.cjs.map +1 -1
- package/dist/charts.js +368 -8
- package/dist/charts.js.map +1 -1
- package/dist/checkbox-DuYaKoDZ.cjs +39 -0
- package/dist/checkbox-DuYaKoDZ.cjs.map +1 -0
- package/dist/checkbox-FRcorDrD.js +610 -0
- package/dist/checkbox-FRcorDrD.js.map +1 -0
- package/dist/checkbox.cjs +1 -2
- package/dist/checkbox.js +2 -5
- package/dist/chips-BpA0A-qr.cjs +253 -0
- package/dist/chips-BpA0A-qr.cjs.map +1 -0
- package/dist/chips-CyzNbKJD.js +645 -0
- package/dist/chips-CyzNbKJD.js.map +1 -0
- package/dist/chips.cjs +1 -2
- package/dist/chips.js +3 -10
- package/dist/chunk-BCfY8kxB.cjs +1 -0
- package/dist/chunk-C_1VqBVD.js +11 -0
- package/dist/code-highlight-C7O9ltXm.js +290 -0
- package/dist/code-highlight-C7O9ltXm.js.map +1 -0
- package/dist/code-highlight-DsBdSQBG.cjs +190 -0
- package/dist/code-highlight-DsBdSQBG.cjs.map +1 -0
- package/dist/code-highlight.cjs +1 -2
- package/dist/code-highlight.js +2 -7
- package/dist/components-CkMvOiTR.js +730 -0
- package/dist/components-CkMvOiTR.js.map +1 -0
- package/dist/components-dDI3xeIf.cjs +73 -0
- package/dist/components-dDI3xeIf.cjs.map +1 -0
- package/dist/components.cjs +1 -2
- package/dist/components.js +2 -5
- package/dist/connectivity.cjs +59 -0
- package/dist/connectivity.cjs.map +1 -0
- package/dist/connectivity.js +86 -0
- package/dist/connectivity.js.map +1 -0
- package/dist/content-drawer.cjs +1 -2
- package/dist/content-drawer.js +2 -13
- package/dist/cursor-glow-Ah7VXSj7.js +46 -0
- package/dist/cursor-glow-Ah7VXSj7.js.map +1 -0
- package/dist/cursor-glow-DtSy_PJd.cjs +1 -0
- package/dist/cursor-glow-DtSy_PJd.cjs.map +1 -0
- package/dist/date-range-70zhLUKE.cjs +131 -0
- package/dist/date-range-70zhLUKE.cjs.map +1 -0
- package/dist/date-range-BrN_Bs6_.js +946 -0
- package/dist/date-range-BrN_Bs6_.js.map +1 -0
- package/dist/date-range-inline-CPzD-tIv.cjs +43 -0
- package/dist/date-range-inline-CPzD-tIv.cjs.map +1 -0
- package/dist/date-range-inline-Cp294DxR.js +267 -0
- package/dist/date-range-inline-Cp294DxR.js.map +1 -0
- package/dist/date-range-inline.cjs +1 -2
- package/dist/date-range-inline.js +2 -5
- package/dist/date-range.cjs +1 -2
- package/dist/date-range.js +2 -6
- package/dist/delay-COcAkBqB.cjs +9 -0
- package/dist/delay-COcAkBqB.cjs.map +1 -0
- package/dist/delay-IV0Swce2.js +346 -0
- package/dist/delay-IV0Swce2.js.map +1 -0
- package/dist/delay.cjs +1 -2
- package/dist/delay.js +2 -6
- package/dist/details-CuKmr3Qw.js +293 -0
- package/dist/details-CuKmr3Qw.js.map +1 -0
- package/dist/details-DgWkPqmt.cjs +168 -0
- package/dist/details-DgWkPqmt.cjs.map +1 -0
- package/dist/details.cjs +1 -2
- package/dist/details.js +2 -5
- package/dist/dialog-service-NZEvyEK-.js +193 -0
- package/dist/dialog-service-NZEvyEK-.js.map +1 -0
- package/dist/dialog-service-VnW4gkmE.cjs +1 -0
- package/dist/dialog-service-VnW4gkmE.cjs.map +1 -0
- package/dist/dialog.cjs +82 -2
- package/dist/dialog.cjs.map +1 -1
- package/dist/dialog.js +396 -9
- package/dist/dialog.js.map +1 -1
- package/dist/directives.cjs +108 -2
- package/dist/directives.cjs.map +1 -1
- package/dist/directives.js +1362 -14
- package/dist/directives.js.map +1 -1
- package/dist/discovery.cjs +1 -2
- package/dist/discovery.cjs.map +1 -1
- package/dist/discovery.js +61 -6
- package/dist/discovery.js.map +1 -1
- package/dist/divider-BWoUbfgZ.js +87 -0
- package/dist/divider-BWoUbfgZ.js.map +1 -0
- package/dist/divider-BghtrMbn.cjs +57 -0
- package/dist/divider-BghtrMbn.cjs.map +1 -0
- package/dist/divider.cjs +1 -2
- package/dist/divider.js +1 -2
- package/dist/dropdown.cjs +57 -2
- package/dist/dropdown.cjs.map +1 -1
- package/dist/dropdown.js +160 -5
- package/dist/dropdown.js.map +1 -1
- package/dist/expand-CJU9m4ga.js +336 -0
- package/dist/expand-CJU9m4ga.js.map +1 -0
- package/dist/expand-XyDE5SsO.cjs +141 -0
- package/dist/expand-XyDE5SsO.cjs.map +1 -0
- package/dist/expand.cjs +1 -0
- package/dist/expand.js +2 -0
- package/dist/extra-BxXFmW1w.js +3435 -0
- package/dist/extra-BxXFmW1w.js.map +1 -0
- package/dist/extra-CsrRKKqE.cjs +31 -0
- package/dist/extra-CsrRKKqE.cjs.map +1 -0
- package/dist/extra.cjs +1 -2
- package/dist/extra.js +2 -6
- package/dist/float-BD86t_NU.js +5 -0
- package/dist/float-BD86t_NU.js.map +1 -0
- package/dist/float-DBv1FINW.cjs +1 -0
- package/dist/float-DBv1FINW.cjs.map +1 -0
- package/dist/float.cjs +1 -0
- package/dist/float.js +2 -0
- package/dist/flow-Bbwn6dRN.cjs +1 -0
- package/dist/flow-Bbwn6dRN.cjs.map +1 -0
- package/dist/flow-CUj0fDT_.js +386 -0
- package/dist/flow-CUj0fDT_.js.map +1 -0
- package/dist/form-Cp5-I_ZV.js +270 -0
- package/dist/form-Cp5-I_ZV.js.map +1 -0
- package/dist/form-D0bIeDWT.cjs +1 -0
- package/dist/form-D0bIeDWT.cjs.map +1 -0
- package/dist/form.cjs +1 -2
- package/dist/form.js +1 -2
- package/dist/hashContent-DYM21p6t.js +6 -0
- package/dist/hashContent-DYM21p6t.js.map +1 -0
- package/dist/hashContent-DaeGmY-p.cjs +1 -0
- package/dist/hashContent-DaeGmY-p.cjs.map +1 -0
- package/dist/icons-BpU0_l92.js +161 -0
- package/dist/icons-BpU0_l92.js.map +1 -0
- package/dist/icons-D8w_20mO.cjs +52 -0
- package/dist/icons-D8w_20mO.cjs.map +1 -0
- package/dist/icons.cjs +1 -2
- package/dist/icons.js +1 -2
- package/dist/iframe-BjwxA2Pg.cjs +24 -0
- package/dist/iframe-BjwxA2Pg.cjs.map +1 -0
- package/dist/iframe-tY1GY5g1.js +44 -0
- package/dist/iframe-tY1GY5g1.js.map +1 -0
- package/dist/iframe.cjs +1 -0
- package/dist/iframe.js +2 -0
- package/dist/index.cjs +1 -2
- package/dist/index.js +69 -285
- package/dist/input-BnfTpRN9.js +364 -0
- package/dist/input-BnfTpRN9.js.map +1 -0
- package/dist/input-BwxwognS.cjs +51 -0
- package/dist/input-BwxwognS.cjs.map +1 -0
- package/dist/input-chip-CkM2aYmO.js +301 -0
- package/dist/input-chip-CkM2aYmO.js.map +1 -0
- package/dist/input-chip-MjOwX5EY.cjs +146 -0
- package/dist/input-chip-MjOwX5EY.cjs.map +1 -0
- package/dist/input.cjs +1 -2
- package/dist/input.js +2 -6
- package/dist/intersection-BPLpqYEd.js +12 -0
- package/dist/intersection-BPLpqYEd.js.map +1 -0
- package/dist/intersection-CZpaIHeT.cjs +1 -0
- package/dist/intersection-CZpaIHeT.cjs.map +1 -0
- package/dist/json.cjs +11 -2
- package/dist/json.cjs.map +1 -1
- package/dist/json.js +40 -4
- package/dist/json.js.map +1 -1
- package/dist/layout-4C-6_cre.cjs +1 -0
- package/dist/layout-4C-6_cre.cjs.map +1 -0
- package/dist/layout-BV0EeyUS.cjs +17 -0
- package/dist/layout-BV0EeyUS.cjs.map +1 -0
- package/dist/layout-CJSlZlFL.js +267 -0
- package/dist/layout-CJSlZlFL.js.map +1 -0
- package/dist/layout-yxSlLybo.js +94 -0
- package/dist/layout-yxSlLybo.js.map +1 -0
- package/dist/layout.cjs +1 -2
- package/dist/layout.js +3 -9
- package/dist/lightbox-CpNMZHZW.cjs +202 -0
- package/dist/lightbox-CpNMZHZW.cjs.map +1 -0
- package/dist/lightbox-groqGmJH.js +678 -0
- package/dist/lightbox-groqGmJH.js.map +1 -0
- package/dist/lightbox.cjs +1 -2
- package/dist/lightbox.js +2 -8
- package/dist/list-CyHd0Zc2.cjs +40 -0
- package/dist/list-CyHd0Zc2.cjs.map +1 -0
- package/dist/list-DzkqT_r-.js +105 -0
- package/dist/list-DzkqT_r-.js.map +1 -0
- package/dist/list.cjs +1 -2
- package/dist/list.js +2 -7
- package/dist/litElement.mixin-BG6_-nYX.cjs +1 -0
- package/dist/litElement.mixin-BG6_-nYX.cjs.map +1 -0
- package/dist/litElement.mixin-Dm-4L8zL.js +12 -0
- package/dist/litElement.mixin-Dm-4L8zL.js.map +1 -0
- package/dist/magnetic-BZGFxAWG.js +47 -0
- package/dist/magnetic-BZGFxAWG.js.map +1 -0
- package/dist/magnetic-Dux4QwO4.cjs +1 -0
- package/dist/magnetic-Dux4QwO4.cjs.map +1 -0
- package/dist/mailbox-BcqnXYVP.js +1584 -0
- package/dist/mailbox-BcqnXYVP.js.map +1 -0
- package/dist/mailbox-C5eYTd7p.cjs +1142 -0
- package/dist/mailbox-C5eYTd7p.cjs.map +1 -0
- package/dist/mailbox.cjs +1 -2
- package/dist/mailbox.js +2 -9
- package/dist/map-BncheFt5.cjs +80 -0
- package/dist/map-BncheFt5.cjs.map +1 -0
- package/dist/map-C0o1PgLE.js +205 -0
- package/dist/map-C0o1PgLE.js.map +1 -0
- package/dist/map.cjs +1 -2
- package/dist/map.js +2 -5
- package/dist/menu-uwqlQbLd.js +51 -0
- package/dist/menu-uwqlQbLd.js.map +1 -0
- package/dist/menu-yXzwJZFf.cjs +23 -0
- package/dist/menu-yXzwJZFf.cjs.map +1 -0
- package/dist/menu.cjs +1 -2
- package/dist/menu.js +1 -2
- package/dist/mixins.cjs +1 -2
- package/dist/mixins.cjs.map +1 -1
- package/dist/mixins.js +59 -12
- package/dist/mixins.js.map +1 -1
- package/dist/nav-drawer.cjs +1 -2
- package/dist/nav-drawer.js +2 -12
- package/dist/navigation-bar.cjs +1 -2
- package/dist/navigation-bar.js +2 -6
- package/dist/navigation-rail.cjs +71 -2
- package/dist/navigation-rail.cjs.map +1 -1
- package/dist/navigation-rail.js +363 -5
- package/dist/navigation-rail.js.map +1 -1
- package/dist/notification-BjwTfLAl.cjs +23 -0
- package/dist/notification-BjwTfLAl.cjs.map +1 -0
- package/dist/notification-DzYT4deA.js +304 -0
- package/dist/notification-DzYT4deA.js.map +1 -0
- package/dist/notification.cjs +1 -2
- package/dist/notification.js +2 -9
- package/dist/option-BJsD3u2D.cjs +43 -0
- package/dist/option-BJsD3u2D.cjs.map +1 -0
- package/dist/option-JFHxgiYl.js +97 -0
- package/dist/option-JFHxgiYl.js.map +1 -0
- package/dist/option.cjs +1 -2
- package/dist/option.js +1 -2
- package/dist/overlay-stack-DQey9Qph.cjs +1 -0
- package/dist/overlay-stack-DQey9Qph.cjs.map +1 -0
- package/dist/overlay-stack-DT1SdaGW.js +39 -0
- package/dist/overlay-stack-DT1SdaGW.js.map +1 -0
- package/dist/page.cjs +20 -2
- package/dist/page.cjs.map +1 -1
- package/dist/page.js +71 -4
- package/dist/page.js.map +1 -1
- package/dist/progress-BUh5WBqx.js +128 -0
- package/dist/progress-BUh5WBqx.js.map +1 -0
- package/dist/progress-BoRmyGAa.cjs +51 -0
- package/dist/progress-BoRmyGAa.cjs.map +1 -0
- package/dist/progress.cjs +1 -2
- package/dist/progress.js +1 -2
- package/dist/provide-8MrDz_qX.js +107 -0
- package/dist/provide-8MrDz_qX.js.map +1 -0
- package/dist/provide-CDkxgjHb.cjs +1 -0
- package/dist/provide-CDkxgjHb.cjs.map +1 -0
- package/dist/qr-scanner.cjs +35 -2
- package/dist/qr-scanner.cjs.map +1 -1
- package/dist/qr-scanner.js +119 -4
- package/dist/qr-scanner.js.map +1 -1
- package/dist/radio-group-DbOWUPhi.js +105 -0
- package/dist/radio-group-DbOWUPhi.js.map +1 -0
- package/dist/radio-group-rhrvhB5X.cjs +40 -0
- package/dist/radio-group-rhrvhB5X.cjs.map +1 -0
- package/dist/radio-group.cjs +1 -2
- package/dist/radio-group.js +2 -6
- package/dist/range.cjs +62 -0
- package/dist/range.cjs.map +1 -0
- package/dist/range.js +85 -0
- package/dist/range.js.map +1 -0
- package/dist/reduced-motion-D-L12p7G.js +7 -0
- package/dist/reduced-motion-D-L12p7G.js.map +1 -0
- package/dist/reduced-motion-Ds05GPyz.cjs +1 -0
- package/dist/reduced-motion-Ds05GPyz.cjs.map +1 -0
- package/dist/rxjs-utils-BSjmI9-Q.js +32 -0
- package/dist/rxjs-utils-BSjmI9-Q.js.map +1 -0
- package/dist/rxjs-utils-DCsfzeap.cjs +1 -0
- package/dist/rxjs-utils-DCsfzeap.cjs.map +1 -0
- package/dist/rxjs-utils.cjs +1 -2
- package/dist/rxjs-utils.js +2 -14
- package/dist/scroll-BE9W9PF2.cjs +26 -0
- package/dist/scroll-BE9W9PF2.cjs.map +1 -0
- package/dist/scroll-qGks1R0k.js +112 -0
- package/dist/scroll-qGks1R0k.js.map +1 -0
- package/dist/search-C4dFHYbX.js +91 -0
- package/dist/search-C4dFHYbX.js.map +1 -0
- package/dist/search-Ds8tt7Et.cjs +1 -0
- package/dist/search-Ds8tt7Et.cjs.map +1 -0
- package/dist/select-D9sgBRjU.js +305 -0
- package/dist/select-D9sgBRjU.js.map +1 -0
- package/dist/select-DXU2kzg4.cjs +56 -0
- package/dist/select-DXU2kzg4.cjs.map +1 -0
- package/dist/select.cjs +1 -2
- package/dist/select.js +2 -5
- package/dist/sheet-CIxCCJ3H.js +168 -0
- package/dist/sheet-CIxCCJ3H.js.map +1 -0
- package/dist/sheet-CeX6BbNp.cjs +35 -0
- package/dist/sheet-CeX6BbNp.cjs.map +1 -0
- package/dist/sheet.cjs +1 -2
- package/dist/sheet.js +3 -7
- package/dist/sheet.service-CAB7weBc.js +86 -0
- package/dist/sheet.service-CAB7weBc.js.map +1 -0
- package/dist/sheet.service-DPAp7E3x.cjs +1 -0
- package/dist/sheet.service-DPAp7E3x.cjs.map +1 -0
- package/dist/slider.cjs +82 -2
- package/dist/slider.cjs.map +1 -1
- package/dist/slider.js +143 -5
- package/dist/slider.js.map +1 -1
- package/dist/sound.service-Bu3EQLv2.cjs +1 -0
- package/dist/sound.service-Bu3EQLv2.cjs.map +1 -0
- package/dist/sound.service-m3BrSfuH.js +2353 -0
- package/dist/sound.service-m3BrSfuH.js.map +1 -0
- package/dist/src-CbO5kJ2O.js +1244 -0
- package/dist/src-CbO5kJ2O.js.map +1 -0
- package/dist/src-SraDxEeg.cjs +269 -0
- package/dist/src-SraDxEeg.cjs.map +1 -0
- package/dist/steps.cjs +70 -2
- package/dist/steps.cjs.map +1 -1
- package/dist/steps.js +178 -7
- package/dist/steps.js.map +1 -1
- package/dist/store-CorvD3bT.cjs +1 -0
- package/dist/store-CorvD3bT.cjs.map +1 -0
- package/dist/store-DYqDLAvT.js +1654 -0
- package/dist/store-DYqDLAvT.js.map +1 -0
- package/dist/store.cjs +1 -2
- package/dist/store.js +2 -47
- package/dist/surface-DuH0pm2v.cjs +7 -0
- package/dist/surface-DuH0pm2v.cjs.map +1 -0
- package/dist/surface-eN_Jy2MJ.js +21 -0
- package/dist/surface-eN_Jy2MJ.js.map +1 -0
- package/dist/surface.cjs +1 -2
- package/dist/surface.js +2 -6
- package/dist/surface.mixin-CIXgN6iw.cjs +297 -0
- package/dist/surface.mixin-CIXgN6iw.cjs.map +1 -0
- package/dist/surface.mixin-D9jv1sKG.js +320 -0
- package/dist/surface.mixin-D9jv1sKG.js.map +1 -0
- package/dist/table-C9rRQJEB.cjs +63 -0
- package/dist/table-C9rRQJEB.cjs.map +1 -0
- package/dist/table-Dg_tUGB_.js +631 -0
- package/dist/table-Dg_tUGB_.js.map +1 -0
- package/dist/table.cjs +1 -2
- package/dist/table.js +2 -6
- package/dist/tabs-BbFC9omR.js +125 -0
- package/dist/tabs-BbFC9omR.js.map +1 -0
- package/dist/tabs-soTL-x4G.cjs +31 -0
- package/dist/tabs-soTL-x4G.cjs.map +1 -0
- package/dist/tabs.cjs +1 -2
- package/dist/tabs.js +1 -2
- package/dist/tailwind.mixin-BIVhjNvD.js +225 -0
- package/dist/tailwind.mixin-BIVhjNvD.js.map +1 -0
- package/dist/tailwind.mixin-DSuEu-y3.cjs +2 -0
- package/dist/tailwind.mixin-DSuEu-y3.cjs.map +1 -0
- package/dist/teleport.cjs +1 -2
- package/dist/teleport.js +2 -8
- package/dist/textarea-DaRUJ0ri.cjs +35 -0
- package/dist/textarea-DaRUJ0ri.cjs.map +1 -0
- package/dist/textarea-hChvHbNM.js +195 -0
- package/dist/textarea-hChvHbNM.js.map +1 -0
- package/dist/textarea.cjs +1 -2
- package/dist/textarea.js +1 -2
- package/dist/theme-B0M8Hlyo.js +4121 -0
- package/dist/theme-B0M8Hlyo.js.map +1 -0
- package/dist/theme-ZYH2MqX9.cjs +181 -0
- package/dist/theme-ZYH2MqX9.cjs.map +1 -0
- package/dist/theme-button-BtlX_Zgd.js +19 -0
- package/dist/theme-button-BtlX_Zgd.js.map +1 -0
- package/dist/theme-button-Dvqg-rE_.cjs +8 -0
- package/dist/theme-button-Dvqg-rE_.cjs.map +1 -0
- package/dist/theme-button.cjs +1 -2
- package/dist/theme-button.js +1 -2
- package/dist/theme.cjs +1 -2
- package/dist/theme.events-Cv7N4Toe.js +2 -0
- package/dist/theme.events-Cv7N4Toe.js.map +1 -0
- package/dist/theme.events-DM4H5F2d.cjs +1 -0
- package/dist/theme.events-DM4H5F2d.cjs.map +1 -0
- package/dist/theme.interface-CXloMUCw.js +276 -0
- package/dist/theme.interface-CXloMUCw.js.map +1 -0
- package/dist/theme.interface-Da23QAYb.cjs +1 -0
- package/dist/theme.interface-Da23QAYb.cjs.map +1 -0
- package/dist/theme.js +6 -21
- package/dist/theme.service-C_tjlqgy.cjs +1 -0
- package/dist/theme.service-C_tjlqgy.cjs.map +1 -0
- package/dist/theme.service-D9lEas89.js +108 -0
- package/dist/theme.service-D9lEas89.js.map +1 -0
- package/dist/tooltip.cjs +6 -2
- package/dist/tooltip.cjs.map +1 -1
- package/dist/tooltip.js +200 -5
- package/dist/tooltip.js.map +1 -1
- package/dist/tree.cjs +26 -2
- package/dist/tree.cjs.map +1 -1
- package/dist/tree.js +64 -4
- package/dist/tree.js.map +1 -1
- package/dist/tslib.es6-D7BIeDVB.cjs +1 -0
- package/dist/tslib.es6-D7BIeDVB.cjs.map +1 -0
- package/dist/tslib.es6-ErZEp3OO.js +7 -0
- package/dist/tslib.es6-ErZEp3OO.js.map +1 -0
- package/dist/types.cjs +1 -2
- package/dist/types.cjs.map +1 -1
- package/dist/types.js +4 -5
- package/dist/types.js.map +1 -1
- package/dist/typewriter-CCel8Nta.js +700 -0
- package/dist/typewriter-CCel8Nta.js.map +1 -0
- package/dist/typewriter-Cf9f2bdx.cjs +123 -0
- package/dist/typewriter-Cf9f2bdx.cjs.map +1 -0
- package/dist/typewriter.cjs +1 -2
- package/dist/typewriter.js +2 -5
- package/dist/typography.cjs +282 -2
- package/dist/typography.cjs.map +1 -1
- package/dist/typography.js +353 -4
- package/dist/typography.js.map +1 -1
- package/dist/utils-BcaKtQuA.cjs +1 -0
- package/dist/utils-BcaKtQuA.cjs.map +1 -0
- package/dist/utils-CoU7M2YS.js +259 -0
- package/dist/utils-CoU7M2YS.js.map +1 -0
- package/dist/utils.cjs +1 -2
- package/dist/utils.js +6 -9
- package/dist/window-B9_14c12.cjs +59 -0
- package/dist/window-B9_14c12.cjs.map +1 -0
- package/dist/window-CbgdwOZD.js +548 -0
- package/dist/window-CbgdwOZD.js.map +1 -0
- package/dist/window.cjs +1 -0
- package/dist/window.js +2 -0
- package/mixins/baseElement.ts +118 -1
- package/mixins/discovery.service.ts +162 -1
- package/mixins/formField.mixin.ts +13 -8
- package/mixins/index.ts +2 -0
- package/mixins/surface.mixin.ts +93 -0
- package/mixins/tailwind.css +331 -14
- package/package.json +32 -28
- package/src/CLAUDE.md +428 -0
- package/src/area/.excalidraw +357 -0
- package/src/area/area.component.ts +449 -0
- package/src/area/area.service.test.ts +1007 -0
- package/src/area/area.service.ts +748 -0
- package/src/area/ecrypt.ts +7 -0
- package/src/area/index.ts +7 -0
- package/src/area/lazy.ts +83 -0
- package/src/area/readme.md +338 -0
- package/src/area/route.component.ts +79 -0
- package/src/area/router-guide.md +360 -0
- package/src/area/router.types.ts +101 -0
- package/src/area/utils.ts +354 -0
- package/src/audio/emotional-sounds.ts +940 -0
- package/src/audio/index.ts +53 -0
- package/src/audio/sound.service.ts +1079 -0
- package/src/autocomplete/README.md +485 -0
- package/src/autocomplete/autocomplete.scss +24 -0
- package/src/autocomplete/autocomplete.ts +733 -0
- package/src/autocomplete/index.ts +1 -0
- package/src/avatar.ts +164 -0
- package/src/badge/badge.ts +286 -0
- package/src/badge/index.ts +1 -0
- package/src/boat/boat.ts +664 -0
- package/src/boat/index.ts +1 -0
- package/src/busy/busy.ts +39 -0
- package/src/busy/index.ts +2 -0
- package/src/busy/spinner.ts +165 -0
- package/src/button/button.ts +382 -0
- package/src/button/icon-button.ts +287 -0
- package/src/button/index.ts +2 -0
- package/src/card/actions.ts +28 -0
- package/src/card/card.ts +319 -0
- package/src/card/content.ts +24 -0
- package/src/card/index.ts +4 -0
- package/src/card/media.ts +77 -0
- package/src/charts/area-chart.ts +495 -0
- package/src/charts/index.ts +4 -0
- package/src/charts/pills.ts +350 -0
- package/src/charts/types.ts +66 -0
- package/src/charts/utils.ts +65 -0
- package/src/checkbox/checkbox.ts +122 -0
- package/src/checkbox/index.ts +1 -0
- package/src/chips/assist-chip.ts +261 -0
- package/src/chips/chips.ts +259 -0
- package/src/chips/filter-chip.ts +255 -0
- package/src/chips/index.ts +5 -0
- package/src/chips/input-chip.ts +408 -0
- package/src/chips/suggestion-chip.ts +266 -0
- package/src/code-highlight/code-highlight.ts +344 -0
- package/src/code-highlight/code-preview.ts +123 -0
- package/src/code-highlight/index.ts +3 -0
- package/src/components/form-elements/index.ts +1 -0
- package/src/components/form-elements/payment-card-form.ts +331 -0
- package/src/components/index.ts +1 -0
- package/src/connectivity/connectivity-status.ts +153 -0
- package/src/connectivity/index.ts +1 -0
- package/src/content-drawer/context.ts +13 -0
- package/src/content-drawer/drawer.service.ts +148 -0
- package/src/content-drawer/drawer.ts +183 -0
- package/src/content-drawer/index.ts +5 -0
- package/src/content-drawer/main.ts +83 -0
- package/src/content-drawer/readme.md +709 -0
- package/src/content-drawer/sheet.ts +180 -0
- package/src/date-range/date-range-dialog.ts +230 -0
- package/src/date-range/date-range-helpers.ts +135 -0
- package/src/date-range/date-range-presets.ts +220 -0
- package/src/date-range/date-range.ts +530 -0
- package/src/date-range/date-utils.ts +58 -0
- package/src/date-range/index.ts +2 -0
- package/src/date-range-inline/date-range-inline.ts +522 -0
- package/src/date-range-inline/index.ts +2 -0
- package/src/delay/delay.ts +136 -0
- package/src/delay/index.ts +1 -0
- package/src/details/details.ts +429 -0
- package/src/details/index.ts +1 -0
- package/src/dialog/dialog-base.mixin.ts +565 -0
- package/src/dialog/dialog-events.ts +17 -0
- package/src/dialog/dialog-service.ts +482 -0
- package/src/dialog/dialog.component.ts +394 -0
- package/src/dialog/index.ts +3 -0
- package/src/directives/animate-text.ts +551 -0
- package/src/directives/color.ts +41 -0
- package/src/directives/confirm-click.ts +350 -0
- package/src/directives/cursor-glow.ts +142 -0
- package/src/directives/cycle-text.ts +496 -0
- package/src/directives/depth-of-field.ts +83 -0
- package/src/directives/drag.ts +370 -0
- package/src/directives/gravity.ts +117 -0
- package/src/directives/index.ts +19 -0
- package/src/directives/intersect.ts +204 -0
- package/src/directives/layout.ts +261 -0
- package/src/directives/liquid.ts +150 -0
- package/src/directives/living-border.ts +166 -0
- package/src/directives/long-press.ts +150 -0
- package/src/directives/magnetic.ts +133 -0
- package/src/directives/nebula.ts +773 -0
- package/src/directives/reduced-motion.ts +30 -0
- package/src/directives/reveal.ts +158 -0
- package/src/directives/ripple.ts +102 -0
- package/src/directives/typewriter.ts +349 -0
- package/src/discovery/discovery.service.ts +210 -0
- package/src/discovery/index.ts +1 -0
- package/src/divider/divider.ts +100 -0
- package/src/divider/index.ts +1 -0
- package/src/dropdown/dropdown-component.ts +264 -0
- package/src/dropdown/dropdown-content.ts +108 -0
- package/src/dropdown/index.ts +2 -0
- package/src/expand/expand-root.component.ts +278 -0
- package/src/expand/expand.component.ts +287 -0
- package/src/expand/index.ts +2 -0
- package/src/extra/countries/countries.data.ts +196 -0
- package/src/extra/countries/countries.ts +107 -0
- package/src/extra/countries/index.ts +2 -0
- package/src/extra/index.ts +2 -0
- package/src/extra/timezone/index.ts +2 -0
- package/src/extra/timezone/timezone.ts +116 -0
- package/src/extra/timezone/timezones.data.ts +2546 -0
- package/src/float/float.ts +18 -0
- package/src/float/index.ts +1 -0
- package/src/form/form-v2.ts +268 -0
- package/src/form/form.ts +194 -0
- package/src/form/index.ts +2 -0
- package/src/icons/icon.ts +293 -0
- package/src/icons/index.ts +1 -0
- package/src/icons/readme.md +37 -0
- package/src/iframe/iframe.ts +98 -0
- package/src/iframe/index.ts +1 -0
- package/src/index.ts +69 -0
- package/src/input/index.ts +8 -0
- package/src/input/input.scss +211 -0
- package/src/input/input.ts +951 -0
- package/src/json/index.ts +1 -0
- package/src/json/json.ts +55 -0
- package/src/layout/flex/flex.scss +4 -0
- package/src/layout/flex/flex.ts +74 -0
- package/src/layout/flex/index.ts +1 -0
- package/src/layout/grid/.readme +79 -0
- package/src/layout/grid/grid.scss +5 -0
- package/src/layout/grid/grid.ts +121 -0
- package/src/layout/grid/index.ts +1 -0
- package/src/layout/index.ts +5 -0
- package/src/layout/layout.ts +122 -0
- package/src/layout/scroll/index.ts +1 -0
- package/src/layout/scroll/scroll.ts +351 -0
- package/src/layout/v2/flex.ts +243 -0
- package/src/layout/v2/grid.ts +93 -0
- package/src/layout/v2/index.ts +1 -0
- package/src/lightbox/flip-directive.ts +270 -0
- package/src/lightbox/index.ts +4 -0
- package/src/lightbox/lightbox-service.ts +378 -0
- package/src/lightbox/lightbox.directive.ts +256 -0
- package/src/lightbox/lightbox.ts +417 -0
- package/src/list/context.ts +3 -0
- package/src/list/index.ts +3 -0
- package/src/list/list-item.ts +94 -0
- package/src/list/list.ts +87 -0
- package/src/list/readme.md +62 -0
- package/src/mailbox/README.md +131 -0
- package/src/mailbox/email-editor.ts +1071 -0
- package/src/mailbox/email-layout-selector.ts +58 -0
- package/src/mailbox/email-recipients.ts +594 -0
- package/src/mailbox/email-template-picker.ts +296 -0
- package/src/mailbox/email-viewer.ts +715 -0
- package/src/mailbox/index.ts +31 -0
- package/src/mailbox/mailbox.ts +363 -0
- package/src/mailbox/types.ts +181 -0
- package/src/map/index.ts +1 -0
- package/src/map/map.ts +483 -0
- package/src/menu/index.ts +2 -0
- package/src/menu/menu-item.ts +26 -0
- package/src/menu/menu.ts +83 -0
- package/src/nav-drawer/$navbar.ts +51 -0
- package/src/nav-drawer/appbar.ts +26 -0
- package/src/nav-drawer/content.ts +32 -0
- package/src/nav-drawer/context.ts +6 -0
- package/src/nav-drawer/drawer.ts +128 -0
- package/src/nav-drawer/index.ts +6 -0
- package/src/nav-drawer/navbar.ts +191 -0
- package/src/navigation-bar/index.ts +2 -0
- package/src/navigation-bar/navigation-bar-item.ts +417 -0
- package/src/navigation-bar/navigation-bar.ts +482 -0
- package/src/navigation-rail/index.ts +2 -0
- package/src/navigation-rail/navigation-rail-item.ts +443 -0
- package/src/navigation-rail/navigation-rail.ts +492 -0
- package/src/notification/index.ts +6 -0
- package/src/notification/notification-service.ts +324 -0
- package/src/notification/notification.scss +117 -0
- package/src/notification/notification.ts +263 -0
- package/src/notification/notify.ts +207 -0
- package/src/notification/outlet.ts +16 -0
- package/src/option/index.ts +1 -0
- package/src/option/option.ts +180 -0
- package/src/page/index.ts +1 -0
- package/src/page/page.ts +135 -0
- package/src/progress/index.ts +1 -0
- package/src/progress/progress.ts +143 -0
- package/src/qr-scanner/index.ts +1 -0
- package/src/qr-scanner/qr-scanner.ts +240 -0
- package/src/radio-group/index.ts +2 -0
- package/src/radio-group/radio-button.ts +81 -0
- package/src/radio-group/radio-group.scss +4 -0
- package/src/radio-group/radio-group.ts +110 -0
- package/src/radio-group/readme.md +315 -0
- package/src/range/index.ts +1 -0
- package/src/range/range.ts +102 -0
- package/src/rxjs-utils/index.ts +6 -0
- package/src/rxjs-utils/mutation-observer.ts +22 -0
- package/src/rxjs-utils/waitForElement.ts +33 -0
- package/src/rxjs-utils/waitForElementAll.ts +34 -0
- package/src/rxjs-utils/waitForElements.ts +40 -0
- package/src/rxjs-utils/waitForElementsAll.ts +42 -0
- package/src/rxjs-utils/waitUntil.ts +16 -0
- package/src/select/README.md +405 -0
- package/src/select/index.ts +2 -0
- package/src/select/select.ts +766 -0
- package/src/sheet/hook.ts +40 -0
- package/src/sheet/index.ts +2 -0
- package/src/sheet/sheet.service.ts +235 -0
- package/src/sheet/sheet.ts +236 -0
- package/src/slider/index.ts +2 -0
- package/src/slider/slide.ts +107 -0
- package/src/slider/slider.ts +164 -0
- package/src/steps/index.ts +3 -0
- package/src/steps/schmancy-step.ts +213 -0
- package/src/steps/schmancy-steps-container.ts +109 -0
- package/src/steps/steps.context.ts +23 -0
- package/src/store/context-array.ts +358 -0
- package/src/store/context-collection.ts +218 -0
- package/src/store/context-create.ts +284 -0
- package/src/store/context-object.ts +298 -0
- package/src/store/filter-directive.ts +614 -0
- package/src/store/immer-integration.ts +99 -0
- package/src/store/index.ts +10 -0
- package/src/store/selector-hook.ts +259 -0
- package/src/store/selectors.ts +289 -0
- package/src/store/storage-manager.ts +269 -0
- package/src/store/store.class.ts +239 -0
- package/src/store/types.ts +327 -0
- package/src/surface/context.ts +3 -0
- package/src/surface/index.ts +1 -0
- package/src/surface/surface.styles.ts +334 -0
- package/src/surface/surface.ts +59 -0
- package/src/table/index.ts +2 -0
- package/src/table/row.ts +60 -0
- package/src/table/table.ts +266 -0
- package/src/tabs/Readme.md +397 -0
- package/src/tabs/context.ts +5 -0
- package/src/tabs/index.ts +4 -0
- package/src/tabs/tab.ts +39 -0
- package/src/tabs/tabs-compatibility.ts +20 -0
- package/src/tabs/tabs-group.ts +184 -0
- package/src/teleport/.excalidraw +2511 -0
- package/src/teleport/index.ts +2 -0
- package/src/teleport/readme.md +91 -0
- package/src/teleport/teleport.component.ts +132 -0
- package/src/teleport/teleport.service.ts +139 -0
- package/src/teleport/watcher.ts +20 -0
- package/src/textarea/index.ts +1 -0
- package/src/textarea/textarea.scss +54 -0
- package/src/textarea/textarea.ts +432 -0
- package/src/theme/context.ts +28 -0
- package/src/theme/index.ts +17 -0
- package/src/theme/theme-audio-player.ts +470 -0
- package/src/theme/theme-controller-boat.ts +49 -0
- package/src/theme/theme-controller-example.md +152 -0
- package/src/theme/theme-controller.ts +205 -0
- package/src/theme/theme.component.ts +305 -0
- package/src/theme/theme.events.ts +59 -0
- package/src/theme/theme.format.ts +417 -0
- package/src/theme/theme.interface.ts +399 -0
- package/src/theme/theme.service.ts +520 -0
- package/src/theme/theme.style.css +619 -0
- package/src/theme-button/index.ts +1 -0
- package/src/theme-button/theme-button.ts +35 -0
- package/src/tooltip/index.ts +2 -0
- package/src/tooltip/tooltip.directive.ts +277 -0
- package/src/tooltip/tooltip.ts +216 -0
- package/src/tree/README.md +59 -0
- package/src/tree/index.ts +1 -0
- package/src/tree/tree.ts +132 -0
- package/src/types/events.ts +5 -0
- package/src/types/index.ts +3 -0
- package/src/types/mood-audio.types.ts +220 -0
- package/src/types/surface.ts +52 -0
- package/src/typewriter/IMPROVEMENTS.md +174 -0
- package/src/typewriter/QUICK_REFERENCE.md +166 -0
- package/src/typewriter/index.ts +1 -0
- package/src/typewriter/test-typewriter.html +97 -0
- package/src/typewriter/typewriter.ts +376 -0
- package/src/typography/index.ts +1 -0
- package/src/typography/typography.ts +448 -0
- package/src/utils/animation.ts +418 -0
- package/src/utils/hashContent.ts +12 -0
- package/src/utils/index.ts +6 -0
- package/src/utils/intersection.ts +22 -0
- package/src/utils/number.ts +529 -0
- package/src/utils/overlay-stack.ts +101 -0
- package/src/utils/search.ts +322 -0
- package/src/vite-env.d.ts +2 -0
- package/src/window/index.ts +10 -0
- package/src/window/window-manager.ts +204 -0
- package/src/window/window-position.ts +136 -0
- package/src/window/window-registry.ts +34 -0
- package/src/window/window.ts +724 -0
- package/types/mixins/baseElement.d.ts +12 -0
- package/types/mixins/discovery.service.d.ts +72 -0
- package/types/mixins/index.d.ts +2 -0
- package/types/mixins/surface.mixin.d.ts +39 -0
- package/types/src/area/area.service.d.ts +2 -0
- package/types/src/badge/badge.d.ts +1 -1
- package/types/src/boat/boat.d.ts +40 -33
- package/types/src/button/icon-button.d.ts +10 -0
- package/types/src/chips/filter-chip.d.ts +0 -12
- package/types/src/connectivity/connectivity-status.d.ts +25 -0
- package/types/src/connectivity/index.d.ts +1 -0
- package/types/src/content-drawer/drawer.service.d.ts +3 -0
- package/types/src/date-range/date-range.d.ts +2 -0
- package/types/src/details/details.d.ts +26 -2
- package/types/src/dialog/dialog-base.mixin.d.ts +7 -3
- package/types/src/dialog/dialog-service.d.ts +27 -1
- package/types/src/dialog/dialog.component.d.ts +35 -1
- package/types/src/directives/animate-text.d.ts +67 -0
- package/types/src/directives/color.d.ts +2 -3
- package/types/src/directives/confirm-click.d.ts +38 -0
- package/types/src/directives/cursor-glow.d.ts +38 -0
- package/types/src/directives/cycle-text.d.ts +44 -0
- package/types/src/directives/depth-of-field.d.ts +38 -0
- package/types/src/directives/drag.d.ts +8 -8
- package/types/src/directives/gravity.d.ts +40 -0
- package/types/src/directives/index.d.ts +16 -2
- package/types/src/directives/intersect.d.ts +60 -0
- package/types/src/directives/layout.d.ts +62 -0
- package/types/src/directives/liquid.d.ts +38 -0
- package/types/src/directives/living-border.d.ts +39 -0
- package/types/src/directives/long-press.d.ts +38 -0
- package/types/src/directives/magnetic.d.ts +35 -0
- package/types/src/directives/nebula.d.ts +80 -0
- package/types/src/directives/reduced-motion.d.ts +2 -0
- package/types/src/directives/reveal.d.ts +54 -0
- package/types/src/directives/ripple.d.ts +15 -5
- package/types/src/directives/typewriter.d.ts +50 -0
- package/types/src/discovery/discovery.service.d.ts +72 -0
- package/types/src/expand/expand-root.component.d.ts +30 -0
- package/types/src/expand/expand.component.d.ts +38 -0
- package/types/src/expand/index.d.ts +2 -0
- package/types/src/float/float.d.ts +14 -0
- package/types/src/float/index.d.ts +1 -0
- package/types/src/icons/icon.d.ts +14 -0
- package/types/src/iframe/iframe.d.ts +37 -0
- package/types/src/iframe/index.d.ts +1 -0
- package/types/src/index.d.ts +6 -1
- package/types/src/input/index.d.ts +1 -1
- package/types/src/layout/scroll/scroll.d.ts +11 -0
- package/types/src/lightbox/lightbox.d.ts +1 -0
- package/types/src/mailbox/email-recipients.d.ts +2 -2
- package/types/src/mailbox/types.d.ts +1 -1
- package/types/src/navigation-bar/navigation-bar.d.ts +17 -0
- package/types/src/notification/notification.d.ts +1 -0
- package/types/src/page/page.d.ts +6 -0
- package/types/src/range/index.d.ts +1 -0
- package/types/src/range/range.d.ts +25 -0
- package/types/src/sheet/sheet.d.ts +0 -1
- package/types/src/steps/schmancy-steps-container.d.ts +8 -6
- package/types/src/surface/surface.d.ts +4 -27
- package/types/src/surface/surface.styles.d.ts +31 -0
- package/types/src/tabs/tab.d.ts +1 -0
- package/types/src/textarea/textarea.d.ts +3 -2
- package/types/src/theme/context.d.ts +2 -282
- package/types/src/theme/theme.component.d.ts +9 -1
- package/types/src/theme/theme.format.d.ts +1 -1
- package/types/src/theme/theme.interface.d.ts +8 -1
- package/types/src/theme/theme.service.d.ts +20 -282
- package/types/src/types/surface.d.ts +27 -1
- package/types/src/typography/typography.d.ts +17 -3
- package/types/src/utils/animation.d.ts +254 -0
- package/types/src/utils/index.d.ts +2 -0
- package/types/src/utils/number.d.ts +18 -2
- package/types/src/utils/overlay-stack.d.ts +54 -0
- package/types/src/window/index.d.ts +3 -0
- package/types/src/window/window-manager.d.ts +49 -0
- package/types/src/window/window-position.d.ts +64 -0
- package/types/src/window/window-registry.d.ts +28 -0
- package/types/src/window/window.d.ts +67 -0
- package/ai/animated-text.md +0 -116
- package/ai/component-relationships.md +0 -93
- package/ai/context.md +0 -572
- package/ai/countries.md +0 -271
- package/ai/index.md +0 -112
- package/ai/navigation-bar-item.md +0 -259
- package/ai/payment-card-form.md +0 -242
- package/ai/spinner.md +0 -165
- package/ai/template.md +0 -144
- package/ai/timezone.md +0 -276
- package/dist/_commonjsHelpers-Dw9sPFZy.js +0 -7
- package/dist/_commonjsHelpers-Dw9sPFZy.js.map +0 -1
- package/dist/_commonjsHelpers-k2hpEU-q.cjs +0 -2
- package/dist/_commonjsHelpers-k2hpEU-q.cjs.map +0 -1
- package/dist/ai/animated-text.md +0 -116
- package/dist/ai/component-relationships.md +0 -93
- package/dist/ai/context.md +0 -572
- package/dist/ai/countries.md +0 -271
- package/dist/ai/index.md +0 -112
- package/dist/ai/navigation-bar-item.md +0 -259
- package/dist/ai/payment-card-form.md +0 -242
- package/dist/ai/spinner.md +0 -165
- package/dist/ai/template.md +0 -144
- package/dist/ai/timezone.md +0 -276
- package/dist/animated-text-B3DQRJBy.cjs +0 -37
- package/dist/animated-text-B3DQRJBy.cjs.map +0 -1
- package/dist/animated-text-BAj4-6hE.js +0 -76
- package/dist/animated-text-BAj4-6hE.js.map +0 -1
- package/dist/animated-text.cjs +0 -2
- package/dist/animated-text.cjs.map +0 -1
- package/dist/animated-text.js +0 -2
- package/dist/animated-text.js.map +0 -1
- package/dist/area.cjs.map +0 -1
- package/dist/area.component-CP4DZ0d8.js +0 -330
- package/dist/area.component-CP4DZ0d8.js.map +0 -1
- package/dist/area.component-ChxSLt16.cjs +0 -12
- package/dist/area.component-ChxSLt16.cjs.map +0 -1
- package/dist/area.js.map +0 -1
- package/dist/audio.cjs.map +0 -1
- package/dist/audio.js.map +0 -1
- package/dist/autocomplete-CAaVSg4g.cjs +0 -112
- package/dist/autocomplete-CAaVSg4g.cjs.map +0 -1
- package/dist/autocomplete-CGbACUYd.js +0 -333
- package/dist/autocomplete-CGbACUYd.js.map +0 -1
- package/dist/autocomplete.cjs.map +0 -1
- package/dist/autocomplete.js.map +0 -1
- package/dist/avatar-nWOZXEsW.cjs +0 -273
- package/dist/avatar-nWOZXEsW.cjs.map +0 -1
- package/dist/avatar-rLCF6MSI.js +0 -895
- package/dist/avatar-rLCF6MSI.js.map +0 -1
- package/dist/badge.cjs.map +0 -1
- package/dist/badge.js.map +0 -1
- package/dist/boat-Ckt9v__d.js +0 -301
- package/dist/boat-Ckt9v__d.js.map +0 -1
- package/dist/boat-yNAZ2LLB.cjs +0 -97
- package/dist/boat-yNAZ2LLB.cjs.map +0 -1
- package/dist/boat.cjs.map +0 -1
- package/dist/boat.js.map +0 -1
- package/dist/busy.cjs.map +0 -1
- package/dist/busy.js.map +0 -1
- package/dist/card.cjs.map +0 -1
- package/dist/card.js.map +0 -1
- package/dist/checkbox-BnAlpsJN.cjs +0 -40
- package/dist/checkbox-BnAlpsJN.cjs.map +0 -1
- package/dist/checkbox-D22yfGe3.js +0 -526
- package/dist/checkbox-D22yfGe3.js.map +0 -1
- package/dist/checkbox.cjs.map +0 -1
- package/dist/checkbox.js.map +0 -1
- package/dist/chips.cjs.map +0 -1
- package/dist/chips.js.map +0 -1
- package/dist/code-highlight.cjs.map +0 -1
- package/dist/code-highlight.js.map +0 -1
- package/dist/code-preview-DPlQayFd.js +0 -967
- package/dist/code-preview-DPlQayFd.js.map +0 -1
- package/dist/code-preview-jPnX60FF.cjs +0 -193
- package/dist/code-preview-jPnX60FF.cjs.map +0 -1
- package/dist/components.cjs.map +0 -1
- package/dist/components.js.map +0 -1
- package/dist/consume-5D1qfVWM.js +0 -38
- package/dist/consume-5D1qfVWM.js.map +0 -1
- package/dist/consume-edta5ng5.cjs +0 -2
- package/dist/consume-edta5ng5.cjs.map +0 -1
- package/dist/content-drawer.cjs.map +0 -1
- package/dist/content-drawer.js.map +0 -1
- package/dist/context-create-B_S-sD5B.js +0 -1107
- package/dist/context-create-B_S-sD5B.js.map +0 -1
- package/dist/context-create-DTybDbZp.cjs +0 -2
- package/dist/context-create-DTybDbZp.cjs.map +0 -1
- package/dist/date-range-GFm5NG33.js +0 -639
- package/dist/date-range-GFm5NG33.js.map +0 -1
- package/dist/date-range-inline-CgX2o0FP.cjs +0 -44
- package/dist/date-range-inline-CgX2o0FP.cjs.map +0 -1
- package/dist/date-range-inline-DTQLESAZ.js +0 -197
- package/dist/date-range-inline-DTQLESAZ.js.map +0 -1
- package/dist/date-range-inline.cjs.map +0 -1
- package/dist/date-range-inline.js.map +0 -1
- package/dist/date-range-ug3B9CFT.cjs +0 -119
- package/dist/date-range-ug3B9CFT.cjs.map +0 -1
- package/dist/date-range.cjs.map +0 -1
- package/dist/date-range.js.map +0 -1
- package/dist/delay-CWtBL0VD.cjs +0 -10
- package/dist/delay-CWtBL0VD.cjs.map +0 -1
- package/dist/delay-DEe1CmHc.js +0 -288
- package/dist/delay-DEe1CmHc.js.map +0 -1
- package/dist/delay.cjs.map +0 -1
- package/dist/delay.js.map +0 -1
- package/dist/details-D-LXW23W.js +0 -100
- package/dist/details-D-LXW23W.js.map +0 -1
- package/dist/details-DVke77dU.cjs +0 -55
- package/dist/details-DVke77dU.cjs.map +0 -1
- package/dist/details.cjs.map +0 -1
- package/dist/details.js.map +0 -1
- package/dist/dialog-service-C86xTS8q.cjs +0 -2
- package/dist/dialog-service-C86xTS8q.cjs.map +0 -1
- package/dist/dialog-service-D9E3jLAR.js +0 -118
- package/dist/dialog-service-D9E3jLAR.js.map +0 -1
- package/dist/dialog.component-BM0D-hK9.cjs +0 -48
- package/dist/dialog.component-BM0D-hK9.cjs.map +0 -1
- package/dist/dialog.component-a7FlKhGD.js +0 -145
- package/dist/dialog.component-a7FlKhGD.js.map +0 -1
- package/dist/discovery.service-BbYjU5x8.js +0 -21
- package/dist/discovery.service-BbYjU5x8.js.map +0 -1
- package/dist/discovery.service-BpGCuXPd.cjs +0 -2
- package/dist/discovery.service-BpGCuXPd.cjs.map +0 -1
- package/dist/divider-CzTpxOqt.js +0 -84
- package/dist/divider-CzTpxOqt.js.map +0 -1
- package/dist/divider-D8KStUhN.cjs +0 -58
- package/dist/divider-D8KStUhN.cjs.map +0 -1
- package/dist/divider.cjs.map +0 -1
- package/dist/divider.js.map +0 -1
- package/dist/dropdown-content-CngZN3vv.cjs +0 -58
- package/dist/dropdown-content-CngZN3vv.cjs.map +0 -1
- package/dist/dropdown-content-DCn-g0-f.js +0 -147
- package/dist/dropdown-content-DCn-g0-f.js.map +0 -1
- package/dist/email-recipients-BhntMZMf.cjs +0 -1173
- package/dist/email-recipients-BhntMZMf.cjs.map +0 -1
- package/dist/email-recipients-BzjAKNJ0.js +0 -1733
- package/dist/email-recipients-BzjAKNJ0.js.map +0 -1
- package/dist/emotional-sounds-BRnFhww6.js +0 -234
- package/dist/emotional-sounds-BRnFhww6.js.map +0 -1
- package/dist/emotional-sounds-DVGhmoZf.cjs +0 -2
- package/dist/emotional-sounds-DVGhmoZf.cjs.map +0 -1
- package/dist/extra.cjs.map +0 -1
- package/dist/extra.js.map +0 -1
- package/dist/flex-5dR48zie.js +0 -183
- package/dist/flex-5dR48zie.js.map +0 -1
- package/dist/flex-oHl2EfYB.cjs +0 -18
- package/dist/flex-oHl2EfYB.cjs.map +0 -1
- package/dist/flow-D0e7hGXO.cjs +0 -2
- package/dist/flow-D0e7hGXO.cjs.map +0 -1
- package/dist/flow-DXYqC9OA.js +0 -340
- package/dist/flow-DXYqC9OA.js.map +0 -1
- package/dist/form-BlPiAPt7.cjs +0 -2
- package/dist/form-BlPiAPt7.cjs.map +0 -1
- package/dist/form-BxVM6JTn.js +0 -141
- package/dist/form-BxVM6JTn.js.map +0 -1
- package/dist/form.cjs.map +0 -1
- package/dist/form.js.map +0 -1
- package/dist/formField.mixin-BCGA7Ea3.js +0 -48
- package/dist/formField.mixin-BCGA7Ea3.js.map +0 -1
- package/dist/formField.mixin-BfJMifU9.cjs +0 -2
- package/dist/formField.mixin-BfJMifU9.cjs.map +0 -1
- package/dist/height-CfECBO2j.js +0 -44
- package/dist/height-CfECBO2j.js.map +0 -1
- package/dist/height-Z70qJYJK.cjs +0 -2
- package/dist/height-Z70qJYJK.cjs.map +0 -1
- package/dist/icon-DHEXr3c-.cjs +0 -49
- package/dist/icon-DHEXr3c-.cjs.map +0 -1
- package/dist/icon-DYpLoegR.js +0 -84
- package/dist/icon-DYpLoegR.js.map +0 -1
- package/dist/icon-button-CmZBLHWC.js +0 -164
- package/dist/icon-button-CmZBLHWC.js.map +0 -1
- package/dist/icon-button-IbSX8C98.cjs +0 -70
- package/dist/icon-button-IbSX8C98.cjs.map +0 -1
- package/dist/icons.cjs.map +0 -1
- package/dist/icons.js.map +0 -1
- package/dist/index-CCi1otmh.cjs +0 -2
- package/dist/index-CCi1otmh.cjs.map +0 -1
- package/dist/index-CW6PhEkx.js +0 -17
- package/dist/index-CW6PhEkx.js.map +0 -1
- package/dist/index.cjs.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/input-BByjYlgl.cjs +0 -51
- package/dist/input-BByjYlgl.cjs.map +0 -1
- package/dist/input-D0cQ9DOY.js +0 -237
- package/dist/input-D0cQ9DOY.js.map +0 -1
- package/dist/input-chip-B5ErXgCB.js +0 -206
- package/dist/input-chip-B5ErXgCB.js.map +0 -1
- package/dist/input-chip-DkWaTciP.cjs +0 -147
- package/dist/input-chip-DkWaTciP.cjs.map +0 -1
- package/dist/input.cjs.map +0 -1
- package/dist/input.js.map +0 -1
- package/dist/intersection-CJxzz8c-.js +0 -15
- package/dist/intersection-CJxzz8c-.js.map +0 -1
- package/dist/intersection-CVvaDv96.cjs +0 -2
- package/dist/intersection-CVvaDv96.cjs.map +0 -1
- package/dist/json-BZVe74np.cjs +0 -12
- package/dist/json-BZVe74np.cjs.map +0 -1
- package/dist/json-PKewOWuJ.js +0 -51
- package/dist/json-PKewOWuJ.js.map +0 -1
- package/dist/layout.cjs.map +0 -1
- package/dist/layout.js.map +0 -1
- package/dist/lightbox-service-D-0JtxB1.cjs +0 -202
- package/dist/lightbox-service-D-0JtxB1.cjs.map +0 -1
- package/dist/lightbox-service-DZMnb1eU.js +0 -458
- package/dist/lightbox-service-DZMnb1eU.js.map +0 -1
- package/dist/lightbox.cjs.map +0 -1
- package/dist/lightbox.js.map +0 -1
- package/dist/list-B_2m7l3g.cjs +0 -17
- package/dist/list-B_2m7l3g.cjs.map +0 -1
- package/dist/list-CW56LV-v.js +0 -69
- package/dist/list-CW56LV-v.js.map +0 -1
- package/dist/list.cjs.map +0 -1
- package/dist/list.js.map +0 -1
- package/dist/litElement.mixin-CrpeGpZ7.cjs +0 -2
- package/dist/litElement.mixin-CrpeGpZ7.cjs.map +0 -1
- package/dist/litElement.mixin-DHZXtvYq.js +0 -15
- package/dist/litElement.mixin-DHZXtvYq.js.map +0 -1
- package/dist/mailbox.cjs.map +0 -1
- package/dist/mailbox.js.map +0 -1
- package/dist/map-2Hl60a0A.js +0 -175
- package/dist/map-2Hl60a0A.js.map +0 -1
- package/dist/map-DyPS9G7M.cjs +0 -81
- package/dist/map-DyPS9G7M.cjs.map +0 -1
- package/dist/map.cjs.map +0 -1
- package/dist/map.js.map +0 -1
- package/dist/media-CS8HpKnK.cjs +0 -152
- package/dist/media-CS8HpKnK.cjs.map +0 -1
- package/dist/media-DtWbcRxL.js +0 -244
- package/dist/media-DtWbcRxL.js.map +0 -1
- package/dist/menu-Caju5-zd.js +0 -60
- package/dist/menu-Caju5-zd.js.map +0 -1
- package/dist/menu-rX5RPAI2.cjs +0 -24
- package/dist/menu-rX5RPAI2.cjs.map +0 -1
- package/dist/menu.cjs.map +0 -1
- package/dist/menu.js.map +0 -1
- package/dist/nav-drawer.cjs.map +0 -1
- package/dist/nav-drawer.js.map +0 -1
- package/dist/navigation-bar.cjs.map +0 -1
- package/dist/navigation-bar.js.map +0 -1
- package/dist/navigation-rail-Ctketq5a.js +0 -256
- package/dist/navigation-rail-Ctketq5a.js.map +0 -1
- package/dist/navigation-rail-DC9_oSIM.cjs +0 -79
- package/dist/navigation-rail-DC9_oSIM.cjs.map +0 -1
- package/dist/notification-service-CUlfXqmj.js +0 -155
- package/dist/notification-service-CUlfXqmj.js.map +0 -1
- package/dist/notification-service-DknbpqTt.cjs +0 -19
- package/dist/notification-service-DknbpqTt.cjs.map +0 -1
- package/dist/notification.cjs.map +0 -1
- package/dist/notification.js.map +0 -1
- package/dist/notify-DJSOWTxv.js +0 -35
- package/dist/notify-DJSOWTxv.js.map +0 -1
- package/dist/notify-DickIEHW.cjs +0 -2
- package/dist/notify-DickIEHW.cjs.map +0 -1
- package/dist/number-B7aCRYnH.cjs +0 -2
- package/dist/number-B7aCRYnH.cjs.map +0 -1
- package/dist/number-BhTiptLA.js +0 -99
- package/dist/number-BhTiptLA.js.map +0 -1
- package/dist/option-Bng41-rY.js +0 -77
- package/dist/option-Bng41-rY.js.map +0 -1
- package/dist/option-DYT5Rkgy.cjs +0 -44
- package/dist/option-DYT5Rkgy.cjs.map +0 -1
- package/dist/option.cjs.map +0 -1
- package/dist/option.js.map +0 -1
- package/dist/page-BLn9gtSd.cjs +0 -20
- package/dist/page-BLn9gtSd.cjs.map +0 -1
- package/dist/page-D-ROcQDd.js +0 -48
- package/dist/page-D-ROcQDd.js.map +0 -1
- package/dist/payment-card-form-5UtfWzoW.cjs +0 -74
- package/dist/payment-card-form-5UtfWzoW.cjs.map +0 -1
- package/dist/payment-card-form-BJa4RgF2.js +0 -515
- package/dist/payment-card-form-BJa4RgF2.js.map +0 -1
- package/dist/pills-BS5rZ6C3.js +0 -346
- package/dist/pills-BS5rZ6C3.js.map +0 -1
- package/dist/pills-Blf7IAeq.cjs +0 -113
- package/dist/pills-Blf7IAeq.cjs.map +0 -1
- package/dist/progress-DlhYniW_.cjs +0 -35
- package/dist/progress-DlhYniW_.cjs.map +0 -1
- package/dist/progress-yTIX6EqC.js +0 -56
- package/dist/progress-yTIX6EqC.js.map +0 -1
- package/dist/progress.cjs.map +0 -1
- package/dist/progress.js.map +0 -1
- package/dist/provide-BxZ2kn_p.cjs +0 -2
- package/dist/provide-BxZ2kn_p.cjs.map +0 -1
- package/dist/provide-tcktw8xB.js +0 -100
- package/dist/provide-tcktw8xB.js.map +0 -1
- package/dist/qr-scanner-DOs7uNS_.cjs +0 -29
- package/dist/qr-scanner-DOs7uNS_.cjs.map +0 -1
- package/dist/qr-scanner-DjZ8mgHV.js +0 -743
- package/dist/qr-scanner-DjZ8mgHV.js.map +0 -1
- package/dist/radio-button-N_PrrxKB.cjs +0 -41
- package/dist/radio-button-N_PrrxKB.cjs.map +0 -1
- package/dist/radio-button-me3SRHGu.js +0 -115
- package/dist/radio-button-me3SRHGu.js.map +0 -1
- package/dist/radio-group.cjs.map +0 -1
- package/dist/radio-group.js.map +0 -1
- package/dist/ripple-BgJXbNSP.js +0 -124
- package/dist/ripple-BgJXbNSP.js.map +0 -1
- package/dist/ripple-x6sTX02K.cjs +0 -16
- package/dist/ripple-x6sTX02K.cjs.map +0 -1
- package/dist/rxjs-utils.cjs.map +0 -1
- package/dist/rxjs-utils.js.map +0 -1
- package/dist/schmancy-steps-container-J6P-NNNj.js +0 -156
- package/dist/schmancy-steps-container-J6P-NNNj.js.map +0 -1
- package/dist/schmancy-steps-container-T57BKMzi.cjs +0 -70
- package/dist/schmancy-steps-container-T57BKMzi.cjs.map +0 -1
- package/dist/scroll-C_gfUgjn.js +0 -87
- package/dist/scroll-C_gfUgjn.js.map +0 -1
- package/dist/scroll-CecsowP7.cjs +0 -27
- package/dist/scroll-CecsowP7.cjs.map +0 -1
- package/dist/search-B1s7thB0.cjs +0 -2
- package/dist/search-B1s7thB0.cjs.map +0 -1
- package/dist/search-DxxnLa5u.js +0 -95
- package/dist/search-DxxnLa5u.js.map +0 -1
- package/dist/select-BBA0gBHf.js +0 -280
- package/dist/select-BBA0gBHf.js.map +0 -1
- package/dist/select-D9oCjv7N.cjs +0 -57
- package/dist/select-D9oCjv7N.cjs.map +0 -1
- package/dist/select.cjs.map +0 -1
- package/dist/select.js.map +0 -1
- package/dist/selector-hook-9w2auh2O.cjs +0 -2
- package/dist/selector-hook-9w2auh2O.cjs.map +0 -1
- package/dist/selector-hook-CHV4kDMd.js +0 -319
- package/dist/selector-hook-CHV4kDMd.js.map +0 -1
- package/dist/sheet-0oUfBmXX.cjs +0 -15
- package/dist/sheet-0oUfBmXX.cjs.map +0 -1
- package/dist/sheet-CNcDT3VP.js +0 -97
- package/dist/sheet-CNcDT3VP.js.map +0 -1
- package/dist/sheet.cjs.map +0 -1
- package/dist/sheet.js.map +0 -1
- package/dist/sheet.service-2MobB-9z.js +0 -68
- package/dist/sheet.service-2MobB-9z.js.map +0 -1
- package/dist/sheet.service-su_7yDQ-.cjs +0 -2
- package/dist/sheet.service-su_7yDQ-.cjs.map +0 -1
- package/dist/slider-CV-Ehp_5.cjs +0 -83
- package/dist/slider-CV-Ehp_5.cjs.map +0 -1
- package/dist/slider-CkE-iFUy.js +0 -161
- package/dist/slider-CkE-iFUy.js.map +0 -1
- package/dist/sound.service-Nza4c6wv.js +0 -102
- package/dist/sound.service-Nza4c6wv.js.map +0 -1
- package/dist/sound.service-eRirZw59.cjs +0 -2
- package/dist/sound.service-eRirZw59.cjs.map +0 -1
- package/dist/spinner-Bfn8KC-9.cjs +0 -135
- package/dist/spinner-Bfn8KC-9.cjs.map +0 -1
- package/dist/spinner-DiMbWXp9.js +0 -168
- package/dist/spinner-DiMbWXp9.js.map +0 -1
- package/dist/store.cjs.map +0 -1
- package/dist/store.js.map +0 -1
- package/dist/suggestion-chip-CEDqUNoS.js +0 -481
- package/dist/suggestion-chip-CEDqUNoS.js.map +0 -1
- package/dist/suggestion-chip-HhsLtZXR.cjs +0 -271
- package/dist/suggestion-chip-HhsLtZXR.cjs.map +0 -1
- package/dist/surface-CW3H23Va.cjs +0 -199
- package/dist/surface-CW3H23Va.cjs.map +0 -1
- package/dist/surface-eBfnSwQS.js +0 -220
- package/dist/surface-eBfnSwQS.js.map +0 -1
- package/dist/surface.cjs.map +0 -1
- package/dist/surface.js.map +0 -1
- package/dist/table-D0tiSL_u.cjs +0 -64
- package/dist/table-D0tiSL_u.cjs.map +0 -1
- package/dist/table-Dmo4TvTx.js +0 -561
- package/dist/table-Dmo4TvTx.js.map +0 -1
- package/dist/table.cjs.map +0 -1
- package/dist/table.js.map +0 -1
- package/dist/tabs-compatibility-Bit6y6en.js +0 -104
- package/dist/tabs-compatibility-Bit6y6en.js.map +0 -1
- package/dist/tabs-compatibility-Vq_2-ekz.cjs +0 -35
- package/dist/tabs-compatibility-Vq_2-ekz.cjs.map +0 -1
- package/dist/tabs.cjs.map +0 -1
- package/dist/tabs.js.map +0 -1
- package/dist/tailwind.mixin-Bp_PR6yc.js +0 -67
- package/dist/tailwind.mixin-Bp_PR6yc.js.map +0 -1
- package/dist/tailwind.mixin-Cp4PyXok.cjs +0 -2
- package/dist/tailwind.mixin-Cp4PyXok.cjs.map +0 -1
- package/dist/teleport.cjs.map +0 -1
- package/dist/teleport.js.map +0 -1
- package/dist/textarea-B1d1QCqT.js +0 -134
- package/dist/textarea-B1d1QCqT.js.map +0 -1
- package/dist/textarea-DG8CHhZA.cjs +0 -44
- package/dist/textarea-DG8CHhZA.cjs.map +0 -1
- package/dist/textarea.cjs.map +0 -1
- package/dist/textarea.js.map +0 -1
- package/dist/theme-button-CPL6Eaqd.cjs +0 -9
- package/dist/theme-button-CPL6Eaqd.cjs.map +0 -1
- package/dist/theme-button-CrLuMQNe.js +0 -27
- package/dist/theme-button-CrLuMQNe.js.map +0 -1
- package/dist/theme-button.cjs.map +0 -1
- package/dist/theme-button.js.map +0 -1
- package/dist/theme-controller-boat-CXbNJSI3.cjs +0 -178
- package/dist/theme-controller-boat-CXbNJSI3.cjs.map +0 -1
- package/dist/theme-controller-boat-CzSmjyKq.js +0 -1159
- package/dist/theme-controller-boat-CzSmjyKq.js.map +0 -1
- package/dist/theme.cjs.map +0 -1
- package/dist/theme.events-CPSLaOlR.js +0 -6
- package/dist/theme.events-CPSLaOlR.js.map +0 -1
- package/dist/theme.events-Car6U_SQ.cjs +0 -2
- package/dist/theme.events-Car6U_SQ.cjs.map +0 -1
- package/dist/theme.interface-BLfE5J_1.js +0 -5
- package/dist/theme.interface-BLfE5J_1.js.map +0 -1
- package/dist/theme.interface-BMeNadVb.cjs +0 -2
- package/dist/theme.interface-BMeNadVb.cjs.map +0 -1
- package/dist/theme.js.map +0 -1
- package/dist/timezone-4vwX0BgA.js +0 -112
- package/dist/timezone-4vwX0BgA.js.map +0 -1
- package/dist/timezone-BxvQcqe1.cjs +0 -32
- package/dist/timezone-BxvQcqe1.cjs.map +0 -1
- package/dist/tooltip-CjdvBf4X.js +0 -119
- package/dist/tooltip-CjdvBf4X.js.map +0 -1
- package/dist/tooltip-ZtnGjoJd.cjs +0 -7
- package/dist/tooltip-ZtnGjoJd.cjs.map +0 -1
- package/dist/tree-CBEjV7jP.js +0 -65
- package/dist/tree-CBEjV7jP.js.map +0 -1
- package/dist/tree-DP5U00NA.cjs +0 -27
- package/dist/tree-DP5U00NA.cjs.map +0 -1
- package/dist/tslib.es6-DgOcxv4s.cjs +0 -2
- package/dist/tslib.es6-DgOcxv4s.cjs.map +0 -1
- package/dist/tslib.es6-ujVQHAQ4.js +0 -10
- package/dist/tslib.es6-ujVQHAQ4.js.map +0 -1
- package/dist/typewriter-C6kFjLcX.cjs +0 -124
- package/dist/typewriter-C6kFjLcX.cjs.map +0 -1
- package/dist/typewriter-Eo5qXoGC.js +0 -555
- package/dist/typewriter-Eo5qXoGC.js.map +0 -1
- package/dist/typewriter.cjs.map +0 -1
- package/dist/typewriter.js.map +0 -1
- package/dist/typography-C_1gdM2I.js +0 -264
- package/dist/typography-C_1gdM2I.js.map +0 -1
- package/dist/typography-DGyjlLCE.cjs +0 -243
- package/dist/typography-DGyjlLCE.cjs.map +0 -1
- package/dist/utils-C38P63L6.cjs +0 -2
- package/dist/utils-C38P63L6.cjs.map +0 -1
- package/dist/utils-CYOVFxSx.js +0 -150
- package/dist/utils-CYOVFxSx.js.map +0 -1
- package/dist/utils.cjs.map +0 -1
- package/dist/utils.js.map +0 -1
- package/types/src/animated-text/animated-text.d.ts +0 -30
- package/types/src/animated-text/index.d.ts +0 -1
- package/types/src/directives/height.d.ts +0 -20
package/dist/form-BxVM6JTn.js
DELETED
|
@@ -1,141 +0,0 @@
|
|
|
1
|
-
import { Subject as d, merge as p, fromEvent as h, tap as m, takeUntil as y } from "rxjs";
|
|
2
|
-
import "rxjs/operators";
|
|
3
|
-
import "lit/directives/class-map.js";
|
|
4
|
-
import "lit/directives/style-map.js";
|
|
5
|
-
import { property as g, customElement as b } from "lit/decorators.js";
|
|
6
|
-
import { T as f } from "./tailwind.mixin-Bp_PR6yc.js";
|
|
7
|
-
import { html as k, LitElement as C } from "lit";
|
|
8
|
-
var v = Object.defineProperty, E = Object.getOwnPropertyDescriptor, l = (e, t, s, a) => {
|
|
9
|
-
for (var o, n = a > 1 ? void 0 : a ? E(t, s) : t, i = e.length - 1; i >= 0; i--) (o = e[i]) && (n = (a ? o(t, s, n) : o(n)) || n);
|
|
10
|
-
return a && n && v(t, s, n), n;
|
|
11
|
-
};
|
|
12
|
-
let c = class extends f() {
|
|
13
|
-
constructor() {
|
|
14
|
-
super(), this.$disconnecting = new d(), this.novalidate = !1, p(h(this, "click").pipe(m((e) => {
|
|
15
|
-
e.target.type?.toLowerCase() === "submit" && this.handleSubmitRequest(e);
|
|
16
|
-
})), h(this, "keydown").pipe(m((e) => {
|
|
17
|
-
e.code !== "Enter" && e.key !== "Enter" || this.handleSubmitRequest(e);
|
|
18
|
-
}))).pipe(y(this.$disconnecting)).subscribe();
|
|
19
|
-
}
|
|
20
|
-
static registerFormControl(e) {
|
|
21
|
-
const t = this.formControlRegistry.findIndex((s) => s.tagName === e.tagName);
|
|
22
|
-
t >= 0 ? this.formControlRegistry[t] = { ...this.formControlRegistry[t], ...e } : this.formControlRegistry.push(e);
|
|
23
|
-
}
|
|
24
|
-
static hasValue(e) {
|
|
25
|
-
return this.formControlRegistry.find((s) => s.tagName === e)?.hasValue || !1;
|
|
26
|
-
}
|
|
27
|
-
static hasChecked(e) {
|
|
28
|
-
return this.formControlRegistry.find((s) => s.tagName === e)?.hasChecked || !1;
|
|
29
|
-
}
|
|
30
|
-
static canSubmit(e) {
|
|
31
|
-
return this.formControlRegistry.find((s) => s.tagName === e)?.canSubmit || !1;
|
|
32
|
-
}
|
|
33
|
-
disconnectedCallback() {
|
|
34
|
-
super.disconnectedCallback(), this.$disconnecting.next(null), this.$disconnecting.complete();
|
|
35
|
-
}
|
|
36
|
-
submit() {
|
|
37
|
-
const e = this.getFormData();
|
|
38
|
-
return !(!this.novalidate && !this.reportValidity()) && (this.dispatchEvent(new CustomEvent("submit", { detail: e })), !0);
|
|
39
|
-
}
|
|
40
|
-
reset() {
|
|
41
|
-
this.getFormElements().forEach((e) => {
|
|
42
|
-
const t = e.tagName.toLowerCase();
|
|
43
|
-
if (t === "select") {
|
|
44
|
-
const s = e;
|
|
45
|
-
for (let a = 0; a < s.options.length; a++) {
|
|
46
|
-
const o = s.options[a];
|
|
47
|
-
o.selected = o.defaultSelected;
|
|
48
|
-
}
|
|
49
|
-
} else t === "input" && (e.type === "checkbox" || e.type === "radio") || t !== "input" && c.hasChecked(t) ? e.checked = e.hasAttribute("checked") : t === "schmancy-input" || t === "schmancy-rating" || t === "schmancy-mask-input" || t === "schmancy-date-time-input" ? e.value = e.getAttribute("value") : c.hasValue(t) && (e.value = e.defaultValue);
|
|
50
|
-
}), this.dispatchEvent(new CustomEvent("reset"));
|
|
51
|
-
}
|
|
52
|
-
getFormElements() {
|
|
53
|
-
const e = this.shadowRoot?.querySelector("slot"), t = e?.assignedElements({ flatten: !0 }), s = [];
|
|
54
|
-
return t?.forEach((a) => {
|
|
55
|
-
a.disabled || s.push(a);
|
|
56
|
-
const o = Array.from(a.getElementsByTagName("*")).filter((n) => !n.disabled);
|
|
57
|
-
s.push(...o);
|
|
58
|
-
}), s;
|
|
59
|
-
}
|
|
60
|
-
getFormData() {
|
|
61
|
-
const e = new FormData();
|
|
62
|
-
return this.getFormElements().forEach((t) => {
|
|
63
|
-
if (!t.name) return;
|
|
64
|
-
const s = t.tagName.toLowerCase();
|
|
65
|
-
if (s === "select") for (let a = 0; a < t.options.length; a++) {
|
|
66
|
-
const o = t.options[a];
|
|
67
|
-
o.selected && e.append(t.name, o.value);
|
|
68
|
-
}
|
|
69
|
-
else c.hasChecked(s) && t.checked ? e.append(t.name, t.value || "on") : c.hasValue(s) && t.type !== "checkbox" && t.type !== "radio" && t.type !== "submit" && e.append(t.name, t.value || "");
|
|
70
|
-
}), e;
|
|
71
|
-
}
|
|
72
|
-
reportValidity() {
|
|
73
|
-
return !this.getFormElements().some((e) => typeof e.reportValidity == "function" && e.reportValidity() === !1);
|
|
74
|
-
}
|
|
75
|
-
handleSubmitRequest(e) {
|
|
76
|
-
const t = e.target, s = t.tagName.toLowerCase();
|
|
77
|
-
return c.canSubmit(s) ? this.submit() : t.type?.toLowerCase() === "reset" && this.reset(), !0;
|
|
78
|
-
}
|
|
79
|
-
render() {
|
|
80
|
-
return k`<slot></slot>`;
|
|
81
|
-
}
|
|
82
|
-
};
|
|
83
|
-
c.tagName = "sch-form", c.formControlRegistry = [{ tagName: "input", hasValue: !0, hasChecked: !0, canSubmit: !0 }, { tagName: "textarea", hasValue: !0 }, { tagName: "select", hasValue: !0 }, { tagName: "button", canSubmit: !0 }, { tagName: "radio", hasChecked: !0 }, { tagName: "schmancy-input", hasValue: !0, canSubmit: !0 }, { tagName: "schmancy-mask-input", hasValue: !0 }, { tagName: "schmancy-button", canSubmit: !0 }, { tagName: "schmancy-icon-button", canSubmit: !0 }, { tagName: "schmancy-radio", hasChecked: !0 }, { tagName: "schmancy-switch", hasChecked: !0 }, { tagName: "schmancy-checkbox", hasValue: !0, hasChecked: !0 }, { tagName: "schmancy-radio-group", hasChecked: !0 }, { tagName: "schmancy-autocomplete", hasValue: !0, hasChecked: !0 }, { tagName: "schmancy-select", hasValue: !0, hasChecked: !0 }, { tagName: "schmancy-combo", hasValue: !0 }, { tagName: "schmancy-date-time-input", hasValue: !0 }, { tagName: "schmancy-rating", hasValue: !0 }], c.shadowRootOptions = { ...C.shadowRootOptions, mode: "open", delegatesFocus: !1 }, l([g({ type: Boolean, reflect: !0 })], c.prototype, "novalidate", 2), c = l([b("sch-form")], c);
|
|
84
|
-
var N = Object.defineProperty, w = Object.getOwnPropertyDescriptor, u = (e, t, s, a) => {
|
|
85
|
-
for (var o, n = a > 1 ? void 0 : a ? w(t, s) : t, i = e.length - 1; i >= 0; i--) (o = e[i]) && (n = (a ? o(t, s, n) : o(n)) || n);
|
|
86
|
-
return a && n && N(t, s, n), n;
|
|
87
|
-
};
|
|
88
|
-
let r = class extends f() {
|
|
89
|
-
constructor() {
|
|
90
|
-
super(), this.$disconnecting = new d(), this._controlsWithChecked = ["input", "radio", "schmancy-radio", "schmancy-switch", "schmancy-checkbox", "schmancy-radio-group", "schmancy-autocomplete", "schmancy-select"], this._controlsWithValue = ["input", "schmancy-input", "schmancy-mask-input", "textarea", "schmancy-rating", "schmancy-select", "schmancy-combo", "schmancy-date-time-input", "schmancy-autocomplete", "schmancy-checkbox", "schmancy-select"], this._controlsThatSubmit = ["button", "schmancy-input", "schmancy-button", "schmancy-icon-button"], this.novalidate = !1, p(h(this, "click").pipe(m((e) => {
|
|
91
|
-
e.target.type?.toLowerCase() === "submit" && this.handleSubmitRequest(e);
|
|
92
|
-
})), h(this, "keydown").pipe(m((e) => {
|
|
93
|
-
e.code !== "Enter" && e.key !== "Enter" || this.handleSubmitRequest(e);
|
|
94
|
-
}))).pipe(y(this.$disconnecting)).subscribe();
|
|
95
|
-
}
|
|
96
|
-
submit() {
|
|
97
|
-
const e = this.getFormData();
|
|
98
|
-
return !(!this.novalidate && !this.reportValidity()) && (this.dispatchEvent(new CustomEvent("submit", { detail: e })), !0);
|
|
99
|
-
}
|
|
100
|
-
reset() {
|
|
101
|
-
this.getFormElements().forEach((e) => {
|
|
102
|
-
const t = e.tagName.toLowerCase();
|
|
103
|
-
if (t === "select") for (let s = 0; s < e.options.length; s++) {
|
|
104
|
-
const a = e.options[s];
|
|
105
|
-
a.selected = a.defaultSelected;
|
|
106
|
-
}
|
|
107
|
-
else t === "input" && (e.type === "checkbox" || e.type == "radio") || t !== "input" && this._controlsWithChecked.includes(t) ? e.checked = e.hasAttribute("checked") : t === "schmancy-input" || t === "schmancy-rating" || t === "schmancy-mask-input" || t === "schmancy-date-time-input" ? e.value = e.getAttribute("value") : this._controlsWithValue.includes(t) && (e.value = e.defaultValue);
|
|
108
|
-
}), this.dispatchEvent(new CustomEvent("reset"));
|
|
109
|
-
}
|
|
110
|
-
getFormElements() {
|
|
111
|
-
const e = this.shadowRoot?.querySelector("slot"), t = e?.assignedElements({ flatten: !0 }), s = [];
|
|
112
|
-
return t?.forEach((a) => {
|
|
113
|
-
a.disabled || s.push(a);
|
|
114
|
-
const o = Array.from(a.getElementsByTagName("*")).filter((n) => !n.disabled);
|
|
115
|
-
s.push(...o);
|
|
116
|
-
}), s;
|
|
117
|
-
}
|
|
118
|
-
getFormData() {
|
|
119
|
-
const e = new FormData();
|
|
120
|
-
return this.getFormElements().forEach((t) => {
|
|
121
|
-
const s = t.tagName.toLowerCase();
|
|
122
|
-
if (s === "select") for (let a = 0; a < t.options.length; a++) {
|
|
123
|
-
const o = t.options[a];
|
|
124
|
-
o.selected && e.append(t.name, o.value);
|
|
125
|
-
}
|
|
126
|
-
else this._controlsWithChecked.includes(s) && t.checked ? e.append(t.name, t.value || "on") : this._controlsWithValue.includes(s) && t.type !== "checkbox" && t.type !== "radio" && t.type !== "submit" && e.append(t.name, t.value);
|
|
127
|
-
}), e;
|
|
128
|
-
}
|
|
129
|
-
reportValidity() {
|
|
130
|
-
return !this.getFormElements().some((e) => typeof e.reportValidity == "function" && e.reportValidity() === !1);
|
|
131
|
-
}
|
|
132
|
-
handleSubmitRequest(e) {
|
|
133
|
-
const t = e.target;
|
|
134
|
-
return this._controlsThatSubmit.includes(t.tagName.toLowerCase()) ? this.submit() : t.type?.toLowerCase() === "reset" && this.reset(), !0;
|
|
135
|
-
}
|
|
136
|
-
render() {
|
|
137
|
-
return k`<slot></slot>`;
|
|
138
|
-
}
|
|
139
|
-
};
|
|
140
|
-
r.tagName = "schmancy-form", r.shadowRootOptions = { ...C.shadowRootOptions, mode: "open", delegatesFocus: !1 }, u([g({ type: Boolean, reflect: !0 })], r.prototype, "novalidate", 2), r = u([b("schmancy-form")], r);
|
|
141
|
-
//# sourceMappingURL=form-BxVM6JTn.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"form-BxVM6JTn.js","sources":["../src/form/form-v2.ts","../src/form/form.ts"],"sourcesContent":["import { TailwindElement } from '@mixins/index'\nimport { html, LitElement } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { fromEvent, merge, Subject, takeUntil, tap } from 'rxjs'\n\n// Define interfaces for form element capabilities\nexport interface FormElement extends HTMLElement {\n\tname?: string\n\tvalue?: string\n\tdisabled?: boolean\n\ttype?: string\n\tdefaultValue?: string\n}\n\nexport interface CheckableFormElement extends FormElement {\n\tchecked?: boolean\n}\n\nexport interface ValidatableFormElement extends FormElement {\n\treportValidity?: () => boolean\n}\n\n// Define interface for form control registry\nexport interface FormControlConfig {\n\ttagName: string\n\thasValue?: boolean\n\thasChecked?: boolean\n\tcanSubmit?: boolean\n}\n\n/**\n * The form is a component used to collect user input from\n * interactive controls.\n *\n * @element sch-form\n *\n * @slot - Default slot for the form.\n *\n * @fires submit - Emitted when the form is submitted.\n * @fires reset - Emitted when the form is reset.\n */\n@customElement('sch-form')\nexport default class SchmancyFormV2 extends TailwindElement() {\n\tprivate $disconnecting = new Subject()\n\tpublic static readonly tagName = 'sch-form'\n\n\t// Static registry of form controls\n\tprivate static formControlRegistry: FormControlConfig[] = [\n\t\t// Native elements\n\t\t{ tagName: 'input', hasValue: true, hasChecked: true, canSubmit: true },\n\t\t{ tagName: 'textarea', hasValue: true },\n\t\t{ tagName: 'select', hasValue: true },\n\t\t{ tagName: 'button', canSubmit: true },\n\t\t{ tagName: 'radio', hasChecked: true },\n\n\t\t// Custom elements\n\t\t{ tagName: 'schmancy-input', hasValue: true, canSubmit: true },\n\t\t{ tagName: 'schmancy-mask-input', hasValue: true },\n\t\t{ tagName: 'schmancy-button', canSubmit: true },\n\t\t{ tagName: 'schmancy-icon-button', canSubmit: true },\n\t\t{ tagName: 'schmancy-radio', hasChecked: true },\n\t\t{ tagName: 'schmancy-switch', hasChecked: true },\n\t\t{ tagName: 'schmancy-checkbox', hasValue: true, hasChecked: true },\n\t\t{ tagName: 'schmancy-radio-group', hasChecked: true },\n\t\t{ tagName: 'schmancy-autocomplete', hasValue: true, hasChecked: true },\n\t\t{ tagName: 'schmancy-select', hasValue: true, hasChecked: true },\n\t\t{ tagName: 'schmancy-combo', hasValue: true },\n\t\t{ tagName: 'schmancy-date-time-input', hasValue: true },\n\t\t{ tagName: 'schmancy-rating', hasValue: true },\n\t]\n\n\t// Static methods to register new form controls\n\tpublic static registerFormControl(config: FormControlConfig): void {\n\t\tconst existingIndex = this.formControlRegistry.findIndex(item => item.tagName === config.tagName)\n\n\t\tif (existingIndex >= 0) {\n\t\t\tthis.formControlRegistry[existingIndex] = {\n\t\t\t\t...this.formControlRegistry[existingIndex],\n\t\t\t\t...config,\n\t\t\t}\n\t\t} else {\n\t\t\tthis.formControlRegistry.push(config)\n\t\t}\n\t}\n\n\t// Helper methods to check control capabilities\n\tprivate static hasValue(tagName: string): boolean {\n\t\tconst config = this.formControlRegistry.find(item => item.tagName === tagName)\n\t\treturn config?.hasValue || false\n\t}\n\n\tprivate static hasChecked(tagName: string): boolean {\n\t\tconst config = this.formControlRegistry.find(item => item.tagName === tagName)\n\t\treturn config?.hasChecked || false\n\t}\n\n\tprivate static canSubmit(tagName: string): boolean {\n\t\tconst config = this.formControlRegistry.find(item => item.tagName === tagName)\n\t\treturn config?.canSubmit || false\n\t}\n\n\tprotected static shadowRootOptions = {\n\t\t...LitElement.shadowRootOptions,\n\t\tmode: 'open',\n\t\tdelegatesFocus: false,\n\t}\n\n\n\t/** Specifies if form data validation should be skipped on submit.\n\t * @attr novalidate\n\t * @type {boolean}\n\t * @public\n\t */\n\t@property({ type: Boolean, reflect: true }) public novalidate = false\n\n\tconstructor() {\n\t\tsuper()\n\t\tmerge(\n\t\t\tfromEvent<MouseEvent>(this, 'click').pipe(\n\t\t\t\ttap(e => {\n\t\t\t\t\tconst target = e.target as HTMLButtonElement\n\t\t\t\t\tif (target.type?.toLowerCase() === 'submit') {\n\t\t\t\t\t\tthis.handleSubmitRequest(e)\n\t\t\t\t\t}\n\t\t\t\t}),\n\t\t\t),\n\t\t\tfromEvent<KeyboardEvent>(this, 'keydown').pipe(\n\t\t\t\ttap(e => {\n\t\t\t\t\tif (e.code === 'Enter' || e.key === 'Enter') {\n\t\t\t\t\t\tthis.handleSubmitRequest(e)\n\t\t\t\t\t}\n\t\t\t\t}),\n\t\t\t),\n\t\t)\n\t\t\t.pipe(takeUntil(this.$disconnecting))\n\t\t\t.subscribe()\n\t}\n\n\tdisconnectedCallback() {\n\t\tsuper.disconnectedCallback()\n\t\tthis.$disconnecting.next(null)\n\t\tthis.$disconnecting.complete()\n\t}\n\n\t/** Submits the form. */\n\tpublic submit(): boolean {\n\t\tconst formData = this.getFormData()\n\t\tif (!this.novalidate && !this.reportValidity()) {\n\t\t\treturn false\n\t\t}\n\t\tthis.dispatchEvent(new CustomEvent('submit', { detail: formData }))\n\t\treturn true\n\t}\n\n\t/** Resets the form. */\n\tpublic reset() {\n\t\tconst formElements = this.getFormElements()\n\t\tformElements.forEach(element => {\n\t\t\tconst tagName = element.tagName.toLowerCase()\n\n\t\t\tif (tagName === 'select') {\n\t\t\t\tconst selectElement = element as HTMLSelectElement\n\t\t\t\tfor (let i = 0; i < selectElement.options.length; i++) {\n\t\t\t\t\tconst option = selectElement.options[i]\n\t\t\t\t\toption.selected = option.defaultSelected\n\t\t\t\t}\n\t\t\t} else if (\n\t\t\t\t(tagName === 'input' && (element.type === 'checkbox' || element.type === 'radio')) ||\n\t\t\t\t(tagName !== 'input' && SchmancyFormV2.hasChecked(tagName))\n\t\t\t) {\n\t\t\t\t;(element as CheckableFormElement).checked = element.hasAttribute('checked')\n\t\t\t} else if (\n\t\t\t\ttagName === 'schmancy-input' ||\n\t\t\t\ttagName === 'schmancy-rating' ||\n\t\t\t\ttagName === 'schmancy-mask-input' ||\n\t\t\t\ttagName === 'schmancy-date-time-input'\n\t\t\t) {\n\t\t\t\telement.value = element.getAttribute('value')\n\t\t\t} else if (SchmancyFormV2.hasValue(tagName)) {\n\t\t\t\telement.value = element.defaultValue\n\t\t\t}\n\t\t})\n\t\tthis.dispatchEvent(new CustomEvent('reset'))\n\t}\n\n\tprivate getFormElements(): FormElement[] {\n\t\tconst slot = this.shadowRoot?.querySelector('slot')\n\t\tconst assignedElements = slot?.assignedElements({ flatten: true })\n\t\tconst formElements: FormElement[] = []\n\n\t\tassignedElements?.forEach((element: FormElement) => {\n\t\t\tif (!element.disabled) {\n\t\t\t\tformElements.push(element)\n\t\t\t}\n\n\t\t\tconst children = Array.from(element.getElementsByTagName('*')).filter(\n\t\t\t\t(childElement: FormElement) => !childElement.disabled,\n\t\t\t)\n\t\t\tformElements.push(...(children as FormElement[]))\n\t\t})\n\n\t\treturn formElements\n\t}\n\n\tpublic getFormData() {\n\t\tconst formData = new FormData()\n\t\tconst formElements = this.getFormElements()\n\n\t\tformElements.forEach(element => {\n\t\t\tif (!element.name) return\n\n\t\t\tconst tagName = element.tagName.toLowerCase()\n\n\t\t\tif (tagName === 'select') {\n\t\t\t\tfor (let i = 0; i < (element as HTMLSelectElement).options.length; i++) {\n\t\t\t\t\tconst option = (element as HTMLSelectElement).options[i]\n\t\t\t\t\tif (option.selected) {\n\t\t\t\t\t\tformData.append(element.name, option.value)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (SchmancyFormV2.hasChecked(tagName) && (element as CheckableFormElement).checked) {\n\t\t\t\tformData.append(element.name, element.value || 'on')\n\t\t\t} else if (\n\t\t\t\tSchmancyFormV2.hasValue(tagName) &&\n\t\t\t\t(element as HTMLInputElement).type !== 'checkbox' &&\n\t\t\t\t(element as HTMLInputElement).type !== 'radio' &&\n\t\t\t\t(element as HTMLInputElement).type !== 'submit'\n\t\t\t) {\n\t\t\t\tformData.append(element.name, element.value || '')\n\t\t\t}\n\t\t})\n\n\t\treturn formData\n\t}\n\n\t/** Checks for validity of the form. */\n\tpublic reportValidity(): boolean {\n\t\tconst formElements = this.getFormElements()\n\t\treturn !formElements.some(\n\t\t\telement =>\n\t\t\t\ttypeof (element as ValidatableFormElement).reportValidity === 'function' &&\n\t\t\t\t(element as ValidatableFormElement).reportValidity() === false,\n\t\t)\n\t}\n\n\tprivate handleSubmitRequest(event: MouseEvent | KeyboardEvent) {\n\t\tconst targetElement = event.target as HTMLElement\n\t\tconst tagName = targetElement.tagName.toLowerCase()\n\n\t\tif (SchmancyFormV2.canSubmit(tagName)) {\n\t\t\tthis.submit()\n\t\t} else if ((targetElement as HTMLButtonElement).type?.toLowerCase() === 'reset') {\n\t\t\tthis.reset()\n\t\t}\n\n\t\treturn true\n\t}\n\n\tprotected override render() {\n\t\treturn html`<slot></slot>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'sch-form': SchmancyFormV2\n\t}\n}\n","import { TailwindElement } from '@mixins/index'\nimport { html, LitElement } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { fromEvent, merge, Subject, takeUntil, tap } from 'rxjs'\n\nexport interface FormEventMap {\n\tsubmit: CustomEvent<FormData>\n\treset: CustomEvent\n}\n\n/**\n * The form is a component used to collect user input from\n * interactive controls.\n *\n * @element schmancy-form\n *\n * @slot - Default slot for the form.\n *\n * @fires submit - Emitted when the form is submitted.\n * @fires reset - Emitted when the form is reset.\n */\n@customElement('schmancy-form')\nexport default class SchmancyForm extends TailwindElement() {\n\tprivate $disconnecting = new Subject()\n\tpublic static readonly tagName = 'schmancy-form'\n\tprotected static shadowRootOptions = {\n\t\t...LitElement.shadowRootOptions,\n\t\tmode: 'open',\n\t\tdelegatesFocus: false,\n\t}\n\n\tprivate _controlsWithChecked = [\n\t\t'input',\n\t\t'radio',\n\t\t'schmancy-radio',\n\t\t'schmancy-switch',\n\t\t'schmancy-checkbox',\n\t\t'schmancy-radio-group',\n\t\t'schmancy-autocomplete',\n\t\t'schmancy-select',\n\t]\n\tprivate _controlsWithValue = [\n\t\t'input',\n\t\t'schmancy-input',\n\t\t'schmancy-mask-input',\n\t\t'textarea',\n\t\t'schmancy-rating',\n\t\t'schmancy-select',\n\t\t'schmancy-combo',\n\t\t'schmancy-date-time-input',\n\t\t'schmancy-autocomplete',\n\t\t'schmancy-checkbox',\n\t\t'schmancy-select',\n\t]\n\tprivate _controlsThatSubmit = ['button', 'schmancy-input', 'schmancy-button', 'schmancy-icon-button']\n\n\t/** Specifies if form data validation should be skipped on submit.\n\t * @attr novalidate\n\t * @type {boolean}\n\t * @public\n\t */\n\t@property({ type: Boolean, reflect: true }) public novalidate = false\n\n\tconstructor() {\n\t\tsuper()\n\t\tmerge(\n\t\t\tfromEvent<MouseEvent>(this, 'click').pipe(\n\t\t\t\ttap(e => {\n\t\t\t\t\tif ((e.target as HTMLButtonElement).type?.toLowerCase() === 'submit') this.handleSubmitRequest(e)\n\t\t\t\t}),\n\t\t\t),\n\t\t\tfromEvent<KeyboardEvent>(this, 'keydown').pipe(\n\t\t\t\ttap(e => {\n\t\t\t\t\tif (e.code === 'Enter' || e.key === 'Enter') {\n\t\t\t\t\t\tthis.handleSubmitRequest(e)\n\t\t\t\t\t}\n\t\t\t\t}),\n\t\t\t),\n\t\t)\n\t\t\t.pipe(takeUntil(this.$disconnecting))\n\t\t\t.subscribe()\n\t}\n\n\t/** Submits the form. */\n\tpublic submit(): boolean {\n\t\tconst formData = this.getFormData()\n\t\tif (!this.novalidate && !this.reportValidity()) {\n\t\t\treturn false\n\t\t}\n\t\tthis.dispatchEvent(new CustomEvent('submit', { detail: formData }))\n\t\treturn true\n\t}\n\n\t/** Resets the form. */\n\tpublic reset() {\n\t\tconst formElements = this.getFormElements()\n\t\tformElements.forEach(element => {\n\t\t\tconst tagName = element.tagName.toLowerCase()\n\t\t\tif (tagName === 'select') {\n\t\t\t\tfor (let i = 0; i < element.options.length; i++) {\n\t\t\t\t\tconst option = element.options[i]\n\t\t\t\t\toption.selected = option.defaultSelected\n\t\t\t\t}\n\t\t\t} else if (\n\t\t\t\t(tagName === 'input' && (element.type === 'checkbox' || element.type == 'radio')) ||\n\t\t\t\t(tagName !== 'input' && this._controlsWithChecked.includes(tagName))\n\t\t\t) {\n\t\t\t\telement.checked = element.hasAttribute('checked')\n\t\t\t} else if (\n\t\t\t\ttagName === 'schmancy-input' ||\n\t\t\t\ttagName === 'schmancy-rating' ||\n\t\t\t\ttagName === 'schmancy-mask-input' ||\n\t\t\t\ttagName === 'schmancy-date-time-input'\n\t\t\t) {\n\t\t\t\telement.value = element.getAttribute('value')\n\t\t\t} else if (this._controlsWithValue.includes(tagName)) {\n\t\t\t\telement.value = element.defaultValue\n\t\t\t}\n\t\t})\n\t\tthis.dispatchEvent(new CustomEvent('reset'))\n\t}\n\n\tprivate getFormElements(): any[] {\n\t\tconst slot = this.shadowRoot?.querySelector('slot')\n\t\tconst assignedElements = slot?.assignedElements({ flatten: true })\n\t\tconst formElements: any[] = []\n\t\tassignedElements?.forEach((element: any) => {\n\t\t\tif (!element.disabled) {\n\t\t\t\tformElements.push(element)\n\t\t\t}\n\t\t\tconst children = Array.from(element.getElementsByTagName('*')).filter((element: any) => !element.disabled)\n\t\t\tformElements.push(...children)\n\t\t})\n\n\t\treturn formElements\n\t}\n\n\tpublic getFormData() {\n\t\tconst formData = new FormData()\n\n\t\tconst formElements = this.getFormElements()\n\t\tformElements.forEach(element => {\n\t\t\tconst tagName = element.tagName.toLowerCase()\n\t\t\tif (tagName === 'select') {\n\t\t\t\tfor (let i = 0; i < element.options.length; i++) {\n\t\t\t\t\tconst option = element.options[i]\n\t\t\t\t\tif (option.selected) {\n\t\t\t\t\t\tformData.append(element.name, option.value)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (this._controlsWithChecked.includes(tagName) && element.checked) {\n\t\t\t\tformData.append(element.name, element.value || 'on')\n\t\t\t} else if (\n\t\t\t\tthis._controlsWithValue.includes(tagName) &&\n\t\t\t\telement.type !== 'checkbox' &&\n\t\t\t\telement.type !== 'radio' &&\n\t\t\t\telement.type !== 'submit'\n\t\t\t) {\n\t\t\t\tformData.append(element.name, element.value)\n\t\t\t}\n\t\t})\n\n\t\treturn formData\n\t}\n\n\t/** Checks for validity of the form. */\n\tpublic reportValidity(): boolean {\n\t\tconst formElements = this.getFormElements()\n\t\treturn !formElements.some(\n\t\t\telement => typeof element.reportValidity === 'function' && element.reportValidity() === false,\n\t\t)\n\t}\n\n\tprivate handleSubmitRequest(event: MouseEvent | KeyboardEvent) {\n\t\tconst targetElement: any = event.target as HTMLElement\n\t\tif (this._controlsThatSubmit.includes(targetElement.tagName.toLowerCase())) {\n\t\t\tthis.submit()\n\t\t} else if (targetElement.type?.toLowerCase() === 'reset') {\n\t\t\tthis.reset()\n\t\t}\n\n\t\treturn true\n\t}\n\n\tprotected override render() {\n\t\treturn html`<slot></slot>`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-form': SchmancyForm\n\t}\n}\n"],"names":["SchmancyFormV2","TailwindElement","constructor","super","this","$disconnecting","Subject","novalidate","merge","fromEvent","pipe","tap","e","target","type","toLowerCase","handleSubmitRequest","code","key","takeUntil","subscribe","config","existingIndex","formControlRegistry","findIndex","item","tagName","push","find","hasValue","hasChecked","canSubmit","disconnectedCallback","next","complete","submit","formData","getFormData","reportValidity","dispatchEvent","CustomEvent","detail","reset","getFormElements","forEach","element","selectElement","i","options","length","option","selected","defaultSelected","checked","hasAttribute","value","getAttribute","defaultValue","slot","shadowRoot","querySelector","assignedElements","flatten","formElements","disabled","children","Array","from","getElementsByTagName","filter","childElement","FormData","name","append","some","event","targetElement","render","html","shadowRootOptions","LitElement","mode","delegatesFocus","__decorateClass","property","Boolean","reflect","prototype","customElement","SchmancyForm","_controlsWithChecked","_controlsWithValue","_controlsThatSubmit","includes"],"mappings":";;;;;;;;;;;AA0CA,IAAqBA,IAArB,cAA4CC,EAAAA,EAAAA;AAAAA,EAyE3C,cAAAC;AACCC,UAAAA,GAzEDC,KAAQC,iBAAiB,IAAIC,KAsEeF,KAAOG,aAAAA,IAIlDC,EACCC,EAAsBL,MAAM,OAAA,EAASM,KACpCC,EAAIC,CAAAA,MAAAA;AAEgC,MADpBA,EAAEC,OACNC,MAAMC,YAAAA,MAAkB,YAClCX,KAAKY,oBAAoBJ,CAAAA;AAAAA,IAAAA,CAAAA,CAAAA,GAI5BH,EAAyBL,MAAM,SAAA,EAAWM,KACzCC,EAAIC,CAAAA,MAAAA;AACY,MAAXA,EAAEK,SAAS,WAAWL,EAAEM,QAAQ,WACnCd,KAAKY,oBAAoBJ,CAAAA;AAAAA,IAAAA,CAAAA,CAAAA,CAAAA,EAK3BF,KAAKS,EAAUf,KAAKC,cAAAA,CAAAA,EACpBe,UAAAA;AAAAA,EACH;AAAA,EAhEA,OAAA,oBAAkCC,GAAAA;AACjC,UAAMC,IAAgBlB,KAAKmB,oBAAoBC,iBAAkBC,EAAKC,YAAYL,EAAOK,OAAAA;AAErFJ,IAAAA,KAAiB,IACpBlB,KAAKmB,oBAAoBD,CAAAA,IAAiB,EAAA,GACtClB,KAAKmB,oBAAoBD,CAAAA,GAAAA,GACzBD,EAAAA,IAGJjB,KAAKmB,oBAAoBI,KAAKN,CAAAA;AAAAA,EAEhC;AAAA,EAGA,OAAA,SAAwBK,GAAAA;AAEvB,WADetB,KAAKmB,oBAAoBK,KAAKH,CAAAA,MAAQA,EAAKC,YAAYA,CAAAA,GACvDG,YAAAA;AAAAA,EAChB;AAAA,EAEA,OAAA,WAA0BH,GAAAA;AAEzB,WADetB,KAAKmB,oBAAoBK,KAAKH,CAAAA,MAAQA,EAAKC,YAAYA,CAAAA,GACvDI,cAAAA;AAAAA,EAChB;AAAA,EAEA,OAAA,UAAyBJ,GAAAA;AAExB,WADetB,KAAKmB,oBAAoBK,KAAKH,CAAAA,MAAQA,EAAKC,YAAYA,CAAAA,GACvDK,aAAAA;AAAAA,EAChB;AAAA,EAuCA,uBAAAC;AACC7B,UAAM6B,qBAAAA,GACN5B,KAAKC,eAAe4B,KAAK,IAAA,GACzB7B,KAAKC,eAAe6B,SAAAA;AAAAA,EACrB;AAAA,EAGO,SAAAC;AACN,UAAMC,IAAWhC,KAAKiC,YAAAA;AACtB,WAAA,EAAA,CAAKjC,KAAKG,cAAAA,CAAeH,KAAKkC,eAAAA,OAG9BlC,KAAKmC,cAAc,IAAIC,YAAY,UAAU,EAAEC,QAAQL,EAAAA,CAAAA,CAAAA,GAAAA;AAAAA,EAExD;AAAA,EAGO,QAAAM;AACetC,SAAKuC,gBAAAA,EACbC,QAAQC,CAAAA,MAAAA;AACpB,YAAMnB,IAAUmB,EAAQnB,QAAQX,YAAAA;AAEhC,UAAIW,MAAY,UAAU;AACzB,cAAMoB,IAAgBD;AACtB,iBAASE,IAAI,GAAGA,IAAID,EAAcE,QAAQC,QAAQF,KAAK;AACtD,gBAAMG,IAASJ,EAAcE,QAAQD,CAAAA;AACrCG,UAAAA,EAAOC,WAAWD,EAAOE;AAAAA,QAC1B;AAAA,MACD,MACc,CAAZ1B,MAAY,YAAYmB,EAAQ/B,SAAS,cAAc+B,EAAQ/B,SAAS,YACxEY,MAAY,WAAW1B,EAAe8B,WAAWJ,CAAAA,IAEhDmB,EAAiCQ,UAAUR,EAAQS,aAAa,SAAA,IAElE5B,MAAY,oBACZA,MAAY,qBACZA,MAAY,yBACZA,MAAY,6BAEZmB,EAAQU,QAAQV,EAAQW,aAAa,OAAA,IAC3BxD,EAAe6B,SAASH,CAAAA,MAClCmB,EAAQU,QAAQV,EAAQY;AAAAA,IAAAA,CAAAA,GAG1BrD,KAAKmC,cAAc,IAAIC,YAAY,OAAA,CAAA;AAAA,EACpC;AAAA,EAEQ,kBAAAG;AACP,UAAMe,IAAOtD,KAAKuD,YAAYC,cAAc,MAAA,GACtCC,IAAmBH,GAAMG,iBAAiB,EAAEC,SAAAA,GAAS,CAAA,GACrDC,IAA8B,CAAA;AAapC,WAXAF,GAAkBjB,QAASC,CAAAA,MAAAA;AACrBA,MAAAA,EAAQmB,YACZD,EAAapC,KAAKkB,CAAAA;AAGnB,YAAMoB,IAAWC,MAAMC,KAAKtB,EAAQuB,qBAAqB,GAAA,CAAA,EAAMC,OAC7DC,CAAAA,MAAAA,CAA+BA,EAAaN,QAAAA;AAE9CD,QAAapC,KAAAA,GAASsC;QAGhBF;AAAAA,EACR;AAAA,EAEO,cAAA1B;AACN,UAAMD,IAAW,IAAImC;AA2BrB,WA1BqBnE,KAAKuC,gBAAAA,EAEbC,QAAQC,CAAAA,MAAAA;AACpB,UAAA,CAAKA,EAAQ2B,KAAM;AAEnB,YAAM9C,IAAUmB,EAAQnB,QAAQX,YAAAA;AAEhC,UAAIW,MAAY,SACf,UAASqB,IAAI,GAAGA,IAAKF,EAA8BG,QAAQC,QAAQF,KAAK;AACvE,cAAMG,IAAUL,EAA8BG,QAAQD,CAAAA;AAClDG,QAAAA,EAAOC,YACVf,EAASqC,OAAO5B,EAAQ2B,MAAMtB,EAAOK,KAAAA;AAAAA,MAEvC;AAAA,UACUvD,CAAAA,EAAe8B,WAAWJ,CAAAA,KAAamB,EAAiCQ,UAClFjB,EAASqC,OAAO5B,EAAQ2B,MAAM3B,EAAQU,SAAS,IAAA,IAE/CvD,EAAe6B,SAASH,CAAAA,KACvBmB,EAA6B/B,SAAS,cACtC+B,EAA6B/B,SAAS,WACtC+B,EAA6B/B,SAAS,YAEvCsB,EAASqC,OAAO5B,EAAQ2B,MAAM3B,EAAQU,SAAS,EAAA;AAAA,IAAA,CAAA,GAI1CnB;AAAAA,EACR;AAAA,EAGO,iBAAAE;AAEN,WAAA,CADqBlC,KAAKuC,gBAAAA,EACL+B,YAE2C,OAAtD7B,EAAmCP,kBAAmB,cAC7DO,EAAmCP,eAAAA,MADOA,EACPA;AAAAA,EAEvC;AAAA,EAEQ,oBAAoBqC,GAAAA;AAC3B,UAAMC,IAAgBD,EAAM9D,QACtBa,IAAUkD,EAAclD,QAAQX,YAAAA;AAQtC,WANIf,EAAe+B,UAAUL,CAAAA,IAC5BtB,KAAK+B,OAAAA,IACMyC,EAAoC9D,MAAMC,YAAAA,MAAkB,WACvEX,KAAKsC,MAAAA,GAAAA;AAAAA,EAIP;AAAA,EAEmB,SAAAmC;AAClB,WAAOC;AAAAA,EACR;AAAA;AA1NoB9E,EAEG0B,UAAU,YAFb1B,EAKLuB,sBAA2C,CAEzD,EAAEG,SAAS,SAASG,UAAAA,IAAgBC,YAAAA,IAAkBC,WAAAA,GAAW,GACjE,EAAEL,SAAS,YAAYG,UAAAA,GAAU,GACjC,EAAEH,SAAS,UAAUG,UAAAA,GAAU,GAC/B,EAAEH,SAAS,UAAUK,WAAAA,GAAW,GAChC,EAAEL,SAAS,SAASI,YAAAA,GAAY,GAGhC,EAAEJ,SAAS,kBAAkBG,UAAAA,IAAgBE,WAAAA,GAAW,GACxD,EAAEL,SAAS,uBAAuBG,UAAAA,GAAU,GAC5C,EAAEH,SAAS,mBAAmBK,WAAAA,GAAW,GACzC,EAAEL,SAAS,wBAAwBK,WAAAA,GAAW,GAC9C,EAAEL,SAAS,kBAAkBI,YAAAA,GAAY,GACzC,EAAEJ,SAAS,mBAAmBI,YAAAA,GAAY,GAC1C,EAAEJ,SAAS,qBAAqBG,UAAAA,IAAgBC,YAAAA,GAAY,GAC5D,EAAEJ,SAAS,wBAAwBI,YAAAA,GAAY,GAC/C,EAAEJ,SAAS,yBAAyBG,UAAAA,IAAgBC,YAAAA,GAAY,GAChE,EAAEJ,SAAS,mBAAmBG,UAAAA,IAAgBC,YAAAA,GAAY,GAC1D,EAAEJ,SAAS,kBAAkBG,UAAAA,GAAU,GACvC,EAAEH,SAAS,4BAA4BG,aAAU,GACjD,EAAEH,SAAS,mBAAmBG,UAAAA,GAAU,CAAA,GA1BrB7B,EA2DH+E,oBAAoB,EAAA,GACjCC,EAAWD,mBACdE,MAAM,QACNC,gBAAAA,GAAgB,GASkCC,EAAA,CAAlDC,EAAS,EAAEtE,MAAMuE,SAASC,SAAAA,GAAS,CAAA,CAAA,GAvEhBtF,EAuE+BuF,WAAA,cAAA,CAAA,GAvE/BvF,IAArBmF,EAAA,CADCK,EAAc,UAAA,CAAA,GACMxF,CAAAA;;;;;ACpBrB,IAAqByF,IAArB,cAA0CxF,EAAAA,EAAAA;AAAAA,EAyCzC,cAAAC;AACCC,UAAAA,GAzCDC,KAAQC,iBAAiB,IAAIC,KAQ7BF,KAAQsF,uBAAuB,CAC9B,SACA,SACA,kBACA,mBACA,qBACA,wBACA,yBACA,iBAAA,GAEDtF,KAAQuF,qBAAqB,CAC5B,SACA,kBACA,uBACA,YACA,mBACA,mBACA,kBACA,4BACA,yBACA,qBACA,iBAAA,GAEDvF,KAAQwF,sBAAsB,CAAC,UAAU,kBAAkB,mBAAmB,sBAAA,GAOlCxF,KAAOG,iBAIlDC,EACCC,EAAsBL,MAAM,OAAA,EAASM,KACpCC,EAAIC,CAAAA,MAAAA;AACyD,MAAvDA,EAAEC,OAA6BC,MAAMC,YAAAA,MAAkB,YAAUX,KAAKY,oBAAoBJ,CAAAA;AAAAA,IAAAA,CAAAA,CAAAA,GAGjGH,EAAyBL,MAAM,SAAA,EAAWM,KACzCC,EAAIC,CAAAA,MAAAA;AACY,MAAXA,EAAEK,SAAS,WAAWL,EAAEM,QAAQ,WACnCd,KAAKY,oBAAoBJ,CAAAA;AAAAA,IAAAA,CAAAA,CAAAA,CAAAA,EAK3BF,KAAKS,EAAUf,KAAKC,cAAAA,CAAAA,EACpBe,UAAAA;AAAAA,EACH;AAAA,EAGO,SAAAe;AACN,UAAMC,IAAWhC,KAAKiC,YAAAA;AACtB,WAAA,EAAA,CAAKjC,KAAKG,cAAAA,CAAeH,KAAKkC,eAAAA,OAG9BlC,KAAKmC,cAAc,IAAIC,YAAY,UAAU,EAAEC,QAAQL,EAAAA,CAAAA,CAAAA,GAAAA;AAAAA,EAExD;AAAA,EAGO,QAAAM;AACetC,SAAKuC,gBAAAA,EACbC,QAAQC,CAAAA,MAAAA;AACpB,YAAMnB,IAAUmB,EAAQnB,QAAQX,YAAAA;AAChC,UAAIW,MAAY,SACf,UAASqB,IAAI,GAAGA,IAAIF,EAAQG,QAAQC,QAAQF,KAAK;AAChD,cAAMG,IAASL,EAAQG,QAAQD,CAAAA;AAC/BG,QAAAA,EAAOC,WAAWD,EAAOE;AAAAA,MAC1B;AAAA,UAEa,CAAZ1B,MAAY,YAAYmB,EAAQ/B,SAAS,cAAc+B,EAAQ/B,QAAQ,YACvEY,MAAY,WAAWtB,KAAKsF,qBAAqBG,SAASnE,CAAAA,IAE3DmB,EAAQQ,UAAUR,EAAQS,aAAa,SAAA,IAEvC5B,MAAY,oBACZA,MAAY,qBACZA,MAAY,yBACZA,MAAY,6BAEZmB,EAAQU,QAAQV,EAAQW,aAAa,OAAA,IAC3BpD,KAAKuF,mBAAmBE,SAASnE,CAAAA,MAC3CmB,EAAQU,QAAQV,EAAQY;AAAAA,IAAAA,CAAAA,GAG1BrD,KAAKmC,cAAc,IAAIC,YAAY,OAAA,CAAA;AAAA,EACpC;AAAA,EAEQ,kBAAAG;AACP,UAAMe,IAAOtD,KAAKuD,YAAYC,cAAc,MAAA,GACtCC,IAAmBH,GAAMG,iBAAiB,EAAEC,SAAAA,GAAS,CAAA,GACrDC,IAAsB,CAAA;AAS5B,WARAF,GAAkBjB,QAASC,CAAAA,MAAAA;AACrBA,MAAAA,EAAQmB,YACZD,EAAapC,KAAKkB,CAAAA;AAEnB,YAAMoB,IAAWC,MAAMC,KAAKtB,EAAQuB,qBAAqB,GAAA,CAAA,EAAMC,OAAQxB,CAAAA,MAAAA,CAAkBA,EAAQmB,QAAAA;AACjGD,QAAapC,KAAAA,GAAQsC,CAAAA;AAAAA,IAAAA,CAAAA,GAGfF;AAAAA,EACR;AAAA,EAEO,cAAA1B;AACN,UAAMD,IAAW,IAAImC;AAwBrB,WAtBqBnE,KAAKuC,gBAAAA,EACbC,QAAQC,CAAAA,MAAAA;AACpB,YAAMnB,IAAUmB,EAAQnB,QAAQX,YAAAA;AAChC,UAAIW,MAAY,SACf,UAASqB,IAAI,GAAGA,IAAIF,EAAQG,QAAQC,QAAQF,KAAK;AAChD,cAAMG,IAASL,EAAQG,QAAQD,CAAAA;AAC3BG,QAAAA,EAAOC,YACVf,EAASqC,OAAO5B,EAAQ2B,MAAMtB,EAAOK,KAAAA;AAAAA,MAEvC;AAAA,UACUnD,MAAKsF,qBAAqBG,SAASnE,CAAAA,KAAYmB,EAAQQ,UACjEjB,EAASqC,OAAO5B,EAAQ2B,MAAM3B,EAAQU,SAAS,IAAA,IAE/CnD,KAAKuF,mBAAmBE,SAASnE,CAAAA,KACjCmB,EAAQ/B,SAAS,cACjB+B,EAAQ/B,SAAS,WACjB+B,EAAQ/B,SAAS,YAEjBsB,EAASqC,OAAO5B,EAAQ2B,MAAM3B,EAAQU,KAAAA;AAAAA,IAAAA,CAAAA,GAIjCnB;AAAAA,EACR;AAAA,EAGO,iBAAAE;AAEN,WAAA,CADqBlC,KAAKuC,gBAAAA,EACL+B,YACyB,OAA3B7B,EAAQP,kBAAmB,cAAcO,EAAQP,eAAAA,MAAzCA,EAAyCA;AAAAA,EAErE;AAAA,EAEQ,oBAAoBqC,GAAAA;AAC3B,UAAMC,IAAqBD,EAAM9D;AAOjC,WANIT,KAAKwF,oBAAoBC,SAASjB,EAAclD,QAAQX,YAAAA,CAAAA,IAC3DX,KAAK+B,OAAAA,IACKyC,EAAc9D,MAAMC,YAAAA,MAAkB,WAChDX,KAAKsC,MAAAA,GAAAA;AAAAA,EAIP;AAAA,EAEmB,SAAAmC;AAClB,WAAOC;AAAAA,EACR;AAAA;AApKoBW,EAEG/D,UAAU,iBAFb+D,EAGHV,oBAAoB,EAAA,GACjCC,EAAWD,mBACdE,MAAM,QACNC,gBAAAA,GAAgB,GAiCkCC,EAAA,CAAlDC,EAAS,EAAEtE,MAAMuE,SAASC,SAAAA,GAAS,CAAA,CAAA,GAvChBG,EAuC+BF,WAAA,cAAA,CAAA,GAvC/BE,IAArBN,EAAA,CADCK,EAAc,eAAA,CAAA,GACMC,CAAAA;"}
|
package/dist/form.cjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"form.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
package/dist/form.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"form.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import { property as i } from "lit/decorators.js";
|
|
2
|
-
import { T as n } from "./tailwind.mixin-Bp_PR6yc.js";
|
|
3
|
-
var h = Object.defineProperty, r = (s, e, a, p) => {
|
|
4
|
-
for (var t, o = void 0, l = s.length - 1; l >= 0; l--) (t = s[l]) && (o = t(e, a, o) || o);
|
|
5
|
-
return o && h(e, a, o), o;
|
|
6
|
-
};
|
|
7
|
-
function d(s) {
|
|
8
|
-
const a = class a extends s {
|
|
9
|
-
constructor(...t) {
|
|
10
|
-
super(...t), this.name = "", this.value = "", this.label = "", this.required = !1, this.disabled = !1, this.readonly = !1, this.error = !1, this.validationMessage = "", this.id = `schmancy-field-${Date.now()}-${Math.floor(1e3 * Math.random())}`;
|
|
11
|
-
try {
|
|
12
|
-
this.internals = this.attachInternals();
|
|
13
|
-
} catch {
|
|
14
|
-
this.internals = void 0;
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
get form() {
|
|
18
|
-
return this.internals?.form ?? null;
|
|
19
|
-
}
|
|
20
|
-
willUpdate(t) {
|
|
21
|
-
super.willUpdate(t), t.has("value") && this.internals?.setFormValue(this.value), (t.has("error") || t.has("validationMessage")) && (this.error && this.validationMessage ? this.internals?.setValidity({ customError: !0 }, this.validationMessage) : this.internals?.setValidity({}));
|
|
22
|
-
}
|
|
23
|
-
checkValidity() {
|
|
24
|
-
return !!this.disabled || !this.required || this.value !== "" && this.value !== void 0 && this.value !== null || (this.error = !0, this.validationMessage = "This field is required", !1);
|
|
25
|
-
}
|
|
26
|
-
reportValidity() {
|
|
27
|
-
const t = this.checkValidity();
|
|
28
|
-
return t || this.internals?.reportValidity(), t;
|
|
29
|
-
}
|
|
30
|
-
setCustomValidity(t) {
|
|
31
|
-
this.validationMessage = t, this.error = t !== "", t ? this.internals?.setValidity({ customError: !0 }, t) : this.internals?.setValidity({});
|
|
32
|
-
}
|
|
33
|
-
emitChange(t) {
|
|
34
|
-
this.dispatchEvent(new CustomEvent("change", { detail: t, bubbles: !0, composed: !0 }));
|
|
35
|
-
}
|
|
36
|
-
};
|
|
37
|
-
a.formAssociated = !0;
|
|
38
|
-
let e = a;
|
|
39
|
-
return r([i({ type: String })], e.prototype, "name"), r([i({ reflect: !0 })], e.prototype, "value"), r([i({ type: String })], e.prototype, "label"), r([i({ type: Boolean, reflect: !0 })], e.prototype, "required"), r([i({ type: Boolean, reflect: !0 })], e.prototype, "disabled"), r([i({ type: Boolean, reflect: !0 })], e.prototype, "readonly"), r([i({ type: Boolean, reflect: !0 })], e.prototype, "error"), r([i({ type: String })], e.prototype, "validationMessage"), r([i({ type: String })], e.prototype, "hint"), r([i({ reflect: !0 })], e.prototype, "id"), e;
|
|
40
|
-
}
|
|
41
|
-
function c(s) {
|
|
42
|
-
return d(n(s));
|
|
43
|
-
}
|
|
44
|
-
export {
|
|
45
|
-
d as F,
|
|
46
|
-
c as S
|
|
47
|
-
};
|
|
48
|
-
//# sourceMappingURL=formField.mixin-BCGA7Ea3.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"formField.mixin-BCGA7Ea3.js","sources":["../mixins/formField.mixin.ts"],"sourcesContent":["import { CSSResult, LitElement, PropertyValueMap } from 'lit'\nimport { property } from 'lit/decorators.js'\nimport { IBaseMixin } from './baseElement'\nimport { Constructor } from './constructor'\nimport { ITailwindElementMixin, TailwindElement } from './tailwind.mixin'\n\n/**\n * Interface defining the properties and methods that the FormFieldMixin adds.\n */\nexport interface IFormFieldMixin extends Element {\n\t// Properties\n\tname: string\n\tvalue: string | string[] | boolean | number | undefined\n\tlabel: string\n\trequired: boolean\n\tdisabled: boolean\n\treadonly: boolean\n\terror: boolean\n\tvalidationMessage: string\n\thint?: string\n\tid: string\n\n\t// Form association\n\tform: HTMLFormElement | null\n\n\t// Methods\n\tcheckValidity(): boolean\n\treportValidity(): boolean\n\tsetCustomValidity(message: string): void\n\n\t// Event emitter helper\n\temitChange(detail: any): void\n}\n\n/**\n * A mixin that adds form field capabilities to a LitElement class.\n * This provides common form field properties, validation, and form association.\n *\n * @example\n * ```ts\n * class MyInput extends FormFieldMixin(TailwindElement(css`...`)) {\n * // Your component code here\n * }\n * ```\n */\nexport function FormFieldMixin<T extends Constructor<LitElement>>(superClass: T) {\n\tclass FormFieldMixinClass extends superClass {\n\t\tstatic formAssociated = true\n\n\t\t// Element internals for form association\n\t\tprivate internals: ElementInternals | undefined\n\n\t\t// Properties common to form fields\n\t\t/**\n\t\t * The name of the form field (used for form submission)\n\t\t */\n\t\t@property({ type: String })\n\t\tname: string = ''\n\n\t\t/**\n\t\t * The current value of the form field\n\t\t */\n\t\t@property({ reflect: true })\n\t\tvalue: string | string[] | boolean | number | undefined = ''\n\n\t\t/**\n\t\t * Label text for the form field\n\t\t */\n\t\t@property({ type: String })\n\t\tlabel: string = ''\n\n\t\t/**\n\t\t * Whether the field is required\n\t\t */\n\t\t@property({ type: Boolean, reflect: true })\n\t\trequired: boolean = false\n\n\t\t/**\n\t\t * Whether the field is disabled\n\t\t */\n\t\t@property({ type: Boolean, reflect: true })\n\t\tdisabled: boolean = false\n\n\t\t/**\n\t\t * Whether the field is read-only\n\t\t */\n\t\t@property({ type: Boolean, reflect: true })\n\t\treadonly: boolean = false\n\n\t\t/**\n\t\t * Whether the field is in an error state\n\t\t */\n\t\t@property({ type: Boolean, reflect: true })\n\t\terror: boolean = false\n\n\t\t/**\n\t\t * The validation message to display\n\t\t */\n\t\t@property({ type: String })\n\t\tvalidationMessage: string = ''\n\n\t\t/**\n\t\t * Optional hint text to display below the field\n\t\t */\n\t\t@property({ type: String })\n\t\thint?: string\n\n\t\t/**\n\t\t * Unique identifier for the field\n\t\t */\n\t\t@property({ reflect: true })\n\t\toverride id: string = `schmancy-field-${Date.now()}-${Math.floor(Math.random() * 1000)}`\n\n\t\tconstructor(...args: any[]) {\n\t\t\tsuper(...args)\n\t\t\ttry {\n\t\t\t\tthis.internals = this.attachInternals()\n\t\t\t} catch {\n\t\t\t\tthis.internals = undefined\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Gets the form this element is associated with\n\t\t */\n\t\tget form(): HTMLFormElement | null {\n\t\t\treturn this.internals?.form ?? null\n\t\t}\n\n\t\t/**\n\t\t * Lifecycle method called when properties change\n\t\t */\n\t\tprotected willUpdate(changedProps: PropertyValueMap<any>): void {\n\t\t\tsuper.willUpdate(changedProps)\n\n\t\t\t// Update form value when value changes\n\t\t\tif (changedProps.has('value')) {\n\t\t\t\tthis.internals?.setFormValue(this.value as string | File | FormData | null)\n\t\t\t}\n\n\t\t\t// Update validation state when error or validation message changes\n\t\t\tif (changedProps.has('error') || changedProps.has('validationMessage')) {\n\t\t\t\tif (this.error && this.validationMessage) {\n\t\t\t\t\tthis.internals?.setValidity({ customError: true }, this.validationMessage)\n\t\t\t\t} else {\n\t\t\t\t\tthis.internals?.setValidity({})\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Checks if the field is valid without showing validation UI\n\t\t */\n\t\tcheckValidity(): boolean {\n\t\t\tif (this.disabled) return true\n\n\t\t\tif (this.required && (this.value === '' || this.value === undefined || this.value === null)) {\n\t\t\t\tthis.error = true\n\t\t\t\tthis.validationMessage = 'This field is required'\n\t\t\t\treturn false\n\t\t\t}\n\n\t\t\treturn true\n\t\t}\n\n\t\t/**\n\t\t * Reports validity and shows validation UI if invalid\n\t\t */\n\t\treportValidity(): boolean {\n\t\t\tconst isValid = this.checkValidity()\n\t\t\tif (!isValid) {\n\t\t\t\tthis.internals?.reportValidity()\n\t\t\t}\n\t\t\treturn isValid\n\t\t}\n\n\t\t/**\n\t\t * Sets a custom validation message\n\t\t */\n\t\tsetCustomValidity(message: string): void {\n\t\t\tthis.validationMessage = message\n\t\t\tthis.error = message !== ''\n\t\t\tif (message) {\n\t\t\t\tthis.internals?.setValidity({ customError: true }, message)\n\t\t\t} else {\n\t\t\t\tthis.internals?.setValidity({})\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Helper method to emit change events\n\t\t */\n\t\temitChange(detail: any): void {\n\t\t\tthis.dispatchEvent(\n\t\t\t\tnew CustomEvent('change', {\n\t\t\t\t\tdetail,\n\t\t\t\t\tbubbles: true,\n\t\t\t\t\tcomposed: true,\n\t\t\t\t}),\n\t\t\t)\n\t\t}\n\t}\n\n\treturn FormFieldMixinClass as Constructor<IFormFieldMixin> & T\n}\n\n/**\n * A convenience function that composes FormFieldMixin with TailwindElement\n * to create a base class for Schmancy form components.\n *\n * @example\n * ```ts\n * class MyInput extends SchmancyFormField(css`...`) {\n * // Your component code here\n * }\n * ```\n */\nexport function SchmancyFormField<T extends CSSResult>(componentStyle?: T) {\n\treturn FormFieldMixin(TailwindElement(componentStyle)) as Constructor<IFormFieldMixin> &\n\t\tConstructor<ITailwindElementMixin> &\n\t\tConstructor<LitElement> &\n\t\tConstructor<IBaseMixin>\n}\n"],"names":["FormFieldMixin","superClass","FormFieldMixinClass","args","super","this","name","value","label","required","disabled","readonly","error","validationMessage","id","Date","now","Math","floor","random","internals","attachInternals","form","changedProps","willUpdate","has","setFormValue","setValidity","customError","checkValidity","isValid","reportValidity","message","detail","dispatchEvent","CustomEvent","bubbles","composed","formAssociated","_e","__decorateClass","property","type","String","prototype","reflect","Boolean","SchmancyFormField","componentStyle","TailwindElement"],"mappings":"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"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";const r=require("lit/decorators.js"),p=require("./tailwind.mixin-Cp4PyXok.cjs");var h=Object.defineProperty,i=(s,e,a,d)=>{for(var t,o=void 0,l=s.length-1;l>=0;l--)(t=s[l])&&(o=t(e,a,o)||o);return o&&h(e,a,o),o};function n(s){const a=class a extends s{constructor(...t){super(...t),this.name="",this.value="",this.label="",this.required=!1,this.disabled=!1,this.readonly=!1,this.error=!1,this.validationMessage="",this.id=`schmancy-field-${Date.now()}-${Math.floor(1e3*Math.random())}`;try{this.internals=this.attachInternals()}catch{this.internals=void 0}}get form(){return this.internals?.form??null}willUpdate(t){super.willUpdate(t),t.has("value")&&this.internals?.setFormValue(this.value),(t.has("error")||t.has("validationMessage"))&&(this.error&&this.validationMessage?this.internals?.setValidity({customError:!0},this.validationMessage):this.internals?.setValidity({}))}checkValidity(){return!!this.disabled||!this.required||this.value!==""&&this.value!==void 0&&this.value!==null||(this.error=!0,this.validationMessage="This field is required",!1)}reportValidity(){const t=this.checkValidity();return t||this.internals?.reportValidity(),t}setCustomValidity(t){this.validationMessage=t,this.error=t!=="",t?this.internals?.setValidity({customError:!0},t):this.internals?.setValidity({})}emitChange(t){this.dispatchEvent(new CustomEvent("change",{detail:t,bubbles:!0,composed:!0}))}};a.formAssociated=!0;let e=a;return i([r.property({type:String})],e.prototype,"name"),i([r.property({reflect:!0})],e.prototype,"value"),i([r.property({type:String})],e.prototype,"label"),i([r.property({type:Boolean,reflect:!0})],e.prototype,"required"),i([r.property({type:Boolean,reflect:!0})],e.prototype,"disabled"),i([r.property({type:Boolean,reflect:!0})],e.prototype,"readonly"),i([r.property({type:Boolean,reflect:!0})],e.prototype,"error"),i([r.property({type:String})],e.prototype,"validationMessage"),i([r.property({type:String})],e.prototype,"hint"),i([r.property({reflect:!0})],e.prototype,"id"),e}exports.FormFieldMixin=n,exports.SchmancyFormField=function(s){return n(p.TailwindElement(s))};
|
|
2
|
-
//# sourceMappingURL=formField.mixin-BfJMifU9.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"formField.mixin-BfJMifU9.cjs","sources":["../mixins/formField.mixin.ts"],"sourcesContent":["import { CSSResult, LitElement, PropertyValueMap } from 'lit'\nimport { property } from 'lit/decorators.js'\nimport { IBaseMixin } from './baseElement'\nimport { Constructor } from './constructor'\nimport { ITailwindElementMixin, TailwindElement } from './tailwind.mixin'\n\n/**\n * Interface defining the properties and methods that the FormFieldMixin adds.\n */\nexport interface IFormFieldMixin extends Element {\n\t// Properties\n\tname: string\n\tvalue: string | string[] | boolean | number | undefined\n\tlabel: string\n\trequired: boolean\n\tdisabled: boolean\n\treadonly: boolean\n\terror: boolean\n\tvalidationMessage: string\n\thint?: string\n\tid: string\n\n\t// Form association\n\tform: HTMLFormElement | null\n\n\t// Methods\n\tcheckValidity(): boolean\n\treportValidity(): boolean\n\tsetCustomValidity(message: string): void\n\n\t// Event emitter helper\n\temitChange(detail: any): void\n}\n\n/**\n * A mixin that adds form field capabilities to a LitElement class.\n * This provides common form field properties, validation, and form association.\n *\n * @example\n * ```ts\n * class MyInput extends FormFieldMixin(TailwindElement(css`...`)) {\n * // Your component code here\n * }\n * ```\n */\nexport function FormFieldMixin<T extends Constructor<LitElement>>(superClass: T) {\n\tclass FormFieldMixinClass extends superClass {\n\t\tstatic formAssociated = true\n\n\t\t// Element internals for form association\n\t\tprivate internals: ElementInternals | undefined\n\n\t\t// Properties common to form fields\n\t\t/**\n\t\t * The name of the form field (used for form submission)\n\t\t */\n\t\t@property({ type: String })\n\t\tname: string = ''\n\n\t\t/**\n\t\t * The current value of the form field\n\t\t */\n\t\t@property({ reflect: true })\n\t\tvalue: string | string[] | boolean | number | undefined = ''\n\n\t\t/**\n\t\t * Label text for the form field\n\t\t */\n\t\t@property({ type: String })\n\t\tlabel: string = ''\n\n\t\t/**\n\t\t * Whether the field is required\n\t\t */\n\t\t@property({ type: Boolean, reflect: true })\n\t\trequired: boolean = false\n\n\t\t/**\n\t\t * Whether the field is disabled\n\t\t */\n\t\t@property({ type: Boolean, reflect: true })\n\t\tdisabled: boolean = false\n\n\t\t/**\n\t\t * Whether the field is read-only\n\t\t */\n\t\t@property({ type: Boolean, reflect: true })\n\t\treadonly: boolean = false\n\n\t\t/**\n\t\t * Whether the field is in an error state\n\t\t */\n\t\t@property({ type: Boolean, reflect: true })\n\t\terror: boolean = false\n\n\t\t/**\n\t\t * The validation message to display\n\t\t */\n\t\t@property({ type: String })\n\t\tvalidationMessage: string = ''\n\n\t\t/**\n\t\t * Optional hint text to display below the field\n\t\t */\n\t\t@property({ type: String })\n\t\thint?: string\n\n\t\t/**\n\t\t * Unique identifier for the field\n\t\t */\n\t\t@property({ reflect: true })\n\t\toverride id: string = `schmancy-field-${Date.now()}-${Math.floor(Math.random() * 1000)}`\n\n\t\tconstructor(...args: any[]) {\n\t\t\tsuper(...args)\n\t\t\ttry {\n\t\t\t\tthis.internals = this.attachInternals()\n\t\t\t} catch {\n\t\t\t\tthis.internals = undefined\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Gets the form this element is associated with\n\t\t */\n\t\tget form(): HTMLFormElement | null {\n\t\t\treturn this.internals?.form ?? null\n\t\t}\n\n\t\t/**\n\t\t * Lifecycle method called when properties change\n\t\t */\n\t\tprotected willUpdate(changedProps: PropertyValueMap<any>): void {\n\t\t\tsuper.willUpdate(changedProps)\n\n\t\t\t// Update form value when value changes\n\t\t\tif (changedProps.has('value')) {\n\t\t\t\tthis.internals?.setFormValue(this.value as string | File | FormData | null)\n\t\t\t}\n\n\t\t\t// Update validation state when error or validation message changes\n\t\t\tif (changedProps.has('error') || changedProps.has('validationMessage')) {\n\t\t\t\tif (this.error && this.validationMessage) {\n\t\t\t\t\tthis.internals?.setValidity({ customError: true }, this.validationMessage)\n\t\t\t\t} else {\n\t\t\t\t\tthis.internals?.setValidity({})\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Checks if the field is valid without showing validation UI\n\t\t */\n\t\tcheckValidity(): boolean {\n\t\t\tif (this.disabled) return true\n\n\t\t\tif (this.required && (this.value === '' || this.value === undefined || this.value === null)) {\n\t\t\t\tthis.error = true\n\t\t\t\tthis.validationMessage = 'This field is required'\n\t\t\t\treturn false\n\t\t\t}\n\n\t\t\treturn true\n\t\t}\n\n\t\t/**\n\t\t * Reports validity and shows validation UI if invalid\n\t\t */\n\t\treportValidity(): boolean {\n\t\t\tconst isValid = this.checkValidity()\n\t\t\tif (!isValid) {\n\t\t\t\tthis.internals?.reportValidity()\n\t\t\t}\n\t\t\treturn isValid\n\t\t}\n\n\t\t/**\n\t\t * Sets a custom validation message\n\t\t */\n\t\tsetCustomValidity(message: string): void {\n\t\t\tthis.validationMessage = message\n\t\t\tthis.error = message !== ''\n\t\t\tif (message) {\n\t\t\t\tthis.internals?.setValidity({ customError: true }, message)\n\t\t\t} else {\n\t\t\t\tthis.internals?.setValidity({})\n\t\t\t}\n\t\t}\n\n\t\t/**\n\t\t * Helper method to emit change events\n\t\t */\n\t\temitChange(detail: any): void {\n\t\t\tthis.dispatchEvent(\n\t\t\t\tnew CustomEvent('change', {\n\t\t\t\t\tdetail,\n\t\t\t\t\tbubbles: true,\n\t\t\t\t\tcomposed: true,\n\t\t\t\t}),\n\t\t\t)\n\t\t}\n\t}\n\n\treturn FormFieldMixinClass as Constructor<IFormFieldMixin> & T\n}\n\n/**\n * A convenience function that composes FormFieldMixin with TailwindElement\n * to create a base class for Schmancy form components.\n *\n * @example\n * ```ts\n * class MyInput extends SchmancyFormField(css`...`) {\n * // Your component code here\n * }\n * ```\n */\nexport function SchmancyFormField<T extends CSSResult>(componentStyle?: T) {\n\treturn FormFieldMixin(TailwindElement(componentStyle)) as Constructor<IFormFieldMixin> &\n\t\tConstructor<ITailwindElementMixin> &\n\t\tConstructor<LitElement> &\n\t\tConstructor<IBaseMixin>\n}\n"],"names":["FormFieldMixin","superClass","FormFieldMixinClass","args","super","this","name","value","label","required","disabled","readonly","error","validationMessage","id","Date","now","Math","floor","random","internals","attachInternals","form","changedProps","willUpdate","has","setFormValue","setValidity","customError","checkValidity","isValid","reportValidity","message","detail","dispatchEvent","CustomEvent","bubbles","composed","formAssociated","_i","__decorateClass","property","type","String","prototype","reflect","Boolean","componentStyle","TailwindElement"],"mappings":"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"}
|
package/dist/height-CfECBO2j.js
DELETED
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import { directive as u, PartType as a } from "lit/directive.js";
|
|
2
|
-
import { AsyncDirective as h } from "lit/async-directive.js";
|
|
3
|
-
import { Subject as l, fromEvent as o, merge as p } from "rxjs";
|
|
4
|
-
import { takeUntil as r, debounceTime as d } from "rxjs/operators";
|
|
5
|
-
let i = null, s = null, n = 0;
|
|
6
|
-
function c() {
|
|
7
|
-
if (!i) {
|
|
8
|
-
i = new l();
|
|
9
|
-
const e = o(window, "resize", { passive: !0 }), t = window.visualViewport ? o(window.visualViewport, "resize", { passive: !0 }) : e;
|
|
10
|
-
s = p(e, t).pipe(d(16)).subscribe(() => i.next());
|
|
11
|
-
}
|
|
12
|
-
return i;
|
|
13
|
-
}
|
|
14
|
-
const b = u(class extends h {
|
|
15
|
-
constructor() {
|
|
16
|
-
super(...arguments), this.element = null, this.disconnecting$ = new l();
|
|
17
|
-
}
|
|
18
|
-
updateHeight() {
|
|
19
|
-
if (this.element) {
|
|
20
|
-
const e = (window.visualViewport?.height ?? window.innerHeight) - this.element.getBoundingClientRect().top - (function() {
|
|
21
|
-
const t = getComputedStyle(document.documentElement).getPropertyValue("--schmancy-bottom-offset");
|
|
22
|
-
return t ? parseFloat(t) : 0;
|
|
23
|
-
})();
|
|
24
|
-
this.element.style.height = `${Math.max(0, e)}px`;
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
render() {
|
|
28
|
-
}
|
|
29
|
-
update(e) {
|
|
30
|
-
if (e.type !== a.ELEMENT) throw new Error("fullHeight directive can only be used on elements");
|
|
31
|
-
const t = e.element;
|
|
32
|
-
this.element !== t && (this.element = t, n++, this.updateHeight(), c().pipe(r(this.disconnecting$)).subscribe(() => this.updateHeight()));
|
|
33
|
-
}
|
|
34
|
-
disconnected() {
|
|
35
|
-
this.disconnecting$.next(), n--, n === 0 && s && (s.unsubscribe(), s = null, i = null), this.element = null;
|
|
36
|
-
}
|
|
37
|
-
reconnected() {
|
|
38
|
-
this.element && (n++, this.updateHeight(), c().pipe(r(this.disconnecting$)).subscribe(() => this.updateHeight()));
|
|
39
|
-
}
|
|
40
|
-
});
|
|
41
|
-
export {
|
|
42
|
-
b as f
|
|
43
|
-
};
|
|
44
|
-
//# sourceMappingURL=height-CfECBO2j.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"height-CfECBO2j.js","sources":["../src/directives/height.ts"],"sourcesContent":["import { directive, PartInfo, PartType } from 'lit/directive.js'\nimport { AsyncDirective } from 'lit/async-directive.js'\nimport { Subject, fromEvent, merge } from 'rxjs'\nimport { debounceTime, takeUntil } from 'rxjs/operators'\n\n// Lazy-initialized resize stream (local to this directive)\nlet resize$: Subject<void> | null = null\nlet resizeSub: { unsubscribe: () => void } | null = null\nlet elementCount = 0\n\nfunction getResizeStream(): Subject<void> {\n\tif (!resize$) {\n\t\tresize$ = new Subject<void>()\n\t\tconst windowResize$ = fromEvent(window, 'resize', { passive: true })\n\t\tconst viewportResize$ = window.visualViewport\n\t\t\t? fromEvent(window.visualViewport, 'resize', { passive: true })\n\t\t\t: windowResize$\n\n\t\tresizeSub = merge(windowResize$, viewportResize$)\n\t\t\t.pipe(debounceTime(16))\n\t\t\t.subscribe(() => resize$!.next())\n\t}\n\treturn resize$\n}\n\nfunction cleanup() {\n\tif (elementCount === 0 && resizeSub) {\n\t\tresizeSub.unsubscribe()\n\t\tresizeSub = null\n\t\tresize$ = null\n\t}\n}\n\n/**\n * Get bottom offset from CSS custom property.\n */\nfunction getBottomOffset(): number {\n\tconst value = getComputedStyle(document.documentElement).getPropertyValue('--schmancy-bottom-offset')\n\treturn value ? parseFloat(value) : 0\n}\n\n/**\n * Directive that sets element height to fill remaining viewport space.\n * Uses visualViewport for accurate mobile height (handles keyboard).\n *\n * @example\n * html`<div ${fullHeight()}>Content</div>`\n */\nclass FullHeight extends AsyncDirective {\n\tprivate element: HTMLElement | null = null\n\tprivate disconnecting$ = new Subject<void>()\n\n\tprivate updateHeight() {\n\t\tif (this.element) {\n\t\t\tconst viewportHeight = window.visualViewport?.height ?? window.innerHeight\n\t\t\tconst topOffset = this.element.getBoundingClientRect().top\n\t\t\tconst height = viewportHeight - topOffset - getBottomOffset()\n\t\t\tthis.element.style.height = `${Math.max(0, height)}px`\n\t\t}\n\t}\n\n\trender() {\n\t\treturn\n\t}\n\n\tupdate(part: PartInfo) {\n\t\tif (part.type !== PartType.ELEMENT) {\n\t\t\tthrow new Error('fullHeight directive can only be used on elements')\n\t\t}\n\t\tconst el = (part as any).element as HTMLElement\n\t\tif (this.element !== el) {\n\t\t\tthis.element = el\n\t\t\telementCount++\n\t\t\tthis.updateHeight()\n\t\t\tgetResizeStream()\n\t\t\t\t.pipe(takeUntil(this.disconnecting$))\n\t\t\t\t.subscribe(() => this.updateHeight())\n\t\t}\n\t}\n\n\tdisconnected() {\n\t\tthis.disconnecting$.next()\n\t\telementCount--\n\t\tcleanup()\n\t\tthis.element = null\n\t}\n\n\treconnected() {\n\t\tif (this.element) {\n\t\t\telementCount++\n\t\t\tthis.updateHeight()\n\t\t\tgetResizeStream()\n\t\t\t\t.pipe(takeUntil(this.disconnecting$))\n\t\t\t\t.subscribe(() => this.updateHeight())\n\t\t}\n\t}\n}\n\nexport const fullHeight = directive(FullHeight)\n"],"names":["resize$","resizeSub","elementCount","getResizeStream","Subject","windowResize$","fromEvent","window","passive","viewportResize$","visualViewport","merge","pipe","debounceTime","subscribe","next","fullHeight","directive","AsyncDirective","constructor","super","arguments","this","element","disconnecting$","updateHeight","height","innerHeight","getBoundingClientRect","top","value","getComputedStyle","document","documentElement","getPropertyValue","parseFloat","style","Math","max","render","part","type","PartType","ELEMENT","Error","el","takeUntil","disconnected","unsubscribe","reconnected"],"mappings":";;;;AAMA,IAAIA,IAAgC,MAChCC,IAAgD,MAChDC,IAAe;AAEnB,SAASC;AACR,MAAA,CAAKH,GAAS;AACbA,IAAAA,IAAU,IAAII;AACd,UAAMC,IAAgBC,EAAUC,QAAQ,UAAU,EAAEC,SAAAA,GAAS,CAAA,GACvDC,IAAkBF,OAAOG,iBAC5BJ,EAAUC,OAAOG,gBAAgB,UAAU,EAAEF,SAAAA,GAAS,CAAA,IACtDH;AAEHJ,IAAAA,IAAYU,EAAMN,GAAeI,CAAAA,EAC/BG,KAAKC,EAAa,EAAA,CAAA,EAClBC,UAAU,MAAMd,EAASe,KAAAA,CAAAA;AAAAA,EAC5B;AACA,SAAOf;AACR;AA2EO,MAAMgB,IAAaC,EAlD1B,cAAyBC,EAAAA;AAAAA,EAAzB,cAAAC;AAAAC,UAAAA,GAAAC,YACCC,KAAQC,UAA8B,MACtCD,KAAQE,iBAAiB,IAAIpB;AAAAA,EAAc;AAAA,EAEnC,eAAAqB;AACP,QAAIH,KAAKC,SAAS;AACjB,YAEMG,KAFiBnB,OAAOG,gBAAgBgB,UAAUnB,OAAOoB,eAC7CL,KAAKC,QAAQK,sBAAAA,EAAwBC,OAnB1D,WAAA;AACC,cAAMC,IAAQC,iBAAiBC,SAASC,iBAAiBC,iBAAiB,0BAAA;AAC1E,eAAOJ,IAAQK,WAAWL,KAAS;AAAA,MACpC;AAkBGR,WAAKC,QAAQa,MAAMV,SAAS,GAAGW,KAAKC,IAAI,GAAGZ;IAC5C;AAAA,EACD;AAAA,EAEA,SAAAa;AAAAA,EAEA;AAAA,EAEA,OAAOC,GAAAA;AACN,QAAIA,EAAKC,SAASC,EAASC,QAC1B,OAAM,IAAIC,MAAM,mDAAA;AAEjB,UAAMC,IAAML,EAAajB;AACrBD,SAAKC,YAAYsB,MACpBvB,KAAKC,UAAUsB,GACf3C,KACAoB,KAAKG,aAAAA,GACLtB,IACES,KAAKkC,EAAUxB,KAAKE,cAAAA,CAAAA,EACpBV,UAAU,MAAMQ,KAAKG,aAAAA,CAAAA;AAAAA,EAEzB;AAAA,EAEA,eAAAsB;AACCzB,SAAKE,eAAeT,KAAAA,GACpBb,KAxDGA,MAAiB,KAAKD,MACzBA,EAAU+C,YAAAA,GACV/C,IAAY,MACZD,IAAU,OAuDVsB,KAAKC,UAAU;AAAA,EAChB;AAAA,EAEA,cAAA0B;AACK3B,SAAKC,YACRrB,KACAoB,KAAKG,aAAAA,GACLtB,EAAAA,EACES,KAAKkC,EAAUxB,KAAKE,iBACpBV,UAAU,MAAMQ,KAAKG,aAAAA,CAAAA;AAAAA,EAEzB;AAAA,CAAA;"}
|
package/dist/height-Z70qJYJK.cjs
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";const l=require("lit/directive.js"),h=require("lit/async-directive.js"),i=require("rxjs"),c=require("rxjs/operators");let n=null,r=null,s=0;function o(){if(!n){n=new i.Subject;const u=i.fromEvent(window,"resize",{passive:!0}),e=window.visualViewport?i.fromEvent(window.visualViewport,"resize",{passive:!0}):u;r=i.merge(u,e).pipe(c.debounceTime(16)).subscribe(()=>n.next())}return n}class d extends h.AsyncDirective{constructor(){super(...arguments),this.element=null,this.disconnecting$=new i.Subject}updateHeight(){if(this.element){const e=(window.visualViewport?.height??window.innerHeight)-this.element.getBoundingClientRect().top-(function(){const t=getComputedStyle(document.documentElement).getPropertyValue("--schmancy-bottom-offset");return t?parseFloat(t):0})();this.element.style.height=`${Math.max(0,e)}px`}}render(){}update(e){if(e.type!==l.PartType.ELEMENT)throw new Error("fullHeight directive can only be used on elements");const t=e.element;this.element!==t&&(this.element=t,s++,this.updateHeight(),o().pipe(c.takeUntil(this.disconnecting$)).subscribe(()=>this.updateHeight()))}disconnected(){this.disconnecting$.next(),s--,s===0&&r&&(r.unsubscribe(),r=null,n=null),this.element=null}reconnected(){this.element&&(s++,this.updateHeight(),o().pipe(c.takeUntil(this.disconnecting$)).subscribe(()=>this.updateHeight()))}}const p=l.directive(d);exports.fullHeight=p;
|
|
2
|
-
//# sourceMappingURL=height-Z70qJYJK.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"height-Z70qJYJK.cjs","sources":["../src/directives/height.ts"],"sourcesContent":["import { directive, PartInfo, PartType } from 'lit/directive.js'\nimport { AsyncDirective } from 'lit/async-directive.js'\nimport { Subject, fromEvent, merge } from 'rxjs'\nimport { debounceTime, takeUntil } from 'rxjs/operators'\n\n// Lazy-initialized resize stream (local to this directive)\nlet resize$: Subject<void> | null = null\nlet resizeSub: { unsubscribe: () => void } | null = null\nlet elementCount = 0\n\nfunction getResizeStream(): Subject<void> {\n\tif (!resize$) {\n\t\tresize$ = new Subject<void>()\n\t\tconst windowResize$ = fromEvent(window, 'resize', { passive: true })\n\t\tconst viewportResize$ = window.visualViewport\n\t\t\t? fromEvent(window.visualViewport, 'resize', { passive: true })\n\t\t\t: windowResize$\n\n\t\tresizeSub = merge(windowResize$, viewportResize$)\n\t\t\t.pipe(debounceTime(16))\n\t\t\t.subscribe(() => resize$!.next())\n\t}\n\treturn resize$\n}\n\nfunction cleanup() {\n\tif (elementCount === 0 && resizeSub) {\n\t\tresizeSub.unsubscribe()\n\t\tresizeSub = null\n\t\tresize$ = null\n\t}\n}\n\n/**\n * Get bottom offset from CSS custom property.\n */\nfunction getBottomOffset(): number {\n\tconst value = getComputedStyle(document.documentElement).getPropertyValue('--schmancy-bottom-offset')\n\treturn value ? parseFloat(value) : 0\n}\n\n/**\n * Directive that sets element height to fill remaining viewport space.\n * Uses visualViewport for accurate mobile height (handles keyboard).\n *\n * @example\n * html`<div ${fullHeight()}>Content</div>`\n */\nclass FullHeight extends AsyncDirective {\n\tprivate element: HTMLElement | null = null\n\tprivate disconnecting$ = new Subject<void>()\n\n\tprivate updateHeight() {\n\t\tif (this.element) {\n\t\t\tconst viewportHeight = window.visualViewport?.height ?? window.innerHeight\n\t\t\tconst topOffset = this.element.getBoundingClientRect().top\n\t\t\tconst height = viewportHeight - topOffset - getBottomOffset()\n\t\t\tthis.element.style.height = `${Math.max(0, height)}px`\n\t\t}\n\t}\n\n\trender() {\n\t\treturn\n\t}\n\n\tupdate(part: PartInfo) {\n\t\tif (part.type !== PartType.ELEMENT) {\n\t\t\tthrow new Error('fullHeight directive can only be used on elements')\n\t\t}\n\t\tconst el = (part as any).element as HTMLElement\n\t\tif (this.element !== el) {\n\t\t\tthis.element = el\n\t\t\telementCount++\n\t\t\tthis.updateHeight()\n\t\t\tgetResizeStream()\n\t\t\t\t.pipe(takeUntil(this.disconnecting$))\n\t\t\t\t.subscribe(() => this.updateHeight())\n\t\t}\n\t}\n\n\tdisconnected() {\n\t\tthis.disconnecting$.next()\n\t\telementCount--\n\t\tcleanup()\n\t\tthis.element = null\n\t}\n\n\treconnected() {\n\t\tif (this.element) {\n\t\t\telementCount++\n\t\t\tthis.updateHeight()\n\t\t\tgetResizeStream()\n\t\t\t\t.pipe(takeUntil(this.disconnecting$))\n\t\t\t\t.subscribe(() => this.updateHeight())\n\t\t}\n\t}\n}\n\nexport const fullHeight = directive(FullHeight)\n"],"names":["resize$","resizeSub","elementCount","getResizeStream","Subject","windowResize$","fromEvent","window","passive","viewportResize$","visualViewport","merge","pipe","debounceTime","subscribe","next","FullHeight","AsyncDirective","constructor","super","arguments","this","element","disconnecting$","updateHeight","height","innerHeight","getBoundingClientRect","top","value","getComputedStyle","document","documentElement","getPropertyValue","parseFloat","getBottomOffset","style","Math","max","render","part","type","PartType","ELEMENT","Error","el","takeUntil","disconnected","unsubscribe","reconnected","fullHeight","directive"],"mappings":"mIAMA,IAAIA,EAAgC,KAChCC,EAAgD,KAChDC,EAAe,EAEnB,SAASC,GAAAA,CACR,GAAA,CAAKH,EAAS,CACbA,EAAU,IAAII,EAAAA,QACd,MAAMC,EAAgBC,EAAAA,UAAUC,OAAQ,SAAU,CAAEC,QAAAA,KAC9CC,EAAkBF,OAAOG,eAC5BJ,EAAAA,UAAUC,OAAOG,eAAgB,SAAU,CAAEF,QAAAA,EAAS,CAAA,EACtDH,EAEHJ,EAAYU,EAAAA,MAAMN,EAAeI,GAC/BG,KAAKC,EAAAA,aAAa,EAAA,CAAA,EAClBC,UAAU,IAAMd,EAASe,KAAAA,CAAAA,CAC5B,CACA,OAAOf,CACR,CAyBA,MAAMgB,UAAmBC,EAAAA,cAAAA,CAAzB,aAAAC,CAAAC,MAAAA,GAAAC,SAAAA,EACCC,KAAQC,QAA8B,KACtCD,KAAQE,eAAiB,IAAInB,SAAc,CAEnC,cAAAoB,CACP,GAAIH,KAAKC,QAAS,CACjB,MAEMG,GAFiBlB,OAAOG,gBAAgBe,QAAUlB,OAAOmB,aAC7CL,KAAKC,QAAQK,sBAAAA,EAAwBC,KAnB1D,UAAA,CACC,MAAMC,EAAQC,iBAAiBC,SAASC,eAAAA,EAAiBC,iBAAiB,4BAC1E,OAAOJ,EAAQK,WAAWL,CAAAA,EAAS,CACpC,GAiB+CM,EAC5Cd,KAAKC,QAAQc,MAAMX,OAAS,GAAGY,KAAKC,IAAI,EAAGb,MAC5C,CACD,CAEA,QAAAc,CAEA,CAEA,OAAOC,EAAAA,CACN,GAAIA,EAAKC,OAASC,EAAAA,SAASC,QAC1B,MAAM,IAAIC,MAAM,mDAAA,EAEjB,MAAMC,EAAML,EAAalB,QACrBD,KAAKC,UAAYuB,IACpBxB,KAAKC,QAAUuB,EACf3C,IACAmB,KAAKG,aAAAA,EACLrB,EAAAA,EACES,KAAKkC,EAAAA,UAAUzB,KAAKE,iBACpBT,UAAU,IAAMO,KAAKG,aAAAA,CAAAA,EAEzB,CAEA,cAAAuB,CACC1B,KAAKE,eAAeR,OACpBb,IAxDGA,IAAiB,GAAKD,IACzBA,EAAU+C,YAAAA,EACV/C,EAAY,KACZD,EAAU,MAuDVqB,KAAKC,QAAU,IAChB,CAEA,aAAA2B,CACK5B,KAAKC,UACRpB,IACAmB,KAAKG,aAAAA,EACLrB,EAAAA,EACES,KAAKkC,EAAAA,UAAUzB,KAAKE,iBACpBT,UAAU,IAAMO,KAAKG,aAAAA,CAAAA,EAEzB,CAAA,CAGM,MAAM0B,EAAaC,EAAAA,UAAUnC,CAAAA"}
|
package/dist/icon-DHEXr3c-.cjs
DELETED
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
"use strict";const o=require("rxjs"),y=require("rxjs/operators");require("lit/directives/class-map.js"),require("lit/directives/style-map.js");const l=require("lit/decorators.js"),d=require("./tailwind.mixin-Cp4PyXok.cjs"),p=require("lit");var m=Object.defineProperty,g=Object.getOwnPropertyDescriptor,c=(t,i,a,s)=>{for(var n,r=s>1?void 0:s?g(i,a):i,h=t.length-1;h>=0;h--)(n=t[h])&&(r=(s?n(i,a,r):n(r))||r);return s&&r&&m(i,a,r),r};let e=class extends d.TailwindElement(p.css`
|
|
2
|
-
:host {
|
|
3
|
-
--schmancy-icon-size: 24px;
|
|
4
|
-
--schmancy-icon-fill: 0;
|
|
5
|
-
--schmancy-icon-weight: 400;
|
|
6
|
-
--schmancy-icon-grade: 0;
|
|
7
|
-
--schmancy-icon-opsz: 24;
|
|
8
|
-
|
|
9
|
-
display: inline-flex;
|
|
10
|
-
align-items: center;
|
|
11
|
-
justify-content: center;
|
|
12
|
-
width: var(--schmancy-icon-size);
|
|
13
|
-
height: var(--schmancy-icon-size);
|
|
14
|
-
font-size: var(--schmancy-icon-size);
|
|
15
|
-
color: inherit;
|
|
16
|
-
transition: font-variation-settings 0.2s ease;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
.material-symbols {
|
|
20
|
-
font-family: var(--schmancy-icon-font, 'Material Symbols Outlined');
|
|
21
|
-
font-weight: normal;
|
|
22
|
-
font-style: normal;
|
|
23
|
-
line-height: 1;
|
|
24
|
-
letter-spacing: normal;
|
|
25
|
-
text-transform: none;
|
|
26
|
-
display: inline-block;
|
|
27
|
-
white-space: nowrap;
|
|
28
|
-
word-wrap: normal;
|
|
29
|
-
direction: ltr;
|
|
30
|
-
-webkit-font-smoothing: antialiased;
|
|
31
|
-
-webkit-font-feature-settings: 'liga';
|
|
32
|
-
font-feature-settings: 'liga';
|
|
33
|
-
font-variation-settings:
|
|
34
|
-
'FILL' var(--schmancy-icon-fill),
|
|
35
|
-
'wght' var(--schmancy-icon-weight),
|
|
36
|
-
'GRAD' var(--schmancy-icon-grade),
|
|
37
|
-
'opsz' var(--schmancy-icon-opsz);
|
|
38
|
-
width: 100%;
|
|
39
|
-
height: 100%;
|
|
40
|
-
display: flex;
|
|
41
|
-
align-items: center;
|
|
42
|
-
justify-content: center;
|
|
43
|
-
}
|
|
44
|
-
`){constructor(){super(...arguments),this.fill=0,this.weight=400,this.grade=0,this.variant="outlined",this.size="md",this.fill$=new o.BehaviorSubject(this.fill),this.weight$=new o.BehaviorSubject(this.weight),this.grade$=new o.BehaviorSubject(this.grade),this.variant$=new o.BehaviorSubject(this.variant)}static loadFonts(){if(e.fontsLoaded)return;const t=document.createElement("link");t.rel="stylesheet",t.href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&family=Material+Symbols+Rounded:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&family=Material+Symbols+Sharp:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=swap",document.head.appendChild(t),e.fontsLoaded=!0}connectedCallback(){super.connectedCallback(),e.loadFonts(),this.hasAttribute("aria-label")||this.hasAttribute("aria-labelledby")||this.hasAttribute("aria-hidden")||this.hasAttribute("role")||this.setAttribute("aria-hidden","true"),o.combineLatest([this.fill$,this.weight$,this.grade$,this.variant$]).pipe(y.tap(([t,i,a,s])=>{this.style.setProperty("--schmancy-icon-fill",String(t)),this.style.setProperty("--schmancy-icon-weight",String(i)),this.style.setProperty("--schmancy-icon-grade",String(a));const n={outlined:"Material Symbols Outlined",rounded:"Material Symbols Rounded",sharp:"Material Symbols Sharp"}[s]||"Material Symbols Outlined";this.style.setProperty("--schmancy-icon-font",n)}),o.takeUntil(this.disconnecting)).subscribe()}updated(t){super.updated(t),t.has("fill")&&this.fill$.next(this.fill),t.has("weight")&&this.weight$.next(this.weight),t.has("grade")&&this.grade$.next(this.grade),t.has("variant")&&this.variant$.next(this.variant)}render(){const t={outlined:"Material Symbols Outlined",rounded:"Material Symbols Rounded",sharp:"Material Symbols Sharp"}[this.variant]||"Material Symbols Outlined",i=e.tokenSizes[this.size],a=i?.size||this.size,s=i?.opsz||24,n={"--schmancy-icon-fill":this.fill,"--schmancy-icon-weight":this.weight,"--schmancy-icon-grade":this.grade,"--schmancy-icon-font":t,"--schmancy-icon-size":a,"--schmancy-icon-opsz":s};return p.html`
|
|
45
|
-
<span class="material-symbols" part="icon" style=${this.styleMap(n)}>
|
|
46
|
-
<slot></slot>
|
|
47
|
-
</span>
|
|
48
|
-
`}};e.fontsLoaded=!1,e.tokenSizes={xxs:{size:"12px",opsz:20},xs:{size:"16px",opsz:20},sm:{size:"20px",opsz:20},md:{size:"24px",opsz:24},lg:{size:"32px",opsz:40}},c([l.property({type:Number,reflect:!0})],e.prototype,"fill",2),c([l.property({type:Number,reflect:!0})],e.prototype,"weight",2),c([l.property({type:Number,reflect:!0})],e.prototype,"grade",2),c([l.property({type:String,reflect:!0})],e.prototype,"variant",2),c([l.property({type:String,reflect:!0})],e.prototype,"size",2),e=c([l.customElement("schmancy-icon")],e);
|
|
49
|
-
//# sourceMappingURL=icon-DHEXr3c-.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"icon-DHEXr3c-.cjs","sources":["../src/icons/icon.ts"],"sourcesContent":["import { TailwindElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { BehaviorSubject, combineLatest, takeUntil } from 'rxjs'\nimport { tap } from 'rxjs/operators'\n\n/**\n * Icon size tokens - M3 aligned with optical size optimization\n * - xxs: 12px (opsz: 20) - fits in 24px buttons (ultra-compact)\n * - xs: 16px (opsz: 20) - fits in 32px buttons\n * - sm: 20px (opsz: 20) - fits in 40px buttons\n * - md: 24px (opsz: 24) - fits in 48px buttons (default)\n * - lg: 32px (opsz: 40) - fits in 56px buttons\n * - Or custom string like '48px'\n */\nexport type IconSize = 'xxs' | 'xs' | 'sm' | 'md' | 'lg' | string\n\n/**\n * @element schmancy-icon\n * Material Symbols icon component with flexible font variation properties\n *\n * @cssprop --schmancy-icon-size - The size of the icon (default: 24px)\n * @cssprop --schmancy-icon-fill - Fill value for icon (0-1)\n * @cssprop --schmancy-icon-weight - Weight value for icon (100-700)\n * @cssprop --schmancy-icon-grade - Grade value for icon (-50-200)\n * @cssprop --schmancy-icon-opsz - Optical size (default: 24)\n */\n@customElement('schmancy-icon')\nexport default class SchmancyIcon extends TailwindElement(css`\n\t:host {\n\t\t--schmancy-icon-size: 24px;\n\t\t--schmancy-icon-fill: 0;\n\t\t--schmancy-icon-weight: 400;\n\t\t--schmancy-icon-grade: 0;\n\t\t--schmancy-icon-opsz: 24;\n\n\t\tdisplay: inline-flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\twidth: var(--schmancy-icon-size);\n\t\theight: var(--schmancy-icon-size);\n\t\tfont-size: var(--schmancy-icon-size);\n\t\tcolor: inherit;\n\t\ttransition: font-variation-settings 0.2s ease;\n\t}\n\n\t.material-symbols {\n\t\tfont-family: var(--schmancy-icon-font, 'Material Symbols Outlined');\n\t\tfont-weight: normal;\n\t\tfont-style: normal;\n\t\tline-height: 1;\n\t\tletter-spacing: normal;\n\t\ttext-transform: none;\n\t\tdisplay: inline-block;\n\t\twhite-space: nowrap;\n\t\tword-wrap: normal;\n\t\tdirection: ltr;\n\t\t-webkit-font-smoothing: antialiased;\n\t\t-webkit-font-feature-settings: 'liga';\n\t\tfont-feature-settings: 'liga';\n\t\tfont-variation-settings:\n\t\t\t'FILL' var(--schmancy-icon-fill),\n\t\t\t'wght' var(--schmancy-icon-weight),\n\t\t\t'GRAD' var(--schmancy-icon-grade),\n\t\t\t'opsz' var(--schmancy-icon-opsz);\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t}\n`) {\n\t// Static flag to track if Google Fonts have been loaded\n\tprivate static fontsLoaded = false\n\n\t/**\n\t * Load Material Symbols fonts from Google Fonts CDN\n\t */\n\tprivate static loadFonts(): void {\n\t\tif (SchmancyIcon.fontsLoaded) {\n\t\t\treturn\n\t\t}\n\n\t\tconst link = document.createElement('link')\n\t\tlink.rel = 'stylesheet'\n\t\tlink.href = 'https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&family=Material+Symbols+Rounded:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&family=Material+Symbols+Sharp:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=swap'\n\t\tdocument.head.appendChild(link)\n\n\t\tSchmancyIcon.fontsLoaded = true\n\t}\n\n\t/**\n\t * Fill value for the icon (0-1)\n\t * 0 = outlined, 1 = filled\n\t */\n\t@property({ type: Number, reflect: true })\n\tfill = 0\n\n\t/**\n\t * Weight value for the icon (100-700)\n\t * Controls the thickness of the icon strokes\n\t */\n\t@property({ type: Number, reflect: true })\n\tweight = 400\n\n\t/**\n\t * Grade value for the icon (-50-200)\n\t * Adjusts the visual weight/grade\n\t */\n\t@property({ type: Number, reflect: true })\n\tgrade = 0\n\n\t/**\n\t * Icon variant style\n\t * @values outlined | rounded | sharp\n\t */\n\t@property({ type: String, reflect: true })\n\tvariant: 'outlined' | 'rounded' | 'sharp' = 'outlined'\n\n\t/**\n\t * Size of the icon - M3 aligned tokens or custom string\n\t * Tokens: 'xxs' (12px), 'xs' (16px), 'sm' (20px), 'md' (24px), 'lg' (32px)\n\t * Custom: any CSS size string like '48px', '2rem'\n\t */\n\t@property({ type: String, reflect: true })\n\tsize: IconSize = 'md'\n\n\t// M3 aligned token sizes with optimal optical sizes\n\tprivate static readonly tokenSizes: Record<string, { size: string; opsz: number }> = {\n\t\txxs: { size: '12px', opsz: 20 }, // fits in 24px buttons (ultra-compact)\n\t\txs: { size: '16px', opsz: 20 }, // fits in 32px buttons\n\t\tsm: { size: '20px', opsz: 20 }, // fits in 40px buttons\n\t\tmd: { size: '24px', opsz: 24 }, // fits in 48px buttons (default)\n\t\tlg: { size: '32px', opsz: 40 }, // fits in 56px buttons\n\t}\n\n\t// RxJS subjects for reactive property updates\n\tprivate fill$ = new BehaviorSubject(this.fill)\n\tprivate weight$ = new BehaviorSubject(this.weight)\n\tprivate grade$ = new BehaviorSubject(this.grade)\n\tprivate variant$ = new BehaviorSubject(this.variant)\n\n\tconnectedCallback(): void {\n\t\tsuper.connectedCallback()\n\n\t\t// Load Google Fonts if not already loaded\n\t\tSchmancyIcon.loadFonts()\n\n\t\t// Set accessibility attributes for decorative icons\n\t\tif (!this.hasAttribute('aria-label') &&\n\t\t !this.hasAttribute('aria-labelledby') &&\n\t\t !this.hasAttribute('aria-hidden') &&\n\t\t !this.hasAttribute('role')) {\n\t\t\tthis.setAttribute('aria-hidden', 'true')\n\t\t}\n\n\t\t// Setup reactive CSS variable updates\n\t\tcombineLatest([\n\t\t\tthis.fill$,\n\t\t\tthis.weight$,\n\t\t\tthis.grade$,\n\t\t\tthis.variant$\n\t\t]).pipe(\n\t\t\ttap(([fill, weight, grade, variant]) => {\n\t\t\t\t// Update CSS custom properties for smooth transitions\n\t\t\t\tthis.style.setProperty('--schmancy-icon-fill', String(fill))\n\t\t\t\tthis.style.setProperty('--schmancy-icon-weight', String(weight))\n\t\t\t\tthis.style.setProperty('--schmancy-icon-grade', String(grade))\n\n\t\t\t\t// Update font family based on variant\n\t\t\t\tconst fontFamily = {\n\t\t\t\t\t'outlined': 'Material Symbols Outlined',\n\t\t\t\t\t'rounded': 'Material Symbols Rounded',\n\t\t\t\t\t'sharp': 'Material Symbols Sharp'\n\t\t\t\t}[variant] || 'Material Symbols Outlined'\n\n\t\t\t\tthis.style.setProperty('--schmancy-icon-font', fontFamily)\n\t\t\t}),\n\t\t\ttakeUntil(this.disconnecting)\n\t\t).subscribe()\n\t}\n\n\tprotected updated(changedProperties: Map<string | number | symbol, unknown>): void {\n\t\tsuper.updated(changedProperties)\n\n\t\t// Update BehaviorSubjects when properties change\n\t\tif (changedProperties.has('fill')) {\n\t\t\tthis.fill$.next(this.fill)\n\t\t}\n\t\tif (changedProperties.has('weight')) {\n\t\t\tthis.weight$.next(this.weight)\n\t\t}\n\t\tif (changedProperties.has('grade')) {\n\t\t\tthis.grade$.next(this.grade)\n\t\t}\n\t\tif (changedProperties.has('variant')) {\n\t\t\tthis.variant$.next(this.variant)\n\t\t}\n\t}\n\n\tprotected render(): unknown {\n\t\tconst fontFamily = {\n\t\t\t'outlined': 'Material Symbols Outlined',\n\t\t\t'rounded': 'Material Symbols Rounded',\n\t\t\t'sharp': 'Material Symbols Sharp'\n\t\t}[this.variant] || 'Material Symbols Outlined'\n\n\t\t// Resolve size token or use custom value\n\t\tconst sizeConfig = SchmancyIcon.tokenSizes[this.size]\n\t\tconst iconSize = sizeConfig?.size || this.size\n\t\tconst opticalSize = sizeConfig?.opsz || 24\n\n\t\tconst style = {\n\t\t\t'--schmancy-icon-fill': this.fill,\n\t\t\t'--schmancy-icon-weight': this.weight,\n\t\t\t'--schmancy-icon-grade': this.grade,\n\t\t\t'--schmancy-icon-font': fontFamily,\n\t\t\t'--schmancy-icon-size': iconSize,\n\t\t\t'--schmancy-icon-opsz': opticalSize,\n\t\t}\n\n\t\treturn html`\n\t\t\t<span class=\"material-symbols\" part=\"icon\" style=${this.styleMap(style)}>\n\t\t\t\t<slot></slot>\n\t\t\t</span>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-icon': SchmancyIcon\n\t}\n}"],"names":["SchmancyIcon","TailwindElement","css","constructor","super","arguments","this","fill","weight","grade","variant","size","fill$","BehaviorSubject","weight$","grade$","variant$","loadFonts","fontsLoaded","link","document","createElement","rel","href","head","appendChild","connectedCallback","hasAttribute","setAttribute","combineLatest","pipe","tap","style","setProperty","String","fontFamily","outlined","rounded","sharp","takeUntil","disconnecting","subscribe","changedProperties","updated","has","next","render","sizeConfig","tokenSizes","iconSize","opticalSize","opsz","html","styleMap","xxs","xs","sm","md","lg","__decorateClass","property","type","Number","reflect","prototype","customElement"],"mappings":"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"}
|
package/dist/icon-DYpLoegR.js
DELETED
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
import { BehaviorSubject as h, combineLatest as m, takeUntil as p } from "rxjs";
|
|
2
|
-
import { tap as y } from "rxjs/operators";
|
|
3
|
-
import "lit/directives/class-map.js";
|
|
4
|
-
import "lit/directives/style-map.js";
|
|
5
|
-
import { property as l, customElement as d } from "lit/decorators.js";
|
|
6
|
-
import { T as g } from "./tailwind.mixin-Bp_PR6yc.js";
|
|
7
|
-
import { css as f, html as u } from "lit";
|
|
8
|
-
var b = Object.defineProperty, w = Object.getOwnPropertyDescriptor, r = (t, i, a, s) => {
|
|
9
|
-
for (var n, o = s > 1 ? void 0 : s ? w(i, a) : i, c = t.length - 1; c >= 0; c--) (n = t[c]) && (o = (s ? n(i, a, o) : n(o)) || o);
|
|
10
|
-
return s && o && b(i, a, o), o;
|
|
11
|
-
};
|
|
12
|
-
let e = class extends g(f`
|
|
13
|
-
:host {
|
|
14
|
-
--schmancy-icon-size: 24px;
|
|
15
|
-
--schmancy-icon-fill: 0;
|
|
16
|
-
--schmancy-icon-weight: 400;
|
|
17
|
-
--schmancy-icon-grade: 0;
|
|
18
|
-
--schmancy-icon-opsz: 24;
|
|
19
|
-
|
|
20
|
-
display: inline-flex;
|
|
21
|
-
align-items: center;
|
|
22
|
-
justify-content: center;
|
|
23
|
-
width: var(--schmancy-icon-size);
|
|
24
|
-
height: var(--schmancy-icon-size);
|
|
25
|
-
font-size: var(--schmancy-icon-size);
|
|
26
|
-
color: inherit;
|
|
27
|
-
transition: font-variation-settings 0.2s ease;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
.material-symbols {
|
|
31
|
-
font-family: var(--schmancy-icon-font, 'Material Symbols Outlined');
|
|
32
|
-
font-weight: normal;
|
|
33
|
-
font-style: normal;
|
|
34
|
-
line-height: 1;
|
|
35
|
-
letter-spacing: normal;
|
|
36
|
-
text-transform: none;
|
|
37
|
-
display: inline-block;
|
|
38
|
-
white-space: nowrap;
|
|
39
|
-
word-wrap: normal;
|
|
40
|
-
direction: ltr;
|
|
41
|
-
-webkit-font-smoothing: antialiased;
|
|
42
|
-
-webkit-font-feature-settings: 'liga';
|
|
43
|
-
font-feature-settings: 'liga';
|
|
44
|
-
font-variation-settings:
|
|
45
|
-
'FILL' var(--schmancy-icon-fill),
|
|
46
|
-
'wght' var(--schmancy-icon-weight),
|
|
47
|
-
'GRAD' var(--schmancy-icon-grade),
|
|
48
|
-
'opsz' var(--schmancy-icon-opsz);
|
|
49
|
-
width: 100%;
|
|
50
|
-
height: 100%;
|
|
51
|
-
display: flex;
|
|
52
|
-
align-items: center;
|
|
53
|
-
justify-content: center;
|
|
54
|
-
}
|
|
55
|
-
`) {
|
|
56
|
-
constructor() {
|
|
57
|
-
super(...arguments), this.fill = 0, this.weight = 400, this.grade = 0, this.variant = "outlined", this.size = "md", this.fill$ = new h(this.fill), this.weight$ = new h(this.weight), this.grade$ = new h(this.grade), this.variant$ = new h(this.variant);
|
|
58
|
-
}
|
|
59
|
-
static loadFonts() {
|
|
60
|
-
if (e.fontsLoaded) return;
|
|
61
|
-
const t = document.createElement("link");
|
|
62
|
-
t.rel = "stylesheet", t.href = "https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&family=Material+Symbols+Rounded:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&family=Material+Symbols+Sharp:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=swap", document.head.appendChild(t), e.fontsLoaded = !0;
|
|
63
|
-
}
|
|
64
|
-
connectedCallback() {
|
|
65
|
-
super.connectedCallback(), e.loadFonts(), this.hasAttribute("aria-label") || this.hasAttribute("aria-labelledby") || this.hasAttribute("aria-hidden") || this.hasAttribute("role") || this.setAttribute("aria-hidden", "true"), m([this.fill$, this.weight$, this.grade$, this.variant$]).pipe(y(([t, i, a, s]) => {
|
|
66
|
-
this.style.setProperty("--schmancy-icon-fill", String(t)), this.style.setProperty("--schmancy-icon-weight", String(i)), this.style.setProperty("--schmancy-icon-grade", String(a));
|
|
67
|
-
const n = { outlined: "Material Symbols Outlined", rounded: "Material Symbols Rounded", sharp: "Material Symbols Sharp" }[s] || "Material Symbols Outlined";
|
|
68
|
-
this.style.setProperty("--schmancy-icon-font", n);
|
|
69
|
-
}), p(this.disconnecting)).subscribe();
|
|
70
|
-
}
|
|
71
|
-
updated(t) {
|
|
72
|
-
super.updated(t), t.has("fill") && this.fill$.next(this.fill), t.has("weight") && this.weight$.next(this.weight), t.has("grade") && this.grade$.next(this.grade), t.has("variant") && this.variant$.next(this.variant);
|
|
73
|
-
}
|
|
74
|
-
render() {
|
|
75
|
-
const t = { outlined: "Material Symbols Outlined", rounded: "Material Symbols Rounded", sharp: "Material Symbols Sharp" }[this.variant] || "Material Symbols Outlined", i = e.tokenSizes[this.size], a = i?.size || this.size, s = i?.opsz || 24, n = { "--schmancy-icon-fill": this.fill, "--schmancy-icon-weight": this.weight, "--schmancy-icon-grade": this.grade, "--schmancy-icon-font": t, "--schmancy-icon-size": a, "--schmancy-icon-opsz": s };
|
|
76
|
-
return u`
|
|
77
|
-
<span class="material-symbols" part="icon" style=${this.styleMap(n)}>
|
|
78
|
-
<slot></slot>
|
|
79
|
-
</span>
|
|
80
|
-
`;
|
|
81
|
-
}
|
|
82
|
-
};
|
|
83
|
-
e.fontsLoaded = !1, e.tokenSizes = { xxs: { size: "12px", opsz: 20 }, xs: { size: "16px", opsz: 20 }, sm: { size: "20px", opsz: 20 }, md: { size: "24px", opsz: 24 }, lg: { size: "32px", opsz: 40 } }, r([l({ type: Number, reflect: !0 })], e.prototype, "fill", 2), r([l({ type: Number, reflect: !0 })], e.prototype, "weight", 2), r([l({ type: Number, reflect: !0 })], e.prototype, "grade", 2), r([l({ type: String, reflect: !0 })], e.prototype, "variant", 2), r([l({ type: String, reflect: !0 })], e.prototype, "size", 2), e = r([d("schmancy-icon")], e);
|
|
84
|
-
//# sourceMappingURL=icon-DYpLoegR.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"icon-DYpLoegR.js","sources":["../src/icons/icon.ts"],"sourcesContent":["import { TailwindElement } from '@mixins/index'\nimport { css, html } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { BehaviorSubject, combineLatest, takeUntil } from 'rxjs'\nimport { tap } from 'rxjs/operators'\n\n/**\n * Icon size tokens - M3 aligned with optical size optimization\n * - xxs: 12px (opsz: 20) - fits in 24px buttons (ultra-compact)\n * - xs: 16px (opsz: 20) - fits in 32px buttons\n * - sm: 20px (opsz: 20) - fits in 40px buttons\n * - md: 24px (opsz: 24) - fits in 48px buttons (default)\n * - lg: 32px (opsz: 40) - fits in 56px buttons\n * - Or custom string like '48px'\n */\nexport type IconSize = 'xxs' | 'xs' | 'sm' | 'md' | 'lg' | string\n\n/**\n * @element schmancy-icon\n * Material Symbols icon component with flexible font variation properties\n *\n * @cssprop --schmancy-icon-size - The size of the icon (default: 24px)\n * @cssprop --schmancy-icon-fill - Fill value for icon (0-1)\n * @cssprop --schmancy-icon-weight - Weight value for icon (100-700)\n * @cssprop --schmancy-icon-grade - Grade value for icon (-50-200)\n * @cssprop --schmancy-icon-opsz - Optical size (default: 24)\n */\n@customElement('schmancy-icon')\nexport default class SchmancyIcon extends TailwindElement(css`\n\t:host {\n\t\t--schmancy-icon-size: 24px;\n\t\t--schmancy-icon-fill: 0;\n\t\t--schmancy-icon-weight: 400;\n\t\t--schmancy-icon-grade: 0;\n\t\t--schmancy-icon-opsz: 24;\n\n\t\tdisplay: inline-flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\twidth: var(--schmancy-icon-size);\n\t\theight: var(--schmancy-icon-size);\n\t\tfont-size: var(--schmancy-icon-size);\n\t\tcolor: inherit;\n\t\ttransition: font-variation-settings 0.2s ease;\n\t}\n\n\t.material-symbols {\n\t\tfont-family: var(--schmancy-icon-font, 'Material Symbols Outlined');\n\t\tfont-weight: normal;\n\t\tfont-style: normal;\n\t\tline-height: 1;\n\t\tletter-spacing: normal;\n\t\ttext-transform: none;\n\t\tdisplay: inline-block;\n\t\twhite-space: nowrap;\n\t\tword-wrap: normal;\n\t\tdirection: ltr;\n\t\t-webkit-font-smoothing: antialiased;\n\t\t-webkit-font-feature-settings: 'liga';\n\t\tfont-feature-settings: 'liga';\n\t\tfont-variation-settings:\n\t\t\t'FILL' var(--schmancy-icon-fill),\n\t\t\t'wght' var(--schmancy-icon-weight),\n\t\t\t'GRAD' var(--schmancy-icon-grade),\n\t\t\t'opsz' var(--schmancy-icon-opsz);\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t}\n`) {\n\t// Static flag to track if Google Fonts have been loaded\n\tprivate static fontsLoaded = false\n\n\t/**\n\t * Load Material Symbols fonts from Google Fonts CDN\n\t */\n\tprivate static loadFonts(): void {\n\t\tif (SchmancyIcon.fontsLoaded) {\n\t\t\treturn\n\t\t}\n\n\t\tconst link = document.createElement('link')\n\t\tlink.rel = 'stylesheet'\n\t\tlink.href = 'https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&family=Material+Symbols+Rounded:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&family=Material+Symbols+Sharp:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=swap'\n\t\tdocument.head.appendChild(link)\n\n\t\tSchmancyIcon.fontsLoaded = true\n\t}\n\n\t/**\n\t * Fill value for the icon (0-1)\n\t * 0 = outlined, 1 = filled\n\t */\n\t@property({ type: Number, reflect: true })\n\tfill = 0\n\n\t/**\n\t * Weight value for the icon (100-700)\n\t * Controls the thickness of the icon strokes\n\t */\n\t@property({ type: Number, reflect: true })\n\tweight = 400\n\n\t/**\n\t * Grade value for the icon (-50-200)\n\t * Adjusts the visual weight/grade\n\t */\n\t@property({ type: Number, reflect: true })\n\tgrade = 0\n\n\t/**\n\t * Icon variant style\n\t * @values outlined | rounded | sharp\n\t */\n\t@property({ type: String, reflect: true })\n\tvariant: 'outlined' | 'rounded' | 'sharp' = 'outlined'\n\n\t/**\n\t * Size of the icon - M3 aligned tokens or custom string\n\t * Tokens: 'xxs' (12px), 'xs' (16px), 'sm' (20px), 'md' (24px), 'lg' (32px)\n\t * Custom: any CSS size string like '48px', '2rem'\n\t */\n\t@property({ type: String, reflect: true })\n\tsize: IconSize = 'md'\n\n\t// M3 aligned token sizes with optimal optical sizes\n\tprivate static readonly tokenSizes: Record<string, { size: string; opsz: number }> = {\n\t\txxs: { size: '12px', opsz: 20 }, // fits in 24px buttons (ultra-compact)\n\t\txs: { size: '16px', opsz: 20 }, // fits in 32px buttons\n\t\tsm: { size: '20px', opsz: 20 }, // fits in 40px buttons\n\t\tmd: { size: '24px', opsz: 24 }, // fits in 48px buttons (default)\n\t\tlg: { size: '32px', opsz: 40 }, // fits in 56px buttons\n\t}\n\n\t// RxJS subjects for reactive property updates\n\tprivate fill$ = new BehaviorSubject(this.fill)\n\tprivate weight$ = new BehaviorSubject(this.weight)\n\tprivate grade$ = new BehaviorSubject(this.grade)\n\tprivate variant$ = new BehaviorSubject(this.variant)\n\n\tconnectedCallback(): void {\n\t\tsuper.connectedCallback()\n\n\t\t// Load Google Fonts if not already loaded\n\t\tSchmancyIcon.loadFonts()\n\n\t\t// Set accessibility attributes for decorative icons\n\t\tif (!this.hasAttribute('aria-label') &&\n\t\t !this.hasAttribute('aria-labelledby') &&\n\t\t !this.hasAttribute('aria-hidden') &&\n\t\t !this.hasAttribute('role')) {\n\t\t\tthis.setAttribute('aria-hidden', 'true')\n\t\t}\n\n\t\t// Setup reactive CSS variable updates\n\t\tcombineLatest([\n\t\t\tthis.fill$,\n\t\t\tthis.weight$,\n\t\t\tthis.grade$,\n\t\t\tthis.variant$\n\t\t]).pipe(\n\t\t\ttap(([fill, weight, grade, variant]) => {\n\t\t\t\t// Update CSS custom properties for smooth transitions\n\t\t\t\tthis.style.setProperty('--schmancy-icon-fill', String(fill))\n\t\t\t\tthis.style.setProperty('--schmancy-icon-weight', String(weight))\n\t\t\t\tthis.style.setProperty('--schmancy-icon-grade', String(grade))\n\n\t\t\t\t// Update font family based on variant\n\t\t\t\tconst fontFamily = {\n\t\t\t\t\t'outlined': 'Material Symbols Outlined',\n\t\t\t\t\t'rounded': 'Material Symbols Rounded',\n\t\t\t\t\t'sharp': 'Material Symbols Sharp'\n\t\t\t\t}[variant] || 'Material Symbols Outlined'\n\n\t\t\t\tthis.style.setProperty('--schmancy-icon-font', fontFamily)\n\t\t\t}),\n\t\t\ttakeUntil(this.disconnecting)\n\t\t).subscribe()\n\t}\n\n\tprotected updated(changedProperties: Map<string | number | symbol, unknown>): void {\n\t\tsuper.updated(changedProperties)\n\n\t\t// Update BehaviorSubjects when properties change\n\t\tif (changedProperties.has('fill')) {\n\t\t\tthis.fill$.next(this.fill)\n\t\t}\n\t\tif (changedProperties.has('weight')) {\n\t\t\tthis.weight$.next(this.weight)\n\t\t}\n\t\tif (changedProperties.has('grade')) {\n\t\t\tthis.grade$.next(this.grade)\n\t\t}\n\t\tif (changedProperties.has('variant')) {\n\t\t\tthis.variant$.next(this.variant)\n\t\t}\n\t}\n\n\tprotected render(): unknown {\n\t\tconst fontFamily = {\n\t\t\t'outlined': 'Material Symbols Outlined',\n\t\t\t'rounded': 'Material Symbols Rounded',\n\t\t\t'sharp': 'Material Symbols Sharp'\n\t\t}[this.variant] || 'Material Symbols Outlined'\n\n\t\t// Resolve size token or use custom value\n\t\tconst sizeConfig = SchmancyIcon.tokenSizes[this.size]\n\t\tconst iconSize = sizeConfig?.size || this.size\n\t\tconst opticalSize = sizeConfig?.opsz || 24\n\n\t\tconst style = {\n\t\t\t'--schmancy-icon-fill': this.fill,\n\t\t\t'--schmancy-icon-weight': this.weight,\n\t\t\t'--schmancy-icon-grade': this.grade,\n\t\t\t'--schmancy-icon-font': fontFamily,\n\t\t\t'--schmancy-icon-size': iconSize,\n\t\t\t'--schmancy-icon-opsz': opticalSize,\n\t\t}\n\n\t\treturn html`\n\t\t\t<span class=\"material-symbols\" part=\"icon\" style=${this.styleMap(style)}>\n\t\t\t\t<slot></slot>\n\t\t\t</span>\n\t\t`\n\t}\n}\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'schmancy-icon': SchmancyIcon\n\t}\n}"],"names":["SchmancyIcon","TailwindElement","css","constructor","super","arguments","this","fill","weight","grade","variant","size","fill$","BehaviorSubject","weight$","grade$","variant$","loadFonts","fontsLoaded","link","document","createElement","rel","href","head","appendChild","connectedCallback","hasAttribute","setAttribute","combineLatest","pipe","tap","style","setProperty","String","fontFamily","outlined","rounded","sharp","takeUntil","disconnecting","subscribe","changedProperties","updated","has","next","render","sizeConfig","tokenSizes","iconSize","opticalSize","opsz","html","styleMap","xxs","xs","sm","md","lg","__decorateClass","property","type","Number","reflect","prototype","customElement"],"mappings":"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"}
|