@ds-mo/ui 14.19.0 → 14.20.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 (363) hide show
  1. package/dist/.package-ready.json +1 -1
  2. package/dist/agent-patterns.json +1 -1
  3. package/dist/agent.json +24 -8
  4. package/dist/angular/ds-filter-menu.d.ts +1 -1
  5. package/dist/angular/ds-filter-menu.js +3 -3
  6. package/dist/components/ds-agent-activity.js +1 -1
  7. package/dist/components/ds-agent-questionnaire.js +1 -1
  8. package/dist/components/ds-agent-response.js +1 -1
  9. package/dist/components/ds-agent-source-list.js +1 -1
  10. package/dist/components/ds-agent-tool-call.js +1 -1
  11. package/dist/components/ds-attachment-list.js +1 -1
  12. package/dist/components/ds-avatar.js +1 -1
  13. package/dist/components/ds-badge.js +1 -1
  14. package/dist/components/ds-banner.js +1 -1
  15. package/dist/components/ds-banner.js.map +1 -1
  16. package/dist/components/ds-bar-action.js +1 -1
  17. package/dist/components/ds-bar-action.js.map +1 -1
  18. package/dist/components/ds-bar-nav.js +1 -1
  19. package/dist/components/ds-bar-title.js +1 -1
  20. package/dist/components/ds-bar-workflow.js +1 -1
  21. package/dist/components/ds-bar-workflow.js.map +1 -1
  22. package/dist/components/ds-breadcrumb.js +1 -1
  23. package/dist/components/ds-button-filled.js +1 -1
  24. package/dist/components/ds-button-unfilled.js +1 -1
  25. package/dist/components/ds-card-chart.js +1 -1
  26. package/dist/components/ds-card-chart.js.map +1 -1
  27. package/dist/components/ds-card-overview.js +1 -1
  28. package/dist/components/ds-card-overview.js.map +1 -1
  29. package/dist/components/ds-card-setting.js +1 -1
  30. package/dist/components/ds-card-setting.js.map +1 -1
  31. package/dist/components/ds-chart-legend.js +1 -1
  32. package/dist/components/ds-chart-legend.js.map +1 -1
  33. package/dist/components/ds-chart.js +1 -1
  34. package/dist/components/ds-chart.js.map +1 -1
  35. package/dist/components/ds-checkbox.js +1 -1
  36. package/dist/components/ds-chip.js +1 -1
  37. package/dist/components/ds-chip.js.map +1 -1
  38. package/dist/components/ds-code-block.js +1 -1
  39. package/dist/components/ds-conversation-list-item.js +1 -1
  40. package/dist/components/ds-conversation-list-item.js.map +1 -1
  41. package/dist/components/ds-conversation-list-section.js +1 -1
  42. package/dist/components/ds-conversation-list.js +1 -1
  43. package/dist/components/ds-conversation-list.js.map +1 -1
  44. package/dist/components/ds-divider.js +1 -1
  45. package/dist/components/ds-empty-state.js +1 -1
  46. package/dist/components/ds-field.js +1 -1
  47. package/dist/components/ds-filter-menu.js +1 -1
  48. package/dist/components/ds-icon.js +1 -1
  49. package/dist/components/ds-input.js +1 -1
  50. package/dist/components/ds-loader.js +1 -1
  51. package/dist/components/ds-markdown.js +1 -1
  52. package/dist/components/ds-menu.js +1 -1
  53. package/dist/components/ds-message-actions.js +1 -1
  54. package/dist/components/ds-message-bubble.js +1 -1
  55. package/dist/components/ds-message-bubble.js.map +1 -1
  56. package/dist/components/ds-message-composer.js +1 -1
  57. package/dist/components/ds-message-composer.js.map +1 -1
  58. package/dist/components/ds-message-scroller.js +1 -1
  59. package/dist/components/ds-message-scroller.js.map +1 -1
  60. package/dist/components/ds-message.js +1 -1
  61. package/dist/components/ds-mobile-bar-nav.js +1 -1
  62. package/dist/components/ds-mobile-header.js +1 -1
  63. package/dist/components/ds-mobile-section-switcher.js +1 -1
  64. package/dist/components/ds-mobile-sheet-nav.js +1 -1
  65. package/dist/components/ds-modal.js +1 -1
  66. package/dist/components/ds-pagination.js +1 -1
  67. package/dist/components/ds-panel-nav.js +1 -1
  68. package/dist/components/ds-panel-sub-nav.js +1 -1
  69. package/dist/components/ds-panel-sub-nav.js.map +1 -1
  70. package/dist/components/ds-panel-tool-header.js +1 -1
  71. package/dist/components/ds-panel-tool-search.js +1 -1
  72. package/dist/components/ds-panel-tool-search.js.map +1 -1
  73. package/dist/components/ds-panel-tools.js +1 -1
  74. package/dist/components/ds-radio.js +1 -1
  75. package/dist/components/ds-scroll-overlay.js +1 -1
  76. package/dist/components/ds-scroll-overlay.js.map +1 -1
  77. package/dist/components/ds-select.js +1 -1
  78. package/dist/components/ds-shell-app.js +1 -1
  79. package/dist/components/ds-shell-app.js.map +1 -1
  80. package/dist/components/ds-shell-page.js +1 -1
  81. package/dist/components/ds-shell-tools.js +1 -1
  82. package/dist/components/ds-skeleton.js +1 -1
  83. package/dist/components/ds-slider.js +1 -1
  84. package/dist/components/ds-slider.js.map +1 -1
  85. package/dist/components/ds-swatch-picker.js +1 -1
  86. package/dist/components/ds-switch.js +1 -1
  87. package/dist/components/ds-tab-group.js +1 -1
  88. package/dist/components/ds-table-filter.js +1 -1
  89. package/dist/components/ds-table-filter.js.map +1 -1
  90. package/dist/components/ds-table-saved-views.js +1 -1
  91. package/dist/components/ds-table-sort.js +1 -1
  92. package/dist/components/ds-table-sort.js.map +1 -1
  93. package/dist/components/ds-table-toolbar.js +1 -1
  94. package/dist/components/ds-table.js +1 -1
  95. package/dist/components/ds-table.js.map +1 -1
  96. package/dist/components/ds-tag.js +1 -1
  97. package/dist/components/ds-text.js +1 -1
  98. package/dist/components/ds-toast.js +1 -1
  99. package/dist/components/ds-toast.js.map +1 -1
  100. package/dist/components/ds-tooltip-chart.js +1 -1
  101. package/dist/components/ds-tooltip.js +1 -1
  102. package/dist/components/ds-typing-indicator.js +1 -1
  103. package/dist/components/p-0XTyQNRG.js +2 -0
  104. package/dist/components/{p-JPTkZ3Ji.js.map → p-0XTyQNRG.js.map} +1 -1
  105. package/dist/components/{p-DaAXY-XS.js → p-1UAVanY9.js} +2 -2
  106. package/dist/components/p-1UAVanY9.js.map +1 -0
  107. package/dist/components/{p-BNiuAMeh.js → p-AtUP95E_.js} +2 -2
  108. package/dist/components/p-AtUP95E_.js.map +1 -0
  109. package/dist/components/p-B-HsfQOK.js +2 -0
  110. package/dist/components/p-B-HsfQOK.js.map +1 -0
  111. package/dist/components/{p-B_jZIC9R.js → p-B2FT4Da6.js} +2 -2
  112. package/dist/components/{p-B_jZIC9R.js.map → p-B2FT4Da6.js.map} +1 -1
  113. package/dist/components/p-B4wTnsUL.js +2 -0
  114. package/dist/components/p-B4wTnsUL.js.map +1 -0
  115. package/dist/components/p-B5-R5mb8.js +2 -0
  116. package/dist/components/p-B5-R5mb8.js.map +1 -0
  117. package/dist/components/p-B6rSDhJY.js +2 -0
  118. package/dist/components/p-B6rSDhJY.js.map +1 -0
  119. package/dist/components/{p-B1JRCDHS.js → p-BHhmB9-4.js} +2 -2
  120. package/dist/components/{p-B1JRCDHS.js.map → p-BHhmB9-4.js.map} +1 -1
  121. package/dist/components/p-BUexfjjg.js +2 -0
  122. package/dist/components/{p-DOUDRJbE.js.map → p-BUexfjjg.js.map} +1 -1
  123. package/dist/components/{p-BBG6Sswb.js → p-BYFS2qWb.js} +2 -2
  124. package/dist/components/{p-BBG6Sswb.js.map → p-BYFS2qWb.js.map} +1 -1
  125. package/dist/components/{p-uI6z53BE.js → p-Bb4KnRy0.js} +2 -2
  126. package/dist/components/{p-HB_cf_aR.js → p-BeA6Jv-3.js} +2 -2
  127. package/dist/components/{p-HB_cf_aR.js.map → p-BeA6Jv-3.js.map} +1 -1
  128. package/dist/components/{p-Bbb9A3NV.js → p-BjRD57w3.js} +2 -2
  129. package/dist/components/p-BjRD57w3.js.map +1 -0
  130. package/dist/components/p-BkelrY4-.js +2 -0
  131. package/dist/components/{p-CwjVgUqy.js.map → p-BkelrY4-.js.map} +1 -1
  132. package/dist/components/{p-r8PMqlqm.js → p-BmssRAEZ.js} +2 -2
  133. package/dist/components/p-BmssRAEZ.js.map +1 -0
  134. package/dist/components/{p-BNkU9dcc.js → p-Bv6FSDPR.js} +2 -2
  135. package/dist/components/{p-BNkU9dcc.js.map → p-Bv6FSDPR.js.map} +1 -1
  136. package/dist/components/{p-D3fMaUJ3.js → p-Bx5BSd6F.js} +2 -2
  137. package/dist/components/p-Bx5BSd6F.js.map +1 -0
  138. package/dist/components/{p-B8q-6a03.js → p-C0qN3PSb.js} +1 -1
  139. package/dist/components/{p-B8q-6a03.js.map → p-C0qN3PSb.js.map} +1 -1
  140. package/dist/components/p-CCmgtju-.js +2 -0
  141. package/dist/components/p-CCmgtju-.js.map +1 -0
  142. package/dist/components/p-CDw_WEVt.js +2 -0
  143. package/dist/components/p-CDw_WEVt.js.map +1 -0
  144. package/dist/components/{p-DFQ9mcbK.js → p-CUL5_8JM.js} +2 -2
  145. package/dist/components/p-CUL5_8JM.js.map +1 -0
  146. package/dist/components/{p-BFfLvMZd.js → p-Cea7rROU.js} +2 -2
  147. package/dist/components/{p-BFfLvMZd.js.map → p-Cea7rROU.js.map} +1 -1
  148. package/dist/components/{p-B0Byw6OX.js → p-CgGcgMjs.js} +1 -1
  149. package/dist/components/{p-B0Byw6OX.js.map → p-CgGcgMjs.js.map} +1 -1
  150. package/dist/components/{p-C-Y7gYgz.js → p-ChfVRPHw.js} +2 -2
  151. package/dist/components/p-ChfVRPHw.js.map +1 -0
  152. package/dist/components/{p-CJq3n5kA.js → p-Ck1hgD6g.js} +2 -2
  153. package/dist/components/p-Ck1hgD6g.js.map +1 -0
  154. package/dist/components/{p-BMc0DE59.js → p-CochmPyg.js} +1 -1
  155. package/dist/components/p-CochmPyg.js.map +1 -0
  156. package/dist/components/{p-DDgeXGbB.js → p-CptSB-tA.js} +2 -2
  157. package/dist/components/p-CptSB-tA.js.map +1 -0
  158. package/dist/components/{p-DBue3ISk.js → p-CyZqk196.js} +2 -2
  159. package/dist/components/p-CyZqk196.js.map +1 -0
  160. package/dist/components/{p-Cxr0IQjC.js → p-CzbsTZt7.js} +2 -2
  161. package/dist/components/p-CzbsTZt7.js.map +1 -0
  162. package/dist/components/{p-ZpQBAwZC.js → p-D7QlTWbN.js} +2 -2
  163. package/dist/components/p-D7QlTWbN.js.map +1 -0
  164. package/dist/components/{p-C6DNhlES.js → p-DA5H_Iq_.js} +1 -1
  165. package/dist/components/p-DA5H_Iq_.js.map +1 -0
  166. package/dist/components/p-DBYv7fRq.js +2 -0
  167. package/dist/components/p-DBYv7fRq.js.map +1 -0
  168. package/dist/components/{p-CY4YFAT3.js → p-DCbKsABt.js} +1 -1
  169. package/dist/components/p-DCbKsABt.js.map +1 -0
  170. package/dist/components/{p-C6R5Lft0.js → p-DFC0sRM-.js} +2 -2
  171. package/dist/components/p-DFC0sRM-.js.map +1 -0
  172. package/dist/components/p-DGe5oXR0.js +2 -0
  173. package/dist/components/p-DGe5oXR0.js.map +1 -0
  174. package/dist/components/{p-CsBICYmt.js → p-DGkn8FwV.js} +2 -2
  175. package/dist/components/p-DGkn8FwV.js.map +1 -0
  176. package/dist/components/p-DIlScMvI.js +2 -0
  177. package/dist/components/p-DIlScMvI.js.map +1 -0
  178. package/dist/components/p-DKt_8s-U.js +2 -0
  179. package/dist/components/p-DKt_8s-U.js.map +1 -0
  180. package/dist/components/p-DLbHgbVj.js +2 -0
  181. package/dist/components/p-DLbHgbVj.js.map +1 -0
  182. package/dist/components/{p-Bu3dOjpW.js → p-DM1Z_hh0.js} +2 -2
  183. package/dist/components/{p-Bu3dOjpW.js.map → p-DM1Z_hh0.js.map} +1 -1
  184. package/dist/components/p-DOUk4KoT.js.map +1 -1
  185. package/dist/components/p-DQBT1Jkf.js +2 -0
  186. package/dist/components/p-DQBT1Jkf.js.map +1 -0
  187. package/dist/components/p-DW5Ita-P.js +2 -0
  188. package/dist/components/{p-DUdOmSFR.js.map → p-DW5Ita-P.js.map} +1 -1
  189. package/dist/components/{p-BS0AbMNK.js → p-DWjTOoXs.js} +2 -2
  190. package/dist/components/p-DWjTOoXs.js.map +1 -0
  191. package/dist/components/{p-DNpLDbWY.js → p-DZ58Sg5a.js} +1 -1
  192. package/dist/components/p-DZ58Sg5a.js.map +1 -0
  193. package/dist/components/{p-BknXYAEc.js → p-DdH7b4JF.js} +2 -2
  194. package/dist/components/p-DdH7b4JF.js.map +1 -0
  195. package/dist/components/p-DfDoqOlx.js +2 -0
  196. package/dist/components/p-DfDoqOlx.js.map +1 -0
  197. package/dist/components/p-Do8wbFff.js +2 -0
  198. package/dist/components/p-Do8wbFff.js.map +1 -0
  199. package/dist/components/p-Is1lFmwp.js +2 -0
  200. package/dist/components/p-Is1lFmwp.js.map +1 -0
  201. package/dist/components/p-L8IIeDXM.js +2 -0
  202. package/dist/components/p-L8IIeDXM.js.map +1 -0
  203. package/dist/components/{p-BUDAwJVV.js → p-caLOcQUK.js} +2 -2
  204. package/dist/components/p-caLOcQUK.js.map +1 -0
  205. package/dist/components/{p-D1eEgwcP.js → p-etg-Uk1u.js} +1 -1
  206. package/dist/components/{p-D1eEgwcP.js.map → p-etg-Uk1u.js.map} +1 -1
  207. package/dist/components/{p-C9gC4haA.js → p-fRDzpfi9.js} +2 -2
  208. package/dist/components/p-fRDzpfi9.js.map +1 -0
  209. package/dist/components/{p-C-vRkDyn.js → p-rCeztgVn.js} +1 -1
  210. package/dist/components/{p-C-vRkDyn.js.map → p-rCeztgVn.js.map} +1 -1
  211. package/dist/components/{p-BKp__CQX.js → p-rw0ZxIE4.js} +2 -2
  212. package/dist/components/p-rw0ZxIE4.js.map +1 -0
  213. package/dist/components/p-v4oqkJms.js +2 -0
  214. package/dist/components/p-v4oqkJms.js.map +1 -0
  215. package/dist/docs/components.json +117 -19
  216. package/dist/lib/shell/index.d.ts +2 -2
  217. package/dist/lib/shell/index.js +8 -6
  218. package/dist/lib/shell/index.js.map +2 -2
  219. package/dist/lib/toast/index.js +1 -4
  220. package/dist/lib/toast/index.js.map +2 -2
  221. package/dist/lib/utils/date-filter-value.d.ts +57 -0
  222. package/dist/lib/utils/index.d.ts +3 -1
  223. package/dist/lib/utils/index.js +171 -22
  224. package/dist/lib/utils/index.js.map +3 -3
  225. package/dist/mcp/cli.js +70 -31
  226. package/dist/mcp-data/registry/agent-activity.json +1 -1
  227. package/dist/mcp-data/registry/agent-questionnaire.json +3 -3
  228. package/dist/mcp-data/registry/agent-source-list.json +2 -2
  229. package/dist/mcp-data/registry/agent-tool-call.json +2 -2
  230. package/dist/mcp-data/registry/attachment-list.json +1 -1
  231. package/dist/mcp-data/registry/badge.json +1 -1
  232. package/dist/mcp-data/registry/banner.json +2 -2
  233. package/dist/mcp-data/registry/bar-action.json +1 -1
  234. package/dist/mcp-data/registry/bar-nav.json +3 -3
  235. package/dist/mcp-data/registry/bar-workflow.json +1 -1
  236. package/dist/mcp-data/registry/breadcrumb.json +1 -1
  237. package/dist/mcp-data/registry/button-filled.json +1 -1
  238. package/dist/mcp-data/registry/button-unfilled.json +1 -1
  239. package/dist/mcp-data/registry/card-chart.json +2 -2
  240. package/dist/mcp-data/registry/card-overview.json +3 -3
  241. package/dist/mcp-data/registry/card-setting.json +1 -1
  242. package/dist/mcp-data/registry/chart-legend.json +1 -1
  243. package/dist/mcp-data/registry/chart.json +1 -1
  244. package/dist/mcp-data/registry/checkbox.json +1 -1
  245. package/dist/mcp-data/registry/chip.json +1 -1
  246. package/dist/mcp-data/registry/code-block.json +1 -1
  247. package/dist/mcp-data/registry/conversation-list-item.json +1 -1
  248. package/dist/mcp-data/registry/conversation-list.json +2 -2
  249. package/dist/mcp-data/registry/divider.json +1 -1
  250. package/dist/mcp-data/registry/empty-state.json +1 -1
  251. package/dist/mcp-data/registry/field.json +1 -1
  252. package/dist/mcp-data/registry/filter-menu.json +56 -9
  253. package/dist/mcp-data/registry/icon.json +2 -2
  254. package/dist/mcp-data/registry/input.json +2 -2
  255. package/dist/mcp-data/registry/loader.json +1 -1
  256. package/dist/mcp-data/registry/menu.json +3 -3
  257. package/dist/mcp-data/registry/message-bubble.json +1 -1
  258. package/dist/mcp-data/registry/message-composer.json +2 -2
  259. package/dist/mcp-data/registry/message-scroller.json +3 -3
  260. package/dist/mcp-data/registry/mobile-bar-nav.json +1 -1
  261. package/dist/mcp-data/registry/mobile-header.json +2 -2
  262. package/dist/mcp-data/registry/mobile-section-switcher.json +2 -2
  263. package/dist/mcp-data/registry/mobile-sheet-nav.json +1 -1
  264. package/dist/mcp-data/registry/modal.json +2 -2
  265. package/dist/mcp-data/registry/pagination.json +2 -2
  266. package/dist/mcp-data/registry/panel-nav.json +2 -2
  267. package/dist/mcp-data/registry/panel-sub-nav.json +1 -1
  268. package/dist/mcp-data/registry/panel-tool-header.json +1 -1
  269. package/dist/mcp-data/registry/panel-tool-search.json +1 -1
  270. package/dist/mcp-data/registry/panel-tools.json +2 -2
  271. package/dist/mcp-data/registry/radio.json +1 -1
  272. package/dist/mcp-data/registry/registry.json +23 -7
  273. package/dist/mcp-data/registry/select.json +1 -1
  274. package/dist/mcp-data/registry/shell-app.json +2 -2
  275. package/dist/mcp-data/registry/shell-page.json +1 -1
  276. package/dist/mcp-data/registry/shell-tools.json +1 -1
  277. package/dist/mcp-data/registry/skeleton.json +2 -2
  278. package/dist/mcp-data/registry/slider.json +2 -2
  279. package/dist/mcp-data/registry/swatch-picker.json +3 -3
  280. package/dist/mcp-data/registry/switch.json +2 -2
  281. package/dist/mcp-data/registry/tab-group.json +2 -2
  282. package/dist/mcp-data/registry/table-filter.json +5 -3
  283. package/dist/mcp-data/registry/table-sort.json +1 -1
  284. package/dist/mcp-data/registry/table.json +18 -18
  285. package/dist/mcp-data/registry/tag.json +2 -2
  286. package/dist/mcp-data/registry/text.json +4 -4
  287. package/dist/mcp-data/registry/toast.json +2 -2
  288. package/dist/mcp-data/registry/tooltip-chart.json +2 -2
  289. package/dist/mcp-data/registry/tooltip.json +2 -2
  290. package/dist/styles/prose.css +42 -38
  291. package/dist/styles/table.css +39 -67
  292. package/dist/types/components/CardSetting/index.d.ts +1 -1
  293. package/dist/types/components/FilterMenu/FilterMenu.d.ts +20 -1
  294. package/dist/types/components/FilterMenu/filter-menu-calendar.d.ts +13 -0
  295. package/dist/types/components/TooltipChart/index.d.ts +1 -1
  296. package/dist/types/components.d.ts +26 -4
  297. package/dist/types/shell/index.d.ts +2 -2
  298. package/dist/types/utils/date-filter-value.d.ts +58 -0
  299. package/dist/types/utils/index.d.ts +3 -1
  300. package/dist/vue/ds-filter-menu.js +2 -0
  301. package/package.json +11 -1
  302. package/dist/components/p--CRAu9fJ.js +0 -2
  303. package/dist/components/p--CRAu9fJ.js.map +0 -1
  304. package/dist/components/p-BCOl1x0_.js +0 -2
  305. package/dist/components/p-BCOl1x0_.js.map +0 -1
  306. package/dist/components/p-BHVOiWz5.js +0 -2
  307. package/dist/components/p-BHVOiWz5.js.map +0 -1
  308. package/dist/components/p-BKp__CQX.js.map +0 -1
  309. package/dist/components/p-BMc0DE59.js.map +0 -1
  310. package/dist/components/p-BNiuAMeh.js.map +0 -1
  311. package/dist/components/p-BPG0r_mC.js +0 -2
  312. package/dist/components/p-BPG0r_mC.js.map +0 -1
  313. package/dist/components/p-BS0AbMNK.js.map +0 -1
  314. package/dist/components/p-BUDAwJVV.js.map +0 -1
  315. package/dist/components/p-BZVWmzKf.js +0 -2
  316. package/dist/components/p-BZVWmzKf.js.map +0 -1
  317. package/dist/components/p-Bbb9A3NV.js.map +0 -1
  318. package/dist/components/p-BhYS_Ump.js +0 -2
  319. package/dist/components/p-BhYS_Ump.js.map +0 -1
  320. package/dist/components/p-BknXYAEc.js.map +0 -1
  321. package/dist/components/p-BxGQ3cRJ.js +0 -2
  322. package/dist/components/p-BxGQ3cRJ.js.map +0 -1
  323. package/dist/components/p-BysVBVQv.js +0 -2
  324. package/dist/components/p-BysVBVQv.js.map +0 -1
  325. package/dist/components/p-C-Y7gYgz.js.map +0 -1
  326. package/dist/components/p-C6DNhlES.js.map +0 -1
  327. package/dist/components/p-C6R5Lft0.js.map +0 -1
  328. package/dist/components/p-C9gC4haA.js.map +0 -1
  329. package/dist/components/p-CAnnQL1F.js +0 -2
  330. package/dist/components/p-CAnnQL1F.js.map +0 -1
  331. package/dist/components/p-CJq3n5kA.js.map +0 -1
  332. package/dist/components/p-CY4YFAT3.js.map +0 -1
  333. package/dist/components/p-Cg0kimXZ.js +0 -2
  334. package/dist/components/p-Cg0kimXZ.js.map +0 -1
  335. package/dist/components/p-CsBICYmt.js.map +0 -1
  336. package/dist/components/p-CwjVgUqy.js +0 -2
  337. package/dist/components/p-Cxr0IQjC.js.map +0 -1
  338. package/dist/components/p-D3fMaUJ3.js.map +0 -1
  339. package/dist/components/p-D7R4yE2C.js +0 -2
  340. package/dist/components/p-D7R4yE2C.js.map +0 -1
  341. package/dist/components/p-DAvh38E4.js +0 -2
  342. package/dist/components/p-DAvh38E4.js.map +0 -1
  343. package/dist/components/p-DBue3ISk.js.map +0 -1
  344. package/dist/components/p-DDgeXGbB.js.map +0 -1
  345. package/dist/components/p-DFQ9mcbK.js.map +0 -1
  346. package/dist/components/p-DNpLDbWY.js.map +0 -1
  347. package/dist/components/p-DOUDRJbE.js +0 -2
  348. package/dist/components/p-DUdOmSFR.js +0 -2
  349. package/dist/components/p-DaAXY-XS.js.map +0 -1
  350. package/dist/components/p-DlYw4UGQ.js +0 -2
  351. package/dist/components/p-DlYw4UGQ.js.map +0 -1
  352. package/dist/components/p-DtndC9f1.js +0 -2
  353. package/dist/components/p-DtndC9f1.js.map +0 -1
  354. package/dist/components/p-JPTkZ3Ji.js +0 -2
  355. package/dist/components/p-ZpQBAwZC.js.map +0 -1
  356. package/dist/components/p-ag6Io-kL.js +0 -2
  357. package/dist/components/p-ag6Io-kL.js.map +0 -1
  358. package/dist/components/p-fg9EKoZp.js +0 -2
  359. package/dist/components/p-fg9EKoZp.js.map +0 -1
  360. package/dist/components/p-iMuFgSoM.js +0 -2
  361. package/dist/components/p-iMuFgSoM.js.map +0 -1
  362. package/dist/components/p-r8PMqlqm.js.map +0 -1
  363. /package/dist/components/{p-uI6z53BE.js.map → p-Bb4KnRy0.js.map} +0 -0
