@gov-design-system-ce/components 4.1.3-BETA-10 → 4.2.1

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 (719) hide show
  1. package/dist/cjs/{array.utils-96eadde3.js → array.utils-211fffc0.js} +2 -2
  2. package/dist/cjs/{array.utils-96eadde3.js.map → array.utils-211fffc0.js.map} +1 -1
  3. package/dist/cjs/{constants-02aec493.js → constants-7f713d6c.js} +2 -2
  4. package/dist/cjs/{constants-02aec493.js.map → constants-7f713d6c.js.map} +1 -1
  5. package/dist/cjs/{constants-4dfa23e3.js → constants-c7447ffd.js} +3 -1
  6. package/dist/cjs/constants-c7447ffd.js.map +1 -0
  7. package/dist/cjs/{constants-52053f2d.js → constants-c84c60d6.js} +3 -1
  8. package/dist/cjs/constants-c84c60d6.js.map +1 -0
  9. package/dist/cjs/core.cjs.js +1 -1
  10. package/dist/cjs/gov-attachments_3.cjs.entry.js +4 -4
  11. package/dist/cjs/gov-attachments_3.cjs.entry.js.map +1 -1
  12. package/dist/cjs/gov-backdrop.cjs.entry.js +2 -2
  13. package/dist/cjs/gov-banner.cjs.entry.js +80 -0
  14. package/dist/cjs/gov-banner.cjs.entry.js.map +1 -0
  15. package/dist/cjs/gov-blockquote.cjs.entry.js +33 -0
  16. package/dist/cjs/gov-blockquote.cjs.entry.js.map +1 -0
  17. package/dist/cjs/gov-breadcrumbs.cjs.entry.js +3 -3
  18. package/dist/cjs/gov-button.cjs.entry.js +7 -6
  19. package/dist/cjs/gov-button.cjs.entry.js.map +1 -1
  20. package/dist/cjs/gov-card.cjs.entry.js +11 -3
  21. package/dist/cjs/gov-card.cjs.entry.js.map +1 -1
  22. package/dist/cjs/gov-chip.cjs.entry.js +4 -3
  23. package/dist/cjs/gov-chip.cjs.entry.js.map +1 -1
  24. package/dist/cjs/gov-container.cjs.entry.js +1 -1
  25. package/dist/cjs/gov-control-group.cjs.entry.js +1 -1
  26. package/dist/cjs/gov-cookiebar.cjs.entry.js +1 -1
  27. package/dist/cjs/gov-dialog.cjs.entry.js +3 -3
  28. package/dist/cjs/gov-dialog.cjs.entry.js.map +1 -1
  29. package/dist/cjs/gov-dropdown.cjs.entry.js +1 -1
  30. package/dist/cjs/gov-empty.cjs.entry.js +1 -1
  31. package/dist/cjs/gov-error-code.cjs.entry.js +1 -1
  32. package/dist/cjs/gov-flex_3.cjs.entry.js +5 -5
  33. package/dist/cjs/gov-flex_3.cjs.entry.js.map +1 -1
  34. package/dist/cjs/gov-form-autocomplete.cjs.entry.js +5 -4
  35. package/dist/cjs/gov-form-autocomplete.cjs.entry.js.map +1 -1
  36. package/dist/cjs/gov-form-checkbox-group.cjs.entry.js +5 -5
  37. package/dist/cjs/gov-form-checkbox-group.cjs.entry.js.map +1 -1
  38. package/dist/cjs/gov-form-checkbox.cjs.entry.js +2 -1
  39. package/dist/cjs/gov-form-checkbox.cjs.entry.js.map +1 -1
  40. package/dist/cjs/gov-form-control.cjs.entry.js +1 -1
  41. package/dist/cjs/gov-form-file.cjs.entry.js +3 -2
  42. package/dist/cjs/gov-form-file.cjs.entry.js.map +1 -1
  43. package/dist/cjs/gov-form-group.cjs.entry.js +2 -2
  44. package/dist/cjs/gov-form-input_2.cjs.entry.js +10 -8
  45. package/dist/cjs/gov-form-input_2.cjs.entry.js.map +1 -1
  46. package/dist/cjs/gov-form-label.cjs.entry.js +1 -1
  47. package/dist/cjs/gov-form-multi-select.cjs.entry.js +6 -5
  48. package/dist/cjs/gov-form-multi-select.cjs.entry.js.map +1 -1
  49. package/dist/cjs/gov-form-password-power.cjs.entry.js +1 -1
  50. package/dist/cjs/gov-form-radio-group.cjs.entry.js +3 -3
  51. package/dist/cjs/gov-form-radio-group.cjs.entry.js.map +1 -1
  52. package/dist/cjs/gov-form-radio.cjs.entry.js +2 -1
  53. package/dist/cjs/gov-form-radio.cjs.entry.js.map +1 -1
  54. package/dist/cjs/gov-form-range.cjs.entry.js +207 -0
  55. package/dist/cjs/gov-form-range.cjs.entry.js.map +1 -0
  56. package/dist/cjs/gov-form-search.cjs.entry.js +1 -1
  57. package/dist/cjs/gov-form-select.cjs.entry.js +6 -5
  58. package/dist/cjs/gov-form-select.cjs.entry.js.map +1 -1
  59. package/dist/cjs/gov-form-switch.cjs.entry.js +2 -1
  60. package/dist/cjs/gov-form-switch.cjs.entry.js.map +1 -1
  61. package/dist/cjs/gov-grid-item.cjs.entry.js +13 -7
  62. package/dist/cjs/gov-grid-item.cjs.entry.js.map +1 -1
  63. package/dist/cjs/gov-grid.cjs.entry.js +7 -5
  64. package/dist/cjs/gov-grid.cjs.entry.js.map +1 -1
  65. package/dist/cjs/gov-infobar.cjs.entry.js +4 -3
  66. package/dist/cjs/gov-infobar.cjs.entry.js.map +1 -1
  67. package/dist/cjs/gov-layout-column.cjs.entry.js +1 -1
  68. package/dist/cjs/gov-layout.cjs.entry.js +1 -1
  69. package/dist/cjs/gov-lifecycle.cjs.entry.js +1 -1
  70. package/dist/cjs/gov-link.cjs.entry.js +3 -1
  71. package/dist/cjs/gov-link.cjs.entry.js.map +1 -1
  72. package/dist/cjs/gov-loading.cjs.entry.js +1 -1
  73. package/dist/cjs/gov-message.cjs.entry.js +1 -1
  74. package/dist/cjs/gov-message.cjs.entry.js.map +1 -1
  75. package/dist/cjs/gov-pagination.cjs.entry.js +4 -3
  76. package/dist/cjs/gov-pagination.cjs.entry.js.map +1 -1
  77. package/dist/cjs/gov-spacer.cjs.entry.js +1 -1
  78. package/dist/cjs/gov-stepper-item.cjs.entry.js +2 -2
  79. package/dist/cjs/gov-stepper-item.cjs.entry.js.map +1 -1
  80. package/dist/cjs/gov-stepper.cjs.entry.js +2 -2
  81. package/dist/cjs/gov-tabs-item.cjs.entry.js +1 -1
  82. package/dist/cjs/gov-tabs.cjs.entry.js +4 -3
  83. package/dist/cjs/gov-tabs.cjs.entry.js.map +1 -1
  84. package/dist/cjs/gov-tag.cjs.entry.js +1 -1
  85. package/dist/cjs/gov-tile.cjs.entry.js +1 -1
  86. package/dist/cjs/gov-toast.cjs.entry.js +3 -2
  87. package/dist/cjs/gov-toast.cjs.entry.js.map +1 -1
  88. package/dist/cjs/gov-tooltip-content.cjs.entry.js +1 -1
  89. package/dist/cjs/gov-tooltip.cjs.entry.js +2 -2
  90. package/dist/cjs/gov-wizard-item.cjs.entry.js +2 -2
  91. package/dist/cjs/gov-wizard.cjs.entry.js +3 -3
  92. package/dist/cjs/{helpers.types-ff60c9bd.js → helpers.types-9066e4a4.js} +3 -1
  93. package/dist/cjs/helpers.types-9066e4a4.js.map +1 -0
  94. package/dist/cjs/index-0e4f24f9.js +12 -4
  95. package/dist/cjs/loader.cjs.js +1 -1
  96. package/dist/cjs/{wcag-2927ff73.js → wcag-f8da82da.js} +2 -2
  97. package/dist/cjs/{wcag-2927ff73.js.map → wcag-f8da82da.js.map} +1 -1
  98. package/dist/collection/collection-manifest.json +3 -1
  99. package/dist/collection/components/gov-attachments/gov-attachments-item.css +3 -4
  100. package/dist/collection/components/gov-banner/constants.js +26 -0
  101. package/dist/collection/components/gov-banner/constants.js.map +1 -0
  102. package/dist/collection/components/gov-banner/gov-banner.js +155 -0
  103. package/dist/collection/components/gov-banner/gov-banner.js.map +1 -0
  104. package/dist/collection/components/gov-blockquote/constants.js +10 -0
  105. package/dist/collection/components/gov-blockquote/constants.js.map +1 -0
  106. package/dist/collection/components/gov-blockquote/gov-blockquote.js +61 -0
  107. package/dist/collection/components/gov-blockquote/gov-blockquote.js.map +1 -0
  108. package/dist/collection/components/gov-breadcrumbs/gov-breadcrumbs.js +1 -1
  109. package/dist/collection/components/gov-button/button/gov-button.js +5 -4
  110. package/dist/collection/components/gov-button/button/gov-button.js.map +1 -1
  111. package/dist/collection/components/gov-button/dropdown/gov-dropdown.js +1 -1
  112. package/dist/collection/components/gov-card/gov-card.js +52 -1
  113. package/dist/collection/components/gov-card/gov-card.js.map +1 -1
  114. package/dist/collection/components/gov-chip/gov-chip.js +4 -3
  115. package/dist/collection/components/gov-chip/gov-chip.js.map +1 -1
  116. package/dist/collection/components/gov-container/gov-container.js +1 -1
  117. package/dist/collection/components/gov-control-group/gov-control-group.js +1 -1
  118. package/dist/collection/components/gov-cookiebar/gov-cookiebar.js +1 -1
  119. package/dist/collection/components/gov-dialog/gov-dialog.js +1 -1
  120. package/dist/collection/components/gov-dialog/gov-dialog.js.map +1 -1
  121. package/dist/collection/components/gov-empty/gov-empty.js +1 -1
  122. package/dist/collection/components/gov-error-code/gov-error-code.js +1 -1
  123. package/dist/collection/components/gov-flex/gov-flex.js +22 -3
  124. package/dist/collection/components/gov-flex/gov-flex.js.map +1 -1
  125. package/dist/collection/components/gov-form/autocomplete/gov-form-autocomplete.js +3 -2
  126. package/dist/collection/components/gov-form/autocomplete/gov-form-autocomplete.js.map +1 -1
  127. package/dist/collection/components/gov-form/checkbox/gov-form-checkbox.js +2 -1
  128. package/dist/collection/components/gov-form/checkbox/gov-form-checkbox.js.map +1 -1
  129. package/dist/collection/components/gov-form/control/gov-form-control.js +1 -1
  130. package/dist/collection/components/gov-form/file/gov-form-file.js +3 -2
  131. package/dist/collection/components/gov-form/file/gov-form-file.js.map +1 -1
  132. package/dist/collection/components/gov-form/group/constants.js +1 -1
  133. package/dist/collection/components/gov-form/group/constants.js.map +1 -1
  134. package/dist/collection/components/gov-form/group/gov-form-checkbox-group.js +2 -2
  135. package/dist/collection/components/gov-form/group/gov-form-group.css +4 -4
  136. package/dist/collection/components/gov-form/group/gov-form-group.js +2 -2
  137. package/dist/collection/components/gov-form/group/gov-form-radio-group.js +2 -2
  138. package/dist/collection/components/gov-form/input/gov-form-input.js +7 -6
  139. package/dist/collection/components/gov-form/input/gov-form-input.js.map +1 -1
  140. package/dist/collection/components/gov-form/label/gov-form-label.js +1 -1
  141. package/dist/collection/components/gov-form/message/gov-form-message.js +1 -1
  142. package/dist/collection/components/gov-form/multiselect/gov-form-multi-select.js +4 -3
  143. package/dist/collection/components/gov-form/multiselect/gov-form-multi-select.js.map +1 -1
  144. package/dist/collection/components/gov-form/password-power/gov-form-password-power.js +1 -1
  145. package/dist/collection/components/gov-form/radio/gov-form-radio.js +2 -1
  146. package/dist/collection/components/gov-form/radio/gov-form-radio.js.map +1 -1
  147. package/dist/collection/components/gov-form/range/constants.js +9 -0
  148. package/dist/collection/components/gov-form/range/constants.js.map +1 -0
  149. package/dist/collection/components/gov-form/range/gov-form-range.js +610 -0
  150. package/dist/collection/components/gov-form/range/gov-form-range.js.map +1 -0
  151. package/dist/collection/components/gov-form/search/gov-form-search.js +1 -1
  152. package/dist/collection/components/gov-form/select/gov-form-select.js +4 -3
  153. package/dist/collection/components/gov-form/select/gov-form-select.js.map +1 -1
  154. package/dist/collection/components/gov-form/switch/gov-form-switch.js +2 -1
  155. package/dist/collection/components/gov-form/switch/gov-form-switch.js.map +1 -1
  156. package/dist/collection/components/gov-grid/constants.js +2 -0
  157. package/dist/collection/components/gov-grid/constants.js.map +1 -1
  158. package/dist/collection/components/gov-grid/gov-grid-item.js +111 -20
  159. package/dist/collection/components/gov-grid/gov-grid-item.js.map +1 -1
  160. package/dist/collection/components/gov-grid/gov-grid.js +56 -14
  161. package/dist/collection/components/gov-grid/gov-grid.js.map +1 -1
  162. package/dist/collection/components/gov-icon/gov-icon.js +0 -2
  163. package/dist/collection/components/gov-icon/gov-icon.js.map +1 -1
  164. package/dist/collection/components/gov-infobar/gov-infobar.js +4 -3
  165. package/dist/collection/components/gov-infobar/gov-infobar.js.map +1 -1
  166. package/dist/collection/components/gov-layout/gov-layout-column.js +1 -1
  167. package/dist/collection/components/gov-layout/gov-layout.js +1 -1
  168. package/dist/collection/components/gov-lifecycle-tester/gov-lifecycle-tester.js +1 -1
  169. package/dist/collection/components/gov-link/constants.js +1 -0
  170. package/dist/collection/components/gov-link/constants.js.map +1 -1
  171. package/dist/collection/components/gov-link/gov-link.js +20 -1
  172. package/dist/collection/components/gov-link/gov-link.js.map +1 -1
  173. package/dist/collection/components/gov-loading/loading/gov-loading.js +1 -1
  174. package/dist/collection/components/gov-loading/skeleton/gov-skeleton.js +3 -2
  175. package/dist/collection/components/gov-loading/skeleton/gov-skeleton.js.map +1 -1
  176. package/dist/collection/components/gov-message/gov-message.js +1 -1
  177. package/dist/collection/components/gov-message/gov-message.js.map +1 -1
  178. package/dist/collection/components/gov-pagination/gov-pagination.js +2 -1
  179. package/dist/collection/components/gov-pagination/gov-pagination.js.map +1 -1
  180. package/dist/collection/components/gov-spacer/gov-spacer.js +1 -1
  181. package/dist/collection/components/gov-stepper/constants.js +2 -0
  182. package/dist/collection/components/gov-stepper/constants.js.map +1 -1
  183. package/dist/collection/components/gov-stepper/gov-stepper-item.js +1 -1
  184. package/dist/collection/components/gov-stepper/gov-stepper-item.js.map +1 -1
  185. package/dist/collection/components/gov-stepper/gov-stepper.js +1 -1
  186. package/dist/collection/components/gov-tabs/gov-tabs-item.js +1 -1
  187. package/dist/collection/components/gov-tabs/gov-tabs.js +3 -2
  188. package/dist/collection/components/gov-tabs/gov-tabs.js.map +1 -1
  189. package/dist/collection/components/gov-tag/gov-tag.js +1 -1
  190. package/dist/collection/components/gov-theme-switch/constants.js +1 -0
  191. package/dist/collection/components/gov-theme-switch/constants.js.map +1 -1
  192. package/dist/collection/components/gov-theme-switch/gov-theme-switch.js +1 -1
  193. package/dist/collection/components/gov-theme-switch/gov-theme-switch.js.map +1 -1
  194. package/dist/collection/components/gov-tile/gov-tile.js +1 -1
  195. package/dist/collection/components/gov-toast/gov-toast.js +3 -2
  196. package/dist/collection/components/gov-toast/gov-toast.js.map +1 -1
  197. package/dist/collection/components/gov-tooltip/gov-tooltip-content.js +1 -1
  198. package/dist/collection/components/gov-tooltip/gov-tooltip.js +2 -2
  199. package/dist/collection/components/gov-wizard/gov-wizard-item.js +2 -2
  200. package/dist/collection/components/gov-wizard/gov-wizard.js +1 -1
  201. package/dist/collection/data/color-definitions.js +13 -13
  202. package/dist/collection/data/font-definitions.js +86 -48
  203. package/dist/collection/pages/Banner.js +268 -0
  204. package/dist/collection/pages/Banner.js.map +1 -0
  205. package/dist/collection/pages/Blockquote.js +25 -0
  206. package/dist/collection/pages/Blockquote.js.map +1 -0
  207. package/dist/collection/pages/Breadcrumbs.js +2 -2
  208. package/dist/collection/pages/Breadcrumbs.js.map +1 -1
  209. package/dist/collection/pages/Card.js +27 -17
  210. package/dist/collection/pages/Card.js.map +1 -1
  211. package/dist/collection/pages/Flex.js +1 -1
  212. package/dist/collection/pages/Flex.js.map +1 -1
  213. package/dist/collection/pages/Forms.js +209 -4
  214. package/dist/collection/pages/Forms.js.map +1 -1
  215. package/dist/collection/pages/Grid.js +61 -40
  216. package/dist/collection/pages/Grid.js.map +1 -1
  217. package/dist/collection/pages/Home.js +57 -0
  218. package/dist/collection/pages/Home.js.map +1 -1
  219. package/dist/collection/pages/Infobar.js +36 -56
  220. package/dist/collection/pages/Infobar.js.map +1 -1
  221. package/dist/collection/pages/Layout.js +10 -10
  222. package/dist/collection/pages/Layout.js.map +1 -1
  223. package/dist/collection/pages/Message.js +10 -10
  224. package/dist/collection/pages/Message.js.map +1 -1
  225. package/dist/collection/pages/Tag.js +14 -0
  226. package/dist/collection/pages/Tag.js.map +1 -1
  227. package/dist/collection/pages/Tiles.js +8 -235
  228. package/dist/collection/pages/Tiles.js.map +1 -1
  229. package/dist/collection/pages/Typography.js +117 -51
  230. package/dist/collection/pages/Typography.js.map +1 -1
  231. package/dist/components/gov-accordion-item.js +1 -1
  232. package/dist/components/gov-attachments-item.js +1 -1
  233. package/dist/components/gov-attachments.js +1 -1
  234. package/dist/components/gov-backdrop.js +1 -1
  235. package/dist/components/{gov-tiles.d.ts → gov-banner.d.ts} +4 -4
  236. package/dist/components/gov-banner.js +2 -0
  237. package/dist/components/gov-banner.js.map +1 -0
  238. package/dist/components/gov-blockquote.d.ts +11 -0
  239. package/dist/components/gov-blockquote.js +2 -0
  240. package/dist/components/gov-blockquote.js.map +1 -0
  241. package/dist/components/gov-breadcrumbs.js +1 -1
  242. package/dist/components/gov-breadcrumbs.js.map +1 -1
  243. package/dist/components/gov-button.js +1 -1
  244. package/dist/components/gov-card.js +1 -1
  245. package/dist/components/gov-card.js.map +1 -1
  246. package/dist/components/gov-chip.js +1 -1
  247. package/dist/components/gov-container.js +1 -1
  248. package/dist/components/gov-control-group.js +1 -1
  249. package/dist/components/gov-cookiebar.js +1 -1
  250. package/dist/components/gov-dialog.js +1 -1
  251. package/dist/components/gov-dialog.js.map +1 -1
  252. package/dist/components/gov-dropdown.js +1 -1
  253. package/dist/components/gov-empty.js +1 -1
  254. package/dist/components/gov-error-code.js +1 -1
  255. package/dist/components/gov-flex.js +1 -1
  256. package/dist/components/gov-flex.js.map +1 -1
  257. package/dist/components/gov-form-autocomplete.js +1 -1
  258. package/dist/components/gov-form-checkbox-group.js +1 -1
  259. package/dist/components/gov-form-checkbox-group.js.map +1 -1
  260. package/dist/components/gov-form-checkbox.js +1 -1
  261. package/dist/components/gov-form-checkbox.js.map +1 -1
  262. package/dist/components/gov-form-control.js +1 -1
  263. package/dist/components/gov-form-file.js +1 -1
  264. package/dist/components/gov-form-file.js.map +1 -1
  265. package/dist/components/gov-form-group.js +1 -1
  266. package/dist/components/gov-form-input.js +1 -1
  267. package/dist/components/gov-form-label.js +1 -1
  268. package/dist/components/gov-form-message.js +1 -1
  269. package/dist/components/gov-form-multi-select.js +1 -1
  270. package/dist/components/gov-form-multi-select.js.map +1 -1
  271. package/dist/components/gov-form-password-power.js +1 -1
  272. package/dist/components/gov-form-radio-group.js +1 -1
  273. package/dist/components/gov-form-radio-group.js.map +1 -1
  274. package/dist/components/gov-form-radio.js +1 -1
  275. package/dist/components/gov-form-radio.js.map +1 -1
  276. package/dist/components/gov-form-range.d.ts +11 -0
  277. package/dist/components/gov-form-range.js +2 -0
  278. package/dist/components/gov-form-range.js.map +1 -0
  279. package/dist/components/gov-form-search.js +1 -1
  280. package/dist/components/gov-form-select.js +1 -1
  281. package/dist/components/gov-form-switch.js +1 -1
  282. package/dist/components/gov-form-switch.js.map +1 -1
  283. package/dist/components/gov-grid-item.js +1 -1
  284. package/dist/components/gov-grid-item.js.map +1 -1
  285. package/dist/components/gov-grid.js +1 -1
  286. package/dist/components/gov-grid.js.map +1 -1
  287. package/dist/components/gov-icon.js +1 -1
  288. package/dist/components/gov-infobar.js +1 -1
  289. package/dist/components/gov-infobar.js.map +1 -1
  290. package/dist/components/gov-layout-column.js +1 -1
  291. package/dist/components/gov-layout-column.js.map +1 -1
  292. package/dist/components/gov-layout.js +1 -1
  293. package/dist/components/gov-lifecycle.js +1 -1
  294. package/dist/components/gov-link.js +1 -1
  295. package/dist/components/gov-link.js.map +1 -1
  296. package/dist/components/gov-loading.js +1 -1
  297. package/dist/components/gov-message.js +1 -1
  298. package/dist/components/gov-message.js.map +1 -1
  299. package/dist/components/gov-pagination.js +1 -1
  300. package/dist/components/gov-pagination.js.map +1 -1
  301. package/dist/components/gov-skeleton.js +1 -1
  302. package/dist/components/gov-spacer.js +1 -1
  303. package/dist/components/gov-stepper-item.js +1 -1
  304. package/dist/components/gov-stepper-item.js.map +1 -1
  305. package/dist/components/gov-stepper.js +1 -1
  306. package/dist/components/gov-tabs-item.js +1 -1
  307. package/dist/components/gov-tabs.js +1 -1
  308. package/dist/components/gov-tabs.js.map +1 -1
  309. package/dist/components/gov-tag.js +1 -1
  310. package/dist/components/gov-theme-switch.js +1 -1
  311. package/dist/components/gov-theme-switch.js.map +1 -1
  312. package/dist/components/gov-tile.js +1 -1
  313. package/dist/components/gov-toast.js +1 -1
  314. package/dist/components/gov-toast.js.map +1 -1
  315. package/dist/components/gov-tooltip-content.js +1 -1
  316. package/dist/components/gov-tooltip.js +1 -1
  317. package/dist/components/gov-wizard-item.js +1 -1
  318. package/dist/components/gov-wizard.js +1 -1
  319. package/dist/components/{p-73938936.js → p-022e49cf.js} +2 -2
  320. package/dist/components/p-10cad7f1.js +2 -0
  321. package/dist/components/p-2ca5423c.js +2 -0
  322. package/dist/components/p-2ca5423c.js.map +1 -0
  323. package/dist/components/p-2fe7d728.js +2 -0
  324. package/dist/components/p-2fe7d728.js.map +1 -0
  325. package/dist/components/p-313b4611.js +2 -0
  326. package/dist/components/p-313b4611.js.map +1 -0
  327. package/dist/components/p-5a861cd2.js +2 -0
  328. package/dist/components/p-5a861cd2.js.map +1 -0
  329. package/dist/components/p-5b0934a8.js +2 -0
  330. package/dist/components/p-5b0934a8.js.map +1 -0
  331. package/dist/components/p-5d60b866.js +2 -0
  332. package/dist/components/p-5d60b866.js.map +1 -0
  333. package/dist/components/p-6ce6e14f.js +2 -0
  334. package/dist/components/p-6ce6e14f.js.map +1 -0
  335. package/dist/components/p-7fb16042.js +2 -0
  336. package/dist/components/p-7fb16042.js.map +1 -0
  337. package/dist/components/p-be086357.js +2 -0
  338. package/dist/components/p-d3435179.js +2 -0
  339. package/dist/components/p-d3435179.js.map +1 -0
  340. package/dist/components/p-de989dfe.js +2 -0
  341. package/dist/components/{p-7be2301a.js → p-e0c3b1a7.js} +2 -2
  342. package/dist/components/p-ea128b8b.js +2 -0
  343. package/dist/components/p-ea128b8b.js.map +1 -0
  344. package/dist/components/p-f9b1a12b.js +2 -0
  345. package/dist/components/p-f9b1a12b.js.map +1 -0
  346. package/dist/components/{p-e44a0fee.js → p-fc2afe61.js} +2 -2
  347. package/dist/components/{p-e44a0fee.js.map → p-fc2afe61.js.map} +1 -1
  348. package/dist/core/core.css +3541 -2361
  349. package/dist/core/core.esm.js +1 -1
  350. package/dist/core/core.esm.js.map +1 -1
  351. package/dist/core/p-07590d84.entry.js +2 -0
  352. package/dist/core/p-07590d84.entry.js.map +1 -0
  353. package/dist/core/p-08552a0e.entry.js +2 -0
  354. package/dist/core/p-08552a0e.entry.js.map +1 -0
  355. package/dist/core/p-0abc38e8.entry.js +2 -0
  356. package/dist/core/p-0abc38e8.entry.js.map +1 -0
  357. package/dist/core/p-0c393d2f.entry.js +2 -0
  358. package/dist/core/p-0c393d2f.entry.js.map +1 -0
  359. package/dist/core/p-0ef1f684.entry.js +2 -0
  360. package/dist/core/p-0ef1f684.entry.js.map +1 -0
  361. package/dist/core/p-16ece889.entry.js +2 -0
  362. package/dist/core/p-16ece889.entry.js.map +1 -0
  363. package/dist/core/p-171e2a2f.entry.js +2 -0
  364. package/dist/core/p-2536a8ff.entry.js +2 -0
  365. package/dist/core/p-2536a8ff.entry.js.map +1 -0
  366. package/dist/core/p-25615325.entry.js +2 -0
  367. package/dist/core/p-2a7bcce0.entry.js +2 -0
  368. package/dist/core/p-2a7bcce0.entry.js.map +1 -0
  369. package/dist/core/p-2ca5423c.js +2 -0
  370. package/dist/core/p-2ca5423c.js.map +1 -0
  371. package/dist/core/{p-9514520c.entry.js → p-2f966102.entry.js} +2 -2
  372. package/dist/core/p-2f966102.entry.js.map +1 -0
  373. package/dist/core/p-2fe7d728.js +2 -0
  374. package/dist/core/p-2fe7d728.js.map +1 -0
  375. package/dist/core/p-3583dcf7.entry.js +2 -0
  376. package/dist/core/p-3583dcf7.entry.js.map +1 -0
  377. package/dist/core/p-3b2267a1.entry.js +2 -0
  378. package/dist/core/{p-e078dab3.entry.js.map → p-3b2267a1.entry.js.map} +1 -1
  379. package/dist/core/p-4216d8f3.entry.js +2 -0
  380. package/dist/core/p-44c912e2.entry.js +2 -0
  381. package/dist/core/p-44c912e2.entry.js.map +1 -0
  382. package/dist/core/p-4d5f768f.entry.js +2 -0
  383. package/dist/core/{p-a8a5e8ca.entry.js.map → p-4d5f768f.entry.js.map} +1 -1
  384. package/dist/core/p-52103c05.entry.js +2 -0
  385. package/dist/core/p-52103c05.entry.js.map +1 -0
  386. package/dist/core/p-52bb8e4f.entry.js +2 -0
  387. package/dist/core/p-52bb8e4f.entry.js.map +1 -0
  388. package/dist/core/p-52c74fc5.entry.js +2 -0
  389. package/dist/core/{p-07b1fa1c.entry.js.map → p-52c74fc5.entry.js.map} +1 -1
  390. package/dist/core/p-548806cb.entry.js +2 -0
  391. package/dist/core/p-548806cb.entry.js.map +1 -0
  392. package/dist/core/p-5fa4965e.entry.js +2 -0
  393. package/dist/core/{p-f9474bb3.entry.js.map → p-5fa4965e.entry.js.map} +1 -1
  394. package/dist/core/p-6d54ce5f.js +2 -0
  395. package/dist/core/p-6f74eb08.entry.js +2 -0
  396. package/dist/core/{p-eed4e606.entry.js → p-75dae924.entry.js} +2 -2
  397. package/dist/core/{p-eed4e606.entry.js.map → p-75dae924.entry.js.map} +1 -1
  398. package/dist/core/p-774ea182.entry.js +2 -0
  399. package/dist/core/p-843f980a.entry.js +2 -0
  400. package/dist/core/p-8a72ebcd.entry.js +2 -0
  401. package/dist/core/p-8cd7a120.entry.js +2 -0
  402. package/dist/core/p-8cd7a120.entry.js.map +1 -0
  403. package/dist/core/{p-5ff7f0c4.entry.js → p-8f469270.entry.js} +2 -2
  404. package/dist/core/p-947804a8.entry.js +2 -0
  405. package/dist/core/p-979ff58c.entry.js +2 -0
  406. package/dist/core/p-979ff58c.entry.js.map +1 -0
  407. package/dist/core/{p-ab500948.entry.js → p-981f217e.entry.js} +2 -2
  408. package/dist/core/p-9c1f3e9e.entry.js +2 -0
  409. package/dist/core/p-9c1f3e9e.entry.js.map +1 -0
  410. package/dist/core/p-a1c825f3.entry.js +2 -0
  411. package/dist/core/p-a1c825f3.entry.js.map +1 -0
  412. package/dist/core/p-a440365f.entry.js +2 -0
  413. package/dist/core/p-a440365f.entry.js.map +1 -0
  414. package/dist/core/{p-bd667900.entry.js → p-a70c7959.entry.js} +2 -2
  415. package/dist/core/p-a8a7ae96.entry.js +2 -0
  416. package/dist/core/p-a8a7ae96.entry.js.map +1 -0
  417. package/dist/core/p-aacafa40.entry.js +2 -0
  418. package/dist/core/{p-72c4ebcd.entry.js.map → p-aacafa40.entry.js.map} +1 -1
  419. package/dist/core/p-aeaba3ef.entry.js +2 -0
  420. package/dist/core/p-b87e5429.entry.js +2 -0
  421. package/dist/core/p-b87e5429.entry.js.map +1 -0
  422. package/dist/core/p-b9f1c2ef.entry.js +2 -0
  423. package/dist/core/p-b9f1c2ef.entry.js.map +1 -0
  424. package/dist/core/p-bca478fd.entry.js +2 -0
  425. package/dist/core/{p-f98f19f6.entry.js.map → p-bca478fd.entry.js.map} +1 -1
  426. package/dist/core/p-be086357.js +2 -0
  427. package/dist/core/p-bea685cb.entry.js +2 -0
  428. package/dist/core/p-c1584cfe.entry.js +2 -0
  429. package/dist/core/p-c1584cfe.entry.js.map +1 -0
  430. package/dist/core/p-c5a49469.entry.js +2 -0
  431. package/dist/core/p-c88d8659.entry.js +2 -0
  432. package/dist/core/p-c88d8659.entry.js.map +1 -0
  433. package/dist/core/{p-49ebfe10.entry.js → p-cba1ebca.entry.js} +2 -2
  434. package/dist/core/p-ccb64e4e.entry.js +2 -0
  435. package/dist/core/p-d383f977.entry.js +2 -0
  436. package/dist/core/p-d990aae8.entry.js +2 -0
  437. package/dist/core/p-ddb3772f.entry.js +2 -0
  438. package/dist/core/{p-fd7a3951.entry.js.map → p-ddb3772f.entry.js.map} +1 -1
  439. package/dist/core/{p-a58f4e2b.entry.js → p-e2655cb7.entry.js} +2 -2
  440. package/dist/core/p-e29c9924.entry.js +2 -0
  441. package/dist/core/{p-a5648769.entry.js.map → p-e29c9924.entry.js.map} +1 -1
  442. package/dist/core/p-ea128b8b.js +2 -0
  443. package/dist/core/p-ea128b8b.js.map +1 -0
  444. package/dist/core/p-ead1f58d.entry.js +2 -0
  445. package/dist/core/p-f83b3b08.entry.js +2 -0
  446. package/dist/core/p-f83b3b08.entry.js.map +1 -0
  447. package/dist/core/{p-e44a0fee.js → p-fc2afe61.js} +2 -2
  448. package/dist/core/{p-e44a0fee.js.map → p-fc2afe61.js.map} +1 -1
  449. package/dist/esm/{array.utils-85696abd.js → array.utils-3b213795.js} +2 -2
  450. package/dist/esm/{array.utils-85696abd.js.map → array.utils-3b213795.js.map} +1 -1
  451. package/dist/esm/{constants-4da2b3c0.js → constants-1548499a.js} +2 -2
  452. package/dist/esm/{constants-4da2b3c0.js.map → constants-1548499a.js.map} +1 -1
  453. package/dist/esm/{constants-372455eb.js → constants-7b1ce2ec.js} +3 -1
  454. package/dist/esm/constants-7b1ce2ec.js.map +1 -0
  455. package/dist/esm/{constants-2d5a0e18.js → constants-dc2115cb.js} +3 -1
  456. package/dist/esm/constants-dc2115cb.js.map +1 -0
  457. package/dist/esm/core.js +1 -1
  458. package/dist/esm/gov-attachments_3.entry.js +4 -4
  459. package/dist/esm/gov-attachments_3.entry.js.map +1 -1
  460. package/dist/esm/gov-backdrop.entry.js +2 -2
  461. package/dist/esm/gov-banner.entry.js +76 -0
  462. package/dist/esm/gov-banner.entry.js.map +1 -0
  463. package/dist/esm/gov-blockquote.entry.js +29 -0
  464. package/dist/esm/gov-blockquote.entry.js.map +1 -0
  465. package/dist/esm/gov-breadcrumbs.entry.js +3 -3
  466. package/dist/esm/gov-button.entry.js +7 -6
  467. package/dist/esm/gov-button.entry.js.map +1 -1
  468. package/dist/esm/gov-card.entry.js +11 -3
  469. package/dist/esm/gov-card.entry.js.map +1 -1
  470. package/dist/esm/gov-chip.entry.js +4 -3
  471. package/dist/esm/gov-chip.entry.js.map +1 -1
  472. package/dist/esm/gov-container.entry.js +1 -1
  473. package/dist/esm/gov-control-group.entry.js +1 -1
  474. package/dist/esm/gov-cookiebar.entry.js +1 -1
  475. package/dist/esm/gov-dialog.entry.js +3 -3
  476. package/dist/esm/gov-dialog.entry.js.map +1 -1
  477. package/dist/esm/gov-dropdown.entry.js +1 -1
  478. package/dist/esm/gov-empty.entry.js +1 -1
  479. package/dist/esm/gov-error-code.entry.js +1 -1
  480. package/dist/esm/gov-flex_3.entry.js +5 -5
  481. package/dist/esm/gov-flex_3.entry.js.map +1 -1
  482. package/dist/esm/gov-form-autocomplete.entry.js +5 -4
  483. package/dist/esm/gov-form-autocomplete.entry.js.map +1 -1
  484. package/dist/esm/gov-form-checkbox-group.entry.js +5 -5
  485. package/dist/esm/gov-form-checkbox-group.entry.js.map +1 -1
  486. package/dist/esm/gov-form-checkbox.entry.js +2 -1
  487. package/dist/esm/gov-form-checkbox.entry.js.map +1 -1
  488. package/dist/esm/gov-form-control.entry.js +1 -1
  489. package/dist/esm/gov-form-file.entry.js +3 -2
  490. package/dist/esm/gov-form-file.entry.js.map +1 -1
  491. package/dist/esm/gov-form-group.entry.js +2 -2
  492. package/dist/esm/gov-form-input_2.entry.js +10 -8
  493. package/dist/esm/gov-form-input_2.entry.js.map +1 -1
  494. package/dist/esm/gov-form-label.entry.js +1 -1
  495. package/dist/esm/gov-form-multi-select.entry.js +6 -5
  496. package/dist/esm/gov-form-multi-select.entry.js.map +1 -1
  497. package/dist/esm/gov-form-password-power.entry.js +1 -1
  498. package/dist/esm/gov-form-radio-group.entry.js +3 -3
  499. package/dist/esm/gov-form-radio-group.entry.js.map +1 -1
  500. package/dist/esm/gov-form-radio.entry.js +2 -1
  501. package/dist/esm/gov-form-radio.entry.js.map +1 -1
  502. package/dist/esm/gov-form-range.entry.js +203 -0
  503. package/dist/esm/gov-form-range.entry.js.map +1 -0
  504. package/dist/esm/gov-form-search.entry.js +1 -1
  505. package/dist/esm/gov-form-select.entry.js +6 -5
  506. package/dist/esm/gov-form-select.entry.js.map +1 -1
  507. package/dist/esm/gov-form-switch.entry.js +2 -1
  508. package/dist/esm/gov-form-switch.entry.js.map +1 -1
  509. package/dist/esm/gov-grid-item.entry.js +13 -7
  510. package/dist/esm/gov-grid-item.entry.js.map +1 -1
  511. package/dist/esm/gov-grid.entry.js +7 -5
  512. package/dist/esm/gov-grid.entry.js.map +1 -1
  513. package/dist/esm/gov-infobar.entry.js +4 -3
  514. package/dist/esm/gov-infobar.entry.js.map +1 -1
  515. package/dist/esm/gov-layout-column.entry.js +1 -1
  516. package/dist/esm/gov-layout.entry.js +1 -1
  517. package/dist/esm/gov-lifecycle.entry.js +1 -1
  518. package/dist/esm/gov-link.entry.js +3 -1
  519. package/dist/esm/gov-link.entry.js.map +1 -1
  520. package/dist/esm/gov-loading.entry.js +1 -1
  521. package/dist/esm/gov-message.entry.js +1 -1
  522. package/dist/esm/gov-message.entry.js.map +1 -1
  523. package/dist/esm/gov-pagination.entry.js +4 -3
  524. package/dist/esm/gov-pagination.entry.js.map +1 -1
  525. package/dist/esm/gov-spacer.entry.js +1 -1
  526. package/dist/esm/gov-stepper-item.entry.js +2 -2
  527. package/dist/esm/gov-stepper-item.entry.js.map +1 -1
  528. package/dist/esm/gov-stepper.entry.js +2 -2
  529. package/dist/esm/gov-tabs-item.entry.js +1 -1
  530. package/dist/esm/gov-tabs.entry.js +4 -3
  531. package/dist/esm/gov-tabs.entry.js.map +1 -1
  532. package/dist/esm/gov-tag.entry.js +1 -1
  533. package/dist/esm/gov-tile.entry.js +1 -1
  534. package/dist/esm/gov-toast.entry.js +3 -2
  535. package/dist/esm/gov-toast.entry.js.map +1 -1
  536. package/dist/esm/gov-tooltip-content.entry.js +1 -1
  537. package/dist/esm/gov-tooltip.entry.js +2 -2
  538. package/dist/esm/gov-wizard-item.entry.js +2 -2
  539. package/dist/esm/gov-wizard.entry.js +3 -3
  540. package/dist/esm/{helpers.types-43ddbdb8.js → helpers.types-fe2f0447.js} +3 -2
  541. package/dist/esm/helpers.types-fe2f0447.js.map +1 -0
  542. package/dist/esm/index-bf8a6f64.js +12 -4
  543. package/dist/esm/loader.js +1 -1
  544. package/dist/esm/{wcag-253a4421.js → wcag-bd11d341.js} +2 -2
  545. package/dist/esm/{wcag-253a4421.js.map → wcag-bd11d341.js.map} +1 -1
  546. package/dist/hydrate/index.js +478 -133
  547. package/dist/hydrate/index.mjs +478 -133
  548. package/dist/stencil.config.js +3 -2
  549. package/dist/stencil.config.js.map +1 -1
  550. package/dist/types/components/gov-banner/constants.d.ts +26 -0
  551. package/dist/types/components/gov-banner/gov-banner.d.ts +28 -0
  552. package/dist/types/components/gov-blockquote/constants.d.ts +10 -0
  553. package/dist/types/components/gov-blockquote/gov-blockquote.d.ts +15 -0
  554. package/dist/types/components/gov-button/button/constants.d.ts +1 -1
  555. package/dist/types/components/gov-card/gov-card.d.ts +10 -0
  556. package/dist/types/components/gov-control-group/constants.d.ts +1 -1
  557. package/dist/types/components/gov-flex/gov-flex.d.ts +5 -1
  558. package/dist/types/components/gov-form/group/constants.d.ts +1 -1
  559. package/dist/types/components/gov-form/range/constants.d.ts +9 -0
  560. package/dist/types/components/gov-form/range/gov-form-range.d.ts +116 -0
  561. package/dist/types/components/gov-grid/constants.d.ts +4 -0
  562. package/dist/types/components/gov-grid/gov-grid-item.d.ts +25 -5
  563. package/dist/types/components/gov-grid/gov-grid.d.ts +11 -2
  564. package/dist/types/components/gov-icon/constants.d.ts +1 -1
  565. package/dist/types/components/gov-infobar/constants.d.ts +1 -1
  566. package/dist/types/components/gov-link/constants.d.ts +1 -0
  567. package/dist/types/components/gov-link/gov-link.d.ts +4 -0
  568. package/dist/types/components/gov-stepper/constants.d.ts +2 -0
  569. package/dist/types/components/gov-theme-switch/constants.d.ts +1 -0
  570. package/dist/types/components.d.ts +357 -36
  571. package/dist/types/pages/Banner.d.ts +3 -0
  572. package/dist/types/pages/Blockquote.d.ts +3 -0
  573. package/package.json +3 -3
  574. package/dist/cjs/constants-4dfa23e3.js.map +0 -1
  575. package/dist/cjs/constants-52053f2d.js.map +0 -1
  576. package/dist/cjs/gov-tiles.cjs.entry.js +0 -26
  577. package/dist/cjs/gov-tiles.cjs.entry.js.map +0 -1
  578. package/dist/cjs/helpers.types-ff60c9bd.js.map +0 -1
  579. package/dist/collection/components/gov-tile/container/constants.js +0 -4
  580. package/dist/collection/components/gov-tile/container/constants.js.map +0 -1
  581. package/dist/collection/components/gov-tile/container/gov-tiles.js +0 -37
  582. package/dist/collection/components/gov-tile/container/gov-tiles.js.map +0 -1
  583. package/dist/components/gov-tiles.js +0 -2
  584. package/dist/components/gov-tiles.js.map +0 -1
  585. package/dist/components/p-076c8b31.js +0 -2
  586. package/dist/components/p-076c8b31.js.map +0 -1
  587. package/dist/components/p-13a70392.js +0 -2
  588. package/dist/components/p-13a70392.js.map +0 -1
  589. package/dist/components/p-2aedc81e.js +0 -2
  590. package/dist/components/p-2aedc81e.js.map +0 -1
  591. package/dist/components/p-4d513423.js +0 -2
  592. package/dist/components/p-4d513423.js.map +0 -1
  593. package/dist/components/p-4faecdb2.js +0 -2
  594. package/dist/components/p-4faecdb2.js.map +0 -1
  595. package/dist/components/p-558cbab0.js +0 -2
  596. package/dist/components/p-558cbab0.js.map +0 -1
  597. package/dist/components/p-80dad64b.js +0 -2
  598. package/dist/components/p-880743a5.js +0 -2
  599. package/dist/components/p-880743a5.js.map +0 -1
  600. package/dist/components/p-a521c59a.js +0 -2
  601. package/dist/components/p-a521c59a.js.map +0 -1
  602. package/dist/components/p-a877bf8a.js +0 -2
  603. package/dist/components/p-a877bf8a.js.map +0 -1
  604. package/dist/components/p-b97d8edd.js +0 -2
  605. package/dist/components/p-b97d8edd.js.map +0 -1
  606. package/dist/components/p-c438a723.js +0 -2
  607. package/dist/components/p-c5e91e5a.js +0 -2
  608. package/dist/components/p-c5e91e5a.js.map +0 -1
  609. package/dist/components/p-ded281e6.js +0 -2
  610. package/dist/core/p-07b1fa1c.entry.js +0 -2
  611. package/dist/core/p-0932c74d.entry.js +0 -2
  612. package/dist/core/p-13c6da90.entry.js +0 -2
  613. package/dist/core/p-13c6da90.entry.js.map +0 -1
  614. package/dist/core/p-15a7b952.entry.js +0 -2
  615. package/dist/core/p-15a7b952.entry.js.map +0 -1
  616. package/dist/core/p-2470194a.entry.js +0 -2
  617. package/dist/core/p-2470194a.entry.js.map +0 -1
  618. package/dist/core/p-29ac15d2.js +0 -2
  619. package/dist/core/p-2abdce2d.entry.js +0 -2
  620. package/dist/core/p-2abdce2d.entry.js.map +0 -1
  621. package/dist/core/p-2ae8b8d5.entry.js +0 -2
  622. package/dist/core/p-2ae8b8d5.entry.js.map +0 -1
  623. package/dist/core/p-2aedc81e.js +0 -2
  624. package/dist/core/p-2aedc81e.js.map +0 -1
  625. package/dist/core/p-3627773f.entry.js +0 -2
  626. package/dist/core/p-3627773f.entry.js.map +0 -1
  627. package/dist/core/p-36b35592.entry.js +0 -2
  628. package/dist/core/p-36b35592.entry.js.map +0 -1
  629. package/dist/core/p-3974176f.entry.js +0 -2
  630. package/dist/core/p-3974176f.entry.js.map +0 -1
  631. package/dist/core/p-3b8b331f.entry.js +0 -2
  632. package/dist/core/p-41e0ad2e.entry.js +0 -2
  633. package/dist/core/p-41e0ad2e.entry.js.map +0 -1
  634. package/dist/core/p-4aa5db49.entry.js +0 -2
  635. package/dist/core/p-4aa5db49.entry.js.map +0 -1
  636. package/dist/core/p-5e42395f.entry.js +0 -2
  637. package/dist/core/p-5e42395f.entry.js.map +0 -1
  638. package/dist/core/p-72c4ebcd.entry.js +0 -2
  639. package/dist/core/p-72cdac94.entry.js +0 -2
  640. package/dist/core/p-77bf7b01.entry.js +0 -2
  641. package/dist/core/p-77bf7b01.entry.js.map +0 -1
  642. package/dist/core/p-7a44bd0a.entry.js +0 -2
  643. package/dist/core/p-7a44bd0a.entry.js.map +0 -1
  644. package/dist/core/p-7c0be05a.entry.js +0 -2
  645. package/dist/core/p-7c0be05a.entry.js.map +0 -1
  646. package/dist/core/p-80c7db1f.entry.js +0 -2
  647. package/dist/core/p-80c7db1f.entry.js.map +0 -1
  648. package/dist/core/p-880743a5.js +0 -2
  649. package/dist/core/p-880743a5.js.map +0 -1
  650. package/dist/core/p-8e5f45d0.entry.js +0 -2
  651. package/dist/core/p-8ede0622.entry.js +0 -2
  652. package/dist/core/p-9256cf6c.entry.js +0 -2
  653. package/dist/core/p-93179cbf.entry.js +0 -2
  654. package/dist/core/p-93179cbf.entry.js.map +0 -1
  655. package/dist/core/p-93b747c1.entry.js +0 -2
  656. package/dist/core/p-9514520c.entry.js.map +0 -1
  657. package/dist/core/p-9897ac81.entry.js +0 -2
  658. package/dist/core/p-9897ac81.entry.js.map +0 -1
  659. package/dist/core/p-9e77f076.entry.js +0 -2
  660. package/dist/core/p-9fcb2ba7.entry.js +0 -2
  661. package/dist/core/p-a0728f09.entry.js +0 -2
  662. package/dist/core/p-a0728f09.entry.js.map +0 -1
  663. package/dist/core/p-a22517e2.entry.js +0 -2
  664. package/dist/core/p-a22517e2.entry.js.map +0 -1
  665. package/dist/core/p-a521c59a.js +0 -2
  666. package/dist/core/p-a521c59a.js.map +0 -1
  667. package/dist/core/p-a5648769.entry.js +0 -2
  668. package/dist/core/p-a8a5e8ca.entry.js +0 -2
  669. package/dist/core/p-b319674e.entry.js +0 -2
  670. package/dist/core/p-b404f53c.entry.js +0 -2
  671. package/dist/core/p-c34dad75.entry.js +0 -2
  672. package/dist/core/p-c9d70c7a.entry.js +0 -2
  673. package/dist/core/p-d512059d.entry.js +0 -2
  674. package/dist/core/p-ded281e6.js +0 -2
  675. package/dist/core/p-e078dab3.entry.js +0 -2
  676. package/dist/core/p-e4ac787c.entry.js +0 -2
  677. package/dist/core/p-e4ac787c.entry.js.map +0 -1
  678. package/dist/core/p-e7b3b5db.entry.js +0 -2
  679. package/dist/core/p-e7b3b5db.entry.js.map +0 -1
  680. package/dist/core/p-f60265c3.entry.js +0 -2
  681. package/dist/core/p-f6863a64.entry.js +0 -2
  682. package/dist/core/p-f6863a64.entry.js.map +0 -1
  683. package/dist/core/p-f9474bb3.entry.js +0 -2
  684. package/dist/core/p-f98f19f6.entry.js +0 -2
  685. package/dist/core/p-fd7a3951.entry.js +0 -2
  686. package/dist/esm/constants-2d5a0e18.js.map +0 -1
  687. package/dist/esm/constants-372455eb.js.map +0 -1
  688. package/dist/esm/gov-tiles.entry.js +0 -22
  689. package/dist/esm/gov-tiles.entry.js.map +0 -1
  690. package/dist/esm/helpers.types-43ddbdb8.js.map +0 -1
  691. package/dist/types/components/gov-tile/container/constants.d.ts +0 -3
  692. package/dist/types/components/gov-tile/container/gov-tiles.d.ts +0 -10
  693. /package/dist/components/{p-73938936.js.map → p-022e49cf.js.map} +0 -0
  694. /package/dist/components/{p-80dad64b.js.map → p-10cad7f1.js.map} +0 -0
  695. /package/dist/components/{p-ded281e6.js.map → p-be086357.js.map} +0 -0
  696. /package/dist/components/{p-c438a723.js.map → p-de989dfe.js.map} +0 -0
  697. /package/dist/components/{p-7be2301a.js.map → p-e0c3b1a7.js.map} +0 -0
  698. /package/dist/core/{p-93b747c1.entry.js.map → p-171e2a2f.entry.js.map} +0 -0
  699. /package/dist/core/{p-9fcb2ba7.entry.js.map → p-25615325.entry.js.map} +0 -0
  700. /package/dist/core/{p-9256cf6c.entry.js.map → p-4216d8f3.entry.js.map} +0 -0
  701. /package/dist/core/{p-29ac15d2.js.map → p-6d54ce5f.js.map} +0 -0
  702. /package/dist/core/{p-72cdac94.entry.js.map → p-6f74eb08.entry.js.map} +0 -0
  703. /package/dist/core/{p-8e5f45d0.entry.js.map → p-774ea182.entry.js.map} +0 -0
  704. /package/dist/core/{p-f60265c3.entry.js.map → p-843f980a.entry.js.map} +0 -0
  705. /package/dist/core/{p-8ede0622.entry.js.map → p-8a72ebcd.entry.js.map} +0 -0
  706. /package/dist/core/{p-5ff7f0c4.entry.js.map → p-8f469270.entry.js.map} +0 -0
  707. /package/dist/core/{p-b319674e.entry.js.map → p-947804a8.entry.js.map} +0 -0
  708. /package/dist/core/{p-ab500948.entry.js.map → p-981f217e.entry.js.map} +0 -0
  709. /package/dist/core/{p-bd667900.entry.js.map → p-a70c7959.entry.js.map} +0 -0
  710. /package/dist/core/{p-c34dad75.entry.js.map → p-aeaba3ef.entry.js.map} +0 -0
  711. /package/dist/core/{p-ded281e6.js.map → p-be086357.js.map} +0 -0
  712. /package/dist/core/{p-0932c74d.entry.js.map → p-bea685cb.entry.js.map} +0 -0
  713. /package/dist/core/{p-9e77f076.entry.js.map → p-c5a49469.entry.js.map} +0 -0
  714. /package/dist/core/{p-49ebfe10.entry.js.map → p-cba1ebca.entry.js.map} +0 -0
  715. /package/dist/core/{p-b404f53c.entry.js.map → p-ccb64e4e.entry.js.map} +0 -0
  716. /package/dist/core/{p-d512059d.entry.js.map → p-d383f977.entry.js.map} +0 -0
  717. /package/dist/core/{p-3b8b331f.entry.js.map → p-d990aae8.entry.js.map} +0 -0
  718. /package/dist/core/{p-a58f4e2b.entry.js.map → p-e2655cb7.entry.js.map} +0 -0
  719. /package/dist/core/{p-c9d70c7a.entry.js.map → p-ead1f58d.entry.js.map} +0 -0
