@ds-mo/ui 1.0.2 → 1.2.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.
Files changed (177) hide show
  1. package/README.md +0 -1
  2. package/dist/components/ds-bar-nav-action.js +1 -1
  3. package/dist/components/ds-bar-nav.js +1 -1
  4. package/dist/components/ds-bar-nav.js.map +1 -1
  5. package/dist/components/ds-breadcrumb.js +1 -1
  6. package/dist/components/ds-button-group.js +1 -1
  7. package/dist/components/ds-button.js +1 -1
  8. package/dist/components/ds-card.js +1 -1
  9. package/dist/components/ds-card.js.map +1 -1
  10. package/dist/components/ds-checkbox.js +1 -1
  11. package/dist/components/ds-divider.js +1 -1
  12. package/dist/components/ds-divider.js.map +1 -1
  13. package/dist/components/ds-empty-state.js +1 -1
  14. package/dist/components/ds-empty-state.js.map +1 -1
  15. package/dist/components/ds-fade.js +1 -1
  16. package/dist/components/ds-field.js +1 -1
  17. package/dist/components/ds-header.js +1 -1
  18. package/dist/components/ds-header.js.map +1 -1
  19. package/dist/components/ds-icon.js +1 -1
  20. package/dist/components/ds-input.js +1 -1
  21. package/dist/components/ds-menu.js +1 -1
  22. package/dist/components/ds-panel-nav.js +1 -1
  23. package/dist/components/ds-select.js +1 -1
  24. package/dist/components/ds-slider.js +1 -1
  25. package/dist/components/{ds-label-wrap.d.ts → ds-tab-group-nav.d.ts} +4 -4
  26. package/dist/components/ds-tab-group-nav.js +2 -0
  27. package/dist/components/ds-tab-group-nav.js.map +1 -0
  28. package/dist/components/ds-tab-group.js +1 -1
  29. package/dist/components/ds-tab-group.js.map +1 -1
  30. package/dist/components/ds-table.js +1 -1
  31. package/dist/components/ds-table.js.map +1 -1
  32. package/dist/components/ds-tag.js +1 -1
  33. package/dist/components/ds-text.js +1 -1
  34. package/dist/components/ds-toast-provider.js +1 -1
  35. package/dist/components/ds-toggle-button-group.js +1 -1
  36. package/dist/components/ds-toggle-button.js +1 -1
  37. package/dist/components/ds-toggle.js +1 -1
  38. package/dist/components/ds-tooltip.js +1 -1
  39. package/dist/components/p-BQq26pt9.js +2 -0
  40. package/dist/components/p-BQq26pt9.js.map +1 -0
  41. package/dist/components/{p-DouEVPmi.js → p-CE5zeV1w.js} +2 -2
  42. package/dist/components/{p-D3CwGoIu.js → p-COsKOwZR.js} +2 -2
  43. package/dist/components/p-CQQe6VNo.js +2 -0
  44. package/dist/components/p-CQQe6VNo.js.map +1 -0
  45. package/dist/components/p-Cj00JkJb.js +2 -0
  46. package/dist/components/p-Cj00JkJb.js.map +1 -0
  47. package/dist/components/p-CpbnmEu1.js +2 -0
  48. package/dist/components/p-CpbnmEu1.js.map +1 -0
  49. package/dist/components/{p-BvxKLqNx.js → p-H89PzqGU.js} +2 -2
  50. package/dist/components/{p-BYe8Rfdg.js → p-Vwlmhl4E.js} +2 -2
  51. package/dist/types/.stencil/BarNav/BarNav.d.ts +7 -2
  52. package/dist/types/.stencil/BarNav/bar-nav-dom-utils.d.ts +1 -2
  53. package/dist/types/.stencil/Divider/Divider.d.ts +14 -0
  54. package/dist/types/.stencil/TabGroupNav/TabGroupNav.d.ts +27 -0
  55. package/dist/types/.stencil/Text/Text.d.ts +2 -0
  56. package/dist/types/components.d.ts +125 -63
  57. package/package.json +37 -7
  58. package/src/angular/index.ts +1 -1
  59. package/src/angular/proxies.ts +32 -27
  60. package/src/react/components.ts +45 -0
  61. package/src/react/ds-accordion.ts +27 -0
  62. package/src/react/ds-badge.ts +26 -0
  63. package/src/react/ds-banner.ts +27 -0
  64. package/src/react/ds-bar-nav-action.ts +27 -0
  65. package/src/react/ds-bar-nav.ts +33 -0
  66. package/src/react/ds-breadcrumb.ts +27 -0
  67. package/src/react/ds-button-group.ts +27 -0
  68. package/src/react/ds-button.ts +35 -0
  69. package/src/react/ds-card.ts +26 -0
  70. package/src/react/ds-checkbox.ts +27 -0
  71. package/src/react/ds-divider.ts +26 -0
  72. package/src/react/ds-empty-state.ts +26 -0
  73. package/src/react/ds-fade.ts +26 -0
  74. package/src/react/ds-field.ts +26 -0
  75. package/src/react/ds-header.ts +26 -0
  76. package/src/react/ds-icon.ts +26 -0
  77. package/src/react/ds-input.ts +33 -0
  78. package/src/react/ds-loader.ts +26 -0
  79. package/src/react/ds-menu.ts +33 -0
  80. package/src/react/ds-modal.ts +27 -0
  81. package/src/react/ds-pagination.ts +27 -0
  82. package/src/react/ds-panel-nav.ts +37 -0
  83. package/src/react/ds-radio-group.ts +27 -0
  84. package/src/react/ds-scrollbar.ts +26 -0
  85. package/src/react/ds-select.ts +27 -0
  86. package/src/react/ds-sidebar.ts +33 -0
  87. package/src/react/ds-skeleton.ts +26 -0
  88. package/src/react/ds-slider.ts +27 -0
  89. package/src/react/ds-surface.ts +26 -0
  90. package/src/react/ds-tab-group-nav.ts +27 -0
  91. package/src/react/ds-tab-group.ts +27 -0
  92. package/src/react/ds-table.ts +35 -0
  93. package/src/react/ds-tag.ts +35 -0
  94. package/src/react/ds-text.ts +26 -0
  95. package/src/react/ds-toast-provider.ts +26 -0
  96. package/src/react/ds-toggle-button-group.ts +27 -0
  97. package/src/react/ds-toggle-button.ts +27 -0
  98. package/src/react/ds-toggle.ts +27 -0
  99. package/src/react/ds-tooltip.ts +26 -0
  100. package/src/wc/components/Accordion/Accordion.tsx +144 -0
  101. package/src/wc/components/Badge/Badge.tsx +34 -0
  102. package/src/wc/components/Badge/index.ts +1 -0
  103. package/src/wc/components/Banner/Banner.tsx +148 -0
  104. package/src/wc/components/BarNav/BarNav.tsx +605 -0
  105. package/src/wc/components/BarNav/bar-nav-dom-utils.ts +23 -0
  106. package/src/wc/components/BarNav/bar-nav-tabs-menu-utils.ts +59 -0
  107. package/src/wc/components/BarNav/bar-nav-utils.ts +76 -0
  108. package/src/wc/components/BarNav/index.ts +1 -0
  109. package/src/wc/components/BarNavAction/BarNavAction.tsx +67 -0
  110. package/src/wc/components/BarNavAction/index.ts +1 -0
  111. package/src/wc/components/Breadcrumb/Breadcrumb.tsx +61 -0
  112. package/src/wc/components/Button/Button.tsx +158 -0
  113. package/src/wc/components/Button/index.ts +1 -0
  114. package/src/wc/components/ButtonGroup/ButtonGroup.tsx +110 -0
  115. package/src/wc/components/Card/Card.tsx +26 -0
  116. package/src/wc/components/Checkbox/Checkbox.tsx +60 -0
  117. package/src/wc/components/Checkbox/index.ts +1 -0
  118. package/src/wc/components/Divider/Divider.tsx +107 -0
  119. package/src/wc/components/Divider/index.ts +2 -0
  120. package/src/wc/components/EmptyState/EmptyState.tsx +32 -0
  121. package/src/wc/components/Fade/Fade.tsx +32 -0
  122. package/src/wc/components/Fade/index.ts +1 -0
  123. package/src/wc/components/Field/Field.tsx +28 -0
  124. package/src/wc/components/Header/Header.tsx +33 -0
  125. package/src/wc/components/Icon/Icon.tsx +112 -0
  126. package/src/wc/components/Icon/flag-icon-catalog.ts +68 -0
  127. package/src/wc/components/Icon/index.ts +1 -0
  128. package/src/wc/components/Icon/system-icon-catalog.ts +798 -0
  129. package/src/wc/components/Input/Input.tsx +100 -0
  130. package/src/wc/components/Input/index.ts +1 -0
  131. package/src/wc/components/Loader/Loader.tsx +47 -0
  132. package/src/wc/components/Loader/index.ts +1 -0
  133. package/src/wc/components/Menu/Menu.tsx +340 -0
  134. package/src/wc/components/Modal/Modal.tsx +197 -0
  135. package/src/wc/components/Pagination/Pagination.tsx +97 -0
  136. package/src/wc/components/PanelNav/PanelNav.tsx +666 -0
  137. package/src/wc/components/PanelNav/index.ts +7 -0
  138. package/src/wc/components/PanelNav/panel-nav-utils.ts +124 -0
  139. package/src/wc/components/RadioGroup/RadioGroup.tsx +128 -0
  140. package/src/wc/components/RadioGroup/index.ts +1 -0
  141. package/src/wc/components/Scrollbar/Scrollbar.tsx +189 -0
  142. package/src/wc/components/Select/Select.tsx +195 -0
  143. package/src/wc/components/Sidebar/Sidebar.tsx +245 -0
  144. package/src/wc/components/Skeleton/Skeleton.tsx +64 -0
  145. package/src/wc/components/Skeleton/index.ts +1 -0
  146. package/src/wc/components/Slider/Slider.tsx +68 -0
  147. package/src/wc/components/Slider/index.ts +1 -0
  148. package/src/wc/components/Surface/Surface.tsx +81 -0
  149. package/src/wc/components/TabGroup/TabGroup.tsx +188 -0
  150. package/src/wc/components/TabGroup/tab-item-utils.ts +24 -0
  151. package/src/wc/components/TabGroupNav/TabGroupNav.tsx +188 -0
  152. package/src/wc/components/Table/Table.tsx +268 -0
  153. package/src/wc/components/Tag/Tag.tsx +135 -0
  154. package/src/wc/components/Tag/index.ts +1 -0
  155. package/src/wc/components/Text/Text.tsx +103 -0
  156. package/src/wc/components/Text/index.ts +1 -0
  157. package/src/wc/components/Toast/Toast.tsx +174 -0
  158. package/src/wc/components/Toast/toast-service.ts +60 -0
  159. package/src/wc/components/Toggle/Toggle.tsx +43 -0
  160. package/src/wc/components/Toggle/index.ts +1 -0
  161. package/src/wc/components/ToggleButton/ToggleButton.tsx +120 -0
  162. package/src/wc/components/ToggleButtonGroup/ToggleButtonGroup.tsx +118 -0
  163. package/src/wc/components/Tooltip/Tooltip.tsx +196 -0
  164. package/src/wc/components.d.ts +3022 -0
  165. package/dist/components/ds-label-wrap.js +0 -2
  166. package/dist/components/ds-label-wrap.js.map +0 -1
  167. package/dist/components/p-C4p1fG67.js +0 -2
  168. package/dist/components/p-C4p1fG67.js.map +0 -1
  169. package/dist/components/p-DV8pmt1m.js +0 -2
  170. package/dist/components/p-DV8pmt1m.js.map +0 -1
  171. package/dist/components/p-STnE_bmQ.js +0 -2
  172. package/dist/components/p-STnE_bmQ.js.map +0 -1
  173. package/dist/types/.stencil/LabelWrap/LabelWrap.d.ts +0 -15
  174. /package/dist/components/{p-DouEVPmi.js.map → p-CE5zeV1w.js.map} +0 -0
  175. /package/dist/components/{p-D3CwGoIu.js.map → p-COsKOwZR.js.map} +0 -0
  176. /package/dist/components/{p-BvxKLqNx.js.map → p-H89PzqGU.js.map} +0 -0
  177. /package/dist/components/{p-BYe8Rfdg.js.map → p-Vwlmhl4E.js.map} +0 -0
