@hashicorp/design-system-components 4.6.0 → 4.7.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 (336) hide show
  1. package/addon-main.cjs +16 -1
  2. package/declarations/components/hds/app-footer/status-link.d.ts +1 -1
  3. package/declarations/components/hds/badge/index.d.ts +2 -2
  4. package/declarations/components/hds/badge/index.d.ts.map +1 -1
  5. package/declarations/components/hds/button/index.d.ts +1 -1
  6. package/declarations/components/hds/button/index.d.ts.map +1 -1
  7. package/declarations/components/hds/dialog-primitive/body.d.ts +17 -0
  8. package/declarations/components/hds/dialog-primitive/body.d.ts.map +1 -0
  9. package/declarations/components/hds/dialog-primitive/description.d.ts +17 -0
  10. package/declarations/components/hds/dialog-primitive/description.d.ts.map +1 -0
  11. package/declarations/components/hds/dialog-primitive/footer.d.ts +22 -0
  12. package/declarations/components/hds/dialog-primitive/footer.d.ts.map +1 -0
  13. package/declarations/components/hds/dialog-primitive/header.d.ts +28 -0
  14. package/declarations/components/hds/dialog-primitive/header.d.ts.map +1 -0
  15. package/declarations/components/hds/dialog-primitive/overlay.d.ts +14 -0
  16. package/declarations/components/hds/dialog-primitive/overlay.d.ts.map +1 -0
  17. package/declarations/components/hds/dialog-primitive/wrapper.d.ts +16 -0
  18. package/declarations/components/hds/dialog-primitive/wrapper.d.ts.map +1 -0
  19. package/declarations/components/hds/dropdown/list-item/checkbox.d.ts +1 -1
  20. package/declarations/components/hds/dropdown/list-item/checkbox.d.ts.map +1 -1
  21. package/declarations/components/hds/dropdown/list-item/radio.d.ts +1 -1
  22. package/declarations/components/hds/dropdown/list-item/radio.d.ts.map +1 -1
  23. package/declarations/components/hds/flyout/body.d.ts +14 -1
  24. package/declarations/components/hds/flyout/body.d.ts.map +1 -1
  25. package/declarations/components/hds/flyout/description.d.ts +15 -0
  26. package/declarations/components/hds/flyout/description.d.ts.map +1 -1
  27. package/declarations/components/hds/flyout/footer.d.ts +19 -0
  28. package/declarations/components/hds/flyout/footer.d.ts.map +1 -1
  29. package/declarations/components/hds/flyout/header.d.ts +21 -1
  30. package/declarations/components/hds/flyout/header.d.ts.map +1 -1
  31. package/declarations/components/hds/flyout/index.d.ts +42 -12
  32. package/declarations/components/hds/flyout/index.d.ts.map +1 -1
  33. package/declarations/components/hds/flyout/types.d.ts +6 -0
  34. package/declarations/components/hds/flyout/types.d.ts.map +1 -0
  35. package/declarations/components/hds/form/character-count/index.d.ts +37 -10
  36. package/declarations/components/hds/form/character-count/index.d.ts.map +1 -1
  37. package/declarations/components/hds/form/checkbox/base.d.ts +13 -1
  38. package/declarations/components/hds/form/checkbox/base.d.ts.map +1 -1
  39. package/declarations/components/hds/form/checkbox/field.d.ts +28 -1
  40. package/declarations/components/hds/form/checkbox/field.d.ts.map +1 -1
  41. package/declarations/components/hds/form/checkbox/group.d.ts +29 -1
  42. package/declarations/components/hds/form/checkbox/group.d.ts.map +1 -1
  43. package/declarations/components/hds/form/error/index.d.ts +27 -6
  44. package/declarations/components/hds/form/error/index.d.ts.map +1 -1
  45. package/declarations/components/hds/form/error/message.d.ts +14 -1
  46. package/declarations/components/hds/form/error/message.d.ts.map +1 -1
  47. package/declarations/components/hds/form/field/index.d.ts +50 -15
  48. package/declarations/components/hds/form/field/index.d.ts.map +1 -1
  49. package/declarations/components/hds/form/field/types.d.ts +10 -0
  50. package/declarations/components/hds/form/field/types.d.ts.map +1 -0
  51. package/declarations/components/hds/form/fieldset/index.d.ts +43 -14
  52. package/declarations/components/hds/form/fieldset/index.d.ts.map +1 -1
  53. package/declarations/components/hds/form/fieldset/types.d.ts +10 -0
  54. package/declarations/components/hds/form/fieldset/types.d.ts.map +1 -0
  55. package/declarations/components/hds/form/file-input/base.d.ts +10 -1
  56. package/declarations/components/hds/form/file-input/base.d.ts.map +1 -1
  57. package/declarations/components/hds/form/file-input/field.d.ts +25 -1
  58. package/declarations/components/hds/form/file-input/field.d.ts.map +1 -1
  59. package/declarations/components/hds/form/helper-text/index.d.ts +20 -5
  60. package/declarations/components/hds/form/helper-text/index.d.ts.map +1 -1
  61. package/declarations/components/hds/form/indicator/index.d.ts +15 -3
  62. package/declarations/components/hds/form/indicator/index.d.ts.map +1 -1
  63. package/declarations/components/hds/form/label/index.d.ts +20 -4
  64. package/declarations/components/hds/form/label/index.d.ts.map +1 -1
  65. package/declarations/components/hds/form/legend/index.d.ts +18 -3
  66. package/declarations/components/hds/form/legend/index.d.ts.map +1 -1
  67. package/declarations/components/hds/form/masked-input/base.d.ts +26 -5
  68. package/declarations/components/hds/form/masked-input/base.d.ts.map +1 -1
  69. package/declarations/components/hds/form/masked-input/field.d.ts +28 -1
  70. package/declarations/components/hds/form/masked-input/field.d.ts.map +1 -1
  71. package/declarations/components/hds/form/radio/base.d.ts +13 -1
  72. package/declarations/components/hds/form/radio/base.d.ts.map +1 -1
  73. package/declarations/components/hds/form/radio/field.d.ts +28 -1
  74. package/declarations/components/hds/form/radio/field.d.ts.map +1 -1
  75. package/declarations/components/hds/form/radio/group.d.ts +29 -1
  76. package/declarations/components/hds/form/radio/group.d.ts.map +1 -1
  77. package/declarations/components/hds/form/radio-card/description.d.ts +14 -1
  78. package/declarations/components/hds/form/radio-card/description.d.ts.map +1 -1
  79. package/declarations/components/hds/form/radio-card/group.d.ts +32 -1
  80. package/declarations/components/hds/form/radio-card/group.d.ts.map +1 -1
  81. package/declarations/components/hds/form/radio-card/index.d.ts +45 -9
  82. package/declarations/components/hds/form/radio-card/index.d.ts.map +1 -1
  83. package/declarations/components/hds/form/radio-card/label.d.ts +14 -1
  84. package/declarations/components/hds/form/radio-card/label.d.ts.map +1 -1
  85. package/declarations/components/hds/form/radio-card/types.d.ts +15 -0
  86. package/declarations/components/hds/form/radio-card/types.d.ts.map +1 -0
  87. package/declarations/components/hds/form/select/base.d.ts +22 -3
  88. package/declarations/components/hds/form/select/base.d.ts.map +1 -1
  89. package/declarations/components/hds/form/select/field.d.ts +28 -1
  90. package/declarations/components/hds/form/select/field.d.ts.map +1 -1
  91. package/declarations/components/hds/form/text-input/base.d.ts +22 -6
  92. package/declarations/components/hds/form/text-input/base.d.ts.map +1 -1
  93. package/declarations/components/hds/form/text-input/field.d.ts +36 -7
  94. package/declarations/components/hds/form/text-input/field.d.ts.map +1 -1
  95. package/declarations/components/hds/form/text-input/types.d.ts +19 -0
  96. package/declarations/components/hds/form/text-input/types.d.ts.map +1 -0
  97. package/declarations/components/hds/form/textarea/base.d.ts +15 -3
  98. package/declarations/components/hds/form/textarea/base.d.ts.map +1 -1
  99. package/declarations/components/hds/form/textarea/field.d.ts +28 -1
  100. package/declarations/components/hds/form/textarea/field.d.ts.map +1 -1
  101. package/declarations/components/hds/form/toggle/base.d.ts +13 -1
  102. package/declarations/components/hds/form/toggle/base.d.ts.map +1 -1
  103. package/declarations/components/hds/form/toggle/field.d.ts +27 -1
  104. package/declarations/components/hds/form/toggle/field.d.ts.map +1 -1
  105. package/declarations/components/hds/form/toggle/group.d.ts +29 -1
  106. package/declarations/components/hds/form/toggle/group.d.ts.map +1 -1
  107. package/declarations/components/hds/form/visibility-toggle/index.d.ts +15 -1
  108. package/declarations/components/hds/form/visibility-toggle/index.d.ts.map +1 -1
  109. package/declarations/components/hds/modal/body.d.ts +14 -1
  110. package/declarations/components/hds/modal/body.d.ts.map +1 -1
  111. package/declarations/components/hds/modal/footer.d.ts +19 -1
  112. package/declarations/components/hds/modal/footer.d.ts.map +1 -1
  113. package/declarations/components/hds/modal/header.d.ts +21 -1
  114. package/declarations/components/hds/modal/header.d.ts.map +1 -1
  115. package/declarations/components/hds/modal/index.d.ts +44 -15
  116. package/declarations/components/hds/modal/index.d.ts.map +1 -1
  117. package/declarations/components/hds/modal/types.d.ts +17 -0
  118. package/declarations/components/hds/modal/types.d.ts.map +1 -0
  119. package/declarations/components/hds/stepper/task/indicator.d.ts +1 -1
  120. package/declarations/components/hds/stepper/task/indicator.d.ts.map +1 -1
  121. package/declarations/components.d.ts +57 -1
  122. package/declarations/components.d.ts.map +1 -1
  123. package/declarations/instance-initializers/load-sprite.d.ts +13 -0
  124. package/declarations/instance-initializers/load-sprite.d.ts.map +1 -0
  125. package/declarations/modifiers/hds-clipboard.d.ts +2 -2
  126. package/declarations/modifiers/hds-clipboard.d.ts.map +1 -1
  127. package/declarations/template-registry.d.ts +144 -0
  128. package/declarations/template-registry.d.ts.map +1 -1
  129. package/declarations/utils/hds-aria-described-by.d.ts +6 -8
  130. package/declarations/utils/hds-aria-described-by.d.ts.map +1 -1
  131. package/declarations/utils/hds-get-element-id.d.ts +5 -1
  132. package/declarations/utils/hds-get-element-id.d.ts.map +1 -1
  133. package/dist/_app_/components/hds/dialog-primitive/body.js +1 -0
  134. package/dist/_app_/components/hds/dialog-primitive/description.js +1 -0
  135. package/dist/_app_/components/hds/dialog-primitive/footer.js +1 -0
  136. package/dist/_app_/components/hds/dialog-primitive/header.js +1 -0
  137. package/dist/_app_/components/hds/dialog-primitive/overlay.js +1 -0
  138. package/dist/_app_/components/hds/dialog-primitive/wrapper.js +1 -0
  139. package/dist/components/hds/alert/description.js +2 -2
  140. package/dist/components/hds/alert/description.js.map +1 -1
  141. package/dist/components/hds/alert/title.js +2 -2
  142. package/dist/components/hds/alert/title.js.map +1 -1
  143. package/dist/components/hds/application-state/body.js +2 -2
  144. package/dist/components/hds/application-state/body.js.map +1 -1
  145. package/dist/components/hds/application-state/header.js +2 -2
  146. package/dist/components/hds/application-state/header.js.map +1 -1
  147. package/dist/components/hds/application-state/index.js +2 -2
  148. package/dist/components/hds/application-state/index.js.map +1 -1
  149. package/dist/components/hds/badge/index.js.map +1 -1
  150. package/dist/components/hds/button-set/index.js +2 -2
  151. package/dist/components/hds/button-set/index.js.map +1 -1
  152. package/dist/components/hds/code-block/copy-button.js +2 -2
  153. package/dist/components/hds/code-block/copy-button.js.map +1 -1
  154. package/dist/components/hds/code-block/description.js +2 -2
  155. package/dist/components/hds/code-block/description.js.map +1 -1
  156. package/dist/components/hds/code-block/title.js +2 -2
  157. package/dist/components/hds/code-block/title.js.map +1 -1
  158. package/dist/components/hds/dialog-primitive/body.js +16 -0
  159. package/dist/components/hds/dialog-primitive/body.js.map +1 -0
  160. package/dist/components/hds/dialog-primitive/description.js +16 -0
  161. package/dist/components/hds/dialog-primitive/description.js.map +1 -0
  162. package/dist/components/hds/dialog-primitive/footer.js +16 -0
  163. package/dist/components/hds/dialog-primitive/footer.js.map +1 -0
  164. package/dist/components/hds/dialog-primitive/header.js +37 -0
  165. package/dist/components/hds/dialog-primitive/header.js.map +1 -0
  166. package/dist/components/hds/dialog-primitive/overlay.js +16 -0
  167. package/dist/components/hds/dialog-primitive/overlay.js.map +1 -0
  168. package/dist/components/hds/dialog-primitive/wrapper.js +16 -0
  169. package/dist/components/hds/dialog-primitive/wrapper.js.map +1 -0
  170. package/dist/components/hds/dropdown/footer.js +2 -2
  171. package/dist/components/hds/dropdown/footer.js.map +1 -1
  172. package/dist/components/hds/dropdown/header.js +2 -2
  173. package/dist/components/hds/dropdown/header.js.map +1 -1
  174. package/dist/components/hds/dropdown/list-item/checkbox.js.map +1 -1
  175. package/dist/components/hds/dropdown/list-item/generic.js +2 -2
  176. package/dist/components/hds/dropdown/list-item/generic.js.map +1 -1
  177. package/dist/components/hds/dropdown/list-item/radio.js.map +1 -1
  178. package/dist/components/hds/dropdown/list-item/separator.js +2 -2
  179. package/dist/components/hds/dropdown/list-item/separator.js.map +1 -1
  180. package/dist/components/hds/dropdown/toggle/chevron.js +2 -2
  181. package/dist/components/hds/dropdown/toggle/chevron.js.map +1 -1
  182. package/dist/components/hds/flyout/body.js +24 -4
  183. package/dist/components/hds/flyout/body.js.map +1 -1
  184. package/dist/components/hds/flyout/description.js +24 -4
  185. package/dist/components/hds/flyout/description.js.map +1 -1
  186. package/dist/components/hds/flyout/footer.js +24 -4
  187. package/dist/components/hds/flyout/footer.js.map +1 -1
  188. package/dist/components/hds/flyout/header.js +24 -4
  189. package/dist/components/hds/flyout/header.js.map +1 -1
  190. package/dist/components/hds/flyout/index.js +19 -11
  191. package/dist/components/hds/flyout/index.js.map +1 -1
  192. package/dist/components/hds/flyout/types.js +8 -0
  193. package/dist/components/hds/flyout/types.js.map +1 -0
  194. package/dist/components/hds/form/character-count/index.js +27 -22
  195. package/dist/components/hds/form/character-count/index.js.map +1 -1
  196. package/dist/components/hds/form/checkbox/base.js +9 -3
  197. package/dist/components/hds/form/checkbox/base.js.map +1 -1
  198. package/dist/components/hds/form/checkbox/field.js +9 -3
  199. package/dist/components/hds/form/checkbox/field.js.map +1 -1
  200. package/dist/components/hds/form/checkbox/group.js +9 -3
  201. package/dist/components/hds/form/checkbox/group.js.map +1 -1
  202. package/dist/components/hds/form/error/index.js +10 -8
  203. package/dist/components/hds/form/error/index.js.map +1 -1
  204. package/dist/components/hds/form/error/message.js +9 -3
  205. package/dist/components/hds/form/error/message.js.map +1 -1
  206. package/dist/components/hds/form/field/index.js +34 -29
  207. package/dist/components/hds/form/field/index.js.map +1 -1
  208. package/dist/components/hds/form/field/types.js +13 -0
  209. package/dist/components/hds/form/field/types.js.map +1 -0
  210. package/dist/components/hds/form/fieldset/index.js +29 -25
  211. package/dist/components/hds/form/fieldset/index.js.map +1 -1
  212. package/dist/components/hds/form/fieldset/types.js +13 -0
  213. package/dist/components/hds/form/fieldset/types.js.map +1 -0
  214. package/dist/components/hds/form/file-input/base.js +9 -3
  215. package/dist/components/hds/form/file-input/base.js.map +1 -1
  216. package/dist/components/hds/form/file-input/field.js +9 -3
  217. package/dist/components/hds/form/file-input/field.js.map +1 -1
  218. package/dist/components/hds/form/helper-text/index.js +8 -7
  219. package/dist/components/hds/form/helper-text/index.js.map +1 -1
  220. package/dist/components/hds/form/indicator/index.js +5 -5
  221. package/dist/components/hds/form/indicator/index.js.map +1 -1
  222. package/dist/components/hds/form/label/index.js +6 -6
  223. package/dist/components/hds/form/label/index.js.map +1 -1
  224. package/dist/components/hds/form/legend/index.js +5 -5
  225. package/dist/components/hds/form/legend/index.js.map +1 -1
  226. package/dist/components/hds/form/masked-input/base.js +2 -2
  227. package/dist/components/hds/form/masked-input/base.js.map +1 -1
  228. package/dist/components/hds/form/masked-input/field.js +9 -3
  229. package/dist/components/hds/form/masked-input/field.js.map +1 -1
  230. package/dist/components/hds/form/radio/base.js +9 -3
  231. package/dist/components/hds/form/radio/base.js.map +1 -1
  232. package/dist/components/hds/form/radio/field.js +9 -3
  233. package/dist/components/hds/form/radio/field.js.map +1 -1
  234. package/dist/components/hds/form/radio/group.js +9 -3
  235. package/dist/components/hds/form/radio/group.js.map +1 -1
  236. package/dist/components/hds/form/radio-card/description.js +9 -3
  237. package/dist/components/hds/form/radio-card/description.js.map +1 -1
  238. package/dist/components/hds/form/radio-card/group.js +9 -3
  239. package/dist/components/hds/form/radio-card/group.js.map +1 -1
  240. package/dist/components/hds/form/radio-card/index.js +12 -11
  241. package/dist/components/hds/form/radio-card/index.js.map +1 -1
  242. package/dist/components/hds/form/radio-card/label.js +9 -3
  243. package/dist/components/hds/form/radio-card/label.js.map +1 -1
  244. package/dist/components/hds/form/radio-card/types.js +18 -0
  245. package/dist/components/hds/form/radio-card/types.js.map +1 -0
  246. package/dist/components/hds/form/select/base.js +2 -2
  247. package/dist/components/hds/form/select/base.js.map +1 -1
  248. package/dist/components/hds/form/select/field.js +9 -3
  249. package/dist/components/hds/form/select/field.js.map +1 -1
  250. package/dist/components/hds/form/super-select/after-options.js +2 -2
  251. package/dist/components/hds/form/super-select/after-options.js.map +1 -1
  252. package/dist/components/hds/form/super-select/multiple/field.js.map +1 -1
  253. package/dist/components/hds/form/super-select/placeholder.js +2 -2
  254. package/dist/components/hds/form/super-select/placeholder.js.map +1 -1
  255. package/dist/components/hds/form/super-select/single/field.js.map +1 -1
  256. package/dist/components/hds/form/text-input/base.js +8 -5
  257. package/dist/components/hds/form/text-input/base.js.map +1 -1
  258. package/dist/components/hds/form/text-input/field.js +2 -1
  259. package/dist/components/hds/form/text-input/field.js.map +1 -1
  260. package/dist/components/hds/form/text-input/types.js +22 -0
  261. package/dist/components/hds/form/text-input/types.js.map +1 -0
  262. package/dist/components/hds/form/textarea/base.js +2 -2
  263. package/dist/components/hds/form/textarea/base.js.map +1 -1
  264. package/dist/components/hds/form/textarea/field.js +9 -3
  265. package/dist/components/hds/form/textarea/field.js.map +1 -1
  266. package/dist/components/hds/form/toggle/base.js +9 -3
  267. package/dist/components/hds/form/toggle/base.js.map +1 -1
  268. package/dist/components/hds/form/toggle/field.js +9 -3
  269. package/dist/components/hds/form/toggle/field.js.map +1 -1
  270. package/dist/components/hds/form/toggle/group.js +9 -3
  271. package/dist/components/hds/form/toggle/group.js.map +1 -1
  272. package/dist/components/hds/form/visibility-toggle/index.js +9 -3
  273. package/dist/components/hds/form/visibility-toggle/index.js.map +1 -1
  274. package/dist/components/hds/modal/body.js +24 -4
  275. package/dist/components/hds/modal/body.js.map +1 -1
  276. package/dist/components/hds/modal/footer.js +24 -4
  277. package/dist/components/hds/modal/footer.js.map +1 -1
  278. package/dist/components/hds/modal/header.js +24 -4
  279. package/dist/components/hds/modal/header.js.map +1 -1
  280. package/dist/components/hds/modal/index.js +21 -14
  281. package/dist/components/hds/modal/index.js.map +1 -1
  282. package/dist/components/hds/modal/types.js +20 -0
  283. package/dist/components/hds/modal/types.js.map +1 -0
  284. package/dist/components/hds/page-header/actions.js +2 -2
  285. package/dist/components/hds/page-header/actions.js.map +1 -1
  286. package/dist/components/hds/page-header/badges.js +2 -2
  287. package/dist/components/hds/page-header/badges.js.map +1 -1
  288. package/dist/components/hds/page-header/description.js +2 -2
  289. package/dist/components/hds/page-header/description.js.map +1 -1
  290. package/dist/components/hds/page-header/index.js +2 -2
  291. package/dist/components/hds/page-header/index.js.map +1 -1
  292. package/dist/components/hds/page-header/subtitle.js +2 -2
  293. package/dist/components/hds/page-header/subtitle.js.map +1 -1
  294. package/dist/components/hds/page-header/title.js +2 -2
  295. package/dist/components/hds/page-header/title.js.map +1 -1
  296. package/dist/components/hds/pagination/nav/ellipsis.js +2 -2
  297. package/dist/components/hds/pagination/nav/ellipsis.js.map +1 -1
  298. package/dist/components/hds/rich-tooltip/index.js.map +1 -1
  299. package/dist/components/hds/segmented-group/index.js +2 -2
  300. package/dist/components/hds/segmented-group/index.js.map +1 -1
  301. package/dist/components/hds/side-nav/base.js +2 -2
  302. package/dist/components/hds/side-nav/base.js.map +1 -1
  303. package/dist/components/hds/side-nav/header/index.js +2 -2
  304. package/dist/components/hds/side-nav/header/index.js.map +1 -1
  305. package/dist/components/hds/side-nav/list/back-link.js +2 -2
  306. package/dist/components/hds/side-nav/list/back-link.js.map +1 -1
  307. package/dist/components/hds/side-nav/list/index.js +2 -2
  308. package/dist/components/hds/side-nav/list/index.js.map +1 -1
  309. package/dist/components/hds/side-nav/list/item.js +2 -2
  310. package/dist/components/hds/side-nav/list/item.js.map +1 -1
  311. package/dist/components/hds/side-nav/list/link.js +2 -2
  312. package/dist/components/hds/side-nav/list/link.js.map +1 -1
  313. package/dist/components/hds/side-nav/list/title.js +2 -2
  314. package/dist/components/hds/side-nav/list/title.js.map +1 -1
  315. package/dist/components/hds/side-nav/toggle-button.js +2 -2
  316. package/dist/components/hds/side-nav/toggle-button.js.map +1 -1
  317. package/dist/components/hds/toast/index.js +2 -2
  318. package/dist/components/hds/toast/index.js.map +1 -1
  319. package/dist/components/hds/yield/index.js +2 -2
  320. package/dist/components/hds/yield/index.js.map +1 -1
  321. package/dist/components.js +56 -0
  322. package/dist/components.js.map +1 -1
  323. package/dist/instance-initializers/load-sprite.js +33 -0
  324. package/dist/instance-initializers/load-sprite.js.map +1 -0
  325. package/dist/modifiers/hds-clipboard.js.map +1 -1
  326. package/dist/styles/@hashicorp/design-system-components.css +118 -148
  327. package/dist/styles/@hashicorp/design-system-components.scss +1 -0
  328. package/dist/styles/components/dialog-primitive.scss +143 -0
  329. package/dist/styles/components/flyout.scss +8 -70
  330. package/dist/styles/components/form/text-input.scss +6 -2
  331. package/dist/styles/components/modal.scss +18 -84
  332. package/dist/utils/hds-aria-described-by.js +1 -0
  333. package/dist/utils/hds-aria-described-by.js.map +1 -1
  334. package/dist/utils/hds-get-element-id.js +2 -0
  335. package/dist/utils/hds-get-element-id.js.map +1 -1
  336. package/package.json +9 -2
