@hashicorp/design-system-components 5.1.0-rc-20251125211530 → 5.1.0-rc-20251205193010

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 (1026) hide show
  1. package/README.md +1 -1
  2. package/declarations/components/hds/accordion/index.d.ts +1 -1
  3. package/declarations/components/hds/accordion/item/button.d.ts +1 -1
  4. package/declarations/components/hds/accordion/item/index.d.ts +1 -1
  5. package/declarations/components/hds/accordion/types.d.ts +1 -1
  6. package/declarations/components/hds/advanced-table/expandable-tr-group.d.ts +1 -1
  7. package/declarations/components/hds/advanced-table/index.d.ts +1 -11
  8. package/declarations/components/hds/advanced-table/models/column.d.ts +1 -1
  9. package/declarations/components/hds/advanced-table/models/row.d.ts +1 -1
  10. package/declarations/components/hds/advanced-table/models/table.d.ts +1 -1
  11. package/declarations/components/hds/advanced-table/td.d.ts +1 -1
  12. package/declarations/components/hds/advanced-table/th-button-expand.d.ts +1 -1
  13. package/declarations/components/hds/advanced-table/th-button-sort.d.ts +1 -1
  14. package/declarations/components/hds/advanced-table/th-button-tooltip.d.ts +1 -1
  15. package/declarations/components/hds/advanced-table/th-context-menu.d.ts +1 -1
  16. package/declarations/components/hds/advanced-table/th-reorder-drop-target.d.ts +1 -1
  17. package/declarations/components/hds/advanced-table/th-reorder-handle.d.ts +1 -1
  18. package/declarations/components/hds/advanced-table/th-resize-handle.d.ts +1 -1
  19. package/declarations/components/hds/advanced-table/th-selectable.d.ts +1 -1
  20. package/declarations/components/hds/advanced-table/th-sort.d.ts +1 -1
  21. package/declarations/components/hds/advanced-table/th.d.ts +1 -1
  22. package/declarations/components/hds/advanced-table/tr.d.ts +1 -1
  23. package/declarations/components/hds/advanced-table/types.d.ts +1 -1
  24. package/declarations/components/hds/advanced-table/utils.d.ts +1 -1
  25. package/declarations/components/hds/alert/description.d.ts +1 -1
  26. package/declarations/components/hds/alert/index.d.ts +1 -1
  27. package/declarations/components/hds/alert/title.d.ts +1 -1
  28. package/declarations/components/hds/alert/types.d.ts +1 -1
  29. package/declarations/components/hds/app-footer/copyright.d.ts +1 -1
  30. package/declarations/components/hds/app-footer/index.d.ts +1 -1
  31. package/declarations/components/hds/app-footer/item.d.ts +1 -1
  32. package/declarations/components/hds/app-footer/legal-links.d.ts +1 -1
  33. package/declarations/components/hds/app-footer/link.d.ts +1 -1
  34. package/declarations/components/hds/app-footer/status-link.d.ts +1 -1
  35. package/declarations/components/hds/app-footer/types.d.ts +1 -1
  36. package/declarations/components/hds/app-frame/index.d.ts +1 -1
  37. package/declarations/components/hds/app-frame/parts/footer.d.ts +1 -1
  38. package/declarations/components/hds/app-frame/parts/header.d.ts +1 -1
  39. package/declarations/components/hds/app-frame/parts/main.d.ts +1 -1
  40. package/declarations/components/hds/app-frame/parts/modals.d.ts +1 -1
  41. package/declarations/components/hds/app-frame/parts/sidebar.d.ts +1 -1
  42. package/declarations/components/hds/app-header/home-link.d.ts +1 -1
  43. package/declarations/components/hds/app-header/index.d.ts +1 -1
  44. package/declarations/components/hds/app-header/menu-button.d.ts +1 -1
  45. package/declarations/components/hds/app-side-nav/index.d.ts +1 -1
  46. package/declarations/components/hds/app-side-nav/list/back-link.d.ts +1 -1
  47. package/declarations/components/hds/app-side-nav/list/index.d.ts +1 -1
  48. package/declarations/components/hds/app-side-nav/list/item.d.ts +1 -1
  49. package/declarations/components/hds/app-side-nav/list/link.d.ts +1 -1
  50. package/declarations/components/hds/app-side-nav/list/title.d.ts +1 -1
  51. package/declarations/components/hds/app-side-nav/portal/index.d.ts +1 -1
  52. package/declarations/components/hds/app-side-nav/portal/target.d.ts +1 -1
  53. package/declarations/components/hds/app-side-nav/toggle-button.d.ts +1 -1
  54. package/declarations/components/hds/application-state/body.d.ts +1 -1
  55. package/declarations/components/hds/application-state/footer.d.ts +1 -1
  56. package/declarations/components/hds/application-state/header.d.ts +1 -1
  57. package/declarations/components/hds/application-state/index.d.ts +1 -1
  58. package/declarations/components/hds/application-state/media.d.ts +1 -1
  59. package/declarations/components/hds/application-state/types.d.ts +1 -1
  60. package/declarations/components/hds/badge/index.d.ts +1 -1
  61. package/declarations/components/hds/badge/types.d.ts +1 -1
  62. package/declarations/components/hds/badge-count/index.d.ts +1 -1
  63. package/declarations/components/hds/badge-count/types.d.ts +1 -1
  64. package/declarations/components/hds/breadcrumb/index.d.ts +1 -1
  65. package/declarations/components/hds/breadcrumb/item.d.ts +1 -1
  66. package/declarations/components/hds/breadcrumb/truncation.d.ts +1 -1
  67. package/declarations/components/hds/button/index.d.ts +1 -1
  68. package/declarations/components/hds/button/types.d.ts +1 -1
  69. package/declarations/components/hds/button-set/index.d.ts +1 -1
  70. package/declarations/components/hds/card/container.d.ts +1 -1
  71. package/declarations/components/hds/card/types.d.ts +1 -1
  72. package/declarations/components/hds/code-block/copy-button.d.ts +1 -1
  73. package/declarations/components/hds/code-block/description.d.ts +1 -1
  74. package/declarations/components/hds/code-block/index.d.ts +1 -1
  75. package/declarations/components/hds/code-block/title.d.ts +1 -1
  76. package/declarations/components/hds/code-block/types.d.ts +1 -1
  77. package/declarations/components/hds/code-editor/description.d.ts +1 -1
  78. package/declarations/components/hds/code-editor/full-screen-button.d.ts +1 -1
  79. package/declarations/components/hds/code-editor/generic.d.ts +1 -1
  80. package/declarations/components/hds/code-editor/index.d.ts +1 -1
  81. package/declarations/components/hds/code-editor/title.d.ts +1 -1
  82. package/declarations/components/hds/copy/button/index.d.ts +1 -1
  83. package/declarations/components/hds/copy/button/types.d.ts +1 -1
  84. package/declarations/components/hds/copy/snippet/index.d.ts +1 -1
  85. package/declarations/components/hds/copy/snippet/types.d.ts +1 -1
  86. package/declarations/components/hds/dialog-primitive/body.d.ts +1 -1
  87. package/declarations/components/hds/dialog-primitive/description.d.ts +1 -1
  88. package/declarations/components/hds/dialog-primitive/footer.d.ts +1 -1
  89. package/declarations/components/hds/dialog-primitive/header.d.ts +1 -1
  90. package/declarations/components/hds/dialog-primitive/overlay.d.ts +1 -1
  91. package/declarations/components/hds/dialog-primitive/types.d.ts +1 -1
  92. package/declarations/components/hds/dialog-primitive/wrapper.d.ts +1 -1
  93. package/declarations/components/hds/disclosure-primitive/index.d.ts +1 -1
  94. package/declarations/components/hds/dismiss-button/index.d.ts +1 -1
  95. package/declarations/components/hds/dropdown/footer.d.ts +1 -1
  96. package/declarations/components/hds/dropdown/header.d.ts +1 -1
  97. package/declarations/components/hds/dropdown/index.d.ts +1 -1
  98. package/declarations/components/hds/dropdown/list-item/checkbox.d.ts +1 -1
  99. package/declarations/components/hds/dropdown/list-item/checkmark.d.ts +1 -1
  100. package/declarations/components/hds/dropdown/list-item/copy-item.d.ts +1 -1
  101. package/declarations/components/hds/dropdown/list-item/description.d.ts +1 -1
  102. package/declarations/components/hds/dropdown/list-item/generic.d.ts +1 -1
  103. package/declarations/components/hds/dropdown/list-item/interactive.d.ts +1 -1
  104. package/declarations/components/hds/dropdown/list-item/radio.d.ts +1 -1
  105. package/declarations/components/hds/dropdown/list-item/separator.d.ts +1 -1
  106. package/declarations/components/hds/dropdown/list-item/title.d.ts +1 -1
  107. package/declarations/components/hds/dropdown/list-item/types.d.ts +1 -1
  108. package/declarations/components/hds/dropdown/toggle/button.d.ts +1 -1
  109. package/declarations/components/hds/dropdown/toggle/chevron.d.ts +1 -1
  110. package/declarations/components/hds/dropdown/toggle/icon.d.ts +1 -1
  111. package/declarations/components/hds/dropdown/toggle/types.d.ts +1 -1
  112. package/declarations/components/hds/dropdown/types.d.ts +1 -1
  113. package/declarations/components/hds/flyout/index.d.ts +1 -1
  114. package/declarations/components/hds/flyout/types.d.ts +1 -1
  115. package/declarations/components/hds/form/character-count/index.d.ts +1 -1
  116. package/declarations/components/hds/form/checkbox/base.d.ts +1 -1
  117. package/declarations/components/hds/form/checkbox/field.d.ts +1 -1
  118. package/declarations/components/hds/form/checkbox/group.d.ts +1 -1
  119. package/declarations/components/hds/form/error/index.d.ts +1 -1
  120. package/declarations/components/hds/form/error/message.d.ts +1 -1
  121. package/declarations/components/hds/form/field/index.d.ts +1 -1
  122. package/declarations/components/hds/form/field/types.d.ts +1 -1
  123. package/declarations/components/hds/form/fieldset/index.d.ts +1 -1
  124. package/declarations/components/hds/form/fieldset/types.d.ts +1 -1
  125. package/declarations/components/hds/form/file-input/base.d.ts +1 -1
  126. package/declarations/components/hds/form/file-input/field.d.ts +1 -1
  127. package/declarations/components/hds/form/footer/index.d.ts +1 -1
  128. package/declarations/components/hds/form/header/description.d.ts +1 -1
  129. package/declarations/components/hds/form/header/index.d.ts +1 -1
  130. package/declarations/components/hds/form/header/title.d.ts +1 -1
  131. package/declarations/components/hds/form/helper-text/index.d.ts +1 -1
  132. package/declarations/components/hds/form/index.d.ts +1 -1
  133. package/declarations/components/hds/form/indicator/index.d.ts +1 -1
  134. package/declarations/components/hds/form/key-value-inputs/add-row-button.d.ts +1 -1
  135. package/declarations/components/hds/form/key-value-inputs/delete-row-button.d.ts +1 -1
  136. package/declarations/components/hds/form/key-value-inputs/field.d.ts +1 -1
  137. package/declarations/components/hds/form/key-value-inputs/generic.d.ts +1 -1
  138. package/declarations/components/hds/form/key-value-inputs/index.d.ts +1 -1
  139. package/declarations/components/hds/form/label/index.d.ts +1 -1
  140. package/declarations/components/hds/form/legend/index.d.ts +1 -1
  141. package/declarations/components/hds/form/masked-input/base.d.ts +1 -1
  142. package/declarations/components/hds/form/masked-input/field.d.ts +1 -1
  143. package/declarations/components/hds/form/radio/base.d.ts +1 -1
  144. package/declarations/components/hds/form/radio/field.d.ts +1 -1
  145. package/declarations/components/hds/form/radio/group.d.ts +1 -1
  146. package/declarations/components/hds/form/radio-card/description.d.ts +1 -1
  147. package/declarations/components/hds/form/radio-card/group.d.ts +1 -1
  148. package/declarations/components/hds/form/radio-card/index.d.ts +1 -1
  149. package/declarations/components/hds/form/radio-card/label.d.ts +1 -1
  150. package/declarations/components/hds/form/radio-card/types.d.ts +1 -1
  151. package/declarations/components/hds/form/section/header.d.ts +1 -1
  152. package/declarations/components/hds/form/section/index.d.ts +1 -1
  153. package/declarations/components/hds/form/section/multi-field-group/index.d.ts +1 -1
  154. package/declarations/components/hds/form/section/multi-field-group/item.d.ts +1 -1
  155. package/declarations/components/hds/form/select/base.d.ts +1 -1
  156. package/declarations/components/hds/form/select/field.d.ts +1 -1
  157. package/declarations/components/hds/form/separator/index.d.ts +1 -1
  158. package/declarations/components/hds/form/super-select/after-options.d.ts +1 -1
  159. package/declarations/components/hds/form/super-select/multiple/base.d.ts +1 -1
  160. package/declarations/components/hds/form/super-select/multiple/field.d.ts +1 -1
  161. package/declarations/components/hds/form/super-select/option-group.d.ts +1 -1
  162. package/declarations/components/hds/form/super-select/placeholder.d.ts +1 -1
  163. package/declarations/components/hds/form/super-select/single/base.d.ts +1 -1
  164. package/declarations/components/hds/form/super-select/single/field.d.ts +1 -1
  165. package/declarations/components/hds/form/super-select/types.d.ts +1 -1
  166. package/declarations/components/hds/form/text-input/base.d.ts +1 -1
  167. package/declarations/components/hds/form/text-input/field.d.ts +2 -2
  168. package/declarations/components/hds/form/text-input/types.d.ts +1 -1
  169. package/declarations/components/hds/form/textarea/base.d.ts +1 -1
  170. package/declarations/components/hds/form/textarea/field.d.ts +1 -1
  171. package/declarations/components/hds/form/toggle/base.d.ts +1 -1
  172. package/declarations/components/hds/form/toggle/field.d.ts +1 -1
  173. package/declarations/components/hds/form/toggle/group.d.ts +1 -1
  174. package/declarations/components/hds/form/types.d.ts +1 -1
  175. package/declarations/components/hds/form/visibility-toggle/index.d.ts +1 -1
  176. package/declarations/components/hds/icon/index.d.ts +2 -2
  177. package/declarations/components/hds/icon/types.d.ts +1 -1
  178. package/declarations/components/hds/icon-tile/index.d.ts +1 -1
  179. package/declarations/components/hds/icon-tile/types.d.ts +1 -1
  180. package/declarations/components/hds/interactive/index.d.ts +1 -1
  181. package/declarations/components/hds/layout/flex/index.d.ts +1 -1
  182. package/declarations/components/hds/layout/flex/item.d.ts +1 -1
  183. package/declarations/components/hds/layout/flex/types.d.ts +1 -1
  184. package/declarations/components/hds/layout/grid/index.d.ts +1 -1
  185. package/declarations/components/hds/layout/grid/item.d.ts +1 -1
  186. package/declarations/components/hds/layout/grid/types.d.ts +1 -1
  187. package/declarations/components/hds/link/inline.d.ts +1 -1
  188. package/declarations/components/hds/link/standalone.d.ts +1 -1
  189. package/declarations/components/hds/link/types.d.ts +1 -1
  190. package/declarations/components/hds/modal/index.d.ts +1 -1
  191. package/declarations/components/hds/modal/types.d.ts +1 -1
  192. package/declarations/components/hds/page-header/actions.d.ts +1 -1
  193. package/declarations/components/hds/page-header/badges.d.ts +1 -1
  194. package/declarations/components/hds/page-header/description.d.ts +1 -1
  195. package/declarations/components/hds/page-header/index.d.ts +1 -1
  196. package/declarations/components/hds/page-header/subtitle.d.ts +1 -1
  197. package/declarations/components/hds/page-header/title.d.ts +1 -1
  198. package/declarations/components/hds/pagination/compact/index.d.ts +1 -1
  199. package/declarations/components/hds/pagination/info/index.d.ts +1 -1
  200. package/declarations/components/hds/pagination/nav/arrow.d.ts +1 -1
  201. package/declarations/components/hds/pagination/nav/number.d.ts +1 -1
  202. package/declarations/components/hds/pagination/numbered/index.d.ts +1 -1
  203. package/declarations/components/hds/pagination/size-selector/index.d.ts +1 -1
  204. package/declarations/components/hds/pagination/types.d.ts +1 -1
  205. package/declarations/components/hds/popover-primitive/index.d.ts +1 -1
  206. package/declarations/components/hds/reveal/index.d.ts +1 -1
  207. package/declarations/components/hds/reveal/toggle/button.d.ts +1 -1
  208. package/declarations/components/hds/rich-tooltip/bubble.d.ts +1 -1
  209. package/declarations/components/hds/rich-tooltip/index.d.ts +1 -1
  210. package/declarations/components/hds/rich-tooltip/toggle.d.ts +1 -1
  211. package/declarations/components/hds/rich-tooltip/types.d.ts +1 -1
  212. package/declarations/components/hds/segmented-group/index.d.ts +1 -1
  213. package/declarations/components/hds/separator/index.d.ts +1 -1
  214. package/declarations/components/hds/separator/types.d.ts +1 -1
  215. package/declarations/components/hds/side-nav/base.d.ts +1 -1
  216. package/declarations/components/hds/side-nav/header/home-link.d.ts +1 -1
  217. package/declarations/components/hds/side-nav/header/index.d.ts +1 -1
  218. package/declarations/components/hds/side-nav/index.d.ts +1 -1
  219. package/declarations/components/hds/side-nav/list/back-link.d.ts +1 -1
  220. package/declarations/components/hds/side-nav/list/index.d.ts +1 -1
  221. package/declarations/components/hds/side-nav/list/item.d.ts +1 -1
  222. package/declarations/components/hds/side-nav/list/link.d.ts +1 -1
  223. package/declarations/components/hds/side-nav/list/title.d.ts +1 -1
  224. package/declarations/components/hds/side-nav/portal/index.d.ts +1 -1
  225. package/declarations/components/hds/side-nav/portal/target.d.ts +1 -1
  226. package/declarations/components/hds/side-nav/toggle-button.d.ts +1 -1
  227. package/declarations/components/hds/stepper/list/index.d.ts +1 -1
  228. package/declarations/components/hds/stepper/list/step.d.ts +1 -1
  229. package/declarations/components/hds/stepper/nav/index.d.ts +1 -1
  230. package/declarations/components/hds/stepper/nav/panel.d.ts +1 -1
  231. package/declarations/components/hds/stepper/nav/step.d.ts +1 -1
  232. package/declarations/components/hds/stepper/step/indicator.d.ts +1 -1
  233. package/declarations/components/hds/stepper/task/indicator.d.ts +2 -2
  234. package/declarations/components/hds/stepper/types.d.ts +1 -1
  235. package/declarations/components/hds/table/index.d.ts +1 -1
  236. package/declarations/components/hds/table/td.d.ts +1 -1
  237. package/declarations/components/hds/table/th-button-sort.d.ts +1 -1
  238. package/declarations/components/hds/table/th-button-tooltip.d.ts +1 -1
  239. package/declarations/components/hds/table/th-selectable.d.ts +1 -1
  240. package/declarations/components/hds/table/th-sort.d.ts +1 -1
  241. package/declarations/components/hds/table/th.d.ts +1 -1
  242. package/declarations/components/hds/table/tr.d.ts +1 -1
  243. package/declarations/components/hds/table/types.d.ts +1 -1
  244. package/declarations/components/hds/tabs/index.d.ts +1 -1
  245. package/declarations/components/hds/tabs/panel.d.ts +1 -1
  246. package/declarations/components/hds/tabs/tab.d.ts +1 -1
  247. package/declarations/components/hds/tabs/types.d.ts +1 -1
  248. package/declarations/components/hds/tag/index.d.ts +1 -1
  249. package/declarations/components/hds/tag/types.d.ts +1 -1
  250. package/declarations/components/hds/text/body.d.ts +1 -1
  251. package/declarations/components/hds/text/code.d.ts +1 -1
  252. package/declarations/components/hds/text/display.d.ts +1 -1
  253. package/declarations/components/hds/text/index.d.ts +1 -1
  254. package/declarations/components/hds/text/types.d.ts +1 -1
  255. package/declarations/components/hds/time/index.d.ts +1 -1
  256. package/declarations/components/hds/time/range.d.ts +1 -1
  257. package/declarations/components/hds/time/single.d.ts +1 -1
  258. package/declarations/components/hds/toast/index.d.ts +1 -1
  259. package/declarations/components/hds/tooltip-button/index.d.ts +1 -1
  260. package/declarations/components/hds/tooltip-button/types.d.ts +1 -1
  261. package/declarations/components/hds/yield/index.d.ts +1 -1
  262. package/declarations/components.d.ts +1 -13
  263. package/declarations/helpers/hds-format-date.d.ts +1 -1
  264. package/declarations/helpers/hds-format-relative.d.ts +1 -1
  265. package/declarations/helpers/hds-link-to-models.d.ts +1 -1
  266. package/declarations/helpers/hds-link-to-query.d.ts +1 -1
  267. package/declarations/helpers/hds-t.d.ts +1 -1
  268. package/declarations/helpers.d.ts +1 -1
  269. package/declarations/instance-initializers/load-sprite.d.ts +1 -1
  270. package/declarations/modifiers/hds-advanced-table-cell/dom-management.d.ts +1 -1
  271. package/declarations/modifiers/hds-advanced-table-cell/keyboard-navigation.d.ts +1 -1
  272. package/declarations/modifiers/hds-advanced-table-cell.d.ts +1 -1
  273. package/declarations/modifiers/hds-anchored-position.d.ts +1 -1
  274. package/declarations/modifiers/hds-clipboard.d.ts +1 -1
  275. package/declarations/modifiers/hds-code-editor/highlight-styles/hds-dark-highlight-style.d.ts +1 -1
  276. package/declarations/modifiers/hds-code-editor/languages/rego.d.ts +1 -1
  277. package/declarations/modifiers/hds-code-editor/languages/sentinel.d.ts +1 -1
  278. package/declarations/modifiers/hds-code-editor/linters/json-linter.d.ts +1 -1
  279. package/declarations/modifiers/hds-code-editor/palettes/hds-dark-palette.d.ts +1 -1
  280. package/declarations/modifiers/hds-code-editor/themes/hds-dark-theme.d.ts +1 -1
  281. package/declarations/modifiers/hds-code-editor/types.d.ts +1 -1
  282. package/declarations/modifiers/hds-code-editor.d.ts +4 -2
  283. package/declarations/modifiers/hds-register-event.d.ts +1 -1
  284. package/declarations/modifiers/hds-tooltip.d.ts +1 -1
  285. package/declarations/modifiers.d.ts +1 -1
  286. package/declarations/re-exports/codemirror.d.ts +5 -0
  287. package/declarations/services/hds-intl.d.ts +1 -1
  288. package/declarations/services/hds-time-types.d.ts +1 -1
  289. package/declarations/services/hds-time.d.ts +1 -1
  290. package/declarations/services.d.ts +1 -1
  291. package/declarations/template-registry.d.ts +1 -34
  292. package/declarations/utils/hds-aria-described-by.d.ts +1 -1
  293. package/declarations/utils/hds-breakpoints.d.ts +1 -1
  294. package/declarations/utils/hds-get-element-id.d.ts +1 -1
  295. package/declarations/utils/hds-resolve-link-to-external.d.ts +1 -1
  296. package/dist/README.md +1 -1
  297. package/dist/components/hds/accordion/index.js +2 -2
  298. package/dist/components/hds/accordion/index.js.map +1 -1
  299. package/dist/components/hds/accordion/item/button.js +2 -2
  300. package/dist/components/hds/accordion/item/button.js.map +1 -1
  301. package/dist/components/hds/accordion/item/index.js +2 -2
  302. package/dist/components/hds/accordion/item/index.js.map +1 -1
  303. package/dist/components/hds/accordion/types.js +1 -1
  304. package/dist/components/hds/accordion/types.js.map +1 -1
  305. package/dist/components/hds/advanced-table/expandable-tr-group.js +2 -2
  306. package/dist/components/hds/advanced-table/expandable-tr-group.js.map +1 -1
  307. package/dist/components/hds/advanced-table/index.js +10 -12
  308. package/dist/components/hds/advanced-table/index.js.map +1 -1
  309. package/dist/components/hds/advanced-table/models/column.js +1 -1
  310. package/dist/components/hds/advanced-table/models/column.js.map +1 -1
  311. package/dist/components/hds/advanced-table/models/row.js +1 -1
  312. package/dist/components/hds/advanced-table/models/row.js.map +1 -1
  313. package/dist/components/hds/advanced-table/models/table.js +1 -1
  314. package/dist/components/hds/advanced-table/models/table.js.map +1 -1
  315. package/dist/components/hds/advanced-table/td.js +2 -2
  316. package/dist/components/hds/advanced-table/td.js.map +1 -1
  317. package/dist/components/hds/advanced-table/th-button-expand.js +2 -2
  318. package/dist/components/hds/advanced-table/th-button-expand.js.map +1 -1
  319. package/dist/components/hds/advanced-table/th-button-sort.js +2 -2
  320. package/dist/components/hds/advanced-table/th-button-sort.js.map +1 -1
  321. package/dist/components/hds/advanced-table/th-button-tooltip.js +2 -2
  322. package/dist/components/hds/advanced-table/th-button-tooltip.js.map +1 -1
  323. package/dist/components/hds/advanced-table/th-context-menu.js +2 -2
  324. package/dist/components/hds/advanced-table/th-context-menu.js.map +1 -1
  325. package/dist/components/hds/advanced-table/th-reorder-drop-target.js +2 -2
  326. package/dist/components/hds/advanced-table/th-reorder-drop-target.js.map +1 -1
  327. package/dist/components/hds/advanced-table/th-reorder-handle.js +2 -2
  328. package/dist/components/hds/advanced-table/th-reorder-handle.js.map +1 -1
  329. package/dist/components/hds/advanced-table/th-resize-handle.js +2 -2
  330. package/dist/components/hds/advanced-table/th-resize-handle.js.map +1 -1
  331. package/dist/components/hds/advanced-table/th-selectable.js +2 -2
  332. package/dist/components/hds/advanced-table/th-selectable.js.map +1 -1
  333. package/dist/components/hds/advanced-table/th-sort.js +2 -2
  334. package/dist/components/hds/advanced-table/th-sort.js.map +1 -1
  335. package/dist/components/hds/advanced-table/th.js +2 -2
  336. package/dist/components/hds/advanced-table/th.js.map +1 -1
  337. package/dist/components/hds/advanced-table/tr.js +2 -2
  338. package/dist/components/hds/advanced-table/tr.js.map +1 -1
  339. package/dist/components/hds/advanced-table/types.js +1 -1
  340. package/dist/components/hds/advanced-table/types.js.map +1 -1
  341. package/dist/components/hds/advanced-table/utils.js +1 -1
  342. package/dist/components/hds/advanced-table/utils.js.map +1 -1
  343. package/dist/components/hds/alert/description.js +2 -2
  344. package/dist/components/hds/alert/description.js.map +1 -1
  345. package/dist/components/hds/alert/index.js +2 -2
  346. package/dist/components/hds/alert/index.js.map +1 -1
  347. package/dist/components/hds/alert/title.js +2 -2
  348. package/dist/components/hds/alert/title.js.map +1 -1
  349. package/dist/components/hds/alert/types.js +1 -1
  350. package/dist/components/hds/alert/types.js.map +1 -1
  351. package/dist/components/hds/app-footer/copyright.js +2 -2
  352. package/dist/components/hds/app-footer/copyright.js.map +1 -1
  353. package/dist/components/hds/app-footer/index.js +2 -2
  354. package/dist/components/hds/app-footer/index.js.map +1 -1
  355. package/dist/components/hds/app-footer/item.js +2 -2
  356. package/dist/components/hds/app-footer/item.js.map +1 -1
  357. package/dist/components/hds/app-footer/legal-links.js +2 -2
  358. package/dist/components/hds/app-footer/legal-links.js.map +1 -1
  359. package/dist/components/hds/app-footer/link.js +2 -2
  360. package/dist/components/hds/app-footer/link.js.map +1 -1
  361. package/dist/components/hds/app-footer/status-link.js +2 -2
  362. package/dist/components/hds/app-footer/status-link.js.map +1 -1
  363. package/dist/components/hds/app-footer/types.js +1 -1
  364. package/dist/components/hds/app-footer/types.js.map +1 -1
  365. package/dist/components/hds/app-frame/index.js +2 -2
  366. package/dist/components/hds/app-frame/index.js.map +1 -1
  367. package/dist/components/hds/app-frame/parts/footer.js +2 -2
  368. package/dist/components/hds/app-frame/parts/footer.js.map +1 -1
  369. package/dist/components/hds/app-frame/parts/header.js +2 -2
  370. package/dist/components/hds/app-frame/parts/header.js.map +1 -1
  371. package/dist/components/hds/app-frame/parts/main.js +2 -2
  372. package/dist/components/hds/app-frame/parts/main.js.map +1 -1
  373. package/dist/components/hds/app-frame/parts/modals.js +2 -2
  374. package/dist/components/hds/app-frame/parts/modals.js.map +1 -1
  375. package/dist/components/hds/app-frame/parts/sidebar.js +2 -2
  376. package/dist/components/hds/app-frame/parts/sidebar.js.map +1 -1
  377. package/dist/components/hds/app-header/home-link.js +2 -2
  378. package/dist/components/hds/app-header/home-link.js.map +1 -1
  379. package/dist/components/hds/app-header/index.js +2 -2
  380. package/dist/components/hds/app-header/index.js.map +1 -1
  381. package/dist/components/hds/app-header/menu-button.js +2 -2
  382. package/dist/components/hds/app-header/menu-button.js.map +1 -1
  383. package/dist/components/hds/app-side-nav/index.js +2 -2
  384. package/dist/components/hds/app-side-nav/index.js.map +1 -1
  385. package/dist/components/hds/app-side-nav/list/back-link.js +2 -2
  386. package/dist/components/hds/app-side-nav/list/back-link.js.map +1 -1
  387. package/dist/components/hds/app-side-nav/list/index.js +2 -2
  388. package/dist/components/hds/app-side-nav/list/index.js.map +1 -1
  389. package/dist/components/hds/app-side-nav/list/item.js +2 -2
  390. package/dist/components/hds/app-side-nav/list/item.js.map +1 -1
  391. package/dist/components/hds/app-side-nav/list/link.js +2 -2
  392. package/dist/components/hds/app-side-nav/list/link.js.map +1 -1
  393. package/dist/components/hds/app-side-nav/list/title.js +2 -2
  394. package/dist/components/hds/app-side-nav/list/title.js.map +1 -1
  395. package/dist/components/hds/app-side-nav/portal/index.js +2 -2
  396. package/dist/components/hds/app-side-nav/portal/index.js.map +1 -1
  397. package/dist/components/hds/app-side-nav/portal/target.js +2 -2
  398. package/dist/components/hds/app-side-nav/portal/target.js.map +1 -1
  399. package/dist/components/hds/app-side-nav/toggle-button.js +2 -2
  400. package/dist/components/hds/app-side-nav/toggle-button.js.map +1 -1
  401. package/dist/components/hds/application-state/body.js +2 -2
  402. package/dist/components/hds/application-state/body.js.map +1 -1
  403. package/dist/components/hds/application-state/footer.js +2 -2
  404. package/dist/components/hds/application-state/footer.js.map +1 -1
  405. package/dist/components/hds/application-state/header.js +2 -2
  406. package/dist/components/hds/application-state/header.js.map +1 -1
  407. package/dist/components/hds/application-state/index.js +2 -2
  408. package/dist/components/hds/application-state/index.js.map +1 -1
  409. package/dist/components/hds/application-state/media.js +2 -2
  410. package/dist/components/hds/application-state/media.js.map +1 -1
  411. package/dist/components/hds/application-state/types.js +1 -1
  412. package/dist/components/hds/application-state/types.js.map +1 -1
  413. package/dist/components/hds/badge/index.js +2 -2
  414. package/dist/components/hds/badge/index.js.map +1 -1
  415. package/dist/components/hds/badge/types.js +1 -1
  416. package/dist/components/hds/badge/types.js.map +1 -1
  417. package/dist/components/hds/badge-count/index.js +2 -2
  418. package/dist/components/hds/badge-count/index.js.map +1 -1
  419. package/dist/components/hds/badge-count/types.js +1 -1
  420. package/dist/components/hds/badge-count/types.js.map +1 -1
  421. package/dist/components/hds/breadcrumb/index.js +2 -2
  422. package/dist/components/hds/breadcrumb/index.js.map +1 -1
  423. package/dist/components/hds/breadcrumb/item.js +2 -2
  424. package/dist/components/hds/breadcrumb/item.js.map +1 -1
  425. package/dist/components/hds/breadcrumb/truncation.js +2 -2
  426. package/dist/components/hds/breadcrumb/truncation.js.map +1 -1
  427. package/dist/components/hds/button/index.js +2 -2
  428. package/dist/components/hds/button/index.js.map +1 -1
  429. package/dist/components/hds/button/types.js +1 -1
  430. package/dist/components/hds/button/types.js.map +1 -1
  431. package/dist/components/hds/button-set/index.js +2 -2
  432. package/dist/components/hds/button-set/index.js.map +1 -1
  433. package/dist/components/hds/card/container.js +2 -2
  434. package/dist/components/hds/card/container.js.map +1 -1
  435. package/dist/components/hds/card/types.js +1 -1
  436. package/dist/components/hds/card/types.js.map +1 -1
  437. package/dist/components/hds/code-block/copy-button.js +2 -2
  438. package/dist/components/hds/code-block/copy-button.js.map +1 -1
  439. package/dist/components/hds/code-block/description.js +2 -2
  440. package/dist/components/hds/code-block/description.js.map +1 -1
  441. package/dist/components/hds/code-block/index.js +2 -2
  442. package/dist/components/hds/code-block/index.js.map +1 -1
  443. package/dist/components/hds/code-block/title.js +2 -2
  444. package/dist/components/hds/code-block/title.js.map +1 -1
  445. package/dist/components/hds/code-block/types.js +1 -1
  446. package/dist/components/hds/code-block/types.js.map +1 -1
  447. package/dist/components/hds/code-editor/description.js +2 -2
  448. package/dist/components/hds/code-editor/description.js.map +1 -1
  449. package/dist/components/hds/code-editor/full-screen-button.js +2 -2
  450. package/dist/components/hds/code-editor/full-screen-button.js.map +1 -1
  451. package/dist/components/hds/code-editor/generic.js +2 -2
  452. package/dist/components/hds/code-editor/generic.js.map +1 -1
  453. package/dist/components/hds/code-editor/index.js +2 -2
  454. package/dist/components/hds/code-editor/index.js.map +1 -1
  455. package/dist/components/hds/code-editor/title.js +2 -2
  456. package/dist/components/hds/code-editor/title.js.map +1 -1
  457. package/dist/components/hds/copy/button/index.js +2 -2
  458. package/dist/components/hds/copy/button/index.js.map +1 -1
  459. package/dist/components/hds/copy/button/types.js +1 -1
  460. package/dist/components/hds/copy/button/types.js.map +1 -1
  461. package/dist/components/hds/copy/snippet/index.js +2 -2
  462. package/dist/components/hds/copy/snippet/index.js.map +1 -1
  463. package/dist/components/hds/copy/snippet/types.js +1 -1
  464. package/dist/components/hds/copy/snippet/types.js.map +1 -1
  465. package/dist/components/hds/dialog-primitive/body.js +2 -2
  466. package/dist/components/hds/dialog-primitive/body.js.map +1 -1
  467. package/dist/components/hds/dialog-primitive/description.js +2 -2
  468. package/dist/components/hds/dialog-primitive/description.js.map +1 -1
  469. package/dist/components/hds/dialog-primitive/footer.js +2 -2
  470. package/dist/components/hds/dialog-primitive/footer.js.map +1 -1
  471. package/dist/components/hds/dialog-primitive/header.js +2 -2
  472. package/dist/components/hds/dialog-primitive/header.js.map +1 -1
  473. package/dist/components/hds/dialog-primitive/overlay.js +2 -2
  474. package/dist/components/hds/dialog-primitive/overlay.js.map +1 -1
  475. package/dist/components/hds/dialog-primitive/types.js +1 -1
  476. package/dist/components/hds/dialog-primitive/types.js.map +1 -1
  477. package/dist/components/hds/dialog-primitive/wrapper.js +2 -2
  478. package/dist/components/hds/dialog-primitive/wrapper.js.map +1 -1
  479. package/dist/components/hds/disclosure-primitive/index.js +2 -2
  480. package/dist/components/hds/disclosure-primitive/index.js.map +1 -1
  481. package/dist/components/hds/dismiss-button/index.js +2 -2
  482. package/dist/components/hds/dismiss-button/index.js.map +1 -1
  483. package/dist/components/hds/dropdown/footer.js +2 -2
  484. package/dist/components/hds/dropdown/footer.js.map +1 -1
  485. package/dist/components/hds/dropdown/header.js +2 -2
  486. package/dist/components/hds/dropdown/header.js.map +1 -1
  487. package/dist/components/hds/dropdown/index.js +2 -2
  488. package/dist/components/hds/dropdown/index.js.map +1 -1
  489. package/dist/components/hds/dropdown/list-item/checkbox.js +2 -2
  490. package/dist/components/hds/dropdown/list-item/checkbox.js.map +1 -1
  491. package/dist/components/hds/dropdown/list-item/checkmark.js +2 -2
  492. package/dist/components/hds/dropdown/list-item/checkmark.js.map +1 -1
  493. package/dist/components/hds/dropdown/list-item/copy-item.js +2 -2
  494. package/dist/components/hds/dropdown/list-item/copy-item.js.map +1 -1
  495. package/dist/components/hds/dropdown/list-item/description.js +2 -2
  496. package/dist/components/hds/dropdown/list-item/description.js.map +1 -1
  497. package/dist/components/hds/dropdown/list-item/generic.js +2 -2
  498. package/dist/components/hds/dropdown/list-item/generic.js.map +1 -1
  499. package/dist/components/hds/dropdown/list-item/interactive.js +2 -2
  500. package/dist/components/hds/dropdown/list-item/interactive.js.map +1 -1
  501. package/dist/components/hds/dropdown/list-item/radio.js +2 -2
  502. package/dist/components/hds/dropdown/list-item/radio.js.map +1 -1
  503. package/dist/components/hds/dropdown/list-item/separator.js +2 -2
  504. package/dist/components/hds/dropdown/list-item/separator.js.map +1 -1
  505. package/dist/components/hds/dropdown/list-item/title.js +2 -2
  506. package/dist/components/hds/dropdown/list-item/title.js.map +1 -1
  507. package/dist/components/hds/dropdown/list-item/types.js +1 -1
  508. package/dist/components/hds/dropdown/list-item/types.js.map +1 -1
  509. package/dist/components/hds/dropdown/toggle/button.js +2 -2
  510. package/dist/components/hds/dropdown/toggle/button.js.map +1 -1
  511. package/dist/components/hds/dropdown/toggle/chevron.js +2 -2
  512. package/dist/components/hds/dropdown/toggle/chevron.js.map +1 -1
  513. package/dist/components/hds/dropdown/toggle/icon.js +2 -2
  514. package/dist/components/hds/dropdown/toggle/icon.js.map +1 -1
  515. package/dist/components/hds/dropdown/toggle/types.js +1 -1
  516. package/dist/components/hds/dropdown/toggle/types.js.map +1 -1
  517. package/dist/components/hds/dropdown/types.js +1 -1
  518. package/dist/components/hds/dropdown/types.js.map +1 -1
  519. package/dist/components/hds/flyout/index.js +2 -2
  520. package/dist/components/hds/flyout/index.js.map +1 -1
  521. package/dist/components/hds/flyout/types.js +1 -1
  522. package/dist/components/hds/flyout/types.js.map +1 -1
  523. package/dist/components/hds/form/character-count/index.js +2 -2
  524. package/dist/components/hds/form/character-count/index.js.map +1 -1
  525. package/dist/components/hds/form/checkbox/base.js +2 -2
  526. package/dist/components/hds/form/checkbox/base.js.map +1 -1
  527. package/dist/components/hds/form/checkbox/field.js +2 -2
  528. package/dist/components/hds/form/checkbox/field.js.map +1 -1
  529. package/dist/components/hds/form/checkbox/group.js +2 -2
  530. package/dist/components/hds/form/checkbox/group.js.map +1 -1
  531. package/dist/components/hds/form/error/index.js +2 -2
  532. package/dist/components/hds/form/error/index.js.map +1 -1
  533. package/dist/components/hds/form/error/message.js +2 -2
  534. package/dist/components/hds/form/error/message.js.map +1 -1
  535. package/dist/components/hds/form/field/index.js +2 -2
  536. package/dist/components/hds/form/field/index.js.map +1 -1
  537. package/dist/components/hds/form/field/types.js +1 -1
  538. package/dist/components/hds/form/field/types.js.map +1 -1
  539. package/dist/components/hds/form/fieldset/index.js +2 -2
  540. package/dist/components/hds/form/fieldset/index.js.map +1 -1
  541. package/dist/components/hds/form/fieldset/types.js +1 -1
  542. package/dist/components/hds/form/fieldset/types.js.map +1 -1
  543. package/dist/components/hds/form/file-input/base.js +2 -2
  544. package/dist/components/hds/form/file-input/base.js.map +1 -1
  545. package/dist/components/hds/form/file-input/field.js +2 -2
  546. package/dist/components/hds/form/file-input/field.js.map +1 -1
  547. package/dist/components/hds/form/footer/index.js +2 -2
  548. package/dist/components/hds/form/footer/index.js.map +1 -1
  549. package/dist/components/hds/form/header/description.js +2 -2
  550. package/dist/components/hds/form/header/description.js.map +1 -1
  551. package/dist/components/hds/form/header/index.js +2 -2
  552. package/dist/components/hds/form/header/index.js.map +1 -1
  553. package/dist/components/hds/form/header/title.js +2 -2
  554. package/dist/components/hds/form/header/title.js.map +1 -1
  555. package/dist/components/hds/form/helper-text/index.js +2 -2
  556. package/dist/components/hds/form/helper-text/index.js.map +1 -1
  557. package/dist/components/hds/form/index.js +2 -2
  558. package/dist/components/hds/form/index.js.map +1 -1
  559. package/dist/components/hds/form/indicator/index.js +2 -2
  560. package/dist/components/hds/form/indicator/index.js.map +1 -1
  561. package/dist/components/hds/form/key-value-inputs/add-row-button.js +2 -2
  562. package/dist/components/hds/form/key-value-inputs/add-row-button.js.map +1 -1
  563. package/dist/components/hds/form/key-value-inputs/delete-row-button.js +2 -2
  564. package/dist/components/hds/form/key-value-inputs/delete-row-button.js.map +1 -1
  565. package/dist/components/hds/form/key-value-inputs/field.js +2 -2
  566. package/dist/components/hds/form/key-value-inputs/field.js.map +1 -1
  567. package/dist/components/hds/form/key-value-inputs/generic.js +2 -2
  568. package/dist/components/hds/form/key-value-inputs/generic.js.map +1 -1
  569. package/dist/components/hds/form/key-value-inputs/index.js +2 -2
  570. package/dist/components/hds/form/key-value-inputs/index.js.map +1 -1
  571. package/dist/components/hds/form/label/index.js +2 -2
  572. package/dist/components/hds/form/label/index.js.map +1 -1
  573. package/dist/components/hds/form/legend/index.js +2 -2
  574. package/dist/components/hds/form/legend/index.js.map +1 -1
  575. package/dist/components/hds/form/masked-input/base.js +2 -2
  576. package/dist/components/hds/form/masked-input/base.js.map +1 -1
  577. package/dist/components/hds/form/masked-input/field.js +2 -2
  578. package/dist/components/hds/form/masked-input/field.js.map +1 -1
  579. package/dist/components/hds/form/radio/base.js +2 -2
  580. package/dist/components/hds/form/radio/base.js.map +1 -1
  581. package/dist/components/hds/form/radio/field.js +2 -2
  582. package/dist/components/hds/form/radio/field.js.map +1 -1
  583. package/dist/components/hds/form/radio/group.js +2 -2
  584. package/dist/components/hds/form/radio/group.js.map +1 -1
  585. package/dist/components/hds/form/radio-card/description.js +2 -2
  586. package/dist/components/hds/form/radio-card/description.js.map +1 -1
  587. package/dist/components/hds/form/radio-card/group.js +2 -2
  588. package/dist/components/hds/form/radio-card/group.js.map +1 -1
  589. package/dist/components/hds/form/radio-card/index.js +2 -2
  590. package/dist/components/hds/form/radio-card/index.js.map +1 -1
  591. package/dist/components/hds/form/radio-card/label.js +2 -2
  592. package/dist/components/hds/form/radio-card/label.js.map +1 -1
  593. package/dist/components/hds/form/radio-card/types.js +1 -1
  594. package/dist/components/hds/form/radio-card/types.js.map +1 -1
  595. package/dist/components/hds/form/section/header.js +2 -2
  596. package/dist/components/hds/form/section/header.js.map +1 -1
  597. package/dist/components/hds/form/section/index.js +2 -2
  598. package/dist/components/hds/form/section/index.js.map +1 -1
  599. package/dist/components/hds/form/section/multi-field-group/index.js +2 -2
  600. package/dist/components/hds/form/section/multi-field-group/index.js.map +1 -1
  601. package/dist/components/hds/form/section/multi-field-group/item.js +2 -2
  602. package/dist/components/hds/form/section/multi-field-group/item.js.map +1 -1
  603. package/dist/components/hds/form/select/base.js +2 -2
  604. package/dist/components/hds/form/select/base.js.map +1 -1
  605. package/dist/components/hds/form/select/field.js +2 -2
  606. package/dist/components/hds/form/select/field.js.map +1 -1
  607. package/dist/components/hds/form/separator/index.js +2 -2
  608. package/dist/components/hds/form/separator/index.js.map +1 -1
  609. package/dist/components/hds/form/super-select/after-options.js +2 -2
  610. package/dist/components/hds/form/super-select/after-options.js.map +1 -1
  611. package/dist/components/hds/form/super-select/multiple/base.js +2 -2
  612. package/dist/components/hds/form/super-select/multiple/base.js.map +1 -1
  613. package/dist/components/hds/form/super-select/multiple/field.js +2 -2
  614. package/dist/components/hds/form/super-select/multiple/field.js.map +1 -1
  615. package/dist/components/hds/form/super-select/option-group.js +2 -2
  616. package/dist/components/hds/form/super-select/option-group.js.map +1 -1
  617. package/dist/components/hds/form/super-select/placeholder.js +2 -2
  618. package/dist/components/hds/form/super-select/placeholder.js.map +1 -1
  619. package/dist/components/hds/form/super-select/single/base.js +2 -2
  620. package/dist/components/hds/form/super-select/single/base.js.map +1 -1
  621. package/dist/components/hds/form/super-select/single/field.js +2 -2
  622. package/dist/components/hds/form/super-select/single/field.js.map +1 -1
  623. package/dist/components/hds/form/super-select/types.js +1 -1
  624. package/dist/components/hds/form/super-select/types.js.map +1 -1
  625. package/dist/components/hds/form/text-input/base.js +2 -2
  626. package/dist/components/hds/form/text-input/base.js.map +1 -1
  627. package/dist/components/hds/form/text-input/field.js +2 -2
  628. package/dist/components/hds/form/text-input/field.js.map +1 -1
  629. package/dist/components/hds/form/text-input/types.js +1 -1
  630. package/dist/components/hds/form/text-input/types.js.map +1 -1
  631. package/dist/components/hds/form/textarea/base.js +2 -2
  632. package/dist/components/hds/form/textarea/base.js.map +1 -1
  633. package/dist/components/hds/form/textarea/field.js +2 -2
  634. package/dist/components/hds/form/textarea/field.js.map +1 -1
  635. package/dist/components/hds/form/toggle/base.js +2 -2
  636. package/dist/components/hds/form/toggle/base.js.map +1 -1
  637. package/dist/components/hds/form/toggle/field.js +2 -2
  638. package/dist/components/hds/form/toggle/field.js.map +1 -1
  639. package/dist/components/hds/form/toggle/group.js +2 -2
  640. package/dist/components/hds/form/toggle/group.js.map +1 -1
  641. package/dist/components/hds/form/types.js +1 -1
  642. package/dist/components/hds/form/types.js.map +1 -1
  643. package/dist/components/hds/form/visibility-toggle/index.js +2 -2
  644. package/dist/components/hds/form/visibility-toggle/index.js.map +1 -1
  645. package/dist/components/hds/icon/index.js +2 -2
  646. package/dist/components/hds/icon/index.js.map +1 -1
  647. package/dist/components/hds/icon/types.js +1 -1
  648. package/dist/components/hds/icon/types.js.map +1 -1
  649. package/dist/components/hds/icon-tile/index.js +2 -2
  650. package/dist/components/hds/icon-tile/index.js.map +1 -1
  651. package/dist/components/hds/icon-tile/types.js +1 -1
  652. package/dist/components/hds/icon-tile/types.js.map +1 -1
  653. package/dist/components/hds/interactive/index.js +1 -1
  654. package/dist/components/hds/interactive/index.js.map +1 -1
  655. package/dist/components/hds/layout/flex/index.js +2 -2
  656. package/dist/components/hds/layout/flex/index.js.map +1 -1
  657. package/dist/components/hds/layout/flex/item.js +2 -2
  658. package/dist/components/hds/layout/flex/item.js.map +1 -1
  659. package/dist/components/hds/layout/flex/types.js +1 -1
  660. package/dist/components/hds/layout/flex/types.js.map +1 -1
  661. package/dist/components/hds/layout/grid/index.js +2 -2
  662. package/dist/components/hds/layout/grid/index.js.map +1 -1
  663. package/dist/components/hds/layout/grid/item.js +2 -2
  664. package/dist/components/hds/layout/grid/item.js.map +1 -1
  665. package/dist/components/hds/layout/grid/types.js +1 -1
  666. package/dist/components/hds/layout/grid/types.js.map +1 -1
  667. package/dist/components/hds/link/inline.js +1 -1
  668. package/dist/components/hds/link/inline.js.map +1 -1
  669. package/dist/components/hds/link/standalone.js +1 -1
  670. package/dist/components/hds/link/standalone.js.map +1 -1
  671. package/dist/components/hds/link/types.js +1 -1
  672. package/dist/components/hds/link/types.js.map +1 -1
  673. package/dist/components/hds/modal/index.js +2 -2
  674. package/dist/components/hds/modal/index.js.map +1 -1
  675. package/dist/components/hds/modal/types.js +1 -1
  676. package/dist/components/hds/modal/types.js.map +1 -1
  677. package/dist/components/hds/page-header/actions.js +2 -2
  678. package/dist/components/hds/page-header/actions.js.map +1 -1
  679. package/dist/components/hds/page-header/badges.js +2 -2
  680. package/dist/components/hds/page-header/badges.js.map +1 -1
  681. package/dist/components/hds/page-header/description.js +2 -2
  682. package/dist/components/hds/page-header/description.js.map +1 -1
  683. package/dist/components/hds/page-header/index.js +2 -2
  684. package/dist/components/hds/page-header/index.js.map +1 -1
  685. package/dist/components/hds/page-header/subtitle.js +2 -2
  686. package/dist/components/hds/page-header/subtitle.js.map +1 -1
  687. package/dist/components/hds/page-header/title.js +2 -2
  688. package/dist/components/hds/page-header/title.js.map +1 -1
  689. package/dist/components/hds/pagination/compact/index.js +2 -2
  690. package/dist/components/hds/pagination/compact/index.js.map +1 -1
  691. package/dist/components/hds/pagination/info/index.js +2 -2
  692. package/dist/components/hds/pagination/info/index.js.map +1 -1
  693. package/dist/components/hds/pagination/nav/arrow.js +2 -2
  694. package/dist/components/hds/pagination/nav/arrow.js.map +1 -1
  695. package/dist/components/hds/pagination/nav/ellipsis.js +2 -2
  696. package/dist/components/hds/pagination/nav/ellipsis.js.map +1 -1
  697. package/dist/components/hds/pagination/nav/number.js +2 -2
  698. package/dist/components/hds/pagination/nav/number.js.map +1 -1
  699. package/dist/components/hds/pagination/numbered/index.js +2 -2
  700. package/dist/components/hds/pagination/numbered/index.js.map +1 -1
  701. package/dist/components/hds/pagination/size-selector/index.js +2 -2
  702. package/dist/components/hds/pagination/size-selector/index.js.map +1 -1
  703. package/dist/components/hds/pagination/types.js +1 -1
  704. package/dist/components/hds/pagination/types.js.map +1 -1
  705. package/dist/components/hds/popover-primitive/index.js +2 -2
  706. package/dist/components/hds/popover-primitive/index.js.map +1 -1
  707. package/dist/components/hds/reveal/index.js +2 -2
  708. package/dist/components/hds/reveal/index.js.map +1 -1
  709. package/dist/components/hds/reveal/toggle/button.js +2 -2
  710. package/dist/components/hds/reveal/toggle/button.js.map +1 -1
  711. package/dist/components/hds/rich-tooltip/bubble.js +1 -1
  712. package/dist/components/hds/rich-tooltip/bubble.js.map +1 -1
  713. package/dist/components/hds/rich-tooltip/index.js +1 -1
  714. package/dist/components/hds/rich-tooltip/index.js.map +1 -1
  715. package/dist/components/hds/rich-tooltip/toggle.js +2 -2
  716. package/dist/components/hds/rich-tooltip/toggle.js.map +1 -1
  717. package/dist/components/hds/rich-tooltip/types.js +1 -1
  718. package/dist/components/hds/rich-tooltip/types.js.map +1 -1
  719. package/dist/components/hds/segmented-group/index.js +2 -2
  720. package/dist/components/hds/segmented-group/index.js.map +1 -1
  721. package/dist/components/hds/separator/index.js +2 -2
  722. package/dist/components/hds/separator/index.js.map +1 -1
  723. package/dist/components/hds/separator/types.js +1 -1
  724. package/dist/components/hds/separator/types.js.map +1 -1
  725. package/dist/components/hds/side-nav/base.js +2 -2
  726. package/dist/components/hds/side-nav/base.js.map +1 -1
  727. package/dist/components/hds/side-nav/header/home-link.js +2 -2
  728. package/dist/components/hds/side-nav/header/home-link.js.map +1 -1
  729. package/dist/components/hds/side-nav/header/index.js +2 -2
  730. package/dist/components/hds/side-nav/header/index.js.map +1 -1
  731. package/dist/components/hds/side-nav/index.js +2 -2
  732. package/dist/components/hds/side-nav/index.js.map +1 -1
  733. package/dist/components/hds/side-nav/list/back-link.js +2 -2
  734. package/dist/components/hds/side-nav/list/back-link.js.map +1 -1
  735. package/dist/components/hds/side-nav/list/index.js +2 -2
  736. package/dist/components/hds/side-nav/list/index.js.map +1 -1
  737. package/dist/components/hds/side-nav/list/item.js +2 -2
  738. package/dist/components/hds/side-nav/list/item.js.map +1 -1
  739. package/dist/components/hds/side-nav/list/link.js +2 -2
  740. package/dist/components/hds/side-nav/list/link.js.map +1 -1
  741. package/dist/components/hds/side-nav/list/title.js +2 -2
  742. package/dist/components/hds/side-nav/list/title.js.map +1 -1
  743. package/dist/components/hds/side-nav/portal/index.js +2 -2
  744. package/dist/components/hds/side-nav/portal/index.js.map +1 -1
  745. package/dist/components/hds/side-nav/portal/target.js +2 -2
  746. package/dist/components/hds/side-nav/portal/target.js.map +1 -1
  747. package/dist/components/hds/side-nav/toggle-button.js +2 -2
  748. package/dist/components/hds/side-nav/toggle-button.js.map +1 -1
  749. package/dist/components/hds/stepper/list/index.js +2 -2
  750. package/dist/components/hds/stepper/list/index.js.map +1 -1
  751. package/dist/components/hds/stepper/list/step.js +2 -2
  752. package/dist/components/hds/stepper/list/step.js.map +1 -1
  753. package/dist/components/hds/stepper/nav/index.js +2 -2
  754. package/dist/components/hds/stepper/nav/index.js.map +1 -1
  755. package/dist/components/hds/stepper/nav/panel.js +2 -2
  756. package/dist/components/hds/stepper/nav/panel.js.map +1 -1
  757. package/dist/components/hds/stepper/nav/step.js +2 -2
  758. package/dist/components/hds/stepper/nav/step.js.map +1 -1
  759. package/dist/components/hds/stepper/step/indicator.js +2 -2
  760. package/dist/components/hds/stepper/step/indicator.js.map +1 -1
  761. package/dist/components/hds/stepper/task/indicator.js +2 -2
  762. package/dist/components/hds/stepper/task/indicator.js.map +1 -1
  763. package/dist/components/hds/stepper/types.js +1 -1
  764. package/dist/components/hds/stepper/types.js.map +1 -1
  765. package/dist/components/hds/table/index.js +2 -2
  766. package/dist/components/hds/table/index.js.map +1 -1
  767. package/dist/components/hds/table/td.js +2 -2
  768. package/dist/components/hds/table/td.js.map +1 -1
  769. package/dist/components/hds/table/th-button-sort.js +2 -2
  770. package/dist/components/hds/table/th-button-sort.js.map +1 -1
  771. package/dist/components/hds/table/th-button-tooltip.js +2 -2
  772. package/dist/components/hds/table/th-button-tooltip.js.map +1 -1
  773. package/dist/components/hds/table/th-selectable.js +2 -2
  774. package/dist/components/hds/table/th-selectable.js.map +1 -1
  775. package/dist/components/hds/table/th-sort.js +2 -2
  776. package/dist/components/hds/table/th-sort.js.map +1 -1
  777. package/dist/components/hds/table/th.js +2 -2
  778. package/dist/components/hds/table/th.js.map +1 -1
  779. package/dist/components/hds/table/tr.js +2 -2
  780. package/dist/components/hds/table/tr.js.map +1 -1
  781. package/dist/components/hds/table/types.js +1 -1
  782. package/dist/components/hds/table/types.js.map +1 -1
  783. package/dist/components/hds/tabs/index.js +2 -2
  784. package/dist/components/hds/tabs/index.js.map +1 -1
  785. package/dist/components/hds/tabs/panel.js +2 -2
  786. package/dist/components/hds/tabs/panel.js.map +1 -1
  787. package/dist/components/hds/tabs/tab.js +2 -2
  788. package/dist/components/hds/tabs/tab.js.map +1 -1
  789. package/dist/components/hds/tabs/types.js +1 -1
  790. package/dist/components/hds/tabs/types.js.map +1 -1
  791. package/dist/components/hds/tag/index.js +2 -2
  792. package/dist/components/hds/tag/index.js.map +1 -1
  793. package/dist/components/hds/tag/types.js +1 -1
  794. package/dist/components/hds/tag/types.js.map +1 -1
  795. package/dist/components/hds/text/body.js +2 -2
  796. package/dist/components/hds/text/body.js.map +1 -1
  797. package/dist/components/hds/text/code.js +2 -2
  798. package/dist/components/hds/text/code.js.map +1 -1
  799. package/dist/components/hds/text/display.js +2 -2
  800. package/dist/components/hds/text/display.js.map +1 -1
  801. package/dist/components/hds/text/index.js +2 -2
  802. package/dist/components/hds/text/index.js.map +1 -1
  803. package/dist/components/hds/text/types.js +1 -1
  804. package/dist/components/hds/text/types.js.map +1 -1
  805. package/dist/components/hds/time/index.js +2 -2
  806. package/dist/components/hds/time/index.js.map +1 -1
  807. package/dist/components/hds/time/range.js +2 -2
  808. package/dist/components/hds/time/range.js.map +1 -1
  809. package/dist/components/hds/time/single.js +2 -2
  810. package/dist/components/hds/time/single.js.map +1 -1
  811. package/dist/components/hds/toast/index.js +2 -2
  812. package/dist/components/hds/toast/index.js.map +1 -1
  813. package/dist/components/hds/tooltip-button/index.js +2 -2
  814. package/dist/components/hds/tooltip-button/index.js.map +1 -1
  815. package/dist/components/hds/tooltip-button/types.js +1 -1
  816. package/dist/components/hds/tooltip-button/types.js.map +1 -1
  817. package/dist/components/hds/yield/index.js +2 -2
  818. package/dist/components/hds/yield/index.js.map +1 -1
  819. package/dist/components.js +0 -12
  820. package/dist/components.js.map +1 -1
  821. package/dist/helpers/hds-format-date.js +1 -1
  822. package/dist/helpers/hds-format-date.js.map +1 -1
  823. package/dist/helpers/hds-format-relative.js +1 -1
  824. package/dist/helpers/hds-format-relative.js.map +1 -1
  825. package/dist/helpers/hds-link-to-models.js +1 -1
  826. package/dist/helpers/hds-link-to-models.js.map +1 -1
  827. package/dist/helpers/hds-link-to-query.js +1 -1
  828. package/dist/helpers/hds-link-to-query.js.map +1 -1
  829. package/dist/helpers/hds-t.js +1 -1
  830. package/dist/helpers/hds-t.js.map +1 -1
  831. package/dist/instance-initializers/load-sprite.js +1 -1
  832. package/dist/instance-initializers/load-sprite.js.map +1 -1
  833. package/dist/modifiers/hds-advanced-table-cell/dom-management.js +1 -1
  834. package/dist/modifiers/hds-advanced-table-cell/dom-management.js.map +1 -1
  835. package/dist/modifiers/hds-advanced-table-cell/keyboard-navigation.js +1 -1
  836. package/dist/modifiers/hds-advanced-table-cell/keyboard-navigation.js.map +1 -1
  837. package/dist/modifiers/hds-advanced-table-cell.js +1 -1
  838. package/dist/modifiers/hds-advanced-table-cell.js.map +1 -1
  839. package/dist/modifiers/hds-anchored-position.js +1 -1
  840. package/dist/modifiers/hds-anchored-position.js.map +1 -1
  841. package/dist/modifiers/hds-clipboard.js +1 -1
  842. package/dist/modifiers/hds-clipboard.js.map +1 -1
  843. package/dist/modifiers/hds-code-editor/highlight-styles/hds-dark-highlight-style.js +1 -1
  844. package/dist/modifiers/hds-code-editor/highlight-styles/hds-dark-highlight-style.js.map +1 -1
  845. package/dist/modifiers/hds-code-editor/languages/rego.js +1 -1
  846. package/dist/modifiers/hds-code-editor/languages/rego.js.map +1 -1
  847. package/dist/modifiers/hds-code-editor/languages/sentinel.js +1 -1
  848. package/dist/modifiers/hds-code-editor/languages/sentinel.js.map +1 -1
  849. package/dist/modifiers/hds-code-editor/linters/json-linter.js +1 -1
  850. package/dist/modifiers/hds-code-editor/linters/json-linter.js.map +1 -1
  851. package/dist/modifiers/hds-code-editor/palettes/hds-dark-palette.js +1 -1
  852. package/dist/modifiers/hds-code-editor/palettes/hds-dark-palette.js.map +1 -1
  853. package/dist/modifiers/hds-code-editor/themes/hds-dark-theme.js +1 -1
  854. package/dist/modifiers/hds-code-editor/themes/hds-dark-theme.js.map +1 -1
  855. package/dist/modifiers/hds-code-editor/types.js +1 -1
  856. package/dist/modifiers/hds-code-editor/types.js.map +1 -1
  857. package/dist/modifiers/hds-code-editor.js +9 -8
  858. package/dist/modifiers/hds-code-editor.js.map +1 -1
  859. package/dist/modifiers/hds-register-event.js +1 -1
  860. package/dist/modifiers/hds-register-event.js.map +1 -1
  861. package/dist/modifiers/hds-tooltip.js +1 -1
  862. package/dist/modifiers/hds-tooltip.js.map +1 -1
  863. package/dist/re-exports/codemirror.js +6 -0
  864. package/dist/re-exports/codemirror.js.map +1 -0
  865. package/dist/services/hds-intl.js +1 -1
  866. package/dist/services/hds-intl.js.map +1 -1
  867. package/dist/services/hds-time.js.map +1 -1
  868. package/dist/styles/@hashicorp/design-system-components.css +110 -314
  869. package/dist/styles/@hashicorp/design-system-components.scss +1 -2
  870. package/dist/styles/@hashicorp/design-system-power-select-overrides.scss +1 -1
  871. package/dist/styles/components/accordion.scss +1 -1
  872. package/dist/styles/components/advanced-table.scss +2 -68
  873. package/dist/styles/components/alert.scss +1 -1
  874. package/dist/styles/components/app-footer.scss +1 -1
  875. package/dist/styles/components/app-frame.scss +1 -1
  876. package/dist/styles/components/app-header.scss +1 -1
  877. package/dist/styles/components/app-side-nav/content.scss +1 -1
  878. package/dist/styles/components/app-side-nav/index.scss +1 -1
  879. package/dist/styles/components/app-side-nav/main.scss +1 -1
  880. package/dist/styles/components/app-side-nav/toggle-button.scss +1 -1
  881. package/dist/styles/components/app-side-nav/vars.scss +1 -1
  882. package/dist/styles/components/application-state.scss +1 -1
  883. package/dist/styles/components/badge-count.scss +1 -1
  884. package/dist/styles/components/badge.scss +1 -1
  885. package/dist/styles/components/breadcrumb.scss +1 -1
  886. package/dist/styles/components/button-set.scss +1 -1
  887. package/dist/styles/components/button.scss +1 -1
  888. package/dist/styles/components/card/container.scss +1 -1
  889. package/dist/styles/components/card/index.scss +1 -1
  890. package/dist/styles/components/code-block/index.scss +1 -1
  891. package/dist/styles/components/code-block/theme.scss +1 -1
  892. package/dist/styles/components/code-editor/index.scss +1 -1
  893. package/dist/styles/components/code-editor/theme.scss +1 -1
  894. package/dist/styles/components/copy/button.scss +1 -1
  895. package/dist/styles/components/copy/index.scss +1 -1
  896. package/dist/styles/components/copy/snippet.scss +1 -1
  897. package/dist/styles/components/dialog-primitive.scss +1 -1
  898. package/dist/styles/components/disclosure-primitive.scss +1 -1
  899. package/dist/styles/components/dismiss-button.scss +1 -1
  900. package/dist/styles/components/dropdown.scss +1 -1
  901. package/dist/styles/components/flyout.scss +1 -1
  902. package/dist/styles/components/form/character-count.scss +1 -1
  903. package/dist/styles/components/form/checkbox.scss +1 -1
  904. package/dist/styles/components/form/error.scss +1 -1
  905. package/dist/styles/components/form/field.scss +1 -1
  906. package/dist/styles/components/form/file-input.scss +1 -1
  907. package/dist/styles/components/form/group.scss +1 -1
  908. package/dist/styles/components/form/helper-text.scss +1 -1
  909. package/dist/styles/components/form/index.scss +1 -1
  910. package/dist/styles/components/form/indicator.scss +1 -1
  911. package/dist/styles/components/form/key-value-inputs.scss +1 -1
  912. package/dist/styles/components/form/label.scss +1 -1
  913. package/dist/styles/components/form/layout.scss +1 -1
  914. package/dist/styles/components/form/legend.scss +1 -1
  915. package/dist/styles/components/form/masked-input.scss +1 -1
  916. package/dist/styles/components/form/radio-card.scss +1 -1
  917. package/dist/styles/components/form/radio.scss +1 -1
  918. package/dist/styles/components/form/select.scss +1 -1
  919. package/dist/styles/components/form/super-select.scss +1 -1
  920. package/dist/styles/components/form/text-input.scss +1 -1
  921. package/dist/styles/components/form/textarea.scss +1 -1
  922. package/dist/styles/components/form/toggle.scss +1 -1
  923. package/dist/styles/components/form/visibility-toggle.scss +1 -1
  924. package/dist/styles/components/icon-tile.scss +1 -1
  925. package/dist/styles/components/icon.scss +1 -1
  926. package/dist/styles/components/layout/flex.scss +1 -1
  927. package/dist/styles/components/layout/grid.scss +1 -1
  928. package/dist/styles/components/layout/index.scss +1 -1
  929. package/dist/styles/components/link/index.scss +1 -1
  930. package/dist/styles/components/link/inline.scss +1 -1
  931. package/dist/styles/components/link/standalone.scss +1 -1
  932. package/dist/styles/components/modal.scss +1 -1
  933. package/dist/styles/components/page-header.scss +1 -1
  934. package/dist/styles/components/pagination.scss +1 -1
  935. package/dist/styles/components/reveal.scss +1 -1
  936. package/dist/styles/components/rich-tooltip.scss +1 -1
  937. package/dist/styles/components/segmented-group.scss +1 -1
  938. package/dist/styles/components/separator.scss +1 -1
  939. package/dist/styles/components/side-nav/a11y-refocus.scss +1 -1
  940. package/dist/styles/components/side-nav/content.scss +1 -1
  941. package/dist/styles/components/side-nav/header.scss +1 -1
  942. package/dist/styles/components/side-nav/index.scss +1 -1
  943. package/dist/styles/components/side-nav/main.scss +1 -1
  944. package/dist/styles/components/side-nav/toggle-button.scss +1 -1
  945. package/dist/styles/components/side-nav/vars.scss +1 -1
  946. package/dist/styles/components/stepper/index.scss +1 -1
  947. package/dist/styles/components/stepper/list.scss +1 -1
  948. package/dist/styles/components/stepper/nav.scss +1 -1
  949. package/dist/styles/components/stepper/step-indicator.scss +1 -1
  950. package/dist/styles/components/stepper/task-indicator.scss +1 -1
  951. package/dist/styles/components/table.scss +1 -1
  952. package/dist/styles/components/tabs.scss +1 -1
  953. package/dist/styles/components/tag.scss +1 -1
  954. package/dist/styles/components/text.scss +1 -1
  955. package/dist/styles/components/time.scss +1 -1
  956. package/dist/styles/components/toast.scss +1 -1
  957. package/dist/styles/components/tooltip.scss +1 -1
  958. package/dist/styles/mixins/_breakpoints.scss +1 -1
  959. package/dist/styles/mixins/_button.scss +1 -1
  960. package/dist/styles/mixins/_focus-ring.scss +1 -1
  961. package/dist/styles/mixins/_interactive-dark-theme.scss +1 -1
  962. package/dist/styles/mixins/_screen-reader-only.scss +1 -1
  963. package/dist/utils/hds-aria-described-by.js +1 -1
  964. package/dist/utils/hds-aria-described-by.js.map +1 -1
  965. package/dist/utils/hds-breakpoints.js +1 -1
  966. package/dist/utils/hds-breakpoints.js.map +1 -1
  967. package/dist/utils/hds-get-element-id.js +1 -1
  968. package/dist/utils/hds-get-element-id.js.map +1 -1
  969. package/dist/utils/hds-resolve-link-to-external.js +1 -1
  970. package/dist/utils/hds-resolve-link-to-external.js.map +1 -1
  971. package/package.json +7 -14
  972. package/translations/hds/components/advanced-table/en-us.yaml +0 -3
  973. package/declarations/components/hds/filter-bar/dropdown.d.ts +0 -38
  974. package/declarations/components/hds/filter-bar/filter-group/checkbox.d.ts +0 -22
  975. package/declarations/components/hds/filter-bar/filter-group/date.d.ts +0 -47
  976. package/declarations/components/hds/filter-bar/filter-group/generic.d.ts +0 -24
  977. package/declarations/components/hds/filter-bar/filter-group/index.d.ts +0 -51
  978. package/declarations/components/hds/filter-bar/filter-group/numerical.d.ts +0 -45
  979. package/declarations/components/hds/filter-bar/filter-group/radio.d.ts +0 -22
  980. package/declarations/components/hds/filter-bar/index.d.ts +0 -48
  981. package/declarations/components/hds/filter-bar/tabs/index.d.ts +0 -43
  982. package/declarations/components/hds/filter-bar/tabs/panel.d.ts +0 -28
  983. package/declarations/components/hds/filter-bar/tabs/tab.d.ts +0 -34
  984. package/declarations/components/hds/filter-bar/types.d.ts +0 -87
  985. package/dist/_app_/components/hds/filter-bar/dropdown.js +0 -1
  986. package/dist/_app_/components/hds/filter-bar/filter-group/checkbox.js +0 -1
  987. package/dist/_app_/components/hds/filter-bar/filter-group/date.js +0 -1
  988. package/dist/_app_/components/hds/filter-bar/filter-group/generic.js +0 -1
  989. package/dist/_app_/components/hds/filter-bar/filter-group/numerical.js +0 -1
  990. package/dist/_app_/components/hds/filter-bar/filter-group/radio.js +0 -1
  991. package/dist/_app_/components/hds/filter-bar/filter-group.js +0 -1
  992. package/dist/_app_/components/hds/filter-bar/tabs/panel.js +0 -1
  993. package/dist/_app_/components/hds/filter-bar/tabs/tab.js +0 -1
  994. package/dist/_app_/components/hds/filter-bar/tabs.js +0 -1
  995. package/dist/_app_/components/hds/filter-bar.js +0 -1
  996. package/dist/components/hds/filter-bar/dropdown.js +0 -120
  997. package/dist/components/hds/filter-bar/dropdown.js.map +0 -1
  998. package/dist/components/hds/filter-bar/filter-group/checkbox.js +0 -41
  999. package/dist/components/hds/filter-bar/filter-group/checkbox.js.map +0 -1
  1000. package/dist/components/hds/filter-bar/filter-group/date.js +0 -164
  1001. package/dist/components/hds/filter-bar/filter-group/date.js.map +0 -1
  1002. package/dist/components/hds/filter-bar/filter-group/generic.js +0 -43
  1003. package/dist/components/hds/filter-bar/filter-group/generic.js.map +0 -1
  1004. package/dist/components/hds/filter-bar/filter-group/index.js +0 -227
  1005. package/dist/components/hds/filter-bar/filter-group/index.js.map +0 -1
  1006. package/dist/components/hds/filter-bar/filter-group/numerical.js +0 -163
  1007. package/dist/components/hds/filter-bar/filter-group/numerical.js.map +0 -1
  1008. package/dist/components/hds/filter-bar/filter-group/radio.js +0 -41
  1009. package/dist/components/hds/filter-bar/filter-group/radio.js.map +0 -1
  1010. package/dist/components/hds/filter-bar/index.js +0 -240
  1011. package/dist/components/hds/filter-bar/index.js.map +0 -1
  1012. package/dist/components/hds/filter-bar/tabs/index.js +0 -181
  1013. package/dist/components/hds/filter-bar/tabs/index.js.map +0 -1
  1014. package/dist/components/hds/filter-bar/tabs/panel.js +0 -67
  1015. package/dist/components/hds/filter-bar/tabs/panel.js.map +0 -1
  1016. package/dist/components/hds/filter-bar/tabs/tab.js +0 -98
  1017. package/dist/components/hds/filter-bar/tabs/tab.js.map +0 -1
  1018. package/dist/components/hds/filter-bar/types.js +0 -35
  1019. package/dist/components/hds/filter-bar/types.js.map +0 -1
  1020. package/dist/styles/components/filter-bar.scss +0 -164
  1021. package/translations/hds/components/filter-bar/date/en-us.yaml +0 -18
  1022. package/translations/hds/components/filter-bar/en-us.yaml +0 -9
  1023. package/translations/hds/components/filter-bar/filter-group/en-us.yaml +0 -1
  1024. package/translations/hds/components/filter-bar/filter-group/numerical/en-us.yaml +0 -15
  1025. package/translations/hds/components/filter-bar/filter-options/en-us.yaml +0 -1
  1026. package/translations/hds/components/filter-bar/filters-dropdown/en-us.yaml +0 -7
