@hashicorp/design-system-components 4.2.0 → 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 (221) 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/{link/types.js → popover-primitive/index.js} +1 -1
  9. package/dist/_app_/components/hds/{card/types.js → rich-tooltip/bubble.js} +1 -1
  10. package/dist/_app_/components/hds/{alert/types.js → rich-tooltip/index.js} +1 -1
  11. package/dist/_app_/components/hds/{interactive/types.js → rich-tooltip/toggle.js} +1 -1
  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 +9 -4
  23. package/dist/components/hds/alert/description.js.map +1 -1
  24. package/dist/components/hds/alert/index.js +4 -6
  25. package/dist/components/hds/alert/index.js.map +1 -1
  26. package/dist/components/hds/alert/title.js +9 -4
  27. package/dist/components/hds/alert/title.js.map +1 -1
  28. package/dist/components/hds/alert/types.js +5 -0
  29. package/dist/components/hds/alert/types.js.map +1 -1
  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 +3 -3
  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.map +1 -1
  69. package/dist/components/hds/card/types.js +5 -0
  70. package/dist/components/hds/card/types.js.map +1 -1
  71. package/dist/components/hds/code-block/index.js +1 -1
  72. package/dist/components/hds/code-block/index.js.map +1 -1
  73. package/dist/components/hds/copy/button/index.js +1 -1
  74. package/dist/components/hds/copy/button/index.js.map +1 -1
  75. package/dist/components/hds/copy/snippet/index.js +1 -1
  76. package/dist/components/hds/copy/snippet/index.js.map +1 -1
  77. package/dist/components/hds/disclosure-primitive/index.js +2 -2
  78. package/dist/components/hds/disclosure-primitive/index.js.map +1 -1
  79. package/dist/components/hds/dismiss-button/index.js +3 -3
  80. package/dist/components/hds/dismiss-button/index.js.map +1 -1
  81. package/dist/components/hds/dropdown/index.js +1 -1
  82. package/dist/components/hds/dropdown/index.js.map +1 -1
  83. package/dist/components/hds/dropdown/list-item/checkmark.js +1 -1
  84. package/dist/components/hds/dropdown/list-item/checkmark.js.map +1 -1
  85. package/dist/components/hds/dropdown/list-item/interactive.js +1 -1
  86. package/dist/components/hds/dropdown/list-item/interactive.js.map +1 -1
  87. package/dist/components/hds/dropdown/toggle/button.js +1 -1
  88. package/dist/components/hds/dropdown/toggle/icon.js +1 -1
  89. package/dist/components/hds/dropdown/toggle/icon.js.map +1 -1
  90. package/dist/components/hds/flyout/index.js +1 -1
  91. package/dist/components/hds/flyout/index.js.map +1 -1
  92. package/dist/components/hds/form/field/index.js +1 -1
  93. package/dist/components/hds/form/field/index.js.map +1 -1
  94. package/dist/components/hds/form/fieldset/index.js +1 -1
  95. package/dist/components/hds/form/fieldset/index.js.map +1 -1
  96. package/dist/components/hds/form/label/index.js +18 -2
  97. package/dist/components/hds/form/label/index.js.map +1 -1
  98. package/dist/components/hds/form/masked-input/base.js +1 -1
  99. package/dist/components/hds/form/masked-input/base.js.map +1 -1
  100. package/dist/components/hds/form/radio-card/index.js +1 -1
  101. package/dist/components/hds/form/radio-card/index.js.map +1 -1
  102. package/dist/components/hds/form/super-select/after-options.js +10 -0
  103. package/dist/components/hds/form/super-select/after-options.js.map +1 -0
  104. package/dist/components/hds/form/super-select/multiple/base.js +159 -0
  105. package/dist/components/hds/form/super-select/multiple/base.js.map +1 -0
  106. package/dist/components/hds/form/super-select/multiple/field.js +21 -0
  107. package/dist/components/hds/form/super-select/multiple/field.js.map +1 -0
  108. package/dist/components/hds/form/super-select/option-group.js +22 -0
  109. package/dist/components/hds/form/super-select/option-group.js.map +1 -0
  110. package/dist/components/hds/form/super-select/placeholder.js +10 -0
  111. package/dist/components/hds/form/super-select/placeholder.js.map +1 -0
  112. package/dist/components/hds/form/super-select/single/base.js +86 -0
  113. package/dist/components/hds/form/super-select/single/base.js.map +1 -0
  114. package/dist/components/hds/form/super-select/single/field.js +21 -0
  115. package/dist/components/hds/form/super-select/single/field.js.map +1 -0
  116. package/dist/components/hds/form/text-input/field.js +1 -1
  117. package/dist/components/hds/form/text-input/field.js.map +1 -1
  118. package/dist/components/hds/icon-tile/index.js +15 -11
  119. package/dist/components/hds/icon-tile/index.js.map +1 -1
  120. package/dist/components/hds/icon-tile/types.js +32 -0
  121. package/dist/components/hds/icon-tile/types.js.map +1 -0
  122. package/dist/components/hds/interactive/index.js +4 -4
  123. package/dist/components/hds/interactive/index.js.map +1 -1
  124. package/dist/components/hds/link/inline.js.map +1 -1
  125. package/dist/components/hds/link/standalone.js.map +1 -1
  126. package/dist/components/hds/link/types.js +5 -0
  127. package/dist/components/hds/link/types.js.map +1 -1
  128. package/dist/components/hds/menu-primitive/index.js +1 -1
  129. package/dist/components/hds/menu-primitive/index.js.map +1 -1
  130. package/dist/components/hds/modal/index.js +1 -1
  131. package/dist/components/hds/modal/index.js.map +1 -1
  132. package/dist/components/hds/pagination/compact/index.js +1 -1
  133. package/dist/components/hds/pagination/compact/index.js.map +1 -1
  134. package/dist/components/hds/pagination/nav/arrow.js +1 -1
  135. package/dist/components/hds/pagination/nav/arrow.js.map +1 -1
  136. package/dist/components/hds/pagination/nav/number.js +1 -1
  137. package/dist/components/hds/pagination/nav/number.js.map +1 -1
  138. package/dist/components/hds/pagination/numbered/index.js +1 -1
  139. package/dist/components/hds/pagination/numbered/index.js.map +1 -1
  140. package/dist/components/hds/pagination/size-selector/index.js +1 -1
  141. package/dist/components/hds/pagination/size-selector/index.js.map +1 -1
  142. package/dist/components/hds/popover-primitive/index.js +238 -0
  143. package/dist/components/hds/popover-primitive/index.js.map +1 -0
  144. package/dist/components/hds/reveal/index.js +21 -17
  145. package/dist/components/hds/reveal/index.js.map +1 -1
  146. package/dist/components/hds/reveal/toggle/button.js +5 -5
  147. package/dist/components/hds/reveal/toggle/button.js.map +1 -1
  148. package/dist/components/hds/rich-tooltip/bubble.js +60 -0
  149. package/dist/components/hds/rich-tooltip/bubble.js.map +1 -0
  150. package/dist/components/hds/rich-tooltip/index.js +26 -0
  151. package/dist/components/hds/rich-tooltip/index.js.map +1 -0
  152. package/dist/components/hds/rich-tooltip/toggle.js +85 -0
  153. package/dist/components/hds/rich-tooltip/toggle.js.map +1 -0
  154. package/dist/components/hds/separator/index.js +9 -8
  155. package/dist/components/hds/separator/index.js.map +1 -1
  156. package/dist/components/hds/separator/types.js +13 -0
  157. package/dist/components/hds/separator/types.js.map +1 -0
  158. package/dist/components/hds/side-nav/index.js +1 -1
  159. package/dist/components/hds/side-nav/index.js.map +1 -1
  160. package/dist/components/hds/side-nav/portal/target.js +1 -1
  161. package/dist/components/hds/side-nav/portal/target.js.map +1 -1
  162. package/dist/components/hds/stepper/step/indicator.js +9 -8
  163. package/dist/components/hds/stepper/step/indicator.js.map +1 -1
  164. package/dist/components/hds/stepper/task/indicator.js +10 -14
  165. package/dist/components/hds/stepper/task/indicator.js.map +1 -1
  166. package/dist/components/hds/stepper/types.js +21 -0
  167. package/dist/components/hds/stepper/types.js.map +1 -0
  168. package/dist/components/hds/table/index.js +1 -1
  169. package/dist/components/hds/table/index.js.map +1 -1
  170. package/dist/components/hds/table/th-button-sort.js +1 -1
  171. package/dist/components/hds/table/th-button-tooltip.js +1 -1
  172. package/dist/components/hds/table/th-selectable.js +1 -1
  173. package/dist/components/hds/table/th-selectable.js.map +1 -1
  174. package/dist/components/hds/table/th-sort.js +1 -1
  175. package/dist/components/hds/table/th.js +1 -1
  176. package/dist/components/hds/tabs/index.js +1 -1
  177. package/dist/components/hds/tabs/index.js.map +1 -1
  178. package/dist/components/hds/tabs/panel.js +1 -1
  179. package/dist/components/hds/tabs/panel.js.map +1 -1
  180. package/dist/components/hds/tabs/tab.js +1 -1
  181. package/dist/components/hds/tabs/tab.js.map +1 -1
  182. package/dist/components/hds/tag/index.js +11 -10
  183. package/dist/components/hds/tag/index.js.map +1 -1
  184. package/dist/components/hds/tag/types.js +13 -0
  185. package/dist/components/hds/tag/types.js.map +1 -0
  186. package/dist/components/hds/text/body.js.map +1 -1
  187. package/dist/components/hds/text/code.js.map +1 -1
  188. package/dist/components/hds/text/display.js.map +1 -1
  189. package/dist/components/hds/text/index.js +3 -3
  190. package/dist/components/hds/text/index.js.map +1 -1
  191. package/dist/components/hds/toast/index.js +8 -2
  192. package/dist/components/hds/toast/index.js.map +1 -1
  193. package/dist/components/hds/yield/index.js +4 -4
  194. package/dist/components/hds/yield/index.js.map +1 -1
  195. package/dist/modifiers/hds-anchored-position.js +175 -0
  196. package/dist/modifiers/hds-anchored-position.js.map +1 -0
  197. package/dist/modifiers/hds-register-event.js +40 -0
  198. package/dist/modifiers/hds-register-event.js.map +1 -0
  199. package/dist/modifiers/hds-tooltip.js +10 -14
  200. package/dist/modifiers/hds-tooltip.js.map +1 -1
  201. package/dist/styles/@hashicorp/design-system-components.css +565 -3
  202. package/dist/styles/@hashicorp/design-system-components.scss +1 -0
  203. package/dist/styles/@hashicorp/design-system-power-select-overrides.scss +0 -1
  204. package/dist/styles/components/code-block/theme.scss +1 -1
  205. package/dist/styles/components/dropdown.scss +7 -0
  206. package/dist/styles/components/form/index.scss +1 -0
  207. package/dist/styles/components/form/select.scss +0 -1
  208. package/dist/styles/components/form/super-select.scss +515 -0
  209. package/dist/styles/components/form/text-input.scss +0 -1
  210. package/dist/styles/components/form/textarea.scss +0 -1
  211. package/dist/styles/components/page-header.scss +1 -0
  212. package/dist/styles/components/rich-tooltip.scss +247 -0
  213. package/dist/styles/components/tabs.scss +2 -1
  214. package/dist/styles/components/tooltip.scss +1 -1
  215. package/package.json +54 -28
  216. package/dist/_app_/components/hds/text/types.js +0 -1
  217. package/dist/_app_/components/hds/yield/types.js +0 -1
  218. package/dist/components/hds/interactive/types.js +0 -2
  219. package/dist/components/hds/interactive/types.js.map +0 -1
  220. package/dist/components/hds/yield/types.js +0 -2
  221. package/dist/components/hds/yield/types.js.map +0 -1
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Copyright (c) HashiCorp, Inc.
3
+ * SPDX-License-Identifier: MPL-2.0
4
+ */
5
+
6
+ let HdsIconTileSizeValues = /*#__PURE__*/function (HdsIconTileSizeValues) {
7
+ HdsIconTileSizeValues["Small"] = "small";
8
+ HdsIconTileSizeValues["Medium"] = "medium";
9
+ HdsIconTileSizeValues["Large"] = "large";
10
+ return HdsIconTileSizeValues;
11
+ }({});
12
+ let HdsIconTileProductValues = /*#__PURE__*/function (HdsIconTileProductValues) {
13
+ HdsIconTileProductValues["Boundary"] = "boundary";
14
+ HdsIconTileProductValues["Consul"] = "consul";
15
+ HdsIconTileProductValues["HCP"] = "hcp";
16
+ HdsIconTileProductValues["Nomad"] = "nomad";
17
+ HdsIconTileProductValues["Packer"] = "packer";
18
+ HdsIconTileProductValues["Terraform"] = "terraform";
19
+ HdsIconTileProductValues["Vagrant"] = "vagrant";
20
+ HdsIconTileProductValues["Vault"] = "vault";
21
+ HdsIconTileProductValues["Vault Secrets"] = "vault-secrets";
22
+ HdsIconTileProductValues["Vault Radar"] = "vault-radar";
23
+ HdsIconTileProductValues["Waypoint"] = "waypoint";
24
+ return HdsIconTileProductValues;
25
+ }({});
26
+ let HdsIconTileColorNeutral = /*#__PURE__*/function (HdsIconTileColorNeutral) {
27
+ HdsIconTileColorNeutral["Neutral"] = "neutral";
28
+ return HdsIconTileColorNeutral;
29
+ }({});
30
+
31
+ export { HdsIconTileColorNeutral, HdsIconTileProductValues, HdsIconTileSizeValues };
32
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sources":["../../../../src/components/hds/icon-tile/types.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nexport enum HdsIconTileSizeValues {\n Small = 'small',\n Medium = 'medium',\n Large = 'large',\n}\n\nexport type HdsIconTileSizes = `${HdsIconTileSizeValues}`;\n\nexport enum HdsIconTileProductValues {\n Boundary = 'boundary',\n Consul = 'consul',\n HCP = 'hcp',\n Nomad = 'nomad',\n Packer = 'packer',\n Terraform = 'terraform',\n Vagrant = 'vagrant',\n Vault = 'vault',\n 'Vault Secrets' = 'vault-secrets',\n 'Vault Radar' = 'vault-radar',\n Waypoint = 'waypoint',\n}\n\nexport type HdsIconTileProducts = `${HdsIconTileProductValues}`;\n\nexport enum HdsIconTileColorNeutral {\n Neutral = 'neutral',\n}\n\nexport type HdsIconTileColors =\n | HdsIconTileProductValues\n | HdsIconTileColorNeutral;\n"],"names":["HdsIconTileSizeValues","HdsIconTileProductValues","HdsIconTileColorNeutral"],"mappings":"AAAA;AACA;AACA;AACA;;AAEYA,IAAAA,qBAAqB,0BAArBA,qBAAqB,EAAA;EAArBA,qBAAqB,CAAA,OAAA,CAAA,GAAA,OAAA,CAAA;EAArBA,qBAAqB,CAAA,QAAA,CAAA,GAAA,QAAA,CAAA;EAArBA,qBAAqB,CAAA,OAAA,CAAA,GAAA,OAAA,CAAA;AAAA,EAAA,OAArBA,qBAAqB,CAAA;AAAA,CAAA,CAAA,EAAA,EAAA;AAQrBC,IAAAA,wBAAwB,0BAAxBA,wBAAwB,EAAA;EAAxBA,wBAAwB,CAAA,UAAA,CAAA,GAAA,UAAA,CAAA;EAAxBA,wBAAwB,CAAA,QAAA,CAAA,GAAA,QAAA,CAAA;EAAxBA,wBAAwB,CAAA,KAAA,CAAA,GAAA,KAAA,CAAA;EAAxBA,wBAAwB,CAAA,OAAA,CAAA,GAAA,OAAA,CAAA;EAAxBA,wBAAwB,CAAA,QAAA,CAAA,GAAA,QAAA,CAAA;EAAxBA,wBAAwB,CAAA,WAAA,CAAA,GAAA,WAAA,CAAA;EAAxBA,wBAAwB,CAAA,SAAA,CAAA,GAAA,SAAA,CAAA;EAAxBA,wBAAwB,CAAA,OAAA,CAAA,GAAA,OAAA,CAAA;EAAxBA,wBAAwB,CAAA,eAAA,CAAA,GAAA,eAAA,CAAA;EAAxBA,wBAAwB,CAAA,aAAA,CAAA,GAAA,aAAA,CAAA;EAAxBA,wBAAwB,CAAA,UAAA,CAAA,GAAA,UAAA,CAAA;AAAA,EAAA,OAAxBA,wBAAwB,CAAA;AAAA,CAAA,CAAA,EAAA,EAAA;AAgBxBC,IAAAA,uBAAuB,0BAAvBA,uBAAuB,EAAA;EAAvBA,uBAAuB,CAAA,SAAA,CAAA,GAAA,SAAA,CAAA;AAAA,EAAA,OAAvBA,uBAAuB,CAAA;AAAA,CAAA,CAAA,EAAA;;;;"}
@@ -1,4 +1,4 @@
1
- import { a as _applyDecoratedDescriptor } from '../../../_rollupPluginBabelHelpers-lqPQKyNs.js';
1
+ import { _ as _applyDecoratedDescriptor } from '../../../_rollupPluginBabelHelpers-NoJJJNhk.js';
2
2
  import Component from '@glimmer/component';
