@ds-mo/ui 14.14.0 → 14.15.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 +10 -2
- package/dist/.package-ready.json +1 -1
- package/dist/agent-patterns.json +50 -1
- package/dist/agent.json +91 -3
- package/dist/docs/components.json +1 -1
- package/dist/mcp/cli.js +19 -4
- package/dist/mcp-data/registry/agent-activity.json +6 -1
- package/dist/mcp-data/registry/agent-questionnaire.json +6 -1
- package/dist/mcp-data/registry/agent-response.json +6 -1
- package/dist/mcp-data/registry/agent-source-list.json +6 -1
- package/dist/mcp-data/registry/agent-tool-call.json +6 -1
- package/dist/mcp-data/registry/attachment-list.json +6 -1
- package/dist/mcp-data/registry/avatar.json +6 -1
- package/dist/mcp-data/registry/badge.json +6 -1
- package/dist/mcp-data/registry/banner.json +6 -1
- package/dist/mcp-data/registry/bar-action.json +6 -1
- package/dist/mcp-data/registry/bar-nav.json +6 -1
- package/dist/mcp-data/registry/bar-title.json +6 -1
- package/dist/mcp-data/registry/bar-workflow.json +6 -1
- package/dist/mcp-data/registry/breadcrumb.json +6 -1
- package/dist/mcp-data/registry/button-filled.json +6 -1
- package/dist/mcp-data/registry/button-unfilled.json +6 -1
- package/dist/mcp-data/registry/card-chart.json +6 -1
- package/dist/mcp-data/registry/card-overview.json +6 -1
- package/dist/mcp-data/registry/card-setting.json +6 -1
- package/dist/mcp-data/registry/chart-legend.json +6 -1
- package/dist/mcp-data/registry/chart.json +6 -1
- package/dist/mcp-data/registry/checkbox.json +9 -1
- package/dist/mcp-data/registry/chip.json +6 -1
- package/dist/mcp-data/registry/code-block.json +6 -1
- package/dist/mcp-data/registry/conversation-list-item.json +6 -1
- package/dist/mcp-data/registry/conversation-list-section.json +6 -1
- package/dist/mcp-data/registry/conversation-list.json +6 -1
- package/dist/mcp-data/registry/divider.json +6 -1
- package/dist/mcp-data/registry/empty-state.json +6 -1
- package/dist/mcp-data/registry/field.json +6 -1
- package/dist/mcp-data/registry/filter-menu.json +6 -1
- package/dist/mcp-data/registry/icon.json +6 -1
- package/dist/mcp-data/registry/input.json +10 -2
- package/dist/mcp-data/registry/loader.json +6 -1
- package/dist/mcp-data/registry/markdown.json +6 -1
- package/dist/mcp-data/registry/menu.json +6 -1
- package/dist/mcp-data/registry/message-actions.json +6 -1
- package/dist/mcp-data/registry/message-bubble.json +6 -1
- package/dist/mcp-data/registry/message-composer.json +6 -1
- package/dist/mcp-data/registry/message-scroller.json +6 -1
- package/dist/mcp-data/registry/message.json +6 -1
- package/dist/mcp-data/registry/mobile-bar-nav.json +6 -1
- package/dist/mcp-data/registry/mobile-header.json +6 -1
- package/dist/mcp-data/registry/mobile-section-switcher.json +6 -1
- package/dist/mcp-data/registry/mobile-sheet-nav.json +6 -1
- package/dist/mcp-data/registry/modal.json +6 -1
- package/dist/mcp-data/registry/pagination.json +6 -1
- package/dist/mcp-data/registry/panel-nav.json +6 -1
- package/dist/mcp-data/registry/panel-sub-nav.json +6 -1
- package/dist/mcp-data/registry/panel-tool-header.json +6 -1
- package/dist/mcp-data/registry/panel-tool-search.json +6 -1
- package/dist/mcp-data/registry/panel-tools.json +6 -1
- package/dist/mcp-data/registry/paper-texture.json +6 -1
- package/dist/mcp-data/registry/radio.json +9 -1
- package/dist/mcp-data/registry/registry.json +92 -4
- package/dist/mcp-data/registry/scroll-overlay.json +6 -1
- package/dist/mcp-data/registry/select.json +10 -2
- package/dist/mcp-data/registry/shell-app.json +6 -1
- package/dist/mcp-data/registry/shell-page.json +6 -1
- package/dist/mcp-data/registry/shell-tools.json +6 -1
- package/dist/mcp-data/registry/skeleton.json +6 -1
- package/dist/mcp-data/registry/slider.json +6 -1
- package/dist/mcp-data/registry/swatch-picker.json +6 -1
- package/dist/mcp-data/registry/switch.json +9 -1
- package/dist/mcp-data/registry/tab-group.json +6 -1
- package/dist/mcp-data/registry/table-saved-views.json +6 -1
- package/dist/mcp-data/registry/table-toolbar.json +6 -1
- package/dist/mcp-data/registry/table.json +6 -1
- package/dist/mcp-data/registry/tag.json +6 -1
- package/dist/mcp-data/registry/text.json +6 -1
- package/dist/mcp-data/registry/toast.json +6 -1
- package/dist/mcp-data/registry/tooltip-chart.json +6 -1
- package/dist/mcp-data/registry/tooltip.json +6 -1
- package/dist/mcp-data/registry/typing-indicator.json +6 -1
- package/dist/vue/components.d.ts +77 -0
- package/dist/vue/components.js +79 -0
- package/dist/vue/ds-agent-activity.d.ts +3 -0
- package/dist/vue/ds-agent-activity.js +10 -0
- package/dist/vue/ds-agent-questionnaire.d.ts +3 -0
- package/dist/vue/ds-agent-questionnaire.js +19 -0
- package/dist/vue/ds-agent-response.d.ts +3 -0
- package/dist/vue/ds-agent-response.js +15 -0
- package/dist/vue/ds-agent-source-list.d.ts +3 -0
- package/dist/vue/ds-agent-source-list.js +13 -0
- package/dist/vue/ds-agent-tool-call.d.ts +3 -0
- package/dist/vue/ds-agent-tool-call.js +18 -0
- package/dist/vue/ds-attachment-list.d.ts +3 -0
- package/dist/vue/ds-attachment-list.js +9 -0
- package/dist/vue/ds-avatar.d.ts +3 -0
- package/dist/vue/ds-avatar.js +11 -0
- package/dist/vue/ds-badge.d.ts +3 -0
- package/dist/vue/ds-badge.js +15 -0
- package/dist/vue/ds-banner.d.ts +3 -0
- package/dist/vue/ds-banner.js +20 -0
- package/dist/vue/ds-bar-action.d.ts +3 -0
- package/dist/vue/ds-bar-action.js +14 -0
- package/dist/vue/ds-bar-nav.d.ts +3 -0
- package/dist/vue/ds-bar-nav.js +17 -0
- package/dist/vue/ds-bar-title.d.ts +3 -0
- package/dist/vue/ds-bar-title.js +32 -0
- package/dist/vue/ds-bar-workflow.d.ts +3 -0
- package/dist/vue/ds-bar-workflow.js +24 -0
- package/dist/vue/ds-breadcrumb.d.ts +3 -0
- package/dist/vue/ds-breadcrumb.js +12 -0
- package/dist/vue/ds-button-filled.d.ts +3 -0
- package/dist/vue/ds-button-filled.js +31 -0
- package/dist/vue/ds-button-unfilled.d.ts +3 -0
- package/dist/vue/ds-button-unfilled.js +36 -0
- package/dist/vue/ds-card-chart.d.ts +3 -0
- package/dist/vue/ds-card-chart.js +15 -0
- package/dist/vue/ds-card-overview.d.ts +3 -0
- package/dist/vue/ds-card-overview.js +21 -0
- package/dist/vue/ds-card-setting.d.ts +3 -0
- package/dist/vue/ds-card-setting.js +16 -0
- package/dist/vue/ds-chart-legend.d.ts +3 -0
- package/dist/vue/ds-chart-legend.js +19 -0
- package/dist/vue/ds-chart.d.ts +3 -0
- package/dist/vue/ds-chart.js +17 -0
- package/dist/vue/ds-checkbox.d.ts +3 -0
- package/dist/vue/ds-checkbox.js +22 -0
- package/dist/vue/ds-chip.d.ts +3 -0
- package/dist/vue/ds-chip.js +17 -0
- package/dist/vue/ds-code-block.d.ts +3 -0
- package/dist/vue/ds-code-block.js +10 -0
- package/dist/vue/ds-conversation-list-item.d.ts +3 -0
- package/dist/vue/ds-conversation-list-item.js +19 -0
- package/dist/vue/ds-conversation-list-section.d.ts +3 -0
- package/dist/vue/ds-conversation-list-section.js +9 -0
- package/dist/vue/ds-conversation-list.d.ts +3 -0
- package/dist/vue/ds-conversation-list.js +8 -0
- package/dist/vue/ds-divider.d.ts +3 -0
- package/dist/vue/ds-divider.js +12 -0
- package/dist/vue/ds-empty-state.d.ts +3 -0
- package/dist/vue/ds-empty-state.js +10 -0
- package/dist/vue/ds-field.d.ts +3 -0
- package/dist/vue/ds-field.js +12 -0
- package/dist/vue/ds-filter-menu.d.ts +3 -0
- package/dist/vue/ds-filter-menu.js +43 -0
- package/dist/vue/ds-icon.d.ts +3 -0
- package/dist/vue/ds-icon.js +11 -0
- package/dist/vue/ds-input.d.ts +3 -0
- package/dist/vue/ds-input.js +40 -0
- package/dist/vue/ds-loader.d.ts +3 -0
- package/dist/vue/ds-loader.js +10 -0
- package/dist/vue/ds-markdown.d.ts +3 -0
- package/dist/vue/ds-markdown.js +9 -0
- package/dist/vue/ds-menu.d.ts +3 -0
- package/dist/vue/ds-menu.js +34 -0
- package/dist/vue/ds-message-actions.d.ts +3 -0
- package/dist/vue/ds-message-actions.js +15 -0
- package/dist/vue/ds-message-bubble.d.ts +3 -0
- package/dist/vue/ds-message-bubble.js +8 -0
- package/dist/vue/ds-message-composer.d.ts +3 -0
- package/dist/vue/ds-message-composer.js +21 -0
- package/dist/vue/ds-message-scroller.d.ts +3 -0
- package/dist/vue/ds-message-scroller.js +14 -0
- package/dist/vue/ds-message.d.ts +3 -0
- package/dist/vue/ds-message.js +17 -0
- package/dist/vue/ds-mobile-bar-nav.d.ts +3 -0
- package/dist/vue/ds-mobile-bar-nav.js +25 -0
- package/dist/vue/ds-mobile-header.d.ts +3 -0
- package/dist/vue/ds-mobile-header.js +23 -0
- package/dist/vue/ds-mobile-section-switcher.d.ts +3 -0
- package/dist/vue/ds-mobile-section-switcher.js +13 -0
- package/dist/vue/ds-mobile-sheet-nav.d.ts +3 -0
- package/dist/vue/ds-mobile-sheet-nav.js +26 -0
- package/dist/vue/ds-modal.d.ts +3 -0
- package/dist/vue/ds-modal.js +18 -0
- package/dist/vue/ds-pagination.d.ts +3 -0
- package/dist/vue/ds-pagination.js +25 -0
- package/dist/vue/ds-panel-nav.d.ts +3 -0
- package/dist/vue/ds-panel-nav.js +40 -0
- package/dist/vue/ds-panel-sub-nav.d.ts +3 -0
- package/dist/vue/ds-panel-sub-nav.js +15 -0
- package/dist/vue/ds-panel-tool-header.d.ts +3 -0
- package/dist/vue/ds-panel-tool-header.js +24 -0
- package/dist/vue/ds-panel-tool-search.d.ts +3 -0
- package/dist/vue/ds-panel-tool-search.js +25 -0
- package/dist/vue/ds-panel-tools.d.ts +3 -0
- package/dist/vue/ds-panel-tools.js +29 -0
- package/dist/vue/ds-paper-texture.d.ts +3 -0
- package/dist/vue/ds-paper-texture.js +8 -0
- package/dist/vue/ds-radio.d.ts +3 -0
- package/dist/vue/ds-radio.js +22 -0
- package/dist/vue/ds-scroll-overlay.d.ts +3 -0
- package/dist/vue/ds-scroll-overlay.js +11 -0
- package/dist/vue/ds-select.d.ts +3 -0
- package/dist/vue/ds-select.js +57 -0
- package/dist/vue/ds-shell-app.d.ts +3 -0
- package/dist/vue/ds-shell-app.js +46 -0
- package/dist/vue/ds-shell-page.d.ts +3 -0
- package/dist/vue/ds-shell-page.js +16 -0
- package/dist/vue/ds-shell-tools.d.ts +3 -0
- package/dist/vue/ds-shell-tools.js +28 -0
- package/dist/vue/ds-skeleton.d.ts +3 -0
- package/dist/vue/ds-skeleton.js +15 -0
- package/dist/vue/ds-slider.d.ts +3 -0
- package/dist/vue/ds-slider.js +40 -0
- package/dist/vue/ds-swatch-picker.d.ts +3 -0
- package/dist/vue/ds-swatch-picker.js +14 -0
- package/dist/vue/ds-switch.d.ts +3 -0
- package/dist/vue/ds-switch.js +22 -0
- package/dist/vue/ds-tab-group.d.ts +3 -0
- package/dist/vue/ds-tab-group.js +17 -0
- package/dist/vue/ds-table-saved-views.d.ts +3 -0
- package/dist/vue/ds-table-saved-views.js +28 -0
- package/dist/vue/ds-table-toolbar.d.ts +3 -0
- package/dist/vue/ds-table-toolbar.js +8 -0
- package/dist/vue/ds-table.d.ts +3 -0
- package/dist/vue/ds-table.js +86 -0
- package/dist/vue/ds-tag.d.ts +3 -0
- package/dist/vue/ds-tag.js +23 -0
- package/dist/vue/ds-text.d.ts +3 -0
- package/dist/vue/ds-text.js +20 -0
- package/dist/vue/ds-toast.d.ts +3 -0
- package/dist/vue/ds-toast.js +21 -0
- package/dist/vue/ds-tooltip-chart.d.ts +3 -0
- package/dist/vue/ds-tooltip-chart.js +14 -0
- package/dist/vue/ds-tooltip.d.ts +3 -0
- package/dist/vue/ds-tooltip.js +18 -0
- package/dist/vue/ds-typing-indicator.d.ts +3 -0
- package/dist/vue/ds-typing-indicator.js +8 -0
- package/dist/vue/vue-runtime.d.ts +32 -0
- package/dist/vue/vue-runtime.js +218 -0
- package/package.json +14 -2
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
/* tslint:disable */
|
|
3
|
+
/* auto-generated vue proxies */
|
|
4
|
+
import { defineContainer } from './vue-runtime.js';
|
|
5
|
+
import { defineCustomElement as defineDsTable } from '@ds-mo/ui/components/ds-table.js';
|
|
6
|
+
export const DsTable = /*@__PURE__*/ defineContainer('ds-table', defineDsTable, [
|
|
7
|
+
'columns',
|
|
8
|
+
'rows',
|
|
9
|
+
'groups',
|
|
10
|
+
'grouping',
|
|
11
|
+
'sort',
|
|
12
|
+
'collapsedGroupIds',
|
|
13
|
+
'caption',
|
|
14
|
+
'captionVisibility',
|
|
15
|
+
'columnCustomizer',
|
|
16
|
+
'hiddenColumnIds',
|
|
17
|
+
'columnOrder',
|
|
18
|
+
'displayedCount',
|
|
19
|
+
'totalCount',
|
|
20
|
+
'resultSummaryLabel',
|
|
21
|
+
'resultTotalSummaryLabel',
|
|
22
|
+
'stickyHeader',
|
|
23
|
+
'maxHeight',
|
|
24
|
+
'height',
|
|
25
|
+
'fitViewport',
|
|
26
|
+
'viewportInsetBlockStart',
|
|
27
|
+
'viewportInsetBlockEnd',
|
|
28
|
+
'scrollLabel',
|
|
29
|
+
'selectionMode',
|
|
30
|
+
'selectedRowIds',
|
|
31
|
+
'loading',
|
|
32
|
+
'chromeLoading',
|
|
33
|
+
'skeletonRows',
|
|
34
|
+
'emptyHeading',
|
|
35
|
+
'emptyBody',
|
|
36
|
+
'error',
|
|
37
|
+
'errorHeading',
|
|
38
|
+
'errorBody',
|
|
39
|
+
'emptyCellLabel',
|
|
40
|
+
'dataMode',
|
|
41
|
+
'dataModeSwitcher',
|
|
42
|
+
'dataModeSwitcherLabel',
|
|
43
|
+
'dataModeMenuLabel',
|
|
44
|
+
'infiniteModeLabel',
|
|
45
|
+
'paginationModeLabel',
|
|
46
|
+
'virtualModeLabel',
|
|
47
|
+
'pagination',
|
|
48
|
+
'loadMoreMode',
|
|
49
|
+
'hasMore',
|
|
50
|
+
'loadingMore',
|
|
51
|
+
'loadMoreError',
|
|
52
|
+
'loadIdentity',
|
|
53
|
+
'loadMoreThreshold',
|
|
54
|
+
'loadMoreLabel',
|
|
55
|
+
'retryLabel',
|
|
56
|
+
'loadingMoreLabel',
|
|
57
|
+
'endOfResultsLabel',
|
|
58
|
+
'rowsLoadedLabel',
|
|
59
|
+
'groupLoadMoreLabel',
|
|
60
|
+
'groupLoadMoreAriaLabel',
|
|
61
|
+
'groupRetryLabel',
|
|
62
|
+
'groupLoadingMoreLabel',
|
|
63
|
+
'groupEndOfResultsLabel',
|
|
64
|
+
'groupRowsLoadedLabel',
|
|
65
|
+
'dsSortChange',
|
|
66
|
+
'dsGroupCollapseChange',
|
|
67
|
+
'dsSelectionChange',
|
|
68
|
+
'dsLoadMore',
|
|
69
|
+
'dsGroupLoadMore',
|
|
70
|
+
'dsPaginationChange',
|
|
71
|
+
'dsCellAction',
|
|
72
|
+
'dsRowActivate',
|
|
73
|
+
'dsColumnsConfigChange',
|
|
74
|
+
'dsDataModeChange'
|
|
75
|
+
], [
|
|
76
|
+
'dsSortChange',
|
|
77
|
+
'dsGroupCollapseChange',
|
|
78
|
+
'dsSelectionChange',
|
|
79
|
+
'dsLoadMore',
|
|
80
|
+
'dsGroupLoadMore',
|
|
81
|
+
'dsPaginationChange',
|
|
82
|
+
'dsCellAction',
|
|
83
|
+
'dsRowActivate',
|
|
84
|
+
'dsColumnsConfigChange',
|
|
85
|
+
'dsDataModeChange'
|
|
86
|
+
]);
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
/* tslint:disable */
|
|
3
|
+
/* auto-generated vue proxies */
|
|
4
|
+
import { defineContainer } from './vue-runtime.js';
|
|
5
|
+
import { defineCustomElement as defineDsTag } from '@ds-mo/ui/components/ds-tag.js';
|
|
6
|
+
export const DsTag = /*@__PURE__*/ defineContainer('ds-tag', defineDsTag, [
|
|
7
|
+
'label',
|
|
8
|
+
'icon',
|
|
9
|
+
'intent',
|
|
10
|
+
'contrast',
|
|
11
|
+
'size',
|
|
12
|
+
'isInset',
|
|
13
|
+
'insetDepth',
|
|
14
|
+
'rounded',
|
|
15
|
+
'maxWidth',
|
|
16
|
+
'interactive',
|
|
17
|
+
'expanded',
|
|
18
|
+
'ariaControls',
|
|
19
|
+
'isInactive',
|
|
20
|
+
'dsClick'
|
|
21
|
+
], [
|
|
22
|
+
'dsClick'
|
|
23
|
+
]);
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
/* tslint:disable */
|
|
3
|
+
/* auto-generated vue proxies */
|
|
4
|
+
import { defineContainer } from './vue-runtime.js';
|
|
5
|
+
import { defineCustomElement as defineDsText } from '@ds-mo/ui/components/ds-text.js';
|
|
6
|
+
export const DsText = /*@__PURE__*/ defineContainer('ds-text', defineDsText, [
|
|
7
|
+
'variant',
|
|
8
|
+
'emphasis',
|
|
9
|
+
'color',
|
|
10
|
+
'decoration',
|
|
11
|
+
'italic',
|
|
12
|
+
'shimmer',
|
|
13
|
+
'align',
|
|
14
|
+
'lineTruncation',
|
|
15
|
+
'wrap',
|
|
16
|
+
'fontFeature',
|
|
17
|
+
'as',
|
|
18
|
+
'for',
|
|
19
|
+
'textId'
|
|
20
|
+
]);
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
/* tslint:disable */
|
|
3
|
+
/* auto-generated vue proxies */
|
|
4
|
+
import { defineContainer } from './vue-runtime.js';
|
|
5
|
+
import { defineCustomElement as defineDsToast } from '@ds-mo/ui/components/ds-toast.js';
|
|
6
|
+
export const DsToast = /*@__PURE__*/ defineContainer('ds-toast', defineDsToast, [
|
|
7
|
+
'manager',
|
|
8
|
+
'limit',
|
|
9
|
+
'timeout',
|
|
10
|
+
'label',
|
|
11
|
+
'closeLabel',
|
|
12
|
+
'avoidMobileShellBar',
|
|
13
|
+
'swipeDirections',
|
|
14
|
+
'dsToastClose',
|
|
15
|
+
'dsToastRemove',
|
|
16
|
+
'dsToastAction'
|
|
17
|
+
], [
|
|
18
|
+
'dsToastClose',
|
|
19
|
+
'dsToastRemove',
|
|
20
|
+
'dsToastAction'
|
|
21
|
+
]);
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
/* tslint:disable */
|
|
3
|
+
/* auto-generated vue proxies */
|
|
4
|
+
import { defineContainer } from './vue-runtime.js';
|
|
5
|
+
import { defineCustomElement as defineDsTooltipChart } from '@ds-mo/ui/components/ds-tooltip-chart.js';
|
|
6
|
+
export const DsTooltipChart = /*@__PURE__*/ defineContainer('ds-tooltip-chart', defineDsTooltipChart, [
|
|
7
|
+
'value',
|
|
8
|
+
'label',
|
|
9
|
+
'heading',
|
|
10
|
+
'items',
|
|
11
|
+
'x',
|
|
12
|
+
'y',
|
|
13
|
+
'delay'
|
|
14
|
+
]);
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
/* tslint:disable */
|
|
3
|
+
/* auto-generated vue proxies */
|
|
4
|
+
import { defineContainer } from './vue-runtime.js';
|
|
5
|
+
import { defineCustomElement as defineDsTooltip } from '@ds-mo/ui/components/ds-tooltip.js';
|
|
6
|
+
export const DsTooltip = /*@__PURE__*/ defineContainer('ds-tooltip', defineDsTooltip, [
|
|
7
|
+
'label',
|
|
8
|
+
'size',
|
|
9
|
+
'side',
|
|
10
|
+
'align',
|
|
11
|
+
'sideOffset',
|
|
12
|
+
'alignOffset',
|
|
13
|
+
'delay',
|
|
14
|
+
'shortcutKey',
|
|
15
|
+
'shortcutKeyPosition',
|
|
16
|
+
'describedBy',
|
|
17
|
+
'wrapLabel'
|
|
18
|
+
]);
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
/* tslint:disable */
|
|
3
|
+
/* auto-generated vue proxies */
|
|
4
|
+
import { defineContainer } from './vue-runtime.js';
|
|
5
|
+
import { defineCustomElement as defineDsTypingIndicator } from '@ds-mo/ui/components/ds-typing-indicator.js';
|
|
6
|
+
export const DsTypingIndicator = /*@__PURE__*/ defineContainer('ds-typing-indicator', defineDsTypingIndicator, [
|
|
7
|
+
'label'
|
|
8
|
+
]);
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type {
|
|
2
|
+
AllowedComponentProps,
|
|
3
|
+
ComponentCustomProps,
|
|
4
|
+
DefineSetupFnComponent,
|
|
5
|
+
VNodeProps,
|
|
6
|
+
} from 'vue';
|
|
7
|
+
|
|
8
|
+
export type StencilVueComponent<
|
|
9
|
+
Props,
|
|
10
|
+
VModelType = string | number | boolean,
|
|
11
|
+
> = DefineSetupFnComponent<
|
|
12
|
+
Props & { modelValue?: VModelType } & VNodeProps & AllowedComponentProps & ComponentCustomProps,
|
|
13
|
+
{},
|
|
14
|
+
{},
|
|
15
|
+
Props & { modelValue?: VModelType } & VNodeProps & AllowedComponentProps & ComponentCustomProps
|
|
16
|
+
>;
|
|
17
|
+
|
|
18
|
+
export declare function defineContainer<
|
|
19
|
+
Props,
|
|
20
|
+
VModelType = string | number | boolean,
|
|
21
|
+
>(
|
|
22
|
+
name: string,
|
|
23
|
+
defineCustomElement?: () => void,
|
|
24
|
+
componentProps?: string[],
|
|
25
|
+
emitProps?: string[],
|
|
26
|
+
modelProp?: string,
|
|
27
|
+
modelUpdateEvent?: string,
|
|
28
|
+
modelUpdateEventAttribute?: string,
|
|
29
|
+
transformTagFn?: (tagName: string) => string,
|
|
30
|
+
): StencilVueComponent<Props, VModelType>;
|
|
31
|
+
|
|
32
|
+
export declare function defineStencilSSRComponent(...args: never[]): never;
|
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
// node_modules/@stencil/vue-output-target/dist/runtime.js
|
|
2
|
+
import { defineComponent, useSlots, createSSRApp, compile, ref, onMounted, getCurrentInstance, inject, h, withDirectives } from "vue";
|
|
3
|
+
function isPrimitive(value) {
|
|
4
|
+
return typeof value === "string" || typeof value === "number" || typeof value === "boolean";
|
|
5
|
+
}
|
|
6
|
+
function defineStencilSSRComponent(options) {
|
|
7
|
+
return defineComponent({
|
|
8
|
+
async setup(props, context) {
|
|
9
|
+
const slots = useSlots();
|
|
10
|
+
let renderedLightDom = "";
|
|
11
|
+
if (typeof slots.default === "function") {
|
|
12
|
+
const ssrLightDom = createSSRApp({ render: () => slots.default() });
|
|
13
|
+
const { renderToString: vueRenderToString } = await import("vue/server-renderer");
|
|
14
|
+
renderedLightDom = await vueRenderToString(ssrLightDom, { context });
|
|
15
|
+
}
|
|
16
|
+
let stringProps = "";
|
|
17
|
+
const complexProps = {};
|
|
18
|
+
for (const [key, value] of Object.entries(props)) {
|
|
19
|
+
if (typeof value === "undefined") {
|
|
20
|
+
continue;
|
|
21
|
+
}
|
|
22
|
+
if (!isPrimitive(value)) {
|
|
23
|
+
complexProps[key] = value;
|
|
24
|
+
continue;
|
|
25
|
+
}
|
|
26
|
+
if (typeof value === "boolean" && value === false) {
|
|
27
|
+
continue;
|
|
28
|
+
}
|
|
29
|
+
const propName = options.props?.[key]?.[1] ?? key;
|
|
30
|
+
const propValue = typeof value === "boolean" ? '"true"' : `"${value}"`;
|
|
31
|
+
stringProps += ` ${propName}=${propValue}`;
|
|
32
|
+
}
|
|
33
|
+
const hydrateModule = await options.hydrateModule;
|
|
34
|
+
if (options.getTagTransformer) {
|
|
35
|
+
const tagTransformer = options.getTagTransformer();
|
|
36
|
+
if (tagTransformer && hydrateModule.setTagTransformer) {
|
|
37
|
+
hydrateModule.setTagTransformer(tagTransformer);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
const transformedTagName = hydrateModule.transformTag ? hydrateModule.transformTag(options.tagName) : options.tagName;
|
|
41
|
+
const toSerialize = `<${transformedTagName}${stringProps}>${renderedLightDom}</${transformedTagName}>`;
|
|
42
|
+
const { renderToString } = hydrateModule;
|
|
43
|
+
const { html } = await renderToString(toSerialize, {
|
|
44
|
+
fullDocument: false,
|
|
45
|
+
serializeShadowRoot: true,
|
|
46
|
+
...Object.keys(complexProps).length > 0 && {
|
|
47
|
+
beforeHydrate: (doc) => {
|
|
48
|
+
const el = doc.querySelector(transformedTagName);
|
|
49
|
+
if (el) {
|
|
50
|
+
for (const [propName, value] of Object.entries(complexProps)) {
|
|
51
|
+
el[propName] = value;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
if (!html) {
|
|
58
|
+
throw new Error(`'${options.tagName}' component did not render anything.`);
|
|
59
|
+
}
|
|
60
|
+
return compile(html.replace(/<style([^>]*)>/g, `<component :is="'style'" $1>`).replace(/<\/style>/g, "</component>"), {
|
|
61
|
+
comments: true,
|
|
62
|
+
isCustomElement: (tag) => tag === transformedTagName || tag === options.tagName
|
|
63
|
+
});
|
|
64
|
+
},
|
|
65
|
+
props: Object.entries(options.props || {}).reduce((acc, [key, value]) => {
|
|
66
|
+
acc[key] = value[0];
|
|
67
|
+
return acc;
|
|
68
|
+
}, {}),
|
|
69
|
+
/**
|
|
70
|
+
* the template tags can be arbitrary as they will be replaced with above compiled template
|
|
71
|
+
*/
|
|
72
|
+
template: "<div></div>"
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
var UPDATE_VALUE_EVENT = "update:modelValue";
|
|
76
|
+
var MODEL_VALUE = "modelValue";
|
|
77
|
+
var ROUTER_LINK_VALUE = "routerLink";
|
|
78
|
+
var NAV_MANAGER = "navManager";
|
|
79
|
+
var ROUTER_PROP_PREFIX = "router";
|
|
80
|
+
var ARIA_PROP_PREFIX = "aria";
|
|
81
|
+
var EMPTY_PROP = /* @__PURE__ */ Symbol();
|
|
82
|
+
var DEFAULT_EMPTY_PROP = { default: EMPTY_PROP };
|
|
83
|
+
var getComponentClasses = (classes) => {
|
|
84
|
+
return classes?.split(" ") || [];
|
|
85
|
+
};
|
|
86
|
+
var syncElementClasses = (ref2, componentClasses, defaultClasses = []) => {
|
|
87
|
+
if (ref2?.value) {
|
|
88
|
+
const element = ref2.value;
|
|
89
|
+
componentClasses.forEach((c) => {
|
|
90
|
+
if (!!c && !element.classList.contains(c)) {
|
|
91
|
+
element.classList.add(c);
|
|
92
|
+
}
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
return [...Array.from(ref2.value?.classList || []), ...defaultClasses].filter((c, i, self) => {
|
|
96
|
+
return !componentClasses.has(c) && self.indexOf(c) === i;
|
|
97
|
+
});
|
|
98
|
+
};
|
|
99
|
+
var defineContainer = (name, defineCustomElement, componentProps = [], emitProps = [], modelProp, modelUpdateEvent, modelUpdateEventAttribute, transformTagFn) => {
|
|
100
|
+
if (defineCustomElement !== void 0) {
|
|
101
|
+
defineCustomElement();
|
|
102
|
+
}
|
|
103
|
+
const emits = emitProps;
|
|
104
|
+
const props = [ROUTER_LINK_VALUE, ...componentProps].reduce((acc, prop) => {
|
|
105
|
+
acc[prop] = DEFAULT_EMPTY_PROP;
|
|
106
|
+
return acc;
|
|
107
|
+
}, {});
|
|
108
|
+
if (modelProp) {
|
|
109
|
+
emits.push(UPDATE_VALUE_EVENT);
|
|
110
|
+
props[MODEL_VALUE] = DEFAULT_EMPTY_PROP;
|
|
111
|
+
}
|
|
112
|
+
return defineComponent((props2, { attrs, slots, emit }) => {
|
|
113
|
+
let modelPropValue = modelProp ? props2[modelProp] : void 0;
|
|
114
|
+
const containerRef = ref();
|
|
115
|
+
const classes = new Set(getComponentClasses(attrs.class));
|
|
116
|
+
onMounted(() => {
|
|
117
|
+
emitProps.forEach((eventName) => {
|
|
118
|
+
containerRef.value?.addEventListener(eventName, (e) => {
|
|
119
|
+
emit(eventName, e);
|
|
120
|
+
});
|
|
121
|
+
});
|
|
122
|
+
});
|
|
123
|
+
const vModelDirective = {
|
|
124
|
+
created: (el) => {
|
|
125
|
+
const eventsNames = Array.isArray(modelUpdateEvent) ? modelUpdateEvent : [modelUpdateEvent];
|
|
126
|
+
eventsNames.forEach((eventName) => {
|
|
127
|
+
el.addEventListener(eventName, (e) => {
|
|
128
|
+
if (e.target.tagName === el.tagName && modelProp) {
|
|
129
|
+
const resolvePath = (object, path2) => {
|
|
130
|
+
return path2.split(".").reduce((value, key) => value !== void 0 ? value[key] : void 0, object);
|
|
131
|
+
};
|
|
132
|
+
const path = modelUpdateEventAttribute ?? `target.${modelProp}`;
|
|
133
|
+
const modelPropValue2 = resolvePath(e, path);
|
|
134
|
+
emit(UPDATE_VALUE_EVENT, modelPropValue2);
|
|
135
|
+
}
|
|
136
|
+
});
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
};
|
|
140
|
+
const currentInstance = getCurrentInstance();
|
|
141
|
+
const hasRouter = currentInstance?.appContext?.provides[NAV_MANAGER];
|
|
142
|
+
const navManager = hasRouter ? inject(NAV_MANAGER) : void 0;
|
|
143
|
+
const handleRouterLink = (ev) => {
|
|
144
|
+
const { routerLink } = props2;
|
|
145
|
+
if (routerLink === EMPTY_PROP)
|
|
146
|
+
return;
|
|
147
|
+
const mouseEv = ev;
|
|
148
|
+
if (mouseEv.metaKey || mouseEv.ctrlKey || mouseEv.shiftKey) {
|
|
149
|
+
return;
|
|
150
|
+
}
|
|
151
|
+
if (navManager !== void 0) {
|
|
152
|
+
ev.preventDefault();
|
|
153
|
+
let navigationPayload = { event: ev };
|
|
154
|
+
for (const key in props2) {
|
|
155
|
+
const value = props2[key];
|
|
156
|
+
if (props2.hasOwnProperty(key) && key.startsWith(ROUTER_PROP_PREFIX) && value !== EMPTY_PROP) {
|
|
157
|
+
navigationPayload[key] = value;
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
navManager.navigate(navigationPayload);
|
|
161
|
+
} else {
|
|
162
|
+
console.warn("Tried to navigate, but no router was found. Make sure you have mounted Vue Router.");
|
|
163
|
+
}
|
|
164
|
+
};
|
|
165
|
+
return () => {
|
|
166
|
+
modelPropValue = props2[modelProp];
|
|
167
|
+
getComponentClasses(attrs.class).forEach((value) => {
|
|
168
|
+
classes.add(value);
|
|
169
|
+
});
|
|
170
|
+
const oldClick = props2.onClick;
|
|
171
|
+
const handleClick = (ev) => {
|
|
172
|
+
if (oldClick !== void 0) {
|
|
173
|
+
oldClick(ev);
|
|
174
|
+
}
|
|
175
|
+
if (!ev.defaultPrevented) {
|
|
176
|
+
handleRouterLink(ev);
|
|
177
|
+
}
|
|
178
|
+
};
|
|
179
|
+
const propsToAdd = {
|
|
180
|
+
ref: containerRef,
|
|
181
|
+
class: syncElementClasses(containerRef, classes),
|
|
182
|
+
onClick: handleClick
|
|
183
|
+
};
|
|
184
|
+
for (const key in props2) {
|
|
185
|
+
const value = props2[key];
|
|
186
|
+
if (props2.hasOwnProperty(key) && value !== EMPTY_PROP || key.startsWith(ARIA_PROP_PREFIX)) {
|
|
187
|
+
propsToAdd[key] = value;
|
|
188
|
+
}
|
|
189
|
+
const eventHandlerKey = "on" + key.slice(0, 1).toUpperCase() + key.slice(1);
|
|
190
|
+
const eventHandler = attrs[eventHandlerKey];
|
|
191
|
+
if (containerRef.value && attrs.hasOwnProperty(eventHandlerKey) && "addEventListener" in containerRef.value) {
|
|
192
|
+
containerRef.value.addEventListener(key, eventHandler);
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
if (modelProp) {
|
|
196
|
+
if (props2[MODEL_VALUE] !== EMPTY_PROP) {
|
|
197
|
+
propsToAdd[modelProp] = props2[MODEL_VALUE];
|
|
198
|
+
} else if (modelPropValue !== EMPTY_PROP) {
|
|
199
|
+
propsToAdd[modelProp] = modelPropValue;
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
if (ROUTER_LINK_VALUE in props2 && props2[ROUTER_LINK_VALUE] !== EMPTY_PROP) {
|
|
203
|
+
propsToAdd.href = props2[ROUTER_LINK_VALUE];
|
|
204
|
+
}
|
|
205
|
+
const tagName = transformTagFn ? transformTagFn(name) : name;
|
|
206
|
+
const node = h(tagName, propsToAdd, slots.default && slots.default());
|
|
207
|
+
return modelProp === void 0 ? node : withDirectives(node, [[vModelDirective]]);
|
|
208
|
+
};
|
|
209
|
+
}, {
|
|
210
|
+
name,
|
|
211
|
+
props,
|
|
212
|
+
emits
|
|
213
|
+
});
|
|
214
|
+
};
|
|
215
|
+
export {
|
|
216
|
+
defineContainer,
|
|
217
|
+
defineStencilSSRComponent
|
|
218
|
+
};
|
package/package.json
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ds-mo/ui",
|
|
3
|
-
"version": "14.
|
|
3
|
+
"version": "14.15.0",
|
|
4
4
|
"description": "CompoMo — composable web components styled with TokoMo design tokens",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"web-components",
|
|
7
7
|
"custom-elements",
|
|
8
8
|
"react",
|
|
9
9
|
"angular",
|
|
10
|
+
"vue",
|
|
10
11
|
"components",
|
|
11
12
|
"ui",
|
|
12
13
|
"design-system",
|
|
@@ -44,6 +45,10 @@
|
|
|
44
45
|
"types": "./dist/react/components.d.ts",
|
|
45
46
|
"import": "./dist/react/components.js"
|
|
46
47
|
},
|
|
48
|
+
"./vue": {
|
|
49
|
+
"types": "./dist/vue/components.d.ts",
|
|
50
|
+
"import": "./dist/vue/components.js"
|
|
51
|
+
},
|
|
47
52
|
"./dist/components": {
|
|
48
53
|
"types": "./dist/types/components.d.ts",
|
|
49
54
|
"import": "./dist/components/index.js"
|
|
@@ -114,7 +119,8 @@
|
|
|
114
119
|
"@ds-mo/tokens": "^6.5.0",
|
|
115
120
|
"react": "^18 || ^19",
|
|
116
121
|
"react-dom": "^18 || ^19",
|
|
117
|
-
"rxjs": "^7.8.0"
|
|
122
|
+
"rxjs": "^7.8.0",
|
|
123
|
+
"vue": "^3.4.38"
|
|
118
124
|
},
|
|
119
125
|
"peerDependenciesMeta": {
|
|
120
126
|
"@angular/core": {
|
|
@@ -131,6 +137,9 @@
|
|
|
131
137
|
},
|
|
132
138
|
"rxjs": {
|
|
133
139
|
"optional": true
|
|
140
|
+
},
|
|
141
|
+
"vue": {
|
|
142
|
+
"optional": true
|
|
134
143
|
}
|
|
135
144
|
},
|
|
136
145
|
"devDependencies": {
|
|
@@ -150,6 +159,7 @@
|
|
|
150
159
|
"@stencil/angular-output-target": "^1.4.0",
|
|
151
160
|
"@stencil/core": "^4.43.5",
|
|
152
161
|
"@stencil/react-output-target": "^1.6.0",
|
|
162
|
+
"@stencil/vue-output-target": "^0.14.1",
|
|
153
163
|
"@storybook/addon-a11y": "^10.5.1",
|
|
154
164
|
"@storybook/addon-docs": "^10.5.0",
|
|
155
165
|
"@storybook/addon-vitest": "^10.5.2",
|
|
@@ -180,6 +190,8 @@
|
|
|
180
190
|
"typescript-eslint": "^8.63.0",
|
|
181
191
|
"vite": "^8.1.4",
|
|
182
192
|
"vitest": "^4.1.10",
|
|
193
|
+
"vue": "^3.5.41",
|
|
194
|
+
"vue-router": "^5.2.0",
|
|
183
195
|
"zod": "^4.4.3"
|
|
184
196
|
},
|
|
185
197
|
"engines": {
|