@hashicorp/design-system-components 6.2.0 → 6.3.0-rc-20260514101332

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 (884) hide show
  1. package/declarations/components/hds/accordion/index.d.ts +1 -1
  2. package/declarations/components/hds/accordion/item/button.d.ts +1 -1
  3. package/declarations/components/hds/accordion/item/index.d.ts +1 -1
  4. package/declarations/components/hds/advanced-table/body.d.ts +4 -0
  5. package/declarations/components/hds/advanced-table/column-manager/index.d.ts +1 -1
  6. package/declarations/components/hds/advanced-table/column-manager/order.d.ts +4 -0
  7. package/declarations/components/hds/advanced-table/column-manager/width.d.ts +4 -0
  8. package/declarations/components/hds/advanced-table/index.d.ts +1 -1
  9. package/declarations/components/hds/advanced-table/td.d.ts +1 -1
  10. package/declarations/components/hds/advanced-table/th-button-expand.d.ts +1 -1
  11. package/declarations/components/hds/advanced-table/th-button-sort.d.ts +1 -1
  12. package/declarations/components/hds/advanced-table/th-button-tooltip.d.ts +1 -1
  13. package/declarations/components/hds/advanced-table/th-context-menu.d.ts +1 -1
  14. package/declarations/components/hds/advanced-table/th-reorder-drop-target.d.ts +1 -1
  15. package/declarations/components/hds/advanced-table/th-reorder-handle.d.ts +1 -1
  16. package/declarations/components/hds/advanced-table/th-resize-handle.d.ts +1 -1
  17. package/declarations/components/hds/advanced-table/th-selectable.d.ts +1 -1
  18. package/declarations/components/hds/advanced-table/th.d.ts +1 -1
  19. package/declarations/components/hds/advanced-table/tr.d.ts +1 -1
  20. package/declarations/components/hds/advanced-table/types.d.ts +1 -1
  21. package/declarations/components/hds/advanced-table/utils.d.ts +1 -1
  22. package/declarations/components/hds/alert/description.d.ts +1 -1
  23. package/declarations/components/hds/alert/index.d.ts +10 -1
  24. package/declarations/components/hds/alert/title.d.ts +1 -1
  25. package/declarations/components/hds/app-footer/copyright.d.ts +1 -1
  26. package/declarations/components/hds/app-footer/index.d.ts +1 -1
  27. package/declarations/components/hds/app-footer/item.d.ts +1 -1
  28. package/declarations/components/hds/app-footer/legal-links.d.ts +1 -1
  29. package/declarations/components/hds/app-footer/link.d.ts +1 -1
  30. package/declarations/components/hds/app-footer/status-link.d.ts +2 -2
  31. package/declarations/components/hds/app-footer/types.d.ts +1 -1
  32. package/declarations/components/hds/app-frame/index.d.ts +1 -1
  33. package/declarations/components/hds/app-frame/parts/footer.d.ts +1 -1
  34. package/declarations/components/hds/app-frame/parts/header.d.ts +1 -1
  35. package/declarations/components/hds/app-frame/parts/main.d.ts +1 -1
  36. package/declarations/components/hds/app-frame/parts/modals.d.ts +1 -1
  37. package/declarations/components/hds/app-frame/parts/sidebar.d.ts +1 -1
  38. package/declarations/components/hds/app-header/home-link.d.ts +1 -1
  39. package/declarations/components/hds/app-header/index.d.ts +1 -1
  40. package/declarations/components/hds/app-header/menu-button.d.ts +1 -1
  41. package/declarations/components/hds/app-side-nav/index.d.ts +1 -1
  42. package/declarations/components/hds/app-side-nav/list/back-link.d.ts +1 -1
  43. package/declarations/components/hds/app-side-nav/list/index.d.ts +1 -1
  44. package/declarations/components/hds/app-side-nav/list/item.d.ts +1 -1
  45. package/declarations/components/hds/app-side-nav/list/link.d.ts +1 -1
  46. package/declarations/components/hds/app-side-nav/list/title.d.ts +1 -1
  47. package/declarations/components/hds/app-side-nav/portal/index.d.ts +1 -1
  48. package/declarations/components/hds/app-side-nav/portal/target.d.ts +1 -1
  49. package/declarations/components/hds/app-side-nav/toggle-button.d.ts +1 -1
  50. package/declarations/components/hds/application-state/body.d.ts +1 -1
  51. package/declarations/components/hds/application-state/footer.d.ts +1 -1
  52. package/declarations/components/hds/application-state/header.d.ts +1 -1
  53. package/declarations/components/hds/application-state/index.d.ts +1 -1
  54. package/declarations/components/hds/application-state/media.d.ts +1 -1
  55. package/declarations/components/hds/badge/index.d.ts +1 -1
  56. package/declarations/components/hds/badge-count/index.d.ts +1 -1
  57. package/declarations/components/hds/breadcrumb/index.d.ts +1 -1
  58. package/declarations/components/hds/breadcrumb/item.d.ts +1 -1
  59. package/declarations/components/hds/breadcrumb/truncation.d.ts +1 -1
  60. package/declarations/components/hds/button/index.d.ts +3 -1
  61. package/declarations/components/hds/button-set/index.d.ts +1 -1
  62. package/declarations/components/hds/card/container.d.ts +1 -1
  63. package/declarations/components/hds/code-block/copy-button.d.ts +1 -1
  64. package/declarations/components/hds/code-block/description.d.ts +1 -1
  65. package/declarations/components/hds/code-block/index.d.ts +1 -1
  66. package/declarations/components/hds/code-block/title.d.ts +1 -1
  67. package/declarations/components/hds/code-editor/description.d.ts +1 -1
  68. package/declarations/components/hds/code-editor/full-screen-button.d.ts +1 -1
  69. package/declarations/components/hds/code-editor/generic.d.ts +1 -1
  70. package/declarations/components/hds/code-editor/index.d.ts +1 -1
  71. package/declarations/components/hds/code-editor/title.d.ts +1 -1
  72. package/declarations/components/hds/composite/index.d.ts +4 -0
  73. package/declarations/components/hds/composite/navigation.d.ts +4 -0
  74. package/declarations/components/hds/composite/types.d.ts +4 -0
  75. package/declarations/components/hds/copy/button/index.d.ts +1 -1
  76. package/declarations/components/hds/copy/snippet/index.d.ts +1 -1
  77. package/declarations/components/hds/dialog-primitive/body.d.ts +1 -1
  78. package/declarations/components/hds/dialog-primitive/description.d.ts +1 -1
  79. package/declarations/components/hds/dialog-primitive/footer.d.ts +1 -1
  80. package/declarations/components/hds/dialog-primitive/header.d.ts +1 -1
  81. package/declarations/components/hds/dialog-primitive/overlay.d.ts +1 -1
  82. package/declarations/components/hds/dialog-primitive/wrapper.d.ts +1 -1
  83. package/declarations/components/hds/disclosure-primitive/index.d.ts +1 -1
  84. package/declarations/components/hds/dismiss-button/index.d.ts +1 -1
  85. package/declarations/components/hds/dropdown/footer.d.ts +1 -1
  86. package/declarations/components/hds/dropdown/header.d.ts +1 -1
  87. package/declarations/components/hds/dropdown/index.d.ts +1 -1
  88. package/declarations/components/hds/dropdown/list-item/checkbox.d.ts +1 -1
  89. package/declarations/components/hds/dropdown/list-item/checkmark.d.ts +1 -1
  90. package/declarations/components/hds/dropdown/list-item/copy-item.d.ts +1 -1
  91. package/declarations/components/hds/dropdown/list-item/description.d.ts +1 -1
  92. package/declarations/components/hds/dropdown/list-item/generic.d.ts +1 -1
  93. package/declarations/components/hds/dropdown/list-item/interactive.d.ts +1 -1
  94. package/declarations/components/hds/dropdown/list-item/radio.d.ts +1 -1
  95. package/declarations/components/hds/dropdown/list-item/separator.d.ts +1 -1
  96. package/declarations/components/hds/dropdown/list-item/title.d.ts +1 -1
  97. package/declarations/components/hds/dropdown/toggle/button.d.ts +1 -1
  98. package/declarations/components/hds/dropdown/toggle/chevron.d.ts +1 -1
  99. package/declarations/components/hds/dropdown/toggle/icon.d.ts +1 -1
  100. package/declarations/components/hds/filter-bar/actions-dropdown.d.ts +1 -1
  101. package/declarations/components/hds/filter-bar/applied-filters.d.ts +1 -1
  102. package/declarations/components/hds/filter-bar/filter-group/checkbox.d.ts +1 -1
  103. package/declarations/components/hds/filter-bar/filter-group/clear-button.d.ts +1 -1
  104. package/declarations/components/hds/filter-bar/filter-group/date.d.ts +1 -1
  105. package/declarations/components/hds/filter-bar/filter-group/generic.d.ts +1 -1
  106. package/declarations/components/hds/filter-bar/filter-group/index.d.ts +1 -1
  107. package/declarations/components/hds/filter-bar/filter-group/numerical.d.ts +1 -1
  108. package/declarations/components/hds/filter-bar/filter-group/radio.d.ts +1 -1
  109. package/declarations/components/hds/filter-bar/filters-dropdown.d.ts +1 -1
  110. package/declarations/components/hds/filter-bar/index.d.ts +1 -1
  111. package/declarations/components/hds/filter-bar/tabs/index.d.ts +1 -1
  112. package/declarations/components/hds/filter-bar/tabs/panel.d.ts +1 -1
  113. package/declarations/components/hds/filter-bar/tabs/tab.d.ts +1 -1
  114. package/declarations/components/hds/filter-bar/types.d.ts +1 -1
  115. package/declarations/components/hds/flyout/index.d.ts +1 -1
  116. package/declarations/components/hds/form/character-count/index.d.ts +1 -1
  117. package/declarations/components/hds/form/checkbox/base.d.ts +1 -1
  118. package/declarations/components/hds/form/checkbox/field.d.ts +1 -1
  119. package/declarations/components/hds/form/checkbox/group.d.ts +1 -1
  120. package/declarations/components/hds/form/error/index.d.ts +1 -1
  121. package/declarations/components/hds/form/error/message.d.ts +1 -1
  122. package/declarations/components/hds/form/field/index.d.ts +1 -1
  123. package/declarations/components/hds/form/fieldset/index.d.ts +1 -1
  124. package/declarations/components/hds/form/file-input/base.d.ts +1 -1
  125. package/declarations/components/hds/form/file-input/field.d.ts +1 -1
  126. package/declarations/components/hds/form/footer/index.d.ts +1 -1
  127. package/declarations/components/hds/form/header/description.d.ts +1 -1
  128. package/declarations/components/hds/form/header/index.d.ts +1 -1
  129. package/declarations/components/hds/form/header/title.d.ts +1 -1
  130. package/declarations/components/hds/form/helper-text/index.d.ts +1 -1
  131. package/declarations/components/hds/form/index.d.ts +1 -1
  132. package/declarations/components/hds/form/indicator/index.d.ts +1 -1
  133. package/declarations/components/hds/form/key-value-inputs/add-row-button.d.ts +1 -1
  134. package/declarations/components/hds/form/key-value-inputs/delete-row-button.d.ts +1 -1
  135. package/declarations/components/hds/form/key-value-inputs/field.d.ts +1 -1
  136. package/declarations/components/hds/form/key-value-inputs/generic.d.ts +1 -1
  137. package/declarations/components/hds/form/key-value-inputs/index.d.ts +1 -1
  138. package/declarations/components/hds/form/label/index.d.ts +1 -1
  139. package/declarations/components/hds/form/legend/index.d.ts +1 -1
  140. package/declarations/components/hds/form/masked-input/base.d.ts +1 -1
  141. package/declarations/components/hds/form/masked-input/field.d.ts +1 -1
  142. package/declarations/components/hds/form/radio/base.d.ts +1 -1
  143. package/declarations/components/hds/form/radio/field.d.ts +1 -1
  144. package/declarations/components/hds/form/radio/group.d.ts +1 -1
  145. package/declarations/components/hds/form/radio-card/description.d.ts +1 -1
  146. package/declarations/components/hds/form/radio-card/group.d.ts +1 -1
  147. package/declarations/components/hds/form/radio-card/index.d.ts +1 -1
  148. package/declarations/components/hds/form/radio-card/label.d.ts +1 -1
  149. package/declarations/components/hds/form/section/header.d.ts +1 -1
  150. package/declarations/components/hds/form/section/index.d.ts +1 -1
  151. package/declarations/components/hds/form/section/multi-field-group/index.d.ts +1 -1
  152. package/declarations/components/hds/form/section/multi-field-group/item.d.ts +1 -1
  153. package/declarations/components/hds/form/select/base.d.ts +1 -1
  154. package/declarations/components/hds/form/select/field.d.ts +1 -1
  155. package/declarations/components/hds/form/separator/index.d.ts +1 -1
  156. package/declarations/components/hds/form/super-select/after-options.d.ts +1 -1
  157. package/declarations/components/hds/form/super-select/multiple/base.d.ts +1 -1
  158. package/declarations/components/hds/form/super-select/multiple/field.d.ts +1 -1
  159. package/declarations/components/hds/form/super-select/option-group.d.ts +1 -1
  160. package/declarations/components/hds/form/super-select/placeholder.d.ts +1 -1
  161. package/declarations/components/hds/form/super-select/single/base.d.ts +1 -1
  162. package/declarations/components/hds/form/super-select/single/field.d.ts +1 -1
  163. package/declarations/components/hds/form/text-input/base.d.ts +1 -1
  164. package/declarations/components/hds/form/text-input/field.d.ts +2 -2
  165. package/declarations/components/hds/form/textarea/base.d.ts +1 -1
  166. package/declarations/components/hds/form/textarea/field.d.ts +1 -1
  167. package/declarations/components/hds/form/toggle/base.d.ts +1 -1
  168. package/declarations/components/hds/form/toggle/field.d.ts +1 -1
  169. package/declarations/components/hds/form/toggle/group.d.ts +1 -1
  170. package/declarations/components/hds/form/visibility-toggle/index.d.ts +1 -1
  171. package/declarations/components/hds/icon/index.d.ts +21 -5
  172. package/declarations/components/hds/icon/types.d.ts +7 -0
  173. package/declarations/components/hds/icon-tile/index.d.ts +1 -1
  174. package/declarations/components/hds/interactive/index.d.ts +1 -1
  175. package/declarations/components/hds/layout/flex/index.d.ts +1 -1
  176. package/declarations/components/hds/layout/flex/item.d.ts +1 -1
  177. package/declarations/components/hds/layout/grid/index.d.ts +1 -1
  178. package/declarations/components/hds/layout/grid/item.d.ts +1 -1
  179. package/declarations/components/hds/link/inline.d.ts +1 -1
  180. package/declarations/components/hds/link/standalone.d.ts +1 -1
  181. package/declarations/components/hds/modal/index.d.ts +1 -1
  182. package/declarations/components/hds/page-header/actions.d.ts +1 -1
  183. package/declarations/components/hds/page-header/badges.d.ts +1 -1
  184. package/declarations/components/hds/page-header/description.d.ts +1 -1
  185. package/declarations/components/hds/page-header/index.d.ts +1 -1
  186. package/declarations/components/hds/page-header/subtitle.d.ts +1 -1
  187. package/declarations/components/hds/page-header/title.d.ts +1 -1
  188. package/declarations/components/hds/pagination/compact/index.d.ts +1 -1
  189. package/declarations/components/hds/pagination/info/index.d.ts +1 -1
  190. package/declarations/components/hds/pagination/nav/arrow.d.ts +1 -1
  191. package/declarations/components/hds/pagination/nav/ellipsis.d.ts +1 -1
  192. package/declarations/components/hds/pagination/nav/number.d.ts +1 -1
  193. package/declarations/components/hds/pagination/numbered/index.d.ts +1 -1
  194. package/declarations/components/hds/pagination/size-selector/index.d.ts +1 -1
  195. package/declarations/components/hds/pagination/types.d.ts +1 -1
  196. package/declarations/components/hds/popover-primitive/index.d.ts +1 -1
  197. package/declarations/components/hds/reveal/index.d.ts +1 -1
  198. package/declarations/components/hds/reveal/toggle/button.d.ts +1 -1
  199. package/declarations/components/hds/rich-tooltip/bubble.d.ts +1 -1
  200. package/declarations/components/hds/rich-tooltip/index.d.ts +1 -1
  201. package/declarations/components/hds/rich-tooltip/toggle.d.ts +1 -1
  202. package/declarations/components/hds/segmented-group/index.d.ts +1 -1
  203. package/declarations/components/hds/separator/index.d.ts +1 -1
  204. package/declarations/components/hds/stepper/list/index.d.ts +1 -1
  205. package/declarations/components/hds/stepper/list/step.d.ts +1 -1
  206. package/declarations/components/hds/stepper/nav/index.d.ts +1 -1
  207. package/declarations/components/hds/stepper/nav/panel.d.ts +1 -1
  208. package/declarations/components/hds/stepper/nav/step.d.ts +1 -1
  209. package/declarations/components/hds/stepper/step/indicator.d.ts +1 -1
  210. package/declarations/components/hds/stepper/task/indicator.d.ts +2 -2
  211. package/declarations/components/hds/stepper/types.d.ts +1 -1
  212. package/declarations/components/hds/table/index.d.ts +1 -1
  213. package/declarations/components/hds/table/td.d.ts +1 -1
  214. package/declarations/components/hds/table/th-button-sort.d.ts +1 -1
  215. package/declarations/components/hds/table/th-button-tooltip.d.ts +1 -1
  216. package/declarations/components/hds/table/th-selectable.d.ts +1 -1
  217. package/declarations/components/hds/table/th-sort.d.ts +1 -1
  218. package/declarations/components/hds/table/th.d.ts +1 -1
  219. package/declarations/components/hds/table/tr.d.ts +1 -1
  220. package/declarations/components/hds/table/types.d.ts +1 -1
  221. package/declarations/components/hds/tabs/index.d.ts +1 -1
  222. package/declarations/components/hds/tabs/panel.d.ts +1 -1
  223. package/declarations/components/hds/tabs/tab.d.ts +1 -1
  224. package/declarations/components/hds/tag/index.d.ts +1 -1
  225. package/declarations/components/hds/text/body.d.ts +1 -1
  226. package/declarations/components/hds/text/code.d.ts +1 -1
  227. package/declarations/components/hds/text/display.d.ts +1 -1
  228. package/declarations/components/hds/text/index.d.ts +1 -1
  229. package/declarations/components/hds/theme-context/index.d.ts +24 -0
  230. package/declarations/components/hds/theme-context/types.d.ts +19 -0
  231. package/declarations/components/hds/theme-switcher/index.d.ts +43 -0
  232. package/declarations/components/hds/time/index.d.ts +1 -1
  233. package/declarations/components/hds/time/range.d.ts +1 -1
  234. package/declarations/components/hds/time/single.d.ts +1 -1
  235. package/declarations/components/hds/toast/index.d.ts +1 -1
  236. package/declarations/components/hds/tooltip-button/index.d.ts +1 -1
  237. package/declarations/components/hds/yield/index.d.ts +1 -1
  238. package/declarations/components.d.ts +3 -1
  239. package/declarations/helpers/hds-t.d.ts +1 -1
  240. package/declarations/instance-initializers/load-sprite-empty.d.ts +10 -0
  241. package/declarations/modifiers/hds-advanced-table-cell/dom-management.d.ts +1 -1
  242. package/declarations/modifiers/hds-advanced-table-cell.d.ts +1 -1
  243. package/declarations/modifiers/hds-anchored-position.d.ts +1 -1
  244. package/declarations/modifiers/hds-code-editor/highlight-styles/{hds-dark-highlight-style.d.ts → hds-highlight-style.d.ts} +2 -2
  245. package/declarations/modifiers/hds-code-editor/themes/hds-theme.d.ts +6 -0
  246. package/declarations/modifiers/hds-code-editor.d.ts +1 -1
  247. package/declarations/modifiers/hds-scroll-into-view-on-focus.d.ts +1 -1
  248. package/declarations/modifiers/hds-tooltip.d.ts +1 -1
  249. package/declarations/re-exports/codemirror.d.ts +4 -0
  250. package/declarations/services/hds-icon-registry.d.ts +31 -0
  251. package/declarations/services/hds-intl.d.ts +1 -1
  252. package/declarations/services/hds-theming.d.ts +54 -0
  253. package/declarations/services.d.ts +1 -0
  254. package/declarations/template-registry.d.ts +7 -1
  255. package/declarations/utils/hds-aria-described-by.d.ts +1 -1
  256. package/declarations/utils/hds-link-to-external.d.ts +4 -0
  257. package/dist/_app_/components/hds/theme-context.js +1 -0
  258. package/dist/_app_/components/hds/theme-switcher.js +1 -0
  259. package/dist/_app_/instance-initializers/load-sprite-empty.js +1 -0
  260. package/dist/_app_/modifiers/hds-code-editor/{palettes/hds-dark-palette.js → highlight-styles/hds-highlight-style.js} +1 -1
  261. package/dist/_app_/modifiers/hds-code-editor/themes/{hds-dark-theme.js → hds-theme.js} +1 -1
  262. package/dist/_app_/services/hds-icon-registry.js +1 -0
  263. package/dist/_app_/services/hds-theming.js +1 -0
  264. package/dist/components/hds/accordion/index.js +1 -1
  265. package/dist/components/hds/accordion/index.js.map +1 -1
  266. package/dist/components/hds/accordion/item/button.js +1 -1
  267. package/dist/components/hds/accordion/item/button.js.map +1 -1
  268. package/dist/components/hds/accordion/item/index.js +1 -1
  269. package/dist/components/hds/accordion/item/index.js.map +1 -1
  270. package/dist/components/hds/advanced-table/body.js +4 -0
  271. package/dist/components/hds/advanced-table/body.js.map +1 -1
  272. package/dist/components/hds/advanced-table/column-manager/index.js +1 -1
  273. package/dist/components/hds/advanced-table/column-manager/index.js.map +1 -1
  274. package/dist/components/hds/advanced-table/column-manager/order.js +4 -0
  275. package/dist/components/hds/advanced-table/column-manager/order.js.map +1 -1
  276. package/dist/components/hds/advanced-table/column-manager/width.js +4 -0
  277. package/dist/components/hds/advanced-table/column-manager/width.js.map +1 -1
  278. package/dist/components/hds/advanced-table/index.js +1 -1
  279. package/dist/components/hds/advanced-table/td.js +1 -1
  280. package/dist/components/hds/advanced-table/td.js.map +1 -1
  281. package/dist/components/hds/advanced-table/th-button-expand.js +1 -1
  282. package/dist/components/hds/advanced-table/th-button-expand.js.map +1 -1
  283. package/dist/components/hds/advanced-table/th-button-sort.js +1 -1
  284. package/dist/components/hds/advanced-table/th-button-sort.js.map +1 -1
  285. package/dist/components/hds/advanced-table/th-button-tooltip.js +1 -1
  286. package/dist/components/hds/advanced-table/th-button-tooltip.js.map +1 -1
  287. package/dist/components/hds/advanced-table/th-context-menu.js +1 -1
  288. package/dist/components/hds/advanced-table/th-context-menu.js.map +1 -1
  289. package/dist/components/hds/advanced-table/th-reorder-drop-target.js +1 -1
  290. package/dist/components/hds/advanced-table/th-reorder-handle.js +1 -1
  291. package/dist/components/hds/advanced-table/th-reorder-handle.js.map +1 -1
  292. package/dist/components/hds/advanced-table/th-resize-handle.js +1 -1
  293. package/dist/components/hds/advanced-table/th-selectable.js +1 -1
  294. package/dist/components/hds/advanced-table/th.js +1 -1
  295. package/dist/components/hds/advanced-table/tr.js +1 -1
  296. package/dist/components/hds/advanced-table/types.js +1 -1
  297. package/dist/components/hds/advanced-table/types.js.map +1 -1
  298. package/dist/components/hds/advanced-table/utils.js +1 -1
  299. package/dist/components/hds/advanced-table/utils.js.map +1 -1
  300. package/dist/components/hds/alert/description.js +1 -1
  301. package/dist/components/hds/alert/description.js.map +1 -1
  302. package/dist/components/hds/alert/index.js +18 -3
  303. package/dist/components/hds/alert/index.js.map +1 -1
  304. package/dist/components/hds/alert/title.js +1 -1
  305. package/dist/components/hds/alert/title.js.map +1 -1
  306. package/dist/components/hds/app-footer/copyright.js +1 -1
  307. package/dist/components/hds/app-footer/copyright.js.map +1 -1
  308. package/dist/components/hds/app-footer/index.js +1 -1
  309. package/dist/components/hds/app-footer/index.js.map +1 -1
  310. package/dist/components/hds/app-footer/item.js +1 -1
  311. package/dist/components/hds/app-footer/item.js.map +1 -1
  312. package/dist/components/hds/app-footer/legal-links.js +1 -1
  313. package/dist/components/hds/app-footer/legal-links.js.map +1 -1
  314. package/dist/components/hds/app-footer/link.js +1 -1
  315. package/dist/components/hds/app-footer/link.js.map +1 -1
  316. package/dist/components/hds/app-footer/status-link.js +1 -1
  317. package/dist/components/hds/app-footer/status-link.js.map +1 -1
  318. package/dist/components/hds/app-footer/types.js +1 -1
  319. package/dist/components/hds/app-footer/types.js.map +1 -1
  320. package/dist/components/hds/app-frame/index.js +1 -1
  321. package/dist/components/hds/app-frame/index.js.map +1 -1
  322. package/dist/components/hds/app-frame/parts/footer.js +1 -1
  323. package/dist/components/hds/app-frame/parts/footer.js.map +1 -1
  324. package/dist/components/hds/app-frame/parts/header.js +1 -1
  325. package/dist/components/hds/app-frame/parts/header.js.map +1 -1
  326. package/dist/components/hds/app-frame/parts/main.js +1 -1
  327. package/dist/components/hds/app-frame/parts/main.js.map +1 -1
  328. package/dist/components/hds/app-frame/parts/modals.js +1 -1
  329. package/dist/components/hds/app-frame/parts/modals.js.map +1 -1
  330. package/dist/components/hds/app-frame/parts/sidebar.js +1 -1
  331. package/dist/components/hds/app-frame/parts/sidebar.js.map +1 -1
  332. package/dist/components/hds/app-header/home-link.js +1 -1
  333. package/dist/components/hds/app-header/home-link.js.map +1 -1
  334. package/dist/components/hds/app-header/index.js +1 -1
  335. package/dist/components/hds/app-header/index.js.map +1 -1
  336. package/dist/components/hds/app-header/menu-button.js +1 -1
  337. package/dist/components/hds/app-header/menu-button.js.map +1 -1
  338. package/dist/components/hds/app-side-nav/index.js +1 -1
  339. package/dist/components/hds/app-side-nav/index.js.map +1 -1
  340. package/dist/components/hds/app-side-nav/list/back-link.js +1 -1
  341. package/dist/components/hds/app-side-nav/list/back-link.js.map +1 -1
  342. package/dist/components/hds/app-side-nav/list/index.js +1 -1
  343. package/dist/components/hds/app-side-nav/list/index.js.map +1 -1
  344. package/dist/components/hds/app-side-nav/list/item.js +1 -1
  345. package/dist/components/hds/app-side-nav/list/item.js.map +1 -1
  346. package/dist/components/hds/app-side-nav/list/link.js +1 -1
  347. package/dist/components/hds/app-side-nav/list/link.js.map +1 -1
  348. package/dist/components/hds/app-side-nav/list/title.js +1 -1
  349. package/dist/components/hds/app-side-nav/list/title.js.map +1 -1
  350. package/dist/components/hds/app-side-nav/portal/index.js +1 -1
  351. package/dist/components/hds/app-side-nav/portal/index.js.map +1 -1
  352. package/dist/components/hds/app-side-nav/portal/target.js +1 -1
  353. package/dist/components/hds/app-side-nav/portal/target.js.map +1 -1
  354. package/dist/components/hds/app-side-nav/toggle-button.js +1 -1
  355. package/dist/components/hds/app-side-nav/toggle-button.js.map +1 -1
  356. package/dist/components/hds/application-state/body.js +1 -1
  357. package/dist/components/hds/application-state/body.js.map +1 -1
  358. package/dist/components/hds/application-state/footer.js +1 -1
  359. package/dist/components/hds/application-state/footer.js.map +1 -1
  360. package/dist/components/hds/application-state/header.js +1 -1
  361. package/dist/components/hds/application-state/header.js.map +1 -1
  362. package/dist/components/hds/application-state/index.js +1 -1
  363. package/dist/components/hds/application-state/index.js.map +1 -1
  364. package/dist/components/hds/application-state/media.js +1 -1
  365. package/dist/components/hds/application-state/media.js.map +1 -1
  366. package/dist/components/hds/badge/index.js +1 -1
  367. package/dist/components/hds/badge/index.js.map +1 -1
  368. package/dist/components/hds/badge-count/index.js +1 -1
  369. package/dist/components/hds/badge-count/index.js.map +1 -1
  370. package/dist/components/hds/breadcrumb/index.js +1 -1
  371. package/dist/components/hds/breadcrumb/index.js.map +1 -1
  372. package/dist/components/hds/breadcrumb/item.js +1 -1
  373. package/dist/components/hds/breadcrumb/item.js.map +1 -1
  374. package/dist/components/hds/breadcrumb/truncation.js +1 -1
  375. package/dist/components/hds/breadcrumb/truncation.js.map +1 -1
  376. package/dist/components/hds/button/index.js +9 -2
  377. package/dist/components/hds/button/index.js.map +1 -1
  378. package/dist/components/hds/button-set/index.js +1 -1
  379. package/dist/components/hds/button-set/index.js.map +1 -1
  380. package/dist/components/hds/card/container.js +1 -1
  381. package/dist/components/hds/card/container.js.map +1 -1
  382. package/dist/components/hds/code-block/copy-button.js +1 -1
  383. package/dist/components/hds/code-block/copy-button.js.map +1 -1
  384. package/dist/components/hds/code-block/description.js +1 -1
  385. package/dist/components/hds/code-block/description.js.map +1 -1
  386. package/dist/components/hds/code-block/index.js +1 -1
  387. package/dist/components/hds/code-block/index.js.map +1 -1
  388. package/dist/components/hds/code-block/title.js +1 -1
  389. package/dist/components/hds/code-block/title.js.map +1 -1
  390. package/dist/components/hds/code-editor/description.js +1 -1
  391. package/dist/components/hds/code-editor/description.js.map +1 -1
  392. package/dist/components/hds/code-editor/full-screen-button.js +1 -1
  393. package/dist/components/hds/code-editor/full-screen-button.js.map +1 -1
  394. package/dist/components/hds/code-editor/generic.js +1 -1
  395. package/dist/components/hds/code-editor/generic.js.map +1 -1
  396. package/dist/components/hds/code-editor/index.js +1 -1
  397. package/dist/components/hds/code-editor/index.js.map +1 -1
  398. package/dist/components/hds/code-editor/title.js +1 -1
  399. package/dist/components/hds/code-editor/title.js.map +1 -1
  400. package/dist/components/hds/composite/index.js +4 -0
  401. package/dist/components/hds/composite/index.js.map +1 -1
  402. package/dist/components/hds/composite/navigation.js +5 -0
  403. package/dist/components/hds/composite/navigation.js.map +1 -1
  404. package/dist/components/hds/copy/button/index.js +1 -1
  405. package/dist/components/hds/copy/button/index.js.map +1 -1
  406. package/dist/components/hds/copy/snippet/index.js +1 -1
  407. package/dist/components/hds/copy/snippet/index.js.map +1 -1
  408. package/dist/components/hds/dialog-primitive/body.js +1 -1
  409. package/dist/components/hds/dialog-primitive/body.js.map +1 -1
  410. package/dist/components/hds/dialog-primitive/description.js +1 -1
  411. package/dist/components/hds/dialog-primitive/description.js.map +1 -1
  412. package/dist/components/hds/dialog-primitive/footer.js +1 -1
  413. package/dist/components/hds/dialog-primitive/footer.js.map +1 -1
  414. package/dist/components/hds/dialog-primitive/header.js +2 -6
  415. package/dist/components/hds/dialog-primitive/header.js.map +1 -1
  416. package/dist/components/hds/dialog-primitive/overlay.js +1 -1
  417. package/dist/components/hds/dialog-primitive/overlay.js.map +1 -1
  418. package/dist/components/hds/dialog-primitive/wrapper.js +1 -1
  419. package/dist/components/hds/dialog-primitive/wrapper.js.map +1 -1
  420. package/dist/components/hds/disclosure-primitive/index.js +1 -1
  421. package/dist/components/hds/disclosure-primitive/index.js.map +1 -1
  422. package/dist/components/hds/dismiss-button/index.js +1 -1
  423. package/dist/components/hds/dismiss-button/index.js.map +1 -1
  424. package/dist/components/hds/dropdown/footer.js +1 -1
  425. package/dist/components/hds/dropdown/footer.js.map +1 -1
  426. package/dist/components/hds/dropdown/header.js +1 -1
  427. package/dist/components/hds/dropdown/header.js.map +1 -1
  428. package/dist/components/hds/dropdown/index.js +1 -1
  429. package/dist/components/hds/dropdown/index.js.map +1 -1
  430. package/dist/components/hds/dropdown/list-item/checkbox.js +1 -1
  431. package/dist/components/hds/dropdown/list-item/checkbox.js.map +1 -1
  432. package/dist/components/hds/dropdown/list-item/checkmark.js +1 -1
  433. package/dist/components/hds/dropdown/list-item/checkmark.js.map +1 -1
  434. package/dist/components/hds/dropdown/list-item/copy-item.js +1 -1
  435. package/dist/components/hds/dropdown/list-item/copy-item.js.map +1 -1
  436. package/dist/components/hds/dropdown/list-item/description.js +1 -1
  437. package/dist/components/hds/dropdown/list-item/description.js.map +1 -1
  438. package/dist/components/hds/dropdown/list-item/generic.js +1 -1
  439. package/dist/components/hds/dropdown/list-item/generic.js.map +1 -1
  440. package/dist/components/hds/dropdown/list-item/interactive.js +1 -1
  441. package/dist/components/hds/dropdown/list-item/interactive.js.map +1 -1
  442. package/dist/components/hds/dropdown/list-item/radio.js +1 -1
  443. package/dist/components/hds/dropdown/list-item/radio.js.map +1 -1
  444. package/dist/components/hds/dropdown/list-item/separator.js +1 -1
  445. package/dist/components/hds/dropdown/list-item/separator.js.map +1 -1
  446. package/dist/components/hds/dropdown/list-item/title.js +1 -1
  447. package/dist/components/hds/dropdown/list-item/title.js.map +1 -1
  448. package/dist/components/hds/dropdown/toggle/button.js +1 -1
  449. package/dist/components/hds/dropdown/toggle/button.js.map +1 -1
  450. package/dist/components/hds/dropdown/toggle/chevron.js +1 -1
  451. package/dist/components/hds/dropdown/toggle/chevron.js.map +1 -1
  452. package/dist/components/hds/dropdown/toggle/icon.js +1 -1
  453. package/dist/components/hds/dropdown/toggle/icon.js.map +1 -1
  454. package/dist/components/hds/filter-bar/actions-dropdown.js +1 -1
  455. package/dist/components/hds/filter-bar/actions-dropdown.js.map +1 -1
  456. package/dist/components/hds/filter-bar/applied-filters.js +1 -1
  457. package/dist/components/hds/filter-bar/applied-filters.js.map +1 -1
  458. package/dist/components/hds/filter-bar/filter-group/checkbox.js +1 -1
  459. package/dist/components/hds/filter-bar/filter-group/checkbox.js.map +1 -1
  460. package/dist/components/hds/filter-bar/filter-group/clear-button.js +1 -1
  461. package/dist/components/hds/filter-bar/filter-group/clear-button.js.map +1 -1
  462. package/dist/components/hds/filter-bar/filter-group/date.js +1 -1
  463. package/dist/components/hds/filter-bar/filter-group/date.js.map +1 -1
  464. package/dist/components/hds/filter-bar/filter-group/generic.js +1 -1
  465. package/dist/components/hds/filter-bar/filter-group/generic.js.map +1 -1
  466. package/dist/components/hds/filter-bar/filter-group/index.js +1 -1
  467. package/dist/components/hds/filter-bar/filter-group/index.js.map +1 -1
  468. package/dist/components/hds/filter-bar/filter-group/numerical.js +1 -1
  469. package/dist/components/hds/filter-bar/filter-group/numerical.js.map +1 -1
  470. package/dist/components/hds/filter-bar/filter-group/radio.js +1 -1
  471. package/dist/components/hds/filter-bar/filter-group/radio.js.map +1 -1
  472. package/dist/components/hds/filter-bar/filters-dropdown.js +1 -1
  473. package/dist/components/hds/filter-bar/filters-dropdown.js.map +1 -1
  474. package/dist/components/hds/filter-bar/index.js +1 -1
  475. package/dist/components/hds/filter-bar/index.js.map +1 -1
  476. package/dist/components/hds/filter-bar/tabs/index.js +1 -1
  477. package/dist/components/hds/filter-bar/tabs/index.js.map +1 -1
  478. package/dist/components/hds/filter-bar/tabs/panel.js +1 -1
  479. package/dist/components/hds/filter-bar/tabs/panel.js.map +1 -1
  480. package/dist/components/hds/filter-bar/tabs/tab.js +1 -1
  481. package/dist/components/hds/filter-bar/tabs/tab.js.map +1 -1
  482. package/dist/components/hds/filter-bar/types.js +1 -1
  483. package/dist/components/hds/filter-bar/types.js.map +1 -1
  484. package/dist/components/hds/flyout/index.js +1 -1
  485. package/dist/components/hds/flyout/index.js.map +1 -1
  486. package/dist/components/hds/form/character-count/index.js +1 -1
  487. package/dist/components/hds/form/character-count/index.js.map +1 -1
  488. package/dist/components/hds/form/checkbox/base.js +1 -1
  489. package/dist/components/hds/form/checkbox/base.js.map +1 -1
  490. package/dist/components/hds/form/checkbox/field.js +1 -1
  491. package/dist/components/hds/form/checkbox/field.js.map +1 -1
  492. package/dist/components/hds/form/checkbox/group.js +1 -1
  493. package/dist/components/hds/form/checkbox/group.js.map +1 -1
  494. package/dist/components/hds/form/error/index.js +1 -1
  495. package/dist/components/hds/form/error/index.js.map +1 -1
  496. package/dist/components/hds/form/error/message.js +1 -1
  497. package/dist/components/hds/form/error/message.js.map +1 -1
  498. package/dist/components/hds/form/field/index.js +1 -1
  499. package/dist/components/hds/form/field/index.js.map +1 -1
  500. package/dist/components/hds/form/fieldset/index.js +1 -1
  501. package/dist/components/hds/form/fieldset/index.js.map +1 -1
  502. package/dist/components/hds/form/file-input/base.js +1 -1
  503. package/dist/components/hds/form/file-input/base.js.map +1 -1
  504. package/dist/components/hds/form/file-input/field.js +1 -1
  505. package/dist/components/hds/form/file-input/field.js.map +1 -1
  506. package/dist/components/hds/form/footer/index.js +1 -1
  507. package/dist/components/hds/form/footer/index.js.map +1 -1
  508. package/dist/components/hds/form/header/description.js +1 -1
  509. package/dist/components/hds/form/header/description.js.map +1 -1
  510. package/dist/components/hds/form/header/index.js +1 -1
  511. package/dist/components/hds/form/header/index.js.map +1 -1
  512. package/dist/components/hds/form/header/title.js +1 -1
  513. package/dist/components/hds/form/header/title.js.map +1 -1
  514. package/dist/components/hds/form/helper-text/index.js +1 -1
  515. package/dist/components/hds/form/helper-text/index.js.map +1 -1
  516. package/dist/components/hds/form/index.js +1 -1
  517. package/dist/components/hds/form/index.js.map +1 -1
  518. package/dist/components/hds/form/indicator/index.js +1 -1
  519. package/dist/components/hds/form/indicator/index.js.map +1 -1
  520. package/dist/components/hds/form/key-value-inputs/add-row-button.js +1 -1
  521. package/dist/components/hds/form/key-value-inputs/add-row-button.js.map +1 -1
  522. package/dist/components/hds/form/key-value-inputs/delete-row-button.js +1 -1
  523. package/dist/components/hds/form/key-value-inputs/delete-row-button.js.map +1 -1
  524. package/dist/components/hds/form/key-value-inputs/field.js +1 -1
  525. package/dist/components/hds/form/key-value-inputs/field.js.map +1 -1
  526. package/dist/components/hds/form/key-value-inputs/generic.js +1 -1
  527. package/dist/components/hds/form/key-value-inputs/generic.js.map +1 -1
  528. package/dist/components/hds/form/key-value-inputs/index.js +1 -1
  529. package/dist/components/hds/form/key-value-inputs/index.js.map +1 -1
  530. package/dist/components/hds/form/label/index.js +1 -1
  531. package/dist/components/hds/form/label/index.js.map +1 -1
  532. package/dist/components/hds/form/legend/index.js +1 -1
  533. package/dist/components/hds/form/legend/index.js.map +1 -1
  534. package/dist/components/hds/form/masked-input/base.js +1 -1
  535. package/dist/components/hds/form/masked-input/base.js.map +1 -1
  536. package/dist/components/hds/form/masked-input/field.js +1 -1
  537. package/dist/components/hds/form/masked-input/field.js.map +1 -1
  538. package/dist/components/hds/form/radio/base.js +1 -1
  539. package/dist/components/hds/form/radio/base.js.map +1 -1
  540. package/dist/components/hds/form/radio/field.js +1 -1
  541. package/dist/components/hds/form/radio/field.js.map +1 -1
  542. package/dist/components/hds/form/radio/group.js +1 -1
  543. package/dist/components/hds/form/radio/group.js.map +1 -1
  544. package/dist/components/hds/form/radio-card/description.js +1 -1
  545. package/dist/components/hds/form/radio-card/description.js.map +1 -1
  546. package/dist/components/hds/form/radio-card/group.js +1 -1
  547. package/dist/components/hds/form/radio-card/group.js.map +1 -1
  548. package/dist/components/hds/form/radio-card/index.js +1 -1
  549. package/dist/components/hds/form/radio-card/index.js.map +1 -1
  550. package/dist/components/hds/form/radio-card/label.js +1 -1
  551. package/dist/components/hds/form/radio-card/label.js.map +1 -1
  552. package/dist/components/hds/form/section/header.js +1 -1
  553. package/dist/components/hds/form/section/header.js.map +1 -1
  554. package/dist/components/hds/form/section/index.js +1 -1
  555. package/dist/components/hds/form/section/index.js.map +1 -1
  556. package/dist/components/hds/form/section/multi-field-group/index.js +1 -1
  557. package/dist/components/hds/form/section/multi-field-group/index.js.map +1 -1
  558. package/dist/components/hds/form/section/multi-field-group/item.js +1 -1
  559. package/dist/components/hds/form/section/multi-field-group/item.js.map +1 -1
  560. package/dist/components/hds/form/select/base.js +1 -1
  561. package/dist/components/hds/form/select/base.js.map +1 -1
  562. package/dist/components/hds/form/select/field.js +1 -1
  563. package/dist/components/hds/form/select/field.js.map +1 -1
  564. package/dist/components/hds/form/separator/index.js +1 -1
  565. package/dist/components/hds/form/separator/index.js.map +1 -1
  566. package/dist/components/hds/form/super-select/after-options.js +1 -1
  567. package/dist/components/hds/form/super-select/after-options.js.map +1 -1
  568. package/dist/components/hds/form/super-select/multiple/base.js +1 -1
  569. package/dist/components/hds/form/super-select/multiple/base.js.map +1 -1
  570. package/dist/components/hds/form/super-select/multiple/field.js +1 -1
  571. package/dist/components/hds/form/super-select/multiple/field.js.map +1 -1
  572. package/dist/components/hds/form/super-select/option-group.js +1 -1
  573. package/dist/components/hds/form/super-select/option-group.js.map +1 -1
  574. package/dist/components/hds/form/super-select/placeholder.js +1 -1
  575. package/dist/components/hds/form/super-select/placeholder.js.map +1 -1
  576. package/dist/components/hds/form/super-select/single/base.js +1 -1
  577. package/dist/components/hds/form/super-select/single/base.js.map +1 -1
  578. package/dist/components/hds/form/super-select/single/field.js +1 -1
  579. package/dist/components/hds/form/super-select/single/field.js.map +1 -1
  580. package/dist/components/hds/form/text-input/base.js +1 -1
  581. package/dist/components/hds/form/text-input/base.js.map +1 -1
  582. package/dist/components/hds/form/text-input/field.js +1 -1
  583. package/dist/components/hds/form/text-input/field.js.map +1 -1
  584. package/dist/components/hds/form/textarea/base.js +1 -1
  585. package/dist/components/hds/form/textarea/base.js.map +1 -1
  586. package/dist/components/hds/form/textarea/field.js +1 -1
  587. package/dist/components/hds/form/textarea/field.js.map +1 -1
  588. package/dist/components/hds/form/toggle/base.js +1 -1
  589. package/dist/components/hds/form/toggle/base.js.map +1 -1
  590. package/dist/components/hds/form/toggle/field.js +1 -1
  591. package/dist/components/hds/form/toggle/field.js.map +1 -1
  592. package/dist/components/hds/form/toggle/group.js +1 -1
  593. package/dist/components/hds/form/toggle/group.js.map +1 -1
  594. package/dist/components/hds/form/visibility-toggle/index.js +1 -1
  595. package/dist/components/hds/form/visibility-toggle/index.js.map +1 -1
  596. package/dist/components/hds/icon/index.js +46 -11
  597. package/dist/components/hds/icon/index.js.map +1 -1
  598. package/dist/components/hds/icon/types.js +6 -1
  599. package/dist/components/hds/icon/types.js.map +1 -1
  600. package/dist/components/hds/icon-tile/index.js +2 -3
  601. package/dist/components/hds/icon-tile/index.js.map +1 -1
  602. package/dist/components/hds/interactive/index.js +1 -1
  603. package/dist/components/hds/interactive/index.js.map +1 -1
  604. package/dist/components/hds/layout/flex/index.js +1 -1
  605. package/dist/components/hds/layout/flex/index.js.map +1 -1
  606. package/dist/components/hds/layout/flex/item.js +1 -1
  607. package/dist/components/hds/layout/flex/item.js.map +1 -1
  608. package/dist/components/hds/layout/grid/index.js +1 -1
  609. package/dist/components/hds/layout/grid/index.js.map +1 -1
  610. package/dist/components/hds/layout/grid/item.js +1 -1
  611. package/dist/components/hds/layout/grid/item.js.map +1 -1
  612. package/dist/components/hds/link/inline.js +1 -1
  613. package/dist/components/hds/link/inline.js.map +1 -1
  614. package/dist/components/hds/link/standalone.js +1 -1
  615. package/dist/components/hds/link/standalone.js.map +1 -1
  616. package/dist/components/hds/modal/index.js +1 -1
  617. package/dist/components/hds/modal/index.js.map +1 -1
  618. package/dist/components/hds/page-header/actions.js +1 -1
  619. package/dist/components/hds/page-header/actions.js.map +1 -1
  620. package/dist/components/hds/page-header/badges.js +1 -1
  621. package/dist/components/hds/page-header/badges.js.map +1 -1
  622. package/dist/components/hds/page-header/description.js +1 -1
  623. package/dist/components/hds/page-header/description.js.map +1 -1
  624. package/dist/components/hds/page-header/index.js +1 -1
  625. package/dist/components/hds/page-header/index.js.map +1 -1
  626. package/dist/components/hds/page-header/subtitle.js +1 -1
  627. package/dist/components/hds/page-header/subtitle.js.map +1 -1
  628. package/dist/components/hds/page-header/title.js +1 -1
  629. package/dist/components/hds/page-header/title.js.map +1 -1
  630. package/dist/components/hds/pagination/compact/index.js +2 -2
  631. package/dist/components/hds/pagination/compact/index.js.map +1 -1
  632. package/dist/components/hds/pagination/info/index.js +1 -1
  633. package/dist/components/hds/pagination/info/index.js.map +1 -1
  634. package/dist/components/hds/pagination/nav/arrow.js +1 -1
  635. package/dist/components/hds/pagination/nav/arrow.js.map +1 -1
  636. package/dist/components/hds/pagination/nav/ellipsis.js +1 -1
  637. package/dist/components/hds/pagination/nav/ellipsis.js.map +1 -1
  638. package/dist/components/hds/pagination/nav/number.js +2 -2
  639. package/dist/components/hds/pagination/nav/number.js.map +1 -1
  640. package/dist/components/hds/pagination/numbered/index.js +2 -2
  641. package/dist/components/hds/pagination/numbered/index.js.map +1 -1
  642. package/dist/components/hds/pagination/size-selector/index.js +2 -2
  643. package/dist/components/hds/pagination/size-selector/index.js.map +1 -1
  644. package/dist/components/hds/pagination/types.js +1 -1
  645. package/dist/components/hds/pagination/types.js.map +1 -1
  646. package/dist/components/hds/popover-primitive/index.js +1 -1
  647. package/dist/components/hds/popover-primitive/index.js.map +1 -1
  648. package/dist/components/hds/reveal/index.js +1 -1
  649. package/dist/components/hds/reveal/index.js.map +1 -1
  650. package/dist/components/hds/reveal/toggle/button.js +1 -1
  651. package/dist/components/hds/reveal/toggle/button.js.map +1 -1
  652. package/dist/components/hds/rich-tooltip/bubble.js +1 -1
  653. package/dist/components/hds/rich-tooltip/bubble.js.map +1 -1
  654. package/dist/components/hds/rich-tooltip/index.js +1 -1
  655. package/dist/components/hds/rich-tooltip/index.js.map +1 -1
  656. package/dist/components/hds/rich-tooltip/toggle.js +1 -1
  657. package/dist/components/hds/rich-tooltip/toggle.js.map +1 -1
  658. package/dist/components/hds/segmented-group/index.js +1 -1
  659. package/dist/components/hds/segmented-group/index.js.map +1 -1
  660. package/dist/components/hds/separator/index.js +1 -1
  661. package/dist/components/hds/separator/index.js.map +1 -1
  662. package/dist/components/hds/stepper/list/index.js +1 -1
  663. package/dist/components/hds/stepper/list/index.js.map +1 -1
  664. package/dist/components/hds/stepper/list/step.js +1 -1
  665. package/dist/components/hds/stepper/list/step.js.map +1 -1
  666. package/dist/components/hds/stepper/nav/index.js +1 -1
  667. package/dist/components/hds/stepper/nav/index.js.map +1 -1
  668. package/dist/components/hds/stepper/nav/panel.js +1 -1
  669. package/dist/components/hds/stepper/nav/panel.js.map +1 -1
  670. package/dist/components/hds/stepper/nav/step.js +1 -1
  671. package/dist/components/hds/stepper/nav/step.js.map +1 -1
  672. package/dist/components/hds/stepper/step/indicator.js +1 -1
  673. package/dist/components/hds/stepper/step/indicator.js.map +1 -1
  674. package/dist/components/hds/stepper/task/indicator.js +1 -1
  675. package/dist/components/hds/stepper/task/indicator.js.map +1 -1
  676. package/dist/components/hds/stepper/types.js +1 -1
  677. package/dist/components/hds/stepper/types.js.map +1 -1
  678. package/dist/components/hds/table/index.js +1 -1
  679. package/dist/components/hds/table/index.js.map +1 -1
  680. package/dist/components/hds/table/td.js +1 -1
  681. package/dist/components/hds/table/td.js.map +1 -1
  682. package/dist/components/hds/table/th-button-sort.js +1 -1
  683. package/dist/components/hds/table/th-button-sort.js.map +1 -1
  684. package/dist/components/hds/table/th-button-tooltip.js +1 -1
  685. package/dist/components/hds/table/th-button-tooltip.js.map +1 -1
  686. package/dist/components/hds/table/th-selectable.js +1 -1
  687. package/dist/components/hds/table/th-selectable.js.map +1 -1
  688. package/dist/components/hds/table/th-sort.js +1 -1
  689. package/dist/components/hds/table/th-sort.js.map +1 -1
  690. package/dist/components/hds/table/th.js +1 -1
  691. package/dist/components/hds/table/th.js.map +1 -1
  692. package/dist/components/hds/table/tr.js +1 -1
  693. package/dist/components/hds/table/tr.js.map +1 -1
  694. package/dist/components/hds/table/types.js +1 -1
  695. package/dist/components/hds/table/types.js.map +1 -1
  696. package/dist/components/hds/tabs/index.js +1 -1
  697. package/dist/components/hds/tabs/index.js.map +1 -1
  698. package/dist/components/hds/tabs/panel.js +1 -1
  699. package/dist/components/hds/tabs/panel.js.map +1 -1
  700. package/dist/components/hds/tabs/tab.js +1 -1
  701. package/dist/components/hds/tabs/tab.js.map +1 -1
  702. package/dist/components/hds/tag/index.js +10 -1
  703. package/dist/components/hds/tag/index.js.map +1 -1
  704. package/dist/components/hds/text/body.js +1 -1
  705. package/dist/components/hds/text/body.js.map +1 -1
  706. package/dist/components/hds/text/code.js +1 -1
  707. package/dist/components/hds/text/code.js.map +1 -1
  708. package/dist/components/hds/text/display.js +1 -1
  709. package/dist/components/hds/text/display.js.map +1 -1
  710. package/dist/components/hds/text/index.js +1 -1
  711. package/dist/components/hds/text/index.js.map +1 -1
  712. package/dist/components/hds/theme-context/index.js +44 -0
  713. package/dist/components/hds/theme-context/index.js.map +1 -0
  714. package/dist/components/hds/theme-context/types.js +27 -0
  715. package/dist/components/hds/theme-context/types.js.map +1 -0
  716. package/dist/components/hds/theme-switcher/index.js +107 -0
  717. package/dist/components/hds/theme-switcher/index.js.map +1 -0
  718. package/dist/components/hds/time/index.js +1 -1
  719. package/dist/components/hds/time/index.js.map +1 -1
  720. package/dist/components/hds/time/range.js +1 -1
  721. package/dist/components/hds/time/range.js.map +1 -1
  722. package/dist/components/hds/time/single.js +1 -1
  723. package/dist/components/hds/time/single.js.map +1 -1
  724. package/dist/components/hds/toast/index.js +1 -1
  725. package/dist/components/hds/toast/index.js.map +1 -1
  726. package/dist/components/hds/tooltip-button/index.js +1 -1
  727. package/dist/components/hds/tooltip-button/index.js.map +1 -1
  728. package/dist/components/hds/yield/index.js +1 -1
  729. package/dist/components/hds/yield/index.js.map +1 -1
  730. package/dist/components.js +4 -2
  731. package/dist/components.js.map +1 -1
  732. package/dist/helpers/hds-t.js +1 -1
  733. package/dist/helpers/hds-t.js.map +1 -1
  734. package/dist/{index-B9OqWZ9U.js → index-DtMB-P9m.js} +7 -7
  735. package/dist/{index-B9OqWZ9U.js.map → index-DtMB-P9m.js.map} +1 -1
  736. package/dist/instance-initializers/load-sprite-empty.js +45 -0
  737. package/dist/instance-initializers/load-sprite-empty.js.map +1 -0
  738. package/dist/modifiers/hds-advanced-table-cell/dom-management.js +1 -1
  739. package/dist/modifiers/hds-advanced-table-cell/dom-management.js.map +1 -1
  740. package/dist/modifiers/hds-advanced-table-cell.js +1 -1
  741. package/dist/modifiers/hds-advanced-table-cell.js.map +1 -1
  742. package/dist/modifiers/hds-code-editor/highlight-styles/hds-highlight-style.js +107 -0
  743. package/dist/modifiers/hds-code-editor/highlight-styles/hds-highlight-style.js.map +1 -0
  744. package/dist/modifiers/hds-code-editor/themes/{hds-dark-theme.js → hds-theme.js} +41 -40
  745. package/dist/modifiers/hds-code-editor/themes/hds-theme.js.map +1 -0
  746. package/dist/modifiers/hds-code-editor.js +4 -4
  747. package/dist/modifiers/hds-code-editor.js.map +1 -1
  748. package/dist/modifiers/hds-scroll-into-view-on-focus.js +1 -1
  749. package/dist/modifiers/hds-scroll-into-view-on-focus.js.map +1 -1
  750. package/dist/modifiers/hds-tooltip.js +2 -5
  751. package/dist/modifiers/hds-tooltip.js.map +1 -1
  752. package/dist/public/assets/fonts/LICENSE.txt +93 -0
  753. package/dist/public/assets/fonts/complete/woff2/IBMPlexMono-Italic.woff2 +0 -0
  754. package/dist/public/assets/fonts/complete/woff2/IBMPlexMono-Regular.woff2 +0 -0
  755. package/dist/public/assets/fonts/complete/woff2/IBMPlexMono-SemiBold.woff2 +0 -0
  756. package/dist/public/assets/fonts/complete/woff2/IBMPlexMono-SemiBoldItalic.woff2 +0 -0
  757. package/dist/public/assets/fonts/complete/woff2/IBMPlexSans-Italic.woff2 +0 -0
  758. package/dist/public/assets/fonts/complete/woff2/IBMPlexSans-Regular.woff2 +0 -0
  759. package/dist/public/assets/fonts/complete/woff2/IBMPlexSans-SemiBold.woff2 +0 -0
  760. package/dist/public/assets/fonts/complete/woff2/IBMPlexSans-SemiBoldItalic.woff2 +0 -0
  761. package/dist/public/assets/fonts/split/woff2/IBMPlexMono-Italic-Cyrillic.woff2 +0 -0
  762. package/dist/public/assets/fonts/split/woff2/IBMPlexMono-Italic-Latin1.woff2 +0 -0
  763. package/dist/public/assets/fonts/split/woff2/IBMPlexMono-Italic-Latin2.woff2 +0 -0
  764. package/dist/public/assets/fonts/split/woff2/IBMPlexMono-Italic-Latin3.woff2 +0 -0
  765. package/dist/public/assets/fonts/split/woff2/IBMPlexMono-Italic-Pi.woff2 +0 -0
  766. package/dist/public/assets/fonts/split/woff2/IBMPlexMono-Regular-Cyrillic.woff2 +0 -0
  767. package/dist/public/assets/fonts/split/woff2/IBMPlexMono-Regular-Latin1.woff2 +0 -0
  768. package/dist/public/assets/fonts/split/woff2/IBMPlexMono-Regular-Latin2.woff2 +0 -0
  769. package/dist/public/assets/fonts/split/woff2/IBMPlexMono-Regular-Latin3.woff2 +0 -0
  770. package/dist/public/assets/fonts/split/woff2/IBMPlexMono-Regular-Pi.woff2 +0 -0
  771. package/dist/public/assets/fonts/split/woff2/IBMPlexMono-SemiBold-Cyrillic.woff2 +0 -0
  772. package/dist/public/assets/fonts/split/woff2/IBMPlexMono-SemiBold-Latin1.woff2 +0 -0
  773. package/dist/public/assets/fonts/split/woff2/IBMPlexMono-SemiBold-Latin2.woff2 +0 -0
  774. package/dist/public/assets/fonts/split/woff2/IBMPlexMono-SemiBold-Latin3.woff2 +0 -0
  775. package/dist/public/assets/fonts/split/woff2/IBMPlexMono-SemiBold-Pi.woff2 +0 -0
  776. package/dist/public/assets/fonts/split/woff2/IBMPlexMono-SemiBoldItalic-Cyrillic.woff2 +0 -0
  777. package/dist/public/assets/fonts/split/woff2/IBMPlexMono-SemiBoldItalic-Latin1.woff2 +0 -0
  778. package/dist/public/assets/fonts/split/woff2/IBMPlexMono-SemiBoldItalic-Latin2.woff2 +0 -0
  779. package/dist/public/assets/fonts/split/woff2/IBMPlexMono-SemiBoldItalic-Latin3.woff2 +0 -0
  780. package/dist/public/assets/fonts/split/woff2/IBMPlexMono-SemiBoldItalic-Pi.woff2 +0 -0
  781. package/dist/public/assets/fonts/split/woff2/IBMPlexSans-Italic-Cyrillic.woff2 +0 -0
  782. package/dist/public/assets/fonts/split/woff2/IBMPlexSans-Italic-Greek.woff2 +0 -0
  783. package/dist/public/assets/fonts/split/woff2/IBMPlexSans-Italic-Latin1.woff2 +0 -0
  784. package/dist/public/assets/fonts/split/woff2/IBMPlexSans-Italic-Latin2.woff2 +0 -0
  785. package/dist/public/assets/fonts/split/woff2/IBMPlexSans-Italic-Latin3.woff2 +0 -0
  786. package/dist/public/assets/fonts/split/woff2/IBMPlexSans-Italic-Pi.woff2 +0 -0
  787. package/dist/public/assets/fonts/split/woff2/IBMPlexSans-Regular-Cyrillic.woff2 +0 -0
  788. package/dist/public/assets/fonts/split/woff2/IBMPlexSans-Regular-Greek.woff2 +0 -0
  789. package/dist/public/assets/fonts/split/woff2/IBMPlexSans-Regular-Latin1.woff2 +0 -0
  790. package/dist/public/assets/fonts/split/woff2/IBMPlexSans-Regular-Latin2.woff2 +0 -0
  791. package/dist/public/assets/fonts/split/woff2/IBMPlexSans-Regular-Latin3.woff2 +0 -0
  792. package/dist/public/assets/fonts/split/woff2/IBMPlexSans-Regular-Pi.woff2 +0 -0
  793. package/dist/public/assets/fonts/split/woff2/IBMPlexSans-SemiBold-Cyrillic.woff2 +0 -0
  794. package/dist/public/assets/fonts/split/woff2/IBMPlexSans-SemiBold-Greek.woff2 +0 -0
  795. package/dist/public/assets/fonts/split/woff2/IBMPlexSans-SemiBold-Latin1.woff2 +0 -0
  796. package/dist/public/assets/fonts/split/woff2/IBMPlexSans-SemiBold-Latin2.woff2 +0 -0
  797. package/dist/public/assets/fonts/split/woff2/IBMPlexSans-SemiBold-Latin3.woff2 +0 -0
  798. package/dist/public/assets/fonts/split/woff2/IBMPlexSans-SemiBold-Pi.woff2 +0 -0
  799. package/dist/public/assets/fonts/split/woff2/IBMPlexSans-SemiBoldItalic-Cyrillic.woff2 +0 -0
  800. package/dist/public/assets/fonts/split/woff2/IBMPlexSans-SemiBoldItalic-Greek.woff2 +0 -0
  801. package/dist/public/assets/fonts/split/woff2/IBMPlexSans-SemiBoldItalic-Latin1.woff2 +0 -0
  802. package/dist/public/assets/fonts/split/woff2/IBMPlexSans-SemiBoldItalic-Latin2.woff2 +0 -0
  803. package/dist/public/assets/fonts/split/woff2/IBMPlexSans-SemiBoldItalic-Latin3.woff2 +0 -0
  804. package/dist/public/assets/fonts/split/woff2/IBMPlexSans-SemiBoldItalic-Pi.woff2 +0 -0
  805. package/dist/services/hds-icon-registry.js +436 -0
  806. package/dist/services/hds-icon-registry.js.map +1 -0
  807. package/dist/services/hds-intl.js +1 -1
  808. package/dist/services/hds-intl.js.map +1 -1
  809. package/dist/services/hds-theming.js +150 -0
  810. package/dist/services/hds-theming.js.map +1 -0
  811. package/dist/services.js +1 -1
  812. package/dist/styles/@hashicorp/design-system-components-common.css +10170 -0
  813. package/dist/styles/@hashicorp/design-system-components-common.css.map +1 -0
  814. package/dist/styles/@hashicorp/design-system-components-common.scss +1 -1
  815. package/dist/styles/@hashicorp/design-system-components.css +2083 -896
  816. package/dist/styles/@hashicorp/design-system-components.css.map +1 -1
  817. package/dist/styles/@hashicorp/design-system-components.scss +1 -1
  818. package/dist/styles/@hashicorp/design-system-ember-a11y-refocus.scss +5 -0
  819. package/dist/styles/@hashicorp/design-system-plex-fonts.css +362 -0
  820. package/dist/styles/@hashicorp/design-system-plex-fonts.css.map +1 -0
  821. package/dist/styles/@hashicorp/design-system-plex-fonts.scss +62 -0
  822. package/dist/styles/@hashicorp/design-system-power-select-overrides.css +3 -3
  823. package/dist/styles/@hashicorp/design-system-power-select-overrides.scss +3 -3
  824. package/dist/styles/components/advanced-table.scss +1 -1
  825. package/dist/styles/components/alert.scss +73 -94
  826. package/dist/styles/components/app-footer.scss +6 -4
  827. package/dist/styles/components/app-header.scss +134 -15
  828. package/dist/styles/components/app-side-nav/content.scss +30 -15
  829. package/dist/styles/components/app-side-nav/main.scss +2 -2
  830. package/dist/styles/components/app-side-nav/toggle-button.scss +17 -9
  831. package/dist/styles/components/app-side-nav/vars.scss +1 -1
  832. package/dist/styles/components/badge-count.scss +27 -76
  833. package/dist/styles/components/badge.scss +32 -131
  834. package/dist/styles/components/breadcrumb.scss +108 -21
  835. package/dist/styles/components/button.scss +5 -0
  836. package/dist/styles/components/card/container.scss +10 -5
  837. package/dist/styles/components/code-block/index.scss +54 -33
  838. package/dist/styles/components/code-block/theme.scss +44 -90
  839. package/dist/styles/components/code-editor/index.scss +43 -23
  840. package/dist/styles/components/copy/button.scss +17 -3
  841. package/dist/styles/components/copy/snippet.scss +17 -0
  842. package/dist/styles/components/dialog-primitive.scss +50 -10
  843. package/dist/styles/components/dismiss-button.scss +19 -14
  844. package/dist/styles/components/dropdown.scss +145 -43
  845. package/dist/styles/components/filter-bar.scss +1 -1
  846. package/dist/styles/components/flyout.scss +2 -5
  847. package/dist/styles/components/form/file-input.scss +2 -2
  848. package/dist/styles/components/form/key-value-inputs.scss +2 -4
  849. package/dist/styles/components/form/radio-card.scss +1 -1
  850. package/dist/styles/components/form/select.scss +1 -1
  851. package/dist/styles/components/form/super-select.scss +6 -6
  852. package/dist/styles/components/form/text-input.scss +2 -2
  853. package/dist/styles/components/form/textarea.scss +2 -2
  854. package/dist/styles/components/icon-tile.scss +18 -11
  855. package/dist/styles/components/index.scss +2 -1
  856. package/dist/styles/components/layout/grid.scss +1 -1
  857. package/dist/styles/components/link/inline.scss +10 -4
  858. package/dist/styles/components/link/standalone.scss +17 -80
  859. package/dist/styles/components/modal.scss +14 -10
  860. package/dist/styles/components/pagination.scss +104 -8
  861. package/dist/styles/components/reveal.scss +28 -0
  862. package/dist/styles/components/rich-tooltip.scss +53 -22
  863. package/dist/styles/components/tabs.scss +45 -8
  864. package/dist/styles/components/tag.scss +96 -34
  865. package/dist/styles/components/theme-context.scss +12 -0
  866. package/dist/styles/components/tooltip.scss +56 -26
  867. package/dist/styles/mixins/_button.scss +84 -130
  868. package/dist/styles/mixins/_carbonization.scss +43 -0
  869. package/dist/styles/mixins/_focus-ring.scss +2 -2
  870. package/dist/utils/hds-aria-described-by.js +1 -1
  871. package/dist/utils/hds-aria-described-by.js.map +1 -1
  872. package/dist/utils/hds-link-to-external.js +5 -0
  873. package/dist/utils/hds-link-to-external.js.map +1 -1
  874. package/package.json +67 -6
  875. package/declarations/modifiers/hds-code-editor/palettes/hds-dark-palette.d.ts +0 -21
  876. package/declarations/modifiers/hds-code-editor/themes/hds-dark-theme.d.ts +0 -6
  877. package/dist/_app_/modifiers/hds-code-editor/highlight-styles/hds-dark-highlight-style.js +0 -1
  878. package/dist/modifiers/hds-code-editor/highlight-styles/hds-dark-highlight-style.js +0 -108
  879. package/dist/modifiers/hds-code-editor/highlight-styles/hds-dark-highlight-style.js.map +0 -1
  880. package/dist/modifiers/hds-code-editor/palettes/hds-dark-palette.js +0 -25
  881. package/dist/modifiers/hds-code-editor/palettes/hds-dark-palette.js.map +0 -1
  882. package/dist/modifiers/hds-code-editor/themes/hds-dark-theme.js.map +0 -1
  883. package/dist/styles/components/code-editor/theme.scss +0 -23
  884. package/dist/styles/mixins/_interactive-dark-theme.scss +0 -109
