@ds-mo/ui 2.11.2 → 2.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/README.md +13 -13
- package/dist/.build-stamp +1 -1
- package/dist/components/ds-app-shell.js +1 -1
- package/dist/components/ds-banner.js +1 -1
- package/dist/components/ds-banner.js.map +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-accordion.d.ts → ds-button-unfilled.d.ts} +4 -4
- package/dist/components/ds-button-unfilled.js +2 -0
- package/dist/components/ds-card-data-viz.js +1 -1
- package/dist/components/ds-card-data-viz.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-chart-bar.js +1 -1
- package/dist/components/ds-chart-bar.js.map +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-chart-line.js +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-divider.js +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-field.js.map +1 -1
- package/dist/components/ds-header.js +1 -1
- package/dist/components/ds-header.js.map +1 -1
- package/dist/components/ds-icon.js +1 -1
- package/dist/components/ds-input.js +1 -1
- package/dist/components/ds-input.js.map +1 -1
- package/dist/components/ds-loader.js +1 -1
- package/dist/components/ds-loader.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-scrollbar.js +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-skeleton.js +1 -1
- package/dist/components/ds-skeleton.js.map +1 -1
- package/dist/components/ds-slider.js +1 -1
- package/dist/components/ds-slider.js.map +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-tag.js.map +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-data-viz.js.map +1 -1
- package/dist/components/ds-tooltip.js +1 -1
- package/dist/components/ds-tooltip.js.map +1 -1
- package/dist/components/p-B9dHCgY-.js +2 -0
- package/dist/components/p-B9dHCgY-.js.map +1 -0
- package/dist/components/p-BPK76IsW.js +2 -0
- package/dist/components/p-BPK76IsW.js.map +1 -0
- package/dist/components/p-BQq26pt9.js.map +1 -1
- package/dist/components/p-BTC9Njj6.js +2 -0
- package/dist/components/p-BTC9Njj6.js.map +1 -0
- package/dist/components/p-BZIOTcnM.js +2 -0
- package/dist/components/p-BZIOTcnM.js.map +1 -0
- package/dist/components/{p-DdFUTZ3y.js → p-C3ORQUOp.js} +2 -2
- package/dist/components/{p-8Nt92j1-.js → p-CyFVn2Sc.js} +2 -2
- package/dist/components/p-DKdI8T8v.js +2 -0
- package/dist/components/p-DKdI8T8v.js.map +1 -0
- package/dist/components/{p-DOU4cbpc.js → p-DRqxVEye.js} +2 -2
- package/dist/components/p-DkcH8mRl.js +2 -0
- package/dist/components/p-DkcH8mRl.js.map +1 -0
- package/dist/components/p-DusYu-if.js +2 -0
- package/dist/components/p-DusYu-if.js.map +1 -0
- package/dist/components/p-EK1hOP19.js.map +1 -1
- package/dist/components/p-UbKTMQjv.js +2 -0
- package/dist/components/p-UbKTMQjv.js.map +1 -0
- package/dist/lib/nav/index.js +3 -0
- package/dist/lib/nav/index.js.map +2 -2
- package/dist/lib/utils/index.js +6 -0
- package/dist/lib/utils/index.js.map +2 -2
- package/dist/lib/utils/token-defaults.d.ts +3 -0
- package/dist/types/components/ButtonFilled/ButtonFilled.d.ts +17 -3
- package/dist/types/components/ButtonFilled/index.d.ts +1 -1
- package/dist/types/components/ButtonUnfilled/ButtonUnfilled.d.ts +66 -0
- package/dist/types/components/ButtonUnfilled/index.d.ts +2 -0
- package/dist/types/components/CardDataViz/CardDataViz.d.ts +1 -1
- package/dist/types/components/CardSetting/CardSetting.d.ts +1 -1
- package/dist/types/components/ChartDonut/ChartDonut.d.ts +7 -0
- package/dist/types/components/Checkbox/Checkbox.d.ts +1 -1
- package/dist/types/components/Chip/Chip.d.ts +18 -14
- package/dist/types/components/Chip/index.d.ts +1 -1
- package/dist/types/components/Input/Input.d.ts +1 -1
- package/dist/types/components/Pagination/Pagination.d.ts +1 -1
- package/dist/types/components/PanelNav/PanelNav.d.ts +2 -0
- package/dist/types/components/PanelTools/panel-tools-types.d.ts +1 -1
- package/dist/types/components/RadioGroup/RadioGroup.d.ts +2 -2
- package/dist/types/components/Select/Select.d.ts +2 -2
- package/dist/types/components/ShellGradientSwatch/ShellGradientSwatch.d.ts +1 -1
- package/dist/types/components/Slider/Slider.d.ts +1 -1
- package/dist/types/components/TabGroup/TabGroup.d.ts +1 -1
- package/dist/types/components/TabGroup/tab-item-utils.d.ts +2 -1
- package/dist/types/components/TabGroupNav/TabGroupNav.d.ts +1 -1
- package/dist/types/components/Tag/Tag.d.ts +0 -2
- package/dist/types/components/Tag/index.d.ts +1 -1
- package/dist/types/components/Toggle/Toggle.d.ts +1 -1
- package/dist/types/components/Tooltip/Tooltip.d.ts +25 -6
- package/dist/types/components/TooltipDataViz/TooltipDataViz.d.ts +18 -0
- package/dist/types/components.d.ts +277 -476
- package/dist/types/utils/token-defaults.d.ts +3 -0
- package/package.json +6 -3
- package/src/angular/index.ts +1 -6
- package/src/angular/proxies.ts +33 -170
- package/src/react/components.ts +1 -6
- package/src/react/ds-button-unfilled.ts +33 -0
- package/src/react/ds-chip.ts +2 -10
- package/src/wc/components/BarNav/BarNav.tsx +3 -2
- package/src/wc/components/BarNav/bar-nav-tabs-menu-utils.ts +1 -1
- package/src/wc/components/ButtonFilled/ButtonFilled.tsx +90 -11
- package/src/wc/components/ButtonFilled/index.ts +6 -1
- package/src/wc/components/ButtonUnfilled/ButtonUnfilled.tsx +223 -0
- package/src/wc/components/ButtonUnfilled/index.ts +6 -0
- package/src/wc/components/CardDataViz/CardDataViz.tsx +1 -2
- package/src/wc/components/CardSetting/CardSetting.tsx +4 -6
- package/src/wc/components/ChartDonut/ChartDonut.tsx +50 -3
- package/src/wc/components/ChartLegend/ChartLegend.tsx +3 -0
- package/src/wc/components/Checkbox/Checkbox.tsx +5 -5
- package/src/wc/components/Chip/Chip.tsx +50 -67
- package/src/wc/components/Chip/index.ts +1 -1
- package/src/wc/components/Input/Input.tsx +4 -4
- package/src/wc/components/Menu/Menu.tsx +7 -4
- package/src/wc/components/Pagination/Pagination.tsx +6 -6
- package/src/wc/components/PanelNav/PanelNav.tsx +77 -48
- package/src/wc/components/PanelTools/PanelTools.tsx +19 -16
- package/src/wc/components/PanelTools/panel-tools-types.ts +1 -1
- package/src/wc/components/PanelTools/panel-tools-utils.ts +1 -1
- package/src/wc/components/RadioGroup/RadioGroup.tsx +7 -7
- package/src/wc/components/Select/Select.tsx +5 -5
- package/src/wc/components/ShellGradientSwatch/ShellGradientSwatch.tsx +4 -3
- package/src/wc/components/Slider/Slider.tsx +7 -3
- package/src/wc/components/TabGroup/TabGroup.tsx +13 -7
- package/src/wc/components/TabGroup/tab-item-utils.ts +2 -1
- package/src/wc/components/TabGroupNav/TabGroupNav.tsx +14 -13
- package/src/wc/components/Tag/Tag.tsx +25 -24
- package/src/wc/components/Tag/index.ts +1 -1
- package/src/wc/components/Toggle/Toggle.tsx +6 -6
- package/src/wc/components/Tooltip/Tooltip.tsx +166 -64
- package/src/wc/components/TooltipDataViz/TooltipDataViz.tsx +57 -2
- package/src/wc/components.d.ts +277 -476
- package/src/wc/utils/control-density.css +42 -0
- package/src/wc/utils/control-inactive.css +20 -0
- package/src/wc/utils/interaction-fill.css +162 -0
- package/src/wc/utils/scroll-edge-fade.css +5 -0
- package/src/wc/utils/token-defaults.ts +6 -0
- package/dist/components/ds-accordion.js +0 -2
- package/dist/components/ds-accordion.js.map +0 -1
- package/dist/components/ds-breadcrumb.d.ts +0 -11
- package/dist/components/ds-breadcrumb.js +0 -2
- package/dist/components/ds-breadcrumb.js.map +0 -1
- package/dist/components/ds-button-unfilled-icon.d.ts +0 -11
- package/dist/components/ds-button-unfilled-icon.js +0 -2
- package/dist/components/ds-fade.d.ts +0 -11
- package/dist/components/ds-fade.js +0 -2
- package/dist/components/ds-fade.js.map +0 -1
- package/dist/components/ds-surface.d.ts +0 -11
- package/dist/components/ds-surface.js +0 -2
- package/dist/components/ds-surface.js.map +0 -1
- package/dist/components/ds-toast-provider.d.ts +0 -11
- package/dist/components/ds-toast-provider.js +0 -2
- package/dist/components/ds-toast-provider.js.map +0 -1
- package/dist/components/p-BMQbEIrQ.js +0 -2
- package/dist/components/p-BMQbEIrQ.js.map +0 -1
- package/dist/components/p-BSFgy5r6.js +0 -2
- package/dist/components/p-BSFgy5r6.js.map +0 -1
- package/dist/components/p-CBUIn8dk.js +0 -2
- package/dist/components/p-CBUIn8dk.js.map +0 -1
- package/dist/components/p-ChVwCVHy.js +0 -2
- package/dist/components/p-ChVwCVHy.js.map +0 -1
- package/dist/components/p-CpNIQXz6.js +0 -2
- package/dist/components/p-CpNIQXz6.js.map +0 -1
- package/dist/components/p-CvgHQfvT.js +0 -2
- package/dist/components/p-CvgHQfvT.js.map +0 -1
- package/dist/components/p-bDf6yBQd.js +0 -2
- package/dist/components/p-bDf6yBQd.js.map +0 -1
- package/dist/types/components/Accordion/Accordion.d.ts +0 -28
- package/dist/types/components/Breadcrumb/Breadcrumb.d.ts +0 -16
- package/dist/types/components/ButtonUnfilledIcon/ButtonUnfilledIcon.d.ts +0 -45
- package/dist/types/components/ButtonUnfilledIcon/index.d.ts +0 -2
- package/dist/types/components/Fade/Fade.d.ts +0 -22
- package/dist/types/components/Fade/index.d.ts +0 -2
- package/dist/types/components/Surface/Surface.d.ts +0 -22
- package/dist/types/components/Toast/Toast.d.ts +0 -16
- package/dist/types/components/Toast/toast-service.d.ts +0 -24
- package/src/react/ds-accordion.ts +0 -27
- package/src/react/ds-breadcrumb.ts +0 -27
- package/src/react/ds-button-unfilled-icon.ts +0 -33
- package/src/react/ds-fade.ts +0 -26
- package/src/react/ds-surface.ts +0 -26
- package/src/react/ds-toast-provider.ts +0 -26
- package/src/wc/components/Accordion/Accordion.tsx +0 -144
- package/src/wc/components/Breadcrumb/Breadcrumb.tsx +0 -61
- package/src/wc/components/ButtonUnfilledIcon/ButtonUnfilledIcon.tsx +0 -129
- package/src/wc/components/ButtonUnfilledIcon/index.ts +0 -1
- package/src/wc/components/Fade/Fade.tsx +0 -58
- package/src/wc/components/Fade/index.ts +0 -1
- package/src/wc/components/Surface/Surface.tsx +0 -81
- package/src/wc/components/Toast/Toast.tsx +0 -179
- package/src/wc/components/Toast/toast-service.ts +0 -67
- /package/dist/components/{ds-button-unfilled-icon.js.map → ds-button-unfilled.js.map} +0 -0
- /package/dist/components/{p-DdFUTZ3y.js.map → p-C3ORQUOp.js.map} +0 -0
- /package/dist/components/{p-8Nt92j1-.js.map → p-CyFVn2Sc.js.map} +0 -0
- /package/dist/components/{p-DOU4cbpc.js.map → p-DRqxVEye.js.map} +0 -0
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Component, Prop, State, Element, Watch, h, Host } from '@stencil/core';
|
|
2
|
+
import { resolveCssTimeMs, TOKEN_DEFAULTS } from '../../utils';
|
|
2
3
|
|
|
3
4
|
const CURSOR_OFFSET_PX = 12;
|
|
4
5
|
const VIEWPORT_PAD_PX = 8;
|
|
@@ -16,6 +17,9 @@ export type TooltipDataVizAlign = 'top' | 'bottom';
|
|
|
16
17
|
* with `x`/`y` as pixel coordinates within that wrapper. Defaults to sitting below-right
|
|
17
18
|
* of the anchor (matching cursor-following tooltips), flipping to whichever side/edge
|
|
18
19
|
* keeps it on-screen.
|
|
20
|
+
*
|
|
21
|
+
* Mount (or remount) when a hover session starts so `delay` applies once per hover;
|
|
22
|
+
* keep the instance mounted while the cursor moves so tracking stays instant.
|
|
19
23
|
*/
|
|
20
24
|
@Component({
|
|
21
25
|
tag: 'ds-tooltip-data-viz',
|
|
@@ -31,19 +35,67 @@ export class TooltipDataViz {
|
|
|
31
35
|
@Prop() x: number = 0;
|
|
32
36
|
@Prop() y: number = 0;
|
|
33
37
|
|
|
38
|
+
/**
|
|
39
|
+
* Show delay after mount before the callout appears.
|
|
40
|
+
* Default: `--effect-animation-delay-instant` (0ms). Accepts a number (ms)
|
|
41
|
+
* or a TokoMo time token / `var(--effect-animation-delay-*)`. Charts need
|
|
42
|
+
* immediate feedback while scrubbing; prefer the default. Mount once per
|
|
43
|
+
* hover session so any non-zero delay runs once, then track `x`/`y` instantly.
|
|
44
|
+
*/
|
|
45
|
+
@Prop() delay: number | string = TOKEN_DEFAULTS.animationDelayInstant;
|
|
46
|
+
|
|
34
47
|
@State() private side: TooltipDataVizSide = 'right';
|
|
35
48
|
@State() private align: TooltipDataVizAlign = 'bottom';
|
|
49
|
+
@State() private visible: boolean = false;
|
|
50
|
+
|
|
51
|
+
private delayTimer: ReturnType<typeof setTimeout> | null = null;
|
|
36
52
|
|
|
37
53
|
componentDidLoad() {
|
|
54
|
+
this.scheduleShow();
|
|
38
55
|
this.calculatePlacement();
|
|
39
56
|
}
|
|
40
57
|
|
|
58
|
+
disconnectedCallback() {
|
|
59
|
+
this.clearDelayTimer();
|
|
60
|
+
}
|
|
61
|
+
|
|
41
62
|
@Watch('x')
|
|
42
63
|
@Watch('y')
|
|
43
64
|
onAnchorChange() {
|
|
44
65
|
requestAnimationFrame(() => this.calculatePlacement());
|
|
45
66
|
}
|
|
46
67
|
|
|
68
|
+
@Watch('delay')
|
|
69
|
+
onDelayChange() {
|
|
70
|
+
if (!this.visible) this.scheduleShow();
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
private get showDelayMs(): number {
|
|
74
|
+
return resolveCssTimeMs(this.delay, TOKEN_DEFAULTS.animationDelayInstant);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
private clearDelayTimer() {
|
|
78
|
+
if (this.delayTimer) {
|
|
79
|
+
clearTimeout(this.delayTimer);
|
|
80
|
+
this.delayTimer = null;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
private scheduleShow() {
|
|
85
|
+
this.clearDelayTimer();
|
|
86
|
+
this.visible = false;
|
|
87
|
+
const ms = this.showDelayMs;
|
|
88
|
+
if (ms <= 0) {
|
|
89
|
+
this.visible = true;
|
|
90
|
+
return;
|
|
91
|
+
}
|
|
92
|
+
this.delayTimer = setTimeout(() => {
|
|
93
|
+
this.delayTimer = null;
|
|
94
|
+
this.visible = true;
|
|
95
|
+
requestAnimationFrame(() => this.calculatePlacement());
|
|
96
|
+
}, ms);
|
|
97
|
+
}
|
|
98
|
+
|
|
47
99
|
private calculatePlacement() {
|
|
48
100
|
const rect = this.el.getBoundingClientRect();
|
|
49
101
|
if (!rect.width || !rect.height) return;
|
|
@@ -61,10 +113,13 @@ export class TooltipDataViz {
|
|
|
61
113
|
|
|
62
114
|
return (
|
|
63
115
|
<Host
|
|
64
|
-
class=
|
|
116
|
+
class={{
|
|
117
|
+
'tooltip-data-viz': true,
|
|
118
|
+
'tooltip-data-viz--visible': this.visible,
|
|
119
|
+
}}
|
|
65
120
|
style={{ left: `${this.x}px`, top: `${this.y}px`, transform: `translate(${translateX}, ${translateY})` }}
|
|
66
121
|
>
|
|
67
|
-
<div class="tooltip-data-viz__item">
|
|
122
|
+
<div class="tooltip-data-viz__item ds-control--md">
|
|
68
123
|
<span class="tooltip-data-viz__label">
|
|
69
124
|
<ds-text as="span" variant="text-body-medium" color="var(--color-foreground-on-translucent-background-secondary)">
|
|
70
125
|
{this.label}
|