@techsio/ui-kit 0.3.2 → 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/README.md +59 -6
- package/dist/.storybook/decorator.d.ts +12 -0
- package/dist/.storybook/decorator.d.ts.map +1 -0
- package/dist/.storybook/main.d.ts +4 -0
- package/dist/.storybook/main.d.ts.map +1 -0
- package/dist/.storybook/preview.d.ts +5 -0
- package/dist/.storybook/preview.d.ts.map +1 -0
- package/dist/.storybook/test-runner.d.ts +12 -0
- package/dist/.storybook/test-runner.d.ts.map +1 -0
- package/dist/atoms/badge.js +37 -19
- package/dist/atoms/button.js +167 -154
- package/dist/atoms/checkbox.js +52 -0
- package/dist/atoms/figma/badge.figma.js +33 -0
- package/dist/atoms/figma/button.figma.js +76 -0
- package/dist/atoms/figma/checkbox.figma.js +35 -0
- package/dist/atoms/figma/icon.figma.js +33 -0
- package/dist/atoms/figma/image.figma.js +21 -0
- package/dist/atoms/figma/input.figma.js +34 -0
- package/dist/atoms/figma/label.figma.js +25 -0
- package/dist/atoms/figma/link-button.figma.js +42 -0
- package/dist/atoms/figma/link.figma.js +15 -0
- package/dist/atoms/figma/numeric-input.figma.js +52 -0
- package/dist/atoms/figma/rating.figma.js +38 -0
- package/dist/atoms/figma/skeleton.figma.js +119 -0
- package/dist/atoms/figma/status-text.figma.js +27 -0
- package/dist/atoms/figma/textarea.figma.js +38 -0
- package/dist/atoms/figma/tooltip.figma.js +47 -0
- package/dist/atoms/icon.js +17 -17
- package/dist/atoms/image.js +22 -4
- package/dist/atoms/input.js +40 -34
- package/dist/atoms/label.js +10 -10
- package/dist/atoms/link-button.js +19 -18
- package/dist/atoms/link.js +6 -4
- package/dist/atoms/numeric-input.js +98 -70
- package/dist/atoms/rating.js +30 -30
- package/dist/atoms/skeleton.js +47 -47
- package/dist/atoms/status-text.js +75 -0
- package/dist/atoms/textarea.js +48 -42
- package/dist/atoms/tooltip.js +17 -17
- package/dist/molecules/accordion.js +58 -60
- package/dist/molecules/breadcrumb.js +206 -124
- package/dist/molecules/carousel.js +139 -87
- package/dist/molecules/color-select.js +56 -56
- package/dist/molecules/combobox.js +131 -104
- package/dist/molecules/dialog.js +97 -97
- package/dist/molecules/figma/accordion.figma.js +41 -0
- package/dist/molecules/figma/breadcrumb.figma.js +31 -0
- package/dist/molecules/figma/carousel.figma.js +34 -0
- package/dist/molecules/figma/combobox.figma.js +38 -0
- package/dist/molecules/figma/dialog.figma.js +24 -0
- package/dist/molecules/figma/form-checkbox.figma.js +41 -0
- package/dist/molecules/figma/form-input.figma.js +38 -0
- package/dist/molecules/figma/form-numeric-input.figma.js +67 -0
- package/dist/molecules/figma/form-textarea.figma.js +38 -0
- package/dist/molecules/figma/menu.figma.js +26 -0
- package/dist/molecules/figma/pagination.figma.js +22 -0
- package/dist/molecules/figma/popover.figma.js +38 -0
- package/dist/molecules/figma/product-card.figma.js +34 -0
- package/dist/molecules/figma/radio-card.figma.js +35 -0
- package/dist/molecules/figma/radio-group.figma.js +45 -0
- package/dist/molecules/figma/search-form.figma.js +24 -0
- package/dist/molecules/figma/select.figma.js +46 -0
- package/dist/molecules/figma/slider.figma.js +30 -0
- package/dist/molecules/figma/steps.figma.js +33 -0
- package/dist/molecules/figma/switch.figma.js +33 -0
- package/dist/molecules/figma/tabs.figma.js +46 -0
- package/dist/molecules/figma/toast.figma.js +34 -0
- package/dist/molecules/figma/tree-view.figma.js +30 -0
- package/dist/molecules/form-checkbox.js +121 -48
- package/dist/molecules/form-input.js +15 -27
- package/dist/molecules/form-numeric-input.js +11 -24
- package/dist/molecules/form-textarea.js +15 -27
- package/dist/molecules/menu.js +69 -67
- package/dist/molecules/pagination.js +112 -76
- package/dist/molecules/phone-input.js +654 -0
- package/dist/molecules/popover.js +221 -96
- package/dist/molecules/product-card.js +38 -37
- package/dist/molecules/radio-card.js +517 -0
- package/dist/molecules/radio-group.js +341 -0
- package/dist/molecules/search-form.js +170 -91
- package/dist/molecules/select.js +369 -141
- package/dist/molecules/slider.js +72 -85
- package/dist/molecules/steps.js +517 -152
- package/dist/molecules/switch.js +37 -43
- package/dist/molecules/tabs.js +63 -61
- package/dist/molecules/toast.js +32 -32
- package/dist/molecules/tree-view.js +89 -83
- package/dist/organisms/footer.js +50 -52
- package/dist/organisms/gallery.js +244 -0
- package/dist/organisms/header.js +60 -58
- package/dist/organisms/table.js +52 -52
- package/dist/src/atoms/badge.d.ts +27 -7
- package/dist/src/atoms/badge.d.ts.map +1 -1
- package/dist/src/atoms/button.d.ts +7 -6
- package/dist/src/atoms/button.d.ts.map +1 -1
- package/dist/src/atoms/checkbox.d.ts +11 -0
- package/dist/src/atoms/checkbox.d.ts.map +1 -0
- package/dist/src/atoms/figma/badge.figma.d.ts +2 -0
- package/dist/src/atoms/figma/badge.figma.d.ts.map +1 -0
- package/dist/src/atoms/figma/button.figma.d.ts +2 -0
- package/dist/src/atoms/figma/button.figma.d.ts.map +1 -0
- package/dist/src/atoms/figma/checkbox.figma.d.ts +2 -0
- package/dist/src/atoms/figma/checkbox.figma.d.ts.map +1 -0
- package/dist/src/atoms/figma/icon.figma.d.ts +2 -0
- package/dist/src/atoms/figma/icon.figma.d.ts.map +1 -0
- package/dist/src/atoms/figma/image.figma.d.ts +2 -0
- package/dist/src/atoms/figma/image.figma.d.ts.map +1 -0
- package/dist/src/atoms/figma/input.figma.d.ts +2 -0
- package/dist/src/atoms/figma/input.figma.d.ts.map +1 -0
- package/dist/src/atoms/figma/label.figma.d.ts +2 -0
- package/dist/src/atoms/figma/label.figma.d.ts.map +1 -0
- package/dist/src/atoms/figma/link-button.figma.d.ts +2 -0
- package/dist/src/atoms/figma/link-button.figma.d.ts.map +1 -0
- package/dist/src/atoms/figma/link.figma.d.ts +2 -0
- package/dist/src/atoms/figma/link.figma.d.ts.map +1 -0
- package/dist/src/atoms/figma/numeric-input.figma.d.ts +2 -0
- package/dist/src/atoms/figma/numeric-input.figma.d.ts.map +1 -0
- package/dist/src/atoms/figma/rating.figma.d.ts +2 -0
- package/dist/src/atoms/figma/rating.figma.d.ts.map +1 -0
- package/dist/src/atoms/figma/skeleton.figma.d.ts +2 -0
- package/dist/src/atoms/figma/skeleton.figma.d.ts.map +1 -0
- package/dist/src/atoms/figma/status-text.figma.d.ts +2 -0
- package/dist/src/atoms/figma/status-text.figma.d.ts.map +1 -0
- package/dist/src/atoms/figma/textarea.figma.d.ts +2 -0
- package/dist/src/atoms/figma/textarea.figma.d.ts.map +1 -0
- package/dist/src/atoms/figma/tooltip.figma.d.ts +2 -0
- package/dist/src/atoms/figma/tooltip.figma.d.ts.map +1 -0
- package/dist/src/atoms/icon.d.ts +6 -6
- package/dist/src/atoms/image.d.ts +35 -9
- package/dist/src/atoms/image.d.ts.map +1 -1
- package/dist/src/atoms/input.d.ts +3 -3
- package/dist/src/atoms/input.d.ts.map +1 -1
- package/dist/src/atoms/label.d.ts +2 -2
- package/dist/src/atoms/link-button.d.ts +71 -12
- package/dist/src/atoms/link-button.d.ts.map +1 -1
- package/dist/src/atoms/link.d.ts +5 -5
- package/dist/src/atoms/link.d.ts.map +1 -1
- package/dist/src/atoms/numeric-input.d.ts +23 -22
- package/dist/src/atoms/numeric-input.d.ts.map +1 -1
- package/dist/src/atoms/rating.d.ts +6 -5
- package/dist/src/atoms/rating.d.ts.map +1 -1
- package/dist/src/atoms/skeleton.d.ts +15 -15
- package/dist/src/atoms/skeleton.d.ts.map +1 -1
- package/dist/src/atoms/status-text.d.ts +97 -0
- package/dist/src/atoms/status-text.d.ts.map +1 -0
- package/dist/src/atoms/textarea.d.ts +3 -3
- package/dist/src/atoms/textarea.d.ts.map +1 -1
- package/dist/src/atoms/tooltip.d.ts +3 -3
- package/dist/src/atoms/tooltip.d.ts.map +1 -1
- package/dist/src/molecules/accordion.d.ts +14 -13
- package/dist/src/molecules/accordion.d.ts.map +1 -1
- package/dist/src/molecules/breadcrumb.d.ts +132 -35
- package/dist/src/molecules/breadcrumb.d.ts.map +1 -1
- package/dist/src/molecules/carousel.d.ts +67 -16
- package/dist/src/molecules/carousel.d.ts.map +1 -1
- package/dist/src/molecules/color-select.d.ts +4 -4
- package/dist/src/molecules/combobox.d.ts +36 -9
- package/dist/src/molecules/combobox.d.ts.map +1 -1
- package/dist/src/molecules/dialog.d.ts +3 -3
- package/dist/src/molecules/dialog.d.ts.map +1 -1
- package/dist/src/molecules/figma/accordion.figma.d.ts +2 -0
- package/dist/src/molecules/figma/accordion.figma.d.ts.map +1 -0
- package/dist/src/molecules/figma/breadcrumb.figma.d.ts +2 -0
- package/dist/src/molecules/figma/breadcrumb.figma.d.ts.map +1 -0
- package/dist/src/molecules/figma/carousel.figma.d.ts +2 -0
- package/dist/src/molecules/figma/carousel.figma.d.ts.map +1 -0
- package/dist/src/molecules/figma/combobox.figma.d.ts +2 -0
- package/dist/src/molecules/figma/combobox.figma.d.ts.map +1 -0
- package/dist/src/molecules/figma/dialog.figma.d.ts +2 -0
- package/dist/src/molecules/figma/dialog.figma.d.ts.map +1 -0
- package/dist/src/molecules/figma/form-checkbox.figma.d.ts +2 -0
- package/dist/src/molecules/figma/form-checkbox.figma.d.ts.map +1 -0
- package/dist/src/molecules/figma/form-input.figma.d.ts +2 -0
- package/dist/src/molecules/figma/form-input.figma.d.ts.map +1 -0
- package/dist/src/molecules/figma/form-numeric-input.figma.d.ts +2 -0
- package/dist/src/molecules/figma/form-numeric-input.figma.d.ts.map +1 -0
- package/dist/src/molecules/figma/form-textarea.figma.d.ts +2 -0
- package/dist/src/molecules/figma/form-textarea.figma.d.ts.map +1 -0
- package/dist/src/molecules/figma/menu.figma.d.ts +2 -0
- package/dist/src/molecules/figma/menu.figma.d.ts.map +1 -0
- package/dist/src/molecules/figma/pagination.figma.d.ts +2 -0
- package/dist/src/molecules/figma/pagination.figma.d.ts.map +1 -0
- package/dist/src/molecules/figma/popover.figma.d.ts +2 -0
- package/dist/src/molecules/figma/popover.figma.d.ts.map +1 -0
- package/dist/src/molecules/figma/product-card.figma.d.ts +2 -0
- package/dist/src/molecules/figma/product-card.figma.d.ts.map +1 -0
- package/dist/src/molecules/figma/radio-card.figma.d.ts +2 -0
- package/dist/src/molecules/figma/radio-card.figma.d.ts.map +1 -0
- package/dist/src/molecules/figma/radio-group.figma.d.ts +2 -0
- package/dist/src/molecules/figma/radio-group.figma.d.ts.map +1 -0
- package/dist/src/molecules/figma/search-form.figma.d.ts +2 -0
- package/dist/src/molecules/figma/search-form.figma.d.ts.map +1 -0
- package/dist/src/molecules/figma/select.figma.d.ts +2 -0
- package/dist/src/molecules/figma/select.figma.d.ts.map +1 -0
- package/dist/src/molecules/figma/slider.figma.d.ts +2 -0
- package/dist/src/molecules/figma/slider.figma.d.ts.map +1 -0
- package/dist/src/molecules/figma/steps.figma.d.ts +2 -0
- package/dist/src/molecules/figma/steps.figma.d.ts.map +1 -0
- package/dist/src/molecules/figma/switch.figma.d.ts +2 -0
- package/dist/src/molecules/figma/switch.figma.d.ts.map +1 -0
- package/dist/src/molecules/figma/tabs.figma.d.ts +2 -0
- package/dist/src/molecules/figma/tabs.figma.d.ts.map +1 -0
- package/dist/src/molecules/figma/toast.figma.d.ts +2 -0
- package/dist/src/molecules/figma/toast.figma.d.ts.map +1 -0
- package/dist/src/molecules/figma/tree-view.figma.d.ts +2 -0
- package/dist/src/molecules/figma/tree-view.figma.d.ts.map +1 -0
- package/dist/src/molecules/form-checkbox.d.ts +22 -12
- package/dist/src/molecules/form-checkbox.d.ts.map +1 -1
- package/dist/src/molecules/form-input.d.ts +8 -6
- package/dist/src/molecules/form-input.d.ts.map +1 -1
- package/dist/src/molecules/form-numeric-input.d.ts +6 -6
- package/dist/src/molecules/form-numeric-input.d.ts.map +1 -1
- package/dist/src/molecules/form-textarea.d.ts +8 -6
- package/dist/src/molecules/form-textarea.d.ts.map +1 -1
- package/dist/src/molecules/menu.d.ts +11 -11
- package/dist/src/molecules/menu.d.ts.map +1 -1
- package/dist/src/molecules/pagination.d.ts +37 -9
- package/dist/src/molecules/pagination.d.ts.map +1 -1
- package/dist/src/molecules/phone-input.d.ts +246 -0
- package/dist/src/molecules/phone-input.d.ts.map +1 -0
- package/dist/src/molecules/popover.d.ts +76 -24
- package/dist/src/molecules/popover.d.ts.map +1 -1
- package/dist/src/molecules/product-card.d.ts +11 -10
- package/dist/src/molecules/product-card.d.ts.map +1 -1
- package/dist/src/molecules/radio-card.d.ts +429 -0
- package/dist/src/molecules/radio-card.d.ts.map +1 -0
- package/dist/src/molecules/radio-group.d.ts +245 -0
- package/dist/src/molecules/radio-group.d.ts.map +1 -0
- package/dist/src/molecules/search-form.d.ts +94 -27
- package/dist/src/molecules/search-form.d.ts.map +1 -1
- package/dist/src/molecules/select.d.ts +124 -30
- package/dist/src/molecules/select.d.ts.map +1 -1
- package/dist/src/molecules/slider.d.ts +9 -12
- package/dist/src/molecules/slider.d.ts.map +1 -1
- package/dist/src/molecules/steps.d.ts +236 -64
- package/dist/src/molecules/steps.d.ts.map +1 -1
- package/dist/src/molecules/switch.d.ts +7 -7
- package/dist/src/molecules/switch.d.ts.map +1 -1
- package/dist/src/molecules/tabs.d.ts +10 -10
- package/dist/src/molecules/tabs.d.ts.map +1 -1
- package/dist/src/molecules/toast.d.ts +6 -6
- package/dist/src/molecules/tree-view.d.ts +14 -14
- package/dist/src/molecules/tree-view.d.ts.map +1 -1
- package/dist/src/organisms/footer.d.ts +15 -6
- package/dist/src/organisms/footer.d.ts.map +1 -1
- package/dist/src/organisms/gallery.d.ts +147 -0
- package/dist/src/organisms/gallery.d.ts.map +1 -0
- package/dist/src/organisms/header.d.ts +9 -9
- package/dist/src/organisms/header.d.ts.map +1 -1
- package/dist/src/organisms/table.d.ts +10 -10
- package/dist/src/organisms/table.d.ts.map +1 -1
- package/dist/src/templates/accordion.d.ts +3 -3
- package/dist/src/templates/breadcrumb.d.ts +28 -0
- package/dist/src/templates/breadcrumb.d.ts.map +1 -0
- package/dist/src/templates/carousel.d.ts +4 -4
- package/dist/src/templates/carousel.d.ts.map +1 -1
- package/dist/src/templates/gallery.d.ts +43 -0
- package/dist/src/templates/gallery.d.ts.map +1 -0
- package/dist/src/templates/numeric-input.d.ts +5 -5
- package/dist/src/templates/popover.d.ts +19 -0
- package/dist/src/templates/popover.d.ts.map +1 -0
- package/dist/src/templates/product-card.d.ts +4 -4
- package/dist/src/templates/select.d.ts +22 -0
- package/dist/src/templates/select.d.ts.map +1 -0
- package/dist/src/templates/tabs.d.ts +4 -4
- package/dist/src/types/zag.d.ts +19 -18
- package/dist/src/types/zag.d.ts.map +1 -1
- package/dist/src/utils.d.ts +1 -1
- package/dist/src/utils.d.ts.map +1 -1
- package/dist/stories/atoms/badge.stories.d.ts +12 -0
- package/dist/stories/atoms/badge.stories.d.ts.map +1 -0
- package/dist/stories/atoms/button.stories.d.ts +12 -0
- package/dist/stories/atoms/button.stories.d.ts.map +1 -0
- package/dist/stories/atoms/checkbox.stories.d.ts +56 -0
- package/dist/stories/atoms/checkbox.stories.d.ts.map +1 -0
- package/dist/stories/atoms/icon.stories.d.ts +11 -0
- package/dist/stories/atoms/icon.stories.d.ts.map +1 -0
- package/dist/stories/atoms/image.stories.d.ts +8 -0
- package/dist/stories/atoms/image.stories.d.ts.map +1 -0
- package/dist/stories/atoms/input.stories.d.ts +8 -0
- package/dist/stories/atoms/input.stories.d.ts.map +1 -0
- package/dist/stories/atoms/numeric-input.stories.d.ts +23 -0
- package/dist/stories/atoms/numeric-input.stories.d.ts.map +1 -0
- package/dist/stories/atoms/rating.stories.d.ts +10 -0
- package/dist/stories/atoms/rating.stories.d.ts.map +1 -0
- package/dist/stories/atoms/skeleton.stories.d.ts +34 -0
- package/dist/stories/atoms/skeleton.stories.d.ts.map +1 -0
- package/dist/stories/atoms/status-text.stories.d.ts +15 -0
- package/dist/stories/atoms/status-text.stories.d.ts.map +1 -0
- package/dist/stories/atoms/textarea.stories.d.ts +12 -0
- package/dist/stories/atoms/textarea.stories.d.ts.map +1 -0
- package/dist/stories/atoms/tooltip.stories.d.ts +28 -0
- package/dist/stories/atoms/tooltip.stories.d.ts.map +1 -0
- package/dist/stories/helpers/icon-options.d.ts +4 -0
- package/dist/stories/helpers/icon-options.d.ts.map +1 -0
- package/dist/stories/molecules/accordion.stories.d.ts +14 -0
- package/dist/stories/molecules/accordion.stories.d.ts.map +1 -0
- package/dist/stories/molecules/breadcrumb.stories.d.ts +14 -0
- package/dist/stories/molecules/breadcrumb.stories.d.ts.map +1 -0
- package/dist/stories/molecules/carousel.stories.d.ts +19 -0
- package/dist/stories/molecules/carousel.stories.d.ts.map +1 -0
- package/dist/stories/molecules/color-select.stories.d.ts +12 -0
- package/dist/stories/molecules/color-select.stories.d.ts.map +1 -0
- package/dist/stories/molecules/combobox.stories.d.ts +11 -0
- package/dist/stories/molecules/combobox.stories.d.ts.map +1 -0
- package/dist/stories/molecules/dialog.stories.d.ts +19 -0
- package/dist/stories/molecules/dialog.stories.d.ts.map +1 -0
- package/dist/stories/molecules/form-checkbox.stories.d.ts +17 -0
- package/dist/stories/molecules/form-checkbox.stories.d.ts.map +1 -0
- package/dist/stories/molecules/form-input.stories.d.ts +12 -0
- package/dist/stories/molecules/form-input.stories.d.ts.map +1 -0
- package/dist/stories/molecules/form-numeric-input.stories.d.ts +17 -0
- package/dist/stories/molecules/form-numeric-input.stories.d.ts.map +1 -0
- package/dist/stories/molecules/form-textarea.stories.d.ts +12 -0
- package/dist/stories/molecules/form-textarea.stories.d.ts.map +1 -0
- package/dist/stories/molecules/menu.stories.d.ts +22 -0
- package/dist/stories/molecules/menu.stories.d.ts.map +1 -0
- package/dist/stories/molecules/pagination.stories.d.ts +13 -0
- package/dist/stories/molecules/pagination.stories.d.ts.map +1 -0
- package/dist/stories/molecules/phone-input.stories.d.ts +19 -0
- package/dist/stories/molecules/phone-input.stories.d.ts.map +1 -0
- package/dist/stories/molecules/popover.stories.d.ts +140 -0
- package/dist/stories/molecules/popover.stories.d.ts.map +1 -0
- package/dist/stories/molecules/product-card.stories.d.ts +41 -0
- package/dist/stories/molecules/product-card.stories.d.ts.map +1 -0
- package/dist/stories/molecules/radio-card.stories.d.ts +13 -0
- package/dist/stories/molecules/radio-card.stories.d.ts.map +1 -0
- package/dist/stories/molecules/radio-group.stories.d.ts +13 -0
- package/dist/stories/molecules/radio-group.stories.d.ts.map +1 -0
- package/dist/stories/molecules/search-form.stories.d.ts +16 -0
- package/dist/stories/molecules/search-form.stories.d.ts.map +1 -0
- package/dist/stories/molecules/select.stories.d.ts +19 -0
- package/dist/stories/molecules/select.stories.d.ts.map +1 -0
- package/dist/stories/molecules/slider.stories.d.ts +19 -0
- package/dist/stories/molecules/slider.stories.d.ts.map +1 -0
- package/dist/stories/molecules/steps.stories.d.ts +19 -0
- package/dist/stories/molecules/steps.stories.d.ts.map +1 -0
- package/dist/stories/molecules/switch.stories.d.ts +13 -0
- package/dist/stories/molecules/switch.stories.d.ts.map +1 -0
- package/dist/stories/molecules/tabs.stories.d.ts +18 -0
- package/dist/stories/molecules/tabs.stories.d.ts.map +1 -0
- package/dist/stories/molecules/toast.stories.d.ts +11 -0
- package/dist/stories/molecules/toast.stories.d.ts.map +1 -0
- package/dist/stories/molecules/tree-view.stories.d.ts +17 -0
- package/dist/stories/molecules/tree-view.stories.d.ts.map +1 -0
- package/dist/stories/organisms/footer.stories.d.ts +12 -0
- package/dist/stories/organisms/footer.stories.d.ts.map +1 -0
- package/dist/stories/organisms/gallery.stories.d.ts +73 -0
- package/dist/stories/organisms/gallery.stories.d.ts.map +1 -0
- package/dist/stories/organisms/header.stories.d.ts +12 -0
- package/dist/stories/organisms/header.stories.d.ts.map +1 -0
- package/dist/stories/organisms/table.stories.d.ts +56 -0
- package/dist/stories/organisms/table.stories.d.ts.map +1 -0
- package/dist/stories/overview/apca-contrast-test.stories.d.ts +8 -0
- package/dist/stories/overview/apca-contrast-test.stories.d.ts.map +1 -0
- package/dist/stories/overview/color-palette.stories.d.ts +8 -0
- package/dist/stories/overview/color-palette.stories.d.ts.map +1 -0
- package/dist/stories/overview/component-comparison.stories.d.ts +6 -0
- package/dist/stories/overview/component-comparison.stories.d.ts.map +1 -0
- package/dist/stories/templates/accordion.stories.d.ts +8 -0
- package/dist/stories/templates/accordion.stories.d.ts.map +1 -0
- package/dist/stories/templates/breadcrumb.stories.d.ts +12 -0
- package/dist/stories/templates/breadcrumb.stories.d.ts.map +1 -0
- package/dist/stories/templates/carousel.stories.d.ts +8 -0
- package/dist/stories/templates/carousel.stories.d.ts.map +1 -0
- package/dist/stories/templates/comprehensive-form.stories.d.ts +26 -0
- package/dist/stories/templates/comprehensive-form.stories.d.ts.map +1 -0
- package/dist/stories/templates/gallery.stories.d.ts +7 -0
- package/dist/stories/templates/gallery.stories.d.ts.map +1 -0
- package/dist/stories/templates/numeric-input.stories.d.ts +8 -0
- package/dist/stories/templates/numeric-input.stories.d.ts.map +1 -0
- package/dist/stories/templates/popover.stories.d.ts +55 -0
- package/dist/stories/templates/popover.stories.d.ts.map +1 -0
- package/dist/stories/templates/product-card.stories.d.ts +10 -0
- package/dist/stories/templates/product-card.stories.d.ts.map +1 -0
- package/dist/stories/templates/select.stories.d.ts +10 -0
- package/dist/stories/templates/select.stories.d.ts.map +1 -0
- package/dist/stories/templates/tabs.stories.d.ts +8 -0
- package/dist/stories/templates/tabs.stories.d.ts.map +1 -0
- package/dist/templates/accordion.js +9 -9
- package/dist/templates/breadcrumb.js +78 -0
- package/dist/templates/carousel.js +13 -15
- package/dist/templates/gallery.js +89 -0
- package/dist/templates/numeric-input.js +4 -4
- package/dist/templates/popover.js +35 -0
- package/dist/templates/product-card.js +10 -10
- package/dist/templates/select.js +43 -0
- package/dist/templates/tabs.js +8 -8
- package/dist/test/visual.spec.d.ts +2 -0
- package/dist/test/visual.spec.d.ts.map +1 -0
- package/dist/utils.js +1 -1
- package/package.json +41 -28
- package/src/tokens/_base.css +3 -3
- package/src/tokens/_layout.css +4 -0
- package/src/tokens/_semantic.css +49 -10
- package/src/tokens/_tokens-base.css +67 -0
- package/src/tokens/_typography.css +36 -6
- package/src/tokens/components/_form-control.css +67 -0
- package/src/tokens/components/atoms/_badge.css +16 -5
- package/src/tokens/components/atoms/_button.css +16 -10
- package/src/tokens/components/atoms/_checkbox.css +52 -0
- package/src/tokens/components/atoms/_icon.css +90 -2
- package/src/tokens/components/atoms/_image.css +5 -0
- package/src/tokens/components/atoms/_input.css +11 -32
- package/src/tokens/components/atoms/_label.css +11 -0
- package/src/tokens/components/atoms/_numeric-input.css +27 -13
- package/src/tokens/components/atoms/_rating.css +2 -2
- package/src/tokens/components/atoms/_status-text.css +32 -0
- package/src/tokens/components/atoms/_textarea.css +15 -17
- package/src/tokens/components/components.css +10 -1
- package/src/tokens/components/molecules/_accordion.css +1 -8
- package/src/tokens/components/molecules/_breadcrumb.css +42 -20
- package/src/tokens/components/molecules/_carousel.css +10 -2
- package/src/tokens/components/molecules/_color-select.css +3 -3
- package/src/tokens/components/molecules/_combobox.css +15 -21
- package/src/tokens/components/molecules/_dialog.css +0 -1
- package/src/tokens/components/molecules/_menu.css +0 -1
- package/src/tokens/components/molecules/_pagination.css +3 -3
- package/src/tokens/components/molecules/_phone-input.css +63 -0
- package/src/tokens/components/molecules/_popover.css +3 -0
- package/src/tokens/components/molecules/_product-card.css +9 -1
- package/src/tokens/components/molecules/_radio-card.css +197 -0
- package/src/tokens/components/molecules/_radio-group.css +150 -0
- package/src/tokens/components/molecules/_search-form.css +7 -3
- package/src/tokens/components/molecules/_select.css +41 -20
- package/src/tokens/components/molecules/_steps.css +115 -34
- package/src/tokens/components/molecules/_toast.css +5 -5
- package/src/tokens/components/molecules/_tree-view.css +5 -6
- package/src/tokens/components/organisms/_footer.css +1 -6
- package/src/tokens/components/organisms/_gallery.css +35 -0
- package/src/tokens/components/organisms/_header.css +8 -0
- package/src/tokens/figma/dark/variables.css +1406 -0
- package/src/tokens/figma/light/variables.css +1406 -0
- package/src/tokens/index.css +1 -65
- package/src/tokens/tokens-only.css +1 -64
- package/dist/atoms/error-text.js +0 -38
- package/dist/atoms/extra-text.js +0 -27
- package/dist/molecules/checkbox.js +0 -98
- package/dist/src/atoms/error-text.d.ts +0 -29
- package/dist/src/atoms/error-text.d.ts.map +0 -1
- package/dist/src/atoms/extra-text.d.ts +0 -27
- package/dist/src/atoms/extra-text.d.ts.map +0 -1
- package/dist/src/molecules/checkbox.d.ts +0 -19
- package/dist/src/molecules/checkbox.d.ts.map +0 -1
- package/src/tokens/components/molecules/_checkbox.css +0 -34
- package/src/tokens/components/molecules/index.css +0 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"visual.spec.d.ts","sourceRoot":"","sources":["../../test/visual.spec.ts"],"names":[],"mappings":""}
|
package/dist/utils.js
CHANGED
|
@@ -15,6 +15,6 @@ const tv = createTV({
|
|
|
15
15
|
}
|
|
16
16
|
});
|
|
17
17
|
function slugify(str) {
|
|
18
|
-
return str.toString().toLowerCase().replace(WHITESPACE_REGEX,
|
|
18
|
+
return str.toString().toLowerCase().replace(WHITESPACE_REGEX, "-").replace(NON_WORD_REGEX, "").replace(MULTIPLE_DASHES_REGEX, "-").replace(LEADING_DASHES_REGEX, "").replace(TRAILING_DASHES_REGEX, "");
|
|
19
19
|
}
|
|
20
20
|
export { slugify, tv };
|
package/package.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@techsio/ui-kit",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
7
|
-
"url": "https://github.com/
|
|
7
|
+
"url": "git+https://github.com/TechsioCZ/new-engine.git",
|
|
8
8
|
"directory": "libs/ui"
|
|
9
9
|
},
|
|
10
10
|
"exports": {
|
|
@@ -13,13 +13,16 @@
|
|
|
13
13
|
"import": "./dist/types/zag.js"
|
|
14
14
|
},
|
|
15
15
|
"./tokens": {
|
|
16
|
-
"
|
|
16
|
+
"style": "./src/tokens/tokens-only.css",
|
|
17
|
+
"default": "./src/tokens/tokens-only.css"
|
|
17
18
|
},
|
|
18
19
|
"./tokens-with-tailwind": {
|
|
19
|
-
"
|
|
20
|
+
"style": "./src/tokens/index.css",
|
|
21
|
+
"default": "./src/tokens/index.css"
|
|
20
22
|
},
|
|
21
23
|
"./tokens/*": {
|
|
22
|
-
"
|
|
24
|
+
"style": "./src/tokens/*.css",
|
|
25
|
+
"default": "./src/tokens/*.css"
|
|
23
26
|
},
|
|
24
27
|
"./atoms/*": {
|
|
25
28
|
"types": "./dist/src/atoms/*.d.ts",
|
|
@@ -51,6 +54,12 @@
|
|
|
51
54
|
"build:storybook": "storybook build",
|
|
52
55
|
"dev": "rslib build --watch",
|
|
53
56
|
"storybook": "storybook dev",
|
|
57
|
+
"figma:connect:parse": "figma connect parse --config figma.config.json",
|
|
58
|
+
"figma:connect:publish": "figma connect publish --config figma.config.json",
|
|
59
|
+
"test-storybook": "test-storybook",
|
|
60
|
+
"storybook:a11y": "bash scripts/storybook-a11y.sh",
|
|
61
|
+
"test:components": "node scripts/run-component-tests.mjs",
|
|
62
|
+
"test:components:update": "node scripts/run-component-tests.mjs --update-snapshots",
|
|
54
63
|
"lint:tailwind": "eslint \"**/*.{js,jsx,ts,tsx}\" --config eslint.config.js",
|
|
55
64
|
"lint:tailwind:fix": "eslint \"**/*.{js,jsx,ts,tsx}\" --config eslint.config.js --fix",
|
|
56
65
|
"prepare": "pnpm build && pnpm build:storybook",
|
|
@@ -61,30 +70,33 @@
|
|
|
61
70
|
"semantic-release": "semantic-release"
|
|
62
71
|
},
|
|
63
72
|
"dependencies": {
|
|
64
|
-
"@zag-js/accordion": "^1.
|
|
65
|
-
"@zag-js/carousel": "^1.
|
|
66
|
-
"@zag-js/checkbox": "^1.
|
|
67
|
-
"@zag-js/combobox": "^1.
|
|
68
|
-
"@zag-js/dialog": "^1.
|
|
69
|
-
"@zag-js/i18n-utils": "^1.
|
|
70
|
-
"@zag-js/menu": "^1.
|
|
71
|
-
"@zag-js/number-input": "^1.
|
|
72
|
-
"@zag-js/pagination": "^1.
|
|
73
|
-
"@zag-js/popover": "^1.
|
|
74
|
-
"@zag-js/
|
|
75
|
-
"@zag-js/
|
|
76
|
-
"@zag-js/
|
|
77
|
-
"@zag-js/
|
|
78
|
-
"@zag-js/
|
|
79
|
-
"@zag-js/
|
|
80
|
-
"@zag-js/
|
|
81
|
-
"@zag-js/
|
|
82
|
-
"@zag-js/
|
|
83
|
-
"@zag-js/
|
|
73
|
+
"@zag-js/accordion": "^1.31.1",
|
|
74
|
+
"@zag-js/carousel": "^1.31.1",
|
|
75
|
+
"@zag-js/checkbox": "^1.31.1",
|
|
76
|
+
"@zag-js/combobox": "^1.31.1",
|
|
77
|
+
"@zag-js/dialog": "^1.31.1",
|
|
78
|
+
"@zag-js/i18n-utils": "^1.31.1",
|
|
79
|
+
"@zag-js/menu": "^1.31.1",
|
|
80
|
+
"@zag-js/number-input": "^1.31.1",
|
|
81
|
+
"@zag-js/pagination": "^1.31.1",
|
|
82
|
+
"@zag-js/popover": "^1.31.1",
|
|
83
|
+
"@zag-js/radio-group": "^1.31.1",
|
|
84
|
+
"@zag-js/rating-group": "^1.31.1",
|
|
85
|
+
"@zag-js/react": "^1.31.1",
|
|
86
|
+
"@zag-js/select": "^1.31.1",
|
|
87
|
+
"@zag-js/slider": "^1.31.1",
|
|
88
|
+
"@zag-js/steps": "^1.31.1",
|
|
89
|
+
"@zag-js/switch": "^1.31.1",
|
|
90
|
+
"@zag-js/tabs": "^1.31.1",
|
|
91
|
+
"@zag-js/toast": "^1.31.1",
|
|
92
|
+
"@zag-js/tooltip": "^1.31.1",
|
|
93
|
+
"@zag-js/tree-view": "^1.31.1",
|
|
94
|
+
"libphonenumber-js": "^1.13.2",
|
|
84
95
|
"tailwind-variants": "^3.1.1"
|
|
85
96
|
},
|
|
86
97
|
"devDependencies": {
|
|
87
98
|
"@eslint/js": "^9.39.1",
|
|
99
|
+
"@figma/code-connect": "^1.4.3",
|
|
88
100
|
"@iconify/json": "^2.2.409",
|
|
89
101
|
"@iconify/tailwind4": "^1.1.0",
|
|
90
102
|
"@rsbuild/core": "1.6.7",
|
|
@@ -101,14 +113,15 @@
|
|
|
101
113
|
"@storybook/addon-onboarding": "^10.0.2",
|
|
102
114
|
"@storybook/addon-themes": "^10.0.2",
|
|
103
115
|
"@storybook/react": "^10.0.2",
|
|
116
|
+
"@storybook/test-runner": "^0.24.2",
|
|
104
117
|
"@tailwindcss/postcss": "^4.1.17",
|
|
118
|
+
"@techsio/storybook-a11y-reporter": "0.1.3",
|
|
119
|
+
"@techsio/storybook-better-a11y": "0.1.3",
|
|
105
120
|
"@typescript-eslint/parser": "^8.47.0",
|
|
106
|
-
"class-variance-authority": "^0.7.1",
|
|
107
|
-
"clsx": "^2.1.1",
|
|
108
121
|
"eslint": "^9.39.1",
|
|
109
122
|
"eslint-plugin-tailwindcss": "beta",
|
|
110
123
|
"glob": "^11.0.2",
|
|
111
|
-
"
|
|
124
|
+
"postcss": "^8.5.6",
|
|
112
125
|
"rsbuild-plugin-publint": "^0.3.3",
|
|
113
126
|
"semantic-release": "^25.0.2",
|
|
114
127
|
"storybook": "^10.0.2",
|
package/src/tokens/_base.css
CHANGED
|
@@ -13,9 +13,9 @@
|
|
|
13
13
|
--offset-shadow-2: 0px 5px 6px 0px;
|
|
14
14
|
--offset-shadow-3: 1px 1px 20px 0px;
|
|
15
15
|
|
|
16
|
-
--shadow-primary:
|
|
17
|
-
var(--offset-shadow-
|
|
18
|
-
var(--color-shadow-3);
|
|
16
|
+
--shadow-primary:
|
|
17
|
+
var(--offset-shadow-1) var(--color-shadow-1), var(--offset-shadow-2)
|
|
18
|
+
var(--color-shadow-2), var(--offset-shadow-3) var(--color-shadow-3);
|
|
19
19
|
|
|
20
20
|
/* Shadows */
|
|
21
21
|
--shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.05);
|
package/src/tokens/_layout.css
CHANGED
package/src/tokens/_semantic.css
CHANGED
|
@@ -15,13 +15,13 @@
|
|
|
15
15
|
--state-border: 15%;
|
|
16
16
|
--state-placeholder: 0.25;
|
|
17
17
|
--max-lightness: 0.97;
|
|
18
|
-
--opacity-ring: 80%;
|
|
19
18
|
--opacity-disabled: 60%;
|
|
20
19
|
--opacity-placeholder: 60%;
|
|
21
20
|
--opacity-text-secondary: 70%;
|
|
22
21
|
--opacity-disabled-placeholder: 30%;
|
|
23
22
|
--fill-increment: 5%;
|
|
24
23
|
--surface-increment: 0.05;
|
|
24
|
+
--state-fg-lightness: 0.42; /* Accent color lightness for text - WCAG AAA on light bg */
|
|
25
25
|
}
|
|
26
26
|
|
|
27
27
|
/* Explicit Dark class(es) */
|
|
@@ -31,6 +31,7 @@
|
|
|
31
31
|
--state-secondary-text: -0.15;
|
|
32
32
|
--state-placeholder: -0.25;
|
|
33
33
|
--surface-increment: -0.05;
|
|
34
|
+
--state-fg-lightness: 0.85;
|
|
34
35
|
}
|
|
35
36
|
|
|
36
37
|
/* System Dark preference (when no explicit class forces light) */
|
|
@@ -41,6 +42,7 @@
|
|
|
41
42
|
--state-secondary-text: -0.15;
|
|
42
43
|
--state-placeholder: -0.25;
|
|
43
44
|
--surface-increment: -0.05;
|
|
45
|
+
--state-fg-lightness: 0.85;
|
|
44
46
|
}
|
|
45
47
|
}
|
|
46
48
|
|
|
@@ -51,6 +53,7 @@
|
|
|
51
53
|
--state-secondary-text: -0.15;
|
|
52
54
|
--state-placeholder: -0.25;
|
|
53
55
|
--surface-increment: -0.05;
|
|
56
|
+
--state-fg-lightness: 0.85;
|
|
54
57
|
}
|
|
55
58
|
|
|
56
59
|
:is(.dark, .always-dark) .reverse {
|
|
@@ -59,6 +62,7 @@
|
|
|
59
62
|
--state-secondary-text: 0.15;
|
|
60
63
|
--state-placeholder: 0.25;
|
|
61
64
|
--surface-increment: 0.05;
|
|
65
|
+
--state-fg-lightness: 0.42;
|
|
62
66
|
}
|
|
63
67
|
|
|
64
68
|
/* Reverse on System Light/Dark preference (when no explicit theme class is present) */
|
|
@@ -69,6 +73,7 @@
|
|
|
69
73
|
--state-secondary-text: -0.15;
|
|
70
74
|
--state-placeholder: -0.25;
|
|
71
75
|
--surface-increment: -0.05;
|
|
76
|
+
--state-fg-lightness: 0.85;
|
|
72
77
|
}
|
|
73
78
|
}
|
|
74
79
|
|
|
@@ -79,6 +84,7 @@
|
|
|
79
84
|
--state-secondary-text: 0.15;
|
|
80
85
|
--state-placeholder: 0.25;
|
|
81
86
|
--surface-increment: 0.05;
|
|
87
|
+
--state-fg-lightness: 0.42;
|
|
82
88
|
}
|
|
83
89
|
}
|
|
84
90
|
|
|
@@ -86,7 +92,7 @@
|
|
|
86
92
|
@theme static {
|
|
87
93
|
/* Colors */
|
|
88
94
|
/* User interface main tone and interactive colors, usually used for main operation button, etc */
|
|
89
|
-
--color-primary: light-dark(var(--color-blue-
|
|
95
|
+
--color-primary: light-dark(var(--color-blue-300), var(--color-sky-300));
|
|
90
96
|
--color-primary-hover: oklch(
|
|
91
97
|
from var(--color-primary) calc(l + var(--state-hover)) c h
|
|
92
98
|
);
|
|
@@ -112,7 +118,10 @@
|
|
|
112
118
|
);
|
|
113
119
|
|
|
114
120
|
/*Secondary colors. Less important than primary colors, but still serve as accents.*/
|
|
115
|
-
--color-secondary: light-dark(
|
|
121
|
+
--color-secondary: light-dark(
|
|
122
|
+
var(--color-orange-500),
|
|
123
|
+
var(--color-amber-400)
|
|
124
|
+
);
|
|
116
125
|
--color-secondary-hover: oklch(
|
|
117
126
|
from var(--color-secondary) calc(l + var(--state-hover)) c h
|
|
118
127
|
);
|
|
@@ -138,7 +147,7 @@
|
|
|
138
147
|
);
|
|
139
148
|
|
|
140
149
|
/* In the user interface, non emphasis color and interactive color are usually used for general and non emphasis function operation buttons */
|
|
141
|
-
--color-tertiary: light-dark(var(--color-pink-
|
|
150
|
+
--color-tertiary: light-dark(var(--color-pink-300), var(--color-rose-400));
|
|
142
151
|
--color-tertiary-hover: oklch(
|
|
143
152
|
from var(--color-tertiary) calc(l + var(--state-hover)) c h
|
|
144
153
|
);
|
|
@@ -245,7 +254,7 @@
|
|
|
245
254
|
);
|
|
246
255
|
|
|
247
256
|
/* It is usually used to express the dangerous state, and is used in the scene with the above semantics */
|
|
248
|
-
--color-danger: light-dark(var(--color-red-
|
|
257
|
+
--color-danger: light-dark(var(--color-red-400), var(--color-red-300));
|
|
249
258
|
--color-danger-hover: oklch(
|
|
250
259
|
from var(--color-danger) calc(l + var(--state-hover)) c h
|
|
251
260
|
);
|
|
@@ -270,9 +279,30 @@
|
|
|
270
279
|
from var(--color-danger-light) l var(--state-disabled-chroma) h
|
|
271
280
|
);
|
|
272
281
|
|
|
273
|
-
/* Text colors and Icon colors*/
|
|
282
|
+
/* Text colors and Icon colors */
|
|
283
|
+
/* semantic text color for better contrast WCAG AAA - uses absolute lightness */
|
|
284
|
+
--color-primary-accent-fg: oklch(
|
|
285
|
+
from var(--color-primary) var(--state-fg-lightness) c h
|
|
286
|
+
);
|
|
287
|
+
--color-secondary-accent-fg: oklch(
|
|
288
|
+
from var(--color-secondary) var(--state-fg-lightness) c h
|
|
289
|
+
);
|
|
290
|
+
--color-tertiary-accent-fg: oklch(
|
|
291
|
+
from var(--color-tertiary) var(--state-fg-lightness) c h
|
|
292
|
+
);
|
|
293
|
+
--color-success-fg: oklch(
|
|
294
|
+
from var(--color-success) var(--state-fg-lightness) c h
|
|
295
|
+
);
|
|
296
|
+
--color-info-fg: oklch(from var(--color-info) var(--state-fg-lightness) c h);
|
|
297
|
+
--color-warning-fg: oklch(
|
|
298
|
+
from var(--color-warning) var(--state-fg-lightness) c h
|
|
299
|
+
);
|
|
300
|
+
--color-danger-fg: oklch(
|
|
301
|
+
from var(--color-danger) var(--state-fg-lightness) c h
|
|
302
|
+
);
|
|
303
|
+
|
|
274
304
|
/* Four different levels of text / icon colors represent the most important, secondary, minor and minor contents in the product interface */
|
|
275
|
-
--color-fg-light: var(--color-slate-
|
|
305
|
+
--color-fg-light: var(--color-slate-950); /* Light mode */
|
|
276
306
|
--color-fg-dark: var(--color-white); /* Dark mode */
|
|
277
307
|
--color-fg-primary: light-dark(var(--color-fg-light), var(--color-fg-dark));
|
|
278
308
|
|
|
@@ -288,7 +318,10 @@
|
|
|
288
318
|
/* All levels of background color in the application, including container, menu, navigation bar, etc. In dark mode, we usually use the background color to distinguish the front and back levels */
|
|
289
319
|
--color-base-light: var(--color-white);
|
|
290
320
|
--color-base-dark: var(--color-gray-950);
|
|
291
|
-
--color-base: light-dark(
|
|
321
|
+
--color-base: light-dark(
|
|
322
|
+
var(--color-base-light),
|
|
323
|
+
var(--color-base-dark)
|
|
324
|
+
); /*bottom page*/
|
|
292
325
|
--color-surface: oklch(
|
|
293
326
|
from var(--color-base) calc(l - var(--surface-increment)) c h
|
|
294
327
|
); /* content that needs to be promoted on the page*/
|
|
@@ -319,6 +352,7 @@
|
|
|
319
352
|
--border-width-sm: 1px;
|
|
320
353
|
--border-width-md: 2px;
|
|
321
354
|
--border-width-lg: 3px;
|
|
355
|
+
--border-width-validation: var(--border-width-lg);
|
|
322
356
|
|
|
323
357
|
/* Links */
|
|
324
358
|
--color-link: light-dark(var(--color-blue-500), var(--color-sky-300));
|
|
@@ -353,7 +387,10 @@
|
|
|
353
387
|
);
|
|
354
388
|
|
|
355
389
|
/* Disabled fill for form controls and interactive elements */
|
|
356
|
-
--color-fill-disabled: light-dark(
|
|
390
|
+
--color-fill-disabled: light-dark(
|
|
391
|
+
var(--color-gray-50),
|
|
392
|
+
var(--color-gray-850)
|
|
393
|
+
);
|
|
357
394
|
|
|
358
395
|
/* Spacing */
|
|
359
396
|
--spacing: 0.25rem;
|
|
@@ -361,5 +398,7 @@
|
|
|
361
398
|
/* Focus ring */
|
|
362
399
|
--default-ring-color: light-dark(var(--color-black), var(--color-white));
|
|
363
400
|
--color-ring: var(--default-ring-color);
|
|
364
|
-
--default-ring-width:
|
|
401
|
+
--default-ring-width: 2px;
|
|
402
|
+
--default-ring-offset: 2px;
|
|
403
|
+
--default-ring-style: solid;
|
|
365
404
|
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/* Shared tokens (with or without Tailwind) */
|
|
2
|
+
|
|
3
|
+
/* Primitive tokens */
|
|
4
|
+
@import "./_base.css";
|
|
5
|
+
@import "./_colors.css";
|
|
6
|
+
@import "./_spacing.css";
|
|
7
|
+
@import "./_typography.css";
|
|
8
|
+
@import "./_layout.css";
|
|
9
|
+
|
|
10
|
+
/* Semantic tokens (dependent on primitives) */
|
|
11
|
+
@import "./_semantic.css";
|
|
12
|
+
|
|
13
|
+
/* Component tokens (dependent on semantic) */
|
|
14
|
+
@import "./components/components.css";
|
|
15
|
+
|
|
16
|
+
/* Base styles */
|
|
17
|
+
:root {
|
|
18
|
+
color-scheme: light dark;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.light {
|
|
22
|
+
color-scheme: light;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.dark {
|
|
26
|
+
color-scheme: dark;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.always-light {
|
|
30
|
+
color-scheme: light;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.always-dark {
|
|
34
|
+
color-scheme: dark;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
@media (prefers-color-scheme: light) {
|
|
38
|
+
.reverse {
|
|
39
|
+
color-scheme: dark;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
@media (prefers-color-scheme: dark) {
|
|
44
|
+
.reverse {
|
|
45
|
+
color-scheme: light;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
.light .reverse {
|
|
50
|
+
color-scheme: dark;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
.dark .reverse {
|
|
54
|
+
color-scheme: light;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
body {
|
|
58
|
+
background-color: var(--color-base);
|
|
59
|
+
color: var(--color-fg-primary);
|
|
60
|
+
|
|
61
|
+
font-family: system-ui, sans-serif;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
.sbdocs-preview {
|
|
65
|
+
background-color: var(--color-base) !important;
|
|
66
|
+
color: var(--color-fg-primary) !important;
|
|
67
|
+
}
|
|
@@ -1,13 +1,43 @@
|
|
|
1
1
|
@theme static {
|
|
2
2
|
/* Primitive Typography Tokens - Utopia fluid typography */
|
|
3
|
-
--text-xs: clamp(
|
|
3
|
+
--text-xs: clamp(
|
|
4
|
+
0.7813rem,
|
|
5
|
+
0.7747rem +
|
|
6
|
+
0.0326vw,
|
|
7
|
+
0.8rem
|
|
8
|
+
); /* 12.5px - 12.8px */
|
|
4
9
|
--text-sm: clamp(0.9375rem, 0.9158rem + 0.1087vw, 1rem); /* 15px - 16px */
|
|
5
10
|
--text-md: clamp(1.125rem, 1.0815rem + 0.2174vw, 1.25rem); /* 18px - 20px */
|
|
6
|
-
--text-lg: clamp(
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
+
--text-lg: clamp(
|
|
12
|
+
1.35rem,
|
|
13
|
+
1.2761rem +
|
|
14
|
+
0.3696vw,
|
|
15
|
+
1.5625rem
|
|
16
|
+
); /* 21.6px - 25px */
|
|
17
|
+
--text-xl: clamp(
|
|
18
|
+
1.62rem,
|
|
19
|
+
1.5041rem +
|
|
20
|
+
0.5793vw,
|
|
21
|
+
1.9531rem
|
|
22
|
+
); /* 25.92px - 31.25px */
|
|
23
|
+
--text-2xl: clamp(
|
|
24
|
+
1.944rem,
|
|
25
|
+
1.771rem +
|
|
26
|
+
0.8651vw,
|
|
27
|
+
2.4414rem
|
|
28
|
+
); /* 31.1px - 39.06px */
|
|
29
|
+
--text-3xl: clamp(
|
|
30
|
+
2.3328rem,
|
|
31
|
+
2.0827rem +
|
|
32
|
+
1.2504vw,
|
|
33
|
+
3.0518rem
|
|
34
|
+
); /* 37.32px - 48.83px */
|
|
35
|
+
--text-4xl: clamp(
|
|
36
|
+
2.7994rem,
|
|
37
|
+
2.4462rem +
|
|
38
|
+
1.7658vw,
|
|
39
|
+
3.8147rem
|
|
40
|
+
); /* 44.79px - 61.04px */
|
|
11
41
|
|
|
12
42
|
/* === TEXT WEIGHT === */
|
|
13
43
|
--font-weight-normal: 400;
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Shared form-control foundation tokens.
|
|
3
|
+
* All box-style form controls (Input, NumericInput, Combobox, Select, SearchForm)
|
|
4
|
+
* alias their visual tokens to these to maintain a single source of truth.
|
|
5
|
+
*
|
|
6
|
+
* To change the design of every form control at once, edit these tokens.
|
|
7
|
+
* To diverge a specific component, override its own alias token in its own CSS file.
|
|
8
|
+
*/
|
|
9
|
+
@theme static {
|
|
10
|
+
/* Border */
|
|
11
|
+
--border-width-form-control: var(--border-width-input); /* 2px */
|
|
12
|
+
|
|
13
|
+
/* Shape */
|
|
14
|
+
--radius-form-control-sm: var(--radius-button-sm);
|
|
15
|
+
--radius-form-control-md: var(--radius-button-md);
|
|
16
|
+
--radius-form-control-lg: var(--radius-button-lg);
|
|
17
|
+
--radius-form-control: var(--radius-form-control-md); /* default md */
|
|
18
|
+
|
|
19
|
+
/* Colors */
|
|
20
|
+
--color-form-control-bg: var(--color-fill-base);
|
|
21
|
+
--color-form-control-border: var(--color-border-primary);
|
|
22
|
+
--color-form-control-border-hover: oklch(
|
|
23
|
+
from var(--color-form-control-border) calc(l + var(--state-hover)) c h
|
|
24
|
+
);
|
|
25
|
+
--color-form-control-border-focus: var(--color-primary);
|
|
26
|
+
--color-form-control-ring: var(--color-ring);
|
|
27
|
+
|
|
28
|
+
/* Disabled */
|
|
29
|
+
--color-form-control-bg-disabled: var(--color-bg-disabled);
|
|
30
|
+
--color-form-control-fg-disabled: var(--color-fg-disabled);
|
|
31
|
+
--color-form-control-border-disabled: var(--color-border-disabled);
|
|
32
|
+
|
|
33
|
+
/* Placeholder */
|
|
34
|
+
--color-form-control-placeholder: var(--color-fg-placeholder);
|
|
35
|
+
|
|
36
|
+
/*
|
|
37
|
+
* Shared heights for sm/md form controls + buttons.
|
|
38
|
+
* Formula: border×2 + button-padding-y×2 + 1lh
|
|
39
|
+
* (1lh resolves to the element's computed line-height at usage time)
|
|
40
|
+
* Apply h-form-control-sm / h-form-control-md to both buttons and
|
|
41
|
+
* form-control wrappers so they share an identical rendered height.
|
|
42
|
+
*/
|
|
43
|
+
--height-form-control-sm: calc(
|
|
44
|
+
var(--border-width-form-control) * 2 + var(--spacing-50) * 2 + 1lh
|
|
45
|
+
);
|
|
46
|
+
--height-form-control-md: calc(
|
|
47
|
+
var(--border-width-form-control) * 2 + var(--spacing-100) * 2 + 1lh
|
|
48
|
+
);
|
|
49
|
+
--height-form-control-lg: calc(
|
|
50
|
+
var(--border-width-form-control) * 2 + var(--spacing-200) * 2 + 1lh
|
|
51
|
+
);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
/*
|
|
55
|
+
* Shared base utility for box-style form controls.
|
|
56
|
+
* Covers the static visual foundation (border, radius, background).
|
|
57
|
+
* Interactive states (hover border, focus ring, disabled, validation) are applied
|
|
58
|
+
* per-component via Tailwind classes in their tv() slots because focus behaviour
|
|
59
|
+
* differs (focus-within vs data-focus vs focus-visible) across components.
|
|
60
|
+
*/
|
|
61
|
+
@utility form-control-base {
|
|
62
|
+
border-width: var(--border-width-form-control);
|
|
63
|
+
border-style: solid;
|
|
64
|
+
border-color: var(--color-form-control-border);
|
|
65
|
+
border-radius: var(--radius-form-control);
|
|
66
|
+
background-color: var(--color-form-control-bg);
|
|
67
|
+
}
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
--color-badge-bg-discount: var(--color-badge-danger); /* Alias for discount */
|
|
22
22
|
|
|
23
23
|
/* Foreground colors */
|
|
24
|
-
--color-badge-fg: var(--color-fg-
|
|
24
|
+
--color-badge-fg: var(--color-fg-light);
|
|
25
25
|
--color-badge-fg-primary: var(--color-badge-fg);
|
|
26
26
|
--color-badge-fg-secondary: var(--color-badge-fg);
|
|
27
27
|
--color-badge-fg-tertiary: var(--color-badge-fg);
|
|
@@ -29,7 +29,9 @@
|
|
|
29
29
|
--color-badge-fg-success: var(--color-badge-fg);
|
|
30
30
|
--color-badge-fg-warning: var(--color-badge-fg);
|
|
31
31
|
--color-badge-fg-danger: var(--color-badge-fg);
|
|
32
|
-
--color-badge-fg-discount: var(
|
|
32
|
+
--color-badge-fg-discount: var(
|
|
33
|
+
--color-badge-fg
|
|
34
|
+
); /* Keep original for discount */
|
|
33
35
|
|
|
34
36
|
/* Border colors */
|
|
35
37
|
--color-badge-border: var(--color-border-primary);
|
|
@@ -49,12 +51,21 @@
|
|
|
49
51
|
--color-badge-border-outline: var(--color-badge-border);
|
|
50
52
|
|
|
51
53
|
/* === SPACING === */
|
|
52
|
-
--
|
|
54
|
+
--spacing-badge-sm: var(--spacing-50);
|
|
55
|
+
--spacing-badge-md: var(--spacing-100);
|
|
56
|
+
--spacing-badge-lg: var(--spacing-150);
|
|
57
|
+
--spacing-badge-xl: var(--spacing-200);
|
|
53
58
|
|
|
54
59
|
/* === TYPOGRAPHY === */
|
|
55
|
-
--text-badge-
|
|
56
|
-
--
|
|
60
|
+
--text-badge-sm: var(--text-xs);
|
|
61
|
+
--text-badge-md: var(--text-xs);
|
|
62
|
+
--text-badge-lg: var(--text-sm);
|
|
63
|
+
--text-badge-xl: var(--text-md);
|
|
57
64
|
|
|
65
|
+
--font-weight-badge-sm: var(--font-weight-light);
|
|
66
|
+
--font-weight-badge-md: var(--font-weight-medium);
|
|
67
|
+
--font-weight-badge-lg: var(--font-weight-semibold);
|
|
68
|
+
--font-weight-badge-xl: var(--font-weight-bold);
|
|
58
69
|
/* === BORDERS & RADIUS === */
|
|
59
70
|
--radius-badge: var(--radius-sm);
|
|
60
71
|
--border-width-badge: var(--border-width-sm);
|
|
@@ -22,8 +22,8 @@
|
|
|
22
22
|
--color-button-bg-danger: var(--color-button-danger);
|
|
23
23
|
|
|
24
24
|
/* Foreground colors */
|
|
25
|
-
--color-button-fg: var(--color-fg-
|
|
26
|
-
--color-button-fg-light: var(--color-fg-
|
|
25
|
+
--color-button-fg: var(--color-fg-light);
|
|
26
|
+
--color-button-fg-light: var(--color-fg-light);
|
|
27
27
|
--color-button-fg-outlined: var(--color-fg-primary);
|
|
28
28
|
--color-button-fg-primary: var(--color-button-fg);
|
|
29
29
|
--color-button-fg-secondary: var(--color-button-fg);
|
|
@@ -40,11 +40,11 @@
|
|
|
40
40
|
--color-button-fg-outlined-tertiary: var(--color-button-fg-outlined);
|
|
41
41
|
--color-button-fg-outlined-warning: var(--color-button-fg-outlined);
|
|
42
42
|
--color-button-fg-outlined-danger: var(--color-button-fg-outlined);
|
|
43
|
-
--color-button-fg-primary-borderless: var(--color-
|
|
44
|
-
--color-button-fg-secondary-borderless: var(--color-
|
|
45
|
-
--color-button-fg-tertiary-borderless: var(--color-
|
|
46
|
-
--color-button-fg-warning-borderless: var(--color-
|
|
47
|
-
--color-button-fg-danger-borderless: var(--color-
|
|
43
|
+
--color-button-fg-primary-borderless: var(--color-primary-accent-fg);
|
|
44
|
+
--color-button-fg-secondary-borderless: var(--color-secondary-accent-fg);
|
|
45
|
+
--color-button-fg-tertiary-borderless: var(--color-tertiary-accent-fg);
|
|
46
|
+
--color-button-fg-warning-borderless: var(--color-warning-fg);
|
|
47
|
+
--color-button-fg-danger-borderless: var(--color-danger-fg);
|
|
48
48
|
|
|
49
49
|
/* Border colors */
|
|
50
50
|
--color-button-border-primary: var(--color-button-primary);
|
|
@@ -141,6 +141,7 @@
|
|
|
141
141
|
);
|
|
142
142
|
|
|
143
143
|
/* Outlined variants */
|
|
144
|
+
--color-button-bg-outlined: transparent;
|
|
144
145
|
--color-button-bg-outlined-primary-hover: --alpha(
|
|
145
146
|
var(--color-button-primary) /
|
|
146
147
|
var(--opacity-outlined-hover)
|
|
@@ -192,9 +193,9 @@
|
|
|
192
193
|
--spacing-button-md: var(--spacing-200);
|
|
193
194
|
--spacing-button-lg: var(--spacing-250);
|
|
194
195
|
|
|
195
|
-
--padding-button-sm: var(--spacing-
|
|
196
|
-
--padding-button-md: var(--spacing-
|
|
197
|
-
--padding-button-lg: var(--spacing-
|
|
196
|
+
--padding-button-sm: var(--spacing-50) var(--spacing-200);
|
|
197
|
+
--padding-button-md: var(--spacing-100) var(--spacing-250);
|
|
198
|
+
--padding-button-lg: var(--spacing-150) var(--spacing-400);
|
|
198
199
|
|
|
199
200
|
/* === TYPOGRAPHY === */
|
|
200
201
|
--text-button-sm: var(--text-sm);
|
|
@@ -213,3 +214,8 @@
|
|
|
213
214
|
/* === FOCUS RING === */
|
|
214
215
|
--color-button-ring: var(--color-ring);
|
|
215
216
|
}
|
|
217
|
+
|
|
218
|
+
|
|
219
|
+
@utility token-icon-button-spinner {
|
|
220
|
+
@apply token-icon-spinner;
|
|
221
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
@theme static {
|
|
2
|
+
/* === BASE COLOR MAPPING === */
|
|
3
|
+
/* Reference layer - single source of truth for theming */
|
|
4
|
+
--color-checkbox-primary: var(--color-primary);
|
|
5
|
+
--color-checkbox-success: var(--color-success);
|
|
6
|
+
--color-checkbox-danger: var(--color-danger);
|
|
7
|
+
|
|
8
|
+
/* === DERIVED COLORS === */
|
|
9
|
+
/* Background colors */
|
|
10
|
+
--color-checkbox-bg: var(--color-fill-active);
|
|
11
|
+
--color-checkbox-bg-checked: var(--color-checkbox-success);
|
|
12
|
+
--color-checkbox-bg-indeterminate: var(--color-checkbox-primary);
|
|
13
|
+
|
|
14
|
+
/* Foreground colors (icons/checkmarks) */
|
|
15
|
+
--color-checkbox-fg-checked: var(--color-fg-dark);
|
|
16
|
+
--color-checkbox-fg-indeterminate: var(--color-fg-dark);
|
|
17
|
+
|
|
18
|
+
/* Border colors */
|
|
19
|
+
--color-checkbox-border: var(--color-border-primary);
|
|
20
|
+
--color-checkbox-border-checked: var(--color-checkbox-success);
|
|
21
|
+
--color-checkbox-border-indeterminate: var(--color-checkbox-primary);
|
|
22
|
+
|
|
23
|
+
/* === VALIDATION STATES === */
|
|
24
|
+
--color-checkbox-border-error: var(--color-checkbox-danger);
|
|
25
|
+
--color-checkbox-ring-error: var(--color-checkbox-danger);
|
|
26
|
+
|
|
27
|
+
/* === DISABLED STATES === */
|
|
28
|
+
--color-checkbox-bg-disabled: var(--color-bg-disabled);
|
|
29
|
+
--color-checkbox-fg-disabled: var(--color-fg-disabled);
|
|
30
|
+
--color-checkbox-border-disabled: var(--color-border-disabled);
|
|
31
|
+
|
|
32
|
+
/* === FOCUS RINGS === */
|
|
33
|
+
--color-checkbox-ring-focus: var(--color-ring);
|
|
34
|
+
|
|
35
|
+
/* === SPACING === */
|
|
36
|
+
--spacing-checkbox: var(--spacing-200);
|
|
37
|
+
--spacing-checkbox-indeterminate-icon: 60%;
|
|
38
|
+
|
|
39
|
+
/* === BORDERS & RADIUS === */
|
|
40
|
+
--radius-checkbox: var(--radius-sm);
|
|
41
|
+
|
|
42
|
+
/* === FORM CHECKBOX MOLECULE === */
|
|
43
|
+
--spacing-form-checkbox-gap: var(--spacing-150);
|
|
44
|
+
--spacing-form-checkbox-text-offset: calc(
|
|
45
|
+
var(--spacing-checkbox) +
|
|
46
|
+
var(--spacing-form-checkbox-gap)
|
|
47
|
+
);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
@utility token-icon-checkbox {
|
|
51
|
+
@apply token-icon-check-bold;
|
|
52
|
+
}
|