3
3
  import { action } from '@ember/object';
4
4
  import { precompileTemplate } from '@ember/template-compilation';
@@ -7,7 +7,7 @@ import { setComponentTemplate } from '@ember/component';
7
7
  var TEMPLATE = precompileTemplate("{{! IMPORTANT: we removed the newlines before/after the yield to reduce the issues with unexpected whitespaces (see https://github.com/hashicorp/design-system/pull/231#issuecomment-1123502499) }}\n{{! IMPORTANT: we need to add \"squishies\" here (~) because otherwise the whitespace added by Ember becomes visible in the link (being an inline element) - See https://handlebarsjs.com/guide/expressions.html#whitespace-control }}\n{{! NOTICE: we can\'t support the direct use of the \"href\" HTML attribute via ...attributes in the <a> elements, because we need to rely on the \"@href\" Ember argument to differentiate between different types of generated output }}\n{{~#if @route~}}\n {{~#if this.isRouteExternal~}}\n <LinkToExternal\n @current-when={{@current-when}}\n @models={{hds-link-to-models @model @models}}\n @query={{hds-link-to-query @query}}\n @replace={{@replace}}\n @route={{@route}}\n ...attributes\n >{{yield}}</LinkToExternal>\n {{~else~}}\n <LinkTo\n @current-when={{@current-when}}\n @models={{hds-link-to-models @model @models}}\n @query={{hds-link-to-query @query}}\n @replace={{@replace}}\n @route={{@route}}\n ...attributes\n >{{yield}}</LinkTo>\n {{~/if~}}\n{{~else if @href~}}\n {{~#if this.isHrefExternal~}}\n <a target=\"_blank\" rel=\"noopener noreferrer\" ...attributes href={{@href}} {{on \"keyup\" this.onKeyUp}}>{{yield}}</a>\n {{~else~}}\n <a ...attributes href={{@href}} {{on \"keyup\" this.onKeyUp}}>{{yield}}</a>\n {{~/if~}}\n{{~else~}}\n <button type=\"button\" ...attributes>{{yield}}</button>\n{{~/if~}}");
8
8
 
9
9
  var _class;