@@ -1 +1 @@
1
- {"version":3,"file":"footer.js","sources":["../../../../src/components/hds/flyout/footer.hbs","../../../../src/components/hds/flyout/footer.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-flyout__footer\\\" ...attributes>\\n {{yield (hash close=@onDismiss)}}\\n</div>\")","import templateOnly from '@ember/component/template-only';\nexport default templateOnly();\n"],"names":["setComponentTemplate","TEMPLATE","templateOnly"],"mappings":";;;;AACA,eAAe,kBAAkB,CAAC,sNAAsN;;ACAxP,aAAAA,oBAAA,CAAAC,QAAA,EAAeC,YAAY,EAAE,CAAA;;;;"}
1
+ {"version":3,"file":"footer.js","sources":["../../../../src/components/hds/flyout/footer.hbs","../../../../src/components/hds/flyout/footer.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n{{!\\n THIS SUBCOMPONENT IS NOW DEPRECATED\\n}}\\n<div class=\\\"hds-flyout__footer\\\" ...attributes>\\n {{yield (hash close=@onDismiss)}}\\n</div>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { deprecate } from '@ember/debug';\n\ninterface HdsFlyoutFooterSignature {\n Args: {\n onDismiss?: (event: MouseEvent) => void;\n };\n Blocks: {\n default: [{ close?: (event: MouseEvent) => void }];\n };\n Element: HTMLDivElement;\n}\n\nexport default class HdsFlyoutFooterComponent extends Component<HdsFlyoutFooterSignature> {\n constructor(owner: unknown, args: HdsFlyoutFooterSignature['Args']) {\n super(owner, args);\n\n deprecate(\n 'The `Hds::Flyout::Footer` sub-component is now deprecated and will be removed in the next major version of `@hashicorp/design-system-components`. Use `Hds::DialogPrimitive::Footer` as one-to-one replacement.',\n false,\n {\n id: 'hds.components.flyout.footer',\n until: '5.0.0',\n url: 'https://helios.hashicorp.design/components/flyout?tab=version%20history#460',\n for: '@hashicorp/design-system-components',\n since: {\n enabled: '4.6.0',\n },\n }\n );\n }\n}\n"],"names":["HdsFlyoutFooterComponent","Component","constructor","owner","args","deprecate","id","until","url","for","since","enabled","setComponentTemplate","TEMPLATE"],"mappings":";;;;;AACA,eAAe,kBAAkB,CAAC,6NAA6N;;ACD/P;AACA;AACA;AACA;;AAee,MAAMA,wBAAwB,SAASC,SAAS,CAA2B;AACxFC,EAAAA,WAAWA,CAACC,KAAc,EAAEC,IAAsC,EAAE;AAClE,IAAA,KAAK,CAACD,KAAK,EAAEC,IAAI,CAAC,CAAA;AAElBC,IAAAA,SAAS,CACP,iNAAiN,EACjN,KAAK,EACL;AACEC,MAAAA,EAAE,EAAE,8BAA8B;AAClCC,MAAAA,KAAK,EAAE,OAAO;AACdC,MAAAA,GAAG,EAAE,6EAA6E;AAClFC,MAAAA,GAAG,EAAE,qCAAqC;AAC1CC,MAAAA,KAAK,EAAE;AACLC,QAAAA,OAAO,EAAE,OAAA;AACX,OAAA;AACF,KACF,CAAC,CAAA;AACH,GAAA;AACF,CAAA;AAACC,oBAAA,CAAAC,QAAA,EAlBoBb,wBAAwB,CAAA;;;;"}
@@ -1,10 +1,30 @@
1
- import templateOnly from '@ember/component/template-only';
1
+ import Component from '@glimmer/component';
2
+ import { deprecate } from '@ember/debug';
2
3
  import { precompileTemplate } from '@ember/template-compilation';
