@ds-mo/ui 3.0.0 → 3.1.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/dist/.build-stamp +1 -1
- package/dist/angular/angular-component-lib/utils.d.ts +9 -0
- package/dist/angular/angular-component-lib/utils.js +58 -0
- package/dist/angular/boolean-value-accessor.d.ts +9 -0
- package/dist/angular/boolean-value-accessor.js +37 -0
- package/dist/angular/ds-app-shell.d.ts +12 -0
- package/dist/angular/ds-app-shell.js +38 -0
- package/dist/angular/ds-badge.d.ts +12 -0
- package/dist/angular/ds-badge.js +38 -0
- package/dist/angular/ds-banner.d.ts +15 -0
- package/dist/angular/ds-banner.js +42 -0
- package/dist/angular/ds-bar-nav.d.ts +18 -0
- package/dist/angular/ds-bar-nav.js +42 -0
- package/dist/angular/ds-button-filled.d.ts +15 -0
- package/dist/angular/ds-button-filled.js +43 -0
- package/dist/angular/ds-button-unfilled.d.ts +17 -0
- package/dist/angular/ds-button-unfilled.js +46 -0
- package/dist/angular/ds-card-data-viz-donut.d.ts +18 -0
- package/dist/angular/ds-card-data-viz-donut.js +42 -0
- package/dist/angular/ds-card-setting.d.ts +18 -0
- package/dist/angular/ds-card-setting.js +42 -0
- package/dist/angular/ds-card.d.ts +12 -0
- package/dist/angular/ds-card.js +38 -0
- package/dist/angular/ds-chart-bar.d.ts +12 -0
- package/dist/angular/ds-chart-bar.js +38 -0
- package/dist/angular/ds-chart-donut.d.ts +19 -0
- package/dist/angular/ds-chart-donut.js +42 -0
- package/dist/angular/ds-chart-legend.d.ts +30 -0
- package/dist/angular/ds-chart-legend.js +45 -0
- package/dist/angular/ds-chart-line.d.ts +12 -0
- package/dist/angular/ds-chart-line.js +38 -0
- package/dist/angular/ds-checkbox.d.ts +15 -0
- package/dist/angular/ds-checkbox.js +42 -0
- package/dist/angular/ds-chip.d.ts +18 -0
- package/dist/angular/ds-chip.js +42 -0
- package/dist/angular/ds-divider.d.ts +12 -0
- package/dist/angular/ds-divider.js +38 -0
- package/dist/angular/ds-empty-state.d.ts +12 -0
- package/dist/angular/ds-empty-state.js +38 -0
- package/dist/angular/ds-field.d.ts +12 -0
- package/dist/angular/ds-field.js +38 -0
- package/dist/angular/ds-icon.d.ts +12 -0
- package/dist/angular/ds-icon.js +38 -0
- package/dist/angular/ds-input.d.ts +17 -0
- package/dist/angular/ds-input.js +46 -0
- package/dist/angular/ds-loader.d.ts +12 -0
- package/dist/angular/ds-loader.js +38 -0
- package/dist/angular/ds-menu.d.ts +24 -0
- package/dist/angular/ds-menu.js +48 -0
- package/dist/angular/ds-modal.d.ts +15 -0
- package/dist/angular/ds-modal.js +42 -0
- package/dist/angular/ds-pagination.d.ts +15 -0
- package/dist/angular/ds-pagination.js +42 -0
- package/dist/angular/ds-panel-nav.d.ts +42 -0
- package/dist/angular/ds-panel-nav.js +58 -0
- package/dist/angular/ds-panel-tools.d.ts +33 -0
- package/dist/angular/ds-panel-tools.js +49 -0
- package/dist/angular/ds-radio-group.d.ts +15 -0
- package/dist/angular/ds-radio-group.js +42 -0
- package/dist/angular/ds-select.d.ts +18 -0
- package/dist/angular/ds-select.js +42 -0
- package/dist/angular/ds-shell-gradient-picker.d.ts +16 -0
- package/dist/angular/ds-shell-gradient-picker.js +42 -0
- package/dist/angular/ds-shell-gradient-swatch.d.ts +16 -0
- package/dist/angular/ds-shell-gradient-swatch.js +42 -0
- package/dist/angular/ds-skeleton.d.ts +12 -0
- package/dist/angular/ds-skeleton.js +38 -0
- package/dist/angular/ds-slider.d.ts +15 -0
- package/dist/angular/ds-slider.js +42 -0
- package/dist/angular/ds-tab-group-nav.d.ts +20 -0
- package/dist/angular/ds-tab-group-nav.js +46 -0
- package/dist/angular/ds-tab-group.d.ts +15 -0
- package/dist/angular/ds-tab-group.js +42 -0
- package/dist/angular/ds-table.d.ts +33 -0
- package/dist/angular/ds-table.js +48 -0
- package/dist/angular/ds-tag.d.ts +12 -0
- package/dist/angular/ds-tag.js +38 -0
- package/dist/angular/ds-text.d.ts +12 -0
- package/dist/angular/ds-text.js +38 -0
- package/dist/angular/ds-toggle.d.ts +15 -0
- package/dist/angular/ds-toggle.js +42 -0
- package/dist/angular/ds-tooltip-data-viz.d.ts +12 -0
- package/dist/angular/ds-tooltip-data-viz.js +38 -0
- package/dist/angular/ds-tooltip.d.ts +12 -0
- package/dist/angular/ds-tooltip.js +38 -0
- package/dist/angular/index.d.ts +2 -0
- package/dist/angular/index.js +43 -0
- package/dist/angular/proxies.d.ts +44 -0
- package/dist/angular/proxies.js +45 -0
- package/dist/angular/radio-value-accessor.d.ts +8 -0
- package/dist/angular/radio-value-accessor.js +34 -0
- package/dist/angular/select-value-accessor.d.ts +8 -0
- package/dist/angular/select-value-accessor.js +34 -0
- package/dist/angular/text-value-accessor.d.ts +8 -0
- package/dist/angular/text-value-accessor.js +34 -0
- package/dist/angular/value-accessor.d.ts +18 -0
- package/dist/angular/value-accessor.js +39 -0
- package/dist/components/ds-badge.js +1 -1
- package/dist/components/ds-banner.js +1 -1
- package/dist/components/ds-bar-nav.js +1 -1
- package/dist/components/ds-bar-nav.js.map +1 -1
- package/dist/components/ds-button-filled.js +1 -1
- package/dist/components/ds-button-unfilled.js +1 -1
- package/dist/components/ds-card-data-viz-donut.js +1 -1
- package/dist/components/ds-card-data-viz-donut.js.map +1 -1
- package/dist/components/ds-card-setting.js +1 -1
- package/dist/components/ds-card-setting.js.map +1 -1
- package/dist/components/ds-card.js +1 -1
- package/dist/components/ds-chart-donut.js +1 -1
- package/dist/components/ds-chart-donut.js.map +1 -1
- package/dist/components/ds-chart-legend.js +1 -1
- package/dist/components/ds-chart-legend.js.map +1 -1
- package/dist/components/ds-checkbox.js +1 -1
- package/dist/components/ds-checkbox.js.map +1 -1
- package/dist/components/ds-chip.js +1 -1
- package/dist/components/ds-chip.js.map +1 -1
- package/dist/components/ds-empty-state.js +1 -1
- package/dist/components/ds-empty-state.js.map +1 -1
- package/dist/components/ds-field.js +1 -1
- package/dist/components/ds-input.js +1 -1
- package/dist/components/ds-input.js.map +1 -1
- package/dist/components/ds-menu.js +1 -1
- package/dist/components/ds-modal.js +1 -1
- package/dist/components/ds-pagination.js +1 -1
- package/dist/components/ds-pagination.js.map +1 -1
- package/dist/components/ds-panel-nav.js +1 -1
- package/dist/components/ds-panel-nav.js.map +1 -1
- package/dist/components/ds-panel-tools.js +1 -1
- package/dist/components/ds-panel-tools.js.map +1 -1
- package/dist/components/ds-radio-group.js +1 -1
- package/dist/components/ds-radio-group.js.map +1 -1
- package/dist/components/ds-select.js +1 -1
- package/dist/components/ds-select.js.map +1 -1
- package/dist/components/ds-shell-gradient-picker.js +1 -1
- package/dist/components/ds-shell-gradient-swatch.js +1 -1
- package/dist/components/ds-slider.js +1 -1
- package/dist/components/ds-tab-group-nav.js +1 -1
- package/dist/components/ds-tab-group.js +1 -1
- package/dist/components/ds-tab-group.js.map +1 -1
- package/dist/components/ds-table.js +1 -1
- package/dist/components/ds-table.js.map +1 -1
- package/dist/components/ds-tag.js +1 -1
- package/dist/components/ds-text.js +1 -1
- package/dist/components/ds-toggle.js +1 -1
- package/dist/components/ds-toggle.js.map +1 -1
- package/dist/components/ds-tooltip-data-viz.js +1 -1
- package/dist/components/ds-tooltip.js +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/index.js.map +1 -1
- package/dist/components/p-BBpASejH.js +2 -0
- package/dist/components/p-BBpASejH.js.map +1 -0
- package/dist/components/{p-V2qW8NL0.js → p-BFiaUYu7.js} +2 -2
- package/dist/components/p-BFiaUYu7.js.map +1 -0
- package/dist/components/p-BOQRM49Q.js +2 -0
- package/dist/components/{p-sBx2MuF2.js.map → p-BOQRM49Q.js.map} +1 -1
- package/dist/components/p-CTK82RIw.js +2 -0
- package/dist/components/p-CTK82RIw.js.map +1 -0
- package/dist/components/{p-BSNlp8Di.js → p-Cp86p-11.js} +2 -2
- package/dist/components/{p-BSNlp8Di.js.map → p-Cp86p-11.js.map} +1 -1
- package/dist/components/{p-DQ3l2TXw.js → p-DEgY_Lnb.js} +2 -2
- package/dist/components/{p-CNgNgezy.js → p-DHjjwgku.js} +2 -2
- package/dist/components/{p-CNgNgezy.js.map → p-DHjjwgku.js.map} +1 -1
- package/dist/components/p-DI8rHm9u.js +2 -0
- package/dist/components/p-DI8rHm9u.js.map +1 -0
- package/dist/components/p-DMD-RO1W.js +2 -0
- package/dist/components/p-DMD-RO1W.js.map +1 -0
- package/dist/components/{p-BVNJnFI9.js → p-DOEMwKBb.js} +2 -2
- package/dist/components/{p-BVNJnFI9.js.map → p-DOEMwKBb.js.map} +1 -1
- package/dist/components/p-DolYlDbY.js +2 -0
- package/dist/components/p-DolYlDbY.js.map +1 -0
- package/dist/framework/angular.d.ts +6 -0
- package/dist/framework/angular.js +6 -0
- package/dist/lib/utils/format-compact-number.d.ts +1 -1
- package/dist/lib/utils/index.js +8 -1
- package/dist/lib/utils/index.js.map +2 -2
- package/dist/react/components.d.ts +44 -0
- package/{src/react/components.ts → dist/react/components.js} +0 -1
- package/dist/react/ds-app-shell.d.ts +9 -0
- package/dist/react/ds-app-shell.js +12 -0
- package/dist/react/ds-badge.d.ts +9 -0
- package/dist/react/ds-badge.js +12 -0
- package/dist/react/ds-banner.d.ts +12 -0
- package/dist/react/ds-banner.js +12 -0
- package/dist/react/ds-bar-nav.d.ts +12 -0
- package/dist/react/ds-bar-nav.js +12 -0
- package/dist/react/ds-button-filled.d.ts +12 -0
- package/dist/react/ds-button-filled.js +12 -0
- package/dist/react/ds-button-unfilled.d.ts +13 -0
- package/dist/react/ds-button-unfilled.js +15 -0
- package/dist/react/ds-card-data-viz-donut.d.ts +12 -0
- package/dist/react/ds-card-data-viz-donut.js +12 -0
- package/dist/react/ds-card-setting.d.ts +12 -0
- package/dist/react/ds-card-setting.js +12 -0
- package/dist/react/ds-card.d.ts +9 -0
- package/dist/react/ds-card.js +12 -0
- package/dist/react/ds-chart-bar.d.ts +9 -0
- package/dist/react/ds-chart-bar.js +12 -0
- package/dist/react/ds-chart-donut.d.ts +12 -0
- package/dist/react/ds-chart-donut.js +12 -0
- package/dist/react/ds-chart-legend.d.ts +16 -0
- package/dist/react/ds-chart-legend.js +15 -0
- package/dist/react/ds-chart-line.d.ts +9 -0
- package/dist/react/ds-chart-line.js +12 -0
- package/dist/react/ds-checkbox.d.ts +12 -0
- package/dist/react/ds-checkbox.js +12 -0
- package/dist/react/ds-chip.d.ts +12 -0
- package/dist/react/ds-chip.js +12 -0
- package/dist/react/ds-divider.d.ts +9 -0
- package/dist/react/ds-divider.js +12 -0
- package/dist/react/ds-empty-state.d.ts +9 -0
- package/dist/react/ds-empty-state.js +12 -0
- package/dist/react/ds-field.d.ts +9 -0
- package/dist/react/ds-field.js +12 -0
- package/dist/react/ds-icon.d.ts +9 -0
- package/dist/react/ds-icon.js +12 -0
- package/dist/react/ds-input.d.ts +13 -0
- package/dist/react/ds-input.js +15 -0
- package/dist/react/ds-loader.d.ts +9 -0
- package/dist/react/ds-loader.js +12 -0
- package/dist/react/ds-menu.d.ts +14 -0
- package/dist/react/ds-menu.js +16 -0
- package/dist/react/ds-modal.d.ts +12 -0
- package/dist/react/ds-modal.js +12 -0
- package/dist/react/ds-pagination.d.ts +12 -0
- package/dist/react/ds-pagination.js +12 -0
- package/dist/react/ds-panel-nav.d.ts +17 -0
- package/dist/react/ds-panel-nav.js +19 -0
- package/dist/react/ds-panel-tools.d.ts +17 -0
- package/dist/react/ds-panel-tools.js +16 -0
- package/dist/react/ds-radio-group.d.ts +12 -0
- package/dist/react/ds-radio-group.js +12 -0
- package/dist/react/ds-select.d.ts +12 -0
- package/dist/react/ds-select.js +12 -0
- package/dist/react/ds-shell-gradient-picker.d.ts +12 -0
- package/dist/react/ds-shell-gradient-picker.js +12 -0
- package/dist/react/ds-shell-gradient-swatch.d.ts +12 -0
- package/dist/react/ds-shell-gradient-swatch.js +12 -0
- package/dist/react/ds-skeleton.d.ts +9 -0
- package/dist/react/ds-skeleton.js +12 -0
- package/dist/react/ds-slider.d.ts +12 -0
- package/dist/react/ds-slider.js +12 -0
- package/dist/react/ds-tab-group-nav.d.ts +13 -0
- package/dist/react/ds-tab-group-nav.js +15 -0
- package/dist/react/ds-tab-group.d.ts +12 -0
- package/dist/react/ds-tab-group.js +12 -0
- package/dist/react/ds-table.d.ts +21 -0
- package/dist/react/ds-table.js +16 -0
- package/dist/react/ds-tag.d.ts +9 -0
- package/dist/react/ds-tag.js +12 -0
- package/dist/react/ds-text.d.ts +9 -0
- package/dist/react/ds-text.js +12 -0
- package/dist/react/ds-toggle.d.ts +12 -0
- package/dist/react/ds-toggle.js +12 -0
- package/dist/react/ds-tooltip-data-viz.d.ts +9 -0
- package/dist/react/ds-tooltip-data-viz.js +12 -0
- package/dist/react/ds-tooltip.d.ts +9 -0
- package/dist/react/ds-tooltip.js +12 -0
- package/dist/types/components/BarNav/BarNav.d.ts +1 -0
- package/dist/types/components/ButtonFilled/ButtonFilled.d.ts +1 -1
- package/dist/types/components/ButtonUnfilled/ButtonUnfilled.d.ts +1 -1
- package/dist/types/components/CardDataVizDonut/CardDataVizDonut.d.ts +1 -0
- package/dist/types/components/CardSetting/CardSetting.d.ts +3 -0
- package/dist/types/components/ChartDonut/ChartDonut.d.ts +2 -0
- package/dist/types/components/ChartLegend/ChartLegend.d.ts +1 -0
- package/dist/types/components/Checkbox/Checkbox.d.ts +12 -0
- package/dist/types/components/Chip/Chip.d.ts +2 -0
- package/dist/types/components/EmptyState/EmptyState.d.ts +2 -0
- package/dist/types/components/Input/Input.d.ts +14 -1
- package/dist/types/components/Menu/Menu.d.ts +2 -0
- package/dist/types/components/Pagination/Pagination.d.ts +3 -0
- package/dist/types/components/PanelNav/PanelNav.d.ts +7 -0
- package/dist/types/components/PanelTools/PanelTools.d.ts +2 -0
- package/dist/types/components/RadioGroup/RadioGroup.d.ts +13 -1
- package/dist/types/components/Select/Select.d.ts +13 -1
- package/dist/types/components/ShellGradientPicker/ShellGradientPicker.d.ts +1 -0
- package/dist/types/components/ShellGradientSwatch/ShellGradientSwatch.d.ts +1 -1
- package/dist/types/components/TabGroup/TabGroup.d.ts +1 -1
- package/dist/types/components/TabGroupNav/TabGroupNav.d.ts +1 -1
- package/dist/types/components/Table/Table.d.ts +6 -0
- package/dist/types/components/Text/Text.d.ts +2 -1
- package/dist/types/components/Toggle/Toggle.d.ts +12 -0
- package/dist/types/components/Tooltip/Tooltip.d.ts +6 -0
- package/dist/types/components.d.ts +527 -32
- package/dist/types/stencil-public-runtime.d.ts +1 -0
- package/dist/types/utils/format-compact-number.d.ts +1 -1
- package/package.json +58 -41
- package/dist/components/p-B_ENgncs.js +0 -2
- package/dist/components/p-B_ENgncs.js.map +0 -1
- package/dist/components/p-CQmul5NK.js +0 -2
- package/dist/components/p-CQmul5NK.js.map +0 -1
- package/dist/components/p-CsaW5gDM.js +0 -2
- package/dist/components/p-CsaW5gDM.js.map +0 -1
- package/dist/components/p-DEpLlQZK.js +0 -2
- package/dist/components/p-DEpLlQZK.js.map +0 -1
- package/dist/components/p-DRqJ3RUb.js +0 -2
- package/dist/components/p-DRqJ3RUb.js.map +0 -1
- package/dist/components/p-V2qW8NL0.js.map +0 -1
- package/dist/components/p-sBx2MuF2.js +0 -2
- package/src/angular/angular-component-lib/utils.ts +0 -65
- package/src/angular/index.ts +0 -45
- package/src/angular/proxies.ts +0 -1156
- package/src/react/ds-app-shell.ts +0 -26
- package/src/react/ds-badge.ts +0 -26
- package/src/react/ds-banner.ts +0 -27
- package/src/react/ds-bar-nav.ts +0 -27
- package/src/react/ds-button-filled.ts +0 -27
- package/src/react/ds-button-unfilled.ts +0 -33
- package/src/react/ds-card-data-viz-donut.ts +0 -27
- package/src/react/ds-card-setting.ts +0 -27
- package/src/react/ds-card.ts +0 -26
- package/src/react/ds-chart-bar.ts +0 -26
- package/src/react/ds-chart-donut.ts +0 -27
- package/src/react/ds-chart-legend.ts +0 -33
- package/src/react/ds-chart-line.ts +0 -26
- package/src/react/ds-checkbox.ts +0 -27
- package/src/react/ds-chip.ts +0 -27
- package/src/react/ds-divider.ts +0 -26
- package/src/react/ds-empty-state.ts +0 -26
- package/src/react/ds-field.ts +0 -26
- package/src/react/ds-icon.ts +0 -26
- package/src/react/ds-input.ts +0 -33
- package/src/react/ds-loader.ts +0 -26
- package/src/react/ds-menu.ts +0 -35
- package/src/react/ds-modal.ts +0 -27
- package/src/react/ds-pagination.ts +0 -27
- package/src/react/ds-panel-nav.ts +0 -41
- package/src/react/ds-panel-tools.ts +0 -35
- package/src/react/ds-radio-group.ts +0 -27
- package/src/react/ds-select.ts +0 -27
- package/src/react/ds-shell-gradient-picker.ts +0 -27
- package/src/react/ds-shell-gradient-swatch.ts +0 -27
- package/src/react/ds-skeleton.ts +0 -26
- package/src/react/ds-slider.ts +0 -27
- package/src/react/ds-tab-group-nav.ts +0 -33
- package/src/react/ds-tab-group.ts +0 -27
- package/src/react/ds-table.ts +0 -35
- package/src/react/ds-tag.ts +0 -26
- package/src/react/ds-text.ts +0 -26
- package/src/react/ds-toggle.ts +0 -27
- package/src/react/ds-tooltip-data-viz.ts +0 -26
- package/src/react/ds-tooltip.ts +0 -26
- package/src/wc/components/AppShell/AppShell.tsx +0 -377
- package/src/wc/components/Badge/Badge.tsx +0 -179
- package/src/wc/components/Badge/index.ts +0 -1
- package/src/wc/components/Banner/Banner.tsx +0 -156
- package/src/wc/components/BarNav/BarNav.tsx +0 -742
- package/src/wc/components/BarNav/bar-nav-dom-utils.ts +0 -23
- package/src/wc/components/BarNav/bar-nav-tabs-menu-utils.ts +0 -114
- package/src/wc/components/BarNav/bar-nav-types.ts +0 -3
- package/src/wc/components/BarNav/bar-nav-utils.ts +0 -67
- package/src/wc/components/BarNav/index.ts +0 -2
- package/src/wc/components/ButtonFilled/ButtonFilled.tsx +0 -171
- package/src/wc/components/ButtonFilled/index.ts +0 -7
- package/src/wc/components/ButtonUnfilled/ButtonUnfilled.tsx +0 -229
- package/src/wc/components/ButtonUnfilled/index.ts +0 -7
- package/src/wc/components/Card/Card.tsx +0 -78
- package/src/wc/components/Card/index.ts +0 -1
- package/src/wc/components/CardDataVizDonut/CardDataVizDonut.tsx +0 -108
- package/src/wc/components/CardDataVizDonut/index.ts +0 -1
- package/src/wc/components/CardSetting/CardSetting.tsx +0 -81
- package/src/wc/components/CardSetting/index.ts +0 -1
- package/src/wc/components/ChartBar/ChartBar.tsx +0 -88
- package/src/wc/components/ChartBar/index.ts +0 -1
- package/src/wc/components/ChartDonut/ChartDonut.tsx +0 -289
- package/src/wc/components/ChartDonut/index.ts +0 -1
- package/src/wc/components/ChartLegend/ChartLegend.tsx +0 -125
- package/src/wc/components/ChartLegend/index.ts +0 -2
- package/src/wc/components/ChartLine/ChartLine.tsx +0 -102
- package/src/wc/components/ChartLine/index.ts +0 -1
- package/src/wc/components/Checkbox/Checkbox.tsx +0 -60
- package/src/wc/components/Checkbox/index.ts +0 -1
- package/src/wc/components/Chip/Chip.tsx +0 -104
- package/src/wc/components/Chip/index.ts +0 -1
- package/src/wc/components/Divider/Divider.tsx +0 -107
- package/src/wc/components/Divider/index.ts +0 -2
- package/src/wc/components/EmptyState/EmptyState.tsx +0 -30
- package/src/wc/components/Field/Field.tsx +0 -30
- package/src/wc/components/Icon/Icon.tsx +0 -172
- package/src/wc/components/Icon/flag-icon-catalog.ts +0 -36
- package/src/wc/components/Icon/icon-cache.ts +0 -47
- package/src/wc/components/Icon/icon-svg.ts +0 -73
- package/src/wc/components/Icon/index.ts +0 -1
- package/src/wc/components/Icon/system-icon-catalog.ts +0 -401
- package/src/wc/components/Input/Input.tsx +0 -107
- package/src/wc/components/Input/index.ts +0 -1
- package/src/wc/components/Loader/Loader.tsx +0 -99
- package/src/wc/components/Loader/index.ts +0 -1
- package/src/wc/components/Menu/Menu.tsx +0 -437
- package/src/wc/components/Menu/menu-placement.ts +0 -26
- package/src/wc/components/Menu/menu-position.ts +0 -78
- package/src/wc/components/Menu/menu-types.ts +0 -39
- package/src/wc/components/Modal/Modal.tsx +0 -213
- package/src/wc/components/Pagination/Pagination.tsx +0 -97
- package/src/wc/components/PanelNav/PanelNav.tsx +0 -707
- package/src/wc/components/PanelNav/index.ts +0 -17
- package/src/wc/components/PanelNav/panel-nav-types.ts +0 -36
- package/src/wc/components/PanelNav/panel-nav-utils.ts +0 -79
- package/src/wc/components/PanelTools/PanelTools.tsx +0 -366
- package/src/wc/components/PanelTools/index.ts +0 -7
- package/src/wc/components/PanelTools/panel-tools-types.ts +0 -44
- package/src/wc/components/PanelTools/panel-tools-utils.ts +0 -50
- package/src/wc/components/RadioGroup/RadioGroup.tsx +0 -130
- package/src/wc/components/RadioGroup/index.ts +0 -1
- package/src/wc/components/Select/Select.tsx +0 -274
- package/src/wc/components/Select/index.ts +0 -1
- package/src/wc/components/ShellGradientPicker/ShellGradientPicker.tsx +0 -55
- package/src/wc/components/ShellGradientSwatch/ShellGradientSwatch.tsx +0 -69
- package/src/wc/components/ShellGradientSwatch/shell-gradient-swatch-types.ts +0 -17
- package/src/wc/components/Skeleton/Skeleton.tsx +0 -64
- package/src/wc/components/Skeleton/index.ts +0 -1
- package/src/wc/components/Slider/Slider.tsx +0 -76
- package/src/wc/components/Slider/index.ts +0 -1
- package/src/wc/components/TabGroup/TabGroup.tsx +0 -204
- package/src/wc/components/TabGroup/tab-item-utils.ts +0 -25
- package/src/wc/components/TabGroupNav/TabGroupNav.tsx +0 -347
- package/src/wc/components/Table/Table.tsx +0 -273
- package/src/wc/components/Tag/Tag.tsx +0 -63
- package/src/wc/components/Tag/index.ts +0 -1
- package/src/wc/components/Text/Text.tsx +0 -98
- package/src/wc/components/Text/index.ts +0 -12
- package/src/wc/components/Text/text-types.ts +0 -23
- package/src/wc/components/Text/text-utils.ts +0 -13
- package/src/wc/components/Toggle/Toggle.tsx +0 -43
- package/src/wc/components/Toggle/index.ts +0 -1
- package/src/wc/components/Tooltip/Tooltip.tsx +0 -372
- package/src/wc/components/TooltipDataViz/TooltipDataViz.tsx +0 -145
- package/src/wc/components/TooltipDataViz/index.ts +0 -1
- package/src/wc/components.d.ts +0 -3569
- package/src/wc/nav/badge-gradient-ring.ts +0 -109
- package/src/wc/nav/chrome-transition.ts +0 -62
- package/src/wc/nav/index.ts +0 -80
- package/src/wc/nav/nav-chrome.ts +0 -47
- package/src/wc/nav/shell-chrome-metrics.ts +0 -49
- package/src/wc/nav/shell-gradient-presets.ts +0 -60
- package/src/wc/nav/shell-gradient.ts +0 -94
- package/src/wc/nav/shell-shortcuts.ts +0 -63
- package/src/wc/nav/shell-view-transition.ts +0 -122
- package/src/wc/utils/chart-colors.ts +0 -7
- package/src/wc/utils/chart-types.ts +0 -25
- package/src/wc/utils/control-density.css +0 -43
- package/src/wc/utils/control-inactive.css +0 -20
- package/src/wc/utils/control-text.ts +0 -11
- package/src/wc/utils/control-width.css +0 -28
- package/src/wc/utils/control-width.ts +0 -10
- package/src/wc/utils/focus-ring.css +0 -33
- package/src/wc/utils/format-compact-number.ts +0 -27
- package/src/wc/utils/index.ts +0 -27
- package/src/wc/utils/interaction-fill.css +0 -162
- package/src/wc/utils/resolve-css-length-px.ts +0 -66
- package/src/wc/utils/resolve-css-time-ms.ts +0 -46
- package/src/wc/utils/scroll-edge-fade.css +0 -80
- package/src/wc/utils/scroll-edge-fade.ts +0 -148
- package/src/wc/utils/token-defaults.ts +0 -81
- package/src/wc/utils/truncate-svg-text.ts +0 -25
- package/src/wc/utils/typography.css +0 -146
- /package/dist/components/{p-DQ3l2TXw.js.map → p-DEgY_Lnb.js.map} +0 -0
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
/** Categorical data-viz palette from `@ds-mo/tokens` (`--color-data-category-1..12`). Cycles if a chart has more series than swatches. */
|
|
2
|
-
const CATEGORY_TOKEN_COUNT = 12;
|
|
3
|
-
|
|
4
|
-
export function categoryColor(index: number): string {
|
|
5
|
-
const slot = (index % CATEGORY_TOKEN_COUNT) + 1;
|
|
6
|
-
return `var(--color-data-category-${slot})`;
|
|
7
|
-
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
/** Shared data shapes for `ds-chart-*` components — kept minimal for the initial scaffold, expect these to grow per component once design is finalized. */
|
|
2
|
-
|
|
3
|
-
export interface ChartDatum {
|
|
4
|
-
label: string;
|
|
5
|
-
value: number;
|
|
6
|
-
/** CSS color override; defaults to the next `--color-data-category-*` token. */
|
|
7
|
-
color?: string;
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
export interface ChartSeries {
|
|
11
|
-
name: string;
|
|
12
|
-
data: number[];
|
|
13
|
-
/** CSS color override; defaults to the next `--color-data-category-*` token. */
|
|
14
|
-
color?: string;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
/** `ds-chart-legend` entry — value is optional so a series name (no single value) can be legended too. */
|
|
18
|
-
export interface ChartLegendItem {
|
|
19
|
-
label: string;
|
|
20
|
-
value?: number;
|
|
21
|
-
/** CSS color override; defaults to the next `--color-data-category-*` token. */
|
|
22
|
-
color?: string;
|
|
23
|
-
/** When set, the row renders as a link (e.g. to a filtered list page for this segment). */
|
|
24
|
-
href?: string;
|
|
25
|
-
}
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Control density recipes — shared metrics for md / sm / xs interactive controls
|
|
3
|
-
* (Tag, PanelNav items, BarNav tabs, Menu items, Chip, etc.).
|
|
4
|
-
*
|
|
5
|
-
* Apply `.ds-control--md|sm|xs` on the control (host or inner row). Then use the
|
|
6
|
-
* `--ds-control-*` vars for height, padding, icon box, label inset, gap, and radius.
|
|
7
|
-
* Text line-height belongs exclusively to the selected `ds-text` variant.
|
|
8
|
-
*
|
|
9
|
-
* Both `:host(.ds-control--*)` and `.ds-control--*` are listed so Stencil scoped
|
|
10
|
-
* components work whether the class is on the host (Tag) or an inner item (PanelNav).
|
|
11
|
-
*
|
|
12
|
-
* @see AGENTS.md — "Control density recipes"
|
|
13
|
-
*/
|
|
14
|
-
|
|
15
|
-
:host(.ds-control--md),
|
|
16
|
-
.ds-control--md {
|
|
17
|
-
--ds-control-height: var(--dimension-size-400);
|
|
18
|
-
--ds-control-icon: var(--dimension-iconography-md);
|
|
19
|
-
--ds-control-padding-inline: var(--dimension-space-075);
|
|
20
|
-
--ds-control-label-inset: var(--dimension-space-025);
|
|
21
|
-
--ds-control-gap: var(--dimension-space-050);
|
|
22
|
-
--ds-control-radius: var(--dimension-radius-025);
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
:host(.ds-control--sm),
|
|
26
|
-
.ds-control--sm {
|
|
27
|
-
--ds-control-height: var(--dimension-size-300);
|
|
28
|
-
--ds-control-icon: var(--dimension-iconography-sm);
|
|
29
|
-
--ds-control-padding-inline: var(--dimension-space-050);
|
|
30
|
-
--ds-control-label-inset: var(--dimension-space-025);
|
|
31
|
-
--ds-control-gap: var(--dimension-space-025);
|
|
32
|
-
--ds-control-radius: var(--dimension-radius-025);
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
:host(.ds-control--xs),
|
|
36
|
-
.ds-control--xs {
|
|
37
|
-
--ds-control-height: var(--dimension-size-200);
|
|
38
|
-
--ds-control-icon: var(--dimension-iconography-xs);
|
|
39
|
-
--ds-control-padding-inline: var(--dimension-space-025);
|
|
40
|
-
--ds-control-label-inset: var(--dimension-space-025);
|
|
41
|
-
--ds-control-gap: var(--dimension-space-025);
|
|
42
|
-
--ds-control-radius: var(--dimension-radius-025);
|
|
43
|
-
}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Control inactive — shared disabled/inactive visual for interactive controls.
|
|
3
|
-
*
|
|
4
|
-
* Apply `.ds-control-inactive` when the control’s `isInactive` prop (or item
|
|
5
|
-
* `isInactive` field) is true. Opacity is 25% so inactive chrome stays
|
|
6
|
-
* recognizable but clearly non-interactive.
|
|
7
|
-
*
|
|
8
|
-
* Both `:host(.ds-control-inactive)` and `.ds-control-inactive` are listed so
|
|
9
|
-
* Stencil scoped components work whether the class is on the host (Chip) or an
|
|
10
|
-
* inner control (button, menu item, tab).
|
|
11
|
-
*
|
|
12
|
-
* @see AGENTS.md — "Control inactive"
|
|
13
|
-
*/
|
|
14
|
-
|
|
15
|
-
:host(.ds-control-inactive),
|
|
16
|
-
.ds-control-inactive {
|
|
17
|
-
opacity: 0.25;
|
|
18
|
-
pointer-events: none;
|
|
19
|
-
cursor: not-allowed;
|
|
20
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { TextVariant } from '../components/Text/text-types';
|
|
2
|
-
|
|
3
|
-
/** Shared public control sizes. Typography is derived; it is not a separate density API. */
|
|
4
|
-
export type ControlSize = 'md' | 'sm' | 'xs';
|
|
5
|
-
|
|
6
|
-
/** Complete text variant selected internally by each control size. */
|
|
7
|
-
export const CONTROL_TEXT_VARIANT: Record<ControlSize, TextVariant> = {
|
|
8
|
-
md: 'text-body-medium',
|
|
9
|
-
sm: 'text-body-small',
|
|
10
|
-
xs: 'text-caption',
|
|
11
|
-
};
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Control width fit — hug content or fill the parent.
|
|
3
|
-
*
|
|
4
|
-
* Apply `.ds-control-width--hug|fill` on the host (and optionally the inner
|
|
5
|
-
* control). Defaults: buttons hug; form fields (Select, Input) fill.
|
|
6
|
-
*
|
|
7
|
-
* Hug uses `fit-content` + `align-self: flex-start` so column flex parents
|
|
8
|
-
* with `align-items: stretch` don't force the control full-width.
|
|
9
|
-
*
|
|
10
|
-
* @see AGENTS.md — control density / shared control recipes
|
|
11
|
-
*/
|
|
12
|
-
|
|
13
|
-
:host(.ds-control-width--hug),
|
|
14
|
-
.ds-control-width--hug {
|
|
15
|
-
width: fit-content;
|
|
16
|
-
max-width: 100%;
|
|
17
|
-
flex: 0 0 auto;
|
|
18
|
-
align-self: flex-start;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
:host(.ds-control-width--fill),
|
|
22
|
-
.ds-control-width--fill {
|
|
23
|
-
width: 100%;
|
|
24
|
-
min-width: 0;
|
|
25
|
-
/* Grow when the parent is a flex row; still 100% in block layouts. */
|
|
26
|
-
flex: 1 1 auto;
|
|
27
|
-
align-self: stretch;
|
|
28
|
-
}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
/** Shared width fit for interactive controls (buttons, select, …). */
|
|
2
|
-
export type ControlWidth = 'hug' | 'fill';
|
|
3
|
-
|
|
4
|
-
/** Host / control class map for `width="hug" | "fill"`. */
|
|
5
|
-
export function controlWidthClass(width: ControlWidth): Record<string, boolean> {
|
|
6
|
-
return {
|
|
7
|
-
'ds-control-width--hug': width === 'hug',
|
|
8
|
-
'ds-control-width--fill': width === 'fill',
|
|
9
|
-
};
|
|
10
|
-
}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
:host {
|
|
2
|
-
--ds-focus-ring-width: var(--dimension-stroke-width-025, 2px);
|
|
3
|
-
--ds-focus-ring-offset: var(--dimension-space-025, 2px);
|
|
4
|
-
--ds-focus-ring-color: var(--color-interaction-focus);
|
|
5
|
-
}
|
|
6
|
-
|
|
7
|
-
.ds-focus-ring:focus-visible {
|
|
8
|
-
outline: var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);
|
|
9
|
-
outline-offset: var(--ds-focus-ring-offset);
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
.ds-focus-ring.ds-focus-ring--visible {
|
|
13
|
-
outline: var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);
|
|
14
|
-
outline-offset: var(--ds-focus-ring-offset);
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
.ds-focus-ring-inset:focus-visible {
|
|
18
|
-
outline: none;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
.ds-focus-ring-inset:focus-visible::after {
|
|
22
|
-
outline: var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);
|
|
23
|
-
outline-offset: calc(-1 * var(--ds-focus-ring-width));
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
.ds-focus-ring-inset.ds-focus-ring--visible {
|
|
27
|
-
outline: none;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
.ds-focus-ring-inset.ds-focus-ring--visible::after {
|
|
31
|
-
outline: var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);
|
|
32
|
-
outline-offset: calc(-1 * var(--ds-focus-ring-width));
|
|
33
|
-
}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
const COMPACT_UNITS: { threshold: number; suffix: string }[] = [
|
|
2
|
-
{ threshold: 1_000_000_000, suffix: 'b' },
|
|
3
|
-
{ threshold: 1_000_000, suffix: 'm' },
|
|
4
|
-
{ threshold: 1_000, suffix: 'k' },
|
|
5
|
-
];
|
|
6
|
-
|
|
7
|
-
/** Compact large numbers for display: 1000 -> "1k", 1500 -> "1.5k", 110100 -> "110.1k", 1000000 -> "1m". */
|
|
8
|
-
export function formatCompactNumber(value: number): string {
|
|
9
|
-
const sign = value < 0 ? '-' : '';
|
|
10
|
-
const abs = Math.abs(value);
|
|
11
|
-
if (abs < 1000) return String(value);
|
|
12
|
-
|
|
13
|
-
for (let i = 0; i < COMPACT_UNITS.length; i++) {
|
|
14
|
-
const unit = COMPACT_UNITS[i];
|
|
15
|
-
if (abs < unit.threshold) continue;
|
|
16
|
-
|
|
17
|
-
let scaled = Math.round((abs / unit.threshold) * 10) / 10;
|
|
18
|
-
// Carry over, e.g. 999.96k rounds to "1000k" — bump to the next unit instead.
|
|
19
|
-
if (scaled >= 1000 && i > 0) {
|
|
20
|
-
const next = COMPACT_UNITS[i - 1];
|
|
21
|
-
scaled = Math.round((abs / next.threshold) * 10) / 10;
|
|
22
|
-
return `${sign}${scaled}${next.suffix}`;
|
|
23
|
-
}
|
|
24
|
-
return `${sign}${scaled}${unit.suffix}`;
|
|
25
|
-
}
|
|
26
|
-
return String(value);
|
|
27
|
-
}
|
package/src/wc/utils/index.ts
DELETED
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
export { registerIcons } from '../components/Icon/icon-cache';
|
|
2
|
-
export { clearCssLengthPxCache, resolveCssLengthPx } from './resolve-css-length-px';
|
|
3
|
-
export { formatCompactNumber } from './format-compact-number';
|
|
4
|
-
export { truncateSvgTextToWidth } from './truncate-svg-text';
|
|
5
|
-
export { parseCssTimeMs, resolveCssTimeMs } from './resolve-css-time-ms';
|
|
6
|
-
export {
|
|
7
|
-
SCROLL_EDGE_FADE_DEFAULT_SIZE,
|
|
8
|
-
SCROLL_EDGE_FADE_SIZE_VAR,
|
|
9
|
-
isScrollAtEdge,
|
|
10
|
-
resolveScrollEdgeFadeSize,
|
|
11
|
-
scrollEdgeFadeClassMap,
|
|
12
|
-
scrollEdgeFadeMaskImage,
|
|
13
|
-
scrollEdgeFadeMaskStyle,
|
|
14
|
-
scrollEdgeFadeSizeStyle,
|
|
15
|
-
} from './scroll-edge-fade';
|
|
16
|
-
export type {
|
|
17
|
-
ScrollEdgeFadeEdge,
|
|
18
|
-
ScrollEdgeFadeOptions,
|
|
19
|
-
ScrollEdgeFadeSize,
|
|
20
|
-
ScrollEdgeFadeSizeToken,
|
|
21
|
-
} from './scroll-edge-fade';
|
|
22
|
-
export { TOKEN_DEFAULTS, TOKEN_CSS_LENGTHS } from './token-defaults';
|
|
23
|
-
export type { TokenDefaultKey } from './token-defaults';
|
|
24
|
-
export { controlWidthClass } from './control-width';
|
|
25
|
-
export type { ControlWidth } from './control-width';
|
|
26
|
-
export { CONTROL_TEXT_VARIANT } from './control-text';
|
|
27
|
-
export type { ControlSize } from './control-text';
|
|
@@ -1,162 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Interaction fill — selected (`::before`) + hover/press (`::after`) overlays.
|
|
3
|
-
*
|
|
4
|
-
* Paint translucent interaction tokens *over* the control’s own background —
|
|
5
|
-
* never by swapping `background-color` on `:hover` / `:active`, and never via
|
|
6
|
-
* `color-mix(bg, fg)` for control chrome.
|
|
7
|
-
*
|
|
8
|
-
* Paint order (bottom → top):
|
|
9
|
-
* 1. Element background (intent / surface)
|
|
10
|
-
* 2. `::before` — selected / active (opt-in via `.ds-interaction-fill--selected`)
|
|
11
|
-
* 3. Label / icon / badge content (`.ds-interaction-fill__content` or z-index: 2)
|
|
12
|
-
* 4. `::after` — hover / press wash + optional inset border + inset focus ring
|
|
13
|
-
*
|
|
14
|
-
* Apply `.ds-interaction-fill` on the interactive element (host or inner row).
|
|
15
|
-
* Omit `.ds-interaction-fill--selected` when chrome wants icon-color-only
|
|
16
|
-
* selection (`activeFill={false}` on unfilled icon buttons).
|
|
17
|
-
*
|
|
18
|
-
* Fills use positive z-index so they paint *above* an opaque host background
|
|
19
|
-
* (Chip, ButtonFilled). Content sits under the hover wash so badge dots are
|
|
20
|
-
* covered; raise label/icon with `.ds-interaction-fill__content` (z-index: 2)
|
|
21
|
-
* — never above `::after` (z-index: 3).
|
|
22
|
-
*
|
|
23
|
-
* Inset borders must paint on `::after` (not the element’s own `box-shadow`)
|
|
24
|
-
* so the stroke stays visible above selected / hover washes. Set
|
|
25
|
-
* `--ds-interaction-border-*` or use `.ds-interaction-fill--bordered`.
|
|
26
|
-
* Do not use a layout `border` on interaction targets.
|
|
27
|
-
*
|
|
28
|
-
* If the control uses `all: unset`, re-assert `position: relative; z-index: 0`
|
|
29
|
-
* after the unset so this util’s stacking context still applies.
|
|
30
|
-
*
|
|
31
|
-
* Surface helpers remap tokens + `--ds-focus-ring-color`:
|
|
32
|
-
* `.ds-interaction-fill--on-medium|bold|strong|always-dark|navigation`
|
|
33
|
-
*
|
|
34
|
-
* Override hooks: `--ds-interaction-hover`, `--ds-interaction-pressed`,
|
|
35
|
-
* `--ds-interaction-active`, `--ds-interaction-border-color`,
|
|
36
|
-
* `--ds-interaction-border-width`.
|
|
37
|
-
*
|
|
38
|
-
* @see AGENTS.md — "Interaction fill"
|
|
39
|
-
*/
|
|
40
|
-
|
|
41
|
-
:host(.ds-interaction-fill),
|
|
42
|
-
.ds-interaction-fill {
|
|
43
|
-
position: relative;
|
|
44
|
-
z-index: 0;
|
|
45
|
-
--ds-interaction-hover: var(--color-interaction-hover);
|
|
46
|
-
--ds-interaction-pressed: var(--color-interaction-pressed);
|
|
47
|
-
--ds-interaction-active: var(--color-interaction-active);
|
|
48
|
-
/* Inset stroke on ::after — default off (transparent / zero width). */
|
|
49
|
-
--ds-interaction-border-width: 0px;
|
|
50
|
-
--ds-interaction-border-color: transparent;
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
:host(.ds-interaction-fill)::before,
|
|
54
|
-
.ds-interaction-fill::before,
|
|
55
|
-
:host(.ds-interaction-fill)::after,
|
|
56
|
-
.ds-interaction-fill::after {
|
|
57
|
-
content: '';
|
|
58
|
-
position: absolute;
|
|
59
|
-
inset: 0;
|
|
60
|
-
border-radius: inherit;
|
|
61
|
-
background: transparent;
|
|
62
|
-
pointer-events: none;
|
|
63
|
-
transition: none;
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
/* Layer stack (bottom → top): selected → content → hover/press + border (topmost). */
|
|
67
|
-
:host(.ds-interaction-fill)::before,
|
|
68
|
-
.ds-interaction-fill::before {
|
|
69
|
-
z-index: 1;
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
:host(.ds-interaction-fill)::after,
|
|
73
|
-
.ds-interaction-fill::after {
|
|
74
|
-
z-index: 3;
|
|
75
|
-
/* Border above selected (::before) and this pseudo’s own hover wash. */
|
|
76
|
-
box-shadow: inset 0 0 0 var(--ds-interaction-border-width) var(--ds-interaction-border-color);
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
/* Opt-in secondary inset border (override color via `--ds-interaction-border-color`). */
|
|
80
|
-
:host(.ds-interaction-fill--bordered),
|
|
81
|
-
.ds-interaction-fill--bordered {
|
|
82
|
-
--ds-interaction-border-width: var(--dimension-stroke-width-012);
|
|
83
|
-
--ds-interaction-border-color: var(--color-border-secondary);
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
:host(.ds-interaction-fill--selected)::before,
|
|
87
|
-
.ds-interaction-fill--selected::before {
|
|
88
|
-
background: var(--ds-interaction-active);
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
/*
|
|
92
|
-
* Notification-dot halo: when selected fill is on, set `--ds-interaction-dot-ring`
|
|
93
|
-
* to the active wash so rings can match. Prefer also remapping the consumer’s
|
|
94
|
-
* surface ring token (e.g. `--ds-button-unfilled-dot-ring`) or passing
|
|
95
|
-
* `background="var(--ds-interaction-active)"` from the parent when selected —
|
|
96
|
-
* custom-property fallbacks through nested scoped hosts are easy to miss.
|
|
97
|
-
* Omit `--selected` (chrome `activeFill={false}`) to keep the surface ring.
|
|
98
|
-
*/
|
|
99
|
-
:host(.ds-interaction-fill--selected),
|
|
100
|
-
.ds-interaction-fill--selected {
|
|
101
|
-
--ds-interaction-dot-ring: var(--ds-interaction-active);
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
:host(.ds-interaction-fill:hover:not(:disabled))::after,
|
|
105
|
-
.ds-interaction-fill:hover:not(:disabled)::after {
|
|
106
|
-
background: var(--ds-interaction-hover);
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
:host(.ds-interaction-fill:active:not(:disabled))::after,
|
|
110
|
-
.ds-interaction-fill:active:not(:disabled)::after {
|
|
111
|
-
background: var(--ds-interaction-pressed);
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
/* Content under the hover wash (so badge dots are covered by ::after). */
|
|
115
|
-
:host(.ds-interaction-fill) > .ds-interaction-fill__content,
|
|
116
|
-
.ds-interaction-fill > .ds-interaction-fill__content,
|
|
117
|
-
.ds-interaction-fill__content {
|
|
118
|
-
position: relative;
|
|
119
|
-
z-index: 2;
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
/* ── Surface context ─────────────────────────────────────────────────────── */
|
|
123
|
-
|
|
124
|
-
:host(.ds-interaction-fill--on-medium),
|
|
125
|
-
.ds-interaction-fill--on-medium {
|
|
126
|
-
--ds-interaction-hover: var(--color-interaction-on-medium-background-hover);
|
|
127
|
-
--ds-interaction-pressed: var(--color-interaction-on-medium-background-pressed);
|
|
128
|
-
--ds-interaction-active: var(--color-interaction-on-medium-background-active);
|
|
129
|
-
--ds-focus-ring-color: var(--color-interaction-on-medium-background-focus);
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
:host(.ds-interaction-fill--on-bold),
|
|
133
|
-
.ds-interaction-fill--on-bold {
|
|
134
|
-
--ds-interaction-hover: var(--color-interaction-on-bold-background-hover);
|
|
135
|
-
--ds-interaction-pressed: var(--color-interaction-on-bold-background-pressed);
|
|
136
|
-
--ds-interaction-active: var(--color-interaction-on-bold-background-active);
|
|
137
|
-
--ds-focus-ring-color: var(--color-interaction-on-bold-background-focus);
|
|
138
|
-
}
|
|
139
|
-
|
|
140
|
-
:host(.ds-interaction-fill--on-strong),
|
|
141
|
-
.ds-interaction-fill--on-strong {
|
|
142
|
-
--ds-interaction-hover: var(--color-interaction-on-strong-background-hover);
|
|
143
|
-
--ds-interaction-pressed: var(--color-interaction-on-strong-background-pressed);
|
|
144
|
-
--ds-interaction-active: var(--color-interaction-on-strong-background-active);
|
|
145
|
-
--ds-focus-ring-color: var(--color-interaction-on-strong-background-focus);
|
|
146
|
-
}
|
|
147
|
-
|
|
148
|
-
:host(.ds-interaction-fill--on-always-dark),
|
|
149
|
-
.ds-interaction-fill--on-always-dark {
|
|
150
|
-
--ds-interaction-hover: var(--color-always-dark-interaction-hover);
|
|
151
|
-
--ds-interaction-pressed: var(--color-always-dark-interaction-pressed);
|
|
152
|
-
--ds-interaction-active: var(--color-always-dark-interaction-active);
|
|
153
|
-
--ds-focus-ring-color: var(--color-always-dark-interaction-focus);
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
:host(.ds-interaction-fill--on-navigation),
|
|
157
|
-
.ds-interaction-fill--on-navigation {
|
|
158
|
-
--ds-interaction-hover: var(--color-navigation-interaction-hover);
|
|
159
|
-
--ds-interaction-pressed: var(--color-navigation-interaction-pressed);
|
|
160
|
-
--ds-interaction-active: var(--color-navigation-interaction-active);
|
|
161
|
-
--ds-focus-ring-color: var(--color-navigation-interaction-focus);
|
|
162
|
-
}
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
const lengthPxCache = new Map<string, number>();
|
|
2
|
-
|
|
3
|
-
let probeEl: HTMLElement | null = null;
|
|
4
|
-
|
|
5
|
-
function getProbeElement(): HTMLElement | null {
|
|
6
|
-
if (typeof document === 'undefined') return null;
|
|
7
|
-
|
|
8
|
-
if (!probeEl) {
|
|
9
|
-
probeEl = document.createElement('div');
|
|
10
|
-
probeEl.setAttribute('aria-hidden', 'true');
|
|
11
|
-
probeEl.style.cssText =
|
|
12
|
-
'position:absolute;visibility:hidden;pointer-events:none;top:0;left:0;width:0;height:0;overflow:hidden;';
|
|
13
|
-
document.documentElement.appendChild(probeEl);
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
return probeEl;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
/** Clear session cache (tests only). */
|
|
20
|
-
export function clearCssLengthPxCache(): void {
|
|
21
|
-
lengthPxCache.clear();
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
/**
|
|
25
|
-
* Resolve a CSS length to pixels for layout math.
|
|
26
|
-
* Numbers pass through; `var(--dimension-*)`, `calc(...)`, and `16px` resolve via a hidden probe.
|
|
27
|
-
*/
|
|
28
|
-
export function resolveCssLengthPx(
|
|
29
|
-
value: number | string | undefined,
|
|
30
|
-
fallback: number | string,
|
|
31
|
-
): number {
|
|
32
|
-
const resolved = value === undefined || value === null || value === '' ? fallback : value;
|
|
33
|
-
if (typeof resolved === 'number') return resolved;
|
|
34
|
-
|
|
35
|
-
const trimmed = resolved.trim();
|
|
36
|
-
if (!trimmed) return resolveCssLengthPx(fallback, 0);
|
|
37
|
-
|
|
38
|
-
const cached = lengthPxCache.get(trimmed);
|
|
39
|
-
if (cached !== undefined) return cached;
|
|
40
|
-
|
|
41
|
-
if (/^-?\d+(\.\d+)?$/.test(trimmed)) {
|
|
42
|
-
const n = Number(trimmed);
|
|
43
|
-
lengthPxCache.set(trimmed, n);
|
|
44
|
-
return n;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
const pxMatch = trimmed.match(/^(-?\d+(\.\d+)?)px$/);
|
|
48
|
-
if (pxMatch) {
|
|
49
|
-
const px = parseFloat(pxMatch[1]);
|
|
50
|
-
lengthPxCache.set(trimmed, px);
|
|
51
|
-
return px;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
const cssLength = /^--[\w-]+$/.test(trimmed) ? `var(${trimmed})` : trimmed;
|
|
55
|
-
|
|
56
|
-
const probe = getProbeElement();
|
|
57
|
-
if (!probe) {
|
|
58
|
-
return typeof fallback === 'number' ? fallback : 0;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
probe.style.width = cssLength;
|
|
62
|
-
const px = probe.getBoundingClientRect().width;
|
|
63
|
-
probe.style.width = '';
|
|
64
|
-
lengthPxCache.set(trimmed, px);
|
|
65
|
-
return px;
|
|
66
|
-
}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
/** Parse a CSS <time> value (or motion shorthand's first token) to milliseconds. */
|
|
2
|
-
export function parseCssTimeMs(value: string, fallback: number): number {
|
|
3
|
-
const firstToken = value.trim().split(/\s+/)[0] ?? '';
|
|
4
|
-
const num = parseFloat(firstToken);
|
|
5
|
-
if (Number.isNaN(num)) return fallback;
|
|
6
|
-
if (/ms\s*$/.test(firstToken)) return num;
|
|
7
|
-
if (/s\s*$/.test(firstToken)) return num * 1000;
|
|
8
|
-
return num;
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
function extractCssCustomProp(ref: string): string | null {
|
|
12
|
-
const varMatch = ref.match(/^var\(\s*(--[^),]+)/);
|
|
13
|
-
if (varMatch) return varMatch[1].trim();
|
|
14
|
-
if (ref.startsWith('--')) return ref.trim();
|
|
15
|
-
return null;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
function readTokenTimeMs(token: string, fallback: number): number {
|
|
19
|
-
if (typeof document === 'undefined') return fallback;
|
|
20
|
-
|
|
21
|
-
const prop = extractCssCustomProp(token);
|
|
22
|
-
if (!prop) return parseCssTimeMs(token, fallback);
|
|
23
|
-
|
|
24
|
-
const raw = getComputedStyle(document.documentElement).getPropertyValue(prop).trim();
|
|
25
|
-
return parseCssTimeMs(raw, fallback);
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
/**
|
|
29
|
-
* Resolve a duration to milliseconds for JS timers aligned with CSS motion tokens.
|
|
30
|
-
* Accepts numbers (ms), raw times (`200ms`, `0.75s`), or `var(--effect-*)` references.
|
|
31
|
-
*/
|
|
32
|
-
export function resolveCssTimeMs(
|
|
33
|
-
value: number | string | undefined,
|
|
34
|
-
fallbackToken: string,
|
|
35
|
-
): number {
|
|
36
|
-
if (typeof value === 'number') return value;
|
|
37
|
-
|
|
38
|
-
const token = typeof value === 'string' && value.trim() ? value.trim() : fallbackToken;
|
|
39
|
-
const prop = extractCssCustomProp(token);
|
|
40
|
-
|
|
41
|
-
if (prop) {
|
|
42
|
-
return readTokenTimeMs(token, readTokenTimeMs(fallbackToken, 200));
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
return parseCssTimeMs(token, readTokenTimeMs(fallbackToken, 200));
|
|
46
|
-
}
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Scroll-edge alpha fade — the single edge-fade utility for overflow containers.
|
|
3
|
-
* Masks scrolling content to transparent so flat surfaces, shell gradients, and
|
|
4
|
-
* images show through. Pair with `.scroll-edge-fade--at-end` when flush.
|
|
5
|
-
*
|
|
6
|
-
* @see scroll-edge-fade.ts — `scrollEdgeFadeClassMap`, `isScrollAtEdge`, size helpers.
|
|
7
|
-
*/
|
|
8
|
-
|
|
9
|
-
.scroll-edge-fade {
|
|
10
|
-
--ds-scroll-edge-fade-size: var(--dimension-size-600);
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
/* Mask gradients use #000 / transparent as luminance stops — not theme colors. */
|
|
14
|
-
/* stylelint-disable color-no-hex */
|
|
15
|
-
|
|
16
|
-
.scroll-edge-fade--top {
|
|
17
|
-
-webkit-mask-image: linear-gradient(to bottom, #000 0, #000 50%, transparent 100%);
|
|
18
|
-
mask-image: linear-gradient(to bottom, #000 0, #000 50%, transparent 100%);
|
|
19
|
-
-webkit-mask-size: 100% 100%;
|
|
20
|
-
mask-size: 100% 100%;
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
.scroll-edge-fade--bottom {
|
|
24
|
-
-webkit-mask-image: linear-gradient(
|
|
25
|
-
to bottom,
|
|
26
|
-
#000 0,
|
|
27
|
-
#000 calc(100% - var(--ds-scroll-edge-fade-size)),
|
|
28
|
-
transparent 100%
|
|
29
|
-
);
|
|
30
|
-
mask-image: linear-gradient(
|
|
31
|
-
to bottom,
|
|
32
|
-
#000 0,
|
|
33
|
-
#000 calc(100% - var(--ds-scroll-edge-fade-size)),
|
|
34
|
-
transparent 100%
|
|
35
|
-
);
|
|
36
|
-
-webkit-mask-size: 100% 100%;
|
|
37
|
-
mask-size: 100% 100%;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
.scroll-edge-fade--left {
|
|
41
|
-
-webkit-mask-image: linear-gradient(
|
|
42
|
-
to right,
|
|
43
|
-
#000 0,
|
|
44
|
-
#000 calc(100% - var(--ds-scroll-edge-fade-size)),
|
|
45
|
-
transparent 100%
|
|
46
|
-
);
|
|
47
|
-
mask-image: linear-gradient(
|
|
48
|
-
to right,
|
|
49
|
-
#000 0,
|
|
50
|
-
#000 calc(100% - var(--ds-scroll-edge-fade-size)),
|
|
51
|
-
transparent 100%
|
|
52
|
-
);
|
|
53
|
-
-webkit-mask-size: 100% 100%;
|
|
54
|
-
mask-size: 100% 100%;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
.scroll-edge-fade--right {
|
|
58
|
-
-webkit-mask-image: linear-gradient(
|
|
59
|
-
to left,
|
|
60
|
-
#000 0,
|
|
61
|
-
#000 calc(100% - var(--ds-scroll-edge-fade-size)),
|
|
62
|
-
transparent 100%
|
|
63
|
-
);
|
|
64
|
-
mask-image: linear-gradient(
|
|
65
|
-
to left,
|
|
66
|
-
#000 0,
|
|
67
|
-
#000 calc(100% - var(--ds-scroll-edge-fade-size)),
|
|
68
|
-
transparent 100%
|
|
69
|
-
);
|
|
70
|
-
-webkit-mask-size: 100% 100%;
|
|
71
|
-
mask-size: 100% 100%;
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
.scroll-edge-fade--at-end,
|
|
75
|
-
.scroll-edge-fade--hidden {
|
|
76
|
-
-webkit-mask-image: none;
|
|
77
|
-
mask-image: none;
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
/* stylelint-enable color-no-hex */
|