@@ -1,2 +1,2 @@
1
- import{p as e,H as r,c as s,h as t,a as i,t as o}from"./index.js";import{d as n}from"./p-CAnnQL1F.js";import{r as d}from"./p-C-vRkDyn.js";const c=()=>`@media (forced-colors: active){.sc-ds-breadcrumb:root,.sc-ds-breadcrumb-h,.ds-forced-colors-scope.sc-ds-breadcrumb{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}.sc-ds-breadcrumb-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-breadcrumb-h,.ds-focus-ring.sc-ds-breadcrumb,.ds-focus-ring-inset.sc-ds-breadcrumb-h,.ds-focus-ring-inset.sc-ds-breadcrumb{outline:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.ds-focus-ring.sc-ds-breadcrumb-h:focus-visible,.ds-focus-ring.sc-ds-breadcrumb: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-breadcrumb-h,.ds-focus-ring.ds-focus-ring--visible.sc-ds-breadcrumb{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-breadcrumb-h:focus-visible,.ds-focus-ring-inset.sc-ds-breadcrumb:focus-visible{outline:none}.ds-focus-ring-inset.sc-ds-breadcrumb-h:focus-visible::after,.ds-focus-ring-inset.sc-ds-breadcrumb: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-breadcrumb-h,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-breadcrumb{outline:none}.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-breadcrumb-h::after,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-breadcrumb::after{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:calc(-1 * var(--ds-focus-ring-width))}@media (forced-colors: active){.sc-ds-breadcrumb-h{--ds-focus-ring-color:var(--ds-forced-color-selected)}}.ds-visually-hidden.sc-ds-breadcrumb-h,.ds-visually-hidden.sc-ds-breadcrumb{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.sc-ds-breadcrumb:where(.ds-text-decoration,.ds-text-action).sc-ds-breadcrumb{text-decoration-color:var(--ds-text-decoration-color, var(--color-foreground-tertiary));text-decoration-thickness:var(--ds-text-decoration-thickness, var(--dimension-stroke-width-012));text-underline-offset:var(--ds-text-decoration-offset, var(--dimension-space-025))}.ds-text-action.sc-ds-breadcrumb{--ds-text-action-foreground:var(--color-foreground-bold-brand);--ds-text-decoration-color:var(--ds-text-action-foreground);color:var(--ds-text-action-foreground);text-decoration-line:none}.ds-text-action--on-medium.sc-ds-breadcrumb{--ds-text-action-foreground:var(--color-foreground-on-medium-background-primary);--ds-text-decoration-color:var(--color-foreground-on-medium-background-secondary);text-decoration-line:underline}.ds-text-action--on-strong.sc-ds-breadcrumb{--ds-text-action-foreground:var(--color-foreground-on-strong-background-primary);--ds-text-decoration-color:var(--color-foreground-on-strong-background-secondary);text-decoration-line:underline}.ds-text-action--on-bold.sc-ds-breadcrumb{--ds-text-action-foreground:var(--color-foreground-on-bold-background-primary);--ds-text-decoration-color:var(--color-foreground-on-bold-background-secondary);text-decoration-line:underline}@media (hover: hover) and (pointer: fine){.ds-text-action.sc-ds-breadcrumb:hover{text-decoration-line:underline}}@media (forced-colors: active){.ds-text-action.sc-ds-breadcrumb{text-decoration-line:underline;text-decoration-color:currentcolor}}.sc-ds-breadcrumb-h{position:relative;display:block;min-width:0;box-sizing:border-box}.breadcrumb.sc-ds-breadcrumb{inline-size:100%;min-width:0}.breadcrumb__list.sc-ds-breadcrumb{display:flex;align-items:center;box-sizing:border-box;inline-size:100%;min-width:0;margin:0;padding:0;overflow:hidden;list-style:none}.breadcrumb__item.sc-ds-breadcrumb{display:flex;flex:0 0 auto;align-items:center;min-width:0}.breadcrumb__separator.sc-ds-breadcrumb{flex:0 0 auto;margin-inline:var(--dimension-space-050);user-select:none}.breadcrumb__link.sc-ds-breadcrumb,.breadcrumb__current.sc-ds-breadcrumb{display:inline-flex;flex:0 0 auto;min-width:0;overflow:hidden;padding:0;border:0;border-radius:var(--dimension-radius-025);background:transparent;color:var(--color-foreground-secondary);font:inherit;text-decoration:none}.breadcrumb__link.sc-ds-breadcrumb{cursor:default}a.breadcrumb__link.sc-ds-breadcrumb{cursor:pointer}@media (hover: hover) and (pointer: fine){.breadcrumb__link.sc-ds-breadcrumb:hover .breadcrumb__label.sc-ds-breadcrumb{text-decoration-line:underline}}.breadcrumb__label.sc-ds-breadcrumb{--ds-text-decoration-color:var(--color-foreground-quaternary);display:inline-block;inline-size:var(--breadcrumb-label-width, auto);min-width:0}.breadcrumb__measurements.sc-ds-breadcrumb{position:absolute;inset:0 auto auto 0;visibility:hidden;pointer-events:none;white-space:nowrap}.breadcrumb__measurement.sc-ds-breadcrumb{display:inline-block;inline-size:max-content;max-inline-size:none}`;const a=e(class e extends r{constructor(e){super();if(e!==false){this.__registerHost()}this.dsSelect=s(this,"dsSelect",7);this.items=[];this.ariaLabel="Breadcrumb";this.labelWidths=[];this.collapsedLabels=[];this.measurementElements=[];this.separatorElements=[]}componentDidLoad(){this.observeContainer();this.scheduleMeasurement();void document.fonts?.ready.then((()=>this.scheduleMeasurement()))}componentDidRender(){this.observeContainer();this.scheduleMeasurement()}disconnectedCallback(){this.resizeObserver?.disconnect();this.observedElement=undefined;if(this.measurementFrame!==undefined)cancelAnimationFrame(this.measurementFrame)}handleItemsChange(){this.labelWidths=[];this.collapsedLabels=[];this.scheduleMeasurement()}observeContainer(){if(!this.navElement||this.observedElement===this.navElement)return;this.resizeObserver??(this.resizeObserver=new ResizeObserver((()=>this.scheduleMeasurement())));this.resizeObserver.disconnect();this.resizeObserver.observe(this.navElement);this.observedElement=this.navElement}scheduleMeasurement(){if(this.measurementFrame!==undefined)return;this.measurementFrame=requestAnimationFrame((()=>{this.measurementFrame=undefined;this.measureLabels()}))}measureLabels(){if(!this.navElement||!this.listElement||!this.ellipsisMeasurement||this.items.length===0)return;const e=this.items.map(((e,r)=>this.measurementElements[r]?.getBoundingClientRect().width??0));const r=this.ellipsisMeasurement.getBoundingClientRect().width;if(e.some((e=>e===0))||r===0)return;const s=this.separatorElements.reduce(((e,r)=>{const s=getComputedStyle(r);return e+r.getBoundingClientRect().width+Number.parseFloat(s.marginInlineStart)+Number.parseFloat(s.marginInlineEnd)}),0);const t=Math.max(0,this.navElement.clientWidth-s);const i=e.map((e=>Math.min(e,r)));const o=[...i];let n=Math.max(0,t-i.reduce(((e,r)=>e+r),0));for(let r=e.length-1;r>=0&&n>0;r-=1){const s=Math.min(n,e[r]-i[r]);o[r]+=s;n-=s}const d=o.length!==this.labelWidths.length||o.some(((e,r)=>Math.abs(e-(this.labelWidths[r]??0))>.25));const c=o.map(((r,s)=>e[s]>i[s]&&Math.abs(r-i[s])<=.25));const a=c.length!==this.collapsedLabels.length||c.some(((e,r)=>e!==this.collapsedLabels[r]));if(d)this.labelWidths=o;if(a)this.collapsedLabels=c}handleSelect(e,r){const s=this.dsSelect.emit({item:e,originalEvent:r});if(s.defaultPrevented)r.preventDefault()}renderItem(e,r){const s=this.labelWidths[r];const i=this.collapsedLabels[r]??false;const o=[t("ds-text",{class:"breadcrumb__label ds-text-decoration",as:"span",variant:"text-caption",color:"inherit",lineTruncation:i?"none":1,"aria-hidden":i?"true":undefined,style:s===undefined?undefined:{"--breadcrumb-label-width":`${s}px`}},i?"…":e.label),i?t("span",{class:"breadcrumb__accessible-label ds-visually-hidden"},e.label):null];if(e.isCurrent){return t("span",{class:"breadcrumb__current","aria-current":"page","aria-label":e.ariaLabel},o)}const n=d(e.href);if(n){return t("a",{class:"breadcrumb__link ds-focus-ring",href:n,"aria-label":e.ariaLabel,onClick:r=>this.handleSelect(e,r)},o)}return t("button",{class:"breadcrumb__link ds-focus-ring",type:"button","aria-label":e.ariaLabel,onClick:r=>this.handleSelect(e,r)},o)}render(){if(this.items.length===0)return null;this.measurementElements=[];this.separatorElements=[];return t(i,null,t("nav",{class:"breadcrumb","aria-label":this.ariaLabel,ref:e=>{this.navElement=e}},t("div",{class:"breadcrumb__measurements","aria-hidden":"true"},this.items.map(((e,r)=>t("ds-text",{class:"breadcrumb__measurement",as:"span",variant:"text-caption",color:"inherit",ref:e=>{if(e)this.measurementElements[r]=e}},e.label))),t("ds-text",{class:"breadcrumb__measurement",as:"span",variant:"text-caption",color:"inherit",ref:e=>{this.ellipsisMeasurement=e}},"…")),t("ol",{class:"breadcrumb__list",ref:e=>{this.listElement=e}},this.items.map(((e,r)=>t("li",{class:"breadcrumb__item",key:e.id},r>0?t("ds-text",{class:"breadcrumb__separator",as:"span",variant:"text-caption",color:"tertiary","aria-hidden":"true",ref:e=>{if(e)this.separatorElements[r-1]=e}},"/"):null,this.renderItem(e,r)))))))}static get watchers(){return{items:[{handleItemsChange:0}]}}static get style(){return c()}},[2,"ds-breadcrumb",{items:[16],ariaLabel:[1,"aria-label"],labelWidths:[32],collapsedLabels:[32]},undefined,{items:[{handleItemsChange:0}]}]);function u(){if(typeof customElements==="undefined"){return}const e=["ds-breadcrumb","ds-text"];e.forEach((e=>{switch(e){case"ds-breadcrumb":if(!customElements.get(o(e))){customElements.define(o(e),a)}break;case"ds-text":if(!customElements.get(o(e))){n()}break}}))}u();export{a as B,u as d};
2
- //# sourceMappingURL=p-D3fMaUJ3.js.map
1
+ import{p as e,H as r,c as s,h as t,a as i,t as o}from"./index.js";import{d as n}from"./p-B-HsfQOK.js";import{r as d}from"./p-rCeztgVn.js";const c=()=>`@media (forced-colors: active){.sc-ds-breadcrumb:root,.sc-ds-breadcrumb-h,.ds-forced-colors-scope.sc-ds-breadcrumb{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}.sc-ds-breadcrumb-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-breadcrumb-h,.ds-focus-ring.sc-ds-breadcrumb,.ds-focus-ring-inset.sc-ds-breadcrumb-h,.ds-focus-ring-inset.sc-ds-breadcrumb{outline:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.ds-focus-ring.sc-ds-breadcrumb-h:focus-visible,.ds-focus-ring.sc-ds-breadcrumb: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-breadcrumb-h,.ds-focus-ring.ds-focus-ring--visible.sc-ds-breadcrumb{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-breadcrumb-h:focus-visible,.ds-focus-ring-inset.sc-ds-breadcrumb:focus-visible{outline:none}.ds-focus-ring-inset.sc-ds-breadcrumb-h:focus-visible::after,.ds-focus-ring-inset.sc-ds-breadcrumb: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-breadcrumb-h,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-breadcrumb{outline:none}.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-breadcrumb-h::after,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-breadcrumb::after{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:calc(-1 * var(--ds-focus-ring-width))}@media (forced-colors: active){.sc-ds-breadcrumb-h{--ds-focus-ring-color:var(--ds-forced-color-selected)}}.ds-visually-hidden.sc-ds-breadcrumb-h,.ds-visually-hidden.sc-ds-breadcrumb{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.sc-ds-breadcrumb:where(.ds-text-decoration,.ds-text-action).sc-ds-breadcrumb{text-decoration-color:var(--ds-text-decoration-color, var(--color-foreground-tertiary));text-decoration-thickness:var(--ds-text-decoration-thickness, var(--dimension-stroke-width-012));text-underline-offset:var(--ds-text-decoration-offset, var(--dimension-space-025))}.ds-text-action.sc-ds-breadcrumb{--ds-text-action-foreground:var(--color-foreground-bold-brand);--ds-text-decoration-color:var(--ds-text-action-foreground);color:var(--ds-text-action-foreground);text-decoration-line:none}.ds-text-action--on-medium.sc-ds-breadcrumb{--ds-text-action-foreground:var(--color-foreground-on-medium-background-primary);--ds-text-decoration-color:var(--color-foreground-on-medium-background-secondary);text-decoration-line:underline}.ds-text-action--on-strong.sc-ds-breadcrumb{--ds-text-action-foreground:var(--color-foreground-on-strong-background-primary);--ds-text-decoration-color:var(--color-foreground-on-strong-background-secondary);text-decoration-line:underline}.ds-text-action--on-bold.sc-ds-breadcrumb{--ds-text-action-foreground:var(--color-foreground-on-bold-background-primary);--ds-text-decoration-color:var(--color-foreground-on-bold-background-secondary);text-decoration-line:underline}@media (hover: hover) and (pointer: fine){.ds-text-action.sc-ds-breadcrumb:hover{text-decoration-line:underline}}@media (forced-colors: active){.ds-text-action.sc-ds-breadcrumb{text-decoration-line:underline;text-decoration-color:currentcolor}}.sc-ds-breadcrumb-h{position:relative;display:block;min-width:0;box-sizing:border-box}.breadcrumb.sc-ds-breadcrumb{inline-size:100%;min-width:0}.breadcrumb__list.sc-ds-breadcrumb{display:flex;align-items:center;box-sizing:border-box;inline-size:100%;min-width:0;margin:0;padding:0;overflow:hidden;list-style:none}.breadcrumb__item.sc-ds-breadcrumb{display:flex;flex:0 0 auto;align-items:center;min-width:0}.breadcrumb__separator.sc-ds-breadcrumb{flex:0 0 auto;margin-inline:var(--dimension-space-050);user-select:none}.breadcrumb__link.sc-ds-breadcrumb,.breadcrumb__current.sc-ds-breadcrumb{display:inline-flex;flex:0 0 auto;min-width:0;overflow:hidden;padding:0;border:0;border-radius:var(--dimension-radius-025);background:transparent;color:var(--color-foreground-secondary);font:inherit;text-decoration:none}.breadcrumb__link.sc-ds-breadcrumb{cursor:default}a.breadcrumb__link.sc-ds-breadcrumb{cursor:pointer}@media (hover: hover) and (pointer: fine){.breadcrumb__link.sc-ds-breadcrumb:hover .breadcrumb__label.sc-ds-breadcrumb{text-decoration-line:underline}}.breadcrumb__label.sc-ds-breadcrumb{--ds-text-decoration-color:var(--color-foreground-quaternary);display:inline-block;inline-size:var(--breadcrumb-label-width, auto);min-width:0}.breadcrumb__measurements.sc-ds-breadcrumb{position:absolute;inset:0 auto auto 0;visibility:hidden;pointer-events:none;white-space:nowrap}.breadcrumb__measurement.sc-ds-breadcrumb{display:inline-block;inline-size:max-content;max-inline-size:none}`;const a=e(class e extends r{constructor(e){super();if(e!==false){this.__registerHost()}this.dsSelect=s(this,"dsSelect",7);this.items=[];this.ariaLabel="Breadcrumb";this.labelWidths=[];this.collapsedLabels=[];this.measurementElements=[];this.separatorElements=[]}componentDidLoad(){this.observeContainer();this.scheduleMeasurement();void document.fonts?.ready.then((()=>this.scheduleMeasurement()))}componentDidRender(){this.observeContainer();this.scheduleMeasurement()}disconnectedCallback(){this.resizeObserver?.disconnect();this.observedElement=undefined;if(this.measurementFrame!==undefined)cancelAnimationFrame(this.measurementFrame)}handleItemsChange(){this.labelWidths=[];this.collapsedLabels=[];this.scheduleMeasurement()}observeContainer(){if(!this.navElement||this.observedElement===this.navElement)return;this.resizeObserver??(this.resizeObserver=new ResizeObserver((()=>this.scheduleMeasurement())));this.resizeObserver.disconnect();this.resizeObserver.observe(this.navElement);this.observedElement=this.navElement}scheduleMeasurement(){if(this.measurementFrame!==undefined)return;this.measurementFrame=requestAnimationFrame((()=>{this.measurementFrame=undefined;this.measureLabels()}))}measureLabels(){if(!this.navElement||!this.listElement||!this.ellipsisMeasurement||this.items.length===0)return;const e=this.items.map(((e,r)=>this.measurementElements[r]?.getBoundingClientRect().width??0));const r=this.ellipsisMeasurement.getBoundingClientRect().width;if(e.some((e=>e===0))||r===0)return;const s=this.separatorElements.reduce(((e,r)=>{const s=getComputedStyle(r);return e+r.getBoundingClientRect().width+Number.parseFloat(s.marginInlineStart)+Number.parseFloat(s.marginInlineEnd)}),0);const t=Math.max(0,this.navElement.clientWidth-s);const i=e.map((e=>Math.min(e,r)));const o=[...i];let n=Math.max(0,t-i.reduce(((e,r)=>e+r),0));for(let r=e.length-1;r>=0&&n>0;r-=1){const s=Math.min(n,e[r]-i[r]);o[r]+=s;n-=s}const d=o.length!==this.labelWidths.length||o.some(((e,r)=>Math.abs(e-(this.labelWidths[r]??0))>.25));const c=o.map(((r,s)=>e[s]>i[s]&&Math.abs(r-i[s])<=.25));const a=c.length!==this.collapsedLabels.length||c.some(((e,r)=>e!==this.collapsedLabels[r]));if(d)this.labelWidths=o;if(a)this.collapsedLabels=c}handleSelect(e,r){const s=this.dsSelect.emit({item:e,originalEvent:r});if(s.defaultPrevented)r.preventDefault()}renderItem(e,r){const s=this.labelWidths[r];const i=this.collapsedLabels[r]??false;const o=[t("ds-text",{class:"breadcrumb__label ds-text-decoration",as:"span",variant:"text-caption",color:"inherit",lineTruncation:i?"none":1,"aria-hidden":i?"true":undefined,style:s===undefined?undefined:{"--breadcrumb-label-width":`${s}px`}},i?"…":e.label),i?t("span",{class:"breadcrumb__accessible-label ds-visually-hidden"},e.label):null];if(e.isCurrent){return t("span",{class:"breadcrumb__current","aria-current":"page","aria-label":e.ariaLabel},o)}const n=d(e.href);if(n){return t("a",{class:"breadcrumb__link ds-focus-ring",href:n,"aria-label":e.ariaLabel,onClick:r=>this.handleSelect(e,r)},o)}return t("button",{class:"breadcrumb__link ds-focus-ring",type:"button","aria-label":e.ariaLabel,onClick:r=>this.handleSelect(e,r)},o)}render(){if(this.items.length===0)return null;this.measurementElements=[];this.separatorElements=[];return t(i,null,t("nav",{class:"breadcrumb","aria-label":this.ariaLabel,ref:e=>{this.navElement=e}},t("div",{class:"breadcrumb__measurements","aria-hidden":"true"},this.items.map(((e,r)=>t("ds-text",{class:"breadcrumb__measurement",as:"span",variant:"text-caption",color:"inherit",ref:e=>{if(e)this.measurementElements[r]=e}},e.label))),t("ds-text",{class:"breadcrumb__measurement",as:"span",variant:"text-caption",color:"inherit",ref:e=>{this.ellipsisMeasurement=e}},"…")),t("ol",{class:"breadcrumb__list",ref:e=>{this.listElement=e}},this.items.map(((e,r)=>t("li",{class:"breadcrumb__item",key:e.id},r>0?t("ds-text",{class:"breadcrumb__separator",as:"span",variant:"text-caption",color:"tertiary","aria-hidden":"true",ref:e=>{if(e)this.separatorElements[r-1]=e}},"/"):null,this.renderItem(e,r)))))))}static get watchers(){return{items:[{handleItemsChange:0}]}}static get style(){return c()}},[2,"ds-breadcrumb",{items:[16],ariaLabel:[1,"aria-label"],labelWidths:[32],collapsedLabels:[32]},undefined,{items:[{handleItemsChange:0}]}]);function u(){if(typeof customElements==="undefined"){return}const e=["ds-breadcrumb","ds-text"];e.forEach((e=>{switch(e){case"ds-breadcrumb":if(!customElements.get(o(e))){customElements.define(o(e),a)}break;case"ds-text":if(!customElements.get(o(e))){n()}break}}))}u();export{a as B,u as d};
2
+ //# sourceMappingURL=p-Bx5BSd6F.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["breadcrumbCss","Breadcrumb","__stencil_proxyCustomElement","HTMLElement","constructor","registerHost","this","items","ariaLabel","labelWidths","collapsedLabels","measurementElements","separatorElements","componentDidLoad","observeContainer","scheduleMeasurement","document","fonts","ready","then","componentDidRender","disconnectedCallback","resizeObserver","disconnect","observedElement","undefined","measurementFrame","cancelAnimationFrame","handleItemsChange","navElement","ResizeObserver","observe","requestAnimationFrame","measureLabels","listElement","ellipsisMeasurement","length","naturalWidths","map","_","index","getBoundingClientRect","width","ellipsisWidth","some","separatorWidth","reduce","total","separator","styles","getComputedStyle","Number","parseFloat","marginInlineStart","marginInlineEnd","availableWidth","Math","max","clientWidth","minimumWidths","min","nextWidths","remainingWidth","extraWidth","widthsChanged","abs","nextCollapsedLabels","collapsedLabelsChanged","isCollapsed","handleSelect","item","originalEvent","event","dsSelect","emit","defaultPrevented","preventDefault","renderItem","allocatedWidth","label","h","class","as","variant","color","lineTruncation","style","isCurrent","href","resolveSafeUrl","onClick","type","render","Host","ref","element","key","id"],"sources":["src/wc/components/Breadcrumb/Breadcrumb.css?tag=ds-breadcrumb&encapsulation=scoped","src/wc/components/Breadcrumb/Breadcrumb.tsx"],"sourcesContent":["@import '../../utils/focus-ring.css';\n@import '../../utils/visually-hidden.css';\n@import '../../utils/text-decoration.css';\n\n:host {\n position: relative;\n display: block;\n min-width: 0;\n box-sizing: border-box;\n}\n\n.breadcrumb {\n inline-size: 100%;\n min-width: 0;\n}\n\n.breadcrumb__list {\n display: flex;\n align-items: center;\n box-sizing: border-box;\n inline-size: 100%;\n min-width: 0;\n margin: 0;\n padding: 0;\n overflow: hidden;\n list-style: none;\n}\n\n.breadcrumb__item {\n display: flex;\n flex: 0 0 auto;\n align-items: center;\n min-width: 0;\n}\n\n.breadcrumb__separator {\n flex: 0 0 auto;\n margin-inline: var(--dimension-space-050);\n user-select: none;\n}\n\n.breadcrumb__link,\n.breadcrumb__current {\n display: inline-flex;\n flex: 0 0 auto;\n min-width: 0;\n overflow: hidden;\n padding: 0;\n border: 0;\n border-radius: var(--dimension-radius-025);\n background: transparent;\n color: var(--color-foreground-secondary);\n font: inherit;\n text-decoration: none;\n}\n\n.breadcrumb__link {\n cursor: default;\n}\n\na.breadcrumb__link {\n cursor: pointer;\n}\n\n@media (hover: hover) and (pointer: fine) {\n .breadcrumb__link:hover .breadcrumb__label {\n text-decoration-line: underline;\n }\n}\n\n.breadcrumb__label {\n --ds-text-decoration-color: var(--color-foreground-quaternary);\n\n display: inline-block;\n inline-size: var(--breadcrumb-label-width, auto);\n min-width: 0;\n}\n\n.breadcrumb__measurements {\n position: absolute;\n inset: 0 auto auto 0;\n visibility: hidden;\n pointer-events: none;\n white-space: nowrap;\n}\n\n.breadcrumb__measurement {\n display: inline-block;\n inline-size: max-content;\n max-inline-size: none;\n}\n","import { Component, Event, EventEmitter, h, Host, Prop, State, Watch } from '@stencil/core';\nimport { resolveSafeUrl } from '../../utils';\nimport type { BreadcrumbItem, BreadcrumbSelectDetail } from './breadcrumb-types';\n\n@Component({\n tag: 'ds-breadcrumb',\n styleUrl: 'Breadcrumb.css',\n scoped: true,\n})\nexport class Breadcrumb {\n /** Ordered path from the broadest ancestor to the nearest page. */\n @Prop() items: BreadcrumbItem[] = [];\n\n /** Accessible name for the breadcrumb navigation landmark. */\n @Prop() ariaLabel: string = 'Breadcrumb';\n\n /** Emitted when an interactive breadcrumb item is activated. Prevent to cancel native navigation. */\n @Event({ cancelable: true }) dsSelect!: EventEmitter<BreadcrumbSelectDetail>;\n\n @State() private labelWidths: number[] = [];\n @State() private collapsedLabels: boolean[] = [];\n\n private navElement?: HTMLElement;\n private listElement?: HTMLOListElement;\n private measurementElements: HTMLElement[] = [];\n private separatorElements: HTMLElement[] = [];\n private ellipsisMeasurement?: HTMLElement;\n private resizeObserver?: ResizeObserver;\n private observedElement?: HTMLElement;\n private measurementFrame?: number;\n\n componentDidLoad() {\n this.observeContainer();\n this.scheduleMeasurement();\n void document.fonts?.ready.then(() => this.scheduleMeasurement());\n }\n\n componentDidRender() {\n this.observeContainer();\n this.scheduleMeasurement();\n }\n\n disconnectedCallback() {\n this.resizeObserver?.disconnect();\n this.observedElement = undefined;\n if (this.measurementFrame !== undefined) cancelAnimationFrame(this.measurementFrame);\n }\n\n @Watch('items')\n handleItemsChange() {\n this.labelWidths = [];\n this.collapsedLabels = [];\n this.scheduleMeasurement();\n }\n\n private observeContainer() {\n if (!this.navElement || this.observedElement === this.navElement) return;\n this.resizeObserver ??= new ResizeObserver(() => this.scheduleMeasurement());\n this.resizeObserver.disconnect();\n this.resizeObserver.observe(this.navElement);\n this.observedElement = this.navElement;\n }\n\n private scheduleMeasurement() {\n if (this.measurementFrame !== undefined) return;\n this.measurementFrame = requestAnimationFrame(() => {\n this.measurementFrame = undefined;\n this.measureLabels();\n });\n }\n\n private measureLabels() {\n if (\n !this.navElement ||\n !this.listElement ||\n !this.ellipsisMeasurement ||\n this.items.length === 0\n )\n return;\n\n const naturalWidths = this.items.map(\n (_, index) => this.measurementElements[index]?.getBoundingClientRect().width ?? 0\n );\n const ellipsisWidth = this.ellipsisMeasurement.getBoundingClientRect().width;\n if (naturalWidths.some(width => width === 0) || ellipsisWidth === 0) return;\n\n const separatorWidth = this.separatorElements.reduce((total, separator) => {\n const styles = getComputedStyle(separator);\n return (\n total +\n separator.getBoundingClientRect().width +\n Number.parseFloat(styles.marginInlineStart) +\n Number.parseFloat(styles.marginInlineEnd)\n );\n }, 0);\n const availableWidth = Math.max(0, this.navElement.clientWidth - separatorWidth);\n const minimumWidths = naturalWidths.map(width => Math.min(width, ellipsisWidth));\n const nextWidths = [...minimumWidths];\n let remainingWidth = Math.max(\n 0,\n availableWidth - minimumWidths.reduce((total, width) => total + width, 0)\n );\n\n // Protect the current/newest location. Extra width is granted newest-to-oldest,\n // so ancestors collapse in path order as the available space decreases.\n for (let index = naturalWidths.length - 1; index >= 0 && remainingWidth > 0; index -= 1) {\n const extraWidth = Math.min(remainingWidth, naturalWidths[index] - minimumWidths[index]);\n nextWidths[index] += extraWidth;\n remainingWidth -= extraWidth;\n }\n\n const widthsChanged =\n nextWidths.length !== this.labelWidths.length ||\n nextWidths.some((width, index) => Math.abs(width - (this.labelWidths[index] ?? 0)) > 0.25);\n const nextCollapsedLabels = nextWidths.map(\n (width, index) =>\n naturalWidths[index] > minimumWidths[index] &&\n Math.abs(width - minimumWidths[index]) <= 0.25\n );\n const collapsedLabelsChanged =\n nextCollapsedLabels.length !== this.collapsedLabels.length ||\n nextCollapsedLabels.some((isCollapsed, index) => isCollapsed !== this.collapsedLabels[index]);\n if (widthsChanged) this.labelWidths = nextWidths;\n if (collapsedLabelsChanged) this.collapsedLabels = nextCollapsedLabels;\n }\n\n private handleSelect(item: BreadcrumbItem, originalEvent: MouseEvent) {\n const event = this.dsSelect.emit({ item, originalEvent });\n if (event.defaultPrevented) originalEvent.preventDefault();\n }\n\n private renderItem(item: BreadcrumbItem, index: number) {\n const allocatedWidth = this.labelWidths[index];\n const isCollapsed = this.collapsedLabels[index] ?? false;\n const label = [\n <ds-text\n class=\"breadcrumb__label ds-text-decoration\"\n as=\"span\"\n variant=\"text-caption\"\n color=\"inherit\"\n lineTruncation={isCollapsed ? 'none' : 1}\n aria-hidden={isCollapsed ? 'true' : undefined}\n style={\n allocatedWidth === undefined\n ? undefined\n : { '--breadcrumb-label-width': `${allocatedWidth}px` }\n }\n >\n {isCollapsed ? '…' : item.label}\n </ds-text>,\n isCollapsed ? (\n <span class=\"breadcrumb__accessible-label ds-visually-hidden\">{item.label}</span>\n ) : null,\n ];\n\n if (item.isCurrent) {\n return (\n <span class=\"breadcrumb__current\" aria-current=\"page\" aria-label={item.ariaLabel}>\n {label}\n </span>\n );\n }\n\n const href = resolveSafeUrl(item.href);\n if (href) {\n return (\n <a\n class=\"breadcrumb__link ds-focus-ring\"\n href={href}\n aria-label={item.ariaLabel}\n onClick={(event: MouseEvent) => this.handleSelect(item, event)}\n >\n {label}\n </a>\n );\n }\n\n return (\n <button\n class=\"breadcrumb__link ds-focus-ring\"\n type=\"button\"\n aria-label={item.ariaLabel}\n onClick={(event: MouseEvent) => this.handleSelect(item, event)}\n >\n {label}\n </button>\n );\n }\n\n render() {\n if (this.items.length === 0) return null;\n\n this.measurementElements = [];\n this.separatorElements = [];\n\n return (\n <Host>\n <nav\n class=\"breadcrumb\"\n aria-label={this.ariaLabel}\n ref={element => {\n this.navElement = element;\n }}\n >\n <div class=\"breadcrumb__measurements\" aria-hidden=\"true\">\n {this.items.map((item, index) => (\n <ds-text\n class=\"breadcrumb__measurement\"\n as=\"span\"\n variant=\"text-caption\"\n color=\"inherit\"\n ref={element => {\n if (element) this.measurementElements[index] = element;\n }}\n >\n {item.label}\n </ds-text>\n ))}\n <ds-text\n class=\"breadcrumb__measurement\"\n as=\"span\"\n variant=\"text-caption\"\n color=\"inherit\"\n ref={element => {\n this.ellipsisMeasurement = element;\n }}\n >\n …\n </ds-text>\n </div>\n <ol\n class=\"breadcrumb__list\"\n ref={element => {\n this.listElement = element;\n }}\n >\n {this.items.map((item, index) => (\n <li class=\"breadcrumb__item\" key={item.id}>\n {index > 0 ? (\n <ds-text\n class=\"breadcrumb__separator\"\n as=\"span\"\n variant=\"text-caption\"\n color=\"tertiary\"\n aria-hidden=\"true\"\n ref={element => {\n if (element) this.separatorElements[index - 1] = element;\n }}\n >\n /\n </ds-text>\n ) : null}\n {this.renderItem(item, index)}\n </li>\n ))}\n </ol>\n </nav>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +1,2 @@
1
1
  function r(r,n,t={}){const e=t.inactive?null:n;if(t.state===undefined){r.setFormValue(e);return}r.setFormValue(e,t.state)}function n(r,n,t,e={}){if(e.inactive||!n||t.length===0){r.setFormValue(null);return}const u=new FormData;t.forEach((r=>u.append(n,String(r))));r.setFormValue(u,e.state??JSON.stringify(t))}function t(r,n=""){return typeof r==="string"?r:n}function e(r){if(typeof r!=="string")return[];try{const n=JSON.parse(r);return Array.isArray(n)?n.filter((r=>typeof r==="string")):[]}catch{return[]}}function u(r,n){if(typeof r!=="string")return[];try{const t=JSON.parse(r);if(!Array.isArray(t))return[];const e=t.map((r=>typeof r==="number"?r:Number(r))).filter((r=>Number.isFinite(r)));return e.slice(0,n)}catch{return[]}}export{n as a,e as b,u as c,t as r,r as s};