3
4
  import { setComponentTemplate } from '@ember/component';
4
5
 
5
- var TEMPLATE = precompileTemplate("{{! @glint-nocheck: not typesafe yet }}\n{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n<div class=\"hds-flyout__header\" ...attributes>\n {{#if @icon}}\n <FlightIcon class=\"hds-flyout__icon\" @name={{@icon}} @size=\"24\" @isInlineBlock={{false}} />\n {{/if}}\n <Hds::Text::Display class=\"hds-flyout__title\" @tag=\"div\" @size=\"300\" @weight=\"semibold\" id={{@id}}>\n {{#if @tagline}}\n <Hds::Text::Body class=\"hds-flyout__tagline\" @tag=\"div\" @size=\"100\" @weight=\"regular\" @color=\"faint\">\n {{@tagline}}\n </Hds::Text::Body>\n {{/if}}\n {{yield}}\n </Hds::Text::Display>\n <Hds::DismissButton class=\"hds-flyout__dismiss\" {{on \"click\" @onDismiss}} />\n</div>");
6
+ var TEMPLATE = precompileTemplate("{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n{{!\n THIS SUBCOMPONENT IS NOW DEPRECATED\n}}\n<div class=\"hds-flyout__header\" ...attributes>\n {{#if @icon}}\n <FlightIcon class=\"hds-flyout__icon\" @name={{@icon}} @size=\"24\" @isInlineBlock={{false}} />\n {{/if}}\n <Hds::Text::Display class=\"hds-flyout__title\" @tag=\"div\" @size=\"300\" @weight=\"semibold\" id={{@id}}>\n {{#if @tagline}}\n <Hds::Text::Body class=\"hds-flyout__tagline\" @tag=\"div\" @size=\"100\" @weight=\"regular\" @color=\"faint\">\n {{@tagline}}\n </Hds::Text::Body>\n {{/if}}\n {{yield}}\n </Hds::Text::Display>\n <Hds::DismissButton class=\"hds-flyout__dismiss\" {{on \"click\" @onDismiss}} />\n</div>");
6
7
 
7
- var header = setComponentTemplate(TEMPLATE, templateOnly());
8
+ /**
9
+ * Copyright (c) HashiCorp, Inc.
10
+ * SPDX-License-Identifier: MPL-2.0
11
+ */
8
12
 
9
- export { header as default };
13
+ class HdsFlyoutHeaderComponent extends Component {
14
+ constructor(owner, args) {
15
+ super(owner, args);
16
+ deprecate('The `Hds::Flyout::Header` sub-component is now deprecated and will be removed in the next major version of `@hashicorp/design-system-components`. Use `Hds::DialogPrimitive::Header` as one-to-one replacement.', false, {
17
+ id: 'hds.components.flyout.header',
18
+ until: '5.0.0',
19
+ url: 'https://helios.hashicorp.design/components/flyout?tab=version%20history#460',
20
+ for: '@hashicorp/design-system-components',
21
+ since: {
22
+ enabled: '4.6.0'
23
+ }
24
+ });
25
+ }
26
+ }
27
+ setComponentTemplate(TEMPLATE, HdsFlyoutHeaderComponent);
28
+
29
+ export { HdsFlyoutHeaderComponent as default };
10
30
  //# sourceMappingURL=header.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"header.js","sources":["../../../../src/components/hds/flyout/header.hbs","../../../../src/components/hds/flyout/header.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-flyout__header\\\" ...attributes>\\n {{#if @icon}}\\n <FlightIcon class=\\\"hds-flyout__icon\\\" @name={{@icon}} @size=\\\"24\\\" @isInlineBlock={{false}} />\\n {{/if}}\\n <Hds::Text::Display class=\\\"hds-flyout__title\\\" @tag=\\\"div\\\" @size=\\\"300\\\" @weight=\\\"semibold\\\" id={{@id}}>\\n {{#if @tagline}}\\n <Hds::Text::Body class=\\\"hds-flyout__tagline\\\" @tag=\\\"div\\\" @size=\\\"100\\\" @weight=\\\"regular\\\" @color=\\\"faint\\\">\\n {{@tagline}}\\n </Hds::Text::Body>\\n {{/if}}\\n {{yield}}\\n </Hds::Text::Display>\\n <Hds::DismissButton class=\\\"hds-flyout__dismiss\\\" {{on \\\"click\\\" @onDismiss}} />\\n</div>\")","import templateOnly from '@ember/component/template-only';\nexport default templateOnly();\n"],"names":["setComponentTemplate","TEMPLATE","templateOnly"],"mappings":";;;;AACA,eAAe,kBAAkB,CAAC,uuBAAuuB;;ACAzwB,aAAAA,oBAAA,CAAAC,QAAA,EAAeC,YAAY,EAAE,CAAA;;;;"}
1
+ {"version":3,"file":"header.js","sources":["../../../../src/components/hds/flyout/header.hbs","../../../../src/components/hds/flyout/header.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n{{!\\n THIS SUBCOMPONENT IS NOW DEPRECATED\\n}}\\n<div class=\\\"hds-flyout__header\\\" ...attributes>\\n {{#if @icon}}\\n <FlightIcon class=\\\"hds-flyout__icon\\\" @name={{@icon}} @size=\\\"24\\\" @isInlineBlock={{false}} />\\n {{/if}}\\n <Hds::Text::Display class=\\\"hds-flyout__title\\\" @tag=\\\"div\\\" @size=\\\"300\\\" @weight=\\\"semibold\\\" id={{@id}}>\\n {{#if @tagline}}\\n <Hds::Text::Body class=\\\"hds-flyout__tagline\\\" @tag=\\\"div\\\" @size=\\\"100\\\" @weight=\\\"regular\\\" @color=\\\"faint\\\">\\n {{@tagline}}\\n </Hds::Text::Body>\\n {{/if}}\\n {{yield}}\\n </Hds::Text::Display>\\n <Hds::DismissButton class=\\\"hds-flyout__dismiss\\\" {{on \\\"click\\\" @onDismiss}} />\\n</div>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport { deprecate } from '@ember/debug';\nimport type { FlightIconSignature } from '@hashicorp/ember-flight-icons/components/flight-icon';\n\nexport interface HdsFlyoutHeaderSignature {\n Args: {\n id?: string;\n tagline?: string;\n onDismiss: (event: MouseEvent) => void;\n icon?: FlightIconSignature['Args']['name'] | false;\n };\n Blocks: {\n default: [];\n };\n Element: HTMLDivElement;\n}\n\nexport default class HdsFlyoutHeaderComponent extends Component<HdsFlyoutHeaderSignature> {\n constructor(owner: unknown, args: HdsFlyoutHeaderSignature['Args']) {\n super(owner, args);\n\n deprecate(\n 'The `Hds::Flyout::Header` sub-component is now deprecated and will be removed in the next major version of `@hashicorp/design-system-components`. Use `Hds::DialogPrimitive::Header` as one-to-one replacement.',\n false,\n {\n id: 'hds.components.flyout.header',\n until: '5.0.0',\n url: 'https://helios.hashicorp.design/components/flyout?tab=version%20history#460',\n for: '@hashicorp/design-system-components',\n since: {\n enabled: '4.6.0',\n },\n }\n );\n }\n}\n"],"names":["HdsFlyoutHeaderComponent","Component","constructor","owner","args","deprecate","id","until","url","for","since","enabled","setComponentTemplate","TEMPLATE"],"mappings":";;;;;AACA,eAAe,kBAAkB,CAAC,8uBAA8uB;;ACDhxB;AACA;AACA;AACA;;AAmBe,MAAMA,wBAAwB,SAASC,SAAS,CAA2B;AACxFC,EAAAA,WAAWA,CAACC,KAAc,EAAEC,IAAsC,EAAE;AAClE,IAAA,KAAK,CAACD,KAAK,EAAEC,IAAI,CAAC,CAAA;AAElBC,IAAAA,SAAS,CACP,iNAAiN,EACjN,KAAK,EACL;AACEC,MAAAA,EAAE,EAAE,8BAA8B;AAClCC,MAAAA,KAAK,EAAE,OAAO;AACdC,MAAAA,GAAG,EAAE,6EAA6E;AAClFC,MAAAA,GAAG,EAAE,qCAAqC;AAC1CC,MAAAA,KAAK,EAAE;AACLC,QAAAA,OAAO,EAAE,OAAA;AACX,OAAA;AACF,KACF,CAAC,CAAA;AACH,GAAA;AACF,CAAA;AAACC,oBAAA,CAAAC,QAAA,EAlBoBb,wBAAwB,CAAA;;;;"}
@@ -1,24 +1,32 @@
1
- import { _ as _applyDecoratedDescriptor, b as _initializerDefineProperty } from '../../../_rollupPluginBabelHelpers-KIi_qCIU.js';
1
+ import { _ as _applyDecoratedDescriptor, b as _initializerDefineProperty, a as _defineProperty } from '../../../_rollupPluginBabelHelpers-KIi_qCIU.js';
2
2
  import Component from '@glimmer/component';