@@ -0,0 +1,26 @@
1
+ 'use client';
2
+
3
+ /**
4
+ * This file was automatically generated by the Stencil React Output Target.
5
+ * Changes to this file may cause incorrect behavior and will be lost if the code is regenerated.
6
+ */
7
+
8
+ /* eslint-disable */
9
+
10
+ import type { StencilReactComponent } from '@stencil/react-output-target/runtime';
11
+ import { createComponent } from '@stencil/react-output-target/runtime';
12
+ import React from 'react';
13
+
14
+ import type { Components } from "@ds-mo/ui/dist/components";
15
+ import { DsScrollbar as DsScrollbarElement, defineCustomElement as defineDsScrollbar } from "@ds-mo/ui/dist/components/ds-scrollbar.js";
16
+
17
+ export type DsScrollbarEvents = NonNullable<unknown>;
18
+
19
+ export const DsScrollbar: StencilReactComponent<DsScrollbarElement, DsScrollbarEvents, Components.DsScrollbar> = /*@__PURE__*/ createComponent<DsScrollbarElement, DsScrollbarEvents, Components.DsScrollbar>({
20
+ tagName: 'ds-scrollbar',
21
+ elementClass: DsScrollbarElement,
22
+ // @ts-ignore - ignore potential React type mismatches between the Stencil Output Target and your project.
23
+ react: React,
24
+ events: {} as DsScrollbarEvents,
25
+ defineCustomElement: defineDsScrollbar
26
+ });
@@ -0,0 +1,27 @@
1
+ 'use client';
2
+
3
+ /**
4
+ * This file was automatically generated by the Stencil React Output Target.
5
+ * Changes to this file may cause incorrect behavior and will be lost if the code is regenerated.
6
+ */
7
+
8
+ /* eslint-disable */
9
+
10
+ import type { EventName, StencilReactComponent } from '@stencil/react-output-target/runtime';
11
+ import { createComponent } from '@stencil/react-output-target/runtime';
12
+ import React from 'react';
13
+
14
+ import { type DsSelectCustomEvent } from "@ds-mo/ui";
15
+ import type { Components } from "@ds-mo/ui/dist/components";
16
+ import { DsSelect as DsSelectElement, defineCustomElement as defineDsSelect } from "@ds-mo/ui/dist/components/ds-select.js";
17
+
18
+ export type DsSelectEvents = { onDsChange: EventName<DsSelectCustomEvent<string>> };
19
+
20
+ export const DsSelect: StencilReactComponent<DsSelectElement, DsSelectEvents, Components.DsSelect> = /*@__PURE__*/ createComponent<DsSelectElement, DsSelectEvents, Components.DsSelect>({
21
+ tagName: 'ds-select',
22
+ elementClass: DsSelectElement,
23
+ // @ts-ignore - ignore potential React type mismatches between the Stencil Output Target and your project.
24
+ react: React,
25
+ events: { onDsChange: 'dsChange' } as DsSelectEvents,
26
+ defineCustomElement: defineDsSelect
27
+ });
@@ -0,0 +1,33 @@
1
+ 'use client';
2
+
3
+ /**
4
+ * This file was automatically generated by the Stencil React Output Target.
5
+ * Changes to this file may cause incorrect behavior and will be lost if the code is regenerated.
6
+ */
7
+
8
+ /* eslint-disable */
9
+
10
+ import type { EventName, StencilReactComponent } from '@stencil/react-output-target/runtime';
11
+ import { createComponent } from '@stencil/react-output-target/runtime';
12
+ import React from 'react';
13
+
14
+ import { type DsSidebarCustomEvent, type SidebarWidth } from "@ds-mo/ui";
15
+ import type { Components } from "@ds-mo/ui/dist/components";
16
+ import { DsSidebar as DsSidebarElement, defineCustomElement as defineDsSidebar } from "@ds-mo/ui/dist/components/ds-sidebar.js";
17
+
18
+ export type DsSidebarEvents = {
19
+ onDsToggle: EventName<DsSidebarCustomEvent<void>>,
20
+ onDsWidthChange: EventName<DsSidebarCustomEvent<SidebarWidth>>
21
+ };
22
+
23
+ export const DsSidebar: StencilReactComponent<DsSidebarElement, DsSidebarEvents, Components.DsSidebar> = /*@__PURE__*/ createComponent<DsSidebarElement, DsSidebarEvents, Components.DsSidebar>({
24
+ tagName: 'ds-sidebar',
25
+ elementClass: DsSidebarElement,
26
+ // @ts-ignore - ignore potential React type mismatches between the Stencil Output Target and your project.
27
+ react: React,
28
+ events: {
29
+ onDsToggle: 'dsToggle',
30
+ onDsWidthChange: 'dsWidthChange'
31
+ } as DsSidebarEvents,
32
+ defineCustomElement: defineDsSidebar
33
+ });
@@ -0,0 +1,26 @@
1
+ 'use client';
2
+
3
+ /**
4
+ * This file was automatically generated by the Stencil React Output Target.
5
+ * Changes to this file may cause incorrect behavior and will be lost if the code is regenerated.
6
+ */
7
+
8
+ /* eslint-disable */
9
+
10
+ import type { StencilReactComponent } from '@stencil/react-output-target/runtime';
11
+ import { createComponent } from '@stencil/react-output-target/runtime';
12
+ import React from 'react';
13
+
14
+ import type { Components } from "@ds-mo/ui/dist/components";
15
+ import { DsSkeleton as DsSkeletonElement, defineCustomElement as defineDsSkeleton } from "@ds-mo/ui/dist/components/ds-skeleton.js";
16
+
17
+ export type DsSkeletonEvents = NonNullable<unknown>;
18
+
19
+ export const DsSkeleton: StencilReactComponent<DsSkeletonElement, DsSkeletonEvents, Components.DsSkeleton> = /*@__PURE__*/ createComponent<DsSkeletonElement, DsSkeletonEvents, Components.DsSkeleton>({
20
+ tagName: 'ds-skeleton',
21
+ elementClass: DsSkeletonElement,
22
+ // @ts-ignore - ignore potential React type mismatches between the Stencil Output Target and your project.
23
+ react: React,
24
+ events: {} as DsSkeletonEvents,
25
+ defineCustomElement: defineDsSkeleton
26
+ });
@@ -0,0 +1,27 @@
1
+ 'use client';
2
+
3
+ /**
4
+ * This file was automatically generated by the Stencil React Output Target.
5
+ * Changes to this file may cause incorrect behavior and will be lost if the code is regenerated.
6
+ */
7
+
8
+ /* eslint-disable */
9
+
10
+ import type { EventName, StencilReactComponent } from '@stencil/react-output-target/runtime';
11
+ import { createComponent } from '@stencil/react-output-target/runtime';
12
+ import React from 'react';
13
+
14
+ import { type DsSliderCustomEvent } from "@ds-mo/ui";
15
+ import type { Components } from "@ds-mo/ui/dist/components";
16
+ import { DsSlider as DsSliderElement, defineCustomElement as defineDsSlider } from "@ds-mo/ui/dist/components/ds-slider.js";
17
+
18
+ export type DsSliderEvents = { onDsChange: EventName<DsSliderCustomEvent<number>> };
19
+
20
+ export const DsSlider: StencilReactComponent<DsSliderElement, DsSliderEvents, Components.DsSlider> = /*@__PURE__*/ createComponent<DsSliderElement, DsSliderEvents, Components.DsSlider>({
21
+ tagName: 'ds-slider',
22
+ elementClass: DsSliderElement,
23
+ // @ts-ignore - ignore potential React type mismatches between the Stencil Output Target and your project.
24
+ react: React,
25
+ events: { onDsChange: 'dsChange' } as DsSliderEvents,
26
+ defineCustomElement: defineDsSlider
27
+ });
@@ -0,0 +1,26 @@
1
+ 'use client';
2
+
3
+ /**
4
+ * This file was automatically generated by the Stencil React Output Target.
5
+ * Changes to this file may cause incorrect behavior and will be lost if the code is regenerated.
6
+ */
7
+
8
+ /* eslint-disable */
9
+
10
+ import type { StencilReactComponent } from '@stencil/react-output-target/runtime';
11
+ import { createComponent } from '@stencil/react-output-target/runtime';
12
+ import React from 'react';
13
+
14
+ import type { Components } from "@ds-mo/ui/dist/components";
15
+ import { DsSurface as DsSurfaceElement, defineCustomElement as defineDsSurface } from "@ds-mo/ui/dist/components/ds-surface.js";
16
+
17
+ export type DsSurfaceEvents = NonNullable<unknown>;
18
+
19
+ export const DsSurface: StencilReactComponent<DsSurfaceElement, DsSurfaceEvents, Components.DsSurface> = /*@__PURE__*/ createComponent<DsSurfaceElement, DsSurfaceEvents, Components.DsSurface>({
20
+ tagName: 'ds-surface',
21
+ elementClass: DsSurfaceElement,
22
+ // @ts-ignore - ignore potential React type mismatches between the Stencil Output Target and your project.
23
+ react: React,
24
+ events: {} as DsSurfaceEvents,
25
+ defineCustomElement: defineDsSurface
26
+ });
@@ -0,0 +1,27 @@
1
+ 'use client';
2
+
3
+ /**
4
+ * This file was automatically generated by the Stencil React Output Target.
5
+ * Changes to this file may cause incorrect behavior and will be lost if the code is regenerated.
6
+ */
7
+
8
+ /* eslint-disable */
9
+
10
+ import type { EventName, StencilReactComponent } from '@stencil/react-output-target/runtime';
11
+ import { createComponent } from '@stencil/react-output-target/runtime';
12
+ import React from 'react';
13
+
14
+ import { type DsTabGroupNavCustomEvent } from "@ds-mo/ui";
15
+ import type { Components } from "@ds-mo/ui/dist/components";
16
+ import { DsTabGroupNav as DsTabGroupNavElement, defineCustomElement as defineDsTabGroupNav } from "@ds-mo/ui/dist/components/ds-tab-group-nav.js";
17
+
18
+ export type DsTabGroupNavEvents = { onDsChange: EventName<DsTabGroupNavCustomEvent<string>> };
19
+
20
+ export const DsTabGroupNav: StencilReactComponent<DsTabGroupNavElement, DsTabGroupNavEvents, Components.DsTabGroupNav> = /*@__PURE__*/ createComponent<DsTabGroupNavElement, DsTabGroupNavEvents, Components.DsTabGroupNav>({
21
+ tagName: 'ds-tab-group-nav',
22
+ elementClass: DsTabGroupNavElement,
23
+ // @ts-ignore - ignore potential React type mismatches between the Stencil Output Target and your project.
24
+ react: React,
25
+ events: { onDsChange: 'dsChange' } as DsTabGroupNavEvents,
26
+ defineCustomElement: defineDsTabGroupNav
27
+ });
@@ -0,0 +1,27 @@
1
+ 'use client';
2
+
3
+ /**
4
+ * This file was automatically generated by the Stencil React Output Target.
5
+ * Changes to this file may cause incorrect behavior and will be lost if the code is regenerated.
6
+ */
7
+
8
+ /* eslint-disable */
9
+
10
+ import type { EventName, StencilReactComponent } from '@stencil/react-output-target/runtime';
11
+ import { createComponent } from '@stencil/react-output-target/runtime';
12
+ import React from 'react';
13
+
14
+ import { type DsTabGroupCustomEvent } from "@ds-mo/ui";
15
+ import type { Components } from "@ds-mo/ui/dist/components";
16
+ import { DsTabGroup as DsTabGroupElement, defineCustomElement as defineDsTabGroup } from "@ds-mo/ui/dist/components/ds-tab-group.js";
17
+
18
+ export type DsTabGroupEvents = { onDsChange: EventName<DsTabGroupCustomEvent<string>> };
19
+
20
+ export const DsTabGroup: StencilReactComponent<DsTabGroupElement, DsTabGroupEvents, Components.DsTabGroup> = /*@__PURE__*/ createComponent<DsTabGroupElement, DsTabGroupEvents, Components.DsTabGroup>({
21
+ tagName: 'ds-tab-group',
22
+ elementClass: DsTabGroupElement,
23
+ // @ts-ignore - ignore potential React type mismatches between the Stencil Output Target and your project.
24
+ react: React,
25
+ events: { onDsChange: 'dsChange' } as DsTabGroupEvents,
26
+ defineCustomElement: defineDsTabGroup
27
+ });
@@ -0,0 +1,35 @@
1
+ 'use client';
2
+
3
+ /**
4
+ * This file was automatically generated by the Stencil React Output Target.
5
+ * Changes to this file may cause incorrect behavior and will be lost if the code is regenerated.
6
+ */
7
+
8
+ /* eslint-disable */
9
+
10
+ import type { EventName, StencilReactComponent } from '@stencil/react-output-target/runtime';
11
+ import { createComponent } from '@stencil/react-output-target/runtime';
12
+ import React from 'react';
13
+
14
+ import { type DsTableCustomEvent } from "@ds-mo/ui";
15
+ import type { Components } from "@ds-mo/ui/dist/components";
16
+ import { DsTable as DsTableElement, defineCustomElement as defineDsTable } from "@ds-mo/ui/dist/components/ds-table.js";
17
+
18
+ export type DsTableEvents = {
19
+ onDsSort: EventName<DsTableCustomEvent<{ columnId: string }>>,
20
+ onDsRowClick: EventName<DsTableCustomEvent<{ row: unknown; rowIndex: number }>>,
21
+ onDsPageChange: EventName<DsTableCustomEvent<{ pageIndex: number }>>
22
+ };
23
+
24
+ export const DsTable: StencilReactComponent<DsTableElement, DsTableEvents, Components.DsTable> = /*@__PURE__*/ createComponent<DsTableElement, DsTableEvents, Components.DsTable>({
25
+ tagName: 'ds-table',
26
+ elementClass: DsTableElement,
27
+ // @ts-ignore - ignore potential React type mismatches between the Stencil Output Target and your project.
28
+ react: React,
29
+ events: {
30
+ onDsSort: 'dsSort',
31
+ onDsRowClick: 'dsRowClick',
32
+ onDsPageChange: 'dsPageChange'
33
+ } as DsTableEvents,
34
+ defineCustomElement: defineDsTable
35
+ });
@@ -0,0 +1,35 @@
1
+ 'use client';
2
+
3
+ /**
4
+ * This file was automatically generated by the Stencil React Output Target.
5
+ * Changes to this file may cause incorrect behavior and will be lost if the code is regenerated.
6
+ */
7
+
8
+ /* eslint-disable */
9
+
10
+ import type { EventName, StencilReactComponent } from '@stencil/react-output-target/runtime';
11
+ import { createComponent } from '@stencil/react-output-target/runtime';
12
+ import React from 'react';
13
+
14
+ import { type DsTagCustomEvent } from "@ds-mo/ui";
15
+ import type { Components } from "@ds-mo/ui/dist/components";
16
+ import { DsTag as DsTagElement, defineCustomElement as defineDsTag } from "@ds-mo/ui/dist/components/ds-tag.js";
17
+
18
+ export type DsTagEvents = {
19
+ onDsRemove: EventName<DsTagCustomEvent<void>>,
20
+ onDsClick: EventName<DsTagCustomEvent<void>>,
21
+ onDsPressedChange: EventName<DsTagCustomEvent<boolean>>
22
+ };
23
+
24
+ export const DsTag: StencilReactComponent<DsTagElement, DsTagEvents, Components.DsTag> = /*@__PURE__*/ createComponent<DsTagElement, DsTagEvents, Components.DsTag>({
25
+ tagName: 'ds-tag',
26
+ elementClass: DsTagElement,
27
+ // @ts-ignore - ignore potential React type mismatches between the Stencil Output Target and your project.
28
+ react: React,
29
+ events: {
30
+ onDsRemove: 'dsRemove',
31
+ onDsClick: 'dsClick',
32
+ onDsPressedChange: 'dsPressedChange'
33
+ } as DsTagEvents,
34
+ defineCustomElement: defineDsTag
35
+ });
@@ -0,0 +1,26 @@
1
+ 'use client';
2
+
3
+ /**
4
+ * This file was automatically generated by the Stencil React Output Target.
5
+ * Changes to this file may cause incorrect behavior and will be lost if the code is regenerated.
6
+ */
7
+
8
+ /* eslint-disable */
9
+
10
+ import type { StencilReactComponent } from '@stencil/react-output-target/runtime';
11
+ import { createComponent } from '@stencil/react-output-target/runtime';
12
+ import React from 'react';
13
+
14
+ import type { Components } from "@ds-mo/ui/dist/components";
15
+ import { DsText as DsTextElement, defineCustomElement as defineDsText } from "@ds-mo/ui/dist/components/ds-text.js";
16
+
17
+ export type DsTextEvents = NonNullable<unknown>;
18
+
19
+ export const DsText: StencilReactComponent<DsTextElement, DsTextEvents, Components.DsText> = /*@__PURE__*/ createComponent<DsTextElement, DsTextEvents, Components.DsText>({
20
+ tagName: 'ds-text',
21
+ elementClass: DsTextElement,
22
+ // @ts-ignore - ignore potential React type mismatches between the Stencil Output Target and your project.
23
+ react: React,
24
+ events: {} as DsTextEvents,
25
+ defineCustomElement: defineDsText
26
+ });
@@ -0,0 +1,26 @@
1
+ 'use client';
2
+
3
+ /**
4
+ * This file was automatically generated by the Stencil React Output Target.
5
+ * Changes to this file may cause incorrect behavior and will be lost if the code is regenerated.
6
+ */
7
+
8
+ /* eslint-disable */
9
+
10
+ import type { StencilReactComponent } from '@stencil/react-output-target/runtime';
11
+ import { createComponent } from '@stencil/react-output-target/runtime';
12
+ import React from 'react';
13
+
14
+ import type { Components } from "@ds-mo/ui/dist/components";
15
+ import { DsToastProvider as DsToastProviderElement, defineCustomElement as defineDsToastProvider } from "@ds-mo/ui/dist/components/ds-toast-provider.js";
16
+
17
+ export type DsToastProviderEvents = NonNullable<unknown>;
18
+
19
+ export const DsToastProvider: StencilReactComponent<DsToastProviderElement, DsToastProviderEvents, Components.DsToastProvider> = /*@__PURE__*/ createComponent<DsToastProviderElement, DsToastProviderEvents, Components.DsToastProvider>({
20
+ tagName: 'ds-toast-provider',
21
+ elementClass: DsToastProviderElement,
22
+ // @ts-ignore - ignore potential React type mismatches between the Stencil Output Target and your project.
23
+ react: React,
24
+ events: {} as DsToastProviderEvents,
25
+ defineCustomElement: defineDsToastProvider
26
+ });
@@ -0,0 +1,27 @@
1
+ 'use client';
2
+
3
+ /**
4
+ * This file was automatically generated by the Stencil React Output Target.
5
+ * Changes to this file may cause incorrect behavior and will be lost if the code is regenerated.
6
+ */
7
+
8
+ /* eslint-disable */
9
+
10
+ import type { EventName, StencilReactComponent } from '@stencil/react-output-target/runtime';
11
+ import { createComponent } from '@stencil/react-output-target/runtime';
12
+ import React from 'react';
13
+
14
+ import { type DsToggleButtonGroupCustomEvent } from "@ds-mo/ui";
15
+ import type { Components } from "@ds-mo/ui/dist/components";
16
+ import { DsToggleButtonGroup as DsToggleButtonGroupElement, defineCustomElement as defineDsToggleButtonGroup } from "@ds-mo/ui/dist/components/ds-toggle-button-group.js";
17
+
18
+ export type DsToggleButtonGroupEvents = { onDsChange: EventName<DsToggleButtonGroupCustomEvent<string>> };
19
+
20
+ export const DsToggleButtonGroup: StencilReactComponent<DsToggleButtonGroupElement, DsToggleButtonGroupEvents, Components.DsToggleButtonGroup> = /*@__PURE__*/ createComponent<DsToggleButtonGroupElement, DsToggleButtonGroupEvents, Components.DsToggleButtonGroup>({
21
+ tagName: 'ds-toggle-button-group',
22
+ elementClass: DsToggleButtonGroupElement,
23
+ // @ts-ignore - ignore potential React type mismatches between the Stencil Output Target and your project.
24
+ react: React,
25
+ events: { onDsChange: 'dsChange' } as DsToggleButtonGroupEvents,
26
+ defineCustomElement: defineDsToggleButtonGroup
27
+ });
@@ -0,0 +1,27 @@
1
+ 'use client';
2
+
3
+ /**
4
+ * This file was automatically generated by the Stencil React Output Target.
5
+ * Changes to this file may cause incorrect behavior and will be lost if the code is regenerated.
6
+ */
7
+
8
+ /* eslint-disable */
9
+
10
+ import type { EventName, StencilReactComponent } from '@stencil/react-output-target/runtime';
11
+ import { createComponent } from '@stencil/react-output-target/runtime';
12
+ import React from 'react';
13
+
14
+ import { type DsToggleButtonCustomEvent } from "@ds-mo/ui";
15
+ import type { Components } from "@ds-mo/ui/dist/components";
16
+ import { DsToggleButton as DsToggleButtonElement, defineCustomElement as defineDsToggleButton } from "@ds-mo/ui/dist/components/ds-toggle-button.js";
17
+
18
+ export type DsToggleButtonEvents = { onDsChange: EventName<DsToggleButtonCustomEvent<boolean>> };
19
+
20
+ export const DsToggleButton: StencilReactComponent<DsToggleButtonElement, DsToggleButtonEvents, Components.DsToggleButton> = /*@__PURE__*/ createComponent<DsToggleButtonElement, DsToggleButtonEvents, Components.DsToggleButton>({
21
+ tagName: 'ds-toggle-button',
22
+ elementClass: DsToggleButtonElement,
23
+ // @ts-ignore - ignore potential React type mismatches between the Stencil Output Target and your project.
24
+ react: React,
25
+ events: { onDsChange: 'dsChange' } as DsToggleButtonEvents,
26
+ defineCustomElement: defineDsToggleButton
27
+ });
@@ -0,0 +1,27 @@
1
+ 'use client';
2
+
3
+ /**
4
+ * This file was automatically generated by the Stencil React Output Target.
5
+ * Changes to this file may cause incorrect behavior and will be lost if the code is regenerated.
6
+ */
7
+
8
+ /* eslint-disable */
9
+
10
+ import type { EventName, StencilReactComponent } from '@stencil/react-output-target/runtime';
11
+ import { createComponent } from '@stencil/react-output-target/runtime';
12
+ import React from 'react';
13
+
14
+ import { type DsToggleCustomEvent } from "@ds-mo/ui";
15
+ import type { Components } from "@ds-mo/ui/dist/components";
16
+ import { DsToggle as DsToggleElement, defineCustomElement as defineDsToggle } from "@ds-mo/ui/dist/components/ds-toggle.js";
17
+
18
+ export type DsToggleEvents = { onDsChange: EventName<DsToggleCustomEvent<boolean>> };
19
+
20
+ export const DsToggle: StencilReactComponent<DsToggleElement, DsToggleEvents, Components.DsToggle> = /*@__PURE__*/ createComponent<DsToggleElement, DsToggleEvents, Components.DsToggle>({
21
+ tagName: 'ds-toggle',
22
+ elementClass: DsToggleElement,
23
+ // @ts-ignore - ignore potential React type mismatches between the Stencil Output Target and your project.
24
+ react: React,
25
+ events: { onDsChange: 'dsChange' } as DsToggleEvents,
26
+ defineCustomElement: defineDsToggle
27
+ });
@@ -0,0 +1,26 @@
1
+ 'use client';
2
+
3
+ /**
4
+ * This file was automatically generated by the Stencil React Output Target.
5
+ * Changes to this file may cause incorrect behavior and will be lost if the code is regenerated.
6
+ */
7
+
8
+ /* eslint-disable */
9
+
10
+ import type { StencilReactComponent } from '@stencil/react-output-target/runtime';
11
+ import { createComponent } from '@stencil/react-output-target/runtime';
12
+ import React from 'react';
13
+
14
+ import type { Components } from "@ds-mo/ui/dist/components";
15
+ import { DsTooltip as DsTooltipElement, defineCustomElement as defineDsTooltip } from "@ds-mo/ui/dist/components/ds-tooltip.js";
16
+
17
+ export type DsTooltipEvents = NonNullable<unknown>;
18
+
19
+ export const DsTooltip: StencilReactComponent<DsTooltipElement, DsTooltipEvents, Components.DsTooltip> = /*@__PURE__*/ createComponent<DsTooltipElement, DsTooltipEvents, Components.DsTooltip>({
20
+ tagName: 'ds-tooltip',
21
+ elementClass: DsTooltipElement,
22
+ // @ts-ignore - ignore potential React type mismatches between the Stencil Output Target and your project.
23
+ react: React,
24
+ events: {} as DsTooltipEvents,
25
+ defineCustomElement: defineDsTooltip
26
+ });
@@ -0,0 +1,144 @@
1
+ import { Component, Prop, State, Event, EventEmitter, Element, Watch, h, Host } from '@stencil/core';
2
+
3
+ export interface AccordionItemData {
4
+ id: string;
5
+ label: string;
6
+ content?: string;
7
+ inactive?: boolean;
8
+ }
9
+
10
+ let idCounter = 0;
11
+
12
+ @Component({
13
+ tag: 'ds-accordion',
14
+ styleUrl: 'Accordion.css',
15
+ scoped: true,
16
+ })
17
+ export class Accordion {
18
+ @Element() el!: HTMLElement;
19
+
20
+ @Prop() items: AccordionItemData[] = [];
21
+ @Prop() multiple: boolean = false;
22
+ /** Comma-separated list of expanded item IDs for controlled mode. */
23
+ @Prop({ mutable: true }) expandedIds: string = '';
24
+
25
+ @State() private internalIds: string[] = [];
26
+ @State() private heights: Record<string, number> = {};
27
+
28
+ @Event() dsExpandedChange!: EventEmitter<string[]>;
29
+
30
+ private instanceId = ++idCounter;
31
+ private resizeObservers: Map<string, ResizeObserver> = new Map();
32
+
33
+ private get activeIds(): string[] {
34
+ if (this.expandedIds) return this.expandedIds.split(',').map(s => s.trim()).filter(Boolean);
35
+ return this.internalIds;
36
+ }
37
+
38
+ componentDidLoad() {
39
+ this.bindResizeObservers();
40
+ }
41
+
42
+ disconnectedCallback() {
43
+ this.resizeObservers.forEach(ro => ro.disconnect());
44
+ this.resizeObservers.clear();
45
+ }
46
+
47
+ @Watch('items')
48
+ onItemsChange() {
49
+ requestAnimationFrame(() => {
50
+ this.bindResizeObservers();
51
+ this.measureAll();
52
+ });
53
+ }
54
+
55
+ private bindResizeObservers() {
56
+ this.resizeObservers.forEach(ro => ro.disconnect());
57
+ this.resizeObservers.clear();
58
+
59
+ this.items.forEach(item => {
60
+ const inner = this.el.querySelector(`[data-inner="${item.id}"]`) as HTMLElement | null;
61
+ if (!inner) return;
62
+ const ro = new ResizeObserver(() => {
63
+ this.heights = { ...this.heights, [item.id]: inner.scrollHeight };
64
+ });
65
+ ro.observe(inner);
66
+ this.resizeObservers.set(item.id, ro);
67
+ });
68
+ }
69
+
70
+ private measureAll() {
71
+ const next: Record<string, number> = { ...this.heights };
72
+ this.items.forEach(item => {
73
+ const inner = this.el.querySelector(`[data-inner="${item.id}"]`) as HTMLElement | null;
74
+ if (inner) next[item.id] = inner.scrollHeight;
75
+ });
76
+ this.heights = next;
77
+ }
78
+
79
+ private toggle(id: string) {
80
+ const current = this.activeIds;
81
+ let next: string[];
82
+ if (current.includes(id)) {
83
+ next = current.filter(x => x !== id);
84
+ } else {
85
+ next = this.multiple ? [...current, id] : [id];
86
+ }
87
+ this.internalIds = next;
88
+ this.dsExpandedChange.emit(next);
89
+ }
90
+
91
+ render() {
92
+ const activeIds = this.activeIds;
93
+
94
+ return (
95
+ <Host class="accordion">
96
+ {this.items.map(item => {
97
+ const isExpanded = activeIds.includes(item.id);
98
+ const triggerId = `ds-accordion-${this.instanceId}-trigger-${item.id}`;
99
+ const panelId = `ds-accordion-${this.instanceId}-panel-${item.id}`;
100
+ const bodyHeight = this.heights[item.id] ?? 0;
101
+
102
+ return (
103
+ <div
104
+ key={item.id}
105
+ class={{ item: true, 'item--inactive': !!item.inactive }}
106
+ >
107
+ <button
108
+ type="button"
109
+ id={triggerId}
110
+ class="trigger"
111
+ onClick={() => !item.inactive && this.toggle(item.id)}
112
+ aria-expanded={isExpanded}
113
+ aria-controls={panelId}
114
+ aria-disabled={item.inactive || undefined}
115
+ tabIndex={item.inactive ? -1 : 0}
116
+ >
117
+ <span class="text-body-medium-emphasis">{item.label}</span>
118
+ <span
119
+ class={{ chevron: true, 'chevron--open': isExpanded }}
120
+ aria-hidden="true"
121
+ >&#x203A;</span>
122
+ </button>
123
+ <div
124
+ id={panelId}
125
+ role="region"
126
+ aria-labelledby={triggerId}
127
+ class="body"
128
+ style={{ height: isExpanded ? `${bodyHeight}px` : '0' }}
129
+ aria-hidden={!isExpanded}
130
+ >
131
+ <div class="body-inner" data-inner={item.id}>
132
+ {item.content
133
+ ? <span class="text-body-medium">{item.content}</span>
134
+ : <slot name={item.id} />
135
+ }
136
+ </div>
137
+ </div>
138
+ </div>
139
+ );
140
+ })}
141
+ </Host>
142
+ );
143
+ }
144
+ }
@@ -0,0 +1,34 @@
1
+ import { Component, Prop, h, Host } from '@stencil/core';
2
+
3
+ @Component({
4
+ tag: 'ds-badge',
5
+ styleUrl: 'Badge.css',
6
+ scoped: true,
7
+ })
8
+ export class Badge {
9
+ @Prop() count: number = 0;
10
+ @Prop() isSelected: boolean = false;
11
+ /** Accessible label. Defaults to the count as a string. */
12
+ @Prop() label: string | undefined;
13
+
14
+ render() {
15
+ if (this.count === 0) return <Host style={{ display: 'none' }} />;
16
+
17
+ const display = this.count > 9 ? '+' : String(this.count);
18
+ const ariaLabel = this.label ?? String(this.count);
19
+
20
+ return (
21
+ <Host class="badge" aria-label={ariaLabel}>
22
+ <span
23
+ class={{
24
+ 'text-caption-emphasis': true,
25
+ 'badge__text': true,
26
+ 'badge__text--selected': this.isSelected,
27
+ }}
28
+ >
29
+ {display}
30
+ </span>
31
+ </Host>
32
+ );
33
+ }
34
+ }
@@ -0,0 +1 @@
1
+ export type {} from './Badge';