@@ -1 +1 @@
1
- {"version":3,"file":"hds-format-relative.js","sources":["../../src/helpers/hds-format-relative.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport { helper } from '@ember/component/helper';\n\n/*\n * This helper can be used to format dates relative to the current time.\n *\n * Example:\n *\n * ```hbs\n * ({{hds-format-relative @display.relative.value @display.relative.unit}})\n * ```\n */\n\nexport function hdsFormatRelative([value, unit]: [\n value: number,\n unit?: Intl.RelativeTimeFormatUnit,\n]): string {\n if (unit) {\n return new Intl.RelativeTimeFormat(navigator.language).format(value, unit);\n } else {\n return new Intl.RelativeTimeFormat(navigator.language).format(value, 'day');\n }\n}\n\nconst hdsFormatRelativeHelper = helper(hdsFormatRelative);\nexport default hdsFormatRelativeHelper;\n"],"names":["hdsFormatRelative","value","unit","Intl","RelativeTimeFormat","navigator","language","format","hdsFormatRelativeHelper","helper"],"mappings":";;AAAA;AACA;AACA;AACA;;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEO,SAASA,iBAAiBA,CAAC,CAACC,KAAK,EAAEC,IAAI,CAG7C,EAAU;AACT,EAAA,IAAIA,IAAI,EAAE;AACR,IAAA,OAAO,IAAIC,IAAI,CAACC,kBAAkB,CAACC,SAAS,CAACC,QAAQ,CAAC,CAACC,MAAM,CAACN,KAAK,EAAEC,IAAI,CAAC;AAC5E,EAAA,CAAC,MAAM;AACL,IAAA,OAAO,IAAIC,IAAI,CAACC,kBAAkB,CAACC,SAAS,CAACC,QAAQ,CAAC,CAACC,MAAM,CAACN,KAAK,EAAE,KAAK,CAAC;AAC7E,EAAA;AACF;AAEA,MAAMO,uBAAuB,GAAGC,MAAM,CAACT,iBAAiB;;;;"}
1
+ {"version":3,"file":"hds-format-relative.js","sources":["../../src/helpers/hds-format-relative.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2025\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport { helper } from '@ember/component/helper';\n\n/*\n * This helper can be used to format dates relative to the current time.\n *\n * Example:\n *\n * ```hbs\n * ({{hds-format-relative @display.relative.value @display.relative.unit}})\n * ```\n */\n\nexport function hdsFormatRelative([value, unit]: [\n value: number,\n unit?: Intl.RelativeTimeFormatUnit,\n]): string {\n if (unit) {\n return new Intl.RelativeTimeFormat(navigator.language).format(value, unit);\n } else {\n return new Intl.RelativeTimeFormat(navigator.language).format(value, 'day');\n }\n}\n\nconst hdsFormatRelativeHelper = helper(hdsFormatRelative);\nexport default hdsFormatRelativeHelper;\n"],"names":["hdsFormatRelative","value","unit","Intl","RelativeTimeFormat","navigator","language","format","hdsFormatRelativeHelper","helper"],"mappings":";;AAAA;AACA;AACA;AACA;;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEO,SAASA,iBAAiBA,CAAC,CAACC,KAAK,EAAEC,IAAI,CAG7C,EAAU;AACT,EAAA,IAAIA,IAAI,EAAE;AACR,IAAA,OAAO,IAAIC,IAAI,CAACC,kBAAkB,CAACC,SAAS,CAACC,QAAQ,CAAC,CAACC,MAAM,CAACN,KAAK,EAAEC,IAAI,CAAC;AAC5E,EAAA,CAAC,MAAM;AACL,IAAA,OAAO,IAAIC,IAAI,CAACC,kBAAkB,CAACC,SAAS,CAACC,QAAQ,CAAC,CAACC,MAAM,CAACN,KAAK,EAAE,KAAK,CAAC;AAC7E,EAAA;AACF;AAEA,MAAMO,uBAAuB,GAAGC,MAAM,CAACT,iBAAiB;;;;"}
@@ -2,7 +2,7 @@ import { helper } from '@ember/component/helper';
2
2
  import { assert } from '@ember/debug';
