@ds-mo/ui 12.8.0 → 13.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (439) hide show
  1. package/README.md +1 -0
  2. package/dist/.package-ready.json +1 -0
  3. package/dist/agent-patterns.json +124 -135
  4. package/dist/agent.json +260 -1104
  5. package/dist/angular/ds-bar-nav.d.ts +1 -1
  6. package/dist/angular/ds-bar-nav.js +3 -3
  7. package/dist/angular/ds-button-filled.d.ts +1 -1
  8. package/dist/angular/ds-button-filled.js +3 -3
  9. package/dist/angular/ds-card-data-viz.d.ts +18 -0
  10. package/dist/angular/{ds-card-data-viz-donut.js → ds-card-data-viz.js} +12 -12
  11. package/dist/angular/ds-card-overview.d.ts +1 -1
  12. package/dist/angular/ds-card-overview.js +3 -3
  13. package/dist/angular/ds-chart-bar.d.ts +1 -1
  14. package/dist/angular/ds-chart-bar.js +3 -3
  15. package/dist/angular/ds-menu.d.ts +1 -7
  16. package/dist/angular/ds-menu.js +2 -5
  17. package/dist/angular/ds-mobile-header.d.ts +1 -1
  18. package/dist/angular/ds-mobile-header.js +3 -3
  19. package/dist/angular/ds-mobile-section-switcher.d.ts +1 -1
  20. package/dist/angular/ds-mobile-section-switcher.js +3 -3
  21. package/dist/angular/ds-panel-tools.d.ts +1 -1
  22. package/dist/angular/ds-panel-tools.js +3 -3
  23. package/dist/angular/ds-select.d.ts +5 -4
  24. package/dist/angular/ds-select.js +3 -3
  25. package/dist/angular/ds-shell-app.d.ts +90 -1
  26. package/dist/angular/ds-shell-app.js +44 -4
  27. package/dist/angular/ds-shell-tools.d.ts +1 -1
  28. package/dist/angular/ds-shell-tools.js +3 -3
  29. package/dist/angular/index.d.ts +1 -1
  30. package/dist/angular/index.js +1 -8
  31. package/dist/angular/proxies.d.ts +1 -8
  32. package/dist/angular/proxies.js +1 -8
  33. package/dist/components/ds-agent-activity.js +1 -1
  34. package/dist/components/ds-agent-response.js +1 -1
  35. package/dist/components/ds-agent-source-list.js +1 -1
  36. package/dist/components/ds-agent-tool-call.js +1 -1
  37. package/dist/components/ds-attachment-list.js +1 -1
  38. package/dist/components/ds-badge.js +1 -1
  39. package/dist/components/ds-bar-nav.js +1 -1
  40. package/dist/components/ds-bar-nav.js.map +1 -1
  41. package/dist/components/ds-bar-title.js +1 -1
  42. package/dist/components/ds-bar-title.js.map +1 -1
  43. package/dist/components/ds-bar-workflow.js +1 -1
  44. package/dist/components/ds-breadcrumb.js +1 -1
  45. package/dist/components/ds-button-filled.js +1 -1
  46. package/dist/components/ds-button-unfilled.js +1 -1
  47. package/dist/components/{ds-select-multi.d.ts → ds-card-data-viz.d.ts} +4 -4
  48. package/dist/components/ds-card-data-viz.js +2 -0
  49. package/dist/components/ds-card-data-viz.js.map +1 -0
  50. package/dist/components/ds-card-overview.js +1 -1
  51. package/dist/components/ds-card-overview.js.map +1 -1
  52. package/dist/components/ds-card-setting.js +1 -1
  53. package/dist/components/ds-chart-bar.js +1 -1
  54. package/dist/components/ds-chart-bar.js.map +1 -1
  55. package/dist/components/ds-chart-donut.js +1 -1
  56. package/dist/components/ds-chart-legend.js +1 -1
  57. package/dist/components/ds-chart-legend.js.map +1 -1
  58. package/dist/components/ds-chart-line.js +1 -1
  59. package/dist/components/ds-chart-line.js.map +1 -1
  60. package/dist/components/ds-checkbox.js +1 -1
  61. package/dist/components/ds-chip.js +1 -1
  62. package/dist/components/ds-code-block.js +1 -1
  63. package/dist/components/ds-conversation-list-item.js +1 -1
  64. package/dist/components/ds-conversation-list-item.js.map +1 -1
  65. package/dist/components/ds-conversation-list-section.js +1 -1
  66. package/dist/components/ds-conversation-list.js +1 -1
  67. package/dist/components/ds-divider.js +1 -1
  68. package/dist/components/ds-empty-state.js +1 -1
  69. package/dist/components/ds-field.js +1 -1
  70. package/dist/components/ds-input.js +1 -1
  71. package/dist/components/ds-input.js.map +1 -1
  72. package/dist/components/ds-markdown.js +1 -1
  73. package/dist/components/ds-menu.js +1 -1
  74. package/dist/components/ds-message-bubble.js +1 -1
  75. package/dist/components/ds-message-composer.js +1 -1
  76. package/dist/components/ds-message-composer.js.map +1 -1
  77. package/dist/components/ds-message-scroller.js +1 -1
  78. package/dist/components/ds-message.js +1 -1
  79. package/dist/components/ds-mobile-bar-nav.js +1 -1
  80. package/dist/components/ds-mobile-bar-nav.js.map +1 -1
  81. package/dist/components/ds-mobile-header.js +1 -1
  82. package/dist/components/ds-mobile-section-switcher.js +1 -1
  83. package/dist/components/ds-mobile-sheet-nav.js +1 -1
  84. package/dist/components/ds-mobile-sheet-nav.js.map +1 -1
  85. package/dist/components/ds-modal.js +1 -1
  86. package/dist/components/ds-panel-nav.js +1 -1
  87. package/dist/components/ds-panel-nav.js.map +1 -1
  88. package/dist/components/ds-panel-sub-nav.js +1 -1
  89. package/dist/components/ds-panel-tool-header.js +1 -1
  90. package/dist/components/ds-panel-tool-search.js +1 -1
  91. package/dist/components/ds-panel-tools.js +1 -1
  92. package/dist/components/ds-radio.js +1 -1
  93. package/dist/components/ds-radio.js.map +1 -1
  94. package/dist/components/ds-scroll-overlay.js +1 -1
  95. package/dist/components/ds-select.js +1 -1
  96. package/dist/components/ds-select.js.map +1 -1
  97. package/dist/components/ds-shell-app.js +1 -1
  98. package/dist/components/ds-shell-app.js.map +1 -1
  99. package/dist/components/ds-shell-page.js +1 -1
  100. package/dist/components/ds-shell-page.js.map +1 -1
  101. package/dist/components/ds-shell-tools.js +1 -1
  102. package/dist/components/ds-shell-tools.js.map +1 -1
  103. package/dist/components/ds-skeleton.js +1 -1
  104. package/dist/components/ds-slider.js +1 -1
  105. package/dist/components/ds-slider.js.map +1 -1
  106. package/dist/components/ds-swatch-picker.js +1 -1
  107. package/dist/components/ds-switch.js +1 -1
  108. package/dist/components/ds-tab-group.js +1 -1
  109. package/dist/components/ds-tag.js +1 -1
  110. package/dist/components/ds-text.js +1 -1
  111. package/dist/components/ds-toast.js +1 -1
  112. package/dist/components/ds-tooltip-data-viz.js +1 -1
  113. package/dist/components/ds-tooltip.js +1 -1
  114. package/dist/components/ds-typing-indicator.js +1 -1
  115. package/dist/components/{p-DB9XJm2c.js → p-6qXDqCj_.js} +2 -2
  116. package/dist/components/{p-CPwpgUWT.js → p-Ay1AX7Ql.js} +2 -2
  117. package/dist/components/p-Ay1AX7Ql.js.map +1 -0
  118. package/dist/components/p-B-qDb_Zo.js +2 -0
  119. package/dist/components/p-B-qDb_Zo.js.map +1 -0
  120. package/dist/components/{p-DhLmoCe_.js → p-B1cbQ0SG.js} +2 -2
  121. package/dist/components/p-BBxcMVqk.js +2 -0
  122. package/dist/components/p-BBxcMVqk.js.map +1 -0
  123. package/dist/components/{p-BKOlvCGS.js → p-BUZXuod2.js} +2 -2
  124. package/dist/components/{p-Utr23NC-.js → p-BaUsq_VK.js} +2 -2
  125. package/dist/components/p-BbMJTilO.js +2 -0
  126. package/dist/components/p-BbMJTilO.js.map +1 -0
  127. package/dist/components/{p-BO5aqZcf.js → p-BcTYhmku.js} +2 -2
  128. package/dist/components/p-Bkv3UjZz.js +2 -0
  129. package/dist/components/p-Bkv3UjZz.js.map +1 -0
  130. package/dist/components/p-BnQXAbif.js +2 -0
  131. package/dist/components/p-BnQXAbif.js.map +1 -0
  132. package/dist/components/p-BnbbnuVC.js +2 -0
  133. package/dist/components/p-BnbbnuVC.js.map +1 -0
  134. package/dist/components/{p-BlHzmszE.js → p-BroVnDzE.js} +2 -2
  135. package/dist/components/{p-BFRMwl93.js → p-BsoqsbBh.js} +2 -2
  136. package/dist/components/p-BwT6B5Fi.js +2 -0
  137. package/dist/components/p-BwT6B5Fi.js.map +1 -0
  138. package/dist/components/p-BybqPD8K.js +2 -0
  139. package/dist/components/p-BybqPD8K.js.map +1 -0
  140. package/dist/components/p-C-vRkDyn.js +2 -0
  141. package/dist/components/p-C-vRkDyn.js.map +1 -0
  142. package/dist/components/p-C3ArcO50.js +2 -0
  143. package/dist/components/p-C3ArcO50.js.map +1 -0
  144. package/dist/components/p-C4uYvyq6.js +2 -0
  145. package/dist/components/p-C4uYvyq6.js.map +1 -0
  146. package/dist/components/{p-ukB-dPOK.js → p-CBazaRlE.js} +2 -2
  147. package/dist/components/{p-CNgPwd11.js → p-CHuh71-U.js} +2 -2
  148. package/dist/components/{p-D9u1_OEZ.js → p-CMWata9g.js} +2 -2
  149. package/dist/components/p-CS6CHlHK.js +2 -0
  150. package/dist/components/p-CS6CHlHK.js.map +1 -0
  151. package/dist/components/p-CTTnM7cE.js +2 -0
  152. package/dist/components/p-CTTnM7cE.js.map +1 -0
  153. package/dist/components/{p-CsX3ICz7.js → p-CWoXKe_h.js} +2 -2
  154. package/dist/components/p-CWoXKe_h.js.map +1 -0
  155. package/dist/components/p-CwwuSGER.js +2 -0
  156. package/dist/components/p-CwwuSGER.js.map +1 -0
  157. package/dist/components/p-D09HINr_.js +2 -0
  158. package/dist/components/p-D09HINr_.js.map +1 -0
  159. package/dist/components/p-D2xWcVv6.js +2 -0
  160. package/dist/components/p-D2xWcVv6.js.map +1 -0
  161. package/dist/components/p-DAW6G8Sl.js +2 -0
  162. package/dist/components/p-DAW6G8Sl.js.map +1 -0
  163. package/dist/components/p-DEaszb15.js +2 -0
  164. package/dist/components/p-DEaszb15.js.map +1 -0
  165. package/dist/components/{p-BgGP65Nn.js → p-DOUk4KoT.js} +1 -1
  166. package/dist/components/p-DOUk4KoT.js.map +1 -0
  167. package/dist/components/p-DbQr7Kwr.js +2 -0
  168. package/dist/components/p-DbQr7Kwr.js.map +1 -0
  169. package/dist/components/p-DdvEZyX4.js +2 -0
  170. package/dist/components/p-DdvEZyX4.js.map +1 -0
  171. package/dist/components/{p-38PfdMkF.js → p-DeQwkbT1.js} +2 -2
  172. package/dist/components/{p-Vdufoj7G.js → p-Df17mJqI.js} +2 -2
  173. package/dist/components/p-Dg1LBXJ2.js +2 -0
  174. package/dist/components/p-Dg1LBXJ2.js.map +1 -0
  175. package/dist/components/p-DsiCDzoF.js +2 -0
  176. package/dist/components/p-DsiCDzoF.js.map +1 -0
  177. package/dist/components/p-_DzUXA86.js +2 -0
  178. package/dist/components/p-_DzUXA86.js.map +1 -0
  179. package/dist/components/p-lyZNvRvO.js +2 -0
  180. package/dist/components/p-lyZNvRvO.js.map +1 -0
  181. package/dist/components/{p-69lHhJiX.js → p-ohsLFap_.js} +2 -2
  182. package/dist/components/{p-DjbTFy2B.js → p-ymtdhOU5.js} +1 -1
  183. package/dist/components/p-ymtdhOU5.js.map +1 -0
  184. package/dist/components/p-z5RIrXuX.js +2 -0
  185. package/dist/components/p-z5RIrXuX.js.map +1 -0
  186. package/dist/docs/components.json +1006 -2356
  187. package/dist/framework/angular.d.ts +0 -1
  188. package/dist/framework/angular.js +0 -1
  189. package/dist/lib/components/BarTitle/bar-title-types.d.ts +28 -0
  190. package/dist/lib/components/Breadcrumb/breadcrumb-types.d.ts +16 -0
  191. package/dist/lib/components/ButtonFilled/ButtonFilled.d.ts +83 -0
  192. package/dist/lib/components/MobileHeader/mobile-header-types.d.ts +4 -0
  193. package/dist/lib/components/PanelTools/panel-tools-types.d.ts +21 -7
  194. package/dist/lib/components/ShellApp/shell-app-types.d.ts +91 -0
  195. package/dist/lib/shell/index.d.ts +5 -13
  196. package/dist/lib/shell/index.js +87 -358
  197. package/dist/lib/shell/index.js.map +3 -3
  198. package/dist/lib/shell/shell-responsive.d.ts +2 -1
  199. package/dist/lib/utils/button-render.d.ts +17 -0
  200. package/dist/lib/utils/button-types.d.ts +10 -0
  201. package/dist/lib/utils/choice-list.d.ts +25 -0
  202. package/dist/lib/utils/control-press.d.ts +8 -0
  203. package/dist/lib/utils/form-association.d.ts +22 -0
  204. package/dist/lib/utils/index.d.ts +4 -0
  205. package/dist/lib/utils/index.js +63 -0
  206. package/dist/lib/utils/index.js.map +3 -3
  207. package/dist/lib/utils/required-validity.d.ts +1 -1
  208. package/dist/lib/utils/safe-url.d.ts +11 -0
  209. package/dist/mcp/cli.js +38 -10
  210. package/dist/mcp-data/registry/agent-source-list.json +1 -1
  211. package/dist/mcp-data/registry/attachment-list.json +1 -1
  212. package/dist/mcp-data/registry/bar-nav.json +3 -21
  213. package/dist/mcp-data/registry/breadcrumb.json +1 -1
  214. package/dist/mcp-data/registry/button-filled.json +4 -19
  215. package/dist/mcp-data/registry/button-unfilled.json +14 -11
  216. package/dist/mcp-data/registry/card-data-viz.json +241 -0
  217. package/dist/mcp-data/registry/card-overview.json +87 -16
  218. package/dist/mcp-data/registry/card-setting.json +2 -2
  219. package/dist/mcp-data/registry/chart-bar.json +66 -18
  220. package/dist/mcp-data/registry/chart-donut.json +5 -5
  221. package/dist/mcp-data/registry/chart-legend.json +7 -9
  222. package/dist/mcp-data/registry/chart-line.json +1 -2
  223. package/dist/mcp-data/registry/checkbox.json +2 -2
  224. package/dist/mcp-data/registry/conversation-list-item.json +1 -1
  225. package/dist/mcp-data/registry/field.json +2 -3
  226. package/dist/mcp-data/registry/input.json +1 -1
  227. package/dist/mcp-data/registry/markdown.json +1 -1
  228. package/dist/mcp-data/registry/menu.json +10 -21
  229. package/dist/mcp-data/registry/mobile-bar-nav.json +1 -1
  230. package/dist/mcp-data/registry/mobile-header.json +1 -37
  231. package/dist/mcp-data/registry/mobile-section-switcher.json +1 -19
  232. package/dist/mcp-data/registry/panel-nav.json +2 -2
  233. package/dist/mcp-data/registry/panel-tool-search.json +1 -1
  234. package/dist/mcp-data/registry/panel-tools.json +19 -55
  235. package/dist/mcp-data/registry/radio.json +1 -1
  236. package/dist/mcp-data/registry/registry.json +309 -1174
  237. package/dist/mcp-data/registry/select.json +59 -25
  238. package/dist/mcp-data/registry/shell-app.json +345 -20
  239. package/dist/mcp-data/registry/shell-page.json +1 -1
  240. package/dist/mcp-data/registry/shell-tools.json +12 -43
  241. package/dist/mcp-data/registry/slider.json +1 -1
  242. package/dist/mcp-data/registry/switch.json +1 -1
  243. package/dist/mcp-data/registry/text.json +2 -2
  244. package/dist/react/components.d.ts +1 -8
  245. package/dist/react/components.js +1 -8
  246. package/dist/react/ds-card-data-viz.d.ts +12 -0
  247. package/dist/react/ds-card-data-viz.js +12 -0
  248. package/dist/react/ds-menu.d.ts +1 -2
  249. package/dist/react/ds-menu.js +0 -1
  250. package/dist/react/ds-select.d.ts +2 -2
  251. package/dist/react/ds-shell-app.d.ts +24 -1
  252. package/dist/react/ds-shell-app.js +16 -1
  253. package/dist/types/components/AgentSourceList/AgentSourceList.d.ts +0 -1
  254. package/dist/types/components/BarNav/BarNav.d.ts +0 -2
  255. package/dist/types/components/BarNav/bar-nav-utils.d.ts +2 -4
  256. package/dist/types/components/ButtonFilled/ButtonFilled.d.ts +5 -11
  257. package/dist/types/components/ButtonUnfilled/ButtonUnfilled.d.ts +13 -10
  258. package/dist/types/components/CardDataViz/CardDataViz.d.ts +32 -0
  259. package/dist/types/components/CardDataViz/index.d.ts +2 -0
  260. package/dist/types/components/CardOverview/CardOverview.d.ts +25 -3
  261. package/dist/types/components/CardOverview/card-overview-controller.d.ts +16 -0
  262. package/dist/types/components/CardOverview/card-overview-types.d.ts +2 -0
  263. package/dist/types/components/CardOverview/index.d.ts +1 -1
  264. package/dist/types/components/ChartBar/ChartBar.d.ts +12 -1
  265. package/dist/types/components/ChartBar/index.d.ts +2 -1
  266. package/dist/types/components/Menu/Menu.d.ts +0 -5
  267. package/dist/types/components/Menu/menu-sections.d.ts +4 -0
  268. package/dist/types/components/Menu/menu-types.d.ts +2 -11
  269. package/dist/types/components/MobileHeader/MobileHeader.d.ts +0 -5
  270. package/dist/types/components/MobileSectionSwitcher/MobileSectionSwitcher.d.ts +0 -2
  271. package/dist/types/components/PanelTools/PanelTools.d.ts +0 -4
  272. package/dist/types/components/PanelTools/index.d.ts +1 -1
  273. package/dist/types/components/PanelTools/panel-tools-types.d.ts +21 -7
  274. package/dist/types/components/PanelTools/panel-tools-utils.d.ts +1 -1
  275. package/dist/types/components/Select/Select.d.ts +12 -4
  276. package/dist/types/components/Select/index.d.ts +1 -1
  277. package/dist/types/components/ShellApp/ShellApp.d.ts +98 -0
  278. package/dist/types/components/ShellApp/shell-app-types.d.ts +92 -0
  279. package/dist/types/components/ShellPage/ShellPage.d.ts +5 -0
  280. package/dist/types/components/ShellTools/ShellTools.d.ts +2 -2
  281. package/dist/types/components.d.ts +238 -895
  282. package/dist/types/shell/index.d.ts +5 -13
  283. package/dist/types/shell/shell-responsive.d.ts +2 -1
  284. package/dist/types/utils/anchored-position-controller.d.ts +9 -0
  285. package/dist/types/utils/button-render.d.ts +18 -0
  286. package/dist/types/utils/button-story-foundation.d.ts +9 -0
  287. package/dist/types/utils/button-types.d.ts +11 -0
  288. package/dist/types/utils/form-association.d.ts +23 -0
  289. package/dist/types/utils/index.d.ts +4 -0
  290. package/dist/types/utils/required-validity.d.ts +1 -1
  291. package/dist/types/utils/safe-url.d.ts +12 -0
  292. package/dist/types/utils/select-controller.d.ts +1 -1
  293. package/package.json +16 -8
  294. package/dist/.build-stamp +0 -1
  295. package/dist/angular/ds-card-data-viz-bar.d.ts +0 -18
  296. package/dist/angular/ds-card-data-viz-bar.js +0 -42
  297. package/dist/angular/ds-card-data-viz-donut.d.ts +0 -18
  298. package/dist/angular/ds-card-data-viz-line.d.ts +0 -18
  299. package/dist/angular/ds-card-data-viz-line.js +0 -42
  300. package/dist/angular/ds-card-shell-data-viz.d.ts +0 -12
  301. package/dist/angular/ds-card-shell-data-viz.js +0 -38
  302. package/dist/angular/ds-chart-bar-stacked.d.ts +0 -12
  303. package/dist/angular/ds-chart-bar-stacked.js +0 -38
  304. package/dist/angular/ds-select-multi.d.ts +0 -28
  305. package/dist/angular/ds-select-multi.js +0 -49
  306. package/dist/angular/ds-shell-gradient-picker.d.ts +0 -16
  307. package/dist/angular/ds-shell-gradient-picker.js +0 -42
  308. package/dist/angular/ds-shell-gradient-swatch.d.ts +0 -16
  309. package/dist/angular/ds-shell-gradient-swatch.js +0 -42
  310. package/dist/components/ds-card-data-viz-bar.d.ts +0 -11
  311. package/dist/components/ds-card-data-viz-bar.js +0 -2
  312. package/dist/components/ds-card-data-viz-bar.js.map +0 -1
  313. package/dist/components/ds-card-data-viz-donut.d.ts +0 -11
  314. package/dist/components/ds-card-data-viz-donut.js +0 -2
  315. package/dist/components/ds-card-data-viz-donut.js.map +0 -1
  316. package/dist/components/ds-card-data-viz-line.d.ts +0 -11
  317. package/dist/components/ds-card-data-viz-line.js +0 -2
  318. package/dist/components/ds-card-data-viz-line.js.map +0 -1
  319. package/dist/components/ds-card-shell-data-viz.d.ts +0 -11
  320. package/dist/components/ds-card-shell-data-viz.js +0 -2
  321. package/dist/components/ds-card-shell-data-viz.js.map +0 -1
  322. package/dist/components/ds-chart-bar-stacked.d.ts +0 -11
  323. package/dist/components/ds-chart-bar-stacked.js +0 -2
  324. package/dist/components/ds-chart-bar-stacked.js.map +0 -1
  325. package/dist/components/ds-select-multi.js +0 -2
  326. package/dist/components/ds-select-multi.js.map +0 -1
  327. package/dist/components/ds-shell-gradient-picker.d.ts +0 -11
  328. package/dist/components/ds-shell-gradient-picker.js +0 -2
  329. package/dist/components/ds-shell-gradient-picker.js.map +0 -1
  330. package/dist/components/ds-shell-gradient-swatch.d.ts +0 -11
  331. package/dist/components/ds-shell-gradient-swatch.js +0 -2
  332. package/dist/components/ds-shell-gradient-swatch.js.map +0 -1
  333. package/dist/components/p-2foAUsDN.js +0 -2
  334. package/dist/components/p-2foAUsDN.js.map +0 -1
  335. package/dist/components/p-B6NvVdeO.js +0 -2
  336. package/dist/components/p-B6NvVdeO.js.map +0 -1
  337. package/dist/components/p-B6vE3ujd.js +0 -2
  338. package/dist/components/p-B6vE3ujd.js.map +0 -1
  339. package/dist/components/p-BBePKRHC.js +0 -2
  340. package/dist/components/p-BBePKRHC.js.map +0 -1
  341. package/dist/components/p-BOQnc-M4.js +0 -2
  342. package/dist/components/p-BOQnc-M4.js.map +0 -1
  343. package/dist/components/p-BXaieghV.js +0 -2
  344. package/dist/components/p-BXaieghV.js.map +0 -1
  345. package/dist/components/p-BgGP65Nn.js.map +0 -1
  346. package/dist/components/p-BrusnEYP.js +0 -2
  347. package/dist/components/p-BrusnEYP.js.map +0 -1
  348. package/dist/components/p-By_s1wNN.js +0 -2
  349. package/dist/components/p-By_s1wNN.js.map +0 -1
  350. package/dist/components/p-C61yJkfr.js +0 -2
  351. package/dist/components/p-C61yJkfr.js.map +0 -1
  352. package/dist/components/p-CH3w-P2H.js +0 -2
  353. package/dist/components/p-CH3w-P2H.js.map +0 -1
  354. package/dist/components/p-CNjOyUQu.js +0 -2
  355. package/dist/components/p-CNjOyUQu.js.map +0 -1
  356. package/dist/components/p-CPwpgUWT.js.map +0 -1
  357. package/dist/components/p-CU2673IJ.js +0 -2
  358. package/dist/components/p-CU2673IJ.js.map +0 -1
  359. package/dist/components/p-CsX3ICz7.js.map +0 -1
  360. package/dist/components/p-D0e77tkd.js +0 -2
  361. package/dist/components/p-D0e77tkd.js.map +0 -1
  362. package/dist/components/p-D1HFMTdC.js +0 -2
  363. package/dist/components/p-D1HFMTdC.js.map +0 -1
  364. package/dist/components/p-D1bNvIpb.js +0 -2
  365. package/dist/components/p-D1bNvIpb.js.map +0 -1
  366. package/dist/components/p-D2x17ei-.js +0 -2
  367. package/dist/components/p-D2x17ei-.js.map +0 -1
  368. package/dist/components/p-DIFUsoM-.js +0 -2
  369. package/dist/components/p-DIFUsoM-.js.map +0 -1
  370. package/dist/components/p-DjbTFy2B.js.map +0 -1
  371. package/dist/components/p-DmAHufd5.js +0 -2
  372. package/dist/components/p-DmAHufd5.js.map +0 -1
  373. package/dist/components/p-DzM3SzPz.js +0 -2
  374. package/dist/components/p-DzM3SzPz.js.map +0 -1
  375. package/dist/components/p-G3qIxpQj.js +0 -2
  376. package/dist/components/p-G3qIxpQj.js.map +0 -1
  377. package/dist/components/p-Re2kPrXm.js +0 -2
  378. package/dist/components/p-Re2kPrXm.js.map +0 -1
  379. package/dist/components/p-huw1oRbt.js +0 -2
  380. package/dist/components/p-huw1oRbt.js.map +0 -1
  381. package/dist/framework/select-multi-value-accessor.d.ts +0 -9
  382. package/dist/framework/select-multi-value-accessor.js +0 -40
  383. package/dist/lib/shell/badge-gradient-ring.d.ts +0 -27
  384. package/dist/lib/shell/chrome-transition.d.ts +0 -32
  385. package/dist/lib/shell/shell-chrome-metrics.d.ts +0 -11
  386. package/dist/lib/shell/shell-gradient.d.ts +0 -41
  387. package/dist/lib/shell/shell-view-transition.d.ts +0 -23
  388. package/dist/mcp-data/registry/card-data-viz-bar.json +0 -213
  389. package/dist/mcp-data/registry/card-data-viz-donut.json +0 -214
  390. package/dist/mcp-data/registry/card-data-viz-line.json +0 -207
  391. package/dist/mcp-data/registry/card-shell-data-viz.json +0 -180
  392. package/dist/mcp-data/registry/chart-bar-stacked.json +0 -230
  393. package/dist/mcp-data/registry/select-multi.json +0 -758
  394. package/dist/mcp-data/registry/shell-gradient-picker.json +0 -195
  395. package/dist/mcp-data/registry/shell-gradient-swatch.json +0 -215
  396. package/dist/react/ds-card-data-viz-bar.d.ts +0 -12
  397. package/dist/react/ds-card-data-viz-bar.js +0 -12
  398. package/dist/react/ds-card-data-viz-donut.d.ts +0 -12
  399. package/dist/react/ds-card-data-viz-donut.js +0 -12
  400. package/dist/react/ds-card-data-viz-line.d.ts +0 -12
  401. package/dist/react/ds-card-data-viz-line.js +0 -12
  402. package/dist/react/ds-card-shell-data-viz.d.ts +0 -9
  403. package/dist/react/ds-card-shell-data-viz.js +0 -12
  404. package/dist/react/ds-chart-bar-stacked.d.ts +0 -9
  405. package/dist/react/ds-chart-bar-stacked.js +0 -12
  406. package/dist/react/ds-select-multi.d.ts +0 -14
  407. package/dist/react/ds-select-multi.js +0 -16
  408. package/dist/react/ds-shell-gradient-picker.d.ts +0 -12
  409. package/dist/react/ds-shell-gradient-picker.js +0 -12
  410. package/dist/react/ds-shell-gradient-swatch.d.ts +0 -12
  411. package/dist/react/ds-shell-gradient-swatch.js +0 -12
  412. package/dist/types/components/CardDataVizBar/CardDataVizBar.d.ts +0 -24
  413. package/dist/types/components/CardDataVizBar/index.d.ts +0 -2
  414. package/dist/types/components/CardDataVizDonut/CardDataVizDonut.d.ts +0 -28
  415. package/dist/types/components/CardDataVizDonut/index.d.ts +0 -2
  416. package/dist/types/components/CardDataVizLine/CardDataVizLine.d.ts +0 -24
  417. package/dist/types/components/CardDataVizLine/index.d.ts +0 -2
  418. package/dist/types/components/CardShellDataViz/CardShellDataViz.d.ts +0 -13
  419. package/dist/types/components/CardShellDataViz/index.d.ts +0 -2
  420. package/dist/types/components/ChartBarStacked/ChartBarStacked.d.ts +0 -26
  421. package/dist/types/components/ChartBarStacked/index.d.ts +0 -3
  422. package/dist/types/components/SelectMulti/SelectMulti.d.ts +0 -121
  423. package/dist/types/components/SelectMulti/index.d.ts +0 -2
  424. package/dist/types/components/ShellGradientPicker/ShellGradientPicker.d.ts +0 -12
  425. package/dist/types/components/ShellGradientSwatch/ShellGradientSwatch.d.ts +0 -15
  426. package/dist/types/components/ShellGradientSwatch/shell-gradient-swatch-types.d.ts +0 -4
  427. /package/dist/components/{p-DB9XJm2c.js.map → p-6qXDqCj_.js.map} +0 -0
  428. /package/dist/components/{p-DhLmoCe_.js.map → p-B1cbQ0SG.js.map} +0 -0
  429. /package/dist/components/{p-BKOlvCGS.js.map → p-BUZXuod2.js.map} +0 -0
  430. /package/dist/components/{p-Utr23NC-.js.map → p-BaUsq_VK.js.map} +0 -0
  431. /package/dist/components/{p-BO5aqZcf.js.map → p-BcTYhmku.js.map} +0 -0
  432. /package/dist/components/{p-BlHzmszE.js.map → p-BroVnDzE.js.map} +0 -0
  433. /package/dist/components/{p-BFRMwl93.js.map → p-BsoqsbBh.js.map} +0 -0
  434. /package/dist/components/{p-ukB-dPOK.js.map → p-CBazaRlE.js.map} +0 -0
  435. /package/dist/components/{p-CNgPwd11.js.map → p-CHuh71-U.js.map} +0 -0
  436. /package/dist/components/{p-D9u1_OEZ.js.map → p-CMWata9g.js.map} +0 -0
  437. /package/dist/components/{p-38PfdMkF.js.map → p-DeQwkbT1.js.map} +0 -0
  438. /package/dist/components/{p-Vdufoj7G.js.map → p-Df17mJqI.js.map} +0 -0
  439. /package/dist/components/{p-69lHhJiX.js.map → p-ohsLFap_.js.map} +0 -0
