@hashicorp/design-system-components 3.6.0 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (967) 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 +116 -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 +156 -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 +196 -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/utils/hds-get-element-id.js +22 -0
  481. package/dist/utils/hds-get-element-id.js.map +1 -0
  482. package/dist/utils/hds-set-aria-described-by.js +17 -0
  483. package/dist/utils/hds-set-aria-described-by.js.map +1 -0
  484. package/package.json +196 -62
  485. package/.stylelintignore +0 -26
  486. package/CHANGELOG-FIGMA-COMPONENTS.md +0 -191
  487. package/CHANGELOG-FIGMA-FOUNDATIONS.md +0 -13
  488. package/CHANGELOG.md +0 -1609
  489. package/HOW-TO-TEST-A-COMPONENT-IN-CLOUD-UI.md +0 -100
  490. package/NEW-COMPONENT-CHECKLIST.md +0 -166
  491. package/RELEASE.md +0 -40
  492. package/addon/components/hds/accordion/index.hbs +0 -8
  493. package/addon/components/hds/accordion/item/button.hbs +0 -16
  494. package/addon/components/hds/accordion/item/button.js +0 -31
  495. package/addon/components/hds/accordion/item/index.hbs +0 -41
  496. package/addon/components/hds/accordion/item/index.js +0 -58
  497. package/addon/components/hds/alert/description.hbs +0 -5
  498. package/addon/components/hds/alert/index.hbs +0 -38
  499. package/addon/components/hds/alert/index.js +0 -164
  500. package/addon/components/hds/alert/title.hbs +0 -5
  501. package/addon/components/hds/app-footer/copyright.hbs +0 -9
  502. package/addon/components/hds/app-footer/copyright.js +0 -18
  503. package/addon/components/hds/app-footer/index.hbs +0 -20
  504. package/addon/components/hds/app-footer/index.js +0 -41
  505. package/addon/components/hds/app-footer/item.hbs +0 -8
  506. package/addon/components/hds/app-footer/legal-links.hbs +0 -14
  507. package/addon/components/hds/app-footer/legal-links.js +0 -67
  508. package/addon/components/hds/app-footer/link.hbs +0 -22
  509. package/addon/components/hds/app-footer/status-link.hbs +0 -20
  510. package/addon/components/hds/app-footer/status-link.js +0 -121
  511. package/addon/components/hds/app-frame/index.hbs +0 -24
  512. package/addon/components/hds/app-frame/index.js +0 -52
  513. package/addon/components/hds/app-frame/parts/footer.hbs +0 -7
  514. package/addon/components/hds/app-frame/parts/header.hbs +0 -7
  515. package/addon/components/hds/app-frame/parts/main.hbs +0 -7
  516. package/addon/components/hds/app-frame/parts/modals.hbs +0 -6
  517. package/addon/components/hds/app-frame/parts/sidebar.hbs +0 -7
  518. package/addon/components/hds/application-state/body.hbs +0 -13
  519. package/addon/components/hds/application-state/footer.hbs +0 -7
  520. package/addon/components/hds/application-state/footer.js +0 -35
  521. package/addon/components/hds/application-state/header.hbs +0 -20
  522. package/addon/components/hds/application-state/index.hbs +0 -13
  523. package/addon/components/hds/badge/index.hbs +0 -18
  524. package/addon/components/hds/badge/index.js +0 -146
  525. package/addon/components/hds/badge-count/index.hbs +0 -7
  526. package/addon/components/hds/badge-count/index.js +0 -99
  527. package/addon/components/hds/breadcrumb/index.hbs +0 -9
  528. package/addon/components/hds/breadcrumb/index.js +0 -59
  529. package/addon/components/hds/breadcrumb/item.hbs +0 -50
  530. package/addon/components/hds/breadcrumb/item.js +0 -55
  531. package/addon/components/hds/breadcrumb/truncation.hbs +0 -26
  532. package/addon/components/hds/breadcrumb/truncation.js +0 -17
  533. package/addon/components/hds/button/index.hbs +0 -45
  534. package/addon/components/hds/button/index.ts +0 -199
  535. package/addon/components/hds/button-set/index.hbs +0 -7
  536. package/addon/components/hds/card/container.hbs +0 -7
  537. package/addon/components/hds/card/container.js +0 -161
  538. package/addon/components/hds/code-block/copy-button.hbs +0 -13
  539. package/addon/components/hds/code-block/description.hbs +0 -8
  540. package/addon/components/hds/code-block/index.hbs +0 -27
  541. package/addon/components/hds/code-block/index.js +0 -167
  542. package/addon/components/hds/code-block/title.hbs +0 -8
  543. package/addon/components/hds/copy/button/index.hbs +0 -16
  544. package/addon/components/hds/copy/button/index.js +0 -103
  545. package/addon/components/hds/copy/snippet/index.hbs +0 -15
  546. package/addon/components/hds/copy/snippet/index.js +0 -135
  547. package/addon/components/hds/disclosure-primitive/index.hbs +0 -14
  548. package/addon/components/hds/disclosure-primitive/index.js +0 -30
  549. package/addon/components/hds/dismiss-button/index.hbs +0 -7
  550. package/addon/components/hds/dismiss-button/index.js +0 -17
  551. package/addon/components/hds/dropdown/footer.hbs +0 -8
  552. package/addon/components/hds/dropdown/header.hbs +0 -8
  553. package/addon/components/hds/dropdown/index.hbs +0 -36
  554. package/addon/components/hds/dropdown/index.js +0 -80
  555. package/addon/components/hds/dropdown/list-item/checkbox.hbs +0 -20
  556. package/addon/components/hds/dropdown/list-item/checkbox.js +0 -16
  557. package/addon/components/hds/dropdown/list-item/checkmark.hbs +0 -46
  558. package/addon/components/hds/dropdown/list-item/checkmark.js +0 -28
  559. package/addon/components/hds/dropdown/list-item/copy-item.hbs +0 -16
  560. package/addon/components/hds/dropdown/list-item/copy-item.js +0 -51
  561. package/addon/components/hds/dropdown/list-item/description.hbs +0 -14
  562. package/addon/components/hds/dropdown/list-item/description.js +0 -25
  563. package/addon/components/hds/dropdown/list-item/generic.hbs +0 -7
  564. package/addon/components/hds/dropdown/list-item/interactive.hbs +0 -37
  565. package/addon/components/hds/dropdown/list-item/interactive.js +0 -64
  566. package/addon/components/hds/dropdown/list-item/radio.hbs +0 -25
  567. package/addon/components/hds/dropdown/list-item/radio.js +0 -16
  568. package/addon/components/hds/dropdown/list-item/separator.hbs +0 -10
  569. package/addon/components/hds/dropdown/list-item/title.hbs +0 -14
  570. package/addon/components/hds/dropdown/list-item/title.js +0 -25
  571. package/addon/components/hds/dropdown/toggle/button.hbs +0 -38
  572. package/addon/components/hds/dropdown/toggle/button.js +0 -134
  573. package/addon/components/hds/dropdown/toggle/chevron.hbs +0 -8
  574. package/addon/components/hds/dropdown/toggle/icon.hbs +0 -23
  575. package/addon/components/hds/dropdown/toggle/icon.js +0 -119
  576. package/addon/components/hds/flyout/body.hbs +0 -7
  577. package/addon/components/hds/flyout/description.hbs +0 -7
  578. package/addon/components/hds/flyout/footer.hbs +0 -7
  579. package/addon/components/hds/flyout/header.hbs +0 -18
  580. package/addon/components/hds/flyout/index.hbs +0 -20
  581. package/addon/components/hds/flyout/index.js +0 -168
  582. package/addon/components/hds/form/character-count/index.hbs +0 -28
  583. package/addon/components/hds/form/character-count/index.js +0 -178
  584. package/addon/components/hds/form/checkbox/base.hbs +0 -5
  585. package/addon/components/hds/form/checkbox/field.hbs +0 -24
  586. package/addon/components/hds/form/checkbox/group.hbs +0 -29
  587. package/addon/components/hds/form/error/index.hbs +0 -10
  588. package/addon/components/hds/form/error/index.js +0 -58
  589. package/addon/components/hds/form/error/message.hbs +0 -7
  590. package/addon/components/hds/form/field/index.hbs +0 -47
  591. package/addon/components/hds/form/field/index.js +0 -97
  592. package/addon/components/hds/form/fieldset/index.hbs +0 -33
  593. package/addon/components/hds/form/fieldset/index.js +0 -76
  594. package/addon/components/hds/form/file-input/base.hbs +0 -6
  595. package/addon/components/hds/form/file-input/field.hbs +0 -24
  596. package/addon/components/hds/form/helper-text/index.hbs +0 -15
  597. package/addon/components/hds/form/helper-text/index.js +0 -58
  598. package/addon/components/hds/form/indicator/index.hbs +0 -10
  599. package/addon/components/hds/form/indicator/index.js +0 -24
  600. package/addon/components/hds/form/label/index.hbs +0 -8
  601. package/addon/components/hds/form/label/index.js +0 -29
  602. package/addon/components/hds/form/legend/index.hbs +0 -8
  603. package/addon/components/hds/form/legend/index.js +0 -29
  604. package/addon/components/hds/form/masked-input/base.hbs +0 -40
  605. package/addon/components/hds/form/masked-input/base.js +0 -85
  606. package/addon/components/hds/form/masked-input/field.hbs +0 -33
  607. package/addon/components/hds/form/radio/base.hbs +0 -5
  608. package/addon/components/hds/form/radio/field.hbs +0 -24
  609. package/addon/components/hds/form/radio/group.hbs +0 -29
  610. package/addon/components/hds/form/radio-card/description.hbs +0 -10
  611. package/addon/components/hds/form/radio-card/group.hbs +0 -30
  612. package/addon/components/hds/form/radio-card/index.hbs +0 -24
  613. package/addon/components/hds/form/radio-card/index.js +0 -100
  614. package/addon/components/hds/form/radio-card/label.hbs +0 -11
  615. package/addon/components/hds/form/select/base.hbs +0 -7
  616. package/addon/components/hds/form/select/base.js +0 -27
  617. package/addon/components/hds/form/select/field.hbs +0 -30
  618. package/addon/components/hds/form/text-input/base.hbs +0 -5
  619. package/addon/components/hds/form/text-input/base.js +0 -72
  620. package/addon/components/hds/form/text-input/field.hbs +0 -41
  621. package/addon/components/hds/form/text-input/field.js +0 -59
  622. package/addon/components/hds/form/textarea/base.hbs +0 -6
  623. package/addon/components/hds/form/textarea/base.js +0 -27
  624. package/addon/components/hds/form/textarea/field.hbs +0 -28
  625. package/addon/components/hds/form/toggle/base.hbs +0 -8
  626. package/addon/components/hds/form/toggle/field.hbs +0 -23
  627. package/addon/components/hds/form/toggle/group.hbs +0 -21
  628. package/addon/components/hds/form/visibility-toggle/index.hbs +0 -8
  629. package/addon/components/hds/icon-tile/index.hbs +0 -23
  630. package/addon/components/hds/icon-tile/index.js +0 -189
  631. package/addon/components/hds/interactive/index.hbs +0 -32
  632. package/addon/components/hds/interactive/index.ts +0 -63
  633. package/addon/components/hds/link/inline.hbs +0 -22
  634. package/addon/components/hds/link/inline.js +0 -76
  635. package/addon/components/hds/link/standalone.hbs +0 -28
  636. package/addon/components/hds/link/standalone.js +0 -147
  637. package/addon/components/hds/menu-primitive/index.hbs +0 -22
  638. package/addon/components/hds/menu-primitive/index.js +0 -59
  639. package/addon/components/hds/modal/body.hbs +0 -7
  640. package/addon/components/hds/modal/footer.hbs +0 -7
  641. package/addon/components/hds/modal/header.hbs +0 -18
  642. package/addon/components/hds/modal/index.hbs +0 -19
  643. package/addon/components/hds/modal/index.js +0 -209
  644. package/addon/components/hds/page-header/actions.hbs +0 -5
  645. package/addon/components/hds/page-header/badges.hbs +0 -5
  646. package/addon/components/hds/page-header/description.hbs +0 -11
  647. package/addon/components/hds/page-header/index.hbs +0 -28
  648. package/addon/components/hds/page-header/subtitle.hbs +0 -11
  649. package/addon/components/hds/page-header/title.hbs +0 -11
  650. package/addon/components/hds/pagination/compact/index.hbs +0 -39
  651. package/addon/components/hds/pagination/compact/index.js +0 -163
  652. package/addon/components/hds/pagination/info/index.hbs +0 -11
  653. package/addon/components/hds/pagination/info/index.js +0 -17
  654. package/addon/components/hds/pagination/nav/arrow.hbs +0 -44
  655. package/addon/components/hds/pagination/nav/arrow.js +0 -77
  656. package/addon/components/hds/pagination/nav/ellipsis.hbs +0 -5
  657. package/addon/components/hds/pagination/nav/number.hbs +0 -17
  658. package/addon/components/hds/pagination/nav/number.js +0 -45
  659. package/addon/components/hds/pagination/numbered/index.hbs +0 -70
  660. package/addon/components/hds/pagination/numbered/index.js +0 -341
  661. package/addon/components/hds/pagination/size-selector/index.hbs +0 -16
  662. package/addon/components/hds/pagination/size-selector/index.js +0 -73
  663. package/addon/components/hds/reveal/index.hbs +0 -21
  664. package/addon/components/hds/reveal/index.js +0 -33
  665. package/addon/components/hds/reveal/toggle/button.hbs +0 -13
  666. package/addon/components/hds/reveal/toggle/button.js +0 -24
  667. package/addon/components/hds/segmented-group/index.hbs +0 -15
  668. package/addon/components/hds/separator/index.hbs +0 -5
  669. package/addon/components/hds/separator/index.js +0 -47
  670. package/addon/components/hds/side-nav/base.hbs +0 -19
  671. package/addon/components/hds/side-nav/header/home-link.hbs +0 -20
  672. package/addon/components/hds/side-nav/header/home-link.js +0 -25
  673. package/addon/components/hds/side-nav/header/icon-button.hbs +0 -20
  674. package/addon/components/hds/side-nav/header/icon-button.js +0 -25
  675. package/addon/components/hds/side-nav/header/index.hbs +0 -13
  676. package/addon/components/hds/side-nav/index.hbs +0 -42
  677. package/addon/components/hds/side-nav/index.js +0 -147
  678. package/addon/components/hds/side-nav/list/back-link.hbs +0 -24
  679. package/addon/components/hds/side-nav/list/index.hbs +0 -19
  680. package/addon/components/hds/side-nav/list/item.hbs +0 -8
  681. package/addon/components/hds/side-nav/list/link.hbs +0 -50
  682. package/addon/components/hds/side-nav/list/title.hbs +0 -8
  683. package/addon/components/hds/side-nav/portal/index.hbs +0 -12
  684. package/addon/components/hds/side-nav/portal/target.hbs +0 -14
  685. package/addon/components/hds/side-nav/portal/target.js +0 -162
  686. package/addon/components/hds/side-nav/toggle-button.hbs +0 -7
  687. package/addon/components/hds/stepper/step/indicator.hbs +0 -28
  688. package/addon/components/hds/stepper/step/indicator.js +0 -59
  689. package/addon/components/hds/stepper/task/indicator.hbs +0 -7
  690. package/addon/components/hds/stepper/task/indicator.js +0 -74
  691. package/addon/components/hds/table/index.hbs +0 -78
  692. package/addon/components/hds/table/index.js +0 -182
  693. package/addon/components/hds/table/td.hbs +0 -7
  694. package/addon/components/hds/table/td.js +0 -50
  695. package/addon/components/hds/table/th-sort.hbs +0 -18
  696. package/addon/components/hds/table/th-sort.js +0 -94
  697. package/addon/components/hds/table/th.hbs +0 -11
  698. package/addon/components/hds/table/th.js +0 -50
  699. package/addon/components/hds/table/tr.hbs +0 -7
  700. package/addon/components/hds/tabs/index.hbs +0 -47
  701. package/addon/components/hds/tabs/index.js +0 -211
  702. package/addon/components/hds/tabs/panel.hbs +0 -16
  703. package/addon/components/hds/tabs/panel.js +0 -59
  704. package/addon/components/hds/tabs/tab.hbs +0 -31
  705. package/addon/components/hds/tabs/tab.js +0 -98
  706. package/addon/components/hds/tag/index.hbs +0 -30
  707. package/addon/components/hds/tag/index.js +0 -91
  708. package/addon/components/hds/text/body.hbs +0 -13
  709. package/addon/components/hds/text/body.js +0 -73
  710. package/addon/components/hds/text/code.hbs +0 -13
  711. package/addon/components/hds/text/code.js +0 -73
  712. package/addon/components/hds/text/display.hbs +0 -13
  713. package/addon/components/hds/text/display.js +0 -85
  714. package/addon/components/hds/text/index.hbs +0 -10
  715. package/addon/components/hds/text/index.js +0 -146
  716. package/addon/components/hds/toast/index.hbs +0 -17
  717. package/addon/components/hds/tooltip-button/index.hbs +0 -11
  718. package/addon/components/hds/tooltip-button/index.js +0 -86
  719. package/addon/components/hds/yield/index.hbs +0 -6
  720. package/addon/helpers/hds-link-to-models.js +0 -35
  721. package/addon/helpers/hds-link-to-query.js +0 -26
  722. package/addon/modifiers/hds-clipboard.js +0 -163
  723. package/addon/modifiers/hds-tooltip.js +0 -164
  724. package/addon/template-registry.ts +0 -12
  725. package/addon/utils/hds-get-element-id.js +0 -19
  726. package/addon/utils/hds-set-aria-described-by.js +0 -15
  727. package/app/components/hds/accordion/index.js +0 -6
  728. package/app/components/hds/accordion/item/button.js +0 -6
  729. package/app/components/hds/accordion/item/index.js +0 -6
  730. package/app/components/hds/alert/description.js +0 -6
  731. package/app/components/hds/alert/index.js +0 -6
  732. package/app/components/hds/alert/title.js +0 -6
  733. package/app/components/hds/app-footer/copyright.js +0 -6
  734. package/app/components/hds/app-footer/index.js +0 -6
  735. package/app/components/hds/app-footer/item.js +0 -6
  736. package/app/components/hds/app-footer/legal-links.js +0 -6
  737. package/app/components/hds/app-footer/link.js +0 -6
  738. package/app/components/hds/app-footer/status-link.js +0 -6
  739. package/app/components/hds/app-frame/index.js +0 -6
  740. package/app/components/hds/app-frame/parts/footer.js +0 -6
  741. package/app/components/hds/app-frame/parts/header.js +0 -6
  742. package/app/components/hds/app-frame/parts/main.js +0 -6
  743. package/app/components/hds/app-frame/parts/modals.js +0 -6
  744. package/app/components/hds/app-frame/parts/sidebar.js +0 -6
  745. package/app/components/hds/application-state/body.js +0 -6
  746. package/app/components/hds/application-state/footer.js +0 -6
  747. package/app/components/hds/application-state/header.js +0 -6
  748. package/app/components/hds/application-state/index.js +0 -6
  749. package/app/components/hds/badge/index.js +0 -6
  750. package/app/components/hds/badge-count/index.js +0 -6
  751. package/app/components/hds/breadcrumb/index.js +0 -6
  752. package/app/components/hds/breadcrumb/item.js +0 -6
  753. package/app/components/hds/breadcrumb/truncation.js +0 -6
  754. package/app/components/hds/button/index.js +0 -6
  755. package/app/components/hds/button-set/index.js +0 -6
  756. package/app/components/hds/card/container.js +0 -6
  757. package/app/components/hds/code-block/copy-button.js +0 -6
  758. package/app/components/hds/code-block/description.js +0 -6
  759. package/app/components/hds/code-block/index.js +0 -6
  760. package/app/components/hds/code-block/title.js +0 -6
  761. package/app/components/hds/copy/button/index.js +0 -6
  762. package/app/components/hds/copy/snippet/index.js +0 -6
  763. package/app/components/hds/disclosure-primitive/index.js +0 -6
  764. package/app/components/hds/dismiss-button/index.js +0 -6
  765. package/app/components/hds/dropdown/footer.js +0 -6
  766. package/app/components/hds/dropdown/header.js +0 -6
  767. package/app/components/hds/dropdown/index.js +0 -6
  768. package/app/components/hds/dropdown/list-item/checkbox.js +0 -6
  769. package/app/components/hds/dropdown/list-item/checkmark.js +0 -6
  770. package/app/components/hds/dropdown/list-item/copy-item.js +0 -6
  771. package/app/components/hds/dropdown/list-item/description.js +0 -6
  772. package/app/components/hds/dropdown/list-item/generic.js +0 -6
  773. package/app/components/hds/dropdown/list-item/interactive.js +0 -6
  774. package/app/components/hds/dropdown/list-item/radio.js +0 -6
  775. package/app/components/hds/dropdown/list-item/separator.js +0 -6
  776. package/app/components/hds/dropdown/list-item/title.js +0 -6
  777. package/app/components/hds/dropdown/toggle/button.js +0 -6
  778. package/app/components/hds/dropdown/toggle/chevron.js +0 -6
  779. package/app/components/hds/dropdown/toggle/icon.js +0 -6
  780. package/app/components/hds/flyout/body.js +0 -6
  781. package/app/components/hds/flyout/description.js +0 -6
  782. package/app/components/hds/flyout/footer.js +0 -6
  783. package/app/components/hds/flyout/header.js +0 -6
  784. package/app/components/hds/flyout/index.js +0 -6
  785. package/app/components/hds/form/character-count/index.js +0 -6
  786. package/app/components/hds/form/checkbox/base.js +0 -6
  787. package/app/components/hds/form/checkbox/field.js +0 -6
  788. package/app/components/hds/form/checkbox/group.js +0 -6
  789. package/app/components/hds/form/error/index.js +0 -6
  790. package/app/components/hds/form/error/message.js +0 -6
  791. package/app/components/hds/form/field/index.js +0 -6
  792. package/app/components/hds/form/fieldset/index.js +0 -6
  793. package/app/components/hds/form/file-input/base.js +0 -6
  794. package/app/components/hds/form/file-input/field.js +0 -6
  795. package/app/components/hds/form/helper-text/index.js +0 -6
  796. package/app/components/hds/form/indicator/index.js +0 -6
  797. package/app/components/hds/form/label/index.js +0 -6
  798. package/app/components/hds/form/legend/index.js +0 -6
  799. package/app/components/hds/form/masked-input/base.js +0 -6
  800. package/app/components/hds/form/masked-input/field.js +0 -6
  801. package/app/components/hds/form/radio/base.js +0 -6
  802. package/app/components/hds/form/radio/field.js +0 -6
  803. package/app/components/hds/form/radio/group.js +0 -6
  804. package/app/components/hds/form/radio-card/description.js +0 -6
  805. package/app/components/hds/form/radio-card/group.js +0 -6
  806. package/app/components/hds/form/radio-card/index.js +0 -6
  807. package/app/components/hds/form/radio-card/label.js +0 -6
  808. package/app/components/hds/form/select/base.js +0 -6
  809. package/app/components/hds/form/select/field.js +0 -6
  810. package/app/components/hds/form/text-input/base.js +0 -6
  811. package/app/components/hds/form/text-input/field.js +0 -6
  812. package/app/components/hds/form/textarea/base.js +0 -6
  813. package/app/components/hds/form/textarea/field.js +0 -6
  814. package/app/components/hds/form/toggle/base.js +0 -6
  815. package/app/components/hds/form/toggle/field.js +0 -6
  816. package/app/components/hds/form/toggle/group.js +0 -6
  817. package/app/components/hds/form/visibility-toggle/index.js +0 -6
  818. package/app/components/hds/icon-tile/index.js +0 -6
  819. package/app/components/hds/interactive/index.js +0 -6
  820. package/app/components/hds/link/inline.js +0 -6
  821. package/app/components/hds/link/standalone.js +0 -6
  822. package/app/components/hds/menu-primitive/index.js +0 -6
  823. package/app/components/hds/modal/body.js +0 -6
  824. package/app/components/hds/modal/footer.js +0 -6
  825. package/app/components/hds/modal/header.js +0 -6
  826. package/app/components/hds/modal/index.js +0 -6
  827. package/app/components/hds/page-header/actions.js +0 -6
  828. package/app/components/hds/page-header/badges.js +0 -6
  829. package/app/components/hds/page-header/description.js +0 -6
  830. package/app/components/hds/page-header/index.js +0 -6
  831. package/app/components/hds/page-header/subtitle.js +0 -6
  832. package/app/components/hds/page-header/title.js +0 -6
  833. package/app/components/hds/pagination/compact/index.js +0 -6
  834. package/app/components/hds/pagination/info.js +0 -6
  835. package/app/components/hds/pagination/nav/arrow.js +0 -6
  836. package/app/components/hds/pagination/nav/ellipsis.js +0 -6
  837. package/app/components/hds/pagination/nav/number.js +0 -6
  838. package/app/components/hds/pagination/numbered/index.js +0 -6
  839. package/app/components/hds/pagination/size-selector.js +0 -6
  840. package/app/components/hds/reveal/index.js +0 -6
  841. package/app/components/hds/reveal/toggle/button.js +0 -6
  842. package/app/components/hds/segmented-group/index.js +0 -6
  843. package/app/components/hds/separator/index.js +0 -6
  844. package/app/components/hds/side-nav/base.js +0 -6
  845. package/app/components/hds/side-nav/header/home-link.js +0 -6
  846. package/app/components/hds/side-nav/header/icon-button.js +0 -6
  847. package/app/components/hds/side-nav/header/index.js +0 -6
  848. package/app/components/hds/side-nav/index.js +0 -6
  849. package/app/components/hds/side-nav/list/back-link.js +0 -6
  850. package/app/components/hds/side-nav/list/index.js +0 -6
  851. package/app/components/hds/side-nav/list/item.js +0 -6
  852. package/app/components/hds/side-nav/list/link.js +0 -6
  853. package/app/components/hds/side-nav/list/title.js +0 -6
  854. package/app/components/hds/side-nav/portal/index.js +0 -6
  855. package/app/components/hds/side-nav/portal/target.js +0 -6
  856. package/app/components/hds/side-nav/toggle-button.js +0 -6
  857. package/app/components/hds/stepper/step/indicator.js +0 -6
  858. package/app/components/hds/stepper/task/indicator.js +0 -6
  859. package/app/components/hds/table/index.js +0 -6
  860. package/app/components/hds/table/td.js +0 -6
  861. package/app/components/hds/table/th-sort.js +0 -6
  862. package/app/components/hds/table/th.js +0 -6
  863. package/app/components/hds/table/tr.js +0 -6
  864. package/app/components/hds/tabs/index.js +0 -6
  865. package/app/components/hds/tabs/panel.js +0 -6
  866. package/app/components/hds/tabs/tab.js +0 -6
  867. package/app/components/hds/tag/index.js +0 -6
  868. package/app/components/hds/text/body.js +0 -6
  869. package/app/components/hds/text/code.js +0 -6
  870. package/app/components/hds/text/display.js +0 -6
  871. package/app/components/hds/text/index.js +0 -6
  872. package/app/components/hds/toast/index.js +0 -6
  873. package/app/components/hds/tooltip-button/index.js +0 -6
  874. package/app/components/hds/yield/index.js +0 -6
  875. package/app/helpers/hds-link-to-models.js +0 -6
  876. package/app/helpers/hds-link-to-query.js +0 -6
  877. package/app/modifiers/hds-clipboard.js +0 -6
  878. package/app/modifiers/hds-tooltip.js +0 -6
  879. package/app/styles/@hashicorp/design-system-components.scss +0 -64
  880. package/app/styles/components/flyout.scss +0 -111
  881. package/app/styles/components/table.scss +0 -208
  882. package/app/styles/components/tabs.scss +0 -117
  883. package/blueprints/hds-component/files/addon/components/hds/__name__/index.hbs +0 -8
  884. package/blueprints/hds-component/files/addon/components/hds/__name__/index.js +0 -28
  885. package/blueprints/hds-component/files/app/components/hds/__name__/index.js +0 -6
  886. package/blueprints/hds-component/files/app/styles/components/__name__.scss +0 -12
  887. package/blueprints/hds-component/index.js +0 -65
  888. package/blueprints/hds-component-test/files/tests/acceptance/components/hds/__name__.js +0 -21
  889. package/blueprints/hds-component-test/files/tests/dummy/app/routes/components/__name__.js +0 -8
  890. package/blueprints/hds-component-test/files/tests/dummy/app/styles/showcase-pages/__dummyCSSFileName__.scss +0 -6
  891. package/blueprints/hds-component-test/files/tests/dummy/app/templates/components/__name__.hbs +0 -17
  892. package/blueprints/hds-component-test/files/tests/integration/components/hds/__name__/index-test.js +0 -25
  893. package/blueprints/hds-component-test/index.js +0 -151
  894. package/config/environment.js +0 -10
  895. package/index.js +0 -32
  896. package/tsconfig.declarations.json +0 -10
  897. package/tsconfig.json +0 -47
  898. package/types/dummy/index.d.ts +0 -7
  899. package/types/global.d.ts +0 -12
  900. package/vercel.json +0 -13
  901. /package/{app → dist}/styles/@hashicorp/design-system-power-select-overrides.scss +0 -0
  902. /package/{app → dist}/styles/components/accordion.scss +0 -0
  903. /package/{app → dist}/styles/components/alert.scss +0 -0
  904. /package/{app → dist}/styles/components/app-footer.scss +0 -0
  905. /package/{app → dist}/styles/components/app-frame.scss +0 -0
  906. /package/{app → dist}/styles/components/application-state.scss +0 -0
  907. /package/{app → dist}/styles/components/badge-count.scss +0 -0
  908. /package/{app → dist}/styles/components/badge.scss +0 -0
  909. /package/{app → dist}/styles/components/breadcrumb.scss +0 -0
  910. /package/{app → dist}/styles/components/button-set.scss +0 -0
  911. /package/{app → dist}/styles/components/button.scss +0 -0
  912. /package/{app → dist}/styles/components/card/container.scss +0 -0
  913. /package/{app → dist}/styles/components/card/index.scss +0 -0
  914. /package/{app → dist}/styles/components/code-block/index.scss +0 -0
  915. /package/{app → dist}/styles/components/code-block/theme.scss +0 -0
  916. /package/{app → dist}/styles/components/copy/button.scss +0 -0
  917. /package/{app → dist}/styles/components/copy/index.scss +0 -0
  918. /package/{app → dist}/styles/components/copy/snippet.scss +0 -0
  919. /package/{app → dist}/styles/components/disclosure-primitive.scss +0 -0
  920. /package/{app → dist}/styles/components/dismiss-button.scss +0 -0
  921. /package/{app → dist}/styles/components/dropdown.scss +0 -0
  922. /package/{app → dist}/styles/components/form/character-count.scss +0 -0
  923. /package/{app → dist}/styles/components/form/checkbox.scss +0 -0
  924. /package/{app → dist}/styles/components/form/error.scss +0 -0
  925. /package/{app → dist}/styles/components/form/field.scss +0 -0
  926. /package/{app → dist}/styles/components/form/file-input.scss +0 -0
  927. /package/{app → dist}/styles/components/form/group.scss +0 -0
  928. /package/{app → dist}/styles/components/form/helper-text.scss +0 -0
  929. /package/{app → dist}/styles/components/form/index.scss +0 -0
  930. /package/{app → dist}/styles/components/form/indicator.scss +0 -0
  931. /package/{app → dist}/styles/components/form/label.scss +0 -0
  932. /package/{app → dist}/styles/components/form/legend.scss +0 -0
  933. /package/{app → dist}/styles/components/form/masked-input.scss +0 -0
  934. /package/{app → dist}/styles/components/form/radio-card.scss +0 -0
  935. /package/{app → dist}/styles/components/form/radio.scss +0 -0
  936. /package/{app → dist}/styles/components/form/select.scss +0 -0
  937. /package/{app → dist}/styles/components/form/text-input.scss +0 -0
  938. /package/{app → dist}/styles/components/form/textarea.scss +0 -0
  939. /package/{app → dist}/styles/components/form/toggle.scss +0 -0
  940. /package/{app → dist}/styles/components/form/visibility-toggle.scss +0 -0
  941. /package/{app → dist}/styles/components/icon-tile.scss +0 -0
  942. /package/{app → dist}/styles/components/link/index.scss +0 -0
  943. /package/{app → dist}/styles/components/link/inline.scss +0 -0
  944. /package/{app → dist}/styles/components/link/standalone.scss +0 -0
  945. /package/{app → dist}/styles/components/menu-primitive.scss +0 -0
  946. /package/{app → dist}/styles/components/modal.scss +0 -0
  947. /package/{app → dist}/styles/components/page-header.scss +0 -0
  948. /package/{app → dist}/styles/components/pagination.scss +0 -0
  949. /package/{app → dist}/styles/components/reveal.scss +0 -0
  950. /package/{app → dist}/styles/components/segmented-group.scss +0 -0
  951. /package/{app → dist}/styles/components/separator.scss +0 -0
  952. /package/{app → dist}/styles/components/side-nav/a11y-refocus.scss +0 -0
  953. /package/{app → dist}/styles/components/side-nav/content.scss +0 -0
  954. /package/{app → dist}/styles/components/side-nav/header.scss +0 -0
  955. /package/{app → dist}/styles/components/side-nav/index.scss +0 -0
  956. /package/{app → dist}/styles/components/side-nav/main.scss +0 -0
  957. /package/{app → dist}/styles/components/side-nav/toggle-button.scss +0 -0
  958. /package/{app → dist}/styles/components/side-nav/vars.scss +0 -0
  959. /package/{app → dist}/styles/components/stepper/index.scss +0 -0
  960. /package/{app → dist}/styles/components/stepper/step-indicator.scss +0 -0
  961. /package/{app → dist}/styles/components/stepper/task-indicator.scss +0 -0
  962. /package/{app → dist}/styles/components/tag.scss +0 -0
  963. /package/{app → dist}/styles/components/text.scss +0 -0
  964. /package/{app → dist}/styles/components/toast.scss +0 -0
  965. /package/{app → dist}/styles/components/tooltip.scss +0 -0
  966. /package/{app → dist}/styles/mixins/_button.scss +0 -0
  967. /package/{app → dist}/styles/mixins/_focus-ring.scss +0 -0