3
3
 
4
4
  /**
5
- * Copyright (c) HashiCorp, Inc.
5
+ * Copyright IBM Corp. 2021, 2025
6
6
  * SPDX-License-Identifier: MPL-2.0
7
7
  */
8
8
 
@@ -1 +1 @@
1
- {"version":3,"file":"hds-link-to-models.js","sources":["../../src/helpers/hds-link-to-models.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport { helper } from '@ember/component/helper';\nimport { assert } from '@ember/debug';\n\n/*\n * This helper can be used to support both @model and @models arguments when wrapping\n * the `<LinkTo>` component without it triggering assertions or having to use the component helper.\n *\n * The result of this helper should be passed into the `@models` argument of the `<LinkTo>` component:\n *\n * ```hbs\n * <LinkTo @models={{hds-link-to-models @model @models}} />\n * ```\n */\n\nexport function hdsLinkToModels<T>([model, models]: [\n T | undefined,\n T[] | undefined,\n]) {\n assert(\n 'You cannot provide both the `@model` and `@models` arguments to the component.',\n !model || !models\n );\n\n if (model) {\n return [model];\n } else if (models) {\n return models;\n } else {\n return [];\n }\n}\n\nconst hdsLinkToModelsHelper = helper(hdsLinkToModels);\nexport default hdsLinkToModelsHelper;\n"],"names":["hdsLinkToModels","model","models","assert","hdsLinkToModelsHelper","helper"],"mappings":";;;AAAA;AACA;AACA;AACA;;;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEO,SAASA,eAAeA,CAAI,CAACC,KAAK,EAAEC,MAAM,CAGhD,EAAE;EACDC,MAAM,CACJ,gFAAgF,EAChF,CAACF,KAAK,IAAI,CAACC,MACb,CAAC;AAED,EAAA,IAAID,KAAK,EAAE;IACT,OAAO,CAACA,KAAK,CAAC;EAChB,CAAC,MAAM,IAAIC,MAAM,EAAE;AACjB,IAAA,OAAOA,MAAM;AACf,EAAA,CAAC,MAAM;AACL,IAAA,OAAO,EAAE;AACX,EAAA;AACF;AAEA,MAAME,qBAAqB,GAAGC,MAAM,CAACL,eAAe;;;;"}
1
+ {"version":3,"file":"hds-link-to-models.js","sources":["../../src/helpers/hds-link-to-models.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2025\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport { helper } from '@ember/component/helper';\nimport { assert } from '@ember/debug';\n\n/*\n * This helper can be used to support both @model and @models arguments when wrapping\n * the `<LinkTo>` component without it triggering assertions or having to use the component helper.\n *\n * The result of this helper should be passed into the `@models` argument of the `<LinkTo>` component:\n *\n * ```hbs\n * <LinkTo @models={{hds-link-to-models @model @models}} />\n * ```\n */\n\nexport function hdsLinkToModels<T>([model, models]: [\n T | undefined,\n T[] | undefined,\n]) {\n assert(\n 'You cannot provide both the `@model` and `@models` arguments to the component.',\n !model || !models\n );\n\n if (model) {\n return [model];\n } else if (models) {\n return models;\n } else {\n return [];\n }\n}\n\nconst hdsLinkToModelsHelper = helper(hdsLinkToModels);\nexport default hdsLinkToModelsHelper;\n"],"names":["hdsLinkToModels","model","models","assert","hdsLinkToModelsHelper","helper"],"mappings":";;;AAAA;AACA;AACA;AACA;;;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEO,SAASA,eAAeA,CAAI,CAACC,KAAK,EAAEC,MAAM,CAGhD,EAAE;EACDC,MAAM,CACJ,gFAAgF,EAChF,CAACF,KAAK,IAAI,CAACC,MACb,CAAC;AAED,EAAA,IAAID,KAAK,EAAE;IACT,OAAO,CAACA,KAAK,CAAC;EAChB,CAAC,MAAM,IAAIC,MAAM,EAAE;AACjB,IAAA,OAAOA,MAAM;AACf,EAAA,CAAC,MAAM;AACL,IAAA,OAAO,EAAE;AACX,EAAA;AACF;AAEA,MAAME,qBAAqB,GAAGC,MAAM,CAACL,eAAe;;;;"}
@@ -1,7 +1,7 @@
1
1
  import { helper } from '@ember/component/helper';
