@espressif/dashboard-ui-components 1.11.1 → 1.12.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/.claude/rules/dashboard-ui-consumption.md +176 -5
- package/.cursor/rules/dashboard-ui-consumption.mdc +163 -4
- package/CHANGELOG.md +1020 -0
- package/README.md +240 -7
- package/THIRD-PARTY-NOTICES.md +2 -1
- package/dist/alert.props-CcKo49Rb.d.ts +44 -0
- package/dist/animation/index.d.ts +3 -0
- package/dist/animation/index.js +3 -0
- package/dist/avatar.props-2q5BsX-R.d.ts +29 -0
- package/dist/button-BK-DIR_L.d.ts +21 -0
- package/dist/button-BxJ7s6sR.d.ts +76 -0
- package/dist/calendar.props-BtCzuWH1.d.ts +12 -0
- package/dist/carousel/index.d.ts +2 -0
- package/dist/carousel/index.js +2 -0
- package/dist/charts/index.d.ts +5 -0
- package/dist/charts/index.js +9 -0
- package/dist/common/app-logo/app-logo.js +1 -1
- package/dist/common/index.d.ts +9 -20
- package/dist/common/my-account-menu/my-account-menu.js +45 -13
- package/dist/common/profile-card/profile-card.js +3 -2
- package/dist/components/accordion/accordion.js +14 -5
- package/dist/components/accordion/index.d.ts +36 -0
- package/dist/components/accordion/index.js +2 -0
- package/dist/components/advanced-search-box/advanced-search-box.js +8 -2
- package/dist/components/advanced-search-box/index.d.ts +29 -0
- package/dist/components/advanced-search-box/index.js +2 -0
- package/dist/components/alert/alert.js +2 -1
- package/dist/components/alert/index.d.ts +12 -0
- package/dist/components/alert/index.js +2 -0
- package/dist/components/anchored-panel/anchored-panel.js +83 -0
- package/dist/components/anchored-panel/index.d.ts +31 -0
- package/dist/components/anchored-panel/index.js +2 -0
- package/dist/components/animated-containers/index.d.ts +13 -0
- package/dist/components/animated-containers/index.js +2 -0
- package/dist/components/async-multi-select/async-multi-select.js +48 -7
- package/dist/components/async-multi-select/index.d.ts +63 -0
- package/dist/components/async-multi-select/index.js +2 -0
- package/dist/components/avatar/avatar.js +11 -4
- package/dist/components/avatar/index.d.ts +8 -0
- package/dist/components/avatar/index.js +2 -0
- package/dist/components/avatar-group/avatar-group.js +35 -0
- package/dist/components/avatar-group/index.d.ts +31 -0
- package/dist/components/avatar-group/index.js +2 -0
- package/dist/components/badge/index.d.ts +14 -0
- package/dist/components/badge/index.js +2 -0
- package/dist/components/breadcrumb/index.d.ts +21 -0
- package/dist/components/breadcrumb/index.js +2 -0
- package/dist/components/bubble/bubble.js +18 -0
- package/dist/components/bubble/index.d.ts +19 -0
- package/dist/components/bubble/index.js +2 -0
- package/dist/components/button/button.js +87 -25
- package/dist/components/button/flash-button.js +9 -3
- package/dist/components/button/index.d.ts +56 -0
- package/dist/components/button/index.js +6 -0
- package/dist/components/button-group/index.d.ts +16 -0
- package/dist/components/button-group/index.js +2 -0
- package/dist/components/calendar/calendar.js +5 -5
- package/dist/components/calendar/index.d.ts +11 -0
- package/dist/components/calendar/index.js +2 -0
- package/dist/components/card/index.d.ts +11 -0
- package/dist/components/card/index.js +2 -0
- package/dist/components/card-rail/card-rail.js +50 -0
- package/dist/components/card-rail/index.d.ts +30 -0
- package/dist/components/card-rail/index.js +2 -0
- package/dist/components/cards/collapsible-card.js +5 -2
- package/dist/components/cards/index.d.ts +16200 -0
- package/dist/components/cards/index.js +8 -0
- package/dist/components/cards/section-card.js +133 -8
- package/dist/components/cards/simple-card.js +5 -2
- package/dist/components/carousel/carousel.js +137 -49
- package/dist/components/carousel/index.d.ts +130 -0
- package/dist/components/carousel/index.js +2 -0
- package/dist/components/category-card/category-card.js +111 -0
- package/dist/components/category-card/index.d.ts +55 -0
- package/dist/components/category-card/index.js +2 -0
- package/dist/components/chart/area-chart.js +95 -85
- package/dist/components/chart/bar-chart.js +123 -60
- package/dist/components/chart/chart.js +127 -3
- package/dist/components/chart/composed-chart.js +109 -98
- package/dist/components/chart/donut-chart.js +23 -5
- package/dist/components/chart/index.d.ts +732 -0
- package/dist/components/chart/index.js +9 -0
- package/dist/components/chart/line-chart.js +93 -83
- package/dist/components/chart/treemap-chart.js +71 -58
- package/dist/components/check-badge/check-badge.js +25 -0
- package/dist/components/check-badge/index.d.ts +13 -0
- package/dist/components/check-badge/index.js +2 -0
- package/dist/components/checkbox/index.d.ts +8 -0
- package/dist/components/checkbox/index.js +2 -0
- package/dist/components/choice-card/choice-card.js +99 -0
- package/dist/components/choice-card/index.d.ts +41 -0
- package/dist/components/choice-card/index.js +2 -0
- package/dist/components/circular-progress/circular-progress.js +5 -2
- package/dist/components/circular-progress/index.d.ts +23 -0
- package/dist/components/circular-progress/index.js +2 -0
- package/dist/components/code/index.d.ts +40 -0
- package/dist/components/code/index.js +2 -0
- package/dist/components/code-editor/code-editor.js +9 -3
- package/dist/components/code-editor/index.d.ts +82 -0
- package/dist/components/code-editor/index.js +2 -0
- package/dist/components/collapsible/index.d.ts +42 -0
- package/dist/components/collapsible/index.js +2 -0
- package/dist/components/column-panel/column-panel.js +38 -0
- package/dist/components/column-panel/index.d.ts +37 -0
- package/dist/components/column-panel/index.js +3 -0
- package/dist/components/column-panel/use-panel-flag.js +27 -0
- package/dist/components/combobox/index.d.ts +28 -0
- package/dist/components/combobox/index.js +2 -0
- package/dist/components/confirmation-dialog/confirmation-dialog.js +1 -1
- package/dist/components/confirmation-dialog/index.d.ts +40 -0
- package/dist/components/confirmation-dialog/index.js +3 -0
- package/dist/components/content-container/index.d.ts +16 -0
- package/dist/components/content-container/index.js +2 -0
- package/dist/components/copiable-text/index.d.ts +33 -0
- package/dist/components/copiable-text/index.js +2 -0
- package/dist/components/coverflow/_constants/coverflow-poses.js +23 -0
- package/dist/components/coverflow/_constants/coverflow-shapes.js +23 -0
- package/dist/components/coverflow/_hooks/use-coverflow.js +90 -0
- package/dist/components/coverflow/_utils/ring.js +24 -0
- package/dist/components/coverflow/coverflow.js +198 -0
- package/dist/components/coverflow/index.d.ts +105 -0
- package/dist/components/coverflow/index.js +2 -0
- package/dist/components/data-table/data-table.js +9 -2
- package/dist/components/data-table/index.d.ts +120 -0
- package/dist/components/data-table/index.js +3 -0
- package/dist/components/date-picker/date-picker.js +5 -2
- package/dist/components/date-picker/index.d.ts +50 -0
- package/dist/components/date-picker/index.js +2 -0
- package/dist/components/date-range-picker/date-range-picker.js +11 -2
- package/dist/components/date-range-picker/index.d.ts +100 -0
- package/dist/components/date-range-picker/index.js +3 -0
- package/dist/components/date-time-picker/date-time-picker.js +5 -2
- package/dist/components/date-time-picker/index.d.ts +79 -0
- package/dist/components/date-time-picker/index.js +2 -0
- package/dist/components/device-icon/index.d.ts +17 -0
- package/dist/components/device-icon/index.js +2 -0
- package/dist/components/dialog/index.d.ts +38 -0
- package/dist/components/dialog/index.js +2 -0
- package/dist/components/dropdown-menu/index.d.ts +57 -0
- package/dist/components/dropdown-menu/index.js +2 -0
- package/dist/components/dynamic-list/dynamic-list.js +4 -4
- package/dist/components/dynamic-list/index.d.ts +74 -0
- package/dist/components/dynamic-list/index.js +2 -0
- package/dist/components/error-display/index.d.ts +17 -0
- package/dist/components/error-display/index.js +3 -0
- package/dist/components/expandable-text/expandable-text-overlay.js +78 -0
- package/dist/components/expandable-text/expandable-text.js +73 -0
- package/dist/components/expandable-text/index.d.ts +39 -0
- package/dist/components/expandable-text/index.js +2 -0
- package/dist/components/expandable-text/use-clamped.js +23 -0
- package/dist/components/facet-filters/_hooks/use-filter-group.js +51 -0
- package/dist/components/facet-filters/active-filters.js +31 -0
- package/dist/components/facet-filters/filter-group.js +110 -0
- package/dist/components/facet-filters/filters-panel.js +59 -0
- package/dist/components/facet-filters/filters-pill.js +40 -0
- package/dist/components/facet-filters/index.d.ts +104 -0
- package/dist/components/facet-filters/index.js +6 -0
- package/dist/components/facet-filters/use-filters-collapsed.js +21 -0
- package/dist/components/feature-grid/feature-grid.js +115 -0
- package/dist/components/feature-grid/index.d.ts +53 -0
- package/dist/components/feature-grid/index.js +2 -0
- package/dist/components/file-input/file-input.js +9 -3
- package/dist/components/file-input/index.d.ts +78 -0
- package/dist/components/file-input/index.js +2 -0
- package/dist/components/file-upload/file-upload.js +10 -5
- package/dist/components/file-upload/index.d.ts +38 -0
- package/dist/components/file-upload/index.js +2 -0
- package/dist/components/filters-bar/filters-bar.js +5 -1
- package/dist/components/filters-bar/index.d.ts +26 -0
- package/dist/components/filters-bar/index.js +2 -0
- package/dist/components/flip-card/flip-card.js +147 -0
- package/dist/components/flip-card/index.d.ts +43 -0
- package/dist/components/flip-card/index.js +2 -0
- package/dist/components/floating-window/_hooks/use-drag-move.js +76 -0
- package/dist/components/floating-window/floating-window.js +97 -0
- package/dist/components/floating-window/index.d.ts +45 -0
- package/dist/components/floating-window/index.js +2 -0
- package/dist/components/form/index.d.ts +28 -0
- package/dist/components/form/index.js +2 -0
- package/dist/components/fullscreen-dialog/fullscreen-dialog.js +6 -2
- package/dist/components/fullscreen-dialog/index.d.ts +38 -0
- package/dist/components/fullscreen-dialog/index.js +2 -0
- package/dist/components/horizontal-stepper/horizontal-stepper.js +122 -0
- package/dist/components/horizontal-stepper/index.d.ts +70 -0
- package/dist/components/horizontal-stepper/index.js +2 -0
- package/dist/components/icon-avatar/index.d.ts +9 -0
- package/dist/components/icon-avatar/index.js +2 -0
- package/dist/components/icon-text-action-card/icon-text-action-card.js +9 -5
- package/dist/components/icon-text-action-card/index.d.ts +11 -0
- package/dist/components/icon-text-action-card/index.js +2 -0
- package/dist/components/identicon/identicon.js +33 -0
- package/dist/components/identicon/index.d.ts +26 -0
- package/dist/components/identicon/index.js +2 -0
- package/dist/components/illustration/index.d.ts +37 -0
- package/dist/components/illustration/index.js +3 -0
- package/dist/components/index.d.ts +177 -19529
- package/dist/components/index.js +61 -10
- package/dist/components/input/index.d.ts +15 -0
- package/dist/components/input/index.js +3 -0
- package/dist/components/input-group/index.d.ts +35 -0
- package/dist/components/input-group/index.js +2 -0
- package/dist/components/input-group/input-group.js +41 -0
- package/dist/components/input-otp/index.d.ts +63 -0
- package/dist/components/input-otp/index.js +2 -0
- package/dist/components/key-value-manager/index.d.ts +63 -0
- package/dist/components/key-value-manager/index.js +2 -0
- package/dist/components/key-value-manager/key-value-manager-table.js +7 -5
- package/dist/components/label/index.d.ts +8 -0
- package/dist/components/label/index.js +2 -0
- package/dist/components/link/index.d.ts +33 -0
- package/dist/components/link/index.js +2 -0
- package/dist/components/list/index.d.ts +9 -0
- package/dist/components/list/index.js +3 -0
- package/dist/components/list/list-item.utils.js +1 -1
- package/dist/components/list/list.js +3 -1
- package/dist/components/list-details/index.d.ts +51 -0
- package/dist/components/list-details/index.js +2 -0
- package/dist/components/list-details/list-details.js +5 -2
- package/dist/components/lottie-animation-container/index.d.ts +10 -0
- package/dist/components/lottie-animation-container/index.js +2 -0
- package/dist/components/lottie-animation-container/lottie-animation-container.js +22 -3
- package/dist/components/lottie-animations/index.d.ts +8 -0
- package/dist/components/lottie-animations/index.js +2 -0
- package/dist/components/markdown-content/index.d.ts +32 -0
- package/dist/components/markdown-content/index.js +2 -0
- package/dist/components/media-card/index.d.ts +125 -0
- package/dist/components/media-card/index.js +4 -0
- package/dist/components/media-card/media-card-image.js +59 -0
- package/dist/components/media-card/media-card-reveal.js +76 -0
- package/dist/components/media-card/media-card.classes.js +37 -0
- package/dist/components/media-card/media-card.js +91 -0
- package/dist/components/media-stage/index.d.ts +41 -0
- package/dist/components/media-stage/index.js +2 -0
- package/dist/components/media-stage/media-stage.js +48 -0
- package/dist/components/menu/index.d.ts +14 -0
- package/dist/components/menu/index.js +2 -0
- package/dist/components/message-scroller/_hooks/use-follow-bottom.js +85 -0
- package/dist/components/message-scroller/index.d.ts +29 -0
- package/dist/components/message-scroller/index.js +2 -0
- package/dist/components/message-scroller/message-scroller.js +65 -0
- package/dist/components/mini-bar-chart/index.d.ts +40 -0
- package/dist/components/mini-bar-chart/index.js +2 -0
- package/dist/components/mini-bar-chart/mini-bar-chart.js +93 -0
- package/dist/components/monospace-content/index.d.ts +43 -0
- package/dist/components/monospace-content/index.js +2 -0
- package/dist/components/monospace-content/monospace-content.js +1 -1
- package/dist/components/nav-bar/index.d.ts +148 -0
- package/dist/components/nav-bar/index.js +2 -0
- package/dist/components/nav-bar/nav-bar-details-panel.js +158 -44
- package/dist/components/nav-bar/nav-bar-mobile-menu.js +93 -27
- package/dist/components/nav-bar/nav-bar.js +256 -138
- package/dist/components/nav-bar/use-nav-bar-hover-details.js +80 -0
- package/dist/components/nav-bar/use-nav-bar-overflow.js +5 -5
- package/dist/components/notice-strip/index.d.ts +32 -0
- package/dist/components/notice-strip/index.js +2 -0
- package/dist/components/notice-strip/notice-strip.js +57 -0
- package/dist/components/option-card-group/index.d.ts +50 -0
- package/dist/components/option-card-group/index.js +2 -0
- package/dist/components/option-card-group/option-card-group.js +76 -0
- package/dist/components/overflow-badge-list/index.d.ts +63 -0
- package/dist/components/overflow-badge-list/index.js +2 -0
- package/dist/components/overflow-badge-list/overflow-badge-list.js +78 -19
- package/dist/components/page-banner/index.d.ts +33 -0
- package/dist/components/page-banner/index.js +2 -0
- package/dist/components/page-banner/page-banner.js +56 -0
- package/dist/components/page-container/index.d.ts +20 -0
- package/dist/components/page-container/index.js +3 -0
- package/dist/components/page-container/page-container.js +5 -5
- package/dist/components/pagination/index.d.ts +31 -0
- package/dist/components/pagination/index.js +3 -0
- package/dist/components/popover/index.d.ts +60 -0
- package/dist/components/popover/index.js +3 -0
- package/dist/components/preview-card/index.d.ts +24 -0
- package/dist/components/preview-card/index.js +2 -0
- package/dist/components/progress-bar/index.d.ts +32 -0
- package/dist/components/progress-bar/index.js +2 -0
- package/dist/components/progress-bar/progress-bar.js +22 -6
- package/dist/components/radio-group/index.d.ts +24 -0
- package/dist/components/radio-group/index.js +2 -0
- package/dist/components/rank-numeral/index.d.ts +30 -0
- package/dist/components/rank-numeral/index.js +2 -0
- package/dist/components/rank-numeral/rank-numeral.js +26 -0
- package/dist/components/reaction-button/index.d.ts +32 -0
- package/dist/components/reaction-button/index.js +2 -0
- package/dist/components/reaction-button/reaction-button.js +50 -0
- package/dist/components/readout/index.d.ts +31 -0
- package/dist/components/readout/index.js +2 -0
- package/dist/components/readout/readout.js +63 -0
- package/dist/components/requirement-list/index.d.ts +52 -0
- package/dist/components/requirement-list/index.js +2 -0
- package/dist/components/requirement-list/requirement-list.js +29 -8
- package/dist/components/resizable/index.d.ts +31 -0
- package/dist/components/resizable/index.js +4 -0
- package/dist/components/resizable/resizable-group.js +23 -0
- package/dist/components/resizable/resizable-panel.js +28 -0
- package/dist/components/resizable/resizable-separator.js +24 -0
- package/dist/components/reveal/index.d.ts +23 -0
- package/dist/components/reveal/index.js +2 -0
- package/dist/components/reveal/reveal.js +24 -0
- package/dist/components/scroll-area/index.d.ts +27 -0
- package/dist/components/scroll-area/index.js +2 -0
- package/dist/components/scrollable-sections/index.d.ts +58 -0
- package/dist/components/scrollable-sections/index.js +2 -0
- package/dist/components/scrollable-sections/scrollable-sections.js +11 -3
- package/dist/components/search-box/index.d.ts +32 -0
- package/dist/components/search-box/index.js +2 -0
- package/dist/components/search-box/search-box.js +18 -3
- package/dist/components/search-field-shell.js +1 -1
- package/dist/components/select/index.d.ts +44 -0
- package/dist/components/select/index.js +2 -0
- package/dist/components/selectable-card-list/checkbox-card-list.js +5 -3
- package/dist/components/selectable-card-list/index.d.ts +76 -0
- package/dist/components/selectable-card-list/index.js +2 -0
- package/dist/components/selectable-card-list/radio-card-list.js +12 -6
- package/dist/components/selectable-card-list/selectable-card-list-shared.js +24 -12
- package/dist/components/selectable-card-list/selectable-card-list.js +12 -3
- package/dist/components/separator/index.d.ts +24 -0
- package/dist/components/separator/index.js +2 -0
- package/dist/components/share-menu/index.d.ts +55 -0
- package/dist/components/share-menu/index.js +2 -0
- package/dist/components/share-menu/share-marks.js +31 -0
- package/dist/components/share-menu/share-menu.js +140 -0
- package/dist/components/share-menu/share-urls.js +15 -0
- package/dist/components/sheet/index.d.ts +41 -0
- package/dist/components/sheet/index.js +2 -0
- package/dist/components/showcase-card/index.d.ts +53 -0
- package/dist/components/showcase-card/index.js +2 -0
- package/dist/components/showcase-card/showcase-card.js +75 -0
- package/dist/components/sidebar/index.d.ts +109 -0
- package/dist/components/sidebar/index.js +4 -0
- package/dist/components/sidebar/sidebar.js +56 -40
- package/dist/components/simple-clickable-card/index.d.ts +11 -0
- package/dist/components/simple-clickable-card/index.js +2 -0
- package/dist/components/simple-clickable-card/simple-clickable-card-shared.js +2 -2
- package/dist/components/simple-clickable-card/simple-clickable-card.js +5 -2
- package/dist/components/simple-info-card/index.d.ts +25 -0
- package/dist/components/simple-info-card/index.js +2 -0
- package/dist/components/simple-info-card/simple-info-card.js +6 -3
- package/dist/components/simple-list/index.d.ts +63 -0
- package/dist/components/simple-list/index.js +2 -0
- package/dist/components/simple-list/simple-list.js +3 -1
- package/dist/components/simple-paginated-list/index.d.ts +20 -0
- package/dist/components/simple-paginated-list/index.js +2 -0
- package/dist/components/simplified-date/index.d.ts +18 -0
- package/dist/components/simplified-date/index.js +2 -0
- package/dist/components/skeleton/index.d.ts +5 -0
- package/dist/components/skeleton/index.js +2 -0
- package/dist/components/skeletons/index.d.ts +11 -0
- package/dist/components/skeletons/index.js +2 -0
- package/dist/components/sort-menu/index.d.ts +34 -0
- package/dist/components/sort-menu/index.js +2 -0
- package/dist/components/sort-menu/sort-menu.js +39 -0
- package/dist/components/spinner/index.d.ts +15 -0
- package/dist/components/spinner/index.js +2 -0
- package/dist/components/stat-card/index.d.ts +43 -0
- package/dist/components/stat-card/index.js +2 -0
- package/dist/components/stat-card/stat-card.js +31 -12
- package/dist/components/status-badge/index.d.ts +24 -0
- package/dist/components/status-badge/index.js +2 -0
- package/dist/components/status-badge/status-badge.js +3 -2
- package/dist/components/status-card-list/index.d.ts +24 -0
- package/dist/components/status-card-list/index.js +2 -0
- package/dist/components/status-card-list/status-card-list.js +8 -4
- package/dist/components/step-tabs/index.d.ts +94 -0
- package/dist/components/step-tabs/index.js +2 -0
- package/dist/components/step-tabs/step-tabs.js +202 -0
- package/dist/components/style-scope/index.d.ts +32 -0
- package/dist/components/style-scope/index.js +2 -0
- package/dist/components/style-scope/style-scope.js +49 -0
- package/dist/components/switch/index.d.ts +15 -0
- package/dist/components/switch/index.js +2 -0
- package/dist/components/table/index.d.ts +18 -0
- package/dist/components/table/index.js +2 -0
- package/dist/components/tabs/index.d.ts +103 -0
- package/dist/components/tabs/index.js +2 -0
- package/dist/components/tag/index.d.ts +31 -0
- package/dist/components/tag/index.js +2 -0
- package/dist/components/tag/tag.js +79 -28
- package/dist/components/tag-input/index.d.ts +36 -0
- package/dist/components/tag-input/index.js +2 -0
- package/dist/components/tag-input/tag-input.js +10 -4
- package/dist/components/text-effects/index.d.ts +53 -0
- package/dist/components/text-effects/index.js +6 -0
- package/dist/components/textarea/index.d.ts +16 -0
- package/dist/components/textarea/index.js +2 -0
- package/dist/components/thumbnail-strip/index.d.ts +42 -0
- package/dist/components/thumbnail-strip/index.js +2 -0
- package/dist/components/thumbnail-strip/thumbnail-strip.js +124 -0
- package/dist/components/thumbnail-strip/use-scroll-edges.js +41 -0
- package/dist/components/time-picker/index.d.ts +13 -0
- package/dist/components/time-picker/index.js +2 -0
- package/dist/components/timeline/index.d.ts +39 -0
- package/dist/components/timeline/index.js +2 -0
- package/dist/components/timeline/timeline.js +85 -0
- package/dist/components/toast/index.d.ts +56 -0
- package/dist/components/toast/index.js +2 -0
- package/dist/components/toast/toast.js +42 -32
- package/dist/components/togglable-items-list/index.d.ts +28 -0
- package/dist/components/togglable-items-list/index.js +2 -0
- package/dist/components/toggle-group/index.d.ts +35 -0
- package/dist/components/toggle-group/index.js +2 -0
- package/dist/components/toolbar/index.d.ts +58 -0
- package/dist/components/toolbar/index.js +3 -0
- package/dist/components/toolbar/toolbar-button.js +40 -0
- package/dist/components/toolbar/toolbar.js +56 -0
- package/dist/components/tooltip/index.d.ts +29 -0
- package/dist/components/tooltip/index.js +3 -0
- package/dist/components/tooltip/tooltip.js +12 -2
- package/dist/components/transfer-list/index.d.ts +36 -0
- package/dist/components/transfer-list/index.js +2 -0
- package/dist/components/transfer-list/transfer-list.js +1 -1
- package/dist/components/truncated-line-with-tooltip/index.d.ts +22 -0
- package/dist/components/truncated-line-with-tooltip/index.js +2 -0
- package/dist/components/truncated-line-with-tooltip/truncated-line-with-tooltip.js +26 -8
- package/dist/components/typography/index.d.ts +19 -0
- package/dist/components/typography/index.js +3 -0
- package/dist/components/use-mobile/index.d.ts +3 -0
- package/dist/components/use-mobile/index.js +2 -0
- package/dist/components/user-type-badge/index.d.ts +39 -0
- package/dist/components/user-type-badge/index.js +3 -0
- package/dist/components/user-type-badge/user-type-badge.js +2 -1
- package/dist/components/vertical-stepper/index.d.ts +7 -0
- package/dist/components/vertical-stepper/index.js +2 -0
- package/dist/components/vertical-stepper/vertical-stepper.js +33 -6
- package/dist/components/view-toggle/index.d.ts +38 -0
- package/dist/components/view-toggle/index.js +2 -0
- package/dist/components/view-toggle/view-toggle.js +56 -0
- package/dist/core/animate-ui/components/animate/code.js +83 -9
- package/dist/core/animate-ui/components/animate/tabs.js +234 -19
- package/dist/core/animate-ui/components/animate/tooltip.js +10 -2
- package/dist/core/animate-ui/components/base/preview-card.js +20 -3
- package/dist/core/animate-ui/components/buttons/copy.js +12 -6
- package/dist/core/animate-ui/components/radix/dialog.js +17 -3
- package/dist/core/animate-ui/components/radix/dropdown-menu.js +26 -9
- package/dist/core/animate-ui/components/radix/sheet.js +20 -4
- package/dist/core/animate-ui/components/radix/sidebar.js +9 -9
- package/dist/core/animate-ui/components/radix/toggle-group.js +103 -13
- package/dist/core/animate-ui/components/radix/toggle.js +5 -5
- package/dist/core/animate-ui/primitives/animate/code-block.js +31 -4
- package/dist/core/animate-ui/primitives/animate/shiki-highlighter.js +5 -2
- package/dist/core/animate-ui/primitives/animate/tabs.js +7 -4
- package/dist/core/animate-ui/primitives/animate/tooltip.js +10 -3
- package/dist/core/animate-ui/primitives/base/preview-card.js +2 -2
- package/dist/core/animate-ui/primitives/base/progress.js +1 -1
- package/dist/core/animate-ui/primitives/base/radio.js +3 -3
- package/dist/core/animate-ui/primitives/effects/highlight.js +1 -0
- package/dist/core/animate-ui/primitives/radix/accordion.js +1 -1
- package/dist/core/animate-ui/primitives/radix/dialog.js +6 -3
- package/dist/core/animate-ui/primitives/radix/dropdown-menu.js +2 -2
- package/dist/core/animate-ui/primitives/radix/sheet.js +7 -3
- package/dist/core/animate-ui/primitives/radix/switch.js +2 -2
- package/dist/core/animate-ui/primitives/radix/toggle-group.js +2 -2
- package/dist/core/badge.js +5 -2
- package/dist/core/breadcrumb.js +1 -1
- package/dist/core/button/button.js +8 -8
- package/dist/core/button/craft-button.js +8 -2
- package/dist/core/button.js +17 -7
- package/dist/core/card.js +23 -5
- package/dist/core/combobox/combobox.js +8 -2
- package/dist/core/command.js +3 -3
- package/dist/core/form.js +1 -1
- package/dist/core/hooks/use-nested-layer-press-guard.js +46 -0
- package/dist/core/hooks/use-on-screen.js +33 -0
- package/dist/core/hooks/use-prefers-reduced-motion.js +19 -0
- package/dist/core/hooks/use-scroll-overflow.js +20 -0
- package/dist/core/index.d.ts +30 -5
- package/dist/core/index.js +5 -2
- package/dist/core/input/input-password.js +13 -9
- package/dist/core/input/input.js +38 -12
- package/dist/core/input-otp/input-otp.js +9 -5
- package/dist/core/popover-group.js +48 -0
- package/dist/core/popover-hover.js +127 -0
- package/dist/core/popover.js +75 -6
- package/dist/core/select.js +50 -19
- package/dist/core/table.js +5 -3
- package/dist/core/textarea/textarea.js +11 -3
- package/dist/data-table/index.d.ts +4 -0
- package/dist/data-table/index.js +3 -0
- package/dist/date/index.d.ts +11 -0
- package/dist/date/index.js +7 -0
- package/dist/forms/index.d.ts +4 -0
- package/dist/forms/index.js +2 -0
- package/dist/icon-avatar.props-RYtw2eSW.d.ts +31 -0
- package/dist/icon-text-action-card.props-B2ggncUK.d.ts +53 -0
- package/dist/index.d.ts +169 -15
- package/dist/index.js +63 -10
- package/dist/input-CYI1hhGc.d.ts +38 -0
- package/dist/layouts/index.d.ts +132 -8
- package/dist/layouts/index.js +3 -1
- package/dist/layouts/minimal-workspace-layout/minimal-workspace-layout-context.js +5 -0
- package/dist/layouts/minimal-workspace-layout/minimal-workspace-layout.js +404 -0
- package/dist/layouts/minimal-workspace-layout/rail-logo.js +90 -0
- package/dist/layouts/minimal-workspace-layout/sidebar-trigger.js +42 -0
- package/dist/layouts/shared/account-menu-props.js +21 -0
- package/dist/layouts/shared/footer-branding.js +34 -0
- package/dist/layouts/shared/sidebar-logo.js +59 -0
- package/dist/layouts/workspace-layout/account-menu/account-menu.js +9 -3
- package/dist/layouts/workspace-layout/footer/footer.js +1 -1
- package/dist/layouts/workspace-layout/header/header.js +1 -1
- package/dist/layouts/workspace-layout/workspace-layout.js +28 -80
- package/dist/{list.props-x1j3CbcF.d.ts → list.props-DP_xPTqU.d.ts} +2 -1
- package/dist/markdown/index.d.ts +11 -0
- package/dist/markdown/index.js +5 -0
- package/dist/my-account-menu.props-C7DK71WC.d.ts +67 -0
- package/dist/page-container.props-JutTvKFq.d.ts +48 -0
- package/dist/resizable.props-RxFY5tm_.d.ts +44 -0
- package/dist/section-card-B7c5uc08.d.ts +84 -0
- package/dist/simple-clickable-card.props-BrPCw7CR.d.ts +51 -0
- package/dist/slot-DGErA9zi.d.ts +10 -0
- package/dist/status-badge.props-lKlEOfRt.d.ts +32 -0
- package/dist/style-axes-DSQ2DGc5.d.ts +133 -0
- package/dist/toast/index.d.ts +6 -0
- package/dist/toast/index.js +2 -0
- package/dist/tooltip-C0bYa8a3.d.ts +37 -0
- package/dist/{types-DtUxK-Am.d.ts → types-CkXflqg7.d.ts} +31 -1
- package/dist/utils/cn.js +6 -1
- package/dist/utils/color.js +35 -10
- package/dist/utils/index.d.ts +18 -2
- package/dist/utils/index.js +4 -1
- package/dist/utils/silver-shine.js +16 -1
- package/dist/utils/style-axes.js +227 -0
- package/dist/utils/variant.js +104 -8
- package/dist/utils/view-transition.js +21 -0
- package/dist/variant-D81RhpbR.d.ts +104 -0
- package/dist/vertical-stepper.props-BXYcbW70.d.ts +29 -0
- package/package.json +52 -6
- package/src/styles/colors.css +100 -4
- package/src/styles/globals.css +8 -131
- package/src/styles/style-axes.css +21 -0
- package/src/styles/theme.css +696 -0
- package/dist/app-logo.props-Ct7QBdTd.d.ts +0 -40
- package/dist/popover-ByLD3-Qv.d.ts +0 -204
|
@@ -0,0 +1,696 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Tokens-only stylesheet: every design token (colours, radius, fonts,
|
|
3
|
+
* animations, layout variables), the `dark` custom variant, the keyframes the
|
|
4
|
+
* animation tokens use, the @source of the library's compiled components, and
|
|
5
|
+
* the one component default every bordered component relies on (border
|
|
6
|
+
* colour). Nothing else: no `@import "tailwindcss"`, no Preflight reset, no
|
|
7
|
+
* page or element styles.
|
|
8
|
+
*
|
|
9
|
+
* For apps that bring their own Tailwind setup (or legacy CSS a global reset
|
|
10
|
+
* would break): import Tailwind yourself, then this file.
|
|
11
|
+
*
|
|
12
|
+
* @import "tailwindcss";
|
|
13
|
+
* @import "@espressif/dashboard-ui-components/theme.css";
|
|
14
|
+
*
|
|
15
|
+
* `@espressif/dashboard-ui-components/styles` (globals.css) is this file plus
|
|
16
|
+
* Tailwind, the base styles and the browser-autofill rules.
|
|
17
|
+
*/
|
|
18
|
+
@import "./colors.css";
|
|
19
|
+
@import "./style-axes.css";
|
|
20
|
+
|
|
21
|
+
@source "../../dist";
|
|
22
|
+
/* Utilities the components generated before 1.12 and no longer use since
|
|
23
|
+
their colours became tokens. Kept so the compiled stylesheet only ever
|
|
24
|
+
grows within 1.x: an app may rely on them without generating them itself. */
|
|
25
|
+
@source inline("text-white/60 text-white/80 [&>svg]:text-white");
|
|
26
|
+
/* Tag's `success` name chip moved from /15 to /20; the old utility stays. */
|
|
27
|
+
@source inline("bg-success/15");
|
|
28
|
+
/* Likewise for the radius and shadow literals the style-axis readers
|
|
29
|
+
replaced (Input add-ons; Card and the xl / 3xl surfaces; the 2xl overlays,
|
|
30
|
+
the DateRangePicker panel halves and the chart tooltip shadow; List rows and their height). */
|
|
31
|
+
@source inline("rounded-s-lg rounded-e-lg rounded-xl rounded-3xl rounded-2xl rounded-l-2xl rounded-r-2xl shadow-xl rounded-[10px] min-h-[var(--menu-item-height)]");
|
|
32
|
+
/* Calendar day cells and range ends, now on the item role. */
|
|
33
|
+
@source inline("rounded-l-md rounded-r-md data-[range-start=true]:rounded-md data-[range-start=true]:rounded-l-md data-[range-end=true]:rounded-md data-[range-end=true]:rounded-r-md [&:first-child[data-selected=true]_button]:rounded-l-md [&:last-child[data-selected=true]_button]:rounded-r-md");
|
|
34
|
+
/* PageContainer's elevated header, now on the surface elevation role. */
|
|
35
|
+
@source inline("shadow-md md:shadow-md");
|
|
36
|
+
/* The Sheet and Dialog scrims, now on the overlay scrim token (1.12). */
|
|
37
|
+
@source inline("bg-black/50 bg-black/80");
|
|
38
|
+
/* The NavBar details panel's shadow, now on the navbar elevation token (1.12). */
|
|
39
|
+
@source inline("shadow-lg");
|
|
40
|
+
/* Footer heights and the AppLogo cap before the shell / workspace-layout
|
|
41
|
+
token names (1.12). */
|
|
42
|
+
@source inline("h-[var(--espd-footer-height)] h-[var(--espd-hidden-footer-height)] max-h-[calc(var(--espd-header-height)-16px)]");
|
|
43
|
+
|
|
44
|
+
@theme {
|
|
45
|
+
/* Radius */
|
|
46
|
+
--radius-lg: 0.5rem;
|
|
47
|
+
--radius-md: calc(0.5rem - 2px);
|
|
48
|
+
--radius-sm: calc(0.5rem - 4px);
|
|
49
|
+
|
|
50
|
+
/* Default font stack. The library ships no font binaries — consumers can
|
|
51
|
+
override --font-sans to supply their own typeface. */
|
|
52
|
+
--font-sans:
|
|
53
|
+
system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen,
|
|
54
|
+
Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", Helvetica, Arial,
|
|
55
|
+
"PingFang SC", "Microsoft YaHei", 黑体, sans-serif;
|
|
56
|
+
|
|
57
|
+
/* Monospace stack for code, logs and identifiers (CodeEditor,
|
|
58
|
+
MonospaceContent, MarkdownContent code, chart tooltips — all `font-mono`).
|
|
59
|
+
Declared here so it is a library token like --font-sans; the value is
|
|
60
|
+
Tailwind's own default, so nothing changes until a consumer overrides it. */
|
|
61
|
+
--font-mono:
|
|
62
|
+
ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
|
|
63
|
+
"Courier New", monospace;
|
|
64
|
+
|
|
65
|
+
/* Animations */
|
|
66
|
+
--animate-underline-slide: underline-slide 1s ease-in-out;
|
|
67
|
+
--animate-collapsible-down: collapsible-down 0.3s ease-out;
|
|
68
|
+
--animate-collapsible-up: collapsible-up 0.3s ease-out;
|
|
69
|
+
--animate-avatar-ring: avatar-ring 1.8s cubic-bezier(0.4, 0, 0.2, 1) infinite;
|
|
70
|
+
--animate-caret-blink: caret-blink 1.25s ease-out infinite;
|
|
71
|
+
/* One expanding ring that fades out — a "this lit up" pulse on a mark. */
|
|
72
|
+
--animate-espd-ripple: espd-ripple 0.9s cubic-bezier(0.22, 1, 0.36, 1) both;
|
|
73
|
+
/* One light sweep across text that has just settled (a counter landing on
|
|
74
|
+
its value). Pair with `text-shine`, which paints the band it moves. */
|
|
75
|
+
--animate-shine: shine 1.2s cubic-bezier(0.22, 1, 0.36, 1) 1 both;
|
|
76
|
+
/* Entrances for something appearing in place: a floating control popping
|
|
77
|
+
in with a small overshoot, a side panel sliding in from the start edge,
|
|
78
|
+
and items rising into a list (stagger them with delay-*). Also the
|
|
79
|
+
fallbacks where a view transition (view-transition-morph / -glide) is
|
|
80
|
+
unsupported. Wrap them in motion-safe: at the call site. */
|
|
81
|
+
--animate-pop-in: pop-in 0.45s var(--ease-spring) both;
|
|
82
|
+
--animate-slide-in-start: slide-in-start 0.45s var(--ease-emphasized) both;
|
|
83
|
+
--animate-rise-in: rise-in 0.4s var(--ease-emphasized) both;
|
|
84
|
+
/* A slow, endless turn for decoration in the background (a faint logo
|
|
85
|
+
ring behind a banner). Wrap it in motion-safe: at the call site. */
|
|
86
|
+
--animate-spin-slow: espd-spin 90s linear infinite;
|
|
87
|
+
/* One ring bursting out of a mark and fading (a panel opening from it).
|
|
88
|
+
Bigger and quicker than espd-ripple. */
|
|
89
|
+
--animate-burst: espd-burst 0.6s var(--ease-emphasized);
|
|
90
|
+
/* A toggle being switched ON, celebrated once: a heart squashes, springs up
|
|
91
|
+
bigger with a tilt and settles (a like); a bookmark hops, lands with a
|
|
92
|
+
squash and bounces (a save); six dots in the brand colours burst outward
|
|
93
|
+
from one centred element (`animate-sparkle` on a size-1 span — pair it
|
|
94
|
+
with `animate-espd-ripple` for the ring). Switching OFF plays nothing.
|
|
95
|
+
Wrap them in motion-safe: at the call site. */
|
|
96
|
+
--animate-heart-pop: espd-heart-pop 0.6s var(--ease-overshoot) both;
|
|
97
|
+
--animate-bookmark-drop: espd-bookmark-drop 0.6s var(--ease-emphasized) both;
|
|
98
|
+
--animate-sparkle: espd-sparkle 0.6s var(--ease-emphasized) both;
|
|
99
|
+
/* A soft, endless throb for a mark that says "under way" (StepTabs' in
|
|
100
|
+
progress dot): every 2s it swells a little (`animate-throb`, on the
|
|
101
|
+
mark) while a halo of the same shape and colour rings out from it and
|
|
102
|
+
fades (`animate-throb-ring`, on a copy behind it, such as a `before:`
|
|
103
|
+
with `bg-current`). Both run 2s, so started together they stay in step.
|
|
104
|
+
Transform and opacity only: no reflow, smooth everywhere. Slow on
|
|
105
|
+
purpose, so it can run all day beside text. Wrap them in motion-safe:
|
|
106
|
+
at the call site. */
|
|
107
|
+
--animate-throb: espd-throb 2s ease-out infinite;
|
|
108
|
+
--animate-throb-ring: espd-throb-ring 2s ease-out infinite;
|
|
109
|
+
|
|
110
|
+
/* Easings beyond Tailwind's three. `spring` overshoots and settles (a mark
|
|
111
|
+
scaling up when it lights); `emphasized` is a fast-out, long-settle curve
|
|
112
|
+
for something drawing in. */
|
|
113
|
+
--ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
|
|
114
|
+
--ease-emphasized: cubic-bezier(0.22, 1, 0.36, 1);
|
|
115
|
+
/* A bigger overshoot than spring, for small things popping into place
|
|
116
|
+
(a chip, a button swinging in). */
|
|
117
|
+
--ease-overshoot: cubic-bezier(0.34, 1.8, 0.64, 1);
|
|
118
|
+
|
|
119
|
+
/* Clearance under a sticky NavBar: its height plus the gap it floats at
|
|
120
|
+
once it morphs into a pill (12px), plus 12px of air. `top-below-navbar`
|
|
121
|
+
keeps a sticky side panel clear of the bar; `scroll-mt-below-navbar`
|
|
122
|
+
keeps an anchor target from landing under it. Follows
|
|
123
|
+
--espd-navbar-height when an app changes it. */
|
|
124
|
+
--spacing-below-navbar: calc(var(--espd-navbar-height) + 1.5rem);
|
|
125
|
+
|
|
126
|
+
/* A soft, tight halo with no offset, for the `glow` variant. Its colour is
|
|
127
|
+
the shadow-colour utility beside it (`shadow-glow shadow-primary/45`). */
|
|
128
|
+
--shadow-glow: 0 0 15px -5.5px rgb(0 0 0 / 0.25);
|
|
129
|
+
|
|
130
|
+
/* A wide, soft halo with no offset, for something that floats over the page
|
|
131
|
+
on every side (a composer docked at the bottom of a window, where a shadow
|
|
132
|
+
cast downward would be hidden). Colour it like the glow, with the
|
|
133
|
+
shadow-colour utility beside it (`shadow-float shadow-foreground/10`). */
|
|
134
|
+
--shadow-float: 0 0 48px -8px rgb(0 0 0 / 0.12);
|
|
135
|
+
|
|
136
|
+
/* The walls of something recessed into the surface (StepTabs' tray, on
|
|
137
|
+
`bg-recessed`): an inner shadow under the top edge, a softer one inside
|
|
138
|
+
it, a faint rim, and a light lip along the bottom edge outside, where the
|
|
139
|
+
surface catches the light. Per theme, so it is the value of
|
|
140
|
+
--espd-shadow-recessed (below); Tailwind writes a shadow token's value into
|
|
141
|
+
its utility, so a `.dark` override of this token itself would not apply. */
|
|
142
|
+
--shadow-recessed: var(--espd-shadow-recessed);
|
|
143
|
+
|
|
144
|
+
/* Marketing type: a display headline and the lead paragraph under it. Fluid
|
|
145
|
+
between a phone and a wide desktop, so one class serves every width. */
|
|
146
|
+
--text-display: clamp(2.5rem, 7vw, 5.5rem);
|
|
147
|
+
--text-display--line-height: 1.04;
|
|
148
|
+
--text-display--letter-spacing: -0.04em;
|
|
149
|
+
--text-display--font-weight: 800;
|
|
150
|
+
--text-lead: clamp(1.0625rem, 1.5vw, 1.3125rem);
|
|
151
|
+
--text-lead--line-height: 1.6;
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
@keyframes caret-blink {
|
|
155
|
+
0%,
|
|
156
|
+
70%,
|
|
157
|
+
100% {
|
|
158
|
+
opacity: 1;
|
|
159
|
+
}
|
|
160
|
+
20%,
|
|
161
|
+
50% {
|
|
162
|
+
opacity: 0;
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
@keyframes avatar-ring {
|
|
167
|
+
0% {
|
|
168
|
+
box-shadow: 0 0 0 0 currentColor;
|
|
169
|
+
opacity: 0.45;
|
|
170
|
+
}
|
|
171
|
+
70% {
|
|
172
|
+
opacity: 0;
|
|
173
|
+
}
|
|
174
|
+
100% {
|
|
175
|
+
box-shadow: 0 0 0 0.375rem currentColor;
|
|
176
|
+
opacity: 0;
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
@keyframes collapsible-down {
|
|
181
|
+
from {
|
|
182
|
+
grid-template-rows: 0fr;
|
|
183
|
+
}
|
|
184
|
+
to {
|
|
185
|
+
grid-template-rows: 1fr;
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
@keyframes collapsible-up {
|
|
190
|
+
from {
|
|
191
|
+
grid-template-rows: 1fr;
|
|
192
|
+
}
|
|
193
|
+
to {
|
|
194
|
+
grid-template-rows: 0fr;
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
/* MinimalWorkspaceLayout: what appears when the rail expands. Each animates
|
|
199
|
+
*from* hidden to the element's own styles. */
|
|
200
|
+
@keyframes espd-pop-in {
|
|
201
|
+
from {
|
|
202
|
+
opacity: 0;
|
|
203
|
+
transform: translateX(-0.75rem) scale(0.96);
|
|
204
|
+
filter: blur(2px);
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
@keyframes espd-icon-pop {
|
|
209
|
+
from {
|
|
210
|
+
opacity: 0;
|
|
211
|
+
transform: scale(0.4) rotate(-20deg);
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
@keyframes espd-fade-in {
|
|
216
|
+
from {
|
|
217
|
+
opacity: 0;
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
@keyframes underline-slide {
|
|
222
|
+
0% {
|
|
223
|
+
transform: scaleX(1);
|
|
224
|
+
transform-origin: right;
|
|
225
|
+
}
|
|
226
|
+
50% {
|
|
227
|
+
transform: scaleX(0);
|
|
228
|
+
transform-origin: right;
|
|
229
|
+
}
|
|
230
|
+
50.1% {
|
|
231
|
+
transform: scaleX(0);
|
|
232
|
+
transform-origin: left;
|
|
233
|
+
}
|
|
234
|
+
100% {
|
|
235
|
+
transform: scaleX(1);
|
|
236
|
+
transform-origin: left;
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
@keyframes espd-ripple {
|
|
241
|
+
from {
|
|
242
|
+
opacity: 0.6;
|
|
243
|
+
transform: scale(0.6);
|
|
244
|
+
}
|
|
245
|
+
to {
|
|
246
|
+
opacity: 0;
|
|
247
|
+
transform: scale(2);
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
@keyframes pop-in {
|
|
252
|
+
from {
|
|
253
|
+
opacity: 0;
|
|
254
|
+
transform: scale(0.6);
|
|
255
|
+
}
|
|
256
|
+
to {
|
|
257
|
+
opacity: 1;
|
|
258
|
+
transform: none;
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
@keyframes slide-in-start {
|
|
263
|
+
from {
|
|
264
|
+
opacity: 0;
|
|
265
|
+
transform: translateX(-1rem);
|
|
266
|
+
}
|
|
267
|
+
to {
|
|
268
|
+
opacity: 1;
|
|
269
|
+
transform: none;
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
|
|
273
|
+
@keyframes rise-in {
|
|
274
|
+
from {
|
|
275
|
+
opacity: 0;
|
|
276
|
+
transform: translateY(0.5rem);
|
|
277
|
+
}
|
|
278
|
+
to {
|
|
279
|
+
opacity: 1;
|
|
280
|
+
transform: none;
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
|
|
284
|
+
@keyframes espd-burst {
|
|
285
|
+
from {
|
|
286
|
+
opacity: 0.7;
|
|
287
|
+
transform: scale(0.6);
|
|
288
|
+
}
|
|
289
|
+
to {
|
|
290
|
+
opacity: 0;
|
|
291
|
+
transform: scale(3.4);
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
|
|
295
|
+
@keyframes espd-heart-pop {
|
|
296
|
+
0% {
|
|
297
|
+
transform: none;
|
|
298
|
+
}
|
|
299
|
+
25% {
|
|
300
|
+
transform: scale(0.72, 0.8) rotate(-8deg);
|
|
301
|
+
}
|
|
302
|
+
55% {
|
|
303
|
+
transform: scale(1.32) rotate(10deg);
|
|
304
|
+
}
|
|
305
|
+
80% {
|
|
306
|
+
transform: scale(0.94) rotate(-2deg);
|
|
307
|
+
}
|
|
308
|
+
100% {
|
|
309
|
+
transform: none;
|
|
310
|
+
}
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
@keyframes espd-bookmark-drop {
|
|
314
|
+
0% {
|
|
315
|
+
transform: none;
|
|
316
|
+
}
|
|
317
|
+
30% {
|
|
318
|
+
transform: translateY(-35%) scale(1.06);
|
|
319
|
+
}
|
|
320
|
+
55% {
|
|
321
|
+
transform: translateY(0) scale(1.18, 0.78);
|
|
322
|
+
}
|
|
323
|
+
75% {
|
|
324
|
+
transform: translateY(-12%) scale(0.96, 1.04);
|
|
325
|
+
}
|
|
326
|
+
100% {
|
|
327
|
+
transform: none;
|
|
328
|
+
}
|
|
329
|
+
}
|
|
330
|
+
|
|
331
|
+
/* Six dots, 60 degrees apart, flying 14px out from the centre of a small
|
|
332
|
+
dot (size-1) and fading — sized for a 16-20px icon. Brand gradient colours
|
|
333
|
+
plus amber, so it follows an app's logo colours. */
|
|
334
|
+
@keyframes espd-sparkle {
|
|
335
|
+
0% {
|
|
336
|
+
opacity: 1;
|
|
337
|
+
box-shadow:
|
|
338
|
+
0 0 0 0 var(--color-gradient-start),
|
|
339
|
+
0 0 0 0 var(--color-gradient-middle),
|
|
340
|
+
0 0 0 0 var(--color-gradient-end),
|
|
341
|
+
0 0 0 0 var(--color-warning),
|
|
342
|
+
0 0 0 0 var(--color-gradient-start),
|
|
343
|
+
0 0 0 0 var(--color-gradient-end);
|
|
344
|
+
}
|
|
345
|
+
100% {
|
|
346
|
+
opacity: 0;
|
|
347
|
+
box-shadow:
|
|
348
|
+
0 -14px 0 -0.5px var(--color-gradient-start),
|
|
349
|
+
12px -7px 0 -0.5px var(--color-gradient-middle),
|
|
350
|
+
12px 7px 0 -0.5px var(--color-gradient-end),
|
|
351
|
+
0 14px 0 -0.5px var(--color-warning),
|
|
352
|
+
-12px 7px 0 -0.5px var(--color-gradient-start),
|
|
353
|
+
-12px -7px 0 -0.5px var(--color-gradient-end);
|
|
354
|
+
}
|
|
355
|
+
}
|
|
356
|
+
|
|
357
|
+
@keyframes espd-throb {
|
|
358
|
+
0%,
|
|
359
|
+
70%,
|
|
360
|
+
100% {
|
|
361
|
+
transform: scale(1);
|
|
362
|
+
}
|
|
363
|
+
30% {
|
|
364
|
+
transform: scale(1.3);
|
|
365
|
+
}
|
|
366
|
+
}
|
|
367
|
+
|
|
368
|
+
@keyframes espd-throb-ring {
|
|
369
|
+
0% {
|
|
370
|
+
transform: scale(1);
|
|
371
|
+
opacity: 0.5;
|
|
372
|
+
}
|
|
373
|
+
70%,
|
|
374
|
+
100% {
|
|
375
|
+
transform: scale(2.6);
|
|
376
|
+
opacity: 0;
|
|
377
|
+
}
|
|
378
|
+
}
|
|
379
|
+
|
|
380
|
+
@keyframes espd-spin {
|
|
381
|
+
to {
|
|
382
|
+
transform: rotate(360deg);
|
|
383
|
+
}
|
|
384
|
+
}
|
|
385
|
+
|
|
386
|
+
@keyframes shine {
|
|
387
|
+
from {
|
|
388
|
+
background-position: 100% 0;
|
|
389
|
+
}
|
|
390
|
+
to {
|
|
391
|
+
background-position: 0 0;
|
|
392
|
+
}
|
|
393
|
+
}
|
|
394
|
+
|
|
395
|
+
/* Text painted by a band of the primary colour that `animate-shine` sweeps
|
|
396
|
+
across once. At rest (either end of the sweep) it reads as plain
|
|
397
|
+
foreground text, so it is safe without the animation too. */
|
|
398
|
+
@utility text-shine {
|
|
399
|
+
background-image: linear-gradient(
|
|
400
|
+
100deg,
|
|
401
|
+
var(--color-foreground) 40%,
|
|
402
|
+
var(--color-primary) 50%,
|
|
403
|
+
var(--color-foreground) 60%
|
|
404
|
+
);
|
|
405
|
+
background-size: 300% 100%;
|
|
406
|
+
background-position: 0 0;
|
|
407
|
+
background-clip: text;
|
|
408
|
+
-webkit-background-clip: text;
|
|
409
|
+
color: transparent;
|
|
410
|
+
}
|
|
411
|
+
|
|
412
|
+
/* Text filled with the brand gradient, start → middle → end left to right
|
|
413
|
+
(`--color-gradient-*`). It wraps with the text, line by line. */
|
|
414
|
+
@utility text-gradient {
|
|
415
|
+
background-image: linear-gradient(
|
|
416
|
+
90deg,
|
|
417
|
+
var(--color-gradient-start),
|
|
418
|
+
var(--color-gradient-middle) 50%,
|
|
419
|
+
var(--color-gradient-end)
|
|
420
|
+
);
|
|
421
|
+
background-clip: text;
|
|
422
|
+
-webkit-background-clip: text;
|
|
423
|
+
color: transparent;
|
|
424
|
+
}
|
|
425
|
+
|
|
426
|
+
/* Transition a line drawing in and fading (an SVG path with `pathLength` and
|
|
427
|
+
a dash): only the dash offset and opacity, so a path whose `d` follows the
|
|
428
|
+
pointer redraws immediately instead of easing behind it. Takes the usual
|
|
429
|
+
duration-*, ease-* and delay-* utilities. */
|
|
430
|
+
@utility transition-draw {
|
|
431
|
+
transition-property: stroke-dashoffset, opacity;
|
|
432
|
+
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
|
|
433
|
+
transition-duration: var(--tw-duration, var(--default-transition-duration));
|
|
434
|
+
}
|
|
435
|
+
|
|
436
|
+
/* A circular reveal: a layer clipped to nothing at its centre
|
|
437
|
+
(`clip-circle-closed`) that opens to cover its box (`clip-circle-open`),
|
|
438
|
+
e.g. a detail panel opening over a card on hover. `transition-clip`
|
|
439
|
+
animates the clip and the visibility together, so a closed layer is also
|
|
440
|
+
hidden from pointers and focus; pair it with `invisible` / `visible` and the
|
|
441
|
+
usual duration-*, ease-* and delay-* utilities. */
|
|
442
|
+
@utility clip-circle-closed {
|
|
443
|
+
clip-path: circle(0% at 50% 50%);
|
|
444
|
+
}
|
|
445
|
+
|
|
446
|
+
@utility clip-circle-open {
|
|
447
|
+
clip-path: circle(75% at 50% 50%);
|
|
448
|
+
}
|
|
449
|
+
|
|
450
|
+
@utility transition-clip {
|
|
451
|
+
transition-property: clip-path, visibility;
|
|
452
|
+
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
|
|
453
|
+
transition-duration: var(--tw-duration, var(--default-transition-duration));
|
|
454
|
+
}
|
|
455
|
+
|
|
456
|
+
/* View transitions (run one with `startViewTransition` from /utils).
|
|
457
|
+
view-transition-morph: the ONE element on screen at a time that turns into
|
|
458
|
+
another (a side panel collapsing into a floating button) — give both the
|
|
459
|
+
class; they must never be on screen together. It is drawn above everything
|
|
460
|
+
else during the morph, so it never slides behind the content it crosses.
|
|
461
|
+
view-transition-glide: each element of a set (cards in a grid) moves to its
|
|
462
|
+
new place on its own, with no per-element name to invent. Inert outside a
|
|
463
|
+
view transition. */
|
|
464
|
+
@utility view-transition-morph {
|
|
465
|
+
view-transition-name: espd-morph;
|
|
466
|
+
}
|
|
467
|
+
|
|
468
|
+
@utility view-transition-glide {
|
|
469
|
+
view-transition-name: match-element;
|
|
470
|
+
view-transition-class: espd-glide;
|
|
471
|
+
}
|
|
472
|
+
|
|
473
|
+
::view-transition-group(espd-morph) {
|
|
474
|
+
z-index: 100;
|
|
475
|
+
animation-duration: 0.6s;
|
|
476
|
+
animation-timing-function: var(--ease-spring);
|
|
477
|
+
}
|
|
478
|
+
|
|
479
|
+
::view-transition-group(*.espd-glide) {
|
|
480
|
+
animation-duration: 0.5s;
|
|
481
|
+
animation-timing-function: var(--ease-spring);
|
|
482
|
+
}
|
|
483
|
+
|
|
484
|
+
/* A scrolling row with no visible scrollbar (a swipeable chip row with its
|
|
485
|
+
own arrow buttons). Still scrollable by touch, wheel and keyboard. */
|
|
486
|
+
@utility scrollbar-none {
|
|
487
|
+
scrollbar-width: none;
|
|
488
|
+
&::-webkit-scrollbar {
|
|
489
|
+
display: none;
|
|
490
|
+
}
|
|
491
|
+
}
|
|
492
|
+
|
|
493
|
+
/* A scrolling row whose scrollbar is thin and shows only while the pointer
|
|
494
|
+
is over it or focus is inside it (a row of filter chips that runs past the
|
|
495
|
+
edge). The track keeps its space when hidden, so nothing shifts on hover.
|
|
496
|
+
Standard properties for Chromium and Firefox, where the thumb fades in and
|
|
497
|
+
out; the WebKit pseudo-elements for Safari, which ignores them and cannot
|
|
498
|
+
animate a scrollbar, so it shows and hides at once. */
|
|
499
|
+
@utility scrollbar-hover {
|
|
500
|
+
scrollbar-width: thin;
|
|
501
|
+
scrollbar-color: transparent transparent;
|
|
502
|
+
transition: scrollbar-color 0.2s ease-out;
|
|
503
|
+
&:hover,
|
|
504
|
+
&:focus-within {
|
|
505
|
+
scrollbar-color: color-mix(in oklab, var(--color-foreground) 25%, transparent) transparent;
|
|
506
|
+
}
|
|
507
|
+
&::-webkit-scrollbar {
|
|
508
|
+
width: 6px;
|
|
509
|
+
height: 6px;
|
|
510
|
+
}
|
|
511
|
+
&::-webkit-scrollbar-thumb {
|
|
512
|
+
border-radius: 9999px;
|
|
513
|
+
background-color: transparent;
|
|
514
|
+
}
|
|
515
|
+
&:hover::-webkit-scrollbar-thumb,
|
|
516
|
+
&:focus-within::-webkit-scrollbar-thumb {
|
|
517
|
+
background-color: color-mix(in oklab, var(--color-foreground) 25%, transparent);
|
|
518
|
+
}
|
|
519
|
+
}
|
|
520
|
+
|
|
521
|
+
:root {
|
|
522
|
+
--espd-sidebar-width: 288px;
|
|
523
|
+
|
|
524
|
+
/* `shadow-recessed`: see --shadow-recessed. */
|
|
525
|
+
--espd-shadow-recessed:
|
|
526
|
+
inset 0 1px 1.5px rgb(0 0 0 / 0.045),
|
|
527
|
+
inset 0 2px 4px rgb(0 0 0 / 0.02),
|
|
528
|
+
inset 0 0 0 1px rgb(0 0 0 / 0.03),
|
|
529
|
+
0 1px 0 rgb(255 255 255 / 0.9);
|
|
530
|
+
--espd-sidebar-width-collapsed: 56px;
|
|
531
|
+
--espd-sidebar-width-mobile: 18rem;
|
|
532
|
+
|
|
533
|
+
/* MinimalWorkspaceLayout: header-less shell with an icon rail. Tokens set
|
|
534
|
+
to `initial` are unset: the layout falls back to the value named beside
|
|
535
|
+
each (read where it is used, so a `.dark` subtree still switches). */
|
|
536
|
+
--espd-minimal-workspace-layout-height: 100dvh;
|
|
537
|
+
--espd-minimal-workspace-layout-sidebar-width: initial; /* --espd-sidebar-width */
|
|
538
|
+
--espd-minimal-workspace-layout-sidebar-width-collapsed: 3.5rem;
|
|
539
|
+
--espd-minimal-workspace-layout-logo-height: 3.5rem;
|
|
540
|
+
--espd-minimal-workspace-layout-logo-padding: 0.75rem;
|
|
541
|
+
--espd-minimal-workspace-layout-sidebar-background: initial; /* --color-background */
|
|
542
|
+
--espd-minimal-workspace-layout-sidebar-background-expanded: initial; /* the one above */
|
|
543
|
+
--espd-minimal-workspace-layout-sidebar-foreground: initial; /* --color-foreground */
|
|
544
|
+
--espd-minimal-workspace-layout-sidebar-accent: initial; /* surface mixed 7% towards --color-foreground */
|
|
545
|
+
--espd-minimal-workspace-layout-sidebar-accent-foreground: initial; /* --color-foreground */
|
|
546
|
+
--espd-minimal-workspace-layout-sidebar-border-color: initial; /* surface mixed 5% towards --color-foreground */
|
|
547
|
+
--espd-minimal-workspace-layout-sidebar-elevation: initial; /* wide right-hand shadow, surface mixed 15% towards black at 45% opacity */
|
|
548
|
+
--espd-minimal-workspace-layout-content-background: initial; /* --color-background */
|
|
549
|
+
--espd-minimal-workspace-layout-top-right-offset-x: 1rem;
|
|
550
|
+
--espd-minimal-workspace-layout-top-right-offset-y: 0.75rem;
|
|
551
|
+
--espd-minimal-workspace-layout-duration: 450ms;
|
|
552
|
+
--espd-minimal-workspace-layout-ease: cubic-bezier(0.4, 0, 0.2, 1);
|
|
553
|
+
/* With `sidebarConfig.hideWhenCollapsed`: the strip shown when the left
|
|
554
|
+
edge of the content is hovered, and the shadow of the sidebar while it
|
|
555
|
+
peeks over the content. */
|
|
556
|
+
--espd-minimal-workspace-layout-edge-color: initial; /* --color-primary */
|
|
557
|
+
--espd-minimal-workspace-layout-edge-width: 3px;
|
|
558
|
+
/* The zone that reacts, wider than the strip it draws: the strip sits at its left. */
|
|
559
|
+
--espd-minimal-workspace-layout-edge-hit-width: 12px;
|
|
560
|
+
--espd-minimal-workspace-layout-sidebar-overlay-elevation: initial; /* wide shadow, surface mixed 20% towards black at 55% opacity */
|
|
561
|
+
|
|
562
|
+
/* Shell and WorkspaceLayout heights. Components read the new names
|
|
563
|
+
(--espd-shell-header-height, --espd-workspace-layout-footer-height,
|
|
564
|
+
--espd-workspace-layout-hidden-footer-height), which are not declared
|
|
565
|
+
so they fall back to these deprecated defaults; an app may override
|
|
566
|
+
either name. The deprecated names go in 2.0. */
|
|
567
|
+
--espd-header-height: 3.125rem;
|
|
568
|
+
--espd-navbar-height: 4rem;
|
|
569
|
+
--espd-banner-height: 0rem;
|
|
570
|
+
--espd-footer-height: 1.5rem;
|
|
571
|
+
--espd-hidden-footer-height: 0.75rem;
|
|
572
|
+
|
|
573
|
+
--espd-floating-window-offset-left: 0px;
|
|
574
|
+
--espd-floating-window-offset-right: 0px;
|
|
575
|
+
--espd-floating-window-offset-top: var(--espd-header-height);
|
|
576
|
+
--espd-floating-window-offset-bottom: var(--espd-footer-height);
|
|
577
|
+
|
|
578
|
+
--menu-item-height: 2.5rem;
|
|
579
|
+
--spacing: 0.25rem;
|
|
580
|
+
--text-sm: 0.875rem;
|
|
581
|
+
--text-sm--line-height: 1.25rem;
|
|
582
|
+
|
|
583
|
+
/** Every sidebar nav row: group labels and menu item labels share one scale. */
|
|
584
|
+
--espd-sidebar-item-font-size: 0.875rem;
|
|
585
|
+
/** Collapsed-sidebar flyout: group title row. Matches the rows above by default;
|
|
586
|
+
raise it if you want the flyout title to stand out from its submenu items. */
|
|
587
|
+
--espd-sidebar-flyout-group-label-font-size: 0.875rem;
|
|
588
|
+
|
|
589
|
+
/* ─── Semantic tokens beyond colour ───
|
|
590
|
+
Each default reproduces the value the components used before it existed,
|
|
591
|
+
so nothing changes until an app overrides one. See docs/token-audit.md. */
|
|
592
|
+
|
|
593
|
+
/* Control density: heights shared by buttons, inputs, selects and toggles. */
|
|
594
|
+
--espd-control-height-sm: calc(var(--spacing) * 8);
|
|
595
|
+
--espd-control-height-md: calc(var(--spacing) * 9);
|
|
596
|
+
--espd-control-height-lg: calc(var(--spacing) * 10);
|
|
597
|
+
/* Horizontal padding of buttons per size. */
|
|
598
|
+
--espd-button-padding-x-sm: calc(var(--spacing) * 3);
|
|
599
|
+
--espd-button-padding-x-md: calc(var(--spacing) * 4);
|
|
600
|
+
--espd-button-padding-x-lg: calc(var(--spacing) * 8);
|
|
601
|
+
/* Table head height and cell padding; sidebar row heights (default and
|
|
602
|
+
`sm`). List rows read --espd-item-height, falling back to
|
|
603
|
+
--menu-item-height, so it is not declared here. */
|
|
604
|
+
--espd-table-head-height: calc(var(--spacing) * 10);
|
|
605
|
+
--espd-table-cell-padding: calc(var(--spacing) * 2);
|
|
606
|
+
--espd-sidebar-row-height: calc(var(--spacing) * 8);
|
|
607
|
+
--espd-sidebar-row-height-sm: calc(var(--spacing) * 7);
|
|
608
|
+
/* Gaps: between a form field's label, control and message (FormItem), and
|
|
609
|
+
between a dialog's header, body and footer (DialogContent). */
|
|
610
|
+
--espd-gap-field: calc(var(--spacing) * 2);
|
|
611
|
+
--espd-gap-stack: calc(var(--spacing) * 4);
|
|
612
|
+
|
|
613
|
+
/* Motion: transition durations. */
|
|
614
|
+
--espd-duration-fast: 150ms;
|
|
615
|
+
--espd-duration-normal: 200ms;
|
|
616
|
+
--espd-duration-slow: 300ms;
|
|
617
|
+
|
|
618
|
+
/* The scrim behind a modal Dialog or Sheet: its colour, and how much it
|
|
619
|
+
blurs the page under it. `initial` means unset, as for the style-axis
|
|
620
|
+
tokens below: each scrim keeps its own (Sheet and the animated Dialog
|
|
621
|
+
black at 50%, /core's Dialog at 80%, no blur). A dark theme, whose page
|
|
622
|
+
is already near-black, wants a deeper scrim or a blur for the panel to
|
|
623
|
+
stand out. */
|
|
624
|
+
--espd-overlay-scrim: initial;
|
|
625
|
+
--espd-overlay-blur: initial;
|
|
626
|
+
/* How much the page under an open NavBar details panel is blurred. Falls
|
|
627
|
+
back to --espd-overlay-blur, then none: the dimmed page stays sharp unless
|
|
628
|
+
a theme asks for the panel to stand further out from it. */
|
|
629
|
+
--espd-navbar-backdrop-blur: initial;
|
|
630
|
+
|
|
631
|
+
/* Hover / keyboard-focus ring around buttons. */
|
|
632
|
+
--espd-ring-width: 2px;
|
|
633
|
+
--espd-ring-offset: 2px;
|
|
634
|
+
|
|
635
|
+
/* Text and icons on a solid surface of an arbitrary (non-preset) colour, and
|
|
636
|
+
on the destructive copy button. */
|
|
637
|
+
--espd-on-solid-foreground: #fff;
|
|
638
|
+
|
|
639
|
+
/* Style-axis role tokens. `initial` means unset: every reader falls back to
|
|
640
|
+
its own current radius, border width or shadow, so declaring them changes
|
|
641
|
+
nothing. Set one (here, on any ancestor, or with StyleScope) to give that
|
|
642
|
+
role one value everywhere below it. */
|
|
643
|
+
--espd-radius-control: initial;
|
|
644
|
+
--espd-border-width-control: initial;
|
|
645
|
+
--espd-elevation-control: initial;
|
|
646
|
+
--espd-radius-surface: initial;
|
|
647
|
+
--espd-border-width-surface: initial;
|
|
648
|
+
--espd-elevation-surface: initial;
|
|
649
|
+
--espd-radius-overlay: initial;
|
|
650
|
+
--espd-elevation-overlay: initial;
|
|
651
|
+
/* The floating NavBar pill and the details panel hanging from any NavBar:
|
|
652
|
+
falls back to the overlay elevation, then the bar's own shadow. A dark
|
|
653
|
+
theme can give the bar a glow of its own, so it reads as placed on the
|
|
654
|
+
page rather than part of it, without changing every overlay. */
|
|
655
|
+
--espd-elevation-navbar: initial;
|
|
656
|
+
--espd-radius-pill: initial;
|
|
657
|
+
--espd-radius-item: initial;
|
|
658
|
+
}
|
|
659
|
+
|
|
660
|
+
.dark,
|
|
661
|
+
[data-theme="dark"] {
|
|
662
|
+
/* A dark surface is near black, so shadows alone cannot sink anything into
|
|
663
|
+
it: the hollow is drawn by its light edges — a faint light rim and a lip
|
|
664
|
+
below — with a crisp dark line under the top edge and a deeper shadow.
|
|
665
|
+
The rim is listed FIRST, so it is painted over that dark line: under it,
|
|
666
|
+
the top edge vanished into the bar while the sides kept theirs. The extra
|
|
667
|
+
top line lifts it back to the sides' strength over the black beneath. */
|
|
668
|
+
--espd-shadow-recessed:
|
|
669
|
+
inset 0 1px 0 rgb(255 255 255 / 0.04),
|
|
670
|
+
inset 0 0 0 1px rgb(255 255 255 / 0.065),
|
|
671
|
+
inset 0 1.5px 0 rgb(0 0 0 / 0.9),
|
|
672
|
+
inset 0 2px 6px rgb(0 0 0 / 0.6),
|
|
673
|
+
0 0.5px 0 rgb(255 255 255 / 0.06);
|
|
674
|
+
--espd-floating-window-offset-left: 0px;
|
|
675
|
+
--espd-floating-window-offset-right: 0px;
|
|
676
|
+
--espd-floating-window-offset-top: var(--espd-header-height);
|
|
677
|
+
--espd-floating-window-offset-bottom: var(--espd-footer-height);
|
|
678
|
+
}
|
|
679
|
+
|
|
680
|
+
/* Component default, not a reset: library components draw borders with
|
|
681
|
+
`border` / `border-b` and rely on them taking the theme's border colour.
|
|
682
|
+
Must follow Tailwind's Preflight (which sets `border-color: currentColor`),
|
|
683
|
+
which it does when this file is imported after `tailwindcss`. */
|
|
684
|
+
@layer base {
|
|
685
|
+
* {
|
|
686
|
+
border-color: var(--color-border);
|
|
687
|
+
}
|
|
688
|
+
}
|
|
689
|
+
|
|
690
|
+
/* Library utility used by its components (PageContainer's skeleton). */
|
|
691
|
+
@layer utilities {
|
|
692
|
+
.hstack {
|
|
693
|
+
display: flex;
|
|
694
|
+
flex-direction: row;
|
|
695
|
+
}
|
|
696
|
+
}
|