3
3
  import { tracked } from '@glimmer/tracking';
4
4
  import { action } from '@ember/object';
5
5
  import { assert } from '@ember/debug';
6
6
  import { getElementId } from '../../../utils/hds-get-element-id.js';
7
7
  import { buildWaiter } from '@ember/test-waiters';
8
+ import { HdsFlyoutSizesValues } from './types.js';
9
+ import '../dialog-primitive/body.js';
10
+ import '../dialog-primitive/description.js';
11
+ import '../dialog-primitive/footer.js';
12
+ import '../dialog-primitive/header.js';
8
13
  import { precompileTemplate } from '@ember/template-compilation';
9
14
  import { setComponentTemplate } from '@ember/component';
10
15
 
11
- var TEMPLATE = 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/flyout/header\" id=this.id onDismiss=this.onDismiss))}}\n {{yield (hash Description=(component \"hds/flyout/description\"))}}\n {{yield (hash Body=(component \"hds/flyout/body\"))}}\n {{yield (hash Footer=(component \"hds/flyout/footer\" onDismiss=this.onDismiss))}}\n</dialog>\n{{#if this.isOpen}}\n <div class=\"hds-flyout__overlay\"></div>\n{{/if}}");
16
+ var TEMPLATE = precompileTemplate("{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n<Hds::DialogPrimitive::Wrapper\n class={{this.classNames}}\n ...attributes\n aria-labelledby={{this.id}}\n {{did-insert this.didInsert}}\n {{will-destroy this.willDestroyNode}}\n {{! @glint-expect-error - https://github.com/josemarluedke/ember-focus-trap/issues/86 }}\n {{focus-trap isActive=this.isOpen focusTrapOptions=(hash onDeactivate=this.onDismiss clickOutsideDeactivates=true)}}\n>\n <:header>\n {{yield\n (hash\n Header=(component\n \"hds/dialog-primitive/header\" id=this.id onDismiss=this.onDismiss contextualClassPrefix=\"hds-flyout\"\n )\n Description=(component \"hds/dialog-primitive/description\" contextualClass=\"hds-flyout__description\")\n )\n }}\n </:header>\n <:body>\n {{yield (hash Body=(component \"hds/dialog-primitive/body\" contextualClass=\"hds-flyout__body\"))}}\n </:body>\n <:footer>\n {{yield\n (hash\n Footer=(component \"hds/dialog-primitive/footer\" onDismiss=this.onDismiss contextualClass=\"hds-flyout__footer\")\n )\n }}\n </:footer>\n</Hds::DialogPrimitive::Wrapper>\n\n{{#if this.isOpen}}\n <Hds::DialogPrimitive::Overlay @contextualClass=\"hds-flyout__overlay\" />\n{{/if}}");
12
17
 
13
18
  var _class, _descriptor;
14
- let waiter = buildWaiter('@hashicorp/design-system-components:flyout');
15
- const DEFAULT_SIZE = 'medium';
19
+ const waiter = buildWaiter('@hashicorp/design-system-components:flyout');
20
+ const DEFAULT_SIZE = HdsFlyoutSizesValues.Medium;
16
21
  const DEFAULT_HAS_OVERLAY = true;