2
2
 
3
3
  /**
4
- * Copyright (c) HashiCorp, Inc.
4
+ * Copyright IBM Corp. 2021, 2025
5
5
  * SPDX-License-Identifier: MPL-2.0
6
6
  */
7
7
 
@@ -1 +1 @@
1
- {"version":3,"file":"hds-link-to-query.js","sources":["../../src/helpers/hds-link-to-query.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport { helper } from '@ember/component/helper';\n\n/*\n * This helper can be used to safely pass a @query argument to the `<LinkTo>` component\n * without the risk of triggering an assertion if the argument is undefined\n *\n * The result of this helper should be passed into the `@query` argument of the `<LinkTo>` component:\n *\n * ```hbs\n * <LinkTo @query={{hds-link-to-query @query}} />\n * ```\n */\n\n// this is a workaround for https://github.com/emberjs/ember.js/issues/19693\n\nexport function hdsLinkToQuery([query]: [\n Record<string, unknown> | undefined,\n]): Record<string, unknown> {\n return query ?? {};\n}\n\nconst hdsLinkToQueryHelper = helper(hdsLinkToQuery);\nexport default hdsLinkToQueryHelper;\n"],"names":["hdsLinkToQuery","query","hdsLinkToQueryHelper","helper"],"mappings":";;AAAA;AACA;AACA;AACA;;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEO,SAASA,cAAcA,CAAC,CAACC,KAAK,CAEpC,EAA2B;EAC1B,OAAOA,KAAK,IAAI,EAAE;AACpB;AAEA,MAAMC,oBAAoB,GAAGC,MAAM,CAACH,cAAc;;;;"}
1
+ {"version":3,"file":"hds-link-to-query.js","sources":["../../src/helpers/hds-link-to-query.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2025\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport { helper } from '@ember/component/helper';\n\n/*\n * This helper can be used to safely pass a @query argument to the `<LinkTo>` component\n * without the risk of triggering an assertion if the argument is undefined\n *\n * The result of this helper should be passed into the `@query` argument of the `<LinkTo>` component:\n *\n * ```hbs\n * <LinkTo @query={{hds-link-to-query @query}} />\n * ```\n */\n\n// this is a workaround for https://github.com/emberjs/ember.js/issues/19693\n\nexport function hdsLinkToQuery([query]: [\n Record<string, unknown> | undefined,\n]): Record<string, unknown> {\n return query ?? {};\n}\n\nconst hdsLinkToQueryHelper = helper(hdsLinkToQuery);\nexport default hdsLinkToQueryHelper;\n"],"names":["hdsLinkToQuery","query","hdsLinkToQueryHelper","helper"],"mappings":";;AAAA;AACA;AACA;AACA;;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEO,SAASA,cAAcA,CAAC,CAACC,KAAK,CAEpC,EAA2B;EAC1B,OAAOA,KAAK,IAAI,EAAE;AACpB;AAEA,MAAMC,oBAAoB,GAAGC,MAAM,CAACH,cAAc;;;;"}
@@ -5,7 +5,7 @@ import { isPresent } from '@ember/utils';
5
5
  import { g, i } from 'decorator-transforms/runtime';
6
6
 
7
7
  /**
8
- * Copyright (c) HashiCorp, Inc.
8
+ * Copyright IBM Corp. 2021, 2025
9
9
  * SPDX-License-Identifier: MPL-2.0
10
10
  */
11
11
 
