@hashicorp/design-system-components 3.6.0 → 4.1.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 (971) hide show
  1. package/README.md +2 -0
  2. package/addon-main.js +7 -0
  3. package/dist/LICENSE.md +375 -0
  4. package/dist/README.md +69 -0
  5. package/dist/_app_/components/hds/accordion/index.js +1 -0
  6. package/dist/_app_/components/hds/accordion/item/button.js +1 -0
  7. package/dist/_app_/components/hds/accordion/item/index.js +1 -0
  8. package/dist/_app_/components/hds/alert/description.js +1 -0
  9. package/dist/_app_/components/hds/alert/index.js +1 -0
  10. package/dist/_app_/components/hds/alert/title.js +1 -0
  11. package/dist/_app_/components/hds/app-footer/copyright.js +1 -0
  12. package/dist/_app_/components/hds/app-footer/index.js +1 -0
  13. package/dist/_app_/components/hds/app-footer/item.js +1 -0
  14. package/dist/_app_/components/hds/app-footer/legal-links.js +1 -0
  15. package/dist/_app_/components/hds/app-footer/link.js +1 -0
  16. package/dist/_app_/components/hds/app-footer/status-link.js +1 -0
  17. package/dist/_app_/components/hds/app-frame/index.js +1 -0
  18. package/dist/_app_/components/hds/app-frame/parts/footer.js +1 -0
  19. package/dist/_app_/components/hds/app-frame/parts/header.js +1 -0
  20. package/dist/_app_/components/hds/app-frame/parts/main.js +1 -0
  21. package/dist/_app_/components/hds/app-frame/parts/modals.js +1 -0
  22. package/dist/_app_/components/hds/app-frame/parts/sidebar.js +1 -0
  23. package/dist/_app_/components/hds/application-state/body.js +1 -0
  24. package/dist/_app_/components/hds/application-state/footer.js +1 -0
  25. package/dist/_app_/components/hds/application-state/header.js +1 -0
  26. package/dist/_app_/components/hds/application-state/index.js +1 -0
  27. package/dist/_app_/components/hds/badge/index.js +1 -0
  28. package/dist/_app_/components/hds/badge-count/index.js +1 -0
  29. package/dist/_app_/components/hds/breadcrumb/index.js +1 -0
  30. package/dist/_app_/components/hds/breadcrumb/item.js +1 -0
  31. package/dist/_app_/components/hds/breadcrumb/truncation.js +1 -0
  32. package/dist/_app_/components/hds/button/index.js +1 -0
  33. package/dist/_app_/components/hds/button-set/index.js +1 -0
  34. package/dist/_app_/components/hds/card/container.js +1 -0
  35. package/dist/_app_/components/hds/code-block/copy-button.js +1 -0
  36. package/dist/_app_/components/hds/code-block/description.js +1 -0
  37. package/dist/_app_/components/hds/code-block/index.js +1 -0
  38. package/dist/_app_/components/hds/code-block/title.js +1 -0
  39. package/dist/_app_/components/hds/copy/button/index.js +1 -0
  40. package/dist/_app_/components/hds/copy/snippet/index.js +1 -0
  41. package/dist/_app_/components/hds/disclosure-primitive/index.js +1 -0
  42. package/dist/_app_/components/hds/dismiss-button/index.js +1 -0
  43. package/dist/_app_/components/hds/dropdown/footer.js +1 -0
  44. package/dist/_app_/components/hds/dropdown/header.js +1 -0
  45. package/dist/_app_/components/hds/dropdown/index.js +1 -0
  46. package/dist/_app_/components/hds/dropdown/list-item/checkbox.js +1 -0
  47. package/dist/_app_/components/hds/dropdown/list-item/checkmark.js +1 -0
  48. package/dist/_app_/components/hds/dropdown/list-item/copy-item.js +1 -0
  49. package/dist/_app_/components/hds/dropdown/list-item/description.js +1 -0
  50. package/dist/_app_/components/hds/dropdown/list-item/generic.js +1 -0
  51. package/dist/_app_/components/hds/dropdown/list-item/interactive.js +1 -0
  52. package/dist/_app_/components/hds/dropdown/list-item/radio.js +1 -0
  53. package/dist/_app_/components/hds/dropdown/list-item/separator.js +1 -0
  54. package/dist/_app_/components/hds/dropdown/list-item/title.js +1 -0
  55. package/dist/_app_/components/hds/dropdown/toggle/button.js +1 -0
  56. package/dist/_app_/components/hds/dropdown/toggle/chevron.js +1 -0
  57. package/dist/_app_/components/hds/dropdown/toggle/icon.js +1 -0
  58. package/dist/_app_/components/hds/flyout/body.js +1 -0
  59. package/dist/_app_/components/hds/flyout/description.js +1 -0
  60. package/dist/_app_/components/hds/flyout/footer.js +1 -0
  61. package/dist/_app_/components/hds/flyout/header.js +1 -0
  62. package/dist/_app_/components/hds/flyout/index.js +1 -0
  63. package/dist/_app_/components/hds/form/character-count/index.js +1 -0
  64. package/dist/_app_/components/hds/form/checkbox/base.js +1 -0
  65. package/dist/_app_/components/hds/form/checkbox/field.js +1 -0
  66. package/dist/_app_/components/hds/form/checkbox/group.js +1 -0
  67. package/dist/_app_/components/hds/form/error/index.js +1 -0
  68. package/dist/_app_/components/hds/form/error/message.js +1 -0
  69. package/dist/_app_/components/hds/form/field/index.js +1 -0
  70. package/dist/_app_/components/hds/form/fieldset/index.js +1 -0
  71. package/dist/_app_/components/hds/form/file-input/base.js +1 -0
  72. package/dist/_app_/components/hds/form/file-input/field.js +1 -0
  73. package/dist/_app_/components/hds/form/helper-text/index.js +1 -0
  74. package/dist/_app_/components/hds/form/indicator/index.js +1 -0
  75. package/dist/_app_/components/hds/form/label/index.js +1 -0
  76. package/dist/_app_/components/hds/form/legend/index.js +1 -0
  77. package/dist/_app_/components/hds/form/masked-input/base.js +1 -0
  78. package/dist/_app_/components/hds/form/masked-input/field.js +1 -0
  79. package/dist/_app_/components/hds/form/radio/base.js +1 -0
  80. package/dist/_app_/components/hds/form/radio/field.js +1 -0
  81. package/dist/_app_/components/hds/form/radio/group.js +1 -0
  82. package/dist/_app_/components/hds/form/radio-card/description.js +1 -0
  83. package/dist/_app_/components/hds/form/radio-card/group.js +1 -0
  84. package/dist/_app_/components/hds/form/radio-card/index.js +1 -0
  85. package/dist/_app_/components/hds/form/radio-card/label.js +1 -0
  86. package/dist/_app_/components/hds/form/select/base.js +1 -0
  87. package/dist/_app_/components/hds/form/select/field.js +1 -0
  88. package/dist/_app_/components/hds/form/text-input/base.js +1 -0
  89. package/dist/_app_/components/hds/form/text-input/field.js +1 -0
  90. package/dist/_app_/components/hds/form/textarea/base.js +1 -0
  91. package/dist/_app_/components/hds/form/textarea/field.js +1 -0
  92. package/dist/_app_/components/hds/form/toggle/base.js +1 -0
  93. package/dist/_app_/components/hds/form/toggle/field.js +1 -0
  94. package/dist/_app_/components/hds/form/toggle/group.js +1 -0
  95. package/dist/_app_/components/hds/form/visibility-toggle/index.js +1 -0
  96. package/dist/_app_/components/hds/icon-tile/index.js +1 -0
  97. package/dist/_app_/components/hds/interactive/index.js +1 -0
  98. package/dist/_app_/components/hds/link/inline.js +1 -0
  99. package/dist/_app_/components/hds/link/standalone.js +1 -0
  100. package/dist/_app_/components/hds/menu-primitive/index.js +1 -0
  101. package/dist/_app_/components/hds/modal/body.js +1 -0
  102. package/dist/_app_/components/hds/modal/footer.js +1 -0
  103. package/dist/_app_/components/hds/modal/header.js +1 -0
  104. package/dist/_app_/components/hds/modal/index.js +1 -0
  105. package/dist/_app_/components/hds/page-header/actions.js +1 -0
  106. package/dist/_app_/components/hds/page-header/badges.js +1 -0
  107. package/dist/_app_/components/hds/page-header/description.js +1 -0
  108. package/dist/_app_/components/hds/page-header/index.js +1 -0
  109. package/dist/_app_/components/hds/page-header/subtitle.js +1 -0
  110. package/dist/_app_/components/hds/page-header/title.js +1 -0
  111. package/dist/_app_/components/hds/pagination/compact/index.js +1 -0
  112. package/dist/_app_/components/hds/pagination/info/index.js +1 -0
  113. package/dist/_app_/components/hds/pagination/nav/arrow.js +1 -0
  114. package/dist/_app_/components/hds/pagination/nav/ellipsis.js +1 -0
  115. package/dist/_app_/components/hds/pagination/nav/number.js +1 -0
  116. package/dist/_app_/components/hds/pagination/numbered/index.js +1 -0
  117. package/dist/_app_/components/hds/pagination/size-selector/index.js +1 -0
  118. package/dist/_app_/components/hds/reveal/index.js +1 -0
  119. package/dist/_app_/components/hds/reveal/toggle/button.js +1 -0
  120. package/dist/_app_/components/hds/segmented-group/index.js +1 -0
  121. package/dist/_app_/components/hds/separator/index.js +1 -0
  122. package/dist/_app_/components/hds/side-nav/base.js +1 -0
  123. package/dist/_app_/components/hds/side-nav/header/home-link.js +1 -0
  124. package/dist/_app_/components/hds/side-nav/header/icon-button.js +1 -0
  125. package/dist/_app_/components/hds/side-nav/header/index.js +1 -0
  126. package/dist/_app_/components/hds/side-nav/index.js +1 -0
  127. package/dist/_app_/components/hds/side-nav/list/back-link.js +1 -0
  128. package/dist/_app_/components/hds/side-nav/list/index.js +1 -0
  129. package/dist/_app_/components/hds/side-nav/list/item.js +1 -0
  130. package/dist/_app_/components/hds/side-nav/list/link.js +1 -0
  131. package/dist/_app_/components/hds/side-nav/list/title.js +1 -0
  132. package/dist/_app_/components/hds/side-nav/portal/index.js +1 -0
  133. package/dist/_app_/components/hds/side-nav/portal/target.js +1 -0
  134. package/dist/_app_/components/hds/side-nav/toggle-button.js +1 -0
  135. package/dist/_app_/components/hds/stepper/step/indicator.js +1 -0
  136. package/dist/_app_/components/hds/stepper/task/indicator.js +1 -0
  137. package/dist/_app_/components/hds/table/index.js +1 -0
  138. package/dist/_app_/components/hds/table/td.js +1 -0
  139. package/dist/_app_/components/hds/table/th-button-sort.js +1 -0
  140. package/dist/_app_/components/hds/table/th-button-tooltip.js +1 -0
  141. package/dist/_app_/components/hds/table/th-selectable.js +1 -0
  142. package/dist/_app_/components/hds/table/th-sort.js +1 -0
  143. package/dist/_app_/components/hds/table/th.js +1 -0
  144. package/dist/_app_/components/hds/table/tr.js +1 -0
  145. package/dist/_app_/components/hds/tabs/index.js +1 -0
  146. package/dist/_app_/components/hds/tabs/panel.js +1 -0
  147. package/dist/_app_/components/hds/tabs/tab.js +1 -0
  148. package/dist/_app_/components/hds/tag/index.js +1 -0
  149. package/dist/_app_/components/hds/text/body.js +1 -0
  150. package/dist/_app_/components/hds/text/code.js +1 -0
  151. package/dist/_app_/components/hds/text/display.js +1 -0
  152. package/dist/_app_/components/hds/text/index.js +1 -0
  153. package/dist/_app_/components/hds/toast/index.js +1 -0
  154. package/dist/_app_/components/hds/tooltip-button/index.js +1 -0
  155. package/dist/_app_/components/hds/yield/index.js +1 -0
  156. package/dist/_app_/helpers/hds-link-to-models.js +1 -0
  157. package/dist/_app_/helpers/hds-link-to-query.js +1 -0
  158. package/dist/_app_/modifiers/hds-clipboard.js +1 -0
  159. package/dist/_app_/modifiers/hds-tooltip.js +1 -0
  160. package/dist/_rollupPluginBabelHelpers-lqPQKyNs.js +78 -0
  161. package/dist/_rollupPluginBabelHelpers-lqPQKyNs.js.map +1 -0
  162. package/dist/components/hds/accordion/index.js +10 -0
  163. package/dist/components/hds/accordion/index.js.map +1 -0
  164. package/dist/components/hds/accordion/item/button.js +36 -0
  165. package/dist/components/hds/accordion/item/button.js.map +1 -0
  166. package/dist/components/hds/accordion/item/index.js +62 -0
  167. package/dist/components/hds/accordion/item/index.js.map +1 -0
  168. package/dist/components/hds/alert/description.js +10 -0
  169. package/dist/components/hds/alert/description.js.map +1 -0
  170. package/dist/components/hds/alert/index.js +153 -0
  171. package/dist/components/hds/alert/index.js.map +1 -0
  172. package/dist/components/hds/alert/title.js +10 -0
  173. package/dist/components/hds/alert/title.js.map +1 -0
  174. package/dist/components/hds/app-footer/copyright.js +26 -0
  175. package/dist/components/hds/app-footer/copyright.js.map +1 -0
  176. package/dist/components/hds/app-footer/index.js +48 -0
  177. package/dist/components/hds/app-footer/index.js.map +1 -0
  178. package/dist/components/hds/app-footer/item.js +10 -0
  179. package/dist/components/hds/app-footer/item.js.map +1 -0
  180. package/dist/components/hds/app-footer/legal-links.js +70 -0
  181. package/dist/components/hds/app-footer/legal-links.js.map +1 -0
  182. package/dist/components/hds/app-footer/link.js +10 -0
  183. package/dist/components/hds/app-footer/link.js.map +1 -0
  184. package/dist/components/hds/app-footer/status-link.js +116 -0
  185. package/dist/components/hds/app-footer/status-link.js.map +1 -0
  186. package/dist/components/hds/app-frame/index.js +60 -0
  187. package/dist/components/hds/app-frame/index.js.map +1 -0
  188. package/dist/components/hds/app-frame/parts/footer.js +10 -0
  189. package/dist/components/hds/app-frame/parts/footer.js.map +1 -0
  190. package/dist/components/hds/app-frame/parts/header.js +10 -0
  191. package/dist/components/hds/app-frame/parts/header.js.map +1 -0
  192. package/dist/components/hds/app-frame/parts/main.js +10 -0
  193. package/dist/components/hds/app-frame/parts/main.js.map +1 -0
  194. package/dist/components/hds/app-frame/parts/modals.js +10 -0
  195. package/dist/components/hds/app-frame/parts/modals.js.map +1 -0
  196. package/dist/components/hds/app-frame/parts/sidebar.js +10 -0
  197. package/dist/components/hds/app-frame/parts/sidebar.js.map +1 -0
  198. package/dist/components/hds/application-state/body.js +10 -0
  199. package/dist/components/hds/application-state/body.js.map +1 -0
  200. package/dist/components/hds/application-state/footer.js +42 -0
  201. package/dist/components/hds/application-state/footer.js.map +1 -0
  202. package/dist/components/hds/application-state/header.js +10 -0
  203. package/dist/components/hds/application-state/header.js.map +1 -0
  204. package/dist/components/hds/application-state/index.js +10 -0
  205. package/dist/components/hds/application-state/index.js.map +1 -0
  206. package/dist/components/hds/badge/index.js +127 -0
  207. package/dist/components/hds/badge/index.js.map +1 -0
  208. package/dist/components/hds/badge-count/index.js +90 -0
  209. package/dist/components/hds/badge-count/index.js.map +1 -0
  210. package/dist/components/hds/breadcrumb/index.js +66 -0
  211. package/dist/components/hds/breadcrumb/index.js.map +1 -0
  212. package/dist/components/hds/breadcrumb/item.js +59 -0
  213. package/dist/components/hds/breadcrumb/item.js.map +1 -0
  214. package/dist/components/hds/breadcrumb/truncation.js +25 -0
  215. package/dist/components/hds/breadcrumb/truncation.js.map +1 -0
  216. package/dist/components/hds/button/index.js +157 -0
  217. package/dist/components/hds/button/index.js.map +1 -0
  218. package/dist/components/hds/button-set/index.js +10 -0
  219. package/dist/components/hds/button-set/index.js.map +1 -0
  220. package/dist/components/hds/card/container.js +130 -0
  221. package/dist/components/hds/card/container.js.map +1 -0
  222. package/dist/components/hds/code-block/copy-button.js +10 -0
  223. package/dist/components/hds/code-block/copy-button.js.map +1 -0
  224. package/dist/components/hds/code-block/description.js +10 -0
  225. package/dist/components/hds/code-block/description.js.map +1 -0
  226. package/dist/components/hds/code-block/index.js +160 -0
  227. package/dist/components/hds/code-block/index.js.map +1 -0
  228. package/dist/components/hds/code-block/title.js +10 -0
  229. package/dist/components/hds/code-block/title.js.map +1 -0
  230. package/dist/components/hds/copy/button/index.js +109 -0
  231. package/dist/components/hds/copy/button/index.js.map +1 -0
  232. package/dist/components/hds/copy/snippet/index.js +142 -0
  233. package/dist/components/hds/copy/snippet/index.js.map +1 -0
  234. package/dist/components/hds/disclosure-primitive/index.js +41 -0
  235. package/dist/components/hds/disclosure-primitive/index.js.map +1 -0
  236. package/dist/components/hds/dismiss-button/index.js +25 -0
  237. package/dist/components/hds/dismiss-button/index.js.map +1 -0
  238. package/dist/components/hds/dropdown/footer.js +10 -0
  239. package/dist/components/hds/dropdown/footer.js.map +1 -0
  240. package/dist/components/hds/dropdown/header.js +10 -0
  241. package/dist/components/hds/dropdown/header.js.map +1 -0
  242. package/dist/components/hds/dropdown/index.js +72 -0
  243. package/dist/components/hds/dropdown/index.js.map +1 -0
  244. package/dist/components/hds/dropdown/list-item/checkbox.js +24 -0
  245. package/dist/components/hds/dropdown/list-item/checkbox.js.map +1 -0
  246. package/dist/components/hds/dropdown/list-item/checkmark.js +31 -0
  247. package/dist/components/hds/dropdown/list-item/checkmark.js.map +1 -0
  248. package/dist/components/hds/dropdown/list-item/copy-item.js +53 -0
  249. package/dist/components/hds/dropdown/list-item/copy-item.js.map +1 -0
  250. package/dist/components/hds/dropdown/list-item/description.js +30 -0
  251. package/dist/components/hds/dropdown/list-item/description.js.map +1 -0
  252. package/dist/components/hds/dropdown/list-item/generic.js +10 -0
  253. package/dist/components/hds/dropdown/list-item/generic.js.map +1 -0
  254. package/dist/components/hds/dropdown/list-item/interactive.js +59 -0
  255. package/dist/components/hds/dropdown/list-item/interactive.js.map +1 -0
  256. package/dist/components/hds/dropdown/list-item/radio.js +24 -0
  257. package/dist/components/hds/dropdown/list-item/radio.js.map +1 -0
  258. package/dist/components/hds/dropdown/list-item/separator.js +10 -0
  259. package/dist/components/hds/dropdown/list-item/separator.js.map +1 -0
  260. package/dist/components/hds/dropdown/list-item/title.js +30 -0
  261. package/dist/components/hds/dropdown/list-item/title.js.map +1 -0
  262. package/dist/components/hds/dropdown/toggle/button.js +134 -0
  263. package/dist/components/hds/dropdown/toggle/button.js.map +1 -0
  264. package/dist/components/hds/dropdown/toggle/chevron.js +10 -0
  265. package/dist/components/hds/dropdown/toggle/chevron.js.map +1 -0
  266. package/dist/components/hds/dropdown/toggle/icon.js +129 -0
  267. package/dist/components/hds/dropdown/toggle/icon.js.map +1 -0
  268. package/dist/components/hds/flyout/body.js +10 -0
  269. package/dist/components/hds/flyout/body.js.map +1 -0
  270. package/dist/components/hds/flyout/description.js +10 -0
  271. package/dist/components/hds/flyout/description.js.map +1 -0
  272. package/dist/components/hds/flyout/footer.js +10 -0
  273. package/dist/components/hds/flyout/footer.js.map +1 -0
  274. package/dist/components/hds/flyout/header.js +10 -0
  275. package/dist/components/hds/flyout/header.js.map +1 -0
  276. package/dist/components/hds/flyout/index.js +144 -0
  277. package/dist/components/hds/flyout/index.js.map +1 -0
  278. package/dist/components/hds/form/character-count/index.js +149 -0
  279. package/dist/components/hds/form/character-count/index.js.map +1 -0
  280. package/dist/components/hds/form/checkbox/base.js +10 -0
  281. package/dist/components/hds/form/checkbox/base.js.map +1 -0
  282. package/dist/components/hds/form/checkbox/field.js +10 -0
  283. package/dist/components/hds/form/checkbox/field.js.map +1 -0
  284. package/dist/components/hds/form/checkbox/group.js +10 -0
  285. package/dist/components/hds/form/checkbox/group.js.map +1 -0
  286. package/dist/components/hds/form/error/index.js +68 -0
  287. package/dist/components/hds/form/error/index.js.map +1 -0
  288. package/dist/components/hds/form/error/message.js +10 -0
  289. package/dist/components/hds/form/error/message.js.map +1 -0
  290. package/dist/components/hds/form/field/index.js +107 -0
  291. package/dist/components/hds/form/field/index.js.map +1 -0
  292. package/dist/components/hds/form/fieldset/index.js +93 -0
  293. package/dist/components/hds/form/fieldset/index.js.map +1 -0
  294. package/dist/components/hds/form/file-input/base.js +10 -0
  295. package/dist/components/hds/form/file-input/base.js.map +1 -0
  296. package/dist/components/hds/form/file-input/field.js +10 -0
  297. package/dist/components/hds/form/file-input/field.js.map +1 -0
  298. package/dist/components/hds/form/helper-text/index.js +68 -0
  299. package/dist/components/hds/form/helper-text/index.js.map +1 -0
  300. package/dist/components/hds/form/indicator/index.js +30 -0
  301. package/dist/components/hds/form/indicator/index.js.map +1 -0
  302. package/dist/components/hds/form/label/index.js +36 -0
  303. package/dist/components/hds/form/label/index.js.map +1 -0
  304. package/dist/components/hds/form/legend/index.js +36 -0
  305. package/dist/components/hds/form/legend/index.js.map +1 -0
  306. package/dist/components/hds/form/masked-input/base.js +96 -0
  307. package/dist/components/hds/form/masked-input/base.js.map +1 -0
  308. package/dist/components/hds/form/masked-input/field.js +10 -0
  309. package/dist/components/hds/form/masked-input/field.js.map +1 -0
  310. package/dist/components/hds/form/radio/base.js +10 -0
  311. package/dist/components/hds/form/radio/base.js.map +1 -0
  312. package/dist/components/hds/form/radio/field.js +10 -0
  313. package/dist/components/hds/form/radio/field.js.map +1 -0
  314. package/dist/components/hds/form/radio/group.js +10 -0
  315. package/dist/components/hds/form/radio/group.js.map +1 -0
  316. package/dist/components/hds/form/radio-card/description.js +10 -0
  317. package/dist/components/hds/form/radio-card/description.js.map +1 -0
  318. package/dist/components/hds/form/radio-card/group.js +10 -0
  319. package/dist/components/hds/form/radio-card/group.js.map +1 -0
  320. package/dist/components/hds/form/radio-card/index.js +107 -0
  321. package/dist/components/hds/form/radio-card/index.js.map +1 -0
  322. package/dist/components/hds/form/radio-card/label.js +10 -0
  323. package/dist/components/hds/form/radio-card/label.js.map +1 -0
  324. package/dist/components/hds/form/select/base.js +34 -0
  325. package/dist/components/hds/form/select/base.js.map +1 -0
  326. package/dist/components/hds/form/select/field.js +10 -0
  327. package/dist/components/hds/form/select/field.js.map +1 -0
  328. package/dist/components/hds/form/text-input/base.js +62 -0
  329. package/dist/components/hds/form/text-input/base.js.map +1 -0
  330. package/dist/components/hds/form/text-input/field.js +85 -0
  331. package/dist/components/hds/form/text-input/field.js.map +1 -0
  332. package/dist/components/hds/form/textarea/base.js +34 -0
  333. package/dist/components/hds/form/textarea/base.js.map +1 -0
  334. package/dist/components/hds/form/textarea/field.js +10 -0
  335. package/dist/components/hds/form/textarea/field.js.map +1 -0
  336. package/dist/components/hds/form/toggle/base.js +10 -0
  337. package/dist/components/hds/form/toggle/base.js.map +1 -0
  338. package/dist/components/hds/form/toggle/field.js +10 -0
  339. package/dist/components/hds/form/toggle/field.js.map +1 -0
  340. package/dist/components/hds/form/toggle/group.js +10 -0
  341. package/dist/components/hds/form/toggle/group.js.map +1 -0
  342. package/dist/components/hds/form/visibility-toggle/index.js +10 -0
  343. package/dist/components/hds/form/visibility-toggle/index.js.map +1 -0
  344. package/dist/components/hds/icon-tile/index.js +158 -0
  345. package/dist/components/hds/icon-tile/index.js.map +1 -0
  346. package/dist/components/hds/interactive/index.js +41 -0
  347. package/dist/components/hds/interactive/index.js.map +1 -0
  348. package/dist/components/hds/link/inline.js +72 -0
  349. package/dist/components/hds/link/inline.js.map +1 -0
  350. package/dist/components/hds/link/standalone.js +132 -0
  351. package/dist/components/hds/link/standalone.js.map +1 -0
  352. package/dist/components/hds/menu-primitive/index.js +68 -0
  353. package/dist/components/hds/menu-primitive/index.js.map +1 -0
  354. package/dist/components/hds/modal/body.js +10 -0
  355. package/dist/components/hds/modal/body.js.map +1 -0
  356. package/dist/components/hds/modal/footer.js +10 -0
  357. package/dist/components/hds/modal/footer.js.map +1 -0
  358. package/dist/components/hds/modal/header.js +10 -0
  359. package/dist/components/hds/modal/header.js.map +1 -0
  360. package/dist/components/hds/modal/index.js +184 -0
  361. package/dist/components/hds/modal/index.js.map +1 -0
  362. package/dist/components/hds/page-header/actions.js +10 -0
  363. package/dist/components/hds/page-header/actions.js.map +1 -0
  364. package/dist/components/hds/page-header/badges.js +10 -0
  365. package/dist/components/hds/page-header/badges.js.map +1 -0
  366. package/dist/components/hds/page-header/description.js +10 -0
  367. package/dist/components/hds/page-header/description.js.map +1 -0
  368. package/dist/components/hds/page-header/index.js +10 -0
  369. package/dist/components/hds/page-header/index.js.map +1 -0
  370. package/dist/components/hds/page-header/subtitle.js +10 -0
  371. package/dist/components/hds/page-header/subtitle.js.map +1 -0
  372. package/dist/components/hds/page-header/title.js +10 -0
  373. package/dist/components/hds/page-header/title.js.map +1 -0
  374. package/dist/components/hds/pagination/compact/index.js +159 -0
  375. package/dist/components/hds/pagination/compact/index.js.map +1 -0
  376. package/dist/components/hds/pagination/info/index.js +25 -0
  377. package/dist/components/hds/pagination/info/index.js.map +1 -0
  378. package/dist/components/hds/pagination/nav/arrow.js +70 -0
  379. package/dist/components/hds/pagination/nav/arrow.js.map +1 -0
  380. package/dist/components/hds/pagination/nav/ellipsis.js +10 -0
  381. package/dist/components/hds/pagination/nav/ellipsis.js.map +1 -0
  382. package/dist/components/hds/pagination/nav/number.js +44 -0
  383. package/dist/components/hds/pagination/nav/number.js.map +1 -0
  384. package/dist/components/hds/pagination/numbered/index.js +305 -0
  385. package/dist/components/hds/pagination/numbered/index.js.map +1 -0
  386. package/dist/components/hds/pagination/size-selector/index.js +72 -0
  387. package/dist/components/hds/pagination/size-selector/index.js.map +1 -0
  388. package/dist/components/hds/reveal/index.js +36 -0
  389. package/dist/components/hds/reveal/index.js.map +1 -0
  390. package/dist/components/hds/reveal/toggle/button.js +31 -0
  391. package/dist/components/hds/reveal/toggle/button.js.map +1 -0
  392. package/dist/components/hds/segmented-group/index.js +10 -0
  393. package/dist/components/hds/segmented-group/index.js.map +1 -0
  394. package/dist/components/hds/separator/index.js +48 -0
  395. package/dist/components/hds/separator/index.js.map +1 -0
  396. package/dist/components/hds/side-nav/base.js +10 -0
  397. package/dist/components/hds/side-nav/base.js.map +1 -0
  398. package/dist/components/hds/side-nav/header/home-link.js +30 -0
  399. package/dist/components/hds/side-nav/header/home-link.js.map +1 -0
  400. package/dist/components/hds/side-nav/header/icon-button.js +30 -0
  401. package/dist/components/hds/side-nav/header/icon-button.js.map +1 -0
  402. package/dist/components/hds/side-nav/header/index.js +10 -0
  403. package/dist/components/hds/side-nav/header/index.js.map +1 -0
  404. package/dist/components/hds/side-nav/index.js +176 -0
  405. package/dist/components/hds/side-nav/index.js.map +1 -0
  406. package/dist/components/hds/side-nav/list/back-link.js +10 -0
  407. package/dist/components/hds/side-nav/list/back-link.js.map +1 -0
  408. package/dist/components/hds/side-nav/list/index.js +10 -0
  409. package/dist/components/hds/side-nav/list/index.js.map +1 -0
  410. package/dist/components/hds/side-nav/list/item.js +10 -0
  411. package/dist/components/hds/side-nav/list/item.js.map +1 -0
  412. package/dist/components/hds/side-nav/list/link.js +10 -0
  413. package/dist/components/hds/side-nav/list/link.js.map +1 -0
  414. package/dist/components/hds/side-nav/list/title.js +10 -0
  415. package/dist/components/hds/side-nav/list/title.js.map +1 -0
  416. package/dist/components/hds/side-nav/portal/index.js +10 -0
  417. package/dist/components/hds/side-nav/portal/index.js.map +1 -0
  418. package/dist/components/hds/side-nav/portal/target.js +173 -0
  419. package/dist/components/hds/side-nav/portal/target.js.map +1 -0
  420. package/dist/components/hds/side-nav/toggle-button.js +10 -0
  421. package/dist/components/hds/side-nav/toggle-button.js.map +1 -0
  422. package/dist/components/hds/stepper/step/indicator.js +59 -0
  423. package/dist/components/hds/stepper/step/indicator.js.map +1 -0
  424. package/dist/components/hds/stepper/task/indicator.js +74 -0
  425. package/dist/components/hds/stepper/task/indicator.js.map +1 -0
  426. package/dist/components/hds/table/index.js +269 -0
  427. package/dist/components/hds/table/index.js.map +1 -0
  428. package/dist/components/hds/table/td.js +48 -0
  429. package/dist/components/hds/table/td.js.map +1 -0
  430. package/dist/components/hds/table/th-button-sort.js +82 -0
  431. package/dist/components/hds/table/th-button-sort.js.map +1 -0
  432. package/dist/components/hds/table/th-button-tooltip.js +32 -0
  433. package/dist/components/hds/table/th-button-tooltip.js.map +1 -0
  434. package/dist/components/hds/table/th-selectable.js +81 -0
  435. package/dist/components/hds/table/th-selectable.js.map +1 -0
  436. package/dist/components/hds/table/th-sort.js +73 -0
  437. package/dist/components/hds/table/th-sort.js.map +1 -0
  438. package/dist/components/hds/table/th.js +54 -0
  439. package/dist/components/hds/table/th.js.map +1 -0
  440. package/dist/components/hds/table/tr.js +30 -0
  441. package/dist/components/hds/table/tr.js.map +1 -0
  442. package/dist/components/hds/tabs/index.js +242 -0
  443. package/dist/components/hds/tabs/index.js.map +1 -0
  444. package/dist/components/hds/tabs/panel.js +60 -0
  445. package/dist/components/hds/tabs/panel.js.map +1 -0
  446. package/dist/components/hds/tabs/tab.js +94 -0
  447. package/dist/components/hds/tabs/tab.js.map +1 -0
  448. package/dist/components/hds/tag/index.js +92 -0
  449. package/dist/components/hds/tag/index.js.map +1 -0
  450. package/dist/components/hds/text/body.js +63 -0
  451. package/dist/components/hds/text/body.js.map +1 -0
  452. package/dist/components/hds/text/code.js +63 -0
  453. package/dist/components/hds/text/code.js.map +1 -0
  454. package/dist/components/hds/text/display.js +76 -0
  455. package/dist/components/hds/text/display.js.map +1 -0
  456. package/dist/components/hds/text/index.js +131 -0
  457. package/dist/components/hds/text/index.js.map +1 -0
  458. package/dist/components/hds/toast/index.js +10 -0
  459. package/dist/components/hds/toast/index.js.map +1 -0
  460. package/dist/components/hds/tooltip-button/index.js +74 -0
  461. package/dist/components/hds/tooltip-button/index.js.map +1 -0
  462. package/dist/components/hds/yield/index.js +10 -0
  463. package/dist/components/hds/yield/index.js.map +1 -0
  464. package/dist/helpers/hds-link-to-models.js +34 -0
  465. package/dist/helpers/hds-link-to-models.js.map +1 -0
  466. package/dist/helpers/hds-link-to-query.js +29 -0
  467. package/dist/helpers/hds-link-to-query.js.map +1 -0
  468. package/dist/modifiers/hds-clipboard.js +152 -0
  469. package/dist/modifiers/hds-clipboard.js.map +1 -0
  470. package/dist/modifiers/hds-tooltip.js +153 -0
  471. package/dist/modifiers/hds-tooltip.js.map +1 -0
  472. package/dist/styles/@hashicorp/design-system-components.css +6600 -0
  473. package/dist/styles/@hashicorp/design-system-components.scss +67 -0
  474. package/dist/styles/@hashicorp/design-system-components.scss.map +1 -0
  475. package/dist/styles/components/flyout.scss +113 -0
  476. package/dist/styles/components/table.scss +277 -0
  477. package/dist/styles/components/tabs.scss +152 -0
  478. package/dist/template-registry.js +2 -0
  479. package/dist/template-registry.js.map +1 -0
  480. package/dist/types/@hashicorp/ember-flight-icons/flight-icon.d.ts +2 -0
  481. package/dist/types/@hashicorp/ember-flight-icons/flight-icon.d.ts.map +1 -0
  482. package/dist/types/global.d.ts +2 -0
  483. package/dist/types/global.d.ts.map +1 -0
  484. package/dist/utils/hds-get-element-id.js +22 -0
  485. package/dist/utils/hds-get-element-id.js.map +1 -0
  486. package/dist/utils/hds-set-aria-described-by.js +17 -0
  487. package/dist/utils/hds-set-aria-described-by.js.map +1 -0
  488. package/package.json +201 -64
  489. package/.stylelintignore +0 -26
  490. package/CHANGELOG-FIGMA-COMPONENTS.md +0 -191
  491. package/CHANGELOG-FIGMA-FOUNDATIONS.md +0 -13
  492. package/CHANGELOG.md +0 -1609
  493. package/HOW-TO-TEST-A-COMPONENT-IN-CLOUD-UI.md +0 -100
  494. package/NEW-COMPONENT-CHECKLIST.md +0 -166
  495. package/RELEASE.md +0 -40
  496. package/addon/components/hds/accordion/index.hbs +0 -8
  497. package/addon/components/hds/accordion/item/button.hbs +0 -16
  498. package/addon/components/hds/accordion/item/button.js +0 -31
  499. package/addon/components/hds/accordion/item/index.hbs +0 -41
  500. package/addon/components/hds/accordion/item/index.js +0 -58
  501. package/addon/components/hds/alert/description.hbs +0 -5
  502. package/addon/components/hds/alert/index.hbs +0 -38
  503. package/addon/components/hds/alert/index.js +0 -164
  504. package/addon/components/hds/alert/title.hbs +0 -5
  505. package/addon/components/hds/app-footer/copyright.hbs +0 -9
  506. package/addon/components/hds/app-footer/copyright.js +0 -18
  507. package/addon/components/hds/app-footer/index.hbs +0 -20
  508. package/addon/components/hds/app-footer/index.js +0 -41
  509. package/addon/components/hds/app-footer/item.hbs +0 -8
  510. package/addon/components/hds/app-footer/legal-links.hbs +0 -14
  511. package/addon/components/hds/app-footer/legal-links.js +0 -67
  512. package/addon/components/hds/app-footer/link.hbs +0 -22
  513. package/addon/components/hds/app-footer/status-link.hbs +0 -20
  514. package/addon/components/hds/app-footer/status-link.js +0 -121
  515. package/addon/components/hds/app-frame/index.hbs +0 -24
  516. package/addon/components/hds/app-frame/index.js +0 -52
  517. package/addon/components/hds/app-frame/parts/footer.hbs +0 -7
  518. package/addon/components/hds/app-frame/parts/header.hbs +0 -7
  519. package/addon/components/hds/app-frame/parts/main.hbs +0 -7
  520. package/addon/components/hds/app-frame/parts/modals.hbs +0 -6
  521. package/addon/components/hds/app-frame/parts/sidebar.hbs +0 -7
  522. package/addon/components/hds/application-state/body.hbs +0 -13
  523. package/addon/components/hds/application-state/footer.hbs +0 -7
  524. package/addon/components/hds/application-state/footer.js +0 -35
  525. package/addon/components/hds/application-state/header.hbs +0 -20
  526. package/addon/components/hds/application-state/index.hbs +0 -13
  527. package/addon/components/hds/badge/index.hbs +0 -18
  528. package/addon/components/hds/badge/index.js +0 -146
  529. package/addon/components/hds/badge-count/index.hbs +0 -7
  530. package/addon/components/hds/badge-count/index.js +0 -99
  531. package/addon/components/hds/breadcrumb/index.hbs +0 -9
  532. package/addon/components/hds/breadcrumb/index.js +0 -59
  533. package/addon/components/hds/breadcrumb/item.hbs +0 -50
  534. package/addon/components/hds/breadcrumb/item.js +0 -55
  535. package/addon/components/hds/breadcrumb/truncation.hbs +0 -26
  536. package/addon/components/hds/breadcrumb/truncation.js +0 -17
  537. package/addon/components/hds/button/index.hbs +0 -45
  538. package/addon/components/hds/button/index.ts +0 -199
  539. package/addon/components/hds/button-set/index.hbs +0 -7
  540. package/addon/components/hds/card/container.hbs +0 -7
  541. package/addon/components/hds/card/container.js +0 -161
  542. package/addon/components/hds/code-block/copy-button.hbs +0 -13
  543. package/addon/components/hds/code-block/description.hbs +0 -8
  544. package/addon/components/hds/code-block/index.hbs +0 -27
  545. package/addon/components/hds/code-block/index.js +0 -167
  546. package/addon/components/hds/code-block/title.hbs +0 -8
  547. package/addon/components/hds/copy/button/index.hbs +0 -16
  548. package/addon/components/hds/copy/button/index.js +0 -103
  549. package/addon/components/hds/copy/snippet/index.hbs +0 -15
  550. package/addon/components/hds/copy/snippet/index.js +0 -135
  551. package/addon/components/hds/disclosure-primitive/index.hbs +0 -14
  552. package/addon/components/hds/disclosure-primitive/index.js +0 -30
  553. package/addon/components/hds/dismiss-button/index.hbs +0 -7
  554. package/addon/components/hds/dismiss-button/index.js +0 -17
  555. package/addon/components/hds/dropdown/footer.hbs +0 -8
  556. package/addon/components/hds/dropdown/header.hbs +0 -8
  557. package/addon/components/hds/dropdown/index.hbs +0 -36
  558. package/addon/components/hds/dropdown/index.js +0 -80
  559. package/addon/components/hds/dropdown/list-item/checkbox.hbs +0 -20
  560. package/addon/components/hds/dropdown/list-item/checkbox.js +0 -16
  561. package/addon/components/hds/dropdown/list-item/checkmark.hbs +0 -46
  562. package/addon/components/hds/dropdown/list-item/checkmark.js +0 -28
  563. package/addon/components/hds/dropdown/list-item/copy-item.hbs +0 -16
  564. package/addon/components/hds/dropdown/list-item/copy-item.js +0 -51
  565. package/addon/components/hds/dropdown/list-item/description.hbs +0 -14
  566. package/addon/components/hds/dropdown/list-item/description.js +0 -25
  567. package/addon/components/hds/dropdown/list-item/generic.hbs +0 -7
  568. package/addon/components/hds/dropdown/list-item/interactive.hbs +0 -37
  569. package/addon/components/hds/dropdown/list-item/interactive.js +0 -64
  570. package/addon/components/hds/dropdown/list-item/radio.hbs +0 -25
  571. package/addon/components/hds/dropdown/list-item/radio.js +0 -16
  572. package/addon/components/hds/dropdown/list-item/separator.hbs +0 -10
  573. package/addon/components/hds/dropdown/list-item/title.hbs +0 -14
  574. package/addon/components/hds/dropdown/list-item/title.js +0 -25
  575. package/addon/components/hds/dropdown/toggle/button.hbs +0 -38
  576. package/addon/components/hds/dropdown/toggle/button.js +0 -134
  577. package/addon/components/hds/dropdown/toggle/chevron.hbs +0 -8
  578. package/addon/components/hds/dropdown/toggle/icon.hbs +0 -23
  579. package/addon/components/hds/dropdown/toggle/icon.js +0 -119
  580. package/addon/components/hds/flyout/body.hbs +0 -7
  581. package/addon/components/hds/flyout/description.hbs +0 -7
  582. package/addon/components/hds/flyout/footer.hbs +0 -7
  583. package/addon/components/hds/flyout/header.hbs +0 -18
  584. package/addon/components/hds/flyout/index.hbs +0 -20
  585. package/addon/components/hds/flyout/index.js +0 -168
  586. package/addon/components/hds/form/character-count/index.hbs +0 -28
  587. package/addon/components/hds/form/character-count/index.js +0 -178
  588. package/addon/components/hds/form/checkbox/base.hbs +0 -5
  589. package/addon/components/hds/form/checkbox/field.hbs +0 -24
  590. package/addon/components/hds/form/checkbox/group.hbs +0 -29
  591. package/addon/components/hds/form/error/index.hbs +0 -10
  592. package/addon/components/hds/form/error/index.js +0 -58
  593. package/addon/components/hds/form/error/message.hbs +0 -7
  594. package/addon/components/hds/form/field/index.hbs +0 -47
  595. package/addon/components/hds/form/field/index.js +0 -97
  596. package/addon/components/hds/form/fieldset/index.hbs +0 -33
  597. package/addon/components/hds/form/fieldset/index.js +0 -76
  598. package/addon/components/hds/form/file-input/base.hbs +0 -6
  599. package/addon/components/hds/form/file-input/field.hbs +0 -24
  600. package/addon/components/hds/form/helper-text/index.hbs +0 -15
  601. package/addon/components/hds/form/helper-text/index.js +0 -58
  602. package/addon/components/hds/form/indicator/index.hbs +0 -10
  603. package/addon/components/hds/form/indicator/index.js +0 -24
  604. package/addon/components/hds/form/label/index.hbs +0 -8
  605. package/addon/components/hds/form/label/index.js +0 -29
  606. package/addon/components/hds/form/legend/index.hbs +0 -8
  607. package/addon/components/hds/form/legend/index.js +0 -29
  608. package/addon/components/hds/form/masked-input/base.hbs +0 -40
  609. package/addon/components/hds/form/masked-input/base.js +0 -85
  610. package/addon/components/hds/form/masked-input/field.hbs +0 -33
  611. package/addon/components/hds/form/radio/base.hbs +0 -5
  612. package/addon/components/hds/form/radio/field.hbs +0 -24
  613. package/addon/components/hds/form/radio/group.hbs +0 -29
  614. package/addon/components/hds/form/radio-card/description.hbs +0 -10
  615. package/addon/components/hds/form/radio-card/group.hbs +0 -30
  616. package/addon/components/hds/form/radio-card/index.hbs +0 -24
  617. package/addon/components/hds/form/radio-card/index.js +0 -100
  618. package/addon/components/hds/form/radio-card/label.hbs +0 -11
  619. package/addon/components/hds/form/select/base.hbs +0 -7
  620. package/addon/components/hds/form/select/base.js +0 -27
  621. package/addon/components/hds/form/select/field.hbs +0 -30
  622. package/addon/components/hds/form/text-input/base.hbs +0 -5
  623. package/addon/components/hds/form/text-input/base.js +0 -72
  624. package/addon/components/hds/form/text-input/field.hbs +0 -41
  625. package/addon/components/hds/form/text-input/field.js +0 -59
  626. package/addon/components/hds/form/textarea/base.hbs +0 -6
  627. package/addon/components/hds/form/textarea/base.js +0 -27
  628. package/addon/components/hds/form/textarea/field.hbs +0 -28
  629. package/addon/components/hds/form/toggle/base.hbs +0 -8
  630. package/addon/components/hds/form/toggle/field.hbs +0 -23
  631. package/addon/components/hds/form/toggle/group.hbs +0 -21
  632. package/addon/components/hds/form/visibility-toggle/index.hbs +0 -8
  633. package/addon/components/hds/icon-tile/index.hbs +0 -23
  634. package/addon/components/hds/icon-tile/index.js +0 -189
  635. package/addon/components/hds/interactive/index.hbs +0 -32
  636. package/addon/components/hds/interactive/index.ts +0 -63
  637. package/addon/components/hds/link/inline.hbs +0 -22
  638. package/addon/components/hds/link/inline.js +0 -76
  639. package/addon/components/hds/link/standalone.hbs +0 -28
  640. package/addon/components/hds/link/standalone.js +0 -147
  641. package/addon/components/hds/menu-primitive/index.hbs +0 -22
  642. package/addon/components/hds/menu-primitive/index.js +0 -59
  643. package/addon/components/hds/modal/body.hbs +0 -7
  644. package/addon/components/hds/modal/footer.hbs +0 -7
  645. package/addon/components/hds/modal/header.hbs +0 -18
  646. package/addon/components/hds/modal/index.hbs +0 -19
  647. package/addon/components/hds/modal/index.js +0 -209
  648. package/addon/components/hds/page-header/actions.hbs +0 -5
  649. package/addon/components/hds/page-header/badges.hbs +0 -5
  650. package/addon/components/hds/page-header/description.hbs +0 -11
  651. package/addon/components/hds/page-header/index.hbs +0 -28
  652. package/addon/components/hds/page-header/subtitle.hbs +0 -11
  653. package/addon/components/hds/page-header/title.hbs +0 -11
  654. package/addon/components/hds/pagination/compact/index.hbs +0 -39
  655. package/addon/components/hds/pagination/compact/index.js +0 -163
  656. package/addon/components/hds/pagination/info/index.hbs +0 -11
  657. package/addon/components/hds/pagination/info/index.js +0 -17
  658. package/addon/components/hds/pagination/nav/arrow.hbs +0 -44
  659. package/addon/components/hds/pagination/nav/arrow.js +0 -77
  660. package/addon/components/hds/pagination/nav/ellipsis.hbs +0 -5
  661. package/addon/components/hds/pagination/nav/number.hbs +0 -17
  662. package/addon/components/hds/pagination/nav/number.js +0 -45
  663. package/addon/components/hds/pagination/numbered/index.hbs +0 -70
  664. package/addon/components/hds/pagination/numbered/index.js +0 -341
  665. package/addon/components/hds/pagination/size-selector/index.hbs +0 -16
  666. package/addon/components/hds/pagination/size-selector/index.js +0 -73
  667. package/addon/components/hds/reveal/index.hbs +0 -21
  668. package/addon/components/hds/reveal/index.js +0 -33
  669. package/addon/components/hds/reveal/toggle/button.hbs +0 -13
  670. package/addon/components/hds/reveal/toggle/button.js +0 -24
  671. package/addon/components/hds/segmented-group/index.hbs +0 -15
  672. package/addon/components/hds/separator/index.hbs +0 -5
  673. package/addon/components/hds/separator/index.js +0 -47
  674. package/addon/components/hds/side-nav/base.hbs +0 -19
  675. package/addon/components/hds/side-nav/header/home-link.hbs +0 -20
  676. package/addon/components/hds/side-nav/header/home-link.js +0 -25
  677. package/addon/components/hds/side-nav/header/icon-button.hbs +0 -20
  678. package/addon/components/hds/side-nav/header/icon-button.js +0 -25
  679. package/addon/components/hds/side-nav/header/index.hbs +0 -13
  680. package/addon/components/hds/side-nav/index.hbs +0 -42
  681. package/addon/components/hds/side-nav/index.js +0 -147
  682. package/addon/components/hds/side-nav/list/back-link.hbs +0 -24
  683. package/addon/components/hds/side-nav/list/index.hbs +0 -19
  684. package/addon/components/hds/side-nav/list/item.hbs +0 -8
  685. package/addon/components/hds/side-nav/list/link.hbs +0 -50
  686. package/addon/components/hds/side-nav/list/title.hbs +0 -8
  687. package/addon/components/hds/side-nav/portal/index.hbs +0 -12
  688. package/addon/components/hds/side-nav/portal/target.hbs +0 -14
  689. package/addon/components/hds/side-nav/portal/target.js +0 -162
  690. package/addon/components/hds/side-nav/toggle-button.hbs +0 -7
  691. package/addon/components/hds/stepper/step/indicator.hbs +0 -28
  692. package/addon/components/hds/stepper/step/indicator.js +0 -59
  693. package/addon/components/hds/stepper/task/indicator.hbs +0 -7
  694. package/addon/components/hds/stepper/task/indicator.js +0 -74
  695. package/addon/components/hds/table/index.hbs +0 -78
  696. package/addon/components/hds/table/index.js +0 -182
  697. package/addon/components/hds/table/td.hbs +0 -7
  698. package/addon/components/hds/table/td.js +0 -50
  699. package/addon/components/hds/table/th-sort.hbs +0 -18
  700. package/addon/components/hds/table/th-sort.js +0 -94
  701. package/addon/components/hds/table/th.hbs +0 -11
  702. package/addon/components/hds/table/th.js +0 -50
  703. package/addon/components/hds/table/tr.hbs +0 -7
  704. package/addon/components/hds/tabs/index.hbs +0 -47
  705. package/addon/components/hds/tabs/index.js +0 -211
  706. package/addon/components/hds/tabs/panel.hbs +0 -16
  707. package/addon/components/hds/tabs/panel.js +0 -59
  708. package/addon/components/hds/tabs/tab.hbs +0 -31
  709. package/addon/components/hds/tabs/tab.js +0 -98
  710. package/addon/components/hds/tag/index.hbs +0 -30
  711. package/addon/components/hds/tag/index.js +0 -91
  712. package/addon/components/hds/text/body.hbs +0 -13
  713. package/addon/components/hds/text/body.js +0 -73
  714. package/addon/components/hds/text/code.hbs +0 -13
  715. package/addon/components/hds/text/code.js +0 -73
  716. package/addon/components/hds/text/display.hbs +0 -13
  717. package/addon/components/hds/text/display.js +0 -85
  718. package/addon/components/hds/text/index.hbs +0 -10
  719. package/addon/components/hds/text/index.js +0 -146
  720. package/addon/components/hds/toast/index.hbs +0 -17
  721. package/addon/components/hds/tooltip-button/index.hbs +0 -11
  722. package/addon/components/hds/tooltip-button/index.js +0 -86
  723. package/addon/components/hds/yield/index.hbs +0 -6
  724. package/addon/helpers/hds-link-to-models.js +0 -35
  725. package/addon/helpers/hds-link-to-query.js +0 -26
  726. package/addon/modifiers/hds-clipboard.js +0 -163
  727. package/addon/modifiers/hds-tooltip.js +0 -164
  728. package/addon/template-registry.ts +0 -12
  729. package/addon/utils/hds-get-element-id.js +0 -19
  730. package/addon/utils/hds-set-aria-described-by.js +0 -15
  731. package/app/components/hds/accordion/index.js +0 -6
  732. package/app/components/hds/accordion/item/button.js +0 -6
  733. package/app/components/hds/accordion/item/index.js +0 -6
  734. package/app/components/hds/alert/description.js +0 -6
  735. package/app/components/hds/alert/index.js +0 -6
  736. package/app/components/hds/alert/title.js +0 -6
  737. package/app/components/hds/app-footer/copyright.js +0 -6
  738. package/app/components/hds/app-footer/index.js +0 -6
  739. package/app/components/hds/app-footer/item.js +0 -6
  740. package/app/components/hds/app-footer/legal-links.js +0 -6
  741. package/app/components/hds/app-footer/link.js +0 -6
  742. package/app/components/hds/app-footer/status-link.js +0 -6
  743. package/app/components/hds/app-frame/index.js +0 -6
  744. package/app/components/hds/app-frame/parts/footer.js +0 -6
  745. package/app/components/hds/app-frame/parts/header.js +0 -6
  746. package/app/components/hds/app-frame/parts/main.js +0 -6
  747. package/app/components/hds/app-frame/parts/modals.js +0 -6
  748. package/app/components/hds/app-frame/parts/sidebar.js +0 -6
  749. package/app/components/hds/application-state/body.js +0 -6
  750. package/app/components/hds/application-state/footer.js +0 -6
  751. package/app/components/hds/application-state/header.js +0 -6
  752. package/app/components/hds/application-state/index.js +0 -6
  753. package/app/components/hds/badge/index.js +0 -6
  754. package/app/components/hds/badge-count/index.js +0 -6
  755. package/app/components/hds/breadcrumb/index.js +0 -6
  756. package/app/components/hds/breadcrumb/item.js +0 -6
  757. package/app/components/hds/breadcrumb/truncation.js +0 -6
  758. package/app/components/hds/button/index.js +0 -6
  759. package/app/components/hds/button-set/index.js +0 -6
  760. package/app/components/hds/card/container.js +0 -6
  761. package/app/components/hds/code-block/copy-button.js +0 -6
  762. package/app/components/hds/code-block/description.js +0 -6
  763. package/app/components/hds/code-block/index.js +0 -6
  764. package/app/components/hds/code-block/title.js +0 -6
  765. package/app/components/hds/copy/button/index.js +0 -6
  766. package/app/components/hds/copy/snippet/index.js +0 -6
  767. package/app/components/hds/disclosure-primitive/index.js +0 -6
  768. package/app/components/hds/dismiss-button/index.js +0 -6
  769. package/app/components/hds/dropdown/footer.js +0 -6
  770. package/app/components/hds/dropdown/header.js +0 -6
  771. package/app/components/hds/dropdown/index.js +0 -6
  772. package/app/components/hds/dropdown/list-item/checkbox.js +0 -6
  773. package/app/components/hds/dropdown/list-item/checkmark.js +0 -6
  774. package/app/components/hds/dropdown/list-item/copy-item.js +0 -6
  775. package/app/components/hds/dropdown/list-item/description.js +0 -6
  776. package/app/components/hds/dropdown/list-item/generic.js +0 -6
  777. package/app/components/hds/dropdown/list-item/interactive.js +0 -6
  778. package/app/components/hds/dropdown/list-item/radio.js +0 -6
  779. package/app/components/hds/dropdown/list-item/separator.js +0 -6
  780. package/app/components/hds/dropdown/list-item/title.js +0 -6
  781. package/app/components/hds/dropdown/toggle/button.js +0 -6
  782. package/app/components/hds/dropdown/toggle/chevron.js +0 -6
  783. package/app/components/hds/dropdown/toggle/icon.js +0 -6
  784. package/app/components/hds/flyout/body.js +0 -6
  785. package/app/components/hds/flyout/description.js +0 -6
  786. package/app/components/hds/flyout/footer.js +0 -6
  787. package/app/components/hds/flyout/header.js +0 -6
  788. package/app/components/hds/flyout/index.js +0 -6
  789. package/app/components/hds/form/character-count/index.js +0 -6
  790. package/app/components/hds/form/checkbox/base.js +0 -6
  791. package/app/components/hds/form/checkbox/field.js +0 -6
  792. package/app/components/hds/form/checkbox/group.js +0 -6
  793. package/app/components/hds/form/error/index.js +0 -6
  794. package/app/components/hds/form/error/message.js +0 -6
  795. package/app/components/hds/form/field/index.js +0 -6
  796. package/app/components/hds/form/fieldset/index.js +0 -6
  797. package/app/components/hds/form/file-input/base.js +0 -6
  798. package/app/components/hds/form/file-input/field.js +0 -6
  799. package/app/components/hds/form/helper-text/index.js +0 -6
  800. package/app/components/hds/form/indicator/index.js +0 -6
  801. package/app/components/hds/form/label/index.js +0 -6
  802. package/app/components/hds/form/legend/index.js +0 -6
  803. package/app/components/hds/form/masked-input/base.js +0 -6
  804. package/app/components/hds/form/masked-input/field.js +0 -6
  805. package/app/components/hds/form/radio/base.js +0 -6
  806. package/app/components/hds/form/radio/field.js +0 -6
  807. package/app/components/hds/form/radio/group.js +0 -6
  808. package/app/components/hds/form/radio-card/description.js +0 -6
  809. package/app/components/hds/form/radio-card/group.js +0 -6
  810. package/app/components/hds/form/radio-card/index.js +0 -6
  811. package/app/components/hds/form/radio-card/label.js +0 -6
  812. package/app/components/hds/form/select/base.js +0 -6
  813. package/app/components/hds/form/select/field.js +0 -6
  814. package/app/components/hds/form/text-input/base.js +0 -6
  815. package/app/components/hds/form/text-input/field.js +0 -6
  816. package/app/components/hds/form/textarea/base.js +0 -6
  817. package/app/components/hds/form/textarea/field.js +0 -6
  818. package/app/components/hds/form/toggle/base.js +0 -6
  819. package/app/components/hds/form/toggle/field.js +0 -6
  820. package/app/components/hds/form/toggle/group.js +0 -6
  821. package/app/components/hds/form/visibility-toggle/index.js +0 -6
  822. package/app/components/hds/icon-tile/index.js +0 -6
  823. package/app/components/hds/interactive/index.js +0 -6
  824. package/app/components/hds/link/inline.js +0 -6
  825. package/app/components/hds/link/standalone.js +0 -6
  826. package/app/components/hds/menu-primitive/index.js +0 -6
  827. package/app/components/hds/modal/body.js +0 -6
  828. package/app/components/hds/modal/footer.js +0 -6
  829. package/app/components/hds/modal/header.js +0 -6
  830. package/app/components/hds/modal/index.js +0 -6
  831. package/app/components/hds/page-header/actions.js +0 -6
  832. package/app/components/hds/page-header/badges.js +0 -6
  833. package/app/components/hds/page-header/description.js +0 -6
  834. package/app/components/hds/page-header/index.js +0 -6
  835. package/app/components/hds/page-header/subtitle.js +0 -6
  836. package/app/components/hds/page-header/title.js +0 -6
  837. package/app/components/hds/pagination/compact/index.js +0 -6
  838. package/app/components/hds/pagination/info.js +0 -6
  839. package/app/components/hds/pagination/nav/arrow.js +0 -6
  840. package/app/components/hds/pagination/nav/ellipsis.js +0 -6
  841. package/app/components/hds/pagination/nav/number.js +0 -6
  842. package/app/components/hds/pagination/numbered/index.js +0 -6
  843. package/app/components/hds/pagination/size-selector.js +0 -6
  844. package/app/components/hds/reveal/index.js +0 -6
  845. package/app/components/hds/reveal/toggle/button.js +0 -6
  846. package/app/components/hds/segmented-group/index.js +0 -6
  847. package/app/components/hds/separator/index.js +0 -6
  848. package/app/components/hds/side-nav/base.js +0 -6
  849. package/app/components/hds/side-nav/header/home-link.js +0 -6
  850. package/app/components/hds/side-nav/header/icon-button.js +0 -6
  851. package/app/components/hds/side-nav/header/index.js +0 -6
  852. package/app/components/hds/side-nav/index.js +0 -6
  853. package/app/components/hds/side-nav/list/back-link.js +0 -6
  854. package/app/components/hds/side-nav/list/index.js +0 -6
  855. package/app/components/hds/side-nav/list/item.js +0 -6
  856. package/app/components/hds/side-nav/list/link.js +0 -6
  857. package/app/components/hds/side-nav/list/title.js +0 -6
  858. package/app/components/hds/side-nav/portal/index.js +0 -6
  859. package/app/components/hds/side-nav/portal/target.js +0 -6
  860. package/app/components/hds/side-nav/toggle-button.js +0 -6
  861. package/app/components/hds/stepper/step/indicator.js +0 -6
  862. package/app/components/hds/stepper/task/indicator.js +0 -6
  863. package/app/components/hds/table/index.js +0 -6
  864. package/app/components/hds/table/td.js +0 -6
  865. package/app/components/hds/table/th-sort.js +0 -6
  866. package/app/components/hds/table/th.js +0 -6
  867. package/app/components/hds/table/tr.js +0 -6
  868. package/app/components/hds/tabs/index.js +0 -6
  869. package/app/components/hds/tabs/panel.js +0 -6
  870. package/app/components/hds/tabs/tab.js +0 -6
  871. package/app/components/hds/tag/index.js +0 -6
  872. package/app/components/hds/text/body.js +0 -6
  873. package/app/components/hds/text/code.js +0 -6
  874. package/app/components/hds/text/display.js +0 -6
  875. package/app/components/hds/text/index.js +0 -6
  876. package/app/components/hds/toast/index.js +0 -6
  877. package/app/components/hds/tooltip-button/index.js +0 -6
  878. package/app/components/hds/yield/index.js +0 -6
  879. package/app/helpers/hds-link-to-models.js +0 -6
  880. package/app/helpers/hds-link-to-query.js +0 -6
  881. package/app/modifiers/hds-clipboard.js +0 -6
  882. package/app/modifiers/hds-tooltip.js +0 -6
  883. package/app/styles/@hashicorp/design-system-components.scss +0 -64
  884. package/app/styles/components/flyout.scss +0 -111
  885. package/app/styles/components/table.scss +0 -208
  886. package/app/styles/components/tabs.scss +0 -117
  887. package/blueprints/hds-component/files/addon/components/hds/__name__/index.hbs +0 -8
  888. package/blueprints/hds-component/files/addon/components/hds/__name__/index.js +0 -28
  889. package/blueprints/hds-component/files/app/components/hds/__name__/index.js +0 -6
  890. package/blueprints/hds-component/files/app/styles/components/__name__.scss +0 -12
  891. package/blueprints/hds-component/index.js +0 -65
  892. package/blueprints/hds-component-test/files/tests/acceptance/components/hds/__name__.js +0 -21
  893. package/blueprints/hds-component-test/files/tests/dummy/app/routes/components/__name__.js +0 -8
  894. package/blueprints/hds-component-test/files/tests/dummy/app/styles/showcase-pages/__dummyCSSFileName__.scss +0 -6
  895. package/blueprints/hds-component-test/files/tests/dummy/app/templates/components/__name__.hbs +0 -17
  896. package/blueprints/hds-component-test/files/tests/integration/components/hds/__name__/index-test.js +0 -25
  897. package/blueprints/hds-component-test/index.js +0 -151
  898. package/config/environment.js +0 -10
  899. package/index.js +0 -32
  900. package/tsconfig.declarations.json +0 -10
  901. package/tsconfig.json +0 -47
  902. package/types/dummy/index.d.ts +0 -7
  903. package/types/global.d.ts +0 -12
  904. package/vercel.json +0 -13
  905. /package/{app → dist}/styles/@hashicorp/design-system-power-select-overrides.scss +0 -0
  906. /package/{app → dist}/styles/components/accordion.scss +0 -0
  907. /package/{app → dist}/styles/components/alert.scss +0 -0
  908. /package/{app → dist}/styles/components/app-footer.scss +0 -0
  909. /package/{app → dist}/styles/components/app-frame.scss +0 -0
  910. /package/{app → dist}/styles/components/application-state.scss +0 -0
  911. /package/{app → dist}/styles/components/badge-count.scss +0 -0
  912. /package/{app → dist}/styles/components/badge.scss +0 -0
  913. /package/{app → dist}/styles/components/breadcrumb.scss +0 -0
  914. /package/{app → dist}/styles/components/button-set.scss +0 -0
  915. /package/{app → dist}/styles/components/button.scss +0 -0
  916. /package/{app → dist}/styles/components/card/container.scss +0 -0
  917. /package/{app → dist}/styles/components/card/index.scss +0 -0
  918. /package/{app → dist}/styles/components/code-block/index.scss +0 -0
  919. /package/{app → dist}/styles/components/code-block/theme.scss +0 -0
  920. /package/{app → dist}/styles/components/copy/button.scss +0 -0
  921. /package/{app → dist}/styles/components/copy/index.scss +0 -0
  922. /package/{app → dist}/styles/components/copy/snippet.scss +0 -0
  923. /package/{app → dist}/styles/components/disclosure-primitive.scss +0 -0
  924. /package/{app → dist}/styles/components/dismiss-button.scss +0 -0
  925. /package/{app → dist}/styles/components/dropdown.scss +0 -0
  926. /package/{app → dist}/styles/components/form/character-count.scss +0 -0
  927. /package/{app → dist}/styles/components/form/checkbox.scss +0 -0
  928. /package/{app → dist}/styles/components/form/error.scss +0 -0
  929. /package/{app → dist}/styles/components/form/field.scss +0 -0
  930. /package/{app → dist}/styles/components/form/file-input.scss +0 -0
  931. /package/{app → dist}/styles/components/form/group.scss +0 -0
  932. /package/{app → dist}/styles/components/form/helper-text.scss +0 -0
  933. /package/{app → dist}/styles/components/form/index.scss +0 -0
  934. /package/{app → dist}/styles/components/form/indicator.scss +0 -0
  935. /package/{app → dist}/styles/components/form/label.scss +0 -0
  936. /package/{app → dist}/styles/components/form/legend.scss +0 -0
  937. /package/{app → dist}/styles/components/form/masked-input.scss +0 -0
  938. /package/{app → dist}/styles/components/form/radio-card.scss +0 -0
  939. /package/{app → dist}/styles/components/form/radio.scss +0 -0
  940. /package/{app → dist}/styles/components/form/select.scss +0 -0
  941. /package/{app → dist}/styles/components/form/text-input.scss +0 -0
  942. /package/{app → dist}/styles/components/form/textarea.scss +0 -0
  943. /package/{app → dist}/styles/components/form/toggle.scss +0 -0
  944. /package/{app → dist}/styles/components/form/visibility-toggle.scss +0 -0
  945. /package/{app → dist}/styles/components/icon-tile.scss +0 -0
  946. /package/{app → dist}/styles/components/link/index.scss +0 -0
  947. /package/{app → dist}/styles/components/link/inline.scss +0 -0
  948. /package/{app → dist}/styles/components/link/standalone.scss +0 -0
  949. /package/{app → dist}/styles/components/menu-primitive.scss +0 -0
  950. /package/{app → dist}/styles/components/modal.scss +0 -0
  951. /package/{app → dist}/styles/components/page-header.scss +0 -0
  952. /package/{app → dist}/styles/components/pagination.scss +0 -0
  953. /package/{app → dist}/styles/components/reveal.scss +0 -0
  954. /package/{app → dist}/styles/components/segmented-group.scss +0 -0
  955. /package/{app → dist}/styles/components/separator.scss +0 -0
  956. /package/{app → dist}/styles/components/side-nav/a11y-refocus.scss +0 -0
  957. /package/{app → dist}/styles/components/side-nav/content.scss +0 -0
  958. /package/{app → dist}/styles/components/side-nav/header.scss +0 -0
  959. /package/{app → dist}/styles/components/side-nav/index.scss +0 -0
  960. /package/{app → dist}/styles/components/side-nav/main.scss +0 -0
  961. /package/{app → dist}/styles/components/side-nav/toggle-button.scss +0 -0
  962. /package/{app → dist}/styles/components/side-nav/vars.scss +0 -0
  963. /package/{app → dist}/styles/components/stepper/index.scss +0 -0
  964. /package/{app → dist}/styles/components/stepper/step-indicator.scss +0 -0
  965. /package/{app → dist}/styles/components/stepper/task-indicator.scss +0 -0
  966. /package/{app → dist}/styles/components/tag.scss +0 -0
  967. /package/{app → dist}/styles/components/text.scss +0 -0
  968. /package/{app → dist}/styles/components/toast.scss +0 -0
  969. /package/{app → dist}/styles/components/tooltip.scss +0 -0
  970. /package/{app → dist}/styles/mixins/_button.scss +0 -0
  971. /package/{app → dist}/styles/mixins/_focus-ring.scss +0 -0
