@ds-mo/ui 3.0.1 → 3.1.1

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 (438) hide show
  1. package/dist/.build-stamp +1 -1
  2. package/dist/angular/angular-component-lib/utils.d.ts +9 -0
  3. package/dist/angular/angular-component-lib/utils.js +58 -0
  4. package/dist/angular/boolean-value-accessor.d.ts +9 -0
  5. package/dist/angular/boolean-value-accessor.js +37 -0
  6. package/dist/angular/ds-app-shell.d.ts +12 -0
  7. package/dist/angular/ds-app-shell.js +38 -0
  8. package/dist/angular/ds-badge.d.ts +12 -0
  9. package/dist/angular/ds-badge.js +38 -0
  10. package/dist/angular/ds-banner.d.ts +15 -0
  11. package/dist/angular/ds-banner.js +42 -0
  12. package/dist/angular/ds-bar-nav.d.ts +18 -0
  13. package/dist/angular/ds-bar-nav.js +42 -0
  14. package/dist/angular/ds-button-filled.d.ts +15 -0
  15. package/dist/angular/ds-button-filled.js +43 -0
  16. package/dist/angular/ds-button-unfilled.d.ts +17 -0
  17. package/dist/angular/ds-button-unfilled.js +46 -0
  18. package/dist/angular/ds-card-data-viz-donut.d.ts +18 -0
  19. package/dist/angular/ds-card-data-viz-donut.js +42 -0
  20. package/dist/angular/ds-card-setting.d.ts +18 -0
  21. package/dist/angular/ds-card-setting.js +42 -0
  22. package/dist/angular/ds-card.d.ts +12 -0
  23. package/dist/angular/ds-card.js +38 -0
  24. package/dist/angular/ds-chart-bar.d.ts +12 -0
  25. package/dist/angular/ds-chart-bar.js +38 -0
  26. package/dist/angular/ds-chart-donut.d.ts +19 -0
  27. package/dist/angular/ds-chart-donut.js +42 -0
  28. package/dist/angular/ds-chart-legend.d.ts +30 -0
  29. package/dist/angular/ds-chart-legend.js +45 -0
  30. package/dist/angular/ds-chart-line.d.ts +12 -0
  31. package/dist/angular/ds-chart-line.js +38 -0
  32. package/dist/angular/ds-checkbox.d.ts +15 -0
  33. package/dist/angular/ds-checkbox.js +42 -0
  34. package/dist/angular/ds-chip.d.ts +18 -0
  35. package/dist/angular/ds-chip.js +42 -0
  36. package/dist/angular/ds-divider.d.ts +12 -0
  37. package/dist/angular/ds-divider.js +38 -0
  38. package/dist/angular/ds-empty-state.d.ts +12 -0
  39. package/dist/angular/ds-empty-state.js +38 -0
  40. package/dist/angular/ds-field.d.ts +12 -0
  41. package/dist/angular/ds-field.js +38 -0
  42. package/dist/angular/ds-icon.d.ts +12 -0
  43. package/dist/angular/ds-icon.js +38 -0
  44. package/dist/angular/ds-input.d.ts +17 -0
  45. package/dist/angular/ds-input.js +46 -0
  46. package/dist/angular/ds-loader.d.ts +12 -0
  47. package/dist/angular/ds-loader.js +38 -0
  48. package/dist/angular/ds-menu.d.ts +24 -0
  49. package/dist/angular/ds-menu.js +48 -0
  50. package/dist/angular/ds-modal.d.ts +15 -0
  51. package/dist/angular/ds-modal.js +42 -0
  52. package/dist/angular/ds-pagination.d.ts +15 -0
  53. package/dist/angular/ds-pagination.js +42 -0
  54. package/dist/angular/ds-panel-nav.d.ts +42 -0
  55. package/dist/angular/ds-panel-nav.js +58 -0
  56. package/dist/angular/ds-panel-tools.d.ts +33 -0
  57. package/dist/angular/ds-panel-tools.js +49 -0
  58. package/dist/angular/ds-radio-group.d.ts +15 -0
  59. package/dist/angular/ds-radio-group.js +42 -0
  60. package/dist/angular/ds-select.d.ts +18 -0
  61. package/dist/angular/ds-select.js +42 -0
  62. package/dist/angular/ds-shell-gradient-picker.d.ts +16 -0
  63. package/dist/angular/ds-shell-gradient-picker.js +42 -0
  64. package/dist/angular/ds-shell-gradient-swatch.d.ts +16 -0
  65. package/dist/angular/ds-shell-gradient-swatch.js +42 -0
  66. package/dist/angular/ds-skeleton.d.ts +12 -0
  67. package/dist/angular/ds-skeleton.js +38 -0
  68. package/dist/angular/ds-slider.d.ts +15 -0
  69. package/dist/angular/ds-slider.js +42 -0
  70. package/dist/angular/ds-tab-group-nav.d.ts +20 -0
  71. package/dist/angular/ds-tab-group-nav.js +46 -0
  72. package/dist/angular/ds-tab-group.d.ts +15 -0
  73. package/dist/angular/ds-tab-group.js +42 -0
  74. package/dist/angular/ds-table.d.ts +33 -0
  75. package/dist/angular/ds-table.js +48 -0
  76. package/dist/angular/ds-tag.d.ts +12 -0
  77. package/dist/angular/ds-tag.js +38 -0
  78. package/dist/angular/ds-text.d.ts +12 -0
  79. package/dist/angular/ds-text.js +38 -0
  80. package/dist/angular/ds-toggle.d.ts +15 -0
  81. package/dist/angular/ds-toggle.js +42 -0
  82. package/dist/angular/ds-tooltip-data-viz.d.ts +12 -0
  83. package/dist/angular/ds-tooltip-data-viz.js +38 -0
  84. package/dist/angular/ds-tooltip.d.ts +12 -0
  85. package/dist/angular/ds-tooltip.js +38 -0
  86. package/dist/angular/index.d.ts +2 -0
  87. package/dist/angular/index.js +43 -0
  88. package/dist/angular/proxies.d.ts +44 -0
  89. package/dist/angular/proxies.js +45 -0
  90. package/dist/angular/radio-value-accessor.d.ts +8 -0
  91. package/dist/angular/radio-value-accessor.js +34 -0
  92. package/dist/angular/select-value-accessor.d.ts +8 -0
  93. package/dist/angular/select-value-accessor.js +34 -0
  94. package/dist/angular/text-value-accessor.d.ts +8 -0
  95. package/dist/angular/text-value-accessor.js +34 -0
  96. package/dist/angular/value-accessor.d.ts +18 -0
  97. package/dist/angular/value-accessor.js +39 -0
  98. package/dist/components/ds-app-shell.js +1 -1
  99. package/dist/components/ds-bar-nav.js +1 -1
  100. package/dist/components/ds-bar-nav.js.map +1 -1
  101. package/dist/components/ds-button-filled.js +1 -1
  102. package/dist/components/ds-button-unfilled.js +1 -1
  103. package/dist/components/ds-card-data-viz-donut.js +1 -1
  104. package/dist/components/ds-card-data-viz-donut.js.map +1 -1
  105. package/dist/components/ds-card-setting.js +1 -1
  106. package/dist/components/ds-card-setting.js.map +1 -1
  107. package/dist/components/ds-chart-donut.js +1 -1
  108. package/dist/components/ds-chart-donut.js.map +1 -1
  109. package/dist/components/ds-chart-legend.js +1 -1
  110. package/dist/components/ds-chart-legend.js.map +1 -1
  111. package/dist/components/ds-checkbox.js +1 -1
  112. package/dist/components/ds-checkbox.js.map +1 -1
  113. package/dist/components/ds-chip.js +1 -1
  114. package/dist/components/ds-chip.js.map +1 -1
  115. package/dist/components/ds-empty-state.js +1 -1
  116. package/dist/components/ds-empty-state.js.map +1 -1
  117. package/dist/components/ds-input.js +1 -1
  118. package/dist/components/ds-input.js.map +1 -1
  119. package/dist/components/ds-menu.js +1 -1
  120. package/dist/components/ds-pagination.js +1 -1
  121. package/dist/components/ds-pagination.js.map +1 -1
  122. package/dist/components/ds-panel-nav.js +1 -1
  123. package/dist/components/ds-panel-nav.js.map +1 -1
  124. package/dist/components/ds-panel-tools.js +1 -1
  125. package/dist/components/ds-panel-tools.js.map +1 -1
  126. package/dist/components/ds-radio-group.js +1 -1
  127. package/dist/components/ds-radio-group.js.map +1 -1
  128. package/dist/components/ds-select.js +1 -1
  129. package/dist/components/ds-select.js.map +1 -1
  130. package/dist/components/ds-shell-gradient-picker.js +1 -1
  131. package/dist/components/ds-shell-gradient-swatch.js +1 -1
  132. package/dist/components/ds-tab-group-nav.js +1 -1
  133. package/dist/components/ds-tab-group.js +1 -1
  134. package/dist/components/ds-tab-group.js.map +1 -1
  135. package/dist/components/ds-table.js +1 -1
  136. package/dist/components/ds-table.js.map +1 -1
  137. package/dist/components/ds-toggle.js +1 -1
  138. package/dist/components/ds-toggle.js.map +1 -1
  139. package/dist/components/index.js +1 -1
  140. package/dist/components/index.js.map +1 -1
  141. package/dist/components/p-BBpASejH.js +2 -0
  142. package/dist/components/p-BBpASejH.js.map +1 -0
  143. package/dist/components/{p-D0gBLLJx.js → p-BFiaUYu7.js} +2 -2
  144. package/dist/components/p-BFiaUYu7.js.map +1 -0
  145. package/dist/components/p-CTK82RIw.js +2 -0
  146. package/dist/components/p-CTK82RIw.js.map +1 -0
  147. package/dist/components/{p-BSNlp8Di.js → p-Cp86p-11.js} +2 -2
  148. package/dist/components/{p-BSNlp8Di.js.map → p-Cp86p-11.js.map} +1 -1
  149. package/dist/components/{p-vlwhuqVn.js → p-DHjjwgku.js} +2 -2
  150. package/dist/components/{p-vlwhuqVn.js.map → p-DHjjwgku.js.map} +1 -1
  151. package/dist/components/{p-boPMASaQ.js → p-DOEMwKBb.js} +2 -2
  152. package/dist/components/{p-boPMASaQ.js.map → p-DOEMwKBb.js.map} +1 -1
  153. package/dist/components/{p-Co2kLhWu.js → p-DolYlDbY.js} +2 -2
  154. package/dist/components/p-DolYlDbY.js.map +1 -0
  155. package/dist/components/p-NkAPA-Dz.js +2 -0
  156. package/dist/components/p-NkAPA-Dz.js.map +1 -0
  157. package/dist/framework/angular.d.ts +6 -0
  158. package/dist/framework/angular.js +6 -0
  159. package/dist/lib/nav/chrome-transition.d.ts +8 -0
  160. package/dist/lib/nav/index.js.map +2 -2
  161. package/dist/lib/utils/format-compact-number.d.ts +1 -1
  162. package/dist/lib/utils/index.js +8 -1
  163. package/dist/lib/utils/index.js.map +2 -2
  164. package/dist/react/components.d.ts +44 -0
  165. package/{src/react/components.ts → dist/react/components.js} +0 -1
  166. package/dist/react/ds-app-shell.d.ts +9 -0
  167. package/dist/react/ds-app-shell.js +12 -0
  168. package/dist/react/ds-badge.d.ts +9 -0
  169. package/dist/react/ds-badge.js +12 -0
  170. package/dist/react/ds-banner.d.ts +12 -0
  171. package/dist/react/ds-banner.js +12 -0
  172. package/dist/react/ds-bar-nav.d.ts +12 -0
  173. package/dist/react/ds-bar-nav.js +12 -0
  174. package/dist/react/ds-button-filled.d.ts +12 -0
  175. package/dist/react/ds-button-filled.js +12 -0
  176. package/dist/react/ds-button-unfilled.d.ts +13 -0
  177. package/dist/react/ds-button-unfilled.js +15 -0
  178. package/dist/react/ds-card-data-viz-donut.d.ts +12 -0
  179. package/dist/react/ds-card-data-viz-donut.js +12 -0
  180. package/dist/react/ds-card-setting.d.ts +12 -0
  181. package/dist/react/ds-card-setting.js +12 -0
  182. package/dist/react/ds-card.d.ts +9 -0
  183. package/dist/react/ds-card.js +12 -0
  184. package/dist/react/ds-chart-bar.d.ts +9 -0
  185. package/dist/react/ds-chart-bar.js +12 -0
  186. package/dist/react/ds-chart-donut.d.ts +12 -0
  187. package/dist/react/ds-chart-donut.js +12 -0
  188. package/dist/react/ds-chart-legend.d.ts +16 -0
  189. package/dist/react/ds-chart-legend.js +15 -0
  190. package/dist/react/ds-chart-line.d.ts +9 -0
  191. package/dist/react/ds-chart-line.js +12 -0
  192. package/dist/react/ds-checkbox.d.ts +12 -0
  193. package/dist/react/ds-checkbox.js +12 -0
  194. package/dist/react/ds-chip.d.ts +12 -0
  195. package/dist/react/ds-chip.js +12 -0
  196. package/dist/react/ds-divider.d.ts +9 -0
  197. package/dist/react/ds-divider.js +12 -0
  198. package/dist/react/ds-empty-state.d.ts +9 -0
  199. package/dist/react/ds-empty-state.js +12 -0
  200. package/dist/react/ds-field.d.ts +9 -0
  201. package/dist/react/ds-field.js +12 -0
  202. package/dist/react/ds-icon.d.ts +9 -0
  203. package/dist/react/ds-icon.js +12 -0
  204. package/dist/react/ds-input.d.ts +13 -0
  205. package/dist/react/ds-input.js +15 -0
  206. package/dist/react/ds-loader.d.ts +9 -0
  207. package/dist/react/ds-loader.js +12 -0
  208. package/dist/react/ds-menu.d.ts +14 -0
  209. package/dist/react/ds-menu.js +16 -0
  210. package/dist/react/ds-modal.d.ts +12 -0
  211. package/dist/react/ds-modal.js +12 -0
  212. package/dist/react/ds-pagination.d.ts +12 -0
  213. package/dist/react/ds-pagination.js +12 -0
  214. package/dist/react/ds-panel-nav.d.ts +17 -0
  215. package/dist/react/ds-panel-nav.js +19 -0
  216. package/dist/react/ds-panel-tools.d.ts +17 -0
  217. package/dist/react/ds-panel-tools.js +16 -0
  218. package/dist/react/ds-radio-group.d.ts +12 -0
  219. package/dist/react/ds-radio-group.js +12 -0
  220. package/dist/react/ds-select.d.ts +12 -0
  221. package/dist/react/ds-select.js +12 -0
  222. package/dist/react/ds-shell-gradient-picker.d.ts +12 -0
  223. package/dist/react/ds-shell-gradient-picker.js +12 -0
  224. package/dist/react/ds-shell-gradient-swatch.d.ts +12 -0
  225. package/dist/react/ds-shell-gradient-swatch.js +12 -0
  226. package/dist/react/ds-skeleton.d.ts +9 -0
  227. package/dist/react/ds-skeleton.js +12 -0
  228. package/dist/react/ds-slider.d.ts +12 -0
  229. package/dist/react/ds-slider.js +12 -0
  230. package/dist/react/ds-tab-group-nav.d.ts +13 -0
  231. package/dist/react/ds-tab-group-nav.js +15 -0
  232. package/dist/react/ds-tab-group.d.ts +12 -0
  233. package/dist/react/ds-tab-group.js +12 -0
  234. package/dist/react/ds-table.d.ts +21 -0
  235. package/dist/react/ds-table.js +16 -0
  236. package/dist/react/ds-tag.d.ts +9 -0
  237. package/dist/react/ds-tag.js +12 -0
  238. package/dist/react/ds-text.d.ts +9 -0
  239. package/dist/react/ds-text.js +12 -0
  240. package/dist/react/ds-toggle.d.ts +12 -0
  241. package/dist/react/ds-toggle.js +12 -0
  242. package/dist/react/ds-tooltip-data-viz.d.ts +9 -0
  243. package/dist/react/ds-tooltip-data-viz.js +12 -0
  244. package/dist/react/ds-tooltip.d.ts +9 -0
  245. package/dist/react/ds-tooltip.js +12 -0
  246. package/dist/types/components/BarNav/BarNav.d.ts +1 -0
  247. package/dist/types/components/ButtonFilled/ButtonFilled.d.ts +1 -1
  248. package/dist/types/components/ButtonUnfilled/ButtonUnfilled.d.ts +1 -1
  249. package/dist/types/components/CardDataVizDonut/CardDataVizDonut.d.ts +1 -0
  250. package/dist/types/components/CardSetting/CardSetting.d.ts +3 -0
  251. package/dist/types/components/ChartDonut/ChartDonut.d.ts +2 -0
  252. package/dist/types/components/ChartLegend/ChartLegend.d.ts +1 -0
  253. package/dist/types/components/Checkbox/Checkbox.d.ts +12 -0
  254. package/dist/types/components/Chip/Chip.d.ts +2 -0
  255. package/dist/types/components/EmptyState/EmptyState.d.ts +2 -0
  256. package/dist/types/components/Input/Input.d.ts +14 -1
  257. package/dist/types/components/Menu/Menu.d.ts +2 -0
  258. package/dist/types/components/Pagination/Pagination.d.ts +3 -0
  259. package/dist/types/components/PanelNav/PanelNav.d.ts +7 -0
  260. package/dist/types/components/PanelTools/PanelTools.d.ts +2 -0
  261. package/dist/types/components/RadioGroup/RadioGroup.d.ts +13 -1
  262. package/dist/types/components/Select/Select.d.ts +13 -1
  263. package/dist/types/components/ShellGradientPicker/ShellGradientPicker.d.ts +1 -0
  264. package/dist/types/components/ShellGradientSwatch/ShellGradientSwatch.d.ts +1 -1
  265. package/dist/types/components/TabGroup/TabGroup.d.ts +1 -1
  266. package/dist/types/components/TabGroupNav/TabGroupNav.d.ts +1 -1
  267. package/dist/types/components/Table/Table.d.ts +6 -0
  268. package/dist/types/components/Toggle/Toggle.d.ts +12 -0
  269. package/dist/types/components.d.ts +525 -30
  270. package/dist/types/nav/chrome-transition.d.ts +8 -0
  271. package/dist/types/stencil-public-runtime.d.ts +1 -0
  272. package/dist/types/utils/format-compact-number.d.ts +1 -1
  273. package/package.json +58 -41
  274. package/dist/components/p-BiM6QBTF.js +0 -2
  275. package/dist/components/p-BiM6QBTF.js.map +0 -1
  276. package/dist/components/p-Co2kLhWu.js.map +0 -1
  277. package/dist/components/p-CsaW5gDM.js +0 -2
  278. package/dist/components/p-CsaW5gDM.js.map +0 -1
  279. package/dist/components/p-D0gBLLJx.js.map +0 -1
  280. package/dist/components/p-DEpLlQZK.js +0 -2
  281. package/dist/components/p-DEpLlQZK.js.map +0 -1
  282. package/src/angular/angular-component-lib/utils.ts +0 -65
  283. package/src/angular/index.ts +0 -45
  284. package/src/angular/proxies.ts +0 -1156
  285. package/src/react/ds-app-shell.ts +0 -26
  286. package/src/react/ds-badge.ts +0 -26
  287. package/src/react/ds-banner.ts +0 -27
  288. package/src/react/ds-bar-nav.ts +0 -27
  289. package/src/react/ds-button-filled.ts +0 -27
  290. package/src/react/ds-button-unfilled.ts +0 -33
  291. package/src/react/ds-card-data-viz-donut.ts +0 -27
  292. package/src/react/ds-card-setting.ts +0 -27
  293. package/src/react/ds-card.ts +0 -26
  294. package/src/react/ds-chart-bar.ts +0 -26
  295. package/src/react/ds-chart-donut.ts +0 -27
  296. package/src/react/ds-chart-legend.ts +0 -33
  297. package/src/react/ds-chart-line.ts +0 -26
  298. package/src/react/ds-checkbox.ts +0 -27
  299. package/src/react/ds-chip.ts +0 -27
  300. package/src/react/ds-divider.ts +0 -26
  301. package/src/react/ds-empty-state.ts +0 -26
  302. package/src/react/ds-field.ts +0 -26
  303. package/src/react/ds-icon.ts +0 -26
  304. package/src/react/ds-input.ts +0 -33
  305. package/src/react/ds-loader.ts +0 -26
  306. package/src/react/ds-menu.ts +0 -35
  307. package/src/react/ds-modal.ts +0 -27
  308. package/src/react/ds-pagination.ts +0 -27
  309. package/src/react/ds-panel-nav.ts +0 -41
  310. package/src/react/ds-panel-tools.ts +0 -35
  311. package/src/react/ds-radio-group.ts +0 -27
  312. package/src/react/ds-select.ts +0 -27
  313. package/src/react/ds-shell-gradient-picker.ts +0 -27
  314. package/src/react/ds-shell-gradient-swatch.ts +0 -27
  315. package/src/react/ds-skeleton.ts +0 -26
  316. package/src/react/ds-slider.ts +0 -27
  317. package/src/react/ds-tab-group-nav.ts +0 -33
  318. package/src/react/ds-tab-group.ts +0 -27
  319. package/src/react/ds-table.ts +0 -35
  320. package/src/react/ds-tag.ts +0 -26
  321. package/src/react/ds-text.ts +0 -26
  322. package/src/react/ds-toggle.ts +0 -27
  323. package/src/react/ds-tooltip-data-viz.ts +0 -26
  324. package/src/react/ds-tooltip.ts +0 -26
  325. package/src/wc/components/AppShell/AppShell.tsx +0 -377
  326. package/src/wc/components/Badge/Badge.tsx +0 -179
  327. package/src/wc/components/Badge/index.ts +0 -1
  328. package/src/wc/components/Banner/Banner.tsx +0 -156
  329. package/src/wc/components/BarNav/BarNav.tsx +0 -745
  330. package/src/wc/components/BarNav/bar-nav-dom-utils.ts +0 -23
  331. package/src/wc/components/BarNav/bar-nav-tabs-menu-utils.ts +0 -114
  332. package/src/wc/components/BarNav/bar-nav-types.ts +0 -3
  333. package/src/wc/components/BarNav/bar-nav-utils.ts +0 -67
  334. package/src/wc/components/BarNav/index.ts +0 -2
  335. package/src/wc/components/ButtonFilled/ButtonFilled.tsx +0 -171
  336. package/src/wc/components/ButtonFilled/index.ts +0 -7
  337. package/src/wc/components/ButtonUnfilled/ButtonUnfilled.tsx +0 -229
  338. package/src/wc/components/ButtonUnfilled/index.ts +0 -7
  339. package/src/wc/components/Card/Card.tsx +0 -78
  340. package/src/wc/components/Card/index.ts +0 -1
  341. package/src/wc/components/CardDataVizDonut/CardDataVizDonut.tsx +0 -108
  342. package/src/wc/components/CardDataVizDonut/index.ts +0 -1
  343. package/src/wc/components/CardSetting/CardSetting.tsx +0 -81
  344. package/src/wc/components/CardSetting/index.ts +0 -1
  345. package/src/wc/components/ChartBar/ChartBar.tsx +0 -88
  346. package/src/wc/components/ChartBar/index.ts +0 -1
  347. package/src/wc/components/ChartDonut/ChartDonut.tsx +0 -289
  348. package/src/wc/components/ChartDonut/index.ts +0 -1
  349. package/src/wc/components/ChartLegend/ChartLegend.tsx +0 -125
  350. package/src/wc/components/ChartLegend/index.ts +0 -2
  351. package/src/wc/components/ChartLine/ChartLine.tsx +0 -102
  352. package/src/wc/components/ChartLine/index.ts +0 -1
  353. package/src/wc/components/Checkbox/Checkbox.tsx +0 -60
  354. package/src/wc/components/Checkbox/index.ts +0 -1
  355. package/src/wc/components/Chip/Chip.tsx +0 -104
  356. package/src/wc/components/Chip/index.ts +0 -1
  357. package/src/wc/components/Divider/Divider.tsx +0 -107
  358. package/src/wc/components/Divider/index.ts +0 -2
  359. package/src/wc/components/EmptyState/EmptyState.tsx +0 -30
  360. package/src/wc/components/Field/Field.tsx +0 -30
  361. package/src/wc/components/Icon/Icon.tsx +0 -172
  362. package/src/wc/components/Icon/flag-icon-catalog.ts +0 -36
  363. package/src/wc/components/Icon/icon-cache.ts +0 -47
  364. package/src/wc/components/Icon/icon-svg.ts +0 -73
  365. package/src/wc/components/Icon/index.ts +0 -1
  366. package/src/wc/components/Icon/system-icon-catalog.ts +0 -401
  367. package/src/wc/components/Input/Input.tsx +0 -107
  368. package/src/wc/components/Input/index.ts +0 -1
  369. package/src/wc/components/Loader/Loader.tsx +0 -99
  370. package/src/wc/components/Loader/index.ts +0 -1
  371. package/src/wc/components/Menu/Menu.tsx +0 -437
  372. package/src/wc/components/Menu/menu-placement.ts +0 -26
  373. package/src/wc/components/Menu/menu-position.ts +0 -78
  374. package/src/wc/components/Menu/menu-types.ts +0 -39
  375. package/src/wc/components/Modal/Modal.tsx +0 -213
  376. package/src/wc/components/Pagination/Pagination.tsx +0 -97
  377. package/src/wc/components/PanelNav/PanelNav.tsx +0 -714
  378. package/src/wc/components/PanelNav/index.ts +0 -17
  379. package/src/wc/components/PanelNav/panel-nav-types.ts +0 -36
  380. package/src/wc/components/PanelNav/panel-nav-utils.ts +0 -79
  381. package/src/wc/components/PanelTools/PanelTools.tsx +0 -366
  382. package/src/wc/components/PanelTools/index.ts +0 -7
  383. package/src/wc/components/PanelTools/panel-tools-types.ts +0 -44
  384. package/src/wc/components/PanelTools/panel-tools-utils.ts +0 -50
  385. package/src/wc/components/RadioGroup/RadioGroup.tsx +0 -130
  386. package/src/wc/components/RadioGroup/index.ts +0 -1
  387. package/src/wc/components/Select/Select.tsx +0 -274
  388. package/src/wc/components/Select/index.ts +0 -1
  389. package/src/wc/components/ShellGradientPicker/ShellGradientPicker.tsx +0 -55
  390. package/src/wc/components/ShellGradientSwatch/ShellGradientSwatch.tsx +0 -69
  391. package/src/wc/components/ShellGradientSwatch/shell-gradient-swatch-types.ts +0 -17
  392. package/src/wc/components/Skeleton/Skeleton.tsx +0 -64
  393. package/src/wc/components/Skeleton/index.ts +0 -1
  394. package/src/wc/components/Slider/Slider.tsx +0 -76
  395. package/src/wc/components/Slider/index.ts +0 -1
  396. package/src/wc/components/TabGroup/TabGroup.tsx +0 -204
  397. package/src/wc/components/TabGroup/tab-item-utils.ts +0 -25
  398. package/src/wc/components/TabGroupNav/TabGroupNav.tsx +0 -347
  399. package/src/wc/components/Table/Table.tsx +0 -273
  400. package/src/wc/components/Tag/Tag.tsx +0 -63
  401. package/src/wc/components/Tag/index.ts +0 -1
  402. package/src/wc/components/Text/Text.tsx +0 -99
  403. package/src/wc/components/Text/index.ts +0 -12
  404. package/src/wc/components/Text/text-types.ts +0 -23
  405. package/src/wc/components/Text/text-utils.ts +0 -13
  406. package/src/wc/components/Toggle/Toggle.tsx +0 -43
  407. package/src/wc/components/Toggle/index.ts +0 -1
  408. package/src/wc/components/Tooltip/Tooltip.tsx +0 -413
  409. package/src/wc/components/TooltipDataViz/TooltipDataViz.tsx +0 -145
  410. package/src/wc/components/TooltipDataViz/index.ts +0 -1
  411. package/src/wc/components.d.ts +0 -3569
  412. package/src/wc/nav/badge-gradient-ring.ts +0 -109
  413. package/src/wc/nav/chrome-transition.ts +0 -62
  414. package/src/wc/nav/index.ts +0 -80
  415. package/src/wc/nav/nav-chrome.ts +0 -47
  416. package/src/wc/nav/shell-chrome-metrics.ts +0 -49
  417. package/src/wc/nav/shell-gradient-presets.ts +0 -60
  418. package/src/wc/nav/shell-gradient.ts +0 -94
  419. package/src/wc/nav/shell-shortcuts.ts +0 -63
  420. package/src/wc/nav/shell-view-transition.ts +0 -122
  421. package/src/wc/utils/chart-colors.ts +0 -7
  422. package/src/wc/utils/chart-types.ts +0 -25
  423. package/src/wc/utils/control-density.css +0 -43
  424. package/src/wc/utils/control-inactive.css +0 -20
  425. package/src/wc/utils/control-text.ts +0 -11
  426. package/src/wc/utils/control-width.css +0 -28
  427. package/src/wc/utils/control-width.ts +0 -10
  428. package/src/wc/utils/focus-ring.css +0 -33
  429. package/src/wc/utils/format-compact-number.ts +0 -27
  430. package/src/wc/utils/index.ts +0 -27
  431. package/src/wc/utils/interaction-fill.css +0 -162
  432. package/src/wc/utils/resolve-css-length-px.ts +0 -66
  433. package/src/wc/utils/resolve-css-time-ms.ts +0 -46
  434. package/src/wc/utils/scroll-edge-fade.css +0 -80
  435. package/src/wc/utils/scroll-edge-fade.ts +0 -148
  436. package/src/wc/utils/token-defaults.ts +0 -81
  437. package/src/wc/utils/truncate-svg-text.ts +0 -25
  438. package/src/wc/utils/typography.css +0 -146