2
- //# sourceMappingURL=p-B8q-6a03.js.map
2
+ //# sourceMappingURL=p-C0qN3PSb.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["setFormControlValue","internals","value","options","submission","inactive","state","undefined","setFormValue","setRepeatedFormControlValue","name","values","length","data","FormData","forEach","append","String","JSON","stringify","restoreStringFormState","fallback","restoreStringArrayFormState","restored","parse","Array","isArray","filter","restoreNumberArrayFormState","maximumValues","map","Number","isFinite","slice"],"sources":["src/wc/utils/form-association.ts"],"sourcesContent":["export type FormControlState = File | FormData | string | null;\n\nexport interface SetFormControlValueOptions {\n inactive?: boolean;\n state?: FormControlState;\n}\n\nexport interface SetRepeatedFormControlValueOptions {\n inactive?: boolean;\n state?: FormControlState;\n}\n\n/**\n * Set one form-associated value while consistently omitting inactive controls.\n * Pass `state` only when restoration differs from the submitted value.\n */\nexport function setFormControlValue(\n internals: ElementInternals,\n value: File | string | null,\n options: SetFormControlValueOptions = {}\n): void {\n const submission = options.inactive ? null : value;\n if (options.state === undefined) {\n internals.setFormValue(submission);\n return;\n }\n internals.setFormValue(submission, options.state);\n}\n\n/**\n * Submit repeated values under one field name and preserve a serialized array\n * for browser form-state restoration.\n */\nexport function setRepeatedFormControlValue(\n internals: ElementInternals,\n name: string | null | undefined,\n values: readonly (number | string)[],\n options: SetRepeatedFormControlValueOptions = {}\n): void {\n if (options.inactive || !name || values.length === 0) {\n internals.setFormValue(null);\n return;\n }\n\n const data = new FormData();\n values.forEach(value => data.append(name, String(value)));\n internals.setFormValue(data, options.state ?? JSON.stringify(values));\n}\n\nexport function restoreStringFormState(\n state: FormControlState,\n fallback: string = ''\n): string {\n return typeof state === 'string' ? state : fallback;\n}\n\nexport function restoreStringArrayFormState(state: FormControlState): string[] {\n if (typeof state !== 'string') return [];\n try {\n const restored: unknown = JSON.parse(state);\n return Array.isArray(restored)\n ? restored.filter((value): value is string => typeof value === 'string')\n : [];\n } catch {\n return [];\n }\n}\n\nexport function restoreNumberArrayFormState(\n state: FormControlState,\n maximumValues?: number\n): number[] {\n if (typeof state !== 'string') return [];\n try {\n const restored: unknown = JSON.parse(state);\n if (!Array.isArray(restored)) return [];\n const values = restored\n .map(value => typeof value === 'number' ? value : Number(value))\n .filter(value => Number.isFinite(value));\n return maximumValues === undefined ? values : values.slice(0, maximumValues);\n } catch {\n return [];\n }\n}\n"],"mappings":"AAgBM,SAAUA,EACdC,EACAC,EACAC,EAAsC,IAEtC,MAAMC,EAAaD,EAAQE,SAAW,KAAOH,EAC7C,GAAIC,EAAQG,QAAUC,UAAW,CAC/BN,EAAUO,aAAaJ,GACvB,M,CAEFH,EAAUO,aAAaJ,EAAYD,EAAQG,MAC7C,CAMM,SAAUG,EACdR,EACAS,EACAC,EACAR,EAA8C,IAE9C,GAAIA,EAAQE,WAAaK,GAAQC,EAAOC,SAAW,EAAG,CACpDX,EAAUO,aAAa,MACvB,M,CAGF,MAAMK,EAAO,IAAIC,SACjBH,EAAOI,SAAQb,GAASW,EAAKG,OAAON,EAAMO,OAAOf,MACjDD,EAAUO,aAAaK,EAAMV,EAAQG,OAASY,KAAKC,UAAUR,GAC/D,C,SAEgBS,EACdd,EACAe,EAAmB,IAEnB,cAAcf,IAAU,SAAWA,EAAQe,CAC7C,CAEM,SAAUC,EAA4BhB,GAC1C,UAAWA,IAAU,SAAU,MAAO,GACtC,IACE,MAAMiB,EAAoBL,KAAKM,MAAMlB,GACrC,OAAOmB,MAAMC,QAAQH,GACjBA,EAASI,QAAQzB,UAAkCA,IAAU,WAC7D,E,CACJ,MACA,MAAO,E,CAEX,CAEM,SAAU0B,EACdtB,EACAuB,GAEA,UAAWvB,IAAU,SAAU,MAAO,GACtC,IACE,MAAMiB,EAAoBL,KAAKM,MAAMlB,GACrC,IAAKmB,MAAMC,QAAQH,GAAW,MAAO,GACrC,MAAMZ,EAASY,EACZO,KAAI5B,UAAgBA,IAAU,SAAWA,EAAQ6B,OAAO7B,KACxDyB,QAAOzB,GAAS6B,OAAOC,SAAS9B,KACnC,OAA8CS,EAAOsB,MAAM,EAAGJ,E,CAC9D,MACA,MAAO,E,CAEX,Q","ignoreList":[]}
1
+ {"version":3,"names":["setFormControlValue","internals","value","options","submission","inactive","state","undefined","setFormValue","setRepeatedFormControlValue","name","values","length","data","FormData","forEach","append","String","JSON","stringify","restoreStringFormState","fallback","restoreStringArrayFormState","restored","parse","Array","isArray","filter","restoreNumberArrayFormState","maximumValues","map","Number","isFinite","slice"],"sources":["src/wc/utils/form-association.ts"],"sourcesContent":["export type FormControlState = File | FormData | string | null;\n\nexport interface SetFormControlValueOptions {\n inactive?: boolean;\n state?: FormControlState;\n}\n\nexport interface SetRepeatedFormControlValueOptions {\n inactive?: boolean;\n state?: FormControlState;\n}\n\n/**\n * Set one form-associated value while consistently omitting inactive controls.\n * Pass `state` only when restoration differs from the submitted value.\n */\nexport function setFormControlValue(\n internals: ElementInternals,\n value: File | string | null,\n options: SetFormControlValueOptions = {}\n): void {\n const submission = options.inactive ? null : value;\n if (options.state === undefined) {\n internals.setFormValue(submission);\n return;\n }\n internals.setFormValue(submission, options.state);\n}\n\n/**\n * Submit repeated values under one field name and preserve a serialized array\n * for browser form-state restoration.\n */\nexport function setRepeatedFormControlValue(\n internals: ElementInternals,\n name: string | null | undefined,\n values: readonly (number | string)[],\n options: SetRepeatedFormControlValueOptions = {}\n): void {\n if (options.inactive || !name || values.length === 0) {\n internals.setFormValue(null);\n return;\n }\n\n const data = new FormData();\n values.forEach(value => data.append(name, String(value)));\n internals.setFormValue(data, options.state ?? JSON.stringify(values));\n}\n\nexport function restoreStringFormState(state: FormControlState, fallback: string = ''): string {\n return typeof state === 'string' ? state : fallback;\n}\n\nexport function restoreStringArrayFormState(state: FormControlState): string[] {\n if (typeof state !== 'string') return [];\n try {\n const restored: unknown = JSON.parse(state);\n return Array.isArray(restored)\n ? restored.filter((value): value is string => typeof value === 'string')\n : [];\n } catch {\n return [];\n }\n}\n\nexport function restoreNumberArrayFormState(\n state: FormControlState,\n maximumValues?: number\n): number[] {\n if (typeof state !== 'string') return [];\n try {\n const restored: unknown = JSON.parse(state);\n if (!Array.isArray(restored)) return [];\n const values = restored\n .map(value => (typeof value === 'number' ? value : Number(value)))\n .filter(value => Number.isFinite(value));\n return maximumValues === undefined ? values : values.slice(0, maximumValues);\n } catch {\n return [];\n }\n}\n"],"mappings":"AAgBM,SAAUA,EACdC,EACAC,EACAC,EAAsC,IAEtC,MAAMC,EAAaD,EAAQE,SAAW,KAAOH,EAC7C,GAAIC,EAAQG,QAAUC,UAAW,CAC/BN,EAAUO,aAAaJ,GACvB,M,CAEFH,EAAUO,aAAaJ,EAAYD,EAAQG,MAC7C,CAMM,SAAUG,EACdR,EACAS,EACAC,EACAR,EAA8C,IAE9C,GAAIA,EAAQE,WAAaK,GAAQC,EAAOC,SAAW,EAAG,CACpDX,EAAUO,aAAa,MACvB,M,CAGF,MAAMK,EAAO,IAAIC,SACjBH,EAAOI,SAAQb,GAASW,EAAKG,OAAON,EAAMO,OAAOf,MACjDD,EAAUO,aAAaK,EAAMV,EAAQG,OAASY,KAAKC,UAAUR,GAC/D,C,SAEgBS,EAAuBd,EAAyBe,EAAmB,IACjF,cAAcf,IAAU,SAAWA,EAAQe,CAC7C,CAEM,SAAUC,EAA4BhB,GAC1C,UAAWA,IAAU,SAAU,MAAO,GACtC,IACE,MAAMiB,EAAoBL,KAAKM,MAAMlB,GACrC,OAAOmB,MAAMC,QAAQH,GACjBA,EAASI,QAAQzB,UAAkCA,IAAU,WAC7D,E,CACJ,MACA,MAAO,E,CAEX,CAEM,SAAU0B,EACdtB,EACAuB,GAEA,UAAWvB,IAAU,SAAU,MAAO,GACtC,IACE,MAAMiB,EAAoBL,KAAKM,MAAMlB,GACrC,IAAKmB,MAAMC,QAAQH,GAAW,MAAO,GACrC,MAAMZ,EAASY,EACZO,KAAI5B,UAAiBA,IAAU,SAAWA,EAAQ6B,OAAO7B,KACzDyB,QAAOzB,GAAS6B,OAAOC,SAAS9B,KACnC,OAA8CS,EAAOsB,MAAM,EAAGJ,E,CAC9D,MACA,MAAO,E,CAEX,Q","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import{p as t,H as i,c as s,h as e,a as n,t as o}from"./index.js";import{d as r}from"./p-caLOcQUK.js";import{d}from"./p-v4oqkJms.js";import{d as a}from"./p-Cea7rROU.js";import{d as c}from"./p-0XTyQNRG.js";import{d as l}from"./p-B-HsfQOK.js";import{d as u}from"./p-DLbHgbVj.js";import{D as p,s as h}from"./p-DOUk4KoT.js";import{s as f,r as v}from"./p-C0qN3PSb.js";import{C as g}from"./p-CuwopElg.js";import{c as m}from"./p-DuFm-ieS.js";const b=()=>`@media (forced-colors: active){.sc-ds-input:root,.sc-ds-input-h,.ds-forced-colors-scope.sc-ds-input{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}.ds-interaction-fill.sc-ds-input-h,.ds-interaction-fill.sc-ds-input{position:var(--ds-interaction-position, relative);z-index:var(--ds-interaction-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-divider-width:0px;--ds-interaction-divider-color:transparent;--ds-interaction-divider-inline-start-width:0px;--ds-interaction-divider-inline-start-color:transparent;--ds-interaction-divider-inline-end-width:0px;--ds-interaction-divider-inline-end-color:transparent}.ds-interaction-fill.sc-ds-input-h::before,.ds-interaction-fill.sc-ds-input::before,.ds-interaction-fill.sc-ds-input-h::after,.ds-interaction-fill.sc-ds-input::after{content:'';position:absolute;inset:0;border-radius:inherit;background:transparent;pointer-events:none;cursor:inherit;transition:none}.ds-interaction-fill.sc-ds-input-h::before,.ds-interaction-fill.sc-ds-input::before{z-index:1}.ds-interaction-fill.sc-ds-input-h::after,.ds-interaction-fill.sc-ds-input::after{z-index:3;box-shadow:inset 0 calc(-1 * var(--ds-interaction-divider-width)) 0 var(--ds-interaction-divider-color), inset var(--ds-interaction-divider-inline-start-width) 0 0 var(--ds-interaction-divider-inline-start-color), inset calc(-1 * var(--ds-interaction-divider-inline-end-width)) 0 0 var(--ds-interaction-divider-inline-end-color), inset 0 0 0 var(--ds-interaction-border-width) var(--ds-interaction-border-color)}.ds-interaction-fill--bordered.sc-ds-input-h,.ds-interaction-fill--bordered.sc-ds-input{--ds-interaction-border-width:var(--dimension-stroke-width-012);--ds-interaction-border-color:var(--color-border-secondary)}.ds-interaction-fill--selected.sc-ds-input-h::before,.ds-interaction-fill--selected.sc-ds-input::before{background:var(--ds-interaction-active)}.ds-interaction-fill--selected.sc-ds-input-h,.ds-interaction-fill--selected.sc-ds-input{--ds-interaction-dot-ring:var(--ds-interaction-active)}@media (hover: hover) and (pointer: fine){.ds-interaction-fill.sc-ds-input-h:hover:not(:disabled)::after,.ds-interaction-fill.sc-ds-input:hover:not(:disabled)::after{background:var(--ds-interaction-hover)}}.ds-interaction-fill.sc-ds-input-h:active:not(:disabled)::after,.ds-interaction-fill.sc-ds-input:active:not(:disabled)::after{background:var(--ds-interaction-pressed)}.ds-interaction-fill--grouped.sc-ds-input-h::after,.ds-interaction-fill--grouped.sc-ds-input::after,.ds-interaction-fill--grouped.sc-ds-input-h:active:not(:disabled)::after,.ds-interaction-fill--grouped.sc-ds-input:active:not(:disabled)::after{background:var(--ds-interaction-group-fill, transparent)}@media (hover: hover) and (pointer: fine){.ds-interaction-fill--grouped.sc-ds-input-h:hover:not(:disabled)::after,.ds-interaction-fill--grouped.sc-ds-input:hover:not(:disabled)::after{background:var(--ds-interaction-group-fill, transparent)}}.ds-interaction-fill--grouped.sc-ds-input-h,.ds-interaction-fill--grouped.sc-ds-input{--ds-interaction-divider-width:var(--ds-interaction-group-divider-width, 0px);--ds-interaction-divider-color:var(--ds-interaction-group-divider-color, transparent);--ds-interaction-divider-inline-start-width:var( --ds-interaction-group-divider-inline-start-width, 0px );--ds-interaction-divider-inline-start-color:var( --ds-interaction-group-divider-inline-start-color, transparent );--ds-interaction-divider-inline-end-width:var( --ds-interaction-group-divider-inline-end-width, 0px );--ds-interaction-divider-inline-end-color:var( --ds-interaction-group-divider-inline-end-color, transparent )}.ds-interaction-fill.sc-ds-input-h>.ds-interaction-fill__content.sc-ds-input,.ds-interaction-fill.sc-ds-input>.ds-interaction-fill__content.sc-ds-input,.ds-interaction-fill__content.sc-ds-input{position:relative;z-index:2;cursor:inherit}.ds-interaction-fill--on-faint.sc-ds-input-h,.ds-interaction-fill--on-faint.sc-ds-input{--ds-interaction-active:var(--color-interaction-active)}.ds-interaction-fill--on-medium.sc-ds-input-h,.ds-interaction-fill--on-medium.sc-ds-input{--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-input-h,.ds-interaction-fill--on-bold.sc-ds-input{--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-input-h,.ds-interaction-fill--on-strong.sc-ds-input{--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-input-h,.ds-interaction-fill--on-translucent.sc-ds-input{--ds-interaction-hover:var(--color-translucent-interaction-hover);--ds-interaction-pressed:var(--color-translucent-interaction-pressed);--ds-interaction-active:var(--color-translucent-interaction-active-brand);--ds-focus-ring-color:var(--color-translucent-interaction-focus)}.ds-interaction-fill--on-inverted.sc-ds-input-h,.ds-interaction-fill--on-inverted.sc-ds-input{--ds-interaction-hover:var(--color-inverted-interaction-hover);--ds-interaction-pressed:var(--color-inverted-interaction-pressed);--ds-interaction-active:var(--color-inverted-interaction-active-brand);--ds-focus-ring-color:var(--color-inverted-interaction-focus)}.ds-interaction-fill--on-media.sc-ds-input-h,.ds-interaction-fill--on-media.sc-ds-input{--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-input-h,.ds-interaction-fill--on-always-dark.sc-ds-input{--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-brand);--ds-focus-ring-color:var(--color-always-dark-interaction-focus)}.ds-interaction-fill--on-navigation.sc-ds-input-h,.ds-interaction-fill--on-navigation.sc-ds-input{--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)}@media (forced-colors: active){.ds-interaction-fill.sc-ds-input-h::after,.ds-interaction-fill.sc-ds-input::after{box-shadow:none;outline:var(--ds-interaction-border-width) solid var(--ds-forced-color-control-boundary);outline-offset:calc(-1 * var(--ds-interaction-border-width))}.ds-interaction-fill--selected.sc-ds-input-h::before,.ds-interaction-fill--selected.sc-ds-input::before{background:transparent;outline:var(--dimension-stroke-width-025) solid var(--ds-forced-color-selected);outline-offset:calc(-1 * var(--dimension-stroke-width-025))}}@media (forced-colors: active) and (hover: hover) and (pointer: fine){.ds-interaction-fill.sc-ds-input-h:hover:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after,.ds-interaction-fill.sc-ds-input:hover:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after{outline-color:var(--ds-forced-color-selected);outline-width:var(--dimension-stroke-width-012)}}@media (forced-colors: active){.sc-ds-input:root,.sc-ds-input-h,.ds-forced-colors-scope.sc-ds-input{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}.sc-ds-input-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-input-h,.ds-focus-ring.sc-ds-input,.ds-focus-ring-inset.sc-ds-input-h,.ds-focus-ring-inset.sc-ds-input{outline:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.ds-focus-ring.sc-ds-input-h:focus-visible,.ds-focus-ring.sc-ds-input: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-input-h,.ds-focus-ring.ds-focus-ring--visible.sc-ds-input{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-input-h:focus-visible,.ds-focus-ring-inset.sc-ds-input:focus-visible{outline:none}.ds-focus-ring-inset.sc-ds-input-h:focus-visible::after,.ds-focus-ring-inset.sc-ds-input: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-input-h,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-input{outline:none}.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-input-h::after,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-input::after{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:calc(-1 * var(--ds-focus-ring-width))}@media (forced-colors: active){.sc-ds-input-h{--ds-focus-ring-color:var(--ds-forced-color-selected)}}@media (forced-colors: active){.sc-ds-input:root,.sc-ds-input-h,.ds-forced-colors-scope.sc-ds-input{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}.ds-control-inactive.sc-ds-input-h,.ds-control-inactive.sc-ds-input{opacity:var(--effect-opacity-medium);pointer-events:none;cursor:not-allowed}@media (forced-colors: active){.ds-control-inactive.sc-ds-input-h,.ds-control-inactive.sc-ds-input{color:var(--ds-forced-color-disabled);opacity:1}}.ds-control--lg.sc-ds-input,.ds-control--lg.sc-ds-input-h,.ds-control--md.sc-ds-input-h,.ds-control--md.sc-ds-input,.ds-control--sm.sc-ds-input-h,.ds-control--sm.sc-ds-input,.ds-control--xs.sc-ds-input-h,.ds-control--xs.sc-ds-input{--ds-control-radius:var(--dimension-radius-025)}.ds-control--lg.sc-ds-input-h,.ds-control--lg.sc-ds-input{--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-input-h,.ds-control--md.sc-ds-input{--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-input-h,.ds-control--sm.sc-ds-input{--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-input-h,.ds-control--xs.sc-ds-input{--ds-control-height:var(--dimension-size-200);--ds-control-icon:var(--dimension-iconography-xs);--ds-control-padding-inline:var(--dimension-space-025);--ds-control-label-inset:var(--dimension-space-025);--ds-control-gap:0}.ds-control-frame.sc-ds-input{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-section-heading.sc-ds-input{display:flex;align-items:center;box-sizing:border-box;height:var(--ds-control-height, var(--dimension-size-400));padding-inline:calc( var(--ds-control-padding-inline, var(--dimension-space-075)) + var(--ds-control-label-inset, var(--dimension-space-025)) )}.ds-control-icon-box.sc-ds-input{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-input{min-width:0;padding-inline:var(--ds-control-label-inset, var(--dimension-space-025))}.ds-control-label-dot.sc-ds-input{position:relative;padding-inline-end:calc( var(--ds-control-label-inset, var(--dimension-space-025)) + var(--ds-control-gap, var(--dimension-space-050)) )}.ds-control-label-dot__badge.sc-ds-input{position:absolute;inset-block-start:0;inset-inline-end:0;pointer-events:none}.ds-control-width--hug.sc-ds-input-h,.ds-control-width--hug.sc-ds-input{width:fit-content;max-width:100%;flex:0 0 auto}.ds-control-width--fill.sc-ds-input-h,.ds-control-width--fill.sc-ds-input{width:100%;min-width:0;flex:1 1 auto;align-self:stretch}.ds-field-stack.sc-ds-input-h,.ds-field-stack.sc-ds-input{display:flex;flex-direction:column;gap:var(--dimension-space-050)}.ds-text--display-medium.sc-ds-input-h,.ds-text--display-medium.sc-ds-input{font-size:var(--typography-fontsize-3xl);line-height:var(--typography-lineheight-3xl)}.ds-text--display-small.sc-ds-input-h,.ds-text--display-small.sc-ds-input{font-size:var(--typography-fontsize-2xl);line-height:var(--typography-lineheight-2xl)}.ds-text--title-large.sc-ds-input-h,.ds-text--title-large.sc-ds-input{font-size:var(--typography-fontsize-xl);line-height:var(--typography-lineheight-xl)}.ds-text--title-medium.sc-ds-input-h,.ds-text--title-medium.sc-ds-input{font-size:var(--typography-fontsize-lg);line-height:var(--typography-lineheight-lg)}.ds-text--title-small.sc-ds-input-h,.ds-text--title-small.sc-ds-input{font-size:var(--typography-fontsize-md);line-height:var(--typography-lineheight-md)}.ds-text--body-large.sc-ds-input-h,.ds-text--body-large.sc-ds-input{font-size:var(--typography-fontsize-lg);line-height:var(--typography-lineheight-lg)}.ds-text--body-medium.sc-ds-input-h,.ds-text--body-medium.sc-ds-input{font-size:var(--typography-fontsize-md);line-height:var(--typography-lineheight-md)}.ds-text--body-small.sc-ds-input-h,.ds-text--body-small.sc-ds-input{font-size:var(--typography-fontsize-sm);line-height:var(--typography-lineheight-sm)}.ds-text--caption.sc-ds-input-h,.ds-text--caption.sc-ds-input{font-size:var(--typography-fontsize-xs);line-height:var(--typography-lineheight-xs);text-transform:uppercase}.ds-text--display-medium.ds-text--emphasis.sc-ds-input-h,.ds-text--display-small.ds-text--emphasis.sc-ds-input-h,.ds-text--display-medium.ds-text--emphasis.sc-ds-input,.ds-text--display-small.ds-text--emphasis.sc-ds-input{font-weight:var(--typography-weight-bold);letter-spacing:var(--typography-letterspacing-negative-double)}.ds-text--display-medium.ds-text--regular.sc-ds-input-h,.ds-text--display-small.ds-text--regular.sc-ds-input-h,.ds-text--display-medium.ds-text--regular.sc-ds-input,.ds-text--display-small.ds-text--regular.sc-ds-input{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-large.ds-text--emphasis.sc-ds-input-h,.ds-text--title-large.ds-text--emphasis.sc-ds-input{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative-double)}.ds-text--title-large.ds-text--regular.sc-ds-input-h,.ds-text--title-large.ds-text--regular.sc-ds-input{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-medium.ds-text--emphasis.sc-ds-input-h,.ds-text--title-small.ds-text--emphasis.sc-ds-input-h,.ds-text--title-medium.ds-text--emphasis.sc-ds-input,.ds-text--title-small.ds-text--emphasis.sc-ds-input{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-medium.ds-text--regular.sc-ds-input-h,.ds-text--title-small.ds-text--regular.sc-ds-input-h,.ds-text--title-medium.ds-text--regular.sc-ds-input,.ds-text--title-small.ds-text--regular.sc-ds-input{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-large.ds-text--emphasis.sc-ds-input-h,.ds-text--body-medium.ds-text--emphasis.sc-ds-input-h,.ds-text--body-large.ds-text--emphasis.sc-ds-input,.ds-text--body-medium.ds-text--emphasis.sc-ds-input{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--body-large.ds-text--regular.sc-ds-input-h,.ds-text--body-medium.ds-text--regular.sc-ds-input-h,.ds-text--body-large.ds-text--regular.sc-ds-input,.ds-text--body-medium.ds-text--regular.sc-ds-input{font-weight:var(--typography-weight-regular);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-small.ds-text--emphasis.sc-ds-input-h,.ds-text--body-small.ds-text--emphasis.sc-ds-input{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-small.ds-text--regular.sc-ds-input-h,.ds-text--body-small.ds-text--regular.sc-ds-input{font-weight:var(--typography-weight-regular);letter-spacing:var(--typography-letterspacing-none)}.ds-text--caption.ds-text--emphasis.sc-ds-input-h,.ds-text--caption.ds-text--emphasis.sc-ds-input{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-positive)}.ds-text--caption.ds-text--regular.sc-ds-input-h,.ds-text--caption.ds-text--regular.sc-ds-input{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-positive)}@media (forced-colors: active){.sc-ds-input:root,.sc-ds-input-h,.ds-forced-colors-scope.sc-ds-input{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}.input-host.sc-ds-input-h{display:inline-flex;--ds-input-fg:var(--color-foreground-primary);--ds-input-placeholder:var(--color-foreground-secondary);--ds-input-placeholder-active:var(--color-foreground-quaternary);--ds-input-adornment-fg:var(--color-foreground-secondary);--ds-input-border:var(--color-border-secondary);--ds-input-stepper-fg:var(--color-foreground-secondary)}.ds-control-width--fill.sc-ds-input-h,.ds-control-width--fill.sc-ds-input-h .input-control.sc-ds-input{width:100%}.input-control.sc-ds-input{overflow:hidden;background:transparent;border:none;border-radius:var(--ds-control-radius, var(--dimension-radius-025));color:var(--ds-input-fg)}.input-control--bordered.sc-ds-input{--ds-interaction-border-width:var(--dimension-stroke-width-012);--ds-interaction-border-color:var(--ds-input-border)}.input-control--error.sc-ds-input{--ds-interaction-border-width:var(--dimension-stroke-width-018);--ds-interaction-border-color:var(--color-border-bold-negative)}.input-control--bordered.sc-ds-input:focus-within:not(.input-control--error){--ds-interaction-border-width:var(--dimension-stroke-width-018);--ds-interaction-border-color:var(--color-border-bold-brand)}.ds-control-inactive.sc-ds-input-h .input-control.sc-ds-input::after{background:transparent}.native-input.sc-ds-input{position:relative;z-index:2;flex:1 1 auto;min-width:0;height:100%;background:transparent;border:none;border-radius:inherit;outline:none;color:var(--ds-input-fg);font-family:inherit;text-overflow:ellipsis;-webkit-appearance:none;appearance:none}.native-input--align-start.sc-ds-input{text-align:start}.native-input--align-end.sc-ds-input{text-align:end}.native-input[type='number'].sc-ds-input{-moz-appearance:textfield}.native-input[type='number'].sc-ds-input::-webkit-inner-spin-button,.native-input[type='number'].sc-ds-input::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}.input-control--number.input-control--align-start.sc-ds-input{padding-inline-end:var(--dimension-space-025)}.input-control--number.input-control--align-end.sc-ds-input{padding-inline-start:var(--dimension-space-025)}.input-control__number-stepper.sc-ds-input{position:relative;z-index:2;display:grid;grid-template-rows:repeat(2, minmax(0, 1fr));flex:0 0 var(--ds-control-icon);width:var(--ds-control-icon);height:calc(var(--ds-control-height) - var(--dimension-space-050));overflow:hidden;border-radius:var(--ds-control-radius, var(--dimension-radius-025));color:var(--ds-input-stepper-fg)}.input-control__number-step.sc-ds-input{all:unset;position:relative;z-index:0;display:flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:0;min-height:0;overflow:hidden;color:inherit;cursor:default}.input-control__number-step--increment.sc-ds-input{border-radius:var(--ds-control-radius, var(--dimension-radius-025)) var(--ds-control-radius, var(--dimension-radius-025)) 0 0}.input-control__number-step--decrement.sc-ds-input{border-radius:0 0 var(--ds-control-radius, var(--dimension-radius-025)) var(--ds-control-radius, var(--dimension-radius-025))}.input-control__number-step.sc-ds-input:disabled{color:var(--color-foreground-quaternary)}.input-control__number-step-icon.sc-ds-input{flex-shrink:0}.native-input.sc-ds-input:disabled{cursor:not-allowed}.native-input.sc-ds-input:read-only:not(:disabled){cursor:default}.native-input.sc-ds-input::placeholder{color:var(--ds-input-placeholder)}.native-input.sc-ds-input:focus::placeholder{color:var(--ds-input-placeholder-active)}.native-input[type='search'].sc-ds-input::-webkit-search-cancel-button,.native-input[type='search'].sc-ds-input::-webkit-search-decoration{display:none}.input-control__prefix.sc-ds-input,.input-control__suffix.sc-ds-input{position:relative;z-index:2;color:var(--ds-input-adornment-fg)}.input-control__suffix--empty.sc-ds-input{display:none}.input-control.sc-ds-input>.input-control__clear.sc-ds-input{position:relative;z-index:2;flex-shrink:0;align-self:center}.input-control.ds-control--lg.sc-ds-input:has(.input-control__clear),.input-control.ds-control--md.sc-ds-input:has(.input-control__clear),.input-control.ds-control--sm.sc-ds-input:has(.input-control__clear){padding-right:var(--dimension-space-050)}.input-control.ds-control--xs.sc-ds-input:has(.input-control__clear){padding-right:0}.error-text.sc-ds-input{width:100%}@media (forced-colors: active){.input-control__number-step.sc-ds-input:disabled{color:var(--ds-forced-color-disabled)}.input-control--bordered.sc-ds-input:focus-within:not(.input-control--error)::after{outline-color:var(--ds-forced-color-selected)}.input-control--error.sc-ds-input::after{outline-style:dashed}}`;const x={lg:"lg",md:"md",sm:"sm",xs:"xs"};const y={lg:"md",md:"sm",sm:"xs",xs:"xs"};let w=0;const k=t(class t extends i{constructor(t){super();if(t!==false){this.__registerHost()}this.dsChange=s(this,"dsChange",7);this.dsClear=s(this,"dsClear",7);this.internals=this.attachInternals();this.generatedId=`ds-input-${++w}`;this.errorId=`${this.generatedId}-error`;this.value="";this.disabled=false;this.readOnly=false;this.required=false;this.requiredMessage=p;this.clearLabel="Clear";this.type="text";this.textAlign="start";this.inputMode="";this.enterKeyHint="";this.size="md";this.width="fill";this.hasBorder=true;this.isInactive=false;this.autoFocus=false;this.error=false;this.ariaLabel=null;this.initialValue="";this.formDisabled=false;this.hasSuffix=false;this.focused=false;this.touched=false;this.handleInput=t=>{this.value=t.target.value;this.dsChange.emit(this.value)};this.handleFocus=()=>{this.focused=true};this.handleBlur=()=>{this.focused=false;this.touched=true};this.handleClear=()=>{this.value="";this.dsChange.emit("");this.dsClear.emit();this.inputEl?.focus()};this.handleNumericStep=t=>{const i=this.inputEl;if(!i||i.disabled||i.readOnly||this.numericStepDisabled(t))return;const s=i.value;if(t>0)i.stepUp();else i.stepDown();i.focus({preventScroll:true});if(i.value===s)return;this.value=i.value;this.dsChange.emit(this.value)}}componentWillLoad(){this.initialValue=this.value;this.hasSuffix=Boolean(this.el.querySelector('[slot="suffix"]'));this.syncFormValue()}componentDidRender(){const t=Boolean(this.el.querySelector('[slot="suffix"]'));if(t!==this.hasSuffix)this.hasSuffix=t}syncFormValue(){const t=this.isInactive||this.disabled||this.formDisabled;f(this.internals,this.value,{inactive:t});const i=this.required&&!t&&this.value.length===0;h(this.internals,i,this.requiredMessage)}formDisabledCallback(t){this.formDisabled=t;this.syncFormValue()}formResetCallback(){this.value=this.initialValue}formStateRestoreCallback(t){this.value=v(t)}async setFocus(){this.inputEl?.focus()}numericStepDisabled(t){if(this.value.trim()==="")return false;const i=Number(this.value);if(!Number.isFinite(i))return false;if(t>0&&this.max!==undefined)return i>=this.max;if(t<0&&this.min!==undefined)return i<=this.min;return false}renderNumericStepper(t){const i=t||this.readOnly||this.numericStepDisabled(1);const s=t||this.readOnly||this.numericStepDisabled(-1);return e("span",{class:"input-control__number-stepper"},e("button",{type:"button",class:"input-control__number-step input-control__number-step--increment ds-focus-ring-inset ds-interaction-fill",disabled:i,tabIndex:-1,"aria-hidden":"true",onClick:()=>this.handleNumericStep(1)},e("ds-icon",{class:"input-control__number-step-icon ds-interaction-fill__content",name:"ChevronUp",size:"xs",color:"inherit"})),e("button",{type:"button",class:"input-control__number-step input-control__number-step--decrement ds-focus-ring-inset ds-interaction-fill",disabled:s,tabIndex:-1,"aria-hidden":"true",onClick:()=>this.handleNumericStep(-1)},e("ds-icon",{class:"input-control__number-step-icon ds-interaction-fill__content",name:"ChevronDown",size:"xs",color:"inherit"})))}render(){const t=this.inputId??this.generatedId;const i=this.isInactive||this.disabled||this.formDisabled;const s=this.value.length>0;const o=this.value!==this.initialValue;const r=this.type==="search"&&s&&!i&&!this.readOnly;const d=this.error&&Boolean(this.errorMessage);const a=g[this.size];const c=x[this.size];const l=this.type==="number";const u=[this.ariaDescribedby,d?this.errorId:undefined].filter(Boolean).join(" ")||undefined;return e(n,{key:"ef711c78c2ec56bd0535dd3bd784916df2dc3e90",class:{"input-host":true,"ds-field-stack":true,"ds-control-inactive":i,[`ds-control--${this.size}`]:true,...m(this.width)},"data-disabled":i?"":undefined,"data-readonly":this.readOnly?"":undefined,"data-required":this.required?"":undefined,"data-invalid":this.error?"":undefined,"data-filled":s?"":undefined,"data-focused":this.focused?"":undefined,"data-dirty":o?"":undefined,"data-touched":this.touched?"":undefined},e("div",{key:"2ebb80a1dd1238cfbde44c9890f9b3938bf9ee39",class:{"input-control":true,"input-control--number":l,"input-control--align-start":this.textAlign==="start","input-control--align-end":this.textAlign==="end","ds-control-frame":true,"input-control--bordered":this.hasBorder,"input-control--error":this.hasBorder&&this.error,"ds-interaction-fill":true,[`ds-control--${this.size}`]:true}},l&&this.textAlign==="end"&&this.renderNumericStepper(i),this.icon&&e("span",{key:"eca57f5569705d3cc21dcb85792ecec3ae176776",class:"input-control__prefix ds-control-icon-box ds-interaction-fill__content","aria-hidden":"true"},e("ds-icon",{key:"31b0cb2fe6cbd933d6be23a28ae67b5063ebda81",name:this.icon,size:c,color:"inherit"})),e("input",{key:"862714b8d50d41c80344f6d3e3c7181474320073",ref:t=>{this.inputEl=t},type:this.type,id:t,value:this.value,placeholder:this.placeholder,min:l?this.min:undefined,max:l?this.max:undefined,step:l?this.step:undefined,disabled:i,readOnly:this.readOnly,required:this.required,autoFocus:this.autoFocus,autoComplete:this.autoComplete,inputMode:this.inputMode||undefined,enterKeyHint:this.enterKeyHint||undefined,class:`native-input native-input--align-${this.textAlign} ds-control-label-box ds-text--${a.replace("text-","")} ds-text--regular ds-interaction-fill__content`,"aria-label":this.ariaLabel,"aria-labelledby":this.ariaLabelledby,"aria-describedby":u,"aria-invalid":this.error?"true":undefined,onInput:this.handleInput,onFocus:this.handleFocus,onBlur:this.handleBlur}),e("span",{key:"0da2368a61b0c437d1a9d6d6fe98e159f49b7e3d",class:{"input-control__suffix":true,"ds-control-icon-box":true,"input-control__suffix--empty":!this.hasSuffix}},e("slot",{key:"93ff1b8e50848fc54b66073b9bc298300b53fd0f",name:"suffix"})),r&&e("ds-button-unfilled",{key:"074f4b3eff15a367d0f2a3308196523b091d515e",class:"input-control__clear",variant:"icon",size:y[this.size],icon:"CrossCircle",hasBorder:false,rounded:true,ariaLabel:this.clearLabel,onDsClick:this.handleClear}),l&&this.textAlign==="start"&&this.renderNumericStepper(i)),d&&e("ds-text",{key:"d84c90c17efd0d8d2ef4f1ce2d96c1e329fda681",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{value:[{syncFormValue:0}],disabled:[{syncFormValue:0}],isInactive:[{syncFormValue:0}],required:[{syncFormValue:0}]}}static get style(){return b()}},[326,"ds-input",{value:[1025],name:[513],form:[513],disabled:[516],readOnly:[516,"read-only"],required:[516],requiredMessage:[1,"required-message"],clearLabel:[1,"clear-label"],placeholder:[1],type:[1],min:[2],max:[2],step:[2],textAlign:[1,"text-align"],autoComplete:[1,"autocomplete"],inputMode:[1,"inputmode"],enterKeyHint:[1,"enterkeyhint"],size:[1],width:[1],hasBorder:[4,"has-border"],icon:[1],isInactive:[4,"is-inactive"],autoFocus:[4,"auto-focus"],error:[4],errorMessage:[1,"error-message"],inputId:[1,"input-id"],ariaLabel:[1,"aria-label"],ariaLabelledby:[1,"aria-labelledby"],ariaDescribedby:[1,"aria-describedby"],formDisabled:[32],hasSuffix:[32],focused:[32],touched:[32],setFocus:[64]},undefined,{value:[{syncFormValue:0}],disabled:[{syncFormValue:0}],isInactive:[{syncFormValue:0}],required:[{syncFormValue:0}]}]);function _(){if(typeof customElements==="undefined"){return}const t=["ds-input","ds-badge","ds-button-unfilled","ds-icon","ds-loader","ds-text","ds-tooltip"];t.forEach((t=>{switch(t){case"ds-input":if(!customElements.get(o(t))){customElements.define(o(t),k)}break;case"ds-badge":if(!customElements.get(o(t))){r()}break;case"ds-button-unfilled":if(!customElements.get(o(t))){d()}break;case"ds-icon":if(!customElements.get(o(t))){a()}break;case"ds-loader":if(!customElements.get(o(t))){c()}break;case"ds-text":if(!customElements.get(o(t))){l()}break;case"ds-tooltip":if(!customElements.get(o(t))){u()}break}}))}_();export{k as I,_ as d};
2
+ //# sourceMappingURL=p-CCmgtju-.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["inputCss","ICON_SIZE","lg","md","sm","xs","CLEAR_BUTTON_SIZE","idCounter","Input","__stencil_proxyCustomElement","HTMLElement","constructor","registerHost","this","generatedId","errorId","value","disabled","readOnly","required","requiredMessage","DEFAULT_REQUIRED_MESSAGE","clearLabel","type","textAlign","inputMode","enterKeyHint","size","width","hasBorder","isInactive","autoFocus","error","ariaLabel","initialValue","formDisabled","hasSuffix","focused","touched","handleInput","e","target","dsChange","emit","handleFocus","handleBlur","handleClear","dsClear","inputEl","focus","handleNumericStep","direction","input","numericStepDisabled","previous","stepUp","stepDown","preventScroll","componentWillLoad","Boolean","el","querySelector","syncFormValue","componentDidRender","inactive","setFormControlValue","internals","missing","length","setRequiredValidity","formDisabledCallback","formResetCallback","formStateRestoreCallback","state","restoreStringFormState","setFocus","trim","Number","isFinite","max","undefined","min","renderNumericStepper","incrementDisabled","decrementDisabled","h","class","tabIndex","onClick","name","color","render","inputId","filled","dirty","showClear","showError","errorMessage","textVariant","CONTROL_TEXT_VARIANT","iconSize","numeric","describedBy","ariaDescribedby","filter","join","Host","key","controlWidthClass","icon","ref","element","id","placeholder","step","autoComplete","replace","ariaLabelledby","onInput","onFocus","onBlur","variant","rounded","onDsClick","as","textId","role"],"sources":["src/wc/components/Input/Input.css?tag=ds-input&encapsulation=scoped","src/wc/components/Input/Input.tsx"],"sourcesContent":["@import '../../utils/interaction-fill.css';\n@import '../../utils/focus-ring.css';\n@import '../../utils/control-inactive.css';\n@import '../../utils/control-density.css';\n@import '../../utils/control-parts.css';\n@import '../../utils/control-width.css';\n@import '../../utils/field-stack.css';\n@import '../../utils/typography.css';\n@import '../../utils/forced-colors.css';\n\n:host(.input-host) {\n display: inline-flex;\n --ds-input-fg: var(--color-foreground-primary);\n --ds-input-placeholder: var(--color-foreground-secondary);\n --ds-input-placeholder-active: var(--color-foreground-quaternary);\n --ds-input-adornment-fg: var(--color-foreground-secondary);\n --ds-input-border: var(--color-border-secondary);\n --ds-input-stepper-fg: var(--color-foreground-secondary);\n}\n\n:host(.ds-control-width--fill),\n:host(.ds-control-width--fill) .input-control {\n width: 100%;\n}\n\n.input-control {\n overflow: hidden;\n background: transparent;\n border: none;\n border-radius: var(--ds-control-radius, var(--dimension-radius-025));\n color: var(--ds-input-fg);\n}\n\n.input-control--bordered {\n --ds-interaction-border-width: var(--dimension-stroke-width-012);\n --ds-interaction-border-color: var(--ds-input-border);\n}\n\n.input-control--error {\n --ds-interaction-border-width: var(--dimension-stroke-width-018);\n --ds-interaction-border-color: var(--color-border-bold-negative);\n}\n\n.input-control--bordered:focus-within:not(.input-control--error) {\n --ds-interaction-border-width: var(--dimension-stroke-width-018);\n --ds-interaction-border-color: var(--color-border-bold-brand);\n}\n\n:host(.ds-control-inactive) .input-control::after {\n background: transparent;\n}\n\n.native-input {\n position: relative;\n z-index: 2;\n flex: 1 1 auto;\n min-width: 0;\n height: 100%;\n background: transparent;\n border: none;\n border-radius: inherit;\n outline: none;\n color: var(--ds-input-fg);\n font-family: inherit;\n text-overflow: ellipsis;\n -webkit-appearance: none;\n appearance: none;\n}\n\n.native-input--align-start {\n text-align: start;\n}\n\n.native-input--align-end {\n text-align: end;\n}\n\n/* Replace engine-specific number arrows with one density-aware inset stepper. */\n.native-input[type='number'] {\n -moz-appearance: textfield;\n}\n\n.native-input[type='number']::-webkit-inner-spin-button,\n.native-input[type='number']::-webkit-outer-spin-button {\n margin: 0;\n -webkit-appearance: none;\n}\n\n.input-control--number.input-control--align-start {\n padding-inline-end: var(--dimension-space-025);\n}\n\n.input-control--number.input-control--align-end {\n padding-inline-start: var(--dimension-space-025);\n}\n\n.input-control__number-stepper {\n position: relative;\n z-index: 2;\n display: grid;\n grid-template-rows: repeat(2, minmax(0, 1fr));\n flex: 0 0 var(--ds-control-icon);\n width: var(--ds-control-icon);\n height: calc(var(--ds-control-height) - var(--dimension-space-050));\n overflow: hidden;\n border-radius: var(--ds-control-radius, var(--dimension-radius-025));\n color: var(--ds-input-stepper-fg);\n}\n\n.input-control__number-step {\n all: unset;\n position: relative;\n z-index: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n min-width: 0;\n min-height: 0;\n overflow: hidden;\n color: inherit;\n cursor: default;\n}\n\n.input-control__number-step--increment {\n border-radius: var(--ds-control-radius, var(--dimension-radius-025))\n var(--ds-control-radius, var(--dimension-radius-025)) 0 0;\n}\n\n.input-control__number-step--decrement {\n border-radius: 0 0 var(--ds-control-radius, var(--dimension-radius-025))\n var(--ds-control-radius, var(--dimension-radius-025));\n}\n\n.input-control__number-step:disabled {\n color: var(--color-foreground-quaternary);\n}\n\n.input-control__number-step-icon {\n flex-shrink: 0;\n}\n\n.native-input:disabled {\n cursor: not-allowed;\n}\n\n.native-input:read-only:not(:disabled) {\n cursor: default;\n}\n\n.native-input::placeholder {\n color: var(--ds-input-placeholder);\n}\n\n.native-input:focus::placeholder {\n color: var(--ds-input-placeholder-active);\n}\n\n.native-input[type='search']::-webkit-search-cancel-button,\n.native-input[type='search']::-webkit-search-decoration {\n display: none;\n}\n\n.input-control__prefix,\n.input-control__suffix {\n position: relative;\n z-index: 2;\n color: var(--ds-input-adornment-fg);\n}\n\n.input-control__suffix--empty {\n display: none;\n}\n\n/* The input frame owns the nested clear action's cross-axis alignment. */\n.input-control > .input-control__clear {\n position: relative;\n z-index: 2;\n flex-shrink: 0;\n align-self: center;\n}\n\n.input-control.ds-control--lg:has(.input-control__clear),\n.input-control.ds-control--md:has(.input-control__clear),\n.input-control.ds-control--sm:has(.input-control__clear) {\n padding-right: var(--dimension-space-050);\n}\n\n.input-control.ds-control--xs:has(.input-control__clear) {\n padding-right: 0;\n}\n\n.error-text {\n width: 100%;\n}\n\n@media (forced-colors: active) {\n .input-control__number-step:disabled {\n color: var(--ds-forced-color-disabled);\n }\n\n .input-control--bordered:focus-within:not(.input-control--error)::after {\n outline-color: var(--ds-forced-color-selected);\n }\n\n .input-control--error::after {\n outline-style: dashed;\n }\n}\n","import {\n AttachInternals,\n Component,\n Prop,\n State,\n Event,\n EventEmitter,\n Element,\n Method,\n Watch,\n h,\n Host,\n} from '@stencil/core';\nimport {\n controlWidthClass,\n CONTROL_TEXT_VARIANT,\n DEFAULT_REQUIRED_MESSAGE,\n restoreStringFormState,\n setFormControlValue,\n setRequiredValidity,\n type ControlWidth,\n} from '../../utils';\n\nexport type InputType = 'text' | 'email' | 'tel' | 'url' | 'search' | 'password' | 'number';\nexport type InputSize = 'lg' | 'md' | 'sm' | 'xs';\nexport type InputWidth = ControlWidth;\nexport type InputTextAlign = 'start' | 'end';\n\nconst ICON_SIZE: Record<InputSize, 'lg' | 'md' | 'sm' | 'xs'> = {\n lg: 'lg',\n md: 'md',\n sm: 'sm',\n xs: 'xs',\n};\n\nconst CLEAR_BUTTON_SIZE: Record<InputSize, 'md' | 'sm' | 'xs'> = {\n lg: 'md',\n md: 'sm',\n sm: 'xs',\n xs: 'xs',\n};\n\nlet idCounter = 0;\n\n@Component({\n tag: 'ds-input',\n styleUrl: 'Input.css',\n scoped: true,\n formAssociated: true,\n})\nexport class Input {\n @Element() el!: HTMLElement;\n @AttachInternals() internals!: ElementInternals;\n\n private generatedId = `ds-input-${++idCounter}`;\n private errorId = `${this.generatedId}-error`;\n\n @Prop({ mutable: true }) value: string = '';\n @Prop({ reflect: true }) name: string | undefined;\n @Prop({ reflect: true }) form: string | undefined;\n @Prop({ reflect: true }) disabled: boolean = false;\n /** Keeps the value focusable and submittable while preventing edits. */\n @Prop({ reflect: true }) readOnly: boolean = false;\n @Prop({ reflect: true }) required: boolean = false;\n @Prop() requiredMessage: string = DEFAULT_REQUIRED_MESSAGE;\n @Prop() clearLabel: string = 'Clear';\n @Prop() placeholder: string | undefined;\n @Prop() type: InputType = 'text';\n /** Minimum accepted value when type is number. */\n @Prop() min: number | undefined;\n /** Maximum accepted value when type is number. */\n @Prop() max: number | undefined;\n /** Numeric increment used by native stepping and constraint validation. */\n @Prop() step: number | undefined;\n /** Align the editable value; number steppers follow the same inline edge. */\n @Prop() textAlign: InputTextAlign = 'start';\n /** Native browser autofill hint. */\n @Prop({ attribute: 'autocomplete' }) autoComplete: string | undefined;\n /** Preferred virtual keyboard without changing the value semantics. */\n @Prop({ attribute: 'inputmode' }) inputMode: string = '';\n /** Preferred virtual-keyboard action label. */\n @Prop({ attribute: 'enterkeyhint' }) enterKeyHint: string = '';\n /** Control density. */\n @Prop() size: InputSize = 'md';\n /** Width fit — fill the parent (default) or hug the available content. */\n @Prop() width: InputWidth = 'fill';\n /** Show the standard inset border, including focused and invalid strokes. */\n @Prop() hasBorder: boolean = true;\n /** Optional leading icon name. */\n @Prop() icon: string | undefined;\n @Prop() isInactive: boolean = false;\n @Prop() autoFocus: boolean = false;\n @Prop() error: boolean = false;\n @Prop() errorMessage: string | undefined;\n /** Associates the internal input with an external <label>. */\n @Prop() inputId: string | undefined;\n @Prop({ attribute: 'aria-label' }) ariaLabel: string | null = null;\n @Prop({ attribute: 'aria-labelledby' }) ariaLabelledby: string | undefined;\n @Prop({ attribute: 'aria-describedby' }) ariaDescribedby: string | undefined;\n\n @Event() dsChange!: EventEmitter<string>;\n @Event() dsClear!: EventEmitter<void>;\n\n private initialValue = '';\n private inputEl?: HTMLInputElement;\n @State() private formDisabled = false;\n @State() private hasSuffix = false;\n @State() private focused = false;\n @State() private touched = false;\n\n componentWillLoad() {\n this.initialValue = this.value;\n this.hasSuffix = Boolean(this.el.querySelector('[slot=\"suffix\"]'));\n this.syncFormValue();\n }\n\n componentDidRender() {\n const hasSuffix = Boolean(this.el.querySelector('[slot=\"suffix\"]'));\n if (hasSuffix !== this.hasSuffix) this.hasSuffix = hasSuffix;\n }\n\n @Watch('value')\n @Watch('disabled')\n @Watch('isInactive')\n @Watch('required')\n syncFormValue() {\n const inactive = this.isInactive || this.disabled || this.formDisabled;\n setFormControlValue(this.internals, this.value, { inactive });\n const missing = this.required && !inactive && this.value.length === 0;\n setRequiredValidity(this.internals, missing, this.requiredMessage);\n }\n\n formDisabledCallback(disabled: boolean) {\n this.formDisabled = disabled;\n this.syncFormValue();\n }\n\n formResetCallback() {\n this.value = this.initialValue;\n }\n\n formStateRestoreCallback(state: string | File | FormData | null) {\n this.value = restoreStringFormState(state);\n }\n\n @Method()\n async setFocus() {\n this.inputEl?.focus();\n }\n\n private handleInput = (e: Event) => {\n this.value = (e.target as HTMLInputElement).value;\n this.dsChange.emit(this.value);\n };\n\n private handleFocus = () => {\n this.focused = true;\n };\n\n private handleBlur = () => {\n this.focused = false;\n this.touched = true;\n };\n\n private handleClear = () => {\n this.value = '';\n this.dsChange.emit('');\n this.dsClear.emit();\n this.inputEl?.focus();\n };\n\n private numericStepDisabled(direction: 1 | -1): boolean {\n if (this.value.trim() === '') return false;\n const value = Number(this.value);\n if (!Number.isFinite(value)) return false;\n if (direction > 0 && this.max !== undefined) return value >= this.max;\n if (direction < 0 && this.min !== undefined) return value <= this.min;\n return false;\n }\n\n private handleNumericStep = (direction: 1 | -1) => {\n const input = this.inputEl;\n if (!input || input.disabled || input.readOnly || this.numericStepDisabled(direction)) return;\n\n const previous = input.value;\n if (direction > 0) input.stepUp();\n else input.stepDown();\n input.focus({ preventScroll: true });\n if (input.value === previous) return;\n\n this.value = input.value;\n this.dsChange.emit(this.value);\n };\n\n private renderNumericStepper(inactive: boolean) {\n const incrementDisabled = inactive || this.readOnly || this.numericStepDisabled(1);\n const decrementDisabled = inactive || this.readOnly || this.numericStepDisabled(-1);\n\n return (\n <span class=\"input-control__number-stepper\">\n <button\n type=\"button\"\n class=\"input-control__number-step input-control__number-step--increment ds-focus-ring-inset ds-interaction-fill\"\n disabled={incrementDisabled}\n tabIndex={-1}\n aria-hidden=\"true\"\n onClick={() => this.handleNumericStep(1)}\n >\n <ds-icon\n class=\"input-control__number-step-icon ds-interaction-fill__content\"\n name=\"ChevronUp\"\n size=\"xs\"\n color=\"inherit\"\n />\n </button>\n <button\n type=\"button\"\n class=\"input-control__number-step input-control__number-step--decrement ds-focus-ring-inset ds-interaction-fill\"\n disabled={decrementDisabled}\n tabIndex={-1}\n aria-hidden=\"true\"\n onClick={() => this.handleNumericStep(-1)}\n >\n <ds-icon\n class=\"input-control__number-step-icon ds-interaction-fill__content\"\n name=\"ChevronDown\"\n size=\"xs\"\n color=\"inherit\"\n />\n </button>\n </span>\n );\n }\n\n render() {\n const inputId = this.inputId ?? this.generatedId;\n const inactive = this.isInactive || this.disabled || this.formDisabled;\n const filled = this.value.length > 0;\n const dirty = this.value !== this.initialValue;\n const showClear = this.type === 'search' && filled && !inactive && !this.readOnly;\n const showError = this.error && Boolean(this.errorMessage);\n const textVariant = CONTROL_TEXT_VARIANT[this.size];\n const iconSize = ICON_SIZE[this.size];\n const numeric = this.type === 'number';\n\n const describedBy =\n [this.ariaDescribedby, showError ? this.errorId : undefined].filter(Boolean).join(' ') ||\n undefined;\n\n return (\n <Host\n class={{\n 'input-host': true,\n 'ds-field-stack': true,\n 'ds-control-inactive': inactive,\n [`ds-control--${this.size}`]: true,\n ...controlWidthClass(this.width),\n }}\n data-disabled={inactive ? '' : undefined}\n data-readonly={this.readOnly ? '' : undefined}\n data-required={this.required ? '' : undefined}\n data-invalid={this.error ? '' : undefined}\n data-filled={filled ? '' : undefined}\n data-focused={this.focused ? '' : undefined}\n data-dirty={dirty ? '' : undefined}\n data-touched={this.touched ? '' : undefined}\n >\n <div\n class={{\n 'input-control': true,\n 'input-control--number': numeric,\n 'input-control--align-start': this.textAlign === 'start',\n 'input-control--align-end': this.textAlign === 'end',\n 'ds-control-frame': true,\n 'input-control--bordered': this.hasBorder,\n 'input-control--error': this.hasBorder && this.error,\n 'ds-interaction-fill': true,\n [`ds-control--${this.size}`]: true,\n }}\n >\n {numeric && this.textAlign === 'end' && this.renderNumericStepper(inactive)}\n {this.icon && (\n <span\n class=\"input-control__prefix ds-control-icon-box ds-interaction-fill__content\"\n aria-hidden=\"true\"\n >\n <ds-icon name={this.icon} size={iconSize} color=\"inherit\" />\n </span>\n )}\n <input\n ref={element => {\n this.inputEl = element;\n }}\n type={this.type}\n id={inputId}\n value={this.value}\n placeholder={this.placeholder}\n min={numeric ? this.min : undefined}\n max={numeric ? this.max : undefined}\n step={numeric ? this.step : undefined}\n disabled={inactive}\n readOnly={this.readOnly}\n required={this.required}\n autoFocus={this.autoFocus}\n autoComplete={this.autoComplete}\n inputMode={this.inputMode || undefined}\n enterKeyHint={this.enterKeyHint || undefined}\n class={`native-input native-input--align-${this.textAlign} ds-control-label-box ds-text--${textVariant.replace('text-', '')} ds-text--regular ds-interaction-fill__content`}\n aria-label={this.ariaLabel}\n aria-labelledby={this.ariaLabelledby}\n aria-describedby={describedBy}\n aria-invalid={this.error ? 'true' : undefined}\n onInput={this.handleInput}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n />\n <span\n class={{\n 'input-control__suffix': true,\n 'ds-control-icon-box': true,\n 'input-control__suffix--empty': !this.hasSuffix,\n }}\n >\n <slot name=\"suffix\" />\n </span>\n {showClear && (\n <ds-button-unfilled\n class=\"input-control__clear\"\n variant=\"icon\"\n size={CLEAR_BUTTON_SIZE[this.size]}\n icon=\"CrossCircle\"\n hasBorder={false}\n rounded\n ariaLabel={this.clearLabel}\n onDsClick={this.handleClear}\n />\n )}\n {numeric && this.textAlign === 'start' && this.renderNumericStepper(inactive)}\n </div>\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":[]}
@@ -0,0 +1,2 @@
1
+ import{p as e,H as t,c as i,h as s,a as n,t as a}from"./index.js";import{d as r}from"./p-caLOcQUK.js";import{d as o}from"./p-DW5Ita-P.js";import{d}from"./p-v4oqkJms.js";import{d as u}from"./p-DdH7b4JF.js";import{d as c}from"./p-Cea7rROU.js";import{d as l}from"./p-0XTyQNRG.js";import{d as h}from"./p-DFC0sRM-.js";import{d as g}from"./p-B-HsfQOK.js";import{d as q}from"./p-DLbHgbVj.js";function p(e,t){return e.find((e=>e.questionId===t))}function m(e,t){return Object.fromEntries(e.map((e=>{const i=p(t,e.id);const s=new Set(e.choices?.map((e=>e.value))??[]);if(e.type==="multiple"){const t=Array.isArray(i?.value)?i.value:[];const n=t.filter((e=>s.has(e)));const a=t.find((e=>!s.has(e)))??"";return[e.id,{value:n,otherSelected:Boolean(e.allowOther&&a),otherText:e.allowOther?a:"",skipped:i?.value===null}]}const n=typeof i?.value==="string"?i.value:"";const a=e.type==="single"&&s.has(n);return[e.id,{value:e.type==="single"&&!a?"":n,otherSelected:Boolean(e.type==="single"&&e.allowOther&&n&&!a),otherText:e.type==="single"&&e.allowOther&&n&&!a?n:"",skipped:i?.value===null}]})))}function f(e,t){if(t.skipped)return{questionId:e.id,value:null};if(e.type==="multiple"){const i=Array.isArray(t.value)?[...t.value]:[];if(t.otherSelected&&t.otherText.trim())i.push(t.otherText.trim());return{questionId:e.id,value:i.length||e.required?i:null}}if(t.otherSelected){const i=t.otherText.trim();return{questionId:e.id,value:i||null}}const i=typeof t.value==="string"?t.value.trim():"";return{questionId:e.id,value:i||null}}function b(e,t){if((e.type==="single"||e.type==="multiple")&&!e.choices?.length){return"This question has no available choices."}if(t.otherSelected&&!t.otherText.trim()){return"Enter a response for Other."}if(!e.required||t.skipped)return undefined;const i=f(e,t).value;const s=i===null||Array.isArray(i)&&i.length===0;if(!s)return undefined;return e.type==="text"?"Enter an answer before continuing.":"Choose an answer before continuing."}function _(e,t){if(!t||t.value===null)return"Skipped";const i=Array.isArray(t.value)?t.value:[t.value];const s=new Map(e.choices?.map((e=>[e.value,e.label]))??[]);return i.map((e=>s.get(e)??e)).join(", ")}const v=()=>`@media (forced-colors: active){.sc-ds-agent-questionnaire:root,.sc-ds-agent-questionnaire-h,.ds-forced-colors-scope.sc-ds-agent-questionnaire{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}.ds-visually-hidden.sc-ds-agent-questionnaire-h,.ds-visually-hidden.sc-ds-agent-questionnaire{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.sc-ds-agent-questionnaire-h{display:block;width:100%;min-width:0;box-sizing:border-box;-webkit-user-select:none;user-select:none}.questionnaire.sc-ds-agent-questionnaire{display:grid;gap:var(--dimension-space-150);width:100%;padding:var(--dimension-space-200);border-radius:var(--dimension-radius-125);background:var(--color-background-primary);box-shadow:var(--effect-elevation-elevated-md);box-sizing:border-box}.questionnaire--answered.sc-ds-agent-questionnaire{gap:var(--dimension-space-100);padding:var(--dimension-space-150);background:var(--color-background-secondary);box-shadow:none}.questionnaire--preparing.sc-ds-agent-questionnaire{align-items:center;grid-template-columns:auto minmax(0, 1fr)}.questionnaire__header.sc-ds-agent-questionnaire,.questionnaire__actions.sc-ds-agent-questionnaire,.questionnaire__actions-leading.sc-ds-agent-questionnaire,.questionnaire__error.sc-ds-agent-questionnaire,.questionnaire__submission-error.sc-ds-agent-questionnaire{display:flex;align-items:center}.questionnaire__header.sc-ds-agent-questionnaire,.questionnaire__actions.sc-ds-agent-questionnaire{justify-content:space-between;gap:var(--dimension-space-100)}.questionnaire__body.sc-ds-agent-questionnaire,.questionnaire__prompt.sc-ds-agent-questionnaire,.questionnaire__choices.sc-ds-agent-questionnaire,.questionnaire__single-choice.sc-ds-agent-questionnaire,.questionnaire__multiple-choice.sc-ds-agent-questionnaire,.questionnaire__other-choice.sc-ds-agent-questionnaire,.questionnaire__summary.sc-ds-agent-questionnaire,.questionnaire__summary.sc-ds-agent-questionnaire li.sc-ds-agent-questionnaire{display:grid}.questionnaire__body.sc-ds-agent-questionnaire,.questionnaire__prompt.sc-ds-agent-questionnaire,.questionnaire__choices.sc-ds-agent-questionnaire,.questionnaire__single-choice.sc-ds-agent-questionnaire,.questionnaire__multiple-choice.sc-ds-agent-questionnaire,.questionnaire__other-choice.sc-ds-agent-questionnaire{gap:var(--dimension-space-100)}.questionnaire__choices.sc-ds-agent-questionnaire{min-width:0;margin:0;padding:0;border:0}ds-radio.sc-ds-agent-questionnaire,ds-checkbox.sc-ds-agent-questionnaire{width:100%;min-width:0}.questionnaire__other-input.sc-ds-agent-questionnaire,.questionnaire__text-input.sc-ds-agent-questionnaire{width:100%;padding:var(--dimension-space-100);border:var(--dimension-stroke-width-012) solid var(--color-border-secondary);border-radius:var(--dimension-radius-050);outline:none;background:var(--color-background-primary);color:var(--color-foreground-primary);font-family:var(--typography-font-family-ui);font-size:var(--typography-fontsize-md);font-weight:var(--typography-weight-regular);line-height:var(--typography-lineheight-md);letter-spacing:var(--typography-letterspacing-negative-half);box-sizing:border-box;-webkit-user-select:text;user-select:text}.questionnaire__other-input.sc-ds-agent-questionnaire{width:calc(100% - var(--dimension-size-500));margin-inline-start:var(--dimension-size-500)}.questionnaire__text-input.sc-ds-agent-questionnaire{min-height:calc(var(--typography-lineheight-md) * 4 + var(--dimension-space-200));resize:vertical}.questionnaire__other-input.sc-ds-agent-questionnaire:focus,.questionnaire__text-input.sc-ds-agent-questionnaire:focus{border-color:var(--color-border-bold-brand);box-shadow:inset 0 0 0 var(--dimension-stroke-width-018) var(--color-border-bold-brand)}.questionnaire__other-input[aria-invalid='true'].sc-ds-agent-questionnaire,.questionnaire__text-input[aria-invalid='true'].sc-ds-agent-questionnaire{border-color:var(--color-border-bold-negative)}.questionnaire__error.sc-ds-agent-questionnaire,.questionnaire__submission-error.sc-ds-agent-questionnaire{gap:var(--dimension-space-050);color:var(--color-foreground-bold-negative)}.questionnaire__submission-error.sc-ds-agent-questionnaire{padding:var(--dimension-space-075);border-radius:var(--dimension-radius-050);background:var(--color-background-faint-negative)}.questionnaire__actions-leading.sc-ds-agent-questionnaire{flex-wrap:wrap;gap:var(--dimension-space-075)}.questionnaire__action-item.sc-ds-agent-questionnaire{width:fit-content;max-width:100%}.questionnaire.sc-ds-agent-questionnaire textarea.sc-ds-agent-questionnaire:disabled{color:var(--color-foreground-tertiary);cursor:default;opacity:1}.questionnaire__summary.sc-ds-agent-questionnaire{gap:var(--dimension-space-100);margin:0;padding:0;list-style:none}.questionnaire__summary.sc-ds-agent-questionnaire li.sc-ds-agent-questionnaire{gap:var(--dimension-space-025)}@media (max-width: 480px){.questionnaire.sc-ds-agent-questionnaire{padding:var(--dimension-space-150)}.questionnaire__actions.sc-ds-agent-questionnaire{align-items:stretch;flex-direction:column}.questionnaire__actions-leading.sc-ds-agent-questionnaire{display:grid;grid-template-columns:minmax(0, 1fr);width:100%}.questionnaire__action-item.sc-ds-agent-questionnaire,.questionnaire__action-item--primary.sc-ds-agent-questionnaire{width:100%}}@media (forced-colors: active){.questionnaire.sc-ds-agent-questionnaire{border:var(--dimension-stroke-width-012) solid var(--ds-forced-color-content);box-shadow:none}.questionnaire__other-input[aria-invalid='true'].sc-ds-agent-questionnaire,.questionnaire__text-input[aria-invalid='true'].sc-ds-agent-questionnaire{outline:var(--dimension-stroke-width-025) dashed var(--ds-forced-color-content)}.questionnaire__submission-error.sc-ds-agent-questionnaire{border:var(--dimension-stroke-width-012) solid var(--ds-forced-color-content);background:var(--ds-forced-color-surface)}.questionnaire.sc-ds-agent-questionnaire input.sc-ds-agent-questionnaire:disabled,.questionnaire.sc-ds-agent-questionnaire textarea.sc-ds-agent-questionnaire:disabled{color:var(--ds-forced-color-disabled)}}`;const x={progress:"Question {current} of {total}",previous:"Previous",next:"Next",answer:"Answer",skip:"Skip",cancel:"Cancel",other:"Other",otherPlaceholder:"Enter another answer",preparing:"Preparing questions…"};let y=0;const w=e(class e extends t{constructor(e){super();if(e!==false){this.__registerHost()}this.dsAnswer=i(this,"dsAnswer",7);this.dsCancel=i(this,"dsCancel",7);this.answers=[];this.status="ready";this.allowCancel=false;this.currentStep=0;this.drafts={};this.validation={};this.instanceId=++y;this.otherValue=`__ds-agent-questionnaire-other-${this.instanceId}`;this.answerPending=false;this.resetScheduled=false;this.answersSnapshot=[];this.waitingForRequestAnswers=false}componentWillLoad(){this.draftRequestId=this.requestId;this.answersSnapshot=this.answers;this.resetDraft()}handleQuestionnaireInputChange(){this.scheduleDraftReset()}handleStatusChange(e){if(e!=="submitting")this.answerPending=false}async setFocus(){this.focusCurrentControl()}get copy(){return{...x,...this.labels}}get disabled(){return this.status==="submitting"}resetDraft(e=this.answers){this.currentStep=0;this.drafts=m(this.questions??[],e??[]);this.validation={};this.answerPending=false}scheduleDraftReset(){if(this.resetScheduled)return;this.resetScheduled=true;queueMicrotask((()=>{this.resetScheduled=false;const e=this.requestId!==this.draftRequestId;const t=this.answers!==this.answersSnapshot;if(e&&!t){this.waitingForRequestAnswers=true}else if(t){this.waitingForRequestAnswers=false}this.resetDraft(this.waitingForRequestAnswers?[]:this.answers);this.draftRequestId=this.requestId;this.answersSnapshot=this.answers}))}focusCurrentControl(e=false){const t=()=>{const t=e?this.el.querySelector('[data-question-control][aria-invalid="true"]:not([disabled])'):null;const i=t??this.el.querySelector("[data-question-control]:not([disabled]):not([is-inactive])");const s=this.el.querySelector("[data-question-action]:not([is-inactive]):not([is-loading])");const n=i??s;if(n?.setFocus)void n.setFocus();else n?.focus()};t();requestAnimationFrame(t);setTimeout(t,0)}updateDraft(e,t){const i=this.drafts[e]??{value:"",otherSelected:false,otherText:"",skipped:false};this.drafts={...this.drafts,[e]:{...i,...t,skipped:false}};if(this.validation[e]){const{[e]:t,...i}=this.validation;this.validation=i}}validate(e){const t=b(e,this.drafts[e.id]);if(!t)return true;this.validation={...this.validation,[e.id]:t};this.focusCurrentControl(true);return false}move(e){this.currentStep=Math.min(Math.max(e,0),this.questions.length-1);this.focusCurrentControl()}next(e){if(!this.validate(e))return;this.move(this.currentStep+1)}skip(e){if(e.required)return;this.drafts={...this.drafts,[e.id]:{...this.drafts[e.id]??{value:"",otherSelected:false,otherText:""},skipped:true}};if(this.currentStep<this.questions.length-1)this.move(this.currentStep+1);else this.submit()}submit(){if(this.disabled||this.answerPending)return;const e=this.questions.findIndex((e=>!this.validateWithoutFocus(e)));if(e>=0){this.currentStep=e;this.focusCurrentControl(true);return}this.answerPending=true;this.dsAnswer.emit({requestId:this.requestId,answers:this.questions.map((e=>f(e,this.drafts[e.id])))})}validateWithoutFocus(e){const t=b(e,this.drafts[e.id]);if(!t)return true;this.validation={...this.validation,[e.id]:t};return false}progressLabel(){return this.copy.progress.split("{current}").join(String(this.currentStep+1)).split("{total}").join(String(this.questions.length))}selectSingle(e,t){const i=t===this.otherValue;this.updateDraft(e.id,{value:i?"":t,otherSelected:i});if(i){requestAnimationFrame((()=>this.el.querySelector("[data-question-other-input]")?.focus()))}}renderSingleChoice(e,t,i){const n=this.drafts[e.id];const a=n.otherSelected?this.otherValue:typeof n.value==="string"?n.value:"";const r=[...e.choices??[],...e.allowOther?[{value:this.otherValue,label:this.copy.other}]:[]];return s("div",{class:"questionnaire__single-choice"},s("ds-radio",{"data-question-control":true,size:"lg",options:r,value:a,disabled:this.disabled,form:`ds-agent-questionnaire-detached-${this.instanceId}`,ariaLabelledby:t,"aria-describedby":this.validation[e.id]?i:undefined,onDsChange:t=>this.selectSingle(e,t.detail)}),n.otherSelected?this.renderOtherInput(e,i):null)}renderMultipleChoice(e,t){const i=this.drafts[e.id];const n=Array.isArray(i.value)?i.value:[];const a=`ds-agent-questionnaire-detached-${this.instanceId}`;return s("div",{class:"questionnaire__multiple-choice"},e.choices?.map((t=>s("ds-checkbox",{key:t.value,"data-question-control":true,size:"lg",label:t.label,description:t.description,value:t.value,checked:n.includes(t.value),disabled:this.disabled,form:a,onDsChange:i=>{this.updateDraft(e.id,{value:i.detail?[...n,t.value]:n.filter((e=>e!==t.value))})}}))),e.allowOther?s("div",{class:"questionnaire__other-choice"},s("ds-checkbox",{"data-question-control":true,size:"lg",label:this.copy.other,checked:i.otherSelected,disabled:this.disabled,form:a,onDsChange:t=>{this.updateDraft(e.id,{otherSelected:t.detail});if(t.detail){requestAnimationFrame((()=>this.el.querySelector("[data-question-other-input]")?.focus()))}}}),i.otherSelected?this.renderOtherInput(e,t):null):null)}renderOtherInput(e,t){const i=this.drafts[e.id];return s("input",{class:"questionnaire__other-input","data-question-control":true,"data-question-other-input":true,type:"text",form:`ds-agent-questionnaire-detached-${this.instanceId}`,value:i.otherText,placeholder:this.copy.otherPlaceholder,"aria-label":this.copy.other,"aria-invalid":this.validation[e.id]?"true":undefined,"aria-describedby":this.validation[e.id]?t:undefined,disabled:this.disabled,onInput:t=>this.updateDraft(e.id,{otherText:t.target.value})})}renderQuestion(e){const t=this.drafts[e.id];const i=`ds-agent-questionnaire-${this.instanceId}-${this.currentStep}-error`;const n=`ds-agent-questionnaire-${this.instanceId}-${this.currentStep}-prompt`;return s("div",{class:"questionnaire__body"},s("div",{class:"questionnaire__prompt"},s("ds-text",{as:"h2",variant:"text-title-small",textId:n},e.question),e.description?s("ds-text",{variant:"text-body-small",color:"secondary"},e.description):null),e.type==="text"?s("textarea",{class:"questionnaire__text-input","data-question-control":true,value:typeof t.value==="string"?t.value:"",form:`ds-agent-questionnaire-detached-${this.instanceId}`,placeholder:e.placeholder,"aria-label":e.question,"aria-invalid":this.validation[e.id]?"true":undefined,"aria-describedby":this.validation[e.id]?i:undefined,disabled:this.disabled,rows:4,onInput:t=>this.updateDraft(e.id,{value:t.target.value})}):s("fieldset",{class:"questionnaire__choices","aria-describedby":this.validation[e.id]?i:undefined},s("legend",{class:"ds-visually-hidden"},e.question),e.type==="single"?this.renderSingleChoice(e,n,i):this.renderMultipleChoice(e,i)),this.validation[e.id]?s("div",{id:i,class:"questionnaire__error",role:"alert"},s("ds-icon",{name:"ErrorTriangle",size:"xs",color:"inherit"}),s("ds-text",{variant:"text-body-small",color:"negative"},this.validation[e.id])):null)}renderAnswered(){return s("div",{class:"questionnaire questionnaire--answered"},s("ol",{class:"questionnaire__summary"},this.questions.map((e=>s("li",null,s("ds-text",{variant:"text-body-small",emphasis:true},e.question),s("ds-text",{variant:"text-body-small",color:"secondary"},_(e,this.answers.find((t=>t.questionId===e.id)))))))))}render(){if(this.status==="preparing"){return s(n,null,s("div",{class:"questionnaire questionnaire--preparing",role:"status"},s("ds-loader",{size:"sm"}),s("ds-text",{variant:"text-body-medium"},this.copy.preparing)))}if(!this.questions?.length)return null;if(this.status==="answered")return s(n,null,this.renderAnswered());const e=this.questions[this.currentStep];const t=this.currentStep===this.questions.length-1;const i=Boolean(e.skippable&&!e.required);return s(n,null,s("section",{class:{questionnaire:true,"questionnaire--submitting":this.disabled,"questionnaire--error":this.status==="error"},"aria-busy":this.disabled?"true":undefined,"aria-label":e.question},s("header",{class:"questionnaire__header"},s("ds-text",{variant:"text-caption",color:"secondary"},this.progressLabel()),this.allowCancel?s("ds-tooltip",{label:this.copy.cancel,side:"top",size:"sm"},s("ds-button-unfilled",{"data-question-action":true,variant:"icon",icon:"Cross",size:"sm","aria-label":this.copy.cancel,hasBorder:false,isInactive:this.disabled,onDsClick:()=>this.dsCancel.emit({requestId:this.requestId})})):null),this.renderQuestion(e),this.status==="error"&&this.errorMessage?s("div",{class:"questionnaire__submission-error",role:"alert"},s("ds-icon",{name:"ErrorTriangle",size:"xs",color:"inherit"}),s("ds-text",{variant:"text-body-small",color:"negative"},this.errorMessage)):null,s("footer",{class:"questionnaire__actions"},s("div",{class:"questionnaire__actions-leading"},this.currentStep>0?s("div",{class:"questionnaire__action-item"},s("ds-button-unfilled",{"data-question-action":true,label:this.copy.previous,size:"sm",width:"fill",isInactive:this.disabled,onDsClick:()=>this.move(this.currentStep-1)})):null,i?s("div",{class:"questionnaire__action-item"},s("ds-button-unfilled",{"data-question-action":true,label:this.copy.skip,size:"sm",width:"fill",hasBorder:false,isInactive:this.disabled,onDsClick:()=>this.skip(e)})):null),s("div",{class:"questionnaire__action-item questionnaire__action-item--primary"},s("ds-button-filled",{"data-question-action":true,label:t?this.copy.answer:this.copy.next,size:"sm",width:"fill",isLoading:this.disabled,onDsClick:()=>t?this.submit():this.next(e)})))))}get el(){return this}static get watchers(){return{requestId:[{handleQuestionnaireInputChange:0}],questions:[{handleQuestionnaireInputChange:0}],answers:[{handleQuestionnaireInputChange:0}],status:[{handleStatusChange:0}]}}static get style(){return v()}},[2,"ds-agent-questionnaire",{requestId:[1,"request-id"],questions:[16],answers:[16],status:[1],errorMessage:[1,"error-message"],allowCancel:[4,"allow-cancel"],labels:[16],currentStep:[32],drafts:[32],validation:[32],setFocus:[64]},undefined,{requestId:[{handleQuestionnaireInputChange:0}],questions:[{handleQuestionnaireInputChange:0}],answers:[{handleQuestionnaireInputChange:0}],status:[{handleStatusChange:0}]}]);function k(){if(typeof customElements==="undefined"){return}const e=["ds-agent-questionnaire","ds-badge","ds-button-filled","ds-button-unfilled","ds-checkbox","ds-icon","ds-loader","ds-radio","ds-text","ds-tooltip"];e.forEach((e=>{switch(e){case"ds-agent-questionnaire":if(!customElements.get(a(e))){customElements.define(a(e),w)}break;case"ds-badge":if(!customElements.get(a(e))){r()}break;case"ds-button-filled":if(!customElements.get(a(e))){o()}break;case"ds-button-unfilled":if(!customElements.get(a(e))){d()}break;case"ds-checkbox":if(!customElements.get(a(e))){u()}break;case"ds-icon":if(!customElements.get(a(e))){c()}break;case"ds-loader":if(!customElements.get(a(e))){l()}break;case"ds-radio":if(!customElements.get(a(e))){h()}break;case"ds-text":if(!customElements.get(a(e))){g()}break;case"ds-tooltip":if(!customElements.get(a(e))){q()}break}}))}k();export{w as A,k as d};
2
+ //# sourceMappingURL=p-CDw_WEVt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["answerFor","answers","questionId","find","answer","createQuestionnaireDrafts","questions","Object","fromEntries","map","question","id","choiceValues","Set","choices","choice","value","type","values","Array","isArray","known","filter","has","other","otherSelected","Boolean","allowOther","otherText","skipped","isKnownChoice","normalizeQuestionAnswer","draft","trim","push","length","required","validateQuestionDraft","undefined","missing","formatQuestionAnswer","labels","Map","label","get","join","agentQuestionnaireCss","DEFAULT_LABELS","progress","previous","next","skip","cancel","otherPlaceholder","preparing","questionnaireId","AgentQuestionnaire","__stencil_proxyCustomElement","HTMLElement","constructor","registerHost","this","status","allowCancel","currentStep","drafts","validation","instanceId","otherValue","answerPending","resetScheduled","answersSnapshot","waitingForRequestAnswers","componentWillLoad","draftRequestId","requestId","resetDraft","handleQuestionnaireInputChange","scheduleDraftReset","handleStatusChange","setFocus","focusCurrentControl","copy","disabled","queueMicrotask","requestChanged","answersChanged","preferInvalid","focus","invalidControl","el","querySelector","control","action","target","requestAnimationFrame","setTimeout","updateDraft","update","_removed","rest","validate","message","move","step","Math","min","max","submit","invalidIndex","findIndex","validateWithoutFocus","dsAnswer","emit","progressLabel","split","String","selectSingle","renderSingleChoice","promptId","errorId","options","h","class","size","form","ariaLabelledby","onDsChange","event","detail","renderOtherInput","renderMultipleChoice","detachedForm","key","description","checked","includes","placeholder","onInput","renderQuestion","as","variant","textId","color","rows","role","name","renderAnswered","emphasis","render","Host","last","canSkip","skippable","questionnaire","side","icon","hasBorder","isInactive","onDsClick","dsCancel","errorMessage","width","isLoading"],"sources":["src/wc/components/AgentQuestionnaire/agent-questionnaire-model.ts","src/wc/components/AgentQuestionnaire/AgentQuestionnaire.css?tag=ds-agent-questionnaire&encapsulation=scoped","src/wc/components/AgentQuestionnaire/AgentQuestionnaire.tsx"],"sourcesContent":["import type { AgentQuestion, AgentQuestionAnswer } from '../conversation-types';\n\nexport interface AgentQuestionDraft {\n value: string | string[];\n otherSelected: boolean;\n otherText: string;\n skipped: boolean;\n}\n\nexport type AgentQuestionDrafts = Record<string, AgentQuestionDraft>;\n\nfunction answerFor(\n answers: AgentQuestionAnswer[],\n questionId: string\n): AgentQuestionAnswer | undefined {\n return answers.find(answer => answer.questionId === questionId);\n}\n\nexport function createQuestionnaireDrafts(\n questions: AgentQuestion[],\n answers: AgentQuestionAnswer[]\n): AgentQuestionDrafts {\n return Object.fromEntries(\n questions.map(question => {\n const answer = answerFor(answers, question.id);\n const choiceValues = new Set(question.choices?.map(choice => choice.value) ?? []);\n\n if (question.type === 'multiple') {\n const values = Array.isArray(answer?.value) ? answer.value : [];\n const known = values.filter(value => choiceValues.has(value));\n const other = values.find(value => !choiceValues.has(value)) ?? '';\n return [\n question.id,\n {\n value: known,\n otherSelected: Boolean(question.allowOther && other),\n otherText: question.allowOther ? other : '',\n skipped: answer?.value === null,\n },\n ];\n }\n\n const value = typeof answer?.value === 'string' ? answer.value : '';\n const isKnownChoice = question.type === 'single' && choiceValues.has(value);\n return [\n question.id,\n {\n value: question.type === 'single' && !isKnownChoice ? '' : value,\n otherSelected: Boolean(\n question.type === 'single' && question.allowOther && value && !isKnownChoice\n ),\n otherText:\n question.type === 'single' && question.allowOther && value && !isKnownChoice\n ? value\n : '',\n skipped: answer?.value === null,\n },\n ];\n })\n );\n}\n\nexport function normalizeQuestionAnswer(\n question: AgentQuestion,\n draft: AgentQuestionDraft\n): AgentQuestionAnswer {\n if (draft.skipped) return { questionId: question.id, value: null };\n\n if (question.type === 'multiple') {\n const values = Array.isArray(draft.value) ? [...draft.value] : [];\n if (draft.otherSelected && draft.otherText.trim()) values.push(draft.otherText.trim());\n return {\n questionId: question.id,\n value: values.length || question.required ? values : null,\n };\n }\n\n if (draft.otherSelected) {\n const other = draft.otherText.trim();\n return { questionId: question.id, value: other || null };\n }\n\n const value = typeof draft.value === 'string' ? draft.value.trim() : '';\n return { questionId: question.id, value: value || null };\n}\n\nexport function validateQuestionDraft(\n question: AgentQuestion,\n draft: AgentQuestionDraft\n): string | undefined {\n if ((question.type === 'single' || question.type === 'multiple') && !question.choices?.length) {\n return 'This question has no available choices.';\n }\n\n if (draft.otherSelected && !draft.otherText.trim()) {\n return 'Enter a response for Other.';\n }\n\n if (!question.required || draft.skipped) return undefined;\n const answer = normalizeQuestionAnswer(question, draft).value;\n const missing = answer === null || (Array.isArray(answer) && answer.length === 0);\n if (!missing) return undefined;\n return question.type === 'text'\n ? 'Enter an answer before continuing.'\n : 'Choose an answer before continuing.';\n}\n\nexport function formatQuestionAnswer(\n question: AgentQuestion,\n answer: AgentQuestionAnswer | undefined\n): string {\n if (!answer || answer.value === null) return 'Skipped';\n const values = Array.isArray(answer.value) ? answer.value : [answer.value];\n const labels = new Map(question.choices?.map(choice => [choice.value, choice.label]) ?? []);\n return values.map(value => labels.get(value) ?? value).join(', ');\n}\n","@import '../../utils/forced-colors.css';\n@import '../../utils/visually-hidden.css';\n\n:host {\n display: block;\n width: 100%;\n min-width: 0;\n box-sizing: border-box;\n -webkit-user-select: none;\n user-select: none;\n}\n\n.questionnaire {\n display: grid;\n gap: var(--dimension-space-150);\n width: 100%;\n padding: var(--dimension-space-200);\n border-radius: var(--dimension-radius-125);\n background: var(--color-background-primary);\n box-shadow: var(--effect-elevation-elevated-md);\n box-sizing: border-box;\n}\n\n.questionnaire--answered {\n gap: var(--dimension-space-100);\n padding: var(--dimension-space-150);\n background: var(--color-background-secondary);\n box-shadow: none;\n}\n\n.questionnaire--preparing {\n align-items: center;\n grid-template-columns: auto minmax(0, 1fr);\n}\n\n.questionnaire__header,\n.questionnaire__actions,\n.questionnaire__actions-leading,\n.questionnaire__error,\n.questionnaire__submission-error {\n display: flex;\n align-items: center;\n}\n\n.questionnaire__header,\n.questionnaire__actions {\n justify-content: space-between;\n gap: var(--dimension-space-100);\n}\n\n.questionnaire__body,\n.questionnaire__prompt,\n.questionnaire__choices,\n.questionnaire__single-choice,\n.questionnaire__multiple-choice,\n.questionnaire__other-choice,\n.questionnaire__summary,\n.questionnaire__summary li {\n display: grid;\n}\n\n.questionnaire__body,\n.questionnaire__prompt,\n.questionnaire__choices,\n.questionnaire__single-choice,\n.questionnaire__multiple-choice,\n.questionnaire__other-choice {\n gap: var(--dimension-space-100);\n}\n\n.questionnaire__choices {\n min-width: 0;\n margin: 0;\n padding: 0;\n border: 0;\n}\n\nds-radio,\nds-checkbox {\n width: 100%;\n min-width: 0;\n}\n\n.questionnaire__other-input,\n.questionnaire__text-input {\n width: 100%;\n padding: var(--dimension-space-100);\n border: var(--dimension-stroke-width-012) solid var(--color-border-secondary);\n border-radius: var(--dimension-radius-050);\n outline: none;\n background: var(--color-background-primary);\n color: var(--color-foreground-primary);\n font-family: var(--typography-font-family-ui);\n font-size: var(--typography-fontsize-md);\n font-weight: var(--typography-weight-regular);\n line-height: var(--typography-lineheight-md);\n letter-spacing: var(--typography-letterspacing-negative-half);\n box-sizing: border-box;\n -webkit-user-select: text;\n user-select: text;\n}\n\n.questionnaire__other-input {\n width: calc(100% - var(--dimension-size-500));\n margin-inline-start: var(--dimension-size-500);\n}\n\n.questionnaire__text-input {\n min-height: calc(var(--typography-lineheight-md) * 4 + var(--dimension-space-200));\n resize: vertical;\n}\n\n.questionnaire__other-input:focus,\n.questionnaire__text-input:focus {\n border-color: var(--color-border-bold-brand);\n box-shadow: inset 0 0 0 var(--dimension-stroke-width-018) var(--color-border-bold-brand);\n}\n\n.questionnaire__other-input[aria-invalid='true'],\n.questionnaire__text-input[aria-invalid='true'] {\n border-color: var(--color-border-bold-negative);\n}\n\n.questionnaire__error,\n.questionnaire__submission-error {\n gap: var(--dimension-space-050);\n color: var(--color-foreground-bold-negative);\n}\n\n.questionnaire__submission-error {\n padding: var(--dimension-space-075);\n border-radius: var(--dimension-radius-050);\n background: var(--color-background-faint-negative);\n}\n\n.questionnaire__actions-leading {\n flex-wrap: wrap;\n gap: var(--dimension-space-075);\n}\n\n.questionnaire__action-item {\n width: fit-content;\n max-width: 100%;\n}\n\n.questionnaire textarea:disabled {\n color: var(--color-foreground-tertiary);\n cursor: default;\n opacity: 1;\n}\n\n.questionnaire__summary {\n gap: var(--dimension-space-100);\n margin: 0;\n padding: 0;\n list-style: none;\n}\n\n.questionnaire__summary li {\n gap: var(--dimension-space-025);\n}\n\n@media (max-width: 480px) {\n .questionnaire {\n padding: var(--dimension-space-150);\n }\n\n .questionnaire__actions {\n align-items: stretch;\n flex-direction: column;\n }\n\n .questionnaire__actions-leading {\n display: grid;\n grid-template-columns: minmax(0, 1fr);\n width: 100%;\n }\n\n .questionnaire__action-item,\n .questionnaire__action-item--primary {\n width: 100%;\n }\n}\n\n@media (forced-colors: active) {\n .questionnaire {\n border: var(--dimension-stroke-width-012) solid var(--ds-forced-color-content);\n box-shadow: none;\n }\n\n .questionnaire__other-input[aria-invalid='true'],\n .questionnaire__text-input[aria-invalid='true'] {\n outline: var(--dimension-stroke-width-025) dashed var(--ds-forced-color-content);\n }\n\n .questionnaire__submission-error {\n border: var(--dimension-stroke-width-012) solid var(--ds-forced-color-content);\n background: var(--ds-forced-color-surface);\n }\n\n .questionnaire input:disabled,\n .questionnaire textarea:disabled {\n color: var(--ds-forced-color-disabled);\n }\n}\n","import {\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 type {\n AgentQuestion,\n AgentQuestionAnswer,\n AgentQuestionnaireAnswerEventDetail,\n AgentQuestionnaireCancelEventDetail,\n AgentQuestionnaireLabels,\n AgentQuestionnaireStatus,\n} from '../conversation-types';\nimport {\n createQuestionnaireDrafts,\n formatQuestionAnswer,\n normalizeQuestionAnswer,\n validateQuestionDraft,\n} from './agent-questionnaire-model';\nimport type { AgentQuestionDraft, AgentQuestionDrafts } from './agent-questionnaire-model';\n\nconst DEFAULT_LABELS: AgentQuestionnaireLabels = {\n progress: 'Question {current} of {total}',\n previous: 'Previous',\n next: 'Next',\n answer: 'Answer',\n skip: 'Skip',\n cancel: 'Cancel',\n other: 'Other',\n otherPlaceholder: 'Enter another answer',\n preparing: 'Preparing questions…',\n};\n\nlet questionnaireId = 0;\n\n@Component({\n tag: 'ds-agent-questionnaire',\n styleUrl: 'AgentQuestionnaire.css',\n scoped: true,\n})\nexport class AgentQuestionnaire {\n @Element() el!: HTMLElement;\n\n @Prop() requestId!: string;\n @Prop() questions!: AgentQuestion[];\n @Prop() answers: AgentQuestionAnswer[] = [];\n @Prop() status: AgentQuestionnaireStatus = 'ready';\n @Prop() errorMessage?: string;\n @Prop() allowCancel: boolean = false;\n @Prop() labels?: Partial<AgentQuestionnaireLabels>;\n\n @Event() dsAnswer!: EventEmitter<AgentQuestionnaireAnswerEventDetail>;\n @Event() dsCancel!: EventEmitter<AgentQuestionnaireCancelEventDetail>;\n\n @State() private currentStep = 0;\n @State() private drafts: AgentQuestionDrafts = {};\n @State() private validation: Record<string, string> = {};\n\n private readonly instanceId = ++questionnaireId;\n private readonly otherValue = `__ds-agent-questionnaire-other-${this.instanceId}`;\n private answerPending = false;\n private resetScheduled = false;\n private draftRequestId?: string;\n private answersSnapshot: AgentQuestionAnswer[] = [];\n private waitingForRequestAnswers = false;\n\n componentWillLoad() {\n this.draftRequestId = this.requestId;\n this.answersSnapshot = this.answers;\n this.resetDraft();\n }\n\n @Watch('requestId')\n @Watch('questions')\n @Watch('answers')\n handleQuestionnaireInputChange() {\n this.scheduleDraftReset();\n }\n\n @Watch('status')\n handleStatusChange(status: AgentQuestionnaireStatus) {\n if (status !== 'submitting') this.answerPending = false;\n }\n\n @Method()\n async setFocus(): Promise<void> {\n this.focusCurrentControl();\n }\n\n private get copy(): AgentQuestionnaireLabels {\n return { ...DEFAULT_LABELS, ...this.labels };\n }\n\n private get disabled(): boolean {\n return this.status === 'submitting';\n }\n\n private resetDraft(answers = this.answers) {\n this.currentStep = 0;\n this.drafts = createQuestionnaireDrafts(this.questions ?? [], answers ?? []);\n this.validation = {};\n this.answerPending = false;\n }\n\n private scheduleDraftReset() {\n if (this.resetScheduled) return;\n this.resetScheduled = true;\n queueMicrotask(() => {\n this.resetScheduled = false;\n const requestChanged = this.requestId !== this.draftRequestId;\n const answersChanged = this.answers !== this.answersSnapshot;\n if (requestChanged && !answersChanged) {\n this.waitingForRequestAnswers = true;\n } else if (answersChanged) {\n this.waitingForRequestAnswers = false;\n }\n this.resetDraft(this.waitingForRequestAnswers ? [] : this.answers);\n this.draftRequestId = this.requestId;\n this.answersSnapshot = this.answers;\n });\n }\n\n private focusCurrentControl(preferInvalid = false) {\n const focus = () => {\n const invalidControl = preferInvalid\n ? this.el.querySelector<HTMLElement>(\n '[data-question-control][aria-invalid=\"true\"]:not([disabled])'\n )\n : null;\n const control =\n invalidControl ??\n this.el.querySelector<HTMLElement>(\n '[data-question-control]:not([disabled]):not([is-inactive])'\n );\n const action = this.el.querySelector<HTMLElement>(\n '[data-question-action]:not([is-inactive]):not([is-loading])'\n );\n const target = (control ?? action) as\n | (HTMLElement & { setFocus?: () => Promise<void> })\n | null;\n if (target?.setFocus) void target.setFocus();\n else target?.focus();\n };\n focus();\n requestAnimationFrame(focus);\n setTimeout(focus, 0);\n }\n\n private updateDraft(questionId: string, update: Partial<AgentQuestionDraft>) {\n const previous = this.drafts[questionId] ?? {\n value: '',\n otherSelected: false,\n otherText: '',\n skipped: false,\n };\n this.drafts = {\n ...this.drafts,\n [questionId]: { ...previous, ...update, skipped: false },\n };\n if (this.validation[questionId]) {\n const { [questionId]: _removed, ...rest } = this.validation;\n this.validation = rest;\n }\n }\n\n private validate(question: AgentQuestion): boolean {\n const message = validateQuestionDraft(question, this.drafts[question.id]);\n if (!message) return true;\n this.validation = { ...this.validation, [question.id]: message };\n this.focusCurrentControl(true);\n return false;\n }\n\n private move(step: number) {\n this.currentStep = Math.min(Math.max(step, 0), this.questions.length - 1);\n this.focusCurrentControl();\n }\n\n private next(question: AgentQuestion) {\n if (!this.validate(question)) return;\n this.move(this.currentStep + 1);\n }\n\n private skip(question: AgentQuestion) {\n if (question.required) return;\n this.drafts = {\n ...this.drafts,\n [question.id]: {\n ...(this.drafts[question.id] ?? {\n value: '',\n otherSelected: false,\n otherText: '',\n }),\n skipped: true,\n },\n };\n if (this.currentStep < this.questions.length - 1) this.move(this.currentStep + 1);\n else this.submit();\n }\n\n private submit() {\n if (this.disabled || this.answerPending) return;\n const invalidIndex = this.questions.findIndex(question => !this.validateWithoutFocus(question));\n if (invalidIndex >= 0) {\n this.currentStep = invalidIndex;\n this.focusCurrentControl(true);\n return;\n }\n\n this.answerPending = true;\n this.dsAnswer.emit({\n requestId: this.requestId,\n answers: this.questions.map(question =>\n normalizeQuestionAnswer(question, this.drafts[question.id])\n ),\n });\n }\n\n private validateWithoutFocus(question: AgentQuestion): boolean {\n const message = validateQuestionDraft(question, this.drafts[question.id]);\n if (!message) return true;\n this.validation = { ...this.validation, [question.id]: message };\n return false;\n }\n\n private progressLabel(): string {\n return this.copy.progress\n .split('{current}')\n .join(String(this.currentStep + 1))\n .split('{total}')\n .join(String(this.questions.length));\n }\n\n private selectSingle(question: AgentQuestion, value: string) {\n const otherSelected = value === this.otherValue;\n this.updateDraft(question.id, {\n value: otherSelected ? '' : value,\n otherSelected,\n });\n if (otherSelected) {\n requestAnimationFrame(() =>\n this.el.querySelector<HTMLInputElement>('[data-question-other-input]')?.focus()\n );\n }\n }\n\n private renderSingleChoice(question: AgentQuestion, promptId: string, errorId: string) {\n const draft = this.drafts[question.id];\n const value = draft.otherSelected\n ? this.otherValue\n : typeof draft.value === 'string'\n ? draft.value\n : '';\n const options = [\n ...(question.choices ?? []),\n ...(question.allowOther ? [{ value: this.otherValue, label: this.copy.other }] : []),\n ];\n return (\n <div class=\"questionnaire__single-choice\">\n <ds-radio\n data-question-control\n size=\"lg\"\n options={options}\n value={value}\n disabled={this.disabled}\n form={`ds-agent-questionnaire-detached-${this.instanceId}`}\n ariaLabelledby={promptId}\n aria-describedby={this.validation[question.id] ? errorId : undefined}\n onDsChange={(event: CustomEvent<string>) => this.selectSingle(question, event.detail)}\n />\n {draft.otherSelected ? this.renderOtherInput(question, errorId) : null}\n </div>\n );\n }\n\n private renderMultipleChoice(question: AgentQuestion, errorId: string) {\n const draft = this.drafts[question.id];\n const values = Array.isArray(draft.value) ? draft.value : [];\n const detachedForm = `ds-agent-questionnaire-detached-${this.instanceId}`;\n return (\n <div class=\"questionnaire__multiple-choice\">\n {question.choices?.map(choice => (\n <ds-checkbox\n key={choice.value}\n data-question-control\n size=\"lg\"\n label={choice.label}\n description={choice.description}\n value={choice.value}\n checked={values.includes(choice.value)}\n disabled={this.disabled}\n form={detachedForm}\n onDsChange={(event: CustomEvent<boolean>) => {\n this.updateDraft(question.id, {\n value: event.detail\n ? [...values, choice.value]\n : values.filter(value => value !== choice.value),\n });\n }}\n />\n ))}\n {question.allowOther ? (\n <div class=\"questionnaire__other-choice\">\n <ds-checkbox\n data-question-control\n size=\"lg\"\n label={this.copy.other}\n checked={draft.otherSelected}\n disabled={this.disabled}\n form={detachedForm}\n onDsChange={(event: CustomEvent<boolean>) => {\n this.updateDraft(question.id, { otherSelected: event.detail });\n if (event.detail) {\n requestAnimationFrame(() =>\n this.el.querySelector<HTMLInputElement>('[data-question-other-input]')?.focus()\n );\n }\n }}\n />\n {draft.otherSelected ? this.renderOtherInput(question, errorId) : null}\n </div>\n ) : null}\n </div>\n );\n }\n\n private renderOtherInput(question: AgentQuestion, errorId: string) {\n const draft = this.drafts[question.id];\n return (\n <input\n class=\"questionnaire__other-input\"\n data-question-control\n data-question-other-input\n type=\"text\"\n form={`ds-agent-questionnaire-detached-${this.instanceId}`}\n value={draft.otherText}\n placeholder={this.copy.otherPlaceholder}\n aria-label={this.copy.other}\n aria-invalid={this.validation[question.id] ? 'true' : undefined}\n aria-describedby={this.validation[question.id] ? errorId : undefined}\n disabled={this.disabled}\n onInput={(event: Event) =>\n this.updateDraft(question.id, {\n otherText: (event.target as HTMLInputElement).value,\n })\n }\n />\n );\n }\n\n private renderQuestion(question: AgentQuestion) {\n const draft = this.drafts[question.id];\n const errorId = `ds-agent-questionnaire-${this.instanceId}-${this.currentStep}-error`;\n const promptId = `ds-agent-questionnaire-${this.instanceId}-${this.currentStep}-prompt`;\n return (\n <div class=\"questionnaire__body\">\n <div class=\"questionnaire__prompt\">\n <ds-text as=\"h2\" variant=\"text-title-small\" textId={promptId}>\n {question.question}\n </ds-text>\n {question.description ? (\n <ds-text variant=\"text-body-small\" color=\"secondary\">\n {question.description}\n </ds-text>\n ) : null}\n </div>\n {question.type === 'text' ? (\n <textarea\n class=\"questionnaire__text-input\"\n data-question-control\n value={typeof draft.value === 'string' ? draft.value : ''}\n form={`ds-agent-questionnaire-detached-${this.instanceId}`}\n placeholder={question.placeholder}\n aria-label={question.question}\n aria-invalid={this.validation[question.id] ? 'true' : undefined}\n aria-describedby={this.validation[question.id] ? errorId : undefined}\n disabled={this.disabled}\n rows={4}\n onInput={(event: Event) =>\n this.updateDraft(question.id, {\n value: (event.target as HTMLTextAreaElement).value,\n })\n }\n />\n ) : (\n <fieldset\n class=\"questionnaire__choices\"\n aria-describedby={this.validation[question.id] ? errorId : undefined}\n >\n <legend class=\"ds-visually-hidden\">{question.question}</legend>\n {question.type === 'single'\n ? this.renderSingleChoice(question, promptId, errorId)\n : this.renderMultipleChoice(question, errorId)}\n </fieldset>\n )}\n {this.validation[question.id] ? (\n <div id={errorId} class=\"questionnaire__error\" role=\"alert\">\n <ds-icon name=\"ErrorTriangle\" size=\"xs\" color=\"inherit\" />\n <ds-text variant=\"text-body-small\" color=\"negative\">\n {this.validation[question.id]}\n </ds-text>\n </div>\n ) : null}\n </div>\n );\n }\n\n private renderAnswered() {\n return (\n <div class=\"questionnaire questionnaire--answered\">\n <ol class=\"questionnaire__summary\">\n {this.questions.map(question => (\n <li>\n <ds-text variant=\"text-body-small\" emphasis>\n {question.question}\n </ds-text>\n <ds-text variant=\"text-body-small\" color=\"secondary\">\n {formatQuestionAnswer(\n question,\n this.answers.find(answer => answer.questionId === question.id)\n )}\n </ds-text>\n </li>\n ))}\n </ol>\n </div>\n );\n }\n\n render() {\n if (this.status === 'preparing') {\n return (\n <Host>\n <div class=\"questionnaire questionnaire--preparing\" role=\"status\">\n <ds-loader size=\"sm\" />\n <ds-text variant=\"text-body-medium\">{this.copy.preparing}</ds-text>\n </div>\n </Host>\n );\n }\n if (!this.questions?.length) return null;\n if (this.status === 'answered') return <Host>{this.renderAnswered()}</Host>;\n\n const question = this.questions[this.currentStep];\n const last = this.currentStep === this.questions.length - 1;\n const canSkip = Boolean(question.skippable && !question.required);\n return (\n <Host>\n <section\n class={{\n questionnaire: true,\n 'questionnaire--submitting': this.disabled,\n 'questionnaire--error': this.status === 'error',\n }}\n aria-busy={this.disabled ? 'true' : undefined}\n aria-label={question.question}\n >\n <header class=\"questionnaire__header\">\n <ds-text variant=\"text-caption\" color=\"secondary\">\n {this.progressLabel()}\n </ds-text>\n {this.allowCancel ? (\n <ds-tooltip label={this.copy.cancel} side=\"top\" size=\"sm\">\n <ds-button-unfilled\n data-question-action\n variant=\"icon\"\n icon=\"Cross\"\n size=\"sm\"\n aria-label={this.copy.cancel}\n hasBorder={false}\n isInactive={this.disabled}\n onDsClick={() => this.dsCancel.emit({ requestId: this.requestId })}\n />\n </ds-tooltip>\n ) : null}\n </header>\n {this.renderQuestion(question)}\n {this.status === 'error' && this.errorMessage ? (\n <div class=\"questionnaire__submission-error\" role=\"alert\">\n <ds-icon name=\"ErrorTriangle\" size=\"xs\" color=\"inherit\" />\n <ds-text variant=\"text-body-small\" color=\"negative\">\n {this.errorMessage}\n </ds-text>\n </div>\n ) : null}\n <footer class=\"questionnaire__actions\">\n <div class=\"questionnaire__actions-leading\">\n {this.currentStep > 0 ? (\n <div class=\"questionnaire__action-item\">\n <ds-button-unfilled\n data-question-action\n label={this.copy.previous}\n size=\"sm\"\n width=\"fill\"\n isInactive={this.disabled}\n onDsClick={() => this.move(this.currentStep - 1)}\n />\n </div>\n ) : null}\n {canSkip ? (\n <div class=\"questionnaire__action-item\">\n <ds-button-unfilled\n data-question-action\n label={this.copy.skip}\n size=\"sm\"\n width=\"fill\"\n hasBorder={false}\n isInactive={this.disabled}\n onDsClick={() => this.skip(question)}\n />\n </div>\n ) : null}\n </div>\n <div class=\"questionnaire__action-item questionnaire__action-item--primary\">\n <ds-button-filled\n data-question-action\n label={last ? this.copy.answer : this.copy.next}\n size=\"sm\"\n width=\"fill\"\n isLoading={this.disabled}\n onDsClick={() => (last ? this.submit() : this.next(question))}\n />\n </div>\n </footer>\n </section>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +1,2 @@
1
- function n(n,t){const i=n.trim().split(/\s+/)[0]??"";const e=parseFloat(i);if(Number.isNaN(e))return t;if(/ms\s*$/.test(i))return e;if(/s\s*$/.test(i))return e*1e3;return e}function t(n){const t=n.match(/^var\(\s*(--[^),]+)/);if(t)return t[1].trim();if(n.startsWith("--"))return n.trim();return null}function i(i,e){if(typeof document==="undefined")return e;const o=t(i);if(!o)return n(i,e);const s=getComputedStyle(document.documentElement).getPropertyValue(o).trim();return n(s,e)}function e(e,o){if(typeof e==="number")return e;const s=typeof e==="string"&&e.trim()?e.trim():o;const r=t(s);if(r){return i(s,i(o,200))}return n(s,i(o,200))}function o(){return typeof window!=="undefined"&&typeof window.matchMedia==="function"&&window.matchMedia("(prefers-reduced-motion: reduce)").matches}function s(n,t){return o()?0:e(n,t)}const r="--dimension-menu-width-lg";const a="--dimension-menu-width-xs";const c="--dimension-radius-025";const d="--dimension-size-200";const m="--dimension-size-300";const u="--dimension-size-400";const f="--dimension-size-600";const h="--dimension-size-800";const l="--dimension-space-050";const p="--dimension-space-200";const z="--dimension-stroke-width-012";const y="--dimension-stroke-width-025";const w="--dimension-stroke-width-037";const g="--effect-animation-delay-instant";const k="--effect-animation-delay-long-2";const W="--effect-animation-delay-medium-3";const b="--effect-animation-duration-medium-1";const v="--effect-animation-duration-short-3";const D="--effect-motion-short-2";const S="--effect-motion-short-3";const $={space050:l,space200:p,radius025:c,strokeWidth012:z,strokeWidth025:y,strokeWidth037:w,size200:d,size300:m,size400:u,size600:f,size800:h,menuWidthXs:a,menuWidthLg:r,motionShort2:D,motionShort3:S,animationDurationShort3:v,animationDurationMedium1:b,animationDelayInstant:g,animationDelayMedium3:W,animationDelayLong2:k,menuFallbackHeight:"calc(var(--dimension-size-base) * 20)",tooltipFallbackWidth:"calc(var(--dimension-size-800) + var(--dimension-size-200))"};const F={space050:`var(${l})`,menuWidthLg:`var(${r})`};export{$ as T,F as a,s as b,o as c,n as p,e as r};
2
- //# sourceMappingURL=p-DFQ9mcbK.js.map
1
+ function n(n,t){const i=n.trim().split(/\s+/)[0]??"";const e=parseFloat(i);if(Number.isNaN(e))return t;if(/ms\s*$/.test(i))return e;if(/s\s*$/.test(i))return e*1e3;return e}function t(n){const t=n.match(/^var\(\s*(--[^),]+)/);if(t)return t[1].trim();if(n.startsWith("--"))return n.trim();return null}function i(i,e){if(typeof document==="undefined")return e;const o=t(i);if(!o)return n(i,e);const s=getComputedStyle(document.documentElement).getPropertyValue(o).trim();return n(s,e)}function e(e,o){if(typeof e==="number")return e;const s=typeof e==="string"&&e.trim()?e.trim():o;const r=t(s);if(r){return i(s,i(o,200))}return n(s,i(o,200))}function o(){return typeof window!=="undefined"&&typeof window.matchMedia==="function"&&window.matchMedia("(prefers-reduced-motion: reduce)").matches}function s(n,t){return o()?0:e(n,t)}const r="--dimension-menu-width-lg";const a="--dimension-menu-width-xs";const c="--dimension-radius-025";const d="--dimension-size-200";const m="--dimension-size-300";const u="--dimension-size-400";const f="--dimension-size-600";const h="--dimension-size-800";const l="--dimension-space-050";const p="--dimension-space-200";const z="--dimension-stroke-width-012";const y="--dimension-stroke-width-025";const w="--dimension-stroke-width-037";const g="--effect-animation-delay-instant";const k="--effect-animation-delay-long-2";const W="--effect-animation-delay-medium-3";const b="--effect-animation-duration-medium-1";const v="--effect-animation-duration-short-3";const D="--effect-motion-short-2";const S="--effect-motion-short-3";const $={space050:l,space200:p,radius025:c,strokeWidth012:z,strokeWidth025:y,strokeWidth037:w,size200:d,size300:m,size400:u,size600:f,size800:h,menuWidthXs:a,menuWidthLg:r,motionShort2:D,motionShort3:S,animationDurationShort3:v,animationDurationMedium1:b,animationDelayInstant:g,animationDelayMedium3:W,animationDelayLong2:k,menuFallbackHeight:"calc(var(--dimension-size-base) * 20)",tooltipFallbackWidth:"calc(var(--dimension-size-800) + var(--dimension-size-200))"};const F={space050:`var(${l})`,menuWidthLg:`var(${r})`};export{$ as T,s as a,F as b,o as c,n as p,e as r};
2
+ //# sourceMappingURL=p-CUL5_8JM.js.map