@@ -0,0 +1,157 @@
1
+ import Component from '@glimmer/component';
2
+ import { assert } from '@ember/debug';
3
+ import { precompileTemplate } from '@ember/template-compilation';
4
+ import { setComponentTemplate } from '@ember/component';
5
+
6
+ var TEMPLATE = precompileTemplate("{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n<Hds::Interactive\n class={{this.classNames}}\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 aria-label={{if this.isIconOnly this.text null}}\n>\n {{#if this.isIconOnly}}\n <span class=\"hds-button__icon\">\n <FlightIcon @name={{this.icon}} @size={{this.iconSize}} @stretched={{true}} />\n </span>\n {{else}}\n {{#if this.icon}}\n {{#if (eq this.iconPosition \"leading\")}}\n <span class=\"hds-button__icon\">\n <FlightIcon @name={{this.icon}} @size={{this.iconSize}} @stretched={{true}} />\n </span>\n <span class=\"hds-button__text\">\n {{this.text}}\n </span>\n {{else}}\n <span class=\"hds-button__text\">\n {{this.text}}\n </span>\n <span class=\"hds-button__icon\">\n <FlightIcon @name={{this.icon}} @size={{this.iconSize}} @stretched={{true}} />\n </span>\n {{/if}}\n {{else}}\n <span class=\"hds-button__text\">\n {{this.text}}\n </span>\n {{/if}}\n {{/if}}\n</Hds::Interactive>");
7
+
8
+ /**
9
+ * Copyright (c) HashiCorp, Inc.
10
+ * SPDX-License-Identifier: MPL-2.0
11
+ */
12
+
13
+ const DEFAULT_SIZE = 'medium';
14
+ const DEFAULT_COLOR = 'primary';
15
+ const DEFAULT_ICONPOSITION = 'leading';
16
+ const SIZES = ['small', 'medium', 'large'];
17
+ const COLORS = ['primary', 'secondary', 'tertiary', 'critical'];
18
+ const ICONPOSITIONS = ['leading', 'trailing'];
19
+ class HdsButtonIndexComponent extends Component {
20
+ /**
21
+ * @param text
22
+ * @type {string}
23
+ * @description The text of the button or value of `aria-label` if `isIconOnly` is set to `true`. If no text value is defined an error will be thrown.
24
+ */
25
+ get text() {
26
+ let {
27
+ text
28
+ } = this.args;
29
+ assert('@text for "Hds::Button" must have a valid value', text !== undefined);
30
+ return text;
31
+ }
32
+
33
+ /**
34
+ * @param size
35
+ * @type {string}
36
+ * @default medium
37
+ * @description The size of the button; acceptable values are `small`, `medium`, and `large`
38
+ */
39
+ get size() {
40
+ let {
41
+ size = DEFAULT_SIZE
42
+ } = this.args;
43
+ assert(`@size for "Hds::Button" must be one of the following: ${SIZES.join(', ')}; received: ${size}`, SIZES.includes(size));
44
+ return size;
45
+ }
46
+
47
+ /**
48
+ * @param color
49
+ * @type {string}
50
+ * @default primary
51
+ * @description Determines the color of button to be used; acceptable values are `primary`, `secondary`, and `critical`
52
+ */
53
+ get color() {
54
+ let {
55
+ color = DEFAULT_COLOR
56
+ } = this.args;
57
+ assert(`@color for "Hds::Button" must be one of the following: ${COLORS.join(', ')}; received: ${color}`, COLORS.includes(color));
58
+ return color;
59
+ }
60
+
61
+ /**
62
+ * @param icon
63
+ * @type {string}
64
+ * @default null
65
+ * @description The name of the icon to be used.
66
+ */
67
+ get icon() {
68
+ assert(`when the "Hds::Button" @color is "tertiary" an @icon is required`, !(this.color === 'tertiary' && !this.args.icon));
69
+ return this.args.icon ?? null;
70
+ }
71
+
72
+ /**
73
+ * @param isIconOnly
74
+ * @type {boolean}
75
+ * @default false
76
+ * @description Indicates if the button will only contain an icon; component will also ensure that accessible text is still applied to the component.
77
+ */
78
+ get isIconOnly() {
79
+ if (this.icon) {
80
+ return this.args.isIconOnly ?? false;
81
+ }
82
+ return false;
83
+ }
84
+
85
+ /**
86
+ * @param iconPosition
87
+ * @type {string}
88
+ * @default leading
89
+ * @description Positions the icon before or after the text; allowed values are `leading` or `trailing`
90
+ */
91
+ get iconPosition() {
92
+ let {
93
+ iconPosition = DEFAULT_ICONPOSITION
94
+ } = this.args;
95
+ assert(`@iconPosition for "Hds::Button" must be one of the following: ${ICONPOSITIONS.join(', ')}; received: ${iconPosition}`, ICONPOSITIONS.includes(iconPosition));
96
+ return iconPosition;
97
+ }
98
+
99
+ /**
100
+ * @param iconSize
101
+ * @type {string}
102
+ * @default 16
103
+ * @description ensures that the correct icon size is used. Automatically calculated.
104
+ */
105
+ get iconSize() {
106
+ if (this.args.size === 'large') {
107
+ return '24';
108
+ } else {
109
+ return '16';
110
+ }
111
+ }
112
+
113
+ /**
114
+ * @param isFullWidth
115
+ * @type {boolean}
116
+ * @default false
117
+ * @description Indicates that a button should take up the full width of the parent container. The default is false.
118
+ */
119
+ get isFullWidth() {
120
+ return this.args.isFullWidth ?? false;
121
+ }
122
+
123
+ /**
124
+ * Get the class names to apply to the component.
125
+ * @method Button#classNames
126
+ * @return {string} The "class" attribute to apply to the component.
127
+ */
128
+ get classNames() {
129
+ let classes = ['hds-button'];
130
+
131
+ // add a class based on the @color argument
132
+ classes.push(`hds-button--color-${this.color}`);
133
+
134
+ // add a class based on the @isFullWidth argument
135
+ if (this.isFullWidth) {
136
+ classes.push('hds-button--width-full');
137
+ }
138
+
139
+ // add a class based on isIconOnly argument
140
+ if (this.isIconOnly) {
141
+ classes.push('hds-button--is-icon-only');
142
+ }
143
+
144
+ // add a class based on the @isInline argument
145
+ if (this.args.isInline) {
146
+ classes.push('hds-button--is-inline');
147
+ }
148
+
149
+ // add a class based on the @size argument
150
+ classes.push(`hds-button--size-${this.size}`);
151
+ return classes.join(' ');
152
+ }
153
+ }
154
+ setComponentTemplate(TEMPLATE, HdsButtonIndexComponent);
155
+
156
+ export { COLORS, DEFAULT_COLOR, DEFAULT_ICONPOSITION, DEFAULT_SIZE, ICONPOSITIONS, SIZES, HdsButtonIndexComponent as default };
157
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/hds/button/index.hbs","../../../../src/components/hds/button/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<Hds::Interactive\\n class={{this.classNames}}\\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 aria-label={{if this.isIconOnly this.text null}}\\n>\\n {{#if this.isIconOnly}}\\n <span class=\\\"hds-button__icon\\\">\\n <FlightIcon @name={{this.icon}} @size={{this.iconSize}} @stretched={{true}} />\\n </span>\\n {{else}}\\n {{#if this.icon}}\\n {{#if (eq this.iconPosition \\\"leading\\\")}}\\n <span class=\\\"hds-button__icon\\\">\\n <FlightIcon @name={{this.icon}} @size={{this.iconSize}} @stretched={{true}} />\\n </span>\\n <span class=\\\"hds-button__text\\\">\\n {{this.text}}\\n </span>\\n {{else}}\\n <span class=\\\"hds-button__text\\\">\\n {{this.text}}\\n </span>\\n <span class=\\\"hds-button__icon\\\">\\n <FlightIcon @name={{this.icon}} @size={{this.iconSize}} @stretched={{true}} />\\n </span>\\n {{/if}}\\n {{else}}\\n <span class=\\\"hds-button__text\\\">\\n {{this.text}}\\n </span>\\n {{/if}}\\n {{/if}}\\n</Hds::Interactive>\")","/**\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 { type HdsInteractiveSignature } from '../interactive';\n\nexport const DEFAULT_SIZE = 'medium';\nexport const DEFAULT_COLOR = 'primary';\nexport const DEFAULT_ICONPOSITION = 'leading';\nexport const SIZES = ['small', 'medium', 'large'] as const;\nexport const COLORS = ['primary', 'secondary', 'tertiary', 'critical'] as const;\nexport const ICONPOSITIONS = ['leading', 'trailing'] as const;\n\nexport type HdsButtonSize = typeof SIZES[number];\nexport type HdsButtonColor = typeof COLORS[number];\nexport type HdsButtonIconPosition = typeof ICONPOSITIONS[number];\n\nexport interface HdsButtonSignature {\n Args: HdsInteractiveSignature['Args'] & {\n size?: HdsButtonSize;\n color?: HdsButtonColor;\n text: string;\n icon?: string;\n iconPosition?: HdsButtonIconPosition;\n isIconOnly?: boolean;\n isInline?: boolean;\n isFullWidth?: boolean;\n };\n Element: HdsInteractiveSignature['Element'];\n}\n\nexport default class HdsButtonIndexComponent extends Component<HdsButtonSignature> {\n /**\n * @param text\n * @type {string}\n * @description The text of the button or value of `aria-label` if `isIconOnly` is set to `true`. If no text value is defined an error will be thrown.\n */\n get text() {\n let { text } = this.args;\n\n assert(\n '@text for \"Hds::Button\" must have a valid value',\n text !== undefined\n );\n\n return text;\n }\n\n /**\n * @param size\n * @type {string}\n * @default medium\n * @description The size of the button; acceptable values are `small`, `medium`, and `large`\n */\n get size() {\n let { size = DEFAULT_SIZE } = this.args;\n\n assert(\n `@size for \"Hds::Button\" 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 * @param color\n * @type {string}\n * @default primary\n * @description Determines the color of button to be used; acceptable values are `primary`, `secondary`, and `critical`\n */\n get color() {\n let { color = DEFAULT_COLOR } = this.args;\n\n assert(\n `@color for \"Hds::Button\" 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 icon\n * @type {string}\n * @default null\n * @description The name of the icon to be used.\n */\n get icon() {\n assert(\n `when the \"Hds::Button\" @color is \"tertiary\" an @icon is required`,\n !(this.color === 'tertiary' && !this.args.icon)\n );\n\n return this.args.icon ?? null;\n }\n\n /**\n * @param isIconOnly\n * @type {boolean}\n * @default false\n * @description Indicates if the button will only contain an icon; component will also ensure that accessible text is still applied to the component.\n */\n get isIconOnly() {\n if (this.icon) {\n return this.args.isIconOnly ?? false;\n }\n return false;\n }\n\n /**\n * @param iconPosition\n * @type {string}\n * @default leading\n * @description Positions the icon before or after the text; allowed values are `leading` or `trailing`\n */\n get iconPosition() {\n let { iconPosition = DEFAULT_ICONPOSITION } = this.args;\n\n assert(\n `@iconPosition for \"Hds::Button\" must be one of the following: ${ICONPOSITIONS.join(\n ', '\n )}; received: ${iconPosition}`,\n ICONPOSITIONS.includes(iconPosition)\n );\n\n return iconPosition;\n }\n\n /**\n * @param iconSize\n * @type {string}\n * @default 16\n * @description ensures that the correct icon size is used. Automatically calculated.\n */\n get iconSize() {\n if (this.args.size === 'large') {\n return '24';\n } else {\n return '16';\n }\n }\n\n /**\n * @param isFullWidth\n * @type {boolean}\n * @default false\n * @description Indicates that a button should take up the full width of the parent container. The default is false.\n */\n get isFullWidth() {\n return this.args.isFullWidth ?? false;\n }\n\n /**\n * Get the class names to apply to the component.\n * @method Button#classNames\n * @return {string} The \"class\" attribute to apply to the component.\n */\n get classNames() {\n let classes = ['hds-button'];\n\n // add a class based on the @color argument\n classes.push(`hds-button--color-${this.color}`);\n\n // add a class based on the @isFullWidth argument\n if (this.isFullWidth) {\n classes.push('hds-button--width-full');\n }\n\n // add a class based on isIconOnly argument\n if (this.isIconOnly) {\n classes.push('hds-button--is-icon-only');\n }\n\n // add a class based on the @isInline argument\n if (this.args.isInline) {\n classes.push('hds-button--is-inline');\n }\n\n // add a class based on the @size argument\n classes.push(`hds-button--size-${this.size}`);\n\n return classes.join(' ');\n }\n}\n\ndeclare module '@glint/environment-ember-loose/registry' {\n export default interface Registry {\n 'Hds::Button': typeof HdsButtonIndexComponent;\n 'hds/button': typeof HdsButtonIndexComponent;\n }\n}\n"],"names":["DEFAULT_SIZE","DEFAULT_COLOR","DEFAULT_ICONPOSITION","SIZES","COLORS","ICONPOSITIONS","HdsButtonIndexComponent","Component","text","args","assert","undefined","size","join","includes","color","icon","isIconOnly","iconPosition","iconSize","isFullWidth","classNames","classes","push","isInline","setComponentTemplate","TEMPLATE"],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import templateOnly from '@ember/component/template-only';
2
+ import { precompileTemplate } from '@ember/template-compilation';
3
+ import { setComponentTemplate } from '@ember/component';
4
+
5
+ var TEMPLATE = precompileTemplate("{{! @glint-nocheck: not typesafe yet }}\n{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n<div class=\"hds-button-set\" ...attributes>\n {{yield}}\n</div>");
6
+
7
+ var index = setComponentTemplate(TEMPLATE, templateOnly());
8
+
9
+ export { index as default };
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/hds/button-set/index.hbs","../../../../src/components/hds/button-set/index.js"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{! @glint-nocheck: not typesafe yet }}\\n{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n<div class=\\\"hds-button-set\\\" ...attributes>\\n {{yield}}\\n</div>\")","import templateOnly from '@ember/component/template-only';\nexport default templateOnly();\n"],"names":["setComponentTemplate","TEMPLATE","templateOnly"],"mappings":";;;;AACA,eAAe,kBAAkB,CAAC,0LAA0L;;ACA5N,YAAAA,oBAAA,CAAAC,QAAA,EAAeC,YAAY,EAAE,CAAA;;;;"}
@@ -0,0 +1,130 @@
1
+ import Component from '@glimmer/component';
2
+ import { assert } from '@ember/debug';
3
+ import { precompileTemplate } from '@ember/template-compilation';
4
+ import { setComponentTemplate } from '@ember/component';
5
+
6
+ var TEMPLATE = precompileTemplate("{{! @glint-nocheck: not typesafe yet }}\n{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n<div class={{this.classNames}} ...attributes>\n {{yield}}\n</div>");
7
+
8
+ /**
9
+ * Copyright (c) HashiCorp, Inc.
10
+ * SPDX-License-Identifier: MPL-2.0
11
+ */
12
+
13
+ const DEFAULT_LEVEL = 'base';
14
+ const DEFAULT_BACKGROUND = 'neutral-primary';
15
+ const DEFAULT_OVERFLOW = 'visible';
16
+ const LEVELS = ['base', 'mid', 'high'];
17
+ const BACKGROUNDS = ['neutral-primary', 'neutral-secondary'];
18
+ const OVERFLOWS = ['hidden', 'visible'];
19
+ class HdsCardContainerComponent extends Component {
20
+ /**
21
+ * Sets the "elevation" level for the component
22
+ * Accepted values: base, mid, high
23
+ *
24
+ * @param level
25
+ * @type {string}
26
+ * @default 'base'
27
+ */
28
+ get level() {
29
+ let {
30
+ level = DEFAULT_LEVEL
31
+ } = this.args;
32
+ assert(`@level for "Hds::Card::Container" must be one of the following: ${LEVELS.join(', ')}; received: ${level}`, LEVELS.includes(level));
33
+ return level;
34
+ }
35
+
36
+ /**
37
+ * Sets the "elevation" level for the component on ":hover" state
38
+ * Accepted values: base, mid, high
39
+ *
40
+ * @param levelHover
41
+ * @type {string}
42
+ */
43
+ get levelHover() {
44
+ let {
45
+ levelHover
46
+ } = this.args;
47
+ if (levelHover) {
48
+ assert(`@levelHover for "Hds::Card::Container" must be one of the following: ${LEVELS.join(', ')}; received: ${levelHover}`, LEVELS.includes(levelHover));
49
+ }
50
+ return levelHover;
51
+ }
52
+
53
+ /**
54
+ * Sets the "elevation" level for the component on ":active" state
55
+ * Accepted values: base, mid, high
56
+ *
57
+ * @param levelActive
58
+ * @type {string}
59
+ */
60
+ get levelActive() {
61
+ let {
62
+ levelActive
63
+ } = this.args;
64
+ if (levelActive) {
65
+ assert(`@levelActive for "Hds::Card::Container" must be one of the following: ${LEVELS.join(', ')}; received: ${levelActive}`, LEVELS.includes(levelActive));
66
+ }
67
+ return levelActive;
68
+ }
69
+
70
+ /**
71
+ * Sets the background for the component
72
+ * Accepted values: neutral-primary, neutral-secondary
73
+ *
74
+ * @param background
75
+ * @type {string}
76
+ * @default 'base'
77
+ */
78
+ get background() {
79
+ let {
80
+ background = DEFAULT_BACKGROUND
81
+ } = this.args;
82
+ assert(`@background for "Hds::Card::Container" must be one of the following: ${BACKGROUNDS.join(', ')}; received: ${background}`, BACKGROUNDS.includes(background));
83
+ return background;
84
+ }
85
+
86
+ /**
87
+ * Sets the level for the card
88
+ * Accepted values: visible, hidden
89
+ *
90
+ * @param overflow
91
+ * @type {string}
92
+ * @default 'visible'
93
+ */
94
+ get overflow() {
95
+ let {
96
+ overflow = DEFAULT_OVERFLOW
97
+ } = this.args;
98
+ assert(`@overflow for "Hds::Card::Container" must be one of the following: ${OVERFLOWS.join(', ')}; received: ${overflow}`, OVERFLOWS.includes(overflow));
99
+ return overflow;
100
+ }
101
+
102
+ /**
103
+ * Get the class names to apply to the component.
104
+ * @method Card#classNames
105
+ * @return {string} The "class" attribute to apply to the component.
106
+ */
107
+ get classNames() {
108
+ let classes = ['hds-card__container'];
109
+
110
+ // add "elevation" classes based on the @level and @hasBorder arguments
111
+ classes.push(`hds-card__container--level-${this.args.hasBorder ? 'surface' : 'elevation'}-${this.level}`);
112
+ if (this.levelHover) {
113
+ classes.push(`hds-card__container--hover-level-${this.args.hasBorder ? 'surface' : 'elevation'}-${this.levelHover}`);
114
+ }
115
+ if (this.levelActive) {
116
+ classes.push(`hds-card__container--active-level-${this.args.hasBorder ? 'surface' : 'elevation'}-${this.levelActive}`);
117
+ }
118
+
119
+ // add a class based on the @background argument
120
+ classes.push(`hds-card__container--background-${this.background}`);
121
+
122
+ // add a class based on the @overflow argument
123
+ classes.push(`hds-card__container--overflow-${this.overflow}`);
124
+ return classes.join(' ');
125
+ }
126
+ }
127
+ setComponentTemplate(TEMPLATE, HdsCardContainerComponent);
128
+
129
+ export { BACKGROUNDS, DEFAULT_BACKGROUND, DEFAULT_LEVEL, DEFAULT_OVERFLOW, LEVELS, OVERFLOWS, HdsCardContainerComponent as default };
130
+ //# sourceMappingURL=container.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"container.js","sources":["../../../../src/components/hds/card/container.hbs","../../../../src/components/hds/card/container.js"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{! @glint-nocheck: not typesafe yet }}\\n{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n<div class={{this.classNames}} ...attributes>\\n {{yield}}\\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\nexport const DEFAULT_LEVEL = 'base';\nexport const DEFAULT_BACKGROUND = 'neutral-primary';\nexport const DEFAULT_OVERFLOW = 'visible';\nexport const LEVELS = ['base', 'mid', 'high'];\nexport const BACKGROUNDS = ['neutral-primary', 'neutral-secondary'];\nexport const OVERFLOWS = ['hidden', 'visible'];\n\nexport default class HdsCardContainerComponent extends Component {\n /**\n * Sets the \"elevation\" level for the component\n * Accepted values: base, mid, high\n *\n * @param level\n * @type {string}\n * @default 'base'\n */\n get level() {\n let { level = DEFAULT_LEVEL } = this.args;\n\n assert(\n `@level for \"Hds::Card::Container\" must be one of the following: ${LEVELS.join(\n ', '\n )}; received: ${level}`,\n LEVELS.includes(level)\n );\n\n return level;\n }\n\n /**\n * Sets the \"elevation\" level for the component on \":hover\" state\n * Accepted values: base, mid, high\n *\n * @param levelHover\n * @type {string}\n */\n get levelHover() {\n let { levelHover } = this.args;\n\n if (levelHover) {\n assert(\n `@levelHover for \"Hds::Card::Container\" must be one of the following: ${LEVELS.join(\n ', '\n )}; received: ${levelHover}`,\n LEVELS.includes(levelHover)\n );\n }\n\n return levelHover;\n }\n\n /**\n * Sets the \"elevation\" level for the component on \":active\" state\n * Accepted values: base, mid, high\n *\n * @param levelActive\n * @type {string}\n */\n get levelActive() {\n let { levelActive } = this.args;\n\n if (levelActive) {\n assert(\n `@levelActive for \"Hds::Card::Container\" must be one of the following: ${LEVELS.join(\n ', '\n )}; received: ${levelActive}`,\n LEVELS.includes(levelActive)\n );\n }\n\n return levelActive;\n }\n\n /**\n * Sets the background for the component\n * Accepted values: neutral-primary, neutral-secondary\n *\n * @param background\n * @type {string}\n * @default 'base'\n */\n get background() {\n let { background = DEFAULT_BACKGROUND } = this.args;\n\n assert(\n `@background for \"Hds::Card::Container\" must be one of the following: ${BACKGROUNDS.join(\n ', '\n )}; received: ${background}`,\n BACKGROUNDS.includes(background)\n );\n\n return background;\n }\n\n /**\n * Sets the level for the card\n * Accepted values: visible, hidden\n *\n * @param overflow\n * @type {string}\n * @default 'visible'\n */\n get overflow() {\n let { overflow = DEFAULT_OVERFLOW } = this.args;\n\n assert(\n `@overflow for \"Hds::Card::Container\" must be one of the following: ${OVERFLOWS.join(\n ', '\n )}; received: ${overflow}`,\n OVERFLOWS.includes(overflow)\n );\n\n return overflow;\n }\n\n /**\n * Get the class names to apply to the component.\n * @method Card#classNames\n * @return {string} The \"class\" attribute to apply to the component.\n */\n get classNames() {\n let classes = ['hds-card__container'];\n\n // add \"elevation\" classes based on the @level and @hasBorder arguments\n classes.push(\n `hds-card__container--level-${\n this.args.hasBorder ? 'surface' : 'elevation'\n }-${this.level}`\n );\n if (this.levelHover) {\n classes.push(\n `hds-card__container--hover-level-${\n this.args.hasBorder ? 'surface' : 'elevation'\n }-${this.levelHover}`\n );\n }\n if (this.levelActive) {\n classes.push(\n `hds-card__container--active-level-${\n this.args.hasBorder ? 'surface' : 'elevation'\n }-${this.levelActive}`\n );\n }\n\n // add a class based on the @background argument\n classes.push(`hds-card__container--background-${this.background}`);\n\n // add a class based on the @overflow argument\n classes.push(`hds-card__container--overflow-${this.overflow}`);\n\n return classes.join(' ');\n }\n}\n"],"names":["DEFAULT_LEVEL","DEFAULT_BACKGROUND","DEFAULT_OVERFLOW","LEVELS","BACKGROUNDS","OVERFLOWS","HdsCardContainerComponent","Component","level","args","assert","join","includes","levelHover","levelActive","background","overflow","classNames","classes","push","hasBorder","setComponentTemplate","TEMPLATE"],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import templateOnly from '@ember/component/template-only';
2
+ import { precompileTemplate } from '@ember/template-compilation';
3
+ import { setComponentTemplate } from '@ember/component';
4
+
5
+ var TEMPLATE = precompileTemplate("{{! @glint-nocheck: not typesafe yet }}\n{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n\n<Hds::Copy::Button\n class=\"hds-code-block__copy-button\"\n @text=\"Copy\"\n @isIconOnly={{true}}\n @size=\"small\"\n @targetToCopy={{@targetToCopy}}\n ...attributes\n/>");
6
+
7
+ var copyButton = setComponentTemplate(TEMPLATE, templateOnly());
8
+
9
+ export { copyButton as default };
10
+ //# sourceMappingURL=copy-button.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"copy-button.js","sources":["../../../../src/components/hds/code-block/copy-button.hbs","../../../../src/components/hds/code-block/copy-button.js"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{! @glint-nocheck: not typesafe yet }}\\n{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n\\n<Hds::Copy::Button\\n class=\\\"hds-code-block__copy-button\\\"\\n @text=\\\"Copy\\\"\\n @isIconOnly={{true}}\\n @size=\\\"small\\\"\\n @targetToCopy={{@targetToCopy}}\\n ...attributes\\n/>\")","import templateOnly from '@ember/component/template-only';\nexport default templateOnly();\n"],"names":["setComponentTemplate","TEMPLATE","templateOnly"],"mappings":";;;;AACA,eAAe,kBAAkB,CAAC,2SAA2S;;ACA7U,iBAAAA,oBAAA,CAAAC,QAAA,EAAeC,YAAY,EAAE,CAAA;;;;"}
@@ -0,0 +1,10 @@
1
+ import templateOnly from '@ember/component/template-only';
2
+ import { precompileTemplate } from '@ember/template-compilation';
3
+ import { setComponentTemplate } from '@ember/component';
4
+
5
+ var TEMPLATE = precompileTemplate("{{! @glint-nocheck: not typesafe yet }}\n{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n\n<Hds::Text::Body @tag=\"p\" @size=\"100\" class=\"hds-code-block__description\" ...attributes>\n {{yield}}\n</Hds::Text::Body>");
6
+
7
+ var description = setComponentTemplate(TEMPLATE, templateOnly());
8
+
9
+ export { description as default };
10
+ //# sourceMappingURL=description.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"description.js","sources":["../../../../src/components/hds/code-block/description.hbs","../../../../src/components/hds/code-block/description.js"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{! @glint-nocheck: not typesafe yet }}\\n{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n\\n<Hds::Text::Body @tag=\\\"p\\\" @size=\\\"100\\\" class=\\\"hds-code-block__description\\\" ...attributes>\\n {{yield}}\\n</Hds::Text::Body>\")","import templateOnly from '@ember/component/template-only';\nexport default templateOnly();\n"],"names":["setComponentTemplate","TEMPLATE","templateOnly"],"mappings":";;;;AACA,eAAe,kBAAkB,CAAC,0PAA0P;;ACA5R,kBAAAA,oBAAA,CAAAC,QAAA,EAAeC,YAAY,EAAE,CAAA;;;;"}
@@ -0,0 +1,160 @@
1
+ import { a as _applyDecoratedDescriptor, b as _initializerDefineProperty, _ as _defineProperty } from '../../../_rollupPluginBabelHelpers-lqPQKyNs.js';
2
+ import Component from '@glimmer/component';
3
+ import { action } from '@ember/object';
4
+ import { tracked } from '@glimmer/tracking';
5
+ import { assert } from '@ember/debug';
6
+ import { next, schedule } from '@ember/runloop';
7
+ import { htmlSafe } from '@ember/template';
8
+ import { guidFor } from '@ember/object/internals';
9
+ import Prism from 'prismjs';
10
+ import 'prismjs/plugins/line-numbers/prism-line-numbers';
11
+ import 'prismjs/plugins/line-highlight/prism-line-highlight';
12
+ import 'prismjs/components/prism-bash';
13
+ import 'prismjs/components/prism-go';
14
+ import 'prismjs/components/prism-hcl';
15
+ import 'prismjs/components/prism-json';
16
+ import 'prismjs/components/prism-log';
17
+ import 'prismjs/components/prism-ruby';
18
+ import 'prismjs/components/prism-shell-session';
19
+ import 'prismjs/components/prism-yaml';
20
+ import 'prismjs/components/prism-markup-templating';
21
+ import 'prismjs/components/prism-handlebars';
22
+ import { precompileTemplate } from '@ember/template-compilation';
23
+ import { setComponentTemplate } from '@ember/component';
24
+
25
+ var TEMPLATE = precompileTemplate("{{! @glint-nocheck: not typesafe yet }}\n{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n\n<div class={{this.classNames}} ...attributes>\n <div class=\"hds-code-block__header\">\n {{~yield (hash Title=(component \"hds/code-block/title\"))~}}\n {{~yield (hash Description=(component \"hds/code-block/description\"))~}}\n </div>\n <div class=\"hds-code-block__body\">\n {{! content within pre tag is whitespace-sensitive; do not add new lines! }}\n <pre\n class=\"hds-code-block__code\"\n {{style maxHeight=@maxHeight}}\n data-line={{@highlightLines}}\n id={{this.preCodeId}}\n tabindex=\"0\"\n ><code {{did-insert this.setPrismCode}} {{did-update this.setPrismCode this.code @language}}>\n {{~this.prismCode~}}\n </code></pre>\n\n {{#if @hasCopyButton}}\n <Hds::CodeBlock::CopyButton @targetToCopy=\"#{{this.preCodeId}}\" aria-describedby={{this.preCodeId}} />\n {{/if}}\n </div>\n</div>");
26
+
27
+ var _class, _descriptor;
28
+ let HdsCodeBlockIndexComponent = (_class = class HdsCodeBlockIndexComponent extends Component {
29
+ constructor(...args) {
30
+ super(...args);
31
+ _initializerDefineProperty(this, "prismCode", _descriptor, this);
32
+ /**
33
+ * Generates a unique ID for the code content
34
+ *
35
+ * @param preCodeId
36
+ */
37
+ _defineProperty(this, "preCodeId", 'pre-code-' + guidFor(this));
38
+ }
39
+ /**
40
+ * @param code
41
+ * @type {string}
42
+ * @description code text content for the CodeBlock
43
+ */
44
+ get code() {
45
+ const code = this.args.value;
46
+ assert('@code for "Hds::CodeBlock" must have a valid value', code !== undefined);
47
+ if (Prism?.plugins?.NormalizeWhitespace) {
48
+ return Prism.plugins.NormalizeWhitespace.normalize(code);
49
+ }
50
+ return code;
51
+ }
52
+
53
+ /**
54
+ * @param language
55
+ * @type {string}
56
+ * @default undefined
57
+ * @description name of coding language used within CodeBlock for syntax highlighting
58
+ */
59
+ get language() {
60
+ return this.args.language ?? undefined;
61
+ }
62
+
63
+ /**
64
+ * @param hasLineNumbers
65
+ * @type {boolean}
66
+ * @default true
67
+ * @description Displays line numbers if true
68
+ */
69
+ get hasLineNumbers() {
70
+ return this.args.hasLineNumbers ?? true;
71
+ }
72
+
73
+ /**
74
+ * @param isStandalone
75
+ * @type {boolean}
76
+ * @default true
77
+ * @description Make CodeBlock container corners appear rounded
78
+ */
79
+ get isStandalone() {
80
+ return this.args.isStandalone ?? true;
81
+ }
82
+
83
+ /**
84
+ * @param hasLineWrapping
85
+ * @type {boolean}
86
+ * @default false
87
+ * @description Make text content wrap on multiple lines
88
+ */
89
+ get hasLineWrapping() {
90
+ return this.args.hasLineWrapping ?? false;
91
+ }
92
+ setPrismCode(element) {
93
+ const code = this.code;
94
+ const language = this.language;
95
+ const grammar = Prism.languages[language];
96
+ if (code) {
97
+ next(() => {
98
+ if (language && grammar) {
99
+ this.prismCode = htmlSafe(Prism.highlight(code, grammar, language));
100
+ } else {
101
+ this.prismCode = htmlSafe(Prism.util.encode(code));
102
+ }
103
+
104
+ // Force prism-line-numbers plugin initialization, required for Prism.highlight usage
105
+ // See https://github.com/PrismJS/prism/issues/1234
106
+ Prism.hooks.run('complete', {
107
+ code,
108
+ element
109
+ });
110
+
111
+ // Force prism-line-highlight plugin initialization
112
+ // Context: https://github.com/hashicorp/design-system/pull/1749#discussion_r1374288785
113
+ if (this.args.highlightLines) {
114
+ // we need to delay re-evaluating the context for prism-line-highlight for as much as possible, and `afterRender` is the 'latest' we can use in the component lifecycle
115
+ schedule('afterRender', () => {
116
+ // we piggy-back on the plugin's `resize` event listener to trigger a new call of the `highlightLines` function: https://github.com/PrismJS/prism/blob/master/plugins/line-highlight/prism-line-highlight.js#L337
117
+ if (window) window.dispatchEvent(new Event('resize'));
118
+ });
119
+ }
120
+ });
121
+ }
122
+ }
123
+
124
+ /**
125
+ * Get the class names to apply to the component.
126
+ * @method classNames
127
+ * @return {string} The "class" attribute to apply to the component.
128
+ */
129
+ get classNames() {
130
+ // Currently there is only one theme so the class name is hard-coded.
131
+ // In the future, additional themes such as a "light" theme could be added.
132
+ let classes = ['hds-code-block', 'hds-code-block--theme-dark'];
133
+ if (this.language) {
134
+ classes.push(`language-${this.language}`);
135
+ }
136
+ if (this.isStandalone === true) {
137
+ classes.push('hds-code-block--is-standalone');
138
+ }
139
+ if (this.hasLineWrapping === true) {
140
+ classes.push('hds-code-block--has-line-wrapping');
141
+ }
142
+
143
+ // Note: Prism.js is using the specific class name "line-numbers" to determine implementation of line numbers in the UI
144
+ if (this.hasLineNumbers || this.args.highlightLines) {
145
+ classes.push('line-numbers');
146
+ }
147
+ return classes.join(' ');
148
+ }
149
+ }, (_descriptor = _applyDecoratedDescriptor(_class.prototype, "prismCode", [tracked], {
150
+ configurable: true,
151
+ enumerable: true,
152
+ writable: true,
153
+ initializer: function () {
154
+ return '';
155
+ }
156
+ }), _applyDecoratedDescriptor(_class.prototype, "setPrismCode", [action], Object.getOwnPropertyDescriptor(_class.prototype, "setPrismCode"), _class.prototype)), _class);
157
+ setComponentTemplate(TEMPLATE, HdsCodeBlockIndexComponent);
158
+
159
+ export { HdsCodeBlockIndexComponent as default };
160
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/hds/code-block/index.hbs","../../../../src/components/hds/code-block/index.js"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{! @glint-nocheck: not typesafe yet }}\\n{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n\\n<div class={{this.classNames}} ...attributes>\\n <div class=\\\"hds-code-block__header\\\">\\n {{~yield (hash Title=(component \\\"hds/code-block/title\\\"))~}}\\n {{~yield (hash Description=(component \\\"hds/code-block/description\\\"))~}}\\n </div>\\n <div class=\\\"hds-code-block__body\\\">\\n {{! content within pre tag is whitespace-sensitive; do not add new lines! }}\\n <pre\\n class=\\\"hds-code-block__code\\\"\\n {{style maxHeight=@maxHeight}}\\n data-line={{@highlightLines}}\\n id={{this.preCodeId}}\\n tabindex=\\\"0\\\"\\n ><code {{did-insert this.setPrismCode}} {{did-update this.setPrismCode this.code @language}}>\\n {{~this.prismCode~}}\\n </code></pre>\\n\\n {{#if @hasCopyButton}}\\n <Hds::CodeBlock::CopyButton @targetToCopy=\\\"#{{this.preCodeId}}\\\" aria-describedby={{this.preCodeId}} />\\n {{/if}}\\n </div>\\n</div>\")","/**\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 { assert } from '@ember/debug';\nimport { next, schedule } from '@ember/runloop';\nimport { htmlSafe } from '@ember/template';\nimport { guidFor } from '@ember/object/internals';\n\nimport Prism from 'prismjs';\n\nimport 'prismjs/plugins/line-numbers/prism-line-numbers';\nimport 'prismjs/plugins/line-highlight/prism-line-highlight';\n\nimport 'prismjs/components/prism-bash';\nimport 'prismjs/components/prism-go';\nimport 'prismjs/components/prism-hcl';\nimport 'prismjs/components/prism-json';\nimport 'prismjs/components/prism-log';\nimport 'prismjs/components/prism-ruby';\nimport 'prismjs/components/prism-shell-session';\nimport 'prismjs/components/prism-yaml';\n\n// These imports are required to overcome a global variable clash in Helios website\n// where language import are overriden by the Prism instance in `CodeBlock`\n// Note that `prism-handlebars` is dependant on `prism-markup-templating`\nimport 'prismjs/components/prism-markup-templating';\nimport 'prismjs/components/prism-handlebars';\n\nexport default class HdsCodeBlockIndexComponent extends Component {\n @tracked prismCode = '';\n\n /**\n * Generates a unique ID for the code content\n *\n * @param preCodeId\n */\n preCodeId = 'pre-code-' + guidFor(this);\n\n /**\n * @param code\n * @type {string}\n * @description code text content for the CodeBlock\n */\n get code() {\n const code = this.args.value;\n\n assert(\n '@code for \"Hds::CodeBlock\" must have a valid value',\n code !== undefined\n );\n\n if (Prism?.plugins?.NormalizeWhitespace) {\n return Prism.plugins.NormalizeWhitespace.normalize(code);\n }\n\n return code;\n }\n\n /**\n * @param language\n * @type {string}\n * @default undefined\n * @description name of coding language used within CodeBlock for syntax highlighting\n */\n get language() {\n return this.args.language ?? undefined;\n }\n\n /**\n * @param hasLineNumbers\n * @type {boolean}\n * @default true\n * @description Displays line numbers if true\n */\n get hasLineNumbers() {\n return this.args.hasLineNumbers ?? true;\n }\n\n /**\n * @param isStandalone\n * @type {boolean}\n * @default true\n * @description Make CodeBlock container corners appear rounded\n */\n get isStandalone() {\n return this.args.isStandalone ?? true;\n }\n\n /**\n * @param hasLineWrapping\n * @type {boolean}\n * @default false\n * @description Make text content wrap on multiple lines\n */\n get hasLineWrapping() {\n return this.args.hasLineWrapping ?? false;\n }\n\n @action\n setPrismCode(element) {\n const code = this.code;\n const language = this.language;\n const grammar = Prism.languages[language];\n\n if (code) {\n next(() => {\n if (language && grammar) {\n this.prismCode = htmlSafe(Prism.highlight(code, grammar, language));\n } else {\n this.prismCode = htmlSafe(Prism.util.encode(code));\n }\n\n // Force prism-line-numbers plugin initialization, required for Prism.highlight usage\n // See https://github.com/PrismJS/prism/issues/1234\n Prism.hooks.run('complete', {\n code,\n element,\n });\n\n // Force prism-line-highlight plugin initialization\n // Context: https://github.com/hashicorp/design-system/pull/1749#discussion_r1374288785\n if (this.args.highlightLines) {\n // we need to delay re-evaluating the context for prism-line-highlight for as much as possible, and `afterRender` is the 'latest' we can use in the component lifecycle\n schedule('afterRender', () => {\n // we piggy-back on the plugin's `resize` event listener to trigger a new call of the `highlightLines` function: https://github.com/PrismJS/prism/blob/master/plugins/line-highlight/prism-line-highlight.js#L337\n if (window) window.dispatchEvent(new Event('resize'));\n });\n }\n });\n }\n }\n\n /**\n * Get the class names to apply to the component.\n * @method classNames\n * @return {string} The \"class\" attribute to apply to the component.\n */\n get classNames() {\n // Currently there is only one theme so the class name is hard-coded.\n // In the future, additional themes such as a \"light\" theme could be added.\n let classes = ['hds-code-block', 'hds-code-block--theme-dark'];\n\n if (this.language) {\n classes.push(`language-${this.language}`);\n }\n\n if (this.isStandalone === true) {\n classes.push('hds-code-block--is-standalone');\n }\n\n if (this.hasLineWrapping === true) {\n classes.push('hds-code-block--has-line-wrapping');\n }\n\n // Note: Prism.js is using the specific class name \"line-numbers\" to determine implementation of line numbers in the UI\n if (this.hasLineNumbers || this.args.highlightLines) {\n classes.push('line-numbers');\n }\n\n return classes.join(' ');\n }\n}\n"],"names":["HdsCodeBlockIndexComponent","_class","Component","constructor","args","_initializerDefineProperty","_descriptor","_defineProperty","guidFor","code","value","assert","undefined","Prism","plugins","NormalizeWhitespace","normalize","language","hasLineNumbers","isStandalone","hasLineWrapping","setPrismCode","element","grammar","languages","next","prismCode","htmlSafe","highlight","util","encode","hooks","run","highlightLines","schedule","window","dispatchEvent","Event","classNames","classes","push","join","_applyDecoratedDescriptor","prototype","tracked","configurable","enumerable","writable","initializer","action","Object","getOwnPropertyDescriptor","setComponentTemplate","TEMPLATE"],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import templateOnly from '@ember/component/template-only';
2
+ import { precompileTemplate } from '@ember/template-compilation';
3
+ import { setComponentTemplate } from '@ember/component';
4
+
5
+ var TEMPLATE = precompileTemplate("{{! @glint-nocheck: not typesafe yet }}\n{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n\n<Hds::Text::Body @size=\"200\" @tag=\"p\" @weight=\"semibold\" class=\"hds-code-block__title\" ...attributes>\n {{yield}}\n</Hds::Text::Body>");
6
+
7
+ var title = setComponentTemplate(TEMPLATE, templateOnly());
8
+
9
+ export { title as default };
10
+ //# sourceMappingURL=title.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"title.js","sources":["../../../../src/components/hds/code-block/title.hbs","../../../../src/components/hds/code-block/title.js"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{! @glint-nocheck: not typesafe yet }}\\n{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n\\n<Hds::Text::Body @size=\\\"200\\\" @tag=\\\"p\\\" @weight=\\\"semibold\\\" class=\\\"hds-code-block__title\\\" ...attributes>\\n {{yield}}\\n</Hds::Text::Body>\")","import templateOnly from '@ember/component/template-only';\nexport default templateOnly();\n"],"names":["setComponentTemplate","TEMPLATE","templateOnly"],"mappings":";;;;AACA,eAAe,kBAAkB,CAAC,yQAAyQ;;ACA3S,YAAAA,oBAAA,CAAAC,QAAA,EAAeC,YAAY,EAAE,CAAA;;;;"}