@hashicorp/design-system-components 4.1.2 → 4.3.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 (224) hide show
  1. package/dist/_app_/components/hds/form/super-select/after-options.js +1 -0
  2. package/dist/_app_/components/hds/form/super-select/multiple/base.js +1 -0
  3. package/dist/_app_/components/hds/form/super-select/multiple/field.js +1 -0
  4. package/dist/_app_/components/hds/form/super-select/option-group.js +1 -0
  5. package/dist/_app_/components/hds/form/super-select/placeholder.js +1 -0
  6. package/dist/_app_/components/hds/form/super-select/single/base.js +1 -0
  7. package/dist/_app_/components/hds/form/super-select/single/field.js +1 -0
  8. package/dist/_app_/components/hds/popover-primitive/index.js +1 -0
  9. package/dist/_app_/components/hds/rich-tooltip/bubble.js +1 -0
  10. package/dist/_app_/components/hds/rich-tooltip/index.js +1 -0
  11. package/dist/_app_/components/hds/rich-tooltip/toggle.js +1 -0
  12. package/dist/_app_/modifiers/hds-anchored-position.js +1 -0
  13. package/dist/_app_/modifiers/hds-register-event.js +1 -0
  14. package/dist/{_rollupPluginBabelHelpers-lqPQKyNs.js → _rollupPluginBabelHelpers-NoJJJNhk.js} +7 -9
  15. package/dist/{_rollupPluginBabelHelpers-lqPQKyNs.js.map → _rollupPluginBabelHelpers-NoJJJNhk.js.map} +1 -1
  16. package/dist/components/hds/accordion/index.js +8 -2
  17. package/dist/components/hds/accordion/index.js.map +1 -1
  18. package/dist/components/hds/accordion/item/button.js +12 -8
  19. package/dist/components/hds/accordion/item/button.js.map +1 -1
  20. package/dist/components/hds/accordion/item/index.js +6 -6
  21. package/dist/components/hds/accordion/item/index.js.map +1 -1
  22. package/dist/components/hds/alert/description.js +8 -2
  23. package/dist/components/hds/alert/description.js.map +1 -1
  24. package/dist/components/hds/alert/index.js +23 -22
  25. package/dist/components/hds/alert/index.js.map +1 -1
  26. package/dist/components/hds/alert/title.js +8 -2
  27. package/dist/components/hds/alert/title.js.map +1 -1
  28. package/dist/components/hds/alert/types.js +22 -0
  29. package/dist/components/hds/alert/types.js.map +1 -0
  30. package/dist/components/hds/app-footer/copyright.js +1 -1
  31. package/dist/components/hds/app-footer/copyright.js.map +1 -1
  32. package/dist/components/hds/app-footer/index.js +6 -6
  33. package/dist/components/hds/app-footer/index.js.map +1 -1
  34. package/dist/components/hds/app-footer/item.js +10 -4
  35. package/dist/components/hds/app-footer/item.js.map +1 -1
  36. package/dist/components/hds/app-footer/legal-links.js +1 -1
  37. package/dist/components/hds/app-footer/legal-links.js.map +1 -1
  38. package/dist/components/hds/app-footer/link.js +10 -4
  39. package/dist/components/hds/app-footer/link.js.map +1 -1
  40. package/dist/components/hds/app-footer/status-link.js +12 -27
  41. package/dist/components/hds/app-footer/status-link.js.map +1 -1
  42. package/dist/components/hds/app-footer/types.js +38 -0
  43. package/dist/components/hds/app-footer/types.js.map +1 -0
  44. package/dist/components/hds/app-frame/index.js +4 -4
  45. package/dist/components/hds/app-frame/index.js.map +1 -1
  46. package/dist/components/hds/app-frame/parts/footer.js +10 -4
  47. package/dist/components/hds/app-frame/parts/footer.js.map +1 -1
  48. package/dist/components/hds/app-frame/parts/header.js +10 -4
  49. package/dist/components/hds/app-frame/parts/header.js.map +1 -1
  50. package/dist/components/hds/app-frame/parts/main.js +10 -4
  51. package/dist/components/hds/app-frame/parts/main.js.map +1 -1
  52. package/dist/components/hds/app-frame/parts/modals.js +10 -4
  53. package/dist/components/hds/app-frame/parts/modals.js.map +1 -1
  54. package/dist/components/hds/app-frame/parts/sidebar.js +10 -4
  55. package/dist/components/hds/app-frame/parts/sidebar.js.map +1 -1
  56. package/dist/components/hds/badge/index.js +19 -18
  57. package/dist/components/hds/badge/index.js.map +1 -1
  58. package/dist/components/hds/badge/types.js +29 -0
  59. package/dist/components/hds/badge/types.js.map +1 -0
  60. package/dist/components/hds/badge-count/index.js +15 -14
  61. package/dist/components/hds/badge-count/index.js.map +1 -1
  62. package/dist/components/hds/badge-count/types.js +25 -0
  63. package/dist/components/hds/badge-count/types.js.map +1 -0
  64. package/dist/components/hds/button/index.js +9 -9
  65. package/dist/components/hds/button/index.js.map +1 -1
  66. package/dist/components/hds/button-set/index.js +8 -2
  67. package/dist/components/hds/button-set/index.js.map +1 -1
  68. package/dist/components/hds/card/container.js +25 -24
  69. package/dist/components/hds/card/container.js.map +1 -1
  70. package/dist/components/hds/card/types.js +24 -0
  71. package/dist/components/hds/card/types.js.map +1 -0
  72. package/dist/components/hds/code-block/index.js +1 -1
  73. package/dist/components/hds/code-block/index.js.map +1 -1
  74. package/dist/components/hds/copy/button/index.js +1 -1
  75. package/dist/components/hds/copy/button/index.js.map +1 -1
  76. package/dist/components/hds/copy/snippet/index.js +2 -2
  77. package/dist/components/hds/copy/snippet/index.js.map +1 -1
  78. package/dist/components/hds/disclosure-primitive/index.js +2 -2
  79. package/dist/components/hds/disclosure-primitive/index.js.map +1 -1
  80. package/dist/components/hds/dismiss-button/index.js +3 -3
  81. package/dist/components/hds/dismiss-button/index.js.map +1 -1
  82. package/dist/components/hds/dropdown/index.js +1 -1
  83. package/dist/components/hds/dropdown/index.js.map +1 -1
  84. package/dist/components/hds/dropdown/list-item/checkmark.js +1 -1
  85. package/dist/components/hds/dropdown/list-item/checkmark.js.map +1 -1
  86. package/dist/components/hds/dropdown/list-item/interactive.js +1 -1
  87. package/dist/components/hds/dropdown/list-item/interactive.js.map +1 -1
  88. package/dist/components/hds/dropdown/toggle/button.js +1 -1
  89. package/dist/components/hds/dropdown/toggle/icon.js +1 -1
  90. package/dist/components/hds/dropdown/toggle/icon.js.map +1 -1
  91. package/dist/components/hds/flyout/index.js +3 -9
  92. package/dist/components/hds/flyout/index.js.map +1 -1
  93. package/dist/components/hds/form/field/index.js +1 -1
  94. package/dist/components/hds/form/field/index.js.map +1 -1
  95. package/dist/components/hds/form/fieldset/index.js +1 -1
  96. package/dist/components/hds/form/fieldset/index.js.map +1 -1
  97. package/dist/components/hds/form/label/index.js +18 -2
  98. package/dist/components/hds/form/label/index.js.map +1 -1
  99. package/dist/components/hds/form/masked-input/base.js +1 -1
  100. package/dist/components/hds/form/masked-input/base.js.map +1 -1
  101. package/dist/components/hds/form/radio-card/index.js +1 -1
  102. package/dist/components/hds/form/radio-card/index.js.map +1 -1
  103. package/dist/components/hds/form/super-select/after-options.js +10 -0
  104. package/dist/components/hds/form/super-select/after-options.js.map +1 -0
  105. package/dist/components/hds/form/super-select/multiple/base.js +159 -0
  106. package/dist/components/hds/form/super-select/multiple/base.js.map +1 -0
  107. package/dist/components/hds/form/super-select/multiple/field.js +21 -0
  108. package/dist/components/hds/form/super-select/multiple/field.js.map +1 -0
  109. package/dist/components/hds/form/super-select/option-group.js +22 -0
  110. package/dist/components/hds/form/super-select/option-group.js.map +1 -0
  111. package/dist/components/hds/form/super-select/placeholder.js +10 -0
  112. package/dist/components/hds/form/super-select/placeholder.js.map +1 -0
  113. package/dist/components/hds/form/super-select/single/base.js +86 -0
  114. package/dist/components/hds/form/super-select/single/base.js.map +1 -0
  115. package/dist/components/hds/form/super-select/single/field.js +21 -0
  116. package/dist/components/hds/form/super-select/single/field.js.map +1 -0
  117. package/dist/components/hds/form/text-input/field.js +1 -1
  118. package/dist/components/hds/form/text-input/field.js.map +1 -1
  119. package/dist/components/hds/icon-tile/index.js +15 -11
  120. package/dist/components/hds/icon-tile/index.js.map +1 -1
  121. package/dist/components/hds/icon-tile/types.js +32 -0
  122. package/dist/components/hds/icon-tile/types.js.map +1 -0
  123. package/dist/components/hds/interactive/index.js +4 -4
  124. package/dist/components/hds/interactive/index.js.map +1 -1
  125. package/dist/components/hds/link/inline.js +11 -10
  126. package/dist/components/hds/link/inline.js.map +1 -1
  127. package/dist/components/hds/link/standalone.js +16 -15
  128. package/dist/components/hds/link/standalone.js.map +1 -1
  129. package/dist/components/hds/link/types.js +24 -0
  130. package/dist/components/hds/link/types.js.map +1 -0
  131. package/dist/components/hds/menu-primitive/index.js +1 -1
  132. package/dist/components/hds/menu-primitive/index.js.map +1 -1
  133. package/dist/components/hds/modal/index.js +3 -9
  134. package/dist/components/hds/modal/index.js.map +1 -1
  135. package/dist/components/hds/pagination/compact/index.js +1 -1
  136. package/dist/components/hds/pagination/compact/index.js.map +1 -1
  137. package/dist/components/hds/pagination/nav/arrow.js +1 -1
  138. package/dist/components/hds/pagination/nav/arrow.js.map +1 -1
  139. package/dist/components/hds/pagination/nav/number.js +1 -1
  140. package/dist/components/hds/pagination/nav/number.js.map +1 -1
  141. package/dist/components/hds/pagination/numbered/index.js +1 -1
  142. package/dist/components/hds/pagination/numbered/index.js.map +1 -1
  143. package/dist/components/hds/pagination/size-selector/index.js +1 -1
  144. package/dist/components/hds/pagination/size-selector/index.js.map +1 -1
  145. package/dist/components/hds/popover-primitive/index.js +238 -0
  146. package/dist/components/hds/popover-primitive/index.js.map +1 -0
  147. package/dist/components/hds/reveal/index.js +21 -17
  148. package/dist/components/hds/reveal/index.js.map +1 -1
  149. package/dist/components/hds/reveal/toggle/button.js +5 -5
  150. package/dist/components/hds/reveal/toggle/button.js.map +1 -1
  151. package/dist/components/hds/rich-tooltip/bubble.js +60 -0
  152. package/dist/components/hds/rich-tooltip/bubble.js.map +1 -0
  153. package/dist/components/hds/rich-tooltip/index.js +26 -0
  154. package/dist/components/hds/rich-tooltip/index.js.map +1 -0
  155. package/dist/components/hds/rich-tooltip/toggle.js +85 -0
  156. package/dist/components/hds/rich-tooltip/toggle.js.map +1 -0
  157. package/dist/components/hds/separator/index.js +9 -8
  158. package/dist/components/hds/separator/index.js.map +1 -1
  159. package/dist/components/hds/separator/types.js +13 -0
  160. package/dist/components/hds/separator/types.js.map +1 -0
  161. package/dist/components/hds/side-nav/index.js +1 -1
  162. package/dist/components/hds/side-nav/index.js.map +1 -1
  163. package/dist/components/hds/side-nav/portal/target.js +1 -1
  164. package/dist/components/hds/side-nav/portal/target.js.map +1 -1
  165. package/dist/components/hds/stepper/step/indicator.js +9 -8
  166. package/dist/components/hds/stepper/step/indicator.js.map +1 -1
  167. package/dist/components/hds/stepper/task/indicator.js +10 -14
  168. package/dist/components/hds/stepper/task/indicator.js.map +1 -1
  169. package/dist/components/hds/stepper/types.js +21 -0
  170. package/dist/components/hds/stepper/types.js.map +1 -0
  171. package/dist/components/hds/table/index.js +1 -1
  172. package/dist/components/hds/table/index.js.map +1 -1
  173. package/dist/components/hds/table/th-button-sort.js +1 -1
  174. package/dist/components/hds/table/th-button-tooltip.js +1 -1
  175. package/dist/components/hds/table/th-selectable.js +1 -1
  176. package/dist/components/hds/table/th-selectable.js.map +1 -1
  177. package/dist/components/hds/table/th-sort.js +1 -1
  178. package/dist/components/hds/table/th.js +1 -1
  179. package/dist/components/hds/tabs/index.js +1 -1
  180. package/dist/components/hds/tabs/index.js.map +1 -1
  181. package/dist/components/hds/tabs/panel.js +1 -1
  182. package/dist/components/hds/tabs/panel.js.map +1 -1
  183. package/dist/components/hds/tabs/tab.js +1 -1
  184. package/dist/components/hds/tabs/tab.js.map +1 -1
  185. package/dist/components/hds/tag/index.js +11 -10
  186. package/dist/components/hds/tag/index.js.map +1 -1
  187. package/dist/components/hds/tag/types.js +13 -0
  188. package/dist/components/hds/tag/types.js.map +1 -0
  189. package/dist/components/hds/text/body.js +8 -7
  190. package/dist/components/hds/text/body.js.map +1 -1
  191. package/dist/components/hds/text/code.js +8 -7
  192. package/dist/components/hds/text/code.js.map +1 -1
  193. package/dist/components/hds/text/display.js +19 -12
  194. package/dist/components/hds/text/display.js.map +1 -1
  195. package/dist/components/hds/text/index.js +17 -13
  196. package/dist/components/hds/text/index.js.map +1 -1
  197. package/dist/components/hds/text/types.js +58 -0
  198. package/dist/components/hds/text/types.js.map +1 -0
  199. package/dist/components/hds/toast/index.js +8 -2
  200. package/dist/components/hds/toast/index.js.map +1 -1
  201. package/dist/components/hds/yield/index.js +8 -2
  202. package/dist/components/hds/yield/index.js.map +1 -1
  203. package/dist/helpers/hds-link-to-models.js.map +1 -1
  204. package/dist/modifiers/hds-anchored-position.js +175 -0
  205. package/dist/modifiers/hds-anchored-position.js.map +1 -0
  206. package/dist/modifiers/hds-register-event.js +40 -0
  207. package/dist/modifiers/hds-register-event.js.map +1 -0
  208. package/dist/modifiers/hds-tooltip.js +10 -14
  209. package/dist/modifiers/hds-tooltip.js.map +1 -1
  210. package/dist/styles/@hashicorp/design-system-components.css +565 -3
  211. package/dist/styles/@hashicorp/design-system-components.scss +1 -0
  212. package/dist/styles/@hashicorp/design-system-power-select-overrides.scss +0 -1
  213. package/dist/styles/components/code-block/theme.scss +1 -1
  214. package/dist/styles/components/dropdown.scss +7 -0
  215. package/dist/styles/components/form/index.scss +1 -0
  216. package/dist/styles/components/form/select.scss +0 -1
  217. package/dist/styles/components/form/super-select.scss +515 -0
  218. package/dist/styles/components/form/text-input.scss +0 -1
  219. package/dist/styles/components/form/textarea.scss +0 -1
  220. package/dist/styles/components/page-header.scss +1 -0
  221. package/dist/styles/components/rich-tooltip.scss +247 -0
  222. package/dist/styles/components/tabs.scss +2 -1
  223. package/dist/styles/components/tooltip.scss +1 -1
  224. package/package.json +58 -23
@@ -1,18 +1,19 @@
1
1
  import Component from '@glimmer/component';
2
2
  import { assert } from '@ember/debug';
3
+ import { HdsSeparatorSpacingValues } from './types.js';
3
4
  import { precompileTemplate } from '@ember/template-compilation';
4
5
  import { setComponentTemplate } from '@ember/component';
5
6
 
6
- var TEMPLATE = precompileTemplate("{{! @glint-nocheck: not typesafe yet }}\n{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n<hr class={{this.classNames}} ...attributes />");
7
+ var TEMPLATE = precompileTemplate("{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n<hr class={{this.classNames}} ...attributes />");
7
8
 
8
9
  /**
9
10
  * Copyright (c) HashiCorp, Inc.
10
11
  * SPDX-License-Identifier: MPL-2.0
11
12
  */
12
13
 
