@tessera-ui/core 0.4.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/LICENSE +21 -0
- package/README.md +225 -0
- package/dist/cjs/aria-CeYIvz3U.js +94 -0
- package/dist/cjs/aria-CeYIvz3U.js.map +1 -0
- package/dist/cjs/index-Bel_x2OU.js +2401 -0
- package/dist/cjs/index-Bel_x2OU.js.map +1 -0
- package/dist/cjs/index.cjs.js +155 -0
- package/dist/cjs/index.cjs.js.map +1 -0
- package/dist/cjs/loader.cjs.js +15 -0
- package/dist/cjs/loader.cjs.js.map +1 -0
- package/dist/cjs/lucide-B1gCqJ3G.js +28324 -0
- package/dist/cjs/lucide-B1gCqJ3G.js.map +1 -0
- package/dist/cjs/tessera-ui.cjs.js +27 -0
- package/dist/cjs/tessera-ui.cjs.js.map +1 -0
- package/dist/cjs/ts-accordion-item.cjs.entry.js +65 -0
- package/dist/cjs/ts-accordion-item.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-accordion.cjs.entry.js +36 -0
- package/dist/cjs/ts-accordion.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-alert.cjs.entry.js +60 -0
- package/dist/cjs/ts-alert.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-avatar.cjs.entry.js +54 -0
- package/dist/cjs/ts-avatar.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-badge.cjs.entry.js +38 -0
- package/dist/cjs/ts-badge.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-banner.cjs.entry.js +67 -0
- package/dist/cjs/ts-banner.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-breadcrumb-item.cjs.entry.js +28 -0
- package/dist/cjs/ts-breadcrumb-item.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-breadcrumb.cjs.entry.js +35 -0
- package/dist/cjs/ts-breadcrumb.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-button.cjs.entry.js +88 -0
- package/dist/cjs/ts-button.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-card.cjs.entry.js +35 -0
- package/dist/cjs/ts-card.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-checkbox.cjs.entry.js +68 -0
- package/dist/cjs/ts-checkbox.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-chip.cjs.entry.js +76 -0
- package/dist/cjs/ts-chip.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-container.cjs.entry.js +28 -0
- package/dist/cjs/ts-container.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-date-picker.cjs.entry.js +229 -0
- package/dist/cjs/ts-date-picker.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-dialog.cjs.entry.js +109 -0
- package/dist/cjs/ts-dialog.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-divider.cjs.entry.js +33 -0
- package/dist/cjs/ts-divider.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-drawer.cjs.entry.js +113 -0
- package/dist/cjs/ts-drawer.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-empty-state.cjs.entry.js +32 -0
- package/dist/cjs/ts-empty-state.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-file-upload.cjs.entry.js +122 -0
- package/dist/cjs/ts-file-upload.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-grid.cjs.entry.js +37 -0
- package/dist/cjs/ts-grid.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-icon-CfbhgAgr.js +161 -0
- package/dist/cjs/ts-icon-CfbhgAgr.js.map +1 -0
- package/dist/cjs/ts-icon.cjs.entry.js +11 -0
- package/dist/cjs/ts-icon.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-input.cjs.entry.js +130 -0
- package/dist/cjs/ts-input.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-menu-item.cjs.entry.js +65 -0
- package/dist/cjs/ts-menu-item.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-menu.cjs.entry.js +155 -0
- package/dist/cjs/ts-menu.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-modal.cjs.entry.js +122 -0
- package/dist/cjs/ts-modal.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-nav-item.cjs.entry.js +48 -0
- package/dist/cjs/ts-nav-item.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-nav.cjs.entry.js +29 -0
- package/dist/cjs/ts-nav.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-pagination.cjs.entry.js +88 -0
- package/dist/cjs/ts-pagination.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-popover.cjs.entry.js +133 -0
- package/dist/cjs/ts-popover.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-progress.cjs.entry.js +46 -0
- package/dist/cjs/ts-progress.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-radio.cjs.entry.js +60 -0
- package/dist/cjs/ts-radio.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-row.cjs.entry.js +53 -0
- package/dist/cjs/ts-row.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-select.cjs.entry.js +221 -0
- package/dist/cjs/ts-select.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-skeleton.cjs.entry.js +55 -0
- package/dist/cjs/ts-skeleton.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-slider.cjs.entry.js +132 -0
- package/dist/cjs/ts-slider.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-spacer.cjs.entry.js +28 -0
- package/dist/cjs/ts-spacer.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-spinner.cjs.entry.js +30 -0
- package/dist/cjs/ts-spinner.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-stack.cjs.entry.js +34 -0
- package/dist/cjs/ts-stack.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-step.cjs.entry.js +74 -0
- package/dist/cjs/ts-step.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-stepper.cjs.entry.js +67 -0
- package/dist/cjs/ts-stepper.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-switch-group.cjs.entry.js +109 -0
- package/dist/cjs/ts-switch-group.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-switch-option.cjs.entry.js +42 -0
- package/dist/cjs/ts-switch-option.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-tab-panel.cjs.entry.js +30 -0
- package/dist/cjs/ts-tab-panel.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-table.cjs.entry.js +39 -0
- package/dist/cjs/ts-table.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-tabs.cjs.entry.js +124 -0
- package/dist/cjs/ts-tabs.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-textarea.cjs.entry.js +117 -0
- package/dist/cjs/ts-textarea.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-toast.cjs.entry.js +107 -0
- package/dist/cjs/ts-toast.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-toggle.cjs.entry.js +58 -0
- package/dist/cjs/ts-toggle.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-toolbar.cjs.entry.js +29 -0
- package/dist/cjs/ts-toolbar.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-tooltip.cjs.entry.js +82 -0
- package/dist/cjs/ts-tooltip.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-tree-item.cjs.entry.js +94 -0
- package/dist/cjs/ts-tree-item.cjs.entry.js.map +1 -0
- package/dist/cjs/ts-tree.cjs.entry.js +81 -0
- package/dist/cjs/ts-tree.cjs.entry.js.map +1 -0
- package/dist/collection/collection-manifest.json +64 -0
- package/dist/collection/components/accordion/accordion-item.css +75 -0
- package/dist/collection/components/accordion/accordion-item.js +157 -0
- package/dist/collection/components/accordion/accordion-item.js.map +1 -0
- package/dist/collection/components/accordion/accordion-item.stories.js +4 -0
- package/dist/collection/components/accordion/accordion-item.stories.js.map +1 -0
- package/dist/collection/components/accordion/accordion.css +31 -0
- package/dist/collection/components/accordion/accordion.js +72 -0
- package/dist/collection/components/accordion/accordion.js.map +1 -0
- package/dist/collection/components/accordion/accordion.stories.js +90 -0
- package/dist/collection/components/accordion/accordion.stories.js.map +1 -0
- package/dist/collection/components/alert/alert.css +118 -0
- package/dist/collection/components/alert/alert.js +181 -0
- package/dist/collection/components/alert/alert.js.map +1 -0
- package/dist/collection/components/alert/alert.stories.js +128 -0
- package/dist/collection/components/alert/alert.stories.js.map +1 -0
- package/dist/collection/components/avatar/avatar.css +63 -0
- package/dist/collection/components/avatar/avatar.js +185 -0
- package/dist/collection/components/avatar/avatar.js.map +1 -0
- package/dist/collection/components/avatar/avatar.stories.js +138 -0
- package/dist/collection/components/avatar/avatar.stories.js.map +1 -0
- package/dist/collection/components/badge/badge.css +67 -0
- package/dist/collection/components/badge/badge.js +160 -0
- package/dist/collection/components/badge/badge.js.map +1 -0
- package/dist/collection/components/badge/badge.stories.js +193 -0
- package/dist/collection/components/badge/badge.stories.js.map +1 -0
- package/dist/collection/components/banner/banner.css +129 -0
- package/dist/collection/components/banner/banner.js +226 -0
- package/dist/collection/components/banner/banner.js.map +1 -0
- package/dist/collection/components/banner/banner.stories.js +92 -0
- package/dist/collection/components/banner/banner.stories.js.map +1 -0
- package/dist/collection/components/breadcrumb/breadcrumb-item.css +44 -0
- package/dist/collection/components/breadcrumb/breadcrumb-item.js +95 -0
- package/dist/collection/components/breadcrumb/breadcrumb-item.js.map +1 -0
- package/dist/collection/components/breadcrumb/breadcrumb-item.stories.js +4 -0
- package/dist/collection/components/breadcrumb/breadcrumb-item.stories.js.map +1 -0
- package/dist/collection/components/breadcrumb/breadcrumb.css +26 -0
- package/dist/collection/components/breadcrumb/breadcrumb.js +65 -0
- package/dist/collection/components/breadcrumb/breadcrumb.js.map +1 -0
- package/dist/collection/components/breadcrumb/breadcrumb.stories.js +88 -0
- package/dist/collection/components/breadcrumb/breadcrumb.stories.js.map +1 -0
- package/dist/collection/components/button/button.css +260 -0
- package/dist/collection/components/button/button.js +347 -0
- package/dist/collection/components/button/button.js.map +1 -0
- package/dist/collection/components/button/button.stories.js +219 -0
- package/dist/collection/components/button/button.stories.js.map +1 -0
- package/dist/collection/components/card/card.css +108 -0
- package/dist/collection/components/card/card.js +130 -0
- package/dist/collection/components/card/card.js.map +1 -0
- package/dist/collection/components/card/card.stories.js +221 -0
- package/dist/collection/components/card/card.stories.js.map +1 -0
- package/dist/collection/components/checkbox/checkbox.css +115 -0
- package/dist/collection/components/checkbox/checkbox.js +282 -0
- package/dist/collection/components/checkbox/checkbox.js.map +1 -0
- package/dist/collection/components/checkbox/checkbox.stories.js +90 -0
- package/dist/collection/components/checkbox/checkbox.stories.js.map +1 -0
- package/dist/collection/components/chip/chip.css +210 -0
- package/dist/collection/components/chip/chip.js +253 -0
- package/dist/collection/components/chip/chip.js.map +1 -0
- package/dist/collection/components/chip/chip.stories.js +139 -0
- package/dist/collection/components/chip/chip.stories.js.map +1 -0
- package/dist/collection/components/container/container.css +47 -0
- package/dist/collection/components/container/container.js +76 -0
- package/dist/collection/components/container/container.js.map +1 -0
- package/dist/collection/components/container/container.stories.js +138 -0
- package/dist/collection/components/container/container.stories.js.map +1 -0
- package/dist/collection/components/date-picker/date-picker.css +233 -0
- package/dist/collection/components/date-picker/date-picker.js +462 -0
- package/dist/collection/components/date-picker/date-picker.js.map +1 -0
- package/dist/collection/components/date-picker/date-picker.stories.js +119 -0
- package/dist/collection/components/date-picker/date-picker.stories.js.map +1 -0
- package/dist/collection/components/dialog/dialog.css +128 -0
- package/dist/collection/components/dialog/dialog.js +264 -0
- package/dist/collection/components/dialog/dialog.js.map +1 -0
- package/dist/collection/components/dialog/dialog.stories.js +147 -0
- package/dist/collection/components/dialog/dialog.stories.js.map +1 -0
- package/dist/collection/components/divider/divider.css +94 -0
- package/dist/collection/components/divider/divider.js +99 -0
- package/dist/collection/components/divider/divider.js.map +1 -0
- package/dist/collection/components/divider/divider.stories.js +94 -0
- package/dist/collection/components/divider/divider.stories.js.map +1 -0
- package/dist/collection/components/drawer/drawer.css +202 -0
- package/dist/collection/components/drawer/drawer.js +288 -0
- package/dist/collection/components/drawer/drawer.js.map +1 -0
- package/dist/collection/components/drawer/drawer.stories.js +143 -0
- package/dist/collection/components/drawer/drawer.stories.js.map +1 -0
- package/dist/collection/components/empty-state/empty-state.css +112 -0
- package/dist/collection/components/empty-state/empty-state.js +131 -0
- package/dist/collection/components/empty-state/empty-state.js.map +1 -0
- package/dist/collection/components/empty-state/empty-state.stories.js +113 -0
- package/dist/collection/components/empty-state/empty-state.stories.js.map +1 -0
- package/dist/collection/components/file-upload/file-upload.css +84 -0
- package/dist/collection/components/file-upload/file-upload.js +277 -0
- package/dist/collection/components/file-upload/file-upload.js.map +1 -0
- package/dist/collection/components/file-upload/file-upload.stories.js +107 -0
- package/dist/collection/components/file-upload/file-upload.stories.js.map +1 -0
- package/dist/collection/components/grid/grid.css +11 -0
- package/dist/collection/components/grid/grid.js +125 -0
- package/dist/collection/components/grid/grid.js.map +1 -0
- package/dist/collection/components/grid/grid.stories.js +134 -0
- package/dist/collection/components/grid/grid.stories.js.map +1 -0
- package/dist/collection/components/icon/icon-registry.js +39 -0
- package/dist/collection/components/icon/icon-registry.js.map +1 -0
- package/dist/collection/components/icon/icon.css +54 -0
- package/dist/collection/components/icon/icon.js +239 -0
- package/dist/collection/components/icon/icon.js.map +1 -0
- package/dist/collection/components/icon/icon.stories.js +119 -0
- package/dist/collection/components/icon/icon.stories.js.map +1 -0
- package/dist/collection/components/input/input.css +155 -0
- package/dist/collection/components/input/input.js +583 -0
- package/dist/collection/components/input/input.js.map +1 -0
- package/dist/collection/components/input/input.stories.js +151 -0
- package/dist/collection/components/input/input.stories.js.map +1 -0
- package/dist/collection/components/menu/menu-item.css +77 -0
- package/dist/collection/components/menu/menu-item.js +176 -0
- package/dist/collection/components/menu/menu-item.js.map +1 -0
- package/dist/collection/components/menu/menu-item.stories.js +4 -0
- package/dist/collection/components/menu/menu-item.stories.js.map +1 -0
- package/dist/collection/components/menu/menu.css +81 -0
- package/dist/collection/components/menu/menu.js +295 -0
- package/dist/collection/components/menu/menu.js.map +1 -0
- package/dist/collection/components/menu/menu.stories.js +126 -0
- package/dist/collection/components/menu/menu.stories.js.map +1 -0
- package/dist/collection/components/modal/modal.css +131 -0
- package/dist/collection/components/modal/modal.js +339 -0
- package/dist/collection/components/modal/modal.js.map +1 -0
- package/dist/collection/components/modal/modal.stories.js +233 -0
- package/dist/collection/components/modal/modal.stories.js.map +1 -0
- package/dist/collection/components/nav/nav-item.css +73 -0
- package/dist/collection/components/nav/nav-item.js +154 -0
- package/dist/collection/components/nav/nav-item.js.map +1 -0
- package/dist/collection/components/nav/nav-item.stories.js +4 -0
- package/dist/collection/components/nav/nav-item.stories.js.map +1 -0
- package/dist/collection/components/nav/nav.css +48 -0
- package/dist/collection/components/nav/nav.js +78 -0
- package/dist/collection/components/nav/nav.js.map +1 -0
- package/dist/collection/components/nav/nav.stories.js +106 -0
- package/dist/collection/components/nav/nav.stories.js.map +1 -0
- package/dist/collection/components/pagination/pagination.css +102 -0
- package/dist/collection/components/pagination/pagination.js +220 -0
- package/dist/collection/components/pagination/pagination.js.map +1 -0
- package/dist/collection/components/pagination/pagination.stories.js +92 -0
- package/dist/collection/components/pagination/pagination.stories.js.map +1 -0
- package/dist/collection/components/popover/popover.css +150 -0
- package/dist/collection/components/popover/popover.js +305 -0
- package/dist/collection/components/popover/popover.js.map +1 -0
- package/dist/collection/components/popover/popover.stories.js +112 -0
- package/dist/collection/components/popover/popover.stories.js.map +1 -0
- package/dist/collection/components/progress/progress.css +89 -0
- package/dist/collection/components/progress/progress.js +205 -0
- package/dist/collection/components/progress/progress.js.map +1 -0
- package/dist/collection/components/progress/progress.stories.js +132 -0
- package/dist/collection/components/progress/progress.stories.js.map +1 -0
- package/dist/collection/components/radio/radio.css +110 -0
- package/dist/collection/components/radio/radio.js +234 -0
- package/dist/collection/components/radio/radio.js.map +1 -0
- package/dist/collection/components/radio/radio.stories.js +77 -0
- package/dist/collection/components/radio/radio.stories.js.map +1 -0
- package/dist/collection/components/row/row.css +42 -0
- package/dist/collection/components/row/row.js +179 -0
- package/dist/collection/components/row/row.js.map +1 -0
- package/dist/collection/components/row/row.stories.js +172 -0
- package/dist/collection/components/row/row.stories.js.map +1 -0
- package/dist/collection/components/select/select.css +200 -0
- package/dist/collection/components/select/select.js +527 -0
- package/dist/collection/components/select/select.js.map +1 -0
- package/dist/collection/components/select/select.stories.js +138 -0
- package/dist/collection/components/select/select.stories.js.map +1 -0
- package/dist/collection/components/skeleton/skeleton.css +89 -0
- package/dist/collection/components/skeleton/skeleton.js +161 -0
- package/dist/collection/components/skeleton/skeleton.js.map +1 -0
- package/dist/collection/components/skeleton/skeleton.stories.js +140 -0
- package/dist/collection/components/skeleton/skeleton.stories.js.map +1 -0
- package/dist/collection/components/slider/slider.css +123 -0
- package/dist/collection/components/slider/slider.js +344 -0
- package/dist/collection/components/slider/slider.js.map +1 -0
- package/dist/collection/components/slider/slider.stories.js +100 -0
- package/dist/collection/components/slider/slider.stories.js.map +1 -0
- package/dist/collection/components/spacer/spacer.css +13 -0
- package/dist/collection/components/spacer/spacer.js +74 -0
- package/dist/collection/components/spacer/spacer.js.map +1 -0
- package/dist/collection/components/spacer/spacer.stories.js +90 -0
- package/dist/collection/components/spacer/spacer.stories.js.map +1 -0
- package/dist/collection/components/spinner/spinner.css +49 -0
- package/dist/collection/components/spinner/spinner.js +98 -0
- package/dist/collection/components/spinner/spinner.js.map +1 -0
- package/dist/collection/components/spinner/spinner.stories.js +88 -0
- package/dist/collection/components/spinner/spinner.stories.js.map +1 -0
- package/dist/collection/components/stack/stack.css +10 -0
- package/dist/collection/components/stack/stack.js +82 -0
- package/dist/collection/components/stack/stack.js.map +1 -0
- package/dist/collection/components/stack/stack.stories.js +121 -0
- package/dist/collection/components/stack/stack.stories.js.map +1 -0
- package/dist/collection/components/stepper/step.css +172 -0
- package/dist/collection/components/stepper/step.js +205 -0
- package/dist/collection/components/stepper/step.js.map +1 -0
- package/dist/collection/components/stepper/step.stories.js +4 -0
- package/dist/collection/components/stepper/step.stories.js.map +1 -0
- package/dist/collection/components/stepper/stepper.css +32 -0
- package/dist/collection/components/stepper/stepper.js +137 -0
- package/dist/collection/components/stepper/stepper.js.map +1 -0
- package/dist/collection/components/stepper/stepper.stories.js +130 -0
- package/dist/collection/components/stepper/stepper.stories.js.map +1 -0
- package/dist/collection/components/switch-group/switch-group.css +51 -0
- package/dist/collection/components/switch-group/switch-group.js +237 -0
- package/dist/collection/components/switch-group/switch-group.js.map +1 -0
- package/dist/collection/components/switch-group/switch-group.stories.js +132 -0
- package/dist/collection/components/switch-group/switch-group.stories.js.map +1 -0
- package/dist/collection/components/switch-group/switch-option.css +64 -0
- package/dist/collection/components/switch-group/switch-option.js +150 -0
- package/dist/collection/components/switch-group/switch-option.js.map +1 -0
- package/dist/collection/components/switch-group/switch-option.stories.js +4 -0
- package/dist/collection/components/switch-group/switch-option.stories.js.map +1 -0
- package/dist/collection/components/table/table.css +112 -0
- package/dist/collection/components/table/table.js +151 -0
- package/dist/collection/components/table/table.js.map +1 -0
- package/dist/collection/components/table/table.stories.js +147 -0
- package/dist/collection/components/table/table.stories.js.map +1 -0
- package/dist/collection/components/tabs/tab-panel.css +11 -0
- package/dist/collection/components/tabs/tab-panel.js +116 -0
- package/dist/collection/components/tabs/tab-panel.js.map +1 -0
- package/dist/collection/components/tabs/tab-panel.stories.js +4 -0
- package/dist/collection/components/tabs/tab-panel.stories.js.map +1 -0
- package/dist/collection/components/tabs/tabs.css +134 -0
- package/dist/collection/components/tabs/tabs.js +213 -0
- package/dist/collection/components/tabs/tabs.js.map +1 -0
- package/dist/collection/components/tabs/tabs.stories.js +187 -0
- package/dist/collection/components/tabs/tabs.stories.js.map +1 -0
- package/dist/collection/components/textarea/textarea.css +146 -0
- package/dist/collection/components/textarea/textarea.js +526 -0
- package/dist/collection/components/textarea/textarea.js.map +1 -0
- package/dist/collection/components/textarea/textarea.stories.js +130 -0
- package/dist/collection/components/textarea/textarea.stories.js.map +1 -0
- package/dist/collection/components/toast/toast.css +166 -0
- package/dist/collection/components/toast/toast.js +291 -0
- package/dist/collection/components/toast/toast.js.map +1 -0
- package/dist/collection/components/toast/toast.stories.js +91 -0
- package/dist/collection/components/toast/toast.stories.js.map +1 -0
- package/dist/collection/components/toggle/toggle.css +99 -0
- package/dist/collection/components/toggle/toggle.js +220 -0
- package/dist/collection/components/toggle/toggle.js.map +1 -0
- package/dist/collection/components/toggle/toggle.stories.js +145 -0
- package/dist/collection/components/toggle/toggle.stories.js.map +1 -0
- package/dist/collection/components/toolbar/toolbar.css +89 -0
- package/dist/collection/components/toolbar/toolbar.js +89 -0
- package/dist/collection/components/toolbar/toolbar.js.map +1 -0
- package/dist/collection/components/toolbar/toolbar.stories.js +131 -0
- package/dist/collection/components/toolbar/toolbar.stories.js.map +1 -0
- package/dist/collection/components/tooltip/tooltip.css +124 -0
- package/dist/collection/components/tooltip/tooltip.js +242 -0
- package/dist/collection/components/tooltip/tooltip.js.map +1 -0
- package/dist/collection/components/tooltip/tooltip.stories.js +186 -0
- package/dist/collection/components/tooltip/tooltip.stories.js.map +1 -0
- package/dist/collection/components/tree/tree-item.css +97 -0
- package/dist/collection/components/tree/tree-item.js +242 -0
- package/dist/collection/components/tree/tree-item.js.map +1 -0
- package/dist/collection/components/tree/tree-item.stories.js +4 -0
- package/dist/collection/components/tree/tree-item.stories.js.map +1 -0
- package/dist/collection/components/tree/tree.css +23 -0
- package/dist/collection/components/tree/tree.js +119 -0
- package/dist/collection/components/tree/tree.js.map +1 -0
- package/dist/collection/components/tree/tree.stories.js +121 -0
- package/dist/collection/components/tree/tree.stories.js.map +1 -0
- package/dist/collection/index.js +53 -0
- package/dist/collection/index.js.map +1 -0
- package/dist/collection/theme/tokens.js +109 -0
- package/dist/collection/theme/tokens.js.map +1 -0
- package/dist/collection/types/index.js +2 -0
- package/dist/collection/types/index.js.map +1 -0
- package/dist/collection/utils/aria.js +89 -0
- package/dist/collection/utils/aria.js.map +1 -0
- package/dist/collection/utils/dom.js +42 -0
- package/dist/collection/utils/dom.js.map +1 -0
- package/dist/collection/utils/events.js +20 -0
- package/dist/collection/utils/events.js.map +1 -0
- package/dist/components/index.d.ts +35 -0
- package/dist/components/index.js +2 -0
- package/dist/components/index.js.map +1 -0
- package/dist/components/p-6RDSLDuS.js +2 -0
- package/dist/components/p-6RDSLDuS.js.map +1 -0
- package/dist/components/p-B0ZXNFSa.js +2 -0
- package/dist/components/p-B0ZXNFSa.js.map +1 -0
- package/dist/components/p-BCgm2utU.js +2 -0
- package/dist/components/p-BCgm2utU.js.map +1 -0
- package/dist/components/p-BFN5hUo4.js +2 -0
- package/dist/components/p-BFN5hUo4.js.map +1 -0
- package/dist/components/p-BOxYojS-.js +9572 -0
- package/dist/components/p-BOxYojS-.js.map +1 -0
- package/dist/components/p-BP-fZfRb.js +2 -0
- package/dist/components/p-BP-fZfRb.js.map +1 -0
- package/dist/components/p-B_NL55YI.js +2 -0
- package/dist/components/p-B_NL55YI.js.map +1 -0
- package/dist/components/p-BcoU0ISN.js +2 -0
- package/dist/components/p-BcoU0ISN.js.map +1 -0
- package/dist/components/p-BdzH6wlc.js +2 -0
- package/dist/components/p-BdzH6wlc.js.map +1 -0
- package/dist/components/p-BeErYjKz.js +2 -0
- package/dist/components/p-BeErYjKz.js.map +1 -0
- package/dist/components/p-BjiDgszq.js +2 -0
- package/dist/components/p-BjiDgszq.js.map +1 -0
- package/dist/components/p-BjyTgfXe.js +2 -0
- package/dist/components/p-BjyTgfXe.js.map +1 -0
- package/dist/components/p-BlZHjan9.js +2 -0
- package/dist/components/p-BlZHjan9.js.map +1 -0
- package/dist/components/p-C7JaUlNB.js +2 -0
- package/dist/components/p-C7JaUlNB.js.map +1 -0
- package/dist/components/p-C8wd1644.js +2 -0
- package/dist/components/p-C8wd1644.js.map +1 -0
- package/dist/components/p-CEQXPxzU.js +2 -0
- package/dist/components/p-CEQXPxzU.js.map +1 -0
- package/dist/components/p-CGh7W07E.js +2 -0
- package/dist/components/p-CGh7W07E.js.map +1 -0
- package/dist/components/p-CHtE5caV.js +2 -0
- package/dist/components/p-CHtE5caV.js.map +1 -0
- package/dist/components/p-CSNeA_zh.js +2 -0
- package/dist/components/p-CSNeA_zh.js.map +1 -0
- package/dist/components/p-CbHlJvjF.js +2 -0
- package/dist/components/p-CbHlJvjF.js.map +1 -0
- package/dist/components/p-CkQOAizb.js +2 -0
- package/dist/components/p-CkQOAizb.js.map +1 -0
- package/dist/components/p-Cy_Ad-Jy.js +2 -0
- package/dist/components/p-Cy_Ad-Jy.js.map +1 -0
- package/dist/components/p-DD986daz.js +2 -0
- package/dist/components/p-DD986daz.js.map +1 -0
- package/dist/components/p-DFnNsZtI.js +2 -0
- package/dist/components/p-DFnNsZtI.js.map +1 -0
- package/dist/components/p-DMPxu5Po.js +2 -0
- package/dist/components/p-DMPxu5Po.js.map +1 -0
- package/dist/components/p-DMuI5d5r.js +2 -0
- package/dist/components/p-DMuI5d5r.js.map +1 -0
- package/dist/components/p-DPQ1o4MP.js +2 -0
- package/dist/components/p-DPQ1o4MP.js.map +1 -0
- package/dist/components/p-DTAVTqnc.js +2 -0
- package/dist/components/p-DTAVTqnc.js.map +1 -0
- package/dist/components/p-DhQ7X_TL.js +2 -0
- package/dist/components/p-DhQ7X_TL.js.map +1 -0
- package/dist/components/p-DkpyRqHf.js +2 -0
- package/dist/components/p-DkpyRqHf.js.map +1 -0
- package/dist/components/p-DlB-KfKY.js +2 -0
- package/dist/components/p-DlB-KfKY.js.map +1 -0
- package/dist/components/p-DooMF1E0.js +2 -0
- package/dist/components/p-DooMF1E0.js.map +1 -0
- package/dist/components/p-DwJ7Jt3k.js +2 -0
- package/dist/components/p-DwJ7Jt3k.js.map +1 -0
- package/dist/components/p-DwUH8YQW.js +2 -0
- package/dist/components/p-DwUH8YQW.js.map +1 -0
- package/dist/components/p-Fot2uNwg.js +2 -0
- package/dist/components/p-Fot2uNwg.js.map +1 -0
- package/dist/components/p-O8aQgWRZ.js +2 -0
- package/dist/components/p-O8aQgWRZ.js.map +1 -0
- package/dist/components/p-SopsdO_f.js +2 -0
- package/dist/components/p-SopsdO_f.js.map +1 -0
- package/dist/components/p-TFHAUMKT.js +2 -0
- package/dist/components/p-TFHAUMKT.js.map +1 -0
- package/dist/components/p-faVXXwqR.js +2 -0
- package/dist/components/p-faVXXwqR.js.map +1 -0
- package/dist/components/p-lpqZSiIf.js +2 -0
- package/dist/components/p-lpqZSiIf.js.map +1 -0
- package/dist/components/p-mfB_pP4L.js +2 -0
- package/dist/components/p-mfB_pP4L.js.map +1 -0
- package/dist/components/p-v-L32wKy.js +2 -0
- package/dist/components/p-v-L32wKy.js.map +1 -0
- package/dist/components/p-zveaarwa.js +2 -0
- package/dist/components/p-zveaarwa.js.map +1 -0
- package/dist/components/ts-accordion-item.d.ts +11 -0
- package/dist/components/ts-accordion-item.js +2 -0
- package/dist/components/ts-accordion-item.js.map +1 -0
- package/dist/components/ts-accordion.d.ts +11 -0
- package/dist/components/ts-accordion.js +2 -0
- package/dist/components/ts-accordion.js.map +1 -0
- package/dist/components/ts-alert.d.ts +11 -0
- package/dist/components/ts-alert.js +2 -0
- package/dist/components/ts-alert.js.map +1 -0
- package/dist/components/ts-avatar.d.ts +11 -0
- package/dist/components/ts-avatar.js +2 -0
- package/dist/components/ts-avatar.js.map +1 -0
- package/dist/components/ts-badge.d.ts +11 -0
- package/dist/components/ts-badge.js +2 -0
- package/dist/components/ts-badge.js.map +1 -0
- package/dist/components/ts-banner.d.ts +11 -0
- package/dist/components/ts-banner.js +2 -0
- package/dist/components/ts-banner.js.map +1 -0
- package/dist/components/ts-breadcrumb-item.d.ts +11 -0
- package/dist/components/ts-breadcrumb-item.js +2 -0
- package/dist/components/ts-breadcrumb-item.js.map +1 -0
- package/dist/components/ts-breadcrumb.d.ts +11 -0
- package/dist/components/ts-breadcrumb.js +2 -0
- package/dist/components/ts-breadcrumb.js.map +1 -0
- package/dist/components/ts-button.d.ts +11 -0
- package/dist/components/ts-button.js +2 -0
- package/dist/components/ts-button.js.map +1 -0
- package/dist/components/ts-card.d.ts +11 -0
- package/dist/components/ts-card.js +2 -0
- package/dist/components/ts-card.js.map +1 -0
- package/dist/components/ts-checkbox.d.ts +11 -0
- package/dist/components/ts-checkbox.js +2 -0
- package/dist/components/ts-checkbox.js.map +1 -0
- package/dist/components/ts-chip.d.ts +11 -0
- package/dist/components/ts-chip.js +2 -0
- package/dist/components/ts-chip.js.map +1 -0
- package/dist/components/ts-container.d.ts +11 -0
- package/dist/components/ts-container.js +2 -0
- package/dist/components/ts-container.js.map +1 -0
- package/dist/components/ts-date-picker.d.ts +11 -0
- package/dist/components/ts-date-picker.js +2 -0
- package/dist/components/ts-date-picker.js.map +1 -0
- package/dist/components/ts-dialog.d.ts +11 -0
- package/dist/components/ts-dialog.js +2 -0
- package/dist/components/ts-dialog.js.map +1 -0
- package/dist/components/ts-divider.d.ts +11 -0
- package/dist/components/ts-divider.js +2 -0
- package/dist/components/ts-divider.js.map +1 -0
- package/dist/components/ts-drawer.d.ts +11 -0
- package/dist/components/ts-drawer.js +2 -0
- package/dist/components/ts-drawer.js.map +1 -0
- package/dist/components/ts-empty-state.d.ts +11 -0
- package/dist/components/ts-empty-state.js +2 -0
- package/dist/components/ts-empty-state.js.map +1 -0
- package/dist/components/ts-file-upload.d.ts +11 -0
- package/dist/components/ts-file-upload.js +2 -0
- package/dist/components/ts-file-upload.js.map +1 -0
- package/dist/components/ts-grid.d.ts +11 -0
- package/dist/components/ts-grid.js +2 -0
- package/dist/components/ts-grid.js.map +1 -0
- package/dist/components/ts-icon.d.ts +11 -0
- package/dist/components/ts-icon.js +2 -0
- package/dist/components/ts-icon.js.map +1 -0
- package/dist/components/ts-input.d.ts +11 -0
- package/dist/components/ts-input.js +2 -0
- package/dist/components/ts-input.js.map +1 -0
- package/dist/components/ts-menu-item.d.ts +11 -0
- package/dist/components/ts-menu-item.js +2 -0
- package/dist/components/ts-menu-item.js.map +1 -0
- package/dist/components/ts-menu.d.ts +11 -0
- package/dist/components/ts-menu.js +2 -0
- package/dist/components/ts-menu.js.map +1 -0
- package/dist/components/ts-modal.d.ts +11 -0
- package/dist/components/ts-modal.js +2 -0
- package/dist/components/ts-modal.js.map +1 -0
- package/dist/components/ts-nav-item.d.ts +11 -0
- package/dist/components/ts-nav-item.js +2 -0
- package/dist/components/ts-nav-item.js.map +1 -0
- package/dist/components/ts-nav.d.ts +11 -0
- package/dist/components/ts-nav.js +2 -0
- package/dist/components/ts-nav.js.map +1 -0
- package/dist/components/ts-pagination.d.ts +11 -0
- package/dist/components/ts-pagination.js +2 -0
- package/dist/components/ts-pagination.js.map +1 -0
- package/dist/components/ts-popover.d.ts +11 -0
- package/dist/components/ts-popover.js +2 -0
- package/dist/components/ts-popover.js.map +1 -0
- package/dist/components/ts-progress.d.ts +11 -0
- package/dist/components/ts-progress.js +2 -0
- package/dist/components/ts-progress.js.map +1 -0
- package/dist/components/ts-radio.d.ts +11 -0
- package/dist/components/ts-radio.js +2 -0
- package/dist/components/ts-radio.js.map +1 -0
- package/dist/components/ts-row.d.ts +11 -0
- package/dist/components/ts-row.js +2 -0
- package/dist/components/ts-row.js.map +1 -0
- package/dist/components/ts-select.d.ts +11 -0
- package/dist/components/ts-select.js +2 -0
- package/dist/components/ts-select.js.map +1 -0
- package/dist/components/ts-skeleton.d.ts +11 -0
- package/dist/components/ts-skeleton.js +2 -0
- package/dist/components/ts-skeleton.js.map +1 -0
- package/dist/components/ts-slider.d.ts +11 -0
- package/dist/components/ts-slider.js +2 -0
- package/dist/components/ts-slider.js.map +1 -0
- package/dist/components/ts-spacer.d.ts +11 -0
- package/dist/components/ts-spacer.js +2 -0
- package/dist/components/ts-spacer.js.map +1 -0
- package/dist/components/ts-spinner.d.ts +11 -0
- package/dist/components/ts-spinner.js +2 -0
- package/dist/components/ts-spinner.js.map +1 -0
- package/dist/components/ts-stack.d.ts +11 -0
- package/dist/components/ts-stack.js +2 -0
- package/dist/components/ts-stack.js.map +1 -0
- package/dist/components/ts-step.d.ts +11 -0
- package/dist/components/ts-step.js +2 -0
- package/dist/components/ts-step.js.map +1 -0
- package/dist/components/ts-stepper.d.ts +11 -0
- package/dist/components/ts-stepper.js +2 -0
- package/dist/components/ts-stepper.js.map +1 -0
- package/dist/components/ts-switch-group.d.ts +11 -0
- package/dist/components/ts-switch-group.js +2 -0
- package/dist/components/ts-switch-group.js.map +1 -0
- package/dist/components/ts-switch-option.d.ts +11 -0
- package/dist/components/ts-switch-option.js +2 -0
- package/dist/components/ts-switch-option.js.map +1 -0
- package/dist/components/ts-tab-panel.d.ts +11 -0
- package/dist/components/ts-tab-panel.js +2 -0
- package/dist/components/ts-tab-panel.js.map +1 -0
- package/dist/components/ts-table.d.ts +11 -0
- package/dist/components/ts-table.js +2 -0
- package/dist/components/ts-table.js.map +1 -0
- package/dist/components/ts-tabs.d.ts +11 -0
- package/dist/components/ts-tabs.js +2 -0
- package/dist/components/ts-tabs.js.map +1 -0
- package/dist/components/ts-textarea.d.ts +11 -0
- package/dist/components/ts-textarea.js +2 -0
- package/dist/components/ts-textarea.js.map +1 -0
- package/dist/components/ts-toast.d.ts +11 -0
- package/dist/components/ts-toast.js +2 -0
- package/dist/components/ts-toast.js.map +1 -0
- package/dist/components/ts-toggle.d.ts +11 -0
- package/dist/components/ts-toggle.js +2 -0
- package/dist/components/ts-toggle.js.map +1 -0
- package/dist/components/ts-toolbar.d.ts +11 -0
- package/dist/components/ts-toolbar.js +2 -0
- package/dist/components/ts-toolbar.js.map +1 -0
- package/dist/components/ts-tooltip.d.ts +11 -0
- package/dist/components/ts-tooltip.js +2 -0
- package/dist/components/ts-tooltip.js.map +1 -0
- package/dist/components/ts-tree-item.d.ts +11 -0
- package/dist/components/ts-tree-item.js +2 -0
- package/dist/components/ts-tree-item.js.map +1 -0
- package/dist/components/ts-tree.d.ts +11 -0
- package/dist/components/ts-tree.js +2 -0
- package/dist/components/ts-tree.js.map +1 -0
- package/dist/components.d.ts +480 -0
- package/dist/components.json +12678 -0
- package/dist/esm/aria-lpqZSiIf.js +89 -0
- package/dist/esm/aria-lpqZSiIf.js.map +1 -0
- package/dist/esm/index-V8-ENixA.js +2373 -0
- package/dist/esm/index-V8-ENixA.js.map +1 -0
- package/dist/esm/index.js +102 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/loader.js +13 -0
- package/dist/esm/loader.js.map +1 -0
- package/dist/esm/lucide-BOxYojS-.js +26523 -0
- package/dist/esm/lucide-BOxYojS-.js.map +1 -0
- package/dist/esm/tessera-ui.js +23 -0
- package/dist/esm/tessera-ui.js.map +1 -0
- package/dist/esm/ts-accordion-item.entry.js +63 -0
- package/dist/esm/ts-accordion-item.entry.js.map +1 -0
- package/dist/esm/ts-accordion.entry.js +34 -0
- package/dist/esm/ts-accordion.entry.js.map +1 -0
- package/dist/esm/ts-alert.entry.js +58 -0
- package/dist/esm/ts-alert.entry.js.map +1 -0
- package/dist/esm/ts-avatar.entry.js +52 -0
- package/dist/esm/ts-avatar.entry.js.map +1 -0
- package/dist/esm/ts-badge.entry.js +36 -0
- package/dist/esm/ts-badge.entry.js.map +1 -0
- package/dist/esm/ts-banner.entry.js +65 -0
- package/dist/esm/ts-banner.entry.js.map +1 -0
- package/dist/esm/ts-breadcrumb-item.entry.js +26 -0
- package/dist/esm/ts-breadcrumb-item.entry.js.map +1 -0
- package/dist/esm/ts-breadcrumb.entry.js +33 -0
- package/dist/esm/ts-breadcrumb.entry.js.map +1 -0
- package/dist/esm/ts-button.entry.js +86 -0
- package/dist/esm/ts-button.entry.js.map +1 -0
- package/dist/esm/ts-card.entry.js +33 -0
- package/dist/esm/ts-card.entry.js.map +1 -0
- package/dist/esm/ts-checkbox.entry.js +66 -0
- package/dist/esm/ts-checkbox.entry.js.map +1 -0
- package/dist/esm/ts-chip.entry.js +74 -0
- package/dist/esm/ts-chip.entry.js.map +1 -0
- package/dist/esm/ts-container.entry.js +26 -0
- package/dist/esm/ts-container.entry.js.map +1 -0
- package/dist/esm/ts-date-picker.entry.js +227 -0
- package/dist/esm/ts-date-picker.entry.js.map +1 -0
- package/dist/esm/ts-dialog.entry.js +107 -0
- package/dist/esm/ts-dialog.entry.js.map +1 -0
- package/dist/esm/ts-divider.entry.js +31 -0
- package/dist/esm/ts-divider.entry.js.map +1 -0
- package/dist/esm/ts-drawer.entry.js +111 -0
- package/dist/esm/ts-drawer.entry.js.map +1 -0
- package/dist/esm/ts-empty-state.entry.js +30 -0
- package/dist/esm/ts-empty-state.entry.js.map +1 -0
- package/dist/esm/ts-file-upload.entry.js +120 -0
- package/dist/esm/ts-file-upload.entry.js.map +1 -0
- package/dist/esm/ts-grid.entry.js +35 -0
- package/dist/esm/ts-grid.entry.js.map +1 -0
- package/dist/esm/ts-icon-Jz9ioZag.js +155 -0
- package/dist/esm/ts-icon-Jz9ioZag.js.map +1 -0
- package/dist/esm/ts-icon.entry.js +5 -0
- package/dist/esm/ts-icon.entry.js.map +1 -0
- package/dist/esm/ts-input.entry.js +128 -0
- package/dist/esm/ts-input.entry.js.map +1 -0
- package/dist/esm/ts-menu-item.entry.js +63 -0
- package/dist/esm/ts-menu-item.entry.js.map +1 -0
- package/dist/esm/ts-menu.entry.js +153 -0
- package/dist/esm/ts-menu.entry.js.map +1 -0
- package/dist/esm/ts-modal.entry.js +120 -0
- package/dist/esm/ts-modal.entry.js.map +1 -0
- package/dist/esm/ts-nav-item.entry.js +46 -0
- package/dist/esm/ts-nav-item.entry.js.map +1 -0
- package/dist/esm/ts-nav.entry.js +27 -0
- package/dist/esm/ts-nav.entry.js.map +1 -0
- package/dist/esm/ts-pagination.entry.js +86 -0
- package/dist/esm/ts-pagination.entry.js.map +1 -0
- package/dist/esm/ts-popover.entry.js +131 -0
- package/dist/esm/ts-popover.entry.js.map +1 -0
- package/dist/esm/ts-progress.entry.js +44 -0
- package/dist/esm/ts-progress.entry.js.map +1 -0
- package/dist/esm/ts-radio.entry.js +58 -0
- package/dist/esm/ts-radio.entry.js.map +1 -0
- package/dist/esm/ts-row.entry.js +51 -0
- package/dist/esm/ts-row.entry.js.map +1 -0
- package/dist/esm/ts-select.entry.js +219 -0
- package/dist/esm/ts-select.entry.js.map +1 -0
- package/dist/esm/ts-skeleton.entry.js +53 -0
- package/dist/esm/ts-skeleton.entry.js.map +1 -0
- package/dist/esm/ts-slider.entry.js +130 -0
- package/dist/esm/ts-slider.entry.js.map +1 -0
- package/dist/esm/ts-spacer.entry.js +26 -0
- package/dist/esm/ts-spacer.entry.js.map +1 -0
- package/dist/esm/ts-spinner.entry.js +28 -0
- package/dist/esm/ts-spinner.entry.js.map +1 -0
- package/dist/esm/ts-stack.entry.js +32 -0
- package/dist/esm/ts-stack.entry.js.map +1 -0
- package/dist/esm/ts-step.entry.js +72 -0
- package/dist/esm/ts-step.entry.js.map +1 -0
- package/dist/esm/ts-stepper.entry.js +65 -0
- package/dist/esm/ts-stepper.entry.js.map +1 -0
- package/dist/esm/ts-switch-group.entry.js +107 -0
- package/dist/esm/ts-switch-group.entry.js.map +1 -0
- package/dist/esm/ts-switch-option.entry.js +40 -0
- package/dist/esm/ts-switch-option.entry.js.map +1 -0
- package/dist/esm/ts-tab-panel.entry.js +28 -0
- package/dist/esm/ts-tab-panel.entry.js.map +1 -0
- package/dist/esm/ts-table.entry.js +37 -0
- package/dist/esm/ts-table.entry.js.map +1 -0
- package/dist/esm/ts-tabs.entry.js +122 -0
- package/dist/esm/ts-tabs.entry.js.map +1 -0
- package/dist/esm/ts-textarea.entry.js +115 -0
- package/dist/esm/ts-textarea.entry.js.map +1 -0
- package/dist/esm/ts-toast.entry.js +105 -0
- package/dist/esm/ts-toast.entry.js.map +1 -0
- package/dist/esm/ts-toggle.entry.js +56 -0
- package/dist/esm/ts-toggle.entry.js.map +1 -0
- package/dist/esm/ts-toolbar.entry.js +27 -0
- package/dist/esm/ts-toolbar.entry.js.map +1 -0
- package/dist/esm/ts-tooltip.entry.js +80 -0
- package/dist/esm/ts-tooltip.entry.js.map +1 -0
- package/dist/esm/ts-tree-item.entry.js +92 -0
- package/dist/esm/ts-tree-item.entry.js.map +1 -0
- package/dist/esm/ts-tree.entry.js +79 -0
- package/dist/esm/ts-tree.entry.js.map +1 -0
- package/dist/index.cjs.js +1 -0
- package/dist/index.js +1 -0
- package/dist/tessera-ui/index.esm.js +2 -0
- package/dist/tessera-ui/index.esm.js.map +1 -0
- package/dist/tessera-ui/p-0424cd55.entry.js +2 -0
- package/dist/tessera-ui/p-0424cd55.entry.js.map +1 -0
- package/dist/tessera-ui/p-04522bf9.entry.js +2 -0
- package/dist/tessera-ui/p-04522bf9.entry.js.map +1 -0
- package/dist/tessera-ui/p-04aa8b90.entry.js +2 -0
- package/dist/tessera-ui/p-04aa8b90.entry.js.map +1 -0
- package/dist/tessera-ui/p-080eaf89.entry.js +2 -0
- package/dist/tessera-ui/p-080eaf89.entry.js.map +1 -0
- package/dist/tessera-ui/p-0ec061e5.entry.js +2 -0
- package/dist/tessera-ui/p-0ec061e5.entry.js.map +1 -0
- package/dist/tessera-ui/p-122e43b7.entry.js +2 -0
- package/dist/tessera-ui/p-122e43b7.entry.js.map +1 -0
- package/dist/tessera-ui/p-16bb8ca8.entry.js +2 -0
- package/dist/tessera-ui/p-16bb8ca8.entry.js.map +1 -0
- package/dist/tessera-ui/p-16fc632b.entry.js +2 -0
- package/dist/tessera-ui/p-16fc632b.entry.js.map +1 -0
- package/dist/tessera-ui/p-1d73f6c9.entry.js +2 -0
- package/dist/tessera-ui/p-1d73f6c9.entry.js.map +1 -0
- package/dist/tessera-ui/p-24305379.entry.js +2 -0
- package/dist/tessera-ui/p-24305379.entry.js.map +1 -0
- package/dist/tessera-ui/p-25f77cc9.entry.js +2 -0
- package/dist/tessera-ui/p-25f77cc9.entry.js.map +1 -0
- package/dist/tessera-ui/p-35eb8496.entry.js +2 -0
- package/dist/tessera-ui/p-35eb8496.entry.js.map +1 -0
- package/dist/tessera-ui/p-3aec66b4.entry.js +2 -0
- package/dist/tessera-ui/p-3aec66b4.entry.js.map +1 -0
- package/dist/tessera-ui/p-4277460b.entry.js +2 -0
- package/dist/tessera-ui/p-4277460b.entry.js.map +1 -0
- package/dist/tessera-ui/p-441310f7.entry.js +2 -0
- package/dist/tessera-ui/p-441310f7.entry.js.map +1 -0
- package/dist/tessera-ui/p-491e1a75.entry.js +2 -0
- package/dist/tessera-ui/p-491e1a75.entry.js.map +1 -0
- package/dist/tessera-ui/p-50d092ce.entry.js +2 -0
- package/dist/tessera-ui/p-50d092ce.entry.js.map +1 -0
- package/dist/tessera-ui/p-50efadf3.entry.js +2 -0
- package/dist/tessera-ui/p-50efadf3.entry.js.map +1 -0
- package/dist/tessera-ui/p-53846d59.entry.js +2 -0
- package/dist/tessera-ui/p-53846d59.entry.js.map +1 -0
- package/dist/tessera-ui/p-56f2b070.entry.js +2 -0
- package/dist/tessera-ui/p-56f2b070.entry.js.map +1 -0
- package/dist/tessera-ui/p-6760f922.entry.js +2 -0
- package/dist/tessera-ui/p-6760f922.entry.js.map +1 -0
- package/dist/tessera-ui/p-69bb11ed.entry.js +2 -0
- package/dist/tessera-ui/p-69bb11ed.entry.js.map +1 -0
- package/dist/tessera-ui/p-6d35a60c.entry.js +2 -0
- package/dist/tessera-ui/p-6d35a60c.entry.js.map +1 -0
- package/dist/tessera-ui/p-6ec285ad.entry.js +2 -0
- package/dist/tessera-ui/p-6ec285ad.entry.js.map +1 -0
- package/dist/tessera-ui/p-708d4eb5.entry.js +2 -0
- package/dist/tessera-ui/p-708d4eb5.entry.js.map +1 -0
- package/dist/tessera-ui/p-79ff8ceb.entry.js +2 -0
- package/dist/tessera-ui/p-79ff8ceb.entry.js.map +1 -0
- package/dist/tessera-ui/p-7e531195.entry.js +2 -0
- package/dist/tessera-ui/p-7e531195.entry.js.map +1 -0
- package/dist/tessera-ui/p-7fa64f00.entry.js +2 -0
- package/dist/tessera-ui/p-7fa64f00.entry.js.map +1 -0
- package/dist/tessera-ui/p-829c4307.entry.js +2 -0
- package/dist/tessera-ui/p-829c4307.entry.js.map +1 -0
- package/dist/tessera-ui/p-91ccef3f.entry.js +2 -0
- package/dist/tessera-ui/p-91ccef3f.entry.js.map +1 -0
- package/dist/tessera-ui/p-9209e603.entry.js +2 -0
- package/dist/tessera-ui/p-9209e603.entry.js.map +1 -0
- package/dist/tessera-ui/p-97a9def7.entry.js +2 -0
- package/dist/tessera-ui/p-97a9def7.entry.js.map +1 -0
- package/dist/tessera-ui/p-9b41b538.entry.js +2 -0
- package/dist/tessera-ui/p-9b41b538.entry.js.map +1 -0
- package/dist/tessera-ui/p-9c0504fd.entry.js +2 -0
- package/dist/tessera-ui/p-9c0504fd.entry.js.map +1 -0
- package/dist/tessera-ui/p-BOxYojS-.js +9572 -0
- package/dist/tessera-ui/p-BOxYojS-.js.map +1 -0
- package/dist/tessera-ui/p-StBQmS8h.js +2 -0
- package/dist/tessera-ui/p-StBQmS8h.js.map +1 -0
- package/dist/tessera-ui/p-V8-ENixA.js +3 -0
- package/dist/tessera-ui/p-V8-ENixA.js.map +1 -0
- package/dist/tessera-ui/p-a120b5d6.entry.js +2 -0
- package/dist/tessera-ui/p-a120b5d6.entry.js.map +1 -0
- package/dist/tessera-ui/p-a55a5695.entry.js +2 -0
- package/dist/tessera-ui/p-a55a5695.entry.js.map +1 -0
- package/dist/tessera-ui/p-a83d903e.entry.js +2 -0
- package/dist/tessera-ui/p-a83d903e.entry.js.map +1 -0
- package/dist/tessera-ui/p-adc807dc.entry.js +2 -0
- package/dist/tessera-ui/p-adc807dc.entry.js.map +1 -0
- package/dist/tessera-ui/p-b09f202c.entry.js +2 -0
- package/dist/tessera-ui/p-b09f202c.entry.js.map +1 -0
- package/dist/tessera-ui/p-b1182592.entry.js +2 -0
- package/dist/tessera-ui/p-b1182592.entry.js.map +1 -0
- package/dist/tessera-ui/p-b3f60955.entry.js +2 -0
- package/dist/tessera-ui/p-b3f60955.entry.js.map +1 -0
- package/dist/tessera-ui/p-bb9ebbd8.entry.js +2 -0
- package/dist/tessera-ui/p-bb9ebbd8.entry.js.map +1 -0
- package/dist/tessera-ui/p-bce40715.entry.js +2 -0
- package/dist/tessera-ui/p-bce40715.entry.js.map +1 -0
- package/dist/tessera-ui/p-c35c7049.entry.js +2 -0
- package/dist/tessera-ui/p-c35c7049.entry.js.map +1 -0
- package/dist/tessera-ui/p-c59ecffa.entry.js +2 -0
- package/dist/tessera-ui/p-c59ecffa.entry.js.map +1 -0
- package/dist/tessera-ui/p-d318774a.entry.js +2 -0
- package/dist/tessera-ui/p-d318774a.entry.js.map +1 -0
- package/dist/tessera-ui/p-d5cbadd6.entry.js +2 -0
- package/dist/tessera-ui/p-d5cbadd6.entry.js.map +1 -0
- package/dist/tessera-ui/p-e1d2b141.entry.js +2 -0
- package/dist/tessera-ui/p-e1d2b141.entry.js.map +1 -0
- package/dist/tessera-ui/p-f0bf6408.entry.js +2 -0
- package/dist/tessera-ui/p-f0bf6408.entry.js.map +1 -0
- package/dist/tessera-ui/p-f639213a.entry.js +2 -0
- package/dist/tessera-ui/p-f639213a.entry.js.map +1 -0
- package/dist/tessera-ui/p-fd2376e0.entry.js +2 -0
- package/dist/tessera-ui/p-fd2376e0.entry.js.map +1 -0
- package/dist/tessera-ui/p-fef9a993.entry.js +2 -0
- package/dist/tessera-ui/p-fef9a993.entry.js.map +1 -0
- package/dist/tessera-ui/p-lpqZSiIf.js +2 -0
- package/dist/tessera-ui/p-lpqZSiIf.js.map +1 -0
- package/dist/tessera-ui/tessera-ui.css +1 -0
- package/dist/tessera-ui/tessera-ui.esm.js +2 -0
- package/dist/tessera-ui/tessera-ui.esm.js.map +1 -0
- package/dist/types/components/accordion/accordion-item.d.ts +28 -0
- package/dist/types/components/accordion/accordion-item.stories.d.ts +5 -0
- package/dist/types/components/accordion/accordion.d.ts +12 -0
- package/dist/types/components/accordion/accordion.stories.d.ts +21 -0
- package/dist/types/components/alert/alert.d.ts +30 -0
- package/dist/types/components/alert/alert.stories.d.ts +34 -0
- package/dist/types/components/avatar/avatar.d.ts +26 -0
- package/dist/types/components/avatar/avatar.stories.d.ts +51 -0
- package/dist/types/components/badge/badge.d.ts +19 -0
- package/dist/types/components/badge/badge.stories.d.ts +50 -0
- package/dist/types/components/banner/banner.d.ts +33 -0
- package/dist/types/components/banner/banner.stories.d.ts +40 -0
- package/dist/types/components/breadcrumb/breadcrumb-item.d.ts +15 -0
- package/dist/types/components/breadcrumb/breadcrumb-item.stories.d.ts +5 -0
- package/dist/types/components/breadcrumb/breadcrumb.d.ts +13 -0
- package/dist/types/components/breadcrumb/breadcrumb.stories.d.ts +20 -0
- package/dist/types/components/button/button.d.ts +45 -0
- package/dist/types/components/button/button.stories.d.ts +73 -0
- package/dist/types/components/card/card.d.ts +23 -0
- package/dist/types/components/card/card.stories.d.ts +46 -0
- package/dist/types/components/checkbox/checkbox.d.ts +36 -0
- package/dist/types/components/checkbox/checkbox.stories.d.ts +58 -0
- package/dist/types/components/chip/chip.d.ts +34 -0
- package/dist/types/components/chip/chip.stories.d.ts +54 -0
- package/dist/types/components/container/container.d.ts +12 -0
- package/dist/types/components/container/container.stories.d.ts +21 -0
- package/dist/types/components/date-picker/date-picker.d.ts +67 -0
- package/dist/types/components/date-picker/date-picker.stories.d.ts +62 -0
- package/dist/types/components/dialog/dialog.d.ts +44 -0
- package/dist/types/components/dialog/dialog.stories.d.ts +39 -0
- package/dist/types/components/divider/divider.d.ts +13 -0
- package/dist/types/components/divider/divider.stories.d.ts +33 -0
- package/dist/types/components/drawer/drawer.d.ts +46 -0
- package/dist/types/components/drawer/drawer.stories.d.ts +43 -0
- package/dist/types/components/empty-state/empty-state.d.ts +24 -0
- package/dist/types/components/empty-state/empty-state.stories.d.ts +37 -0
- package/dist/types/components/file-upload/file-upload.d.ts +38 -0
- package/dist/types/components/file-upload/file-upload.stories.d.ts +43 -0
- package/dist/types/components/grid/grid.d.ts +16 -0
- package/dist/types/components/grid/grid.stories.d.ts +30 -0
- package/dist/types/components/icon/icon-registry.d.ts +27 -0
- package/dist/types/components/icon/icon.d.ts +30 -0
- package/dist/types/components/icon/icon.stories.d.ts +42 -0
- package/dist/types/components/input/input.d.ts +72 -0
- package/dist/types/components/input/input.stories.d.ts +77 -0
- package/dist/types/components/menu/menu-item.d.ts +31 -0
- package/dist/types/components/menu/menu-item.stories.d.ts +5 -0
- package/dist/types/components/menu/menu.d.ts +38 -0
- package/dist/types/components/menu/menu.stories.d.ts +36 -0
- package/dist/types/components/modal/modal.d.ts +52 -0
- package/dist/types/components/modal/modal.stories.d.ts +47 -0
- package/dist/types/components/nav/nav-item.d.ts +23 -0
- package/dist/types/components/nav/nav-item.stories.d.ts +5 -0
- package/dist/types/components/nav/nav.d.ts +13 -0
- package/dist/types/components/nav/nav.stories.d.ts +27 -0
- package/dist/types/components/pagination/pagination.d.ts +28 -0
- package/dist/types/components/pagination/pagination.stories.d.ts +42 -0
- package/dist/types/components/popover/popover.d.ts +44 -0
- package/dist/types/components/popover/popover.stories.d.ts +38 -0
- package/dist/types/components/progress/progress.d.ts +26 -0
- package/dist/types/components/progress/progress.stories.d.ts +59 -0
- package/dist/types/components/radio/radio.d.ts +32 -0
- package/dist/types/components/radio/radio.stories.d.ts +48 -0
- package/dist/types/components/row/row.d.ts +18 -0
- package/dist/types/components/row/row.stories.d.ts +52 -0
- package/dist/types/components/select/select.d.ts +74 -0
- package/dist/types/components/select/select.stories.d.ts +73 -0
- package/dist/types/components/skeleton/skeleton.d.ts +17 -0
- package/dist/types/components/skeleton/skeleton.stories.d.ts +44 -0
- package/dist/types/components/slider/slider.d.ts +43 -0
- package/dist/types/components/slider/slider.stories.d.ts +62 -0
- package/dist/types/components/spacer/spacer.d.ts +10 -0
- package/dist/types/components/spacer/spacer.stories.d.ts +28 -0
- package/dist/types/components/spinner/spinner.d.ts +14 -0
- package/dist/types/components/spinner/spinner.stories.d.ts +33 -0
- package/dist/types/components/stack/stack.d.ts +12 -0
- package/dist/types/components/stack/stack.stories.d.ts +28 -0
- package/dist/types/components/stepper/step.d.ts +31 -0
- package/dist/types/components/stepper/step.stories.d.ts +5 -0
- package/dist/types/components/stepper/stepper.d.ts +18 -0
- package/dist/types/components/stepper/stepper.stories.d.ts +36 -0
- package/dist/types/components/switch-group/switch-group.d.ts +33 -0
- package/dist/types/components/switch-group/switch-group.stories.d.ts +37 -0
- package/dist/types/components/switch-group/switch-option.d.ts +24 -0
- package/dist/types/components/switch-group/switch-option.stories.d.ts +5 -0
- package/dist/types/components/table/table.d.ts +23 -0
- package/dist/types/components/table/table.stories.d.ts +45 -0
- package/dist/types/components/tabs/tab-panel.d.ts +17 -0
- package/dist/types/components/tabs/tab-panel.stories.d.ts +5 -0
- package/dist/types/components/tabs/tabs.d.ts +30 -0
- package/dist/types/components/tabs/tabs.stories.d.ts +34 -0
- package/dist/types/components/textarea/textarea.d.ts +62 -0
- package/dist/types/components/textarea/textarea.stories.d.ts +88 -0
- package/dist/types/components/toast/toast.d.ts +42 -0
- package/dist/types/components/toast/toast.stories.d.ts +48 -0
- package/dist/types/components/toggle/toggle.d.ts +31 -0
- package/dist/types/components/toggle/toggle.stories.d.ts +46 -0
- package/dist/types/components/toolbar/toolbar.d.ts +18 -0
- package/dist/types/components/toolbar/toolbar.stories.d.ts +28 -0
- package/dist/types/components/tooltip/tooltip.d.ts +36 -0
- package/dist/types/components/tooltip/tooltip.stories.d.ts +43 -0
- package/dist/types/components/tree/tree-item.d.ts +42 -0
- package/dist/types/components/tree/tree-item.stories.d.ts +5 -0
- package/dist/types/components/tree/tree.d.ts +13 -0
- package/dist/types/components/tree/tree.stories.d.ts +21 -0
- package/dist/types/components.d.ts +4191 -0
- package/dist/types/index.d.ts +53 -0
- package/dist/types/stencil-public-runtime.d.ts +1860 -0
- package/dist/types/theme/tokens.d.ts +29 -0
- package/dist/types/types/index.d.ts +36 -0
- package/dist/types/utils/aria.d.ts +23 -0
- package/dist/types/utils/dom.d.ts +19 -0
- package/dist/types/utils/events.d.ts +17 -0
- package/loader/cdn.js +1 -0
- package/loader/index.cjs.js +1 -0
- package/loader/index.d.ts +24 -0
- package/loader/index.es2017.js +1 -0
- package/loader/index.js +2 -0
- package/package.json +79 -0
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var index = require('./index-Bel_x2OU.js');
|
|
4
|
+
|
|
5
|
+
const buttonCss = () => `:host{display:inline-block;vertical-align:middle;--ts-button-radius:var(--ts-shape-interactive);--ts-button-font-weight:var(--ts-font-weight-medium);--ts-button-focus-ring:var(--ts-focus-ring)}:host([block]){display:block;width:100%}.button__native{display:inline-flex;align-items:center;justify-content:center;gap:var(--ts-spacing-2);width:100%;border:1px solid transparent;border-radius:var(--ts-button-radius);font-family:var(--ts-font-family-base);font-weight:var(--ts-button-font-weight);line-height:var(--ts-line-height-tight);text-decoration:none;cursor:pointer;transition:background-color var(--ts-transition-fast), border-color var(--ts-transition-fast), color var(--ts-transition-fast), box-shadow var(--ts-transition-fast), opacity var(--ts-transition-fast), transform var(--ts-transition-fast);position:relative;white-space:nowrap;user-select:none;-webkit-appearance:none;appearance:none;outline:none}.button__native:focus-visible{box-shadow:var(--ts-button-focus-ring)}.button__native:active:not([disabled]):not([aria-disabled="true"]){transform:scale(0.96)}:host([size="xs"]) .button__native{padding:calc(var(--ts-spacing-1) + 1px) var(--ts-spacing-2);font-size:var(--ts-font-size-xs)}:host([size="sm"]) .button__native{padding:calc(var(--ts-spacing-1) + 1px) var(--ts-spacing-3);font-size:var(--ts-font-size-sm)}:host([size="md"]) .button__native{padding:calc(var(--ts-spacing-2) + 1px) var(--ts-spacing-4);font-size:var(--ts-font-size-md)}:host([size="lg"]) .button__native{padding:calc(var(--ts-spacing-3) + 2px) var(--ts-spacing-6);font-size:var(--ts-font-size-lg)}:host([size="xl"]) .button__native{padding:calc(var(--ts-spacing-4) + 2px) var(--ts-spacing-8);font-size:var(--ts-font-size-xl)}:host([appearance="solid"]) .button__native{border-color:transparent}:host([appearance="solid"][variant="primary"]) .button__native{background-color:var(--ts-color-interactive-primary);color:var(--ts-color-text-on-primary)}:host([appearance="solid"][variant="primary"]) .button__native:hover:not([disabled]){background-color:var(--ts-color-interactive-primary-hover)}:host([appearance="solid"][variant="success"]) .button__native{background-color:var(--ts-color-success-600);color:var(--ts-color-text-on-success)}:host([appearance="solid"][variant="success"]) .button__native:hover:not([disabled]){background-color:var(--ts-color-success-500)}:host([appearance="solid"][variant="danger"]) .button__native{background-color:var(--ts-color-interactive-danger);color:var(--ts-color-text-on-danger)}:host([appearance="solid"][variant="danger"]) .button__native:hover:not([disabled]){background-color:var(--ts-color-interactive-danger-hover)}:host([appearance="solid"][variant="warning"]) .button__native{background-color:var(--ts-color-warning-600);color:var(--ts-color-text-on-warning)}:host([appearance="solid"][variant="warning"]) .button__native:hover:not([disabled]){background-color:var(--ts-color-warning-500)}:host([appearance="solid"][variant="neutral"]) .button__native{background-color:var(--ts-color-neutral-800);color:var(--ts-color-text-on-primary)}:host([appearance="solid"][variant="neutral"]) .button__native:hover:not([disabled]){background-color:var(--ts-color-neutral-700)}:host([appearance="solid"][variant="secondary"]) .button__native{background-color:var(--ts-color-neutral-200);color:var(--ts-color-text-primary)}:host([appearance="solid"][variant="secondary"]) .button__native:hover:not([disabled]){background-color:var(--ts-color-neutral-300)}:host([appearance="outline"]) .button__native{background-color:transparent}:host([appearance="outline"][variant="primary"]) .button__native{border-color:var(--ts-color-primary-500);color:var(--ts-color-interactive-primary)}:host([appearance="outline"][variant="primary"]) .button__native:hover:not([disabled]){background-color:var(--ts-color-interactive-primary-subtle)}:host([appearance="outline"][variant="danger"]) .button__native{border-color:var(--ts-color-danger-500);color:var(--ts-color-interactive-danger)}:host([appearance="outline"][variant="danger"]) .button__native:hover:not([disabled]){background-color:var(--ts-color-interactive-danger-subtle)}:host([appearance="outline"][variant="neutral"]) .button__native{border-color:var(--ts-color-border-default);color:var(--ts-color-text-secondary)}:host([appearance="outline"][variant="neutral"]) .button__native:hover:not([disabled]){background-color:var(--ts-color-bg-subtle)}:host([appearance="ghost"]) .button__native{background-color:transparent;border-color:transparent}:host([appearance="ghost"][variant="primary"]) .button__native{color:var(--ts-color-interactive-primary)}:host([appearance="ghost"][variant="primary"]) .button__native:hover:not([disabled]){background-color:var(--ts-color-interactive-primary-subtle);border-color:var(--ts-color-primary-200)}:host([appearance="ghost"][variant="neutral"]) .button__native{color:var(--ts-color-text-secondary)}:host([appearance="ghost"][variant="neutral"]) .button__native:hover:not([disabled]){background-color:var(--ts-color-neutral-100);border-color:var(--ts-color-neutral-200)}:host([appearance="link"]) .button__native{background:none;border:none;padding:0;text-decoration:underline;text-underline-offset:2px}:host([appearance="link"][variant="primary"]) .button__native{color:var(--ts-color-interactive-primary)}:host([appearance="link"]) .button__native:hover:not([disabled]){text-decoration-thickness:2px}:host([disabled]) .button__native,.button__native[disabled]{opacity:0.5;cursor:not-allowed;pointer-events:none}:host([loading]) .button__label,:host([loading]) .button__prefix,:host([loading]) .button__suffix{visibility:hidden}:host([loading]) .button__native{cursor:wait;position:relative}.button__spinner{position:absolute;display:flex;align-items:center;justify-content:center}.button__spinner svg{width:1.2em;height:1.2em;animation:ts-spin 0.8s linear infinite}@keyframes ts-spin{to{transform:rotate(360deg)}}.button__prefix,.button__suffix{display:inline-flex;align-items:center}.button__prefix:empty,.button__suffix:empty{display:none}.button__label{display:inline-flex;align-items:center}`;
|
|
6
|
+
|
|
7
|
+
const TsButton = class {
|
|
8
|
+
constructor(hostRef) {
|
|
9
|
+
index.registerInstance(this, hostRef);
|
|
10
|
+
this.tsClick = index.createEvent(this, "tsClick");
|
|
11
|
+
this.tsFocus = index.createEvent(this, "tsFocus");
|
|
12
|
+
this.tsBlur = index.createEvent(this, "tsBlur");
|
|
13
|
+
}
|
|
14
|
+
get hostEl() { return index.getElement(this); }
|
|
15
|
+
/** The button's visual variant. */
|
|
16
|
+
variant = 'primary';
|
|
17
|
+
/** The button's visual weight / appearance. */
|
|
18
|
+
appearance = 'solid';
|
|
19
|
+
/** The button's size. */
|
|
20
|
+
size = 'md';
|
|
21
|
+
/** Renders the button in a disabled state. */
|
|
22
|
+
disabled = false;
|
|
23
|
+
/** Renders a loading spinner and disables the button. */
|
|
24
|
+
loading = false;
|
|
25
|
+
/** Makes the button take the full width of its container. */
|
|
26
|
+
block = false;
|
|
27
|
+
/** The type attribute for the native button. */
|
|
28
|
+
type = 'button';
|
|
29
|
+
/** An optional href — renders an anchor instead of a button. */
|
|
30
|
+
href;
|
|
31
|
+
/** Target attribute when href is set. */
|
|
32
|
+
target;
|
|
33
|
+
/** Emitted when the button is clicked (not fired when disabled/loading). */
|
|
34
|
+
tsClick;
|
|
35
|
+
/** Emitted when the button receives focus. */
|
|
36
|
+
tsFocus;
|
|
37
|
+
/** Emitted when the button loses focus. */
|
|
38
|
+
tsBlur;
|
|
39
|
+
handleClick = (event) => {
|
|
40
|
+
if (this.disabled || this.loading) {
|
|
41
|
+
event.preventDefault();
|
|
42
|
+
event.stopPropagation();
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
this.tsClick.emit();
|
|
46
|
+
};
|
|
47
|
+
handleFocus = () => {
|
|
48
|
+
this.tsFocus.emit();
|
|
49
|
+
};
|
|
50
|
+
handleBlur = () => {
|
|
51
|
+
this.tsBlur.emit();
|
|
52
|
+
};
|
|
53
|
+
// eslint-disable-next-line @typescript-eslint/explicit-function-return-type
|
|
54
|
+
renderSpinner() {
|
|
55
|
+
return (index.h("span", { class: "button__spinner", part: "spinner", "aria-hidden": "true" }, index.h("svg", { viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, index.h("circle", { cx: "12", cy: "12", r: "10", stroke: "currentColor", "stroke-width": "3", "stroke-linecap": "round", "stroke-dasharray": "31.4 31.4" }))));
|
|
56
|
+
}
|
|
57
|
+
// eslint-disable-next-line @typescript-eslint/explicit-function-return-type
|
|
58
|
+
render() {
|
|
59
|
+
const isLink = !!this.href;
|
|
60
|
+
const Tag = isLink ? 'a' : 'button';
|
|
61
|
+
const attrs = isLink
|
|
62
|
+
? {
|
|
63
|
+
href: this.disabled ? undefined : this.href,
|
|
64
|
+
target: this.target,
|
|
65
|
+
rel: this.target === '_blank' ? 'noopener noreferrer' : undefined,
|
|
66
|
+
role: 'button',
|
|
67
|
+
}
|
|
68
|
+
: {
|
|
69
|
+
type: this.type,
|
|
70
|
+
disabled: this.disabled || this.loading,
|
|
71
|
+
};
|
|
72
|
+
return (index.h(index.Host, { key: '235cf7dbe6284358fbdc55c2ce7550d6214336c1', class: {
|
|
73
|
+
'ts-button': true,
|
|
74
|
+
[`ts-button--${this.variant}`]: true,
|
|
75
|
+
[`ts-button--${this.appearance}`]: true,
|
|
76
|
+
[`ts-button--${this.size}`]: true,
|
|
77
|
+
'ts-button--disabled': this.disabled,
|
|
78
|
+
'ts-button--loading': this.loading,
|
|
79
|
+
'ts-button--block': this.block,
|
|
80
|
+
} }, index.h(Tag, { key: '23f3665b903ec3c95db788082a0ebcb1e49cceb7', ...attrs, class: "button__native", part: "base", "aria-disabled": this.disabled || this.loading ? 'true' : undefined, "aria-busy": this.loading ? 'true' : undefined, onClick: this.handleClick, onFocus: this.handleFocus, onBlur: this.handleBlur }, this.loading && this.renderSpinner(), index.h("span", { key: 'c08cc2427e4e97787dd6aca934bc90296b528f3e', class: "button__prefix", part: "prefix" }, index.h("slot", { key: 'b78c2bd8685f9ceea5bfe0645b091cdea9cbef99', name: "prefix" })), index.h("span", { key: 'c402094ba85026064f300b90311a84a35a0f1b72', class: "button__label", part: "label" }, index.h("slot", { key: '38801473cf5e03292a66344434ce1fd882e60ca7' })), index.h("span", { key: '559ee29b7ebe3f9746d83d69863454c65e251aba', class: "button__suffix", part: "suffix" }, index.h("slot", { key: '52fd64d18e25367625bbff0e995103245cbdaaa4', name: "suffix" })))));
|
|
81
|
+
}
|
|
82
|
+
};
|
|
83
|
+
TsButton.style = buttonCss();
|
|
84
|
+
|
|
85
|
+
exports.ts_button = TsButton;
|
|
86
|
+
//# sourceMappingURL=ts-button.entry.cjs.js.map
|
|
87
|
+
|
|
88
|
+
//# sourceMappingURL=ts-button.cjs.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"file":"ts-button.cjs.entry.js","mappings":"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","names":["h","Host"],"sources":["src/components/button/button.css?tag=ts-button&encapsulation=shadow","src/components/button/button.tsx"],"sourcesContent":["/* ==========================================================================\n ts-button — Shadow DOM Scoped Styles\n\n Component tokens (Tier 3):\n --ts-button-radius Border radius\n --ts-button-font-weight Label font weight\n --ts-button-focus-ring Focus ring box-shadow\n ========================================================================== */\n\n:host {\n display: inline-block;\n vertical-align: middle;\n\n --ts-button-radius: var(--ts-shape-interactive);\n --ts-button-font-weight: var(--ts-font-weight-medium);\n --ts-button-focus-ring: var(--ts-focus-ring);\n}\n\n:host([block]) {\n display: block;\n width: 100%;\n}\n\n/* ---- Base native element ---- */\n.button__native {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: var(--ts-spacing-2);\n width: 100%;\n border: 1px solid transparent;\n border-radius: var(--ts-button-radius);\n font-family: var(--ts-font-family-base);\n font-weight: var(--ts-button-font-weight);\n line-height: var(--ts-line-height-tight);\n text-decoration: none;\n cursor: pointer;\n transition:\n background-color var(--ts-transition-fast),\n border-color var(--ts-transition-fast),\n color var(--ts-transition-fast),\n box-shadow var(--ts-transition-fast),\n opacity var(--ts-transition-fast),\n transform var(--ts-transition-fast);\n position: relative;\n white-space: nowrap;\n user-select: none;\n -webkit-appearance: none;\n appearance: none;\n outline: none;\n}\n\n/* ---- Focus visible ---- */\n.button__native:focus-visible {\n box-shadow: var(--ts-button-focus-ring);\n}\n\n/* ---- Active press (M3 bouncier) ---- */\n.button__native:active:not([disabled]):not([aria-disabled=\"true\"]) {\n transform: scale(0.96);\n}\n\n/* ---- Sizes ---- */\n:host([size=\"xs\"]) .button__native {\n padding: calc(var(--ts-spacing-1) + 1px) var(--ts-spacing-2);\n font-size: var(--ts-font-size-xs);\n}\n\n:host([size=\"sm\"]) .button__native {\n padding: calc(var(--ts-spacing-1) + 1px) var(--ts-spacing-3);\n font-size: var(--ts-font-size-sm);\n}\n\n:host([size=\"md\"]) .button__native {\n padding: calc(var(--ts-spacing-2) + 1px) var(--ts-spacing-4);\n font-size: var(--ts-font-size-md);\n}\n\n:host([size=\"lg\"]) .button__native {\n padding: calc(var(--ts-spacing-3) + 2px) var(--ts-spacing-6);\n font-size: var(--ts-font-size-lg);\n}\n\n:host([size=\"xl\"]) .button__native {\n padding: calc(var(--ts-spacing-4) + 2px) var(--ts-spacing-8);\n font-size: var(--ts-font-size-xl);\n}\n\n/* ---- Solid Appearance ---- */\n:host([appearance=\"solid\"]) .button__native {\n border-color: transparent;\n}\n:host([appearance=\"solid\"][variant=\"primary\"]) .button__native {\n background-color: var(--ts-color-interactive-primary);\n color: var(--ts-color-text-on-primary);\n}\n:host([appearance=\"solid\"][variant=\"primary\"]) .button__native:hover:not([disabled]) {\n background-color: var(--ts-color-interactive-primary-hover);\n}\n\n:host([appearance=\"solid\"][variant=\"success\"]) .button__native {\n background-color: var(--ts-color-success-600);\n color: var(--ts-color-text-on-success);\n}\n:host([appearance=\"solid\"][variant=\"success\"]) .button__native:hover:not([disabled]) {\n background-color: var(--ts-color-success-500);\n}\n\n:host([appearance=\"solid\"][variant=\"danger\"]) .button__native {\n background-color: var(--ts-color-interactive-danger);\n color: var(--ts-color-text-on-danger);\n}\n:host([appearance=\"solid\"][variant=\"danger\"]) .button__native:hover:not([disabled]) {\n background-color: var(--ts-color-interactive-danger-hover);\n}\n\n:host([appearance=\"solid\"][variant=\"warning\"]) .button__native {\n background-color: var(--ts-color-warning-600);\n color: var(--ts-color-text-on-warning);\n}\n:host([appearance=\"solid\"][variant=\"warning\"]) .button__native:hover:not([disabled]) {\n background-color: var(--ts-color-warning-500);\n}\n\n:host([appearance=\"solid\"][variant=\"neutral\"]) .button__native {\n background-color: var(--ts-color-neutral-800);\n color: var(--ts-color-text-on-primary);\n}\n:host([appearance=\"solid\"][variant=\"neutral\"]) .button__native:hover:not([disabled]) {\n background-color: var(--ts-color-neutral-700);\n}\n\n:host([appearance=\"solid\"][variant=\"secondary\"]) .button__native {\n background-color: var(--ts-color-neutral-200);\n color: var(--ts-color-text-primary);\n}\n:host([appearance=\"solid\"][variant=\"secondary\"]) .button__native:hover:not([disabled]) {\n background-color: var(--ts-color-neutral-300);\n}\n\n/* ---- Outline Appearance ---- */\n:host([appearance=\"outline\"]) .button__native {\n background-color: transparent;\n}\n:host([appearance=\"outline\"][variant=\"primary\"]) .button__native {\n border-color: var(--ts-color-primary-500);\n color: var(--ts-color-interactive-primary);\n}\n:host([appearance=\"outline\"][variant=\"primary\"]) .button__native:hover:not([disabled]) {\n background-color: var(--ts-color-interactive-primary-subtle);\n}\n\n:host([appearance=\"outline\"][variant=\"danger\"]) .button__native {\n border-color: var(--ts-color-danger-500);\n color: var(--ts-color-interactive-danger);\n}\n:host([appearance=\"outline\"][variant=\"danger\"]) .button__native:hover:not([disabled]) {\n background-color: var(--ts-color-interactive-danger-subtle);\n}\n\n:host([appearance=\"outline\"][variant=\"neutral\"]) .button__native {\n border-color: var(--ts-color-border-default);\n color: var(--ts-color-text-secondary);\n}\n:host([appearance=\"outline\"][variant=\"neutral\"]) .button__native:hover:not([disabled]) {\n background-color: var(--ts-color-bg-subtle);\n}\n\n/* ---- Ghost Appearance ---- */\n:host([appearance=\"ghost\"]) .button__native {\n background-color: transparent;\n border-color: transparent;\n}\n:host([appearance=\"ghost\"][variant=\"primary\"]) .button__native {\n color: var(--ts-color-interactive-primary);\n}\n:host([appearance=\"ghost\"][variant=\"primary\"]) .button__native:hover:not([disabled]) {\n background-color: var(--ts-color-interactive-primary-subtle);\n border-color: var(--ts-color-primary-200);\n}\n\n:host([appearance=\"ghost\"][variant=\"neutral\"]) .button__native {\n color: var(--ts-color-text-secondary);\n}\n:host([appearance=\"ghost\"][variant=\"neutral\"]) .button__native:hover:not([disabled]) {\n background-color: var(--ts-color-neutral-100);\n border-color: var(--ts-color-neutral-200);\n}\n\n/* ---- Link Appearance ---- */\n:host([appearance=\"link\"]) .button__native {\n background: none;\n border: none;\n padding: 0;\n text-decoration: underline;\n text-underline-offset: 2px;\n}\n:host([appearance=\"link\"][variant=\"primary\"]) .button__native {\n color: var(--ts-color-interactive-primary);\n}\n:host([appearance=\"link\"]) .button__native:hover:not([disabled]) {\n text-decoration-thickness: 2px;\n}\n\n/* ---- Disabled State ---- */\n:host([disabled]) .button__native,\n.button__native[disabled] {\n opacity: 0.5;\n cursor: not-allowed;\n pointer-events: none;\n}\n\n/* ---- Loading State ---- */\n:host([loading]) .button__label,\n:host([loading]) .button__prefix,\n:host([loading]) .button__suffix {\n visibility: hidden;\n}\n\n:host([loading]) .button__native {\n cursor: wait;\n position: relative;\n}\n\n/* ---- Spinner ---- */\n.button__spinner {\n position: absolute;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.button__spinner svg {\n width: 1.2em;\n height: 1.2em;\n animation: ts-spin 0.8s linear infinite;\n}\n\n@keyframes ts-spin {\n to {\n transform: rotate(360deg);\n }\n}\n\n/* ---- Slot wrappers ---- */\n.button__prefix,\n.button__suffix {\n display: inline-flex;\n align-items: center;\n}\n\n.button__prefix:empty,\n.button__suffix:empty {\n display: none;\n}\n\n.button__label {\n display: inline-flex;\n align-items: center;\n}\n","import { Component, Prop, Event, h, Host, Element } from '@stencil/core';\nimport type { EventEmitter } from '@stencil/core';\nimport type { TsSize, TsVariant, TsAppearance } from '../../types';\n\n/**\n * @slot - Default slot for button label content.\n * @slot prefix - Content before the label (e.g., icon).\n * @slot suffix - Content after the label (e.g., icon).\n *\n * @part base - The native button element.\n * @part label - The label wrapper.\n * @part prefix - The prefix slot wrapper.\n * @part suffix - The suffix slot wrapper.\n * @part spinner - The loading spinner element.\n */\n@Component({\n tag: 'ts-button',\n styleUrl: 'button.css',\n shadow: true,\n})\nexport class TsButton {\n @Element() hostEl!: HTMLElement;\n\n /** The button's visual variant. */\n @Prop({ reflect: true }) variant: TsVariant = 'primary';\n\n /** The button's visual weight / appearance. */\n @Prop({ reflect: true }) appearance: TsAppearance = 'solid';\n\n /** The button's size. */\n @Prop({ reflect: true }) size: TsSize = 'md';\n\n /** Renders the button in a disabled state. */\n @Prop({ reflect: true }) disabled = false;\n\n /** Renders a loading spinner and disables the button. */\n @Prop({ reflect: true }) loading = false;\n\n /** Makes the button take the full width of its container. */\n @Prop({ reflect: true }) block = false;\n\n /** The type attribute for the native button. */\n @Prop() type: 'button' | 'submit' | 'reset' = 'button';\n\n /** An optional href — renders an anchor instead of a button. */\n @Prop() href?: string;\n\n /** Target attribute when href is set. */\n @Prop() target?: '_blank' | '_self' | '_parent' | '_top';\n\n /** Emitted when the button is clicked (not fired when disabled/loading). */\n @Event({ eventName: 'tsClick' }) tsClick!: EventEmitter<void>;\n\n /** Emitted when the button receives focus. */\n @Event({ eventName: 'tsFocus' }) tsFocus!: EventEmitter<void>;\n\n /** Emitted when the button loses focus. */\n @Event({ eventName: 'tsBlur' }) tsBlur!: EventEmitter<void>;\n\n private handleClick = (event: MouseEvent): void => {\n if (this.disabled || this.loading) {\n event.preventDefault();\n event.stopPropagation();\n return;\n }\n this.tsClick.emit();\n };\n\n private handleFocus = (): void => {\n this.tsFocus.emit();\n };\n\n private handleBlur = (): void => {\n this.tsBlur.emit();\n };\n\n // eslint-disable-next-line @typescript-eslint/explicit-function-return-type\n private renderSpinner() {\n return (\n <span class=\"button__spinner\" part=\"spinner\" aria-hidden=\"true\">\n <svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <circle cx=\"12\" cy=\"12\" r=\"10\" stroke=\"currentColor\" stroke-width=\"3\" stroke-linecap=\"round\" stroke-dasharray=\"31.4 31.4\" />\n </svg>\n </span>\n );\n }\n\n // eslint-disable-next-line @typescript-eslint/explicit-function-return-type\n render() {\n const isLink = !!this.href;\n const Tag = isLink ? 'a' : 'button';\n\n const attrs = isLink\n ? {\n href: this.disabled ? undefined : this.href,\n target: this.target,\n rel: this.target === '_blank' ? 'noopener noreferrer' : undefined,\n role: 'button',\n }\n : {\n type: this.type,\n disabled: this.disabled || this.loading,\n };\n\n return (\n <Host\n class={{\n 'ts-button': true,\n [`ts-button--${this.variant}`]: true,\n [`ts-button--${this.appearance}`]: true,\n [`ts-button--${this.size}`]: true,\n 'ts-button--disabled': this.disabled,\n 'ts-button--loading': this.loading,\n 'ts-button--block': this.block,\n }}\n >\n <Tag\n {...attrs}\n class=\"button__native\"\n part=\"base\"\n aria-disabled={this.disabled || this.loading ? 'true' : undefined}\n aria-busy={this.loading ? 'true' : undefined}\n onClick={this.handleClick}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n >\n {this.loading && this.renderSpinner()}\n\n <span class=\"button__prefix\" part=\"prefix\">\n <slot name=\"prefix\" />\n </span>\n\n <span class=\"button__label\" part=\"label\">\n <slot />\n </span>\n\n <span class=\"button__suffix\" part=\"suffix\">\n <slot name=\"suffix\" />\n </span>\n </Tag>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var index = require('./index-Bel_x2OU.js');
|
|
4
|
+
|
|
5
|
+
const cardCss = () => `:host{display:block;font-family:var(--ts-font-family-base);--ts-card-bg:var(--ts-color-bg-elevated);--ts-card-radius:var(--ts-shape-container);--ts-card-border-color:var(--ts-color-border-subtle)}.card__base{border-radius:var(--ts-card-radius);background-color:var(--ts-card-bg);border:1px solid transparent;overflow:hidden;transition:box-shadow var(--ts-transition-normal), transform var(--ts-transition-normal), border-color var(--ts-transition-normal)}:host([elevation="none"]) .card__base{box-shadow:none}:host([elevation="sm"]) .card__base{box-shadow:var(--ts-shadow-sm)}:host([elevation="md"]) .card__base{box-shadow:var(--ts-shadow-md)}:host([elevation="lg"]) .card__base{box-shadow:var(--ts-shadow-lg)}:host([elevation="xl"]) .card__base{box-shadow:var(--ts-shadow-xl)}:host([bordered]) .card__base{border:1px solid var(--ts-card-border-color)}:host([interactive]){cursor:pointer}:host([interactive]) .card__base:hover{box-shadow:var(--ts-shadow-lg)}:host([interactive]) .card__base:active{box-shadow:var(--ts-shadow-md)}:host([interactive]:focus-visible) .card__base{box-shadow:var(--ts-focus-ring)}.card__media{overflow:hidden}.card__media:empty{display:none}.card__media ::slotted(img){display:block;width:100%;height:auto;object-fit:cover}.card__header{border-bottom:1px solid var(--ts-card-border-color)}.card__header:empty{display:none;border-bottom:none}.card__footer{border-top:1px solid var(--ts-card-border-color)}.card__footer:empty{display:none;border-top:none}:host([padding="none"]) .card__header,:host([padding="none"]) .card__body,:host([padding="none"]) .card__footer{padding:0}:host([padding="sm"]) .card__header,:host([padding="sm"]) .card__body,:host([padding="sm"]) .card__footer{padding:var(--ts-spacing-3)}:host([padding="md"]) .card__header,:host([padding="md"]) .card__body,:host([padding="md"]) .card__footer{padding:var(--ts-spacing-4)}:host([padding="lg"]) .card__header,:host([padding="lg"]) .card__body,:host([padding="lg"]) .card__footer{padding:var(--ts-spacing-6)}`;
|
|
6
|
+
|
|
7
|
+
const TsCard = class {
|
|
8
|
+
constructor(hostRef) {
|
|
9
|
+
index.registerInstance(this, hostRef);
|
|
10
|
+
}
|
|
11
|
+
/** Elevation level controlling the shadow depth. */
|
|
12
|
+
elevation = 'sm';
|
|
13
|
+
/** Makes the card interactive (hover effect, cursor pointer). */
|
|
14
|
+
interactive = false;
|
|
15
|
+
/** Border style variant. */
|
|
16
|
+
bordered = false;
|
|
17
|
+
/** Padding size for the card body. */
|
|
18
|
+
padding = 'md';
|
|
19
|
+
// eslint-disable-next-line @typescript-eslint/explicit-function-return-type
|
|
20
|
+
render() {
|
|
21
|
+
return (index.h(index.Host, { key: 'df768436768c2a229b760dc2e1ec17eae2822231', class: {
|
|
22
|
+
'ts-card': true,
|
|
23
|
+
[`ts-card--elevation-${this.elevation}`]: true,
|
|
24
|
+
[`ts-card--padding-${this.padding}`]: true,
|
|
25
|
+
'ts-card--interactive': this.interactive,
|
|
26
|
+
'ts-card--bordered': this.bordered,
|
|
27
|
+
}, role: this.interactive ? 'button' : undefined, tabindex: this.interactive ? '0' : undefined }, index.h("div", { key: 'bbbaa65e8096402164f96625b2be3600e49fcdc1', class: "card__base", part: "base" }, index.h("div", { key: 'ad3c8630cdcdf5d4a7ab19c8c41a70f9d63c80fb', class: "card__media", part: "media" }, index.h("slot", { key: '2b7edddbfa16039b41c3ee0b689595a1de50a054', name: "media" })), index.h("div", { key: '6e606c675ba1320106106994e74044af137149ce', class: "card__header", part: "header" }, index.h("slot", { key: '979b30143ea98f5df47272753e0c3a56c17dadb6', name: "header" })), index.h("div", { key: '78edb38cedd9ea7546c8755b9901c03553daf361', class: "card__body", part: "body" }, index.h("slot", { key: '0675cffbc1a040606c071467d00021934ecff188' })), index.h("div", { key: 'f07414c17dc68315cf88e30e509f2736e274e3f2', class: "card__footer", part: "footer" }, index.h("slot", { key: '9a7eae045f925a2f0e4e21c857293ad7bc12ea0c', name: "footer" })))));
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
TsCard.style = cardCss();
|
|
31
|
+
|
|
32
|
+
exports.ts_card = TsCard;
|
|
33
|
+
//# sourceMappingURL=ts-card.entry.cjs.js.map
|
|
34
|
+
|
|
35
|
+
//# sourceMappingURL=ts-card.cjs.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"file":"ts-card.cjs.entry.js","mappings":";;;;AAAA,MAAM,OAAO,GAAG,MAAM,CAAC,69DAA69D,CAAC;;MCmBx+D,MAAM,GAAA,MAAA;;;;;IAEQ,SAAS,GAAuC,IAAI;;IAGpD,WAAW,GAAG,KAAK;;IAGnB,QAAQ,GAAG,KAAK;;IAGhB,OAAO,GAAgC,IAAI;;IAGpE,MAAM,GAAA;QACJ,QACEA,OAAA,CAACC,UAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EACH,KAAK,EAAE;AACL,gBAAA,SAAS,EAAE,IAAI;AACf,gBAAA,CAAC,sBAAsB,IAAI,CAAC,SAAS,CAAA,CAAE,GAAG,IAAI;AAC9C,gBAAA,CAAC,oBAAoB,IAAI,CAAC,OAAO,CAAA,CAAE,GAAG,IAAI;gBAC1C,sBAAsB,EAAE,IAAI,CAAC,WAAW;gBACxC,mBAAmB,EAAE,IAAI,CAAC,QAAQ;AACnC,aAAA,EACD,IAAI,EAAE,IAAI,CAAC,WAAW,GAAG,QAAQ,GAAG,SAAS,EAC7C,QAAQ,EAAE,IAAI,CAAC,WAAW,GAAG,GAAG,GAAG,SAAS,EAAA,EAE5CD,OAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,YAAY,EAAC,IAAI,EAAC,MAAM,EAAA,EACjCA,OAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,aAAa,EAAC,IAAI,EAAC,OAAO,EAAA,EACnCA,OAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,IAAI,EAAC,OAAO,EAAA,CAAG,CACjB,EAENA,OAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,cAAc,EAAC,IAAI,EAAC,QAAQ,EAAA,EACrCA,OAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,IAAI,EAAC,QAAQ,EAAA,CAAG,CAClB,EAENA,OAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,YAAY,EAAC,IAAI,EAAC,MAAM,EAAA,EACjCA,OAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAQ,CACJ,EAENA,OAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,cAAc,EAAC,IAAI,EAAC,QAAQ,EAAA,EACrCA,OAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,IAAI,EAAC,QAAQ,EAAA,CAAG,CAClB,CACF,CACD;;;;;;;","names":["h","Host"],"sources":["src/components/card/card.css?tag=ts-card&encapsulation=shadow","src/components/card/card.tsx"],"sourcesContent":["/* ==========================================================================\n ts-card — Shadow DOM Scoped Styles\n\n Component tokens (Tier 3):\n --ts-card-bg Card background\n --ts-card-radius Border radius\n --ts-card-border-color Border color (when bordered)\n ========================================================================== */\n\n:host {\n display: block;\n font-family: var(--ts-font-family-base);\n\n --ts-card-bg: var(--ts-color-bg-elevated);\n --ts-card-radius: var(--ts-shape-container);\n --ts-card-border-color: var(--ts-color-border-subtle);\n}\n\n.card__base {\n border-radius: var(--ts-card-radius);\n background-color: var(--ts-card-bg);\n border: 1px solid transparent;\n overflow: hidden;\n transition:\n box-shadow var(--ts-transition-normal),\n transform var(--ts-transition-normal),\n border-color var(--ts-transition-normal);\n}\n\n/* ---- Elevation ---- */\n:host([elevation=\"none\"]) .card__base { box-shadow: none; }\n:host([elevation=\"sm\"]) .card__base { box-shadow: var(--ts-shadow-sm); }\n:host([elevation=\"md\"]) .card__base { box-shadow: var(--ts-shadow-md); }\n:host([elevation=\"lg\"]) .card__base { box-shadow: var(--ts-shadow-lg); }\n:host([elevation=\"xl\"]) .card__base { box-shadow: var(--ts-shadow-xl); }\n\n/* ---- Bordered ---- */\n:host([bordered]) .card__base {\n border: 1px solid var(--ts-card-border-color);\n}\n\n/* ---- Interactive ---- */\n:host([interactive]) {\n cursor: pointer;\n}\n\n:host([interactive]) .card__base:hover {\n box-shadow: var(--ts-shadow-lg);\n}\n\n:host([interactive]) .card__base:active {\n box-shadow: var(--ts-shadow-md);\n}\n\n:host([interactive]:focus-visible) .card__base {\n box-shadow: var(--ts-focus-ring);\n}\n\n/* ---- Sections ---- */\n.card__media {\n overflow: hidden;\n}\n\n.card__media:empty {\n display: none;\n}\n\n.card__media ::slotted(img) {\n display: block;\n width: 100%;\n height: auto;\n object-fit: cover;\n}\n\n.card__header {\n border-bottom: 1px solid var(--ts-card-border-color);\n}\n\n.card__header:empty {\n display: none;\n border-bottom: none;\n}\n\n.card__footer {\n border-top: 1px solid var(--ts-card-border-color);\n}\n\n.card__footer:empty {\n display: none;\n border-top: none;\n}\n\n/* ---- Padding ---- */\n:host([padding=\"none\"]) .card__header,\n:host([padding=\"none\"]) .card__body,\n:host([padding=\"none\"]) .card__footer { padding: 0; }\n\n:host([padding=\"sm\"]) .card__header,\n:host([padding=\"sm\"]) .card__body,\n:host([padding=\"sm\"]) .card__footer { padding: var(--ts-spacing-3); }\n\n:host([padding=\"md\"]) .card__header,\n:host([padding=\"md\"]) .card__body,\n:host([padding=\"md\"]) .card__footer { padding: var(--ts-spacing-4); }\n\n:host([padding=\"lg\"]) .card__header,\n:host([padding=\"lg\"]) .card__body,\n:host([padding=\"lg\"]) .card__footer { padding: var(--ts-spacing-6); }\n","import { Component, Prop, h, Host } from '@stencil/core';\n\n/**\n * @slot - Default slot for card body content.\n * @slot header - Card header content.\n * @slot footer - Card footer content.\n * @slot media - Media content (image, video) displayed at the top.\n *\n * @part base - The card container.\n * @part header - The header wrapper.\n * @part body - The body wrapper.\n * @part footer - The footer wrapper.\n * @part media - The media wrapper.\n */\n@Component({\n tag: 'ts-card',\n styleUrl: 'card.css',\n shadow: true,\n})\nexport class TsCard {\n /** Elevation level controlling the shadow depth. */\n @Prop({ reflect: true }) elevation: 'none' | 'sm' | 'md' | 'lg' | 'xl' = 'sm';\n\n /** Makes the card interactive (hover effect, cursor pointer). */\n @Prop({ reflect: true }) interactive = false;\n\n /** Border style variant. */\n @Prop({ reflect: true }) bordered = false;\n\n /** Padding size for the card body. */\n @Prop({ reflect: true }) padding: 'none' | 'sm' | 'md' | 'lg' = 'md';\n\n // eslint-disable-next-line @typescript-eslint/explicit-function-return-type\n render() {\n return (\n <Host\n class={{\n 'ts-card': true,\n [`ts-card--elevation-${this.elevation}`]: true,\n [`ts-card--padding-${this.padding}`]: true,\n 'ts-card--interactive': this.interactive,\n 'ts-card--bordered': this.bordered,\n }}\n role={this.interactive ? 'button' : undefined}\n tabindex={this.interactive ? '0' : undefined}\n >\n <div class=\"card__base\" part=\"base\">\n <div class=\"card__media\" part=\"media\">\n <slot name=\"media\" />\n </div>\n\n <div class=\"card__header\" part=\"header\">\n <slot name=\"header\" />\n </div>\n\n <div class=\"card__body\" part=\"body\">\n <slot />\n </div>\n\n <div class=\"card__footer\" part=\"footer\">\n <slot name=\"footer\" />\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var index = require('./index-Bel_x2OU.js');
|
|
4
|
+
var aria = require('./aria-CeYIvz3U.js');
|
|
5
|
+
|
|
6
|
+
const checkboxCss = () => `:host{display:inline-block;font-family:var(--ts-font-family-base);--ts-checkbox-size:1.25rem;--ts-checkbox-color:var(--ts-color-interactive-primary);--ts-checkbox-radius:4px;--ts-checkbox-border-color:var(--ts-color-border-default)}.checkbox__base{display:inline-flex;align-items:center;gap:var(--ts-spacing-2);cursor:pointer;outline:none}.checkbox__base:focus-visible .checkbox__control{box-shadow:var(--ts-focus-ring)}.checkbox__control{display:inline-flex;align-items:center;justify-content:center;width:var(--ts-checkbox-size);height:var(--ts-checkbox-size);box-sizing:border-box;border:2px solid var(--ts-checkbox-border-color);border-radius:var(--ts-checkbox-radius);background-color:var(--ts-color-bg-elevated);transition:background-color var(--ts-transition-fast), border-color var(--ts-transition-fast), box-shadow var(--ts-transition-fast);flex-shrink:0}:host([checked]) .checkbox__control,:host([indeterminate]) .checkbox__control{background-color:var(--ts-checkbox-color);border-color:var(--ts-checkbox-color);color:var(--ts-color-text-on-primary)}.checkbox__base:hover:not([aria-disabled="true"]) .checkbox__control{border-color:var(--ts-color-primary-500)}:host([error]) .checkbox__control{border-color:var(--ts-color-danger-500)}:host([disabled]) .checkbox__base{opacity:0.5;cursor:not-allowed;pointer-events:none}.checkbox__icon{width:100%;height:100%;transform:scale(1);transition:transform var(--ts-transition-fast)}:host([checked]) .checkbox__icon{animation:none}:host([size="sm"]){--ts-checkbox-size:1rem}:host([size="sm"]) .checkbox__label{font-size:var(--ts-font-size-sm)}:host([size="md"]) .checkbox__label{font-size:var(--ts-font-size-md)}:host([size="lg"]){--ts-checkbox-size:1.5rem}:host([size="lg"]) .checkbox__label{font-size:var(--ts-font-size-lg)}.checkbox__label{color:var(--ts-color-text-primary);line-height:var(--ts-line-height-normal);user-select:none}`;
|
|
7
|
+
|
|
8
|
+
const TsCheckbox = class {
|
|
9
|
+
constructor(hostRef) {
|
|
10
|
+
index.registerInstance(this, hostRef);
|
|
11
|
+
this.tsChange = index.createEvent(this, "tsChange");
|
|
12
|
+
}
|
|
13
|
+
get hostEl() { return index.getElement(this); }
|
|
14
|
+
inputId = aria.generateId('ts-checkbox');
|
|
15
|
+
/** Whether the checkbox is checked. */
|
|
16
|
+
checked = false;
|
|
17
|
+
/** Whether the checkbox is in an indeterminate state. */
|
|
18
|
+
indeterminate = false;
|
|
19
|
+
/** Renders the checkbox as disabled. */
|
|
20
|
+
disabled = false;
|
|
21
|
+
/** The value associated with this checkbox. */
|
|
22
|
+
value = '';
|
|
23
|
+
/** Name attribute for form submission. */
|
|
24
|
+
name;
|
|
25
|
+
/** Label text. If omitted, use the default slot. */
|
|
26
|
+
label;
|
|
27
|
+
/** The checkbox size. */
|
|
28
|
+
size = 'md';
|
|
29
|
+
/** Renders the checkbox in an error state. */
|
|
30
|
+
error = false;
|
|
31
|
+
/** Emitted when the checked state changes. */
|
|
32
|
+
tsChange;
|
|
33
|
+
/** Programmatically toggle the checkbox. */
|
|
34
|
+
async toggle() {
|
|
35
|
+
if (!this.disabled) {
|
|
36
|
+
this.indeterminate = false;
|
|
37
|
+
this.checked = !this.checked;
|
|
38
|
+
this.tsChange.emit({ checked: this.checked, value: this.value });
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
handleClick = () => {
|
|
42
|
+
this.toggle();
|
|
43
|
+
};
|
|
44
|
+
handleKeydown = (event) => {
|
|
45
|
+
if (event.key === ' ') {
|
|
46
|
+
event.preventDefault();
|
|
47
|
+
this.toggle();
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
// eslint-disable-next-line @typescript-eslint/explicit-function-return-type
|
|
51
|
+
render() {
|
|
52
|
+
const ariaChecked = this.indeterminate ? 'mixed' : this.checked ? 'true' : 'false';
|
|
53
|
+
return (index.h(index.Host, { key: '9fc5e264e8b2491f0634f414ba8b1124e791bd32', class: {
|
|
54
|
+
'ts-checkbox': true,
|
|
55
|
+
[`ts-checkbox--${this.size}`]: true,
|
|
56
|
+
'ts-checkbox--checked': this.checked,
|
|
57
|
+
'ts-checkbox--indeterminate': this.indeterminate,
|
|
58
|
+
'ts-checkbox--disabled': this.disabled,
|
|
59
|
+
'ts-checkbox--error': this.error,
|
|
60
|
+
} }, index.h("div", { key: '9c5a2c9c28f00effd46caf892e0e91f8ca845bed', class: "checkbox__base", part: "base", role: "checkbox", "aria-checked": ariaChecked, "aria-disabled": this.disabled ? 'true' : undefined, tabindex: this.disabled ? -1 : 0, onClick: this.handleClick, onKeyDown: this.handleKeydown }, index.h("div", { key: '5be7cabec162a5fdbbef10e63b649c81fbd97322', class: "checkbox__control", part: "control" }, this.checked && !this.indeterminate && (index.h("svg", { key: 'e4e4a9e04b8c7bfbbdfd60de8d570823984c7eb4', class: "checkbox__icon", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true" }, index.h("path", { key: '3f0e5fbb1fea51bf6b5b79a3909bc43cdee6d0f1', d: "M3.5 8L6.5 11L12.5 5", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" }))), this.indeterminate && (index.h("svg", { key: '521bbf1e40987c631ccdafda69e7d8f683b7b994', class: "checkbox__icon", viewBox: "0 0 16 16", fill: "none", "aria-hidden": "true" }, index.h("path", { key: 'd0d14bb0d20ef58997d4c567530f1c369d904b37', d: "M4 8H12", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round" })))), index.h("label", { key: 'a939e2911282e988f110fd20c9c0f2fc71a892bd', class: "checkbox__label", part: "label", id: `${this.inputId}-label` }, this.label ? this.label : index.h("slot", null)))));
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
TsCheckbox.style = checkboxCss();
|
|
64
|
+
|
|
65
|
+
exports.ts_checkbox = TsCheckbox;
|
|
66
|
+
//# sourceMappingURL=ts-checkbox.entry.cjs.js.map
|
|
67
|
+
|
|
68
|
+
//# sourceMappingURL=ts-checkbox.cjs.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"file":"ts-checkbox.cjs.entry.js","mappings":";;;;;AAAA,MAAM,WAAW,GAAG,MAAM,CAAC,u2DAAu2D,CAAC;;MCiBt3D,UAAU,GAAA,MAAA;;;;;;AAGb,IAAA,OAAO,GAAGA,eAAU,CAAC,aAAa,CAAC;;IAGH,OAAO,GAAG,KAAK;;IAGf,aAAa,GAAG,KAAK;;IAGpC,QAAQ,GAAG,KAAK;;IAGjC,KAAK,GAAG,EAAE;;AAGV,IAAA,IAAI;;AAGJ,IAAA,KAAK;;IAGY,IAAI,GAAuB,IAAI;;IAG/B,KAAK,GAAG,KAAK;;AAGJ,IAAA,QAAQ;;AAI1C,IAAA,MAAM,MAAM,GAAA;AACV,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;AAClB,YAAA,IAAI,CAAC,aAAa,GAAG,KAAK;AAC1B,YAAA,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO;AAC5B,YAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;;;IAI5D,WAAW,GAAG,MAAW;QAC/B,IAAI,CAAC,MAAM,EAAE;AACf,KAAC;AAEO,IAAA,aAAa,GAAG,CAAC,KAAoB,KAAU;AACrD,QAAA,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,EAAE;YACrB,KAAK,CAAC,cAAc,EAAE;YACtB,IAAI,CAAC,MAAM,EAAE;;AAEjB,KAAC;;IAGD,MAAM,GAAA;QACJ,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,GAAG,OAAO,GAAG,IAAI,CAAC,OAAO,GAAG,MAAM,GAAG,OAAO;QAElF,QACEC,OAAA,CAACC,UAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EACH,KAAK,EAAE;AACL,gBAAA,aAAa,EAAE,IAAI;AACnB,gBAAA,CAAC,gBAAgB,IAAI,CAAC,IAAI,CAAA,CAAE,GAAG,IAAI;gBACnC,sBAAsB,EAAE,IAAI,CAAC,OAAO;gBACpC,4BAA4B,EAAE,IAAI,CAAC,aAAa;gBAChD,uBAAuB,EAAE,IAAI,CAAC,QAAQ;gBACtC,oBAAoB,EAAE,IAAI,CAAC,KAAK;AACjC,aAAA,EAAA,EAEDD,OAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAC,gBAAgB,EACtB,IAAI,EAAC,MAAM,EACX,IAAI,EAAC,UAAU,kBACD,WAAW,EAAA,eAAA,EACV,IAAI,CAAC,QAAQ,GAAG,MAAM,GAAG,SAAS,EACjD,QAAQ,EAAE,IAAI,CAAC,QAAQ,GAAG,EAAE,GAAG,CAAC,EAChC,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,SAAS,EAAE,IAAI,CAAC,aAAa,EAAA,EAE7BA,OAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,mBAAmB,EAAC,IAAI,EAAC,SAAS,EAAA,EAC1C,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,KAClCA,OAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,gBAAgB,EAAC,OAAO,EAAC,WAAW,EAAC,IAAI,EAAC,MAAM,EAAA,aAAA,EAAa,MAAM,EAAA,EAC5EA,OAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,CAAC,EAAC,sBAAsB,EACxB,MAAM,EAAC,cAAc,EAAA,cAAA,EACR,GAAG,oBACD,OAAO,EAAA,iBAAA,EACN,OAAO,EAAA,CACvB,CACE,CACP,EACA,IAAI,CAAC,aAAa,KACjBA,OAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAC,gBAAgB,EAAC,OAAO,EAAC,WAAW,EAAC,IAAI,EAAC,MAAM,iBAAa,MAAM,EAAA,EAC5EA,OAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,CAAC,EAAC,SAAS,EACX,MAAM,EAAC,cAAc,EAAA,cAAA,EACR,GAAG,EAAA,gBAAA,EACD,OAAO,EAAA,CACtB,CACE,CACP,CACG,EAENA,OAAA,CAAA,OAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAO,KAAK,EAAC,iBAAiB,EAAC,IAAI,EAAC,OAAO,EAAC,EAAE,EAAE,CAAA,EAAG,IAAI,CAAC,OAAO,CAAA,MAAA,CAAQ,EAAA,EACpE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAGA,OAAA,CAAA,MAAA,EAAA,IAAA,CAAQ,CAC7B,CACJ,CACD;;;;;;;","names":["generateId","h","Host"],"sources":["src/components/checkbox/checkbox.css?tag=ts-checkbox&encapsulation=shadow","src/components/checkbox/checkbox.tsx"],"sourcesContent":["/* ==========================================================================\n ts-checkbox — Shadow DOM Scoped Styles\n\n Component tokens (Tier 3):\n --ts-checkbox-size Checkbox box size\n --ts-checkbox-color Checked background color\n --ts-checkbox-radius Border radius\n --ts-checkbox-border-color Default border color\n ========================================================================== */\n\n:host {\n display: inline-block;\n font-family: var(--ts-font-family-base);\n\n --ts-checkbox-size: 1.25rem;\n --ts-checkbox-color: var(--ts-color-interactive-primary);\n --ts-checkbox-radius: 4px;\n --ts-checkbox-border-color: var(--ts-color-border-default);\n}\n\n/* ---- Base container ---- */\n.checkbox__base {\n display: inline-flex;\n align-items: center;\n gap: var(--ts-spacing-2);\n cursor: pointer;\n outline: none;\n}\n\n.checkbox__base:focus-visible .checkbox__control {\n box-shadow: var(--ts-focus-ring);\n}\n\n/* ---- Control box ---- */\n.checkbox__control {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--ts-checkbox-size);\n height: var(--ts-checkbox-size);\n box-sizing: border-box;\n border: 2px solid var(--ts-checkbox-border-color);\n border-radius: var(--ts-checkbox-radius);\n background-color: var(--ts-color-bg-elevated);\n transition:\n background-color var(--ts-transition-fast),\n border-color var(--ts-transition-fast),\n box-shadow var(--ts-transition-fast);\n flex-shrink: 0;\n}\n\n/* ---- Checked & indeterminate states ---- */\n:host([checked]) .checkbox__control,\n:host([indeterminate]) .checkbox__control {\n background-color: var(--ts-checkbox-color);\n border-color: var(--ts-checkbox-color);\n color: var(--ts-color-text-on-primary);\n}\n\n/* ---- Hover ---- */\n.checkbox__base:hover:not([aria-disabled=\"true\"]) .checkbox__control {\n border-color: var(--ts-color-primary-500);\n}\n\n/* ---- Error state ---- */\n:host([error]) .checkbox__control {\n border-color: var(--ts-color-danger-500);\n}\n\n/* ---- Disabled state ---- */\n:host([disabled]) .checkbox__base {\n opacity: 0.5;\n cursor: not-allowed;\n pointer-events: none;\n}\n\n/* ---- Checkmark icon ---- */\n.checkbox__icon {\n width: 100%;\n height: 100%;\n transform: scale(1);\n transition: transform var(--ts-transition-fast);\n}\n\n:host([checked]) .checkbox__icon {\n animation: none;\n}\n\n/* ---- Sizes ---- */\n:host([size=\"sm\"]) {\n --ts-checkbox-size: 1rem;\n}\n\n:host([size=\"sm\"]) .checkbox__label {\n font-size: var(--ts-font-size-sm);\n}\n\n:host([size=\"md\"]) .checkbox__label {\n font-size: var(--ts-font-size-md);\n}\n\n:host([size=\"lg\"]) {\n --ts-checkbox-size: 1.5rem;\n}\n\n:host([size=\"lg\"]) .checkbox__label {\n font-size: var(--ts-font-size-lg);\n}\n\n/* ---- Label ---- */\n.checkbox__label {\n color: var(--ts-color-text-primary);\n line-height: var(--ts-line-height-normal);\n user-select: none;\n}\n","import { Component, Prop, Event, h, Host, Element, Method } from '@stencil/core';\nimport type { EventEmitter } from '@stencil/core';\nimport type { TsCheckboxChangeEventDetail } from '../../types';\nimport { generateId } from '../../utils/aria';\n\n/**\n * @slot - Default slot for the checkbox label.\n *\n * @part base - The checkbox container.\n * @part control - The visual checkbox box.\n * @part label - The label wrapper.\n */\n@Component({\n tag: 'ts-checkbox',\n styleUrl: 'checkbox.css',\n shadow: true,\n})\nexport class TsCheckbox {\n @Element() hostEl!: HTMLElement;\n\n private inputId = generateId('ts-checkbox');\n\n /** Whether the checkbox is checked. */\n @Prop({ mutable: true, reflect: true }) checked = false;\n\n /** Whether the checkbox is in an indeterminate state. */\n @Prop({ mutable: true, reflect: true }) indeterminate = false;\n\n /** Renders the checkbox as disabled. */\n @Prop({ reflect: true }) disabled = false;\n\n /** The value associated with this checkbox. */\n @Prop() value = '';\n\n /** Name attribute for form submission. */\n @Prop() name?: string;\n\n /** Label text. If omitted, use the default slot. */\n @Prop() label?: string;\n\n /** The checkbox size. */\n @Prop({ reflect: true }) size: 'sm' | 'md' | 'lg' = 'md';\n\n /** Renders the checkbox in an error state. */\n @Prop({ reflect: true }) error = false;\n\n /** Emitted when the checked state changes. */\n @Event({ eventName: 'tsChange' }) tsChange!: EventEmitter<TsCheckboxChangeEventDetail>;\n\n /** Programmatically toggle the checkbox. */\n @Method()\n async toggle(): Promise<void> {\n if (!this.disabled) {\n this.indeterminate = false;\n this.checked = !this.checked;\n this.tsChange.emit({ checked: this.checked, value: this.value });\n }\n }\n\n private handleClick = (): void => {\n this.toggle();\n };\n\n private handleKeydown = (event: KeyboardEvent): void => {\n if (event.key === ' ') {\n event.preventDefault();\n this.toggle();\n }\n };\n\n // eslint-disable-next-line @typescript-eslint/explicit-function-return-type\n render() {\n const ariaChecked = this.indeterminate ? 'mixed' : this.checked ? 'true' : 'false';\n\n return (\n <Host\n class={{\n 'ts-checkbox': true,\n [`ts-checkbox--${this.size}`]: true,\n 'ts-checkbox--checked': this.checked,\n 'ts-checkbox--indeterminate': this.indeterminate,\n 'ts-checkbox--disabled': this.disabled,\n 'ts-checkbox--error': this.error,\n }}\n >\n <div\n class=\"checkbox__base\"\n part=\"base\"\n role=\"checkbox\"\n aria-checked={ariaChecked}\n aria-disabled={this.disabled ? 'true' : undefined}\n tabindex={this.disabled ? -1 : 0}\n onClick={this.handleClick}\n onKeyDown={this.handleKeydown}\n >\n <div class=\"checkbox__control\" part=\"control\">\n {this.checked && !this.indeterminate && (\n <svg class=\"checkbox__icon\" viewBox=\"0 0 16 16\" fill=\"none\" aria-hidden=\"true\">\n <path\n d=\"M3.5 8L6.5 11L12.5 5\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n />\n </svg>\n )}\n {this.indeterminate && (\n <svg class=\"checkbox__icon\" viewBox=\"0 0 16 16\" fill=\"none\" aria-hidden=\"true\">\n <path\n d=\"M4 8H12\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n />\n </svg>\n )}\n </div>\n\n <label class=\"checkbox__label\" part=\"label\" id={`${this.inputId}-label`}>\n {this.label ? this.label : <slot />}\n </label>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var index = require('./index-Bel_x2OU.js');
|
|
4
|
+
|
|
5
|
+
const chipCss = () => `:host{display:inline-block;vertical-align:middle;font-family:var(--ts-font-family-base);--ts-chip-radius:var(--ts-radius-full, 9999px);--ts-chip-height:2rem}.chip__base{display:inline-flex;align-items:center;gap:var(--ts-spacing-1);block-size:var(--ts-chip-height);padding-inline:var(--ts-spacing-3);border-radius:var(--ts-chip-radius);font-size:var(--ts-font-size-sm);font-weight:var(--ts-font-weight-medium);line-height:1;cursor:pointer;user-select:none;border:1px solid transparent;outline:none;transition:background-color var(--ts-transition-fast), border-color var(--ts-transition-fast), color var(--ts-transition-fast), box-shadow var(--ts-transition-fast)}.chip__base:focus-visible{box-shadow:var(--ts-focus-ring)}:host([size="sm"]){--ts-chip-height:1.5rem}:host([size="sm"]) .chip__base{padding-inline:var(--ts-spacing-2);font-size:var(--ts-font-size-xs)}:host([size="lg"]){--ts-chip-height:2.5rem}:host([size="lg"]) .chip__base{padding-inline:var(--ts-spacing-4);font-size:var(--ts-font-size-md)}:host([variant="neutral"]:not([outline])) .chip__base{background-color:var(--ts-color-neutral-200);color:var(--ts-color-text-primary)}:host([variant="neutral"]:not([outline])) .chip__base:hover{background-color:var(--ts-color-neutral-300)}:host([variant="primary"]:not([outline])) .chip__base{background-color:var(--ts-color-primary-100, var(--ts-color-primary-500));color:var(--ts-color-primary-700, var(--ts-color-text-primary))}:host([variant="primary"]:not([outline])) .chip__base:hover{background-color:var(--ts-color-primary-200, var(--ts-color-primary-600))}:host([variant="success"]:not([outline])) .chip__base{background-color:var(--ts-color-success-bg);color:var(--ts-color-success-600)}:host([variant="warning"]:not([outline])) .chip__base{background-color:var(--ts-color-warning-bg);color:var(--ts-color-warning-600)}:host([variant="danger"]:not([outline])) .chip__base{background-color:var(--ts-color-danger-bg);color:var(--ts-color-danger-600)}:host([variant="info"]:not([outline])) .chip__base{background-color:var(--ts-color-info-bg);color:var(--ts-color-info-600)}:host([variant="secondary"]:not([outline])) .chip__base{background-color:var(--ts-color-neutral-100);color:var(--ts-color-text-secondary)}:host([outline]) .chip__base{background-color:transparent}:host([outline][variant="neutral"]) .chip__base{border-color:var(--ts-color-border-strong);color:var(--ts-color-text-secondary)}:host([outline][variant="neutral"]) .chip__base:hover{background-color:var(--ts-color-bg-subtle)}:host([outline][variant="primary"]) .chip__base{border-color:var(--ts-color-primary-500);color:var(--ts-color-primary-600)}:host([outline][variant="primary"]) .chip__base:hover{background-color:var(--ts-color-primary-100, var(--ts-color-interactive-primary-subtle))}:host([outline][variant="danger"]) .chip__base{border-color:var(--ts-color-danger-500);color:var(--ts-color-danger-600)}:host([outline][variant="success"]) .chip__base{border-color:var(--ts-color-success-500, var(--ts-color-success-border));color:var(--ts-color-success-600)}:host([outline][variant="warning"]) .chip__base{border-color:var(--ts-color-warning-500, var(--ts-color-warning-border));color:var(--ts-color-warning-600)}:host([outline][variant="info"]) .chip__base{border-color:var(--ts-color-info-500, var(--ts-color-info-border));color:var(--ts-color-info-600)}:host([selected]) .chip__base{background-color:var(--ts-color-interactive-primary);color:var(--ts-color-text-on-primary);border-color:var(--ts-color-interactive-primary)}:host([selected]) .chip__base:hover{background-color:var(--ts-color-interactive-primary-hover);border-color:var(--ts-color-interactive-primary-hover)}:host([disabled]) .chip__base{opacity:0.5;cursor:not-allowed;pointer-events:none}.chip__prefix{display:inline-flex;align-items:center}.chip__prefix:empty{display:none}.chip__label{display:inline-flex;align-items:center}.chip__remove{display:inline-flex;align-items:center;justify-content:center;inline-size:1.1em;block-size:1.1em;border:none;border-radius:50%;background:transparent;color:currentColor;opacity:0.6;cursor:pointer;font-size:0.75em;padding:0;margin-inline-start:var(--ts-spacing-1);line-height:1;transition:opacity var(--ts-transition-fast)}.chip__remove:hover{opacity:1}.chip__remove:focus-visible{box-shadow:var(--ts-focus-ring);opacity:1}.chip__remove:disabled{cursor:not-allowed;pointer-events:none}`;
|
|
6
|
+
|
|
7
|
+
const TsChip = class {
|
|
8
|
+
constructor(hostRef) {
|
|
9
|
+
index.registerInstance(this, hostRef);
|
|
10
|
+
this.tsRemove = index.createEvent(this, "tsRemove");
|
|
11
|
+
this.tsClick = index.createEvent(this, "tsClick");
|
|
12
|
+
}
|
|
13
|
+
/** The chip's semantic variant. */
|
|
14
|
+
variant = 'neutral';
|
|
15
|
+
/** The chip's size. */
|
|
16
|
+
size = 'md';
|
|
17
|
+
/** Whether the chip shows a remove button. */
|
|
18
|
+
removable = false;
|
|
19
|
+
/** Whether the chip is disabled. */
|
|
20
|
+
disabled = false;
|
|
21
|
+
/** Whether the chip is selected. */
|
|
22
|
+
selected = false;
|
|
23
|
+
/** Whether to render as outline style. */
|
|
24
|
+
outline = false;
|
|
25
|
+
/** Emitted when the remove button is clicked. */
|
|
26
|
+
tsRemove;
|
|
27
|
+
/** Emitted when the chip body is clicked. */
|
|
28
|
+
tsClick;
|
|
29
|
+
handleClick = () => {
|
|
30
|
+
if (this.disabled)
|
|
31
|
+
return;
|
|
32
|
+
this.tsClick.emit();
|
|
33
|
+
};
|
|
34
|
+
handleRemove = (event) => {
|
|
35
|
+
event.stopPropagation();
|
|
36
|
+
if (this.disabled)
|
|
37
|
+
return;
|
|
38
|
+
this.tsRemove.emit();
|
|
39
|
+
};
|
|
40
|
+
handleKeydown = (event) => {
|
|
41
|
+
if (this.disabled)
|
|
42
|
+
return;
|
|
43
|
+
if (event.key === 'Enter' || event.key === ' ') {
|
|
44
|
+
event.preventDefault();
|
|
45
|
+
this.tsClick.emit();
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
handleRemoveKeydown = (event) => {
|
|
49
|
+
if (this.disabled)
|
|
50
|
+
return;
|
|
51
|
+
if (event.key === 'Enter' || event.key === ' ') {
|
|
52
|
+
event.preventDefault();
|
|
53
|
+
event.stopPropagation();
|
|
54
|
+
this.tsRemove.emit();
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
// eslint-disable-next-line @typescript-eslint/explicit-function-return-type
|
|
58
|
+
render() {
|
|
59
|
+
const isInteractive = !this.disabled;
|
|
60
|
+
return (index.h(index.Host, { key: 'cf6fed27509592a4105f794976e8995ca03ddecd', class: {
|
|
61
|
+
'ts-chip': true,
|
|
62
|
+
[`ts-chip--${this.variant}`]: true,
|
|
63
|
+
[`ts-chip--${this.size}`]: true,
|
|
64
|
+
'ts-chip--selected': this.selected,
|
|
65
|
+
'ts-chip--outline': this.outline,
|
|
66
|
+
'ts-chip--disabled': this.disabled,
|
|
67
|
+
'ts-chip--removable': this.removable,
|
|
68
|
+
} }, index.h("span", { key: '355bf33f71eb0761f766a5363bc317066dfc1b5c', class: "chip__base", part: "base", role: "button", tabindex: isInteractive ? '0' : undefined, "aria-disabled": this.disabled ? 'true' : undefined, "aria-pressed": this.selected ? 'true' : undefined, onClick: this.handleClick, onKeyDown: this.handleKeydown }, index.h("span", { key: '8476fe8599f535022b2afc7c6229bd92ea3549ff', class: "chip__prefix", part: "prefix" }, index.h("slot", { key: '2379133e14d192afd474e06ce3a2140a6a7dcfa7', name: "prefix" })), index.h("span", { key: '8a1053c6315f717a12fc61f0dc3ffeb458a6fbb2', class: "chip__label", part: "label" }, index.h("slot", { key: '3d46aefd8fd7a03d6bd3d21d5679a6b90361b1ed' })), this.removable && (index.h("button", { key: '41de0966096540a5f9f29168a181a353661ee934', class: "chip__remove", part: "remove", type: "button", "aria-label": "Remove", disabled: this.disabled, onClick: this.handleRemove, onKeyDown: this.handleRemoveKeydown }, "\\u2715")))));
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
TsChip.style = chipCss();
|
|
72
|
+
|
|
73
|
+
exports.ts_chip = TsChip;
|
|
74
|
+
//# sourceMappingURL=ts-chip.entry.cjs.js.map
|
|
75
|
+
|
|
76
|
+
//# sourceMappingURL=ts-chip.cjs.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"file":"ts-chip.cjs.entry.js","mappings":"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","names":["h","Host"],"sources":["src/components/chip/chip.css?tag=ts-chip&encapsulation=shadow","src/components/chip/chip.tsx"],"sourcesContent":["/* ==========================================================================\n ts-chip — Shadow DOM Scoped Styles\n\n Component tokens (Tier 3):\n --ts-chip-radius Border radius (pill shape)\n --ts-chip-height Chip height per size\n ========================================================================== */\n\n:host {\n display: inline-block;\n vertical-align: middle;\n font-family: var(--ts-font-family-base);\n\n --ts-chip-radius: var(--ts-radius-full, 9999px);\n --ts-chip-height: 2rem;\n}\n\n/* ---- Base ---- */\n.chip__base {\n display: inline-flex;\n align-items: center;\n gap: var(--ts-spacing-1);\n block-size: var(--ts-chip-height);\n padding-inline: var(--ts-spacing-3);\n border-radius: var(--ts-chip-radius);\n font-size: var(--ts-font-size-sm);\n font-weight: var(--ts-font-weight-medium);\n line-height: 1;\n cursor: pointer;\n user-select: none;\n border: 1px solid transparent;\n outline: none;\n transition:\n background-color var(--ts-transition-fast),\n border-color var(--ts-transition-fast),\n color var(--ts-transition-fast),\n box-shadow var(--ts-transition-fast);\n}\n\n.chip__base:focus-visible {\n box-shadow: var(--ts-focus-ring);\n}\n\n/* ---- Sizes ---- */\n:host([size=\"sm\"]) {\n --ts-chip-height: 1.5rem;\n}\n:host([size=\"sm\"]) .chip__base {\n padding-inline: var(--ts-spacing-2);\n font-size: var(--ts-font-size-xs);\n}\n\n:host([size=\"lg\"]) {\n --ts-chip-height: 2.5rem;\n}\n:host([size=\"lg\"]) .chip__base {\n padding-inline: var(--ts-spacing-4);\n font-size: var(--ts-font-size-md);\n}\n\n/* ---- Solid Variants ---- */\n:host([variant=\"neutral\"]:not([outline])) .chip__base {\n background-color: var(--ts-color-neutral-200);\n color: var(--ts-color-text-primary);\n}\n:host([variant=\"neutral\"]:not([outline])) .chip__base:hover {\n background-color: var(--ts-color-neutral-300);\n}\n\n:host([variant=\"primary\"]:not([outline])) .chip__base {\n background-color: var(--ts-color-primary-100, var(--ts-color-primary-500));\n color: var(--ts-color-primary-700, var(--ts-color-text-primary));\n}\n:host([variant=\"primary\"]:not([outline])) .chip__base:hover {\n background-color: var(--ts-color-primary-200, var(--ts-color-primary-600));\n}\n\n:host([variant=\"success\"]:not([outline])) .chip__base {\n background-color: var(--ts-color-success-bg);\n color: var(--ts-color-success-600);\n}\n\n:host([variant=\"warning\"]:not([outline])) .chip__base {\n background-color: var(--ts-color-warning-bg);\n color: var(--ts-color-warning-600);\n}\n\n:host([variant=\"danger\"]:not([outline])) .chip__base {\n background-color: var(--ts-color-danger-bg);\n color: var(--ts-color-danger-600);\n}\n\n:host([variant=\"info\"]:not([outline])) .chip__base {\n background-color: var(--ts-color-info-bg);\n color: var(--ts-color-info-600);\n}\n\n:host([variant=\"secondary\"]:not([outline])) .chip__base {\n background-color: var(--ts-color-neutral-100);\n color: var(--ts-color-text-secondary);\n}\n\n/* ---- Outline Variants ---- */\n:host([outline]) .chip__base {\n background-color: transparent;\n}\n\n:host([outline][variant=\"neutral\"]) .chip__base {\n border-color: var(--ts-color-border-strong);\n color: var(--ts-color-text-secondary);\n}\n:host([outline][variant=\"neutral\"]) .chip__base:hover {\n background-color: var(--ts-color-bg-subtle);\n}\n\n:host([outline][variant=\"primary\"]) .chip__base {\n border-color: var(--ts-color-primary-500);\n color: var(--ts-color-primary-600);\n}\n:host([outline][variant=\"primary\"]) .chip__base:hover {\n background-color: var(--ts-color-primary-100, var(--ts-color-interactive-primary-subtle));\n}\n\n:host([outline][variant=\"danger\"]) .chip__base {\n border-color: var(--ts-color-danger-500);\n color: var(--ts-color-danger-600);\n}\n\n:host([outline][variant=\"success\"]) .chip__base {\n border-color: var(--ts-color-success-500, var(--ts-color-success-border));\n color: var(--ts-color-success-600);\n}\n\n:host([outline][variant=\"warning\"]) .chip__base {\n border-color: var(--ts-color-warning-500, var(--ts-color-warning-border));\n color: var(--ts-color-warning-600);\n}\n\n:host([outline][variant=\"info\"]) .chip__base {\n border-color: var(--ts-color-info-500, var(--ts-color-info-border));\n color: var(--ts-color-info-600);\n}\n\n/* ---- Selected state ---- */\n:host([selected]) .chip__base {\n background-color: var(--ts-color-interactive-primary);\n color: var(--ts-color-text-on-primary);\n border-color: var(--ts-color-interactive-primary);\n}\n:host([selected]) .chip__base:hover {\n background-color: var(--ts-color-interactive-primary-hover);\n border-color: var(--ts-color-interactive-primary-hover);\n}\n\n/* ---- Disabled ---- */\n:host([disabled]) .chip__base {\n opacity: 0.5;\n cursor: not-allowed;\n pointer-events: none;\n}\n\n/* ---- Prefix ---- */\n.chip__prefix {\n display: inline-flex;\n align-items: center;\n}\n\n.chip__prefix:empty {\n display: none;\n}\n\n/* ---- Label ---- */\n.chip__label {\n display: inline-flex;\n align-items: center;\n}\n\n/* ---- Remove button ---- */\n.chip__remove {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n inline-size: 1.1em;\n block-size: 1.1em;\n border: none;\n border-radius: 50%;\n background: transparent;\n color: currentColor;\n opacity: 0.6;\n cursor: pointer;\n font-size: 0.75em;\n padding: 0;\n margin-inline-start: var(--ts-spacing-1);\n line-height: 1;\n transition: opacity var(--ts-transition-fast);\n}\n\n.chip__remove:hover {\n opacity: 1;\n}\n\n.chip__remove:focus-visible {\n box-shadow: var(--ts-focus-ring);\n opacity: 1;\n}\n\n.chip__remove:disabled {\n cursor: not-allowed;\n pointer-events: none;\n}\n","import { Component, Prop, Event, h, Host } from '@stencil/core';\nimport type { EventEmitter } from '@stencil/core';\nimport type { TsVariant, TsSize } from '../../types';\n\n/**\n * @slot - Default slot for chip label.\n * @slot prefix - Icon or content before the label.\n *\n * @part base - The chip container.\n * @part label - The label wrapper.\n * @part prefix - The prefix slot wrapper.\n * @part remove - The remove button.\n */\n@Component({\n tag: 'ts-chip',\n styleUrl: 'chip.css',\n shadow: true,\n})\nexport class TsChip {\n /** The chip's semantic variant. */\n @Prop({ reflect: true }) variant: TsVariant = 'neutral';\n\n /** The chip's size. */\n @Prop({ reflect: true }) size: TsSize = 'md';\n\n /** Whether the chip shows a remove button. */\n @Prop({ reflect: true }) removable = false;\n\n /** Whether the chip is disabled. */\n @Prop({ reflect: true }) disabled = false;\n\n /** Whether the chip is selected. */\n @Prop({ reflect: true }) selected = false;\n\n /** Whether to render as outline style. */\n @Prop({ reflect: true }) outline = false;\n\n /** Emitted when the remove button is clicked. */\n @Event({ eventName: 'tsRemove' }) tsRemove!: EventEmitter<void>;\n\n /** Emitted when the chip body is clicked. */\n @Event({ eventName: 'tsClick' }) tsClick!: EventEmitter<void>;\n\n private handleClick = (): void => {\n if (this.disabled) return;\n this.tsClick.emit();\n };\n\n private handleRemove = (event: MouseEvent): void => {\n event.stopPropagation();\n if (this.disabled) return;\n this.tsRemove.emit();\n };\n\n private handleKeydown = (event: KeyboardEvent): void => {\n if (this.disabled) return;\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n this.tsClick.emit();\n }\n };\n\n private handleRemoveKeydown = (event: KeyboardEvent): void => {\n if (this.disabled) return;\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n event.stopPropagation();\n this.tsRemove.emit();\n }\n };\n\n // eslint-disable-next-line @typescript-eslint/explicit-function-return-type\n render() {\n const isInteractive = !this.disabled;\n\n return (\n <Host\n class={{\n 'ts-chip': true,\n [`ts-chip--${this.variant}`]: true,\n [`ts-chip--${this.size}`]: true,\n 'ts-chip--selected': this.selected,\n 'ts-chip--outline': this.outline,\n 'ts-chip--disabled': this.disabled,\n 'ts-chip--removable': this.removable,\n }}\n >\n <span\n class=\"chip__base\"\n part=\"base\"\n role=\"button\"\n tabindex={isInteractive ? '0' : undefined}\n aria-disabled={this.disabled ? 'true' : undefined}\n aria-pressed={this.selected ? 'true' : undefined}\n onClick={this.handleClick}\n onKeyDown={this.handleKeydown}\n >\n <span class=\"chip__prefix\" part=\"prefix\">\n <slot name=\"prefix\" />\n </span>\n\n <span class=\"chip__label\" part=\"label\">\n <slot />\n </span>\n\n {this.removable && (\n <button\n class=\"chip__remove\"\n part=\"remove\"\n type=\"button\"\n aria-label=\"Remove\"\n disabled={this.disabled}\n onClick={this.handleRemove}\n onKeyDown={this.handleRemoveKeydown}\n >\n \\u2715\n </button>\n )}\n </span>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var index = require('./index-Bel_x2OU.js');
|
|
4
|
+
|
|
5
|
+
const containerCss = () => `:host{display:block;margin-inline:auto;width:100%;box-sizing:border-box;--ts-container-padding:var(--ts-grid-margin)}:host([size="sm"]){max-width:640px}:host([size="md"]){max-width:768px}:host([size="lg"]){max-width:1024px}:host([size="xl"]){max-width:1280px}:host([size="full"]){max-width:100%}:host(:not(.ts-container--no-padding)){padding-inline:var(--ts-container-padding)}:host(.ts-container--no-padding){padding-inline:0}`;
|
|
6
|
+
|
|
7
|
+
const TsContainer = class {
|
|
8
|
+
constructor(hostRef) {
|
|
9
|
+
index.registerInstance(this, hostRef);
|
|
10
|
+
}
|
|
11
|
+
/** The maximum width of the container. */
|
|
12
|
+
size = 'lg';
|
|
13
|
+
/** Whether to apply horizontal padding. */
|
|
14
|
+
padding = true;
|
|
15
|
+
// eslint-disable-next-line @typescript-eslint/explicit-function-return-type
|
|
16
|
+
render() {
|
|
17
|
+
return (index.h(index.Host, { key: '45f43cf6088754adc81c04a59249361ee1484d73', class: {
|
|
18
|
+
'ts-container': true,
|
|
19
|
+
'ts-container--no-padding': !this.padding,
|
|
20
|
+
} }, index.h("slot", { key: '1b302d969a21f7c35bfa8e54523df064171fdaa5' })));
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
TsContainer.style = containerCss();
|
|
24
|
+
|
|
25
|
+
exports.ts_container = TsContainer;
|
|
26
|
+
//# sourceMappingURL=ts-container.entry.cjs.js.map
|
|
27
|
+
|
|
28
|
+
//# sourceMappingURL=ts-container.cjs.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"file":"ts-container.cjs.entry.js","mappings":";;;;AAAA,MAAM,YAAY,GAAG,MAAM,CAAC,2aAA2a,CAAC;;MCY3b,WAAW,GAAA,MAAA;;;;;IAEG,IAAI,GAAuC,IAAI;;IAG/C,OAAO,GAAY,IAAI;;IAGhD,MAAM,GAAA;QACJ,QACEA,OAAA,CAACC,UAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EACH,KAAK,EAAE;AACL,gBAAA,cAAc,EAAE,IAAI;AACpB,gBAAA,0BAA0B,EAAE,CAAC,IAAI,CAAC,OAAO;AAC1C,aAAA,EAAA,EAEDD,OAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAQ,CACH;;;;;;;","names":["h","Host"],"sources":["src/components/container/container.css?tag=ts-container&encapsulation=shadow","src/components/container/container.tsx"],"sourcesContent":["/* ==========================================================================\n ts-container — Shadow DOM Scoped Styles\n\n Centered max-width container with responsive padding.\n\n Component tokens (Tier 3):\n --ts-container-padding Horizontal padding\n ========================================================================== */\n\n:host {\n display: block;\n margin-inline: auto;\n width: 100%;\n box-sizing: border-box;\n\n --ts-container-padding: var(--ts-grid-margin);\n}\n\n/* ---- Sizes ---- */\n:host([size=\"sm\"]) {\n max-width: 640px;\n}\n\n:host([size=\"md\"]) {\n max-width: 768px;\n}\n\n:host([size=\"lg\"]) {\n max-width: 1024px;\n}\n\n:host([size=\"xl\"]) {\n max-width: 1280px;\n}\n\n:host([size=\"full\"]) {\n max-width: 100%;\n}\n\n/* ---- Padding ---- */\n:host(:not(.ts-container--no-padding)) {\n padding-inline: var(--ts-container-padding);\n}\n\n:host(.ts-container--no-padding) {\n padding-inline: 0;\n}\n","import { Component, Prop, h, Host } from '@stencil/core';\n\n/**\n * @slot - Default slot for container content.\n *\n * @part base - The container element.\n */\n@Component({\n tag: 'ts-container',\n styleUrl: 'container.css',\n shadow: true,\n})\nexport class TsContainer {\n /** The maximum width of the container. */\n @Prop({ reflect: true }) size: 'sm' | 'md' | 'lg' | 'xl' | 'full' = 'lg';\n\n /** Whether to apply horizontal padding. */\n @Prop({ reflect: true }) padding: boolean = true;\n\n // eslint-disable-next-line @typescript-eslint/explicit-function-return-type\n render() {\n return (\n <Host\n class={{\n 'ts-container': true,\n 'ts-container--no-padding': !this.padding,\n }}\n >\n <slot />\n </Host>\n );\n }\n}\n"],"version":3}
|