@@ -1 +1 @@
1
- {"version":3,"file":"hds-t.js","sources":["../../src/helpers/hds-t.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Helper from '@ember/component/helper';\nimport { service } from '@ember/service';\nimport { assert } from '@ember/debug';\nimport { isPresent } from '@ember/utils';\n\nimport type HdsIntlService from '../services/hds-intl';\nimport type { HdsIntlTOptions } from '../services/hds-intl';\n\ninterface HdsTHelperSignature {\n Args: {\n Positional: string[];\n Named: HdsIntlTOptions;\n };\n Return: string;\n}\n\nexport default class HdsTHelper extends Helper<HdsTHelperSignature> {\n @service hdsIntl!: HdsIntlService;\n\n compute(\n positional: HdsTHelperSignature['Args']['Positional'],\n named: HdsTHelperSignature['Args']['Named']\n ): HdsTHelperSignature['Return'] {\n const key = positional[0];\n\n assert(\n 'Hds::T helper requires a key as the first positional argument',\n typeof key === 'string' && isPresent(key)\n );\n\n return this.hdsIntl.t(key, named);\n }\n}\n"],"names":["HdsTHelper","Helper","g","prototype","service","i","void 0","compute","positional","named","key","assert","isPresent","hdsIntl","t"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;;AAkBe,MAAMA,UAAU,SAASC,MAAM,CAAsB;AAAA,EAAA;IAAAC,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,SAAA,EAAA,CACjEC,OAAO,CAAA,CAAA;AAAA;AAAA,EAAA,QAAA,IAAAC,CAAA,CAAA,IAAA,EAAA,SAAA,CAAA,EAAAC,MAAA;AAERC,EAAAA,OAAOA,CACLC,UAAqD,EACrDC,KAA2C,EACZ;AAC/B,IAAA,MAAMC,GAAG,GAAGF,UAAU,CAAC,CAAC,CAAC;AAEzBG,IAAAA,MAAM,CACJ,+DAA+D,EAC/D,OAAOD,GAAG,KAAK,QAAQ,IAAIE,SAAS,CAACF,GAAG,CAC1C,CAAC;IAED,OAAO,IAAI,CAACG,OAAO,CAACC,CAAC,CAACJ,GAAG,EAAED,KAAK,CAAC;AACnC,EAAA;AACF;;;;"}
1
+ {"version":3,"file":"hds-t.js","sources":["../../src/helpers/hds-t.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2025\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Helper from '@ember/component/helper';\nimport { service } from '@ember/service';\nimport { assert } from '@ember/debug';\nimport { isPresent } from '@ember/utils';\n\nimport type HdsIntlService from '../services/hds-intl';\nimport type { HdsIntlTOptions } from '../services/hds-intl';\n\ninterface HdsTHelperSignature {\n Args: {\n Positional: string[];\n Named: HdsIntlTOptions;\n };\n Return: string;\n}\n\nexport default class HdsTHelper extends Helper<HdsTHelperSignature> {\n @service hdsIntl!: HdsIntlService;\n\n compute(\n positional: HdsTHelperSignature['Args']['Positional'],\n named: HdsTHelperSignature['Args']['Named']\n ): HdsTHelperSignature['Return'] {\n const key = positional[0];\n\n assert(\n 'Hds::T helper requires a key as the first positional argument',\n typeof key === 'string' && isPresent(key)\n );\n\n return this.hdsIntl.t(key, named);\n }\n}\n"],"names":["HdsTHelper","Helper","g","prototype","service","i","void 0","compute","positional","named","key","assert","isPresent","hdsIntl","t"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;;AAkBe,MAAMA,UAAU,SAASC,MAAM,CAAsB;AAAA,EAAA;IAAAC,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,SAAA,EAAA,CACjEC,OAAO,CAAA,CAAA;AAAA;AAAA,EAAA,QAAA,IAAAC,CAAA,CAAA,IAAA,EAAA,SAAA,CAAA,EAAAC,MAAA;AAERC,EAAAA,OAAOA,CACLC,UAAqD,EACrDC,KAA2C,EACZ;AAC/B,IAAA,MAAMC,GAAG,GAAGF,UAAU,CAAC,CAAC,CAAC;AAEzBG,IAAAA,MAAM,CACJ,+DAA+D,EAC/D,OAAOD,GAAG,KAAK,QAAQ,IAAIE,SAAS,CAACF,GAAG,CAC1C,CAAC;IAED,OAAO,IAAI,CAACG,OAAO,CAACC,CAAC,CAACJ,GAAG,EAAED,KAAK,CAAC;AACnC,EAAA;AACF;;;;"}
@@ -1,7 +1,7 @@
1
1
  import { isTesting } from '@embroider/macros';
2
2
 
3
3
  /**
4
- * Copyright (c) HashiCorp, Inc.
4
+ * Copyright IBM Corp. 2021, 2025
5
5
  * SPDX-License-Identifier: MPL-2.0
6
6
  */
7
7
 
@@ -1 +1 @@
1
- {"version":3,"file":"load-sprite.js","sources":["../../src/instance-initializers/load-sprite.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport { isTesting } from '@embroider/macros';\n\nimport type ApplicationInstance from '@ember/application/instance';\n\ninterface Config {\n flightIconsSpriteLazyEmbed?: boolean;\n}\n\nexport async function initialize(appInstance: ApplicationInstance) {\n const config = appInstance.resolveRegistration(\n 'config:environment'\n ) as Config;\n\n if (config.flightIconsSpriteLazyEmbed) {\n const { default: svgSprite } = await import(\n '@hashicorp/flight-icons/svg-sprite/svg-sprite-module'\n );\n\n // in test environments we can inject the sprite directly into the ember testing container\n // to avoid issues with tools like Percy that only consider content inside that element\n if (isTesting()) {\n const container = window.document?.getElementById('ember-testing');\n\n if (container && !container.querySelector('.flight-sprite-container')) {\n container.insertAdjacentHTML('afterbegin', svgSprite);\n }\n } else {\n const container = window.document?.body;\n\n if (container && !container.querySelector('.flight-sprite-container')) {\n container.insertAdjacentHTML('beforeend', svgSprite);\n }\n }\n }\n}\n\nexport default {\n initialize,\n};\n"],"names":["initialize","appInstance","config","resolveRegistration","flightIconsSpriteLazyEmbed","default","svgSprite","isTesting","container","window","document","getElementById","querySelector","insertAdjacentHTML","body"],"mappings":";;AAAA;AACA;AACA;AACA;;AAUO,eAAeA,UAAUA,CAACC,WAAgC,EAAE;AACjE,EAAA,MAAMC,MAAM,GAAGD,WAAW,CAACE,mBAAmB,CAC5C,oBACF,CAAW;EAEX,IAAID,MAAM,CAACE,0BAA0B,EAAE;IACrC,MAAM;AAAEC,MAAAA,OAAO,EAAEC;AAAU,KAAC,GAAG,MAAM,OACnC,sDACF,CAAC;;AAED;AACA;IACA,IAAIC,SAAS,EAAE,EAAE;MACf,MAAMC,SAAS,GAAGC,MAAM,CAACC,QAAQ,EAAEC,cAAc,CAAC,eAAe,CAAC;MAElE,IAAIH,SAAS,IAAI,CAACA,SAAS,CAACI,aAAa,CAAC,0BAA0B,CAAC,EAAE;AACrEJ,QAAAA,SAAS,CAACK,kBAAkB,CAAC,YAAY,EAAEP,SAAS,CAAC;AACvD,MAAA;AACF,IAAA,CAAC,MAAM;AACL,MAAA,MAAME,SAAS,GAAGC,MAAM,CAACC,QAAQ,EAAEI,IAAI;MAEvC,IAAIN,SAAS,IAAI,CAACA,SAAS,CAACI,aAAa,CAAC,0BAA0B,CAAC,EAAE;AACrEJ,QAAAA,SAAS,CAACK,kBAAkB,CAAC,WAAW,EAAEP,SAAS,CAAC;AACtD,MAAA;AACF,IAAA;AACF,EAAA;AACF;AAEA,iBAAe;AACbN,EAAAA;AACF,CAAC;;;;"}
1
+ {"version":3,"file":"load-sprite.js","sources":["../../src/instance-initializers/load-sprite.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2025\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport { isTesting } from '@embroider/macros';\n\nimport type ApplicationInstance from '@ember/application/instance';\n\ninterface Config {\n flightIconsSpriteLazyEmbed?: boolean;\n}\n\nexport async function initialize(appInstance: ApplicationInstance) {\n const config = appInstance.resolveRegistration(\n 'config:environment'\n ) as Config;\n\n if (config.flightIconsSpriteLazyEmbed) {\n const { default: svgSprite } = await import(\n '@hashicorp/flight-icons/svg-sprite/svg-sprite-module'\n );\n\n // in test environments we can inject the sprite directly into the ember testing container\n // to avoid issues with tools like Percy that only consider content inside that element\n if (isTesting()) {\n const container = window.document?.getElementById('ember-testing');\n\n if (container && !container.querySelector('.flight-sprite-container')) {\n container.insertAdjacentHTML('afterbegin', svgSprite);\n }\n } else {\n const container = window.document?.body;\n\n if (container && !container.querySelector('.flight-sprite-container')) {\n container.insertAdjacentHTML('beforeend', svgSprite);\n }\n }\n }\n}\n\nexport default {\n initialize,\n};\n"],"names":["initialize","appInstance","config","resolveRegistration","flightIconsSpriteLazyEmbed","default","svgSprite","isTesting","container","window","document","getElementById","querySelector","insertAdjacentHTML","body"],"mappings":";;AAAA;AACA;AACA;AACA;;AAUO,eAAeA,UAAUA,CAACC,WAAgC,EAAE;AACjE,EAAA,MAAMC,MAAM,GAAGD,WAAW,CAACE,mBAAmB,CAC5C,oBACF,CAAW;EAEX,IAAID,MAAM,CAACE,0BAA0B,EAAE;IACrC,MAAM;AAAEC,MAAAA,OAAO,EAAEC;AAAU,KAAC,GAAG,MAAM,OACnC,sDACF,CAAC;;AAED;AACA;IACA,IAAIC,SAAS,EAAE,EAAE;MACf,MAAMC,SAAS,GAAGC,MAAM,CAACC,QAAQ,EAAEC,cAAc,CAAC,eAAe,CAAC;MAElE,IAAIH,SAAS,IAAI,CAACA,SAAS,CAACI,aAAa,CAAC,0BAA0B,CAAC,EAAE;AACrEJ,QAAAA,SAAS,CAACK,kBAAkB,CAAC,YAAY,EAAEP,SAAS,CAAC;AACvD,MAAA;AACF,IAAA,CAAC,MAAM;AACL,MAAA,MAAME,SAAS,GAAGC,MAAM,CAACC,QAAQ,EAAEI,IAAI;MAEvC,IAAIN,SAAS,IAAI,CAACA,SAAS,CAACI,aAAa,CAAC,0BAA0B,CAAC,EAAE;AACrEJ,QAAAA,SAAS,CAACK,kBAAkB,CAAC,WAAW,EAAEP,SAAS,CAAC;AACtD,MAAA;AACF,IAAA;AACF,EAAA;AACF;AAEA,iBAAe;AACbN,EAAAA;AACF,CAAC;;;;"}
@@ -1,7 +1,7 @@
1
1
  import { tabbable } from 'tabbable';
2
2
 
3
3
  /**
4
- * Copyright (c) HashiCorp, Inc.
4
+ * Copyright IBM Corp. 2021, 2025
5
5
  * SPDX-License-Identifier: MPL-2.0
6
6
  */
7
7
 
@@ -1 +1 @@
1
- {"version":3,"file":"dom-management.js","sources":["../../../src/modifiers/hds-advanced-table-cell/dom-management.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport { tabbable } from 'tabbable';\n\nimport type { HdsAdvancedTableThSignature } from '../../components/hds/advanced-table/th.ts';\n\nexport const onFocusTrapDeactivate = (cell: HTMLDivElement) => {\n const cellTabbableChildren = tabbable(cell);\n\n for (const child of cellTabbableChildren) {\n child.setAttribute('tabindex', '-1');\n }\n\n cell.setAttribute('tabindex', '0');\n};\n\nexport const updateTabbableChildren = (\n cell: HTMLDivElement,\n isFocusTrapActive?: boolean\n): void => {\n const cellTabbableChildren = tabbable(cell, { displayCheck: 'none' });\n\n for (const child of cellTabbableChildren) {\n if (child instanceof HTMLElement) {\n if (!isFocusTrapActive) {\n child.setAttribute('tabindex', '-1');\n }\n child.setAttribute('data-advanced-table-child-focusable', '');\n }\n }\n};\n\nexport const didInsertGridCell = (\n cell: HdsAdvancedTableThSignature['Element']\n): void => {\n updateTabbableChildren(cell);\n\n const currentRow = cell.parentElement;\n\n if (\n currentRow?.parentElement?.classList.contains('hds-advanced-table__thead')\n ) {\n const thead = currentRow.parentElement;\n if (\n thead.children.item(0) === currentRow &&\n currentRow.children.item(0) === cell\n ) {\n cell.setAttribute('tabindex', '0');\n } else {\n cell.setAttribute('tabindex', '-1');\n }\n } else if (\n currentRow?.parentElement?.classList.contains('hds-advanced-table__tbody')\n ) {\n const grid = currentRow.parentElement?.closest('[role=\"grid\"]');\n const thead = grid?.querySelector(\n '[role=\"rowgroup\"].hds-advanced-table__thead'\n );\n const tbody = grid?.querySelector(\n '[role=\"rowgroup\"].hds-advanced-table__tbody'\n );\n\n if (thead === null) {\n if (\n tbody?.children.item(0) === currentRow &&\n currentRow.children.item(0) === cell\n ) {\n cell.setAttribute('tabindex', '0');\n }\n } else {\n cell.setAttribute('tabindex', '-1');\n }\n }\n};\n"],"names":["onFocusTrapDeactivate","cell","cellTabbableChildren","tabbable","child","setAttribute","updateTabbableChildren","isFocusTrapActive","displayCheck","HTMLElement","didInsertGridCell","currentRow","parentElement","classList","contains","thead","children","item","grid","closest","querySelector","tbody"],"mappings":";;AAAA;AACA;AACA;AACA;;AAMO,MAAMA,qBAAqB,GAAIC,IAAoB,IAAK;AAC7D,EAAA,MAAMC,oBAAoB,GAAGC,QAAQ,CAACF,IAAI,CAAC;AAE3C,EAAA,KAAK,MAAMG,KAAK,IAAIF,oBAAoB,EAAE;AACxCE,IAAAA,KAAK,CAACC,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC;AACtC,EAAA;AAEAJ,EAAAA,IAAI,CAACI,YAAY,CAAC,UAAU,EAAE,GAAG,CAAC;AACpC;MAEaC,sBAAsB,GAAGA,CACpCL,IAAoB,EACpBM,iBAA2B,KAClB;AACT,EAAA,MAAML,oBAAoB,GAAGC,QAAQ,CAACF,IAAI,EAAE;AAAEO,IAAAA,YAAY,EAAE;AAAO,GAAC,CAAC;AAErE,EAAA,KAAK,MAAMJ,KAAK,IAAIF,oBAAoB,EAAE;IACxC,IAAIE,KAAK,YAAYK,WAAW,EAAE;MAChC,IAAI,CAACF,iBAAiB,EAAE;AACtBH,QAAAA,KAAK,CAACC,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC;AACtC,MAAA;AACAD,MAAAA,KAAK,CAACC,YAAY,CAAC,qCAAqC,EAAE,EAAE,CAAC;AAC/D,IAAA;AACF,EAAA;AACF;AAEO,MAAMK,iBAAiB,GAC5BT,IAA4C,IACnC;EACTK,sBAAsB,CAACL,IAAI,CAAC;AAE5B,EAAA,MAAMU,UAAU,GAAGV,IAAI,CAACW,aAAa;EAErC,IACED,UAAU,EAAEC,aAAa,EAAEC,SAAS,CAACC,QAAQ,CAAC,2BAA2B,CAAC,EAC1E;AACA,IAAA,MAAMC,KAAK,GAAGJ,UAAU,CAACC,aAAa;IACtC,IACEG,KAAK,CAACC,QAAQ,CAACC,IAAI,CAAC,CAAC,CAAC,KAAKN,UAAU,IACrCA,UAAU,CAACK,QAAQ,CAACC,IAAI,CAAC,CAAC,CAAC,KAAKhB,IAAI,EACpC;AACAA,MAAAA,IAAI,CAACI,YAAY,CAAC,UAAU,EAAE,GAAG,CAAC;AACpC,IAAA,CAAC,MAAM;AACLJ,MAAAA,IAAI,CAACI,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC;AACrC,IAAA;AACF,EAAA,CAAC,MAAM,IACLM,UAAU,EAAEC,aAAa,EAAEC,SAAS,CAACC,QAAQ,CAAC,2BAA2B,CAAC,EAC1E;IACA,MAAMI,IAAI,GAAGP,UAAU,CAACC,aAAa,EAAEO,OAAO,CAAC,eAAe,CAAC;AAC/D,IAAA,MAAMJ,KAAK,GAAGG,IAAI,EAAEE,aAAa,CAC/B,6CACF,CAAC;AACD,IAAA,MAAMC,KAAK,GAAGH,IAAI,EAAEE,aAAa,CAC/B,6CACF,CAAC;IAED,IAAIL,KAAK,KAAK,IAAI,EAAE;MAClB,IACEM,KAAK,EAAEL,QAAQ,CAACC,IAAI,CAAC,CAAC,CAAC,KAAKN,UAAU,IACtCA,UAAU,CAACK,QAAQ,CAACC,IAAI,CAAC,CAAC,CAAC,KAAKhB,IAAI,EACpC;AACAA,QAAAA,IAAI,CAACI,YAAY,CAAC,UAAU,EAAE,GAAG,CAAC;AACpC,MAAA;AACF,IAAA,CAAC,MAAM;AACLJ,MAAAA,IAAI,CAACI,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC;AACrC,IAAA;AACF,EAAA;AACF;;;;"}
1
+ {"version":3,"file":"dom-management.js","sources":["../../../src/modifiers/hds-advanced-table-cell/dom-management.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2025\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport { tabbable } from 'tabbable';\n\nimport type { HdsAdvancedTableThSignature } from '../../components/hds/advanced-table/th.ts';\n\nexport const onFocusTrapDeactivate = (cell: HTMLDivElement) => {\n const cellTabbableChildren = tabbable(cell);\n\n for (const child of cellTabbableChildren) {\n child.setAttribute('tabindex', '-1');\n }\n\n cell.setAttribute('tabindex', '0');\n};\n\nexport const updateTabbableChildren = (\n cell: HTMLDivElement,\n isFocusTrapActive?: boolean\n): void => {\n const cellTabbableChildren = tabbable(cell, { displayCheck: 'none' });\n\n for (const child of cellTabbableChildren) {\n if (child instanceof HTMLElement) {\n if (!isFocusTrapActive) {\n child.setAttribute('tabindex', '-1');\n }\n child.setAttribute('data-advanced-table-child-focusable', '');\n }\n }\n};\n\nexport const didInsertGridCell = (\n cell: HdsAdvancedTableThSignature['Element']\n): void => {\n updateTabbableChildren(cell);\n\n const currentRow = cell.parentElement;\n\n if (\n currentRow?.parentElement?.classList.contains('hds-advanced-table__thead')\n ) {\n const thead = currentRow.parentElement;\n if (\n thead.children.item(0) === currentRow &&\n currentRow.children.item(0) === cell\n ) {\n cell.setAttribute('tabindex', '0');\n } else {\n cell.setAttribute('tabindex', '-1');\n }\n } else if (\n currentRow?.parentElement?.classList.contains('hds-advanced-table__tbody')\n ) {\n const grid = currentRow.parentElement?.closest('[role=\"grid\"]');\n const thead = grid?.querySelector(\n '[role=\"rowgroup\"].hds-advanced-table__thead'\n );\n const tbody = grid?.querySelector(\n '[role=\"rowgroup\"].hds-advanced-table__tbody'\n );\n\n if (thead === null) {\n if (\n tbody?.children.item(0) === currentRow &&\n currentRow.children.item(0) === cell\n ) {\n cell.setAttribute('tabindex', '0');\n }\n } else {\n cell.setAttribute('tabindex', '-1');\n }\n }\n};\n"],"names":["onFocusTrapDeactivate","cell","cellTabbableChildren","tabbable","child","setAttribute","updateTabbableChildren","isFocusTrapActive","displayCheck","HTMLElement","didInsertGridCell","currentRow","parentElement","classList","contains","thead","children","item","grid","closest","querySelector","tbody"],"mappings":";;AAAA;AACA;AACA;AACA;;AAMO,MAAMA,qBAAqB,GAAIC,IAAoB,IAAK;AAC7D,EAAA,MAAMC,oBAAoB,GAAGC,QAAQ,CAACF,IAAI,CAAC;AAE3C,EAAA,KAAK,MAAMG,KAAK,IAAIF,oBAAoB,EAAE;AACxCE,IAAAA,KAAK,CAACC,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC;AACtC,EAAA;AAEAJ,EAAAA,IAAI,CAACI,YAAY,CAAC,UAAU,EAAE,GAAG,CAAC;AACpC;MAEaC,sBAAsB,GAAGA,CACpCL,IAAoB,EACpBM,iBAA2B,KAClB;AACT,EAAA,MAAML,oBAAoB,GAAGC,QAAQ,CAACF,IAAI,EAAE;AAAEO,IAAAA,YAAY,EAAE;AAAO,GAAC,CAAC;AAErE,EAAA,KAAK,MAAMJ,KAAK,IAAIF,oBAAoB,EAAE;IACxC,IAAIE,KAAK,YAAYK,WAAW,EAAE;MAChC,IAAI,CAACF,iBAAiB,EAAE;AACtBH,QAAAA,KAAK,CAACC,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC;AACtC,MAAA;AACAD,MAAAA,KAAK,CAACC,YAAY,CAAC,qCAAqC,EAAE,EAAE,CAAC;AAC/D,IAAA;AACF,EAAA;AACF;AAEO,MAAMK,iBAAiB,GAC5BT,IAA4C,IACnC;EACTK,sBAAsB,CAACL,IAAI,CAAC;AAE5B,EAAA,MAAMU,UAAU,GAAGV,IAAI,CAACW,aAAa;EAErC,IACED,UAAU,EAAEC,aAAa,EAAEC,SAAS,CAACC,QAAQ,CAAC,2BAA2B,CAAC,EAC1E;AACA,IAAA,MAAMC,KAAK,GAAGJ,UAAU,CAACC,aAAa;IACtC,IACEG,KAAK,CAACC,QAAQ,CAACC,IAAI,CAAC,CAAC,CAAC,KAAKN,UAAU,IACrCA,UAAU,CAACK,QAAQ,CAACC,IAAI,CAAC,CAAC,CAAC,KAAKhB,IAAI,EACpC;AACAA,MAAAA,IAAI,CAACI,YAAY,CAAC,UAAU,EAAE,GAAG,CAAC;AACpC,IAAA,CAAC,MAAM;AACLJ,MAAAA,IAAI,CAACI,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC;AACrC,IAAA;AACF,EAAA,CAAC,MAAM,IACLM,UAAU,EAAEC,aAAa,EAAEC,SAAS,CAACC,QAAQ,CAAC,2BAA2B,CAAC,EAC1E;IACA,MAAMI,IAAI,GAAGP,UAAU,CAACC,aAAa,EAAEO,OAAO,CAAC,eAAe,CAAC;AAC/D,IAAA,MAAMJ,KAAK,GAAGG,IAAI,EAAEE,aAAa,CAC/B,6CACF,CAAC;AACD,IAAA,MAAMC,KAAK,GAAGH,IAAI,EAAEE,aAAa,CAC/B,6CACF,CAAC;IAED,IAAIL,KAAK,KAAK,IAAI,EAAE;MAClB,IACEM,KAAK,EAAEL,QAAQ,CAACC,IAAI,CAAC,CAAC,CAAC,KAAKN,UAAU,IACtCA,UAAU,CAACK,QAAQ,CAACC,IAAI,CAAC,CAAC,CAAC,KAAKhB,IAAI,EACpC;AACAA,QAAAA,IAAI,CAACI,YAAY,CAAC,UAAU,EAAE,GAAG,CAAC;AACpC,MAAA;AACF,IAAA,CAAC,MAAM;AACLJ,MAAAA,IAAI,CAACI,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC;AACrC,IAAA;AACF,EAAA;AACF;;;;"}
@@ -1,7 +1,7 @@
1
1
  import { focusable } from 'tabbable';
2
2
 
3
3
  /**
4
- * Copyright (c) HashiCorp, Inc.
4
+ * Copyright IBM Corp. 2021, 2025
5
5
  * SPDX-License-Identifier: MPL-2.0
6
6
  */
7
7
 
@@ -1 +1 @@
1
- {"version":3,"file":"keyboard-navigation.js","sources":["../../../src/modifiers/hds-advanced-table-cell/keyboard-navigation.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport { focusable } from 'tabbable';\n\nexport const handleGridCellKeyPress = (\n event: KeyboardEvent,\n enableFocusTrap: () => void\n): void => {\n const { key, target } = event;\n\n const changeActiveCell = (oldCell: HTMLElement, newCell: HTMLElement) => {\n oldCell.setAttribute('tabindex', '-1');\n newCell.setAttribute('tabindex', '0');\n newCell.scrollIntoView({\n behavior: 'smooth',\n block: 'center',\n inline: 'center',\n });\n newCell.focus({ preventScroll: true });\n };\n\n const findNewRow = (\n currentRow: HTMLElement,\n direction: 'ArrowDown' | 'ArrowUp'\n ) => {\n const grid = currentRow.parentElement?.closest('[role=\"grid\"]');\n const allVisibleRows = grid?.querySelectorAll(\n '[role=\"row\"]:not(.hds-advanced-table__tr--hidden)'\n );\n\n if (allVisibleRows) {\n const currentRowIndex = Array.from(allVisibleRows).indexOf(currentRow);\n if (direction === 'ArrowDown') return allVisibleRows[currentRowIndex + 1];\n else if (direction === 'ArrowUp')\n return allVisibleRows[currentRowIndex - 1];\n }\n };\n\n if (\n target instanceof HTMLElement &&\n (target.classList.contains('hds-advanced-table__th') ||\n target.classList.contains('hds-advanced-table__td'))\n ) {\n if (key === 'Enter') {\n const cellFocusableChildren = focusable(target);\n\n if (cellFocusableChildren.length > 0) {\n for (let i = 0; i < cellFocusableChildren.length; i++) {\n const child = cellFocusableChildren[i];\n if (child?.hasAttribute('data-advanced-table-child-focusable')) {\n child.setAttribute('tabindex', '0');\n }\n }\n target.setAttribute('tabindex', '-1');\n enableFocusTrap();\n }\n } else if (event.key === 'ArrowRight' || event.key === 'ArrowLeft') {\n event.preventDefault();\n const nextElement =\n key === 'ArrowRight'\n ? target.nextElementSibling\n : target.previousElementSibling;\n\n if (nextElement !== null && nextElement instanceof HTMLElement) {\n changeActiveCell(target, nextElement);\n }\n } else if (event.key === 'ArrowDown' || event.key === 'ArrowUp') {\n event.preventDefault();\n const currentRow = target.parentElement;\n\n if (currentRow instanceof HTMLElement) {\n const currentCellIndex = Array.from(currentRow.children).indexOf(\n target\n );\n const nextRow = findNewRow(currentRow, event.key);\n\n if (nextRow !== null && nextRow instanceof HTMLElement) {\n const nextCell = nextRow.children[currentCellIndex];\n if (nextCell instanceof HTMLElement) {\n changeActiveCell(target, nextCell);\n }\n }\n }\n } else if (event.key === 'Home' || event.key === 'End') {\n event.preventDefault();\n if (event.ctrlKey) {\n const table = target.parentElement?.closest('[role=\"grid\"]');\n const allVisibleRows = table?.querySelectorAll(\n '[role=\"row\"]:not(.hds-advanced-table__tr--hidden)'\n );\n\n if (allVisibleRows) {\n const nextRow =\n key === 'Home'\n ? allVisibleRows[0]\n : allVisibleRows[allVisibleRows.length - 1];\n\n if (nextRow) {\n const cellsInNextRow = nextRow.children;\n const nextElement =\n key === 'Home'\n ? cellsInNextRow[0]\n : cellsInNextRow[cellsInNextRow.length - 1];\n\n if (nextElement && nextElement instanceof HTMLElement) {\n changeActiveCell(target, nextElement);\n }\n }\n }\n } else {\n const currentRow = target.parentElement;\n\n if (currentRow) {\n const allCells = currentRow.children;\n const nextElement =\n key === 'Home' ? allCells[0] : allCells[allCells.length - 1];\n\n if (nextElement && nextElement instanceof HTMLElement) {\n changeActiveCell(target, nextElement);\n }\n }\n }\n } else if (event.key === 'PageUp' || event.key === 'PageDown') {\n event.preventDefault();\n const currentRow = target.parentElement;\n\n if (currentRow instanceof HTMLElement) {\n const currentCellIndex = Array.from(currentRow.children).indexOf(\n target\n );\n\n const grid = currentRow.parentElement?.closest('[role=\"grid\"]');\n const allVisibleRows = grid?.querySelectorAll(\n '[role=\"row\"]:not(.hds-advanced-table__tr--hidden)'\n );\n\n if (allVisibleRows) {\n const nextRow =\n event.key === 'PageUp'\n ? allVisibleRows[0]\n : allVisibleRows[allVisibleRows.length - 1];\n\n if (nextRow !== null && nextRow instanceof HTMLElement) {\n const nextCell = nextRow.children[currentCellIndex];\n if (nextCell instanceof HTMLElement) {\n changeActiveCell(target, nextCell);\n }\n }\n }\n }\n }\n }\n};\n"],"names":["handleGridCellKeyPress","event","enableFocusTrap","key","target","changeActiveCell","oldCell","newCell","setAttribute","scrollIntoView","behavior","block","inline","focus","preventScroll","findNewRow","currentRow","direction","grid","parentElement","closest","allVisibleRows","querySelectorAll","currentRowIndex","Array","from","indexOf","HTMLElement","classList","contains","cellFocusableChildren","focusable","length","i","child","hasAttribute","preventDefault","nextElement","nextElementSibling","previousElementSibling","currentCellIndex","children","nextRow","nextCell","ctrlKey","table","cellsInNextRow","allCells"],"mappings":"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"}
1
+ {"version":3,"file":"keyboard-navigation.js","sources":["../../../src/modifiers/hds-advanced-table-cell/keyboard-navigation.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2025\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport { focusable } from 'tabbable';\n\nexport const handleGridCellKeyPress = (\n event: KeyboardEvent,\n enableFocusTrap: () => void\n): void => {\n const { key, target } = event;\n\n const changeActiveCell = (oldCell: HTMLElement, newCell: HTMLElement) => {\n oldCell.setAttribute('tabindex', '-1');\n newCell.setAttribute('tabindex', '0');\n newCell.scrollIntoView({\n behavior: 'smooth',\n block: 'center',\n inline: 'center',\n });\n newCell.focus({ preventScroll: true });\n };\n\n const findNewRow = (\n currentRow: HTMLElement,\n direction: 'ArrowDown' | 'ArrowUp'\n ) => {\n const grid = currentRow.parentElement?.closest('[role=\"grid\"]');\n const allVisibleRows = grid?.querySelectorAll(\n '[role=\"row\"]:not(.hds-advanced-table__tr--hidden)'\n );\n\n if (allVisibleRows) {\n const currentRowIndex = Array.from(allVisibleRows).indexOf(currentRow);\n if (direction === 'ArrowDown') return allVisibleRows[currentRowIndex + 1];\n else if (direction === 'ArrowUp')\n return allVisibleRows[currentRowIndex - 1];\n }\n };\n\n if (\n target instanceof HTMLElement &&\n (target.classList.contains('hds-advanced-table__th') ||\n target.classList.contains('hds-advanced-table__td'))\n ) {\n if (key === 'Enter') {\n const cellFocusableChildren = focusable(target);\n\n if (cellFocusableChildren.length > 0) {\n for (let i = 0; i < cellFocusableChildren.length; i++) {\n const child = cellFocusableChildren[i];\n if (child?.hasAttribute('data-advanced-table-child-focusable')) {\n child.setAttribute('tabindex', '0');\n }\n }\n target.setAttribute('tabindex', '-1');\n enableFocusTrap();\n }\n } else if (event.key === 'ArrowRight' || event.key === 'ArrowLeft') {\n event.preventDefault();\n const nextElement =\n key === 'ArrowRight'\n ? target.nextElementSibling\n : target.previousElementSibling;\n\n if (nextElement !== null && nextElement instanceof HTMLElement) {\n changeActiveCell(target, nextElement);\n }\n } else if (event.key === 'ArrowDown' || event.key === 'ArrowUp') {\n event.preventDefault();\n const currentRow = target.parentElement;\n\n if (currentRow instanceof HTMLElement) {\n const currentCellIndex = Array.from(currentRow.children).indexOf(\n target\n );\n const nextRow = findNewRow(currentRow, event.key);\n\n if (nextRow !== null && nextRow instanceof HTMLElement) {\n const nextCell = nextRow.children[currentCellIndex];\n if (nextCell instanceof HTMLElement) {\n changeActiveCell(target, nextCell);\n }\n }\n }\n } else if (event.key === 'Home' || event.key === 'End') {\n event.preventDefault();\n if (event.ctrlKey) {\n const table = target.parentElement?.closest('[role=\"grid\"]');\n const allVisibleRows = table?.querySelectorAll(\n '[role=\"row\"]:not(.hds-advanced-table__tr--hidden)'\n );\n\n if (allVisibleRows) {\n const nextRow =\n key === 'Home'\n ? allVisibleRows[0]\n : allVisibleRows[allVisibleRows.length - 1];\n\n if (nextRow) {\n const cellsInNextRow = nextRow.children;\n const nextElement =\n key === 'Home'\n ? cellsInNextRow[0]\n : cellsInNextRow[cellsInNextRow.length - 1];\n\n if (nextElement && nextElement instanceof HTMLElement) {\n changeActiveCell(target, nextElement);\n }\n }\n }\n } else {\n const currentRow = target.parentElement;\n\n if (currentRow) {\n const allCells = currentRow.children;\n const nextElement =\n key === 'Home' ? allCells[0] : allCells[allCells.length - 1];\n\n if (nextElement && nextElement instanceof HTMLElement) {\n changeActiveCell(target, nextElement);\n }\n }\n }\n } else if (event.key === 'PageUp' || event.key === 'PageDown') {\n event.preventDefault();\n const currentRow = target.parentElement;\n\n if (currentRow instanceof HTMLElement) {\n const currentCellIndex = Array.from(currentRow.children).indexOf(\n target\n );\n\n const grid = currentRow.parentElement?.closest('[role=\"grid\"]');\n const allVisibleRows = grid?.querySelectorAll(\n '[role=\"row\"]:not(.hds-advanced-table__tr--hidden)'\n );\n\n if (allVisibleRows) {\n const nextRow =\n event.key === 'PageUp'\n ? allVisibleRows[0]\n : allVisibleRows[allVisibleRows.length - 1];\n\n if (nextRow !== null && nextRow instanceof HTMLElement) {\n const nextCell = nextRow.children[currentCellIndex];\n if (nextCell instanceof HTMLElement) {\n changeActiveCell(target, nextCell);\n }\n }\n }\n }\n }\n }\n};\n"],"names":["handleGridCellKeyPress","event","enableFocusTrap","key","target","changeActiveCell","oldCell","newCell","setAttribute","scrollIntoView","behavior","block","inline","focus","preventScroll","findNewRow","currentRow","direction","grid","parentElement","closest","allVisibleRows","querySelectorAll","currentRowIndex","Array","from","indexOf","HTMLElement","classList","contains","cellFocusableChildren","focusable","length","i","child","hasAttribute","preventDefault","nextElement","nextElementSibling","previousElementSibling","currentCellIndex","children","nextRow","nextCell","ctrlKey","table","cellsInNextRow","allCells"],"mappings":"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"}
@@ -4,7 +4,7 @@ import { didInsertGridCell, updateTabbableChildren } from './hds-advanced-table-
4
4
  import { handleGridCellKeyPress } from './hds-advanced-table-cell/keyboard-navigation.js';
5
5
 
6
6
  /**
7
- * Copyright (c) HashiCorp, Inc.
7
+ * Copyright IBM Corp. 2021, 2025
8
8
  * SPDX-License-Identifier: MPL-2.0
9
9
  */
10
10
 
@@ -1 +1 @@
1
- {"version":3,"file":"hds-advanced-table-cell.js","sources":["../../src/modifiers/hds-advanced-table-cell.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Modifier from 'ember-modifier';\nimport type { ArgsFor, PositionalArgs } from 'ember-modifier';\nimport { registerDestructor } from '@ember/destroyable';\n\nimport {\n didInsertGridCell,\n updateTabbableChildren,\n} from './hds-advanced-table-cell/dom-management.ts';\nimport { handleGridCellKeyPress } from './hds-advanced-table-cell/keyboard-navigation.ts';\nimport type Owner from '@ember/owner';\n\nexport interface HdsAdvancedTableCellModifierSignature {\n Args: {\n Named: {\n handleEnableFocusTrap: () => void;\n shouldTrapFocus: boolean;\n setCellElement: (el: HTMLDivElement) => void;\n };\n };\n Element: HTMLDivElement;\n}\n\nexport default class HdsAdvancedTableCellModifier extends Modifier<HdsAdvancedTableCellModifierSignature> {\n // have a copy of shouldTrapFocus internally so the correct value is used when update tabbable children\n private _shouldTrapFocus = false;\n private _didSetup = false;\n private _element: HTMLDivElement | undefined = undefined;\n private _observer: MutationObserver | undefined = undefined;\n private _keydownHandler!: (event: KeyboardEvent) => void;\n\n constructor(\n owner: Owner,\n args: ArgsFor<HdsAdvancedTableCellModifierSignature>\n ) {\n super(owner, args);\n\n registerDestructor(this, () => {\n this._observer?.disconnect();\n this._element?.removeEventListener('keydown', this._keydownHandler);\n this._element = undefined;\n });\n }\n\n modify(\n element: HTMLDivElement,\n positional: PositionalArgs<HdsAdvancedTableCellModifierSignature>,\n named: HdsAdvancedTableCellModifierSignature['Args']['Named']\n ): void {\n this._shouldTrapFocus = named.shouldTrapFocus;\n\n if (!this._didSetup) {\n this.#setupObserver(element, positional, named);\n named.setCellElement(element);\n this._didSetup = true;\n this._element = element;\n }\n }\n\n #setupObserver(\n element: HdsAdvancedTableCellModifierSignature['Element'],\n _positional: PositionalArgs<HdsAdvancedTableCellModifierSignature>,\n named: HdsAdvancedTableCellModifierSignature['Args']['Named']\n ): void {\n const { handleEnableFocusTrap } = named;\n didInsertGridCell(element);\n\n this._keydownHandler = (event: KeyboardEvent) => {\n handleGridCellKeyPress(event, handleEnableFocusTrap);\n };\n element.addEventListener('keydown', this._keydownHandler);\n\n this._observer = new MutationObserver(() => {\n updateTabbableChildren(element, this._shouldTrapFocus);\n });\n this._observer.observe(element, {\n childList: true,\n subtree: true,\n });\n }\n}\n"],"names":["HdsAdvancedTableCellModifier","Modifier","_shouldTrapFocus","_didSetup","_element","undefined","_observer","_keydownHandler","constructor","owner","args","registerDestructor","disconnect","removeEventListener","modify","element","positional","named","shouldTrapFocus","setCellElement","#setupObserver","_positional","handleEnableFocusTrap","didInsertGridCell","event","handleGridCellKeyPress","addEventListener","MutationObserver","updateTabbableChildren","observe","childList","subtree"],"mappings":";;;;;AAAA;AACA;AACA;AACA;;AAwBe,MAAMA,4BAA4B,SAASC,QAAQ,CAAwC;AACxG;AACQC,EAAAA,gBAAgB,GAAG,KAAK;AACxBC,EAAAA,SAAS,GAAG,KAAK;AACjBC,EAAAA,QAAQ,GAA+BC,SAAS;AAChDC,EAAAA,SAAS,GAAiCD,SAAS;EACnDE,eAAe;AAEvBC,EAAAA,WAAWA,CACTC,KAAY,EACZC,IAAoD,EACpD;AACA,IAAA,KAAK,CAACD,KAAK,EAAEC,IAAI,CAAC;IAElBC,kBAAkB,CAAC,IAAI,EAAE,MAAM;AAC7B,MAAA,IAAI,CAACL,SAAS,EAAEM,UAAU,EAAE;MAC5B,IAAI,CAACR,QAAQ,EAAES,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAACN,eAAe,CAAC;MACnE,IAAI,CAACH,QAAQ,GAAGC,SAAS;AAC3B,IAAA,CAAC,CAAC;AACJ,EAAA;AAEAS,EAAAA,MAAMA,CACJC,OAAuB,EACvBC,UAAiE,EACjEC,KAA6D,EACvD;AACN,IAAA,IAAI,CAACf,gBAAgB,GAAGe,KAAK,CAACC,eAAe;AAE7C,IAAA,IAAI,CAAC,IAAI,CAACf,SAAS,EAAE;MACnB,IAAI,CAAC,cAAc,CAACY,OAAO,EAAEC,UAAU,EAAEC,KAAK,CAAC;AAC/CA,MAAAA,KAAK,CAACE,cAAc,CAACJ,OAAO,CAAC;MAC7B,IAAI,CAACZ,SAAS,GAAG,IAAI;MACrB,IAAI,CAACC,QAAQ,GAAGW,OAAO;AACzB,IAAA;AACF,EAAA;AAEA,EAAA,cAAcK,CACZL,OAAyD,EACzDM,WAAkE,EAClEJ,KAA6D,EACvD;IACN,MAAM;AAAEK,MAAAA;AAAsB,KAAC,GAAGL,KAAK;IACvCM,iBAAiB,CAACR,OAAO,CAAC;AAE1B,IAAA,IAAI,CAACR,eAAe,GAAIiB,KAAoB,IAAK;AAC/CC,MAAAA,sBAAsB,CAACD,KAAK,EAAEF,qBAAqB,CAAC;IACtD,CAAC;IACDP,OAAO,CAACW,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAACnB,eAAe,CAAC;AAEzD,IAAA,IAAI,CAACD,SAAS,GAAG,IAAIqB,gBAAgB,CAAC,MAAM;AAC1CC,MAAAA,sBAAsB,CAACb,OAAO,EAAE,IAAI,CAACb,gBAAgB,CAAC;AACxD,IAAA,CAAC,CAAC;AACF,IAAA,IAAI,CAACI,SAAS,CAACuB,OAAO,CAACd,OAAO,EAAE;AAC9Be,MAAAA,SAAS,EAAE,IAAI;AACfC,MAAAA,OAAO,EAAE;AACX,KAAC,CAAC;AACJ,EAAA;AACF;;;;"}
1
+ {"version":3,"file":"hds-advanced-table-cell.js","sources":["../../src/modifiers/hds-advanced-table-cell.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2025\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Modifier from 'ember-modifier';\nimport type { ArgsFor, PositionalArgs } from 'ember-modifier';\nimport { registerDestructor } from '@ember/destroyable';\n\nimport {\n didInsertGridCell,\n updateTabbableChildren,\n} from './hds-advanced-table-cell/dom-management.ts';\nimport { handleGridCellKeyPress } from './hds-advanced-table-cell/keyboard-navigation.ts';\nimport type Owner from '@ember/owner';\n\nexport interface HdsAdvancedTableCellModifierSignature {\n Args: {\n Named: {\n handleEnableFocusTrap: () => void;\n shouldTrapFocus: boolean;\n setCellElement: (el: HTMLDivElement) => void;\n };\n };\n Element: HTMLDivElement;\n}\n\nexport default class HdsAdvancedTableCellModifier extends Modifier<HdsAdvancedTableCellModifierSignature> {\n // have a copy of shouldTrapFocus internally so the correct value is used when update tabbable children\n private _shouldTrapFocus = false;\n private _didSetup = false;\n private _element: HTMLDivElement | undefined = undefined;\n private _observer: MutationObserver | undefined = undefined;\n private _keydownHandler!: (event: KeyboardEvent) => void;\n\n constructor(\n owner: Owner,\n args: ArgsFor<HdsAdvancedTableCellModifierSignature>\n ) {\n super(owner, args);\n\n registerDestructor(this, () => {\n this._observer?.disconnect();\n this._element?.removeEventListener('keydown', this._keydownHandler);\n this._element = undefined;\n });\n }\n\n modify(\n element: HTMLDivElement,\n positional: PositionalArgs<HdsAdvancedTableCellModifierSignature>,\n named: HdsAdvancedTableCellModifierSignature['Args']['Named']\n ): void {\n this._shouldTrapFocus = named.shouldTrapFocus;\n\n if (!this._didSetup) {\n this.#setupObserver(element, positional, named);\n named.setCellElement(element);\n this._didSetup = true;\n this._element = element;\n }\n }\n\n #setupObserver(\n element: HdsAdvancedTableCellModifierSignature['Element'],\n _positional: PositionalArgs<HdsAdvancedTableCellModifierSignature>,\n named: HdsAdvancedTableCellModifierSignature['Args']['Named']\n ): void {\n const { handleEnableFocusTrap } = named;\n didInsertGridCell(element);\n\n this._keydownHandler = (event: KeyboardEvent) => {\n handleGridCellKeyPress(event, handleEnableFocusTrap);\n };\n element.addEventListener('keydown', this._keydownHandler);\n\n this._observer = new MutationObserver(() => {\n updateTabbableChildren(element, this._shouldTrapFocus);\n });\n this._observer.observe(element, {\n childList: true,\n subtree: true,\n });\n }\n}\n"],"names":["HdsAdvancedTableCellModifier","Modifier","_shouldTrapFocus","_didSetup","_element","undefined","_observer","_keydownHandler","constructor","owner","args","registerDestructor","disconnect","removeEventListener","modify","element","positional","named","shouldTrapFocus","setCellElement","#setupObserver","_positional","handleEnableFocusTrap","didInsertGridCell","event","handleGridCellKeyPress","addEventListener","MutationObserver","updateTabbableChildren","observe","childList","subtree"],"mappings":";;;;;AAAA;AACA;AACA;AACA;;AAwBe,MAAMA,4BAA4B,SAASC,QAAQ,CAAwC;AACxG;AACQC,EAAAA,gBAAgB,GAAG,KAAK;AACxBC,EAAAA,SAAS,GAAG,KAAK;AACjBC,EAAAA,QAAQ,GAA+BC,SAAS;AAChDC,EAAAA,SAAS,GAAiCD,SAAS;EACnDE,eAAe;AAEvBC,EAAAA,WAAWA,CACTC,KAAY,EACZC,IAAoD,EACpD;AACA,IAAA,KAAK,CAACD,KAAK,EAAEC,IAAI,CAAC;IAElBC,kBAAkB,CAAC,IAAI,EAAE,MAAM;AAC7B,MAAA,IAAI,CAACL,SAAS,EAAEM,UAAU,EAAE;MAC5B,IAAI,CAACR,QAAQ,EAAES,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAACN,eAAe,CAAC;MACnE,IAAI,CAACH,QAAQ,GAAGC,SAAS;AAC3B,IAAA,CAAC,CAAC;AACJ,EAAA;AAEAS,EAAAA,MAAMA,CACJC,OAAuB,EACvBC,UAAiE,EACjEC,KAA6D,EACvD;AACN,IAAA,IAAI,CAACf,gBAAgB,GAAGe,KAAK,CAACC,eAAe;AAE7C,IAAA,IAAI,CAAC,IAAI,CAACf,SAAS,EAAE;MACnB,IAAI,CAAC,cAAc,CAACY,OAAO,EAAEC,UAAU,EAAEC,KAAK,CAAC;AAC/CA,MAAAA,KAAK,CAACE,cAAc,CAACJ,OAAO,CAAC;MAC7B,IAAI,CAACZ,SAAS,GAAG,IAAI;MACrB,IAAI,CAACC,QAAQ,GAAGW,OAAO;AACzB,IAAA;AACF,EAAA;AAEA,EAAA,cAAcK,CACZL,OAAyD,EACzDM,WAAkE,EAClEJ,KAA6D,EACvD;IACN,MAAM;AAAEK,MAAAA;AAAsB,KAAC,GAAGL,KAAK;IACvCM,iBAAiB,CAACR,OAAO,CAAC;AAE1B,IAAA,IAAI,CAACR,eAAe,GAAIiB,KAAoB,IAAK;AAC/CC,MAAAA,sBAAsB,CAACD,KAAK,EAAEF,qBAAqB,CAAC;IACtD,CAAC;IACDP,OAAO,CAACW,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAACnB,eAAe,CAAC;AAEzD,IAAA,IAAI,CAACD,SAAS,GAAG,IAAIqB,gBAAgB,CAAC,MAAM;AAC1CC,MAAAA,sBAAsB,CAACb,OAAO,EAAE,IAAI,CAACb,gBAAgB,CAAC;AACxD,IAAA,CAAC,CAAC;AACF,IAAA,IAAI,CAACI,SAAS,CAACuB,OAAO,CAACd,OAAO,EAAE;AAC9Be,MAAAA,SAAS,EAAE,IAAI;AACfC,MAAAA,OAAO,EAAE;AACX,KAAC,CAAC;AACJ,EAAA;AACF;;;;"}
@@ -3,7 +3,7 @@ import { assert } from '@ember/debug';
3
3
  import { autoUpdate, limitShift, offset, flip, shift, autoPlacement, arrow, size, computePosition } from '@floating-ui/dom';
4
4
 
5
5
  /**
6
- * Copyright (c) HashiCorp, Inc.
6
+ * Copyright IBM Corp. 2021, 2025
7
7
  * SPDX-License-Identifier: MPL-2.0
8
8
  */
9
9
 
@@ -1 +1 @@
1
- {"version":3,"file":"hds-anchored-position.js","sources":["../../src/modifiers/hds-anchored-position.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport { modifier } from 'ember-modifier';\nimport { assert } from '@ember/debug';\n\nimport {\n autoUpdate,\n computePosition,\n offset,\n flip,\n shift,\n limitShift,\n autoPlacement,\n arrow,\n // ---\n // this could be used in the future if we want to give consumers an option to hide the \"floating\" element when the \"anchor\" hides from the viewport\n // see: https://floating-ui.com/docs/hide\n // hide,\n // ---\n size,\n} from '@floating-ui/dom';\n\nimport type {\n Placement,\n Strategy,\n OffsetOptions,\n FlipOptions,\n ShiftOptions,\n AutoPlacementOptions,\n ArrowOptions,\n Middleware,\n} from '@floating-ui/dom';\n\nexport enum HdsEnableCollisionDetectionOptions {\n Shift = 'shift',\n Flip = 'flip',\n Auto = 'auto',\n}\n\nexport type HdsEnableCollisionDetection =\n `${HdsEnableCollisionDetectionOptions}`;\n\nexport const DEFAULT_PLACEMENT = 'bottom';\nexport const PLACEMENTS: Placement[] = [\n 'top',\n 'top-start',\n 'top-end',\n 'right',\n 'right-start',\n 'right-end',\n 'bottom',\n 'bottom-start',\n 'bottom-end',\n 'left',\n 'left-start',\n 'left-end',\n];\n\nexport const ENABLE_COLLISION_DETECTION_OPTIONS: HdsEnableCollisionDetection[] =\n Object.values(HdsEnableCollisionDetectionOptions);\n\n// share the same default value of \"padding\" for `flip/shift/autoPlacement` options\n// this refers to the minimum distance from the boundaries' edges (the viewport)\n// before the floating element changes its position (flips, shifts, or autoplace itself)\nconst DEFAULT_EDGE_DISTANCE = 8;\n\nexport type FloatingUIOptions = {\n placement?: Placement;\n strategy?: Strategy;\n offsetOptions?: OffsetOptions;\n flipOptions?: FlipOptions;\n shiftOptions?: ShiftOptions;\n autoPlacementOptions?: AutoPlacementOptions;\n middlewareExtra?: Middleware[];\n enableCollisionDetection?: boolean | HdsEnableCollisionDetection;\n arrowElement?: ArrowOptions['element'];\n arrowPadding?: ArrowOptions['padding'];\n matchToggleWidth?: boolean;\n};\n\nexport type HdsAnchoredPositionOptions = FloatingUIOptions & {\n arrowSelector?: string;\n};\n\n// we use this function to process all the options provided to the modifier in a single place,\n// in relation to the Floating UI APIs, and keep the modifier code more clean/simple\nexport const getFloatingUIOptions = (\n options: FloatingUIOptions\n): {\n placement: Placement;\n strategy: Strategy;\n middleware: Middleware[];\n} => {\n const {\n placement = DEFAULT_PLACEMENT,\n strategy = 'absolute', // we don't need to use `fixed` if we use the Popover API for the \"floating\" element (it puts the element in the `top-layer`)\n offsetOptions,\n flipOptions = { padding: DEFAULT_EDGE_DISTANCE },\n shiftOptions = { padding: DEFAULT_EDGE_DISTANCE, limiter: limitShift() },\n autoPlacementOptions = { padding: DEFAULT_EDGE_DISTANCE },\n middlewareExtra = [],\n enableCollisionDetection,\n arrowElement,\n arrowPadding,\n matchToggleWidth,\n } = options;\n\n // we build dynamically the list of middleware functions to invoke, depending on the options provided\n\n const middleware = [];\n\n // https://floating-ui.com/docs/offset\n middleware.push(offset(offsetOptions));\n\n // https://floating-ui.com/docs/flip\n // https://floating-ui.com/docs/shift\n // https://floating-ui.com/docs/autoPlacement\n if (\n enableCollisionDetection === true ||\n enableCollisionDetection === 'flip'\n ) {\n middleware.push(flip(flipOptions));\n }\n if (\n enableCollisionDetection === true ||\n enableCollisionDetection === 'shift'\n ) {\n middleware.push(shift(shiftOptions));\n }\n if (enableCollisionDetection === 'auto') {\n middleware.push(autoPlacement(autoPlacementOptions));\n }\n\n // https://floating-ui.com/docs/arrow\n if (arrowElement) {\n middleware.push(\n arrow({\n element: arrowElement,\n padding: arrowPadding ?? 0,\n })\n );\n }\n\n // https://floating-ui.com/docs/size#match-reference-width\n if (matchToggleWidth) {\n middleware.push(\n size({\n apply({ rects, elements }) {\n // wrap Object.assign inside a requestAnimationFrame to avoid ResizeObserver loop limit exceeded error\n // https://github.com/floating-ui/floating-ui/issues/1740\n requestAnimationFrame(() => {\n Object.assign(elements.floating.style, {\n width: `${rects.reference.width}px`,\n });\n });\n },\n })\n );\n }\n\n middleware.push(...middlewareExtra);\n\n return {\n placement,\n strategy,\n middleware,\n };\n};\n\nexport interface HdsAnchoredPositionSignature {\n Element: HTMLElement;\n Args: {\n Positional: [HTMLElement | SVGElement];\n Named: HdsAnchoredPositionOptions;\n };\n}\n\n// Notice: we use a function-based modifier here instead of a class-based one\n// because it's quite simple in its logic, and doesn't require injecting services\n// see: https://github.com/ember-modifier/ember-modifier#function-based-modifiers\n\nexport default modifier<HdsAnchoredPositionSignature>(\n (element, positional, named = {}) => {\n // the element that \"floats\" next to the \"anchor\" (whose position is calculated in relation to the anchor)\n // notice: this is the element the Ember modifier is attached to\n const _floatingElement = element;\n\n // the element that acts as an \"anchor\" for the \"floating\" element\n // it can be a DOM (string) selector or a DOM element\n // notice: it's expressed as \"positional\" argument (array of arguments) for the modifier\n const _anchorTarget = positional[0];\n const _anchorElement =\n typeof _anchorTarget === 'string'\n ? document.querySelector(_anchorTarget)\n : _anchorTarget;\n\n assert(\n '`hds-anchored-position` modifier - the provided \"anchoring\" element is not defined correctly',\n _anchorElement instanceof HTMLElement ||\n _anchorElement instanceof SVGElement\n );\n\n // the \"arrow\" element (optional) associated with the \"floating\" element\n // it can be a DOM selector (string) or a DOM element\n // notice: it's declared inside the \"named\" argument (object) for the modifier\n // but we need to extract it also here so it can be used to assign inline styles to it\n let arrowElement: HTMLElement | SVGElement | undefined;\n\n if (named.arrowElement) {\n assert(\n '`hds-anchored-position` modifier - the `element` provided for the \"arrow\" element is not a valid DOM node',\n named.arrowElement instanceof HTMLElement ||\n named.arrowElement instanceof SVGElement\n );\n\n arrowElement = named.arrowElement;\n } else if (named.arrowSelector) {\n assert(\n '`hds-anchored-position` modifier - the `selector` provided for the \"arrow\" element must be a string',\n typeof named.arrowSelector === 'string'\n );\n\n const selectedArrowElement = document.querySelector(named.arrowSelector);\n if (selectedArrowElement instanceof HTMLElement) {\n arrowElement = selectedArrowElement;\n } else {\n assert(\n '`hds-anchored-position` modifier - the `selector` provided for the \"arrow\" element is not a valid DOM selector'\n );\n }\n }\n\n // the Floating UI \"options\" to apply to the \"floating\" element\n // notice: we spread the `named` argument and override its `arrowElement` value instead of setting it directly because Ember complains that modifier's arguments must be immutable\n const floatingOptions = getFloatingUIOptions({ ...named, arrowElement });\n\n const computeFloatingPosition = async () => {\n // important to know: `computePosition()` is not stateful, it only positions the \"floating\" element once\n // see: https://floating-ui.com/docs/computePosition\n const state = await computePosition(\n _anchorElement,\n _floatingElement,\n floatingOptions\n );\n\n const { x, y, placement, strategy, middlewareData } = state;\n\n Object.assign(_floatingElement.style, {\n position: strategy,\n top: `${y}px`,\n left: `${x}px`,\n // TODO? commenting this for now, will need to make this conditional to some argument (and understand how this relates to the `@height` argument)\n // maxHeight: `${middlewareData.size.availableHeight - 10}px`,\n });\n\n if (arrowElement && middlewareData.arrow) {\n // we assign a \"data\" attribute to the \"arrow\" element so we can use CSS (in the consuming components) to position/rotate it accordingly and we avoid calculating at runtime values that technically we already know\n // (similar to what Tippy.js does: https://github.com/atomiks/tippyjs/blob/master/src/scss/svg-arrow.scss)\n // IMPORTANT: floating-ui assumes the \"arrow\" container is square!\n arrowElement.setAttribute(\n 'data-hds-anchored-arrow-placement',\n placement\n );\n\n // we set `x` or `y` value (depends on the position of the arrow in relation to the \"floating\" element placement)\n // see: https://floating-ui.com/docs/arrow#usage\n Object.assign(arrowElement.style, {\n left:\n middlewareData.arrow.x != null ? `${middlewareData.arrow.x}px` : '',\n top:\n middlewareData.arrow.y != null ? `${middlewareData.arrow.y}px` : '',\n });\n }\n };\n\n // the `autoUpdate` function automatically updates the position of the floating element when necessary.\n // it should only be called when the floating element is mounted on the DOM or visible on the screen.\n // it returns a \"cleanup\" function that should be invoked when the floating element is removed from the DOM or hidden from the screen.\n // see: https://floating-ui.com/docs/autoUpdate\n const cleanupFloatingUI = autoUpdate(\n _anchorElement,\n _floatingElement,\n // eslint-disable-next-line @typescript-eslint/no-misused-promises\n computeFloatingPosition\n );\n\n // this (teardown) function is run when the element is removed from the DOM\n return (): void => {\n cleanupFloatingUI();\n };\n }\n);\n"],"names":["HdsEnableCollisionDetectionOptions","DEFAULT_PLACEMENT","PLACEMENTS","ENABLE_COLLISION_DETECTION_OPTIONS","Object","values","DEFAULT_EDGE_DISTANCE","getFloatingUIOptions","options","placement","strategy","offsetOptions","flipOptions","padding","shiftOptions","limiter","limitShift","autoPlacementOptions","middlewareExtra","enableCollisionDetection","arrowElement","arrowPadding","matchToggleWidth","middleware","push","offset","flip","shift","autoPlacement","arrow","element","size","apply","rects","elements","requestAnimationFrame","assign","floating","style","width","reference","modifier","positional","named","_floatingElement","_anchorTarget","_anchorElement","document","querySelector","assert","HTMLElement","SVGElement","arrowSelector","selectedArrowElement","floatingOptions","computeFloatingPosition","state","computePosition","x","y","middlewareData","position","top","left","setAttribute","cleanupFloatingUI","autoUpdate"],"mappings":"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"}
1
+ {"version":3,"file":"hds-anchored-position.js","sources":["../../src/modifiers/hds-anchored-position.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2025\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport { modifier } from 'ember-modifier';\nimport { assert } from '@ember/debug';\n\nimport {\n autoUpdate,\n computePosition,\n offset,\n flip,\n shift,\n limitShift,\n autoPlacement,\n arrow,\n // ---\n // this could be used in the future if we want to give consumers an option to hide the \"floating\" element when the \"anchor\" hides from the viewport\n // see: https://floating-ui.com/docs/hide\n // hide,\n // ---\n size,\n} from '@floating-ui/dom';\n\nimport type {\n Placement,\n Strategy,\n OffsetOptions,\n FlipOptions,\n ShiftOptions,\n AutoPlacementOptions,\n ArrowOptions,\n Middleware,\n} from '@floating-ui/dom';\n\nexport enum HdsEnableCollisionDetectionOptions {\n Shift = 'shift',\n Flip = 'flip',\n Auto = 'auto',\n}\n\nexport type HdsEnableCollisionDetection =\n `${HdsEnableCollisionDetectionOptions}`;\n\nexport const DEFAULT_PLACEMENT = 'bottom';\nexport const PLACEMENTS: Placement[] = [\n 'top',\n 'top-start',\n 'top-end',\n 'right',\n 'right-start',\n 'right-end',\n 'bottom',\n 'bottom-start',\n 'bottom-end',\n 'left',\n 'left-start',\n 'left-end',\n];\n\nexport const ENABLE_COLLISION_DETECTION_OPTIONS: HdsEnableCollisionDetection[] =\n Object.values(HdsEnableCollisionDetectionOptions);\n\n// share the same default value of \"padding\" for `flip/shift/autoPlacement` options\n// this refers to the minimum distance from the boundaries' edges (the viewport)\n// before the floating element changes its position (flips, shifts, or autoplace itself)\nconst DEFAULT_EDGE_DISTANCE = 8;\n\nexport type FloatingUIOptions = {\n placement?: Placement;\n strategy?: Strategy;\n offsetOptions?: OffsetOptions;\n flipOptions?: FlipOptions;\n shiftOptions?: ShiftOptions;\n autoPlacementOptions?: AutoPlacementOptions;\n middlewareExtra?: Middleware[];\n enableCollisionDetection?: boolean | HdsEnableCollisionDetection;\n arrowElement?: ArrowOptions['element'];\n arrowPadding?: ArrowOptions['padding'];\n matchToggleWidth?: boolean;\n};\n\nexport type HdsAnchoredPositionOptions = FloatingUIOptions & {\n arrowSelector?: string;\n};\n\n// we use this function to process all the options provided to the modifier in a single place,\n// in relation to the Floating UI APIs, and keep the modifier code more clean/simple\nexport const getFloatingUIOptions = (\n options: FloatingUIOptions\n): {\n placement: Placement;\n strategy: Strategy;\n middleware: Middleware[];\n} => {\n const {\n placement = DEFAULT_PLACEMENT,\n strategy = 'absolute', // we don't need to use `fixed` if we use the Popover API for the \"floating\" element (it puts the element in the `top-layer`)\n offsetOptions,\n flipOptions = { padding: DEFAULT_EDGE_DISTANCE },\n shiftOptions = { padding: DEFAULT_EDGE_DISTANCE, limiter: limitShift() },\n autoPlacementOptions = { padding: DEFAULT_EDGE_DISTANCE },\n middlewareExtra = [],\n enableCollisionDetection,\n arrowElement,\n arrowPadding,\n matchToggleWidth,\n } = options;\n\n // we build dynamically the list of middleware functions to invoke, depending on the options provided\n\n const middleware = [];\n\n // https://floating-ui.com/docs/offset\n middleware.push(offset(offsetOptions));\n\n // https://floating-ui.com/docs/flip\n // https://floating-ui.com/docs/shift\n // https://floating-ui.com/docs/autoPlacement\n if (\n enableCollisionDetection === true ||\n enableCollisionDetection === 'flip'\n ) {\n middleware.push(flip(flipOptions));\n }\n if (\n enableCollisionDetection === true ||\n enableCollisionDetection === 'shift'\n ) {\n middleware.push(shift(shiftOptions));\n }\n if (enableCollisionDetection === 'auto') {\n middleware.push(autoPlacement(autoPlacementOptions));\n }\n\n // https://floating-ui.com/docs/arrow\n if (arrowElement) {\n middleware.push(\n arrow({\n element: arrowElement,\n padding: arrowPadding ?? 0,\n })\n );\n }\n\n // https://floating-ui.com/docs/size#match-reference-width\n if (matchToggleWidth) {\n middleware.push(\n size({\n apply({ rects, elements }) {\n // wrap Object.assign inside a requestAnimationFrame to avoid ResizeObserver loop limit exceeded error\n // https://github.com/floating-ui/floating-ui/issues/1740\n requestAnimationFrame(() => {\n Object.assign(elements.floating.style, {\n width: `${rects.reference.width}px`,\n });\n });\n },\n })\n );\n }\n\n middleware.push(...middlewareExtra);\n\n return {\n placement,\n strategy,\n middleware,\n };\n};\n\nexport interface HdsAnchoredPositionSignature {\n Element: HTMLElement;\n Args: {\n Positional: [HTMLElement | SVGElement];\n Named: HdsAnchoredPositionOptions;\n };\n}\n\n// Notice: we use a function-based modifier here instead of a class-based one\n// because it's quite simple in its logic, and doesn't require injecting services\n// see: https://github.com/ember-modifier/ember-modifier#function-based-modifiers\n\nexport default modifier<HdsAnchoredPositionSignature>(\n (element, positional, named = {}) => {\n // the element that \"floats\" next to the \"anchor\" (whose position is calculated in relation to the anchor)\n // notice: this is the element the Ember modifier is attached to\n const _floatingElement = element;\n\n // the element that acts as an \"anchor\" for the \"floating\" element\n // it can be a DOM (string) selector or a DOM element\n // notice: it's expressed as \"positional\" argument (array of arguments) for the modifier\n const _anchorTarget = positional[0];\n const _anchorElement =\n typeof _anchorTarget === 'string'\n ? document.querySelector(_anchorTarget)\n : _anchorTarget;\n\n assert(\n '`hds-anchored-position` modifier - the provided \"anchoring\" element is not defined correctly',\n _anchorElement instanceof HTMLElement ||\n _anchorElement instanceof SVGElement\n );\n\n // the \"arrow\" element (optional) associated with the \"floating\" element\n // it can be a DOM selector (string) or a DOM element\n // notice: it's declared inside the \"named\" argument (object) for the modifier\n // but we need to extract it also here so it can be used to assign inline styles to it\n let arrowElement: HTMLElement | SVGElement | undefined;\n\n if (named.arrowElement) {\n assert(\n '`hds-anchored-position` modifier - the `element` provided for the \"arrow\" element is not a valid DOM node',\n named.arrowElement instanceof HTMLElement ||\n named.arrowElement instanceof SVGElement\n );\n\n arrowElement = named.arrowElement;\n } else if (named.arrowSelector) {\n assert(\n '`hds-anchored-position` modifier - the `selector` provided for the \"arrow\" element must be a string',\n typeof named.arrowSelector === 'string'\n );\n\n const selectedArrowElement = document.querySelector(named.arrowSelector);\n if (selectedArrowElement instanceof HTMLElement) {\n arrowElement = selectedArrowElement;\n } else {\n assert(\n '`hds-anchored-position` modifier - the `selector` provided for the \"arrow\" element is not a valid DOM selector'\n );\n }\n }\n\n // the Floating UI \"options\" to apply to the \"floating\" element\n // notice: we spread the `named` argument and override its `arrowElement` value instead of setting it directly because Ember complains that modifier's arguments must be immutable\n const floatingOptions = getFloatingUIOptions({ ...named, arrowElement });\n\n const computeFloatingPosition = async () => {\n // important to know: `computePosition()` is not stateful, it only positions the \"floating\" element once\n // see: https://floating-ui.com/docs/computePosition\n const state = await computePosition(\n _anchorElement,\n _floatingElement,\n floatingOptions\n );\n\n const { x, y, placement, strategy, middlewareData } = state;\n\n Object.assign(_floatingElement.style, {\n position: strategy,\n top: `${y}px`,\n left: `${x}px`,\n // TODO? commenting this for now, will need to make this conditional to some argument (and understand how this relates to the `@height` argument)\n // maxHeight: `${middlewareData.size.availableHeight - 10}px`,\n });\n\n if (arrowElement && middlewareData.arrow) {\n // we assign a \"data\" attribute to the \"arrow\" element so we can use CSS (in the consuming components) to position/rotate it accordingly and we avoid calculating at runtime values that technically we already know\n // (similar to what Tippy.js does: https://github.com/atomiks/tippyjs/blob/master/src/scss/svg-arrow.scss)\n // IMPORTANT: floating-ui assumes the \"arrow\" container is square!\n arrowElement.setAttribute(\n 'data-hds-anchored-arrow-placement',\n placement\n );\n\n // we set `x` or `y` value (depends on the position of the arrow in relation to the \"floating\" element placement)\n // see: https://floating-ui.com/docs/arrow#usage\n Object.assign(arrowElement.style, {\n left:\n middlewareData.arrow.x != null ? `${middlewareData.arrow.x}px` : '',\n top:\n middlewareData.arrow.y != null ? `${middlewareData.arrow.y}px` : '',\n });\n }\n };\n\n // the `autoUpdate` function automatically updates the position of the floating element when necessary.\n // it should only be called when the floating element is mounted on the DOM or visible on the screen.\n // it returns a \"cleanup\" function that should be invoked when the floating element is removed from the DOM or hidden from the screen.\n // see: https://floating-ui.com/docs/autoUpdate\n const cleanupFloatingUI = autoUpdate(\n _anchorElement,\n _floatingElement,\n // eslint-disable-next-line @typescript-eslint/no-misused-promises\n computeFloatingPosition\n );\n\n // this (teardown) function is run when the element is removed from the DOM\n return (): void => {\n cleanupFloatingUI();\n };\n }\n);\n"],"names":["HdsEnableCollisionDetectionOptions","DEFAULT_PLACEMENT","PLACEMENTS","ENABLE_COLLISION_DETECTION_OPTIONS","Object","values","DEFAULT_EDGE_DISTANCE","getFloatingUIOptions","options","placement","strategy","offsetOptions","flipOptions","padding","shiftOptions","limiter","limitShift","autoPlacementOptions","middlewareExtra","enableCollisionDetection","arrowElement","arrowPadding","matchToggleWidth","middleware","push","offset","flip","shift","autoPlacement","arrow","element","size","apply","rects","elements","requestAnimationFrame","assign","floating","style","width","reference","modifier","positional","named","_floatingElement","_anchorTarget","_anchorElement","document","querySelector","assert","HTMLElement","SVGElement","arrowSelector","selectedArrowElement","floatingOptions","computeFloatingPosition","state","computePosition","x","y","middlewareData","position","top","left","setAttribute","cleanupFloatingUI","autoUpdate"],"mappings":"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"}
@@ -2,7 +2,7 @@ import { modifier } from 'ember-modifier';
2
2
  import { assert, warn } from '@ember/debug';
3
3
 
4
4
  /**
5
- * Copyright (c) HashiCorp, Inc.
5
+ * Copyright IBM Corp. 2021, 2025
6
6
  * SPDX-License-Identifier: MPL-2.0
7
7
  */
8
8
 
@@ -1 +1 @@
1
- {"version":3,"file":"hds-clipboard.js","sources":["../../src/modifiers/hds-clipboard.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport { modifier } from 'ember-modifier';\nimport { assert, warn } from '@ember/debug';\n\ntype TextToCopy = string | number | bigint;\ntype TargetToCopy = HTMLElement | string;\n\nexport interface HdsClipboardModifierSignature {\n Element: HTMLElement;\n Args: {\n Named: {\n text?: TextToCopy;\n target?: TargetToCopy;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n onSuccess?: (...args: any[]) => void;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n onError?: (...args: any[]) => void;\n };\n };\n}\n\nexport const getTextToCopy = (text: TextToCopy): string => {\n let textToCopy: string = '';\n\n if (typeof text === 'string') {\n textToCopy = text;\n } else if (\n // context: https://github.com/hashicorp/design-system/pull/1564\n typeof text === 'number' ||\n typeof text === 'bigint'\n ) {\n textToCopy = text.toString();\n } else {\n assert(\n `\\`hds-clipboard\\` modifier - \\`text\\` argument must be a string or number - provided: ${typeof text}`\n );\n }\n\n return textToCopy;\n};\n\nexport const getTargetElement = (\n target: string | Node\n): HTMLElement | undefined => {\n let targetElement: HTMLElement | null;\n\n if (typeof target === 'string') {\n targetElement = document.querySelector(target);\n\n if (!targetElement) {\n console.error(\n '`hds-clipboard` modifier - `target` selector provided does not point to an existing DOM node, check your selector string',\n targetElement\n );\n return;\n }\n } else if (target instanceof HTMLElement) {\n targetElement = target;\n } else {\n if (target instanceof NodeList) {\n assert(\n '`hds-clipboard` modifier - `target` argument must be a string or a DOM node - provided: a list of DOM nodes'\n );\n } else {\n assert(\n `\\`hds-clipboard\\` modifier - \\`target\\` argument must be a string or a DOM node - provided: ${typeof target}`\n );\n }\n }\n return targetElement;\n};\n\nexport const getTextToCopyFromTargetElement = (\n targetElement: TargetToCopy\n): string => {\n let textToCopy: string = '';\n\n if (targetElement instanceof HTMLElement) {\n if (\n targetElement instanceof HTMLInputElement || // targetElement.nodeName === 'INPUT' ||\n targetElement instanceof HTMLTextAreaElement || // targetElement.nodeName === 'TEXTAREA' ||\n targetElement instanceof HTMLSelectElement // targetElement.nodeName === 'SELECT'\n ) {\n textToCopy = targetElement.value;\n } else {\n // Hide any screen reader only text from the innerText calculation\n const srOnlyTexts = targetElement.querySelectorAll('.sr-only');\n srOnlyTexts.forEach((el: Element) => {\n el.setAttribute('style', 'display: none;');\n });\n\n // simplest approach\n textToCopy = targetElement.innerText;\n\n // Restore visibility of screen reader only text\n srOnlyTexts.forEach((el: Element) => {\n el.removeAttribute('style');\n });\n\n // approach based on text selection (left for backup just in case)\n // var selection = window.getSelection();\n // var range = document.createRange();\n // selection.removeAllRanges();\n // range.selectNodeContents(targetElement);\n // selection.addRange(range);\n // textToCopy = selection.toString();\n // selection.removeAllRanges();\n }\n }\n return textToCopy;\n};\n\nexport const writeTextToClipboard = async (\n textToCopy: string\n): Promise<boolean> => {\n // finally copy the text to the clipboard using the Clipboard API\n // https://developer.mozilla.org/en-US/docs/Web/API/Clipboard_API\n try {\n // notice: the \"clipboard-write\" permission is granted automatically to pages when they are in the active tab\n // https://developer.mozilla.org/en-US/docs/Web/API/Clipboard/write\n await navigator.clipboard.writeText(textToCopy);\n // DEBUG uncomment this for easy debugging\n // console.log('success', textToCopy);\n return true;\n } catch {\n // if it is not a secure context, use the polyfill\n // to test that this works in a non-secure context, access the port through your IP address (ie. XXX.XXX.X.XXX:4200/)\n if (!navigator.clipboard) {\n try {\n const clipboard = await import('clipboard-polyfill');\n await clipboard.writeText(textToCopy);\n return true;\n } catch (error) {\n warn(\n `copy action failed, unable to use clipboard-polyfill: ${JSON.stringify(\n error\n )}`,\n {\n id: 'hds-clipboard.write-text-to-clipboard.catch-error',\n }\n );\n return false;\n }\n }\n\n return false;\n }\n};\n\nexport const copyToClipboard = async (\n text?: TextToCopy,\n target?: TargetToCopy\n): Promise<boolean> => {\n let textToCopy: string = '';\n\n if (text !== undefined) {\n textToCopy = getTextToCopy(text);\n } else if (target) {\n const targetElement = getTargetElement(target);\n if (targetElement) {\n textToCopy = getTextToCopyFromTargetElement(targetElement);\n }\n } else {\n assert(\n '`hds-clipboard` modifier - either a `text` or a `target` argument is required'\n );\n }\n const success = await writeTextToClipboard(textToCopy);\n return success;\n};\n\n// Notice: we use a function-based modifier here instead of a class-based one\n// because it's quite simple in its logic, and doesn't require injecting services\n// see: https://github.com/ember-modifier/ember-modifier#function-based-modifiers\n\nexport default modifier<HdsClipboardModifierSignature>(\n (element, _positional, named): (() => void) => {\n assert(\n '`hds-clipboard` modifier - the modifier must be applied to an element',\n element\n );\n\n const { text, target, onSuccess, onError } = named;\n\n const onClick = async (event: MouseEvent): Promise<void> => {\n const trigger = event.currentTarget;\n const success = await copyToClipboard(text, target);\n\n // fire the `onSuccess/onError` callbacks (if provided)\n if (success) {\n if (typeof onSuccess === 'function') {\n onSuccess({ trigger, text, target });\n }\n } else {\n if (typeof onError === 'function') {\n onError({ trigger, text, target });\n }\n }\n };\n\n // add the \"onClick\" event listener to the element\n // eslint-disable-next-line @typescript-eslint/no-misused-promises\n element.addEventListener('click', onClick);\n\n // this (teardown) function is run when the element is removed\n return (): void => {\n // eslint-disable-next-line @typescript-eslint/no-misused-promises\n element.removeEventListener('click', onClick);\n };\n }\n);\n"],"names":["getTextToCopy","text","textToCopy","toString","assert","getTargetElement","target","targetElement","document","querySelector","console","error","HTMLElement","NodeList","getTextToCopyFromTargetElement","HTMLInputElement","HTMLTextAreaElement","HTMLSelectElement","value","srOnlyTexts","querySelectorAll","forEach","el","setAttribute","innerText","removeAttribute","writeTextToClipboard","navigator","clipboard","writeText","warn","JSON","stringify","id","copyToClipboard","undefined","success","modifier","element","_positional","named","onSuccess","onError","onClick","event","trigger","currentTarget","addEventListener","removeEventListener"],"mappings":"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"}
1
+ {"version":3,"file":"hds-clipboard.js","sources":["../../src/modifiers/hds-clipboard.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2025\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport { modifier } from 'ember-modifier';\nimport { assert, warn } from '@ember/debug';\n\ntype TextToCopy = string | number | bigint;\ntype TargetToCopy = HTMLElement | string;\n\nexport interface HdsClipboardModifierSignature {\n Element: HTMLElement;\n Args: {\n Named: {\n text?: TextToCopy;\n target?: TargetToCopy;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n onSuccess?: (...args: any[]) => void;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n onError?: (...args: any[]) => void;\n };\n };\n}\n\nexport const getTextToCopy = (text: TextToCopy): string => {\n let textToCopy: string = '';\n\n if (typeof text === 'string') {\n textToCopy = text;\n } else if (\n // context: https://github.com/hashicorp/design-system/pull/1564\n typeof text === 'number' ||\n typeof text === 'bigint'\n ) {\n textToCopy = text.toString();\n } else {\n assert(\n `\\`hds-clipboard\\` modifier - \\`text\\` argument must be a string or number - provided: ${typeof text}`\n );\n }\n\n return textToCopy;\n};\n\nexport const getTargetElement = (\n target: string | Node\n): HTMLElement | undefined => {\n let targetElement: HTMLElement | null;\n\n if (typeof target === 'string') {\n targetElement = document.querySelector(target);\n\n if (!targetElement) {\n console.error(\n '`hds-clipboard` modifier - `target` selector provided does not point to an existing DOM node, check your selector string',\n targetElement\n );\n return;\n }\n } else if (target instanceof HTMLElement) {\n targetElement = target;\n } else {\n if (target instanceof NodeList) {\n assert(\n '`hds-clipboard` modifier - `target` argument must be a string or a DOM node - provided: a list of DOM nodes'\n );\n } else {\n assert(\n `\\`hds-clipboard\\` modifier - \\`target\\` argument must be a string or a DOM node - provided: ${typeof target}`\n );\n }\n }\n return targetElement;\n};\n\nexport const getTextToCopyFromTargetElement = (\n targetElement: TargetToCopy\n): string => {\n let textToCopy: string = '';\n\n if (targetElement instanceof HTMLElement) {\n if (\n targetElement instanceof HTMLInputElement || // targetElement.nodeName === 'INPUT' ||\n targetElement instanceof HTMLTextAreaElement || // targetElement.nodeName === 'TEXTAREA' ||\n targetElement instanceof HTMLSelectElement // targetElement.nodeName === 'SELECT'\n ) {\n textToCopy = targetElement.value;\n } else {\n // Hide any screen reader only text from the innerText calculation\n const srOnlyTexts = targetElement.querySelectorAll('.sr-only');\n srOnlyTexts.forEach((el: Element) => {\n el.setAttribute('style', 'display: none;');\n });\n\n // simplest approach\n textToCopy = targetElement.innerText;\n\n // Restore visibility of screen reader only text\n srOnlyTexts.forEach((el: Element) => {\n el.removeAttribute('style');\n });\n\n // approach based on text selection (left for backup just in case)\n // var selection = window.getSelection();\n // var range = document.createRange();\n // selection.removeAllRanges();\n // range.selectNodeContents(targetElement);\n // selection.addRange(range);\n // textToCopy = selection.toString();\n // selection.removeAllRanges();\n }\n }\n return textToCopy;\n};\n\nexport const writeTextToClipboard = async (\n textToCopy: string\n): Promise<boolean> => {\n // finally copy the text to the clipboard using the Clipboard API\n // https://developer.mozilla.org/en-US/docs/Web/API/Clipboard_API\n try {\n // notice: the \"clipboard-write\" permission is granted automatically to pages when they are in the active tab\n // https://developer.mozilla.org/en-US/docs/Web/API/Clipboard/write\n await navigator.clipboard.writeText(textToCopy);\n // DEBUG uncomment this for easy debugging\n // console.log('success', textToCopy);\n return true;\n } catch {\n // if it is not a secure context, use the polyfill\n // to test that this works in a non-secure context, access the port through your IP address (ie. XXX.XXX.X.XXX:4200/)\n if (!navigator.clipboard) {\n try {\n const clipboard = await import('clipboard-polyfill');\n await clipboard.writeText(textToCopy);\n return true;\n } catch (error) {\n warn(\n `copy action failed, unable to use clipboard-polyfill: ${JSON.stringify(\n error\n )}`,\n {\n id: 'hds-clipboard.write-text-to-clipboard.catch-error',\n }\n );\n return false;\n }\n }\n\n return false;\n }\n};\n\nexport const copyToClipboard = async (\n text?: TextToCopy,\n target?: TargetToCopy\n): Promise<boolean> => {\n let textToCopy: string = '';\n\n if (text !== undefined) {\n textToCopy = getTextToCopy(text);\n } else if (target) {\n const targetElement = getTargetElement(target);\n if (targetElement) {\n textToCopy = getTextToCopyFromTargetElement(targetElement);\n }\n } else {\n assert(\n '`hds-clipboard` modifier - either a `text` or a `target` argument is required'\n );\n }\n const success = await writeTextToClipboard(textToCopy);\n return success;\n};\n\n// Notice: we use a function-based modifier here instead of a class-based one\n// because it's quite simple in its logic, and doesn't require injecting services\n// see: https://github.com/ember-modifier/ember-modifier#function-based-modifiers\n\nexport default modifier<HdsClipboardModifierSignature>(\n (element, _positional, named): (() => void) => {\n assert(\n '`hds-clipboard` modifier - the modifier must be applied to an element',\n element\n );\n\n const { text, target, onSuccess, onError } = named;\n\n const onClick = async (event: MouseEvent): Promise<void> => {\n const trigger = event.currentTarget;\n const success = await copyToClipboard(text, target);\n\n // fire the `onSuccess/onError` callbacks (if provided)\n if (success) {\n if (typeof onSuccess === 'function') {\n onSuccess({ trigger, text, target });\n }\n } else {\n if (typeof onError === 'function') {\n onError({ trigger, text, target });\n }\n }\n };\n\n // add the \"onClick\" event listener to the element\n // eslint-disable-next-line @typescript-eslint/no-misused-promises\n element.addEventListener('click', onClick);\n\n // this (teardown) function is run when the element is removed\n return (): void => {\n // eslint-disable-next-line @typescript-eslint/no-misused-promises\n element.removeEventListener('click', onClick);\n };\n }\n);\n"],"names":["getTextToCopy","text","textToCopy","toString","assert","getTargetElement","target","targetElement","document","querySelector","console","error","HTMLElement","NodeList","getTextToCopyFromTargetElement","HTMLInputElement","HTMLTextAreaElement","HTMLSelectElement","value","srOnlyTexts","querySelectorAll","forEach","el","setAttribute","innerText","removeAttribute","writeTextToClipboard","navigator","clipboard","writeText","warn","JSON","stringify","id","copyToClipboard","undefined","success","modifier","element","_positional","named","onSuccess","onError","onClick","event","trigger","currentTarget","addEventListener","removeEventListener"],"mappings":"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"}
@@ -3,7 +3,7 @@ import { HighlightStyle } from '@codemirror/language';
3
3
  import { HDS_CODE_BLOCK_CYAN, HDS_CODE_BLOCK_BLUE, HDS_CODE_BLOCK_ORANGE, HDS_CODE_BLOCK_PURPLE, HDS_CODE_BLOCK_GREEN, HDS_CODE_BLOCK_RED, HDS_CODE_BLOCK_WHITE, HDS_CODE_EDITOR_COLOR_FOREGROUND_PRIMARY } from '../palettes/hds-dark-palette.js';
4
4
 
5
5
  /**
6
- * Copyright (c) HashiCorp, Inc.
6
+ * Copyright IBM Corp. 2021, 2025
7
7
  * SPDX-License-Identifier: MPL-2.0
8
8
  */
9
9
 
@@ -1 +1 @@
1
- {"version":3,"file":"hds-dark-highlight-style.js","sources":["../../../../src/modifiers/hds-code-editor/highlight-styles/hds-dark-highlight-style.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport { tags } from '@lezer/highlight';\nimport { HighlightStyle } from '@codemirror/language';\nimport {\n HDS_CODE_BLOCK_BLUE,\n HDS_CODE_BLOCK_GREEN,\n HDS_CODE_BLOCK_ORANGE,\n HDS_CODE_BLOCK_PURPLE,\n HDS_CODE_BLOCK_RED,\n HDS_CODE_BLOCK_CYAN,\n HDS_CODE_BLOCK_WHITE,\n HDS_CODE_EDITOR_COLOR_FOREGROUND_PRIMARY,\n} from '../palettes/hds-dark-palette.ts';\n\nconst hdsDarkHighlightStyle = HighlightStyle.define([\n // Cyan | Property, url, or operator\n { tag: tags.propertyName, color: HDS_CODE_BLOCK_CYAN },\n { tag: tags.url, color: HDS_CODE_BLOCK_CYAN },\n { tag: tags.operator, color: HDS_CODE_BLOCK_CYAN },\n { tag: tags.attributeValue, color: HDS_CODE_BLOCK_CYAN },\n\n // Blue | Function, builtins\n { tag: tags.attributeName, color: HDS_CODE_BLOCK_BLUE },\n { tag: tags.function(tags.variableName), color: HDS_CODE_BLOCK_BLUE },\n { tag: tags.function(tags.propertyName), color: HDS_CODE_BLOCK_BLUE },\n\n // Orange | Strings, characters\n { tag: tags.string, color: HDS_CODE_BLOCK_ORANGE },\n { tag: tags.regexp, color: HDS_CODE_BLOCK_ORANGE },\n\n // Purple | Booleans, numbers\n { tag: tags.bool, color: HDS_CODE_BLOCK_PURPLE },\n { tag: tags.number, color: HDS_CODE_BLOCK_PURPLE },\n\n // Green | Keywords, class names, saving the world\n { tag: tags.keyword, color: HDS_CODE_BLOCK_GREEN },\n { tag: tags.className, color: HDS_CODE_BLOCK_GREEN },\n\n // Red | Important items\n { tag: tags.deleted, color: HDS_CODE_BLOCK_RED },\n\n // White | Default color within the code block, also used for punctuation\n { tag: tags.name, color: HDS_CODE_BLOCK_WHITE },\n { tag: tags.punctuation, color: HDS_CODE_BLOCK_WHITE },\n\n // Gray | Used for comments across languages\n { tag: tags.comment, color: HDS_CODE_EDITOR_COLOR_FOREGROUND_PRIMARY },\n\n // Markdown specific\n { tag: tags.heading, color: HDS_CODE_BLOCK_BLUE, fontWeight: 'bold' },\n { tag: tags.strong, color: HDS_CODE_BLOCK_ORANGE, fontWeight: 'bold' },\n { tag: tags.emphasis, color: HDS_CODE_BLOCK_ORANGE, fontStyle: 'italic' },\n { tag: tags.link, color: HDS_CODE_BLOCK_CYAN, textDecoration: 'underline' },\n {\n tag: tags.quote,\n color: HDS_CODE_EDITOR_COLOR_FOREGROUND_PRIMARY,\n fontStyle: 'italic',\n },\n { tag: tags.list, color: HDS_CODE_BLOCK_WHITE },\n { tag: tags.monospace, color: HDS_CODE_BLOCK_GREEN },\n]);\n\nexport default hdsDarkHighlightStyle;\n"],"names":["hdsDarkHighlightStyle","HighlightStyle","define","tag","tags","propertyName","color","HDS_CODE_BLOCK_CYAN","url","operator","attributeValue","attributeName","HDS_CODE_BLOCK_BLUE","function","variableName","string","HDS_CODE_BLOCK_ORANGE","regexp","bool","HDS_CODE_BLOCK_PURPLE","number","keyword","HDS_CODE_BLOCK_GREEN","className","deleted","HDS_CODE_BLOCK_RED","name","HDS_CODE_BLOCK_WHITE","punctuation","comment","HDS_CODE_EDITOR_COLOR_FOREGROUND_PRIMARY","heading","fontWeight","strong","emphasis","fontStyle","link","textDecoration","quote","list","monospace"],"mappings":";;;;AAAA;AACA;AACA;AACA;;AAeA,MAAMA,qBAAqB,GAAGC,cAAc,CAACC,MAAM,CAAC;AAClD;AACA;EAAEC,GAAG,EAAEC,IAAI,CAACC,YAAY;AAAEC,EAAAA,KAAK,EAAEC;AAAoB,CAAC,EACtD;EAAEJ,GAAG,EAAEC,IAAI,CAACI,GAAG;AAAEF,EAAAA,KAAK,EAAEC;AAAoB,CAAC,EAC7C;EAAEJ,GAAG,EAAEC,IAAI,CAACK,QAAQ;AAAEH,EAAAA,KAAK,EAAEC;AAAoB,CAAC,EAClD;EAAEJ,GAAG,EAAEC,IAAI,CAACM,cAAc;AAAEJ,EAAAA,KAAK,EAAEC;AAAoB,CAAC;AAExD;AACA;EAAEJ,GAAG,EAAEC,IAAI,CAACO,aAAa;AAAEL,EAAAA,KAAK,EAAEM;AAAoB,CAAC,EACvD;EAAET,GAAG,EAAEC,IAAI,CAACS,QAAQ,CAACT,IAAI,CAACU,YAAY,CAAC;AAAER,EAAAA,KAAK,EAAEM;AAAoB,CAAC,EACrE;EAAET,GAAG,EAAEC,IAAI,CAACS,QAAQ,CAACT,IAAI,CAACC,YAAY,CAAC;AAAEC,EAAAA,KAAK,EAAEM;AAAoB,CAAC;AAErE;AACA;EAAET,GAAG,EAAEC,IAAI,CAACW,MAAM;AAAET,EAAAA,KAAK,EAAEU;AAAsB,CAAC,EAClD;EAAEb,GAAG,EAAEC,IAAI,CAACa,MAAM;AAAEX,EAAAA,KAAK,EAAEU;AAAsB,CAAC;AAElD;AACA;EAAEb,GAAG,EAAEC,IAAI,CAACc,IAAI;AAAEZ,EAAAA,KAAK,EAAEa;AAAsB,CAAC,EAChD;EAAEhB,GAAG,EAAEC,IAAI,CAACgB,MAAM;AAAEd,EAAAA,KAAK,EAAEa;AAAsB,CAAC;AAElD;AACA;EAAEhB,GAAG,EAAEC,IAAI,CAACiB,OAAO;AAAEf,EAAAA,KAAK,EAAEgB;AAAqB,CAAC,EAClD;EAAEnB,GAAG,EAAEC,IAAI,CAACmB,SAAS;AAAEjB,EAAAA,KAAK,EAAEgB;AAAqB,CAAC;AAEpD;AACA;EAAEnB,GAAG,EAAEC,IAAI,CAACoB,OAAO;AAAElB,EAAAA,KAAK,EAAEmB;AAAmB,CAAC;AAEhD;AACA;EAAEtB,GAAG,EAAEC,IAAI,CAACsB,IAAI;AAAEpB,EAAAA,KAAK,EAAEqB;AAAqB,CAAC,EAC/C;EAAExB,GAAG,EAAEC,IAAI,CAACwB,WAAW;AAAEtB,EAAAA,KAAK,EAAEqB;AAAqB,CAAC;AAEtD;AACA;EAAExB,GAAG,EAAEC,IAAI,CAACyB,OAAO;AAAEvB,EAAAA,KAAK,EAAEwB;AAAyC,CAAC;AAEtE;AACA;EAAE3B,GAAG,EAAEC,IAAI,CAAC2B,OAAO;AAAEzB,EAAAA,KAAK,EAAEM,mBAAmB;AAAEoB,EAAAA,UAAU,EAAE;AAAO,CAAC,EACrE;EAAE7B,GAAG,EAAEC,IAAI,CAAC6B,MAAM;AAAE3B,EAAAA,KAAK,EAAEU,qBAAqB;AAAEgB,EAAAA,UAAU,EAAE;AAAO,CAAC,EACtE;EAAE7B,GAAG,EAAEC,IAAI,CAAC8B,QAAQ;AAAE5B,EAAAA,KAAK,EAAEU,qBAAqB;AAAEmB,EAAAA,SAAS,EAAE;AAAS,CAAC,EACzE;EAAEhC,GAAG,EAAEC,IAAI,CAACgC,IAAI;AAAE9B,EAAAA,KAAK,EAAEC,mBAAmB;AAAE8B,EAAAA,cAAc,EAAE;AAAY,CAAC,EAC3E;EACElC,GAAG,EAAEC,IAAI,CAACkC,KAAK;AACfhC,EAAAA,KAAK,EAAEwB,wCAAwC;AAC/CK,EAAAA,SAAS,EAAE;AACb,CAAC,EACD;EAAEhC,GAAG,EAAEC,IAAI,CAACmC,IAAI;AAAEjC,EAAAA,KAAK,EAAEqB;AAAqB,CAAC,EAC/C;EAAExB,GAAG,EAAEC,IAAI,CAACoC,SAAS;AAAElC,EAAAA,KAAK,EAAEgB;AAAqB,CAAC,CACrD;;;;"}
1
+ {"version":3,"file":"hds-dark-highlight-style.js","sources":["../../../../src/modifiers/hds-code-editor/highlight-styles/hds-dark-highlight-style.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2025\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport { tags } from '@lezer/highlight';\nimport { HighlightStyle } from '@codemirror/language';\nimport {\n HDS_CODE_BLOCK_BLUE,\n HDS_CODE_BLOCK_GREEN,\n HDS_CODE_BLOCK_ORANGE,\n HDS_CODE_BLOCK_PURPLE,\n HDS_CODE_BLOCK_RED,\n HDS_CODE_BLOCK_CYAN,\n HDS_CODE_BLOCK_WHITE,\n HDS_CODE_EDITOR_COLOR_FOREGROUND_PRIMARY,\n} from '../palettes/hds-dark-palette.ts';\n\nconst hdsDarkHighlightStyle = HighlightStyle.define([\n // Cyan | Property, url, or operator\n { tag: tags.propertyName, color: HDS_CODE_BLOCK_CYAN },\n { tag: tags.url, color: HDS_CODE_BLOCK_CYAN },\n { tag: tags.operator, color: HDS_CODE_BLOCK_CYAN },\n { tag: tags.attributeValue, color: HDS_CODE_BLOCK_CYAN },\n\n // Blue | Function, builtins\n { tag: tags.attributeName, color: HDS_CODE_BLOCK_BLUE },\n { tag: tags.function(tags.variableName), color: HDS_CODE_BLOCK_BLUE },\n { tag: tags.function(tags.propertyName), color: HDS_CODE_BLOCK_BLUE },\n\n // Orange | Strings, characters\n { tag: tags.string, color: HDS_CODE_BLOCK_ORANGE },\n { tag: tags.regexp, color: HDS_CODE_BLOCK_ORANGE },\n\n // Purple | Booleans, numbers\n { tag: tags.bool, color: HDS_CODE_BLOCK_PURPLE },\n { tag: tags.number, color: HDS_CODE_BLOCK_PURPLE },\n\n // Green | Keywords, class names, saving the world\n { tag: tags.keyword, color: HDS_CODE_BLOCK_GREEN },\n { tag: tags.className, color: HDS_CODE_BLOCK_GREEN },\n\n // Red | Important items\n { tag: tags.deleted, color: HDS_CODE_BLOCK_RED },\n\n // White | Default color within the code block, also used for punctuation\n { tag: tags.name, color: HDS_CODE_BLOCK_WHITE },\n { tag: tags.punctuation, color: HDS_CODE_BLOCK_WHITE },\n\n // Gray | Used for comments across languages\n { tag: tags.comment, color: HDS_CODE_EDITOR_COLOR_FOREGROUND_PRIMARY },\n\n // Markdown specific\n { tag: tags.heading, color: HDS_CODE_BLOCK_BLUE, fontWeight: 'bold' },\n { tag: tags.strong, color: HDS_CODE_BLOCK_ORANGE, fontWeight: 'bold' },\n { tag: tags.emphasis, color: HDS_CODE_BLOCK_ORANGE, fontStyle: 'italic' },\n { tag: tags.link, color: HDS_CODE_BLOCK_CYAN, textDecoration: 'underline' },\n {\n tag: tags.quote,\n color: HDS_CODE_EDITOR_COLOR_FOREGROUND_PRIMARY,\n fontStyle: 'italic',\n },\n { tag: tags.list, color: HDS_CODE_BLOCK_WHITE },\n { tag: tags.monospace, color: HDS_CODE_BLOCK_GREEN },\n]);\n\nexport default hdsDarkHighlightStyle;\n"],"names":["hdsDarkHighlightStyle","HighlightStyle","define","tag","tags","propertyName","color","HDS_CODE_BLOCK_CYAN","url","operator","attributeValue","attributeName","HDS_CODE_BLOCK_BLUE","function","variableName","string","HDS_CODE_BLOCK_ORANGE","regexp","bool","HDS_CODE_BLOCK_PURPLE","number","keyword","HDS_CODE_BLOCK_GREEN","className","deleted","HDS_CODE_BLOCK_RED","name","HDS_CODE_BLOCK_WHITE","punctuation","comment","HDS_CODE_EDITOR_COLOR_FOREGROUND_PRIMARY","heading","fontWeight","strong","emphasis","fontStyle","link","textDecoration","quote","list","monospace"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright (c) HashiCorp, Inc.
2
+ * Copyright IBM Corp. 2021, 2025
3
3
  * SPDX-License-Identifier: MPL-2.0
4
4
  */
5
5
 
@@ -1 +1 @@
1
- {"version":3,"file":"rego.js","sources":["../../../../src/modifiers/hds-code-editor/languages/rego.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport type { StringStream } from '@codemirror/language';\n\ntype Quote = '\"' | \"'\";\n\ninterface ParserConfig {\n delimiters?: RegExp;\n operators?: RegExp;\n}\n\ninterface RegoState {\n tokenize: (stream: StringStream, state: RegoState) => string | null;\n}\n\nfunction wordRegexp(words: string[]): RegExp {\n return new RegExp('^((' + words.join(')|(') + '))\\\\b');\n}\n\n// keywords\nconst regoKeywords = [\n 'as',\n 'contains',\n 'data',\n 'default',\n 'else',\n 'every',\n 'false',\n 'if',\n 'in',\n 'import',\n 'input',\n 'package',\n 'not',\n 'null',\n 'some',\n 'true',\n 'with',\n];\n\n// built-ins / constants\nconst regoBuiltins = [\n // numbers\n 'abs',\n 'ceil',\n 'floor',\n 'numbers.range',\n 'numbers.range_step',\n 'rand.intn',\n 'round',\n // aggregates\n 'count',\n 'max',\n 'min',\n 'product',\n 'sort',\n 'sum',\n // arrays\n 'array.concat',\n 'array.reverse',\n 'array.slice',\n // sets\n 'intersection',\n 'union',\n // objects\n 'json.filter',\n 'json.match_scema',\n 'json.patch',\n 'json.remove',\n 'json.verify_schema',\n 'object.filter',\n 'object.get',\n 'object.keys',\n 'object.remove',\n 'object.subset',\n 'object.union',\n 'object.union_n',\n // strings\n 'concat',\n 'contains',\n 'endswith',\n 'format_int',\n 'indexof_n',\n 'lower',\n 'replace',\n 'split',\n 'sprintf',\n 'startswith',\n 'strings.any_prefix_match',\n 'strings.count',\n 'strings.render_template',\n 'strings.replace_n',\n 'strings.reverse',\n 'substring',\n 'trim',\n 'trim_left',\n 'trim_prefix',\n 'trim_right',\n 'trim_space',\n 'trim_suffix',\n 'upper',\n // regex\n 'regex.find_all_string_submatch_n',\n 'regex.find_n',\n 'regex.globs_match',\n 'regex.is_valid',\n 'regex.match',\n 'regex.replace',\n 'regex.split',\n 'regex.template_match',\n // glob\n 'glob.match',\n 'glob.quote_meta',\n // bitwise\n 'bits.and',\n 'bits.lsh',\n 'bits.negate',\n 'bits.or',\n 'bits.rsh',\n 'bits.xor',\n // conversions\n 'to_number',\n // units\n 'units.parse',\n 'units.parse_bytes',\n // types\n 'is_array',\n 'is_boolean',\n 'is_null',\n 'is_number',\n 'is_object',\n 'is_set',\n 'is_string',\n 'type_name',\n // encoding\n 'base64.decode',\n 'base64.encode',\n 'base64.is_valid',\n 'base64url.decode',\n 'base64url.encode',\n 'base64url.encode_no_pad',\n 'hex.decode',\n 'hex.encode',\n 'json.is_valid',\n 'json.marshal',\n 'json.marshal_with_options',\n 'json.unmarshal',\n 'urlquery.decode',\n 'urlquery.decode_object',\n 'urlquery.encode',\n 'urlquery.encode_object',\n 'yaml.is_valid',\n 'yaml.marshal',\n 'yaml.unmarshal',\n // token signing\n 'io.jwt.encode_sign',\n 'io.jwt.encode_sign_raw',\n // token verification\n 'io.jwt.decode',\n 'io.jwt.decode_verify',\n 'io.jwt.verify_es256',\n 'io.jwt.verify_es384',\n 'io.jwt.verify_es512',\n 'io.jwt.verify_hs256',\n 'io.jwt.verify_hs384',\n 'io.jwt.verify_hs512',\n 'io.jwt.verify_ps384',\n 'io.jwt.verify_ps512',\n 'io.jwt.verify_rs256',\n 'io.jwt.verify_rs384',\n 'io.jwt.verify_rs512',\n // time\n 'time.add_date',\n 'time.clock',\n 'time.date',\n 'time.diff',\n 'time.format',\n 'time.now_ns',\n 'time.parse_duration_ns',\n 'time.parse_ns',\n 'time.parse_rfc3339_ns',\n 'time.weekday',\n // crypto\n 'crypto.hmac.equal',\n 'crypto.hmac.md5',\n 'crypto.hmac.sha1',\n 'crypto.hmac.sha256',\n 'crypto.hmac.sha512',\n 'crypto.md5',\n 'crypto.parse_private_keys',\n 'crypto.sha1',\n 'crypto.sha256',\n 'crypto.x509.parse_and_verify_certificates',\n 'crypto.x509.parse_and_verify_certificates_with_options',\n 'crypto.x509.parse_certificates',\n 'crypto.x509.parse_keypair',\n 'crypto.x509.parse_rsa_private_key',\n // graphs\n 'graph.reachable',\n 'graph.reachable_paths',\n 'walk',\n // graphql\n 'graphql.is_valid',\n 'graphql.parse',\n 'graphql.parse_and_verify',\n 'graphql.parse_query',\n 'graphql.parse_schema',\n 'graphql.parse_schema_is_valid',\n // http\n 'http.send',\n // aws\n 'providers.aws.sign_req',\n // net\n 'net.cidr_contains',\n 'net.cidr_contains_matches',\n 'net.cidr_expand',\n 'net.cidr_intersects',\n 'net.cidr_is_valid',\n 'net.cidr_merge',\n 'net.lookup_ip_addr',\n // uuid\n 'uuid.parse',\n 'uuid.rfc4122',\n // semantic versions\n 'semver.compare',\n 'semver.is_valid',\n // rego\n 'rego.metadata.chain',\n 'rego.metadata.rule',\n 'rego.metadata.parse_module',\n];\n\nconst keywords = wordRegexp(regoKeywords);\nconst builtins = wordRegexp(regoBuiltins);\n\nexport function mkRego(parserConf: ParserConfig = {}) {\n const ERRORCLASS = 'error';\n\n // delimiters, operators, etc.\n const delimiters = parserConf.delimiters ?? /^[()[\\]{},:;.|]/;\n const operators = [\n parserConf.operators ?? /^(?:in|\\+|-|\\*|\\/|%|<=|>=|<|>|==|!=|&&|\\|\\|)\\b/,\n ];\n\n // tokenizer\n function tokenBase(stream: StringStream, state: RegoState): string | null {\n if (stream.eatSpace()) return null;\n\n // comments\n // single-line comment starting with #\n if (stream.match('#')) {\n stream.skipToEnd();\n return 'comment';\n }\n // multi-line comment starting with /* ... */\n if (stream.match('/*')) {\n state.tokenize = tokenComment;\n return state.tokenize(stream, state);\n }\n\n // strings\n // only double-quoted strings are standard\n if (stream.match('\"')) {\n state.tokenize = tokenString('\"');\n return state.tokenize(stream, state);\n }\n\n // numbers\n if (stream.match(/^[0-9]+(?:\\.[0-9]*)?(?:[eE][+-]?[0-9]+)?/)) {\n return 'number';\n }\n\n // operators\n for (let i = 0; i < operators.length; i++) {\n if (stream.match(operators[i]!)) {\n return 'operator';\n }\n }\n\n // delimiters/punctuation\n if (stream.match(delimiters)) {\n return 'punctuation';\n }\n\n // keywords, operators, builtins\n if (stream.match(keywords)) {\n return 'keyword';\n }\n if (stream.match(builtins)) {\n return 'builtin';\n }\n\n // identifiers (variables, function names, etc.)\n if (stream.match(/^[_A-Za-z][_A-Za-z0-9]*/)) {\n return 'variable';\n }\n\n // if nothing matched, consume one character and mark it as error\n stream.next();\n\n return ERRORCLASS;\n }\n\n /**\n * Tokenizer for multi-line (block) comments.\n */\n function tokenComment(stream: StringStream, state: RegoState): string {\n while (!stream.eol()) {\n if (stream.match('*/')) {\n state.tokenize = tokenBase;\n break;\n }\n stream.next();\n }\n return 'comment';\n }\n\n // string tokenizer factory\n function tokenString(\n quote: Quote\n ): (stream: StringStream, state: RegoState) => string {\n return function (stream: StringStream, state: RegoState): string {\n let escaped = false;\n let ch = null;\n\n while ((ch = stream.next()) != null) {\n if (ch === quote && !escaped) {\n // end of string\n state.tokenize = tokenBase;\n break;\n }\n escaped = !escaped && ch === '\\\\';\n }\n\n return 'string';\n };\n }\n\n // CodeMirror API\n return {\n name: 'rego',\n\n startState: function (): RegoState {\n return { tokenize: tokenBase };\n },\n\n token: function (stream: StringStream, state: RegoState): string | null {\n return state.tokenize(stream, state);\n },\n\n languageData: {\n commentTokens: { line: '#', block: { open: '/*', close: '*/' } },\n closeBrackets: { brackets: ['(', '[', '{', '\"', \"'\"] },\n },\n };\n}\n\nexport const rego = mkRego();\n"],"names":["wordRegexp","words","RegExp","join","regoKeywords","regoBuiltins","keywords","builtins","mkRego","parserConf","ERRORCLASS","delimiters","operators","tokenBase","stream","state","eatSpace","match","skipToEnd","tokenize","tokenComment","tokenString","i","length","next","eol","quote","escaped","ch","name","startState","token","languageData","commentTokens","line","block","open","close","closeBrackets","brackets","rego"],"mappings":"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"}
1
+ {"version":3,"file":"rego.js","sources":["../../../../src/modifiers/hds-code-editor/languages/rego.ts"],"sourcesContent":["/**\n * Copyright IBM Corp. 2021, 2025\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport type { StringStream } from '@codemirror/language';\n\ntype Quote = '\"' | \"'\";\n\ninterface ParserConfig {\n delimiters?: RegExp;\n operators?: RegExp;\n}\n\ninterface RegoState {\n tokenize: (stream: StringStream, state: RegoState) => string | null;\n}\n\nfunction wordRegexp(words: string[]): RegExp {\n return new RegExp('^((' + words.join(')|(') + '))\\\\b');\n}\n\n// keywords\nconst regoKeywords = [\n 'as',\n 'contains',\n 'data',\n 'default',\n 'else',\n 'every',\n 'false',\n 'if',\n 'in',\n 'import',\n 'input',\n 'package',\n 'not',\n 'null',\n 'some',\n 'true',\n 'with',\n];\n\n// built-ins / constants\nconst regoBuiltins = [\n // numbers\n 'abs',\n 'ceil',\n 'floor',\n 'numbers.range',\n 'numbers.range_step',\n 'rand.intn',\n 'round',\n // aggregates\n 'count',\n 'max',\n 'min',\n 'product',\n 'sort',\n 'sum',\n // arrays\n 'array.concat',\n 'array.reverse',\n 'array.slice',\n // sets\n 'intersection',\n 'union',\n // objects\n 'json.filter',\n 'json.match_scema',\n 'json.patch',\n 'json.remove',\n 'json.verify_schema',\n 'object.filter',\n 'object.get',\n 'object.keys',\n 'object.remove',\n 'object.subset',\n 'object.union',\n 'object.union_n',\n // strings\n 'concat',\n 'contains',\n 'endswith',\n 'format_int',\n 'indexof_n',\n 'lower',\n 'replace',\n 'split',\n 'sprintf',\n 'startswith',\n 'strings.any_prefix_match',\n 'strings.count',\n 'strings.render_template',\n 'strings.replace_n',\n 'strings.reverse',\n 'substring',\n 'trim',\n 'trim_left',\n 'trim_prefix',\n 'trim_right',\n 'trim_space',\n 'trim_suffix',\n 'upper',\n // regex\n 'regex.find_all_string_submatch_n',\n 'regex.find_n',\n 'regex.globs_match',\n 'regex.is_valid',\n 'regex.match',\n 'regex.replace',\n 'regex.split',\n 'regex.template_match',\n // glob\n 'glob.match',\n 'glob.quote_meta',\n // bitwise\n 'bits.and',\n 'bits.lsh',\n 'bits.negate',\n 'bits.or',\n 'bits.rsh',\n 'bits.xor',\n // conversions\n 'to_number',\n // units\n 'units.parse',\n 'units.parse_bytes',\n // types\n 'is_array',\n 'is_boolean',\n 'is_null',\n 'is_number',\n 'is_object',\n 'is_set',\n 'is_string',\n 'type_name',\n // encoding\n 'base64.decode',\n 'base64.encode',\n 'base64.is_valid',\n 'base64url.decode',\n 'base64url.encode',\n 'base64url.encode_no_pad',\n 'hex.decode',\n 'hex.encode',\n 'json.is_valid',\n 'json.marshal',\n 'json.marshal_with_options',\n 'json.unmarshal',\n 'urlquery.decode',\n 'urlquery.decode_object',\n 'urlquery.encode',\n 'urlquery.encode_object',\n 'yaml.is_valid',\n 'yaml.marshal',\n 'yaml.unmarshal',\n // token signing\n 'io.jwt.encode_sign',\n 'io.jwt.encode_sign_raw',\n // token verification\n 'io.jwt.decode',\n 'io.jwt.decode_verify',\n 'io.jwt.verify_es256',\n 'io.jwt.verify_es384',\n 'io.jwt.verify_es512',\n 'io.jwt.verify_hs256',\n 'io.jwt.verify_hs384',\n 'io.jwt.verify_hs512',\n 'io.jwt.verify_ps384',\n 'io.jwt.verify_ps512',\n 'io.jwt.verify_rs256',\n 'io.jwt.verify_rs384',\n 'io.jwt.verify_rs512',\n // time\n 'time.add_date',\n 'time.clock',\n 'time.date',\n 'time.diff',\n 'time.format',\n 'time.now_ns',\n 'time.parse_duration_ns',\n 'time.parse_ns',\n 'time.parse_rfc3339_ns',\n 'time.weekday',\n // crypto\n 'crypto.hmac.equal',\n 'crypto.hmac.md5',\n 'crypto.hmac.sha1',\n 'crypto.hmac.sha256',\n 'crypto.hmac.sha512',\n 'crypto.md5',\n 'crypto.parse_private_keys',\n 'crypto.sha1',\n 'crypto.sha256',\n 'crypto.x509.parse_and_verify_certificates',\n 'crypto.x509.parse_and_verify_certificates_with_options',\n 'crypto.x509.parse_certificates',\n 'crypto.x509.parse_keypair',\n 'crypto.x509.parse_rsa_private_key',\n // graphs\n 'graph.reachable',\n 'graph.reachable_paths',\n 'walk',\n // graphql\n 'graphql.is_valid',\n 'graphql.parse',\n 'graphql.parse_and_verify',\n 'graphql.parse_query',\n 'graphql.parse_schema',\n 'graphql.parse_schema_is_valid',\n // http\n 'http.send',\n // aws\n 'providers.aws.sign_req',\n // net\n 'net.cidr_contains',\n 'net.cidr_contains_matches',\n 'net.cidr_expand',\n 'net.cidr_intersects',\n 'net.cidr_is_valid',\n 'net.cidr_merge',\n 'net.lookup_ip_addr',\n // uuid\n 'uuid.parse',\n 'uuid.rfc4122',\n // semantic versions\n 'semver.compare',\n 'semver.is_valid',\n // rego\n 'rego.metadata.chain',\n 'rego.metadata.rule',\n 'rego.metadata.parse_module',\n];\n\nconst keywords = wordRegexp(regoKeywords);\nconst builtins = wordRegexp(regoBuiltins);\n\nexport function mkRego(parserConf: ParserConfig = {}) {\n const ERRORCLASS = 'error';\n\n // delimiters, operators, etc.\n const delimiters = parserConf.delimiters ?? /^[()[\\]{},:;.|]/;\n const operators = [\n parserConf.operators ?? /^(?:in|\\+|-|\\*|\\/|%|<=|>=|<|>|==|!=|&&|\\|\\|)\\b/,\n ];\n\n // tokenizer\n function tokenBase(stream: StringStream, state: RegoState): string | null {\n if (stream.eatSpace()) return null;\n\n // comments\n // single-line comment starting with #\n if (stream.match('#')) {\n stream.skipToEnd();\n return 'comment';\n }\n // multi-line comment starting with /* ... */\n if (stream.match('/*')) {\n state.tokenize = tokenComment;\n return state.tokenize(stream, state);\n }\n\n // strings\n // only double-quoted strings are standard\n if (stream.match('\"')) {\n state.tokenize = tokenString('\"');\n return state.tokenize(stream, state);\n }\n\n // numbers\n if (stream.match(/^[0-9]+(?:\\.[0-9]*)?(?:[eE][+-]?[0-9]+)?/)) {\n return 'number';\n }\n\n // operators\n for (let i = 0; i < operators.length; i++) {\n if (stream.match(operators[i]!)) {\n return 'operator';\n }\n }\n\n // delimiters/punctuation\n if (stream.match(delimiters)) {\n return 'punctuation';\n }\n\n // keywords, operators, builtins\n if (stream.match(keywords)) {\n return 'keyword';\n }\n if (stream.match(builtins)) {\n return 'builtin';\n }\n\n // identifiers (variables, function names, etc.)\n if (stream.match(/^[_A-Za-z][_A-Za-z0-9]*/)) {\n return 'variable';\n }\n\n // if nothing matched, consume one character and mark it as error\n stream.next();\n\n return ERRORCLASS;\n }\n\n /**\n * Tokenizer for multi-line (block) comments.\n */\n function tokenComment(stream: StringStream, state: RegoState): string {\n while (!stream.eol()) {\n if (stream.match('*/')) {\n state.tokenize = tokenBase;\n break;\n }\n stream.next();\n }\n return 'comment';\n }\n\n // string tokenizer factory\n function tokenString(\n quote: Quote\n ): (stream: StringStream, state: RegoState) => string {\n return function (stream: StringStream, state: RegoState): string {\n let escaped = false;\n let ch = null;\n\n while ((ch = stream.next()) != null) {\n if (ch === quote && !escaped) {\n // end of string\n state.tokenize = tokenBase;\n break;\n }\n escaped = !escaped && ch === '\\\\';\n }\n\n return 'string';\n };\n }\n\n // CodeMirror API\n return {\n name: 'rego',\n\n startState: function (): RegoState {\n return { tokenize: tokenBase };\n },\n\n token: function (stream: StringStream, state: RegoState): string | null {\n return state.tokenize(stream, state);\n },\n\n languageData: {\n commentTokens: { line: '#', block: { open: '/*', close: '*/' } },\n closeBrackets: { brackets: ['(', '[', '{', '\"', \"'\"] },\n },\n };\n}\n\nexport const rego = mkRego();\n"],"names":["wordRegexp","words","RegExp","join","regoKeywords","regoBuiltins","keywords","builtins","mkRego","parserConf","ERRORCLASS","delimiters","operators","tokenBase","stream","state","eatSpace","match","skipToEnd","tokenize","tokenComment","tokenString","i","length","next","eol","quote","escaped","ch","name","startState","token","languageData","commentTokens","line","block","open","close","closeBrackets","brackets","rego"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright (c) HashiCorp, Inc.
2
+ * Copyright IBM Corp. 2021, 2025
3
3
  * SPDX-License-Identifier: MPL-2.0
4
4
  */
5
5