@@ -1,130 +0,0 @@
1
- import { Component, Prop, Event, EventEmitter, Element, Listen, h, Host } from '@stencil/core';
2
-
3
- export interface RadioOption {
4
- label: string;
5
- value: string;
6
- isInactive?: boolean;
7
- }
8
-
9
- @Component({
10
- tag: 'ds-radio-group',
11
- styleUrl: 'RadioGroup.css',
12
- scoped: true,
13
- })
14
- export class RadioGroup {
15
- @Element() el!: HTMLElement;
16
-
17
- @Prop() options: RadioOption[] = [];
18
- @Prop({ mutable: true }) value: string = '';
19
- @Prop() direction: 'vertical' | 'horizontal' = 'vertical';
20
- @Prop() isInactive: boolean = false;
21
- @Prop({ attribute: 'aria-label' }) ariaLabel: string | undefined;
22
- @Prop({ attribute: 'aria-labelledby' }) ariaLabelledby: string | undefined;
23
-
24
- @Event() dsChange!: EventEmitter<string>;
25
-
26
- private get activeItems(): HTMLElement[] {
27
- return Array.from(this.el.querySelectorAll<HTMLElement>('[data-radio-item]:not([data-inactive])'));
28
- }
29
-
30
- @Listen('keydown')
31
- handleKeyDown(e: KeyboardEvent) {
32
- const items = this.activeItems;
33
- if (!items.length) return;
34
-
35
- const focused = items.find(item => item === document.activeElement);
36
- if (!focused) return;
37
-
38
- const idx = items.indexOf(focused);
39
- let next = -1;
40
-
41
- switch (e.key) {
42
- case 'ArrowDown':
43
- case 'ArrowRight':
44
- e.preventDefault();
45
- next = (idx + 1) % items.length;
46
- break;
47
- case 'ArrowUp':
48
- case 'ArrowLeft':
49
- e.preventDefault();
50
- next = (idx - 1 + items.length) % items.length;
51
- break;
52
- case 'Home':
53
- e.preventDefault();
54
- next = 0;
55
- break;
56
- case 'End':
57
- e.preventDefault();
58
- next = items.length - 1;
59
- break;
60
- }
61
-
62
- if (next >= 0) {
63
- items[next].focus();
64
- const nextValue = items[next].dataset['value'];
65
- if (nextValue && nextValue !== this.value) {
66
- this.value = nextValue;
67
- this.dsChange.emit(nextValue);
68
- }
69
- }
70
- }
71
-
72
- private selectItem(optValue: string) {
73
- if (this.isInactive) return;
74
- if (optValue !== this.value) {
75
- this.value = optValue;
76
- this.dsChange.emit(optValue);
77
- }
78
- }
79
-
80
- render() {
81
- const selectedIdx = this.options.findIndex(o => o.value === this.value);
82
- const firstActiveIdx = this.options.findIndex(o => !this.isInactive && !o.isInactive);
83
- const focusableIdx = selectedIdx >= 0 && !this.isInactive && !this.options[selectedIdx]?.isInactive
84
- ? selectedIdx
85
- : firstActiveIdx;
86
-
87
- return (
88
- <Host
89
- role="radiogroup"
90
- aria-label={this.ariaLabel}
91
- aria-labelledby={this.ariaLabelledby}
92
- class={{ group: true, 'group--horizontal': this.direction === 'horizontal' }}
93
- >
94
- {this.options.map((opt, i) => {
95
- const isItemInactive = this.isInactive || !!opt.isInactive;
96
- const isChecked = opt.value === this.value;
97
- const tabIdx = isItemInactive ? -1 : (i === focusableIdx ? 0 : -1);
98
-
99
- return (
100
- <div
101
- key={opt.value}
102
- role="radio"
103
- aria-checked={String(isChecked)}
104
- aria-disabled={isItemInactive || undefined}
105
- tabIndex={tabIdx}
106
- data-radio-item
107
- data-value={opt.value}
108
- data-inactive={isItemInactive || undefined}
109
- class={{ 'radio-item': true, 'ds-control-inactive': isItemInactive }}
110
- onClick={() => !isItemInactive && this.selectItem(opt.value)}
111
- onKeyDown={(e: KeyboardEvent) => {
112
- if ((e.key === ' ' || e.key === 'Enter') && !isItemInactive) {
113
- e.preventDefault();
114
- this.selectItem(opt.value);
115
- }
116
- }}
117
- >
118
- <span class={{ circle: true, 'circle--checked': isChecked }}>
119
- {isChecked && <span class="dot" />}
120
- </span>
121
- <ds-text class="radio-label" as="span" variant="text-body-medium">
122
- {opt.label}
123
- </ds-text>
124
- </div>
125
- );
126
- })}
127
- </Host>
128
- );
129
- }
130
- }
@@ -1 +0,0 @@
1
- export type { RadioOption } from './RadioGroup';
@@ -1,274 +0,0 @@
1
- import { Component, Prop, State, Event, EventEmitter, Element, Watch, Listen, h, Host } from '@stencil/core';
2
- import {
3
- controlWidthClass,
4
- CONTROL_TEXT_VARIANT,
5
- resolveCssLengthPx,
6
- TOKEN_DEFAULTS,
7
- type ControlWidth,
8
- } from '../../utils';
9
- import type { MenuItemData } from '../Menu/menu-types';
10
-
11
- export interface SelectOption {
12
- label: string;
13
- value: string;
14
- }
15
-
16
- export type SelectSize = 'md' | 'sm' | 'xs';
17
-
18
- export type SelectWidth = ControlWidth;
19
-
20
- /** `ds-icon` size matching control-density icon metrics. */
21
- const ICON_SIZE: Record<SelectSize, 'md' | 'sm' | 'xs'> = {
22
- md: 'md',
23
- sm: 'sm',
24
- xs: 'xs',
25
- };
26
-
27
- /**
28
- * Dropdown select — unfilled-button chrome (label + trailing ChevronDown) in
29
- * control-density sizes, with `ds-menu` for the option list.
30
- */
31
- @Component({
32
- tag: 'ds-select',
33
- styleUrl: 'Select.css',
34
- scoped: true,
35
- })
36
- export class Select {
37
- @Element() el!: HTMLElement;
38
-
39
- /**
40
- * Array of options. Set via JS property.
41
- * @example el.options = [{ label: 'Apple', value: 'apple' }];
42
- */
43
- @Prop() options: SelectOption[] = [];
44
-
45
- /** Currently selected value. */
46
- @Prop({ mutable: true }) value: string = '';
47
-
48
- /** Placeholder shown when no value is selected. */
49
- @Prop() placeholder: string = 'Select';
50
-
51
- /** Control density (height, padding, icon, type). */
52
- @Prop() size: SelectSize = 'md';
53
-
54
- /** Width fit — fill the parent (default) or hug content. */
55
- @Prop() width: SelectWidth = 'fill';
56
-
57
- /** Disables interaction (25% opacity via ds-control-inactive). */
58
- @Prop() isInactive: boolean = false;
59
-
60
- /**
61
- * When a value is selected, render the selected interaction fill (same recipe
62
- * as unfilled-button `activeFill`). Default `true`. Pass `false` for
63
- * foreground-only selection (primary label, no fill).
64
- * Selected/open promotes the label to primary; chevron stays secondary.
65
- */
66
- @Prop() activeFill: boolean = true;
67
-
68
- /** Show a 1px secondary inset border. Default on (matches unfilled button). */
69
- @Prop() hasBorder: boolean = true;
70
-
71
- @Prop({ attribute: 'aria-label' }) ariaLabel: string | undefined;
72
- @Prop({ attribute: 'aria-labelledby' }) ariaLabelledby: string | undefined;
73
-
74
- /** Emits the selected value string. */
75
- @Event() dsChange!: EventEmitter<string>;
76
-
77
- @State() private isOpen: boolean = false;
78
-
79
- private triggerEl: HTMLButtonElement | null = null;
80
- private menuEl: HTMLDsMenuElement | null = null;
81
- /** True when the open was keyboard-driven — menu shows initial focus ring. */
82
- private openWithFocusVisible = false;
83
-
84
- componentDidLoad() {
85
- if (this.menuEl && this.triggerEl) {
86
- this.menuEl.anchor = this.triggerEl;
87
- }
88
- this.menuEl?.addEventListener('dsSelect', this.handleMenuSelect);
89
- this.menuEl?.addEventListener('dsClose', this.handleMenuClose);
90
- this.syncMenuItems();
91
- }
92
-
93
- disconnectedCallback() {
94
- this.menuEl?.removeEventListener('dsSelect', this.handleMenuSelect);
95
- this.menuEl?.removeEventListener('dsClose', this.handleMenuClose);
96
- }
97
-
98
- @Watch('isOpen')
99
- onIsOpenChange(open: boolean) {
100
- if (!this.menuEl) return;
101
- this.menuEl.initialFocusVisible = open && this.openWithFocusVisible;
102
- this.menuEl.open = open;
103
- }
104
-
105
- @Watch('options')
106
- onOptionsChange() {
107
- this.syncMenuItems();
108
- }
109
-
110
- @Watch('value')
111
- onValueChange() {
112
- this.syncMenuItems();
113
- }
114
-
115
- private handleMenuSelect = (e: Event) => {
116
- const detail = (e as CustomEvent<MenuItemData>).detail;
117
- if (detail?.value !== undefined) {
118
- this.value = String(detail.value);
119
- this.dsChange.emit(this.value);
120
- }
121
- this.close();
122
- };
123
-
124
- private handleMenuClose = () => {
125
- this.close();
126
- };
127
-
128
- private syncMenuItems() {
129
- if (!this.menuEl) return;
130
- this.menuEl.items = this.options.map(opt => ({
131
- label: opt.label,
132
- value: opt.value,
133
- isSelected: opt.value === this.value,
134
- }));
135
- }
136
-
137
- /**
138
- * Size/place the menu so option labels line up with the select label.
139
- * Menu section padding insets items; we expand min-width by that chrome and
140
- * shift left by the same amount (`alignOffset`). Menu can grow wider than
141
- * the field (left-bottom / `align="start"`) when labels need more room.
142
- */
143
- private syncMenuLayout() {
144
- if (!this.menuEl || !this.triggerEl) return;
145
- const sectionPadPx = resolveCssLengthPx(TOKEN_DEFAULTS.space050, TOKEN_DEFAULTS.space050);
146
- const triggerW = this.triggerEl.offsetWidth;
147
- // Prefer min-width over fixed width so long options can grow the menu.
148
- this.menuEl.menuWidth = '';
149
- this.menuEl.minWidth = `${triggerW + sectionPadPx * 2}px`;
150
- this.menuEl.alignOffset = -sectionPadPx;
151
- this.menuEl.anchor = this.triggerEl;
152
- }
153
-
154
- private open(opts: { focusVisible: boolean } = { focusVisible: false }) {
155
- if (this.isInactive || !this.options.length) return;
156
- this.openWithFocusVisible = opts.focusVisible;
157
- this.syncMenuLayout();
158
- this.syncMenuItems();
159
- this.isOpen = true;
160
- }
161
-
162
- private close() {
163
- this.isOpen = false;
164
- this.openWithFocusVisible = false;
165
- }
166
-
167
- private toggle(opts: { focusVisible: boolean }) {
168
- if (this.isOpen) {
169
- this.close();
170
- } else {
171
- this.open(opts);
172
- }
173
- }
174
-
175
- @Listen('keydown')
176
- handleKeyDown(e: KeyboardEvent) {
177
- if (document.activeElement !== this.triggerEl) return;
178
-
179
- if (!this.isOpen) {
180
- switch (e.key) {
181
- case 'ArrowDown':
182
- case 'ArrowUp':
183
- case 'Enter':
184
- case ' ':
185
- e.preventDefault();
186
- this.open({ focusVisible: true });
187
- break;
188
- }
189
- } else if (e.key === 'Escape') {
190
- e.preventDefault();
191
- this.close();
192
- this.triggerEl?.focus();
193
- }
194
- }
195
-
196
- private get selectedLabel(): string {
197
- return this.options.find(o => o.value === this.value)?.label ?? '';
198
- }
199
-
200
- private get hasSelection(): boolean {
201
- return this.options.some(o => o.value === this.value);
202
- }
203
-
204
- render() {
205
- const showPlaceholder = !this.hasSelection;
206
- const hasValue = !showPlaceholder;
207
- const label = showPlaceholder ? this.placeholder : this.selectedLabel;
208
- const textVariant = CONTROL_TEXT_VARIANT[this.size];
209
- const iconSize = ICON_SIZE[this.size];
210
- const density = `ds-control--${this.size}`;
211
- // Selected fill when a value is set (or while open), gated by `activeFill`.
212
- const showSelectedFill =
213
- !this.isInactive && this.activeFill && (hasValue || this.isOpen);
214
-
215
- return (
216
- <Host
217
- class={{
218
- 'select-host': true,
219
- 'ds-control-inactive': this.isInactive,
220
- 'ds-control--md': this.size === 'md',
221
- 'ds-control--sm': this.size === 'sm',
222
- 'ds-control--xs': this.size === 'xs',
223
- ...controlWidthClass(this.width),
224
- }}
225
- >
226
- <button
227
- ref={el => {
228
- this.triggerEl = (el as HTMLButtonElement) ?? null;
229
- }}
230
- type="button"
231
- class={{
232
- trigger: true,
233
- 'ds-focus-ring-inset': true,
234
- 'ds-interaction-fill': true,
235
- 'ds-interaction-fill--selected': showSelectedFill,
236
- 'trigger--open': this.isOpen,
237
- 'trigger--bordered': this.hasBorder,
238
- 'trigger--placeholder': showPlaceholder,
239
- 'trigger--has-value': hasValue,
240
- [density]: true,
241
- }}
242
- disabled={this.isInactive}
243
- role="combobox"
244
- aria-haspopup="menu"
245
- aria-expanded={String(this.isOpen)}
246
- aria-label={this.ariaLabel}
247
- aria-labelledby={this.ariaLabelledby}
248
- onClick={() => this.toggle({ focusVisible: false })}
249
- >
250
- <ds-text
251
- class="trigger__label ds-interaction-fill__content"
252
- as="span"
253
- variant={textVariant}
254
- color="inherit"
255
- lineTruncation={1}
256
- >
257
- {label}
258
- </ds-text>
259
- <span class="trigger__chevron ds-interaction-fill__content" aria-hidden="true">
260
- <ds-icon name="ChevronDown" size={iconSize} color="inherit" />
261
- </span>
262
- </button>
263
- {/* bottom + start: left-aligned under the field; wider menus grow right. */}
264
- <ds-menu
265
- ref={el => {
266
- this.menuEl = (el as HTMLDsMenuElement) ?? null;
267
- }}
268
- side="bottom"
269
- align="start"
270
- />
271
- </Host>
272
- );
273
- }
274
- }
@@ -1 +0,0 @@
1
- export type { SelectOption, SelectSize, SelectWidth } from './Select';
@@ -1,55 +0,0 @@
1
- import { Component, Prop, Event, EventEmitter, h, Host } from '@stencil/core';
2
- import {
3
- SHELL_GRADIENT_WASH_PRESETS,
4
- DEFAULT_SHELL_GRADIENT_PRESET,
5
- type ShellGradientPreset,
6
- } from '../ShellGradientSwatch/shell-gradient-swatch-types';
7
-
8
- @Component({
9
- tag: 'ds-shell-gradient-picker',
10
- styleUrl: 'ShellGradientPicker.css',
11
- scoped: true,
12
- })
13
- export class ShellGradientPicker {
14
- /** Active shell wash preset. */
15
- @Prop({ mutable: true, reflect: true }) value: ShellGradientPreset =
16
- DEFAULT_SHELL_GRADIENT_PRESET;
17
-
18
- @Event() dsChange!: EventEmitter<ShellGradientPreset>;
19
-
20
- private handleSwatchSelect = (preset: ShellGradientPreset) => {
21
- if (preset === this.value) return;
22
- this.value = preset;
23
- this.dsChange.emit(preset);
24
- };
25
-
26
- private renderSwatch(preset: ShellGradientPreset) {
27
- return (
28
- <ds-shell-gradient-swatch
29
- key={preset}
30
- preset={preset}
31
- selected={this.value === preset}
32
- onDsSelect={(e: CustomEvent<ShellGradientPreset>) => {
33
- e.stopPropagation();
34
- this.handleSwatchSelect(e.detail);
35
- }}
36
- />
37
- );
38
- }
39
-
40
- render() {
41
- return (
42
- <Host>
43
- <div
44
- class="shell-gradient-picker"
45
- role="radiogroup"
46
- aria-label="Shell gradient theme"
47
- >
48
- {this.renderSwatch('none')}
49
- <div class="shell-gradient-picker__divider" aria-hidden="true" />
50
- {SHELL_GRADIENT_WASH_PRESETS.map(preset => this.renderSwatch(preset))}
51
- </div>
52
- </Host>
53
- );
54
- }
55
- }
@@ -1,69 +0,0 @@
1
- import { Component, Prop, Event, EventEmitter, h, Host } from '@stencil/core';
2
- import {
3
- SHELL_GRADIENT_PRESET_LABELS,
4
- buildShellRadialGradientForPreset,
5
- DEFAULT_SHELL_GRADIENT_PRESET,
6
- type ShellGradientPreset,
7
- } from './shell-gradient-swatch-types';
8
- import { SHELL_GRADIENT_OPACITY } from '../../nav/shell-gradient';
9
-
10
- @Component({
11
- tag: 'ds-shell-gradient-swatch',
12
- styleUrl: 'ShellGradientSwatch.css',
13
- scoped: true,
14
- })
15
- export class ShellGradientSwatch {
16
- /** Wash preset this orb previews. */
17
- @Prop({ reflect: true }) preset: ShellGradientPreset = DEFAULT_SHELL_GRADIENT_PRESET;
18
-
19
- /** Selected — brand stroke + halo over inner fill/border/interaction stack. */
20
- @Prop({ reflect: true }) selected = false;
21
-
22
- @Prop() isInactive = false;
23
-
24
- @Prop({ attribute: 'aria-label' }) ariaLabel: string | undefined;
25
-
26
- @Event() dsSelect!: EventEmitter<ShellGradientPreset>;
27
-
28
- private handleClick = () => {
29
- if (this.isInactive) return;
30
- this.dsSelect.emit(this.preset);
31
- };
32
-
33
- render() {
34
- const label = this.ariaLabel ?? SHELL_GRADIENT_PRESET_LABELS[this.preset];
35
-
36
- return (
37
- <Host>
38
- <button
39
- type="button"
40
- class={{
41
- 'shell-gradient-swatch': true,
42
- 'ds-focus-ring-inset': true,
43
- 'ds-control-inactive': this.isInactive,
44
- 'shell-gradient-swatch--selected': this.selected,
45
- 'shell-gradient-swatch--none': this.preset === 'none',
46
- }}
47
- style={
48
- this.preset === 'none'
49
- ? undefined
50
- : {
51
- '--_swatch-gradient-image': buildShellRadialGradientForPreset(this.preset),
52
- '--ds-shell-gradient-opacity': SHELL_GRADIENT_OPACITY,
53
- }
54
- }
55
- aria-label={label}
56
- aria-pressed={this.selected ? 'true' : 'false'}
57
- disabled={this.isInactive}
58
- onClick={this.handleClick}
59
- >
60
- <span class="shell-gradient-swatch__fill" aria-hidden="true" />
61
- <span class="shell-gradient-swatch__border" aria-hidden="true" />
62
- <span class="shell-gradient-swatch__interaction" aria-hidden="true" />
63
- <span class="shell-gradient-swatch__halo" aria-hidden="true" />
64
- <span class="shell-gradient-swatch__stroke" aria-hidden="true" />
65
- </button>
66
- </Host>
67
- );
68
- }
69
- }
@@ -1,17 +0,0 @@
1
- import type { ShellGradientPreset } from '../../nav/shell-gradient-presets';
2
- import {
3
- SHELL_GRADIENT_PRESET_LABELS,
4
- buildShellRadialGradientForPreset,
5
- } from '../../nav/shell-gradient-presets';
6
-
7
- export type { ShellGradientPreset };
8
-
9
- export {
10
- DEFAULT_SHELL_GRADIENT_PRESET,
11
- SHELL_GRADIENT_PRESETS,
12
- SHELL_GRADIENT_WASH_PRESETS,
13
- SHELL_GRADIENT_PRESET_LABELS,
14
- buildShellRadialGradientForPreset,
15
- isShellGradientPreset,
16
- shellGradientPresetStopToken,
17
- } from '../../nav/shell-gradient-presets';
@@ -1,64 +0,0 @@
1
- import { Component, Prop, h, Host } from '@stencil/core';
2
-
3
- export type SkeletonVariant = 'text' | 'circular' | 'rectangular';
4
-
5
- @Component({
6
- tag: 'ds-skeleton',
7
- styleUrl: 'Skeleton.css',
8
- shadow: true,
9
- })
10
- export class Skeleton {
11
- @Prop() variant: SkeletonVariant = 'text';
12
- /** Width as a CSS value string (e.g. '200px', '100%') or number (px). */
13
- @Prop() width: string | number | undefined;
14
- /** Height as a CSS value string or number (px). */
15
- @Prop() height: string | number | undefined;
16
- /** Number of text lines. Only used when variant is 'text'. */
17
- @Prop() lines: number = 1;
18
- /** Whether to show the shimmer animation. */
19
- @Prop() shimmer: boolean = true;
20
-
21
- private get widthCss() {
22
- const v = this.width;
23
- if (v == null) return undefined;
24
- return typeof v === 'number' ? `${v}px` : v;
25
- }
26
-
27
- private get heightCss() {
28
- const v = this.height;
29
- if (v == null) return undefined;
30
- return typeof v === 'number' ? `${v}px` : v;
31
- }
32
-
33
- render() {
34
- if (this.variant === 'text' && this.lines > 1) {
35
- return (
36
- <Host aria-hidden="true" style={{ width: this.widthCss }}>
37
- <div class="text-group">
38
- {Array.from({ length: this.lines }, (_, lineIdx) => (
39
- <div
40
- class={{ skeleton: true, text: true, animate: this.shimmer }}
41
- style={{
42
- width: lineIdx === this.lines - 1 ? '60%' : '100%',
43
- height: this.heightCss,
44
- }}
45
- />
46
- ))}
47
- </div>
48
- </Host>
49
- );
50
- }
51
-
52
- return (
53
- <Host
54
- aria-hidden="true"
55
- class={{
56
- skeleton: true,
57
- [this.variant]: true,
58
- animate: this.shimmer,
59
- }}
60
- style={{ width: this.widthCss, height: this.heightCss }}
61
- />
62
- );
63
- }
64
- }
@@ -1 +0,0 @@
1
- export type { SkeletonVariant } from './Skeleton';
@@ -1,76 +0,0 @@
1
- import { Component, Prop, Event, EventEmitter, h, Host } from '@stencil/core';
2
-
3
- let idCounter = 0;
4
-
5
- @Component({
6
- tag: 'ds-slider',
7
- styleUrl: 'Slider.css',
8
- scoped: true,
9
- })
10
- export class Slider {
11
- private generatedId = `ds-slider-${++idCounter}`;
12
-
13
- @Prop() value: number = 0;
14
- @Prop() min: number = 0;
15
- @Prop() max: number = 100;
16
- @Prop() step: number = 1;
17
- @Prop() label!: string;
18
- @Prop() isInactive: boolean = false;
19
- @Prop() valueText: string | undefined;
20
- /** Associates with an external <label>. Defaults to an auto-generated ID. */
21
- @Prop() inputId: string | undefined;
22
-
23
- @Event() dsChange!: EventEmitter<number>;
24
-
25
- private handleInput = (e: Event) => {
26
- this.dsChange.emit(Number((e.target as HTMLInputElement).value));
27
- };
28
-
29
- private get pct() {
30
- const range = this.max - this.min;
31
- return range === 0 ? 0 : Math.round(((this.value - this.min) / range) * 100);
32
- }
33
-
34
- render() {
35
- const finalId = this.inputId ?? this.generatedId;
36
- const pct = this.pct;
37
-
38
- return (
39
- <Host class="field">
40
- <div class="label-row">
41
- <ds-text as="label" variant="text-body-small" emphasis for={finalId}>
42
- {this.label}
43
- </ds-text>
44
- <ds-text as="span" variant="text-body-small" emphasis>
45
- {this.value}
46
- </ds-text>
47
- </div>
48
- <div
49
- class={{
50
- track: true,
51
- 'ds-control-inactive': this.isInactive,
52
- 'track--at-min': pct === 0,
53
- }}
54
- style={{ '--slider-pct': String(pct) } as Record<string, string>}
55
- >
56
- <div class="track-inner">
57
- <div class="fill-track"><div class="fill" /></div>
58
- <div class="thumb" />
59
- </div>
60
- <input
61
- type="range"
62
- id={finalId}
63
- min={this.min}
64
- max={this.max}
65
- step={this.step}
66
- value={this.value}
67
- disabled={this.isInactive}
68
- class="range-input"
69
- aria-valuetext={this.valueText}
70
- onInput={this.handleInput}
71
- />
72
- </div>
73
- </Host>
74
- );
75
- }
76
- }
@@ -1 +0,0 @@
1
- export type { } from './Slider';