@@ -14,7 +14,7 @@ export class GovControlGroup {
14
14
  validateProp(Colors, newValue, ControlGroupClass.root);
15
15
  }
16
16
  render() {
17
- return (h(Host, { key: 'bee513bb064b3a276eaede7f93ed12b97edb7adb', class: this.h.classes(ControlGroupClass.root), color: this.color }, h("slot", { key: 'adba55ccd38d432ae11fa4967996d8bcaf552427' })));
17
+ return (h(Host, { key: '74d339e88105be80b3f335aa2af1155ab23099c8', class: this.h.classes(ControlGroupClass.root), color: this.color }, h("slot", { key: 'e3af09285370470ad4e1ca9e6b225ca98708cebc' })));
18
18
  }
19
19
  static get is() { return "gov-control-group"; }
20
20
  static get properties() {
@@ -6,7 +6,7 @@ export class GovCookiebar {
6
6
  this.h = govHost(this.host);
7
7
  }
8
8
  render() {
9
- return (h(Host, { key: '311f0da16d86ab548e90e8f7be69d23d88a71ae4', class: this.h.classes(CookieConsentClass.root) }, h("div", { key: 'f371e0bfa5ad8b2195aec2fd0c02f86fb81d58ff', class: CookieConsentClass.content }, h("slot", { key: '96433ca7228d4bf61bfc6dc041bc519c83f56109', name: "headline" }), h("slot", { key: '4fa8e397eba029f55329d0ca6d24044ae7c9a513' })), (this.h.hasSlot('actions-primary') || this.h.hasSlot('actions-secondary')) && (h("div", { key: 'a1d5e5d03d8d89bceb65f45f75d7dc3d446d1b62', class: CookieConsentClass.actions }, this.h.hasSlot('actions-primary') && (h("div", { key: '4ee2b3b82b91bdfb3d87a7bc34e9b0d4e2fc4f33', class: CookieConsentClass.actionsPrimary }, h("slot", { key: '7c0cbf9c5f334cffa4a4eb3f2af9a05bfc8af208', name: "actions-primary" }))), this.h.hasSlot('actions-secondary') && (h("div", { key: 'e40a9f403e994584f53df9e0d84e27aa08c849e2', class: CookieConsentClass.actionsSecondary }, h("slot", { key: '5a2bc741413334a0f08bf2d17b94d1c51b5c3f69', name: "actions-secondary" })))))));
9
+ return (h(Host, { key: 'ad50c5414cb7d3dc0c5b2d378e2484dea094b1de', class: this.h.classes(CookieConsentClass.root) }, h("div", { key: 'aeedb06244acdb5bf57f11c37132d7fec2871cc5', class: CookieConsentClass.content }, h("slot", { key: '90ac710208833ac2c6349792a02f13c4e80741c4', name: "headline" }), h("slot", { key: '67c6c377aa6255bd31fefa8d20b55bfa3c90b489' })), (this.h.hasSlot('actions-primary') || this.h.hasSlot('actions-secondary')) && (h("div", { key: 'aa9b2f1162adcd6d9a2d81da2262046ec8886f50', class: CookieConsentClass.actions }, this.h.hasSlot('actions-primary') && (h("div", { key: 'b152aebaef3031dc48fe569fef4f1f8119dbaf6b', class: CookieConsentClass.actionsPrimary }, h("slot", { key: '16b3e328ddc88528d877052b445855dc909605d4', name: "actions-primary" }))), this.h.hasSlot('actions-secondary') && (h("div", { key: 'a825b255261a36cfd192d8936de9eb2b78d5d941', class: CookieConsentClass.actionsSecondary }, h("slot", { key: 'f651dfbf6756682711b2c4415df6acf4a2c9a479', name: "actions-secondary" })))))));
10
10
  }
11
11
  static get is() { return "gov-cookiebar"; }
12
12
  static get elementRef() { return "host"; }
@@ -51,7 +51,7 @@ export class GovDialog {
51
51
  document.body.classList.remove(DialogClass.bodyFix);
52
52
  }
53
53
  render() {
54
- return (h(Host, { key: 'c3b65521da7837b81972262ecf614d3c12f14bb3', class: this.h.classes(DialogClass.root), open: this.open, hydrated: this.hydrated }, h("dialog", { key: '98b6d6db6fc9bd35760c03586548cc8a2470752a', class: DialogClass.dialog, hidden: !this.open, tabindex: boolToFocusValue(this.open), open: this.open, "aria-modal": "true", "aria-hidden": toBoolAttr(!this.open), "aria-labelledby": this.accessibleLabelledBy || this.labelId, "aria-describedby": this.accessibleDescribedBy || this.contentId, role: this.role }, h("div", { key: 'a8517c656ef3d3e3cf17bc9914e268a20b0e0e4b', class: DialogClass.inner }, h("div", { key: '3ba16e3bafe7936f0c0a999d45d5efdd64291ec3', class: DialogClass.header }, h("slot", { key: '736a0a11d601e9f522e69369ffa0f276c9673803', name: "icon" }), this.h.hasSlot('title') && (h("span", { key: '5505a53174c82c1faf73ed500c5672f2dc8ea83b', class: DialogClass.title, id: this.labelId }, h("slot", { key: '391dd6236c23c14e62c8c97a94c5733409939c32', name: "title" }))), h("gov-button", { key: '867505a691e69da09808350fc7eefb51974005ba', ref: el => (this.closeCtaRef = el), disabled: this.blockClose, class: DialogClass.close, color: "primary", "aria-label": this.accessibleCloseLabel, "aria-labelledby": this.accessibleCloseLabelledBy, type: "base", "on-gov-click": this.onCloseHandler.bind(this) }, h("gov-icon", { key: '6fe742ccf5aca7f27cac627373a338d46bbccfda', slot: "icon-start", name: "x-lg", type: "components" }))), h("div", { key: '9d9d6a45d79215ba5415512405ce7577d6a1dc26', class: DialogClass.content, id: this.contentId }, h("slot", { key: 'f9b32ee565586b3741c166a0aa14ca1d1c55f032' })), this.h.hasSlot('footer') && (h("div", { key: '8628b46f0196f38f7d2f273f0860a7c6cee62655', class: DialogClass.footer }, h("slot", { key: '0742967012eab82c36f9dfe0f3b43213be8bcd47', name: "footer" }))))), this.open ? (h("gov-backdrop", { disabled: this.blockBackdropClose, "aria-label": this.accessibleCloseLabel, "aria-labelled-by": this.accessibleCloseLabelledBy, "on-gov-click": this.onCloseHandler.bind(this) })) : null));
54
+ return (h(Host, { key: 'd4185a1b611db509ebf08509afa23b6e1682fe6f', class: this.h.classes(DialogClass.root), open: this.open, hydrated: this.hydrated }, h("dialog", { key: '6a9624025826c1bd0eb7e83739112cf7b2d56dbc', class: DialogClass.dialog, hidden: !this.open, tabindex: boolToFocusValue(this.open), open: this.open, "aria-modal": "true", "aria-hidden": toBoolAttr(!this.open), "aria-labelledby": this.accessibleLabelledBy || this.labelId, "aria-describedby": this.accessibleDescribedBy || this.contentId, role: this.role }, h("div", { key: '1f93dc885aad9898151e00ca4717c8dd8eeea1ff', class: DialogClass.inner }, h("div", { key: '4455c3f5f5e6aa9e6ec84ce400ead24a3e526374', class: DialogClass.header }, this.h.hasSlot("icon") && (h("span", { key: '40bd7dba7f121d87e00b48b5c4f3ed0c01f5d4a0' }, h("slot", { key: '911f36f5199cde0f6561da2385934bb88e668c68', name: "icon" }))), this.h.hasSlot('title') && (h("span", { key: '1e45df978ffc0f360d242d24e826b4df41188196', class: DialogClass.title, id: this.labelId }, h("slot", { key: '920d60a3305db5b2b7963e6e0c795dbe49101f40', name: "title" }))), h("gov-button", { key: '42a64cd1706ba71362bc0bc0b8d69e9867ec5fb1', ref: el => (this.closeCtaRef = el), disabled: this.blockClose, class: DialogClass.close, color: "primary", "aria-label": this.accessibleCloseLabel, "aria-labelledby": this.accessibleCloseLabelledBy, type: "base", size: "m", "on-gov-click": this.onCloseHandler.bind(this) }, h("gov-icon", { key: '480265e99c21126cbb755df8e6c6f482f69fb92b', slot: "icon-start", name: "x-lg", type: "components" }))), h("div", { key: 'dc16ca442fbb779b8d0c127253324d2894e1b1e5', class: DialogClass.content, id: this.contentId }, h("slot", { key: 'a721e2e66951a436c2a7c946648e15cd1043a7c1' })), this.h.hasSlot('footer') && (h("div", { key: 'ea53d2a6284285c3b33a346784f783e69cc6ff4a', class: DialogClass.footer }, h("slot", { key: '1693aec930d48ffd79505638b4b03df4e50529f5', name: "footer" }))))), this.open ? (h("gov-backdrop", { disabled: this.blockBackdropClose, "aria-label": this.accessibleCloseLabel, "aria-labelled-by": this.accessibleCloseLabelledBy, "on-gov-click": this.onCloseHandler.bind(this) })) : null));
55
55
  }
56
56
  onCloseHandler(e) {
57
57
  e.stopPropagation();
@@ -1 +1 @@
1
- {"version":3,"file":"gov-dialog.js","sourceRoot":"","sources":["../../../../../../src/components/gov-dialog/gov-dialog.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAE,OAAO,EAAE,KAAK,EAAgB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAC,MAAM,eAAe,CAAA;AACnG,OAAO,EAAC,gBAAgB,EAAE,OAAO,EAAE,UAAU,EAAC,MAAM,4BAA4B,CAAA;AAEhF,OAAO,EAAC,uBAAuB,EAAC,MAAM,uBAAuB,CAAA;AAC7D,OAAO,EAAC,eAAe,EAAC,MAAM,6BAA6B,CAAA;AAE3D,OAAO,EAAC,QAAQ,EAAC,MAAM,0BAA0B,CAAA;AACjD,OAAO,EAAC,WAAW,EAAC,MAAM,aAAa,CAAA;AACvC,OAAO,EAAC,IAAI,EAAC,MAAM,2BAA2B,CAAC;AAK/C,MAAM,OAAO,SAAS;IAOrB;QAHQ,aAAQ,GAAG,KAAK,CAAC;oBAcoB,KAAK;0BAIH,KAAK;kCAIY,KAAK;oBAIjB,QAAQ;wBAIA,IAAI;;;oCAYqB,aAAa;;QAtCjG,IAAI,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC3B,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,gBAAgB,CAAC,CAAA;QACzC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,kBAAkB,CAAC,CAAA;KAC7C;IA8CD,SAAS,CAAC,QAAiB;QAC1B,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAA;QACpB,IAAI,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,CAAA;IAC1B,CAAC;IAEO,UAAU;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;IACjD,CAAC;IAEO,UAAU;QACjB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAA;QACjB,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;IACpD,CAAC;IAED,KAAK,CAAC,kBAAkB;QACvB,IAAI,uBAAuB,EAAE,EAAE,CAAC;YAC/B,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC,CAAA;QACzC,CAAC;QAED,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACf,IAAI,CAAC,UAAU,EAAE,CAAA;QAClB,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,UAAU,EAAE,CAAA;QAClB,CAAC;IACF,CAAC;IAED,iBAAiB;QAChB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAA;IACrB,CAAC;IAED,oBAAoB;QACnB,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;IACpD,CAAC;IAED,MAAM;QACL,OAAO,CACN,EAAC,IAAI,qDAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACtF,+DACC,KAAK,EAAE,WAAW,CAAC,MAAM,EACzB,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,EAClB,QAAQ,EAAE,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EACrC,IAAI,EAAE,IAAI,CAAC,IAAI,gBACJ,MAAM,iBACJ,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,qBAClB,IAAI,CAAC,oBAAoB,IAAI,IAAI,CAAC,OAAO,sBACxC,IAAI,CAAC,qBAAqB,IAAI,IAAI,CAAC,SAAS,EAC9D,IAAI,EAAE,IAAI,CAAC,IAAI;gBAEf,4DAAK,KAAK,EAAE,WAAW,CAAC,KAAK;oBAC5B,4DAAK,KAAK,EAAE,WAAW,CAAC,MAAM;wBAC7B,6DAAM,IAAI,EAAC,MAAM,GAAE;wBAClB,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAC3B,6DAAM,KAAK,EAAE,WAAW,CAAC,KAAK,EAAE,EAAE,EAAE,IAAI,CAAC,OAAO;4BAC/C,6DAAM,IAAI,EAAC,OAAO,GAAE,CACd,CACP;wBACD,mEACC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC,EAClC,QAAQ,EAAE,IAAI,CAAC,UAAU,EACzB,KAAK,EAAE,WAAW,CAAC,KAAK,EACxB,KAAK,EAAC,SAAS,gBACH,IAAI,CAAC,oBAAoB,qBACpB,IAAI,CAAC,yBAAyB,EAC/C,IAAI,EAAC,MAAM,kBACG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;4BAE5C,iEAAU,IAAI,EAAC,YAAY,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,YAAY,GAAY,CACzD,CACR;oBACN,4DAAK,KAAK,EAAE,WAAW,CAAC,OAAO,EAAE,EAAE,EAAE,IAAI,CAAC,SAAS;wBAClD,8DAAO,CACF;oBACL,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAC5B,4DAAK,KAAK,EAAE,WAAW,CAAC,MAAM;wBAC7B,6DAAM,IAAI,EAAC,QAAQ,GAAE,CAChB,CACN,CACI,CACE;YAER,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CACZ,oBACC,QAAQ,EAAE,IAAI,CAAC,kBAAkB,gBACrB,IAAI,CAAC,oBAAoB,sBACnB,IAAI,CAAC,yBAAyB,kBAClC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,GAC3C,CACF,CAAC,CAAC,CAAC,IAAI,CACF,CACP,CAAA;IACF,CAAC;IAEO,cAAc,CAAC,CAAe;QACrC,CAAC,CAAC,eAAe,EAAE,CAAA;QACnB,CAAC,CAAC,cAAc,EAAE,CAAA;QAClB,IAAI,IAAI,CAAC,UAAU,KAAK,KAAK,EAAE,CAAC;YAC/B,IAAI,CAAC,UAAU,EAAE,CAAA;YACjB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACtB,CAAC;IACF,CAAC;IAED;;OAEG;IAEH,KAAK,CAAC,QAAQ;QACb,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACnC,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAA;QACpC,CAAC;IACF,CAAC;IAGD;;OAEG;IAEH,KAAK,CAAC,qBAAqB;QAC1B,eAAe,CAAC,IAAI,CAAC,oBAAoB,EAAE,wBAAwB,EAAE,WAAW,CAAC,IAAI,CAAC,CAAA;QACtF,eAAe,CAAC,IAAI,CAAC,qBAAqB,EAAE,yBAAyB,EAAE,WAAW,CAAC,IAAI,CAAC,CAAA;IACzF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACD","sourcesContent":["import {Component, Element, Event, EventEmitter, h, Host, Method, Prop, Watch} from '@stencil/core'\nimport {boolToFocusValue, govHost, toBoolAttr} from '../../helpers/Dom/template'\nimport {GovHost} from '../../helpers/Dom/template.types'\nimport {canValidateWcagOnRender} from '../../helpers/Dom/win'\nimport {validateWcagRef} from '../../helpers/Validate/wcag'\nimport {Nullable} from '../../types/interfaces'\nimport {createID} from '../../utils/string.utils'\nimport {DialogClass} from './constants'\nimport {tick} from \"../../utils/stencil.utils\";\n\n@Component({\n\ttag: 'gov-dialog',\n})\nexport class GovDialog {\n\tprivate h: GovHost\n\tprivate readonly labelId: string\n\tprivate readonly contentId: string\n\tprivate hydrated = false;\n\tprivate closeCtaRef?: HTMLGovButtonElement\n\n\tconstructor() {\n\t\tthis.h = govHost(this.host)\n\t\tthis.labelId = createID('GovDialogLabel')\n\t\tthis.contentId = createID('GovDialogContent')\n\t}\n\n\t@Element() host: HTMLGovDialogElement\n\n\t/**\n\t * Attribute for dialog window display\n\t */\n\t@Prop({mutable: true, reflect: true}) open = false\n\t/**\n\t * Attribute allowing blocking the dialog closing\n\t */\n\t@Prop({attribute: 'block-close'}) blockClose = false\n\t/**\n\t * Attribute allowing blocking the backdrop dialog closing\n\t */\n\t@Prop({attribute: 'block-backdrop-close'}) blockBackdropClose = false\n\t/**\n\t * Role of dialog\n\t */\n\t@Prop({attribute: 'role'}) role: Nullable<string> = 'dialog'\n\t/**\n\t * Used to change the HTML tag in the dialog label for correct semantic structure\n\t */\n\t@Prop({attribute: 'label-tag'}) readonly labelTag: string = 'h2'\n\t/**\n\t * String of id's that indicate alternative labels elements\n\t */\n\t@Prop({attribute: 'accessible-labelled-by'}) accessibleLabelledBy: string\n\t/**\n\t * Indicates the id of a component that describes the dialog.\n\t */\n\t@Prop({attribute: 'accessible-described-by'}) accessibleDescribedBy: string\n\t/**\n\t * Adds accessible label for the dialog close button that is only shown for screen readers.\n\t */\n\t@Prop({attribute: 'accessible-close-label'}) readonly accessibleCloseLabel: string = 'Zavřít okno'\n\t/**\n\t * A string of identifiers that indicate alternative label elements for closing the dialog window\n\t */\n\t@Prop({attribute: 'accessible-close-labelled-by'}) accessibleCloseLabelledBy: string\n\t/**\n\t * Emitted when dialog window closes.\n\t */\n\t@Event({eventName: 'gov-close'}) govClose: EventEmitter<PointerEvent>\n\n\t@Watch('open')\n\twatchOpen(newValue: boolean): void {\n\t\tthis.open = newValue\n\t\tthis.setFocus().finally()\n\t}\n\n\tprivate showDialog() {\n\t\tthis.open = true\n\t\tdocument.body.classList.add(DialogClass.bodyFix)\n\t}\n\n\tprivate hideDialog() {\n\t\tthis.open = false\n\t\tdocument.body.classList.remove(DialogClass.bodyFix)\n\t}\n\n\tasync componentDidRender() {\n\t\tif (canValidateWcagOnRender()) {\n\t\t\ttick(() => this.validateAccessibility())\n\t\t}\n\n\t\tif (this.open) {\n\t\t\tthis.showDialog()\n\t\t} else {\n\t\t\tthis.hideDialog()\n\t\t}\n\t}\n\n\tconnectedCallback() {\n\t\tthis.hydrated = true\n\t}\n\n\tdisconnectedCallback(): void {\n\t\tdocument.body.classList.remove(DialogClass.bodyFix)\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class={this.h.classes(DialogClass.root)} open={this.open} hydrated={this.hydrated}>\n\t\t\t\t<dialog\n\t\t\t\t\tclass={DialogClass.dialog}\n\t\t\t\t\thidden={!this.open}\n\t\t\t\t\ttabindex={boolToFocusValue(this.open)}\n\t\t\t\t\topen={this.open}\n\t\t\t\t\taria-modal=\"true\"\n\t\t\t\t\taria-hidden={toBoolAttr(!this.open)}\n\t\t\t\t\taria-labelledby={this.accessibleLabelledBy || this.labelId}\n\t\t\t\t\taria-describedby={this.accessibleDescribedBy || this.contentId}\n\t\t\t\t\trole={this.role}\n\t\t\t\t>\n\t\t\t\t\t<div class={DialogClass.inner}>\n\t\t\t\t\t\t<div class={DialogClass.header}>\n\t\t\t\t\t\t\t<slot name=\"icon\"/>\n\t\t\t\t\t\t\t{this.h.hasSlot('title') && (\n\t\t\t\t\t\t\t\t<span class={DialogClass.title} id={this.labelId}>\n\t\t\t\t\t\t\t\t\t<slot name=\"title\"/>\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t<gov-button\n\t\t\t\t\t\t\t\tref={el => (this.closeCtaRef = el)}\n\t\t\t\t\t\t\t\tdisabled={this.blockClose}\n\t\t\t\t\t\t\t\tclass={DialogClass.close}\n\t\t\t\t\t\t\t\tcolor=\"primary\"\n\t\t\t\t\t\t\t\taria-label={this.accessibleCloseLabel}\n\t\t\t\t\t\t\t\taria-labelledby={this.accessibleCloseLabelledBy}\n\t\t\t\t\t\t\t\ttype=\"base\"\n\t\t\t\t\t\t\t\ton-gov-click={this.onCloseHandler.bind(this)}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<gov-icon slot=\"icon-start\" name=\"x-lg\" type=\"components\"></gov-icon>\n\t\t\t\t\t\t\t</gov-button>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div class={DialogClass.content} id={this.contentId}>\n\t\t\t\t\t\t\t<slot/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t{this.h.hasSlot('footer') && (\n\t\t\t\t\t\t\t<div class={DialogClass.footer}>\n\t\t\t\t\t\t\t\t<slot name=\"footer\"/>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t</dialog>\n\n\t\t\t\t{this.open ? (\n\t\t\t\t\t<gov-backdrop\n\t\t\t\t\t\tdisabled={this.blockBackdropClose}\n\t\t\t\t\t\taria-label={this.accessibleCloseLabel}\n\t\t\t\t\t\taria-labelled-by={this.accessibleCloseLabelledBy}\n\t\t\t\t\t\ton-gov-click={this.onCloseHandler.bind(this)}\n\t\t\t\t\t/>\n\t\t\t\t) : null}\n\t\t\t</Host>\n\t\t)\n\t}\n\n\tprivate onCloseHandler(e: PointerEvent) {\n\t\te.stopPropagation()\n\t\te.preventDefault()\n\t\tif (this.blockClose === false) {\n\t\t\tthis.hideDialog()\n\t\t\tthis.govClose.emit(e)\n\t\t}\n\t}\n\n\t/**\n\t * Sets the close button to focus\n\t */\n\t@Method()\n\tasync setFocus(): Promise<void> {\n\t\tif (this.open && this.closeCtaRef) {\n\t\t\tthis.closeCtaRef.setFocus().catch()\n\t\t}\n\t}\n\n\n\t/**\n\t * Validate the WCAG attributes of the component\n\t */\n\t@Method()\n\tasync validateAccessibility(): Promise<void> {\n\t\tvalidateWcagRef(this.accessibleLabelledBy, 'accessible-labelled-by', DialogClass.root)\n\t\tvalidateWcagRef(this.accessibleDescribedBy, 'accessible-described-by', DialogClass.root)\n\t}\n}\n"]}
1
+ {"version":3,"file":"gov-dialog.js","sourceRoot":"","sources":["../../../../../../src/components/gov-dialog/gov-dialog.tsx"],"names":[],"mappings":"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","sourcesContent":["import {Component, Element, Event, EventEmitter, h, Host, Method, Prop, Watch} from '@stencil/core'\nimport {boolToFocusValue, govHost, toBoolAttr} from '../../helpers/Dom/template'\nimport {GovHost} from '../../helpers/Dom/template.types'\nimport {canValidateWcagOnRender} from '../../helpers/Dom/win'\nimport {validateWcagRef} from '../../helpers/Validate/wcag'\nimport {Nullable} from '../../types/interfaces'\nimport {createID} from '../../utils/string.utils'\nimport {DialogClass} from './constants'\nimport {tick} from \"../../utils/stencil.utils\";\n\n@Component({\n\ttag: 'gov-dialog',\n})\nexport class GovDialog {\n\tprivate h: GovHost\n\tprivate readonly labelId: string\n\tprivate readonly contentId: string\n\tprivate hydrated = false;\n\tprivate closeCtaRef?: HTMLGovButtonElement\n\n\tconstructor() {\n\t\tthis.h = govHost(this.host)\n\t\tthis.labelId = createID('GovDialogLabel')\n\t\tthis.contentId = createID('GovDialogContent')\n\t}\n\n\t@Element() host: HTMLGovDialogElement\n\n\t/**\n\t * Attribute for dialog window display\n\t */\n\t@Prop({mutable: true, reflect: true}) open = false\n\t/**\n\t * Attribute allowing blocking the dialog closing\n\t */\n\t@Prop({attribute: 'block-close'}) blockClose = false\n\t/**\n\t * Attribute allowing blocking the backdrop dialog closing\n\t */\n\t@Prop({attribute: 'block-backdrop-close'}) blockBackdropClose = false\n\t/**\n\t * Role of dialog\n\t */\n\t@Prop({attribute: 'role'}) role: Nullable<string> = 'dialog'\n\t/**\n\t * Used to change the HTML tag in the dialog label for correct semantic structure\n\t */\n\t@Prop({attribute: 'label-tag'}) readonly labelTag: string = 'h2'\n\t/**\n\t * String of id's that indicate alternative labels elements\n\t */\n\t@Prop({attribute: 'accessible-labelled-by'}) accessibleLabelledBy: string\n\t/**\n\t * Indicates the id of a component that describes the dialog.\n\t */\n\t@Prop({attribute: 'accessible-described-by'}) accessibleDescribedBy: string\n\t/**\n\t * Adds accessible label for the dialog close button that is only shown for screen readers.\n\t */\n\t@Prop({attribute: 'accessible-close-label'}) readonly accessibleCloseLabel: string = 'Zavřít okno'\n\t/**\n\t * A string of identifiers that indicate alternative label elements for closing the dialog window\n\t */\n\t@Prop({attribute: 'accessible-close-labelled-by'}) accessibleCloseLabelledBy: string\n\t/**\n\t * Emitted when dialog window closes.\n\t */\n\t@Event({eventName: 'gov-close'}) govClose: EventEmitter<PointerEvent>\n\n\t@Watch('open')\n\twatchOpen(newValue: boolean): void {\n\t\tthis.open = newValue\n\t\tthis.setFocus().finally()\n\t}\n\n\tprivate showDialog() {\n\t\tthis.open = true\n\t\tdocument.body.classList.add(DialogClass.bodyFix)\n\t}\n\n\tprivate hideDialog() {\n\t\tthis.open = false\n\t\tdocument.body.classList.remove(DialogClass.bodyFix)\n\t}\n\n\tasync componentDidRender() {\n\t\tif (canValidateWcagOnRender()) {\n\t\t\ttick(() => this.validateAccessibility())\n\t\t}\n\n\t\tif (this.open) {\n\t\t\tthis.showDialog()\n\t\t} else {\n\t\t\tthis.hideDialog()\n\t\t}\n\t}\n\n\tconnectedCallback() {\n\t\tthis.hydrated = true\n\t}\n\n\tdisconnectedCallback(): void {\n\t\tdocument.body.classList.remove(DialogClass.bodyFix)\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class={this.h.classes(DialogClass.root)} open={this.open} hydrated={this.hydrated}>\n\t\t\t\t<dialog\n\t\t\t\t\tclass={DialogClass.dialog}\n\t\t\t\t\thidden={!this.open}\n\t\t\t\t\ttabindex={boolToFocusValue(this.open)}\n\t\t\t\t\topen={this.open}\n\t\t\t\t\taria-modal=\"true\"\n\t\t\t\t\taria-hidden={toBoolAttr(!this.open)}\n\t\t\t\t\taria-labelledby={this.accessibleLabelledBy || this.labelId}\n\t\t\t\t\taria-describedby={this.accessibleDescribedBy || this.contentId}\n\t\t\t\t\trole={this.role}\n\t\t\t\t>\n\t\t\t\t\t<div class={DialogClass.inner}>\n\t\t\t\t\t\t<div class={DialogClass.header}>\n\t\t\t\t\t\t\t{this.h.hasSlot(\"icon\") && (\n\t\t\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t\t\t<slot name=\"icon\" />\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{this.h.hasSlot('title') && (\n\t\t\t\t\t\t\t\t<span class={DialogClass.title} id={this.labelId}>\n\t\t\t\t\t\t\t\t\t<slot name=\"title\"/>\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t<gov-button\n\t\t\t\t\t\t\t\tref={el => (this.closeCtaRef = el)}\n\t\t\t\t\t\t\t\tdisabled={this.blockClose}\n\t\t\t\t\t\t\t\tclass={DialogClass.close}\n\t\t\t\t\t\t\t\tcolor=\"primary\"\n\t\t\t\t\t\t\t\taria-label={this.accessibleCloseLabel}\n\t\t\t\t\t\t\t\taria-labelledby={this.accessibleCloseLabelledBy}\n\t\t\t\t\t\t\t\ttype=\"base\"\n\t\t\t\t\t\t\t\tsize=\"m\"\n\t\t\t\t\t\t\t\ton-gov-click={this.onCloseHandler.bind(this)}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<gov-icon slot=\"icon-start\" name=\"x-lg\" type=\"components\"></gov-icon>\n\t\t\t\t\t\t\t</gov-button>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div class={DialogClass.content} id={this.contentId}>\n\t\t\t\t\t\t\t<slot/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t{this.h.hasSlot('footer') && (\n\t\t\t\t\t\t\t<div class={DialogClass.footer}>\n\t\t\t\t\t\t\t\t<slot name=\"footer\"/>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t</dialog>\n\n\t\t\t\t{this.open ? (\n\t\t\t\t\t<gov-backdrop\n\t\t\t\t\t\tdisabled={this.blockBackdropClose}\n\t\t\t\t\t\taria-label={this.accessibleCloseLabel}\n\t\t\t\t\t\taria-labelled-by={this.accessibleCloseLabelledBy}\n\t\t\t\t\t\ton-gov-click={this.onCloseHandler.bind(this)}\n\t\t\t\t\t/>\n\t\t\t\t) : null}\n\t\t\t</Host>\n\t\t)\n\t}\n\n\tprivate onCloseHandler(e: PointerEvent) {\n\t\te.stopPropagation()\n\t\te.preventDefault()\n\t\tif (this.blockClose === false) {\n\t\t\tthis.hideDialog()\n\t\t\tthis.govClose.emit(e)\n\t\t}\n\t}\n\n\t/**\n\t * Sets the close button to focus\n\t */\n\t@Method()\n\tasync setFocus(): Promise<void> {\n\t\tif (this.open && this.closeCtaRef) {\n\t\t\tthis.closeCtaRef.setFocus().catch()\n\t\t}\n\t}\n\n\n\t/**\n\t * Validate the WCAG attributes of the component\n\t */\n\t@Method()\n\tasync validateAccessibility(): Promise<void> {\n\t\tvalidateWcagRef(this.accessibleLabelledBy, 'accessible-labelled-by', DialogClass.root)\n\t\tvalidateWcagRef(this.accessibleDescribedBy, 'accessible-described-by', DialogClass.root)\n\t}\n}\n"]}
@@ -15,7 +15,7 @@ export class GovEmpty {
15
15
  this.validateSize(this.size);
16
16
  }
17
17
  render() {
18
- return (h(Host, { key: '3346bc91e4af67ca885ec89364d3caed0553f87c', class: this.h.classes(EmptyClass.root), size: this.size }, this.h.hasSlot('icon') && (h("slot", { key: '6ae5bf19e792bc94fedaa9fe3a56cafa103356f4', name: "icon" })), h("div", { key: '3cb5595ef6de22c590844902d5fe59a2066b0bf7', class: EmptyClass.content }, h("slot", { key: 'dedf42aac4d7a4304a0eeeae7e5a7e1be8e4aac5', name: "headline" }), h("slot", { key: '0d061d5b70d90c3bf6446ff78618e6506446bde2' }))));
18
+ return (h(Host, { key: '93155f92af0574538fd919e52f312b0f02d07e21', class: this.h.classes(EmptyClass.root), size: this.size }, this.h.hasSlot('icon') && (h("slot", { key: 'e9504c9396c9743ea7e454bb2df5d0f2a046aabe', name: "icon" })), h("div", { key: '78f2d30f570c6123a58d2ac93db58b4e471796b3', class: EmptyClass.content }, h("slot", { key: '7b5e1121dbfccf6d647e168e80c60cad4a1ca136', name: "headline" }), h("slot", { key: 'd435390c88c0304f9ee129b268c454b2147fddb0' }))));
19
19
  }
20
20
  static get is() { return "gov-empty"; }
21
21
  static get properties() {
@@ -6,7 +6,7 @@ export class GovErrorCode {
6
6
  this.h = govHost(this.host);
7
7
  }
8
8
  render() {
9
- return (h(Host, { key: 'c47e051194598ee060955a36959d11340b66dadc', class: this.h.classes(ErrorCodeClass.root), align: "center" }, this.h.hasSlot('icon') && (h("slot", { key: '510cdd27231b580403e76154d263af37877bd7b3', name: "icon" })), h("div", { key: '1b65726c29093652b1f2b6470669cedb5b951c7b', class: ErrorCodeClass.content }, h("slot", { key: 'd5fb45bfdfd4cc096e9f4ed213f0b50baaf225e6', name: "headline" }), h("slot", { key: '1950c6c8b034319c3d499b3470b4a2e0e1c7855a' }))));
9
+ return (h(Host, { key: 'b253a0e9141dca1662d4d2b792f4c9d25f869a38', class: this.h.classes(ErrorCodeClass.root), align: "center" }, this.h.hasSlot('icon') && (h("slot", { key: '4ca7e5788170cdf49d969d1a6ed3e12a0f368914', name: "icon" })), h("div", { key: '1822320601777bba88b698375f8ccfc55e33567e', class: ErrorCodeClass.content }, h("slot", { key: 'f3b7e46e878f7ff87291bae34a043d5e228dac4c', name: "headline" }), h("slot", { key: 'f63ac6838e3397bd6828853f96f476454a0bcda7' }))));
10
10
  }
11
11
  static get is() { return "gov-error-code"; }
12
12
  static get elementRef() { return "host"; }
@@ -10,10 +10,11 @@ export class GovFlex {
10
10
  this.alignContent = undefined;
11
11
  this.alignSelf = undefined;
12
12
  this.gap = undefined;
13
+ this.responsive = "true";
13
14
  this.h = govHost(this.host);
14
15
  }
15
16
  render() {
16
- return (h(Host, { key: '08c1591134f0b5c95a18ac9e1d3723c12d9bc47b', class: this.h.classes(FlexClass.root) }, h("slot", { key: 'b66fb8ffa35b0fb98eed3440a55a92a1bd97eb76' })));
17
+ return (h(Host, { key: '71dadfbe4c7ddd45b36ffe74d8fd0c38e5069756', class: this.h.classes(FlexClass.root) }, h("slot", { key: 'b86bd5e8abbf157f2476cad87134ff9eedd307cc' })));
17
18
  }
18
19
  static get is() { return "gov-flex"; }
19
20
  static get properties() {
@@ -27,13 +28,13 @@ export class GovFlex {
27
28
  "references": {}
28
29
  },
29
30
  "required": false,
30
- "optional": false,
31
+ "optional": true,
31
32
  "docs": {
32
33
  "tags": [],
33
34
  "text": "Controls the flex direction of the container."
34
35
  },
35
36
  "attribute": "direction",
36
- "reflect": false,
37
+ "reflect": true,
37
38
  "defaultValue": "'row'"
38
39
  },
39
40
  "justifyContent": {
@@ -143,6 +144,24 @@ export class GovFlex {
143
144
  },
144
145
  "attribute": "gap",
145
146
  "reflect": true
147
+ },
148
+ "responsive": {
149
+ "type": "string",
150
+ "mutable": false,
151
+ "complexType": {
152
+ "original": "string",
153
+ "resolved": "string",
154
+ "references": {}
155
+ },
156
+ "required": false,
157
+ "optional": false,
158
+ "docs": {
159
+ "tags": [],
160
+ "text": "Option to turn off responsive"
161
+ },
162
+ "attribute": "responsive",
163
+ "reflect": true,
164
+ "defaultValue": "\"true\""
146
165
  }
147
166
  };
148
167
  }
@@ -1 +1 @@
1
- {"version":3,"file":"gov-flex.js","sourceRoot":"","sources":["../../../../../../src/components/gov-flex/gov-flex.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAC,MAAM,eAAe,CAAA;AAC/D,OAAO,EAAC,SAAS,EAAgB,MAAM,aAAa,CAAA;AACpD,OAAO,EAAC,OAAO,EAAC,MAAM,4BAA4B,CAAA;AAMlD,MAAM,OAAO,OAAO;IAGnB;yBASyE,KAAK;;;;;;;QAR7E,IAAI,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;KAC3B;IAsDD,MAAM;QACL,OAAO,CACN,EAAC,IAAI,qDAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC;YAC1C,8DAAa,CACP,CACP,CAAA;IACF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACD","sourcesContent":["import {Component, Element, h, Host, Prop} from '@stencil/core'\nimport {FlexClass, FlexSizesType} from './constants'\nimport {govHost} from '../../helpers/Dom/template'\nimport {GovHost} from '../../helpers/Dom/template.types'\n\n@Component({\n\ttag: 'gov-flex',\n})\nexport class GovFlex {\n\tprivate h: GovHost\n\n\tconstructor() {\n\t\tthis.h = govHost(this.host)\n\t}\n\n\t@Element() host: HTMLGovGridElement\n\n\t/**\n\t * Controls the flex direction of the container.\n\t */\n\t@Prop() direction: 'row' | 'row-reverse' | 'column' | 'column-reverse' = 'row';\n\n\t/**\n\t * Defines how the browser distributes space between and around content items along the main axis.\n\t */\n\t@Prop({\n\t\tattribute: 'justify-content',\n\t\treflect: true\n\t}) justifyContent?: 'flex-start' | 'flex-end' | 'center' | 'space-between' | 'space-around' | 'space-evenly';\n\n\t/**\n\t * Aligns flex items along the cross axis.\n\t */\n\t@Prop({\n\t\tattribute: 'align-items',\n\t\treflect: true\n\t}) alignItems?: 'stretch' | 'flex-start' | 'flex-end' | 'center' | 'baseline';\n\n\t/**\n\t * Controls whether the flex container is a single-line or multi-line flex container.\n\t */\n\t@Prop({reflect: true}) wrap?: 'nowrap' | 'wrap' | 'wrap-reverse';\n\n\t/**\n\t * Aligns the flex container's lines within when there is extra space in the cross-axis.\n\t */\n\t@Prop({\n\t\tattribute: 'align-content',\n\t\treflect: true\n\t}) alignContent?: 'flex-start' | 'flex-end' | 'center' | 'space-between' | 'space-around' | 'stretch';\n\n\t/**\n\t * Sets the alignment of the flex container’s children along the flex container’s cross axis, overriding the `align-items` property for individual flex items.\n\t */\n\t@Prop({\n\t\tattribute: 'align-self',\n\t\treflect: true\n\t}) alignSelf?: 'auto' | 'normal' | 'self-start' | 'self-end' | 'flex-start' | 'flex-end' | 'center' | 'baseline' | 'stretch' | 'anchor-center';\n\n\t/**\n\t * The gap property creates consistent spacing between flex items in the container.\n\t */\n\t@Prop({\n\t\tattribute: 'gap',\n\t\treflect: true\n\t}) gap?: FlexSizesType;\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class={this.h.classes(FlexClass.root)}>\n\t\t\t\t<slot></slot>\n\t\t\t</Host>\n\t\t)\n\t}\n}\n"]}
1
+ {"version":3,"file":"gov-flex.js","sourceRoot":"","sources":["../../../../../../src/components/gov-flex/gov-flex.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAC,MAAM,eAAe,CAAA;AAC/D,OAAO,EAAC,SAAS,EAAgB,MAAM,aAAa,CAAA;AACpD,OAAO,EAAC,OAAO,EAAC,MAAM,4BAA4B,CAAA;AAMlD,MAAM,OAAO,OAAO;IAGnB;yBASyF,KAAK;;;;;;;0BAkDzC,MAAM;QA1D1D,IAAI,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;KAC3B;IA2DD,MAAM;QACL,OAAO,CACN,EAAC,IAAI,qDAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC;YAC1C,8DAAa,CACP,CACP,CAAA;IACF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACD","sourcesContent":["import {Component, Element, h, Host, Prop} from '@stencil/core'\nimport {FlexClass, FlexSizesType} from './constants'\nimport {govHost} from '../../helpers/Dom/template'\nimport {GovHost} from '../../helpers/Dom/template.types'\n\n@Component({\n\ttag: 'gov-flex',\n})\nexport class GovFlex {\n\tprivate h: GovHost\n\n\tconstructor() {\n\t\tthis.h = govHost(this.host)\n\t}\n\n\t@Element() host: HTMLGovGridElement\n\n\t/**\n\t * Controls the flex direction of the container.\n\t */\n\t@Prop({reflect: true}) direction?: 'row' | 'row-reverse' | 'column' | 'column-reverse' = 'row';\n\n\t/**\n\t * Defines how the browser distributes space between and around content items along the main axis.\n\t */\n\t@Prop({\n\t\tattribute: 'justify-content',\n\t\treflect: true\n\t}) justifyContent?: 'flex-start' | 'flex-end' | 'center' | 'space-between' | 'space-around' | 'space-evenly';\n\n\t/**\n\t * Aligns flex items along the cross axis.\n\t */\n\t@Prop({\n\t\tattribute: 'align-items',\n\t\treflect: true\n\t}) alignItems?: 'stretch' | 'flex-start' | 'flex-end' | 'center' | 'baseline';\n\n\t/**\n\t * Controls whether the flex container is a single-line or multi-line flex container.\n\t */\n\t@Prop({reflect: true}) wrap?: 'nowrap' | 'wrap' | 'wrap-reverse';\n\n\t/**\n\t * Aligns the flex container's lines within when there is extra space in the cross-axis.\n\t */\n\t@Prop({\n\t\tattribute: 'align-content',\n\t\treflect: true\n\t}) alignContent?: 'flex-start' | 'flex-end' | 'center' | 'space-between' | 'space-around' | 'stretch';\n\n\t/**\n\t * Sets the alignment of the flex container’s children along the flex container’s cross axis, overriding the `align-items` property for individual flex items.\n\t */\n\t@Prop({\n\t\tattribute: 'align-self',\n\t\treflect: true\n\t}) alignSelf?: 'auto' | 'normal' | 'self-start' | 'self-end' | 'flex-start' | 'flex-end' | 'center' | 'baseline' | 'stretch' | 'anchor-center';\n\n\t/**\n\t * The gap property creates consistent spacing between flex items in the container.\n\t */\n\t@Prop({\n\t\tattribute: 'gap',\n\t\treflect: true\n\t}) gap?: FlexSizesType;\n\n\t/**\n\t * Option to turn off responsive\n\t */\n\t@Prop({reflect: true}) readonly responsive: string = \"true\"\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class={this.h.classes(FlexClass.root)}>\n\t\t\t\t<slot></slot>\n\t\t\t</Host>\n\t\t)\n\t}\n}\n"]}
@@ -104,14 +104,15 @@ export class GovFormAutocomplete {
104
104
  this.inheritedAttributes = inheritAriaAttributes(this.host);
105
105
  }
106
106
  disconnectedCallback() {
107
- this.attributeObserver.stopObserving();
107
+ var _a;
108
+ (_a = this.attributeObserver) === null || _a === void 0 ? void 0 : _a.stopObserving();
108
109
  }
109
110
  onAriaAttributeChange(attributeName, newValue) {
110
111
  this.host.removeAttribute(attributeName);
111
112
  this.inheritedAttributes = Object.assign(Object.assign({}, this.inheritedAttributes), { [attributeName]: newValue });
112
113
  }
113
114
  render() {
114
- return (h(Host, { key: 'a8bf269f28c969a01b9d6fd884b5e6dd253905f6', class: FormAutocompleteClass.root, size: this.size }, h("gov-form-input", Object.assign({ key: '13797f47506657569fe824ecb8d82f54cdd7f62e', placeholder: this.placeholder, name: this.name, disabled: this.disabled, readonly: this.readonly, autocomplete: false, size: this.size, required: this.required, invalid: this.invalid, success: this.success, role: 'searchbox', value: this.value, minlength: this.minlength, maxlength: this.maxlength, "on-gov-input": throttle(this.onInputHandler.bind(this), this.throttleTime), "on-gov-keyup": this.onKeyUpHandler.bind(this), "on-gov-keydown": this.onKeyDownHandler.bind(this), "on-gov-focus": this.onFocusHandler.bind(this), "on-gov-blur": this.onBlurHandler.bind(this) }, this.inheritedAttributes, { "aria-autocomplete": 'list', "aria-owns": [this.listBoxId, this.inheritedAttributes['aria-owns']].join(' '), "aria-expanded": booleanString(this.list.length && this.focused ? true : false), ref: el => (this.inputRef = el) }), h("slot", { key: 'aa60e7afc9f03418525f40f54989c56ac817a08a', name: "validation-icon" }), h("slot", { key: 'fd1aa38d3f92793689e7238c4cc7b11fdb6d7c83', name: "icon-end" })), h("ul", { key: 'f721a4bebd03c2837604e42d4ece440f2668e4db', class: FormAutocompleteClass.list, role: 'listbox', "aria-hidden": toBoolAttr(!this.focused), hidden: !this.focused, id: this.listBoxId, ref: el => (this.listRef = el) }, this.focused && this.list.length === 0 && this.processing === false && this.isValueAccepted && this.messageEmpty ? (h("li", { class: FormAutocompleteClass.empty }, this.messageEmpty)) : null, this.focused && this.processing === true && this.isValueAccepted ? (h("li", { class: FormAutocompleteClass.loading }, h("gov-skeleton", { size: "m" }))) : null, this.focused ? this.list.map((item, index) => {
115
+ return (h(Host, { key: '22d9a81f648404e942ee680acddda83165af4dc2', class: FormAutocompleteClass.root, size: this.size }, h("gov-form-input", Object.assign({ key: '4b60cfea2591a4bde6c97dee3c11b75461db3c5d', placeholder: this.placeholder, name: this.name, disabled: this.disabled, readonly: this.readonly, autocomplete: false, size: this.size, required: this.required, invalid: this.invalid, success: this.success, role: 'searchbox', value: this.value, minlength: this.minlength, maxlength: this.maxlength, "on-gov-input": throttle(this.onInputHandler.bind(this), this.throttleTime), "on-gov-keyup": this.onKeyUpHandler.bind(this), "on-gov-keydown": this.onKeyDownHandler.bind(this), "on-gov-focus": this.onFocusHandler.bind(this), "on-gov-blur": this.onBlurHandler.bind(this) }, this.inheritedAttributes, { "aria-autocomplete": 'list', "aria-owns": [this.listBoxId, this.inheritedAttributes['aria-owns']].join(' '), "aria-expanded": booleanString(this.list.length && this.focused ? true : false), ref: el => (this.inputRef = el) }), h("slot", { key: '739722e49f8062d3ebec84dc2a1f840413439c7c', name: "validation-icon" }), h("slot", { key: '6f3b3c7695a5c7d56276fbc41f854b9afff3800e', name: "icon-end" })), h("ul", { key: '52b34c8501d976b438350104594b02137d40a386', class: FormAutocompleteClass.list, role: 'listbox', "aria-hidden": toBoolAttr(!this.focused), hidden: !this.focused, id: this.listBoxId, ref: el => (this.listRef = el) }, this.focused && this.list.length === 0 && this.processing === false && this.isValueAccepted && this.messageEmpty ? (h("li", { class: FormAutocompleteClass.empty }, this.messageEmpty)) : null, this.focused && this.processing === true && this.isValueAccepted ? (h("li", { class: FormAutocompleteClass.loading }, h("gov-skeleton", { size: "m" }))) : null, this.focused ? this.list.map((item, index) => {
115
116
  const isSelected = this.arrowCounter === index;
116
117
  return (h("li", { class: FormAutocompleteClass.item, innerHTML: this.templateResolver(item, isSelected), role: 'option', "aria-posinset": index, tabindex: isSelected ? 0 : -1, "aria-setsize": this.list.length, onTouchStart: (e) => this.onSelectHandler(e, index), onMouseDown: (e) => this.onSelectHandler(e, index), "aria-selected": toBoolAttr(isSelected) }, h("slot", { name: "list-item-left" }), h("slot", { name: "list-item-right" })));
117
118
  }) : null)));
@@ -1 +1 @@
1
- {"version":3,"file":"gov-form-autocomplete.js","sourceRoot":"","sources":["../../../../../../../src/components/gov-form/autocomplete/gov-form-autocomplete.tsx"],"names":[],"mappings":"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","sourcesContent":["import {Component, Element, Event, EventEmitter, h, Host, Method, Prop, State, Watch} from '@stencil/core'\nimport {booleanString, toBoolAttr} from '../../../helpers/Dom/template'\nimport {validateProp} from '../../../helpers/Validate/props'\nimport {Nullable} from '../../../types/interfaces'\nimport {createID} from '../../../utils/string.utils'\nimport {delay, has, throttle} from '../../../utils/utils'\nimport {FormInputEvent} from '../input/gov-form-input.types'\nimport {FormAutocompleteClass, FormAutocompleteSizes, SizesType,} from './constants'\nimport {FormAutocompleteEvent, GovFormAutocompleteItem} from './gov-form-autocomplete.types'\nimport {propsValueToArray} from \"../../../utils/array.utils\";\nimport {AttributeObserver, Attributes} from \"../../../helpers/Dom/attribute\";\nimport {ariaAttributes} from \"../../../helpers/Accessibility/attributes\";\nimport {inheritAriaAttributes} from \"../../../helpers/Accessibility/accessibility\";\n\n@Component({\n\ttag: 'gov-form-autocomplete',\n})\nexport class GovFormAutocomplete {\n\tprivate inputRef?: HTMLGovFormInputElement\n\tprivate listRef?: HTMLUListElement\n\tprivate readonly listBoxId: string\n\tprivate searchCallback: (value: string) => Promise<GovFormAutocompleteItem[]>\n\tprivate templateResolver: (item: GovFormAutocompleteItem, selected: boolean) => string = item => item[this.nameKey]\n\tprivate attributeObserver: AttributeObserver\n\n\tconstructor() {\n\t\tthis.listBoxId = createID('GovListBox')\n\t}\n\n\t@Element() host: HTMLGovFormInputElement\n\t/**\n\t * Value of input\n\t */\n\t@Prop({reflect: true, mutable: true}) value = ''\n\t/**\n\t * Options of autocomplete\n\t */\n\t@Prop({reflect: true, mutable: true}) options?: string | GovFormAutocompleteItem[]\n\t/**\n\t * Custom input identifier.\n\t */\n\t@Prop({attribute: 'identifier'}) readonly identifier: string\n\t/**\n\t * Indicates the entered value of child form element does conform to the format expected by the application.\n\t */\n\t@Prop() readonly success: boolean\n\t/**\n\t * Input’s size.\n\t */\n\t@Prop() readonly size?: SizesType = 'm'\n\t/**\n\t * Main key name in the object\n\t */\n\t@Prop({attribute: 'name-key'}) readonly nameKey: string = 'name'\n\t/**\n\t * Name of the input.\n\t */\n\t@Prop() readonly name: string\n\t/**\n\t * Set whether the input is required or not. Please note that this is necessary for accessible inputs when the user is required to fill them.\n\t * When using this property you need to also set “novalidate” attribute to your form element to prevent browser from displaying its own validation errors.\n\t */\n\t@Prop() readonly required: boolean = false\n\t/**\n\t * Makes the input component disabled.\n\t * This prevents users from being able to interact with the select, and conveys its inactive state to assistive technologies.\n\t */\n\t@Prop({reflect: true}) readonly disabled: boolean = false\n\t/**\n\t * Text that appears in the form control when it has no value set\n\t */\n\t@Prop() readonly placeholder: string\n\t/**\n\t * The value is not editable\n\t */\n\t@Prop() readonly readonly: boolean\n\t/**\n\t * Indicates the entered value does not conform to the format expected by the application.\n\t */\n\t@Prop() readonly invalid: boolean\n\t/**\n\t * Minimum length (number of characters) of value\n\t */\n\t@Prop() readonly minlength: number = 3\n\t/**\n\t * Maximum length (number of characters) of value\n\t */\n\t@Prop() readonly maxlength: number\n\t/**\n\t * Input throttle in milliseconds\n\t */\n\t@Prop() readonly throttleTime: number = 200\n\t/**\n\t * Custom message for when there is a blank sheet\n\t */\n\t@Prop({attribute: 'message-empty'}) readonly messageEmpty: string = 'Nebyly nalezeny žádné výsledky'\n\t/**\n\t * Emitted when the input has focus.\n\t */\n\t@Event({eventName: 'gov-focus'}) govFocus: EventEmitter<FormAutocompleteEvent>\n\t/**\n\t * Emitted when the input loses focus.\n\t */\n\t@Event({eventName: 'gov-blur'}) govBlur: EventEmitter<FormAutocompleteEvent>\n\t/**\n\t * Emitted when the input change value.\n\t */\n\t@Event({eventName: 'gov-input'}) govInput: EventEmitter<FormAutocompleteEvent>\n\t/**\n\t * Emitted when the input change value.\n\t */\n\t@Event({eventName: 'gov-select'}) govSelect: EventEmitter<FormAutocompleteEvent>\n\n\t@State() focused: boolean\n\t@State() processing = false\n\t@State() arrowCounter = -1\n\t@State() list: GovFormAutocompleteItem[] = []\n\t@State() inheritedAttributes: Attributes = {}\n\n\t@Watch('size')\n\tvalidateSize(newValue: string): void {\n\t\tvalidateProp(FormAutocompleteSizes, newValue, FormAutocompleteClass.root)\n\t}\n\n\t@Watch('options')\n\twatchOptions(newValue: string | GovFormAutocompleteItem[]): void {\n\t\tthis.setOptions(propsValueToArray(newValue)).catch()\n\t}\n\n\tprivate onArrowUp() {\n\t\tif (this.arrowCounter > 0) {\n\t\t\tthis.arrowCounter = this.arrowCounter - 1\n\t\t\tthis.moveToView().finally()\n\t\t}\n\t}\n\n\tprivate onArrowDown() {\n\t\tif (this.arrowCounter < this.list.length - 1) {\n\t\t\tthis.arrowCounter = this.arrowCounter + 1\n\t\t\tthis.moveToView().finally()\n\t\t}\n\t}\n\n\tprivate async moveToView() {\n\t\tawait delay(200)\n\t\tconst heightOfList = this.listRef.offsetHeight\n\t\tconst selected = this.listRef.querySelector('li[aria-selected=\"true\"]') as HTMLUListElement\n\t\tif (selected && heightOfList) {\n\t\t\tconst offsetTop = selected.offsetTop\n\t\t\tthis.listRef.scrollTo({top: offsetTop, behavior: 'smooth'})\n\t\t}\n\t}\n\n\tprivate doSearch() {\n\t\tif (Number.isInteger(this.minlength) && this.isValueAccepted === false && this.minlength) {\n\t\t\tthis.list = []\n\t\t\tthis.arrowCounter = -1\n\t\t\tthis.processing = false\n\t\t\treturn\n\t\t}\n\t\tif (this.searchCallback) {\n\t\t\tthis.processing = true\n\t\t\tthis.searchCallback(this.value)\n\t\t\t\t.then(response => (this.list = response))\n\t\t\t\t.catch(() => (this.list = []))\n\t\t\t\t.finally(() => {\n\t\t\t\t\tthis.arrowCounter = -1\n\t\t\t\t\tthis.processing = false\n\t\t\t\t})\n\t\t}\n\t}\n\n\tprivate clearList() {\n\t\tconst areOptions = propsValueToArray<GovFormAutocompleteItem[]>(this.options)\n\t\tif (areOptions.length === 0) {\n\t\t\tthis.list = []\n\t\t}\n\t}\n\n\tget isValueAccepted() {\n\t\tif (typeof this.value === 'string') {\n\t\t\treturn this.value.length >= this.minlength\n\t\t} else {\n\t\t\treturn false\n\t\t}\n\t}\n\n\tcomponentDidLoad() {\n\t\tthis.attributeObserver = new AttributeObserver(this.host, (attributeName, newValue) => {\n\t\t\tthis.onAriaAttributeChange(attributeName, newValue);\n\t\t});\n\n\t\tthis.attributeObserver.startObserving(ariaAttributes);\n\t}\n\n\tcomponentWillLoad() {\n\t\tthis.validateSize(this.size)\n\t\tthis.inheritedAttributes = inheritAriaAttributes(this.host);\n\t}\n\n\tdisconnectedCallback() {\n\t\tthis.attributeObserver.stopObserving();\n\t}\n\n\tonAriaAttributeChange(attributeName: string, newValue: string) {\n\t\tthis.host.removeAttribute(attributeName)\n\t\tthis.inheritedAttributes = {...this.inheritedAttributes, [attributeName]: newValue};\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class={FormAutocompleteClass.root} size={this.size}>\n\t\t\t\t<gov-form-input\n\t\t\t\t\tplaceholder={this.placeholder}\n\t\t\t\t\tname={this.name}\n\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\treadonly={this.readonly}\n\t\t\t\t\tautocomplete={false}\n\t\t\t\t\tsize={this.size}\n\t\t\t\t\trequired={this.required}\n\t\t\t\t\tinvalid={this.invalid}\n\t\t\t\t\tsuccess={this.success}\n\t\t\t\t\trole={'searchbox'}\n\t\t\t\t\tvalue={this.value}\n\t\t\t\t\tminlength={this.minlength}\n\t\t\t\t\tmaxlength={this.maxlength}\n\t\t\t\t\ton-gov-input={throttle(this.onInputHandler.bind(this), this.throttleTime)}\n\t\t\t\t\ton-gov-keyup={this.onKeyUpHandler.bind(this)}\n\t\t\t\t\ton-gov-keydown={this.onKeyDownHandler.bind(this)}\n\t\t\t\t\ton-gov-focus={this.onFocusHandler.bind(this)}\n\t\t\t\t\ton-gov-blur={this.onBlurHandler.bind(this)}\n\t\t\t\t\t{...this.inheritedAttributes}\n\t\t\t\t\taria-autocomplete={'list'}\n\t\t\t\t\taria-owns={[this.listBoxId, this.inheritedAttributes['aria-owns']].join(' ')}\n\t\t\t\t\taria-expanded={booleanString(this.list.length && this.focused ? true : false)}\n\t\t\t\t\tref={el => (this.inputRef = el as HTMLGovFormInputElement)}\n\t\t\t\t>\n\t\t\t\t\t<slot name=\"validation-icon\" />\n\t\t\t\t\t<slot name=\"icon-end\" />\n\t\t\t\t</gov-form-input>\n\t\t\t\t<ul class={FormAutocompleteClass.list}\n\t\t\t\t\trole={'listbox'}\n\t\t\t\t\taria-hidden={toBoolAttr(!this.focused)}\n\t\t\t\t\thidden={!this.focused}\n\t\t\t\t\tid={this.listBoxId}\n\t\t\t\t\tref={el => (this.listRef = el as HTMLUListElement)}>\n\t\t\t\t\t{this.focused && this.list.length === 0 && this.processing === false && this.isValueAccepted && this.messageEmpty ? (\n\t\t\t\t\t\t<li class={FormAutocompleteClass.empty}>{this.messageEmpty}</li>\n\t\t\t\t\t) : null}\n\t\t\t\t\t{this.focused && this.processing === true && this.isValueAccepted ? (\n\t\t\t\t\t\t<li class={FormAutocompleteClass.loading}>\n\t\t\t\t\t\t\t<gov-skeleton size=\"m\"></gov-skeleton>\n\t\t\t\t\t\t</li>\n\t\t\t\t\t) : null}\n\t\t\t\t\t{this.focused ? this.list.map((item, index) => {\n\t\t\t\t\t\tconst isSelected = this.arrowCounter === index\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<li\n\t\t\t\t\t\t\t\tclass={FormAutocompleteClass.item}\n\t\t\t\t\t\t\t\tinnerHTML={this.templateResolver(item, isSelected)}\n\t\t\t\t\t\t\t\trole={'option'}\n\t\t\t\t\t\t\t\taria-posinset={index}\n\t\t\t\t\t\t\t\ttabindex={isSelected ? 0 : -1}\n\t\t\t\t\t\t\t\taria-setsize={this.list.length}\n\t\t\t\t\t\t\t\tonTouchStart={(e: TouchEvent) => this.onSelectHandler(e, index)}\n\t\t\t\t\t\t\t\tonMouseDown={(e: PointerEvent) => this.onSelectHandler(e, index)}\n\t\t\t\t\t\t\t\taria-selected={toBoolAttr(isSelected)}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<slot name=\"list-item-left\"/>\n\t\t\t\t\t\t\t\t<slot name=\"list-item-right\"/>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t)\n\t\t\t\t\t}) : null}\n\t\t\t\t</ul>\n\t\t\t</Host>\n\t\t)\n\t}\n\n\tprivate onFocusHandler(e: FocusEvent) {\n\t\tthis.focused = true\n\t\tthis.arrowCounter = -1\n\t\tif (this.isValueAccepted && this.searchCallback) {\n\t\t\tthis.doSearch()\n\t\t}\n\t\te.stopPropagation()\n\t\tthis.govFocus.emit({\n\t\t\toriginalEvent: e,\n\t\t\tcomponent: FormAutocompleteClass.root,\n\t\t\tvalue: this.value,\n\t\t\tselected: null,\n\t\t})\n\t}\n\n\tprivate onBlurHandler(e: FocusEvent) {\n\t\tthis.focused = false\n\t\tthis.clearList();\n\t\tthis.arrowCounter = -1\n\t\te.stopPropagation()\n\t\tthis.govBlur.emit({\n\t\t\toriginalEvent: e,\n\t\t\tcomponent: FormAutocompleteClass.root,\n\t\t\tvalue: this.value,\n\t\t\tselected: null,\n\t\t})\n\t}\n\n\tprivate onInputHandler(e: InputEvent) {\n\t\tthis.value = (e.target as HTMLGovFormInputElement).value\n\t\te.stopPropagation()\n\t\tthis.govInput.emit({\n\t\t\toriginalEvent: e,\n\t\t\tcomponent: FormAutocompleteClass.root,\n\t\t\tvalue: this.value,\n\t\t\tselected: null,\n\t\t})\n\t\tthis.doSearch()\n\t}\n\n\tprivate onSelectHandler(e: PointerEvent | CustomEvent | TouchEvent, index = -1) {\n\t\tlet selected: Nullable<GovFormAutocompleteItem> = null\n\t\tif (index > -1) {\n\t\t\tselected = this.list[index]\n\t\t} else if (has(this.arrowCounter, this.list)) {\n\t\t\tselected = this.list[this.arrowCounter]\n\t\t}\n\t\tif (selected) {\n\t\t\tthis.govSelect.emit({\n\t\t\t\tcomponent: FormAutocompleteClass.root,\n\t\t\t\tvalue: this.value,\n\t\t\t\tselected: selected,\n\t\t\t\toriginalEvent: e,\n\t\t\t})\n\t\t\tthis.clearList();\n\t\t\tif (has(this.nameKey, selected) && typeof selected[this.nameKey] === 'string') {\n\t\t\t\tthis.value = selected[this.nameKey]\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate onKeyUpHandler(e: CustomEvent) {\n\t\tconst event = (e.detail as FormInputEvent).originalEvent as KeyboardEvent\n\t\te.stopPropagation()\n\t\tevent.stopPropagation()\n\t\tif (event.keyCode === 38) this.onArrowUp()\n\t\telse if (event.keyCode === 40) this.onArrowDown()\n\t\telse if (event.keyCode === 13) {\n\t\t\te.preventDefault()\n\t\t\tevent.preventDefault()\n\t\t\tthis.onSelectHandler(e)\n\t\t}\n\t}\n\n\tprivate onKeyDownHandler(e: CustomEvent) {\n\t\tconst event = (e.detail as FormInputEvent).originalEvent as KeyboardEvent\n\t\te.stopPropagation()\n\t\tevent.stopPropagation()\n\t\tif (event.keyCode === 13) {\n\t\t\te.preventDefault()\n\t\t\tevent.preventDefault()\n\t\t}\n\t}\n\n\t/**\n\t * Focus main input element\n\t */\n\t@Method()\n\tasync setFocus(options?: FocusOptions): Promise<void> {\n\t\treturn this.inputRef.focus(options)\n\t}\n\n\t/**\n\t * Blur main input element\n\t */\n\t@Method()\n\tasync setBlur(): Promise<void> {\n\t\treturn this.inputRef.blur()\n\t}\n\n\t/**\n\t * Set options for list\n\t */\n\t@Method()\n\tasync setOptions(options: GovFormAutocompleteItem[]): Promise<void> {\n\t\tthis.list = Array.isArray(options) ? options : []\n\t\tthis.arrowCounter = -1\n\t}\n\n\t/**\n\t * Clears whisperer value\n\t */\n\t@Method()\n\tasync clearValue(): Promise<void> {\n\t\tthis.value = ''\n\t\tthis.inputRef.value = ''\n\n\t\tawait this.inputRef.clearValue()\n\t}\n\n\t/**\n\t * Clears whisperer value\n\t */\n\t@Method()\n\tasync setProcessing(status: boolean): Promise<void> {\n\t\tthis.processing = status\n\t}\n\n\t/**\n\t * Set a custom asynchronous function for the whisperer\n\t */\n\t@Method()\n\tasync setSearchCallback(callback: (value: string) => Promise<any>) {\n\t\tthis.searchCallback = callback\n\t}\n\n\t/**\n\t * Setting a custom whisper result template\n\t * @param callback\n\t */\n\t@Method()\n\tasync setTemplateResolver(callback: (item: GovFormAutocompleteItem) => string) {\n\t\tthis.templateResolver = callback\n\t}\n}\n"]}
1
+ {"version":3,"file":"gov-form-autocomplete.js","sourceRoot":"","sources":["../../../../../../../src/components/gov-form/autocomplete/gov-form-autocomplete.tsx"],"names":[],"mappings":"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","sourcesContent":["import {Component, Element, Event, EventEmitter, h, Host, Method, Prop, State, Watch} from '@stencil/core'\nimport {booleanString, toBoolAttr} from '../../../helpers/Dom/template'\nimport {validateProp} from '../../../helpers/Validate/props'\nimport {Nullable} from '../../../types/interfaces'\nimport {createID} from '../../../utils/string.utils'\nimport {delay, has, throttle} from '../../../utils/utils'\nimport {FormInputEvent} from '../input/gov-form-input.types'\nimport {FormAutocompleteClass, FormAutocompleteSizes, SizesType,} from './constants'\nimport {FormAutocompleteEvent, GovFormAutocompleteItem} from './gov-form-autocomplete.types'\nimport {propsValueToArray} from \"../../../utils/array.utils\";\nimport {AttributeObserver, Attributes} from \"../../../helpers/Dom/attribute\";\nimport {ariaAttributes} from \"../../../helpers/Accessibility/attributes\";\nimport {inheritAriaAttributes} from \"../../../helpers/Accessibility/accessibility\";\n\n@Component({\n\ttag: 'gov-form-autocomplete',\n})\nexport class GovFormAutocomplete {\n\tprivate inputRef?: HTMLGovFormInputElement\n\tprivate listRef?: HTMLUListElement\n\tprivate readonly listBoxId: string\n\tprivate searchCallback: (value: string) => Promise<GovFormAutocompleteItem[]>\n\tprivate templateResolver: (item: GovFormAutocompleteItem, selected: boolean) => string = item => item[this.nameKey]\n\tprivate attributeObserver: AttributeObserver\n\n\tconstructor() {\n\t\tthis.listBoxId = createID('GovListBox')\n\t}\n\n\t@Element() host: HTMLGovFormInputElement\n\t/**\n\t * Value of input\n\t */\n\t@Prop({reflect: true, mutable: true}) value = ''\n\t/**\n\t * Options of autocomplete\n\t */\n\t@Prop({reflect: true, mutable: true}) options?: string | GovFormAutocompleteItem[]\n\t/**\n\t * Custom input identifier.\n\t */\n\t@Prop({attribute: 'identifier'}) readonly identifier: string\n\t/**\n\t * Indicates the entered value of child form element does conform to the format expected by the application.\n\t */\n\t@Prop() readonly success: boolean\n\t/**\n\t * Input’s size.\n\t */\n\t@Prop() readonly size?: SizesType = 'm'\n\t/**\n\t * Main key name in the object\n\t */\n\t@Prop({attribute: 'name-key'}) readonly nameKey: string = 'name'\n\t/**\n\t * Name of the input.\n\t */\n\t@Prop() readonly name: string\n\t/**\n\t * Set whether the input is required or not. Please note that this is necessary for accessible inputs when the user is required to fill them.\n\t * When using this property you need to also set “novalidate” attribute to your form element to prevent browser from displaying its own validation errors.\n\t */\n\t@Prop() readonly required: boolean = false\n\t/**\n\t * Makes the input component disabled.\n\t * This prevents users from being able to interact with the select, and conveys its inactive state to assistive technologies.\n\t */\n\t@Prop({reflect: true}) readonly disabled: boolean = false\n\t/**\n\t * Text that appears in the form control when it has no value set\n\t */\n\t@Prop() readonly placeholder: string\n\t/**\n\t * The value is not editable\n\t */\n\t@Prop() readonly readonly: boolean\n\t/**\n\t * Indicates the entered value does not conform to the format expected by the application.\n\t */\n\t@Prop() readonly invalid: boolean\n\t/**\n\t * Minimum length (number of characters) of value\n\t */\n\t@Prop() readonly minlength: number = 3\n\t/**\n\t * Maximum length (number of characters) of value\n\t */\n\t@Prop() readonly maxlength: number\n\t/**\n\t * Input throttle in milliseconds\n\t */\n\t@Prop() readonly throttleTime: number = 200\n\t/**\n\t * Custom message for when there is a blank sheet\n\t */\n\t@Prop({attribute: 'message-empty'}) readonly messageEmpty: string = 'Nebyly nalezeny žádné výsledky'\n\t/**\n\t * Emitted when the input has focus.\n\t */\n\t@Event({eventName: 'gov-focus'}) govFocus: EventEmitter<FormAutocompleteEvent>\n\t/**\n\t * Emitted when the input loses focus.\n\t */\n\t@Event({eventName: 'gov-blur'}) govBlur: EventEmitter<FormAutocompleteEvent>\n\t/**\n\t * Emitted when the input change value.\n\t */\n\t@Event({eventName: 'gov-input'}) govInput: EventEmitter<FormAutocompleteEvent>\n\t/**\n\t * Emitted when the input change value.\n\t */\n\t@Event({eventName: 'gov-select'}) govSelect: EventEmitter<FormAutocompleteEvent>\n\n\t@State() focused: boolean\n\t@State() processing = false\n\t@State() arrowCounter = -1\n\t@State() list: GovFormAutocompleteItem[] = []\n\t@State() inheritedAttributes: Attributes = {}\n\n\t@Watch('size')\n\tvalidateSize(newValue: string): void {\n\t\tvalidateProp(FormAutocompleteSizes, newValue, FormAutocompleteClass.root)\n\t}\n\n\t@Watch('options')\n\twatchOptions(newValue: string | GovFormAutocompleteItem[]): void {\n\t\tthis.setOptions(propsValueToArray(newValue)).catch()\n\t}\n\n\tprivate onArrowUp() {\n\t\tif (this.arrowCounter > 0) {\n\t\t\tthis.arrowCounter = this.arrowCounter - 1\n\t\t\tthis.moveToView().finally()\n\t\t}\n\t}\n\n\tprivate onArrowDown() {\n\t\tif (this.arrowCounter < this.list.length - 1) {\n\t\t\tthis.arrowCounter = this.arrowCounter + 1\n\t\t\tthis.moveToView().finally()\n\t\t}\n\t}\n\n\tprivate async moveToView() {\n\t\tawait delay(200)\n\t\tconst heightOfList = this.listRef.offsetHeight\n\t\tconst selected = this.listRef.querySelector('li[aria-selected=\"true\"]') as HTMLUListElement\n\t\tif (selected && heightOfList) {\n\t\t\tconst offsetTop = selected.offsetTop\n\t\t\tthis.listRef.scrollTo({top: offsetTop, behavior: 'smooth'})\n\t\t}\n\t}\n\n\tprivate doSearch() {\n\t\tif (Number.isInteger(this.minlength) && this.isValueAccepted === false && this.minlength) {\n\t\t\tthis.list = []\n\t\t\tthis.arrowCounter = -1\n\t\t\tthis.processing = false\n\t\t\treturn\n\t\t}\n\t\tif (this.searchCallback) {\n\t\t\tthis.processing = true\n\t\t\tthis.searchCallback(this.value)\n\t\t\t\t.then(response => (this.list = response))\n\t\t\t\t.catch(() => (this.list = []))\n\t\t\t\t.finally(() => {\n\t\t\t\t\tthis.arrowCounter = -1\n\t\t\t\t\tthis.processing = false\n\t\t\t\t})\n\t\t}\n\t}\n\n\tprivate clearList() {\n\t\tconst areOptions = propsValueToArray<GovFormAutocompleteItem[]>(this.options)\n\t\tif (areOptions.length === 0) {\n\t\t\tthis.list = []\n\t\t}\n\t}\n\n\tget isValueAccepted() {\n\t\tif (typeof this.value === 'string') {\n\t\t\treturn this.value.length >= this.minlength\n\t\t} else {\n\t\t\treturn false\n\t\t}\n\t}\n\n\tcomponentDidLoad() {\n\t\tthis.attributeObserver = new AttributeObserver(this.host, (attributeName, newValue) => {\n\t\t\tthis.onAriaAttributeChange(attributeName, newValue);\n\t\t});\n\n\t\tthis.attributeObserver.startObserving(ariaAttributes);\n\t}\n\n\tcomponentWillLoad() {\n\t\tthis.validateSize(this.size)\n\t\tthis.inheritedAttributes = inheritAriaAttributes(this.host);\n\t}\n\n\tdisconnectedCallback() {\n\t\tthis.attributeObserver?.stopObserving();\n\t}\n\n\tonAriaAttributeChange(attributeName: string, newValue: string) {\n\t\tthis.host.removeAttribute(attributeName)\n\t\tthis.inheritedAttributes = {...this.inheritedAttributes, [attributeName]: newValue};\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class={FormAutocompleteClass.root} size={this.size}>\n\t\t\t\t<gov-form-input\n\t\t\t\t\tplaceholder={this.placeholder}\n\t\t\t\t\tname={this.name}\n\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\treadonly={this.readonly}\n\t\t\t\t\tautocomplete={false}\n\t\t\t\t\tsize={this.size}\n\t\t\t\t\trequired={this.required}\n\t\t\t\t\tinvalid={this.invalid}\n\t\t\t\t\tsuccess={this.success}\n\t\t\t\t\trole={'searchbox'}\n\t\t\t\t\tvalue={this.value}\n\t\t\t\t\tminlength={this.minlength}\n\t\t\t\t\tmaxlength={this.maxlength}\n\t\t\t\t\ton-gov-input={throttle(this.onInputHandler.bind(this), this.throttleTime)}\n\t\t\t\t\ton-gov-keyup={this.onKeyUpHandler.bind(this)}\n\t\t\t\t\ton-gov-keydown={this.onKeyDownHandler.bind(this)}\n\t\t\t\t\ton-gov-focus={this.onFocusHandler.bind(this)}\n\t\t\t\t\ton-gov-blur={this.onBlurHandler.bind(this)}\n\t\t\t\t\t{...this.inheritedAttributes}\n\t\t\t\t\taria-autocomplete={'list'}\n\t\t\t\t\taria-owns={[this.listBoxId, this.inheritedAttributes['aria-owns']].join(' ')}\n\t\t\t\t\taria-expanded={booleanString(this.list.length && this.focused ? true : false)}\n\t\t\t\t\tref={el => (this.inputRef = el as HTMLGovFormInputElement)}\n\t\t\t\t>\n\t\t\t\t\t<slot name=\"validation-icon\" />\n\t\t\t\t\t<slot name=\"icon-end\" />\n\t\t\t\t</gov-form-input>\n\t\t\t\t<ul class={FormAutocompleteClass.list}\n\t\t\t\t\trole={'listbox'}\n\t\t\t\t\taria-hidden={toBoolAttr(!this.focused)}\n\t\t\t\t\thidden={!this.focused}\n\t\t\t\t\tid={this.listBoxId}\n\t\t\t\t\tref={el => (this.listRef = el as HTMLUListElement)}>\n\t\t\t\t\t{this.focused && this.list.length === 0 && this.processing === false && this.isValueAccepted && this.messageEmpty ? (\n\t\t\t\t\t\t<li class={FormAutocompleteClass.empty}>{this.messageEmpty}</li>\n\t\t\t\t\t) : null}\n\t\t\t\t\t{this.focused && this.processing === true && this.isValueAccepted ? (\n\t\t\t\t\t\t<li class={FormAutocompleteClass.loading}>\n\t\t\t\t\t\t\t<gov-skeleton size=\"m\"></gov-skeleton>\n\t\t\t\t\t\t</li>\n\t\t\t\t\t) : null}\n\t\t\t\t\t{this.focused ? this.list.map((item, index) => {\n\t\t\t\t\t\tconst isSelected = this.arrowCounter === index\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<li\n\t\t\t\t\t\t\t\tclass={FormAutocompleteClass.item}\n\t\t\t\t\t\t\t\tinnerHTML={this.templateResolver(item, isSelected)}\n\t\t\t\t\t\t\t\trole={'option'}\n\t\t\t\t\t\t\t\taria-posinset={index}\n\t\t\t\t\t\t\t\ttabindex={isSelected ? 0 : -1}\n\t\t\t\t\t\t\t\taria-setsize={this.list.length}\n\t\t\t\t\t\t\t\tonTouchStart={(e: TouchEvent) => this.onSelectHandler(e, index)}\n\t\t\t\t\t\t\t\tonMouseDown={(e: PointerEvent) => this.onSelectHandler(e, index)}\n\t\t\t\t\t\t\t\taria-selected={toBoolAttr(isSelected)}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<slot name=\"list-item-left\"/>\n\t\t\t\t\t\t\t\t<slot name=\"list-item-right\"/>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t)\n\t\t\t\t\t}) : null}\n\t\t\t\t</ul>\n\t\t\t</Host>\n\t\t)\n\t}\n\n\tprivate onFocusHandler(e: FocusEvent) {\n\t\tthis.focused = true\n\t\tthis.arrowCounter = -1\n\t\tif (this.isValueAccepted && this.searchCallback) {\n\t\t\tthis.doSearch()\n\t\t}\n\t\te.stopPropagation()\n\t\tthis.govFocus.emit({\n\t\t\toriginalEvent: e,\n\t\t\tcomponent: FormAutocompleteClass.root,\n\t\t\tvalue: this.value,\n\t\t\tselected: null,\n\t\t})\n\t}\n\n\tprivate onBlurHandler(e: FocusEvent) {\n\t\tthis.focused = false\n\t\tthis.clearList();\n\t\tthis.arrowCounter = -1\n\t\te.stopPropagation()\n\t\tthis.govBlur.emit({\n\t\t\toriginalEvent: e,\n\t\t\tcomponent: FormAutocompleteClass.root,\n\t\t\tvalue: this.value,\n\t\t\tselected: null,\n\t\t})\n\t}\n\n\tprivate onInputHandler(e: InputEvent) {\n\t\tthis.value = (e.target as HTMLGovFormInputElement).value\n\t\te.stopPropagation()\n\t\tthis.govInput.emit({\n\t\t\toriginalEvent: e,\n\t\t\tcomponent: FormAutocompleteClass.root,\n\t\t\tvalue: this.value,\n\t\t\tselected: null,\n\t\t})\n\t\tthis.doSearch()\n\t}\n\n\tprivate onSelectHandler(e: PointerEvent | CustomEvent | TouchEvent, index = -1) {\n\t\tlet selected: Nullable<GovFormAutocompleteItem> = null\n\t\tif (index > -1) {\n\t\t\tselected = this.list[index]\n\t\t} else if (has(this.arrowCounter, this.list)) {\n\t\t\tselected = this.list[this.arrowCounter]\n\t\t}\n\t\tif (selected) {\n\t\t\tthis.govSelect.emit({\n\t\t\t\tcomponent: FormAutocompleteClass.root,\n\t\t\t\tvalue: this.value,\n\t\t\t\tselected: selected,\n\t\t\t\toriginalEvent: e,\n\t\t\t})\n\t\t\tthis.clearList();\n\t\t\tif (has(this.nameKey, selected) && typeof selected[this.nameKey] === 'string') {\n\t\t\t\tthis.value = selected[this.nameKey]\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate onKeyUpHandler(e: CustomEvent) {\n\t\tconst event = (e.detail as FormInputEvent).originalEvent as KeyboardEvent\n\t\te.stopPropagation()\n\t\tevent.stopPropagation()\n\t\tif (event.keyCode === 38) this.onArrowUp()\n\t\telse if (event.keyCode === 40) this.onArrowDown()\n\t\telse if (event.keyCode === 13) {\n\t\t\te.preventDefault()\n\t\t\tevent.preventDefault()\n\t\t\tthis.onSelectHandler(e)\n\t\t}\n\t}\n\n\tprivate onKeyDownHandler(e: CustomEvent) {\n\t\tconst event = (e.detail as FormInputEvent).originalEvent as KeyboardEvent\n\t\te.stopPropagation()\n\t\tevent.stopPropagation()\n\t\tif (event.keyCode === 13) {\n\t\t\te.preventDefault()\n\t\t\tevent.preventDefault()\n\t\t}\n\t}\n\n\t/**\n\t * Focus main input element\n\t */\n\t@Method()\n\tasync setFocus(options?: FocusOptions): Promise<void> {\n\t\treturn this.inputRef.focus(options)\n\t}\n\n\t/**\n\t * Blur main input element\n\t */\n\t@Method()\n\tasync setBlur(): Promise<void> {\n\t\treturn this.inputRef.blur()\n\t}\n\n\t/**\n\t * Set options for list\n\t */\n\t@Method()\n\tasync setOptions(options: GovFormAutocompleteItem[]): Promise<void> {\n\t\tthis.list = Array.isArray(options) ? options : []\n\t\tthis.arrowCounter = -1\n\t}\n\n\t/**\n\t * Clears whisperer value\n\t */\n\t@Method()\n\tasync clearValue(): Promise<void> {\n\t\tthis.value = ''\n\t\tthis.inputRef.value = ''\n\n\t\tawait this.inputRef.clearValue()\n\t}\n\n\t/**\n\t * Clears whisperer value\n\t */\n\t@Method()\n\tasync setProcessing(status: boolean): Promise<void> {\n\t\tthis.processing = status\n\t}\n\n\t/**\n\t * Set a custom asynchronous function for the whisperer\n\t */\n\t@Method()\n\tasync setSearchCallback(callback: (value: string) => Promise<any>) {\n\t\tthis.searchCallback = callback\n\t}\n\n\t/**\n\t * Setting a custom whisper result template\n\t * @param callback\n\t */\n\t@Method()\n\tasync setTemplateResolver(callback: (item: GovFormAutocompleteItem) => string) {\n\t\tthis.templateResolver = callback\n\t}\n}\n"]}
@@ -57,7 +57,8 @@ export class GovFormCheckbox {
57
57
  this.hydrated = true;
58
58
  }
59
59
  disconnectedCallback() {
60
- this.attributeObserver.stopObserving();
60
+ var _a;
61
+ (_a = this.attributeObserver) === null || _a === void 0 ? void 0 : _a.stopObserving();
61
62
  }
62
63
  onAriaAttributeChange(attributeName, newValue) {
63
64
  this.host.removeAttribute(attributeName);
@@ -1 +1 @@
1
- {"version":3,"file":"gov-form-checkbox.js","sourceRoot":"","sources":["../../../../../../../src/components/gov-form/checkbox/gov-form-checkbox.tsx"],"names":[],"mappings":"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","sourcesContent":["import {Component, Element, Event, EventEmitter, h, Host, Method, Prop, State, Watch} from \"@stencil/core\"\nimport {createID} from \"../../../utils/string.utils\"\nimport {validateProp} from \"../../../helpers/Validate/props\"\nimport {FormCheckboxClass, FormCheckboxSizes, FormCheckboxSizesType} from \"./constants\"\nimport {govHost, toBoolAttr, toBoolAttrIfDefined} from \"../../../helpers/Dom/template\"\nimport {GovForm} from \"../../../helpers/Dom/form.types\"\nimport {GovHost} from \"../../../helpers/Dom/template.types\"\nimport {govForm} from \"../../../helpers/Dom/form\"\nimport Fragment from \"../../../helpers/Fragment\"\nimport {FormCheckboxEvent} from \"./gov-form-checkbox.types\"\nimport {AttributeObserver, Attributes} from \"../../../helpers/Dom/attribute\";\nimport {ariaAttributes} from \"../../../helpers/Accessibility/attributes\";\nimport {inheritAriaAttributes} from \"../../../helpers/Accessibility/accessibility\";\n\n@Component({\n\ttag: \"gov-form-checkbox\",\n})\nexport class GovFormCheckbox {\n\tprivate readonly h: GovHost\n\tprivate f: GovForm\n\tprivate inputRef?: HTMLInputElement\n\tprivate attributeObserver: AttributeObserver\n\n\tprivate readonly checkboxId: string\n\tprivate hydrated = false\n\n\tconstructor() {\n\t\tthis.checkboxId = createID(\"GovCheckbox\")\n\n\t\tthis.h = govHost(this.host)\n\t\tthis.f = govForm(this.h)\n\t}\n\n\t@Element() host: HTMLGovFormCheckboxElement\n\t/**\n\t * Value of checkbox\n\t */\n\t@Prop() readonly value: string\n\t/**\n\t * Checkbox button state\n\t */\n\t@Prop({reflect: true, mutable: true}) checked = false\n\t/**\n\t * Set whether the input is required or not. Please note that this is necessary for accessible inputs when the user is required to fill them.\n\t * When using this property you need to also set “novalidate” attribute to your form element to prevent browser from displaying its own validation errors.\n\t */\n\t@Prop() readonly required: boolean = false\n\t/**\n\t * Makes the checkbox component disabled.\n\t */\n\t@Prop({reflect: true}) readonly disabled: boolean = false\n\t/**\n\t * Same as original parameter (https://developer.mozilla.org/en-US/docs/Web/CSS/:indeterminate)\n\t */\n\t@Prop({reflect: true}) readonly indeterminate: boolean = false\n\t/**\n\t * Name of the checkbox.\n\t */\n\t@Prop() readonly name: string\n\t/**\n\t * Checkboxes size.\n\t */\n\t@Prop({reflect: true}) readonly size?: FormCheckboxSizesType = \"m\"\n\t/**\n\t * Custom checkbox identifier.\n\t */\n\t@Prop({attribute: \"identifier\"}) readonly identifier: string\n\t/**\n\t * When you can't use the form label.\n\t */\n\t@Prop({attribute: \"no-label\"}) readonly noLabel: boolean = false\n\t/**\n\t * Indicates the entered value does not conform to the format expected by the application.\n\t */\n\t@Prop() readonly invalid: boolean\n\t/**\n\t * Emitted when the checkbox has focus.\n\t */\n\t@Event({eventName: \"gov-focus\"}) govFocus: EventEmitter<FormCheckboxEvent>\n\t/**\n\t * Emitted when the checkbox loses focus.\n\t */\n\t@Event({eventName: \"gov-blur\"}) govBlur: EventEmitter<FormCheckboxEvent>\n\t/**\n\t * Emitted when the checkbox change value.\n\t */\n\t@Event({eventName: \"gov-change\"}) govChange: EventEmitter<FormCheckboxEvent>\n\n\t@Watch(\"size\")\n\tvalidateSize(newValue: string): void {\n\t\tvalidateProp(FormCheckboxSizes, newValue, FormCheckboxClass.root)\n\t}\n\n\t@Watch(\"disabled\")\n\t@Watch(\"invalid\")\n\t@Watch(\"size\")\n\twatchControlAttrs(): void {\n\t\tthis.passControlAttrs()\n\t}\n\n\t@State() inheritedAttributes: Attributes = {}\n\n\tprivate passControlAttrs() {\n\t\tthis.f.passAttrToControl(\"size\", this.size)\n\t\tthis.f.passAttrToControl(\"disabled\", toBoolAttr(this.disabled))\n\t\tthis.f.passAttrToControl(\"invalid\", toBoolAttr(this.invalid))\n\t\tthis.f.passAttrToControl(\"type\", \"checkbox\")\n\t}\n\n\tcomponentWillLoad() {\n\t\tthis.passControlAttrs()\n\t\tthis.inheritedAttributes = inheritAriaAttributes(this.host);\n\t}\n\n\tcomponentDidLoad() {\n\t\tthis.attributeObserver = new AttributeObserver(this.host, (attributeName, newValue) => {\n\t\t\tthis.onAriaAttributeChange(attributeName, newValue);\n\t\t});\n\n\t\tthis.attributeObserver.startObserving(ariaAttributes);\n\t}\n\n\tasync componentDidRender() {\n\t\tthis.f.passAttrToLabel(\"identifier\", this.identifier || this.checkboxId)\n\t\tthis.f.passAttrToLabel(\"required\", String(this.required))\n\t\tthis.passControlAttrs()\n\t}\n\n\tconnectedCallback() {\n\t\tthis.hydrated = true\n\t}\n\n\tdisconnectedCallback() {\n\t\tthis.attributeObserver.stopObserving();\n\t}\n\n\tonAriaAttributeChange(attributeName: string, newValue: string) {\n\t\tthis.host.removeAttribute(attributeName)\n\t\tthis.inheritedAttributes = {...this.inheritedAttributes, [attributeName]: newValue};\n\t}\n\n\trender() {\n\t\tconst wrapCheckbox = (children) => {\n\t\t\tif (this.noLabel) {\n\t\t\t\treturn (\n\t\t\t\t\t<label class={FormCheckboxClass.label}>\n\t\t\t\t\t\t{children}\n\t\t\t\t\t</label>\n\t\t\t\t)\n\t\t\t}\n\t\t\treturn children\n\t\t}\n\n\t\treturn (\n\t\t\t<Host class={FormCheckboxClass.root}\n\t\t\t\t\t\thydrated={this.hydrated}\n\t\t\t\t\t\tchecked={this.checked}\n\t\t\t\t\t\tsize={this.size}\n\t\t\t\t\t\tinvalid={toBoolAttrIfDefined(this.invalid)}>\n\t\t\t\t{wrapCheckbox(\n\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t<input\n\t\t\t\t\t\t\tid={this.identifier || this.checkboxId}\n\t\t\t\t\t\t\ttype=\"checkbox\"\n\t\t\t\t\t\t\tvalue={this.value}\n\t\t\t\t\t\t\tname={this.name}\n\t\t\t\t\t\t\tchecked={this.checked}\n\t\t\t\t\t\t\tonClick={this.onClickHandler.bind(this)}\n\t\t\t\t\t\t\tonChange={this.onChangeHandler.bind(this)}\n\t\t\t\t\t\t\tonFocus={this.onFocusHandler.bind(this)}\n\t\t\t\t\t\t\tonBlur={this.onBlurHandler.bind(this)}\n\t\t\t\t\t\t\trequired={this.required}\n\t\t\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\t\t\tindeterminate={this.indeterminate}\n\t\t\t\t\t\t\tref={el => (this.inputRef = el as HTMLInputElement)}\n\t\t\t\t\t\t\t{...this.inheritedAttributes}\n\t\t\t\t\t\t\taria-checked={toBoolAttr(this.checked)}\n\t\t\t\t\t\t\taria-required={toBoolAttrIfDefined(this.required)}\n\t\t\t\t\t\t\taria-invalid={toBoolAttrIfDefined(this.invalid)}\n\t\t\t\t\t\t\taria-disabled={toBoolAttrIfDefined(this.disabled)}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t<slot name=\"label\"/>\n\t\t\t\t\t\t\t<gov-icon class={FormCheckboxClass.check} name=\"check-lg\" type=\"components\"></gov-icon>\n\t\t\t\t\t\t\t<gov-icon class={FormCheckboxClass.indeterminate} name=\"dash-lg\" type=\"components\"></gov-icon>\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</Fragment>,\n\t\t\t\t)}\n\t\t\t</Host>\n\t\t)\n\t}\n\n\tprivate onFocusHandler(e: FocusEvent) {\n\t\te.stopPropagation()\n\t\tthis.govFocus.emit({\n\t\t\tcomponent: FormCheckboxClass.root,\n\t\t\tvalue: this.value,\n\t\t\tchecked: this.checked,\n\t\t\toriginalEvent: e,\n\t\t})\n\t}\n\n\tprivate onBlurHandler(e: FocusEvent) {\n\t\te.stopPropagation()\n\t\tthis.govBlur.emit({\n\t\t\tcomponent: FormCheckboxClass.root,\n\t\t\tvalue: this.value,\n\t\t\tchecked: this.checked,\n\t\t\toriginalEvent: e,\n\t\t})\n\t}\n\n\tprivate onClickHandler(e: PointerEvent) {\n\t\te.stopPropagation()\n\t}\n\n\tprivate onChangeHandler(e: Event) {\n\t\tthis.checked = (e.target as HTMLInputElement).checked\n\t\te.stopPropagation()\n\t\tthis.govChange.emit({\n\t\t\tcomponent: FormCheckboxClass.root,\n\t\t\tvalue: this.value,\n\t\t\tchecked: this.checked,\n\t\t\toriginalEvent: e,\n\t\t})\n\t}\n\n\t/**\n\t * Returns the reference of the native element\n\t */\n\t@Method()\n\tasync getRef(): Promise<HTMLInputElement> {\n\t\treturn this.inputRef\n\t}\n}\n"]}
1
+ {"version":3,"file":"gov-form-checkbox.js","sourceRoot":"","sources":["../../../../../../../src/components/gov-form/checkbox/gov-form-checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAE,OAAO,EAAE,KAAK,EAAgB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAC,MAAM,eAAe,CAAA;AAC1G,OAAO,EAAC,QAAQ,EAAC,MAAM,6BAA6B,CAAA;AACpD,OAAO,EAAC,YAAY,EAAC,MAAM,iCAAiC,CAAA;AAC5D,OAAO,EAAC,iBAAiB,EAAE,iBAAiB,EAAwB,MAAM,aAAa,CAAA;AACvF,OAAO,EAAC,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAC,MAAM,+BAA+B,CAAA;AAGtF,OAAO,EAAC,OAAO,EAAC,MAAM,2BAA2B,CAAA;AACjD,OAAO,QAAQ,MAAM,2BAA2B,CAAA;AAEhD,OAAO,EAAC,iBAAiB,EAAa,MAAM,gCAAgC,CAAC;AAC7E,OAAO,EAAC,cAAc,EAAC,MAAM,2CAA2C,CAAC;AACzE,OAAO,EAAC,qBAAqB,EAAC,MAAM,8CAA8C,CAAC;AAKnF,MAAM,OAAO,eAAe;IAS3B;QAFQ,aAAQ,GAAG,KAAK,CAAA;;uBAiBwB,KAAK;wBAKhB,KAAK;wBAIU,KAAK;6BAIA,KAAK;;oBAQC,GAAG;;uBAQP,KAAK;;mCA8BrB,EAAE;QAzE5C,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAA;QAEzC,IAAI,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC3B,IAAI,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;KACxB;IA0DD,YAAY,CAAC,QAAgB;QAC5B,YAAY,CAAC,iBAAiB,EAAE,QAAQ,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAClE,CAAC;IAKD,iBAAiB;QAChB,IAAI,CAAC,gBAAgB,EAAE,CAAA;IACxB,CAAC;IAIO,gBAAgB;QACvB,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;QAC3C,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,UAAU,EAAE,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAA;QAC/D,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAA;QAC7D,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IAC7C,CAAC;IAED,iBAAiB;QAChB,IAAI,CAAC,gBAAgB,EAAE,CAAA;QACvB,IAAI,CAAC,mBAAmB,GAAG,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7D,CAAC;IAED,gBAAgB;QACf,IAAI,CAAC,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,aAAa,EAAE,QAAQ,EAAE,EAAE;YACrF,IAAI,CAAC,qBAAqB,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,kBAAkB;QACvB,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,CAAA;QACxE,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAA;QACzD,IAAI,CAAC,gBAAgB,EAAE,CAAA;IACxB,CAAC;IAED,iBAAiB;QAChB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAA;IACrB,CAAC;IAED,oBAAoB;;QACnB,MAAA,IAAI,CAAC,iBAAiB,0CAAE,aAAa,EAAE,CAAC;IACzC,CAAC;IAED,qBAAqB,CAAC,aAAqB,EAAE,QAAgB;QAC5D,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,CAAA;QACxC,IAAI,CAAC,mBAAmB,mCAAO,IAAI,CAAC,mBAAmB,KAAE,CAAC,aAAa,CAAC,EAAE,QAAQ,GAAC,CAAC;IACrF,CAAC;IAED,MAAM;QACL,MAAM,YAAY,GAAG,CAAC,QAAQ,EAAE,EAAE;YACjC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBAClB,OAAO,CACN,aAAO,KAAK,EAAE,iBAAiB,CAAC,KAAK,IACnC,QAAQ,CACF,CACR,CAAA;YACF,CAAC;YACD,OAAO,QAAQ,CAAA;QAChB,CAAC,CAAA;QAED,OAAO,CACN,EAAC,IAAI,IAAC,KAAK,EAAE,iBAAiB,CAAC,IAAI,EAChC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,OAAO,EAAE,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,IAC3C,YAAY,CACZ,EAAC,QAAQ;YACR,2BACC,EAAE,EAAE,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,EACtC,IAAI,EAAC,UAAU,EACf,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EACvC,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EACzC,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EACvC,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EACrC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,GAAG,EAAsB,CAAC,IAC/C,IAAI,CAAC,mBAAmB,oBACd,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,mBACvB,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,kBACnC,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,mBAChC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,IAChD;YACF;gBACC,YAAM,IAAI,EAAC,OAAO,GAAE;gBACpB,gBAAU,KAAK,EAAE,iBAAiB,CAAC,KAAK,EAAE,IAAI,EAAC,UAAU,EAAC,IAAI,EAAC,YAAY,GAAY;gBACvF,gBAAU,KAAK,EAAE,iBAAiB,CAAC,aAAa,EAAE,IAAI,EAAC,SAAS,EAAC,IAAI,EAAC,YAAY,GAAY,CACxF,CACG,CACX,CACK,CACP,CAAA;IACF,CAAC;IAEO,cAAc,CAAC,CAAa;QACnC,CAAC,CAAC,eAAe,EAAE,CAAA;QACnB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YAClB,SAAS,EAAE,iBAAiB,CAAC,IAAI;YACjC,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,aAAa,EAAE,CAAC;SAChB,CAAC,CAAA;IACH,CAAC;IAEO,aAAa,CAAC,CAAa;QAClC,CAAC,CAAC,eAAe,EAAE,CAAA;QACnB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;YACjB,SAAS,EAAE,iBAAiB,CAAC,IAAI;YACjC,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,aAAa,EAAE,CAAC;SAChB,CAAC,CAAA;IACH,CAAC;IAEO,cAAc,CAAC,CAAe;QACrC,CAAC,CAAC,eAAe,EAAE,CAAA;IACpB,CAAC;IAEO,eAAe,CAAC,CAAQ;QAC/B,IAAI,CAAC,OAAO,GAAI,CAAC,CAAC,MAA2B,CAAC,OAAO,CAAA;QACrD,CAAC,CAAC,eAAe,EAAE,CAAA;QACnB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;YACnB,SAAS,EAAE,iBAAiB,CAAC,IAAI;YACjC,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,aAAa,EAAE,CAAC;SAChB,CAAC,CAAA;IACH,CAAC;IAED;;OAEG;IAEH,KAAK,CAAC,MAAM;QACX,OAAO,IAAI,CAAC,QAAQ,CAAA;IACrB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACD","sourcesContent":["import {Component, Element, Event, EventEmitter, h, Host, Method, Prop, State, Watch} from \"@stencil/core\"\nimport {createID} from \"../../../utils/string.utils\"\nimport {validateProp} from \"../../../helpers/Validate/props\"\nimport {FormCheckboxClass, FormCheckboxSizes, FormCheckboxSizesType} from \"./constants\"\nimport {govHost, toBoolAttr, toBoolAttrIfDefined} from \"../../../helpers/Dom/template\"\nimport {GovForm} from \"../../../helpers/Dom/form.types\"\nimport {GovHost} from \"../../../helpers/Dom/template.types\"\nimport {govForm} from \"../../../helpers/Dom/form\"\nimport Fragment from \"../../../helpers/Fragment\"\nimport {FormCheckboxEvent} from \"./gov-form-checkbox.types\"\nimport {AttributeObserver, Attributes} from \"../../../helpers/Dom/attribute\";\nimport {ariaAttributes} from \"../../../helpers/Accessibility/attributes\";\nimport {inheritAriaAttributes} from \"../../../helpers/Accessibility/accessibility\";\n\n@Component({\n\ttag: \"gov-form-checkbox\",\n})\nexport class GovFormCheckbox {\n\tprivate readonly h: GovHost\n\tprivate f: GovForm\n\tprivate inputRef?: HTMLInputElement\n\tprivate attributeObserver: AttributeObserver\n\n\tprivate readonly checkboxId: string\n\tprivate hydrated = false\n\n\tconstructor() {\n\t\tthis.checkboxId = createID(\"GovCheckbox\")\n\n\t\tthis.h = govHost(this.host)\n\t\tthis.f = govForm(this.h)\n\t}\n\n\t@Element() host: HTMLGovFormCheckboxElement\n\t/**\n\t * Value of checkbox\n\t */\n\t@Prop() readonly value: string\n\t/**\n\t * Checkbox button state\n\t */\n\t@Prop({reflect: true, mutable: true}) checked = false\n\t/**\n\t * Set whether the input is required or not. Please note that this is necessary for accessible inputs when the user is required to fill them.\n\t * When using this property you need to also set “novalidate” attribute to your form element to prevent browser from displaying its own validation errors.\n\t */\n\t@Prop() readonly required: boolean = false\n\t/**\n\t * Makes the checkbox component disabled.\n\t */\n\t@Prop({reflect: true}) readonly disabled: boolean = false\n\t/**\n\t * Same as original parameter (https://developer.mozilla.org/en-US/docs/Web/CSS/:indeterminate)\n\t */\n\t@Prop({reflect: true}) readonly indeterminate: boolean = false\n\t/**\n\t * Name of the checkbox.\n\t */\n\t@Prop() readonly name: string\n\t/**\n\t * Checkboxes size.\n\t */\n\t@Prop({reflect: true}) readonly size?: FormCheckboxSizesType = \"m\"\n\t/**\n\t * Custom checkbox identifier.\n\t */\n\t@Prop({attribute: \"identifier\"}) readonly identifier: string\n\t/**\n\t * When you can't use the form label.\n\t */\n\t@Prop({attribute: \"no-label\"}) readonly noLabel: boolean = false\n\t/**\n\t * Indicates the entered value does not conform to the format expected by the application.\n\t */\n\t@Prop() readonly invalid: boolean\n\t/**\n\t * Emitted when the checkbox has focus.\n\t */\n\t@Event({eventName: \"gov-focus\"}) govFocus: EventEmitter<FormCheckboxEvent>\n\t/**\n\t * Emitted when the checkbox loses focus.\n\t */\n\t@Event({eventName: \"gov-blur\"}) govBlur: EventEmitter<FormCheckboxEvent>\n\t/**\n\t * Emitted when the checkbox change value.\n\t */\n\t@Event({eventName: \"gov-change\"}) govChange: EventEmitter<FormCheckboxEvent>\n\n\t@Watch(\"size\")\n\tvalidateSize(newValue: string): void {\n\t\tvalidateProp(FormCheckboxSizes, newValue, FormCheckboxClass.root)\n\t}\n\n\t@Watch(\"disabled\")\n\t@Watch(\"invalid\")\n\t@Watch(\"size\")\n\twatchControlAttrs(): void {\n\t\tthis.passControlAttrs()\n\t}\n\n\t@State() inheritedAttributes: Attributes = {}\n\n\tprivate passControlAttrs() {\n\t\tthis.f.passAttrToControl(\"size\", this.size)\n\t\tthis.f.passAttrToControl(\"disabled\", toBoolAttr(this.disabled))\n\t\tthis.f.passAttrToControl(\"invalid\", toBoolAttr(this.invalid))\n\t\tthis.f.passAttrToControl(\"type\", \"checkbox\")\n\t}\n\n\tcomponentWillLoad() {\n\t\tthis.passControlAttrs()\n\t\tthis.inheritedAttributes = inheritAriaAttributes(this.host);\n\t}\n\n\tcomponentDidLoad() {\n\t\tthis.attributeObserver = new AttributeObserver(this.host, (attributeName, newValue) => {\n\t\t\tthis.onAriaAttributeChange(attributeName, newValue);\n\t\t});\n\n\t\tthis.attributeObserver.startObserving(ariaAttributes);\n\t}\n\n\tasync componentDidRender() {\n\t\tthis.f.passAttrToLabel(\"identifier\", this.identifier || this.checkboxId)\n\t\tthis.f.passAttrToLabel(\"required\", String(this.required))\n\t\tthis.passControlAttrs()\n\t}\n\n\tconnectedCallback() {\n\t\tthis.hydrated = true\n\t}\n\n\tdisconnectedCallback() {\n\t\tthis.attributeObserver?.stopObserving();\n\t}\n\n\tonAriaAttributeChange(attributeName: string, newValue: string) {\n\t\tthis.host.removeAttribute(attributeName)\n\t\tthis.inheritedAttributes = {...this.inheritedAttributes, [attributeName]: newValue};\n\t}\n\n\trender() {\n\t\tconst wrapCheckbox = (children) => {\n\t\t\tif (this.noLabel) {\n\t\t\t\treturn (\n\t\t\t\t\t<label class={FormCheckboxClass.label}>\n\t\t\t\t\t\t{children}\n\t\t\t\t\t</label>\n\t\t\t\t)\n\t\t\t}\n\t\t\treturn children\n\t\t}\n\n\t\treturn (\n\t\t\t<Host class={FormCheckboxClass.root}\n\t\t\t\t\t\thydrated={this.hydrated}\n\t\t\t\t\t\tchecked={this.checked}\n\t\t\t\t\t\tsize={this.size}\n\t\t\t\t\t\tinvalid={toBoolAttrIfDefined(this.invalid)}>\n\t\t\t\t{wrapCheckbox(\n\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t<input\n\t\t\t\t\t\t\tid={this.identifier || this.checkboxId}\n\t\t\t\t\t\t\ttype=\"checkbox\"\n\t\t\t\t\t\t\tvalue={this.value}\n\t\t\t\t\t\t\tname={this.name}\n\t\t\t\t\t\t\tchecked={this.checked}\n\t\t\t\t\t\t\tonClick={this.onClickHandler.bind(this)}\n\t\t\t\t\t\t\tonChange={this.onChangeHandler.bind(this)}\n\t\t\t\t\t\t\tonFocus={this.onFocusHandler.bind(this)}\n\t\t\t\t\t\t\tonBlur={this.onBlurHandler.bind(this)}\n\t\t\t\t\t\t\trequired={this.required}\n\t\t\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\t\t\tindeterminate={this.indeterminate}\n\t\t\t\t\t\t\tref={el => (this.inputRef = el as HTMLInputElement)}\n\t\t\t\t\t\t\t{...this.inheritedAttributes}\n\t\t\t\t\t\t\taria-checked={toBoolAttr(this.checked)}\n\t\t\t\t\t\t\taria-required={toBoolAttrIfDefined(this.required)}\n\t\t\t\t\t\t\taria-invalid={toBoolAttrIfDefined(this.invalid)}\n\t\t\t\t\t\t\taria-disabled={toBoolAttrIfDefined(this.disabled)}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t<slot name=\"label\"/>\n\t\t\t\t\t\t\t<gov-icon class={FormCheckboxClass.check} name=\"check-lg\" type=\"components\"></gov-icon>\n\t\t\t\t\t\t\t<gov-icon class={FormCheckboxClass.indeterminate} name=\"dash-lg\" type=\"components\"></gov-icon>\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</Fragment>,\n\t\t\t\t)}\n\t\t\t</Host>\n\t\t)\n\t}\n\n\tprivate onFocusHandler(e: FocusEvent) {\n\t\te.stopPropagation()\n\t\tthis.govFocus.emit({\n\t\t\tcomponent: FormCheckboxClass.root,\n\t\t\tvalue: this.value,\n\t\t\tchecked: this.checked,\n\t\t\toriginalEvent: e,\n\t\t})\n\t}\n\n\tprivate onBlurHandler(e: FocusEvent) {\n\t\te.stopPropagation()\n\t\tthis.govBlur.emit({\n\t\t\tcomponent: FormCheckboxClass.root,\n\t\t\tvalue: this.value,\n\t\t\tchecked: this.checked,\n\t\t\toriginalEvent: e,\n\t\t})\n\t}\n\n\tprivate onClickHandler(e: PointerEvent) {\n\t\te.stopPropagation()\n\t}\n\n\tprivate onChangeHandler(e: Event) {\n\t\tthis.checked = (e.target as HTMLInputElement).checked\n\t\te.stopPropagation()\n\t\tthis.govChange.emit({\n\t\t\tcomponent: FormCheckboxClass.root,\n\t\t\tvalue: this.value,\n\t\t\tchecked: this.checked,\n\t\t\toriginalEvent: e,\n\t\t})\n\t}\n\n\t/**\n\t * Returns the reference of the native element\n\t */\n\t@Method()\n\tasync getRef(): Promise<HTMLInputElement> {\n\t\treturn this.inputRef\n\t}\n}\n"]}
@@ -47,7 +47,7 @@ export class GovFormControl {
47
47
  }
48
48
  render() {
49
49
  const Tag = this.fieldset ? "fieldset" : "div";
50
- return (h(Host, { key: 'ca3d81a16858cbe4b2c06580cb2e9523a77191be', size: this.size, class: this.h.classes(FormControlClass.root) }, h(Tag, { key: '4b2bdfbc3c227b910660596d5815c70ef8fa22dd', class: FormControlClass.holder }, this.h.hasSlot("top") && h("slot", { key: '21e1b5d8e989e6e4ecf9795a2d9d3ccd6dc29543', name: "top" }), h("slot", { key: 'd2acefce44c05404f9d1ce224f7f259361423d82' }), this.h.hasSlot("bottom") && (h("div", { key: 'e5c095ee40f41623e9f6a871e29724be42a8be8f', class: FormControlClass.bottom }, h("slot", { key: '941873ca1268fca177d3ff92b10a205dea0faad3', name: "bottom" }))))));
50
+ return (h(Host, { key: '1502fcaa64e9c9839e7393573f10aa7a98161f8a', size: this.size, class: this.h.classes(FormControlClass.root) }, h(Tag, { key: 'ea3147966c1e34366293c19228793679f5065d53', class: FormControlClass.holder }, this.h.hasSlot("top") && h("slot", { key: '803c63b94d671bdcd30eeb2bf4a9ab9f23633358', name: "top" }), h("slot", { key: 'c46d8faf4cea51bc15e6f57e0f2e9bea895b4454' }), this.h.hasSlot("bottom") && (h("div", { key: '78fcf2aa671f3741f6d38f0519cd8983be5d6082', class: FormControlClass.bottom }, h("slot", { key: '0d25b0c2d06a1f5612c2bf85dc428715e2a8f97a', name: "bottom" }))))));
51
51
  }
52
52
  static get is() { return "gov-form-control"; }
53
53
  static get properties() {
@@ -129,14 +129,15 @@ export class GovFormFile {
129
129
  this.registerListeners();
130
130
  }
131
131
  disconnectedCallback() {
132
- this.attributeObserver.stopObserving();
132
+ var _a;
133
+ (_a = this.attributeObserver) === null || _a === void 0 ? void 0 : _a.stopObserving();
133
134
  }
134
135
  onAriaAttributeChange(attributeName, newValue) {
135
136
  this.host.removeAttribute(attributeName);
136
137
  this.inheritedAttributes = Object.assign(Object.assign({}, this.inheritedAttributes), { [attributeName]: newValue });
137
138
  }
138
139
  render() {
139
- return (h(Host, { key: '92ee90aa5d8d28d310c0229ce513be88edafd68d', class: this.h.classes([FormFileClass.root]), invalid: toBoolAttrIfDefined(this.invalid), expanded: toBoolAttrIfDefined(this.expanded) }, h("div", { key: 'ada51c64168a7cb4dcb4f123e7f74fe401b63c82', class: FormFileClass.area, ref: el => (this.areaRef = el) }, h("slot", { key: '77a4e7096f1949c8c284b0d6607ffd96567669ef' }), h("input", Object.assign({ key: '63382d1ccfc1254b9073923713677af25ed0fed3', class: FormFileClass.input, ref: el => (this.inputRef = el), id: this.identifier || this.fileId, type: "file", name: this.name, accept: this.accept, multiple: this.multiple, onChange: this.onChangeHandler.bind(this), onFocus: this.onFocusHandler.bind(this), onBlur: this.onBlurHandler.bind(this), required: this.required, disabled: this.disabled }, this.inheritedAttributes, { "aria-required": toBoolAttrIfDefined(this.required), "aria-invalid": toBoolAttrIfDefined(this.invalid), "aria-disabled": toBoolAttrIfDefined(this.disabled) }))), this.h.hasSlot("attachments") ? (h("div", { class: FormFileClass.attachments }, h("slot", { name: "attachments" }))) : null, this.files.length && this.displayAttachments ? (h("div", { class: FormFileClass.attachments }, h("gov-attachments", { label: this.accessibleAttachmentsLabel, "accessible-label": this.accessibleAttachmentsLabel }, this.files.map(item => (h("gov-attachments-item", { "accessible-remove-labelledby": item.id, "on-gov-remove": () => this.onRemoveFileHandler(item) }, h("span", { class: "sr-only", id: item.id }, this.accessibleRemoveLabel.replace("{FILE_NAME}", item.file.name)), item.file.name, item.acceptValid === false ? (h("gov-form-message", { slot: "message", color: "error" }, h("gov-icon", { slot: "icon", name: "exclamation-triangle-fill", type: "components" }), item.acceptValid === false ? this.errorAccept : null)) : null, item.sizeValid === false ? (h("gov-form-message", { slot: "message", color: "error" }, h("gov-icon", { slot: "icon", name: "exclamation-triangle-fill", type: "components" }), this.errorSize.replace("{FILE_SIZE}", formatBytes(this.maxFileSize)))) : null, h("span", { slot: "info" }, "(", formatBytes(item.file.size), ")"))))))) : null));
140
+ return (h(Host, { key: '6fe6eb71a8275871bb0aeebae9531d846123ae06', class: this.h.classes([FormFileClass.root]), invalid: toBoolAttrIfDefined(this.invalid), expanded: toBoolAttrIfDefined(this.expanded) }, h("div", { key: 'cd7ab5a0c223214f5d825c8695993e8c64b9ea78', class: FormFileClass.area, ref: el => (this.areaRef = el) }, h("slot", { key: '6197c08c6a50725a261da65069159f75e3e47834' }), h("input", Object.assign({ key: 'f6897d875af8c47268118ef5d7dd9c19cec6e9a1', class: FormFileClass.input, ref: el => (this.inputRef = el), id: this.identifier || this.fileId, type: "file", name: this.name, accept: this.accept, multiple: this.multiple, onChange: this.onChangeHandler.bind(this), onFocus: this.onFocusHandler.bind(this), onBlur: this.onBlurHandler.bind(this), required: this.required, disabled: this.disabled }, this.inheritedAttributes, { "aria-required": toBoolAttrIfDefined(this.required), "aria-invalid": toBoolAttrIfDefined(this.invalid), "aria-disabled": toBoolAttrIfDefined(this.disabled) }))), this.h.hasSlot("attachments") ? (h("div", { class: FormFileClass.attachments }, h("slot", { name: "attachments" }))) : null, this.files.length && this.displayAttachments ? (h("div", { class: FormFileClass.attachments }, h("gov-attachments", { label: this.accessibleAttachmentsLabel, "accessible-label": this.accessibleAttachmentsLabel }, this.files.map(item => (h("gov-attachments-item", { "accessible-remove-labelledby": item.id, "on-gov-remove": () => this.onRemoveFileHandler(item) }, h("span", { class: "sr-only", id: item.id }, this.accessibleRemoveLabel.replace("{FILE_NAME}", item.file.name)), item.file.name, item.acceptValid === false ? (h("gov-form-message", { slot: "message", color: "error" }, h("gov-icon", { slot: "icon", name: "exclamation-triangle-fill", type: "components" }), item.acceptValid === false ? this.errorAccept : null)) : null, item.sizeValid === false ? (h("gov-form-message", { slot: "message", color: "error" }, h("gov-icon", { slot: "icon", name: "exclamation-triangle-fill", type: "components" }), this.errorSize.replace("{FILE_SIZE}", formatBytes(this.maxFileSize)))) : null, h("span", { slot: "info" }, "(", formatBytes(item.file.size), ")"))))))) : null));
140
141
  }
141
142
  onRemoveFileHandler(file) {
142
143
  const index = this.files.findIndex(item => item.id === file.id);
@@ -1 +1 @@
1
- {"version":3,"file":"gov-form-file.js","sourceRoot":"","sources":["../../../../../../../src/components/gov-form/file/gov-form-file.tsx"],"names":[],"mappings":"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","sourcesContent":["import {Component, Element, Event, EventEmitter, h, Host, Method, Prop, State, Watch} from \"@stencil/core\"\nimport {createID} from \"../../../utils/string.utils\"\nimport {FormFileClass} from \"./constants\"\nimport {govHost, toBoolAttr, toBoolAttrIfDefined} from \"../../../helpers/Dom/template\"\nimport {fileAcceptValidation, fileSizeValidation, formatBytes} from \"../../../utils/file.utils\"\nimport {GovForm} from \"../../../helpers/Dom/form.types\"\nimport {GovHost} from \"../../../helpers/Dom/template.types\"\nimport {govForm} from \"../../../helpers/Dom/form\"\nimport {GovFormFileEvent, GovFormFileItem} from \"./gov-form-file.types\"\nimport {inheritAriaAttributes} from \"../../../helpers/Accessibility/accessibility\";\nimport {AttributeObserver, Attributes} from \"../../../helpers/Dom/attribute\";\nimport {ariaAttributes} from \"../../../helpers/Accessibility/attributes\";\n\n@Component({\n\ttag: \"gov-form-file\",\n})\nexport class GovFormFile {\n\tprivate f: GovForm\n\tprivate readonly h: GovHost\n\n\tprivate areaRef?: HTMLDivElement\n\tprivate inputRef?: HTMLInputElement\n\tprivate readonly fileId: string\n\tprivate attributeObserver: AttributeObserver\n\tprivate eventsRegistered = false\n\n\tconstructor() {\n\t\tthis.fileId = createID(\"GovInputFile\")\n\n\t\tthis.h = govHost(this.host)\n\t\tthis.f = govForm(this.h)\n\t}\n\n\t@Element() host: HTMLGovFormFileElement\n\t/**\n\t * Expands the file input to fill 100% of the container width.\n\t */\n\t@Prop() readonly expanded: boolean = false\n\t/**\n\t * Set whether the input is required or not. Please note that this is necessary for accessible inputs when the user is required to fill them.\n\t * When using this property you need to also set “novalidate” attribute to your form element to prevent browser from displaying its own validation errors.\n\t */\n\t@Prop() readonly required: boolean = false\n\t/**\n\t * Makes the File component disabled.\n\t * This prevents users from being able to interact with the File, and conveys its inactive state to assistive technologies.\n\t */\n\t@Prop({reflect: true}) readonly disabled: boolean = false\n\t/**\n\t * After selecting the files, the main input element will be reset.\n\t * The propagation of the event with the selected files will not be affected.\n\t */\n\t@Prop({attribute: \"reset-after-pick\"}) readonly resetAfterPick: boolean = false\n\t/**\n\t * Selected files will not be checked for duplicates based on name and size.\n\t */\n\t@Prop({attribute: \"ignore-file-duplication-check\"}) readonly ignoreFileDuplicationCheck: boolean = false\n\t/**\n\t * Show list of attachments\n\t */\n\t@Prop({attribute: \"display-attachments\"}) readonly displayAttachments: boolean = true\n\t/**\n\t * Name of the input.\n\t */\n\t@Prop() readonly name: string\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/accept\n\t */\n\t@Prop() readonly accept: string\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/multiple\n\t */\n\t@Prop() readonly multiple: boolean = false\n\t/**\n\t * Maximum embedded file size\n\t */\n\t@Prop({attribute: \"max-file-size\"}) readonly maxFileSize: number = -1\n\t/**\n\t * Custom File identifier.\n\t */\n\t@Prop({attribute: \"identifier\"}) readonly identifier: string\n\t/**\n\t * Indicates the entered value does not conform to the format expected by the application.\n\t */\n\t@Prop() readonly invalid: boolean\n\t/**\n\t * Error message when the maximum file size is exceeded\n\t */\n\t@Prop({attribute: \"error-size\"}) readonly errorSize: string = \"Soubor je větší než povolená velikost {FILE_SIZE}\"\n\t/**\n\t * Insert unsupported file error message\n\t */\n\t@Prop({attribute: \"error-accept\"}) readonly errorAccept: string = \"Soubor tohoto typu není povolen\"\n\t/**\n\t * Adds accessible label for the remove button that is only shown for screen readers.\n\t */\n\t@Prop({attribute: \"accessible-remove-label\"}) readonly accessibleRemoveLabel: string = \"Odebrat soubor {FILE_NAME}\"\n\t/**\n\t * Adds accessible label for the list of attachments.\n\t */\n\t@Prop({attribute: \"accessible-attachments-label\"}) readonly accessibleAttachmentsLabel: string = \"Přílohy\"\n\t/**\n\t * Emitted when the File has focus.\n\t */\n\t@Event({eventName: \"gov-focus\"}) govFocus: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Emitted when the File loses focus.\n\t */\n\t@Event({eventName: \"gov-blur\"}) govBlur: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Called when the list of inserted files is changed\n\t */\n\t@Event({eventName: \"gov-files\"}) govFiles: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Called when a new file is added\n\t */\n\t@Event({eventName: \"gov-add-file\"}) govAddFile: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Called when a file is removed from the list\n\t */\n\t@Event({eventName: \"gov-remove-file\"}) govRemoveFile: EventEmitter<GovFormFileEvent>\n\n\n\t@Watch(\"disabled\")\n\t@Watch(\"invalid\")\n\twatchControlAttrs(): void {\n\t\tthis.passControlAttrs()\n\t}\n\n\t@State() files: GovFormFileItem[] = []\n\t@State() inheritedAttributes: Attributes = {}\n\n\n\n\tprivate passControlAttrs() {\n\t\tthis.f.passAttrToControl(\"invalid\", toBoolAttr(this.invalid))\n\t\tthis.f.passAttrToControl(\"disabled\", toBoolAttr(this.disabled))\n\t\tthis.f.passAttrToControl(\"type\", \"File\")\n\t}\n\n\n\tprivate registerListeners() {\n\t\tif (this.eventsRegistered) {\n\t\t\treturn\n\t\t}\n\t\tthis.eventsRegistered = true\n\n\t\tfunction highlight() {\n\t\t\tthis.areaRef.classList.add(\"highlight\")\n\t\t}\n\n\t\tfunction unhighlight() {\n\t\t\tthis.areaRef.classList.remove(\"highlight\")\n\t\t}\n\n\t\tthis.inputRef.addEventListener(\n\t\t\t\"change\",\n\t\t\te => {\n\t\t\t\te.preventDefault()\n\t\t\t\te.stopPropagation()\n\t\t\t\tconst files = (e.target as HTMLInputElement).files\n\t\t\t\tif (this.resetAfterPick) {\n\t\t\t\t\tif (files.length) {\n\t\t\t\t\t\tthis.validateFiles(files)\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tthis.validateFiles(files)\n\t\t\t\t}\n\t\t\t},\n\t\t\tfalse,\n\t\t)\n\n\t\tif (this.expanded) {\n\t\t\tconst events = [\"dragover\", \"dragleave\"]\n\t\t\tconst inEvents = [\"dragenter\", \"dragover\", \"mouseenter\"]\n\t\t\tconst outEvents = [\"dragleave\", \"mouseleave\"]\n\n\t\t\tevents.map(eventName => this.inputRef.addEventListener(eventName, this.preventDefaults.bind(this), false))\n\t\t\tinEvents.map(eventName => this.inputRef.addEventListener(eventName, highlight.bind(this), false))\n\t\t\toutEvents.forEach(eventName => this.inputRef.addEventListener(eventName, unhighlight.bind(this), false))\n\t\t}\n\t}\n\n\tpreventDefaults(e) {\n\t\te.preventDefault()\n\t\te.stopPropagation()\n\t}\n\n\thandleDrop(e: DragEvent) {\n\t\tconst dataTransfer = e.dataTransfer\n\t\tthis.validateFiles(dataTransfer.files)\n\t}\n\n\tprivate validateFiles(files: FileList) {\n\t\tlet filesBuffer: GovFormFileItem[] = []\n\t\tArray.from(files).map(file => {\n\t\t\tconst isFile = this.files.find(item => item.file.name === file.name && item.file.size === file.size) || null\n\t\t\tif (isFile === null || this.ignoreFileDuplicationCheck) {\n\t\t\t\tconst isSizeValid = typeof this.maxFileSize === \"number\" && this.maxFileSize > 0 ? fileSizeValidation(file, this.maxFileSize) : true\n\t\t\t\tconst isAcceptValid = fileAcceptValidation(file, this.accept)\n\t\t\t\tconst newFile = {\n\t\t\t\t\tid: createID(\"GovFormFile\"),\n\t\t\t\t\tfile,\n\t\t\t\t\tacceptValid: isAcceptValid,\n\t\t\t\t\tsizeValid: isSizeValid,\n\t\t\t\t}\n\t\t\t\tif (this.displayAttachments) {\n\t\t\t\t\tthis.files = [...this.files, newFile]\n\t\t\t\t} else {\n\t\t\t\t\tfilesBuffer = [...filesBuffer, newFile]\n\t\t\t\t}\n\t\t\t\tthis.govAddFile.emit({\n\t\t\t\t\tcomponent: FormFileClass.root,\n\t\t\t\t\tfile: newFile,\n\t\t\t\t})\n\t\t\t}\n\t\t})\n\n\t\tthis.govFiles.emit({\n\t\t\tcomponent: FormFileClass.root,\n\t\t\tfiles: filesBuffer.length ? filesBuffer : this.files,\n\t\t})\n\n\t\tif (this.resetAfterPick) {\n\t\t\tthis.reset().finally()\n\t\t}\n\t}\n\n\tcomponentDidLoad() {\n\t\tthis.attributeObserver = new AttributeObserver(this.host, (attributeName, newValue) => {\n\t\t\tthis.onAriaAttributeChange(attributeName, newValue);\n\t\t});\n\n\t\tthis.attributeObserver.startObserving(ariaAttributes);\n\t}\n\n\tcomponentWillLoad() {\n\t\tthis.f.passAttrToLabel(\"required\", String(this.required))\n\t\tthis.passControlAttrs()\n\t\tthis.inheritedAttributes = inheritAriaAttributes(this.host);\n\t}\n\n\tasync componentDidRender() {\n\t\tthis.registerListeners()\n\t}\n\n\tdisconnectedCallback() {\n\t\tthis.attributeObserver.stopObserving();\n\t}\n\n\tonAriaAttributeChange(attributeName: string, newValue: string) {\n\t\tthis.host.removeAttribute(attributeName)\n\t\tthis.inheritedAttributes = {...this.inheritedAttributes, [attributeName]: newValue};\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class={this.h.classes([FormFileClass.root])}\n\t\t\t\t invalid={toBoolAttrIfDefined(this.invalid)}\n\t\t\t\t expanded={toBoolAttrIfDefined(this.expanded)}>\n\t\t\t\t<div class={FormFileClass.area} ref={el => (this.areaRef = el as HTMLDivElement)}>\n\t\t\t\t\t<slot/>\n\t\t\t\t\t<input\n\t\t\t\t\t\tclass={FormFileClass.input}\n\t\t\t\t\t\tref={el => (this.inputRef = el as HTMLInputElement)}\n\t\t\t\t\t\tid={this.identifier || this.fileId}\n\t\t\t\t\t\ttype=\"file\"\n\t\t\t\t\t\tname={this.name}\n\t\t\t\t\t\taccept={this.accept}\n\t\t\t\t\t\tmultiple={this.multiple}\n\t\t\t\t\t\tonChange={this.onChangeHandler.bind(this)}\n\t\t\t\t\t\tonFocus={this.onFocusHandler.bind(this)}\n\t\t\t\t\t\tonBlur={this.onBlurHandler.bind(this)}\n\t\t\t\t\t\trequired={this.required}\n\t\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\t\t{...this.inheritedAttributes}\n\t\t\t\t\t\taria-required={toBoolAttrIfDefined(this.required)}\n\t\t\t\t\t\taria-invalid={toBoolAttrIfDefined(this.invalid)}\n\t\t\t\t\t\taria-disabled={toBoolAttrIfDefined(this.disabled)}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\n\t\t\t\t{this.h.hasSlot(\"attachments\") ? (\n\t\t\t\t\t<div class={FormFileClass.attachments}>\n\t\t\t\t\t\t<slot name={\"attachments\"}/>\n\t\t\t\t\t</div>\n\t\t\t\t) : null}\n\n\t\t\t\t{this.files.length && this.displayAttachments ? (\n\t\t\t\t\t<div class={FormFileClass.attachments}>\n\t\t\t\t\t\t<gov-attachments label={this.accessibleAttachmentsLabel}\n\t\t\t\t\t\t\t\t\t\t accessible-label={this.accessibleAttachmentsLabel}>\n\t\t\t\t\t\t\t{this.files.map(item => (\n\t\t\t\t\t\t\t\t<gov-attachments-item accessible-remove-labelledby={item.id}\n\t\t\t\t\t\t\t\t\t\t\t\t\t on-gov-remove={() => this.onRemoveFileHandler(item)}>\n\t\t\t\t\t\t\t\t\t<span class={\"sr-only\"} id={item.id}>\n\t\t\t\t\t\t\t\t\t\t{this.accessibleRemoveLabel.replace(\"{FILE_NAME}\", item.file.name)}\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t{item.file.name}\n\t\t\t\t\t\t\t\t\t{item.acceptValid === false ? (\n\t\t\t\t\t\t\t\t\t\t<gov-form-message slot=\"message\" color=\"error\">\n\t\t\t\t\t\t\t\t\t\t\t<gov-icon slot=\"icon\" name=\"exclamation-triangle-fill\" type=\"components\"></gov-icon>\n\t\t\t\t\t\t\t\t\t\t\t{item.acceptValid === false ? this.errorAccept : null}\n\t\t\t\t\t\t\t\t\t\t</gov-form-message>\n\t\t\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t\t\t\t{item.sizeValid === false ? (\n\t\t\t\t\t\t\t\t\t\t<gov-form-message slot=\"message\" color=\"error\">\n\t\t\t\t\t\t\t\t\t\t\t<gov-icon slot=\"icon\" name=\"exclamation-triangle-fill\" type=\"components\"></gov-icon>\n\t\t\t\t\t\t\t\t\t\t\t{this.errorSize.replace(\"{FILE_SIZE}\", formatBytes(this.maxFileSize))}\n\t\t\t\t\t\t\t\t\t\t</gov-form-message>\n\t\t\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t\t\t\t<span slot=\"info\">({formatBytes(item.file.size)})</span>\n\t\t\t\t\t\t\t\t</gov-attachments-item>\n\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t</gov-attachments>\n\t\t\t\t\t</div>\n\t\t\t\t) : null}\n\t\t\t</Host>\n\t\t)\n\t}\n\n\tprivate onRemoveFileHandler(file: GovFormFileItem) {\n\t\tconst index = this.files.findIndex(item => item.id === file.id)\n\t\tif (index !== -1) {\n\t\t\tconst files = this.files\n\t\t\tconst removeFile = this.files[index]\n\t\t\tfiles.splice(index, 1)\n\t\t\tthis.files = [...files]\n\t\t\tthis.govRemoveFile.emit({\n\t\t\t\tcomponent: FormFileClass.root,\n\t\t\t\tfile: removeFile,\n\t\t\t})\n\t\t\tthis.govFiles.emit({\n\t\t\t\tcomponent: FormFileClass.root,\n\t\t\t\tfiles,\n\t\t\t})\n\t\t}\n\t}\n\n\tprivate onFocusHandler(e: FocusEvent) {\n\t\te.stopPropagation()\n\t\tthis.govFocus.emit({\n\t\t\tcomponent: FormFileClass.root,\n\t\t\toriginalEvent: e,\n\t\t})\n\t}\n\n\tprivate onBlurHandler(e: FocusEvent) {\n\t\te.stopPropagation()\n\t\tthis.govBlur.emit({\n\t\t\tcomponent: FormFileClass.root,\n\t\t\toriginalEvent: e,\n\t\t})\n\t}\n\n\tprivate onChangeHandler(e: Event) {\n\t\te.stopPropagation()\n\t}\n\n\t/**\n\t * Returns the reference of the native element\n\t */\n\t@Method()\n\tasync getRef(): Promise<HTMLInputElement> {\n\t\treturn this.inputRef\n\t}\n\n\t/**\n\t * Returns the reference of the native area element\n\t */\n\t@Method()\n\tasync getAreaRef(): Promise<HTMLDivElement> {\n\t\treturn this.areaRef\n\t}\n\n\t/**\n\t * Remove all files from component state\n\t */\n\t@Method()\n\tasync reset(): Promise<void> {\n\t\tthis.files = []\n\t\tthis.inputRef.value = '';\n\t}\n}\n"]}
1
+ {"version":3,"file":"gov-form-file.js","sourceRoot":"","sources":["../../../../../../../src/components/gov-form/file/gov-form-file.tsx"],"names":[],"mappings":"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","sourcesContent":["import {Component, Element, Event, EventEmitter, h, Host, Method, Prop, State, Watch} from \"@stencil/core\"\nimport {createID} from \"../../../utils/string.utils\"\nimport {FormFileClass} from \"./constants\"\nimport {govHost, toBoolAttr, toBoolAttrIfDefined} from \"../../../helpers/Dom/template\"\nimport {fileAcceptValidation, fileSizeValidation, formatBytes} from \"../../../utils/file.utils\"\nimport {GovForm} from \"../../../helpers/Dom/form.types\"\nimport {GovHost} from \"../../../helpers/Dom/template.types\"\nimport {govForm} from \"../../../helpers/Dom/form\"\nimport {GovFormFileEvent, GovFormFileItem} from \"./gov-form-file.types\"\nimport {inheritAriaAttributes} from \"../../../helpers/Accessibility/accessibility\";\nimport {AttributeObserver, Attributes} from \"../../../helpers/Dom/attribute\";\nimport {ariaAttributes} from \"../../../helpers/Accessibility/attributes\";\n\n@Component({\n\ttag: \"gov-form-file\",\n})\nexport class GovFormFile {\n\tprivate f: GovForm\n\tprivate readonly h: GovHost\n\n\tprivate areaRef?: HTMLDivElement\n\tprivate inputRef?: HTMLInputElement\n\tprivate readonly fileId: string\n\tprivate attributeObserver: AttributeObserver\n\tprivate eventsRegistered = false\n\n\tconstructor() {\n\t\tthis.fileId = createID(\"GovInputFile\")\n\n\t\tthis.h = govHost(this.host)\n\t\tthis.f = govForm(this.h)\n\t}\n\n\t@Element() host: HTMLGovFormFileElement\n\t/**\n\t * Expands the file input to fill 100% of the container width.\n\t */\n\t@Prop() readonly expanded: boolean = false\n\t/**\n\t * Set whether the input is required or not. Please note that this is necessary for accessible inputs when the user is required to fill them.\n\t * When using this property you need to also set “novalidate” attribute to your form element to prevent browser from displaying its own validation errors.\n\t */\n\t@Prop() readonly required: boolean = false\n\t/**\n\t * Makes the File component disabled.\n\t * This prevents users from being able to interact with the File, and conveys its inactive state to assistive technologies.\n\t */\n\t@Prop({reflect: true}) readonly disabled: boolean = false\n\t/**\n\t * After selecting the files, the main input element will be reset.\n\t * The propagation of the event with the selected files will not be affected.\n\t */\n\t@Prop({attribute: \"reset-after-pick\"}) readonly resetAfterPick: boolean = false\n\t/**\n\t * Selected files will not be checked for duplicates based on name and size.\n\t */\n\t@Prop({attribute: \"ignore-file-duplication-check\"}) readonly ignoreFileDuplicationCheck: boolean = false\n\t/**\n\t * Show list of attachments\n\t */\n\t@Prop({attribute: \"display-attachments\"}) readonly displayAttachments: boolean = true\n\t/**\n\t * Name of the input.\n\t */\n\t@Prop() readonly name: string\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/accept\n\t */\n\t@Prop() readonly accept: string\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/multiple\n\t */\n\t@Prop() readonly multiple: boolean = false\n\t/**\n\t * Maximum embedded file size\n\t */\n\t@Prop({attribute: \"max-file-size\"}) readonly maxFileSize: number = -1\n\t/**\n\t * Custom File identifier.\n\t */\n\t@Prop({attribute: \"identifier\"}) readonly identifier: string\n\t/**\n\t * Indicates the entered value does not conform to the format expected by the application.\n\t */\n\t@Prop() readonly invalid: boolean\n\t/**\n\t * Error message when the maximum file size is exceeded\n\t */\n\t@Prop({attribute: \"error-size\"}) readonly errorSize: string = \"Soubor je větší než povolená velikost {FILE_SIZE}\"\n\t/**\n\t * Insert unsupported file error message\n\t */\n\t@Prop({attribute: \"error-accept\"}) readonly errorAccept: string = \"Soubor tohoto typu není povolen\"\n\t/**\n\t * Adds accessible label for the remove button that is only shown for screen readers.\n\t */\n\t@Prop({attribute: \"accessible-remove-label\"}) readonly accessibleRemoveLabel: string = \"Odebrat soubor {FILE_NAME}\"\n\t/**\n\t * Adds accessible label for the list of attachments.\n\t */\n\t@Prop({attribute: \"accessible-attachments-label\"}) readonly accessibleAttachmentsLabel: string = \"Přílohy\"\n\t/**\n\t * Emitted when the File has focus.\n\t */\n\t@Event({eventName: \"gov-focus\"}) govFocus: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Emitted when the File loses focus.\n\t */\n\t@Event({eventName: \"gov-blur\"}) govBlur: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Called when the list of inserted files is changed\n\t */\n\t@Event({eventName: \"gov-files\"}) govFiles: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Called when a new file is added\n\t */\n\t@Event({eventName: \"gov-add-file\"}) govAddFile: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Called when a file is removed from the list\n\t */\n\t@Event({eventName: \"gov-remove-file\"}) govRemoveFile: EventEmitter<GovFormFileEvent>\n\n\n\t@Watch(\"disabled\")\n\t@Watch(\"invalid\")\n\twatchControlAttrs(): void {\n\t\tthis.passControlAttrs()\n\t}\n\n\t@State() files: GovFormFileItem[] = []\n\t@State() inheritedAttributes: Attributes = {}\n\n\n\n\tprivate passControlAttrs() {\n\t\tthis.f.passAttrToControl(\"invalid\", toBoolAttr(this.invalid))\n\t\tthis.f.passAttrToControl(\"disabled\", toBoolAttr(this.disabled))\n\t\tthis.f.passAttrToControl(\"type\", \"File\")\n\t}\n\n\n\tprivate registerListeners() {\n\t\tif (this.eventsRegistered) {\n\t\t\treturn\n\t\t}\n\t\tthis.eventsRegistered = true\n\n\t\tfunction highlight() {\n\t\t\tthis.areaRef.classList.add(\"highlight\")\n\t\t}\n\n\t\tfunction unhighlight() {\n\t\t\tthis.areaRef.classList.remove(\"highlight\")\n\t\t}\n\n\t\tthis.inputRef.addEventListener(\n\t\t\t\"change\",\n\t\t\te => {\n\t\t\t\te.preventDefault()\n\t\t\t\te.stopPropagation()\n\t\t\t\tconst files = (e.target as HTMLInputElement).files\n\t\t\t\tif (this.resetAfterPick) {\n\t\t\t\t\tif (files.length) {\n\t\t\t\t\t\tthis.validateFiles(files)\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tthis.validateFiles(files)\n\t\t\t\t}\n\t\t\t},\n\t\t\tfalse,\n\t\t)\n\n\t\tif (this.expanded) {\n\t\t\tconst events = [\"dragover\", \"dragleave\"]\n\t\t\tconst inEvents = [\"dragenter\", \"dragover\", \"mouseenter\"]\n\t\t\tconst outEvents = [\"dragleave\", \"mouseleave\"]\n\n\t\t\tevents.map(eventName => this.inputRef.addEventListener(eventName, this.preventDefaults.bind(this), false))\n\t\t\tinEvents.map(eventName => this.inputRef.addEventListener(eventName, highlight.bind(this), false))\n\t\t\toutEvents.forEach(eventName => this.inputRef.addEventListener(eventName, unhighlight.bind(this), false))\n\t\t}\n\t}\n\n\tpreventDefaults(e) {\n\t\te.preventDefault()\n\t\te.stopPropagation()\n\t}\n\n\thandleDrop(e: DragEvent) {\n\t\tconst dataTransfer = e.dataTransfer\n\t\tthis.validateFiles(dataTransfer.files)\n\t}\n\n\tprivate validateFiles(files: FileList) {\n\t\tlet filesBuffer: GovFormFileItem[] = []\n\t\tArray.from(files).map(file => {\n\t\t\tconst isFile = this.files.find(item => item.file.name === file.name && item.file.size === file.size) || null\n\t\t\tif (isFile === null || this.ignoreFileDuplicationCheck) {\n\t\t\t\tconst isSizeValid = typeof this.maxFileSize === \"number\" && this.maxFileSize > 0 ? fileSizeValidation(file, this.maxFileSize) : true\n\t\t\t\tconst isAcceptValid = fileAcceptValidation(file, this.accept)\n\t\t\t\tconst newFile = {\n\t\t\t\t\tid: createID(\"GovFormFile\"),\n\t\t\t\t\tfile,\n\t\t\t\t\tacceptValid: isAcceptValid,\n\t\t\t\t\tsizeValid: isSizeValid,\n\t\t\t\t}\n\t\t\t\tif (this.displayAttachments) {\n\t\t\t\t\tthis.files = [...this.files, newFile]\n\t\t\t\t} else {\n\t\t\t\t\tfilesBuffer = [...filesBuffer, newFile]\n\t\t\t\t}\n\t\t\t\tthis.govAddFile.emit({\n\t\t\t\t\tcomponent: FormFileClass.root,\n\t\t\t\t\tfile: newFile,\n\t\t\t\t})\n\t\t\t}\n\t\t})\n\n\t\tthis.govFiles.emit({\n\t\t\tcomponent: FormFileClass.root,\n\t\t\tfiles: filesBuffer.length ? filesBuffer : this.files,\n\t\t})\n\n\t\tif (this.resetAfterPick) {\n\t\t\tthis.reset().finally()\n\t\t}\n\t}\n\n\tcomponentDidLoad() {\n\t\tthis.attributeObserver = new AttributeObserver(this.host, (attributeName, newValue) => {\n\t\t\tthis.onAriaAttributeChange(attributeName, newValue);\n\t\t});\n\n\t\tthis.attributeObserver.startObserving(ariaAttributes);\n\t}\n\n\tcomponentWillLoad() {\n\t\tthis.f.passAttrToLabel(\"required\", String(this.required))\n\t\tthis.passControlAttrs()\n\t\tthis.inheritedAttributes = inheritAriaAttributes(this.host);\n\t}\n\n\tasync componentDidRender() {\n\t\tthis.registerListeners()\n\t}\n\n\tdisconnectedCallback() {\n\t\tthis.attributeObserver?.stopObserving();\n\t}\n\n\tonAriaAttributeChange(attributeName: string, newValue: string) {\n\t\tthis.host.removeAttribute(attributeName)\n\t\tthis.inheritedAttributes = {...this.inheritedAttributes, [attributeName]: newValue};\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class={this.h.classes([FormFileClass.root])}\n\t\t\t\t invalid={toBoolAttrIfDefined(this.invalid)}\n\t\t\t\t expanded={toBoolAttrIfDefined(this.expanded)}>\n\t\t\t\t<div class={FormFileClass.area} ref={el => (this.areaRef = el as HTMLDivElement)}>\n\t\t\t\t\t<slot/>\n\t\t\t\t\t<input\n\t\t\t\t\t\tclass={FormFileClass.input}\n\t\t\t\t\t\tref={el => (this.inputRef = el as HTMLInputElement)}\n\t\t\t\t\t\tid={this.identifier || this.fileId}\n\t\t\t\t\t\ttype=\"file\"\n\t\t\t\t\t\tname={this.name}\n\t\t\t\t\t\taccept={this.accept}\n\t\t\t\t\t\tmultiple={this.multiple}\n\t\t\t\t\t\tonChange={this.onChangeHandler.bind(this)}\n\t\t\t\t\t\tonFocus={this.onFocusHandler.bind(this)}\n\t\t\t\t\t\tonBlur={this.onBlurHandler.bind(this)}\n\t\t\t\t\t\trequired={this.required}\n\t\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\t\t{...this.inheritedAttributes}\n\t\t\t\t\t\taria-required={toBoolAttrIfDefined(this.required)}\n\t\t\t\t\t\taria-invalid={toBoolAttrIfDefined(this.invalid)}\n\t\t\t\t\t\taria-disabled={toBoolAttrIfDefined(this.disabled)}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\n\t\t\t\t{this.h.hasSlot(\"attachments\") ? (\n\t\t\t\t\t<div class={FormFileClass.attachments}>\n\t\t\t\t\t\t<slot name={\"attachments\"}/>\n\t\t\t\t\t</div>\n\t\t\t\t) : null}\n\n\t\t\t\t{this.files.length && this.displayAttachments ? (\n\t\t\t\t\t<div class={FormFileClass.attachments}>\n\t\t\t\t\t\t<gov-attachments label={this.accessibleAttachmentsLabel}\n\t\t\t\t\t\t\t\t\t\t accessible-label={this.accessibleAttachmentsLabel}>\n\t\t\t\t\t\t\t{this.files.map(item => (\n\t\t\t\t\t\t\t\t<gov-attachments-item accessible-remove-labelledby={item.id}\n\t\t\t\t\t\t\t\t\t\t\t\t\t on-gov-remove={() => this.onRemoveFileHandler(item)}>\n\t\t\t\t\t\t\t\t\t<span class={\"sr-only\"} id={item.id}>\n\t\t\t\t\t\t\t\t\t\t{this.accessibleRemoveLabel.replace(\"{FILE_NAME}\", item.file.name)}\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t{item.file.name}\n\t\t\t\t\t\t\t\t\t{item.acceptValid === false ? (\n\t\t\t\t\t\t\t\t\t\t<gov-form-message slot=\"message\" color=\"error\">\n\t\t\t\t\t\t\t\t\t\t\t<gov-icon slot=\"icon\" name=\"exclamation-triangle-fill\" type=\"components\"></gov-icon>\n\t\t\t\t\t\t\t\t\t\t\t{item.acceptValid === false ? this.errorAccept : null}\n\t\t\t\t\t\t\t\t\t\t</gov-form-message>\n\t\t\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t\t\t\t{item.sizeValid === false ? (\n\t\t\t\t\t\t\t\t\t\t<gov-form-message slot=\"message\" color=\"error\">\n\t\t\t\t\t\t\t\t\t\t\t<gov-icon slot=\"icon\" name=\"exclamation-triangle-fill\" type=\"components\"></gov-icon>\n\t\t\t\t\t\t\t\t\t\t\t{this.errorSize.replace(\"{FILE_SIZE}\", formatBytes(this.maxFileSize))}\n\t\t\t\t\t\t\t\t\t\t</gov-form-message>\n\t\t\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t\t\t\t<span slot=\"info\">({formatBytes(item.file.size)})</span>\n\t\t\t\t\t\t\t\t</gov-attachments-item>\n\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t</gov-attachments>\n\t\t\t\t\t</div>\n\t\t\t\t) : null}\n\t\t\t</Host>\n\t\t)\n\t}\n\n\tprivate onRemoveFileHandler(file: GovFormFileItem) {\n\t\tconst index = this.files.findIndex(item => item.id === file.id)\n\t\tif (index !== -1) {\n\t\t\tconst files = this.files\n\t\t\tconst removeFile = this.files[index]\n\t\t\tfiles.splice(index, 1)\n\t\t\tthis.files = [...files]\n\t\t\tthis.govRemoveFile.emit({\n\t\t\t\tcomponent: FormFileClass.root,\n\t\t\t\tfile: removeFile,\n\t\t\t})\n\t\t\tthis.govFiles.emit({\n\t\t\t\tcomponent: FormFileClass.root,\n\t\t\t\tfiles,\n\t\t\t})\n\t\t}\n\t}\n\n\tprivate onFocusHandler(e: FocusEvent) {\n\t\te.stopPropagation()\n\t\tthis.govFocus.emit({\n\t\t\tcomponent: FormFileClass.root,\n\t\t\toriginalEvent: e,\n\t\t})\n\t}\n\n\tprivate onBlurHandler(e: FocusEvent) {\n\t\te.stopPropagation()\n\t\tthis.govBlur.emit({\n\t\t\tcomponent: FormFileClass.root,\n\t\t\toriginalEvent: e,\n\t\t})\n\t}\n\n\tprivate onChangeHandler(e: Event) {\n\t\te.stopPropagation()\n\t}\n\n\t/**\n\t * Returns the reference of the native element\n\t */\n\t@Method()\n\tasync getRef(): Promise<HTMLInputElement> {\n\t\treturn this.inputRef\n\t}\n\n\t/**\n\t * Returns the reference of the native area element\n\t */\n\t@Method()\n\tasync getAreaRef(): Promise<HTMLDivElement> {\n\t\treturn this.areaRef\n\t}\n\n\t/**\n\t * Remove all files from component state\n\t */\n\t@Method()\n\tasync reset(): Promise<void> {\n\t\tthis.files = []\n\t\tthis.inputRef.value = '';\n\t}\n}\n"]}
@@ -1,6 +1,6 @@
1
1
  import { pick } from "../../../utils/utils";
2
2
  import { Sizes } from "../../../core/constants/sizes";
3
- export const FormGroupSizes = pick(Sizes, ['_2XS', '_XS', '_S', '_M', '_L']);
3
+ export const FormGroupSizes = pick(Sizes, ['_XS', '_S', '_M', '_L', '_2XL']);
4
4
  export var FormGroupOrientation;
5
5
  (function (FormGroupOrientation) {
6
6
  FormGroupOrientation["HORIZONTAL"] = "horizontal";