10
- let HdsInteractiveIndexComponent = (_class = class HdsInteractiveIndexComponent extends Component {
10
+ let HdsInteractiveComponent = (_class = class HdsInteractiveComponent extends Component {
11
11
  /**
12
12
  * Determines if a @href value is "external" (it adds target="_blank" rel="noopener noreferrer")
13
13
  *
@@ -35,7 +35,7 @@ let HdsInteractiveIndexComponent = (_class = class HdsInteractiveIndexComponent
35
35
  }
36
36
  }
37
37
  }, (_applyDecoratedDescriptor(_class.prototype, "onKeyUp", [action], Object.getOwnPropertyDescriptor(_class.prototype, "onKeyUp"), _class.prototype)), _class);
38
- setComponentTemplate(TEMPLATE, HdsInteractiveIndexComponent);
38
+ setComponentTemplate(TEMPLATE, HdsInteractiveComponent);
39
39
 
40
- export { HdsInteractiveIndexComponent as default };
40
+ export { HdsInteractiveComponent as default };
41
41
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/components/hds/interactive/index.hbs","../../../../src/components/hds/interactive/index.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{! IMPORTANT: we removed the newlines before/after the yield to reduce the issues with unexpected whitespaces (see https://github.com/hashicorp/design-system/pull/231#issuecomment-1123502499) }}\\n{{! IMPORTANT: we need to add \\\"squishies\\\" here (~) because otherwise the whitespace added by Ember becomes visible in the link (being an inline element) - See https://handlebarsjs.com/guide/expressions.html#whitespace-control }}\\n{{! NOTICE: we can\\'t support the direct use of the \\\"href\\\" HTML attribute via ...attributes in the <a> elements, because we need to rely on the \\\"@href\\\" Ember argument to differentiate between different types of generated output }}\\n{{~#if @route~}}\\n {{~#if this.isRouteExternal~}}\\n <LinkToExternal\\n @current-when={{@current-when}}\\n @models={{hds-link-to-models @model @models}}\\n @query={{hds-link-to-query @query}}\\n @replace={{@replace}}\\n @route={{@route}}\\n ...attributes\\n >{{yield}}</LinkToExternal>\\n {{~else~}}\\n <LinkTo\\n @current-when={{@current-when}}\\n @models={{hds-link-to-models @model @models}}\\n @query={{hds-link-to-query @query}}\\n @replace={{@replace}}\\n @route={{@route}}\\n ...attributes\\n >{{yield}}</LinkTo>\\n {{~/if~}}\\n{{~else if @href~}}\\n {{~#if this.isHrefExternal~}}\\n <a target=\\\"_blank\\\" rel=\\\"noopener noreferrer\\\" ...attributes href={{@href}} {{on \\\"keyup\\\" this.onKeyUp}}>{{yield}}</a>\\n {{~else~}}\\n <a ...attributes href={{@href}} {{on \\\"keyup\\\" this.onKeyUp}}>{{yield}}</a>\\n {{~/if~}}\\n{{~else~}}\\n <button type=\\\"button\\\" ...attributes>{{yield}}</button>\\n{{~/if~}}\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { action } from '@ember/object';\nimport type { HdsInteractiveSignature } from './types';\n\nexport default class HdsInteractiveIndexComponent extends Component<HdsInteractiveSignature> {\n /**\n * Determines if a @href value is \"external\" (it adds target=\"_blank\" rel=\"noopener noreferrer\")\n *\n * @param isHrefExternal\n * @type boolean\n * @default true\n */\n get isHrefExternal() {\n return this.args.isHrefExternal ?? true;\n }\n\n /**\n * Determines if a @route value is \"external\" (uses the LinkToExternal component instead of LinkTo)\n *\n * @param isRouteExternal\n * @type boolean\n * @default false\n */\n get isRouteExternal() {\n return this.args.isRouteExternal ?? false;\n }\n\n @action\n onKeyUp(event: KeyboardEvent) {\n if (event.key === ' ' || event.code === 'Space') {\n (event.target as HTMLElement).click();\n }\n }\n}\n"],"names":["HdsInteractiveIndexComponent","_class","Component","isHrefExternal","args","isRouteExternal","onKeyUp","event","key","code","target","click","_applyDecoratedDescriptor","prototype","action","Object","getOwnPropertyDescriptor","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;AACA,eAAe,kBAAkB,CAAC,4lDAA4lD;;;ACQzmDA,IAAAA,4BAA4B,IAAAC,MAAA,GAAlC,MAAMD,4BAA4B,SAASE,SAAS,CAA0B;AAC3F;AACF;AACA;AACA;AACA;AACA;AACA;EACE,IAAIC,cAAcA,GAAG;AACnB,IAAA,OAAO,IAAI,CAACC,IAAI,CAACD,cAAc,IAAI,IAAI,CAAA;AACzC,GAAA;;AAEA;AACF;AACA;AACA;AACA;AACA;AACA;EACE,IAAIE,eAAeA,GAAG;AACpB,IAAA,OAAO,IAAI,CAACD,IAAI,CAACC,eAAe,IAAI,KAAK,CAAA;AAC3C,GAAA;EAGAC,OAAOA,CAACC,KAAoB,EAAE;IAC5B,IAAIA,KAAK,CAACC,GAAG,KAAK,GAAG,IAAID,KAAK,CAACE,IAAI,KAAK,OAAO,EAAE;AAC9CF,MAAAA,KAAK,CAACG,MAAM,CAAiBC,KAAK,EAAE,CAAA;AACvC,KAAA;AACF,GAAA;AACF,CAAC,GAAAC,yBAAA,CAAAX,MAAA,CAAAY,SAAA,EAAA,SAAA,EAAA,CANEC,MAAM,CAAAC,EAAAA,MAAA,CAAAC,wBAAA,CAAAf,MAAA,CAAAY,SAAA,cAAAZ,MAAA,CAAAY,SAAA,CAAA,GAAAZ,MAAA,EAAA;AAvBwCgB,oBAAA,CAAAC,QAAA,EAAAlB,4BAAA,CAAA;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/hds/interactive/index.hbs","../../../../src/components/hds/interactive/index.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{! IMPORTANT: we removed the newlines before/after the yield to reduce the issues with unexpected whitespaces (see https://github.com/hashicorp/design-system/pull/231#issuecomment-1123502499) }}\\n{{! IMPORTANT: we need to add \\\"squishies\\\" here (~) because otherwise the whitespace added by Ember becomes visible in the link (being an inline element) - See https://handlebarsjs.com/guide/expressions.html#whitespace-control }}\\n{{! NOTICE: we can\\'t support the direct use of the \\\"href\\\" HTML attribute via ...attributes in the <a> elements, because we need to rely on the \\\"@href\\\" Ember argument to differentiate between different types of generated output }}\\n{{~#if @route~}}\\n {{~#if this.isRouteExternal~}}\\n <LinkToExternal\\n @current-when={{@current-when}}\\n @models={{hds-link-to-models @model @models}}\\n @query={{hds-link-to-query @query}}\\n @replace={{@replace}}\\n @route={{@route}}\\n ...attributes\\n >{{yield}}</LinkToExternal>\\n {{~else~}}\\n <LinkTo\\n @current-when={{@current-when}}\\n @models={{hds-link-to-models @model @models}}\\n @query={{hds-link-to-query @query}}\\n @replace={{@replace}}\\n @route={{@route}}\\n ...attributes\\n >{{yield}}</LinkTo>\\n {{~/if~}}\\n{{~else if @href~}}\\n {{~#if this.isHrefExternal~}}\\n <a target=\\\"_blank\\\" rel=\\\"noopener noreferrer\\\" ...attributes href={{@href}} {{on \\\"keyup\\\" this.onKeyUp}}>{{yield}}</a>\\n {{~else~}}\\n <a ...attributes href={{@href}} {{on \\\"keyup\\\" this.onKeyUp}}>{{yield}}</a>\\n {{~/if~}}\\n{{~else~}}\\n <button type=\\\"button\\\" ...attributes>{{yield}}</button>\\n{{~/if~}}\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { action } from '@ember/object';\n\nexport interface HdsInteractiveSignature {\n Args: {\n href?: string;\n isHrefExternal?: boolean;\n isRouteExternal?: boolean;\n route?: string;\n models?: Array<string | number>;\n model?: string | number;\n query?: Record<string, string>;\n 'current-when'?: string;\n replace?: boolean;\n };\n Blocks: {\n default: [];\n };\n Element: HTMLAnchorElement | HTMLButtonElement;\n}\n\nexport default class HdsInteractiveComponent extends Component<HdsInteractiveSignature> {\n /**\n * Determines if a @href value is \"external\" (it adds target=\"_blank\" rel=\"noopener noreferrer\")\n *\n * @param isHrefExternal\n * @type boolean\n * @default true\n */\n get isHrefExternal() {\n return this.args.isHrefExternal ?? true;\n }\n\n /**\n * Determines if a @route value is \"external\" (uses the LinkToExternal component instead of LinkTo)\n *\n * @param isRouteExternal\n * @type boolean\n * @default false\n */\n get isRouteExternal() {\n return this.args.isRouteExternal ?? false;\n }\n\n @action\n onKeyUp(event: KeyboardEvent) {\n if (event.key === ' ' || event.code === 'Space') {\n (event.target as HTMLElement).click();\n }\n }\n}\n"],"names":["HdsInteractiveComponent","_class","Component","isHrefExternal","args","isRouteExternal","onKeyUp","event","key","code","target","click","_applyDecoratedDescriptor","prototype","action","Object","getOwnPropertyDescriptor","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;AACA,eAAe,kBAAkB,CAAC,4lDAA4lD;;;ACyBzmDA,IAAAA,uBAAuB,IAAAC,MAAA,GAA7B,MAAMD,uBAAuB,SAASE,SAAS,CAA0B;AACtF;AACF;AACA;AACA;AACA;AACA;AACA;EACE,IAAIC,cAAcA,GAAG;AACnB,IAAA,OAAO,IAAI,CAACC,IAAI,CAACD,cAAc,IAAI,IAAI,CAAA;AACzC,GAAA;;AAEA;AACF;AACA;AACA;AACA;AACA;AACA;EACE,IAAIE,eAAeA,GAAG;AACpB,IAAA,OAAO,IAAI,CAACD,IAAI,CAACC,eAAe,IAAI,KAAK,CAAA;AAC3C,GAAA;EAGAC,OAAOA,CAACC,KAAoB,EAAE;IAC5B,IAAIA,KAAK,CAACC,GAAG,KAAK,GAAG,IAAID,KAAK,CAACE,IAAI,KAAK,OAAO,EAAE;AAC9CF,MAAAA,KAAK,CAACG,MAAM,CAAiBC,KAAK,EAAE,CAAA;AACvC,KAAA;AACF,GAAA;AACF,CAAC,GAAAC,yBAAA,CAAAX,MAAA,CAAAY,SAAA,EAAA,SAAA,EAAA,CANEC,MAAM,CAAAC,EAAAA,MAAA,CAAAC,wBAAA,CAAAf,MAAA,CAAAY,SAAA,cAAAZ,MAAA,CAAAY,SAAA,CAAA,GAAAZ,MAAA,EAAA;AAvBmCgB,oBAAA,CAAAC,QAAA,EAAvBlB,uBAAuB,CAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"inline.js","sources":["../../../../src/components/hds/link/inline.hbs","../../../../src/components/hds/link/inline.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{! IMPORTANT: we removed the newlines before/after the yield to reduce the issues with unexpected whitespaces (see https://github.com/hashicorp/design-system/pull/231#issuecomment-1123502499) }}\\n{{! IMPORTANT: we need to add \\\"squishies\\\" here (~) because otherwise the whitespace added by Ember becomes visible in the link (being an inline element) - See https://handlebarsjs.com/guide/expressions.html#whitespace-control }}\\n<Hds::Interactive\\n class={{this.classNames}}\\n @current-when={{@current-when}}\\n @models={{hds-link-to-models @model @models}}\\n @query={{hds-link-to-query @query}}\\n @replace={{@replace}}\\n @route={{@route}}\\n @isRouteExternal={{@isRouteExternal}}\\n @href={{@href}}\\n @isHrefExternal={{@isHrefExternal}}\\n ...attributes\\n>{{#if (and @icon (eq this.iconPosition \\\"leading\\\"))~}}\\n <span class=\\\"hds-link-inline__icon hds-link-inline__icon--leading\\\">\\n <FlightIcon @name={{@icon}} @size=\\\"16\\\" @stretched={{true}} />\\n </span>\\n {{~/if~}}{{yield}}{{~#if (and @icon (eq this.iconPosition \\\"trailing\\\"))~}}\\n <span class=\\\"hds-link-inline__icon hds-link-inline__icon--trailing\\\">\\n <FlightIcon @name={{@icon}} @size=\\\"16\\\" @stretched={{true}} />\\n </span>\\n {{~/if}}</Hds::Interactive>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { assert } from '@ember/debug';\nimport { HdsLinkColorValues, HdsLinkIconPositionValues } from './types.ts';\nimport type { HdsLinkInlineSignature } from './types.ts';\n\nexport const DEFAULT_ICONPOSITION = HdsLinkIconPositionValues.Trailing;\nexport const DEFAULT_COLOR = HdsLinkColorValues.Primary;\nexport const ICONPOSITIONS: string[] = Object.values(HdsLinkIconPositionValues);\nexport const COLORS: string[] = Object.values(HdsLinkColorValues);\n\nexport default class HdsLinkInlineComponent extends Component<HdsLinkInlineSignature> {\n constructor(owner: unknown, args: HdsLinkInlineSignature['Args']) {\n super(owner, args);\n if (!(this.args.href || this.args.route)) {\n assert('@href or @route must be defined for <Hds::Link::Inline>');\n }\n }\n\n /**\n * @param color\n * @type {string}\n * @default primary\n * @description Determines the color of link to be used; acceptable values are `primary` and `secondary`\n */\n get color() {\n const { color = DEFAULT_COLOR } = this.args;\n\n assert(\n `@color for \"Hds::Link::Inline\" must be one of the following: ${COLORS.join(\n ', '\n )}; received: ${color}`,\n COLORS.includes(color)\n );\n\n return color;\n }\n\n /**\n * @param iconPosition\n * @type {string}\n * @default leading\n * @description Positions the icon before or after the text; allowed values are `leading` or `trailing`\n */\n get iconPosition() {\n const { iconPosition = DEFAULT_ICONPOSITION } = this.args;\n\n assert(\n `@iconPosition for \"Hds::Link::Inline\" must be one of the following: ${ICONPOSITIONS.join(\n ', '\n )}; received: ${iconPosition}`,\n ICONPOSITIONS.includes(iconPosition)\n );\n\n return iconPosition;\n }\n\n /**\n * Get the class names to apply to the component.\n * @method LinkInline#classNames\n * @return {string} The \"class\" attribute to apply to the component.\n */\n get classNames() {\n const classes = ['hds-link-inline'];\n\n // add a class based on the @color argument\n classes.push(`hds-link-inline--color-${this.color}`);\n\n // add a class based on the @iconPosition argument\n classes.push(`hds-link-inline--icon-${this.iconPosition}`);\n\n return classes.join(' ');\n }\n}\n"],"names":["DEFAULT_ICONPOSITION","HdsLinkIconPositionValues","Trailing","DEFAULT_COLOR","HdsLinkColorValues","Primary","ICONPOSITIONS","Object","values","COLORS","HdsLinkInlineComponent","Component","constructor","owner","args","href","route","assert","color","join","includes","iconPosition","classNames","classes","push","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;AACA,eAAe,kBAAkB,CAAC,iuCAAiuC;;ACDnwC;AACA;AACA;AACA;;AAOaA,MAAAA,oBAAoB,GAAGC,yBAAyB,CAACC,SAAQ;AACzDC,MAAAA,aAAa,GAAGC,kBAAkB,CAACC,QAAO;AAChD,MAAMC,aAAuB,GAAGC,MAAM,CAACC,MAAM,CAACP,yBAAyB,EAAC;AACxE,MAAMQ,MAAgB,GAAGF,MAAM,CAACC,MAAM,CAACJ,kBAAkB,EAAC;AAElD,MAAMM,sBAAsB,SAASC,SAAS,CAAyB;AACpFC,EAAAA,WAAWA,CAACC,KAAc,EAAEC,IAAoC,EAAE;AAChE,IAAA,KAAK,CAACD,KAAK,EAAEC,IAAI,CAAC,CAAA;AAClB,IAAA,IAAI,EAAE,IAAI,CAACA,IAAI,CAACC,IAAI,IAAI,IAAI,CAACD,IAAI,CAACE,KAAK,CAAC,EAAE;MACxCC,MAAM,CAAC,yDAAyD,CAAC,CAAA;AACnE,KAAA;AACF,GAAA;;AAEA;AACF;AACA;AACA;AACA;AACA;EACE,IAAIC,KAAKA,GAAG;IACV,MAAM;AAAEA,MAAAA,KAAK,GAAGf,aAAAA;KAAe,GAAG,IAAI,CAACW,IAAI,CAAA;AAE3CG,IAAAA,MAAM,CACH,CAA+DR,6DAAAA,EAAAA,MAAM,CAACU,IAAI,CACzE,IACF,CAAE,CAAA,YAAA,EAAcD,KAAM,CAAA,CAAC,EACvBT,MAAM,CAACW,QAAQ,CAACF,KAAK,CACvB,CAAC,CAAA;AAED,IAAA,OAAOA,KAAK,CAAA;AACd,GAAA;;AAEA;AACF;AACA;AACA;AACA;AACA;EACE,IAAIG,YAAYA,GAAG;IACjB,MAAM;AAAEA,MAAAA,YAAY,GAAGrB,oBAAAA;KAAsB,GAAG,IAAI,CAACc,IAAI,CAAA;AAEzDG,IAAAA,MAAM,CACH,CAAsEX,oEAAAA,EAAAA,aAAa,CAACa,IAAI,CACvF,IACF,CAAE,CAAA,YAAA,EAAcE,YAAa,CAAA,CAAC,EAC9Bf,aAAa,CAACc,QAAQ,CAACC,YAAY,CACrC,CAAC,CAAA;AAED,IAAA,OAAOA,YAAY,CAAA;AACrB,GAAA;;AAEA;AACF;AACA;AACA;AACA;EACE,IAAIC,UAAUA,GAAG;AACf,IAAA,MAAMC,OAAO,GAAG,CAAC,iBAAiB,CAAC,CAAA;;AAEnC;IACAA,OAAO,CAACC,IAAI,CAAE,CAAA,uBAAA,EAAyB,IAAI,CAACN,KAAM,EAAC,CAAC,CAAA;;AAEpD;IACAK,OAAO,CAACC,IAAI,CAAE,CAAA,sBAAA,EAAwB,IAAI,CAACH,YAAa,EAAC,CAAC,CAAA;AAE1D,IAAA,OAAOE,OAAO,CAACJ,IAAI,CAAC,GAAG,CAAC,CAAA;AAC1B,GAAA;AACF,CAAA;AAACM,oBAAA,CAAAC,QAAA,EA9DoBhB,sBAAsB,CAAA;;;;"}
1
+ {"version":3,"file":"inline.js","sources":["../../../../src/components/hds/link/inline.hbs","../../../../src/components/hds/link/inline.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{! IMPORTANT: we removed the newlines before/after the yield to reduce the issues with unexpected whitespaces (see https://github.com/hashicorp/design-system/pull/231#issuecomment-1123502499) }}\\n{{! IMPORTANT: we need to add \\\"squishies\\\" here (~) because otherwise the whitespace added by Ember becomes visible in the link (being an inline element) - See https://handlebarsjs.com/guide/expressions.html#whitespace-control }}\\n<Hds::Interactive\\n class={{this.classNames}}\\n @current-when={{@current-when}}\\n @models={{hds-link-to-models @model @models}}\\n @query={{hds-link-to-query @query}}\\n @replace={{@replace}}\\n @route={{@route}}\\n @isRouteExternal={{@isRouteExternal}}\\n @href={{@href}}\\n @isHrefExternal={{@isHrefExternal}}\\n ...attributes\\n>{{#if (and @icon (eq this.iconPosition \\\"leading\\\"))~}}\\n <span class=\\\"hds-link-inline__icon hds-link-inline__icon--leading\\\">\\n <FlightIcon @name={{@icon}} @size=\\\"16\\\" @stretched={{true}} />\\n </span>\\n {{~/if~}}{{yield}}{{~#if (and @icon (eq this.iconPosition \\\"trailing\\\"))~}}\\n <span class=\\\"hds-link-inline__icon hds-link-inline__icon--trailing\\\">\\n <FlightIcon @name={{@icon}} @size=\\\"16\\\" @stretched={{true}} />\\n </span>\\n {{~/if}}</Hds::Interactive>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { assert } from '@ember/debug';\nimport { HdsLinkColorValues, HdsLinkIconPositionValues } from './types.ts';\n\nimport type { HdsInteractiveSignature } from '../interactive/';\nimport type { HdsLinkColors, HdsLinkIconPositions } from './types.ts';\n\nexport const DEFAULT_ICONPOSITION = HdsLinkIconPositionValues.Trailing;\nexport const DEFAULT_COLOR = HdsLinkColorValues.Primary;\nexport const ICONPOSITIONS: string[] = Object.values(HdsLinkIconPositionValues);\nexport const COLORS: string[] = Object.values(HdsLinkColorValues);\n\nexport interface HdsLinkInlineSignature {\n Args: HdsInteractiveSignature['Args'] & {\n color?: HdsLinkColors;\n icon?: string;\n iconPosition?: HdsLinkIconPositions;\n };\n Blocks: {\n default: [];\n };\n Element: HdsInteractiveSignature['Element'];\n}\n\nexport default class HdsLinkInlineComponent extends Component<HdsLinkInlineSignature> {\n constructor(owner: unknown, args: HdsLinkInlineSignature['Args']) {\n super(owner, args);\n if (!(this.args.href || this.args.route)) {\n assert('@href or @route must be defined for <Hds::Link::Inline>');\n }\n }\n\n /**\n * @param color\n * @type {string}\n * @default primary\n * @description Determines the color of link to be used; acceptable values are `primary` and `secondary`\n */\n get color() {\n const { color = DEFAULT_COLOR } = this.args;\n\n assert(\n `@color for \"Hds::Link::Inline\" must be one of the following: ${COLORS.join(\n ', '\n )}; received: ${color}`,\n COLORS.includes(color)\n );\n\n return color;\n }\n\n /**\n * @param iconPosition\n * @type {string}\n * @default leading\n * @description Positions the icon before or after the text; allowed values are `leading` or `trailing`\n */\n get iconPosition() {\n const { iconPosition = DEFAULT_ICONPOSITION } = this.args;\n\n assert(\n `@iconPosition for \"Hds::Link::Inline\" must be one of the following: ${ICONPOSITIONS.join(\n ', '\n )}; received: ${iconPosition}`,\n ICONPOSITIONS.includes(iconPosition)\n );\n\n return iconPosition;\n }\n\n /**\n * Get the class names to apply to the component.\n * @method LinkInline#classNames\n * @return {string} The \"class\" attribute to apply to the component.\n */\n get classNames() {\n const classes = ['hds-link-inline'];\n\n // add a class based on the @color argument\n classes.push(`hds-link-inline--color-${this.color}`);\n\n // add a class based on the @iconPosition argument\n classes.push(`hds-link-inline--icon-${this.iconPosition}`);\n\n return classes.join(' ');\n }\n}\n"],"names":["DEFAULT_ICONPOSITION","HdsLinkIconPositionValues","Trailing","DEFAULT_COLOR","HdsLinkColorValues","Primary","ICONPOSITIONS","Object","values","COLORS","HdsLinkInlineComponent","Component","constructor","owner","args","href","route","assert","color","join","includes","iconPosition","classNames","classes","push","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;AACA,eAAe,kBAAkB,CAAC,iuCAAiuC;;ACDnwC;AACA;AACA;AACA;;AASaA,MAAAA,oBAAoB,GAAGC,yBAAyB,CAACC,SAAQ;AACzDC,MAAAA,aAAa,GAAGC,kBAAkB,CAACC,QAAO;AAChD,MAAMC,aAAuB,GAAGC,MAAM,CAACC,MAAM,CAACP,yBAAyB,EAAC;AACxE,MAAMQ,MAAgB,GAAGF,MAAM,CAACC,MAAM,CAACJ,kBAAkB,EAAC;AAclD,MAAMM,sBAAsB,SAASC,SAAS,CAAyB;AACpFC,EAAAA,WAAWA,CAACC,KAAc,EAAEC,IAAoC,EAAE;AAChE,IAAA,KAAK,CAACD,KAAK,EAAEC,IAAI,CAAC,CAAA;AAClB,IAAA,IAAI,EAAE,IAAI,CAACA,IAAI,CAACC,IAAI,IAAI,IAAI,CAACD,IAAI,CAACE,KAAK,CAAC,EAAE;MACxCC,MAAM,CAAC,yDAAyD,CAAC,CAAA;AACnE,KAAA;AACF,GAAA;;AAEA;AACF;AACA;AACA;AACA;AACA;EACE,IAAIC,KAAKA,GAAG;IACV,MAAM;AAAEA,MAAAA,KAAK,GAAGf,aAAAA;KAAe,GAAG,IAAI,CAACW,IAAI,CAAA;AAE3CG,IAAAA,MAAM,CACH,CAA+DR,6DAAAA,EAAAA,MAAM,CAACU,IAAI,CACzE,IACF,CAAE,CAAA,YAAA,EAAcD,KAAM,CAAA,CAAC,EACvBT,MAAM,CAACW,QAAQ,CAACF,KAAK,CACvB,CAAC,CAAA;AAED,IAAA,OAAOA,KAAK,CAAA;AACd,GAAA;;AAEA;AACF;AACA;AACA;AACA;AACA;EACE,IAAIG,YAAYA,GAAG;IACjB,MAAM;AAAEA,MAAAA,YAAY,GAAGrB,oBAAAA;KAAsB,GAAG,IAAI,CAACc,IAAI,CAAA;AAEzDG,IAAAA,MAAM,CACH,CAAsEX,oEAAAA,EAAAA,aAAa,CAACa,IAAI,CACvF,IACF,CAAE,CAAA,YAAA,EAAcE,YAAa,CAAA,CAAC,EAC9Bf,aAAa,CAACc,QAAQ,CAACC,YAAY,CACrC,CAAC,CAAA;AAED,IAAA,OAAOA,YAAY,CAAA;AACrB,GAAA;;AAEA;AACF;AACA;AACA;AACA;EACE,IAAIC,UAAUA,GAAG;AACf,IAAA,MAAMC,OAAO,GAAG,CAAC,iBAAiB,CAAC,CAAA;;AAEnC;IACAA,OAAO,CAACC,IAAI,CAAE,CAAA,uBAAA,EAAyB,IAAI,CAACN,KAAM,EAAC,CAAC,CAAA;;AAEpD;IACAK,OAAO,CAACC,IAAI,CAAE,CAAA,sBAAA,EAAwB,IAAI,CAACH,YAAa,EAAC,CAAC,CAAA;AAE1D,IAAA,OAAOE,OAAO,CAACJ,IAAI,CAAC,GAAG,CAAC,CAAA;AAC1B,GAAA;AACF,CAAA;AAACM,oBAAA,CAAAC,QAAA,EA9DoBhB,sBAAsB,CAAA;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"standalone.js","sources":["../../../../src/components/hds/link/standalone.hbs","../../../../src/components/hds/link/standalone.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"<Hds::Interactive\\n class={{this.classNames}}\\n @current-when={{@current-when}}\\n @models={{hds-link-to-models @model @models}}\\n @query={{hds-link-to-query @query}}\\n @replace={{@replace}}\\n @route={{@route}}\\n @isRouteExternal={{@isRouteExternal}}\\n @href={{@href}}\\n @isHrefExternal={{@isHrefExternal}}\\n ...attributes\\n>\\n {{#if (eq this.iconPosition \\\"leading\\\")}}\\n <span class=\\\"hds-link-standalone__icon\\\">\\n <FlightIcon @name={{this.icon}} @size={{this.iconSize}} @stretched={{true}} />\\n </span>\\n <span class=\\\"hds-link-standalone__text\\\">\\n {{this.text}}\\n </span>\\n {{else}}\\n <span class=\\\"hds-link-standalone__text\\\">\\n {{this.text}}\\n </span>\\n <span class=\\\"hds-link-standalone__icon\\\">\\n <FlightIcon @name={{this.icon}} @size={{this.iconSize}} @stretched={{true}} />\\n </span>\\n {{/if}}\\n</Hds::Interactive>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { assert } from '@ember/debug';\nimport {\n HdsLinkIconPositionValues,\n HdsLinkColorValues,\n HdsLinkStandaloneSizeValues,\n} from './types.ts';\nimport type { HdsLinkStandaloneSignature } from './types.ts';\n\nexport const DEFAULT_ICONPOSITION = HdsLinkIconPositionValues.Leading;\nexport const DEFAULT_COLOR = HdsLinkColorValues.Primary;\nexport const DEFAULT_SIZE = HdsLinkStandaloneSizeValues.Medium;\nexport const ICONPOSITIONS: string[] = Object.values(HdsLinkIconPositionValues);\nexport const COLORS: string[] = Object.values(HdsLinkColorValues);\nexport const SIZES: string[] = Object.values(HdsLinkStandaloneSizeValues);\n\nexport default class HdsLinkStandaloneComponent extends Component<HdsLinkStandaloneSignature> {\n constructor(owner: unknown, args: HdsLinkStandaloneSignature['Args']) {\n super(owner, args);\n if (!(this.args.href || this.args.route)) {\n assert('@href or @route must be defined for <Hds::Link::Standalone>');\n }\n }\n\n /**\n * @param text\n * @type {string}\n * @description The text of the link. If no text value is defined an error will be thrown.\n */\n get text() {\n const { text } = this.args;\n\n assert(\n '@text for \"Hds::Link::Standalone\" must have a valid value',\n text !== undefined\n );\n\n return text;\n }\n\n /**\n * @param color\n * @type {string}\n * @default primary\n * @description Determines the color of link to be used; acceptable values are `primary` and `secondary`\n */\n get color() {\n const { color = DEFAULT_COLOR } = this.args;\n\n assert(\n `@color for \"Hds::Link::Standalone\" must be one of the following: ${COLORS.join(\n ', '\n )}; received: ${color}`,\n COLORS.includes(color)\n );\n\n return color;\n }\n\n /**\n * @param icon\n * @type {string|null}\n * @default null\n * @description The name of the icon to be used. An icon name must be defined.\n */\n get icon() {\n const { icon } = this.args;\n\n assert(\n '@icon for \"Hds::Link::Standalone\" must have a valid value',\n icon !== undefined\n );\n\n return icon;\n }\n\n /**\n * @param iconPosition\n * @type {string}\n * @default leading\n * @description Positions the icon before or after the text; allowed values are `leading` or `trailing`\n */\n get iconPosition() {\n const { iconPosition = DEFAULT_ICONPOSITION } = this.args;\n\n assert(\n `@iconPosition for \"Hds::Link::Standalone\" must be one of the following: ${ICONPOSITIONS.join(\n ', '\n )}; received: ${iconPosition}`,\n ICONPOSITIONS.includes(iconPosition)\n );\n\n return iconPosition;\n }\n\n /**\n * @param size\n * @type {string}\n * @default medium\n * @description The size of the standalone link; acceptable values are `small`, `medium`, and `large`\n */\n get size() {\n const { size = DEFAULT_SIZE } = this.args;\n\n assert(\n `@size for \"Hds::Link::Standalone\" must be one of the following: ${SIZES.join(\n ', '\n )}; received: ${size}`,\n SIZES.includes(size)\n );\n\n return size;\n }\n\n /**\n * @param iconSize\n * @type {string}\n * @default 16\n * @description ensures that the correct icon size is used. Automatically calculated.\n */\n get iconSize() {\n if (this.args.size === 'large') {\n return '24';\n } else {\n return '16';\n }\n }\n\n /**\n * Get the class names to apply to the component.\n * @method LinkStandalone#classNames\n * @return {string} The \"class\" attribute to apply to the component.\n */\n get classNames() {\n const classes = ['hds-link-standalone'];\n\n // add a class based on the @size argument\n classes.push(`hds-link-standalone--size-${this.size}`);\n\n // add a class based on the @color argument\n classes.push(`hds-link-standalone--color-${this.color}`);\n\n // add a class based on the @iconPosition argument\n classes.push(`hds-link-standalone--icon-position-${this.iconPosition}`);\n\n return classes.join(' ');\n }\n}\n"],"names":["DEFAULT_ICONPOSITION","HdsLinkIconPositionValues","Leading","DEFAULT_COLOR","HdsLinkColorValues","Primary","DEFAULT_SIZE","HdsLinkStandaloneSizeValues","Medium","ICONPOSITIONS","Object","values","COLORS","SIZES","HdsLinkStandaloneComponent","Component","constructor","owner","args","href","route","assert","text","undefined","color","join","includes","icon","iconPosition","size","iconSize","classNames","classes","push","setComponentTemplate","TEMPLATE"],"mappings":"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"}
1
+ {"version":3,"file":"standalone.js","sources":["../../../../src/components/hds/link/standalone.hbs","../../../../src/components/hds/link/standalone.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"<Hds::Interactive\\n class={{this.classNames}}\\n @current-when={{@current-when}}\\n @models={{hds-link-to-models @model @models}}\\n @query={{hds-link-to-query @query}}\\n @replace={{@replace}}\\n @route={{@route}}\\n @isRouteExternal={{@isRouteExternal}}\\n @href={{@href}}\\n @isHrefExternal={{@isHrefExternal}}\\n ...attributes\\n>\\n {{#if (eq this.iconPosition \\\"leading\\\")}}\\n <span class=\\\"hds-link-standalone__icon\\\">\\n <FlightIcon @name={{this.icon}} @size={{this.iconSize}} @stretched={{true}} />\\n </span>\\n <span class=\\\"hds-link-standalone__text\\\">\\n {{this.text}}\\n </span>\\n {{else}}\\n <span class=\\\"hds-link-standalone__text\\\">\\n {{this.text}}\\n </span>\\n <span class=\\\"hds-link-standalone__icon\\\">\\n <FlightIcon @name={{this.icon}} @size={{this.iconSize}} @stretched={{true}} />\\n </span>\\n {{/if}}\\n</Hds::Interactive>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { assert } from '@ember/debug';\nimport {\n HdsLinkIconPositionValues,\n HdsLinkColorValues,\n HdsLinkStandaloneSizeValues,\n} from './types.ts';\n\nimport type { HdsInteractiveSignature } from '../interactive/';\nimport type {\n HdsLinkColors,\n HdsLinkIconPositions,\n HdsLinkStandaloneSizes,\n} from './types.ts';\n\nexport interface HdsLinkStandaloneSignature {\n Args: HdsInteractiveSignature['Args'] & {\n size?: HdsLinkStandaloneSizes;\n color?: HdsLinkColors;\n text: string;\n icon: string;\n iconPosition?: HdsLinkIconPositions;\n };\n Element: HdsInteractiveSignature['Element'];\n}\n\nexport const DEFAULT_ICONPOSITION = HdsLinkIconPositionValues.Leading;\nexport const DEFAULT_COLOR = HdsLinkColorValues.Primary;\nexport const DEFAULT_SIZE = HdsLinkStandaloneSizeValues.Medium;\nexport const ICONPOSITIONS: string[] = Object.values(HdsLinkIconPositionValues);\nexport const COLORS: string[] = Object.values(HdsLinkColorValues);\nexport const SIZES: string[] = Object.values(HdsLinkStandaloneSizeValues);\n\nexport default class HdsLinkStandaloneComponent extends Component<HdsLinkStandaloneSignature> {\n constructor(owner: unknown, args: HdsLinkStandaloneSignature['Args']) {\n super(owner, args);\n if (!(this.args.href || this.args.route)) {\n assert('@href or @route must be defined for <Hds::Link::Standalone>');\n }\n }\n\n /**\n * @param text\n * @type {string}\n * @description The text of the link. If no text value is defined an error will be thrown.\n */\n get text() {\n const { text } = this.args;\n\n assert(\n '@text for \"Hds::Link::Standalone\" must have a valid value',\n text !== undefined\n );\n\n return text;\n }\n\n /**\n * @param color\n * @type {string}\n * @default primary\n * @description Determines the color of link to be used; acceptable values are `primary` and `secondary`\n */\n get color() {\n const { color = DEFAULT_COLOR } = this.args;\n\n assert(\n `@color for \"Hds::Link::Standalone\" must be one of the following: ${COLORS.join(\n ', '\n )}; received: ${color}`,\n COLORS.includes(color)\n );\n\n return color;\n }\n\n /**\n * @param icon\n * @type {string|null}\n * @default null\n * @description The name of the icon to be used. An icon name must be defined.\n */\n get icon() {\n const { icon } = this.args;\n\n assert(\n '@icon for \"Hds::Link::Standalone\" must have a valid value',\n icon !== undefined\n );\n\n return icon;\n }\n\n /**\n * @param iconPosition\n * @type {string}\n * @default leading\n * @description Positions the icon before or after the text; allowed values are `leading` or `trailing`\n */\n get iconPosition() {\n const { iconPosition = DEFAULT_ICONPOSITION } = this.args;\n\n assert(\n `@iconPosition for \"Hds::Link::Standalone\" must be one of the following: ${ICONPOSITIONS.join(\n ', '\n )}; received: ${iconPosition}`,\n ICONPOSITIONS.includes(iconPosition)\n );\n\n return iconPosition;\n }\n\n /**\n * @param size\n * @type {string}\n * @default medium\n * @description The size of the standalone link; acceptable values are `small`, `medium`, and `large`\n */\n get size() {\n const { size = DEFAULT_SIZE } = this.args;\n\n assert(\n `@size for \"Hds::Link::Standalone\" must be one of the following: ${SIZES.join(\n ', '\n )}; received: ${size}`,\n SIZES.includes(size)\n );\n\n return size;\n }\n\n /**\n * @param iconSize\n * @type {string}\n * @default 16\n * @description ensures that the correct icon size is used. Automatically calculated.\n */\n get iconSize() {\n if (this.args.size === 'large') {\n return '24';\n } else {\n return '16';\n }\n }\n\n /**\n * Get the class names to apply to the component.\n * @method LinkStandalone#classNames\n * @return {string} The \"class\" attribute to apply to the component.\n */\n get classNames() {\n const classes = ['hds-link-standalone'];\n\n // add a class based on the @size argument\n classes.push(`hds-link-standalone--size-${this.size}`);\n\n // add a class based on the @color argument\n classes.push(`hds-link-standalone--color-${this.color}`);\n\n // add a class based on the @iconPosition argument\n classes.push(`hds-link-standalone--icon-position-${this.iconPosition}`);\n\n return classes.join(' ');\n }\n}\n"],"names":["DEFAULT_ICONPOSITION","HdsLinkIconPositionValues","Leading","DEFAULT_COLOR","HdsLinkColorValues","Primary","DEFAULT_SIZE","HdsLinkStandaloneSizeValues","Medium","ICONPOSITIONS","Object","values","COLORS","SIZES","HdsLinkStandaloneComponent","Component","constructor","owner","args","href","route","assert","text","undefined","color","join","includes","icon","iconPosition","size","iconSize","classNames","classes","push","setComponentTemplate","TEMPLATE"],"mappings":"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"}
@@ -1,3 +1,8 @@
1
+ /**
2
+ * Copyright (c) HashiCorp, Inc.
3
+ * SPDX-License-Identifier: MPL-2.0
4
+ */
5
+
1
6
  let HdsLinkIconPositionValues = /*#__PURE__*/function (HdsLinkIconPositionValues) {
2
7
  HdsLinkIconPositionValues["Leading"] = "leading";
3
8
  HdsLinkIconPositionValues["Trailing"] = "trailing";
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sources":["../../../../src/components/hds/link/types.ts"],"sourcesContent":["import type { HdsInteractiveSignature } from '../interactive/types.ts';\n\nexport enum HdsLinkIconPositionValues {\n Leading = 'leading',\n Trailing = 'trailing',\n}\n\nexport type HdsLinkIconPositions = `${HdsLinkIconPositionValues}`;\n\nexport enum HdsLinkColorValues {\n Primary = 'primary',\n Secondary = 'secondary',\n}\n\nexport type HdsLinkColors = `${HdsLinkColorValues}`;\n\nexport enum HdsLinkStandaloneSizeValues {\n Small = 'small',\n Medium = 'medium',\n Large = 'large',\n}\n\nexport type HdsLinkStandaloneSizes = `${HdsLinkStandaloneSizeValues}`;\n\nexport interface HdsLinkStandaloneSignature {\n Args: HdsInteractiveSignature['Args'] & {\n icon: string;\n text: string;\n color?: HdsLinkColors;\n href?: string;\n iconPosition?: HdsLinkIconPositions;\n isHrefExternal?: boolean;\n isRouteExternal?: boolean;\n size?: HdsLinkStandaloneSizes;\n };\n Element: HdsInteractiveSignature['Element'];\n}\n\nexport interface HdsLinkInlineSignature {\n Args: HdsInteractiveSignature['Args'] & {\n color?: HdsLinkColors;\n href?: string;\n icon?: string;\n iconPosition?: HdsLinkIconPositions;\n isHrefExternal?: boolean;\n isRouteExternal?: boolean;\n };\n Blocks: {\n default: [];\n };\n Element: HdsInteractiveSignature['Element'];\n}\n"],"names":["HdsLinkIconPositionValues","HdsLinkColorValues","HdsLinkStandaloneSizeValues"],"mappings":"AAEYA,IAAAA,yBAAyB,0BAAzBA,yBAAyB,EAAA;EAAzBA,yBAAyB,CAAA,SAAA,CAAA,GAAA,SAAA,CAAA;EAAzBA,yBAAyB,CAAA,UAAA,CAAA,GAAA,UAAA,CAAA;AAAA,EAAA,OAAzBA,yBAAyB,CAAA;AAAA,CAAA,CAAA,EAAA,EAAA;AAOzBC,IAAAA,kBAAkB,0BAAlBA,kBAAkB,EAAA;EAAlBA,kBAAkB,CAAA,SAAA,CAAA,GAAA,SAAA,CAAA;EAAlBA,kBAAkB,CAAA,WAAA,CAAA,GAAA,WAAA,CAAA;AAAA,EAAA,OAAlBA,kBAAkB,CAAA;AAAA,CAAA,CAAA,EAAA,EAAA;AAOlBC,IAAAA,2BAA2B,0BAA3BA,2BAA2B,EAAA;EAA3BA,2BAA2B,CAAA,OAAA,CAAA,GAAA,OAAA,CAAA;EAA3BA,2BAA2B,CAAA,QAAA,CAAA,GAAA,QAAA,CAAA;EAA3BA,2BAA2B,CAAA,OAAA,CAAA,GAAA,OAAA,CAAA;AAAA,EAAA,OAA3BA,2BAA2B,CAAA;AAAA,CAAA,CAAA,EAAA;;;;"}
1
+ {"version":3,"file":"types.js","sources":["../../../../src/components/hds/link/types.ts"],"sourcesContent":["/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nexport enum HdsLinkIconPositionValues {\n Leading = 'leading',\n Trailing = 'trailing',\n}\n\nexport type HdsLinkIconPositions = `${HdsLinkIconPositionValues}`;\n\nexport enum HdsLinkColorValues {\n Primary = 'primary',\n Secondary = 'secondary',\n}\n\nexport type HdsLinkColors = `${HdsLinkColorValues}`;\n\nexport enum HdsLinkStandaloneSizeValues {\n Small = 'small',\n Medium = 'medium',\n Large = 'large',\n}\n\nexport type HdsLinkStandaloneSizes = `${HdsLinkStandaloneSizeValues}`;\n"],"names":["HdsLinkIconPositionValues","HdsLinkColorValues","HdsLinkStandaloneSizeValues"],"mappings":"AAAA;AACA;AACA;AACA;;AAEYA,IAAAA,yBAAyB,0BAAzBA,yBAAyB,EAAA;EAAzBA,yBAAyB,CAAA,SAAA,CAAA,GAAA,SAAA,CAAA;EAAzBA,yBAAyB,CAAA,UAAA,CAAA,GAAA,UAAA,CAAA;AAAA,EAAA,OAAzBA,yBAAyB,CAAA;AAAA,CAAA,CAAA,EAAA,EAAA;AAOzBC,IAAAA,kBAAkB,0BAAlBA,kBAAkB,EAAA;EAAlBA,kBAAkB,CAAA,SAAA,CAAA,GAAA,SAAA,CAAA;EAAlBA,kBAAkB,CAAA,WAAA,CAAA,GAAA,WAAA,CAAA;AAAA,EAAA,OAAlBA,kBAAkB,CAAA;AAAA,CAAA,CAAA,EAAA,EAAA;AAOlBC,IAAAA,2BAA2B,0BAA3BA,2BAA2B,EAAA;EAA3BA,2BAA2B,CAAA,OAAA,CAAA,GAAA,OAAA,CAAA;EAA3BA,2BAA2B,CAAA,QAAA,CAAA,GAAA,QAAA,CAAA;EAA3BA,2BAA2B,CAAA,OAAA,CAAA,GAAA,OAAA,CAAA;AAAA,EAAA,OAA3BA,2BAA2B,CAAA;AAAA,CAAA,CAAA,EAAA;;;;"}
@@ -1,4 +1,4 @@
1
- import { a as _applyDecoratedDescriptor, b as _initializerDefineProperty } from '../../../_rollupPluginBabelHelpers-lqPQKyNs.js';
1
+ import { _ as _applyDecoratedDescriptor, b as _initializerDefineProperty } 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/menu-primitive/index.hbs","../../../../src/components/hds/menu-primitive/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{{! template-lint-disable no-invalid-interactive }}\\n<div\\n class=\\\"hds-menu-primitive\\\"\\n ...attributes\\n {{did-insert this.didInsert}}\\n {{on \\\"focusout\\\" this.onFocusOut}}\\n {{on \\\"keyup\\\" this.onKeyUp}}\\n>\\n <div class=\\\"hds-menu-primitive__toggle\\\" tabindex=\\\"-1\\\">\\n {{yield (hash onClickToggle=this.onClickToggle isOpen=this.isOpen) to=\\\"toggle\\\"}}\\n </div>\\n {{#if this.isOpen}}\\n <div class=\\\"hds-menu-primitive__content\\\" tabindex=\\\"-1\\\">\\n {{yield (hash close=this.close) to=\\\"content\\\"}}\\n </div>\\n {{/if}}\\n</div>\\n{{! template-lint-enable no-invalid-interactive }}\")","/**\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 { schedule } from '@ember/runloop';\n\nexport default class HdsMenuPrimitiveComponent extends Component {\n @tracked isOpen; // notice: if in the future we need to add a \"@isOpen\" prop to control the status from outside (eg to have the MenuPrimitive opened on render) just add \"this.args.isOpen\" here to initalize the variable\n @tracked toggleRef;\n\n @action\n didInsert(element) {\n this.element = element;\n }\n\n @action\n onClickToggle(event) {\n // we store a reference to the DOM node that has the \"onClickToggle\" event associated with it\n if (!this.toggleRef) {\n this.toggleRef = event.currentTarget;\n }\n this.isOpen = !this.isOpen;\n // we explicitly apply a focus state to the toggle element to overcome a bug in WebKit (see https://github.com/hashicorp/design-system/commit/40cd7f6b3cb15c45f9a1235fafd0fb3ed58e6e62)\n this.toggleRef.focus();\n }\n\n @action\n onFocusOut(event) {\n // due to inconsistent implementation of relatedTarget across browsers we use the activeElement as a fallback\n // if the related target is not part of the disclosed content we close the disclosed container\n if (!this.element.contains(event.relatedTarget || document.activeElement)) {\n this.close();\n }\n }\n\n @action\n onKeyUp(event) {\n if (event.key === 'Escape') {\n this.close();\n this.toggleRef.focus();\n }\n }\n\n @action\n close() {\n // we schedule this afterRender to avoid an error in tests caused by updating `isOpen` multiple times in the same computation\n schedule('afterRender', () => {\n this.isOpen = false;\n // we call the \"onClose\" callback if it exists (and is a function)\n if (this.args.onClose && typeof this.args.onClose === 'function') {\n this.args.onClose();\n }\n });\n }\n}\n"],"names":["HdsMenuPrimitiveComponent","_class","Component","constructor","args","_initializerDefineProperty","_descriptor","_descriptor2","didInsert","element","onClickToggle","event","toggleRef","currentTarget","isOpen","focus","onFocusOut","contains","relatedTarget","document","activeElement","close","onKeyUp","key","schedule","onClose","_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/menu-primitive/index.hbs","../../../../src/components/hds/menu-primitive/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{{! template-lint-disable no-invalid-interactive }}\\n<div\\n class=\\\"hds-menu-primitive\\\"\\n ...attributes\\n {{did-insert this.didInsert}}\\n {{on \\\"focusout\\\" this.onFocusOut}}\\n {{on \\\"keyup\\\" this.onKeyUp}}\\n>\\n <div class=\\\"hds-menu-primitive__toggle\\\" tabindex=\\\"-1\\\">\\n {{yield (hash onClickToggle=this.onClickToggle isOpen=this.isOpen) to=\\\"toggle\\\"}}\\n </div>\\n {{#if this.isOpen}}\\n <div class=\\\"hds-menu-primitive__content\\\" tabindex=\\\"-1\\\">\\n {{yield (hash close=this.close) to=\\\"content\\\"}}\\n </div>\\n {{/if}}\\n</div>\\n{{! template-lint-enable no-invalid-interactive }}\")","/**\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 { schedule } from '@ember/runloop';\n\nexport default class HdsMenuPrimitiveComponent extends Component {\n @tracked isOpen; // notice: if in the future we need to add a \"@isOpen\" prop to control the status from outside (eg to have the MenuPrimitive opened on render) just add \"this.args.isOpen\" here to initalize the variable\n @tracked toggleRef;\n\n @action\n didInsert(element) {\n this.element = element;\n }\n\n @action\n onClickToggle(event) {\n // we store a reference to the DOM node that has the \"onClickToggle\" event associated with it\n if (!this.toggleRef) {\n this.toggleRef = event.currentTarget;\n }\n this.isOpen = !this.isOpen;\n // we explicitly apply a focus state to the toggle element to overcome a bug in WebKit (see https://github.com/hashicorp/design-system/commit/40cd7f6b3cb15c45f9a1235fafd0fb3ed58e6e62)\n this.toggleRef.focus();\n }\n\n @action\n onFocusOut(event) {\n // due to inconsistent implementation of relatedTarget across browsers we use the activeElement as a fallback\n // if the related target is not part of the disclosed content we close the disclosed container\n if (!this.element.contains(event.relatedTarget || document.activeElement)) {\n this.close();\n }\n }\n\n @action\n onKeyUp(event) {\n if (event.key === 'Escape') {\n this.close();\n this.toggleRef.focus();\n }\n }\n\n @action\n close() {\n // we schedule this afterRender to avoid an error in tests caused by updating `isOpen` multiple times in the same computation\n schedule('afterRender', () => {\n this.isOpen = false;\n // we call the \"onClose\" callback if it exists (and is a function)\n if (this.args.onClose && typeof this.args.onClose === 'function') {\n this.args.onClose();\n }\n });\n }\n}\n"],"names":["HdsMenuPrimitiveComponent","_class","Component","constructor","args","_initializerDefineProperty","_descriptor","_descriptor2","didInsert","element","onClickToggle","event","toggleRef","currentTarget","isOpen","focus","onFocusOut","contains","relatedTarget","document","activeElement","close","onKeyUp","key","schedule","onClose","_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 } from '../../../_rollupPluginBabelHelpers-lqPQKyNs.js';
1
+ import { _ as _applyDecoratedDescriptor, b as _initializerDefineProperty } 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/modal/index.hbs","../../../../src/components/hds/modal/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<dialog\\n class={{this.classNames}}\\n ...attributes\\n aria-labelledby={{this.id}}\\n {{did-insert this.didInsert}}\\n {{will-destroy this.willDestroyNode}}\\n {{focus-trap isActive=this.isOpen focusTrapOptions=(hash onDeactivate=this.onDismiss clickOutsideDeactivates=true)}}\\n>\\n {{yield (hash Header=(component \\\"hds/modal/header\\\" id=this.id onDismiss=this.onDismiss))}}\\n {{yield (hash Body=(component \\\"hds/modal/body\\\"))}}\\n {{yield (hash Footer=(component \\\"hds/modal/footer\\\" onDismiss=this.onDismiss))}}\\n</dialog>\\n{{#if this.isOpen}}\\n <div class=\\\"hds-modal__overlay\\\"></div>\\n{{/if}}\")","/**\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 { getElementId } from '../../../utils/hds-get-element-id';\nimport { buildWaiter } from '@ember/test-waiters';\n\nlet waiter = buildWaiter('@hashicorp/design-system-components:modal');\n\nexport const DEFAULT_SIZE = 'medium';\nexport const DEFAULT_COLOR = 'neutral';\nexport const SIZES = ['small', 'medium', 'large'];\nexport const COLORS = ['neutral', 'warning', 'critical'];\n\nexport default class HdsModalIndexComponent extends Component {\n @tracked isOpen = false;\n @tracked isDismissDisabled = this.args.isDismissDisabled ?? false;\n\n /**\n * Sets the size of the modal dialog\n * Accepted values: small, medium, large\n *\n * @param size\n * @type {string}\n * @default 'medium'\n */\n get size() {\n let { size = DEFAULT_SIZE } = this.args;\n\n assert(\n `@size for \"Hds::Modal\" must be one of the following: ${SIZES.join(\n ', '\n )}; received: ${size}`,\n SIZES.includes(size)\n );\n\n return size;\n }\n\n /**\n * Sets the color of the modal dialog\n * Accepted values: neutral, warning, critical\n *\n * @param color\n * @type {string}\n * @default 'neutral'\n */\n get color() {\n let { color = DEFAULT_COLOR } = this.args;\n\n assert(\n `@color for \"Hds::Modal\" must be one of the following: ${COLORS.join(\n ', '\n )}; received: ${color}`,\n COLORS.includes(color)\n );\n\n return color;\n }\n\n /**\n * Calculates the unique ID to assign to the title\n */\n get id() {\n return getElementId(this);\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-modal'];\n\n // add a class based on the @size argument\n classes.push(`hds-modal--size-${this.size}`);\n\n // add a class based on the @color argument\n classes.push(`hds-modal--color-${this.color}`);\n\n return classes.join(' ');\n }\n\n @action registerOnCloseCallback() {\n if (\n !this.isDismissDisabled &&\n this.args.onClose &&\n typeof this.args.onClose === 'function'\n ) {\n this.args.onClose();\n }\n\n // If the dismissal of the modal is disabled, we keep the modal open/visible otherwise we mark it as closed\n if (this.isDismissDisabled) {\n // If, in a chain of events, the element is not attached to the DOM, the `showModal` would fail\n // so we add this safeguard condition that checks for the `<dialog>` to have a parent\n if (this.element.parentElement) {\n // As there is no way to `preventDefault` on `close` events, we call the `showModal` function\n // preserving the state of the modal dialog\n this.element.showModal();\n }\n } else {\n this.isOpen = false;\n }\n }\n\n @action\n didInsert(element) {\n // Store references of `<dialog>` and `<body>` elements\n this.element = element;\n this.body = document.body;\n\n if (this.body) {\n // Store the initial `overflow` value of `<body>` so we can reset to it\n this.bodyInitialOverflowValue =\n this.body.style.getPropertyValue('overflow');\n }\n\n // Register \"onClose\" callback function to be called when a native 'close' event is dispatched\n this.element.addEventListener('close', this.registerOnCloseCallback, true);\n\n // If the modal dialog is not already open\n if (!this.element.open) {\n this.open();\n }\n }\n\n @action\n willDestroyNode() {\n if (this.element) {\n this.element.removeEventListener(\n 'close',\n this.registerOnCloseCallback,\n true\n );\n }\n }\n\n @action\n open() {\n // Make modal dialog visible using the native `showModal` method\n this.element.showModal();\n this.isOpen = true;\n\n // Prevent page from scrolling when the dialog is open\n if (this.body) this.body.style.setProperty('overflow', 'hidden');\n\n // Call \"onOpen\" callback function\n if (this.args.onOpen && typeof this.args.onOpen === 'function') {\n this.args.onOpen();\n }\n }\n\n @action\n async onDismiss() {\n // allow ember test helpers to be aware of when the `close` event fires\n // when using `click` or other helpers from '@ember/test-helpers'\n // Notice: this code will get stripped out in production builds (DEBUG evaluates to `true` in dev/test builds, but `false` in prod builds)\n if (this.element.open) {\n let token = waiter.beginAsync();\n let listener = () => {\n waiter.endAsync(token);\n this.element.removeEventListener('close', listener);\n };\n this.element.addEventListener('close', listener);\n }\n\n // Make modal dialog invisible using the native `close` method\n this.element.close();\n\n // Reset page `overflow` property\n if (this.body) {\n this.body.style.removeProperty('overflow');\n if (this.bodyInitialOverflowValue === '') {\n if (this.body.style.length === 0) {\n this.body.removeAttribute('style');\n }\n } else {\n this.body.style.setProperty('overflow', this.bodyInitialOverflowValue);\n }\n }\n }\n}\n"],"names":["waiter","buildWaiter","DEFAULT_SIZE","DEFAULT_COLOR","SIZES","COLORS","HdsModalIndexComponent","_class","Component","constructor","args","_initializerDefineProperty","_descriptor","_descriptor2","size","assert","join","includes","color","id","getElementId","classNames","classes","push","registerOnCloseCallback","isDismissDisabled","onClose","element","parentElement","showModal","isOpen","didInsert","body","document","bodyInitialOverflowValue","style","getPropertyValue","addEventListener","open","willDestroyNode","removeEventListener","setProperty","onOpen","onDismiss","token","beginAsync","listener","endAsync","close","removeProperty","length","removeAttribute","_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/modal/index.hbs","../../../../src/components/hds/modal/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<dialog\\n class={{this.classNames}}\\n ...attributes\\n aria-labelledby={{this.id}}\\n {{did-insert this.didInsert}}\\n {{will-destroy this.willDestroyNode}}\\n {{focus-trap isActive=this.isOpen focusTrapOptions=(hash onDeactivate=this.onDismiss clickOutsideDeactivates=true)}}\\n>\\n {{yield (hash Header=(component \\\"hds/modal/header\\\" id=this.id onDismiss=this.onDismiss))}}\\n {{yield (hash Body=(component \\\"hds/modal/body\\\"))}}\\n {{yield (hash Footer=(component \\\"hds/modal/footer\\\" onDismiss=this.onDismiss))}}\\n</dialog>\\n{{#if this.isOpen}}\\n <div class=\\\"hds-modal__overlay\\\"></div>\\n{{/if}}\")","/**\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 { getElementId } from '../../../utils/hds-get-element-id';\nimport { buildWaiter } from '@ember/test-waiters';\n\nlet waiter = buildWaiter('@hashicorp/design-system-components:modal');\n\nexport const DEFAULT_SIZE = 'medium';\nexport const DEFAULT_COLOR = 'neutral';\nexport const SIZES = ['small', 'medium', 'large'];\nexport const COLORS = ['neutral', 'warning', 'critical'];\n\nexport default class HdsModalIndexComponent extends Component {\n @tracked isOpen = false;\n @tracked isDismissDisabled = this.args.isDismissDisabled ?? false;\n\n /**\n * Sets the size of the modal dialog\n * Accepted values: small, medium, large\n *\n * @param size\n * @type {string}\n * @default 'medium'\n */\n get size() {\n let { size = DEFAULT_SIZE } = this.args;\n\n assert(\n `@size for \"Hds::Modal\" must be one of the following: ${SIZES.join(\n ', '\n )}; received: ${size}`,\n SIZES.includes(size)\n );\n\n return size;\n }\n\n /**\n * Sets the color of the modal dialog\n * Accepted values: neutral, warning, critical\n *\n * @param color\n * @type {string}\n * @default 'neutral'\n */\n get color() {\n let { color = DEFAULT_COLOR } = this.args;\n\n assert(\n `@color for \"Hds::Modal\" must be one of the following: ${COLORS.join(\n ', '\n )}; received: ${color}`,\n COLORS.includes(color)\n );\n\n return color;\n }\n\n /**\n * Calculates the unique ID to assign to the title\n */\n get id() {\n return getElementId(this);\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-modal'];\n\n // add a class based on the @size argument\n classes.push(`hds-modal--size-${this.size}`);\n\n // add a class based on the @color argument\n classes.push(`hds-modal--color-${this.color}`);\n\n return classes.join(' ');\n }\n\n @action registerOnCloseCallback() {\n if (\n !this.isDismissDisabled &&\n this.args.onClose &&\n typeof this.args.onClose === 'function'\n ) {\n this.args.onClose();\n }\n\n // If the dismissal of the modal is disabled, we keep the modal open/visible otherwise we mark it as closed\n if (this.isDismissDisabled) {\n // If, in a chain of events, the element is not attached to the DOM, the `showModal` would fail\n // so we add this safeguard condition that checks for the `<dialog>` to have a parent\n if (this.element.parentElement) {\n // As there is no way to `preventDefault` on `close` events, we call the `showModal` function\n // preserving the state of the modal dialog\n this.element.showModal();\n }\n } else {\n this.isOpen = false;\n }\n }\n\n @action\n didInsert(element) {\n // Store references of `<dialog>` and `<body>` elements\n this.element = element;\n this.body = document.body;\n\n if (this.body) {\n // Store the initial `overflow` value of `<body>` so we can reset to it\n this.bodyInitialOverflowValue =\n this.body.style.getPropertyValue('overflow');\n }\n\n // Register \"onClose\" callback function to be called when a native 'close' event is dispatched\n this.element.addEventListener('close', this.registerOnCloseCallback, true);\n\n // If the modal dialog is not already open\n if (!this.element.open) {\n this.open();\n }\n }\n\n @action\n willDestroyNode() {\n if (this.element) {\n this.element.removeEventListener(\n 'close',\n this.registerOnCloseCallback,\n true\n );\n }\n }\n\n @action\n open() {\n // Make modal dialog visible using the native `showModal` method\n this.element.showModal();\n this.isOpen = true;\n\n // Prevent page from scrolling when the dialog is open\n if (this.body) this.body.style.setProperty('overflow', 'hidden');\n\n // Call \"onOpen\" callback function\n if (this.args.onOpen && typeof this.args.onOpen === 'function') {\n this.args.onOpen();\n }\n }\n\n @action\n async onDismiss() {\n // allow ember test helpers to be aware of when the `close` event fires\n // when using `click` or other helpers from '@ember/test-helpers'\n // Notice: this code will get stripped out in production builds (DEBUG evaluates to `true` in dev/test builds, but `false` in prod builds)\n if (this.element.open) {\n let token = waiter.beginAsync();\n let listener = () => {\n waiter.endAsync(token);\n this.element.removeEventListener('close', listener);\n };\n this.element.addEventListener('close', listener);\n }\n\n // Make modal dialog invisible using the native `close` method\n this.element.close();\n\n // Reset page `overflow` property\n if (this.body) {\n this.body.style.removeProperty('overflow');\n if (this.bodyInitialOverflowValue === '') {\n if (this.body.style.length === 0) {\n this.body.removeAttribute('style');\n }\n } else {\n this.body.style.setProperty('overflow', this.bodyInitialOverflowValue);\n }\n }\n }\n}\n"],"names":["waiter","buildWaiter","DEFAULT_SIZE","DEFAULT_COLOR","SIZES","COLORS","HdsModalIndexComponent","_class","Component","constructor","args","_initializerDefineProperty","_descriptor","_descriptor2","size","assert","join","includes","color","id","getElementId","classNames","classes","push","registerOnCloseCallback","isDismissDisabled","onClose","element","parentElement","showModal","isOpen","didInsert","body","document","bodyInitialOverflowValue","style","getPropertyValue","addEventListener","open","willDestroyNode","removeEventListener","setProperty","onOpen","onDismiss","token","beginAsync","listener","endAsync","close","removeProperty","length","removeAttribute","_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 { tracked } from '@glimmer/tracking';
4
4
  import { action } from '@ember/object';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../src/components/hds/pagination/compact/index.hbs","../../../../../src/components/hds/pagination/compact/index.js"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{! @glint-nocheck: not typesafe yet }}\\n{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n<div class=\\\"hds-pagination\\\" ...attributes>\\n <nav class=\\\"hds-pagination-nav\\\" aria-label={{this.ariaLabel}}>\\n <Hds::Pagination::Nav::Arrow\\n @direction=\\\"prev\\\"\\n @showLabel={{this.showLabels}}\\n @route={{this.routing.route}}\\n @query={{this.routing.queryPrev}}\\n @model={{this.routing.model}}\\n @models={{this.routing.models}}\\n @replace={{this.routing.replace}}\\n @onClick={{this.onPageChange}}\\n @disabled={{@isDisabledPrev}}\\n />\\n <Hds::Pagination::Nav::Arrow\\n @direction=\\\"next\\\"\\n @showLabel={{this.showLabels}}\\n @route={{this.routing.route}}\\n @query={{this.routing.queryNext}}\\n @model={{this.routing.model}}\\n @models={{this.routing.models}}\\n @replace={{this.routing.replace}}\\n @onClick={{this.onPageChange}}\\n @disabled={{@isDisabledNext}}\\n />\\n </nav>\\n\\n {{#if this.showSizeSelector}}\\n <Hds::Pagination::SizeSelector\\n @pageSizes={{this.pageSizes}}\\n @label={{@sizeSelectorLabel}}\\n @selectedSize={{this.currentPageSize}}\\n @onChange={{this.onPageSizeChange}}\\n />\\n {{/if}}\\n</div>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { action } from '@ember/object';\nimport { assert } from '@ember/debug';\n\n// for context about the decision to use these values, see:\n// https://hashicorp.slack.com/archives/C03A0N1QK8S/p1673546329082759\nexport const DEFAULT_PAGE_SIZES = [10, 30, 50];\n\nexport default class HdsPaginationCompactIndexComponent extends Component {\n // This private variable is used to differentiate between\n // \"uncontrolled\" component (where the state is handled internally) and\n // \"controlled\" component (where the state is handled externally, by the consumer's code).\n // In the first case, the variable stores the internal state of the component at any moment,\n // and its value is updated internally according to the user's interaction with the component.\n // In the second case, the variable stores *only* the initial state of the component (coming from the arguments)\n // at rendering time, but from that moment on it's not updated anymore, no matter what interaction the user\n // has with the component (the state is controlled externally, eg. via query parameters)\n @tracked _currentPageSize = this.args.currentPageSize ?? this.pageSizes[0];\n @tracked isControlled;\n\n showLabels = this.args.showLabels ?? true; // if the labels for the \"prev/next\" controls are visible\n showSizeSelector = this.args.showSizeSelector ?? false; // if the \"size selector\" block is visible\n\n constructor() {\n super(...arguments);\n\n let { queryFunction } = this.args;\n\n // This component works in two different ways, depending if we need to support\n // routing through links (`LinkTo`) for the \"navigation controls\", or not.\n // If there's no routing then the component behaves as \"uncontrolled\"\n // (the state updates are handled by its internal logic).\n // If instead the component needs to update the routing (and we infer this via the \"query\" arguments)\n // then the component behaves as \"controlled\", where the state is\n // initialized and updated using the arguments passed to it.\n\n if (queryFunction === undefined) {\n this.isControlled = false;\n } else {\n assert(\n '@queryFunction for \"Hds::Pagination::Numbered\" must be a function',\n typeof queryFunction === 'function'\n );\n this.isControlled = true;\n }\n }\n\n /**\n * @param ariaLabel\n * @type {string}\n * @default 'Pagination'\n */\n get ariaLabel() {\n return this.args.ariaLabel ?? 'Pagination';\n }\n\n // This very specific `get/set` pattern is used to handle the two different use cases of the component\n // being \"controlled\" (when it has routing, meaning it needs to support pagination controls as links/`LinkTo`)\n // vs being \"uncontrolled\" (see comments above for details).\n //\n // If it has routing (and so it's \"controlled\"), than the value (\"state\") of the `currentPageSize` variable\n // is *always* determined by the controller via arguments (most of the times, connected to query parameters in the URL).\n // For this reason the \"get\" method always returns the value from the `args`,\n // while the \"set\" method never updates the private internal state (_variable).\n //\n // If instead it doesn't have routing (and so it's \"uncontrolled\") than the value (\"state\") of the `currentPageSize` variables\n // is *always* determined by the component's internal logic (and updated according to the user interaction with it).\n // For this reason the \"get\" and \"set\" methods always read from or write to the private internal state (_variable).\n\n get currentPageSize() {\n if (this.isControlled) {\n return this.args.currentPageSize;\n } else {\n return this._currentPageSize;\n }\n }\n\n set currentPageSize(value) {\n if (this.isControlled) {\n // noop\n } else {\n this._currentPageSize = value;\n }\n }\n\n /**\n * @param pageSizes\n * @type {array of numbers}\n * @description Set the page sizes users can select from.\n * @default [10, 30, 50]\n */\n get pageSizes() {\n let { pageSizes = DEFAULT_PAGE_SIZES } = this.args;\n\n assert(\n `pageSizes argument must be an array. Received: ${pageSizes}`,\n Array.isArray(pageSizes) === true\n );\n\n return pageSizes;\n }\n\n buildQueryParamsObject(page, pageSize) {\n if (this.isControlled) {\n return this.args.queryFunction(page, pageSize);\n } else {\n return {};\n }\n }\n\n get routing() {\n let routing = {\n route: this.args.route ?? undefined,\n model: this.args.model ?? undefined,\n models: this.args.models ?? undefined,\n replace: this.args.replace ?? undefined,\n };\n\n // the \"query\" is dynamic and needs to be calculated\n if (this.isControlled) {\n routing.queryPrev = this.buildQueryParamsObject(\n 'prev',\n this.currentPageSize\n );\n routing.queryNext = this.buildQueryParamsObject(\n 'next',\n this.currentPageSize\n );\n } else {\n routing.queryPrev = undefined;\n routing.queryNext = undefined;\n }\n\n return routing;\n }\n\n @action\n onPageChange(newPage) {\n this.currentPage = newPage;\n\n let { onPageChange } = this.args;\n\n if (typeof onPageChange === 'function') {\n onPageChange(newPage);\n }\n }\n\n @action\n onPageSizeChange(newPageSize) {\n let { onPageSizeChange } = this.args;\n\n // invoke the callback function\n if (typeof onPageSizeChange === 'function') {\n onPageSizeChange(newPageSize);\n }\n }\n}\n"],"names":["DEFAULT_PAGE_SIZES","HdsPaginationCompactIndexComponent","_class","Component","constructor","arguments","_initializerDefineProperty","_descriptor","_descriptor2","_defineProperty","args","showLabels","showSizeSelector","queryFunction","undefined","isControlled","assert","ariaLabel","currentPageSize","_currentPageSize","value","pageSizes","Array","isArray","buildQueryParamsObject","page","pageSize","routing","route","model","models","replace","queryPrev","queryNext","onPageChange","newPage","currentPage","onPageSizeChange","newPageSize","_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/pagination/compact/index.hbs","../../../../../src/components/hds/pagination/compact/index.js"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{! @glint-nocheck: not typesafe yet }}\\n{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n<div class=\\\"hds-pagination\\\" ...attributes>\\n <nav class=\\\"hds-pagination-nav\\\" aria-label={{this.ariaLabel}}>\\n <Hds::Pagination::Nav::Arrow\\n @direction=\\\"prev\\\"\\n @showLabel={{this.showLabels}}\\n @route={{this.routing.route}}\\n @query={{this.routing.queryPrev}}\\n @model={{this.routing.model}}\\n @models={{this.routing.models}}\\n @replace={{this.routing.replace}}\\n @onClick={{this.onPageChange}}\\n @disabled={{@isDisabledPrev}}\\n />\\n <Hds::Pagination::Nav::Arrow\\n @direction=\\\"next\\\"\\n @showLabel={{this.showLabels}}\\n @route={{this.routing.route}}\\n @query={{this.routing.queryNext}}\\n @model={{this.routing.model}}\\n @models={{this.routing.models}}\\n @replace={{this.routing.replace}}\\n @onClick={{this.onPageChange}}\\n @disabled={{@isDisabledNext}}\\n />\\n </nav>\\n\\n {{#if this.showSizeSelector}}\\n <Hds::Pagination::SizeSelector\\n @pageSizes={{this.pageSizes}}\\n @label={{@sizeSelectorLabel}}\\n @selectedSize={{this.currentPageSize}}\\n @onChange={{this.onPageSizeChange}}\\n />\\n {{/if}}\\n</div>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { tracked } from '@glimmer/tracking';\nimport { action } from '@ember/object';\nimport { assert } from '@ember/debug';\n\n// for context about the decision to use these values, see:\n// https://hashicorp.slack.com/archives/C03A0N1QK8S/p1673546329082759\nexport const DEFAULT_PAGE_SIZES = [10, 30, 50];\n\nexport default class HdsPaginationCompactIndexComponent extends Component {\n // This private variable is used to differentiate between\n // \"uncontrolled\" component (where the state is handled internally) and\n // \"controlled\" component (where the state is handled externally, by the consumer's code).\n // In the first case, the variable stores the internal state of the component at any moment,\n // and its value is updated internally according to the user's interaction with the component.\n // In the second case, the variable stores *only* the initial state of the component (coming from the arguments)\n // at rendering time, but from that moment on it's not updated anymore, no matter what interaction the user\n // has with the component (the state is controlled externally, eg. via query parameters)\n @tracked _currentPageSize = this.args.currentPageSize ?? this.pageSizes[0];\n @tracked isControlled;\n\n showLabels = this.args.showLabels ?? true; // if the labels for the \"prev/next\" controls are visible\n showSizeSelector = this.args.showSizeSelector ?? false; // if the \"size selector\" block is visible\n\n constructor() {\n super(...arguments);\n\n let { queryFunction } = this.args;\n\n // This component works in two different ways, depending if we need to support\n // routing through links (`LinkTo`) for the \"navigation controls\", or not.\n // If there's no routing then the component behaves as \"uncontrolled\"\n // (the state updates are handled by its internal logic).\n // If instead the component needs to update the routing (and we infer this via the \"query\" arguments)\n // then the component behaves as \"controlled\", where the state is\n // initialized and updated using the arguments passed to it.\n\n if (queryFunction === undefined) {\n this.isControlled = false;\n } else {\n assert(\n '@queryFunction for \"Hds::Pagination::Numbered\" must be a function',\n typeof queryFunction === 'function'\n );\n this.isControlled = true;\n }\n }\n\n /**\n * @param ariaLabel\n * @type {string}\n * @default 'Pagination'\n */\n get ariaLabel() {\n return this.args.ariaLabel ?? 'Pagination';\n }\n\n // This very specific `get/set` pattern is used to handle the two different use cases of the component\n // being \"controlled\" (when it has routing, meaning it needs to support pagination controls as links/`LinkTo`)\n // vs being \"uncontrolled\" (see comments above for details).\n //\n // If it has routing (and so it's \"controlled\"), than the value (\"state\") of the `currentPageSize` variable\n // is *always* determined by the controller via arguments (most of the times, connected to query parameters in the URL).\n // For this reason the \"get\" method always returns the value from the `args`,\n // while the \"set\" method never updates the private internal state (_variable).\n //\n // If instead it doesn't have routing (and so it's \"uncontrolled\") than the value (\"state\") of the `currentPageSize` variables\n // is *always* determined by the component's internal logic (and updated according to the user interaction with it).\n // For this reason the \"get\" and \"set\" methods always read from or write to the private internal state (_variable).\n\n get currentPageSize() {\n if (this.isControlled) {\n return this.args.currentPageSize;\n } else {\n return this._currentPageSize;\n }\n }\n\n set currentPageSize(value) {\n if (this.isControlled) {\n // noop\n } else {\n this._currentPageSize = value;\n }\n }\n\n /**\n * @param pageSizes\n * @type {array of numbers}\n * @description Set the page sizes users can select from.\n * @default [10, 30, 50]\n */\n get pageSizes() {\n let { pageSizes = DEFAULT_PAGE_SIZES } = this.args;\n\n assert(\n `pageSizes argument must be an array. Received: ${pageSizes}`,\n Array.isArray(pageSizes) === true\n );\n\n return pageSizes;\n }\n\n buildQueryParamsObject(page, pageSize) {\n if (this.isControlled) {\n return this.args.queryFunction(page, pageSize);\n } else {\n return {};\n }\n }\n\n get routing() {\n let routing = {\n route: this.args.route ?? undefined,\n model: this.args.model ?? undefined,\n models: this.args.models ?? undefined,\n replace: this.args.replace ?? undefined,\n };\n\n // the \"query\" is dynamic and needs to be calculated\n if (this.isControlled) {\n routing.queryPrev = this.buildQueryParamsObject(\n 'prev',\n this.currentPageSize\n );\n routing.queryNext = this.buildQueryParamsObject(\n 'next',\n this.currentPageSize\n );\n } else {\n routing.queryPrev = undefined;\n routing.queryNext = undefined;\n }\n\n return routing;\n }\n\n @action\n onPageChange(newPage) {\n this.currentPage = newPage;\n\n let { onPageChange } = this.args;\n\n if (typeof onPageChange === 'function') {\n onPageChange(newPage);\n }\n }\n\n @action\n onPageSizeChange(newPageSize) {\n let { onPageSizeChange } = this.args;\n\n // invoke the callback function\n if (typeof onPageSizeChange === 'function') {\n onPageSizeChange(newPageSize);\n }\n }\n}\n"],"names":["DEFAULT_PAGE_SIZES","HdsPaginationCompactIndexComponent","_class","Component","constructor","arguments","_initializerDefineProperty","_descriptor","_descriptor2","_defineProperty","args","showLabels","showSizeSelector","queryFunction","undefined","isControlled","assert","ariaLabel","currentPageSize","_currentPageSize","value","pageSizes","Array","isArray","buildQueryParamsObject","page","pageSize","routing","route","model","models","replace","queryPrev","queryNext","onPageChange","newPage","currentPage","onPageSizeChange","newPageSize","_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 } from '../../../../_rollupPluginBabelHelpers-lqPQKyNs.js';
1
+ import { _ as _applyDecoratedDescriptor } from '../../../../_rollupPluginBabelHelpers-NoJJJNhk.js';
2
2
  import Component from '@glimmer/component';
3
3
  import { action } from '@ember/object';
4
4
  import { assert } from '@ember/debug';
@@ -1 +1 @@
1
- {"version":3,"file":"arrow.js","sources":["../../../../../src/components/hds/pagination/nav/arrow.hbs","../../../../../src/components/hds/pagination/nav/arrow.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{{#if @disabled}}\\n <Hds::Interactive class={{this.classNames}} aria-label={{this.content.ariaLabel}} disabled={{true}} ...attributes>\\n <FlightIcon @name={{this.content.icon}} />\\n {{#if this.showLabel}}\\n <Hds::Text::Body\\n class=\\\"hds-pagination-nav__arrow-label\\\"\\n @tag=\\\"span\\\"\\n @size=\\\"100\\\"\\n @weight=\\\"medium\\\"\\n aria-hidden=\\\"true\\\"\\n >\\n {{this.content.label}}\\n </Hds::Text::Body>\\n {{/if}}\\n </Hds::Interactive>\\n{{else}}\\n <Hds::Interactive\\n class={{this.classNames}}\\n @route={{@route}}\\n @query={{hds-link-to-query @query}}\\n @models={{hds-link-to-models @model @models}}\\n @replace={{@replace}}\\n {{on \\\"click\\\" this.onClick}}\\n aria-label={{this.content.ariaLabel}}\\n ...attributes\\n >\\n <FlightIcon @name={{this.content.icon}} />\\n {{#if this.showLabel}}\\n <Hds::Text::Body\\n class=\\\"hds-pagination-nav__arrow-label\\\"\\n @tag=\\\"span\\\"\\n @size=\\\"100\\\"\\n @weight=\\\"medium\\\"\\n aria-hidden=\\\"true\\\"\\n >\\n {{this.content.label}}\\n </Hds::Text::Body>\\n {{/if}}\\n </Hds::Interactive>\\n{{/if}}\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { action } from '@ember/object';\nimport { assert } from '@ember/debug';\n\nexport const DIRECTIONS = ['prev', 'next'];\n\nexport default class HdsPaginationControlArrowComponent extends Component {\n get content() {\n let { direction } = this.args;\n\n assert(\n `@direction for \"Pagination::Nav::Arrow\" must be one of the following: ${DIRECTIONS.join(\n ', '\n )}; received: ${direction}`,\n DIRECTIONS.includes(direction)\n );\n\n let content;\n if (direction === 'prev') {\n content = {\n label: 'Previous',\n icon: 'chevron-left',\n ariaLabel: 'Previous page',\n };\n }\n if (direction === 'next') {\n content = {\n label: 'Next',\n icon: 'chevron-right',\n ariaLabel: 'Next page',\n };\n }\n\n return content;\n }\n\n /**\n * @param showLabel\n * @type {boolean}\n * @default true\n * @description Show the labels for the control\n */\n get showLabel() {\n let { showLabel = true } = this.args;\n\n return showLabel;\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 = [\n 'hds-pagination-nav__control',\n 'hds-pagination-nav__arrow',\n `hds-pagination-nav__arrow--direction-${this.args.direction}`,\n ];\n\n return classes.join(' ');\n }\n\n @action\n onClick() {\n let { onClick } = this.args;\n\n if (typeof onClick === 'function') {\n onClick(this.args.direction);\n }\n }\n}\n"],"names":["DIRECTIONS","HdsPaginationControlArrowComponent","_class","Component","content","direction","args","assert","join","includes","label","icon","ariaLabel","showLabel","classNames","classes","onClick","_applyDecoratedDescriptor","prototype","action","Object","getOwnPropertyDescriptor","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;;AACA,eAAe,kBAAkB,CAAC,uwCAAuwC;;;MCQ5xCA,UAAU,GAAG,CAAC,MAAM,EAAE,MAAM,EAAC;AAErBC,IAAAA,kCAAkC,IAAAC,MAAA,GAAxC,MAAMD,kCAAkC,SAASE,SAAS,CAAC;EACxE,IAAIC,OAAOA,GAAG;IACZ,IAAI;AAAEC,MAAAA,SAAAA;KAAW,GAAG,IAAI,CAACC,IAAI,CAAA;AAE7BC,IAAAA,MAAM,CACH,CAAwEP,sEAAAA,EAAAA,UAAU,CAACQ,IAAI,CACtF,IACF,CAAE,CAAA,YAAA,EAAcH,SAAU,CAAA,CAAC,EAC3BL,UAAU,CAACS,QAAQ,CAACJ,SAAS,CAC/B,CAAC,CAAA;AAED,IAAA,IAAID,OAAO,CAAA;IACX,IAAIC,SAAS,KAAK,MAAM,EAAE;AACxBD,MAAAA,OAAO,GAAG;AACRM,QAAAA,KAAK,EAAE,UAAU;AACjBC,QAAAA,IAAI,EAAE,cAAc;AACpBC,QAAAA,SAAS,EAAE,eAAA;OACZ,CAAA;AACH,KAAA;IACA,IAAIP,SAAS,KAAK,MAAM,EAAE;AACxBD,MAAAA,OAAO,GAAG;AACRM,QAAAA,KAAK,EAAE,MAAM;AACbC,QAAAA,IAAI,EAAE,eAAe;AACrBC,QAAAA,SAAS,EAAE,WAAA;OACZ,CAAA;AACH,KAAA;AAEA,IAAA,OAAOR,OAAO,CAAA;AAChB,GAAA;;AAEA;AACF;AACA;AACA;AACA;AACA;EACE,IAAIS,SAASA,GAAG;IACd,IAAI;AAAEA,MAAAA,SAAS,GAAG,IAAA;KAAM,GAAG,IAAI,CAACP,IAAI,CAAA;AAEpC,IAAA,OAAOO,SAAS,CAAA;AAClB,GAAA;;AAEA;AACF;AACA;AACA;AACA;EACE,IAAIC,UAAUA,GAAG;AACf,IAAA,IAAIC,OAAO,GAAG,CACZ,6BAA6B,EAC7B,2BAA2B,EAC1B,CAAuC,qCAAA,EAAA,IAAI,CAACT,IAAI,CAACD,SAAU,EAAC,CAC9D,CAAA;AAED,IAAA,OAAOU,OAAO,CAACP,IAAI,CAAC,GAAG,CAAC,CAAA;AAC1B,GAAA;AAGAQ,EAAAA,OAAOA,GAAG;IACR,IAAI;AAAEA,MAAAA,OAAAA;KAAS,GAAG,IAAI,CAACV,IAAI,CAAA;AAE3B,IAAA,IAAI,OAAOU,OAAO,KAAK,UAAU,EAAE;AACjCA,MAAAA,OAAO,CAAC,IAAI,CAACV,IAAI,CAACD,SAAS,CAAC,CAAA;AAC9B,KAAA;AACF,GAAA;AACF,CAAC,GAAAY,yBAAA,CAAAf,MAAA,CAAAgB,SAAA,EAAA,SAAA,EAAA,CAREC,MAAM,CAAAC,EAAAA,MAAA,CAAAC,wBAAA,CAAAnB,MAAA,CAAAgB,SAAA,cAAAhB,MAAA,CAAAgB,SAAA,CAAA,GAAAhB,MAAA,EAAA;AAzD8CoB,oBAAA,CAAAC,QAAA,EAAAtB,kCAAA,CAAA;;;;"}
1
+ {"version":3,"file":"arrow.js","sources":["../../../../../src/components/hds/pagination/nav/arrow.hbs","../../../../../src/components/hds/pagination/nav/arrow.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{{#if @disabled}}\\n <Hds::Interactive class={{this.classNames}} aria-label={{this.content.ariaLabel}} disabled={{true}} ...attributes>\\n <FlightIcon @name={{this.content.icon}} />\\n {{#if this.showLabel}}\\n <Hds::Text::Body\\n class=\\\"hds-pagination-nav__arrow-label\\\"\\n @tag=\\\"span\\\"\\n @size=\\\"100\\\"\\n @weight=\\\"medium\\\"\\n aria-hidden=\\\"true\\\"\\n >\\n {{this.content.label}}\\n </Hds::Text::Body>\\n {{/if}}\\n </Hds::Interactive>\\n{{else}}\\n <Hds::Interactive\\n class={{this.classNames}}\\n @route={{@route}}\\n @query={{hds-link-to-query @query}}\\n @models={{hds-link-to-models @model @models}}\\n @replace={{@replace}}\\n {{on \\\"click\\\" this.onClick}}\\n aria-label={{this.content.ariaLabel}}\\n ...attributes\\n >\\n <FlightIcon @name={{this.content.icon}} />\\n {{#if this.showLabel}}\\n <Hds::Text::Body\\n class=\\\"hds-pagination-nav__arrow-label\\\"\\n @tag=\\\"span\\\"\\n @size=\\\"100\\\"\\n @weight=\\\"medium\\\"\\n aria-hidden=\\\"true\\\"\\n >\\n {{this.content.label}}\\n </Hds::Text::Body>\\n {{/if}}\\n </Hds::Interactive>\\n{{/if}}\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { action } from '@ember/object';\nimport { assert } from '@ember/debug';\n\nexport const DIRECTIONS = ['prev', 'next'];\n\nexport default class HdsPaginationControlArrowComponent extends Component {\n get content() {\n let { direction } = this.args;\n\n assert(\n `@direction for \"Pagination::Nav::Arrow\" must be one of the following: ${DIRECTIONS.join(\n ', '\n )}; received: ${direction}`,\n DIRECTIONS.includes(direction)\n );\n\n let content;\n if (direction === 'prev') {\n content = {\n label: 'Previous',\n icon: 'chevron-left',\n ariaLabel: 'Previous page',\n };\n }\n if (direction === 'next') {\n content = {\n label: 'Next',\n icon: 'chevron-right',\n ariaLabel: 'Next page',\n };\n }\n\n return content;\n }\n\n /**\n * @param showLabel\n * @type {boolean}\n * @default true\n * @description Show the labels for the control\n */\n get showLabel() {\n let { showLabel = true } = this.args;\n\n return showLabel;\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 = [\n 'hds-pagination-nav__control',\n 'hds-pagination-nav__arrow',\n `hds-pagination-nav__arrow--direction-${this.args.direction}`,\n ];\n\n return classes.join(' ');\n }\n\n @action\n onClick() {\n let { onClick } = this.args;\n\n if (typeof onClick === 'function') {\n onClick(this.args.direction);\n }\n }\n}\n"],"names":["DIRECTIONS","HdsPaginationControlArrowComponent","_class","Component","content","direction","args","assert","join","includes","label","icon","ariaLabel","showLabel","classNames","classes","onClick","_applyDecoratedDescriptor","prototype","action","Object","getOwnPropertyDescriptor","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;;AACA,eAAe,kBAAkB,CAAC,uwCAAuwC;;;MCQ5xCA,UAAU,GAAG,CAAC,MAAM,EAAE,MAAM,EAAC;AAErBC,IAAAA,kCAAkC,IAAAC,MAAA,GAAxC,MAAMD,kCAAkC,SAASE,SAAS,CAAC;EACxE,IAAIC,OAAOA,GAAG;IACZ,IAAI;AAAEC,MAAAA,SAAAA;KAAW,GAAG,IAAI,CAACC,IAAI,CAAA;AAE7BC,IAAAA,MAAM,CACH,CAAwEP,sEAAAA,EAAAA,UAAU,CAACQ,IAAI,CACtF,IACF,CAAE,CAAA,YAAA,EAAcH,SAAU,CAAA,CAAC,EAC3BL,UAAU,CAACS,QAAQ,CAACJ,SAAS,CAC/B,CAAC,CAAA;AAED,IAAA,IAAID,OAAO,CAAA;IACX,IAAIC,SAAS,KAAK,MAAM,EAAE;AACxBD,MAAAA,OAAO,GAAG;AACRM,QAAAA,KAAK,EAAE,UAAU;AACjBC,QAAAA,IAAI,EAAE,cAAc;AACpBC,QAAAA,SAAS,EAAE,eAAA;OACZ,CAAA;AACH,KAAA;IACA,IAAIP,SAAS,KAAK,MAAM,EAAE;AACxBD,MAAAA,OAAO,GAAG;AACRM,QAAAA,KAAK,EAAE,MAAM;AACbC,QAAAA,IAAI,EAAE,eAAe;AACrBC,QAAAA,SAAS,EAAE,WAAA;OACZ,CAAA;AACH,KAAA;AAEA,IAAA,OAAOR,OAAO,CAAA;AAChB,GAAA;;AAEA;AACF;AACA;AACA;AACA;AACA;EACE,IAAIS,SAASA,GAAG;IACd,IAAI;AAAEA,MAAAA,SAAS,GAAG,IAAA;KAAM,GAAG,IAAI,CAACP,IAAI,CAAA;AAEpC,IAAA,OAAOO,SAAS,CAAA;AAClB,GAAA;;AAEA;AACF;AACA;AACA;AACA;EACE,IAAIC,UAAUA,GAAG;AACf,IAAA,IAAIC,OAAO,GAAG,CACZ,6BAA6B,EAC7B,2BAA2B,EAC1B,CAAuC,qCAAA,EAAA,IAAI,CAACT,IAAI,CAACD,SAAU,EAAC,CAC9D,CAAA;AAED,IAAA,OAAOU,OAAO,CAACP,IAAI,CAAC,GAAG,CAAC,CAAA;AAC1B,GAAA;AAGAQ,EAAAA,OAAOA,GAAG;IACR,IAAI;AAAEA,MAAAA,OAAAA;KAAS,GAAG,IAAI,CAACV,IAAI,CAAA;AAE3B,IAAA,IAAI,OAAOU,OAAO,KAAK,UAAU,EAAE;AACjCA,MAAAA,OAAO,CAAC,IAAI,CAACV,IAAI,CAACD,SAAS,CAAC,CAAA;AAC9B,KAAA;AACF,GAAA;AACF,CAAC,GAAAY,yBAAA,CAAAf,MAAA,CAAAgB,SAAA,EAAA,SAAA,EAAA,CAREC,MAAM,CAAAC,EAAAA,MAAA,CAAAC,wBAAA,CAAAnB,MAAA,CAAAgB,SAAA,cAAAhB,MAAA,CAAAgB,SAAA,CAAA,GAAAhB,MAAA,EAAA;AAzD8CoB,oBAAA,CAAAC,QAAA,EAAlCtB,kCAAkC,CAAA;;;;"}
@@ -1,4 +1,4 @@
1
- import { a as _applyDecoratedDescriptor } from '../../../../_rollupPluginBabelHelpers-lqPQKyNs.js';
1
+ import { _ as _applyDecoratedDescriptor } from '../../../../_rollupPluginBabelHelpers-NoJJJNhk.js';
2
2
  import Component from '@glimmer/component';
3
3
  import { action } from '@ember/object';
4
4
  import { assert } from '@ember/debug';
@@ -1 +1 @@
1
- {"version":3,"file":"number.js","sources":["../../../../../src/components/hds/pagination/nav/number.hbs","../../../../../src/components/hds/pagination/nav/number.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<Hds::Interactive\\n class={{this.classNames}}\\n @route={{@route}}\\n @query={{hds-link-to-query @query}}\\n @models={{hds-link-to-models @model @models}}\\n @replace={{@replace}}\\n {{on \\\"click\\\" this.onClick}}\\n ...attributes\\n aria-current={{if @isSelected \\\"page\\\" null}}\\n>\\n <Hds::Text::Body @tag=\\\"span\\\" @size=\\\"100\\\" @weight=\\\"medium\\\"><span class=\\\"sr-only\\\">page\\n </span>{{this.page}}</Hds::Text::Body>\\n</Hds::Interactive>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { action } from '@ember/object';\nimport { assert } from '@ember/debug';\n\nexport default class HdsPaginationControlNumberComponent extends Component {\n get page() {\n let { page } = this.args;\n\n assert(\n '@page for \"Pagination::Nav::Number\" must have a valid value',\n page !== undefined\n );\n\n return page;\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-pagination-nav__control', 'hds-pagination-nav__number'];\n\n if (this.args.isSelected) {\n classes.push(`hds-pagination-nav__number--is-selected`);\n }\n\n return classes.join(' ');\n }\n\n @action\n onClick() {\n let { onClick } = this.args;\n\n if (typeof onClick === 'function') {\n onClick(this.args.page);\n }\n }\n}\n"],"names":["HdsPaginationControlNumberComponent","_class","Component","page","args","assert","undefined","classNames","classes","isSelected","push","join","onClick","_applyDecoratedDescriptor","prototype","action","Object","getOwnPropertyDescriptor","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;;AACA,eAAe,kBAAkB,CAAC,ojBAAojB;;;ACQjkBA,IAAAA,mCAAmC,IAAAC,MAAA,GAAzC,MAAMD,mCAAmC,SAASE,SAAS,CAAC;EACzE,IAAIC,IAAIA,GAAG;IACT,IAAI;AAAEA,MAAAA,IAAAA;KAAM,GAAG,IAAI,CAACC,IAAI,CAAA;AAExBC,IAAAA,MAAM,CACJ,6DAA6D,EAC7DF,IAAI,KAAKG,SACX,CAAC,CAAA;AAED,IAAA,OAAOH,IAAI,CAAA;AACb,GAAA;;AAEA;AACF;AACA;AACA;AACA;EACE,IAAII,UAAUA,GAAG;AACf,IAAA,IAAIC,OAAO,GAAG,CAAC,6BAA6B,EAAE,4BAA4B,CAAC,CAAA;AAE3E,IAAA,IAAI,IAAI,CAACJ,IAAI,CAACK,UAAU,EAAE;AACxBD,MAAAA,OAAO,CAACE,IAAI,CAAE,CAAA,uCAAA,CAAwC,CAAC,CAAA;AACzD,KAAA;AAEA,IAAA,OAAOF,OAAO,CAACG,IAAI,CAAC,GAAG,CAAC,CAAA;AAC1B,GAAA;AAGAC,EAAAA,OAAOA,GAAG;IACR,IAAI;AAAEA,MAAAA,OAAAA;KAAS,GAAG,IAAI,CAACR,IAAI,CAAA;AAE3B,IAAA,IAAI,OAAOQ,OAAO,KAAK,UAAU,EAAE;AACjCA,MAAAA,OAAO,CAAC,IAAI,CAACR,IAAI,CAACD,IAAI,CAAC,CAAA;AACzB,KAAA;AACF,GAAA;AACF,CAAC,GAAAU,yBAAA,CAAAZ,MAAA,CAAAa,SAAA,EAAA,SAAA,EAAA,CAREC,MAAM,CAAAC,EAAAA,MAAA,CAAAC,wBAAA,CAAAhB,MAAA,CAAAa,SAAA,cAAAb,MAAA,CAAAa,SAAA,CAAA,GAAAb,MAAA,EAAA;AA3B+CiB,oBAAA,CAAAC,QAAA,EAAAnB,mCAAA,CAAA;;;;"}
1
+ {"version":3,"file":"number.js","sources":["../../../../../src/components/hds/pagination/nav/number.hbs","../../../../../src/components/hds/pagination/nav/number.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<Hds::Interactive\\n class={{this.classNames}}\\n @route={{@route}}\\n @query={{hds-link-to-query @query}}\\n @models={{hds-link-to-models @model @models}}\\n @replace={{@replace}}\\n {{on \\\"click\\\" this.onClick}}\\n ...attributes\\n aria-current={{if @isSelected \\\"page\\\" null}}\\n>\\n <Hds::Text::Body @tag=\\\"span\\\" @size=\\\"100\\\" @weight=\\\"medium\\\"><span class=\\\"sr-only\\\">page\\n </span>{{this.page}}</Hds::Text::Body>\\n</Hds::Interactive>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { action } from '@ember/object';\nimport { assert } from '@ember/debug';\n\nexport default class HdsPaginationControlNumberComponent extends Component {\n get page() {\n let { page } = this.args;\n\n assert(\n '@page for \"Pagination::Nav::Number\" must have a valid value',\n page !== undefined\n );\n\n return page;\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-pagination-nav__control', 'hds-pagination-nav__number'];\n\n if (this.args.isSelected) {\n classes.push(`hds-pagination-nav__number--is-selected`);\n }\n\n return classes.join(' ');\n }\n\n @action\n onClick() {\n let { onClick } = this.args;\n\n if (typeof onClick === 'function') {\n onClick(this.args.page);\n }\n }\n}\n"],"names":["HdsPaginationControlNumberComponent","_class","Component","page","args","assert","undefined","classNames","classes","isSelected","push","join","onClick","_applyDecoratedDescriptor","prototype","action","Object","getOwnPropertyDescriptor","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;;AACA,eAAe,kBAAkB,CAAC,ojBAAojB;;;ACQjkBA,IAAAA,mCAAmC,IAAAC,MAAA,GAAzC,MAAMD,mCAAmC,SAASE,SAAS,CAAC;EACzE,IAAIC,IAAIA,GAAG;IACT,IAAI;AAAEA,MAAAA,IAAAA;KAAM,GAAG,IAAI,CAACC,IAAI,CAAA;AAExBC,IAAAA,MAAM,CACJ,6DAA6D,EAC7DF,IAAI,KAAKG,SACX,CAAC,CAAA;AAED,IAAA,OAAOH,IAAI,CAAA;AACb,GAAA;;AAEA;AACF;AACA;AACA;AACA;EACE,IAAII,UAAUA,GAAG;AACf,IAAA,IAAIC,OAAO,GAAG,CAAC,6BAA6B,EAAE,4BAA4B,CAAC,CAAA;AAE3E,IAAA,IAAI,IAAI,CAACJ,IAAI,CAACK,UAAU,EAAE;AACxBD,MAAAA,OAAO,CAACE,IAAI,CAAE,CAAA,uCAAA,CAAwC,CAAC,CAAA;AACzD,KAAA;AAEA,IAAA,OAAOF,OAAO,CAACG,IAAI,CAAC,GAAG,CAAC,CAAA;AAC1B,GAAA;AAGAC,EAAAA,OAAOA,GAAG;IACR,IAAI;AAAEA,MAAAA,OAAAA;KAAS,GAAG,IAAI,CAACR,IAAI,CAAA;AAE3B,IAAA,IAAI,OAAOQ,OAAO,KAAK,UAAU,EAAE;AACjCA,MAAAA,OAAO,CAAC,IAAI,CAACR,IAAI,CAACD,IAAI,CAAC,CAAA;AACzB,KAAA;AACF,GAAA;AACF,CAAC,GAAAU,yBAAA,CAAAZ,MAAA,CAAAa,SAAA,EAAA,SAAA,EAAA,CAREC,MAAM,CAAAC,EAAAA,MAAA,CAAAC,wBAAA,CAAAhB,MAAA,CAAAa,SAAA,cAAAb,MAAA,CAAAa,SAAA,CAAA,GAAAb,MAAA,EAAA;AA3B+CiB,oBAAA,CAAAC,QAAA,EAAnCnB,mCAAmC,CAAA;;;;"}
@@ -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';