13
- const DEFAULT_SPACING = '24';
14
- const SPACING = ['24', '0'];
15
- class HdsSeparatorIndexComponent extends Component {
14
+ const DEFAULT_SPACING = HdsSeparatorSpacingValues.TwentyFour;
15
+ const SPACING = Object.values(HdsSeparatorSpacingValues);
16
+ class HdsSeparatorComponent extends Component {
16
17
  /**
17
18
  * Sets the margin for the separator
18
19
  * Accepted values: 24, 0
@@ -22,7 +23,7 @@ class HdsSeparatorIndexComponent extends Component {
22
23
  * @default 'default'
23
24
  */
24
25
  get spacing() {
25
- let {
26
+ const {
26
27
  spacing = DEFAULT_SPACING
27
28
  } = this.args;
28
29
  assert(`@spacing for "Hds::Separator" must be one of the following: ${SPACING.join(', ')}; received: ${spacing}`, SPACING.includes(spacing));
@@ -35,14 +36,14 @@ class HdsSeparatorIndexComponent extends Component {
35
36
  * @return {string} The "class" attribute to apply to the component.
36
37
  */
37
38
  get classNames() {
38
- let classes = ['hds-separator'];
39
+ const classes = ['hds-separator'];
39
40
 
40
41
  // add a class based on the @spacing argument
41
42
  classes.push(`hds-separator--spacing-${this.spacing}`);
42
43
  return classes.join(' ');
43
44
  }
44
45
  }
45
- setComponentTemplate(TEMPLATE, HdsSeparatorIndexComponent);
46
+ setComponentTemplate(TEMPLATE, HdsSeparatorComponent);
46
47
 
47
- export { DEFAULT_SPACING, SPACING, HdsSeparatorIndexComponent as default };
48
+ export { DEFAULT_SPACING, SPACING, HdsSeparatorComponent as default };
48
49
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/components/hds/separator/index.hbs","../../../../src/components/hds/separator/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<hr class={{this.classNames}} ...attributes />\")","/**\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_SPACING = '24';\nexport const SPACING = ['24', '0'];\n\nexport default class HdsSeparatorIndexComponent extends Component {\n /**\n * Sets the margin for the separator\n * Accepted values: 24, 0\n *\n * @param spacing\n * @type {string}\n * @default 'default'\n */\n get spacing() {\n let { spacing = DEFAULT_SPACING } = this.args;\n\n assert(\n `@spacing for \"Hds::Separator\" must be one of the following: ${SPACING.join(\n ', '\n )}; received: ${spacing}`,\n SPACING.includes(spacing)\n );\n\n return spacing;\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 let classes = ['hds-separator'];\n\n // add a class based on the @spacing argument\n classes.push(`hds-separator--spacing-${this.spacing}`);\n\n return classes.join(' ');\n }\n}\n"],"names":["DEFAULT_SPACING","SPACING","HdsSeparatorIndexComponent","Component","spacing","args","assert","join","includes","classNames","classes","push","setComponentTemplate","TEMPLATE"],"mappings":";;;;;AACA,eAAe,kBAAkB,CAAC,uKAAuK;;ACDzM;AACA;AACA;AACA;;AAKO,MAAMA,eAAe,GAAG,KAAI;MACtBC,OAAO,GAAG,CAAC,IAAI,EAAE,GAAG,EAAC;AAEnB,MAAMC,0BAA0B,SAASC,SAAS,CAAC;AAChE;AACF;AACA;AACA;AACA;AACA;AACA;AACA;EACE,IAAIC,OAAOA,GAAG;IACZ,IAAI;AAAEA,MAAAA,OAAO,GAAGJ,eAAAA;KAAiB,GAAG,IAAI,CAACK,IAAI,CAAA;AAE7CC,IAAAA,MAAM,CACH,CAA8DL,4DAAAA,EAAAA,OAAO,CAACM,IAAI,CACzE,IACF,CAAE,CAAA,YAAA,EAAcH,OAAQ,CAAA,CAAC,EACzBH,OAAO,CAACO,QAAQ,CAACJ,OAAO,CAC1B,CAAC,CAAA;AAED,IAAA,OAAOA,OAAO,CAAA;AAChB,GAAA;;AAEA;AACF;AACA;AACA;AACA;EACE,IAAIK,UAAUA,GAAG;AACf,IAAA,IAAIC,OAAO,GAAG,CAAC,eAAe,CAAC,CAAA;;AAE/B;IACAA,OAAO,CAACC,IAAI,CAAE,CAAA,uBAAA,EAAyB,IAAI,CAACP,OAAQ,EAAC,CAAC,CAAA;AAEtD,IAAA,OAAOM,OAAO,CAACH,IAAI,CAAC,GAAG,CAAC,CAAA;AAC1B,GAAA;AACF,CAAA;AAACK,oBAAA,CAAAC,QAAA,EAnCoBX,0BAA0B,CAAA;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/hds/separator/index.hbs","../../../../src/components/hds/separator/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<hr class={{this.classNames}} ...attributes />\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { assert } from '@ember/debug';\n\nimport { HdsSeparatorSpacingValues } from './types.ts';\nimport type { HdsSeparatorSpacing } from './types.ts';\n\nexport const DEFAULT_SPACING = HdsSeparatorSpacingValues.TwentyFour;\nexport const SPACING: string[] = Object.values(HdsSeparatorSpacingValues);\n\ninterface HdsSeparatorSignature {\n Args: {\n spacing?: HdsSeparatorSpacing;\n };\n Element: HTMLElement;\n}\n\nexport default class HdsSeparatorComponent extends Component<HdsSeparatorSignature> {\n /**\n * Sets the margin for the separator\n * Accepted values: 24, 0\n *\n * @param spacing\n * @type {string}\n * @default 'default'\n */\n get spacing() {\n const { spacing = DEFAULT_SPACING } = this.args;\n\n assert(\n `@spacing for \"Hds::Separator\" must be one of the following: ${SPACING.join(\n ', '\n )}; received: ${spacing}`,\n SPACING.includes(spacing)\n );\n\n return spacing;\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 const classes = ['hds-separator'];\n\n // add a class based on the @spacing argument\n classes.push(`hds-separator--spacing-${this.spacing}`);\n\n return classes.join(' ');\n }\n}\n"],"names":["DEFAULT_SPACING","HdsSeparatorSpacingValues","TwentyFour","SPACING","Object","values","HdsSeparatorComponent","Component","spacing","args","assert","join","includes","classNames","classes","push","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;AACA,eAAe,kBAAkB,CAAC,8HAA8H;;ACDhK;AACA;AACA;AACA;;AAQaA,MAAAA,eAAe,GAAGC,yBAAyB,CAACC,WAAU;AAC5D,MAAMC,OAAiB,GAAGC,MAAM,CAACC,MAAM,CAACJ,yBAAyB,EAAC;AAS1D,MAAMK,qBAAqB,SAASC,SAAS,CAAwB;AAClF;AACF;AACA;AACA;AACA;AACA;AACA;AACA;EACE,IAAIC,OAAOA,GAAG;IACZ,MAAM;AAAEA,MAAAA,OAAO,GAAGR,eAAAA;KAAiB,GAAG,IAAI,CAACS,IAAI,CAAA;AAE/CC,IAAAA,MAAM,CACH,CAA8DP,4DAAAA,EAAAA,OAAO,CAACQ,IAAI,CACzE,IACF,CAAE,CAAA,YAAA,EAAcH,OAAQ,CAAA,CAAC,EACzBL,OAAO,CAACS,QAAQ,CAACJ,OAAO,CAC1B,CAAC,CAAA;AAED,IAAA,OAAOA,OAAO,CAAA;AAChB,GAAA;;AAEA;AACF;AACA;AACA;AACA;EACE,IAAIK,UAAUA,GAAG;AACf,IAAA,MAAMC,OAAO,GAAG,CAAC,eAAe,CAAC,CAAA;;AAEjC;IACAA,OAAO,CAACC,IAAI,CAAE,CAAA,uBAAA,EAAyB,IAAI,CAACP,OAAQ,EAAC,CAAC,CAAA;AAEtD,IAAA,OAAOM,OAAO,CAACH,IAAI,CAAC,GAAG,CAAC,CAAA;AAC1B,GAAA;AACF,CAAA;AAACK,oBAAA,CAAAC,QAAA,EAnCoBX,qBAAqB,CAAA;;;;"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Copyright (c) HashiCorp, Inc.
3
+ * SPDX-License-Identifier: MPL-2.0
4
+ */
5
+
6
+ let HdsSeparatorSpacingValues = /*#__PURE__*/function (HdsSeparatorSpacingValues) {
7
+ HdsSeparatorSpacingValues["Zero"] = "0";
8
+ HdsSeparatorSpacingValues["TwentyFour"] = "24";
9
+ return HdsSeparatorSpacingValues;
10
+ }({});
11
+
12
+ export { HdsSeparatorSpacingValues };
13
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sources":["../../../../src/components/hds/separator/types.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nexport enum HdsSeparatorSpacingValues {\n Zero = '0',\n TwentyFour = '24',\n}\nexport type HdsSeparatorSpacing = `${HdsSeparatorSpacingValues}`;\n"],"names":["HdsSeparatorSpacingValues"],"mappings":"AAAA;AACA;AACA;AACA;;AAEYA,IAAAA,yBAAyB,0BAAzBA,yBAAyB,EAAA;EAAzBA,yBAAyB,CAAA,MAAA,CAAA,GAAA,GAAA,CAAA;EAAzBA,yBAAyB,CAAA,YAAA,CAAA,GAAA,IAAA,CAAA;AAAA,EAAA,OAAzBA,yBAAyB,CAAA;AAAA,CAAA,CAAA,EAAA;;;;"}
@@ -1,4 +1,4 @@
1
- import { a as _applyDecoratedDescriptor, b as _initializerDefineProperty, _ as _defineProperty } from '../../../_rollupPluginBabelHelpers-lqPQKyNs.js';
1
+ import { _ as _applyDecoratedDescriptor, b as _initializerDefineProperty, a as _defineProperty } from '../../../_rollupPluginBabelHelpers-NoJJJNhk.js';
2
2
  import Component from '@glimmer/component';
3
3
  import { tracked } from '@glimmer/tracking';
4
4
  import { action } from '@ember/object';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/components/hds/side-nav/index.hbs","../../../../src/components/hds/side-nav/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<Hds::SideNav::Base\\n class={{this.classNames}}\\n ...attributes\\n {{on \\\"transitionstart\\\" (fn this.setTransition \\\"start\\\")}}\\n {{on \\\"transitionend\\\" (fn this.setTransition \\\"end\\\")}}\\n {{focus-trap isActive=this.shouldTrapFocus}}\\n {{did-insert this.didInsert}}\\n>\\n <:root>\\n {{#if this.hasA11yRefocus}}\\n <NavigationNarrator\\n @routeChangeValidator={{@a11yRefocusRouteChangeValidator}}\\n @skipTo=\\\"#{{@a11yRefocusSkipTo}}\\\"\\n @skipText={{@a11yRefocusSkipText}}\\n @navigationText={{@a11yRefocusNavigationText}}\\n />\\n {{/if}}\\n {{#if this.showToggleButton}}\\n {{! template-lint-disable no-invalid-interactive}}\\n <div class=\\\"hds-side-nav__overlay\\\" {{on \\\"click\\\" this.toggleMinimizedStatus}} />\\n {{! template-lint-enable no-invalid-interactive}}\\n <Hds::SideNav::ToggleButton\\n aria-label={{this.ariaLabel}}\\n @icon={{if this.isMinimized \\\"chevrons-right\\\" \\\"chevrons-left\\\"}}\\n {{on \\\"click\\\" this.toggleMinimizedStatus}}\\n />\\n {{/if}}\\n </:root>\\n <:header as |Header|>\\n {{yield (hash Header=Header isMinimized=this.isMinimized) to=\\\"header\\\"}}\\n </:header>\\n <:body as |Body|>\\n {{yield (hash Body=Body isMinimized=this.isMinimized) to=\\\"body\\\"}}\\n </:body>\\n <:footer as |Footer|>\\n {{yield (hash Footer=Footer isMinimized=this.isMinimized) to=\\\"footer\\\"}}\\n </:footer>\\n</Hds::SideNav::Base>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { action } from '@ember/object';\nimport { assert } from '@ember/debug';\nimport { registerDestructor } from '@ember/destroyable';\n\nexport default class HdsSideNavComponent extends Component {\n @tracked isResponsive = this.args.isResponsive ?? true; // controls if the component reacts to viewport changes\n @tracked isMinimized = this.args.isMinimized ?? false; // sets the default state on 'desktop' viewports\n @tracked isCollapsible = this.args.isCollapsible ?? false; // controls if users can collapse the sidenav on 'desktop' viewports\n @tracked isAnimating = false;\n @tracked isDesktop = true;\n hasA11yRefocus = this.args.hasA11yRefocus ?? true;\n\n desktopMQVal = getComputedStyle(document.documentElement).getPropertyValue(\n '--hds-app-desktop-breakpoint'\n );\n\n constructor() {\n super(...arguments);\n this.desktopMQ = window.matchMedia(`(min-width:${this.desktopMQVal})`);\n this.addEventListeners();\n registerDestructor(this, () => {\n this.removeEventListeners();\n });\n\n if (this.args.hasA11yRefocus) {\n assert(\n '@a11yRefocusSkipTo for NavigatorNarrator (a11y-refocus) in \"Hds::SideNav\" must have a valid value',\n this.args.a11yRefocusSkipTo !== undefined\n );\n }\n }\n\n addEventListeners() {\n document.addEventListener('keydown', this.escapePress, true);\n this.desktopMQ.addEventListener('change', this.updateDesktopVariable, true);\n // if not instantiated as minimized via arguments\n if (!this.args.isMinimized) {\n // set initial state based on viewport\n this.updateDesktopVariable({ matches: this.desktopMQ.matches });\n }\n }\n\n removeEventListeners() {\n document.removeEventListener('keydown', this.escapePress, true);\n this.desktopMQ.removeEventListener(\n 'change',\n this.updateDesktopVariable,\n true\n );\n }\n\n get shouldTrapFocus() {\n return this.isResponsive && !this.isDesktop && !this.isMinimized;\n }\n\n get showToggleButton() {\n return (this.isResponsive && !this.isDesktop) || this.isCollapsible;\n }\n\n /**\n * @param ariaLabel\n * @type {string}\n * @default 'close menu'\n */\n get ariaLabel() {\n if (this.isMinimized) {\n return this.args.ariaLabel ?? 'Open menu';\n }\n return this.args.ariaLabel ?? 'Close menu';\n }\n\n get classNames() {\n let classes = []; // `hds-side-nav` is already set by the \"Hds::SideNav::Base\" component\n\n // add specific class names for the different possible states\n if (this.isResponsive) {\n classes.push('hds-side-nav--is-responsive');\n }\n if (!this.isDesktop && this.isResponsive) {\n classes.push('hds-side-nav--is-mobile');\n } else {\n classes.push('hds-side-nav--is-desktop');\n }\n if (this.isMinimized && this.isResponsive) {\n classes.push('hds-side-nav--is-minimized');\n } else {\n classes.push('hds-side-nav--is-not-minimized');\n }\n if (this.isAnimating) {\n classes.push('hds-side-nav--is-animating');\n }\n\n return classes.join(' ');\n }\n\n @action\n escapePress(event) {\n if (event.key === 'Escape' && !this.isMinimized && !this.isDesktop) {\n this.isMinimized = true;\n }\n }\n\n @action\n toggleMinimizedStatus() {\n this.isMinimized = !this.isMinimized;\n\n this.containersToHide.forEach((element) => {\n if (this.isMinimized) {\n element.setAttribute('inert', '');\n } else {\n element.removeAttribute('inert');\n }\n });\n\n let { onToggleMinimizedStatus } = this.args;\n\n if (typeof onToggleMinimizedStatus === 'function') {\n onToggleMinimizedStatus(this.isMinimized);\n }\n }\n\n @action\n didInsert(element) {\n this.containersToHide = element.querySelectorAll(\n '.hds-side-nav-hide-when-minimized'\n );\n }\n\n @action\n setTransition(phase, event) {\n // we only want to respond to `width` animation/transitions\n if (event.propertyName !== 'width') {\n return;\n }\n if (phase === 'start') {\n this.isAnimating = true;\n } else {\n this.isAnimating = false;\n }\n }\n\n @action\n updateDesktopVariable(event) {\n this.isDesktop = event.matches;\n\n // automatically minimize on narrow viewports (when not in desktop mode)\n this.isMinimized = !this.isDesktop;\n\n let { onDesktopViewportChange } = this.args;\n\n if (typeof onDesktopViewportChange === 'function') {\n onDesktopViewportChange(this.isDesktop);\n }\n }\n}\n"],"names":["HdsSideNavComponent","_class","Component","constructor","arguments","_initializerDefineProperty","_descriptor","_descriptor2","_descriptor3","_descriptor4","_descriptor5","_defineProperty","args","hasA11yRefocus","getComputedStyle","document","documentElement","getPropertyValue","desktopMQ","window","matchMedia","desktopMQVal","addEventListeners","registerDestructor","removeEventListeners","assert","a11yRefocusSkipTo","undefined","addEventListener","escapePress","updateDesktopVariable","isMinimized","matches","removeEventListener","shouldTrapFocus","isResponsive","isDesktop","showToggleButton","isCollapsible","ariaLabel","classNames","classes","push","isAnimating","join","event","key","toggleMinimizedStatus","containersToHide","forEach","element","setAttribute","removeAttribute","onToggleMinimizedStatus","didInsert","querySelectorAll","setTransition","phase","propertyName","onDesktopViewportChange","_applyDecoratedDescriptor","prototype","tracked","configurable","enumerable","writable","initializer","action","Object","getOwnPropertyDescriptor","setComponentTemplate","TEMPLATE"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/hds/side-nav/index.hbs","../../../../src/components/hds/side-nav/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<Hds::SideNav::Base\\n class={{this.classNames}}\\n ...attributes\\n {{on \\\"transitionstart\\\" (fn this.setTransition \\\"start\\\")}}\\n {{on \\\"transitionend\\\" (fn this.setTransition \\\"end\\\")}}\\n {{focus-trap isActive=this.shouldTrapFocus}}\\n {{did-insert this.didInsert}}\\n>\\n <:root>\\n {{#if this.hasA11yRefocus}}\\n <NavigationNarrator\\n @routeChangeValidator={{@a11yRefocusRouteChangeValidator}}\\n @skipTo=\\\"#{{@a11yRefocusSkipTo}}\\\"\\n @skipText={{@a11yRefocusSkipText}}\\n @navigationText={{@a11yRefocusNavigationText}}\\n />\\n {{/if}}\\n {{#if this.showToggleButton}}\\n {{! template-lint-disable no-invalid-interactive}}\\n <div class=\\\"hds-side-nav__overlay\\\" {{on \\\"click\\\" this.toggleMinimizedStatus}} />\\n {{! template-lint-enable no-invalid-interactive}}\\n <Hds::SideNav::ToggleButton\\n aria-label={{this.ariaLabel}}\\n @icon={{if this.isMinimized \\\"chevrons-right\\\" \\\"chevrons-left\\\"}}\\n {{on \\\"click\\\" this.toggleMinimizedStatus}}\\n />\\n {{/if}}\\n </:root>\\n <:header as |Header|>\\n {{yield (hash Header=Header isMinimized=this.isMinimized) to=\\\"header\\\"}}\\n </:header>\\n <:body as |Body|>\\n {{yield (hash Body=Body isMinimized=this.isMinimized) to=\\\"body\\\"}}\\n </:body>\\n <:footer as |Footer|>\\n {{yield (hash Footer=Footer isMinimized=this.isMinimized) to=\\\"footer\\\"}}\\n </:footer>\\n</Hds::SideNav::Base>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { action } from '@ember/object';\nimport { assert } from '@ember/debug';\nimport { registerDestructor } from '@ember/destroyable';\n\nexport default class HdsSideNavComponent extends Component {\n @tracked isResponsive = this.args.isResponsive ?? true; // controls if the component reacts to viewport changes\n @tracked isMinimized = this.args.isMinimized ?? false; // sets the default state on 'desktop' viewports\n @tracked isCollapsible = this.args.isCollapsible ?? false; // controls if users can collapse the sidenav on 'desktop' viewports\n @tracked isAnimating = false;\n @tracked isDesktop = true;\n hasA11yRefocus = this.args.hasA11yRefocus ?? true;\n\n desktopMQVal = getComputedStyle(document.documentElement).getPropertyValue(\n '--hds-app-desktop-breakpoint'\n );\n\n constructor() {\n super(...arguments);\n this.desktopMQ = window.matchMedia(`(min-width:${this.desktopMQVal})`);\n this.addEventListeners();\n registerDestructor(this, () => {\n this.removeEventListeners();\n });\n\n if (this.args.hasA11yRefocus) {\n assert(\n '@a11yRefocusSkipTo for NavigatorNarrator (a11y-refocus) in \"Hds::SideNav\" must have a valid value',\n this.args.a11yRefocusSkipTo !== undefined\n );\n }\n }\n\n addEventListeners() {\n document.addEventListener('keydown', this.escapePress, true);\n this.desktopMQ.addEventListener('change', this.updateDesktopVariable, true);\n // if not instantiated as minimized via arguments\n if (!this.args.isMinimized) {\n // set initial state based on viewport\n this.updateDesktopVariable({ matches: this.desktopMQ.matches });\n }\n }\n\n removeEventListeners() {\n document.removeEventListener('keydown', this.escapePress, true);\n this.desktopMQ.removeEventListener(\n 'change',\n this.updateDesktopVariable,\n true\n );\n }\n\n get shouldTrapFocus() {\n return this.isResponsive && !this.isDesktop && !this.isMinimized;\n }\n\n get showToggleButton() {\n return (this.isResponsive && !this.isDesktop) || this.isCollapsible;\n }\n\n /**\n * @param ariaLabel\n * @type {string}\n * @default 'close menu'\n */\n get ariaLabel() {\n if (this.isMinimized) {\n return this.args.ariaLabel ?? 'Open menu';\n }\n return this.args.ariaLabel ?? 'Close menu';\n }\n\n get classNames() {\n let classes = []; // `hds-side-nav` is already set by the \"Hds::SideNav::Base\" component\n\n // add specific class names for the different possible states\n if (this.isResponsive) {\n classes.push('hds-side-nav--is-responsive');\n }\n if (!this.isDesktop && this.isResponsive) {\n classes.push('hds-side-nav--is-mobile');\n } else {\n classes.push('hds-side-nav--is-desktop');\n }\n if (this.isMinimized && this.isResponsive) {\n classes.push('hds-side-nav--is-minimized');\n } else {\n classes.push('hds-side-nav--is-not-minimized');\n }\n if (this.isAnimating) {\n classes.push('hds-side-nav--is-animating');\n }\n\n return classes.join(' ');\n }\n\n @action\n escapePress(event) {\n if (event.key === 'Escape' && !this.isMinimized && !this.isDesktop) {\n this.isMinimized = true;\n }\n }\n\n @action\n toggleMinimizedStatus() {\n this.isMinimized = !this.isMinimized;\n\n this.containersToHide.forEach((element) => {\n if (this.isMinimized) {\n element.setAttribute('inert', '');\n } else {\n element.removeAttribute('inert');\n }\n });\n\n let { onToggleMinimizedStatus } = this.args;\n\n if (typeof onToggleMinimizedStatus === 'function') {\n onToggleMinimizedStatus(this.isMinimized);\n }\n }\n\n @action\n didInsert(element) {\n this.containersToHide = element.querySelectorAll(\n '.hds-side-nav-hide-when-minimized'\n );\n }\n\n @action\n setTransition(phase, event) {\n // we only want to respond to `width` animation/transitions\n if (event.propertyName !== 'width') {\n return;\n }\n if (phase === 'start') {\n this.isAnimating = true;\n } else {\n this.isAnimating = false;\n }\n }\n\n @action\n updateDesktopVariable(event) {\n this.isDesktop = event.matches;\n\n // automatically minimize on narrow viewports (when not in desktop mode)\n this.isMinimized = !this.isDesktop;\n\n let { onDesktopViewportChange } = this.args;\n\n if (typeof onDesktopViewportChange === 'function') {\n onDesktopViewportChange(this.isDesktop);\n }\n }\n}\n"],"names":["HdsSideNavComponent","_class","Component","constructor","arguments","_initializerDefineProperty","_descriptor","_descriptor2","_descriptor3","_descriptor4","_descriptor5","_defineProperty","args","hasA11yRefocus","getComputedStyle","document","documentElement","getPropertyValue","desktopMQ","window","matchMedia","desktopMQVal","addEventListeners","registerDestructor","removeEventListeners","assert","a11yRefocusSkipTo","undefined","addEventListener","escapePress","updateDesktopVariable","isMinimized","matches","removeEventListener","shouldTrapFocus","isResponsive","isDesktop","showToggleButton","isCollapsible","ariaLabel","classNames","classes","push","isAnimating","join","event","key","toggleMinimizedStatus","containersToHide","forEach","element","setAttribute","removeAttribute","onToggleMinimizedStatus","didInsert","querySelectorAll","setTransition","phase","propertyName","onDesktopViewportChange","_applyDecoratedDescriptor","prototype","tracked","configurable","enumerable","writable","initializer","action","Object","getOwnPropertyDescriptor","setComponentTemplate","TEMPLATE"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { a as _applyDecoratedDescriptor, b as _initializerDefineProperty, _ as _defineProperty } from '../../../../_rollupPluginBabelHelpers-lqPQKyNs.js';
1
+ import { _ as _applyDecoratedDescriptor, b as _initializerDefineProperty, a as _defineProperty } from '../../../../_rollupPluginBabelHelpers-NoJJJNhk.js';
2
2
  import Component from '@glimmer/component';
3
3
  import { inject } from '@ember/service';
4
4
  import { tracked } from '@glimmer/tracking';
@@ -1 +1 @@
1
- {"version":3,"file":"target.js","sources":["../../../../../src/components/hds/side-nav/portal/target.hbs","../../../../../src/components/hds/side-nav/portal/target.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=\\\"hds-side-nav__content\\\" ...attributes>\\n <PortalTarget\\n @multiple={{true}}\\n @onChange={{this.panelsChanged}}\\n @name={{if @targetName @targetName \\\"hds-side-nav-portal-target\\\"}}\\n class=\\\"hds-side-nav__content-panels hds-side-nav-hide-when-minimized\\\"\\n {{did-update this.didUpdateSubnav this.numSubnavs}}\\n />\\n</div>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { inject as service } from '@ember/service';\nimport { tracked } from '@glimmer/tracking';\nimport { action } from '@ember/object';\nimport { DEBUG } from '@glimmer/env';\nimport Ember from 'ember';\n\nexport default class SidenavPortalTarget extends Component {\n @service router;\n\n @tracked numSubnavs = 0;\n @tracked lastPanelEl = null;\n\n static get prefersReducedMotionOverride() {\n return Ember.testing;\n }\n\n prefersReducedMotionMQ = window.matchMedia(\n '(prefers-reduced-motion: reduce)'\n );\n\n get prefersReducedMotion() {\n return (\n this.constructor.prefersReducedMotionOverride ||\n (this.prefersReducedMotionMQ && this.prefersReducedMotionMQ.matches)\n );\n }\n\n @action\n panelsChanged(portalCount) {\n this.numSubnavs = portalCount;\n }\n\n @action\n didUpdateSubnav(element, [count]) {\n this.animateSubnav(element, [count]);\n }\n\n @action\n animateSubnav(element, [count]) {\n /*\n * Here is what the layout looks like for this setup\n *\n\n SideNav\n +----------------------+\n | +------------------+ |\n | | (\"header\") | |\n | +------------------+ |\n | |\n | +------------------+ |\n | | (\"body\") | |\n (PortalTarget) | | | |\n +----------------------------------------------+ | |\n | +----------+ +----------+ | +----------+ | | |\n | | (Portal) | | (Portal) | | (Portal) | | | |\n | | | | | | | | | | |\n | | hidden | | hidden | | *active* | | | |\n | | panel | | panel | | | panel | | | |\n | | | | | | | | | |\n | | | | | | | | | | |\n | | | | | | | | | |\n | | | | | | | | | | |\n | | | | | | | | | |\n | | | | | | | | | | |\n | | | | | | | | | |\n | +----------+ +----------+ | +----------+ | | |\n +----------------------------------------------+ | |\n | | | |\n | +------------------+ |\n | |\n | +------------------+ |\n | | (\"footer\") | |\n | +------------------+ |\n +----------------------+\n\n *\n * every time `HcAppFrame::SideNav::Portal` renders, it contains a portaled \"panel\"\n * that is rendered into the `hds-side-nav__content-panels` (inside the PortalTarget).\n *\n * Rendering or unrendering other `HcAppFrame::SideNav::Portal`s triggers the number of\n * subnavs to change (via `numSubnavs`), so this function runs and slides\n * `hds-side-nav__content-panels` left or right using the `element.animate` api.\n *\n * */\n\n let activeIndex = count - 1;\n let targetElement = element;\n let { prefersReducedMotion } = this;\n\n let styles = getComputedStyle(targetElement);\n let columnWidth = styles.getPropertyValue(\n '--hds-app-sidenav-width-expanded'\n );\n let slideDuration = prefersReducedMotion ? 0 : 150;\n let fadeDuration = prefersReducedMotion ? 0 : 175;\n let fadeDelay = prefersReducedMotion ? 0 : 50;\n\n // slide entire parent panel\n let start = styles.transform;\n let end = `translateX(-${activeIndex * parseInt(columnWidth, 10)}px)`;\n let anim = targetElement.animate(\n [{ transform: start }, { transform: end }],\n {\n duration: slideDuration,\n easing: 'cubic-bezier(0.65, 0, 0.35, 1)',\n fill: 'forwards',\n }\n );\n\n anim.finished.then(() => {\n // uncomment this if we need/want to scroll the element to the top\n // targetElement.scrollIntoView(true);\n if (activeIndex > 0) {\n let allPrev = Array.from(targetElement.children).slice(0, activeIndex);\n for (let ele of allPrev) {\n ele.ariaHidden = 'true';\n ele.style.setProperty('visibility', 'hidden');\n ele.style.setProperty('opacity', '0');\n }\n }\n // Notice: we don't add the styles by default because it writes a `style` attribute to the element and it causes an additional re-render\n if (DEBUG) {\n // Check the visibility of the element before attempting to commitStyles.\n if (targetElement.offsetParent !== null) {\n anim.commitStyles();\n }\n }\n });\n\n // fade in next panel\n let nextPanelEl = targetElement.children[activeIndex];\n\n // get reference to last child panel\n let lastPanelEl = targetElement.children[targetElement.children.length - 1];\n\n if (nextPanelEl) {\n nextPanelEl.ariaHidden = 'false';\n nextPanelEl.style.setProperty('visibility', 'visible');\n // this eliminates a flicker if there's only one subnav rendering or if we\n // already just rendered this panel.\n if (activeIndex === 0 || nextPanelEl.isSameNode(this.lastPanelEl)) {\n fadeDelay = 0;\n fadeDuration = 0;\n }\n\n // remember the last panel\n this.lastPanelEl = lastPanelEl;\n\n nextPanelEl.animate([{ opacity: '0' }, { opacity: '1' }], {\n delay: fadeDelay,\n duration: fadeDuration,\n fill: 'forwards',\n });\n }\n }\n}\n"],"names":["SidenavPortalTarget","_class","Component","constructor","args","_initializerDefineProperty","_descriptor","_descriptor2","_descriptor3","_defineProperty","window","matchMedia","prefersReducedMotionOverride","Ember","testing","prefersReducedMotion","prefersReducedMotionMQ","matches","panelsChanged","portalCount","numSubnavs","didUpdateSubnav","element","count","animateSubnav","activeIndex","targetElement","styles","getComputedStyle","columnWidth","getPropertyValue","slideDuration","fadeDuration","fadeDelay","start","transform","end","parseInt","anim","animate","duration","easing","fill","finished","then","allPrev","Array","from","children","slice","ele","ariaHidden","style","setProperty","DEBUG","offsetParent","commitStyles","nextPanelEl","lastPanelEl","length","isSameNode","opacity","delay","_applyDecoratedDescriptor","prototype","service","configurable","enumerable","writable","initializer","tracked","action","Object","getOwnPropertyDescriptor","setComponentTemplate","TEMPLATE"],"mappings":"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"}
1
+ {"version":3,"file":"target.js","sources":["../../../../../src/components/hds/side-nav/portal/target.hbs","../../../../../src/components/hds/side-nav/portal/target.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=\\\"hds-side-nav__content\\\" ...attributes>\\n <PortalTarget\\n @multiple={{true}}\\n @onChange={{this.panelsChanged}}\\n @name={{if @targetName @targetName \\\"hds-side-nav-portal-target\\\"}}\\n class=\\\"hds-side-nav__content-panels hds-side-nav-hide-when-minimized\\\"\\n {{did-update this.didUpdateSubnav this.numSubnavs}}\\n />\\n</div>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { inject as service } from '@ember/service';\nimport { tracked } from '@glimmer/tracking';\nimport { action } from '@ember/object';\nimport { DEBUG } from '@glimmer/env';\nimport Ember from 'ember';\n\nexport default class SidenavPortalTarget extends Component {\n @service router;\n\n @tracked numSubnavs = 0;\n @tracked lastPanelEl = null;\n\n static get prefersReducedMotionOverride() {\n return Ember.testing;\n }\n\n prefersReducedMotionMQ = window.matchMedia(\n '(prefers-reduced-motion: reduce)'\n );\n\n get prefersReducedMotion() {\n return (\n this.constructor.prefersReducedMotionOverride ||\n (this.prefersReducedMotionMQ && this.prefersReducedMotionMQ.matches)\n );\n }\n\n @action\n panelsChanged(portalCount) {\n this.numSubnavs = portalCount;\n }\n\n @action\n didUpdateSubnav(element, [count]) {\n this.animateSubnav(element, [count]);\n }\n\n @action\n animateSubnav(element, [count]) {\n /*\n * Here is what the layout looks like for this setup\n *\n\n SideNav\n +----------------------+\n | +------------------+ |\n | | (\"header\") | |\n | +------------------+ |\n | |\n | +------------------+ |\n | | (\"body\") | |\n (PortalTarget) | | | |\n +----------------------------------------------+ | |\n | +----------+ +----------+ | +----------+ | | |\n | | (Portal) | | (Portal) | | (Portal) | | | |\n | | | | | | | | | | |\n | | hidden | | hidden | | *active* | | | |\n | | panel | | panel | | | panel | | | |\n | | | | | | | | | |\n | | | | | | | | | | |\n | | | | | | | | | |\n | | | | | | | | | | |\n | | | | | | | | | |\n | | | | | | | | | | |\n | | | | | | | | | |\n | +----------+ +----------+ | +----------+ | | |\n +----------------------------------------------+ | |\n | | | |\n | +------------------+ |\n | |\n | +------------------+ |\n | | (\"footer\") | |\n | +------------------+ |\n +----------------------+\n\n *\n * every time `HcAppFrame::SideNav::Portal` renders, it contains a portaled \"panel\"\n * that is rendered into the `hds-side-nav__content-panels` (inside the PortalTarget).\n *\n * Rendering or unrendering other `HcAppFrame::SideNav::Portal`s triggers the number of\n * subnavs to change (via `numSubnavs`), so this function runs and slides\n * `hds-side-nav__content-panels` left or right using the `element.animate` api.\n *\n * */\n\n let activeIndex = count - 1;\n let targetElement = element;\n let { prefersReducedMotion } = this;\n\n let styles = getComputedStyle(targetElement);\n let columnWidth = styles.getPropertyValue(\n '--hds-app-sidenav-width-expanded'\n );\n let slideDuration = prefersReducedMotion ? 0 : 150;\n let fadeDuration = prefersReducedMotion ? 0 : 175;\n let fadeDelay = prefersReducedMotion ? 0 : 50;\n\n // slide entire parent panel\n let start = styles.transform;\n let end = `translateX(-${activeIndex * parseInt(columnWidth, 10)}px)`;\n let anim = targetElement.animate(\n [{ transform: start }, { transform: end }],\n {\n duration: slideDuration,\n easing: 'cubic-bezier(0.65, 0, 0.35, 1)',\n fill: 'forwards',\n }\n );\n\n anim.finished.then(() => {\n // uncomment this if we need/want to scroll the element to the top\n // targetElement.scrollIntoView(true);\n if (activeIndex > 0) {\n let allPrev = Array.from(targetElement.children).slice(0, activeIndex);\n for (let ele of allPrev) {\n ele.ariaHidden = 'true';\n ele.style.setProperty('visibility', 'hidden');\n ele.style.setProperty('opacity', '0');\n }\n }\n // Notice: we don't add the styles by default because it writes a `style` attribute to the element and it causes an additional re-render\n if (DEBUG) {\n // Check the visibility of the element before attempting to commitStyles.\n if (targetElement.offsetParent !== null) {\n anim.commitStyles();\n }\n }\n });\n\n // fade in next panel\n let nextPanelEl = targetElement.children[activeIndex];\n\n // get reference to last child panel\n let lastPanelEl = targetElement.children[targetElement.children.length - 1];\n\n if (nextPanelEl) {\n nextPanelEl.ariaHidden = 'false';\n nextPanelEl.style.setProperty('visibility', 'visible');\n // this eliminates a flicker if there's only one subnav rendering or if we\n // already just rendered this panel.\n if (activeIndex === 0 || nextPanelEl.isSameNode(this.lastPanelEl)) {\n fadeDelay = 0;\n fadeDuration = 0;\n }\n\n // remember the last panel\n this.lastPanelEl = lastPanelEl;\n\n nextPanelEl.animate([{ opacity: '0' }, { opacity: '1' }], {\n delay: fadeDelay,\n duration: fadeDuration,\n fill: 'forwards',\n });\n }\n }\n}\n"],"names":["SidenavPortalTarget","_class","Component","constructor","args","_initializerDefineProperty","_descriptor","_descriptor2","_descriptor3","_defineProperty","window","matchMedia","prefersReducedMotionOverride","Ember","testing","prefersReducedMotion","prefersReducedMotionMQ","matches","panelsChanged","portalCount","numSubnavs","didUpdateSubnav","element","count","animateSubnav","activeIndex","targetElement","styles","getComputedStyle","columnWidth","getPropertyValue","slideDuration","fadeDuration","fadeDelay","start","transform","end","parseInt","anim","animate","duration","easing","fill","finished","then","allPrev","Array","from","children","slice","ele","ariaHidden","style","setProperty","DEBUG","offsetParent","commitStyles","nextPanelEl","lastPanelEl","length","isSameNode","opacity","delay","_applyDecoratedDescriptor","prototype","service","configurable","enumerable","writable","initializer","tracked","action","Object","getOwnPropertyDescriptor","setComponentTemplate","TEMPLATE"],"mappings":"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"}
@@ -1,18 +1,19 @@
1
1
  import Component from '@glimmer/component';
2
2
  import { assert } from '@ember/debug';
3
+ import { HdsStepperStatusesValues } from '../types.js';
3
4
  import { precompileTemplate } from '@ember/template-compilation';
4
5
  import { setComponentTemplate } from '@ember/component';
5
6
 
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 <div class=\"hds-stepper-indicator-step__svg-hexagon\">\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\">\n <path\n d=\"m3.664 6.264 6.99-4.42a2.5 2.5 0 0 1 2.67-.002l7.01 4.422A2.5 2.5 0 0 1 21.5 8.38v7.242a2.5 2.5 0 0 1-1.166 2.115l-7.01 4.422a2.5 2.5 0 0 1-2.67-.002l-6.99-4.42A2.5 2.5 0 0 1 2.5 15.623V8.377a2.5 2.5 0 0 1 1.164-2.113Z\"\n stroke-width=\"1\"\n ></path>\n </svg>\n </div>\n <div class=\"hds-stepper-indicator-step__status\">\n {{#if (eq @status \"processing\")}}\n <FlightIcon class=\"hds-stepper-indicator-step__icon\" @name=\"loading\" @size=\"16\" />\n {{else if (eq @status \"complete\")}}\n <FlightIcon class=\"hds-stepper-indicator-step__icon\" @name=\"check\" @size=\"16\" />\n {{else}}\n <Hds::Text::Body\n class=\"hds-stepper-indicator-step__text\"\n @tag=\"span\"\n @size=\"100\"\n @weight=\"medium\"\n >{{@text}}</Hds::Text::Body>\n {{/if}}\n </div>\n</div>");
7
+ var TEMPLATE = precompileTemplate("{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n<div class={{this.classNames}} ...attributes>\n <div class=\"hds-stepper-indicator-step__svg-hexagon\">\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\">\n <path\n d=\"m3.664 6.264 6.99-4.42a2.5 2.5 0 0 1 2.67-.002l7.01 4.422A2.5 2.5 0 0 1 21.5 8.38v7.242a2.5 2.5 0 0 1-1.166 2.115l-7.01 4.422a2.5 2.5 0 0 1-2.67-.002l-6.99-4.42A2.5 2.5 0 0 1 2.5 15.623V8.377a2.5 2.5 0 0 1 1.164-2.113Z\"\n stroke-width=\"1\"\n ></path>\n </svg>\n </div>\n <div class=\"hds-stepper-indicator-step__status\">\n {{#if (eq @status \"processing\")}}\n <FlightIcon class=\"hds-stepper-indicator-step__icon\" @name=\"loading\" @size=\"16\" />\n {{else if (eq @status \"complete\")}}\n <FlightIcon class=\"hds-stepper-indicator-step__icon\" @name=\"check\" @size=\"16\" />\n {{else}}\n <Hds::Text::Body\n class=\"hds-stepper-indicator-step__text\"\n @tag=\"span\"\n @size=\"100\"\n @weight=\"medium\"\n >{{@text}}</Hds::Text::Body>\n {{/if}}\n </div>\n</div>");
7
8
 
8
9
  /**
9
10
  * Copyright (c) HashiCorp, Inc.
10
11
  * SPDX-License-Identifier: MPL-2.0
11
12
  */
12
13
 
13
- const DEFAULT_STATUS = 'incomplete';
14
- const STATUSES = ['incomplete', 'progress', 'processing', 'complete'];
15
- class HdsStepperIndicatorStepIndexComponent extends Component {
14
+ const DEFAULT_STATUS = HdsStepperStatusesValues.Incomplete;
15
+ const STATUSES = Object.values(HdsStepperStatusesValues);
16
+ class HdsStepperStepIndicatorComponent extends Component {
16
17
  /**
17
18
  * @param status
18
19
  * @type {string}
@@ -20,7 +21,7 @@ class HdsStepperIndicatorStepIndexComponent extends Component {
20
21
  */
21
22
 
22
23
  get status() {
23
- let {
24
+ const {
24
25
  status = DEFAULT_STATUS
25
26
  } = this.args;
26
27
  assert(`@status for "Hds::Stepper::Step::Indicator" must be one of the following: ${STATUSES.join(', ')}; received: ${status}`, STATUSES.includes(status));
@@ -43,7 +44,7 @@ class HdsStepperIndicatorStepIndexComponent extends Component {
43
44
  * @return {string} The "class" attribute to apply to the component.
44
45
  */
45
46
  get classNames() {
46
- let classes = ['hds-stepper-indicator-step'];
47
+ const classes = ['hds-stepper-indicator-step'];
47
48
 
48
49
  // Based on the @status arg
49
50
  classes.push(`hds-stepper-indicator-step--status-${this.status}`);
@@ -53,7 +54,7 @@ class HdsStepperIndicatorStepIndexComponent extends Component {
53
54
  return classes.join(' ');
54
55
  }
55
56
  }
56
- setComponentTemplate(TEMPLATE, HdsStepperIndicatorStepIndexComponent);
57
+ setComponentTemplate(TEMPLATE, HdsStepperStepIndicatorComponent);
57
58
 
58
- export { DEFAULT_STATUS, STATUSES, HdsStepperIndicatorStepIndexComponent as default };
59
+ export { DEFAULT_STATUS, STATUSES, HdsStepperStepIndicatorComponent as default };
59
60
  //# sourceMappingURL=indicator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"indicator.js","sources":["../../../../../src/components/hds/stepper/step/indicator.hbs","../../../../../src/components/hds/stepper/step/indicator.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 <div class=\\\"hds-stepper-indicator-step__svg-hexagon\\\">\\n <svg width=\\\"24\\\" height=\\\"24\\\" viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" aria-hidden=\\\"true\\\">\\n <path\\n d=\\\"m3.664 6.264 6.99-4.42a2.5 2.5 0 0 1 2.67-.002l7.01 4.422A2.5 2.5 0 0 1 21.5 8.38v7.242a2.5 2.5 0 0 1-1.166 2.115l-7.01 4.422a2.5 2.5 0 0 1-2.67-.002l-6.99-4.42A2.5 2.5 0 0 1 2.5 15.623V8.377a2.5 2.5 0 0 1 1.164-2.113Z\\\"\\n stroke-width=\\\"1\\\"\\n ></path>\\n </svg>\\n </div>\\n <div class=\\\"hds-stepper-indicator-step__status\\\">\\n {{#if (eq @status \\\"processing\\\")}}\\n <FlightIcon class=\\\"hds-stepper-indicator-step__icon\\\" @name=\\\"loading\\\" @size=\\\"16\\\" />\\n {{else if (eq @status \\\"complete\\\")}}\\n <FlightIcon class=\\\"hds-stepper-indicator-step__icon\\\" @name=\\\"check\\\" @size=\\\"16\\\" />\\n {{else}}\\n <Hds::Text::Body\\n class=\\\"hds-stepper-indicator-step__text\\\"\\n @tag=\\\"span\\\"\\n @size=\\\"100\\\"\\n @weight=\\\"medium\\\"\\n >{{@text}}</Hds::Text::Body>\\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 { assert } from '@ember/debug';\n\nexport const DEFAULT_STATUS = 'incomplete';\nexport const STATUSES = ['incomplete', 'progress', 'processing', 'complete'];\n\nexport default class HdsStepperIndicatorStepIndexComponent extends Component {\n /**\n * @param status\n * @type {string}\n * @default \"incomplete\"\n */\n\n get status() {\n let { status = DEFAULT_STATUS } = this.args;\n\n assert(\n `@status for \"Hds::Stepper::Step::Indicator\" must be one of the following: ${STATUSES.join(\n ', '\n )}; received: ${status}`,\n STATUSES.includes(status)\n );\n\n return status;\n }\n\n /**\n * @param isInteractive\n * @type {boolean}\n * @default false\n */\n\n get isInteractive() {\n return this.args.isInteractive || false;\n }\n\n /**\n * Get the class names to apply to the component.\n * @method IndicatorStep#classNames\n * @return {string} The \"class\" attribute to apply to the component.\n */\n get classNames() {\n let classes = ['hds-stepper-indicator-step'];\n\n // Based on the @status arg\n classes.push(`hds-stepper-indicator-step--status-${this.status}`);\n\n if (this.isInteractive) {\n classes.push(`hds-stepper-indicator-step--is-interactive`);\n }\n\n return classes.join(' ');\n }\n}\n"],"names":["DEFAULT_STATUS","STATUSES","HdsStepperIndicatorStepIndexComponent","Component","status","args","assert","join","includes","isInteractive","classNames","classes","push","setComponentTemplate","TEMPLATE"],"mappings":";;;;;AACA,eAAe,kBAAkB,CAAC,6sCAA6sC;;ACD/uC;AACA;AACA;AACA;;AAKO,MAAMA,cAAc,GAAG,aAAY;AACnC,MAAMC,QAAQ,GAAG,CAAC,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAC;AAE7D,MAAMC,qCAAqC,SAASC,SAAS,CAAC;AAC3E;AACF;AACA;AACA;AACA;;EAEE,IAAIC,MAAMA,GAAG;IACX,IAAI;AAAEA,MAAAA,MAAM,GAAGJ,cAAAA;KAAgB,GAAG,IAAI,CAACK,IAAI,CAAA;AAE3CC,IAAAA,MAAM,CACH,CAA4EL,0EAAAA,EAAAA,QAAQ,CAACM,IAAI,CACxF,IACF,CAAE,CAAA,YAAA,EAAcH,MAAO,CAAA,CAAC,EACxBH,QAAQ,CAACO,QAAQ,CAACJ,MAAM,CAC1B,CAAC,CAAA;AAED,IAAA,OAAOA,MAAM,CAAA;AACf,GAAA;;AAEA;AACF;AACA;AACA;AACA;;EAEE,IAAIK,aAAaA,GAAG;AAClB,IAAA,OAAO,IAAI,CAACJ,IAAI,CAACI,aAAa,IAAI,KAAK,CAAA;AACzC,GAAA;;AAEA;AACF;AACA;AACA;AACA;EACE,IAAIC,UAAUA,GAAG;AACf,IAAA,IAAIC,OAAO,GAAG,CAAC,4BAA4B,CAAC,CAAA;;AAE5C;IACAA,OAAO,CAACC,IAAI,CAAE,CAAA,mCAAA,EAAqC,IAAI,CAACR,MAAO,EAAC,CAAC,CAAA;IAEjE,IAAI,IAAI,CAACK,aAAa,EAAE;AACtBE,MAAAA,OAAO,CAACC,IAAI,CAAE,CAAA,0CAAA,CAA2C,CAAC,CAAA;AAC5D,KAAA;AAEA,IAAA,OAAOD,OAAO,CAACJ,IAAI,CAAC,GAAG,CAAC,CAAA;AAC1B,GAAA;AACF,CAAA;AAACM,oBAAA,CAAAC,QAAA,EA/CoBZ,qCAAqC,CAAA;;;;"}
1
+ {"version":3,"file":"indicator.js","sources":["../../../../../src/components/hds/stepper/step/indicator.hbs","../../../../../src/components/hds/stepper/step/indicator.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n<div class={{this.classNames}} ...attributes>\\n <div class=\\\"hds-stepper-indicator-step__svg-hexagon\\\">\\n <svg width=\\\"24\\\" height=\\\"24\\\" viewBox=\\\"0 0 24 24\\\" fill=\\\"none\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" aria-hidden=\\\"true\\\">\\n <path\\n d=\\\"m3.664 6.264 6.99-4.42a2.5 2.5 0 0 1 2.67-.002l7.01 4.422A2.5 2.5 0 0 1 21.5 8.38v7.242a2.5 2.5 0 0 1-1.166 2.115l-7.01 4.422a2.5 2.5 0 0 1-2.67-.002l-6.99-4.42A2.5 2.5 0 0 1 2.5 15.623V8.377a2.5 2.5 0 0 1 1.164-2.113Z\\\"\\n stroke-width=\\\"1\\\"\\n ></path>\\n </svg>\\n </div>\\n <div class=\\\"hds-stepper-indicator-step__status\\\">\\n {{#if (eq @status \\\"processing\\\")}}\\n <FlightIcon class=\\\"hds-stepper-indicator-step__icon\\\" @name=\\\"loading\\\" @size=\\\"16\\\" />\\n {{else if (eq @status \\\"complete\\\")}}\\n <FlightIcon class=\\\"hds-stepper-indicator-step__icon\\\" @name=\\\"check\\\" @size=\\\"16\\\" />\\n {{else}}\\n <Hds::Text::Body\\n class=\\\"hds-stepper-indicator-step__text\\\"\\n @tag=\\\"span\\\"\\n @size=\\\"100\\\"\\n @weight=\\\"medium\\\"\\n >{{@text}}</Hds::Text::Body>\\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 { assert } from '@ember/debug';\n\nimport { HdsStepperStatusesValues } from '../types.ts';\nimport type { HdsStepperStatuses } from '../types.ts';\n\nexport const DEFAULT_STATUS = HdsStepperStatusesValues.Incomplete;\nexport const STATUSES: string[] = Object.values(HdsStepperStatusesValues);\n\ninterface HdsStepperStepIndicatorSignature {\n Args: {\n status: HdsStepperStatuses;\n isInteractive?: boolean;\n text: string;\n };\n Element: HTMLDivElement;\n}\n\nexport default class HdsStepperStepIndicatorComponent extends Component<HdsStepperStepIndicatorSignature> {\n /**\n * @param status\n * @type {string}\n * @default \"incomplete\"\n */\n\n get status() {\n const { status = DEFAULT_STATUS } = this.args;\n\n assert(\n `@status for \"Hds::Stepper::Step::Indicator\" must be one of the following: ${STATUSES.join(\n ', '\n )}; received: ${status}`,\n STATUSES.includes(status)\n );\n\n return status;\n }\n\n /**\n * @param isInteractive\n * @type {boolean}\n * @default false\n */\n\n get isInteractive() {\n return this.args.isInteractive || false;\n }\n\n /**\n * Get the class names to apply to the component.\n * @method IndicatorStep#classNames\n * @return {string} The \"class\" attribute to apply to the component.\n */\n get classNames() {\n const classes = ['hds-stepper-indicator-step'];\n\n // Based on the @status arg\n classes.push(`hds-stepper-indicator-step--status-${this.status}`);\n\n if (this.isInteractive) {\n classes.push(`hds-stepper-indicator-step--is-interactive`);\n }\n\n return classes.join(' ');\n }\n}\n"],"names":["DEFAULT_STATUS","HdsStepperStatusesValues","Incomplete","STATUSES","Object","values","HdsStepperStepIndicatorComponent","Component","status","args","assert","join","includes","isInteractive","classNames","classes","push","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;AACA,eAAe,kBAAkB,CAAC,oqCAAoqC;;ACDtsC;AACA;AACA;AACA;;AAQaA,MAAAA,cAAc,GAAGC,wBAAwB,CAACC,WAAU;AAC1D,MAAMC,QAAkB,GAAGC,MAAM,CAACC,MAAM,CAACJ,wBAAwB,EAAC;AAW1D,MAAMK,gCAAgC,SAASC,SAAS,CAAmC;AACxG;AACF;AACA;AACA;AACA;;EAEE,IAAIC,MAAMA,GAAG;IACX,MAAM;AAAEA,MAAAA,MAAM,GAAGR,cAAAA;KAAgB,GAAG,IAAI,CAACS,IAAI,CAAA;AAE7CC,IAAAA,MAAM,CACH,CAA4EP,0EAAAA,EAAAA,QAAQ,CAACQ,IAAI,CACxF,IACF,CAAE,CAAA,YAAA,EAAcH,MAAO,CAAA,CAAC,EACxBL,QAAQ,CAACS,QAAQ,CAACJ,MAAM,CAC1B,CAAC,CAAA;AAED,IAAA,OAAOA,MAAM,CAAA;AACf,GAAA;;AAEA;AACF;AACA;AACA;AACA;;EAEE,IAAIK,aAAaA,GAAG;AAClB,IAAA,OAAO,IAAI,CAACJ,IAAI,CAACI,aAAa,IAAI,KAAK,CAAA;AACzC,GAAA;;AAEA;AACF;AACA;AACA;AACA;EACE,IAAIC,UAAUA,GAAG;AACf,IAAA,MAAMC,OAAO,GAAG,CAAC,4BAA4B,CAAC,CAAA;;AAE9C;IACAA,OAAO,CAACC,IAAI,CAAE,CAAA,mCAAA,EAAqC,IAAI,CAACR,MAAO,EAAC,CAAC,CAAA;IAEjE,IAAI,IAAI,CAACK,aAAa,EAAE;AACtBE,MAAAA,OAAO,CAACC,IAAI,CAAE,CAAA,0CAAA,CAA2C,CAAC,CAAA;AAC5D,KAAA;AAEA,IAAA,OAAOD,OAAO,CAACJ,IAAI,CAAC,GAAG,CAAC,CAAA;AAC1B,GAAA;AACF,CAAA;AAACM,oBAAA,CAAAC,QAAA,EA/CoBZ,gCAAgC,CAAA;;;;"}
@@ -1,24 +1,20 @@
1
1
  import Component from '@glimmer/component';
2
2
  import { assert } from '@ember/debug';
3
+ import { HdsStepperStatusesValues, HdsStepperStatusToIconsValues } from '../types.js';
3
4
  import { precompileTemplate } from '@ember/template-compilation';
4
5
  import { setComponentTemplate } from '@ember/component';
5
6
 
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 <FlightIcon class=\"hds-stepper-indicator-task__icon\" @name={{this.iconName}} @size=\"16\" />\n</div>");
7
+ var TEMPLATE = precompileTemplate("{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n<div class={{this.classNames}} ...attributes>\n <FlightIcon class=\"hds-stepper-indicator-task__icon\" @name={{this.iconName}} @size=\"16\" />\n</div>");
7
8
 
8
9
  /**
9
10
  * Copyright (c) HashiCorp, Inc.
10
11
  * SPDX-License-Identifier: MPL-2.0
11
12
  */
12
13
 
13
- const DEFAULT_STATUS = 'incomplete';
14
- const STATUSES = ['incomplete', 'progress', 'processing', 'complete'];
15
- const MAPPING_STATUS_TO_ICONS = {
16
- incomplete: 'circle',
17
- progress: 'circle-half',
18
- processing: 'loading',
19
- complete: 'check-circle'
20
- };
21
- class HdsStepperIndicatorTaskIndexComponent extends Component {
14
+ const DEFAULT_STATUS = HdsStepperStatusesValues.Incomplete;
15
+ const STATUSES = Object.values(HdsStepperStatusesValues);
16
+ const MAPPING_STATUS_TO_ICONS = HdsStepperStatusToIconsValues;
17
+ class HdsStepperTaskIndicatorComponent extends Component {
22
18
  /**
23
19
  * @param status
24
20
  * @type {string}
@@ -26,7 +22,7 @@ class HdsStepperIndicatorTaskIndexComponent extends Component {
26
22
  */
27
23
 
28
24
  get status() {
29
- let {
25
+ const {
30
26
  status = DEFAULT_STATUS
31
27
  } = this.args;
32
28
  assert(`@status for "Hds::Stepper::Task::Indicator" must be one of the following: ${STATUSES.join(', ')}; received: ${status}`, STATUSES.includes(status));
@@ -58,7 +54,7 @@ class HdsStepperIndicatorTaskIndexComponent extends Component {
58
54
  * @return {string} The "class" attribute to apply to the component.
59
55
  */
60
56
  get classNames() {
61
- let classes = ['hds-stepper-indicator-task'];
57
+ const classes = ['hds-stepper-indicator-task'];
62
58
 
63
59
  // Based on the @status arg
64
60
  classes.push(`hds-stepper-indicator-task--status-${this.status}`);
@@ -68,7 +64,7 @@ class HdsStepperIndicatorTaskIndexComponent extends Component {
68
64
  return classes.join(' ');
69
65
  }
70
66
  }
71
- setComponentTemplate(TEMPLATE, HdsStepperIndicatorTaskIndexComponent);
67
+ setComponentTemplate(TEMPLATE, HdsStepperTaskIndicatorComponent);
72
68
 
73
- export { DEFAULT_STATUS, MAPPING_STATUS_TO_ICONS, STATUSES, HdsStepperIndicatorTaskIndexComponent as default };
69
+ export { DEFAULT_STATUS, MAPPING_STATUS_TO_ICONS, STATUSES, HdsStepperTaskIndicatorComponent as default };
74
70
  //# sourceMappingURL=indicator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"indicator.js","sources":["../../../../../src/components/hds/stepper/task/indicator.hbs","../../../../../src/components/hds/stepper/task/indicator.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 <FlightIcon class=\\\"hds-stepper-indicator-task__icon\\\" @name={{this.iconName}} @size=\\\"16\\\" />\\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_STATUS = 'incomplete';\nexport const STATUSES = ['incomplete', 'progress', 'processing', 'complete'];\nexport const MAPPING_STATUS_TO_ICONS = {\n incomplete: 'circle',\n progress: 'circle-half',\n processing: 'loading',\n complete: 'check-circle',\n};\n\nexport default class HdsStepperIndicatorTaskIndexComponent extends Component {\n /**\n * @param status\n * @type {string}\n * @default \"incomplete\"\n */\n\n get status() {\n let { status = DEFAULT_STATUS } = this.args;\n\n assert(\n `@status for \"Hds::Stepper::Task::Indicator\" must be one of the following: ${STATUSES.join(\n ', '\n )}; received: ${status}`,\n STATUSES.includes(status)\n );\n\n return status;\n }\n\n /**\n * @param isInteractive\n * @type {boolean}\n * @default false\n */\n\n get isInteractive() {\n return this.args.isInteractive || false;\n }\n\n /**\n * @param iconName\n * @type {string}\n */\n\n get iconName() {\n return MAPPING_STATUS_TO_ICONS[this.status];\n }\n\n /**\n * Get the class names to apply to the component.\n * @method IndicatorTask#classNames\n * @return {string} The \"class\" attribute to apply to the component.\n */\n get classNames() {\n let classes = ['hds-stepper-indicator-task'];\n\n // Based on the @status arg\n classes.push(`hds-stepper-indicator-task--status-${this.status}`);\n\n if (this.isInteractive) {\n classes.push(`hds-stepper-indicator-task--is-interactive`);\n }\n\n return classes.join(' ');\n }\n}\n"],"names":["DEFAULT_STATUS","STATUSES","MAPPING_STATUS_TO_ICONS","incomplete","progress","processing","complete","HdsStepperIndicatorTaskIndexComponent","Component","status","args","assert","join","includes","isInteractive","iconName","classNames","classes","push","setComponentTemplate","TEMPLATE"],"mappings":";;;;;AACA,eAAe,kBAAkB,CAAC,gRAAgR;;ACDlT;AACA;AACA;AACA;;AAKO,MAAMA,cAAc,GAAG,aAAY;AACnC,MAAMC,QAAQ,GAAG,CAAC,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAC;AACrE,MAAMC,uBAAuB,GAAG;AACrCC,EAAAA,UAAU,EAAE,QAAQ;AACpBC,EAAAA,QAAQ,EAAE,aAAa;AACvBC,EAAAA,UAAU,EAAE,SAAS;AACrBC,EAAAA,QAAQ,EAAE,cAAA;AACZ,EAAC;AAEc,MAAMC,qCAAqC,SAASC,SAAS,CAAC;AAC3E;AACF;AACA;AACA;AACA;;EAEE,IAAIC,MAAMA,GAAG;IACX,IAAI;AAAEA,MAAAA,MAAM,GAAGT,cAAAA;KAAgB,GAAG,IAAI,CAACU,IAAI,CAAA;AAE3CC,IAAAA,MAAM,CACH,CAA4EV,0EAAAA,EAAAA,QAAQ,CAACW,IAAI,CACxF,IACF,CAAE,CAAA,YAAA,EAAcH,MAAO,CAAA,CAAC,EACxBR,QAAQ,CAACY,QAAQ,CAACJ,MAAM,CAC1B,CAAC,CAAA;AAED,IAAA,OAAOA,MAAM,CAAA;AACf,GAAA;;AAEA;AACF;AACA;AACA;AACA;;EAEE,IAAIK,aAAaA,GAAG;AAClB,IAAA,OAAO,IAAI,CAACJ,IAAI,CAACI,aAAa,IAAI,KAAK,CAAA;AACzC,GAAA;;AAEA;AACF;AACA;AACA;;EAEE,IAAIC,QAAQA,GAAG;AACb,IAAA,OAAOb,uBAAuB,CAAC,IAAI,CAACO,MAAM,CAAC,CAAA;AAC7C,GAAA;;AAEA;AACF;AACA;AACA;AACA;EACE,IAAIO,UAAUA,GAAG;AACf,IAAA,IAAIC,OAAO,GAAG,CAAC,4BAA4B,CAAC,CAAA;;AAE5C;IACAA,OAAO,CAACC,IAAI,CAAE,CAAA,mCAAA,EAAqC,IAAI,CAACT,MAAO,EAAC,CAAC,CAAA;IAEjE,IAAI,IAAI,CAACK,aAAa,EAAE;AACtBG,MAAAA,OAAO,CAACC,IAAI,CAAE,CAAA,0CAAA,CAA2C,CAAC,CAAA;AAC5D,KAAA;AAEA,IAAA,OAAOD,OAAO,CAACL,IAAI,CAAC,GAAG,CAAC,CAAA;AAC1B,GAAA;AACF,CAAA;AAACO,oBAAA,CAAAC,QAAA,EAxDoBb,qCAAqC,CAAA;;;;"}
1
+ {"version":3,"file":"indicator.js","sources":["../../../../../src/components/hds/stepper/task/indicator.hbs","../../../../../src/components/hds/stepper/task/indicator.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n<div class={{this.classNames}} ...attributes>\\n <FlightIcon class=\\\"hds-stepper-indicator-task__icon\\\" @name={{this.iconName}} @size=\\\"16\\\" />\\n</div>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { assert } from '@ember/debug';\n\nimport {\n HdsStepperStatusesValues,\n HdsStepperStatusToIconsValues,\n} from '../types.ts';\nimport type { HdsStepperStatuses } from '../types.ts';\n\nexport const DEFAULT_STATUS = HdsStepperStatusesValues.Incomplete;\nexport const STATUSES: string[] = Object.values(HdsStepperStatusesValues);\n\nexport const MAPPING_STATUS_TO_ICONS = HdsStepperStatusToIconsValues;\n\ninterface HdsStepperTaskIndicatorSignature {\n Args: {\n status: HdsStepperStatuses;\n isInteractive?: boolean;\n };\n Element: HTMLDivElement;\n}\n\nexport default class HdsStepperTaskIndicatorComponent extends Component<HdsStepperTaskIndicatorSignature> {\n /**\n * @param status\n * @type {string}\n * @default \"incomplete\"\n */\n\n get status() {\n const { status = DEFAULT_STATUS } = this.args;\n\n assert(\n `@status for \"Hds::Stepper::Task::Indicator\" must be one of the following: ${STATUSES.join(\n ', '\n )}; received: ${status}`,\n STATUSES.includes(status)\n );\n\n return status;\n }\n\n /**\n * @param isInteractive\n * @type {boolean}\n * @default false\n */\n\n get isInteractive() {\n return this.args.isInteractive || false;\n }\n\n /**\n * @param iconName\n * @type {string}\n */\n\n get iconName() {\n return MAPPING_STATUS_TO_ICONS[this.status];\n }\n\n /**\n * Get the class names to apply to the component.\n * @method IndicatorTask#classNames\n * @return {string} The \"class\" attribute to apply to the component.\n */\n get classNames() {\n const classes = ['hds-stepper-indicator-task'];\n\n // Based on the @status arg\n classes.push(`hds-stepper-indicator-task--status-${this.status}`);\n\n if (this.isInteractive) {\n classes.push(`hds-stepper-indicator-task--is-interactive`);\n }\n\n return classes.join(' ');\n }\n}\n"],"names":["DEFAULT_STATUS","HdsStepperStatusesValues","Incomplete","STATUSES","Object","values","MAPPING_STATUS_TO_ICONS","HdsStepperStatusToIconsValues","HdsStepperTaskIndicatorComponent","Component","status","args","assert","join","includes","isInteractive","iconName","classNames","classes","push","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;AACA,eAAe,kBAAkB,CAAC,uOAAuO;;ACDzQ;AACA;AACA;AACA;;AAWaA,MAAAA,cAAc,GAAGC,wBAAwB,CAACC,WAAU;AAC1D,MAAMC,QAAkB,GAAGC,MAAM,CAACC,MAAM,CAACJ,wBAAwB,EAAC;AAElE,MAAMK,uBAAuB,GAAGC,8BAA6B;AAUrD,MAAMC,gCAAgC,SAASC,SAAS,CAAmC;AACxG;AACF;AACA;AACA;AACA;;EAEE,IAAIC,MAAMA,GAAG;IACX,MAAM;AAAEA,MAAAA,MAAM,GAAGV,cAAAA;KAAgB,GAAG,IAAI,CAACW,IAAI,CAAA;AAE7CC,IAAAA,MAAM,CACH,CAA4ET,0EAAAA,EAAAA,QAAQ,CAACU,IAAI,CACxF,IACF,CAAE,CAAA,YAAA,EAAcH,MAAO,CAAA,CAAC,EACxBP,QAAQ,CAACW,QAAQ,CAACJ,MAAM,CAC1B,CAAC,CAAA;AAED,IAAA,OAAOA,MAAM,CAAA;AACf,GAAA;;AAEA;AACF;AACA;AACA;AACA;;EAEE,IAAIK,aAAaA,GAAG;AAClB,IAAA,OAAO,IAAI,CAACJ,IAAI,CAACI,aAAa,IAAI,KAAK,CAAA;AACzC,GAAA;;AAEA;AACF;AACA;AACA;;EAEE,IAAIC,QAAQA,GAAG;AACb,IAAA,OAAOV,uBAAuB,CAAC,IAAI,CAACI,MAAM,CAAC,CAAA;AAC7C,GAAA;;AAEA;AACF;AACA;AACA;AACA;EACE,IAAIO,UAAUA,GAAG;AACf,IAAA,MAAMC,OAAO,GAAG,CAAC,4BAA4B,CAAC,CAAA;;AAE9C;IACAA,OAAO,CAACC,IAAI,CAAE,CAAA,mCAAA,EAAqC,IAAI,CAACT,MAAO,EAAC,CAAC,CAAA;IAEjE,IAAI,IAAI,CAACK,aAAa,EAAE;AACtBG,MAAAA,OAAO,CAACC,IAAI,CAAE,CAAA,0CAAA,CAA2C,CAAC,CAAA;AAC5D,KAAA;AAEA,IAAA,OAAOD,OAAO,CAACL,IAAI,CAAC,GAAG,CAAC,CAAA;AAC1B,GAAA;AACF,CAAA;AAACO,oBAAA,CAAAC,QAAA,EAxDoBb,gCAAgC,CAAA;;;;"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Copyright (c) HashiCorp, Inc.
3
+ * SPDX-License-Identifier: MPL-2.0
4
+ */
5
+
6
+ let HdsStepperStatusesValues = /*#__PURE__*/function (HdsStepperStatusesValues) {
7
+ HdsStepperStatusesValues["Incomplete"] = "incomplete";
8
+ HdsStepperStatusesValues["Progress"] = "progress";
9
+ HdsStepperStatusesValues["Processing"] = "processing";
10
+ HdsStepperStatusesValues["Complete"] = "complete";
11
+ return HdsStepperStatusesValues;
12
+ }({});
13
+ const HdsStepperStatusToIconsValues = {
14
+ [HdsStepperStatusesValues.Incomplete]: 'circle',
15
+ [HdsStepperStatusesValues.Progress]: 'circle-half',
16
+ [HdsStepperStatusesValues.Processing]: 'loading',
17
+ [HdsStepperStatusesValues.Complete]: 'check-circle'
18
+ };
19
+
20
+ export { HdsStepperStatusToIconsValues, HdsStepperStatusesValues };
21
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sources":["../../../../src/components/hds/stepper/types.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nexport enum HdsStepperStatusesValues {\n Incomplete = 'incomplete',\n Progress = 'progress',\n Processing = 'processing',\n Complete = 'complete',\n}\n\nexport type HdsStepperStatuses = `${HdsStepperStatusesValues}`;\n\nexport const HdsStepperStatusToIconsValues: Record<\n HdsStepperStatusesValues,\n string\n> = {\n [HdsStepperStatusesValues.Incomplete]: 'circle',\n [HdsStepperStatusesValues.Progress]: 'circle-half',\n [HdsStepperStatusesValues.Processing]: 'loading',\n [HdsStepperStatusesValues.Complete]: 'check-circle',\n};\n"],"names":["HdsStepperStatusesValues","HdsStepperStatusToIconsValues","Incomplete","Progress","Processing","Complete"],"mappings":"AAAA;AACA;AACA;AACA;;AAEYA,IAAAA,wBAAwB,0BAAxBA,wBAAwB,EAAA;EAAxBA,wBAAwB,CAAA,YAAA,CAAA,GAAA,YAAA,CAAA;EAAxBA,wBAAwB,CAAA,UAAA,CAAA,GAAA,UAAA,CAAA;EAAxBA,wBAAwB,CAAA,YAAA,CAAA,GAAA,YAAA,CAAA;EAAxBA,wBAAwB,CAAA,UAAA,CAAA,GAAA,UAAA,CAAA;AAAA,EAAA,OAAxBA,wBAAwB,CAAA;AAAA,CAAA,CAAA,EAAA,EAAA;AAS7B,MAAMC,6BAGZ,GAAG;AACF,EAAA,CAACD,wBAAwB,CAACE,UAAU,GAAG,QAAQ;AAC/C,EAAA,CAACF,wBAAwB,CAACG,QAAQ,GAAG,aAAa;AAClD,EAAA,CAACH,wBAAwB,CAACI,UAAU,GAAG,SAAS;EAChD,CAACJ,wBAAwB,CAACK,QAAQ,GAAG,cAAA;AACvC;;;;"}
@@ -1,4 +1,4 @@
1
- import { a as _applyDecoratedDescriptor, b as _initializerDefineProperty, _ as _defineProperty } from '../../../_rollupPluginBabelHelpers-lqPQKyNs.js';
1
+ import { _ as _applyDecoratedDescriptor, b as _initializerDefineProperty, a as _defineProperty } from '../../../_rollupPluginBabelHelpers-NoJJJNhk.js';
2
2
  import Component from '@glimmer/component';
3
3
  import { tracked } from '@glimmer/tracking';
4
4
  import { action } from '@ember/object';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/components/hds/table/index.hbs","../../../../src/components/hds/table/index.js"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n\\n<table class={{this.classNames}} ...attributes>\\n {{#if @columns}}\\n <caption class=\\\"sr-only\\\" aria-live=\\\"polite\\\">{{@caption}} {{this.sortedMessageText}}</caption>\\n {{else if @caption}}\\n <caption class=\\\"sr-only\\\">{{@caption}}</caption>\\n {{/if}}\\n\\n <thead class=\\\"hds-table__thead\\\">\\n {{#if @columns}}\\n <Hds::Table::Tr\\n @selectionScope=\\\"col\\\"\\n @isSelectable={{@isSelectable}}\\n @onSelectionChange={{this.onSelectionAllChange}}\\n @didInsert={{this.didInsertSelectAllCheckbox}}\\n @willDestroy={{this.willDestroySelectAllCheckbox}}\\n @selectionAriaLabelSuffix=\\\"all rows\\\"\\n >\\n {{#each @columns as |column|}}\\n {{#if column.isSortable}}\\n <Hds::Table::ThSort\\n @sortOrder={{if (eq column.key this.sortBy) this.sortOrder}}\\n @onClickSort={{fn this.setSortBy column.key}}\\n @align={{column.align}}\\n @width={{column.width}}\\n @tooltip={{column.tooltip}}\\n >\\n {{column.label}}\\n </Hds::Table::ThSort>\\n {{else}}\\n <Hds::Table::Th\\n @align={{column.align}}\\n @width={{column.width}}\\n @tooltip={{column.tooltip}}\\n @isVisuallyHidden={{column.isVisuallyHidden}}\\n >{{column.label}}</Hds::Table::Th>\\n {{/if}}\\n {{/each}}\\n </Hds::Table::Tr>\\n {{else}}\\n {{yield\\n (hash\\n Tr=(component\\n \\\"hds/table/tr\\\"\\n selectionScope=\\\"col\\\"\\n isSelectable=@isSelectable\\n onSelectionChange=this.onSelectionAllChange\\n didInsert=this.didInsertSelectAllCheckbox\\n willDestroy=this.willDestroySelectAllCheckbox\\n selectionAriaLabelSuffix=\\\"all rows\\\"\\n )\\n Th=(component \\\"hds/table/th\\\")\\n ThSort=(component \\\"hds/table/th-sort\\\")\\n sortBy=this.sortBy\\n sortOrder=this.sortOrder\\n setSortBy=this.setSortBy\\n )\\n to=\\\"head\\\"\\n }}\\n {{/if}}\\n </thead>\\n\\n <tbody class=\\\"hds-table__tbody\\\">\\n {{#if @columns}}\\n {{! ----------------------------------------------------------------------------------------\\n IMPORTANT: we loop on the `model` array and for each record\\n we yield the Tr/Td/Th elements _and_ the record itself as `data`\\n this means the consumer will *have to* use the `data` key to access it in their template\\n -------------------------------------------------------------------------------------------- }}\\n {{#each (sort-by this.getSortCriteria @model) key=this.identityKey as |record|}}\\n {{yield\\n (hash\\n Tr=(component\\n \\\"hds/table/tr\\\"\\n selectionScope=\\\"row\\\"\\n isSelectable=@isSelectable\\n onSelectionChange=this.onSelectionRowChange\\n didInsert=this.didInsertRowCheckbox\\n willDestroy=this.willDestroyRowCheckbox\\n selectionAriaLabelSuffix=@selectionAriaLabelSuffix\\n )\\n Th=(component \\\"hds/table/th\\\" scope=\\\"row\\\")\\n Td=(component \\\"hds/table/td\\\" align=@align)\\n data=record\\n )\\n to=\\\"body\\\"\\n }}\\n {{/each}}\\n {{else}}\\n {{yield\\n (hash\\n Tr=(component\\n \\\"hds/table/tr\\\"\\n selectionScope=\\\"row\\\"\\n isSelectable=@isSelectable\\n onSelectionChange=this.onSelectionRowChange\\n didInsert=this.didInsertRowCheckbox\\n willDestroy=this.willDestroyRowCheckbox\\n selectionAriaLabelSuffix=@selectionAriaLabelSuffix\\n )\\n Th=(component \\\"hds/table/th\\\" scope=\\\"row\\\")\\n Td=(component \\\"hds/table/td\\\" align=@align)\\n sortBy=this.sortBy\\n sortOrder=this.sortOrder\\n )\\n to=\\\"body\\\"\\n }}\\n {{/if}}\\n </tbody>\\n</table>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { action } from '@ember/object';\nimport { assert } from '@ember/debug';\n\nexport const DENSITIES = ['short', 'medium', 'tall'];\nconst DEFAULT_DENSITY = 'medium';\nconst VALIGNMENTS = ['top', 'middle', 'baseline'];\nconst DEFAULT_VALIGN = 'top';\n\nexport default class HdsTableIndexComponent extends Component {\n @tracked sortBy = this.args.sortBy;\n @tracked sortOrder = this.args.sortOrder || 'asc';\n @tracked selectAllCheckbox = undefined;\n selectableRows = [];\n @tracked isSelectAllCheckboxSelected = undefined;\n\n /**\n * @param getSortCriteria\n * @type {string | function}\n * @default sortBy:sortOrder\n * @description Returns the sort criteria\n */\n get getSortCriteria() {\n // get the current column\n const currentColumn = this.args?.columns?.find(\n (column) => column.key === this.sortBy\n );\n if (\n // check if there is a custom sorting function associated with the current `sortBy` column (we assume the column has `isSortable`)\n currentColumn?.sortingFunction &&\n typeof currentColumn.sortingFunction === 'function'\n ) {\n return currentColumn.sortingFunction;\n } else {\n // otherwise fallback to the default format \"sortBy:sortOrder\"\n return `${this.sortBy}:${this.sortOrder}`;\n }\n }\n\n /**\n * @param identityKey\n * @type {string}\n * @default '@identity'\n * @description Returns the key to use for the table rows to provide more granular control. If no identityKey is defined, Ember's default `@identity` is used. See https://api.emberjs.com/ember/release/classes/Ember.Templates.helpers/methods/each?anchor=each\n * this would be relevant for any table that would have data that could update or change, i.e., polling.\n */\n get identityKey() {\n // we have to provide a way for the consumer to pass undefined because Ember tries to interpret undefined as missing an arg and therefore falls back to the default\n if (this.args.identityKey === 'none') {\n return undefined;\n } else {\n return this.args.identityKey ?? '@identity';\n }\n }\n\n /**\n * @param sortedMessageText\n * @type {string}\n * @default ''\n * @description Returns the text to display in the sorted message. If no text is defined, the default text is used.\n */\n get sortedMessageText() {\n if (this.args.sortedMessageText) {\n return this.args.sortedMessageText;\n } else if (this.sortBy && this.sortOrder) {\n // we should allow the user to define a custom value here (e.g., for i18n) - tracked with HDS-965\n return `Sorted by ${this.sortBy} ${this.sortOrder}ending`;\n } else {\n return '';\n }\n }\n\n /**\n * @param isStriped\n * @type {boolean}\n * @default false\n * @description Determines whether the table rows should have alternating background colors; defaults to false.\n */\n get isStriped() {\n return this.args.isStriped ?? false;\n }\n\n /**\n * @param isFixedLayout\n * @type {boolean}\n * @default false\n * @description Determines whether the table-display should be set to fixed; meaning, the table columns are of equal width no matter the content; defaults to false.\n */\n get isFixedLayout() {\n return this.args.isFixedLayout ?? false;\n }\n\n /**\n * @param density\n * @type {string}\n * @default 'medium'\n * @description Determines the density of the table cells; options are \"short\", \"medium\" and \"tall\". If no density is defined, \"medium\" is used.\n */\n get density() {\n let { density = DEFAULT_DENSITY } = this.args;\n\n assert(\n `@density for \"Hds::Table\" must be one of the following: ${DENSITIES.join(\n ', '\n )}; received: ${density}`,\n DENSITIES.includes(density)\n );\n\n return density;\n }\n\n /**\n * @param valign\n * @type {string}\n * @default 'top'\n * @description Determines the vertical alignment of the table cells; options are: \"top\", \"middle\", \"baseline\". If no valign is defined, \"top\" is used.\n */\n get valign() {\n let { valign = DEFAULT_VALIGN } = this.args;\n\n assert(\n `@valign for \"Hds::Table\" must be one of the following: ${VALIGNMENTS.join(\n ', '\n )}; received: ${valign}`,\n VALIGNMENTS.includes(valign)\n );\n\n return valign;\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 let classes = ['hds-table'];\n\n // add a class based on the @isStriped argument\n if (this.isStriped) {\n classes.push('hds-table--striped');\n }\n\n // add a class based on the @isFixedLayout argument\n if (this.isFixedLayout) {\n classes.push('hds-table--layout-fixed');\n }\n\n // add a class based on the @density argument\n if (this.density) {\n classes.push(`hds-table--density-${this.density}`);\n }\n\n // add a class based on the @valign argument\n if (this.valign) {\n classes.push(`hds-table--valign-${this.valign}`);\n }\n\n return classes.join(' ');\n }\n\n @action\n setSortBy(column) {\n if (this.sortBy === column) {\n // check to see if the column is already sorted and invert the sort order if so\n this.sortOrder = this.sortOrder === 'asc' ? 'desc' : 'asc';\n } else {\n // otherwise, set the sort order to ascending\n this.sortBy = column;\n this.sortOrder = 'asc';\n }\n\n let { onSort } = this.args;\n\n if (typeof onSort === 'function') {\n onSort(this.sortBy, this.sortOrder);\n }\n }\n\n onSelectionChangeCallback(checkbox, selectionKey) {\n let { onSelectionChange } = this.args;\n if (typeof onSelectionChange === 'function') {\n onSelectionChange({\n selectionKey: selectionKey,\n selectionCheckboxElement: checkbox,\n selectedRowsKeys: this.selectableRows.reduce((acc, row) => {\n if (row.checkbox.checked) {\n acc.push(row.selectionKey);\n }\n return acc;\n }, []),\n selectableRowsStates: this.selectableRows.reduce((acc, row) => {\n acc.push({\n selectionKey: row.selectionKey,\n isSelected: row.checkbox.checked,\n });\n return acc;\n }, []),\n });\n }\n }\n\n @action\n onSelectionAllChange() {\n this.selectableRows.forEach((row) => {\n row.checkbox.checked = this.selectAllCheckbox.checked;\n row.checkbox.dispatchEvent(new Event('toggle', { bubbles: false }));\n });\n this.isSelectAllCheckboxSelected = this.selectAllCheckbox.checked;\n this.onSelectionChangeCallback(this.selectAllCheckbox, 'all');\n }\n\n @action\n onSelectionRowChange(checkbox, selectionKey) {\n this.setSelectAllState();\n this.onSelectionChangeCallback(checkbox, selectionKey);\n }\n\n @action\n didInsertSelectAllCheckbox(checkbox) {\n this.selectAllCheckbox = checkbox;\n }\n\n @action\n willDestroySelectAllCheckbox() {\n this.selectAllCheckbox = undefined;\n }\n\n @action\n didInsertRowCheckbox(checkbox, selectionKey) {\n this.selectableRows.push({ selectionKey, checkbox });\n this.setSelectAllState();\n }\n\n @action\n willDestroyRowCheckbox(selectionKey) {\n this.selectableRows = this.selectableRows.filter(\n (row) => row.selectionKey !== selectionKey\n );\n this.setSelectAllState();\n }\n\n @action\n setSelectAllState() {\n if (this.selectAllCheckbox) {\n let selectableRowsCount = this.selectableRows.length;\n let selectedRowsCount = this.selectableRows.filter(\n (row) => row.checkbox.checked\n ).length;\n\n this.selectAllCheckbox.checked =\n selectedRowsCount === selectableRowsCount;\n this.selectAllCheckbox.indeterminate =\n selectedRowsCount > 0 && selectedRowsCount < selectableRowsCount;\n this.isSelectAllCheckboxSelected = this.selectAllCheckbox.checked;\n this.selectAllCheckbox.dispatchEvent(\n new Event('toggle', { bubbles: false })\n );\n }\n }\n}\n"],"names":["DENSITIES","DEFAULT_DENSITY","VALIGNMENTS","DEFAULT_VALIGN","HdsTableIndexComponent","_class","Component","constructor","args","_initializerDefineProperty","_descriptor","_descriptor2","_descriptor3","_defineProperty","_descriptor4","getSortCriteria","currentColumn","columns","find","column","key","sortBy","sortingFunction","sortOrder","identityKey","undefined","sortedMessageText","isStriped","isFixedLayout","density","assert","join","includes","valign","classNames","classes","push","setSortBy","onSort","onSelectionChangeCallback","checkbox","selectionKey","onSelectionChange","selectionCheckboxElement","selectedRowsKeys","selectableRows","reduce","acc","row","checked","selectableRowsStates","isSelected","onSelectionAllChange","forEach","selectAllCheckbox","dispatchEvent","Event","bubbles","isSelectAllCheckboxSelected","onSelectionRowChange","setSelectAllState","didInsertSelectAllCheckbox","willDestroySelectAllCheckbox","didInsertRowCheckbox","willDestroyRowCheckbox","filter","selectableRowsCount","length","selectedRowsCount","indeterminate","_applyDecoratedDescriptor","prototype","tracked","configurable","enumerable","writable","initializer","action","Object","getOwnPropertyDescriptor","setComponentTemplate","TEMPLATE"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/hds/table/index.hbs","../../../../src/components/hds/table/index.js"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n\\n<table class={{this.classNames}} ...attributes>\\n {{#if @columns}}\\n <caption class=\\\"sr-only\\\" aria-live=\\\"polite\\\">{{@caption}} {{this.sortedMessageText}}</caption>\\n {{else if @caption}}\\n <caption class=\\\"sr-only\\\">{{@caption}}</caption>\\n {{/if}}\\n\\n <thead class=\\\"hds-table__thead\\\">\\n {{#if @columns}}\\n <Hds::Table::Tr\\n @selectionScope=\\\"col\\\"\\n @isSelectable={{@isSelectable}}\\n @onSelectionChange={{this.onSelectionAllChange}}\\n @didInsert={{this.didInsertSelectAllCheckbox}}\\n @willDestroy={{this.willDestroySelectAllCheckbox}}\\n @selectionAriaLabelSuffix=\\\"all rows\\\"\\n >\\n {{#each @columns as |column|}}\\n {{#if column.isSortable}}\\n <Hds::Table::ThSort\\n @sortOrder={{if (eq column.key this.sortBy) this.sortOrder}}\\n @onClickSort={{fn this.setSortBy column.key}}\\n @align={{column.align}}\\n @width={{column.width}}\\n @tooltip={{column.tooltip}}\\n >\\n {{column.label}}\\n </Hds::Table::ThSort>\\n {{else}}\\n <Hds::Table::Th\\n @align={{column.align}}\\n @width={{column.width}}\\n @tooltip={{column.tooltip}}\\n @isVisuallyHidden={{column.isVisuallyHidden}}\\n >{{column.label}}</Hds::Table::Th>\\n {{/if}}\\n {{/each}}\\n </Hds::Table::Tr>\\n {{else}}\\n {{yield\\n (hash\\n Tr=(component\\n \\\"hds/table/tr\\\"\\n selectionScope=\\\"col\\\"\\n isSelectable=@isSelectable\\n onSelectionChange=this.onSelectionAllChange\\n didInsert=this.didInsertSelectAllCheckbox\\n willDestroy=this.willDestroySelectAllCheckbox\\n selectionAriaLabelSuffix=\\\"all rows\\\"\\n )\\n Th=(component \\\"hds/table/th\\\")\\n ThSort=(component \\\"hds/table/th-sort\\\")\\n sortBy=this.sortBy\\n sortOrder=this.sortOrder\\n setSortBy=this.setSortBy\\n )\\n to=\\\"head\\\"\\n }}\\n {{/if}}\\n </thead>\\n\\n <tbody class=\\\"hds-table__tbody\\\">\\n {{#if @columns}}\\n {{! ----------------------------------------------------------------------------------------\\n IMPORTANT: we loop on the `model` array and for each record\\n we yield the Tr/Td/Th elements _and_ the record itself as `data`\\n this means the consumer will *have to* use the `data` key to access it in their template\\n -------------------------------------------------------------------------------------------- }}\\n {{#each (sort-by this.getSortCriteria @model) key=this.identityKey as |record|}}\\n {{yield\\n (hash\\n Tr=(component\\n \\\"hds/table/tr\\\"\\n selectionScope=\\\"row\\\"\\n isSelectable=@isSelectable\\n onSelectionChange=this.onSelectionRowChange\\n didInsert=this.didInsertRowCheckbox\\n willDestroy=this.willDestroyRowCheckbox\\n selectionAriaLabelSuffix=@selectionAriaLabelSuffix\\n )\\n Th=(component \\\"hds/table/th\\\" scope=\\\"row\\\")\\n Td=(component \\\"hds/table/td\\\" align=@align)\\n data=record\\n )\\n to=\\\"body\\\"\\n }}\\n {{/each}}\\n {{else}}\\n {{yield\\n (hash\\n Tr=(component\\n \\\"hds/table/tr\\\"\\n selectionScope=\\\"row\\\"\\n isSelectable=@isSelectable\\n onSelectionChange=this.onSelectionRowChange\\n didInsert=this.didInsertRowCheckbox\\n willDestroy=this.willDestroyRowCheckbox\\n selectionAriaLabelSuffix=@selectionAriaLabelSuffix\\n )\\n Th=(component \\\"hds/table/th\\\" scope=\\\"row\\\")\\n Td=(component \\\"hds/table/td\\\" align=@align)\\n sortBy=this.sortBy\\n sortOrder=this.sortOrder\\n )\\n to=\\\"body\\\"\\n }}\\n {{/if}}\\n </tbody>\\n</table>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { action } from '@ember/object';\nimport { assert } from '@ember/debug';\n\nexport const DENSITIES = ['short', 'medium', 'tall'];\nconst DEFAULT_DENSITY = 'medium';\nconst VALIGNMENTS = ['top', 'middle', 'baseline'];\nconst DEFAULT_VALIGN = 'top';\n\nexport default class HdsTableIndexComponent extends Component {\n @tracked sortBy = this.args.sortBy;\n @tracked sortOrder = this.args.sortOrder || 'asc';\n @tracked selectAllCheckbox = undefined;\n selectableRows = [];\n @tracked isSelectAllCheckboxSelected = undefined;\n\n /**\n * @param getSortCriteria\n * @type {string | function}\n * @default sortBy:sortOrder\n * @description Returns the sort criteria\n */\n get getSortCriteria() {\n // get the current column\n const currentColumn = this.args?.columns?.find(\n (column) => column.key === this.sortBy\n );\n if (\n // check if there is a custom sorting function associated with the current `sortBy` column (we assume the column has `isSortable`)\n currentColumn?.sortingFunction &&\n typeof currentColumn.sortingFunction === 'function'\n ) {\n return currentColumn.sortingFunction;\n } else {\n // otherwise fallback to the default format \"sortBy:sortOrder\"\n return `${this.sortBy}:${this.sortOrder}`;\n }\n }\n\n /**\n * @param identityKey\n * @type {string}\n * @default '@identity'\n * @description Returns the key to use for the table rows to provide more granular control. If no identityKey is defined, Ember's default `@identity` is used. See https://api.emberjs.com/ember/release/classes/Ember.Templates.helpers/methods/each?anchor=each\n * this would be relevant for any table that would have data that could update or change, i.e., polling.\n */\n get identityKey() {\n // we have to provide a way for the consumer to pass undefined because Ember tries to interpret undefined as missing an arg and therefore falls back to the default\n if (this.args.identityKey === 'none') {\n return undefined;\n } else {\n return this.args.identityKey ?? '@identity';\n }\n }\n\n /**\n * @param sortedMessageText\n * @type {string}\n * @default ''\n * @description Returns the text to display in the sorted message. If no text is defined, the default text is used.\n */\n get sortedMessageText() {\n if (this.args.sortedMessageText) {\n return this.args.sortedMessageText;\n } else if (this.sortBy && this.sortOrder) {\n // we should allow the user to define a custom value here (e.g., for i18n) - tracked with HDS-965\n return `Sorted by ${this.sortBy} ${this.sortOrder}ending`;\n } else {\n return '';\n }\n }\n\n /**\n * @param isStriped\n * @type {boolean}\n * @default false\n * @description Determines whether the table rows should have alternating background colors; defaults to false.\n */\n get isStriped() {\n return this.args.isStriped ?? false;\n }\n\n /**\n * @param isFixedLayout\n * @type {boolean}\n * @default false\n * @description Determines whether the table-display should be set to fixed; meaning, the table columns are of equal width no matter the content; defaults to false.\n */\n get isFixedLayout() {\n return this.args.isFixedLayout ?? false;\n }\n\n /**\n * @param density\n * @type {string}\n * @default 'medium'\n * @description Determines the density of the table cells; options are \"short\", \"medium\" and \"tall\". If no density is defined, \"medium\" is used.\n */\n get density() {\n let { density = DEFAULT_DENSITY } = this.args;\n\n assert(\n `@density for \"Hds::Table\" must be one of the following: ${DENSITIES.join(\n ', '\n )}; received: ${density}`,\n DENSITIES.includes(density)\n );\n\n return density;\n }\n\n /**\n * @param valign\n * @type {string}\n * @default 'top'\n * @description Determines the vertical alignment of the table cells; options are: \"top\", \"middle\", \"baseline\". If no valign is defined, \"top\" is used.\n */\n get valign() {\n let { valign = DEFAULT_VALIGN } = this.args;\n\n assert(\n `@valign for \"Hds::Table\" must be one of the following: ${VALIGNMENTS.join(\n ', '\n )}; received: ${valign}`,\n VALIGNMENTS.includes(valign)\n );\n\n return valign;\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 let classes = ['hds-table'];\n\n // add a class based on the @isStriped argument\n if (this.isStriped) {\n classes.push('hds-table--striped');\n }\n\n // add a class based on the @isFixedLayout argument\n if (this.isFixedLayout) {\n classes.push('hds-table--layout-fixed');\n }\n\n // add a class based on the @density argument\n if (this.density) {\n classes.push(`hds-table--density-${this.density}`);\n }\n\n // add a class based on the @valign argument\n if (this.valign) {\n classes.push(`hds-table--valign-${this.valign}`);\n }\n\n return classes.join(' ');\n }\n\n @action\n setSortBy(column) {\n if (this.sortBy === column) {\n // check to see if the column is already sorted and invert the sort order if so\n this.sortOrder = this.sortOrder === 'asc' ? 'desc' : 'asc';\n } else {\n // otherwise, set the sort order to ascending\n this.sortBy = column;\n this.sortOrder = 'asc';\n }\n\n let { onSort } = this.args;\n\n if (typeof onSort === 'function') {\n onSort(this.sortBy, this.sortOrder);\n }\n }\n\n onSelectionChangeCallback(checkbox, selectionKey) {\n let { onSelectionChange } = this.args;\n if (typeof onSelectionChange === 'function') {\n onSelectionChange({\n selectionKey: selectionKey,\n selectionCheckboxElement: checkbox,\n selectedRowsKeys: this.selectableRows.reduce((acc, row) => {\n if (row.checkbox.checked) {\n acc.push(row.selectionKey);\n }\n return acc;\n }, []),\n selectableRowsStates: this.selectableRows.reduce((acc, row) => {\n acc.push({\n selectionKey: row.selectionKey,\n isSelected: row.checkbox.checked,\n });\n return acc;\n }, []),\n });\n }\n }\n\n @action\n onSelectionAllChange() {\n this.selectableRows.forEach((row) => {\n row.checkbox.checked = this.selectAllCheckbox.checked;\n row.checkbox.dispatchEvent(new Event('toggle', { bubbles: false }));\n });\n this.isSelectAllCheckboxSelected = this.selectAllCheckbox.checked;\n this.onSelectionChangeCallback(this.selectAllCheckbox, 'all');\n }\n\n @action\n onSelectionRowChange(checkbox, selectionKey) {\n this.setSelectAllState();\n this.onSelectionChangeCallback(checkbox, selectionKey);\n }\n\n @action\n didInsertSelectAllCheckbox(checkbox) {\n this.selectAllCheckbox = checkbox;\n }\n\n @action\n willDestroySelectAllCheckbox() {\n this.selectAllCheckbox = undefined;\n }\n\n @action\n didInsertRowCheckbox(checkbox, selectionKey) {\n this.selectableRows.push({ selectionKey, checkbox });\n this.setSelectAllState();\n }\n\n @action\n willDestroyRowCheckbox(selectionKey) {\n this.selectableRows = this.selectableRows.filter(\n (row) => row.selectionKey !== selectionKey\n );\n this.setSelectAllState();\n }\n\n @action\n setSelectAllState() {\n if (this.selectAllCheckbox) {\n let selectableRowsCount = this.selectableRows.length;\n let selectedRowsCount = this.selectableRows.filter(\n (row) => row.checkbox.checked\n ).length;\n\n this.selectAllCheckbox.checked =\n selectedRowsCount === selectableRowsCount;\n this.selectAllCheckbox.indeterminate =\n selectedRowsCount > 0 && selectedRowsCount < selectableRowsCount;\n this.isSelectAllCheckboxSelected = this.selectAllCheckbox.checked;\n this.selectAllCheckbox.dispatchEvent(\n new Event('toggle', { bubbles: false })\n );\n }\n }\n}\n"],"names":["DENSITIES","DEFAULT_DENSITY","VALIGNMENTS","DEFAULT_VALIGN","HdsTableIndexComponent","_class","Component","constructor","args","_initializerDefineProperty","_descriptor","_descriptor2","_descriptor3","_defineProperty","_descriptor4","getSortCriteria","currentColumn","columns","find","column","key","sortBy","sortingFunction","sortOrder","identityKey","undefined","sortedMessageText","isStriped","isFixedLayout","density","assert","join","includes","valign","classNames","classes","push","setSortBy","onSort","onSelectionChangeCallback","checkbox","selectionKey","onSelectionChange","selectionCheckboxElement","selectedRowsKeys","selectableRows","reduce","acc","row","checked","selectableRowsStates","isSelected","onSelectionAllChange","forEach","selectAllCheckbox","dispatchEvent","Event","bubbles","isSelectAllCheckboxSelected","onSelectionRowChange","setSelectAllState","didInsertSelectAllCheckbox","willDestroySelectAllCheckbox","didInsertRowCheckbox","willDestroyRowCheckbox","filter","selectableRowsCount","length","selectedRowsCount","indeterminate","_applyDecoratedDescriptor","prototype","tracked","configurable","enumerable","writable","initializer","action","Object","getOwnPropertyDescriptor","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;;;AACA,eAAe,kBAAkB,CAAC,q/HAAq/H;;;ACShhI,MAAMA,SAAS,GAAG,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAC;AACpD,MAAMC,eAAe,GAAG,QAAQ,CAAA;AAChC,MAAMC,WAAW,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAA;AACjD,MAAMC,cAAc,GAAG,KAAK,CAAA;AAEPC,IAAAA,sBAAsB,IAAAC,MAAA,GAA5B,MAAMD,sBAAsB,SAASE,SAAS,CAAC;AAAAC,EAAAA,WAAAA,CAAA,GAAAC,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAAA,IAAA,CAAA,CAAA;AAAAC,IAAAA,0BAAA,iBAAAC,WAAA,EAAA,IAAA,CAAA,CAAA;AAAAD,IAAAA,0BAAA,oBAAAE,YAAA,EAAA,IAAA,CAAA,CAAA;AAAAF,IAAAA,0BAAA,4BAAAG,YAAA,EAAA,IAAA,CAAA,CAAA;AAAAC,IAAAA,eAAA,yBAI3C,EAAE,CAAA,CAAA;AAAAJ,IAAAA,0BAAA,sCAAAK,YAAA,EAAA,IAAA,CAAA,CAAA;AAAA,GAAA;AAGnB;AACF;AACA;AACA;AACA;AACA;EACE,IAAIC,eAAeA,GAAG;AACpB;AACA,IAAA,MAAMC,aAAa,GAAG,IAAI,CAACR,IAAI,EAAES,OAAO,EAAEC,IAAI,CAC3CC,MAAM,IAAKA,MAAM,CAACC,GAAG,KAAK,IAAI,CAACC,MAClC,CAAC,CAAA;AACD,IAAA;AACE;IACAL,aAAa,EAAEM,eAAe,IAC9B,OAAON,aAAa,CAACM,eAAe,KAAK,UAAU,EACnD;MACA,OAAON,aAAa,CAACM,eAAe,CAAA;AACtC,KAAC,MAAM;AACL;MACA,OAAQ,CAAA,EAAE,IAAI,CAACD,MAAO,IAAG,IAAI,CAACE,SAAU,CAAC,CAAA,CAAA;AAC3C,KAAA;AACF,GAAA;;AAEA;AACF;AACA;AACA;AACA;AACA;AACA;EACE,IAAIC,WAAWA,GAAG;AAChB;AACA,IAAA,IAAI,IAAI,CAAChB,IAAI,CAACgB,WAAW,KAAK,MAAM,EAAE;AACpC,MAAA,OAAOC,SAAS,CAAA;AAClB,KAAC,MAAM;AACL,MAAA,OAAO,IAAI,CAACjB,IAAI,CAACgB,WAAW,IAAI,WAAW,CAAA;AAC7C,KAAA;AACF,GAAA;;AAEA;AACF;AACA;AACA;AACA;AACA;EACE,IAAIE,iBAAiBA,GAAG;AACtB,IAAA,IAAI,IAAI,CAAClB,IAAI,CAACkB,iBAAiB,EAAE;AAC/B,MAAA,OAAO,IAAI,CAAClB,IAAI,CAACkB,iBAAiB,CAAA;KACnC,MAAM,IAAI,IAAI,CAACL,MAAM,IAAI,IAAI,CAACE,SAAS,EAAE;AACxC;MACA,OAAQ,CAAA,UAAA,EAAY,IAAI,CAACF,MAAO,IAAG,IAAI,CAACE,SAAU,CAAO,MAAA,CAAA,CAAA;AAC3D,KAAC,MAAM;AACL,MAAA,OAAO,EAAE,CAAA;AACX,KAAA;AACF,GAAA;;AAEA;AACF;AACA;AACA;AACA;AACA;EACE,IAAII,SAASA,GAAG;AACd,IAAA,OAAO,IAAI,CAACnB,IAAI,CAACmB,SAAS,IAAI,KAAK,CAAA;AACrC,GAAA;;AAEA;AACF;AACA;AACA;AACA;AACA;EACE,IAAIC,aAAaA,GAAG;AAClB,IAAA,OAAO,IAAI,CAACpB,IAAI,CAACoB,aAAa,IAAI,KAAK,CAAA;AACzC,GAAA;;AAEA;AACF;AACA;AACA;AACA;AACA;EACE,IAAIC,OAAOA,GAAG;IACZ,IAAI;AAAEA,MAAAA,OAAO,GAAG5B,eAAAA;KAAiB,GAAG,IAAI,CAACO,IAAI,CAAA;AAE7CsB,IAAAA,MAAM,CACH,CAA0D9B,wDAAAA,EAAAA,SAAS,CAAC+B,IAAI,CACvE,IACF,CAAE,CAAA,YAAA,EAAcF,OAAQ,CAAA,CAAC,EACzB7B,SAAS,CAACgC,QAAQ,CAACH,OAAO,CAC5B,CAAC,CAAA;AAED,IAAA,OAAOA,OAAO,CAAA;AAChB,GAAA;;AAEA;AACF;AACA;AACA;AACA;AACA;EACE,IAAII,MAAMA,GAAG;IACX,IAAI;AAAEA,MAAAA,MAAM,GAAG9B,cAAAA;KAAgB,GAAG,IAAI,CAACK,IAAI,CAAA;AAE3CsB,IAAAA,MAAM,CACH,CAAyD5B,uDAAAA,EAAAA,WAAW,CAAC6B,IAAI,CACxE,IACF,CAAE,CAAA,YAAA,EAAcE,MAAO,CAAA,CAAC,EACxB/B,WAAW,CAAC8B,QAAQ,CAACC,MAAM,CAC7B,CAAC,CAAA;AAED,IAAA,OAAOA,MAAM,CAAA;AACf,GAAA;;AAEA;AACF;AACA;AACA;AACA;EACE,IAAIC,UAAUA,GAAG;AACf,IAAA,IAAIC,OAAO,GAAG,CAAC,WAAW,CAAC,CAAA;;AAE3B;IACA,IAAI,IAAI,CAACR,SAAS,EAAE;AAClBQ,MAAAA,OAAO,CAACC,IAAI,CAAC,oBAAoB,CAAC,CAAA;AACpC,KAAA;;AAEA;IACA,IAAI,IAAI,CAACR,aAAa,EAAE;AACtBO,MAAAA,OAAO,CAACC,IAAI,CAAC,yBAAyB,CAAC,CAAA;AACzC,KAAA;;AAEA;IACA,IAAI,IAAI,CAACP,OAAO,EAAE;MAChBM,OAAO,CAACC,IAAI,CAAE,CAAA,mBAAA,EAAqB,IAAI,CAACP,OAAQ,EAAC,CAAC,CAAA;AACpD,KAAA;;AAEA;IACA,IAAI,IAAI,CAACI,MAAM,EAAE;MACfE,OAAO,CAACC,IAAI,CAAE,CAAA,kBAAA,EAAoB,IAAI,CAACH,MAAO,EAAC,CAAC,CAAA;AAClD,KAAA;AAEA,IAAA,OAAOE,OAAO,CAACJ,IAAI,CAAC,GAAG,CAAC,CAAA;AAC1B,GAAA;EAGAM,SAASA,CAAClB,MAAM,EAAE;AAChB,IAAA,IAAI,IAAI,CAACE,MAAM,KAAKF,MAAM,EAAE;AAC1B;MACA,IAAI,CAACI,SAAS,GAAG,IAAI,CAACA,SAAS,KAAK,KAAK,GAAG,MAAM,GAAG,KAAK,CAAA;AAC5D,KAAC,MAAM;AACL;MACA,IAAI,CAACF,MAAM,GAAGF,MAAM,CAAA;MACpB,IAAI,CAACI,SAAS,GAAG,KAAK,CAAA;AACxB,KAAA;IAEA,IAAI;AAAEe,MAAAA,MAAAA;KAAQ,GAAG,IAAI,CAAC9B,IAAI,CAAA;AAE1B,IAAA,IAAI,OAAO8B,MAAM,KAAK,UAAU,EAAE;MAChCA,MAAM,CAAC,IAAI,CAACjB,MAAM,EAAE,IAAI,CAACE,SAAS,CAAC,CAAA;AACrC,KAAA;AACF,GAAA;AAEAgB,EAAAA,yBAAyBA,CAACC,QAAQ,EAAEC,YAAY,EAAE;IAChD,IAAI;AAAEC,MAAAA,iBAAAA;KAAmB,GAAG,IAAI,CAAClC,IAAI,CAAA;AACrC,IAAA,IAAI,OAAOkC,iBAAiB,KAAK,UAAU,EAAE;AAC3CA,MAAAA,iBAAiB,CAAC;AAChBD,QAAAA,YAAY,EAAEA,YAAY;AAC1BE,QAAAA,wBAAwB,EAAEH,QAAQ;QAClCI,gBAAgB,EAAE,IAAI,CAACC,cAAc,CAACC,MAAM,CAAC,CAACC,GAAG,EAAEC,GAAG,KAAK;AACzD,UAAA,IAAIA,GAAG,CAACR,QAAQ,CAACS,OAAO,EAAE;AACxBF,YAAAA,GAAG,CAACX,IAAI,CAACY,GAAG,CAACP,YAAY,CAAC,CAAA;AAC5B,WAAA;AACA,UAAA,OAAOM,GAAG,CAAA;SACX,EAAE,EAAE,CAAC;QACNG,oBAAoB,EAAE,IAAI,CAACL,cAAc,CAACC,MAAM,CAAC,CAACC,GAAG,EAAEC,GAAG,KAAK;UAC7DD,GAAG,CAACX,IAAI,CAAC;YACPK,YAAY,EAAEO,GAAG,CAACP,YAAY;AAC9BU,YAAAA,UAAU,EAAEH,GAAG,CAACR,QAAQ,CAACS,OAAAA;AAC3B,WAAC,CAAC,CAAA;AACF,UAAA,OAAOF,GAAG,CAAA;AACZ,SAAC,EAAE,EAAE,CAAA;AACP,OAAC,CAAC,CAAA;AACJ,KAAA;AACF,GAAA;AAGAK,EAAAA,oBAAoBA,GAAG;AACrB,IAAA,IAAI,CAACP,cAAc,CAACQ,OAAO,CAAEL,GAAG,IAAK;MACnCA,GAAG,CAACR,QAAQ,CAACS,OAAO,GAAG,IAAI,CAACK,iBAAiB,CAACL,OAAO,CAAA;MACrDD,GAAG,CAACR,QAAQ,CAACe,aAAa,CAAC,IAAIC,KAAK,CAAC,QAAQ,EAAE;AAAEC,QAAAA,OAAO,EAAE,KAAA;AAAM,OAAC,CAAC,CAAC,CAAA;AACrE,KAAC,CAAC,CAAA;AACF,IAAA,IAAI,CAACC,2BAA2B,GAAG,IAAI,CAACJ,iBAAiB,CAACL,OAAO,CAAA;IACjE,IAAI,CAACV,yBAAyB,CAAC,IAAI,CAACe,iBAAiB,EAAE,KAAK,CAAC,CAAA;AAC/D,GAAA;AAGAK,EAAAA,oBAAoBA,CAACnB,QAAQ,EAAEC,YAAY,EAAE;IAC3C,IAAI,CAACmB,iBAAiB,EAAE,CAAA;AACxB,IAAA,IAAI,CAACrB,yBAAyB,CAACC,QAAQ,EAAEC,YAAY,CAAC,CAAA;AACxD,GAAA;EAGAoB,0BAA0BA,CAACrB,QAAQ,EAAE;IACnC,IAAI,CAACc,iBAAiB,GAAGd,QAAQ,CAAA;AACnC,GAAA;AAGAsB,EAAAA,4BAA4BA,GAAG;IAC7B,IAAI,CAACR,iBAAiB,GAAG7B,SAAS,CAAA;AACpC,GAAA;AAGAsC,EAAAA,oBAAoBA,CAACvB,QAAQ,EAAEC,YAAY,EAAE;AAC3C,IAAA,IAAI,CAACI,cAAc,CAACT,IAAI,CAAC;MAAEK,YAAY;AAAED,MAAAA,QAAAA;AAAS,KAAC,CAAC,CAAA;IACpD,IAAI,CAACoB,iBAAiB,EAAE,CAAA;AAC1B,GAAA;EAGAI,sBAAsBA,CAACvB,YAAY,EAAE;AACnC,IAAA,IAAI,CAACI,cAAc,GAAG,IAAI,CAACA,cAAc,CAACoB,MAAM,CAC7CjB,GAAG,IAAKA,GAAG,CAACP,YAAY,KAAKA,YAChC,CAAC,CAAA;IACD,IAAI,CAACmB,iBAAiB,EAAE,CAAA;AAC1B,GAAA;AAGAA,EAAAA,iBAAiBA,GAAG;IAClB,IAAI,IAAI,CAACN,iBAAiB,EAAE;AAC1B,MAAA,IAAIY,mBAAmB,GAAG,IAAI,CAACrB,cAAc,CAACsB,MAAM,CAAA;AACpD,MAAA,IAAIC,iBAAiB,GAAG,IAAI,CAACvB,cAAc,CAACoB,MAAM,CAC/CjB,GAAG,IAAKA,GAAG,CAACR,QAAQ,CAACS,OACxB,CAAC,CAACkB,MAAM,CAAA;AAER,MAAA,IAAI,CAACb,iBAAiB,CAACL,OAAO,GAC5BmB,iBAAiB,KAAKF,mBAAmB,CAAA;MAC3C,IAAI,CAACZ,iBAAiB,CAACe,aAAa,GAClCD,iBAAiB,GAAG,CAAC,IAAIA,iBAAiB,GAAGF,mBAAmB,CAAA;AAClE,MAAA,IAAI,CAACR,2BAA2B,GAAG,IAAI,CAACJ,iBAAiB,CAACL,OAAO,CAAA;MACjE,IAAI,CAACK,iBAAiB,CAACC,aAAa,CAClC,IAAIC,KAAK,CAAC,QAAQ,EAAE;AAAEC,QAAAA,OAAO,EAAE,KAAA;AAAM,OAAC,CACxC,CAAC,CAAA;AACH,KAAA;AACF,GAAA;AACF,CAAC,GAAA/C,WAAA,GAAA4D,yBAAA,CAAAjE,MAAA,CAAAkE,SAAA,EAAA,QAAA,EAAA,CA1PEC,OAAO,CAAA,EAAA;EAAAC,YAAA,EAAA,IAAA;EAAAC,UAAA,EAAA,IAAA;EAAAC,QAAA,EAAA,IAAA;AAAAC,EAAAA,WAAA,cAAA;AAAA,IAAA,OAAU,IAAI,CAACpE,IAAI,CAACa,MAAM,CAAA;AAAA,GAAA;AAAA,CAAAV,CAAAA,EAAAA,YAAA,GAAA2D,yBAAA,CAAAjE,MAAA,CAAAkE,SAAA,gBACjCC,OAAO,CAAA,EAAA;EAAAC,YAAA,EAAA,IAAA;EAAAC,UAAA,EAAA,IAAA;EAAAC,QAAA,EAAA,IAAA;AAAAC,EAAAA,WAAA,cAAA;AAAA,IAAA,OAAa,IAAI,CAACpE,IAAI,CAACe,SAAS,IAAI,KAAK,CAAA;AAAA,GAAA;AAAA,CAAAX,CAAAA,EAAAA,YAAA,GAAA0D,yBAAA,CAAAjE,MAAA,CAAAkE,SAAA,wBAChDC,OAAO,CAAA,EAAA;EAAAC,YAAA,EAAA,IAAA;EAAAC,UAAA,EAAA,IAAA;EAAAC,QAAA,EAAA,IAAA;AAAAC,EAAAA,WAAA,cAAA;AAAA,IAAA,OAAqBnD,SAAS,CAAA;AAAA,GAAA;AAAA,CAAAX,CAAAA,EAAAA,YAAA,GAAAwD,yBAAA,CAAAjE,MAAA,CAAAkE,SAAA,kCAErCC,OAAO,CAAA,EAAA;EAAAC,YAAA,EAAA,IAAA;EAAAC,UAAA,EAAA,IAAA;EAAAC,QAAA,EAAA,IAAA;AAAAC,EAAAA,WAAA,cAAA;AAAA,IAAA,OAA+BnD,SAAS,CAAA;AAAA,GAAA;AAAA,CAAA,CAAA,EAAA6C,yBAAA,CAAAjE,MAAA,CAAAkE,SAAA,gBAmJ/CM,MAAM,CAAA,EAAAC,MAAA,CAAAC,wBAAA,CAAA1E,MAAA,CAAAkE,SAAA,gBAAAlE,MAAA,CAAAkE,SAAA,CAAA,EAAAD,yBAAA,CAAAjE,MAAA,CAAAkE,SAAA,2BAyCNM,MAAM,CAAA,EAAAC,MAAA,CAAAC,wBAAA,CAAA1E,MAAA,CAAAkE,SAAA,EAAA,sBAAA,CAAA,EAAAlE,MAAA,CAAAkE,SAAA,CAAAD,EAAAA,yBAAA,CAAAjE,MAAA,CAAAkE,SAAA,EAAA,sBAAA,EAAA,CAUNM,MAAM,CAAAC,EAAAA,MAAA,CAAAC,wBAAA,CAAA1E,MAAA,CAAAkE,SAAA,EAAA,sBAAA,CAAA,EAAAlE,MAAA,CAAAkE,SAAA,CAAAD,EAAAA,yBAAA,CAAAjE,MAAA,CAAAkE,SAAA,EAAA,4BAAA,EAAA,CAMNM,MAAM,CAAAC,EAAAA,MAAA,CAAAC,wBAAA,CAAA1E,MAAA,CAAAkE,SAAA,EAAAlE,4BAAAA,CAAAA,EAAAA,MAAA,CAAAkE,SAAA,CAAA,EAAAD,yBAAA,CAAAjE,MAAA,CAAAkE,SAAA,EAKNM,8BAAAA,EAAAA,CAAAA,MAAM,GAAAC,MAAA,CAAAC,wBAAA,CAAA1E,MAAA,CAAAkE,SAAA,EAAAlE,8BAAAA,CAAAA,EAAAA,MAAA,CAAAkE,SAAA,CAAA,EAAAD,yBAAA,CAAAjE,MAAA,CAAAkE,SAAA,EAKNM,sBAAAA,EAAAA,CAAAA,MAAM,GAAAC,MAAA,CAAAC,wBAAA,CAAA1E,MAAA,CAAAkE,SAAA,2BAAAlE,MAAA,CAAAkE,SAAA,CAAAD,EAAAA,yBAAA,CAAAjE,MAAA,CAAAkE,SAAA,EAAA,wBAAA,EAAA,CAMNM,MAAM,CAAA,EAAAC,MAAA,CAAAC,wBAAA,CAAA1E,MAAA,CAAAkE,SAAA,EAAA,wBAAA,CAAA,EAAAlE,MAAA,CAAAkE,SAAA,CAAAD,EAAAA,yBAAA,CAAAjE,MAAA,CAAAkE,SAAA,EAAA,mBAAA,EAAA,CAQNM,MAAM,CAAA,EAAAC,MAAA,CAAAC,wBAAA,CAAA1E,MAAA,CAAAkE,SAAA,EAAA,mBAAA,CAAA,EAAAlE,MAAA,CAAAkE,SAAA,IAAAlE,MAAA,EAAA;AAzOkC2E,oBAAA,CAAAC,QAAA,EAAtB7E,sBAAsB,CAAA;;;;"}
@@ -1,4 +1,4 @@
1
- import { _ as _defineProperty } from '../../../_rollupPluginBabelHelpers-lqPQKyNs.js';
1
+ import { a as _defineProperty } from '../../../_rollupPluginBabelHelpers-NoJJJNhk.js';
2
2
  import Component from '@glimmer/component';
3
3
  import { guidFor } from '@ember/object/internals';
4
4
  import { precompileTemplate } from '@ember/template-compilation';
@@ -1,4 +1,4 @@
1
- import { _ as _defineProperty } from '../../../_rollupPluginBabelHelpers-lqPQKyNs.js';
1
+ import { a as _defineProperty } from '../../../_rollupPluginBabelHelpers-NoJJJNhk.js';
2
2
  import Component from '@glimmer/component';
3
3
  import { guidFor } from '@ember/object/internals';
4
4
  import { precompileTemplate } from '@ember/template-compilation';
@@ -1,4 +1,4 @@
1
- import { a as _applyDecoratedDescriptor, b as _initializerDefineProperty, _ as _defineProperty } from '../../../_rollupPluginBabelHelpers-lqPQKyNs.js';
1
+ import { _ as _applyDecoratedDescriptor, b as _initializerDefineProperty, a as _defineProperty } from '../../../_rollupPluginBabelHelpers-NoJJJNhk.js';
2
2
  import Component from '@glimmer/component';
3
3
  import { action } from '@ember/object';
4
4
  import { guidFor } from '@ember/object/internals';