@ds-mo/ui 14.35.0 → 15.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (577) hide show
  1. package/dist/.package-ready.json +1 -1
  2. package/dist/agent-patterns.json +1 -1
  3. package/dist/agent.json +5733 -4656
  4. package/dist/angular/ds-button-inverted.d.ts +17 -0
  5. package/dist/angular/ds-button-inverted.js +46 -0
  6. package/dist/angular/ds-calendar.d.ts +15 -0
  7. package/dist/angular/ds-calendar.js +43 -0
  8. package/dist/angular/ds-conversation-list.d.ts +1 -1
  9. package/dist/angular/ds-conversation-list.js +3 -4
  10. package/dist/angular/ds-data-customize.d.ts +18 -0
  11. package/dist/angular/ds-data-customize.js +46 -0
  12. package/dist/angular/ds-data-filter.d.ts +50 -0
  13. package/dist/angular/{ds-table-filter.js → ds-data-filter.js} +10 -10
  14. package/dist/angular/ds-data-group.d.ts +29 -0
  15. package/dist/angular/{ds-table-group.js → ds-data-group.js} +10 -10
  16. package/dist/angular/ds-data-preferences.d.ts +39 -0
  17. package/dist/angular/{ds-table-preferences.js → ds-data-preferences.js} +15 -15
  18. package/dist/angular/ds-data-saved-views.d.ts +49 -0
  19. package/dist/angular/{ds-table-saved-views.js → ds-data-saved-views.js} +10 -10
  20. package/dist/angular/ds-data-search.d.ts +20 -0
  21. package/dist/angular/{ds-table-search.js → ds-data-search.js} +12 -12
  22. package/dist/angular/ds-data-sort.d.ts +16 -0
  23. package/dist/angular/{ds-table-sort.js → ds-data-sort.js} +12 -12
  24. package/dist/angular/ds-data-toolbar.d.ts +12 -0
  25. package/dist/angular/{ds-table-toolbar.js → ds-data-toolbar.js} +10 -10
  26. package/dist/angular/ds-field.d.ts +1 -1
  27. package/dist/angular/ds-field.js +1 -1
  28. package/dist/angular/ds-input-date.d.ts +15 -0
  29. package/dist/angular/ds-input-date.js +43 -0
  30. package/dist/angular/ds-input-time.d.ts +15 -0
  31. package/dist/angular/ds-input-time.js +43 -0
  32. package/dist/angular/ds-input.d.ts +1 -1
  33. package/dist/angular/ds-input.js +3 -3
  34. package/dist/angular/ds-select.d.ts +1 -1
  35. package/dist/angular/ds-select.js +3 -3
  36. package/dist/angular/ds-table.d.ts +7 -7
  37. package/dist/angular/ds-table.js +6 -6
  38. package/dist/angular/ds-time-picker.d.ts +15 -0
  39. package/dist/angular/ds-time-picker.js +43 -0
  40. package/dist/angular/index.d.ts +1 -1
  41. package/dist/angular/index.js +13 -7
  42. package/dist/angular/proxies.d.ts +13 -7
  43. package/dist/angular/proxies.js +13 -7
  44. package/dist/angular/text-value-accessor.d.ts +1 -1
  45. package/dist/angular/text-value-accessor.js +2 -2
  46. package/dist/components/ds-agent-activity.js +1 -1
  47. package/dist/components/ds-agent-questionnaire.js +1 -1
  48. package/dist/components/ds-agent-response.js +1 -1
  49. package/dist/components/ds-agent-source-list.js +1 -1
  50. package/dist/components/ds-agent-tool-call.js +1 -1
  51. package/dist/components/ds-attachment-list.js +1 -1
  52. package/dist/components/ds-avatar.js +1 -1
  53. package/dist/components/ds-badge.js +1 -1
  54. package/dist/components/ds-banner.js +1 -1
  55. package/dist/components/ds-bar-action.js +1 -1
  56. package/dist/components/ds-bar-nav.js +1 -1
  57. package/dist/components/ds-bar-page-title.js +1 -1
  58. package/dist/components/ds-bar-title.js +1 -1
  59. package/dist/components/ds-bar-workflow.js +1 -1
  60. package/dist/components/ds-breadcrumb.js +1 -1
  61. package/dist/components/ds-button-filled.js +1 -1
  62. package/dist/components/ds-button-inverted.d.ts +11 -0
  63. package/dist/components/ds-button-inverted.js +2 -0
  64. package/dist/components/ds-button-inverted.js.map +1 -0
  65. package/dist/components/ds-button-unfilled.js +1 -1
  66. package/dist/components/{ds-table-search.d.ts → ds-calendar.d.ts} +4 -4
  67. package/dist/components/ds-calendar.js +2 -0
  68. package/dist/components/ds-card-action-center.js +1 -1
  69. package/dist/components/ds-card-chart.js +1 -1
  70. package/dist/components/ds-card-navigation.js +1 -1
  71. package/dist/components/ds-card-navigation.js.map +1 -1
  72. package/dist/components/ds-card-overview.js +1 -1
  73. package/dist/components/ds-card-setting.js +1 -1
  74. package/dist/components/ds-card-settings-scope.js +1 -1
  75. package/dist/components/ds-card-settings-scope.js.map +1 -1
  76. package/dist/components/ds-chart-legend.js +1 -1
  77. package/dist/components/ds-chart.js +1 -1
  78. package/dist/components/ds-checkbox.js +1 -1
  79. package/dist/components/ds-chip.js +1 -1
  80. package/dist/components/ds-code-block.js +1 -1
  81. package/dist/components/ds-conversation-list-item.js +1 -1
  82. package/dist/components/ds-conversation-list-item.js.map +1 -1
  83. package/dist/components/ds-conversation-list-section.js +1 -1
  84. package/dist/components/ds-conversation-list.js +1 -1
  85. package/dist/components/ds-conversation-list.js.map +1 -1
  86. package/dist/components/ds-data-customize.d.ts +11 -0
  87. package/dist/components/ds-data-customize.js +2 -0
  88. package/dist/components/ds-data-customize.js.map +1 -0
  89. package/dist/components/{ds-table-group.d.ts → ds-data-filter.d.ts} +4 -4
  90. package/dist/components/ds-data-filter.js +2 -0
  91. package/dist/components/ds-data-filter.js.map +1 -0
  92. package/dist/components/{ds-table-sort.d.ts → ds-data-group.d.ts} +4 -4
  93. package/dist/components/ds-data-group.js +2 -0
  94. package/dist/components/ds-data-group.js.map +1 -0
  95. package/dist/components/{ds-table-saved-views.d.ts → ds-data-preferences.d.ts} +4 -4
  96. package/dist/components/ds-data-preferences.js +2 -0
  97. package/dist/components/ds-data-preferences.js.map +1 -0
  98. package/dist/components/ds-data-saved-views.d.ts +11 -0
  99. package/dist/components/ds-data-saved-views.js +2 -0
  100. package/dist/components/ds-data-saved-views.js.map +1 -0
  101. package/dist/components/ds-data-search.d.ts +11 -0
  102. package/dist/components/ds-data-search.js +2 -0
  103. package/dist/components/ds-data-search.js.map +1 -0
  104. package/dist/components/ds-data-sort.d.ts +11 -0
  105. package/dist/components/ds-data-sort.js +2 -0
  106. package/dist/components/ds-data-sort.js.map +1 -0
  107. package/dist/components/{ds-table-filter.d.ts → ds-data-toolbar.d.ts} +4 -4
  108. package/dist/components/ds-data-toolbar.js +2 -0
  109. package/dist/components/ds-data-toolbar.js.map +1 -0
  110. package/dist/components/ds-divider.js +1 -1
  111. package/dist/components/ds-empty-state.js +1 -1
  112. package/dist/components/ds-field.js +1 -1
  113. package/dist/components/ds-filter-menu.js +1 -1
  114. package/dist/components/ds-icon.js +1 -1
  115. package/dist/components/ds-input-date.d.ts +11 -0
  116. package/dist/components/ds-input-date.js +2 -0
  117. package/dist/components/ds-input-date.js.map +1 -0
  118. package/dist/components/ds-input-time.d.ts +11 -0
  119. package/dist/components/ds-input-time.js +2 -0
  120. package/dist/components/ds-input-time.js.map +1 -0
  121. package/dist/components/ds-input.js +1 -1
  122. package/dist/components/ds-markdown.js +1 -1
  123. package/dist/components/ds-menu.js +1 -1
  124. package/dist/components/ds-message-actions.js +1 -1
  125. package/dist/components/ds-message-bubble.js +1 -1
  126. package/dist/components/ds-message-bubble.js.map +1 -1
  127. package/dist/components/ds-message-composer.js +1 -1
  128. package/dist/components/ds-message-composer.js.map +1 -1
  129. package/dist/components/ds-message-scroller.js +1 -1
  130. package/dist/components/ds-message.js +1 -1
  131. package/dist/components/ds-mobile-bar-nav.js +1 -1
  132. package/dist/components/ds-mobile-header.js +1 -1
  133. package/dist/components/ds-mobile-section-switcher.js +1 -1
  134. package/dist/components/ds-mobile-sheet-nav.js +1 -1
  135. package/dist/components/ds-modal.js +1 -1
  136. package/dist/components/ds-pagination.js +1 -1
  137. package/dist/components/ds-panel-nav.js +1 -1
  138. package/dist/components/ds-panel-sub-nav.js +1 -1
  139. package/dist/components/ds-panel-tool-header.js +1 -1
  140. package/dist/components/ds-panel-tool-search.js +1 -1
  141. package/dist/components/ds-panel-tools.js +1 -1
  142. package/dist/components/ds-paper-texture.js +1 -1
  143. package/dist/components/ds-radio.js +1 -1
  144. package/dist/components/ds-score.js +1 -1
  145. package/dist/components/ds-scroll-overlay.js +1 -1
  146. package/dist/components/ds-select.js +1 -1
  147. package/dist/components/ds-shell-app.js +1 -1
  148. package/dist/components/ds-shell-page.js +1 -1
  149. package/dist/components/ds-shell-tools.js +1 -1
  150. package/dist/components/ds-skeleton.js +1 -1
  151. package/dist/components/ds-slider.js +1 -1
  152. package/dist/components/ds-slider.js.map +1 -1
  153. package/dist/components/ds-swatch-picker.js +1 -1
  154. package/dist/components/ds-switch.js +1 -1
  155. package/dist/components/ds-tab-group.js +1 -1
  156. package/dist/components/ds-table.js +1 -1
  157. package/dist/components/ds-table.js.map +1 -1
  158. package/dist/components/ds-tag.js +1 -1
  159. package/dist/components/ds-text.js +1 -1
  160. package/dist/components/ds-textarea.js +1 -1
  161. package/dist/components/ds-textarea.js.map +1 -1
  162. package/dist/components/ds-time-picker.d.ts +11 -0
  163. package/dist/components/ds-time-picker.js +2 -0
  164. package/dist/components/ds-time-picker.js.map +1 -0
  165. package/dist/components/ds-toast.js +1 -1
  166. package/dist/components/ds-tooltip-chart.js +1 -1
  167. package/dist/components/ds-tooltip.js +1 -1
  168. package/dist/components/ds-typing-indicator.js +1 -1
  169. package/dist/components/index.d.ts +5 -5
  170. package/dist/components/p-0FYD2bev.js +2 -0
  171. package/dist/components/p-0FYD2bev.js.map +1 -0
  172. package/dist/components/p-0qY_HDId.js +2 -0
  173. package/dist/components/{p-D_u8WhlU.js.map → p-0qY_HDId.js.map} +1 -1
  174. package/dist/components/{p-BQsVI_vO.js → p-5URekSny.js} +2 -2
  175. package/dist/components/{p-eo_pmPqp.js → p-7V1AhetH.js} +2 -2
  176. package/dist/components/{p-yZRXPHDe.js → p-8yBdCXCn.js} +2 -2
  177. package/dist/components/p-BKZdqJQB.js +2 -0
  178. package/dist/components/p-BKZdqJQB.js.map +1 -0
  179. package/dist/components/p-BYrBU_U9.js +2 -0
  180. package/dist/components/p-BYrBU_U9.js.map +1 -0
  181. package/dist/components/{p-D44g2Kw1.js → p-BciTtTwx.js} +2 -2
  182. package/dist/components/p-BciTtTwx.js.map +1 -0
  183. package/dist/components/{p-CZOiTaNa.js → p-BeNa6tw5.js} +2 -2
  184. package/dist/components/{p-CZOiTaNa.js.map → p-BeNa6tw5.js.map} +1 -1
  185. package/dist/components/p-BgQMEHRa.js +2 -0
  186. package/dist/components/{p-CwqFJMvP.js.map → p-BgQMEHRa.js.map} +1 -1
  187. package/dist/components/{p-BQaO7cg_.js → p-BhJXmuRA.js} +2 -2
  188. package/dist/components/{p-n68x-ZKp.js → p-Bm7rqs3C.js} +2 -2
  189. package/dist/components/{p-DdspY23v.js → p-Bn8I7iw6.js} +2 -2
  190. package/dist/components/{p-BnWxbhFP.js → p-Bpd6YCo4.js} +2 -2
  191. package/dist/components/{p-B-9fdIWv.js → p-C-3YqeTb.js} +2 -2
  192. package/dist/components/{p-umAf0fBn.js → p-CD4DZPy_.js} +2 -2
  193. package/dist/components/p-CElUM-xU.js +2 -0
  194. package/dist/components/p-CElUM-xU.js.map +1 -0
  195. package/dist/components/{p-CuwopElg.js → p-CGidq1iC.js} +2 -2
  196. package/dist/components/p-CNxvnQ6A.js +2 -0
  197. package/dist/components/p-CNxvnQ6A.js.map +1 -0
  198. package/dist/components/{p-CI7VfYC3.js → p-CUcUHwI3.js} +2 -2
  199. package/dist/components/p-CYzFfFcH.js +2 -0
  200. package/dist/components/{p-BINSI_KF.js.map → p-CYzFfFcH.js.map} +1 -1
  201. package/dist/components/{p-Dhw_W8nk.js → p-Cc3ZUQlJ.js} +2 -2
  202. package/dist/components/p-Cc3ZUQlJ.js.map +1 -0
  203. package/dist/components/p-CdgOLWX9.js +2 -0
  204. package/dist/components/p-CdgOLWX9.js.map +1 -0
  205. package/dist/components/{p-BcdHgPi5.js → p-CeXf9-X3.js} +2 -2
  206. package/dist/components/{p-CSnsz3Eb.js → p-CiH4GG6r.js} +2 -2
  207. package/dist/components/{p-y06IxxoN.js → p-CiJ1WR11.js} +2 -2
  208. package/dist/components/p-CmexIVnE.js +2 -0
  209. package/dist/components/{p-N5SHSVo2.js.map → p-CmexIVnE.js.map} +1 -1
  210. package/dist/components/{p-BmFeeR4q.js → p-CqW2eyiF.js} +2 -2
  211. package/dist/components/{p-CzbsTZt7.js → p-Cxr0IQjC.js} +2 -2
  212. package/dist/components/{p-CqlBlv55.js → p-CzIpquvw.js} +2 -2
  213. package/dist/components/{p-DC69DgAR.js → p-D0y7Sja6.js} +2 -2
  214. package/dist/components/{p-Cwz9TPVS.js → p-D1vQGJzc.js} +2 -2
  215. package/dist/components/{p-Cwz9TPVS.js.map → p-D1vQGJzc.js.map} +1 -1
  216. package/dist/components/{p-C7CZ9pnP.js → p-D6Wl3dRO.js} +2 -2
  217. package/dist/components/{p-BPhbwXOv.js → p-D922f6Tb.js} +2 -2
  218. package/dist/components/{p-beRFLHbB.js → p-DHICPS4n.js} +2 -2
  219. package/dist/components/{p-omPm8_vx.js → p-DOAybCp0.js} +2 -2
  220. package/dist/components/{p-DEGNrPLe.js → p-DVINzOoK.js} +2 -2
  221. package/dist/components/{p-DEGNrPLe.js.map → p-DVINzOoK.js.map} +1 -1
  222. package/dist/components/p-DVOjjuXc.js +2 -0
  223. package/dist/components/p-DVOjjuXc.js.map +1 -0
  224. package/dist/components/p-Di5FH7eh.js +2 -0
  225. package/dist/components/p-Di5FH7eh.js.map +1 -0
  226. package/dist/components/p-DjkUFlDW.js +2 -0
  227. package/dist/components/p-DjkUFlDW.js.map +1 -0
  228. package/dist/components/{p-BnzsBNUY.js → p-Dn9QHL4O.js} +2 -2
  229. package/dist/components/{p-DGzn4k4h.js → p-Do2FJd1y.js} +2 -2
  230. package/dist/components/{p-DTDLlinw.js → p-DpoTwJAR.js} +2 -2
  231. package/dist/components/{p-Dk-8Ju0Q.js → p-Dpr2y6_S.js} +2 -2
  232. package/dist/components/{p-Dk-8Ju0Q.js.map → p-Dpr2y6_S.js.map} +1 -1
  233. package/dist/components/p-Dw9sE6Iw.js +2 -0
  234. package/dist/components/p-Dw9sE6Iw.js.map +1 -0
  235. package/dist/components/{p-CLGtPE0K.js → p-DwbcNDJF.js} +2 -2
  236. package/dist/components/p-Dzndkdx5.js +2 -0
  237. package/dist/components/{p-xHGqrz_p.js.map → p-Dzndkdx5.js.map} +1 -1
  238. package/dist/components/{p-C8ek-1SP.js → p-E5W27Fu_.js} +2 -2
  239. package/dist/components/{p-mpk_Mm8_.js → p-FIBCluwV.js} +2 -2
  240. package/dist/components/{p-DQQFN2sw.js → p-IEq_06J0.js} +2 -2
  241. package/dist/components/{p-DQQFN2sw.js.map → p-IEq_06J0.js.map} +1 -1
  242. package/dist/components/{p-CE540WZ7.js → p-MG4lcN0D.js} +2 -2
  243. package/dist/components/p-Nc76seSq.js +2 -0
  244. package/dist/components/p-Nc76seSq.js.map +1 -0
  245. package/dist/components/{p-DtLQIMsa.js → p-ZhP2tVmM.js} +2 -2
  246. package/dist/components/p-aD5cw_m2.js +2 -0
  247. package/dist/components/p-aD5cw_m2.js.map +1 -0
  248. package/dist/components/p-etifxiDc.js +2 -0
  249. package/dist/components/{p-beCz9OnD.js.map → p-etifxiDc.js.map} +1 -1
  250. package/dist/components/p-kDZ0sEII.js +2 -0
  251. package/dist/components/p-kDZ0sEII.js.map +1 -0
  252. package/dist/components/{p-BPlWEidl.js → p-ljbw3UMZ.js} +2 -2
  253. package/dist/components/{p-DZ58Sg5a.js → p-vfCu7XSc.js} +2 -2
  254. package/dist/components/p-vfCu7XSc.js.map +1 -0
  255. package/dist/components/{p-DFjIBS5B.js → p-xdmJCPCg.js} +2 -2
  256. package/dist/components/{p-CAxDdYjh.js → p-xtGGIZmU.js} +2 -2
  257. package/dist/docs/components.json +18102 -14568
  258. package/dist/lib/components/Icon/flag-icon-catalog.d.ts +2 -0
  259. package/dist/lib/components/Icon/icon-cache.d.ts +36 -4
  260. package/dist/lib/components/Icon/map-icon-catalog.d.ts +2 -0
  261. package/dist/lib/shell/index.js +2 -2
  262. package/dist/lib/shell/index.js.map +1 -1
  263. package/dist/lib/utils/button-render.d.ts +1 -1
  264. package/dist/lib/utils/clock-time.d.ts +22 -0
  265. package/dist/lib/utils/date-filter-value.d.ts +4 -0
  266. package/dist/lib/utils/index.d.ts +3 -1
  267. package/dist/lib/utils/index.js +201 -5
  268. package/dist/lib/utils/index.js.map +4 -4
  269. package/dist/mcp-data/registry/agent-activity.json +2 -2
  270. package/dist/mcp-data/registry/agent-questionnaire.json +2 -2
  271. package/dist/mcp-data/registry/agent-response.json +1 -1
  272. package/dist/mcp-data/registry/agent-source-list.json +1 -1
  273. package/dist/mcp-data/registry/agent-tool-call.json +2 -2
  274. package/dist/mcp-data/registry/attachment-list.json +1 -1
  275. package/dist/mcp-data/registry/avatar.json +1 -1
  276. package/dist/mcp-data/registry/badge.json +1 -1
  277. package/dist/mcp-data/registry/banner.json +1 -1
  278. package/dist/mcp-data/registry/bar-action.json +1 -1
  279. package/dist/mcp-data/registry/bar-nav.json +1 -1
  280. package/dist/mcp-data/registry/bar-page-title.json +1 -1
  281. package/dist/mcp-data/registry/bar-title.json +3 -3
  282. package/dist/mcp-data/registry/bar-workflow.json +1 -1
  283. package/dist/mcp-data/registry/breadcrumb.json +1 -1
  284. package/dist/mcp-data/registry/button-filled.json +1 -1
  285. package/dist/mcp-data/registry/button-inverted.json +580 -0
  286. package/dist/mcp-data/registry/button-unfilled.json +1 -1
  287. package/dist/mcp-data/registry/calendar.json +273 -0
  288. package/dist/mcp-data/registry/card-action-center.json +1 -1
  289. package/dist/mcp-data/registry/card-chart.json +1 -1
  290. package/dist/mcp-data/registry/card-navigation.json +5 -3
  291. package/dist/mcp-data/registry/card-overview.json +1 -1
  292. package/dist/mcp-data/registry/card-setting.json +1 -1
  293. package/dist/mcp-data/registry/card-settings-scope.json +1 -1
  294. package/dist/mcp-data/registry/chart-legend.json +1 -1
  295. package/dist/mcp-data/registry/chart.json +1 -1
  296. package/dist/mcp-data/registry/checkbox.json +1 -1
  297. package/dist/mcp-data/registry/chip.json +1 -1
  298. package/dist/mcp-data/registry/code-block.json +1 -1
  299. package/dist/mcp-data/registry/conversation-list-item.json +1 -1
  300. package/dist/mcp-data/registry/conversation-list-section.json +1 -1
  301. package/dist/mcp-data/registry/conversation-list.json +10 -32
  302. package/dist/mcp-data/registry/data-customize.json +374 -0
  303. package/dist/mcp-data/registry/{table-filter.json → data-filter.json} +33 -33
  304. package/dist/mcp-data/registry/data-group.json +358 -0
  305. package/dist/mcp-data/registry/data-preferences.json +566 -0
  306. package/dist/mcp-data/registry/data-saved-views.json +433 -0
  307. package/dist/mcp-data/registry/data-search.json +367 -0
  308. package/dist/mcp-data/registry/data-sort.json +254 -0
  309. package/dist/mcp-data/registry/data-toolbar.json +181 -0
  310. package/dist/mcp-data/registry/divider.json +1 -1
  311. package/dist/mcp-data/registry/empty-state.json +1 -1
  312. package/dist/mcp-data/registry/field.json +20 -15
  313. package/dist/mcp-data/registry/filter-menu.json +7 -11
  314. package/dist/mcp-data/registry/icon.json +13 -7
  315. package/dist/mcp-data/registry/input-date.json +516 -0
  316. package/dist/mcp-data/registry/input-time.json +535 -0
  317. package/dist/mcp-data/registry/input.json +57 -9
  318. package/dist/mcp-data/registry/loader.json +1 -1
  319. package/dist/mcp-data/registry/markdown.json +1 -1
  320. package/dist/mcp-data/registry/menu.json +3 -3
  321. package/dist/mcp-data/registry/message-actions.json +1 -1
  322. package/dist/mcp-data/registry/message-bubble.json +1 -1
  323. package/dist/mcp-data/registry/message-composer.json +2 -2
  324. package/dist/mcp-data/registry/message-scroller.json +1 -1
  325. package/dist/mcp-data/registry/message.json +1 -1
  326. package/dist/mcp-data/registry/mobile-bar-nav.json +2 -2
  327. package/dist/mcp-data/registry/mobile-header.json +1 -1
  328. package/dist/mcp-data/registry/mobile-section-switcher.json +1 -1
  329. package/dist/mcp-data/registry/mobile-sheet-nav.json +2 -2
  330. package/dist/mcp-data/registry/modal.json +1 -1
  331. package/dist/mcp-data/registry/pagination.json +1 -1
  332. package/dist/mcp-data/registry/panel-nav.json +1 -1
  333. package/dist/mcp-data/registry/panel-sub-nav.json +1 -1
  334. package/dist/mcp-data/registry/panel-tool-header.json +1 -1
  335. package/dist/mcp-data/registry/panel-tool-search.json +1 -1
  336. package/dist/mcp-data/registry/panel-tools.json +3 -3
  337. package/dist/mcp-data/registry/paper-texture.json +1 -1
  338. package/dist/mcp-data/registry/radio.json +1 -1
  339. package/dist/mcp-data/registry/registry.json +5911 -4816
  340. package/dist/mcp-data/registry/score.json +1 -1
  341. package/dist/mcp-data/registry/scroll-overlay.json +1 -1
  342. package/dist/mcp-data/registry/select.json +64 -8
  343. package/dist/mcp-data/registry/shell-app.json +1 -1
  344. package/dist/mcp-data/registry/shell-page.json +1 -1
  345. package/dist/mcp-data/registry/shell-tools.json +1 -1
  346. package/dist/mcp-data/registry/skeleton.json +1 -1
  347. package/dist/mcp-data/registry/slider.json +1 -1
  348. package/dist/mcp-data/registry/swatch-picker.json +1 -1
  349. package/dist/mcp-data/registry/switch.json +1 -1
  350. package/dist/mcp-data/registry/tab-group.json +1 -1
  351. package/dist/mcp-data/registry/table.json +71 -71
  352. package/dist/mcp-data/registry/tag.json +1 -1
  353. package/dist/mcp-data/registry/text.json +1 -1
  354. package/dist/mcp-data/registry/textarea.json +3 -3
  355. package/dist/mcp-data/registry/time-picker.json +259 -0
  356. package/dist/mcp-data/registry/toast.json +1 -1
  357. package/dist/mcp-data/registry/tooltip-chart.json +1 -1
  358. package/dist/mcp-data/registry/tooltip.json +1 -1
  359. package/dist/mcp-data/registry/typing-indicator.json +1 -1
  360. package/dist/react/components.d.ts +13 -7
  361. package/dist/react/components.js +13 -7
  362. package/dist/react/ds-button-inverted.d.ts +13 -0
  363. package/dist/react/ds-button-inverted.js +15 -0
  364. package/dist/react/ds-calendar.d.ts +12 -0
  365. package/dist/react/ds-calendar.js +12 -0
  366. package/dist/react/ds-data-customize.d.ts +13 -0
  367. package/dist/react/ds-data-customize.js +15 -0
  368. package/dist/react/ds-data-filter.d.ts +18 -0
  369. package/dist/react/{ds-table-filter.js → ds-data-filter.js} +5 -5
  370. package/dist/react/ds-data-group.d.ts +14 -0
  371. package/dist/react/{ds-table-group.js → ds-data-group.js} +5 -5
  372. package/dist/react/ds-data-preferences.d.ts +21 -0
  373. package/dist/react/{ds-table-preferences.js → ds-data-preferences.js} +6 -6
  374. package/dist/react/ds-data-saved-views.d.ts +17 -0
  375. package/dist/react/{ds-table-saved-views.js → ds-data-saved-views.js} +5 -5
  376. package/dist/react/ds-data-search.d.ts +14 -0
  377. package/dist/react/{ds-table-search.js → ds-data-search.js} +5 -5
  378. package/dist/react/ds-data-sort.d.ts +12 -0
  379. package/dist/react/ds-data-sort.js +12 -0
  380. package/dist/react/{ds-table-toolbar.d.ts → ds-data-toolbar.d.ts} +3 -3
  381. package/dist/react/ds-data-toolbar.js +12 -0
  382. package/dist/react/ds-field.d.ts +1 -1
  383. package/dist/react/ds-input-date.d.ts +12 -0
  384. package/dist/react/ds-input-date.js +12 -0
  385. package/dist/react/ds-input-time.d.ts +12 -0
  386. package/dist/react/ds-input-time.js +12 -0
  387. package/dist/react/ds-table.d.ts +3 -3
  388. package/dist/react/ds-table.js +1 -1
  389. package/dist/react/ds-time-picker.d.ts +12 -0
  390. package/dist/react/ds-time-picker.js +12 -0
  391. package/dist/styles/table.css +11 -11
  392. package/dist/types/components/BarTitle/BarTitle.d.ts +1 -0
  393. package/dist/types/components/BarTitle/bar-title-action-chrome.d.ts +2 -0
  394. package/dist/types/components/ButtonInverted/ButtonInverted.d.ts +83 -0
  395. package/dist/types/components/ButtonInverted/index.d.ts +2 -0
  396. package/dist/types/components/Calendar/Calendar.d.ts +32 -0
  397. package/dist/types/components/Calendar/calendar-grid.d.ts +19 -0
  398. package/dist/types/components/ConversationList/ConversationList.d.ts +0 -7
  399. package/dist/types/components/DataCustomize/DataCustomize.d.ts +67 -0
  400. package/dist/types/components/{TableFilter/TableFilter.d.ts → DataFilter/DataFilter.d.ts} +2 -2
  401. package/dist/types/components/{TableGroup/TableGroup.d.ts → DataGroup/DataGroup.d.ts} +8 -8
  402. package/dist/types/components/{TablePreferences/TablePreferences.d.ts → DataPreferences/DataPreferences.d.ts} +29 -13
  403. package/dist/types/components/{TableSavedViews/TableSavedViews.d.ts → DataSavedViews/DataSavedViews.d.ts} +10 -10
  404. package/dist/types/components/DataSavedViews/data-saved-views-types.d.ts +24 -0
  405. package/dist/types/components/DataSavedViews/index.d.ts +2 -0
  406. package/dist/types/components/{TableSearch/TableSearch.d.ts → DataSearch/DataSearch.d.ts} +6 -6
  407. package/dist/types/components/{TableSearch/table-search-model.d.ts → DataSearch/data-search-model.d.ts} +6 -6
  408. package/dist/types/components/{TableSearch/table-search-types.d.ts → DataSearch/data-search-types.d.ts} +3 -3
  409. package/dist/types/components/{TableSort/TableSort.d.ts → DataSort/DataSort.d.ts} +7 -6
  410. package/dist/types/components/DataSort/data-sort-menu.d.ts +15 -0
  411. package/dist/types/components/{TableToolbar/TableToolbar.d.ts → DataToolbar/DataToolbar.d.ts} +3 -3
  412. package/dist/types/components/Field/Field.d.ts +7 -2
  413. package/dist/types/components/FilterMenu/FilterMenu.d.ts +0 -10
  414. package/dist/types/components/Icon/icon-cache.d.ts +36 -4
  415. package/dist/types/components/Icon/map-icon-catalog.d.ts +3 -0
  416. package/dist/types/components/Input/Input.d.ts +10 -0
  417. package/dist/types/components/InputDate/InputDate.d.ts +78 -0
  418. package/dist/types/components/InputTime/InputTime.d.ts +80 -0
  419. package/dist/types/components/PanelTools/PanelTools.d.ts +1 -1
  420. package/dist/types/components/Select/Select.d.ts +8 -1
  421. package/dist/types/components/Table/Table.d.ts +9 -9
  422. package/dist/types/components/Table/index.d.ts +1 -1
  423. package/dist/types/components/Table/table-action-menu.d.ts +1 -1
  424. package/dist/types/components/Table/table-body-renderer.d.ts +2 -2
  425. package/dist/types/components/Table/table-column-customizer.d.ts +9 -9
  426. package/dist/types/components/Table/table-group-load-controller.d.ts +2 -2
  427. package/dist/types/components/Table/table-model.d.ts +7 -7
  428. package/dist/types/components/Table/table-render-model.d.ts +3 -3
  429. package/dist/types/components/Table/table-types.d.ts +17 -36
  430. package/dist/types/components/Table/table-virtual-model.d.ts +2 -2
  431. package/dist/types/components/TimePicker/TimePicker.d.ts +33 -0
  432. package/dist/types/components.d.ts +5461 -4433
  433. package/dist/types/utils/button-render.d.ts +1 -1
  434. package/dist/types/utils/clock-time.d.ts +23 -0
  435. package/dist/types/utils/data-field.d.ts +38 -0
  436. package/dist/types/utils/date-filter-value.d.ts +4 -0
  437. package/dist/types/utils/index.d.ts +3 -1
  438. package/dist/types/utils/list-customizer.d.ts +38 -0
  439. package/dist/types/utils/table-caption-compact.d.ts +1 -1
  440. package/dist/vue/components.d.ts +13 -7
  441. package/dist/vue/components.js +13 -7
  442. package/dist/vue/ds-button-inverted.d.ts +3 -0
  443. package/dist/vue/ds-button-inverted.js +33 -0
  444. package/dist/vue/{ds-table-sort.d.ts → ds-calendar.d.ts} +1 -1
  445. package/dist/vue/ds-calendar.js +16 -0
  446. package/dist/vue/ds-conversation-list.js +1 -3
  447. package/dist/vue/ds-data-customize.d.ts +3 -0
  448. package/dist/vue/ds-data-customize.js +23 -0
  449. package/dist/vue/{ds-table-group.d.ts → ds-data-filter.d.ts} +1 -1
  450. package/dist/vue/{ds-table-filter.js → ds-data-filter.js} +2 -2
  451. package/dist/vue/{ds-table-filter.d.ts → ds-data-group.d.ts} +1 -1
  452. package/dist/vue/{ds-table-group.js → ds-data-group.js} +2 -2
  453. package/dist/vue/{ds-table-saved-views.d.ts → ds-data-preferences.d.ts} +1 -1
  454. package/dist/vue/{ds-table-preferences.js → ds-data-preferences.js} +10 -7
  455. package/dist/vue/ds-data-saved-views.d.ts +3 -0
  456. package/dist/vue/{ds-table-saved-views.js → ds-data-saved-views.js} +2 -2
  457. package/dist/vue/{ds-table-search.d.ts → ds-data-search.d.ts} +1 -1
  458. package/dist/vue/{ds-table-search.js → ds-data-search.js} +3 -3
  459. package/dist/vue/ds-data-sort.d.ts +3 -0
  460. package/dist/vue/{ds-table-sort.js → ds-data-sort.js} +3 -3
  461. package/dist/vue/ds-data-toolbar.d.ts +3 -0
  462. package/dist/vue/ds-data-toolbar.js +9 -0
  463. package/dist/vue/{ds-table-preferences.d.ts → ds-input-date.d.ts} +1 -1
  464. package/dist/vue/ds-input-date.js +31 -0
  465. package/dist/vue/ds-input-time.d.ts +3 -0
  466. package/dist/vue/ds-input-time.js +32 -0
  467. package/dist/vue/ds-input.js +2 -0
  468. package/dist/vue/ds-select.js +3 -0
  469. package/dist/vue/ds-table.js +4 -4
  470. package/dist/vue/ds-time-picker.d.ts +3 -0
  471. package/dist/vue/ds-time-picker.js +16 -0
  472. package/package.json +3 -3
  473. package/dist/angular/ds-table-filter.d.ts +0 -50
  474. package/dist/angular/ds-table-group.d.ts +0 -29
  475. package/dist/angular/ds-table-preferences.d.ts +0 -39
  476. package/dist/angular/ds-table-saved-views.d.ts +0 -49
  477. package/dist/angular/ds-table-search.d.ts +0 -20
  478. package/dist/angular/ds-table-sort.d.ts +0 -16
  479. package/dist/angular/ds-table-toolbar.d.ts +0 -12
  480. package/dist/components/ds-table-filter.js +0 -2
  481. package/dist/components/ds-table-filter.js.map +0 -1
  482. package/dist/components/ds-table-group.js +0 -2
  483. package/dist/components/ds-table-preferences.d.ts +0 -11
  484. package/dist/components/ds-table-preferences.js +0 -2
  485. package/dist/components/ds-table-preferences.js.map +0 -1
  486. package/dist/components/ds-table-saved-views.js +0 -2
  487. package/dist/components/ds-table-saved-views.js.map +0 -1
  488. package/dist/components/ds-table-search.js +0 -2
  489. package/dist/components/ds-table-search.js.map +0 -1
  490. package/dist/components/ds-table-sort.js +0 -2
  491. package/dist/components/ds-table-sort.js.map +0 -1
  492. package/dist/components/ds-table-toolbar.d.ts +0 -11
  493. package/dist/components/ds-table-toolbar.js +0 -2
  494. package/dist/components/ds-table-toolbar.js.map +0 -1
  495. package/dist/components/p-BINSI_KF.js +0 -2
  496. package/dist/components/p-BbfBvMRR.js +0 -2
  497. package/dist/components/p-BbfBvMRR.js.map +0 -1
  498. package/dist/components/p-C1_3CVma.js +0 -2
  499. package/dist/components/p-C1_3CVma.js.map +0 -1
  500. package/dist/components/p-CKarsuR2.js +0 -2
  501. package/dist/components/p-CKarsuR2.js.map +0 -1
  502. package/dist/components/p-Cea7rROU.js +0 -2
  503. package/dist/components/p-Cea7rROU.js.map +0 -1
  504. package/dist/components/p-Cmj04E5Q.js +0 -2
  505. package/dist/components/p-Cmj04E5Q.js.map +0 -1
  506. package/dist/components/p-Cq_Qpe_C.js +0 -2
  507. package/dist/components/p-Cq_Qpe_C.js.map +0 -1
  508. package/dist/components/p-CwqFJMvP.js +0 -2
  509. package/dist/components/p-D44g2Kw1.js.map +0 -1
  510. package/dist/components/p-DZ58Sg5a.js.map +0 -1
  511. package/dist/components/p-D_u8WhlU.js +0 -2
  512. package/dist/components/p-Dhw_W8nk.js.map +0 -1
  513. package/dist/components/p-FPZbS19l.js +0 -2
  514. package/dist/components/p-FPZbS19l.js.map +0 -1
  515. package/dist/components/p-KBrC9IG4.js +0 -2
  516. package/dist/components/p-KBrC9IG4.js.map +0 -1
  517. package/dist/components/p-N5SHSVo2.js +0 -2
  518. package/dist/components/p-QjkufCcn.js +0 -2
  519. package/dist/components/p-QjkufCcn.js.map +0 -1
  520. package/dist/components/p-UAIxh67Q.js +0 -2
  521. package/dist/components/p-UAIxh67Q.js.map +0 -1
  522. package/dist/components/p-beCz9OnD.js +0 -2
  523. package/dist/components/p-xHGqrz_p.js +0 -2
  524. package/dist/mcp-data/registry/table-group.json +0 -358
  525. package/dist/mcp-data/registry/table-preferences.json +0 -511
  526. package/dist/mcp-data/registry/table-saved-views.json +0 -431
  527. package/dist/mcp-data/registry/table-search.json +0 -366
  528. package/dist/mcp-data/registry/table-sort.json +0 -253
  529. package/dist/mcp-data/registry/table-toolbar.json +0 -180
  530. package/dist/react/ds-table-filter.d.ts +0 -18
  531. package/dist/react/ds-table-group.d.ts +0 -14
  532. package/dist/react/ds-table-preferences.d.ts +0 -21
  533. package/dist/react/ds-table-saved-views.d.ts +0 -17
  534. package/dist/react/ds-table-search.d.ts +0 -14
  535. package/dist/react/ds-table-sort.d.ts +0 -12
  536. package/dist/react/ds-table-sort.js +0 -12
  537. package/dist/react/ds-table-toolbar.js +0 -12
  538. package/dist/types/components/FilterMenu/filter-menu-calendar.d.ts +0 -13
  539. package/dist/types/components/TableSavedViews/index.d.ts +0 -2
  540. package/dist/types/components/TableSavedViews/table-saved-views-types.d.ts +0 -24
  541. package/dist/types/components/TableSort/table-sort-menu.d.ts +0 -15
  542. package/dist/vue/ds-table-toolbar.d.ts +0 -3
  543. package/dist/vue/ds-table-toolbar.js +0 -9
  544. /package/dist/components/{ds-table-group.js.map → ds-calendar.js.map} +0 -0
  545. /package/dist/components/{p-BQsVI_vO.js.map → p-5URekSny.js.map} +0 -0
  546. /package/dist/components/{p-eo_pmPqp.js.map → p-7V1AhetH.js.map} +0 -0
  547. /package/dist/components/{p-yZRXPHDe.js.map → p-8yBdCXCn.js.map} +0 -0
  548. /package/dist/components/{p-BQaO7cg_.js.map → p-BhJXmuRA.js.map} +0 -0
  549. /package/dist/components/{p-n68x-ZKp.js.map → p-Bm7rqs3C.js.map} +0 -0
  550. /package/dist/components/{p-DdspY23v.js.map → p-Bn8I7iw6.js.map} +0 -0
  551. /package/dist/components/{p-BnWxbhFP.js.map → p-Bpd6YCo4.js.map} +0 -0
  552. /package/dist/components/{p-B-9fdIWv.js.map → p-C-3YqeTb.js.map} +0 -0
  553. /package/dist/components/{p-umAf0fBn.js.map → p-CD4DZPy_.js.map} +0 -0
  554. /package/dist/components/{p-CuwopElg.js.map → p-CGidq1iC.js.map} +0 -0
  555. /package/dist/components/{p-CI7VfYC3.js.map → p-CUcUHwI3.js.map} +0 -0
  556. /package/dist/components/{p-BcdHgPi5.js.map → p-CeXf9-X3.js.map} +0 -0
  557. /package/dist/components/{p-CSnsz3Eb.js.map → p-CiH4GG6r.js.map} +0 -0
  558. /package/dist/components/{p-y06IxxoN.js.map → p-CiJ1WR11.js.map} +0 -0
  559. /package/dist/components/{p-BmFeeR4q.js.map → p-CqW2eyiF.js.map} +0 -0
  560. /package/dist/components/{p-CzbsTZt7.js.map → p-Cxr0IQjC.js.map} +0 -0
  561. /package/dist/components/{p-CqlBlv55.js.map → p-CzIpquvw.js.map} +0 -0
  562. /package/dist/components/{p-DC69DgAR.js.map → p-D0y7Sja6.js.map} +0 -0
  563. /package/dist/components/{p-C7CZ9pnP.js.map → p-D6Wl3dRO.js.map} +0 -0
  564. /package/dist/components/{p-BPhbwXOv.js.map → p-D922f6Tb.js.map} +0 -0
  565. /package/dist/components/{p-beRFLHbB.js.map → p-DHICPS4n.js.map} +0 -0
  566. /package/dist/components/{p-omPm8_vx.js.map → p-DOAybCp0.js.map} +0 -0
  567. /package/dist/components/{p-BnzsBNUY.js.map → p-Dn9QHL4O.js.map} +0 -0
  568. /package/dist/components/{p-DGzn4k4h.js.map → p-Do2FJd1y.js.map} +0 -0
  569. /package/dist/components/{p-DTDLlinw.js.map → p-DpoTwJAR.js.map} +0 -0
  570. /package/dist/components/{p-CLGtPE0K.js.map → p-DwbcNDJF.js.map} +0 -0
  571. /package/dist/components/{p-C8ek-1SP.js.map → p-E5W27Fu_.js.map} +0 -0
  572. /package/dist/components/{p-mpk_Mm8_.js.map → p-FIBCluwV.js.map} +0 -0
  573. /package/dist/components/{p-CE540WZ7.js.map → p-MG4lcN0D.js.map} +0 -0
  574. /package/dist/components/{p-DtLQIMsa.js.map → p-ZhP2tVmM.js.map} +0 -0
  575. /package/dist/components/{p-BPlWEidl.js.map → p-ljbw3UMZ.js.map} +0 -0
  576. /package/dist/components/{p-DFjIBS5B.js.map → p-xdmJCPCg.js.map} +0 -0
  577. /package/dist/components/{p-CAxDdYjh.js.map → p-xtGGIZmU.js.map} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"names":["isMenuSwatchPickerSection","section","variant","isMenuPickerSection","snapshotMenuSections","sections","map","options","option","swatchSection","items","item","menuReorderableRange","index","reorderable","start","end","length","moveReorderableMenuItemBefore","fromIndex","insertBefore","range","clamped","Math","min","max","toIndex","next","splice","moveReorderableMenuItemBy","offset","locateMenuItem","flatIndex","remaining","sectionIndex","itemIndex","createMenuReorderDetail","nextItems","indexOf","value","matched","findIndex","candidate","menuCss","menuId","MENU_ITEM_TAG_SIZE","lg","md","sm","xs","Menu","__stencil_proxyCustomElement","HTMLElement","constructor","registerHost","this","embedded","open","size","selectionMode","side","align","anchorAlignment","sideOffset","TOKEN_CSS_LENGTHS","space050","alignOffset","initialFocusVisible","menuLabel","emptyMessage","shouldRender","closing","pos","x","y","focusedIndex","positionReady","availableHeight","focusRingVisible","reorderFromFlat","reorderInsertBefore","reorderAnnouncement","closeTimer","suppressItemClick","reorderPointer","position","AnchoredPositionController","getAnchor","resolvedAnchor","getPopup","el","querySelector","getOwnerDocument","ownerDocument","measure","anchorEl","popup","anchorRect","getBoundingClientRect","sectionInsetPx","viewportPadPx","minWidth","style","choicePopupMinWidth","width","removeProperty","list","naturalPopupHeight","offsetHeight","scrollHeight","window","innerHeight","input","popupWidth","offsetWidth","popupFallbackWidthPx","popupHeight","popupFallbackHeightPx","sideOffsetPx","alignOffsetPx","resolveChoicePopupAlignOffset","viewportWidth","innerWidth","viewportHeight","collisionRect","resolveAnchoredOverlayBoundaryRect","boundary","unconstrained","computeAnchoredPosition","apply","onReady","liveUpdate","topLayer","observeResize","observeAnchorMotion","interaction","AnchoredOverlayInteractionController","onOutsideActivation","close","lastRenderedSections","closingSections","emptyMessageId","lastRenderedEmptyMessage","onReorderPointerMove","event","drag","pointerId","activeSections","resolveReorderInsertBefore","clientY","onReorderPointerUp","clearReorderPointer","queueMicrotask","emitReorder","onReorderPointerCancel","componentDidLoad","onOpenChange","disconnectedCallback","cancelPositionRetry","cancelLivePositionUpdate","teardownListeners","isOpen","setupListeners","schedulePositionUpdate","focusInitialItem","positionReadyCallback","undefined","captureClosingSections","closeAnimationMs","finishClose","setTimeout","onAnchorChange","onPositionPropsChange","resolveCssLengthPx","TOKEN_DEFAULTS","menuWidthXs","menuFallbackHeight","resolveMotionTimeMs","motionShort2","animationDurationShort3","matches","hidePopover","dsAfterClose","emit","visibleSections","anchor","anchorId","document","getElementById","compositeTabLeavesPopup","tabLeavesPopup","flatItems","flatMap","hasCompositeSections","some","cancel","scheduleLivePositionUpdate","scheduleLiveUpdate","callback","schedule","calculatePosition","update","trim","requestAnimationFrame","focus","flat","selectedIdx","it","isSelected","isInactive","firstEnabledIdx","btns","querySelectorAll","connect","observe","unobserve","disconnect","clearTimeout","restoreFocus","focusAnchor","dsClose","handleKeyDown","e","key","preventDefault","moveFocusAfterTab","shiftKey","altKey","ctrlKey","handleReorderKey","enabled","i","filter","cur","safe","stopPropagation","focusItem","idx","handleItemClick","dsSelect","handleSwatchSelect","dsSwatchSelect","located","detail","flatIndexFor","announceReorder","dsReorder","count","label","onReorderPointerDown","button","addEventListener","buttons","sectionStart","row","rect","top","height","removeEventListener","render","h","Host","display","showEmpty","Boolean","every","flatIdx","dragLocated","dragRange","popupStyle","left","transform","round","zIndex","visibility","menuWidth","floor","popover","class","role","tabIndex","textId","as","CONTROL_TEXT_VARIANT","color","si","header","CONTROL_SUPPORTING_TEXT_VARIANT","emphasis","groupLabel","onDsChange","isFocused","isSingleSelectionItem","showSwitch","usesLeading","icon","locked","dragging","dropBefore","dropAfter","type","isDestructive","String","switchValue","disabled","onMouseDown","onClick","onFocus","onPointerDown","name","subtext","tag","intent","contrast","rounded","isInset","dot","hasRing","checked","presentation"],"sources":["src/wc/components/Menu/menu-types.ts","src/wc/components/Menu/menu-sections.ts","src/wc/components/Menu/menu-reorder.ts","src/wc/components/Menu/Menu.css?tag=ds-menu&encapsulation=scoped","src/wc/components/Menu/Menu.tsx"],"sourcesContent":["import type { SwatchPickerOption, SwatchPickerSection } from '../SwatchPicker/swatch-picker-types';\nimport type { TagContrast, TagIntent } from '../Tag/Tag';\n\nexport type { MenuAlign, MenuSide } from './menu-position';\nexport {\n PANEL_NAV_USER_MENU_PLACEMENT,\n PANEL_TOOLS_HEADER_MENU_PLACEMENT,\n type MenuPlacement,\n} from './menu-placement';\n\nexport interface MenuItemTagData {\n label: string;\n intent?: TagIntent;\n contrast?: TagContrast;\n rounded?: boolean;\n}\n\nexport interface MenuItemData {\n label: string;\n value?: string;\n subtext?: string;\n /** Leading decorative icon. Ignored when `reorderable` is true. */\n icon?: string;\n /** Show a supplemental brand notification dot. */\n dot?: boolean;\n /** Show a non-interactive tag at the trailing edge of the row. */\n tag?: MenuItemTagData;\n isSelected?: boolean;\n isInactive?: boolean;\n isDestructive?: boolean;\n /** Render a compact switch indicator; the menu row owns interaction. */\n showSwitch?: boolean;\n switchValue?: boolean;\n /** Prefix a drag handle and allow pointer and keyboard reorder within the contiguous reorderable run. */\n reorderable?: boolean;\n}\n\n/** Next section item order after a pointer or keyboard reorder. */\nexport interface MenuReorderDetail {\n item: MenuItemData;\n fromIndex: number;\n toIndex: number;\n sectionIndex: number;\n items: MenuItemData[];\n}\n\nexport interface MenuItemsSection {\n header?: string;\n items: MenuItemData[];\n}\n\nexport interface MenuSwatchPickerSection {\n header?: string;\n variant: 'swatch-picker';\n value: string;\n options?: SwatchPickerOption[];\n sections?: SwatchPickerSection[];\n groupLabel?: string;\n}\n\nexport type MenuSection = MenuItemsSection | MenuSwatchPickerSection;\n\nexport function isMenuSwatchPickerSection(\n section: MenuSection\n): section is MenuSwatchPickerSection {\n return 'variant' in section && section.variant === 'swatch-picker';\n}\n\nexport function isMenuPickerSection(section: MenuSection): section is MenuSwatchPickerSection {\n return isMenuSwatchPickerSection(section);\n}\n\nexport type { SwatchPickerOption, SwatchPickerSection };\n","import type { MenuSection } from './menu-types';\nimport { isMenuSwatchPickerSection } from './menu-types';\n\n/** Preserve the exact menu context painted during exit motion. */\nexport function snapshotMenuSections(sections: readonly MenuSection[]): MenuSection[] {\n return sections.map(section => {\n if (isMenuSwatchPickerSection(section)) {\n return {\n ...section,\n ...(section.options ? { options: section.options.map(option => ({ ...option })) } : {}),\n ...(section.sections\n ? {\n sections: section.sections.map(swatchSection => ({\n ...swatchSection,\n options: swatchSection.options.map(option => ({ ...option })),\n })),\n }\n : {}),\n };\n }\n return { ...section, items: section.items.map(item => ({ ...item })) };\n });\n}\n","import {\n isMenuPickerSection,\n type MenuItemData,\n type MenuReorderDetail,\n type MenuSection,\n} from './menu-types';\n\nexport interface MenuReorderRange {\n start: number;\n end: number;\n}\n\n/** Contiguous reorderable run containing `index`, or null when that row cannot move. */\nexport function menuReorderableRange(\n items: readonly MenuItemData[],\n index: number\n): MenuReorderRange | null {\n if (!items[index]?.reorderable) return null;\n\n let start = index;\n while (start > 0 && items[start - 1]?.reorderable) start -= 1;\n\n let end = index;\n while (end < items.length - 1 && items[end + 1]?.reorderable) end += 1;\n\n return { start, end };\n}\n\n/**\n * Move a reorderable row so it would be inserted before `insertBefore`.\n * `insertBefore` is clamped to the contiguous reorderable run.\n */\nexport function moveReorderableMenuItemBefore(\n items: readonly MenuItemData[],\n fromIndex: number,\n insertBefore: number\n): MenuItemData[] | null {\n const range = menuReorderableRange(items, fromIndex);\n if (!range) return null;\n\n const clamped = Math.min(Math.max(insertBefore, range.start), range.end + 1);\n let toIndex = clamped;\n if (fromIndex < toIndex) toIndex -= 1;\n if (toIndex === fromIndex || toIndex < range.start || toIndex > range.end) return null;\n\n const next = [...items];\n const [item] = next.splice(fromIndex, 1);\n next.splice(toIndex, 0, item);\n return next;\n}\n\n/** Keyboard step: move one slot within the reorderable run. */\nexport function moveReorderableMenuItemBy(\n items: readonly MenuItemData[],\n fromIndex: number,\n offset: number\n): MenuItemData[] | null {\n if (offset === 0) return null;\n return moveReorderableMenuItemBefore(\n items,\n fromIndex,\n fromIndex + (offset < 0 ? offset : offset + 1)\n );\n}\n\nexport function locateMenuItem(\n sections: readonly MenuSection[],\n flatIndex: number\n): { sectionIndex: number; itemIndex: number; items: MenuItemData[] } | null {\n let remaining = flatIndex;\n for (let sectionIndex = 0; sectionIndex < sections.length; sectionIndex += 1) {\n const section = sections[sectionIndex];\n if (isMenuPickerSection(section)) continue;\n if (remaining < section.items.length) {\n return { sectionIndex, itemIndex: remaining, items: section.items };\n }\n remaining -= section.items.length;\n }\n return null;\n}\n\nexport function createMenuReorderDetail(\n items: MenuItemData[],\n fromIndex: number,\n nextItems: MenuItemData[],\n sectionIndex: number\n): MenuReorderDetail | null {\n const item = items[fromIndex];\n if (!item) return null;\n const toIndex = nextItems.indexOf(item);\n if (toIndex < 0) {\n const value = item.value;\n const matched = value ? nextItems.findIndex(candidate => candidate.value === value) : -1;\n if (matched < 0) return null;\n return { item, fromIndex, toIndex: matched, sectionIndex, items: nextItems };\n }\n return { item, fromIndex, toIndex, sectionIndex, items: nextItems };\n}\n","@import '../../utils/radius.css';\n@import '../../utils/choice-list.css';\n@import '../../utils/visually-hidden.css';\n@import '../../utils/forced-colors.css';\n\n/* Inactive: `.ds-control-inactive` (50% opacity). */\n\n.menu-empty {\n padding: var(--dimension-space-200);\n box-sizing: border-box;\n overflow-wrap: anywhere;\n}\n\n.menu-item--destructive .menu-item__label {\n /* Beat ds-text color-* host classes for destructive rows. */\n color: var(--color-foreground-bold-negative) !important;\n}\n\n/* Standard md icon zone keeps the dot aligned with other control suffixes. */\n.menu-item__dot-box {\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n width: var(--ds-control-icon, var(--dimension-iconography-md));\n height: var(--ds-control-icon, var(--dimension-iconography-md));\n pointer-events: none;\n}\n\n/* Switch suffix keeps an 8px label-to-control gap without changing the\n density gap between a prefix icon or drag handle and the label. */\n.menu-item__switch {\n flex-shrink: 0;\n margin-inline-start: calc(\n var(--dimension-space-100) - var(--ds-control-gap, var(--dimension-space-050))\n );\n}\n\n/* ── Prefix icon / reorder handle ────────────────────────────────────────── */\n\n.menu-item > .menu-item__handle {\n pointer-events: auto;\n cursor: grab;\n touch-action: none;\n}\n\n.menu-item > .menu-item__handle:active,\n.menu-item--dragging > .menu-item__handle {\n cursor: grabbing;\n}\n\n.menu-item--dragging {\n opacity: var(--effect-opacity-medium);\n}\n\n.menu-item__drop-rail {\n position: absolute;\n z-index: var(--dimension-z-index-raised);\n inset-inline: var(--dimension-space-050);\n block-size: var(--dimension-stroke-width-025);\n border-radius: var(--dimension-radius-half);\n background: var(--color-border-bold-brand);\n pointer-events: none;\n}\n\n.menu-item__drop-rail--before {\n inset-block-start: calc(-1 * var(--dimension-space-025));\n transform: translateY(-50%);\n}\n\n.menu-item__drop-rail--after {\n inset-block-end: calc(-1 * var(--dimension-space-025));\n transform: translateY(50%);\n}\n\n@media (forced-colors: active) {\n .menu-item__drop-rail {\n background: var(--ds-forced-color-selected);\n }\n}\n\n.table-preferences-embedded {\n display: flex;\n flex-direction: column;\n min-width: 0;\n min-height: 0;\n color: var(--color-foreground-secondary);\n}\n","import {\n Component,\n Prop,\n State,\n Event,\n EventEmitter,\n Element,\n Watch,\n Listen,\n h,\n Host,\n} from '@stencil/core';\nimport {\n choicePopupMinWidth,\n CONTROL_SUPPORTING_TEXT_VARIANT,\n CONTROL_TEXT_VARIANT,\n resolveChoicePopupAlignOffset,\n resolveCssLengthPx,\n resolveMotionTimeMs,\n TOKEN_CSS_LENGTHS,\n TOKEN_DEFAULTS,\n type ChoicePopupAnchorAlignment,\n type ControlSize,\n} from '../../utils';\nimport { AnchoredPositionController } from '../../utils/anchored-position-controller';\nimport { AnchoredOverlayInteractionController } from '../../utils/anchored-overlay-interaction-controller';\nimport { resolveAnchoredOverlayBoundaryRect } from '../../utils/anchored-overlay-boundary';\nimport { computeAnchoredPosition, type AnchoredPositionInput } from '../../utils/anchored-position';\nimport type { MenuAlign, MenuSide } from './menu-position';\nimport {\n isMenuPickerSection,\n isMenuSwatchPickerSection,\n type MenuItemData,\n type MenuReorderDetail,\n type MenuSection,\n} from './menu-types';\nimport { snapshotMenuSections } from './menu-sections';\nimport {\n createMenuReorderDetail,\n locateMenuItem,\n menuReorderableRange,\n moveReorderableMenuItemBefore,\n moveReorderableMenuItemBy,\n} from './menu-reorder';\n\nexport type MenuSelectionMode = 'none' | 'single';\nexport type MenuSize = ControlSize;\nlet menuId = 0;\nconst MENU_ITEM_TAG_SIZE: Record<MenuSize, 'md' | 'sm' | 'xs'> = {\n lg: 'md',\n md: 'sm',\n sm: 'xs',\n xs: 'xs',\n};\n\n@Component({\n tag: 'ds-menu',\n styleUrl: 'Menu.css',\n scoped: true,\n})\nexport class Menu {\n @Element() el!: HTMLElement;\n\n /** Render content inside a parent-owned surface; the parent owns dismissal and positioning. */\n @Prop() embedded: boolean = false;\n @Prop({ mutable: true }) open: boolean = false;\n @Prop() items: MenuItemData[] = [];\n /** Choice-row density. */\n @Prop() size: MenuSize = 'md';\n /** Give ordinary rows mutually-exclusive menu semantics using isSelected. */\n @Prop() selectionMode: MenuSelectionMode = 'none';\n @Prop() sections: MenuSection[] = [];\n /** Preferred side; placement flips to the opposite side when that offers a better fit. */\n @Prop() side: MenuSide = 'bottom';\n @Prop() align: MenuAlign = 'start';\n /** Align choice-row edges to the anchor by default; use `popup-frame` only for custom frame geometry. */\n @Prop() anchorAlignment: ChoicePopupAnchorAlignment = 'choice-cell';\n /** Gap between anchor and menu — number (px) or TokoMo length (`var(--dimension-space-050)`, etc.). */\n @Prop() sideOffset: number | string = TOKEN_CSS_LENGTHS.space050;\n /** Cross-axis offset — number (px) or TokoMo length. */\n @Prop() alignOffset: number | string = 0;\n @Prop() menuWidth: string | undefined;\n @Prop() minWidth: string | undefined;\n /** External trigger element to position against. Set via JS: menuEl.anchor = buttonEl */\n @Prop() anchor: HTMLElement | undefined;\n /** ID of the external trigger element for positioning */\n @Prop() anchorId: string | undefined;\n /** Explicit collision owner; otherwise the nearest data-ds-overlay-boundary ancestor is used. */\n @Prop() boundary: HTMLElement | undefined;\n /** Show a visible ring on the initially focused menu item. Use only when the opener was keyboard-driven. */\n @Prop() initialFocusVisible: boolean = false;\n /** Accessible name for the popup menu. */\n @Prop() menuLabel: string = 'Menu';\n /** Informational message shown when there are no choices. Uses a non-modal dialog, not a fake menu item. */\n @Prop() emptyMessage: string = '';\n\n @State() private shouldRender: boolean = false;\n @State() private closing: boolean = false;\n @State() private pos: { x: number; y: number } = { x: 0, y: 0 };\n @State() private focusedIndex: number = 0;\n @State() private positionReady: boolean = false;\n @State() private availableHeight: number | null = null;\n @State() private focusRingVisible: boolean = false;\n @State() private reorderFromFlat: number | null = null;\n @State() private reorderInsertBefore: number | null = null;\n @State() private reorderAnnouncement = '';\n\n @Event() dsClose!: EventEmitter<void>;\n /** Emitted after the popup's exit motion is complete and its rendered content is removed. */\n @Event() dsAfterClose!: EventEmitter<void>;\n @Event() dsSelect!: EventEmitter<MenuItemData>;\n /** Emitted when a generic `swatch-picker` section option is chosen. */\n @Event() dsSwatchSelect!: EventEmitter<string>;\n /** Emitted after a pointer drop or keyboard move; Menu never mutates item order. */\n @Event() dsReorder!: EventEmitter<MenuReorderDetail>;\n\n private closeTimer: ReturnType<typeof setTimeout> | null = null;\n private positionReadyCallback: (() => void) | undefined;\n private suppressItemClick = false;\n private reorderPointer: {\n pointerId: number;\n sectionIndex: number;\n fromIndex: number;\n } | null = null;\n /**\n * Anchored placement. The choice-cell measurement stays here on purpose: the\n * inner-cell align offset and the `--dimension-menu-width-xs` floor are Menu\n * semantics, not shared geometry.\n */\n private readonly position = new AnchoredPositionController({\n getAnchor: () => this.resolvedAnchor ?? null,\n getPopup: () => this.el.querySelector<HTMLElement>('.menu-popup'),\n getOwnerDocument: () => this.el.ownerDocument,\n measure: (anchorEl, popup) => {\n if (!this.open) return null;\n\n const anchorRect = anchorEl.getBoundingClientRect();\n const sectionInsetPx = this.viewportPadPx;\n if (!this.minWidth) {\n if (\n this.anchorAlignment === 'choice-cell' &&\n (this.side === 'top' || this.side === 'bottom')\n ) {\n popup.style.minWidth = `max(var(--dimension-menu-width-xs), ${choicePopupMinWidth(\n anchorRect.width,\n sectionInsetPx\n )}px)`;\n } else {\n popup.style.removeProperty('min-width');\n }\n }\n\n const viewportPadPx = this.viewportPadPx;\n const list = popup.querySelector<HTMLElement>('.ds-choice-list');\n const naturalPopupHeight = Math.min(\n Math.max(popup.offsetHeight, list?.scrollHeight ?? 0),\n window.innerHeight - viewportPadPx * 2\n );\n const input: AnchoredPositionInput = {\n anchorRect,\n popupWidth: popup.offsetWidth || this.popupFallbackWidthPx,\n popupHeight: naturalPopupHeight || this.popupFallbackHeightPx,\n side: this.side,\n align: this.align,\n sideOffsetPx: this.sideOffsetPx,\n alignOffsetPx: resolveChoicePopupAlignOffset({\n align: this.align,\n alignOffsetPx: this.alignOffsetPx,\n sectionInsetPx,\n anchorAlignment: this.anchorAlignment,\n }),\n viewportPadPx,\n viewportWidth: window.innerWidth,\n viewportHeight: window.innerHeight,\n collisionRect: resolveAnchoredOverlayBoundaryRect(anchorEl, this.boundary),\n };\n const unconstrained = computeAnchoredPosition(input);\n return {\n ...input,\n popupHeight: Math.min(input.popupHeight, unconstrained.availableHeight),\n };\n },\n apply: ({ x, y, availableHeight }) => {\n this.pos = { x, y };\n this.availableHeight = availableHeight;\n },\n onReady: () => {\n this.positionReady = true;\n },\n liveUpdate: 'double-frame',\n topLayer: true,\n observeResize: true,\n observeAnchorMotion: true,\n });\n private readonly interaction = new AnchoredOverlayInteractionController({\n getAnchor: () => this.resolvedAnchor,\n getPopup: () => this.el.querySelector<HTMLElement>('.menu-popup'),\n getOwnerDocument: () => this.el.ownerDocument,\n onOutsideActivation: () => this.close(),\n });\n /** Last content actually painted while open; retained unchanged through exit motion. */\n private lastRenderedSections: MenuSection[] = [];\n private closingSections: MenuSection[] | null = null;\n private readonly emptyMessageId = `ds-menu-empty-${++menuId}`;\n private lastRenderedEmptyMessage = '';\n\n componentDidLoad() {\n if (this.open) this.onOpenChange(true);\n }\n\n disconnectedCallback() {\n this.cancelPositionRetry();\n this.cancelLivePositionUpdate();\n this.clearReorderPointer();\n this.teardownListeners();\n }\n\n @Watch('open')\n onOpenChange(isOpen: boolean) {\n if (this.embedded) return;\n if (isOpen) {\n this.teardownListeners();\n this.closingSections = null;\n this.shouldRender = true;\n this.closing = false;\n this.positionReady = false;\n this.availableHeight = null;\n this.focusRingVisible = this.initialFocusVisible;\n this.setupListeners();\n this.schedulePositionUpdate(() => {\n this.focusInitialItem();\n });\n } else if (this.shouldRender) {\n this.positionReadyCallback = undefined;\n this.cancelPositionRetry();\n this.captureClosingSections();\n this.closing = true;\n this.teardownListeners();\n const closeAnimationMs = this.closeAnimationMs;\n if (closeAnimationMs <= 0) {\n this.finishClose();\n return;\n }\n this.closeTimer = setTimeout(() => {\n this.closeTimer = null;\n this.finishClose();\n }, closeAnimationMs);\n }\n }\n\n @Watch('anchor')\n @Watch('anchorId')\n @Watch('boundary')\n onAnchorChange() {\n if (this.open) this.schedulePositionUpdate();\n }\n\n @Watch('side')\n @Watch('align')\n @Watch('anchorAlignment')\n @Watch('sideOffset')\n @Watch('alignOffset')\n onPositionPropsChange() {\n if (this.open) this.schedulePositionUpdate();\n }\n\n private get viewportPadPx(): number {\n return resolveCssLengthPx(TOKEN_DEFAULTS.space050, TOKEN_DEFAULTS.space050);\n }\n\n private get sideOffsetPx(): number {\n return resolveCssLengthPx(this.sideOffset, TOKEN_DEFAULTS.space050);\n }\n\n private get alignOffsetPx(): number {\n return resolveCssLengthPx(this.alignOffset, 0);\n }\n\n private get popupFallbackWidthPx(): number {\n return resolveCssLengthPx(TOKEN_DEFAULTS.menuWidthXs, TOKEN_DEFAULTS.menuWidthXs);\n }\n\n private get popupFallbackHeightPx(): number {\n return resolveCssLengthPx(TOKEN_DEFAULTS.menuFallbackHeight, TOKEN_DEFAULTS.menuFallbackHeight);\n }\n\n private get closeAnimationMs(): number {\n return resolveMotionTimeMs(TOKEN_DEFAULTS.motionShort2, TOKEN_DEFAULTS.animationDurationShort3);\n }\n\n private finishClose() {\n const popup = this.el.querySelector<HTMLElement>('.menu-popup');\n if (popup?.matches(':popover-open')) popup.hidePopover();\n this.shouldRender = false;\n this.closing = false;\n this.lastRenderedSections = [];\n this.closingSections = null;\n this.clearReorderPointer();\n this.reorderAnnouncement = '';\n this.dsAfterClose.emit();\n }\n\n private captureClosingSections() {\n if (this.closingSections) return;\n const visibleSections = this.lastRenderedSections.length\n ? this.lastRenderedSections\n : this.activeSections;\n this.closingSections = snapshotMenuSections(visibleSections);\n }\n\n private get resolvedAnchor(): HTMLElement | null {\n if (this.anchor) return this.anchor;\n if (this.anchorId) return document.getElementById(this.anchorId);\n return null;\n }\n\n private compositeTabLeavesPopup(event: KeyboardEvent): boolean {\n return this.interaction.tabLeavesPopup(event);\n }\n\n private get activeSections(): MenuSection[] {\n if (this.sections.length > 0) return this.sections;\n if (this.items.length > 0) return [{ items: this.items }];\n return [];\n }\n\n private get flatItems(): MenuItemData[] {\n return this.activeSections.flatMap(section =>\n isMenuPickerSection(section) ? [] : section.items\n );\n }\n\n /** Rich preference content is a non-modal dialog, not an ARIA action menu. */\n private get hasCompositeSections(): boolean {\n return this.activeSections.some(isMenuPickerSection);\n }\n\n private cancelPositionRetry() {\n this.position.cancel();\n }\n\n private cancelLivePositionUpdate() {\n this.position.cancel();\n }\n\n /** Reposition after the current scroll/layout frame without hiding the open popup. */\n private scheduleLivePositionUpdate() {\n this.position.scheduleLiveUpdate();\n }\n\n /** Retry until anchor + popup exist — do not reveal at 0,0 on a failed first pass. */\n private schedulePositionUpdate(onReady?: () => void) {\n if (!this.open) return;\n this.positionReady = false;\n // Opening often sets `open` and `anchorId` together. Each Watch reschedules\n // placement; keep the open-path ready callback so initial focus is not dropped.\n if (onReady) this.positionReadyCallback = onReady;\n const callback = this.positionReadyCallback;\n this.position.schedule(() => {\n if (this.positionReadyCallback === callback) {\n this.positionReadyCallback = undefined;\n }\n callback?.();\n });\n }\n\n /** @returns `true` when anchor and popup were found and `pos` was updated. */\n private calculatePosition(): boolean {\n return this.position.update();\n }\n\n /** Focus the selected item when present, otherwise the first enabled item. */\n private focusInitialItem() {\n if (!this.hasCompositeSections && !this.flatItems.length && this.emptyMessage.trim()) {\n requestAnimationFrame(() => {\n if (this.open) this.el.querySelector<HTMLElement>('.menu-popup')?.focus();\n });\n return;\n }\n if (this.hasCompositeSections) {\n requestAnimationFrame(() => {\n this.el.querySelector<HTMLElement>('.menu-popup [tabindex=\"0\"]')?.focus();\n });\n return;\n }\n\n const flat = this.flatItems;\n const selectedIdx = flat.findIndex(it => it.isSelected && !it.isInactive);\n const firstEnabledIdx = flat.findIndex(it => !it.isInactive || !!it.reorderable);\n this.focusedIndex = selectedIdx >= 0 ? selectedIdx : firstEnabledIdx >= 0 ? firstEnabledIdx : 0;\n\n requestAnimationFrame(() => {\n const btns = this.el.querySelectorAll<HTMLElement>('.menu-item');\n btns[this.focusedIndex]?.focus();\n });\n }\n\n private setupListeners() {\n this.interaction.connect();\n this.position.observe();\n }\n\n private teardownListeners() {\n this.position.unobserve();\n this.interaction.disconnect();\n if (this.closeTimer) {\n clearTimeout(this.closeTimer);\n this.closeTimer = null;\n }\n }\n\n private close(restoreFocus = true) {\n this.captureClosingSections();\n if (restoreFocus) this.interaction.focusAnchor();\n this.dsClose.emit();\n this.open = false;\n this.onOpenChange(false);\n }\n\n @Listen('keydown')\n handleKeyDown(e: KeyboardEvent) {\n if (this.embedded && (e.key === 'Escape' || e.key === 'Tab')) return;\n if ((!this.shouldRender && !this.embedded) || this.closing) return;\n\n if (e.key === 'Escape') {\n e.preventDefault();\n this.close();\n return;\n }\n\n if (e.key === 'Tab') {\n if (this.hasCompositeSections && !this.compositeTabLeavesPopup(e)) return;\n e.preventDefault();\n this.close(false);\n this.interaction.moveFocusAfterTab(e.shiftKey);\n return;\n }\n\n if (this.hasCompositeSections) return;\n\n if ((e.key === 'ArrowUp' || e.key === 'ArrowDown') && e.altKey && !e.ctrlKey && !e.shiftKey) {\n this.handleReorderKey(e);\n return;\n }\n\n const flat = this.flatItems;\n const enabled = flat\n .map((it, i) => ({ it, i }))\n .filter(({ it }) => !it.isInactive || !!it.reorderable)\n .map(({ i }) => i);\n if (!enabled.length) return;\n\n const cur = enabled.indexOf(this.focusedIndex);\n const safe = cur < 0 ? 0 : cur;\n\n switch (e.key) {\n case 'ArrowDown':\n e.preventDefault();\n e.stopPropagation();\n this.focusRingVisible = true;\n this.focusedIndex = enabled[(safe + 1) % enabled.length];\n this.focusItem(this.focusedIndex);\n break;\n case 'ArrowUp':\n e.preventDefault();\n e.stopPropagation();\n this.focusRingVisible = true;\n this.focusedIndex = enabled[(safe - 1 + enabled.length) % enabled.length];\n this.focusItem(this.focusedIndex);\n break;\n case 'Home':\n e.preventDefault();\n e.stopPropagation();\n this.focusRingVisible = true;\n this.focusedIndex = enabled[0];\n this.focusItem(this.focusedIndex);\n break;\n case 'End':\n e.preventDefault();\n e.stopPropagation();\n this.focusRingVisible = true;\n this.focusedIndex = enabled[enabled.length - 1];\n this.focusItem(this.focusedIndex);\n break;\n }\n }\n\n private focusItem(idx: number) {\n const btns = this.el.querySelectorAll<HTMLElement>('.menu-item');\n btns[idx]?.focus();\n }\n\n private handleItemClick(item: MenuItemData) {\n if (this.suppressItemClick) {\n this.suppressItemClick = false;\n return;\n }\n if (item.isInactive) return;\n // Consumers commonly change the item source while handling selection.\n // Capture first so the exit animation never paints the next menu context.\n this.captureClosingSections();\n this.dsSelect.emit(item);\n }\n\n private handleSwatchSelect(value: string) {\n this.dsSwatchSelect.emit(value);\n }\n\n private handleReorderKey(event: KeyboardEvent): void {\n const located = locateMenuItem(this.activeSections, this.focusedIndex);\n if (!located || !located.items[located.itemIndex]?.reorderable) return;\n\n const nextItems = moveReorderableMenuItemBy(\n located.items,\n located.itemIndex,\n event.key === 'ArrowUp' ? -1 : 1\n );\n if (!nextItems) return;\n\n event.preventDefault();\n event.stopPropagation();\n this.emitReorder(located.items, located.itemIndex, nextItems, located.sectionIndex);\n }\n\n private emitReorder(\n items: MenuItemData[],\n fromIndex: number,\n nextItems: MenuItemData[],\n sectionIndex: number\n ): void {\n const detail = createMenuReorderDetail(items, fromIndex, nextItems, sectionIndex);\n if (!detail) return;\n this.focusedIndex = this.flatIndexFor(sectionIndex, detail.toIndex);\n this.announceReorder(detail);\n this.dsReorder.emit(detail);\n }\n\n private flatIndexFor(sectionIndex: number, itemIndex: number): number {\n let flat = 0;\n for (let index = 0; index < this.activeSections.length; index += 1) {\n const section = this.activeSections[index];\n if (isMenuPickerSection(section)) continue;\n if (index === sectionIndex) return flat + itemIndex;\n flat += section.items.length;\n }\n return itemIndex;\n }\n\n private announceReorder(detail: MenuReorderDetail): void {\n const range = menuReorderableRange(detail.items, detail.toIndex);\n const count = range ? range.end - range.start + 1 : detail.items.length;\n const position = range ? detail.toIndex - range.start + 1 : detail.toIndex + 1;\n this.reorderAnnouncement = `${detail.item.label} moved to position ${position} of ${count}`;\n }\n\n private onReorderPointerDown(\n event: PointerEvent,\n sectionIndex: number,\n itemIndex: number,\n flatIndex: number\n ): void {\n if (event.button !== 0) return;\n const section = this.activeSections[sectionIndex];\n if (!section || isMenuPickerSection(section)) return;\n if (!section.items[itemIndex]?.reorderable) return;\n\n event.preventDefault();\n event.stopPropagation();\n this.suppressItemClick = true;\n this.focusRingVisible = false;\n this.focusedIndex = flatIndex;\n this.focusItem(flatIndex);\n this.reorderPointer = {\n pointerId: event.pointerId,\n sectionIndex,\n fromIndex: itemIndex,\n };\n this.reorderFromFlat = flatIndex;\n this.reorderInsertBefore = itemIndex;\n window.addEventListener('pointermove', this.onReorderPointerMove);\n window.addEventListener('pointerup', this.onReorderPointerUp);\n window.addEventListener('pointercancel', this.onReorderPointerCancel);\n }\n\n private onReorderPointerMove = (event: PointerEvent) => {\n const drag = this.reorderPointer;\n if (!drag || event.pointerId !== drag.pointerId) return;\n const section = this.activeSections[drag.sectionIndex];\n if (!section || isMenuPickerSection(section)) return;\n\n const insertBefore = this.resolveReorderInsertBefore(\n event.clientY,\n drag.sectionIndex,\n drag.fromIndex,\n section.items\n );\n if (insertBefore !== this.reorderInsertBefore) this.reorderInsertBefore = insertBefore;\n };\n\n private onReorderPointerUp = (event: PointerEvent) => {\n const drag = this.reorderPointer;\n if (!drag || event.pointerId !== drag.pointerId) return;\n\n const section = this.activeSections[drag.sectionIndex];\n const insertBefore = this.reorderInsertBefore;\n this.clearReorderPointer();\n queueMicrotask(() => {\n this.suppressItemClick = false;\n });\n if (!section || isMenuPickerSection(section) || insertBefore === null) return;\n\n const nextItems = moveReorderableMenuItemBefore(section.items, drag.fromIndex, insertBefore);\n if (!nextItems) return;\n this.emitReorder(section.items, drag.fromIndex, nextItems, drag.sectionIndex);\n };\n\n private onReorderPointerCancel = (event: PointerEvent) => {\n if (!this.reorderPointer || event.pointerId !== this.reorderPointer.pointerId) return;\n this.clearReorderPointer();\n queueMicrotask(() => {\n this.suppressItemClick = false;\n });\n };\n\n private resolveReorderInsertBefore(\n clientY: number,\n sectionIndex: number,\n fromIndex: number,\n items: MenuItemData[]\n ): number {\n const range = menuReorderableRange(items, fromIndex);\n if (!range) return fromIndex;\n\n const buttons = [...this.el.querySelectorAll<HTMLElement>('.menu-item')];\n const sectionStart = this.flatIndexFor(sectionIndex, 0);\n let insertBefore = range.end + 1;\n for (let itemIndex = range.start; itemIndex <= range.end; itemIndex += 1) {\n const row = buttons[sectionStart + itemIndex];\n if (!row) continue;\n const rect = row.getBoundingClientRect();\n if (clientY < rect.top + rect.height / 2) {\n insertBefore = itemIndex;\n break;\n }\n }\n return Math.min(Math.max(insertBefore, range.start), range.end + 1);\n }\n\n private clearReorderPointer(): void {\n if (this.reorderPointer) {\n window.removeEventListener('pointermove', this.onReorderPointerMove);\n window.removeEventListener('pointerup', this.onReorderPointerUp);\n window.removeEventListener('pointercancel', this.onReorderPointerCancel);\n }\n this.reorderPointer = null;\n this.reorderFromFlat = null;\n this.reorderInsertBefore = null;\n }\n\n render() {\n if (!this.shouldRender && !this.embedded) return <Host style={{ display: 'contents' }} />;\n\n const sections = this.closing\n ? (this.closingSections ?? this.lastRenderedSections)\n : this.activeSections;\n const hasCompositeSections = sections.some(isMenuPickerSection);\n const emptyMessage = this.closing ? this.lastRenderedEmptyMessage : this.emptyMessage.trim();\n const showEmpty =\n Boolean(emptyMessage) &&\n !hasCompositeSections &&\n sections.every(section => !isMenuPickerSection(section) && section.items.length === 0);\n if (!this.closing) {\n this.lastRenderedEmptyMessage = emptyMessage;\n this.lastRenderedSections = snapshotMenuSections(sections);\n this.closingSections = null;\n }\n let flatIdx = 0;\n const dragLocated =\n this.reorderFromFlat === null ? null : locateMenuItem(sections, this.reorderFromFlat);\n const dragRange = dragLocated\n ? menuReorderableRange(dragLocated.items, dragLocated.itemIndex)\n : null;\n\n const popupStyle: Record<string, string> = {\n position: 'fixed',\n left: '0',\n top: '0',\n transform: `translate(${Math.round(this.pos.x)}px, ${Math.round(this.pos.y)}px)`,\n zIndex: '9998',\n visibility: this.positionReady ? 'visible' : 'hidden',\n };\n\n if (this.menuWidth) popupStyle['width'] = this.menuWidth;\n if (this.minWidth) popupStyle['min-width'] = this.minWidth;\n if (this.availableHeight !== null) {\n popupStyle['max-height'] = `${Math.floor(this.availableHeight)}px`;\n }\n\n return (\n <Host style={{ display: 'contents' }}>\n <div\n popover={this.embedded ? undefined : 'manual'}\n class={{\n 'menu-popup': true,\n 'menu-popup--closing': this.closing,\n 'ds-choice-popup': !this.embedded,\n 'table-preferences-embedded': this.embedded,\n 'ds-choice-popup--closing': this.closing,\n 'ds-focus-ring': showEmpty,\n 'ds-focus-ring--visible': showEmpty && this.focusRingVisible,\n }}\n style={this.embedded ? undefined : popupStyle}\n role={hasCompositeSections || showEmpty ? 'dialog' : 'menu'}\n aria-label={this.menuLabel}\n aria-orientation={hasCompositeSections || showEmpty ? undefined : 'vertical'}\n aria-describedby={showEmpty ? this.emptyMessageId : undefined}\n tabIndex={showEmpty ? -1 : undefined}\n >\n <div class=\"ds-choice-list\">\n {showEmpty ? (\n <ds-text\n textId={this.emptyMessageId}\n class=\"menu-empty\"\n as=\"p\"\n variant={CONTROL_TEXT_VARIANT[this.size]}\n color=\"secondary\"\n >\n {emptyMessage}\n </ds-text>\n ) : (\n sections.map((section, si) => (\n <div\n key={si}\n class={{\n 'menu-section': true,\n 'menu-section--divided': si < sections.length - 1,\n 'menu-section--swatch-picker': isMenuPickerSection(section),\n 'ds-choice-section': true,\n 'ds-chrome-column': true,\n 'ds-chrome-space--sm': true,\n 'ds-choice-section--divided': si < sections.length - 1,\n 'ds-choice-section--headed-after-first': si > 0 && Boolean(section.header),\n }}\n role={section.header ? 'group' : undefined}\n aria-label={section.header}\n >\n {section.header && (\n <ds-text\n class={`section-header ds-choice-section__header ds-control-section-heading ds-control--${this.size}`}\n as=\"span\"\n variant={CONTROL_SUPPORTING_TEXT_VARIANT[this.size]}\n emphasis\n color=\"primary\"\n aria-hidden=\"true\"\n >\n <span class=\"ds-choice-section__header-label\">{section.header}</span>\n </ds-text>\n )}\n {isMenuSwatchPickerSection(section) ? (\n <ds-swatch-picker\n value={section.value}\n groupLabel={section.groupLabel ?? section.header ?? 'Swatch options'}\n options={section.options ?? []}\n sections={section.sections ?? []}\n onDsChange={(e: CustomEvent<string>) => {\n e.stopPropagation();\n this.handleSwatchSelect(e.detail);\n }}\n />\n ) : (\n section.items.map((item, itemIndex) => {\n const idx = flatIdx++;\n const isFocused = this.focusedIndex === idx;\n const isSingleSelectionItem =\n !hasCompositeSections &&\n this.selectionMode === 'single' &&\n !item.showSwitch;\n const usesLeading = section.items.some(\n candidate => candidate.reorderable || !!candidate.icon\n );\n const locked = !!item.isInactive && !item.reorderable;\n const dragging = this.reorderFromFlat === idx;\n const dropBefore =\n dragLocated?.sectionIndex === si &&\n dragRange !== null &&\n itemIndex <= dragRange.end &&\n this.reorderInsertBefore === itemIndex;\n const dropAfter =\n dragLocated?.sectionIndex === si &&\n dragRange !== null &&\n this.reorderInsertBefore === dragRange.end + 1 &&\n itemIndex === dragRange.end;\n return (\n <button\n key={item.value ?? `${si}-${item.label}`}\n type=\"button\"\n class={{\n 'menu-item': true,\n 'ds-choice-item': true,\n 'ds-control-frame': true,\n [`ds-control--${this.size}`]: true,\n 'ds-focus-ring-inset': true,\n 'ds-focus-ring--visible': isFocused && this.focusRingVisible,\n 'ds-interaction-fill': !locked,\n 'ds-interaction-fill--selected': !!item.isSelected && !locked,\n 'menu-item--selected': !!item.isSelected,\n 'menu-item--switch': !!item.showSwitch,\n 'ds-control-inactive': locked,\n 'menu-item--destructive': !!item.isDestructive,\n 'menu-item--focused': isFocused,\n 'menu-item--dragging': dragging,\n }}\n role={\n hasCompositeSections\n ? undefined\n : item.showSwitch\n ? 'menuitemcheckbox'\n : isSingleSelectionItem\n ? 'menuitemradio'\n : 'menuitem'\n }\n aria-checked={\n !hasCompositeSections && item.showSwitch\n ? String(!!item.switchValue)\n : isSingleSelectionItem\n ? String(!!item.isSelected)\n : undefined\n }\n aria-pressed={\n hasCompositeSections\n ? String(item.showSwitch ? !!item.switchValue : !!item.isSelected)\n : undefined\n }\n aria-current={\n !hasCompositeSections &&\n !item.showSwitch &&\n !isSingleSelectionItem &&\n item.isSelected\n ? 'true'\n : undefined\n }\n aria-description={\n item.reorderable\n ? item.isInactive\n ? 'Visibility cannot be changed. Alt + Arrow Up or Alt + Arrow Down moves this row.'\n : 'Drag to reorder. Alt + Arrow Up or Alt + Arrow Down moves this row.'\n : undefined\n }\n aria-disabled={item.isInactive ? 'true' : undefined}\n disabled={locked}\n tabIndex={\n hasCompositeSections || (this.embedded && idx === 0)\n ? 0\n : isFocused\n ? 0\n : -1\n }\n onMouseDown={() => {\n this.focusRingVisible = false;\n }}\n onClick={() => this.handleItemClick(item)}\n onFocus={() => {\n this.focusedIndex = idx;\n }}\n >\n {(dropBefore || dropAfter) && (\n <span\n class={{\n 'menu-item__drop-rail': true,\n 'menu-item__drop-rail--before': dropBefore,\n 'menu-item__drop-rail--after': dropAfter,\n }}\n data-menu-drop-rail\n aria-hidden=\"true\"\n />\n )}\n {item.reorderable ? (\n <span\n class=\"menu-item__handle ds-choice-item__icon ds-control-icon-box ds-interaction-fill__content\"\n data-menu-handle\n aria-hidden=\"true\"\n onPointerDown={event =>\n this.onReorderPointerDown(event, si, itemIndex, idx)\n }\n onClick={event => {\n event.preventDefault();\n event.stopPropagation();\n }}\n >\n <ds-icon name=\"Drag\" size={this.size} color=\"inherit\" />\n </span>\n ) : usesLeading && item.icon ? (\n <span\n class=\"menu-item__icon ds-choice-item__icon ds-control-icon-box ds-interaction-fill__content\"\n aria-hidden=\"true\"\n >\n <ds-icon name={item.icon} size={this.size} color=\"inherit\" />\n </span>\n ) : usesLeading ? (\n <span\n class=\"menu-item__icon-spacer ds-choice-item__icon ds-control-icon-box\"\n aria-hidden=\"true\"\n />\n ) : null}\n <div class=\"menu-item__content ds-choice-item__content ds-interaction-fill__content\">\n <ds-text\n class=\"menu-item__label ds-choice-item__label ds-control-label-box\"\n as=\"span\"\n variant={CONTROL_TEXT_VARIANT[this.size]}\n color={item.isSelected ? 'primary' : 'secondary'}\n >\n {item.label}\n </ds-text>\n {item.subtext && (\n <ds-text\n class=\"menu-item__subtext ds-choice-item__subtext ds-control-label-box\"\n as=\"span\"\n variant={CONTROL_SUPPORTING_TEXT_VARIANT[this.size]}\n color=\"secondary\"\n >\n {item.subtext}\n </ds-text>\n )}\n </div>\n {item.tag && (\n <ds-tag\n class=\"ds-choice-item__tag ds-interaction-fill__content\"\n label={item.tag.label}\n size={MENU_ITEM_TAG_SIZE[this.size]}\n intent={item.tag.intent ?? 'neutral'}\n contrast={item.tag.contrast ?? 'faint'}\n rounded={item.tag.rounded ?? false}\n isInset\n />\n )}\n {item.dot && (\n <span\n class=\"menu-item__dot-box ds-interaction-fill__content\"\n aria-hidden=\"true\"\n >\n <ds-badge\n class=\"menu-item__dot\"\n variant=\"dot\"\n hasRing={false}\n label=\"\"\n />\n </span>\n )}\n {item.showSwitch && (\n <ds-switch\n class=\"menu-item__switch ds-interaction-fill__content\"\n size={this.size}\n checked={!!item.switchValue}\n isInactive={!!item.isInactive}\n presentation\n />\n )}\n </button>\n );\n })\n )}\n </div>\n ))\n )}\n </div>\n </div>\n <div class=\"ds-visually-hidden\" role=\"status\" aria-live=\"polite\">\n {this.reorderAnnouncement}\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{i as n}from"./p-KBrC9IG4.js";const e="direction:asc";const t="direction:desc";const c="field:";function o(e){const t=[];const c=new Set;for(const o of e){if(n(o)||!o.sortable)continue;const e=o.headerSegments?.filter((n=>n.sortKey.trim()))??[];if(e.length>0){for(const n of e){if(c.has(n.sortKey))continue;c.add(n.sortKey);t.push({id:n.sortKey,label:n.dataLabel?.trim()||n.label.trim()||n.sortKey})}continue}if(c.has(o.id))continue;c.add(o.id);t.push({id:o.id,label:o.dataLabel?.trim()||o.header.trim()||o.headerLabel?.trim()||o.id})}return t}function r(n,r){const i=o(n);return[{header:"Data",items:i.map((n=>({label:n.label,value:`${c}${encodeURIComponent(n.id)}`,isSelected:r?.columnId===n.id})))},{header:"Order",items:[{label:"Ascending",value:e,icon:"ArrowUp",isSelected:r?.direction==="asc"},{label:"Descending",value:t,icon:"ArrowDown",isSelected:r?.direction==="desc"}]}]}function i(n,e){if(n===e)return true;if(!n||!e)return false;return n.columnId===e.columnId&&n.direction===e.direction}function s(n,r,i){const s=o(n);if(s.length===0)return r??null;if(i.value===e||i.value===t){const n=i.value===e?"asc":"desc";const t=s.some((n=>n.id===r?.columnId))?r.columnId:s[0].id;return{columnId:t,direction:n}}if(!i.value?.startsWith(c))return r??null;let l;try{l=decodeURIComponent(i.value.slice(c.length))}catch{return r??null}if(!s.some((n=>n.id===l)))return r??null;if(r?.columnId===l)return r??null;return{columnId:l,direction:r?.direction??"asc"}}export{o as a,i as b,s as n,r as t};
2
- //# sourceMappingURL=p-CKarsuR2.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["TABLE_SORT_DIRECTION_ASC","TABLE_SORT_DIRECTION_DESC","TABLE_SORT_FIELD_PREFIX","tableSortFields","columns","fields","seen","Set","column","isTableActionColumn","sortable","segments","headerSegments","filter","segment","sortKey","trim","length","has","add","push","id","label","dataLabel","header","headerLabel","tableSortMenuSections","sort","items","map","field","value","encodeURIComponent","isSelected","columnId","icon","direction","tableSortStatesEqual","left","right","nextTableSortStateFromMenuItem","current","item","some","startsWith","decodeURIComponent","slice"],"sources":["src/wc/components/TableSort/table-sort-menu.ts"],"sourcesContent":["import type { MenuItemData, MenuSection } from '../Menu/menu-types';\nimport { isTableActionColumn } from '../Table/table-column-customizer';\nimport type { TableColumn, TableSortState } from '../Table/table-types';\n\nexport const TABLE_SORT_DIRECTION_ASC = 'direction:asc';\nexport const TABLE_SORT_DIRECTION_DESC = 'direction:desc';\nconst TABLE_SORT_FIELD_PREFIX = 'field:';\n\nexport interface TableSortField {\n id: string;\n label: string;\n}\n\n/** Sortable data fields from the catalog, including compound header segments. */\nexport function tableSortFields(columns: readonly TableColumn[]): TableSortField[] {\n const fields: TableSortField[] = [];\n const seen = new Set<string>();\n\n for (const column of columns) {\n if (isTableActionColumn(column) || !column.sortable) continue;\n const segments = column.headerSegments?.filter(segment => segment.sortKey.trim()) ?? [];\n if (segments.length > 0) {\n for (const segment of segments) {\n if (seen.has(segment.sortKey)) continue;\n seen.add(segment.sortKey);\n fields.push({\n id: segment.sortKey,\n label: segment.dataLabel?.trim() || segment.label.trim() || segment.sortKey,\n });\n }\n continue;\n }\n if (seen.has(column.id)) continue;\n seen.add(column.id);\n fields.push({\n id: column.id,\n label:\n column.dataLabel?.trim() || column.header.trim() || column.headerLabel?.trim() || column.id,\n });\n }\n\n return fields;\n}\n\nexport function tableSortMenuSections(\n columns: readonly TableColumn[],\n sort: TableSortState | null | undefined\n): MenuSection[] {\n const fields = tableSortFields(columns);\n return [\n {\n header: 'Data',\n items: fields.map(field => ({\n label: field.label,\n value: `${TABLE_SORT_FIELD_PREFIX}${encodeURIComponent(field.id)}`,\n isSelected: sort?.columnId === field.id,\n })),\n },\n {\n header: 'Order',\n items: [\n {\n label: 'Ascending',\n value: TABLE_SORT_DIRECTION_ASC,\n icon: 'ArrowUp',\n isSelected: sort?.direction === 'asc',\n },\n {\n label: 'Descending',\n value: TABLE_SORT_DIRECTION_DESC,\n icon: 'ArrowDown',\n isSelected: sort?.direction === 'desc',\n },\n ],\n },\n ];\n}\n\nexport function tableSortStatesEqual(\n left: TableSortState | null | undefined,\n right: TableSortState | null | undefined\n): boolean {\n if (left === right) return true;\n if (!left || !right) return false;\n return left.columnId === right.columnId && left.direction === right.direction;\n}\n\n/** Next controlled sort from a Sort menu selection. Does not toggle like a header click. */\nexport function nextTableSortStateFromMenuItem(\n columns: readonly TableColumn[],\n current: TableSortState | null | undefined,\n item: MenuItemData\n): TableSortState | null {\n const fields = tableSortFields(columns);\n if (fields.length === 0) return current ?? null;\n\n if (item.value === TABLE_SORT_DIRECTION_ASC || item.value === TABLE_SORT_DIRECTION_DESC) {\n const direction = item.value === TABLE_SORT_DIRECTION_ASC ? 'asc' : 'desc';\n const columnId = fields.some(field => field.id === current?.columnId)\n ? current!.columnId\n : fields[0]!.id;\n return { columnId, direction };\n }\n\n if (!item.value?.startsWith(TABLE_SORT_FIELD_PREFIX)) return current ?? null;\n let columnId: string;\n try {\n columnId = decodeURIComponent(item.value.slice(TABLE_SORT_FIELD_PREFIX.length));\n } catch {\n return current ?? null;\n }\n if (!fields.some(field => field.id === columnId)) return current ?? null;\n if (current?.columnId === columnId) return current ?? null;\n return { columnId, direction: current?.direction ?? 'asc' };\n}\n"],"mappings":"oCAIO,MAAMA,EAA2B,gBACjC,MAAMC,EAA4B,iBACzC,MAAMC,EAA0B,SAQ1B,SAAUC,EAAgBC,GAC9B,MAAMC,EAA2B,GACjC,MAAMC,EAAO,IAAIC,IAEjB,IAAK,MAAMC,KAAUJ,EAAS,CAC5B,GAAIK,EAAoBD,KAAYA,EAAOE,SAAU,SACrD,MAAMC,EAAWH,EAAOI,gBAAgBC,QAAOC,GAAWA,EAAQC,QAAQC,UAAW,GACrF,GAAIL,EAASM,OAAS,EAAG,CACvB,IAAK,MAAMH,KAAWH,EAAU,CAC9B,GAAIL,EAAKY,IAAIJ,EAAQC,SAAU,SAC/BT,EAAKa,IAAIL,EAAQC,SACjBV,EAAOe,KAAK,CACVC,GAAIP,EAAQC,QACZO,MAAOR,EAAQS,WAAWP,QAAUF,EAAQQ,MAAMN,QAAUF,EAAQC,S,CAGxE,Q,CAEF,GAAIT,EAAKY,IAAIV,EAAOa,IAAK,SACzBf,EAAKa,IAAIX,EAAOa,IAChBhB,EAAOe,KAAK,CACVC,GAAIb,EAAOa,GACXC,MACEd,EAAOe,WAAWP,QAAUR,EAAOgB,OAAOR,QAAUR,EAAOiB,aAAaT,QAAUR,EAAOa,I,CAI/F,OAAOhB,CACT,CAEM,SAAUqB,EACdtB,EACAuB,GAEA,MAAMtB,EAASF,EAAgBC,GAC/B,MAAO,CACL,CACEoB,OAAQ,OACRI,MAAOvB,EAAOwB,KAAIC,IAAK,CACrBR,MAAOQ,EAAMR,MACbS,MAAO,GAAG7B,IAA0B8B,mBAAmBF,EAAMT,MAC7DY,WAAYN,GAAMO,WAAaJ,EAAMT,QAGzC,CACEG,OAAQ,QACRI,MAAO,CACL,CACEN,MAAO,YACPS,MAAO/B,EACPmC,KAAM,UACNF,WAAYN,GAAMS,YAAc,OAElC,CACEd,MAAO,aACPS,MAAO9B,EACPkC,KAAM,YACNF,WAAYN,GAAMS,YAAc,UAK1C,CAEM,SAAUC,EACdC,EACAC,GAEA,GAAID,IAASC,EAAO,OAAO,KAC3B,IAAKD,IAASC,EAAO,OAAO,MAC5B,OAAOD,EAAKJ,WAAaK,EAAML,UAAYI,EAAKF,YAAcG,EAAMH,SACtE,C,SAGgBI,EACdpC,EACAqC,EACAC,GAEA,MAAMrC,EAASF,EAAgBC,GAC/B,GAAIC,EAAOY,SAAW,EAAG,OAAOwB,GAAW,KAE3C,GAAIC,EAAKX,QAAU/B,GAA4B0C,EAAKX,QAAU9B,EAA2B,CACvF,MAAMmC,EAAYM,EAAKX,QAAU/B,EAA2B,MAAQ,OACpE,MAAMkC,EAAW7B,EAAOsC,MAAKb,GAASA,EAAMT,KAAOoB,GAASP,WACxDO,EAASP,SACT7B,EAAO,GAAIgB,GACf,MAAO,CAAEa,WAAUE,Y,CAGrB,IAAKM,EAAKX,OAAOa,WAAW1C,GAA0B,OAAOuC,GAAW,KACxE,IAAIP,EACJ,IACEA,EAAWW,mBAAmBH,EAAKX,MAAMe,MAAM5C,EAAwBe,Q,CACvE,MACA,OAAOwB,GAAW,I,CAEpB,IAAKpC,EAAOsC,MAAKb,GAASA,EAAMT,KAAOa,IAAW,OAAOO,GAAW,KACpE,GAAIA,GAASP,WAAaA,EAAU,OAAOO,GAAW,KACtD,MAAO,CAAEP,WAAUE,UAAWK,GAASL,WAAa,MACtD,Q","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{p as o,H as i,h as s,a as r,t as n}from"./index.js";const e={FlagAustria:()=>import("@ds-mo/icons/svg/flags/FlagAustria").then((o=>o.FlagAustria)),FlagBelgium:()=>import("@ds-mo/icons/svg/flags/FlagBelgium").then((o=>o.FlagBelgium)),FlagBulgaria:()=>import("@ds-mo/icons/svg/flags/FlagBulgaria").then((o=>o.FlagBulgaria)),FlagCanada:()=>import("@ds-mo/icons/svg/flags/FlagCanada").then((o=>o.FlagCanada)),FlagCroatia:()=>import("@ds-mo/icons/svg/flags/FlagCroatia").then((o=>o.FlagCroatia)),FlagCyprus:()=>import("@ds-mo/icons/svg/flags/FlagCyprus").then((o=>o.FlagCyprus)),FlagCzechRepublic:()=>import("@ds-mo/icons/svg/flags/FlagCzechRepublic").then((o=>o.FlagCzechRepublic)),FlagDenmark:()=>import("@ds-mo/icons/svg/flags/FlagDenmark").then((o=>o.FlagDenmark)),FlagEU:()=>import("@ds-mo/icons/svg/flags/FlagEU").then((o=>o.FlagEU)),FlagEstonia:()=>import("@ds-mo/icons/svg/flags/FlagEstonia").then((o=>o.FlagEstonia)),FlagFinland:()=>import("@ds-mo/icons/svg/flags/FlagFinland").then((o=>o.FlagFinland)),FlagFrance:()=>import("@ds-mo/icons/svg/flags/FlagFrance").then((o=>o.FlagFrance)),FlagGermany:()=>import("@ds-mo/icons/svg/flags/FlagGermany").then((o=>o.FlagGermany)),FlagGreece:()=>import("@ds-mo/icons/svg/flags/FlagGreece").then((o=>o.FlagGreece)),FlagHungary:()=>import("@ds-mo/icons/svg/flags/FlagHungary").then((o=>o.FlagHungary)),FlagIreland:()=>import("@ds-mo/icons/svg/flags/FlagIreland").then((o=>o.FlagIreland)),FlagItaly:()=>import("@ds-mo/icons/svg/flags/FlagItaly").then((o=>o.FlagItaly)),FlagLatvia:()=>import("@ds-mo/icons/svg/flags/FlagLatvia").then((o=>o.FlagLatvia)),FlagLithuania:()=>import("@ds-mo/icons/svg/flags/FlagLithuania").then((o=>o.FlagLithuania)),FlagLuxembourg:()=>import("@ds-mo/icons/svg/flags/FlagLuxembourg").then((o=>o.FlagLuxembourg)),FlagMalta:()=>import("@ds-mo/icons/svg/flags/FlagMalta").then((o=>o.FlagMalta)),FlagMexico:()=>import("@ds-mo/icons/svg/flags/FlagMexico").then((o=>o.FlagMexico)),FlagNetherlands:()=>import("@ds-mo/icons/svg/flags/FlagNetherlands").then((o=>o.FlagNetherlands)),FlagPoland:()=>import("@ds-mo/icons/svg/flags/FlagPoland").then((o=>o.FlagPoland)),FlagPortugal:()=>import("@ds-mo/icons/svg/flags/FlagPortugal").then((o=>o.FlagPortugal)),FlagRomania:()=>import("@ds-mo/icons/svg/flags/FlagRomania").then((o=>o.FlagRomania)),FlagSlovakia:()=>import("@ds-mo/icons/svg/flags/FlagSlovakia").then((o=>o.FlagSlovakia)),FlagSlovenia:()=>import("@ds-mo/icons/svg/flags/FlagSlovenia").then((o=>o.FlagSlovenia)),FlagSpain:()=>import("@ds-mo/icons/svg/flags/FlagSpain").then((o=>o.FlagSpain)),FlagSweden:()=>import("@ds-mo/icons/svg/flags/FlagSweden").then((o=>o.FlagSweden)),FlagUnitedKingdom:()=>import("@ds-mo/icons/svg/flags/FlagUnitedKingdom").then((o=>o.FlagUnitedKingdom)),FlagUnitedStates:()=>import("@ds-mo/icons/svg/flags/FlagUnitedStates").then((o=>o.FlagUnitedStates))};const c={AI:()=>import("@ds-mo/icons/svg/AI").then((o=>o.AI)),AIChip:()=>import("@ds-mo/icons/svg/AIChip").then((o=>o.AIChip)),AINew:()=>import("@ds-mo/icons/svg/AINew").then((o=>o.AINew)),AISparkle:()=>import("@ds-mo/icons/svg/AISparkle").then((o=>o.AISparkle)),AUX:()=>import("@ds-mo/icons/svg/AUX").then((o=>o.AUX)),AUXFilled:()=>import("@ds-mo/icons/svg/AUXFilled").then((o=>o.AUXFilled)),AndroidFilled:()=>import("@ds-mo/icons/svg/AndroidFilled").then((o=>o.AndroidFilled)),ArrowDown:()=>import("@ds-mo/icons/svg/ArrowDown").then((o=>o.ArrowDown)),ArrowLeft:()=>import("@ds-mo/icons/svg/ArrowLeft").then((o=>o.ArrowLeft)),ArrowPath:()=>import("@ds-mo/icons/svg/ArrowPath").then((o=>o.ArrowPath)),ArrowRight:()=>import("@ds-mo/icons/svg/ArrowRight").then((o=>o.ArrowRight)),ArrowUp:()=>import("@ds-mo/icons/svg/ArrowUp").then((o=>o.ArrowUp)),ArrowsDiagonal:()=>import("@ds-mo/icons/svg/ArrowsDiagonal").then((o=>o.ArrowsDiagonal)),ArrowsDiff:()=>import("@ds-mo/icons/svg/ArrowsDiff").then((o=>o.ArrowsDiff)),ArrowsDiffDisabled:()=>import("@ds-mo/icons/svg/ArrowsDiffDisabled").then((o=>o.ArrowsDiffDisabled)),ArrowsVertical:()=>import("@ds-mo/icons/svg/ArrowsVertical").then((o=>o.ArrowsVertical)),AtSign:()=>import("@ds-mo/icons/svg/AtSign").then((o=>o.AtSign)),Avatar:()=>import("@ds-mo/icons/svg/Avatar").then((o=>o.Avatar)),BackslashBrackets:()=>import("@ds-mo/icons/svg/BackslashBrackets").then((o=>o.BackslashBrackets)),BatteryCharging:()=>import("@ds-mo/icons/svg/BatteryCharging").then((o=>o.BatteryCharging)),BatteryEmpty:()=>import("@ds-mo/icons/svg/BatteryEmpty").then((o=>o.BatteryEmpty)),BatteryFull:()=>import("@ds-mo/icons/svg/BatteryFull").then((o=>o.BatteryFull)),BatteryHalf:()=>import("@ds-mo/icons/svg/BatteryHalf").then((o=>o.BatteryHalf)),BatteryLow:()=>import("@ds-mo/icons/svg/BatteryLow").then((o=>o.BatteryLow)),Beaker:()=>import("@ds-mo/icons/svg/Beaker").then((o=>o.Beaker)),Bell:()=>import("@ds-mo/icons/svg/Bell").then((o=>o.Bell)),BellCircle:()=>import("@ds-mo/icons/svg/BellCircle").then((o=>o.BellCircle)),BellExclamation:()=>import("@ds-mo/icons/svg/BellExclamation").then((o=>o.BellExclamation)),BellFilled:()=>import("@ds-mo/icons/svg/BellFilled").then((o=>o.BellFilled)),BellRinging:()=>import("@ds-mo/icons/svg/BellRinging").then((o=>o.BellRinging)),BellWifi:()=>import("@ds-mo/icons/svg/BellWifi").then((o=>o.BellWifi)),BlackWhite:()=>import("@ds-mo/icons/svg/BlackWhite").then((o=>o.BlackWhite)),BlankUI:()=>import("@ds-mo/icons/svg/BlankUI").then((o=>o.BlankUI)),Bluetooth:()=>import("@ds-mo/icons/svg/Bluetooth").then((o=>o.Bluetooth)),Bolt:()=>import("@ds-mo/icons/svg/Bolt").then((o=>o.Bolt)),BoltFilled:()=>import("@ds-mo/icons/svg/BoltFilled").then((o=>o.BoltFilled)),Bookmark:()=>import("@ds-mo/icons/svg/Bookmark").then((o=>o.Bookmark)),Box:()=>import("@ds-mo/icons/svg/Box").then((o=>o.Box)),Braces:()=>import("@ds-mo/icons/svg/Braces").then((o=>o.Braces)),BracketsCircle:()=>import("@ds-mo/icons/svg/BracketsCircle").then((o=>o.BracketsCircle)),Bug:()=>import("@ds-mo/icons/svg/Bug").then((o=>o.Bug)),BuildingFacility:()=>import("@ds-mo/icons/svg/BuildingFacility").then((o=>o.BuildingFacility)),BuildingHome:()=>import("@ds-mo/icons/svg/BuildingHome").then((o=>o.BuildingHome)),BuildingOffice:()=>import("@ds-mo/icons/svg/BuildingOffice").then((o=>o.BuildingOffice)),BuildingPublic:()=>import("@ds-mo/icons/svg/BuildingPublic").then((o=>o.BuildingPublic)),BuildingShop:()=>import("@ds-mo/icons/svg/BuildingShop").then((o=>o.BuildingShop)),Bulb:()=>import("@ds-mo/icons/svg/Bulb").then((o=>o.Bulb)),Calculator:()=>import("@ds-mo/icons/svg/Calculator").then((o=>o.Calculator)),Calendar:()=>import("@ds-mo/icons/svg/Calendar").then((o=>o.Calendar)),CalendarClock:()=>import("@ds-mo/icons/svg/CalendarClock").then((o=>o.CalendarClock)),CameraA:()=>import("@ds-mo/icons/svg/CameraA").then((o=>o.CameraA)),CameraB:()=>import("@ds-mo/icons/svg/CameraB").then((o=>o.CameraB)),Card:()=>import("@ds-mo/icons/svg/Card").then((o=>o.Card)),CardPerson:()=>import("@ds-mo/icons/svg/CardPerson").then((o=>o.CardPerson)),Cart:()=>import("@ds-mo/icons/svg/Cart").then((o=>o.Cart)),Chart:()=>import("@ds-mo/icons/svg/Chart").then((o=>o.Chart)),Check:()=>import("@ds-mo/icons/svg/Check").then((o=>o.Check)),CheckCircle:()=>import("@ds-mo/icons/svg/CheckCircle").then((o=>o.CheckCircle)),CheckCircleFilled:()=>import("@ds-mo/icons/svg/CheckCircleFilled").then((o=>o.CheckCircleFilled)),CheckDouble:()=>import("@ds-mo/icons/svg/CheckDouble").then((o=>o.CheckDouble)),ChevronDown:()=>import("@ds-mo/icons/svg/ChevronDown").then((o=>o.ChevronDown)),ChevronDownUp:()=>import("@ds-mo/icons/svg/ChevronDownUp").then((o=>o.ChevronDownUp)),ChevronLeft:()=>import("@ds-mo/icons/svg/ChevronLeft").then((o=>o.ChevronLeft)),ChevronLeftDouble:()=>import("@ds-mo/icons/svg/ChevronLeftDouble").then((o=>o.ChevronLeftDouble)),ChevronRight:()=>import("@ds-mo/icons/svg/ChevronRight").then((o=>o.ChevronRight)),ChevronRightDouble:()=>import("@ds-mo/icons/svg/ChevronRightDouble").then((o=>o.ChevronRightDouble)),ChevronUp:()=>import("@ds-mo/icons/svg/ChevronUp").then((o=>o.ChevronUp)),ChevronUpDown:()=>import("@ds-mo/icons/svg/ChevronUpDown").then((o=>o.ChevronUpDown)),Circle:()=>import("@ds-mo/icons/svg/Circle").then((o=>o.Circle)),CircleArrow:()=>import("@ds-mo/icons/svg/CircleArrow").then((o=>o.CircleArrow)),CircleArrowsDiff:()=>import("@ds-mo/icons/svg/CircleArrowsDiff").then((o=>o.CircleArrowsDiff)),CircleArrowsDiffDisabled:()=>import("@ds-mo/icons/svg/CircleArrowsDiffDisabled").then((o=>o.CircleArrowsDiffDisabled)),CircleConcentricFilled:()=>import("@ds-mo/icons/svg/CircleConcentricFilled").then((o=>o.CircleConcentricFilled)),CircleConcentricThree:()=>import("@ds-mo/icons/svg/CircleConcentricThree").then((o=>o.CircleConcentricThree)),CircleConcentricTwo:()=>import("@ds-mo/icons/svg/CircleConcentricTwo").then((o=>o.CircleConcentricTwo)),CircleExclamation:()=>import("@ds-mo/icons/svg/CircleExclamation").then((o=>o.CircleExclamation)),CircleExclamationFilled:()=>import("@ds-mo/icons/svg/CircleExclamationFilled").then((o=>o.CircleExclamationFilled)),CircleFastForward:()=>import("@ds-mo/icons/svg/CircleFastForward").then((o=>o.CircleFastForward)),CircleFilled:()=>import("@ds-mo/icons/svg/CircleFilled").then((o=>o.CircleFilled)),CircleGrid:()=>import("@ds-mo/icons/svg/CircleGrid").then((o=>o.CircleGrid)),CirclePlay:()=>import("@ds-mo/icons/svg/CirclePlay").then((o=>o.CirclePlay)),CircleQuestion:()=>import("@ds-mo/icons/svg/CircleQuestion").then((o=>o.CircleQuestion)),CircleSlash:()=>import("@ds-mo/icons/svg/CircleSlash").then((o=>o.CircleSlash)),Clipboard:()=>import("@ds-mo/icons/svg/Clipboard").then((o=>o.Clipboard)),ClipboardCheck:()=>import("@ds-mo/icons/svg/ClipboardCheck").then((o=>o.ClipboardCheck)),Clock:()=>import("@ds-mo/icons/svg/Clock").then((o=>o.Clock)),ClockDefer:()=>import("@ds-mo/icons/svg/ClockDefer").then((o=>o.ClockDefer)),ClockFilled:()=>import("@ds-mo/icons/svg/ClockFilled").then((o=>o.ClockFilled)),ClockSixteenHour:()=>import("@ds-mo/icons/svg/ClockSixteenHour").then((o=>o.ClockSixteenHour)),Cloud:()=>import("@ds-mo/icons/svg/Cloud").then((o=>o.Cloud)),CloudEllipses:()=>import("@ds-mo/icons/svg/CloudEllipses").then((o=>o.CloudEllipses)),CloudLightning:()=>import("@ds-mo/icons/svg/CloudLightning").then((o=>o.CloudLightning)),CloudRain:()=>import("@ds-mo/icons/svg/CloudRain").then((o=>o.CloudRain)),CloudRainSun:()=>import("@ds-mo/icons/svg/CloudRainSun").then((o=>o.CloudRainSun)),CloudSun:()=>import("@ds-mo/icons/svg/CloudSun").then((o=>o.CloudSun)),CloudWind:()=>import("@ds-mo/icons/svg/CloudWind").then((o=>o.CloudWind)),Cluster:()=>import("@ds-mo/icons/svg/Cluster").then((o=>o.Cluster)),Coin:()=>import("@ds-mo/icons/svg/Coin").then((o=>o.Coin)),CoinStack:()=>import("@ds-mo/icons/svg/CoinStack").then((o=>o.CoinStack)),CoinStackGeneral:()=>import("@ds-mo/icons/svg/CoinStackGeneral").then((o=>o.CoinStackGeneral)),Compass:()=>import("@ds-mo/icons/svg/Compass").then((o=>o.Compass)),Copy:()=>import("@ds-mo/icons/svg/Copy").then((o=>o.Copy)),Crop:()=>import("@ds-mo/icons/svg/Crop").then((o=>o.Crop)),Cross:()=>import("@ds-mo/icons/svg/Cross").then((o=>o.Cross)),CrossCircle:()=>import("@ds-mo/icons/svg/CrossCircle").then((o=>o.CrossCircle)),CrossCircleFilled:()=>import("@ds-mo/icons/svg/CrossCircleFilled").then((o=>o.CrossCircleFilled)),Cube:()=>import("@ds-mo/icons/svg/Cube").then((o=>o.Cube)),Cup:()=>import("@ds-mo/icons/svg/Cup").then((o=>o.Cup)),CursorPointer:()=>import("@ds-mo/icons/svg/CursorPointer").then((o=>o.CursorPointer)),CursorPointerMinus:()=>import("@ds-mo/icons/svg/CursorPointerMinus").then((o=>o.CursorPointerMinus)),CursorPointerPlus:()=>import("@ds-mo/icons/svg/CursorPointerPlus").then((o=>o.CursorPointerPlus)),Dashboard:()=>import("@ds-mo/icons/svg/Dashboard").then((o=>o.Dashboard)),DeviceAIDashcamPlus:()=>import("@ds-mo/icons/svg/DeviceAIDashcamPlus").then((o=>o.DeviceAIDashcamPlus)),DeviceAssetTracker:()=>import("@ds-mo/icons/svg/DeviceAssetTracker").then((o=>o.DeviceAssetTracker)),DeviceDVR:()=>import("@ds-mo/icons/svg/DeviceDVR").then((o=>o.DeviceDVR)),DeviceDashcam:()=>import("@ds-mo/icons/svg/DeviceDashcam").then((o=>o.DeviceDashcam)),DeviceDashcamLiveStream:()=>import("@ds-mo/icons/svg/DeviceDashcamLiveStream").then((o=>o.DeviceDashcamLiveStream)),DeviceDoorSensor:()=>import("@ds-mo/icons/svg/DeviceDoorSensor").then((o=>o.DeviceDoorSensor)),DeviceMobile:()=>import("@ds-mo/icons/svg/DeviceMobile").then((o=>o.DeviceMobile)),DeviceMobileTwo:()=>import("@ds-mo/icons/svg/DeviceMobileTwo").then((o=>o.DeviceMobileTwo)),DeviceOmnicam:()=>import("@ds-mo/icons/svg/DeviceOmnicam").then((o=>o.DeviceOmnicam)),DeviceSensor:()=>import("@ds-mo/icons/svg/DeviceSensor").then((o=>o.DeviceSensor)),DeviceTablet:()=>import("@ds-mo/icons/svg/DeviceTablet").then((o=>o.DeviceTablet)),DeviceVehicleGateway:()=>import("@ds-mo/icons/svg/DeviceVehicleGateway").then((o=>o.DeviceVehicleGateway)),Devices:()=>import("@ds-mo/icons/svg/Devices").then((o=>o.Devices)),Document:()=>import("@ds-mo/icons/svg/Document").then((o=>o.Document)),DocumentArrow:()=>import("@ds-mo/icons/svg/DocumentArrow").then((o=>o.DocumentArrow)),DocumentChart:()=>import("@ds-mo/icons/svg/DocumentChart").then((o=>o.DocumentChart)),DocumentDollar:()=>import("@ds-mo/icons/svg/DocumentDollar").then((o=>o.DocumentDollar)),DocumentGear:()=>import("@ds-mo/icons/svg/DocumentGear").then((o=>o.DocumentGear)),DocumentInverted:()=>import("@ds-mo/icons/svg/DocumentInverted").then((o=>o.DocumentInverted)),DocumentPencil:()=>import("@ds-mo/icons/svg/DocumentPencil").then((o=>o.DocumentPencil)),DocumentPlus:()=>import("@ds-mo/icons/svg/DocumentPlus").then((o=>o.DocumentPlus)),DocumentQuestion:()=>import("@ds-mo/icons/svg/DocumentQuestion").then((o=>o.DocumentQuestion)),DocumentReceipt:()=>import("@ds-mo/icons/svg/DocumentReceipt").then((o=>o.DocumentReceipt)),DocumentStacked:()=>import("@ds-mo/icons/svg/DocumentStacked").then((o=>o.DocumentStacked)),Dot:()=>import("@ds-mo/icons/svg/Dot").then((o=>o.Dot)),DotFilled:()=>import("@ds-mo/icons/svg/DotFilled").then((o=>o.DotFilled)),DotPath:()=>import("@ds-mo/icons/svg/DotPath").then((o=>o.DotPath)),Download:()=>import("@ds-mo/icons/svg/Download").then((o=>o.Download)),Drag:()=>import("@ds-mo/icons/svg/Drag").then((o=>o.Drag)),Ellipses:()=>import("@ds-mo/icons/svg/Ellipses").then((o=>o.Ellipses)),Email:()=>import("@ds-mo/icons/svg/Email").then((o=>o.Email)),Engine:()=>import("@ds-mo/icons/svg/Engine").then((o=>o.Engine)),Enter:()=>import("@ds-mo/icons/svg/Enter").then((o=>o.Enter)),EntityAsset:()=>import("@ds-mo/icons/svg/EntityAsset").then((o=>o.EntityAsset)),EntityAssetFilled:()=>import("@ds-mo/icons/svg/EntityAssetFilled").then((o=>o.EntityAssetFilled)),EntityDriver:()=>import("@ds-mo/icons/svg/EntityDriver").then((o=>o.EntityDriver)),EntityDriverFilled:()=>import("@ds-mo/icons/svg/EntityDriverFilled").then((o=>o.EntityDriverFilled)),EntityTravelGroup:()=>import("@ds-mo/icons/svg/EntityTravelGroup").then((o=>o.EntityTravelGroup)),EntityTravelGroupFilled:()=>import("@ds-mo/icons/svg/EntityTravelGroupFilled").then((o=>o.EntityTravelGroupFilled)),EntityVehicle:()=>import("@ds-mo/icons/svg/EntityVehicle").then((o=>o.EntityVehicle)),EntityVehicleCharging:()=>import("@ds-mo/icons/svg/EntityVehicleCharging").then((o=>o.EntityVehicleCharging)),EntityVehicleChargingFilled:()=>import("@ds-mo/icons/svg/EntityVehicleChargingFilled").then((o=>o.EntityVehicleChargingFilled)),EntityVehicleFilled:()=>import("@ds-mo/icons/svg/EntityVehicleFilled").then((o=>o.EntityVehicleFilled)),EntityVehicleImmobilized:()=>import("@ds-mo/icons/svg/EntityVehicleImmobilized").then((o=>o.EntityVehicleImmobilized)),EntityVehicleImmobilizedFilled:()=>import("@ds-mo/icons/svg/EntityVehicleImmobilizedFilled").then((o=>o.EntityVehicleImmobilizedFilled)),ErrorTriangle:()=>import("@ds-mo/icons/svg/ErrorTriangle").then((o=>o.ErrorTriangle)),ErrorTriangleFilled:()=>import("@ds-mo/icons/svg/ErrorTriangleFilled").then((o=>o.ErrorTriangleFilled)),ErrorTriangleSimpleFilled:()=>import("@ds-mo/icons/svg/ErrorTriangleSimpleFilled").then((o=>o.ErrorTriangleSimpleFilled)),Export:()=>import("@ds-mo/icons/svg/Export").then((o=>o.Export)),ExternalLink:()=>import("@ds-mo/icons/svg/ExternalLink").then((o=>o.ExternalLink)),Eye:()=>import("@ds-mo/icons/svg/Eye").then((o=>o.Eye)),EyeDisabled:()=>import("@ds-mo/icons/svg/EyeDisabled").then((o=>o.EyeDisabled)),EyeLock:()=>import("@ds-mo/icons/svg/EyeLock").then((o=>o.EyeLock)),FastForward:()=>import("@ds-mo/icons/svg/FastForward").then((o=>o.FastForward)),FastForwardSkip:()=>import("@ds-mo/icons/svg/FastForwardSkip").then((o=>o.FastForwardSkip)),Filters:()=>import("@ds-mo/icons/svg/Filters").then((o=>o.Filters)),FitToScreen:()=>import("@ds-mo/icons/svg/FitToScreen").then((o=>o.FitToScreen)),Flag:()=>import("@ds-mo/icons/svg/Flag").then((o=>o.Flag)),FlagFilled:()=>import("@ds-mo/icons/svg/FlagFilled").then((o=>o.FlagFilled)),FloppyDisk:()=>import("@ds-mo/icons/svg/FloppyDisk").then((o=>o.FloppyDisk)),Folder:()=>import("@ds-mo/icons/svg/Folder").then((o=>o.Folder)),FolderFilled:()=>import("@ds-mo/icons/svg/FolderFilled").then((o=>o.FolderFilled)),FuelPump:()=>import("@ds-mo/icons/svg/FuelPump").then((o=>o.FuelPump)),FullScreen:()=>import("@ds-mo/icons/svg/FullScreen").then((o=>o.FullScreen)),FullScreenExit:()=>import("@ds-mo/icons/svg/FullScreenExit").then((o=>o.FullScreenExit)),Gauge:()=>import("@ds-mo/icons/svg/Gauge").then((o=>o.Gauge)),GaugeTemperature:()=>import("@ds-mo/icons/svg/GaugeTemperature").then((o=>o.GaugeTemperature)),Gear:()=>import("@ds-mo/icons/svg/Gear").then((o=>o.Gear)),GearCheck:()=>import("@ds-mo/icons/svg/GearCheck").then((o=>o.GearCheck)),Geofence:()=>import("@ds-mo/icons/svg/Geofence").then((o=>o.Geofence)),GeofenceCircle:()=>import("@ds-mo/icons/svg/GeofenceCircle").then((o=>o.GeofenceCircle)),GeofenceDiamond:()=>import("@ds-mo/icons/svg/GeofenceDiamond").then((o=>o.GeofenceDiamond)),GeofenceSquare:()=>import("@ds-mo/icons/svg/GeofenceSquare").then((o=>o.GeofenceSquare)),GlobeNetwork:()=>import("@ds-mo/icons/svg/GlobeNetwork").then((o=>o.GlobeNetwork)),GlobeWorldMap:()=>import("@ds-mo/icons/svg/GlobeWorldMap").then((o=>o.GlobeWorldMap)),Graph:()=>import("@ds-mo/icons/svg/Graph").then((o=>o.Graph)),GraphArrow:()=>import("@ds-mo/icons/svg/GraphArrow").then((o=>o.GraphArrow)),GraphBars:()=>import("@ds-mo/icons/svg/GraphBars").then((o=>o.GraphBars)),GraphDecreasing:()=>import("@ds-mo/icons/svg/GraphDecreasing").then((o=>o.GraphDecreasing)),GraphIncreasing:()=>import("@ds-mo/icons/svg/GraphIncreasing").then((o=>o.GraphIncreasing)),Hamburger:()=>import("@ds-mo/icons/svg/Hamburger").then((o=>o.Hamburger)),HandHeart:()=>import("@ds-mo/icons/svg/HandHeart").then((o=>o.HandHeart)),HandOpen:()=>import("@ds-mo/icons/svg/HandOpen").then((o=>o.HandOpen)),Headset:()=>import("@ds-mo/icons/svg/Headset").then((o=>o.Headset)),History:()=>import("@ds-mo/icons/svg/History").then((o=>o.History)),HourGlass:()=>import("@ds-mo/icons/svg/HourGlass").then((o=>o.HourGlass)),Image:()=>import("@ds-mo/icons/svg/Image").then((o=>o.Image)),Import:()=>import("@ds-mo/icons/svg/Import").then((o=>o.Import)),ImportClock:()=>import("@ds-mo/icons/svg/ImportClock").then((o=>o.ImportClock)),Inbox:()=>import("@ds-mo/icons/svg/Inbox").then((o=>o.Inbox)),IosFilled:()=>import("@ds-mo/icons/svg/IosFilled").then((o=>o.IosFilled)),Jerrycan:()=>import("@ds-mo/icons/svg/Jerrycan").then((o=>o.Jerrycan)),KeyA:()=>import("@ds-mo/icons/svg/KeyA").then((o=>o.KeyA)),KeyB:()=>import("@ds-mo/icons/svg/KeyB").then((o=>o.KeyB)),KeyCmd:()=>import("@ds-mo/icons/svg/KeyCmd").then((o=>o.KeyCmd)),KeyShift:()=>import("@ds-mo/icons/svg/KeyShift").then((o=>o.KeyShift)),LED:()=>import("@ds-mo/icons/svg/LED").then((o=>o.LED)),Layers:()=>import("@ds-mo/icons/svg/Layers").then((o=>o.Layers)),Leaf:()=>import("@ds-mo/icons/svg/Leaf").then((o=>o.Leaf)),LeftCollapse:()=>import("@ds-mo/icons/svg/LeftCollapse").then((o=>o.LeftCollapse)),LeftCollapseB:()=>import("@ds-mo/icons/svg/LeftCollapseB").then((o=>o.LeftCollapseB)),LeftExpand:()=>import("@ds-mo/icons/svg/LeftExpand").then((o=>o.LeftExpand)),LeftExpandB:()=>import("@ds-mo/icons/svg/LeftExpandB").then((o=>o.LeftExpandB)),LeftTurnSignal:()=>import("@ds-mo/icons/svg/LeftTurnSignal").then((o=>o.LeftTurnSignal)),LetterB:()=>import("@ds-mo/icons/svg/LetterB").then((o=>o.LetterB)),LetterC:()=>import("@ds-mo/icons/svg/LetterC").then((o=>o.LetterC)),LetterI:()=>import("@ds-mo/icons/svg/LetterI").then((o=>o.LetterI)),License:()=>import("@ds-mo/icons/svg/License").then((o=>o.License)),LicensePlate:()=>import("@ds-mo/icons/svg/LicensePlate").then((o=>o.LicensePlate)),Lifebuoy:()=>import("@ds-mo/icons/svg/Lifebuoy").then((o=>o.Lifebuoy)),Link:()=>import("@ds-mo/icons/svg/Link").then((o=>o.Link)),List:()=>import("@ds-mo/icons/svg/List").then((o=>o.List)),Loads:()=>import("@ds-mo/icons/svg/Loads").then((o=>o.Loads)),LocationPin:()=>import("@ds-mo/icons/svg/LocationPin").then((o=>o.LocationPin)),LocationPinArrows:()=>import("@ds-mo/icons/svg/LocationPinArrows").then((o=>o.LocationPinArrows)),LocationPinDisabled:()=>import("@ds-mo/icons/svg/LocationPinDisabled").then((o=>o.LocationPinDisabled)),LocationPinDollar:()=>import("@ds-mo/icons/svg/LocationPinDollar").then((o=>o.LocationPinDollar)),LockClosed:()=>import("@ds-mo/icons/svg/LockClosed").then((o=>o.LockClosed)),LockClosedFilled:()=>import("@ds-mo/icons/svg/LockClosedFilled").then((o=>o.LockClosedFilled)),LockOpen:()=>import("@ds-mo/icons/svg/LockOpen").then((o=>o.LockOpen)),Logout:()=>import("@ds-mo/icons/svg/Logout").then((o=>o.Logout)),Logs:()=>import("@ds-mo/icons/svg/Logs").then((o=>o.Logs)),LogsMagnifyingGlass:()=>import("@ds-mo/icons/svg/LogsMagnifyingGlass").then((o=>o.LogsMagnifyingGlass)),MagnifyingGlass:()=>import("@ds-mo/icons/svg/MagnifyingGlass").then((o=>o.MagnifyingGlass)),MagnifyingGlassGraph:()=>import("@ds-mo/icons/svg/MagnifyingGlassGraph").then((o=>o.MagnifyingGlassGraph)),MagnifyingGlassZoomIn:()=>import("@ds-mo/icons/svg/MagnifyingGlassZoomIn").then((o=>o.MagnifyingGlassZoomIn)),MagnifyingGlassZoomOut:()=>import("@ds-mo/icons/svg/MagnifyingGlassZoomOut").then((o=>o.MagnifyingGlassZoomOut)),MapNavigation:()=>import("@ds-mo/icons/svg/MapNavigation").then((o=>o.MapNavigation)),MapPage:()=>import("@ds-mo/icons/svg/MapPage").then((o=>o.MapPage)),MapPin:()=>import("@ds-mo/icons/svg/MapPin").then((o=>o.MapPin)),MarkRead:()=>import("@ds-mo/icons/svg/MarkRead").then((o=>o.MarkRead)),Match:()=>import("@ds-mo/icons/svg/Match").then((o=>o.Match)),MessageBubble:()=>import("@ds-mo/icons/svg/MessageBubble").then((o=>o.MessageBubble)),MessageBubbleStack:()=>import("@ds-mo/icons/svg/MessageBubbleStack").then((o=>o.MessageBubbleStack)),Messaging:()=>import("@ds-mo/icons/svg/Messaging").then((o=>o.Messaging)),Mic:()=>import("@ds-mo/icons/svg/Mic").then((o=>o.Mic)),MicMute:()=>import("@ds-mo/icons/svg/MicMute").then((o=>o.MicMute)),Minimize:()=>import("@ds-mo/icons/svg/Minimize").then((o=>o.Minimize)),Monitor:()=>import("@ds-mo/icons/svg/Monitor").then((o=>o.Monitor)),Notification:()=>import("@ds-mo/icons/svg/Notification").then((o=>o.Notification)),NumberTen:()=>import("@ds-mo/icons/svg/NumberTen").then((o=>o.NumberTen)),OctagonSubtract:()=>import("@ds-mo/icons/svg/OctagonSubtract").then((o=>o.OctagonSubtract)),Odometer:()=>import("@ds-mo/icons/svg/Odometer").then((o=>o.Odometer)),OverviewAI:()=>import("@ds-mo/icons/svg/OverviewAI").then((o=>o.OverviewAI)),PanelCollapse:()=>import("@ds-mo/icons/svg/PanelCollapse").then((o=>o.PanelCollapse)),PanelExpand:()=>import("@ds-mo/icons/svg/PanelExpand").then((o=>o.PanelExpand)),Paperclip:()=>import("@ds-mo/icons/svg/Paperclip").then((o=>o.Paperclip)),PaperplaneSend:()=>import("@ds-mo/icons/svg/PaperplaneSend").then((o=>o.PaperplaneSend)),Paragraph:()=>import("@ds-mo/icons/svg/Paragraph").then((o=>o.Paragraph)),ParagraphCheck:()=>import("@ds-mo/icons/svg/ParagraphCheck").then((o=>o.ParagraphCheck)),ParagraphPencil:()=>import("@ds-mo/icons/svg/ParagraphPencil").then((o=>o.ParagraphPencil)),Pause:()=>import("@ds-mo/icons/svg/Pause").then((o=>o.Pause)),PauseFilled:()=>import("@ds-mo/icons/svg/PauseFilled").then((o=>o.PauseFilled)),Pencil:()=>import("@ds-mo/icons/svg/Pencil").then((o=>o.Pencil)),PencilSquiggle:()=>import("@ds-mo/icons/svg/PencilSquiggle").then((o=>o.PencilSquiggle)),Person:()=>import("@ds-mo/icons/svg/Person").then((o=>o.Person)),PersonAt:()=>import("@ds-mo/icons/svg/PersonAt").then((o=>o.PersonAt)),PersonConnect:()=>import("@ds-mo/icons/svg/PersonConnect").then((o=>o.PersonConnect)),PersonFrame:()=>import("@ds-mo/icons/svg/PersonFrame").then((o=>o.PersonFrame)),PersonGear:()=>import("@ds-mo/icons/svg/PersonGear").then((o=>o.PersonGear)),PersonGroup:()=>import("@ds-mo/icons/svg/PersonGroup").then((o=>o.PersonGroup)),PersonGroupArrows:()=>import("@ds-mo/icons/svg/PersonGroupArrows").then((o=>o.PersonGroupArrows)),PersonGroupThree:()=>import("@ds-mo/icons/svg/PersonGroupThree").then((o=>o.PersonGroupThree)),PersonManager:()=>import("@ds-mo/icons/svg/PersonManager").then((o=>o.PersonManager)),PersonShield:()=>import("@ds-mo/icons/svg/PersonShield").then((o=>o.PersonShield)),PersonStar:()=>import("@ds-mo/icons/svg/PersonStar").then((o=>o.PersonStar)),Phone:()=>import("@ds-mo/icons/svg/Phone").then((o=>o.Phone)),PhoneDisconnect:()=>import("@ds-mo/icons/svg/PhoneDisconnect").then((o=>o.PhoneDisconnect)),PicmanFilled:()=>import("@ds-mo/icons/svg/PicmanFilled").then((o=>o.PicmanFilled)),Pin:()=>import("@ds-mo/icons/svg/Pin").then((o=>o.Pin)),PipBottomLeft:()=>import("@ds-mo/icons/svg/PipBottomLeft").then((o=>o.PipBottomLeft)),PipBottomRight:()=>import("@ds-mo/icons/svg/PipBottomRight").then((o=>o.PipBottomRight)),PipTopLeft:()=>import("@ds-mo/icons/svg/PipTopLeft").then((o=>o.PipTopLeft)),PipTopRight:()=>import("@ds-mo/icons/svg/PipTopRight").then((o=>o.PipTopRight)),Play:()=>import("@ds-mo/icons/svg/Play").then((o=>o.Play)),PlayFilled:()=>import("@ds-mo/icons/svg/PlayFilled").then((o=>o.PlayFilled)),Plug:()=>import("@ds-mo/icons/svg/Plug").then((o=>o.Plug)),Plus:()=>import("@ds-mo/icons/svg/Plus").then((o=>o.Plus)),PlusCircle:()=>import("@ds-mo/icons/svg/PlusCircle").then((o=>o.PlusCircle)),Preferences:()=>import("@ds-mo/icons/svg/Preferences").then((o=>o.Preferences)),Printer:()=>import("@ds-mo/icons/svg/Printer").then((o=>o.Printer)),PunchCard:()=>import("@ds-mo/icons/svg/PunchCard").then((o=>o.PunchCard)),Puzzle:()=>import("@ds-mo/icons/svg/Puzzle").then((o=>o.Puzzle)),PuzzleJoined:()=>import("@ds-mo/icons/svg/PuzzleJoined").then((o=>o.PuzzleJoined)),Redo:()=>import("@ds-mo/icons/svg/Redo").then((o=>o.Redo)),Refresh:()=>import("@ds-mo/icons/svg/Refresh").then((o=>o.Refresh)),Restore:()=>import("@ds-mo/icons/svg/Restore").then((o=>o.Restore)),RewardRibbon:()=>import("@ds-mo/icons/svg/RewardRibbon").then((o=>o.RewardRibbon)),Rewind:()=>import("@ds-mo/icons/svg/Rewind").then((o=>o.Rewind)),RewindSkip:()=>import("@ds-mo/icons/svg/RewindSkip").then((o=>o.RewindSkip)),RewindSkipFilled:()=>import("@ds-mo/icons/svg/RewindSkipFilled").then((o=>o.RewindSkipFilled)),RightCollapse:()=>import("@ds-mo/icons/svg/RightCollapse").then((o=>o.RightCollapse)),RightCollapseB:()=>import("@ds-mo/icons/svg/RightCollapseB").then((o=>o.RightCollapseB)),RightExpand:()=>import("@ds-mo/icons/svg/RightExpand").then((o=>o.RightExpand)),RightExpandB:()=>import("@ds-mo/icons/svg/RightExpandB").then((o=>o.RightExpandB)),RightTurnSignal:()=>import("@ds-mo/icons/svg/RightTurnSignal").then((o=>o.RightTurnSignal)),Rotate:()=>import("@ds-mo/icons/svg/Rotate").then((o=>o.Rotate)),Satellite:()=>import("@ds-mo/icons/svg/Satellite").then((o=>o.Satellite)),Scan:()=>import("@ds-mo/icons/svg/Scan").then((o=>o.Scan)),Scissor:()=>import("@ds-mo/icons/svg/Scissor").then((o=>o.Scissor)),Scope:()=>import("@ds-mo/icons/svg/Scope").then((o=>o.Scope)),Seatbelt:()=>import("@ds-mo/icons/svg/Seatbelt").then((o=>o.Seatbelt)),SeatbeltBuckle:()=>import("@ds-mo/icons/svg/SeatbeltBuckle").then((o=>o.SeatbeltBuckle)),SectionList:()=>import("@ds-mo/icons/svg/SectionList").then((o=>o.SectionList)),Shapes:()=>import("@ds-mo/icons/svg/Shapes").then((o=>o.Shapes)),ShareCircles:()=>import("@ds-mo/icons/svg/ShareCircles").then((o=>o.ShareCircles)),ShareCirclesFilled:()=>import("@ds-mo/icons/svg/ShareCirclesFilled").then((o=>o.ShareCirclesFilled)),SharePaperplane:()=>import("@ds-mo/icons/svg/SharePaperplane").then((o=>o.SharePaperplane)),Shield:()=>import("@ds-mo/icons/svg/Shield").then((o=>o.Shield)),ShieldCheck:()=>import("@ds-mo/icons/svg/ShieldCheck").then((o=>o.ShieldCheck)),ShieldCheckmarkFilled:()=>import("@ds-mo/icons/svg/ShieldCheckmarkFilled").then((o=>o.ShieldCheckmarkFilled)),ShieldCircle:()=>import("@ds-mo/icons/svg/ShieldCircle").then((o=>o.ShieldCircle)),ShieldCircleFilled:()=>import("@ds-mo/icons/svg/ShieldCircleFilled").then((o=>o.ShieldCircleFilled)),ShieldCross:()=>import("@ds-mo/icons/svg/ShieldCross").then((o=>o.ShieldCross)),ShieldCrossFilled:()=>import("@ds-mo/icons/svg/ShieldCrossFilled").then((o=>o.ShieldCrossFilled)),ShieldFilled:()=>import("@ds-mo/icons/svg/ShieldFilled").then((o=>o.ShieldFilled)),ShieldLock:()=>import("@ds-mo/icons/svg/ShieldLock").then((o=>o.ShieldLock)),ShieldLockFilled:()=>import("@ds-mo/icons/svg/ShieldLockFilled").then((o=>o.ShieldLockFilled)),ShieldPerson:()=>import("@ds-mo/icons/svg/ShieldPerson").then((o=>o.ShieldPerson)),ShoppingBag:()=>import("@ds-mo/icons/svg/ShoppingBag").then((o=>o.ShoppingBag)),Snowflake:()=>import("@ds-mo/icons/svg/Snowflake").then((o=>o.Snowflake)),SpeakerPhone:()=>import("@ds-mo/icons/svg/SpeakerPhone").then((o=>o.SpeakerPhone)),SpeedometerArrow:()=>import("@ds-mo/icons/svg/SpeedometerArrow").then((o=>o.SpeedometerArrow)),SpeedometerLeft:()=>import("@ds-mo/icons/svg/SpeedometerLeft").then((o=>o.SpeedometerLeft)),SpeedometerRight:()=>import("@ds-mo/icons/svg/SpeedometerRight").then((o=>o.SpeedometerRight)),SpikeCirclePercentage:()=>import("@ds-mo/icons/svg/SpikeCirclePercentage").then((o=>o.SpikeCirclePercentage)),SpikeCirclePercentageFilled:()=>import("@ds-mo/icons/svg/SpikeCirclePercentageFilled").then((o=>o.SpikeCirclePercentageFilled)),Square:()=>import("@ds-mo/icons/svg/Square").then((o=>o.Square)),SquareArrowTopRight:()=>import("@ds-mo/icons/svg/SquareArrowTopRight").then((o=>o.SquareArrowTopRight)),SquareCheck:()=>import("@ds-mo/icons/svg/SquareCheck").then((o=>o.SquareCheck)),SquareCheckFilled:()=>import("@ds-mo/icons/svg/SquareCheckFilled").then((o=>o.SquareCheckFilled)),SquareDollar:()=>import("@ds-mo/icons/svg/SquareDollar").then((o=>o.SquareDollar)),SquareDollarFilled:()=>import("@ds-mo/icons/svg/SquareDollarFilled").then((o=>o.SquareDollarFilled)),SquareDottedMinus:()=>import("@ds-mo/icons/svg/SquareDottedMinus").then((o=>o.SquareDottedMinus)),SquareFilled:()=>import("@ds-mo/icons/svg/SquareFilled").then((o=>o.SquareFilled)),SquareGrid:()=>import("@ds-mo/icons/svg/SquareGrid").then((o=>o.SquareGrid)),SquarePencil:()=>import("@ds-mo/icons/svg/SquarePencil").then((o=>o.SquarePencil)),SquarePlus:()=>import("@ds-mo/icons/svg/SquarePlus").then((o=>o.SquarePlus)),SquareSubtract:()=>import("@ds-mo/icons/svg/SquareSubtract").then((o=>o.SquareSubtract)),SquareSubtractFilled:()=>import("@ds-mo/icons/svg/SquareSubtractFilled").then((o=>o.SquareSubtractFilled)),Star:()=>import("@ds-mo/icons/svg/Star").then((o=>o.Star)),StarFilled:()=>import("@ds-mo/icons/svg/StarFilled").then((o=>o.StarFilled)),Stopwatch:()=>import("@ds-mo/icons/svg/Stopwatch").then((o=>o.Stopwatch)),Street:()=>import("@ds-mo/icons/svg/Street").then((o=>o.Street)),Subtract:()=>import("@ds-mo/icons/svg/Subtract").then((o=>o.Subtract)),SubtractCircle:()=>import("@ds-mo/icons/svg/SubtractCircle").then((o=>o.SubtractCircle)),SubtractCircleFilled:()=>import("@ds-mo/icons/svg/SubtractCircleFilled").then((o=>o.SubtractCircleFilled)),Table:()=>import("@ds-mo/icons/svg/Table").then((o=>o.Table)),Tag:()=>import("@ds-mo/icons/svg/Tag").then((o=>o.Tag)),Target:()=>import("@ds-mo/icons/svg/Target").then((o=>o.Target)),TargetDollar:()=>import("@ds-mo/icons/svg/TargetDollar").then((o=>o.TargetDollar)),Text:()=>import("@ds-mo/icons/svg/Text").then((o=>o.Text)),ThemeDark:()=>import("@ds-mo/icons/svg/ThemeDark").then((o=>o.ThemeDark)),ThemeLight:()=>import("@ds-mo/icons/svg/ThemeLight").then((o=>o.ThemeLight)),ThumbsDown:()=>import("@ds-mo/icons/svg/ThumbsDown").then((o=>o.ThumbsDown)),ThumbsDownFilled:()=>import("@ds-mo/icons/svg/ThumbsDownFilled").then((o=>o.ThumbsDownFilled)),ThumbsUp:()=>import("@ds-mo/icons/svg/ThumbsUp").then((o=>o.ThumbsUp)),ThumbsUpFilled:()=>import("@ds-mo/icons/svg/ThumbsUpFilled").then((o=>o.ThumbsUpFilled)),TirePressure:()=>import("@ds-mo/icons/svg/TirePressure").then((o=>o.TirePressure)),Toggle:()=>import("@ds-mo/icons/svg/Toggle").then((o=>o.Toggle)),TrafficLight:()=>import("@ds-mo/icons/svg/TrafficLight").then((o=>o.TrafficLight)),Trash:()=>import("@ds-mo/icons/svg/Trash").then((o=>o.Trash)),Trophy:()=>import("@ds-mo/icons/svg/Trophy").then((o=>o.Trophy)),TurnSignal:()=>import("@ds-mo/icons/svg/TurnSignal").then((o=>o.TurnSignal)),TurnSignalFilled:()=>import("@ds-mo/icons/svg/TurnSignalFilled").then((o=>o.TurnSignalFilled)),Undo:()=>import("@ds-mo/icons/svg/Undo").then((o=>o.Undo)),Upgrade:()=>import("@ds-mo/icons/svg/Upgrade").then((o=>o.Upgrade)),Upload:()=>import("@ds-mo/icons/svg/Upload").then((o=>o.Upload)),VehicleTrailer:()=>import("@ds-mo/icons/svg/VehicleTrailer").then((o=>o.VehicleTrailer)),VehicleTruck:()=>import("@ds-mo/icons/svg/VehicleTruck").then((o=>o.VehicleTruck)),VehicleTruckMagnifyingGlass:()=>import("@ds-mo/icons/svg/VehicleTruckMagnifyingGlass").then((o=>o.VehicleTruckMagnifyingGlass)),Video:()=>import("@ds-mo/icons/svg/Video").then((o=>o.Video)),ViewMenu:()=>import("@ds-mo/icons/svg/ViewMenu").then((o=>o.ViewMenu)),Volume:()=>import("@ds-mo/icons/svg/Volume").then((o=>o.Volume)),VolumeFilled:()=>import("@ds-mo/icons/svg/VolumeFilled").then((o=>o.VolumeFilled)),VolumeMute:()=>import("@ds-mo/icons/svg/VolumeMute").then((o=>o.VolumeMute)),VolumeMuteFilled:()=>import("@ds-mo/icons/svg/VolumeMuteFilled").then((o=>o.VolumeMuteFilled)),WandSparkle:()=>import("@ds-mo/icons/svg/WandSparkle").then((o=>o.WandSparkle)),Waveform:()=>import("@ds-mo/icons/svg/Waveform").then((o=>o.Waveform)),Webhooks:()=>import("@ds-mo/icons/svg/Webhooks").then((o=>o.Webhooks)),Whistle:()=>import("@ds-mo/icons/svg/Whistle").then((o=>o.Whistle)),WifiHorizontal:()=>import("@ds-mo/icons/svg/WifiHorizontal").then((o=>o.WifiHorizontal)),WifiTower:()=>import("@ds-mo/icons/svg/WifiTower").then((o=>o.WifiTower)),WifiVertical:()=>import("@ds-mo/icons/svg/WifiVertical").then((o=>o.WifiVertical)),WifiVerticalFilled:()=>import("@ds-mo/icons/svg/WifiVerticalFilled").then((o=>o.WifiVerticalFilled)),WifiVerticalFilledDisabled:()=>import("@ds-mo/icons/svg/WifiVerticalFilledDisabled").then((o=>o.WifiVerticalFilledDisabled)),WorkflowA:()=>import("@ds-mo/icons/svg/WorkflowA").then((o=>o.WorkflowA)),WorkflowB:()=>import("@ds-mo/icons/svg/WorkflowB").then((o=>o.WorkflowB)),Wrench:()=>import("@ds-mo/icons/svg/Wrench").then((o=>o.Wrench)),ZoomBackOut:()=>import("@ds-mo/icons/svg/ZoomBackOut").then((o=>o.ZoomBackOut))};const t=Symbol.for("ds-mo.icon-svg-cache");function m(o,i){return i?`flag:${o}`:`system:${o}`}function l(){const o=globalThis;return o[t]??(o[t]=new Map)}const d=new Set(["script","foreignobject","iframe","object","embed","animation"]);function a(o){if(d.has(o.localName.toLowerCase()))return false;for(const i of o.getAttributeNames()){const s=i.toLowerCase();if(s.startsWith("on"))return false;if(s==="href"||s==="xlink:href"){const s=o.getAttribute(i)??"";if(!s.startsWith("#"))return false}}for(let i=0;i<o.children.length;i++){if(!a(o.children[i]))return false}return true}function g(o){return o!=null&&o.localName==="svg"&&a(o)}function p(o){if(typeof DOMParser==="undefined")return null;const i=(new DOMParser).parseFromString(o,"image/svg+xml");if(i.querySelector("parsererror"))return null;const s=i.documentElement;if(!g(s))return null;return i.documentElement}const v=()=>`.icon.sc-ds-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;line-height:0;color:inherit;width:var(--_icon-sz, var(--dimension-iconography-md));height:var(--_icon-sz, var(--dimension-iconography-md))}.icon__svg.sc-ds-icon{display:contents;line-height:0}.icon--size-xs.sc-ds-icon{--_icon-sz:var(--dimension-iconography-xs)}.icon--size-sm.sc-ds-icon{--_icon-sz:var(--dimension-iconography-sm)}.icon--size-md.sc-ds-icon{--_icon-sz:var(--dimension-iconography-md)}.icon--size-lg.sc-ds-icon{--_icon-sz:var(--dimension-iconography-lg)}.icon--size-xl.sc-ds-icon{--_icon-sz:var(--dimension-iconography-xl)}.icon--size-2xl.sc-ds-icon{--_icon-sz:var(--dimension-iconography-2xl)}.icon--size-3xl.sc-ds-icon{--_icon-sz:var(--dimension-iconography-3xl)}.icon--color-primary.sc-ds-icon{color:var(--color-foreground-primary)}.icon--color-secondary.sc-ds-icon{color:var(--color-foreground-secondary)}.icon--color-tertiary.sc-ds-icon{color:var(--color-foreground-tertiary)}.icon--color-quaternary.sc-ds-icon{color:var(--color-foreground-quaternary)}.icon--color-inherit.sc-ds-icon{color:inherit}.icon--color-brand.sc-ds-icon{color:var(--color-foreground-bold-brand)}.icon--color-negative.sc-ds-icon{color:var(--color-foreground-bold-negative)}.icon--color-positive.sc-ds-icon{color:var(--color-foreground-bold-positive)}.icon--color-warning.sc-ds-icon{color:var(--color-foreground-bold-warning)}.icon--color-caution.sc-ds-icon{color:var(--color-foreground-bold-caution)}.icon--color-ai.sc-ds-icon{color:var(--color-foreground-bold-ai)}.icon--color-guide.sc-ds-icon{color:var(--color-foreground-bold-guide)}.icon--color-neutral.sc-ds-icon{color:var(--color-foreground-bold-neutral)}.icon--color-faint-brand.sc-ds-icon{color:var(--color-foreground-faint-brand)}.icon--color-faint-negative.sc-ds-icon{color:var(--color-foreground-faint-negative)}.icon--color-faint-positive.sc-ds-icon{color:var(--color-foreground-faint-positive)}.icon--color-faint-warning.sc-ds-icon{color:var(--color-foreground-faint-warning)}.icon--color-faint-caution.sc-ds-icon{color:var(--color-foreground-faint-caution)}.icon--color-faint-ai.sc-ds-icon{color:var(--color-foreground-faint-ai)}.icon--color-faint-neutral.sc-ds-icon{color:var(--color-foreground-faint-neutral)}.icon--color-medium-brand.sc-ds-icon{color:var(--color-foreground-medium-brand)}.icon--color-medium-negative.sc-ds-icon{color:var(--color-foreground-medium-negative)}.icon--color-medium-positive.sc-ds-icon{color:var(--color-foreground-medium-positive)}.icon--color-medium-warning.sc-ds-icon{color:var(--color-foreground-medium-warning)}.icon--color-medium-caution.sc-ds-icon{color:var(--color-foreground-medium-caution)}.icon--color-medium-ai.sc-ds-icon{color:var(--color-foreground-medium-ai)}.icon--color-medium-neutral.sc-ds-icon{color:var(--color-foreground-medium-neutral)}.icon--color-bold-brand.sc-ds-icon{color:var(--color-foreground-bold-brand)}.icon--color-bold-negative.sc-ds-icon{color:var(--color-foreground-bold-negative)}.icon--color-bold-positive.sc-ds-icon{color:var(--color-foreground-bold-positive)}.icon--color-bold-warning.sc-ds-icon{color:var(--color-foreground-bold-warning)}.icon--color-bold-caution.sc-ds-icon{color:var(--color-foreground-bold-caution)}.icon--color-bold-ai.sc-ds-icon{color:var(--color-foreground-bold-ai)}.icon--color-bold-neutral.sc-ds-icon{color:var(--color-foreground-bold-neutral)}.icon--color-strong-brand.sc-ds-icon{color:var(--color-foreground-strong-brand)}.icon--color-strong-negative.sc-ds-icon{color:var(--color-foreground-strong-negative)}.icon--color-strong-positive.sc-ds-icon{color:var(--color-foreground-strong-positive)}.icon--color-strong-warning.sc-ds-icon{color:var(--color-foreground-strong-warning)}.icon--color-strong-caution.sc-ds-icon{color:var(--color-foreground-strong-caution)}.icon--color-strong-ai.sc-ds-icon{color:var(--color-foreground-strong-ai)}.icon--color-strong-neutral.sc-ds-icon{color:var(--color-foreground-strong-neutral)}.icon--color-on-strong.sc-ds-icon{color:var(--color-foreground-on-strong-background-primary)}.icon--color-on-bold.sc-ds-icon{color:var(--color-foreground-on-bold-background-primary)}`;const u=o(class o extends i{constructor(o){super();if(o!==false){this.__registerHost()}this.name="";this.size="md";this.color="inherit";this.svg="";this.loadToken=0;this.renderedSvg=null}resolveSvg(){const o=this.name.startsWith("Flag");const i=m(this.name,o);const s=++this.loadToken;const r=l().get(i);if(r!==undefined){this.svg=r;return}const n=o?e:c;const t=Object.prototype.hasOwnProperty.call(n,this.name)?n[this.name]:undefined;if(!t){this.svg="";return}t().then((o=>{l().set(i,o);if(s===this.loadToken)this.svg=o})).catch((()=>{if(s===this.loadToken)this.svg=""}))}componentWillLoad(){this.resolveSvg()}updateSvg(){const o=this.el.querySelector(".icon__svg");if(!o)return;if(this.svg===this.renderedSvg)return;this.renderedSvg=this.svg;const i=this.svg?p(this.svg):null;if(!i){o.replaceChildren();return}i.removeAttribute("width");i.removeAttribute("height");i.setAttribute("focusable","false");i.setAttribute("aria-hidden","true");i.style.display="block";i.style.flexShrink="0";i.style.width="100%";i.style.height="100%";o.replaceChildren(i)}onIconChange(){this.resolveSvg()}componentDidRender(){this.updateSvg()}render(){const o=typeof this.color==="string"&&this.color.startsWith("var(--");const i={icon:true,[`icon--size-${this.size}`]:true,[`icon--color-${this.color}`]:!!this.color&&!o&&this.color!=="inherit","icon--color-inherit":this.color==="inherit"};const n=o?{color:this.color}:undefined;return s(r,{key:"bf07da972b563b5a8a8ab3ecf21be3ec8b293546",style:{display:"inline-flex",alignItems:"center",justifyContent:"center"}},s("span",{key:"aedcbfe7075fc29bbedcd88b01e93cfed3d30ae4",class:i,style:n,role:this.label?"img":"presentation","aria-label":this.label,"aria-hidden":!this.label?"true":undefined},s("span",{key:"218ab6cb32b07e23ac9f40369d3948a03243c27a",class:"icon__svg"})))}get el(){return this}static get watchers(){return{name:[{onIconChange:0}]}}static get style(){return v()}},[2,"ds-icon",{name:[1],size:[1],color:[1],label:[1],svg:[32]},undefined,{name:[{onIconChange:0}]}]);function h(){if(typeof customElements==="undefined"){return}const o=["ds-icon"];o.forEach((o=>{switch(o){case"ds-icon":if(!customElements.get(n(o))){customElements.define(n(o),u)}break}}))}h();export{u as I,h as d};
2
- //# sourceMappingURL=p-Cea7rROU.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["flagIconLoaders","FlagAustria","import","then","m","FlagBelgium","FlagBulgaria","FlagCanada","FlagCroatia","FlagCyprus","FlagCzechRepublic","FlagDenmark","FlagEU","FlagEstonia","FlagFinland","FlagFrance","FlagGermany","FlagGreece","FlagHungary","FlagIreland","FlagItaly","FlagLatvia","FlagLithuania","FlagLuxembourg","FlagMalta","FlagMexico","FlagNetherlands","FlagPoland","FlagPortugal","FlagRomania","FlagSlovakia","FlagSlovenia","FlagSpain","FlagSweden","FlagUnitedKingdom","FlagUnitedStates","systemIconLoaders","AI","AIChip","AINew","AISparkle","AUX","AUXFilled","AndroidFilled","ArrowDown","ArrowLeft","ArrowPath","ArrowRight","ArrowUp","ArrowsDiagonal","ArrowsDiff","ArrowsDiffDisabled","ArrowsVertical","AtSign","Avatar","BackslashBrackets","BatteryCharging","BatteryEmpty","BatteryFull","BatteryHalf","BatteryLow","Beaker","Bell","BellCircle","BellExclamation","BellFilled","BellRinging","BellWifi","BlackWhite","BlankUI","Bluetooth","Bolt","BoltFilled","Bookmark","Box","Braces","BracketsCircle","Bug","BuildingFacility","BuildingHome","BuildingOffice","BuildingPublic","BuildingShop","Bulb","Calculator","Calendar","CalendarClock","CameraA","CameraB","Card","CardPerson","Cart","Chart","Check","CheckCircle","CheckCircleFilled","CheckDouble","ChevronDown","ChevronDownUp","ChevronLeft","ChevronLeftDouble","ChevronRight","ChevronRightDouble","ChevronUp","ChevronUpDown","Circle","CircleArrow","CircleArrowsDiff","CircleArrowsDiffDisabled","CircleConcentricFilled","CircleConcentricThree","CircleConcentricTwo","CircleExclamation","CircleExclamationFilled","CircleFastForward","CircleFilled","CircleGrid","CirclePlay","CircleQuestion","CircleSlash","Clipboard","ClipboardCheck","Clock","ClockDefer","ClockFilled","ClockSixteenHour","Cloud","CloudEllipses","CloudLightning","CloudRain","CloudRainSun","CloudSun","CloudWind","Cluster","Coin","CoinStack","CoinStackGeneral","Compass","Copy","Crop","Cross","CrossCircle","CrossCircleFilled","Cube","Cup","CursorPointer","CursorPointerMinus","CursorPointerPlus","Dashboard","DeviceAIDashcamPlus","DeviceAssetTracker","DeviceDVR","DeviceDashcam","DeviceDashcamLiveStream","DeviceDoorSensor","DeviceMobile","DeviceMobileTwo","DeviceOmnicam","DeviceSensor","DeviceTablet","DeviceVehicleGateway","Devices","Document","DocumentArrow","DocumentChart","DocumentDollar","DocumentGear","DocumentInverted","DocumentPencil","DocumentPlus","DocumentQuestion","DocumentReceipt","DocumentStacked","Dot","DotFilled","DotPath","Download","Drag","Ellipses","Email","Engine","Enter","EntityAsset","EntityAssetFilled","EntityDriver","EntityDriverFilled","EntityTravelGroup","EntityTravelGroupFilled","EntityVehicle","EntityVehicleCharging","EntityVehicleChargingFilled","EntityVehicleFilled","EntityVehicleImmobilized","EntityVehicleImmobilizedFilled","ErrorTriangle","ErrorTriangleFilled","ErrorTriangleSimpleFilled","Export","ExternalLink","Eye","EyeDisabled","EyeLock","FastForward","FastForwardSkip","Filters","FitToScreen","Flag","FlagFilled","FloppyDisk","Folder","FolderFilled","FuelPump","FullScreen","FullScreenExit","Gauge","GaugeTemperature","Gear","GearCheck","Geofence","GeofenceCircle","GeofenceDiamond","GeofenceSquare","GlobeNetwork","GlobeWorldMap","Graph","GraphArrow","GraphBars","GraphDecreasing","GraphIncreasing","Hamburger","HandHeart","HandOpen","Headset","History","HourGlass","Image","Import","ImportClock","Inbox","IosFilled","Jerrycan","KeyA","KeyB","KeyCmd","KeyShift","LED","Layers","Leaf","LeftCollapse","LeftCollapseB","LeftExpand","LeftExpandB","LeftTurnSignal","LetterB","LetterC","LetterI","License","LicensePlate","Lifebuoy","Link","List","Loads","LocationPin","LocationPinArrows","LocationPinDisabled","LocationPinDollar","LockClosed","LockClosedFilled","LockOpen","Logout","Logs","LogsMagnifyingGlass","MagnifyingGlass","MagnifyingGlassGraph","MagnifyingGlassZoomIn","MagnifyingGlassZoomOut","MapNavigation","MapPage","MapPin","MarkRead","Match","MessageBubble","MessageBubbleStack","Messaging","Mic","MicMute","Minimize","Monitor","Notification","NumberTen","OctagonSubtract","Odometer","OverviewAI","PanelCollapse","PanelExpand","Paperclip","PaperplaneSend","Paragraph","ParagraphCheck","ParagraphPencil","Pause","PauseFilled","Pencil","PencilSquiggle","Person","PersonAt","PersonConnect","PersonFrame","PersonGear","PersonGroup","PersonGroupArrows","PersonGroupThree","PersonManager","PersonShield","PersonStar","Phone","PhoneDisconnect","PicmanFilled","Pin","PipBottomLeft","PipBottomRight","PipTopLeft","PipTopRight","Play","PlayFilled","Plug","Plus","PlusCircle","Preferences","Printer","PunchCard","Puzzle","PuzzleJoined","Redo","Refresh","Restore","RewardRibbon","Rewind","RewindSkip","RewindSkipFilled","RightCollapse","RightCollapseB","RightExpand","RightExpandB","RightTurnSignal","Rotate","Satellite","Scan","Scissor","Scope","Seatbelt","SeatbeltBuckle","SectionList","Shapes","ShareCircles","ShareCirclesFilled","SharePaperplane","Shield","ShieldCheck","ShieldCheckmarkFilled","ShieldCircle","ShieldCircleFilled","ShieldCross","ShieldCrossFilled","ShieldFilled","ShieldLock","ShieldLockFilled","ShieldPerson","ShoppingBag","Snowflake","SpeakerPhone","SpeedometerArrow","SpeedometerLeft","SpeedometerRight","SpikeCirclePercentage","SpikeCirclePercentageFilled","Square","SquareArrowTopRight","SquareCheck","SquareCheckFilled","SquareDollar","SquareDollarFilled","SquareDottedMinus","SquareFilled","SquareGrid","SquarePencil","SquarePlus","SquareSubtract","SquareSubtractFilled","Star","StarFilled","Stopwatch","Street","Subtract","SubtractCircle","SubtractCircleFilled","Table","Tag","Target","TargetDollar","Text","ThemeDark","ThemeLight","ThumbsDown","ThumbsDownFilled","ThumbsUp","ThumbsUpFilled","TirePressure","Toggle","TrafficLight","Trash","Trophy","TurnSignal","TurnSignalFilled","Undo","Upgrade","Upload","VehicleTrailer","VehicleTruck","VehicleTruckMagnifyingGlass","Video","ViewMenu","Volume","VolumeFilled","VolumeMute","VolumeMuteFilled","WandSparkle","Waveform","Webhooks","Whistle","WifiHorizontal","WifiTower","WifiVertical","WifiVerticalFilled","WifiVerticalFilledDisabled","WorkflowA","WorkflowB","Wrench","ZoomBackOut","CACHE_KEY","Symbol","for","iconCacheKey","name","flag","iconCache","g","globalThis","Map","FORBIDDEN_ELEMENTS","Set","isValidIconSvgElement","el","has","localName","toLowerCase","attr","getAttributeNames","lower","startsWith","value","getAttribute","i","children","length","isValidIconSvgRoot","root","parseIconSvg","svg","DOMParser","doc","parseFromString","querySelector","documentElement","iconCss","Icon","__stencil_proxyCustomElement","HTMLElement","constructor","registerHost","this","size","color","loadToken","renderedSvg","resolveSvg","key","token","cached","get","undefined","loaders","loader","Object","prototype","hasOwnProperty","call","set","catch","componentWillLoad","updateSvg","container","replaceChildren","removeAttribute","setAttribute","style","display","flexShrink","width","height","onIconChange","componentDidRender","render","isCustomColor","cls","icon","h","Host","alignItems","justifyContent","class","role","label"],"sources":["src/wc/components/Icon/flag-icon-catalog.ts","src/wc/components/Icon/system-icon-catalog.ts","src/wc/components/Icon/icon-cache.ts","src/wc/components/Icon/icon-svg.ts","src/wc/components/Icon/Icon.css?tag=ds-icon&encapsulation=scoped","src/wc/components/Icon/Icon.tsx"],"sourcesContent":["/** Auto-generated by scripts/generate-icon-catalog.mjs — do not edit. */\n\nexport const flagIconLoaders: Record<string, () => Promise<string>> = {\n FlagAustria: () => import('@ds-mo/icons/svg/flags/FlagAustria').then(m => m.FlagAustria),\n FlagBelgium: () => import('@ds-mo/icons/svg/flags/FlagBelgium').then(m => m.FlagBelgium),\n FlagBulgaria: () => import('@ds-mo/icons/svg/flags/FlagBulgaria').then(m => m.FlagBulgaria),\n FlagCanada: () => import('@ds-mo/icons/svg/flags/FlagCanada').then(m => m.FlagCanada),\n FlagCroatia: () => import('@ds-mo/icons/svg/flags/FlagCroatia').then(m => m.FlagCroatia),\n FlagCyprus: () => import('@ds-mo/icons/svg/flags/FlagCyprus').then(m => m.FlagCyprus),\n FlagCzechRepublic: () => import('@ds-mo/icons/svg/flags/FlagCzechRepublic').then(m => m.FlagCzechRepublic),\n FlagDenmark: () => import('@ds-mo/icons/svg/flags/FlagDenmark').then(m => m.FlagDenmark),\n FlagEU: () => import('@ds-mo/icons/svg/flags/FlagEU').then(m => m.FlagEU),\n FlagEstonia: () => import('@ds-mo/icons/svg/flags/FlagEstonia').then(m => m.FlagEstonia),\n FlagFinland: () => import('@ds-mo/icons/svg/flags/FlagFinland').then(m => m.FlagFinland),\n FlagFrance: () => import('@ds-mo/icons/svg/flags/FlagFrance').then(m => m.FlagFrance),\n FlagGermany: () => import('@ds-mo/icons/svg/flags/FlagGermany').then(m => m.FlagGermany),\n FlagGreece: () => import('@ds-mo/icons/svg/flags/FlagGreece').then(m => m.FlagGreece),\n FlagHungary: () => import('@ds-mo/icons/svg/flags/FlagHungary').then(m => m.FlagHungary),\n FlagIreland: () => import('@ds-mo/icons/svg/flags/FlagIreland').then(m => m.FlagIreland),\n FlagItaly: () => import('@ds-mo/icons/svg/flags/FlagItaly').then(m => m.FlagItaly),\n FlagLatvia: () => import('@ds-mo/icons/svg/flags/FlagLatvia').then(m => m.FlagLatvia),\n FlagLithuania: () => import('@ds-mo/icons/svg/flags/FlagLithuania').then(m => m.FlagLithuania),\n FlagLuxembourg: () => import('@ds-mo/icons/svg/flags/FlagLuxembourg').then(m => m.FlagLuxembourg),\n FlagMalta: () => import('@ds-mo/icons/svg/flags/FlagMalta').then(m => m.FlagMalta),\n FlagMexico: () => import('@ds-mo/icons/svg/flags/FlagMexico').then(m => m.FlagMexico),\n FlagNetherlands: () => import('@ds-mo/icons/svg/flags/FlagNetherlands').then(m => m.FlagNetherlands),\n FlagPoland: () => import('@ds-mo/icons/svg/flags/FlagPoland').then(m => m.FlagPoland),\n FlagPortugal: () => import('@ds-mo/icons/svg/flags/FlagPortugal').then(m => m.FlagPortugal),\n FlagRomania: () => import('@ds-mo/icons/svg/flags/FlagRomania').then(m => m.FlagRomania),\n FlagSlovakia: () => import('@ds-mo/icons/svg/flags/FlagSlovakia').then(m => m.FlagSlovakia),\n FlagSlovenia: () => import('@ds-mo/icons/svg/flags/FlagSlovenia').then(m => m.FlagSlovenia),\n FlagSpain: () => import('@ds-mo/icons/svg/flags/FlagSpain').then(m => m.FlagSpain),\n FlagSweden: () => import('@ds-mo/icons/svg/flags/FlagSweden').then(m => m.FlagSweden),\n FlagUnitedKingdom: () => import('@ds-mo/icons/svg/flags/FlagUnitedKingdom').then(m => m.FlagUnitedKingdom),\n FlagUnitedStates: () => import('@ds-mo/icons/svg/flags/FlagUnitedStates').then(m => m.FlagUnitedStates),\n};\n","/** Auto-generated by scripts/generate-icon-catalog.mjs — do not edit. */\n\nexport const systemIconLoaders: Record<string, () => Promise<string>> = {\n AI: () => import('@ds-mo/icons/svg/AI').then(m => m.AI),\n AIChip: () => import('@ds-mo/icons/svg/AIChip').then(m => m.AIChip),\n AINew: () => import('@ds-mo/icons/svg/AINew').then(m => m.AINew),\n AISparkle: () => import('@ds-mo/icons/svg/AISparkle').then(m => m.AISparkle),\n AUX: () => import('@ds-mo/icons/svg/AUX').then(m => m.AUX),\n AUXFilled: () => import('@ds-mo/icons/svg/AUXFilled').then(m => m.AUXFilled),\n AndroidFilled: () => import('@ds-mo/icons/svg/AndroidFilled').then(m => m.AndroidFilled),\n ArrowDown: () => import('@ds-mo/icons/svg/ArrowDown').then(m => m.ArrowDown),\n ArrowLeft: () => import('@ds-mo/icons/svg/ArrowLeft').then(m => m.ArrowLeft),\n ArrowPath: () => import('@ds-mo/icons/svg/ArrowPath').then(m => m.ArrowPath),\n ArrowRight: () => import('@ds-mo/icons/svg/ArrowRight').then(m => m.ArrowRight),\n ArrowUp: () => import('@ds-mo/icons/svg/ArrowUp').then(m => m.ArrowUp),\n ArrowsDiagonal: () => import('@ds-mo/icons/svg/ArrowsDiagonal').then(m => m.ArrowsDiagonal),\n ArrowsDiff: () => import('@ds-mo/icons/svg/ArrowsDiff').then(m => m.ArrowsDiff),\n ArrowsDiffDisabled: () => import('@ds-mo/icons/svg/ArrowsDiffDisabled').then(m => m.ArrowsDiffDisabled),\n ArrowsVertical: () => import('@ds-mo/icons/svg/ArrowsVertical').then(m => m.ArrowsVertical),\n AtSign: () => import('@ds-mo/icons/svg/AtSign').then(m => m.AtSign),\n Avatar: () => import('@ds-mo/icons/svg/Avatar').then(m => m.Avatar),\n BackslashBrackets: () => import('@ds-mo/icons/svg/BackslashBrackets').then(m => m.BackslashBrackets),\n BatteryCharging: () => import('@ds-mo/icons/svg/BatteryCharging').then(m => m.BatteryCharging),\n BatteryEmpty: () => import('@ds-mo/icons/svg/BatteryEmpty').then(m => m.BatteryEmpty),\n BatteryFull: () => import('@ds-mo/icons/svg/BatteryFull').then(m => m.BatteryFull),\n BatteryHalf: () => import('@ds-mo/icons/svg/BatteryHalf').then(m => m.BatteryHalf),\n BatteryLow: () => import('@ds-mo/icons/svg/BatteryLow').then(m => m.BatteryLow),\n Beaker: () => import('@ds-mo/icons/svg/Beaker').then(m => m.Beaker),\n Bell: () => import('@ds-mo/icons/svg/Bell').then(m => m.Bell),\n BellCircle: () => import('@ds-mo/icons/svg/BellCircle').then(m => m.BellCircle),\n BellExclamation: () => import('@ds-mo/icons/svg/BellExclamation').then(m => m.BellExclamation),\n BellFilled: () => import('@ds-mo/icons/svg/BellFilled').then(m => m.BellFilled),\n BellRinging: () => import('@ds-mo/icons/svg/BellRinging').then(m => m.BellRinging),\n BellWifi: () => import('@ds-mo/icons/svg/BellWifi').then(m => m.BellWifi),\n BlackWhite: () => import('@ds-mo/icons/svg/BlackWhite').then(m => m.BlackWhite),\n BlankUI: () => import('@ds-mo/icons/svg/BlankUI').then(m => m.BlankUI),\n Bluetooth: () => import('@ds-mo/icons/svg/Bluetooth').then(m => m.Bluetooth),\n Bolt: () => import('@ds-mo/icons/svg/Bolt').then(m => m.Bolt),\n BoltFilled: () => import('@ds-mo/icons/svg/BoltFilled').then(m => m.BoltFilled),\n Bookmark: () => import('@ds-mo/icons/svg/Bookmark').then(m => m.Bookmark),\n Box: () => import('@ds-mo/icons/svg/Box').then(m => m.Box),\n Braces: () => import('@ds-mo/icons/svg/Braces').then(m => m.Braces),\n BracketsCircle: () => import('@ds-mo/icons/svg/BracketsCircle').then(m => m.BracketsCircle),\n Bug: () => import('@ds-mo/icons/svg/Bug').then(m => m.Bug),\n BuildingFacility: () => import('@ds-mo/icons/svg/BuildingFacility').then(m => m.BuildingFacility),\n BuildingHome: () => import('@ds-mo/icons/svg/BuildingHome').then(m => m.BuildingHome),\n BuildingOffice: () => import('@ds-mo/icons/svg/BuildingOffice').then(m => m.BuildingOffice),\n BuildingPublic: () => import('@ds-mo/icons/svg/BuildingPublic').then(m => m.BuildingPublic),\n BuildingShop: () => import('@ds-mo/icons/svg/BuildingShop').then(m => m.BuildingShop),\n Bulb: () => import('@ds-mo/icons/svg/Bulb').then(m => m.Bulb),\n Calculator: () => import('@ds-mo/icons/svg/Calculator').then(m => m.Calculator),\n Calendar: () => import('@ds-mo/icons/svg/Calendar').then(m => m.Calendar),\n CalendarClock: () => import('@ds-mo/icons/svg/CalendarClock').then(m => m.CalendarClock),\n CameraA: () => import('@ds-mo/icons/svg/CameraA').then(m => m.CameraA),\n CameraB: () => import('@ds-mo/icons/svg/CameraB').then(m => m.CameraB),\n Card: () => import('@ds-mo/icons/svg/Card').then(m => m.Card),\n CardPerson: () => import('@ds-mo/icons/svg/CardPerson').then(m => m.CardPerson),\n Cart: () => import('@ds-mo/icons/svg/Cart').then(m => m.Cart),\n Chart: () => import('@ds-mo/icons/svg/Chart').then(m => m.Chart),\n Check: () => import('@ds-mo/icons/svg/Check').then(m => m.Check),\n CheckCircle: () => import('@ds-mo/icons/svg/CheckCircle').then(m => m.CheckCircle),\n CheckCircleFilled: () => import('@ds-mo/icons/svg/CheckCircleFilled').then(m => m.CheckCircleFilled),\n CheckDouble: () => import('@ds-mo/icons/svg/CheckDouble').then(m => m.CheckDouble),\n ChevronDown: () => import('@ds-mo/icons/svg/ChevronDown').then(m => m.ChevronDown),\n ChevronDownUp: () => import('@ds-mo/icons/svg/ChevronDownUp').then(m => m.ChevronDownUp),\n ChevronLeft: () => import('@ds-mo/icons/svg/ChevronLeft').then(m => m.ChevronLeft),\n ChevronLeftDouble: () => import('@ds-mo/icons/svg/ChevronLeftDouble').then(m => m.ChevronLeftDouble),\n ChevronRight: () => import('@ds-mo/icons/svg/ChevronRight').then(m => m.ChevronRight),\n ChevronRightDouble: () => import('@ds-mo/icons/svg/ChevronRightDouble').then(m => m.ChevronRightDouble),\n ChevronUp: () => import('@ds-mo/icons/svg/ChevronUp').then(m => m.ChevronUp),\n ChevronUpDown: () => import('@ds-mo/icons/svg/ChevronUpDown').then(m => m.ChevronUpDown),\n Circle: () => import('@ds-mo/icons/svg/Circle').then(m => m.Circle),\n CircleArrow: () => import('@ds-mo/icons/svg/CircleArrow').then(m => m.CircleArrow),\n CircleArrowsDiff: () => import('@ds-mo/icons/svg/CircleArrowsDiff').then(m => m.CircleArrowsDiff),\n CircleArrowsDiffDisabled: () => import('@ds-mo/icons/svg/CircleArrowsDiffDisabled').then(m => m.CircleArrowsDiffDisabled),\n CircleConcentricFilled: () => import('@ds-mo/icons/svg/CircleConcentricFilled').then(m => m.CircleConcentricFilled),\n CircleConcentricThree: () => import('@ds-mo/icons/svg/CircleConcentricThree').then(m => m.CircleConcentricThree),\n CircleConcentricTwo: () => import('@ds-mo/icons/svg/CircleConcentricTwo').then(m => m.CircleConcentricTwo),\n CircleExclamation: () => import('@ds-mo/icons/svg/CircleExclamation').then(m => m.CircleExclamation),\n CircleExclamationFilled: () => import('@ds-mo/icons/svg/CircleExclamationFilled').then(m => m.CircleExclamationFilled),\n CircleFastForward: () => import('@ds-mo/icons/svg/CircleFastForward').then(m => m.CircleFastForward),\n CircleFilled: () => import('@ds-mo/icons/svg/CircleFilled').then(m => m.CircleFilled),\n CircleGrid: () => import('@ds-mo/icons/svg/CircleGrid').then(m => m.CircleGrid),\n CirclePlay: () => import('@ds-mo/icons/svg/CirclePlay').then(m => m.CirclePlay),\n CircleQuestion: () => import('@ds-mo/icons/svg/CircleQuestion').then(m => m.CircleQuestion),\n CircleSlash: () => import('@ds-mo/icons/svg/CircleSlash').then(m => m.CircleSlash),\n Clipboard: () => import('@ds-mo/icons/svg/Clipboard').then(m => m.Clipboard),\n ClipboardCheck: () => import('@ds-mo/icons/svg/ClipboardCheck').then(m => m.ClipboardCheck),\n Clock: () => import('@ds-mo/icons/svg/Clock').then(m => m.Clock),\n ClockDefer: () => import('@ds-mo/icons/svg/ClockDefer').then(m => m.ClockDefer),\n ClockFilled: () => import('@ds-mo/icons/svg/ClockFilled').then(m => m.ClockFilled),\n ClockSixteenHour: () => import('@ds-mo/icons/svg/ClockSixteenHour').then(m => m.ClockSixteenHour),\n Cloud: () => import('@ds-mo/icons/svg/Cloud').then(m => m.Cloud),\n CloudEllipses: () => import('@ds-mo/icons/svg/CloudEllipses').then(m => m.CloudEllipses),\n CloudLightning: () => import('@ds-mo/icons/svg/CloudLightning').then(m => m.CloudLightning),\n CloudRain: () => import('@ds-mo/icons/svg/CloudRain').then(m => m.CloudRain),\n CloudRainSun: () => import('@ds-mo/icons/svg/CloudRainSun').then(m => m.CloudRainSun),\n CloudSun: () => import('@ds-mo/icons/svg/CloudSun').then(m => m.CloudSun),\n CloudWind: () => import('@ds-mo/icons/svg/CloudWind').then(m => m.CloudWind),\n Cluster: () => import('@ds-mo/icons/svg/Cluster').then(m => m.Cluster),\n Coin: () => import('@ds-mo/icons/svg/Coin').then(m => m.Coin),\n CoinStack: () => import('@ds-mo/icons/svg/CoinStack').then(m => m.CoinStack),\n CoinStackGeneral: () => import('@ds-mo/icons/svg/CoinStackGeneral').then(m => m.CoinStackGeneral),\n Compass: () => import('@ds-mo/icons/svg/Compass').then(m => m.Compass),\n Copy: () => import('@ds-mo/icons/svg/Copy').then(m => m.Copy),\n Crop: () => import('@ds-mo/icons/svg/Crop').then(m => m.Crop),\n Cross: () => import('@ds-mo/icons/svg/Cross').then(m => m.Cross),\n CrossCircle: () => import('@ds-mo/icons/svg/CrossCircle').then(m => m.CrossCircle),\n CrossCircleFilled: () => import('@ds-mo/icons/svg/CrossCircleFilled').then(m => m.CrossCircleFilled),\n Cube: () => import('@ds-mo/icons/svg/Cube').then(m => m.Cube),\n Cup: () => import('@ds-mo/icons/svg/Cup').then(m => m.Cup),\n CursorPointer: () => import('@ds-mo/icons/svg/CursorPointer').then(m => m.CursorPointer),\n CursorPointerMinus: () => import('@ds-mo/icons/svg/CursorPointerMinus').then(m => m.CursorPointerMinus),\n CursorPointerPlus: () => import('@ds-mo/icons/svg/CursorPointerPlus').then(m => m.CursorPointerPlus),\n Dashboard: () => import('@ds-mo/icons/svg/Dashboard').then(m => m.Dashboard),\n DeviceAIDashcamPlus: () => import('@ds-mo/icons/svg/DeviceAIDashcamPlus').then(m => m.DeviceAIDashcamPlus),\n DeviceAssetTracker: () => import('@ds-mo/icons/svg/DeviceAssetTracker').then(m => m.DeviceAssetTracker),\n DeviceDVR: () => import('@ds-mo/icons/svg/DeviceDVR').then(m => m.DeviceDVR),\n DeviceDashcam: () => import('@ds-mo/icons/svg/DeviceDashcam').then(m => m.DeviceDashcam),\n DeviceDashcamLiveStream: () => import('@ds-mo/icons/svg/DeviceDashcamLiveStream').then(m => m.DeviceDashcamLiveStream),\n DeviceDoorSensor: () => import('@ds-mo/icons/svg/DeviceDoorSensor').then(m => m.DeviceDoorSensor),\n DeviceMobile: () => import('@ds-mo/icons/svg/DeviceMobile').then(m => m.DeviceMobile),\n DeviceMobileTwo: () => import('@ds-mo/icons/svg/DeviceMobileTwo').then(m => m.DeviceMobileTwo),\n DeviceOmnicam: () => import('@ds-mo/icons/svg/DeviceOmnicam').then(m => m.DeviceOmnicam),\n DeviceSensor: () => import('@ds-mo/icons/svg/DeviceSensor').then(m => m.DeviceSensor),\n DeviceTablet: () => import('@ds-mo/icons/svg/DeviceTablet').then(m => m.DeviceTablet),\n DeviceVehicleGateway: () => import('@ds-mo/icons/svg/DeviceVehicleGateway').then(m => m.DeviceVehicleGateway),\n Devices: () => import('@ds-mo/icons/svg/Devices').then(m => m.Devices),\n Document: () => import('@ds-mo/icons/svg/Document').then(m => m.Document),\n DocumentArrow: () => import('@ds-mo/icons/svg/DocumentArrow').then(m => m.DocumentArrow),\n DocumentChart: () => import('@ds-mo/icons/svg/DocumentChart').then(m => m.DocumentChart),\n DocumentDollar: () => import('@ds-mo/icons/svg/DocumentDollar').then(m => m.DocumentDollar),\n DocumentGear: () => import('@ds-mo/icons/svg/DocumentGear').then(m => m.DocumentGear),\n DocumentInverted: () => import('@ds-mo/icons/svg/DocumentInverted').then(m => m.DocumentInverted),\n DocumentPencil: () => import('@ds-mo/icons/svg/DocumentPencil').then(m => m.DocumentPencil),\n DocumentPlus: () => import('@ds-mo/icons/svg/DocumentPlus').then(m => m.DocumentPlus),\n DocumentQuestion: () => import('@ds-mo/icons/svg/DocumentQuestion').then(m => m.DocumentQuestion),\n DocumentReceipt: () => import('@ds-mo/icons/svg/DocumentReceipt').then(m => m.DocumentReceipt),\n DocumentStacked: () => import('@ds-mo/icons/svg/DocumentStacked').then(m => m.DocumentStacked),\n Dot: () => import('@ds-mo/icons/svg/Dot').then(m => m.Dot),\n DotFilled: () => import('@ds-mo/icons/svg/DotFilled').then(m => m.DotFilled),\n DotPath: () => import('@ds-mo/icons/svg/DotPath').then(m => m.DotPath),\n Download: () => import('@ds-mo/icons/svg/Download').then(m => m.Download),\n Drag: () => import('@ds-mo/icons/svg/Drag').then(m => m.Drag),\n Ellipses: () => import('@ds-mo/icons/svg/Ellipses').then(m => m.Ellipses),\n Email: () => import('@ds-mo/icons/svg/Email').then(m => m.Email),\n Engine: () => import('@ds-mo/icons/svg/Engine').then(m => m.Engine),\n Enter: () => import('@ds-mo/icons/svg/Enter').then(m => m.Enter),\n EntityAsset: () => import('@ds-mo/icons/svg/EntityAsset').then(m => m.EntityAsset),\n EntityAssetFilled: () => import('@ds-mo/icons/svg/EntityAssetFilled').then(m => m.EntityAssetFilled),\n EntityDriver: () => import('@ds-mo/icons/svg/EntityDriver').then(m => m.EntityDriver),\n EntityDriverFilled: () => import('@ds-mo/icons/svg/EntityDriverFilled').then(m => m.EntityDriverFilled),\n EntityTravelGroup: () => import('@ds-mo/icons/svg/EntityTravelGroup').then(m => m.EntityTravelGroup),\n EntityTravelGroupFilled: () => import('@ds-mo/icons/svg/EntityTravelGroupFilled').then(m => m.EntityTravelGroupFilled),\n EntityVehicle: () => import('@ds-mo/icons/svg/EntityVehicle').then(m => m.EntityVehicle),\n EntityVehicleCharging: () => import('@ds-mo/icons/svg/EntityVehicleCharging').then(m => m.EntityVehicleCharging),\n EntityVehicleChargingFilled: () => import('@ds-mo/icons/svg/EntityVehicleChargingFilled').then(m => m.EntityVehicleChargingFilled),\n EntityVehicleFilled: () => import('@ds-mo/icons/svg/EntityVehicleFilled').then(m => m.EntityVehicleFilled),\n EntityVehicleImmobilized: () => import('@ds-mo/icons/svg/EntityVehicleImmobilized').then(m => m.EntityVehicleImmobilized),\n EntityVehicleImmobilizedFilled: () => import('@ds-mo/icons/svg/EntityVehicleImmobilizedFilled').then(m => m.EntityVehicleImmobilizedFilled),\n ErrorTriangle: () => import('@ds-mo/icons/svg/ErrorTriangle').then(m => m.ErrorTriangle),\n ErrorTriangleFilled: () => import('@ds-mo/icons/svg/ErrorTriangleFilled').then(m => m.ErrorTriangleFilled),\n ErrorTriangleSimpleFilled: () => import('@ds-mo/icons/svg/ErrorTriangleSimpleFilled').then(m => m.ErrorTriangleSimpleFilled),\n Export: () => import('@ds-mo/icons/svg/Export').then(m => m.Export),\n ExternalLink: () => import('@ds-mo/icons/svg/ExternalLink').then(m => m.ExternalLink),\n Eye: () => import('@ds-mo/icons/svg/Eye').then(m => m.Eye),\n EyeDisabled: () => import('@ds-mo/icons/svg/EyeDisabled').then(m => m.EyeDisabled),\n EyeLock: () => import('@ds-mo/icons/svg/EyeLock').then(m => m.EyeLock),\n FastForward: () => import('@ds-mo/icons/svg/FastForward').then(m => m.FastForward),\n FastForwardSkip: () => import('@ds-mo/icons/svg/FastForwardSkip').then(m => m.FastForwardSkip),\n Filters: () => import('@ds-mo/icons/svg/Filters').then(m => m.Filters),\n FitToScreen: () => import('@ds-mo/icons/svg/FitToScreen').then(m => m.FitToScreen),\n Flag: () => import('@ds-mo/icons/svg/Flag').then(m => m.Flag),\n FlagFilled: () => import('@ds-mo/icons/svg/FlagFilled').then(m => m.FlagFilled),\n FloppyDisk: () => import('@ds-mo/icons/svg/FloppyDisk').then(m => m.FloppyDisk),\n Folder: () => import('@ds-mo/icons/svg/Folder').then(m => m.Folder),\n FolderFilled: () => import('@ds-mo/icons/svg/FolderFilled').then(m => m.FolderFilled),\n FuelPump: () => import('@ds-mo/icons/svg/FuelPump').then(m => m.FuelPump),\n FullScreen: () => import('@ds-mo/icons/svg/FullScreen').then(m => m.FullScreen),\n FullScreenExit: () => import('@ds-mo/icons/svg/FullScreenExit').then(m => m.FullScreenExit),\n Gauge: () => import('@ds-mo/icons/svg/Gauge').then(m => m.Gauge),\n GaugeTemperature: () => import('@ds-mo/icons/svg/GaugeTemperature').then(m => m.GaugeTemperature),\n Gear: () => import('@ds-mo/icons/svg/Gear').then(m => m.Gear),\n GearCheck: () => import('@ds-mo/icons/svg/GearCheck').then(m => m.GearCheck),\n Geofence: () => import('@ds-mo/icons/svg/Geofence').then(m => m.Geofence),\n GeofenceCircle: () => import('@ds-mo/icons/svg/GeofenceCircle').then(m => m.GeofenceCircle),\n GeofenceDiamond: () => import('@ds-mo/icons/svg/GeofenceDiamond').then(m => m.GeofenceDiamond),\n GeofenceSquare: () => import('@ds-mo/icons/svg/GeofenceSquare').then(m => m.GeofenceSquare),\n GlobeNetwork: () => import('@ds-mo/icons/svg/GlobeNetwork').then(m => m.GlobeNetwork),\n GlobeWorldMap: () => import('@ds-mo/icons/svg/GlobeWorldMap').then(m => m.GlobeWorldMap),\n Graph: () => import('@ds-mo/icons/svg/Graph').then(m => m.Graph),\n GraphArrow: () => import('@ds-mo/icons/svg/GraphArrow').then(m => m.GraphArrow),\n GraphBars: () => import('@ds-mo/icons/svg/GraphBars').then(m => m.GraphBars),\n GraphDecreasing: () => import('@ds-mo/icons/svg/GraphDecreasing').then(m => m.GraphDecreasing),\n GraphIncreasing: () => import('@ds-mo/icons/svg/GraphIncreasing').then(m => m.GraphIncreasing),\n Hamburger: () => import('@ds-mo/icons/svg/Hamburger').then(m => m.Hamburger),\n HandHeart: () => import('@ds-mo/icons/svg/HandHeart').then(m => m.HandHeart),\n HandOpen: () => import('@ds-mo/icons/svg/HandOpen').then(m => m.HandOpen),\n Headset: () => import('@ds-mo/icons/svg/Headset').then(m => m.Headset),\n History: () => import('@ds-mo/icons/svg/History').then(m => m.History),\n HourGlass: () => import('@ds-mo/icons/svg/HourGlass').then(m => m.HourGlass),\n Image: () => import('@ds-mo/icons/svg/Image').then(m => m.Image),\n Import: () => import('@ds-mo/icons/svg/Import').then(m => m.Import),\n ImportClock: () => import('@ds-mo/icons/svg/ImportClock').then(m => m.ImportClock),\n Inbox: () => import('@ds-mo/icons/svg/Inbox').then(m => m.Inbox),\n IosFilled: () => import('@ds-mo/icons/svg/IosFilled').then(m => m.IosFilled),\n Jerrycan: () => import('@ds-mo/icons/svg/Jerrycan').then(m => m.Jerrycan),\n KeyA: () => import('@ds-mo/icons/svg/KeyA').then(m => m.KeyA),\n KeyB: () => import('@ds-mo/icons/svg/KeyB').then(m => m.KeyB),\n KeyCmd: () => import('@ds-mo/icons/svg/KeyCmd').then(m => m.KeyCmd),\n KeyShift: () => import('@ds-mo/icons/svg/KeyShift').then(m => m.KeyShift),\n LED: () => import('@ds-mo/icons/svg/LED').then(m => m.LED),\n Layers: () => import('@ds-mo/icons/svg/Layers').then(m => m.Layers),\n Leaf: () => import('@ds-mo/icons/svg/Leaf').then(m => m.Leaf),\n LeftCollapse: () => import('@ds-mo/icons/svg/LeftCollapse').then(m => m.LeftCollapse),\n LeftCollapseB: () => import('@ds-mo/icons/svg/LeftCollapseB').then(m => m.LeftCollapseB),\n LeftExpand: () => import('@ds-mo/icons/svg/LeftExpand').then(m => m.LeftExpand),\n LeftExpandB: () => import('@ds-mo/icons/svg/LeftExpandB').then(m => m.LeftExpandB),\n LeftTurnSignal: () => import('@ds-mo/icons/svg/LeftTurnSignal').then(m => m.LeftTurnSignal),\n LetterB: () => import('@ds-mo/icons/svg/LetterB').then(m => m.LetterB),\n LetterC: () => import('@ds-mo/icons/svg/LetterC').then(m => m.LetterC),\n LetterI: () => import('@ds-mo/icons/svg/LetterI').then(m => m.LetterI),\n License: () => import('@ds-mo/icons/svg/License').then(m => m.License),\n LicensePlate: () => import('@ds-mo/icons/svg/LicensePlate').then(m => m.LicensePlate),\n Lifebuoy: () => import('@ds-mo/icons/svg/Lifebuoy').then(m => m.Lifebuoy),\n Link: () => import('@ds-mo/icons/svg/Link').then(m => m.Link),\n List: () => import('@ds-mo/icons/svg/List').then(m => m.List),\n Loads: () => import('@ds-mo/icons/svg/Loads').then(m => m.Loads),\n LocationPin: () => import('@ds-mo/icons/svg/LocationPin').then(m => m.LocationPin),\n LocationPinArrows: () => import('@ds-mo/icons/svg/LocationPinArrows').then(m => m.LocationPinArrows),\n LocationPinDisabled: () => import('@ds-mo/icons/svg/LocationPinDisabled').then(m => m.LocationPinDisabled),\n LocationPinDollar: () => import('@ds-mo/icons/svg/LocationPinDollar').then(m => m.LocationPinDollar),\n LockClosed: () => import('@ds-mo/icons/svg/LockClosed').then(m => m.LockClosed),\n LockClosedFilled: () => import('@ds-mo/icons/svg/LockClosedFilled').then(m => m.LockClosedFilled),\n LockOpen: () => import('@ds-mo/icons/svg/LockOpen').then(m => m.LockOpen),\n Logout: () => import('@ds-mo/icons/svg/Logout').then(m => m.Logout),\n Logs: () => import('@ds-mo/icons/svg/Logs').then(m => m.Logs),\n LogsMagnifyingGlass: () => import('@ds-mo/icons/svg/LogsMagnifyingGlass').then(m => m.LogsMagnifyingGlass),\n MagnifyingGlass: () => import('@ds-mo/icons/svg/MagnifyingGlass').then(m => m.MagnifyingGlass),\n MagnifyingGlassGraph: () => import('@ds-mo/icons/svg/MagnifyingGlassGraph').then(m => m.MagnifyingGlassGraph),\n MagnifyingGlassZoomIn: () => import('@ds-mo/icons/svg/MagnifyingGlassZoomIn').then(m => m.MagnifyingGlassZoomIn),\n MagnifyingGlassZoomOut: () => import('@ds-mo/icons/svg/MagnifyingGlassZoomOut').then(m => m.MagnifyingGlassZoomOut),\n MapNavigation: () => import('@ds-mo/icons/svg/MapNavigation').then(m => m.MapNavigation),\n MapPage: () => import('@ds-mo/icons/svg/MapPage').then(m => m.MapPage),\n MapPin: () => import('@ds-mo/icons/svg/MapPin').then(m => m.MapPin),\n MarkRead: () => import('@ds-mo/icons/svg/MarkRead').then(m => m.MarkRead),\n Match: () => import('@ds-mo/icons/svg/Match').then(m => m.Match),\n MessageBubble: () => import('@ds-mo/icons/svg/MessageBubble').then(m => m.MessageBubble),\n MessageBubbleStack: () => import('@ds-mo/icons/svg/MessageBubbleStack').then(m => m.MessageBubbleStack),\n Messaging: () => import('@ds-mo/icons/svg/Messaging').then(m => m.Messaging),\n Mic: () => import('@ds-mo/icons/svg/Mic').then(m => m.Mic),\n MicMute: () => import('@ds-mo/icons/svg/MicMute').then(m => m.MicMute),\n Minimize: () => import('@ds-mo/icons/svg/Minimize').then(m => m.Minimize),\n Monitor: () => import('@ds-mo/icons/svg/Monitor').then(m => m.Monitor),\n Notification: () => import('@ds-mo/icons/svg/Notification').then(m => m.Notification),\n NumberTen: () => import('@ds-mo/icons/svg/NumberTen').then(m => m.NumberTen),\n OctagonSubtract: () => import('@ds-mo/icons/svg/OctagonSubtract').then(m => m.OctagonSubtract),\n Odometer: () => import('@ds-mo/icons/svg/Odometer').then(m => m.Odometer),\n OverviewAI: () => import('@ds-mo/icons/svg/OverviewAI').then(m => m.OverviewAI),\n PanelCollapse: () => import('@ds-mo/icons/svg/PanelCollapse').then(m => m.PanelCollapse),\n PanelExpand: () => import('@ds-mo/icons/svg/PanelExpand').then(m => m.PanelExpand),\n Paperclip: () => import('@ds-mo/icons/svg/Paperclip').then(m => m.Paperclip),\n PaperplaneSend: () => import('@ds-mo/icons/svg/PaperplaneSend').then(m => m.PaperplaneSend),\n Paragraph: () => import('@ds-mo/icons/svg/Paragraph').then(m => m.Paragraph),\n ParagraphCheck: () => import('@ds-mo/icons/svg/ParagraphCheck').then(m => m.ParagraphCheck),\n ParagraphPencil: () => import('@ds-mo/icons/svg/ParagraphPencil').then(m => m.ParagraphPencil),\n Pause: () => import('@ds-mo/icons/svg/Pause').then(m => m.Pause),\n PauseFilled: () => import('@ds-mo/icons/svg/PauseFilled').then(m => m.PauseFilled),\n Pencil: () => import('@ds-mo/icons/svg/Pencil').then(m => m.Pencil),\n PencilSquiggle: () => import('@ds-mo/icons/svg/PencilSquiggle').then(m => m.PencilSquiggle),\n Person: () => import('@ds-mo/icons/svg/Person').then(m => m.Person),\n PersonAt: () => import('@ds-mo/icons/svg/PersonAt').then(m => m.PersonAt),\n PersonConnect: () => import('@ds-mo/icons/svg/PersonConnect').then(m => m.PersonConnect),\n PersonFrame: () => import('@ds-mo/icons/svg/PersonFrame').then(m => m.PersonFrame),\n PersonGear: () => import('@ds-mo/icons/svg/PersonGear').then(m => m.PersonGear),\n PersonGroup: () => import('@ds-mo/icons/svg/PersonGroup').then(m => m.PersonGroup),\n PersonGroupArrows: () => import('@ds-mo/icons/svg/PersonGroupArrows').then(m => m.PersonGroupArrows),\n PersonGroupThree: () => import('@ds-mo/icons/svg/PersonGroupThree').then(m => m.PersonGroupThree),\n PersonManager: () => import('@ds-mo/icons/svg/PersonManager').then(m => m.PersonManager),\n PersonShield: () => import('@ds-mo/icons/svg/PersonShield').then(m => m.PersonShield),\n PersonStar: () => import('@ds-mo/icons/svg/PersonStar').then(m => m.PersonStar),\n Phone: () => import('@ds-mo/icons/svg/Phone').then(m => m.Phone),\n PhoneDisconnect: () => import('@ds-mo/icons/svg/PhoneDisconnect').then(m => m.PhoneDisconnect),\n PicmanFilled: () => import('@ds-mo/icons/svg/PicmanFilled').then(m => m.PicmanFilled),\n Pin: () => import('@ds-mo/icons/svg/Pin').then(m => m.Pin),\n PipBottomLeft: () => import('@ds-mo/icons/svg/PipBottomLeft').then(m => m.PipBottomLeft),\n PipBottomRight: () => import('@ds-mo/icons/svg/PipBottomRight').then(m => m.PipBottomRight),\n PipTopLeft: () => import('@ds-mo/icons/svg/PipTopLeft').then(m => m.PipTopLeft),\n PipTopRight: () => import('@ds-mo/icons/svg/PipTopRight').then(m => m.PipTopRight),\n Play: () => import('@ds-mo/icons/svg/Play').then(m => m.Play),\n PlayFilled: () => import('@ds-mo/icons/svg/PlayFilled').then(m => m.PlayFilled),\n Plug: () => import('@ds-mo/icons/svg/Plug').then(m => m.Plug),\n Plus: () => import('@ds-mo/icons/svg/Plus').then(m => m.Plus),\n PlusCircle: () => import('@ds-mo/icons/svg/PlusCircle').then(m => m.PlusCircle),\n Preferences: () => import('@ds-mo/icons/svg/Preferences').then(m => m.Preferences),\n Printer: () => import('@ds-mo/icons/svg/Printer').then(m => m.Printer),\n PunchCard: () => import('@ds-mo/icons/svg/PunchCard').then(m => m.PunchCard),\n Puzzle: () => import('@ds-mo/icons/svg/Puzzle').then(m => m.Puzzle),\n PuzzleJoined: () => import('@ds-mo/icons/svg/PuzzleJoined').then(m => m.PuzzleJoined),\n Redo: () => import('@ds-mo/icons/svg/Redo').then(m => m.Redo),\n Refresh: () => import('@ds-mo/icons/svg/Refresh').then(m => m.Refresh),\n Restore: () => import('@ds-mo/icons/svg/Restore').then(m => m.Restore),\n RewardRibbon: () => import('@ds-mo/icons/svg/RewardRibbon').then(m => m.RewardRibbon),\n Rewind: () => import('@ds-mo/icons/svg/Rewind').then(m => m.Rewind),\n RewindSkip: () => import('@ds-mo/icons/svg/RewindSkip').then(m => m.RewindSkip),\n RewindSkipFilled: () => import('@ds-mo/icons/svg/RewindSkipFilled').then(m => m.RewindSkipFilled),\n RightCollapse: () => import('@ds-mo/icons/svg/RightCollapse').then(m => m.RightCollapse),\n RightCollapseB: () => import('@ds-mo/icons/svg/RightCollapseB').then(m => m.RightCollapseB),\n RightExpand: () => import('@ds-mo/icons/svg/RightExpand').then(m => m.RightExpand),\n RightExpandB: () => import('@ds-mo/icons/svg/RightExpandB').then(m => m.RightExpandB),\n RightTurnSignal: () => import('@ds-mo/icons/svg/RightTurnSignal').then(m => m.RightTurnSignal),\n Rotate: () => import('@ds-mo/icons/svg/Rotate').then(m => m.Rotate),\n Satellite: () => import('@ds-mo/icons/svg/Satellite').then(m => m.Satellite),\n Scan: () => import('@ds-mo/icons/svg/Scan').then(m => m.Scan),\n Scissor: () => import('@ds-mo/icons/svg/Scissor').then(m => m.Scissor),\n Scope: () => import('@ds-mo/icons/svg/Scope').then(m => m.Scope),\n Seatbelt: () => import('@ds-mo/icons/svg/Seatbelt').then(m => m.Seatbelt),\n SeatbeltBuckle: () => import('@ds-mo/icons/svg/SeatbeltBuckle').then(m => m.SeatbeltBuckle),\n SectionList: () => import('@ds-mo/icons/svg/SectionList').then(m => m.SectionList),\n Shapes: () => import('@ds-mo/icons/svg/Shapes').then(m => m.Shapes),\n ShareCircles: () => import('@ds-mo/icons/svg/ShareCircles').then(m => m.ShareCircles),\n ShareCirclesFilled: () => import('@ds-mo/icons/svg/ShareCirclesFilled').then(m => m.ShareCirclesFilled),\n SharePaperplane: () => import('@ds-mo/icons/svg/SharePaperplane').then(m => m.SharePaperplane),\n Shield: () => import('@ds-mo/icons/svg/Shield').then(m => m.Shield),\n ShieldCheck: () => import('@ds-mo/icons/svg/ShieldCheck').then(m => m.ShieldCheck),\n ShieldCheckmarkFilled: () => import('@ds-mo/icons/svg/ShieldCheckmarkFilled').then(m => m.ShieldCheckmarkFilled),\n ShieldCircle: () => import('@ds-mo/icons/svg/ShieldCircle').then(m => m.ShieldCircle),\n ShieldCircleFilled: () => import('@ds-mo/icons/svg/ShieldCircleFilled').then(m => m.ShieldCircleFilled),\n ShieldCross: () => import('@ds-mo/icons/svg/ShieldCross').then(m => m.ShieldCross),\n ShieldCrossFilled: () => import('@ds-mo/icons/svg/ShieldCrossFilled').then(m => m.ShieldCrossFilled),\n ShieldFilled: () => import('@ds-mo/icons/svg/ShieldFilled').then(m => m.ShieldFilled),\n ShieldLock: () => import('@ds-mo/icons/svg/ShieldLock').then(m => m.ShieldLock),\n ShieldLockFilled: () => import('@ds-mo/icons/svg/ShieldLockFilled').then(m => m.ShieldLockFilled),\n ShieldPerson: () => import('@ds-mo/icons/svg/ShieldPerson').then(m => m.ShieldPerson),\n ShoppingBag: () => import('@ds-mo/icons/svg/ShoppingBag').then(m => m.ShoppingBag),\n Snowflake: () => import('@ds-mo/icons/svg/Snowflake').then(m => m.Snowflake),\n SpeakerPhone: () => import('@ds-mo/icons/svg/SpeakerPhone').then(m => m.SpeakerPhone),\n SpeedometerArrow: () => import('@ds-mo/icons/svg/SpeedometerArrow').then(m => m.SpeedometerArrow),\n SpeedometerLeft: () => import('@ds-mo/icons/svg/SpeedometerLeft').then(m => m.SpeedometerLeft),\n SpeedometerRight: () => import('@ds-mo/icons/svg/SpeedometerRight').then(m => m.SpeedometerRight),\n SpikeCirclePercentage: () => import('@ds-mo/icons/svg/SpikeCirclePercentage').then(m => m.SpikeCirclePercentage),\n SpikeCirclePercentageFilled: () => import('@ds-mo/icons/svg/SpikeCirclePercentageFilled').then(m => m.SpikeCirclePercentageFilled),\n Square: () => import('@ds-mo/icons/svg/Square').then(m => m.Square),\n SquareArrowTopRight: () => import('@ds-mo/icons/svg/SquareArrowTopRight').then(m => m.SquareArrowTopRight),\n SquareCheck: () => import('@ds-mo/icons/svg/SquareCheck').then(m => m.SquareCheck),\n SquareCheckFilled: () => import('@ds-mo/icons/svg/SquareCheckFilled').then(m => m.SquareCheckFilled),\n SquareDollar: () => import('@ds-mo/icons/svg/SquareDollar').then(m => m.SquareDollar),\n SquareDollarFilled: () => import('@ds-mo/icons/svg/SquareDollarFilled').then(m => m.SquareDollarFilled),\n SquareDottedMinus: () => import('@ds-mo/icons/svg/SquareDottedMinus').then(m => m.SquareDottedMinus),\n SquareFilled: () => import('@ds-mo/icons/svg/SquareFilled').then(m => m.SquareFilled),\n SquareGrid: () => import('@ds-mo/icons/svg/SquareGrid').then(m => m.SquareGrid),\n SquarePencil: () => import('@ds-mo/icons/svg/SquarePencil').then(m => m.SquarePencil),\n SquarePlus: () => import('@ds-mo/icons/svg/SquarePlus').then(m => m.SquarePlus),\n SquareSubtract: () => import('@ds-mo/icons/svg/SquareSubtract').then(m => m.SquareSubtract),\n SquareSubtractFilled: () => import('@ds-mo/icons/svg/SquareSubtractFilled').then(m => m.SquareSubtractFilled),\n Star: () => import('@ds-mo/icons/svg/Star').then(m => m.Star),\n StarFilled: () => import('@ds-mo/icons/svg/StarFilled').then(m => m.StarFilled),\n Stopwatch: () => import('@ds-mo/icons/svg/Stopwatch').then(m => m.Stopwatch),\n Street: () => import('@ds-mo/icons/svg/Street').then(m => m.Street),\n Subtract: () => import('@ds-mo/icons/svg/Subtract').then(m => m.Subtract),\n SubtractCircle: () => import('@ds-mo/icons/svg/SubtractCircle').then(m => m.SubtractCircle),\n SubtractCircleFilled: () => import('@ds-mo/icons/svg/SubtractCircleFilled').then(m => m.SubtractCircleFilled),\n Table: () => import('@ds-mo/icons/svg/Table').then(m => m.Table),\n Tag: () => import('@ds-mo/icons/svg/Tag').then(m => m.Tag),\n Target: () => import('@ds-mo/icons/svg/Target').then(m => m.Target),\n TargetDollar: () => import('@ds-mo/icons/svg/TargetDollar').then(m => m.TargetDollar),\n Text: () => import('@ds-mo/icons/svg/Text').then(m => m.Text),\n ThemeDark: () => import('@ds-mo/icons/svg/ThemeDark').then(m => m.ThemeDark),\n ThemeLight: () => import('@ds-mo/icons/svg/ThemeLight').then(m => m.ThemeLight),\n ThumbsDown: () => import('@ds-mo/icons/svg/ThumbsDown').then(m => m.ThumbsDown),\n ThumbsDownFilled: () => import('@ds-mo/icons/svg/ThumbsDownFilled').then(m => m.ThumbsDownFilled),\n ThumbsUp: () => import('@ds-mo/icons/svg/ThumbsUp').then(m => m.ThumbsUp),\n ThumbsUpFilled: () => import('@ds-mo/icons/svg/ThumbsUpFilled').then(m => m.ThumbsUpFilled),\n TirePressure: () => import('@ds-mo/icons/svg/TirePressure').then(m => m.TirePressure),\n Toggle: () => import('@ds-mo/icons/svg/Toggle').then(m => m.Toggle),\n TrafficLight: () => import('@ds-mo/icons/svg/TrafficLight').then(m => m.TrafficLight),\n Trash: () => import('@ds-mo/icons/svg/Trash').then(m => m.Trash),\n Trophy: () => import('@ds-mo/icons/svg/Trophy').then(m => m.Trophy),\n TurnSignal: () => import('@ds-mo/icons/svg/TurnSignal').then(m => m.TurnSignal),\n TurnSignalFilled: () => import('@ds-mo/icons/svg/TurnSignalFilled').then(m => m.TurnSignalFilled),\n Undo: () => import('@ds-mo/icons/svg/Undo').then(m => m.Undo),\n Upgrade: () => import('@ds-mo/icons/svg/Upgrade').then(m => m.Upgrade),\n Upload: () => import('@ds-mo/icons/svg/Upload').then(m => m.Upload),\n VehicleTrailer: () => import('@ds-mo/icons/svg/VehicleTrailer').then(m => m.VehicleTrailer),\n VehicleTruck: () => import('@ds-mo/icons/svg/VehicleTruck').then(m => m.VehicleTruck),\n VehicleTruckMagnifyingGlass: () => import('@ds-mo/icons/svg/VehicleTruckMagnifyingGlass').then(m => m.VehicleTruckMagnifyingGlass),\n Video: () => import('@ds-mo/icons/svg/Video').then(m => m.Video),\n ViewMenu: () => import('@ds-mo/icons/svg/ViewMenu').then(m => m.ViewMenu),\n Volume: () => import('@ds-mo/icons/svg/Volume').then(m => m.Volume),\n VolumeFilled: () => import('@ds-mo/icons/svg/VolumeFilled').then(m => m.VolumeFilled),\n VolumeMute: () => import('@ds-mo/icons/svg/VolumeMute').then(m => m.VolumeMute),\n VolumeMuteFilled: () => import('@ds-mo/icons/svg/VolumeMuteFilled').then(m => m.VolumeMuteFilled),\n WandSparkle: () => import('@ds-mo/icons/svg/WandSparkle').then(m => m.WandSparkle),\n Waveform: () => import('@ds-mo/icons/svg/Waveform').then(m => m.Waveform),\n Webhooks: () => import('@ds-mo/icons/svg/Webhooks').then(m => m.Webhooks),\n Whistle: () => import('@ds-mo/icons/svg/Whistle').then(m => m.Whistle),\n WifiHorizontal: () => import('@ds-mo/icons/svg/WifiHorizontal').then(m => m.WifiHorizontal),\n WifiTower: () => import('@ds-mo/icons/svg/WifiTower').then(m => m.WifiTower),\n WifiVertical: () => import('@ds-mo/icons/svg/WifiVertical').then(m => m.WifiVertical),\n WifiVerticalFilled: () => import('@ds-mo/icons/svg/WifiVerticalFilled').then(m => m.WifiVerticalFilled),\n WifiVerticalFilledDisabled: () => import('@ds-mo/icons/svg/WifiVerticalFilledDisabled').then(m => m.WifiVerticalFilledDisabled),\n WorkflowA: () => import('@ds-mo/icons/svg/WorkflowA').then(m => m.WorkflowA),\n WorkflowB: () => import('@ds-mo/icons/svg/WorkflowB').then(m => m.WorkflowB),\n Wrench: () => import('@ds-mo/icons/svg/Wrench').then(m => m.Wrench),\n ZoomBackOut: () => import('@ds-mo/icons/svg/ZoomBackOut').then(m => m.ZoomBackOut),\n};\n","/**\n * Shared SVG glyph cache for ds-icon.\n *\n * Keyed on a global symbol so every module instance (the compiled Stencil chunk\n * inside dist/components and any direct source import, e.g. via `@ds-mo/ui/utils`)\n * reads and writes the same cache. Without this, `registerIcons` called from an\n * app would fill a different Map than the one ds-icon resolves from.\n */\nconst CACHE_KEY = Symbol.for('ds-mo.icon-svg-cache');\n\ntype IconCacheMap = Map<string, string>;\n\ntype GlobalWithIconCache = { [CACHE_KEY]?: IconCacheMap };\n\nexport function iconCacheKey(name: string, flag: boolean): string {\n return flag ? `flag:${name}` : `system:${name}`;\n}\n\nexport function iconCache(): IconCacheMap {\n const g = globalThis as GlobalWithIconCache;\n return (g[CACHE_KEY] ??= new Map());\n}\n\n/**\n * Pre-register glyphs so ds-icon renders them synchronously — no lazy-chunk\n * fetch, no first-paint pop-in. Import the SVG strings from `@ds-mo/icons`\n * in the app (statically, so they ship in the app's own bundle):\n *\n * ```ts\n * import { Bell } from '@ds-mo/icons/svg/Bell';\n * import { FlagUnitedStates } from '@ds-mo/icons/svg/flags/FlagUnitedStates';\n * import { registerIcons } from '@ds-mo/ui/utils';\n *\n * registerIcons({ Bell });\n * registerIcons({ FlagUnitedStates });\n * ```\n *\n * Icons that are not registered still work — they lazy-load on first render\n * and stay cached afterwards.\n */\nexport function registerIcons(icons: Record<string, string>, options?: { flag?: boolean }): void {\n const cache = iconCache();\n for (const [name, svg] of Object.entries(icons)) {\n const flag = options?.flag ?? name.startsWith('Flag');\n cache.set(iconCacheKey(name, flag), svg);\n }\n}\n","/**\n * Glyph markup validation + Trusted-Types-safe parsing for ds-icon.\n *\n * Glyphs normally come from the trusted @ds-mo/icons build pipeline, but\n * `registerIcons` accepts arbitrary app-provided strings and injection is a\n * sink — so every glyph is validated at the render boundary. Injection uses\n * parsed DOM nodes (never innerHTML), which keeps ds-icon working under a\n * strict CSP with `require-trusted-types-for 'script'`.\n */\n\n/** Structural view of an element so the walk is unit-testable without a DOM. */\nexport interface IconSvgElementLike {\n localName: string;\n getAttributeNames(): string[];\n getAttribute(name: string): string | null;\n children: ArrayLike<IconSvgElementLike>;\n}\n\n/** Elements that can execute or embed foreign content — never valid in a glyph. */\nconst FORBIDDEN_ELEMENTS = new Set([\n 'script',\n 'foreignobject',\n 'iframe',\n 'object',\n 'embed',\n 'animation', // SVG 1.2 external-content element (distinct from animate/animateTransform)\n]);\n\nfunction isValidIconSvgElement(el: IconSvgElementLike): boolean {\n if (FORBIDDEN_ELEMENTS.has(el.localName.toLowerCase())) return false;\n\n for (const attr of el.getAttributeNames()) {\n const lower = attr.toLowerCase();\n // Event handler attributes (onclick, onload, …) — any casing.\n if (lower.startsWith('on')) return false;\n // References must stay internal (#gradient-id); rejects javascript:, data:,\n // and external URLs on <use>, <a>, <image>, …\n if (lower === 'href' || lower === 'xlink:href') {\n const value = el.getAttribute(attr) ?? '';\n if (!value.startsWith('#')) return false;\n }\n }\n\n for (let i = 0; i < el.children.length; i++) {\n if (!isValidIconSvgElement(el.children[i])) return false;\n }\n\n return true;\n}\n\n/** True when `root` is an `<svg>` whose whole tree passes validation. */\nexport function isValidIconSvgRoot(root: IconSvgElementLike | null): boolean {\n return root != null && root.localName === 'svg' && isValidIconSvgElement(root);\n}\n\n/**\n * Parse + validate glyph markup. Returns a detached `<svg>` element ready to\n * append (appending adopts it into the document), or `null` when the markup\n * is not well-formed XML, not rooted at `<svg>`, or fails validation —\n * ds-icon renders an empty fixed-size box in that case.\n */\nexport function parseIconSvg(svg: string): SVGElement | null {\n if (typeof DOMParser === 'undefined') return null;\n\n const doc = new DOMParser().parseFromString(svg, 'image/svg+xml');\n // Malformed XML yields a parsererror document (root or nested, per browser).\n if (doc.querySelector('parsererror')) return null;\n\n const root = doc.documentElement as unknown as IconSvgElementLike;\n if (!isValidIconSvgRoot(root)) return null;\n\n return doc.documentElement as unknown as SVGElement;\n}\n","/* ── Base icon ───────────────────────────────────────────────────────────── */\n\n.icon {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n line-height: 0;\n color: inherit;\n /* Explicit size so the SVG (width/height: 100% via JS) has a defined container */\n width: var(--_icon-sz, var(--dimension-iconography-md));\n height: var(--_icon-sz, var(--dimension-iconography-md));\n}\n\n.icon__svg {\n display: contents;\n line-height: 0;\n}\n\n/* SVG width/height are set via inline style in updateSvg() because Stencil's\n scoped CSS cannot reach innerHTML-injected elements (they lack the sc-* class). */\n\n/* ── Sizes ───────────────────────────────────────────────────────────────── */\n\n.icon--size-xs {\n --_icon-sz: var(--dimension-iconography-xs);\n}\n.icon--size-sm {\n --_icon-sz: var(--dimension-iconography-sm);\n}\n.icon--size-md {\n --_icon-sz: var(--dimension-iconography-md);\n}\n.icon--size-lg {\n --_icon-sz: var(--dimension-iconography-lg);\n}\n.icon--size-xl {\n --_icon-sz: var(--dimension-iconography-xl);\n}\n.icon--size-2xl {\n --_icon-sz: var(--dimension-iconography-2xl);\n}\n.icon--size-3xl {\n --_icon-sz: var(--dimension-iconography-3xl);\n}\n\n/* ── Colors — hierarchy ──────────────────────────────────────────────────── */\n\n.icon--color-primary {\n color: var(--color-foreground-primary);\n}\n.icon--color-secondary {\n color: var(--color-foreground-secondary);\n}\n.icon--color-tertiary {\n color: var(--color-foreground-tertiary);\n}\n.icon--color-quaternary {\n color: var(--color-foreground-quaternary);\n}\n.icon--color-inherit {\n color: inherit;\n}\n\n/* ── Colors — intent (bold contrast default) ─────────────────────────────── */\n\n.icon--color-brand {\n color: var(--color-foreground-bold-brand);\n}\n.icon--color-negative {\n color: var(--color-foreground-bold-negative);\n}\n.icon--color-positive {\n color: var(--color-foreground-bold-positive);\n}\n.icon--color-warning {\n color: var(--color-foreground-bold-warning);\n}\n.icon--color-caution {\n color: var(--color-foreground-bold-caution);\n}\n.icon--color-ai {\n color: var(--color-foreground-bold-ai);\n}\n.icon--color-guide {\n color: var(--color-foreground-bold-guide);\n}\n.icon--color-neutral {\n color: var(--color-foreground-bold-neutral);\n}\n\n/* ── Colors — intent faint ───────────────────────────────────────────────── */\n\n.icon--color-faint-brand {\n color: var(--color-foreground-faint-brand);\n}\n.icon--color-faint-negative {\n color: var(--color-foreground-faint-negative);\n}\n.icon--color-faint-positive {\n color: var(--color-foreground-faint-positive);\n}\n.icon--color-faint-warning {\n color: var(--color-foreground-faint-warning);\n}\n.icon--color-faint-caution {\n color: var(--color-foreground-faint-caution);\n}\n.icon--color-faint-ai {\n color: var(--color-foreground-faint-ai);\n}\n.icon--color-faint-neutral {\n color: var(--color-foreground-faint-neutral);\n}\n\n/* ── Colors — intent medium ─────────────────────────────────────────────── */\n\n.icon--color-medium-brand {\n color: var(--color-foreground-medium-brand);\n}\n.icon--color-medium-negative {\n color: var(--color-foreground-medium-negative);\n}\n.icon--color-medium-positive {\n color: var(--color-foreground-medium-positive);\n}\n.icon--color-medium-warning {\n color: var(--color-foreground-medium-warning);\n}\n.icon--color-medium-caution {\n color: var(--color-foreground-medium-caution);\n}\n.icon--color-medium-ai {\n color: var(--color-foreground-medium-ai);\n}\n.icon--color-medium-neutral {\n color: var(--color-foreground-medium-neutral);\n}\n\n/* ── Colors — intent bold (explicit) ────────────────────────────────────── */\n\n.icon--color-bold-brand {\n color: var(--color-foreground-bold-brand);\n}\n.icon--color-bold-negative {\n color: var(--color-foreground-bold-negative);\n}\n.icon--color-bold-positive {\n color: var(--color-foreground-bold-positive);\n}\n.icon--color-bold-warning {\n color: var(--color-foreground-bold-warning);\n}\n.icon--color-bold-caution {\n color: var(--color-foreground-bold-caution);\n}\n.icon--color-bold-ai {\n color: var(--color-foreground-bold-ai);\n}\n.icon--color-bold-neutral {\n color: var(--color-foreground-bold-neutral);\n}\n\n/* ── Colors — intent strong ──────────────────────────────────────────────── */\n\n.icon--color-strong-brand {\n color: var(--color-foreground-strong-brand);\n}\n.icon--color-strong-negative {\n color: var(--color-foreground-strong-negative);\n}\n.icon--color-strong-positive {\n color: var(--color-foreground-strong-positive);\n}\n.icon--color-strong-warning {\n color: var(--color-foreground-strong-warning);\n}\n.icon--color-strong-caution {\n color: var(--color-foreground-strong-caution);\n}\n.icon--color-strong-ai {\n color: var(--color-foreground-strong-ai);\n}\n.icon--color-strong-neutral {\n color: var(--color-foreground-strong-neutral);\n}\n\n/* ── Colors — contextual ────────────────────────────────────────────────── */\n\n.icon--color-on-strong {\n color: var(--color-foreground-on-strong-background-primary);\n}\n.icon--color-on-bold {\n color: var(--color-foreground-on-bold-background-primary);\n}\n","import { Component, Prop, Element, State, Watch, h, Host } from '@stencil/core';\nimport { flagIconLoaders } from './flag-icon-catalog';\nimport { systemIconLoaders } from './system-icon-catalog';\nimport { iconCache, iconCacheKey } from './icon-cache';\nimport { parseIconSvg } from './icon-svg';\n\nexport type IconSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl' | '3xl';\n\nexport type IconColorToken =\n // Hierarchy\n | 'primary'\n | 'secondary'\n | 'tertiary'\n | 'quaternary'\n // Intent — bold contrast (default)\n | 'brand'\n | 'negative'\n | 'positive'\n | 'warning'\n | 'caution'\n | 'ai'\n | 'guide'\n | 'neutral'\n // Intent — faint\n | 'faint-brand'\n | 'faint-negative'\n | 'faint-positive'\n | 'faint-warning'\n | 'faint-caution'\n | 'faint-ai'\n | 'faint-neutral'\n // Intent — medium\n | 'medium-brand'\n | 'medium-negative'\n | 'medium-positive'\n | 'medium-warning'\n | 'medium-caution'\n | 'medium-ai'\n | 'medium-neutral'\n // Intent — bold (explicit)\n | 'bold-brand'\n | 'bold-negative'\n | 'bold-positive'\n | 'bold-warning'\n | 'bold-caution'\n | 'bold-ai'\n | 'bold-neutral'\n // Intent — strong\n | 'strong-brand'\n | 'strong-negative'\n | 'strong-positive'\n | 'strong-warning'\n | 'strong-caution'\n | 'strong-ai'\n | 'strong-neutral'\n // Contextual\n | 'on-strong'\n | 'on-bold'\n // Pass-through\n | 'inherit';\n\nexport type IconColor = IconColorToken | `var(--${string})`;\n\n@Component({\n tag: 'ds-icon',\n styleUrl: 'Icon.css',\n scoped: true,\n})\nexport class Icon {\n @Element() el!: HTMLElement;\n\n /** Exact canonical IcoMo export name, including the `Flag` prefix for flags. */\n @Prop() name: string = '';\n /** Iconography size token. Maps to `--dimension-iconography-{size}`. Default `md` = 20 px. */\n @Prop() size: IconSize = 'md';\n /**\n * Semantic foreground color token, or a raw CSS var reference. `tertiary`\n * and the still-fainter `quaternary` are restricted to icons inside genuinely\n * inactive/disabled UI or to purely decorative icons; informative icons must\n * retain sufficient contrast.\n */\n @Prop() color: IconColor = 'inherit';\n /** Accessible label. Sets `role=\"img\"` and `aria-label`. Omit for decorative icons. */\n @Prop() label: string | undefined;\n\n /** Resolved SVG markup — set synchronously on cache hit, async after a lazy load. */\n @State() private svg: string = '';\n\n /** Guards against out-of-order async resolutions when `name`/`flag` change quickly. */\n private loadToken = 0;\n\n /**\n * Cache hit → render synchronously (pre-registered via `registerIcons` or\n * previously loaded). Miss → fire the per-icon lazy loader; the glyph pops in\n * when the (tiny, per-icon) chunk resolves and stays cached for every other\n * ds-icon instance.\n */\n private resolveSvg() {\n const flag = this.name.startsWith('Flag');\n const key = iconCacheKey(this.name, flag);\n const token = ++this.loadToken;\n\n const cached = iconCache().get(key);\n if (cached !== undefined) {\n this.svg = cached;\n return;\n }\n\n // Own-key lookup only: names resolve by exact canonical IcoMo export key —\n // never meta.json aliases (not in the maps) and never inherited prototype\n // keys ('constructor', 'toString', …) that a bare index access would hit.\n const loaders = flag ? flagIconLoaders : systemIconLoaders;\n const loader = Object.prototype.hasOwnProperty.call(loaders, this.name)\n ? loaders[this.name]\n : undefined;\n if (!loader) {\n this.svg = '';\n return;\n }\n\n loader()\n .then(svg => {\n iconCache().set(key, svg);\n if (token === this.loadToken) this.svg = svg;\n })\n .catch(() => {\n if (token === this.loadToken) this.svg = '';\n });\n }\n\n componentWillLoad() {\n // Fire-and-forget: do not return the promise — a cache miss must not block\n // the parent render tree on a network fetch.\n this.resolveSvg();\n }\n\n /** Last markup injected into the DOM — skips redundant re-parse on unrelated re-renders. */\n private renderedSvg: string | null = null;\n\n private updateSvg() {\n const container = this.el.querySelector<HTMLElement>('.icon__svg');\n if (!container) return;\n if (this.svg === this.renderedSvg) return;\n this.renderedSvg = this.svg;\n\n // Validate + inject as parsed DOM nodes — never innerHTML. Keeps ds-icon\n // Trusted-Types compatible and rejects executable/foreign content in\n // glyph strings (registerIcons accepts app-provided markup).\n const svg = this.svg ? parseIconSvg(this.svg) : null;\n if (!svg) {\n container.replaceChildren();\n return;\n }\n\n // Stencil's scoped CSS cannot reach injected elements (no sc-* class).\n // Apply width/height as inline styles so sizing works regardless of scope class.\n svg.removeAttribute('width');\n svg.removeAttribute('height');\n // Prevent SVG from being natively focusable (Firefox/IE default) while\n // sitting inside an aria-hidden parent — fixes aria-hidden-focus violation.\n svg.setAttribute('focusable', 'false');\n svg.setAttribute('aria-hidden', 'true');\n svg.style.display = 'block';\n svg.style.flexShrink = '0';\n svg.style.width = '100%';\n svg.style.height = '100%';\n container.replaceChildren(svg);\n }\n\n @Watch('name')\n onIconChange() {\n this.resolveSvg();\n }\n\n componentDidRender() {\n this.updateSvg();\n }\n\n render() {\n const isCustomColor = typeof this.color === 'string' && this.color.startsWith('var(--');\n\n const cls: Record<string, boolean> = {\n icon: true,\n [`icon--size-${this.size}`]: true,\n [`icon--color-${this.color}`]: !!this.color && !isCustomColor && this.color !== 'inherit',\n 'icon--color-inherit': this.color === 'inherit',\n };\n\n const style = isCustomColor ? { color: this.color as string } : undefined;\n\n return (\n <Host style={{ display: 'inline-flex', alignItems: 'center', justifyContent: 'center' }}>\n <span\n class={cls}\n style={style}\n role={this.label ? 'img' : 'presentation'}\n aria-label={this.label}\n aria-hidden={!this.label ? 'true' : undefined}\n >\n <span class=\"icon__svg\" />\n </span>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}