@ds-mo/ui 9.2.1 → 11.0.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 +2 -2
- package/dist/.build-stamp +1 -1
- package/dist/agent-patterns.json +15 -9
- package/dist/agent.json +473 -150
- package/dist/angular/boolean-value-accessor.js +3 -3
- package/dist/angular/ds-agent-activity.js +3 -3
- package/dist/angular/ds-agent-response.js +3 -3
- package/dist/angular/ds-agent-source-list.js +3 -3
- package/dist/angular/ds-agent-tool-call.js +3 -3
- package/dist/angular/ds-app-shell.js +3 -3
- package/dist/angular/ds-attachment-list.js +3 -3
- package/dist/angular/ds-avatar.js +3 -3
- package/dist/angular/ds-badge.js +3 -3
- package/dist/angular/ds-bar-nav.js +3 -3
- package/dist/angular/ds-button-filled.js +3 -3
- package/dist/angular/ds-button-unfilled.js +3 -3
- package/dist/angular/ds-card-data-viz-donut.js +3 -3
- package/dist/angular/ds-card-setting.d.ts +5 -4
- package/dist/angular/ds-card-setting.js +6 -6
- package/dist/angular/ds-card-shell-data-viz.js +3 -3
- package/dist/angular/ds-chart-bar.js +3 -3
- package/dist/angular/ds-chart-donut.js +3 -3
- package/dist/angular/ds-chart-legend.js +3 -3
- package/dist/angular/ds-chart-line.js +3 -3
- package/dist/angular/ds-checkbox.js +3 -3
- package/dist/angular/ds-chip.js +3 -3
- package/dist/angular/ds-code-block.js +3 -3
- package/dist/angular/ds-conversation-list-item.js +3 -3
- package/dist/angular/ds-conversation-list-section.js +3 -3
- package/dist/angular/ds-conversation-list.js +3 -3
- package/dist/angular/ds-divider.js +3 -3
- package/dist/angular/ds-empty-state.js +3 -3
- package/dist/angular/ds-field.js +3 -3
- package/dist/angular/ds-icon.js +3 -3
- package/dist/angular/ds-input.js +3 -3
- package/dist/angular/ds-loader.js +3 -3
- package/dist/angular/ds-markdown.js +3 -3
- package/dist/angular/ds-menu.js +3 -3
- package/dist/angular/ds-message-bubble.js +3 -3
- package/dist/angular/ds-message-composer.js +3 -3
- package/dist/angular/ds-message-scroller.js +3 -3
- package/dist/angular/ds-message.js +3 -3
- package/dist/angular/ds-modal.d.ts +12 -3
- package/dist/angular/ds-modal.js +9 -6
- package/dist/angular/ds-panel-nav.js +3 -3
- package/dist/angular/ds-panel-sub-nav.js +3 -3
- package/dist/angular/ds-panel-tool-header.js +3 -3
- package/dist/angular/ds-panel-tool-search.js +3 -3
- package/dist/angular/ds-panel-tools.js +3 -3
- package/dist/angular/ds-radio.js +3 -3
- package/dist/angular/ds-select-multi.js +3 -3
- package/dist/angular/ds-select.js +3 -3
- package/dist/angular/ds-shell-gradient-picker.js +3 -3
- package/dist/angular/ds-shell-gradient-swatch.js +3 -3
- package/dist/angular/ds-skeleton.js +3 -3
- package/dist/angular/ds-slider.js +3 -3
- package/dist/angular/ds-swatch-picker.js +3 -3
- package/dist/angular/ds-switch.js +3 -3
- package/dist/angular/ds-tab-group.js +3 -3
- package/dist/angular/ds-tag.js +3 -3
- package/dist/angular/ds-text.js +3 -3
- package/dist/angular/ds-toast.d.ts +22 -0
- package/dist/angular/{ds-banner.js → ds-toast.js} +21 -15
- package/dist/angular/ds-tooltip-data-viz.js +3 -3
- package/dist/angular/ds-tooltip.js +3 -3
- package/dist/angular/ds-typing-indicator.d.ts +12 -0
- package/dist/angular/{ds-card.js → ds-typing-indicator.js} +12 -12
- package/dist/angular/index.d.ts +1 -1
- package/dist/angular/index.js +3 -3
- package/dist/angular/proxies.d.ts +2 -2
- package/dist/angular/proxies.js +2 -2
- package/dist/angular/radio-value-accessor.js +3 -3
- package/dist/angular/select-value-accessor.js +3 -3
- package/dist/angular/text-value-accessor.js +3 -3
- package/dist/angular/value-accessor.js +3 -3
- package/dist/components/ds-agent-activity.js +1 -1
- package/dist/components/ds-agent-response.js +1 -1
- package/dist/components/ds-agent-response.js.map +1 -1
- package/dist/components/ds-agent-source-list.js +1 -1
- package/dist/components/ds-agent-tool-call.js +1 -1
- package/dist/components/ds-app-shell.js +1 -1
- package/dist/components/ds-attachment-list.js +1 -1
- package/dist/components/ds-avatar.js +1 -1
- package/dist/components/ds-avatar.js.map +1 -1
- package/dist/components/ds-badge.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-shell-data-viz.js +1 -1
- package/dist/components/ds-chart-bar.js +1 -1
- package/dist/components/ds-chart-donut.js +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-chip.js +1 -1
- package/dist/components/ds-chip.js.map +1 -1
- package/dist/components/ds-code-block.js +1 -1
- package/dist/components/ds-conversation-list-item.js +1 -1
- package/dist/components/ds-conversation-list-item.js.map +1 -1
- package/dist/components/ds-conversation-list-section.js +1 -1
- package/dist/components/ds-conversation-list.js +1 -1
- package/dist/components/ds-divider.js +1 -1
- package/dist/components/ds-empty-state.js +1 -1
- package/dist/components/ds-field.js +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-markdown.js +1 -1
- package/dist/components/ds-menu.js +1 -1
- package/dist/components/ds-message-bubble.js +1 -1
- package/dist/components/ds-message-bubble.js.map +1 -1
- package/dist/components/ds-message-composer.js +1 -1
- package/dist/components/ds-message-composer.js.map +1 -1
- package/dist/components/ds-message-scroller.js +1 -1
- package/dist/components/ds-message-scroller.js.map +1 -1
- package/dist/components/ds-message.js +1 -1
- package/dist/components/ds-modal.js +1 -1
- package/dist/components/ds-modal.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-sub-nav.js +1 -1
- package/dist/components/ds-panel-sub-nav.js.map +1 -1
- package/dist/components/ds-panel-tool-header.js +1 -1
- package/dist/components/ds-panel-tool-search.js +1 -1
- package/dist/components/ds-panel-tool-search.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.js +1 -1
- package/dist/components/ds-radio.js.map +1 -1
- package/dist/components/ds-select-multi.js +1 -1
- package/dist/components/ds-select-multi.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-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-swatch-picker.js +1 -1
- package/dist/components/ds-switch.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-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-card.d.ts → ds-toast.d.ts} +4 -4
- package/dist/components/ds-toast.js +2 -0
- package/dist/components/ds-toast.js.map +1 -0
- 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-banner.d.ts → ds-typing-indicator.d.ts} +4 -4
- package/dist/components/ds-typing-indicator.js +2 -0
- package/dist/components/ds-typing-indicator.js.map +1 -0
- package/dist/components/{p-DnMCRAwx.js → p-0kEg-Z4f.js} +2 -2
- package/dist/components/p-B8C_yfLQ.js +2 -0
- package/dist/components/p-B8C_yfLQ.js.map +1 -0
- package/dist/components/{p-DiooIO2B.js → p-BEWtqFX7.js} +2 -2
- package/dist/components/p-BMwnjAIq.js +2 -0
- package/dist/components/p-BMwnjAIq.js.map +1 -0
- package/dist/components/{p-Ci_nVk5P.js → p-BkwBtZs3.js} +2 -2
- package/dist/components/p-C3nDIMX5.js +2 -0
- package/dist/components/{p-Dj5MejHv.js.map → p-C3nDIMX5.js.map} +1 -1
- package/dist/components/{p-CJlgONwR.js → p-C8e2A66f.js} +2 -2
- package/dist/components/{p-BRfOCc_h.js → p-CLn7QnE0.js} +2 -2
- package/dist/components/{p-kezp2_Xu.js → p-CPPAndX2.js} +2 -2
- package/dist/components/p-CTFBf97-.js +2 -0
- package/dist/components/{p-CblAABEo.js.map → p-CTFBf97-.js.map} +1 -1
- package/dist/components/{p-BSOZXagj.js → p-CZZYGqKz.js} +2 -2
- package/dist/components/p-C_0Q8Cnp.js +2 -0
- package/dist/components/p-C_0Q8Cnp.js.map +1 -0
- package/dist/components/{p-T0Mzhv3-.js → p-CbckeueL.js} +2 -2
- package/dist/components/p-CjP8sYlo.js +2 -0
- package/dist/components/{p-xB0GPG3-.js.map → p-CjP8sYlo.js.map} +1 -1
- package/dist/components/{p-DaQ0ZE_V.js → p-DJ78wdNv.js} +2 -2
- package/dist/components/p-DTqCBjUj.js +2 -0
- package/dist/components/{p-Dst-OliP.js.map → p-DTqCBjUj.js.map} +1 -1
- package/dist/components/{p-CeFBA7Dx.js → p-Dh4q5TSS.js} +2 -2
- package/dist/components/p-DirD-b2y.js +2 -0
- package/dist/components/{p-BHpWYKtP.js.map → p-DirD-b2y.js.map} +1 -1
- package/dist/components/{p-CiwdnKKp.js → p-DrDHC7V6.js} +2 -2
- package/dist/components/p-DuNZGFkV.js +2 -0
- package/dist/components/p-DuNZGFkV.js.map +1 -0
- package/dist/components/{p-Cijzn3YQ.js → p-Hw-HMjCk.js} +2 -2
- package/dist/components/p-M5pt9I13.js +2 -0
- package/dist/components/p-M5pt9I13.js.map +1 -0
- package/dist/components/{p-B1pWGQn1.js → p-bDx_rlLm.js} +2 -2
- package/dist/docs/components.json +1509 -1530
- package/dist/framework/select-multi-value-accessor.js +3 -3
- package/dist/lib/toast/index.d.ts +2 -0
- package/dist/lib/toast/index.js +158 -0
- package/dist/lib/toast/index.js.map +7 -0
- package/dist/lib/toast/toast-manager.d.ts +3 -0
- package/dist/lib/toast/toast-types.d.ts +85 -0
- package/dist/mcp-data/registry/agent-activity.json +1 -1
- package/dist/mcp-data/registry/agent-response.json +6 -6
- package/dist/mcp-data/registry/agent-source-list.json +1 -1
- package/dist/mcp-data/registry/agent-tool-call.json +1 -1
- package/dist/mcp-data/registry/app-shell.json +1 -1
- package/dist/mcp-data/registry/attachment-list.json +1 -1
- package/dist/mcp-data/registry/avatar.json +1 -1
- package/dist/mcp-data/registry/badge.json +1 -1
- package/dist/mcp-data/registry/bar-nav.json +1 -1
- package/dist/mcp-data/registry/button-filled.json +1 -1
- package/dist/mcp-data/registry/button-unfilled.json +1 -1
- package/dist/mcp-data/registry/card-data-viz-donut.json +2 -2
- package/dist/mcp-data/registry/card-setting.json +99 -13
- package/dist/mcp-data/registry/card-shell-data-viz.json +8 -8
- package/dist/mcp-data/registry/chart-bar.json +1 -1
- package/dist/mcp-data/registry/chart-donut.json +1 -1
- package/dist/mcp-data/registry/chart-legend.json +1 -1
- package/dist/mcp-data/registry/chart-line.json +1 -1
- package/dist/mcp-data/registry/checkbox.json +1 -1
- package/dist/mcp-data/registry/chip.json +1 -1
- package/dist/mcp-data/registry/code-block.json +1 -1
- package/dist/mcp-data/registry/conversation-list-item.json +5 -5
- package/dist/mcp-data/registry/conversation-list-section.json +1 -1
- package/dist/mcp-data/registry/conversation-list.json +1 -1
- package/dist/mcp-data/registry/divider.json +5 -5
- package/dist/mcp-data/registry/empty-state.json +1 -1
- package/dist/mcp-data/registry/field.json +1 -1
- package/dist/mcp-data/registry/icon.json +2 -2
- package/dist/mcp-data/registry/input.json +1 -1
- package/dist/mcp-data/registry/loader.json +1 -1
- package/dist/mcp-data/registry/markdown.json +1 -1
- package/dist/mcp-data/registry/menu.json +1 -1
- package/dist/mcp-data/registry/message-bubble.json +21 -16
- package/dist/mcp-data/registry/message-composer.json +6 -4
- package/dist/mcp-data/registry/message-scroller.json +2 -2
- package/dist/mcp-data/registry/message.json +7 -6
- package/dist/mcp-data/registry/modal.json +154 -24
- package/dist/mcp-data/registry/panel-nav.json +4 -3
- package/dist/mcp-data/registry/panel-sub-nav.json +2 -2
- package/dist/mcp-data/registry/panel-tool-header.json +1 -1
- package/dist/mcp-data/registry/panel-tool-search.json +1 -1
- package/dist/mcp-data/registry/panel-tools.json +1 -1
- package/dist/mcp-data/registry/radio.json +1 -1
- package/dist/mcp-data/registry/registry.json +479 -156
- package/dist/mcp-data/registry/select-multi.json +1 -1
- package/dist/mcp-data/registry/select.json +1 -1
- package/dist/mcp-data/registry/shell-gradient-picker.json +1 -1
- package/dist/mcp-data/registry/shell-gradient-swatch.json +1 -1
- package/dist/mcp-data/registry/skeleton.json +4 -4
- package/dist/mcp-data/registry/slider.json +1 -1
- package/dist/mcp-data/registry/swatch-picker.json +1 -1
- package/dist/mcp-data/registry/switch.json +1 -1
- package/dist/mcp-data/registry/tab-group.json +1 -1
- package/dist/mcp-data/registry/tag.json +2 -2
- package/dist/mcp-data/registry/text.json +2 -2
- package/dist/mcp-data/registry/toast.json +318 -0
- package/dist/mcp-data/registry/tooltip-data-viz.json +1 -1
- package/dist/mcp-data/registry/tooltip.json +1 -1
- package/dist/mcp-data/registry/typing-indicator.json +127 -0
- package/dist/react/components.d.ts +2 -2
- package/dist/react/components.js +2 -2
- package/dist/react/ds-card-setting.d.ts +2 -2
- package/dist/react/ds-card-setting.js +1 -1
- package/dist/react/ds-modal.d.ts +3 -2
- package/dist/react/ds-modal.js +4 -1
- package/dist/react/ds-toast.d.ts +14 -0
- package/dist/react/ds-toast.js +16 -0
- package/dist/react/{ds-card.d.ts → ds-typing-indicator.d.ts} +3 -3
- package/dist/react/ds-typing-indicator.js +12 -0
- package/dist/types/components/CardSetting/CardSetting.d.ts +9 -6
- package/dist/types/components/CardSetting/index.d.ts +1 -1
- package/dist/types/components/MessageBubble/MessageBubble.d.ts +1 -1
- package/dist/types/components/Modal/Modal.d.ts +21 -18
- package/dist/types/components/Toast/Toast.d.ts +106 -0
- package/dist/types/components/Toast/index.d.ts +2 -0
- package/dist/types/components/TypingIndicator/TypingIndicator.d.ts +6 -0
- package/dist/types/components.d.ts +164 -182
- package/dist/types/toast/index.d.ts +3 -0
- package/dist/types/toast/toast-manager.d.ts +4 -0
- package/dist/types/toast/toast-types.d.ts +86 -0
- package/package.json +12 -8
- package/dist/angular/ds-banner.d.ts +0 -15
- package/dist/angular/ds-card.d.ts +0 -12
- package/dist/components/ds-banner.js +0 -2
- package/dist/components/ds-banner.js.map +0 -1
- package/dist/components/ds-card.js +0 -2
- package/dist/components/ds-card.js.map +0 -1
- package/dist/components/p-BHpWYKtP.js +0 -2
- package/dist/components/p-BO6C8abO.js +0 -2
- package/dist/components/p-BO6C8abO.js.map +0 -1
- package/dist/components/p-CBYuvZKM.js +0 -2
- package/dist/components/p-CBYuvZKM.js.map +0 -1
- package/dist/components/p-CWNdl52Y.js +0 -2
- package/dist/components/p-CWNdl52Y.js.map +0 -1
- package/dist/components/p-CblAABEo.js +0 -2
- package/dist/components/p-CiKGqsA2.js +0 -2
- package/dist/components/p-CiKGqsA2.js.map +0 -1
- package/dist/components/p-DFxqk71w.js +0 -2
- package/dist/components/p-DFxqk71w.js.map +0 -1
- package/dist/components/p-Dj5MejHv.js +0 -2
- package/dist/components/p-Dst-OliP.js +0 -2
- package/dist/components/p-drBA73M_.js +0 -2
- package/dist/components/p-drBA73M_.js.map +0 -1
- package/dist/components/p-xB0GPG3-.js +0 -2
- package/dist/mcp-data/registry/banner.json +0 -206
- package/dist/mcp-data/registry/card.json +0 -126
- package/dist/react/ds-banner.d.ts +0 -12
- package/dist/react/ds-banner.js +0 -12
- package/dist/react/ds-card.js +0 -12
- package/dist/types/components/Banner/Banner.d.ts +0 -31
- package/dist/types/components/Card/Card.d.ts +0 -21
- package/dist/types/components/Card/index.d.ts +0 -2
- /package/dist/components/{p-DnMCRAwx.js.map → p-0kEg-Z4f.js.map} +0 -0
- /package/dist/components/{p-DiooIO2B.js.map → p-BEWtqFX7.js.map} +0 -0
- /package/dist/components/{p-Ci_nVk5P.js.map → p-BkwBtZs3.js.map} +0 -0
- /package/dist/components/{p-CJlgONwR.js.map → p-C8e2A66f.js.map} +0 -0
- /package/dist/components/{p-BRfOCc_h.js.map → p-CLn7QnE0.js.map} +0 -0
- /package/dist/components/{p-kezp2_Xu.js.map → p-CPPAndX2.js.map} +0 -0
- /package/dist/components/{p-BSOZXagj.js.map → p-CZZYGqKz.js.map} +0 -0
- /package/dist/components/{p-T0Mzhv3-.js.map → p-CbckeueL.js.map} +0 -0
- /package/dist/components/{p-DaQ0ZE_V.js.map → p-DJ78wdNv.js.map} +0 -0
- /package/dist/components/{p-CeFBA7Dx.js.map → p-Dh4q5TSS.js.map} +0 -0
- /package/dist/components/{p-CiwdnKKp.js.map → p-DrDHC7V6.js.map} +0 -0
- /package/dist/components/{p-Cijzn3YQ.js.map → p-Hw-HMjCk.js.map} +0 -0
- /package/dist/components/{p-B1pWGQn1.js.map → p-bDx_rlLm.js.map} +0 -0
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import type { AnchoredPopupAlign, AnchoredPopupSide } from '../utils/anchored-popup';
|
|
2
|
+
export type ToastPriority = 'low' | 'high';
|
|
3
|
+
export type ToastTransitionStatus = 'starting' | 'active' | 'ending';
|
|
4
|
+
export type ToastSwipeDirection = 'up' | 'down' | 'left' | 'right';
|
|
5
|
+
export type ToastCloseReason = 'timeout' | 'close-button' | 'swipe' | 'escape' | 'programmatic';
|
|
6
|
+
export interface ToastPositionerOptions {
|
|
7
|
+
/** Element or document id used to position this toast outside the global stack. */
|
|
8
|
+
anchor: HTMLElement | string;
|
|
9
|
+
side?: AnchoredPopupSide;
|
|
10
|
+
align?: AnchoredPopupAlign;
|
|
11
|
+
sideOffset?: number | string;
|
|
12
|
+
alignOffset?: number | string;
|
|
13
|
+
}
|
|
14
|
+
export interface ToastActionContext<Data = unknown> {
|
|
15
|
+
id: string;
|
|
16
|
+
data: Data | undefined;
|
|
17
|
+
manager: ToastManager<Data>;
|
|
18
|
+
originalEvent: MouseEvent;
|
|
19
|
+
}
|
|
20
|
+
export interface ToastAction<Data = unknown> {
|
|
21
|
+
label: string;
|
|
22
|
+
ariaLabel?: string;
|
|
23
|
+
onAction?: (context: ToastActionContext<Data>) => void;
|
|
24
|
+
}
|
|
25
|
+
export interface ToastCloseContext<Data = unknown> {
|
|
26
|
+
id: string;
|
|
27
|
+
reason: ToastCloseReason;
|
|
28
|
+
toast: ToastRecord<Data>;
|
|
29
|
+
}
|
|
30
|
+
export interface ToastOptions<Data = unknown> {
|
|
31
|
+
id?: string;
|
|
32
|
+
title?: string;
|
|
33
|
+
description?: string;
|
|
34
|
+
/** Styling/state hook, including `loading`, `success`, and `error`. */
|
|
35
|
+
type?: string;
|
|
36
|
+
/** Milliseconds, a CSS time/token value, or 0 to keep the toast open. */
|
|
37
|
+
timeout?: number | string;
|
|
38
|
+
priority?: ToastPriority;
|
|
39
|
+
action?: ToastAction<Data>;
|
|
40
|
+
positioner?: ToastPositionerOptions;
|
|
41
|
+
data?: Data;
|
|
42
|
+
onClose?: (context: ToastCloseContext<Data>) => void;
|
|
43
|
+
onRemove?: (context: ToastCloseContext<Data>) => void;
|
|
44
|
+
}
|
|
45
|
+
export interface ToastRecord<Data = unknown> extends Omit<ToastOptions<Data>, 'id' | 'priority'> {
|
|
46
|
+
id: string;
|
|
47
|
+
priority: ToastPriority;
|
|
48
|
+
transitionStatus: ToastTransitionStatus;
|
|
49
|
+
updateKey: number;
|
|
50
|
+
/** Internal timer generation; changes only when countdown timing must restart. */
|
|
51
|
+
timerKey: number;
|
|
52
|
+
closeReason?: ToastCloseReason;
|
|
53
|
+
}
|
|
54
|
+
export type ToastPromiseValue<Data = unknown> = string | ToastOptions<Data>;
|
|
55
|
+
export interface ToastPromiseOptions<Value, Data = unknown> {
|
|
56
|
+
loading: ToastPromiseValue<Data>;
|
|
57
|
+
success: ToastPromiseValue<Data> | ((value: Value) => ToastPromiseValue<Data>);
|
|
58
|
+
error: ToastPromiseValue<Data> | ((error: unknown) => ToastPromiseValue<Data>);
|
|
59
|
+
}
|
|
60
|
+
export type ToastListener<Data = unknown> = (records: readonly ToastRecord<Data>[]) => void;
|
|
61
|
+
export interface ToastManager<Data = unknown> {
|
|
62
|
+
add(options: ToastOptions<Data>): string;
|
|
63
|
+
update(id: string, updates: Partial<ToastOptions<Data>>): void;
|
|
64
|
+
close(id: string, reason?: ToastCloseReason): void;
|
|
65
|
+
closeAll(reason?: ToastCloseReason): void;
|
|
66
|
+
promise<Value>(promiseValue: PromiseLike<Value>, options: ToastPromiseOptions<Value, Data>): Promise<Value>;
|
|
67
|
+
subscribe(listener: ToastListener<Data>): () => void;
|
|
68
|
+
getSnapshot(): readonly ToastRecord<Data>[];
|
|
69
|
+
/** Component lifecycle hook; consumers should not need to call this. */
|
|
70
|
+
activate(id: string): void;
|
|
71
|
+
/** Component lifecycle hook; consumers should not need to call this. */
|
|
72
|
+
remove(id: string): ToastCloseContext<Data> | null;
|
|
73
|
+
/** Component lifecycle hook; invokes onRemove after rendered DOM removal. */
|
|
74
|
+
notifyRemove(context: ToastCloseContext<Data>): void;
|
|
75
|
+
}
|
|
76
|
+
export interface ToastEventDetail<Data = unknown> {
|
|
77
|
+
id: string;
|
|
78
|
+
toast: ToastRecord<Data>;
|
|
79
|
+
}
|
|
80
|
+
export interface ToastCloseEventDetail<Data = unknown> extends ToastEventDetail<Data> {
|
|
81
|
+
reason: ToastCloseReason;
|
|
82
|
+
}
|
|
83
|
+
export interface ToastActionEventDetail<Data = unknown> extends ToastEventDetail<Data> {
|
|
84
|
+
originalEvent: MouseEvent;
|
|
85
|
+
}
|
|
86
|
+
//# sourceMappingURL=toast-types.d.ts.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ds-mo/ui",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "11.0.0",
|
|
4
4
|
"description": "CompoMo — composable web components styled with TokoMo design tokens",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"web-components",
|
|
@@ -60,6 +60,10 @@
|
|
|
60
60
|
"types": "./dist/lib/utils/index.d.ts",
|
|
61
61
|
"import": "./dist/lib/utils/index.js"
|
|
62
62
|
},
|
|
63
|
+
"./toast": {
|
|
64
|
+
"types": "./dist/lib/toast/index.d.ts",
|
|
65
|
+
"import": "./dist/lib/toast/index.js"
|
|
66
|
+
},
|
|
63
67
|
"./agent": "./dist/agent.json",
|
|
64
68
|
"./agent/patterns": "./dist/agent-patterns.json",
|
|
65
69
|
"./dist/components/*": "./dist/components/*",
|
|
@@ -100,7 +104,7 @@
|
|
|
100
104
|
"peerDependencies": {
|
|
101
105
|
"@angular/core": ">=19 <23",
|
|
102
106
|
"@angular/forms": ">=19 <23",
|
|
103
|
-
"@ds-mo/icons": "^6.
|
|
107
|
+
"@ds-mo/icons": "^6.3.0",
|
|
104
108
|
"@ds-mo/tokens": "^3.1.1",
|
|
105
109
|
"react": "^18 || ^19",
|
|
106
110
|
"react-dom": "^18 || ^19"
|
|
@@ -120,12 +124,12 @@
|
|
|
120
124
|
}
|
|
121
125
|
},
|
|
122
126
|
"devDependencies": {
|
|
123
|
-
"@angular/compiler": "^22.0.
|
|
124
|
-
"@angular/compiler-cli": "^22.0.
|
|
125
|
-
"@angular/core": "^22.0.
|
|
126
|
-
"@angular/forms": "^22.0.
|
|
127
|
+
"@angular/compiler": "^22.0.7",
|
|
128
|
+
"@angular/compiler-cli": "^22.0.7",
|
|
129
|
+
"@angular/core": "^22.0.7",
|
|
130
|
+
"@angular/forms": "^22.0.7",
|
|
127
131
|
"@axe-core/playwright": "^4.12.1",
|
|
128
|
-
"@ds-mo/icons": "^6.
|
|
132
|
+
"@ds-mo/icons": "^6.3.0",
|
|
129
133
|
"@ds-mo/tokens": "^3.1.1",
|
|
130
134
|
"@eslint/js": "^10.0.1",
|
|
131
135
|
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
@@ -140,7 +144,7 @@
|
|
|
140
144
|
"@types/d3-array": "^3.2.2",
|
|
141
145
|
"@types/d3-scale": "^4.0.9",
|
|
142
146
|
"@types/d3-shape": "^3.1.8",
|
|
143
|
-
"@types/node": "^
|
|
147
|
+
"@types/node": "^26.1.1",
|
|
144
148
|
"@types/react": "^19.2.17",
|
|
145
149
|
"@types/react-dom": "^19.2.3",
|
|
146
150
|
"@vitest/browser-playwright": "^4.1.10",
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectorRef, ElementRef, NgZone, EventEmitter } from '@angular/core';
|
|
2
|
-
import type { Components } from '@ds-mo/ui/components';
|
|
3
|
-
import type { DsBannerCustomEvent } from '@ds-mo/ui/components';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
export declare class DsBanner {
|
|
6
|
-
protected z: NgZone;
|
|
7
|
-
protected el: HTMLDsBannerElement;
|
|
8
|
-
dsDismiss: EventEmitter<DsBannerCustomEvent<void>>;
|
|
9
|
-
constructor(c: ChangeDetectorRef, r: ElementRef, z: NgZone);
|
|
10
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<DsBanner, never>;
|
|
11
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<DsBanner, "ds-banner", never, { "contrast": { "alias": "contrast"; "required": false; }; "dismissLabel": { "alias": "dismissLabel"; "required": false; }; "floating": { "alias": "floating"; "required": false; }; "header": { "alias": "header"; "required": false; }; "intent": { "alias": "intent"; "required": false; }; "message": { "alias": "message"; "required": false; }; "showDismiss": { "alias": "showDismiss"; "required": false; }; }, { "dsDismiss": "dsDismiss"; }, never, ["*"], true, never>;
|
|
12
|
-
}
|
|
13
|
-
export declare interface DsBanner extends Components.DsBanner {
|
|
14
|
-
dsDismiss: EventEmitter<DsBannerCustomEvent<void>>;
|
|
15
|
-
}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectorRef, ElementRef, NgZone } from '@angular/core';
|
|
2
|
-
import type { Components } from '@ds-mo/ui/components';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export declare class DsCard {
|
|
5
|
-
protected z: NgZone;
|
|
6
|
-
protected el: HTMLDsCardElement;
|
|
7
|
-
constructor(c: ChangeDetectorRef, r: ElementRef, z: NgZone);
|
|
8
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<DsCard, never>;
|
|
9
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<DsCard, "ds-card", never, { "appearance": { "alias": "appearance"; "required": false; }; "cardWidth": { "alias": "cardWidth"; "required": false; }; "heading": { "alias": "heading"; "required": true; }; }, {}, never, ["*"], true, never>;
|
|
10
|
-
}
|
|
11
|
-
export declare interface DsCard extends Components.DsCard {
|
|
12
|
-
}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{p as s,H as e,c as n,h as t,a as i,t as r}from"./index.js";import{d as a}from"./p-BSOZXagj.js";import{r as o,a as d}from"./p-BHtg1fh3.js";import{T as l}from"./p-drBA73M_.js";const c=()=>`.banner-surface.sc-ds-banner{position:relative;display:flex;flex-direction:column;overflow:hidden;border-radius:var(--dimension-radius-075)}.banner-header-surface.sc-ds-banner{width:100%;height:var(--dimension-space-100);flex-shrink:0;overflow:hidden;border-bottom:var(--dimension-stroke-width-015) solid var(--color-border-primary)}.banner-header.sc-ds-banner{width:100%;height:100%;background:repeating-linear-gradient( -45deg, var(--banner-content), var(--banner-content) var(--dimension-size-100), transparent var(--dimension-size-100), transparent var(--dimension-size-200) )}.banner-body.sc-ds-banner{padding:var(--dimension-space-075);min-height:var(--dimension-size-400);display:flex;align-items:flex-start;gap:var(--dimension-space-075)}.banner-message.sc-ds-banner{color:var(--banner-content);flex:1;min-width:0}.banner-dismiss.sc-ds-banner{background:none;border:none;margin:0;padding:var(--dimension-space-025);color:var(--banner-content);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:var(--dimension-radius-050);position:relative;font-size:var(--typography-fontsize-md);line-height:var(--typography-lineheight-md)}.banner-dismiss.sc-ds-banner::before{content:'';position:absolute;inset:0;border-radius:inherit;background-color:transparent;transition:var(--effect-transition-interaction-background-short-2, background-color var(--effect-motion-short-2));pointer-events:none}.banner-dismiss.sc-ds-banner:hover::before{background-color:var(--color-interaction-hover)}.banner-dismiss.sc-ds-banner:active::before{background-color:var(--color-interaction-pressed)}.banner-dismiss.sc-ds-banner:focus-visible{outline:var(--dimension-stroke-width-025) solid var(--color-interaction-focus);outline-offset:var(--dimension-stroke-width-015)}.floating-position.sc-ds-banner{position:fixed;top:var(--dimension-space-200);left:50%;transform:translateX(-50%);pointer-events:none}.floating-toast.sc-ds-banner{pointer-events:auto;animation:bannerFadeIn var(--effect-motion-short-2, 150ms) forwards}.floating-toast--closing.sc-ds-banner{animation:bannerFadeOut var(--effect-motion-short-3, 200ms) forwards}@keyframes bannerFadeIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes bannerFadeOut{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-4px)}}@media (prefers-reduced-motion: reduce){.floating-toast.sc-ds-banner{animation:none;opacity:1;transform:none}.floating-toast--closing.sc-ds-banner{opacity:0}}`;const h=s(class s extends e{constructor(s){super();if(s!==false){this.__registerHost()}this.dsDismiss=n(this,"dsDismiss");this.intent="neutral";this.contrast="medium";this.message="";this.header=false;this.floating=false;this.showDismiss=false;this.dismissLabel="Dismiss";this.closing=false;this.dismissTimer=null;this.closeTimer=null}get fadeOutMs(){return o(l.motionShort3,l.animationDurationShort3)}get autoDismissMs(){return d(l.animationDelayLong2,l.animationDelayLong2)}componentDidLoad(){if(this.floating&&this.message)this.scheduleDismiss()}onMessageChange(s){if(this.floating&&s){this.closing=false;this.scheduleDismiss()}}disconnectedCallback(){this.clearTimers()}clearTimers(){if(this.dismissTimer){clearTimeout(this.dismissTimer);this.dismissTimer=null}if(this.closeTimer){clearTimeout(this.closeTimer);this.closeTimer=null}}scheduleDismiss(){this.clearTimers();this.dismissTimer=setTimeout((()=>{this.dismissTimer=null;this.beginClose()}),this.autoDismissMs)}beginClose(){this.clearTimers();if(this.floating){const s=this.fadeOutMs;if(s<=0){this.closing=false;this.dsDismiss.emit();return}this.closing=true;this.closeTimer=setTimeout((()=>{this.closing=false;this.closeTimer=null;this.dsDismiss.emit()}),s)}else{this.dsDismiss.emit()}}getContentColor(){if(this.contrast==="bold")return"var(--color-foreground-on-bold-background-primary)";const s=this.contrast==="faint"?"bold":this.contrast==="medium"?"strong":"medium";return`var(--color-foreground-${s}-${this.intent})`}getBg(){return`var(--color-background-${this.contrast}-${this.intent})`}getElevation(){return this.floating?"var(--effect-elevation-elevated-floating)":"var(--effect-elevation-elevated-sm)"}render(){const s=this.getContentColor();const e=this.intent==="negative";const n=t("div",{class:{"banner-wrapper":true},style:{"--banner-content":s},role:e?"alert":"status","aria-live":e?undefined:"polite"},t("div",{class:"banner-surface",style:{backgroundColor:this.getBg(),boxShadow:this.getElevation()}},this.header&&t("div",{class:"banner-header-surface"},t("div",{class:"banner-header"})),t("div",{class:"banner-body"},t("ds-text",{class:"banner-message",as:"div",variant:"text-body-medium",color:"inherit"},this.message),this.showDismiss&&t("button",{type:"button",class:"banner-dismiss",onClick:()=>this.beginClose(),"aria-label":this.dismissLabel},"×"))));if(this.floating){return t(i,{style:{display:"contents"}},t("div",{class:"floating-position",style:{zIndex:"9998"}},t("div",{class:{"floating-toast":true,"floating-toast--closing":this.closing}},n)))}return t(i,{style:{display:"contents"}},n)}static get watchers(){return{message:[{onMessageChange:0}]}}static get style(){return c()}},[2,"ds-banner",{intent:[1],contrast:[1],message:[1],header:[4],floating:[4],showDismiss:[4,"show-dismiss"],dismissLabel:[1,"dismiss-label"],closing:[32]},undefined,{message:[{onMessageChange:0}]}]);function f(){if(typeof customElements==="undefined"){return}const s=["ds-banner","ds-text"];s.forEach((s=>{switch(s){case"ds-banner":if(!customElements.get(r(s))){customElements.define(r(s),h)}break;case"ds-text":if(!customElements.get(r(s))){a()}break}}))}f();const m=h;const b=f;export{m as DsBanner,b as defineCustomElement};
|
|
2
|
-
//# sourceMappingURL=ds-banner.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["bannerCss","Banner","__stencil_proxyCustomElement","HTMLElement","constructor","registerHost","this","intent","contrast","message","header","floating","showDismiss","dismissLabel","closing","dismissTimer","closeTimer","fadeOutMs","resolveMotionTimeMs","TOKEN_DEFAULTS","motionShort3","animationDurationShort3","autoDismissMs","resolveCssTimeMs","animationDelayLong2","componentDidLoad","scheduleDismiss","onMessageChange","newVal","disconnectedCallback","clearTimers","clearTimeout","setTimeout","beginClose","dsDismiss","emit","getContentColor","c","getBg","getElevation","render","contentColor","isAssertive","bannerEl","h","class","style","role","undefined","backgroundColor","boxShadow","as","variant","color","type","onClick","Host","display","zIndex"],"sources":["src/wc/components/Banner/Banner.css?tag=ds-banner&encapsulation=scoped","src/wc/components/Banner/Banner.tsx"],"sourcesContent":[".banner-surface {\n position: relative;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n border-radius: var(--dimension-radius-075);\n}\n\n.banner-header-surface {\n width: 100%;\n height: var(--dimension-space-100);\n flex-shrink: 0;\n overflow: hidden;\n border-bottom: var(--dimension-stroke-width-015) solid var(--color-border-primary);\n}\n\n.banner-header {\n width: 100%;\n height: 100%;\n background: repeating-linear-gradient(\n -45deg,\n var(--banner-content),\n var(--banner-content) var(--dimension-size-100),\n transparent var(--dimension-size-100),\n transparent var(--dimension-size-200)\n );\n}\n\n.banner-body {\n padding: var(--dimension-space-075);\n min-height: var(--dimension-size-400);\n display: flex;\n align-items: flex-start;\n gap: var(--dimension-space-075);\n}\n\n.banner-message {\n color: var(--banner-content);\n flex: 1;\n min-width: 0;\n}\n\n.banner-dismiss {\n background: none;\n border: none;\n margin: 0;\n padding: var(--dimension-space-025);\n color: var(--banner-content);\n cursor: pointer;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n border-radius: var(--dimension-radius-050);\n position: relative;\n font-size: var(--typography-fontsize-md);\n line-height: var(--typography-lineheight-md);\n}\n\n.banner-dismiss::before {\n content: '';\n position: absolute;\n inset: 0;\n border-radius: inherit;\n background-color: transparent;\n transition: var(--effect-transition-interaction-background-short-2, background-color var(--effect-motion-short-2));\n pointer-events: none;\n}\n\n.banner-dismiss:hover::before { background-color: var(--color-interaction-hover); }\n.banner-dismiss:active::before { background-color: var(--color-interaction-pressed); }\n\n.banner-dismiss:focus-visible {\n outline: var(--dimension-stroke-width-025) solid var(--color-interaction-focus);\n outline-offset: var(--dimension-stroke-width-015);\n}\n\n/* ─── Floating ──────────────────────────────────────────────────────────────── */\n\n.floating-position {\n position: fixed;\n top: var(--dimension-space-200);\n left: 50%;\n transform: translateX(-50%);\n pointer-events: none;\n}\n\n.floating-toast {\n pointer-events: auto;\n animation: bannerFadeIn var(--effect-motion-short-2, 150ms) forwards;\n}\n\n.floating-toast--closing {\n animation: bannerFadeOut var(--effect-motion-short-3, 200ms) forwards;\n}\n\n@keyframes bannerFadeIn {\n from { opacity: 0; transform: translateY(-8px); }\n to { opacity: 1; transform: translateY(0); }\n}\n\n@keyframes bannerFadeOut {\n from { opacity: 1; transform: translateY(0); }\n to { opacity: 0; transform: translateY(-4px); }\n}\n\n@media (prefers-reduced-motion: reduce) {\n .floating-toast {\n animation: none;\n opacity: 1;\n transform: none;\n }\n\n .floating-toast--closing {\n opacity: 0;\n }\n}\n","import { Component, Prop, State, Event, EventEmitter, Watch, h, Host } from '@stencil/core';\nimport { resolveCssTimeMs, resolveMotionTimeMs, TOKEN_DEFAULTS } from '../../utils';\n\nexport type BannerIntent =\n | 'brand' | 'positive' | 'negative' | 'warning' | 'caution'\n | 'ai' | 'neutral' | 'walkthrough' | 'guide';\n\nexport type BannerContrast = 'faint' | 'medium' | 'bold' | 'strong';\n\n@Component({\n tag: 'ds-banner',\n styleUrl: 'Banner.css',\n scoped: true,\n})\nexport class Banner {\n @Prop() intent: BannerIntent = 'neutral';\n @Prop() contrast: BannerContrast = 'medium';\n @Prop() message: string = '';\n /** Renders the diagonal-stripe accent bar above the body. */\n @Prop() header: boolean = false;\n /** Renders at a fixed position (centered top) and auto-dismisses after 4 s. */\n @Prop() floating: boolean = false;\n @Prop() showDismiss: boolean = false;\n @Prop() dismissLabel: string = 'Dismiss';\n\n @State() private closing: boolean = false;\n\n @Event() dsDismiss!: EventEmitter<void>;\n\n private dismissTimer: ReturnType<typeof setTimeout> | null = null;\n private closeTimer: ReturnType<typeof setTimeout> | null = null;\n\n private get fadeOutMs(): number {\n return resolveMotionTimeMs(TOKEN_DEFAULTS.motionShort3, TOKEN_DEFAULTS.animationDurationShort3);\n }\n\n private get autoDismissMs(): number {\n return resolveCssTimeMs(TOKEN_DEFAULTS.animationDelayLong2, TOKEN_DEFAULTS.animationDelayLong2);\n }\n\n componentDidLoad() {\n if (this.floating && this.message) this.scheduleDismiss();\n }\n\n @Watch('message')\n onMessageChange(newVal: string) {\n if (this.floating && newVal) {\n this.closing = false;\n this.scheduleDismiss();\n }\n }\n\n disconnectedCallback() {\n this.clearTimers();\n }\n\n private clearTimers() {\n if (this.dismissTimer) { clearTimeout(this.dismissTimer); this.dismissTimer = null; }\n if (this.closeTimer) { clearTimeout(this.closeTimer); this.closeTimer = null; }\n }\n\n private scheduleDismiss() {\n this.clearTimers();\n this.dismissTimer = setTimeout(() => {\n this.dismissTimer = null;\n this.beginClose();\n }, this.autoDismissMs);\n }\n\n private beginClose() {\n this.clearTimers();\n if (this.floating) {\n const fadeOutMs = this.fadeOutMs;\n if (fadeOutMs <= 0) {\n this.closing = false;\n this.dsDismiss.emit();\n return;\n }\n this.closing = true;\n this.closeTimer = setTimeout(() => {\n this.closing = false;\n this.closeTimer = null;\n this.dsDismiss.emit();\n }, fadeOutMs);\n } else {\n this.dsDismiss.emit();\n }\n }\n\n private getContentColor(): string {\n if (this.contrast === 'bold') return 'var(--color-foreground-on-bold-background-primary)';\n const c = this.contrast === 'faint' ? 'bold' : this.contrast === 'medium' ? 'strong' : 'medium';\n return `var(--color-foreground-${c}-${this.intent})`;\n }\n\n private getBg(): string {\n return `var(--color-background-${this.contrast}-${this.intent})`;\n }\n\n private getElevation(): string {\n return this.floating\n ? 'var(--effect-elevation-elevated-floating)'\n : 'var(--effect-elevation-elevated-sm)';\n }\n\n render() {\n const contentColor = this.getContentColor();\n const isAssertive = this.intent === 'negative';\n\n const bannerEl = (\n <div\n class={{ 'banner-wrapper': true }}\n style={{ '--banner-content': contentColor } as { [key: string]: string }}\n role={isAssertive ? 'alert' : 'status'}\n aria-live={isAssertive ? undefined : 'polite'}\n >\n <div\n class=\"banner-surface\"\n style={{\n backgroundColor: this.getBg(),\n boxShadow: this.getElevation(),\n }}\n >\n {this.header && (\n <div class=\"banner-header-surface\">\n <div class=\"banner-header\" />\n </div>\n )}\n <div class=\"banner-body\">\n <ds-text class=\"banner-message\" as=\"div\" variant=\"text-body-medium\" color=\"inherit\">\n {this.message}\n </ds-text>\n {this.showDismiss && (\n <button\n type=\"button\"\n class=\"banner-dismiss\"\n onClick={() => this.beginClose()}\n aria-label={this.dismissLabel}\n >\n ×\n </button>\n )}\n </div>\n </div>\n </div>\n );\n\n if (this.floating) {\n return (\n <Host style={{ display: 'contents' }}>\n <div class=\"floating-position\" style={{ zIndex: '9998' }}>\n <div class={{ 'floating-toast': true, 'floating-toast--closing': this.closing }}>\n {bannerEl}\n </div>\n </div>\n </Host>\n );\n }\n\n return <Host style={{ display: 'contents' }}>{bannerEl}</Host>;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":[],"mappings":"","ignoreList":[]}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{p as e,H as s,c as a,h as o,a as n,t as i}from"./index.js";import{d as t}from"./p-CiwdnKKp.js";import{d}from"./p-Dst-OliP.js";import{d as l}from"./p-CBYuvZKM.js";import{d as r}from"./p-Cpr3K41-.js";import{d as c}from"./p-BSOZXagj.js";const h=()=>`.ds-control--md.sc-ds-panel-tool-header-h,.ds-control--md.sc-ds-panel-tool-header{--ds-control-height:var(--dimension-size-400);--ds-control-icon:var(--dimension-iconography-md);--ds-control-padding-inline:var(--dimension-space-075);--ds-control-label-inset:var(--dimension-space-025);--ds-control-gap:var(--dimension-space-050);--ds-control-radius:var(--dimension-radius-025)}.ds-control--sm.sc-ds-panel-tool-header-h,.ds-control--sm.sc-ds-panel-tool-header{--ds-control-height:var(--dimension-size-300);--ds-control-icon:var(--dimension-iconography-sm);--ds-control-padding-inline:var(--dimension-space-050);--ds-control-label-inset:var(--dimension-space-025);--ds-control-gap:var(--dimension-space-025);--ds-control-radius:var(--dimension-radius-025)}.ds-control--xs.sc-ds-panel-tool-header-h,.ds-control--xs.sc-ds-panel-tool-header{--ds-control-height:var(--dimension-size-200);--ds-control-icon:var(--dimension-iconography-xs);--ds-control-padding-inline:var(--dimension-space-025);--ds-control-label-inset:var(--dimension-space-025);--ds-control-gap:0;--ds-control-radius:var(--dimension-radius-025)}.sc-ds-panel-tool-header-h{display:block;flex:0 0 auto;box-sizing:border-box}.panel-tool-header.sc-ds-panel-tool-header{display:flex;align-items:center;gap:var(--dimension-space-050);height:var(--dimension-size-600);padding:var(--dimension-space-100);box-sizing:border-box;border-bottom:var(--dimension-stroke-width-012) solid var(--color-border-tertiary);color:var(--color-foreground-primary);-webkit-user-select:none;user-select:none}.panel-tool-header__leading.sc-ds-panel-tool-header,.panel-tool-header__trailing.sc-ds-panel-tool-header{display:flex;align-items:center;min-width:0}.panel-tool-header__leading.sc-ds-panel-tool-header:empty,.panel-tool-header__trailing.sc-ds-panel-tool-header:empty{display:none}.panel-tool-header__leading.sc-ds-panel-tool-header{flex:0 0 auto}.panel-tool-header__trailing.sc-ds-panel-tool-header{flex:0 0 auto;gap:var(--dimension-space-050);justify-content:flex-end}ds-text.panel-tool-header__heading.sc-ds-panel-tool-header{display:inline-flex;flex:1 1 0;align-items:center;width:auto;min-width:0;height:var(--ds-control-height);padding-inline:calc(var(--ds-control-padding-inline) + var(--ds-control-label-inset));box-sizing:border-box;text-align:left;-webkit-user-select:none;user-select:none}`;const p=e(class e extends s{constructor(e){super();if(e!==false){this.__registerHost()}this.dsBack=a(this,"dsBack");this.dsMenuToggle=a(this,"dsMenuToggle");this.dsAction=a(this,"dsAction");this.heading="";this.showBack=false;this.backIcon="ChevronLeft";this.backAriaLabel="Back";this.showMenu=true;this.menuAriaLabel="More options";this.menuTriggerId="";this.menuExpanded=false;this.actions=[]}async focusMenuTrigger(){const e=this.el.querySelector('ds-button-unfilled.panel-tool-header__menu, ds-button-unfilled[data-header-action-id="menu"]');await(e?.setFocus?.())}render(){const e=this.actions.length>0;const s=e?this.actions:this.showMenu?[{id:"menu",icon:"Ellipses",ariaLabel:this.menuAriaLabel,triggerId:this.menuTriggerId,controls:this.menuControls,expanded:this.menuExpanded,haspopup:"menu"}]:[];return o(n,{key:"7aae0ef2bb7e01a5f29c9a2d76492e5015b3bb42"},o("header",{key:"6474b00bed463eac69214607d4501565917b0da6",class:"panel-tool-header"},o("div",{key:"296522c332f058faf64a34008b2154db40ea10a2",class:"panel-tool-header__leading"},this.showBack?o("ds-button-unfilled",{class:"panel-tool-header__back",variant:"icon",icon:this.backIcon,size:"md","aria-label":this.backAriaLabel,activeFill:false,hasBorder:false,onDsClick:e=>this.dsBack.emit(e.detail)}):null),o("ds-text",{key:"eca59fe15c1eeafd608a78caa0e5ea775f712fe7",class:"panel-tool-header__heading ds-control--md",as:"h2",variant:"text-body-medium",emphasis:true,color:"primary",lineTruncation:1},this.heading),o("div",{key:"e8ef1a7e52fcc1b54944a5e8116d9a34e977c787",class:"panel-tool-header__trailing"},s.map((s=>o("ds-button-unfilled",{key:s.id,id:s.triggerId||undefined,"data-header-action-id":s.id,class:{"panel-tool-header__action":true,"panel-tool-header__menu":s.id==="menu"},variant:"icon",icon:s.icon,size:"md","aria-label":s.ariaLabel,haspopup:s.haspopup,controls:s.controls,expanded:s.expanded,pressed:s.pressed,isActive:!!s.expanded,isInactive:s.isInactive,activeFill:false,hasBorder:false,onDsClick:a=>{if(!e&&s.id==="menu")this.dsMenuToggle.emit(a.detail);this.dsAction.emit({id:s.id,originalEvent:a.detail})}}))))))}get el(){return this}static get style(){return h()}},[2,"ds-panel-tool-header",{heading:[1],showBack:[4,"show-back"],backIcon:[1,"back-icon"],backAriaLabel:[1,"back-aria-label"],showMenu:[4,"show-menu"],menuAriaLabel:[1,"menu-aria-label"],menuTriggerId:[1,"menu-trigger-id"],menuControls:[1,"menu-controls"],menuExpanded:[4,"menu-expanded"],actions:[16],focusMenuTrigger:[64]}]);function m(){if(typeof customElements==="undefined"){return}const e=["ds-panel-tool-header","ds-badge","ds-button-unfilled","ds-icon","ds-loader","ds-text"];e.forEach((e=>{switch(e){case"ds-panel-tool-header":if(!customElements.get(i(e))){customElements.define(i(e),p)}break;case"ds-badge":if(!customElements.get(i(e))){t()}break;case"ds-button-unfilled":if(!customElements.get(i(e))){d()}break;case"ds-icon":if(!customElements.get(i(e))){l()}break;case"ds-loader":if(!customElements.get(i(e))){r()}break;case"ds-text":if(!customElements.get(i(e))){c()}break}}))}m();export{p as P,m as d};
|
|
2
|
-
//# sourceMappingURL=p-BHpWYKtP.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{p as t,H as i,h as s,a as o,t as n}from"./index.js";import{d as e}from"./p-BSOZXagj.js";import{a as r,T as a}from"./p-drBA73M_.js";import{r as h}from"./p-BWUTr_XN.js";import{a as d,r as l}from"./p-BHtg1fh3.js";import{C as c}from"./p-Cx-ywr1e.js";const p=new Set(["⌘","⇧","⌥","⌃"]);const u={alt:"⌥",cmd:"⌘",command:"⌘",control:"⌃",ctrl:"⌃",option:"⌥",shift:"⇧"};function f(t){return u[t.toLowerCase()]??t}function m(t){const i=t.trim();if(!i)return[];if(i.includes("+")){return i.split("+").map((t=>t.trim())).filter(Boolean).map(f)}if(/\s/.test(i)){return i.split(/\s+/).filter(Boolean).map(f)}const s=Array.from(i);const o=[];while(s.length>1&&p.has(s[0])){o.push(s.shift())}o.push(s.join(""));return o}const g={top:"bottom",right:"left",bottom:"top",left:"right"};function v(t,i){const{anchorRect:s,popupWidth:o,popupHeight:n,align:e,sideOffsetPx:r,alignOffsetPx:a}=t;if(i==="top"||i==="bottom"){return{x:e==="start"?s.left+a:e==="end"?s.right-o+a:s.left+s.width/2-o/2+a,y:i==="top"?s.top-n-r:s.bottom+r}}return{x:i==="left"?s.left-o-r:s.right+r,y:e==="start"?s.top+a:e==="end"?s.bottom-n+a:s.top+s.height/2-n/2+a}}function y(t,i,s){const{popupWidth:o,popupHeight:n,viewportPadPx:e,viewportWidth:r,viewportHeight:a}=t;if(i==="top"||i==="bottom"){return Math.max(e-s.y,0)+Math.max(s.y+n-(a-e),0)}return Math.max(e-s.x,0)+Math.max(s.x+o-(r-e),0)}function b(t){const i=v(t,t.side);const s=g[t.side];const o=v(t,s);const n=y(t,t.side,i);const e=y(t,s,o);const r=n>0&&e<n;const a=r?s:t.side;const h=r?o:i;const d=Math.max(t.viewportPadPx,t.viewportWidth-t.popupWidth-t.viewportPadPx);const l=Math.max(t.viewportPadPx,t.viewportHeight-t.popupHeight-t.viewportPadPx);return{x:Math.min(Math.max(h.x,t.viewportPadPx),d),y:Math.min(Math.max(h.y,t.viewportPadPx),l),resolvedSide:a}}const x=()=>`.ds-control--md.sc-ds-tooltip-h,.ds-control--md.sc-ds-tooltip{--ds-control-height:var(--dimension-size-400);--ds-control-icon:var(--dimension-iconography-md);--ds-control-padding-inline:var(--dimension-space-075);--ds-control-label-inset:var(--dimension-space-025);--ds-control-gap:var(--dimension-space-050);--ds-control-radius:var(--dimension-radius-025)}.ds-control--sm.sc-ds-tooltip-h,.ds-control--sm.sc-ds-tooltip{--ds-control-height:var(--dimension-size-300);--ds-control-icon:var(--dimension-iconography-sm);--ds-control-padding-inline:var(--dimension-space-050);--ds-control-label-inset:var(--dimension-space-025);--ds-control-gap:var(--dimension-space-025);--ds-control-radius:var(--dimension-radius-025)}.ds-control--xs.sc-ds-tooltip-h,.ds-control--xs.sc-ds-tooltip{--ds-control-height:var(--dimension-size-200);--ds-control-icon:var(--dimension-iconography-xs);--ds-control-padding-inline:var(--dimension-space-025);--ds-control-label-inset:var(--dimension-space-025);--ds-control-gap:0;--ds-control-radius:var(--dimension-radius-025)}.ds-control--md.sc-ds-tooltip-h,.ds-control--md.sc-ds-tooltip{--ds-control-height:var(--dimension-size-400);--ds-control-icon:var(--dimension-iconography-md);--ds-control-padding-inline:var(--dimension-space-075);--ds-control-label-inset:var(--dimension-space-025);--ds-control-gap:var(--dimension-space-050);--ds-control-radius:var(--dimension-radius-025)}.ds-control--sm.sc-ds-tooltip-h,.ds-control--sm.sc-ds-tooltip{--ds-control-height:var(--dimension-size-300);--ds-control-icon:var(--dimension-iconography-sm);--ds-control-padding-inline:var(--dimension-space-050);--ds-control-label-inset:var(--dimension-space-025);--ds-control-gap:var(--dimension-space-025);--ds-control-radius:var(--dimension-radius-025)}.ds-control--xs.sc-ds-tooltip-h,.ds-control--xs.sc-ds-tooltip{--ds-control-height:var(--dimension-size-200);--ds-control-icon:var(--dimension-iconography-xs);--ds-control-padding-inline:var(--dimension-space-025);--ds-control-label-inset:var(--dimension-space-025);--ds-control-gap:0;--ds-control-radius:var(--dimension-radius-025)}.key-hint-group.sc-ds-tooltip{display:inline-flex;align-items:center;gap:var(--dimension-stroke-width-012);width:max-content;flex-shrink:0}.key-hint.sc-ds-tooltip{box-sizing:border-box;min-width:var(--ds-control-icon, var(--dimension-iconography-md));width:var(--ds-control-icon, var(--dimension-iconography-md));height:var(--ds-control-icon, var(--dimension-iconography-md));padding-inline:0;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;background-color:var(--color-background-secondary);border:var(--dimension-stroke-width-015) solid var(--color-border-tertiary);border-bottom-width:var(--dimension-stroke-width-025);border-radius:var(--dimension-radius-025);color:var(--color-foreground-secondary)}.key-hint--wide.sc-ds-tooltip{width:calc(var(--ds-control-icon, var(--dimension-iconography-md)) * 1.5)}.key-hint__label.sc-ds-tooltip{display:inline-flex;width:max-content;min-width:max-content;font-family:var(--typography-font-family);font-size:var(--typography-fontsize-xs);line-height:1;font-weight:var(--typography-weight-regular);letter-spacing:0;text-transform:uppercase;color:inherit}.ds-control--xs.sc-ds-tooltip .key-hint__label.sc-ds-tooltip{font-size:calc(var(--typography-fontsize-xs) * 0.78)}.tooltip-popup.sc-ds-tooltip{box-sizing:border-box;background-color:var(--color-background-primary);border-radius:var(--ds-control-radius, var(--dimension-radius-025));box-shadow:var(--effect-elevation-elevated-floating);white-space:nowrap;pointer-events:none;animation:tooltipFadeIn var(--effect-motion-short-2) forwards;will-change:transform;backface-visibility:hidden}.tooltip-popup--instant.sc-ds-tooltip{animation:none;opacity:1}.tooltip-popup--closing.sc-ds-tooltip{animation:tooltipFadeOut var(--effect-motion-short-3) forwards}.tooltip-inner.sc-ds-tooltip{box-sizing:border-box;height:var(--ds-control-height, var(--dimension-size-400));display:flex;align-items:center;gap:var(--ds-control-gap, var(--dimension-space-050));padding:0 var(--ds-control-padding-inline, var(--dimension-space-075))}.tooltip-inner.sc-ds-tooltip>ds-text.sc-ds-tooltip{flex-shrink:0;min-width:max-content;max-width:none;padding:0 var(--ds-control-label-inset, var(--dimension-space-025));color:var(--color-foreground-primary)}@keyframes tooltipFadeIn{from{opacity:0}to{opacity:1}}@keyframes tooltipFadeOut{from{opacity:1}to{opacity:0}}@media (prefers-reduced-motion: reduce){.tooltip-popup.sc-ds-tooltip,.tooltip-popup--instant.sc-ds-tooltip{animation:none;opacity:1}.tooltip-popup--closing.sc-ds-tooltip{animation:none;opacity:0}}`;const w={md:a.size400,sm:a.size300,xs:a.size200};let P=0;let C=0;let O=null;function k(t){const i=document.createElement("ds-text");i.as="span";i.variant=t.variant;i.emphasis=t.emphasis??false;i.color=t.color??"inherit";if(t.wrap)i.wrap=t.wrap;i.textContent=t.text;return i}function z(t){t.style.flexShrink="0";t.style.minWidth="max-content";t.style.maxWidth="none";t.style.padding="0 var(--ds-control-label-inset, var(--dimension-space-025))";t.style.color="var(--color-foreground-primary)"}const M=t(class t extends i{constructor(t){super();if(t!==false){this.__registerHost()}this.size="md";this.side="top";this.align="center";this.sideOffset=r.space050;this.alignOffset=0;this.delay=a.animationDelayMedium3;this.shortcutKeyPosition="end";this.tooltipId=`ds-tooltip-${++C}`;this.delayTimer=null;this.closeTimer=null;this.anchor=null;this.popupEl=null;this.positionObserver=null;this.anchorObserver=null;this.positionFrame=null;this.skipEnterAnimation=false;this.isOpen=false;this.lastInteractionWasKeyboard=false;this.pointerEnterHandler=t=>{if(t.pointerType==="touch")return;this.show()};this.pointerLeaveHandler=t=>{if(t.pointerType==="touch")return;this.hide()};this.pointerDownHandler=t=>{this.lastInteractionWasKeyboard=false;if(t.pointerType==="touch"&&(this.isOpen||this.popupEl))this.hideInstant()};this.keyDownHandler=()=>{this.lastInteractionWasKeyboard=true};this.focusHandler=()=>{if(this.lastInteractionWasKeyboard||this.anchor?.matches(":focus-visible"))this.show()};this.blurHandler=t=>{const i=t.relatedTarget;if(i&&this.anchor?.contains(i))return;this.hide()};this.scrollResizeHandler=()=>{if(this.positionFrame!==null)return;this.positionFrame=requestAnimationFrame((()=>{this.positionFrame=null;this.calculatePosition()}))};this.escapeHandler=t=>{if(t.key!=="Escape"||!this.isOpen)return;t.preventDefault();this.hide()};this.handleSlotChange=()=>{const t=this.el.querySelector("slot");const i=t?.assignedElements?.()[0]??this.el.firstElementChild;if(i===this.anchor)return;if(this.isOpen||this.popupEl)this.hideInstant();this.unbindAnchor();this.bindAnchor()}}componentDidLoad(){this.bindAnchor();this.anchorObserver=new MutationObserver((()=>this.handleSlotChange()));this.anchorObserver.observe(this.el,{childList:true})}disconnectedCallback(){if(O===this)O=null;this.anchorObserver?.disconnect();this.anchorObserver=null;this.unbindAnchor();this.clearTimers();this.destroyPopup()}onContentOrPositionChange(){if(!this.label?.trim()){if(this.isOpen||this.popupEl)this.hideInstant();return}if(!this.popupEl||!this.isOpen)return;this.renderPopupContent();this.schedulePosition()}get viewportPadPx(){return h(a.space050,a.space050)}get sideOffsetPx(){return h(this.sideOffset,a.space050)}get alignOffsetPx(){return h(this.alignOffset,0)}get hoverDelayMs(){return d(this.delay,a.animationDelayMedium3)}get instantReopenMs(){return d(a.animationDurationMedium1,a.animationDurationMedium1)}get fadeOutMs(){return l(a.motionShort3,a.animationDurationShort3)}get tooltipFallbackWidthPx(){return h(a.tooltipFallbackWidth,a.tooltipFallbackWidth)}get tooltipFallbackHeightPx(){const t=w[this.size];return h(t,t)}bindAnchor(){const t=this.el.querySelector("slot");const i=t?.assignedElements?.()??[];const s=i[0]??this.el.firstElementChild;if(!s||s===this.anchor)return;this.anchor=s;s.addEventListener("pointerenter",this.pointerEnterHandler);s.addEventListener("pointerleave",this.pointerLeaveHandler);s.addEventListener("pointerdown",this.pointerDownHandler);s.addEventListener("keydown",this.keyDownHandler);s.addEventListener("focusin",this.focusHandler);s.addEventListener("focusout",this.blurHandler)}unbindAnchor(){if(!this.anchor)return;this.unlinkDescribedBy();this.anchor.removeEventListener("pointerenter",this.pointerEnterHandler);this.anchor.removeEventListener("pointerleave",this.pointerLeaveHandler);this.anchor.removeEventListener("pointerdown",this.pointerDownHandler);this.anchor.removeEventListener("keydown",this.keyDownHandler);this.anchor.removeEventListener("focusin",this.focusHandler);this.anchor.removeEventListener("focusout",this.blurHandler);this.anchor=null}linkDescribedBy(){if(!this.anchor||!this.popupEl)return;const t=new Set((this.anchor.getAttribute("aria-describedby")??"").split(/\s+/).filter(Boolean));t.add(this.tooltipId);this.anchor.setAttribute("aria-describedby",Array.from(t).join(" "))}unlinkDescribedBy(){if(!this.anchor)return;const t=(this.anchor.getAttribute("aria-describedby")??"").split(/\s+/).filter((t=>t&&t!==this.tooltipId));if(t.length)this.anchor.setAttribute("aria-describedby",t.join(" "));else this.anchor.removeAttribute("aria-describedby")}clearTimers(){if(this.delayTimer){clearTimeout(this.delayTimer);this.delayTimer=null}if(this.closeTimer){clearTimeout(this.closeTimer);this.closeTimer=null}}setupOpenListeners(){window.addEventListener("scroll",this.scrollResizeHandler,true);window.addEventListener("resize",this.scrollResizeHandler);document.addEventListener("keydown",this.escapeHandler)}teardownOpenListeners(){window.removeEventListener("scroll",this.scrollResizeHandler,true);window.removeEventListener("resize",this.scrollResizeHandler);document.removeEventListener("keydown",this.escapeHandler);if(this.positionFrame!==null){cancelAnimationFrame(this.positionFrame);this.positionFrame=null}}destroyPopup(){this.teardownOpenListeners();this.positionObserver?.disconnect();this.positionObserver=null;this.unlinkDescribedBy();if(!this.popupEl)return;this.popupEl.remove();this.popupEl=null}schedulePosition(){if(!this.popupEl)return;const t=()=>{const t=this.popupEl?.querySelector(":scope > .tooltip-inner > ds-text");if(t instanceof i)z(t)};requestAnimationFrame((()=>{t();this.calculatePosition();requestAnimationFrame((()=>{t();this.calculatePosition()}))}));this.positionObserver?.disconnect();this.positionObserver=new ResizeObserver((()=>this.calculatePosition()));this.positionObserver.observe(this.popupEl);if(this.anchor)this.positionObserver.observe(this.anchor)}hideInstant(){this.clearTimers();P=Date.now();if(O===this)O=null;this.destroyPopup();this.isOpen=false;this.skipEnterAnimation=false}show(){if(!this.label?.trim())return;this.clearTimers();let t=Date.now()-P<this.instantReopenMs;if(O&&O!==this){O.hideInstant();t=true}O=this;this.skipEnterAnimation=t;if(t){this.mountPopup();return}this.delayTimer=setTimeout((()=>{this.delayTimer=null;if(!this.label?.trim())return;this.mountPopup()}),this.hoverDelayMs)}hide(){this.clearTimers();if(!this.popupEl&&!this.isOpen)return;P=Date.now();if(!this.popupEl){this.isOpen=false;return}this.popupEl.classList.remove("tooltip-popup--instant");this.popupEl.classList.add("tooltip-popup--closing");if(this.fadeOutMs===0){if(O===this)O=null;this.destroyPopup();this.isOpen=false;this.skipEnterAnimation=false;return}this.closeTimer=setTimeout((()=>{this.closeTimer=null;if(O===this)O=null;this.destroyPopup();this.isOpen=false;this.skipEnterAnimation=false}),this.fadeOutMs)}mountPopup(){if(!this.popupEl){const t=document.createElement("div");t.id=this.tooltipId;t.setAttribute("role","tooltip");t.className="tooltip-popup sc-ds-tooltip";Object.assign(t.style,{position:"fixed",left:"0",top:"0",zIndex:"var(--dimension-z-index-tooltip)",pointerEvents:"none"});document.body.appendChild(t);this.popupEl=t}this.setupOpenListeners();this.linkDescribedBy();this.popupEl.classList.toggle("tooltip-popup--instant",this.skipEnterAnimation);this.popupEl.classList.remove("tooltip-popup--closing");this.renderPopupContent();this.schedulePosition();this.isOpen=true}renderPopupContent(){if(!this.popupEl)return;const t=c[this.size];const i=this.size==="md"?"ds-control--md":this.size==="sm"?"ds-control--sm":"ds-control--xs";const s="sc-ds-tooltip";const o=document.createElement("div");o.className=`tooltip-inner ${i} ${s}`;const n=t=>{if(!this.shortcutKey||this.shortcutKeyPosition!==t)return;const i=document.createElement("span");i.className=`key-hint-group ${s}`;i.setAttribute("aria-hidden","true");for(const t of m(this.shortcutKey)){const o=document.createElement("span");const n=Array.from(t).length>1?" key-hint--wide":"";o.className=`key-hint${n} ${s}`;const e=document.createElement("span");e.className=`key-hint__label ${s}`;e.textContent=t;o.appendChild(e);i.appendChild(o)}o.appendChild(i)};n("start");const e=k({variant:t,wrap:"nowrap",text:this.label});z(e);o.appendChild(e);n("end");this.popupEl.replaceChildren(o)}calculatePosition(){if(!this.anchor||!this.popupEl)return;const t=this.popupEl;const i=this.anchor.getBoundingClientRect();const s=t.offsetWidth||this.tooltipFallbackWidthPx;const o=t.offsetHeight||this.tooltipFallbackHeightPx;const{x:n,y:e,resolvedSide:r}=b({anchorRect:i,popupWidth:s,popupHeight:o,side:this.side,align:this.align,sideOffsetPx:this.sideOffsetPx,alignOffsetPx:this.alignOffsetPx,viewportPadPx:this.viewportPadPx,viewportWidth:window.innerWidth,viewportHeight:window.innerHeight});t.dataset.side=r;t.style.transform=`translate(${Math.round(n)}px, ${Math.round(e)}px)`}render(){return s(o,{key:"43d3921da0ec9cd4c7f40407b883dffe6fa78f61",style:{display:"contents"}},s("slot",{key:"d54e419a0029330665185917fa0b587960eee487",onSlotchange:this.handleSlotChange}))}get el(){return this}static get watchers(){return{label:[{onContentOrPositionChange:0}],size:[{onContentOrPositionChange:0}],side:[{onContentOrPositionChange:0}],align:[{onContentOrPositionChange:0}],sideOffset:[{onContentOrPositionChange:0}],alignOffset:[{onContentOrPositionChange:0}],shortcutKey:[{onContentOrPositionChange:0}],shortcutKeyPosition:[{onContentOrPositionChange:0}]}}static get style(){return x()}},[262,"ds-tooltip",{label:[1],size:[1],side:[1],align:[1],sideOffset:[8,"side-offset"],alignOffset:[8,"align-offset"],delay:[8],shortcutKey:[1,"shortcut-key"],shortcutKeyPosition:[1,"shortcut-key-position"]},undefined,{label:[{onContentOrPositionChange:0}],size:[{onContentOrPositionChange:0}],side:[{onContentOrPositionChange:0}],align:[{onContentOrPositionChange:0}],sideOffset:[{onContentOrPositionChange:0}],alignOffset:[{onContentOrPositionChange:0}],shortcutKey:[{onContentOrPositionChange:0}],shortcutKeyPosition:[{onContentOrPositionChange:0}]}]);function A(){if(typeof customElements==="undefined"){return}const t=["ds-tooltip","ds-text"];t.forEach((t=>{switch(t){case"ds-tooltip":if(!customElements.get(n(t))){customElements.define(n(t),M)}break;case"ds-text":if(!customElements.get(n(t))){e()}break}}))}A();export{M as T,A as d};
|
|
2
|
-
//# sourceMappingURL=p-BO6C8abO.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["MODIFIER_GLYPHS","Set","MODIFIER_LABELS","alt","cmd","command","control","ctrl","option","shift","canonicalKeyLabel","label","toLowerCase","shortcutKeyLabels","shortcut","normalized","trim","includes","split","map","part","filter","Boolean","test","characters","Array","from","labels","length","has","push","join","OPPOSITE_SIDE","top","right","bottom","left","rawPosition","input","side","anchorRect","anchor","popupWidth","popupHeight","align","sideOffsetPx","alignOffsetPx","x","width","y","height","mainAxisOverflow","position","viewportPadPx","viewportWidth","viewportHeight","Math","max","computeTooltipPosition","preferred","oppositeSide","opposite","preferredOverflow","oppositeOverflow","useOpposite","resolvedSide","maxX","maxY","min","tooltipCss","FALLBACK_HEIGHT","md","TOKEN_DEFAULTS","size400","sm","size300","xs","size200","lastDismissedAt","tooltipIdCounter","activeTooltip","createDsText","opts","el","document","createElement","as","variant","emphasis","color","wrap","textContent","text","styleTooltipLabel","style","flexShrink","minWidth","maxWidth","padding","Tooltip","__stencil_proxyCustomElement","HTMLElement","constructor","registerHost","this","size","sideOffset","TOKEN_CSS_LENGTHS","space050","alignOffset","delay","animationDelayMedium3","shortcutKeyPosition","tooltipId","delayTimer","closeTimer","popupEl","positionObserver","anchorObserver","positionFrame","skipEnterAnimation","isOpen","lastInteractionWasKeyboard","pointerEnterHandler","event","pointerType","show","pointerLeaveHandler","hide","pointerDownHandler","hideInstant","keyDownHandler","focusHandler","matches","blurHandler","e","next","relatedTarget","contains","scrollResizeHandler","requestAnimationFrame","calculatePosition","escapeHandler","key","preventDefault","handleSlotChange","slot","querySelector","assignedElements","firstElementChild","unbindAnchor","bindAnchor","componentDidLoad","MutationObserver","observe","childList","disconnectedCallback","disconnect","clearTimers","destroyPopup","onContentOrPositionChange","renderPopupContent","schedulePosition","resolveCssLengthPx","hoverDelayMs","resolveCssTimeMs","instantReopenMs","animationDurationMedium1","fadeOutMs","resolveMotionTimeMs","motionShort3","animationDurationShort3","tooltipFallbackWidthPx","tooltipFallbackWidth","tooltipFallbackHeightPx","token","slotted","child","addEventListener","unlinkDescribedBy","removeEventListener","linkDescribedBy","ids","getAttribute","add","setAttribute","id","removeAttribute","clearTimeout","setupOpenListeners","window","teardownOpenListeners","cancelAnimationFrame","remove","reapplyLabelStyles","ResizeObserver","Date","now","instant","mountPopup","setTimeout","classList","tip","className","Object","assign","zIndex","pointerEvents","body","appendChild","toggle","textVariant","CONTROL_TEXT_VARIANT","density","sc","inner","appendShortcut","shortcutKey","group","hint","wide","replaceChildren","a","getBoundingClientRect","tw","offsetWidth","th","offsetHeight","innerWidth","innerHeight","dataset","transform","round","render","h","Host","display","onSlotchange"],"sources":["src/wc/utils/shortcut-key.ts","src/wc/components/Tooltip/tooltip-position.ts","src/wc/components/Tooltip/Tooltip.css?tag=ds-tooltip&encapsulation=scoped","src/wc/components/Tooltip/Tooltip.tsx"],"sourcesContent":["const MODIFIER_GLYPHS = new Set(['⌘', '⇧', '⌥', '⌃']);\nconst MODIFIER_LABELS: Readonly<Record<string, string>> = {\n alt: '⌥',\n cmd: '⌘',\n command: '⌘',\n control: '⌃',\n ctrl: '⌃',\n option: '⌥',\n shift: '⇧',\n};\n\nfunction canonicalKeyLabel(label: string): string {\n return MODIFIER_LABELS[label.toLowerCase()] ?? label;\n}\n\n/** Split a shortcut chord into the labels rendered on individual keycaps. */\nexport function shortcutKeyLabels(shortcut: string): string[] {\n const normalized = shortcut.trim();\n if (!normalized) return [];\n\n if (normalized.includes('+')) {\n return normalized.split('+').map(part => part.trim()).filter(Boolean).map(canonicalKeyLabel);\n }\n\n if (/\\s/.test(normalized)) {\n return normalized.split(/\\s+/).filter(Boolean).map(canonicalKeyLabel);\n }\n\n const characters = Array.from(normalized);\n const labels: string[] = [];\n while (characters.length > 1 && MODIFIER_GLYPHS.has(characters[0])) {\n labels.push(characters.shift()!);\n }\n labels.push(characters.join(''));\n return labels;\n}\n","import type { TooltipAlign, TooltipSide } from './Tooltip';\n\nexport interface TooltipPositionInput {\n anchorRect: Pick<DOMRectReadOnly, 'top' | 'left' | 'right' | 'bottom' | 'width' | 'height'>;\n popupWidth: number;\n popupHeight: number;\n side: TooltipSide;\n align: TooltipAlign;\n sideOffsetPx: number;\n alignOffsetPx: number;\n viewportPadPx: number;\n viewportWidth: number;\n viewportHeight: number;\n}\n\nexport interface TooltipPosition {\n x: number;\n y: number;\n resolvedSide: TooltipSide;\n}\n\nconst OPPOSITE_SIDE: Record<TooltipSide, TooltipSide> = {\n top: 'bottom',\n right: 'left',\n bottom: 'top',\n left: 'right',\n};\n\nfunction rawPosition(\n input: TooltipPositionInput,\n side: TooltipSide,\n): Pick<TooltipPosition, 'x' | 'y'> {\n const {\n anchorRect: anchor,\n popupWidth,\n popupHeight,\n align,\n sideOffsetPx,\n alignOffsetPx,\n } = input;\n\n if (side === 'top' || side === 'bottom') {\n return {\n x:\n align === 'start'\n ? anchor.left + alignOffsetPx\n : align === 'end'\n ? anchor.right - popupWidth + alignOffsetPx\n : anchor.left + anchor.width / 2 - popupWidth / 2 + alignOffsetPx,\n y: side === 'top'\n ? anchor.top - popupHeight - sideOffsetPx\n : anchor.bottom + sideOffsetPx,\n };\n }\n\n return {\n x: side === 'left'\n ? anchor.left - popupWidth - sideOffsetPx\n : anchor.right + sideOffsetPx,\n y:\n align === 'start'\n ? anchor.top + alignOffsetPx\n : align === 'end'\n ? anchor.bottom - popupHeight + alignOffsetPx\n : anchor.top + anchor.height / 2 - popupHeight / 2 + alignOffsetPx,\n };\n}\n\nfunction mainAxisOverflow(\n input: TooltipPositionInput,\n side: TooltipSide,\n position: Pick<TooltipPosition, 'x' | 'y'>,\n): number {\n const {\n popupWidth,\n popupHeight,\n viewportPadPx,\n viewportWidth,\n viewportHeight,\n } = input;\n\n if (side === 'top' || side === 'bottom') {\n return Math.max(viewportPadPx - position.y, 0) +\n Math.max(position.y + popupHeight - (viewportHeight - viewportPadPx), 0);\n }\n\n return Math.max(viewportPadPx - position.x, 0) +\n Math.max(position.x + popupWidth - (viewportWidth - viewportPadPx), 0);\n}\n\n/** Flip on the preferred axis when needed, then clamp within the viewport. */\nexport function computeTooltipPosition(input: TooltipPositionInput): TooltipPosition {\n const preferred = rawPosition(input, input.side);\n const oppositeSide = OPPOSITE_SIDE[input.side];\n const opposite = rawPosition(input, oppositeSide);\n const preferredOverflow = mainAxisOverflow(input, input.side, preferred);\n const oppositeOverflow = mainAxisOverflow(input, oppositeSide, opposite);\n const useOpposite = preferredOverflow > 0 && oppositeOverflow < preferredOverflow;\n const resolvedSide = useOpposite ? oppositeSide : input.side;\n const position = useOpposite ? opposite : preferred;\n const maxX = Math.max(input.viewportPadPx, input.viewportWidth - input.popupWidth - input.viewportPadPx);\n const maxY = Math.max(input.viewportPadPx, input.viewportHeight - input.popupHeight - input.viewportPadPx);\n\n return {\n x: Math.min(Math.max(position.x, input.viewportPadPx), maxX),\n y: Math.min(Math.max(position.y, input.viewportPadPx), maxY),\n resolvedSide,\n };\n}\n","@import '../../utils/control-density.css';\n@import '../../utils/key-hint.css';\n\n.tooltip-popup {\n box-sizing: border-box;\n background-color: var(--color-background-primary);\n border-radius: var(--ds-control-radius, var(--dimension-radius-025));\n box-shadow: var(--effect-elevation-elevated-floating);\n white-space: nowrap;\n pointer-events: none;\n animation: tooltipFadeIn var(--effect-motion-short-2) forwards;\n will-change: transform;\n backface-visibility: hidden;\n}\n\n/* Warm handoff between nearby triggers — no enter fade (avoids 20–100ms lag). */\n.tooltip-popup--instant {\n animation: none;\n opacity: 1;\n}\n\n.tooltip-popup--closing {\n animation: tooltipFadeOut var(--effect-motion-short-3) forwards;\n}\n\n/* Density: md / sm / xs via `.ds-control--*` on `.tooltip-inner`. */\n.tooltip-inner {\n box-sizing: border-box;\n height: var(--ds-control-height, var(--dimension-size-400));\n display: flex;\n align-items: center;\n gap: var(--ds-control-gap, var(--dimension-space-050));\n padding: 0 var(--ds-control-padding-inline, var(--dimension-space-075));\n}\n\n/*\n * Label layout lives on ds-text (metric-box + control label-inset).\n * NOTE: Stencil scopes this to `ds-text.sc-ds-tooltip`, but portaled\n * createElement ds-text loses that class when Text's <Host class> renders.\n * `renderPopupContent` therefore also sets these as inline styles.\n */\n.tooltip-inner > ds-text {\n flex-shrink: 0;\n min-width: max-content;\n max-width: none;\n padding: 0 var(--ds-control-label-inset, var(--dimension-space-025));\n color: var(--color-foreground-primary);\n}\n\n@keyframes tooltipFadeIn {\n from { opacity: 0; }\n to { opacity: 1; }\n}\n\n@keyframes tooltipFadeOut {\n from { opacity: 1; }\n to { opacity: 0; }\n}\n\n@media (prefers-reduced-motion: reduce) {\n .tooltip-popup,\n .tooltip-popup--instant {\n animation: none;\n opacity: 1;\n }\n\n .tooltip-popup--closing {\n animation: none;\n opacity: 0;\n }\n}\n","import { Component, Prop, Element, Watch, h, Host } from '@stencil/core';\nimport {\n CONTROL_TEXT_VARIANT,\n resolveCssLengthPx,\n resolveCssTimeMs,\n resolveMotionTimeMs,\n TOKEN_CSS_LENGTHS,\n TOKEN_DEFAULTS,\n} from '../../utils';\nimport type { TextVariant } from '../Text/text-types';\nimport { shortcutKeyLabels } from '../../utils/shortcut-key';\nimport { computeTooltipPosition } from './tooltip-position';\n// Side-effect: register `ds-text` — the portal builds it via createElement, not JSX.\nimport '../Text/Text';\n\nexport type TooltipSide = 'top' | 'right' | 'bottom' | 'left';\nexport type TooltipAlign = 'start' | 'center' | 'end';\nexport type TooltipSize = 'md' | 'sm' | 'xs';\n\nconst FALLBACK_HEIGHT: Record<TooltipSize, string> = {\n md: TOKEN_DEFAULTS.size400,\n sm: TOKEN_DEFAULTS.size300,\n xs: TOKEN_DEFAULTS.size200,\n};\n\nlet lastDismissedAt = 0;\nlet tooltipIdCounter = 0;\n/** Currently open tooltip — force-cleared on warm handoff so tips don't cross-fade. */\nlet activeTooltip: Tooltip | null = null;\n\ntype DsTextEl = HTMLElement & {\n as: string;\n variant: TextVariant;\n emphasis: boolean;\n color: string;\n wrap: string;\n};\n\nfunction createDsText(opts: {\n variant: TextVariant;\n emphasis?: boolean;\n color?: string;\n wrap?: 'wrap' | 'nowrap' | 'balance' | 'pretty';\n text: string;\n}): DsTextEl {\n const el = document.createElement('ds-text') as DsTextEl;\n el.as = 'span';\n el.variant = opts.variant;\n el.emphasis = opts.emphasis ?? false;\n el.color = opts.color ?? 'inherit';\n if (opts.wrap) el.wrap = opts.wrap;\n el.textContent = opts.text;\n return el;\n}\n\n/**\n * Control-density label styles for portaled ds-text.\n * Scoped CSS requires `sc-ds-tooltip` on the host, but Text's `<Host class>`\n * overwrites imperative className — so these must be inline to stick.\n */\nfunction styleTooltipLabel(el: HTMLElement) {\n el.style.flexShrink = '0';\n el.style.minWidth = 'max-content';\n el.style.maxWidth = 'none';\n el.style.padding = '0 var(--ds-control-label-inset, var(--dimension-space-025))';\n el.style.color = 'var(--color-foreground-primary)';\n}\n\n/**\n * Imperative body portal for the popup.\n * Stencil must not own the portaled node — moving a VDOM child to `document.body`\n * causes recreate → re-portal → @State loops that freeze the page.\n */\n@Component({\n tag: 'ds-tooltip',\n styleUrl: 'Tooltip.css',\n scoped: true,\n})\nexport class Tooltip {\n @Element() el!: HTMLElement;\n\n /**\n * Tooltip text. Empty/whitespace skips show — useful when the wrapper must stay\n * mounted for layout/animation stability (e.g. PanelNav expand/collapse).\n */\n @Prop() label!: string;\n\n /** Control density (height, padding, type). */\n @Prop() size: TooltipSize = 'md';\n\n @Prop() side: TooltipSide = 'top';\n @Prop() align: TooltipAlign = 'center';\n /** Gap between anchor and tooltip — number (px) or TokoMo length. */\n @Prop() sideOffset: number | string = TOKEN_CSS_LENGTHS.space050;\n /** Cross-axis offset — number (px) or TokoMo length. */\n @Prop() alignOffset: number | string = 0;\n /**\n * Hover show delay before the tooltip appears.\n * Default: `--effect-animation-delay-medium-3` (1000ms). Accepts a number (ms)\n * or a TokoMo time token / `var(--effect-animation-delay-*)`. Applies to the\n * initial hover/focus show only — after a recent dismiss, reopen is instant.\n * Prefer the default; override only for denser chrome or rare/destructive actions.\n */\n @Prop() delay: number | string = TOKEN_DEFAULTS.animationDelayMedium3;\n @Prop() shortcutKey: string | undefined;\n @Prop() shortcutKeyPosition: 'start' | 'end' = 'end';\n\n private tooltipId = `ds-tooltip-${++tooltipIdCounter}`;\n private delayTimer: ReturnType<typeof setTimeout> | null = null;\n private closeTimer: ReturnType<typeof setTimeout> | null = null;\n private anchor: HTMLElement | null = null;\n private popupEl: HTMLElement | null = null;\n private positionObserver: ResizeObserver | null = null;\n private anchorObserver: MutationObserver | null = null;\n private positionFrame: number | null = null;\n private skipEnterAnimation = false;\n private isOpen = false;\n private lastInteractionWasKeyboard = false;\n private pointerEnterHandler = (event: PointerEvent) => {\n if (event.pointerType === 'touch') return;\n this.show();\n };\n private pointerLeaveHandler = (event: PointerEvent) => {\n if (event.pointerType === 'touch') return;\n this.hide();\n };\n private pointerDownHandler = (event: PointerEvent) => {\n this.lastInteractionWasKeyboard = false;\n if (event.pointerType === 'touch' && (this.isOpen || this.popupEl)) this.hideInstant();\n };\n private keyDownHandler = () => {\n this.lastInteractionWasKeyboard = true;\n };\n /** focusin/focusout so nested focus targets (e.g. ds-button-* inner button) still open the tip. */\n private focusHandler = () => {\n if (this.lastInteractionWasKeyboard || this.anchor?.matches(':focus-visible')) this.show();\n };\n private blurHandler: (e: FocusEvent) => void = (e) => {\n const next = e.relatedTarget as Node | null;\n if (next && this.anchor?.contains(next)) return;\n this.hide();\n };\n private scrollResizeHandler = () => {\n if (this.positionFrame !== null) return;\n this.positionFrame = requestAnimationFrame(() => {\n this.positionFrame = null;\n this.calculatePosition();\n });\n };\n private escapeHandler = (event: KeyboardEvent) => {\n if (event.key !== 'Escape' || !this.isOpen) return;\n event.preventDefault();\n this.hide();\n };\n\n componentDidLoad() {\n this.bindAnchor();\n this.anchorObserver = new MutationObserver(() => this.handleSlotChange());\n this.anchorObserver.observe(this.el, { childList: true });\n }\n\n disconnectedCallback() {\n if (activeTooltip === this) activeTooltip = null;\n this.anchorObserver?.disconnect();\n this.anchorObserver = null;\n this.unbindAnchor();\n this.clearTimers();\n this.destroyPopup();\n }\n\n @Watch('label')\n @Watch('size')\n @Watch('side')\n @Watch('align')\n @Watch('sideOffset')\n @Watch('alignOffset')\n @Watch('shortcutKey')\n @Watch('shortcutKeyPosition')\n onContentOrPositionChange() {\n if (!this.label?.trim()) {\n if (this.isOpen || this.popupEl) this.hideInstant();\n return;\n }\n if (!this.popupEl || !this.isOpen) return;\n this.renderPopupContent();\n this.schedulePosition();\n }\n\n private get viewportPadPx(): number {\n return resolveCssLengthPx(TOKEN_DEFAULTS.space050, TOKEN_DEFAULTS.space050);\n }\n\n private get sideOffsetPx(): number {\n return resolveCssLengthPx(this.sideOffset, TOKEN_DEFAULTS.space050);\n }\n\n private get alignOffsetPx(): number {\n return resolveCssLengthPx(this.alignOffset, 0);\n }\n\n private get hoverDelayMs(): number {\n return resolveCssTimeMs(this.delay, TOKEN_DEFAULTS.animationDelayMedium3);\n }\n\n private get instantReopenMs(): number {\n return resolveCssTimeMs(\n TOKEN_DEFAULTS.animationDurationMedium1,\n TOKEN_DEFAULTS.animationDurationMedium1,\n );\n }\n\n private get fadeOutMs(): number {\n return resolveMotionTimeMs(TOKEN_DEFAULTS.motionShort3, TOKEN_DEFAULTS.animationDurationShort3);\n }\n\n private get tooltipFallbackWidthPx(): number {\n return resolveCssLengthPx(TOKEN_DEFAULTS.tooltipFallbackWidth, TOKEN_DEFAULTS.tooltipFallbackWidth);\n }\n\n private get tooltipFallbackHeightPx(): number {\n const token = FALLBACK_HEIGHT[this.size];\n return resolveCssLengthPx(token, token);\n }\n\n private bindAnchor() {\n const slot = this.el.querySelector('slot') as HTMLSlotElement | null;\n const slotted = slot?.assignedElements?.() ?? [];\n const child = (slotted[0] ?? this.el.firstElementChild) as HTMLElement | null;\n if (!child || child === this.anchor) return;\n this.anchor = child;\n child.addEventListener('pointerenter', this.pointerEnterHandler);\n child.addEventListener('pointerleave', this.pointerLeaveHandler);\n child.addEventListener('pointerdown', this.pointerDownHandler);\n child.addEventListener('keydown', this.keyDownHandler);\n child.addEventListener('focusin', this.focusHandler);\n child.addEventListener('focusout', this.blurHandler);\n }\n\n private unbindAnchor() {\n if (!this.anchor) return;\n this.unlinkDescribedBy();\n this.anchor.removeEventListener('pointerenter', this.pointerEnterHandler);\n this.anchor.removeEventListener('pointerleave', this.pointerLeaveHandler);\n this.anchor.removeEventListener('pointerdown', this.pointerDownHandler);\n this.anchor.removeEventListener('keydown', this.keyDownHandler);\n this.anchor.removeEventListener('focusin', this.focusHandler);\n this.anchor.removeEventListener('focusout', this.blurHandler);\n this.anchor = null;\n }\n\n private linkDescribedBy() {\n if (!this.anchor || !this.popupEl) return;\n const ids = new Set((this.anchor.getAttribute('aria-describedby') ?? '').split(/\\s+/).filter(Boolean));\n ids.add(this.tooltipId);\n this.anchor.setAttribute('aria-describedby', Array.from(ids).join(' '));\n }\n\n private unlinkDescribedBy() {\n if (!this.anchor) return;\n const ids = (this.anchor.getAttribute('aria-describedby') ?? '')\n .split(/\\s+/)\n .filter(id => id && id !== this.tooltipId);\n if (ids.length) this.anchor.setAttribute('aria-describedby', ids.join(' '));\n else this.anchor.removeAttribute('aria-describedby');\n }\n\n private handleSlotChange = () => {\n const slot = this.el.querySelector('slot') as HTMLSlotElement | null;\n const next = (slot?.assignedElements?.()[0] ?? this.el.firstElementChild) as HTMLElement | null;\n if (next === this.anchor) return;\n if (this.isOpen || this.popupEl) this.hideInstant();\n this.unbindAnchor();\n this.bindAnchor();\n };\n\n private clearTimers() {\n if (this.delayTimer) { clearTimeout(this.delayTimer); this.delayTimer = null; }\n if (this.closeTimer) { clearTimeout(this.closeTimer); this.closeTimer = null; }\n }\n\n private setupOpenListeners() {\n window.addEventListener('scroll', this.scrollResizeHandler, true);\n window.addEventListener('resize', this.scrollResizeHandler);\n document.addEventListener('keydown', this.escapeHandler);\n }\n\n private teardownOpenListeners() {\n window.removeEventListener('scroll', this.scrollResizeHandler, true);\n window.removeEventListener('resize', this.scrollResizeHandler);\n document.removeEventListener('keydown', this.escapeHandler);\n if (this.positionFrame !== null) {\n cancelAnimationFrame(this.positionFrame);\n this.positionFrame = null;\n }\n }\n\n private destroyPopup() {\n this.teardownOpenListeners();\n this.positionObserver?.disconnect();\n this.positionObserver = null;\n this.unlinkDescribedBy();\n if (!this.popupEl) return;\n this.popupEl.remove();\n this.popupEl = null;\n }\n\n /**\n * Position after `ds-text` upgrades and lays out. Measuring synchronously in\n * `mountPopup` reads a collapsed/fallback width and places left/right tips wrong.\n */\n private schedulePosition() {\n if (!this.popupEl) return;\n\n const reapplyLabelStyles = () => {\n const label = this.popupEl?.querySelector(':scope > .tooltip-inner > ds-text');\n if (label instanceof HTMLElement) styleTooltipLabel(label);\n };\n\n requestAnimationFrame(() => {\n reapplyLabelStyles();\n this.calculatePosition();\n requestAnimationFrame(() => {\n reapplyLabelStyles();\n this.calculatePosition();\n });\n });\n\n this.positionObserver?.disconnect();\n this.positionObserver = new ResizeObserver(() => this.calculatePosition());\n this.positionObserver.observe(this.popupEl);\n if (this.anchor) this.positionObserver.observe(this.anchor);\n }\n\n /** Drop the open tip immediately (warm handoff to another tooltip). */\n private hideInstant() {\n this.clearTimers();\n lastDismissedAt = Date.now();\n if (activeTooltip === this) activeTooltip = null;\n this.destroyPopup();\n this.isOpen = false;\n this.skipEnterAnimation = false;\n }\n\n private show() {\n // Empty label = wrapper present for DOM stability (e.g. PanelNav expand/collapse)\n // but no tip should appear.\n if (!this.label?.trim()) return;\n this.clearTimers();\n let instant = Date.now() - lastDismissedAt < this.instantReopenMs;\n if (activeTooltip && activeTooltip !== this) {\n activeTooltip.hideInstant();\n instant = true;\n }\n // eslint-disable-next-line @typescript-eslint/no-this-alias -- module singleton tracks the active instance\n activeTooltip = this;\n this.skipEnterAnimation = instant;\n if (instant) {\n this.mountPopup();\n return;\n }\n this.delayTimer = setTimeout(() => {\n this.delayTimer = null;\n if (!this.label?.trim()) return;\n this.mountPopup();\n }, this.hoverDelayMs);\n }\n\n private hide() {\n this.clearTimers();\n if (!this.popupEl && !this.isOpen) return;\n lastDismissedAt = Date.now();\n if (!this.popupEl) {\n this.isOpen = false;\n return;\n }\n this.popupEl.classList.remove('tooltip-popup--instant');\n this.popupEl.classList.add('tooltip-popup--closing');\n if (this.fadeOutMs === 0) {\n if (activeTooltip === this) activeTooltip = null;\n this.destroyPopup();\n this.isOpen = false;\n this.skipEnterAnimation = false;\n return;\n }\n this.closeTimer = setTimeout(() => {\n this.closeTimer = null;\n if (activeTooltip === this) activeTooltip = null;\n this.destroyPopup();\n this.isOpen = false;\n this.skipEnterAnimation = false;\n }, this.fadeOutMs);\n }\n\n private mountPopup() {\n if (!this.popupEl) {\n const tip = document.createElement('div');\n tip.id = this.tooltipId;\n tip.setAttribute('role', 'tooltip');\n // `sc-ds-tooltip` is required for Stencil scoped CSS to match outside the host.\n tip.className = 'tooltip-popup sc-ds-tooltip';\n Object.assign(tip.style, {\n position: 'fixed',\n left: '0',\n top: '0',\n zIndex: 'var(--dimension-z-index-tooltip)',\n pointerEvents: 'none',\n });\n document.body.appendChild(tip);\n this.popupEl = tip;\n }\n\n this.setupOpenListeners();\n this.linkDescribedBy();\n this.popupEl.classList.toggle('tooltip-popup--instant', this.skipEnterAnimation);\n this.popupEl.classList.remove('tooltip-popup--closing');\n this.renderPopupContent();\n this.schedulePosition();\n this.isOpen = true;\n }\n\n private renderPopupContent() {\n if (!this.popupEl) return;\n const textVariant = CONTROL_TEXT_VARIANT[this.size];\n const density =\n this.size === 'md' ? 'ds-control--md' : this.size === 'sm' ? 'ds-control--sm' : 'ds-control--xs';\n // Every layout node needs `sc-ds-tooltip` so scoped selectors (`.foo.sc-ds-tooltip`) match.\n const sc = 'sc-ds-tooltip';\n\n const inner = document.createElement('div');\n inner.className = `tooltip-inner ${density} ${sc}`;\n\n const appendShortcut = (position: 'start' | 'end') => {\n if (!this.shortcutKey || this.shortcutKeyPosition !== position) return;\n const group = document.createElement('span');\n group.className = `key-hint-group ${sc}`;\n group.setAttribute('aria-hidden', 'true');\n\n for (const label of shortcutKeyLabels(this.shortcutKey)) {\n const hint = document.createElement('span');\n const wide = Array.from(label).length > 1 ? ' key-hint--wide' : '';\n hint.className = `key-hint${wide} ${sc}`;\n const text = document.createElement('span');\n text.className = `key-hint__label ${sc}`;\n text.textContent = label;\n hint.appendChild(text);\n group.appendChild(hint);\n }\n inner.appendChild(group);\n };\n\n appendShortcut('start');\n\n // ds-text is the layout box (metric-box + 2px control label-inset).\n // Inline styles required — see styleTooltipLabel.\n const label = createDsText({ variant: textVariant, wrap: 'nowrap', text: this.label });\n styleTooltipLabel(label);\n inner.appendChild(label);\n\n appendShortcut('end');\n\n this.popupEl.replaceChildren(inner);\n }\n\n private calculatePosition() {\n if (!this.anchor || !this.popupEl) return;\n const tip = this.popupEl;\n const a = this.anchor.getBoundingClientRect();\n const tw = tip.offsetWidth || this.tooltipFallbackWidthPx;\n const th = tip.offsetHeight || this.tooltipFallbackHeightPx;\n const { x, y, resolvedSide } = computeTooltipPosition({\n anchorRect: a,\n popupWidth: tw,\n popupHeight: th,\n side: this.side,\n align: this.align,\n sideOffsetPx: this.sideOffsetPx,\n alignOffsetPx: this.alignOffsetPx,\n viewportPadPx: this.viewportPadPx,\n viewportWidth: window.innerWidth,\n viewportHeight: window.innerHeight,\n });\n tip.dataset.side = resolvedSide;\n tip.style.transform = `translate(${Math.round(x)}px, ${Math.round(y)}px)`;\n }\n\n render() {\n return (\n <Host style={{ display: 'contents' }}>\n <slot onSlotchange={this.handleSlotChange} />\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{p as o,H as i,h as s,a as r,t as n}from"./index.js";const e={FlagAustria:()=>import("@ds-mo/icons/svg/flags/FlagAustria").then((o=>o.FlagAustria)),FlagBelgium:()=>import("@ds-mo/icons/svg/flags/FlagBelgium").then((o=>o.FlagBelgium)),FlagBulgaria:()=>import("@ds-mo/icons/svg/flags/FlagBulgaria").then((o=>o.FlagBulgaria)),FlagCanada:()=>import("@ds-mo/icons/svg/flags/FlagCanada").then((o=>o.FlagCanada)),FlagCroatia:()=>import("@ds-mo/icons/svg/flags/FlagCroatia").then((o=>o.FlagCroatia)),FlagCyprus:()=>import("@ds-mo/icons/svg/flags/FlagCyprus").then((o=>o.FlagCyprus)),FlagCzechRepublic:()=>import("@ds-mo/icons/svg/flags/FlagCzechRepublic").then((o=>o.FlagCzechRepublic)),FlagDenmark:()=>import("@ds-mo/icons/svg/flags/FlagDenmark").then((o=>o.FlagDenmark)),FlagEU:()=>import("@ds-mo/icons/svg/flags/FlagEU").then((o=>o.FlagEU)),FlagEstonia:()=>import("@ds-mo/icons/svg/flags/FlagEstonia").then((o=>o.FlagEstonia)),FlagFinland:()=>import("@ds-mo/icons/svg/flags/FlagFinland").then((o=>o.FlagFinland)),FlagFrance:()=>import("@ds-mo/icons/svg/flags/FlagFrance").then((o=>o.FlagFrance)),FlagGermany:()=>import("@ds-mo/icons/svg/flags/FlagGermany").then((o=>o.FlagGermany)),FlagGreece:()=>import("@ds-mo/icons/svg/flags/FlagGreece").then((o=>o.FlagGreece)),FlagHungary:()=>import("@ds-mo/icons/svg/flags/FlagHungary").then((o=>o.FlagHungary)),FlagIreland:()=>import("@ds-mo/icons/svg/flags/FlagIreland").then((o=>o.FlagIreland)),FlagItaly:()=>import("@ds-mo/icons/svg/flags/FlagItaly").then((o=>o.FlagItaly)),FlagLatvia:()=>import("@ds-mo/icons/svg/flags/FlagLatvia").then((o=>o.FlagLatvia)),FlagLithuania:()=>import("@ds-mo/icons/svg/flags/FlagLithuania").then((o=>o.FlagLithuania)),FlagLuxembourg:()=>import("@ds-mo/icons/svg/flags/FlagLuxembourg").then((o=>o.FlagLuxembourg)),FlagMalta:()=>import("@ds-mo/icons/svg/flags/FlagMalta").then((o=>o.FlagMalta)),FlagMexico:()=>import("@ds-mo/icons/svg/flags/FlagMexico").then((o=>o.FlagMexico)),FlagNetherlands:()=>import("@ds-mo/icons/svg/flags/FlagNetherlands").then((o=>o.FlagNetherlands)),FlagPoland:()=>import("@ds-mo/icons/svg/flags/FlagPoland").then((o=>o.FlagPoland)),FlagPortugal:()=>import("@ds-mo/icons/svg/flags/FlagPortugal").then((o=>o.FlagPortugal)),FlagRomania:()=>import("@ds-mo/icons/svg/flags/FlagRomania").then((o=>o.FlagRomania)),FlagSlovakia:()=>import("@ds-mo/icons/svg/flags/FlagSlovakia").then((o=>o.FlagSlovakia)),FlagSlovenia:()=>import("@ds-mo/icons/svg/flags/FlagSlovenia").then((o=>o.FlagSlovenia)),FlagSpain:()=>import("@ds-mo/icons/svg/flags/FlagSpain").then((o=>o.FlagSpain)),FlagSweden:()=>import("@ds-mo/icons/svg/flags/FlagSweden").then((o=>o.FlagSweden)),FlagUnitedKingdom:()=>import("@ds-mo/icons/svg/flags/FlagUnitedKingdom").then((o=>o.FlagUnitedKingdom)),FlagUnitedStates:()=>import("@ds-mo/icons/svg/flags/FlagUnitedStates").then((o=>o.FlagUnitedStates))};const c={AI:()=>import("@ds-mo/icons/svg/AI").then((o=>o.AI)),AIChip:()=>import("@ds-mo/icons/svg/AIChip").then((o=>o.AIChip)),AINew:()=>import("@ds-mo/icons/svg/AINew").then((o=>o.AINew)),AISparkle:()=>import("@ds-mo/icons/svg/AISparkle").then((o=>o.AISparkle)),AUX:()=>import("@ds-mo/icons/svg/AUX").then((o=>o.AUX)),AUXFilled:()=>import("@ds-mo/icons/svg/AUXFilled").then((o=>o.AUXFilled)),AndroidFilled:()=>import("@ds-mo/icons/svg/AndroidFilled").then((o=>o.AndroidFilled)),ArrowDown:()=>import("@ds-mo/icons/svg/ArrowDown").then((o=>o.ArrowDown)),ArrowLeft:()=>import("@ds-mo/icons/svg/ArrowLeft").then((o=>o.ArrowLeft)),ArrowPath:()=>import("@ds-mo/icons/svg/ArrowPath").then((o=>o.ArrowPath)),ArrowRight:()=>import("@ds-mo/icons/svg/ArrowRight").then((o=>o.ArrowRight)),ArrowUp:()=>import("@ds-mo/icons/svg/ArrowUp").then((o=>o.ArrowUp)),ArrowsDiagonal:()=>import("@ds-mo/icons/svg/ArrowsDiagonal").then((o=>o.ArrowsDiagonal)),ArrowsDiff:()=>import("@ds-mo/icons/svg/ArrowsDiff").then((o=>o.ArrowsDiff)),ArrowsDiffDisabled:()=>import("@ds-mo/icons/svg/ArrowsDiffDisabled").then((o=>o.ArrowsDiffDisabled)),ArrowsVertical:()=>import("@ds-mo/icons/svg/ArrowsVertical").then((o=>o.ArrowsVertical)),AtSign:()=>import("@ds-mo/icons/svg/AtSign").then((o=>o.AtSign)),Avatar:()=>import("@ds-mo/icons/svg/Avatar").then((o=>o.Avatar)),BackslashBrackets:()=>import("@ds-mo/icons/svg/BackslashBrackets").then((o=>o.BackslashBrackets)),BatteryCharging:()=>import("@ds-mo/icons/svg/BatteryCharging").then((o=>o.BatteryCharging)),BatteryEmpty:()=>import("@ds-mo/icons/svg/BatteryEmpty").then((o=>o.BatteryEmpty)),BatteryFull:()=>import("@ds-mo/icons/svg/BatteryFull").then((o=>o.BatteryFull)),BatteryHalf:()=>import("@ds-mo/icons/svg/BatteryHalf").then((o=>o.BatteryHalf)),BatteryLow:()=>import("@ds-mo/icons/svg/BatteryLow").then((o=>o.BatteryLow)),Beaker:()=>import("@ds-mo/icons/svg/Beaker").then((o=>o.Beaker)),Bell:()=>import("@ds-mo/icons/svg/Bell").then((o=>o.Bell)),BellCircle:()=>import("@ds-mo/icons/svg/BellCircle").then((o=>o.BellCircle)),BellExclamation:()=>import("@ds-mo/icons/svg/BellExclamation").then((o=>o.BellExclamation)),BellFilled:()=>import("@ds-mo/icons/svg/BellFilled").then((o=>o.BellFilled)),BellRinging:()=>import("@ds-mo/icons/svg/BellRinging").then((o=>o.BellRinging)),BellWifi:()=>import("@ds-mo/icons/svg/BellWifi").then((o=>o.BellWifi)),BlackWhite:()=>import("@ds-mo/icons/svg/BlackWhite").then((o=>o.BlackWhite)),BlankUI:()=>import("@ds-mo/icons/svg/BlankUI").then((o=>o.BlankUI)),Bluetooth:()=>import("@ds-mo/icons/svg/Bluetooth").then((o=>o.Bluetooth)),Bolt:()=>import("@ds-mo/icons/svg/Bolt").then((o=>o.Bolt)),BoltFilled:()=>import("@ds-mo/icons/svg/BoltFilled").then((o=>o.BoltFilled)),Bookmark:()=>import("@ds-mo/icons/svg/Bookmark").then((o=>o.Bookmark)),Box:()=>import("@ds-mo/icons/svg/Box").then((o=>o.Box)),Braces:()=>import("@ds-mo/icons/svg/Braces").then((o=>o.Braces)),Bug:()=>import("@ds-mo/icons/svg/Bug").then((o=>o.Bug)),BuildingFacility:()=>import("@ds-mo/icons/svg/BuildingFacility").then((o=>o.BuildingFacility)),BuildingHome:()=>import("@ds-mo/icons/svg/BuildingHome").then((o=>o.BuildingHome)),BuildingOffice:()=>import("@ds-mo/icons/svg/BuildingOffice").then((o=>o.BuildingOffice)),BuildingPublic:()=>import("@ds-mo/icons/svg/BuildingPublic").then((o=>o.BuildingPublic)),BuildingShop:()=>import("@ds-mo/icons/svg/BuildingShop").then((o=>o.BuildingShop)),Bulb:()=>import("@ds-mo/icons/svg/Bulb").then((o=>o.Bulb)),Calculator:()=>import("@ds-mo/icons/svg/Calculator").then((o=>o.Calculator)),Calendar:()=>import("@ds-mo/icons/svg/Calendar").then((o=>o.Calendar)),CalendarClock:()=>import("@ds-mo/icons/svg/CalendarClock").then((o=>o.CalendarClock)),CameraA:()=>import("@ds-mo/icons/svg/CameraA").then((o=>o.CameraA)),CameraB:()=>import("@ds-mo/icons/svg/CameraB").then((o=>o.CameraB)),Card:()=>import("@ds-mo/icons/svg/Card").then((o=>o.Card)),CardPerson:()=>import("@ds-mo/icons/svg/CardPerson").then((o=>o.CardPerson)),Cart:()=>import("@ds-mo/icons/svg/Cart").then((o=>o.Cart)),Chart:()=>import("@ds-mo/icons/svg/Chart").then((o=>o.Chart)),Check:()=>import("@ds-mo/icons/svg/Check").then((o=>o.Check)),CheckCircle:()=>import("@ds-mo/icons/svg/CheckCircle").then((o=>o.CheckCircle)),CheckCircleFilled:()=>import("@ds-mo/icons/svg/CheckCircleFilled").then((o=>o.CheckCircleFilled)),CheckDouble:()=>import("@ds-mo/icons/svg/CheckDouble").then((o=>o.CheckDouble)),ChevronDown:()=>import("@ds-mo/icons/svg/ChevronDown").then((o=>o.ChevronDown)),ChevronLeft:()=>import("@ds-mo/icons/svg/ChevronLeft").then((o=>o.ChevronLeft)),ChevronLeftDouble:()=>import("@ds-mo/icons/svg/ChevronLeftDouble").then((o=>o.ChevronLeftDouble)),ChevronRight:()=>import("@ds-mo/icons/svg/ChevronRight").then((o=>o.ChevronRight)),ChevronRightDouble:()=>import("@ds-mo/icons/svg/ChevronRightDouble").then((o=>o.ChevronRightDouble)),ChevronUp:()=>import("@ds-mo/icons/svg/ChevronUp").then((o=>o.ChevronUp)),ChevronUpDown:()=>import("@ds-mo/icons/svg/ChevronUpDown").then((o=>o.ChevronUpDown)),Circle:()=>import("@ds-mo/icons/svg/Circle").then((o=>o.Circle)),CircleArrow:()=>import("@ds-mo/icons/svg/CircleArrow").then((o=>o.CircleArrow)),CircleArrowsDiff:()=>import("@ds-mo/icons/svg/CircleArrowsDiff").then((o=>o.CircleArrowsDiff)),CircleArrowsDiffDisabled:()=>import("@ds-mo/icons/svg/CircleArrowsDiffDisabled").then((o=>o.CircleArrowsDiffDisabled)),CircleConcentricFilled:()=>import("@ds-mo/icons/svg/CircleConcentricFilled").then((o=>o.CircleConcentricFilled)),CircleConcentricThree:()=>import("@ds-mo/icons/svg/CircleConcentricThree").then((o=>o.CircleConcentricThree)),CircleConcentricTwo:()=>import("@ds-mo/icons/svg/CircleConcentricTwo").then((o=>o.CircleConcentricTwo)),CircleExclamation:()=>import("@ds-mo/icons/svg/CircleExclamation").then((o=>o.CircleExclamation)),CircleExclamationFilled:()=>import("@ds-mo/icons/svg/CircleExclamationFilled").then((o=>o.CircleExclamationFilled)),CircleFastForward:()=>import("@ds-mo/icons/svg/CircleFastForward").then((o=>o.CircleFastForward)),CircleFilled:()=>import("@ds-mo/icons/svg/CircleFilled").then((o=>o.CircleFilled)),CircleGrid:()=>import("@ds-mo/icons/svg/CircleGrid").then((o=>o.CircleGrid)),CirclePlay:()=>import("@ds-mo/icons/svg/CirclePlay").then((o=>o.CirclePlay)),CircleQuestion:()=>import("@ds-mo/icons/svg/CircleQuestion").then((o=>o.CircleQuestion)),CircleSlash:()=>import("@ds-mo/icons/svg/CircleSlash").then((o=>o.CircleSlash)),Clipboard:()=>import("@ds-mo/icons/svg/Clipboard").then((o=>o.Clipboard)),ClipboardCheck:()=>import("@ds-mo/icons/svg/ClipboardCheck").then((o=>o.ClipboardCheck)),Clock:()=>import("@ds-mo/icons/svg/Clock").then((o=>o.Clock)),ClockDefer:()=>import("@ds-mo/icons/svg/ClockDefer").then((o=>o.ClockDefer)),ClockFilled:()=>import("@ds-mo/icons/svg/ClockFilled").then((o=>o.ClockFilled)),ClockSixteenHour:()=>import("@ds-mo/icons/svg/ClockSixteenHour").then((o=>o.ClockSixteenHour)),Cloud:()=>import("@ds-mo/icons/svg/Cloud").then((o=>o.Cloud)),CloudEllipses:()=>import("@ds-mo/icons/svg/CloudEllipses").then((o=>o.CloudEllipses)),CloudLightning:()=>import("@ds-mo/icons/svg/CloudLightning").then((o=>o.CloudLightning)),CloudRain:()=>import("@ds-mo/icons/svg/CloudRain").then((o=>o.CloudRain)),CloudRainSun:()=>import("@ds-mo/icons/svg/CloudRainSun").then((o=>o.CloudRainSun)),CloudSun:()=>import("@ds-mo/icons/svg/CloudSun").then((o=>o.CloudSun)),CloudWind:()=>import("@ds-mo/icons/svg/CloudWind").then((o=>o.CloudWind)),Cluster:()=>import("@ds-mo/icons/svg/Cluster").then((o=>o.Cluster)),Coin:()=>import("@ds-mo/icons/svg/Coin").then((o=>o.Coin)),CoinStack:()=>import("@ds-mo/icons/svg/CoinStack").then((o=>o.CoinStack)),CoinStackGeneral:()=>import("@ds-mo/icons/svg/CoinStackGeneral").then((o=>o.CoinStackGeneral)),Compass:()=>import("@ds-mo/icons/svg/Compass").then((o=>o.Compass)),Copy:()=>import("@ds-mo/icons/svg/Copy").then((o=>o.Copy)),Crop:()=>import("@ds-mo/icons/svg/Crop").then((o=>o.Crop)),Cross:()=>import("@ds-mo/icons/svg/Cross").then((o=>o.Cross)),CrossCircle:()=>import("@ds-mo/icons/svg/CrossCircle").then((o=>o.CrossCircle)),CrossCircleFilled:()=>import("@ds-mo/icons/svg/CrossCircleFilled").then((o=>o.CrossCircleFilled)),Cube:()=>import("@ds-mo/icons/svg/Cube").then((o=>o.Cube)),Cup:()=>import("@ds-mo/icons/svg/Cup").then((o=>o.Cup)),CursorPointer:()=>import("@ds-mo/icons/svg/CursorPointer").then((o=>o.CursorPointer)),CursorPointerMinus:()=>import("@ds-mo/icons/svg/CursorPointerMinus").then((o=>o.CursorPointerMinus)),CursorPointerPlus:()=>import("@ds-mo/icons/svg/CursorPointerPlus").then((o=>o.CursorPointerPlus)),Dashboard:()=>import("@ds-mo/icons/svg/Dashboard").then((o=>o.Dashboard)),DeviceAIDashcamPlus:()=>import("@ds-mo/icons/svg/DeviceAIDashcamPlus").then((o=>o.DeviceAIDashcamPlus)),DeviceAssetTracker:()=>import("@ds-mo/icons/svg/DeviceAssetTracker").then((o=>o.DeviceAssetTracker)),DeviceDVR:()=>import("@ds-mo/icons/svg/DeviceDVR").then((o=>o.DeviceDVR)),DeviceDashcam:()=>import("@ds-mo/icons/svg/DeviceDashcam").then((o=>o.DeviceDashcam)),DeviceDashcamLiveStream:()=>import("@ds-mo/icons/svg/DeviceDashcamLiveStream").then((o=>o.DeviceDashcamLiveStream)),DeviceDoorSensor:()=>import("@ds-mo/icons/svg/DeviceDoorSensor").then((o=>o.DeviceDoorSensor)),DeviceMobile:()=>import("@ds-mo/icons/svg/DeviceMobile").then((o=>o.DeviceMobile)),DeviceMobileTwo:()=>import("@ds-mo/icons/svg/DeviceMobileTwo").then((o=>o.DeviceMobileTwo)),DeviceOmnicam:()=>import("@ds-mo/icons/svg/DeviceOmnicam").then((o=>o.DeviceOmnicam)),DeviceSensor:()=>import("@ds-mo/icons/svg/DeviceSensor").then((o=>o.DeviceSensor)),DeviceTablet:()=>import("@ds-mo/icons/svg/DeviceTablet").then((o=>o.DeviceTablet)),DeviceVehicleGateway:()=>import("@ds-mo/icons/svg/DeviceVehicleGateway").then((o=>o.DeviceVehicleGateway)),Devices:()=>import("@ds-mo/icons/svg/Devices").then((o=>o.Devices)),Document:()=>import("@ds-mo/icons/svg/Document").then((o=>o.Document)),DocumentArrow:()=>import("@ds-mo/icons/svg/DocumentArrow").then((o=>o.DocumentArrow)),DocumentChart:()=>import("@ds-mo/icons/svg/DocumentChart").then((o=>o.DocumentChart)),DocumentDollar:()=>import("@ds-mo/icons/svg/DocumentDollar").then((o=>o.DocumentDollar)),DocumentGear:()=>import("@ds-mo/icons/svg/DocumentGear").then((o=>o.DocumentGear)),DocumentInverted:()=>import("@ds-mo/icons/svg/DocumentInverted").then((o=>o.DocumentInverted)),DocumentPencil:()=>import("@ds-mo/icons/svg/DocumentPencil").then((o=>o.DocumentPencil)),DocumentPlus:()=>import("@ds-mo/icons/svg/DocumentPlus").then((o=>o.DocumentPlus)),DocumentQuestion:()=>import("@ds-mo/icons/svg/DocumentQuestion").then((o=>o.DocumentQuestion)),DocumentReceipt:()=>import("@ds-mo/icons/svg/DocumentReceipt").then((o=>o.DocumentReceipt)),DocumentStacked:()=>import("@ds-mo/icons/svg/DocumentStacked").then((o=>o.DocumentStacked)),Dot:()=>import("@ds-mo/icons/svg/Dot").then((o=>o.Dot)),DotFilled:()=>import("@ds-mo/icons/svg/DotFilled").then((o=>o.DotFilled)),DotPath:()=>import("@ds-mo/icons/svg/DotPath").then((o=>o.DotPath)),Download:()=>import("@ds-mo/icons/svg/Download").then((o=>o.Download)),Drag:()=>import("@ds-mo/icons/svg/Drag").then((o=>o.Drag)),Ellipses:()=>import("@ds-mo/icons/svg/Ellipses").then((o=>o.Ellipses)),Email:()=>import("@ds-mo/icons/svg/Email").then((o=>o.Email)),Engine:()=>import("@ds-mo/icons/svg/Engine").then((o=>o.Engine)),Enter:()=>import("@ds-mo/icons/svg/Enter").then((o=>o.Enter)),EntityAsset:()=>import("@ds-mo/icons/svg/EntityAsset").then((o=>o.EntityAsset)),EntityAssetFilled:()=>import("@ds-mo/icons/svg/EntityAssetFilled").then((o=>o.EntityAssetFilled)),EntityDriver:()=>import("@ds-mo/icons/svg/EntityDriver").then((o=>o.EntityDriver)),EntityDriverFilled:()=>import("@ds-mo/icons/svg/EntityDriverFilled").then((o=>o.EntityDriverFilled)),EntityTravelGroup:()=>import("@ds-mo/icons/svg/EntityTravelGroup").then((o=>o.EntityTravelGroup)),EntityTravelGroupFilled:()=>import("@ds-mo/icons/svg/EntityTravelGroupFilled").then((o=>o.EntityTravelGroupFilled)),EntityVehicle:()=>import("@ds-mo/icons/svg/EntityVehicle").then((o=>o.EntityVehicle)),EntityVehicleCharging:()=>import("@ds-mo/icons/svg/EntityVehicleCharging").then((o=>o.EntityVehicleCharging)),EntityVehicleChargingFilled:()=>import("@ds-mo/icons/svg/EntityVehicleChargingFilled").then((o=>o.EntityVehicleChargingFilled)),EntityVehicleFilled:()=>import("@ds-mo/icons/svg/EntityVehicleFilled").then((o=>o.EntityVehicleFilled)),EntityVehicleImmobilized:()=>import("@ds-mo/icons/svg/EntityVehicleImmobilized").then((o=>o.EntityVehicleImmobilized)),EntityVehicleImmobilizedFilled:()=>import("@ds-mo/icons/svg/EntityVehicleImmobilizedFilled").then((o=>o.EntityVehicleImmobilizedFilled)),ErrorTriangle:()=>import("@ds-mo/icons/svg/ErrorTriangle").then((o=>o.ErrorTriangle)),ErrorTriangleFilled:()=>import("@ds-mo/icons/svg/ErrorTriangleFilled").then((o=>o.ErrorTriangleFilled)),ErrorTriangleSimpleFilled:()=>import("@ds-mo/icons/svg/ErrorTriangleSimpleFilled").then((o=>o.ErrorTriangleSimpleFilled)),Export:()=>import("@ds-mo/icons/svg/Export").then((o=>o.Export)),ExternalLink:()=>import("@ds-mo/icons/svg/ExternalLink").then((o=>o.ExternalLink)),Eye:()=>import("@ds-mo/icons/svg/Eye").then((o=>o.Eye)),EyeDisabled:()=>import("@ds-mo/icons/svg/EyeDisabled").then((o=>o.EyeDisabled)),EyeLock:()=>import("@ds-mo/icons/svg/EyeLock").then((o=>o.EyeLock)),FastForward:()=>import("@ds-mo/icons/svg/FastForward").then((o=>o.FastForward)),FastForwardSkip:()=>import("@ds-mo/icons/svg/FastForwardSkip").then((o=>o.FastForwardSkip)),Filters:()=>import("@ds-mo/icons/svg/Filters").then((o=>o.Filters)),FitToScreen:()=>import("@ds-mo/icons/svg/FitToScreen").then((o=>o.FitToScreen)),Flag:()=>import("@ds-mo/icons/svg/Flag").then((o=>o.Flag)),FlagFilled:()=>import("@ds-mo/icons/svg/FlagFilled").then((o=>o.FlagFilled)),FloppyDisk:()=>import("@ds-mo/icons/svg/FloppyDisk").then((o=>o.FloppyDisk)),Folder:()=>import("@ds-mo/icons/svg/Folder").then((o=>o.Folder)),FolderFilled:()=>import("@ds-mo/icons/svg/FolderFilled").then((o=>o.FolderFilled)),FuelPump:()=>import("@ds-mo/icons/svg/FuelPump").then((o=>o.FuelPump)),FullScreen:()=>import("@ds-mo/icons/svg/FullScreen").then((o=>o.FullScreen)),FullScreenExit:()=>import("@ds-mo/icons/svg/FullScreenExit").then((o=>o.FullScreenExit)),Gauge:()=>import("@ds-mo/icons/svg/Gauge").then((o=>o.Gauge)),GaugeTemperature:()=>import("@ds-mo/icons/svg/GaugeTemperature").then((o=>o.GaugeTemperature)),Gear:()=>import("@ds-mo/icons/svg/Gear").then((o=>o.Gear)),GearCheck:()=>import("@ds-mo/icons/svg/GearCheck").then((o=>o.GearCheck)),Geofence:()=>import("@ds-mo/icons/svg/Geofence").then((o=>o.Geofence)),GeofenceCircle:()=>import("@ds-mo/icons/svg/GeofenceCircle").then((o=>o.GeofenceCircle)),GeofenceDiamond:()=>import("@ds-mo/icons/svg/GeofenceDiamond").then((o=>o.GeofenceDiamond)),GeofenceSquare:()=>import("@ds-mo/icons/svg/GeofenceSquare").then((o=>o.GeofenceSquare)),GlobeNetwork:()=>import("@ds-mo/icons/svg/GlobeNetwork").then((o=>o.GlobeNetwork)),GlobeWorldMap:()=>import("@ds-mo/icons/svg/GlobeWorldMap").then((o=>o.GlobeWorldMap)),Graph:()=>import("@ds-mo/icons/svg/Graph").then((o=>o.Graph)),GraphArrow:()=>import("@ds-mo/icons/svg/GraphArrow").then((o=>o.GraphArrow)),GraphBars:()=>import("@ds-mo/icons/svg/GraphBars").then((o=>o.GraphBars)),GraphDecreasing:()=>import("@ds-mo/icons/svg/GraphDecreasing").then((o=>o.GraphDecreasing)),GraphIncreasing:()=>import("@ds-mo/icons/svg/GraphIncreasing").then((o=>o.GraphIncreasing)),GroupBy:()=>import("@ds-mo/icons/svg/GroupBy").then((o=>o.GroupBy)),Hamburger:()=>import("@ds-mo/icons/svg/Hamburger").then((o=>o.Hamburger)),HandOpen:()=>import("@ds-mo/icons/svg/HandOpen").then((o=>o.HandOpen)),Headset:()=>import("@ds-mo/icons/svg/Headset").then((o=>o.Headset)),History:()=>import("@ds-mo/icons/svg/History").then((o=>o.History)),HourGlass:()=>import("@ds-mo/icons/svg/HourGlass").then((o=>o.HourGlass)),Image:()=>import("@ds-mo/icons/svg/Image").then((o=>o.Image)),Import:()=>import("@ds-mo/icons/svg/Import").then((o=>o.Import)),ImportClock:()=>import("@ds-mo/icons/svg/ImportClock").then((o=>o.ImportClock)),Inbox:()=>import("@ds-mo/icons/svg/Inbox").then((o=>o.Inbox)),IosFilled:()=>import("@ds-mo/icons/svg/IosFilled").then((o=>o.IosFilled)),Jerrycan:()=>import("@ds-mo/icons/svg/Jerrycan").then((o=>o.Jerrycan)),KeyA:()=>import("@ds-mo/icons/svg/KeyA").then((o=>o.KeyA)),KeyB:()=>import("@ds-mo/icons/svg/KeyB").then((o=>o.KeyB)),KeyCmd:()=>import("@ds-mo/icons/svg/KeyCmd").then((o=>o.KeyCmd)),KeyShift:()=>import("@ds-mo/icons/svg/KeyShift").then((o=>o.KeyShift)),LED:()=>import("@ds-mo/icons/svg/LED").then((o=>o.LED)),Layers:()=>import("@ds-mo/icons/svg/Layers").then((o=>o.Layers)),Leaf:()=>import("@ds-mo/icons/svg/Leaf").then((o=>o.Leaf)),LeftCollapse:()=>import("@ds-mo/icons/svg/LeftCollapse").then((o=>o.LeftCollapse)),LeftCollapseB:()=>import("@ds-mo/icons/svg/LeftCollapseB").then((o=>o.LeftCollapseB)),LeftExpand:()=>import("@ds-mo/icons/svg/LeftExpand").then((o=>o.LeftExpand)),LeftExpandB:()=>import("@ds-mo/icons/svg/LeftExpandB").then((o=>o.LeftExpandB)),LeftTurnSignal:()=>import("@ds-mo/icons/svg/LeftTurnSignal").then((o=>o.LeftTurnSignal)),LetterB:()=>import("@ds-mo/icons/svg/LetterB").then((o=>o.LetterB)),LetterC:()=>import("@ds-mo/icons/svg/LetterC").then((o=>o.LetterC)),LetterI:()=>import("@ds-mo/icons/svg/LetterI").then((o=>o.LetterI)),License:()=>import("@ds-mo/icons/svg/License").then((o=>o.License)),LicensePlate:()=>import("@ds-mo/icons/svg/LicensePlate").then((o=>o.LicensePlate)),Lifebuoy:()=>import("@ds-mo/icons/svg/Lifebuoy").then((o=>o.Lifebuoy)),Link:()=>import("@ds-mo/icons/svg/Link").then((o=>o.Link)),List:()=>import("@ds-mo/icons/svg/List").then((o=>o.List)),Loads:()=>import("@ds-mo/icons/svg/Loads").then((o=>o.Loads)),LocationPin:()=>import("@ds-mo/icons/svg/LocationPin").then((o=>o.LocationPin)),LocationPinArrows:()=>import("@ds-mo/icons/svg/LocationPinArrows").then((o=>o.LocationPinArrows)),LocationPinDisabled:()=>import("@ds-mo/icons/svg/LocationPinDisabled").then((o=>o.LocationPinDisabled)),LocationPinDollar:()=>import("@ds-mo/icons/svg/LocationPinDollar").then((o=>o.LocationPinDollar)),LockClosed:()=>import("@ds-mo/icons/svg/LockClosed").then((o=>o.LockClosed)),LockClosedFilled:()=>import("@ds-mo/icons/svg/LockClosedFilled").then((o=>o.LockClosedFilled)),LockOpen:()=>import("@ds-mo/icons/svg/LockOpen").then((o=>o.LockOpen)),Logout:()=>import("@ds-mo/icons/svg/Logout").then((o=>o.Logout)),Logs:()=>import("@ds-mo/icons/svg/Logs").then((o=>o.Logs)),LogsMagnifyingGlass:()=>import("@ds-mo/icons/svg/LogsMagnifyingGlass").then((o=>o.LogsMagnifyingGlass)),MagnifyingGlass:()=>import("@ds-mo/icons/svg/MagnifyingGlass").then((o=>o.MagnifyingGlass)),MagnifyingGlassGraph:()=>import("@ds-mo/icons/svg/MagnifyingGlassGraph").then((o=>o.MagnifyingGlassGraph)),MagnifyingGlassZoomIn:()=>import("@ds-mo/icons/svg/MagnifyingGlassZoomIn").then((o=>o.MagnifyingGlassZoomIn)),MagnifyingGlassZoomOut:()=>import("@ds-mo/icons/svg/MagnifyingGlassZoomOut").then((o=>o.MagnifyingGlassZoomOut)),MapNavigation:()=>import("@ds-mo/icons/svg/MapNavigation").then((o=>o.MapNavigation)),MapPage:()=>import("@ds-mo/icons/svg/MapPage").then((o=>o.MapPage)),MapPin:()=>import("@ds-mo/icons/svg/MapPin").then((o=>o.MapPin)),MarkRead:()=>import("@ds-mo/icons/svg/MarkRead").then((o=>o.MarkRead)),Match:()=>import("@ds-mo/icons/svg/Match").then((o=>o.Match)),MessageBubble:()=>import("@ds-mo/icons/svg/MessageBubble").then((o=>o.MessageBubble)),MessageBubbleStack:()=>import("@ds-mo/icons/svg/MessageBubbleStack").then((o=>o.MessageBubbleStack)),Messaging:()=>import("@ds-mo/icons/svg/Messaging").then((o=>o.Messaging)),Mic:()=>import("@ds-mo/icons/svg/Mic").then((o=>o.Mic)),MicMute:()=>import("@ds-mo/icons/svg/MicMute").then((o=>o.MicMute)),Minimize:()=>import("@ds-mo/icons/svg/Minimize").then((o=>o.Minimize)),Monitor:()=>import("@ds-mo/icons/svg/Monitor").then((o=>o.Monitor)),Notification:()=>import("@ds-mo/icons/svg/Notification").then((o=>o.Notification)),NumberTen:()=>import("@ds-mo/icons/svg/NumberTen").then((o=>o.NumberTen)),OctagonSubtract:()=>import("@ds-mo/icons/svg/OctagonSubtract").then((o=>o.OctagonSubtract)),Odometer:()=>import("@ds-mo/icons/svg/Odometer").then((o=>o.Odometer)),OverviewAI:()=>import("@ds-mo/icons/svg/OverviewAI").then((o=>o.OverviewAI)),PanelCollapse:()=>import("@ds-mo/icons/svg/PanelCollapse").then((o=>o.PanelCollapse)),PanelExpand:()=>import("@ds-mo/icons/svg/PanelExpand").then((o=>o.PanelExpand)),Paperclip:()=>import("@ds-mo/icons/svg/Paperclip").then((o=>o.Paperclip)),PaperplaneSend:()=>import("@ds-mo/icons/svg/PaperplaneSend").then((o=>o.PaperplaneSend)),Paragraph:()=>import("@ds-mo/icons/svg/Paragraph").then((o=>o.Paragraph)),ParagraphCheck:()=>import("@ds-mo/icons/svg/ParagraphCheck").then((o=>o.ParagraphCheck)),ParagraphPencil:()=>import("@ds-mo/icons/svg/ParagraphPencil").then((o=>o.ParagraphPencil)),Pause:()=>import("@ds-mo/icons/svg/Pause").then((o=>o.Pause)),PauseFilled:()=>import("@ds-mo/icons/svg/PauseFilled").then((o=>o.PauseFilled)),Pencil:()=>import("@ds-mo/icons/svg/Pencil").then((o=>o.Pencil)),PencilSquiggle:()=>import("@ds-mo/icons/svg/PencilSquiggle").then((o=>o.PencilSquiggle)),Person:()=>import("@ds-mo/icons/svg/Person").then((o=>o.Person)),PersonAt:()=>import("@ds-mo/icons/svg/PersonAt").then((o=>o.PersonAt)),PersonConnect:()=>import("@ds-mo/icons/svg/PersonConnect").then((o=>o.PersonConnect)),PersonFrame:()=>import("@ds-mo/icons/svg/PersonFrame").then((o=>o.PersonFrame)),PersonGear:()=>import("@ds-mo/icons/svg/PersonGear").then((o=>o.PersonGear)),PersonGroup:()=>import("@ds-mo/icons/svg/PersonGroup").then((o=>o.PersonGroup)),PersonGroupArrows:()=>import("@ds-mo/icons/svg/PersonGroupArrows").then((o=>o.PersonGroupArrows)),PersonManager:()=>import("@ds-mo/icons/svg/PersonManager").then((o=>o.PersonManager)),PersonShield:()=>import("@ds-mo/icons/svg/PersonShield").then((o=>o.PersonShield)),PersonStar:()=>import("@ds-mo/icons/svg/PersonStar").then((o=>o.PersonStar)),Phone:()=>import("@ds-mo/icons/svg/Phone").then((o=>o.Phone)),PhoneDisconnect:()=>import("@ds-mo/icons/svg/PhoneDisconnect").then((o=>o.PhoneDisconnect)),PicmanFilled:()=>import("@ds-mo/icons/svg/PicmanFilled").then((o=>o.PicmanFilled)),Pin:()=>import("@ds-mo/icons/svg/Pin").then((o=>o.Pin)),PipBottomLeft:()=>import("@ds-mo/icons/svg/PipBottomLeft").then((o=>o.PipBottomLeft)),PipBottomRight:()=>import("@ds-mo/icons/svg/PipBottomRight").then((o=>o.PipBottomRight)),PipTopLeft:()=>import("@ds-mo/icons/svg/PipTopLeft").then((o=>o.PipTopLeft)),PipTopRight:()=>import("@ds-mo/icons/svg/PipTopRight").then((o=>o.PipTopRight)),Play:()=>import("@ds-mo/icons/svg/Play").then((o=>o.Play)),PlayFilled:()=>import("@ds-mo/icons/svg/PlayFilled").then((o=>o.PlayFilled)),Plug:()=>import("@ds-mo/icons/svg/Plug").then((o=>o.Plug)),Plus:()=>import("@ds-mo/icons/svg/Plus").then((o=>o.Plus)),PlusCircle:()=>import("@ds-mo/icons/svg/PlusCircle").then((o=>o.PlusCircle)),Preferences:()=>import("@ds-mo/icons/svg/Preferences").then((o=>o.Preferences)),Printer:()=>import("@ds-mo/icons/svg/Printer").then((o=>o.Printer)),PunchCard:()=>import("@ds-mo/icons/svg/PunchCard").then((o=>o.PunchCard)),Puzzle:()=>import("@ds-mo/icons/svg/Puzzle").then((o=>o.Puzzle)),PuzzleJoined:()=>import("@ds-mo/icons/svg/PuzzleJoined").then((o=>o.PuzzleJoined)),Redo:()=>import("@ds-mo/icons/svg/Redo").then((o=>o.Redo)),Refresh:()=>import("@ds-mo/icons/svg/Refresh").then((o=>o.Refresh)),Restore:()=>import("@ds-mo/icons/svg/Restore").then((o=>o.Restore)),RewardRibbon:()=>import("@ds-mo/icons/svg/RewardRibbon").then((o=>o.RewardRibbon)),Rewind:()=>import("@ds-mo/icons/svg/Rewind").then((o=>o.Rewind)),RewindSkip:()=>import("@ds-mo/icons/svg/RewindSkip").then((o=>o.RewindSkip)),RewindSkipFilled:()=>import("@ds-mo/icons/svg/RewindSkipFilled").then((o=>o.RewindSkipFilled)),RightCollapse:()=>import("@ds-mo/icons/svg/RightCollapse").then((o=>o.RightCollapse)),RightCollapseB:()=>import("@ds-mo/icons/svg/RightCollapseB").then((o=>o.RightCollapseB)),RightExpand:()=>import("@ds-mo/icons/svg/RightExpand").then((o=>o.RightExpand)),RightExpandB:()=>import("@ds-mo/icons/svg/RightExpandB").then((o=>o.RightExpandB)),RightTurnSignal:()=>import("@ds-mo/icons/svg/RightTurnSignal").then((o=>o.RightTurnSignal)),Rotate:()=>import("@ds-mo/icons/svg/Rotate").then((o=>o.Rotate)),Satellite:()=>import("@ds-mo/icons/svg/Satellite").then((o=>o.Satellite)),Scan:()=>import("@ds-mo/icons/svg/Scan").then((o=>o.Scan)),Scissor:()=>import("@ds-mo/icons/svg/Scissor").then((o=>o.Scissor)),Scope:()=>import("@ds-mo/icons/svg/Scope").then((o=>o.Scope)),Seatbelt:()=>import("@ds-mo/icons/svg/Seatbelt").then((o=>o.Seatbelt)),SeatbeltBuckle:()=>import("@ds-mo/icons/svg/SeatbeltBuckle").then((o=>o.SeatbeltBuckle)),Shapes:()=>import("@ds-mo/icons/svg/Shapes").then((o=>o.Shapes)),ShareCircles:()=>import("@ds-mo/icons/svg/ShareCircles").then((o=>o.ShareCircles)),ShareCirclesFilled:()=>import("@ds-mo/icons/svg/ShareCirclesFilled").then((o=>o.ShareCirclesFilled)),SharePaperplane:()=>import("@ds-mo/icons/svg/SharePaperplane").then((o=>o.SharePaperplane)),Shield:()=>import("@ds-mo/icons/svg/Shield").then((o=>o.Shield)),ShieldCheck:()=>import("@ds-mo/icons/svg/ShieldCheck").then((o=>o.ShieldCheck)),ShieldCheckmarkFilled:()=>import("@ds-mo/icons/svg/ShieldCheckmarkFilled").then((o=>o.ShieldCheckmarkFilled)),ShieldCircle:()=>import("@ds-mo/icons/svg/ShieldCircle").then((o=>o.ShieldCircle)),ShieldCircleFilled:()=>import("@ds-mo/icons/svg/ShieldCircleFilled").then((o=>o.ShieldCircleFilled)),ShieldCross:()=>import("@ds-mo/icons/svg/ShieldCross").then((o=>o.ShieldCross)),ShieldCrossFilled:()=>import("@ds-mo/icons/svg/ShieldCrossFilled").then((o=>o.ShieldCrossFilled)),ShieldFilled:()=>import("@ds-mo/icons/svg/ShieldFilled").then((o=>o.ShieldFilled)),ShieldLock:()=>import("@ds-mo/icons/svg/ShieldLock").then((o=>o.ShieldLock)),ShieldLockFilled:()=>import("@ds-mo/icons/svg/ShieldLockFilled").then((o=>o.ShieldLockFilled)),ShoppingBag:()=>import("@ds-mo/icons/svg/ShoppingBag").then((o=>o.ShoppingBag)),Snowflake:()=>import("@ds-mo/icons/svg/Snowflake").then((o=>o.Snowflake)),SpeakerPhone:()=>import("@ds-mo/icons/svg/SpeakerPhone").then((o=>o.SpeakerPhone)),SpeedometerArrow:()=>import("@ds-mo/icons/svg/SpeedometerArrow").then((o=>o.SpeedometerArrow)),SpeedometerLeft:()=>import("@ds-mo/icons/svg/SpeedometerLeft").then((o=>o.SpeedometerLeft)),SpeedometerRight:()=>import("@ds-mo/icons/svg/SpeedometerRight").then((o=>o.SpeedometerRight)),SpikeCirclePercentage:()=>import("@ds-mo/icons/svg/SpikeCirclePercentage").then((o=>o.SpikeCirclePercentage)),SpikeCirclePercentageFilled:()=>import("@ds-mo/icons/svg/SpikeCirclePercentageFilled").then((o=>o.SpikeCirclePercentageFilled)),Square:()=>import("@ds-mo/icons/svg/Square").then((o=>o.Square)),SquareArrowTopRight:()=>import("@ds-mo/icons/svg/SquareArrowTopRight").then((o=>o.SquareArrowTopRight)),SquareCheck:()=>import("@ds-mo/icons/svg/SquareCheck").then((o=>o.SquareCheck)),SquareCheckFilled:()=>import("@ds-mo/icons/svg/SquareCheckFilled").then((o=>o.SquareCheckFilled)),SquareDollar:()=>import("@ds-mo/icons/svg/SquareDollar").then((o=>o.SquareDollar)),SquareDollarFilled:()=>import("@ds-mo/icons/svg/SquareDollarFilled").then((o=>o.SquareDollarFilled)),SquareDottedMinus:()=>import("@ds-mo/icons/svg/SquareDottedMinus").then((o=>o.SquareDottedMinus)),SquareFilled:()=>import("@ds-mo/icons/svg/SquareFilled").then((o=>o.SquareFilled)),SquareGrid:()=>import("@ds-mo/icons/svg/SquareGrid").then((o=>o.SquareGrid)),SquarePencil:()=>import("@ds-mo/icons/svg/SquarePencil").then((o=>o.SquarePencil)),SquarePlus:()=>import("@ds-mo/icons/svg/SquarePlus").then((o=>o.SquarePlus)),SquareSubtract:()=>import("@ds-mo/icons/svg/SquareSubtract").then((o=>o.SquareSubtract)),SquareSubtractFilled:()=>import("@ds-mo/icons/svg/SquareSubtractFilled").then((o=>o.SquareSubtractFilled)),Star:()=>import("@ds-mo/icons/svg/Star").then((o=>o.Star)),StarFilled:()=>import("@ds-mo/icons/svg/StarFilled").then((o=>o.StarFilled)),Stopwatch:()=>import("@ds-mo/icons/svg/Stopwatch").then((o=>o.Stopwatch)),Street:()=>import("@ds-mo/icons/svg/Street").then((o=>o.Street)),Subtract:()=>import("@ds-mo/icons/svg/Subtract").then((o=>o.Subtract)),SubtractCircle:()=>import("@ds-mo/icons/svg/SubtractCircle").then((o=>o.SubtractCircle)),SubtractCircleFilled:()=>import("@ds-mo/icons/svg/SubtractCircleFilled").then((o=>o.SubtractCircleFilled)),Table:()=>import("@ds-mo/icons/svg/Table").then((o=>o.Table)),Tag:()=>import("@ds-mo/icons/svg/Tag").then((o=>o.Tag)),Target:()=>import("@ds-mo/icons/svg/Target").then((o=>o.Target)),TargetDollar:()=>import("@ds-mo/icons/svg/TargetDollar").then((o=>o.TargetDollar)),Text:()=>import("@ds-mo/icons/svg/Text").then((o=>o.Text)),ThemeDark:()=>import("@ds-mo/icons/svg/ThemeDark").then((o=>o.ThemeDark)),ThemeLight:()=>import("@ds-mo/icons/svg/ThemeLight").then((o=>o.ThemeLight)),ThumbsDown:()=>import("@ds-mo/icons/svg/ThumbsDown").then((o=>o.ThumbsDown)),ThumbsDownFilled:()=>import("@ds-mo/icons/svg/ThumbsDownFilled").then((o=>o.ThumbsDownFilled)),ThumbsUp:()=>import("@ds-mo/icons/svg/ThumbsUp").then((o=>o.ThumbsUp)),ThumbsUpFilled:()=>import("@ds-mo/icons/svg/ThumbsUpFilled").then((o=>o.ThumbsUpFilled)),TirePressure:()=>import("@ds-mo/icons/svg/TirePressure").then((o=>o.TirePressure)),Toggle:()=>import("@ds-mo/icons/svg/Toggle").then((o=>o.Toggle)),TrafficLight:()=>import("@ds-mo/icons/svg/TrafficLight").then((o=>o.TrafficLight)),Trash:()=>import("@ds-mo/icons/svg/Trash").then((o=>o.Trash)),Trophy:()=>import("@ds-mo/icons/svg/Trophy").then((o=>o.Trophy)),TurnSignal:()=>import("@ds-mo/icons/svg/TurnSignal").then((o=>o.TurnSignal)),TurnSignalFilled:()=>import("@ds-mo/icons/svg/TurnSignalFilled").then((o=>o.TurnSignalFilled)),Undo:()=>import("@ds-mo/icons/svg/Undo").then((o=>o.Undo)),Upgrade:()=>import("@ds-mo/icons/svg/Upgrade").then((o=>o.Upgrade)),Upload:()=>import("@ds-mo/icons/svg/Upload").then((o=>o.Upload)),VehicleTrailer:()=>import("@ds-mo/icons/svg/VehicleTrailer").then((o=>o.VehicleTrailer)),VehicleTruck:()=>import("@ds-mo/icons/svg/VehicleTruck").then((o=>o.VehicleTruck)),VehicleTruckMagnifyingGlass:()=>import("@ds-mo/icons/svg/VehicleTruckMagnifyingGlass").then((o=>o.VehicleTruckMagnifyingGlass)),Video:()=>import("@ds-mo/icons/svg/Video").then((o=>o.Video)),ViewMenu:()=>import("@ds-mo/icons/svg/ViewMenu").then((o=>o.ViewMenu)),Volume:()=>import("@ds-mo/icons/svg/Volume").then((o=>o.Volume)),VolumeFilled:()=>import("@ds-mo/icons/svg/VolumeFilled").then((o=>o.VolumeFilled)),VolumeMute:()=>import("@ds-mo/icons/svg/VolumeMute").then((o=>o.VolumeMute)),VolumeMuteFilled:()=>import("@ds-mo/icons/svg/VolumeMuteFilled").then((o=>o.VolumeMuteFilled)),WandSparkle:()=>import("@ds-mo/icons/svg/WandSparkle").then((o=>o.WandSparkle)),Waveform:()=>import("@ds-mo/icons/svg/Waveform").then((o=>o.Waveform)),Webhooks:()=>import("@ds-mo/icons/svg/Webhooks").then((o=>o.Webhooks)),Whistle:()=>import("@ds-mo/icons/svg/Whistle").then((o=>o.Whistle)),WifiHorizontal:()=>import("@ds-mo/icons/svg/WifiHorizontal").then((o=>o.WifiHorizontal)),WifiTower:()=>import("@ds-mo/icons/svg/WifiTower").then((o=>o.WifiTower)),WifiVertical:()=>import("@ds-mo/icons/svg/WifiVertical").then((o=>o.WifiVertical)),WifiVerticalFilled:()=>import("@ds-mo/icons/svg/WifiVerticalFilled").then((o=>o.WifiVerticalFilled)),WifiVerticalFilledDisabled:()=>import("@ds-mo/icons/svg/WifiVerticalFilledDisabled").then((o=>o.WifiVerticalFilledDisabled)),WorkflowA:()=>import("@ds-mo/icons/svg/WorkflowA").then((o=>o.WorkflowA)),WorkflowB:()=>import("@ds-mo/icons/svg/WorkflowB").then((o=>o.WorkflowB)),Wrench:()=>import("@ds-mo/icons/svg/Wrench").then((o=>o.Wrench)),ZoomBackOut:()=>import("@ds-mo/icons/svg/ZoomBackOut").then((o=>o.ZoomBackOut))};const t=Symbol.for("ds-mo.icon-svg-cache");function m(o,i){return i?`flag:${o}`:`system:${o}`}function l(){const o=globalThis;return o[t]??(o[t]=new Map)}const d=new Set(["script","foreignobject","iframe","object","embed","animation"]);function a(o){if(d.has(o.localName.toLowerCase()))return false;for(const i of o.getAttributeNames()){const s=i.toLowerCase();if(s.startsWith("on"))return false;if(s==="href"||s==="xlink:href"){const s=o.getAttribute(i)??"";if(!s.startsWith("#"))return false}}for(let i=0;i<o.children.length;i++){if(!a(o.children[i]))return false}return true}function g(o){return o!=null&&o.localName==="svg"&&a(o)}function p(o){if(typeof DOMParser==="undefined")return null;const i=(new DOMParser).parseFromString(o,"image/svg+xml");if(i.querySelector("parsererror"))return null;const s=i.documentElement;if(!g(s))return null;return i.documentElement}const v=()=>`.icon.sc-ds-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;line-height:0;color:inherit;width:var(--_icon-sz, var(--dimension-iconography-md));height:var(--_icon-sz, var(--dimension-iconography-md))}.icon__svg.sc-ds-icon{display:contents;line-height:0}.icon--size-xs.sc-ds-icon{--_icon-sz:var(--dimension-iconography-xs)}.icon--size-sm.sc-ds-icon{--_icon-sz:var(--dimension-iconography-sm)}.icon--size-md.sc-ds-icon{--_icon-sz:var(--dimension-iconography-md)}.icon--size-lg.sc-ds-icon{--_icon-sz:var(--dimension-iconography-lg)}.icon--size-xl.sc-ds-icon{--_icon-sz:var(--dimension-iconography-xl)}.icon--size-2xl.sc-ds-icon{--_icon-sz:var(--dimension-iconography-2xl)}.icon--size-3xl.sc-ds-icon{--_icon-sz:var(--dimension-iconography-3xl)}.icon--color-primary.sc-ds-icon{color:var(--color-foreground-primary)}.icon--color-secondary.sc-ds-icon{color:var(--color-foreground-secondary)}.icon--color-tertiary.sc-ds-icon{color:var(--color-foreground-tertiary)}.icon--color-quaternary.sc-ds-icon{color:var(--color-foreground-quaternary)}.icon--color-inherit.sc-ds-icon{color:inherit}.icon--color-brand.sc-ds-icon{color:var(--color-foreground-bold-brand)}.icon--color-negative.sc-ds-icon{color:var(--color-foreground-bold-negative)}.icon--color-positive.sc-ds-icon{color:var(--color-foreground-bold-positive)}.icon--color-warning.sc-ds-icon{color:var(--color-foreground-bold-warning)}.icon--color-caution.sc-ds-icon{color:var(--color-foreground-bold-caution)}.icon--color-ai.sc-ds-icon{color:var(--color-foreground-bold-ai)}.icon--color-guide.sc-ds-icon{color:var(--color-foreground-bold-guide)}.icon--color-neutral.sc-ds-icon{color:var(--color-foreground-bold-neutral)}.icon--color-faint-brand.sc-ds-icon{color:var(--color-foreground-faint-brand)}.icon--color-faint-negative.sc-ds-icon{color:var(--color-foreground-faint-negative)}.icon--color-faint-positive.sc-ds-icon{color:var(--color-foreground-faint-positive)}.icon--color-faint-warning.sc-ds-icon{color:var(--color-foreground-faint-warning)}.icon--color-faint-caution.sc-ds-icon{color:var(--color-foreground-faint-caution)}.icon--color-faint-ai.sc-ds-icon{color:var(--color-foreground-faint-ai)}.icon--color-faint-neutral.sc-ds-icon{color:var(--color-foreground-faint-neutral)}.icon--color-medium-brand.sc-ds-icon{color:var(--color-foreground-medium-brand)}.icon--color-medium-negative.sc-ds-icon{color:var(--color-foreground-medium-negative)}.icon--color-medium-positive.sc-ds-icon{color:var(--color-foreground-medium-positive)}.icon--color-medium-warning.sc-ds-icon{color:var(--color-foreground-medium-warning)}.icon--color-medium-caution.sc-ds-icon{color:var(--color-foreground-medium-caution)}.icon--color-medium-ai.sc-ds-icon{color:var(--color-foreground-medium-ai)}.icon--color-medium-neutral.sc-ds-icon{color:var(--color-foreground-medium-neutral)}.icon--color-bold-brand.sc-ds-icon{color:var(--color-foreground-bold-brand)}.icon--color-bold-negative.sc-ds-icon{color:var(--color-foreground-bold-negative)}.icon--color-bold-positive.sc-ds-icon{color:var(--color-foreground-bold-positive)}.icon--color-bold-warning.sc-ds-icon{color:var(--color-foreground-bold-warning)}.icon--color-bold-caution.sc-ds-icon{color:var(--color-foreground-bold-caution)}.icon--color-bold-ai.sc-ds-icon{color:var(--color-foreground-bold-ai)}.icon--color-bold-neutral.sc-ds-icon{color:var(--color-foreground-bold-neutral)}.icon--color-strong-brand.sc-ds-icon{color:var(--color-foreground-strong-brand)}.icon--color-strong-negative.sc-ds-icon{color:var(--color-foreground-strong-negative)}.icon--color-strong-positive.sc-ds-icon{color:var(--color-foreground-strong-positive)}.icon--color-strong-warning.sc-ds-icon{color:var(--color-foreground-strong-warning)}.icon--color-strong-caution.sc-ds-icon{color:var(--color-foreground-strong-caution)}.icon--color-strong-ai.sc-ds-icon{color:var(--color-foreground-strong-ai)}.icon--color-strong-neutral.sc-ds-icon{color:var(--color-foreground-strong-neutral)}.icon--color-on-strong.sc-ds-icon{color:var(--color-foreground-on-strong-background-primary)}.icon--color-on-bold.sc-ds-icon{color:var(--color-foreground-on-bold-background-primary)}`;const u=o(class o extends i{constructor(o){super();if(o!==false){this.__registerHost()}this.name="";this.size="md";this.color="inherit";this.svg="";this.loadToken=0;this.renderedSvg=null}resolveSvg(){const o=this.name.startsWith("Flag");const i=m(this.name,o);const s=++this.loadToken;const r=l().get(i);if(r!==undefined){this.svg=r;return}const n=o?e:c;const t=Object.prototype.hasOwnProperty.call(n,this.name)?n[this.name]:undefined;if(!t){this.svg="";return}t().then((o=>{l().set(i,o);if(s===this.loadToken)this.svg=o})).catch((()=>{if(s===this.loadToken)this.svg=""}))}componentWillLoad(){this.resolveSvg()}updateSvg(){const o=this.el.querySelector(".icon__svg");if(!o)return;if(this.svg===this.renderedSvg)return;this.renderedSvg=this.svg;const i=this.svg?p(this.svg):null;if(!i){o.replaceChildren();return}i.removeAttribute("width");i.removeAttribute("height");i.setAttribute("focusable","false");i.setAttribute("aria-hidden","true");i.style.display="block";i.style.flexShrink="0";i.style.width="100%";i.style.height="100%";o.replaceChildren(i)}onIconChange(){this.resolveSvg()}componentDidRender(){this.updateSvg()}render(){const o=typeof this.color==="string"&&this.color.startsWith("var(--");const i={icon:true,[`icon--size-${this.size}`]:true,[`icon--color-${this.color}`]:!!this.color&&!o&&this.color!=="inherit","icon--color-inherit":this.color==="inherit"};const n=o?{color:this.color}:undefined;return s(r,{key:"e8cd72ea8f48628bda7c6350957e931831bd2e19",style:{display:"inline-flex",alignItems:"center",justifyContent:"center"}},s("span",{key:"2756a9e3a9d91213e5532b999496fb7ce18ae12b",class:i,style:n,role:this.label?"img":"presentation","aria-label":this.label,"aria-hidden":!this.label?"true":undefined},s("span",{key:"3e76e9e40d8c08784c515c20e67a88be427a1a17",class:"icon__svg"})))}get el(){return this}static get watchers(){return{name:[{onIconChange:0}]}}static get style(){return v()}},[2,"ds-icon",{name:[1],size:[1],color:[1],label:[1],svg:[32]},undefined,{name:[{onIconChange:0}]}]);function h(){if(typeof customElements==="undefined"){return}const o=["ds-icon"];o.forEach((o=>{switch(o){case"ds-icon":if(!customElements.get(n(o))){customElements.define(n(o),u)}break}}))}h();export{u as I,h as d};
|
|
2
|
-
//# sourceMappingURL=p-CBYuvZKM.js.map
|