17
- const SIZES = ['medium', 'large'];
22
+ const SIZES = Object.values(HdsFlyoutSizesValues);
18
23
  let HdsFlyoutIndexComponent = (_class = class HdsFlyoutIndexComponent extends Component {
19
24
  constructor(...args) {
20
25
  super(...args);
21
26
  _initializerDefineProperty(this, "isOpen", _descriptor, this);
27
+ _defineProperty(this, "element", void 0);
28
+ _defineProperty(this, "body", void 0);
29
+ _defineProperty(this, "bodyInitialOverflowValue", '');
22
30
  }
23
31
  /**
24
32
  * Sets the size of the flyout
@@ -29,7 +37,7 @@ let HdsFlyoutIndexComponent = (_class = class HdsFlyoutIndexComponent extends Co
29
37
  * @default 'medium'
30
38
  */
31
39
  get size() {
32
- let {
40
+ const {
33
41
  size = DEFAULT_SIZE
34
42
  } = this.args;
35
43
  assert(`@size for "Hds::Flyout" must be one of the following: ${SIZES.join(', ')}; received: ${size}`, SIZES.includes(size));
@@ -49,15 +57,15 @@ let HdsFlyoutIndexComponent = (_class = class HdsFlyoutIndexComponent extends Co
49
57
  * @return {string} The "class" attribute to apply to the component.
50
58
  */
51
59
  get classNames() {
52
- let classes = ['hds-flyout'];
60
+ const classes = ['hds-flyout'];
53
61
 
54
62
  // add a class based on the @size argument
55
63
  classes.push(`hds-flyout--size-${this.size}`);
56
64
  return classes.join(' ');
57
65
  }
58
- registerOnCloseCallback() {
66
+ registerOnCloseCallback(event) {
59
67
  if (this.args.onClose && typeof this.args.onClose === 'function') {
60
- this.args.onClose();
68
+ this.args.onClose(event);
61
69
  }
62
70
  this.isOpen = false;
63
71
  }
@@ -101,8 +109,8 @@ let HdsFlyoutIndexComponent = (_class = class HdsFlyoutIndexComponent extends Co
101
109
  // when using `click` or other helpers from '@ember/test-helpers'
102
110
  // Notice: this code will get stripped out in production builds (DEBUG evaluates to `true` in dev/test builds, but `false` in prod builds)
103
111
  if (this.element.open) {
104
- let token = waiter.beginAsync();
105
- let listener = () => {
112
+ const token = waiter.beginAsync();
113
+ const listener = () => {
106
114
  waiter.endAsync(token);
107
115
  this.element.removeEventListener('close', listener);
108
116
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/components/hds/flyout/index.hbs","../../../../src/components/hds/flyout/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/flyout/header\\\" id=this.id onDismiss=this.onDismiss))}}\\n {{yield (hash Description=(component \\\"hds/flyout/description\\\"))}}\\n {{yield (hash Body=(component \\\"hds/flyout/body\\\"))}}\\n {{yield (hash Footer=(component \\\"hds/flyout/footer\\\" onDismiss=this.onDismiss))}}\\n</dialog>\\n{{#if this.isOpen}}\\n <div class=\\\"hds-flyout__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.js';\nimport { buildWaiter } from '@ember/test-waiters';\n\nlet waiter = buildWaiter('@hashicorp/design-system-components:flyout');\n\nexport const DEFAULT_SIZE = 'medium';\nexport const DEFAULT_HAS_OVERLAY = true;\nexport const SIZES = ['medium', 'large'];\n\nexport default class HdsFlyoutIndexComponent extends Component {\n @tracked isOpen = false;\n\n /**\n * Sets the size of the flyout\n * Accepted values: 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::Flyout\" 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 * 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-flyout'];\n\n // add a class based on the @size argument\n classes.push(`hds-flyout--size-${this.size}`);\n\n return classes.join(' ');\n }\n\n @action registerOnCloseCallback() {\n if (this.args.onClose && typeof this.args.onClose === 'function') {\n this.args.onClose();\n }\n\n this.isOpen = false;\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 flyout 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 flyout 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 flyout 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_HAS_OVERLAY","SIZES","HdsFlyoutIndexComponent","_class","Component","constructor","args","_initializerDefineProperty","_descriptor","size","assert","join","includes","id","getElementId","classNames","classes","push","registerOnCloseCallback","onClose","isOpen","didInsert","element","body","document","bodyInitialOverflowValue","style","getPropertyValue","addEventListener","open","willDestroyNode","removeEventListener","showModal","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/flyout/index.hbs","../../../../src/components/hds/flyout/index.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n<Hds::DialogPrimitive::Wrapper\\n class={{this.classNames}}\\n ...attributes\\n aria-labelledby={{this.id}}\\n {{did-insert this.didInsert}}\\n {{will-destroy this.willDestroyNode}}\\n {{! @glint-expect-error - https://github.com/josemarluedke/ember-focus-trap/issues/86 }}\\n {{focus-trap isActive=this.isOpen focusTrapOptions=(hash onDeactivate=this.onDismiss clickOutsideDeactivates=true)}}\\n>\\n <:header>\\n {{yield\\n (hash\\n Header=(component\\n \\\"hds/dialog-primitive/header\\\" id=this.id onDismiss=this.onDismiss contextualClassPrefix=\\\"hds-flyout\\\"\\n )\\n Description=(component \\\"hds/dialog-primitive/description\\\" contextualClass=\\\"hds-flyout__description\\\")\\n )\\n }}\\n </:header>\\n <:body>\\n {{yield (hash Body=(component \\\"hds/dialog-primitive/body\\\" contextualClass=\\\"hds-flyout__body\\\"))}}\\n </:body>\\n <:footer>\\n {{yield\\n (hash\\n Footer=(component \\\"hds/dialog-primitive/footer\\\" onDismiss=this.onDismiss contextualClass=\\\"hds-flyout__footer\\\")\\n )\\n }}\\n </:footer>\\n</Hds::DialogPrimitive::Wrapper>\\n\\n{{#if this.isOpen}}\\n <Hds::DialogPrimitive::Overlay @contextualClass=\\\"hds-flyout__overlay\\\" />\\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.ts';\nimport { buildWaiter } from '@ember/test-waiters';\nimport type { WithBoundArgs } from '@glint/template';\n\nimport type { HdsFlyoutSizes } from './types.ts';\n\nimport { HdsFlyoutSizesValues } from './types.ts';\nimport HdsDialogPrimitiveBodyComponent from '../dialog-primitive/body.ts';\nimport HdsDialogPrimitiveDescriptionComponent from '../dialog-primitive/description.ts';\nimport HdsDialogPrimitiveFooterComponent from '../dialog-primitive/footer.ts';\nimport HdsDialogPrimitiveHeaderComponent from '../dialog-primitive/header.ts';\n\nconst waiter = buildWaiter('@hashicorp/design-system-components:flyout');\n\nexport const DEFAULT_SIZE = HdsFlyoutSizesValues.Medium;\nexport const DEFAULT_HAS_OVERLAY = true;\nexport const SIZES: string[] = Object.values(HdsFlyoutSizesValues);\n\nexport interface HdsFlyoutIndexSignature {\n Args: {\n isDismissDisabled?: boolean;\n size?: HdsFlyoutSizes;\n onOpen?: () => void;\n onClose?: (event: Event) => void;\n };\n Blocks: {\n default: [\n {\n Header?: WithBoundArgs<\n typeof HdsDialogPrimitiveHeaderComponent,\n 'id' | 'onDismiss' | 'contextualClassPrefix'\n >;\n Description?: WithBoundArgs<\n typeof HdsDialogPrimitiveDescriptionComponent,\n 'contextualClass'\n >;\n Body?: WithBoundArgs<\n typeof HdsDialogPrimitiveBodyComponent,\n 'contextualClass'\n >;\n Footer?: WithBoundArgs<\n typeof HdsDialogPrimitiveFooterComponent,\n 'onDismiss' | 'contextualClass'\n >;\n },\n ];\n };\n Element: HTMLDialogElement;\n}\n\nexport default class HdsFlyoutIndexComponent extends Component<HdsFlyoutIndexSignature> {\n @tracked isOpen = false;\n element!: HTMLDialogElement;\n body!: HTMLElement;\n bodyInitialOverflowValue = '';\n\n /**\n * Sets the size of the flyout\n * Accepted values: medium, large\n *\n * @param size\n * @type {string}\n * @default 'medium'\n */\n get size(): HdsFlyoutSizes {\n const { size = DEFAULT_SIZE } = this.args;\n\n assert(\n `@size for \"Hds::Flyout\" 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 * 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 const classes = ['hds-flyout'];\n\n // add a class based on the @size argument\n classes.push(`hds-flyout--size-${this.size}`);\n\n return classes.join(' ');\n }\n\n @action registerOnCloseCallback(event: Event) {\n if (this.args.onClose && typeof this.args.onClose === 'function') {\n this.args.onClose(event);\n }\n\n this.isOpen = false;\n }\n\n @action\n didInsert(element: HTMLDialogElement) {\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 flyout 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 flyout 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 const token = waiter.beginAsync();\n const listener = () => {\n waiter.endAsync(token);\n this.element.removeEventListener('close', listener);\n };\n this.element.addEventListener('close', listener);\n }\n\n // Make flyout 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","HdsFlyoutSizesValues","Medium","DEFAULT_HAS_OVERLAY","SIZES","Object","values","HdsFlyoutIndexComponent","_class","Component","constructor","args","_initializerDefineProperty","_descriptor","_defineProperty","size","assert","join","includes","id","getElementId","classNames","classes","push","registerOnCloseCallback","event","onClose","isOpen","didInsert","element","body","document","bodyInitialOverflowValue","style","getPropertyValue","addEventListener","open","willDestroyNode","removeEventListener","showModal","setProperty","onOpen","onDismiss","token","beginAsync","listener","endAsync","close","removeProperty","length","removeAttribute","_applyDecoratedDescriptor","prototype","tracked","configurable","enumerable","writable","initializer","action","getOwnPropertyDescriptor","setComponentTemplate","TEMPLATE"],"mappings":";;;;;;;;;;;;;;;AACA,eAAe,kBAAkB,CAAC,iwCAAiwC;;;ACoBnyC,MAAMA,MAAM,GAAGC,WAAW,CAAC,4CAA4C,CAAC,CAAA;AAE3DC,MAAAA,YAAY,GAAGC,oBAAoB,CAACC,OAAM;AAChD,MAAMC,mBAAmB,GAAG,KAAI;AAChC,MAAMC,KAAe,GAAGC,MAAM,CAACC,MAAM,CAACL,oBAAoB,EAAC;AAkC7CM,IAAAA,uBAAuB,IAAAC,MAAA,GAA7B,MAAMD,uBAAuB,SAASE,SAAS,CAA0B;AAAAC,EAAAA,WAAAA,CAAA,GAAAC,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAAA,IAAA,CAAA,CAAA;AAAAC,IAAAA,0BAAA,iBAAAC,WAAA,EAAA,IAAA,CAAA,CAAA;IAAAC,eAAA,CAAA,IAAA,EAAA,SAAA,EAAA,KAAA,CAAA,CAAA,CAAA;IAAAA,eAAA,CAAA,IAAA,EAAA,MAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAAAA,IAAAA,eAAA,mCAI3D,EAAE,CAAA,CAAA;AAAA,GAAA;AAE7B;AACF;AACA;AACA;AACA;AACA;AACA;AACA;EACE,IAAIC,IAAIA,GAAmB;IACzB,MAAM;AAAEA,MAAAA,IAAI,GAAGf,YAAAA;KAAc,GAAG,IAAI,CAACW,IAAI,CAAA;AAEzCK,IAAAA,MAAM,CACJ,CAAyDZ,sDAAAA,EAAAA,KAAK,CAACa,IAAI,CACjE,IACF,CAAC,CAAA,YAAA,EAAeF,IAAI,CAAA,CAAE,EACtBX,KAAK,CAACc,QAAQ,CAACH,IAAI,CACrB,CAAC,CAAA;AAED,IAAA,OAAOA,IAAI,CAAA;AACb,GAAA;;AAEA;AACF;AACA;EACE,IAAII,EAAEA,GAAG;IACP,OAAOC,YAAY,CAAC,IAAI,CAAC,CAAA;AAC3B,GAAA;;AAEA;AACF;AACA;AACA;AACA;EACE,IAAIC,UAAUA,GAAG;AACf,IAAA,MAAMC,OAAO,GAAG,CAAC,YAAY,CAAC,CAAA;;AAE9B;IACAA,OAAO,CAACC,IAAI,CAAC,CAAA,iBAAA,EAAoB,IAAI,CAACR,IAAI,EAAE,CAAC,CAAA;AAE7C,IAAA,OAAOO,OAAO,CAACL,IAAI,CAAC,GAAG,CAAC,CAAA;AAC1B,GAAA;EAEQO,uBAAuBA,CAACC,KAAY,EAAE;AAC5C,IAAA,IAAI,IAAI,CAACd,IAAI,CAACe,OAAO,IAAI,OAAO,IAAI,CAACf,IAAI,CAACe,OAAO,KAAK,UAAU,EAAE;AAChE,MAAA,IAAI,CAACf,IAAI,CAACe,OAAO,CAACD,KAAK,CAAC,CAAA;AAC1B,KAAA;IAEA,IAAI,CAACE,MAAM,GAAG,KAAK,CAAA;AACrB,GAAA;EAGAC,SAASA,CAACC,OAA0B,EAAE;AACpC;IACA,IAAI,CAACA,OAAO,GAAGA,OAAO,CAAA;AACtB,IAAA,IAAI,CAACC,IAAI,GAAGC,QAAQ,CAACD,IAAI,CAAA;IAEzB,IAAI,IAAI,CAACA,IAAI,EAAE;AACb;AACA,MAAA,IAAI,CAACE,wBAAwB,GAC3B,IAAI,CAACF,IAAI,CAACG,KAAK,CAACC,gBAAgB,CAAC,UAAU,CAAC,CAAA;AAChD,KAAA;;AAEA;AACA,IAAA,IAAI,CAACL,OAAO,CAACM,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAACX,uBAAuB,EAAE,IAAI,CAAC,CAAA;;AAE1E;AACA,IAAA,IAAI,CAAC,IAAI,CAACK,OAAO,CAACO,IAAI,EAAE;MACtB,IAAI,CAACA,IAAI,EAAE,CAAA;AACb,KAAA;AACF,GAAA;AAGAC,EAAAA,eAAeA,GAAG;IAChB,IAAI,IAAI,CAACR,OAAO,EAAE;AAChB,MAAA,IAAI,CAACA,OAAO,CAACS,mBAAmB,CAC9B,OAAO,EACP,IAAI,CAACd,uBAAuB,EAC5B,IACF,CAAC,CAAA;AACH,KAAA;AACF,GAAA;AAGAY,EAAAA,IAAIA,GAAG;AACL;AACA,IAAA,IAAI,CAACP,OAAO,CAACU,SAAS,EAAE,CAAA;IACxB,IAAI,CAACZ,MAAM,GAAG,IAAI,CAAA;;AAElB;AACA,IAAA,IAAI,IAAI,CAACG,IAAI,EAAE,IAAI,CAACA,IAAI,CAACG,KAAK,CAACO,WAAW,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;;AAEhE;AACA,IAAA,IAAI,IAAI,CAAC7B,IAAI,CAAC8B,MAAM,IAAI,OAAO,IAAI,CAAC9B,IAAI,CAAC8B,MAAM,KAAK,UAAU,EAAE;AAC9D,MAAA,IAAI,CAAC9B,IAAI,CAAC8B,MAAM,EAAE,CAAA;AACpB,KAAA;AACF,GAAA;EAEA,MACMC,SAASA,GAAG;AAChB;AACA;AACA;AACA,IAAA,IAAI,IAAI,CAACb,OAAO,CAACO,IAAI,EAAE;AACrB,MAAA,MAAMO,KAAK,GAAG7C,MAAM,CAAC8C,UAAU,EAAE,CAAA;MACjC,MAAMC,QAAQ,GAAGA,MAAM;AACrB/C,QAAAA,MAAM,CAACgD,QAAQ,CAACH,KAAK,CAAC,CAAA;QACtB,IAAI,CAACd,OAAO,CAACS,mBAAmB,CAAC,OAAO,EAAEO,QAAQ,CAAC,CAAA;OACpD,CAAA;MACD,IAAI,CAAChB,OAAO,CAACM,gBAAgB,CAAC,OAAO,EAAEU,QAAQ,CAAC,CAAA;AAClD,KAAA;;AAEA;AACA,IAAA,IAAI,CAAChB,OAAO,CAACkB,KAAK,EAAE,CAAA;;AAEpB;IACA,IAAI,IAAI,CAACjB,IAAI,EAAE;MACb,IAAI,CAACA,IAAI,CAACG,KAAK,CAACe,cAAc,CAAC,UAAU,CAAC,CAAA;AAC1C,MAAA,IAAI,IAAI,CAAChB,wBAAwB,KAAK,EAAE,EAAE;QACxC,IAAI,IAAI,CAACF,IAAI,CAACG,KAAK,CAACgB,MAAM,KAAK,CAAC,EAAE;AAChC,UAAA,IAAI,CAACnB,IAAI,CAACoB,eAAe,CAAC,OAAO,CAAC,CAAA;AACpC,SAAA;AACF,OAAC,MAAM;AACL,QAAA,IAAI,CAACpB,IAAI,CAACG,KAAK,CAACO,WAAW,CAAC,UAAU,EAAE,IAAI,CAACR,wBAAwB,CAAC,CAAA;AACxE,OAAA;AACF,KAAA;AACF,GAAA;AACF,CAAC,GAAAnB,WAAA,GAAAsC,yBAAA,CAAA3C,MAAA,CAAA4C,SAAA,EAAA,QAAA,EAAA,CAnIEC,OAAO,CAAA,EAAA;EAAAC,YAAA,EAAA,IAAA;EAAAC,UAAA,EAAA,IAAA;EAAAC,QAAA,EAAA,IAAA;AAAAC,EAAAA,WAAA,cAAA;AAAA,IAAA,OAAU,KAAK,CAAA;AAAA,GAAA;AAAA,CAAAN,CAAAA,EAAAA,yBAAA,CAAA3C,MAAA,CAAA4C,SAAA,EA+CtBM,yBAAAA,EAAAA,CAAAA,MAAM,CAAArD,EAAAA,MAAA,CAAAsD,wBAAA,CAAAnD,MAAA,CAAA4C,SAAA,EAAA5C,yBAAAA,CAAAA,EAAAA,MAAA,CAAA4C,SAAA,CAAA,EAAAD,yBAAA,CAAA3C,MAAA,CAAA4C,SAAA,EAQNM,WAAAA,EAAAA,CAAAA,MAAM,GAAArD,MAAA,CAAAsD,wBAAA,CAAAnD,MAAA,CAAA4C,SAAA,EAAA5C,WAAAA,CAAAA,EAAAA,MAAA,CAAA4C,SAAA,CAAA,EAAAD,yBAAA,CAAA3C,MAAA,CAAA4C,SAAA,EAAA,iBAAA,EAAA,CAqBNM,MAAM,CAAA,EAAArD,MAAA,CAAAsD,wBAAA,CAAAnD,MAAA,CAAA4C,SAAA,EAAA,iBAAA,CAAA,EAAA5C,MAAA,CAAA4C,SAAA,CAAAD,EAAAA,yBAAA,CAAA3C,MAAA,CAAA4C,SAAA,EAAA,MAAA,EAAA,CAWNM,MAAM,CAAArD,EAAAA,MAAA,CAAAsD,wBAAA,CAAAnD,MAAA,CAAA4C,SAAA,EAAA,MAAA,CAAA,EAAA5C,MAAA,CAAA4C,SAAA,GAAAD,yBAAA,CAAA3C,MAAA,CAAA4C,SAAA,EAeNM,WAAAA,EAAAA,CAAAA,MAAM,CAAArD,EAAAA,MAAA,CAAAsD,wBAAA,CAAAnD,MAAA,CAAA4C,SAAA,gBAAA5C,MAAA,CAAA4C,SAAA,CAAA,GAAA5C,MAAA,EAAA;AAvGmCoD,oBAAA,CAAAC,QAAA,EAAvBtD,uBAAuB,CAAA;;;;"}
@@ -0,0 +1,8 @@
1
+ let HdsFlyoutSizesValues = /*#__PURE__*/function (HdsFlyoutSizesValues) {
2
+ HdsFlyoutSizesValues["Medium"] = "medium";
3
+ HdsFlyoutSizesValues["Large"] = "large";
4
+ return HdsFlyoutSizesValues;
5
+ }({});
6
+
7
+ export { HdsFlyoutSizesValues };
8
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sources":["../../../../src/components/hds/flyout/types.ts"],"sourcesContent":["export enum HdsFlyoutSizesValues {\n Medium = 'medium',\n Large = 'large',\n}\n\nexport type HdsFlyoutSizes = `${HdsFlyoutSizesValues}`;\n"],"names":["HdsFlyoutSizesValues"],"mappings":"AAAYA,IAAAA,oBAAoB,0BAApBA,oBAAoB,EAAA;EAApBA,oBAAoB,CAAA,QAAA,CAAA,GAAA,QAAA,CAAA;EAApBA,oBAAoB,CAAA,OAAA,CAAA,GAAA,OAAA,CAAA;AAAA,EAAA,OAApBA,oBAAoB,CAAA;AAAA,CAAA,CAAA,EAAA;;;;"}
@@ -2,7 +2,7 @@ import Component from '@glimmer/component';
2
2
  import { precompileTemplate } from '@ember/template-compilation';
3
3
  import { setComponentTemplate } from '@ember/component';
4
4
 
5
- var TEMPLATE = precompileTemplate("{{! @glint-nocheck: not typesafe yet }}\n{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n<Hds::Text::Body\n @tag=\"div\"\n @size=\"100\"\n class={{this.classNames}}\n id={{this.id}}\n {{did-insert this.onInsert}}\n ...attributes\n aria-live=\"polite\"\n>\n {{#if (has-block)}}\n {{yield\n (hash\n minLength=this.minLength\n maxLength=this.maxLength\n currentLength=this.currentLength\n remaining=this.remaining\n shortfall=this.shortfall\n )\n }}\n {{else}}\n {{this.message}}\n {{/if}}\n</Hds::Text::Body>");
5
+ var TEMPLATE = precompileTemplate("{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n<Hds::Text::Body\n @tag=\"div\"\n @size=\"100\"\n class={{this.classNames}}\n id={{this.id}}\n {{did-insert this.onInsert}}\n ...attributes\n aria-live=\"polite\"\n>\n {{#if (has-block)}}\n {{yield\n (hash\n minLength=this.minLength\n maxLength=this.maxLength\n currentLength=this.currentLength\n remaining=this.remaining\n shortfall=this.shortfall\n )\n }}\n {{else}}\n {{this.message}}\n {{/if}}\n</Hds::Text::Body>");
6
6
 
7
7
  /**
8
8
  * Copyright (c) HashiCorp, Inc.
@@ -11,17 +11,17 @@ var TEMPLATE = precompileTemplate("{{! @glint-nocheck: not typesafe yet }}\n{{!\
11
11
 
12
12
  const ID_PREFIX = 'character-count-';
13
13
  const NOOP = () => {};
14
- class HdsFormCharacterCountIndexComponent extends Component {
14
+ class HdsFormCharacterCountComponent extends Component {
15
15
  // The current number of characters in @value
16
16
  get currentLength() {
17
- let {
17
+ const {
18
18
  value
19
19
  } = this.args;
20
20
  return value ? value.length : 0;
21
21
  }
22
22
 
23
23
  // Inflector utility function to determine plural or singular for 'character' noun
24
- pluralize(count, prefix = '', noun = 'character', suffix = 's') {
24
+ _pluralize(count, prefix = '', noun = 'character', suffix = 's') {
25
25
  return `${count}${prefix ? ' ' + prefix : ''} ${noun}${count !== 1 ? suffix : ''}`;
26
26
  }
27
27
 
@@ -32,10 +32,12 @@ class HdsFormCharacterCountIndexComponent extends Component {
32
32
  * @description The maximum number of characters allowed.
33
33
  */
34
34
  get maxLength() {
35
- let {
35
+ const {
36
36
  maxLength
37
37
  } = this.args;
38
- return parseInt(maxLength);
38
+ if (maxLength) {
39
+ return typeof maxLength === 'number' ? maxLength : parseInt(maxLength);
40
+ }
39
41
  }
40
42
 
41
43
  /**
@@ -45,10 +47,12 @@ class HdsFormCharacterCountIndexComponent extends Component {
45
47
  * @description The minimum number of characters allowed.
46
48
  */
47
49
  get minLength() {
48
- let {
50
+ const {
49
51
  minLength
50
52
  } = this.args;
51
- return parseInt(minLength);
53
+ if (minLength) {
54
+ return typeof minLength === 'number' ? minLength : parseInt(minLength);
55
+ }
52
56
  }
53
57
 
54
58
  /**
@@ -58,7 +62,7 @@ class HdsFormCharacterCountIndexComponent extends Component {
58
62
  * @description The remaining number of characters.
59
63
  */
60
64
  get remaining() {
61
- return this.maxLength - this.currentLength;
65
+ return this.maxLength ? this.maxLength - this.currentLength : undefined;
62
66
  }
63
67
 
64
68
  /**
@@ -68,7 +72,7 @@ class HdsFormCharacterCountIndexComponent extends Component {
68
72
  * @description The number of characters the content is falling short of.
69
73
  */
70
74
  get shortfall() {
71
- return this.minLength - this.currentLength;
75
+ return this.minLength ? this.minLength - this.currentLength : undefined;
72
76
  }
73
77
 
74
78
  /**
@@ -80,17 +84,17 @@ class HdsFormCharacterCountIndexComponent extends Component {
80
84
  get message() {
81
85
  let messageText = '';
82
86
  if (this.minLength && this.currentLength === 0) {
83
- messageText = `${this.pluralize(this.minLength)} required`;
87
+ messageText = `${this._pluralize(this.minLength)} required`;
84
88
  } else if (this.minLength && this.currentLength < this.minLength) {
85
- messageText = `${this.pluralize(this.shortfall, 'more')} required`;
89
+ messageText = `${this._pluralize(this.shortfall, 'more')} required`;
86
90
  } else if (this.maxLength && this.currentLength === 0) {
87
- messageText = `${this.pluralize(this.maxLength)} allowed`;
91
+ messageText = `${this._pluralize(this.maxLength)} allowed`;
88
92
  } else if (this.maxLength && this.currentLength <= this.maxLength) {
89
- messageText = `${this.pluralize(this.remaining)} remaining`;
90
- } else if (this.currentLength > this.maxLength) {
91
- messageText = `Exceeded by ${this.pluralize(-this.remaining)}`;
93
+ messageText = `${this._pluralize(this.remaining)} remaining`;
94
+ } else if (this.maxLength && this.remaining && this.currentLength > this.maxLength) {
95
+ messageText = `Exceeded by ${this._pluralize(-this.remaining)}`;
92
96
  } else {
93
- messageText = `${this.pluralize(this.currentLength)} entered`;
97
+ messageText = `${this._pluralize(this.currentLength)} entered`;
94
98
  }
95
99
  return messageText;
96
100
  }
@@ -101,7 +105,7 @@ class HdsFormCharacterCountIndexComponent extends Component {
101
105
  * @return {(string|null)} The "id" attribute to apply to the element or null, if no controlId is provided
102
106
  */
103
107
  get id() {
104
- let {
108
+ const {
105
109
  controlId
106
110
  } = this.args;
107
111
  if (controlId) {
@@ -115,8 +119,9 @@ class HdsFormCharacterCountIndexComponent extends Component {
115
119
  * @type {function}
116
120
  * @default () => {}
117
121
  */
122
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
118
123
  get onInsert() {
119
- let {
124
+ const {
120
125
  onInsert
121
126
  } = this.args;
122
127
  // notice: this is a guard used to prevent triggering an error when the component is used as standalone element
@@ -132,7 +137,7 @@ class HdsFormCharacterCountIndexComponent extends Component {
132
137
  * @return {string} The "class" attribute to apply to the component.
133
138
  */
134
139
  get classNames() {
135
- let classes = ['hds-form-character-count'];
140
+ const classes = ['hds-form-character-count'];
136
141
 
137
142
  // add a class based on the @contextualClass argument
138
143
  // notice: this will *not* be documented for public use
@@ -143,7 +148,7 @@ class HdsFormCharacterCountIndexComponent extends Component {
143
148
  return classes.join(' ');
144
149
  }
145
150
  }
146
- setComponentTemplate(TEMPLATE, HdsFormCharacterCountIndexComponent);
151
+ setComponentTemplate(TEMPLATE, HdsFormCharacterCountComponent);
147
152
 
148
- export { HdsFormCharacterCountIndexComponent as default };
153
+ export { HdsFormCharacterCountComponent as default };
149
154
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../src/components/hds/form/character-count/index.hbs","../../../../../src/components/hds/form/character-count/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<Hds::Text::Body\\n @tag=\\\"div\\\"\\n @size=\\\"100\\\"\\n class={{this.classNames}}\\n id={{this.id}}\\n {{did-insert this.onInsert}}\\n ...attributes\\n aria-live=\\\"polite\\\"\\n>\\n {{#if (has-block)}}\\n {{yield\\n (hash\\n minLength=this.minLength\\n maxLength=this.maxLength\\n currentLength=this.currentLength\\n remaining=this.remaining\\n shortfall=this.shortfall\\n )\\n }}\\n {{else}}\\n {{this.message}}\\n {{/if}}\\n</Hds::Text::Body>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\n\nconst ID_PREFIX = 'character-count-';\nconst NOOP = () => {};\n\nexport default class HdsFormCharacterCountIndexComponent extends Component {\n // The current number of characters in @value\n get currentLength() {\n let { value } = this.args;\n return value ? value.length : 0;\n }\n\n // Inflector utility function to determine plural or singular for 'character' noun\n pluralize(count, prefix = '', noun = 'character', suffix = 's') {\n return `${count}${prefix ? ' ' + prefix : ''} ${noun}${\n count !== 1 ? suffix : ''\n }`;\n }\n\n /**\n * @param maxLength\n * @type {number}\n * @default null\n * @description The maximum number of characters allowed.\n */\n get maxLength() {\n let { maxLength } = this.args;\n return parseInt(maxLength);\n }\n\n /**\n * @param minLength\n * @type {number}\n * @default null\n * @description The minimum number of characters allowed.\n */\n get minLength() {\n let { minLength } = this.args;\n return parseInt(minLength);\n }\n\n /**\n * @param remaining\n * @type {number}\n * @default null\n * @description The remaining number of characters.\n */\n get remaining() {\n return this.maxLength - this.currentLength;\n }\n\n /**\n * @param shortfall\n * @type {number}\n * @default null\n * @description The number of characters the content is falling short of.\n */\n get shortfall() {\n return this.minLength - this.currentLength;\n }\n\n /**\n * @param message\n * @type {string}\n * @default null\n * @description The character count message presented to users\n */\n get message() {\n let messageText = '';\n if (this.minLength && this.currentLength === 0) {\n messageText = `${this.pluralize(this.minLength)} required`;\n } else if (this.minLength && this.currentLength < this.minLength) {\n messageText = `${this.pluralize(this.shortfall, 'more')} required`;\n } else if (this.maxLength && this.currentLength === 0) {\n messageText = `${this.pluralize(this.maxLength)} allowed`;\n } else if (this.maxLength && this.currentLength <= this.maxLength) {\n messageText = `${this.pluralize(this.remaining)} remaining`;\n } else if (this.currentLength > this.maxLength) {\n messageText = `Exceeded by ${this.pluralize(-this.remaining)}`;\n } else {\n messageText = `${this.pluralize(this.currentLength)} entered`;\n }\n return messageText;\n }\n\n /**\n * Determines the unique ID to assign to the element\n * @method id\n * @return {(string|null)} The \"id\" attribute to apply to the element or null, if no controlId is provided\n */\n get id() {\n let { controlId } = this.args;\n if (controlId) {\n return `${ID_PREFIX}${controlId}`;\n }\n return null;\n }\n\n /**\n * @param onInsert\n * @type {function}\n * @default () => {}\n */\n get onInsert() {\n let { onInsert } = this.args;\n // notice: this is a guard used to prevent triggering an error when the component is used as standalone element\n if (typeof onInsert === 'function') {\n return onInsert;\n } else {\n return NOOP;\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-form-character-count'];\n\n // add a class based on the @contextualClass argument\n // notice: this will *not* be documented for public use\n // the reason for this is that the contextual component declarations don't pass attributes to the component\n if (this.args.contextualClass) {\n classes.push(this.args.contextualClass);\n }\n\n return classes.join(' ');\n }\n}\n"],"names":["ID_PREFIX","NOOP","HdsFormCharacterCountIndexComponent","Component","currentLength","value","args","length","pluralize","count","prefix","noun","suffix","maxLength","parseInt","minLength","remaining","shortfall","message","messageText","id","controlId","onInsert","classNames","classes","contextualClass","push","join","setComponentTemplate","TEMPLATE"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/components/hds/form/character-count/index.hbs","../../../../../src/components/hds/form/character-count/index.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n<Hds::Text::Body\\n @tag=\\\"div\\\"\\n @size=\\\"100\\\"\\n class={{this.classNames}}\\n id={{this.id}}\\n {{did-insert this.onInsert}}\\n ...attributes\\n aria-live=\\\"polite\\\"\\n>\\n {{#if (has-block)}}\\n {{yield\\n (hash\\n minLength=this.minLength\\n maxLength=this.maxLength\\n currentLength=this.currentLength\\n remaining=this.remaining\\n shortfall=this.shortfall\\n )\\n }}\\n {{else}}\\n {{this.message}}\\n {{/if}}\\n</Hds::Text::Body>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport Component from '@glimmer/component';\nimport type { HdsTextBodySignature } from '../../text/body';\n\nconst ID_PREFIX = 'character-count-';\nconst NOOP = (): void => {};\n\ninterface HdsFormCharacterCountSignature {\n Args: {\n contextualClass?: string;\n controlId?: string;\n maxLength?: number | string;\n minLength?: number | string;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n onInsert?: (element: HTMLElement, ...args: any[]) => void;\n value?: string;\n };\n Blocks: {\n default?: [\n {\n minLength?: number;\n maxLength?: number;\n currentLength?: number;\n remaining?: number;\n shortfall?: number;\n },\n ];\n };\n Element: HdsTextBodySignature['Element'];\n}\n\nexport default class HdsFormCharacterCountComponent extends Component<HdsFormCharacterCountSignature> {\n // The current number of characters in @value\n get currentLength(): number {\n const { value } = this.args;\n return value ? value.length : 0;\n }\n\n // Inflector utility function to determine plural or singular for 'character' noun\n private _pluralize(\n count?: number,\n prefix = '',\n noun = 'character',\n suffix = 's'\n ): string {\n return `${count}${prefix ? ' ' + prefix : ''} ${noun}${\n count !== 1 ? suffix : ''\n }`;\n }\n\n /**\n * @param maxLength\n * @type {number}\n * @default null\n * @description The maximum number of characters allowed.\n */\n get maxLength(): number | undefined {\n const { maxLength } = this.args;\n if (maxLength) {\n return typeof maxLength === 'number' ? maxLength : parseInt(maxLength);\n }\n }\n\n /**\n * @param minLength\n * @type {number}\n * @default null\n * @description The minimum number of characters allowed.\n */\n get minLength(): number | undefined {\n const { minLength } = this.args;\n if (minLength) {\n return typeof minLength === 'number' ? minLength : parseInt(minLength);\n }\n }\n\n /**\n * @param remaining\n * @type {number}\n * @default null\n * @description The remaining number of characters.\n */\n get remaining(): number | undefined {\n return this.maxLength ? this.maxLength - this.currentLength : undefined;\n }\n\n /**\n * @param shortfall\n * @type {number}\n * @default null\n * @description The number of characters the content is falling short of.\n */\n get shortfall(): number | undefined {\n return this.minLength ? this.minLength - this.currentLength : undefined;\n }\n\n /**\n * @param message\n * @type {string}\n * @default null\n * @description The character count message presented to users\n */\n get message(): string {\n let messageText = '';\n if (this.minLength && this.currentLength === 0) {\n messageText = `${this._pluralize(this.minLength)} required`;\n } else if (this.minLength && this.currentLength < this.minLength) {\n messageText = `${this._pluralize(this.shortfall, 'more')} required`;\n } else if (this.maxLength && this.currentLength === 0) {\n messageText = `${this._pluralize(this.maxLength)} allowed`;\n } else if (this.maxLength && this.currentLength <= this.maxLength) {\n messageText = `${this._pluralize(this.remaining)} remaining`;\n } else if (\n this.maxLength &&\n this.remaining &&\n this.currentLength > this.maxLength\n ) {\n messageText = `Exceeded by ${this._pluralize(-this.remaining)}`;\n } else {\n messageText = `${this._pluralize(this.currentLength)} entered`;\n }\n return messageText;\n }\n\n /**\n * Determines the unique ID to assign to the element\n * @method id\n * @return {(string|null)} The \"id\" attribute to apply to the element or null, if no controlId is provided\n */\n get id(): string | null {\n const { controlId } = this.args;\n if (controlId) {\n return `${ID_PREFIX}${controlId}`;\n }\n return null;\n }\n\n /**\n * @param onInsert\n * @type {function}\n * @default () => {}\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n get onInsert(): (element: HTMLElement, ...args: any[]) => void {\n const { onInsert } = this.args;\n // notice: this is a guard used to prevent triggering an error when the component is used as standalone element\n if (typeof onInsert === 'function') {\n return onInsert;\n } else {\n return NOOP;\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(): string {\n const classes = ['hds-form-character-count'];\n\n // add a class based on the @contextualClass argument\n // notice: this will *not* be documented for public use\n // the reason for this is that the contextual component declarations don't pass attributes to the component\n if (this.args.contextualClass) {\n classes.push(this.args.contextualClass);\n }\n\n return classes.join(' ');\n }\n}\n"],"names":["ID_PREFIX","NOOP","HdsFormCharacterCountComponent","Component","currentLength","value","args","length","_pluralize","count","prefix","noun","suffix","maxLength","parseInt","minLength","remaining","undefined","shortfall","message","messageText","id","controlId","onInsert","classNames","classes","contextualClass","push","join","setComponentTemplate","TEMPLATE"],"mappings":"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"}
@@ -1,10 +1,16 @@
1
- import templateOnly from '@ember/component/template-only';
1
+ import templateOnlyComponent from '@ember/component/template-only';
2
2
  import { precompileTemplate } from '@ember/template-compilation';
3
3
  import { setComponentTemplate } from '@ember/component';
4
4
 
5
- var TEMPLATE = precompileTemplate("{{! @glint-nocheck: not typesafe yet }}\n{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n<input type=\"checkbox\" class=\"hds-form-checkbox\" ...attributes value={{@value}} />");
5
+ var TEMPLATE = precompileTemplate("{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n<input type=\"checkbox\" class=\"hds-form-checkbox\" ...attributes value={{@value}} />");
6
6
 
7
- var base = setComponentTemplate(TEMPLATE, templateOnly());
7
+ /**
8
+ * Copyright (c) HashiCorp, Inc.
9
+ * SPDX-License-Identifier: MPL-2.0
10
+ */
11
+
12
+ const HdsFormCheckboxBaseComponent = templateOnlyComponent();
13
+ var base = setComponentTemplate(TEMPLATE, HdsFormCheckboxBaseComponent);
8
14
 
9
15
  export { base as default };
10
16
  //# sourceMappingURL=base.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sources":["../../../../../src/components/hds/form/checkbox/base.hbs","../../../../../src/components/hds/form/checkbox/base.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<input type=\\\"checkbox\\\" class=\\\"hds-form-checkbox\\\" ...attributes value={{@value}} />\")","import templateOnly from '@ember/component/template-only';\nexport default templateOnly();\n"],"names":["setComponentTemplate","TEMPLATE","templateOnly"],"mappings":";;;;AACA,eAAe,kBAAkB,CAAC,+MAA+M;;ACAjP,WAAAA,oBAAA,CAAAC,QAAA,EAAeC,YAAY,EAAE,CAAA;;;;"}
1
+ {"version":3,"file":"base.js","sources":["../../../../../src/components/hds/form/checkbox/base.hbs","../../../../../src/components/hds/form/checkbox/base.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n<input type=\\\"checkbox\\\" class=\\\"hds-form-checkbox\\\" ...attributes value={{@value}} />\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport templateOnlyComponent from '@ember/component/template-only';\n\ninterface HdsFormCheckboxBaseSignature {\n Args: {\n value?: string;\n };\n Element: HTMLInputElement;\n}\n\nconst HdsFormCheckboxBaseComponent =\n templateOnlyComponent<HdsFormCheckboxBaseSignature>();\n\nexport default HdsFormCheckboxBaseComponent;\n"],"names":["HdsFormCheckboxBaseComponent","templateOnlyComponent","setComponentTemplate","TEMPLATE"],"mappings":";;;;AACA,eAAe,kBAAkB,CAAC,sKAAsK;;ACDxM;AACA;AACA;AACA;;AAWA,MAAMA,4BAA4B,GAChCC,qBAAqB,EAAgC,CAAA;AAEvD,WAAAC,oBAAA,CAAAC,QAAA,EAAeH,4BAA4B,CAAA;;;;"}
@@ -1,10 +1,16 @@
1
- import templateOnly from '@ember/component/template-only';
1
+ import templateOnlyComponent from '@ember/component/template-only';
2
2
  import { precompileTemplate } from '@ember/template-compilation';
3
3
  import { setComponentTemplate } from '@ember/component';
4
4
 
5
- var TEMPLATE = precompileTemplate("{{! @glint-nocheck: not typesafe yet }}\n{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n<Hds::Form::Field\n @layout=\"flag\"\n @contextualClass={{@contextualClass}}\n @extraAriaDescribedBy={{@extraAriaDescribedBy}}\n @id={{@id}}\n as |F|\n>\n {{! Notice: the order of the elements is not relevant here, because it\'s controlled at \"Hds::Form::Field\" component level }}\n {{yield (hash Label=F.Label HelperText=F.HelperText Error=F.Error)}}\n <F.Control>\n <Hds::Form::Checkbox::Base\n @value={{@value}}\n name={{@name}}\n required={{@isRequired}}\n ...attributes\n id={{F.id}}\n aria-describedby={{F.ariaDescribedBy}}\n />\n </F.Control>\n</Hds::Form::Field>");
5
+ var TEMPLATE = precompileTemplate("{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n<Hds::Form::Field\n @layout=\"flag\"\n @contextualClass={{@contextualClass}}\n @extraAriaDescribedBy={{@extraAriaDescribedBy}}\n @id={{@id}}\n as |F|\n>\n {{! Notice: the order of the elements is not relevant here, because it\'s controlled at \"Hds::Form::Field\" component level }}\n {{yield (hash Label=F.Label HelperText=F.HelperText Error=F.Error)}}\n <F.Control>\n <Hds::Form::Checkbox::Base\n @value={{@value}}\n name={{@name}}\n required={{@isRequired}}\n ...attributes\n id={{F.id}}\n aria-describedby={{F.ariaDescribedBy}}\n />\n </F.Control>\n</Hds::Form::Field>");
6
6
 
7
- var field = setComponentTemplate(TEMPLATE, templateOnly());
7
+ /**
8
+ * Copyright (c) HashiCorp, Inc.
9
+ * SPDX-License-Identifier: MPL-2.0
10
+ */
11
+
12
+ const HdsFormCheckboxFieldComponent = templateOnlyComponent();
13
+ var field = setComponentTemplate(TEMPLATE, HdsFormCheckboxFieldComponent);
8
14
 
9
15
  export { field as default };
10
16
  //# sourceMappingURL=field.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"field.js","sources":["../../../../../src/components/hds/form/checkbox/field.hbs","../../../../../src/components/hds/form/checkbox/field.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::Form::Field\\n @layout=\\\"flag\\\"\\n @contextualClass={{@contextualClass}}\\n @extraAriaDescribedBy={{@extraAriaDescribedBy}}\\n @id={{@id}}\\n as |F|\\n>\\n {{! Notice: the order of the elements is not relevant here, because it\\'s controlled at \\\"Hds::Form::Field\\\" component level }}\\n {{yield (hash Label=F.Label HelperText=F.HelperText Error=F.Error)}}\\n <F.Control>\\n <Hds::Form::Checkbox::Base\\n @value={{@value}}\\n name={{@name}}\\n required={{@isRequired}}\\n ...attributes\\n id={{F.id}}\\n aria-describedby={{F.ariaDescribedBy}}\\n />\\n </F.Control>\\n</Hds::Form::Field>\")","import templateOnly from '@ember/component/template-only';\nexport default templateOnly();\n"],"names":["setComponentTemplate","TEMPLATE","templateOnly"],"mappings":";;;;AACA,eAAe,kBAAkB,CAAC,kuBAAkuB;;ACApwB,YAAAA,oBAAA,CAAAC,QAAA,EAAeC,YAAY,EAAE,CAAA;;;;"}
1
+ {"version":3,"file":"field.js","sources":["../../../../../src/components/hds/form/checkbox/field.hbs","../../../../../src/components/hds/form/checkbox/field.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n<Hds::Form::Field\\n @layout=\\\"flag\\\"\\n @contextualClass={{@contextualClass}}\\n @extraAriaDescribedBy={{@extraAriaDescribedBy}}\\n @id={{@id}}\\n as |F|\\n>\\n {{! Notice: the order of the elements is not relevant here, because it\\'s controlled at \\\"Hds::Form::Field\\\" component level }}\\n {{yield (hash Label=F.Label HelperText=F.HelperText Error=F.Error)}}\\n <F.Control>\\n <Hds::Form::Checkbox::Base\\n @value={{@value}}\\n name={{@name}}\\n required={{@isRequired}}\\n ...attributes\\n id={{F.id}}\\n aria-describedby={{F.ariaDescribedBy}}\\n />\\n </F.Control>\\n</Hds::Form::Field>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport templateOnlyComponent from '@ember/component/template-only';\nimport type { HdsFormFieldSignature } from '../field';\nimport type { ComponentLike } from '@glint/template';\nimport type { HdsFormLabelSignature } from '../label';\nimport type { HdsFormHelperTextSignature } from '../helper-text';\nimport type { HdsFormErrorSignature } from '../error';\n\nexport interface HdsFormCheckboxFieldSignature {\n Args: Omit<HdsFormFieldSignature['Args'], 'isOptional'> & {\n value?: string;\n name?: string;\n };\n Blocks: {\n default: [\n {\n Label?: ComponentLike<HdsFormLabelSignature>;\n HelperText?: ComponentLike<HdsFormHelperTextSignature>;\n Error?: ComponentLike<HdsFormErrorSignature>;\n },\n ];\n };\n Element: HdsFormFieldSignature['Element'];\n}\n\nconst HdsFormCheckboxFieldComponent =\n templateOnlyComponent<HdsFormCheckboxFieldSignature>();\n\nexport default HdsFormCheckboxFieldComponent;\n"],"names":["HdsFormCheckboxFieldComponent","templateOnlyComponent","setComponentTemplate","TEMPLATE"],"mappings":";;;;AACA,eAAe,kBAAkB,CAAC,yrBAAyrB;;ACD3tB;AACA;AACA;AACA;;AA0BA,MAAMA,6BAA6B,GACjCC,qBAAqB,EAAiC,CAAA;AAExD,YAAAC,oBAAA,CAAAC,QAAA,EAAeH,6BAA6B,CAAA;;;;"}
@@ -1,10 +1,16 @@
1
- import templateOnly from '@ember/component/template-only';
1
+ import templateOnlyComponent from '@ember/component/template-only';
2
2
  import { precompileTemplate } from '@ember/template-compilation';
3
3
  import { setComponentTemplate } from '@ember/component';
4
4
 
5
- var TEMPLATE = precompileTemplate("{{! @glint-nocheck: not typesafe yet }}\n{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n<Hds::Form::Fieldset\n @layout={{@layout}}\n @name={{@name}}\n @isRequired={{@isRequired}}\n @isOptional={{@isOptional}}\n ...attributes\n as |F|\n>\n {{! Notice: the order of the elements is not relevant here, because it\'s controlled at \"Hds::Form::Fieldset\" component level }}\n {{yield (hash Legend=F.Legend isRequired=F.isRequired isOptional=F.isOptional)}}\n {{yield (hash HelperText=F.HelperText Error=F.Error)}}\n <F.Control>\n {{yield\n (hash\n CheckboxField=(component\n \"hds/form/checkbox/field\"\n contextualClass=\"hds-form-group__control-field\"\n isRequired=@isRequired\n name=@name\n extraAriaDescribedBy=F.ariaDescribedBy\n )\n )\n }}\n </F.Control>\n</Hds::Form::Fieldset>");
5
+ var TEMPLATE = precompileTemplate("{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n<Hds::Form::Fieldset @layout={{@layout}} @isRequired={{@isRequired}} @isOptional={{@isOptional}} ...attributes as |F|>\n {{! Notice: the order of the elements is not relevant here, because it\'s controlled at \"Hds::Form::Fieldset\" component level }}\n {{yield (hash Legend=F.Legend HelperText=F.HelperText Error=F.Error)}}\n <F.Control>\n {{yield\n (hash\n CheckboxField=(component\n \"hds/form/checkbox/field\"\n contextualClass=\"hds-form-group__control-field\"\n isRequired=@isRequired\n name=@name\n extraAriaDescribedBy=F.ariaDescribedBy\n )\n )\n }}\n </F.Control>\n</Hds::Form::Fieldset>");
6
6
 
7
- var group = setComponentTemplate(TEMPLATE, templateOnly());
7
+ /**
8
+ * Copyright (c) HashiCorp, Inc.
9
+ * SPDX-License-Identifier: MPL-2.0
10
+ */
11
+
12
+ const HdsFormCheckboxGroupComponent = templateOnlyComponent();
13
+ var group = setComponentTemplate(TEMPLATE, HdsFormCheckboxGroupComponent);
8
14
 
9
15
  export { group as default };
10
16
  //# sourceMappingURL=group.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"group.js","sources":["../../../../../src/components/hds/form/checkbox/group.hbs","../../../../../src/components/hds/form/checkbox/group.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::Form::Fieldset\\n @layout={{@layout}}\\n @name={{@name}}\\n @isRequired={{@isRequired}}\\n @isOptional={{@isOptional}}\\n ...attributes\\n as |F|\\n>\\n {{! Notice: the order of the elements is not relevant here, because it\\'s controlled at \\\"Hds::Form::Fieldset\\\" component level }}\\n {{yield (hash Legend=F.Legend isRequired=F.isRequired isOptional=F.isOptional)}}\\n {{yield (hash HelperText=F.HelperText Error=F.Error)}}\\n <F.Control>\\n {{yield\\n (hash\\n CheckboxField=(component\\n \\\"hds/form/checkbox/field\\\"\\n contextualClass=\\\"hds-form-group__control-field\\\"\\n isRequired=@isRequired\\n name=@name\\n extraAriaDescribedBy=F.ariaDescribedBy\\n )\\n )\\n }}\\n </F.Control>\\n</Hds::Form::Fieldset>\")","import templateOnly from '@ember/component/template-only';\nexport default templateOnly();\n"],"names":["setComponentTemplate","TEMPLATE","templateOnly"],"mappings":";;;;AACA,eAAe,kBAAkB,CAAC,o4BAAo4B;;ACAt6B,YAAAA,oBAAA,CAAAC,QAAA,EAAeC,YAAY,EAAE,CAAA;;;;"}
1
+ {"version":3,"file":"group.js","sources":["../../../../../src/components/hds/form/checkbox/group.hbs","../../../../../src/components/hds/form/checkbox/group.ts"],"sourcesContent":["import { precompileTemplate } from \"@ember/template-compilation\";\nexport default precompileTemplate(\"{{!\\n Copyright (c) HashiCorp, Inc.\\n SPDX-License-Identifier: MPL-2.0\\n}}\\n<Hds::Form::Fieldset @layout={{@layout}} @isRequired={{@isRequired}} @isOptional={{@isOptional}} ...attributes as |F|>\\n {{! Notice: the order of the elements is not relevant here, because it\\'s controlled at \\\"Hds::Form::Fieldset\\\" component level }}\\n {{yield (hash Legend=F.Legend HelperText=F.HelperText Error=F.Error)}}\\n <F.Control>\\n {{yield\\n (hash\\n CheckboxField=(component\\n \\\"hds/form/checkbox/field\\\"\\n contextualClass=\\\"hds-form-group__control-field\\\"\\n isRequired=@isRequired\\n name=@name\\n extraAriaDescribedBy=F.ariaDescribedBy\\n )\\n )\\n }}\\n </F.Control>\\n</Hds::Form::Fieldset>\")","/**\n * Copyright (c) HashiCorp, Inc.\n * SPDX-License-Identifier: MPL-2.0\n */\n\nimport templateOnlyComponent from '@ember/component/template-only';\nimport type { HdsFormFieldsetSignature } from '../fieldset';\nimport type { ComponentLike } from '@glint/template';\nimport type { HdsFormLegendSignature } from '../legend';\nimport type { HdsFormHelperTextSignature } from '../helper-text';\nimport type { HdsFormCheckboxFieldSignature } from './field';\nimport type { HdsFormErrorSignature } from '../error';\n\ninterface HdsFormCheckboxGroupSignature {\n Args: HdsFormFieldsetSignature['Args'] & {\n name?: string;\n };\n Blocks: {\n default: [\n {\n Legend?: ComponentLike<HdsFormLegendSignature>;\n HelperText?: ComponentLike<HdsFormHelperTextSignature>;\n CheckboxField?: ComponentLike<HdsFormCheckboxFieldSignature>;\n Error?: ComponentLike<HdsFormErrorSignature>;\n },\n ];\n };\n Element: HdsFormFieldsetSignature['Element'];\n}\n\nconst HdsFormCheckboxGroupComponent =\n templateOnlyComponent<HdsFormCheckboxGroupSignature>();\n\nexport default HdsFormCheckboxGroupComponent;\n"],"names":["HdsFormCheckboxGroupComponent","templateOnlyComponent","setComponentTemplate","TEMPLATE"],"mappings":";;;;AACA,eAAe,kBAAkB,CAAC,mvBAAmvB;;ACDrxB;AACA;AACA;AACA;;AA2BA,MAAMA,6BAA6B,GACjCC,qBAAqB,EAAiC,CAAA;AAExD,YAAAC,oBAAA,CAAAC,QAAA,EAAeH,6BAA6B,CAAA;;;;"}
@@ -2,7 +2,7 @@ import Component from '@glimmer/component';
2
2
  import { precompileTemplate } from '@ember/template-compilation';
3
3
  import { setComponentTemplate } from '@ember/component';
4
4
 
5
- var TEMPLATE = precompileTemplate("{{! @glint-nocheck: not typesafe yet }}\n{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n<div class={{this.classNames}} id={{this.id}} {{did-insert this.onInsert}} {{will-destroy this.onRemove}} ...attributes>\n <FlightIcon class=\"hds-form-error__icon\" @name=\"alert-diamond-fill\" />\n <Hds::Text::Body class=\"hds-form-error__content\" @tag=\"div\" @size=\"100\" @weight=\"medium\">\n {{yield (hash Message=(component \"hds/form/error/message\"))}}\n </Hds::Text::Body>\n</div>");
5
+ var TEMPLATE = precompileTemplate("{{!\n Copyright (c) HashiCorp, Inc.\n SPDX-License-Identifier: MPL-2.0\n}}\n<div class={{this.classNames}} id={{this.id}} {{did-insert this.onInsert}} {{will-destroy this.onRemove}} ...attributes>\n <FlightIcon class=\"hds-form-error__icon\" @name=\"alert-diamond-fill\" />\n <Hds::Text::Body class=\"hds-form-error__content\" @tag=\"div\" @size=\"100\" @weight=\"medium\">\n {{yield (hash Message=(component \"hds/form/error/message\"))}}\n </Hds::Text::Body>\n</div>");
6
6
 
7
7
  /**
8
8
  * Copyright (c) HashiCorp, Inc.
@@ -11,14 +11,14 @@ var TEMPLATE = precompileTemplate("{{! @glint-nocheck: not typesafe yet }}\n{{!\
11
11
 
12
12
  const ID_PREFIX = 'error-';
13
13
  const NOOP = () => {};
14
- class HdsFormErrorIndexComponent extends Component {
14
+ class HdsFormErrorComponent extends Component {
15
15
  /**
16
16
  * Determines the unique ID to assign to the element
17
17
  * @method id
18
18
  * @return {(string|null)} The "id" attribute to apply to the element or null, if no controlId is provided
19
19
  */
20
20
  get id() {
21
- let {
21
+ const {
22
22
  controlId
23
23
  } = this.args;
24
24
  if (controlId) {
@@ -32,8 +32,9 @@ class HdsFormErrorIndexComponent extends Component {
32
32
  * @type {function}
33
33
  * @default () => {}
34
34
  */
35
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
35
36
  get onInsert() {
36
- let {
37
+ const {
37
38
  onInsert
38
39
  } = this.args;
39
40
 
@@ -50,8 +51,9 @@ class HdsFormErrorIndexComponent extends Component {
50
51
  * @type {function}
51
52
  * @default () => {}
52
53
  */
54
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
53
55
  get onRemove() {
54
- let {
56
+ const {
55
57
  onRemove
56
58
  } = this.args;
57
59
 
@@ -68,7 +70,7 @@ class HdsFormErrorIndexComponent extends Component {
68
70
  * @return {string} The "class" attribute to apply to the component.
69
71
  */
70
72
  get classNames() {
71
- let classes = ['hds-form-error'];
73
+ const classes = ['hds-form-error'];
72
74
 
73
75
  // add a class based on the @contextualClass argument
74
76
  // notice: this will *not* be documented for public use
@@ -79,7 +81,7 @@ class HdsFormErrorIndexComponent extends Component {
79
81
  return classes.join(' ');
80
82
  }
81
83
  }
82
- setComponentTemplate(TEMPLATE, HdsFormErrorIndexComponent);
84
+ setComponentTemplate(TEMPLATE, HdsFormErrorComponent);
83
85
 
84
- export { ID_PREFIX, HdsFormErrorIndexComponent as default };
86
+ export { ID_PREFIX, HdsFormErrorComponent as default };
85
87
  //# sourceMappingURL=index.js.map