@@ -1 +1 @@
1
- {"version":3,"file":"td.js","sources":["../../../../src/components/hds/advanced-table/td.gts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2025\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { assert } from '@ember/debug';\nimport { action } from '@ember/object';\nimport { tracked } from '@glimmer/tracking';\nimport { focusable, type FocusableElement } from 'tabbable';\nimport style from 'ember-style-modifier';\nimport hdsAdvancedTableCell from '../../../modifiers/hds-advanced-table-cell.ts';\n// @ts-expect-error: missing types https://github.com/josemarluedke/ember-focus-trap/issues/86\nimport focusTrap from 'ember-focus-trap/modifiers/focus-trap';\nimport { hash } from '@ember/helper';\n\nimport type { HdsAdvancedTableHorizontalAlignment } from './types.ts';\nimport { HdsAdvancedTableHorizontalAlignmentValues } from './types.ts';\nimport hdsScrollIntoViewOnFocus from '../../../modifiers/hds-scroll-into-view-on-focus.ts';\nimport { onFocusTrapDeactivate } from '../../../modifiers/hds-advanced-table-cell/dom-management.ts';\n\nimport type { HdsCompositeSignature } from '../composite/index.gts';\n\nexport const ALIGNMENTS: HdsAdvancedTableHorizontalAlignment[] = Object.values(\n HdsAdvancedTableHorizontalAlignmentValues\n);\nexport const DEFAULT_ALIGN = HdsAdvancedTableHorizontalAlignmentValues.Left;\n\nexport interface HdsAdvancedTableTdSignature {\n Args: {\n align?: HdsAdvancedTableHorizontalAlignment;\n rowspan?: number;\n colspan?: number;\n compositeItem?: HdsCompositeSignature['Blocks']['default'][0]['item'];\n isCompositeItemDisabled?: boolean;\n };\n Blocks: {\n default?: [];\n };\n Element: HTMLDivElement;\n}\n\nexport default class HdsAdvancedTableTd extends Component<HdsAdvancedTableTdSignature> {\n @tracked private _shouldTrapFocus = false;\n private _element!: HTMLDivElement;\n\n // rowspan and colspan have to return 'auto' if not defined because otherwise the style modifier sets grid-area: undefined on the cell, which breaks the grid styles\n get rowspan(): string {\n if (this.args.rowspan) {\n return `span ${this.args.rowspan}`;\n }\n return 'auto';\n }\n\n get colspan(): string | undefined {\n if (this.args.colspan) {\n return `span ${this.args.colspan}`;\n }\n return 'auto';\n }\n\n get align(): HdsAdvancedTableHorizontalAlignment {\n const { align = DEFAULT_ALIGN } = this.args;\n\n assert(\n `@align for \"Hds::AdvancedTable::Td\" must be one of the following: ${ALIGNMENTS.join(\n ', '\n )}; received: ${align}`,\n ALIGNMENTS.includes(align)\n );\n return align;\n }\n\n get classNames(): string {\n const classes = ['hds-advanced-table__td'];\n\n // add a class based on the @align argument\n if (this.align) {\n classes.push(`hds-advanced-table__td--align-${this.align}`);\n }\n\n return classes.join(' ');\n }\n\n @action onFocusTrapDeactivate(): void {\n this._shouldTrapFocus = false;\n onFocusTrapDeactivate(this._element);\n }\n\n @action enableFocusTrap(): void {\n this._shouldTrapFocus = true;\n }\n\n @action getInitialFocus(): FocusableElement | undefined {\n const cellFocusableElements = focusable(this._element);\n return cellFocusableElements[0];\n }\n\n @action setElement(element: HTMLDivElement): void {\n this._element = element;\n }\n\n <template>\n <div\n class={{this.classNames}}\n role=\"gridcell\"\n aria-rowspan={{@rowspan}}\n aria-colspan={{@colspan}}\n {{style grid-row=this.rowspan grid-column=this.colspan}}\n {{hdsAdvancedTableCell\n handleEnableFocusTrap=this.enableFocusTrap\n shouldTrapFocus=this._shouldTrapFocus\n setCellElement=this.setElement\n }}\n {{focusTrap\n isActive=this._shouldTrapFocus\n focusTrapOptions=(hash\n onDeactivate=this.onFocusTrapDeactivate\n initialFocus=this.getInitialFocus\n clickOutsideDeactivates=true\n )\n }}\n {{@compositeItem disabled=@isCompositeItemDisabled}}\n {{hdsScrollIntoViewOnFocus options=(hash block=\"center\" inline=\"center\")}}\n ...attributes\n >\n {{yield}}\n </div>\n </template>\n}\n"],"names":["ALIGNMENTS","Object","values","HdsAdvancedTableHorizontalAlignmentValues","DEFAULT_ALIGN","Left","HdsAdvancedTableTd","Component","g","prototype","tracked","i","_element","rowspan","args","colspan","align","assert","join","includes","classNames","classes","push","onFocusTrapDeactivate","_shouldTrapFocus","n","action","enableFocusTrap","getInitialFocus","cellFocusableElements","focusable","setElement","element","setComponentTemplate","precompileTemplate","strictMode","scope","style","hdsAdvancedTableCell","focusTrap","hash","hdsScrollIntoViewOnFocus"],"mappings":"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"}
1
+ {"version":3,"file":"td.js","sources":["../../../../src/components/hds/advanced-table/td.gts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2026\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { assert } from '@ember/debug';\nimport { action } from '@ember/object';\nimport { tracked } from '@glimmer/tracking';\nimport { focusable, type FocusableElement } from 'tabbable';\nimport style from 'ember-style-modifier';\nimport hdsAdvancedTableCell from '../../../modifiers/hds-advanced-table-cell.ts';\n// @ts-expect-error: missing types https://github.com/josemarluedke/ember-focus-trap/issues/86\nimport focusTrap from 'ember-focus-trap/modifiers/focus-trap';\nimport { hash } from '@ember/helper';\n\nimport type { HdsAdvancedTableHorizontalAlignment } from './types.ts';\nimport { HdsAdvancedTableHorizontalAlignmentValues } from './types.ts';\nimport hdsScrollIntoViewOnFocus from '../../../modifiers/hds-scroll-into-view-on-focus.ts';\nimport { onFocusTrapDeactivate } from '../../../modifiers/hds-advanced-table-cell/dom-management.ts';\n\nimport type { HdsCompositeSignature } from '../composite/index.gts';\n\nexport const ALIGNMENTS: HdsAdvancedTableHorizontalAlignment[] = Object.values(\n HdsAdvancedTableHorizontalAlignmentValues\n);\nexport const DEFAULT_ALIGN = HdsAdvancedTableHorizontalAlignmentValues.Left;\n\nexport interface HdsAdvancedTableTdSignature {\n Args: {\n align?: HdsAdvancedTableHorizontalAlignment;\n rowspan?: number;\n colspan?: number;\n compositeItem?: HdsCompositeSignature['Blocks']['default'][0]['item'];\n isCompositeItemDisabled?: boolean;\n };\n Blocks: {\n default?: [];\n };\n Element: HTMLDivElement;\n}\n\nexport default class HdsAdvancedTableTd extends Component<HdsAdvancedTableTdSignature> {\n @tracked private _shouldTrapFocus = false;\n private _element!: HTMLDivElement;\n\n // rowspan and colspan have to return 'auto' if not defined because otherwise the style modifier sets grid-area: undefined on the cell, which breaks the grid styles\n get rowspan(): string {\n if (this.args.rowspan) {\n return `span ${this.args.rowspan}`;\n }\n return 'auto';\n }\n\n get colspan(): string | undefined {\n if (this.args.colspan) {\n return `span ${this.args.colspan}`;\n }\n return 'auto';\n }\n\n get align(): HdsAdvancedTableHorizontalAlignment {\n const { align = DEFAULT_ALIGN } = this.args;\n\n assert(\n `@align for \"Hds::AdvancedTable::Td\" must be one of the following: ${ALIGNMENTS.join(\n ', '\n )}; received: ${align}`,\n ALIGNMENTS.includes(align)\n );\n return align;\n }\n\n get classNames(): string {\n const classes = ['hds-advanced-table__td'];\n\n // add a class based on the @align argument\n if (this.align) {\n classes.push(`hds-advanced-table__td--align-${this.align}`);\n }\n\n return classes.join(' ');\n }\n\n @action onFocusTrapDeactivate(): void {\n this._shouldTrapFocus = false;\n onFocusTrapDeactivate(this._element);\n }\n\n @action enableFocusTrap(): void {\n this._shouldTrapFocus = true;\n }\n\n @action getInitialFocus(): FocusableElement | undefined {\n const cellFocusableElements = focusable(this._element);\n return cellFocusableElements[0];\n }\n\n @action setElement(element: HTMLDivElement): void {\n this._element = element;\n }\n\n <template>\n <div\n class={{this.classNames}}\n role=\"gridcell\"\n aria-rowspan={{@rowspan}}\n aria-colspan={{@colspan}}\n {{style grid-row=this.rowspan grid-column=this.colspan}}\n {{hdsAdvancedTableCell\n handleEnableFocusTrap=this.enableFocusTrap\n shouldTrapFocus=this._shouldTrapFocus\n setCellElement=this.setElement\n }}\n {{focusTrap\n isActive=this._shouldTrapFocus\n focusTrapOptions=(hash\n onDeactivate=this.onFocusTrapDeactivate\n initialFocus=this.getInitialFocus\n clickOutsideDeactivates=true\n )\n }}\n {{@compositeItem disabled=@isCompositeItemDisabled}}\n {{hdsScrollIntoViewOnFocus options=(hash block=\"center\" inline=\"center\")}}\n ...attributes\n >\n {{yield}}\n </div>\n </template>\n}\n"],"names":["ALIGNMENTS","Object","values","HdsAdvancedTableHorizontalAlignmentValues","DEFAULT_ALIGN","Left","HdsAdvancedTableTd","Component","g","prototype","tracked","i","_element","rowspan","args","colspan","align","assert","join","includes","classNames","classes","push","onFocusTrapDeactivate","_shouldTrapFocus","n","action","enableFocusTrap","getInitialFocus","cellFocusableElements","focusable","setElement","element","setComponentTemplate","precompileTemplate","strictMode","scope","style","hdsAdvancedTableCell","focusTrap","hash","hdsScrollIntoViewOnFocus"],"mappings":"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"}
@@ -10,7 +10,7 @@ import { setComponentTemplate } from '@ember/component';
10
10
  import { n } from 'decorator-transforms/runtime';