@@ -1,45 +0,0 @@
1
- /**
2
- * Copyright (c) HashiCorp, Inc.
3
- * SPDX-License-Identifier: MPL-2.0
4
- */
5
-
6
- import Component from '@glimmer/component';
7
- import { action } from '@ember/object';
8
- import { assert } from '@ember/debug';
9
-
10
- export default class HdsPaginationControlNumberComponent extends Component {
11
- get page() {
12
- let { page } = this.args;
13
-
14
- assert(
15
- '@page for "Pagination::Nav::Number" must have a valid value',
16
- page !== undefined
17
- );
18
-
19
- return page;
20
- }
21
-
22
- /**
23
- * Get the class names to apply to the component.
24
- * @method classNames
25
- * @return {string} The "class" attribute to apply to the component.
26
- */
27
- get classNames() {
28
- let classes = ['hds-pagination-nav__control', 'hds-pagination-nav__number'];
29
-
30
- if (this.args.isSelected) {
31
- classes.push(`hds-pagination-nav__number--is-selected`);
32
- }
33
-
34
- return classes.join(' ');
35
- }
36
-
37
- @action
38
- onClick() {
39
- let { onClick } = this.args;
40
-
41
- if (typeof onClick === 'function') {
42
- onClick(this.args.page);
43
- }
44
- }
45
- }
@@ -1,70 +0,0 @@
1
- {{!
2
- Copyright (c) HashiCorp, Inc.
3
- SPDX-License-Identifier: MPL-2.0
4
- }}
5
- <div class="hds-pagination" ...attributes>
6
- {{#if this.showInfo}}
7
- <Hds::Pagination::Info
8
- @itemsRangeStart={{this.itemsRangeStart}}
9
- @itemsRangeEnd={{this.itemsRangeEnd}}
10
- @totalItems={{@totalItems}}
11
- @showTotalItems={{@showTotalItems}}
12
- />
13
- {{/if}}
14
-
15
- <nav class="hds-pagination-nav" aria-label={{this.ariaLabel}}>
16
- <Hds::Pagination::Nav::Arrow
17
- @direction="prev"
18
- @showLabel={{this.showLabels}}
19
- @route={{this.routing.route}}
20
- @query={{this.routing.queryPrev}}
21
- @model={{this.routing.model}}
22
- @models={{this.routing.models}}
23
- @replace={{this.routing.replace}}
24
- @onClick={{this.onPageChange}}
25
- @disabled={{this.isDisabledPrev}}
26
- />
27
- {{#if this.showPageNumbers}}
28
- <ul class="hds-pagination-nav__page-list">
29
- {{#each this.pages as |page|}}
30
- <li class="hds-pagination-nav__page-item">
31
- {{#if (eq page "…")}}
32
- <Hds::Pagination::Nav::Ellipsis />
33
- {{else}}
34
- <Hds::Pagination::Nav::Number
35
- @page={{page}}
36
- @route={{this.routing.route}}
37
- @query={{get this.routing.queryPages page}}
38
- @model={{this.routing.model}}
39
- @models={{this.routing.models}}
40
- @replace={{this.routing.replace}}
41
- @onClick={{this.onPageChange}}
42
- @isSelected={{if (eq page this.currentPage) true false}}
43
- />
44
- {{/if}}
45
- </li>
46
- {{/each}}
47
- </ul>
48
- {{/if}}
49
- <Hds::Pagination::Nav::Arrow
50
- @direction="next"
51
- @showLabel={{this.showLabels}}
52
- @route={{this.routing.route}}
53
- @query={{this.routing.queryNext}}
54
- @model={{this.routing.model}}
55
- @models={{this.routing.models}}
56
- @replace={{this.routing.replace}}
57
- @onClick={{this.onPageChange}}
58
- @disabled={{this.isDisabledNext}}
59
- />
60
- </nav>
61
-
62
- {{#if this.showSizeSelector}}
63
- <Hds::Pagination::SizeSelector
64
- @pageSizes={{this.pageSizes}}
65
- @label={{@sizeSelectorLabel}}
66
- @selectedSize={{this.currentPageSize}}
67
- @onChange={{this.onPageSizeChange}}
68
- />
69
- {{/if}}
70
- </div>
@@ -1,341 +0,0 @@
1
- /**
2
- * Copyright (c) HashiCorp, Inc.
3
- * SPDX-License-Identifier: MPL-2.0
4
- */
5
-
6
- import Component from '@glimmer/component';
7
- import { tracked } from '@glimmer/tracking';
8
- import { action } from '@ember/object';
9
- import { assert } from '@ember/debug';
10
- import { inject as service } from '@ember/service';
11
-
12
- // for context about the decision to use these values, see:
13
- // https://hashicorp.slack.com/archives/C03A0N1QK8S/p1673546329082759
14
- export const DEFAULT_PAGE_SIZES = [10, 30, 50];
15
-
16
- /**
17
- * Elliptize a list of pages
18
- *
19
- * @param pages - array with all the "pages" (integer numbers)
20
- * @param current - "current" page (array's index)
21
- * @param limit - number of "page numbers" to be shown at a time (should always be an odd number!)
22
- *
23
- * @return - array of integers ("pages") + `...` strings ("ellipsis")
24
- */
25
- export const elliptize = ({ pages, current, limit = 7 }) => {
26
- const length = pages.length;
27
- const ellipsis = '…';
28
- let result = [];
29
- let start;
30
- let end;
31
-
32
- if (length <= limit) {
33
- return pages;
34
- }
35
-
36
- if (current <= length / 2) {
37
- start = Math.ceil(limit / 2);
38
- end = limit - start;
39
- } else {
40
- end = Math.ceil(limit / 2);
41
- start = limit - end;
42
- }
43
-
44
- const sliceStart = pages.slice(0, start);
45
- const sliceEnd = pages.slice(-end);
46
-
47
- if (sliceStart.includes(current) && sliceStart.includes(current + 1)) {
48
- // "current" (and its next sibling) is contained within the "sliceStart" block
49
- sliceEnd.splice(0, 1, ellipsis);
50
- result = [].concat(sliceStart, sliceEnd);
51
- } else if (sliceEnd.includes(current - 1) && sliceEnd.includes(current)) {
52
- // "current" (and its prev sibling) is contained within the "sliceEnd" block
53
- sliceStart.splice(-1, 1, ellipsis);
54
- result = [].concat(sliceStart, sliceEnd);
55
- } else {
56
- // this is a bit more tricky :)
57
- // we need to calculate how many items there are before/after the current item
58
- // since both the initial and ending blocks are always 2 items long (number + ellipsis)
59
- // and there is always the "current" item, we can just subtract 5 from the limit
60
- const delta = (limit - 5) / 2; // this is why the limit needs to be an odd number
61
- // we slice the array starting at the "current" index, minus the delta, minus one because it's an array (zero-based)
62
- const sliceCurr = pages.slice(current - delta - 1, current + delta);
63
- result = [].concat(
64
- sliceStart.shift(),
65
- ellipsis,
66
- sliceCurr,
67
- ellipsis,
68
- sliceEnd.pop()
69
- );
70
- }
71
-
72
- return result;
73
- };
74
-
75
- export default class HdsPaginationNumberedIndexComponent extends Component {
76
- @service router;
77
-
78
- // These two private variables are used to differentiate between
79
- // "uncontrolled" component (where the state is handled internally) and
80
- // "controlled" component (where the state is handled externally, by the consumer's code).
81
- // In the first case, these variables store the internal state of the component at any moment,
82
- // and their value is updated internally according to the user's interaction with the component.
83
- // In the second case, these variables store *only* the initial state of the component (coming from the arguments)
84
- // at rendering time, but from that moment on they're not updated anymore, no matter what interaction the user
85
- // has with the component (the state is controlled externally, eg. via query parameters)
86
- @tracked _currentPage = this.args.currentPage ?? 1;
87
- @tracked _currentPageSize = this.args.currentPageSize ?? this.pageSizes[0];
88
- @tracked isControlled;
89
-
90
- showInfo = this.args.showInfo ?? true; // if the "info" block is visible
91
- showLabels = this.args.showLabels ?? false; // if the labels for the "prev/next" controls are visible
92
- showSizeSelector = this.args.showSizeSelector ?? true; // if the "size selector" block is visible
93
- showPageNumbers = this.args.showPageNumbers ?? true; // if the "page numbers" block is visible
94
- isTruncated = this.args.isTruncated ?? true; // if the list of "page numbers" is truncated
95
-
96
- constructor() {
97
- super(...arguments);
98
-
99
- let { queryFunction } = this.args;
100
-
101
- // This component works in two different ways, depending if we need to support
102
- // routing through links (`LinkTo`) for the "navigation controls", or not.
103
- // If there's no routing then the component behaves as "uncontrolled"
104
- // (the state updates - eg to the "currentPage" and "currentPageSize"
105
- // are handled by its internal logic).
106
- // If instead the component needs to update the routing (and we infer this via the "query" arguments)
107
- // then the component behaves as "controlled", where the state is
108
- // initialized and updated using the arguments passed to it.
109
-
110
- if (queryFunction === undefined) {
111
- this.isControlled = false;
112
- } else {
113
- assert(
114
- '@queryFunction for "Hds::Pagination::Numbered" must be a function',
115
- typeof queryFunction === 'function'
116
- );
117
- assert(
118
- '@currentPage and @currentPageSize for "Hds::Pagination::Numbered" must be provided as numeric arguments when the pagination controls the routing',
119
- typeof this.args.currentPageSize === 'number' &&
120
- typeof this.args.currentPage === 'number'
121
- );
122
- this.isControlled = true;
123
- }
124
-
125
- assert(
126
- '@totalItems for "Hds::Pagination::Numbered" must be defined as an integer number',
127
- typeof this.args.totalItems === 'number'
128
- );
129
- }
130
-
131
- /**
132
- * @param ariaLabel
133
- * @type {string}
134
- * @default 'Pagination'
135
- */
136
- get ariaLabel() {
137
- return this.args.ariaLabel ?? 'Pagination';
138
- }
139
-
140
- // This very specific `get/set` pattern is used to handle the two different use cases of the component
141
- // being "controlled" (when it has routing, meaning it needs to support pagination controls as links/`LinkTo`)
142
- // vs being "uncontrolled" (see comments above for details).
143
- //
144
- // If it has routing (and so it's "controlled"), than the value ("state") of the `currentPage/currentPageSize` variables
145
- // is *always* determined by the controller via arguments (most of the times, connected to query parameters in the URL).
146
- // For this reason the "get" method always returns the value from the `args`,
147
- // while the "set" method never updates the private internal state (_variable).
148
- //
149
- // If instead it doesn't have routing (and so it's "uncontrolled") than the value ("state") of the `currentPage/currentPageSize` variables
150
- // is *always* determined by the component's internal logic (and updated according to the user interaction with it).
151
- // For this reason the "get" and "set" methods always read from or write to the private internal state (_variable).
152
-
153
- get currentPage() {
154
- if (this.isControlled) {
155
- return this.args.currentPage;
156
- } else {
157
- return this._currentPage;
158
- }
159
- }
160
-
161
- set currentPage(value) {
162
- if (this.isControlled) {
163
- // noop
164
- } else {
165
- this._currentPage = value;
166
- }
167
- }
168
-
169
- get currentPageSize() {
170
- if (this.isControlled) {
171
- return this.args.currentPageSize;
172
- } else {
173
- return this._currentPageSize;
174
- }
175
- }
176
-
177
- set currentPageSize(value) {
178
- if (this.isControlled) {
179
- // noop
180
- } else {
181
- this._currentPageSize = value;
182
- }
183
- }
184
-
185
- /**
186
- * @param pageSizes
187
- * @type {array of numbers}
188
- * @description Set the page sizes users can select from.
189
- * @default [10, 30, 50]
190
- */
191
- get pageSizes() {
192
- let { pageSizes = DEFAULT_PAGE_SIZES } = this.args;
193
-
194
- assert(
195
- `pageSizes argument must be an array. Received: ${pageSizes}`,
196
- Array.isArray(pageSizes) === true
197
- );
198
-
199
- return pageSizes;
200
- }
201
-
202
- get itemsRangeStart() {
203
- // Calculate the starting range of items displayed on current page
204
- // if currentPage = 1st page and # of items per page is 10:
205
- // ( (1 - 1 = 0) * 10 = 0 ) + 1 = 1
206
- // if current page = 2nd page:
207
- // ( (2 - 1 = 1) * 10 = 10 ) + 1 = 11
208
- return (this.currentPage - 1) * this.currentPageSize + 1;
209
- }
210
-
211
- get itemsRangeEnd() {
212
- // Calculate ending range of items displayed on current page
213
- // 2 cases: 1) full page of items or 2) last page of items
214
- if (this.currentPage * this.currentPageSize < this.args.totalItems) {
215
- // 1) full page of items (pages 1 to page before last):
216
- return this.itemsRangeStart + this.currentPageSize - 1;
217
- } else {
218
- // 2) last page of items:
219
- return this.args.totalItems;
220
- }
221
- }
222
-
223
- get pages() {
224
- let pages = [];
225
-
226
- for (let i = 1; i <= this.totalPages; i++) {
227
- pages.push(i);
228
- }
229
-
230
- if (this.isTruncated) {
231
- return elliptize({ pages, current: this.currentPage });
232
- } else {
233
- return pages;
234
- }
235
- }
236
-
237
- get totalPages() {
238
- return Math.max(Math.ceil(this.args.totalItems / this.currentPageSize), 1);
239
- }
240
-
241
- get routeQueryParams() {
242
- return this.router.currentRoute?.queryParams || {};
243
- }
244
-
245
- buildQueryParamsObject(page, pageSize) {
246
- if (this.isControlled) {
247
- return this.args.queryFunction(page, pageSize);
248
- } else {
249
- return {};
250
- }
251
- }
252
-
253
- get routing() {
254
- let routing = {
255
- route: this.args.route ?? undefined,
256
- model: this.args.model ?? undefined,
257
- models: this.args.models ?? undefined,
258
- replace: this.args.replace ?? undefined,
259
- };
260
-
261
- // the "query" is dynamic and needs to be calculated
262
- if (this.isControlled) {
263
- routing.queryPrev = this.buildQueryParamsObject(
264
- this.currentPage - 1,
265
- this.currentPageSize
266
- );
267
- routing.queryNext = this.buildQueryParamsObject(
268
- this.currentPage + 1,
269
- this.currentPageSize
270
- );
271
- // IMPORTANT: here we need to use an object and not an array
272
- // otherwise the {{get object page}} will be shifted by one
273
- // (the pages are 1-based while the array would be zero-based)
274
- routing.queryPages = {};
275
- this.pages.forEach(
276
- (page) =>
277
- (routing.queryPages[page] = this.buildQueryParamsObject(
278
- page,
279
- this.currentPageSize
280
- ))
281
- );
282
- } else {
283
- routing.queryPrev = undefined;
284
- routing.queryNext = undefined;
285
- routing.queryByPage = {};
286
- }
287
-
288
- return routing;
289
- }
290
-
291
- get isDisabledPrev() {
292
- return this.currentPage === 1;
293
- }
294
-
295
- get isDisabledNext() {
296
- return this.currentPage === this.totalPages;
297
- }
298
-
299
- @action
300
- onPageChange(page) {
301
- let gotoPageNumber;
302
- if (page === 'prev' && this.currentPage > 1) {
303
- gotoPageNumber = this.currentPage - 1;
304
- } else if (page === 'next' && this.currentPage < this.totalPages) {
305
- gotoPageNumber = this.currentPage + 1;
306
- } else {
307
- gotoPageNumber = page;
308
- }
309
-
310
- // we want to invoke the `onPageChange` callback only on actual page change
311
- if (gotoPageNumber !== this.currentPage) {
312
- this.currentPage = gotoPageNumber;
313
-
314
- let { onPageChange } = this.args;
315
-
316
- if (typeof onPageChange === 'function') {
317
- onPageChange(this.currentPage, this.currentPageSize);
318
- }
319
- }
320
- }
321
-
322
- @action
323
- onPageSizeChange(newPageSize) {
324
- let { onPageSizeChange } = this.args;
325
-
326
- // we need to manually update the query parameters in the route (it's not a link!)
327
- if (this.isControlled) {
328
- // notice: we agreed to reset the pagination to the first element (any alternative would result in an unpredictable UX)
329
- const queryParams = this.buildQueryParamsObject(1, newPageSize);
330
- this.router.transitionTo({ queryParams });
331
- } else {
332
- this.currentPage = 1;
333
- this.currentPageSize = newPageSize;
334
- }
335
-
336
- // invoke the callback function
337
- if (typeof onPageSizeChange === 'function') {
338
- onPageSizeChange(newPageSize);
339
- }
340
- }
341
- }
@@ -1,16 +0,0 @@
1
- {{!
2
- Copyright (c) HashiCorp, Inc.
3
- SPDX-License-Identifier: MPL-2.0
4
- }}
5
- <div class="hds-pagination-size-selector" ...attributes>
6
- <label class="hds-typography-body-100 hds-font-weight-medium" for={{this.SizeSelectorId}}>
7
- {{this.label}}
8
- </label>
9
- <Hds::Form::Select::Base id={{this.SizeSelectorId}} {{on "change" this.onChange}} as |S|>
10
- <S.Options>
11
- {{#each this.pageSizes as |size|}}
12
- <option value={{size}} selected={{if (eq size this.selectedSize) true null}}>{{size}}</option>
13
- {{/each}}
14
- </S.Options>
15
- </Hds::Form::Select::Base>
16
- </div>
@@ -1,73 +0,0 @@
1
- /**
2
- * Copyright (c) HashiCorp, Inc.
3
- * SPDX-License-Identifier: MPL-2.0
4
- */
5
-
6
- import Component from '@glimmer/component';
7
- import { assert } from '@ember/debug';
8
- import { guidFor } from '@ember/object/internals';
9
- import { action } from '@ember/object';
10
-
11
- export default class HdsPaginationSizeSelectorComponent extends Component {
12
- /**
13
- * Generates a unique ID for the pageSize select
14
- *
15
- * @param SizeSelectorId
16
- */
17
- SizeSelectorId = 'pagination-size-selector-' + guidFor(this);
18
-
19
- /**
20
- * @param pageSizes
21
- * @type {array of numbers}
22
- * @description Set the page sizes users can select from.
23
- */
24
- get pageSizes() {
25
- let { pageSizes } = this.args;
26
-
27
- assert(
28
- '@pageSizes for "Pagination::SizeSelector" must be defined',
29
- pageSizes !== undefined
30
- );
31
-
32
- return pageSizes;
33
- }
34
-
35
- /**
36
- * @param selectedSize
37
- * @type integer
38
- * @description The selected ("current") page size
39
- */
40
- get selectedSize() {
41
- let { selectedSize } = this.args;
42
-
43
- assert(
44
- `@selectedSize for "Pagination::SizeSelector" must one of the @pageSizes provided (${this.pageSizes.join(
45
- ','
46
- )}), received ${selectedSize}`,
47
- selectedSize === undefined || this.pageSizes.includes(selectedSize)
48
- );
49
-
50
- return selectedSize;
51
- }
52
-
53
- /**
54
- * @param label
55
- * @type string
56
- * @default "Items per page"
57
- * @description The label text for the select
58
- */
59
- get label() {
60
- let { label = 'Items per page' } = this.args;
61
-
62
- return label;
63
- }
64
-
65
- @action
66
- onChange(e) {
67
- let { onChange } = this.args;
68
-
69
- if (typeof onChange === 'function') {
70
- onChange(parseInt(e.target.value));
71
- }
72
- }
73
- }
@@ -1,21 +0,0 @@
1
- {{!
2
- Copyright (c) HashiCorp, Inc.
3
- SPDX-License-Identifier: MPL-2.0
4
- }}
5
-
6
- <Hds::DisclosurePrimitive class="hds-reveal" @isOpen={{@isOpen}} ...attributes>
7
- <:toggle as |t|>
8
- <Hds::Reveal::Toggle::Button
9
- aria-controls={{this.contentId}}
10
- @text={{if (and t.isOpen @textWhenOpen) @textWhenOpen this.text}}
11
- @isOpen={{t.isOpen}}
12
- {{on "click" t.onClickToggle}}
13
- />
14
- </:toggle>
15
-
16
- <:content>
17
- <div class="hds-reveal__content hds-typography-body-200 hds-foreground-primary" id={{this.contentId}}>
18
- {{yield}}
19
- </div>
20
- </:content>
21
- </Hds::DisclosurePrimitive>
@@ -1,33 +0,0 @@
1
- /**
2
- * Copyright (c) HashiCorp, Inc.
3
- * SPDX-License-Identifier: MPL-2.0
4
- */
5
-
6
- import Component from '@glimmer/component';
7
- import { guidFor } from '@ember/object/internals';
8
- import { assert } from '@ember/debug';
9
-
10
- export default class HdsRevealIndexComponent extends Component {
11
- /**
12
- * Generates a unique ID for the Content
13
- *
14
- * @param contentId
15
- */
16
- contentId = 'content-' + guidFor(this);
17
-
18
- /**
19
- * @param text
20
- * @type {string}
21
- * @description The text of the button.
22
- */
23
- get text() {
24
- let { text } = this.args;
25
-
26
- assert(
27
- '@text for "Hds::Reveal" must have a valid value',
28
- text !== undefined
29
- );
30
-
31
- return text;
32
- }
33
- }
@@ -1,13 +0,0 @@
1
- {{!
2
- Copyright (c) HashiCorp, Inc.
3
- SPDX-License-Identifier: MPL-2.0
4
- }}
5
-
6
- <Hds::Button
7
- @text={{@text}}
8
- @color="tertiary"
9
- @icon="chevron-down"
10
- aria-expanded={{if @isOpen "true" "false"}}
11
- class={{this.classNames}}
12
- ...attributes
13
- />
@@ -1,24 +0,0 @@
1
- /**
2
- * Copyright (c) HashiCorp, Inc.
3
- * SPDX-License-Identifier: MPL-2.0
4
- */
5
-
6
- import Component from '@glimmer/component';
7
-
8
- export default class HdsDropdownToggleButtonComponent extends Component {
9
- /**
10
- * Get the class names to apply to the component.
11
- * @method ToggleButton#classNames
12
- * @return {string} The "class" attribute to apply to the component.
13
- */
14
- get classNames() {
15
- let classes = ['hds-reveal__toggle-button'];
16
-
17
- // add a class based on the @isOpen argument
18
- if (this.args.isOpen) {
19
- classes.push('hds-reveal__toggle-button--is-open');
20
- }
21
-
22
- return classes.join(' ');
23
- }
24
- }
@@ -1,15 +0,0 @@
1
- {{!
2
- Copyright (c) HashiCorp, Inc.
3
- SPDX-License-Identifier: MPL-2.0
4
- }}
5
- <div class="hds-segmented-group" ...attributes>
6
- {{yield
7
- (hash
8
- Button=(component "hds/button")
9
- Dropdown=(component "hds/dropdown")
10
- Select=(component "hds/form/select/base")
11
- TextInput=(component "hds/form/text-input/base")
12
- Generic=(component "hds/yield")
13
- )
14
- }}
15
- </div>
@@ -1,5 +0,0 @@
1
- {{!
2
- Copyright (c) HashiCorp, Inc.
3
- SPDX-License-Identifier: MPL-2.0
4
- }}
5
- <hr class={{this.classNames}} ...attributes />