@hashicorp/design-system-components 4.16.0 → 4.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (443) hide show
  1. package/README.md +4 -8
  2. package/declarations/components/hds/advanced-table/expandable-tr-group.d.ts +2 -1
  3. package/declarations/components/hds/advanced-table/expandable-tr-group.d.ts.map +1 -1
  4. package/declarations/components/hds/advanced-table/index.d.ts +1 -2
  5. package/declarations/components/hds/advanced-table/index.d.ts.map +1 -1
  6. package/declarations/components/hds/advanced-table/td.d.ts +1 -3
  7. package/declarations/components/hds/advanced-table/td.d.ts.map +1 -1
  8. package/declarations/components/hds/advanced-table/th-sort.d.ts +1 -3
  9. package/declarations/components/hds/advanced-table/th-sort.d.ts.map +1 -1
  10. package/declarations/components/hds/advanced-table/th.d.ts +1 -3
  11. package/declarations/components/hds/advanced-table/th.d.ts.map +1 -1
  12. package/declarations/components/hds/alert/index.d.ts +2 -1
  13. package/declarations/components/hds/alert/index.d.ts.map +1 -1
  14. package/declarations/components/hds/app-footer/status-link.d.ts +3 -2
  15. package/declarations/components/hds/app-footer/status-link.d.ts.map +1 -1
  16. package/declarations/components/hds/app-header/index.d.ts +2 -1
  17. package/declarations/components/hds/app-header/index.d.ts.map +1 -1
  18. package/declarations/components/hds/app-side-nav/index.d.ts +2 -1
  19. package/declarations/components/hds/app-side-nav/index.d.ts.map +1 -1
  20. package/declarations/components/hds/app-side-nav/portal/target.d.ts.map +1 -1
  21. package/declarations/components/hds/breadcrumb/item.d.ts +1 -1
  22. package/declarations/components/hds/breadcrumb/item.d.ts.map +1 -1
  23. package/declarations/components/hds/code-block/copy-button.d.ts +5 -2
  24. package/declarations/components/hds/code-block/copy-button.d.ts.map +1 -1
  25. package/declarations/components/hds/code-block/index.d.ts +3 -0
  26. package/declarations/components/hds/code-block/index.d.ts.map +1 -1
  27. package/declarations/components/hds/code-editor/index.d.ts +6 -2
  28. package/declarations/components/hds/code-editor/index.d.ts.map +1 -1
  29. package/declarations/components/hds/code-editor/title.d.ts +1 -1
  30. package/declarations/components/hds/code-editor/title.d.ts.map +1 -1
  31. package/declarations/components/hds/dropdown/list-item/interactive.d.ts +2 -1
  32. package/declarations/components/hds/dropdown/list-item/interactive.d.ts.map +1 -1
  33. package/declarations/components/hds/dropdown/toggle/icon.d.ts +2 -1
  34. package/declarations/components/hds/dropdown/toggle/icon.d.ts.map +1 -1
  35. package/declarations/components/hds/flyout/body.d.ts +2 -1
  36. package/declarations/components/hds/flyout/body.d.ts.map +1 -1
  37. package/declarations/components/hds/flyout/description.d.ts +2 -1
  38. package/declarations/components/hds/flyout/description.d.ts.map +1 -1
  39. package/declarations/components/hds/flyout/footer.d.ts +2 -1
  40. package/declarations/components/hds/flyout/footer.d.ts.map +1 -1
  41. package/declarations/components/hds/flyout/header.d.ts +2 -1
  42. package/declarations/components/hds/flyout/header.d.ts.map +1 -1
  43. package/declarations/components/hds/form/masked-input/base.d.ts +5 -2
  44. package/declarations/components/hds/form/masked-input/base.d.ts.map +1 -1
  45. package/declarations/components/hds/form/super-select/multiple/base.d.ts +1 -1
  46. package/declarations/components/hds/form/super-select/multiple/base.d.ts.map +1 -1
  47. package/declarations/components/hds/form/super-select/single/base.d.ts +1 -1
  48. package/declarations/components/hds/form/super-select/single/base.d.ts.map +1 -1
  49. package/declarations/components/hds/form/text-input/field.d.ts +3 -2
  50. package/declarations/components/hds/form/text-input/field.d.ts.map +1 -1
  51. package/declarations/components/hds/icon/index.d.ts +2 -1
  52. package/declarations/components/hds/icon/index.d.ts.map +1 -1
  53. package/declarations/components/hds/interactive/index.d.ts +1 -1
  54. package/declarations/components/hds/interactive/index.d.ts.map +1 -1
  55. package/declarations/components/hds/link/inline.d.ts +2 -1
  56. package/declarations/components/hds/link/inline.d.ts.map +1 -1
  57. package/declarations/components/hds/link/standalone.d.ts +2 -1
  58. package/declarations/components/hds/link/standalone.d.ts.map +1 -1
  59. package/declarations/components/hds/menu-primitive/index.d.ts +2 -1
  60. package/declarations/components/hds/menu-primitive/index.d.ts.map +1 -1
  61. package/declarations/components/hds/modal/body.d.ts +2 -1
  62. package/declarations/components/hds/modal/body.d.ts.map +1 -1
  63. package/declarations/components/hds/modal/footer.d.ts +2 -1
  64. package/declarations/components/hds/modal/footer.d.ts.map +1 -1
  65. package/declarations/components/hds/modal/header.d.ts +2 -1
  66. package/declarations/components/hds/modal/header.d.ts.map +1 -1
  67. package/declarations/components/hds/pagination/compact/index.d.ts +2 -1
  68. package/declarations/components/hds/pagination/compact/index.d.ts.map +1 -1
  69. package/declarations/components/hds/pagination/numbered/index.d.ts +3 -2
  70. package/declarations/components/hds/pagination/numbered/index.d.ts.map +1 -1
  71. package/declarations/components/hds/popover-primitive/index.d.ts +2 -1
  72. package/declarations/components/hds/popover-primitive/index.d.ts.map +1 -1
  73. package/declarations/components/hds/side-nav/header/icon-button.d.ts +2 -1
  74. package/declarations/components/hds/side-nav/header/icon-button.d.ts.map +1 -1
  75. package/declarations/components/hds/side-nav/index.d.ts +2 -1
  76. package/declarations/components/hds/side-nav/index.d.ts.map +1 -1
  77. package/declarations/components/hds/side-nav/portal/target.d.ts.map +1 -1
  78. package/declarations/components/hds/stepper/task/indicator.d.ts +1 -1
  79. package/declarations/components/hds/table/index.d.ts +2 -1
  80. package/declarations/components/hds/table/index.d.ts.map +1 -1
  81. package/declarations/components/hds/table/th-selectable.d.ts +3 -3
  82. package/declarations/components/hds/table/th-selectable.d.ts.map +1 -1
  83. package/declarations/components/hds/tabs/index.d.ts +2 -1
  84. package/declarations/components/hds/tabs/index.d.ts.map +1 -1
  85. package/declarations/components/hds/tag/index.d.ts +16 -0
  86. package/declarations/components/hds/tag/index.d.ts.map +1 -1
  87. package/declarations/components/hds/tag/types.d.ts +15 -0
  88. package/declarations/components/hds/tag/types.d.ts.map +1 -1
  89. package/declarations/components/hds/time/index.d.ts.map +1 -1
  90. package/declarations/helpers/hds-format-date.d.ts +16 -3
  91. package/declarations/helpers/hds-format-date.d.ts.map +1 -1
  92. package/declarations/helpers/hds-format-relative.d.ts +9 -3
  93. package/declarations/helpers/hds-format-relative.d.ts.map +1 -1
  94. package/declarations/helpers/hds-link-to-models.d.ts +7 -1
  95. package/declarations/helpers/hds-link-to-models.d.ts.map +1 -1
  96. package/declarations/helpers/hds-link-to-query.d.ts +7 -1
  97. package/declarations/helpers/hds-link-to-query.d.ts.map +1 -1
  98. package/declarations/instance-initializers/load-sprite.d.ts.map +1 -1
  99. package/declarations/{components/hds/advanced-table/helpers.d.ts → modifiers/hds-advanced-table-cell/dom-management.d.ts} +3 -4
  100. package/declarations/modifiers/hds-advanced-table-cell/dom-management.d.ts.map +1 -0
  101. package/declarations/modifiers/hds-advanced-table-cell/keyboard-navigation.d.ts +6 -0
  102. package/declarations/modifiers/hds-advanced-table-cell/keyboard-navigation.d.ts.map +1 -0
  103. package/declarations/modifiers/hds-advanced-table-cell.d.ts +26 -0
  104. package/declarations/modifiers/hds-advanced-table-cell.d.ts.map +1 -0
  105. package/declarations/modifiers/hds-clipboard.d.ts.map +1 -1
  106. package/declarations/modifiers/hds-code-editor/languages/rego.d.ts +48 -0
  107. package/declarations/modifiers/hds-code-editor/languages/rego.d.ts.map +1 -0
  108. package/declarations/modifiers/hds-code-editor/languages/sentinel.d.ts +4 -0
  109. package/declarations/modifiers/hds-code-editor/languages/sentinel.d.ts.map +1 -1
  110. package/declarations/modifiers/hds-code-editor/types.d.ts +2 -0
  111. package/declarations/modifiers/hds-code-editor/types.d.ts.map +1 -1
  112. package/declarations/modifiers/hds-code-editor.d.ts +9 -5
  113. package/declarations/modifiers/hds-code-editor.d.ts.map +1 -1
  114. package/declarations/modifiers/hds-tooltip.d.ts +4 -2
  115. package/declarations/modifiers/hds-tooltip.d.ts.map +1 -1
  116. package/declarations/services/hds-time-types.d.ts +7 -7
  117. package/declarations/services/hds-time-types.d.ts.map +1 -1
  118. package/declarations/services/hds-time.d.ts +3 -3
  119. package/declarations/services/hds-time.d.ts.map +1 -1
  120. package/declarations/template-registry.d.ts +2 -0
  121. package/declarations/template-registry.d.ts.map +1 -1
  122. package/dist/README.md +4 -8
  123. package/dist/_app_/modifiers/hds-advanced-table-cell/dom-management.js +1 -0
  124. package/dist/_app_/modifiers/hds-advanced-table-cell/keyboard-navigation.js +1 -0
  125. package/dist/_app_/modifiers/hds-advanced-table-cell.js +1 -0
  126. package/dist/_app_/modifiers/hds-code-editor/languages/rego.js +1 -0
  127. package/dist/components/hds/accordion/index.js.map +1 -1
  128. package/dist/components/hds/accordion/item/button.js +11 -4
  129. package/dist/components/hds/accordion/item/button.js.map +1 -1
  130. package/dist/components/hds/accordion/item/index.js +12 -11
  131. package/dist/components/hds/accordion/item/index.js.map +1 -1
  132. package/dist/components/hds/advanced-table/expandable-tr-group.js +16 -12
  133. package/dist/components/hds/advanced-table/expandable-tr-group.js.map +1 -1
  134. package/dist/components/hds/advanced-table/index.js +69 -53
  135. package/dist/components/hds/advanced-table/index.js.map +1 -1
  136. package/dist/components/hds/advanced-table/td.js +30 -36
  137. package/dist/components/hds/advanced-table/td.js.map +1 -1
  138. package/dist/components/hds/advanced-table/th-button-expand.js +13 -9
  139. package/dist/components/hds/advanced-table/th-button-expand.js.map +1 -1
  140. package/dist/components/hds/advanced-table/th-button-sort.js +8 -7
  141. package/dist/components/hds/advanced-table/th-button-sort.js.map +1 -1
  142. package/dist/components/hds/advanced-table/th-button-tooltip.js +7 -6
  143. package/dist/components/hds/advanced-table/th-button-tooltip.js.map +1 -1
  144. package/dist/components/hds/advanced-table/th-selectable.js +25 -17
  145. package/dist/components/hds/advanced-table/th-selectable.js.map +1 -1
  146. package/dist/components/hds/advanced-table/th-sort.js +30 -37
  147. package/dist/components/hds/advanced-table/th-sort.js.map +1 -1
  148. package/dist/components/hds/advanced-table/th.js +29 -36
  149. package/dist/components/hds/advanced-table/th.js.map +1 -1
  150. package/dist/components/hds/advanced-table/tr.js.map +1 -1
  151. package/dist/components/hds/alert/description.js.map +1 -1
  152. package/dist/components/hds/alert/index.js +19 -16
  153. package/dist/components/hds/alert/index.js.map +1 -1
  154. package/dist/components/hds/alert/title.js.map +1 -1
  155. package/dist/components/hds/app-footer/copyright.js.map +1 -1
  156. package/dist/components/hds/app-footer/index.js.map +1 -1
  157. package/dist/components/hds/app-footer/item.js.map +1 -1
  158. package/dist/components/hds/app-footer/legal-links.js.map +1 -1
  159. package/dist/components/hds/app-footer/link.js.map +1 -1
  160. package/dist/components/hds/app-footer/status-link.js.map +1 -1
  161. package/dist/components/hds/app-frame/index.js.map +1 -1
  162. package/dist/components/hds/app-frame/parts/footer.js.map +1 -1
  163. package/dist/components/hds/app-frame/parts/header.js.map +1 -1
  164. package/dist/components/hds/app-frame/parts/main.js.map +1 -1
  165. package/dist/components/hds/app-frame/parts/modals.js.map +1 -1
  166. package/dist/components/hds/app-frame/parts/sidebar.js.map +1 -1
  167. package/dist/components/hds/app-header/home-link.js.map +1 -1
  168. package/dist/components/hds/app-header/index.js +42 -34
  169. package/dist/components/hds/app-header/index.js.map +1 -1
  170. package/dist/components/hds/app-header/menu-button.js +11 -4
  171. package/dist/components/hds/app-header/menu-button.js.map +1 -1
  172. package/dist/components/hds/app-side-nav/index.js +44 -31
  173. package/dist/components/hds/app-side-nav/index.js.map +1 -1
  174. package/dist/components/hds/app-side-nav/list/back-link.js.map +1 -1
  175. package/dist/components/hds/app-side-nav/list/index.js +15 -13
  176. package/dist/components/hds/app-side-nav/list/index.js.map +1 -1
  177. package/dist/components/hds/app-side-nav/list/item.js.map +1 -1
  178. package/dist/components/hds/app-side-nav/list/link.js.map +1 -1
  179. package/dist/components/hds/app-side-nav/list/title.js +13 -9
  180. package/dist/components/hds/app-side-nav/list/title.js.map +1 -1
  181. package/dist/components/hds/app-side-nav/portal/index.js.map +1 -1
  182. package/dist/components/hds/app-side-nav/portal/target.js +31 -28
  183. package/dist/components/hds/app-side-nav/portal/target.js.map +1 -1
  184. package/dist/components/hds/app-side-nav/toggle-button.js.map +1 -1
  185. package/dist/components/hds/application-state/body.js.map +1 -1
  186. package/dist/components/hds/application-state/footer.js.map +1 -1
  187. package/dist/components/hds/application-state/header.js.map +1 -1
  188. package/dist/components/hds/application-state/index.js.map +1 -1
  189. package/dist/components/hds/application-state/media.js.map +1 -1
  190. package/dist/components/hds/badge/index.js.map +1 -1
  191. package/dist/components/hds/badge-count/index.js.map +1 -1
  192. package/dist/components/hds/breadcrumb/index.js.map +1 -1
  193. package/dist/components/hds/breadcrumb/item.js +1 -1
  194. package/dist/components/hds/breadcrumb/item.js.map +1 -1
  195. package/dist/components/hds/breadcrumb/truncation.js.map +1 -1
  196. package/dist/components/hds/button/index.js.map +1 -1
  197. package/dist/components/hds/button-set/index.js.map +1 -1
  198. package/dist/components/hds/card/container.js.map +1 -1
  199. package/dist/components/hds/code-block/copy-button.js +9 -5
  200. package/dist/components/hds/code-block/copy-button.js.map +1 -1
  201. package/dist/components/hds/code-block/description.js.map +1 -1
  202. package/dist/components/hds/code-block/index.js +27 -21
  203. package/dist/components/hds/code-block/index.js.map +1 -1
  204. package/dist/components/hds/code-block/title.js.map +1 -1
  205. package/dist/components/hds/code-editor/description.js +6 -5
  206. package/dist/components/hds/code-editor/description.js.map +1 -1
  207. package/dist/components/hds/code-editor/full-screen-button.js.map +1 -1
  208. package/dist/components/hds/code-editor/generic.js.map +1 -1
  209. package/dist/components/hds/code-editor/index.js +67 -52
  210. package/dist/components/hds/code-editor/index.js.map +1 -1
  211. package/dist/components/hds/code-editor/title.js +6 -5
  212. package/dist/components/hds/code-editor/title.js.map +1 -1
  213. package/dist/components/hds/copy/button/index.js +23 -20
  214. package/dist/components/hds/copy/button/index.js.map +1 -1
  215. package/dist/components/hds/copy/snippet/index.js +23 -20
  216. package/dist/components/hds/copy/snippet/index.js.map +1 -1
  217. package/dist/components/hds/dialog-primitive/body.js.map +1 -1
  218. package/dist/components/hds/dialog-primitive/description.js.map +1 -1
  219. package/dist/components/hds/dialog-primitive/footer.js.map +1 -1
  220. package/dist/components/hds/dialog-primitive/header.js.map +1 -1
  221. package/dist/components/hds/dialog-primitive/overlay.js.map +1 -1
  222. package/dist/components/hds/dialog-primitive/wrapper.js.map +1 -1
  223. package/dist/components/hds/disclosure-primitive/index.js +27 -21
  224. package/dist/components/hds/disclosure-primitive/index.js.map +1 -1
  225. package/dist/components/hds/dismiss-button/index.js.map +1 -1
  226. package/dist/components/hds/dropdown/footer.js.map +1 -1
  227. package/dist/components/hds/dropdown/header.js.map +1 -1
  228. package/dist/components/hds/dropdown/index.js +12 -5
  229. package/dist/components/hds/dropdown/index.js.map +1 -1
  230. package/dist/components/hds/dropdown/list-item/checkbox.js.map +1 -1
  231. package/dist/components/hds/dropdown/list-item/checkmark.js.map +1 -1
  232. package/dist/components/hds/dropdown/list-item/copy-item.js.map +1 -1
  233. package/dist/components/hds/dropdown/list-item/description.js.map +1 -1
  234. package/dist/components/hds/dropdown/list-item/generic.js.map +1 -1
  235. package/dist/components/hds/dropdown/list-item/interactive.js.map +1 -1
  236. package/dist/components/hds/dropdown/list-item/radio.js.map +1 -1
  237. package/dist/components/hds/dropdown/list-item/separator.js.map +1 -1
  238. package/dist/components/hds/dropdown/list-item/title.js.map +1 -1
  239. package/dist/components/hds/dropdown/toggle/button.js +12 -10
  240. package/dist/components/hds/dropdown/toggle/button.js.map +1 -1
  241. package/dist/components/hds/dropdown/toggle/chevron.js.map +1 -1
  242. package/dist/components/hds/dropdown/toggle/icon.js +20 -12
  243. package/dist/components/hds/dropdown/toggle/icon.js.map +1 -1
  244. package/dist/components/hds/flyout/body.js +2 -1
  245. package/dist/components/hds/flyout/body.js.map +1 -1
  246. package/dist/components/hds/flyout/description.js +1 -0
  247. package/dist/components/hds/flyout/description.js.map +1 -1
  248. package/dist/components/hds/flyout/footer.js +2 -1
  249. package/dist/components/hds/flyout/footer.js.map +1 -1
  250. package/dist/components/hds/flyout/header.js +2 -1
  251. package/dist/components/hds/flyout/header.js.map +1 -1
  252. package/dist/components/hds/flyout/index.js +33 -18
  253. package/dist/components/hds/flyout/index.js.map +1 -1
  254. package/dist/components/hds/form/character-count/index.js.map +1 -1
  255. package/dist/components/hds/form/checkbox/base.js.map +1 -1
  256. package/dist/components/hds/form/checkbox/field.js.map +1 -1
  257. package/dist/components/hds/form/checkbox/group.js.map +1 -1
  258. package/dist/components/hds/form/error/index.js.map +1 -1
  259. package/dist/components/hds/form/error/message.js.map +1 -1
  260. package/dist/components/hds/form/field/index.js +15 -7
  261. package/dist/components/hds/form/field/index.js.map +1 -1
  262. package/dist/components/hds/form/fieldset/index.js +15 -7
  263. package/dist/components/hds/form/fieldset/index.js.map +1 -1
  264. package/dist/components/hds/form/file-input/base.js.map +1 -1
  265. package/dist/components/hds/form/file-input/field.js.map +1 -1
  266. package/dist/components/hds/form/helper-text/index.js.map +1 -1
  267. package/dist/components/hds/form/indicator/index.js.map +1 -1
  268. package/dist/components/hds/form/label/index.js.map +1 -1
  269. package/dist/components/hds/form/legend/index.js.map +1 -1
  270. package/dist/components/hds/form/masked-input/base.js +45 -15
  271. package/dist/components/hds/form/masked-input/base.js.map +1 -1
  272. package/dist/components/hds/form/masked-input/field.js.map +1 -1
  273. package/dist/components/hds/form/radio/base.js.map +1 -1
  274. package/dist/components/hds/form/radio/field.js.map +1 -1
  275. package/dist/components/hds/form/radio/group.js.map +1 -1
  276. package/dist/components/hds/form/radio-card/description.js.map +1 -1
  277. package/dist/components/hds/form/radio-card/group.js.map +1 -1
  278. package/dist/components/hds/form/radio-card/index.js.map +1 -1
  279. package/dist/components/hds/form/radio-card/label.js.map +1 -1
  280. package/dist/components/hds/form/select/base.js.map +1 -1
  281. package/dist/components/hds/form/select/field.js.map +1 -1
  282. package/dist/components/hds/form/super-select/after-options.js.map +1 -1
  283. package/dist/components/hds/form/super-select/multiple/base.js +38 -28
  284. package/dist/components/hds/form/super-select/multiple/base.js.map +1 -1
  285. package/dist/components/hds/form/super-select/multiple/field.js.map +1 -1
  286. package/dist/components/hds/form/super-select/option-group.js +11 -10
  287. package/dist/components/hds/form/super-select/option-group.js.map +1 -1
  288. package/dist/components/hds/form/super-select/placeholder.js.map +1 -1
  289. package/dist/components/hds/form/super-select/single/base.js +17 -12
  290. package/dist/components/hds/form/super-select/single/base.js.map +1 -1
  291. package/dist/components/hds/form/super-select/single/field.js.map +1 -1
  292. package/dist/components/hds/form/text-input/base.js.map +1 -1
  293. package/dist/components/hds/form/text-input/field.js +21 -18
  294. package/dist/components/hds/form/text-input/field.js.map +1 -1
  295. package/dist/components/hds/form/textarea/base.js.map +1 -1
  296. package/dist/components/hds/form/textarea/field.js.map +1 -1
  297. package/dist/components/hds/form/toggle/base.js.map +1 -1
  298. package/dist/components/hds/form/toggle/field.js.map +1 -1
  299. package/dist/components/hds/form/toggle/group.js.map +1 -1
  300. package/dist/components/hds/form/visibility-toggle/index.js.map +1 -1
  301. package/dist/components/hds/icon/index.js +7 -3
  302. package/dist/components/hds/icon/index.js.map +1 -1
  303. package/dist/components/hds/icon-tile/index.js.map +1 -1
  304. package/dist/components/hds/interactive/index.js +12 -5
  305. package/dist/components/hds/interactive/index.js.map +1 -1
  306. package/dist/components/hds/link/inline.js.map +1 -1
  307. package/dist/components/hds/link/standalone.js.map +1 -1
  308. package/dist/components/hds/menu-primitive/index.js +37 -24
  309. package/dist/components/hds/menu-primitive/index.js.map +1 -1
  310. package/dist/components/hds/modal/body.js +1 -0
  311. package/dist/components/hds/modal/body.js.map +1 -1
  312. package/dist/components/hds/modal/footer.js +2 -1
  313. package/dist/components/hds/modal/footer.js.map +1 -1
  314. package/dist/components/hds/modal/header.js +1 -0
  315. package/dist/components/hds/modal/header.js.map +1 -1
  316. package/dist/components/hds/modal/index.js +30 -16
  317. package/dist/components/hds/modal/index.js.map +1 -1
  318. package/dist/components/hds/page-header/actions.js.map +1 -1
  319. package/dist/components/hds/page-header/badges.js.map +1 -1
  320. package/dist/components/hds/page-header/description.js.map +1 -1
  321. package/dist/components/hds/page-header/index.js.map +1 -1
  322. package/dist/components/hds/page-header/subtitle.js.map +1 -1
  323. package/dist/components/hds/page-header/title.js.map +1 -1
  324. package/dist/components/hds/pagination/compact/index.js +31 -28
  325. package/dist/components/hds/pagination/compact/index.js.map +1 -1
  326. package/dist/components/hds/pagination/info/index.js.map +1 -1
  327. package/dist/components/hds/pagination/nav/arrow.js +10 -4
  328. package/dist/components/hds/pagination/nav/arrow.js.map +1 -1
  329. package/dist/components/hds/pagination/nav/ellipsis.js.map +1 -1
  330. package/dist/components/hds/pagination/nav/number.js +10 -4
  331. package/dist/components/hds/pagination/nav/number.js.map +1 -1
  332. package/dist/components/hds/pagination/numbered/index.js +44 -47
  333. package/dist/components/hds/pagination/numbered/index.js.map +1 -1
  334. package/dist/components/hds/pagination/size-selector/index.js +12 -8
  335. package/dist/components/hds/pagination/size-selector/index.js.map +1 -1
  336. package/dist/components/hds/popover-primitive/index.js +130 -103
  337. package/dist/components/hds/popover-primitive/index.js.map +1 -1
  338. package/dist/components/hds/reveal/index.js +26 -24
  339. package/dist/components/hds/reveal/index.js.map +1 -1
  340. package/dist/components/hds/reveal/toggle/button.js.map +1 -1
  341. package/dist/components/hds/rich-tooltip/bubble.js.map +1 -1
  342. package/dist/components/hds/rich-tooltip/index.js +8 -7
  343. package/dist/components/hds/rich-tooltip/index.js.map +1 -1
  344. package/dist/components/hds/rich-tooltip/toggle.js.map +1 -1
  345. package/dist/components/hds/segmented-group/index.js.map +1 -1
  346. package/dist/components/hds/separator/index.js.map +1 -1
  347. package/dist/components/hds/side-nav/base.js.map +1 -1
  348. package/dist/components/hds/side-nav/header/home-link.js.map +1 -1
  349. package/dist/components/hds/side-nav/header/icon-button.js +1 -0
  350. package/dist/components/hds/side-nav/header/icon-button.js.map +1 -1
  351. package/dist/components/hds/side-nav/header/index.js.map +1 -1
  352. package/dist/components/hds/side-nav/index.js +47 -34
  353. package/dist/components/hds/side-nav/index.js.map +1 -1
  354. package/dist/components/hds/side-nav/list/back-link.js.map +1 -1
  355. package/dist/components/hds/side-nav/list/index.js +15 -13
  356. package/dist/components/hds/side-nav/list/index.js.map +1 -1
  357. package/dist/components/hds/side-nav/list/item.js.map +1 -1
  358. package/dist/components/hds/side-nav/list/link.js.map +1 -1
  359. package/dist/components/hds/side-nav/list/title.js +13 -9
  360. package/dist/components/hds/side-nav/list/title.js.map +1 -1
  361. package/dist/components/hds/side-nav/portal/index.js.map +1 -1
  362. package/dist/components/hds/side-nav/portal/target.js +31 -28
  363. package/dist/components/hds/side-nav/portal/target.js.map +1 -1
  364. package/dist/components/hds/side-nav/toggle-button.js.map +1 -1
  365. package/dist/components/hds/stepper/step/indicator.js.map +1 -1
  366. package/dist/components/hds/stepper/task/indicator.js.map +1 -1
  367. package/dist/components/hds/table/index.js +54 -40
  368. package/dist/components/hds/table/index.js.map +1 -1
  369. package/dist/components/hds/table/td.js.map +1 -1
  370. package/dist/components/hds/table/th-button-sort.js +8 -7
  371. package/dist/components/hds/table/th-button-sort.js.map +1 -1
  372. package/dist/components/hds/table/th-button-tooltip.js +7 -6
  373. package/dist/components/hds/table/th-button-tooltip.js.map +1 -1
  374. package/dist/components/hds/table/th-selectable.js +24 -25
  375. package/dist/components/hds/table/th-selectable.js.map +1 -1
  376. package/dist/components/hds/table/th-sort.js +12 -10
  377. package/dist/components/hds/table/th-sort.js.map +1 -1
  378. package/dist/components/hds/table/th.js +12 -10
  379. package/dist/components/hds/table/th.js.map +1 -1
  380. package/dist/components/hds/table/tr.js.map +1 -1
  381. package/dist/components/hds/tabs/index.js +77 -54
  382. package/dist/components/hds/tabs/index.js.map +1 -1
  383. package/dist/components/hds/tabs/panel.js +21 -14
  384. package/dist/components/hds/tabs/panel.js.map +1 -1
  385. package/dist/components/hds/tabs/tab.js +29 -13
  386. package/dist/components/hds/tabs/tab.js.map +1 -1
  387. package/dist/components/hds/tag/index.js +43 -3
  388. package/dist/components/hds/tag/index.js.map +1 -1
  389. package/dist/components/hds/tag/types.js +16 -1
  390. package/dist/components/hds/tag/types.js.map +1 -1
  391. package/dist/components/hds/text/body.js.map +1 -1
  392. package/dist/components/hds/text/code.js.map +1 -1
  393. package/dist/components/hds/text/display.js.map +1 -1
  394. package/dist/components/hds/text/index.js.map +1 -1
  395. package/dist/components/hds/time/index.js +19 -14
  396. package/dist/components/hds/time/index.js.map +1 -1
  397. package/dist/components/hds/time/range.js +11 -12
  398. package/dist/components/hds/time/range.js.map +1 -1
  399. package/dist/components/hds/time/single.js.map +1 -1
  400. package/dist/components/hds/toast/index.js.map +1 -1
  401. package/dist/components/hds/tooltip-button/index.js.map +1 -1
  402. package/dist/components/hds/yield/index.js.map +1 -1
  403. package/dist/components.js +1 -1
  404. package/dist/helpers/hds-format-date.js.map +1 -1
  405. package/dist/helpers/hds-format-relative.js.map +1 -1
  406. package/dist/instance-initializers/load-sprite.js +3 -1
  407. package/dist/instance-initializers/load-sprite.js.map +1 -1
  408. package/dist/modifiers/hds-advanced-table-cell/dom-management.js +51 -0
  409. package/dist/modifiers/hds-advanced-table-cell/dom-management.js.map +1 -0
  410. package/dist/{components/hds/advanced-table/helpers.js → modifiers/hds-advanced-table-cell/keyboard-navigation.js} +5 -44
  411. package/dist/modifiers/hds-advanced-table-cell/keyboard-navigation.js.map +1 -0
  412. package/dist/modifiers/hds-advanced-table-cell.js +55 -0
  413. package/dist/modifiers/hds-advanced-table-cell.js.map +1 -0
  414. package/dist/modifiers/hds-clipboard.js +29 -35
  415. package/dist/modifiers/hds-clipboard.js.map +1 -1
  416. package/dist/modifiers/hds-code-editor/languages/rego.js +191 -0
  417. package/dist/modifiers/hds-code-editor/languages/rego.js.map +1 -0
  418. package/dist/modifiers/hds-code-editor/languages/sentinel.js +5 -0
  419. package/dist/modifiers/hds-code-editor/languages/sentinel.js.map +1 -1
  420. package/dist/modifiers/hds-code-editor/types.js +2 -0
  421. package/dist/modifiers/hds-code-editor/types.js.map +1 -1
  422. package/dist/modifiers/hds-code-editor.js +182 -155
  423. package/dist/modifiers/hds-code-editor.js.map +1 -1
  424. package/dist/modifiers/hds-tooltip.js +128 -108
  425. package/dist/modifiers/hds-tooltip.js.map +1 -1
  426. package/dist/services/hds-time.js +29 -23
  427. package/dist/services/hds-time.js.map +1 -1
  428. package/dist/styles/@hashicorp/design-system-components.css +94 -3
  429. package/dist/styles/components/advanced-table.scss +4 -0
  430. package/dist/styles/components/badge-count.scss +1 -1
  431. package/dist/styles/components/badge.scss +11 -1
  432. package/dist/styles/components/rich-tooltip.scss +3 -1
  433. package/dist/styles/components/tag.scss +28 -0
  434. package/dist/styles/components/time.scss +7 -0
  435. package/dist/styles/components/tooltip.scss +49 -0
  436. package/dist/utils/hds-aria-described-by.js +14 -17
  437. package/dist/utils/hds-aria-described-by.js.map +1 -1
  438. package/package.json +30 -31
  439. package/declarations/components/hds/advanced-table/helpers.d.ts.map +0 -1
  440. package/dist/_app_/components/hds/advanced-table/helpers.js +0 -1
  441. package/dist/_rollupPluginBabelHelpers-C_TsMG3M.js +0 -57
  442. package/dist/_rollupPluginBabelHelpers-C_TsMG3M.js.map +0 -1
  443. package/dist/components/hds/advanced-table/helpers.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/components/hds/app-side-nav/index.hbs","../../../../src/components/hds/app-side-nav/index.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n{{! IMPORTANT: we need to add \\\"squishies\\\" here (~) because otherwise the whitespace added by Ember causes the empty element to still have visible padding - See https://handlebarsjs.com/guide/expressions.html#whitespace-control }}\\n<div\\n class={{this.classNames}}\\n ...attributes\\n {{on \\\"transitionstart\\\" (fn this.setTransition \\\"start\\\")}}\\n {{on \\\"transitionend\\\" (fn this.setTransition \\\"end\\\")}}\\n {{! @glint-expect-error - https://github.com/josemarluedke/ember-focus-trap/issues/86 }}\\n {{focus-trap isActive=this.shouldTrapFocus}}\\n {{did-insert this.didInsert}}\\n>\\n <h2 class=\\\"sr-only\\\" id=\\\"hds-app-side-nav-header\\\">Application local navigation</h2>\\n\\n <div class=\\\"hds-app-side-nav__wrapper\\\">\\n {{#if this.showToggleButton}}\\n {{! template-lint-disable no-invalid-interactive}}\\n <div class=\\\"hds-app-side-nav__overlay\\\" {{on \\\"click\\\" this.toggleMinimizedStatus}} />\\n {{! template-lint-enable no-invalid-interactive}}\\n <Hds::AppSideNav::ToggleButton\\n aria-labelledby=\\\"hds-app-side-nav-header\\\"\\n aria-expanded={{if this._isMinimized \\\"false\\\" \\\"true\\\"}}\\n @icon={{if this._isMinimized \\\"chevrons-right\\\" \\\"chevrons-left\\\"}}\\n {{on \\\"click\\\" this.toggleMinimizedStatus}}\\n />\\n {{/if}}\\n\\n <div class=\\\"hds-app-side-nav__wrapper-body\\\">\\n {{~yield~}}\\n </div>\\n </div>\\n</div>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { action } from '@ember/object';\nimport { registerDestructor } from '@ember/destroyable';\n\nexport interface HdsAppSideNavSignature {\n Args: {\n isResponsive?: boolean;\n isCollapsible?: boolean;\n isMinimized?: boolean;\n onToggleMinimizedStatus?: (arg: boolean) => void;\n onDesktopViewportChange?: (arg: boolean) => void;\n };\n Blocks: {\n default?: [];\n };\n Element: HTMLDivElement;\n}\n\nexport default class HdsAppSideNav extends Component<HdsAppSideNavSignature> {\n @tracked private _isMinimized;\n @tracked private _isAnimating = false;\n @tracked private _isDesktop = true;\n\n private _body!: HTMLElement;\n private _bodyInitialOverflowValue = '';\n private _desktopMQ: MediaQueryList;\n private _containersToHide!: NodeListOf<Element>;\n\n private _desktopMQVal = getComputedStyle(\n document.documentElement\n ).getPropertyValue('--hds-app-desktop-breakpoint');\n\n constructor(owner: unknown, args: HdsAppSideNavSignature['Args']) {\n super(owner, args);\n this._isMinimized = this.args.isMinimized ?? false; // sets the default state on 'desktop' viewports\n this._desktopMQ = window.matchMedia(`(min-width:${this._desktopMQVal})`);\n this.addEventListeners();\n registerDestructor(this, (): void => {\n this.removeEventListeners();\n });\n }\n\n addEventListeners(): void {\n document.addEventListener('keydown', this.escapePress, true);\n this._desktopMQ.addEventListener(\n 'change',\n this.updateDesktopVariable,\n true\n );\n // if not instantiated as minimized via arguments\n if (!this.args.isMinimized) {\n // set initial state based on viewport using a \"synthetic\" event\n const syntheticEvent = new MediaQueryListEvent('change', {\n matches: this._desktopMQ.matches,\n media: this._desktopMQ.media,\n });\n this.updateDesktopVariable(syntheticEvent);\n }\n }\n\n removeEventListeners(): void {\n document.removeEventListener('keydown', this.escapePress, true);\n this._desktopMQ.removeEventListener(\n 'change',\n this.updateDesktopVariable,\n true\n );\n }\n\n // controls if the component reacts to viewport changes\n get isResponsive(): boolean {\n return this.args.isResponsive ?? true;\n }\n\n // controls if users can collapse the appsidenav on 'desktop' viewports\n get isCollapsible(): boolean {\n return this.args.isCollapsible ?? false;\n }\n\n get shouldTrapFocus(): boolean {\n return this.isResponsive && !this._isDesktop && !this._isMinimized;\n }\n\n get showToggleButton(): boolean {\n return (this.isResponsive && !this._isDesktop) || this.isCollapsible;\n }\n\n get classNames(): string {\n const classes = [`hds-app-side-nav`];\n\n // add specific class names for the different possible states\n if (this.isResponsive) {\n classes.push('hds-app-side-nav--is-responsive');\n }\n if (!this._isDesktop && this.isResponsive) {\n classes.push('hds-app-side-nav--is-mobile');\n } else {\n classes.push('hds-app-side-nav--is-desktop');\n }\n if (this._isMinimized && this.isResponsive) {\n classes.push('hds-app-side-nav--is-minimized');\n } else {\n classes.push('hds-app-side-nav--is-not-minimized');\n }\n if (this._isAnimating) {\n classes.push('hds-app-side-nav--is-animating');\n }\n\n return classes.join(' ');\n }\n\n synchronizeInert(): void {\n this._containersToHide?.forEach((element): void => {\n if (this._isMinimized) {\n element.setAttribute('inert', '');\n } else {\n element.removeAttribute('inert');\n }\n });\n }\n\n lockBodyScroll(): void {\n if (this._body) {\n // Prevent page from scrolling when the dialog is open\n this._body.style.setProperty('overflow', 'hidden');\n }\n }\n\n unlockBodyScroll(): void {\n // Reset page `overflow` property\n if (this._body) {\n this._body.style.removeProperty('overflow');\n if (this._bodyInitialOverflowValue === '') {\n if (this._body.style.length === 0) {\n this._body.removeAttribute('style');\n }\n } else {\n this._body.style.setProperty(\n 'overflow',\n this._bodyInitialOverflowValue\n );\n }\n }\n }\n\n @action\n escapePress(event: KeyboardEvent): void {\n if (event.key === 'Escape' && !this._isMinimized && !this._isDesktop) {\n this._isMinimized = true;\n this.synchronizeInert();\n }\n }\n\n @action\n toggleMinimizedStatus(): void {\n this._isMinimized = !this._isMinimized;\n this.synchronizeInert();\n\n const { onToggleMinimizedStatus } = this.args;\n\n if (typeof onToggleMinimizedStatus === 'function') {\n onToggleMinimizedStatus(this._isMinimized);\n }\n\n if (this._isMinimized) {\n this.unlockBodyScroll();\n } else {\n this.lockBodyScroll();\n }\n }\n\n @action\n didInsert(element: HTMLElement): void {\n this._containersToHide = element.querySelectorAll(\n '.hds-app-side-nav-hide-when-minimized'\n );\n this._body = document.body;\n // Store the initial `overflow` value of `<body>` so we can reset to it\n this._bodyInitialOverflowValue =\n this._body.style.getPropertyValue('overflow');\n }\n\n @action\n setTransition(phase: string, event: TransitionEvent): void {\n // we only want to respond to `width` animation/transitions\n if (event.propertyName !== 'width') {\n return;\n }\n if (phase === 'start') {\n this._isAnimating = true;\n } else {\n this._isAnimating = false;\n }\n }\n\n @action\n updateDesktopVariable(event: MediaQueryListEvent): void {\n this._isDesktop = event.matches;\n\n // automatically minimize on narrow viewports (when not in desktop mode)\n this._isMinimized = !this._isDesktop;\n\n this.synchronizeInert();\n\n const { onDesktopViewportChange } = this.args;\n\n if (typeof onDesktopViewportChange === 'function') {\n onDesktopViewportChange(this._isDesktop);\n }\n }\n}\n"],"names":["HdsAppSideNav","_class","Component","constructor","owner","args","_initializerDefineProperty","_descriptor","_descriptor2","_descriptor3","_defineProperty","getComputedStyle","document","documentElement","getPropertyValue","_isMinimized","isMinimized","_desktopMQ","window","matchMedia","_desktopMQVal","addEventListeners","registerDestructor","removeEventListeners","addEventListener","escapePress","updateDesktopVariable","syntheticEvent","MediaQueryListEvent","matches","media","removeEventListener","isResponsive","isCollapsible","shouldTrapFocus","_isDesktop","showToggleButton","classNames","classes","push","_isAnimating","join","synchronizeInert","_containersToHide","forEach","element","setAttribute","removeAttribute","lockBodyScroll","_body","style","setProperty","unlockBodyScroll","removeProperty","_bodyInitialOverflowValue","length","event","key","toggleMinimizedStatus","onToggleMinimizedStatus","didInsert","querySelectorAll","body","setTransition","phase","propertyName","onDesktopViewportChange","_applyDecoratedDescriptor","prototype","tracked","configurable","enumerable","writable","initializer","action","Object","getOwnPropertyDescriptor","setComponentTemplate","TEMPLATE"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/hds/app-side-nav/index.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { action } from '@ember/object';\nimport { registerDestructor } from '@ember/destroyable';\nimport type Owner from '@ember/owner';\n\nexport interface HdsAppSideNavSignature {\n Args: {\n isResponsive?: boolean;\n isCollapsible?: boolean;\n isMinimized?: boolean;\n onToggleMinimizedStatus?: (arg: boolean) => void;\n onDesktopViewportChange?: (arg: boolean) => void;\n };\n Blocks: {\n default?: [];\n };\n Element: HTMLDivElement;\n}\n\nexport default class HdsAppSideNav extends Component<HdsAppSideNavSignature> {\n @tracked private _isMinimized;\n @tracked private _isAnimating = false;\n @tracked private _isDesktop = true;\n\n private _body!: HTMLElement;\n private _bodyInitialOverflowValue = '';\n private _desktopMQ: MediaQueryList;\n private _containersToHide!: NodeListOf<Element>;\n\n private _desktopMQVal = getComputedStyle(\n document.documentElement\n ).getPropertyValue('--hds-app-desktop-breakpoint');\n\n constructor(owner: Owner, args: HdsAppSideNavSignature['Args']) {\n super(owner, args);\n this._isMinimized = this.args.isMinimized ?? false; // sets the default state on 'desktop' viewports\n this._desktopMQ = window.matchMedia(`(min-width:${this._desktopMQVal})`);\n this.addEventListeners();\n registerDestructor(this, (): void => {\n this.removeEventListeners();\n });\n }\n\n addEventListeners(): void {\n document.addEventListener('keydown', this.escapePress, true);\n this._desktopMQ.addEventListener(\n 'change',\n this.updateDesktopVariable,\n true\n );\n // if not instantiated as minimized via arguments\n if (!this.args.isMinimized) {\n // set initial state based on viewport using a \"synthetic\" event\n const syntheticEvent = new MediaQueryListEvent('change', {\n matches: this._desktopMQ.matches,\n media: this._desktopMQ.media,\n });\n this.updateDesktopVariable(syntheticEvent);\n }\n }\n\n removeEventListeners(): void {\n document.removeEventListener('keydown', this.escapePress, true);\n this._desktopMQ.removeEventListener(\n 'change',\n this.updateDesktopVariable,\n true\n );\n }\n\n // controls if the component reacts to viewport changes\n get isResponsive(): boolean {\n return this.args.isResponsive ?? true;\n }\n\n // controls if users can collapse the appsidenav on 'desktop' viewports\n get isCollapsible(): boolean {\n return this.args.isCollapsible ?? false;\n }\n\n get shouldTrapFocus(): boolean {\n return this.isResponsive && !this._isDesktop && !this._isMinimized;\n }\n\n get showToggleButton(): boolean {\n return (this.isResponsive && !this._isDesktop) || this.isCollapsible;\n }\n\n get classNames(): string {\n const classes = [`hds-app-side-nav`];\n\n // add specific class names for the different possible states\n if (this.isResponsive) {\n classes.push('hds-app-side-nav--is-responsive');\n }\n if (!this._isDesktop && this.isResponsive) {\n classes.push('hds-app-side-nav--is-mobile');\n } else {\n classes.push('hds-app-side-nav--is-desktop');\n }\n if (this._isMinimized && this.isResponsive) {\n classes.push('hds-app-side-nav--is-minimized');\n } else {\n classes.push('hds-app-side-nav--is-not-minimized');\n }\n if (this._isAnimating) {\n classes.push('hds-app-side-nav--is-animating');\n }\n\n return classes.join(' ');\n }\n\n synchronizeInert(): void {\n this._containersToHide?.forEach((element): void => {\n if (this._isMinimized) {\n element.setAttribute('inert', '');\n } else {\n element.removeAttribute('inert');\n }\n });\n }\n\n lockBodyScroll(): void {\n if (this._body) {\n // Prevent page from scrolling when the dialog is open\n this._body.style.setProperty('overflow', 'hidden');\n }\n }\n\n unlockBodyScroll(): void {\n // Reset page `overflow` property\n if (this._body) {\n this._body.style.removeProperty('overflow');\n if (this._bodyInitialOverflowValue === '') {\n if (this._body.style.length === 0) {\n this._body.removeAttribute('style');\n }\n } else {\n this._body.style.setProperty(\n 'overflow',\n this._bodyInitialOverflowValue\n );\n }\n }\n }\n\n @action\n escapePress(event: KeyboardEvent): void {\n if (event.key === 'Escape' && !this._isMinimized && !this._isDesktop) {\n this._isMinimized = true;\n this.synchronizeInert();\n }\n }\n\n @action\n toggleMinimizedStatus(): void {\n this._isMinimized = !this._isMinimized;\n this.synchronizeInert();\n\n const { onToggleMinimizedStatus } = this.args;\n\n if (typeof onToggleMinimizedStatus === 'function') {\n onToggleMinimizedStatus(this._isMinimized);\n }\n\n if (this._isMinimized) {\n this.unlockBodyScroll();\n } else {\n this.lockBodyScroll();\n }\n }\n\n @action\n didInsert(element: HTMLElement): void {\n this._containersToHide = element.querySelectorAll(\n '.hds-app-side-nav-hide-when-minimized'\n );\n this._body = document.body;\n // Store the initial `overflow` value of `<body>` so we can reset to it\n this._bodyInitialOverflowValue =\n this._body.style.getPropertyValue('overflow');\n }\n\n @action\n setTransition(phase: string, event: TransitionEvent): void {\n // we only want to respond to `width` animation/transitions\n if (event.propertyName !== 'width') {\n return;\n }\n if (phase === 'start') {\n this._isAnimating = true;\n } else {\n this._isAnimating = false;\n }\n }\n\n @action\n updateDesktopVariable(event: MediaQueryListEvent): void {\n this._isDesktop = event.matches;\n\n // automatically minimize on narrow viewports (when not in desktop mode)\n this._isMinimized = !this._isDesktop;\n\n this.synchronizeInert();\n\n const { onDesktopViewportChange } = this.args;\n\n if (typeof onDesktopViewportChange === 'function') {\n onDesktopViewportChange(this._isDesktop);\n }\n }\n}\n"],"names":["HdsAppSideNav","Component","g","prototype","tracked","i","void 0","_body","_bodyInitialOverflowValue","_desktopMQ","_containersToHide","_desktopMQVal","getComputedStyle","document","documentElement","getPropertyValue","constructor","owner","args","_isMinimized","isMinimized","window","matchMedia","addEventListeners","registerDestructor","removeEventListeners","addEventListener","escapePress","updateDesktopVariable","syntheticEvent","MediaQueryListEvent","matches","media","removeEventListener","isResponsive","isCollapsible","shouldTrapFocus","_isDesktop","showToggleButton","classNames","classes","push","_isAnimating","join","synchronizeInert","forEach","element","setAttribute","removeAttribute","lockBodyScroll","style","setProperty","unlockBodyScroll","removeProperty","length","event","key","n","action","toggleMinimizedStatus","onToggleMinimizedStatus","didInsert","querySelectorAll","body","setTransition","phase","propertyName","onDesktopViewportChange","setComponentTemplate","TEMPLATE"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"back-link.js","sources":["../../../../../src/components/hds/app-side-nav/list/back-link.hbs","../../../../../src/components/hds/app-side-nav/list/back-link.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n\\n<Hds::AppSideNav::List::Item>\\n <Hds::Interactive\\n class=\\\"hds-app-side-nav__list-item-link hds-app-side-nav__list-item-link--back-link\\\"\\n @current-when={{@current-when}}\\n @models={{hds-link-to-models @model @models}}\\n @query={{hds-link-to-query @query}}\\n @replace={{@replace}}\\n @route={{@route}}\\n @isRouteExternal={{@isRouteExternal}}\\n @href={{@href}}\\n @isHrefExternal={{@isHrefExternal}}\\n ...attributes\\n >\\n <Hds::Icon class=\\\"hds-app-side-nav__list-item-icon-leading\\\" @name=\\\"chevron-left\\\" />\\n <span class=\\\"hds-app-side-nav__list-item-text hds-typography-body-200 hds-font-weight-medium\\\">\\n {{@text}}\\n </span>\\n </Hds::Interactive>\\n</Hds::AppSideNav::List::Item>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport TemplateOnlyComponent from '@ember/component/template-only';\n\nimport type { HdsInteractiveSignature } from '../../interactive';\n\nexport interface HdsAppSideNavListBackLinkSignature {\n Args: HdsInteractiveSignature['Args'] & {\n text: string;\n };\n Element: HdsInteractiveSignature['Element'];\n}\n\nconst HdsAppSideNavListBackLink =\n TemplateOnlyComponent<HdsAppSideNavListBackLinkSignature>();\n\nexport default HdsAppSideNavListBackLink;\n"],"names":["HdsAppSideNavListBackLink","TemplateOnlyComponent","setComponentTemplate","TEMPLATE"],"mappings":";;;;AACA,eAAe,kBAAkB,CAAC,4yBAA4yB;;ACD90B;AACA;AACA;AACA;;AAaA,MAAMA,yBAAyB,GAC7BC,qBAAqB,EAAsC;AAE7D,eAAAC,oBAAA,CAAAC,QAAA,EAAeH,yBAAyB,CAAA;;;;"}
1
+ {"version":3,"file":"back-link.js","sources":["../../../../../src/components/hds/app-side-nav/list/back-link.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport TemplateOnlyComponent from '@ember/component/template-only';\n\nimport type { HdsInteractiveSignature } from '../../interactive';\n\nexport interface HdsAppSideNavListBackLinkSignature {\n Args: HdsInteractiveSignature['Args'] & {\n text: string;\n };\n Element: HdsInteractiveSignature['Element'];\n}\n\nconst HdsAppSideNavListBackLink =\n TemplateOnlyComponent<HdsAppSideNavListBackLinkSignature>();\n\nexport default HdsAppSideNavListBackLink;\n"],"names":["HdsAppSideNavListBackLink","TemplateOnlyComponent","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;;AAaA,MAAMA,yBAAyB,GAC7BC,qBAAqB,EAAsC;AAE7D,eAAAC,oBAAA,CAAAC,QAAA,EAAeH,yBAAyB,CAAA;;;;"}
@@ -1,32 +1,34 @@
1
- import { _ as _applyDecoratedDescriptor, b as _initializerDefineProperty } from '../../../../_rollupPluginBabelHelpers-C_TsMG3M.js';
2
1
  import Component from '@glimmer/component';
3
2
  import { action } from '@ember/object';
4
3
  import { tracked } from '@glimmer/tracking';
5
4
  import { precompileTemplate } from '@ember/template-compilation';
5
+ import { g, i, n } from 'decorator-transforms/runtime';
6
6
  import { setComponentTemplate } from '@ember/component';
7
7
 
8
8
  var TEMPLATE = precompileTemplate("{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n\n<nav class=\"hds-app-side-nav__list-wrapper\" aria-labelledby=\"hds-app-side-nav-header\" ...attributes>\n {{yield (hash ExtraBefore=(component \"hds/yield\"))}}\n <ul class=\"hds-app-side-nav__list\" role=\"list\" aria-labelledby={{this.titleIds}}>\n {{yield\n (hash\n Item=(component \"hds/app-side-nav/list/item\")\n BackLink=(component \"hds/app-side-nav/list/back-link\")\n Title=(component \"hds/app-side-nav/list/title\" didInsertTitle=this.didInsertTitle)\n Link=(component \"hds/app-side-nav/list/link\")\n )\n }}\n </ul>\n {{yield (hash ExtraAfter=(component \"hds/yield\"))}}\n</nav>");
9
9
 
10
- var _class, _descriptor;
11
- let HdsAppSideNavList = (_class = class HdsAppSideNavList extends Component {
12
- constructor(...args) {
13
- super(...args);
14
- _initializerDefineProperty(this, "_titleIds", _descriptor, this);
10
+ /**
11
+ * Copyright (c) HashiCorp, Inc.
12
+ * SPDX-License-Identifier: MPL-2.0
13
+ */
14
+
15
+ class HdsAppSideNavList extends Component {
16
+ static {
17
+ g(this.prototype, "_titleIds", [tracked], function () {
18
+ return [];
19
+ });
15
20
  }
21
+ #_titleIds = (i(this, "_titleIds"), undefined);
16
22
  get titleIds() {
17
23
  return this._titleIds.join(' ');
18
24
  }
19
25
  didInsertTitle(titleId) {
20
26
  this._titleIds = [...this._titleIds, titleId];
21
27
  }
22
- }, _descriptor = _applyDecoratedDescriptor(_class.prototype, "_titleIds", [tracked], {
23
- configurable: true,
24
- enumerable: true,
25
- writable: true,
26
- initializer: function () {
27
- return [];
28
+ static {
29
+ n(this.prototype, "didInsertTitle", [action]);
28
30
  }
29
- }), _applyDecoratedDescriptor(_class.prototype, "didInsertTitle", [action], Object.getOwnPropertyDescriptor(_class.prototype, "didInsertTitle"), _class.prototype), _class);
31
+ }
30
32
  setComponentTemplate(TEMPLATE, HdsAppSideNavList);
31
33
 
32
34
  export { HdsAppSideNavList as default };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../src/components/hds/app-side-nav/list/index.hbs","../../../../../src/components/hds/app-side-nav/list/index.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n\\n<nav class=\\\"hds-app-side-nav__list-wrapper\\\" aria-labelledby=\\\"hds-app-side-nav-header\\\" ...attributes>\\n {{yield (hash ExtraBefore=(component \\\"hds/yield\\\"))}}\\n <ul class=\\\"hds-app-side-nav__list\\\" role=\\\"list\\\" aria-labelledby={{this.titleIds}}>\\n {{yield\\n (hash\\n Item=(component \\\"hds/app-side-nav/list/item\\\")\\n BackLink=(component \\\"hds/app-side-nav/list/back-link\\\")\\n Title=(component \\\"hds/app-side-nav/list/title\\\" didInsertTitle=this.didInsertTitle)\\n Link=(component \\\"hds/app-side-nav/list/link\\\")\\n )\\n }}\\n </ul>\\n {{yield (hash ExtraAfter=(component \\\"hds/yield\\\"))}}\\n</nav>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { action } from '@ember/object';\nimport { tracked } from '@glimmer/tracking';\nimport type { ComponentLike } from '@glint/template';\nimport type { HdsYieldSignature } from '../../yield';\nimport type { HdsAppSideNavListItemSignature } from './item';\nimport type { HdsAppSideNavListBackLinkSignature } from './back-link';\nimport type { HdsAppSideNavListTitleSignature } from './title';\nimport type { HdsAppSideNavListLinkSignature } from './link';\n\nexport interface HdsAppSideNavListSignature {\n Blocks: {\n default: [\n {\n ExtraBefore?: ComponentLike<HdsYieldSignature>;\n Item?: ComponentLike<HdsAppSideNavListItemSignature>;\n BackLink?: ComponentLike<HdsAppSideNavListBackLinkSignature>;\n Title?: ComponentLike<HdsAppSideNavListTitleSignature>;\n Link?: ComponentLike<HdsAppSideNavListLinkSignature>;\n ExtraAfter?: ComponentLike<HdsYieldSignature>;\n },\n ];\n };\n Element: HTMLElement;\n}\n\nexport default class HdsAppSideNavList extends Component<HdsAppSideNavListSignature> {\n @tracked private _titleIds: string[] = [];\n\n get titleIds(): string {\n return this._titleIds.join(' ');\n }\n\n @action\n didInsertTitle(titleId: string): void {\n this._titleIds = [...this._titleIds, titleId];\n }\n}\n"],"names":["HdsAppSideNavList","_class","Component","constructor","args","_initializerDefineProperty","_descriptor","titleIds","_titleIds","join","didInsertTitle","titleId","_applyDecoratedDescriptor","prototype","tracked","configurable","enumerable","writable","initializer","action","Object","getOwnPropertyDescriptor","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;;AACA,eAAe,kBAAkB,CAAC,otBAAotB;;;AC8BjuBA,IAAAA,iBAAiB,IAAAC,MAAA,GAAvB,MAAMD,iBAAiB,SAASE,SAAS,CAA6B;AAAAC,EAAAA,WAAAA,CAAA,GAAAC,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAAA,IAAA,CAAA;AAAAC,IAAAA,0BAAA,oBAAAC,WAAA,EAAA,IAAA,CAAA;AAAA;EAGnF,IAAIC,QAAQA,GAAW;AACrB,IAAA,OAAO,IAAI,CAACC,SAAS,CAACC,IAAI,CAAC,GAAG,CAAC;AACjC;EAGAC,cAAcA,CAACC,OAAe,EAAQ;IACpC,IAAI,CAACH,SAAS,GAAG,CAAC,GAAG,IAAI,CAACA,SAAS,EAAEG,OAAO,CAAC;AAC/C;AACF,CAAC,EAAAL,WAAA,GAAAM,yBAAA,CAAAX,MAAA,CAAAY,SAAA,EAAA,WAAA,EAAA,CAVEC,OAAO,CAAA,EAAA;EAAAC,YAAA,EAAA,IAAA;EAAAC,UAAA,EAAA,IAAA;EAAAC,QAAA,EAAA,IAAA;AAAAC,EAAAA,WAAA,cAAA;AAAA,IAAA,OAA+B,EAAE;AAAA;AAAA,CAAAN,CAAAA,EAAAA,yBAAA,CAAAX,MAAA,CAAAY,SAAA,EAMxCM,gBAAAA,EAAAA,CAAAA,MAAM,GAAAC,MAAA,CAAAC,wBAAA,CAAApB,MAAA,CAAAY,SAAA,EAAA,gBAAA,CAAA,EAAAZ,MAAA,CAAAY,SAAA,GAAAZ,MAAA;AAP6BqB,oBAAA,CAAAC,QAAA,EAAjBvB,iBAAiB,CAAA;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/components/hds/app-side-nav/list/index.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { action } from '@ember/object';\nimport { tracked } from '@glimmer/tracking';\nimport type { ComponentLike } from '@glint/template';\nimport type { HdsYieldSignature } from '../../yield';\nimport type { HdsAppSideNavListItemSignature } from './item';\nimport type { HdsAppSideNavListBackLinkSignature } from './back-link';\nimport type { HdsAppSideNavListTitleSignature } from './title';\nimport type { HdsAppSideNavListLinkSignature } from './link';\n\nexport interface HdsAppSideNavListSignature {\n Blocks: {\n default: [\n {\n ExtraBefore?: ComponentLike<HdsYieldSignature>;\n Item?: ComponentLike<HdsAppSideNavListItemSignature>;\n BackLink?: ComponentLike<HdsAppSideNavListBackLinkSignature>;\n Title?: ComponentLike<HdsAppSideNavListTitleSignature>;\n Link?: ComponentLike<HdsAppSideNavListLinkSignature>;\n ExtraAfter?: ComponentLike<HdsYieldSignature>;\n },\n ];\n };\n Element: HTMLElement;\n}\n\nexport default class HdsAppSideNavList extends Component<HdsAppSideNavListSignature> {\n @tracked private _titleIds: string[] = [];\n\n get titleIds(): string {\n return this._titleIds.join(' ');\n }\n\n @action\n didInsertTitle(titleId: string): void {\n this._titleIds = [...this._titleIds, titleId];\n }\n}\n"],"names":["HdsAppSideNavList","Component","g","prototype","tracked","i","void 0","titleIds","_titleIds","join","didInsertTitle","titleId","n","action","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;;;;AAAA;AACA;AACA;AACA;;AA4Be,MAAMA,iBAAiB,SAASC,SAAS,CAA6B;AAAA,EAAA;IAAAC,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,WAAA,EAAA,CAClFC,OAAO,CAAA,EAAA,YAAA;AAAA,MAAA,OAA+B,EAAE;AAAA,KAAA,CAAA;AAAA;AAAA,EAAA,UAAA,IAAAC,CAAA,CAAA,IAAA,EAAA,WAAA,CAAA,EAAAC,SAAA;EAEzC,IAAIC,QAAQA,GAAW;AACrB,IAAA,OAAO,IAAI,CAACC,SAAS,CAACC,IAAI,CAAC,GAAG,CAAC;AACjC;EAGAC,cAAcA,CAACC,OAAe,EAAQ;IACpC,IAAI,CAACH,SAAS,GAAG,CAAC,GAAG,IAAI,CAACA,SAAS,EAAEG,OAAO,CAAC;AAC/C;AAAC,EAAA;IAAAC,CAAA,CAAA,IAAA,CAAAT,SAAA,EAAA,gBAAA,EAAA,CAHAU,MAAM,CAAA,CAAA;AAAA;AAIT;AAACC,oBAAA,CAAAC,QAAA,EAXoBf,iBAAiB,CAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"item.js","sources":["../../../../../src/components/hds/app-side-nav/list/item.hbs","../../../../../src/components/hds/app-side-nav/list/item.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n\\n<li class=\\\"hds-app-side-nav__list-item\\\" ...attributes>\\n {{yield}}\\n</li>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport TemplateOnlyComponent from '@ember/component/template-only';\n\nexport interface HdsAppSideNavListItemSignature {\n Blocks: {\n default: [];\n };\n Element: HTMLLIElement;\n}\n\nconst HdsAppSideNavListItem =\n TemplateOnlyComponent<HdsAppSideNavListItemSignature>();\n\nexport default HdsAppSideNavListItem;\n"],"names":["HdsAppSideNavListItem","TemplateOnlyComponent","setComponentTemplate","TEMPLATE"],"mappings":";;;;AACA,eAAe,kBAAkB,CAAC,8JAA8J;;ACDhM;AACA;AACA;AACA;;AAWA,MAAMA,qBAAqB,GACzBC,qBAAqB,EAAkC;AAEzD,WAAAC,oBAAA,CAAAC,QAAA,EAAeH,qBAAqB,CAAA;;;;"}
1
+ {"version":3,"file":"item.js","sources":["../../../../../src/components/hds/app-side-nav/list/item.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport TemplateOnlyComponent from '@ember/component/template-only';\n\nexport interface HdsAppSideNavListItemSignature {\n Blocks: {\n default: [];\n };\n Element: HTMLLIElement;\n}\n\nconst HdsAppSideNavListItem =\n TemplateOnlyComponent<HdsAppSideNavListItemSignature>();\n\nexport default HdsAppSideNavListItem;\n"],"names":["HdsAppSideNavListItem","TemplateOnlyComponent","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;;AAWA,MAAMA,qBAAqB,GACzBC,qBAAqB,EAAkC;AAEzD,WAAAC,oBAAA,CAAAC,QAAA,EAAeH,qBAAqB,CAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"link.js","sources":["../../../../../src/components/hds/app-side-nav/list/link.hbs","../../../../../src/components/hds/app-side-nav/list/link.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n\\n<Hds::AppSideNav::List::Item>\\n <Hds::Interactive\\n class=\\\"hds-app-side-nav__list-item-link {{if @isActive \\'active\\'}}\\\"\\n @current-when={{@current-when}}\\n @models={{hds-link-to-models @model @models}}\\n @query={{hds-link-to-query @query}}\\n @replace={{@replace}}\\n @route={{@route}}\\n @isRouteExternal={{@isRouteExternal}}\\n @href={{@href}}\\n @isHrefExternal={{@isHrefExternal}}\\n aria-current={{if @isActive \\\"page\\\"}}\\n ...attributes\\n >\\n {{#if @icon}}\\n <Hds::Icon class=\\\"hds-app-side-nav__list-item-icon-leading\\\" @name={{@icon}} />\\n {{/if}}\\n\\n {{#if @text}}\\n <span class=\\\"hds-app-side-nav__list-item-text hds-typography-body-200 hds-font-weight-medium\\\">\\n {{@text}}\\n </span>\\n {{/if}}\\n\\n {{#if @count}}\\n <Hds::BadgeCount @text={{@count}} @type=\\\"outlined\\\" @size=\\\"small\\\" />\\n {{/if}}\\n\\n {{#if @badge}}\\n <Hds::Badge @text={{@badge}} @type=\\\"outlined\\\" @size=\\\"small\\\" />\\n {{/if}}\\n\\n {{yield}}\\n\\n {{#if @hasSubItems}}\\n <span class=\\\"hds-app-side-nav__list-item-icon-trailing\\\">\\n <Hds::Icon @name=\\\"chevron-right\\\" />\\n </span>\\n {{/if}}\\n {{#if @isHrefExternal}}\\n <span class=\\\"hds-app-side-nav__list-item-icon-trailing\\\">\\n <Hds::Icon @name=\\\"external-link\\\" />\\n </span>\\n {{/if}}\\n </Hds::Interactive>\\n</Hds::AppSideNav::List::Item>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport TemplateOnlyComponent from '@ember/component/template-only';\n\nimport type { HdsIconSignature } from '../../icon';\nimport type { HdsInteractiveSignature } from '../../interactive';\n\nexport interface HdsAppSideNavListLinkSignature {\n Args: HdsInteractiveSignature['Args'] & {\n icon?: HdsIconSignature['Args']['name'];\n text?: string;\n badge?: string;\n count?: string;\n hasSubItems?: boolean;\n isActive?: boolean;\n };\n Blocks: {\n default: [];\n };\n Element: HdsInteractiveSignature['Element'];\n}\n\nconst HdsAppSideNavListLink =\n TemplateOnlyComponent<HdsAppSideNavListLinkSignature>();\n\nexport default HdsAppSideNavListLink;\n"],"names":["HdsAppSideNavListLink","TemplateOnlyComponent","setComponentTemplate","TEMPLATE"],"mappings":";;;;AACA,eAAe,kBAAkB,CAAC,88CAA88C;;ACDh/C;AACA;AACA;AACA;;AAsBA,MAAMA,qBAAqB,GACzBC,qBAAqB,EAAkC;AAEzD,WAAAC,oBAAA,CAAAC,QAAA,EAAeH,qBAAqB,CAAA;;;;"}
1
+ {"version":3,"file":"link.js","sources":["../../../../../src/components/hds/app-side-nav/list/link.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport TemplateOnlyComponent from '@ember/component/template-only';\n\nimport type { HdsIconSignature } from '../../icon';\nimport type { HdsInteractiveSignature } from '../../interactive';\n\nexport interface HdsAppSideNavListLinkSignature {\n Args: HdsInteractiveSignature['Args'] & {\n icon?: HdsIconSignature['Args']['name'];\n text?: string;\n badge?: string;\n count?: string;\n hasSubItems?: boolean;\n isActive?: boolean;\n };\n Blocks: {\n default: [];\n };\n Element: HdsInteractiveSignature['Element'];\n}\n\nconst HdsAppSideNavListLink =\n TemplateOnlyComponent<HdsAppSideNavListLinkSignature>();\n\nexport default HdsAppSideNavListLink;\n"],"names":["HdsAppSideNavListLink","TemplateOnlyComponent","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;;AAsBA,MAAMA,qBAAqB,GACzBC,qBAAqB,EAAkC;AAEzD,WAAAC,oBAAA,CAAAC,QAAA,EAAeH,qBAAqB,CAAA;;;;"}
@@ -1,19 +1,20 @@
1
- import { _ as _applyDecoratedDescriptor, a as _defineProperty } from '../../../../_rollupPluginBabelHelpers-C_TsMG3M.js';
2
1
  import { guidFor } from '@ember/object/internals';
3
2
  import { action } from '@ember/object';
4
3
  import Component from '@glimmer/component';
5
4
  import { precompileTemplate } from '@ember/template-compilation';
5
+ import { n } from 'decorator-transforms/runtime';
6
6
  import { setComponentTemplate } from '@ember/component';
7
7
 
8
8
  var TEMPLATE = precompileTemplate("{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n\n<Hds::AppSideNav::List::Item>\n <div\n class=\"hds-app-side-nav__list-title hds-typography-body-100 hds-font-weight-semibold\"\n id={{this._titleId}}\n {{did-insert this.didInsertTitle}}\n ...attributes\n >{{~yield~}}</div>\n</Hds::AppSideNav::List::Item>");
9
9
 
10
- var _class;
11
- let HdsAppSideNavListTitle = (_class = class HdsAppSideNavListTitle extends Component {
12
- constructor(...args) {
13
- super(...args);
14
- /* Generate a unique ID for each Title */
15
- _defineProperty(this, "_titleId", 'title-' + guidFor(this));
16
- }
10
+ /**
11
+ * Copyright (c) HashiCorp, Inc.
12
+ * SPDX-License-Identifier: MPL-2.0
13
+ */
14
+
15
+ class HdsAppSideNavListTitle extends Component {
16
+ /* Generate a unique ID for each Title */
17
+ _titleId = 'title-' + guidFor(this);
17
18
  didInsertTitle(element) {
18
19
  const {
19
20
  didInsertTitle
@@ -22,7 +23,10 @@ let HdsAppSideNavListTitle = (_class = class HdsAppSideNavListTitle extends Comp
22
23
  didInsertTitle(element.id);
23
24
  }
24
25
  }
25
- }, _applyDecoratedDescriptor(_class.prototype, "didInsertTitle", [action], Object.getOwnPropertyDescriptor(_class.prototype, "didInsertTitle"), _class.prototype), _class);
26
+ static {
27
+ n(this.prototype, "didInsertTitle", [action]);
28
+ }
29
+ }
26
30
  setComponentTemplate(TEMPLATE, HdsAppSideNavListTitle);
27
31
 
28
32
  export { HdsAppSideNavListTitle as default };
@@ -1 +1 @@
1
- {"version":3,"file":"title.js","sources":["../../../../../src/components/hds/app-side-nav/list/title.hbs","../../../../../src/components/hds/app-side-nav/list/title.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n\\n<Hds::AppSideNav::List::Item>\\n <div\\n class=\\\"hds-app-side-nav__list-title hds-typography-body-100 hds-font-weight-semibold\\\"\\n id={{this._titleId}}\\n {{did-insert this.didInsertTitle}}\\n ...attributes\\n >{{~yield~}}</div>\\n</Hds::AppSideNav::List::Item>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport { guidFor } from '@ember/object/internals';\nimport { action } from '@ember/object';\nimport Component from '@glimmer/component';\n\nexport interface HdsAppSideNavListTitleSignature {\n Args: {\n didInsertTitle?: (titleId: string) => void;\n };\n Blocks: {\n default: [];\n };\n Element: HTMLDivElement;\n}\n\nexport default class HdsAppSideNavListTitle extends Component<HdsAppSideNavListTitleSignature> {\n /* Generate a unique ID for each Title */\n private _titleId = 'title-' + guidFor(this);\n\n @action\n didInsertTitle(element: HTMLElement): void {\n const { didInsertTitle } = this.args;\n\n if (typeof didInsertTitle === 'function') {\n didInsertTitle(element.id);\n }\n }\n}\n"],"names":["HdsAppSideNavListTitle","_class","Component","constructor","args","_defineProperty","guidFor","didInsertTitle","element","id","_applyDecoratedDescriptor","prototype","action","Object","getOwnPropertyDescriptor","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;;AACA,eAAe,kBAAkB,CAAC,+VAA+V;;;ACkB5WA,IAAAA,sBAAsB,IAAAC,MAAA,GAA5B,MAAMD,sBAAsB,SAASE,SAAS,CAAkC;AAAAC,EAAAA,WAAAA,CAAA,GAAAC,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAAA,IAAA,CAAA;AAC7F;AAAAC,IAAAA,eAAA,mBACmB,QAAQ,GAAGC,OAAO,CAAC,IAAI,CAAC,CAAA;AAAA;EAG3CC,cAAcA,CAACC,OAAoB,EAAQ;IACzC,MAAM;AAAED,MAAAA;KAAgB,GAAG,IAAI,CAACH,IAAI;AAEpC,IAAA,IAAI,OAAOG,cAAc,KAAK,UAAU,EAAE;AACxCA,MAAAA,cAAc,CAACC,OAAO,CAACC,EAAE,CAAC;AAC5B;AACF;AACF,CAAC,EAAAC,yBAAA,CAAAT,MAAA,CAAAU,SAAA,EAAA,gBAAA,EAAA,CAREC,MAAM,CAAAC,EAAAA,MAAA,CAAAC,wBAAA,CAAAb,MAAA,CAAAU,SAAA,qBAAAV,MAAA,CAAAU,SAAA,CAAA,EAAAV,MAAA;AAJkCc,oBAAA,CAAAC,QAAA,EAAtBhB,sBAAsB,CAAA;;;;"}
1
+ {"version":3,"file":"title.js","sources":["../../../../../src/components/hds/app-side-nav/list/title.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport { guidFor } from '@ember/object/internals';\nimport { action } from '@ember/object';\nimport Component from '@glimmer/component';\n\nexport interface HdsAppSideNavListTitleSignature {\n Args: {\n didInsertTitle?: (titleId: string) => void;\n };\n Blocks: {\n default: [];\n };\n Element: HTMLDivElement;\n}\n\nexport default class HdsAppSideNavListTitle extends Component<HdsAppSideNavListTitleSignature> {\n /* Generate a unique ID for each Title */\n private _titleId = 'title-' + guidFor(this);\n\n @action\n didInsertTitle(element: HTMLElement): void {\n const { didInsertTitle } = this.args;\n\n if (typeof didInsertTitle === 'function') {\n didInsertTitle(element.id);\n }\n }\n}\n"],"names":["HdsAppSideNavListTitle","Component","_titleId","guidFor","didInsertTitle","element","args","id","n","prototype","action","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;;;;AAAA;AACA;AACA;AACA;;AAgBe,MAAMA,sBAAsB,SAASC,SAAS,CAAkC;AAC7F;AACQC,EAAAA,QAAQ,GAAG,QAAQ,GAAGC,OAAO,CAAC,IAAI,CAAC;EAG3CC,cAAcA,CAACC,OAAoB,EAAQ;IACzC,MAAM;AAAED,MAAAA;KAAgB,GAAG,IAAI,CAACE,IAAI;AAEpC,IAAA,IAAI,OAAOF,cAAc,KAAK,UAAU,EAAE;AACxCA,MAAAA,cAAc,CAACC,OAAO,CAACE,EAAE,CAAC;AAC5B;AACF;AAAC,EAAA;IAAAC,CAAA,CAAA,IAAA,CAAAC,SAAA,EAAA,gBAAA,EAAA,CAPAC,MAAM,CAAA,CAAA;AAAA;AAQT;AAACC,oBAAA,CAAAC,QAAA,EAZoBZ,sBAAsB,CAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../src/components/hds/app-side-nav/portal/index.hbs","../../../../../src/components/hds/app-side-nav/portal/index.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n\\n<Portal @target={{if @targetName @targetName \\\"hds-app-side-nav-portal-target\\\"}}>\\n <div class=\\\"hds-app-side-nav__content-panel\\\" ...attributes>\\n <Hds::AppSideNav::List aria-label={{@ariaLabel}} as |ListElements|>\\n {{yield ListElements}}\\n </Hds::AppSideNav::List>\\n </div>\\n</Portal>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport TemplateOnlyComponent from '@ember/component/template-only';\n\nimport type { HdsAppSideNavListSignature } from '../list/index';\n\n// TODO! understand how this should be done \"correctly\"\n// import type { PortalSignature } from 'ember-stargate/components/portal';\ninterface PortalSignature {\n Args: {\n target: string;\n renderInPlace?: boolean;\n fallback?: 'inplace';\n };\n Blocks: {\n default: [];\n };\n}\n\nexport interface HdsAppSideNavPortalSignature {\n Args: PortalSignature['Args'] & {\n ariaLabel?: string;\n targetName?: string;\n };\n Blocks: HdsAppSideNavListSignature['Blocks'];\n Element: HTMLDivElement;\n}\n\nconst HdsAppSideNavPortal =\n TemplateOnlyComponent<HdsAppSideNavPortalSignature>();\n\nexport default HdsAppSideNavPortal;\n"],"names":["HdsAppSideNavPortal","TemplateOnlyComponent","setComponentTemplate","TEMPLATE"],"mappings":";;;;AACA,eAAe,kBAAkB,CAAC,+XAA+X;;ACDja;AACA;AACA;AACA;;AA4BA,MAAMA,mBAAmB,GACvBC,qBAAqB,EAAgC;AAEvD,YAAAC,oBAAA,CAAAC,QAAA,EAAeH,mBAAmB,CAAA;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/components/hds/app-side-nav/portal/index.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport TemplateOnlyComponent from '@ember/component/template-only';\n\nimport type { HdsAppSideNavListSignature } from '../list/index';\n\n// TODO! understand how this should be done \"correctly\"\n// import type { PortalSignature } from 'ember-stargate/components/portal';\ninterface PortalSignature {\n Args: {\n target: string;\n renderInPlace?: boolean;\n fallback?: 'inplace';\n };\n Blocks: {\n default: [];\n };\n}\n\nexport interface HdsAppSideNavPortalSignature {\n Args: PortalSignature['Args'] & {\n ariaLabel?: string;\n targetName?: string;\n };\n Blocks: HdsAppSideNavListSignature['Blocks'];\n Element: HTMLDivElement;\n}\n\nconst HdsAppSideNavPortal =\n TemplateOnlyComponent<HdsAppSideNavPortalSignature>();\n\nexport default HdsAppSideNavPortal;\n"],"names":["HdsAppSideNavPortal","TemplateOnlyComponent","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;;AA4BA,MAAMA,mBAAmB,GACvBC,qBAAqB,EAAgC;AAEvD,YAAAC,oBAAA,CAAAC,QAAA,EAAeH,mBAAmB,CAAA;;;;"}
@@ -1,36 +1,53 @@
1
- import { _ as _applyDecoratedDescriptor, b as _initializerDefineProperty, a as _defineProperty } from '../../../../_rollupPluginBabelHelpers-C_TsMG3M.js';
2
1
  import Component from '@glimmer/component';
3
2
  import { inject } from '@ember/service';
4
3
  import { tracked } from '@glimmer/tracking';
5
4
  import { action } from '@ember/object';
6
- import { DEBUG } from '@glimmer/env';
7
5
  import { macroCondition, isTesting } from '@embroider/macros';
8
6
  import { precompileTemplate } from '@ember/template-compilation';
7
+ import { g, i, n } from 'decorator-transforms/runtime';
9
8
  import { setComponentTemplate } from '@ember/component';
10
9
 
11
10
  var TEMPLATE = precompileTemplate("{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n\n<div class=\"hds-app-side-nav__content\" ...attributes>\n <PortalTarget\n @multiple={{true}}\n @onChange={{this.panelsChanged}}\n @name={{if @targetName @targetName \"hds-app-side-nav-portal-target\"}}\n class=\"hds-app-side-nav__content-panels hds-app-side-nav-hide-when-minimized\"\n {{did-update this.didUpdateSubnav this._numSubnavs}}\n />\n</div>");
12
11
 
13
- var _class, _descriptor, _descriptor2, _descriptor3;
14
- let HdsAppSideNavPortalTarget = (_class = class HdsAppSideNavPortalTarget extends Component {
15
- constructor(...args) {
16
- super(...args);
17
- _initializerDefineProperty(this, "router", _descriptor, this);
18
- _initializerDefineProperty(this, "_numSubnavs", _descriptor2, this);
19
- _initializerDefineProperty(this, "_lastPanelEl", _descriptor3, this);
20
- _defineProperty(this, "_prefersReducedMotionMQ", window.matchMedia('(prefers-reduced-motion: reduce)'));
12
+ /**
13
+ * Copyright (c) HashiCorp, Inc.
14
+ * SPDX-License-Identifier: MPL-2.0
15
+ */
16
+
17
+ class HdsAppSideNavPortalTarget extends Component {
18
+ static {
19
+ g(this.prototype, "router", [inject]);
20
+ }
21
+ #router = (i(this, "router"), undefined);
22
+ static {
23
+ g(this.prototype, "_numSubnavs", [tracked], function () {
24
+ return 0;
25
+ });
21
26
  }
27
+ #_numSubnavs = (i(this, "_numSubnavs"), undefined);
28
+ static {
29
+ g(this.prototype, "_lastPanelEl", [tracked]);
30
+ }
31
+ #_lastPanelEl = (i(this, "_lastPanelEl"), undefined);
22
32
  static get prefersReducedMotionOverride() {
23
33
  return macroCondition(isTesting()) ? true : false;
24
34
  }
35
+ _prefersReducedMotionMQ = window.matchMedia('(prefers-reduced-motion: reduce)');
25
36
  get prefersReducedMotion() {
26
37
  return HdsAppSideNavPortalTarget.prefersReducedMotionOverride || this._prefersReducedMotionMQ && this._prefersReducedMotionMQ.matches;
27
38
  }
28
39
  panelsChanged(portalCount) {
29
40
  this._numSubnavs = portalCount;
30
41
  }
42
+ static {
43
+ n(this.prototype, "panelsChanged", [action]);
44
+ }
31
45
  didUpdateSubnav(element, [count]) {
32
46
  this.animateSubnav(element, [count]);
33
47
  }
48
+ static {
49
+ n(this.prototype, "didUpdateSubnav", [action]);
50
+ }
34
51
  animateSubnav(element, [count]) {
35
52
  /*
36
53
  * Here is ascii art of what the layout looks like for this setup
@@ -111,7 +128,7 @@ let HdsAppSideNavPortalTarget = (_class = class HdsAppSideNavPortalTarget extend
111
128
  }
112
129
  }
113
130
  // Notice: we don't add the styles by default because it writes a `style` attribute to the element and it causes an additional re-render
114
- if (DEBUG) {
131
+ if (macroCondition(isTesting())) {
115
132
  // Check the visibility of the element before attempting to commitStyles.
116
133
  if (targetElement.offsetParent !== null) {
117
134
  anim.commitStyles();
@@ -149,24 +166,10 @@ let HdsAppSideNavPortalTarget = (_class = class HdsAppSideNavPortalTarget extend
149
166
  });
150
167
  }
151
168
  }
152
- }, _descriptor = _applyDecoratedDescriptor(_class.prototype, "router", [inject], {
153
- configurable: true,
154
- enumerable: true,
155
- writable: true,
156
- initializer: null
157
- }), _descriptor2 = _applyDecoratedDescriptor(_class.prototype, "_numSubnavs", [tracked], {
158
- configurable: true,
159
- enumerable: true,
160
- writable: true,
161
- initializer: function () {
162
- return 0;
169
+ static {
170
+ n(this.prototype, "animateSubnav", [action]);
163
171
  }
164
- }), _descriptor3 = _applyDecoratedDescriptor(_class.prototype, "_lastPanelEl", [tracked], {
165
- configurable: true,
166
- enumerable: true,
167
- writable: true,
168
- initializer: null
169
- }), _applyDecoratedDescriptor(_class.prototype, "panelsChanged", [action], Object.getOwnPropertyDescriptor(_class.prototype, "panelsChanged"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, "didUpdateSubnav", [action], Object.getOwnPropertyDescriptor(_class.prototype, "didUpdateSubnav"), _class.prototype), _applyDecoratedDescriptor(_class.prototype, "animateSubnav", [action], Object.getOwnPropertyDescriptor(_class.prototype, "animateSubnav"), _class.prototype), _class);
172
+ }
170
173
  setComponentTemplate(TEMPLATE, HdsAppSideNavPortalTarget);
171
174
 
172
175
  export { HdsAppSideNavPortalTarget as default };
@@ -1 +1 @@
1
- {"version":3,"file":"target.js","sources":["../../../../../src/components/hds/app-side-nav/portal/target.hbs","../../../../../src/components/hds/app-side-nav/portal/target.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n\\n<div class=\\\"hds-app-side-nav__content\\\" ...attributes>\\n <PortalTarget\\n @multiple={{true}}\\n @onChange={{this.panelsChanged}}\\n @name={{if @targetName @targetName \\\"hds-app-side-nav-portal-target\\\"}}\\n class=\\\"hds-app-side-nav__content-panels hds-app-side-nav-hide-when-minimized\\\"\\n {{did-update this.didUpdateSubnav this._numSubnavs}}\\n />\\n</div>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { inject as service } from '@ember/service';\nimport { tracked } from '@glimmer/tracking';\nimport { action } from '@ember/object';\nimport { DEBUG } from '@glimmer/env';\nimport { macroCondition, isTesting } from '@embroider/macros';\n\nimport type { HdsAppSideNavPortalSignature } from './index';\n\n// import { PortalTargetSignature } from 'ember-stargate/components/portal-target';\ninterface PortalTargetSignature {\n Element: HTMLDivElement;\n Args: {\n name: string;\n multiple?: boolean;\n onChange?: (count: number) => void;\n };\n Blocks: {\n default: [number];\n };\n}\n\nimport type { Registry as Services } from '@ember/service';\n\ninterface HdsAppSideNavPortalTargetSignature {\n Args: PortalTargetSignature['Args'] & {\n targetName?: HdsAppSideNavPortalSignature['Args']['targetName'];\n };\n Element: HTMLDivElement;\n}\n\nexport default class HdsAppSideNavPortalTarget extends Component<HdsAppSideNavPortalTargetSignature> {\n @service router!: Services['router'];\n\n @tracked private _numSubnavs = 0;\n @tracked private _lastPanelEl: Element | undefined;\n\n static get prefersReducedMotionOverride(): boolean {\n return macroCondition(isTesting()) ? true : false;\n }\n\n private _prefersReducedMotionMQ = window.matchMedia(\n '(prefers-reduced-motion: reduce)'\n );\n\n get prefersReducedMotion(): boolean {\n return (\n HdsAppSideNavPortalTarget.prefersReducedMotionOverride ||\n (this._prefersReducedMotionMQ && this._prefersReducedMotionMQ.matches)\n );\n }\n\n @action\n panelsChanged(portalCount: number): void {\n this._numSubnavs = portalCount;\n }\n\n @action\n didUpdateSubnav(element: HTMLElement, [count]: [number]): void {\n this.animateSubnav(element, [count]);\n }\n\n @action\n animateSubnav(element: HTMLElement, [count]: [number]): void {\n /*\n * Here is ascii art of what the layout looks like for this setup\n *\n\n AppSideNav\n +----------------------+\n | +------------------+ |\n | | (\"header\") | |\n | +------------------+ |\n | |\n | +------------------+ |\n | | (\"body\") | |\n (PortalTarget) | | | |\n +----------------------------------------------+ | |\n | +----------+ +----------+ | +----------+ | | |\n | | (Portal) | | (Portal) | | (Portal) | | | |\n | | | | | | | | | | |\n | | hidden | | hidden | | *active* | | | |\n | | panel | | panel | | | panel | | | |\n | | | | | | | | | |\n | | | | | | | | | | |\n | | | | | | | | | |\n | | | | | | | | | | |\n | | | | | | | | | |\n | | | | | | | | | | |\n | | | | | | | | | |\n | +----------+ +----------+ | +----------+ | | |\n +----------------------------------------------+ | |\n | | | |\n | +------------------+ |\n | |\n | +------------------+ |\n | | (\"footer\") | |\n | +------------------+ |\n +----------------------+\n\n *\n * every time `HcAppFrame::SideNav::Portal` renders, it contains a portaled \"panel\"\n * that is rendered into the `hds-app-side-nav__content-panels` (inside the PortalTarget).\n *\n * Rendering or unrendering other `HcAppFrame::SideNav::Portal`s triggers the number of\n * subnavs to change (via `numSubnavs`), so this function runs and slides\n * `hds-app-side-nav__content-panels` left or right using the `element.animate` api.\n *\n * */\n\n const activeIndex = count - 1;\n const targetElement = element;\n const { prefersReducedMotion } = this;\n\n const styles = getComputedStyle(targetElement);\n const columnWidth = styles.getPropertyValue(\n '--hds-app-sidenav-width-expanded'\n );\n const slideDuration = prefersReducedMotion ? 0 : 150;\n let fadeDuration = prefersReducedMotion ? 0 : 175;\n let fadeDelay = prefersReducedMotion ? 0 : 50;\n\n // slide entire parent panel\n const start = styles.transform;\n const end = `translateX(-${activeIndex * parseInt(columnWidth, 10)}px)`;\n const anim = targetElement.animate(\n [{ transform: start }, { transform: end }],\n {\n duration: slideDuration,\n easing: 'cubic-bezier(0.65, 0, 0.35, 1)',\n fill: 'forwards',\n }\n );\n\n anim.finished.then((): void => {\n // uncomment this if we need/want to scroll the element to the top\n // targetElement.scrollIntoView(true);\n if (activeIndex > 0) {\n const allPrev = Array.from(targetElement.children).slice(\n 0,\n activeIndex\n ) as HTMLElement[];\n for (const ele of allPrev) {\n ele.ariaHidden = 'true';\n ele.style.setProperty('visibility', 'hidden');\n ele.style.setProperty('opacity', '0');\n }\n }\n // Notice: we don't add the styles by default because it writes a `style` attribute to the element and it causes an additional re-render\n if (DEBUG) {\n // Check the visibility of the element before attempting to commitStyles.\n if (targetElement.offsetParent !== null) {\n anim.commitStyles();\n }\n }\n });\n\n // fade in next panel\n const nextPanelEl = targetElement.children[activeIndex] as HTMLElement;\n\n // get reference to last child panel\n const lastPanelEl = targetElement.children[\n targetElement.children.length - 1\n ] as HTMLElement;\n\n if (nextPanelEl) {\n nextPanelEl.ariaHidden = 'false';\n nextPanelEl.style.setProperty('visibility', 'visible');\n // this eliminates a flicker if there's only one subnav rendering or if we\n // already just rendered this panel.\n if (this._lastPanelEl) {\n if (activeIndex === 0 || nextPanelEl.isSameNode(this._lastPanelEl)) {\n fadeDelay = 0;\n fadeDuration = 0;\n }\n }\n\n // remember the last panel\n this._lastPanelEl = lastPanelEl;\n\n nextPanelEl.animate([{ opacity: '0' }, { opacity: '1' }], {\n delay: fadeDelay,\n duration: fadeDuration,\n fill: 'forwards',\n });\n }\n }\n}\n"],"names":["HdsAppSideNavPortalTarget","_class","Component","constructor","args","_initializerDefineProperty","_descriptor","_descriptor2","_descriptor3","_defineProperty","window","matchMedia","prefersReducedMotionOverride","macroCondition","isTesting","prefersReducedMotion","_prefersReducedMotionMQ","matches","panelsChanged","portalCount","_numSubnavs","didUpdateSubnav","element","count","animateSubnav","activeIndex","targetElement","styles","getComputedStyle","columnWidth","getPropertyValue","slideDuration","fadeDuration","fadeDelay","start","transform","end","parseInt","anim","animate","duration","easing","fill","finished","then","allPrev","Array","from","children","slice","ele","ariaHidden","style","setProperty","DEBUG","offsetParent","commitStyles","nextPanelEl","lastPanelEl","length","_lastPanelEl","isSameNode","opacity","delay","_applyDecoratedDescriptor","prototype","service","configurable","enumerable","writable","initializer","tracked","action","Object","getOwnPropertyDescriptor","setComponentTemplate","TEMPLATE"],"mappings":"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"}
1
+ {"version":3,"file":"target.js","sources":["../../../../../src/components/hds/app-side-nav/portal/target.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { inject as service } from '@ember/service';\nimport { tracked } from '@glimmer/tracking';\nimport { action } from '@ember/object';\nimport { macroCondition, isTesting } from '@embroider/macros';\n\nimport type { HdsAppSideNavPortalSignature } from './index';\n\n// import { PortalTargetSignature } from 'ember-stargate/components/portal-target';\ninterface PortalTargetSignature {\n Element: HTMLDivElement;\n Args: {\n name: string;\n multiple?: boolean;\n onChange?: (count: number) => void;\n };\n Blocks: {\n default: [number];\n };\n}\n\nimport type { Registry as Services } from '@ember/service';\n\ninterface HdsAppSideNavPortalTargetSignature {\n Args: PortalTargetSignature['Args'] & {\n targetName?: HdsAppSideNavPortalSignature['Args']['targetName'];\n };\n Element: HTMLDivElement;\n}\n\nexport default class HdsAppSideNavPortalTarget extends Component<HdsAppSideNavPortalTargetSignature> {\n @service router!: Services['router'];\n\n @tracked private _numSubnavs = 0;\n @tracked private _lastPanelEl: Element | undefined;\n\n static get prefersReducedMotionOverride(): boolean {\n return macroCondition(isTesting()) ? true : false;\n }\n\n private _prefersReducedMotionMQ = window.matchMedia(\n '(prefers-reduced-motion: reduce)'\n );\n\n get prefersReducedMotion(): boolean {\n return (\n HdsAppSideNavPortalTarget.prefersReducedMotionOverride ||\n (this._prefersReducedMotionMQ && this._prefersReducedMotionMQ.matches)\n );\n }\n\n @action\n panelsChanged(portalCount: number): void {\n this._numSubnavs = portalCount;\n }\n\n @action\n didUpdateSubnav(element: HTMLElement, [count]: [number]): void {\n this.animateSubnav(element, [count]);\n }\n\n @action\n animateSubnav(element: HTMLElement, [count]: [number]): void {\n /*\n * Here is ascii art of what the layout looks like for this setup\n *\n\n AppSideNav\n +----------------------+\n | +------------------+ |\n | | (\"header\") | |\n | +------------------+ |\n | |\n | +------------------+ |\n | | (\"body\") | |\n (PortalTarget) | | | |\n +----------------------------------------------+ | |\n | +----------+ +----------+ | +----------+ | | |\n | | (Portal) | | (Portal) | | (Portal) | | | |\n | | | | | | | | | | |\n | | hidden | | hidden | | *active* | | | |\n | | panel | | panel | | | panel | | | |\n | | | | | | | | | |\n | | | | | | | | | | |\n | | | | | | | | | |\n | | | | | | | | | | |\n | | | | | | | | | |\n | | | | | | | | | | |\n | | | | | | | | | |\n | +----------+ +----------+ | +----------+ | | |\n +----------------------------------------------+ | |\n | | | |\n | +------------------+ |\n | |\n | +------------------+ |\n | | (\"footer\") | |\n | +------------------+ |\n +----------------------+\n\n *\n * every time `HcAppFrame::SideNav::Portal` renders, it contains a portaled \"panel\"\n * that is rendered into the `hds-app-side-nav__content-panels` (inside the PortalTarget).\n *\n * Rendering or unrendering other `HcAppFrame::SideNav::Portal`s triggers the number of\n * subnavs to change (via `numSubnavs`), so this function runs and slides\n * `hds-app-side-nav__content-panels` left or right using the `element.animate` api.\n *\n * */\n\n const activeIndex = count - 1;\n const targetElement = element;\n const { prefersReducedMotion } = this;\n\n const styles = getComputedStyle(targetElement);\n const columnWidth = styles.getPropertyValue(\n '--hds-app-sidenav-width-expanded'\n );\n const slideDuration = prefersReducedMotion ? 0 : 150;\n let fadeDuration = prefersReducedMotion ? 0 : 175;\n let fadeDelay = prefersReducedMotion ? 0 : 50;\n\n // slide entire parent panel\n const start = styles.transform;\n const end = `translateX(-${activeIndex * parseInt(columnWidth, 10)}px)`;\n const anim = targetElement.animate(\n [{ transform: start }, { transform: end }],\n {\n duration: slideDuration,\n easing: 'cubic-bezier(0.65, 0, 0.35, 1)',\n fill: 'forwards',\n }\n );\n\n anim.finished.then((): void => {\n // uncomment this if we need/want to scroll the element to the top\n // targetElement.scrollIntoView(true);\n if (activeIndex > 0) {\n const allPrev = Array.from(targetElement.children).slice(\n 0,\n activeIndex\n ) as HTMLElement[];\n for (const ele of allPrev) {\n ele.ariaHidden = 'true';\n ele.style.setProperty('visibility', 'hidden');\n ele.style.setProperty('opacity', '0');\n }\n }\n // Notice: we don't add the styles by default because it writes a `style` attribute to the element and it causes an additional re-render\n if (macroCondition(isTesting())) {\n // Check the visibility of the element before attempting to commitStyles.\n if (targetElement.offsetParent !== null) {\n anim.commitStyles();\n }\n }\n });\n\n // fade in next panel\n const nextPanelEl = targetElement.children[activeIndex] as HTMLElement;\n\n // get reference to last child panel\n const lastPanelEl = targetElement.children[\n targetElement.children.length - 1\n ] as HTMLElement;\n\n if (nextPanelEl) {\n nextPanelEl.ariaHidden = 'false';\n nextPanelEl.style.setProperty('visibility', 'visible');\n // this eliminates a flicker if there's only one subnav rendering or if we\n // already just rendered this panel.\n if (this._lastPanelEl) {\n if (activeIndex === 0 || nextPanelEl.isSameNode(this._lastPanelEl)) {\n fadeDelay = 0;\n fadeDuration = 0;\n }\n }\n\n // remember the last panel\n this._lastPanelEl = lastPanelEl;\n\n nextPanelEl.animate([{ opacity: '0' }, { opacity: '1' }], {\n delay: fadeDelay,\n duration: fadeDuration,\n fill: 'forwards',\n });\n }\n }\n}\n"],"names":["HdsAppSideNavPortalTarget","Component","g","prototype","service","i","void 0","tracked","prefersReducedMotionOverride","macroCondition","isTesting","_prefersReducedMotionMQ","window","matchMedia","prefersReducedMotion","matches","panelsChanged","portalCount","_numSubnavs","n","action","didUpdateSubnav","element","count","animateSubnav","activeIndex","targetElement","styles","getComputedStyle","columnWidth","getPropertyValue","slideDuration","fadeDuration","fadeDelay","start","transform","end","parseInt","anim","animate","duration","easing","fill","finished","then","allPrev","Array","from","children","slice","ele","ariaHidden","style","setProperty","offsetParent","commitStyles","nextPanelEl","lastPanelEl","length","_lastPanelEl","isSameNode","opacity","delay","setComponentTemplate","TEMPLATE"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"toggle-button.js","sources":["../../../../src/components/hds/app-side-nav/toggle-button.hbs","../../../../src/components/hds/app-side-nav/toggle-button.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n<button class=\\\"hds-app-side-nav__toggle-button\\\" type=\\\"button\\\" ...attributes>\\n <Hds::Icon @name={{@icon}} />\\n</button>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport TemplateOnlyComponent from '@ember/component/template-only';\n\nimport type { HdsIconSignature } from '../icon';\n\ninterface HdsAppSideNavToggleButtonSignature {\n Args: {\n icon: HdsIconSignature['Args']['name'];\n };\n Element: HTMLButtonElement;\n}\n\nconst HdsAppSideNavToggleButton =\n TemplateOnlyComponent<HdsAppSideNavToggleButtonSignature>();\n\nexport default HdsAppSideNavToggleButton;\n"],"names":["HdsAppSideNavToggleButton","TemplateOnlyComponent","setComponentTemplate","TEMPLATE"],"mappings":";;;;AACA,eAAe,kBAAkB,CAAC,4MAA4M;;ACD9O;AACA;AACA;AACA;;AAaA,MAAMA,yBAAyB,GAC7BC,qBAAqB,EAAsC;AAE7D,mBAAAC,oBAAA,CAAAC,QAAA,EAAeH,yBAAyB,CAAA;;;;"}
1
+ {"version":3,"file":"toggle-button.js","sources":["../../../../src/components/hds/app-side-nav/toggle-button.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport TemplateOnlyComponent from '@ember/component/template-only';\n\nimport type { HdsIconSignature } from '../icon';\n\ninterface HdsAppSideNavToggleButtonSignature {\n Args: {\n icon: HdsIconSignature['Args']['name'];\n };\n Element: HTMLButtonElement;\n}\n\nconst HdsAppSideNavToggleButton =\n TemplateOnlyComponent<HdsAppSideNavToggleButtonSignature>();\n\nexport default HdsAppSideNavToggleButton;\n"],"names":["HdsAppSideNavToggleButton","TemplateOnlyComponent","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;;AAaA,MAAMA,yBAAyB,GAC7BC,qBAAqB,EAAsC;AAE7D,mBAAAC,oBAAA,CAAAC,QAAA,EAAeH,yBAAyB,CAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"body.js","sources":["../../../../src/components/hds/application-state/body.hbs","../../../../src/components/hds/application-state/body.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n<div class=\\\"hds-application-state__body\\\" ...attributes>\\n {{#if (has-block)}}\\n {{yield}}\\n {{else}}\\n <Hds::Text::Body class=\\\"hds-application-state__body-text\\\" @tag=\\\"p\\\" @size=\\\"300\\\">\\n {{@text}}\\n </Hds::Text::Body>\\n {{/if}}\\n</div>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport TemplateOnlyComponent from '@ember/component/template-only';\n\nexport interface HdsApplicationStateBodySignature {\n Args: {\n text?: string;\n };\n Blocks: {\n default?: [];\n };\n Element: HTMLDivElement;\n}\n\nconst HdsApplicationStateBody =\n TemplateOnlyComponent<HdsApplicationStateBodySignature>();\n\nexport default HdsApplicationStateBody;\n"],"names":["HdsApplicationStateBody","TemplateOnlyComponent","setComponentTemplate","TEMPLATE"],"mappings":";;;;AACA,eAAe,kBAAkB,CAAC,kVAAkV;;ACDpX;AACA;AACA;AACA;;AAcA,MAAMA,uBAAuB,GAC3BC,qBAAqB,EAAoC;AAE3D,WAAAC,oBAAA,CAAAC,QAAA,EAAeH,uBAAuB,CAAA;;;;"}
1
+ {"version":3,"file":"body.js","sources":["../../../../src/components/hds/application-state/body.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport TemplateOnlyComponent from '@ember/component/template-only';\n\nexport interface HdsApplicationStateBodySignature {\n Args: {\n text?: string;\n };\n Blocks: {\n default?: [];\n };\n Element: HTMLDivElement;\n}\n\nconst HdsApplicationStateBody =\n TemplateOnlyComponent<HdsApplicationStateBodySignature>();\n\nexport default HdsApplicationStateBody;\n"],"names":["HdsApplicationStateBody","TemplateOnlyComponent","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;;AAcA,MAAMA,uBAAuB,GAC3BC,qBAAqB,EAAoC;AAE3D,WAAAC,oBAAA,CAAAC,QAAA,EAAeH,uBAAuB,CAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"footer.js","sources":["../../../../src/components/hds/application-state/footer.hbs","../../../../src/components/hds/application-state/footer.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n\\n<div class=\\\"hds-application-state__footer\\\" ...attributes>\\n {{yield\\n (hash\\n Button=(component \\\"hds/button\\\")\\n Dropdown=(component \\\"hds/dropdown\\\")\\n LinkStandalone=(component \\\"hds/link/standalone\\\")\\n )\\n }}\\n</div>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport TemplateOnlyComponent from '@ember/component/template-only';\nimport type { ComponentLike } from '@glint/template';\nimport type { HdsLinkStandaloneSignature } from '../link/standalone';\nimport type { HdsButtonSignature } from '../button';\nimport type { HdsDropdownSignature } from '../dropdown';\n\nexport interface HdsApplicationStateFooterSignature {\n Args: {\n hasDivider?: boolean;\n };\n Blocks: {\n default?: [\n {\n Button?: ComponentLike<HdsButtonSignature>;\n Dropdown?: ComponentLike<HdsDropdownSignature>;\n LinkStandalone?: ComponentLike<HdsLinkStandaloneSignature>;\n },\n ];\n };\n Element: HTMLDivElement;\n}\n\nconst HdsApplicationStateFooter =\n TemplateOnlyComponent<HdsApplicationStateFooterSignature>();\n\nexport default HdsApplicationStateFooter;\n"],"names":["HdsApplicationStateFooter","TemplateOnlyComponent","setComponentTemplate","TEMPLATE"],"mappings":";;;;AACA,eAAe,kBAAkB,CAAC,wUAAwU;;ACD1W;AACA;AACA;AACA;;AAwBA,MAAMA,yBAAyB,GAC7BC,qBAAqB,EAAsC;AAE7D,aAAAC,oBAAA,CAAAC,QAAA,EAAeH,yBAAyB,CAAA;;;;"}
1
+ {"version":3,"file":"footer.js","sources":["../../../../src/components/hds/application-state/footer.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport TemplateOnlyComponent from '@ember/component/template-only';\nimport type { ComponentLike } from '@glint/template';\nimport type { HdsLinkStandaloneSignature } from '../link/standalone';\nimport type { HdsButtonSignature } from '../button';\nimport type { HdsDropdownSignature } from '../dropdown';\n\nexport interface HdsApplicationStateFooterSignature {\n Args: {\n hasDivider?: boolean;\n };\n Blocks: {\n default?: [\n {\n Button?: ComponentLike<HdsButtonSignature>;\n Dropdown?: ComponentLike<HdsDropdownSignature>;\n LinkStandalone?: ComponentLike<HdsLinkStandaloneSignature>;\n },\n ];\n };\n Element: HTMLDivElement;\n}\n\nconst HdsApplicationStateFooter =\n TemplateOnlyComponent<HdsApplicationStateFooterSignature>();\n\nexport default HdsApplicationStateFooter;\n"],"names":["HdsApplicationStateFooter","TemplateOnlyComponent","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;;AAwBA,MAAMA,yBAAyB,GAC7BC,qBAAqB,EAAsC;AAE7D,aAAAC,oBAAA,CAAAC,QAAA,EAAeH,yBAAyB,CAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"header.js","sources":["../../../../src/components/hds/application-state/header.hbs","../../../../src/components/hds/application-state/header.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n<div class=\\\"hds-application-state__header\\\" ...attributes>\\n {{#if @errorCode}}\\n <Hds::Text::Body class=\\\"hds-application-state__error-code\\\" @tag=\\\"div\\\" @size=\\\"100\\\" @weight=\\\"medium\\\" @color=\\\"faint\\\">\\n ERROR\\n {{@errorCode}}\\n </Hds::Text::Body>\\n {{/if}}\\n {{#if @icon}}\\n <div class=\\\"hds-application-state__icon\\\">\\n <Hds::Icon @color=\\\"var(--token-color-foreground-strong)\\\" @name={{@icon}} @size=\\\"24\\\" @isInline={{true}} />\\n </div>\\n {{/if}}\\n <Hds::Text::Display\\n class=\\\"hds-application-state__title\\\"\\n @tag={{this.titleTag}}\\n @size=\\\"300\\\"\\n @weight=\\\"semibold\\\"\\n @color=\\\"strong\\\"\\n >\\n {{@title}}\\n </Hds::Text::Display>\\n</div>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { HdsApplicationStateTitleTagValues } from './types.ts';\n\nimport type { HdsIconSignature } from '../icon';\nimport type { HdsApplicationStateTitleTags } from './types';\nexport interface HdsApplicationStateHeaderSignature {\n Args: {\n title?: string;\n titleTag?: HdsApplicationStateTitleTags;\n errorCode?: string;\n icon?: HdsIconSignature['Args']['name'];\n };\n Element: HTMLDivElement;\n}\n\nexport default class HdsApplicationStateHeader extends Component<HdsApplicationStateHeaderSignature> {\n get titleTag(): HdsApplicationStateTitleTags {\n return this.args.titleTag ?? HdsApplicationStateTitleTagValues.Div;\n }\n}\n"],"names":["HdsApplicationStateHeader","Component","titleTag","args","HdsApplicationStateTitleTagValues","Div","setComponentTemplate","TEMPLATE"],"mappings":";;;;;AACA,eAAe,kBAAkB,CAAC,gxBAAgxB;;ACDlzB;AACA;AACA;AACA;;AAiBe,MAAMA,yBAAyB,SAASC,SAAS,CAAqC;EACnG,IAAIC,QAAQA,GAAiC;IAC3C,OAAO,IAAI,CAACC,IAAI,CAACD,QAAQ,IAAIE,iCAAiC,CAACC,GAAG;AACpE;AACF;AAACC,oBAAA,CAAAC,QAAA,EAJoBP,yBAAyB,CAAA;;;;"}
1
+ {"version":3,"file":"header.js","sources":["../../../../src/components/hds/application-state/header.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { HdsApplicationStateTitleTagValues } from './types.ts';\n\nimport type { HdsIconSignature } from '../icon';\nimport type { HdsApplicationStateTitleTags } from './types';\nexport interface HdsApplicationStateHeaderSignature {\n Args: {\n title?: string;\n titleTag?: HdsApplicationStateTitleTags;\n errorCode?: string;\n icon?: HdsIconSignature['Args']['name'];\n };\n Element: HTMLDivElement;\n}\n\nexport default class HdsApplicationStateHeader extends Component<HdsApplicationStateHeaderSignature> {\n get titleTag(): HdsApplicationStateTitleTags {\n return this.args.titleTag ?? HdsApplicationStateTitleTagValues.Div;\n }\n}\n"],"names":["HdsApplicationStateHeader","Component","titleTag","args","HdsApplicationStateTitleTagValues","Div","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;;AAAA;AACA;AACA;AACA;;AAiBe,MAAMA,yBAAyB,SAASC,SAAS,CAAqC;EACnG,IAAIC,QAAQA,GAAiC;IAC3C,OAAO,IAAI,CAACC,IAAI,CAACD,QAAQ,IAAIE,iCAAiC,CAACC,GAAG;AACpE;AACF;AAACC,oBAAA,CAAAC,QAAA,EAJoBP,yBAAyB,CAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/components/hds/application-state/index.hbs","../../../../src/components/hds/application-state/index.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n<div class={{this.classNames}} ...attributes>\\n {{yield\\n (hash\\n Media=(component \\\"hds/application-state/media\\\")\\n Header=(component \\\"hds/application-state/header\\\")\\n Body=(component \\\"hds/application-state/body\\\")\\n Footer=(component \\\"hds/application-state/footer\\\")\\n )\\n }}\\n</div>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { assert } from '@ember/debug';\nimport { HdsApplicationStateAlignValues } from './types.ts';\n\nimport type { ComponentLike } from '@glint/template';\nimport type { HdsApplicationStateAligns } from './types';\nimport type { HdsApplicationStateMediaSignature } from './media';\nimport type { HdsApplicationStateHeaderSignature } from './header';\nimport type { HdsApplicationStateBodySignature } from './body';\nimport type { HdsApplicationStateFooterSignature } from './footer';\n\nexport const ALIGNS: string[] = Object.values(HdsApplicationStateAlignValues);\nexport interface HdsApplicationStateSignature {\n Args: {\n align?: HdsApplicationStateAligns;\n };\n Blocks: {\n default: [\n {\n Media?: ComponentLike<HdsApplicationStateMediaSignature>;\n Header?: ComponentLike<HdsApplicationStateHeaderSignature>;\n Body?: ComponentLike<HdsApplicationStateBodySignature>;\n Footer?: ComponentLike<HdsApplicationStateFooterSignature>;\n },\n ];\n };\n Element: HTMLDivElement;\n}\n\nexport default class HdsApplicationState extends Component<HdsApplicationStateSignature> {\n get align(): HdsApplicationStateAligns {\n const validAlignValues: HdsApplicationStateAligns[] = Object.values(\n HdsApplicationStateAlignValues\n );\n\n assert(\n `@align for \"Hds::ApplicationState\" must be one of the following: ${validAlignValues.join(\n ', '\n )}; received: ${this.args.align}`,\n this.args.align == null || validAlignValues.includes(this.args.align)\n );\n\n return this.args.align ?? HdsApplicationStateAlignValues.Left;\n }\n\n get classNames(): string {\n const classes = ['hds-application-state'];\n\n // add a class based on the @align argument\n classes.push(`hds-application-state--align-${this.align}`);\n\n return classes.join(' ');\n }\n}\n"],"names":["ALIGNS","Object","values","HdsApplicationStateAlignValues","HdsApplicationState","Component","align","validAlignValues","assert","join","args","includes","Left","classNames","classes","push","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;AACA,eAAe,kBAAkB,CAAC,8YAA8Y;;ACDhb;AACA;AACA;AACA;;AAaO,MAAMA,MAAgB,GAAGC,MAAM,CAACC,MAAM,CAACC,8BAA8B;AAkB7D,MAAMC,mBAAmB,SAASC,SAAS,CAA+B;EACvF,IAAIC,KAAKA,GAA8B;AACrC,IAAA,MAAMC,gBAA6C,GAAGN,MAAM,CAACC,MAAM,CACjEC,8BACF,CAAC;AAEDK,IAAAA,MAAM,CACJ,CAAA,iEAAA,EAAoED,gBAAgB,CAACE,IAAI,CACvF,IACF,CAAC,CAAA,YAAA,EAAe,IAAI,CAACC,IAAI,CAACJ,KAAK,EAAE,EACjC,IAAI,CAACI,IAAI,CAACJ,KAAK,IAAI,IAAI,IAAIC,gBAAgB,CAACI,QAAQ,CAAC,IAAI,CAACD,IAAI,CAACJ,KAAK,CACtE,CAAC;IAED,OAAO,IAAI,CAACI,IAAI,CAACJ,KAAK,IAAIH,8BAA8B,CAACS,IAAI;AAC/D;EAEA,IAAIC,UAAUA,GAAW;AACvB,IAAA,MAAMC,OAAO,GAAG,CAAC,uBAAuB,CAAC;;AAEzC;IACAA,OAAO,CAACC,IAAI,CAAC,CAAA,6BAAA,EAAgC,IAAI,CAACT,KAAK,EAAE,CAAC;AAE1D,IAAA,OAAOQ,OAAO,CAACL,IAAI,CAAC,GAAG,CAAC;AAC1B;AACF;AAACO,oBAAA,CAAAC,QAAA,EAxBoBb,mBAAmB,CAAA;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/hds/application-state/index.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { assert } from '@ember/debug';\nimport { HdsApplicationStateAlignValues } from './types.ts';\n\nimport type { ComponentLike } from '@glint/template';\nimport type { HdsApplicationStateAligns } from './types';\nimport type { HdsApplicationStateMediaSignature } from './media';\nimport type { HdsApplicationStateHeaderSignature } from './header';\nimport type { HdsApplicationStateBodySignature } from './body';\nimport type { HdsApplicationStateFooterSignature } from './footer';\n\nexport const ALIGNS: string[] = Object.values(HdsApplicationStateAlignValues);\nexport interface HdsApplicationStateSignature {\n Args: {\n align?: HdsApplicationStateAligns;\n };\n Blocks: {\n default: [\n {\n Media?: ComponentLike<HdsApplicationStateMediaSignature>;\n Header?: ComponentLike<HdsApplicationStateHeaderSignature>;\n Body?: ComponentLike<HdsApplicationStateBodySignature>;\n Footer?: ComponentLike<HdsApplicationStateFooterSignature>;\n },\n ];\n };\n Element: HTMLDivElement;\n}\n\nexport default class HdsApplicationState extends Component<HdsApplicationStateSignature> {\n get align(): HdsApplicationStateAligns {\n const validAlignValues: HdsApplicationStateAligns[] = Object.values(\n HdsApplicationStateAlignValues\n );\n\n assert(\n `@align for \"Hds::ApplicationState\" must be one of the following: ${validAlignValues.join(\n ', '\n )}; received: ${this.args.align}`,\n this.args.align == null || validAlignValues.includes(this.args.align)\n );\n\n return this.args.align ?? HdsApplicationStateAlignValues.Left;\n }\n\n get classNames(): string {\n const classes = ['hds-application-state'];\n\n // add a class based on the @align argument\n classes.push(`hds-application-state--align-${this.align}`);\n\n return classes.join(' ');\n }\n}\n"],"names":["ALIGNS","Object","values","HdsApplicationStateAlignValues","HdsApplicationState","Component","align","validAlignValues","assert","join","args","includes","Left","classNames","classes","push","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;;;AAAA;AACA;AACA;AACA;;AAaO,MAAMA,MAAgB,GAAGC,MAAM,CAACC,MAAM,CAACC,8BAA8B;AAkB7D,MAAMC,mBAAmB,SAASC,SAAS,CAA+B;EACvF,IAAIC,KAAKA,GAA8B;AACrC,IAAA,MAAMC,gBAA6C,GAAGN,MAAM,CAACC,MAAM,CACjEC,8BACF,CAAC;AAEDK,IAAAA,MAAM,CACJ,CAAA,iEAAA,EAAoED,gBAAgB,CAACE,IAAI,CACvF,IACF,CAAC,CAAA,YAAA,EAAe,IAAI,CAACC,IAAI,CAACJ,KAAK,EAAE,EACjC,IAAI,CAACI,IAAI,CAACJ,KAAK,IAAI,IAAI,IAAIC,gBAAgB,CAACI,QAAQ,CAAC,IAAI,CAACD,IAAI,CAACJ,KAAK,CACtE,CAAC;IAED,OAAO,IAAI,CAACI,IAAI,CAACJ,KAAK,IAAIH,8BAA8B,CAACS,IAAI;AAC/D;EAEA,IAAIC,UAAUA,GAAW;AACvB,IAAA,MAAMC,OAAO,GAAG,CAAC,uBAAuB,CAAC;;AAEzC;IACAA,OAAO,CAACC,IAAI,CAAC,CAAA,6BAAA,EAAgC,IAAI,CAACT,KAAK,EAAE,CAAC;AAE1D,IAAA,OAAOQ,OAAO,CAACL,IAAI,CAAC,GAAG,CAAC;AAC1B;AACF;AAACO,oBAAA,CAAAC,QAAA,EAxBoBb,mBAAmB,CAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"media.js","sources":["../../../../src/components/hds/application-state/media.hbs","../../../../src/components/hds/application-state/media.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n\\n<div class=\\\"hds-application-state__media\\\" ...attributes>\\n {{yield}}\\n</div>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport TemplateOnlyComponent from '@ember/component/template-only';\n\nexport interface HdsApplicationStateMediaSignature {\n Blocks: {\n default: [];\n };\n Element: HTMLDivElement;\n}\n\nconst HdsApplicationStateMedia =\n TemplateOnlyComponent<HdsApplicationStateMediaSignature>();\n\nexport default HdsApplicationStateMedia;\n"],"names":["HdsApplicationStateMedia","TemplateOnlyComponent","setComponentTemplate","TEMPLATE"],"mappings":";;;;AACA,eAAe,kBAAkB,CAAC,iKAAiK;;ACDnM;AACA;AACA;AACA;;AAWA,MAAMA,wBAAwB,GAC5BC,qBAAqB,EAAqC;AAE5D,YAAAC,oBAAA,CAAAC,QAAA,EAAeH,wBAAwB,CAAA;;;;"}
1
+ {"version":3,"file":"media.js","sources":["../../../../src/components/hds/application-state/media.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport TemplateOnlyComponent from '@ember/component/template-only';\n\nexport interface HdsApplicationStateMediaSignature {\n Blocks: {\n default: [];\n };\n Element: HTMLDivElement;\n}\n\nconst HdsApplicationStateMedia =\n TemplateOnlyComponent<HdsApplicationStateMediaSignature>();\n\nexport default HdsApplicationStateMedia;\n"],"names":["HdsApplicationStateMedia","TemplateOnlyComponent","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;;AAWA,MAAMA,wBAAwB,GAC5BC,qBAAqB,EAAqC;AAE5D,YAAAC,oBAAA,CAAAC,QAAA,EAAeH,wBAAwB,CAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/components/hds/badge/index.hbs","../../../../src/components/hds/badge/index.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n<div class={{this.classNames}} ...attributes>\\n {{#if @icon}}\\n <div class=\\\"hds-badge__icon\\\">\\n <Hds::Icon @name={{@icon}} @size=\\\"16\\\" @stretched={{true}} />\\n </div>\\n {{/if}}\\n {{#if this.isIconOnly}}\\n <span class=\\\"sr-only\\\">{{this.text}}</span>\\n {{else}}\\n <div class=\\\"hds-badge__text\\\">\\n {{this.text}}\\n </div>\\n {{/if}}\\n</div>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { assert } from '@ember/debug';\n\nimport {\n HdsBadgeColorValues,\n HdsBadgeSizeValues,\n HdsBadgeTypeValues,\n} from './types.ts';\n\nimport type { HdsBadgeColors, HdsBadgeSizes, HdsBadgeTypes } from './types.ts';\nimport type { HdsIconSignature } from '../icon';\n\nexport const SIZES: string[] = Object.values(HdsBadgeSizeValues);\nexport const TYPES: string[] = Object.values(HdsBadgeTypeValues);\nexport const COLORS: string[] = Object.values(HdsBadgeColorValues);\nexport const DEFAULT_SIZE = HdsBadgeSizeValues.Medium;\nexport const DEFAULT_TYPE = HdsBadgeTypeValues.Filled;\nexport const DEFAULT_COLOR = HdsBadgeColorValues.Neutral;\n\nexport interface HdsBadgeSignature {\n Args: {\n size?: HdsBadgeSizes;\n type?: HdsBadgeTypes;\n color?: HdsBadgeColors;\n text: string | number;\n icon?: HdsIconSignature['Args']['name'];\n isIconOnly?: boolean;\n };\n Element: HTMLDivElement;\n}\n\nexport default class HdsBadge extends Component<HdsBadgeSignature> {\n /**\n * Sets the size for the component\n * Accepted values: small, medium, large\n *\n * @param size\n * @type {HdsBadgeSizes}\n * @default 'medium'\n */\n get size(): HdsBadgeSizes {\n const { size = DEFAULT_SIZE } = this.args;\n\n assert(\n `@size for \"Hds::Badge\" must be one of the following: ${SIZES.join(\n ', '\n )}; received: ${size}`,\n SIZES.includes(size)\n );\n\n return size;\n }\n\n /**\n * Sets the type of the component\n * Accepted values: filled, inverted, outlined\n *\n * @param type\n * @type {HdsBadgeTypes}\n * @default 'filled'\n */\n get type(): HdsBadgeTypes {\n const { type = DEFAULT_TYPE } = this.args;\n\n assert(\n `@type for \"Hds::Badge\" must be one of the following: ${TYPES.join(\n ', '\n )}; received: ${type}`,\n TYPES.includes(type)\n );\n\n return type;\n }\n\n /**\n * Sets the color scheme for the component\n * Accepted values: neutral, neutral-dark-mode, highlight, success, warning, critical\n *\n * @param color\n * @type {HdsBadgeColors}\n * @default 'neutral'\n */\n get color(): HdsBadgeColors {\n const { color = DEFAULT_COLOR } = this.args;\n\n assert(\n `@color for \"Hds::Badge\" must be one of the following: ${COLORS.join(\n ', '\n )}; received: ${color}`,\n COLORS.includes(color)\n );\n\n return color;\n }\n\n /**\n * @param text\n * @type {string}\n * @description The text of the badge. If `isIconOnly` is set to `true`, the text will be visually hidden but still available to assistive technology. If no text value is defined, an error will be thrown.\n */\n get text(): string | number {\n const { text } = this.args;\n\n assert(\n '@text for \"Hds::Badge\" must have a valid value',\n text !== undefined\n );\n\n return text;\n }\n\n /**\n * @param isIconOnly\n * @type {boolean}\n * @default false\n * @description Indicates if the badge will only contain an icon; component will also ensure that accessible text is still applied to the component.\n */\n get isIconOnly(): boolean {\n if (this.args.icon) {\n return this.args.isIconOnly ?? false;\n }\n\n return false;\n }\n\n /**\n * Get the class names to apply to the component.\n * @method Badge#classNames\n * @return {string} The \"class\" attribute to apply to the component.\n */\n get classNames(): string {\n const classes = ['hds-badge'];\n\n // add a class based on the @size argument\n classes.push(`hds-badge--size-${this.size}`);\n\n // add a class based on the @type argument\n classes.push(`hds-badge--type-${this.type}`);\n\n // add a class based on the @color argument\n classes.push(`hds-badge--color-${this.color}`);\n\n return classes.join(' ');\n }\n}\n"],"names":["SIZES","Object","values","HdsBadgeSizeValues","TYPES","HdsBadgeTypeValues","COLORS","HdsBadgeColorValues","DEFAULT_SIZE","Medium","DEFAULT_TYPE","Filled","DEFAULT_COLOR","Neutral","HdsBadge","Component","size","args","assert","join","includes","type","color","text","undefined","isIconOnly","icon","classNames","classes","push","setComponentTemplate","TEMPLATE"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/hds/badge/index.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { assert } from '@ember/debug';\n\nimport {\n HdsBadgeColorValues,\n HdsBadgeSizeValues,\n HdsBadgeTypeValues,\n} from './types.ts';\n\nimport type { HdsBadgeColors, HdsBadgeSizes, HdsBadgeTypes } from './types.ts';\nimport type { HdsIconSignature } from '../icon';\n\nexport const SIZES: string[] = Object.values(HdsBadgeSizeValues);\nexport const TYPES: string[] = Object.values(HdsBadgeTypeValues);\nexport const COLORS: string[] = Object.values(HdsBadgeColorValues);\nexport const DEFAULT_SIZE = HdsBadgeSizeValues.Medium;\nexport const DEFAULT_TYPE = HdsBadgeTypeValues.Filled;\nexport const DEFAULT_COLOR = HdsBadgeColorValues.Neutral;\n\nexport interface HdsBadgeSignature {\n Args: {\n size?: HdsBadgeSizes;\n type?: HdsBadgeTypes;\n color?: HdsBadgeColors;\n text: string | number;\n icon?: HdsIconSignature['Args']['name'];\n isIconOnly?: boolean;\n };\n Element: HTMLDivElement;\n}\n\nexport default class HdsBadge extends Component<HdsBadgeSignature> {\n /**\n * Sets the size for the component\n * Accepted values: small, medium, large\n *\n * @param size\n * @type {HdsBadgeSizes}\n * @default 'medium'\n */\n get size(): HdsBadgeSizes {\n const { size = DEFAULT_SIZE } = this.args;\n\n assert(\n `@size for \"Hds::Badge\" must be one of the following: ${SIZES.join(\n ', '\n )}; received: ${size}`,\n SIZES.includes(size)\n );\n\n return size;\n }\n\n /**\n * Sets the type of the component\n * Accepted values: filled, inverted, outlined\n *\n * @param type\n * @type {HdsBadgeTypes}\n * @default 'filled'\n */\n get type(): HdsBadgeTypes {\n const { type = DEFAULT_TYPE } = this.args;\n\n assert(\n `@type for \"Hds::Badge\" must be one of the following: ${TYPES.join(\n ', '\n )}; received: ${type}`,\n TYPES.includes(type)\n );\n\n return type;\n }\n\n /**\n * Sets the color scheme for the component\n * Accepted values: neutral, neutral-dark-mode, highlight, success, warning, critical\n *\n * @param color\n * @type {HdsBadgeColors}\n * @default 'neutral'\n */\n get color(): HdsBadgeColors {\n const { color = DEFAULT_COLOR } = this.args;\n\n assert(\n `@color for \"Hds::Badge\" must be one of the following: ${COLORS.join(\n ', '\n )}; received: ${color}`,\n COLORS.includes(color)\n );\n\n return color;\n }\n\n /**\n * @param text\n * @type {string}\n * @description The text of the badge. If `isIconOnly` is set to `true`, the text will be visually hidden but still available to assistive technology. If no text value is defined, an error will be thrown.\n */\n get text(): string | number {\n const { text } = this.args;\n\n assert(\n '@text for \"Hds::Badge\" must have a valid value',\n text !== undefined\n );\n\n return text;\n }\n\n /**\n * @param isIconOnly\n * @type {boolean}\n * @default false\n * @description Indicates if the badge will only contain an icon; component will also ensure that accessible text is still applied to the component.\n */\n get isIconOnly(): boolean {\n if (this.args.icon) {\n return this.args.isIconOnly ?? false;\n }\n\n return false;\n }\n\n /**\n * Get the class names to apply to the component.\n * @method Badge#classNames\n * @return {string} The \"class\" attribute to apply to the component.\n */\n get classNames(): string {\n const classes = ['hds-badge'];\n\n // add a class based on the @size argument\n classes.push(`hds-badge--size-${this.size}`);\n\n // add a class based on the @type argument\n classes.push(`hds-badge--type-${this.type}`);\n\n // add a class based on the @color argument\n classes.push(`hds-badge--color-${this.color}`);\n\n return classes.join(' ');\n }\n}\n"],"names":["SIZES","Object","values","HdsBadgeSizeValues","TYPES","HdsBadgeTypeValues","COLORS","HdsBadgeColorValues","DEFAULT_SIZE","Medium","DEFAULT_TYPE","Filled","DEFAULT_COLOR","Neutral","HdsBadge","Component","size","args","assert","join","includes","type","color","text","undefined","isIconOnly","icon","classNames","classes","push","setComponentTemplate","TEMPLATE"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/components/hds/badge-count/index.hbs","../../../../src/components/hds/badge-count/index.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n<div class={{this.classNames}} ...attributes>\\n {{@text}}\\n</div>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { assert } from '@ember/debug';\n\nimport {\n HdsBadgeCountColorValues,\n HdsBadgeCountSizeValues,\n HdsBadgeCountTypeValues,\n} from './types.ts';\nimport type {\n HdsBadgeCountColors,\n HdsBadgeCountSizes,\n HdsBadgeCountTypes,\n} from './types.ts';\n\nexport const SIZES: string[] = Object.values(HdsBadgeCountSizeValues);\nexport const TYPES: string[] = Object.values(HdsBadgeCountTypeValues);\nexport const COLORS: string[] = Object.values(HdsBadgeCountColorValues);\nexport const DEFAULT_SIZE = HdsBadgeCountSizeValues.Medium;\nexport const DEFAULT_TYPE = HdsBadgeCountTypeValues.Filled;\nexport const DEFAULT_COLOR = HdsBadgeCountColorValues.Neutral;\n\nexport interface HdsBadgeCountSignature {\n Args: {\n size?: HdsBadgeCountSizes;\n type?: HdsBadgeCountTypes;\n color?: HdsBadgeCountColors;\n text: string | number;\n };\n Element: HTMLDivElement;\n}\n\nexport default class HdsBadgeCount extends Component<HdsBadgeCountSignature> {\n /**\n * Sets the size for the component\n * Accepted sizes: small, medium, large\n *\n * @param size\n * @type {string}\n * @default 'medium'\n */\n get size(): HdsBadgeCountSizes {\n const { size = DEFAULT_SIZE } = this.args;\n\n assert(\n `@size for \"Hds::BadgeCount\" must be one of the following: ${SIZES.join(\n ', '\n )}; received: ${size}`,\n SIZES.includes(size)\n );\n\n return size;\n }\n\n /**\n * Sets the type of the component\n * Accepted values: filled, inverted, outlined\n *\n * @param type\n * @type {string}\n * @default 'filled'\n */\n get type(): HdsBadgeCountTypes {\n const { type = DEFAULT_TYPE } = this.args;\n\n assert(\n `@type for \"Hds::BadgeCount\" must be one of the following: ${TYPES.join(\n ', '\n )}; received: ${type}`,\n TYPES.includes(type)\n );\n\n return type;\n }\n\n /**\n * Sets the color scheme for the component\n * Accepted colors: neutral, neutral-dark-mode\n *\n * @param color\n * @type {string}\n * @default 'neutral'\n */\n get color(): HdsBadgeCountColors {\n const { color = DEFAULT_COLOR } = this.args;\n\n assert(\n `@color for \"Hds::BadgeCount\" must be one of the following: ${COLORS.join(\n ', '\n )}; received: ${color}`,\n COLORS.includes(color)\n );\n\n return color;\n }\n\n /**\n * Get the class names to apply to the component.\n * @method BadgeCount#classNames\n * @return {string} The \"class\" attribute to apply to the component.\n */\n get classNames(): string {\n const classes = ['hds-badge-count'];\n\n // add a class based on the @size argument\n classes.push(`hds-badge-count--size-${this.size}`);\n\n // add a class based on the @type argument\n classes.push(`hds-badge-count--type-${this.type}`);\n\n // add a class based on the @color argument\n classes.push(`hds-badge-count--color-${this.color}`);\n\n return classes.join(' ');\n }\n}\n"],"names":["SIZES","Object","values","HdsBadgeCountSizeValues","TYPES","HdsBadgeCountTypeValues","COLORS","HdsBadgeCountColorValues","DEFAULT_SIZE","Medium","DEFAULT_TYPE","Filled","DEFAULT_COLOR","Neutral","HdsBadgeCount","Component","size","args","assert","join","includes","type","color","classNames","classes","push","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;AACA,eAAe,kBAAkB,CAAC,kJAAkJ;;ACDpL;AACA;AACA;AACA;;AAgBO,MAAMA,KAAe,GAAGC,MAAM,CAACC,MAAM,CAACC,uBAAuB;AAC7D,MAAMC,KAAe,GAAGH,MAAM,CAACC,MAAM,CAACG,uBAAuB;AAC7D,MAAMC,MAAgB,GAAGL,MAAM,CAACC,MAAM,CAACK,wBAAwB;AACzDC,MAAAA,YAAY,GAAGL,uBAAuB,CAACM;AACvCC,MAAAA,YAAY,GAAGL,uBAAuB,CAACM;AACvCC,MAAAA,aAAa,GAAGL,wBAAwB,CAACM;AAYvC,MAAMC,aAAa,SAASC,SAAS,CAAyB;AAC3E;AACF;AACA;AACA;AACA;AACA;AACA;AACA;EACE,IAAIC,IAAIA,GAAuB;IAC7B,MAAM;AAAEA,MAAAA,IAAI,GAAGR;KAAc,GAAG,IAAI,CAACS,IAAI;AAEzCC,IAAAA,MAAM,CACJ,CAA6DlB,0DAAAA,EAAAA,KAAK,CAACmB,IAAI,CACrE,IACF,CAAC,CAAA,YAAA,EAAeH,IAAI,CAAA,CAAE,EACtBhB,KAAK,CAACoB,QAAQ,CAACJ,IAAI,CACrB,CAAC;AAED,IAAA,OAAOA,IAAI;AACb;;AAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;EACE,IAAIK,IAAIA,GAAuB;IAC7B,MAAM;AAAEA,MAAAA,IAAI,GAAGX;KAAc,GAAG,IAAI,CAACO,IAAI;AAEzCC,IAAAA,MAAM,CACJ,CAA6Dd,0DAAAA,EAAAA,KAAK,CAACe,IAAI,CACrE,IACF,CAAC,CAAA,YAAA,EAAeE,IAAI,CAAA,CAAE,EACtBjB,KAAK,CAACgB,QAAQ,CAACC,IAAI,CACrB,CAAC;AAED,IAAA,OAAOA,IAAI;AACb;;AAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;EACE,IAAIC,KAAKA,GAAwB;IAC/B,MAAM;AAAEA,MAAAA,KAAK,GAAGV;KAAe,GAAG,IAAI,CAACK,IAAI;AAE3CC,IAAAA,MAAM,CACJ,CAA8DZ,2DAAAA,EAAAA,MAAM,CAACa,IAAI,CACvE,IACF,CAAC,CAAA,YAAA,EAAeG,KAAK,CAAA,CAAE,EACvBhB,MAAM,CAACc,QAAQ,CAACE,KAAK,CACvB,CAAC;AAED,IAAA,OAAOA,KAAK;AACd;;AAEA;AACF;AACA;AACA;AACA;EACE,IAAIC,UAAUA,GAAW;AACvB,IAAA,MAAMC,OAAO,GAAG,CAAC,iBAAiB,CAAC;;AAEnC;IACAA,OAAO,CAACC,IAAI,CAAC,CAAA,sBAAA,EAAyB,IAAI,CAACT,IAAI,EAAE,CAAC;;AAElD;IACAQ,OAAO,CAACC,IAAI,CAAC,CAAA,sBAAA,EAAyB,IAAI,CAACJ,IAAI,EAAE,CAAC;;AAElD;IACAG,OAAO,CAACC,IAAI,CAAC,CAAA,uBAAA,EAA0B,IAAI,CAACH,KAAK,EAAE,CAAC;AAEpD,IAAA,OAAOE,OAAO,CAACL,IAAI,CAAC,GAAG,CAAC;AAC1B;AACF;AAACO,oBAAA,CAAAC,QAAA,EAnFoBb,aAAa,CAAA;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/hds/badge-count/index.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { assert } from '@ember/debug';\n\nimport {\n HdsBadgeCountColorValues,\n HdsBadgeCountSizeValues,\n HdsBadgeCountTypeValues,\n} from './types.ts';\nimport type {\n HdsBadgeCountColors,\n HdsBadgeCountSizes,\n HdsBadgeCountTypes,\n} from './types.ts';\n\nexport const SIZES: string[] = Object.values(HdsBadgeCountSizeValues);\nexport const TYPES: string[] = Object.values(HdsBadgeCountTypeValues);\nexport const COLORS: string[] = Object.values(HdsBadgeCountColorValues);\nexport const DEFAULT_SIZE = HdsBadgeCountSizeValues.Medium;\nexport const DEFAULT_TYPE = HdsBadgeCountTypeValues.Filled;\nexport const DEFAULT_COLOR = HdsBadgeCountColorValues.Neutral;\n\nexport interface HdsBadgeCountSignature {\n Args: {\n size?: HdsBadgeCountSizes;\n type?: HdsBadgeCountTypes;\n color?: HdsBadgeCountColors;\n text: string | number;\n };\n Element: HTMLDivElement;\n}\n\nexport default class HdsBadgeCount extends Component<HdsBadgeCountSignature> {\n /**\n * Sets the size for the component\n * Accepted sizes: small, medium, large\n *\n * @param size\n * @type {string}\n * @default 'medium'\n */\n get size(): HdsBadgeCountSizes {\n const { size = DEFAULT_SIZE } = this.args;\n\n assert(\n `@size for \"Hds::BadgeCount\" must be one of the following: ${SIZES.join(\n ', '\n )}; received: ${size}`,\n SIZES.includes(size)\n );\n\n return size;\n }\n\n /**\n * Sets the type of the component\n * Accepted values: filled, inverted, outlined\n *\n * @param type\n * @type {string}\n * @default 'filled'\n */\n get type(): HdsBadgeCountTypes {\n const { type = DEFAULT_TYPE } = this.args;\n\n assert(\n `@type for \"Hds::BadgeCount\" must be one of the following: ${TYPES.join(\n ', '\n )}; received: ${type}`,\n TYPES.includes(type)\n );\n\n return type;\n }\n\n /**\n * Sets the color scheme for the component\n * Accepted colors: neutral, neutral-dark-mode\n *\n * @param color\n * @type {string}\n * @default 'neutral'\n */\n get color(): HdsBadgeCountColors {\n const { color = DEFAULT_COLOR } = this.args;\n\n assert(\n `@color for \"Hds::BadgeCount\" must be one of the following: ${COLORS.join(\n ', '\n )}; received: ${color}`,\n COLORS.includes(color)\n );\n\n return color;\n }\n\n /**\n * Get the class names to apply to the component.\n * @method BadgeCount#classNames\n * @return {string} The \"class\" attribute to apply to the component.\n */\n get classNames(): string {\n const classes = ['hds-badge-count'];\n\n // add a class based on the @size argument\n classes.push(`hds-badge-count--size-${this.size}`);\n\n // add a class based on the @type argument\n classes.push(`hds-badge-count--type-${this.type}`);\n\n // add a class based on the @color argument\n classes.push(`hds-badge-count--color-${this.color}`);\n\n return classes.join(' ');\n }\n}\n"],"names":["SIZES","Object","values","HdsBadgeCountSizeValues","TYPES","HdsBadgeCountTypeValues","COLORS","HdsBadgeCountColorValues","DEFAULT_SIZE","Medium","DEFAULT_TYPE","Filled","DEFAULT_COLOR","Neutral","HdsBadgeCount","Component","size","args","assert","join","includes","type","color","classNames","classes","push","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;;;AAAA;AACA;AACA;AACA;;AAgBO,MAAMA,KAAe,GAAGC,MAAM,CAACC,MAAM,CAACC,uBAAuB;AAC7D,MAAMC,KAAe,GAAGH,MAAM,CAACC,MAAM,CAACG,uBAAuB;AAC7D,MAAMC,MAAgB,GAAGL,MAAM,CAACC,MAAM,CAACK,wBAAwB;AACzDC,MAAAA,YAAY,GAAGL,uBAAuB,CAACM;AACvCC,MAAAA,YAAY,GAAGL,uBAAuB,CAACM;AACvCC,MAAAA,aAAa,GAAGL,wBAAwB,CAACM;AAYvC,MAAMC,aAAa,SAASC,SAAS,CAAyB;AAC3E;AACF;AACA;AACA;AACA;AACA;AACA;AACA;EACE,IAAIC,IAAIA,GAAuB;IAC7B,MAAM;AAAEA,MAAAA,IAAI,GAAGR;KAAc,GAAG,IAAI,CAACS,IAAI;AAEzCC,IAAAA,MAAM,CACJ,CAA6DlB,0DAAAA,EAAAA,KAAK,CAACmB,IAAI,CACrE,IACF,CAAC,CAAA,YAAA,EAAeH,IAAI,CAAA,CAAE,EACtBhB,KAAK,CAACoB,QAAQ,CAACJ,IAAI,CACrB,CAAC;AAED,IAAA,OAAOA,IAAI;AACb;;AAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;EACE,IAAIK,IAAIA,GAAuB;IAC7B,MAAM;AAAEA,MAAAA,IAAI,GAAGX;KAAc,GAAG,IAAI,CAACO,IAAI;AAEzCC,IAAAA,MAAM,CACJ,CAA6Dd,0DAAAA,EAAAA,KAAK,CAACe,IAAI,CACrE,IACF,CAAC,CAAA,YAAA,EAAeE,IAAI,CAAA,CAAE,EACtBjB,KAAK,CAACgB,QAAQ,CAACC,IAAI,CACrB,CAAC;AAED,IAAA,OAAOA,IAAI;AACb;;AAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;EACE,IAAIC,KAAKA,GAAwB;IAC/B,MAAM;AAAEA,MAAAA,KAAK,GAAGV;KAAe,GAAG,IAAI,CAACK,IAAI;AAE3CC,IAAAA,MAAM,CACJ,CAA8DZ,2DAAAA,EAAAA,MAAM,CAACa,IAAI,CACvE,IACF,CAAC,CAAA,YAAA,EAAeG,KAAK,CAAA,CAAE,EACvBhB,MAAM,CAACc,QAAQ,CAACE,KAAK,CACvB,CAAC;AAED,IAAA,OAAOA,KAAK;AACd;;AAEA;AACF;AACA;AACA;AACA;EACE,IAAIC,UAAUA,GAAW;AACvB,IAAA,MAAMC,OAAO,GAAG,CAAC,iBAAiB,CAAC;;AAEnC;IACAA,OAAO,CAACC,IAAI,CAAC,CAAA,sBAAA,EAAyB,IAAI,CAACT,IAAI,EAAE,CAAC;;AAElD;IACAQ,OAAO,CAACC,IAAI,CAAC,CAAA,sBAAA,EAAyB,IAAI,CAACJ,IAAI,EAAE,CAAC;;AAElD;IACAG,OAAO,CAACC,IAAI,CAAC,CAAA,uBAAA,EAA0B,IAAI,CAACH,KAAK,EAAE,CAAC;AAEpD,IAAA,OAAOE,OAAO,CAACL,IAAI,CAAC,GAAG,CAAC;AAC1B;AACF;AAACO,oBAAA,CAAAC,QAAA,EAnFoBb,aAAa,CAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/components/hds/breadcrumb/index.hbs","../../../../src/components/hds/breadcrumb/index.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n<nav class={{this.classNames}} aria-label={{this.ariaLabel}} ...attributes>\\n <ol class=\\\"hds-breadcrumb__list\\\" {{did-insert this.didInsert}}>\\n {{yield}}\\n </ol>\\n</nav>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\n\nexport interface HdsBreadcrumbSignature {\n Args: {\n ariaLabel?: string;\n itemsCanWrap?: boolean;\n didInsert?: () => void;\n };\n Blocks: {\n default: [];\n };\n Element: HTMLElement;\n}\n\nconst NOOP = () => {};\n\nexport default class HdsBreadcrumb extends Component<HdsBreadcrumbSignature> {\n /**\n * @param onDidInsert\n * @type {function}\n * @default () => {}\n */\n get didInsert(): () => void {\n const { didInsert } = this.args;\n\n if (typeof didInsert === 'function') {\n return didInsert;\n } else {\n return NOOP;\n }\n }\n\n /**\n * @param itemsCanWrap\n * @type {boolean}\n * @default true\n */\n get itemsCanWrap(): boolean {\n return this.args.itemsCanWrap ?? true;\n }\n\n /**\n * @param ariaLabel\n * @type {string}\n * @default 'breadcrumbs'\n */\n get ariaLabel(): string {\n return this.args.ariaLabel ?? 'breadcrumbs';\n }\n\n /**\n * Get the class names to apply to the component.\n * @method Breadcrumb#classNames\n * @return {string} The \"class\" attribute to apply to the component.\n */\n get classNames(): string {\n const classes = ['hds-breadcrumb'];\n\n // add a class based on the @itemsCanWrap argument\n if (this.itemsCanWrap) {\n classes.push('hds-breadcrumb--items-can-wrap');\n }\n\n return classes.join(' ');\n }\n}\n"],"names":["NOOP","HdsBreadcrumb","Component","didInsert","args","itemsCanWrap","ariaLabel","classNames","classes","push","join","setComponentTemplate","TEMPLATE"],"mappings":";;;;AACA,eAAe,kBAAkB,CAAC,gQAAgQ;;ACDlS;AACA;AACA;AACA;;AAgBA,MAAMA,IAAI,GAAGA,MAAM,EAAE;AAEN,MAAMC,aAAa,SAASC,SAAS,CAAyB;AAC3E;AACF;AACA;AACA;AACA;EACE,IAAIC,SAASA,GAAe;IAC1B,MAAM;AAAEA,MAAAA;KAAW,GAAG,IAAI,CAACC,IAAI;AAE/B,IAAA,IAAI,OAAOD,SAAS,KAAK,UAAU,EAAE;AACnC,MAAA,OAAOA,SAAS;AAClB,KAAC,MAAM;AACL,MAAA,OAAOH,IAAI;AACb;AACF;;AAEA;AACF;AACA;AACA;AACA;EACE,IAAIK,YAAYA,GAAY;AAC1B,IAAA,OAAO,IAAI,CAACD,IAAI,CAACC,YAAY,IAAI,IAAI;AACvC;;AAEA;AACF;AACA;AACA;AACA;EACE,IAAIC,SAASA,GAAW;AACtB,IAAA,OAAO,IAAI,CAACF,IAAI,CAACE,SAAS,IAAI,aAAa;AAC7C;;AAEA;AACF;AACA;AACA;AACA;EACE,IAAIC,UAAUA,GAAW;AACvB,IAAA,MAAMC,OAAO,GAAG,CAAC,gBAAgB,CAAC;;AAElC;IACA,IAAI,IAAI,CAACH,YAAY,EAAE;AACrBG,MAAAA,OAAO,CAACC,IAAI,CAAC,gCAAgC,CAAC;AAChD;AAEA,IAAA,OAAOD,OAAO,CAACE,IAAI,CAAC,GAAG,CAAC;AAC1B;AACF;AAACC,oBAAA,CAAAC,QAAA,EAjDoBX,aAAa,CAAA;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/hds/breadcrumb/index.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\n\nexport interface HdsBreadcrumbSignature {\n Args: {\n ariaLabel?: string;\n itemsCanWrap?: boolean;\n didInsert?: () => void;\n };\n Blocks: {\n default: [];\n };\n Element: HTMLElement;\n}\n\nconst NOOP = () => {};\n\nexport default class HdsBreadcrumb extends Component<HdsBreadcrumbSignature> {\n /**\n * @param onDidInsert\n * @type {function}\n * @default () => {}\n */\n get didInsert(): () => void {\n const { didInsert } = this.args;\n\n if (typeof didInsert === 'function') {\n return didInsert;\n } else {\n return NOOP;\n }\n }\n\n /**\n * @param itemsCanWrap\n * @type {boolean}\n * @default true\n */\n get itemsCanWrap(): boolean {\n return this.args.itemsCanWrap ?? true;\n }\n\n /**\n * @param ariaLabel\n * @type {string}\n * @default 'breadcrumbs'\n */\n get ariaLabel(): string {\n return this.args.ariaLabel ?? 'breadcrumbs';\n }\n\n /**\n * Get the class names to apply to the component.\n * @method Breadcrumb#classNames\n * @return {string} The \"class\" attribute to apply to the component.\n */\n get classNames(): string {\n const classes = ['hds-breadcrumb'];\n\n // add a class based on the @itemsCanWrap argument\n if (this.itemsCanWrap) {\n classes.push('hds-breadcrumb--items-can-wrap');\n }\n\n return classes.join(' ');\n }\n}\n"],"names":["NOOP","HdsBreadcrumb","Component","didInsert","args","itemsCanWrap","ariaLabel","classNames","classes","push","join","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;;AAgBA,MAAMA,IAAI,GAAGA,MAAM,EAAE;AAEN,MAAMC,aAAa,SAASC,SAAS,CAAyB;AAC3E;AACF;AACA;AACA;AACA;EACE,IAAIC,SAASA,GAAe;IAC1B,MAAM;AAAEA,MAAAA;KAAW,GAAG,IAAI,CAACC,IAAI;AAE/B,IAAA,IAAI,OAAOD,SAAS,KAAK,UAAU,EAAE;AACnC,MAAA,OAAOA,SAAS;AAClB,KAAC,MAAM;AACL,MAAA,OAAOH,IAAI;AACb;AACF;;AAEA;AACF;AACA;AACA;AACA;EACE,IAAIK,YAAYA,GAAY;AAC1B,IAAA,OAAO,IAAI,CAACD,IAAI,CAACC,YAAY,IAAI,IAAI;AACvC;;AAEA;AACF;AACA;AACA;AACA;EACE,IAAIC,SAASA,GAAW;AACtB,IAAA,OAAO,IAAI,CAACF,IAAI,CAACE,SAAS,IAAI,aAAa;AAC7C;;AAEA;AACF;AACA;AACA;AACA;EACE,IAAIC,UAAUA,GAAW;AACvB,IAAA,MAAMC,OAAO,GAAG,CAAC,gBAAgB,CAAC;;AAElC;IACA,IAAI,IAAI,CAACH,YAAY,EAAE;AACrBG,MAAAA,OAAO,CAACC,IAAI,CAAC,gCAAgC,CAAC;AAChD;AAEA,IAAA,OAAOD,OAAO,CAACE,IAAI,CAAC,GAAG,CAAC;AAC1B;AACF;AAACC,oBAAA,CAAAC,QAAA,EAjDoBX,aAAa,CAAA;;;;"}