@@ -1,42 +0,0 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- /* tslint:disable */
8
- /* auto-generated angular directive proxies */
9
- import { ChangeDetectionStrategy, Component, EventEmitter, Output } from '@angular/core';
10
- import { ProxyCmp } from './angular-component-lib/utils.js';
11
- import { defineCustomElement as defineDsShellGradientPicker } from '@ds-mo/ui/components/ds-shell-gradient-picker.js';
12
- import * as i0 from "@angular/core";
13
- let DsShellGradientPicker = class DsShellGradientPicker {
14
- constructor(c, r, z) {
15
- this.z = z;
16
- this.dsChange = new EventEmitter();
17
- c.detach();
18
- this.el = r.nativeElement;
19
- }
20
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: DsShellGradientPicker, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
21
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.7", type: DsShellGradientPicker, isStandalone: true, selector: "ds-shell-gradient-picker", inputs: { groupLabel: "groupLabel", value: "value" }, outputs: { dsChange: "dsChange" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
22
- };
23
- DsShellGradientPicker = __decorate([
24
- ProxyCmp({
25
- defineCustomElementFn: defineDsShellGradientPicker,
26
- inputs: ['groupLabel', 'value']
27
- })
28
- ], DsShellGradientPicker);
29
- export { DsShellGradientPicker };
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: DsShellGradientPicker, decorators: [{
31
- type: Component,
32
- args: [{
33
- selector: 'ds-shell-gradient-picker',
34
- changeDetection: ChangeDetectionStrategy.OnPush,
35
- template: '<ng-content></ng-content>',
36
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
37
- inputs: ['groupLabel', 'value'],
38
- outputs: ['dsChange'],
39
- }]
40
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { dsChange: [{
41
- type: Output
42
- }] } });
@@ -1,16 +0,0 @@
1
- import { ChangeDetectorRef, ElementRef, NgZone, EventEmitter } from '@angular/core';
2
- import type { Components } from '@ds-mo/ui/components';
3
- import type { DsShellGradientSwatchCustomEvent } from '@ds-mo/ui/components';
4
- import type { ShellGradientPreset as IDsShellGradientSwatchShellGradientPreset } from '@ds-mo/ui/components';
5
- import * as i0 from "@angular/core";
6
- export declare class DsShellGradientSwatch {
7
- protected z: NgZone;
8
- protected el: HTMLDsShellGradientSwatchElement;
9
- dsSelect: EventEmitter<DsShellGradientSwatchCustomEvent<IDsShellGradientSwatchShellGradientPreset>>;
10
- constructor(c: ChangeDetectorRef, r: ElementRef, z: NgZone);
11
- static ɵfac: i0.ɵɵFactoryDeclaration<DsShellGradientSwatch, never>;
12
- static ɵcmp: i0.ɵɵComponentDeclaration<DsShellGradientSwatch, "ds-shell-gradient-swatch", never, { "ariaLabel": { "alias": "ariaLabel"; "required": false; }; "isInactive": { "alias": "isInactive"; "required": false; }; "preset": { "alias": "preset"; "required": false; }; "selected": { "alias": "selected"; "required": false; }; }, { "dsSelect": "dsSelect"; }, never, ["*"], true, never>;
13
- }
14
- export declare interface DsShellGradientSwatch extends Components.DsShellGradientSwatch {
15
- dsSelect: EventEmitter<DsShellGradientSwatchCustomEvent<IDsShellGradientSwatchShellGradientPreset>>;
16
- }
@@ -1,42 +0,0 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- /* tslint:disable */
8
- /* auto-generated angular directive proxies */
9
- import { ChangeDetectionStrategy, Component, EventEmitter, Output } from '@angular/core';
10
- import { ProxyCmp } from './angular-component-lib/utils.js';
11
- import { defineCustomElement as defineDsShellGradientSwatch } from '@ds-mo/ui/components/ds-shell-gradient-swatch.js';
12
- import * as i0 from "@angular/core";
13
- let DsShellGradientSwatch = class DsShellGradientSwatch {
14
- constructor(c, r, z) {
15
- this.z = z;
16
- this.dsSelect = new EventEmitter();
17
- c.detach();
18
- this.el = r.nativeElement;
19
- }
20
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: DsShellGradientSwatch, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
21
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.7", type: DsShellGradientSwatch, isStandalone: true, selector: "ds-shell-gradient-swatch", inputs: { ariaLabel: "ariaLabel", isInactive: "isInactive", preset: "preset", selected: "selected" }, outputs: { dsSelect: "dsSelect" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
22
- };
23
- DsShellGradientSwatch = __decorate([
24
- ProxyCmp({
25
- defineCustomElementFn: defineDsShellGradientSwatch,
26
- inputs: ['ariaLabel', 'isInactive', 'preset', 'selected']
27
- })
28
- ], DsShellGradientSwatch);
29
- export { DsShellGradientSwatch };
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: DsShellGradientSwatch, decorators: [{
31
- type: Component,
32
- args: [{
33
- selector: 'ds-shell-gradient-swatch',
34
- changeDetection: ChangeDetectionStrategy.OnPush,
35
- template: '<ng-content></ng-content>',
36
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
37
- inputs: ['ariaLabel', 'isInactive', 'preset', 'selected'],
38
- outputs: ['dsSelect'],
39
- }]
40
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { dsSelect: [{
41
- type: Output
42
- }] } });
@@ -1,11 +0,0 @@
1
- import type { Components, JSX } from "../types/components";
2
-
3
- interface DsCardDataVizBar extends Components.DsCardDataVizBar, HTMLElement {}
4
- export const DsCardDataVizBar: {
5
- prototype: DsCardDataVizBar;
6
- new (): DsCardDataVizBar;
7
- };
8
- /**
9
- * Used to define this component and all nested components recursively.
10
- */
11
- export const defineCustomElement: () => void;
@@ -1,2 +0,0 @@
1
- import{p as a,H as e,c as s,h as d,a as t,t as i}from"./index.js";import{d as r}from"./p-BFRMwl93.js";import{d as c}from"./p-huw1oRbt.js";import{d as n}from"./p-BXaieghV.js";import{d as o}from"./p-BAfG3M8z.js";import{d as l}from"./p-Ca-I2UnB.js";import{d as h}from"./p-CPwpgUWT.js";const b=()=>`.ds-data-viz-card-layout.sc-ds-card-data-viz-bar{display:flex;flex:1 1 auto;flex-direction:column;box-sizing:border-box;height:100%;min-height:0;gap:var(--dimension-space-200)}.ds-data-viz-card-chart.sc-ds-card-data-viz-bar{display:grid;flex:1 1 auto;align-items:center;box-sizing:border-box;min-height:0;padding:var(--dimension-space-400) var(--dimension-space-400) 0 var(--dimension-space-400)}.ds-data-viz-card-chart.sc-ds-card-data-viz-bar>*.sc-ds-card-data-viz-bar{width:100%;height:100%;min-width:0;min-height:0;max-width:100%;max-height:100%}.ds-data-viz-card-chart--fill.sc-ds-card-data-viz-bar>*.sc-ds-card-data-viz-bar{height:100%;min-height:0;max-height:100%}.ds-data-viz-card-legend.sc-ds-card-data-viz-bar{flex:0 0 auto;box-sizing:border-box;padding:0 var(--dimension-space-100) var(--dimension-space-100) var(--dimension-space-100)}.sc-ds-card-data-viz-bar-h{display:contents}`;const f=a(class a extends e{constructor(a){super();if(a!==false){this.__registerHost()}this.dsFilterClick=s(this,"dsFilterClick");this.cardWidth="md";this.filterLabel="Filter";this.hasChartSlot=false;this.hasLegendSlot=false;this.handleFilterClick=()=>{this.dsFilterClick.emit()}}componentWillRender(){this.hasChartSlot=!!this.el.querySelector('[slot="chart"]');this.hasLegendSlot=!!this.el.querySelector('[slot="legend"]')}componentDidRender(){const a=this.el.querySelector('ds-chart-legend[slot="legend"]');if(!a)return;a.setAttribute("highlight-on-hover","false");if("highlightOnHover"in a)a.highlightOnHover=false}render(){return d(t,{key:"c31bbca6b787478ffbe7d0983cba16280deeacdd",class:"card-data-viz-bar"},d("ds-card-shell-data-viz",{key:"c71b36c7c387789d1a9256ed4e3a28e6b4a7d2eb",heading:this.heading,cardWidth:this.cardWidth},d("ds-button-unfilled",{key:"be66e84e756564fdf0882b33646dc88c8f772ee7",slot:"actions",variant:"icon",type:"button",icon:"Filters","aria-label":this.filterLabel,onDsClick:this.handleFilterClick}),d("div",{key:"b9a1072a834750511b7d63d0aad6a0778d70ff37",class:"ds-data-viz-card-layout"},this.hasChartSlot&&d("div",{key:"f4dfe9b30b8efda4959570f3f3c17d8392f4e546",class:"ds-data-viz-card-chart"},d("slot",{key:"691a76b90c64e7d20837781ee6d4257729f8a303",name:"chart"})),this.hasLegendSlot&&d("div",{key:"6434c216bac7e6ddf1a85a14d2be3c6fbf36fa1a",class:"ds-data-viz-card-legend"},d("slot",{key:"459259af920bbc2c3101de7b80c71900ae02a2e0",name:"legend"})))))}get el(){return this}static get style(){return b()}},[262,"ds-card-data-viz-bar",{heading:[1],cardWidth:[1,"card-width"],filterLabel:[1,"filter-label"],hasChartSlot:[32],hasLegendSlot:[32]}]);function m(){if(typeof customElements==="undefined"){return}const a=["ds-card-data-viz-bar","ds-badge","ds-button-unfilled","ds-card-shell-data-viz","ds-icon","ds-loader","ds-text"];a.forEach((a=>{switch(a){case"ds-card-data-viz-bar":if(!customElements.get(i(a))){customElements.define(i(a),f)}break;case"ds-badge":if(!customElements.get(i(a))){r()}break;case"ds-button-unfilled":if(!customElements.get(i(a))){c()}break;case"ds-card-shell-data-viz":if(!customElements.get(i(a))){n()}break;case"ds-icon":if(!customElements.get(i(a))){o()}break;case"ds-loader":if(!customElements.get(i(a))){l()}break;case"ds-text":if(!customElements.get(i(a))){h()}break}}))}m();const g=f;const v=m;export{g as DsCardDataVizBar,v as defineCustomElement};
2
- //# sourceMappingURL=ds-card-data-viz-bar.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["cardDataVizBarCss","CardDataVizBar","__stencil_proxyCustomElement","HTMLElement","constructor","registerHost","this","cardWidth","filterLabel","hasChartSlot","hasLegendSlot","handleFilterClick","dsFilterClick","emit","componentWillRender","el","querySelector","componentDidRender","legend","setAttribute","highlightOnHover","render","h","Host","key","class","heading","slot","variant","type","icon","onDsClick","name"],"sources":["src/wc/components/CardDataVizBar/CardDataVizBar.css?tag=ds-card-data-viz-bar&encapsulation=scoped","src/wc/components/CardDataVizBar/CardDataVizBar.tsx"],"sourcesContent":["@import '../../utils/data-viz-card-layout.css';\n\n:host {\n display: contents;\n}\n","import { Component, Element, Event, EventEmitter, h, Host, Prop, State } from '@stencil/core';\nimport type { CardShellDataVizWidth } from '../CardShellDataViz/CardShellDataViz';\n\nexport type CardDataVizBarWidth = CardShellDataVizWidth;\n\ntype StaticLegendSlot = HTMLElement & {\n highlightOnHover?: boolean;\n};\n\n/**\n * Bar-chart data-viz card — dedicated `ds-card-shell-data-viz` chrome with a fill chart\n * region and an optional, content-sized static legend.\n */\n@Component({\n tag: 'ds-card-data-viz-bar',\n styleUrl: 'CardDataVizBar.css',\n scoped: true,\n})\nexport class CardDataVizBar {\n @Element() el!: HTMLElement;\n\n /** Widget heading shown in the card header. */\n @Prop() heading!: string;\n\n /** Card width token — also sets matching min-height. */\n @Prop() cardWidth: CardDataVizBarWidth = 'md';\n @Prop() filterLabel: string = 'Filter';\n\n /** Emits when the header filter control is activated. */\n @Event() dsFilterClick!: EventEmitter<void>;\n\n @State() private hasChartSlot = false;\n @State() private hasLegendSlot = false;\n\n componentWillRender() {\n this.hasChartSlot = !!this.el.querySelector('[slot=\"chart\"]');\n this.hasLegendSlot = !!this.el.querySelector('[slot=\"legend\"]');\n }\n\n componentDidRender() {\n const legend = this.el.querySelector(\n 'ds-chart-legend[slot=\"legend\"]'\n ) as StaticLegendSlot | null;\n if (!legend) return;\n legend.setAttribute('highlight-on-hover', 'false');\n if ('highlightOnHover' in legend) legend.highlightOnHover = false;\n }\n\n private handleFilterClick = () => {\n this.dsFilterClick.emit();\n };\n\n render() {\n return (\n <Host class=\"card-data-viz-bar\">\n <ds-card-shell-data-viz heading={this.heading} cardWidth={this.cardWidth}>\n <ds-button-unfilled\n slot=\"actions\"\n variant=\"icon\"\n type=\"button\"\n icon=\"Filters\"\n aria-label={this.filterLabel}\n onDsClick={this.handleFilterClick}\n />\n <div class=\"ds-data-viz-card-layout\">\n {this.hasChartSlot && (\n <div class=\"ds-data-viz-card-chart\">\n <slot name=\"chart\" />\n </div>\n )}\n {this.hasLegendSlot && (\n <div class=\"ds-data-viz-card-legend\">\n <slot name=\"legend\" />\n </div>\n )}\n </div>\n </ds-card-shell-data-viz>\n </Host>\n );\n }\n}\n"],"mappings":"0RAAA,MAAMA,EAAoB,IAAM,q4B,MCkBnBC,EAAcC,EAAA,MAAAD,UAAAE,EAL3B,WAAAC,CAAAC,G,uFAYUC,KAAAC,UAAiC,KACjCD,KAAAE,YAAsB,SAKbF,KAAAG,aAAe,MACfH,KAAAI,cAAgB,MAgBzBJ,KAAAK,kBAAoB,KAC1BL,KAAKM,cAAcC,MAAM,CA+B5B,CA9CC,mBAAAC,GACER,KAAKG,eAAiBH,KAAKS,GAAGC,cAAc,kBAC5CV,KAAKI,gBAAkBJ,KAAKS,GAAGC,cAAc,kB,CAG/C,kBAAAC,GACE,MAAMC,EAASZ,KAAKS,GAAGC,cACrB,kCAEF,IAAKE,EAAQ,OACbA,EAAOC,aAAa,qBAAsB,SAC1C,GAAI,qBAAsBD,EAAQA,EAAOE,iBAAmB,K,CAO9D,MAAAC,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,2CAACC,MAAM,qBACVH,EAAA,0BAAAE,IAAA,2CAAwBE,QAASpB,KAAKoB,QAASnB,UAAWD,KAAKC,WAC7De,EAAA,sBAAAE,IAAA,2CACEG,KAAK,UACLC,QAAQ,OACRC,KAAK,SACLC,KAAK,UAAS,aACFxB,KAAKE,YACjBuB,UAAWzB,KAAKK,oBAElBW,EAAA,OAAAE,IAAA,2CAAKC,MAAM,2BACRnB,KAAKG,cACJa,EAAA,OAAAE,IAAA,2CAAKC,MAAM,0BACTH,EAAA,QAAAE,IAAA,2CAAMQ,KAAK,WAGd1B,KAAKI,eACJY,EAAA,OAAAE,IAAA,2CAAKC,MAAM,2BACTH,EAAA,QAAAE,IAAA,2CAAMQ,KAAK,c","ignoreList":[]}
@@ -1,11 +0,0 @@
1
- import type { Components, JSX } from "../types/components";
2
-
3
- interface DsCardDataVizDonut extends Components.DsCardDataVizDonut, HTMLElement {}
4
- export const DsCardDataVizDonut: {
5
- prototype: DsCardDataVizDonut;
6
- new (): DsCardDataVizDonut;
7
- };
8
- /**
9
- * Used to define this component and all nested components recursively.
10
- */
11
- export const defineCustomElement: () => void;
@@ -1,2 +0,0 @@
1
- import{p as t,H as a,c as s,h as d,a as e,t as i}from"./index.js";import{d as c}from"./p-BFRMwl93.js";import{d as n}from"./p-huw1oRbt.js";import{d as o}from"./p-BXaieghV.js";import{d as r}from"./p-BAfG3M8z.js";import{d as l}from"./p-Ca-I2UnB.js";import{d as h}from"./p-CPwpgUWT.js";const f=()=>`.ds-data-viz-card-layout.sc-ds-card-data-viz-donut{display:flex;flex:1 1 auto;flex-direction:column;box-sizing:border-box;height:100%;min-height:0;gap:var(--dimension-space-200)}.ds-data-viz-card-chart.sc-ds-card-data-viz-donut{display:grid;flex:1 1 auto;align-items:center;box-sizing:border-box;min-height:0;padding:var(--dimension-space-400) var(--dimension-space-400) 0 var(--dimension-space-400)}.ds-data-viz-card-chart.sc-ds-card-data-viz-donut>*.sc-ds-card-data-viz-donut{width:100%;height:100%;min-width:0;min-height:0;max-width:100%;max-height:100%}.ds-data-viz-card-chart--fill.sc-ds-card-data-viz-donut>*.sc-ds-card-data-viz-donut{height:100%;min-height:0;max-height:100%}.ds-data-viz-card-legend.sc-ds-card-data-viz-donut{flex:0 0 auto;box-sizing:border-box;padding:0 var(--dimension-space-100) var(--dimension-space-100) var(--dimension-space-100)}.sc-ds-card-data-viz-donut-h{display:contents}`;const m=t(class t extends a{constructor(t){super();if(t!==false){this.__registerHost()}this.dsFilterClick=s(this,"dsFilterClick");this.cardWidth="md";this.filterLabel="Filter";this.hasChartSlot=false;this.hasLegendSlot=false;this.handleChartHover=t=>{const a=this.el.querySelector('[slot="legend"]');if(!a||!("activeLabel"in a))return;a.activeLabel=t.detail?.label??null};this.handleLegendHover=t=>{const a=this.el.querySelector('[slot="chart"]');if(!a||!("activeLabel"in a))return;a.activeLabel=t.detail?.label??null};this.handleFilterClick=()=>{this.dsFilterClick.emit()}}componentWillRender(){this.hasChartSlot=!!this.el.querySelector('[slot="chart"]');this.hasLegendSlot=!!this.el.querySelector('[slot="legend"]')}componentDidLoad(){this.el.addEventListener("dsSliceHover",this.handleChartHover);this.el.addEventListener("dsItemHover",this.handleLegendHover)}componentDidRender(){const t=this.el.querySelector('[slot="chart"]');if(!t||!("showTooltip"in t))return;t.showTooltip=!this.hasLegendSlot}disconnectedCallback(){this.el.removeEventListener("dsSliceHover",this.handleChartHover);this.el.removeEventListener("dsItemHover",this.handleLegendHover)}render(){return d(e,{key:"9567d0cbf7de344d8fdd27e3ee21c8c92e7230aa",class:"card-data-viz-donut"},d("ds-card-shell-data-viz",{key:"be8053bcf51e7904fd5a31ce78bd36f0ca1d854c",heading:this.heading,cardWidth:this.cardWidth},d("ds-button-unfilled",{key:"1faa6bf31952b2e1ed82db451792a48b17744c5b",slot:"actions",variant:"icon",type:"button",icon:"Filters","aria-label":this.filterLabel,onDsClick:this.handleFilterClick}),d("div",{key:"3cca9a50e53b95b573c9d230f2cfe183fd908d4e",class:"ds-data-viz-card-layout"},this.hasChartSlot&&d("div",{key:"47223c97bdbf7f360cae26b22fe6801e8a176a82",class:"ds-data-viz-card-chart ds-data-viz-card-chart--fill"},d("slot",{key:"b98a08f273b3946e9b905e5abb3d4bff67ca93ea",name:"chart"})),this.hasLegendSlot&&d("div",{key:"192fed4cc05e976da640833bfb876fc0ff006cb8",class:"ds-data-viz-card-legend"},d("slot",{key:"9c142acfd67846e957aa91347fa7157cde781693",name:"legend"})))))}get el(){return this}static get style(){return f()}},[262,"ds-card-data-viz-donut",{heading:[1],cardWidth:[1,"card-width"],filterLabel:[1,"filter-label"],hasChartSlot:[32],hasLegendSlot:[32]}]);function b(){if(typeof customElements==="undefined"){return}const t=["ds-card-data-viz-donut","ds-badge","ds-button-unfilled","ds-card-shell-data-viz","ds-icon","ds-loader","ds-text"];t.forEach((t=>{switch(t){case"ds-card-data-viz-donut":if(!customElements.get(i(t))){customElements.define(i(t),m)}break;case"ds-badge":if(!customElements.get(i(t))){c()}break;case"ds-button-unfilled":if(!customElements.get(i(t))){n()}break;case"ds-card-shell-data-viz":if(!customElements.get(i(t))){o()}break;case"ds-icon":if(!customElements.get(i(t))){r()}break;case"ds-loader":if(!customElements.get(i(t))){l()}break;case"ds-text":if(!customElements.get(i(t))){h()}break}}))}b();const u=m;const v=b;export{u as DsCardDataVizDonut,v as defineCustomElement};
2
- //# sourceMappingURL=ds-card-data-viz-donut.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["cardDataVizDonutCss","CardDataVizDonut","__stencil_proxyCustomElement","HTMLElement","constructor","registerHost","this","cardWidth","filterLabel","hasChartSlot","hasLegendSlot","handleChartHover","e","legend","el","querySelector","activeLabel","detail","label","handleLegendHover","chart","handleFilterClick","dsFilterClick","emit","componentWillRender","componentDidLoad","addEventListener","componentDidRender","showTooltip","disconnectedCallback","removeEventListener","render","h","Host","key","class","heading","slot","variant","type","icon","onDsClick","name"],"sources":["src/wc/components/CardDataVizDonut/CardDataVizDonut.css?tag=ds-card-data-viz-donut&encapsulation=scoped","src/wc/components/CardDataVizDonut/CardDataVizDonut.tsx"],"sourcesContent":["@import '../../utils/data-viz-card-layout.css';\n\n:host {\n display: contents;\n}\n","import { Component, Element, Event, EventEmitter, State, h, Host, Prop } from '@stencil/core';\nimport type { CardShellDataVizWidth } from '../CardShellDataViz/CardShellDataViz';\n\nexport type CardDataVizDonutWidth = CardShellDataVizWidth;\n\n/** Matches the `dsSliceHover`/`dsItemHover` detail shape emitted by `ds-chart-*` and `ds-chart-legend`. */\ntype HoveredDatum = { label: string } | null;\n\n/** A slotted chart/legend that opts into composition behavior through public props. */\ntype SyncableSlot = HTMLElement & {\n activeLabel?: string | null;\n showTooltip?: boolean;\n};\n\n/**\n * Donut data-viz card — dedicated `ds-card-shell-data-viz` chrome with a fill chart region and\n * content-sized legend. Hover sync between chart and legend stays here.\n */\n@Component({\n tag: 'ds-card-data-viz-donut',\n styleUrl: 'CardDataVizDonut.css',\n scoped: true,\n})\nexport class CardDataVizDonut {\n @Element() el!: HTMLElement;\n\n /** Widget heading shown in the card header. */\n @Prop() heading!: string;\n\n /** Card width token — also sets matching min-height. */\n @Prop() cardWidth: CardDataVizDonutWidth = 'md';\n @Prop() filterLabel: string = 'Filter';\n\n /** Emits when the header filter control is activated. */\n @Event() dsFilterClick!: EventEmitter<void>;\n\n // Scoped (light-DOM) components have no native slot projection to detect emptiness from CSS —\n // check the actual children so an unused region (e.g. no legend) doesn't render a dangling\n // padded box plus a body gap next to nothing.\n @State() private hasChartSlot = false;\n @State() private hasLegendSlot = false;\n\n componentWillRender() {\n // Not `:scope >` — Stencil's scoped slot polyfill relocates slotted children into\n // region wrappers (and here into nested `ds-card-shell-data-viz`), so they may not stay direct\n // host children across renders.\n this.hasChartSlot = !!this.el.querySelector('[slot=\"chart\"]');\n this.hasLegendSlot = !!this.el.querySelector('[slot=\"legend\"]');\n }\n\n componentDidLoad() {\n // Sync the chart's and legend's `activeLabel` from each other's hover events, so any\n // ds-chart-donut + ds-chart-legend pair cross-highlights without every consumer having to\n // wire it up by hand. Delegated on the host (rather than bound to the specific slotted\n // elements) since Stencil events bubble and the slot content can be swapped at runtime.\n this.el.addEventListener('dsSliceHover', this.handleChartHover);\n this.el.addEventListener('dsItemHover', this.handleLegendHover);\n }\n\n componentDidRender() {\n const chart = this.el.querySelector('[slot=\"chart\"]') as SyncableSlot | null;\n if (!chart || !('showTooltip' in chart)) return;\n chart.showTooltip = !this.hasLegendSlot;\n }\n\n disconnectedCallback() {\n this.el.removeEventListener('dsSliceHover', this.handleChartHover);\n this.el.removeEventListener('dsItemHover', this.handleLegendHover);\n }\n\n private handleChartHover = (e: Event) => {\n // Not `:scope >` — Stencil's slot polyfill for scoped (non-shadow) components relocates\n // slotted children into an inner region wrapper on render, so they're no longer direct\n // children of the host by the time this fires.\n const legend = this.el.querySelector('[slot=\"legend\"]') as SyncableSlot | null;\n if (!legend || !('activeLabel' in legend)) return;\n legend.activeLabel = (e as CustomEvent<HoveredDatum>).detail?.label ?? null;\n };\n\n private handleLegendHover = (e: Event) => {\n const chart = this.el.querySelector('[slot=\"chart\"]') as SyncableSlot | null;\n if (!chart || !('activeLabel' in chart)) return;\n chart.activeLabel = (e as CustomEvent<HoveredDatum>).detail?.label ?? null;\n };\n\n private handleFilterClick = () => {\n this.dsFilterClick.emit();\n };\n\n render() {\n return (\n <Host class=\"card-data-viz-donut\">\n <ds-card-shell-data-viz heading={this.heading} cardWidth={this.cardWidth}>\n <ds-button-unfilled\n slot=\"actions\"\n variant=\"icon\"\n type=\"button\"\n icon=\"Filters\"\n aria-label={this.filterLabel}\n onDsClick={this.handleFilterClick}\n />\n <div class=\"ds-data-viz-card-layout\">\n {this.hasChartSlot && (\n <div class=\"ds-data-viz-card-chart ds-data-viz-card-chart--fill\">\n <slot name=\"chart\" />\n </div>\n )}\n {this.hasLegendSlot && (\n <div class=\"ds-data-viz-card-legend\">\n <slot name=\"legend\" />\n </div>\n )}\n </div>\n </ds-card-shell-data-viz>\n </Host>\n );\n }\n}\n"],"mappings":"0RAAA,MAAMA,EAAsB,IAAM,q5B,MCuBrBC,EAAgBC,EAAA,MAAAD,UAAAE,EAL7B,WAAAC,CAAAC,G,uFAYUC,KAAAC,UAAmC,KACnCD,KAAAE,YAAsB,SAQbF,KAAAG,aAAe,MACfH,KAAAI,cAAgB,MA8BzBJ,KAAAK,iBAAoBC,IAI1B,MAAMC,EAASP,KAAKQ,GAAGC,cAAc,mBACrC,IAAKF,KAAY,gBAAiBA,GAAS,OAC3CA,EAAOG,YAAeJ,EAAgCK,QAAQC,OAAS,IAAI,EAGrEZ,KAAAa,kBAAqBP,IAC3B,MAAMQ,EAAQd,KAAKQ,GAAGC,cAAc,kBACpC,IAAKK,KAAW,gBAAiBA,GAAQ,OACzCA,EAAMJ,YAAeJ,EAAgCK,QAAQC,OAAS,IAAI,EAGpEZ,KAAAe,kBAAoB,KAC1Bf,KAAKgB,cAAcC,MAAM,CA+B5B,CA3EC,mBAAAC,GAIElB,KAAKG,eAAiBH,KAAKQ,GAAGC,cAAc,kBAC5CT,KAAKI,gBAAkBJ,KAAKQ,GAAGC,cAAc,kB,CAG/C,gBAAAU,GAKEnB,KAAKQ,GAAGY,iBAAiB,eAAgBpB,KAAKK,kBAC9CL,KAAKQ,GAAGY,iBAAiB,cAAepB,KAAKa,kB,CAG/C,kBAAAQ,GACE,MAAMP,EAAQd,KAAKQ,GAAGC,cAAc,kBACpC,IAAKK,KAAW,gBAAiBA,GAAQ,OACzCA,EAAMQ,aAAetB,KAAKI,a,CAG5B,oBAAAmB,GACEvB,KAAKQ,GAAGgB,oBAAoB,eAAgBxB,KAAKK,kBACjDL,KAAKQ,GAAGgB,oBAAoB,cAAexB,KAAKa,kB,CAsBlD,MAAAY,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,2CAACC,MAAM,uBACVH,EAAA,0BAAAE,IAAA,2CAAwBE,QAAS9B,KAAK8B,QAAS7B,UAAWD,KAAKC,WAC7DyB,EAAA,sBAAAE,IAAA,2CACEG,KAAK,UACLC,QAAQ,OACRC,KAAK,SACLC,KAAK,UAAS,aACFlC,KAAKE,YACjBiC,UAAWnC,KAAKe,oBAElBW,EAAA,OAAAE,IAAA,2CAAKC,MAAM,2BACR7B,KAAKG,cACJuB,EAAA,OAAAE,IAAA,2CAAKC,MAAM,uDACTH,EAAA,QAAAE,IAAA,2CAAMQ,KAAK,WAGdpC,KAAKI,eACJsB,EAAA,OAAAE,IAAA,2CAAKC,MAAM,2BACTH,EAAA,QAAAE,IAAA,2CAAMQ,KAAK,c","ignoreList":[]}
@@ -1,11 +0,0 @@
1
- import type { Components, JSX } from "../types/components";
2
-
3
- interface DsCardDataVizLine extends Components.DsCardDataVizLine, HTMLElement {}
4
- export const DsCardDataVizLine: {
5
- prototype: DsCardDataVizLine;
6
- new (): DsCardDataVizLine;
7
- };
8
- /**
9
- * Used to define this component and all nested components recursively.
10
- */
11
- export const defineCustomElement: () => void;
@@ -1,2 +0,0 @@
1
- import{p as a,H as e,c as s,h as d,a as i,t}from"./index.js";import{d as c}from"./p-BFRMwl93.js";import{d as n}from"./p-huw1oRbt.js";import{d as r}from"./p-BXaieghV.js";import{d as l}from"./p-BAfG3M8z.js";import{d as o}from"./p-Ca-I2UnB.js";import{d as h}from"./p-CPwpgUWT.js";const f=()=>`.ds-data-viz-card-layout.sc-ds-card-data-viz-line{display:flex;flex:1 1 auto;flex-direction:column;box-sizing:border-box;height:100%;min-height:0;gap:var(--dimension-space-200)}.ds-data-viz-card-chart.sc-ds-card-data-viz-line{display:grid;flex:1 1 auto;align-items:center;box-sizing:border-box;min-height:0;padding:var(--dimension-space-400) var(--dimension-space-400) 0 var(--dimension-space-400)}.ds-data-viz-card-chart.sc-ds-card-data-viz-line>*.sc-ds-card-data-viz-line{width:100%;height:100%;min-width:0;min-height:0;max-width:100%;max-height:100%}.ds-data-viz-card-chart--fill.sc-ds-card-data-viz-line>*.sc-ds-card-data-viz-line{height:100%;min-height:0;max-height:100%}.ds-data-viz-card-legend.sc-ds-card-data-viz-line{flex:0 0 auto;box-sizing:border-box;padding:0 var(--dimension-space-100) var(--dimension-space-100) var(--dimension-space-100)}.sc-ds-card-data-viz-line-h{display:contents}`;const m=a(class a extends e{constructor(a){super();if(a!==false){this.__registerHost()}this.dsFilterClick=s(this,"dsFilterClick");this.cardWidth="md";this.filterLabel="Filter";this.hasChartSlot=false;this.hasLegendSlot=false;this.handleFilterClick=()=>{this.dsFilterClick.emit()}}componentWillRender(){this.hasChartSlot=!!this.el.querySelector('[slot="chart"]');this.hasLegendSlot=!!this.el.querySelector('[slot="legend"]')}componentDidRender(){const a=this.el.querySelector('ds-chart-legend[slot="legend"]');if(!a)return;a.setAttribute("highlight-on-hover","false");if("highlightOnHover"in a)a.highlightOnHover=false}render(){return d(i,{key:"aca669eaaae3071d85fffd46cf6deddab48f044a",class:"card-data-viz-line"},d("ds-card-shell-data-viz",{key:"6fb7600d41904d8a1b6e0d20560f6a88a3b0c28b",heading:this.heading,cardWidth:this.cardWidth},d("ds-button-unfilled",{key:"2d5f11262932f21db369a7a6db220df74c32dd88",slot:"actions",variant:"icon",type:"button",icon:"Filters","aria-label":this.filterLabel,onDsClick:this.handleFilterClick}),d("div",{key:"09ebb9263af5b321ad494128ff467169527e0fe8",class:"ds-data-viz-card-layout"},this.hasChartSlot&&d("div",{key:"9d8b2c42a4f6fb3c50381f0c34c102ee9e379592",class:"ds-data-viz-card-chart"},d("slot",{key:"0f1349dd269164fa7aa3ff59115c974404a45049",name:"chart"})),this.hasLegendSlot&&d("div",{key:"7b73fb32d9a892247bd51eab0a7b41720358f831",class:"ds-data-viz-card-legend"},d("slot",{key:"c0e90a16ed62269fc5e08a93cb3f8c18586888dd",name:"legend"})))))}get el(){return this}static get style(){return f()}},[262,"ds-card-data-viz-line",{heading:[1],cardWidth:[1,"card-width"],filterLabel:[1,"filter-label"],hasChartSlot:[32],hasLegendSlot:[32]}]);function b(){if(typeof customElements==="undefined"){return}const a=["ds-card-data-viz-line","ds-badge","ds-button-unfilled","ds-card-shell-data-viz","ds-icon","ds-loader","ds-text"];a.forEach((a=>{switch(a){case"ds-card-data-viz-line":if(!customElements.get(t(a))){customElements.define(t(a),m)}break;case"ds-badge":if(!customElements.get(t(a))){c()}break;case"ds-button-unfilled":if(!customElements.get(t(a))){n()}break;case"ds-card-shell-data-viz":if(!customElements.get(t(a))){r()}break;case"ds-icon":if(!customElements.get(t(a))){l()}break;case"ds-loader":if(!customElements.get(t(a))){o()}break;case"ds-text":if(!customElements.get(t(a))){h()}break}}))}b();const g=m;const v=b;export{g as DsCardDataVizLine,v as defineCustomElement};
2
- //# sourceMappingURL=ds-card-data-viz-line.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["cardDataVizLineCss","CardDataVizLine","__stencil_proxyCustomElement","HTMLElement","constructor","registerHost","this","cardWidth","filterLabel","hasChartSlot","hasLegendSlot","handleFilterClick","dsFilterClick","emit","componentWillRender","el","querySelector","componentDidRender","legend","setAttribute","highlightOnHover","render","h","Host","key","class","heading","slot","variant","type","icon","onDsClick","name"],"sources":["src/wc/components/CardDataVizLine/CardDataVizLine.css?tag=ds-card-data-viz-line&encapsulation=scoped","src/wc/components/CardDataVizLine/CardDataVizLine.tsx"],"sourcesContent":["@import '../../utils/data-viz-card-layout.css';\n\n:host {\n display: contents;\n}\n","import { Component, Element, Event, EventEmitter, h, Host, Prop, State } from '@stencil/core';\nimport type { CardShellDataVizWidth } from '../CardShellDataViz/CardShellDataViz';\n\nexport type CardDataVizLineWidth = CardShellDataVizWidth;\n\ntype StaticLegendSlot = HTMLElement & {\n highlightOnHover?: boolean;\n};\n\n/**\n * Line-chart data-viz card — dedicated `ds-card-shell-data-viz` chrome with a fill chart\n * region and a content-sized, static legend.\n */\n@Component({\n tag: 'ds-card-data-viz-line',\n styleUrl: 'CardDataVizLine.css',\n scoped: true,\n})\nexport class CardDataVizLine {\n @Element() el!: HTMLElement;\n\n /** Widget heading shown in the card header. */\n @Prop() heading!: string;\n\n /** Card width token — also sets matching min-height. */\n @Prop() cardWidth: CardDataVizLineWidth = 'md';\n @Prop() filterLabel: string = 'Filter';\n\n /** Emits when the header filter control is activated. */\n @Event() dsFilterClick!: EventEmitter<void>;\n\n @State() private hasChartSlot = false;\n @State() private hasLegendSlot = false;\n\n componentWillRender() {\n this.hasChartSlot = !!this.el.querySelector('[slot=\"chart\"]');\n this.hasLegendSlot = !!this.el.querySelector('[slot=\"legend\"]');\n }\n\n componentDidRender() {\n const legend = this.el.querySelector(\n 'ds-chart-legend[slot=\"legend\"]'\n ) as StaticLegendSlot | null;\n if (!legend) return;\n legend.setAttribute('highlight-on-hover', 'false');\n if ('highlightOnHover' in legend) legend.highlightOnHover = false;\n }\n\n private handleFilterClick = () => {\n this.dsFilterClick.emit();\n };\n\n render() {\n return (\n <Host class=\"card-data-viz-line\">\n <ds-card-shell-data-viz heading={this.heading} cardWidth={this.cardWidth}>\n <ds-button-unfilled\n slot=\"actions\"\n variant=\"icon\"\n type=\"button\"\n icon=\"Filters\"\n aria-label={this.filterLabel}\n onDsClick={this.handleFilterClick}\n />\n <div class=\"ds-data-viz-card-layout\">\n {this.hasChartSlot && (\n <div class=\"ds-data-viz-card-chart\">\n <slot name=\"chart\" />\n </div>\n )}\n {this.hasLegendSlot && (\n <div class=\"ds-data-viz-card-legend\">\n <slot name=\"legend\" />\n </div>\n )}\n </div>\n </ds-card-shell-data-viz>\n </Host>\n );\n }\n}\n"],"mappings":"qRAAA,MAAMA,EAAqB,IAAM,64B,MCkBpBC,EAAeC,EAAA,MAAAD,UAAAE,EAL5B,WAAAC,CAAAC,G,uFAYUC,KAAAC,UAAkC,KAClCD,KAAAE,YAAsB,SAKbF,KAAAG,aAAe,MACfH,KAAAI,cAAgB,MAgBzBJ,KAAAK,kBAAoB,KAC1BL,KAAKM,cAAcC,MAAM,CA+B5B,CA9CC,mBAAAC,GACER,KAAKG,eAAiBH,KAAKS,GAAGC,cAAc,kBAC5CV,KAAKI,gBAAkBJ,KAAKS,GAAGC,cAAc,kB,CAG/C,kBAAAC,GACE,MAAMC,EAASZ,KAAKS,GAAGC,cACrB,kCAEF,IAAKE,EAAQ,OACbA,EAAOC,aAAa,qBAAsB,SAC1C,GAAI,qBAAsBD,EAAQA,EAAOE,iBAAmB,K,CAO9D,MAAAC,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,2CAACC,MAAM,sBACVH,EAAA,0BAAAE,IAAA,2CAAwBE,QAASpB,KAAKoB,QAASnB,UAAWD,KAAKC,WAC7De,EAAA,sBAAAE,IAAA,2CACEG,KAAK,UACLC,QAAQ,OACRC,KAAK,SACLC,KAAK,UAAS,aACFxB,KAAKE,YACjBuB,UAAWzB,KAAKK,oBAElBW,EAAA,OAAAE,IAAA,2CAAKC,MAAM,2BACRnB,KAAKG,cACJa,EAAA,OAAAE,IAAA,2CAAKC,MAAM,0BACTH,EAAA,QAAAE,IAAA,2CAAMQ,KAAK,WAGd1B,KAAKI,eACJY,EAAA,OAAAE,IAAA,2CAAKC,MAAM,2BACTH,EAAA,QAAAE,IAAA,2CAAMQ,KAAK,c","ignoreList":[]}
@@ -1,11 +0,0 @@
1
- import type { Components, JSX } from "../types/components";
2
-
3
- interface DsCardShellDataViz extends Components.DsCardShellDataViz, HTMLElement {}
4
- export const DsCardShellDataViz: {
5
- prototype: DsCardShellDataViz;
6
- new (): DsCardShellDataViz;
7
- };
8
- /**
9
- * Used to define this component and all nested components recursively.
10
- */
11
- export const defineCustomElement: () => void;
@@ -1,2 +0,0 @@
1
- import{C as o,d as s}from"./p-BXaieghV.js";const t=o;const a=s;export{t as DsCardShellDataViz,a as defineCustomElement};
2
- //# sourceMappingURL=ds-card-shell-data-viz.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":[],"sources":[],"mappings":"","ignoreList":[]}
@@ -1,11 +0,0 @@
1
- import type { Components, JSX } from "../types/components";
2
-
3
- interface DsChartBarStacked extends Components.DsChartBarStacked, HTMLElement {}
4
- export const DsChartBarStacked: {
5
- prototype: DsChartBarStacked;
6
- new (): DsChartBarStacked;
7
- };
8
- /**
9
- * Used to define this component and all nested components recursively.
10
- */
11
- export const defineCustomElement: () => void;
@@ -1,2 +0,0 @@
1
- import{p as t,H as s,h as e,a,t as r}from"./index.js";import{c}from"./p-CMv_7vFs.js";import{C as n,r as i,b as o,l as h}from"./p-2foAUsDN.js";import{f as d}from"./p-DXewjzkM.js";const l=()=>`.sc-ds-chart-bar-stacked-h{display:inline-flex;max-width:100%;font-family:var(--typography-font-family)}.chart-bar-stacked__svg.sc-ds-chart-bar-stacked{display:block;width:100%;height:100%}.chart-bar-stacked__gridline.sc-ds-chart-bar-stacked{stroke:var(--color-border-tertiary);stroke-width:var(--dimension-stroke-width-012);vector-effect:non-scaling-stroke}.chart-bar-stacked__axis-label.sc-ds-chart-bar-stacked{fill:var(--color-foreground-secondary);font-family:var(--typography-font-family);font-size:var(--typography-fontsize-xs);font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-positive);text-transform:uppercase}.chart-bar-stacked__segment-shape--rounded.sc-ds-chart-bar-stacked{rx:var(--dimension-radius-025)}.chart-bar-stacked__segment-separator.sc-ds-chart-bar-stacked{stroke:var(--color-background-primary);stroke-width:var(--dimension-stroke-width-012);stroke-linecap:butt;vector-effect:non-scaling-stroke}`;const f=[0,25,50,75,100];const g=t(class t extends s{constructor(t){super();if(t!==false){this.__registerHost()}this.series=[];this.categories=[];this.variant="stacked";this.width=480;this.height=240;this.viewportController=null;this.svgEl=null}componentDidLoad(){this.connectViewportController()}connectedCallback(){if(this.svgEl&&!this.viewportController)this.connectViewportController()}componentDidRender(){if(!this.viewportController)this.connectViewportController()}connectViewportController(){if(!this.svgEl)return;this.viewportController=new n(this.svgEl,(t=>{if(t.width!==this.viewport?.width||t.height!==this.viewport?.height){this.viewport=t}}));this.viewportController.connect()}disconnectedCallback(){this.viewportController?.disconnect();this.viewportController=null}handleIntrinsicSizeChange(){this.viewport=undefined;if(typeof requestAnimationFrame==="function"){requestAnimationFrame((()=>this.viewportController?.measure()))}}valuesForCategory(t){return this.series.map((s=>Math.max(0,s.data[t]??0)))}accessibleLabel(){return this.categories.map(((t,s)=>{const e=this.valuesForCategory(s);const a=e.reduce(((t,s)=>t+s),0);const r=this.series.map(((t,s)=>{const r=e[s];const c=this.variant==="percentage"?d(a?r/a:0,1):String(r);return`${t.name}: ${c}`})).join(", ");return`${t}: ${r}`})).join("; ")}render(){const t=this.viewport?.width??this.width;const s=this.viewport?.height??this.height;const{margin:r,axisLabelGap:n,categoryLabelOffset:d}=i();const l=Math.max(0,t-r.left-r.right);const g=Math.max(0,s-r.top-r.bottom);const k=this.categories.map(((t,s)=>this.valuesForCategory(s)));const b=k.map((t=>t.reduce(((t,s)=>t+s),0)));const m=this.variant==="percentage"?100:Math.max(0,...b);const p=o().domain(this.categories).range([0,l]).padding(.35);const u=h().domain([0,m||1]).range([g,0]).nice();const y=this.variant==="percentage"?f:u.ticks(4);return e(a,{key:"9f82833d6c2a7408037c92b468375cd2fb951783",class:"chart-bar-stacked"},e("svg",{key:"4a0a863a7c73873bfa5c325366fc069ccc2a38c7",class:"chart-bar-stacked__svg",ref:t=>{this.svgEl=t??null},width:t,height:s,role:"img","aria-label":this.accessibleLabel()},e("g",{key:"fc8c5f51558c9950184968e0095d055f7e360c5a",transform:`translate(${r.left}, ${r.top})`},y.map((t=>e("g",{key:`grid-${t}`,transform:`translate(0, ${u(t)})`},e("line",{class:"chart-bar-stacked__gridline",x1:0,x2:l}),e("text",{class:"chart-bar-stacked__axis-label",x:-n,"text-anchor":"end","dominant-baseline":"middle"},this.variant==="percentage"?`${t}%`:t)))),this.categories.map(((t,s)=>{const a=p.bandwidth();const r=p(t)??0;const n=k[s];const i=b[s];const o=n.reduce(((t,s,e)=>s>0?e:t),-1);let h=0;return e("g",{class:"chart-bar-stacked__stack","data-category":t,key:t},this.series.map(((t,s)=>{const d=n[s];const l=this.variant==="percentage"?i?d/i*100:0:d;const f=h;const g=h+l;h=g;const k=u(g);const b=u(f);const m=Math.max(0,b-k);if(!m)return null;const p=t.color??c(s);const y=s===o;const _=this.variant==="stacked"&&y;const x=k+m/2;const v=m/2;return e("g",{class:"chart-bar-stacked__segment","data-series":t.name,key:t.name},e("rect",{class:{"chart-bar-stacked__segment-shape":true,"chart-bar-stacked__segment-shape--rounded":_},x:r,y:k,width:a,height:m,fill:p}),_?e("rect",{class:"chart-bar-stacked__segment-square-base",x:r,y:x,width:a,height:v,fill:p}):null,f>0?e("line",{class:"chart-bar-stacked__segment-separator",x1:r,x2:r+a,y1:b,y2:b,"vector-effect":"non-scaling-stroke"}):null)})),e("text",{class:"chart-bar-stacked__axis-label",x:r+a/2,y:g+d,"text-anchor":"middle"},t))})))))}static get watchers(){return{width:[{handleIntrinsicSizeChange:0}],height:[{handleIntrinsicSizeChange:0}]}}static get style(){return l()}},[2,"ds-chart-bar-stacked",{series:[16],categories:[16],variant:[1],width:[2],height:[2],viewport:[32]},undefined,{width:[{handleIntrinsicSizeChange:0}],height:[{handleIntrinsicSizeChange:0}]}]);function k(){if(typeof customElements==="undefined"){return}const t=["ds-chart-bar-stacked"];t.forEach((t=>{switch(t){case"ds-chart-bar-stacked":if(!customElements.get(r(t))){customElements.define(r(t),g)}break}}))}k();const b=g;const m=k;export{b as DsChartBarStacked,m as defineCustomElement};
2
- //# sourceMappingURL=ds-chart-bar-stacked.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["chartBarStackedCss","PERCENTAGE_TICKS","ChartBarStacked","__stencil_proxyCustomElement","HTMLElement","constructor","registerHost","this","series","categories","variant","width","height","viewportController","svgEl","componentDidLoad","connectViewportController","connectedCallback","componentDidRender","ChartViewportController","viewport","connect","disconnectedCallback","disconnect","handleIntrinsicSizeChange","undefined","requestAnimationFrame","measure","valuesForCategory","categoryIndex","map","Math","max","data","accessibleLabel","category","values","total","reduce","sum","value","details","seriesIndex","visibleValue","formatPercentage","String","name","join","render","viewportWidth","viewportHeight","margin","axisLabelGap","categoryLabelOffset","resolveCartesianChartLayout","innerWidth","left","right","innerHeight","top","bottom","categoryValues","_","index","totals","yMax","xScale","scaleBand","domain","range","padding","yScale","scaleLinear","nice","yTicks","ticks","h","Host","key","class","ref","element","role","transform","tick","x1","x2","x","barWidth","bandwidth","barX","topSeriesIndex","topIndex","cumulativeValue","rawValue","segmentStart","segmentEnd","segmentY","segmentBottom","segmentHeight","fill","color","categoryColor","isTopSegment","hasRoundedTop","squareBaseY","squareBaseHeight","y","y1","y2"],"sources":["src/wc/components/ChartBarStacked/ChartBarStacked.css?tag=ds-chart-bar-stacked&encapsulation=scoped","src/wc/components/ChartBarStacked/ChartBarStacked.tsx"],"sourcesContent":[":host {\n display: inline-flex;\n max-width: 100%;\n font-family: var(--typography-font-family);\n}\n\n.chart-bar-stacked__svg {\n display: block;\n width: 100%;\n height: 100%;\n}\n\n.chart-bar-stacked__gridline {\n stroke: var(--color-border-tertiary);\n stroke-width: var(--dimension-stroke-width-012);\n vector-effect: non-scaling-stroke;\n}\n\n/* Matches ds-text text-caption regular (SVG cannot host ds-text). */\n.chart-bar-stacked__axis-label {\n fill: var(--color-foreground-secondary);\n font-family: var(--typography-font-family);\n font-size: var(--typography-fontsize-xs);\n font-weight: var(--typography-weight-medium);\n letter-spacing: var(--typography-letterspacing-positive);\n text-transform: uppercase;\n}\n\n.chart-bar-stacked__segment-shape--rounded {\n rx: var(--dimension-radius-025);\n}\n\n.chart-bar-stacked__segment-separator {\n stroke: var(--color-background-primary);\n stroke-width: var(--dimension-stroke-width-012);\n stroke-linecap: butt;\n vector-effect: non-scaling-stroke;\n}\n","import { Component, Prop, State, Watch, h, Host } from '@stencil/core';\nimport { scaleBand, scaleLinear } from 'd3-scale';\nimport { categoryColor } from '../../utils/chart-colors';\nimport { formatPercentage } from '../../utils';\nimport { resolveCartesianChartLayout } from '../../utils/cartesian-chart-layout';\nimport {\n ChartViewportController,\n type ChartViewportSize,\n} from '../../utils/chart-viewport-controller';\nimport type { ChartSeries } from '../../utils/chart-types';\n\nexport type ChartBarStackedVariant = 'stacked' | 'percentage';\n\nconst PERCENTAGE_TICKS = [0, 25, 50, 75, 100];\n\n@Component({\n tag: 'ds-chart-bar-stacked',\n styleUrl: 'ChartBarStacked.css',\n scoped: true,\n})\nexport class ChartBarStacked {\n /** Ordered stack series. Set as a JS property (not an HTML attribute). */\n @Prop() series: ChartSeries[] = [];\n /** X-axis labels — must match each series' `data` length. Set as a JS property. */\n @Prop() categories: string[] = [];\n @Prop() variant: ChartBarStackedVariant = 'stacked';\n /** Standalone intrinsic width. Container constraints reflow the plot at rendered pixel size. */\n @Prop() width: number = 480;\n /** Standalone intrinsic height. Container constraints reflow the plot at rendered pixel size. */\n @Prop() height: number = 240;\n\n @State() private viewport: ChartViewportSize | undefined;\n\n private viewportController: ChartViewportController | null = null;\n private svgEl: SVGElement | null = null;\n\n componentDidLoad() {\n this.connectViewportController();\n }\n\n connectedCallback() {\n if (this.svgEl && !this.viewportController) this.connectViewportController();\n }\n\n componentDidRender() {\n if (!this.viewportController) this.connectViewportController();\n }\n\n private connectViewportController() {\n if (!this.svgEl) return;\n this.viewportController = new ChartViewportController(this.svgEl, viewport => {\n if (\n viewport.width !== this.viewport?.width ||\n viewport.height !== this.viewport?.height\n ) {\n this.viewport = viewport;\n }\n });\n this.viewportController.connect();\n }\n\n disconnectedCallback() {\n this.viewportController?.disconnect();\n this.viewportController = null;\n }\n\n @Watch('width')\n @Watch('height')\n handleIntrinsicSizeChange() {\n this.viewport = undefined;\n if (typeof requestAnimationFrame === 'function') {\n requestAnimationFrame(() => this.viewportController?.measure());\n }\n }\n\n private valuesForCategory(categoryIndex: number) {\n return this.series.map(series => Math.max(0, series.data[categoryIndex] ?? 0));\n }\n\n private accessibleLabel() {\n return this.categories\n .map((category, categoryIndex) => {\n const values = this.valuesForCategory(categoryIndex);\n const total = values.reduce((sum, value) => sum + value, 0);\n const details = this.series\n .map((series, seriesIndex) => {\n const value = values[seriesIndex];\n const visibleValue = this.variant === 'percentage'\n ? formatPercentage(total ? value / total : 0, 1)\n : String(value);\n return `${series.name}: ${visibleValue}`;\n })\n .join(', ');\n return `${category}: ${details}`;\n })\n .join('; ');\n }\n\n render() {\n const viewportWidth = this.viewport?.width ?? this.width;\n const viewportHeight = this.viewport?.height ?? this.height;\n const { margin, axisLabelGap, categoryLabelOffset } =\n resolveCartesianChartLayout();\n const innerWidth = Math.max(0, viewportWidth - margin.left - margin.right);\n const innerHeight = Math.max(0, viewportHeight - margin.top - margin.bottom);\n const categoryValues = this.categories.map((_, index) => this.valuesForCategory(index));\n const totals = categoryValues.map(values =>\n values.reduce((sum, value) => sum + value, 0)\n );\n const yMax = this.variant === 'percentage' ? 100 : Math.max(0, ...totals);\n\n const xScale = scaleBand()\n .domain(this.categories)\n .range([0, innerWidth])\n .padding(0.35);\n\n const yScale = scaleLinear()\n .domain([0, yMax || 1])\n .range([innerHeight, 0])\n .nice();\n\n const yTicks = this.variant === 'percentage' ? PERCENTAGE_TICKS : yScale.ticks(4);\n\n return (\n <Host class=\"chart-bar-stacked\">\n <svg\n class=\"chart-bar-stacked__svg\"\n ref={element => {\n this.svgEl = element ?? null;\n }}\n width={viewportWidth}\n height={viewportHeight}\n role=\"img\"\n aria-label={this.accessibleLabel()}\n >\n <g transform={`translate(${margin.left}, ${margin.top})`}>\n {yTicks.map(tick => (\n <g key={`grid-${tick}`} transform={`translate(0, ${yScale(tick)})`}>\n <line class=\"chart-bar-stacked__gridline\" x1={0} x2={innerWidth} />\n <text\n class=\"chart-bar-stacked__axis-label\"\n x={-axisLabelGap}\n text-anchor=\"end\"\n dominant-baseline=\"middle\"\n >\n {this.variant === 'percentage' ? `${tick}%` : tick}\n </text>\n </g>\n ))}\n\n {this.categories.map((category, categoryIndex) => {\n const barWidth = xScale.bandwidth();\n const barX = xScale(category) ?? 0;\n const values = categoryValues[categoryIndex];\n const total = totals[categoryIndex];\n const topSeriesIndex = values.reduce(\n (topIndex, value, seriesIndex) => (value > 0 ? seriesIndex : topIndex),\n -1\n );\n let cumulativeValue = 0;\n\n return (\n <g class=\"chart-bar-stacked__stack\" data-category={category} key={category}>\n {this.series.map((series, seriesIndex) => {\n const rawValue = values[seriesIndex];\n const value = this.variant === 'percentage'\n ? total\n ? (rawValue / total) * 100\n : 0\n : rawValue;\n const segmentStart = cumulativeValue;\n const segmentEnd = cumulativeValue + value;\n cumulativeValue = segmentEnd;\n\n const segmentY = yScale(segmentEnd);\n const segmentBottom = yScale(segmentStart);\n const segmentHeight = Math.max(0, segmentBottom - segmentY);\n if (!segmentHeight) return null;\n\n const fill = series.color ?? categoryColor(seriesIndex);\n const isTopSegment = seriesIndex === topSeriesIndex;\n const hasRoundedTop =\n this.variant === 'stacked' && isTopSegment;\n const squareBaseY = segmentY + segmentHeight / 2;\n const squareBaseHeight = segmentHeight / 2;\n\n return (\n <g\n class=\"chart-bar-stacked__segment\"\n data-series={series.name}\n key={series.name}\n >\n <rect\n class={{\n 'chart-bar-stacked__segment-shape': true,\n 'chart-bar-stacked__segment-shape--rounded': hasRoundedTop,\n }}\n x={barX}\n y={segmentY}\n width={barWidth}\n height={segmentHeight}\n fill={fill}\n />\n {hasRoundedTop ? (\n <rect\n class=\"chart-bar-stacked__segment-square-base\"\n x={barX}\n y={squareBaseY}\n width={barWidth}\n height={squareBaseHeight}\n fill={fill}\n />\n ) : null}\n {segmentStart > 0 ? (\n <line\n class=\"chart-bar-stacked__segment-separator\"\n x1={barX}\n x2={barX + barWidth}\n y1={segmentBottom}\n y2={segmentBottom}\n vector-effect=\"non-scaling-stroke\"\n />\n ) : null}\n </g>\n );\n })}\n <text\n class=\"chart-bar-stacked__axis-label\"\n x={barX + barWidth / 2}\n y={innerHeight + categoryLabelOffset}\n text-anchor=\"middle\"\n >\n {category}\n </text>\n </g>\n );\n })}\n </g>\n </svg>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{p as e,H as s,c as t,h as i,a as o,t as r}from"./index.js";import{a as c,C as n,b as l}from"./p-DjbTFy2B.js";import{S as d,r as a,f as h,a as u,b as m,d as g}from"./p-D1bNvIpb.js";import{d as p}from"./p-BFRMwl93.js";import{d as f}from"./p-huw1oRbt.js";import{d as v}from"./p-CU2673IJ.js";import{d as b}from"./p-ukB-dPOK.js";import{d as y}from"./p-BAfG3M8z.js";import{d as x}from"./p-Ca-I2UnB.js";import{d as w}from"./p-CPwpgUWT.js";import{d as k}from"./p-69lHhJiX.js";import{D as _,s as z}from"./p-BgGP65Nn.js";import{a as C,C as F}from"./p-CuwopElg.js";import{c as I}from"./p-C61yJkfr.js";const j=()=>`.sc-ds-select-multi-h{--ds-focus-ring-width:var(--dimension-stroke-width-025, 2px);--ds-focus-ring-offset:var(--dimension-space-025, 2px);--ds-focus-ring-color:var(--color-interaction-focus)}.ds-focus-ring.sc-ds-select-multi-h,.ds-focus-ring.sc-ds-select-multi,.ds-focus-ring-inset.sc-ds-select-multi-h,.ds-focus-ring-inset.sc-ds-select-multi{outline:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.ds-focus-ring.sc-ds-select-multi-h:focus-visible,.ds-focus-ring.sc-ds-select-multi:focus-visible{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:var(--ds-focus-ring-offset)}.ds-focus-ring.ds-focus-ring--visible.sc-ds-select-multi-h,.ds-focus-ring.ds-focus-ring--visible.sc-ds-select-multi{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:var(--ds-focus-ring-offset)}.ds-focus-ring-inset.sc-ds-select-multi-h:focus-visible,.ds-focus-ring-inset.sc-ds-select-multi:focus-visible{outline:none}.ds-focus-ring-inset.sc-ds-select-multi-h:focus-visible::after,.ds-focus-ring-inset.sc-ds-select-multi:focus-visible::after{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:calc(-1 * var(--ds-focus-ring-width))}.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-select-multi-h,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-select-multi{outline:none}.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-select-multi-h::after,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-select-multi::after{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:calc(-1 * var(--ds-focus-ring-width))}.ds-interaction-fill.sc-ds-select-multi-h,.ds-interaction-fill.sc-ds-select-multi{position:relative;z-index:0;cursor:default;--ds-interaction-hover:var(--color-interaction-hover);--ds-interaction-pressed:var(--color-interaction-pressed);--ds-interaction-active:var(--color-interaction-active-brand);--ds-interaction-border-width:0px;--ds-interaction-border-color:transparent}.ds-interaction-fill.sc-ds-select-multi-h::before,.ds-interaction-fill.sc-ds-select-multi::before,.ds-interaction-fill.sc-ds-select-multi-h::after,.ds-interaction-fill.sc-ds-select-multi::after{content:'';position:absolute;inset:0;border-radius:inherit;background:transparent;pointer-events:none;cursor:inherit;transition:none}.ds-interaction-fill.sc-ds-select-multi-h::before,.ds-interaction-fill.sc-ds-select-multi::before{z-index:1}.ds-interaction-fill.sc-ds-select-multi-h::after,.ds-interaction-fill.sc-ds-select-multi::after{z-index:3;box-shadow:inset 0 0 0 var(--ds-interaction-border-width) var(--ds-interaction-border-color)}.ds-interaction-fill--bordered.sc-ds-select-multi-h,.ds-interaction-fill--bordered.sc-ds-select-multi{--ds-interaction-border-width:var(--dimension-stroke-width-012);--ds-interaction-border-color:var(--color-border-secondary)}.ds-interaction-fill--selected.sc-ds-select-multi-h::before,.ds-interaction-fill--selected.sc-ds-select-multi::before{background:var(--ds-interaction-active)}.ds-interaction-fill--selected.sc-ds-select-multi-h,.ds-interaction-fill--selected.sc-ds-select-multi{--ds-interaction-dot-ring:var(--ds-interaction-active)}@media (hover: hover) and (pointer: fine){.ds-interaction-fill.sc-ds-select-multi-h:hover:not(:disabled)::after,.ds-interaction-fill.sc-ds-select-multi:hover:not(:disabled)::after{background:var(--ds-interaction-hover)}}.ds-interaction-fill.sc-ds-select-multi-h:active:not(:disabled)::after,.ds-interaction-fill.sc-ds-select-multi:active:not(:disabled)::after{background:var(--ds-interaction-pressed)}.ds-interaction-fill.sc-ds-select-multi-h>.ds-interaction-fill__content.sc-ds-select-multi,.ds-interaction-fill.sc-ds-select-multi>.ds-interaction-fill__content.sc-ds-select-multi,.ds-interaction-fill__content.sc-ds-select-multi{position:relative;z-index:2;cursor:inherit}.ds-interaction-fill--on-faint.sc-ds-select-multi-h,.ds-interaction-fill--on-faint.sc-ds-select-multi{--ds-interaction-active:var(--color-interaction-active)}.ds-interaction-fill--on-medium.sc-ds-select-multi-h,.ds-interaction-fill--on-medium.sc-ds-select-multi{--ds-interaction-hover:var(--color-interaction-on-medium-background-hover);--ds-interaction-pressed:var(--color-interaction-on-medium-background-pressed);--ds-interaction-active:var(--color-interaction-on-medium-background-active);--ds-focus-ring-color:var(--color-interaction-on-medium-background-focus)}.ds-interaction-fill--on-bold.sc-ds-select-multi-h,.ds-interaction-fill--on-bold.sc-ds-select-multi{--ds-interaction-hover:var(--color-interaction-on-bold-background-hover);--ds-interaction-pressed:var(--color-interaction-on-bold-background-pressed);--ds-interaction-active:var(--color-interaction-on-bold-background-active);--ds-focus-ring-color:var(--color-interaction-on-bold-background-focus)}.ds-interaction-fill--on-strong.sc-ds-select-multi-h,.ds-interaction-fill--on-strong.sc-ds-select-multi{--ds-interaction-hover:var(--color-interaction-on-strong-background-hover);--ds-interaction-pressed:var(--color-interaction-on-strong-background-pressed);--ds-interaction-active:var(--color-interaction-on-strong-background-active);--ds-focus-ring-color:var(--color-interaction-on-strong-background-focus)}.ds-interaction-fill--on-translucent.sc-ds-select-multi-h,.ds-interaction-fill--on-translucent.sc-ds-select-multi{--ds-interaction-hover:var(--color-translucent-interaction-hover);--ds-interaction-pressed:var(--color-translucent-interaction-pressed);--ds-interaction-active:var(--color-translucent-interaction-active);--ds-focus-ring-color:var(--color-translucent-interaction-focus)}.ds-interaction-fill--on-inverted.sc-ds-select-multi-h,.ds-interaction-fill--on-inverted.sc-ds-select-multi{--ds-interaction-hover:var(--color-inverted-interaction-hover);--ds-interaction-pressed:var(--color-inverted-interaction-pressed);--ds-interaction-active:var(--color-inverted-interaction-active);--ds-focus-ring-color:var(--color-inverted-interaction-focus)}.ds-interaction-fill--on-media.sc-ds-select-multi-h,.ds-interaction-fill--on-media.sc-ds-select-multi{--ds-interaction-hover:var(--color-media-interaction-hover);--ds-interaction-pressed:var(--color-media-interaction-pressed);--ds-interaction-active:var(--color-media-interaction-active);--ds-focus-ring-color:var(--color-media-interaction-focus)}.ds-interaction-fill--on-always-dark.sc-ds-select-multi-h,.ds-interaction-fill--on-always-dark.sc-ds-select-multi{--ds-interaction-hover:var(--color-always-dark-interaction-hover);--ds-interaction-pressed:var(--color-always-dark-interaction-pressed);--ds-interaction-active:var(--color-always-dark-interaction-active);--ds-focus-ring-color:var(--color-always-dark-interaction-focus)}.ds-interaction-fill--on-navigation.sc-ds-select-multi-h,.ds-interaction-fill--on-navigation.sc-ds-select-multi{--ds-interaction-hover:var(--color-navigation-interaction-hover);--ds-interaction-pressed:var(--color-navigation-interaction-pressed);--ds-interaction-active:var(--color-navigation-interaction-active);--ds-focus-ring-color:var(--color-navigation-interaction-focus)}.ds-control-inactive.sc-ds-select-multi-h,.ds-control-inactive.sc-ds-select-multi{opacity:0.5;pointer-events:none;cursor:not-allowed}.ds-control--lg.sc-ds-select-multi,.ds-control--lg.sc-ds-select-multi-h,.ds-control--md.sc-ds-select-multi-h,.ds-control--md.sc-ds-select-multi,.ds-control--sm.sc-ds-select-multi-h,.ds-control--sm.sc-ds-select-multi,.ds-control--xs.sc-ds-select-multi-h,.ds-control--xs.sc-ds-select-multi{--ds-control-radius:var(--dimension-radius-025)}.ds-control--lg.sc-ds-select-multi-h,.ds-control--lg.sc-ds-select-multi{--ds-control-height:var(--dimension-size-500);--ds-control-icon:var(--dimension-iconography-lg);--ds-control-padding-inline:var(--dimension-space-100);--ds-control-label-inset:var(--dimension-space-050);--ds-control-gap:var(--dimension-space-050)}.ds-control--md.sc-ds-select-multi-h,.ds-control--md.sc-ds-select-multi{--ds-control-height:var(--dimension-size-400);--ds-control-icon:var(--dimension-iconography-md);--ds-control-padding-inline:var(--dimension-space-075);--ds-control-label-inset:var(--dimension-space-025);--ds-control-gap:var(--dimension-space-050)}.ds-control--sm.sc-ds-select-multi-h,.ds-control--sm.sc-ds-select-multi{--ds-control-height:var(--dimension-size-300);--ds-control-icon:var(--dimension-iconography-sm);--ds-control-padding-inline:var(--dimension-space-050);--ds-control-label-inset:var(--dimension-space-025);--ds-control-gap:var(--dimension-space-025)}.ds-control--xs.sc-ds-select-multi-h,.ds-control--xs.sc-ds-select-multi{--ds-control-height:var(--dimension-size-200);--ds-control-icon:var(--dimension-iconography-xs);--ds-control-padding-inline:var(--dimension-space-025);--ds-control-label-inset:var(--dimension-space-025);--ds-control-gap:0}.ds-chrome-space--sm.sc-ds-select-multi-h,.ds-chrome-space--sm.sc-ds-select-multi{--ds-chrome-padding:var(--dimension-space-050);--ds-chrome-gap:var(--dimension-space-050)}.ds-chrome-space--md.sc-ds-select-multi-h,.ds-chrome-space--md.sc-ds-select-multi{--ds-chrome-padding:var(--dimension-space-100);--ds-chrome-gap:var(--dimension-space-100)}.ds-chrome-space--lg.sc-ds-select-multi-h,.ds-chrome-space--lg.sc-ds-select-multi{--ds-chrome-padding:var(--dimension-space-200);--ds-chrome-gap:var(--dimension-space-200)}.ds-chrome-row.sc-ds-select-multi-h,.ds-chrome-row.sc-ds-select-multi,.ds-chrome-column.sc-ds-select-multi-h,.ds-chrome-column.sc-ds-select-multi,.ds-chrome-grid.sc-ds-select-multi-h,.ds-chrome-grid.sc-ds-select-multi{display:flex;box-sizing:border-box;gap:var(--ds-chrome-gap, var(--dimension-space-100));padding:var(--ds-chrome-padding, var(--dimension-space-100))}.ds-chrome-row.sc-ds-select-multi-h,.ds-chrome-row.sc-ds-select-multi{flex-direction:row;align-items:center}.ds-chrome-column.sc-ds-select-multi-h,.ds-chrome-column.sc-ds-select-multi{flex-direction:column}.ds-chrome-grid.sc-ds-select-multi-h,.ds-chrome-grid.sc-ds-select-multi{display:grid;align-items:center}.ds-control-frame.sc-ds-select-multi{display:inline-flex;align-items:center;box-sizing:border-box;height:var(--ds-control-height, var(--dimension-size-400));padding-inline:var(--ds-control-padding-inline, var(--dimension-space-075));gap:var(--ds-control-gap, var(--dimension-space-050));border-radius:var(--ds-control-radius, var(--dimension-radius-025))}.ds-control-icon-box.sc-ds-select-multi{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--ds-control-icon, var(--dimension-iconography-md));height:var(--ds-control-icon, var(--dimension-iconography-md))}.ds-control-label-box.sc-ds-select-multi{min-width:0;padding-inline:var(--ds-control-label-inset, var(--dimension-space-025))}.ds-empty-region.sc-ds-select-multi{display:flex;flex:1 1 auto;align-items:center;justify-content:center;box-sizing:border-box;min-width:0;min-height:0}.ds-empty-region--padded.sc-ds-select-multi{padding:var(--dimension-space-200)}.ds-choice-popup.sc-ds-select-multi{box-sizing:border-box;display:flex;flex-direction:column;min-width:var(--dimension-menu-width-xs);max-width:min( var(--dimension-panel-width-lg), calc(100vw - var(--dimension-space-200)) );max-height:calc(100vh - var(--dimension-space-200));overflow:hidden;inset:auto;margin:0;padding:0;border:0;background-color:var(--color-background-primary);border-radius:var(--dimension-radius-075);box-shadow:var(--effect-shadow-elevated-floating);animation:dsChoiceFadeIn var(--effect-motion-short-2) forwards;backface-visibility:hidden;will-change:transform;text-align:start}.ds-choice-popup.sc-ds-select-multi::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:var(--effect-highlight-elevated-floating)}.ds-choice-popup--closing.sc-ds-select-multi{animation:dsChoiceFadeOut var(--effect-motion-short-2) forwards}@keyframes dsChoiceFadeIn{from{opacity:0;transform:inherit scale(0.97)}to{opacity:1}}@keyframes dsChoiceFadeOut{from{opacity:1}to{opacity:0}}@media (prefers-reduced-motion: reduce){.ds-choice-popup.sc-ds-select-multi{animation:none;opacity:1}.ds-choice-popup--closing.sc-ds-select-multi{opacity:0}}.ds-choice-list.sc-ds-select-multi{display:flex;flex-direction:column;min-height:0;overflow-y:auto;overscroll-behavior:contain}.ds-choice-section--divided.sc-ds-select-multi{border-bottom:var(--dimension-stroke-width-015) solid var(--color-border-tertiary)}ds-text.ds-choice-section__header.sc-ds-select-multi{display:flex;align-items:center;box-sizing:border-box;height:var(--ds-control-height, var(--dimension-size-400));padding:0 calc( var(--ds-control-padding-inline, var(--dimension-space-075)) + var(--ds-control-label-inset, var(--dimension-space-025)) );text-align:start;-webkit-user-select:none;user-select:none}.ds-choice-item.sc-ds-select-multi{width:100%;border:none;border-radius:var(--ds-control-radius, var(--dimension-radius-025));background:transparent;cursor:default;-webkit-user-select:none;user-select:none;text-align:left;color:inherit}.ds-choice-item.sc-ds-select-multi:has(.ds-choice-item__subtext){height:auto;min-height:var(--ds-control-height, var(--dimension-size-400));padding-block:var(--ds-control-padding-inline, var(--dimension-space-075));align-items:flex-start}.ds-choice-item__content.sc-ds-select-multi{display:flex;flex:1;flex-direction:column;gap:var(--dimension-space-025);min-width:0}ds-text.ds-choice-item__label.sc-ds-select-multi{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}ds-text.ds-choice-item__subtext.sc-ds-select-multi{display:-webkit-box;overflow:hidden;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.ds-choice-item__icon.sc-ds-select-multi,.ds-choice-item__suffix.sc-ds-select-multi{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--ds-control-icon, var(--dimension-iconography-md));height:var(--ds-control-icon, var(--dimension-iconography-md));pointer-events:none}.ds-choice-empty.sc-ds-select-multi,.ds-choice-loading.sc-ds-select-multi{min-height:var(--dimension-size-600);padding:var(--dimension-space-100)}.ds-choice-footer.sc-ds-select-multi{position:relative;box-sizing:border-box;padding-block:var(--dimension-space-050)}.ds-choice-footer.sc-ds-select-multi::before{content:'';position:absolute;inset:0 0 auto;height:var(--dimension-stroke-width-012);background-color:var(--color-border-tertiary);pointer-events:none}.ds-choice-footer__content.sc-ds-select-multi{display:flex;align-items:center;justify-content:space-between;box-sizing:border-box;height:var(--ds-control-height, var(--dimension-size-400))}.ds-choice-footer__summary.sc-ds-select-multi,.ds-choice-footer__clear.sc-ds-select-multi ds-text.sc-ds-select-multi{padding-inline:calc( var(--dimension-space-050) + var(--ds-control-padding-inline, var(--dimension-space-075)) + var(--ds-control-label-inset, var(--dimension-space-025)) )}.ds-choice-footer__clear.sc-ds-select-multi{appearance:none;display:inline-flex;align-items:center;padding:0;border:0;border-radius:var(--dimension-radius-025);background:transparent;color:var(--color-foreground-bold-brand);cursor:default}.ds-choice-footer__clear.sc-ds-select-multi:hover{text-decoration:underline;text-decoration-color:var(--color-foreground-tertiary)}.ds-control-frame.sc-ds-select-multi{display:inline-flex;align-items:center;box-sizing:border-box;height:var(--ds-control-height, var(--dimension-size-400));padding-inline:var(--ds-control-padding-inline, var(--dimension-space-075));gap:var(--ds-control-gap, var(--dimension-space-050));border-radius:var(--ds-control-radius, var(--dimension-radius-025))}.ds-control-icon-box.sc-ds-select-multi{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--ds-control-icon, var(--dimension-iconography-md));height:var(--ds-control-icon, var(--dimension-iconography-md))}.ds-control-label-box.sc-ds-select-multi{min-width:0;padding-inline:var(--ds-control-label-inset, var(--dimension-space-025))}.ds-control-width--hug.sc-ds-select-multi-h,.ds-control-width--hug.sc-ds-select-multi{width:fit-content;max-width:100%;flex:0 0 auto;align-self:flex-start}.ds-control-width--fill.sc-ds-select-multi-h,.ds-control-width--fill.sc-ds-select-multi{width:100%;min-width:0;flex:1 1 auto;align-self:stretch}.ds-field-stack.sc-ds-select-multi-h,.ds-field-stack.sc-ds-select-multi{display:flex;flex-direction:column;gap:var(--dimension-space-050)}.select-search.sc-ds-select-multi{position:relative;box-sizing:border-box;padding:var(--dimension-space-050);background:transparent}.select-search.sc-ds-select-multi::after{content:'';position:absolute;inset:auto 0 0;height:var(--dimension-stroke-width-012);background-color:var(--color-border-tertiary);pointer-events:none}.select-search.sc-ds-select-multi:focus-within::after{height:var(--dimension-stroke-width-018);background-color:var(--color-border-bold-brand)}.select-search__control.sc-ds-select-multi{display:flex;align-items:center;box-sizing:border-box;gap:var(--ds-control-gap, var(--dimension-space-050));height:var(--ds-control-height, var(--dimension-size-400));padding:0 var(--ds-control-padding-inline, var(--dimension-space-075));border:0;border-radius:var(--ds-control-radius, var(--dimension-radius-025))}.select-search__control.sc-ds-select-multi:has(.select-search__clear){padding-right:0}.select-search__control.sc-ds-select-multi>ds-icon.sc-ds-select-multi{flex-shrink:0;color:var(--color-foreground-secondary)}.select-search.sc-ds-select-multi .select-search__control.sc-ds-select-multi .select-search__clear.sc-ds-select-multi{align-self:center;flex-shrink:0;margin-right:var(--dimension-space-050)}.select-search__control.sc-ds-select-multi input.sc-ds-select-multi{flex:1;min-width:0;height:100%;padding:0 var(--ds-control-label-inset, var(--dimension-space-025));border:0;outline:none;background:transparent;color:var(--color-foreground-primary);font-family:inherit}.select-search__control.sc-ds-select-multi input.sc-ds-select-multi::placeholder{color:var(--color-foreground-secondary)}.select-search__control.sc-ds-select-multi input.sc-ds-select-multi:focus::placeholder{color:var(--color-foreground-quaternary)}.select-search__control.sc-ds-select-multi input[type='search'].sc-ds-select-multi::-webkit-search-cancel-button,.select-search__control.sc-ds-select-multi input[type='search'].sc-ds-select-multi::-webkit-search-decoration{display:none}.ds-text--display-medium.sc-ds-select-multi-h,.ds-text--display-medium.sc-ds-select-multi{font-size:var(--typography-fontsize-3xl);line-height:var(--typography-lineheight-3xl)}.ds-text--display-small.sc-ds-select-multi-h,.ds-text--display-small.sc-ds-select-multi{font-size:var(--typography-fontsize-2xl);line-height:var(--typography-lineheight-2xl)}.ds-text--title-large.sc-ds-select-multi-h,.ds-text--title-large.sc-ds-select-multi{font-size:var(--typography-fontsize-xl);line-height:var(--typography-lineheight-xl)}.ds-text--title-medium.sc-ds-select-multi-h,.ds-text--title-medium.sc-ds-select-multi{font-size:var(--typography-fontsize-lg);line-height:var(--typography-lineheight-lg)}.ds-text--title-small.sc-ds-select-multi-h,.ds-text--title-small.sc-ds-select-multi{font-size:var(--typography-fontsize-md);line-height:var(--typography-lineheight-md)}.ds-text--body-large.sc-ds-select-multi-h,.ds-text--body-large.sc-ds-select-multi{font-size:var(--typography-fontsize-lg);line-height:var(--typography-lineheight-lg)}.ds-text--body-medium.sc-ds-select-multi-h,.ds-text--body-medium.sc-ds-select-multi{font-size:var(--typography-fontsize-md);line-height:var(--typography-lineheight-md)}.ds-text--body-small.sc-ds-select-multi-h,.ds-text--body-small.sc-ds-select-multi{font-size:var(--typography-fontsize-sm);line-height:var(--typography-lineheight-sm)}.ds-text--caption.sc-ds-select-multi-h,.ds-text--caption.sc-ds-select-multi{font-size:var(--typography-fontsize-xs);line-height:var(--typography-lineheight-xs);text-transform:uppercase}.ds-text--display-medium.ds-text--emphasis.sc-ds-select-multi-h,.ds-text--display-small.ds-text--emphasis.sc-ds-select-multi-h,.ds-text--display-medium.ds-text--emphasis.sc-ds-select-multi,.ds-text--display-small.ds-text--emphasis.sc-ds-select-multi{font-weight:var(--typography-weight-bold);letter-spacing:var(--typography-letterspacing-negative-double)}.ds-text--display-medium.ds-text--regular.sc-ds-select-multi-h,.ds-text--display-small.ds-text--regular.sc-ds-select-multi-h,.ds-text--display-medium.ds-text--regular.sc-ds-select-multi,.ds-text--display-small.ds-text--regular.sc-ds-select-multi{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-large.ds-text--emphasis.sc-ds-select-multi-h,.ds-text--title-large.ds-text--emphasis.sc-ds-select-multi{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative-double)}.ds-text--title-large.ds-text--regular.sc-ds-select-multi-h,.ds-text--title-large.ds-text--regular.sc-ds-select-multi{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-medium.ds-text--emphasis.sc-ds-select-multi-h,.ds-text--title-small.ds-text--emphasis.sc-ds-select-multi-h,.ds-text--title-medium.ds-text--emphasis.sc-ds-select-multi,.ds-text--title-small.ds-text--emphasis.sc-ds-select-multi{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-medium.ds-text--regular.sc-ds-select-multi-h,.ds-text--title-small.ds-text--regular.sc-ds-select-multi-h,.ds-text--title-medium.ds-text--regular.sc-ds-select-multi,.ds-text--title-small.ds-text--regular.sc-ds-select-multi{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-large.ds-text--emphasis.sc-ds-select-multi-h,.ds-text--body-medium.ds-text--emphasis.sc-ds-select-multi-h,.ds-text--body-large.ds-text--emphasis.sc-ds-select-multi,.ds-text--body-medium.ds-text--emphasis.sc-ds-select-multi{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--body-large.ds-text--regular.sc-ds-select-multi-h,.ds-text--body-medium.ds-text--regular.sc-ds-select-multi-h,.ds-text--body-large.ds-text--regular.sc-ds-select-multi,.ds-text--body-medium.ds-text--regular.sc-ds-select-multi{font-weight:var(--typography-weight-regular);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-small.ds-text--emphasis.sc-ds-select-multi-h,.ds-text--body-small.ds-text--emphasis.sc-ds-select-multi{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-small.ds-text--regular.sc-ds-select-multi-h,.ds-text--body-small.ds-text--regular.sc-ds-select-multi{font-weight:var(--typography-weight-regular);letter-spacing:var(--typography-letterspacing-none)}.ds-text--caption.ds-text--emphasis.sc-ds-select-multi-h,.ds-text--caption.ds-text--emphasis.sc-ds-select-multi{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-positive)}.ds-text--caption.ds-text--regular.sc-ds-select-multi-h,.ds-text--caption.ds-text--regular.sc-ds-select-multi{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-positive)}.select-host.sc-ds-select-multi-h{display:inline-flex;position:relative;outline:none;--ds-select-fg:var(--color-foreground-secondary);--ds-select-fg-active:var(--color-foreground-primary);--ds-select-prefix-fg:var(--ds-select-fg);--ds-select-chevron-fg:var(--ds-select-fg);--ds-select-border:var(--color-border-secondary)}.ds-control-width--fill.sc-ds-select-multi-h,.ds-control-width--fill.sc-ds-select-multi-h .trigger.sc-ds-select-multi{width:100%}.trigger.sc-ds-select-multi{justify-content:flex-start;background:transparent;border:none;border-radius:var(--ds-control-radius, var(--dimension-radius-025));color:var(--ds-select-fg);cursor:default;font-family:inherit;-webkit-user-select:none;user-select:none;overflow:hidden;transition:color var(--effect-motion-short-2)}.trigger--bordered.sc-ds-select-multi{--ds-interaction-border-width:var(--dimension-stroke-width-012);--ds-interaction-border-color:var(--ds-select-border)}.trigger--has-value.sc-ds-select-multi .trigger__label.sc-ds-select-multi{color:var(--ds-select-fg-active)}.wrapper--error.sc-ds-select-multi{--ds-interaction-border-width:var(--dimension-stroke-width-018);--ds-interaction-border-color:var(--color-border-bold-negative)}.trigger__prefix.sc-ds-select-multi,.trigger__chevron.sc-ds-select-multi{position:relative;z-index:2}.trigger__prefix.sc-ds-select-multi{color:var(--ds-select-prefix-fg)}.trigger__chevron.sc-ds-select-multi{color:var(--ds-select-chevron-fg)}.trigger__label.sc-ds-select-multi{position:relative;z-index:2;flex:1 1 auto;text-align:left;color:inherit;transition:color var(--effect-motion-short-2)}.select-popup.sc-ds-select-multi{color:var(--color-foreground-secondary)}.select-option[aria-selected='true'].sc-ds-select-multi .ds-choice-item__icon.sc-ds-select-multi{color:var(--color-foreground-primary)}.error-text.sc-ds-select-multi{width:100%}.select-host--background-medium.sc-ds-select-multi-h{--ds-select-fg:var(--color-foreground-on-medium-background-secondary);--ds-select-fg-active:var(--color-foreground-on-medium-background-primary);--ds-select-border:var(--color-border-on-medium-background-secondary)}.select-host--background-bold.sc-ds-select-multi-h{--ds-select-fg:var(--color-foreground-on-bold-background-secondary);--ds-select-fg-active:var(--color-foreground-on-bold-background-primary);--ds-select-border:var(--color-border-on-bold-background-secondary)}.select-host--background-strong.sc-ds-select-multi-h{--ds-select-fg:var(--color-foreground-on-strong-background-secondary);--ds-select-fg-active:var(--color-foreground-on-strong-background-primary);--ds-select-border:var(--color-border-on-strong-background-secondary)}.select-host--background-translucent.sc-ds-select-multi-h{--ds-select-fg:var(--color-translucent-foreground-secondary);--ds-select-fg-active:var(--color-translucent-foreground-primary);--ds-select-border:var(--color-translucent-border-secondary)}.select-host--background-inverted.sc-ds-select-multi-h{--ds-select-fg:var(--color-inverted-foreground-secondary);--ds-select-fg-active:var(--color-inverted-foreground-primary);--ds-select-border:var(--color-inverted-border-secondary)}.select-host--background-media.sc-ds-select-multi-h{--ds-select-fg:var(--color-media-foreground-secondary);--ds-select-fg-active:var(--color-media-foreground-primary);--ds-select-border:var(--color-media-border-secondary)}.select-host--background-always-dark.sc-ds-select-multi-h{--ds-select-fg:var(--color-always-dark-foreground-secondary);--ds-select-fg-active:var(--color-always-dark-foreground-primary);--ds-select-border:var(--color-always-dark-border-secondary)}`;const V={lg:"lg",md:"md",sm:"sm",xs:"xs"};let L=0;const S=e(class e extends s{constructor(e){super();if(e!==false){this.__registerHost()}this.dsChange=t(this,"dsChange");this.dsClear=t(this,"dsClear");this.dsOpenChange=t(this,"dsOpenChange");this.internals=this.attachInternals();this.options=[];this.sections=[];this.values=[];this.open=false;this.disabled=false;this.required=false;this.requiredMessage=_;this.placeholder="Select";this.size="md";this.width="hug";this.isInactive=false;this.isLoading=false;this.activeFill=true;this.hasBorder=true;this.allowClear=true;this.clearLabel="Clear";this.selectedLabel="selected";this.searchable=false;this.searchPlaceholder="Search";this.noResultsText="No results found";this.loadingLabel="Loading";this.error=false;this.ariaLabel=null;this.activeIndex=-1;this.searchTerm="";this.formDisabled=false;this.position={x:0,y:0};this.positionReady=false;this.focusRingVisible=false;this.generatedId=`ds-select-multi-${++L}`;this.listboxId=`${this.generatedId}-listbox`;this.errorId=`${this.generatedId}-error`;this.initialValues=[];this.controller=this.createController();this.clearSelection=e=>{e.preventDefault();e.stopPropagation();this.values=[];this.dsChange.emit([]);this.dsClear.emit();this.controller.focusSearchOrTrigger()};this.handleListKeyDown=this.controller.handleListKeyDown;this.handleTriggerKeyDown=this.controller.handleTriggerKeyDown}createController(){const e=this;return new d({get host(){return e.el},generatedId:e.generatedId,get options(){return e.visibleOptions},get searchable(){return e.searchable},get isLoading(){return e.isLoading},get isDisabled(){return e.isDisabled},get preferredIndex(){return-1},get open(){return e.open},set open(s){e.open=s},get activeIndex(){return e.activeIndex},set activeIndex(s){e.activeIndex=s},get searchTerm(){return e.searchTerm},set searchTerm(s){e.searchTerm=s},get focusRingVisible(){return e.focusRingVisible},set focusRingVisible(s){e.focusRingVisible=s},get position(){return e.position},set position(s){e.position=s},get positionReady(){return e.positionReady},set positionReady(s){e.positionReady=s},selectOption:s=>e.toggleOption(s)})}componentWillLoad(){this.initialValues=[...this.values];this.syncFormValue()}componentDidLoad(){this.controller.connect()}disconnectedCallback(){this.controller.disconnect()}syncFormValue(){const e=this.resolvedValues;if(this.isDisabled||!this.name||e.length===0){this.internals.setFormValue(null)}else{const s=new FormData;e.forEach((e=>s.append(this.name,e)));this.internals.setFormValue(s,JSON.stringify(e))}const s=this.required&&!this.isDisabled&&e.length===0;z(this.internals,s,this.requiredMessage);this.controller.optionsChanged()}onLoadingChange(){this.controller.loadingChanged()}onOpenChange(e){this.dsOpenChange.emit(e);this.controller.openChanged(e)}onSearchTermChange(){this.controller.searchChanged()}onActiveIndexChange(){this.controller.activeIndexChanged()}formDisabledCallback(e){this.formDisabled=e;this.syncFormValue()}formResetCallback(){this.values=[...this.initialValues];this.closePopup()}formStateRestoreCallback(e){if(typeof e!=="string"){this.values=[];return}try{const s=JSON.parse(e);this.values=Array.isArray(s)?s.filter((e=>typeof e==="string")):[]}catch{this.values=[]}}async setFocus(){this.controller.setFocus()}get isDisabled(){return this.disabled||this.isInactive||this.formDisabled}get allSections(){return a(this.options,this.sections)}get allOptions(){return h(this.allSections)}get visibleSections(){return this.searchable?u(this.allSections,this.searchTerm):this.allSections}get visibleOptions(){return h(this.visibleSections)}get resolvedValues(){const e=new Set(this.allOptions.map((e=>e.value)));return[...new Set(this.values.filter((s=>e.has(s))))]}get hasSelection(){return this.resolvedValues.length>0}get activeOptionId(){return this.controller.activeOptionId}closePopup(e=false){this.controller.closePopup(e)}openPopup(e,s){this.controller.openPopup(e,s)}toggleOption(e){if(e.isInactive||this.isLoading)return;const s=this.resolvedValues;const t=s.includes(e.value)?s.filter((s=>s!==e.value)):[...s,e.value];this.values=t;this.dsChange.emit([...t])}renderOption(e,s,t){const o=this.values.includes(e.value);const r=this.activeIndex===s;return i(c,{size:this.size,id:`${this.generatedId}-option-${s}`,option:e,selected:o,active:r,focusRingVisible:this.focusRingVisible,usesSubtext:t,leading:i("span",{class:"ds-choice-item__icon ds-control-icon-box ds-interaction-fill__content","aria-hidden":"true"},i("ds-checkbox",{class:"select-option__checkbox",label:"",size:this.size,checked:o,presentation:true})),onHover:()=>{this.focusRingVisible=false;this.activeIndex=s},onSelect:()=>this.toggleOption(e)})}render(){const e=this.isDisabled;const s=this.resolvedValues.length;const t=F[this.size];const r=V[this.size];const c=m(this.allOptions);const d=this.error&&Boolean(this.errorMessage);const a=[this.ariaDescribedby,d?this.errorId:undefined].filter(Boolean).join(" ")||undefined;const h={position:"fixed",left:"0",top:"0",transform:`translate(${Math.round(this.position.x)}px, ${Math.round(this.position.y)}px)`,zIndex:"var(--dimension-z-index-floating)",visibility:this.positionReady?"visible":"hidden"};let u=0;return i(o,{key:"1f6e3dad229e90eb6fb2d4d3bfd5f48f90f1d73f",class:{"select-host":true,"ds-field-stack":true,"ds-control-inactive":e,[`ds-control--${this.size}`]:true,...I(this.width),[`select-host--background-${this.background}`]:!!this.background}},i("button",{key:"b1f8b58a02668979f203b152640eab8bae30e377",ref:e=>{this.controller.setTriggerElement(e??null)},id:this.inputId??this.generatedId,type:"button",class:{trigger:true,"ds-control-frame":true,"ds-focus-ring-inset":true,"ds-interaction-fill":true,"ds-interaction-fill--selected":!e&&this.activeFill&&this.hasSelection,"trigger--bordered":this.hasBorder||this.error,"trigger--has-value":this.hasSelection,"wrapper--error":this.error,[`ds-control--${this.size}`]:true,...g(this.background)},disabled:e,role:"combobox","aria-haspopup":"listbox","aria-expanded":String(this.open),"aria-controls":this.open?this.listboxId:undefined,"aria-activedescendant":this.open&&!this.searchable?this.activeOptionId:undefined,"aria-label":this.ariaLabel,"aria-labelledby":this.ariaLabelledby,"aria-describedby":a,"aria-invalid":this.error?"true":undefined,"aria-required":this.required||undefined,"aria-busy":this.isLoading?"true":undefined,onClick:()=>this.open?this.closePopup():this.openPopup(false),onKeyDown:this.handleTriggerKeyDown},(this.icon||this.isLoading)&&i("span",{key:"0c58e1898a59c0db2e4f61269779b3036ed5949d",class:"trigger__prefix ds-control-icon-box ds-interaction-fill__content","aria-hidden":"true"},this.isLoading?i("ds-loader",{size:r,color:"inherit"}):i("ds-icon",{name:this.icon,size:r,color:"inherit"})),i("ds-text",{key:"a4fb4b6a92f61d78ea7f36ef8daabcf695dca270",class:"trigger__label ds-control-label-box ds-interaction-fill__content",as:"span",variant:t,color:"inherit",lineTruncation:1},`${this.placeholder}${s>0?` · ${s}`:""}`),i("span",{key:"d414afc6a13de2933ea26e990388e6e6d1aac3e0",class:"trigger__chevron ds-control-icon-box ds-interaction-fill__content","aria-hidden":"true"},i("ds-icon",{key:"88754a9328fddb2737dd423167986aa4ce2676f0",name:"ChevronDown",size:r,color:"inherit"}))),this.open&&i("div",{key:"f2851da05ca1d6f9c3160cc0e57b0cf9e1dca663",ref:e=>{this.controller.setPopupElement(e??null)},class:"select-popup ds-choice-popup",style:h},this.searchable&&i(n,{key:"eff683f2af93371ef0de06f5f59aedd257af70cc",size:this.size,value:this.searchTerm,placeholder:this.searchPlaceholder,controls:this.listboxId,activeDescendant:this.activeOptionId,inputRef:this.controller.setSearchElement,clearLabel:this.clearLabel,onValueChange:e=>{this.searchTerm=e},onKeyDown:e=>this.handleListKeyDown(e)}),i("div",{key:"c85cd4c9c6f4552212279ae92c1ddc3c01c0ce55",id:this.listboxId,class:"ds-choice-list",role:"listbox","aria-multiselectable":"true","aria-label":this.ariaLabel??this.placeholder,"aria-busy":this.isLoading?"true":undefined},this.isLoading?i("div",{class:"ds-choice-loading",role:"option","aria-selected":"false","aria-disabled":"true","aria-label":this.loadingLabel,"aria-live":"polite"},i("ds-loader",{size:this.size,color:"inherit"})):this.visibleOptions.length===0?i("div",{class:"ds-choice-empty ds-empty-region",role:"option","aria-selected":"false","aria-disabled":"true","aria-label":this.noResultsText,"aria-live":"polite"},i("ds-empty-state",{body:this.noResultsText})):this.visibleSections.map((e=>i("div",{class:{"ds-choice-section":true,"ds-chrome-column":true,"ds-chrome-space--sm":true,"ds-choice-section--divided":!!e.divider},role:e.header?"group":undefined,"aria-label":e.header},e.header&&i("ds-text",{class:`ds-choice-section__header ds-control--${this.size}`,as:"span",variant:C[this.size],emphasis:true,color:"primary","aria-hidden":"true"},e.header),e.options.map((e=>this.renderOption(e,u++,c))))))),this.allowClear&&this.hasSelection&&!this.isLoading&&i(l,{key:"65525eb8f489d7d0ce924347fcda6211c0cdf805",size:this.size,summary:`${s} ${this.selectedLabel}`,clearLabel:this.clearLabel,onClear:this.clearSelection})),d&&i("ds-text",{key:"bf15428e60641c91fe5517452b5bc41e608ccea3",class:"error-text",as:"div",variant:"text-body-small",color:"negative",textId:this.errorId,role:"alert"},this.errorMessage))}static get formAssociated(){return true}get el(){return this}static get watchers(){return{values:[{syncFormValue:0}],disabled:[{syncFormValue:0}],isInactive:[{syncFormValue:0}],required:[{syncFormValue:0}],name:[{syncFormValue:0}],options:[{syncFormValue:0}],sections:[{syncFormValue:0}],isLoading:[{onLoadingChange:0}],open:[{onOpenChange:0}],searchTerm:[{onSearchTermChange:0}],activeIndex:[{onActiveIndexChange:0}]}}static get style(){return j()}},[66,"ds-select-multi",{options:[16],sections:[16],values:[1040],open:[1540],name:[513],disabled:[516],required:[516],requiredMessage:[1,"required-message"],placeholder:[1],size:[1],width:[1],isInactive:[4,"is-inactive"],isLoading:[4,"is-loading"],activeFill:[4,"active-fill"],hasBorder:[4,"has-border"],icon:[1],allowClear:[4,"allow-clear"],clearLabel:[1,"clear-label"],selectedLabel:[1,"selected-label"],searchable:[4],searchPlaceholder:[1,"search-placeholder"],noResultsText:[1,"no-results-text"],loadingLabel:[1,"loading-label"],background:[1],error:[4],errorMessage:[1,"error-message"],inputId:[1,"input-id"],ariaLabel:[1,"aria-label"],ariaLabelledby:[1,"aria-labelledby"],ariaDescribedby:[1,"aria-describedby"],activeIndex:[32],searchTerm:[32],formDisabled:[32],position:[32],positionReady:[32],focusRingVisible:[32],setFocus:[64]},undefined,{values:[{syncFormValue:0}],disabled:[{syncFormValue:0}],isInactive:[{syncFormValue:0}],required:[{syncFormValue:0}],name:[{syncFormValue:0}],options:[{syncFormValue:0}],sections:[{syncFormValue:0}],isLoading:[{onLoadingChange:0}],open:[{onOpenChange:0}],searchTerm:[{onSearchTermChange:0}],activeIndex:[{onActiveIndexChange:0}]}]);function $(){if(typeof customElements==="undefined"){return}const e=["ds-select-multi","ds-badge","ds-button-unfilled","ds-checkbox","ds-empty-state","ds-icon","ds-loader","ds-text","ds-tooltip"];e.forEach((e=>{switch(e){case"ds-select-multi":if(!customElements.get(r(e))){customElements.define(r(e),S)}break;case"ds-badge":if(!customElements.get(r(e))){p()}break;case"ds-button-unfilled":if(!customElements.get(r(e))){f()}break;case"ds-checkbox":if(!customElements.get(r(e))){v()}break;case"ds-empty-state":if(!customElements.get(r(e))){b()}break;case"ds-icon":if(!customElements.get(r(e))){y()}break;case"ds-loader":if(!customElements.get(r(e))){x()}break;case"ds-text":if(!customElements.get(r(e))){w()}break;case"ds-tooltip":if(!customElements.get(r(e))){k()}break}}))}$();const O=S;const D=$;export{O as DsSelectMulti,D as defineCustomElement};
2
- //# sourceMappingURL=ds-select-multi.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["selectMultiCss","ICON_SIZE","lg","md","sm","xs","selectMultiId","SelectMulti","__stencil_proxyCustomElement","HTMLElement","constructor","registerHost","this","options","sections","values","open","disabled","required","requiredMessage","DEFAULT_REQUIRED_MESSAGE","placeholder","size","width","isInactive","isLoading","activeFill","hasBorder","allowClear","clearLabel","selectedLabel","searchable","searchPlaceholder","noResultsText","loadingLabel","error","ariaLabel","activeIndex","searchTerm","formDisabled","position","x","y","positionReady","focusRingVisible","generatedId","listboxId","errorId","initialValues","controller","createController","clearSelection","event","preventDefault","stopPropagation","dsChange","emit","dsClear","focusSearchOrTrigger","handleListKeyDown","handleTriggerKeyDown","owner","SelectController","host","el","visibleOptions","isDisabled","preferredIndex","value","selectOption","option","toggleOption","componentWillLoad","syncFormValue","componentDidLoad","connect","disconnectedCallback","disconnect","resolvedValues","name","length","internals","setFormValue","data","FormData","forEach","append","JSON","stringify","missing","setRequiredValidity","optionsChanged","onLoadingChange","loadingChanged","onOpenChange","dsOpenChange","openChanged","onSearchTermChange","searchChanged","onActiveIndexChange","activeIndexChanged","formDisabledCallback","formResetCallback","closePopup","formStateRestoreCallback","state","restored","parse","Array","isArray","filter","setFocus","allSections","resolveChoiceSections","allOptions","flattenChoiceSections","visibleSections","filterChoiceSections","valid","Set","map","has","hasSelection","activeOptionId","restoreFocus","openPopup","focusVisible","edge","current","next","includes","renderOption","index","usesSubtext","selected","active","h","ChoiceOptionRow","id","leading","class","label","checked","presentation","onHover","onSelect","render","inactive","count","textVariant","CONTROL_TEXT_VARIANT","iconSize","usesOptionSubtext","choiceListUsesSubtext","showError","Boolean","errorMessage","describedBy","ariaDescribedby","undefined","join","popupStyle","left","top","transform","Math","round","zIndex","visibility","flatIndex","Host","key","controlWidthClass","background","ref","element","setTriggerElement","inputId","type","trigger","choiceBackgroundClassMap","role","String","ariaLabelledby","onClick","onKeyDown","icon","color","as","variant","lineTruncation","setPopupElement","style","ChoiceSearch","controls","activeDescendant","inputRef","setSearchElement","onValueChange","body","section","divider","header","CONTROL_SUPPORTING_TEXT_VARIANT","emphasis","ChoiceFooter","summary","onClear","textId"],"sources":["src/wc/components/SelectMulti/SelectMulti.css?tag=ds-select-multi&encapsulation=scoped","src/wc/components/SelectMulti/SelectMulti.tsx"],"sourcesContent":["@import '../Select/Select.css';\n","import {\n AttachInternals,\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Method,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\nimport {\n controlWidthClass,\n CONTROL_SUPPORTING_TEXT_VARIANT,\n CONTROL_TEXT_VARIANT,\n DEFAULT_REQUIRED_MESSAGE,\n setRequiredValidity,\n type ControlWidth,\n} from '../../utils';\nimport { ChoiceFooter, ChoiceOptionRow, ChoiceSearch } from '../../utils/choice-list-parts';\nimport {\n choiceBackgroundClassMap,\n choiceListUsesSubtext,\n filterChoiceSections,\n flattenChoiceSections,\n resolveChoiceSections,\n} from '../../utils/choice-list';\nimport { SelectController } from '../../utils/select-controller';\nimport type {\n SelectBackground,\n SelectOption,\n SelectSection,\n SelectSize,\n} from '../Select/Select';\n\nexport type SelectMultiOption = Omit<SelectOption, 'icon'>;\nexport type SelectMultiSection = Omit<SelectSection, 'options'> & {\n options: SelectMultiOption[];\n};\nexport type SelectMultiBackground = SelectBackground;\nexport type SelectMultiSize = SelectSize;\nexport type SelectMultiWidth = ControlWidth;\n\nconst ICON_SIZE: Record<SelectMultiSize, 'lg' | 'md' | 'sm' | 'xs'> = {\n lg: 'lg',\n md: 'md',\n sm: 'sm',\n xs: 'xs',\n};\n\nlet selectMultiId = 0;\n\n@Component({\n tag: 'ds-select-multi',\n styleUrl: 'SelectMulti.css',\n scoped: true,\n formAssociated: true,\n})\nexport class SelectMulti {\n @Element() el!: HTMLElement;\n @AttachInternals() internals!: ElementInternals;\n\n /** Flat choices. Assign arrays through the JavaScript property. */\n @Prop() options: SelectMultiOption[] = [];\n /** Grouped choices; takes precedence over options. Assign through JavaScript. */\n @Prop() sections: SelectMultiSection[] = [];\n /** Selected values. Assign arrays through the JavaScript property. */\n @Prop({ mutable: true }) values: string[] = [];\n /** Controlled popup visibility. */\n @Prop({ mutable: true, reflect: true }) open: boolean = false;\n /** Native form field name used for each repeated selected-value entry. */\n @Prop({ reflect: true }) name: string | undefined;\n /** Native disabled state. */\n @Prop({ reflect: true }) disabled: boolean = false;\n /** Require at least one valid selected value. */\n @Prop({ reflect: true }) required: boolean = false;\n /** Validation message used when required is missing. */\n @Prop() requiredMessage: string = DEFAULT_REQUIRED_MESSAGE;\n /** Persistent trigger label; selected option labels never replace it. */\n @Prop() placeholder: string = 'Select';\n /** Control density. */\n @Prop() size: SelectMultiSize = 'md';\n /** Width fit — hug content (default) or fill the parent. */\n @Prop() width: SelectMultiWidth = 'hug';\n /** Shared inactive treatment; removes interaction and form submission. */\n @Prop() isInactive: boolean = false;\n /** Replace the prefix with a loader and disable option interaction. */\n @Prop() isLoading: boolean = false;\n /** Show the selected interaction fill when at least one value exists. */\n @Prop() activeFill: boolean = true;\n /** Show the surface-aware inset border. */\n @Prop() hasBorder: boolean = true;\n /** Optional trigger prefix icon name. */\n @Prop() icon: string | undefined;\n /** Show the clear-all footer action when values exist. */\n @Prop() allowClear: boolean = true;\n /** Localized clear-all action label. */\n @Prop() clearLabel: string = 'Clear';\n /** Localized noun displayed after the selected count. */\n @Prop() selectedLabel: string = 'selected';\n /** Show immediate local filtering over option labels, subtext, and section headings. */\n @Prop() searchable: boolean = false;\n /** Localized search-field placeholder and accessible name. */\n @Prop() searchPlaceholder: string = 'Search';\n /** Localized empty-filter result text. */\n @Prop() noResultsText: string = 'No results found';\n /** Accessible loading status label. */\n @Prop() loadingLabel: string = 'Loading';\n /** Actual parent surface context; omit on primary and secondary surfaces. */\n @Prop() background: SelectMultiBackground | undefined;\n /** Show invalid visual state. */\n @Prop() error: boolean = false;\n /** Error text rendered below the trigger when error is true. */\n @Prop() errorMessage: string | undefined;\n /** ID applied to the internal combobox trigger for external labels. */\n @Prop() inputId: string | undefined;\n /** Direct accessible name when no external label is available. */\n @Prop({ attribute: 'aria-label' }) ariaLabel: string | null = null;\n /** IDs of elements that label the combobox. */\n @Prop({ attribute: 'aria-labelledby' }) ariaLabelledby: string | undefined;\n /** Additional IDs that describe the combobox. */\n @Prop({ attribute: 'aria-describedby' }) ariaDescribedby: string | undefined;\n\n /** Emitted after user toggles or clearing with a new values array. */\n @Event() dsChange!: EventEmitter<string[]>;\n /** Emitted after the footer clear-all action. */\n @Event() dsClear!: EventEmitter<void>;\n /** Emitted whenever popup visibility changes. */\n @Event() dsOpenChange!: EventEmitter<boolean>;\n\n @State() private activeIndex = -1;\n @State() private searchTerm = '';\n @State() private formDisabled = false;\n @State() private position = { x: 0, y: 0 };\n @State() private positionReady = false;\n @State() private focusRingVisible = false;\n\n private readonly generatedId = `ds-select-multi-${++selectMultiId}`;\n private readonly listboxId = `${this.generatedId}-listbox`;\n private readonly errorId = `${this.generatedId}-error`;\n private initialValues: string[] = [];\n private readonly controller = this.createController();\n\n private createController() {\n // eslint-disable-next-line @typescript-eslint/no-this-alias -- adapter getters preserve reactive component ownership without inheritance.\n const owner = this;\n return new SelectController<SelectMultiOption>({\n get host() { return owner.el; },\n generatedId: owner.generatedId,\n get options() { return owner.visibleOptions; },\n get searchable() { return owner.searchable; },\n get isLoading() { return owner.isLoading; },\n get isDisabled() { return owner.isDisabled; },\n get preferredIndex() { return -1; },\n get open() { return owner.open; },\n set open(value) { owner.open = value; },\n get activeIndex() { return owner.activeIndex; },\n set activeIndex(value) { owner.activeIndex = value; },\n get searchTerm() { return owner.searchTerm; },\n set searchTerm(value) { owner.searchTerm = value; },\n get focusRingVisible() { return owner.focusRingVisible; },\n set focusRingVisible(value) { owner.focusRingVisible = value; },\n get position() { return owner.position; },\n set position(value) { owner.position = value; },\n get positionReady() { return owner.positionReady; },\n set positionReady(value) { owner.positionReady = value; },\n selectOption: option => owner.toggleOption(option),\n });\n }\n\n componentWillLoad() {\n this.initialValues = [...this.values];\n this.syncFormValue();\n }\n\n componentDidLoad() {\n this.controller.connect();\n }\n\n disconnectedCallback() {\n this.controller.disconnect();\n }\n\n @Watch('values')\n @Watch('disabled')\n @Watch('isInactive')\n @Watch('required')\n @Watch('name')\n @Watch('options')\n @Watch('sections')\n syncFormValue() {\n const resolvedValues = this.resolvedValues;\n if (this.isDisabled || !this.name || resolvedValues.length === 0) {\n this.internals.setFormValue(null);\n } else {\n const data = new FormData();\n resolvedValues.forEach(value => data.append(this.name as string, value));\n this.internals.setFormValue(data, JSON.stringify(resolvedValues));\n }\n const missing = this.required && !this.isDisabled && resolvedValues.length === 0;\n setRequiredValidity(this.internals, missing, this.requiredMessage);\n this.controller.optionsChanged();\n }\n\n @Watch('isLoading')\n onLoadingChange() {\n this.controller.loadingChanged();\n }\n\n @Watch('open')\n onOpenChange(open: boolean) {\n this.dsOpenChange.emit(open);\n this.controller.openChanged(open);\n }\n\n @Watch('searchTerm')\n onSearchTermChange() {\n this.controller.searchChanged();\n }\n\n @Watch('activeIndex')\n onActiveIndexChange() {\n this.controller.activeIndexChanged();\n }\n\n formDisabledCallback(disabled: boolean) {\n this.formDisabled = disabled;\n this.syncFormValue();\n }\n\n formResetCallback() {\n this.values = [...this.initialValues];\n this.closePopup();\n }\n\n formStateRestoreCallback(state: string | File | FormData | null) {\n if (typeof state !== 'string') {\n this.values = [];\n return;\n }\n try {\n const restored = JSON.parse(state);\n this.values = Array.isArray(restored)\n ? restored.filter((value): value is string => typeof value === 'string')\n : [];\n } catch {\n this.values = [];\n }\n }\n\n @Method()\n async setFocus() {\n this.controller.setFocus();\n }\n\n private get isDisabled(): boolean {\n return this.disabled || this.isInactive || this.formDisabled;\n }\n\n private get allSections(): SelectMultiSection[] {\n return resolveChoiceSections(this.options, this.sections);\n }\n\n private get allOptions(): SelectMultiOption[] {\n return flattenChoiceSections(this.allSections);\n }\n\n private get visibleSections(): SelectMultiSection[] {\n return this.searchable\n ? filterChoiceSections(this.allSections, this.searchTerm)\n : this.allSections;\n }\n\n private get visibleOptions(): SelectMultiOption[] {\n return flattenChoiceSections(this.visibleSections);\n }\n\n private get resolvedValues(): string[] {\n const valid = new Set(this.allOptions.map(option => option.value));\n return [...new Set(this.values.filter(value => valid.has(value)))];\n }\n\n private get hasSelection(): boolean {\n return this.resolvedValues.length > 0;\n }\n\n private get activeOptionId(): string | undefined {\n return this.controller.activeOptionId;\n }\n\n private closePopup(restoreFocus = false) {\n this.controller.closePopup(restoreFocus);\n }\n\n private openPopup(focusVisible: boolean, edge?: 'first' | 'last') {\n this.controller.openPopup(focusVisible, edge);\n }\n\n private toggleOption(option: SelectMultiOption) {\n if (option.isInactive || this.isLoading) return;\n const current = this.resolvedValues;\n const next = current.includes(option.value)\n ? current.filter(value => value !== option.value)\n : [...current, option.value];\n this.values = next;\n this.dsChange.emit([...next]);\n }\n\n private clearSelection = (event: Event) => {\n event.preventDefault();\n event.stopPropagation();\n this.values = [];\n this.dsChange.emit([]);\n this.dsClear.emit();\n this.controller.focusSearchOrTrigger();\n };\n\n private readonly handleListKeyDown = this.controller.handleListKeyDown;\n private readonly handleTriggerKeyDown = this.controller.handleTriggerKeyDown;\n\n private renderOption(option: SelectMultiOption, index: number, usesSubtext: boolean) {\n const selected = this.values.includes(option.value);\n const active = this.activeIndex === index;\n return (\n <ChoiceOptionRow\n size={this.size}\n id={`${this.generatedId}-option-${index}`}\n option={option}\n selected={selected}\n active={active}\n focusRingVisible={this.focusRingVisible}\n usesSubtext={usesSubtext}\n leading={(\n <span class=\"ds-choice-item__icon ds-control-icon-box ds-interaction-fill__content\" aria-hidden=\"true\">\n <ds-checkbox\n class=\"select-option__checkbox\"\n label=\"\"\n size={this.size}\n checked={selected}\n presentation\n />\n </span>\n )}\n onHover={() => {\n this.focusRingVisible = false;\n this.activeIndex = index;\n }}\n onSelect={() => this.toggleOption(option)}\n />\n );\n }\n\n render() {\n const inactive = this.isDisabled;\n const count = this.resolvedValues.length;\n const textVariant = CONTROL_TEXT_VARIANT[this.size];\n const iconSize = ICON_SIZE[this.size];\n const usesOptionSubtext = choiceListUsesSubtext(this.allOptions);\n const showError = this.error && Boolean(this.errorMessage);\n const describedBy = [this.ariaDescribedby, showError ? this.errorId : undefined]\n .filter(Boolean)\n .join(' ') || undefined;\n const popupStyle = {\n position: 'fixed',\n left: '0',\n top: '0',\n transform: `translate(${Math.round(this.position.x)}px, ${Math.round(this.position.y)}px)`,\n zIndex: 'var(--dimension-z-index-floating)',\n visibility: this.positionReady ? 'visible' : 'hidden',\n };\n let flatIndex = 0;\n\n return (\n <Host\n class={{\n 'select-host': true,\n 'ds-field-stack': true,\n 'ds-control-inactive': inactive,\n [`ds-control--${this.size}`]: true,\n ...controlWidthClass(this.width),\n [`select-host--background-${this.background}`]: !!this.background,\n }}\n >\n <button\n ref={element => {\n this.controller.setTriggerElement((element as HTMLButtonElement) ?? null);\n }}\n id={this.inputId ?? this.generatedId}\n type=\"button\"\n class={{\n trigger: true,\n 'ds-control-frame': true,\n 'ds-focus-ring-inset': true,\n 'ds-interaction-fill': true,\n 'ds-interaction-fill--selected':\n !inactive && this.activeFill && this.hasSelection,\n 'trigger--bordered': this.hasBorder || this.error,\n 'trigger--has-value': this.hasSelection,\n 'wrapper--error': this.error,\n [`ds-control--${this.size}`]: true,\n ...choiceBackgroundClassMap(this.background),\n }}\n disabled={inactive}\n role=\"combobox\"\n aria-haspopup=\"listbox\"\n aria-expanded={String(this.open)}\n aria-controls={this.open ? this.listboxId : undefined}\n aria-activedescendant={this.open && !this.searchable ? this.activeOptionId : undefined}\n aria-label={this.ariaLabel}\n aria-labelledby={this.ariaLabelledby}\n aria-describedby={describedBy}\n aria-invalid={this.error ? 'true' : undefined}\n aria-required={this.required || undefined}\n aria-busy={this.isLoading ? 'true' : undefined}\n onClick={() => (this.open ? this.closePopup() : this.openPopup(false))}\n onKeyDown={this.handleTriggerKeyDown}\n >\n {(this.icon || this.isLoading) && (\n <span class=\"trigger__prefix ds-control-icon-box ds-interaction-fill__content\" aria-hidden=\"true\">\n {this.isLoading ? (\n <ds-loader size={iconSize} color=\"inherit\" />\n ) : (\n <ds-icon name={this.icon} size={iconSize} color=\"inherit\" />\n )}\n </span>\n )}\n <ds-text\n class=\"trigger__label ds-control-label-box ds-interaction-fill__content\"\n as=\"span\"\n variant={textVariant}\n color=\"inherit\"\n lineTruncation={1}\n >\n {`${this.placeholder}${count > 0 ? ` · ${count}` : ''}`}\n </ds-text>\n <span class=\"trigger__chevron ds-control-icon-box ds-interaction-fill__content\" aria-hidden=\"true\">\n <ds-icon name=\"ChevronDown\" size={iconSize} color=\"inherit\" />\n </span>\n </button>\n\n {this.open && (\n <div\n ref={element => {\n this.controller.setPopupElement((element as HTMLDivElement) ?? null);\n }}\n class=\"select-popup ds-choice-popup\"\n style={popupStyle}\n >\n {this.searchable && (\n <ChoiceSearch\n size={this.size}\n value={this.searchTerm}\n placeholder={this.searchPlaceholder}\n controls={this.listboxId}\n activeDescendant={this.activeOptionId}\n inputRef={this.controller.setSearchElement}\n clearLabel={this.clearLabel}\n onValueChange={value => {\n this.searchTerm = value;\n }}\n onKeyDown={event => this.handleListKeyDown(event)}\n />\n )}\n <div\n id={this.listboxId}\n class=\"ds-choice-list\"\n role=\"listbox\"\n aria-multiselectable=\"true\"\n aria-label={this.ariaLabel ?? this.placeholder}\n aria-busy={this.isLoading ? 'true' : undefined}\n >\n {this.isLoading ? (\n <div\n class=\"ds-choice-loading\"\n role=\"option\"\n aria-selected=\"false\"\n aria-disabled=\"true\"\n aria-label={this.loadingLabel}\n aria-live=\"polite\"\n >\n <ds-loader size={this.size} color=\"inherit\" />\n </div>\n ) : this.visibleOptions.length === 0 ? (\n <div\n class=\"ds-choice-empty ds-empty-region\"\n role=\"option\"\n aria-selected=\"false\"\n aria-disabled=\"true\"\n aria-label={this.noResultsText}\n aria-live=\"polite\"\n >\n <ds-empty-state body={this.noResultsText} />\n </div>\n ) : (\n this.visibleSections.map(section => (\n <div\n class={{\n 'ds-choice-section': true,\n 'ds-chrome-column': true,\n 'ds-chrome-space--sm': true,\n 'ds-choice-section--divided': !!section.divider,\n }}\n role={section.header ? 'group' : undefined}\n aria-label={section.header}\n >\n {section.header && (\n <ds-text\n class={`ds-choice-section__header ds-control--${this.size}`}\n as=\"span\"\n variant={CONTROL_SUPPORTING_TEXT_VARIANT[this.size]}\n emphasis\n color=\"primary\"\n aria-hidden=\"true\"\n >\n {section.header}\n </ds-text>\n )}\n {section.options.map(option => this.renderOption(\n option,\n flatIndex++,\n usesOptionSubtext,\n ))}\n </div>\n ))\n )}\n </div>\n {this.allowClear && this.hasSelection && !this.isLoading && (\n <ChoiceFooter\n size={this.size}\n summary={`${count} ${this.selectedLabel}`}\n clearLabel={this.clearLabel}\n onClear={this.clearSelection}\n />\n )}\n </div>\n )}\n\n {showError && (\n <ds-text\n class=\"error-text\"\n as=\"div\"\n variant=\"text-body-small\"\n color=\"negative\"\n textId={this.errorId}\n role=\"alert\"\n >\n {this.errorMessage}\n </ds-text>\n )}\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,11 +0,0 @@
1
- import type { Components, JSX } from "../types/components";
2
-
3
- interface DsShellGradientPicker extends Components.DsShellGradientPicker, HTMLElement {}
4
- export const DsShellGradientPicker: {
5
- prototype: DsShellGradientPicker;
6
- new (): DsShellGradientPicker;
7
- };
8
- /**
9
- * Used to define this component and all nested components recursively.
10
- */
11
- export const defineCustomElement: () => void;
@@ -1,2 +0,0 @@
1
- import{p as s,H as e,c as t,h as i,a as r,t as c}from"./index.js";import{D as a,n,s as d}from"./p-D1HFMTdC.js";import{d as o}from"./p-Utr23NC-.js";const h=()=>`.sc-ds-shell-gradient-picker-h{display:block;width:100%}`;const l=s(class s extends e{constructor(s){super();if(s!==false){this.__registerHost()}this.dsChange=t(this,"dsChange");this.value=a;this.groupLabel="Shell gradient theme";this.handleChange=s=>{const e=n(s);if(e===n(this.value))return;this.value=e;this.dsChange.emit(e)}}render(){return i(r,{key:"9bf287642e25d9f262a1766b271ed55f0f6c8e82"},i("ds-swatch-picker",{key:"b1c045d3c3003326987008c4e63067dde213c4f7",value:n(this.value),groupLabel:this.groupLabel,sections:d(),onDsChange:s=>{s.stopPropagation();this.handleChange(s.detail)}}))}static get style(){return h()}},[2,"ds-shell-gradient-picker",{value:[1537],groupLabel:[1,"group-label"]}]);function p(){if(typeof customElements==="undefined"){return}const s=["ds-shell-gradient-picker","ds-swatch-picker"];s.forEach((s=>{switch(s){case"ds-shell-gradient-picker":if(!customElements.get(c(s))){customElements.define(c(s),l)}break;case"ds-swatch-picker":if(!customElements.get(c(s))){o()}break}}))}p();const f=l;const u=p;export{f as DsShellGradientPicker,u as defineCustomElement};
2
- //# sourceMappingURL=ds-shell-gradient-picker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["shellGradientPickerCss","ShellGradientPicker","__stencil_proxyCustomElement","HTMLElement","constructor","registerHost","this","value","DEFAULT_SHELL_GRADIENT_PRESET","groupLabel","handleChange","normalized","normalizeShellGradientPreset","dsChange","emit","render","h","Host","key","sections","shellGradientPickerSections","onDsChange","event","stopPropagation","detail"],"sources":["src/wc/components/ShellGradientPicker/ShellGradientPicker.css?tag=ds-shell-gradient-picker&encapsulation=scoped","src/wc/components/ShellGradientPicker/ShellGradientPicker.tsx"],"sourcesContent":[":host {\n display: block;\n width: 100%;\n}\n","import { Component, Prop, Event, EventEmitter, h, Host } from '@stencil/core';\nimport {\n DEFAULT_SHELL_GRADIENT_PRESET,\n normalizeShellGradientPreset,\n type ShellGradientPreset,\n} from '../ShellGradientSwatch/shell-gradient-swatch-types';\nimport { shellGradientPickerSections } from '../../shell/shell-gradient-presets';\n\n/** @deprecated Use `ds-swatch-picker` with shell preset options. */\n@Component({\n tag: 'ds-shell-gradient-picker',\n styleUrl: 'ShellGradientPicker.css',\n scoped: true,\n})\nexport class ShellGradientPicker {\n /** Active shell wash preset. */\n @Prop({ mutable: true, reflect: true }) value: ShellGradientPreset =\n DEFAULT_SHELL_GRADIENT_PRESET;\n @Prop() groupLabel: string = 'Shell gradient theme';\n\n @Event() dsChange!: EventEmitter<ShellGradientPreset>;\n\n private handleChange = (value: string) => {\n const normalized = normalizeShellGradientPreset(value);\n if (normalized === normalizeShellGradientPreset(this.value)) return;\n this.value = normalized;\n this.dsChange.emit(normalized);\n };\n\n render() {\n return (\n <Host>\n <ds-swatch-picker\n value={normalizeShellGradientPreset(this.value)}\n groupLabel={this.groupLabel}\n sections={shellGradientPickerSections()}\n onDsChange={(event: CustomEvent<string>) => {\n event.stopPropagation();\n this.handleChange(event.detail);\n }}\n />\n </Host>\n );\n }\n}\n"],"mappings":"mJAAA,MAAMA,EAAyB,IAAM,2D,MCcxBC,EAAmBC,EAAA,MAAAD,UAAAE,EALhC,WAAAC,CAAAC,G,6EAO0CC,KAAAC,MACtCC,EACMF,KAAAG,WAAqB,uBAIrBH,KAAAI,aAAgBH,IACtB,MAAMI,EAAaC,EAA6BL,GAChD,GAAII,IAAeC,EAA6BN,KAAKC,OAAQ,OAC7DD,KAAKC,MAAQI,EACbL,KAAKO,SAASC,KAAKH,EAAW,CAkBjC,CAfC,MAAAI,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,4CACHF,EAAA,oBAAAE,IAAA,2CACEX,MAAOK,EAA6BN,KAAKC,OACzCE,WAAYH,KAAKG,WACjBU,SAAUC,IACVC,WAAaC,IACXA,EAAMC,kBACNjB,KAAKI,aAAaY,EAAME,OAAO,I","ignoreList":[]}
@@ -1,11 +0,0 @@
1
- import type { Components, JSX } from "../types/components";
2
-
3
- interface DsShellGradientSwatch extends Components.DsShellGradientSwatch, HTMLElement {}
4
- export const DsShellGradientSwatch: {
5
- prototype: DsShellGradientSwatch;
6
- new (): DsShellGradientSwatch;
7
- };
8
- /**
9
- * Used to define this component and all nested components recursively.
10
- */
11
- export const defineCustomElement: () => void;
@@ -1,2 +0,0 @@
1
- import{p as s,H as e,c as t,h as a,a as i,t as n}from"./index.js";import{D as r,S as c,a as l,b as d}from"./p-D1HFMTdC.js";const o=()=>`.sc-ds-shell-gradient-swatch-h{--ds-focus-ring-width:var(--dimension-stroke-width-025, 2px);--ds-focus-ring-offset:var(--dimension-space-025, 2px);--ds-focus-ring-color:var(--color-interaction-focus)}.ds-focus-ring.sc-ds-shell-gradient-swatch-h,.ds-focus-ring.sc-ds-shell-gradient-swatch,.ds-focus-ring-inset.sc-ds-shell-gradient-swatch-h,.ds-focus-ring-inset.sc-ds-shell-gradient-swatch{outline:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.ds-focus-ring.sc-ds-shell-gradient-swatch-h:focus-visible,.ds-focus-ring.sc-ds-shell-gradient-swatch:focus-visible{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:var(--ds-focus-ring-offset)}.ds-focus-ring.ds-focus-ring--visible.sc-ds-shell-gradient-swatch-h,.ds-focus-ring.ds-focus-ring--visible.sc-ds-shell-gradient-swatch{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:var(--ds-focus-ring-offset)}.ds-focus-ring-inset.sc-ds-shell-gradient-swatch-h:focus-visible,.ds-focus-ring-inset.sc-ds-shell-gradient-swatch:focus-visible{outline:none}.ds-focus-ring-inset.sc-ds-shell-gradient-swatch-h:focus-visible::after,.ds-focus-ring-inset.sc-ds-shell-gradient-swatch:focus-visible::after{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:calc(-1 * var(--ds-focus-ring-width))}.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-shell-gradient-swatch-h,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-shell-gradient-swatch{outline:none}.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-shell-gradient-swatch-h::after,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-shell-gradient-swatch::after{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:calc(-1 * var(--ds-focus-ring-width))}.ds-control-inactive.sc-ds-shell-gradient-swatch-h,.ds-control-inactive.sc-ds-shell-gradient-swatch{opacity:0.5;pointer-events:none;cursor:not-allowed}.sc-ds-shell-gradient-swatch-h{box-sizing:border-box;display:inline-flex;flex:0 0 auto;width:var(--dimension-size-300);height:var(--dimension-size-300);--_swatch-inner-inset:calc( var(--dimension-stroke-width-025) + var(--dimension-space-025) );--_swatch-ring-bg:var(--color-background-primary);--_swatch-select-motion:var(--effect-motion-short-3)}.shell-gradient-swatch.sc-ds-shell-gradient-swatch{position:relative;box-sizing:border-box;width:var(--dimension-size-300);height:var(--dimension-size-300);padding:0;border:none;border-radius:var(--dimension-radius-half);background:transparent;cursor:default;flex-shrink:0;isolation:isolate}.shell-gradient-swatch__fill.sc-ds-shell-gradient-swatch,.shell-gradient-swatch__border.sc-ds-shell-gradient-swatch,.shell-gradient-swatch__interaction.sc-ds-shell-gradient-swatch,.shell-gradient-swatch__halo.sc-ds-shell-gradient-swatch,.shell-gradient-swatch__stroke.sc-ds-shell-gradient-swatch{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none}.shell-gradient-swatch__fill.sc-ds-shell-gradient-swatch{z-index:1;background-color:var(--color-background-secondary);background-image:var(--_swatch-gradient-image);background-repeat:no-repeat;background-size:cover;background-position:0 0;transition:top var(--_swatch-select-motion), right var(--_swatch-select-motion), bottom var(--_swatch-select-motion), left var(--_swatch-select-motion)}.shell-gradient-swatch--none.sc-ds-shell-gradient-swatch .shell-gradient-swatch__fill.sc-ds-shell-gradient-swatch{background-image:none}.shell-gradient-swatch.sc-ds-shell-gradient-swatch:not(.shell-gradient-swatch--none) .shell-gradient-swatch__fill.sc-ds-shell-gradient-swatch{opacity:var(--ds-shell-gradient-opacity, 0.1)}.shell-gradient-swatch__border.sc-ds-shell-gradient-swatch{z-index:2;box-shadow:inset 0 0 0 var(--dimension-stroke-width-012) var(--color-border-secondary);transition:top var(--_swatch-select-motion), right var(--_swatch-select-motion), bottom var(--_swatch-select-motion), left var(--_swatch-select-motion)}.shell-gradient-swatch__interaction.sc-ds-shell-gradient-swatch{z-index:3;background:transparent;transition:top var(--_swatch-select-motion), right var(--_swatch-select-motion), bottom var(--_swatch-select-motion), left var(--_swatch-select-motion), background-color 0s}.shell-gradient-swatch.sc-ds-shell-gradient-swatch:hover:not(:disabled) .shell-gradient-swatch__interaction.sc-ds-shell-gradient-swatch{background:var(--color-interaction-hover)}.shell-gradient-swatch.sc-ds-shell-gradient-swatch:active:not(:disabled) .shell-gradient-swatch__interaction.sc-ds-shell-gradient-swatch{background:var(--color-interaction-pressed)}.shell-gradient-swatch__halo.sc-ds-shell-gradient-swatch{z-index:4;opacity:0;transform:scale(1.2);transform-origin:center;box-shadow:inset 0 0 0 var(--_swatch-inner-inset) var(--_swatch-ring-bg);transition:opacity var(--_swatch-select-motion), transform var(--_swatch-select-motion)}.shell-gradient-swatch__stroke.sc-ds-shell-gradient-swatch{z-index:5;opacity:0;transform:scale(1.2);transform-origin:center;box-shadow:inset 0 0 0 var(--dimension-stroke-width-025) var(--color-border-bold-brand);transition:opacity var(--_swatch-select-motion), transform var(--_swatch-select-motion)}.shell-gradient-swatch--selected.sc-ds-shell-gradient-swatch .shell-gradient-swatch__fill.sc-ds-shell-gradient-swatch,.shell-gradient-swatch--selected.sc-ds-shell-gradient-swatch .shell-gradient-swatch__border.sc-ds-shell-gradient-swatch,.shell-gradient-swatch--selected.sc-ds-shell-gradient-swatch .shell-gradient-swatch__interaction.sc-ds-shell-gradient-swatch{top:var(--_swatch-inner-inset);right:var(--_swatch-inner-inset);bottom:var(--_swatch-inner-inset);left:var(--_swatch-inner-inset)}.shell-gradient-swatch--selected.sc-ds-shell-gradient-swatch .shell-gradient-swatch__halo.sc-ds-shell-gradient-swatch,.shell-gradient-swatch--selected.sc-ds-shell-gradient-swatch .shell-gradient-swatch__stroke.sc-ds-shell-gradient-swatch{opacity:1;transform:scale(1)}@media (prefers-reduced-motion: reduce){.shell-gradient-swatch__fill.sc-ds-shell-gradient-swatch,.shell-gradient-swatch__border.sc-ds-shell-gradient-swatch,.shell-gradient-swatch__interaction.sc-ds-shell-gradient-swatch,.shell-gradient-swatch__halo.sc-ds-shell-gradient-swatch,.shell-gradient-swatch__stroke.sc-ds-shell-gradient-swatch{transition:none}}`;const h=s(class s extends e{constructor(s){super();if(s!==false){this.__registerHost()}this.dsSelect=t(this,"dsSelect");this.preset=r;this.selected=false;this.isInactive=false;this.ariaLabel=null;this.handleClick=()=>{if(this.isInactive)return;this.dsSelect.emit(this.preset)}}render(){const s=this.ariaLabel??c[this.preset];return a(i,{key:"a027ca0392b36c12469089ba34767a4e8ffde8aa"},a("button",{key:"a2362b9a0c742c2bdf4ef20bc5537e140f433c82",type:"button",class:{"shell-gradient-swatch":true,"ds-focus-ring-inset":true,"ds-control-inactive":this.isInactive,"shell-gradient-swatch--selected":this.selected,"shell-gradient-swatch--none":this.preset==="none"},style:this.preset==="none"?undefined:{"--_swatch-gradient-image":d(this.preset),"--ds-shell-gradient-opacity":l(this.preset)},"aria-label":s,role:"radio","aria-checked":this.selected?"true":"false",tabIndex:this.selected?0:-1,disabled:this.isInactive,onClick:this.handleClick},a("span",{key:"5d6708aa4ad89c5c8c50f6bdb29e5d98c9d0ed98",class:"shell-gradient-swatch__fill","aria-hidden":"true"}),a("span",{key:"6a8cf9ee19da77654b264dba87e67c1001595fce",class:"shell-gradient-swatch__border","aria-hidden":"true"}),a("span",{key:"a33f1eb871c8474060975d782b96e2b59775b185",class:"shell-gradient-swatch__interaction","aria-hidden":"true"}),a("span",{key:"68da9cda686613e53c51be5fca55bd6097ca5b4f",class:"shell-gradient-swatch__halo","aria-hidden":"true"}),a("span",{key:"aa40f0b58a51903861838e2b759659160b029e45",class:"shell-gradient-swatch__stroke","aria-hidden":"true"})))}static get style(){return o()}},[2,"ds-shell-gradient-swatch",{preset:[513],selected:[516],isInactive:[4,"is-inactive"],ariaLabel:[1,"aria-label"]}]);function g(){if(typeof customElements==="undefined"){return}const s=["ds-shell-gradient-swatch"];s.forEach((s=>{switch(s){case"ds-shell-gradient-swatch":if(!customElements.get(n(s))){customElements.define(n(s),h)}break}}))}g();const w=h;const f=g;export{w as DsShellGradientSwatch,f as defineCustomElement};
2
- //# sourceMappingURL=ds-shell-gradient-swatch.js.map