11
11
 
12
12
  /**
13
- * Copyright IBM Corp. 2021, 2025
13
+ * Copyright IBM Corp. 2021, 2026
14
14
  * SPDX-License-Identifier: MPL-2.0
15
15
  */
16
16
  class HdsAdvancedTableThButtonExpand extends Component {
@@ -1 +1 @@
1
- {"version":3,"file":"th-button-expand.js","sources":["../../../../src/components/hds/advanced-table/th-button-expand.gts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2025\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { guidFor } from '@ember/object/internals';\nimport { action } from '@ember/object';\nimport { on } from '@ember/modifier';\n\nimport {\n HdsAdvancedTableThExpandIconValues,\n type HdsAdvancedTableExpandState,\n} from './types.ts';\nimport HdsIcon from '../icon/index.gts';\nimport hdsT from '../../../helpers/hds-t.ts';\n\nimport type { HdsAdvancedTableThSortExpandIcons } from './types.ts';\n\nexport interface HdsAdvancedTableThButtonExpandSignature {\n Args: {\n labelId?: string;\n isExpanded?: HdsAdvancedTableExpandState;\n onToggle?: () => void;\n isExpandAll?: boolean;\n };\n Element: HTMLButtonElement;\n}\n\nexport default class HdsAdvancedTableThButtonExpand extends Component<HdsAdvancedTableThButtonExpandSignature> {\n // Generates a unique ID for the (hidden) \"label prefix\" <span> element\n private _prefixLabelId = 'prefix-' + guidFor(this);\n\n get isExpanded(): HdsAdvancedTableExpandState {\n const { isExpanded = false } = this.args;\n\n return isExpanded;\n }\n\n get icon(): HdsAdvancedTableThSortExpandIcons {\n if (this.isExpanded === true) {\n return this.args.isExpandAll\n ? HdsAdvancedTableThExpandIconValues.UnfoldClose\n : HdsAdvancedTableThExpandIconValues.ChevronUp;\n } else {\n return this.args.isExpandAll\n ? HdsAdvancedTableThExpandIconValues.UnfoldOpen\n : HdsAdvancedTableThExpandIconValues.ChevronDown;\n }\n }\n\n @action onClick() {\n this.args.onToggle?.();\n }\n\n get classNames(): string {\n const classes = [\n 'hds-advanced-table__th-button',\n 'hds-advanced-table__th-button--expand',\n ];\n\n // add a class based on the isExpanded state\n if (this.args.isExpanded === true) {\n classes.push(`hds-advanced-table__th-button--is-expanded`);\n }\n\n return classes.join(' ');\n }\n\n <template>\n {{! template-lint-disable no-unsupported-role-attributes }}\n {{! ember template lint doesnt support ARIA 1.3 yet, including aria-description - https://github.com/A11yance/aria-query/pull/557 }}\n <button\n type=\"button\"\n class={{this.classNames}}\n {{on \"click\" this.onClick}}\n aria-labelledby=\"{{this._prefixLabelId}} {{@labelId}}\"\n aria-expanded=\"{{this.isExpanded}}\"\n aria-description={{hdsT\n \"hds.components.advanced-table.th-button-expand.aria-description\"\n default=\"Toggle the visibility of the related rows.\"\n }}\n ...attributes\n >\n {{! template-lint-enable no-unsupported-role-attributes}}\n <span\n id={{this._prefixLabelId}}\n class=\"hds-advanced-table__th-button-aria-label-hidden-segment\"\n >\n {{hdsT \"hds.components.common.toggle\" default=\"Toggle\"}}\n </span>\n <HdsIcon @name={{this.icon}} />\n </button>\n </template>\n}\n"],"names":["HdsAdvancedTableThButtonExpand","Component","_prefixLabelId","guidFor","isExpanded","args","icon","isExpandAll","HdsAdvancedTableThExpandIconValues","UnfoldClose","ChevronUp","UnfoldOpen","ChevronDown","onClick","onToggle","n","prototype","action","classNames","classes","push","join","setComponentTemplate","precompileTemplate","strictMode","scope","hdsT","on","HdsIcon"],"mappings":";;;;;;;;;;;AAAA;;;AAGC;AA0Bc,MAAMA,uCAAuCC,SAAA,CAAU;AACpE;AACQC,EAAAA,cAAA,GAAiB,SAAA,GAAYC,OAAA,CAAQ,IAAI,CAAA;EAEjD,IAAIC,aAA0C;IAC5C,MAAM;AAAEA,MAAAA,UAAA,GAAa;KAAO,GAAG,IAAI,CAACC,IAAI;AAExC,IAAA,OAAOD,UAAA;AACT,EAAA;EAEA,IAAIE,OAA0C;AAC5C,IAAA,IAAI,IAAI,CAACF,UAAU,KAAK,IAAA,EAAM;AAC5B,MAAA,OAAO,IAAI,CAACC,IAAI,CAACE,WAAW,GACxBC,kCAAA,CAAmCC,WAAW,GAC9CD,kCAAA,CAAmCE,SAAS;AAClD,IAAA,CAAA,MAAO;AACL,MAAA,OAAO,IAAI,CAACL,IAAI,CAACE,WAAW,GACxBC,kCAAA,CAAmCG,UAAU,GAC7CH,kCAAA,CAAmCI,WAAW;AACpD,IAAA;AACF,EAAA;AAEQC,EAAAA,OAAAA,GAAU;AAChB,IAAA,IAAI,CAACR,IAAI,CAACS,QAAQ,IAAA;AACpB,EAAA;AAAA,EAAA;IAAAC,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,SAAA,EAAA,CAFCC,MAAA,CAAA,CAAA;AAAA;EAID,IAAIC,UAAAA,GAAqB;AACvB,IAAA,MAAMC,OAAA,GAAU,CACd,+BAAA,EACA,uCAAA,CACD;AAED;AACA,IAAA,IAAI,IAAI,CAACd,IAAI,CAACD,UAAU,KAAK,IAAA,EAAM;AACjCe,MAAAA,OAAA,CAAQC,IAAI,CAAC,CAAA,0CAAA,CAA4C,CAAA;AAC3D,IAAA;AAEA,IAAA,OAAOD,OAAA,CAAQE,IAAI,CAAC,GAAA,CAAA;AACtB,EAAA;AAEA,EAAA;IAAAC,oBAAA,CAAAC,kBAAA,CAAA,k0BAAA,EAwBA;MAAAC,UAAA,EAAA,IAAA;AAAAC,MAAAA,KAAA,EAAAA,OAAA;cAAAC,UAAA;QAAAC,EAAA;AAAAC,QAAAA;AAAA,OAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;;;"}
1
+ {"version":3,"file":"th-button-expand.js","sources":["../../../../src/components/hds/advanced-table/th-button-expand.gts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2026\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { guidFor } from '@ember/object/internals';\nimport { action } from '@ember/object';\nimport { on } from '@ember/modifier';\n\nimport {\n HdsAdvancedTableThExpandIconValues,\n type HdsAdvancedTableExpandState,\n} from './types.ts';\nimport HdsIcon from '../icon/index.gts';\nimport hdsT from '../../../helpers/hds-t.ts';\n\nimport type { HdsAdvancedTableThSortExpandIcons } from './types.ts';\n\nexport interface HdsAdvancedTableThButtonExpandSignature {\n Args: {\n labelId?: string;\n isExpanded?: HdsAdvancedTableExpandState;\n onToggle?: () => void;\n isExpandAll?: boolean;\n };\n Element: HTMLButtonElement;\n}\n\nexport default class HdsAdvancedTableThButtonExpand extends Component<HdsAdvancedTableThButtonExpandSignature> {\n // Generates a unique ID for the (hidden) \"label prefix\" <span> element\n private _prefixLabelId = 'prefix-' + guidFor(this);\n\n get isExpanded(): HdsAdvancedTableExpandState {\n const { isExpanded = false } = this.args;\n\n return isExpanded;\n }\n\n get icon(): HdsAdvancedTableThSortExpandIcons {\n if (this.isExpanded === true) {\n return this.args.isExpandAll\n ? HdsAdvancedTableThExpandIconValues.UnfoldClose\n : HdsAdvancedTableThExpandIconValues.ChevronUp;\n } else {\n return this.args.isExpandAll\n ? HdsAdvancedTableThExpandIconValues.UnfoldOpen\n : HdsAdvancedTableThExpandIconValues.ChevronDown;\n }\n }\n\n @action onClick() {\n this.args.onToggle?.();\n }\n\n get classNames(): string {\n const classes = [\n 'hds-advanced-table__th-button',\n 'hds-advanced-table__th-button--expand',\n ];\n\n // add a class based on the isExpanded state\n if (this.args.isExpanded === true) {\n classes.push(`hds-advanced-table__th-button--is-expanded`);\n }\n\n return classes.join(' ');\n }\n\n <template>\n {{! template-lint-disable no-unsupported-role-attributes }}\n {{! ember template lint doesnt support ARIA 1.3 yet, including aria-description - https://github.com/A11yance/aria-query/pull/557 }}\n <button\n type=\"button\"\n class={{this.classNames}}\n {{on \"click\" this.onClick}}\n aria-labelledby=\"{{this._prefixLabelId}} {{@labelId}}\"\n aria-expanded=\"{{this.isExpanded}}\"\n aria-description={{hdsT\n \"hds.components.advanced-table.th-button-expand.aria-description\"\n default=\"Toggle the visibility of the related rows.\"\n }}\n ...attributes\n >\n {{! template-lint-enable no-unsupported-role-attributes}}\n <span\n id={{this._prefixLabelId}}\n class=\"hds-advanced-table__th-button-aria-label-hidden-segment\"\n >\n {{hdsT \"hds.components.common.toggle\" default=\"Toggle\"}}\n </span>\n <HdsIcon @name={{this.icon}} />\n </button>\n </template>\n}\n"],"names":["HdsAdvancedTableThButtonExpand","Component","_prefixLabelId","guidFor","isExpanded","args","icon","isExpandAll","HdsAdvancedTableThExpandIconValues","UnfoldClose","ChevronUp","UnfoldOpen","ChevronDown","onClick","onToggle","n","prototype","action","classNames","classes","push","join","setComponentTemplate","precompileTemplate","strictMode","scope","hdsT","on","HdsIcon"],"mappings":";;;;;;;;;;;AAAA;;;AAGC;AA0Bc,MAAMA,uCAAuCC,SAAA,CAAU;AACpE;AACQC,EAAAA,cAAA,GAAiB,SAAA,GAAYC,OAAA,CAAQ,IAAI,CAAA;EAEjD,IAAIC,aAA0C;IAC5C,MAAM;AAAEA,MAAAA,UAAA,GAAa;KAAO,GAAG,IAAI,CAACC,IAAI;AAExC,IAAA,OAAOD,UAAA;AACT,EAAA;EAEA,IAAIE,OAA0C;AAC5C,IAAA,IAAI,IAAI,CAACF,UAAU,KAAK,IAAA,EAAM;AAC5B,MAAA,OAAO,IAAI,CAACC,IAAI,CAACE,WAAW,GACxBC,kCAAA,CAAmCC,WAAW,GAC9CD,kCAAA,CAAmCE,SAAS;AAClD,IAAA,CAAA,MAAO;AACL,MAAA,OAAO,IAAI,CAACL,IAAI,CAACE,WAAW,GACxBC,kCAAA,CAAmCG,UAAU,GAC7CH,kCAAA,CAAmCI,WAAW;AACpD,IAAA;AACF,EAAA;AAEQC,EAAAA,OAAAA,GAAU;AAChB,IAAA,IAAI,CAACR,IAAI,CAACS,QAAQ,IAAA;AACpB,EAAA;AAAA,EAAA;IAAAC,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,SAAA,EAAA,CAFCC,MAAA,CAAA,CAAA;AAAA;EAID,IAAIC,UAAAA,GAAqB;AACvB,IAAA,MAAMC,OAAA,GAAU,CACd,+BAAA,EACA,uCAAA,CACD;AAED;AACA,IAAA,IAAI,IAAI,CAACd,IAAI,CAACD,UAAU,KAAK,IAAA,EAAM;AACjCe,MAAAA,OAAA,CAAQC,IAAI,CAAC,CAAA,0CAAA,CAA4C,CAAA;AAC3D,IAAA;AAEA,IAAA,OAAOD,OAAA,CAAQE,IAAI,CAAC,GAAA,CAAA;AACtB,EAAA;AAEA,EAAA;IAAAC,oBAAA,CAAAC,kBAAA,CAAA,k0BAAA,EAwBA;MAAAC,UAAA,EAAA,IAAA;AAAAC,MAAAA,KAAA,EAAAA,OAAA;cAAAC,UAAA;QAAAC,EAAA;AAAAC,QAAAA;AAAA,OAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;;;"}
@@ -8,7 +8,7 @@ import { precompileTemplate } from '@ember/template-compilation';
8
8
  import { setComponentTemplate } from '@ember/component';
9
9
 
10
10
  /**
11
- * Copyright IBM Corp. 2021, 2025
11
+ * Copyright IBM Corp. 2021, 2026
12
12
  * SPDX-License-Identifier: MPL-2.0
13
13
  */
14
14
  const NOOP = () => {};
@@ -1 +1 @@
1
- {"version":3,"file":"th-button-sort.js","sources":["../../../../src/components/hds/advanced-table/th-button-sort.gts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2025\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { guidFor } from '@ember/object/internals';\nimport { on } from '@ember/modifier';\n\nimport {\n HdsAdvancedTableThSortOrderIconValues,\n HdsAdvancedTableThSortOrderLabelValues,\n HdsAdvancedTableThSortOrderValues,\n} from './types.ts';\nimport HdsIcon from '../icon/index.gts';\nimport hdsT from '../../../helpers/hds-t.ts';\n\nimport type {\n HdsAdvancedTableThSortOrder,\n HdsAdvancedTableThSortOrderIcons,\n HdsAdvancedTableThSortOrderLabels,\n} from './types.ts';\n\nexport interface HdsAdvancedTableThButtonSortSignature {\n Args: {\n labelId?: string;\n onClick?: () => void;\n sortOrder?: HdsAdvancedTableThSortOrder;\n };\n Element: HTMLButtonElement;\n}\n\nconst NOOP = () => {};\n\nexport default class HdsAdvancedTableThButtonSort extends Component<HdsAdvancedTableThButtonSortSignature> {\n // Generates a unique ID for the (hidden) \"label prefix/suffix\" <span> elements\n private _prefixLabelId = 'prefix-' + guidFor(this);\n private _suffixLabelId = 'suffix-' + guidFor(this);\n\n get icon(): HdsAdvancedTableThSortOrderIcons {\n switch (this.args.sortOrder) {\n case HdsAdvancedTableThSortOrderValues.Asc:\n return HdsAdvancedTableThSortOrderIconValues.ArrowUp;\n case HdsAdvancedTableThSortOrderValues.Desc:\n return HdsAdvancedTableThSortOrderIconValues.ArrowDown;\n default:\n return HdsAdvancedTableThSortOrderIconValues.SwapVertical;\n }\n }\n\n // Determines the label (suffix) to use in the `aria-labelledby` attribute of the button,\n // used to indicate what will happen if the user clicks on the button\n get sortOrderLabel(): HdsAdvancedTableThSortOrderLabels {\n return this.args.sortOrder === HdsAdvancedTableThSortOrderValues.Asc\n ? HdsAdvancedTableThSortOrderLabelValues.Desc\n : HdsAdvancedTableThSortOrderLabelValues.Asc;\n }\n\n get onClick(): () => void {\n const { onClick } = this.args;\n\n if (typeof onClick === 'function') {\n return onClick;\n } else {\n return NOOP;\n }\n }\n\n get classNames(): string {\n const classes = [\n 'hds-advanced-table__th-button',\n 'hds-advanced-table__th-button--sort',\n ];\n\n // add a class based on the @sortOrder argument\n if (\n this.args.sortOrder === HdsAdvancedTableThSortOrderValues.Asc ||\n this.args.sortOrder === HdsAdvancedTableThSortOrderValues.Desc\n ) {\n classes.push(`hds-advanced-table__th-button--is-sorted`);\n }\n\n return classes.join(' ');\n }\n\n <template>\n <button\n type=\"button\"\n class={{this.classNames}}\n {{on \"click\" this.onClick}}\n aria-labelledby=\"{{this._prefixLabelId}} {{@labelId}} {{this._suffixLabelId}}\"\n ...attributes\n >\n <span\n id={{this._prefixLabelId}}\n class=\"hds-advanced-table__th-button-aria-label-hidden-segment\"\n >\n {{hdsT \"hds.components.common.sort-by\" default=\"Sort by\"}}\n </span>\n <span\n id={{this._suffixLabelId}}\n class=\"hds-advanced-table__th-button-aria-label-hidden-segment\"\n >{{this.sortOrderLabel}}</span>\n <HdsIcon @name={{this.icon}} />\n </button>\n </template>\n}\n"],"names":["NOOP","HdsAdvancedTableThButtonSort","Component","_prefixLabelId","guidFor","_suffixLabelId","icon","args","sortOrder","HdsAdvancedTableThSortOrderValues","Asc","HdsAdvancedTableThSortOrderIconValues","ArrowUp","Desc","ArrowDown","SwapVertical","sortOrderLabel","HdsAdvancedTableThSortOrderLabelValues","onClick","classNames","classes","push","join","setComponentTemplate","precompileTemplate","strictMode","scope","on","hdsT","HdsIcon"],"mappings":";;;;;;;;;AAAA;;;AAGC;AA6BD,MAAMA,OAAOA,MAAA,CAAO,CAAA;AAEL,MAAMC,qCAAqCC,SAAA,CAAU;AAClE;AACQC,EAAAA,cAAA,GAAiB,SAAA,GAAYC,OAAA,CAAQ,IAAI,CAAA;AACzCC,EAAAA,cAAA,GAAiB,SAAA,GAAYD,OAAA,CAAQ,IAAI,CAAA;EAEjD,IAAIE,OAAyC;AAC3C,IAAA,QAAQ,IAAI,CAACC,IAAI,CAACC,SAAS;MACzB,KAAKC,kCAAkCC,GAAG;QACxC,OAAOC,sCAAsCC,OAAO;MACtD,KAAKH,kCAAkCI,IAAI;QACzC,OAAOF,sCAAsCG,SAAS;AACxD,MAAA;QACE,OAAOH,sCAAsCI,YAAY;AAC7D;AACF,EAAA;AAEA;AACA;EACA,IAAIC,iBAAoD;AACtD,IAAA,OAAO,IAAI,CAACT,IAAI,CAACC,SAAS,KAAKC,iCAAA,CAAkCC,GAAG,GAChEO,sCAAA,CAAuCJ,IAAI,GAC3CI,uCAAuCP,GAAG;AAChD,EAAA;EAEA,IAAIQ,OAAAA,GAAsB;IACxB,MAAM;AAAEA,MAAAA;KAAS,GAAG,IAAI,CAACX,IAAI;AAE7B,IAAA,IAAI,OAAOW,YAAY,UAAA,EAAY;AACjC,MAAA,OAAOA,OAAA;AACT,IAAA,CAAA,MAAO;AACL,MAAA,OAAOlB,IAAA;AACT,IAAA;AACF,EAAA;EAEA,IAAImB,UAAAA,GAAqB;AACvB,IAAA,MAAMC,OAAA,GAAU,CACd,+BAAA,EACA,qCAAA,CACD;AAED;AACA,IAAA,IACE,IAAI,CAACb,IAAI,CAACC,SAAS,KAAKC,iCAAA,CAAkCC,GAAG,IAC7D,IAAI,CAACH,IAAI,CAACC,SAAS,KAAKC,iCAAA,CAAkCI,IAAI,EAC9D;AACAO,MAAAA,OAAA,CAAQC,IAAI,CAAC,CAAA,wCAAA,CAA0C,CAAA;AACzD,IAAA;AAEA,IAAA,OAAOD,OAAA,CAAQE,IAAI,CAAC,GAAA,CAAA;AACtB,EAAA;AAEA,EAAA;IAAAC,oBAAA,CAAAC,kBAAA,CAAA,0hBAAA,EAoBA;MAAAC,UAAA,EAAA,IAAA;AAAAC,MAAAA,KAAA,EAAAA,OAAA;QAAAC,EAAA;cAAAC,UAAA;AAAAC,QAAAA;AAAA,OAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;;;"}
1
+ {"version":3,"file":"th-button-sort.js","sources":["../../../../src/components/hds/advanced-table/th-button-sort.gts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2026\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { guidFor } from '@ember/object/internals';\nimport { on } from '@ember/modifier';\n\nimport {\n HdsAdvancedTableThSortOrderIconValues,\n HdsAdvancedTableThSortOrderLabelValues,\n HdsAdvancedTableThSortOrderValues,\n} from './types.ts';\nimport HdsIcon from '../icon/index.gts';\nimport hdsT from '../../../helpers/hds-t.ts';\n\nimport type {\n HdsAdvancedTableThSortOrder,\n HdsAdvancedTableThSortOrderIcons,\n HdsAdvancedTableThSortOrderLabels,\n} from './types.ts';\n\nexport interface HdsAdvancedTableThButtonSortSignature {\n Args: {\n labelId?: string;\n onClick?: () => void;\n sortOrder?: HdsAdvancedTableThSortOrder;\n };\n Element: HTMLButtonElement;\n}\n\nconst NOOP = () => {};\n\nexport default class HdsAdvancedTableThButtonSort extends Component<HdsAdvancedTableThButtonSortSignature> {\n // Generates a unique ID for the (hidden) \"label prefix/suffix\" <span> elements\n private _prefixLabelId = 'prefix-' + guidFor(this);\n private _suffixLabelId = 'suffix-' + guidFor(this);\n\n get icon(): HdsAdvancedTableThSortOrderIcons {\n switch (this.args.sortOrder) {\n case HdsAdvancedTableThSortOrderValues.Asc:\n return HdsAdvancedTableThSortOrderIconValues.ArrowUp;\n case HdsAdvancedTableThSortOrderValues.Desc:\n return HdsAdvancedTableThSortOrderIconValues.ArrowDown;\n default:\n return HdsAdvancedTableThSortOrderIconValues.SwapVertical;\n }\n }\n\n // Determines the label (suffix) to use in the `aria-labelledby` attribute of the button,\n // used to indicate what will happen if the user clicks on the button\n get sortOrderLabel(): HdsAdvancedTableThSortOrderLabels {\n return this.args.sortOrder === HdsAdvancedTableThSortOrderValues.Asc\n ? HdsAdvancedTableThSortOrderLabelValues.Desc\n : HdsAdvancedTableThSortOrderLabelValues.Asc;\n }\n\n get onClick(): () => void {\n const { onClick } = this.args;\n\n if (typeof onClick === 'function') {\n return onClick;\n } else {\n return NOOP;\n }\n }\n\n get classNames(): string {\n const classes = [\n 'hds-advanced-table__th-button',\n 'hds-advanced-table__th-button--sort',\n ];\n\n // add a class based on the @sortOrder argument\n if (\n this.args.sortOrder === HdsAdvancedTableThSortOrderValues.Asc ||\n this.args.sortOrder === HdsAdvancedTableThSortOrderValues.Desc\n ) {\n classes.push(`hds-advanced-table__th-button--is-sorted`);\n }\n\n return classes.join(' ');\n }\n\n <template>\n <button\n type=\"button\"\n class={{this.classNames}}\n {{on \"click\" this.onClick}}\n aria-labelledby=\"{{this._prefixLabelId}} {{@labelId}} {{this._suffixLabelId}}\"\n ...attributes\n >\n <span\n id={{this._prefixLabelId}}\n class=\"hds-advanced-table__th-button-aria-label-hidden-segment\"\n >\n {{hdsT \"hds.components.common.sort-by\" default=\"Sort by\"}}\n </span>\n <span\n id={{this._suffixLabelId}}\n class=\"hds-advanced-table__th-button-aria-label-hidden-segment\"\n >{{this.sortOrderLabel}}</span>\n <HdsIcon @name={{this.icon}} />\n </button>\n </template>\n}\n"],"names":["NOOP","HdsAdvancedTableThButtonSort","Component","_prefixLabelId","guidFor","_suffixLabelId","icon","args","sortOrder","HdsAdvancedTableThSortOrderValues","Asc","HdsAdvancedTableThSortOrderIconValues","ArrowUp","Desc","ArrowDown","SwapVertical","sortOrderLabel","HdsAdvancedTableThSortOrderLabelValues","onClick","classNames","classes","push","join","setComponentTemplate","precompileTemplate","strictMode","scope","on","hdsT","HdsIcon"],"mappings":";;;;;;;;;AAAA;;;AAGC;AA6BD,MAAMA,OAAOA,MAAA,CAAO,CAAA;AAEL,MAAMC,qCAAqCC,SAAA,CAAU;AAClE;AACQC,EAAAA,cAAA,GAAiB,SAAA,GAAYC,OAAA,CAAQ,IAAI,CAAA;AACzCC,EAAAA,cAAA,GAAiB,SAAA,GAAYD,OAAA,CAAQ,IAAI,CAAA;EAEjD,IAAIE,OAAyC;AAC3C,IAAA,QAAQ,IAAI,CAACC,IAAI,CAACC,SAAS;MACzB,KAAKC,kCAAkCC,GAAG;QACxC,OAAOC,sCAAsCC,OAAO;MACtD,KAAKH,kCAAkCI,IAAI;QACzC,OAAOF,sCAAsCG,SAAS;AACxD,MAAA;QACE,OAAOH,sCAAsCI,YAAY;AAC7D;AACF,EAAA;AAEA;AACA;EACA,IAAIC,iBAAoD;AACtD,IAAA,OAAO,IAAI,CAACT,IAAI,CAACC,SAAS,KAAKC,iCAAA,CAAkCC,GAAG,GAChEO,sCAAA,CAAuCJ,IAAI,GAC3CI,uCAAuCP,GAAG;AAChD,EAAA;EAEA,IAAIQ,OAAAA,GAAsB;IACxB,MAAM;AAAEA,MAAAA;KAAS,GAAG,IAAI,CAACX,IAAI;AAE7B,IAAA,IAAI,OAAOW,YAAY,UAAA,EAAY;AACjC,MAAA,OAAOA,OAAA;AACT,IAAA,CAAA,MAAO;AACL,MAAA,OAAOlB,IAAA;AACT,IAAA;AACF,EAAA;EAEA,IAAImB,UAAAA,GAAqB;AACvB,IAAA,MAAMC,OAAA,GAAU,CACd,+BAAA,EACA,qCAAA,CACD;AAED;AACA,IAAA,IACE,IAAI,CAACb,IAAI,CAACC,SAAS,KAAKC,iCAAA,CAAkCC,GAAG,IAC7D,IAAI,CAACH,IAAI,CAACC,SAAS,KAAKC,iCAAA,CAAkCI,IAAI,EAC9D;AACAO,MAAAA,OAAA,CAAQC,IAAI,CAAC,CAAA,wCAAA,CAA0C,CAAA;AACzD,IAAA;AAEA,IAAA,OAAOD,OAAA,CAAQE,IAAI,CAAC,GAAA,CAAA;AACtB,EAAA;AAEA,EAAA;IAAAC,oBAAA,CAAAC,kBAAA,CAAA,0hBAAA,EAoBA;MAAAC,UAAA,EAAA,IAAA;AAAAC,MAAAA,KAAA,EAAAA,OAAA;QAAAC,EAAA;cAAAC,UAAA;AAAAC,QAAAA;AAAA,OAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;;;"}
@@ -9,7 +9,7 @@ import { precompileTemplate } from '@ember/template-compilation';
9
9
  import { setComponentTemplate } from '@ember/component';
10
10
 
11
11
  /**
12
- * Copyright IBM Corp. 2021, 2025
12
+ * Copyright IBM Corp. 2021, 2026
13
13
  * SPDX-License-Identifier: MPL-2.0
14
14
  */
15
15
  class HdsAdvancedTableThButtonTooltip extends Component {
@@ -1 +1 @@
1
- {"version":3,"file":"th-button-tooltip.js","sources":["../../../../src/components/hds/advanced-table/th-button-tooltip.gts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2025\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { assert } from '@ember/debug';\nimport { guidFor } from '@ember/object/internals';\nimport { hash } from '@ember/helper';\n\nimport HdsIcon from '../icon/index.gts';\nimport hdsTooltip from '../../../modifiers/hds-tooltip.ts';\nimport hdsT from '../../../helpers/hds-t.ts';\n\nexport interface HdsAdvancedTableThButtonTooltipSignature {\n Args: {\n labelId?: string;\n tooltip: string;\n };\n Element: HTMLButtonElement;\n}\n\nexport default class HdsAdvancedTableThButtonTooltip extends Component<HdsAdvancedTableThButtonTooltipSignature> {\n // Generates a unique ID for the (hidden) \"label prefix\" <span> element\n private _prefixLabelId = guidFor(this);\n\n get tooltip(): string {\n assert(\n `@tooltip for \"HdsAdvancedTableThButtonTooltip\" must be a string`,\n typeof this.args.tooltip === 'string'\n );\n return this.args.tooltip;\n }\n\n get classNames(): string {\n const classes = [\n 'hds-advanced-table__th-button',\n 'hds-advanced-table__th-button--tooltip',\n ];\n\n return classes.join(' ');\n }\n\n <template>\n <button\n type=\"button\"\n class={{this.classNames}}\n {{hdsTooltip this.tooltip options=(hash placement=\"bottom\")}}\n aria-labelledby=\"{{this._prefixLabelId}} {{@labelId}}\"\n ...attributes\n >\n <span\n id={{this._prefixLabelId}}\n class=\"hds-advanced-table__th-button-aria-label-hidden-segment\"\n >\n {{hdsT\n \"hds.components.common.tooltip-prefix\"\n default=\"More information for\"\n }}\n </span>\n <HdsIcon @name=\"info\" />\n </button>\n </template>\n}\n"],"names":["HdsAdvancedTableThButtonTooltip","Component","_prefixLabelId","guidFor","tooltip","assert","args","classNames","classes","join","setComponentTemplate","precompileTemplate","strictMode","scope","hdsTooltip","hash","hdsT","HdsIcon"],"mappings":";;;;;;;;;;AAAA;;;AAGC;AAmBc,MAAMA,wCAAwCC,SAAA,CAAU;AACrE;AACQC,EAAAA,cAAA,GAAiBC,OAAA,CAAQ,IAAI,CAAA;EAErC,IAAIC,OAAAA,GAAkB;IACpBC,MAAA,CACE,CAAA,+DAAA,CAAiE,EACjE,OAAO,IAAI,CAACC,IAAI,CAACF,OAAO,KAAK,QAAA,CAAA;AAE/B,IAAA,OAAO,IAAI,CAACE,IAAI,CAACF,OAAO;AAC1B,EAAA;EAEA,IAAIG,UAAAA,GAAqB;AACvB,IAAA,MAAMC,OAAA,GAAU,CACd,+BAAA,EACA,wCAAA,CACD;AAED,IAAA,OAAOA,OAAA,CAAQC,IAAI,CAAC,GAAA,CAAA;AACtB,EAAA;AAEA,EAAA;IAAAC,oBAAA,CAAAC,kBAAA,CAAA,8aAAA,EAmBA;MAAAC,UAAA,EAAA,IAAA;AAAAC,MAAAA,KAAA,EAAAA,OAAA;oBAAAC,kBAAA;QAAAC,IAAA;cAAAC,UAAA;AAAAC,QAAAA;AAAA,OAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;;;"}
1
+ {"version":3,"file":"th-button-tooltip.js","sources":["../../../../src/components/hds/advanced-table/th-button-tooltip.gts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2026\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { assert } from '@ember/debug';\nimport { guidFor } from '@ember/object/internals';\nimport { hash } from '@ember/helper';\n\nimport HdsIcon from '../icon/index.gts';\nimport hdsTooltip from '../../../modifiers/hds-tooltip.ts';\nimport hdsT from '../../../helpers/hds-t.ts';\n\nexport interface HdsAdvancedTableThButtonTooltipSignature {\n Args: {\n labelId?: string;\n tooltip: string;\n };\n Element: HTMLButtonElement;\n}\n\nexport default class HdsAdvancedTableThButtonTooltip extends Component<HdsAdvancedTableThButtonTooltipSignature> {\n // Generates a unique ID for the (hidden) \"label prefix\" <span> element\n private _prefixLabelId = guidFor(this);\n\n get tooltip(): string {\n assert(\n `@tooltip for \"HdsAdvancedTableThButtonTooltip\" must be a string`,\n typeof this.args.tooltip === 'string'\n );\n return this.args.tooltip;\n }\n\n get classNames(): string {\n const classes = [\n 'hds-advanced-table__th-button',\n 'hds-advanced-table__th-button--tooltip',\n ];\n\n return classes.join(' ');\n }\n\n <template>\n <button\n type=\"button\"\n class={{this.classNames}}\n {{hdsTooltip this.tooltip options=(hash placement=\"bottom\")}}\n aria-labelledby=\"{{this._prefixLabelId}} {{@labelId}}\"\n ...attributes\n >\n <span\n id={{this._prefixLabelId}}\n class=\"hds-advanced-table__th-button-aria-label-hidden-segment\"\n >\n {{hdsT\n \"hds.components.common.tooltip-prefix\"\n default=\"More information for\"\n }}\n </span>\n <HdsIcon @name=\"info\" />\n </button>\n </template>\n}\n"],"names":["HdsAdvancedTableThButtonTooltip","Component","_prefixLabelId","guidFor","tooltip","assert","args","classNames","classes","join","setComponentTemplate","precompileTemplate","strictMode","scope","hdsTooltip","hash","hdsT","HdsIcon"],"mappings":";;;;;;;;;;AAAA;;;AAGC;AAmBc,MAAMA,wCAAwCC,SAAA,CAAU;AACrE;AACQC,EAAAA,cAAA,GAAiBC,OAAA,CAAQ,IAAI,CAAA;EAErC,IAAIC,OAAAA,GAAkB;IACpBC,MAAA,CACE,CAAA,+DAAA,CAAiE,EACjE,OAAO,IAAI,CAACC,IAAI,CAACF,OAAO,KAAK,QAAA,CAAA;AAE/B,IAAA,OAAO,IAAI,CAACE,IAAI,CAACF,OAAO;AAC1B,EAAA;EAEA,IAAIG,UAAAA,GAAqB;AACvB,IAAA,MAAMC,OAAA,GAAU,CACd,+BAAA,EACA,wCAAA,CACD;AAED,IAAA,OAAOA,OAAA,CAAQC,IAAI,CAAC,GAAA,CAAA;AACtB,EAAA;AAEA,EAAA;IAAAC,oBAAA,CAAAC,kBAAA,CAAA,8aAAA,EAmBA;MAAAC,UAAA,EAAA,IAAA;AAAAC,MAAAA,KAAA,EAAAA,OAAA;oBAAAC,kBAAA;QAAAC,IAAA;cAAAC,UAAA;AAAAC,QAAAA;AAAA,OAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;;;"}
@@ -13,7 +13,7 @@ import { setComponentTemplate } from '@ember/component';
13
13
  import { g, i } from 'decorator-transforms/runtime';
14
14
 
15
15
  /**
16
- * Copyright IBM Corp. 2021, 2025
16
+ * Copyright IBM Corp. 2021, 2026
17
17
  * SPDX-License-Identifier: MPL-2.0
18
18
  */
19
19
  class HdsAdvancedTableThContextMenu extends Component {
@@ -1 +1 @@
1
- {"version":3,"file":"th-context-menu.js","sources":["../../../../src/components/hds/advanced-table/th-context-menu.gts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2025\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { service } from '@ember/service';\nimport { tracked } from '@glimmer/tracking';\nimport { scheduleOnce } from '@ember/runloop';\nimport { modifier } from 'ember-modifier';\nimport { concat, fn } from '@ember/helper';\nimport { gt, eq } from 'ember-truth-helpers';\nimport { on } from '@ember/modifier';\n\nimport HdsDropdown from '../dropdown/index.gts';\nimport hdsT from '../../../helpers/hds-t.ts';\n\nimport type { HdsDropdownSignature } from '../dropdown/index.gts';\nimport type { HdsDropdownToggleIconSignature } from '../dropdown/toggle/icon.gts';\nimport type { HdsAdvancedTableSignature } from './index.gts';\nimport type { HdsAdvancedTableThReorderHandleSignature } from './th-reorder-handle.gts';\nimport type { HdsAdvancedTableThResizeHandleSignature } from './th-resize-handle.gts';\nimport type { HdsDropdownToggleButtonSignature } from '../dropdown/toggle/button.gts';\nimport type HdsIntlService from '../../../services/hds-intl.ts';\nimport type { HdsAdvancedTableNormalizedColumn } from './types.ts';\n\ninterface HdsAdvancedTableThContextMenuOption {\n key: string;\n icon?: HdsDropdownToggleIconSignature['Args']['icon'];\n label?: string;\n action?: (dropdownCloseCallback: () => void) => void;\n}\n\nexport interface HdsAdvancedTableThContextMenuSignature {\n Args: {\n column: HdsAdvancedTableNormalizedColumn;\n isFirstColumn: boolean;\n isFirstNonStickyColumn: boolean;\n isLastColumn: boolean;\n hasResizableColumns?: boolean;\n hasReorderableColumns?: boolean;\n isStickyColumn?: boolean;\n reorderHandleElement?: HdsAdvancedTableThReorderHandleSignature['Element'];\n resizeHandleElement?: HdsAdvancedTableThResizeHandleSignature['Element'];\n onColumnResize?: HdsAdvancedTableSignature['Args']['onColumnResize'];\n onFocusReorderHandle?: () => void;\n onMoveColumnToTerminalPosition?: (\n columnKey: HdsAdvancedTableNormalizedColumn['key'],\n position: 'start' | 'end'\n ) => void;\n onPinFirstColumn?: () => void;\n onRestoreColumnWidth?: (\n columnKey: HdsAdvancedTableNormalizedColumn['key']\n ) => void;\n };\n Element: HdsDropdownSignature['Element'];\n}\n\nexport default class HdsAdvancedTableThContextMenu extends Component<HdsAdvancedTableThContextMenuSignature> {\n @service declare readonly hdsIntl: HdsIntlService;\n\n @tracked private _toggleElement:\n | HdsDropdownToggleButtonSignature['Element']\n | null = null;\n\n get _resizeOptions(): HdsAdvancedTableThContextMenuOption[] {\n const { isLastColumn } = this.args;\n\n const translatedResetWidthLabel = this.hdsIntl.t(\n 'hds.advanced-table.th-context-menu.reset-width',\n { default: 'Reset column width' }\n );\n\n let resizeOptions: HdsAdvancedTableThContextMenuOption[] = [\n {\n key: 'reset-column-width',\n label: translatedResetWidthLabel,\n icon: 'rotate-ccw',\n action: this._resetColumnWidth.bind(this),\n },\n ];\n\n if (!isLastColumn) {\n const translatedResizeLabel = this.hdsIntl.t(\n 'hds.advanced-table.th-context-menu.resize',\n { default: 'Resize column' }\n );\n\n resizeOptions = [\n {\n key: 'resize-column',\n label: translatedResizeLabel,\n icon: 'resize-column',\n action: this._resizeColumn.bind(this),\n },\n ...resizeOptions,\n ];\n }\n\n return resizeOptions;\n }\n\n get _reorderOptions(): HdsAdvancedTableThContextMenuOption[] {\n const { isFirstNonStickyColumn, isLastColumn } = this.args;\n\n const translatedMoveColumnLabel = this.hdsIntl.t(\n 'hds.advanced-table.th-context-menu.move-column',\n { default: 'Move column' }\n );\n\n let reorderOptions: HdsAdvancedTableThContextMenuOption[] = [\n {\n key: 'reorder-column',\n label: translatedMoveColumnLabel,\n icon: 'move-horizontal',\n action: () => this._moveColumn(),\n },\n ];\n\n if (!isFirstNonStickyColumn) {\n const translatedMoveColumnToStartLabel = this.hdsIntl.t(\n 'hds.advanced-table.th-context-menu.move-column-to-start',\n { default: 'Move column to start' }\n );\n reorderOptions = [\n ...reorderOptions,\n {\n key: 'move-column-to-start',\n label: translatedMoveColumnToStartLabel,\n icon: 'start',\n action: (close) => this._moveColumnToPosition('start', close),\n },\n ];\n }\n\n if (!isLastColumn) {\n const translatedMoveColumnToEndLabel = this.hdsIntl.t(\n 'hds.advanced-table.th-context-menu.move-column-to-end',\n { default: 'Move column to end' }\n );\n reorderOptions = [\n ...reorderOptions,\n {\n key: 'move-column-to-end',\n label: translatedMoveColumnToEndLabel,\n icon: 'end',\n action: (close) => this._moveColumnToPosition('end', close),\n },\n ];\n }\n\n return reorderOptions;\n }\n\n get _stickyColumnOptions(): HdsAdvancedTableThContextMenuOption[] {\n const { isStickyColumn } = this.args;\n\n const translatedPinLabel = this.hdsIntl.t(\n 'hds.advanced-table.th-context-menu.pin',\n { default: 'Pin column' }\n );\n const translatedUnpinLabel = this.hdsIntl.t(\n 'hds.advanced-table.th-context-menu.unpin',\n { default: 'Unpin column' }\n );\n\n return [\n {\n key: 'pin-first-column',\n label: isStickyColumn ? translatedUnpinLabel : translatedPinLabel,\n icon: isStickyColumn ? 'pin-off' : 'pin',\n action: this._pinFirstColumn.bind(this),\n },\n ];\n }\n\n get _options(): HdsAdvancedTableThContextMenuOption[] {\n const {\n hasReorderableColumns,\n hasResizableColumns,\n isFirstColumn,\n isStickyColumn,\n } = this.args;\n\n let allGroups: HdsAdvancedTableThContextMenuOption[][] = [];\n\n if (hasResizableColumns) {\n allGroups = [...allGroups, this._resizeOptions];\n }\n\n if (hasReorderableColumns && isStickyColumn !== true) {\n allGroups = [...allGroups, this._reorderOptions];\n }\n\n if (isFirstColumn && isStickyColumn !== undefined) {\n allGroups = [...allGroups, this._stickyColumnOptions];\n }\n\n return allGroups.reduce<HdsAdvancedTableThContextMenuOption[]>(\n (options, group, index) => {\n // Add a separator before each group except the first\n if (index > 0) {\n return [...options, { key: 'separator' }, ...group];\n }\n return [...options, ...group];\n },\n []\n );\n }\n\n private _registerDropdownToggleElement = modifier(\n (element: HdsDropdownToggleButtonSignature['Element']) => {\n this._toggleElement = element;\n }\n );\n\n private _resizeColumn() {\n this.args.resizeHandleElement?.focus();\n }\n\n private _resetColumnWidth(dropdownCloseCallback: () => void): void {\n const { column, onColumnResize, onRestoreColumnWidth } = this.args;\n\n if (\n typeof onRestoreColumnWidth === 'function' &&\n column.key !== undefined\n ) {\n onRestoreColumnWidth(column.key);\n\n if (typeof onColumnResize === 'function') {\n onColumnResize(column.key, column.width);\n }\n\n dropdownCloseCallback();\n }\n }\n\n private _moveColumn() {\n const { onFocusReorderHandle } = this.args;\n\n if (typeof onFocusReorderHandle === 'function') {\n // eslint-disable-next-line ember/no-runloop\n scheduleOnce('afterRender', this, onFocusReorderHandle);\n }\n }\n\n private _moveColumnToPosition(\n position: 'start' | 'end',\n dropdownCloseCallback?: () => void\n ): void {\n const { column, onMoveColumnToTerminalPosition } = this.args;\n\n onMoveColumnToTerminalPosition?.(column.key, position);\n\n requestAnimationFrame(() => {\n dropdownCloseCallback?.();\n\n this._toggleElement?.focus();\n });\n }\n\n private _pinFirstColumn(dropdownCloseCallback: () => void): void {\n const { onPinFirstColumn } = this.args;\n\n if (typeof onPinFirstColumn === 'function') {\n onPinFirstColumn();\n }\n\n dropdownCloseCallback();\n }\n\n <template>\n {{#if (gt this._options.length 0)}}\n <HdsDropdown\n class=\"hds-advanced-table__th-context-menu\"\n @enableCollisionDetection={{true}}\n ...attributes\n as |D|\n >\n <D.ToggleIcon\n @icon=\"more-vertical\"\n @text={{hdsT\n \"hds.components.advanced-table.th-context-menu.actions\"\n columnLabel=@column.label\n default=(concat \"Additional actions for \" @column.label)\n }}\n @hasChevron={{false}}\n @size=\"small\"\n {{this._registerDropdownToggleElement}}\n />\n\n {{#each this._options as |option|}}\n {{#if (eq option.key \"separator\")}}\n <D.Separator />\n {{else if option.action}}\n <D.Interactive\n @icon={{option.icon}}\n data-test-context-option-key={{option.key}}\n {{on \"click\" (fn option.action D.close)}}\n >\n {{option.label}}\n </D.Interactive>\n {{/if}}\n {{/each}}\n </HdsDropdown>\n {{/if}}\n </template>\n}\n"],"names":["HdsAdvancedTableThContextMenu","Component","g","prototype","service","i","tracked","_resizeOptions","isLastColumn","args","translatedResetWidthLabel","hdsIntl","t","default","resizeOptions","key","label","icon","action","_resetColumnWidth","bind","translatedResizeLabel","_resizeColumn","_reorderOptions","isFirstNonStickyColumn","translatedMoveColumnLabel","reorderOptions","_moveColumn","translatedMoveColumnToStartLabel","close","_moveColumnToPosition","translatedMoveColumnToEndLabel","_stickyColumnOptions","isStickyColumn","translatedPinLabel","translatedUnpinLabel","_pinFirstColumn","_options","hasReorderableColumns","hasResizableColumns","isFirstColumn","allGroups","undefined","reduce","options","group","index","_registerDropdownToggleElement","modifier","element","_toggleElement","resizeHandleElement","focus","dropdownCloseCallback","column","onColumnResize","onRestoreColumnWidth","width","onFocusReorderHandle","scheduleOnce","position","onMoveColumnToTerminalPosition","requestAnimationFrame","onPinFirstColumn","setComponentTemplate","precompileTemplate","strictMode","scope","gt","HdsDropdown","hdsT","concat","eq","on","fn"],"mappings":"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"}
1
+ {"version":3,"file":"th-context-menu.js","sources":["../../../../src/components/hds/advanced-table/th-context-menu.gts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2026\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { service } from '@ember/service';\nimport { tracked } from '@glimmer/tracking';\nimport { scheduleOnce } from '@ember/runloop';\nimport { modifier } from 'ember-modifier';\nimport { concat, fn } from '@ember/helper';\nimport { gt, eq } from 'ember-truth-helpers';\nimport { on } from '@ember/modifier';\n\nimport HdsDropdown from '../dropdown/index.gts';\nimport hdsT from '../../../helpers/hds-t.ts';\n\nimport type { HdsDropdownSignature } from '../dropdown/index.gts';\nimport type { HdsDropdownToggleIconSignature } from '../dropdown/toggle/icon.gts';\nimport type { HdsAdvancedTableSignature } from './index.gts';\nimport type { HdsAdvancedTableThReorderHandleSignature } from './th-reorder-handle.gts';\nimport type { HdsAdvancedTableThResizeHandleSignature } from './th-resize-handle.gts';\nimport type { HdsDropdownToggleButtonSignature } from '../dropdown/toggle/button.gts';\nimport type HdsIntlService from '../../../services/hds-intl.ts';\nimport type { HdsAdvancedTableNormalizedColumn } from './types.ts';\n\ninterface HdsAdvancedTableThContextMenuOption {\n key: string;\n icon?: HdsDropdownToggleIconSignature['Args']['icon'];\n label?: string;\n action?: (dropdownCloseCallback: () => void) => void;\n}\n\nexport interface HdsAdvancedTableThContextMenuSignature {\n Args: {\n column: HdsAdvancedTableNormalizedColumn;\n isFirstColumn: boolean;\n isFirstNonStickyColumn: boolean;\n isLastColumn: boolean;\n hasResizableColumns?: boolean;\n hasReorderableColumns?: boolean;\n isStickyColumn?: boolean;\n reorderHandleElement?: HdsAdvancedTableThReorderHandleSignature['Element'];\n resizeHandleElement?: HdsAdvancedTableThResizeHandleSignature['Element'];\n onColumnResize?: HdsAdvancedTableSignature['Args']['onColumnResize'];\n onFocusReorderHandle?: () => void;\n onMoveColumnToTerminalPosition?: (\n columnKey: HdsAdvancedTableNormalizedColumn['key'],\n position: 'start' | 'end'\n ) => void;\n onPinFirstColumn?: () => void;\n onRestoreColumnWidth?: (\n columnKey: HdsAdvancedTableNormalizedColumn['key']\n ) => void;\n };\n Element: HdsDropdownSignature['Element'];\n}\n\nexport default class HdsAdvancedTableThContextMenu extends Component<HdsAdvancedTableThContextMenuSignature> {\n @service declare readonly hdsIntl: HdsIntlService;\n\n @tracked private _toggleElement:\n | HdsDropdownToggleButtonSignature['Element']\n | null = null;\n\n get _resizeOptions(): HdsAdvancedTableThContextMenuOption[] {\n const { isLastColumn } = this.args;\n\n const translatedResetWidthLabel = this.hdsIntl.t(\n 'hds.advanced-table.th-context-menu.reset-width',\n { default: 'Reset column width' }\n );\n\n let resizeOptions: HdsAdvancedTableThContextMenuOption[] = [\n {\n key: 'reset-column-width',\n label: translatedResetWidthLabel,\n icon: 'rotate-ccw',\n action: this._resetColumnWidth.bind(this),\n },\n ];\n\n if (!isLastColumn) {\n const translatedResizeLabel = this.hdsIntl.t(\n 'hds.advanced-table.th-context-menu.resize',\n { default: 'Resize column' }\n );\n\n resizeOptions = [\n {\n key: 'resize-column',\n label: translatedResizeLabel,\n icon: 'resize-column',\n action: this._resizeColumn.bind(this),\n },\n ...resizeOptions,\n ];\n }\n\n return resizeOptions;\n }\n\n get _reorderOptions(): HdsAdvancedTableThContextMenuOption[] {\n const { isFirstNonStickyColumn, isLastColumn } = this.args;\n\n const translatedMoveColumnLabel = this.hdsIntl.t(\n 'hds.advanced-table.th-context-menu.move-column',\n { default: 'Move column' }\n );\n\n let reorderOptions: HdsAdvancedTableThContextMenuOption[] = [\n {\n key: 'reorder-column',\n label: translatedMoveColumnLabel,\n icon: 'move-horizontal',\n action: () => this._moveColumn(),\n },\n ];\n\n if (!isFirstNonStickyColumn) {\n const translatedMoveColumnToStartLabel = this.hdsIntl.t(\n 'hds.advanced-table.th-context-menu.move-column-to-start',\n { default: 'Move column to start' }\n );\n reorderOptions = [\n ...reorderOptions,\n {\n key: 'move-column-to-start',\n label: translatedMoveColumnToStartLabel,\n icon: 'start',\n action: (close) => this._moveColumnToPosition('start', close),\n },\n ];\n }\n\n if (!isLastColumn) {\n const translatedMoveColumnToEndLabel = this.hdsIntl.t(\n 'hds.advanced-table.th-context-menu.move-column-to-end',\n { default: 'Move column to end' }\n );\n reorderOptions = [\n ...reorderOptions,\n {\n key: 'move-column-to-end',\n label: translatedMoveColumnToEndLabel,\n icon: 'end',\n action: (close) => this._moveColumnToPosition('end', close),\n },\n ];\n }\n\n return reorderOptions;\n }\n\n get _stickyColumnOptions(): HdsAdvancedTableThContextMenuOption[] {\n const { isStickyColumn } = this.args;\n\n const translatedPinLabel = this.hdsIntl.t(\n 'hds.advanced-table.th-context-menu.pin',\n { default: 'Pin column' }\n );\n const translatedUnpinLabel = this.hdsIntl.t(\n 'hds.advanced-table.th-context-menu.unpin',\n { default: 'Unpin column' }\n );\n\n return [\n {\n key: 'pin-first-column',\n label: isStickyColumn ? translatedUnpinLabel : translatedPinLabel,\n icon: isStickyColumn ? 'pin-off' : 'pin',\n action: this._pinFirstColumn.bind(this),\n },\n ];\n }\n\n get _options(): HdsAdvancedTableThContextMenuOption[] {\n const {\n hasReorderableColumns,\n hasResizableColumns,\n isFirstColumn,\n isStickyColumn,\n } = this.args;\n\n let allGroups: HdsAdvancedTableThContextMenuOption[][] = [];\n\n if (hasResizableColumns) {\n allGroups = [...allGroups, this._resizeOptions];\n }\n\n if (hasReorderableColumns && isStickyColumn !== true) {\n allGroups = [...allGroups, this._reorderOptions];\n }\n\n if (isFirstColumn && isStickyColumn !== undefined) {\n allGroups = [...allGroups, this._stickyColumnOptions];\n }\n\n return allGroups.reduce<HdsAdvancedTableThContextMenuOption[]>(\n (options, group, index) => {\n // Add a separator before each group except the first\n if (index > 0) {\n return [...options, { key: 'separator' }, ...group];\n }\n return [...options, ...group];\n },\n []\n );\n }\n\n private _registerDropdownToggleElement = modifier(\n (element: HdsDropdownToggleButtonSignature['Element']) => {\n this._toggleElement = element;\n }\n );\n\n private _resizeColumn() {\n this.args.resizeHandleElement?.focus();\n }\n\n private _resetColumnWidth(dropdownCloseCallback: () => void): void {\n const { column, onColumnResize, onRestoreColumnWidth } = this.args;\n\n if (\n typeof onRestoreColumnWidth === 'function' &&\n column.key !== undefined\n ) {\n onRestoreColumnWidth(column.key);\n\n if (typeof onColumnResize === 'function') {\n onColumnResize(column.key, column.width);\n }\n\n dropdownCloseCallback();\n }\n }\n\n private _moveColumn() {\n const { onFocusReorderHandle } = this.args;\n\n if (typeof onFocusReorderHandle === 'function') {\n // eslint-disable-next-line ember/no-runloop\n scheduleOnce('afterRender', this, onFocusReorderHandle);\n }\n }\n\n private _moveColumnToPosition(\n position: 'start' | 'end',\n dropdownCloseCallback?: () => void\n ): void {\n const { column, onMoveColumnToTerminalPosition } = this.args;\n\n onMoveColumnToTerminalPosition?.(column.key, position);\n\n requestAnimationFrame(() => {\n dropdownCloseCallback?.();\n\n this._toggleElement?.focus();\n });\n }\n\n private _pinFirstColumn(dropdownCloseCallback: () => void): void {\n const { onPinFirstColumn } = this.args;\n\n if (typeof onPinFirstColumn === 'function') {\n onPinFirstColumn();\n }\n\n dropdownCloseCallback();\n }\n\n <template>\n {{#if (gt this._options.length 0)}}\n <HdsDropdown\n class=\"hds-advanced-table__th-context-menu\"\n @enableCollisionDetection={{true}}\n ...attributes\n as |D|\n >\n <D.ToggleIcon\n @icon=\"more-vertical\"\n @text={{hdsT\n \"hds.components.advanced-table.th-context-menu.actions\"\n columnLabel=@column.label\n default=(concat \"Additional actions for \" @column.label)\n }}\n @hasChevron={{false}}\n @size=\"small\"\n {{this._registerDropdownToggleElement}}\n />\n\n {{#each this._options as |option|}}\n {{#if (eq option.key \"separator\")}}\n <D.Separator />\n {{else if option.action}}\n <D.Interactive\n @icon={{option.icon}}\n data-test-context-option-key={{option.key}}\n {{on \"click\" (fn option.action D.close)}}\n >\n {{option.label}}\n </D.Interactive>\n {{/if}}\n {{/each}}\n </HdsDropdown>\n {{/if}}\n </template>\n}\n"],"names":["HdsAdvancedTableThContextMenu","Component","g","prototype","service","i","tracked","_resizeOptions","isLastColumn","args","translatedResetWidthLabel","hdsIntl","t","default","resizeOptions","key","label","icon","action","_resetColumnWidth","bind","translatedResizeLabel","_resizeColumn","_reorderOptions","isFirstNonStickyColumn","translatedMoveColumnLabel","reorderOptions","_moveColumn","translatedMoveColumnToStartLabel","close","_moveColumnToPosition","translatedMoveColumnToEndLabel","_stickyColumnOptions","isStickyColumn","translatedPinLabel","translatedUnpinLabel","_pinFirstColumn","_options","hasReorderableColumns","hasResizableColumns","isFirstColumn","allGroups","undefined","reduce","options","group","index","_registerDropdownToggleElement","modifier","element","_toggleElement","resizeHandleElement","focus","dropdownCloseCallback","column","onColumnResize","onRestoreColumnWidth","width","onFocusReorderHandle","scheduleOnce","position","onMoveColumnToTerminalPosition","requestAnimationFrame","onPinFirstColumn","setComponentTemplate","precompileTemplate","strictMode","scope","gt","HdsDropdown","hdsT","concat","eq","on","fn"],"mappings":"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"}
@@ -4,7 +4,7 @@ import '@ember/object';
4
4
  import 'ember-modifier';
5
5
  import '@ember/modifier';
6
6
  import 'ember-style-modifier';
7
- export { e as default } from '../../../index-B9OqWZ9U.js';
7
+ export { e as default } from '../../../index-DtMB-P9m.js';
8
8
  import './utils.js';
9
9
  import './types.js';
10
10
  import '@ember/template-compilation';
@@ -10,7 +10,7 @@ import { setComponentTemplate } from '@ember/component';
10
10
  import { n } from 'decorator-transforms/runtime';
11
11
 
12
12
  /**
13
- * Copyright IBM Corp. 2021, 2025
13
+ * Copyright IBM Corp. 2021, 2026
14
14
  * SPDX-License-Identifier: MPL-2.0
15
15
  */
16
16
  function constructDragPreview(width, height) {
@@ -1 +1 @@
1
- {"version":3,"file":"th-reorder-handle.js","sources":["../../../../src/components/hds/advanced-table/th-reorder-handle.gts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2025\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { action } from '@ember/object';\nimport { scheduleOnce } from '@ember/runloop';\nimport { concat, fn } from '@ember/helper';\nimport { on } from '@ember/modifier';\n\nimport HdsIcon from '../icon/index.gts';\nimport hdsT from '../../../helpers/hds-t.ts';\n\nimport type { HdsAdvancedTableNormalizedColumn } from './types';\n\nexport interface HdsAdvancedTableThReorderHandleSignature {\n Args: {\n column: HdsAdvancedTableNormalizedColumn;\n tableHeight?: number;\n thElement?: HTMLDivElement;\n onFocusReorderHandle: () => void;\n onSetDraggedColumnKey: (\n columnKey: HdsAdvancedTableNormalizedColumn['key'] | null\n ) => void;\n onStepColumn: (step: number) => void;\n };\n Blocks: {\n default?: [];\n };\n Element: HTMLDivElement;\n}\n\nfunction constructDragPreview(width: number, height?: number): HTMLDivElement {\n const dragPreviewElement = document.createElement('div');\n\n dragPreviewElement.className = 'hds-advanced-table__th-reorder-drag-preview';\n\n dragPreviewElement.style.width = `${width}px`;\n\n if (height) {\n dragPreviewElement.style.height = `${height}px`;\n }\n\n document.body.appendChild(dragPreviewElement);\n\n return dragPreviewElement;\n}\n\nexport default class HdsAdvancedTableThReorderHandle extends Component<HdsAdvancedTableThReorderHandleSignature> {\n @action\n handleDragStart(event: DragEvent): void {\n const { column, tableHeight, thElement, onSetDraggedColumnKey } = this.args;\n const { key } = column;\n\n if (thElement === undefined) {\n return;\n }\n\n onSetDraggedColumnKey(key);\n\n const thElementWidth = thElement.offsetWidth;\n\n event.dataTransfer?.setData('text/plain', key);\n\n if (event.dataTransfer) {\n event.dataTransfer.effectAllowed = 'move';\n }\n\n const dragPreview = constructDragPreview(thElementWidth, tableHeight);\n\n document.body.appendChild(dragPreview);\n\n // set the drag image, center it, and offset it vertically by 10px\n event.dataTransfer?.setDragImage(dragPreview, thElementWidth / 2, 10);\n\n setTimeout(() => document.body.removeChild(dragPreview), 0);\n }\n\n @action\n handleKeydown(event: KeyboardEvent): void {\n switch (event.key) {\n case 'ArrowLeft':\n case 'ArrowRight': {\n event.preventDefault();\n event.stopPropagation();\n\n const { onStepColumn } = this.args;\n const direction = event.key === 'ArrowLeft' ? -1 : 1;\n onStepColumn(direction);\n\n // we need to wait for the next run loop to ensure that the element has been registered with the column after moving\n // eslint-disable-next-line ember/no-runloop\n scheduleOnce('afterRender', this, this.args.onFocusReorderHandle);\n break;\n }\n\n case ' ': {\n event.preventDefault();\n event.stopPropagation();\n break;\n }\n\n default:\n break;\n }\n }\n\n <template>\n {{! template-lint-disable no-unsupported-role-attributes require-presentational-children }}\n <div\n role=\"button\"\n draggable=\"true\"\n class=\"hds-advanced-table__th-reorder-handle\"\n tabindex=\"0\"\n aria-description={{hdsT\n \"hds.components.advanced-table.th-reorder-handle.aria-description\"\n default=\"Use left and right arrow keys while focused on this button to move the column to a new position.\"\n }}\n aria-label={{hdsT\n \"hds.components.advanced-table.th-reorder-handle.aria-label\"\n columnLabel=@column.label\n default=(concat \"Reorder \" @column.label \" column\")\n }}\n {{on \"dragstart\" this.handleDragStart}}\n {{on \"dragend\" (fn @onSetDraggedColumnKey null)}}\n {{on \"keydown\" this.handleKeydown}}\n ...attributes\n >\n <div class=\"hds-advanced-table__th-reorder-handle__inner\">\n <HdsIcon @name=\"move-horizontal\" />\n </div>\n </div>\n </template>\n}\n"],"names":["constructDragPreview","width","height","dragPreviewElement","document","createElement","className","style","body","appendChild","HdsAdvancedTableThReorderHandle","Component","handleDragStart","event","column","tableHeight","thElement","onSetDraggedColumnKey","args","key","undefined","thElementWidth","offsetWidth","dataTransfer","setData","effectAllowed","dragPreview","setDragImage","setTimeout","removeChild","n","prototype","action","handleKeydown","preventDefault","stopPropagation","onStepColumn","direction","scheduleOnce","onFocusReorderHandle","setComponentTemplate","precompileTemplate","strictMode","scope","hdsT","concat","on","fn","HdsIcon"],"mappings":"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"}
1
+ {"version":3,"file":"th-reorder-handle.js","sources":["../../../../src/components/hds/advanced-table/th-reorder-handle.gts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2026\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { action } from '@ember/object';\nimport { scheduleOnce } from '@ember/runloop';\nimport { concat, fn } from '@ember/helper';\nimport { on } from '@ember/modifier';\n\nimport HdsIcon from '../icon/index.gts';\nimport hdsT from '../../../helpers/hds-t.ts';\n\nimport type { HdsAdvancedTableNormalizedColumn } from './types';\n\nexport interface HdsAdvancedTableThReorderHandleSignature {\n Args: {\n column: HdsAdvancedTableNormalizedColumn;\n tableHeight?: number;\n thElement?: HTMLDivElement;\n onFocusReorderHandle: () => void;\n onSetDraggedColumnKey: (\n columnKey: HdsAdvancedTableNormalizedColumn['key'] | null\n ) => void;\n onStepColumn: (step: number) => void;\n };\n Blocks: {\n default?: [];\n };\n Element: HTMLDivElement;\n}\n\nfunction constructDragPreview(width: number, height?: number): HTMLDivElement {\n const dragPreviewElement = document.createElement('div');\n\n dragPreviewElement.className = 'hds-advanced-table__th-reorder-drag-preview';\n\n dragPreviewElement.style.width = `${width}px`;\n\n if (height) {\n dragPreviewElement.style.height = `${height}px`;\n }\n\n document.body.appendChild(dragPreviewElement);\n\n return dragPreviewElement;\n}\n\nexport default class HdsAdvancedTableThReorderHandle extends Component<HdsAdvancedTableThReorderHandleSignature> {\n @action\n handleDragStart(event: DragEvent): void {\n const { column, tableHeight, thElement, onSetDraggedColumnKey } = this.args;\n const { key } = column;\n\n if (thElement === undefined) {\n return;\n }\n\n onSetDraggedColumnKey(key);\n\n const thElementWidth = thElement.offsetWidth;\n\n event.dataTransfer?.setData('text/plain', key);\n\n if (event.dataTransfer) {\n event.dataTransfer.effectAllowed = 'move';\n }\n\n const dragPreview = constructDragPreview(thElementWidth, tableHeight);\n\n document.body.appendChild(dragPreview);\n\n // set the drag image, center it, and offset it vertically by 10px\n event.dataTransfer?.setDragImage(dragPreview, thElementWidth / 2, 10);\n\n setTimeout(() => document.body.removeChild(dragPreview), 0);\n }\n\n @action\n handleKeydown(event: KeyboardEvent): void {\n switch (event.key) {\n case 'ArrowLeft':\n case 'ArrowRight': {\n event.preventDefault();\n event.stopPropagation();\n\n const { onStepColumn } = this.args;\n const direction = event.key === 'ArrowLeft' ? -1 : 1;\n onStepColumn(direction);\n\n // we need to wait for the next run loop to ensure that the element has been registered with the column after moving\n // eslint-disable-next-line ember/no-runloop\n scheduleOnce('afterRender', this, this.args.onFocusReorderHandle);\n break;\n }\n\n case ' ': {\n event.preventDefault();\n event.stopPropagation();\n break;\n }\n\n default:\n break;\n }\n }\n\n <template>\n {{! template-lint-disable no-unsupported-role-attributes require-presentational-children }}\n <div\n role=\"button\"\n draggable=\"true\"\n class=\"hds-advanced-table__th-reorder-handle\"\n tabindex=\"0\"\n aria-description={{hdsT\n \"hds.components.advanced-table.th-reorder-handle.aria-description\"\n default=\"Use left and right arrow keys while focused on this button to move the column to a new position.\"\n }}\n aria-label={{hdsT\n \"hds.components.advanced-table.th-reorder-handle.aria-label\"\n columnLabel=@column.label\n default=(concat \"Reorder \" @column.label \" column\")\n }}\n {{on \"dragstart\" this.handleDragStart}}\n {{on \"dragend\" (fn @onSetDraggedColumnKey null)}}\n {{on \"keydown\" this.handleKeydown}}\n ...attributes\n >\n <div class=\"hds-advanced-table__th-reorder-handle__inner\">\n <HdsIcon @name=\"move-horizontal\" />\n </div>\n </div>\n </template>\n}\n"],"names":["constructDragPreview","width","height","dragPreviewElement","document","createElement","className","style","body","appendChild","HdsAdvancedTableThReorderHandle","Component","handleDragStart","event","column","tableHeight","thElement","onSetDraggedColumnKey","args","key","undefined","thElementWidth","offsetWidth","dataTransfer","setData","effectAllowed","dragPreview","setDragImage","setTimeout","removeChild","n","prototype","action","handleKeydown","preventDefault","stopPropagation","onStepColumn","direction","scheduleOnce","onFocusReorderHandle","setComponentTemplate","precompileTemplate","strictMode","scope","hdsT","concat","on","fn","HdsIcon"],"mappings":"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"}
@@ -6,7 +6,7 @@ import '@ember/modifier';
6
6
  import 'ember-style-modifier';
7
7
  import '@ember/helper';
8
8
  import './utils.js';
9
- export { d as default } from '../../../index-B9OqWZ9U.js';
9
+ export { d as default } from '../../../index-DtMB-P9m.js';
10
10
  import './column-manager/width.js';
11
11
  import '../../../helpers/hds-t.js';
12
12
  import '@ember/template-compilation';
@@ -6,7 +6,7 @@ import 'ember-modifier';
6
6
  import '@ember/service';
7
7
  import '@ember/modifier';
8
8
  import './types.js';
9
- export { b as default } from '../../../index-B9OqWZ9U.js';
9
+ export { b as default } from '../../../index-DtMB-P9m.js';
10
10
  import '../form/checkbox/base.js';
11
11
  import './th-button-sort.js';
12
12
  import '@ember/template-compilation';
@@ -18,7 +18,7 @@ import './th-button-sort.js';
18
18
  import './th-button-tooltip.js';
19
19
  import './th-context-menu.js';
20
20
  import './th-reorder-handle.js';
21
- export { A as ALIGNMENTS, D as DEFAULT_ALIGN, a as default } from '../../../index-B9OqWZ9U.js';
21
+ export { A as ALIGNMENTS, D as DEFAULT_ALIGN, a as default } from '../../../index-DtMB-P9m.js';
22
22
  import '../../../modifiers/hds-advanced-table-cell/dom-management.js';
23
23
  import './types.js';
24
24
  import '@ember/template-compilation';
@@ -2,7 +2,7 @@ import '@glimmer/component';
2
2
  import '@ember/debug';
3
3
  import '@ember/helper';
4
4
  import 'ember-truth-helpers';
5
- export { c as default } from '../../../index-B9OqWZ9U.js';
5
+ export { c as default } from '../../../index-DtMB-P9m.js';
6
6
  import '@ember/template-compilation';
7
7
  import '@ember/component';
8
8
  //# sourceMappingURL=tr.js.map
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright IBM Corp. 2021, 2025
2
+ * Copyright IBM Corp. 2021, 2026
3
3
  * SPDX-License-Identifier: MPL-2.0
4
4
  */
5
5
 
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sources":["../../../../src/components/hds/advanced-table/types.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2025\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport type { HdsFormCheckboxBaseSignature } from '../form/checkbox/base.gts';\n\nexport enum HdsAdvancedTableDensityValues {\n Default = 'default',\n Medium = 'medium',\n Short = 'short',\n Tall = 'tall',\n}\nexport type HdsAdvancedTableDensities = `${HdsAdvancedTableDensityValues}`;\n\nexport enum HdsAdvancedTableHorizontalAlignmentValues {\n Center = 'center',\n Left = 'left',\n Right = 'right',\n}\nexport type HdsAdvancedTableHorizontalAlignment =\n `${HdsAdvancedTableHorizontalAlignmentValues}`;\n\nexport enum HdsAdvancedTableScopeValues {\n Col = 'col',\n Row = 'row',\n}\nexport type HdsAdvancedTableScope = `${HdsAdvancedTableScopeValues}`;\n\nexport enum HdsAdvancedTableThExpandIconValues {\n ChevronUp = 'chevron-up',\n ChevronDown = 'chevron-down',\n UnfoldOpen = 'unfold-open',\n UnfoldClose = 'unfold-close',\n}\nexport type HdsAdvancedTableThSortExpandIcons =\n `${HdsAdvancedTableThExpandIconValues}`;\n\nexport enum HdsAdvancedTableThSortOrderIconValues {\n ArrowDown = 'arrow-down',\n ArrowUp = 'arrow-up',\n SwapVertical = 'swap-vertical',\n}\nexport type HdsAdvancedTableThSortOrderIcons =\n `${HdsAdvancedTableThSortOrderIconValues}`;\n\nexport enum HdsAdvancedTableThSortOrderLabelValues {\n Asc = 'ascending',\n Desc = 'descending',\n None = 'none',\n}\nexport type HdsAdvancedTableThSortOrderLabels =\n `${HdsAdvancedTableThSortOrderLabelValues}`;\n\nexport enum HdsAdvancedTableThSortOrderValues {\n Asc = 'asc',\n Desc = 'desc',\n}\nexport type HdsAdvancedTableThSortOrder =\n `${HdsAdvancedTableThSortOrderValues}`;\n\nexport enum HdsAdvancedTableVerticalAlignmentValues {\n Baseline = 'baseline',\n Middle = 'middle',\n Top = 'top',\n}\nexport type HdsAdvancedTableVerticalAlignment =\n `${HdsAdvancedTableVerticalAlignmentValues}`;\n\nexport type HdsAdvancedTableSelectableRow = {\n checkbox: HdsFormCheckboxBaseSignature['Element'];\n selectionKey: string;\n};\n\nexport type HdsAdvancedTableExpandState = boolean;\n\ninterface BaseHdsAdvancedTableColumn {\n align?: HdsAdvancedTableHorizontalAlignment;\n isExpandable?: boolean;\n isVisuallyHidden?: boolean;\n label: string;\n sortingFunction?: HdsAdvancedTableSortingFunction<unknown>;\n tooltip?: string;\n width?: string;\n minWidth?: `${number}px`;\n maxWidth?: `${number}px`;\n}\n\ninterface SortableHdsAdvancedTableColumn extends BaseHdsAdvancedTableColumn {\n isSortable: true;\n key: string;\n}\n\ninterface NonSortableHdsAdvancedTableColumn extends BaseHdsAdvancedTableColumn {\n isSortable?: false;\n key?: string;\n}\n\nexport type HdsAdvancedTableColumn =\n | SortableHdsAdvancedTableColumn\n | NonSortableHdsAdvancedTableColumn;\n\nexport type HdsAdvancedTableNormalizedColumn = HdsAdvancedTableColumn & {\n key: string;\n};\n\nexport type HdsAdvancedTableSortingFunction<T> = (a: T, b: T) => number;\n\nexport interface HdsAdvancedTableOnSelectionChangeSignature {\n selectionKey?: string;\n selectionCheckboxElement?: HdsFormCheckboxBaseSignature['Element'];\n selectedRowsKeys: string[];\n selectableRowsStates: {\n selectionKey: string;\n isSelected?: boolean;\n }[];\n}\n\nexport interface HdsAdvancedTableModelItem {\n [key: string]: unknown;\n children?: HdsAdvancedTableModelItem[];\n id?: string | number;\n isSelected?: boolean;\n}\n\nexport type HdsAdvancedTableModel = Array<HdsAdvancedTableModelItem>;\n\nexport type HdsAdvancedTableColumnResizeCallback = (\n columnKey: string,\n newWidth?: string\n) => void;\n\nexport type HdsAdvancedTableColumnReorderCallback = ({\n column,\n newOrder,\n insertedAt,\n}: {\n column: HdsAdvancedTableColumn;\n newOrder: string[];\n insertedAt: number;\n}) => void;\n\nexport interface HdsAdvancedTableCell<T = unknown> {\n columnKey: string;\n content: (T extends object ? T[keyof T] : unknown) | undefined;\n}\n\nexport enum HdsAdvancedTableColumnReorderSideValues {\n Left = 'left',\n Right = 'right',\n}\n\nexport type HdsAdvancedTableColumnReorderSide =\n `${HdsAdvancedTableColumnReorderSideValues}`;\n\nexport type HdsAdvancedTablePixelString = `${number}px`;\n"],"names":["HdsAdvancedTableDensityValues","HdsAdvancedTableHorizontalAlignmentValues","HdsAdvancedTableScopeValues","HdsAdvancedTableThExpandIconValues","HdsAdvancedTableThSortOrderIconValues","HdsAdvancedTableThSortOrderLabelValues","HdsAdvancedTableThSortOrderValues","HdsAdvancedTableVerticalAlignmentValues","HdsAdvancedTableColumnReorderSideValues"],"mappings":"AAAA;AACA;AACA;AACA;;AAIA,IAAYA,6BAA6B,0BAA7BA,6BAA6B,EAAA;EAA7BA,6BAA6B,CAAA,SAAA,CAAA,GAAA,SAAA;EAA7BA,6BAA6B,CAAA,QAAA,CAAA,GAAA,QAAA;EAA7BA,6BAA6B,CAAA,OAAA,CAAA,GAAA,OAAA;EAA7BA,6BAA6B,CAAA,MAAA,CAAA,GAAA,MAAA;AAAA,EAAA,OAA7BA,6BAA6B;AAAA,CAAA,CAAA,EAAA;AAQzC,IAAYC,yCAAyC,0BAAzCA,yCAAyC,EAAA;EAAzCA,yCAAyC,CAAA,QAAA,CAAA,GAAA,QAAA;EAAzCA,yCAAyC,CAAA,MAAA,CAAA,GAAA,MAAA;EAAzCA,yCAAyC,CAAA,OAAA,CAAA,GAAA,OAAA;AAAA,EAAA,OAAzCA,yCAAyC;AAAA,CAAA,CAAA,EAAA;AAQrD,IAAYC,2BAA2B,0BAA3BA,2BAA2B,EAAA;EAA3BA,2BAA2B,CAAA,KAAA,CAAA,GAAA,KAAA;EAA3BA,2BAA2B,CAAA,KAAA,CAAA,GAAA,KAAA;AAAA,EAAA,OAA3BA,2BAA2B;AAAA,CAAA,CAAA,EAAA;AAMvC,IAAYC,kCAAkC,0BAAlCA,kCAAkC,EAAA;EAAlCA,kCAAkC,CAAA,WAAA,CAAA,GAAA,YAAA;EAAlCA,kCAAkC,CAAA,aAAA,CAAA,GAAA,cAAA;EAAlCA,kCAAkC,CAAA,YAAA,CAAA,GAAA,aAAA;EAAlCA,kCAAkC,CAAA,aAAA,CAAA,GAAA,cAAA;AAAA,EAAA,OAAlCA,kCAAkC;AAAA,CAAA,CAAA,EAAA;AAS9C,IAAYC,qCAAqC,0BAArCA,qCAAqC,EAAA;EAArCA,qCAAqC,CAAA,WAAA,CAAA,GAAA,YAAA;EAArCA,qCAAqC,CAAA,SAAA,CAAA,GAAA,UAAA;EAArCA,qCAAqC,CAAA,cAAA,CAAA,GAAA,eAAA;AAAA,EAAA,OAArCA,qCAAqC;AAAA,CAAA,CAAA,EAAA;AAQjD,IAAYC,sCAAsC,0BAAtCA,sCAAsC,EAAA;EAAtCA,sCAAsC,CAAA,KAAA,CAAA,GAAA,WAAA;EAAtCA,sCAAsC,CAAA,MAAA,CAAA,GAAA,YAAA;EAAtCA,sCAAsC,CAAA,MAAA,CAAA,GAAA,MAAA;AAAA,EAAA,OAAtCA,sCAAsC;AAAA,CAAA,CAAA,EAAA;AAQlD,IAAYC,iCAAiC,0BAAjCA,iCAAiC,EAAA;EAAjCA,iCAAiC,CAAA,KAAA,CAAA,GAAA,KAAA;EAAjCA,iCAAiC,CAAA,MAAA,CAAA,GAAA,MAAA;AAAA,EAAA,OAAjCA,iCAAiC;AAAA,CAAA,CAAA,EAAA;AAO7C,IAAYC,uCAAuC,0BAAvCA,uCAAuC,EAAA;EAAvCA,uCAAuC,CAAA,UAAA,CAAA,GAAA,UAAA;EAAvCA,uCAAuC,CAAA,QAAA,CAAA,GAAA,QAAA;EAAvCA,uCAAuC,CAAA,KAAA,CAAA,GAAA,KAAA;AAAA,EAAA,OAAvCA,uCAAuC;AAAA,CAAA,CAAA,EAAA;AAsFnD,IAAYC,uCAAuC,0BAAvCA,uCAAuC,EAAA;EAAvCA,uCAAuC,CAAA,MAAA,CAAA,GAAA,MAAA;EAAvCA,uCAAuC,CAAA,OAAA,CAAA,GAAA,OAAA;AAAA,EAAA,OAAvCA,uCAAuC;AAAA,CAAA,CAAA,EAAA;;;;"}
1
+ {"version":3,"file":"types.js","sources":["../../../../src/components/hds/advanced-table/types.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2026\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport type { HdsFormCheckboxBaseSignature } from '../form/checkbox/base.gts';\n\nexport enum HdsAdvancedTableDensityValues {\n Default = 'default',\n Medium = 'medium',\n Short = 'short',\n Tall = 'tall',\n}\nexport type HdsAdvancedTableDensities = `${HdsAdvancedTableDensityValues}`;\n\nexport enum HdsAdvancedTableHorizontalAlignmentValues {\n Center = 'center',\n Left = 'left',\n Right = 'right',\n}\nexport type HdsAdvancedTableHorizontalAlignment =\n `${HdsAdvancedTableHorizontalAlignmentValues}`;\n\nexport enum HdsAdvancedTableScopeValues {\n Col = 'col',\n Row = 'row',\n}\nexport type HdsAdvancedTableScope = `${HdsAdvancedTableScopeValues}`;\n\nexport enum HdsAdvancedTableThExpandIconValues {\n ChevronUp = 'chevron-up',\n ChevronDown = 'chevron-down',\n UnfoldOpen = 'unfold-open',\n UnfoldClose = 'unfold-close',\n}\nexport type HdsAdvancedTableThSortExpandIcons =\n `${HdsAdvancedTableThExpandIconValues}`;\n\nexport enum HdsAdvancedTableThSortOrderIconValues {\n ArrowDown = 'arrow-down',\n ArrowUp = 'arrow-up',\n SwapVertical = 'swap-vertical',\n}\nexport type HdsAdvancedTableThSortOrderIcons =\n `${HdsAdvancedTableThSortOrderIconValues}`;\n\nexport enum HdsAdvancedTableThSortOrderLabelValues {\n Asc = 'ascending',\n Desc = 'descending',\n None = 'none',\n}\nexport type HdsAdvancedTableThSortOrderLabels =\n `${HdsAdvancedTableThSortOrderLabelValues}`;\n\nexport enum HdsAdvancedTableThSortOrderValues {\n Asc = 'asc',\n Desc = 'desc',\n}\nexport type HdsAdvancedTableThSortOrder =\n `${HdsAdvancedTableThSortOrderValues}`;\n\nexport enum HdsAdvancedTableVerticalAlignmentValues {\n Baseline = 'baseline',\n Middle = 'middle',\n Top = 'top',\n}\nexport type HdsAdvancedTableVerticalAlignment =\n `${HdsAdvancedTableVerticalAlignmentValues}`;\n\nexport type HdsAdvancedTableSelectableRow = {\n checkbox: HdsFormCheckboxBaseSignature['Element'];\n selectionKey: string;\n};\n\nexport type HdsAdvancedTableExpandState = boolean;\n\ninterface BaseHdsAdvancedTableColumn {\n align?: HdsAdvancedTableHorizontalAlignment;\n isExpandable?: boolean;\n isVisuallyHidden?: boolean;\n label: string;\n sortingFunction?: HdsAdvancedTableSortingFunction<unknown>;\n tooltip?: string;\n width?: string;\n minWidth?: `${number}px`;\n maxWidth?: `${number}px`;\n}\n\ninterface SortableHdsAdvancedTableColumn extends BaseHdsAdvancedTableColumn {\n isSortable: true;\n key: string;\n}\n\ninterface NonSortableHdsAdvancedTableColumn extends BaseHdsAdvancedTableColumn {\n isSortable?: false;\n key?: string;\n}\n\nexport type HdsAdvancedTableColumn =\n | SortableHdsAdvancedTableColumn\n | NonSortableHdsAdvancedTableColumn;\n\nexport type HdsAdvancedTableNormalizedColumn = HdsAdvancedTableColumn & {\n key: string;\n};\n\nexport type HdsAdvancedTableSortingFunction<T> = (a: T, b: T) => number;\n\nexport interface HdsAdvancedTableOnSelectionChangeSignature {\n selectionKey?: string;\n selectionCheckboxElement?: HdsFormCheckboxBaseSignature['Element'];\n selectedRowsKeys: string[];\n selectableRowsStates: {\n selectionKey: string;\n isSelected?: boolean;\n }[];\n}\n\nexport interface HdsAdvancedTableModelItem {\n [key: string]: unknown;\n children?: HdsAdvancedTableModelItem[];\n id?: string | number;\n isSelected?: boolean;\n}\n\nexport type HdsAdvancedTableModel = Array<HdsAdvancedTableModelItem>;\n\nexport type HdsAdvancedTableColumnResizeCallback = (\n columnKey: string,\n newWidth?: string\n) => void;\n\nexport type HdsAdvancedTableColumnReorderCallback = ({\n column,\n newOrder,\n insertedAt,\n}: {\n column: HdsAdvancedTableColumn;\n newOrder: string[];\n insertedAt: number;\n}) => void;\n\nexport interface HdsAdvancedTableCell<T = unknown> {\n columnKey: string;\n content: (T extends object ? T[keyof T] : unknown) | undefined;\n}\n\nexport enum HdsAdvancedTableColumnReorderSideValues {\n Left = 'left',\n Right = 'right',\n}\n\nexport type HdsAdvancedTableColumnReorderSide =\n `${HdsAdvancedTableColumnReorderSideValues}`;\n\nexport type HdsAdvancedTablePixelString = `${number}px`;\n"],"names":["HdsAdvancedTableDensityValues","HdsAdvancedTableHorizontalAlignmentValues","HdsAdvancedTableScopeValues","HdsAdvancedTableThExpandIconValues","HdsAdvancedTableThSortOrderIconValues","HdsAdvancedTableThSortOrderLabelValues","HdsAdvancedTableThSortOrderValues","HdsAdvancedTableVerticalAlignmentValues","HdsAdvancedTableColumnReorderSideValues"],"mappings":"AAAA;AACA;AACA;AACA;;AAIA,IAAYA,6BAA6B,0BAA7BA,6BAA6B,EAAA;EAA7BA,6BAA6B,CAAA,SAAA,CAAA,GAAA,SAAA;EAA7BA,6BAA6B,CAAA,QAAA,CAAA,GAAA,QAAA;EAA7BA,6BAA6B,CAAA,OAAA,CAAA,GAAA,OAAA;EAA7BA,6BAA6B,CAAA,MAAA,CAAA,GAAA,MAAA;AAAA,EAAA,OAA7BA,6BAA6B;AAAA,CAAA,CAAA,EAAA;AAQzC,IAAYC,yCAAyC,0BAAzCA,yCAAyC,EAAA;EAAzCA,yCAAyC,CAAA,QAAA,CAAA,GAAA,QAAA;EAAzCA,yCAAyC,CAAA,MAAA,CAAA,GAAA,MAAA;EAAzCA,yCAAyC,CAAA,OAAA,CAAA,GAAA,OAAA;AAAA,EAAA,OAAzCA,yCAAyC;AAAA,CAAA,CAAA,EAAA;AAQrD,IAAYC,2BAA2B,0BAA3BA,2BAA2B,EAAA;EAA3BA,2BAA2B,CAAA,KAAA,CAAA,GAAA,KAAA;EAA3BA,2BAA2B,CAAA,KAAA,CAAA,GAAA,KAAA;AAAA,EAAA,OAA3BA,2BAA2B;AAAA,CAAA,CAAA,EAAA;AAMvC,IAAYC,kCAAkC,0BAAlCA,kCAAkC,EAAA;EAAlCA,kCAAkC,CAAA,WAAA,CAAA,GAAA,YAAA;EAAlCA,kCAAkC,CAAA,aAAA,CAAA,GAAA,cAAA;EAAlCA,kCAAkC,CAAA,YAAA,CAAA,GAAA,aAAA;EAAlCA,kCAAkC,CAAA,aAAA,CAAA,GAAA,cAAA;AAAA,EAAA,OAAlCA,kCAAkC;AAAA,CAAA,CAAA,EAAA;AAS9C,IAAYC,qCAAqC,0BAArCA,qCAAqC,EAAA;EAArCA,qCAAqC,CAAA,WAAA,CAAA,GAAA,YAAA;EAArCA,qCAAqC,CAAA,SAAA,CAAA,GAAA,UAAA;EAArCA,qCAAqC,CAAA,cAAA,CAAA,GAAA,eAAA;AAAA,EAAA,OAArCA,qCAAqC;AAAA,CAAA,CAAA,EAAA;AAQjD,IAAYC,sCAAsC,0BAAtCA,sCAAsC,EAAA;EAAtCA,sCAAsC,CAAA,KAAA,CAAA,GAAA,WAAA;EAAtCA,sCAAsC,CAAA,MAAA,CAAA,GAAA,YAAA;EAAtCA,sCAAsC,CAAA,MAAA,CAAA,GAAA,MAAA;AAAA,EAAA,OAAtCA,sCAAsC;AAAA,CAAA,CAAA,EAAA;AAQlD,IAAYC,iCAAiC,0BAAjCA,iCAAiC,EAAA;EAAjCA,iCAAiC,CAAA,KAAA,CAAA,GAAA,KAAA;EAAjCA,iCAAiC,CAAA,MAAA,CAAA,GAAA,MAAA;AAAA,EAAA,OAAjCA,iCAAiC;AAAA,CAAA,CAAA,EAAA;AAO7C,IAAYC,uCAAuC,0BAAvCA,uCAAuC,EAAA;EAAvCA,uCAAuC,CAAA,UAAA,CAAA,GAAA,UAAA;EAAvCA,uCAAuC,CAAA,QAAA,CAAA,GAAA,QAAA;EAAvCA,uCAAuC,CAAA,KAAA,CAAA,GAAA,KAAA;AAAA,EAAA,OAAvCA,uCAAuC;AAAA,CAAA,CAAA,EAAA;AAsFnD,IAAYC,uCAAuC,0BAAvCA,uCAAuC,EAAA;EAAvCA,uCAAuC,CAAA,MAAA,CAAA,GAAA,MAAA;EAAvCA,uCAAuC,CAAA,OAAA,CAAA,GAAA,OAAA;AAAA,EAAA,OAAvCA,uCAAuC;AAAA,CAAA,CAAA,EAAA;;;;"}
@@ -1,7 +1,7 @@
1
1
  import { buildWaiter } from '@ember/test-waiters';
2
2
 
3
3
  /**
4
- * Copyright IBM Corp. 2021, 2025
4
+ * Copyright IBM Corp. 2021, 2026
5
5
  * SPDX-License-Identifier: MPL-2.0
6
6
  */
7
7
 
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":["../../../../src/components/hds/advanced-table/utils.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2025\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport { buildWaiter } from '@ember/test-waiters';\n\nconst waiter = buildWaiter('raf-waiter');\n\n// a utility that wraps requestAnimationFrame and integrates with Ember's test waiters\nexport function requestAnimationFrameWaiter(callback: () => void) {\n const token = waiter.beginAsync();\n\n return requestAnimationFrame(() => {\n try {\n callback();\n } finally {\n waiter.endAsync(token);\n }\n });\n}\n\nexport function pixelToNumber(px: `${number}px`): number {\n return Number(px.replace('px', ''));\n}\n\nexport function isPixelSize(value?: string): boolean {\n if (value === undefined) {\n return false;\n }\n\n return /^-?\\d+(\\.\\d+)?px$/.test(value);\n}\n\nexport function parsePixel(value?: string): number | undefined {\n if (value === undefined) {\n return undefined;\n }\n\n if (!isPixelSize(value)) {\n return undefined;\n }\n\n return pixelToNumber(value as `${number}px`);\n}\n"],"names":["waiter","buildWaiter","requestAnimationFrameWaiter","callback","token","beginAsync","requestAnimationFrame","endAsync","pixelToNumber","px","Number","replace","isPixelSize","value","undefined","test","parsePixel"],"mappings":";;AAAA;AACA;AACA;AACA;;AAIA,MAAMA,MAAM,GAAGC,WAAW,CAAC,YAAY,CAAC;;AAExC;AACO,SAASC,2BAA2BA,CAACC,QAAoB,EAAE;AAChE,EAAA,MAAMC,KAAK,GAAGJ,MAAM,CAACK,UAAU,EAAE;EAEjC,OAAOC,qBAAqB,CAAC,MAAM;IACjC,IAAI;AACFH,MAAAA,QAAQ,EAAE;AACZ,IAAA,CAAC,SAAS;AACRH,MAAAA,MAAM,CAACO,QAAQ,CAACH,KAAK,CAAC;AACxB,IAAA;AACF,EAAA,CAAC,CAAC;AACJ;AAEO,SAASI,aAAaA,CAACC,EAAiB,EAAU;EACvD,OAAOC,MAAM,CAACD,EAAE,CAACE,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;AACrC;AAEO,SAASC,WAAWA,CAACC,KAAc,EAAW;EACnD,IAAIA,KAAK,KAAKC,SAAS,EAAE;AACvB,IAAA,OAAO,KAAK;AACd,EAAA;AAEA,EAAA,OAAO,mBAAmB,CAACC,IAAI,CAACF,KAAK,CAAC;AACxC;AAEO,SAASG,UAAUA,CAACH,KAAc,EAAsB;EAC7D,IAAIA,KAAK,KAAKC,SAAS,EAAE;AACvB,IAAA,OAAOA,SAAS;AAClB,EAAA;AAEA,EAAA,IAAI,CAACF,WAAW,CAACC,KAAK,CAAC,EAAE;AACvB,IAAA,OAAOC,SAAS;AAClB,EAAA;EAEA,OAAON,aAAa,CAACK,KAAsB,CAAC;AAC9C;;;;"}
1
+ {"version":3,"file":"utils.js","sources":["../../../../src/components/hds/advanced-table/utils.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2026\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport { buildWaiter } from '@ember/test-waiters';\n\nconst waiter = buildWaiter('raf-waiter');\n\n// a utility that wraps requestAnimationFrame and integrates with Ember's test waiters\nexport function requestAnimationFrameWaiter(callback: () => void) {\n const token = waiter.beginAsync();\n\n return requestAnimationFrame(() => {\n try {\n callback();\n } finally {\n waiter.endAsync(token);\n }\n });\n}\n\nexport function pixelToNumber(px: `${number}px`): number {\n return Number(px.replace('px', ''));\n}\n\nexport function isPixelSize(value?: string): boolean {\n if (value === undefined) {\n return false;\n }\n\n return /^-?\\d+(\\.\\d+)?px$/.test(value);\n}\n\nexport function parsePixel(value?: string): number | undefined {\n if (value === undefined) {\n return undefined;\n }\n\n if (!isPixelSize(value)) {\n return undefined;\n }\n\n return pixelToNumber(value as `${number}px`);\n}\n"],"names":["waiter","buildWaiter","requestAnimationFrameWaiter","callback","token","beginAsync","requestAnimationFrame","endAsync","pixelToNumber","px","Number","replace","isPixelSize","value","undefined","test","parsePixel"],"mappings":";;AAAA;AACA;AACA;AACA;;AAIA,MAAMA,MAAM,GAAGC,WAAW,CAAC,YAAY,CAAC;;AAExC;AACO,SAASC,2BAA2BA,CAACC,QAAoB,EAAE;AAChE,EAAA,MAAMC,KAAK,GAAGJ,MAAM,CAACK,UAAU,EAAE;EAEjC,OAAOC,qBAAqB,CAAC,MAAM;IACjC,IAAI;AACFH,MAAAA,QAAQ,EAAE;AACZ,IAAA,CAAC,SAAS;AACRH,MAAAA,MAAM,CAACO,QAAQ,CAACH,KAAK,CAAC;AACxB,IAAA;AACF,EAAA,CAAC,CAAC;AACJ;AAEO,SAASI,aAAaA,CAACC,EAAiB,EAAU;EACvD,OAAOC,MAAM,CAACD,EAAE,CAACE,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;AACrC;AAEO,SAASC,WAAWA,CAACC,KAAc,EAAW;EACnD,IAAIA,KAAK,KAAKC,SAAS,EAAE;AACvB,IAAA,OAAO,KAAK;AACd,EAAA;AAEA,EAAA,OAAO,mBAAmB,CAACC,IAAI,CAACF,KAAK,CAAC;AACxC;AAEO,SAASG,UAAUA,CAACH,KAAc,EAAsB;EAC7D,IAAIA,KAAK,KAAKC,SAAS,EAAE;AACvB,IAAA,OAAOA,SAAS;AAClB,EAAA;AAEA,EAAA,IAAI,CAACF,WAAW,CAACC,KAAK,CAAC,EAAE;AACvB,IAAA,OAAOC,SAAS;AAClB,EAAA;EAEA,OAAON,aAAa,CAACK,KAAsB,CAAC;AAC9C;;;;"}
@@ -3,7 +3,7 @@ import { setComponentTemplate } from '@ember/component';
3
3
  import templateOnly from '@ember/component/template-only';
4
4
 
5
5
  /**
6
- * Copyright IBM Corp. 2021, 2025
6
+ * Copyright IBM Corp. 2021, 2026
7
7
  * SPDX-License-Identifier: MPL-2.0
8
8
  */
9
9
  const HdsAlertDescription = setComponentTemplate(precompileTemplate("<div class=\"hds-alert__description hds-font-weight-regular hds-foreground-primary\" ...attributes>{{yield}}</div>", {
@@ -1 +1 @@
1
- {"version":3,"file":"description.js","sources":["../../../../src/components/hds/alert/description.gts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2025\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport type { TemplateOnlyComponent } from '@ember/component/template-only';\n\nexport interface HdsAlertDescriptionSignature {\n Blocks: {\n default: [];\n };\n Element: HTMLDivElement;\n}\n\nconst HdsAlertDescription: TemplateOnlyComponent<HdsAlertDescriptionSignature> =\n <template>\n <div\n class=\"hds-alert__description hds-font-weight-regular hds-foreground-primary\"\n ...attributes\n >{{yield}}</div>\n </template>;\n\nexport default HdsAlertDescription;\n"],"names":["HdsAlertDescription","setComponentTemplate","precompileTemplate","strictMode","templateOnly"],"mappings":";;;;AAAA;;;AAGC;AAWD,MAAMA,mBAA2C,GAAAC,oBAAA,CAC/CC,kBAAA,CAAA,oHAAA,EAKA;EAAAC,UAAA,EAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}
1
+ {"version":3,"file":"description.js","sources":["../../../../src/components/hds/alert/description.gts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2026\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport type { TemplateOnlyComponent } from '@ember/component/template-only';\n\nexport interface HdsAlertDescriptionSignature {\n Blocks: {\n default: [];\n };\n Element: HTMLDivElement;\n}\n\nconst HdsAlertDescription: TemplateOnlyComponent<HdsAlertDescriptionSignature> =\n <template>\n <div\n class=\"hds-alert__description hds-font-weight-regular hds-foreground-primary\"\n ...attributes\n >{{yield}}</div>\n </template>;\n\nexport default HdsAlertDescription;\n"],"names":["HdsAlertDescription","setComponentTemplate","precompileTemplate","strictMode","templateOnly"],"mappings":";;;;AAAA;;;AAGC;AAWD,MAAMA,mBAA2C,GAAAC,oBAAA,CAC/CC,kBAAA,CAAA,oHAAA,EAKA;EAAAC,UAAA,EAAA;AAAU,CAAA,CAAA,EAAAC,YAAA,EAAA;;;;"}
@@ -5,6 +5,7 @@ import { tracked } from '@glimmer/tracking';
5
5
  import { eq } from 'ember-truth-helpers';
6
6
  import { hash } from '@ember/helper';
7
7
  import { on } from '@ember/modifier';
8
+ import { service } from '@ember/service';
8
9
  import didInsert from '@ember/render-modifiers/modifiers/did-insert';
9
10
  import { HdsAlertColorValues, HdsAlertTypeValues } from './types.js';
10
11
  import HdsDismissButton from '../dismiss-button/index.js';
@@ -19,7 +20,7 @@ import { setComponentTemplate } from '@ember/component';
19
20
  import { g, i } from 'decorator-transforms/runtime';
20
21
 
21
22
  /**
22
- * Copyright IBM Corp. 2021, 2025
23
+ * Copyright IBM Corp. 2021, 2026
23
24
  * SPDX-License-Identifier: MPL-2.0
24
25
  */
25
26
  const TYPES = Object.values(HdsAlertTypeValues);
@@ -32,6 +33,13 @@ const MAPPING_COLORS_TO_ICONS = {
32
33
  [HdsAlertColorValues.Warning]: 'alert-triangle',
33
34
  [HdsAlertColorValues.Critical]: 'alert-diamond'
34
35
  };
36
+ const MAPPING_COLORS_TO_CARBON_THEME_ICONS = {
37
+ [HdsAlertColorValues.Neutral]: 'info-fill',
38
+ [HdsAlertColorValues.Highlight]: 'info-fill',
39
+ [HdsAlertColorValues.Success]: 'check-circle-fill',
40
+ [HdsAlertColorValues.Warning]: 'alert-circle-fill',
41
+ [HdsAlertColorValues.Critical]: 'skip'
42
+ };
35
43
  const CONTENT_ELEMENT_SELECTOR = '.hds-alert__content';
36
44
  const TITLE_ELEMENT_SELECTOR = '.hds-alert__title';
37
45
  const DESCRIPTION_ELEMENT_SELECTOR = '.hds-alert__description';
@@ -44,6 +52,10 @@ class HdsAlert extends Component {
44
52
  g(this.prototype, "_ariaLabelledBy", [tracked]);
45
53
  }
46
54
  #_ariaLabelledBy = (i(this, "_ariaLabelledBy"), void 0);
55
+ static {
56
+ g(this.prototype, "hdsTheming", [service]);
57
+ }
58
+ #hdsTheming = (i(this, "hdsTheming"), void 0);
47
59
  constructor(owner, args) {
48
60
  super(owner, args);
49
61
  assert(`@type for "Hds::Alert" must be one of the following: ${TYPES.join(', ')}; received: ${this.args.type}`, TYPES.includes(this.args.type));
@@ -61,7 +73,10 @@ class HdsAlert extends Component {
61
73
  } = this.args;
62
74
  // If `icon` isn't passed, use the pre-defined one from `color`
63
75
  if (icon === undefined) {
64
- if (this.args.type === 'compact') {
76
+ // Carbon theme uses a different set of icons
77
+ if (this.hdsTheming.isCarbonThemeEnabled) {
78
+ return MAPPING_COLORS_TO_CARBON_THEME_ICONS[this.color];
79
+ } else if (this.args.type === 'compact') {
65
80
  // for the "compact" type by default we use filled icons
66
81
  return `${MAPPING_COLORS_TO_ICONS[this.color]}-fill`;
67
82
  } else {
@@ -141,5 +156,5 @@ class HdsAlert extends Component {
141
156
  }
142
157
  }
143
158
 
144
- export { COLORS, DEFAULT_COLOR, MAPPING_COLORS_TO_ICONS, TYPES, HdsAlert as default };
159
+ export { COLORS, DEFAULT_COLOR, MAPPING_COLORS_TO_CARBON_THEME_ICONS, MAPPING_COLORS_TO_ICONS, TYPES, HdsAlert as default };
145
160
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/components/hds/alert/index.gts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2025\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { assert } from '@ember/debug';\nimport { guidFor } from '@ember/object/internals';\nimport { tracked } from '@glimmer/tracking';\nimport { eq } from 'ember-truth-helpers';\nimport { hash } from '@ember/helper';\nimport { on } from '@ember/modifier';\n// eslint-disable-next-line ember/no-at-ember-render-modifiers\nimport didInsert from '@ember/render-modifiers/modifiers/did-insert';\n\nimport type { WithBoundArgs } from '@glint/template';\nimport type Owner from '@ember/owner';\n\nimport { HdsAlertColorValues, HdsAlertTypeValues } from './types.ts';\nimport HdsDismissButton from '../dismiss-button/index.gts';\nimport HdsIcon from '../icon/index.gts';\nimport HdsAlertTitle from './title.gts';\nimport HdsAlertDescription from './description.gts';\nimport HdsButton from '../button/index.gts';\nimport HdsLinkStandalone from '../link/standalone.gts';\nimport HdsYield from '../yield/index.gts';\n\nimport type { HdsAlertColors, HdsAlertTypes } from './types.ts';\nimport type { HdsIconSignature } from '../icon/index.gts';\n\nexport const TYPES: HdsAlertTypes[] = Object.values(HdsAlertTypeValues);\nexport const DEFAULT_COLOR: HdsAlertColors = HdsAlertColorValues.Neutral;\nexport const COLORS: HdsAlertColors[] = Object.values(HdsAlertColorValues);\n\nexport const MAPPING_COLORS_TO_ICONS = {\n [HdsAlertColorValues.Neutral]: 'info',\n [HdsAlertColorValues.Highlight]: 'info',\n [HdsAlertColorValues.Success]: 'check-circle',\n [HdsAlertColorValues.Warning]: 'alert-triangle',\n [HdsAlertColorValues.Critical]: 'alert-diamond',\n} as const;\n\nconst CONTENT_ELEMENT_SELECTOR = '.hds-alert__content';\nconst TITLE_ELEMENT_SELECTOR = '.hds-alert__title';\nconst DESCRIPTION_ELEMENT_SELECTOR = '.hds-alert__description';\n\nexport interface HdsAlertSignature {\n Args: {\n type: HdsAlertTypes;\n color?: HdsAlertColors;\n icon?: HdsIconSignature['Args']['name'] | false;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n onDismiss?: (event: MouseEvent, ...args: any[]) => void;\n };\n Blocks: {\n default: [\n {\n Title?: typeof HdsAlertTitle;\n Description?: typeof HdsAlertDescription;\n Generic?: typeof HdsYield;\n LinkStandalone?: WithBoundArgs<typeof HdsLinkStandalone, 'size'>;\n Button?: WithBoundArgs<typeof HdsButton, 'size'>;\n },\n ];\n };\n Element: HTMLDivElement;\n}\n\nexport default class HdsAlert extends Component<HdsAlertSignature> {\n @tracked private _role?: string;\n @tracked private _ariaLabelledBy?: string;\n\n constructor(owner: Owner, args: HdsAlertSignature['Args']) {\n super(owner, args);\n\n assert(\n `@type for \"Hds::Alert\" must be one of the following: ${TYPES.join(\n ', '\n )}; received: ${this.args.type}`,\n TYPES.includes(this.args.type)\n );\n }\n\n get color(): HdsAlertColors {\n const { color = DEFAULT_COLOR } = this.args;\n\n assert(\n `@color for \"Hds::Alert\" must be one of the following: ${COLORS.join(\n ', '\n )}; received: ${color}`,\n COLORS.includes(color)\n );\n\n return color;\n }\n\n get icon(): HdsIconSignature['Args']['name'] | false {\n const { icon } = this.args;\n\n // If `icon` isn't passed, use the pre-defined one from `color`\n if (icon === undefined) {\n if (this.args.type === 'compact') {\n // for the \"compact\" type by default we use filled icons\n return `${MAPPING_COLORS_TO_ICONS[this.color]}-fill`;\n } else {\n // for all the other types by default we use outlined icons\n return MAPPING_COLORS_TO_ICONS[this.color];\n }\n // If `icon` is set explicitly to false, user doesn't want any icon in the alert\n } else if (icon === false) {\n assert(\n `@icon for \"Hds::Alert\" with @type \"compact\" is required`,\n this.args.type !== 'compact'\n );\n\n return false;\n } else {\n // If a name for `icon` is passed, set HdsIcon to that name\n return icon;\n }\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n get onDismiss(): ((event: MouseEvent, ...args: any[]) => void) | false {\n const { onDismiss } = this.args;\n\n if (typeof onDismiss === 'function') {\n return onDismiss;\n } else {\n return false;\n }\n }\n\n get iconSize(): HdsIconSignature['Args']['size'] {\n if (this.args.type === 'compact') {\n return '16';\n } else {\n return '24';\n }\n }\n\n get classNames(): string {\n const classes = ['hds-alert'];\n\n // Add a class based on the @type argument\n classes.push(`hds-alert--type-${this.args.type}`);\n\n // Add a class based on the @color argument\n classes.push(`hds-alert--color-${this.color}`);\n\n return classes.join(' ');\n }\n\n didInsert = (element: HTMLDivElement): void => {\n const actions = element.querySelectorAll(\n `${CONTENT_ELEMENT_SELECTOR} button, ${CONTENT_ELEMENT_SELECTOR} a`\n );\n\n // an Alert which actually alerts users (has role=\"alert\" & aria-live=\"polite\") as opposed to an informational or promo \"alert\"\n const isSemanticAlert: boolean =\n this.color === 'warning' ||\n this.color === 'critical' ||\n this.color === 'success';\n\n if (isSemanticAlert && actions.length) {\n this._role = 'alertdialog';\n } else if (isSemanticAlert) {\n this._role = 'alert';\n }\n\n // `alertdialog` must have an accessible name so we use either the\n // title or the description as label for the alert\n const label =\n element.querySelector(TITLE_ELEMENT_SELECTOR) ||\n element.querySelector(DESCRIPTION_ELEMENT_SELECTOR);\n if (label) {\n const labelId = label.getAttribute('id') || guidFor(element);\n label.setAttribute('id', labelId);\n this._ariaLabelledBy = labelId;\n }\n };\n\n <template>\n <div\n class={{this.classNames}}\n role={{this._role}}\n aria-live={{if this._role \"polite\"}}\n aria-labelledby={{this._ariaLabelledBy}}\n {{didInsert this.didInsert}}\n ...attributes\n >\n {{#if this.icon}}\n <div class=\"hds-alert__icon\">\n <HdsIcon\n @name={{this.icon}}\n @size={{this.iconSize}}\n @stretched={{true}}\n />\n </div>\n {{/if}}\n\n <div class=\"hds-alert__content\">\n <div\n class=\"hds-alert__text\n {{if\n (eq @type 'compact')\n 'hds-typography-body-100'\n 'hds-typography-body-200'\n }}\"\n >\n {{yield (hash Title=HdsAlertTitle)}}\n {{yield (hash Description=HdsAlertDescription)}}\n </div>\n\n <div class=\"hds-alert__actions\">\n {{yield\n (hash\n Button=(component HdsButton size=\"small\")\n LinkStandalone=(component HdsLinkStandalone size=\"small\")\n )\n }}\n </div>\n {{yield (hash Generic=HdsYield)}}\n </div>\n\n {{#if this.onDismiss}}\n <HdsDismissButton\n class=\"hds-alert__dismiss\"\n {{on \"click\" this.onDismiss}}\n />\n {{/if}}\n </div>\n </template>\n}\n"],"names":["TYPES","Object","values","HdsAlertTypeValues","DEFAULT_COLOR","HdsAlertColorValues","Neutral","COLORS","MAPPING_COLORS_TO_ICONS","Highlight","Success","Warning","Critical","CONTENT_ELEMENT_SELECTOR","TITLE_ELEMENT_SELECTOR","DESCRIPTION_ELEMENT_SELECTOR","HdsAlert","Component","g","prototype","tracked","i","constructor","owner","args","assert","join","type","includes","color","icon","undefined","onDismiss","iconSize","classNames","classes","push","didInsert","element","actions","querySelectorAll","isSemanticAlert","length","_role","label","querySelector","labelId","getAttribute","guidFor","setAttribute","_ariaLabelledBy","setComponentTemplate","precompileTemplate","strictMode","scope","HdsIcon","eq","hash","HdsAlertTitle","HdsAlertDescription","HdsButton","HdsLinkStandalone","HdsYield","HdsDismissButton","on"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/hds/alert/index.gts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2026\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { assert } from '@ember/debug';\nimport { guidFor } from '@ember/object/internals';\nimport { tracked } from '@glimmer/tracking';\nimport { eq } from 'ember-truth-helpers';\nimport { hash } from '@ember/helper';\nimport { on } from '@ember/modifier';\nimport { service } from '@ember/service';\n// eslint-disable-next-line ember/no-at-ember-render-modifiers\nimport didInsert from '@ember/render-modifiers/modifiers/did-insert';\n\nimport type { WithBoundArgs } from '@glint/template';\nimport type Owner from '@ember/owner';\n\nimport { HdsAlertColorValues, HdsAlertTypeValues } from './types.ts';\nimport HdsDismissButton from '../dismiss-button/index.gts';\nimport HdsIcon from '../icon/index.gts';\nimport HdsAlertTitle from './title.gts';\nimport HdsAlertDescription from './description.gts';\nimport HdsButton from '../button/index.gts';\nimport HdsLinkStandalone from '../link/standalone.gts';\nimport HdsYield from '../yield/index.gts';\n\nimport type { HdsAlertColors, HdsAlertTypes } from './types.ts';\nimport type { HdsIconSignature } from '../icon/index.gts';\nimport type HdsThemingService from '../../../services/hds-theming.ts';\n\nexport const TYPES: HdsAlertTypes[] = Object.values(HdsAlertTypeValues);\nexport const DEFAULT_COLOR: HdsAlertColors = HdsAlertColorValues.Neutral;\nexport const COLORS: HdsAlertColors[] = Object.values(HdsAlertColorValues);\n\nexport const MAPPING_COLORS_TO_ICONS = {\n [HdsAlertColorValues.Neutral]: 'info',\n [HdsAlertColorValues.Highlight]: 'info',\n [HdsAlertColorValues.Success]: 'check-circle',\n [HdsAlertColorValues.Warning]: 'alert-triangle',\n [HdsAlertColorValues.Critical]: 'alert-diamond',\n} as const;\n\nexport const MAPPING_COLORS_TO_CARBON_THEME_ICONS = {\n [HdsAlertColorValues.Neutral]: 'info-fill',\n [HdsAlertColorValues.Highlight]: 'info-fill',\n [HdsAlertColorValues.Success]: 'check-circle-fill',\n [HdsAlertColorValues.Warning]: 'alert-circle-fill',\n [HdsAlertColorValues.Critical]: 'skip', // Note: The HDS \"skip\" icon is used because it maps to the Carbon icon used in their critical alerts\n} as const;\n\nconst CONTENT_ELEMENT_SELECTOR = '.hds-alert__content';\nconst TITLE_ELEMENT_SELECTOR = '.hds-alert__title';\nconst DESCRIPTION_ELEMENT_SELECTOR = '.hds-alert__description';\n\nexport interface HdsAlertSignature {\n Args: {\n type: HdsAlertTypes;\n color?: HdsAlertColors;\n icon?: HdsIconSignature['Args']['name'] | false;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n onDismiss?: (event: MouseEvent, ...args: any[]) => void;\n };\n Blocks: {\n default: [\n {\n Title?: typeof HdsAlertTitle;\n Description?: typeof HdsAlertDescription;\n Generic?: typeof HdsYield;\n LinkStandalone?: WithBoundArgs<typeof HdsLinkStandalone, 'size'>;\n Button?: WithBoundArgs<typeof HdsButton, 'size'>;\n },\n ];\n };\n Element: HTMLDivElement;\n}\n\nexport default class HdsAlert extends Component<HdsAlertSignature> {\n @tracked private _role?: string;\n @tracked private _ariaLabelledBy?: string;\n\n @service declare readonly hdsTheming: HdsThemingService;\n\n constructor(owner: Owner, args: HdsAlertSignature['Args']) {\n super(owner, args);\n\n assert(\n `@type for \"Hds::Alert\" must be one of the following: ${TYPES.join(\n ', '\n )}; received: ${this.args.type}`,\n TYPES.includes(this.args.type)\n );\n }\n\n get color(): HdsAlertColors {\n const { color = DEFAULT_COLOR } = this.args;\n\n assert(\n `@color for \"Hds::Alert\" must be one of the following: ${COLORS.join(\n ', '\n )}; received: ${color}`,\n COLORS.includes(color)\n );\n\n return color;\n }\n\n get icon(): HdsIconSignature['Args']['name'] | false {\n const { icon } = this.args;\n\n // If `icon` isn't passed, use the pre-defined one from `color`\n if (icon === undefined) {\n // Carbon theme uses a different set of icons\n if (this.hdsTheming.isCarbonThemeEnabled) {\n return MAPPING_COLORS_TO_CARBON_THEME_ICONS[this.color];\n } else if (this.args.type === 'compact') {\n // for the \"compact\" type by default we use filled icons\n return `${MAPPING_COLORS_TO_ICONS[this.color]}-fill`;\n } else {\n // for all the other types by default we use outlined icons\n return MAPPING_COLORS_TO_ICONS[this.color];\n }\n // If `icon` is set explicitly to false, user doesn't want any icon in the alert\n } else if (icon === false) {\n assert(\n `@icon for \"Hds::Alert\" with @type \"compact\" is required`,\n this.args.type !== 'compact'\n );\n\n return false;\n } else {\n // If a name for `icon` is passed, set HdsIcon to that name\n return icon;\n }\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n get onDismiss(): ((event: MouseEvent, ...args: any[]) => void) | false {\n const { onDismiss } = this.args;\n\n if (typeof onDismiss === 'function') {\n return onDismiss;\n } else {\n return false;\n }\n }\n\n get iconSize(): HdsIconSignature['Args']['size'] {\n if (this.args.type === 'compact') {\n return '16';\n } else {\n return '24';\n }\n }\n\n get classNames(): string {\n const classes = ['hds-alert'];\n\n // Add a class based on the @type argument\n classes.push(`hds-alert--type-${this.args.type}`);\n\n // Add a class based on the @color argument\n classes.push(`hds-alert--color-${this.color}`);\n\n return classes.join(' ');\n }\n\n didInsert = (element: HTMLDivElement): void => {\n const actions = element.querySelectorAll(\n `${CONTENT_ELEMENT_SELECTOR} button, ${CONTENT_ELEMENT_SELECTOR} a`\n );\n\n // an Alert which actually alerts users (has role=\"alert\" & aria-live=\"polite\") as opposed to an informational or promo \"alert\"\n const isSemanticAlert: boolean =\n this.color === 'warning' ||\n this.color === 'critical' ||\n this.color === 'success';\n\n if (isSemanticAlert && actions.length) {\n this._role = 'alertdialog';\n } else if (isSemanticAlert) {\n this._role = 'alert';\n }\n\n // `alertdialog` must have an accessible name so we use either the\n // title or the description as label for the alert\n const label =\n element.querySelector(TITLE_ELEMENT_SELECTOR) ||\n element.querySelector(DESCRIPTION_ELEMENT_SELECTOR);\n if (label) {\n const labelId = label.getAttribute('id') || guidFor(element);\n label.setAttribute('id', labelId);\n this._ariaLabelledBy = labelId;\n }\n };\n\n <template>\n <div\n class={{this.classNames}}\n role={{this._role}}\n aria-live={{if this._role \"polite\"}}\n aria-labelledby={{this._ariaLabelledBy}}\n {{didInsert this.didInsert}}\n ...attributes\n >\n {{#if this.icon}}\n <div class=\"hds-alert__icon\">\n <HdsIcon\n @name={{this.icon}}\n @size={{this.iconSize}}\n @stretched={{true}}\n />\n </div>\n {{/if}}\n\n <div class=\"hds-alert__content\">\n <div\n class=\"hds-alert__text\n {{if\n (eq @type 'compact')\n 'hds-typography-body-100'\n 'hds-typography-body-200'\n }}\"\n >\n {{yield (hash Title=HdsAlertTitle)}}\n {{yield (hash Description=HdsAlertDescription)}}\n </div>\n\n <div class=\"hds-alert__actions\">\n {{yield\n (hash\n Button=(component HdsButton size=\"small\")\n LinkStandalone=(component HdsLinkStandalone size=\"small\")\n )\n }}\n </div>\n {{yield (hash Generic=HdsYield)}}\n </div>\n\n {{#if this.onDismiss}}\n <HdsDismissButton\n class=\"hds-alert__dismiss\"\n {{on \"click\" this.onDismiss}}\n />\n {{/if}}\n </div>\n </template>\n}\n"],"names":["TYPES","Object","values","HdsAlertTypeValues","DEFAULT_COLOR","HdsAlertColorValues","Neutral","COLORS","MAPPING_COLORS_TO_ICONS","Highlight","Success","Warning","Critical","MAPPING_COLORS_TO_CARBON_THEME_ICONS","CONTENT_ELEMENT_SELECTOR","TITLE_ELEMENT_SELECTOR","DESCRIPTION_ELEMENT_SELECTOR","HdsAlert","Component","g","prototype","tracked","i","service","constructor","owner","args","assert","join","type","includes","color","icon","undefined","hdsTheming","isCarbonThemeEnabled","onDismiss","iconSize","classNames","classes","push","didInsert","element","actions","querySelectorAll","isSemanticAlert","length","_role","label","querySelector","labelId","getAttribute","guidFor","setAttribute","_ariaLabelledBy","setComponentTemplate","precompileTemplate","strictMode","scope","HdsIcon","eq","hash","HdsAlertTitle","HdsAlertDescription","HdsButton","HdsLinkStandalone","HdsYield","HdsDismissButton","on"],"mappings":"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"}
@@ -5,7 +5,7 @@ import { precompileTemplate } from '@ember/template-compilation';
5
5
  import { setComponentTemplate } from '@ember/component';
6
6
 
7
7
  /**
8
- * Copyright IBM Corp. 2021, 2025
8
+ * Copyright IBM Corp. 2021, 2026
9
9
  * SPDX-License-Identifier: MPL-2.0
10
10
  */
11
11
  class HdsAlertTitle extends Component {
@@ -1 +1 @@
1
- {"version":3,"file":"title.js","sources":["../../../../src/components/hds/alert/title.gts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2025\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { element } from 'ember-element-helper';\n\nimport { HdsAlertTitleTagValues } from './types.ts';\nimport type { HdsAlertTitleTags } from './types.ts';\n\nexport interface HdsAlertTitleSignature {\n Args: {\n tag?: HdsAlertTitleTags;\n };\n Blocks: {\n default: [];\n };\n Element: HTMLDivElement;\n}\n\nexport default class HdsAlertTitle extends Component<HdsAlertTitleSignature> {\n get componentTag(): HdsAlertTitleTags {\n return this.args.tag ?? HdsAlertTitleTagValues.Div;\n }\n\n <template>\n {{! IMPORTANT: we removed any extra newlines before/after the let to reduce the issues with unexpected whitespaces (see https://github.com/hashicorp/design-system/pull/1652) }}\n {{#let (element this.componentTag) as |Tag|}}<Tag\n class=\"hds-alert__title hds-typography-body-200 hds-font-weight-semibold\"\n ...attributes\n >\n {{yield}}\n </Tag>{{/let}}\n </template>\n}\n"],"names":["HdsAlertTitle","Component","componentTag","args","tag","HdsAlertTitleTagValues","Div","setComponentTemplate","precompileTemplate","strictMode","scope","element"],"mappings":";;;;;;AAAA;;;AAGC;AAkBc,MAAMA,sBAAsBC,SAAA,CAAU;EACnD,IAAIC,eAAkC;IACpC,OAAO,IAAI,CAACC,IAAI,CAACC,GAAG,IAAIC,uBAAuBC,GAAG;AACpD,EAAA;AAEA,EAAA;IAAAC,oBAAA,CAAAC,kBAAA,CAAA,qWAAA,EAQA;MAAAC,UAAA,EAAA,IAAA;AAAAC,MAAAA,KAAA,EAAAA,OAAA;AAAAC,QAAAA;AAAA,OAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;;;"}
1
+ {"version":3,"file":"title.js","sources":["../../../../src/components/hds/alert/title.gts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2026\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { element } from 'ember-element-helper';\n\nimport { HdsAlertTitleTagValues } from './types.ts';\nimport type { HdsAlertTitleTags } from './types.ts';\n\nexport interface HdsAlertTitleSignature {\n Args: {\n tag?: HdsAlertTitleTags;\n };\n Blocks: {\n default: [];\n };\n Element: HTMLDivElement;\n}\n\nexport default class HdsAlertTitle extends Component<HdsAlertTitleSignature> {\n get componentTag(): HdsAlertTitleTags {\n return this.args.tag ?? HdsAlertTitleTagValues.Div;\n }\n\n <template>\n {{! IMPORTANT: we removed any extra newlines before/after the let to reduce the issues with unexpected whitespaces (see https://github.com/hashicorp/design-system/pull/1652) }}\n {{#let (element this.componentTag) as |Tag|}}<Tag\n class=\"hds-alert__title hds-typography-body-200 hds-font-weight-semibold\"\n ...attributes\n >\n {{yield}}\n </Tag>{{/let}}\n </template>\n}\n"],"names":["HdsAlertTitle","Component","componentTag","args","tag","HdsAlertTitleTagValues","Div","setComponentTemplate","precompileTemplate","strictMode","scope","element"],"mappings":";;;;;;AAAA;;;AAGC;AAkBc,MAAMA,sBAAsBC,SAAA,CAAU;EACnD,IAAIC,eAAkC;IACpC,OAAO,IAAI,CAACC,IAAI,CAACC,GAAG,IAAIC,uBAAuBC,GAAG;AACpD,EAAA;AAEA,EAAA;IAAAC,oBAAA,CAAAC,kBAAA,CAAA,qWAAA,EAQA;MAAAC,UAAA,EAAA,IAAA;AAAAC,MAAAA,KAAA,EAAAA,OAAA;AAAAC,QAAAA;AAAA,OAAA;KAAU,CAAA,EAAV,IAAW,CAAA;AAAD;AACZ;;;;"}
@@ -7,7 +7,7 @@ import { precompileTemplate } from '@ember/template-compilation';
7
7
  import { setComponentTemplate } from '@ember/component';
8
8
 
9
9
  /**
10
- * Copyright IBM Corp. 2021, 2025
10
+ * Copyright IBM Corp. 2021, 2026
11
11
  * SPDX-License-Identifier: MPL-2.0
12
12
  */
13
13
  class HdsAppFooterCopyright extends Component {