@vielzeug/buildit 2.0.0
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 +124 -0
- package/dist/accordion-item.cjs +32 -0
- package/dist/accordion-item.cjs.map +1 -0
- package/dist/accordion-item.js +72 -0
- package/dist/accordion-item.js.map +1 -0
- package/dist/accordion.cjs +2 -0
- package/dist/accordion.cjs.map +1 -0
- package/dist/accordion.js +37 -0
- package/dist/accordion.js.map +1 -0
- package/dist/alert.cjs +31 -0
- package/dist/alert.cjs.map +1 -0
- package/dist/alert.js +85 -0
- package/dist/alert.js.map +1 -0
- package/dist/avatar.cjs +37 -0
- package/dist/avatar.cjs.map +1 -0
- package/dist/avatar.js +123 -0
- package/dist/avatar.js.map +1 -0
- package/dist/badge.cjs +7 -0
- package/dist/badge.cjs.map +1 -0
- package/dist/badge.js +60 -0
- package/dist/badge.js.map +1 -0
- package/dist/box.cjs +2 -0
- package/dist/box.cjs.map +1 -0
- package/dist/box.js +22 -0
- package/dist/box.js.map +1 -0
- package/dist/breadcrumb.cjs +21 -0
- package/dist/breadcrumb.cjs.map +1 -0
- package/dist/breadcrumb.js +58 -0
- package/dist/breadcrumb.js.map +1 -0
- package/dist/buildit.cjs +1892 -0
- package/dist/buildit.cjs.map +1 -0
- package/dist/buildit.js +1892 -0
- package/dist/buildit.js.map +1 -0
- package/dist/button-group.cjs +6 -0
- package/dist/button-group.cjs.map +1 -0
- package/dist/button-group.js +31 -0
- package/dist/button-group.js.map +1 -0
- package/dist/button.cjs +30 -0
- package/dist/button.cjs.map +1 -0
- package/dist/button.js +115 -0
- package/dist/button.js.map +1 -0
- package/dist/card.cjs +23 -0
- package/dist/card.cjs.map +1 -0
- package/dist/card.js +99 -0
- package/dist/card.js.map +1 -0
- package/dist/checkbox-group.cjs +20 -0
- package/dist/checkbox-group.cjs.map +1 -0
- package/dist/checkbox-group.js +88 -0
- package/dist/checkbox-group.js.map +1 -0
- package/dist/checkbox.cjs +37 -0
- package/dist/checkbox.cjs.map +1 -0
- package/dist/checkbox.js +115 -0
- package/dist/checkbox.js.map +1 -0
- package/dist/chip.cjs +56 -0
- package/dist/chip.cjs.map +1 -0
- package/dist/chip.js +140 -0
- package/dist/chip.js.map +1 -0
- package/dist/combobox.cjs +93 -0
- package/dist/combobox.cjs.map +1 -0
- package/dist/combobox.js +401 -0
- package/dist/combobox.js.map +1 -0
- package/dist/content/avatar/avatar-group.css?inline.cjs +2 -0
- package/dist/content/avatar/avatar-group.css?inline.cjs.map +1 -0
- package/dist/content/avatar/avatar-group.css?inline.js +6 -0
- package/dist/content/avatar/avatar-group.css?inline.js.map +1 -0
- package/dist/content/avatar/avatar.css?inline.cjs +2 -0
- package/dist/content/avatar/avatar.css?inline.cjs.map +1 -0
- package/dist/content/avatar/avatar.css?inline.js +6 -0
- package/dist/content/avatar/avatar.css?inline.js.map +1 -0
- package/dist/content/avatar/avatar.d.ts +78 -0
- package/dist/content/avatar/avatar.d.ts.map +1 -0
- package/dist/content/breadcrumb/breadcrumb-item.css?inline.cjs +2 -0
- package/dist/content/breadcrumb/breadcrumb-item.css?inline.cjs.map +1 -0
- package/dist/content/breadcrumb/breadcrumb-item.css?inline.js +6 -0
- package/dist/content/breadcrumb/breadcrumb-item.css?inline.js.map +1 -0
- package/dist/content/breadcrumb/breadcrumb.css?inline.cjs +2 -0
- package/dist/content/breadcrumb/breadcrumb.css?inline.cjs.map +1 -0
- package/dist/content/breadcrumb/breadcrumb.css?inline.js +6 -0
- package/dist/content/breadcrumb/breadcrumb.css?inline.js.map +1 -0
- package/dist/content/breadcrumb/breadcrumb.d.ts +36 -0
- package/dist/content/breadcrumb/breadcrumb.d.ts.map +1 -0
- package/dist/content/card/card.css?inline.cjs +2 -0
- package/dist/content/card/card.css?inline.cjs.map +1 -0
- package/dist/content/card/card.css?inline.js +6 -0
- package/dist/content/card/card.css?inline.js.map +1 -0
- package/dist/content/card/card.d.ts +66 -0
- package/dist/content/card/card.d.ts.map +1 -0
- package/dist/content/index.cjs +1 -0
- package/dist/content/index.d.ts +15 -0
- package/dist/content/index.d.ts.map +1 -0
- package/dist/content/index.js +7 -0
- package/dist/content/pagination/pagination.css?inline.cjs +2 -0
- package/dist/content/pagination/pagination.css?inline.cjs.map +1 -0
- package/dist/content/pagination/pagination.css?inline.js +6 -0
- package/dist/content/pagination/pagination.css?inline.js.map +1 -0
- package/dist/content/pagination/pagination.d.ts +56 -0
- package/dist/content/pagination/pagination.d.ts.map +1 -0
- package/dist/content/separator/separator.css?inline.cjs +2 -0
- package/dist/content/separator/separator.css?inline.cjs.map +1 -0
- package/dist/content/separator/separator.css?inline.js +6 -0
- package/dist/content/separator/separator.css?inline.js.map +1 -0
- package/dist/content/separator/separator.d.ts +35 -0
- package/dist/content/separator/separator.d.ts.map +1 -0
- package/dist/content/table/table.css?inline.cjs +2 -0
- package/dist/content/table/table.css?inline.cjs.map +1 -0
- package/dist/content/table/table.css?inline.js +6 -0
- package/dist/content/table/table.css?inline.js.map +1 -0
- package/dist/content/table/table.d.ts +69 -0
- package/dist/content/table/table.d.ts.map +1 -0
- package/dist/content/text/text.css?inline.cjs +2 -0
- package/dist/content/text/text.css?inline.cjs.map +1 -0
- package/dist/content/text/text.css?inline.js +6 -0
- package/dist/content/text/text.css?inline.js.map +1 -0
- package/dist/content/text/text.d.ts +55 -0
- package/dist/content/text/text.d.ts.map +1 -0
- package/dist/craftit/dist/core/internal.cjs +2 -0
- package/dist/craftit/dist/core/internal.cjs.map +1 -0
- package/dist/craftit/dist/core/internal.js +25 -0
- package/dist/craftit/dist/core/internal.js.map +1 -0
- package/dist/craftit/dist/core/runtime-bindings.cjs +2 -0
- package/dist/craftit/dist/core/runtime-bindings.cjs.map +1 -0
- package/dist/craftit/dist/core/runtime-bindings.js +38 -0
- package/dist/craftit/dist/core/runtime-bindings.js.map +1 -0
- package/dist/craftit/dist/core/runtime-lifecycle.cjs +2 -0
- package/dist/craftit/dist/core/runtime-lifecycle.cjs.map +1 -0
- package/dist/craftit/dist/core/runtime-lifecycle.js +68 -0
- package/dist/craftit/dist/core/runtime-lifecycle.js.map +1 -0
- package/dist/craftit/dist/core/runtime.cjs +1 -0
- package/dist/craftit/dist/core/runtime.js +2 -0
- package/dist/craftit/dist/core/utilities.cjs +2 -0
- package/dist/craftit/dist/core/utilities.cjs.map +1 -0
- package/dist/craftit/dist/core/utilities.js +12 -0
- package/dist/craftit/dist/core/utilities.js.map +1 -0
- package/dist/craftit/dist/directives/attr.cjs +2 -0
- package/dist/craftit/dist/directives/attr.cjs.map +1 -0
- package/dist/craftit/dist/directives/attr.js +13 -0
- package/dist/craftit/dist/directives/attr.js.map +1 -0
- package/dist/craftit/dist/directives/bind.cjs +1 -0
- package/dist/craftit/dist/directives/bind.js +3 -0
- package/dist/craftit/dist/directives/choose.cjs +1 -0
- package/dist/craftit/dist/directives/choose.js +1 -0
- package/dist/craftit/dist/directives/classes.cjs +2 -0
- package/dist/craftit/dist/directives/classes.cjs.map +1 -0
- package/dist/craftit/dist/directives/classes.js +12 -0
- package/dist/craftit/dist/directives/classes.js.map +1 -0
- package/dist/craftit/dist/directives/each.cjs +2 -0
- package/dist/craftit/dist/directives/each.cjs.map +1 -0
- package/dist/craftit/dist/directives/each.js +96 -0
- package/dist/craftit/dist/directives/each.js.map +1 -0
- package/dist/craftit/dist/directives/index.cjs +1 -0
- package/dist/craftit/dist/directives/index.js +12 -0
- package/dist/craftit/dist/directives/match.cjs +1 -0
- package/dist/craftit/dist/directives/match.js +1 -0
- package/dist/craftit/dist/directives/memo.cjs +1 -0
- package/dist/craftit/dist/directives/memo.js +1 -0
- package/dist/craftit/dist/directives/raw.cjs +1 -0
- package/dist/craftit/dist/directives/raw.js +2 -0
- package/dist/craftit/dist/directives/spread.cjs +2 -0
- package/dist/craftit/dist/directives/spread.cjs.map +1 -0
- package/dist/craftit/dist/directives/spread.js +30 -0
- package/dist/craftit/dist/directives/spread.js.map +1 -0
- package/dist/craftit/dist/directives/style.cjs +1 -0
- package/dist/craftit/dist/directives/style.js +1 -0
- package/dist/craftit/dist/directives/until.cjs +1 -0
- package/dist/craftit/dist/directives/until.js +1 -0
- package/dist/craftit/dist/directives/when.cjs +2 -0
- package/dist/craftit/dist/directives/when.cjs.map +1 -0
- package/dist/craftit/dist/directives/when.js +14 -0
- package/dist/craftit/dist/directives/when.js.map +1 -0
- package/dist/craftit/dist/labs/a11y.cjs +2 -0
- package/dist/craftit/dist/labs/a11y.cjs.map +1 -0
- package/dist/craftit/dist/labs/a11y.js +38 -0
- package/dist/craftit/dist/labs/a11y.js.map +1 -0
- package/dist/craftit/dist/labs/list.cjs +2 -0
- package/dist/craftit/dist/labs/list.cjs.map +1 -0
- package/dist/craftit/dist/labs/list.js +87 -0
- package/dist/craftit/dist/labs/list.js.map +1 -0
- package/dist/craftit/dist/labs/observers.cjs +2 -0
- package/dist/craftit/dist/labs/observers.cjs.map +1 -0
- package/dist/craftit/dist/labs/observers.js +28 -0
- package/dist/craftit/dist/labs/observers.js.map +1 -0
- package/dist/craftit/dist/labs/overlay.cjs +2 -0
- package/dist/craftit/dist/labs/overlay.cjs.map +1 -0
- package/dist/craftit/dist/labs/overlay.js +49 -0
- package/dist/craftit/dist/labs/overlay.js.map +1 -0
- package/dist/craftit/dist/labs/selectable.cjs +2 -0
- package/dist/craftit/dist/labs/selectable.cjs.map +1 -0
- package/dist/craftit/dist/labs/selectable.js +29 -0
- package/dist/craftit/dist/labs/selectable.js.map +1 -0
- package/dist/craftit/dist/labs/selection.cjs +2 -0
- package/dist/craftit/dist/labs/selection.cjs.map +1 -0
- package/dist/craftit/dist/labs/selection.js +42 -0
- package/dist/craftit/dist/labs/selection.js.map +1 -0
- package/dist/craftit/dist/labs.cjs +1 -0
- package/dist/craftit/dist/labs.js +6 -0
- package/dist/custom-elements.json +2321 -0
- package/dist/dialog.cjs +33 -0
- package/dist/dialog.cjs.map +1 -0
- package/dist/dialog.js +94 -0
- package/dist/dialog.js.map +1 -0
- package/dist/disclosure/accordion/accordion.css?inline.cjs +2 -0
- package/dist/disclosure/accordion/accordion.css?inline.cjs.map +1 -0
- package/dist/disclosure/accordion/accordion.css?inline.js +6 -0
- package/dist/disclosure/accordion/accordion.css?inline.js.map +1 -0
- package/dist/disclosure/accordion/accordion.d.ts +47 -0
- package/dist/disclosure/accordion/accordion.d.ts.map +1 -0
- package/dist/disclosure/accordion-item/accordion-item.css?inline.cjs +2 -0
- package/dist/disclosure/accordion-item/accordion-item.css?inline.cjs.map +1 -0
- package/dist/disclosure/accordion-item/accordion-item.css?inline.js +6 -0
- package/dist/disclosure/accordion-item/accordion-item.css?inline.js.map +1 -0
- package/dist/disclosure/accordion-item/accordion-item.d.ts +62 -0
- package/dist/disclosure/accordion-item/accordion-item.d.ts.map +1 -0
- package/dist/disclosure/index.cjs +1 -0
- package/dist/disclosure/index.d.ts +11 -0
- package/dist/disclosure/index.d.ts.map +1 -0
- package/dist/disclosure/index.js +5 -0
- package/dist/disclosure/tab-item/tab-item.css?inline.cjs +2 -0
- package/dist/disclosure/tab-item/tab-item.css?inline.cjs.map +1 -0
- package/dist/disclosure/tab-item/tab-item.css?inline.js +6 -0
- package/dist/disclosure/tab-item/tab-item.css?inline.js.map +1 -0
- package/dist/disclosure/tab-item/tab-item.d.ts +39 -0
- package/dist/disclosure/tab-item/tab-item.d.ts.map +1 -0
- package/dist/disclosure/tab-panel/tab-panel.css?inline.cjs +2 -0
- package/dist/disclosure/tab-panel/tab-panel.css?inline.cjs.map +1 -0
- package/dist/disclosure/tab-panel/tab-panel.css?inline.js +6 -0
- package/dist/disclosure/tab-panel/tab-panel.css?inline.js.map +1 -0
- package/dist/disclosure/tab-panel/tab-panel.d.ts +30 -0
- package/dist/disclosure/tab-panel/tab-panel.d.ts.map +1 -0
- package/dist/disclosure/tabs/tabs.css?inline.cjs +2 -0
- package/dist/disclosure/tabs/tabs.css?inline.cjs.map +1 -0
- package/dist/disclosure/tabs/tabs.css?inline.js +6 -0
- package/dist/disclosure/tabs/tabs.css?inline.js.map +1 -0
- package/dist/disclosure/tabs/tabs.d.ts +64 -0
- package/dist/disclosure/tabs/tabs.d.ts.map +1 -0
- package/dist/drawer.cjs +31 -0
- package/dist/drawer.cjs.map +1 -0
- package/dist/drawer.js +98 -0
- package/dist/drawer.js.map +1 -0
- package/dist/feedback/alert/alert.css?inline.cjs +2 -0
- package/dist/feedback/alert/alert.css?inline.cjs.map +1 -0
- package/dist/feedback/alert/alert.css?inline.js +6 -0
- package/dist/feedback/alert/alert.css?inline.js.map +1 -0
- package/dist/feedback/alert/alert.d.ts +63 -0
- package/dist/feedback/alert/alert.d.ts.map +1 -0
- package/dist/feedback/badge/badge.css?inline.cjs +2 -0
- package/dist/feedback/badge/badge.css?inline.cjs.map +1 -0
- package/dist/feedback/badge/badge.css?inline.js +6 -0
- package/dist/feedback/badge/badge.css?inline.js.map +1 -0
- package/dist/feedback/badge/badge.d.ts +67 -0
- package/dist/feedback/badge/badge.d.ts.map +1 -0
- package/dist/feedback/chip/chip.css?inline.cjs +2 -0
- package/dist/feedback/chip/chip.css?inline.cjs.map +1 -0
- package/dist/feedback/chip/chip.css?inline.js +6 -0
- package/dist/feedback/chip/chip.css?inline.js.map +1 -0
- package/dist/feedback/chip/chip.d.ts +124 -0
- package/dist/feedback/chip/chip.d.ts.map +1 -0
- package/dist/feedback/index.cjs +1 -0
- package/dist/feedback/index.d.ts +13 -0
- package/dist/feedback/index.d.ts.map +1 -0
- package/dist/feedback/index.js +6 -0
- package/dist/feedback/progress/progress.css?inline.cjs +2 -0
- package/dist/feedback/progress/progress.css?inline.cjs.map +1 -0
- package/dist/feedback/progress/progress.css?inline.js +6 -0
- package/dist/feedback/progress/progress.css?inline.js.map +1 -0
- package/dist/feedback/progress/progress.d.ts +64 -0
- package/dist/feedback/progress/progress.d.ts.map +1 -0
- package/dist/feedback/skeleton/skeleton.css?inline.cjs +2 -0
- package/dist/feedback/skeleton/skeleton.css?inline.cjs.map +1 -0
- package/dist/feedback/skeleton/skeleton.css?inline.js +6 -0
- package/dist/feedback/skeleton/skeleton.css?inline.js.map +1 -0
- package/dist/feedback/skeleton/skeleton.d.ts +61 -0
- package/dist/feedback/skeleton/skeleton.d.ts.map +1 -0
- package/dist/feedback/toast/index.d.ts +2 -0
- package/dist/feedback/toast/index.d.ts.map +1 -0
- package/dist/feedback/toast/toast.css?inline.cjs +2 -0
- package/dist/feedback/toast/toast.css?inline.cjs.map +1 -0
- package/dist/feedback/toast/toast.css?inline.js +6 -0
- package/dist/feedback/toast/toast.css?inline.js.map +1 -0
- package/dist/feedback/toast/toast.d.ts +95 -0
- package/dist/feedback/toast/toast.d.ts.map +1 -0
- package/dist/file-input.cjs +66 -0
- package/dist/file-input.cjs.map +1 -0
- package/dist/file-input.js +210 -0
- package/dist/file-input.js.map +1 -0
- package/dist/form.cjs +11 -0
- package/dist/form.cjs.map +1 -0
- package/dist/form.js +49 -0
- package/dist/form.js.map +1 -0
- package/dist/grid-item.cjs +2 -0
- package/dist/grid-item.cjs.map +1 -0
- package/dist/grid-item.js +28 -0
- package/dist/grid-item.js.map +1 -0
- package/dist/grid.cjs +2 -0
- package/dist/grid.cjs.map +1 -0
- package/dist/grid.js +90 -0
- package/dist/grid.js.map +1 -0
- package/dist/icons.cjs +176 -0
- package/dist/icons.cjs.map +1 -0
- package/dist/icons.d.ts +15 -0
- package/dist/icons.d.ts.map +1 -0
- package/dist/icons.js +181 -0
- package/dist/icons.js.map +1 -0
- package/dist/index.cjs +1 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +53 -0
- package/dist/input.cjs +48 -0
- package/dist/input.cjs.map +1 -0
- package/dist/input.js +182 -0
- package/dist/input.js.map +1 -0
- package/dist/inputs/button/button.css?inline.cjs +2 -0
- package/dist/inputs/button/button.css?inline.cjs.map +1 -0
- package/dist/inputs/button/button.css?inline.js +6 -0
- package/dist/inputs/button/button.css?inline.js.map +1 -0
- package/dist/inputs/button/button.d.ts +73 -0
- package/dist/inputs/button/button.d.ts.map +1 -0
- package/dist/inputs/button-group/button-group.css?inline.cjs +2 -0
- package/dist/inputs/button-group/button-group.css?inline.cjs.map +1 -0
- package/dist/inputs/button-group/button-group.css?inline.js +6 -0
- package/dist/inputs/button-group/button-group.css?inline.js.map +1 -0
- package/dist/inputs/button-group/button-group.d.ts +52 -0
- package/dist/inputs/button-group/button-group.d.ts.map +1 -0
- package/dist/inputs/checkbox/checkbox.css?inline.cjs +2 -0
- package/dist/inputs/checkbox/checkbox.css?inline.cjs.map +1 -0
- package/dist/inputs/checkbox/checkbox.css?inline.js +6 -0
- package/dist/inputs/checkbox/checkbox.css?inline.js.map +1 -0
- package/dist/inputs/checkbox/checkbox.d.ts +43 -0
- package/dist/inputs/checkbox/checkbox.d.ts.map +1 -0
- package/dist/inputs/checkbox-group/checkbox-group.css?inline.cjs +2 -0
- package/dist/inputs/checkbox-group/checkbox-group.css?inline.cjs.map +1 -0
- package/dist/inputs/checkbox-group/checkbox-group.css?inline.js +6 -0
- package/dist/inputs/checkbox-group/checkbox-group.css?inline.js.map +1 -0
- package/dist/inputs/checkbox-group/checkbox-group.d.ts +56 -0
- package/dist/inputs/checkbox-group/checkbox-group.d.ts.map +1 -0
- package/dist/inputs/combobox/combobox-options.cjs +2 -0
- package/dist/inputs/combobox/combobox-options.cjs.map +1 -0
- package/dist/inputs/combobox/combobox-options.d.ts +7 -0
- package/dist/inputs/combobox/combobox-options.d.ts.map +1 -0
- package/dist/inputs/combobox/combobox-options.js +36 -0
- package/dist/inputs/combobox/combobox-options.js.map +1 -0
- package/dist/inputs/combobox/combobox-virtualizer.cjs +2 -0
- package/dist/inputs/combobox/combobox-virtualizer.cjs.map +1 -0
- package/dist/inputs/combobox/combobox-virtualizer.d.ts +20 -0
- package/dist/inputs/combobox/combobox-virtualizer.d.ts.map +1 -0
- package/dist/inputs/combobox/combobox-virtualizer.js +71 -0
- package/dist/inputs/combobox/combobox-virtualizer.js.map +1 -0
- package/dist/inputs/combobox/combobox.css?inline.cjs +2 -0
- package/dist/inputs/combobox/combobox.css?inline.cjs.map +1 -0
- package/dist/inputs/combobox/combobox.css?inline.js +6 -0
- package/dist/inputs/combobox/combobox.css?inline.js.map +1 -0
- package/dist/inputs/combobox/combobox.d.ts +28 -0
- package/dist/inputs/combobox/combobox.d.ts.map +1 -0
- package/dist/inputs/combobox/combobox.types.d.ts +36 -0
- package/dist/inputs/combobox/combobox.types.d.ts.map +1 -0
- package/dist/inputs/file-input/file-input.css?inline.cjs +2 -0
- package/dist/inputs/file-input/file-input.css?inline.cjs.map +1 -0
- package/dist/inputs/file-input/file-input.css?inline.js +6 -0
- package/dist/inputs/file-input/file-input.css?inline.js.map +1 -0
- package/dist/inputs/file-input/file-input.d.ts +94 -0
- package/dist/inputs/file-input/file-input.d.ts.map +1 -0
- package/dist/inputs/form/form.css?inline.cjs +2 -0
- package/dist/inputs/form/form.css?inline.cjs.map +1 -0
- package/dist/inputs/form/form.css?inline.js +6 -0
- package/dist/inputs/form/form.css?inline.js.map +1 -0
- package/dist/inputs/form/form.d.ts +61 -0
- package/dist/inputs/form/form.d.ts.map +1 -0
- package/dist/inputs/index.cjs +1 -0
- package/dist/inputs/index.d.ts +38 -0
- package/dist/inputs/index.d.ts.map +1 -0
- package/dist/inputs/index.js +18 -0
- package/dist/inputs/input/input.css?inline.cjs +2 -0
- package/dist/inputs/input/input.css?inline.cjs.map +1 -0
- package/dist/inputs/input/input.css?inline.js +6 -0
- package/dist/inputs/input/input.css?inline.js.map +1 -0
- package/dist/inputs/input/input.d.ts +82 -0
- package/dist/inputs/input/input.d.ts.map +1 -0
- package/dist/inputs/number-input/number-input.css?inline.cjs +2 -0
- package/dist/inputs/number-input/number-input.css?inline.cjs.map +1 -0
- package/dist/inputs/number-input/number-input.css?inline.js +6 -0
- package/dist/inputs/number-input/number-input.css?inline.js.map +1 -0
- package/dist/inputs/number-input/number-input.d.ts +76 -0
- package/dist/inputs/number-input/number-input.d.ts.map +1 -0
- package/dist/inputs/otp-input/otp-input.css?inline.cjs +2 -0
- package/dist/inputs/otp-input/otp-input.css?inline.cjs.map +1 -0
- package/dist/inputs/otp-input/otp-input.css?inline.js +6 -0
- package/dist/inputs/otp-input/otp-input.css?inline.js.map +1 -0
- package/dist/inputs/otp-input/otp-input.d.ts +71 -0
- package/dist/inputs/otp-input/otp-input.d.ts.map +1 -0
- package/dist/inputs/radio/radio.css?inline.cjs +2 -0
- package/dist/inputs/radio/radio.css?inline.cjs.map +1 -0
- package/dist/inputs/radio/radio.css?inline.js +6 -0
- package/dist/inputs/radio/radio.css?inline.js.map +1 -0
- package/dist/inputs/radio/radio.d.ts +41 -0
- package/dist/inputs/radio/radio.d.ts.map +1 -0
- package/dist/inputs/radio-group/radio-group.css?inline.cjs +2 -0
- package/dist/inputs/radio-group/radio-group.css?inline.cjs.map +1 -0
- package/dist/inputs/radio-group/radio-group.css?inline.js +6 -0
- package/dist/inputs/radio-group/radio-group.css?inline.js.map +1 -0
- package/dist/inputs/radio-group/radio-group.d.ts +61 -0
- package/dist/inputs/radio-group/radio-group.d.ts.map +1 -0
- package/dist/inputs/rating/rating.css?inline.cjs +2 -0
- package/dist/inputs/rating/rating.css?inline.cjs.map +1 -0
- package/dist/inputs/rating/rating.css?inline.js +6 -0
- package/dist/inputs/rating/rating.css?inline.js.map +1 -0
- package/dist/inputs/rating/rating.d.ts +48 -0
- package/dist/inputs/rating/rating.d.ts.map +1 -0
- package/dist/inputs/select/select.css?inline.cjs +2 -0
- package/dist/inputs/select/select.css?inline.cjs.map +1 -0
- package/dist/inputs/select/select.css?inline.js +6 -0
- package/dist/inputs/select/select.css?inline.js.map +1 -0
- package/dist/inputs/select/select.d.ts +79 -0
- package/dist/inputs/select/select.d.ts.map +1 -0
- package/dist/inputs/shared/base-props.d.ts +39 -0
- package/dist/inputs/shared/base-props.d.ts.map +1 -0
- package/dist/inputs/shared/composables/index.cjs +1 -0
- package/dist/inputs/shared/composables/index.d.ts +3 -0
- package/dist/inputs/shared/composables/index.d.ts.map +1 -0
- package/dist/inputs/shared/composables/index.js +2 -0
- package/dist/inputs/shared/composables/use-text-field.cjs +2 -0
- package/dist/inputs/shared/composables/use-text-field.cjs.map +1 -0
- package/dist/inputs/shared/composables/use-text-field.d.ts +33 -0
- package/dist/inputs/shared/composables/use-text-field.d.ts.map +1 -0
- package/dist/inputs/shared/composables/use-text-field.js +41 -0
- package/dist/inputs/shared/composables/use-text-field.js.map +1 -0
- package/dist/inputs/shared/composables/use-toggle-field.cjs +2 -0
- package/dist/inputs/shared/composables/use-toggle-field.cjs.map +1 -0
- package/dist/inputs/shared/composables/use-toggle-field.d.ts +18 -0
- package/dist/inputs/shared/composables/use-toggle-field.d.ts.map +1 -0
- package/dist/inputs/shared/composables/use-toggle-field.js +26 -0
- package/dist/inputs/shared/composables/use-toggle-field.js.map +1 -0
- package/dist/inputs/shared/design-presets.cjs +2 -0
- package/dist/inputs/shared/design-presets.cjs.map +1 -0
- package/dist/inputs/shared/design-presets.d.ts +97 -0
- package/dist/inputs/shared/design-presets.d.ts.map +1 -0
- package/dist/inputs/shared/design-presets.js +92 -0
- package/dist/inputs/shared/design-presets.js.map +1 -0
- package/dist/inputs/shared/dom-sync/dropdown.cjs +2 -0
- package/dist/inputs/shared/dom-sync/dropdown.cjs.map +1 -0
- package/dist/inputs/shared/dom-sync/dropdown.d.ts +7 -0
- package/dist/inputs/shared/dom-sync/dropdown.d.ts.map +1 -0
- package/dist/inputs/shared/dom-sync/dropdown.js +30 -0
- package/dist/inputs/shared/dom-sync/dropdown.js.map +1 -0
- package/dist/inputs/shared/dom-sync/field-sync.cjs +2 -0
- package/dist/inputs/shared/dom-sync/field-sync.cjs.map +1 -0
- package/dist/inputs/shared/dom-sync/field-sync.d.ts +36 -0
- package/dist/inputs/shared/dom-sync/field-sync.d.ts.map +1 -0
- package/dist/inputs/shared/dom-sync/field-sync.js +37 -0
- package/dist/inputs/shared/dom-sync/field-sync.js.map +1 -0
- package/dist/inputs/shared/dom-sync/form-context.cjs +2 -0
- package/dist/inputs/shared/dom-sync/form-context.cjs.map +1 -0
- package/dist/inputs/shared/dom-sync/form-context.d.ts +18 -0
- package/dist/inputs/shared/dom-sync/form-context.d.ts.map +1 -0
- package/dist/inputs/shared/dom-sync/form-context.js +20 -0
- package/dist/inputs/shared/dom-sync/form-context.js.map +1 -0
- package/dist/inputs/shared/dom-sync/index.cjs +1 -0
- package/dist/inputs/shared/dom-sync/index.d.ts +5 -0
- package/dist/inputs/shared/dom-sync/index.d.ts.map +1 -0
- package/dist/inputs/shared/dom-sync/index.js +4 -0
- package/dist/inputs/shared/dom-sync/label-sync.cjs +2 -0
- package/dist/inputs/shared/dom-sync/label-sync.cjs.map +1 -0
- package/dist/inputs/shared/dom-sync/label-sync.d.ts +16 -0
- package/dist/inputs/shared/dom-sync/label-sync.d.ts.map +1 -0
- package/dist/inputs/shared/dom-sync/label-sync.js +12 -0
- package/dist/inputs/shared/dom-sync/label-sync.js.map +1 -0
- package/dist/inputs/shared/form-context.cjs +2 -0
- package/dist/inputs/shared/form-context.cjs.map +1 -0
- package/dist/inputs/shared/form-context.d.ts +19 -0
- package/dist/inputs/shared/form-context.d.ts.map +1 -0
- package/dist/inputs/shared/form-context.js +7 -0
- package/dist/inputs/shared/form-context.js.map +1 -0
- package/dist/inputs/shared/utils/assistive-text.cjs +2 -0
- package/dist/inputs/shared/utils/assistive-text.cjs.map +1 -0
- package/dist/inputs/shared/utils/assistive-text.d.ts +24 -0
- package/dist/inputs/shared/utils/assistive-text.d.ts.map +1 -0
- package/dist/inputs/shared/utils/assistive-text.js +37 -0
- package/dist/inputs/shared/utils/assistive-text.js.map +1 -0
- package/dist/inputs/shared/utils/choice-change.cjs +2 -0
- package/dist/inputs/shared/utils/choice-change.cjs.map +1 -0
- package/dist/inputs/shared/utils/choice-change.d.ts +8 -0
- package/dist/inputs/shared/utils/choice-change.d.ts.map +1 -0
- package/dist/inputs/shared/utils/choice-change.js +13 -0
- package/dist/inputs/shared/utils/choice-change.js.map +1 -0
- package/dist/inputs/shared/utils/controlled-csv.cjs +2 -0
- package/dist/inputs/shared/utils/controlled-csv.cjs.map +1 -0
- package/dist/inputs/shared/utils/controlled-csv.d.ts +8 -0
- package/dist/inputs/shared/utils/controlled-csv.d.ts.map +1 -0
- package/dist/inputs/shared/utils/controlled-csv.js +15 -0
- package/dist/inputs/shared/utils/controlled-csv.js.map +1 -0
- package/dist/inputs/shared/utils/field-values.cjs +2 -0
- package/dist/inputs/shared/utils/field-values.cjs.map +1 -0
- package/dist/inputs/shared/utils/field-values.d.ts +5 -0
- package/dist/inputs/shared/utils/field-values.d.ts.map +1 -0
- package/dist/inputs/shared/utils/field-values.js +13 -0
- package/dist/inputs/shared/utils/field-values.js.map +1 -0
- package/dist/inputs/shared/utils/index.d.ts +5 -0
- package/dist/inputs/shared/utils/index.d.ts.map +1 -0
- package/dist/inputs/shared/validation/index.cjs +2 -0
- package/dist/inputs/shared/validation/index.cjs.map +1 -0
- package/dist/inputs/shared/validation/index.d.ts +14 -0
- package/dist/inputs/shared/validation/index.d.ts.map +1 -0
- package/dist/inputs/shared/validation/index.js +13 -0
- package/dist/inputs/shared/validation/index.js.map +1 -0
- package/dist/inputs/slider/slider.css?inline.cjs +2 -0
- package/dist/inputs/slider/slider.css?inline.cjs.map +1 -0
- package/dist/inputs/slider/slider.css?inline.js +6 -0
- package/dist/inputs/slider/slider.css?inline.js.map +1 -0
- package/dist/inputs/slider/slider.d.ts +82 -0
- package/dist/inputs/slider/slider.d.ts.map +1 -0
- package/dist/inputs/switch/switch.css?inline.cjs +2 -0
- package/dist/inputs/switch/switch.css?inline.cjs.map +1 -0
- package/dist/inputs/switch/switch.css?inline.js +6 -0
- package/dist/inputs/switch/switch.css?inline.js.map +1 -0
- package/dist/inputs/switch/switch.d.ts +40 -0
- package/dist/inputs/switch/switch.d.ts.map +1 -0
- package/dist/inputs/textarea/textarea.css?inline.cjs +2 -0
- package/dist/inputs/textarea/textarea.css?inline.cjs.map +1 -0
- package/dist/inputs/textarea/textarea.css?inline.js +6 -0
- package/dist/inputs/textarea/textarea.css?inline.js.map +1 -0
- package/dist/inputs/textarea/textarea.d.ts +57 -0
- package/dist/inputs/textarea/textarea.d.ts.map +1 -0
- package/dist/layout/box/box.css?inline.cjs +2 -0
- package/dist/layout/box/box.css?inline.cjs.map +1 -0
- package/dist/layout/box/box.css?inline.js +6 -0
- package/dist/layout/box/box.css?inline.js.map +1 -0
- package/dist/layout/box/box.d.ts +52 -0
- package/dist/layout/box/box.d.ts.map +1 -0
- package/dist/layout/grid/grid.css?inline.cjs +2 -0
- package/dist/layout/grid/grid.css?inline.cjs.map +1 -0
- package/dist/layout/grid/grid.css?inline.js +6 -0
- package/dist/layout/grid/grid.css?inline.js.map +1 -0
- package/dist/layout/grid/grid.d.ts +105 -0
- package/dist/layout/grid/grid.d.ts.map +1 -0
- package/dist/layout/grid-item/grid-item.css?inline.cjs +2 -0
- package/dist/layout/grid-item/grid-item.css?inline.cjs.map +1 -0
- package/dist/layout/grid-item/grid-item.css?inline.js +6 -0
- package/dist/layout/grid-item/grid-item.css?inline.js.map +1 -0
- package/dist/layout/grid-item/grid-item.d.ts +47 -0
- package/dist/layout/grid-item/grid-item.d.ts.map +1 -0
- package/dist/layout/index.cjs +1 -0
- package/dist/layout/index.d.ts +9 -0
- package/dist/layout/index.d.ts.map +1 -0
- package/dist/layout/index.js +4 -0
- package/dist/layout/sidebar/sidebar-group.css?inline.cjs +2 -0
- package/dist/layout/sidebar/sidebar-group.css?inline.cjs.map +1 -0
- package/dist/layout/sidebar/sidebar-group.css?inline.js +6 -0
- package/dist/layout/sidebar/sidebar-group.css?inline.js.map +1 -0
- package/dist/layout/sidebar/sidebar-item.css?inline.cjs +2 -0
- package/dist/layout/sidebar/sidebar-item.css?inline.cjs.map +1 -0
- package/dist/layout/sidebar/sidebar-item.css?inline.js +6 -0
- package/dist/layout/sidebar/sidebar-item.css?inline.js.map +1 -0
- package/dist/layout/sidebar/sidebar.css?inline.cjs +2 -0
- package/dist/layout/sidebar/sidebar.css?inline.cjs.map +1 -0
- package/dist/layout/sidebar/sidebar.css?inline.js +6 -0
- package/dist/layout/sidebar/sidebar.css?inline.js.map +1 -0
- package/dist/layout/sidebar/sidebar.d.ts +190 -0
- package/dist/layout/sidebar/sidebar.d.ts.map +1 -0
- package/dist/menu.cjs +133 -0
- package/dist/menu.cjs.map +1 -0
- package/dist/menu.js +296 -0
- package/dist/menu.js.map +1 -0
- package/dist/number-input.cjs +55 -0
- package/dist/number-input.cjs.map +1 -0
- package/dist/number-input.js +158 -0
- package/dist/number-input.js.map +1 -0
- package/dist/otp-input.cjs +22 -0
- package/dist/otp-input.cjs.map +1 -0
- package/dist/otp-input.js +120 -0
- package/dist/otp-input.js.map +1 -0
- package/dist/overlay/dialog/dialog.css?inline.cjs +2 -0
- package/dist/overlay/dialog/dialog.css?inline.cjs.map +1 -0
- package/dist/overlay/dialog/dialog.css?inline.js +6 -0
- package/dist/overlay/dialog/dialog.css?inline.js.map +1 -0
- package/dist/overlay/dialog/dialog.d.ts +98 -0
- package/dist/overlay/dialog/dialog.d.ts.map +1 -0
- package/dist/overlay/drawer/drawer.css?inline.cjs +2 -0
- package/dist/overlay/drawer/drawer.css?inline.cjs.map +1 -0
- package/dist/overlay/drawer/drawer.css?inline.js +6 -0
- package/dist/overlay/drawer/drawer.css?inline.js.map +1 -0
- package/dist/overlay/drawer/drawer.d.ts +98 -0
- package/dist/overlay/drawer/drawer.d.ts.map +1 -0
- package/dist/overlay/index.cjs +1 -0
- package/dist/overlay/index.d.ts +11 -0
- package/dist/overlay/index.d.ts.map +1 -0
- package/dist/overlay/index.js +5 -0
- package/dist/overlay/menu/menu.css?inline.cjs +2 -0
- package/dist/overlay/menu/menu.css?inline.cjs.map +1 -0
- package/dist/overlay/menu/menu.css?inline.js +6 -0
- package/dist/overlay/menu/menu.css?inline.js.map +1 -0
- package/dist/overlay/menu/menu.d.ts +45 -0
- package/dist/overlay/menu/menu.d.ts.map +1 -0
- package/dist/overlay/popover/popover.css?inline.cjs +2 -0
- package/dist/overlay/popover/popover.css?inline.cjs.map +1 -0
- package/dist/overlay/popover/popover.css?inline.js +6 -0
- package/dist/overlay/popover/popover.css?inline.js.map +1 -0
- package/dist/overlay/popover/popover.d.ts +56 -0
- package/dist/overlay/popover/popover.d.ts.map +1 -0
- package/dist/overlay/tooltip/tooltip.css?inline.cjs +2 -0
- package/dist/overlay/tooltip/tooltip.css?inline.cjs.map +1 -0
- package/dist/overlay/tooltip/tooltip.css?inline.js +6 -0
- package/dist/overlay/tooltip/tooltip.css?inline.js.map +1 -0
- package/dist/overlay/tooltip/tooltip.d.ts +55 -0
- package/dist/overlay/tooltip/tooltip.d.ts.map +1 -0
- package/dist/pagination.cjs +102 -0
- package/dist/pagination.cjs.map +1 -0
- package/dist/pagination.js +168 -0
- package/dist/pagination.js.map +1 -0
- package/dist/popover.cjs +16 -0
- package/dist/popover.cjs.map +1 -0
- package/dist/popover.js +110 -0
- package/dist/popover.js.map +1 -0
- package/dist/progress.cjs +51 -0
- package/dist/progress.cjs.map +1 -0
- package/dist/progress.js +90 -0
- package/dist/progress.js.map +1 -0
- package/dist/radio-group.cjs +20 -0
- package/dist/radio-group.cjs.map +1 -0
- package/dist/radio-group.js +104 -0
- package/dist/radio-group.js.map +1 -0
- package/dist/radio.cjs +16 -0
- package/dist/radio.cjs.map +1 -0
- package/dist/radio.js +135 -0
- package/dist/radio.js.map +1 -0
- package/dist/rating.cjs +37 -0
- package/dist/rating.cjs.map +1 -0
- package/dist/rating.js +123 -0
- package/dist/rating.js.map +1 -0
- package/dist/select.cjs +77 -0
- package/dist/select.cjs.map +1 -0
- package/dist/select.js +317 -0
- package/dist/select.js.map +1 -0
- package/dist/separator.cjs +26 -0
- package/dist/separator.cjs.map +1 -0
- package/dist/separator.js +46 -0
- package/dist/separator.js.map +1 -0
- package/dist/sidebar.cjs +69 -0
- package/dist/sidebar.cjs.map +1 -0
- package/dist/sidebar.js +202 -0
- package/dist/sidebar.js.map +1 -0
- package/dist/skeleton.cjs +10 -0
- package/dist/skeleton.cjs.map +1 -0
- package/dist/skeleton.js +56 -0
- package/dist/skeleton.js.map +1 -0
- package/dist/slider.cjs +24 -0
- package/dist/slider.cjs.map +1 -0
- package/dist/slider.js +209 -0
- package/dist/slider.js.map +1 -0
- package/dist/stateit/dist/computed.cjs +2 -0
- package/dist/stateit/dist/computed.cjs.map +1 -0
- package/dist/stateit/dist/computed.js +65 -0
- package/dist/stateit/dist/computed.js.map +1 -0
- package/dist/stateit/dist/effect.cjs +2 -0
- package/dist/stateit/dist/effect.cjs.map +1 -0
- package/dist/stateit/dist/effect.js +53 -0
- package/dist/stateit/dist/effect.js.map +1 -0
- package/dist/stateit/dist/index.cjs +1 -0
- package/dist/stateit/dist/index.js +5 -0
- package/dist/stateit/dist/runtime.cjs +2 -0
- package/dist/stateit/dist/runtime.cjs.map +1 -0
- package/dist/stateit/dist/runtime.js +43 -0
- package/dist/stateit/dist/runtime.js.map +1 -0
- package/dist/stateit/dist/signal.cjs +2 -0
- package/dist/stateit/dist/signal.cjs.map +1 -0
- package/dist/stateit/dist/signal.js +27 -0
- package/dist/stateit/dist/signal.js.map +1 -0
- package/dist/stateit/dist/store.cjs +2 -0
- package/dist/stateit/dist/store.cjs.map +1 -0
- package/dist/stateit/dist/store.js +17 -0
- package/dist/stateit/dist/store.js.map +1 -0
- package/dist/stateit/dist/types.cjs +2 -0
- package/dist/stateit/dist/types.cjs.map +1 -0
- package/dist/stateit/dist/types.js +6 -0
- package/dist/stateit/dist/types.js.map +1 -0
- package/dist/styles/animation.css +87 -0
- package/dist/styles/index.cjs +2 -0
- package/dist/styles/index.cjs.map +1 -0
- package/dist/styles/index.d.ts +48 -0
- package/dist/styles/index.d.ts.map +1 -0
- package/dist/styles/index.js +26 -0
- package/dist/styles/index.js.map +1 -0
- package/dist/styles/layer.css +18 -0
- package/dist/styles/mixins/accessibility.css.cjs +15 -0
- package/dist/styles/mixins/accessibility.css.cjs.map +1 -0
- package/dist/styles/mixins/accessibility.css.d.ts +46 -0
- package/dist/styles/mixins/accessibility.css.d.ts.map +1 -0
- package/dist/styles/mixins/accessibility.css.js +20 -0
- package/dist/styles/mixins/accessibility.css.js.map +1 -0
- package/dist/styles/mixins/animation.css.cjs +71 -0
- package/dist/styles/mixins/animation.css.cjs.map +1 -0
- package/dist/styles/mixins/animation.css.d.ts +22 -0
- package/dist/styles/mixins/animation.css.d.ts.map +1 -0
- package/dist/styles/mixins/animation.css.js +90 -0
- package/dist/styles/mixins/animation.css.js.map +1 -0
- package/dist/styles/mixins/shape.css.cjs +72 -0
- package/dist/styles/mixins/shape.css.cjs.map +1 -0
- package/dist/styles/mixins/shape.css.d.ts +97 -0
- package/dist/styles/mixins/shape.css.d.ts.map +1 -0
- package/dist/styles/mixins/shape.css.js +104 -0
- package/dist/styles/mixins/shape.css.js.map +1 -0
- package/dist/styles/mixins/states.css.cjs +18 -0
- package/dist/styles/mixins/states.css.cjs.map +1 -0
- package/dist/styles/mixins/states.css.d.ts +61 -0
- package/dist/styles/mixins/states.css.d.ts.map +1 -0
- package/dist/styles/mixins/states.css.js +26 -0
- package/dist/styles/mixins/states.css.js.map +1 -0
- package/dist/styles/mixins/theme.css.cjs +146 -0
- package/dist/styles/mixins/theme.css.cjs.map +1 -0
- package/dist/styles/mixins/theme.css.d.ts +93 -0
- package/dist/styles/mixins/theme.css.d.ts.map +1 -0
- package/dist/styles/mixins/theme.css.js +151 -0
- package/dist/styles/mixins/theme.css.js.map +1 -0
- package/dist/styles/mixins/variants.css.cjs +84 -0
- package/dist/styles/mixins/variants.css.cjs.map +1 -0
- package/dist/styles/mixins/variants.css.d.ts +22 -0
- package/dist/styles/mixins/variants.css.d.ts.map +1 -0
- package/dist/styles/mixins/variants.css.js +89 -0
- package/dist/styles/mixins/variants.css.js.map +1 -0
- package/dist/styles/preflight.css +237 -0
- package/dist/styles/styles.css +5 -0
- package/dist/styles/theme.css +457 -0
- package/dist/switch.cjs +16 -0
- package/dist/switch.cjs.map +1 -0
- package/dist/switch.js +82 -0
- package/dist/switch.js.map +1 -0
- package/dist/tab-item.cjs +17 -0
- package/dist/tab-item.cjs.map +1 -0
- package/dist/tab-item.js +57 -0
- package/dist/tab-item.js.map +1 -0
- package/dist/tab-panel.cjs +14 -0
- package/dist/tab-panel.cjs.map +1 -0
- package/dist/tab-panel.js +51 -0
- package/dist/tab-panel.js.map +1 -0
- package/dist/table.cjs +2 -0
- package/dist/table.cjs.map +1 -0
- package/dist/table.js +101 -0
- package/dist/table.js.map +1 -0
- package/dist/tabs.cjs +17 -0
- package/dist/tabs.cjs.map +1 -0
- package/dist/tabs.js +98 -0
- package/dist/tabs.js.map +1 -0
- package/dist/text.cjs +2 -0
- package/dist/text.cjs.map +1 -0
- package/dist/text.js +30 -0
- package/dist/text.js.map +1 -0
- package/dist/textarea.cjs +16 -0
- package/dist/textarea.cjs.map +1 -0
- package/dist/textarea.js +122 -0
- package/dist/textarea.js.map +1 -0
- package/dist/toast.cjs +63 -0
- package/dist/toast.cjs.map +1 -0
- package/dist/toast.js +221 -0
- package/dist/toast.js.map +1 -0
- package/dist/tooltip.cjs +15 -0
- package/dist/tooltip.cjs.map +1 -0
- package/dist/tooltip.js +111 -0
- package/dist/tooltip.js.map +1 -0
- package/dist/types/index.d.ts +7 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/shared.d.ts +120 -0
- package/dist/types/shared.d.ts.map +1 -0
- package/dist/utils/animation.cjs +2 -0
- package/dist/utils/animation.cjs.map +1 -0
- package/dist/utils/animation.d.ts +2 -0
- package/dist/utils/animation.d.ts.map +1 -0
- package/dist/utils/animation.js +29 -0
- package/dist/utils/animation.js.map +1 -0
- package/dist/utils/background-lock.cjs +2 -0
- package/dist/utils/background-lock.cjs.map +1 -0
- package/dist/utils/background-lock.d.ts +20 -0
- package/dist/utils/background-lock.d.ts.map +1 -0
- package/dist/utils/background-lock.js +21 -0
- package/dist/utils/background-lock.js.map +1 -0
- package/dist/utils/index.cjs +1 -0
- package/dist/utils/index.d.ts +4 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +3 -0
- package/dist/utils/use-overlay.cjs +2 -0
- package/dist/utils/use-overlay.cjs.map +1 -0
- package/dist/utils/use-overlay.d.ts +26 -0
- package/dist/utils/use-overlay.d.ts.map +1 -0
- package/dist/utils/use-overlay.js +34 -0
- package/dist/utils/use-overlay.js.map +1 -0
- package/dist/virtualit/dist/dom/dom.cjs +2 -0
- package/dist/virtualit/dist/dom/dom.cjs.map +1 -0
- package/dist/virtualit/dist/dom/dom.js +47 -0
- package/dist/virtualit/dist/dom/dom.js.map +1 -0
- package/dist/virtualit/dist/dom.cjs +1 -0
- package/dist/virtualit/dist/dom.js +2 -0
- package/dist/virtualit/dist/virtualit.cjs +2 -0
- package/dist/virtualit/dist/virtualit.cjs.map +1 -0
- package/dist/virtualit/dist/virtualit.js +129 -0
- package/dist/virtualit/dist/virtualit.js.map +1 -0
- package/package.json +282 -0
package/dist/buildit.js
ADDED
|
@@ -0,0 +1,1892 @@
|
|
|
1
|
+
import{aria as e,computed as t,createContext as n,createFormIds as r,createId as i,css as a,defineComponent as o,defineField as s,effect as c,fire as l,guard as u,handle as d,html as f,inject as p,onCleanup as m,onMount as h,onSlotChange as g,provide as _,ref as v,signal as y,syncContextProps as b,typed as x,watch as S}from"@vielzeug/craftit";import{autoUpdate as C,computePosition as w,flip as T,offset as E,positionFloat as D,shift as O,size as k}from"@vielzeug/floatit";import{createDropZone as A}from"@vielzeug/dragit";var j=a`
|
|
2
|
+
@media (pointer: coarse) {
|
|
3
|
+
:host {
|
|
4
|
+
--_touch-target: var(--size-11);
|
|
5
|
+
}
|
|
6
|
+
}
|
|
7
|
+
`,M=a`
|
|
8
|
+
@media (prefers-reduced-motion: reduce) {
|
|
9
|
+
:host {
|
|
10
|
+
--_motion-transition: none;
|
|
11
|
+
--_motion-animation: none;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
`,N=a`
|
|
15
|
+
/* ========================================
|
|
16
|
+
Padding Variants
|
|
17
|
+
======================================== */
|
|
18
|
+
|
|
19
|
+
:host([padding='none']) {
|
|
20
|
+
--_padding: var(--size-0);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
:host([padding='sm']) {
|
|
24
|
+
--_padding: var(--size-3);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
:host([padding='md']) {
|
|
28
|
+
--_padding: var(--size-4);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
:host([padding='lg']) {
|
|
32
|
+
--_padding: var(--size-6);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
:host([padding='xl']) {
|
|
36
|
+
--_padding: var(--size-8);
|
|
37
|
+
}
|
|
38
|
+
`,P=a`
|
|
39
|
+
:host([rounded='none']) {
|
|
40
|
+
--_radius: var(--rounded-none);
|
|
41
|
+
}
|
|
42
|
+
:host([rounded='sm']) {
|
|
43
|
+
--_radius: var(--rounded-sm);
|
|
44
|
+
}
|
|
45
|
+
:host([rounded='md']) {
|
|
46
|
+
--_radius: var(--rounded-md);
|
|
47
|
+
}
|
|
48
|
+
:host([rounded='lg']) {
|
|
49
|
+
--_radius: var(--rounded-lg);
|
|
50
|
+
}
|
|
51
|
+
:host([rounded='xl']) {
|
|
52
|
+
--_radius: var(--rounded-xl);
|
|
53
|
+
}
|
|
54
|
+
:host([rounded='2xl']) {
|
|
55
|
+
--_radius: var(--rounded-2xl);
|
|
56
|
+
}
|
|
57
|
+
:host([rounded='3xl']) {
|
|
58
|
+
--_radius: var(--rounded-3xl);
|
|
59
|
+
}
|
|
60
|
+
:host([rounded='full']),
|
|
61
|
+
:host([rounded='']) {
|
|
62
|
+
--_radius: var(--rounded-full);
|
|
63
|
+
}
|
|
64
|
+
`,F=e=>{let t={lg:{fontSize:`var(--text-base)`,gap:`var(--size-2-5)`,size:`var(--size-6)`},md:{fontSize:`var(--text-sm)`,gap:`var(--size-2)`,size:`var(--size-5)`},sm:{fontSize:`var(--text-xs)`,gap:`var(--size-1-5)`,size:`var(--size-4)`}},n={...t.sm,...e?.sm},r={...t.md,...e?.md},i={...t.lg,...e?.lg},o=e=>e.replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`),s=e=>Object.entries(e).map(([e,t])=>t===void 0?``:e.startsWith(`--`)?`${e}: ${t};`:`${`--_${o(e)}`}: ${t};`).filter(Boolean).join(`
|
|
65
|
+
`);return a`
|
|
66
|
+
/* ========================================
|
|
67
|
+
Size Variants (Shared Mixin)
|
|
68
|
+
======================================== */
|
|
69
|
+
|
|
70
|
+
/* Small */
|
|
71
|
+
:host([size='sm']) {
|
|
72
|
+
${s(n)}
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
/* Medium (default, can be used for explicit md attribute) */
|
|
76
|
+
:host([size='md']) {
|
|
77
|
+
${s(r)}
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
/* Large */
|
|
81
|
+
:host([size='lg']) {
|
|
82
|
+
${s(i)}
|
|
83
|
+
}
|
|
84
|
+
`},I=(e=``)=>a`
|
|
85
|
+
:host([disabled])${e?` ${e}`:``} {
|
|
86
|
+
opacity: 0.5;
|
|
87
|
+
cursor: not-allowed;
|
|
88
|
+
pointer-events: none;
|
|
89
|
+
}
|
|
90
|
+
`,L=(e=``)=>{let t=e?` ${e}`:``;return a`
|
|
91
|
+
:host([disabled])${t}, :host([loading])${t} {
|
|
92
|
+
opacity: 0.5;
|
|
93
|
+
cursor: not-allowed;
|
|
94
|
+
pointer-events: none;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
:host([loading])${t} {
|
|
98
|
+
cursor: wait;
|
|
99
|
+
}
|
|
100
|
+
`},R=a`
|
|
101
|
+
/* ========================================
|
|
102
|
+
Color Themes (Default: Neutral)
|
|
103
|
+
======================================== */
|
|
104
|
+
|
|
105
|
+
:host {
|
|
106
|
+
/* Default to neutral when no color is specified */
|
|
107
|
+
--_theme-base: var(--color-neutral);
|
|
108
|
+
--_theme-content: var(--color-neutral-content);
|
|
109
|
+
--_theme-contrast: var(--color-neutral-contrast);
|
|
110
|
+
--_theme-focus: var(--color-neutral-focus);
|
|
111
|
+
--_theme-backdrop: var(--color-neutral-backdrop);
|
|
112
|
+
--_theme-border: var(--color-neutral-border);
|
|
113
|
+
--_theme-shadow: var(--color-neutral-focus-shadow);
|
|
114
|
+
--_theme-halo: var(--halo-shadow-neutral);
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
:host([color='primary']) {
|
|
118
|
+
--_theme-base: var(--color-primary);
|
|
119
|
+
--_theme-content: var(--color-primary-content);
|
|
120
|
+
--_theme-contrast: var(--color-primary-contrast);
|
|
121
|
+
--_theme-focus: var(--color-primary-focus);
|
|
122
|
+
--_theme-backdrop: var(--color-primary-backdrop);
|
|
123
|
+
--_theme-border: var(--color-primary-border);
|
|
124
|
+
--_theme-shadow: var(--color-primary-focus-shadow);
|
|
125
|
+
--_theme-halo: var(--halo-shadow-primary);
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
:host([color='secondary']) {
|
|
129
|
+
--_theme-base: var(--color-secondary);
|
|
130
|
+
--_theme-content: var(--color-secondary-content);
|
|
131
|
+
--_theme-contrast: var(--color-secondary-contrast);
|
|
132
|
+
--_theme-focus: var(--color-secondary-focus);
|
|
133
|
+
--_theme-backdrop: var(--color-secondary-backdrop);
|
|
134
|
+
--_theme-border: var(--color-secondary-border);
|
|
135
|
+
--_theme-shadow: var(--color-secondary-focus-shadow);
|
|
136
|
+
--_theme-halo: var(--halo-shadow-secondary);
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
:host([color='info']) {
|
|
140
|
+
--_theme-base: var(--color-info);
|
|
141
|
+
--_theme-content: var(--color-info-content);
|
|
142
|
+
--_theme-contrast: var(--color-info-contrast);
|
|
143
|
+
--_theme-focus: var(--color-info-focus);
|
|
144
|
+
--_theme-backdrop: var(--color-info-backdrop);
|
|
145
|
+
--_theme-border: var(--color-info-border);
|
|
146
|
+
--_theme-shadow: var(--color-info-focus-shadow);
|
|
147
|
+
--_theme-halo: var(--halo-shadow-info);
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
:host([color='success']) {
|
|
151
|
+
--_theme-base: var(--color-success);
|
|
152
|
+
--_theme-content: var(--color-success-content);
|
|
153
|
+
--_theme-contrast: var(--color-success-contrast);
|
|
154
|
+
--_theme-focus: var(--color-success-focus);
|
|
155
|
+
--_theme-backdrop: var(--color-success-backdrop);
|
|
156
|
+
--_theme-border: var(--color-success-border);
|
|
157
|
+
--_theme-shadow: var(--color-success-focus-shadow);
|
|
158
|
+
--_theme-halo: var(--halo-shadow-success);
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
:host([color='warning']) {
|
|
162
|
+
--_theme-base: var(--color-warning);
|
|
163
|
+
--_theme-content: var(--color-warning-content);
|
|
164
|
+
--_theme-contrast: var(--color-warning-contrast);
|
|
165
|
+
--_theme-focus: var(--color-warning-focus);
|
|
166
|
+
--_theme-backdrop: var(--color-warning-backdrop);
|
|
167
|
+
--_theme-border: var(--color-warning-border);
|
|
168
|
+
--_theme-shadow: var(--color-warning-focus-shadow);
|
|
169
|
+
--_theme-halo: var(--halo-shadow-warning);
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
:host([color='error']) {
|
|
173
|
+
--_theme-base: var(--color-error);
|
|
174
|
+
--_theme-content: var(--color-error-content);
|
|
175
|
+
--_theme-contrast: var(--color-error-contrast);
|
|
176
|
+
--_theme-focus: var(--color-error-focus);
|
|
177
|
+
--_theme-backdrop: var(--color-error-backdrop);
|
|
178
|
+
--_theme-border: var(--color-error-border);
|
|
179
|
+
--_theme-shadow: var(--color-error-focus-shadow);
|
|
180
|
+
--_theme-halo: var(--halo-shadow-error);
|
|
181
|
+
}
|
|
182
|
+
`,z=a`
|
|
183
|
+
/* ========================================
|
|
184
|
+
Elevation Levels (0-5)
|
|
185
|
+
======================================== */
|
|
186
|
+
|
|
187
|
+
:host([elevation='0']) {
|
|
188
|
+
--_shadow: none;
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
:host([elevation='1']) {
|
|
192
|
+
--_shadow: var(--shadow-sm);
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
:host([elevation='2']) {
|
|
196
|
+
--_shadow: var(--shadow-md);
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
:host([elevation='3']) {
|
|
200
|
+
--_shadow: var(--shadow-lg);
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
:host([elevation='4']) {
|
|
204
|
+
--_shadow: var(--shadow-xl);
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
:host([elevation='5']) {
|
|
208
|
+
--_shadow: var(--shadow-2xl);
|
|
209
|
+
}
|
|
210
|
+
`,B=a`
|
|
211
|
+
@media (forced-colors: active) {
|
|
212
|
+
:host {
|
|
213
|
+
border: 1px solid ButtonText;
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
`,V=e=>a`
|
|
217
|
+
@media (forced-colors: active) {
|
|
218
|
+
${e}:focus-visible {
|
|
219
|
+
outline: 2px solid Highlight;
|
|
220
|
+
outline-offset: 2px;
|
|
221
|
+
box-shadow: none;
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
`,ee=a`
|
|
225
|
+
@media (forced-colors: active) {
|
|
226
|
+
:host {
|
|
227
|
+
forced-color-adjust: none;
|
|
228
|
+
color: ButtonText;
|
|
229
|
+
background: ButtonFace;
|
|
230
|
+
border: 1px solid ButtonText;
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
:host([checked]) {
|
|
234
|
+
background: Highlight;
|
|
235
|
+
color: HighlightText;
|
|
236
|
+
border-color: Highlight;
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
:host([disabled]) {
|
|
240
|
+
color: GrayText;
|
|
241
|
+
border-color: GrayText;
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
`,H=!1;function U(){if(!H){if(typeof CSS<`u`&&CSS.registerProperty)try{CSS.registerProperty({inherits:!1,initialValue:`0deg`,name:`--rainbow-angle`,syntax:`<angle>`})}catch{}H=!0}}var W=e=>(U(),a`
|
|
245
|
+
/* ========================================
|
|
246
|
+
Rainbow Border Effect
|
|
247
|
+
======================================== */
|
|
248
|
+
|
|
249
|
+
:host([rainbow]) ${e} {
|
|
250
|
+
position: relative;
|
|
251
|
+
border: var(--border-2) solid transparent !important;
|
|
252
|
+
overflow: visible;
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
/* Rainbow border and glow layers */
|
|
256
|
+
:host([rainbow]) ${e}::before, :host([rainbow]) ${e}::after {
|
|
257
|
+
content: '';
|
|
258
|
+
position: absolute;
|
|
259
|
+
inset: calc(-1 * var(--border-2));
|
|
260
|
+
border: inherit;
|
|
261
|
+
border-radius: inherit;
|
|
262
|
+
|
|
263
|
+
/* Reserve no-clip space for glow */
|
|
264
|
+
box-shadow: 0 0 calc(3 * var(--blur-xl)) rgba(0 0 0 / 0.001);
|
|
265
|
+
|
|
266
|
+
/* Rainbow gradient — Okabe-Ito colorblind-safe palette */
|
|
267
|
+
background: conic-gradient(
|
|
268
|
+
from var(--rainbow-angle),
|
|
269
|
+
#56b4e9,
|
|
270
|
+
/* Sky Blue */ #0072b2,
|
|
271
|
+
/* Deep Blue */ #009e73,
|
|
272
|
+
/* Bluish Green */ #f0e442,
|
|
273
|
+
/* Yellow */ #e69f00,
|
|
274
|
+
/* Orange */ #d55e00,
|
|
275
|
+
/* Vermillion */ #cc79a7,
|
|
276
|
+
/* Reddish Purple */ #56b4e9 /* Back to Sky Blue */
|
|
277
|
+
)
|
|
278
|
+
border-box;
|
|
279
|
+
|
|
280
|
+
/* Make everything inside padding-box transparent
|
|
281
|
+
by subtracting padding-box from no-clip box */
|
|
282
|
+
-webkit-mask:
|
|
283
|
+
conic-gradient(red 0 0) no-clip subtract,
|
|
284
|
+
conic-gradient(red 0 0) padding-box;
|
|
285
|
+
mask:
|
|
286
|
+
conic-gradient(red 0 0) no-clip subtract,
|
|
287
|
+
conic-gradient(red 0 0) padding-box;
|
|
288
|
+
|
|
289
|
+
pointer-events: none;
|
|
290
|
+
animation: rainbow-rotate 4s linear infinite;
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
/* Turn one pseudo layer into glow halo */
|
|
294
|
+
:host([rainbow]) ${e}::after {
|
|
295
|
+
filter: blur(var(--blur-xl));
|
|
296
|
+
}
|
|
297
|
+
|
|
298
|
+
/* ========================================
|
|
299
|
+
Animation
|
|
300
|
+
======================================== */
|
|
301
|
+
|
|
302
|
+
@keyframes rainbow-rotate {
|
|
303
|
+
to {
|
|
304
|
+
--rainbow-angle: 1turn;
|
|
305
|
+
}
|
|
306
|
+
}
|
|
307
|
+
|
|
308
|
+
@media (prefers-reduced-motion: reduce) {
|
|
309
|
+
:host([rainbow]) ${e}::before, :host([rainbow]) ${e}::after {
|
|
310
|
+
animation: none;
|
|
311
|
+
}
|
|
312
|
+
}
|
|
313
|
+
`),G=e=>a`
|
|
314
|
+
:host([variant='frost']) ${e} {
|
|
315
|
+
backdrop-filter: blur(var(--blur-xl)) saturate(200%) brightness(1.1);
|
|
316
|
+
-webkit-backdrop-filter: blur(var(--blur-xl)) saturate(200%) brightness(1.1);
|
|
317
|
+
}
|
|
318
|
+
|
|
319
|
+
:host([variant='frost']:not([color])) ${e} {
|
|
320
|
+
background: color-mix(in srgb, var(--color-canvas) 55%, transparent);
|
|
321
|
+
border-color: color-mix(in srgb, var(--color-contrast-400) 45%, transparent);
|
|
322
|
+
color: var(--color-contrast);
|
|
323
|
+
text-shadow: var(--text-shadow-xs);
|
|
324
|
+
border: var(--border) solid var(--_border-color);
|
|
325
|
+
}
|
|
326
|
+
|
|
327
|
+
/* Frost neutral without elevation: use halo shadow */
|
|
328
|
+
:host([variant='frost']:not([color]):not([elevation])) ${e} {
|
|
329
|
+
box-shadow: var(--halo-shadow-neutral);
|
|
330
|
+
}
|
|
331
|
+
|
|
332
|
+
/* Frost neutral with elevation: combine halo with elevation shadow */
|
|
333
|
+
:host([variant='frost']:not([color])[elevation]) ${e} {
|
|
334
|
+
box-shadow: var(--halo-shadow-neutral), var(--_shadow);
|
|
335
|
+
}
|
|
336
|
+
|
|
337
|
+
:host([variant='frost'][color]) ${e} {
|
|
338
|
+
background: color-mix(in srgb, var(--_theme-base), transparent);
|
|
339
|
+
border-color: color-mix(in srgb, var(--_theme-border) 45%, transparent);
|
|
340
|
+
color: var(--_theme-content);
|
|
341
|
+
border: var(--border) solid color-mix(in srgb, var(--_theme-border) 45%, transparent);
|
|
342
|
+
backdrop-filter: blur(var(--blur-2xl)) saturate(220%) brightness(1.15);
|
|
343
|
+
-webkit-backdrop-filter: blur(var(--blur-2xl)) saturate(220%) brightness(1.15);
|
|
344
|
+
text-shadow: var(--text-shadow-xs);
|
|
345
|
+
filter: brightness(1.05);
|
|
346
|
+
}
|
|
347
|
+
|
|
348
|
+
/* Frost color without elevation: use halo shadow */
|
|
349
|
+
:host([variant='frost'][color]:not([elevation])) ${e} {
|
|
350
|
+
box-shadow: var(--_theme-halo);
|
|
351
|
+
}
|
|
352
|
+
|
|
353
|
+
/* Frost color with elevation: combine halo with elevation shadow */
|
|
354
|
+
:host([variant='frost'][color][elevation]) ${e} {
|
|
355
|
+
box-shadow: var(--_theme-halo), var(--_shadow);
|
|
356
|
+
}
|
|
357
|
+
|
|
358
|
+
:host([variant='frost']:not([color])) ${e}:hover {
|
|
359
|
+
backdrop-filter: blur(var(--blur-2xl)) saturate(220%) brightness(1.15);
|
|
360
|
+
-webkit-backdrop-filter: blur(var(--blur-2xl)) saturate(220%) brightness(1.15);
|
|
361
|
+
}
|
|
362
|
+
|
|
363
|
+
:host([variant='frost'][color]) ${e}:hover {
|
|
364
|
+
backdrop-filter: blur(var(--blur-3xl)) saturate(240%) brightness(1.2);
|
|
365
|
+
-webkit-backdrop-filter: blur(var(--blur-3xl)) saturate(240%) brightness(1.2);
|
|
366
|
+
}
|
|
367
|
+
|
|
368
|
+
/* ========================================
|
|
369
|
+
Halo Shadows per Theme Color
|
|
370
|
+
======================================== */
|
|
371
|
+
|
|
372
|
+
:host([variant='frost'][color='primary']) ${e} {
|
|
373
|
+
box-shadow: var(--halo-shadow-primary);
|
|
374
|
+
}
|
|
375
|
+
|
|
376
|
+
:host([variant='frost'][color='secondary']) ${e} {
|
|
377
|
+
box-shadow: var(--halo-shadow-secondary);
|
|
378
|
+
}
|
|
379
|
+
|
|
380
|
+
:host([variant='frost'][color='info']) ${e} {
|
|
381
|
+
box-shadow: var(--halo-shadow-info);
|
|
382
|
+
}
|
|
383
|
+
|
|
384
|
+
:host([variant='frost'][color='success']) ${e} {
|
|
385
|
+
box-shadow: var(--halo-shadow-success);
|
|
386
|
+
}
|
|
387
|
+
|
|
388
|
+
:host([variant='frost'][color='warning']) ${e} {
|
|
389
|
+
box-shadow: var(--halo-shadow-warning);
|
|
390
|
+
}
|
|
391
|
+
|
|
392
|
+
:host([variant='frost'][color='error']) ${e} {
|
|
393
|
+
box-shadow: var(--halo-shadow-error);
|
|
394
|
+
}
|
|
395
|
+
`,K=[R,j,M,P],q=[R,z,N,P],J=[R,ee,I()],te=`@layer buildit.base{:host{--_bg:var(--avatar-bg,var(--_theme-backdrop,var(--color-contrast-200)));--_color:var(--avatar-color,var(--_theme-base,var(--color-contrast-700)));--_radius:var(--avatar-radius,var(--rounded-full));--_font-weight:var(--avatar-font-weight,var(--font-semibold));--_border:var(--avatar-border,none);--_border-color:var(--avatar-border-color,var(--color-canvas));--_size:var(--avatar-size,var(--size-10));--_font-size:var(--avatar-font-size,var(--text-sm));flex-shrink:0;display:inline-flex;position:relative}.avatar{box-sizing:border-box;width:var(--_size);height:var(--_size);font-size:var(--_font-size);font-weight:var(--_font-weight);color:var(--_color);text-transform:uppercase;-webkit-user-select:none;user-select:none;background:var(--_bg);border:var(--_border);border-color:var(--_border-color);border-radius:var(--_radius);justify-content:center;align-items:center;line-height:1;display:inline-flex;overflow:hidden}img{object-fit:cover;width:100%;height:100%;display:block}img[hidden]{display:none}.initials{justify-content:center;align-items:center;width:100%;height:100%;display:inline-flex}.icon-fallback{width:100%;height:100%;color:var(--_color);opacity:.6;justify-content:center;align-items:center;display:inline-flex}.status{border:2px solid var(--_border-color,var(--color-canvas));border-radius:var(--rounded-full);width:.75em;height:.75em;position:absolute;bottom:0}.status:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:0}.status:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:0}.status[data-status=online]{background:var(--color-success)}.status[data-status=offline]{background:var(--color-contrast-400)}.status[data-status=busy]{background:var(--color-error)}.status[data-status=away]{background:var(--color-warning)}}@media (forced-colors:active){.avatar{forced-color-adjust:none;border:1px solid buttontext}.status{background:highlight;border:2px solid buttontext}}`,ne=`@layer buildit.base{:host{flex-direction:row;display:inline-flex}::slotted(bit-avatar){--avatar-border:var(--border-2) solid var(--color-canvas)}::slotted(bit-avatar):not(:is()){margin-left:calc(var(--avatar-group-overlap,-.75rem))}::slotted(bit-avatar):is(){margin-right:calc(var(--avatar-group-overlap,-.75rem))}::slotted(bit-avatar:first-child):not(:is()){margin-left:0}::slotted(bit-avatar:first-child):is(){margin-right:0}::slotted(bit-avatar[data-avatar-group-hidden]){display:none}.overflow-badge{--_size:var(--avatar-size,var(--size-10));box-sizing:border-box;width:var(--_size);height:var(--_size);font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--color-contrast-700);-webkit-user-select:none;user-select:none;background:var(--color-contrast-200);border:var(--border-2) solid var(--color-canvas);border-radius:var(--rounded-full);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.overflow-badge:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){margin-left:calc(var(--avatar-group-overlap,-.75rem))}.overflow-badge:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){margin-right:calc(var(--avatar-group-overlap,-.75rem))}}`,re={away:`Away`,busy:`Busy`,offline:`Offline`,online:`Online`},ie=o({props:{alt:{default:void 0},color:{default:void 0},initials:{default:void 0},rounded:{default:void 0},size:{default:void 0},src:{default:void 0},status:{default:void 0}},setup({props:e}){let n=y(!1);S(e.src,()=>{n.value=!1});let r=e=>{e&&(e.addEventListener(`error`,()=>{n.value=!0}),e.addEventListener(`load`,()=>{n.value=!1}))},i=t(()=>{if(e.initials.value)return e.initials.value.slice(0,2);let t=e.alt.value;if(!t)return``;let n=t.trim().split(/\s+/);return n.length>=2?(n[0][0]+n[n.length-1][0]).toUpperCase():n[0].slice(0,2).toUpperCase()}),a=t(()=>!!e.src.value&&!n.value),o=t(()=>!a.value&&!!i.value),s=t(()=>!a.value&&!o.value),c=t(()=>{let t=e.alt.value||null,n=e.status.value,r=n?re[n]:null;return!t&&!r?null:t?r?`${t}, ${r}`:t:`Status: ${r}`});return f`
|
|
396
|
+
<span
|
|
397
|
+
class="avatar"
|
|
398
|
+
part="avatar"
|
|
399
|
+
:aria-label="${()=>c.value}"
|
|
400
|
+
:role="${()=>c.value?`img`:null}">
|
|
401
|
+
${()=>e.src.value?f`<img
|
|
402
|
+
ref=${r}
|
|
403
|
+
part="img"
|
|
404
|
+
:src="${()=>e.src.value}"
|
|
405
|
+
:alt="${()=>e.alt.value||``}"
|
|
406
|
+
?hidden="${()=>!a.value}"
|
|
407
|
+
aria-hidden="true" />`:``}
|
|
408
|
+
${()=>o.value?f`<span class="initials" part="initials" aria-hidden="true">${()=>i.value}</span>`:``}
|
|
409
|
+
${()=>s.value?f`<span class="icon-fallback" part="fallback" aria-hidden="true">
|
|
410
|
+
<svg
|
|
411
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
412
|
+
viewBox="0 0 24 24"
|
|
413
|
+
fill="currentColor"
|
|
414
|
+
width="55%"
|
|
415
|
+
height="55%">
|
|
416
|
+
<path d="M12 12a5 5 0 1 0 0-10 5 5 0 0 0 0 10Zm0 2c-5.33 0-8 2.67-8 4v1h16v-1c0-1.33-2.67-4-8-4Z" />
|
|
417
|
+
</svg>
|
|
418
|
+
</span>`:``}
|
|
419
|
+
</span>
|
|
420
|
+
${()=>e.status.value?f`<span
|
|
421
|
+
class="status"
|
|
422
|
+
part="status"
|
|
423
|
+
:data-status="${()=>e.status.value}"
|
|
424
|
+
aria-hidden="true"></span>`:``}
|
|
425
|
+
`},styles:[R,P,F({lg:{fontSize:`var(--avatar-font-size, var(--text-base))`,size:`var(--avatar-size, var(--size-14))`},md:{fontSize:`var(--avatar-font-size, var(--text-sm))`,size:`var(--avatar-size, var(--size-10))`},sm:{fontSize:`var(--avatar-font-size, var(--text-xs))`,size:`var(--avatar-size, var(--size-7))`}}),te],tag:`bit-avatar`}),ae=o({props:{max:{default:5},total:{default:void 0}},setup({host:e,props:t}){let n=y(0);return h(()=>{g(`default`,()=>{let r=[...e.querySelectorAll(`bit-avatar`)],i=Number(t.max.value)||5,a=Math.max(0,r.length-i);n.value=t.total.value==null?a:Number(t.total.value)-i,r.forEach((e,t)=>{t>=i?e.setAttribute(`data-avatar-group-hidden`,``):e.removeAttribute(`data-avatar-group-hidden`)})})}),f`
|
|
426
|
+
<slot></slot>
|
|
427
|
+
${()=>n.value>0?f`<span class="overflow-badge" part="overflow" aria-label="${()=>`+${n.value} more`}">
|
|
428
|
+
+${()=>n.value}
|
|
429
|
+
</span>`:``}
|
|
430
|
+
`},styles:[ne],tag:`bit-avatar-group`}),oe=`@layer buildit.base{:host,.item{align-items:center;display:inline-flex}.separator{padding-inline:var(--size-2);font-size:var(--text-sm);font-weight:var(--font-normal);color:var(--color-contrast-400);display:none}:host([data-show-separator]) .separator{display:inline-block}.link{gap:var(--size-1);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-contrast-600);outline-offset:2px;border-radius:var(--rounded-sm);transition:color var(--transition-fast);align-items:center;text-decoration:none;display:inline-flex}.link:hover{color:var(--color-contrast-900);text-decoration:underline}.link:focus-visible{outline:var(--border-2) solid currentcolor;outline-offset:var(--border-2)}:host([active]) .link{font-weight:var(--font-semibold);color:var(--color-contrast-900);pointer-events:none;text-decoration:none}.icon{display:contents}.label{min-width:0;max-width:var(--breadcrumb-item-max-width,20ch);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}}`,se=`@layer buildit.base{:host,nav{display:block}ol{flex-wrap:wrap;align-items:center;gap:0;margin:0;padding:0;list-style:none;display:flex}}`,Y=o({props:{active:{default:!1},href:{default:``},separator:{default:`/`}},setup({props:e}){return f`
|
|
431
|
+
<li class="item" role="listitem">
|
|
432
|
+
<span class="separator" part="separator" aria-hidden="true">${()=>e.separator.value||`/`}</span>
|
|
433
|
+
<a
|
|
434
|
+
class="link"
|
|
435
|
+
href="${()=>e.href.value||void 0}"
|
|
436
|
+
aria-current="${()=>e.active.value?`page`:null}"
|
|
437
|
+
tabindex="${()=>e.active.value?`-1`:null}"
|
|
438
|
+
part="link">
|
|
439
|
+
<span class="icon"><slot name="icon"></slot></span>
|
|
440
|
+
<span class="label"><slot></slot></span>
|
|
441
|
+
</a>
|
|
442
|
+
</li>
|
|
443
|
+
`},styles:[oe],tag:`bit-breadcrumb-item`}),ce=o({props:{label:{default:`Breadcrumb`},separator:{default:``}},setup({host:e,props:t}){let n=()=>Array.from(e.getElementsByTagName(`bit-breadcrumb-item`)),r=()=>{let n=t.separator.value;n?e.style.setProperty(`--breadcrumb-separator`,`'${n}'`):e.style.removeProperty(`--breadcrumb-separator`)},i=()=>{let e=t.separator.value||`/`,r=n();for(let t=0;t<r.length;t+=1)r[t].setAttribute(`separator`,e),t===0?r[t].removeAttribute(`data-show-separator`):r[t].setAttribute(`data-show-separator`,``)};return h(()=>{g(`default`,i),i()}),c(r),c(i),f`
|
|
444
|
+
<nav aria-label="${()=>t.label.value}" part="nav">
|
|
445
|
+
<ol role="list" part="list">
|
|
446
|
+
<slot></slot>
|
|
447
|
+
</ol>
|
|
448
|
+
</nav>
|
|
449
|
+
`},styles:[se],tag:`bit-breadcrumb`}),le=`@layer buildit.base{:host{--_bg:var(--card-bg,var(--color-canvas));--_color:var(--card-color,var(--color-contrast-900));--_border:var(--card-border,var(--border));--_border-color:var(--card-border-color,var(--color-contrast-300));--_radius:var(--card-radius,var(--rounded-lg));--_padding:var(--card-padding,var(--size-4));--_shadow:var(--card-shadow,var(--shadow-sm));--_hover-shadow:var(--card-hover-shadow,var(--shadow-md));display:block;position:relative}.card{color:var(--_color);background:var(--_bg);border-radius:var(--_radius);transition:var(--_motion-transition,backdrop-filter var(--transition-slow), box-shadow var(--transition-normal), transform var(--transition-normal), background var(--transition-normal), border-color var(--transition-normal), opacity var(--transition-normal));flex-direction:column;display:flex;position:relative;overflow:hidden}.card-media{flex-shrink:0;overflow:hidden}.card-media img{object-fit:cover;width:100%;height:auto;display:block}.card-body{flex-direction:column;flex:1;min-height:0;display:flex}.card-header,.card-content,.card-footer{padding:var(--_padding)}.card-header{padding-bottom:calc(var(--_padding) / 2)}.card-footer{padding-top:calc(var(--_padding) / 2)}.card-content{flex:1}.card-actions{gap:var(--size-2);padding:var(--_padding);padding-top:calc(var(--_padding) / 2);flex-wrap:wrap;align-items:center;display:flex}[hidden]{display:none}}@layer buildit.variants{:host(:not([variant],[color])) .card{border:var(--_border) solid var(--_border-color);box-shadow:var(--_shadow)}:host(:not([variant])[color]) .card{background:var(--_theme-backdrop);border:var(--_border) solid var(--_theme-border)}:host(:not([variant])[color]:hover) .card{background:color-mix(in srgb, var(--_theme-base) 16%, var(--color-contrast-50));border-color:var(--_theme-focus)}:host([variant=solid]) .card{color:var(--_theme-contrast);background:var(--_theme-base);border:var(--_border) solid var(--_theme-base);box-shadow:var(--_shadow)}:host([variant=flat]) .card{background:var(--_theme-backdrop);border:var(--_border) solid color-mix(in srgb, var(--_theme-border) 50%, transparent)}:host([variant=glass]) .card{text-shadow:var(--text-shadow-xs);border:var(--_border) solid var(--_border-color);box-shadow:var(--shadow-md), var(--inset-shadow-xs);-webkit-backdrop-filter:blur(var(--blur-lg)) saturate(180%) brightness(1.05);backdrop-filter:blur(var(--blur-lg)) saturate(180%) brightness(1.05)}:host([variant=glass]:hover) .card{box-shadow:var(--shadow-xl), var(--inset-shadow-sm);-webkit-backdrop-filter:blur(var(--blur-xl)) saturate(200%) brightness(1.1);backdrop-filter:blur(var(--blur-xl)) saturate(200%) brightness(1.1)}:host([variant=glass][interactive]:hover) .card{box-shadow:var(--shadow-2xl), var(--inset-shadow-sm)}}@layer buildit.overrides{.loading-bar{background:linear-gradient(90deg, transparent 0%, var(--_theme-base,var(--color-primary)) 50%, transparent 100%);width:65%;height:3px;display:none;position:absolute;top:0}.loading-bar:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:0}.loading-bar:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:0}:host([loading]) .loading-bar{animation:var(--_motion-animation,loading-bar 1.4s ease-in-out infinite);display:block}:host(:dir(rtl)[loading]) .loading-bar{animation-direction:reverse}:host([disabled]){pointer-events:none;opacity:.6}:host([disabled][interactive]) .card{cursor:not-allowed}:host([interactive]:not([disabled]):hover) .card{box-shadow:var(--_hover-shadow);transform:translateY(calc(-1 * var(--size-1))) scale(1.01);will-change:box-shadow, transform}:host([interactive]) .card{cursor:pointer}:host([interactive]:not([disabled]):active) .card{box-shadow:var(--_shadow);transition:var(--_motion-transition,box-shadow var(--transition-fast), transform var(--transition-fast));transform:translateY(0)scale(.99)}:host([interactive]:focus-visible) .card{outline:var(--border-2) solid var(--_theme-focus,var(--color-primary));outline-offset:var(--border-2)}:host([orientation=horizontal]) .card{flex-direction:row}:host([orientation=horizontal]) .card-media{width:30%;min-width:192px;max-width:320px}:host([orientation=horizontal]) .card-media img{object-fit:cover;width:100%;height:100%}:host([orientation=horizontal]) .card-body{flex:1}}@keyframes loading-bar{0%{transform:translate(-100%)}to{transform:translate(200%)}}`,X=`button, a[href], input, select, textarea, summary, [role="button"], [role="link"], [contenteditable=""], [contenteditable="true"]`;function Z(e){return e?e.assignedNodes({flatten:!0}).some(e=>e.nodeType===Node.ELEMENT_NODE?!0:e.nodeType===Node.TEXT_NODE?!!e.textContent?.trim():!1):!1}function ue(e,t){for(let n of t.composedPath())if(n instanceof HTMLElement){if(n===e)return!1;if(n.matches(X)||n.closest(X))return!0}return!1}var de=o({props:{color:{default:void 0},disabled:{default:!1,type:Boolean},elevation:{default:void 0},interactive:{default:!1,type:Boolean},loading:{default:!1,type:Boolean},orientation:{default:void 0},padding:{default:void 0},variant:{default:void 0}},setup({emit:e,host:t,props:n}){let r=v(),i=v(),a=v(),o=v(),s=v(),c=y(!1),l=y(!1),u=y(!1),p=y(!1),m=y(!1);function _(){c.value=Z(r.value),l.value=Z(i.value),u.value=Z(a.value),p.value=Z(o.value),m.value=Z(s.value)}return h(()=>{g(`media`,_),g(`header`,_),g(`default`,_),g(`footer`,_),g(`actions`,_)}),S([n.interactive,n.disabled,n.loading,n.variant,n.color,n.padding,n.orientation],()=>{n.interactive.value?(t.setAttribute(`role`,`button`),t.setAttribute(`tabindex`,n.disabled.value?`-1`:`0`),t.setAttribute(`aria-disabled`,String(n.disabled.value))):(t.removeAttribute(`role`),t.removeAttribute(`tabindex`),t.removeAttribute(`aria-disabled`)),t.setAttribute(`aria-busy`,n.loading.value?`true`:`false`)},{immediate:!0}),d(t,`click`,r=>{!n.interactive.value||n.disabled.value||ue(t,r)||e(`activate`,{originalEvent:r,trigger:`pointer`})}),d(t,`keydown`,t=>{!n.interactive.value||n.disabled.value||(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),e(`activate`,{originalEvent:t,trigger:`keyboard`}))}),f`
|
|
450
|
+
<div class="card" part="card">
|
|
451
|
+
<div class="loading-bar" part="loading-bar"></div>
|
|
452
|
+
<div class="card-media" part="media" ?hidden="${()=>!c.value}">
|
|
453
|
+
<slot ref=${r} name="media"></slot>
|
|
454
|
+
</div>
|
|
455
|
+
<div class="card-body" part="body">
|
|
456
|
+
<div class="card-header" part="header" ?hidden="${()=>!l.value}">
|
|
457
|
+
<slot ref=${i} name="header"></slot>
|
|
458
|
+
</div>
|
|
459
|
+
<div class="card-content" part="content" ?hidden="${()=>!u.value}">
|
|
460
|
+
<slot ref=${a}></slot>
|
|
461
|
+
</div>
|
|
462
|
+
<div class="card-footer" part="footer" ?hidden="${()=>!p.value}">
|
|
463
|
+
<slot ref=${o} name="footer"></slot>
|
|
464
|
+
</div>
|
|
465
|
+
<div class="card-actions" part="actions" ?hidden="${()=>!m.value}">
|
|
466
|
+
<slot ref=${s} name="actions"></slot>
|
|
467
|
+
</div>
|
|
468
|
+
</div>
|
|
469
|
+
</div>
|
|
470
|
+
`},styles:[...q,G(`.card`),M,le],tag:`bit-card`}),fe=Symbol(`stateit.uninitialized`),Q={cleanups:null,deps:null,effect:null},pe={depth:0,pending:new Set},me=100,he=class{#e=new Set;_track(){if(Q.deps!==null&&Q.effect!==null){let e=Q.effect;this.#e.add(e),Q.deps.add(()=>this.#e.delete(e))}}_notify(){if(this.#e.size===0)return;if(pe.depth>0){for(let e of this.#e)pe.pending.add(e);return}let e=[];for(let t of[...this.#e])try{t()}catch(t){e.push(t)}if(e.length)throw e.length===1?e[0]:AggregateError(e,`[stateit] multiple subscriber errors`)}},ge=(e,t,n,r)=>{let i=Q.effect,a=Q.deps,o=Q.cleanups;Q.effect=e,Q.deps=t,Q.cleanups=n;try{return r()}finally{Q.effect=i,Q.deps=a,Q.cleanups=o}},_e=Symbol(`stateit.signal`),ve=class extends he{[_e]=!0;#e;#t=fe;#n=!0;#r=!1;#i;#a=new Set;#o=()=>{this.#n||(this.#n=!0,this._notify())};constructor(e,t){super(),this.#e=e,this.#i=t?.equals??Object.is,t?.lazy||this.#s()}#s(){for(let e of this.#a)e();this.#a.clear();let e=ge(this.#o,this.#a,null,this.#e);this.#n=!1,(this.#t===fe||!this.#i(this.#t,e))&&(this.#t=e)}get value(){return this.#r?this.#t:(this.#n&&this.#s(),this._track(),this.#t)}peek(){if(this.#t===fe){if(this.#r)return;this.#s()}return this.#t}get stale(){return this.#n||this.#r}dispose(){if(!this.#r){this.#r=!0;for(let e of this.#a)e();this.#a.clear()}}[Symbol.dispose](){this.dispose()}},ye=(e,t)=>new ve(e,t),be=(e,t)=>{let n,r=new Set,i=!1,a=!1,o=!1,s=t?.maxIterations??me,c=()=>{n?.(),n=void 0;for(let e of r)e();r.clear()},l=()=>{a=!1,c();let i=[],s,l=!1;try{ge(u,r,i,()=>{let t=e();typeof t==`function`&&i.push(t)})}catch(e){if(t?.onError)l=!0,s=e;else throw e}return n=i.length>0?()=>{for(let e of i)e()}:void 0,l&&(c(),t.onError(s),o=!0),l},u=()=>{if(o||i){i&&(a=!0);return}i=!0;try{let e=0;do{if(++e>s)throw Error(`[stateit] effect: possible infinite reactive loop (> ${s} iterations)`);if(l())break}while(a)}finally{i=!1}};u();let d=()=>{o||(o=!0,c())};return Object.assign(d,{dispose:d,[Symbol.dispose]:d})},xe=e=>{Q.cleanups?.push(e)},Se=class extends he{[_e]=!0;#e;#t;constructor(e,t){super(),this.#e=e,this.#t=t?.equals??Object.is}get value(){return this._track(),this.#e}set value(e){this.#t(this.#e,e)||(this.#e=e,this._notify())}update(e){this.value=e(this.#e)}peek(){return this.#e}},Ce=(e,t)=>new Se(e,t),we=e=>typeof e==`object`&&!!e&&_e in e;function Te(e,t=[]){return{__bindings:t,__html:e,toString(){return e}}}function Ee(e){return typeof e==`string`?{bindings:[],html:e}:{bindings:e.__bindings,html:e.__html}}var De=Symbol(`craftit.eachSignal`),Oe=[],ke=()=>{let e=Oe[Oe.length-1];if(!e)throw Error(`[craftit:E1] lifecycle outside setup`);return e},Ae=e=>{ke().onMount.push(e)},je=e=>{Oe.length>0?ke().cleanups.push(e):xe(e)},Me=e=>{Oe.length>0&&je(e)},Ne=(e,t)=>{let n=be(e,t);return Me(n),n},Pe=0,Fe=(e,t,n)=>{n==null||n===!1?e.removeAttribute(t):n===!0?e.setAttribute(t,``):e.setAttribute(t,String(n))},Ie=(e,t,n,r)=>{let i=n;return e.addEventListener(t,i,r),()=>e.removeEventListener(t,i,r)},Le=e=>`${e?`${e}-`:`cft-`}${++Pe}`,Re=e=>{if(we(e))return e;if(typeof e==`function`)return ye(e)},ze=e=>{if(!we(e))return!1;let t=Object.getPrototypeOf(e);for(;t;){let e=Object.getOwnPropertyDescriptor(t,`value`);if(e)return typeof e.set==`function`;t=Object.getPrototypeOf(t)}return!1},Be=(e,t)=>{if(!Object.is(e.value,t))try{e.value=t}catch{}},Ve=(e,t,n,r)=>{if(n){if(t===`value`){(e instanceof HTMLInputElement||e instanceof HTMLTextAreaElement||e instanceof HTMLSelectElement)&&r(Ie(e,e instanceof HTMLSelectElement?`change`:`input`,()=>{Be(n,e.value)}));return}t===`checked`&&e instanceof HTMLInputElement&&r(Ie(e,`change`,()=>{Be(n,e.checked)}))}},He=(e,t,n)=>e?(n(be(()=>{t(e.value)})),!0):!1,Ue=(e,t,n,r)=>t.startsWith(`@`)?(typeof n==`function`&&r(Ie(e,t.slice(1),n)),!0):!1,We=(e,t,n,r)=>{if(!t.startsWith(`.`))return!1;let i=t.slice(1),a=ze(n)?n:void 0;return He(Re(n),t=>e[i]=t,r)||(e[i]=n),Ve(e,i,a,r),!0},Ge=(e,t,n,r)=>{if(!t.startsWith(`?`))return!1;let i=t.slice(1);return He(Re(n),t=>e.toggleAttribute(i,!!t),r)||e.toggleAttribute(i,!!n),!0},Ke=(e,t,n,r)=>{He(Re(n),n=>Fe(e,t,n),r)||Fe(e,t,n)},qe=(e,t,n,r)=>{n!==void 0&&(Ue(e,t,n,r)||We(e,t,n,r)||Ge(e,t,n,r)||Ke(e,t,n,r))};function Je(e){return{mount(t,{registerCleanup:n}){for(let[r,i]of Object.entries(e))qe(t,r,i,n)}}}function Ye(e){let t={};for(let[n,r]of Object.entries(e))t[`.${n}`]=r;return Je(t)}function Xe(e){let t=Object.entries(e),n=t.some(([,e])=>we(e)||typeof e==`function`),r=()=>t.filter(([,e])=>we(e)?e.value:typeof e==`function`?!!e():!!e).map(([e])=>e).join(` `);return n?ye(r):r()}var Ze=RegExp(`u="(\\d+)"`,`g`),Qe=Te(``),$e=[];function et(e,t){let n=new Map,r=[];for(let i of e.__bindings){let e=i.uid,a=n.get(e)??String(t.n++);n.has(e)||n.set(e,a),r.push({...i,uid:a})}return{bindings:r,html:e.__html.replace(Ze,(e,t)=>`u="${n.get(t)??t}"`).replace(/<!--(\d+)-->/g,(e,t)=>`<!--${n.get(t)??t}-->`)}}function tt(e,t,n){let r=``,i=[],a=[],o=[],s={n:0};for(let c=0;c<e.length;c++){a.push(n(e[c],c));let l=t(e[c],c),u=typeof l==`string`?{bindings:$e,html:l}:et(l,s);r+=u.html,i.push(...u.bindings),o.push(u)}return{bindings:i,html:r,keys:a,rendered:o}}function nt(e,t){let n=``,r=[],i={n:0};for(let a=0;a<e.length;a++){let o=t(e[a],a),s=typeof o==`string`?{bindings:$e,html:o}:et(o,i);n+=s.html,r.push(...s.bindings)}return{bindings:r,html:n}}function rt(e,t,n,r){let i=typeof n==`function`,a=i?n:void 0,o=(i?r:r??n)??{},s=o.select;if(Array.isArray(e)){let n=s?e.filter(s):e;if(!n.length){if(a){let e=Ee(a());return Te(e.html,e.bindings)}return Qe}let{bindings:r,html:i}=nt(n,t);return Te(i,r)}let c=o.key;if(!c)throw Error(`[craftit:each] Reactive each() requires options.key for stable reconciliation.`);let l=we(e)?()=>e.value:e;return{[De]:ye(()=>{let e=l(),n=s?e.filter(s):e;if(!n.length){let e=a?.();return e?{...Ee(e),items:[],keys:[]}:{bindings:[],html:``,items:[],keys:[]}}let{bindings:r,html:i,keys:o,rendered:u}=tt(n,t,c);return{bindings:r,html:i,items:u,keys:o}})}}function it(e,t,n){if(we(e)||typeof e==`function`){let r=we(e)?()=>e.value:e;return{render:()=>r()?t():n?.()??``}}return e?t():n?.()??``}var at=`@layer buildit.base{:host{--group-gap:var(--size-2);--group-radius:var(--rounded-lg);display:inline-flex}.button-group{gap:var(--group-gap);flex-direction:row;display:flex}}@layer buildit.variants{:host([orientation=vertical]) .button-group{flex-direction:column}}@layer buildit.overrides{:host([fullwidth]){width:100%;display:flex}:host([fullwidth]) .button-group{width:100%}:host([fullwidth]) ::slotted(bit-button){flex:1}:host([attached]) .button-group{gap:0}:host([attached]) ::slotted(bit-button:hover),:host([attached]) ::slotted(bit-button:focus-within){z-index:1;position:relative}:host([attached]:not([orientation=vertical])) ::slotted(bit-button){--button-radius:0}:host([attached]:not([orientation=vertical])) ::slotted(bit-button:not(:first-child)){--button-border-start:0}:host([attached]:not([orientation=vertical])) ::slotted(bit-button:first-child){--button-radius:var(--group-radius) 0 0 var(--group-radius)}:host([attached]:not([orientation=vertical])) ::slotted(bit-button:last-child){--button-radius:0 var(--group-radius) var(--group-radius) 0}:host([attached][orientation=vertical]) ::slotted(bit-button){--button-radius:0}:host([attached][orientation=vertical]) ::slotted(bit-button:not(:first-child)){--button-border-top:0}:host([attached][orientation=vertical]) ::slotted(bit-button:first-child){--button-radius:var(--group-radius) var(--group-radius) 0 0}:host([attached][orientation=vertical]) ::slotted(bit-button:last-child){--button-radius:0 0 var(--group-radius) var(--group-radius)}}`,ot=n(`ButtonGroupContext`),st=o({props:{attached:{default:!1},color:{default:void 0},fullwidth:{default:!1},label:{default:void 0},orientation:{default:void 0},size:{default:void 0},variant:{default:void 0}},setup({props:e}){return _(ot,{color:e.color,size:e.size,variant:e.variant}),f`
|
|
471
|
+
<div class="button-group" part="group" role="group" :aria-label="${()=>e.label.value??null}">
|
|
472
|
+
<slot></slot>
|
|
473
|
+
</div>
|
|
474
|
+
`},styles:[at],tag:`bit-button-group`}),ct=`@layer buildit.base{:host{--_bg:var(--button-bg,var(--color-contrast-50));--_color:var(--button-color,var(--color-contrast-900));--_border:var(--button-border,var(--border));--_border-color:var(--button-border-color,var(--color-contrast-200));--_radius:var(--button-radius,var(--rounded-lg));justify-content:center;align-items:center;display:inline-flex}:host([disabled]){cursor:not-allowed}:host([disabled]) a,:host([loading]) a{pointer-events:none;cursor:not-allowed;opacity:.5}:host([loading]) a{cursor:wait}button,a{box-sizing:border-box;gap:var(--_gap,var(--size-2));width:100%;min-width:0;height:var(--_height,var(--size-10));min-height:var(--_touch-target);padding:var(--_padding,var(--size-2) var(--size-4));font-size:var(--_font-size,var(--text-sm));font-weight:var(--font-medium);line-height:var(--_line-height,var(--leading-normal));color:var(--_color);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;background:var(--_bg);border:var(--_border) solid var(--_border-color);border-top-width:var(--button-border-top,var(--_border));border-bottom-width:var(--button-border-bottom,var(--_border));border-radius:var(--_radius);transition:var(--_motion-transition,background var(--transition-normal), border-color var(--transition-normal), box-shadow var(--transition-normal), color var(--transition-normal), opacity var(--transition-normal), transform var(--transition-fast));justify-content:center;align-items:center;display:flex;position:relative}button:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))),a:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){border-left-width:var(--button-border-start,var(--_border));border-right-width:var(--button-border-end,var(--_border))}button:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)),a:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){border-right-width:var(--button-border-start,var(--_border));border-left-width:var(--button-border-end,var(--_border))}a{text-decoration:none}button:focus-visible,a:focus-visible{outline:none}.content{text-overflow:ellipsis;vertical-align:middle;white-space:nowrap;align-items:center;min-width:0;max-width:100%;display:inline-flex;overflow:hidden}::slotted([slot=prefix]),::slotted([slot=suffix]){flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}::slotted(svg){width:var(--_icon-size,var(--leading-6));height:var(--_icon-size,var(--leading-6));flex-shrink:0}}@layer buildit.overrides{:host([fullwidth]){width:100%;display:flex}:host([rounded][icon-only]) :is(button,a){border-radius:50%}:host([loading]) .content{visibility:hidden}}@layer buildit.variants{:host([icon-only]) :is(button,a){aspect-ratio:1;padding:0}:host(:not([variant])) :is(button,a),:host([variant=solid]) :is(button,a){color:var(--_theme-contrast);background:var(--_theme-base);border-color:var(--_theme-base)}:host(:not([variant])) :is(button,a):hover,:host([variant=solid]) :is(button,a):hover{background:var(--_theme-focus)}:host(:not([variant])) :is(button,a):active,:host([variant=solid]) :is(button,a):active{background:var(--_theme-content);box-shadow:var(--inset-shadow-2xs)}:host([variant=flat]) :is(button,a){color:var(--_theme-base);background:color-mix(in srgb, var(--_theme-backdrop) 8%, var(--color-contrast-100));border-color:color-mix(in srgb, var(--_theme-focus) 20%, transparent);box-shadow:var(--inset-shadow-2xs)}:host([variant=flat]) :is(button,a):hover{color:var(--_theme-contrast);background:var(--_theme-focus);box-shadow:var(--inset-shadow-xs)}:host([variant=flat]) :is(button,a):active{color:var(--_theme-contrast);background:var(--_theme-content);box-shadow:var(--inset-shadow-sm)}:host([variant=bordered]) :is(button,a){color:var(--_theme-base);background:var(--_theme-backdrop);border-color:var(--_theme-border);box-shadow:var(--inset-shadow-xs)}:host([variant=bordered]) :is(button,a):hover{color:var(--_theme-contrast);background:var(--_theme-focus);border-color:var(--_theme-focus);box-shadow:var(--inset-shadow-xs)}:host([variant=bordered]) :is(button,a):active{color:var(--_theme-contrast);background:var(--_theme-content);box-shadow:var(--inset-shadow-sm)}:host([variant=outline]) :is(button,a){color:var(--_theme-base);border-color:var(--_theme-base);background:0 0}:host([variant=outline]) :is(button,a):hover{background:var(--_theme-backdrop);border-color:var(--_theme-focus)}:host([variant=outline]) :is(button,a):active{color:var(--_theme-contrast);background:var(--_theme-base);box-shadow:var(--inset-shadow-2xs)}:host([variant=ghost]) :is(button,a){color:var(--_theme-base);background:0 0;border-width:0;border-color:#0000}:host([variant=ghost]) :is(button,a):hover{background:var(--_theme-backdrop)}:host([variant=ghost]) :is(button,a):active{color:var(--_theme-contrast);background:var(--_theme-base);box-shadow:var(--inset-shadow-2xs)}:host([variant=text]) :is(button,a){color:var(--_theme-base);background:0 0;border-width:0;border-color:#0000}:host([variant=text]) :is(button,a):hover{color:var(--_theme-focus)}:host([variant=text]) :is(button,a):active{color:var(--_theme-content)}:host([variant=frost]:not([color])) :is(button,a):active{background:color-mix(in srgb, var(--color-canvas) 70%, transparent);border-color:color-mix(in srgb, var(--theme-focus) 40%, transparent)}:host([variant=frost][color]) :is(button,a):active{background:color-mix(in srgb, var(--_theme-backdrop) 50%, var(--_theme-base) 50%);border-color:color-mix(in srgb, var(--_theme-focus) 65%, transparent)}}.loader{border:var(--border-2) solid currentcolor;width:1em;height:1em;animation:var(--_motion-animation,spin .6s linear infinite);border-radius:50%;position:absolute}.loader:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){border-right-color:#0000}.loader:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){border-left-color:#0000}@keyframes spin{to{transform:rotate(360deg)}}button:hover,a:hover,button:focus-visible,a:focus-visible{box-shadow:var(--_theme-shadow);outline:none}:host([variant=text]) button:hover,:host([variant=text]) a:hover{box-shadow:none}`,lt=o({formAssociated:!0,props:{color:{default:void 0},disabled:{default:!1},fullwidth:{default:!1},href:{default:void 0},iconOnly:{default:!1},label:{default:void 0},loading:{default:!1},rainbow:{default:!1},rel:{default:void 0},rounded:{default:void 0},size:{default:void 0},target:{default:void 0},type:{default:`button`},variant:{default:`solid`}},setup({host:e,props:n}){b(p(ot,void 0),n,[`color`,`size`,`variant`]);let r=t(()=>n.disabled.value||n.loading.value||!1),i=t(()=>!!n.href.value),a=s({disabled:r,toFormValue:()=>null,value:t(()=>``)}),o=t=>{if(r.value){t.preventDefault(),t.stopPropagation();return}t.stopPropagation(),l.mouse(e,t.type,t)},c=t=>{if(r.value)return;t.stopPropagation();let i=a.internals.form;i&&(n.type.value===`submit`?i.requestSubmit():n.type.value===`reset`&&i.reset()),l.mouse(e,t.type,t)};return f`
|
|
475
|
+
${it(i,()=>f`<a
|
|
476
|
+
part="button"
|
|
477
|
+
:href="${()=>n.href.value??null}"
|
|
478
|
+
:target="${()=>n.target.value??null}"
|
|
479
|
+
:rel="${()=>n.rel.value??null}"
|
|
480
|
+
:aria-label="${()=>n.label.value??null}"
|
|
481
|
+
:aria-disabled="${()=>r.value?`true`:null}"
|
|
482
|
+
:aria-busy="${()=>n.loading.value?`true`:null}"
|
|
483
|
+
role="button"
|
|
484
|
+
@click="${o}">
|
|
485
|
+
<span class="loader" part="loader" aria-label="Loading" ?hidden=${()=>!n.loading.value}></span>
|
|
486
|
+
<slot name="prefix"></slot>
|
|
487
|
+
<span class="content" part="content"><slot></slot></span>
|
|
488
|
+
<slot name="suffix"></slot>
|
|
489
|
+
</a>`,()=>f`<button
|
|
490
|
+
part="button"
|
|
491
|
+
type="button"
|
|
492
|
+
?disabled=${r}
|
|
493
|
+
:aria-label="${()=>n.label.value??null}"
|
|
494
|
+
:aria-disabled="${()=>r.value?`true`:null}"
|
|
495
|
+
:aria-busy="${()=>n.loading.value?`true`:null}"
|
|
496
|
+
@click="${c}">
|
|
497
|
+
<span class="loader" part="loader" aria-label="Loading" ?hidden=${()=>!n.loading.value}></span>
|
|
498
|
+
<slot name="prefix"></slot>
|
|
499
|
+
<span class="content" part="content"><slot></slot></span>
|
|
500
|
+
<slot name="suffix"></slot>
|
|
501
|
+
</button>`)}
|
|
502
|
+
`},shadow:{delegatesFocus:!0},styles:[...K,B,F({lg:{fontSize:`var(--text-base)`,gap:`var(--size-2-5)`,height:`var(--size-12)`,iconSize:`var(--size-6)`,lineHeight:`var(--leading-relaxed)`,padding:`var(--size-2-5) var(--size-5)`},sm:{fontSize:`var(--text-sm)`,gap:`var(--size-1-5)`,height:`var(--size-8)`,iconSize:`var(--size-4)`,lineHeight:`var(--leading-tight)`,padding:`var(--size-1-5) var(--size-3)`}}),G(`button`),W(`button`),L(`button`),ct],tag:`bit-button`}),ut=`@layer buildit.base{:host{gap:var(--size-1);align-items:center;display:flex}.pagination{gap:var(--pagination-gap,var(--size-1));align-items:center;margin:0;padding:0;list-style:none;display:flex}li{display:contents}button{all:unset;box-sizing:border-box;min-width:var(--pagination-item-size,var(--size-9));height:var(--pagination-item-size,var(--size-9));min-height:var(--_touch-target);padding:0 var(--size-2);font-size:var(--_font-size,var(--text-sm));font-weight:var(--font-medium);color:var(--color-contrast-700);cursor:pointer;-webkit-user-select:none;user-select:none;border:var(--border) solid transparent;border-radius:var(--pagination-radius,var(--rounded-lg));transition:background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);justify-content:center;align-items:center;display:inline-flex}:host(:not([variant])) button,:host([variant=ghost]) button{color:var(--_theme-base);background:0 0;border-width:0;border-color:#0000}:host(:not([variant])) button:hover:not(:is(:disabled,[aria-current=page])),:host([variant=ghost]) button:hover:not(:is(:disabled,[aria-current=page])){background:var(--_theme-backdrop)}:host([variant=solid]) button{color:var(--_theme-contrast);background:var(--_theme-base);border-color:var(--_theme-base)}:host([variant=solid]) button:hover:not(:is(:disabled,[aria-current=page])){background:var(--_theme-focus)}:host([variant=flat]) button{color:var(--_theme-base);background:color-mix(in srgb, var(--_theme-backdrop) 8%, var(--color-contrast-100));border-color:color-mix(in srgb, var(--_theme-focus) 20%, transparent);box-shadow:var(--inset-shadow-2xs)}:host([variant=flat]) button:hover:not(:is(:disabled,[aria-current=page])){color:var(--_theme-contrast);background:var(--_theme-focus)}:host([variant=bordered]) button{color:var(--_theme-base);background:var(--_theme-backdrop);border-color:var(--_theme-border);box-shadow:var(--inset-shadow-xs)}:host([variant=bordered]) button:hover:not(:is(:disabled,[aria-current=page])){color:var(--_theme-contrast);background:var(--_theme-focus);border-color:var(--_theme-focus)}:host([variant=outline]) button{color:var(--_theme-base);border-color:var(--_theme-base);background:0 0}:host([variant=outline]) button:hover:not(:is(:disabled,[aria-current=page])){background:var(--_theme-backdrop);border-color:var(--_theme-focus)}:host([variant=text]) button{color:var(--_theme-base);background:0 0;border-width:0;border-color:#0000}:host([variant=text]) button:hover:not(:is(:disabled,[aria-current=page])){color:var(--_theme-focus);background:0 0}:host([variant=frost]) button{color:var(--_theme-content);background:color-mix(in srgb, var(--_theme-backdrop) 45%, transparent);border-color:color-mix(in srgb, var(--_theme-border) 45%, transparent);-webkit-backdrop-filter:blur(var(--blur-xl)) saturate(200%);backdrop-filter:blur(var(--blur-xl)) saturate(200%)}:host([variant=frost]) button:hover:not(:is(:disabled,[aria-current=page])){background:color-mix(in srgb, var(--_theme-backdrop) 65%, transparent);border-color:color-mix(in srgb, var(--_theme-focus) 55%, transparent)}:host([variant=glass]) button{color:var(--_theme-content);background:color-mix(in srgb, var(--color-canvas) 70%, transparent);border-color:color-mix(in srgb, var(--_theme-border) 40%, transparent);-webkit-backdrop-filter:blur(var(--blur-md)) saturate(140%);backdrop-filter:blur(var(--blur-md)) saturate(140%)}:host([variant=glass]) button:hover:not(:is(:disabled,[aria-current=page])){background:color-mix(in srgb, var(--color-canvas) 55%, transparent);border-color:color-mix(in srgb, var(--_theme-focus) 45%, transparent)}button:hover:not(:is(:disabled,[aria-current=page])){background:var(--color-contrast-100)}button:focus-visible{outline:var(--border-2) solid var(--_theme-base,var(--color-contrast-500));outline-offset:var(--border-2)}button[aria-current=page]{color:var(--_theme-contrast,var(--color-canvas));cursor:default;background:var(--_theme-base,var(--color-contrast-800));border-color:var(--_theme-base,var(--color-contrast-800))}button:disabled{cursor:not-allowed;opacity:.4}.ellipsis{min-width:var(--pagination-item-size,var(--size-9));height:var(--pagination-item-size,var(--size-9));font-size:var(--_font-size,var(--text-sm));color:var(--color-contrast-400);cursor:default;justify-content:center;align-items:center;display:inline-flex}}@layer buildit.utilities{:host([size=sm]){--pagination-item-size:var(--size-7);--pagination-gap:var(--size-0_5);--_font-size:var(--text-xs)}:host([size=lg]){--pagination-item-size:var(--size-11);--_font-size:var(--text-base)}}`;function dt(e,t,n){let r=t,i=[];if(r<=2+2*n+3)return Array.from({length:r},(e,t)=>t+1);let a=Math.max(e-n,2),o=Math.min(e+n,r-1);i.push(1),a>3?i.push(`ellipsis-start`):a===3&&i.push(2);for(let e=a;e<=o;e++)i.push(e);return o<r-1-1?i.push(`ellipsis-end`):o===r-1-1&&i.push(r-1),i.push(r),i}var ft=o({props:{color:{default:void 0},label:{default:`Pagination`},page:{default:1},"show-first-last":{default:!1,type:Boolean},"show-prev-next":{default:!1,type:Boolean},siblings:{default:1},size:{default:void 0},"total-pages":{default:1},variant:{default:void 0}},setup({emit:e,host:n,props:r}){function i(t){let i=Number(r[`total-pages`].value)||1,a=Math.min(Math.max(1,t),i);a!==Number(r.page.value)&&(n.setAttribute(`page`,String(a)),e(`change`,{page:a}))}function a(e){let t=e.target?.closest(`[part="page-btn"]`);if(!t)return;let n=t.getAttribute(`aria-label`);if(!n)return;let r=n.match(/\d+/);r&&i(Number(r[0]))}let o=t(()=>dt(Number(r.page.value)||1,Number(r[`total-pages`].value)||1,Number(r.siblings.value)??1)),s=t(()=>(Number(r.page.value)||1)<=1),c=t(()=>(Number(r.page.value)||1)>=(Number(r[`total-pages`].value)||1));return f`
|
|
503
|
+
<nav :aria-label="${()=>r.label.value}" part="nav" @click=${a}>
|
|
504
|
+
<ol class="pagination" part="list">
|
|
505
|
+
${()=>r[`show-first-last`].value?f`<li>
|
|
506
|
+
<button
|
|
507
|
+
type="button"
|
|
508
|
+
class="nav-btn"
|
|
509
|
+
part="first-btn"
|
|
510
|
+
aria-label="First page"
|
|
511
|
+
?disabled=${()=>s.value}
|
|
512
|
+
@click=${()=>i(1)}>
|
|
513
|
+
<svg
|
|
514
|
+
width="16"
|
|
515
|
+
height="16"
|
|
516
|
+
viewBox="0 0 24 24"
|
|
517
|
+
fill="none"
|
|
518
|
+
stroke="currentColor"
|
|
519
|
+
stroke-width="2"
|
|
520
|
+
stroke-linecap="round"
|
|
521
|
+
stroke-linejoin="round"
|
|
522
|
+
aria-hidden="true">
|
|
523
|
+
<polyline points="11 17 6 12 11 7" />
|
|
524
|
+
<polyline points="18 17 13 12 18 7" />
|
|
525
|
+
</svg>
|
|
526
|
+
</button>
|
|
527
|
+
</li>`:``}
|
|
528
|
+
${()=>r[`show-prev-next`].value?f`<li>
|
|
529
|
+
<button
|
|
530
|
+
type="button"
|
|
531
|
+
class="nav-btn"
|
|
532
|
+
part="prev-btn"
|
|
533
|
+
aria-label="Previous page"
|
|
534
|
+
?disabled=${()=>s.value}
|
|
535
|
+
@click=${()=>i((Number(r.page.value)||1)-1)}>
|
|
536
|
+
<svg
|
|
537
|
+
width="16"
|
|
538
|
+
height="16"
|
|
539
|
+
viewBox="0 0 24 24"
|
|
540
|
+
fill="none"
|
|
541
|
+
stroke="currentColor"
|
|
542
|
+
stroke-width="2"
|
|
543
|
+
stroke-linecap="round"
|
|
544
|
+
stroke-linejoin="round"
|
|
545
|
+
aria-hidden="true">
|
|
546
|
+
<polyline points="15 18 9 12 15 6" />
|
|
547
|
+
</svg>
|
|
548
|
+
</button>
|
|
549
|
+
</li>`:``}
|
|
550
|
+
<li style="display: contents;">
|
|
551
|
+
${rt(o,e=>{if(e===`ellipsis-start`||e===`ellipsis-end`)return f`<span class="ellipsis" aria-hidden="true">…</span>`;let t=e;return t===(Number(r.page.value)||1)?f`<button type="button" part="page-btn" aria-label="Page ${t}" aria-current="page">
|
|
552
|
+
${t}
|
|
553
|
+
</button>`:f`<button type="button" part="page-btn" aria-label="Page ${t}">${t}</button>`},void 0,{key:e=>`${e}`})}
|
|
554
|
+
</li>
|
|
555
|
+
${()=>r[`show-prev-next`].value?f`<li>
|
|
556
|
+
<button
|
|
557
|
+
type="button"
|
|
558
|
+
class="nav-btn"
|
|
559
|
+
part="next-btn"
|
|
560
|
+
aria-label="Next page"
|
|
561
|
+
?disabled=${()=>c.value}
|
|
562
|
+
@click=${()=>i((Number(r.page.value)||1)+1)}>
|
|
563
|
+
<svg
|
|
564
|
+
width="16"
|
|
565
|
+
height="16"
|
|
566
|
+
viewBox="0 0 24 24"
|
|
567
|
+
fill="none"
|
|
568
|
+
stroke="currentColor"
|
|
569
|
+
stroke-width="2"
|
|
570
|
+
stroke-linecap="round"
|
|
571
|
+
stroke-linejoin="round"
|
|
572
|
+
aria-hidden="true">
|
|
573
|
+
<polyline points="9 18 15 12 9 6" />
|
|
574
|
+
</svg>
|
|
575
|
+
</button>
|
|
576
|
+
</li>`:``}
|
|
577
|
+
${()=>r[`show-first-last`].value?f`<li>
|
|
578
|
+
<button
|
|
579
|
+
type="button"
|
|
580
|
+
class="nav-btn"
|
|
581
|
+
part="last-btn"
|
|
582
|
+
aria-label="Last page"
|
|
583
|
+
?disabled=${()=>c.value}
|
|
584
|
+
@click=${()=>i(Number(r[`total-pages`].value)||1)}>
|
|
585
|
+
<svg
|
|
586
|
+
width="16"
|
|
587
|
+
height="16"
|
|
588
|
+
viewBox="0 0 24 24"
|
|
589
|
+
fill="none"
|
|
590
|
+
stroke="currentColor"
|
|
591
|
+
stroke-width="2"
|
|
592
|
+
stroke-linecap="round"
|
|
593
|
+
stroke-linejoin="round"
|
|
594
|
+
aria-hidden="true">
|
|
595
|
+
<polyline points="13 17 18 12 13 7" />
|
|
596
|
+
<polyline points="6 17 11 12 6 7" />
|
|
597
|
+
</svg>
|
|
598
|
+
</button>
|
|
599
|
+
</li>`:``}
|
|
600
|
+
</ol>
|
|
601
|
+
</nav>
|
|
602
|
+
`},styles:[R,F({}),j,ut],tag:`bit-pagination`}),pt=o({props:{color:x(void 0),decorative:x(!0),label:x(void 0),orientation:x(`horizontal`)},setup({props:e}){return f`
|
|
603
|
+
${()=>e.label.value?f`
|
|
604
|
+
<div class="separator-wrapper" part="wrapper">
|
|
605
|
+
<hr
|
|
606
|
+
class="separator"
|
|
607
|
+
part="separator"
|
|
608
|
+
:role="${()=>e.decorative.value?`none`:`separator`}"
|
|
609
|
+
:aria-hidden="${()=>e.decorative.value?`true`:null}"
|
|
610
|
+
:aria-orientation="${()=>e.orientation.value}" />
|
|
611
|
+
<span class="separator-label" part="label">${()=>e.label.value}</span>
|
|
612
|
+
<hr
|
|
613
|
+
class="separator"
|
|
614
|
+
part="separator"
|
|
615
|
+
:role="${()=>e.decorative.value?`none`:`separator`}"
|
|
616
|
+
:aria-hidden="${()=>e.decorative.value?`true`:null}" />
|
|
617
|
+
</div>
|
|
618
|
+
`:f`
|
|
619
|
+
<hr
|
|
620
|
+
class="separator"
|
|
621
|
+
part="separator"
|
|
622
|
+
:role="${()=>e.decorative.value?`none`:`separator`}"
|
|
623
|
+
:aria-hidden="${()=>e.decorative.value?`true`:null}"
|
|
624
|
+
:aria-orientation="${()=>e.orientation.value}" />
|
|
625
|
+
`}
|
|
626
|
+
`},styles:[R,`@layer buildit.base{:host{--_color:var(--separator-color,var(--color-contrast-300));--_size:var(--separator-size,var(--border));--_spacing:var(--separator-spacing,0);display:block}.separator{all:unset;box-sizing:border-box;margin:var(--_spacing) 0;display:block}:host([orientation=horizontal]),:host(:not([orientation=vertical])){width:100%}:host([orientation=horizontal]) .separator,:host(:not([orientation=vertical])) .separator{border-top:var(--_size) solid var(--_color);width:100%}:host([orientation=vertical]){align-self:stretch;display:inline-block}:host([orientation=vertical]) .separator{height:100%}:host([orientation=vertical]) .separator:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){border-left:var(--_size) solid var(--_color)}:host([orientation=vertical]) .separator:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){border-right:var(--_size) solid var(--_color)}:host([color]){--_color:var(--_theme-base)}.separator-wrapper{gap:var(--size-3);align-items:center;display:flex}.separator-wrapper .separator{flex:1}.separator-label{font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--_color);white-space:nowrap}}`],tag:`bit-separator`}),mt=`@layer buildit.base{:host{--_radius:var(--table-radius,var(--rounded-lg));--_shadow:var(--table-shadow,none);--_border:var(--table-border,1px solid var(--color-contrast-200));--_cell-padding:var(--table-cell-padding,var(--size-4) var(--size-5));--_cell-font-size:var(--table-cell-font-size,var(--text-sm));--_cell-color:var(--table-cell-color,var(--color-contrast-800));--_th-bg:var(--table-header-bg,color-mix(in srgb, var(--color-contrast-100) 85%, transparent));--_th-color:var(--table-header-color,var(--_theme-content));--_th-font-weight:var(--font-semibold);--_th-font-size:var(--text-xs);--_row-hover-bg:var(--table-row-hover-bg,var(--color-contrast-100));--_stripe-bg:transparent;border-radius:var(--_radius);width:100%;box-shadow:var(--_shadow);display:block}.scroll-container{-webkit-overflow-scrolling:touch;overflow-x:auto}table{table-layout:auto;border-spacing:0;border-collapse:collapse;background:var(--table-bg,var(--color-canvas));width:100%}caption{padding:var(--size-3) var(--size-5);font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--color-contrast-500);text-transform:uppercase;letter-spacing:.05em;caption-side:top;background:var(--_th-bg)}caption:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){text-align:left}caption:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){text-align:right}th,td{padding:var(--_cell-padding);font-size:var(--_cell-font-size);vertical-align:middle;color:var(--_cell-color);border-bottom:var(--_border);transition:background var(--duration-150) var(--ease-in-out);background:0 0;font-weight:400}th:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))),td:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){text-align:left}th:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)),td:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){text-align:right}tbody tr:last-child th,tbody tr:last-child td,tfoot tr:last-child th,tfoot tr:last-child td{border-bottom:none}thead th,thead td,tfoot th,tfoot td{font-size:var(--_th-font-size);font-weight:var(--_th-font-weight);color:var(--_th-color);border-bottom:var(--border-2) solid var(--color-contrast-200);-webkit-backdrop-filter:blur(var(--blur-md)) saturate(140%);backdrop-filter:blur(var(--blur-md)) saturate(140%);background:var(--_th-bg)!important}thead th{text-transform:uppercase;letter-spacing:.05em}tbody tr:hover th,tbody tr:hover td{background:var(--_row-hover-bg)}tbody tr:nth-child(2n) th,tbody tr:nth-child(2n) td{background:var(--_stripe-bg)}tbody tr:nth-child(2n):hover th,tbody tr:nth-child(2n):hover td{background:var(--_row-hover-bg)}}@layer buildit.states{:host([loading]){cursor:wait}:host([loading]) table{pointer-events:none;opacity:.5;transition:opacity var(--duration-200) var(--ease-in-out)}}@layer buildit.variants{:host([striped]){--_stripe-bg:var(--table-stripe-bg,var(--color-contrast-50))}:host([bordered]){border:var(--_border);border-radius:var(--_radius);box-shadow:var(--shadow-xs);overflow:hidden}:host([bordered]) .scroll-container{border-radius:inherit;clip-path:inset(0 round var(--_radius))}:host([color]){--_th-color:var(--_theme-base)}:host([sticky]) .scroll-container{max-height:var(--table-sticky-max-height,24rem);overflow-y:auto}:host([sticky]) thead th,:host([sticky]) thead td{z-index:10;background:var(--table-sticky-header-bg,var(--lightningcss-light,color-mix(in srgb, var(--color-contrast-50) 94%, transparent))var(--lightningcss-dark,color-mix(in srgb, var(--color-contrast-100) 94%, transparent)));-webkit-backdrop-filter:blur(var(--table-sticky-blur,var(--blur-md))) saturate(140%);backdrop-filter:blur(var(--table-sticky-blur,var(--blur-md))) saturate(140%);will-change:backdrop-filter;position:sticky;top:0}}@layer buildit.utilities{:host([size=sm]){--_cell-padding:var(--size-2) var(--size-3);--_cell-font-size:var(--text-xs)}:host([size=lg]){--_cell-padding:var(--size-5) var(--size-8);--_cell-font-size:var(--text-base)}}`;customElements.get(`bit-tr`)||customElements.define(`bit-tr`,class extends HTMLElement{}),customElements.get(`bit-th`)||customElements.define(`bit-th`,class extends HTMLElement{}),customElements.get(`bit-td`)||customElements.define(`bit-td`,class extends HTMLElement{});var ht=`bit-tr`,gt=`bit-th`,_t=`bit-td`,vt=[`colspan`,`rowspan`,`scope`,`headers`,`abbr`,`axis`,`align`,`valign`,`width`];function yt(e,t,n,r){let i=[];t.textContent=``,n.textContent=``,r.textContent=``;function a(e,t){let n=e.localName===`bit-th`,r=document.createElement(n?`th`:`td`);for(let t of vt){let n=e.getAttribute(t);n!==null&&r.setAttribute(t,n)}r.textContent=e.textContent??``;let a=new MutationObserver(()=>{r.textContent=e.textContent??``;for(let t of vt){let n=e.getAttribute(t);n===null?r.removeAttribute(t):r.setAttribute(t,n)}});return a.observe(e,{attributes:!0,characterData:!0,childList:!0,subtree:!0}),i.push(a),t.appendChild(r),r}function o(e,t){let n=document.createElement(`tr`);for(let t of e.children)(t.localName===`bit-th`||t.localName===`bit-td`)&&a(t,n);t.appendChild(n)}for(let i of e.children)i.localName===`bit-tr`&&(i.hasAttribute(`head`)?o(i,t):i.hasAttribute(`foot`)?o(i,r):o(i,n));return()=>{for(let e of i)e.disconnect()}}var bt=o({props:{bordered:{default:!1,type:Boolean},caption:{default:void 0},color:{default:void 0},loading:{default:!1,type:Boolean},size:{default:void 0},sticky:{default:!1,type:Boolean},striped:{default:!1,type:Boolean}},setup({host:t,props:n}){return e({busy:()=>n.loading.value,label:()=>n.caption.value??null}),h(()=>{let e=t.shadowRoot.querySelector(`.scroll-container`),r=document.createElement(`table`),i=document.createElement(`caption`),a=document.createElement(`thead`),o=document.createElement(`tbody`),s=document.createElement(`tfoot`);e.setAttribute(`part`,`scroll`),r.setAttribute(`part`,`table`),a.setAttribute(`part`,`head`),o.setAttribute(`part`,`body`),s.setAttribute(`part`,`foot`),r.append(i,a,o,s),e.appendChild(r),c(()=>{i.hidden=!(i.textContent=n.caption.value??``)});let l=yt(t,a,o,s),u=new MutationObserver(()=>{l(),l=yt(t,a,o,s)});return u.observe(t,{childList:!0}),()=>{u.disconnect(),l()}}),f`<div class="scroll-container"></div>`},styles:[R,M,mt],tag:`bit-table`}),xt=o({props:{align:x(void 0),as:x(void 0),color:x(void 0),italic:x(!1),lines:x(void 0,{type:Number}),size:x(void 0),truncate:x(!1),variant:x(void 0),weight:x(void 0)},setup({host:e,props:t}){return S(t.as,t=>{let n=/^h([1-6])$/.exec(t??``);n?(e.setAttribute(`role`,`heading`),e.setAttribute(`aria-level`,n[1])):(e.removeAttribute(`role`),e.removeAttribute(`aria-level`))},{immediate:!0}),S(t.lines,t=>{t==null?e.style.removeProperty(`--_lines`):e.style.setProperty(`--_lines`,String(t))},{immediate:!0}),f`<slot></slot>`},styles:[`:host{--_size:var(--text-size,var(--text-base));--_weight:var(--text-weight,var(--font-normal));--_color:var(--text-color,var(--text-color-body));--_line-height:var(--text-line-height,var(--leading-normal));--_letter-spacing:var(--text-letter-spacing,normal);font-size:var(--_size);font-weight:var(--_weight);line-height:var(--_line-height);color:var(--_color);letter-spacing:var(--_letter-spacing);display:block}:host([hidden]){display:none}:host([lines]){-webkit-line-clamp:var(--_lines);-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:host(:is([as=span],[as=label],[as=code]):not([align],[truncate])){display:inline}:host([variant=heading]){--_size:var(--text-size,var(--heading-md));--_weight:var(--text-weight,var(--font-semibold));--_color:var(--text-color,var(--text-color-heading));--_line-height:var(--text-line-height,var(--leading-tight));--_letter-spacing:var(--text-letter-spacing,var(--tracking-header))}:host([variant=label]){--_size:var(--text-size,var(--text-sm));--_weight:var(--text-weight,var(--font-medium));--_color:var(--text-color,var(--text-color-heading));--_line-height:var(--text-line-height,var(--leading-snug))}:host([variant=caption]){--_size:var(--text-size,var(--text-sm));--_color:var(--text-color,var(--text-color-secondary))}:host([variant=overline]){--_size:var(--text-size,var(--text-xs));--_weight:var(--text-weight,var(--font-semibold));--_line-height:var(--text-line-height,var(--leading-none));--_letter-spacing:var(--text-letter-spacing,.08em);text-transform:uppercase}:host([variant=code]){--_size:var(--text-size,var(--text-sm));font-family:var(--font-mono,monospace)}:host([size=xs]){--_size:var(--text-xs)}:host([size=sm]){--_size:var(--text-sm)}:host([size=md]){--_size:var(--text-base)}:host([size=lg]){--_size:var(--text-lg)}:host([size=xl]){--_size:var(--text-xl)}:host([size="2xl"]){--_size:var(--text-2xl)}:host([variant=heading][size=xs]){--_size:var(--heading-xs)}:host([variant=heading][size=sm]){--_size:var(--heading-sm)}:host([variant=heading][size=md]){--_size:var(--heading-md)}:host([variant=heading][size=lg]){--_size:var(--heading-lg)}:host([variant=heading][size=xl]){--_size:var(--heading-xl)}:host([variant=heading][size="2xl"]){--_size:var(--heading-2xl)}:host([weight=normal]){--_weight:var(--font-normal)}:host([weight=medium]){--_weight:var(--font-medium)}:host([weight=semibold]){--_weight:var(--font-semibold)}:host([weight=bold]){--_weight:var(--font-bold)}:host([color=primary]){--_color:var(--color-primary)}:host([color=secondary]){--_color:var(--color-secondary)}:host([color=info]){--_color:var(--color-info)}:host([color=success]){--_color:var(--color-success)}:host([color=warning]){--_color:var(--color-warning)}:host([color=error]){--_color:var(--color-error)}:host([color=heading]){--_color:var(--text-color-heading)}:host([color=body]){--_color:var(--text-color-body)}:host([color=muted]){--_color:var(--text-color-secondary)}:host([color=tertiary]){--_color:var(--text-color-tertiary)}:host([color=disabled]){--_color:var(--text-color-disabled)}:host([color=contrast]){--_color:var(--text-color-contrast)}@layer buildit.utilities{:host([align]){display:block}:host([align=left]):not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){text-align:left}:host([align=left]):is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){text-align:right}:host([align=center]){text-align:center}:host([align=right]):not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){text-align:right}:host([align=right]):is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){text-align:left}:host([align=justify]){text-align:justify}:host([truncate]){text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}:host([italic]){font-style:italic}:host([as=p]),:host([as=div]),:host(:is([as=h1],[as=h2],[as=h3],[as=h4],[as=h5],[as=h6])){display:block}}`],tag:`bit-text`}),St=`@layer buildit.base{:host{gap:var(--size-2);flex-direction:column;width:100%;display:flex}::slotted(bit-accordion-item){width:100%}}@layer buildit.variants{:host([variant=bordered]){gap:var(--size-2)}:host([variant=text]){gap:0}:host([variant=text]) ::slotted(bit-accordion-item:not(:last-child)){border-bottom:1px solid var(--color-contrast-200)}:host([variant=solid]),:host([variant=flat]),:host([variant=glass]),:host([variant=frost]){padding:var(--size-2);border-radius:var(--rounded-lg);gap:0}:host([variant=solid]){background:var(--color-contrast-50);border:var(--border) solid var(--color-contrast-200);box-shadow:var(--shadow-xs)}:host([variant=flat]){background:var(--color-contrast-100);border:var(--border) solid var(--color-contrast-200);box-shadow:var(--inset-shadow-xs)}:host([variant=glass]),:host([variant=frost]){box-shadow:var(--shadow-md), var(--inset-shadow-xs);-webkit-backdrop-filter:blur(var(--blur-lg)) saturate(180%) brightness(1.05);backdrop-filter:blur(var(--blur-lg)) saturate(180%) brightness(1.05)}:host([variant=glass]){background:color-mix(in srgb, var(--color-secondary) 30%, var(--color-contrast) 10%)}:host([variant=frost]){background:color-mix(in srgb, var(--color-canvas) 55%, transparent)}:host(:is([variant=glass],[variant=frost])) ::slotted(bit-accordion-item){border-radius:0}:host(:is([variant=glass],[variant=frost])) ::slotted(bit-accordion-item:first-child){border-radius:var(--rounded-lg) var(--rounded-lg) 0 0}:host(:is([variant=glass],[variant=frost])) ::slotted(bit-accordion-item:last-child){border-radius:0 0 var(--rounded-lg) var(--rounded-lg)}:host(:is([variant=glass],[variant=frost])) ::slotted(bit-accordion-item:only-child){border-radius:var(--rounded-lg)}}`,Ct=n(`AccordionContext`),wt=o({props:{selectionMode:x(void 0),size:x(void 0),variant:x(void 0)},setup({emit:e,host:n,props:r}){let i=t=>{r.selectionMode.value===`single`&&(n.querySelectorAll(`bit-accordion-item`).forEach(e=>{e!==t&&e.hasAttribute(`expanded`)&&e.removeAttribute(`expanded`)}),e(`change`,{expandedItem:t}))};return _(Ct,{notifyExpand:i,selectionMode:t(()=>r.selectionMode.value),size:r.size,variant:r.variant}),d(n,`expand`,e=>i(e.target)),d(n,`keydown`,e=>{if(e.key!==`ArrowDown`&&e.key!==`ArrowUp`&&e.key!==`Home`&&e.key!==`End`)return;let t=[...n.querySelectorAll(`bit-accordion-item:not([disabled])`)].map(e=>e.shadowRoot?.querySelector(`summary`)).filter(Boolean);if(!t.length)return;let r=t.indexOf(document.activeElement);if(r===-1)return;let i=r;e.key===`ArrowDown`?i=(r+1)%t.length:e.key===`ArrowUp`?i=(r-1+t.length)%t.length:e.key===`Home`?i=0:e.key===`End`&&(i=t.length-1),e.preventDefault(),t[i]?.focus()}),f`<slot></slot>`},styles:[St],tag:`bit-accordion`}),Tt=`@layer buildit.base{:host{--tabs-transition:var(--transition-normal);--tabs-radius:var(--rounded-lg);flex-direction:column;width:100%;height:100%;display:flex}.tablist-wrapper{flex-shrink:0;position:relative}[role=tablist]{gap:var(--tabs-tab-gap,var(--size-1));scrollbar-width:none;align-items:stretch;display:flex;position:relative;overflow-x:auto}[role=tablist]::-webkit-scrollbar{display:none}.indicator{pointer-events:none;background:var(--tabs-indicator-color,var(--_theme-base));border-radius:var(--rounded-full);height:2px;transition:left var(--tabs-transition), width var(--tabs-transition);position:absolute;bottom:0}.panels{flex-direction:column;flex:1;min-height:0;display:flex}}@layer buildit.orientation{:host([orientation=vertical]){flex-direction:row;align-items:flex-start}:host([orientation=vertical]) .tablist-wrapper{flex-shrink:0;display:flex}:host([orientation=vertical]) [role=tablist]{width:max-content;overflow-x:unset;flex-direction:column;overflow-y:auto}:host([orientation=vertical]) .indicator{bottom:unset;width:2px;height:unset;transition:top var(--tabs-transition), height var(--tabs-transition)}:host([orientation=vertical]) .indicator:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:0}:host([orientation=vertical]) .indicator:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:0}}@layer buildit.variants{:host,:host([variant=solid]){--tabs-tab-gap:var(--size-1)}:host [role=tablist],:host([variant=solid]) [role=tablist]{padding:var(--size-1);background:var(--color-contrast-100);border:var(--border) solid var(--color-contrast-200);border-radius:var(--tabs-radius)}:host .indicator,:host([variant=solid]) .indicator{display:none}:host([variant=flat]){background:var(--color-contrast-100);border:var(--border) solid var(--color-contrast-200);border-radius:var(--tabs-radius);box-shadow:var(--inset-shadow-xs), var(--shadow-2xs);overflow:hidden}:host([variant=flat]) [role=tablist]{gap:var(--size-1);padding:var(--size-1);border:none;border-bottom:var(--border) solid var(--color-contrast-200);background:0 0;border-radius:0}:host([variant=flat]) .indicator{display:none}:host([variant=bordered]) [role=tablist]{gap:var(--size-1);padding:var(--size-1);border:var(--border) solid var(--color-contrast-200);border-radius:var(--tabs-radius) var(--tabs-radius) 0 0;background:0 0;border-bottom:none}:host([variant=bordered]) .indicator{display:none}:host([variant=bordered]) .panels{border:var(--border) solid var(--color-contrast-200);border-radius:0 0 var(--tabs-radius) var(--tabs-radius)}:host([variant=ghost]) [role=tablist]{gap:var(--size-1);background:0 0;border:none;border-radius:0;padding:0}:host([variant=ghost]) .indicator{display:none}:host([variant=glass]) [role=tablist]{padding:var(--size-1);background:color-mix(in srgb, var(--color-secondary) 20%, transparent);border:var(--border) solid color-mix(in srgb, var(--color-secondary-contrast) 15%, transparent);border-radius:var(--tabs-radius);box-shadow:var(--shadow-md), var(--inset-shadow-xs);-webkit-backdrop-filter:blur(var(--blur-lg)) saturate(180%) brightness(1.05);backdrop-filter:blur(var(--blur-lg)) saturate(180%) brightness(1.05)}:host([variant=glass]) .indicator{display:none}:host([variant=frost]) [role=tablist]{padding:var(--size-1);background:color-mix(in srgb, var(--color-canvas) 55%, transparent);border:var(--border) solid color-mix(in srgb, var(--color-contrast-300) 50%, transparent);border-radius:var(--tabs-radius);box-shadow:var(--shadow-md), var(--inset-shadow-xs);-webkit-backdrop-filter:blur(var(--blur-lg)) saturate(180%);backdrop-filter:blur(var(--blur-lg)) saturate(180%)}:host([variant=frost]) .indicator{display:none}:host([size=sm]){--tabs-tab-size:var(--text-xs);--tabs-tab-padding:var(--size-1) var(--size-3)}:host(:not([size])),:host([size=md]){--tabs-tab-size:var(--text-sm);--tabs-tab-padding:var(--size-1-5) var(--size-4)}:host([size=lg]){--tabs-tab-size:var(--text-base);--tabs-tab-padding:var(--size-2) var(--size-5)}}`,Et=n(`TabsContext`),Dt=o({props:{activation:{default:`auto`},color:{default:void 0},label:{default:void 0},orientation:{default:`horizontal`},size:{default:void 0},value:{default:void 0},variant:{default:void 0}},setup({emit:e,host:n,props:r}){let i=v(),a=v(),o=y(r.value.value),s=()=>[...n.querySelectorAll(`bit-tab-item`)],c=(t,r=!1)=>{o.value=t,t==null?n.removeAttribute(`value`):n.getAttribute(`value`)!==t&&n.setAttribute(`value`,t),r&&t&&e(`change`,{value:t})},l=()=>{let e=s();if(e.length===0)return;let t=o.value;t&&e.some(e=>e.getAttribute(`value`)===t&&!e.hasAttribute(`disabled`))||c(e.find(e=>!e.hasAttribute(`disabled`))?.getAttribute(`value`)??void 0,!1)};S(r.value,e=>{o.value=e,l()}),_(Et,{color:r.color,orientation:t(()=>r.orientation.value??`horizontal`),size:r.size,value:o,variant:r.variant});let u=e=>{let t=a.value,n=i.value;if(!(!t||!n||!e))if(r.orientation.value===`vertical`){let r=e.getBoundingClientRect(),i=n.getBoundingClientRect();t.style.top=`${r.top-i.top+n.scrollTop}px`,t.style.height=`${r.height}px`,t.style.left=`0`,t.style.width=``}else{let r=e.getBoundingClientRect(),i=n.getBoundingClientRect();t.style.left=`${r.left-i.left+n.scrollLeft}px`,t.style.width=`${r.width}px`,t.style.top=``,t.style.height=``}},p=()=>{let e=o.value;e&&u(s().find(t=>t.getAttribute(`value`)===e))};return S(o,()=>requestAnimationFrame(p)),d(n,`click`,e=>{let t=e.target.closest(`bit-tab-item`);if(!t||t.hasAttribute(`disabled`)||t.closest(`bit-tabs`)!==n)return;let r=t.getAttribute(`value`);!r||r===o.value||c(r,!0)}),d(n,`keydown`,e=>{let t=s().filter(e=>!e.hasAttribute(`disabled`)),n=t.findIndex(e=>e.getAttribute(`value`)===o.value),i=r.orientation.value===`vertical`,a=n;if(e.key===(i?`ArrowDown`:`ArrowRight`))a=(n+1)%t.length;else if(e.key===(i?`ArrowUp`:`ArrowLeft`))a=(n-1+t.length)%t.length;else if(!i&&e.key===`ArrowDown`)a=(n+1)%t.length;else if(!i&&e.key===`ArrowUp`)a=(n-1+t.length)%t.length;else if(e.key===`Home`)a=0;else if(e.key===`End`)a=t.length-1;else if(r.activation.value===`manual`&&(e.key===`Enter`||e.key===` `)){let e=t.find(e=>e===document.activeElement||e.shadowRoot?.activeElement===document.activeElement)?.getAttribute(`value`);e&&e!==o.value&&c(e,!0);return}else return;e.preventDefault();let l=t[a]?.getAttribute(`value`);l&&(t[a]?.focus(),r.activation.value!==`manual`&&c(l,!0))}),h(()=>{let e=()=>{l(),p()},t=n.shadowRoot?.querySelector(`slot[name="tabs"]`);return t&&t.addEventListener(`slotchange`,e),e(),requestAnimationFrame(e),()=>{t&&t.removeEventListener(`slotchange`,e)}}),f`
|
|
627
|
+
<div class="tablist-wrapper">
|
|
628
|
+
<div
|
|
629
|
+
role="tablist"
|
|
630
|
+
ref=${i}
|
|
631
|
+
part="tablist"
|
|
632
|
+
:aria-orientation="${()=>r.orientation.value}"
|
|
633
|
+
:aria-label="${()=>r.label.value??null}">
|
|
634
|
+
<slot name="tabs"></slot>
|
|
635
|
+
</div>
|
|
636
|
+
<div class="indicator" ref=${a} part="indicator"></div>
|
|
637
|
+
</div>
|
|
638
|
+
<div class="panels" part="panels">
|
|
639
|
+
<slot></slot>
|
|
640
|
+
</div>
|
|
641
|
+
`},styles:[R,Tt],tag:`bit-tabs`}),Ot=o({props:{disabled:x(!1),expanded:x(!1),size:x(void 0),variant:x(void 0)},setup({emit:e,host:n,props:r}){b(p(Ct,void 0),r,[`size`,`variant`]);let i=`accordion-item-title`,a=v(),o=v(),s=()=>{let t=a.value?.open??!1;t&&!n.hasAttribute(`expanded`)?(n.setAttribute(`expanded`,``),e(`expand`,{expanded:!0,item:n})):!t&&n.hasAttribute(`expanded`)&&(n.removeAttribute(`expanded`),e(`collapse`,{expanded:!1,item:n}))};h(()=>{let e=a.value,t=o.value;!e||!t||(S(r.expanded,n=>{let r=!!n;e.open=r,t.setAttribute(`aria-expanded`,r?`true`:`false`)},{immediate:!0}),d(e,`toggle`,s))});let c=t(()=>r.expanded.value?`true`:`false`),l=t(()=>r.disabled.value?`true`:`false`);return f` <details part="item" ?open=${r.expanded} ref=${a}>
|
|
642
|
+
<summary part="summary" :aria-expanded=${c} :aria-disabled=${l} ref=${o}>
|
|
643
|
+
<slot name="prefix"></slot>
|
|
644
|
+
<div class="header-content" part="header">
|
|
645
|
+
<span class="title" part="title" id="${i}">
|
|
646
|
+
<slot name="title"></slot>
|
|
647
|
+
</span>
|
|
648
|
+
<span class="subtitle" part="subtitle">
|
|
649
|
+
<slot name="subtitle"></slot>
|
|
650
|
+
</span>
|
|
651
|
+
</div>
|
|
652
|
+
<slot name="suffix"></slot>
|
|
653
|
+
<svg
|
|
654
|
+
viewBox="0 0 24 24"
|
|
655
|
+
fill="none"
|
|
656
|
+
stroke="currentColor"
|
|
657
|
+
stroke-width="2"
|
|
658
|
+
stroke-linecap="round"
|
|
659
|
+
stroke-linejoin="round"
|
|
660
|
+
class="chevron"
|
|
661
|
+
part="chevron"
|
|
662
|
+
xmlns="http://www.w3.org/2000/svg">
|
|
663
|
+
<path d="m 14.999979,5.9999793 -5.9999997,5.9999997 5.9999997,6" />
|
|
664
|
+
</svg>
|
|
665
|
+
</summary>
|
|
666
|
+
<div class="content-wrapper" part="content" role="region" aria-labelledby="${i}">
|
|
667
|
+
<div class="content-inner">
|
|
668
|
+
<slot></slot>
|
|
669
|
+
</div>
|
|
670
|
+
</div>
|
|
671
|
+
</details>`},styles:[j,`@layer buildit.base{:host{color:var(--accordion-item-body-color,var(--text-color-body));--accordion-details-radius:var(--rounded-lg);--accordion-item-transition:var(--transition-normal);display:block}details{border-radius:var(--accordion-item-radius);width:100%;transition:all var(--accordion-item-transition);overflow:hidden}summary{gap:var(--size-4);min-height:var(--_touch-target);padding:var(--accordion-item-details-padding,var(--size-3) var(--size-4));font-size:var(--accordion-item-title);cursor:pointer;-webkit-user-select:none;user-select:none;background:var(--accordion-item-bg);border:var(--border) solid var(--accordion-item-border-color);border-radius:var(--accordion-details-radius);transition:all var(--accordion-item-transition);outline:none;align-items:center;list-style:none;display:flex;position:relative}summary::-webkit-details-marker{display:none}summary:focus{outline:none}summary:focus-visible{outline:var(--border-2) solid currentcolor;outline-offset:var(--border-2);box-shadow:0 0 0 3px color-mix(in srgb, currentcolor 20%, transparent)}.header-content{flex-direction:column;flex:1;min-width:0;display:flex}.subtitle{font-size:var(--accordion-item-subtitle-size);line-height:var(--leading-normal);color:var(--accordion-item-subtitle-color,var(--text-color-secondary))}.title{text-overflow:ellipsis;font-weight:var(--font-medium);color:var(--accordion-item-title-color,var(--text-color-heading));white-space:nowrap;overflow:hidden}.content-wrapper{font-size:var(--accordion-item-body);background:var(--accordion-item-bg);border-inline:1px solid var(--accordion-item-border-color);border-bottom:1px solid var(--accordion-item-border-color);border-radius:var(--accordion-summary-radius);transition:grid-template-rows var(--accordion-item-transition);grid-template-rows:0fr;display:grid}details[open] .content-wrapper{grid-template-rows:1fr}.content-inner{padding:var(--accordion-item-summary-padding,var(--size-2) var(--size-4));overflow:hidden}}@layer buildit.variants{:host,:host([variant=solid]){--accordion-item-bg:var(--color-contrast-50);--accordion-item-border-color:transparent}:host summary:hover,:host([variant=solid]) summary:hover{--accordion-item-bg:var(--color-contrast-200)}:host([variant=flat]){--accordion-item-bg:var(--color-contrast-100)}:host([variant=flat]) summary:hover{--accordion-item-bg:var(--color-contrast-200)}:host([variant=bordered]){--accordion-item-bg:var(--color-contrast-100);--accordion-item-border-color:var(--color-contrast-300);box-shadow:var(--inset-shadow-xs), var(--shadow-2xs)}:host([variant=bordered]) summary:hover{background:var(--color-contrast-200)}:host([variant=outline]){--accordion-item-bg:transparent;--accordion-item-border-color:var(--color-contrast-300)}:host([variant=outline]) summary:hover{background:var(--color-contrast-300)}:host([variant=ghost]){--accordion-item-bg:transparent;--accordion-item-border-color:transparent}:host([variant=ghost]) summary:hover{background:var(--color-contrast-200)}:host([variant=text]){--accordion-item-bg:transparent;--accordion-item-border-color:transparent}:host([variant=text]) summary:hover{background:0 0}:host([variant=glass]) details,:host([variant=frost]) details{border-radius:inherit}:host([variant=glass]) summary,:host([variant=frost]) summary{border-radius:inherit;-webkit-backdrop-filter:blur(var(--blur-lg)) saturate(180%);backdrop-filter:blur(var(--blur-lg)) saturate(180%)}:host([variant=glass]) .content-wrapper,:host([variant=frost]) .content-wrapper{-webkit-backdrop-filter:blur(var(--blur-lg)) saturate(180%);backdrop-filter:blur(var(--blur-lg)) saturate(180%);border-radius:0}:host([variant=glass]){--accordion-item-bg:color-mix(in srgb, var(--color-secondary) 30%, var(--color-contrast) 10%);--accordion-item-border-color:transparent;--accordion-item-title-color:color-mix(in srgb, var(--color-secondary-contrast) 100%, transparent);--accordion-item-subtitle-color:color-mix(in srgb, var(--color-secondary-contrast) 60%, transparent);--accordion-item-body-color:color-mix(in srgb, var(--color-secondary-contrast) 80%, transparent)}:host([variant=glass]) summary{text-shadow:var(--text-shadow-xs)}:host([variant=glass]) summary:hover{background:color-mix(in srgb, var(--color-secondary) 20%, transparent)}:host([variant=glass]) .content-wrapper{filter:brightness(1.05)}:host([variant=frost]){--accordion-item-bg:color-mix(in srgb, var(--color-canvas) 55%, transparent);--accordion-item-border-color:transparent}:host([variant=frost]) summary{text-shadow:var(--text-shadow-2xs)}:host([variant=frost]) summary:hover{background:color-mix(in srgb, var(--color-canvas) 20%, transparent)}:host([size=sm]){--accordion-item-details-padding:var(--size-2) var(--size-4);--accordion-item-summary-padding:var(--size-1) var(--size-5);--accordion-item-title:var(--text-sm);--accordion-item-subtitle-size:var(--text-xs);--accordion-item-body:var(--text-xs)}:host(:not([size])),:host([size=md]){--accordion-item-details-padding:var(--size-3) var(--size-4);--accordion-item-summary-padding:var(--size-1) var(--size-5);--accordion-item-title:var(--text-base);--accordion-item-subtitle-size:var(--text-sm);--accordion-item-body:var(--text-sm)}:host([size=lg]){--accordion-item-details-padding:var(--size-4) var(--size-4);--accordion-item-summary-padding:var(--size-1) var(--size-5);--accordion-item-title:var(--text-lg);--accordion-item-subtitle-size:var(--text-base);--accordion-item-body:var(--text-base)}:host([disabled]){pointer-events:none;opacity:.6}.chevron{width:var(--size-5);height:var(--size-5);transition:transform var(--accordion-item-transition)}.chevron:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){margin-left:auto}.chevron:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){margin-right:auto}details[open] .chevron{transform:rotate(-90deg)}:host([expanded]){--accordion-details-radius:var(--rounded-lg) var(--rounded-lg) 0 0;--accordion-summary-radius:0 0 var(--rounded-lg) var(--rounded-lg)}@media (forced-colors:active){summary{border-color:buttontext}}}`],tag:`bit-accordion-item`}),kt=o({props:{active:x(!1),color:x(void 0),disabled:x(!1),size:x(void 0),value:x(``),variant:x(void 0)},setup({host:e,props:n}){let r=p(Et,void 0);b(r,n,[`color`,`size`,`variant`]);let i=r?t(()=>!!r.value.value&&r.value.value===n.value.value):n.active;return c(()=>{e.toggleAttribute(`active`,i.value)}),f`
|
|
672
|
+
<button
|
|
673
|
+
role="tab"
|
|
674
|
+
type="button"
|
|
675
|
+
part="tab"
|
|
676
|
+
:id="${()=>`tab-${n.value.value}`}"
|
|
677
|
+
:aria-selected=${t(()=>String(i.value))}
|
|
678
|
+
:tabindex=${t(()=>i.value?`0`:`-1`)}
|
|
679
|
+
:aria-disabled=${t(()=>String(n.disabled.value))}
|
|
680
|
+
:aria-controls="${()=>`tabpanel-${n.value.value}`}"
|
|
681
|
+
@click=${()=>{n.disabled.value||l.custom(e,`click`,{detail:{value:n.value.value}})}}>
|
|
682
|
+
<slot name="prefix"></slot>
|
|
683
|
+
<slot></slot>
|
|
684
|
+
<slot name="suffix"></slot>
|
|
685
|
+
</button>
|
|
686
|
+
`},styles:[R,V(`button`),j,`@layer buildit.base{:host{--tab-item-transition:var(--transition-normal);--tab-item-radius:var(--rounded-lg);outline:none;display:inline-flex}button{gap:var(--size-2);width:100%;min-height:var(--_touch-target);padding:var(--tab-item-padding,var(--size-1-5) var(--size-4));font-family:inherit;font-size:var(--tab-item-font-size,var(--text-sm));font-weight:var(--font-medium);color:var(--tab-item-color,var(--text-color-secondary));white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:var(--tab-item-radius);transition:background var(--tab-item-transition), color var(--tab-item-transition), box-shadow var(--tab-item-transition);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex;position:relative}button:focus{outline:none}:host(:focus-visible) button,button:focus-visible{outline:var(--border-2) solid var(--_theme-focus);outline-offset:2px;box-shadow:0 0 0 3px var(--_theme-shadow)}}@layer buildit.variants{:host button:hover,:host([variant=solid]) button:hover{color:var(--text-color-heading);background:var(--color-contrast-200)}:host([active]) button,:host([variant=solid][active]) button{color:var(--text-color-heading);background:var(--color-contrast-0,var(--color-canvas));box-shadow:var(--shadow-xs), var(--inset-shadow-xs)}:host([variant=flat]) button:hover{color:var(--text-color-heading);background:var(--color-contrast-200)}:host([variant=flat][active]) button{color:var(--text-color-heading);background:var(--color-contrast-0,var(--color-canvas));box-shadow:var(--shadow-xs), var(--inset-shadow-xs)}:host([variant=bordered]) button:hover{color:var(--text-color-heading);background:var(--color-contrast-200)}:host([variant=bordered][active]) button{color:var(--text-color-heading);background:var(--color-contrast-0,var(--color-canvas));box-shadow:var(--shadow-xs)}:host([variant=ghost]) button:hover{color:var(--text-color-heading);background:var(--color-contrast-100)}:host([variant=ghost][active]) button{color:var(--_theme-contrast);background:var(--_theme-base)}:host([variant=glass]) button{color:color-mix(in srgb, var(--color-secondary-contrast) 70%, transparent);text-shadow:var(--text-shadow-2xs)}:host([variant=glass]) button:hover{color:var(--color-secondary-contrast);background:color-mix(in srgb, var(--color-secondary-contrast) 10%, transparent)}:host([variant=glass][active]) button{color:var(--color-secondary-contrast);background:color-mix(in srgb, var(--color-secondary-contrast) 15%, transparent);box-shadow:var(--shadow-xs), var(--inset-shadow-xs)}:host([variant=frost]) button{color:var(--text-color-secondary)}:host([variant=frost]) button:hover{color:var(--text-color-heading);background:color-mix(in srgb, var(--color-contrast) 10%, transparent)}:host([variant=frost][active]) button{color:var(--text-color-heading);background:color-mix(in srgb, var(--color-canvas) 60%, transparent);box-shadow:var(--shadow-xs), var(--inset-shadow-xs)}:host([size=sm]){--tab-item-font-size:var(--text-xs);--tab-item-padding:var(--size-1) var(--size-3)}:host(:not([size])),:host([size=md]){--tab-item-font-size:var(--text-sm);--tab-item-padding:var(--size-1-5) var(--size-4)}:host([size=lg]){--tab-item-font-size:var(--text-base);--tab-item-padding:var(--size-2) var(--size-5)}:host([disabled]){pointer-events:none;opacity:.5}@media (forced-colors:active){button:focus-visible{box-shadow:none;outline:2px solid highlight}:host([active]) button{outline-offset:-2px;outline:2px solid highlight}}}`],tag:`bit-tab-item`}),At=o({props:{active:x(!1),lazy:x(!1),padding:x(`md`),value:x(``)},setup({host:e,props:n}){let r=p(Et,void 0),i=r?t(()=>!!r.value.value&&r.value.value===n.value.value):n.active,a=t(()=>{let e={"2xl":`var(--size-12)`,lg:`var(--size-6)`,md:`var(--size-4)`,none:`0`,sm:`var(--size-2)`,xl:`var(--size-8)`,xs:`var(--size-1)`};return e[n.padding.value??`md`]??e.md}),o=y(!1);c(()=>{e.toggleAttribute(`active`,i.value),i.value&&(o.value=!0)});let s=t(()=>!n.lazy.value||o.value);return f`
|
|
687
|
+
<div
|
|
688
|
+
class="panel"
|
|
689
|
+
part="panel"
|
|
690
|
+
role="tabpanel"
|
|
691
|
+
:id="${()=>`tabpanel-${n.value.value}`}"
|
|
692
|
+
:aria-labelledby="${()=>`tab-${n.value.value}`}"
|
|
693
|
+
:aria-hidden=${()=>String(!i.value)}
|
|
694
|
+
:style="${()=>`--tab-panel-padding: ${a.value}`}"
|
|
695
|
+
tabindex="0">
|
|
696
|
+
${()=>s.value?f`<slot></slot>`:``}
|
|
697
|
+
</div>
|
|
698
|
+
`},styles:[M,`@layer buildit.base{:host{width:100%;display:none}:host([active]){flex-direction:column;flex:1;min-height:0;display:flex}.panel{box-sizing:border-box;height:100%;min-height:0;padding:var(--tab-panel-padding,var(--size-4));font-size:var(--tab-panel-font-size,var(--text-sm));color:var(--text-color-body);animation:var(--_motion-animation,tab-panel-in var(--transition-normal) var(--ease-out) both);flex:1;overflow:auto}}@layer buildit.variants{@keyframes tab-panel-in{0%{opacity:0;translate:0 4px}to{opacity:1;translate:0}}}`],tag:`bit-tab-panel`}),jt=f`
|
|
699
|
+
<svg
|
|
700
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
701
|
+
width="16"
|
|
702
|
+
height="16"
|
|
703
|
+
viewBox="0 0 24 24"
|
|
704
|
+
fill="none"
|
|
705
|
+
stroke="currentColor"
|
|
706
|
+
stroke-width="2.5"
|
|
707
|
+
stroke-linecap="round"
|
|
708
|
+
stroke-linejoin="round"
|
|
709
|
+
aria-hidden="true">
|
|
710
|
+
<path d="M18 6 6 18M6 6l12 12" />
|
|
711
|
+
</svg>
|
|
712
|
+
`,Mt=f`
|
|
713
|
+
<svg
|
|
714
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
715
|
+
width="14"
|
|
716
|
+
height="14"
|
|
717
|
+
viewBox="0 0 24 24"
|
|
718
|
+
fill="none"
|
|
719
|
+
stroke="currentColor"
|
|
720
|
+
stroke-width="2.5"
|
|
721
|
+
stroke-linecap="round"
|
|
722
|
+
stroke-linejoin="round"
|
|
723
|
+
aria-hidden="true">
|
|
724
|
+
<path d="M20 6 9 17l-5-5" />
|
|
725
|
+
</svg>
|
|
726
|
+
`,Nt=`<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M20 6 9 17l-5-5"/></svg>`,Pt=f`
|
|
727
|
+
<svg
|
|
728
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
729
|
+
width="14"
|
|
730
|
+
height="14"
|
|
731
|
+
viewBox="0 0 24 24"
|
|
732
|
+
fill="none"
|
|
733
|
+
stroke="currentColor"
|
|
734
|
+
stroke-width="2"
|
|
735
|
+
stroke-linecap="round"
|
|
736
|
+
stroke-linejoin="round"
|
|
737
|
+
aria-hidden="true">
|
|
738
|
+
<path d="m6 9 6 6 6-6" />
|
|
739
|
+
</svg>
|
|
740
|
+
`,Ft=f`
|
|
741
|
+
<svg
|
|
742
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
743
|
+
width="16"
|
|
744
|
+
height="16"
|
|
745
|
+
viewBox="0 0 24 24"
|
|
746
|
+
fill="none"
|
|
747
|
+
stroke="currentColor"
|
|
748
|
+
stroke-width="2"
|
|
749
|
+
stroke-linecap="round"
|
|
750
|
+
stroke-linejoin="round"
|
|
751
|
+
aria-hidden="true">
|
|
752
|
+
<polyline points="15 18 9 12 15 6"></polyline>
|
|
753
|
+
</svg>
|
|
754
|
+
`,It=f`
|
|
755
|
+
<svg
|
|
756
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
757
|
+
width="12"
|
|
758
|
+
height="12"
|
|
759
|
+
viewBox="0 0 24 24"
|
|
760
|
+
fill="none"
|
|
761
|
+
stroke="currentColor"
|
|
762
|
+
stroke-width="2"
|
|
763
|
+
stroke-linecap="round"
|
|
764
|
+
stroke-linejoin="round"
|
|
765
|
+
aria-hidden="true">
|
|
766
|
+
<polyline points="9 18 15 12 9 6"></polyline>
|
|
767
|
+
</svg>
|
|
768
|
+
`,Lt=f`
|
|
769
|
+
<svg
|
|
770
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
771
|
+
viewBox="0 0 24 24"
|
|
772
|
+
fill="none"
|
|
773
|
+
stroke="currentColor"
|
|
774
|
+
stroke-width="2"
|
|
775
|
+
stroke-linecap="round"
|
|
776
|
+
stroke-linejoin="round"
|
|
777
|
+
width="14"
|
|
778
|
+
height="14"
|
|
779
|
+
aria-hidden="true">
|
|
780
|
+
<path d="M2 12s3-7 10-7 10 7 10 7-3 7-10 7-10-7-10-7Z" />
|
|
781
|
+
<circle cx="12" cy="12" r="3" />
|
|
782
|
+
</svg>
|
|
783
|
+
`,Rt=f`
|
|
784
|
+
<svg
|
|
785
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
786
|
+
viewBox="0 0 24 24"
|
|
787
|
+
fill="none"
|
|
788
|
+
stroke="currentColor"
|
|
789
|
+
stroke-width="2"
|
|
790
|
+
stroke-linecap="round"
|
|
791
|
+
stroke-linejoin="round"
|
|
792
|
+
width="14"
|
|
793
|
+
height="14"
|
|
794
|
+
aria-hidden="true">
|
|
795
|
+
<path d="M9.88 9.88a3 3 0 1 0 4.24 4.24" />
|
|
796
|
+
<path d="M10.73 5.08A10.43 10.43 0 0 1 12 5c7 0 10 7 10 7a13.16 13.16 0 0 1-1.67 2.68" />
|
|
797
|
+
<path d="M6.61 6.61A13.526 13.526 0 0 0 2 12s3 7 10 7a9.74 9.74 0 0 0 5.39-1.61" />
|
|
798
|
+
<line x1="2" x2="22" y1="2" y2="22" />
|
|
799
|
+
</svg>
|
|
800
|
+
`,zt=f`
|
|
801
|
+
<svg
|
|
802
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
803
|
+
width="12"
|
|
804
|
+
height="12"
|
|
805
|
+
viewBox="0 0 24 24"
|
|
806
|
+
fill="none"
|
|
807
|
+
stroke="currentColor"
|
|
808
|
+
stroke-width="2.5"
|
|
809
|
+
stroke-linecap="round"
|
|
810
|
+
stroke-linejoin="round"
|
|
811
|
+
aria-hidden="true">
|
|
812
|
+
<path d="M18 6 6 18M6 6l12 12" />
|
|
813
|
+
</svg>
|
|
814
|
+
`,Bt=f`
|
|
815
|
+
<svg
|
|
816
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
817
|
+
width="36"
|
|
818
|
+
height="36"
|
|
819
|
+
viewBox="0 0 24 24"
|
|
820
|
+
fill="none"
|
|
821
|
+
stroke="currentColor"
|
|
822
|
+
stroke-width="1.5"
|
|
823
|
+
stroke-linecap="round"
|
|
824
|
+
stroke-linejoin="round"
|
|
825
|
+
aria-hidden="true">
|
|
826
|
+
<polyline points="16 16 12 12 8 16" />
|
|
827
|
+
<line x1="12" y1="12" x2="12" y2="21" />
|
|
828
|
+
<path d="M20.39 18.39A5 5 0 0 0 18 9h-1.26A8 8 0 1 0 3 16.3" />
|
|
829
|
+
</svg>
|
|
830
|
+
`,Vt=f`
|
|
831
|
+
<svg
|
|
832
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
833
|
+
width="18"
|
|
834
|
+
height="18"
|
|
835
|
+
viewBox="0 0 24 24"
|
|
836
|
+
fill="none"
|
|
837
|
+
stroke="currentColor"
|
|
838
|
+
stroke-width="1.75"
|
|
839
|
+
stroke-linecap="round"
|
|
840
|
+
stroke-linejoin="round"
|
|
841
|
+
aria-hidden="true">
|
|
842
|
+
<path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z" />
|
|
843
|
+
<polyline points="14 2 14 8 20 8" />
|
|
844
|
+
</svg>
|
|
845
|
+
`,Ht=f`
|
|
846
|
+
<svg
|
|
847
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
848
|
+
width="14"
|
|
849
|
+
height="14"
|
|
850
|
+
viewBox="0 0 24 24"
|
|
851
|
+
fill="none"
|
|
852
|
+
stroke="currentColor"
|
|
853
|
+
stroke-width="2.5"
|
|
854
|
+
stroke-linecap="round"
|
|
855
|
+
aria-hidden="true">
|
|
856
|
+
<line x1="5" y1="12" x2="19" y2="12" />
|
|
857
|
+
</svg>
|
|
858
|
+
`,Ut=f`
|
|
859
|
+
<svg
|
|
860
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
861
|
+
width="14"
|
|
862
|
+
height="14"
|
|
863
|
+
viewBox="0 0 24 24"
|
|
864
|
+
fill="none"
|
|
865
|
+
stroke="currentColor"
|
|
866
|
+
stroke-width="2.5"
|
|
867
|
+
stroke-linecap="round"
|
|
868
|
+
aria-hidden="true">
|
|
869
|
+
<line x1="12" y1="5" x2="12" y2="19" />
|
|
870
|
+
<line x1="5" y1="12" x2="19" y2="12" />
|
|
871
|
+
</svg>
|
|
872
|
+
`,Wt=50;function Gt(e,t,n=`animation`){let r=!1,i=null,a=()=>{r||(r=!0,i!==null&&(clearTimeout(i),i=null),t())};queueMicrotask(()=>{let t=getComputedStyle(e);if(n===`animation`){let n=t.animationName.split(`,`).map(e=>e.trim()),r=t.animationDuration.split(`,`).map(e=>e.endsWith(`ms`)?Number.parseFloat(e):e.endsWith(`s`)?Number.parseFloat(e)*1e3:0),o=n.some(e=>e&&e!==`none`),s=Math.max(0,...r);if(!o||s<=0){a();return}e.addEventListener(`animationend`,a,{once:!0}),i=setTimeout(a,s+Wt)}else{let n=Number.parseFloat(t.transitionDuration);if(!n||n<=0){a();return}e.addEventListener(`transitionend`,a,{once:!0}),i=setTimeout(a,n*1e3+Wt)}})}var Kt=`@layer buildit.base{:host{--_bg:var(--alert-bg,var(--_theme-backdrop));--_color:var(--alert-color,var(--_theme-base));--_border-color:var(--alert-border-color,var(--_theme-border));--_radius:var(--alert-radius,var(--rounded-lg));--_padding:var(--alert-padding,var(--size-4));--_gap:var(--alert-gap,var(--size-3));--_font-size:var(--alert-font-size,var(--text-sm));--_shadow:var(--alert-shadow,var(--shadow-none));display:block}:host([dismissed]){display:none}:host([dismissing]){pointer-events:none;animation:var(--_motion-animation,bit-alert-exit var(--transition-slow,.3s) ease forwards);overflow:hidden}@keyframes bit-alert-exit{0%{max-height:600px;margin-bottom:var(--size-3);opacity:1;transform:scaleY(1)}60%{opacity:0;transform:scaleY(.8)}to{opacity:0;max-height:0;margin-bottom:0;padding-top:0;padding-bottom:0;transform:scaleY(0)}}.alert{row-gap:var(--size-1);padding:var(--_padding);font-size:var(--_font-size);line-height:var(--leading-normal);color:var(--_color);background:var(--_bg);border:var(--border) solid var(--_border-color);border-radius:var(--_radius);box-shadow:var(--_shadow);transition:background var(--transition-normal), border-color var(--transition-normal), box-shadow var(--transition-normal), color var(--transition-normal);grid-template-columns:auto 1fr auto;display:grid;overflow:hidden}.icon{grid-area:1/1;justify-content:center;align-self:start;align-items:center;display:inline-flex}.icon:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){margin-right:var(--_gap)}.icon:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){margin-left:var(--_gap)}.alert:has(.header[hidden]) .icon{align-self:center}.icon[hidden]{display:none}.header{gap:var(--size-2);grid-area:1/2;align-items:baseline;display:flex}.header[hidden]{display:none}.heading{text-overflow:ellipsis;font-weight:var(--font-semibold);line-height:var(--leading-normal);white-space:nowrap;overflow:hidden}.meta{font-size:var(--text-xs);white-space:nowrap;opacity:.7}.meta:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){margin-left:auto}.meta:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){margin-right:auto}:host(:not(:has([slot=meta]))) .meta{display:none}.body{min-width:0;margin-top:var(--size-1);grid-area:2/1/auto/-1}.alert:has(.header[hidden]) .body{grid-area:1/2;margin-top:0}.content{line-height:var(--leading-relaxed)}.actions{gap:var(--size-2);margin-top:var(--size-2);flex-wrap:wrap;grid-area:3/1/auto/-1;display:flex}.alert:has(.header[hidden]) .actions{grid-row:2}.actions[hidden]{display:none}:host([horizontal]) .alert{grid-template-columns:auto 1fr auto auto}:host([horizontal]) .body{grid-area:1/2;align-self:center;margin-top:0}:host([horizontal]) .actions:not([hidden]){flex-wrap:nowrap;grid-area:1/3;margin-top:0}:host([horizontal]) .actions:not([hidden]):not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){margin-left:var(--_gap)}:host([horizontal]) .actions:not([hidden]):is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){margin-right:var(--_gap)}:host([horizontal]) .close{grid-column:4;align-self:center}.close{width:var(--size-5);min-width:var(--_touch-target);height:var(--size-5);min-height:var(--_touch-target);color:inherit;cursor:pointer;border-radius:var(--rounded-sm);opacity:.7;transition:var(--_motion-transition,opacity var(--transition-fast), background var(--transition-fast));background:0 0;border:none;grid-area:1/3;justify-content:center;align-self:start;align-items:center;padding:0;display:inline-flex}.close:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){margin-left:var(--_gap)}.close:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){margin-right:var(--_gap)}.close[hidden]{display:none}.close:hover{background:color-mix(in srgb, currentcolor 12%, transparent);opacity:1}.close:focus-visible{outline:var(--border-2) solid currentcolor;outline-offset:var(--border-2);opacity:1}:host([variant=flat][accented]) .alert:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){border-left-width:var(--border-4,4px)}:host([variant=flat][accented]) .alert:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){border-right-width:var(--border-4,4px)}:host([variant=bordered][accented]) .alert:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){border-left-width:var(--border-4,4px)}:host([variant=bordered][accented]) .alert:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){border-right-width:var(--border-4,4px)}}@layer buildit.variants{:host(:not([variant])) .alert,:host([variant=flat]) .alert{color:var(--_theme-base);background:var(--color-canvas);border-color:var(--_theme-base);box-shadow:var(--shadow-none)}:host([variant=solid]) .alert{color:var(--_theme-contrast);background:var(--_theme-base);border-color:var(--_theme-base);box-shadow:var(--shadow-xs)}:host([variant=solid]) .close{color:var(--_theme-contrast)}:host([variant=bordered]) .alert{color:var(--_theme-base);background:color-mix(in srgb, var(--_theme-backdrop), var(--color-canvas));border-color:color-mix(in srgb, var(--_theme-focus) 30%, transparent);box-shadow:var(--inset-shadow-2xs)}}`,qt=o({props:{accented:{default:!1},color:{default:void 0},dismissible:{default:!1},heading:{default:``},horizontal:{default:!1},rounded:{default:void 0},size:{default:void 0},variant:{default:void 0}},setup({emit:e,host:t,props:n}){let r=u(()=>n.dismissible.value,n=>{t.setAttribute(`dismissing`,``),Gt(t,()=>{t.removeAttribute(`dismissing`),t.setAttribute(`dismissed`,``),e(`dismiss`,{originalEvent:n})})}),i=y(!1),a=y(!1);return h(()=>{g(`icon`,e=>{i.value=e.length>0}),g(`actions`,e=>{a.value=e.length>0})}),f`
|
|
873
|
+
<div class="alert" :role="${()=>n.color.value===`error`?`alert`:`status`}" part="alert">
|
|
874
|
+
<span class="icon" part="icon" aria-hidden="true" ?hidden=${()=>!i.value}>
|
|
875
|
+
<slot name="icon"></slot>
|
|
876
|
+
</span>
|
|
877
|
+
<div class="header" part="header" ?hidden=${()=>!n.heading.value}>
|
|
878
|
+
<span class="heading" part="heading">${()=>n.heading.value}</span>
|
|
879
|
+
<span class="meta" part="meta">
|
|
880
|
+
<slot name="meta"></slot>
|
|
881
|
+
</span>
|
|
882
|
+
</div>
|
|
883
|
+
<div class="body" part="body">
|
|
884
|
+
<div class="content" part="content">
|
|
885
|
+
<slot></slot>
|
|
886
|
+
</div>
|
|
887
|
+
</div>
|
|
888
|
+
<div class="actions" part="actions" ?hidden=${()=>!a.value}>
|
|
889
|
+
<slot name="actions"></slot>
|
|
890
|
+
</div>
|
|
891
|
+
<button
|
|
892
|
+
class="close"
|
|
893
|
+
part="close"
|
|
894
|
+
type="button"
|
|
895
|
+
aria-label="Dismiss alert"
|
|
896
|
+
?hidden=${()=>!n.dismissible.value}
|
|
897
|
+
@click=${r}>
|
|
898
|
+
${jt}
|
|
899
|
+
</button>
|
|
900
|
+
</div>
|
|
901
|
+
`},styles:[...K,B,F({lg:{"--_padding":`var(--size-4) var(--size-5)`,fontSize:`var(--text-base)`,gap:`var(--size-3-5)`},sm:{"--_padding":`var(--size-2) var(--size-3)`,fontSize:`var(--text-xs)`,gap:`var(--size-2)`}}),Kt],tag:`bit-alert`}),Jt=`@layer buildit.base{:host{--_bg:var(--badge-bg,var(--_theme-backdrop));--_color:var(--badge-color,var(--_theme-base));--_border-color:var(--badge-border-color,var(--_theme-border));--_radius:var(--badge-radius,var(--rounded-full));--_font-size:var(--badge-font-size,var(--text-xs));--_font-weight:var(--badge-font-weight,var(--font-semibold));--_padding-x:var(--badge-padding-x,var(--size-1-5));--_padding-y:var(--badge-padding-y,var(--size-0-5));--_gap:var(--badge-gap,var(--size-1));vertical-align:middle;display:inline-flex}.badge{gap:var(--_gap);min-width:var(--size-2);max-width:var(--badge-max-width,24ch);padding:var(--_padding-y) var(--_padding-x);text-overflow:ellipsis;font-size:var(--_font-size);font-weight:var(--_font-weight);color:var(--_color);white-space:nowrap;background:var(--_bg);border:var(--border) solid var(--_border-color);border-radius:var(--_radius);justify-content:center;align-items:center;line-height:1;display:inline-flex;overflow:hidden}::slotted([slot=icon]){flex-shrink:0;justify-content:center;align-items:center;width:1em;height:1em;display:inline-flex}}@layer buildit.variants{:host(:not([variant])),:host([variant=solid]){--_bg:var(--badge-bg,var(--_theme-base));--_color:var(--badge-color,var(--_theme-contrast));--_border-color:var(--badge-border-color,var(--_theme-base))}:host([variant=flat]){--_bg:var(--badge-bg,color-mix(in srgb, var(--_theme-backdrop) 8%, var(--color-contrast-100)));--_color:var(--badge-color,var(--_theme-base));--_border-color:var(--badge-border-color,color-mix(in srgb, var(--_theme-focus) 20%, transparent))}:host([variant=bordered]){--_bg:var(--badge-bg,var(--_theme-backdrop));--_color:var(--badge-color,var(--_theme-base));--_border-color:var(--badge-border-color,var(--_theme-border))}:host([variant=outline]){--_bg:var(--badge-bg,transparent);--_color:var(--badge-color,var(--_theme-base));--_border-color:var(--badge-border-color,var(--_theme-base))}:host([dot]) .badge{min-width:unset;padding:var(--size-1);line-height:0}}@layer buildit.overrides{:host([dot]){--_bg:var(--badge-bg,var(--_theme-base));--_border-color:var(--badge-border-color,var(--_theme-base))}:host([anchor]){display:inline-flex;position:relative}:host{--_dir:1}:host(:dir(rtl)){--_dir:-1}:host([anchor]) .badge{z-index:1;transform:translate(calc(var(--_dir) * 50%), -50%);position:absolute;top:0}:host([anchor]) .badge:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:0}:host([anchor]) .badge:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:0}:host([anchor=top-start]) .badge{transform:translate(calc(var(--_dir) * -50%), -50%)}:host([anchor=top-start]) .badge:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:0;right:unset}:host([anchor=top-start]) .badge:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:0;left:unset}:host([anchor=bottom-end]) .badge{top:unset;transform:translate(calc(var(--_dir) * 50%), 50%);bottom:0}:host([anchor=bottom-start]) .badge{top:unset;transform:translate(calc(var(--_dir) * -50%), 50%);bottom:0}:host([anchor=bottom-start]) .badge:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:0;right:unset}:host([anchor=bottom-start]) .badge:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:0;left:unset}}`,Yt=o({props:{anchor:{default:void 0},ariaLabel:{default:void 0},color:{default:void 0},count:{default:void 0},dot:{default:!1},max:{default:void 0},rounded:{default:void 0},size:{default:void 0},variant:{default:void 0}},setup({props:e}){let n=t(()=>{let t=e.count.value==null?void 0:Number(e.count.value),n=e.max.value==null?void 0:Number(e.max.value);if(!(t===void 0||Number.isNaN(t)))return n!==void 0&&!Number.isNaN(n)&&t>n?`${n}+`:String(t)});return f`<span class="badge" part="badge" aria-label=${()=>e.ariaLabel.value}>
|
|
902
|
+
<slot name="icon"></slot>
|
|
903
|
+
<span ?hidden=${()=>n.value==null}>${()=>n.value}</span>
|
|
904
|
+
<slot ?hidden=${()=>n.value!=null}></slot>
|
|
905
|
+
</span>
|
|
906
|
+
<slot name="target"></slot>`},styles:[R,P,G(`.badge`),F({lg:{"--_padding-x":`var(--size-2-5)`,"--_padding-y":`var(--size-1)`,fontSize:`var(--text-sm)`},md:{"--_padding-x":`var(--size-2)`,"--_padding-y":`var(--size-0-5)`,fontSize:`var(--text-xs)`},sm:{"--_padding-x":`var(--size-1-5)`,"--_padding-y":`var(--size-px)`,fontSize:`var(--text-xs)`}}),Jt],tag:`bit-badge`}),Xt=`@layer buildit.base{:host{--_bg:var(--chip-bg,var(--color-contrast-150,var(--color-contrast-100)));--_color:var(--chip-color,var(--color-contrast-800));--_border-color:var(--chip-border-color,transparent);--_radius:var(--chip-radius,var(--rounded-full));--_font-size:var(--chip-font-size,var(--text-sm));--_font-weight:var(--chip-font-weight,var(--font-medium));--_padding-x:var(--chip-padding-x,var(--size-2-5));--_padding-y:var(--chip-padding-y,var(--size-0-5));--_gap:var(--chip-gap,var(--size-1));vertical-align:middle;align-items:center;max-width:100%;display:inline-flex}.chip{box-sizing:border-box;gap:var(--_gap);max-width:100%;padding:var(--_padding-y) var(--_padding-x);font-size:var(--_font-size);font-weight:var(--_font-weight);color:var(--_color);white-space:nowrap;background:var(--_bg);border:var(--border) solid var(--_border-color);border-radius:var(--_radius);transition:background var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast), color var(--transition-fast);align-items:center;line-height:1.2;display:inline-flex;position:relative}.label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.remove-btn{width:1.35em;height:1.35em;margin-inline:var(--size-0-5) calc(var(--size-2) * -1);color:inherit;cursor:pointer;background:color-mix(in srgb, currentcolor 12%, transparent);border-radius:var(--_radius);opacity:.7;transition:background var(--transition-fast), opacity var(--transition-fast);border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.remove-btn:hover{background:color-mix(in srgb, currentcolor 28%, transparent);opacity:1}.remove-btn:focus-visible{outline-offset:1px;opacity:1;outline:2px solid}::slotted([slot=icon]){flex-shrink:0;justify-content:center;align-items:center;width:1em;height:1em;display:inline-flex}.chip-btn{width:100%;font:inherit;color:inherit;text-align:inherit;cursor:pointer;background:0 0;border:none;margin:0;padding:0;display:inline-flex}.chip-btn:disabled{cursor:not-allowed}:host([mode=selectable][checked]) .chip{outline:var(--border-2) solid var(--_theme-base,currentColor);outline-offset:-2px}:host([mode=selectable]:not([disabled])) .chip,:host([mode=action]:not([disabled])) .chip{cursor:pointer}.chip-btn:focus-visible .chip{outline:2px solid var(--_theme-base,currentColor);outline-offset:2px}}@layer buildit.variants{:host(:not([variant])) .chip,:host([variant=solid]) .chip{color:var(--_theme-contrast,var(--color-contrast-50));background:var(--_theme-base,var(--color-contrast-700));border-color:#0000}:host([variant=flat]) .chip{color:var(--_theme-base,var(--color-contrast-800));background:color-mix(in srgb, var(--_theme-backdrop,var(--color-contrast-200)) 55%, transparent);border-color:#0000}:host([variant=bordered]) .chip{color:var(--_theme-base,var(--color-contrast-900));background:var(--_theme-backdrop,var(--color-contrast-50));border-color:var(--_theme-border,var(--color-contrast-300))}:host([variant=bordered]) .remove-btn{color:var(--_theme-backdrop,var(--color-contrast-50));background:var(--_theme-focus,var(--color-contrast-700));border:var(--border) solid var(--_theme-focus,var(--color-contrast-700))}:host([variant=bordered]) .remove-btn:hover{background:color-mix(in srgb, var(--_theme-focus,var(--color-contrast-700)) 80%, black);opacity:1}:host([variant=outline]) .chip{color:var(--_theme-base,var(--color-contrast-900));border-color:var(--_theme-base,var(--color-contrast-400));background:0 0}:host([variant=outline]) .remove-btn{color:var(--_theme-backdrop,var(--color-contrast-50));background:var(--_theme-focus,var(--color-contrast-700));border:var(--border) solid var(--_theme-focus,var(--color-contrast-700))}:host([variant=outline]) .remove-btn:hover{background:color-mix(in srgb, var(--_theme-focus,var(--color-contrast-700)) 80%, black);opacity:1}:host([variant=ghost]) .chip{color:var(--_theme-base,var(--color-contrast-900));background:0 0;border-color:#0000}:host([variant=ghost]) .remove-btn{border:var(--border) solid var(--_theme-focus,var(--color-contrast-400))}:host([variant=ghost]) .remove-btn:hover{background:color-mix(in srgb, currentcolor 15%, transparent)}:host(:not([variant]):is([mode=selectable],[mode=action]):not([disabled])) .chip-btn:hover .chip,:host([variant=solid]:is([mode=selectable],[mode=action]):not([disabled])) .chip-btn:hover .chip{background:var(--_theme-focus,var(--color-contrast-800))}:host(:not([variant]):is([mode=selectable],[mode=action]):not([disabled])) .chip-btn:active .chip,:host([variant=solid]:is([mode=selectable],[mode=action]):not([disabled])) .chip-btn:active .chip{background:var(--_theme-content,var(--color-contrast-900));box-shadow:var(--inset-shadow-2xs)}:host([variant=flat]:is([mode=selectable],[mode=action]):not([disabled])) .chip-btn:hover .chip{color:var(--_theme-contrast,var(--color-contrast-50));background:var(--_theme-focus,var(--color-contrast-700))}:host([variant=flat]:is([mode=selectable],[mode=action]):not([disabled])) .chip-btn:active .chip{color:var(--_theme-contrast,var(--color-contrast-50));background:var(--_theme-content,var(--color-contrast-900));box-shadow:var(--inset-shadow-sm)}:host([variant=bordered]:is([mode=selectable],[mode=action]):not([disabled])) .chip-btn:hover .chip{color:var(--_theme-contrast,var(--color-contrast-50));background:var(--_theme-focus,var(--color-contrast-700));border-color:var(--_theme-focus,var(--color-contrast-700))}:host([variant=bordered]:is([mode=selectable],[mode=action]):not([disabled])) .chip-btn:active .chip{color:var(--_theme-contrast,var(--color-contrast-50));background:var(--_theme-content,var(--color-contrast-900));box-shadow:var(--inset-shadow-sm)}:host([variant=outline]:is([mode=selectable],[mode=action]):not([disabled])) .chip-btn:hover .chip{background:var(--_theme-backdrop,var(--color-contrast-100));border-color:var(--_theme-focus,var(--color-contrast-700))}:host([variant=outline]:is([mode=selectable],[mode=action]):not([disabled])) .chip-btn:active .chip{color:var(--_theme-contrast,var(--color-contrast-50));background:var(--_theme-base,var(--color-contrast-700));box-shadow:var(--inset-shadow-2xs)}:host([variant=ghost]:is([mode=selectable],[mode=action]):not([disabled])) .chip-btn:hover .chip{background:var(--_theme-backdrop,var(--color-contrast-100))}:host([variant=ghost]:is([mode=selectable],[mode=action]):not([disabled])) .chip-btn:active .chip{color:var(--_theme-contrast,var(--color-contrast-50));background:var(--_theme-base,var(--color-contrast-700));box-shadow:var(--inset-shadow-2xs)}}`,Zt=f`
|
|
907
|
+
<svg
|
|
908
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
909
|
+
viewBox="0 0 24 24"
|
|
910
|
+
fill="none"
|
|
911
|
+
stroke="currentColor"
|
|
912
|
+
stroke-width="2.5"
|
|
913
|
+
stroke-linecap="round"
|
|
914
|
+
stroke-linejoin="round"
|
|
915
|
+
width="0.75em"
|
|
916
|
+
height="0.75em"
|
|
917
|
+
aria-hidden="true">
|
|
918
|
+
<path d="M18 6 6 18M6 6l12 12" />
|
|
919
|
+
</svg>
|
|
920
|
+
`,Qt=o({props:{"aria-label":x(void 0),checked:x(void 0,{parse:e=>e==null?void 0:e!==`false`}),color:x(void 0),"default-checked":x(!1),disabled:x(!1),mode:x(`static`),rounded:x(void 0),size:x(void 0),value:x(void 0),variant:x(void 0)},setup({emit:e,host:n,props:r}){let i=r.checked,a=r[`aria-label`],o=y(i.value!==void 0),s=y(!o.value&&r[`default-checked`].value);S(i,e=>{e!==void 0&&(o.value=!0)});let c=t(()=>r.mode.value===`selectable`?o.value?i.value??!1:s.value:!1);S([c,r.mode],()=>{n.toggleAttribute(`checked`,r.mode.value===`selectable`&&c.value)},{immediate:!0});function l(t){t.stopPropagation(),!r.disabled.value&&e(`remove`,{originalEvent:t,value:r.value.value})}function u(t){if(t.stopPropagation(),r.disabled.value)return;let n=!c.value;o.value||(s.value=n),e(`change`,{checked:n,originalEvent:t,value:r.value.value})}function d(t){t.stopPropagation(),!r.disabled.value&&e(`click`,{originalEvent:t,value:r.value.value})}let p=()=>f`
|
|
921
|
+
<slot name="icon"></slot>
|
|
922
|
+
<span class="label"><slot></slot></span>
|
|
923
|
+
`,m=()=>f`
|
|
924
|
+
<button
|
|
925
|
+
class="remove-btn"
|
|
926
|
+
part="remove-btn"
|
|
927
|
+
type="button"
|
|
928
|
+
:aria-label="${()=>{let e=a.value||r.value.value;return e?`Remove ${e}`:`Remove`}}"
|
|
929
|
+
?hidden="${()=>r.mode.value!==`removable`}"
|
|
930
|
+
:disabled="${()=>r.disabled.value}"
|
|
931
|
+
@click="${l}">
|
|
932
|
+
${Zt}
|
|
933
|
+
</button>
|
|
934
|
+
`,h=()=>f`
|
|
935
|
+
<button
|
|
936
|
+
class="chip-btn"
|
|
937
|
+
part="chip-btn"
|
|
938
|
+
type="button"
|
|
939
|
+
role="checkbox"
|
|
940
|
+
:aria-checked="${()=>String(c.value)}"
|
|
941
|
+
:aria-label="${()=>a.value}"
|
|
942
|
+
:disabled="${()=>r.disabled.value}"
|
|
943
|
+
@click="${u}">
|
|
944
|
+
<span class="chip" part="chip"> ${p()} </span>
|
|
945
|
+
</button>
|
|
946
|
+
`,g=()=>f`
|
|
947
|
+
<button
|
|
948
|
+
class="chip-btn"
|
|
949
|
+
part="chip-btn"
|
|
950
|
+
type="button"
|
|
951
|
+
:aria-label="${()=>a.value}"
|
|
952
|
+
:disabled="${()=>r.disabled.value}"
|
|
953
|
+
@click="${d}">
|
|
954
|
+
<span class="chip" part="chip"> ${p()} </span>
|
|
955
|
+
</button>
|
|
956
|
+
`,_=()=>f` <span class="chip" part="chip"> ${p()} </span> `,v=()=>f`
|
|
957
|
+
<span class="chip" part="chip"> ${p()} ${m()} </span>
|
|
958
|
+
`;return f`
|
|
959
|
+
${()=>{let e=r.mode.value;return e===`selectable`?h():e===`action`?g():e===`removable`?v():_()}}
|
|
960
|
+
`},styles:[R,I(),P,F({lg:{"--_font-size":`var(--text-sm)`,"--_gap":`var(--size-1-5)`,"--_padding-x":`var(--size-3)`,"--_padding-y":`var(--size-1)`},sm:{"--_font-size":`var(--text-xs)`,"--_gap":`var(--size-0-5)`,"--_padding-x":`var(--size-2-5)`,"--_padding-y":`var(--size-px)`}}),B,Xt],tag:`bit-chip`}),$t=`@layer buildit.base{:host{--_height:var(--progress-height,var(--size-2,.5rem));--_radius:var(--progress-radius,var(--rounded-full,9999px));--_circle-size:var(--progress-circle-size,6rem);--_circular-label-size:var(--progress-circular-label-size,var(--text-xl,1.25rem));--_circular-title-size:var(--progress-circular-title-size,var(--text-xs,.75rem));width:100%;display:block}.track{width:100%;height:var(--_height);background:var(--progress-track-bg,var(--color-contrast-300,#ddd));border-radius:var(--_radius);overflow:hidden}.fill{width:var(--_percent,0%);background:var(--progress-fill,var(--_theme-base,#3b82f6));border-radius:inherit;transform-origin:0;height:100%;transition:var(--_motion-transition,width var(--transition-normal))}:host(:dir(rtl)) .fill{transform-origin:100%}@keyframes bit-progress-slide{0%{transform:translate(-150%)scaleX(.6)}50%{transform:translate(50%)scaleX(1)}to{transform:translate(300%)scaleX(.6)}}:host([indeterminate]) .fill{width:40%;animation:var(--_motion-animation,bit-progress-slide 1.5s cubic-bezier(.4, 0, .2, 1) infinite)}:host(:dir(rtl)[indeterminate]) .fill{animation-direction:reverse}.wrapper{gap:var(--progress-label-gap,var(--space-1,.25rem));flex-direction:column;width:100%;display:flex}.header{gap:var(--space-2,.5rem);justify-content:space-between;align-items:baseline;display:none}:host([title]) .header{display:flex}.progress-title{font-size:var(--text-sm,.875rem);font-weight:var(--font-weight-medium,500);color:var(--progress-title-color,currentColor);line-height:1.25}.header-label{display:none}:host([title][label]) .header-label{display:inline}.bar-row{display:contents}:host([label]:not([title])) .bar-row{gap:var(--progress-label-gap,var(--space-2,.5rem));align-items:center;width:100%;display:flex}.track-outer{width:100%;position:relative}:host([label]:not([title])) .track-outer{flex:1;width:auto;min-width:0}.end-label{font-size:var(--text-sm,.875rem);color:var(--progress-label-color,currentColor);white-space:nowrap;flex-shrink:0;line-height:1.25}.row-label{display:none}:host([label]:not([title])) .row-label{display:inline}.floating-label{bottom:calc(100% + var(--space-1,.25rem));left:var(--_percent,0%);padding:var(--space-0-5,.125rem) var(--space-2,.5rem);font-size:var(--text-xs,.75rem);font-weight:var(--font-weight-medium,500);color:var(--color-white,#fff);white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none;background:var(--progress-fill,var(--_theme-base,#3b82f6));border-radius:var(--rounded-md,.375rem);line-height:1;display:none;position:absolute;transform:translate(-50%)}:host([floating-label]:not([indeterminate])) .floating-label{display:block}:host([floating-label]:not([indeterminate])) .wrapper{padding-top:calc(var(--text-xs,.75rem) + var(--space-1,.25rem) * 3)}.circular-track{width:var(--_circle-size);height:var(--_circle-size);justify-content:center;align-items:center;display:inline-flex;position:relative}.circular-track svg{width:100%;height:100%;overflow:visible;transform:rotate(-90deg)}.circular-inner{gap:var(--space-0-5,.125rem);padding:calc(8% + var(--_height));text-align:center;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0;overflow:hidden}.circular-label{text-overflow:ellipsis;max-width:100%;font-size:var(--_circular-label-size);font-weight:var(--font-weight-semibold,600);color:var(--progress-label-color,currentColor);white-space:nowrap;line-height:1;overflow:hidden}.circular-title{text-overflow:ellipsis;max-width:100%;font-size:var(--_circular-title-size);color:var(--progress-title-color,var(--color-contrast-500,#6b7280));white-space:nowrap;line-height:1.25;overflow:hidden}.circular-label:empty,.circular-title:empty{display:none}.circle-bg{fill:none;stroke:var(--progress-track-bg,var(--color-contrast-300,#ddd));stroke-width:var(--progress-stroke-width,calc(var(--_height) * 1.2))}.circle-fill{fill:none;stroke:var(--progress-fill,var(--_theme-base,#3b82f6));stroke-width:var(--progress-stroke-width,calc(var(--_height) * 1.2));stroke-linecap:round;transition:var(--_motion-transition,stroke-dashoffset var(--transition-normal))}@keyframes bit-progress-spin{0%{transform:rotate(-90deg)}to{transform:rotate(270deg)}}@keyframes bit-progress-dash{0%{stroke-dasharray:1px var(--_circ);stroke-dashoffset:var(--_circ)}40%{stroke-dasharray:calc(var(--_circ) * .75) var(--_circ);stroke-dashoffset:calc(var(--_circ) * -.1)}60%{stroke-dasharray:calc(var(--_circ) * .75) var(--_circ);stroke-dashoffset:calc(var(--_circ) * -.1)}to{stroke-dasharray:1px var(--_circ);stroke-dashoffset:calc(var(--_circ) * -.9)}}:host([indeterminate]) .circular-track svg{animation:var(--_motion-animation,bit-progress-spin 1.4s linear infinite)}:host([indeterminate]) .circle-fill{animation:var(--_motion-animation,bit-progress-dash 1.4s ease-in-out infinite)}}@layer buildit.utilities{:host([size=sm]){--_height:var(--size-1,.25rem);--_circle-size:4rem;--_circular-label-size:var(--text-sm,.875rem);--_circular-title-size:var(--text-2xs,.625rem)}:host([size=md]){--_height:var(--size-2,.5rem);--_circle-size:6rem}:host([size=lg]){--_height:var(--size-3-5,.875rem);--_circle-size:9rem;--_circular-label-size:var(--text-3xl,1.875rem);--_circular-title-size:var(--text-sm,.875rem)}}@media (prefers-reduced-motion:reduce){:host([indeterminate]) .fill{opacity:.6;width:100%}:host([indeterminate]) .circle-fill{stroke-dasharray:none}}`,en=o({props:{color:{default:void 0},"floating-label":{default:void 0},indeterminate:{default:!1},label:{default:void 0},max:{default:100},size:{default:void 0},title:{default:void 0},type:{default:`linear`},value:{default:0},"value-text":{default:void 0}},setup({host:e,props:n}){let r=2*Math.PI*45,i=t(()=>`${Math.max(0,Math.min(Number(n.value.value),Number(n.max.value)))/Math.max(1,Number(n.max.value))*100}%`),a=t(()=>r-Math.max(0,Math.min(Number(n.value.value),Number(n.max.value)))/Math.max(1,Number(n.max.value))*r),o=t(()=>n.type.value===`circular`);return S([n.value,n.max,n.indeterminate],()=>{e.style.setProperty(`--_percent`,n.indeterminate.value?`0%`:i.value)},{immediate:!0}),f`
|
|
961
|
+
${()=>o.value?f` <div
|
|
962
|
+
class="circular-track"
|
|
963
|
+
role="progressbar"
|
|
964
|
+
:aria-valuenow="${()=>n.indeterminate.value?null:String(n.value.value)}"
|
|
965
|
+
aria-valuemin="0"
|
|
966
|
+
:aria-valuemax="${()=>String(n.max.value)}"
|
|
967
|
+
:aria-label="${()=>n.label.value??n.title.value??`Progress`}"
|
|
968
|
+
:aria-valuetext="${()=>n[`value-text`].value??null}"
|
|
969
|
+
:style="${()=>`--_circ:${r}px`}">
|
|
970
|
+
<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg">
|
|
971
|
+
<circle class="circle-bg" cx="50" cy="50" r="${45}"></circle>
|
|
972
|
+
<circle
|
|
973
|
+
class="circle-fill"
|
|
974
|
+
cx="50"
|
|
975
|
+
cy="50"
|
|
976
|
+
r="${45}"
|
|
977
|
+
:stroke-dasharray="${()=>n.indeterminate.value?void 0:`${r}px`}"
|
|
978
|
+
:stroke-dashoffset="${()=>n.indeterminate.value?void 0:`${a.value}px`}"></circle>
|
|
979
|
+
</svg>
|
|
980
|
+
<div class="circular-inner">
|
|
981
|
+
<span class="circular-label">${()=>n.label.value}</span>
|
|
982
|
+
<span class="circular-title">${()=>n.title.value}</span>
|
|
983
|
+
</div>
|
|
984
|
+
</div>`:f` <div class="wrapper">
|
|
985
|
+
<div class="header">
|
|
986
|
+
<span class="progress-title">${()=>n.title.value}</span>
|
|
987
|
+
<span class="end-label header-label">${()=>n.label.value}</span>
|
|
988
|
+
</div>
|
|
989
|
+
<div class="bar-row">
|
|
990
|
+
<div class="track-outer">
|
|
991
|
+
<div
|
|
992
|
+
class="track"
|
|
993
|
+
role="progressbar"
|
|
994
|
+
:aria-valuenow="${()=>n.indeterminate.value?null:String(n.value.value)}"
|
|
995
|
+
aria-valuemin="0"
|
|
996
|
+
:aria-valuemax="${()=>String(n.max.value)}"
|
|
997
|
+
:aria-label="${()=>n.label.value??n.title.value??`Progress`}"
|
|
998
|
+
:aria-valuetext="${()=>n[`value-text`].value??null}">
|
|
999
|
+
<div
|
|
1000
|
+
class="fill"
|
|
1001
|
+
part="fill"
|
|
1002
|
+
:style="${()=>n.indeterminate.value?null:`width:${i.value}`}"></div>
|
|
1003
|
+
</div>
|
|
1004
|
+
<span class="floating-label">${()=>n[`floating-label`].value}</span>
|
|
1005
|
+
</div>
|
|
1006
|
+
<span class="end-label row-label">${()=>n.label.value}</span>
|
|
1007
|
+
</div>
|
|
1008
|
+
</div>`}
|
|
1009
|
+
`},styles:[R,B,M,$t],tag:`bit-progress`}),tn=e=>{let t=Ce({height:0,width:0}),n=new ResizeObserver(([e])=>{if(!e)return;let n=e.contentBoxSize[0];n&&(t.value={height:n.blockSize,width:n.inlineSize})});return n.observe(e),je(()=>n.disconnect()),t},nn=(e,t)=>{let n=Ce(null),r=new IntersectionObserver(([e])=>{e&&(n.value=e)},t);return r.observe(e),je(()=>r.disconnect()),n},rn=e=>{let t=(e,t,n=!1)=>e<0?{index:-1,moved:!1,reason:`no-enabled-item`,wrapped:n}:e===t?{index:e,moved:!1,reason:`unchanged`,wrapped:n}:{index:e,moved:!0,reason:`moved`,wrapped:n},n={index:-1,moved:!1,reason:`empty`,wrapped:!1},r=(t,n)=>e.isItemDisabled?e.isItemDisabled(t,n):!!t.disabled,i=(e,t)=>{for(let n=t;n<e.length;n++)if(!r(e[n],n))return n;return-1},a=(e,t)=>{for(let n=t;n>=0;n--)if(!r(e[n],n))return n;return-1},o=r=>{let a=e.getItems();if(a.length===0)return n;let o=e.getIndex(),s=i(a,Math.max(0,r));return s===-1?e.loop?t(i(a,0),o,!0):t(o,o):t(s,o)};return{first:()=>{let r=e.getItems();if(r.length===0)return n;let a=e.getIndex(),o=t(i(r,0),a);return o.index>=0&&e.setIndex(o.index),o},getActiveItem:()=>{let t=e.getItems(),n=e.getIndex();if(!(n<0||n>=t.length))return t[n]},getEnabledIndex:o,last:()=>{let r=e.getItems();if(r.length===0)return n;let i=e.getIndex(),o=t(a(r,r.length-1),i);return o.index>=0&&e.setIndex(o.index),o},next:()=>{let r=e.getItems();if(r.length===0)return n;let a=e.getIndex(),o=i(r,Math.max(0,a+1));if(o!==-1)return e.setIndex(o),t(o,a);if(e.loop){let n=i(r,0);return n!==-1&&e.setIndex(n),t(n,a,!0)}return t(a,a)},prev:()=>{let r=e.getItems();if(r.length===0)return n;let i=e.getIndex(),o=a(r,i-1);if(o!==-1)return e.setIndex(o),t(o,i);if(e.loop){let n=a(r,r.length-1);return n!==-1&&e.setIndex(n),t(n,i,!0)}return t(i,i)},reset:()=>{e.setIndex(-1)},set:t=>{let n=o(t);return n.index>=0&&e.setIndex(n.index),n}}},an=e=>{let t=null,n=()=>typeof e.restoreFocus==`function`?e.restoreFocus():e.restoreFocus??!0,r=()=>{let n=e.positioner;if(t?.(),t=null,!n)return;let r=n.reference(),i=n.floating();if(!r||!i){n.update();return}t=C(r,i,n.update)},i=()=>{t?.(),t=null},a=t=>{if(e.isDisabled?.()||e.isOpen())return;let n=t?.reason??`programmatic`;e.setOpen(!0,{reason:n}),r(),requestAnimationFrame(()=>e.positioner?.update()),e.onOpen?.(n)},o=t=>{if(!e.isOpen())return;let r=t?.reason??`programmatic`;e.setOpen(!1,{reason:r}),i(),(t?.restoreFocus??n())&&e.getTriggerElement?.()?.focus(),e.onClose?.(r)};return{bindOutsideClick:(t=document,n=!0)=>{let r=t=>{if(!e.isOpen())return;let n=e.getBoundaryElement(),r=e.getPanelElement?.(),i=t.target,a=typeof t.composedPath==`function`?t.composedPath():[];i&&(n&&(n.contains(i)||a.includes(n))||r&&(r.contains(i)||a.includes(r))||o({reason:`outside-click`}))};return t.addEventListener(`click`,r,n),()=>{t.removeEventListener(`click`,r,n)}},close:o,open:a,toggle:()=>{if(e.isOpen()){o({reason:`toggle`});return}a({reason:`toggle`})}}},on=e=>{let t=()=>e.getSelected().map(e.keyExtractor),n=e=>t().includes(e);return{clear:()=>{e.setSelected([])},isSelected:n,remove:t=>{e.setSelected(e.getSelected().filter(n=>e.keyExtractor(n)!==t))},select:t=>{let r=e.findByKey(t);if(r){if(e.getMode()===`single`){e.setSelected([r]);return}n(t)||e.setSelected([...e.getSelected(),r])}},serialize:(e=`,`)=>t().join(e),toggle:t=>{let r=e.findByKey(t);if(r){if(e.getMode()===`single`){e.setSelected([r]);return}if(n(t)){e.setSelected(e.getSelected().filter(n=>e.keyExtractor(n)!==t));return}e.setSelected([...e.getSelected(),r])}}}};function sn(e,t){let n=t.labelId||Le(`a11y-label`),r=t.helperId||Le(`a11y-helper`),i=null;return e.setAttribute(`role`,t.role),Ae(()=>{let a=e.shadowRoot;if(a&&(i=a.querySelector(`[data-a11y-helper]`)),a){let t=a.querySelector(`[data-a11y-label]`);if(t){let r=t.querySelector(`slot`);(r?r.assignedNodes().length>0:t.textContent?.trim().length??!1)&&(t.id=n,e.setAttribute(`aria-labelledby`,n))}}Ne(()=>{if(t.checked){let n=t.checked();n!==void 0&&e.setAttribute(`aria-checked`,n)}if(t.invalid){let n=t.invalid();e.setAttribute(`aria-invalid`,String(n))}if(t.helperText&&i){let n=t.helperText();n?(i.textContent=n,i.hidden=!1,e.setAttribute(`aria-describedby`,r),(t.helperTone?.()??`default`)===`error`?i.setAttribute(`role`,`alert`):i.removeAttribute(`role`)):(i.hidden=!0,e.removeAttribute(`aria-describedby`))}})}),{helperId:r,labelId:n}}function cn(e){let t=e.indeterminate??Ce(!1);return{changePayload:t=>({checked:e.checked.value,fieldValue:e.value.value??``,originalEvent:t,value:e.checked.value}),checked:e.checked,indeterminate:t,toggle:n=>{if(!(e.disabled.value??!1)){if(e.group){t.value=!1,e.group.toggle(e.value.value??``,n),e.onToggle?.(n);return}e.clearIndeterminateFirst&&t.value||(e.checked.value=!e.checked.value),t.value=!1,e.onToggle?.(n)}}}}var ln=o({props:{animated:{default:!0},height:{default:void 0},lines:{default:1},radius:{default:void 0},size:{default:void 0},striped:{default:!1},variant:{default:`rect`},width:{default:void 0}},setup({host:e,props:n}){let r=t(()=>{let e=Math.floor(Number(n.lines.value));return Number.isFinite(e)&&e>0?e:1}),i=t(()=>n.variant.value===`text`?r.value:1);return S([n.width,n.height,n.radius,n.animated],()=>{n.width.value?e.style.setProperty(`--skeleton-width`,n.width.value):e.style.removeProperty(`--skeleton-width`),n.height.value?e.style.setProperty(`--skeleton-height`,n.height.value):e.style.removeProperty(`--skeleton-height`),n.radius.value?e.style.setProperty(`--skeleton-radius`,n.radius.value):e.style.removeProperty(`--skeleton-radius`);let t=e.getAttribute(`animated`)!==`false`&&n.animated.value!==!1;e.setAttribute(`data-animated`,t?`true`:`false`)},{immediate:!0}),h(()=>{S(nn(e,{threshold:0}),t=>{e.toggleAttribute(`data-paused`,t!==null&&!t.isIntersecting)})}),f`
|
|
1010
|
+
<div class="stack" part="stack">
|
|
1011
|
+
${()=>Array.from({length:i.value},(e,t)=>{let r=n.variant.value===`text`&&i.value>1&&t===i.value-1;return f`<div
|
|
1012
|
+
class="bone"
|
|
1013
|
+
part="bone"
|
|
1014
|
+
aria-hidden="true"
|
|
1015
|
+
:data-last="${()=>r?`true`:null}"></div>`})}
|
|
1016
|
+
</div>
|
|
1017
|
+
`},styles:[M,`@layer buildit.base{:host{--_bg:var(--skeleton-bg,var(--color-contrast-200));--_highlight:var(--skeleton-highlight,var(--color-contrast-100));--_radius:var(--skeleton-radius,var(--rounded-lg));--_circle-size:var(--skeleton-size,var(--size-10));--_width:var(--skeleton-width,100%);--_height:var(--skeleton-height,var(--size-4));--_line-gap:var(--skeleton-line-gap,var(--size-2));--_last-line-width:var(--skeleton-last-line-width,60%);--_duration:var(--skeleton-duration,1.6s);--_stripe-size:var(--skeleton-stripe-size,8px);width:var(--_width);height:var(--_height);display:inline-block}.stack{gap:var(--_line-gap);width:100%;height:100%;display:grid}.bone{background:var(--_bg);border-radius:var(--_radius);width:100%;height:100%;position:relative;overflow:hidden}.bone:after{content:"";background:linear-gradient(90deg, var(--_bg) 0%, var(--_highlight) 50%, var(--_bg) 100%);animation:var(--_motion-animation,bit-skeleton-shimmer var(--_duration) linear infinite);position:absolute;inset:0;transform:translate(-100%)}:host([data-animated=false]) .bone:after{display:none}:host([data-paused]) .bone:after{animation-play-state:paused}@keyframes bit-skeleton-shimmer{to{transform:translate(100%)}}:host(:dir(rtl)) .bone:after{animation-direction:reverse}}@layer buildit.variants{:host([variant=circle]){--_radius:var(--rounded-full);width:var(--skeleton-width,var(--_circle-size));height:var(--skeleton-height,var(--_circle-size));aspect-ratio:1}:host([variant=text]){--_height:var(--size-3);--_radius:var(--rounded-sm);height:auto}:host([variant=text]) .stack{height:auto}:host([variant=text]) .bone{height:var(--_height)}:host([variant=text]) .bone[data-last=true]{width:var(--_last-line-width)}}@layer buildit.striped{:host([striped]) .stack{width:99%}:host([striped]) .bone{--_stripe-color:var(--skeleton-stripe-color,var(--color-contrast-400));border:var(--border) dashed var(--_stripe-color);background-color:#0000}:host([striped]) .bone:before{--_stripe-color:var(--skeleton-stripe-color,var(--color-contrast-300));content:"";background-color:var(--_stripe-color);-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cline x1='0' y1='8' x2='8' y2='0' stroke='white' stroke-width='1'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cline x1='0' y1='8' x2='8' y2='0' stroke='white' stroke-width='1'/%3E%3C/svg%3E");-webkit-mask-size:var(--_stripe-size) var(--_stripe-size);-webkit-mask-size:var(--_stripe-size) var(--_stripe-size);mask-size:var(--_stripe-size) var(--_stripe-size);position:absolute;inset:0}:host([striped]) .bone:after{display:none}}@layer buildit.utilities{:host([size=sm]){--_height:var(--size-3);--_circle-size:var(--size-8)}:host([size=md]){--_height:var(--size-4);--_circle-size:var(--size-10)}:host([size=lg]){--_height:var(--size-6);--_circle-size:var(--size-14)}}@media (forced-colors:active){.bone{background:buttonface;border:1px solid buttontext}.bone:after{display:none}}`],tag:`bit-skeleton`}),un=`@layer buildit.base{:host{--_position:var(--toast-position,fixed);--_inset-top:var(--toast-inset-top,auto);--_inset-bottom:var(--toast-inset-bottom,1rem);--_inset-right:var(--toast-inset-right,1rem);--_inset-left:var(--toast-inset-left,auto);--_z-index:var(--toast-z-index,9999);--_max-width:var(--toast-max-width,400px);--_gap:var(--toast-gap,.5rem);position:var(--_position);inset:var(--_inset-top) var(--_inset-right) var(--_inset-bottom) var(--_inset-left);z-index:var(--_z-index);gap:var(--_gap);max-width:var(--_max-width);pointer-events:none;flex-direction:column;display:flex}:host([position=top-left]){--_inset-top:1rem;--_inset-bottom:auto;--_inset-left:1rem;--_inset-right:auto}:host([position=top-center]){--_inset-top:1rem;--_inset-bottom:auto;--_inset-left:50%;--_inset-right:auto;transform:translate(-50%)}:host([position=top-right]){--_inset-top:1rem;--_inset-bottom:auto;--_inset-right:1rem;--_inset-left:auto}:host([position=bottom-left]){--_inset-bottom:1rem;--_inset-left:1rem;--_inset-right:auto;--_inset-top:auto}:host([position=bottom-center]){--_inset-bottom:1rem;--_inset-left:50%;--_inset-right:auto;--_inset-top:auto;transform:translate(-50%)}:host([position=bottom-right]){--_inset-bottom:1rem;--_inset-right:1rem;--_inset-left:auto;--_inset-top:auto}.toast-container{perspective:1200px;perspective-origin:50%;transition:var(--_motion-transition,row-gap var(--transition-normal,.35s) ease);grid-template-rows:1fr;grid-template-columns:1fr;row-gap:0;display:grid}.toast-live-region{display:contents}:host(.hovered) .toast-container{row-gap:var(--_gap)}:host(:not(.hovered)) .toast-wrapper{grid-area:1/1;align-self:end}:host([position^=top]:not(.hovered)) .toast-wrapper{align-self:start}.toast-wrapper{pointer-events:auto;transform-origin:bottom;transition:var(--_motion-transition,transform .5s cubic-bezier(.34, 1.1, .64, 1), opacity .5s cubic-bezier(.34, 1.1, .64, 1), filter .5s cubic-bezier(.34, 1.1, .64, 1));will-change:transform, opacity, filter;position:relative}@starting-style{.toast-wrapper{opacity:0;transform:translateY(1.5rem)scale(.92)}:host([position^=top]) .toast-wrapper{transform:translateY(-1.5rem)scale(.92)}}.toast-wrapper.exiting{pointer-events:none;animation:var(--_motion-animation,toast-exit .3s ease-out forwards);z-index:-1!important;transition:none!important}@keyframes toast-exit{to{opacity:0;transform:scale(.7)}}:host(:not(.hovered)) .toast-wrapper:last-child{z-index:3;opacity:1;filter:brightness();transform:translateY(0)scale(1)}:host(:not(.hovered)) .toast-wrapper:nth-last-child(2){z-index:2;pointer-events:none;opacity:.85;filter:brightness(.95);transform:translateY(-8px)scale(.95)rotateX(3deg)}:host(:not(.hovered)) .toast-wrapper:nth-last-child(3){z-index:1;pointer-events:none;opacity:.7;filter:brightness(.9);transform:translateY(-14px)scale(.9)rotateX(5deg)}:host(:not(.hovered)) .toast-wrapper:nth-last-child(n+4){pointer-events:none;opacity:0}:host(.hovered) .toast-wrapper{grid-area:auto/1;align-self:stretch;z-index:auto!important;pointer-events:auto!important;opacity:1!important;filter:brightness()!important;transform:none!important}:host(.hovered) .toast-wrapper:nth-last-child(2){transition-delay:50ms}:host(.hovered) .toast-wrapper:nth-last-child(3){transition-delay:.1s}:host(.hovered) .toast-wrapper:nth-last-child(n+4){transition-delay:.15s}:host([position^=top]) .toast-wrapper{transform-origin:top}:host([position^=top]:not(.hovered)) .toast-wrapper:nth-last-child(2){transform:translateY(8px)scale(.95)rotateX(-3deg)}:host([position^=top]:not(.hovered)) .toast-wrapper:nth-last-child(3){transform:translateY(14px)scale(.9)rotateX(-5deg)}::slotted(bit-alert){width:100%;box-shadow:var(--shadow-lg);margin:0}.toast-wrapper.exiting ::slotted(bit-alert){transition:none!important}.toast-actions{gap:var(--size-4);justify-content:flex-end;display:flex}@media (width<=480px){:host{--_max-width:calc(100vw - var(--size-4));--_inset-right:var(--size-2);--_inset-left:var(--size-2)}:host([position=top-center]){--_inset-left:var(--size-2);transform:none}:host([position=top-center]):not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:var(--size-2)}:host([position=top-center]):is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:var(--size-2)}:host([position=bottom-center]){--_inset-left:var(--size-2);transform:none}:host([position=bottom-center]):not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:var(--size-2)}:host([position=bottom-center]):is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:var(--size-2)}}}`;function dn(e,t){return e.actions?.length?f`
|
|
1018
|
+
<div slot="actions" class="toast-actions">
|
|
1019
|
+
${e.actions.map(n=>f`
|
|
1020
|
+
<bit-button
|
|
1021
|
+
size="sm"
|
|
1022
|
+
color=${n.color||e.color||`primary`}
|
|
1023
|
+
variant=${n.variant||`solid`}
|
|
1024
|
+
@click=${()=>{n.onClick?.(),t()}}
|
|
1025
|
+
>${n.label}</bit-button
|
|
1026
|
+
>
|
|
1027
|
+
`)}
|
|
1028
|
+
</div>
|
|
1029
|
+
`:``}var fn=o({props:{max:{default:5},position:{default:`bottom-right`}},setup({emit:e,host:t,props:n}){let r=y([]),i=y(new Set),a=v(),o=new Map,s=[],c=!1,l=(e,t)=>{let n=new Set(i.value);t?n.add(e):n.delete(e),i.value=n},u=(e,t)=>{let n=window.setTimeout(()=>{_(e),o.delete(e)},t);o.set(e,{remaining:t,startedAt:Date.now(),timeoutId:n})},d=!1,p=()=>{if(!d){d=!0;for(let[e,t]of o)clearTimeout(t.timeoutId),o.set(e,{...t,remaining:Math.max(0,t.remaining-(Date.now()-t.startedAt))})}},m=()=>{if(d){d=!1;for(let[e,t]of o)t.remaining<=0||u(e,t.remaining)}},g=t=>{let i=t.id||crypto.randomUUID(),a={dismissible:!0,duration:5e3,...t,id:i};return r.value=[...r.value,a].slice(-(n.max.value??5)),e(`add`,{id:i}),a.duration>0&&u(i,a.duration),i},_=e=>{let t=o.get(e);if(t&&(clearTimeout(t.timeoutId),o.delete(e)),!(i.value.has(e)||s.includes(e))){if(c){s.push(e);return}c=!0,b(e)}},b=t=>{if(i.value.has(t)){x();return}let n=r.value.find(e=>e.id===t),o=a.value?.querySelector(`[data-toast-id="${t}"]`),s=()=>{l(t,!1),r.value=r.value.filter(e=>e.id!==t),n?.onDismiss?.(),e(`dismiss`,{id:t}),x()};o?(l(t,!0),Gt(o,s)):s()},x=()=>{if(s.length===0){c=!1;return}b(s.shift())},S=(e,t)=>{if(r.value=r.value.map(n=>n.id===e?{...n,...t,id:e}:n),t.duration===void 0)return;let n=o.get(e);n&&clearTimeout(n.timeoutId),o.delete(e),t.duration>0&&u(e,t.duration)},C=()=>{for(let[,e]of o)clearTimeout(e.timeoutId);o.clear(),s.length=0;let e=r.value.map(e=>e.id).filter(e=>!i.value.has(e));e.length&&(s.push(...e),c||x())};h(()=>{let e=t;e.add=g,e.update=S,e.dismiss=_,e.clear=C});let w=e=>e.urgency??(e.color===`error`?`assertive`:`polite`),T=!1,E=!1,D=()=>p(),O=()=>{!T&&!E&&m()},k=e=>{E=e,t.classList.toggle(`hovered`,e),e?D():O()},A=e=>f`
|
|
1030
|
+
<div
|
|
1031
|
+
class=${Xe({exiting:()=>i.value.has(e.id),"toast-wrapper":!0})}
|
|
1032
|
+
data-toast-id=${e.id}
|
|
1033
|
+
part="toast-wrapper">
|
|
1034
|
+
<bit-alert
|
|
1035
|
+
color=${e.color||(e.urgency===`assertive`?`error`:`primary`)}
|
|
1036
|
+
variant=${e.variant||`solid`}
|
|
1037
|
+
size=${e.size||`md`}
|
|
1038
|
+
rounded=${e.rounded||`md`}
|
|
1039
|
+
?dismissible=${e.dismissible}
|
|
1040
|
+
?horizontal=${e.horizontal}
|
|
1041
|
+
heading=${e.heading||``}
|
|
1042
|
+
@dismiss=${()=>_(e.id)}>
|
|
1043
|
+
${e.meta?f`<span slot="meta">${e.meta}</span>`:``} ${e.message}
|
|
1044
|
+
${dn(e,()=>_(e.id))}
|
|
1045
|
+
</bit-alert>
|
|
1046
|
+
</div>
|
|
1047
|
+
`;return f`
|
|
1048
|
+
<div
|
|
1049
|
+
class="toast-container"
|
|
1050
|
+
ref=${a}
|
|
1051
|
+
@pointerenter=${()=>k(!0)}
|
|
1052
|
+
@pointerleave=${()=>k(!1)}
|
|
1053
|
+
@focusin=${()=>{T=!0,D()}}
|
|
1054
|
+
@focusout=${()=>{T=!1,O()}}
|
|
1055
|
+
part="container">
|
|
1056
|
+
<!-- Polite live region: normal informational toasts -->
|
|
1057
|
+
<div
|
|
1058
|
+
role="region"
|
|
1059
|
+
aria-live="polite"
|
|
1060
|
+
aria-relevant="additions removals"
|
|
1061
|
+
aria-atomic="false"
|
|
1062
|
+
aria-label="Notifications"
|
|
1063
|
+
class="toast-live-region">
|
|
1064
|
+
${rt(()=>r.value.filter(e=>w(e)===`polite`),A,void 0,{key:e=>e.id})}
|
|
1065
|
+
</div>
|
|
1066
|
+
<!-- Assertive live region: critical errors that interrupt immediately -->
|
|
1067
|
+
<div
|
|
1068
|
+
role="region"
|
|
1069
|
+
aria-live="assertive"
|
|
1070
|
+
aria-relevant="additions removals"
|
|
1071
|
+
aria-atomic="false"
|
|
1072
|
+
aria-label="Critical notifications"
|
|
1073
|
+
class="toast-live-region">
|
|
1074
|
+
${rt(()=>r.value.filter(e=>w(e)===`assertive`),A,void 0,{key:e=>e.id})}
|
|
1075
|
+
</div>
|
|
1076
|
+
<slot></slot>
|
|
1077
|
+
</div>
|
|
1078
|
+
`},styles:[M,un],tag:`bit-toast`}),pn=()=>{let e=document.querySelector(`bit-toast`);return e||(e=document.createElement(`bit-toast`),document.body.appendChild(e)),e},mn={add(e){return pn().add(e)},clear(){pn().clear()},configure(e){let t=pn();e.position&&t.setAttribute(`position`,e.position),e.max!=null&&t.setAttribute(`max`,String(e.max))},async promise(e,t){let n=mn.add({color:`primary`,dismissible:!1,duration:0,message:t.loading});try{let r=await e;return mn.update(n,{color:`success`,dismissible:!0,duration:5e3,message:typeof t.success==`function`?t.success(r):t.success}),r}catch(e){throw mn.update(n,{color:`error`,dismissible:!0,duration:5e3,message:typeof t.error==`function`?t.error(e):t.error}),e}},remove(e){pn().dismiss(e)},update(e,t){pn().update(e,t)}};function hn(e,t,{padding:n=6}={}){function r(){let r=e(),i=t();if(!r||!i)return;let a=r.getBoundingClientRect().width;D(r,i,{middleware:[T({padding:n}),O({padding:n}),k({apply({elements:e}){e.floating.style.width=`${a}px`},padding:n})],placement:`bottom-start`})}return{destroy(){},updatePosition:r}}function gn(e,t){if(t==null)return{atLimit:!1,hidden:!0,nearLimit:!1,text:``};let n=e/t;return{atLimit:n>=1,hidden:!1,nearLimit:n>=.9&&n<1,text:`${e} / ${t}`}}function _n(e,t){let n=!!e;return{errorHidden:!n,errorText:e??``,helperHidden:n||!t,helperText:t??``}}function vn(e,t){let n=!!e,r=e||t||``;return{hidden:!r,isError:n,text:r}}function yn(e,t,n){return{labels:t,originalEvent:n,value:e.join(`,`),values:e}}function bn(e){return e?e.split(`,`).map(e=>e.trim()).filter(Boolean):[]}function xn(e){if(e==null)return null;let t=Number(e);return Number.isFinite(t)&&t>0?t:null}function Sn(e){let t=bn(e);return{firstValue:t[0]??``,formValue:t.join(`,`),isEmpty:t.length===0,values:t}}function Cn(e){c(()=>{let t=e.ref.value;if(!t)return;let n=gn(typeof e.count==`function`?e.count():e.count.value,xn(typeof e.maxLength==`function`?e.maxLength():e.maxLength.value));t.hidden=n.hidden,e.format===`merged`?(t.textContent=n.text.replace(` / `,`/`),t.className=n.atLimit?`counter at-limit`:n.nearLimit?`counter near-limit`:`counter`):(t.textContent=n.text,t.removeAttribute(`data-near-limit`),t.removeAttribute(`data-at-limit`),n.atLimit?t.setAttribute(`data-at-limit`,``):n.nearLimit&&t.setAttribute(`data-near-limit`,``))})}function wn(e){c(()=>{let t=_n(typeof e.error==`function`?e.error():e.error.value,typeof e.helper==`function`?e.helper():e.helper.value);e.helperRef.value&&(e.helperRef.value.textContent=t.helperText,e.helperRef.value.hidden=t.helperHidden),e.errorRef.value&&(e.errorRef.value.textContent=t.errorText,e.errorRef.value.hidden=t.errorHidden)})}function Tn(e){c(()=>{let t=e.ref.value;if(!t)return;let n=vn(typeof e.error==`function`?e.error():e.error.value,typeof e.helper==`function`?e.helper():e.helper.value);t.textContent=n.text,t.hidden=n.hidden})}function En(e,t){e&&(t.onInput&&d(e,`input`,n=>{t.onInput(n,e.value)}),t.onChange&&d(e,`change`,n=>{t.onChange(n,e.value)}),t.onBlur&&d(e,`blur`,t.onBlur))}var $=n(`FormContext`);function Dn(e,t,n){if(!t)return;let r=!1;c(()=>{let i=t.disabled.value;i&&!r?(e.setAttribute(`disabled`,``),r=!0):!i&&r&&(e.removeAttribute(`disabled`),r=!1);let a=t.size.value;if(a&&!n.size.value?e.setAttribute(`size`,a):n.size.value||e.removeAttribute(`size`),n.variant){let r=t.variant.value;r&&!n.variant.value?e.setAttribute(`variant`,r):n.variant.value||e.removeAttribute(`variant`)}})}function On(e,t,n){c(()=>{let r=n[`label-placement`].value??`inset`,i=n.label.value??``;e.value&&(e.value.textContent=i,e.value.hidden=!i||r!==`inset`),t.value&&(t.value.textContent=i,t.value.hidden=!i||r!==`outside`)})}var kn=`@layer buildit.base{:host{display:block}fieldset{border:none;min-width:0;margin:0;padding:0}legend{margin-bottom:var(--size-2);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-contrast-600);padding:0}legend[hidden]{display:none}.checkbox-group-items{flex-direction:var(--checkbox-group-direction,column);gap:var(--checkbox-group-gap,var(--size-2));display:flex}.helper-text{margin-top:var(--size-1-5);font-size:var(--text-xs);line-height:var(--leading-tight);color:var(--color-contrast-500);padding-left:2px;padding-right:2px}.error-text{margin-top:var(--size-1-5);font-size:var(--text-xs);line-height:var(--leading-tight);color:var(--color-error);padding-left:2px;padding-right:2px}}@layer buildit.variants{:host([orientation=horizontal]) .checkbox-group-items{--checkbox-group-direction:row;flex-wrap:wrap}}`,An=n(`CheckboxGroupContext`),jn=o({props:{color:{default:void 0},disabled:{default:!1},error:{default:``},helper:{default:``},label:{default:``},orientation:{default:`vertical`},required:{default:!1},size:{default:void 0},values:{default:``}},setup({emit:e,host:n,props:r}){let a=e=>bn(e),o=y(a(r.values.value)),s=()=>Array.from(n.getElementsByTagName(`bit-checkbox`)),l=e=>s().find(t=>(t.getAttribute(`value`)??``)===e)?.textContent?.replace(/\s+/g,` `).trim()||e,u=t=>{let n=o.value;e(`change`,yn(n,n.map(l),t))};c(()=>{o.value=a(r.values.value)});let m=(e,t)=>{let r=o.value,i=r.includes(e)?r.filter(t=>t!==e):[...r,e];o.value=i,n.setAttribute(`values`,i.join(`,`)),u(t)};Dn(n,p($,void 0),r),_(An,{color:r.color,disabled:t(()=>!!r.disabled.value),size:r.size,toggle:m,values:o});let v=()=>{let e=o.value,t=r.color.value,i=r.size.value,a=r.disabled.value,s=Array.from(n.getElementsByTagName(`bit-checkbox`));for(let n of s){let r=n.getAttribute(`value`)??``;e.includes(r)?n.setAttribute(`checked`,``):n.removeAttribute(`checked`),t?n.setAttribute(`color`,t):n.removeAttribute(`color`),i?n.setAttribute(`size`,i):n.removeAttribute(`size`),a?n.setAttribute(`disabled`,``):n.removeAttribute(`disabled`)}};c(v),h(()=>{g(`default`,v),v(),d(n,`change`,e=>{e.target!==n&&(e.stopPropagation(),m(e.target.getAttribute(`value`)??``,e))})});let b=i(`checkbox-group-legend`),x=`${b}-error`,S=`${b}-helper`,C=t(()=>!!r.error.value),w=t(()=>!!r.helper.value&&!C.value);return f`
|
|
1079
|
+
<fieldset
|
|
1080
|
+
role="group"
|
|
1081
|
+
aria-required="${()=>String(!!r.required.value)}"
|
|
1082
|
+
aria-invalid="${()=>String(C.value)}"
|
|
1083
|
+
aria-errormessage="${()=>C.value?x:null}"
|
|
1084
|
+
aria-describedby="${()=>C.value?x:w.value?S:null}">
|
|
1085
|
+
<legend id="${b}" ?hidden=${()=>!r.label.value}>
|
|
1086
|
+
${()=>r.label.value}${()=>r.required.value?f`<span aria-hidden="true"> *</span>`:``}
|
|
1087
|
+
</legend>
|
|
1088
|
+
<div class="checkbox-group-items" part="items">
|
|
1089
|
+
<slot></slot>
|
|
1090
|
+
</div>
|
|
1091
|
+
<div class="error-text" id="${x}" role="alert" ?hidden=${()=>!C.value}>
|
|
1092
|
+
${()=>r.error.value}
|
|
1093
|
+
</div>
|
|
1094
|
+
<div class="helper-text" id="${S}" ?hidden=${()=>!w.value}>${()=>r.helper.value}</div>
|
|
1095
|
+
</fieldset>
|
|
1096
|
+
`},styles:[R,F(),I(),kn],tag:`bit-checkbox-group`});function Mn(e,t,n){e?.validateOn.value===n&&t.reportValidity()}function Nn(e,t){return{triggerValidation(n){Mn(e,t,n)}}}function Pn(e,n){let a=p($,void 0),o=y(``),c=s({disabled:t(()=>!!e.disabled.value||!!a?.disabled.value),value:o},{onReset:()=>{o.value=``}});S(e.value,e=>{o.value=String(e??``)},{immediate:!0});let{errorId:l,fieldId:u,helperId:d,labelId:f}=r(n,e.name.value||i(n)),m=`${f}-outside`,h=v(),g=v();function _(){On(h,g,e)}function b(e){Mn(a,c,e)}return{errorId:l,fieldId:u,formCtx:a,helperId:d,labelInsetId:f,labelInsetRef:h,labelOutsideId:m,labelOutsideRef:g,mountLabelSync:_,triggerValidation:b,valueSignal:o}}function Fn(e,n){let r=p($,void 0),i=y(!1),a=s({disabled:t(()=>!!e.disabled.value||!!r?.disabled.value),toFormValue:e=>e,value:t(()=>i.value?e.value.value??``:null)},{onReset:()=>{i.value=e.checked.value??!1,n?.()}});S(e.checked,e=>{i.value=e??!1},{immediate:!0});let{triggerValidation:o}=Nn(r,a);return{checkedSignal:i,formCtx:r,triggerValidation:o}}var In={lg:{"--_field-height":`var(--size-12)`,"--_padding":`var(--size-2-5) var(--size-3-5)`,fontSize:`var(--text-base)`,gap:`var(--size-2-5)`},md:{"--_field-height":`var(--size-10)`,"--_padding":`var(--size-1-5) var(--size-3)`,fontSize:`var(--text-sm)`,gap:`var(--size-2)`},sm:{"--_field-height":`var(--size-8)`,"--_padding":`var(--size-1) var(--size-2)`,fontSize:`var(--text-xs)`,gap:`var(--size-1-5)`}},Ln={lg:{"--_padding":`var(--size-2-5) var(--size-3-5)`,fontSize:`var(--text-base)`,gap:`var(--size-2-5)`},md:{"--_padding":`var(--size-1-5) var(--size-3)`,fontSize:`var(--text-sm)`,gap:`var(--size-2)`},sm:{"--_padding":`var(--size-1) var(--size-2)`,fontSize:`var(--text-xs)`,gap:`var(--size-1-5)`}},Rn={lg:{fontSize:`var(--text-base)`,gap:`var(--size-2-5)`,size:`var(--size-6)`},sm:{fontSize:`var(--text-xs)`,gap:`var(--size-1-5)`,size:`var(--size-4)`}},zn={lg:{fontSize:`var(--text-base)`,gap:`var(--size-3)`,height:`var(--size-7)`,thumbSize:`var(--size-6)`,width:`var(--size-14)`},sm:{fontSize:`var(--text-xs)`,gap:`var(--size-2)`,height:`var(--size-5)`,thumbSize:`var(--size-4)`,width:`var(--size-9)`}},Bn={lg:{fontSize:`var(--text-base)`,height:`calc(var(--size-5) - var(--size-1))`,size:`var(--size-5)`},md:{fontSize:`var(--text-base)`,height:`var(--size-3)`,size:`var(--size-5)`},sm:{fontSize:`var(--text-xs)`,height:`var(--size-2)`,size:`var(--size-4)`}},Vn={lg:{"--_min-height":`var(--size-40)`,fontSize:`var(--text-base)`},sm:{"--_min-height":`var(--size-28)`,fontSize:`var(--text-xs)`}},Hn=`@layer buildit.base{:host{--_size:var(--checkbox-size,var(--size-5));--_radius:var(--checkbox-radius,var(--rounded-lg));--_font-size:var(--checkbox-font-size,var(--text-sm));--_bg:var(--checkbox-bg,var(--color-contrast-200));--_border:var(--checkbox-border-color,var(--color-contrast-300));gap:var(--_gap,var(--size-2));min-height:var(--_touch-target);cursor:pointer;-webkit-user-select:none;user-select:none;flex-wrap:wrap;align-items:center;display:inline-flex}.checkbox-wrapper{width:var(--_size);height:var(--_size);flex-shrink:0;display:block;position:relative}.box{box-sizing:border-box;width:var(--_size);height:var(--_size);background:var(--_bg);border:var(--border-2) solid var(--_border);border-radius:var(--_radius);transition:background var(--transition-slower), border-color var(--transition-slower), box-shadow var(--transition-normal);position:relative}input:focus-visible+.box{box-shadow:var(--_focus-shadow)}.checkmark,.dash{width:80%;height:80%;color:var(--_icon-color);opacity:0;fill:none;stroke:currentColor;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;transition:opacity var(--transition-spring), transform var(--transition-spring);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(.5)}.label{font-size:var(--_font-size);color:var(--color-contrast)}.helper-text{width:100%;font-size:var(--text-xs);line-height:var(--leading-tight);color:var(--color-contrast-500)}.helper-text:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){padding-left:calc(var(--_size) + var(--size-2))}.helper-text:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){padding-right:calc(var(--_size) + var(--size-2))}.helper-text[role=alert]{color:var(--color-error)}}@layer buildit.overrides{:host{--_active-bg:var(--checkbox-checked-bg,var(--_theme-base));--_icon-color:var(--checkbox-color,var(--_theme-contrast));--_focus-shadow:var(--_theme-shadow)}:host([checked]) .box,:host([indeterminate]) .box{background:var(--_active-bg);border-color:var(--_active-bg)}:host([checked]) .checkmark,:host([indeterminate]:not([checked])) .dash{opacity:1;transform:translate(-50%,-50%)scale(1)}}`,Un=o({formAssociated:!0,props:{checked:{default:!1},color:{default:void 0},disabled:{default:!1},error:{default:``},helper:{default:``},indeterminate:{default:!1},name:{default:``},size:{default:void 0},value:{default:`on`}},setup({emit:e,host:t,props:n,reflect:r}){let{checkedSignal:i,formCtx:a,triggerValidation:o}=Fn(n);Dn(t,a,n);let s=y(!!n.indeterminate.value);S(n.indeterminate,e=>{s.value=!!e});let c=p(An,void 0),l=cn({checked:i,clearIndeterminateFirst:!0,disabled:n.disabled,group:c,indeterminate:s,onToggle:t=>{o(`change`),!c&&e(`change`,l.changePayload(t))},value:n.value}),u=sn(t,{checked:()=>l.indeterminate.value?`mixed`:l.checked.value?`true`:`false`,helperText:()=>n.error.value||n.helper.value,helperTone:()=>n.error.value?`error`:`default`,invalid:()=>!!n.error.value,role:`checkbox`});return r({checked:()=>l.checked.value,classMap:()=>({"is-checked":l.checked.value,"is-disabled":!!n.disabled.value,"is-indeterminate":l.indeterminate.value}),indeterminate:()=>l.indeterminate.value,onClick:e=>l.toggle(e),onKeydown:e=>{let t=e;(t.key===` `||t.key===`Enter`)&&(t.preventDefault(),l.toggle(e))},tabindex:()=>n.disabled.value?void 0:0}),f`
|
|
1097
|
+
<div class="checkbox-wrapper" part="checkbox">
|
|
1098
|
+
<div class="box" part="box">
|
|
1099
|
+
<svg
|
|
1100
|
+
class="checkmark"
|
|
1101
|
+
viewBox="0 0 24 24"
|
|
1102
|
+
fill="none"
|
|
1103
|
+
stroke="currentColor"
|
|
1104
|
+
stroke-width="2"
|
|
1105
|
+
stroke-linecap="round"
|
|
1106
|
+
stroke-linejoin="round"
|
|
1107
|
+
xmlns="http://www.w3.org/2000/svg">
|
|
1108
|
+
<path d="M 20,6 9,17 4,12" />
|
|
1109
|
+
</svg>
|
|
1110
|
+
<svg
|
|
1111
|
+
class="dash"
|
|
1112
|
+
viewBox="0 0 24 24"
|
|
1113
|
+
fill="none"
|
|
1114
|
+
stroke="currentColor"
|
|
1115
|
+
stroke-width="2"
|
|
1116
|
+
stroke-linecap="round"
|
|
1117
|
+
stroke-linejoin="round"
|
|
1118
|
+
xmlns="http://www.w3.org/2000/svg">
|
|
1119
|
+
<path d="M 5,12 H 19" />
|
|
1120
|
+
</svg>
|
|
1121
|
+
</div>
|
|
1122
|
+
</div>
|
|
1123
|
+
<span class="label" part="label" data-a11y-label id="${u.labelId}"><slot></slot></span>
|
|
1124
|
+
<div
|
|
1125
|
+
class="helper-text"
|
|
1126
|
+
part="helper-text"
|
|
1127
|
+
data-a11y-helper
|
|
1128
|
+
id="${u.helperId}"
|
|
1129
|
+
aria-live="polite"
|
|
1130
|
+
hidden></div>
|
|
1131
|
+
`},styles:[...J,j,F(Rn),Hn],tag:`bit-checkbox`});function Wn(e){return e.filter(e=>e.localName===`bit-combobox-option`).map(e=>({disabled:e.hasAttribute(`disabled`),iconEl:e.querySelector(`[slot="icon"]`),label:e.getAttribute(`label`)||[...e.childNodes].filter(e=>e.nodeType===Node.TEXT_NODE).map(e=>e.textContent?.trim()).filter(Boolean).join(` `)||``,value:e.getAttribute(`value`)??``}))}function Gn(e,t){return e.map(e=>{if(e.label)return e;let n=t.find(t=>t.value===e.value);return n?{label:n.label,value:e.value}:e})}function Kn(e,t,n){if(n||!t)return e;let r=t.toLowerCase();return e.filter(e=>e.label.toLowerCase().includes(r))}function qn(e,t,n){if(!t||!e)return``;let r=e.trim();return r?n.find(e=>e.label.toLowerCase()===r.toLowerCase())?``:r:``}function Jn(e){return e.toLowerCase().replace(/\s+/g,`-`)}var Yn=class{_count;_estimateSizeFn;overscan;onChange;measuredHeights=new Map;virtualItems=[];totalSize=0;scrollOffsets=new Float64Array;containerHeight=0;scrollTop=0;prevRenderStart=-1;prevRenderEnd=-1;attachedEl=null;resizeObserver=null;scrollHandler=null;pendingBuild=!1;constructor(e){this._count=e.count;let t=e.estimateSize??36;this._estimateSizeFn=typeof t==`number`?()=>t:t,this.overscan=e.overscan??3,this.onChange=e.onChange,this.buildOffsets()}get count(){return this._count}set count(e){this._count=e,this.buildOffsets(),this.attachedEl&&this.computeVisible()}set estimateSize(e){this._estimateSizeFn=typeof e==`number`?()=>e:e,this.measuredHeights.clear(),this.buildOffsets(),this.attachedEl&&this.computeVisible()}attach(e){this.teardown(),this.attachedEl=e,this.containerHeight=e.clientHeight,this.scrollTop=e.scrollTop,this.scrollHandler=()=>{this.scrollTop=e.scrollTop,this.computeVisible()},e.addEventListener(`scroll`,this.scrollHandler,{passive:!0}),this.resizeObserver=new ResizeObserver(()=>{this.containerHeight=e.clientHeight,this.computeVisible()}),this.resizeObserver.observe(e),this.computeVisible()}destroy(){this.teardown()}[Symbol.dispose](){this.destroy()}getVirtualItems(){return this.virtualItems}getTotalSize(){return this.totalSize}measureElement(e,t){this.heightAt(e)!==t&&(this.measuredHeights.set(e,t),this.pendingBuild||(this.pendingBuild=!0,queueMicrotask(()=>{this.pendingBuild=!1,this.buildOffsets(),this.attachedEl&&this.computeVisible()})))}scrollToIndex(e,t={}){let n=this.attachedEl;if(!n)return;let r=Math.max(0,Math.min(e,this._count-1)),i=t.align??`auto`,a=t.behavior??`auto`,o=this.offsetAt(r),s=this.heightAt(r),c;if(i===`start`)c=o;else if(i===`end`)c=o+s-this.containerHeight;else if(i===`center`)c=o-(this.containerHeight-s)/2;else{let e=n.scrollTop,t=e+this.containerHeight;if(o>=e&&o+s<=t)return;c=o<e?o:o+s-this.containerHeight}n.scrollTo({behavior:a,top:Math.max(0,c)})}scrollToOffset(e,t={}){this.attachedEl?.scrollTo({behavior:t.behavior??`auto`,top:Math.max(0,e)})}invalidate(){this.measuredHeights.clear(),this.buildOffsets(),this.attachedEl&&this.computeVisible()}teardown(){this.scrollHandler&&this.attachedEl&&(this.attachedEl.removeEventListener(`scroll`,this.scrollHandler),this.scrollHandler=null),this.resizeObserver?.disconnect(),this.resizeObserver=null,this.attachedEl=null}heightAt(e){return this.measuredHeights.get(e)??this._estimateSizeFn(e)}offsetAt(e){return this.scrollOffsets[e]??0}buildOffsets(){this.prevRenderStart=-1,this.prevRenderEnd=-1;let e=new Float64Array(this._count+1);e[0]=0;for(let t=0;t<this._count;t++)e[t+1]=e[t]+this.heightAt(t);this.scrollOffsets=e,this.totalSize=e[this._count]??0}computeVisible(){let e=this.scrollTop,t=e+this.containerHeight,n=0,r=this._count-1;for(;n<r;){let t=n+r>>1;this.scrollOffsets[t+1]<=e?n=t+1:r=t}let i=n,a=i,o=this._count-1;for(;a<o;){let e=a+o+1>>1;this.scrollOffsets[e]<t?a=e:o=e-1}let s=a,c=Math.max(0,i-this.overscan),l=Math.min(this._count-1,s+this.overscan);if(c===this.prevRenderStart&&l===this.prevRenderEnd)return;this.prevRenderStart=c,this.prevRenderEnd=l;let u=[];for(let e=c;e<=l;e++)u.push({height:this.heightAt(e),index:e,top:this.scrollOffsets[e]});this.virtualItems=u,this.onChange?.(u,this.totalSize)}};function Xn(e,t){let n=new Yn(t);return n.attach(e),n}function Zn(e){let t=[],n=null,r=null,i=null,a=n=>typeof e.estimateSize==`number`?e.estimateSize:e.estimateSize(n,t[n]),o=()=>{!n||!i||(n.style.height=`${i.getTotalSize()}px`,n.style.position=`relative`,n.style.contain=`layout`)},s=()=>{n&&(e.clear(n),n.style.height=``,n.style.position=``,n.style.contain=``)},c=()=>{let c=e.getScrollElement(),l=e.getListElement();if(!c||!l||t.length===0){i?.destroy(),i=null,n=l,r=c,s();return}let u=r!==c||n!==l;n=l,r=c,!i||u?(i?.destroy(),i=Xn(r,{count:t.length,estimateSize:a,onChange:r=>{n&&e.render({items:t,listEl:n,virtualItems:r})},overscan:e.overscan??3})):(i.count=t.length,i.invalidate()),o()};return{destroy(){i?.destroy(),i=null,s()},scrollToIndex(e,t){i?.scrollToIndex(e,t)},update(a,o){if(t=a,!o||t.length===0){i?.destroy(),i=null,n=e.getListElement(),r=e.getScrollElement(),s();return}c()}}}function Qn(e){let t=[],n=null;function r(t){return e.getIsMultiple()?e.getSelectedValues().some(e=>e.value===t.value):t.value===e.getSelectedValue()}function i(i){if(!n)return;for(let e of Array.from(n.querySelectorAll(`.option`)))e.remove();let a=e.getFocusedIndex();for(let o of i){let i=t[o.index];if(!i)continue;let s=r(i),c=document.createElement(`div`);if(c.className=`option`,c.setAttribute(`role`,`option`),c.id=`${e.comboId}-opt-${o.index}`,c.setAttribute(`aria-selected`,String(s)),c.setAttribute(`aria-disabled`,String(!!i.disabled)),c.style.cssText=`position:absolute;top:0;left:0;right:0;transform:translateY(${o.top}px);`,a===o.index&&c.setAttribute(`data-focused`,``),s&&c.setAttribute(`data-selected`,``),i.disabled&&c.setAttribute(`data-disabled`,``),i.iconEl){let e=document.createElement(`span`);e.className=`option-icon`,e.setAttribute(`aria-hidden`,`true`);let t=i.iconEl.cloneNode(!0);t.removeAttribute(`slot`),e.appendChild(t),c.appendChild(e)}let l=document.createElement(`span`);l.textContent=i.label,c.appendChild(l);let u=document.createElement(`span`);u.className=`option-check`,u.setAttribute(`aria-hidden`,`true`),u.innerHTML=e.checkIconHTML,c.appendChild(u),c.addEventListener(`pointerdown`,e=>{e.preventDefault()}),c.addEventListener(`click`,t=>{t.stopPropagation(),e.onSelectOption(i,t)}),c.addEventListener(`pointerenter`,()=>{e.setFocusedIndex(o.index);for(let e of n.querySelectorAll(`[data-focused]`))e.removeAttribute(`data-focused`);c.setAttribute(`data-focused`,``)}),n.appendChild(c)}}function a(){if(!n)return;let i=e.getFocusedIndex();for(let a of n.querySelectorAll(`.option`)){let n=Number(a.id.replace(`${e.comboId}-opt-`,``)),o=t[n];if(!o)continue;let s=r(o);a.toggleAttribute(`data-focused`,n===i),a.toggleAttribute(`data-selected`,s),a.setAttribute(`aria-selected`,String(s))}}let o=Zn({clear:e=>{for(let t of Array.from(e.querySelectorAll(`.option`)))t.remove()},estimateSize:36,getListElement:e.getListboxElement,getScrollElement:e.getDropdownElement,overscan:4,render:({items:e,listEl:r,virtualItems:a})=>{t=e,n=r,i(a)}});function s(e,n){t=e,o.update(t,n)}return{domVirtualList:o,setupVirtualizer:s,updateRenderedItemState:a}}var $n=`@layer buildit.base{:host{--_font-size:var(--combobox-font-size,var(--text-sm));--_gap:var(--combobox-gap,var(--size-2));--_field-height:var(--combobox-height,var(--size-10));--_row-min-height:calc(var(--leading-normal) * var(--_font-size) + 2px);--_padding:var(--combobox-padding,var(--size-1-5) var(--size-3));--_radius:var(--combobox-radius,var(--rounded-lg));--_placeholder:var(--combobox-placeholder-color,var(--color-contrast-500));--_bg:var(--combobox-bg,var(--color-contrast-100));--_border-color:var(--combobox-border-color,var(--color-contrast-300));flex-direction:column;align-items:stretch;min-width:12rem;display:inline-flex}:host([fullwidth]){width:100%}.combobox-wrapper{gap:var(--size-1-5);flex-direction:column;width:100%;display:flex}.label-inset{font-size:var(--text-xs);font-weight:var(--font-medium);line-height:var(--leading-tight);color:var(--color-contrast-500);cursor:pointer;-webkit-user-select:none;user-select:none;transition:color var(--transition-fast);margin-bottom:2px}.label-outside{font-size:var(--text-sm);font-weight:var(--font-medium);line-height:var(--leading-none);color:var(--color-contrast-500);cursor:pointer;-webkit-user-select:none;user-select:none;transition:color var(--transition-fast)}.field{box-sizing:border-box;height:var(--_field-height);min-height:max(var(--_field-height), var(--_touch-target,0px));padding:var(--_padding);cursor:text;background:var(--_bg);border:var(--border) solid var(--_border-color);border-radius:var(--_radius);box-shadow:var(--shadow-2xs);transition:var(--_motion-transition,background var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast));flex-direction:column;justify-content:center;align-items:stretch;gap:0;display:flex;position:relative}.field:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){text-align:left;padding-right:var(--size-8)}.field:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){text-align:right;padding-left:var(--size-8)}:host([multiple]) .field{height:auto}.field:has(.label-inset:not([hidden])){height:auto}:host([clearable]) .field:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){padding-right:var(--size-14)}:host([clearable]) .field:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){padding-left:var(--size-14)}.field-row{gap:var(--_gap);row-gap:var(--size-1);min-height:var(--_row-min-height);flex-wrap:wrap;align-items:center;display:flex}.chips-row{gap:var(--size-1);flex-wrap:wrap;flex:1;align-items:center;min-width:0;display:flex}.chips-list{display:contents}.input{min-width:4rem;height:var(--_row-min-height);font-family:inherit;font-size:var(--_font-size);color:var(--color-contrast-900);background:0 0;border:0;outline:none;flex:4rem;padding:0;line-height:1}:host([multiple]) .input{flex-basis:6rem;min-width:6rem}:host([multiple]) .chips-row:has(bit-chip) .input{flex:0 2.25rem;min-width:2.25rem}.input::placeholder{color:var(--_placeholder)}.chevron{color:var(--color-contrast-500);pointer-events:none;transition:var(--_motion-transition,transform var(--transition-fast), color var(--transition-fast));flex-shrink:0;align-items:center;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%)}.chevron:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:var(--size-2-5)}.chevron:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:var(--size-2-5)}:host([open]) .chevron{color:var(--_theme-focus,var(--color-primary));transform:translateY(-50%)rotate(180deg)}.chevron .loader{width:1em;height:1em;animation:var(--_motion-animation,bit-combobox-spin .6s linear infinite);border:2px solid;border-radius:50%;flex-shrink:0;display:none}.chevron .loader:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){border-right-color:#0000}.chevron .loader:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){border-left-color:#0000}:host([loading]) .chevron .loader{display:inline-block}:host([loading]) .chevron svg{display:none}@keyframes bit-combobox-spin{to{transform:rotate(360deg)}}.clear-btn{visibility:hidden;color:var(--color-contrast-400);cursor:pointer;background:0 0;border:0;flex-shrink:0;align-items:center;padding:0;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%)}.clear-btn:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:var(--size-9)}.clear-btn:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:var(--size-9)}.clear-btn:hover{color:var(--color-contrast-600)}:host([clearable]) .clear-btn:not([hidden]){visibility:visible}.dropdown{z-index:calc(var(--z-popover,1000) + 1);box-sizing:border-box;visibility:hidden;max-height:min(16rem,50dvh);padding:var(--size-1);overscroll-behavior:contain;pointer-events:none;scrollbar-width:thin;background:var(--color-canvas);border:var(--border) solid var(--color-contrast-200);border-radius:var(--_radius);box-shadow:var(--shadow-lg);opacity:0;transition:var(--_motion-transition,opacity var(--transition-fast), transform var(--transition-fast), visibility var(--transition-fast));margin:0;position:fixed;top:0;overflow-y:auto;transform:translateY(-4px)}.dropdown:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){text-align:left;left:0}.dropdown:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){text-align:right;right:0}.dropdown[data-open]{visibility:visible;pointer-events:auto;opacity:1;transform:translateY(0)}.option{gap:var(--size-2);padding:var(--size-1-5) var(--size-2-5);font-size:var(--_font-size);line-height:var(--leading-normal);cursor:pointer;border-radius:var(--rounded-sm);transition:background var(--transition-fast), color var(--transition-fast);align-items:center;display:flex}.option>span:not(:is(.option-check,.option-icon)){text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.option:hover:not([data-disabled]){background:var(--color-contrast-100)}.option[data-focused]:not([data-disabled]){color:var(--_theme-base);background:color-mix(in srgb, var(--_theme-base) 12%, var(--color-contrast-100))}.option[data-selected]{font-weight:var(--font-medium);color:var(--_theme-base);background:color-mix(in srgb, var(--_theme-base) 10%, var(--color-contrast-50))}.option[data-selected][data-focused]{background:color-mix(in srgb, var(--_theme-base) 20%, var(--color-contrast-100))}.option[data-disabled]{color:var(--color-contrast-400);cursor:not-allowed;opacity:.6}.option-check{color:var(--_theme-base);opacity:0;transition:opacity var(--transition-fast);flex-shrink:0;display:inline-flex}.option-check:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){margin-left:auto}.option-check:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){margin-right:auto}.option[data-selected] .option-check{opacity:1}.no-results,.no-results-create,.dropdown-loading{padding:var(--size-3) var(--size-2-5);font-size:var(--_font-size);color:var(--color-contrast-400);text-align:center}.no-results-create{gap:var(--size-1-5);width:100%;padding:var(--size-1-5) var(--size-2-5);font-size:var(--_font-size);color:var(--_theme-content,var(--color-primary-content));cursor:pointer;border-radius:var(--rounded-sm);background:0 0;border:0;align-items:center;display:flex}.no-results-create:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){text-align:left}.no-results-create:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){text-align:right}.no-results-create:hover,.no-results-create[data-focused]{background:color-mix(in srgb, var(--_theme-base,var(--color-primary)) 10%, transparent)}.option-icon{flex-shrink:0;align-items:center;display:inline-flex}::slotted(bit-combobox-option){display:none}.helper-text{font-size:var(--text-xs);line-height:var(--leading-tight);color:var(--color-contrast-500);padding-left:2px;padding-right:2px}:host(:not([disabled],[variant=bordered],[variant=flat])) .field:hover{border-color:var(--color-contrast-400)}:host(:not([disabled],[variant=flat])) .field:focus-within,:host([open]:not([disabled],[variant=flat])) .field{background:var(--color-canvas);border-color:var(--_theme-focus);box-shadow:var(--_theme-shadow,var(--color-primary-focus-shadow));transform:translateY(-1px)}:host(:not([disabled])) .field:focus-within .label-inset,:host(:not([disabled])) .field:focus-within .label-outside,:host([open]:not([disabled])) .label-inset{color:var(--_theme-focus)}:host([error]:not([error=""])) .field{border-color:var(--color-error)}:host([error]:not([error=""])) .field:focus-within{border-color:var(--color-error);box-shadow:var(--color-error-focus-shadow)}:host([error]:not([error=""])) .label-inset,:host([error]:not([error=""])) .label-outside{color:var(--color-error)}}@layer buildit.variants{:host(:not([variant])) .field,:host([variant=solid]) .field{background:var(--color-contrast-50);border-color:var(--color-contrast-300);box-shadow:var(--shadow-2xs)}:host(:not([variant],[disabled])) .field:focus-within,:host([variant=solid]:not([disabled])) .field:focus-within{box-shadow:var(--_theme-shadow)}:host([variant=flat]) .field{border-color:var(--_theme-border);box-shadow:var(--inset-shadow-2xs)}:host([variant=flat]) .field:hover{background:color-mix(in srgb, var(--_theme-base) 6%, var(--color-contrast-100));border-color:color-mix(in srgb, var(--_theme-base) 35%, var(--color-contrast-300))}:host([variant=flat]) .field:focus-within{background:color-mix(in srgb, var(--_theme-base) 8%, var(--color-canvas));border-color:color-mix(in srgb, var(--_theme-focus) 60%, transparent);box-shadow:var(--_theme-shadow)}:host([variant=bordered]) .field{background:var(--_theme-backdrop);border-color:color-mix(in srgb, var(--_theme-focus) 70%, transparent)}:host([variant=bordered]) .input{color:var(--color-contrast-900)}:host([variant=bordered]) .input::placeholder{color:var(--_placeholder)}:host([variant=bordered]) .field:hover{border-color:var(--_theme-focus)}:host([variant=outline]) .field{box-shadow:none;background:0 0}:host([variant=outline]:not([disabled])) .field:focus-within{box-shadow:var(--_theme-shadow)}:host([variant=ghost]) .field{box-shadow:none;background:0 0;border-color:#0000}:host([variant=ghost]) .field:hover{background:var(--color-contrast-100)}:host([variant=ghost]:not([disabled])) .field:focus-within{box-shadow:var(--_theme-shadow)}}@layer buildit.utilities{:host([fullwidth]){width:100%;display:flex}}`,er=o({setup(){return f`<style>
|
|
1132
|
+
${a`
|
|
1133
|
+
@layer buildit.base {
|
|
1134
|
+
:host {
|
|
1135
|
+
display: none;
|
|
1136
|
+
}
|
|
1137
|
+
}
|
|
1138
|
+
`}
|
|
1139
|
+
</style>`},tag:`bit-combobox-option`}),tr=o({formAssociated:!0,props:{clearable:{default:!1},color:{default:void 0},creatable:{default:!1},disabled:{default:!1},error:{default:``,omit:!0},fullwidth:{default:!1},helper:{default:``},label:{default:``},"label-placement":{default:`inset`},loading:{default:!1},multiple:{default:!1},name:{default:``},"no-filter":{default:!1},options:x(void 0,{reflect:!1}),placeholder:{default:``},rounded:{default:void 0},size:{default:void 0},value:{default:``},variant:{default:void 0}},setup({emit:n,host:i,props:a}){let{fieldId:o,helperId:l,labelId:u}=r(`combobox`,a.name.value),d=v(),m=v(),_=p($,void 0),b=y(String(a.value.value??``)),{triggerValidation:x}=Nn(_,s({disabled:t(()=>!!a.disabled.value||!!_?.disabled.value),value:b},{onReset:()=>{b.value=``,k.value=[],w.value=``}})),C=y(!1),w=y(``),T=t(()=>!!a.disabled.value),E=t(()=>!!a.multiple.value),D=t(()=>!!a.creatable.value),O=t(()=>!!a[`no-filter`].value);S(C,e=>{i.toggleAttribute(`open`,(e=>!!e)(e))},{immediate:!0});let k=y(a.value.value?[{label:``,value:a.value.value}]:[]),A=y(-1),j=on({findByKey:e=>{let t=k.value.find(t=>t.value===e);if(t)return t;let n=W.value.find(t=>t.value===e);return n?{label:n.label,value:n.value}:{label:``,value:e}},getMode:()=>E.value?`multiple`:`single`,getSelected:()=>k.value,keyExtractor:e=>e.value,setSelected:e=>{k.value=e}}),M=e=>{let t=Sn(String(e??``));if(t.isEmpty){j.clear(),w.value=``,b.value=``;return}if(E.value){k.value=t.values.map(e=>({label:``,value:e})),b.value=t.formValue;return}k.value=[{label:``,value:t.firstValue}],b.value=t.firstValue};S(a.value,e=>M(e),{immediate:!0}),S(a.multiple,()=>M(a.value.value));let N=t(()=>k.value[0]?.value??``),P=t(()=>k.value.length>0),F=t(()=>!!a.label.value),I=null,L=null,R=null,z=null;function B(){let e=i.shadowRoot?.querySelector(`input[role="combobox"]`)??null;return e&&(I=e),e??I}function V(){B()?.focus()}let ee=y([]),H=y([]),U=t(()=>!!a.loading.value),W=t(()=>{let e=a.options.value??ee.value;return H.value.length===0?e:[...e,...H.value]});function G(e=Array.from(i.children)){ee.value=Wn(e),k.value.length>0&&(k.value=Gn(k.value,W.value),!E.value&&k.value.length===1&&(w.value=k.value[0]?.label??``))}let K=t(()=>Kn(W.value,w.value,O.value)),q=t(()=>qn(w.value,D.value,K.value)),J=t(()=>vn(a.error.value,a.helper.value)),te=t(()=>E.value&&k.value.length>0?``:a.placeholder.value||``),ne=t(()=>k.value.map(e=>e.value)),re=t(()=>k.value.map(e=>e.label?e.label:W.value.find(t=>t.value===e.value)?.label??e.value));function ie(){b.value=j.serialize(`,`)}function ae(e){n(`change`,yn(ne.value,re.value,e))}function oe(e){e.stopPropagation();let t=e.detail?.value;t!==void 0&&(j.remove(t),ie(),ae(e),x(`change`))}let se=hn(()=>L,()=>R),Y=rn({getIndex:()=>A.value,getItems:()=>K.value,isItemDisabled:e=>e.disabled,setIndex:e=>{A.value=e,me()}}),ce=an({getBoundaryElement:()=>i,getPanelElement:()=>R,getTriggerElement:()=>I,isDisabled:()=>T.value,isOpen:()=>C.value,positioner:{floating:()=>R,reference:()=>L,update:()=>se.updatePosition()},restoreFocus:!1,setOpen:(e,t)=>{C.value=e,e||Y.reset()}}),le=e=>{(e.reason===`empty`||e.reason===`no-enabled-item`)&&(A.value=-1)};function X(e=!0,t=`programmatic`){e&&(w.value=``),ce.open({reason:t})}function Z(e=`programmatic`){ce.close({reason:e,restoreFocus:!1}),E.value?w.value=``:w.value=W.value.find(e=>e.value===N.value)?.label??``,x(`blur`)}function ue(e,t){e.disabled||(E.value?(j.toggle(e.value),ie(),w.value=``,ae(t),x(`change`),V(),requestAnimationFrame(()=>V())):(j.select(e.value),w.value=e.label,b.value=e.value,ae(t),x(`change`),Z(),V()))}function de(e){e.stopPropagation(),j.clear(),w.value=``,b.value=``,ae(e),x(`change`),V()}function fe(e){let t=e.target;w.value=t.value,E.value||j.clear(),le(Y.first()),C.value||X(!1,`trigger`),n(`search`,{query:t.value})}function Q(){C.value||X(!1,`trigger`)}function pe(e){if(T.value)return;let t=K.value;switch(e.key){case`ArrowDown`:e.preventDefault(),C.value?le(Y.next()):(X(!0,`trigger`),le(Y.first()));break;case`ArrowUp`:e.preventDefault(),C.value?le(Y.prev()):X(!0,`trigger`);break;case`Backspace`:E.value&&!w.value&&k.value.length>0&&(k.value=k.value.slice(0,-1),ie(),ae(e),x(`change`));break;case`End`:C.value&&(e.preventDefault(),le(Y.last()));break;case`Enter`:e.preventDefault(),C.value&&A.value>=0&&A.value<t.length?ue(t[A.value],e):C.value&&A.value===-1&&q.value?ve(q.value,e):C.value||X();break;case`Escape`:e.preventDefault(),C.value&&Z(`escape`);break;case`Home`:C.value&&(e.preventDefault(),le(Y.first()));break;case`Tab`:Z(`programmatic`);break;default:break}}function me(){if(A.value>=0){he.scrollToIndex(A.value,{align:`auto`});return}z&&z.querySelector(`[data-focused]`)?.scrollIntoView({block:`nearest`})}let{domVirtualList:he,setupVirtualizer:ge,updateRenderedItemState:_e}=Qn({checkIconHTML:Nt,comboId:o,getDropdownElement:()=>R,getFocusedIndex:()=>A.peek(),getIsMultiple:()=>E.peek(),getListboxElement:()=>z,getSelectedValue:()=>N.peek(),getSelectedValues:()=>k.peek(),onSelectOption:ue,setFocusedIndex:e=>{A.value=e}});function ve(e,t){let n={disabled:!1,iconEl:null,label:e,value:Jn(e)};H.value=[...H.value,n],ue(n,t)}return h(()=>{L=I?.closest(`.field`),R=i.shadowRoot?.querySelector(`.dropdown`)??null,z=i.shadowRoot?.querySelector(`[role="listbox"]`)??null;let e=ce.bindOutsideClick(document);return g(`default`,G),G(),c(()=>{let e=K.value,t=C.value;t&&e.length>0?requestAnimationFrame(()=>ge(e,t)):he.update(e,!1)}),On(m,d,a),c(()=>{if(z){for(let e of Array.from(z.querySelectorAll(`.no-results,.no-results-create,.dropdown-loading`)))e.remove();if(U.value){let e=document.createElement(`div`);e.className=`dropdown-loading`,e.textContent=`Loading…`,z.prepend(e)}else if(K.value.length===0)if(q.value){let e=document.createElement(`button`);e.type=`button`,e.className=`no-results-create`,e.textContent=`Create "${q.value}"`,A.value===-1&&e.setAttribute(`data-focused`,``),e.addEventListener(`pointerdown`,e=>{e.preventDefault()}),e.addEventListener(`click`,e=>{e.stopPropagation(),ve(q.value,e)}),z.appendChild(e)}else{let e=document.createElement(`div`);e.className=`no-results`,e.setAttribute(`role`,`presentation`),e.textContent=`No results found`,z.appendChild(e)}_e()}}),S([C,a.multiple,A,k,N],()=>{C.value&&_e()},{immediate:!0}),()=>{he.destroy(),se.destroy(),e()}}),f`
|
|
1140
|
+
<slot></slot>
|
|
1141
|
+
<div class="combobox-wrapper" part="wrapper">
|
|
1142
|
+
<label
|
|
1143
|
+
class="label-outside"
|
|
1144
|
+
for="${o}"
|
|
1145
|
+
id="${u}"
|
|
1146
|
+
ref=${d}
|
|
1147
|
+
hidden
|
|
1148
|
+
part="label"></label>
|
|
1149
|
+
<div
|
|
1150
|
+
class="field"
|
|
1151
|
+
part="field"
|
|
1152
|
+
@click="${()=>{C.value||X(!1,`trigger`),V()}}">
|
|
1153
|
+
<label class="label-inset" for="${o}" id="${u}" ref=${m} hidden part="label"></label>
|
|
1154
|
+
<div class="field-row">
|
|
1155
|
+
<div class="chips-row">
|
|
1156
|
+
<!-- Keep chip list diffing isolated so input node identity stays stable. -->
|
|
1157
|
+
<span class="chips-list">
|
|
1158
|
+
${()=>(E.value?k.value:[]).map(e=>f`
|
|
1159
|
+
<bit-chip
|
|
1160
|
+
value=${e.value}
|
|
1161
|
+
aria-label=${e.label||e.value}
|
|
1162
|
+
mode="removable"
|
|
1163
|
+
variant="flat"
|
|
1164
|
+
size="sm"
|
|
1165
|
+
color=${()=>a.color.value}
|
|
1166
|
+
@remove=${oe}>
|
|
1167
|
+
${e.label||e.value}
|
|
1168
|
+
</bit-chip>
|
|
1169
|
+
`)}
|
|
1170
|
+
</span>
|
|
1171
|
+
<input
|
|
1172
|
+
ref=${t=>{if(I=t,!t){L=null;return}L=t.closest(`.field`),e(t,{activedescendant:()=>A.value>=0?`${o}-opt-${A.value}`:null,autocomplete:`list`,controls:()=>`${o}-listbox`,describedby:()=>a.error.value||a.helper.value?l:null,disabled:()=>T.value,expanded:()=>C.value?`true`:`false`,invalid:()=>!!a.error.value,labelledby:()=>F.value?u:null})}}
|
|
1173
|
+
class="input"
|
|
1174
|
+
part="input"
|
|
1175
|
+
type="text"
|
|
1176
|
+
role="combobox"
|
|
1177
|
+
autocomplete="off"
|
|
1178
|
+
spellcheck="false"
|
|
1179
|
+
id="${o}"
|
|
1180
|
+
name="${()=>a.name.value}"
|
|
1181
|
+
placeholder=${()=>te.value}
|
|
1182
|
+
:disabled="${()=>T.value}"
|
|
1183
|
+
@input=${fe}
|
|
1184
|
+
@keydown=${pe}
|
|
1185
|
+
@focus=${Q}
|
|
1186
|
+
.value=${w} />
|
|
1187
|
+
</div>
|
|
1188
|
+
<button
|
|
1189
|
+
class="clear-btn"
|
|
1190
|
+
part="clear-btn"
|
|
1191
|
+
type="button"
|
|
1192
|
+
aria-label="Clear"
|
|
1193
|
+
tabindex="-1"
|
|
1194
|
+
?hidden=${()=>!P.value}
|
|
1195
|
+
@click="${de}">
|
|
1196
|
+
${zt}
|
|
1197
|
+
</button>
|
|
1198
|
+
<span class="chevron" aria-hidden="true">
|
|
1199
|
+
${Pt}
|
|
1200
|
+
<span class="loader" aria-label="Loading"></span>
|
|
1201
|
+
</span>
|
|
1202
|
+
</div>
|
|
1203
|
+
</div>
|
|
1204
|
+
|
|
1205
|
+
<div class="dropdown" part="dropdown" id="${()=>`${o}-dropdown`}" ?data-open=${()=>C.value}>
|
|
1206
|
+
<div
|
|
1207
|
+
role="listbox"
|
|
1208
|
+
id="${()=>`${o}-listbox`}"
|
|
1209
|
+
aria-label="${()=>a.label.value||a.placeholder.value||`Options`}"></div>
|
|
1210
|
+
</div>
|
|
1211
|
+
|
|
1212
|
+
<span
|
|
1213
|
+
class="helper-text"
|
|
1214
|
+
id="${l}"
|
|
1215
|
+
part="helper-text"
|
|
1216
|
+
aria-live="polite"
|
|
1217
|
+
?hidden=${()=>J.value.hidden}
|
|
1218
|
+
style=${()=>J.value.isError?`color: var(--color-error);`:``}
|
|
1219
|
+
>${()=>J.value.text}</span
|
|
1220
|
+
>
|
|
1221
|
+
</div>
|
|
1222
|
+
`},shadow:{delegatesFocus:!0},styles:[F(In),...K,L(),V(`.input`),$n],tag:`bit-combobox`}),nr=`@layer buildit.base{:host{--_font-size:var(--file-input-font-size,var(--text-sm));--_radius:var(--file-input-radius,var(--rounded-lg));--_bg:var(--file-input-bg,var(--color-contrast-100));--_border-color:var(--file-input-border-color,var(--color-contrast-300));--_min-height:var(--file-input-min-height,var(--size-36));flex-direction:column;align-items:stretch;display:inline-flex}.file-input-wrapper{gap:var(--size-1-5);flex-direction:column;width:100%;display:flex}.label-outside{font-size:var(--text-sm);font-weight:var(--font-medium);line-height:var(--leading-none);color:var(--color-contrast-500);cursor:default;-webkit-user-select:none;user-select:none;transition:color var(--transition-fast)}.dropzone{box-sizing:border-box;gap:var(--size-2);min-height:var(--_min-height);padding:var(--size-6) var(--size-4);text-align:center;cursor:pointer;background:var(--_bg);border:var(--border-2) dashed var(--_border-color);border-radius:var(--_radius);transition:background var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative}.dropzone-content{gap:var(--size-2);pointer-events:none;flex-direction:column;align-items:center;display:flex}.dropzone-icon{color:var(--color-contrast-400);transition:color var(--transition-fast), transform var(--transition-fast);justify-content:center;align-items:center;display:flex}.dropzone-title{font-size:var(--_font-size);font-weight:var(--font-medium);line-height:var(--leading-snug);color:var(--color-contrast-700)}.dropzone-title u{color:var(--_theme-focus,var(--color-primary));text-underline-offset:2px;transition:text-decoration-color var(--transition-fast);-webkit-text-decoration:underline #0000;text-decoration:underline #0000}.dropzone-hint{font-size:var(--text-xs);line-height:var(--leading-tight);color:var(--color-contrast-400)}.helper-text{font-size:var(--text-xs);line-height:var(--leading-tight);color:var(--color-contrast-500);padding-left:2px;padding-right:2px}.file-list{gap:var(--size-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.file-item{box-sizing:border-box;gap:var(--size-3);padding:var(--size-2) var(--size-3);background:var(--color-contrast-50);border:var(--border) solid var(--color-contrast-200);border-radius:var(--_radius);transition:background var(--transition-fast);align-items:center;display:flex}.file-item:hover{background:var(--color-contrast-100)}.file-icon{color:var(--_theme-focus,var(--color-primary));flex-shrink:0}.file-meta{gap:var(--size-0-5);flex-direction:column;flex:1;min-width:0;display:flex}.file-name{text-overflow:ellipsis;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-contrast-700);white-space:nowrap;overflow:hidden}.file-size{font-size:var(--text-xs);color:var(--color-contrast-400)}.file-remove{padding:var(--size-1);color:var(--color-contrast-400);cursor:pointer;border-radius:var(--rounded-sm);transition:color var(--transition-fast), background var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.file-remove:hover{color:var(--color-error);background:var(--color-error-backdrop,color-mix(in srgb, var(--color-error) 12%, transparent))}:host(:not([disabled])) .dropzone:hover{border-color:var(--color-contrast-400)}:host(:not([disabled])) .dropzone:hover .dropzone-title u{-webkit-text-decoration-color:var(--_theme-focus,var(--color-primary));-webkit-text-decoration-color:var(--_theme-focus,var(--color-primary));text-decoration-color:var(--_theme-focus,var(--color-primary))}:host(:not([disabled])) .dropzone:focus-visible{border-color:var(--_theme-focus,var(--color-primary));box-shadow:var(--_theme-shadow,var(--color-primary-focus-shadow))}:host(:not([disabled])) .dropzone:hover .dropzone-icon,:host(:not([disabled])) .dropzone:focus-visible .dropzone-icon{color:var(--_theme-focus,var(--color-primary));transform:translateY(-2px)}:host([drag-over]) .dropzone{background:color-mix(in srgb, var(--_theme-base,var(--color-primary)) 8%, var(--color-canvas));border-color:var(--_theme-focus,var(--color-primary));box-shadow:var(--_theme-shadow,var(--color-primary-focus-shadow))}:host([drag-over]) .dropzone .dropzone-icon{color:var(--_theme-focus,var(--color-primary));transform:translateY(-4px)scale(1.1)}:host([invalid]) .dropzone{border-color:var(--color-error)}:host([invalid]) .label-outside,.helper-text-error{color:var(--color-error)}}@layer buildit.variants{:host(:not([variant])) .dropzone,:host([variant=solid]) .dropzone{background:var(--color-contrast-50);border-color:var(--color-contrast-300)}:host([variant=flat]) .dropzone{border-color:var(--_theme-border)}:host([variant=flat]) .dropzone:hover{background:color-mix(in srgb, var(--_theme-base) 6%, var(--color-contrast-100));border-color:color-mix(in srgb, var(--_theme-base) 35%, var(--color-contrast-300))}:host([variant=flat]) .dropzone:focus-visible,:host([variant=flat][drag-over]) .dropzone{background:color-mix(in srgb, var(--_theme-base) 8%, var(--color-canvas));border-color:color-mix(in srgb, var(--_theme-focus) 60%, transparent);box-shadow:var(--_theme-shadow)}:host([variant=bordered]) .dropzone{background:var(--_theme-backdrop);border-color:color-mix(in srgb, var(--_theme-focus) 70%, transparent)}:host([variant=bordered]) .dropzone:hover{border-color:var(--_theme-focus)}:host([variant=outline]) .dropzone{background:0 0}:host([variant=ghost]) .dropzone{border-color:var(--color-contrast-200);background:0 0}:host([variant=ghost]) .dropzone:hover{background:var(--color-contrast-100)}}@layer buildit.utilities{:host([fullwidth]){width:100%}}`;function rr(e){if(e===0)return`0 B`;let t=[`B`,`KB`,`MB`,`GB`],n=1024,r=Math.min(Math.floor(Math.log(e)/Math.log(n)),t.length-1);return`${Number.parseFloat((e/n**r).toFixed(1))} ${t[r]}`}function ir(e,t){return t?t.split(`,`).map(e=>e.trim()).some(t=>t.startsWith(`.`)?e.name.toLowerCase().endsWith(t.toLowerCase()):t.endsWith(`/*`)?e.type.startsWith(t.slice(0,-1)):e.type===t):!0}function ar(e,t){return!t||ir(e,t)}function or(e,t){return t==null?!0:t===0||e.size<=t}var sr=o({formAssociated:!0,props:{accept:{default:``},color:{default:void 0},disabled:{default:!1},error:{default:``,omit:!0},fullwidth:{default:!1},helper:{default:``},label:{default:``},"max-files":{default:0,type:Number},"max-size":{default:0,type:Number},multiple:{default:!1},name:{default:``},required:{default:!1},rounded:{default:void 0},size:{default:void 0},variant:{default:void 0}},setup({emit:e,host:n,props:r}){let a=y([]),o=y(!1);s({disabled:t(()=>!!r.disabled.value),toFormValue:e=>{if(e.length===0)return null;let t=r.name.value||`file`,n=new FormData;for(let r of e)n.append(t,r);return n},value:a},{onReset:()=>{a.value=[]}});let l=t(()=>!!r.error.value);c(()=>{l.value?n.setAttribute(`invalid`,``):n.removeAttribute(`invalid`)}),c(()=>{o.value?n.setAttribute(`drag-over`,``):n.removeAttribute(`drag-over`)});let u=i(`file-input`),p=`label-${u}`,g=`helper-${u}`,_=`error-${u}`,b=v(),x=v(),S=t(()=>{let e=[];r.accept.value&&e.push(r.accept.value.split(`,`).map(e=>e.trim()).join(`, `));let t=r[`max-size`].value??0;t>0&&e.push(`max ${rr(t)}`);let n=r[`max-files`].value??0;return n>0&&e.push(`up to ${n} file${n===1?``:`s`}`),e.join(` · `)});function C(t,n){if(r.disabled.value)return;let i=r[`max-files`].value??0,o=r[`max-size`].value??0,s=r.accept.value,c=!!r.multiple.value,l=Array.from(t);c||(l=l.slice(0,1)),l=l.filter(e=>ar(e,s)&&or(e,o));let u=c?[...a.value]:[];for(let e of l)u.includes(e)||u.push(e);i>0&&u.length>i&&(u=u.slice(0,i)),a.value=u,e(`change`,{files:a.value,originalEvent:n,value:a.value})}function w(t,n){a.value=a.value.filter(e=>e!==t),e(`remove`,{file:t,files:a.value,originalEvent:n,value:a.value}),e(`change`,{files:a.value,originalEvent:n,value:a.value})}return h(()=>{let e=x.value,t=b.value;d(e,`change`,e=>{let t=e.target;t.files?.length&&C(Array.from(t.files),e),t.value=``}),d(t,`click`,()=>{r.disabled.value||e.click()}),d(t,`keydown`,t=>{(t.key===`Enter`||t.key===` `)&&!r.disabled.value&&(t.preventDefault(),e.click())});let n=A({disabled:()=>!!r.disabled.value,element:t,onDrop:(e,t)=>C(e,t),onHoverChange:e=>{o.value=e}});m(()=>n.destroy())}),f`
|
|
1223
|
+
<div class="file-input-wrapper" part="wrapper">
|
|
1224
|
+
<label class="label-outside" id="${p}" part="label" ?hidden=${()=>!r.label.value}
|
|
1225
|
+
>${()=>r.label.value}</label
|
|
1226
|
+
>
|
|
1227
|
+
<div
|
|
1228
|
+
class="dropzone"
|
|
1229
|
+
part="dropzone"
|
|
1230
|
+
ref=${b}
|
|
1231
|
+
role="button"
|
|
1232
|
+
:tabindex=${()=>r.disabled.value?`-1`:`0`}
|
|
1233
|
+
:aria-disabled=${()=>String(r.disabled.value)}
|
|
1234
|
+
:aria-label=${()=>r.label.value?null:`File upload drop zone`}
|
|
1235
|
+
:aria-labelledby=${()=>r.label.value?p:null}
|
|
1236
|
+
aria-describedby="${g}">
|
|
1237
|
+
<input
|
|
1238
|
+
type="file"
|
|
1239
|
+
ref=${x}
|
|
1240
|
+
part="input"
|
|
1241
|
+
id="${u}"
|
|
1242
|
+
:accept=${()=>r.accept.value}
|
|
1243
|
+
?multiple=${()=>r.multiple.value}
|
|
1244
|
+
?required=${()=>r.required.value}
|
|
1245
|
+
?disabled=${()=>r.disabled.value}
|
|
1246
|
+
:name=${()=>r.name.value}
|
|
1247
|
+
hidden
|
|
1248
|
+
inert
|
|
1249
|
+
tabindex="-1" />
|
|
1250
|
+
<div class="dropzone-content">
|
|
1251
|
+
<span class="dropzone-icon" aria-hidden="true"> ${Bt} </span>
|
|
1252
|
+
<span class="dropzone-title">Drop files here or <u>click to browse</u></span>
|
|
1253
|
+
<span class="dropzone-hint" ?hidden=${()=>!S.value}>${S}</span>
|
|
1254
|
+
</div>
|
|
1255
|
+
</div>
|
|
1256
|
+
<ul class="file-list" role="list" aria-label="Selected files" ?hidden=${()=>a.value.length===0}>
|
|
1257
|
+
${rt(a,e=>f`
|
|
1258
|
+
<li class="file-item">
|
|
1259
|
+
<span class="file-icon" aria-hidden="true"> ${Vt} </span>
|
|
1260
|
+
<span class="file-meta">
|
|
1261
|
+
<span class="file-name" title="${e.name}">${e.name}</span>
|
|
1262
|
+
<span class="file-size">${rr(e.size)}</span>
|
|
1263
|
+
</span>
|
|
1264
|
+
<button
|
|
1265
|
+
class="file-remove"
|
|
1266
|
+
type="button"
|
|
1267
|
+
aria-label="${`Remove ${e.name}`}"
|
|
1268
|
+
@click=${t=>w(e,t)}>
|
|
1269
|
+
${zt}
|
|
1270
|
+
</button>
|
|
1271
|
+
</li>
|
|
1272
|
+
`,void 0,{key:e=>`${e.name}:${e.size}:${e.lastModified}`})}
|
|
1273
|
+
</ul>
|
|
1274
|
+
<div class="helper-text" id="${g}" part="helper" ?hidden=${()=>l.value||!r.helper.value}>
|
|
1275
|
+
${()=>r.helper.value}
|
|
1276
|
+
</div>
|
|
1277
|
+
<div
|
|
1278
|
+
class="helper-text helper-text-error"
|
|
1279
|
+
id="${_}"
|
|
1280
|
+
role="alert"
|
|
1281
|
+
part="error"
|
|
1282
|
+
?hidden=${()=>!l.value}>
|
|
1283
|
+
${()=>r.error.value}
|
|
1284
|
+
</div>
|
|
1285
|
+
</div>
|
|
1286
|
+
`},shadow:{delegatesFocus:!0},styles:[...K,F(Vn),L(),V(`.dropzone`),nr],tag:`bit-file-input`}),cr=o({props:{disabled:x(!1),novalidate:x(!1),orientation:x(`vertical`),size:x(void 0),validateOn:x(void 0),variant:x(void 0)},setup({emit:e,host:n,props:r}){_($,{disabled:t(()=>!!r.disabled.value),size:r.size,validateOn:t(()=>r.validateOn.value??`submit`),variant:r.variant});function i(t){let r=t,i=n.shadowRoot?.querySelector(`form`);i&&(t.preventDefault(),e(`submit`,{formData:new FormData(i),originalEvent:r}))}function a(t){e(`reset`,{originalEvent:t})}return f`
|
|
1287
|
+
<form
|
|
1288
|
+
part="form"
|
|
1289
|
+
:novalidate="${()=>r.novalidate.value||null}"
|
|
1290
|
+
:aria-disabled="${()=>r.disabled.value?`true`:null}"
|
|
1291
|
+
@submit="${i}"
|
|
1292
|
+
@reset="${a}">
|
|
1293
|
+
<slot></slot>
|
|
1294
|
+
</form>
|
|
1295
|
+
`},shadow:{delegatesFocus:!1},styles:[`@layer buildit.base{:host{display:block}form{gap:var(--form-gap,var(--size-4,1rem));align-items:start;display:grid}}@layer buildit.orientation{:host([orientation=horizontal]) form{flex-wrap:wrap;align-items:center;display:flex}}`],tag:`bit-form`}),lr=`@layer buildit.base{:host{--_font-size:var(--input-font-size,var(--text-sm));--_gap:var(--input-gap,var(--size-2));--_field-height:var(--input-height,var(--size-10));--_padding:var(--input-padding,var(--size-1-5) var(--size-3));--_radius:var(--input-radius,var(--rounded-lg));--_placeholder:var(--input-placeholder-color,var(--color-contrast-500));--_bg:var(--input-bg,var(--color-contrast-100));--_border-color:var(--input-border-color,var(--color-contrast-300));flex-direction:column;align-items:stretch;display:inline-flex}.input-wrapper{gap:var(--size-1-5);flex-direction:column;width:100%;display:flex}.field{box-sizing:border-box;height:var(--_field-height);min-height:var(--_field-height);padding:var(--_padding);background:var(--_bg);border:var(--border) solid var(--_border-color);border-radius:var(--_radius);box-shadow:var(--_shadow,var(--shadow-2xs));transition:var(--_motion-transition,background var(--transition-fast), backdrop-filter var(--transition-slow), border-color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast));flex-direction:column;justify-content:center;align-items:stretch;gap:0;display:flex}.field:has(.label-inset:not([hidden])){height:auto}.input-row{gap:var(--_gap);flex:1;align-items:center;display:flex}.label-inset,.label-outside,label.label-inset,label.label-outside{text-overflow:ellipsis;font-weight:var(--font-medium);color:var(--color-contrast-500);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;transition:var(--_motion-transition,color var(--transition-fast));overflow:hidden}.label-inset,label.label-inset{font-size:var(--text-xs);line-height:var(--leading-tight);margin-bottom:2px}.label-outside,label.label-outside{font-size:var(--text-sm);line-height:var(--leading-none)}.helper-text{font-size:var(--text-xs);line-height:var(--leading-tight);color:var(--color-contrast-500);overflow-wrap:anywhere;padding-left:2px;padding-right:2px}::slotted(svg){width:var(--_icon-size,var(--leading-6));height:var(--_icon-size,var(--leading-6));flex-shrink:0}}@layer buildit.overrides{input{min-width:0;font:inherit;font-size:var(--_font-size);line-height:var(--leading-normal);color:var(--color-contrast-900);background:0 0;border:none;outline:none;flex:1}input::placeholder{color:var(--_placeholder);transition:color var(--transition-fast)}input:focus-visible{outline:none}:host(:not([disabled],[variant=bordered],[variant=flat])) .field:hover{border-color:var(--color-contrast-400)}:host(:not([disabled],[variant=text],[variant=flat])) .field:focus-within{background:var(--color-canvas);border-color:var(--_theme-focus);box-shadow:var(--_theme-shadow,var(--color-primary-focus-shadow));transform:translateY(-1px)}:host(:not([disabled])) .field:focus-within .label-inset,:host(:not([disabled])) .field:focus-within .label-outside,:host(:not([disabled])) .field:focus-within ::slotted([slot=prefix]),:host(:not([disabled])) .field:focus-within ::slotted([slot=suffix]){color:var(--_theme-focus)}.clear-btn{width:var(--size-5);min-width:var(--_touch-target);height:var(--size-5);min-height:var(--_touch-target);color:var(--color-contrast-500);cursor:pointer;border-radius:var(--rounded-sm);transition:var(--_motion-transition,color var(--transition-fast));background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:none}.clear-btn:hover{color:var(--color-contrast-900)}.clear-btn:focus-visible{outline:var(--border-2) solid var(--_theme-focus);outline-offset:var(--border)}:host([clearable]) .clear-btn{display:flex}:host([clearable]:not([has-value])) .clear-btn{visibility:hidden;pointer-events:none}.pwd-toggle-btn{width:var(--size-5);min-width:var(--_touch-target);height:var(--size-5);min-height:var(--_touch-target);color:var(--color-contrast-500);cursor:pointer;border-radius:var(--rounded-sm);transition:var(--_motion-transition,color var(--transition-fast));background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:none}.pwd-toggle-btn:hover{color:var(--color-contrast-900)}.pwd-toggle-btn:focus-visible{outline:var(--border-2) solid var(--_theme-focus);outline-offset:var(--border)}:host([type=password]) .pwd-toggle-btn{display:flex}.char-counter{font-size:var(--text-xs);line-height:var(--leading-tight);color:var(--color-contrast-400);white-space:nowrap;padding-left:2px;padding-right:2px}.char-counter:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){text-align:right}.char-counter:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){text-align:left}.char-counter[data-near-limit]{color:var(--color-warning,#f59e0b)}.char-counter[data-at-limit]{color:var(--color-error)}:host([error]:not([error=""])) .field{border-color:var(--color-error)}:host([error]:not([error=""])) .field:focus-within{border-color:var(--color-error);box-shadow:var(--color-error-focus-shadow)}:host([error]:not([error=""])) .label-inset,:host([error]:not([error=""])) .label-outside,.helper-text[role=alert]{color:var(--color-error)}}@layer buildit.variants{:host(:not([variant])) .field,:host([variant=solid]) .field{background:var(--color-contrast-50);border-color:var(--color-contrast-300);box-shadow:var(--shadow-2xs)}:host(:not([variant],[disabled])) .field:focus-within,:host([variant=solid]:not([disabled])) .field:focus-within{box-shadow:var(--_theme-shadow)}:host([variant=flat]) .field{border-color:var(--_theme-border);box-shadow:var(--inset-shadow-2xs)}:host([variant=flat]) .field:hover{background:color-mix(in srgb, var(--_theme-base) 6%, var(--color-contrast-100));border-color:color-mix(in srgb, var(--_theme-base) 35%, var(--color-contrast-300))}:host([variant=flat]) .field:focus-within{background:color-mix(in srgb, var(--_theme-base) 8%, var(--color-canvas));border-color:color-mix(in srgb, var(--_theme-focus) 60%, transparent);box-shadow:var(--_theme-shadow)}:host([variant=bordered]) .field{background:var(--_theme-backdrop);border-color:color-mix(in srgb, var(--_theme-focus) 70%, transparent)}:host([variant=bordered]) input{color:var(--color-contrast-900)}:host([variant=bordered]) input::placeholder{color:var(--_placeholder)}:host([variant=bordered]) .field:hover{border-color:var(--_theme-focus)}:host([variant=outline]) .field{box-shadow:none;background:0 0}:host([variant=outline]:not([disabled])) .field:focus-within{box-shadow:var(--_theme-shadow)}:host([variant=ghost]) .field{box-shadow:none;background:0 0;border-color:#0000}:host([variant=ghost]) .field:hover{background:var(--color-contrast-100)}:host([variant=ghost]:not([disabled])) .field:focus-within{box-shadow:var(--_theme-shadow)}:host([variant=text]) .field{border:none;border-bottom:var(--border) solid var(--_border-color);box-shadow:none;background:0 0;border-radius:0}:host([variant=text]) .field:focus-within{border-bottom:var(--border-2) solid var(--_theme-focus);transform:none}}@layer buildit.utilities{:host([fullwidth]){width:100%}}`,ur=[`text`,`email`,`password`,`search`,`url`,`tel`,`number`,`date`,`time`,`datetime-local`,`month`,`week`],dr=e=>ur.includes(e)?e:`text`,fr=o({formAssociated:!0,props:{autocomplete:{default:void 0},clearable:{default:!1},color:{default:void 0},disabled:{default:!1},error:{default:``,omit:!0},fullwidth:{default:!1},helper:{default:``},inputmode:{default:void 0},label:{default:``},"label-placement":{default:`inset`},maxlength:{default:void 0},minlength:{default:void 0},name:{default:``},pattern:{default:void 0},placeholder:{default:``},readonly:{default:!1},required:{default:!1},rounded:{default:void 0},size:{default:void 0},type:{default:`text`},value:{default:``},variant:{default:void 0}},setup({emit:e,host:t,props:n}){let r=y(!1),i=()=>n.type.value===`password`&&r.value?`text`:dr(n.type.value),a=Pn(n,`input`),{errorId:o,fieldId:s,helperId:l,labelInsetId:u,labelInsetRef:p,labelOutsideId:m,labelOutsideRef:g,valueSignal:_}=a,b=v(),x=v(),S=v(),C=v(),w=v(),T=(e,t,n)=>{n==null||n===``?e.removeAttribute(t):e.setAttribute(t,n)};return h(()=>{let r=b.value;r&&(En(r,{onBlur:()=>a.triggerValidation(`blur`),onChange:(t,n)=>{e(`change`,{originalEvent:t,value:n}),a.triggerValidation(`change`)},onInput:(t,n)=>e(`input`,{originalEvent:t,value:n})}),a.mountLabelSync(),c(()=>{let e=xn(n.maxlength.value);e==null?r.removeAttribute(`maxlength`):r.maxLength=e;let t=xn(n.minlength.value);t==null?r.removeAttribute(`minlength`):r.minLength=t,T(r,`pattern`,n.pattern.value??null),T(r,`inputmode`,n.inputmode.value??null);let i=n.autocomplete.value;i==null||i===``?r.removeAttribute(`autocomplete`):r.autocomplete=i}),wn({error:()=>n.error.value,errorRef:S,helper:()=>n.helper.value,helperRef:x}),Cn({count:()=>_.value.length,format:`split`,maxLength:()=>n.maxlength.value,ref:w}),c(()=>{_.value?t.setAttribute(`has-value`,``):t.removeAttribute(`has-value`)}),import(`@vielzeug/craftit`).then(({aria:e})=>{e(r,{describedby:()=>n.error.value?o:l,errormessage:()=>n.error.value?o:null,invalid:()=>!!n.error.value})}),C.value&&d(C.value,`click`,t=>{t.preventDefault(),_.value=``,e(`input`,{originalEvent:t,value:``}),e(`change`,{originalEvent:t,value:``}),a.triggerValidation(`change`),b.value?.focus()}))}),f`
|
|
1296
|
+
<div class="input-wrapper" part="wrapper">
|
|
1297
|
+
<label
|
|
1298
|
+
class="label-outside"
|
|
1299
|
+
for="${s}"
|
|
1300
|
+
id="${m}"
|
|
1301
|
+
part="label"
|
|
1302
|
+
ref=${g}
|
|
1303
|
+
hidden></label>
|
|
1304
|
+
<div class="field" part="field">
|
|
1305
|
+
<label
|
|
1306
|
+
class="label-inset"
|
|
1307
|
+
for="${s}"
|
|
1308
|
+
id="${u}"
|
|
1309
|
+
part="label"
|
|
1310
|
+
ref=${p}
|
|
1311
|
+
hidden></label>
|
|
1312
|
+
<div class="input-row" part="input-row">
|
|
1313
|
+
<slot name="prefix"></slot>
|
|
1314
|
+
<input
|
|
1315
|
+
part="input"
|
|
1316
|
+
id="${s}"
|
|
1317
|
+
${Ye({disabled:n.disabled,name:n.name,placeholder:n.placeholder,readOnly:n.readonly,required:n.required,type:i,value:_})}
|
|
1318
|
+
:aria-labelledby="${()=>n[`label-placement`].value===`outside`?m:u}"
|
|
1319
|
+
aria-describedby="${l}"
|
|
1320
|
+
ref=${b} />
|
|
1321
|
+
<slot name="suffix"></slot>
|
|
1322
|
+
<button
|
|
1323
|
+
class="pwd-toggle-btn"
|
|
1324
|
+
part="pwd-toggle"
|
|
1325
|
+
type="button"
|
|
1326
|
+
:aria-label="${()=>r.value?`Hide password`:`Show password`}"
|
|
1327
|
+
:aria-pressed="${()=>String(r.value)}"
|
|
1328
|
+
tabindex="-1"
|
|
1329
|
+
@click="${()=>{r.value=!r.value,b.value?.focus()}}">
|
|
1330
|
+
${()=>r.value?Rt:Lt}
|
|
1331
|
+
</button>
|
|
1332
|
+
<button class="clear-btn" part="clear" type="button" aria-label="Clear" tabindex="-1" ref=${C}>
|
|
1333
|
+
${zt}
|
|
1334
|
+
</button>
|
|
1335
|
+
</div>
|
|
1336
|
+
</div>
|
|
1337
|
+
<div class="helper-text" id="${l}" part="helper" ref=${x} hidden></div>
|
|
1338
|
+
<div class="helper-text" id="${o}" role="alert" part="error" ref=${S} hidden></div>
|
|
1339
|
+
<div class="char-counter" part="char-counter" ref=${w} hidden></div>
|
|
1340
|
+
</div>
|
|
1341
|
+
`},shadow:{delegatesFocus:!0},styles:[F(In),...K,L(),V(`input`),lr],tag:`bit-input`}),pr=`@layer buildit.base{:host{width:fit-content;display:inline-flex}:host([fullwidth]){width:100%}.wrapper{gap:var(--size-1);align-items:center;width:100%;display:inline-flex}bit-input::part(input){text-align:center}bit-input{width:var(--size-20)}:host([fullwidth]) bit-input{flex:1;width:auto;min-width:0}}`,mr=o({formAssociated:!0,props:{color:{default:void 0},disabled:{default:!1},fullwidth:{default:!1},label:{default:void 0},"label-placement":{default:`inset`},"large-step":{default:void 0},max:{default:void 0},min:{default:void 0},name:{default:void 0},nullable:{default:!1},placeholder:{default:void 0},readonly:{default:!1},size:{default:void 0},step:{default:1},value:{default:void 0},variant:{default:void 0}},setup({emit:e,host:n,props:r}){let i=y(r.value.value==null?``:String(r.value.value));s({disabled:t(()=>!!r.disabled.value),value:t(()=>i.value===``?null:i.value)},{onReset:()=>{i.value=r.value.value==null?``:String(r.value.value)}}),S(r.value,e=>{let t=e==null?``:String(e);i.value!==t&&(i.value=t)});function a(e){let t=r.min.value,n=r.max.value;return t!=null&&e<Number(t)?Number(t):n!=null&&e>Number(n)?Number(n):e}function o(){let e=i.value.trim();if(!e)return null;let t=Number.parseFloat(e);return Number.isNaN(t)?null:t}function c(t,r){let o=t==null?null:a(t);i.value=o==null?``:String(o),o==null?n.removeAttribute(`value`):n.setAttribute(`value`,String(o)),e(`change`,{originalEvent:r,value:o})}function l(e,t){r.disabled.value||r.readonly.value||c((o()??(r.min.value==null?0:Number(r.min.value)))+e,t)}function u(e){if(r.disabled.value||r.readonly.value)return;let t=Number(r.step.value)||1,n=Number(r[`large-step`].value)||t*10;switch(e.key){case`ArrowDown`:e.preventDefault(),l(-t,e);break;case`ArrowUp`:e.preventDefault(),l(t,e);break;case`End`:r.max.value!=null&&(e.preventDefault(),c(Number(r.max.value),e));break;case`Home`:r.min.value!=null&&(e.preventDefault(),c(Number(r.min.value),e));break;case`PageDown`:e.preventDefault(),l(-n,e);break;case`PageUp`:e.preventDefault(),l(n,e);break}}let d=t(()=>r.min.value!=null&&o()!=null&&o()<=Number(r.min.value)),p=t(()=>r.max.value!=null&&o()!=null&&o()>=Number(r.max.value));return f`
|
|
1342
|
+
<div
|
|
1343
|
+
class="wrapper"
|
|
1344
|
+
role="spinbutton"
|
|
1345
|
+
part="control"
|
|
1346
|
+
:aria-valuenow="${()=>o()??null}"
|
|
1347
|
+
:aria-valuemin="${()=>r.min.value??null}"
|
|
1348
|
+
:aria-valuemax="${()=>r.max.value??null}"
|
|
1349
|
+
:aria-label="${()=>r.label.value||null}"
|
|
1350
|
+
:aria-disabled="${()=>r.disabled.value?`true`:null}"
|
|
1351
|
+
:aria-readonly="${()=>r.readonly.value?`true`:null}"
|
|
1352
|
+
@keydown="${u}">
|
|
1353
|
+
<bit-button
|
|
1354
|
+
icon-only
|
|
1355
|
+
type="button"
|
|
1356
|
+
part="decrement-btn"
|
|
1357
|
+
aria-label="Decrease"
|
|
1358
|
+
variant="ghost"
|
|
1359
|
+
:size="${()=>r.size.value||null}"
|
|
1360
|
+
:color="${()=>r.color.value||null}"
|
|
1361
|
+
?disabled="${()=>r.disabled.value||r.readonly.value||d.value}"
|
|
1362
|
+
@click="${e=>l(-(Number(r.step.value)||1),e)}"
|
|
1363
|
+
>${Ht}</bit-button
|
|
1364
|
+
>
|
|
1365
|
+
<bit-input
|
|
1366
|
+
part="input"
|
|
1367
|
+
type="text"
|
|
1368
|
+
inputmode="decimal"
|
|
1369
|
+
aria-hidden="true"
|
|
1370
|
+
:value="${()=>i.value}"
|
|
1371
|
+
:label="${()=>r.label.value||null}"
|
|
1372
|
+
:label-placement="${()=>r[`label-placement`].value}"
|
|
1373
|
+
:placeholder="${()=>r.placeholder.value||null}"
|
|
1374
|
+
:color="${()=>r.color.value||null}"
|
|
1375
|
+
:size="${()=>r.size.value||null}"
|
|
1376
|
+
:variant="${()=>r.variant.value||null}"
|
|
1377
|
+
?disabled="${()=>r.disabled.value}"
|
|
1378
|
+
?readonly="${()=>r.readonly.value}"
|
|
1379
|
+
@input="${t=>{let n=t.detail?.value;typeof n==`string`&&(i.value=n,e(`input`,{originalEvent:t.detail?.originalEvent??t,value:o()}))}}"
|
|
1380
|
+
@change="${e=>{let t=e.detail?.value;if(typeof t!=`string`)return;i.value=t;let n=e.detail?.originalEvent??e;c(o(),n)}}"></bit-input>
|
|
1381
|
+
<bit-button
|
|
1382
|
+
icon-only
|
|
1383
|
+
type="button"
|
|
1384
|
+
part="increment-btn"
|
|
1385
|
+
aria-label="Increase"
|
|
1386
|
+
variant="ghost"
|
|
1387
|
+
:size="${()=>r.size.value||null}"
|
|
1388
|
+
:color="${()=>r.color.value||null}"
|
|
1389
|
+
?disabled="${()=>r.disabled.value||r.readonly.value||p.value}"
|
|
1390
|
+
@click="${e=>l(Number(r.step.value)||1,e)}"
|
|
1391
|
+
>${Ut}</bit-button
|
|
1392
|
+
>
|
|
1393
|
+
</div>
|
|
1394
|
+
`},styles:[I(),pr],tag:`bit-number-input`}),hr=o({props:{color:x(void 0),disabled:x(!1),label:x(`One-time password`),length:x(6),masked:x(!1),name:x(void 0),separator:x(void 0),size:x(void 0),type:x(`numeric`),value:x(``),variant:x(void 0)},setup({emit:e,host:n,props:r}){let i=t(()=>Array.from({length:Number(r.length.value)||6},(e,t)=>t));function a(){return[...n.shadowRoot?.querySelectorAll(`input.cell`)??[]]}function o(){return a().map(e=>e.value).join(``)}function s(e){return r.type.value===`numeric`?/^\d$/.test(e):/^[a-z\d]$/i.test(e)}function c(t,r){let i=t.target,c=i.value;if(c.length>1&&(c=c.slice(-1)),c&&!s(c)){i.value=``;return}i.value=c;let l=a(),u=o(),d=u.length===l.length&&u.split(``).every(Boolean);n.setAttribute(`value`,u),e(`change`,{complete:d,originalEvent:t,value:u}),d&&e(`complete`,{originalEvent:t,value:u}),c&&r<l.length-1&&(l[r+1].focus(),l[r+1].select())}function l(t,r){let i=t.target,s=a();if(t.key===`Backspace`){i.value?i.value=``:r>0&&(s[r-1].focus(),s[r-1].select(),s[r-1].value=``);let a=o();n.setAttribute(`value`,a),e(`change`,{complete:!1,originalEvent:t,value:a}),t.preventDefault()}else t.key===`ArrowLeft`&&r>0?(s[r-1].focus(),t.preventDefault()):t.key===`ArrowRight`&&r<s.length-1?(s[r+1].focus(),t.preventDefault()):t.key===`Home`?(s[0].focus(),t.preventDefault()):t.key===`End`&&(s[s.length-1].focus(),t.preventDefault())}function u(t){t.preventDefault();let i=(t.clipboardData?.getData(`text`)??``).split(``).filter(e=>s(e)).slice(0,Number(r.length.value)||6),c=a();i.forEach((e,t)=>{c[t]&&(c[t].value=e)});let l=o(),u=l.length===c.length&&l.split(``).every(Boolean);n.setAttribute(`value`,l),e(`change`,{complete:u,originalEvent:t,value:l}),u&&e(`complete`,{originalEvent:t,value:l}),c[Math.min(i.length,c.length-1)]?.focus()}h(()=>{let e=String(r.value.value||``),t=a();e.split(``).forEach((e,n)=>{t[n]&&(t[n].value=e)})});let d=t(()=>{let e=Number(r.length.value)||6;return r.separator.value==null?-1:Math.floor(e/2)});return f`
|
|
1395
|
+
<div class="otp-group" part="group" role="group" :aria-label="${()=>r.label.value}">
|
|
1396
|
+
${()=>i.value.map(e=>f`
|
|
1397
|
+
${()=>d.value>0&&e===d.value?f`<span class="separator" aria-hidden="true">${()=>r.separator.value||`-`}</span>`:``}
|
|
1398
|
+
<input
|
|
1399
|
+
class="cell"
|
|
1400
|
+
part="cell"
|
|
1401
|
+
:type="${()=>r.masked.value?`password`:`text`}"
|
|
1402
|
+
:inputmode="${()=>r.type.value===`numeric`?`numeric`:`text`}"
|
|
1403
|
+
maxlength="1"
|
|
1404
|
+
:autocomplete="${()=>e===0?`one-time-code`:`off`}"
|
|
1405
|
+
:aria-label="${()=>`Digit ${e+1} of ${r.length.value}`}"
|
|
1406
|
+
:disabled="${()=>r.disabled.value||null}"
|
|
1407
|
+
:name="${()=>r.name.value?`${r.name.value}[${e}]`:null}"
|
|
1408
|
+
@input="${t=>c(t,e)}"
|
|
1409
|
+
@keydown="${t=>l(t,e)}"
|
|
1410
|
+
@paste="${t=>e===0?u(t):t.preventDefault()}"
|
|
1411
|
+
@focus="${e=>e.target.select()}" />
|
|
1412
|
+
`)}
|
|
1413
|
+
</div>
|
|
1414
|
+
`},styles:[R,F({}),V(`.cell`),`@layer buildit.base{:host{--_cell-size:var(--otp-cell-size,var(--size-12));--_cell-gap:var(--otp-cell-gap,var(--size-2));--_cell-font-size:var(--otp-cell-font-size,var(--text-xl));--_cell-radius:var(--otp-cell-radius,var(--rounded-lg));--_cell-border:var(--otp-cell-border,var(--border));--_cell-border-color:var(--otp-cell-border-color,var(--color-contrast-300));--_cell-bg:var(--otp-cell-bg,var(--color-canvas));--_cell-focus-border:var(--otp-cell-focus-border,var(--_theme-base,var(--color-contrast-700)));gap:var(--size-1);flex-direction:column;display:inline-flex}.otp-group{gap:var(--_cell-gap);align-items:center;display:flex}.cell{box-sizing:border-box;width:var(--_cell-size);height:var(--_cell-size);font-size:var(--_cell-font-size);font-weight:var(--font-semibold);color:var(--color-contrast-900);text-align:center;caret-color:var(--_cell-focus-border);background:var(--_cell-bg);border:var(--_cell-border) solid var(--_cell-border-color);border-radius:var(--_cell-radius);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);padding:0;line-height:1;display:block}.cell::selection{background:var(--_theme-backdrop,var(--color-contrast-100))}.cell:focus{border-color:var(--_cell-focus-border);box-shadow:0 0 0 var(--border-2) color-mix(in srgb, var(--_cell-focus-border) 20%, transparent);outline:none}.cell:disabled{cursor:not-allowed;opacity:.5}.separator{font-size:var(--_cell-font-size);color:var(--color-contrast-400);-webkit-user-select:none;user-select:none}}@layer buildit.variants{:host(:not([variant])) .cell,:host([variant=solid]) .cell{background:var(--color-contrast-50);border-color:var(--color-contrast-300);box-shadow:var(--shadow-2xs)}:host([variant=flat]) .cell{background:var(--color-contrast-100);border-color:var(--_theme-border,var(--color-contrast-200));box-shadow:var(--inset-shadow-2xs)}:host([variant=flat]) .cell:hover:not(:disabled){background:color-mix(in srgb, var(--_theme-base) 6%, var(--color-contrast-100));border-color:color-mix(in srgb, var(--_theme-base) 35%, var(--color-contrast-300))}:host([variant=flat]) .cell:focus{background:color-mix(in srgb, var(--_theme-base) 8%, var(--color-canvas));border-color:color-mix(in srgb, var(--_cell-focus-border) 60%, transparent);box-shadow:var(--_theme-shadow)}:host([variant=bordered]) .cell{color:var(--_theme-content,var(--color-contrast-900));caret-color:var(--_theme-content,var(--_cell-focus-border));background:var(--_theme-backdrop,var(--color-contrast-50));border-color:color-mix(in srgb, var(--_cell-focus-border) 70%, transparent)}:host([variant=bordered][color=secondary]) .cell{color:var(--_theme-base);caret-color:var(--_theme-base)}:host([variant=bordered]) .cell:hover:not(:disabled){border-color:var(--_cell-focus-border)}:host([variant=outline]) .cell{box-shadow:none;background:0 0}:host([variant=ghost]) .cell{box-shadow:none;background:0 0;border-color:#0000}:host([variant=ghost]) .cell:hover:not(:disabled){background:var(--color-contrast-100)}}@layer buildit.utilities{:host([size=sm]){--_cell-size:var(--size-9);--_cell-font-size:var(--text-base)}:host([size=lg]){--_cell-size:var(--size-14);--_cell-font-size:var(--text-2xl)}}`],tag:`bit-otp-input`}),gr=`@layer buildit.base{:host{display:block}fieldset{border:none;min-width:0;margin:0;padding:0}legend{margin-bottom:var(--size-2);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-contrast-600);padding:0}legend[hidden]{display:none}.radio-group-items{flex-direction:var(--radio-group-direction,column);gap:var(--radio-group-gap,var(--size-2));display:flex}.helper-text{margin-top:var(--size-1-5);font-size:var(--text-xs);line-height:var(--leading-tight);color:var(--color-contrast-500);padding-left:2px;padding-right:2px}.error-text{margin-top:var(--size-1-5);font-size:var(--text-xs);line-height:var(--leading-tight);color:var(--color-error);padding-left:2px;padding-right:2px}}@layer buildit.variants{:host([orientation=horizontal]) .radio-group-items{--radio-group-direction:row;flex-wrap:wrap}}`,_r=n(`RadioGroupContext`),vr=o({props:{color:{default:void 0},disabled:{default:!1},error:{default:``},helper:{default:``},label:{default:``},name:{default:``},orientation:{default:`vertical`},required:{default:!1},size:{default:void 0},value:{default:``}},setup({emit:e,host:n,props:r}){let a=y(``);S(r.value,e=>{a.value=e??``},{immediate:!0});let o=()=>Array.from(n.getElementsByTagName(`bit-radio`)),s=e=>o().find(t=>(t.getAttribute(`value`)??``)===e)?.textContent?.replace(/\s+/g,` `).trim()||e,l=(t,n)=>{a.value=t;let r=t?[s(t)]:[];e(`change`,yn(t?[t]:[],r,n))};Dn(n,p($,void 0),r),_(_r,{color:r.color,disabled:t(()=>!!r.disabled.value),name:r.name,select:l,size:r.size,value:a});let u=()=>{for(let e of o())(e.getAttribute(`value`)??``)===a.value?e.setAttribute(`checked`,``):e.removeAttribute(`checked`),r.name.value&&e.setAttribute(`name`,r.name.value),r.color.value?e.setAttribute(`color`,r.color.value):e.removeAttribute(`color`),r.size.value?e.setAttribute(`size`,r.size.value):e.removeAttribute(`size`),r.disabled.value?e.setAttribute(`disabled`,``):e.removeAttribute(`disabled`)};h(()=>{g(`default`,u),u(),c(u),c(()=>{let e=o(),t=!1;for(let n of e)n.getAttribute(`value`)===a.value&&!r.disabled.value?(n.setAttribute(`tabindex`,`0`),t=!0):n.setAttribute(`tabindex`,`-1`);if(!t&&e.length>0){let t=e.find(e=>!e.hasAttribute(`disabled`));t&&t.setAttribute(`tabindex`,`0`)}}),d(n,`keydown`,e=>{if(![`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`].includes(e.key))return;let t=o().filter(e=>!e.hasAttribute(`disabled`));if(!t.length)return;let n=t.indexOf(document.activeElement);if(n===-1)return;e.preventDefault();let r=e.key===`ArrowDown`||e.key===`ArrowRight`?(n+1)%t.length:(n-1+t.length)%t.length;t[r].focus(),l(t[r].getAttribute(`value`)??``,e)}),d(n,`change`,e=>{e.target!==n&&(e.stopPropagation(),l(e.target.getAttribute(`value`)??``,e))})});let m=i(`radio-group-legend`),v=`${m}-error`,b=`${m}-helper`,x=t(()=>!!r.error.value),C=t(()=>!!r.helper.value&&!x.value);return f`
|
|
1415
|
+
<fieldset
|
|
1416
|
+
role="radiogroup"
|
|
1417
|
+
aria-required="${()=>String(!!r.required.value)}"
|
|
1418
|
+
aria-invalid="${()=>String(x.value)}"
|
|
1419
|
+
aria-errormessage="${()=>x.value?v:null}"
|
|
1420
|
+
aria-describedby="${()=>x.value?v:C.value?b:null}">
|
|
1421
|
+
<legend id="${m}" ?hidden=${()=>!r.label.value}>
|
|
1422
|
+
${()=>r.label.value}${()=>r.required.value?f`<span aria-hidden="true"> *</span>`:``}
|
|
1423
|
+
</legend>
|
|
1424
|
+
<div class="radio-group-items" part="items">
|
|
1425
|
+
<slot></slot>
|
|
1426
|
+
</div>
|
|
1427
|
+
<div class="error-text" id="${v}" role="alert" ?hidden=${()=>!x.value}>
|
|
1428
|
+
${()=>r.error.value}
|
|
1429
|
+
</div>
|
|
1430
|
+
<div class="helper-text" id="${b}" ?hidden=${()=>!C.value}>${()=>r.helper.value}</div>
|
|
1431
|
+
</fieldset>
|
|
1432
|
+
`},styles:[R,F(),I(),gr],tag:`bit-radio-group`}),yr=`@layer buildit.base{:host{--_size:var(--radio-size,var(--size-5));--_font-size:var(--radio-font-size,var(--text-sm));--_bg:var(--radio-bg,var(--color-contrast-200));--_border:var(--radio-border-color,var(--color-contrast-300));gap:var(--_gap,var(--size-2));min-height:var(--_touch-target);cursor:pointer;-webkit-user-select:none;user-select:none;flex-wrap:wrap;align-items:center;display:inline-flex}.radio-wrapper{width:var(--_size);height:var(--_size);flex-shrink:0;display:block;position:relative}.circle{box-sizing:border-box;width:var(--_size);height:var(--_size);background:var(--_bg);border:var(--border-2) solid var(--_border);transition:background var(--transition-slower), border-color var(--transition-slower), box-shadow var(--transition-normal);border-radius:50%;position:relative}:host(:focus-visible) .circle{box-shadow:var(--_focus-shadow)}.dot{background:var(--_dot-color);opacity:0;width:50%;height:50%;transition:opacity var(--transition-spring), transform var(--transition-spring);border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(.5)}.label{font-size:var(--_font-size);color:var(--color-contrast)}.helper-text{width:100%;font-size:var(--text-xs);line-height:var(--leading-tight);color:var(--color-contrast-500)}.helper-text:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){padding-left:calc(var(--_size) + var(--size-2))}.helper-text:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){padding-right:calc(var(--_size) + var(--size-2))}.helper-text[role=alert]{color:var(--color-error)}}@layer buildit.overrides{:host{--_active-bg:var(--radio-checked-bg,var(--_theme-base));--_dot-color:var(--radio-color,var(--_theme-contrast));--_focus-shadow:var(--_theme-shadow)}:host([checked]) .circle{background:var(--_active-bg);border-color:var(--_active-bg)}:host([checked]) .dot{opacity:1;transform:translate(-50%,-50%)scale(1)}}`,br=o({formAssociated:!0,props:{checked:{default:!1},color:{default:void 0},disabled:{default:!1},error:{default:``},helper:{default:``},name:{default:``},size:{default:void 0},value:{default:``}},setup({emit:e,host:n,props:r,reflect:i}){let a=p(_r,void 0),o=p($,void 0),c=t(()=>a?.name.value||r.name.value||``),l=t(()=>a?.size.value??r.size.value),u=t(()=>a?.color.value??r.color.value),d=t(()=>!!(a?.disabled.value||r.disabled.value));Dn(n,o,r);let m=y(!!r.checked.value);a?S(t(()=>a.value.value===r.value.value),e=>{m.value=e},{immediate:!0}):S(r.checked,e=>{m.value=!!e},{immediate:!0});let h=cn({checked:m,disabled:r.disabled,onToggle:t=>{e(`change`,{checked:h.checked.value,fieldValue:r.value.value??``,originalEvent:t,value:h.checked.value})},value:r.value});s({disabled:d,toFormValue:e=>e,value:t(()=>m.value?r.value.value??``:null)},{onReset:()=>{m.value=!!r.checked.value}});let g=()=>{let e=c.value;return e?Array.from(document.querySelectorAll(`bit-radio[name="${e}"]`)).filter(e=>!e.hasAttribute(`disabled`)):[]},_=sn(n,{checked:()=>h.checked.value?`true`:`false`,helperText:()=>r.error.value||r.helper.value,helperTone:()=>r.error.value?`error`:`default`,invalid:()=>!!r.error.value,role:`radio`});return i({checked:()=>h.checked.value,classMap:()=>({"is-checked":h.checked.value,"is-disabled":d.value}),color:()=>u.value,disabled:()=>d.value?!0:void 0,name:()=>c.value||void 0,onClick:e=>{if(!d.value)if(a)a.select(r.value.value??``,e);else{if(!c.value)return;if(!h.checked.value){let t=r.name.value;document.querySelectorAll(`bit-radio[name="${t}"]`).forEach(e=>{e!==n&&e.removeAttribute(`checked`)}),h.toggle(e)}}},onKeydown:e=>{let t=e,i=g();if(i.length===0)return;let o=i.indexOf(n);if(o!==-1){if(t.key===` `||t.key===`Enter`)t.preventDefault(),h.checked.value||(a?a.select(r.value.value??``,t):h.toggle(t));else if(t.key===`ArrowDown`||t.key===`ArrowRight`){t.preventDefault();let e=i[(o+1)%i.length];e.focus(),a?a.select(e.getAttribute(`value`)??``):e.click()}else if(t.key===`ArrowUp`||t.key===`ArrowLeft`){t.preventDefault();let e=i[o===0?i.length-1:o-1];e.focus(),a?a.select(e.getAttribute(`value`)??``):e.click()}}},size:()=>l.value,tabindex:()=>{if(!d.value)return h.checked.value?0:-1}}),f`
|
|
1433
|
+
<div class="radio-wrapper" part="radio">
|
|
1434
|
+
<div class="circle" part="circle">
|
|
1435
|
+
<div class="dot" part="dot"></div>
|
|
1436
|
+
</div>
|
|
1437
|
+
</div>
|
|
1438
|
+
<span class="label" part="label" data-a11y-label id="${_.labelId}"><slot></slot></span>
|
|
1439
|
+
<div
|
|
1440
|
+
class="helper-text"
|
|
1441
|
+
part="helper-text"
|
|
1442
|
+
data-a11y-helper
|
|
1443
|
+
id="${_.helperId}"
|
|
1444
|
+
aria-live="polite"
|
|
1445
|
+
hidden></div>
|
|
1446
|
+
`},styles:[...J,j,F(Rn),yr],tag:`bit-radio`}),xr=`@layer buildit.base{:host{--_star-size:var(--rating-star-size,var(--size-7));--_color-empty:var(--rating-color-empty,var(--color-contrast-200));--_color-filled:var(--rating-color-filled,var(--_theme-base,var(--color-warning)));--_gap:var(--rating-gap,var(--size-0_5));align-items:center;display:inline-flex}.stars{gap:var(--_gap);align-items:center;display:flex;position:relative}.sparkle-layer{pointer-events:none;position:absolute;inset:0;overflow:visible}.sparkle{pointer-events:none;background:var(--_color-filled);animation:var(--_motion-animation,sparkle-fly var(--_dur,.5s) ease-out forwards);border-radius:50%;position:absolute}@keyframes sparkle-fly{0%{opacity:.9;transform:translate(-50%, -50%) rotate(var(--_angle)) translateY(0) scale(1)}to{opacity:0;transform:translate(-50%, -50%) rotate(var(--_angle)) translateY(calc(-1 * var(--_dist))) scale(0)}}.star-btn{all:unset;width:var(--_star-size);min-width:var(--_touch-target);height:var(--_star-size);min-height:var(--_touch-target);color:var(--_color-empty);cursor:pointer;border-radius:var(--rounded-sm);transition:color var(--transition-fast), transform var(--transition-fast);justify-content:center;align-items:center;display:inline-flex}.star-btn[data-filled]{color:var(--_color-filled)}.star-btn:hover:not([disabled]),.star-btn:focus-visible:not([disabled]){transform:scale(1.15)}.star-btn:focus-visible{outline:var(--border-2) solid var(--_color-filled);outline-offset:var(--border-2)}.star-btn[disabled]{cursor:default}:host([readonly]) .star-btn,:host([disabled]) .star-btn{pointer-events:none}:host([disabled]){opacity:.5}svg{width:100%;height:100%}}@layer buildit.utilities{:host([size=sm]){--_star-size:var(--size-5)}:host([size=lg]){--_star-size:var(--size-9)}@media (forced-colors:active){.star-btn{color:buttontext}.star-btn[data-filled]{color:highlight;forced-color-adjust:none}.star-btn:focus-visible{box-shadow:none;outline:2px solid highlight}}}@media (prefers-reduced-motion:reduce){.sparkle{display:none}}`,Sr=`M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z`,Cr=o({formAssociated:!0,props:{color:x(void 0),disabled:x(!1),label:x(`Rating`),max:x(5),name:x(void 0),readonly:x(!1),size:x(void 0),value:x(0)},setup({emit:e,host:n,props:r}){let i=p($,void 0);Dn(n,i,r);let a=t(()=>{let e=Math.max(1,Number(r.max.value)||5),t=Number(r.value.value);return Math.min(e,Math.max(0,Number.isFinite(t)?t:0))}),{triggerValidation:o}=Nn(i,s({disabled:t(()=>!!r.disabled.value),value:t(()=>String(a.value||0))},{onReset:()=>{n.removeAttribute(`value`)}})),c=y(null),l=t(()=>c.value??a.value);function u(e){let t=n.shadowRoot?.querySelector(`.sparkle-layer`),r=n.shadowRoot?.querySelector(`[data-star="${e}"]`);if(!t||!r)return;let i=r.offsetLeft+r.offsetWidth/2,a=r.offsetTop+r.offsetHeight/2;for(let e=0;e<10;e++){let n=document.createElement(`span`),r=360/10*e+(Math.random()*30-15),o=18+Math.random()*20,s=3+Math.random()*4,c=380+Math.random()*220;n.className=`sparkle`,n.style.cssText=[`left:${i}px`,`top:${a}px`,`--_angle:${r}deg`,`--_dist:${o}px`,`width:${s}px`,`height:${s}px`,`--_dur:${c}ms`,`animation-delay:${Math.random()*60}ms`].join(`;`),t.appendChild(n),n.addEventListener(`animationend`,()=>n.remove(),{once:!0})}}function d(t,n){if(r.readonly.value||r.disabled.value)return;let i=Math.max(1,Number(r.max.value)||5),s=Math.min(i,Math.max(0,t));s!==a.value&&(r.value.value=s,e(`change`,{originalEvent:n,value:s}),o(`change`),u(s))}function m(e,t){let i=Number(r.max.value)||5;e.key===`ArrowRight`||e.key===`ArrowUp`?(e.preventDefault(),d(Math.min(i,t+1),e),(n.shadowRoot?.querySelector(`[data-star="${Math.min(i,t+1)}"]`))?.focus()):(e.key===`ArrowLeft`||e.key===`ArrowDown`)&&(e.preventDefault(),d(Math.max(1,t-1),e),(n.shadowRoot?.querySelector(`[data-star="${Math.max(1,t-1)}"]`))?.focus())}let h=t(()=>{let e=Number(r.max.value)||5;return Array.from({length:e},(e,t)=>t+1)});return f`
|
|
1447
|
+
<div
|
|
1448
|
+
class="stars"
|
|
1449
|
+
part="stars"
|
|
1450
|
+
role="radiogroup"
|
|
1451
|
+
:aria-label="${()=>r.label.value}"
|
|
1452
|
+
:aria-required="${()=>null}">
|
|
1453
|
+
${()=>h.value.map(e=>f`<button
|
|
1454
|
+
class="star-btn"
|
|
1455
|
+
part="star"
|
|
1456
|
+
type="button"
|
|
1457
|
+
role="radio"
|
|
1458
|
+
:aria-label="${()=>`${e} ${e===1?`star`:`stars`}`}"
|
|
1459
|
+
:aria-checked="${()=>String(e===a.value)}"
|
|
1460
|
+
:data-star="${e}"
|
|
1461
|
+
?data-filled="${()=>e<=l.value}"
|
|
1462
|
+
:disabled="${()=>r.disabled.value||r.readonly.value||null}"
|
|
1463
|
+
@click="${t=>d(e,t)}"
|
|
1464
|
+
@pointerenter="${()=>{!r.readonly.value&&!r.disabled.value&&(c.value=e)}}"
|
|
1465
|
+
@pointerleave="${()=>{c.value=null}}"
|
|
1466
|
+
@keydown="${t=>m(t,e)}">
|
|
1467
|
+
<svg
|
|
1468
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
1469
|
+
viewBox="0 0 24 24"
|
|
1470
|
+
aria-hidden="true"
|
|
1471
|
+
fill="${()=>e<=l.value?`currentColor`:`none`}"
|
|
1472
|
+
stroke="currentColor"
|
|
1473
|
+
stroke-width="${()=>e<=l.value?0:1.5}"
|
|
1474
|
+
stroke-linecap="round"
|
|
1475
|
+
stroke-linejoin="round">
|
|
1476
|
+
<path d="${Sr}" />
|
|
1477
|
+
</svg>
|
|
1478
|
+
</button>`)}
|
|
1479
|
+
<div class="sparkle-layer"></div>
|
|
1480
|
+
</div>
|
|
1481
|
+
`},styles:[R,F({}),j,M,xr],tag:`bit-rating`}),wr=`@layer buildit.base{:host{--_font-size:var(--select-font-size,var(--text-sm));--_gap:var(--select-gap,var(--size-2));--_field-height:var(--select-height,var(--size-10));--_row-min-height:calc(var(--leading-normal) * var(--_font-size) + 2px);--_padding:var(--select-padding,var(--size-1-5) var(--size-3));--_radius:var(--select-radius,var(--rounded-lg));--_placeholder:var(--select-placeholder-color,var(--color-contrast-500));--_bg:var(--select-bg,var(--color-contrast-100));--_border-color:var(--select-border-color,var(--color-contrast-300));flex-direction:column;align-items:stretch;min-width:12rem;display:inline-flex}:host([fullwidth]){width:100%}::slotted(option),::slotted(optgroup){display:none}.select-wrapper{gap:var(--size-1-5);flex-direction:column;width:100%;display:flex}.field{box-sizing:border-box;height:var(--_field-height);min-height:max(var(--_field-height), var(--_touch-target,0px));padding:var(--_padding);cursor:pointer;-webkit-user-select:none;user-select:none;background:var(--_bg);border:var(--border) solid var(--_border-color);border-radius:var(--_radius);box-shadow:var(--shadow-2xs);transition:var(--_motion-transition,background var(--transition-fast), backdrop-filter var(--transition-slow), border-color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast));flex-direction:column;justify-content:center;align-items:stretch;display:flex;position:relative}.field:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){text-align:left;padding-right:var(--size-8)}.field:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){text-align:right;padding-left:var(--size-8)}.field:focus{outline:none}:host([multiple]) .field{height:auto}.field:has(.label-inset:not([hidden])){height:auto}.label-inset{font-size:var(--text-xs);font-weight:var(--font-medium);line-height:var(--leading-tight);color:var(--color-contrast-500);cursor:pointer;-webkit-user-select:none;user-select:none;transition:color var(--transition-fast);margin-bottom:2px}.label-outside{font-size:var(--text-sm);font-weight:var(--font-medium);line-height:var(--leading-none);color:var(--color-contrast-500);cursor:pointer;-webkit-user-select:none;user-select:none;transition:color var(--transition-fast)}.trigger-row{gap:var(--_gap);max-width:calc(100% - var(--size-10));min-height:var(--_row-min-height);flex-wrap:wrap;flex:1;align-items:center;display:flex}.chips-row{gap:var(--size-1);flex-wrap:wrap;flex:1;align-items:center;min-width:0;display:flex}.chips-row[hidden],.trigger-value[hidden]{display:none}.trigger-value{text-overflow:ellipsis;min-width:0;font-size:var(--_font-size);color:var(--color-contrast-900);white-space:nowrap;transition:color var(--transition-fast);flex:1;line-height:1;overflow:hidden}.trigger-placeholder{color:var(--_placeholder);transition:color var(--transition-fast)}.trigger-icon{width:var(--size-6);height:100%;color:var(--color-contrast-500);transition:transform var(--transition-fast);justify-content:center;align-items:center;display:flex;position:absolute;top:0}.trigger-icon:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:var(--size-2)}.trigger-icon:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:var(--size-2)}:host([open]) .trigger-icon{transform:rotate(180deg)}.loader{width:1em;height:1em;animation:var(--_motion-animation,bit-select-spin .6s linear infinite);border:2px solid;border-radius:50%;flex-shrink:0;display:none}.loader:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){border-right-color:#0000}.loader:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){border-left-color:#0000}:host([loading]) .loader{display:inline-block}:host([loading]) .trigger-icon svg{display:none}@keyframes bit-select-spin{to{transform:rotate(360deg)}}.dropdown{z-index:var(--z-dropdown,8000);box-sizing:border-box;visibility:hidden;gap:var(--size-0-5);max-height:260px;padding:var(--size-1);overscroll-behavior:contain;pointer-events:none;background:var(--color-canvas);border:var(--border) solid var(--color-contrast-200);border-radius:var(--_radius);box-shadow:var(--shadow-lg);opacity:0;transition:var(--_motion-transition,opacity var(--transition-fast), transform var(--transition-fast), visibility var(--transition-fast));flex-direction:column;display:flex;position:fixed;overflow-y:auto;transform:translateY(-4px)}.dropdown:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){text-align:left}.dropdown:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){text-align:right}.dropdown[data-open]{visibility:visible;pointer-events:auto;opacity:1;transform:translateY(0)}.options-list{flex-direction:column;gap:0;display:flex}.option{gap:var(--size-2);padding:var(--size-1-5) var(--size-2-5);font-size:var(--_font-size);line-height:var(--leading-normal);cursor:pointer;border-radius:var(--rounded-sm);transition:background var(--transition-fast), color var(--transition-fast);align-items:center;display:flex}.option>span:first-child{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.option:hover:not([data-disabled]){background:var(--color-contrast-100)}.option[data-focused]:not([data-disabled]){color:var(--_theme-base);background:color-mix(in srgb, var(--_theme-base) 12%, var(--color-contrast-100))}.option[data-selected]{font-weight:var(--font-medium);color:var(--_theme-base);background:color-mix(in srgb, var(--_theme-base) 10%, var(--color-contrast-50))}.option[data-selected][data-focused]{background:color-mix(in srgb, var(--_theme-base) 20%, var(--color-contrast-100))}.option[data-disabled]{color:var(--color-contrast-400);cursor:not-allowed;opacity:.6}.option-check{color:var(--_theme-base);opacity:0;transition:opacity var(--transition-fast);flex-shrink:0;display:inline-flex}.option-check:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){margin-left:auto}.option-check:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){margin-right:auto}.option[data-selected] .option-check{opacity:1}.optgroup-label{padding:var(--size-1-5) var(--size-2-5) var(--size-1);font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--color-contrast-500);text-transform:uppercase;letter-spacing:var(--tracking-wide,.05em)}.dropdown-loading,.dropdown-empty{padding:var(--size-3) var(--size-2-5);font-size:var(--_font-size);color:var(--color-contrast-500);text-align:center}.helper-text{font-size:var(--text-xs);line-height:var(--leading-tight);color:var(--color-contrast-500);padding-left:2px;padding-right:2px}:host(:not([disabled],[variant=bordered],[variant=flat])) .field:hover{border-color:var(--color-contrast-400)}:host(:not([disabled],[variant=flat])) .field:focus-within,:host([open]:not([disabled],[variant=flat])) .field{background:var(--color-canvas);border-color:var(--_theme-focus);box-shadow:var(--_theme-shadow,var(--color-primary-focus-shadow));transform:translateY(-1px)}:host(:not([disabled])) .field:focus-within .label-inset,:host(:not([disabled])) .field:focus-within .label-outside,:host([open]:not([disabled])) .label-inset{color:var(--_theme-focus)}:host([has-error]) .field{border-color:var(--color-error)}:host([has-error]) .field:focus-within{border-color:var(--color-error);box-shadow:var(--color-error-focus-shadow)}:host([has-error]) .label-inset,:host([has-error]) .label-outside{color:var(--color-error)}}@layer buildit.variants{:host(:not([variant])) .field,:host([variant=solid]) .field{background:var(--color-contrast-50);border-color:var(--color-contrast-300);box-shadow:var(--shadow-2xs)}:host(:not([variant],[disabled])) .field:focus-within,:host([variant=solid]:not([disabled])) .field:focus-within{box-shadow:var(--_theme-shadow)}:host([variant=flat]) .field{border-color:var(--_theme-border);box-shadow:var(--inset-shadow-2xs)}:host([variant=flat]) .field:hover{background:color-mix(in srgb, var(--_theme-base) 6%, var(--color-contrast-100));border-color:color-mix(in srgb, var(--_theme-base) 35%, var(--color-contrast-300))}:host([variant=flat]) .field:focus-within{background:color-mix(in srgb, var(--_theme-base) 8%, var(--color-canvas));border-color:color-mix(in srgb, var(--_theme-focus) 60%, transparent);box-shadow:var(--_theme-shadow)}:host([variant=bordered]) .field{background:var(--_theme-backdrop);border-color:color-mix(in srgb, var(--_theme-focus) 70%, transparent)}:host([variant=bordered]) .trigger-value{color:var(--color-contrast-900)}:host([variant=bordered]) .trigger-placeholder{color:var(--_placeholder)}:host([variant=bordered]) .field:hover{border-color:var(--_theme-focus)}:host([variant=outline]) .field{box-shadow:none;background:0 0}:host([variant=outline]:not([disabled])) .field:focus-within{box-shadow:var(--_theme-shadow)}:host([variant=ghost]) .field{box-shadow:none;background:0 0;border-color:#0000}:host([variant=ghost]) .field:hover{background:var(--color-contrast-100)}:host([variant=ghost]:not([disabled])) .field:focus-within{box-shadow:var(--_theme-shadow)}}@layer buildit.utilities{:host([fullwidth]){width:100%;display:flex}}`,Tr=o({formAssociated:!0,props:{color:{default:void 0},disabled:{default:!1},error:{default:``,omit:!0},fullwidth:{default:!1},helper:{default:``},label:{default:``},"label-placement":{default:`inset`},loading:{default:!1},multiple:{default:!1},name:{default:``},options:x(void 0,{reflect:!1}),placeholder:{default:``},required:{default:!1},rounded:{default:void 0},size:{default:void 0},value:{default:``},variant:{default:void 0}},setup({emit:n,host:i,props:a}){let o=y([]),l=y([]),u=y(!1),d=y(-1),m=t(()=>!!a.loading.value),_=t(()=>{let e=a.options.value;return e===void 0?l.value:e}),b=p($,void 0),x=t(()=>o.value.join(`,`)),{triggerValidation:C}=Nn(b,s({disabled:t(()=>!!a.disabled.value||!!b?.disabled.value),value:x},{onReset:()=>{o.value=[]}}));S(u,e=>{i.toggleAttribute(`open`,(e=>!!e)(e))},{immediate:!0}),S(a.error,e=>{i.toggleAttribute(`has-error`,(e=>!!e)(e))},{immediate:!0});let{fieldId:w,labelId:T}=r(`select`,a.name.value),E=`listbox-${w}`,D=null,O=null,k=v(),A=v();function j(){let e=i.shadowRoot?.querySelector(`slot`);if(!e)return;let t=e.assignedElements({flatten:!0}),n=[];for(let e of t)if(e.tagName===`OPTION`){let t=e;n.push({disabled:t.disabled,label:t.text||t.value,value:t.value})}else if(e.tagName===`OPTGROUP`){let t=e,r=t.label;for(let e of Array.from(t.querySelectorAll(`option`))){let t=e;n.push({disabled:t.disabled,group:r,label:t.text||t.value,value:t.value})}}l.value=n}c(()=>{o.value=Sn(a.value.value).values});let M=t(()=>{if(o.value.length===0)return``;if(a.multiple.value&&o.value.length>1)return`${o.value.length} selected`;let e=o.value[0];return _.value.find(t=>t.value===e)?.label??e}),N=t(()=>a.multiple.value?o.value.map(e=>({label:_.value.find(t=>t.value===e)?.label??e,value:e})):[]),P=t(()=>vn(a.error.value,a.helper.value)),F=t(()=>a.multiple.value&&o.value.length>0),I=t(()=>M.value||a.placeholder.value||``),L=t(()=>!!a.label.value);function R(e){let t=[],n=new Map;for(let t of e){let e=t.group;n.has(e)||n.set(e,[]),n.get(e).push(t)}let r=0;for(let[e,i]of n){e!==void 0&&t.push({label:e,type:`group`});for(let e of i)t.push({idx:r++,opt:e,type:`option`})}return t}let z=t(()=>R(_.value));function B(e){return _.value.find(t=>t.value===e)?.label??e}function V(e){let t=o.value;n(`change`,yn(t,t.map(e=>B(e)),e))}function ee(e){e.stopPropagation();let t=e.detail?.value;t!==void 0&&(o.value=o.value.filter(e=>e!==t),V(e),C(`change`))}let H=hn(()=>D,()=>O),U=rn({getIndex:()=>d.value,getItems:()=>_.value,isItemDisabled:e=>e.disabled,setIndex:e=>{d.value=e,J()}}),W=an({getBoundaryElement:()=>i,getPanelElement:()=>O,getTriggerElement:()=>D,isDisabled:()=>!!a.disabled.value,isOpen:()=>u.value,positioner:{floating:()=>O,reference:()=>D,update:()=>H.updatePosition()},setOpen:e=>{u.value=e,e||U.reset()}});function G(){W.open(),requestAnimationFrame(()=>{let e=o.value.length>0?_.value.findIndex(e=>e.value===o.value[0]):0;U.set(e>=0?e:0)})}function K(e=`programmatic`){W.close({reason:e}),C(`blur`)}function q(e,t){e.disabled||(a.multiple.value?o.value=o.value.includes(e.value)?o.value.filter(t=>t!==e.value):[...o.value,e.value]:(o.value=[e.value],K()),V(t),C(`change`))}function J(){let e=d.value;if(e>=0){(O?.querySelector(`#${w}-opt-${e}`))?.scrollIntoView({block:`nearest`});return}O&&O.querySelector(`[data-focused]`)?.scrollIntoView({block:`nearest`})}function te(e){if(a.disabled.value)return;let t=_.value;switch(e.key){case` `:case`Enter`:if(e.preventDefault(),u.value){let n=d.value;n>=0&&n<t.length&&q(t[n],e)}else G();break;case`ArrowDown`:e.preventDefault(),u.value?U.next():G();break;case`ArrowUp`:e.preventDefault(),u.value?U.prev():G();break;case`End`:u.value&&(e.preventDefault(),U.last());break;case`Escape`:e.preventDefault(),K(`escape`);break;case`Home`:u.value&&(e.preventDefault(),U.first());break;case`Tab`:K();break}}return h(()=>{g(`default`,j),j(),On(A,k,a),D&&e(D,{activedescendant:()=>d.value>=0?`${w}-opt-${d.value}`:null,disabled:()=>a.disabled.value,expanded:()=>u.value?`true`:`false`,invalid:()=>!!a.error.value,labelledby:()=>L.value?T:null});let t=W.bindOutsideClick(document);return()=>{H.destroy(),t()}}),f`<slot style="display:none"></slot>
|
|
1482
|
+
<div class="select-wrapper">
|
|
1483
|
+
<label class="label-outside" id="${T}" ref=${k} hidden></label>
|
|
1484
|
+
<div
|
|
1485
|
+
class="field"
|
|
1486
|
+
ref=${e=>{D=e}}
|
|
1487
|
+
role="combobox"
|
|
1488
|
+
tabindex=${()=>a.disabled.value?`-1`:`0`}
|
|
1489
|
+
aria-controls="${E}"
|
|
1490
|
+
aria-expanded="false"
|
|
1491
|
+
aria-labelledby="${T}"
|
|
1492
|
+
@click=${e=>{e.stopPropagation(),u.value?K():G()}}
|
|
1493
|
+
@keydown=${te}>
|
|
1494
|
+
<label class="label-inset" id="${T}" ref=${A} hidden></label>
|
|
1495
|
+
<div class="trigger-row">
|
|
1496
|
+
<div class="chips-row" ?hidden=${()=>!F.value}>
|
|
1497
|
+
${()=>N.value.map(e=>f`
|
|
1498
|
+
<bit-chip
|
|
1499
|
+
value=${e.value}
|
|
1500
|
+
aria-label=${e.label}
|
|
1501
|
+
mode="removable"
|
|
1502
|
+
variant="flat"
|
|
1503
|
+
size="sm"
|
|
1504
|
+
color=${()=>a.color.value}
|
|
1505
|
+
@remove=${ee}>
|
|
1506
|
+
${e.label}
|
|
1507
|
+
</bit-chip>
|
|
1508
|
+
`)}
|
|
1509
|
+
</div>
|
|
1510
|
+
<span
|
|
1511
|
+
class="trigger-value ${()=>M.value?``:`trigger-placeholder`}"
|
|
1512
|
+
?hidden=${()=>F.value}
|
|
1513
|
+
>${()=>I.value}</span
|
|
1514
|
+
>
|
|
1515
|
+
</div>
|
|
1516
|
+
<span class="trigger-icon" aria-hidden="true">
|
|
1517
|
+
${Pt}
|
|
1518
|
+
<span class="loader" aria-label="Loading"></span>
|
|
1519
|
+
</span>
|
|
1520
|
+
</div>
|
|
1521
|
+
<div
|
|
1522
|
+
class="helper-text"
|
|
1523
|
+
aria-live="polite"
|
|
1524
|
+
?hidden=${()=>P.value.hidden}
|
|
1525
|
+
style=${()=>P.value.isError?`color: var(--color-error);`:``}>
|
|
1526
|
+
${()=>P.value.text}
|
|
1527
|
+
</div>
|
|
1528
|
+
</div>
|
|
1529
|
+
<div
|
|
1530
|
+
class="dropdown"
|
|
1531
|
+
?data-open=${()=>u.value}
|
|
1532
|
+
role="listbox"
|
|
1533
|
+
id="${E}"
|
|
1534
|
+
aria-label="Options"
|
|
1535
|
+
ref=${e=>{O=e}}>
|
|
1536
|
+
<div class="dropdown-loading" ?hidden=${()=>!m.value}>Loading…</div>
|
|
1537
|
+
<div class="dropdown-empty" ?hidden=${()=>m.value||_.value.length>0}>No options</div>
|
|
1538
|
+
<div class="options-list" ?hidden=${()=>m.value||_.value.length===0}>
|
|
1539
|
+
${()=>z.value.map(e=>e.type===`group`?f`<div class="optgroup-label" role="presentation">${e.label}</div>`:f`<div
|
|
1540
|
+
class="option"
|
|
1541
|
+
role="option"
|
|
1542
|
+
id=${`${w}-opt-${e.idx}`}
|
|
1543
|
+
data-option-index=${()=>String(e.idx)}
|
|
1544
|
+
data-option-value=${e.opt.value}
|
|
1545
|
+
aria-selected=${()=>String(o.value.includes(e.opt.value))}
|
|
1546
|
+
aria-disabled=${()=>String(e.opt.disabled)}
|
|
1547
|
+
?data-focused=${()=>d.value===e.idx}
|
|
1548
|
+
?data-selected=${()=>o.value.includes(e.opt.value)}
|
|
1549
|
+
?data-disabled=${()=>e.opt.disabled}
|
|
1550
|
+
@click=${t=>{t.stopPropagation(),q(e.opt,t)}}
|
|
1551
|
+
@pointerenter=${()=>{d.value=e.idx}}>
|
|
1552
|
+
<span>${e.opt.label}</span>
|
|
1553
|
+
<span class="option-check" aria-hidden="true">${Mt}</span>
|
|
1554
|
+
</div>`)}
|
|
1555
|
+
</div>
|
|
1556
|
+
</div>`},shadow:{delegatesFocus:!0},styles:[F(In),...K,L(),V(`.field`),wr],tag:`bit-select`}),Er=`@layer buildit.base{:host{--_size:var(--slider-size,var(--size-5));--_height:var(--slider-height,var(--size-3));--_track:var(--slider-track,var(--color-contrast-300));--_fill:var(--slider-fill,var(--color-neutral));--_thumb:var(--slider-thumb,var(--color-contrast-100));--_thumb-size:calc(var(--_size) - var(--size-1));--_font-size:var(--text-sm);--_shadow:var(--color-neutral-focus-shadow);gap:var(--_gap,var(--size-3));touch-action:none;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;width:100%;display:inline-flex;position:relative}}.slider-container{width:100%;height:var(--_size);min-height:var(--_touch-target);flex:1;align-items:center;display:flex;position:relative}.slider-track{width:100%;height:var(--_height);background:var(--_track);border-radius:var(--rounded-full);position:relative}.slider-fill{top:0;left:var(--_fill-start,0%);width:var(--_fill-width,0%);background:var(--_fill);border-radius:var(--rounded-full);height:100%;transition:left var(--transition-normal), width var(--transition-normal);position:absolute}:host([data-dragging]) .slider-fill{transition:none}.slider-thumb{z-index:1;width:var(--_thumb-size);height:var(--_thumb-size);cursor:grab;background:var(--_thumb);border:2px solid var(--_fill);border-radius:var(--rounded-full);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-normal), transform var(--transition-fast), left var(--transition-normal);position:absolute;top:50%;transform:translate(-50%,-50%)}:host([data-dragging]) .slider-thumb{transition:box-shadow var(--transition-normal), transform var(--transition-fast)}.slider-thumb-sole{left:var(--_thumb-pos,0%)}:host(:focus-visible) .slider-thumb-sole,:host(:active) .slider-thumb-sole{box-shadow:var(--_shadow);transform:translate(-50%,-50%)scale(1.1)}.slider-thumb-start{left:var(--_thumb-start,0%)}.slider-thumb-end{left:var(--_thumb-end,100%)}.slider-thumb-start:focus-visible,.slider-thumb-end:focus-visible{z-index:2;cursor:grabbing;outline:var(--border-2) solid var(--_fill);outline-offset:2px;box-shadow:var(--_shadow);transform:translate(-50%,-50%)scale(1.1)}:host(:not([range])) .slider-thumb-start,:host(:not([range])) .slider-thumb-end,:host([range]) .slider-thumb-sole{display:none}@media (forced-colors:active){:host(:focus-visible) .slider-thumb-sole{outline-offset:2px;box-shadow:none;outline:2px solid highlight}}@layer buildit.overrides{:host{--_fill:var(--slider-fill,var(--_theme-base));--_shadow:var(--_theme-shadow)}}.label{font-size:var(--_font-size);color:var(--color-contrast);white-space:nowrap}@media (pointer:coarse){:host{--_thumb-size:calc(var(--_size) + var(--size-2));--_size:var(--size-7)}}`,Dr=o({formAssociated:!0,props:{color:{default:void 0},disabled:{default:!1},from:{default:`0`},"from-value-text":{default:void 0},max:{default:`100`},min:{default:`0`},name:{default:``},range:{default:!1},size:{default:void 0},step:{default:`1`},to:{default:`100`},"to-value-text":{default:void 0},value:{default:`0`},"value-text":{default:void 0}},setup({emit:n,host:r,props:a,slots:o}){let c=a.range.value,l=(e,t)=>{let n=Number(e);return Number.isFinite(n)?n:t},m=e=>{let t=l(a.min.value,0),n=l(a.max.value,100),r=l(a.step.value,1);return Math.max(t,Math.min(n,Math.round(e/r)*r))},g=e=>{let t=l(a.min.value,0),n=l(a.max.value,100);return(e-t)/(n-t)*100},_=p($,void 0);Dn(r,_,a);let b,x=y(`0`);c||(b=s({disabled:t(()=>!!a.disabled.value),value:x},{onReset:()=>{x.value=`0`}}),S(a.value,e=>{x.value=String(e)},{immediate:!0}),e({disabled:()=>!!a.disabled.value,valuemax:()=>l(a.max.value,100),valuemin:()=>l(a.min.value,0),valuenow:()=>Number(x.value||0),valuetext:()=>a[`value-text`].value??null}));let C=y(0),w=y(100);c&&(b=s({disabled:t(()=>!!a.disabled.value),toFormValue:({from:e,to:t})=>{let n=a.name.value;if(!n)return null;let r=new FormData;return r.append(`${n}[from]`,String(e)),r.append(`${n}[to]`,String(t)),r},value:t(()=>({from:C.value,to:w.value}))},{onReset:()=>{C.value=m(l(a.from.value,0)),w.value=m(l(a.to.value,100))}}),S(a.from,e=>{C.value=m(l(e,0))},{immediate:!0}),S(a.to,e=>{w.value=m(l(e,100))},{immediate:!0}));let T=v(),E=v(),D=v(),O=v(),k=i(`slider-start`),A=i(`slider-end`),j=e=>{let t=g(e);r.style.setProperty(`--_thumb-pos`,`${t}%`),r.style.setProperty(`--_fill-start`,`0%`),r.style.setProperty(`--_fill-width`,`${t}%`)},M=()=>{let e=g(C.value),t=g(w.value);r.style.setProperty(`--_thumb-start`,`${e}%`),r.style.setProperty(`--_thumb-end`,`${t}%`),r.style.setProperty(`--_fill-start`,`${e}%`),r.style.setProperty(`--_fill-width`,`${t-e}%`)},N=(e,t,n,r,i)=>e===`ArrowRight`||e===`ArrowUp`?i+t:e===`ArrowLeft`||e===`ArrowDown`?i-t:e===`Home`?n:e===`End`?r:null,{triggerValidation:P}=Nn(_,{reportValidity:()=>b?.reportValidity()??!1}),F=t=>{M();let i=e=>{let n=t.getBoundingClientRect(),r=l(a.min.value,0),i=l(a.max.value,100);return m(r+Math.max(0,Math.min(1,(e-n.left)/n.width))*(i-r))},o=null,s=e=>{let t=l(a.min.value,0),r=l(a.max.value,100);o===`start`?C.value=Math.min(m(e),w.value):o===`end`&&(w.value=Math.max(m(e),C.value)),C.value=Math.max(t,Math.min(C.value,r)),w.value=Math.max(t,Math.min(w.value,r)),M(),n(`change`,{from:C.value,to:w.value,value:{from:C.value,to:w.value}}),P(`change`)};d(t,`pointerdown`,u(()=>!a.disabled.value,e=>{e.preventDefault();let t=i(e.clientX);o=Math.abs(t-C.value)<=Math.abs(t-w.value)?`start`:`end`,r.setAttribute(`data-dragging`,``),e.target.setPointerCapture(e.pointerId),s(t)})),d(t,`pointermove`,u(()=>!!o,e=>{e.preventDefault(),s(i(e.clientX))})),d(t,`pointerup`,u(()=>!!o,e=>{e.preventDefault(),o=null,r.removeAttribute(`data-dragging`),e.target.releasePointerCapture(e.pointerId)}));let c=(e,t)=>r=>{if(a.disabled.value)return;let i=l(a.step.value,1),o=l(a.min.value,0),s=l(a.max.value,100),c=N(r.key,i,o,s,e());c!==null&&(r.preventDefault(),t(m(Math.max(o,Math.min(s,c)))),M(),n(`change`,{from:C.value,originalEvent:r,to:w.value,value:{from:C.value,to:w.value}}),P(`change`))},f=D.value,p=O.value;f&&(f.addEventListener(`keydown`,c(()=>C.value,e=>{C.value=Math.min(e,w.value)})),e(f,{label:`Range start`,valuemax:()=>w.value,valuemin:()=>l(a.min.value,0),valuenow:()=>C.value,valuetext:()=>a[`from-value-text`].value??null})),p&&(p.addEventListener(`keydown`,c(()=>w.value,e=>{w.value=Math.max(e,C.value)})),e(p,{label:`Range end`,valuemax:()=>l(a.max.value,100),valuemin:()=>C.value,valuenow:()=>w.value,valuetext:()=>a[`to-value-text`].value??null}))},I=e=>{r.setAttribute(`role`,`slider`),a.disabled.value||r.setAttribute(`tabindex`,`0`),j(Number(x.value));let t=t=>{if(a.disabled.value)return;let r=e.getBoundingClientRect(),i=l(a.min.value,0),o=l(a.max.value,100),s=l(a.step.value,1),c=Math.max(0,Math.min(1,(t-r.left)/r.width)),u=Math.max(i,Math.min(o,Math.round((i+c*(o-i))/s)*s));Number(x.value)!==u&&(x.value=u.toString(),j(u),n(`change`,{value:u}),P(`change`))},i=!1;d(e,`pointerdown`,u(()=>!a.disabled.value,e=>{e.preventDefault(),i=!0,t(e.clientX),e.target.setPointerCapture(e.pointerId)})),d(e,`pointermove`,u(()=>i,e=>{e.preventDefault(),r.hasAttribute(`data-dragging`)||r.setAttribute(`data-dragging`,``),t(e.clientX)})),d(e,`pointerup`,u(()=>i,e=>{e.preventDefault(),i=!1,r.removeAttribute(`data-dragging`),e.target.releasePointerCapture(e.pointerId)})),d(r,`keydown`,u(()=>!a.disabled.value,e=>{let t=l(a.min.value,0),r=l(a.max.value,100),i=l(a.step.value,1),o=Number(x.value||0),s=N(e.key,i,t,r,o);if(s===null)return;e.preventDefault();let c=Math.max(t,Math.min(r,s));c!==o&&(x.value=c.toString(),j(c),n(`change`,{originalEvent:e,value:c}),P(`change`))}))};return h(()=>{let t=T.value;if(t){if(o.has(`default`).value&&E.value){let t=i(`slider-label`);E.value.id=t,c||e({labelledby:t})}c?F(t):I(t)}}),f`
|
|
1557
|
+
<div class="slider-container" part="slider" ref=${T}>
|
|
1558
|
+
<div class="slider-track" part="track">
|
|
1559
|
+
<div class="slider-fill" part="fill"></div>
|
|
1560
|
+
<div class="slider-thumb slider-thumb-sole" part="thumb"></div>
|
|
1561
|
+
<div
|
|
1562
|
+
class="slider-thumb slider-thumb-start"
|
|
1563
|
+
part="thumb-start"
|
|
1564
|
+
ref=${D}
|
|
1565
|
+
role="slider"
|
|
1566
|
+
tabindex="${()=>a.disabled.value?`-1`:`0`}"
|
|
1567
|
+
id="${k}"></div>
|
|
1568
|
+
<div
|
|
1569
|
+
class="slider-thumb slider-thumb-end"
|
|
1570
|
+
part="thumb-end"
|
|
1571
|
+
ref=${O}
|
|
1572
|
+
role="slider"
|
|
1573
|
+
tabindex="${()=>a.disabled.value?`-1`:`0`}"
|
|
1574
|
+
id="${A}"></div>
|
|
1575
|
+
</div>
|
|
1576
|
+
</div>
|
|
1577
|
+
<span class="label" part="label" ref=${E}><slot></slot></span>
|
|
1578
|
+
`},styles:[I(),R,F(Bn),Er,j],tag:`bit-slider`}),Or=`@layer buildit.base{:host{--_width:var(--switch-width,var(--size-10));--_height:var(--switch-height,var(--size-5));--_padding:var(--size-0-5);--_thumb-size:calc(var(--_height) - var(--_padding) * 2);--_track-bg:var(--switch-track,var(--color-contrast-300));--_thumb-bg:var(--switch-thumb,white);--_font-size:var(--switch-font-size,var(--text-sm));gap:var(--_gap,var(--size-2-5));min-height:var(--size-11);touch-action:manipulation;cursor:pointer;-webkit-user-select:none;user-select:none;flex-wrap:wrap;align-items:center;display:inline-flex}.switch-wrapper{flex-shrink:0;display:flex}.switch-track{width:var(--_width);height:var(--_height);background:var(--_track-bg);border-radius:var(--rounded-full);transition:background var(--transition-slower), box-shadow var(--transition-normal);will-change:background;position:relative}.switch-thumb{top:var(--_padding);width:var(--_thumb-size);height:var(--_thumb-size);background:var(--_thumb-bg);border-radius:var(--rounded-full);box-shadow:var(--shadow-sm);transition:transform var(--transition-spring), box-shadow var(--transition-normal);will-change:transform;position:absolute}.switch-thumb:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:var(--_padding)}.switch-thumb:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:var(--_padding)}input:focus-visible~.switch-track{box-shadow:var(--_focus-shadow)}.label{font-size:var(--_font-size);color:var(--color-contrast)}}@layer buildit.overrides{:host{--_active-bg:var(--switch-bg,var(--_theme-base));--_focus-shadow:var(--_theme-shadow)}:host([checked]) .switch-track{background:var(--_active-bg)}:host([checked]) .switch-thumb{transform:translateX(calc(var(--_width) - var(--_height)))}:host(:dir(rtl)[checked]) .switch-thumb{transform:translateX(calc(-1 * (var(--_width) - var(--_height))))}:host(:hover:not([disabled],[checked])) .switch-track{background:var(--color-contrast-400)}:host(:hover:not([disabled])[checked]) .switch-track{filter:brightness(1.1)}.helper-text{width:100%;font-size:var(--text-xs);line-height:var(--leading-tight);color:var(--color-contrast-500)}.helper-text:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){padding-left:calc(var(--_width) + var(--size-2-5))}.helper-text:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){padding-right:calc(var(--_width) + var(--size-2-5))}.helper-text[role=alert]{color:var(--color-error)}}`,kr=o({formAssociated:!0,props:{checked:{default:!1},color:{default:void 0},disabled:{default:!1},error:{default:``},helper:{default:``},name:{default:``},size:{default:void 0},value:{default:`on`}},setup({emit:e,host:t,props:n,reflect:r}){let{checkedSignal:i,formCtx:a,triggerValidation:o}=Fn(n);Dn(t,a,n);let s=cn({checked:i,clearIndeterminateFirst:!1,disabled:n.disabled,onToggle:t=>{o(`change`),e(`change`,s.changePayload(t))},value:n.value}),c=sn(t,{checked:()=>s.checked.value?`true`:`false`,helperText:()=>n.error.value||n.helper.value,helperTone:()=>n.error.value?`error`:`default`,invalid:()=>!!n.error.value,role:`switch`});return r({checked:()=>s.checked.value,classMap:()=>({"is-checked":s.checked.value,"is-disabled":!!n.disabled.value}),onClick:e=>s.toggle(e),onKeydown:e=>{let t=e;(t.key===` `||t.key===`Enter`)&&(t.preventDefault(),s.toggle(e))},tabindex:()=>n.disabled.value?void 0:0}),f`
|
|
1579
|
+
<div class="switch-wrapper" part="switch">
|
|
1580
|
+
<div class="switch-track" part="track">
|
|
1581
|
+
<div class="switch-thumb" part="thumb"></div>
|
|
1582
|
+
</div>
|
|
1583
|
+
</div>
|
|
1584
|
+
<span class="label" part="label" data-a11y-label id="${c.labelId}"><slot></slot></span>
|
|
1585
|
+
<div
|
|
1586
|
+
class="helper-text"
|
|
1587
|
+
part="helper-text"
|
|
1588
|
+
data-a11y-helper
|
|
1589
|
+
id="${c.helperId}"
|
|
1590
|
+
aria-live="polite"
|
|
1591
|
+
hidden></div>
|
|
1592
|
+
`},styles:[...J,F(zn),Or],tag:`bit-switch`}),Ar=`@layer buildit.base{:host{--_font-size:var(--textarea-font-size,var(--text-sm));--_gap:var(--textarea-gap,var(--size-2));--_padding:var(--textarea-padding,var(--size-2) var(--size-3));--_radius:var(--textarea-radius,var(--rounded-lg));--_placeholder:var(--textarea-placeholder-color,var(--color-contrast-500));--_bg:var(--textarea-bg,var(--color-contrast-100));--_border-color:var(--textarea-border-color,var(--color-contrast-300));--_min-height:var(--textarea-min-height,var(--size-24));--_max-height:var(--textarea-max-height,none);--_resize:var(--textarea-resize,vertical);flex-direction:column;align-items:stretch;min-width:12rem;display:inline-flex}.textarea-wrapper{gap:var(--size-1-5);flex-direction:column;min-width:0;display:flex}.field{box-sizing:border-box;min-width:0;padding:var(--_padding);background:var(--_bg);border:var(--border) solid var(--_border-color);border-radius:var(--_radius);box-shadow:var(--shadow-2xs);transition:background var(--transition-fast), backdrop-filter var(--transition-slow), border-color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast);display:grid}.label-inset,.label-outside,label.label-inset,label.label-outside{font-weight:var(--font-medium);color:var(--color-contrast-500);cursor:pointer;-webkit-user-select:none;user-select:none;transition:color var(--transition-fast)}.label-inset,label.label-inset{font-size:var(--text-xs);line-height:var(--leading-tight);margin-bottom:2px}.label-outside,label.label-outside{font-size:var(--text-sm);line-height:var(--leading-none)}.helper-text{font-size:var(--text-xs);line-height:var(--leading-tight);color:var(--color-contrast-500);padding-left:2px;padding-right:2px}textarea{box-sizing:border-box;min-width:12rem;min-height:var(--_min-height);max-height:var(--_max-height);font:inherit;font-size:var(--_font-size);line-height:var(--leading-relaxed);color:var(--_theme-content);resize:vertical;background:0 0;border:none;outline:none;padding:0}textarea::placeholder{color:var(--_placeholder);transition:color var(--transition-fast)}textarea:focus-visible{outline:none}.counter{margin-top:var(--size-1);font-size:var(--text-xs);line-height:var(--leading-tight);color:var(--color-contrast-400);transition:color var(--transition-fast);align-self:flex-end;padding-left:2px;padding-right:2px}.counter.near-limit{color:var(--color-warning)}.counter.at-limit{color:var(--color-error)}:host(:not([disabled],[variant=bordered],[variant=flat])) .field:hover{border-color:var(--color-contrast-400)}:host(:not([disabled],[variant=text],[variant=flat])) .field:focus-within{background:var(--color-canvas);border-color:var(--_theme-focus);box-shadow:var(--_theme-shadow,var(--color-primary-focus-shadow));transform:translateY(-1px)}:host(:not([disabled])) .field:focus-within .label-inset,:host(:not([disabled])) .field:focus-within .label-outside{color:var(--_theme-focus)}:host([error]:not([error=""])) .field{border-color:var(--color-error)}:host([error]:not([error=""])) .field:focus-within{border-color:var(--color-error);box-shadow:var(--color-error-focus-shadow)}:host([error]:not([error=""])) .label-inset,:host([error]:not([error=""])) .label-outside{color:var(--color-error)}}@layer buildit.variants{:host(:not([variant])) .field,:host([variant=solid]) .field{background:var(--color-contrast-50);border-color:var(--color-contrast-300);box-shadow:var(--shadow-2xs)}:host(:not([variant],[disabled])) .field:focus-within,:host([variant=solid]:not([disabled])) .field:focus-within{box-shadow:var(--_theme-shadow)}:host([variant=flat]) .field{border-color:var(--_theme-border);box-shadow:var(--inset-shadow-2xs)}:host([variant=flat]) .field:hover{background:color-mix(in srgb, var(--_theme-base) 6%, var(--color-contrast-100));border-color:color-mix(in srgb, var(--_theme-base) 35%, var(--color-contrast-300))}:host([variant=flat]) .field:focus-within{background:color-mix(in srgb, var(--_theme-base) 8%, var(--color-canvas));border-color:color-mix(in srgb, var(--_theme-focus) 60%, transparent);box-shadow:var(--_theme-shadow)}:host([variant=bordered]) .field{background:var(--_theme-backdrop);border-color:color-mix(in srgb, var(--_theme-focus) 70%, transparent)}:host([variant=bordered]) textarea{color:var(--_theme-content)}:host([variant=bordered][color=secondary]) textarea{color:var(--_theme-base)}:host([variant=bordered]) textarea::placeholder{color:color-mix(in srgb, var(--_theme-content) 45%, transparent)}:host([variant=bordered][color=secondary]) textarea::placeholder{color:color-mix(in srgb, var(--_theme-base) 45%, transparent)}:host([variant=bordered]) .field:hover{border-color:var(--_theme-focus)}:host([variant=outline]) .field{box-shadow:none;background:0 0}:host([variant=outline]:not([disabled])) .field:focus-within{box-shadow:var(--_theme-shadow)}:host([variant=ghost]) .field{box-shadow:none;background:0 0;border-color:#0000}:host([variant=ghost]) .field:hover{background:var(--color-contrast-100)}:host([variant=ghost]:not([disabled])) .field:focus-within{box-shadow:var(--_theme-shadow)}}@layer buildit.utilities{:host([auto-resize]) textarea{overflow:hidden}:host([fullwidth]){width:100%}}`,jr=o({formAssociated:!0,props:{"auto-resize":{default:!1},color:{default:void 0},disabled:{default:!1},error:{default:``,omit:!0},fullwidth:{default:!1},helper:{default:``},label:{default:``},"label-placement":{default:`inset`},maxlength:{default:void 0},name:{default:``},"no-resize":{default:!1},placeholder:{default:``},readonly:{default:!1},required:{default:!1},resize:{default:void 0},rounded:{default:void 0},rows:{default:void 0},size:{default:void 0},value:{default:``},variant:{default:void 0}},setup({emit:e,props:n}){let r=Pn(n,`textarea`),{fieldId:i,helperId:a,labelInsetId:o,labelInsetRef:s,labelOutsideId:l,labelOutsideRef:u,valueSignal:d}=r,p=t(()=>n.maxlength.value),m=v(),g=v(),_=v();return h(()=>{let i=m.value;if(!i)return;let s=()=>{!n[`auto-resize`].value||!i||(i.style.height=`auto`,i.style.height=`${i.scrollHeight}px`)};r.mountLabelSync(),c(()=>{let e=xn(n.rows.value);e==null?i.removeAttribute(`rows`):i.rows=e;let t=xn(p.value);t==null?i.removeAttribute(`maxlength`):i.maxLength=t,i.style.resize=n[`auto-resize`].value||n[`no-resize`].value?`none`:n.resize.value||`vertical`}),Tn({error:()=>n.error.value,helper:()=>n.helper.value,ref:g}),Cn({count:t(()=>d.value.length),format:`merged`,maxLength:p,ref:_}),import(`@vielzeug/craftit`).then(({aria:e})=>{e(i,{describedby:()=>n.error.value?r.errorId:a,invalid:()=>!!n.error.value,labelledby:()=>n[`label-placement`].value===`outside`?l:o})}),En(i,{onBlur:()=>r.triggerValidation(`blur`),onChange:(t,n)=>{e(`change`,{originalEvent:t,value:n}),r.triggerValidation(`change`)},onInput:(t,n)=>{s(),e(`input`,{originalEvent:t,value:n})}}),n[`auto-resize`].value&&requestAnimationFrame(s)}),f`
|
|
1593
|
+
<div class="textarea-wrapper">
|
|
1594
|
+
<label class="label-outside" for="${i}" id="${l}" ref=${u} hidden></label>
|
|
1595
|
+
<div class="field">
|
|
1596
|
+
<label class="label-inset" for="${i}" id="${o}" ref=${s} hidden></label>
|
|
1597
|
+
<textarea
|
|
1598
|
+
ref=${m}
|
|
1599
|
+
id="${i}"
|
|
1600
|
+
${Ye({disabled:n.disabled,name:n.name,placeholder:n.placeholder,readOnly:n.readonly,required:n.required,value:d})}
|
|
1601
|
+
aria-describedby="${a}"></textarea>
|
|
1602
|
+
</div>
|
|
1603
|
+
<span class="counter" aria-live="polite" ref=${_} hidden></span>
|
|
1604
|
+
<div id="${a}" class="helper-text" aria-live="polite" ref=${g} hidden></div>
|
|
1605
|
+
</div>
|
|
1606
|
+
`},shadow:{delegatesFocus:!0},styles:[...K,F(Ln),L(),V(`textarea`),Ar],tag:`bit-textarea`}),Mr=`@layer buildit.base{:host{--_bg:var(--box-bg,var(--color-canvas));--_color:var(--box-color,var(--color-contrast-900));--_border-width:var(--box-border,var(--border));--_border-color:var(--box-border-color,var(--color-contrast-300));--_radius:var(--box-radius,var(--rounded-lg));--_padding:var(--box-padding,var(--size-4));--_shadow:var(--box-shadow,var(--shadow-sm));display:block;position:relative}.box{box-sizing:border-box;width:100%;height:100%;padding:var(--_padding);color:var(--_color);background:var(--_bg);border:var(--_border-width) solid var(--_border-color);border-radius:var(--_radius);box-shadow:var(--_shadow);transition:backdrop-filter var(--transition-slow), box-shadow var(--transition-normal), background var(--transition-normal), border-color var(--transition-normal);will-change:box-shadow;position:relative}}@layer buildit.variants{:host([color]){--_bg:var(--box-bg,var(--_theme-backdrop));--_border-color:var(--box-border-color,var(--_theme-border))}:host([variant=flat]){--_shadow:none}:host([variant=glass]:not([color])){--_bg:color-mix(in srgb, var(--color-secondary) 20%, transparent);--_border-color:color-mix(in srgb, var(--color-secondary-contrast) 15%, transparent)}:host([variant=glass][color]){--_bg:color-mix(in srgb, var(--_theme-base) 20%, transparent);--_border-color:color-mix(in srgb, var(--_theme-contrast) 15%, transparent);--_color:var(--_theme-content)}:host([variant=glass]) .box{box-shadow:var(--shadow-md), var(--inset-shadow-xs);-webkit-backdrop-filter:blur(var(--blur-lg)) saturate(180%) brightness(1.05);backdrop-filter:blur(var(--blur-lg)) saturate(180%) brightness(1.05)}:host([color]:not([variant=glass],[variant=frost]):hover){--_bg:color-mix(in srgb, var(--_theme-base) 16%, var(--color-contrast-50));--_border-color:var(--_theme-focus)}}@layer buildit.utilities{:host([fullwidth]){width:100%}}`,Nr=o({setup(){return f`<div class="box" part="box"><slot></slot></div>`},styles:[...q,W(`.box`),G(`.box`),Mr],tag:`bit-box`}),Pr=o({props:{align:{default:void 0},col:{default:``},colSpan:{default:void 0},justify:{default:void 0},row:{default:``},rowSpan:{default:void 0}},setup({host:e,props:t}){return c(()=>{let n=t.col.value,r=t.colSpan.value;n?e.style.setProperty(`grid-column`,n):r===`full`?e.style.setProperty(`grid-column`,`1 / -1`):r?e.style.setProperty(`grid-column`,`span ${r}`):e.style.removeProperty(`grid-column`)}),c(()=>{let n=t.row.value,r=t.rowSpan.value;n?e.style.setProperty(`grid-row`,n):r===`full`?e.style.setProperty(`grid-row`,`1 / -1`):r?e.style.setProperty(`grid-row`,`span ${r}`):e.style.removeProperty(`grid-row`)}),f`<slot></slot>`},styles:[`@layer buildit.base{:host{display:block}}@layer buildit.utilities{:host([align=start]){align-self:start}:host([align=center]){align-self:center}:host([align=end]){align-self:end}:host([align=stretch]){align-self:stretch}:host([justify=start]){justify-self:start}:host([justify=center]){justify-self:center}:host([justify=end]){justify-self:end}:host([justify=stretch]){justify-self:stretch}}`],tag:`bit-grid-item`}),Fr=`@layer buildit.base{:host{--_cols:var(--grid-cols,repeat(auto-fit, minmax(250px, 1fr)));--_rows:var(--grid-rows,auto);--_gap:var(--grid-gap,var(--size-4));--_row-gap:var(--grid-row-gap,var(--_gap));--_col-gap:var(--grid-col-gap,var(--_gap));grid-template-rows:var(--_rows);grid-template-columns:var(--_cols);gap:var(--_row-gap) var(--_col-gap);grid-auto-flow:row;display:grid}:host([gap=none]){--_row-gap:0;--_col-gap:0}:host([gap=xs]){--_row-gap:var(--size-1);--_col-gap:var(--size-1)}:host([gap=sm]){--_row-gap:var(--size-2);--_col-gap:var(--size-2)}:host([gap=md]){--_row-gap:var(--size-4);--_col-gap:var(--size-4)}:host([gap=lg]){--_row-gap:var(--size-6);--_col-gap:var(--size-6)}:host([gap=xl]){--_row-gap:var(--size-8);--_col-gap:var(--size-8)}:host([gap="2xl"]){--_row-gap:var(--size-12);--_col-gap:var(--size-12)}:host([align=start]){align-items:start}:host([align=center]){align-items:center}:host([align=end]){align-items:end}:host([align=stretch]){align-items:stretch}:host([align=baseline]){align-items:baseline}:host([justify=start]){justify-items:start}:host([justify=center]){justify-items:center}:host([justify=end]){justify-items:end}:host([justify=stretch]){justify-items:stretch}:host([flow=row]){grid-auto-flow:row}:host([flow=column]){grid-auto-flow:column}:host([flow=row-dense]){grid-auto-flow:dense}:host([flow=column-dense]){grid-auto-flow:column dense}:host([fullwidth]){width:100%}}`,Ir=[[`cols2xl`,`--size-screen-2xl`],[`colsXl`,`--size-screen-xl`],[`colsLg`,`--size-screen-lg`],[`colsMd`,`--size-screen-md`],[`colsSm`,`--size-screen-sm`]],Lr=[[`areas2xl`,`--size-screen-2xl`],[`areasXl`,`--size-screen-xl`],[`areasLg`,`--size-screen-lg`],[`areasMd`,`--size-screen-md`],[`areasSm`,`--size-screen-sm`]],Rr=(e,t,n)=>{let r=getComputedStyle(e).getPropertyValue(t).trim(),i=Number.parseFloat(r);return Number.isFinite(i)?i:n},zr={"--size-screen-2xl":1536,"--size-screen-lg":1024,"--size-screen-md":768,"--size-screen-sm":640,"--size-screen-xl":1280},Br=o({props:{align:{default:void 0},areas:{default:``},areas2xl:{default:``},areasLg:{default:``},areasMd:{default:``},areasSm:{default:``},areasXl:{default:``},cols:{default:void 0},cols2xl:{default:void 0},colsLg:{default:void 0},colsMd:{default:void 0},colsSm:{default:void 0},colsXl:{default:void 0},flow:{default:void 0},fullwidth:{default:!1},gap:{default:void 0},justify:{default:void 0},minColWidth:{default:``},responsive:{default:!1},rows:{default:void 0}},setup({host:e,props:t}){let n=(e,t,n)=>e===`auto`||!e&&t?`repeat(auto-fit, minmax(${n||`250px`}, 1fr))`:e?`repeat(${e}, 1fr)`:null,r=()=>{let r=e.offsetWidth,i=!!t.responsive.value,a=t.minColWidth.value??``,o;for(let[n,i]of Ir)if(r>=Rr(e,i,zr[i])&&t[n].value){o=t[n].value;break}o||=t.cols.value||void 0;let s=n(o,i,a);s?e.style.setProperty(`--_cols`,s):e.style.removeProperty(`--_cols`)};c(()=>{t.cols.value,t.colsSm.value,t.colsMd.value,t.colsLg.value,t.colsXl.value,t.cols2xl.value,t.responsive.value,t.minColWidth.value,r()});let i=()=>{let n=e.offsetWidth,r=``;for(let[i,a]of Lr)if(n>=Rr(e,a,zr[a])&&t[i].value){r=t[i].value;break}r||=t.areas.value||``,r?e.style.setProperty(`grid-template-areas`,r):e.style.removeProperty(`grid-template-areas`)};return h(()=>{let t=tn(e);c(()=>{t.value,r(),i()})}),c(()=>{let n=t.rows.value;n&&n!==`auto`?e.style.setProperty(`--_rows`,`repeat(${n}, 1fr)`):e.style.removeProperty(`--_rows`)}),c(()=>{t.areas.value,t.areasSm.value,t.areasMd.value,t.areasLg.value,t.areasXl.value,t.areas2xl.value,i()}),f`<slot></slot>`},styles:[Fr],tag:`bit-grid`}),Vr=`@layer buildit.base{:host{--_sidebar-width:var(--sidebar-width,16rem);--_sidebar-collapsed-width:var(--sidebar-collapsed-width,3.5rem);--_sidebar-transition:var(--transition-normal);--_panel-bg:var(--sidebar-bg,var(--lightningcss-light,color-mix(in srgb, var(--color-contrast-50) 85%, transparent))var(--lightningcss-dark,color-mix(in srgb, var(--color-contrast-100) 85%, transparent)));--_panel-blur:var(--sidebar-panel-blur,var(--blur-md));--_panel-border-color:var(--sidebar-border-color,var(--lightningcss-light,color-mix(in srgb, var(--color-contrast-900) 8%, transparent))var(--lightningcss-dark,color-mix(in srgb, var(--color-contrast-100) 8%, transparent)));--_panel-radius:var(--sidebar-radius,0);--_panel-shadow:var(--sidebar-shadow,var(--shadow-xl));box-sizing:border-box;width:100%;min-width:var(--size-2xs);max-width:var(--_sidebar-width);height:100%;min-height:0;transition:var(--_motion-transition,width var(--_sidebar-transition), min-width var(--_sidebar-transition));display:block;overflow:visible}:host>nav{box-sizing:border-box;background:var(--_panel-bg);border:var(--border) solid var(--_panel-border-color);border-radius:var(--_panel-radius);width:100%;height:100%;min-height:0;box-shadow:var(--_panel-shadow);-webkit-backdrop-filter:blur(var(--_panel-blur));backdrop-filter:blur(var(--_panel-blur));flex-direction:column;display:flex;position:relative;overflow:hidden}:host([data-collapsed]){width:var(--_sidebar-collapsed-width);min-width:var(--_sidebar-collapsed-width);max-width:var(--_sidebar-collapsed-width)}.sidebar-header{gap:var(--size-2);min-height:var(--size-14);padding:var(--size-2);border-bottom:var(--border) solid var(--color-contrast-200);flex-shrink:0;align-items:center;display:flex;overflow:hidden}.sidebar-header slot{flex:1;min-width:0;display:block;overflow:hidden}.sidebar-content{gap:var(--size-2);min-width:0;padding:var(--size-4);scrollbar-width:thin;flex:1;grid-template-columns:minmax(0,1fr);align-content:start;display:grid;overflow:clip auto}.sidebar-footer{padding:var(--size-4);border-top:var(--border) solid var(--color-contrast-200);flex-shrink:0}.toggle-btn{all:unset;box-sizing:border-box;width:var(--size-8);height:var(--size-8);color:var(--color-contrast-500);cursor:pointer;border-radius:var(--rounded-sm);transition:color var(--transition-fast), background var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.toggle-btn:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){margin-left:auto}.toggle-btn:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){margin-right:auto}.toggle-btn:hover{color:var(--color-contrast-800);background:var(--color-contrast-200)}.toggle-btn:focus-visible{outline:var(--focus-ring)}.toggle-icon{transition:var(--_motion-transition,transform var(--_sidebar-transition));justify-content:center;align-items:center;display:flex}:host([data-collapsed]) .toggle-icon,:host(:not([dir=rtl])[data-collapsed]) .toggle-icon,:host(:dir(ltr)[data-collapsed]) .toggle-icon,:host(:dir(rtl)) .toggle-icon{transform:rotate(180deg)}:host(:dir(rtl)[data-collapsed]) .toggle-icon{transform:rotate(0)}}@layer buildit.variants{:host([variant=floating]){height:calc(100% - var(--size-4));margin:var(--size-2);--_panel-radius:var(--rounded-xl)}:host([variant=inset]){--_panel-bg:var(--color-contrast-50);--_panel-shadow:none;--_panel-border-color:transparent}}`,Hr=`@layer buildit.base{:host{width:100%;display:block}.group{display:block}.group-header{all:unset;box-sizing:border-box;gap:var(--size-2);width:100%;min-height:var(--size-8);padding:var(--size-1) var(--size-2);color:inherit;cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:var(--rounded-sm);transition:background var(--transition-fast);outline:none;justify-content:flex-start;align-items:center;display:flex;position:relative}.group-header::-webkit-details-marker{display:none}:host([collapsible]) .group-header:hover{background:var(--color-contrast-100)}:host([collapsible]) .group-header:focus-visible{outline:var(--focus-ring)}:host(:not([collapsible])) .group-header{cursor:default}.group-label{text-overflow:ellipsis;font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--color-contrast-500);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;transition:opacity var(--transition-fast);flex:1;overflow:hidden}.group-icon{color:var(--color-contrast-400);flex-shrink:0;justify-content:center;align-items:center;display:flex}.chevron{color:var(--color-contrast-400);transition:var(--_motion-transition,transform var(--transition-normal));flex-shrink:0;justify-content:center;align-items:center;display:flex}:host([collapsible][open]) .chevron{transform:rotate(90deg)}.group-items{gap:var(--size-0-5);grid-template-columns:minmax(0,1fr);min-width:0;display:grid}:host([sidebar-collapsed]) .group-label,:host([sidebar-collapsed]) .chevron{pointer-events:none;opacity:0}}@layer buildit.variants{:host([sidebar-collapsed]) .group-header{padding-inline:var(--size-2);justify-content:center}}`,Ur=`@layer buildit.base{:host{min-width:0;max-width:100%;display:block}.item{box-sizing:border-box;gap:var(--size-2);min-width:0;min-height:var(--_touch-target);padding:var(--size-1-5) var(--size-2);font-size:var(--sidebar-item-font-size,var(--text-sm));font-weight:var(--font-medium);color:var(--sidebar-item-color,var(--color-contrast-700));cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:var(--rounded-sm);transition:background var(--transition-fast), color var(--transition-fast);outline:none;align-items:center;text-decoration:none;display:flex;position:relative}a.item{text-decoration:none}.item:hover{color:var(--sidebar-item-hover-color,var(--color-contrast-900));background:var(--sidebar-item-hover-bg,var(--color-contrast-100))}.item:focus-visible{outline:var(--focus-ring);outline-offset:1px}:host([active]) .item{font-weight:var(--font-semibold);color:var(--sidebar-item-active-color,var(--color-primary));background:var(--sidebar-item-active-bg,var(--color-primary-100,color-mix(in srgb, var(--color-primary) 12%, transparent)))}:host([active]) .item:before{inset-block:var(--size-1);content:"";background:var(--sidebar-item-indicator,var(--color-primary));border-radius:var(--rounded-full);width:3px;position:absolute}:host([active]) .item:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))):before{left:0}:host([active]) .item:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)):before{right:0}:host([disabled]) .item{pointer-events:none;cursor:not-allowed;opacity:.5}.item-icon{width:var(--size-5);height:var(--size-5);flex-shrink:0;justify-content:center;align-items:center;display:flex}.item-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;transition:opacity var(--transition-fast);flex:1;overflow:hidden}.item-end{gap:var(--size-1);transition:opacity var(--transition-fast);flex-shrink:0;align-items:center;display:flex}:host([sidebar-collapsed]) .item-label,:host([sidebar-collapsed]) .item-end{pointer-events:none;opacity:0;width:0;overflow:hidden}:host([sidebar-collapsed]) .item{padding:var(--size-2) var(--size-4);justify-content:center;gap:0}:host([sidebar-collapsed][active]) .item:before{inset-block:var(--size-2)}}`,Wr=n(`SidebarContext`),Gr=o({props:{collapsed:{default:void 0,type:Boolean},collapsible:{default:!1,type:Boolean},"default-collapsed":{default:!1,type:Boolean},label:{default:`Sidebar navigation`},responsive:{default:void 0},variant:{default:void 0}},setup({emit:e,host:n,props:r,slots:i}){let a=t(()=>i.has(`header`).value),o=t(()=>i.has(`footer`).value),s=y(n.hasAttribute(`collapsed`)),l=y(s.value?n.hasAttribute(`collapsed`):r[`default-collapsed`].value),u=t(()=>l.value);_(Wr,{collapsed:u,variant:r.variant});let d=(t,n)=>{u.value!==t&&(s.value||(l.value=t),e(`collapsed-change`,{collapsed:t,source:n}))},p=()=>{d(!u.value,`toggle`)};return c(()=>{n.toggleAttribute(`data-collapsed`,u.value)}),h(()=>{let e=n;e.setCollapsed=e=>d(!!e,`api`),e.toggle=p;let t,i=new MutationObserver(()=>{!n.hasAttribute(`collapsed`)&&!s.value||(s.value=!0,l.value=n.hasAttribute(`collapsed`))});return i.observe(n,{attributeFilter:[`collapsed`],attributes:!0}),S(r.responsive,e=>{t?.(),t=void 0;let n=String(e??``).trim();if(!n)return;let r=window.matchMedia(n),i=e=>{d(e.matches,`responsive`)};d(r.matches,`responsive`),r.addEventListener(`change`,i),t=()=>{r.removeEventListener(`change`,i)}},{immediate:!0}),()=>{i.disconnect(),t?.()}}),f`
|
|
1607
|
+
<nav aria-label="${()=>r.label.value}" part="nav">
|
|
1608
|
+
<div class="sidebar-header" part="header" ?hidden=${()=>!a.value&&!r.collapsible.value}>
|
|
1609
|
+
<slot name="header"></slot>
|
|
1610
|
+
<button
|
|
1611
|
+
class="toggle-btn"
|
|
1612
|
+
part="toggle-btn"
|
|
1613
|
+
type="button"
|
|
1614
|
+
?hidden=${()=>!r.collapsible.value}
|
|
1615
|
+
aria-label="${()=>u.value?`Expand sidebar`:`Collapse sidebar`}"
|
|
1616
|
+
aria-expanded="${()=>String(!u.value)}"
|
|
1617
|
+
@click="${p}">
|
|
1618
|
+
<span class="toggle-icon" aria-hidden="true">${Ft}</span>
|
|
1619
|
+
</button>
|
|
1620
|
+
</div>
|
|
1621
|
+
<div class="sidebar-content" part="content">
|
|
1622
|
+
<slot></slot>
|
|
1623
|
+
</div>
|
|
1624
|
+
<div class="sidebar-footer" part="footer" ?hidden=${()=>!o.value}>
|
|
1625
|
+
<slot name="footer"></slot>
|
|
1626
|
+
</div>
|
|
1627
|
+
</nav>
|
|
1628
|
+
`},styles:[j,M,Vr],tag:`bit-sidebar`}),Kr=o({props:{collapsible:{default:!1,type:Boolean},"default-open":{default:!0,type:Boolean},label:{default:``},open:{default:void 0,type:Boolean}},setup({emit:e,host:n,props:r,slots:i}){let a=t(()=>i.has(`icon`).value),o=p(Wr,void 0);c(()=>{n.toggleAttribute(`sidebar-collapsed`,o?.collapsed.value??!1)});let s=t(()=>r.open.value!==void 0),l=y(r[`default-open`].value),u=t(()=>r.collapsible.value?s.value?r.open.value??!1:l.value:!0);return S(r.open,e=>{e!==void 0&&(l.value=e)}),c(()=>{n.toggleAttribute(`open`,u.value)}),f`
|
|
1629
|
+
<details class="group" part="group" ?open=${()=>u.value} @click="${t=>{if(!(t.target instanceof HTMLElement)||!t.target.closest(`.group-header`)||(t.stopPropagation(),t.preventDefault(),!r.collapsible.value))return;let n=!u.value;r.open.value!==n&&(s.value||(l.value=n),e(`open-change`,{open:n}))}}">
|
|
1630
|
+
<summary
|
|
1631
|
+
class="group-header"
|
|
1632
|
+
part="group-header"
|
|
1633
|
+
:aria-expanded="${()=>r.collapsible.value?String(r.open.value):null}">
|
|
1634
|
+
<span class="group-icon" part="group-icon" ?hidden=${()=>!a.value} aria-hidden="true">
|
|
1635
|
+
<slot name="icon"></slot>
|
|
1636
|
+
</span>
|
|
1637
|
+
<span class="group-label" part="group-label">${()=>r.label.value}</span>
|
|
1638
|
+
<span class="chevron" ?hidden=${()=>!r.collapsible.value} aria-hidden="true">${It}</span>
|
|
1639
|
+
</summary>
|
|
1640
|
+
<div class="group-items" part="group-items" role="list">
|
|
1641
|
+
<slot></slot>
|
|
1642
|
+
</div>
|
|
1643
|
+
</details>
|
|
1644
|
+
`},styles:[M,Hr],tag:`bit-sidebar-group`}),qr=o({props:{active:{default:!1,type:Boolean},disabled:{default:!1,type:Boolean},href:{default:void 0},rel:{default:void 0},target:{default:void 0}},setup({host:e,props:n,slots:r}){let i=t(()=>r.has(`icon`).value),a=t(()=>r.has(`end`).value),o=p(Wr,void 0);c(()=>{e.toggleAttribute(`sidebar-collapsed`,o?.collapsed.value??!1)});let s=t(()=>!!n.href.value&&!n.disabled.value),l=()=>f`
|
|
1645
|
+
<span class="item-icon" part="item-icon" ?hidden=${()=>!i.value} aria-hidden="true">
|
|
1646
|
+
<slot name="icon"></slot>
|
|
1647
|
+
</span>
|
|
1648
|
+
<span class="item-label" part="item-label"><slot></slot></span>
|
|
1649
|
+
<span class="item-end" part="item-end" ?hidden=${()=>!a.value}>
|
|
1650
|
+
<slot name="end"></slot>
|
|
1651
|
+
</span>
|
|
1652
|
+
`;return f`
|
|
1653
|
+
${()=>s.value?f`
|
|
1654
|
+
<a
|
|
1655
|
+
class="item"
|
|
1656
|
+
part="item"
|
|
1657
|
+
href="${()=>n.href.value}"
|
|
1658
|
+
:rel="${()=>n.rel.value??null}"
|
|
1659
|
+
:target="${()=>n.target.value??null}"
|
|
1660
|
+
:aria-current="${()=>n.active.value?`page`:null}">
|
|
1661
|
+
${l()}
|
|
1662
|
+
</a>
|
|
1663
|
+
`:f`
|
|
1664
|
+
<button
|
|
1665
|
+
class="item"
|
|
1666
|
+
part="item"
|
|
1667
|
+
type="button"
|
|
1668
|
+
:aria-current="${()=>n.active.value?`page`:null}"
|
|
1669
|
+
:disabled="${()=>n.disabled.value||null}">
|
|
1670
|
+
${l()}
|
|
1671
|
+
</button>
|
|
1672
|
+
`}
|
|
1673
|
+
`},styles:[j,Ur],tag:`bit-sidebar-item`}),Jr=0,Yr=[];function Xr(e){if(Jr===0){let t=e;for(;t.parentElement&&t.parentElement!==document.body;)t=t.parentElement;Yr=Array.from(document.body.children).filter(e=>e!==t&&!e.hasAttribute(`inert`));for(let e of Yr)e.setAttribute(`inert`,``)}Jr++}function Zr(){if(Jr=Math.max(0,Jr-1),Jr===0){for(let e of Yr)e.removeAttribute(`inert`);Yr=[]}}function Qr(e,t,n,r){let i=null,a=!1;return{applyInitialFocus:()=>{let t=r[`initial-focus`].value;if(t){let n=e.querySelector(t);n&&requestAnimationFrame(()=>n.focus())}},captureReturnFocus:()=>{i=document.activeElement},closeWithAnimation:()=>{let e=t.value;if(!e?.open||a)return;a=!0,e.classList.add(`closing`);let r=()=>{e.classList.remove(`closing`),a=!1,e.close()},i=n();i?Gt(i,r,`transition`):r()},restoreFocus:()=>{r[`return-focus`].value!==!1&&i&&(i.focus(),i=null)}}}var $r=`@layer buildit.base{:host{--_radius:var(--dialog-radius,var(--rounded-lg));--_padding:var(--dialog-padding,var(--size-4));--_gap:var(--dialog-gap,var(--size-4));--_max-width:var(--dialog-max-width,32rem);--_elevation:var(--shadow-xl);--_backdrop-filter:none;--_backdrop-bg:var(--dialog-backdrop,color-mix(in srgb, var(--color-canvas) 40%, transparent));--_panel-bg:var(--dialog-bg,var(--lightningcss-light,color-mix(in srgb, var(--color-contrast-50) 85%, transparent))var(--lightningcss-dark,color-mix(in srgb, var(--color-contrast-100) 85%, transparent)));--_panel-blur:var(--dialog-panel-blur,var(--blur-md));--_panel-border-color:var(--dialog-border-color,var(--lightningcss-light,color-mix(in srgb, var(--color-contrast-900) 8%, transparent))var(--lightningcss-dark,color-mix(in srgb, var(--color-contrast-100) 8%, transparent)));display:contents}dialog{all:unset;box-sizing:border-box;pointer-events:none;background:0 0;border:none;justify-content:center;align-items:center;width:100%;max-width:100%;height:100%;max-height:100%;margin:0;padding:0;display:flex;position:fixed;inset:0;overflow:hidden}dialog:not([open]){display:none}dialog[open]{pointer-events:auto}dialog::-ms-backdrop{background:var(--_backdrop-bg);opacity:1;-webkit-backdrop-filter:var(--_backdrop-filter);backdrop-filter:var(--_backdrop-filter);transition:var(--_motion-transition,opacity var(--transition-normal) ease, overlay var(--transition-normal) ease allow-discrete, display var(--transition-normal) ease allow-discrete)}@starting-style{dialog::-ms-backdrop{opacity:0}}dialog::backdrop{background:var(--_backdrop-bg);opacity:1;-webkit-backdrop-filter:var(--_backdrop-filter);backdrop-filter:var(--_backdrop-filter);transition:var(--_motion-transition,opacity var(--transition-normal) ease, overlay var(--transition-normal) ease allow-discrete, display var(--transition-normal) ease allow-discrete)}@starting-style{dialog::backdrop{opacity:0}}dialog.closing::-ms-backdrop{opacity:0}dialog.closing::backdrop{opacity:0}.panel{box-sizing:border-box;width:var(--_max-width);max-width:calc(100vw - var(--size-8));max-height:calc(100dvh - var(--size-8));background:var(--_panel-bg);border:var(--border) solid var(--_panel-border-color);border-radius:var(--_radius);box-shadow:var(--dialog-shadow,var(--_elevation));opacity:1;-webkit-backdrop-filter:blur(var(--_panel-blur));backdrop-filter:blur(var(--_panel-blur));transition:var(--_motion-transition,opacity var(--transition-normal) cubic-bezier(.16, 1, .3, 1), transform var(--transition-normal) cubic-bezier(.16, 1, .3, 1));flex-direction:column;display:flex;position:relative;overflow:hidden;transform:scale(1)translateY(0)}@starting-style{.panel{opacity:0;transform:scale(.96) translateY(var(--size-2))}}dialog.closing .panel{opacity:0;transform:scale(.96) translateY(var(--size-2))}.panel[data-size=sm]{--_max-width:var(--dialog-max-width,22rem)}.panel[data-size=md]{--_max-width:var(--dialog-max-width,32rem)}.panel[data-size=lg]{--_max-width:var(--dialog-max-width,48rem)}.panel[data-size=xl]{--_max-width:var(--dialog-max-width,64rem)}.panel[data-size=full]{width:calc(100vw - var(--size-8));max-width:calc(100vw - var(--size-8));max-height:calc(100dvh - var(--size-8))}.header{gap:var(--size-2);padding:var(--_padding);flex-shrink:0;align-items:center;padding-bottom:0;display:flex}.header[hidden]{display:none}.title{font-size:var(--text-lg);font-weight:var(--font-semibold);line-height:var(--leading-tight);color:var(--color-contrast-900);flex:1}.close{width:var(--size-8);min-width:var(--_touch-target);height:var(--size-8);min-height:var(--_touch-target);color:var(--color-contrast-500);cursor:pointer;border-radius:var(--rounded-md);transition:var(--_motion-transition,background var(--transition-fast), color var(--transition-fast));background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.close:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){margin-left:auto}.close:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){margin-right:auto}.close:hover{color:var(--color-contrast-900);background:var(--color-contrast-200)}.close:focus-visible{outline:var(--border-2) solid var(--color-focus);outline-offset:var(--border-2)}.close[hidden]{display:none}.body{padding:var(--_padding);overscroll-behavior:contain;font-size:var(--text-sm);line-height:var(--leading-relaxed);color:var(--color-contrast-700);flex:1;overflow-y:auto}.footer{gap:var(--_gap);padding:var(--_padding);flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;padding-top:0;display:flex}.footer[hidden]{display:none}.header:not([hidden])+.body{padding-top:var(--size-4)}.body+.footer:not([hidden]){padding-top:var(--size-4);border-top:var(--border) solid var(--color-contrast-100)}@media (width<=640px){.panel,.panel[data-size=sm],.panel[data-size=md],.panel[data-size=lg],.panel[data-size=xl]{width:calc(100vw - var(--size-4));max-width:calc(100vw - var(--size-4));max-height:calc(100dvh - var(--size-4))}.header,.body,.footer{padding-inline:var(--size-3)}}}@layer buildit.config{:host([backdrop=blur]){--_backdrop-filter:blur(var(--blur-xs))}:host([backdrop=transparent]){--_backdrop-bg:transparent}:host([elevation=none]){--_elevation:var(--shadow-none)}:host([elevation=sm]){--_elevation:var(--shadow-sm)}:host([elevation=md]){--_elevation:var(--shadow-md)}:host([elevation=lg]){--_elevation:var(--shadow-lg)}:host([elevation=xl]){--_elevation:var(--shadow-xl)}:host([elevation="2xl"]){--_elevation:var(--shadow-2xl)}:host([padding=none]){--_padding:var(--size-0)}:host([padding=sm]){--_padding:var(--size-3)}:host([padding=md]){--_padding:var(--size-4)}:host([padding=lg]){--_padding:var(--size-6)}:host([padding=xl]){--_padding:var(--size-8)}}`,ei=o({props:{backdrop:{default:void 0},dismissible:{default:!1},elevation:{default:void 0},"initial-focus":{default:void 0},label:{default:``},open:{default:!1},padding:{default:void 0},persistent:{default:!1},"return-focus":{default:!0},rounded:{default:void 0},size:{default:`md`}},setup({emit:e,host:n,props:r,slots:i}){let a=v(),o=t(()=>i.has(`header`).value||!!r.label.value||r.dismissible.value),s=t(()=>i.has(`footer`).value),{applyInitialFocus:c,captureReturnFocus:u,closeWithAnimation:p,restoreFocus:m}=Qr(n,a,()=>a.value?.querySelector(`.panel`),r);return h(()=>{let t=a.value;return t?(S(r.open,r=>{r?t.open||(u(),t.showModal(),c(),Xr(n),e(`open`)):p()},{immediate:!0}),d(t,`close`,()=>{Zr(),n.removeAttribute(`open`),m(),e(`close`)}),d(t,`click`,e=>{r.persistent.value||e.target===t&&p()}),d(t,`keydown`,e=>{e.key===`Escape`&&(e.preventDefault(),r.persistent.value||p())}),()=>{t.open&&t.close(),Zr()}):void 0}),f`
|
|
1674
|
+
<dialog
|
|
1675
|
+
ref=${a}
|
|
1676
|
+
class="dialog"
|
|
1677
|
+
part="dialog"
|
|
1678
|
+
:aria-label="${()=>r.label.value||null}"
|
|
1679
|
+
aria-modal="true">
|
|
1680
|
+
<div class="overlay" part="overlay" aria-hidden="true"></div>
|
|
1681
|
+
<div class="panel" part="panel" :data-size="${r.size}">
|
|
1682
|
+
<div class="header" part="header" ?hidden=${()=>!o.value}>
|
|
1683
|
+
<slot name="header">
|
|
1684
|
+
<span class="title" part="title">${()=>r.label.value}</span>
|
|
1685
|
+
</slot>
|
|
1686
|
+
<button
|
|
1687
|
+
class="close"
|
|
1688
|
+
part="close"
|
|
1689
|
+
type="button"
|
|
1690
|
+
aria-label="Close dialog"
|
|
1691
|
+
?hidden=${()=>!r.dismissible.value}
|
|
1692
|
+
@click=${()=>{let e=a.value;if(!e)return;l.custom(e,`close-request`),e.classList.add(`closing`);let t=e.querySelector(`.panel`),n=()=>{e.classList.remove(`closing`),e.close()};t?Gt(t,n,`transition`):n()}}>
|
|
1693
|
+
${jt}
|
|
1694
|
+
</button>
|
|
1695
|
+
</div>
|
|
1696
|
+
<div class="body" part="body">
|
|
1697
|
+
<slot></slot>
|
|
1698
|
+
</div>
|
|
1699
|
+
<div class="footer" part="footer" ?hidden=${()=>!s.value}>
|
|
1700
|
+
<slot name="footer"></slot>
|
|
1701
|
+
</div>
|
|
1702
|
+
</div>
|
|
1703
|
+
</dialog>
|
|
1704
|
+
`},styles:[z,P,j,M,$r],tag:`bit-dialog`}),ti=`@layer buildit.base{:host{--_backdrop-bg:var(--drawer-backdrop,color-mix(in srgb, var(--color-canvas) 40%, transparent));--_backdrop-filter:none;--_panel-bg:var(--drawer-bg,var(--lightningcss-light,color-mix(in srgb, var(--color-contrast-50) 85%, transparent))var(--lightningcss-dark,color-mix(in srgb, var(--color-contrast-100) 85%, transparent)));--_panel-blur:var(--drawer-panel-blur,var(--blur-md));--_panel-shadow:var(--drawer-shadow,var(--shadow-xl));--_panel-border-color:var(--lightningcss-light,color-mix(in srgb, var(--color-contrast-900) 8%, transparent))var(--lightningcss-dark,color-mix(in srgb, var(--color-contrast-100) 8%, transparent));--_panel-bleed:var(--size-8);display:contents}dialog{all:unset;box-sizing:border-box;pointer-events:none;width:100%;max-width:100%;height:100%;max-height:100%;transition:display var(--transition-normal) allow-discrete, overlay var(--transition-normal) allow-discrete;display:flex;position:fixed;inset:0}dialog:not([open]){display:none}dialog[open]{pointer-events:auto;display:flex}dialog::-ms-backdrop{background:var(--_backdrop-bg);opacity:1;-webkit-backdrop-filter:var(--_backdrop-filter);backdrop-filter:var(--_backdrop-filter);transition:display var(--transition-normal) allow-discrete, overlay var(--transition-normal) allow-discrete, opacity var(--transition-normal), backdrop-filter var(--transition-normal)}dialog::backdrop{background:var(--_backdrop-bg);opacity:1;-webkit-backdrop-filter:var(--_backdrop-filter);backdrop-filter:var(--_backdrop-filter);transition:display var(--transition-normal) allow-discrete, overlay var(--transition-normal) allow-discrete, opacity var(--transition-normal), backdrop-filter var(--transition-normal)}@starting-style{dialog[open]::-ms-backdrop{opacity:0;-webkit-backdrop-filter:blur();backdrop-filter:blur()}dialog[open]::backdrop{opacity:0;-webkit-backdrop-filter:blur();backdrop-filter:blur()}}.panel{box-sizing:border-box;background:var(--_panel-bg);border:var(--border) solid var(--_panel-border-color);box-shadow:var(--_panel-shadow);opacity:1;-webkit-backdrop-filter:blur(var(--_panel-blur));backdrop-filter:blur(var(--_panel-blur));transition:opacity var(--transition-normal), transform var(--transition-normal), display var(--transition-normal) allow-discrete;flex-direction:column;display:flex;position:absolute;overflow:hidden;transform:translate(0)}@starting-style{dialog[open] .panel{opacity:0;transform:var(--_panel-exit-transform,translate3d(0, 0, 0))}}:host([placement=left]) .panel{--_panel-exit-transform:translateX(calc(-100% - var(--_panel-bleed)));width:calc(var(--drawer-size,20rem) + var(--_panel-bleed));max-width:calc(100dvw + var(--_panel-bleed));border-top:none;border-bottom:none;top:0;bottom:0}:host([placement=left]) .panel:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){margin-left:calc(var(--_panel-bleed) * -1);padding-left:var(--_panel-bleed);border-left:none;left:0}:host([placement=left]) .panel:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){margin-right:calc(var(--_panel-bleed) * -1);padding-right:var(--_panel-bleed);border-right:none;right:0}:host(:not([placement])) .panel{--_panel-exit-transform:translateX(calc(100% + var(--_panel-bleed)));width:calc(var(--drawer-size,20rem) + var(--_panel-bleed));max-width:calc(100dvw + var(--_panel-bleed));border-top:none;border-bottom:none;top:0;bottom:0}:host(:not([placement])) .panel:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){margin-right:calc(var(--_panel-bleed) * -1);padding-right:var(--_panel-bleed);border-right:none;right:0}:host(:not([placement])) .panel:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){margin-left:calc(var(--_panel-bleed) * -1);padding-left:var(--_panel-bleed);border-left:none;left:0}:host([placement=right]) .panel{--_panel-exit-transform:translateX(calc(100% + var(--_panel-bleed)));width:calc(var(--drawer-size,20rem) + var(--_panel-bleed));max-width:calc(100dvw + var(--_panel-bleed));border-top:none;border-bottom:none;top:0;bottom:0}:host([placement=right]) .panel:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){margin-right:calc(var(--_panel-bleed) * -1);padding-right:var(--_panel-bleed);border-right:none;right:0}:host([placement=right]) .panel:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){margin-left:calc(var(--_panel-bleed) * -1);padding-left:var(--_panel-bleed);border-left:none;left:0}:host([placement=top]) .panel{--_panel-exit-transform:translateY(calc(-100% - var(--_panel-bleed)));height:calc(var(--drawer-size,16rem) + var(--_panel-bleed));max-height:calc(100dvh + var(--_panel-bleed));margin-top:calc(var(--_panel-bleed) * -1);padding-top:var(--_panel-bleed);border-top:none;border-left:none;border-right:none;top:0;left:0;right:0}:host([placement=bottom]) .panel{--_panel-exit-transform:translateY(calc(100% + var(--_panel-bleed)));height:calc(var(--drawer-size,16rem) + var(--_panel-bleed));max-height:calc(100dvh + var(--_panel-bleed));margin-bottom:calc(var(--_panel-bleed) * -1);padding-bottom:var(--_panel-bleed);border-bottom:none;border-left:none;border-right:none;bottom:0;left:0;right:0}:host(:dir(rtl)[placement=left]) .panel{--_panel-exit-transform:translateX(calc(100% + var(--_panel-bleed)))}:host(:dir(rtl)[placement=right]) .panel,:host(:dir(rtl):not([placement])) .panel{--_panel-exit-transform:translateX(calc(-100% - var(--_panel-bleed)))}:host([size=sm]){--drawer-size:14rem}:host([size=lg]){--drawer-size:32rem}:host([size=full]){--drawer-size:100%}:host([size=full]) .panel{width:calc(100% + var(--_panel-bleed));max-width:none;height:calc(100% + var(--_panel-bleed));border:none;max-height:none}.header{gap:var(--size-2);padding:var(--size-4);border-bottom:var(--border) solid var(--color-contrast-200);flex-shrink:0;align-items:center;display:flex}.header-title{text-overflow:ellipsis;min-width:0;font-size:var(--text-lg);font-weight:var(--font-semibold);white-space:nowrap;flex:1;overflow:hidden}.body{padding:var(--size-4);flex:1;overflow-y:auto}.footer{gap:var(--size-2);padding:var(--size-4);border-top:var(--border) solid var(--color-contrast-200);flex-shrink:0;justify-content:flex-end;display:flex}.header[hidden],.footer[hidden],.close-btn[hidden]{display:none}.close-btn{all:unset;box-sizing:border-box;width:var(--size-8);height:var(--size-8);color:var(--color-contrast-500);cursor:pointer;border-radius:var(--rounded-sm);transition:var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.close-btn:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){margin-left:auto}.close-btn:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){margin-right:auto}.close-btn:hover{color:var(--color-contrast-800);background:var(--color-contrast-200)}.close-btn:focus-visible{outline:var(--focus-ring)}@media (width<=640px){:host([placement=left]) .panel,:host(:not([placement])) .panel,:host([placement=right]) .panel{width:calc(min(var(--drawer-size,20rem), calc(100vw - var(--size-2))) + var(--_panel-bleed));max-width:calc(100vw - var(--size-2) + var(--_panel-bleed))}:host([placement=top]) .panel,:host([placement=bottom]) .panel{height:calc(min(var(--drawer-size,16rem), calc(100dvh - var(--size-2))) + var(--_panel-bleed));max-height:calc(100dvh - var(--size-2) + var(--_panel-bleed))}.header,.body,.footer{padding:var(--size-3)}}}@layer buildit.config{:host([backdrop=blur]){--_backdrop-filter:blur(var(--blur-xs))}:host([backdrop=transparent]){--_backdrop-bg:transparent}}`,ni=o({props:{backdrop:{default:void 0},dismissable:{default:!0},"initial-focus":{default:void 0},label:{default:void 0},open:{default:!1},persistent:{default:!1},placement:{default:`right`},"return-focus":{default:!0},size:{default:void 0},title:{default:void 0}},setup({emit:e,host:n,props:r,slots:a}){let o=i(`drawer-label`),s=v(),c=v(),u=t(()=>a.has(`header`).value||!!r.title.value||r.dismissable.value),p=t(()=>a.has(`footer`).value),{applyInitialFocus:m,captureReturnFocus:g,restoreFocus:_}=Qr(n,s,()=>c.value,r),y=()=>{let e=s.value;e?.open&&e.close()},b=e=>{l.custom(n,`close-request`,{cancelable:!0,detail:{placement:r.placement.value??`right`,trigger:e}})&&y()},x=()=>{let t=s.value;!t||t.open||(g(),t.showModal(),Xr(n),m(),e(`open`,{placement:r.placement.value??`right`}))};return h(()=>{let t=s.value;if(!t)return;let i=n;return i.show=x,i.hide=y,S(r.open,e=>{e?x():y()},{immediate:!0}),d(t,`close`,()=>{Zr(),n.removeAttribute(`open`),_(),e(`close`,{placement:r.placement.value??`right`})}),d(t,`cancel`,e=>{e.preventDefault(),r.persistent.value||b(`escape`)}),d(t,`click`,e=>{!r.persistent.value&&e.target===t&&b(`backdrop`)}),()=>{t.open&&(Zr(),t.close())}}),f`
|
|
1705
|
+
<dialog
|
|
1706
|
+
ref=${s}
|
|
1707
|
+
aria-modal="true"
|
|
1708
|
+
:aria-label="${()=>r.label.value??null}"
|
|
1709
|
+
:aria-labelledby="${()=>r.label.value?null:o}">
|
|
1710
|
+
<div class="panel" part="panel" ref=${c}>
|
|
1711
|
+
<div class="header" part="header" ?hidden=${()=>!u.value}>
|
|
1712
|
+
<span class="header-title" id="${o}">
|
|
1713
|
+
<slot name="header">${()=>r.title.value??``}</slot>
|
|
1714
|
+
</span>
|
|
1715
|
+
<button
|
|
1716
|
+
class="close-btn"
|
|
1717
|
+
part="close-btn"
|
|
1718
|
+
type="button"
|
|
1719
|
+
aria-label="Close"
|
|
1720
|
+
?hidden=${()=>!r.dismissable.value}
|
|
1721
|
+
@click="${()=>b(`button`)}">
|
|
1722
|
+
${jt}
|
|
1723
|
+
</button>
|
|
1724
|
+
</div>
|
|
1725
|
+
<div class="body" part="body">
|
|
1726
|
+
<slot></slot>
|
|
1727
|
+
</div>
|
|
1728
|
+
<div class="footer" part="footer" ?hidden=${()=>!p.value}>
|
|
1729
|
+
<slot name="footer"></slot>
|
|
1730
|
+
</div>
|
|
1731
|
+
</div>
|
|
1732
|
+
</dialog>
|
|
1733
|
+
`},styles:[z,B,j,M,ti],tag:`bit-drawer`}),ri=`@layer buildit.base{:host{--_menu-panel-bg:var(--menu-panel-bg,var(--lightningcss-light,color-mix(in srgb, var(--color-contrast-50) 85%, transparent))var(--lightningcss-dark,color-mix(in srgb, var(--color-contrast-100) 85%, transparent)));--_menu-panel-border-color:var(--menu-panel-border-color,var(--lightningcss-light,color-mix(in srgb, var(--color-contrast-900) 8%, transparent))var(--lightningcss-dark,color-mix(in srgb, var(--color-contrast-100) 8%, transparent)));--_menu-panel-blur:var(--menu-panel-blur,var(--blur-md));--_menu-panel-shadow:var(--menu-panel-shadow,var(--shadow-xl));display:inline-block;position:relative}.menu-panel{z-index:calc(var(--z-popover,1000) + 1);box-sizing:border-box;visibility:hidden;min-width:var(--menu-panel-min-width,10rem);padding:var(--size-1);pointer-events:none;background:var(--_menu-panel-bg);border:var(--border) solid var(--_menu-panel-border-color);border-radius:var(--menu-panel-radius,var(--rounded-lg));box-shadow:var(--_menu-panel-shadow);opacity:0;-webkit-backdrop-filter:blur(var(--_menu-panel-blur));backdrop-filter:blur(var(--_menu-panel-blur));transform-origin:top;transition:opacity var(--transition-fast), transform var(--transition-fast), visibility var(--transition-fast);margin:0;position:fixed;top:0;transform:translateY(-4px)scale(.97)}.menu-panel:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:0}.menu-panel:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:0}.menu-panel[data-open]{visibility:visible;pointer-events:auto;opacity:1;transform:translateY(0)scale(1)}::slotted(bit-menu-item),::slotted(bit-menu-separator){display:block}}`,ii=a`
|
|
1734
|
+
${R}
|
|
1735
|
+
${F}
|
|
1736
|
+
${B}
|
|
1737
|
+
`,ai=o({props:{checked:{default:!1,type:Boolean},disabled:{default:!1,type:Boolean},type:{default:void 0},value:{default:void 0}},setup({props:e}){let n=a`
|
|
1738
|
+
@layer buildit.base {
|
|
1739
|
+
:host {
|
|
1740
|
+
display: block;
|
|
1741
|
+
outline: none;
|
|
1742
|
+
}
|
|
1743
|
+
|
|
1744
|
+
.item {
|
|
1745
|
+
align-items: center;
|
|
1746
|
+
border-radius: 0;
|
|
1747
|
+
cursor: pointer;
|
|
1748
|
+
display: flex;
|
|
1749
|
+
font-size: var(--text-sm);
|
|
1750
|
+
gap: var(--size-2);
|
|
1751
|
+
line-height: var(--leading-normal);
|
|
1752
|
+
padding: var(--size-1-5) var(--size-3);
|
|
1753
|
+
transition:
|
|
1754
|
+
background var(--transition-fast),
|
|
1755
|
+
color var(--transition-fast);
|
|
1756
|
+
user-select: none;
|
|
1757
|
+
white-space: nowrap;
|
|
1758
|
+
}
|
|
1759
|
+
|
|
1760
|
+
:host(:first-of-type) .item {
|
|
1761
|
+
border-radius: var(--rounded-sm) var(--rounded-sm) 0 0;
|
|
1762
|
+
}
|
|
1763
|
+
|
|
1764
|
+
:host(:last-child) .item {
|
|
1765
|
+
border-radius: 0 0 var(--rounded-sm) var(--rounded-sm);
|
|
1766
|
+
}
|
|
1767
|
+
|
|
1768
|
+
:host(:first-of-type:last-child) .item {
|
|
1769
|
+
border-radius: var(--rounded-sm);
|
|
1770
|
+
}
|
|
1771
|
+
|
|
1772
|
+
:host(:not([disabled])) .item:hover {
|
|
1773
|
+
background: var(--color-contrast-100);
|
|
1774
|
+
}
|
|
1775
|
+
|
|
1776
|
+
:host(:focus-visible) .item {
|
|
1777
|
+
background: color-mix(in srgb, var(--color-primary) 12%, var(--color-contrast-100));
|
|
1778
|
+
color: var(--color-primary);
|
|
1779
|
+
}
|
|
1780
|
+
|
|
1781
|
+
/* Driven by JS via sync() — avoids :host() attribute selector edge-cases */
|
|
1782
|
+
.item.is-checkable {
|
|
1783
|
+
background: color-mix(in srgb, var(--color-contrast-900) 5%, var(--color-canvas));
|
|
1784
|
+
}
|
|
1785
|
+
|
|
1786
|
+
.item.is-checked {
|
|
1787
|
+
background: color-mix(in srgb, var(--color-primary) 18%, var(--color-canvas));
|
|
1788
|
+
color: var(--color-primary);
|
|
1789
|
+
font-weight: var(--font-medium);
|
|
1790
|
+
}
|
|
1791
|
+
|
|
1792
|
+
:host([disabled]) .item {
|
|
1793
|
+
color: var(--color-contrast-400);
|
|
1794
|
+
cursor: not-allowed;
|
|
1795
|
+
opacity: 0.6;
|
|
1796
|
+
pointer-events: none;
|
|
1797
|
+
}
|
|
1798
|
+
|
|
1799
|
+
.icon-slot {
|
|
1800
|
+
display: contents;
|
|
1801
|
+
}
|
|
1802
|
+
|
|
1803
|
+
.item-check {
|
|
1804
|
+
align-items: center;
|
|
1805
|
+
color: currentColor;
|
|
1806
|
+
display: inline-flex;
|
|
1807
|
+
flex-shrink: 0;
|
|
1808
|
+
justify-content: center;
|
|
1809
|
+
width: 1.25rem;
|
|
1810
|
+
}
|
|
1811
|
+
|
|
1812
|
+
.item-label {
|
|
1813
|
+
flex: 1;
|
|
1814
|
+
min-width: 0;
|
|
1815
|
+
overflow: hidden;
|
|
1816
|
+
text-overflow: ellipsis;
|
|
1817
|
+
white-space: nowrap;
|
|
1818
|
+
}
|
|
1819
|
+
}
|
|
1820
|
+
${j}
|
|
1821
|
+
`,r=t(()=>e.type.value===`checkbox`||e.type.value===`radio`),i=t(()=>r.value&&e.checked.value),o=t(()=>e.type.value===`checkbox`?`menuitemcheckbox`:e.type.value===`radio`?`menuitemradio`:`menuitem`),s=t(()=>e.type.value===`checkbox`?e.checked.value?`☑`:`☐`:e.type.value===`radio`?e.checked.value?`◉`:`◯`:``),c=t(()=>`item${r.value?` is-checkable`:``}${i.value?` is-checked`:``}`),l=()=>f`
|
|
1822
|
+
<span class="item-check" aria-hidden="true">${()=>s.value}</span>
|
|
1823
|
+
<span class="icon-slot"><slot name="icon"></slot></span>
|
|
1824
|
+
<span class="item-label"><slot></slot></span>
|
|
1825
|
+
`;return f`
|
|
1826
|
+
<style>
|
|
1827
|
+
${n}
|
|
1828
|
+
</style>
|
|
1829
|
+
${()=>r.value?f`
|
|
1830
|
+
<div
|
|
1831
|
+
class="${()=>c.value}"
|
|
1832
|
+
tabindex="-1"
|
|
1833
|
+
role="${()=>o.value}"
|
|
1834
|
+
aria-checked="${()=>String(i.value)}"
|
|
1835
|
+
aria-disabled="${()=>String(e.disabled.value)}">
|
|
1836
|
+
${l()}
|
|
1837
|
+
</div>
|
|
1838
|
+
`:f`
|
|
1839
|
+
<div
|
|
1840
|
+
class="${()=>c.value}"
|
|
1841
|
+
tabindex="-1"
|
|
1842
|
+
role="menuitem"
|
|
1843
|
+
aria-disabled="${()=>String(e.disabled.value)}">
|
|
1844
|
+
<span class="icon-slot"><slot name="icon"></slot></span>
|
|
1845
|
+
<span class="item-label"><slot></slot></span>
|
|
1846
|
+
</div>
|
|
1847
|
+
`}
|
|
1848
|
+
`},tag:`bit-menu-item`});o({setup(){return f`<style>
|
|
1849
|
+
@layer buildit.base {
|
|
1850
|
+
:host {
|
|
1851
|
+
display: block;
|
|
1852
|
+
margin: var(--size-1) 0;
|
|
1853
|
+
border-top: var(--border) solid var(--color-contrast-200);
|
|
1854
|
+
}
|
|
1855
|
+
}
|
|
1856
|
+
</style>`},tag:`bit-menu-separator`});var oi=o({props:{color:{default:void 0},disabled:{default:!1},placement:{default:`bottom-start`},size:{default:void 0}},setup({emit:t,host:n,props:r}){let a=i(`menu`),o=y(!1),s=null,l=null;function u(){return Array.from(n.querySelectorAll(`bit-menu-item:not([disabled])`))}let p=-1,m=rn({getIndex:()=>p,getItems:u,isItemDisabled:e=>e.hasAttribute(`disabled`),setIndex:e=>{p=e,u()[e]?.focus()}});function _(){!l||!s||D(s,l,{middleware:[E(4),T({padding:6}),O({padding:6})],placement:r.placement.value})}let v=an({getBoundaryElement:()=>n,getPanelElement:()=>l,getTriggerElement:()=>s,isDisabled:()=>!!r.disabled.value,isOpen:()=>o.value,onClose:e=>t(`close`,{reason:e}),onOpen:e=>t(`open`,{reason:e}),positioner:{floating:()=>l,reference:()=>s,update:_},setOpen:e=>{o.value=e,e||m.reset()}}),b=e=>{let r=e.getAttribute(`type`);if(r===`checkbox`)e.hasAttribute(`checked`)?e.removeAttribute(`checked`):e.setAttribute(`checked`,``);else if(r===`radio`){for(let e of n.querySelectorAll(`bit-menu-item[type="radio"]`))e.removeAttribute(`checked`);e.setAttribute(`checked`,``)}let i=e.getAttribute(`value`)??``;t(`select`,{checked:r===`checkbox`||r===`radio`?e.hasAttribute(`checked`):void 0,value:i}),r!==`checkbox`&&r!==`radio`&&v.close({reason:`programmatic`})};function x(e){if(!o.value){(e.key===`Enter`||e.key===` `||e.key===`ArrowDown`)&&(e.preventDefault(),v.open(),requestAnimationFrame(()=>m.first()));return}switch(e.key){case` `:{e.preventDefault();let t=m.getActiveItem();t&&b(t);break}case`ArrowDown`:e.preventDefault(),m.next();break;case`ArrowUp`:e.preventDefault(),m.prev();break;case`End`:e.preventDefault(),m.last();break;case`Enter`:{e.preventDefault();let t=m.getActiveItem();t&&b(t);break}case`Escape`:e.preventDefault(),v.close({reason:`escape`});break;case`Home`:e.preventDefault(),m.first();break;case`Tab`:v.close({reason:`programmatic`});break}}return h(()=>{let t=n.shadowRoot?.querySelector(`slot[name="trigger"]`);l=n.shadowRoot?.querySelector(`.menu-panel`)??null;let i=null;function u(){i&&(i.removeEventListener(`click`,f),i.removeEventListener(`keydown`,x)),s=t?.assignedElements({flatten:!0})?.[0]??null,i=s,s&&(e(s,{controls:()=>a,disabled:()=>r.disabled.value,expanded:()=>o.value?`true`:`false`,haspopup:`menu`}),s.addEventListener(`click`,f),s.addEventListener(`keydown`,x))}function f(){v.toggle()}g(`trigger`,u),d(n,`click`,(e=>{if(!o.value)return;let t=e,n=t.composedPath().find(e=>e instanceof HTMLElement&&e.tagName===`BIT-MENU-ITEM`)??t.target?.closest(`bit-menu-item`)??null;!n||n.hasAttribute(`disabled`)||b(n)}));let p=v.bindOutsideClick(document);return c(()=>{l?.toggleAttribute(`data-open`,o.value)}),d(l,`keydown`,x),()=>{p(),i&&(i.removeEventListener(`click`,f),i.removeEventListener(`keydown`,x))}}),f`
|
|
1857
|
+
<style>
|
|
1858
|
+
${ri}${ii}
|
|
1859
|
+
</style>
|
|
1860
|
+
<slot name="trigger"></slot>
|
|
1861
|
+
<div class="menu-panel" id="${a}" role="menu" aria-orientation="vertical">
|
|
1862
|
+
<slot></slot>
|
|
1863
|
+
</div>
|
|
1864
|
+
`},tag:`bit-menu`}),si=`@layer buildit.base{:host{--_panel-bg:var(--popover-bg,var(--lightningcss-light,color-mix(in srgb, var(--color-contrast-50) 85%, transparent))var(--lightningcss-dark,color-mix(in srgb, var(--color-contrast-100) 85%, transparent)));--_panel-blur:var(--popover-panel-blur,var(--blur-md));--_panel-border-color:var(--popover-border-color,var(--lightningcss-light,color-mix(in srgb, var(--color-contrast-900) 8%, transparent))var(--lightningcss-dark,color-mix(in srgb, var(--color-contrast-100) 8%, transparent)));--_panel-shadow:var(--popover-shadow,var(--shadow-xl));display:inline-block;position:relative}.panel{inset:unset;box-sizing:border-box;min-width:var(--popover-min-width,12rem);max-width:var(--popover-max-width,24rem);max-height:var(--popover-max-height,min(70vh, 32rem));word-break:auto-phrase;overflow-wrap:anywhere;background:var(--_panel-bg);border:var(--border) solid var(--_panel-border-color);border-radius:var(--rounded-lg);box-shadow:var(--_panel-shadow);opacity:0;-webkit-backdrop-filter:blur(var(--_panel-blur));backdrop-filter:blur(var(--_panel-blur));transform:scale(.96) translateY(var(--size-2));transition:var(--_motion-transition,opacity var(--transition-fast), transform var(--transition-normal) cubic-bezier(.16, 1, .3, 1), display var(--transition-fast) allow-discrete, overlay var(--transition-fast) allow-discrete);margin:0;padding:0;position:fixed;overflow:auto}.panel:popover-open{opacity:1;transform:scale(1)translateY(0)}@starting-style{.panel:popover-open{opacity:0;transform:scale(.96) translateY(var(--size-2))}}}`,ci=8,li=new Set([`click`,`hover`,`focus`]);function ui(e){let t=String(e).split(`,`).map(e=>e.trim()).filter(e=>li.has(e));return t.length>0?t:[`click`]}var di=o({props:{disabled:{default:!1},label:{default:void 0},offset:{default:ci},open:{default:void 0},placement:{default:`bottom`},trigger:{default:`click`}},setup({emit:e,host:n,props:r}){let a=y(!1),o=i(`popover`),s=null,c=null,l=null,u=t(()=>ui(r.trigger.value));function d(){!s||!c||D(c,s,{middleware:[E(r.offset.value??ci),T(),O({padding:8})],placement:r.placement.value}).then(e=>{s&&(s.dataset.placement=e)})}function p(){a.value=!0,c?.setAttribute(`aria-expanded`,`true`),s&&!s.matches(`:popover-open`)&&s.showPopover(),c&&s&&(l?.(),l=C(c,s,d)),d()}function m(){l?.(),l=null,c?.setAttribute(`aria-expanded`,`false`),a.value=!1,s?.matches(`:popover-open`)&&s.hidePopover()}function _(){r.open.value===void 0&&(r.disabled.value||a.value||(p(),e(`open`)))}function v(){r.open.value===void 0&&a.value&&(m(),e(`close`))}function b(){a.value?v():_()}function x(e){e.key===`Escape`&&v()}function w(e){if(!a.value)return;let t=e.composedPath();t.includes(n)||s&&t.includes(s)||c&&t.includes(c)||v()}function k(e){let t=e.relatedTarget;t&&s?.contains(t)||t&&c?.contains(t)||v()}return h(()=>{let t=n.shadowRoot?.querySelector(`slot:not([name])`);if(!t)return;let i=()=>{d();let e=t.assignedElements({flatten:!0})[0];if(!e)return;c=e,e.setAttribute(`aria-controls`,o),e.setAttribute(`aria-haspopup`,`dialog`),e.setAttribute(`aria-expanded`,String(a.value)),e.setAttribute(`aria-disabled`,String(!!r.disabled.value));let n=u.value;n.includes(`click`)&&(e.addEventListener(`click`,b),document.addEventListener(`click`,w,{capture:!0})),n.includes(`hover`)&&(e.addEventListener(`pointerenter`,_),e.addEventListener(`pointerleave`,v),s?.addEventListener(`pointerenter`,_),s?.addEventListener(`pointerleave`,v)),n.includes(`focus`)&&(e.addEventListener(`focusin`,_),e.addEventListener(`focusout`,k),s?.addEventListener(`focusout`,k)),document.addEventListener(`keydown`,x)},d=()=>{c&&=(c.removeAttribute(`aria-controls`),c.removeAttribute(`aria-haspopup`),c.removeAttribute(`aria-expanded`),c.removeAttribute(`aria-disabled`),c.removeEventListener(`click`,b),c.removeEventListener(`pointerenter`,_),c.removeEventListener(`pointerleave`,v),c.removeEventListener(`focusin`,_),c.removeEventListener(`focusout`,k),s?.removeEventListener(`pointerenter`,_),s?.removeEventListener(`pointerleave`,v),s?.removeEventListener(`focusout`,k),document.removeEventListener(`click`,w,{capture:!0}),document.removeEventListener(`keydown`,x),null)};return g(`default`,i),S(r.open,t=>{t!=null&&(t?(p(),e(`open`)):(m(),e(`close`)))}),S(r.trigger,i),S(r.disabled,e=>{c?.setAttribute(`aria-disabled`,String(!!e)),e&&v()}),()=>{d(),l?.(),l=null,s?.matches(`:popover-open`)&&s.hidePopover()}}),f`
|
|
1865
|
+
<slot></slot>
|
|
1866
|
+
<div
|
|
1867
|
+
class="panel"
|
|
1868
|
+
part="panel"
|
|
1869
|
+
id="${o}"
|
|
1870
|
+
role="dialog"
|
|
1871
|
+
aria-modal="false"
|
|
1872
|
+
popover="manual"
|
|
1873
|
+
:aria-label="${()=>r.label.value??null}"
|
|
1874
|
+
:aria-hidden="${()=>String(!a.value)}"
|
|
1875
|
+
ref=${e=>{s=e}}>
|
|
1876
|
+
<slot name="content"></slot>
|
|
1877
|
+
</div>
|
|
1878
|
+
`},styles:[M,si],tag:`bit-popover`}),fi=`.tooltip{inset:unset;padding:var(--size-1-5) var(--size-3);border:var(--_tooltip-border-width,var(--border-0)) solid var(--_tooltip-border-color,transparent);transform-origin:50%;will-change:opacity, transform, filter;margin:0;overflow:visible}@layer buildit.base{:host{display:inline-block;position:relative}.tooltip{--_tooltip-fg:var(--lightningcss-light,var(--color-contrast-100))var(--lightningcss-dark,var(--color-contrast-900));--_tooltip-bg:var(--lightningcss-light,color-mix(in srgb, var(--color-contrast-900) 80%, transparent))var(--lightningcss-dark,color-mix(in srgb, var(--color-contrast-100) 80%, transparent));--_tooltip-border-width:var(--border);--_tooltip-border-color:var(--lightningcss-light,color-mix(in srgb, var(--color-contrast-100) 12%, transparent))var(--lightningcss-dark,color-mix(in srgb, var(--color-contrast-900) 12%, transparent));--_tooltip-shadow:var(--shadow-md);--_tooltip-closed-transform:translateY(var(--size-1)) scale(.98);max-width:var(--tooltip-max-width,var(--size-72));font-size:var(--text-xs);font-weight:var(--font-medium);line-height:var(--leading-snug);color:var(--_tooltip-fg);word-break:auto-phrase;white-space:pre-line;pointer-events:none;background:var(--_tooltip-bg);border-radius:var(--rounded);box-shadow:var(--_tooltip-shadow);opacity:0;-webkit-backdrop-filter:blur(var(--blur-sm));backdrop-filter:blur(var(--blur-sm));transform:var(--_tooltip-closed-transform);transition:opacity var(--transition-fast), transform var(--transition-normal) var(--ease-out), display var(--transition-fast) allow-discrete, overlay var(--transition-fast) allow-discrete;position:fixed}.tooltip[data-placement=top]{--_tooltip-closed-transform:translateY(var(--size-2)) scale(.96)}.tooltip[data-placement=bottom]{--_tooltip-closed-transform:translateY(calc(var(--size-2) * -1)) scale(.96)}.tooltip[data-placement=left]{--_tooltip-closed-transform:translateX(var(--size-2)) scale(.96)}.tooltip[data-placement=right]{--_tooltip-closed-transform:translateX(calc(var(--size-2) * -1)) scale(.96)}.tooltip:popover-open{opacity:1;transition:opacity var(--transition-normal), transform var(--transition-spring), display var(--transition-normal) allow-discrete, overlay var(--transition-normal) allow-discrete;transform:translate(0)scale(1)}@starting-style{.tooltip:popover-open{opacity:0;transform:var(--_tooltip-closed-transform)}}}@layer buildit.variants{:host([variant=light]) .tooltip{--_tooltip-fg:var(--lightningcss-light,var(--color-contrast-900))var(--lightningcss-dark,var(--color-contrast-100));--_tooltip-bg:var(--lightningcss-light,color-mix(in srgb, var(--color-contrast-100) 80%, transparent))var(--lightningcss-dark,color-mix(in srgb, var(--color-contrast-900) 80%, transparent));--_tooltip-border-color:var(--lightningcss-light,color-mix(in srgb, var(--color-contrast-900) 12%, transparent))var(--lightningcss-dark,color-mix(in srgb, var(--color-contrast-100) 12%, transparent));--_tooltip-shadow:var(--shadow-md)}}@layer buildit.utilities{:host([size=sm]) .tooltip{font-size:var(--text-xs)}:host([size=lg]) .tooltip{font-size:var(--text-base)}}`,pi=8,mi=4,hi=o({props:{"close-delay":{default:0},content:{default:``},delay:{default:0},disabled:{default:!1},open:{default:void 0},placement:{default:`top`},size:{default:void 0},trigger:{default:`hover,focus`},variant:{default:void 0}},setup({host:e,props:n}){let r=y(!1),a=y(`top`),o=null,s=null,c=null,l=null,u=i(`tooltip`),d=t(()=>String(n.trigger.value).split(`,`).map(e=>e.trim()).filter(Boolean));function p(){return(e.shadowRoot?.querySelector(`slot:not([name])`))?.assignedElements({flatten:!0})?.[0]??null}function m(){if(!l)return;let e=p();e&&w(e,l,{middleware:[E(pi),T(),O({padding:6})],placement:n.placement.value}).then(({placement:e,x:t,y:n})=>{if(!l)return;let r=e.split(`-`)[0],i=r===`left`?t-mi:t;l.style.left=`${i}px`,l.style.top=`${n}px`,a.value=r})}function _(){n.open.value!==void 0||n.disabled.value||!n.content.value&&!(((e.shadowRoot?.querySelector(`slot[name="content"]`))?.assignedNodes({flatten:!0}).length??0)>0)||(c&&=(clearTimeout(c),null),s&&clearTimeout(s),s=setTimeout(()=>{r.value=!0,l&&!l.matches(`:popover-open`)&&l.showPopover();let e=p();e&&l?(o?.(),o=C(e,l,m)):requestAnimationFrame(()=>m())},Number(n.delay.value)||0))}function v(){if(n.open.value!==void 0)return;s&&=(clearTimeout(s),null);let e=Number(n[`close-delay`].value)||0;e>0?(c&&clearTimeout(c),c=setTimeout(()=>{c=null,b()},e)):b()}function b(){o?.(),o=null,r.value=!1,l?.matches(`:popover-open`)&&l.hidePopover()}function x(){r.value?v():_()}h(()=>{let t=e.shadowRoot?.querySelector(`slot:not([name])`);if(!t)return;let i=()=>{a();let e=t.assignedElements({flatten:!0})[0];if(!e)return;e.setAttribute(`aria-describedby`,u);let n=d.value;n.includes(`hover`)&&(e.addEventListener(`pointerenter`,_),e.addEventListener(`pointerleave`,v)),n.includes(`focus`)&&(e.addEventListener(`focusin`,_),e.addEventListener(`focusout`,v)),n.includes(`click`)&&e.addEventListener(`click`,x),document.addEventListener(`keydown`,D)},a=()=>{let e=t.assignedElements({flatten:!0})[0];e&&(e.removeAttribute(`aria-describedby`),e.removeEventListener(`pointerenter`,_),e.removeEventListener(`pointerleave`,v),e.removeEventListener(`focusin`,_),e.removeEventListener(`focusout`,v),e.removeEventListener(`click`,x),document.removeEventListener(`keydown`,D))};return g(`default`,i),S(n.open,e=>{if(e!=null)if(e){r.value=!0,l&&!l.matches(`:popover-open`)&&l.showPopover();let e=p();e&&l?(o?.(),o=C(e,l,m)):requestAnimationFrame(()=>m())}else b()}),()=>{a(),s&&clearTimeout(s),c&&clearTimeout(c),o?.(),o=null,l?.matches(`:popover-open`)&&l.hidePopover()}});function D(e){e.key===`Escape`&&v()}return f`
|
|
1879
|
+
<slot></slot>
|
|
1880
|
+
<div
|
|
1881
|
+
class="tooltip"
|
|
1882
|
+
part="tooltip"
|
|
1883
|
+
id="${u}"
|
|
1884
|
+
role="tooltip"
|
|
1885
|
+
popover="manual"
|
|
1886
|
+
ref=${e=>{l=e}}
|
|
1887
|
+
:data-placement="${a}"
|
|
1888
|
+
:aria-hidden="${()=>String(!r.value)}">
|
|
1889
|
+
<slot name="content">${()=>n.content.value}</slot>
|
|
1890
|
+
</div>
|
|
1891
|
+
`},styles:[B,fi],tag:`bit-tooltip`});export{Ct as ACCORDION_CTX,Ot as ACCORDION_ITEM_TAG,wt as ACCORDION_TAG,qt as ALERT_TAG,ae as AVATAR_GROUP_TAG,ie as AVATAR_TAG,Yt as BADGE_TAG,Nr as BOX_TAG,Y as BREADCRUMB_ITEM_TAG,ce as BREADCRUMB_TAG,ot as BUTTON_GROUP_CTX,st as BUTTON_GROUP_TAG,lt as BUTTON_TAG,de as CARD_TAG,An as CHECKBOX_GROUP_CTX,jn as CHECKBOX_GROUP_TAG,Un as CHECKBOX_TAG,Qt as CHIP_TAG,er as COMBOBOX_OPTION_TAG,tr as COMBOBOX_TAG,ei as DIALOG_TAG,ni as DRAWER_TAG,sr as FILE_INPUT_TAG,$ as FORM_CTX,cr as FORM_TAG,Pr as GRID_ITEM_TAG,Br as GRID_TAG,fr as INPUT_TAG,ai as MENU_ITEM_TAG,oi as MENU_TAG,mr as NUMBER_INPUT_TAG,hr as OTP_INPUT_TAG,ft as PAGINATION_TAG,di as POPOVER_TAG,en as PROGRESS_TAG,_r as RADIO_GROUP_CTX,vr as RADIO_GROUP_TAG,br as RADIO_TAG,Cr as RATING_TAG,Tr as SELECT_TAG,pt as SEPARATOR_TAG,Wr as SIDEBAR_CTX,Kr as SIDEBAR_GROUP_TAG,qr as SIDEBAR_ITEM_TAG,Gr as SIDEBAR_TAG,ln as SKELETON_TAG,Dr as SLIDER_TAG,kr as SWITCH_TAG,bt as TABLE_TAG,Et as TABS_CTX,Dt as TABS_TAG,kt as TAB_ITEM_TAG,At as TAB_PANEL_TAG,_t as TD_TAG,jr as TEXTAREA_TAG,xt as TEXT_TAG,gt as TH_TAG,fn as TOAST_TAG,hi as TOOLTIP_TAG,ht as TR_TAG,Mt as checkIcon,Nt as checkIconHTML,Pt as chevronDownIcon,Ft as chevronLeftIcon,It as chevronRightIcon,zt as clearIcon,jt as closeIcon,Lt as eyeIcon,Rt as eyeOffIcon,Vt as fileIcon,Ht as minusIcon,Ut as plusIcon,mn as toast,Bt as uploadIcon};
|
|
1892
|
+
//# sourceMappingURL=buildit.js.map
|