@warp-ds/elements 2.2.0-next.2 → 2.2.0-next.20
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 +228 -28
- package/dist/.storybook/utilities.d.ts +28 -0
- package/dist/.storybook/utilities.js +52 -0
- package/dist/api.js +1 -49
- package/dist/api.js.map +4 -4
- package/dist/custom-elements.json +7005 -0
- package/dist/index.d.ts +1826 -18
- package/dist/packages/affix/affix.stories.d.ts +10 -0
- package/dist/packages/affix/affix.stories.js +25 -0
- package/dist/packages/affix/affix.test.d.ts +1 -0
- package/dist/packages/affix/affix.test.js +9 -0
- package/dist/packages/affix/index.d.ts +47 -24
- package/dist/packages/affix/index.js +2448 -2240
- package/dist/packages/affix/index.js.map +4 -4
- package/dist/packages/affix/react.d.ts +2 -0
- package/dist/packages/affix/react.js +8 -0
- package/dist/packages/affix/styles.d.ts +1 -0
- package/dist/packages/affix/styles.js +2 -0
- package/dist/packages/alert/alert.stories.d.ts +15 -0
- package/dist/packages/alert/alert.stories.js +68 -0
- package/dist/packages/alert/alert.test.d.ts +1 -0
- package/dist/packages/alert/alert.test.js +16 -0
- package/dist/packages/alert/index.d.ts +22 -17
- package/dist/packages/alert/index.js +2452 -2446
- package/dist/packages/alert/index.js.map +4 -4
- package/dist/packages/alert/react.d.ts +2 -0
- package/dist/packages/alert/react.js +8 -0
- package/dist/packages/alert/styles.d.ts +1 -0
- package/dist/packages/alert/styles.js +2 -0
- package/dist/packages/attention/attention.stories.d.ts +15 -0
- package/dist/packages/attention/attention.stories.js +188 -0
- package/dist/packages/attention/attention.test.d.ts +1 -0
- package/dist/packages/attention/attention.test.js +11 -0
- package/dist/packages/attention/index.d.ts +62 -90
- package/dist/packages/attention/index.js +3360 -3984
- package/dist/packages/attention/index.js.map +4 -4
- package/dist/packages/attention/layout-styles.d.ts +1 -0
- package/dist/packages/attention/layout-styles.js +905 -0
- package/dist/packages/attention/locales/da/messages.mjs +1 -0
- package/dist/packages/attention/locales/en/messages.mjs +1 -0
- package/dist/packages/attention/locales/fi/messages.mjs +1 -0
- package/dist/packages/attention/locales/nb/messages.mjs +1 -0
- package/dist/packages/attention/locales/sv/messages.mjs +1 -0
- package/dist/packages/attention/react.d.ts +1 -0
- package/dist/packages/attention/react.js +9 -0
- package/dist/packages/attention/styles.d.ts +1 -0
- package/dist/packages/attention/styles.js +2 -0
- package/dist/packages/badge/badge.stories.d.ts +17 -0
- package/dist/packages/badge/badge.stories.js +68 -0
- package/dist/packages/badge/badge.test.d.ts +1 -0
- package/dist/packages/badge/badge.test.js +9 -0
- package/dist/packages/badge/index.d.ts +12 -11
- package/dist/packages/badge/index.js +2441 -300
- package/dist/packages/badge/index.js.map +4 -4
- package/dist/packages/badge/react.d.ts +2 -0
- package/dist/packages/badge/react.js +8 -0
- package/dist/packages/badge/styles.d.ts +1 -0
- package/dist/packages/badge/styles.js +2 -0
- package/dist/packages/box/box.stories.d.ts +14 -0
- package/dist/packages/box/box.stories.js +59 -0
- package/dist/packages/box/box.test.d.ts +1 -0
- package/dist/packages/box/box.test.js +9 -0
- package/dist/packages/box/index.d.ts +17 -20
- package/dist/packages/box/index.js +2443 -299
- package/dist/packages/box/index.js.map +4 -4
- package/dist/packages/box/react.d.ts +2 -0
- package/dist/packages/box/react.js +8 -0
- package/dist/packages/box/slot.test.d.ts +1 -0
- package/dist/packages/box/slot.test.js +9 -0
- package/dist/packages/box/styles.d.ts +1 -0
- package/dist/packages/box/styles.js +2 -0
- package/dist/packages/breadcrumbs/breadcrumbs.stories.d.ts +12 -0
- package/dist/packages/breadcrumbs/breadcrumbs.stories.js +60 -0
- package/dist/packages/breadcrumbs/breadcrumbs.test.d.ts +1 -0
- package/dist/packages/breadcrumbs/breadcrumbs.test.js +16 -0
- package/dist/packages/breadcrumbs/index.d.ts +19 -16
- package/dist/packages/breadcrumbs/index.js +2402 -2051
- package/dist/packages/breadcrumbs/index.js.map +4 -4
- package/dist/packages/breadcrumbs/locales/da/messages.mjs +1 -0
- package/dist/packages/breadcrumbs/locales/en/messages.mjs +1 -0
- package/dist/packages/breadcrumbs/locales/fi/messages.mjs +1 -0
- package/dist/packages/breadcrumbs/locales/nb/messages.mjs +1 -0
- package/dist/packages/breadcrumbs/locales/sv/messages.mjs +1 -0
- package/dist/packages/breadcrumbs/react.d.ts +2 -0
- package/dist/packages/breadcrumbs/react.js +8 -0
- package/dist/packages/breadcrumbs/styles.d.ts +1 -0
- package/dist/packages/breadcrumbs/styles.js +2 -0
- package/dist/packages/button/button.stories.d.ts +21 -0
- package/dist/packages/button/button.stories.js +119 -0
- package/dist/packages/button/button.test.d.ts +1 -0
- package/dist/packages/button/button.test.js +25 -0
- package/dist/packages/button/index.d.ts +106 -56
- package/dist/packages/button/index.js +2618 -2130
- package/dist/packages/button/index.js.map +4 -4
- package/dist/packages/button/locales/da/messages.mjs +1 -0
- package/dist/packages/button/locales/en/messages.mjs +1 -0
- package/dist/packages/button/locales/fi/messages.mjs +1 -0
- package/dist/packages/button/locales/nb/messages.mjs +1 -0
- package/dist/packages/button/locales/sv/messages.mjs +1 -0
- package/dist/packages/button/react.d.ts +2 -0
- package/dist/packages/button/react.js +8 -0
- package/dist/packages/button/styles.d.ts +1 -0
- package/dist/packages/button/styles.js +2 -0
- package/dist/packages/card/card.stories.d.ts +15 -0
- package/dist/packages/card/card.stories.js +82 -0
- package/dist/packages/card/card.test.d.ts +1 -0
- package/dist/packages/card/card.test.js +9 -0
- package/dist/packages/card/index.d.ts +28 -16
- package/dist/packages/card/index.js +2403 -2067
- package/dist/packages/card/index.js.map +4 -4
- package/dist/packages/card/locales/da/messages.mjs +1 -0
- package/dist/packages/card/locales/en/messages.mjs +1 -0
- package/dist/packages/card/locales/fi/messages.mjs +1 -0
- package/dist/packages/card/locales/nb/messages.mjs +1 -0
- package/dist/packages/card/locales/sv/messages.mjs +1 -0
- package/dist/packages/card/react.d.ts +2 -0
- package/dist/packages/card/react.js +8 -0
- package/dist/packages/card/styles.d.ts +1 -0
- package/dist/packages/card/styles.js +2 -0
- package/dist/packages/combobox/combobox.stories.d.ts +14 -0
- package/dist/packages/combobox/combobox.stories.js +95 -0
- package/dist/packages/combobox/index.d.ts +95 -0
- package/dist/packages/combobox/index.js +2492 -0
- package/dist/packages/combobox/index.js.map +7 -0
- package/dist/packages/combobox/locales/da/messages.d.mts +1 -0
- package/dist/packages/combobox/locales/da/messages.mjs +1 -0
- package/dist/packages/combobox/locales/en/messages.d.mts +1 -0
- package/dist/packages/combobox/locales/en/messages.mjs +1 -0
- package/dist/packages/combobox/locales/fi/messages.d.mts +1 -0
- package/dist/packages/combobox/locales/fi/messages.mjs +1 -0
- package/dist/packages/combobox/locales/nb/messages.d.mts +1 -0
- package/dist/packages/combobox/locales/nb/messages.mjs +1 -0
- package/dist/packages/combobox/locales/sv/messages.d.mts +1 -0
- package/dist/packages/combobox/locales/sv/messages.mjs +1 -0
- package/dist/packages/combobox/styles.d.ts +1 -0
- package/dist/packages/combobox/styles.js +2 -0
- package/dist/packages/datepicker/DatePicker.test.d.ts +1 -0
- package/dist/packages/datepicker/DatePicker.test.js +68 -0
- package/dist/packages/datepicker/datepicker.d.ts +102 -0
- package/dist/packages/datepicker/datepicker.js +2785 -0
- package/dist/packages/datepicker/datepicker.js.map +7 -0
- package/dist/packages/datepicker/datepicker.stories.d.ts +12 -0
- package/dist/packages/datepicker/datepicker.stories.js +51 -0
- package/dist/packages/datepicker/datepicker.test.d.ts +2 -0
- package/dist/packages/datepicker/datepicker.test.js +62 -0
- package/dist/packages/datepicker/index.d.ts +1 -0
- package/dist/packages/datepicker/index.js +2785 -0
- package/dist/packages/datepicker/index.js.map +7 -0
- package/dist/packages/datepicker/locales/da/messages.d.mts +1 -0
- package/dist/packages/datepicker/locales/da/messages.mjs +1 -0
- package/dist/packages/datepicker/locales/en/messages.d.mts +1 -0
- package/dist/packages/datepicker/locales/en/messages.mjs +1 -0
- package/dist/packages/datepicker/locales/fi/messages.d.mts +1 -0
- package/dist/packages/datepicker/locales/fi/messages.mjs +1 -0
- package/dist/packages/datepicker/locales/nb/messages.d.mts +1 -0
- package/dist/packages/datepicker/locales/nb/messages.mjs +1 -0
- package/dist/packages/datepicker/locales/sv/messages.d.mts +1 -0
- package/dist/packages/datepicker/locales/sv/messages.mjs +1 -0
- package/dist/packages/datepicker/react.d.ts +2 -0
- package/dist/packages/datepicker/react.js +8 -0
- package/dist/packages/datepicker/styles/w-datepicker-calendar.styles.d.ts +1 -0
- package/dist/packages/datepicker/styles/w-datepicker-calendar.styles.js +15 -0
- package/dist/packages/datepicker/styles/w-datepicker-day.styles.d.ts +1 -0
- package/dist/packages/datepicker/styles/w-datepicker-day.styles.js +64 -0
- package/dist/packages/datepicker/styles/w-datepicker-month.styles.d.ts +1 -0
- package/dist/packages/datepicker/styles/w-datepicker-month.styles.js +72 -0
- package/dist/packages/datepicker/styles/w-datepicker.styles.d.ts +1 -0
- package/dist/packages/datepicker/styles/w-datepicker.styles.js +101 -0
- package/dist/packages/datepicker/utils.d.ts +13 -0
- package/dist/packages/datepicker/utils.js +28 -0
- package/dist/packages/dead-toggle/dead-toggle.stories.d.ts +10 -0
- package/dist/packages/dead-toggle/dead-toggle.stories.js +23 -0
- package/dist/packages/dead-toggle/dead-toggle.test.d.ts +1 -0
- package/dist/packages/dead-toggle/dead-toggle.test.js +9 -0
- package/dist/packages/dead-toggle/index.d.ts +16 -0
- package/dist/packages/dead-toggle/index.js +2487 -0
- package/dist/packages/dead-toggle/index.js.map +7 -0
- package/dist/packages/dead-toggle/react.d.ts +2 -0
- package/dist/packages/dead-toggle/react.js +8 -0
- package/dist/packages/expandable/expandable.stories.d.ts +19 -0
- package/dist/packages/expandable/expandable.stories.js +133 -0
- package/dist/packages/expandable/expandable.test.d.ts +1 -0
- package/dist/packages/expandable/expandable.test.js +24 -0
- package/dist/packages/expandable/index.d.ts +52 -50
- package/dist/packages/expandable/index.js +2424 -2286
- package/dist/packages/expandable/index.js.map +4 -4
- package/dist/packages/expandable/react.d.ts +2 -0
- package/dist/packages/expandable/react.js +8 -0
- package/dist/packages/expandable/styles.d.ts +1 -0
- package/dist/packages/expandable/styles.js +2 -0
- package/dist/packages/i18n.js +44 -0
- package/dist/packages/link/index.d.ts +34 -0
- package/dist/packages/link/index.js +2646 -0
- package/dist/packages/link/index.js.map +7 -0
- package/dist/packages/link/link.stories.d.ts +20 -0
- package/dist/packages/link/link.stories.js +121 -0
- package/dist/packages/link/link.test.d.ts +1 -0
- package/dist/packages/link/link.test.js +9 -0
- package/dist/packages/link/react.d.ts +2 -0
- package/dist/packages/link/react.js +8 -0
- package/dist/packages/link/styles.d.ts +1 -0
- package/dist/packages/link/styles.js +200 -0
- package/dist/packages/modal/index.d.ts +4 -5
- package/dist/packages/modal/index.js +2649 -2575
- package/dist/packages/modal/index.js.map +4 -4
- package/dist/packages/modal/locales/da/messages.mjs +1 -0
- package/dist/packages/modal/locales/en/messages.mjs +1 -0
- package/dist/packages/modal/locales/fi/messages.mjs +1 -0
- package/dist/packages/modal/locales/nb/messages.mjs +1 -0
- package/dist/packages/modal/locales/sv/messages.mjs +1 -0
- package/dist/packages/modal/modal-footer.d.ts +13 -11
- package/dist/packages/modal/modal-footer.js +2460 -0
- package/dist/packages/modal/modal-footer.js.map +7 -0
- package/dist/packages/modal/modal-header.d.ts +25 -31
- package/dist/packages/modal/modal-header.js +2584 -0
- package/dist/packages/modal/modal-header.js.map +7 -0
- package/dist/packages/modal/modal-main.d.ts +27 -31
- package/dist/packages/modal/modal-main.js +2572 -0
- package/dist/packages/modal/modal-main.js.map +7 -0
- package/dist/packages/modal/modal.stories.d.ts +19 -0
- package/dist/packages/modal/modal.stories.js +160 -0
- package/dist/packages/modal/react.d.ts +4 -0
- package/dist/packages/modal/react.js +18 -0
- package/dist/packages/modal/util.d.ts +7 -17
- package/dist/packages/modal/util.js +21 -0
- package/dist/packages/pageindicator/index.d.ts +10 -0
- package/dist/packages/pageindicator/index.js +32 -0
- package/dist/packages/pageindicator/index.js.map +7 -0
- package/dist/packages/pageindicator/pageindicator.stories.d.ts +32 -0
- package/dist/packages/pageindicator/pageindicator.stories.js +71 -0
- package/dist/packages/pageindicator/react.d.ts +2 -0
- package/dist/packages/pageindicator/react.js +8 -0
- package/dist/packages/pageindicator/style.d.ts +1 -0
- package/dist/packages/pageindicator/style.js +26 -0
- package/dist/packages/pagination/index.d.ts +32 -0
- package/dist/packages/pagination/index.js +2494 -0
- package/dist/packages/pagination/index.js.map +7 -0
- package/dist/packages/pagination/locales/da/messages.d.mts +1 -0
- package/dist/packages/pagination/locales/da/messages.mjs +1 -0
- package/dist/packages/pagination/locales/en/messages.d.mts +1 -0
- package/dist/packages/pagination/locales/en/messages.mjs +1 -0
- package/dist/packages/pagination/locales/fi/messages.d.mts +1 -0
- package/dist/packages/pagination/locales/fi/messages.mjs +1 -0
- package/dist/packages/pagination/locales/nb/messages.d.mts +1 -0
- package/dist/packages/pagination/locales/nb/messages.mjs +1 -0
- package/dist/packages/pagination/locales/sv/messages.d.mts +1 -0
- package/dist/packages/pagination/locales/sv/messages.mjs +1 -0
- package/dist/packages/pagination/pagination.stories.d.ts +14 -0
- package/dist/packages/pagination/pagination.stories.js +56 -0
- package/dist/packages/pagination/pagination.test.d.ts +1 -0
- package/dist/packages/pagination/pagination.test.js +76 -0
- package/dist/packages/pagination/react.d.ts +2 -0
- package/dist/packages/pagination/react.js +8 -0
- package/dist/packages/pagination/styles.d.ts +1 -0
- package/dist/packages/pagination/styles.js +2 -0
- package/dist/packages/pill/index.d.ts +39 -23
- package/dist/packages/pill/index.js +2408 -2175
- package/dist/packages/pill/index.js.map +4 -4
- package/dist/packages/pill/locales/da/messages.mjs +1 -0
- package/dist/packages/pill/locales/en/messages.mjs +1 -0
- package/dist/packages/pill/locales/fi/messages.mjs +1 -0
- package/dist/packages/pill/locales/nb/messages.mjs +1 -0
- package/dist/packages/pill/locales/sv/messages.mjs +1 -0
- package/dist/packages/pill/pill.stories.d.ts +12 -0
- package/dist/packages/pill/pill.stories.js +33 -0
- package/dist/packages/pill/pill.test.d.ts +1 -0
- package/dist/packages/pill/pill.test.js +23 -0
- package/dist/packages/pill/styles.d.ts +1 -0
- package/dist/packages/pill/styles.js +2 -0
- package/dist/packages/rip-and-tear-checkbox/checkbox.d.ts +64 -0
- package/dist/packages/rip-and-tear-checkbox/checkbox.js +160 -0
- package/dist/packages/rip-and-tear-checkbox/checkbox.js.map +7 -0
- package/dist/packages/rip-and-tear-checkbox/index.d.ts +1 -0
- package/dist/packages/rip-and-tear-checkbox/index.js +160 -0
- package/dist/packages/rip-and-tear-checkbox/index.js.map +7 -0
- package/dist/packages/rip-and-tear-checkbox/styles.d.ts +1 -0
- package/dist/packages/rip-and-tear-checkbox/styles.js +116 -0
- package/dist/packages/rip-and-tear-radio/base-element.d.ts +46 -0
- package/dist/packages/rip-and-tear-radio/base-element.js +100 -0
- package/dist/packages/rip-and-tear-radio/custom-error-validator.d.ts +6 -0
- package/dist/packages/rip-and-tear-radio/custom-error-validator.js +22 -0
- package/dist/packages/rip-and-tear-radio/form-associated-element.d.ts +103 -0
- package/dist/packages/rip-and-tear-radio/form-associated-element.js +282 -0
- package/dist/packages/rip-and-tear-radio/host-styles.d.ts +1 -0
- package/dist/packages/rip-and-tear-radio/host-styles.js +12 -0
- package/dist/packages/rip-and-tear-radio/index.d.ts +1 -0
- package/dist/packages/rip-and-tear-radio/index.js +270 -0
- package/dist/packages/rip-and-tear-radio/index.js.map +7 -0
- package/dist/packages/rip-and-tear-radio/invalid.d.ts +8 -0
- package/dist/packages/rip-and-tear-radio/invalid.js +5 -0
- package/dist/packages/rip-and-tear-radio/math.d.ts +1 -0
- package/dist/packages/rip-and-tear-radio/math.js +4 -0
- package/dist/packages/rip-and-tear-radio/radio-group-styles.d.ts +1 -0
- package/dist/packages/rip-and-tear-radio/radio-group-styles.js +60 -0
- package/dist/packages/rip-and-tear-radio/radio-group-styles.js.map +7 -0
- package/dist/packages/rip-and-tear-radio/radio-group.d.ts +72 -0
- package/dist/packages/rip-and-tear-radio/radio-group.js +270 -0
- package/dist/packages/rip-and-tear-radio/radio-group.js.map +7 -0
- package/dist/packages/rip-and-tear-radio/radio-styles.d.ts +1 -0
- package/dist/packages/rip-and-tear-radio/radio-styles.js +170 -0
- package/dist/packages/rip-and-tear-radio/radio-styles.js.map +7 -0
- package/dist/packages/rip-and-tear-radio/radio.d.ts +38 -0
- package/dist/packages/rip-and-tear-radio/radio.js +183 -0
- package/dist/packages/rip-and-tear-radio/radio.js.map +7 -0
- package/dist/packages/rip-and-tear-radio/radio.stories.d.ts +8 -0
- package/dist/packages/rip-and-tear-radio/radio.stories.js +275 -0
- package/dist/packages/rip-and-tear-radio/radio.stories.js.map +7 -0
- package/dist/packages/rip-and-tear-radio/required-validator.d.ts +11 -0
- package/dist/packages/rip-and-tear-radio/required-validator.js +34 -0
- package/dist/packages/rip-and-tear-radio/slot.d.ts +20 -0
- package/dist/packages/rip-and-tear-radio/slot.js +71 -0
- package/dist/packages/rip-and-tear-radio/watch.d.ts +26 -0
- package/dist/packages/rip-and-tear-radio/watch.js +39 -0
- package/dist/packages/select/index.d.ts +54 -48
- package/dist/packages/select/index.js +2421 -2236
- package/dist/packages/select/index.js.map +4 -4
- package/dist/packages/select/locales/da/messages.mjs +1 -0
- package/dist/packages/select/locales/en/messages.mjs +1 -0
- package/dist/packages/select/locales/fi/messages.mjs +1 -0
- package/dist/packages/select/locales/nb/messages.mjs +1 -0
- package/dist/packages/select/locales/sv/messages.mjs +1 -0
- package/dist/packages/select/react.d.ts +2 -0
- package/dist/packages/select/react.js +8 -0
- package/dist/packages/select/select.stories.d.ts +10 -0
- package/dist/packages/select/select.stories.js +31 -0
- package/dist/packages/select/select.test.d.ts +1 -0
- package/dist/packages/select/select.test.js +31 -0
- package/dist/packages/select/styles.d.ts +1 -0
- package/dist/packages/select/styles.js +2 -0
- package/dist/packages/slider/Slider.d.ts +2 -0
- package/dist/packages/slider/Slider.js +8 -0
- package/dist/packages/slider/SliderThumb.d.ts +2 -0
- package/dist/packages/slider/SliderThumb.js +8 -0
- package/dist/packages/slider/index.d.ts +2 -0
- package/dist/packages/slider/index.js +2791 -0
- package/dist/packages/slider/index.js.map +7 -0
- package/dist/packages/slider/oddbird-css-anchor-positioning.d.ts +2 -0
- package/dist/packages/slider/oddbird-css-anchor-positioning.js +3 -0
- package/dist/packages/slider/slider-thumb.d.ts +57 -0
- package/dist/packages/slider/slider-thumb.js +2663 -0
- package/dist/packages/slider/slider-thumb.js.map +7 -0
- package/dist/packages/slider/slider.d.ts +46 -0
- package/dist/packages/slider/slider.js +2569 -0
- package/dist/packages/slider/slider.js.map +7 -0
- package/dist/packages/slider/slider.stories.d.ts +17 -0
- package/dist/packages/slider/slider.stories.js +203 -0
- package/dist/packages/slider/slider.test.d.ts +4 -0
- package/dist/packages/slider/slider.test.js +83 -0
- package/dist/packages/slider/styles/w-slider-thumb.styles.d.ts +1 -0
- package/dist/packages/slider/styles/w-slider-thumb.styles.js +132 -0
- package/dist/packages/slider/styles/w-slider.styles.d.ts +1 -0
- package/dist/packages/slider/styles/w-slider.styles.js +118 -0
- package/dist/packages/slider/styles.d.ts +1 -0
- package/dist/packages/slider/styles.js +2 -0
- package/dist/packages/steps/index.d.ts +36 -0
- package/dist/packages/steps/index.js +2465 -0
- package/dist/packages/steps/index.js.map +7 -0
- package/dist/packages/steps/locales/da/messages.d.mts +1 -0
- package/dist/packages/steps/locales/da/messages.mjs +1 -0
- package/dist/packages/steps/locales/en/messages.d.mts +1 -0
- package/dist/packages/steps/locales/en/messages.mjs +1 -0
- package/dist/packages/steps/locales/fi/messages.d.mts +1 -0
- package/dist/packages/steps/locales/fi/messages.mjs +1 -0
- package/dist/packages/steps/locales/nb/messages.d.mts +1 -0
- package/dist/packages/steps/locales/nb/messages.mjs +1 -0
- package/dist/packages/steps/locales/sv/messages.d.mts +1 -0
- package/dist/packages/steps/locales/sv/messages.mjs +1 -0
- package/dist/packages/steps/react.d.ts +3 -0
- package/dist/packages/steps/react.js +13 -0
- package/dist/packages/steps/steps.stories.d.ts +12 -0
- package/dist/packages/steps/steps.stories.js +172 -0
- package/dist/packages/steps/styles.d.ts +1 -0
- package/dist/packages/steps/styles.js +2 -0
- package/dist/packages/styles.d.ts +2 -0
- package/dist/packages/styles.js +2442 -0
- package/dist/packages/switch/index.d.ts +15 -0
- package/dist/packages/switch/index.js +2455 -0
- package/dist/packages/switch/index.js.map +7 -0
- package/dist/packages/switch/react.d.ts +2 -0
- package/dist/packages/switch/react.js +8 -0
- package/dist/packages/switch/styles.d.ts +1 -0
- package/dist/packages/switch/styles.js +2 -0
- package/dist/packages/switch/switch.stories.d.ts +9 -0
- package/dist/packages/switch/switch.stories.js +34 -0
- package/dist/packages/tabs/index.d.ts +4 -0
- package/dist/packages/tabs/index.js +2470 -0
- package/dist/packages/tabs/index.js.map +7 -0
- package/dist/packages/tabs/react.d.ts +4 -0
- package/dist/packages/tabs/react.js +18 -0
- package/dist/packages/tabs/styles.d.ts +1 -0
- package/dist/packages/tabs/styles.js +2 -0
- package/dist/packages/tabs/tab-panel.d.ts +20 -0
- package/dist/packages/tabs/tab-panel.js +2441 -0
- package/dist/packages/tabs/tab-panel.js.map +7 -0
- package/dist/packages/tabs/tab.d.ts +18 -0
- package/dist/packages/tabs/tab.js +2463 -0
- package/dist/packages/tabs/tab.js.map +7 -0
- package/dist/packages/tabs/tabs.d.ts +38 -0
- package/dist/packages/tabs/tabs.js +2448 -0
- package/dist/packages/tabs/tabs.js.map +7 -0
- package/dist/packages/tabs/tabs.stories.d.ts +8 -0
- package/dist/packages/tabs/tabs.stories.js +2545 -0
- package/dist/packages/tabs/tabs.stories.js.map +7 -0
- package/dist/packages/textfield/index.d.ts +78 -74
- package/dist/packages/textfield/index.js +2514 -422
- package/dist/packages/textfield/index.js.map +4 -4
- package/dist/packages/textfield/react.d.ts +2 -0
- package/dist/packages/textfield/react.js +8 -0
- package/dist/packages/textfield/styles/w-textfield.styles.d.ts +1 -0
- package/dist/packages/textfield/styles/w-textfield.styles.js +46 -0
- package/dist/packages/textfield/styles.d.ts +1 -0
- package/dist/packages/textfield/styles.js +2 -0
- package/dist/packages/textfield/textfield.stories.d.ts +18 -0
- package/dist/packages/textfield/textfield.stories.js +105 -0
- package/dist/packages/textfield/textfield.test.d.ts +2 -0
- package/dist/packages/textfield/textfield.test.js +68 -0
- package/dist/packages/toast/api.d.ts +4 -45
- package/dist/packages/toast/api.js +41 -0
- package/dist/packages/toast/index.d.ts +3 -0
- package/dist/packages/toast/index.js +2466 -2787
- package/dist/packages/toast/index.js.map +4 -4
- package/dist/packages/toast/locales/da/messages.mjs +1 -0
- package/dist/packages/toast/locales/en/messages.mjs +1 -0
- package/dist/packages/toast/locales/fi/messages.mjs +1 -0
- package/dist/packages/toast/locales/nb/messages.mjs +1 -0
- package/dist/packages/toast/locales/sv/messages.mjs +1 -0
- package/dist/packages/toast/styles.d.ts +1 -0
- package/dist/packages/toast/styles.js +2 -0
- package/dist/packages/toast/toast-container.d.ts +12 -63
- package/dist/packages/toast/toast-container.js +153 -0
- package/dist/packages/toast/toast.d.ts +34 -29
- package/dist/packages/toast/toast.js +200 -0
- package/dist/packages/toast/toast.stories.d.ts +12 -0
- package/dist/packages/toast/toast.stories.js +50 -0
- package/dist/packages/toast/types.d.ts +15 -0
- package/dist/packages/toast/types.js +1 -0
- package/dist/packages/utils/expand-transition.d.ts +3 -2
- package/dist/packages/utils/expand-transition.js +59 -0
- package/dist/packages/utils/index.d.ts +1 -1
- package/dist/packages/utils/index.js +2 -0
- package/dist/packages/utils/index.js.map +7 -0
- package/dist/packages/utils/unstyled-heading.d.ts +3 -3
- package/dist/packages/utils/unstyled-heading.js +22 -0
- package/dist/packages/utils/window-exists.js +1 -0
- package/dist/setup-tests.d.ts +1 -0
- package/dist/setup-tests.js +1 -0
- package/dist/vscode.css-custom-data.json +6 -0
- package/dist/vscode.html-custom-data.json +733 -0
- package/dist/web-types.json +1685 -0
- package/package.json +93 -38
- package/dist/index.js +0 -6838
- package/dist/index.js.map +0 -7
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../../packages/textfield/index.
|
|
4
|
-
"sourcesContent": ["import { css, html } from 'lit';\n\nimport { classNames } from '@chbphone55/classnames';\nimport { input as ccInput, label as ccLabel, helpText as ccHelpText } from '@warp-ds/css/component-classes';\nimport WarpElement from '@warp-ds/elements-core';\nimport { ifDefined } from 'lit/directives/if-defined.js';\n\nimport { kebabCaseAttributes } from '../utils';\n\nclass WarpTextField extends kebabCaseAttributes(WarpElement) {\n static properties = {\n disabled: { type: Boolean },\n invalid: { type: Boolean },\n id: { type: String },\n label: { type: String },\n helpText: { type: String },\n size: { type: String },\n max: { type: Number },\n min: { type: Number },\n minLength: { type: Number },\n maxLength: { type: Number },\n name: { type: String },\n pattern: { type: String },\n placeholder: { type: String },\n readOnly: { type: Boolean },\n required: { type: Boolean },\n type: { type: String },\n value: { type: String },\n _hasPrefix: { state: true },\n _hasSuffix: { state: true },\n };\n\n // Slotted elements remain in lightDOM which allows for control of their style outside of shadowDOM.\n // ::slotted([Simple Selector]) confirms to Specificity rules, but (being simple) does not add weight to lightDOM skin selectors,\n // so never gets higher Specificity. Thus in order to overwrite style linked within shadowDOM, we need to use !important.\n // https://stackoverflow.com/a/61631668\n static styles = [\n WarpElement.styles,\n css`\n :host {\n display: block;\n }\n ::slotted(:last-child) {\n margin-bottom: 0px !important;\n }\n `,\n ];\n\n constructor() {\n super();\n this.type = 'text';\n }\n\n get _inputStyles() {\n return classNames([\n ccInput.base,\n this._hasSuffix && ccInput.suffix,\n this._hasPrefix && ccInput.prefix,\n !this.invalid && !this.disabled && !this.readOnly && ccInput.default,\n this.invalid && !this.disabled && !this.readOnly && ccInput.invalid,\n !this.invalid && this.disabled && !this.readOnly && ccInput.disabled,\n !this.invalid && !this.disabled && this.readOnly && ccInput.readOnly,\n ]);\n }\n\n get _helpTextStyles() {\n return classNames([ccHelpText.base, this.invalid ? ccHelpText.colorInvalid : ccHelpText.color]);\n }\n\n get _label() {\n if (this.label) {\n return html`<label for=\"${this._id}\" class=${ccLabel.base}>${this.label}</label>`;\n }\n }\n\n get _helpId() {\n if (this.helpText) return `${this._id}__hint`;\n }\n\n get _id() {\n return 'textfield';\n }\n\n get _error() {\n if (this.invalid && this._helpId) return this._helpId;\n }\n\n handler(e) {\n const { name, value } = e.target;\n const event = new CustomEvent(e.type, {\n detail: {\n name,\n value,\n target: e.target,\n },\n });\n this.dispatchEvent(event);\n }\n\n prefixSlotChange(e) {\n const el = this.renderRoot.querySelector('slot[name=prefix]');\n const affixes = el.assignedElements();\n if (affixes.length) this._hasPrefix = true;\n }\n\n suffixSlotChange(e) {\n const el = this.renderRoot.querySelector('slot[name=suffix]');\n const affixes = el.assignedElements();\n if (affixes.length) this._hasSuffix = true;\n }\n\n render() {\n return html`\n ${this._label}\n <div class=\"${ccInput.wrapper}\">\n <slot @slotchange=\"${this.prefixSlotChange}\" name=\"prefix\"></slot>\n <input\n class=\"${this._inputStyles}\"\n type=\"${this.type}\"\n min=\"${ifDefined(this.min)}\"\n max=\"${ifDefined(this.max)}\"\n size=\"${ifDefined(this.size)}\"\n minlength=\"${ifDefined(this.minLength)}\"\n maxlength=\"${ifDefined(this.maxLength)}\"\n name=\"${ifDefined(this.name)}\"\n pattern=\"${ifDefined(this.pattern)}\"\n placeholder=\"${ifDefined(this.placeholder)}\"\n value=\"${ifDefined(this.value)}\"\n aria-describedby=\"${ifDefined(this._helpId)}\"\n aria-errormessage=\"${ifDefined(this._error)}\"\n aria-invalid=\"${ifDefined(this.invalid)}\"\n id=\"${this._id}\"\n ?disabled=\"${this.disabled}\"\n ?readonly=\"${this.readOnly}\"\n ?required=\"${this.required}\"\n @blur=\"${this.handler}\"\n @change=\"${this.handler}\"\n @focus=\"${this.handler}\" />\n <slot @slotchange=\"${this.suffixSlotChange}\" name=\"suffix\"></slot>\n </div>\n ${this.helpText && html`<div class=\"${this._helpTextStyles}\" id=\"${this._helpId}\">${this.helpText}</div>`}\n `;\n }\n}\n\nif (!customElements.get('w-textfield')) {\n customElements.define('w-textfield', WarpTextField);\n}\n\nexport { WarpTextField };\n", "var r=function(){for(var t=[],n=arguments.length;n--;)t[n]=arguments[n];return t.reduce(function(t,n){return t.concat(\"string\"==typeof n?n:Array.isArray(n)?r.apply(void 0,n):\"object\"==typeof n&&n?Object.keys(n).map(function(r){return n[r]?r:\"\"}):\"\")},[]).join(\" \")};export{r as classNames};\n", "export const pageIndicator = {\n wrapper: 'flex space-x-8 p-8',\n dot: 'h-8 w-8 rounded-full',\n inactive: 's-bg-disabled-subtle hover:bg-[--w-s-icon-subtle]',\n active: 'bg-[--w-s-icon-selected]',\n};\n\nexport const badge = {\n base: 'py-4 px-8 border-0 rounded-4 text-xs inline-flex',\n neutral: 'bg-[--w-color-badge-neutral-background] s-text',\n info: 'bg-[--w-color-badge-info-background] s-text',\n positive: 'bg-[--w-color-badge-positive-background] s-text',\n warning: 'bg-[--w-color-badge-warning-background] s-text',\n negative: 'bg-[--w-color-badge-negative-background] s-text',\n disabled: 's-bg-disabled s-text',\n price: 'bg-[--w-black/70] s-text-inverted-static',\n sponsored: 'bg-[--w-color-badge-sponsored-background] s-text',\n positionBase: 'absolute backdrop-blur',\n positionTL: 'rounded-tl-0 rounded-tr-0 rounded-bl-0 top-0 left-0',\n positionTR: 'rounded-tl-0 rounded-tr-0 rounded-br-0 top-0 right-0',\n positionBR: 'rounded-tr-0 rounded-br-0 rounded-bl-0 bottom-0 right-0',\n positionBL: 'rounded-tl-0 rounded-br-0 rounded-bl-0 bottom-0 left-0',\n};\n\nexport const slider = {\n wrapper: 'touch-pan-y relative w-full h-44 py-2',\n track: 'absolute s-bg-disabled-subtle h-4 top-20 rounded-4 w-full',\n trackDisabled: 'pointer-events-none',\n activeTrack: 'absolute h-6 top-[1.92rem] rounded-4',\n activeTrackEnabled: 's-bg-primary',\n activeTrackDisabled: 's-bg-disabled pointer-events-none',\n thumb: 'absolute transition-shadow w-24 h-24 bottom-10 rounded-4 outline-none',\n thumbEnabled:\n 'border-2 shadow-[--w-shadow-slider] cursor-pointer s-bg-primary s-border-primary hover:s-bg-primary-hover hover:s-border-primary-hover hover:shadow-[--w-shadow-slider-handle-hover] active:s-bg-primary-active active:s-border-primary-active active:shadow-[--w-shadow-slider-handle-active] focus:shadow-[--w-shadow-slider-handle-hover] focus:s-border-primary-hover focus:s-bg-primary-hover',\n thumbDisabled: 's-bg-disabled cursor-disabled pointer-events-none',\n};\n\nexport const box = {\n base: 'group block relative break-words last-child:mb-0 p-16 rounded-8', // Relative here enables w-clickable\n bleed: '-mx-16 sm:mx-0 rounded-l-0 rounded-r-0 sm:rounded-8', // We target L and R to override the default rounded-8\n info: 's-bg-info-subtle',\n neutral: 's-surface-sunken',\n bordered: 'border-2 s-border s-bg',\n};\n\nexport const pill = {\n wrapper: 'flex items-center',\n button: 'inline-flex items-center focusable text-xs transition-all',\n suggestion:\n 'bg-[--w-color-pill-suggestion-background] hover:bg-[--w-color-pill-suggestion-background-hover] active:bg-[--w-color-pill-suggestion-background-active] s-text font-bold',\n filter: 's-bg-primary hover:s-bg-primary-hover active:s-bg-primary-active s-text-inverted',\n label: 'pl-12 py-8 rounded-l-full',\n labelWithoutClose: 'pr-12 rounded-r-full',\n labelWithClose: 'pr-2',\n close: 'pr-12 pl-4 py-8 rounded-r-full',\n a11y: 'sr-only',\n};\n\nexport const step = {\n base: 'group/step',\n vertical: 'group/stepv grid-rows-[20px_auto] grid grid-flow-col gap-x-16',\n horizontal: 'group/steph grid-rows-[auto_20px] grid-cols-[1fr_20px_1fr] flex-1 grid gap-y-16 items-center',\n\n alignLeft: 'grid-cols-[20px_1fr]',\n alignRight: 'grid-cols-[1fr_20px] text-right',\n\n dot: 'rounded-full border-2 h-20 w-20 transition-colors duration-300 s-icon-inverted',\n dotAlignRight: 'col-start-2',\n dotHorizontal: 'row-start-2 justify-self-end',\n dotActive: 's-border-primary s-bg-primary',\n dotIncomplete: 's-border s-bg',\n\n line: 'group-last/stepv:hidden transition-colors duration-300',\n lineVertical: 'w-2 h-full justify-self-center',\n lineAlignRight: 'col-start-2',\n lineHorizontal: 'h-2 w-full row-start-2',\n lineHorizontalAlignRight: 'group-last/steph:bg-transparent',\n lineHorizontalAlignLeft: 'group-first/steph:bg-transparent',\n\n lineIncomplete: 's-bg-disabled',\n lineComplete: 's-bg-primary',\n\n content: 'last:mb-0 group-last/step:last:pb-0',\n contentVertical: 'row-span-2 pb-32',\n contentHorizontal: 'col-span-3 px-16 row-start-1 text-center',\n};\n\nexport const steps = {\n wrapper: 'w-full',\n horizontal: 'flex',\n};\n\nexport const card = {\n base: 'cursor-pointer overflow-hidden relative transition-all',\n shadow: 'group rounded-8 s-surface-elevated-200 hover:s-surface-elevated-200-hover active:s-surface-elevated-200-active',\n selected: '!s-bg-selected !hover:s-bg-selected-hover !active:s-bg-selected-active',\n outline: 'absolute border-2 rounded-8 inset-0 transition-all',\n outlineUnselected: 'border-transparent group-active:s-border-active',\n outlineSelected: 's-border-selected group-hover:s-border-selected-hover group-active:s-border-selected-active',\n flat: 'border-2 rounded-4',\n flatUnselected: 's-bg hover:s-bg-hover active:s-bg-active s-border hover:s-border-hover active:s-border-active',\n flatSelected:\n 's-bg-selected hover:s-bg-selected-hover active:s-bg-selected-active s-border-selected hover:s-border-selected-hover active:s-border-selected-active',\n a11y: 'sr-only',\n};\n\nexport const switchToggle = {\n base: 'block relative h-24 w-44 cursor-pointer group focusable rounded-full',\n disabled: 'pointer-events-none',\n track: 'absolute top-0 left-0 h-full w-full rounded-full transition-colors',\n trackActive: 's-bg-primary group-hover:s-bg-primary-hover',\n trackInactive: 'bg-[--w-color-switch-track-background] group-hover:bg-[--w-color-switch-track-background-hover]',\n trackDisabled: 's-bg-disabled-subtle',\n handle: 'absolute transform-gpu h-16 w-16 top-4 left-4 rounded-full transition-transform',\n handleSelected: 'translate-x-20',\n handleNotDisabled: 's-bg shadow-s',\n handleDisabled: 's-bg-disabled',\n a11y: 'sr-only',\n};\n\nexport const toaster = {\n wrapper: 'fixed transform translate-z-0 bottom-16 left-0 right-0 mx-8 sm:mx-16 z-50 pointer-events-none',\n base: 'grid auto-rows-auto justify-items-center justify-center mx-auto pointer-events-none',\n content: 'w-full',\n};\n\nexport const toast = {\n wrapper: 'relative overflow-hidden w-full',\n base: 'flex group p-8 mt-16 rounded-8 border-2 pointer-events-auto transition-all',\n positive: 's-bg-positive-subtle s-border-positive-subtle s-text',\n warning: 's-bg-warning-subtle s-border-warning-subtle s-text',\n negative: 's-bg-negative-subtle s-border-negative-subtle s-text',\n iconBase: 'shrink-0 rounded-full w-[16px] h-[16px] m-[8px]',\n iconPositive: 's-icon-positive',\n iconWarning: 's-icon-warning',\n iconNegative: 's-icon-negative',\n iconLoading: 'animate-bounce',\n content: 'self-center mr-8 py-4 last-child:mb-0',\n close: 'bg-transparent ml-auto p-[8px] s-icon hover:s-icon-hover active:s-icon-active',\n};\n\nexport const tabs = {\n wrapper: 'inline-block border-b s-border mb-32',\n base: 'inline-grid relative -mb-1',\n selectionIndicator: 'absolute s-border-selected -bottom-0 border-b-4 transition-all',\n};\n\nexport const tab = {\n base: 'grid items-center font-bold gap-8 focusable antialias p-16 pb-8 border-b-4 bg-transparent border-transparent hover:s-text-link hover:s-border-primary',\n inactive: 's-text-subtle',\n active: 's-text-link s-border-selected',\n icon: 'mx-auto',\n content: 'flex items-center justify-center gap-8',\n contentUnderlined: 'content-underlined', // content-underlined is a no-op that prevents a quirk in how Vue handles class bindings\n};\n\n// Todo: Handle dynamic classnames\nexport const gridLayout = {\n cols1: 'grid-cols-1',\n cols2: 'grid-cols-2',\n cols3: 'grid-cols-3',\n cols4: 'grid-cols-4',\n cols5: 'grid-cols-5',\n cols6: 'grid-cols-6',\n cols7: 'grid-cols-7',\n cols8: 'grid-cols-8',\n cols9: 'grid-cols-9',\n};\n\nexport const buttonReset = 'focus:outline-none appearance-none cursor-pointer bg-transparent border-0 m-0 p-0 inline-block';\n\nexport const expandable = {\n wrapper: 'will-change-height s-text',\n box: 's-surface-sunken hover:s-bg-hover active:s-bg-active py-0 px-0 group block relative break-words last-child:mb-0 rounded-8',\n bleed: '-mx-16 rounded-l-0 rounded-r-0 sm:mx-0 sm:rounded-8',\n chevron: 'inline-block align-middle s-icon',\n chevronNonBox: 'ml-8',\n chevronTransform: 'transform transition-transform transform-gpu ease-in-out',\n chevronExpand: '-rotate-180',\n chevronCollapse: 'rotate-180',\n\n // These are web component specific classes, using the ::part-selector:\n elementsChevronDownTransform:\n 'part-[w-icon-chevron-down-16-part]:transform part-[w-icon-chevron-down-16-part]:transition-transform part-[w-icon-chevron-down-16-part]:transform-gpu part-[w-icon-chevron-down-16-part]:ease-in-out',\n elementsChevronUpTransform:\n 'part-[w-icon-chevron-up-16-part]:transform part-[w-icon-chevron-up-16-part]:transition-transform part-[w-icon-chevron-up-16-part]:transform-gpu part-[w-icon-chevron-up-16-part]:ease-in-out',\n elementsChevronExpand: 'part-[w-icon-chevron-down-16-part]:-rotate-180',\n elementsChevronCollapse: 'part-[w-icon-chevron-up-16-part]:rotate-180',\n\n expansion: 'overflow-hidden',\n expansionNotExpanded: 'h-0 invisible',\n button: 'focus:outline-none appearance-none cursor-pointer bg-transparent border-0 m-0 hover:underline focus-visible:underline',\n buttonBox: 'w-full text-left relative inline-flex items-center justify-between group relative break-words last-child:mb-0 p-16 rounded-8',\n contentWithTitle: 'pt-0',\n title: 'flex w-full justify-between items-center',\n titleType: 't4',\n};\n\nconst buttonDefaultStyling = 'font-bold focusable justify-center transition-colors ease-in-out';\n\nconst buttonColors = {\n primary:\n 's-text-inverted bg-[--w-color-button-primary-background] hover:bg-[--w-color-button-primary-background-hover] active:bg-[--w-color-button-primary-background-active]',\n secondary: 's-text-link s-border s-bg hover:s-bg-hover hover:s-border-hover active:s-bg-active',\n utility: 's-text s-bg hover:s-bg-hover active:s-bg-active s-border hover:s-border-hover active:s-border-active',\n destructive: 's-bg-negative s-text-inverted hover:s-bg-negative-hover active:s-bg-negative-active',\n pill: 's-icon hover:s-icon-hover active:s-icon-active bg-transparent hover:bg-[--w-color-button-pill-background-hover] active:bg-[--w-color-button-pill-background-active]',\n disabled: 's-text-inverted s-bg-disabled',\n quiet: 'bg-transparent s-text-link hover:s-bg-hover active:s-bg-active',\n utilityQuiet: 's-text bg-transparent hover:s-bg-hover active:s-bg-active',\n negativeQuiet: 'bg-transparent s-text-negative hover:s-bg-negative-subtle-hover active:s-bg-negative-subtle-active',\n loading: 's-text s-bg-subtle',\n link: 's-text-link',\n};\n\nconst buttonTypes = {\n primary: `border-0 rounded-8 ${buttonDefaultStyling}`,\n secondary: `border-2 rounded-8 ${buttonDefaultStyling}`,\n utility: `border rounded-4 ${buttonDefaultStyling}`,\n negative: `border-0 rounded-8 ${buttonDefaultStyling}`,\n pill: `p-4 rounded-full border-0 inline-flex items-center justify-center hover:bg-clip-padding ${buttonDefaultStyling}`,\n link: `bg-transparent focusable ease-in-out inline active:underline hover:underline focus:underline ${buttonColors.link}`,\n};\n\nconst buttonSizes = {\n xsmall: 'py-6 px-16',\n small: 'py-8 px-16',\n medium: 'py-10 px-14',\n large: 'py-12 px-16',\n utility: 'py-[11px] px-[15px]',\n smallUtility: 'py-[7px] px-[15px]',\n pill: 'min-h-[44px] min-w-[44px]',\n pillSmall: 'min-h-32 min-w-32',\n link: 'p-0',\n};\n\nconst buttonTextSizes = {\n medium: 'text-m leading-[24]',\n xsmall: 'text-xs',\n};\n\nconst buttonVariants = {\n inProgress: `border-transparent animate-inprogress pointer-events-none ${buttonColors.loading}`, // .button--in-progress, a.button--in-progress:visited\n quiet: `border-0 rounded-8 ${buttonDefaultStyling}`,\n utilityQuiet: `border-0 rounded-4 ${buttonDefaultStyling}`,\n negativeQuiet: `border-0 rounded-8 ${buttonDefaultStyling}`,\n isDisabled: `font-bold justify-center transition-colors ease-in-out cursor-default pointer-events-none ${buttonColors.disabled}`, // .button:disabled, .button--is-disabled\n};\n\nexport const button = {\n // Buttontypes\n secondary: `${buttonSizes.medium} ${buttonTextSizes.medium} ${buttonTypes.secondary} ${buttonColors.secondary}`, // .button--secondary, .button--default, .button\n secondaryHref: `${buttonSizes.medium} ${buttonTextSizes.medium} ${buttonTypes.secondary} ${buttonColors.secondary}`,\n secondaryDisabled: `${buttonSizes.medium} ${buttonTextSizes.medium} ${buttonTypes.secondary} ${buttonVariants.isDisabled}`,\n secondarySmall: `${buttonTextSizes.xsmall} ${buttonSizes.xsmall} ${buttonTypes.secondary} ${buttonColors.secondary}`,\n secondarySmallDisabled: `${buttonTextSizes.xsmall} ${buttonSizes.xsmall} ${buttonTypes.secondary} ${buttonVariants.isDisabled}`,\n secondaryQuiet: `${buttonSizes.medium} ${buttonTextSizes.medium} ${buttonVariants.quiet} ${buttonColors.quiet}`,\n secondaryQuietDisabled: `${buttonSizes.medium} ${buttonTextSizes.medium} ${buttonVariants.quiet} ${buttonVariants.isDisabled}`,\n secondarySmallQuiet: `${buttonTextSizes.xsmall} ${buttonSizes.xsmall} ${buttonVariants.quiet} ${buttonColors.quiet}`,\n secondarySmallQuietDisabled: `${buttonTextSizes.xsmall} ${buttonSizes.xsmall} ${buttonVariants.quiet} ${buttonVariants.isDisabled}`,\n secondaryLoading: `${buttonSizes.medium} ${buttonTextSizes.medium} ${buttonTypes.secondary} ${buttonVariants.inProgress}`,\n secondarySmallLoading: `${buttonTextSizes.xsmall} ${buttonSizes.xsmall} ${buttonTypes.secondary} ${buttonVariants.inProgress}`,\n secondarySmallQuietLoading: `${buttonTextSizes.xsmall} ${buttonSizes.xsmall} ${buttonVariants.quiet} ${buttonVariants.inProgress}`,\n secondaryQuietLoading: `${buttonSizes.medium} ${buttonTextSizes.medium} ${buttonVariants.quiet} ${buttonVariants.inProgress}`,\n\n primary: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonTypes.primary} ${buttonColors.primary}`, // .button--primary, .button--cta\n primaryDisabled: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonVariants.isDisabled} ${buttonTypes.primary}`,\n primarySmall: `${buttonSizes.small} ${buttonTextSizes.xsmall} ${buttonTypes.primary} ${buttonColors.primary}`,\n primarySmallDisabled: `${buttonSizes.small} ${buttonTextSizes.xsmall} ${buttonVariants.isDisabled} ${buttonTypes.primary} `,\n primaryQuiet: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonVariants.quiet} ${buttonColors.quiet}`,\n primaryQuietDisabled: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonVariants.quiet} ${buttonVariants.isDisabled}`,\n primarySmallQuiet: `${buttonSizes.small} ${buttonTextSizes.xsmall} ${buttonVariants.quiet} ${buttonColors.quiet}`,\n primarySmallQuietDisabled: `${buttonSizes.small} ${buttonTextSizes.xsmall} ${buttonVariants.quiet} ${buttonVariants.isDisabled}`,\n primaryLoading: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonVariants.inProgress} ${buttonTypes.primary}`,\n primarySmallLoading: `${buttonSizes.small} ${buttonTextSizes.xsmall} ${buttonVariants.inProgress} ${buttonTypes.primary}`,\n primarySmallQuietLoading: `${buttonSizes.small} ${buttonTextSizes.xsmall} ${buttonVariants.quiet} ${buttonVariants.inProgress} ${buttonTypes.primary}`,\n primaryQuietLoading: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonVariants.quiet} ${buttonVariants.inProgress}`,\n\n utility: `${buttonSizes.utility} ${buttonTextSizes.medium} ${buttonTypes.utility} ${buttonColors.utility}`, // .button--utility\n utilityDisabled: `${buttonSizes.utility} ${buttonTextSizes.medium} ${buttonTypes.utility} ${buttonVariants.isDisabled}`,\n utilityQuiet: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonVariants.utilityQuiet} ${buttonColors.utilityQuiet}`, // .button--utility-flat\n utilityQuietDisabled: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonVariants.utilityQuiet} ${buttonVariants.isDisabled}`,\n utilitySmall: `${buttonSizes.smallUtility} ${buttonTextSizes.xsmall} ${buttonTypes.utility} ${buttonColors.utility}`,\n utilitySmallDisabled: `${buttonSizes.smallUtility} ${buttonTextSizes.xsmall} ${buttonTypes.utility} ${buttonVariants.isDisabled}`,\n utilitySmallQuiet: `${buttonSizes.smallUtility} ${buttonTextSizes.xsmall} ${buttonVariants.utilityQuiet} ${buttonColors.utilityQuiet}`,\n utilitySmallQuietDisabled: `${buttonSizes.smallUtility} ${buttonTextSizes.xsmall} ${buttonVariants.utilityQuiet} ${buttonVariants.isDisabled}`,\n utilityLoading: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonTypes.utility} ${buttonVariants.inProgress}`,\n utilitySmallLoading: `${buttonSizes.smallUtility} ${buttonTextSizes.xsmall} ${buttonTypes.utility} ${buttonVariants.inProgress}`,\n utilityQuietLoading: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonVariants.inProgress} ${buttonVariants.utilityQuiet}`,\n utilitySmallQuietLoading: `${buttonSizes.smallUtility} ${buttonTextSizes.xsmall} ${buttonVariants.inProgress} ${buttonVariants.utilityQuiet}`,\n\n negative: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonTypes.negative} ${buttonColors.destructive}`, // .button--destructive\n negativeDisabled: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonTypes.negative} ${buttonVariants.isDisabled}`,\n negativeQuiet: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonVariants.negativeQuiet} ${buttonColors.negativeQuiet}`, // .button--destructive-flat\n negativeQuietDisabled: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonVariants.negativeQuiet}${buttonVariants.isDisabled}`,\n negativeSmall: `${buttonSizes.small} ${buttonTextSizes.xsmall} ${buttonTypes.negative} ${buttonColors.destructive}`,\n negativeSmallDisabled: `${buttonSizes.small} ${buttonTextSizes.xsmall} ${buttonTypes.negative} ${buttonVariants.isDisabled}`,\n negativeSmallQuiet: `${buttonSizes.small} ${buttonTextSizes.xsmall} ${buttonVariants.negativeQuiet} ${buttonColors.negativeQuiet}`,\n negativeSmallQuietDisabled: `${buttonSizes.small} ${buttonTextSizes.xsmall} ${buttonVariants.negativeQuiet} ${buttonVariants.isDisabled}`,\n negativeLoading: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonTypes.negative} ${buttonVariants.inProgress}`,\n negativeSmallLoading: `${buttonSizes.small} ${buttonTextSizes.xsmall} ${buttonVariants.inProgress} ${buttonTypes.negative}`,\n negativeQuietLoading: `${buttonSizes.large} ${buttonTextSizes.medium} ${buttonVariants.negativeQuiet} ${buttonTypes.negative} ${buttonVariants.inProgress}`,\n negativeSmallQuietLoading: `${buttonSizes.small} ${buttonTextSizes.xsmall} ${buttonVariants.negativeQuiet} ${buttonVariants.inProgress}`,\n\n pill: `${buttonSizes.pill} ${buttonTextSizes.medium} ${buttonTypes.pill} ${buttonColors.pill}`, // .button--pill\n pillSmall: `${buttonSizes.pillSmall} ${buttonTextSizes.xsmall} ${buttonTypes.pill} ${buttonColors.pill}`,\n pillLoading: `${buttonSizes.pill} ${buttonTextSizes.medium} ${buttonTypes.pill} ${buttonVariants.inProgress}`,\n pillSmallLoading: `${buttonSizes.pillSmall} ${buttonTextSizes.xsmall} ${buttonTypes.pill} ${buttonVariants.inProgress}`,\n\n link: `${buttonSizes.link} ${buttonTextSizes.medium} ${buttonTypes.link}`,\n linkSmall: `${buttonSizes.link} ${buttonTextSizes.xsmall} ${buttonTypes.link}`,\n linkAsButton: 'inline-block active:no-underline hover:no-underline focus:no-underline text-center',\n a11y: 'sr-only',\n fullWidth: 'w-full max-w-full',\n contentWidth: 'max-w-max',\n};\n\nexport const buttonGroup = {\n wrapper: 'inline-flex rounded-4 overflow-hidden',\n raised: 'shadow-s',\n vertical: 'flex-col',\n nonOutlinedVertical: 'divide-y',\n nonOutlinedHorizontal: 'divide-x',\n};\n\nexport const buttonGroupItem = {\n wrapper: 'relative s-text',\n outlined: 'border hover:z-30',\n outlinedVertical: '-mb-1 last:mb-0 first:rounded-lt-4 first:rounded-rt-4 last:rounded-lb-4 last:rounded-rb-4',\n outlinedHorizontal: '-mr-1 last:mr-0 first:rounded-lt-4 first:rounded-lb-4 last:rounded-rt-4 last:rounded-rb-4',\n outlinedVerticalResets: 'px-1 pt-1 last:pb-1 -mb-1 last:mb-0',\n outlinedHorizontalResets: 'py-1 pl-1 last:pr-1 -mr-1 last:mr-0',\n outlinedUnselected: 'border-[--w-color-buttongroup-utility-border] active:border-[--w-color-buttongroup-utility-border-selected]',\n outlinedSelected: 'active:border-[--w-color-buttongroup-utility-border-selected]',\n unselected:\n 's-bg hover:bg-[--w-color-buttongroup-utility-background-hover] active:s-text active:bg-[--w-color-buttongroup-utility-background-selected]',\n selected: 'z-30 bg-[--w-color-buttongroup-utility-background-selected]',\n};\n\nexport const modal = {\n backdrop:\n 'fixed inset-0 flex sm:place-content-center sm:place-items-center items-end z-30 [--w-modal-max-height:80%] [--w-modal-width:640px] bg-[--w-black/25]',\n base: 'pb-safe-[32] shadow-m max-h-[--w-modal-max-height] min-h-[--w-modal-min-height] w-[--w-modal-width] h-[--w-modal-height] relative transition-300 ease-in-out backface-hidden will-change-height rounded-8 mx-0 sm:mx-16 bg-[--w-s-color-surface-elevated-100] flex flex-col overflow-hidden outline-none space-y-16 pt-8 sm:pt-32 sm:pb-32 rounded-b-0 sm:rounded-b-8',\n content: 'block overflow-y-auto overflow-x-hidden last-child:mb-0 grow shrink px-16 sm:px-32 relative',\n footer: 'flex justify-end shrink-0 px-16 sm:px-32',\n transitionTitle: 'transition-all duration-300',\n transitionTitleCenter: 'justify-self-center self-center',\n transitionTitleColSpan: 'col-span-2',\n title:\n 'py-8 sm:py-0 -mt-4 sm:-mt-8 min-h-40 sm:min-h-48 grid gap-8 sm:gap-16 grid-cols-[auto_1fr_auto] items-start px-16 sm:px-32 border-b sm:border-b-0 shrink-0',\n titleText: 'mb-0 h4 sm:h3',\n titleButton: `${buttonTextSizes.medium} ${buttonTypes.pill} ${buttonColors.pill} sm:min-h-[44px] sm:min-w-[44px] min-h-[32px] min-w-[32px]`,\n titleButtonLeft: '-ml-8 sm:-ml-12 justify-self-start',\n titleButtonRight: '-mr-8 sm:-mr-12 justify-self-end',\n titleButtonIcon: 'h-16 w-16 sm:h-24 sm:w-24',\n titleButtonIconRotated: 'transform rotate-90',\n};\n\nexport const modalElement = {\n // several items in here are 'resets' for the <dialog> element\n dialogEl:\n 'bg-transparent backface-hidden w-unset h-unset max-w-unset max-h-unset p-0 m-auto border-0 inset-0 open:flex open:fixed sm:place-content-center sm:place-items-center items-end [--w-modal-max-height:80%] [--w-modal-width:640px]',\n dialogInner:\n 'transition-all relative pb-safe-[32] sm:pb-32 shadow-m max-h-[--w-modal-max-height] min-h-[--w-modal-min-height] w-[--w-modal-width] h-[--w-modal-height] ease-in-out backface-hidden will-change-height rounded-8 sm:mx-16 s-bg flex flex-col overflow-hidden lt-sm:rounded-b-0',\n contentSlot: 'block overflow-y-auto overflow-x-hidden last-child:mb-0 grow shrink px-16 sm:px-32 relative',\n header: 'relative pb-8',\n headerTitleBar: 'pt-16 sm:pt-24 px-16 sm:px-32 grid gap-12 grid-cols-[auto_1fr_auto] items-start shrink-0!',\n headerButton:\n 'sm:min-h-[32px] sm:min-w-[32px] min-h-[40px] min-w-[40px] text-m leading-[24] p-4 rounded-full border-0 inline-flex items-center justify-center hover:bg-clip-padding font-bold focusable transition-colors ease-in-out',\n headerButtonLeft:\n '-ml-8 s-icon bg-transparent hover:bg-[--w-color-button-pill-background-hover] active:bg-[--w-color-button-pill-background-active]',\n headerCloseButton:\n '-mr-8 s-icon bg-transparent hover:bg-[--w-color-button-pill-background-hover] active:bg-[--w-color-button-pill-background-active]',\n headerCloseButtonOnImage: `absolute right-8 top-8 z-10 s-color-inverted bg-[var(--w-black)/70] hover:bg-[var(--w-black)/85] active:bg-[var(--w-black)] s-text-inverted`,\n headerTitle: 'mb-0 t3 self-center',\n headerTitleWithBackButton: 'justify-self-center',\n headerTitleWithoutBackButton: 'col-span-2',\n headerTitleWithTopArea: 'pt-16 px-16 sm:px-32',\n footer: 'flex justify-end shrink-0 px-16 sm:px-32 pt-24',\n};\n\nexport const alert = {\n wrapper: 'flex p-16 border border-l-4 rounded-4 s-text',\n willChangeHeight: 'will-change-height',\n textWrapper: 'last-child:mb-0 text-s',\n title: 'text-s',\n icon: 'w-16 mr-8 min-w-16',\n negative: 's-border-negative-subtle s-border-l-negative s-bg-negative-subtle',\n negativeIcon: 's-icon-negative',\n positive: 's-border-positive-subtle s-border-l-positive s-bg-positive-subtle',\n positiveIcon: 's-icon-positive',\n warning: 's-border-warning-subtle s-border-l-warning s-bg-warning-subtle',\n warningIcon: 's-icon-warning',\n info: 's-border-info-subtle s-border-l-info s-bg-info-subtle',\n infoIcon: 's-icon-info',\n};\n\nexport const input = {\n // wrapper classes\n wrapper: 'relative',\n // input classes\n base: 'block text-m leading-m mb-0 px-8 py-12 rounded-4 w-full focusable focus:[--w-outline-offset:-2px] caret-current', // true\n default: 'border-1 s-text s-bg s-border hover:s-border-hover active:s-border-selected', // !isInvalid && !isDisabled && !isReadOnly\n disabled: 'border-1 s-text-disabled s-bg-disabled-subtle s-border-disabled pointer-events-none', // !isInvalid && isDisabled && !isReadOnly\n invalid: 'border-1 s-text-negative s-bg s-border-negative hover:s-border-negative-hover outline-[--w-s-color-border-negative]!', // isInvalid && !isDisabled && !isReadOnly\n readOnly: 'pl-0 bg-transparent pointer-events-none', // !isInvalid && !isDisabled && isReadOnly\n placeholder: 'placeholder:s-text-placeholder',\n suffix: 'pr-40',\n prefix: 'pl-[var(--w-prefix-width,_40px)]',\n // textarea classes\n textArea: 'min-h-[42] sm:min-h-[45]',\n};\n\nexport const select = {\n base: 'block text-m mb-0 py-12 pr-32 rounded-4 w-full focusable focus:[--w-outline-offset:-2px] appearance-none cursor-pointer caret-current',\n default: 's-text s-bg pl-8 border-1 s-border hover:s-border-hover active:s-border-active',\n disabled:\n 's-text-disabled s-bg-disabled-subtle pl-8 border-1 s-border-disabled hover:s-border-disabled active:s-border-disabled pointer-events-none',\n invalid:\n 's-text s-bg pl-8 border-1 s-border-negative hover:s-border-negative-hover active:s-border-active outline-[--w-s-color-border-negative]!',\n readOnly: 's-text bg-transparent pl-0 border-0 pointer-events-none before:hidden',\n wrapper: 'relative',\n selectWrapper: `relative before:block before:absolute before:right-0 before:bottom-0 before:w-32 before:h-full before:pointer-events-none `,\n chevron: 'block absolute top-[30%] right-0 bottom-0 w-32 h-full s-icon pointer-events-none cursor-pointer',\n chevronDisabled: 'opacity-25',\n};\n\nexport const label = {\n base: 'antialiased block relative text-s font-bold pb-4 cursor-pointer s-text',\n optional: 'pl-8 font-normal text-s s-text-subtle',\n};\n\nexport const helpText = {\n base: 'text-xs mt-4 block',\n color: 's-text-subtle',\n colorInvalid: 's-text-negative',\n};\n\nconst prefixSuffixWrapper =\n 'absolute top-0 bottom-0 flex justify-center items-center focusable rounded-4 focus:[--w-outline-offset:-2px] bg-transparent ';\n\nexport const suffix = {\n wrapper: prefixSuffixWrapper + 'right-0',\n wrapperWithLabel: 'w-max pr-12',\n wrapperWithIcon: 'w-40',\n label: 'antialiased block relative cursor-default pb-0 font-bold text-xs s-text',\n};\n\nexport const prefix = {\n wrapper: prefixSuffixWrapper + 'left-0',\n wrapperWithLabel: 'w-max pl-12',\n wrapperWithIcon: 'w-40',\n label: 'antialiased block relative cursor-default pb-0 font-bold text-xs s-text',\n};\n\nexport const breadcrumbs = {\n wrapper: 'flex space-x-8',\n text: 's-text',\n link: 's-text-link',\n separator: 'select-none s-icon',\n a11y: 'sr-only',\n};\n\nexport const toggle = {\n // wrapper classes\n field: 'relative text-m', // true\n wrapper: 'relative py-1', // true\n wrapperRadioButtons: 'inline-flex font-bold rounded-8 focus-within:focusable', // isRadioButton && !isEqualWidth\n wrapperRadioButtonsJustified: 'flex font-bold rounded-8 focus-within:focusable', // isRadioButton && isEqualWidth,\n\n // group classes\n radioButtonsGroup: 'group', // isRadioButton\n radioButtonsGroupJustified: 'grow-1 shrink-0 basis-auto', // isRadioButton && isEqualWidth\n\n // input classes\n input: 'peer',\n a11y: 'sr-only',\n\n // label classes\n label:\n 'peer-focus:focusable cursor-pointer text-m s-text s-border py-2 pl-28 select-none relative block before:border before:absolute before:transition-all before:left-0 before:w-20 before:h-20 before:top-2', // !isRadioButton\n labelBefore: 'before:content-[\"\"] before:block', // !isRadioButton && !isIndeterminate\n checkbox:\n 'before:s-bg before:rounded-2 hover:before:s-border-primary hover:before:s-bg-hover peer-checked:before:bg-center peer-checked:before:bg-[url(var(--w-icon-toggle-checked))] peer-checked:before:s-border-primary peer-checked:before:s-bg-primary peer-checked:peer-hover:before:s-border-primary-hover peer-checked:peer-hover:before:s-bg-primary-hover', // isCheckbox && !isIndeterminate && !isInvalid && !isDisabled\n checkboxInvalid:\n 'before:s-bg before:s-border-negative before:rounded-2 hover:before:s-bg-negative-subtle-hover hover:before:s-border-negative-hover peer-checked:before:bg-center peer-checked:before:bg-[url(var(--w-icon-toggle-checked))] peer-checked:before:s-bg-negative peer-checked:before:s-border-negative peer-checked:peer-hover:before:s-bg-negative-hover peer-checked:peer-hover:before:s-border-negative-hover', // isCheckbox && !isIndeterminate && isInvalid && !isDisabled\n checkboxDisabled:\n 'before:s-bg-disabled-subtle before:s-border-disabled pointer-events-none before:rounded-2 peer-checked:before:bg-center peer-checked:before:bg-[url(var(--w-icon-toggle-checked))] peer-checked:before:s-border-disabled peer-checked:before:s-bg-disabled', // isCheckbox && !isIndeterminate && !isInvalid && isDisabled\n indeterminate:\n 'before:content-[\"\u2013\"] before:rounded-2 before:leading-xs before:text-center before:font-bold before:s-icon-inverted peer-indeterminate:before:s-border-primary peer-indeterminate:before:s-bg-primary peer-indeterminate:hover:before:s-border-primary-hover peer-indeterminate:hover:before:s-bg-primary-hover', // isCheckbox && isIndeterminate && !isInvalid && !isDisabled\n indeterminateInvalid:\n 'before:content-[\"\u2013\"] before:rounded-2 before:leading-xs before:text-center before:font-bold before:s-icon-inverted peer-indeterminate:before:s-border-negative peer-indeterminate:before:s-bg-negative peer-indeterminate:hover:before:s-border-negative-hover peer-indeterminate:hover:before:s-bg-negative-hover', // isCheckbox && isIndeterminate && isInvalid && !isDisabled\n indeterminateDisabled:\n 'before:content-[\"\u2013\"] before:rounded-2 before:leading-xs before:text-center before:font-bold pointer-events-none before:s-icon-inverted peer-indeterminate:before:s-border-disabled peer-indeterminate:before:s-bg-disabled', // isCheckbox && isIndeterminate && !isInvalid && isDisabled\n radio:\n 'before:s-bg before:rounded-full peer-checked:before:border-[6] peer-checked:before:s-border-selected peer-checked:peer-hover:before:s-border-selected-hover peer-hover:before:s-border-primary peer-hover:before:s-bg-hover', // isRadio && !isDisabled && !isInvalid\n radioInvalid:\n 'before:s-bg before:s-border-negative before:rounded-full peer-checked:before:border-[6] peer-hover:before:s-bg-negative-subtle peer-hover:before:s-border-negative-hover peer-checked:before:s-border-negative peer-checked:peer-hover:before:s-border-negative-hover', // isRadio && isInvalid && !isDisabled\n radioDisabled:\n 'before:s-bg-disabled-subtle before:s-border-disabled pointer-events-none before:rounded-full peer-checked:before:border-[6]', // isRadio && !isInvalid && isDisabled\n radioButtonsLabel:\n 'peer-hover:peer-not-checked:s-bg-hover peer-checked:s-text-inverted peer-checked:s-bg-primary peer-checked:s-border-primary block relative font-bold cursor-pointer s-text-link text-center s-bg border-2 s-border group-first-of-type:rounded-tl-8 group-first-of-type:rounded-bl-8 group-last-of-type:rounded-tr-8 group-last-of-type:rounded-br-8 group-not-last-of-type:border-r-0 peer-checked:z-10 group-not-first:-ml-2', // isRadioButtons\n radioButtonsRegular: 'text-s py-8 pl-12 pr-14', // isRadioButtons && !isSmall\n radioButtonsSmall: 'text-xs py-[5px] px-[8px]', // isRadioButtons && isSmall\n};\n\nexport const deadToggle = {\n wrapper: `${toggle.wrapper} h-20 w-20 pointer-events-none`,\n input: `${toggle.input} hidden`,\n inputVue: 'hidden',\n labelVue: '-mt-2',\n labelRadio: `${toggle.label} ${toggle.labelBefore} ${toggle.radio}`,\n labelCheckbox: `${toggle.label} ${toggle.labelBefore} ${toggle.checkbox}`,\n};\n\nexport const clickable = {\n toggle: 'absolute inset-0 h-full w-full appearance-none cursor-pointer focusable focusable-inset',\n label: 'antialiased block relative text-s font-bold s-text px-12 py-8 cursor-pointer focusable focusable-inset',\n buttonOrLink: 'bg-transparent focusable',\n buttonOrLinkStretch: 'inset-0 absolute',\n};\n\nexport const combobox = {\n wrapper: 'relative',\n base: 'absolute left-0 right-0 s-bg pb-4 rounded-8 overflow-hidden shadow-m',\n listbox: 'm-0 p-0 select-none list-none',\n option: 'block cursor-pointer p-8',\n optionUnselected: 'hover:s-bg-hover',\n optionSelected: 's-bg-selected hover:s-bg-selected-hover',\n textMatch: 'font-bold',\n a11y: 'sr-only',\n};\n\nexport const attention = {\n base: 'border-2 relative flex items-start',\n tooltip: 's-bg-inverted border-[--w-s-color-background-inverted] shadow-m s-text-inverted-static rounded-4 py-6 px-8',\n callout: 'bg-[--w-color-callout-background] border-[--w-color-callout-border] s-text py-8 px-16 rounded-8',\n highlight: 'bg-[--w-color-callout-background] border-[--w-color-callout-border] s-text py-8 px-16 rounded-8 drop-shadow-m translate-z-0',\n popover:\n 'bg-[--w-s-color-surface-elevated-300] border-[--w-s-color-surface-elevated-300] s-text rounded-8 p-16 drop-shadow-m translate-z-0',\n\n arrowBase: 'absolute h-[14px] w-[14px] border-2 border-b-0 border-r-0 rounded-tl-4 transform',\n arrowDirectionLeftStart: '-left-[8px]',\n arrowDirectionLeft: '-left-[8px]',\n arrowDirectionLeftEnd: '-left-[8px]',\n arrowDirectionRightStart: '-right-[8px]',\n arrowDirectionRight: '-right-[8px]',\n arrowDirectionRightEnd: '-right-[8px]',\n arrowDirectionBottomStart: '-bottom-[8px]',\n arrowDirectionBottom: '-bottom-[8px]',\n arrowDirectionBottomEnd: '-bottom-[8px]',\n arrowDirectionTopStart: '-top-[8px]',\n arrowDirectionTop: '-top-[8px]',\n arrowDirectionTopEnd: '-top-[8px]',\n arrowTooltip: 's-bg-inverted border-[--w-s-color-background-inverted]',\n arrowCallout: 'bg-[--w-color-callout-background] border-[--w-color-callout-border]',\n arrowPopover: 'bg-[--w-s-color-surface-elevated-300] border-[--w-s-color-surface-elevated-300]',\n arrowHighlight: 'bg-[--w-color-callout-background] border-[--w-color-callout-border]',\n\n content: 'last-child:mb-0',\n notCallout: 'absolute z-50',\n closeBtn: `${buttonTextSizes.medium} ${buttonTypes.pill} ${buttonColors.pill} justify-self-end -mr-8 ml-8`,\n};\n\nexport const pagination = {\n link: 'hover:no-underline focus:no-underline focusable inline-flex justify-center items-center transition-colors ease-in-out min-h-[44px] min-w-[44px] p-4 rounded-full border-0 hover:bg-clip-padding',\n currentPage: 'block md:hidden p-8 font-bold',\n icon: 's-icon hover:bg-[--w-color-button-pill-background-hover] active:bg-[--w-color-button-pill-background-active]',\n containerNav: 'flex items-center justify-center p-8',\n a11y: 'sr-only',\n pages: 'hidden md:block s-text-link',\n active: 's-bg-primary s-text-inverted',\n notActive: 'hover:bg-[--w-color-button-pill-background-hover] active:bg-[--w-color-button-pill-background-active]',\n};\n\n// remove these in v3\nexport const backwardsCompatibleClasses = {\n removedActiveTrack: 'top-[19px]',\n};\n", "import { classMap } from 'lit/directives/class-map.js';\n\nconst camelCaseToKebabCase = (str) => str.replace(/([a-z0-9])([A-Z])/g, '$1-$2').toLowerCase();\n\n// Source: https://medium.com/@dayton-bobbitt/generating-attributes-for-litelement-properties-f972ef658137\nexport function kebabCaseAttributes(constructor) {\n return class extends constructor {\n static createProperty(name, options) {\n let customOptions = options;\n\n // derive the attribute name if not already defined or disabled\n if (typeof options?.attribute === 'undefined' || options?.attribute === true) {\n customOptions = Object.assign({}, options, {\n attribute: camelCaseToKebabCase(name.toString()),\n });\n }\n\n super.createProperty(name, customOptions);\n }\n };\n}\n\nexport function classes(defn) {\n const classes = [];\n for (const [key, value] of Object.entries(defn)) {\n if (value) classes.push(key);\n }\n return classes.join(' ');\n}\n\nexport function fclasses(definition) {\n const defn = {};\n for (const [key, value] of Object.entries(definition)) {\n for (const className of key.split(' ')) {\n defn[className] = value;\n }\n }\n return classMap(defn);\n}\n\nexport function generateRandomId() {\n return `m${Math.random().toString(36).slice(2)}`;\n}\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["t", "n", "r"]
|
|
3
|
+
"sources": ["../../../packages/textfield/index.ts", "../../../node_modules/.pnpm/@chbphone55+classnames@2.0.0/node_modules/@chbphone55/classnames/dist/index.m.js", "../../../node_modules/.pnpm/@open-wc+form-control@1.0.0/node_modules/@open-wc/form-control/src/FormControlMixin.ts", "../../../packages/styles.ts", "../../../packages/textfield/styles/w-textfield.styles.ts", "../../../packages/textfield/styles.ts"],
|
|
4
|
+
"sourcesContent": ["// @warp-css;\n\nimport { LitElement, html, PropertyValues, nothing } from 'lit';\n\nimport { classNames as classnames } from '@chbphone55/classnames';\nimport { FormControlMixin } from '@open-wc/form-control';\nimport { property, query } from 'lit/decorators.js';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\n\nimport { reset } from '../styles.js';\n\nimport { wTextfieldStyles } from './styles/w-textfield.styles.js';\nimport { styles } from './styles.js';\n\nexport const ccinput = {\n // input classes\n base: 'block text-m leading-m mb-0 px-8 py-12 rounded-4 w-full focusable focus:[--w-outline-offset:-2px] caret-current', // true\n default: 'border-1 s-text s-bg s-border-strong hover:s-border-strong-hover active:s-border-selected', // !isInvalid && !isDisabled && !isReadOnly\n disabled: 'border-1 s-text-disabled s-bg-disabled-subtle s-border-disabled pointer-events-none', // !isInvalid && isDisabled && !isReadOnly\n invalid: 'border-1 s-text-negative s-bg s-border-negative hover:s-border-negative-hover outline-[--w-s-color-border-negative]!', // isInvalid && !isDisabled && !isReadOnly\n readOnly: 'pl-0 bg-transparent pointer-events-none', // !isInvalid && !isDisabled && isReadOnly\n placeholder: 'placeholder:s-text-placeholder',\n suffix: 'pr-40',\n prefix: 'pl-[var(--w-prefix-width,_40px)]',\n // textarea classes\n textArea: 'min-h-[42] sm:min-h-[45]',\n};\n\nexport const ccLabel = {\n base: 'antialiased block relative text-s font-bold pb-4 cursor-pointer s-text',\n optional: 'pl-8 font-normal text-s s-text-subtle',\n};\n\nexport const ccHelpText = {\n base: 'text-xs mt-4 block',\n color: 's-text-subtle',\n colorInvalid: 's-text-negative',\n};\n\n/**\n * A single line text input element.\n *\n * [See Storybook for usage examples](https://warp-ds.github.io/elements/?path=/docs/forms-textfield--docs)\n */\nclass WarpTextField extends FormControlMixin(LitElement) {\n static shadowRootOptions = {\n ...LitElement.shadowRootOptions,\n delegatesFocus: true,\n };\n\n @property({ type: Boolean, reflect: true })\n disabled: boolean;\n\n @property({ type: Boolean, reflect: true })\n invalid: boolean;\n\n @property({ type: String, reflect: true })\n id: string;\n\n @property({ type: String, reflect: true })\n label: string;\n\n @property({ type: String, reflect: true, attribute: 'help-text' })\n helpText: string;\n\n @property({ type: String, reflect: true })\n size: string;\n\n @property({ type: Number, reflect: true })\n max: number;\n\n @property({ type: Number, reflect: true })\n min: number;\n\n @property({ type: Number, reflect: true, attribute: 'min-length' })\n minLength: number;\n\n @property({ type: Number, reflect: true, attribute: 'max-length' })\n maxLength: number;\n\n @property({ type: String, reflect: true })\n pattern: string;\n\n @property({ type: String, reflect: true })\n placeholder: string;\n\n @property({ type: Boolean, reflect: true, attribute: 'read-only' })\n readOnly: boolean;\n\n @property({ type: Boolean, reflect: true })\n required: boolean;\n\n @property({ type: String, reflect: true })\n type = 'text';\n\n @property({ type: String, reflect: true })\n value: string;\n\n @property({ type: String, reflect: true })\n name: string;\n\n /**\n * Function to format value when the input field.\n *\n * Only active when the input field does not have focus,\n * similar to the accessible input masking example from Filament Group\n *\n * https://css-tricks.com/input-masking/\n * https://filamentgroup.github.io/politespace/demo/demo.html\n */\n @property({ attribute: false })\n formatter: (value: string) => string;\n\n /** @internal */\n @query('.w-textfield__mask')\n mask: HTMLDivElement;\n\n /** @internal */\n @property({ type: Boolean })\n _hasPrefix = false;\n\n /** @internal */\n @property({ type: Boolean })\n _hasSuffix = false;\n\n updated(changedProperties: PropertyValues<this>) {\n if (changedProperties.has('value')) {\n this.setValue(this.value);\n }\n if (this.formatter && this.value) {\n this.mask.innerText = this.formatter(this.value);\n }\n }\n\n // Note about styling slotted elements:\n // https://developer.mozilla.org/en-US/docs/Web/CSS/::slotted\n // https://developer.mozilla.org/en-US/docs/Web/Web_Components/Using_shadow_DOM#styling_slotted_elements\n // Slotted elements remain in lightDOM which allows for control of their style outside of shadowDOM.\n // ::slotted([Simple Selector]) confirms to Specificity rules, but (being simple) does not add weight to lightDOM skin selectors,\n // so never gets higher Specificity. Thus in order to overwrite style linked within shadowDOM, we need to use !important.\n // https://stackoverflow.com/a/61631668\n static styles = [reset, styles, wTextfieldStyles];\n\n /** @internal */\n get _inputstyles() {\n return classnames([\n ccinput.base,\n this._hasSuffix && ccinput.suffix,\n this._hasPrefix && ccinput.prefix,\n !this.invalid && !this.disabled && !this.readOnly && ccinput.default,\n this.invalid && !this.disabled && !this.readOnly && ccinput.invalid,\n !this.invalid && this.disabled && !this.readOnly && ccinput.disabled,\n !this.invalid && !this.disabled && this.readOnly && ccinput.readOnly,\n ]);\n }\n\n /** @internal */\n get _helptextstyles() {\n return classnames([ccHelpText.base, this.invalid ? ccHelpText.colorInvalid : ccHelpText.color]);\n }\n\n /** @internal */\n get _label() {\n if (this.label) {\n return html`<label for=\"${this._id}\" class=${ccLabel.base}>${this.label}</label>`;\n }\n return undefined;\n }\n\n /** @internal */\n get _helpId() {\n if (this.helpText) return `${this._id}__hint`;\n return undefined;\n }\n\n /** @internal */\n get _id() {\n return 'textfield';\n }\n\n /** @internal */\n get _error() {\n if (this.invalid && this._helpId) return this._helpId;\n return undefined;\n }\n\n handler(e: Event) {\n const { name, value } = e.currentTarget as HTMLInputElement;\n this.value = value;\n const event = new CustomEvent(e.type, {\n detail: {\n name,\n value,\n target: e.target,\n },\n });\n this.dispatchEvent(event);\n }\n\n prefixSlotChange() {\n const el: HTMLSlotElement = this.renderRoot.querySelector('slot[name=prefix]');\n const affixes = el.assignedElements();\n if (affixes.length) this._hasPrefix = true;\n }\n\n suffixSlotChange() {\n const el: HTMLSlotElement = this.renderRoot.querySelector('slot[name=suffix]');\n const affixes = el.assignedElements();\n if (affixes.length) this._hasSuffix = true;\n }\n\n render() {\n return html`\n ${this._label}\n <div\n class=\"${classMap({\n 'w-textfield': true,\n // This could likely be replaced in the future by\n // https://developer.mozilla.org/en-US/docs/Web/CSS/:has-slotted\n 'w-textfield--has-prefix': this._hasPrefix,\n 'w-textfield--has-suffix': this._hasSuffix,\n })}\">\n <slot @slotchange=\"${this.prefixSlotChange}\" name=\"prefix\"></slot>\n <div class=\"w-textfield__input-wrapper\">\n ${this.formatter ? html`<div class=\"w-textfield__mask\"></div>` : nothing}\n <input\n class=\"${this._inputstyles}\"\n type=\"${this.type}\"\n min=\"${ifDefined(this.min)}\"\n max=\"${ifDefined(this.max)}\"\n size=\"${ifDefined(this.size)}\"\n minlength=\"${ifDefined(this.minLength)}\"\n maxlength=\"${ifDefined(this.maxLength)}\"\n name=\"${ifDefined(this.name)}\"\n pattern=\"${ifDefined(this.pattern)}\"\n placeholder=\"${ifDefined(this.placeholder)}\"\n .value=\"${this.value || ''}\"\n aria-describedby=\"${ifDefined(this._helpId || (this.ariaDescription ? 'aria-description' : undefined))}\"\n aria-errormessage=\"${ifDefined(this._error)}\"\n aria-invalid=\"${ifDefined(this.invalid)}\"\n id=\"${this._id}\"\n ?disabled=\"${this.disabled}\"\n ?readonly=\"${this.readOnly}\"\n ?required=\"${this.required}\"\n @blur=\"${this.handler}\"\n @change=\"${this.handler}\"\n @input=\"${this.handler}\"\n @focus=\"${this.handler}\" />\n </div>\n <slot @slotchange=\"${this.suffixSlotChange}\" name=\"suffix\"></slot>\n </div>\n <span class=\"sr-only\" id=\"aria-description\">${this.ariaDescription}</span>\n ${this.helpText && html`<div class=\"${this._helptextstyles}\" id=\"${this._helpId}\">${this.helpText}</div>`}\n `;\n }\n}\n\nif (!customElements.get('w-textfield')) {\n customElements.define('w-textfield', WarpTextField);\n}\n\nexport { WarpTextField };\n", "var r=function(){for(var t=[],n=arguments.length;n--;)t[n]=arguments[n];return t.reduce(function(t,n){return t.concat(\"string\"==typeof n?n:Array.isArray(n)?r.apply(void 0,n):\"object\"==typeof n&&n?Object.keys(n).map(function(r){return n[r]?r:\"\"}):\"\")},[]).join(\" \")};export{r as classNames};\n", "import { Constructor, CustomValidityState, FormControlInterface, FormValue, IControlHost, validationMessageCallback, Validator } from './types.js';\n\nexport function FormControlMixin<\n TBase extends Constructor<HTMLElement & IControlHost> & { observedAttributes?: string [] }\n>(SuperClass: TBase) {\n class FormControl extends SuperClass {\n /** Wires up control instances to be form associated */\n static get formAssociated(): boolean {\n return true;\n }\n\n /**\n * A list of Validator objects that will be evaluated when a control's form\n * value is modified or optionally when a given attribute changes.\n *\n * When a Validator's callback returns false, the entire form control will\n * be set to an invalid state.\n */\n declare static formControlValidators: Validator[];\n\n /**\n * If set to true the control described should be evaluated and validated\n * as part of a group. Like a radio, if any member of the group's validity\n * changes the the other members should update as well.\n */\n declare static formControlValidationGroup: boolean;\n\n private static get validators(): Validator[] {\n return this.formControlValidators || [];\n }\n\n /**\n * Allows the FormControl instance to respond to Validator attributes.\n * For instance, if a given Validator has a `required` attribute, that\n * validator will be evaluated whenever the host's required attribute\n * is updated.\n */\n static get observedAttributes(): string[] {\n const validatorAttributes = this.validators.map((validator) => validator.attribute).flat();\n\n const observedAttributes = super.observedAttributes || [];\n\n /** Make sure there are no duplicates inside the attributes list */\n const attributeSet = new Set([...observedAttributes, ...validatorAttributes]);\n return [...attributeSet] as string[];\n }\n\n /**\n * Return the validator associated with a given attribute. If no\n * Validator is associated with the attribute, it will return null.\n */\n static getValidator(attribute: string): Validator | null {\n return this.validators.find((validator) => validator.attribute === attribute) || null;\n }\n\n /**\n * Get all validators that are set to react to a given attribute\n * @param {string} attribute - The attribute that has changed\n * @returns {Validator[]}\n */\n static getValidators(attribute: string): Validator[] | null {\n return this.validators.filter(validator => {\n if (validator.attribute === attribute || validator.attribute?.includes(attribute)) {\n return true;\n }\n });\n }\n\n /** The ElementInternals instance for the control. */\n internals = this.attachInternals();\n\n /**\n * Keep track of if the control has focus\n * @private\n */\n #focused = false;\n\n /**\n * Exists to control when an error should be displayed\n * @private\n */\n #forceError = false;\n\n /**\n * Toggles to true whenever the element has been focused. This property\n * will reset whenever the control's formResetCallback is called.\n * @private\n */\n #touched = false;\n\n /** An internal abort controller for cancelling pending async validation */\n #abortController?: AbortController;\n #previousAbortController?: AbortController;\n\n /**\n * Used for tracking if a validation target has been set to manage focus\n * when the control's validity is reported\n */\n #awaitingValidationTarget = true;\n\n /** All of the controls within a root with a matching local name and form name */\n get #formValidationGroup(): NodeListOf<FormControl> {\n const rootNode = this.getRootNode() as HTMLElement;\n const selector = `${this.localName}[name=\"${this.getAttribute('name')}\"]`;\n return rootNode.querySelectorAll<FormControl>(selector);\n }\n\n /**\n * Acts as a cache for the current value so the value can be re-evaluated\n * whenever an attribute changes or on some other event.\n */\n #value: FormValue = '';\n\n /**\n * Set this[touched] and this[focused]\n * to true when the element is focused\n * @private\n */\n #onFocus = (): void => {\n this.#touched = true;\n this.#focused = true;\n this.#shouldShowError();\n };\n\n /**\n * Reset this[focused] on blur\n * @private\n */\n #onBlur = (): void => {\n this.#focused = false;\n\n this.#runValidators(this.shouldFormValueUpdate() ? this.#value : '');\n\n /**\n * Set forceError to ensure error messages persist until\n * the value is changed.\n */\n if (!this.validity.valid && this.#touched) {\n this.#forceError = true;\n }\n const showError = this.#shouldShowError();\n if (this.validationMessageCallback) {\n this.validationMessageCallback(showError ? this.internals.validationMessage : '');\n }\n };\n\n /**\n * For the show error state on invalid\n * @private\n */\n #onInvalid = (): void => {\n if (this.#awaitingValidationTarget && this.validationTarget) {\n this.internals.setValidity(\n this.validity,\n this.validationMessage,\n this.validationTarget\n );\n this.#awaitingValidationTarget = false;\n }\n this.#touched = true;\n this.#forceError = true;\n this.#shouldShowError();\n this?.validationMessageCallback?.(this.showError ? this.internals.validationMessage : '');\n };\n\n /** Return a reference to the control's form */\n get form(): HTMLFormElement {\n return this.internals.form;\n }\n\n /**\n * Will return true if it is recommended that the control shows an internal\n * error. If using this property, it is wise to listen for 'invalid' events\n * on the element host and call preventDefault on the event. Doing this will\n * prevent browsers from showing a validation popup.\n */\n get showError(): boolean {\n return this.#shouldShowError();\n }\n\n /**\n * Forward the internals checkValidity method\n * will return the valid state of the control.\n */\n checkValidity(): boolean {\n return this.internals.checkValidity();\n }\n\n /** The element's validity state */\n get validity(): ValidityState {\n return this.internals.validity;\n }\n\n /**\n * The validation message shown by a given Validator object. If the control\n * is in a valid state this should be falsy.\n */\n get validationMessage(): string {\n return this.internals.validationMessage;\n }\n\n /* eslint-disable @typescript-eslint/no-explicit-any */\n constructor(...args: any[]) {\n super(...args);\n this.addEventListener?.('focus', this.#onFocus);\n this.addEventListener?.('blur', this.#onBlur);\n this.addEventListener?.('invalid', this.#onInvalid);\n this.setValue(null);\n }\n\n attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n super.attributeChangedCallback?.(name, oldValue, newValue);\n\n /**\n * Check to see if a Validator is associated with the changed attribute.\n * If one exists, call control's validate function which will perform\n * control validation.\n */\n const proto = this.constructor as typeof FormControl;\n const validators = proto.getValidators(name);\n\n if (validators?.length && this.validationTarget) {\n this.setValue(this.#value);\n }\n }\n\n /** PUBLIC LIFECYCLE METHODS */\n\n /**\n * Sets the control's form value if the call to `shouldFormValueUpdate`\n * returns `true`.\n * @param value {FormValue} - The value to pass to the form\n */\n setValue(value: FormValue): void {\n this.#forceError = false;\n this.validationMessageCallback?.('');\n this.#value = value;\n const valueShouldUpdate = this.shouldFormValueUpdate();\n const valueToUpdate = valueShouldUpdate ? value : null;\n this.internals.setFormValue(valueToUpdate as string);\n this.#runValidators(valueToUpdate);\n if (this.valueChangedCallback) {\n this.valueChangedCallback(valueToUpdate);\n }\n this.#shouldShowError();\n }\n\n /**\n * This method can be overridden to determine if the control's form value\n * should be set on a call to `setValue`. An example of when a user might want\n * to skip this step is when implementing checkbox-like behavior, first checking\n * to see if `this.checked` is set to a truthy value. By default this returns\n * `true`.\n */\n shouldFormValueUpdate(): boolean {\n return true;\n }\n\n /** Save a reference to the validation complete resolver */\n #validationCompleteResolver?: (value: void | PromiseLike<void>) => void;\n\n /** When true validation will be pending */\n #isValidationPending = false;\n\n #validationComplete = Promise.resolve();\n\n /** A promise that will resolve when all pending validations are complete */\n get validationComplete(): Promise<void> {\n return new Promise(resolve => resolve(this.#validationComplete));\n }\n\n /** DECLARED INSTANCE METHODS AND PROPERTIES*/\n\n /**\n * Resets a form control to its initial state\n */\n declare resetFormControl: () => void;\n\n /**\n * This method is used to override the controls' validity message\n * for a given Validator key. This has the highest level of priority when\n * setting a validationMessage, so use this method wisely.\n *\n * The returned value will be used as the validationMessage for the given key.\n * @param validationKey {string} - The key that has returned invalid\n */\n declare validityCallback: (validationKey: string) => string | void;\n\n /**\n * Called when the control's validationMessage should be changed\n * @param message { string } - The new validation message\n */\n declare validationMessageCallback: (message: string) => void;\n\n /**\n * A callback for when the controls' form value changes. The value\n * passed to this function should not be confused with the control's\n * value property, this is the value that will appear on the form.\n *\n * In cases where `checked` did not exist on the control's prototype\n * upon initialization, this value and the value property will be identical;\n * in cases where `checked` is present upon initialization, this will be\n * effectively `this.checked && this.value`.\n */\n declare valueChangedCallback: (value: FormValue) => void;\n\n /**\n * The element that will receive focus when the control's validity\n * state is reported either by a form submission or via API\n *\n * We use declare since this is optional and we don't particularly\n * care how the consuming component implements this (as a field, member\n * or getter/setter)\n */\n declare validationTarget: HTMLElement | null;\n\n /** PRIVATE LIFECYCLE METHODS */\n\n /**\n * Check to see if an error should be shown. This method will also\n * update the internals state object with the --show-error state\n * if necessary.\n * @private\n */\n #shouldShowError(): boolean {\n if (this.hasAttribute('disabled')) {\n return false;\n }\n\n const showError = this.#forceError || (this.#touched && !this.validity.valid && !this.#focused);\n\n /**\n * At the time of writing Firefox doesn't support states\n * TODO: Remove when check for states when fully support is in place\n */\n if (showError && this.internals.states) {\n this.internals.states.add('--show-error');\n } else if (this.internals.states) {\n this.internals.states.delete('--show-error');\n }\n\n return showError;\n }\n\n #runValidators(value: FormValue): void {\n const proto = this.constructor as typeof FormControl;\n const validity: CustomValidityState = {};\n const validators = proto.validators;\n const asyncValidators: Promise<boolean|void>[] = [];\n const hasAsyncValidators = validators.some((validator) => validator.isValid instanceof Promise)\n\n if (!this.#isValidationPending) {\n this.#validationComplete = new Promise(resolve => {\n this.#validationCompleteResolver = resolve\n });\n this.#isValidationPending = true;\n }\n\n /**\n * If an abort controller exists from a previous validation step\n * notify still-running async validators that we are requesting they\n * discontinue any work.\n */\n if (this.#abortController) {\n this.#abortController.abort();\n this.#previousAbortController = this.#abortController;\n }\n\n /**\n * Create a new abort controller and replace the instance reference\n * so we can clean it up for next time\n */\n const abortController = new AbortController();\n this.#abortController = abortController;\n let validationMessage: string | undefined = undefined;\n\n /** Track to see if any validity key has changed */\n let hasChange = false;\n\n if (!validators.length) {\n return;\n }\n\n validators.forEach(validator => {\n const key = validator.key || 'customError';\n const isValid = validator.isValid(this, value, abortController.signal);\n const isAsyncValidator = isValid instanceof Promise;\n\n if (isAsyncValidator) {\n asyncValidators.push(isValid);\n\n isValid.then(isValidatorValid => {\n if (isValidatorValid === undefined || isValidatorValid === null) {\n return;\n }\n /** Invert the validity state to correspond to the ValidityState API */\n validity[key] = !isValidatorValid;\n\n validationMessage = this.#getValidatorMessageForValue(validator, value);\n this.#setValidityWithOptionalTarget(validity, validationMessage);\n });\n } else {\n /** Invert the validity state to correspond to the ValidityState API */\n validity[key] = !isValid;\n\n if (this.validity[key] !== !isValid) {\n hasChange = true;\n }\n\n // only update the validationMessage for the first invalid scenario\n // so that earlier invalid validators dont get their messages overwritten by later ones\n // in the validators array\n if (!isValid && !validationMessage) {\n validationMessage = this.#getValidatorMessageForValue(validator, value);\n }\n }\n });\n\n /** Once all the async validators have settled, resolve validationComplete */\n Promise.allSettled(asyncValidators)\n .then(() => {\n /** Don't resolve validations if the signal is aborted */\n if (!abortController?.signal.aborted) {\n this.#isValidationPending = false;\n this.#validationCompleteResolver?.();\n }\n });\n\n /**\n * If async validators are present:\n * Only run updates when a sync validator has a change. This is to prevent\n * situations where running sync validators can override async validators\n * that are still in progress\n *\n * If async validators are not present, always update validity\n */\n if (hasChange || !hasAsyncValidators) {\n this.#setValidityWithOptionalTarget(validity, validationMessage);\n }\n }\n\n /**\n * If the validationTarget is not set, the user can decide how they would\n * prefer to handle focus when the field is validated.\n */\n #setValidityWithOptionalTarget(validity: Partial<ValidityState>, validationMessage: string|undefined): void {\n if (this.validationTarget) {\n this.internals.setValidity(validity, validationMessage, this.validationTarget);\n this.#awaitingValidationTarget = false;\n } else {\n this.internals.setValidity(validity, validationMessage);\n\n if (this.internals.validity.valid) {\n return;\n }\n\n /**\n * Sets mark the component as awaiting a validation target\n * if the element dispatches an invalid event, the #onInvalid listener\n * will check to see if the validation target has been set since this call\n * has run. This useful in cases like Lit's use of the query\n * decorator for setting the validationTarget or any scenario\n * where the validationTarget isn't available upon construction\n */\n this.#awaitingValidationTarget = true;\n }\n }\n\n /** Process the validator message attribute */\n #getValidatorMessageForValue(validator: Validator, value: FormValue): string {\n /** If the validity callback exists and returns, use that as the result */\n if (this.validityCallback) {\n const message = this.validityCallback(validator.key || 'customError');\n\n if (message) {\n return message;\n }\n }\n\n if (validator.message instanceof Function) {\n return (validator.message as validationMessageCallback)(this, value);\n } else {\n return validator.message as string;\n }\n }\n\n /** Reset control state when the form is reset */\n formResetCallback() {\n this.#touched = false;\n this.#forceError = false;\n this.#shouldShowError();\n this.resetFormControl?.();\n\n this.validationMessageCallback?.(\n this.#shouldShowError() ? this.validationMessage : ''\n );\n }\n }\n\n return FormControl as Constructor<FormControlInterface> & TBase;\n}\n", "import { css } from 'lit';\n\nexport const reset = css`\n *,\n :before,\n :after {\n box-sizing: border-box;\n border-style: solid;\n border-width: 0;\n border-color: var(--w-s-color-border);\n }\n html {\n font-size: 62.5%;\n }\n body {\n background-color: var(--w-s-color-background);\n min-height: 100%;\n margin: 0;\n overflow-y: scroll;\n }\n body,\n :host {\n -webkit-text-size-adjust: 100%;\n tab-size: 4;\n -webkit-tap-highlight-color: transparent;\n font-family: var(--w-font-family);\n font-size: var(--w-font-size-m);\n line-height: var(--w-line-height-m);\n color: var(--w-s-color-text);\n }\n hr {\n color: inherit;\n border-top-width: 1px;\n height: 0;\n }\n abbr:where([title]) {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n }\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n font-size: inherit;\n font-weight: 700;\n }\n a {\n cursor: pointer;\n color: var(--w-s-color-text-link);\n text-decoration: none;\n }\n a:hover,\n a:focus,\n a:active {\n text-decoration: underline;\n }\n a:focus-visible {\n outline: 2px solid var(--w-s-color-border-focus);\n outline-offset: 1px;\n }\n b,\n strong {\n font-weight: 700;\n }\n code,\n kbd,\n samp,\n pre {\n font-family:\n ui-monospace,\n SFMono-Regular,\n Menlo,\n Monaco,\n Consolas,\n Liberation Mono,\n Courier New,\n monospace;\n font-size: 1em;\n }\n sub,\n sup {\n vertical-align: baseline;\n font-size: 75%;\n line-height: 0;\n position: relative;\n }\n sub {\n bottom: -0.25em;\n }\n sup {\n top: -0.5em;\n }\n table {\n text-indent: 0;\n border-color: inherit;\n border-collapse: collapse;\n }\n button,\n input,\n optgroup,\n select,\n textarea {\n font-family: inherit;\n font-size: 100%;\n font-weight: inherit;\n line-height: inherit;\n color: inherit;\n margin: 0;\n padding: 0;\n }\n button,\n select {\n text-transform: none;\n }\n button,\n [type='button'],\n [type='reset'],\n [type='submit'] {\n -webkit-appearance: button;\n }\n :-moz-focusring {\n outline: auto;\n }\n :-moz-ui-invalid {\n box-shadow: none;\n }\n progress {\n vertical-align: baseline;\n }\n ::-webkit-inner-spin-button {\n height: auto;\n }\n ::-webkit-outer-spin-button {\n height: auto;\n }\n [type='search'] {\n -webkit-appearance: textfield;\n outline-offset: -2px;\n }\n ::-webkit-search-decoration {\n -webkit-appearance: none;\n }\n ::-webkit-file-upload-button {\n -webkit-appearance: button;\n font: inherit;\n }\n summary {\n display: list-item;\n }\n blockquote,\n dl,\n dd,\n h1,\n h2,\n h3,\n h4,\n h5,\n h6,\n hr,\n figure,\n p,\n pre {\n margin: 0;\n }\n fieldset {\n margin: 0;\n padding: 0;\n }\n legend {\n padding: 0;\n }\n ol,\n ul,\n menu {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n textarea {\n resize: vertical;\n }\n input::placeholder,\n textarea::placeholder {\n opacity: 1;\n color: var(--w-s-color-text-placeholder);\n }\n button,\n [role='button'] {\n cursor: pointer;\n }\n :disabled {\n cursor: default;\n }\n img,\n svg,\n video,\n canvas,\n audio,\n iframe,\n embed,\n object {\n vertical-align: middle;\n display: block;\n }\n img,\n video {\n max-width: 100%;\n height: auto;\n }\n h1 {\n font-size: var(--w-font-size-xxl);\n line-height: var(--w-line-height-xxl);\n }\n h2 {\n font-size: var(--w-font-size-xl);\n line-height: var(--w-line-height-xl);\n }\n h3 {\n font-size: var(--w-font-size-l);\n line-height: var(--w-line-height-l);\n }\n h4 {\n font-size: var(--w-font-size-m);\n line-height: var(--w-line-height-m);\n }\n h5 {\n font-size: var(--w-font-size-s);\n line-height: var(--w-line-height-s);\n }\n dt,\n dd {\n margin: 0 16px;\n }\n h1,\n h2,\n h3,\n h4,\n h5,\n ul,\n ol,\n dl,\n p,\n blockquote {\n margin: 0 0 8px;\n }\n [hidden] {\n display: none !important;\n }\n [tabindex='-1']:focus:not(:focus-visible) {\n outline: none;\n }\n legend {\n float: left;\n width: 100%;\n margin: 0;\n padding: 0;\n display: table;\n }\n legend + * {\n clear: both;\n }\n fieldset {\n border: 0;\n min-width: 0;\n margin: 0;\n padding: 0.01em 0 0;\n }\n body:not(:-moz-handler-blocked) fieldset {\n display: table-cell;\n }\n svg {\n pointer-events: none;\n }\n`;\nexport const components = css`*, :before, :after {\n --w-rotate: 0;\n --w-rotate-x: 0;\n --w-rotate-y: 0;\n --w-rotate-z: 0;\n --w-scale-x: 1;\n --w-scale-y: 1;\n --w-scale-z: 1;\n --w-skew-x: 0;\n --w-skew-y: 0;\n --w-translate-x: 0;\n --w-translate-y: 0;\n --w-translate-z: 0\n }\n\n .h4, .t4 {\n font-weight: 700;\n font-size: var(--w-font-size-m);\n line-height: var(--w-line-height-m)\n }\n\n .t3 {\n font-weight: 700;\n font-size: var(--w-font-size-l);\n line-height: var(--w-line-height-l)\n }\n\n @media (min-width: 480px) {\n .sm\\\\:h3 {\n font-weight: 700;\n font-size: var(--w-font-size-l);\n line-height: var(--w-line-height-l)\n }\n }\n\n .text-center {\n text-align: center\n }\n\n .before\\\\:text-center:before {\n text-align: center\n }\n\n .text-left {\n text-align: left\n }\n\n .text-right {\n text-align: right\n }\n\n .align-middle {\n vertical-align: middle\n }\n\n .animate-inprogress {\n background-image: linear-gradient(135deg, rgba(0, 0, 0, .05) 25%, transparent 0, transparent 50%, rgba(0, 0, 0, .05) 0, rgba(0, 0, 0, .05) 75%, transparent 0, transparent) !important;\n background-size: 30px 30px;\n animation: animate-inprogress 3s linear infinite\n }\n\n @keyframes animate-inprogress {\n 0% {\n background-position: 0 0\n }\n to {\n background-position: 60px 0\n }\n }\n\n .\\\\[--w-modal-max-height\\\\:80\\\\%\\\\] {\n --w-modal-max-height: 80%\n }\n\n .\\\\[--w-modal-width\\\\:640px\\\\] {\n --w-modal-width: 640px\n }\n\n .focus\\\\:\\\\[--w-outline-offset\\\\:-2px\\\\]:focus {\n --w-outline-offset: -2px\n }\n\n .backdrop-blur {\n -webkit-backdrop-filter: blur(4px);\n backdrop-filter: blur(4px)\n }\n\n .peer:checked ~ .peer-checked\\\\:before\\\\:bg-center:before {\n background-position: center\n }\n\n .hover\\\\:bg-clip-padding:hover {\n -webkit-background-clip: padding-box;\n background-clip: padding-box\n }\n\n .bg-transparent, .group\\\\/steph:first-child .group-first\\\\/steph\\\\:bg-transparent, .group\\\\/steph:last-child .group-last\\\\/steph\\\\:bg-transparent {\n background-color: transparent\n }\n\n .bg-\\\\[--w-black\\\\/25\\\\] {\n background-color: rgba(var(--w-rgb-black), .25)\n }\n\n .bg-\\\\[--w-black\\\\/70\\\\], .bg-\\\\[var\\\\(--w-black\\\\)\\\\/70\\\\] {\n background-color: rgba(var(--w-rgb-black), .7)\n }\n\n .bg-\\\\[--w-color-badge-info-background\\\\] {\n background-color: var(--w-color-badge-info-background)\n }\n\n .bg-\\\\[--w-color-badge-negative-background\\\\] {\n background-color: var(--w-color-badge-negative-background)\n }\n\n .bg-\\\\[--w-color-badge-neutral-background\\\\] {\n background-color: var(--w-color-badge-neutral-background)\n }\n\n .bg-\\\\[--w-color-badge-positive-background\\\\] {\n background-color: var(--w-color-badge-positive-background)\n }\n\n .bg-\\\\[--w-color-badge-sponsored-background\\\\] {\n background-color: var(--w-color-badge-sponsored-background)\n }\n\n .bg-\\\\[--w-color-badge-warning-background\\\\] {\n background-color: var(--w-color-badge-warning-background)\n }\n\n .bg-\\\\[--w-color-button-primary-background\\\\] {\n background-color: var(--w-color-button-primary-background)\n }\n\n .bg-\\\\[--w-color-buttongroup-utility-background-selected\\\\] {\n background-color: var(--w-color-buttongroup-utility-background-selected)\n }\n\n .bg-\\\\[--w-color-callout-background\\\\] {\n background-color: var(--w-color-callout-background)\n }\n\n .bg-\\\\[--w-color-pill-suggestion-background\\\\] {\n background-color: var(--w-color-pill-suggestion-background)\n }\n\n .bg-\\\\[--w-color-switch-track-background\\\\] {\n background-color: var(--w-color-switch-track-background)\n }\n\n .bg-\\\\[--w-s-color-surface-elevated-100\\\\] {\n background-color: var(--w-s-color-surface-elevated-100)\n }\n\n .bg-\\\\[--w-s-color-surface-elevated-300\\\\] {\n background-color: var(--w-s-color-surface-elevated-300)\n }\n\n .bg-\\\\[--w-s-icon-selected\\\\] {\n background-color: var(--w-s-icon-selected)\n }\n\n .group:hover .group-hover\\\\:bg-\\\\[--w-color-switch-track-background-hover\\\\] {\n background-color: var(--w-color-switch-track-background-hover)\n }\n\n .hover\\\\:bg-\\\\[--w-color-button-pill-background-hover\\\\]:hover {\n background-color: var(--w-color-button-pill-background-hover)\n }\n\n .hover\\\\:bg-\\\\[--w-color-button-primary-background-hover\\\\]:hover {\n background-color: var(--w-color-button-primary-background-hover)\n }\n\n .hover\\\\:bg-\\\\[--w-color-buttongroup-utility-background-hover\\\\]:hover {\n background-color: var(--w-color-buttongroup-utility-background-hover)\n }\n\n .hover\\\\:bg-\\\\[--w-color-pill-suggestion-background-hover\\\\]:hover {\n background-color: var(--w-color-pill-suggestion-background-hover)\n }\n\n .hover\\\\:bg-\\\\[--w-s-icon-subtle\\\\]:hover {\n background-color: var(--w-s-icon-subtle)\n }\n\n .hover\\\\:bg-\\\\[var\\\\(--w-black\\\\)\\\\/85\\\\]:hover {\n background-color: rgba(var(--w-rgb-black), .85)\n }\n\n .active\\\\:bg-\\\\[--w-color-button-pill-background-active\\\\]:active {\n background-color: var(--w-color-button-pill-background-active)\n }\n\n .active\\\\:bg-\\\\[--w-color-button-primary-background-active\\\\]:active {\n background-color: var(--w-color-button-primary-background-active)\n }\n\n .active\\\\:bg-\\\\[--w-color-buttongroup-utility-background-selected\\\\]:active {\n background-color: var(--w-color-buttongroup-utility-background-selected)\n }\n\n .active\\\\:bg-\\\\[--w-color-pill-suggestion-background-active\\\\]:active {\n background-color: var(--w-color-pill-suggestion-background-active)\n }\n\n .active\\\\:bg-\\\\[var\\\\(--w-black\\\\)\\\\]:active {\n background-color: var(--w-black)\n }\n\n .peer:checked ~ .peer-checked\\\\:before\\\\:bg-\\\\[url\\\\(var\\\\(--w-icon-toggle-checked\\\\)\\\\)\\\\]:before {\n background-image: var(--w-icon-toggle-checked)\n }\n\n .appearance-none {\n -moz-appearance: none;\n appearance: none;\n -webkit-appearance: none\n }\n\n .will-change-height {\n will-change: height\n }\n\n .border, .border-1 {\n border-width: 1px\n }\n\n .border-b {\n border-bottom-width: 1px\n }\n\n .before\\\\:border:before {\n border-width: 1px\n }\n\n .border-0 {\n border-width: 0\n }\n\n .border-2 {\n border-width: 2px\n }\n\n .border-b-0 {\n border-bottom-width: 0\n }\n\n .border-b-4 {\n border-bottom-width: 4px\n }\n\n .border-l-4 {\n border-left-width: 4px\n }\n\n .border-r-0, .group:not(:last-of-type) .group-not-last-of-type\\\\:border-r-0 {\n border-right-width: 0\n }\n\n .peer:checked ~ .peer-checked\\\\:before\\\\:border-\\\\[6\\\\]:before {\n border-width: .6rem\n }\n\n .border-transparent {\n border-color: transparent\n }\n\n .border-\\\\[--w-color-buttongroup-utility-border\\\\] {\n border-color: var(--w-color-buttongroup-utility-border)\n }\n\n .border-\\\\[--w-color-callout-border\\\\] {\n border-color: var(--w-color-callout-border)\n }\n\n .border-\\\\[--w-s-color-background-inverted\\\\] {\n border-color: var(--w-s-color-background-inverted)\n }\n\n .border-\\\\[--w-s-color-surface-elevated-300\\\\] {\n border-color: var(--w-s-color-surface-elevated-300)\n }\n\n .active\\\\:border-\\\\[--w-color-buttongroup-utility-border-selected\\\\]:active {\n border-color: var(--w-color-buttongroup-utility-border-selected)\n }\n\n .divide-x > * + * {\n --w-divide-x-reverse: 0;\n border-left-width: calc(1px * calc(1 - var(--w-divide-x-reverse)));\n border-right-width: calc(1px * var(--w-divide-x-reverse))\n }\n\n .divide-y > * + * {\n --w-divide-y-reverse: 0;\n border-top-width: calc(1px * calc(1 - var(--w-divide-y-reverse)));\n border-bottom-width: calc(1px * var(--w-divide-y-reverse))\n }\n\n .rounded-4 {\n border-radius: 4px\n }\n\n .rounded-8 {\n border-radius: 8px\n }\n\n .rounded-full {\n border-radius: 9999px\n }\n\n .before\\\\:rounded-2:before {\n border-radius: 2px\n }\n\n .before\\\\:rounded-full:before {\n border-radius: 9999px\n }\n\n .rounded-b-0 {\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0\n }\n\n .rounded-bl-0 {\n border-bottom-left-radius: 0\n }\n\n .rounded-br-0 {\n border-bottom-right-radius: 0\n }\n\n .rounded-l-0 {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0\n }\n\n .rounded-l-full {\n border-top-left-radius: 9999px;\n border-bottom-left-radius: 9999px\n }\n\n .rounded-r-0 {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0\n }\n\n .rounded-r-full {\n border-top-right-radius: 9999px;\n border-bottom-right-radius: 9999px\n }\n\n .rounded-tl-0 {\n border-top-left-radius: 0\n }\n\n .rounded-tl-4 {\n border-top-left-radius: 4px\n }\n\n .rounded-tr-0 {\n border-top-right-radius: 0\n }\n\n .group:first-of-type .group-first-of-type\\\\:rounded-bl-8 {\n border-bottom-left-radius: 8px\n }\n\n .group:first-of-type .group-first-of-type\\\\:rounded-tl-8 {\n border-top-left-radius: 8px\n }\n\n .first\\\\:rounded-lb-4:first-child {\n border-bottom-left-radius: 4px\n }\n\n .first\\\\:rounded-lt-4:first-child {\n border-top-left-radius: 4px\n }\n\n .first\\\\:rounded-rt-4:first-child {\n border-top-right-radius: 4px\n }\n\n .group:last-of-type .group-last-of-type\\\\:rounded-br-8 {\n border-bottom-right-radius: 8px\n }\n\n .group:last-of-type .group-last-of-type\\\\:rounded-tr-8 {\n border-top-right-radius: 8px\n }\n\n .last\\\\:rounded-lb-4:last-child {\n border-bottom-left-radius: 4px\n }\n\n .last\\\\:rounded-rb-4:last-child {\n border-bottom-right-radius: 4px\n }\n\n .last\\\\:rounded-rt-4:last-child {\n border-top-right-radius: 4px\n }\n\n .caret-current {\n caret-color: currentColor\n }\n\n .opacity-25 {\n opacity: 25%\n }\n\n .block {\n display: block\n }\n\n .before\\\\:block:before {\n display: block\n }\n\n .inline-block {\n display: inline-block\n }\n\n .inline {\n display: inline\n }\n\n .flex, .open\\\\:flex[open] {\n display: flex\n }\n\n .inline-flex {\n display: inline-flex\n }\n\n .grid {\n display: grid\n }\n\n .inline-grid {\n display: inline-grid\n }\n\n .hidden, .group\\\\/stepv:last-child .group-last\\\\/stepv\\\\:hidden {\n display: none\n }\n\n .before\\\\:hidden:before {\n display: none\n }\n\n .hover\\\\:underline:hover {\n text-decoration-line: underline\n }\n\n .focus\\\\:underline:focus {\n text-decoration-line: underline\n }\n\n .focus-visible\\\\:underline:focus-visible {\n text-decoration-line: underline\n }\n\n .active\\\\:underline:active {\n text-decoration-line: underline\n }\n\n .hover\\\\:no-underline:hover {\n text-decoration: none\n }\n\n .focus\\\\:no-underline:focus {\n text-decoration: none\n }\n\n .active\\\\:no-underline:active {\n text-decoration: none\n }\n\n .flex-1 {\n flex: 1 1 0%\n }\n\n .shrink {\n flex-shrink: 1\n }\n\n .shrink-0 {\n flex-shrink: 0\n }\n\n .shrink-0\\\\! {\n flex-shrink: 0 !important\n }\n\n .grow, .grow-1 {\n flex-grow: 1\n }\n\n .basis-auto {\n flex-basis: auto\n }\n\n .flex-col {\n flex-direction: column\n }\n\n .focus-within\\\\:focusable:focus-within {\n outline: 2px solid var(--w-s-color-border-focus);\n outline-offset: var(--w-outline-offset, 1px)\n }\n\n .focusable:focus, .focusable:focus-visible {\n outline: 2px solid var(--w-s-color-border-focus);\n outline-offset: var(--w-outline-offset, 1px)\n }\n\n .focusable:not(:focus-visible) {\n outline: none\n }\n\n .peer:focus ~ .peer-focus\\\\:focusable, .peer:focus-visible ~ .peer-focus\\\\:focusable {\n outline: 2px solid var(--w-s-color-border-focus);\n outline-offset: var(--w-outline-offset, 1px)\n }\n\n .peer:not(:focus-visible) ~ .peer-focus\\\\:focusable {\n outline: none\n }\n\n .focusable-inset {\n --w-outline-offset: -3px\n }\n\n .gap-12 {\n gap: 1.2rem\n }\n\n .gap-8 {\n gap: .8rem\n }\n\n .gap-x-16 {\n column-gap: 1.6rem\n }\n\n .gap-y-16 {\n row-gap: 1.6rem\n }\n\n .row-span-2 {\n grid-row: span 2/span 2\n }\n\n .col-span-2 {\n grid-column: span 2/span 2\n }\n\n .col-span-3 {\n grid-column: span 3/span 3\n }\n\n .row-start-1 {\n grid-row-start: 1\n }\n\n .row-start-2 {\n grid-row-start: 2\n }\n\n .col-start-2 {\n grid-column-start: 2\n }\n\n .auto-rows-auto {\n grid-auto-rows: auto\n }\n\n .grid-flow-col {\n grid-auto-flow: column\n }\n\n .grid-rows-\\\\[20px_auto\\\\] {\n grid-template-rows:20px auto\n }\n\n .grid-rows-\\\\[auto_20px\\\\] {\n grid-template-rows:auto 20px\n }\n\n .grid-cols-\\\\[1fr_20px_1fr\\\\] {\n grid-template-columns:1fr 20px 1fr\n }\n\n .grid-cols-\\\\[1fr_20px\\\\] {\n grid-template-columns:1fr 20px\n }\n\n .grid-cols-\\\\[20px_1fr\\\\] {\n grid-template-columns:20px 1fr\n }\n\n .grid-cols-\\\\[auto_1fr_auto\\\\] {\n grid-template-columns:auto 1fr auto\n }\n\n .grid-cols-1 {\n grid-template-columns:repeat(1, minmax(0, 1fr))\n }\n\n .grid-cols-2 {\n grid-template-columns:repeat(2, minmax(0, 1fr))\n }\n\n .grid-cols-3 {\n grid-template-columns:repeat(3, minmax(0, 1fr))\n }\n\n .grid-cols-4 {\n grid-template-columns:repeat(4, minmax(0, 1fr))\n }\n\n .grid-cols-5 {\n grid-template-columns:repeat(5, minmax(0, 1fr))\n }\n\n .grid-cols-6 {\n grid-template-columns:repeat(6, minmax(0, 1fr))\n }\n\n .grid-cols-7 {\n grid-template-columns:repeat(7, minmax(0, 1fr))\n }\n\n .grid-cols-8 {\n grid-template-columns:repeat(8, minmax(0, 1fr))\n }\n\n .grid-cols-9 {\n grid-template-columns:repeat(9, minmax(0, 1fr))\n }\n\n .overflow-hidden {\n overflow: hidden\n }\n\n .overflow-x-hidden {\n overflow-x: hidden\n }\n\n .overflow-y-auto {\n overflow-y: auto\n }\n\n .list-none {\n list-style-type: none\n }\n\n .outline-\\\\[--w-s-color-border-negative\\\\]\\\\! {\n outline-color: var(--w-s-color-border-negative) !important\n }\n\n .outline-none {\n outline: 2px solid transparent;\n outline-offset: 2px\n }\n\n .focus\\\\:outline-none:focus {\n outline: 2px solid transparent;\n outline-offset: 2px\n }\n\n .items-start {\n align-items: flex-start\n }\n\n .items-end {\n align-items: flex-end\n }\n\n .items-center {\n align-items: center\n }\n\n .self-center {\n align-self: center\n }\n\n .inset-0 {\n top: 0rem;\n right: 0rem;\n bottom: 0rem;\n left: 0rem\n }\n\n .-bottom-0 {\n bottom: -0rem\n }\n\n .bottom-0 {\n bottom: 0rem\n }\n\n .bottom-10 {\n bottom: 1rem\n }\n\n .bottom-16 {\n bottom: 1.6rem\n }\n\n .left-0 {\n left: 0rem\n }\n\n .left-4 {\n left: .4rem\n }\n\n .right-0 {\n right: 0rem\n }\n\n .right-8 {\n right: .8rem\n }\n\n .top-\\\\[1\\\\.92rem\\\\] {\n top: 1.92rem\n }\n\n .top-0 {\n top: 0rem\n }\n\n .top-20 {\n top: 2rem\n }\n\n .top-4 {\n top: .4rem\n }\n\n .top-8 {\n top: .8rem\n }\n\n .before\\\\:bottom-0:before {\n bottom: 0rem\n }\n\n .before\\\\:left-0:before {\n left: 0rem\n }\n\n .before\\\\:right-0:before {\n right: 0rem\n }\n\n .before\\\\:top-2:before {\n top: .2rem\n }\n\n .-bottom-\\\\[8px\\\\] {\n bottom: -8px\n }\n\n .-left-\\\\[8px\\\\] {\n left: -8px\n }\n\n .-right-\\\\[8px\\\\] {\n right: -8px\n }\n\n .-top-\\\\[8px\\\\] {\n top: -8px\n }\n\n .top-\\\\[19px\\\\] {\n top: 19px\n }\n\n .top-\\\\[30\\\\%\\\\] {\n top: 30%\n }\n\n .justify-end {\n justify-content: flex-end\n }\n\n .justify-center {\n justify-content: center\n }\n\n .justify-between {\n justify-content: space-between\n }\n\n .justify-items-center {\n justify-items: center\n }\n\n .justify-self-start {\n justify-self: start\n }\n\n .justify-self-end {\n justify-self: end\n }\n\n .justify-self-center {\n justify-self: center\n }\n\n .absolute {\n position: absolute\n }\n\n .fixed {\n position: fixed\n }\n\n .relative {\n position: relative\n }\n\n .open\\\\:fixed[open] {\n position: fixed\n }\n\n .before\\\\:absolute:before {\n position: absolute\n }\n\n .z-10, .peer:checked ~ .peer-checked\\\\:z-10 {\n z-index: 10\n }\n\n .z-30 {\n z-index: 30\n }\n\n .z-50 {\n z-index: 50\n }\n\n .hover\\\\:z-30:hover {\n z-index: 30\n }\n\n .\\\\!s-bg-selected {\n background-color: var(--w-s-color-background-selected) !important\n }\n\n .s-bg {\n background-color: var(--w-s-color-background)\n }\n\n .s-bg-disabled {\n background-color: var(--w-s-color-background-disabled)\n }\n\n .s-bg-disabled-subtle {\n background-color: var(--w-s-color-background-disabled-subtle)\n }\n\n .s-bg-info-subtle {\n background-color: var(--w-s-color-background-info-subtle)\n }\n\n .s-bg-inverted {\n background-color: var(--w-s-color-background-inverted)\n }\n\n .s-bg-negative {\n background-color: var(--w-s-color-background-negative)\n }\n\n .s-bg-negative-subtle {\n background-color: var(--w-s-color-background-negative-subtle)\n }\n\n .s-bg-positive-subtle {\n background-color: var(--w-s-color-background-positive-subtle)\n }\n\n .s-bg-primary, .peer:checked ~ .peer-checked\\\\:s-bg-primary {\n background-color: var(--w-s-color-background-primary)\n }\n\n .s-bg-selected {\n background-color: var(--w-s-color-background-selected)\n }\n\n .s-bg-subtle {\n background-color: var(--w-s-color-background-subtle)\n }\n\n .s-bg-warning-subtle {\n background-color: var(--w-s-color-background-warning-subtle)\n }\n\n .peer:checked:hover ~ .peer-checked\\\\:peer-hover\\\\:before\\\\:s-bg-negative-hover:before {\n background-color: var(--w-s-color-background-negative-hover)\n }\n\n .peer:checked:hover ~ .peer-checked\\\\:peer-hover\\\\:before\\\\:s-bg-primary-hover:before {\n background-color: var(--w-s-color-background-primary-hover)\n }\n\n .peer:checked ~ .peer-checked\\\\:before\\\\:s-bg-disabled:before {\n background-color: var(--w-s-color-background-disabled)\n }\n\n .peer:checked ~ .peer-checked\\\\:before\\\\:s-bg-negative:before {\n background-color: var(--w-s-color-background-negative)\n }\n\n .peer:checked ~ .peer-checked\\\\:before\\\\:s-bg-primary:before {\n background-color: var(--w-s-color-background-primary)\n }\n\n .peer:indeterminate ~ .peer-indeterminate\\\\:before\\\\:s-bg-disabled:before {\n background-color: var(--w-s-color-background-disabled)\n }\n\n .peer:indeterminate ~ .peer-indeterminate\\\\:before\\\\:s-bg-negative:before {\n background-color: var(--w-s-color-background-negative)\n }\n\n .peer:indeterminate ~ .peer-indeterminate\\\\:before\\\\:s-bg-primary:before {\n background-color: var(--w-s-color-background-primary)\n }\n\n .peer:indeterminate ~ .peer-indeterminate\\\\:hover\\\\:before\\\\:s-bg-negative-hover:hover:before {\n background-color: var(--w-s-color-background-negative-hover)\n }\n\n .peer:indeterminate ~ .peer-indeterminate\\\\:hover\\\\:before\\\\:s-bg-primary-hover:hover:before {\n background-color: var(--w-s-color-background-primary-hover)\n }\n\n .\\\\!hover\\\\:s-bg-selected-hover:hover {\n background-color: var(--w-s-color-background-selected-hover) !important\n }\n\n .group:hover .group-hover\\\\:s-bg-primary-hover {\n background-color: var(--w-s-color-background-primary-hover)\n }\n\n .hover\\\\:before\\\\:s-bg-hover:hover:before {\n background-color: var(--w-s-color-background-hover)\n }\n\n .hover\\\\:before\\\\:s-bg-negative-subtle-hover:hover:before {\n background-color: var(--w-s-color-background-negative-subtle-hover)\n }\n\n .hover\\\\:s-bg-hover:hover {\n background-color: var(--w-s-color-background-hover)\n }\n\n .hover\\\\:s-bg-negative-hover:hover {\n background-color: var(--w-s-color-background-negative-hover)\n }\n\n .hover\\\\:s-bg-negative-subtle-hover:hover {\n background-color: var(--w-s-color-background-negative-subtle-hover)\n }\n\n .hover\\\\:s-bg-primary-hover:hover {\n background-color: var(--w-s-color-background-primary-hover)\n }\n\n .hover\\\\:s-bg-selected-hover:hover {\n background-color: var(--w-s-color-background-selected-hover)\n }\n\n .peer:hover:not(:checked) ~ .peer-hover\\\\:peer-not-checked\\\\:s-bg-hover {\n background-color: var(--w-s-color-background-hover)\n }\n\n .peer:hover ~ .peer-hover\\\\:before\\\\:s-bg-hover:before {\n background-color: var(--w-s-color-background-hover)\n }\n\n .peer:hover ~ .peer-hover\\\\:before\\\\:s-bg-negative-subtle:before {\n background-color: var(--w-s-color-background-negative-subtle)\n }\n\n .focus\\\\:s-bg-primary-hover:focus {\n background-color: var(--w-s-color-background-primary-hover)\n }\n\n .\\\\!active\\\\:s-bg-selected-active:active {\n background-color: var(--w-s-color-background-selected-active) !important\n }\n\n .active\\\\:s-bg-active:active {\n background-color: var(--w-s-color-background-active)\n }\n\n .active\\\\:s-bg-negative-active:active {\n background-color: var(--w-s-color-background-negative-active)\n }\n\n .active\\\\:s-bg-negative-subtle-active:active {\n background-color: var(--w-s-color-background-negative-subtle-active)\n }\n\n .active\\\\:s-bg-primary-active:active {\n background-color: var(--w-s-color-background-primary-active)\n }\n\n .active\\\\:s-bg-selected-active:active {\n background-color: var(--w-s-color-background-selected-active)\n }\n\n .before\\\\:s-bg-disabled-subtle:before {\n background-color: var(--w-s-color-background-disabled-subtle)\n }\n\n .before\\\\:s-bg:before {\n background-color: var(--w-s-color-background)\n }\n\n .s-text {\n color: var(--w-s-color-text)\n }\n\n .s-text-disabled {\n color: var(--w-s-color-text-disabled)\n }\n\n .s-text-inverted, .peer:checked ~ .peer-checked\\\\:s-text-inverted {\n color: var(--w-s-color-text-inverted)\n }\n\n .s-text-inverted-static {\n color: var(--w-s-color-text-inverted-static)\n }\n\n .s-text-link {\n color: var(--w-s-color-text-link)\n }\n\n .s-text-negative {\n color: var(--w-s-color-text-negative)\n }\n\n .s-text-subtle {\n color: var(--w-s-color-text-subtle)\n }\n\n .hover\\\\:s-text-link:hover {\n color: var(--w-s-color-text-link)\n }\n\n .active\\\\:s-text:active {\n color: var(--w-s-color-text)\n }\n\n .placeholder\\\\:s-text-placeholder::placeholder {\n color: var(--w-s-color-text-placeholder)\n }\n\n .s-icon {\n color: var(--w-s-color-icon)\n }\n\n .s-icon-info {\n color: var(--w-s-color-icon-info)\n }\n\n .s-icon-inverted {\n color: var(--w-s-color-icon-inverted)\n }\n\n .s-icon-negative {\n color: var(--w-s-color-icon-negative)\n }\n\n .s-icon-positive {\n color: var(--w-s-color-icon-positive)\n }\n\n .s-icon-warning {\n color: var(--w-s-color-icon-warning)\n }\n\n .hover\\\\:s-icon-hover:hover {\n color: var(--w-s-color-icon-hover)\n }\n\n .active\\\\:s-icon-active:active {\n color: var(--w-s-color-icon-active)\n }\n\n .before\\\\:s-icon-inverted:before {\n color: var(--w-s-color-icon-inverted)\n }\n\n .s-border {\n border-color: var(--w-s-color-border)\n }\n\n .s-border-disabled {\n border-color: var(--w-s-color-border-disabled)\n }\n\n .s-border-info-subtle {\n border-color: var(--w-s-color-border-info-subtle)\n }\n\n .s-border-l-info {\n border-left-color: var(--w-s-color-border-info)\n }\n\n .s-border-l-negative {\n border-left-color: var(--w-s-color-border-negative)\n }\n\n .s-border-l-positive {\n border-left-color: var(--w-s-color-border-positive)\n }\n\n .s-border-l-warning {\n border-left-color: var(--w-s-color-border-warning)\n }\n\n .s-border-negative {\n border-color: var(--w-s-color-border-negative)\n }\n\n .s-border-negative-subtle {\n border-color: var(--w-s-color-border-negative-subtle)\n }\n\n .s-border-positive-subtle {\n border-color: var(--w-s-color-border-positive-subtle)\n }\n\n .s-border-primary, .peer:checked ~ .peer-checked\\\\:s-border-primary {\n border-color: var(--w-s-color-border-primary)\n }\n\n .s-border-selected {\n border-color: var(--w-s-color-border-selected)\n }\n\n .s-border-warning-subtle {\n border-color: var(--w-s-color-border-warning-subtle)\n }\n\n .peer:checked:hover ~ .peer-checked\\\\:peer-hover\\\\:before\\\\:s-border-negative-hover:before {\n border-color: var(--w-s-color-border-negative-hover)\n }\n\n .peer:checked:hover ~ .peer-checked\\\\:peer-hover\\\\:before\\\\:s-border-primary-hover:before {\n border-color: var(--w-s-color-border-primary-hover)\n }\n\n .peer:checked:hover ~ .peer-checked\\\\:peer-hover\\\\:before\\\\:s-border-selected-hover:before {\n border-color: var(--w-s-color-border-selected-hover)\n }\n\n .peer:checked ~ .peer-checked\\\\:before\\\\:s-border-disabled:before {\n border-color: var(--w-s-color-border-disabled)\n }\n\n .peer:checked ~ .peer-checked\\\\:before\\\\:s-border-negative:before {\n border-color: var(--w-s-color-border-negative)\n }\n\n .peer:checked ~ .peer-checked\\\\:before\\\\:s-border-primary:before {\n border-color: var(--w-s-color-border-primary)\n }\n\n .peer:checked ~ .peer-checked\\\\:before\\\\:s-border-selected:before {\n border-color: var(--w-s-color-border-selected)\n }\n\n .peer:indeterminate ~ .peer-indeterminate\\\\:before\\\\:s-border-disabled:before {\n border-color: var(--w-s-color-border-disabled)\n }\n\n .peer:indeterminate ~ .peer-indeterminate\\\\:before\\\\:s-border-negative:before {\n border-color: var(--w-s-color-border-negative)\n }\n\n .peer:indeterminate ~ .peer-indeterminate\\\\:before\\\\:s-border-primary:before {\n border-color: var(--w-s-color-border-primary)\n }\n\n .peer:indeterminate ~ .peer-indeterminate\\\\:hover\\\\:before\\\\:s-border-negative-hover:hover:before {\n border-color: var(--w-s-color-border-negative-hover)\n }\n\n .peer:indeterminate ~ .peer-indeterminate\\\\:hover\\\\:before\\\\:s-border-primary-hover:hover:before {\n border-color: var(--w-s-color-border-primary-hover)\n }\n\n .group:hover .group-hover\\\\:s-border-selected-hover {\n border-color: var(--w-s-color-border-selected-hover)\n }\n\n .hover\\\\:before\\\\:s-border-negative-hover:hover:before {\n border-color: var(--w-s-color-border-negative-hover)\n }\n\n .hover\\\\:before\\\\:s-border-primary:hover:before {\n border-color: var(--w-s-color-border-primary)\n }\n\n .hover\\\\:s-border-disabled:hover {\n border-color: var(--w-s-color-border-disabled)\n }\n\n .hover\\\\:s-border-hover:hover {\n border-color: var(--w-s-color-border-hover)\n }\n\n .hover\\\\:s-border-negative-hover:hover {\n border-color: var(--w-s-color-border-negative-hover)\n }\n\n .hover\\\\:s-border-primary-hover:hover {\n border-color: var(--w-s-color-border-primary-hover)\n }\n\n .hover\\\\:s-border-primary:hover {\n border-color: var(--w-s-color-border-primary)\n }\n\n .hover\\\\:s-border-selected-hover:hover {\n border-color: var(--w-s-color-border-selected-hover)\n }\n\n .peer:hover ~ .peer-hover\\\\:before\\\\:s-border-negative-hover:before {\n border-color: var(--w-s-color-border-negative-hover)\n }\n\n .peer:hover ~ .peer-hover\\\\:before\\\\:s-border-primary:before {\n border-color: var(--w-s-color-border-primary)\n }\n\n .focus\\\\:s-border-primary-hover:focus {\n border-color: var(--w-s-color-border-primary-hover)\n }\n\n .active\\\\:s-border-active:active {\n border-color: var(--w-s-color-border-active)\n }\n\n .active\\\\:s-border-disabled:active {\n border-color: var(--w-s-color-border-disabled)\n }\n\n .active\\\\:s-border-primary-active:active {\n border-color: var(--w-s-color-border-primary-active)\n }\n\n .active\\\\:s-border-selected-active:active {\n border-color: var(--w-s-color-border-selected-active)\n }\n\n .active\\\\:s-border-selected:active {\n border-color: var(--w-s-color-border-selected)\n }\n\n .group:active .group-active\\\\:s-border-active {\n border-color: var(--w-s-color-border-active)\n }\n\n .group:active .group-active\\\\:s-border-selected-active {\n border-color: var(--w-s-color-border-selected-active)\n }\n\n .before\\\\:s-border-disabled:before {\n border-color: var(--w-s-color-border-disabled)\n }\n\n .before\\\\:s-border-negative:before {\n border-color: var(--w-s-color-border-negative)\n }\n\n .s-surface-sunken {\n background-color: var(--w-s-color-surface-sunken)\n }\n\n .s-surface-elevated-200 {\n background-color: var(--w-s-color-surface-elevated-200);\n box-shadow: var(--w-s-shadow-surface-elevated-200)\n }\n\n .hover\\\\:s-surface-elevated-200-hover:hover {\n background-color: var(--w-s-color-surface-elevated-200-hover);\n box-shadow: var(--w-s-shadow-surface-elevated-200-hover)\n }\n\n .active\\\\:s-surface-elevated-200-active:active {\n background-color: var(--w-s-color-surface-elevated-200-active);\n box-shadow: var(--w-s-shadow-surface-elevated-200-active)\n }\n\n .drop-shadow-m {\n filter: drop-shadow(rgba(64, 64, 64, .24) 0 3px 8px) drop-shadow(rgba(64, 64, 64, .16) 0 3px 6px)\n }\n\n .shadow-m {\n box-shadow: var(--w-shadow-m)\n }\n\n .shadow-s {\n box-shadow: var(--w-shadow-s)\n }\n\n .shadow-\\\\[--w-shadow-slider\\\\] {\n box-shadow: var(--w-shadow-slider)\n }\n\n .hover\\\\:shadow-\\\\[--w-shadow-slider-handle-hover\\\\]:hover {\n box-shadow: var(--w-shadow-slider-handle-hover)\n }\n\n .focus\\\\:shadow-\\\\[--w-shadow-slider-handle-hover\\\\]:focus {\n box-shadow: var(--w-shadow-slider-handle-hover)\n }\n\n .active\\\\:shadow-\\\\[--w-shadow-slider-handle-active\\\\]:active {\n box-shadow: var(--w-shadow-slider-handle-active)\n }\n\n .h-0 {\n height: 0rem\n }\n\n .h-16 {\n height: 1.6rem\n }\n\n .h-2 {\n height: .2rem\n }\n\n .h-20 {\n height: 2rem\n }\n\n .h-24 {\n height: 2.4rem\n }\n\n .h-4 {\n height: .4rem\n }\n\n .h-44 {\n height: 4.4rem\n }\n\n .h-6 {\n height: .6rem\n }\n\n .h-8 {\n height: .8rem\n }\n\n .h-full {\n height: 100%\n }\n\n .h-unset {\n height: unset\n }\n\n .max-h-unset {\n max-height: unset\n }\n\n .max-w-full {\n max-width: 100%\n }\n\n .max-w-max {\n max-width: max-content\n }\n\n .max-w-unset {\n max-width: unset\n }\n\n .min-h-32 {\n min-height: 3.2rem\n }\n\n .min-h-40 {\n min-height: 4rem\n }\n\n .min-w-16 {\n min-width: 1.6rem\n }\n\n .min-w-32 {\n min-width: 3.2rem\n }\n\n .w-16 {\n width: 1.6rem\n }\n\n .w-2 {\n width: .2rem\n }\n\n .w-20 {\n width: 2rem\n }\n\n .w-24 {\n width: 2.4rem\n }\n\n .w-32 {\n width: 3.2rem\n }\n\n .w-40 {\n width: 4rem\n }\n\n .w-44 {\n width: 4.4rem\n }\n\n .w-8 {\n width: .8rem\n }\n\n .w-full {\n width: 100%\n }\n\n .w-max {\n width: max-content\n }\n\n .w-unset {\n width: unset\n }\n\n .before\\\\:h-20:before {\n height: 2rem\n }\n\n .before\\\\:h-full:before {\n height: 100%\n }\n\n .before\\\\:w-20:before {\n width: 2rem\n }\n\n .before\\\\:w-32:before {\n width: 3.2rem\n }\n\n .h-\\\\[--w-modal-height\\\\] {\n height: var(--w-modal-height)\n }\n\n .h-\\\\[14px\\\\] {\n height: 14px\n }\n\n .h-\\\\[16px\\\\] {\n height: 16px\n }\n\n .max-h-\\\\[--w-modal-max-height\\\\] {\n max-height: var(--w-modal-max-height)\n }\n\n .min-h-\\\\[--w-modal-min-height\\\\] {\n min-height: var(--w-modal-min-height)\n }\n\n .min-h-\\\\[32px\\\\] {\n min-height: 32px\n }\n\n .min-h-\\\\[40px\\\\] {\n min-height: 40px\n }\n\n .min-h-\\\\[42\\\\] {\n min-height: 4.2rem\n }\n\n .min-h-\\\\[44px\\\\] {\n min-height: 44px\n }\n\n .min-w-\\\\[32px\\\\] {\n min-width: 32px\n }\n\n .min-w-\\\\[40px\\\\] {\n min-width: 40px\n }\n\n .min-w-\\\\[44px\\\\] {\n min-width: 44px\n }\n\n .w-\\\\[--w-modal-width\\\\] {\n width: var(--w-modal-width)\n }\n\n .w-\\\\[14px\\\\] {\n width: 14px\n }\n\n .w-\\\\[16px\\\\] {\n width: 16px\n }\n\n .space-x-8 > :not([hidden]) ~ :not([hidden]) {\n --w-space-x-reverse: 0;\n margin-left: calc(.8rem * calc(1 - var(--w-space-x-reverse)));\n margin-right: calc(.8rem * var(--w-space-x-reverse))\n }\n\n .space-y-16 > :not([hidden]) ~ :not([hidden]) {\n --w-space-y-reverse: 0;\n margin-top: calc(1.6rem * calc(1 - var(--w-space-y-reverse)));\n margin-bottom: calc(1.6rem * var(--w-space-y-reverse))\n }\n\n .m-0 {\n margin: 0rem\n }\n\n .m-auto {\n margin: auto\n }\n\n .-mx-16 {\n margin-left: -1.6rem;\n margin-right: -1.6rem\n }\n\n .mx-0 {\n margin-left: 0rem;\n margin-right: 0rem\n }\n\n .mx-8 {\n margin-left: .8rem;\n margin-right: .8rem\n }\n\n .mx-auto {\n margin-left: auto;\n margin-right: auto\n }\n\n .-mb-1 {\n margin-bottom: -.1rem\n }\n\n .-ml-8 {\n margin-left: -.8rem\n }\n\n .-mr-1 {\n margin-right: -.1rem\n }\n\n .-mr-8 {\n margin-right: -.8rem\n }\n\n .-mt-2 {\n margin-top: -.2rem\n }\n\n .-mt-4 {\n margin-top: -.4rem\n }\n\n .last-child\\\\:mb-0 > :last-child, .mb-0 {\n margin-bottom: 0rem\n }\n\n .mb-32 {\n margin-bottom: 3.2rem\n }\n\n .ml-8 {\n margin-left: .8rem\n }\n\n .ml-auto {\n margin-left: auto\n }\n\n .mr-8 {\n margin-right: .8rem\n }\n\n .mt-16 {\n margin-top: 1.6rem\n }\n\n .mt-4 {\n margin-top: .4rem\n }\n\n .group:not(:first-child) .group-not-first\\\\:-ml-2 {\n margin-left: -.2rem\n }\n\n .last\\\\:mb-0:last-child {\n margin-bottom: 0rem\n }\n\n .last\\\\:mr-0:last-child {\n margin-right: 0rem\n }\n\n .m-\\\\[8px\\\\] {\n margin: 8px\n }\n\n .p-0 {\n padding: 0rem\n }\n\n .p-16 {\n padding: 1.6rem\n }\n\n .p-4 {\n padding: .4rem\n }\n\n .p-8 {\n padding: .8rem\n }\n\n .px-0 {\n padding-left: 0rem;\n padding-right: 0rem\n }\n\n .px-1 {\n padding-left: .1rem;\n padding-right: .1rem\n }\n\n .px-12 {\n padding-left: 1.2rem;\n padding-right: 1.2rem\n }\n\n .px-14 {\n padding-left: 1.4rem;\n padding-right: 1.4rem\n }\n\n .px-16 {\n padding-left: 1.6rem;\n padding-right: 1.6rem\n }\n\n .px-8 {\n padding-left: .8rem;\n padding-right: .8rem\n }\n\n .py-0 {\n padding-top: 0rem;\n padding-bottom: 0rem\n }\n\n .py-1 {\n padding-top: .1rem;\n padding-bottom: .1rem\n }\n\n .py-10 {\n padding-top: 1rem;\n padding-bottom: 1rem\n }\n\n .py-12 {\n padding-top: 1.2rem;\n padding-bottom: 1.2rem\n }\n\n .py-2 {\n padding-top: .2rem;\n padding-bottom: .2rem\n }\n\n .py-4 {\n padding-top: .4rem;\n padding-bottom: .4rem\n }\n\n .py-6 {\n padding-top: .6rem;\n padding-bottom: .6rem\n }\n\n .py-8 {\n padding-top: .8rem;\n padding-bottom: .8rem\n }\n\n .pb-0 {\n padding-bottom: 0rem\n }\n\n .pb-32 {\n padding-bottom: 3.2rem\n }\n\n .pb-4 {\n padding-bottom: .4rem\n }\n\n .pb-8 {\n padding-bottom: .8rem\n }\n\n .pl-0 {\n padding-left: 0rem\n }\n\n .pl-1 {\n padding-left: .1rem\n }\n\n .pl-12 {\n padding-left: 1.2rem\n }\n\n .pl-28 {\n padding-left: 2.8rem\n }\n\n .pl-4 {\n padding-left: .4rem\n }\n\n .pl-8 {\n padding-left: .8rem\n }\n\n .pr-12 {\n padding-right: 1.2rem\n }\n\n .pr-14 {\n padding-right: 1.4rem\n }\n\n .pr-2 {\n padding-right: .2rem\n }\n\n .pr-32 {\n padding-right: 3.2rem\n }\n\n .pr-40 {\n padding-right: 4rem\n }\n\n .pt-0 {\n padding-top: 0rem\n }\n\n .pt-1 {\n padding-top: .1rem\n }\n\n .pt-16 {\n padding-top: 1.6rem\n }\n\n .pt-24 {\n padding-top: 2.4rem\n }\n\n .pt-8 {\n padding-top: .8rem\n }\n\n .group\\\\/step:last-child .group-last\\\\/step\\\\:last\\\\:pb-0:last-child {\n padding-bottom: 0rem\n }\n\n .last\\\\:pb-1:last-child {\n padding-bottom: .1rem\n }\n\n .last\\\\:pr-1:last-child {\n padding-right: .1rem\n }\n\n .p-\\\\[8px\\\\] {\n padding: 8px\n }\n\n .px-\\\\[15px\\\\] {\n padding-left: 15px;\n padding-right: 15px\n }\n\n .px-\\\\[8px\\\\] {\n padding-left: 8px;\n padding-right: 8px\n }\n\n .py-\\\\[11px\\\\] {\n padding-top: 11px;\n padding-bottom: 11px\n }\n\n .py-\\\\[5px\\\\] {\n padding-top: 5px;\n padding-bottom: 5px\n }\n\n .py-\\\\[7px\\\\] {\n padding-top: 7px;\n padding-bottom: 7px\n }\n\n .pl-\\\\[var\\\\(--w-prefix-width\\\\,_40px\\\\)\\\\] {\n padding-left: var(--w-prefix-width, 40px)\n }\n\n .invisible {\n visibility: hidden\n }\n\n .backface-hidden {\n backface-visibility: hidden\n }\n\n .break-words {\n overflow-wrap: break-word\n }\n\n .before\\\\:content-\\\\[\\\\\"\u00E2\u20AC\u201C\\\\\"\\\\]:before {\n content: \"\u00E2\u20AC\u201C\"\n }\n\n .before\\\\:content-\\\\[\\\\\"\\\\\"\\\\]:before {\n content: \"\"\n }\n\n .cursor-default {\n cursor: default\n }\n\n .cursor-pointer {\n cursor: pointer\n }\n\n .antialiased {\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n font-smoothing: grayscale\n }\n\n .font-bold {\n font-weight: 700\n }\n\n .before\\\\:font-bold:before {\n font-weight: 700\n }\n\n .font-normal {\n font-weight: 400\n }\n\n .pointer-events-auto {\n pointer-events: auto\n }\n\n .pointer-events-none {\n pointer-events: none\n }\n\n .before\\\\:pointer-events-none:before {\n pointer-events: none\n }\n\n .pb-safe-\\\\[32\\\\] {\n padding-bottom: calc(32px + env(safe-area-inset-bottom, 0px))\n }\n\n .sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border-width: 0\n }\n\n .touch-pan-y {\n touch-action: pan-y\n }\n\n .select-none {\n -webkit-user-select: none;\n user-select: none\n }\n\n .translate-x-20 {\n --w-translate-x: 2rem;\n transform: translate(var(--w-translate-x)) translateY(var(--w-translate-y)) translateZ(var(--w-translate-z)) rotate(var(--w-rotate)) rotateX(var(--w-rotate-x)) rotateY(var(--w-rotate-y)) rotate(var(--w-rotate-z)) skew(var(--w-skew-x)) skewY(var(--w-skew-y)) scaleX(var(--w-scale-x)) scaleY(var(--w-scale-y)) scaleZ(var(--w-scale-z))\n }\n\n .translate-z-0 {\n --w-translate-z: 0rem;\n transform: translate(var(--w-translate-x)) translateY(var(--w-translate-y)) translateZ(var(--w-translate-z)) rotate(var(--w-rotate)) rotateX(var(--w-rotate-x)) rotateY(var(--w-rotate-y)) rotate(var(--w-rotate-z)) skew(var(--w-skew-x)) skewY(var(--w-skew-y)) scaleX(var(--w-scale-x)) scaleY(var(--w-scale-y)) scaleZ(var(--w-scale-z))\n }\n\n .-rotate-180, .part-\\\\[w-icon-chevron-down-16-part\\\\]\\\\:-rotate-180::part(w-icon-chevron-down-16-part) {\n --w-rotate-x: 0;\n --w-rotate-y: 0;\n --w-rotate-z: 0;\n --w-rotate: -180deg;\n transform: translate(var(--w-translate-x)) translateY(var(--w-translate-y)) translateZ(var(--w-translate-z)) rotate(var(--w-rotate)) rotateX(var(--w-rotate-x)) rotateY(var(--w-rotate-y)) rotate(var(--w-rotate-z)) skew(var(--w-skew-x)) skewY(var(--w-skew-y)) scaleX(var(--w-scale-x)) scaleY(var(--w-scale-y)) scaleZ(var(--w-scale-z))\n }\n\n .part-\\\\[w-icon-chevron-up-16-part\\\\]\\\\:rotate-180::part(w-icon-chevron-up-16-part), .rotate-180 {\n --w-rotate-x: 0;\n --w-rotate-y: 0;\n --w-rotate-z: 0;\n --w-rotate: 180deg;\n transform: translate(var(--w-translate-x)) translateY(var(--w-translate-y)) translateZ(var(--w-translate-z)) rotate(var(--w-rotate)) rotateX(var(--w-rotate-x)) rotateY(var(--w-rotate-y)) rotate(var(--w-rotate-z)) skew(var(--w-skew-x)) skewY(var(--w-skew-y)) scaleX(var(--w-scale-x)) scaleY(var(--w-scale-y)) scaleZ(var(--w-scale-z))\n }\n\n .rotate-90 {\n --w-rotate-x: 0;\n --w-rotate-y: 0;\n --w-rotate-z: 0;\n --w-rotate: 90deg;\n transform: translate(var(--w-translate-x)) translateY(var(--w-translate-y)) translateZ(var(--w-translate-z)) rotate(var(--w-rotate)) rotateX(var(--w-rotate-x)) rotateY(var(--w-rotate-y)) rotate(var(--w-rotate-z)) skew(var(--w-skew-x)) skewY(var(--w-skew-y)) scaleX(var(--w-scale-x)) scaleY(var(--w-scale-y)) scaleZ(var(--w-scale-z))\n }\n\n .part-\\\\[w-icon-chevron-down-16-part\\\\]\\\\:transform::part(w-icon-chevron-down-16-part), .part-\\\\[w-icon-chevron-up-16-part\\\\]\\\\:transform::part(w-icon-chevron-up-16-part), .transform {\n transform: translate(var(--w-translate-x)) translateY(var(--w-translate-y)) translateZ(var(--w-translate-z)) rotate(var(--w-rotate)) rotateX(var(--w-rotate-x)) rotateY(var(--w-rotate-y)) rotate(var(--w-rotate-z)) skew(var(--w-skew-x)) skewY(var(--w-skew-y)) scaleX(var(--w-scale-x)) scaleY(var(--w-scale-y)) scaleZ(var(--w-scale-z))\n }\n\n .part-\\\\[w-icon-chevron-down-16-part\\\\]\\\\:transform-gpu::part(w-icon-chevron-down-16-part), .part-\\\\[w-icon-chevron-up-16-part\\\\]\\\\:transform-gpu::part(w-icon-chevron-up-16-part), .transform-gpu {\n transform: translate3d(var(--w-translate-x), var(--w-translate-y), var(--w-translate-z)) rotate(var(--w-rotate)) rotateX(var(--w-rotate-x)) rotateY(var(--w-rotate-y)) rotate(var(--w-rotate-z)) skew(var(--w-skew-x)) skewY(var(--w-skew-y)) scaleX(var(--w-scale-x)) scaleY(var(--w-scale-y)) scaleZ(var(--w-scale-z))\n }\n\n .part-\\\\[w-icon-chevron-down-16-part\\\\]\\\\:transition-transform::part(w-icon-chevron-down-16-part), .part-\\\\[w-icon-chevron-up-16-part\\\\]\\\\:transition-transform::part(w-icon-chevron-up-16-part), .transition-transform {\n transition-property: transform;\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n transition-duration: .15s\n }\n\n .transition-300 {\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n transition-duration: .3s\n }\n\n .transition-all {\n transition-property: all;\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n transition-duration: .15s\n }\n\n .transition-colors {\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n transition-duration: .15s\n }\n\n .transition-shadow {\n transition-property: box-shadow;\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n transition-duration: .15s\n }\n\n .before\\\\:transition-all:before {\n transition-property: all;\n transition-timing-function: cubic-bezier(.4, 0, .2, 1);\n transition-duration: .15s\n }\n\n .duration-300 {\n transition-duration: .3s\n }\n\n .ease-in-out, .part-\\\\[w-icon-chevron-down-16-part\\\\]\\\\:ease-in-out::part(w-icon-chevron-down-16-part), .part-\\\\[w-icon-chevron-up-16-part\\\\]\\\\:ease-in-out::part(w-icon-chevron-up-16-part) {\n transition-timing-function: cubic-bezier(.4, 0, .2, 1)\n }\n\n .text-m {\n font-size: var(--w-font-size-m);\n line-height: var(--w-line-height-m)\n }\n\n .text-s {\n font-size: var(--w-font-size-s);\n line-height: var(--w-line-height-s)\n }\n\n .text-xs {\n font-size: var(--w-font-size-xs);\n line-height: var(--w-line-height-xs)\n }\n\n .leading-m {\n line-height: var(--w-line-height-m)\n }\n\n .before\\\\:leading-xs:before {\n line-height: var(--w-line-height-xs)\n }\n\n .leading-\\\\[24\\\\] {\n line-height: 2.4rem\n }\n\n @media (max-width: 479.9px) {\n .lt-sm\\\\:rounded-b-0 {\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0\n }\n }\n @media (min-width: 480px) {\n .sm\\\\:border-b-0 {\n border-bottom-width: 0\n }\n\n .sm\\\\:rounded-8 {\n border-radius: 8px\n }\n\n .sm\\\\:rounded-b-8 {\n border-bottom-left-radius: 8px;\n border-bottom-right-radius: 8px\n }\n\n .sm\\\\:gap-16 {\n gap: 1.6rem\n }\n\n .sm\\\\:place-content-center {\n place-content: center\n }\n\n .sm\\\\:place-items-center {\n place-items: center\n }\n\n .sm\\\\:h-24 {\n height: 2.4rem\n }\n\n .sm\\\\:min-h-48 {\n min-height: 4.8rem\n }\n\n .sm\\\\:w-24 {\n width: 2.4rem\n }\n\n .sm\\\\:min-h-\\\\[32px\\\\] {\n min-height: 32px\n }\n\n .sm\\\\:min-h-\\\\[44px\\\\] {\n min-height: 44px\n }\n\n .sm\\\\:min-h-\\\\[45\\\\] {\n min-height: 4.5rem\n }\n\n .sm\\\\:min-w-\\\\[32px\\\\] {\n min-width: 32px\n }\n\n .sm\\\\:min-w-\\\\[44px\\\\] {\n min-width: 44px\n }\n\n .sm\\\\:mx-0 {\n margin-left: 0rem;\n margin-right: 0rem\n }\n\n .sm\\\\:mx-16 {\n margin-left: 1.6rem;\n margin-right: 1.6rem\n }\n\n .sm\\\\:-ml-12 {\n margin-left: -1.2rem\n }\n\n .sm\\\\:-mr-12 {\n margin-right: -1.2rem\n }\n\n .sm\\\\:-mt-8 {\n margin-top: -.8rem\n }\n\n .sm\\\\:px-32 {\n padding-left: 3.2rem;\n padding-right: 3.2rem\n }\n\n .sm\\\\:py-0 {\n padding-top: 0rem;\n padding-bottom: 0rem\n }\n\n .sm\\\\:pb-32 {\n padding-bottom: 3.2rem\n }\n\n .sm\\\\:pt-24 {\n padding-top: 2.4rem\n }\n\n .sm\\\\:pt-32 {\n padding-top: 3.2rem\n }\n }\n @media (min-width: 768px) {\n .md\\\\:block {\n display: block\n }\n\n .md\\\\:hidden {\n display: none\n }\n }\n `;\n", "import { css } from 'lit';\n\n/* For some reason the pseudoselectors for webkit and moz must be separate blocks :shrug: */\n\nexport const wTextfieldStyles = css`\n .w-textfield {\n --_input-padding-top: 12px;\n --_input-padding-left: 8px;\n --_input-padding-right: 8px;\n position: relative;\n }\n\n .w-textfield--has-prefix {\n --_input-padding-left: 40px;\n }\n\n .w-textfield--has-suffix {\n --_input-padding-right: var(--w-prefix-width, 40px);\n }\n\n .w-textfield__input-wrapper {\n position: relative;\n overflow: hidden;\n }\n\n .w-textfield__input-wrapper:focus-within .w-textfield__mask {\n display: none;\n }\n\n /* Could also consider giving the input mask a background color instead of this */\n .w-textfield__input-wrapper:has(.w-textfield__mask):not(:focus-within) input {\n color: transparent;\n }\n\n .w-textfield__mask {\n display: block;\n border: 1px solid transparent;\n top: var(--_input-padding-top);\n left: var(--_input-padding-left);\n right: var(--_input-padding-right);\n position: absolute;\n pointer-events: none;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n z-index: 1;\n }\n`;\n", "import { css } from 'lit'; export const styles = css`*,:before,:after{--w-rotate:0;--w-rotate-x:0;--w-rotate-y:0;--w-rotate-z:0;--w-scale-x:1;--w-scale-y:1;--w-scale-z:1;--w-skew-x:0;--w-skew-y:0;--w-translate-x:0;--w-translate-y:0;--w-translate-z:0}.focus\\\\:\\\\[--w-outline-offset\\\\:-2px\\\\]:focus{--w-outline-offset:-2px}.bg-transparent{background-color:#0000}.border-1{border-width:1px}.rounded-4{border-radius:4px}.caret-current{caret-color:currentColor}.block{display:block}.focusable:focus{outline:2px solid var(--w-s-color-border-focus);outline-offset:var(--w-outline-offset,1px)}.focusable:focus-visible{outline:2px solid var(--w-s-color-border-focus);outline-offset:var(--w-outline-offset,1px)}.focusable:not(:focus-visible){outline:none}.outline-\\\\[--w-s-color-border-negative\\\\]\\\\!{outline-color:var(--w-s-color-border-negative)!important}.relative{position:relative}.static{position:static}.s-bg{background-color:var(--w-s-color-background)}.s-bg-disabled-subtle{background-color:var(--w-s-color-background-disabled-subtle)}.s-text{color:var(--w-s-color-text)}.s-text-disabled{color:var(--w-s-color-text-disabled)}.s-text-negative{color:var(--w-s-color-text-negative)}.s-text-subtle{color:var(--w-s-color-text-subtle)}.placeholder\\\\:s-text-placeholder::placeholder{color:var(--w-s-color-text-placeholder)}.s-border{border-color:var(--w-s-color-border)}.s-border-disabled{border-color:var(--w-s-color-border-disabled)}.s-border-negative{border-color:var(--w-s-color-border-negative)}.hover\\\\:s-border-hover:hover{border-color:var(--w-s-color-border-hover)}.hover\\\\:s-border-negative-hover:hover{border-color:var(--w-s-color-border-negative-hover)}.active\\\\:s-border-selected:active{border-color:var(--w-s-color-border-selected)}.w-full{width:100%}.min-h-\\\\[42\\\\]{min-height:4.2rem}.mb-0{margin-bottom:0}.mt-4{margin-top:.4rem}.px-8{padding-left:.8rem;padding-right:.8rem}.py-12{padding-top:1.2rem;padding-bottom:1.2rem}.pb-4{padding-bottom:.4rem}.pl-0{padding-left:0}.pl-8{padding-left:.8rem}.pr-40{padding-right:4rem}.pl-\\\\[var\\\\(--w-prefix-width\\\\,_40px\\\\)\\\\]{padding-left:var(--w-prefix-width,40px)}.cursor-pointer{cursor:pointer}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-smoothing:grayscale}.font-bold{font-weight:700}.font-normal{font-weight:400}.pointer-events-none{pointer-events:none}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.text-m{font-size:var(--w-font-size-m);line-height:var(--w-line-height-m)}.text-s{font-size:var(--w-font-size-s);line-height:var(--w-line-height-s)}.text-xs{font-size:var(--w-font-size-xs);line-height:var(--w-line-height-xs)}.leading-m{line-height:var(--w-line-height-m)}@media (min-width:480px){.sm\\\\:min-h-\\\\[45\\\\]{min-height:4.5rem}}`;\n"],
|
|
5
|
+
"mappings": "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AAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAkRRE,GAAaF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAA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",
|
|
6
|
+
"names": ["LitElement", "html", "nothing", "r", "t", "n", "FormControlMixin", "SuperClass", "FormControl", "args", "_FormControl_focused", "_FormControl_forceError", "_FormControl_touched", "_FormControl_abortController", "_FormControl_previousAbortController", "_FormControl_awaitingValidationTarget", "_FormControl_value", "_FormControl_onFocus", "__classPrivateFieldSet", "__classPrivateFieldGet", "_FormControl_instances", "_FormControl_shouldShowError", "_FormControl_onBlur", "_FormControl_runValidators", "showError", "_FormControl_onInvalid", "_a", "_FormControl_validationCompleteResolver", "_FormControl_isValidationPending", "_FormControl_validationComplete", "_b", "_c", "validatorAttributes", "validator", "observedAttributes", "attribute", "name", "oldValue", "newValue", "validators", "value", "valueToUpdate", "resolve", "rootNode", "selector", "proto", "validity", "asyncValidators", "hasAsyncValidators", "abortController", "validationMessage", "hasChange", "key", "isValid", "isValidatorValid", "_FormControl_getValidatorMessageForValue", "_FormControl_setValidityWithOptionalTarget", "message", "property", "query", "classMap", "ifDefined", "css", "reset", "components", "css", "wTextfieldStyles", "css", "styles", "ccinput", "ccLabel", "ccHelpText", "WarpTextField", "FormControlMixin", "LitElement", "changedProperties", "r", "html", "e", "name", "value", "event", "classMap", "nothing", "ifDefined", "reset", "styles", "wTextfieldStyles", "__decorateClass", "property", "query"]
|
|
7
7
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const wTextfieldStyles: import("lit").CSSResult;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { css } from 'lit';
|
|
2
|
+
/* For some reason the pseudoselectors for webkit and moz must be separate blocks :shrug: */
|
|
3
|
+
export const wTextfieldStyles = css `
|
|
4
|
+
.w-textfield {
|
|
5
|
+
--_input-padding-top: 12px;
|
|
6
|
+
--_input-padding-left: 8px;
|
|
7
|
+
--_input-padding-right: 8px;
|
|
8
|
+
position: relative;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
.w-textfield--has-prefix {
|
|
12
|
+
--_input-padding-left: 40px;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.w-textfield--has-suffix {
|
|
16
|
+
--_input-padding-right: var(--w-prefix-width, 40px);
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
.w-textfield__input-wrapper {
|
|
20
|
+
position: relative;
|
|
21
|
+
overflow: hidden;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.w-textfield__input-wrapper:focus-within .w-textfield__mask {
|
|
25
|
+
display: none;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
/* Could also consider giving the input mask a background color instead of this */
|
|
29
|
+
.w-textfield__input-wrapper:has(.w-textfield__mask):not(:focus-within) input {
|
|
30
|
+
color: transparent;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.w-textfield__mask {
|
|
34
|
+
display: block;
|
|
35
|
+
border: 1px solid transparent;
|
|
36
|
+
top: var(--_input-padding-top);
|
|
37
|
+
left: var(--_input-padding-left);
|
|
38
|
+
right: var(--_input-padding-right);
|
|
39
|
+
position: absolute;
|
|
40
|
+
pointer-events: none;
|
|
41
|
+
white-space: nowrap;
|
|
42
|
+
overflow: hidden;
|
|
43
|
+
text-overflow: ellipsis;
|
|
44
|
+
z-index: 1;
|
|
45
|
+
}
|
|
46
|
+
`;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const styles: import("lit").CSSResult;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import { css } from 'lit';
|
|
2
|
+
export const styles = css `*,:before,:after{--w-rotate:0;--w-rotate-x:0;--w-rotate-y:0;--w-rotate-z:0;--w-scale-x:1;--w-scale-y:1;--w-scale-z:1;--w-skew-x:0;--w-skew-y:0;--w-translate-x:0;--w-translate-y:0;--w-translate-z:0}.focus\\:\\[--w-outline-offset\\:-2px\\]:focus{--w-outline-offset:-2px}.bg-transparent{background-color:#0000}.border-1{border-width:1px}.rounded-4{border-radius:4px}.caret-current{caret-color:currentColor}.block{display:block}.focusable:focus{outline:2px solid var(--w-s-color-border-focus);outline-offset:var(--w-outline-offset,1px)}.focusable:focus-visible{outline:2px solid var(--w-s-color-border-focus);outline-offset:var(--w-outline-offset,1px)}.focusable:not(:focus-visible){outline:none}.outline-\\[--w-s-color-border-negative\\]\\!{outline-color:var(--w-s-color-border-negative)!important}.relative{position:relative}.static{position:static}.s-bg{background-color:var(--w-s-color-background)}.s-bg-disabled-subtle{background-color:var(--w-s-color-background-disabled-subtle)}.s-text{color:var(--w-s-color-text)}.s-text-disabled{color:var(--w-s-color-text-disabled)}.s-text-negative{color:var(--w-s-color-text-negative)}.s-text-subtle{color:var(--w-s-color-text-subtle)}.placeholder\\:s-text-placeholder::placeholder{color:var(--w-s-color-text-placeholder)}.s-border{border-color:var(--w-s-color-border)}.s-border-disabled{border-color:var(--w-s-color-border-disabled)}.s-border-negative{border-color:var(--w-s-color-border-negative)}.hover\\:s-border-hover:hover{border-color:var(--w-s-color-border-hover)}.hover\\:s-border-negative-hover:hover{border-color:var(--w-s-color-border-negative-hover)}.active\\:s-border-selected:active{border-color:var(--w-s-color-border-selected)}.w-full{width:100%}.min-h-\\[42\\]{min-height:4.2rem}.mb-0{margin-bottom:0}.mt-4{margin-top:.4rem}.px-8{padding-left:.8rem;padding-right:.8rem}.py-12{padding-top:1.2rem;padding-bottom:1.2rem}.pb-4{padding-bottom:.4rem}.pl-0{padding-left:0}.pl-8{padding-left:.8rem}.pr-40{padding-right:4rem}.pl-\\[var\\(--w-prefix-width\\,_40px\\)\\]{padding-left:var(--w-prefix-width,40px)}.cursor-pointer{cursor:pointer}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-smoothing:grayscale}.font-bold{font-weight:700}.font-normal{font-weight:400}.pointer-events-none{pointer-events:none}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.text-m{font-size:var(--w-font-size-m);line-height:var(--w-line-height-m)}.text-s{font-size:var(--w-font-size-s);line-height:var(--w-line-height-s)}.text-xs{font-size:var(--w-font-size-xs);line-height:var(--w-line-height-xs)}.leading-m{line-height:var(--w-line-height-m)}@media (min-width:480px){.sm\\:min-h-\\[45\\]{min-height:4.5rem}}`;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from '@storybook/web-components-vite';
|
|
2
|
+
import type { WarpTextField } from './index.js';
|
|
3
|
+
import './index.js';
|
|
4
|
+
declare const args: Partial<WarpTextField> & {
|
|
5
|
+
[key: string]: any;
|
|
6
|
+
};
|
|
7
|
+
declare const meta: Meta<typeof args>;
|
|
8
|
+
export default meta;
|
|
9
|
+
type Story = StoryObj<typeof args>;
|
|
10
|
+
export declare const Default: Story;
|
|
11
|
+
export declare const WithPlaceholder: Story;
|
|
12
|
+
export declare const WithHelpText: Story;
|
|
13
|
+
export declare const Invalid: Story;
|
|
14
|
+
export declare const Disabled: Story;
|
|
15
|
+
export declare const ReadOnly: Story;
|
|
16
|
+
export declare const Required: Story;
|
|
17
|
+
export declare const WithAffix: Story;
|
|
18
|
+
export declare const Masking: Story;
|