@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
@@ -1 +1 @@
1
- {"file":"gov-flex.gov-icon.gov-theme-switch.entry.cjs.js","mappings":";;;;;;;;;;;;AAMO,MAAM,SAAS,GAAG;IACxB,IAAI,EAAE,UAAU;CAChB;;MCAY,OAAO;IAGnB;;yBASyE,KAAK;;;;;;;QAR7E,IAAI,CAAC,CAAC,GAAGA,gBAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;KAC3B;IAsDD,MAAM;QACL,QACCC,QAACC,UAAI,qDAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAC1CD,oEAAa,CACP,EACP;KACD;;;;ACpEuBE,UAAI,CAACC,WAAK,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAC;AAG/F,MAAM,UAAU,GAAGD,UAAI,CAACE,aAAM,EAAE;IACtC,SAAS;IACT,SAAS;IACT,WAAW;IACX,SAAS;IACT,OAAO;IACP,SAAS;IACT,SAAS;IACT,UAAU;IACV,OAAO;IACP,OAAO;CACP,CAAC,CAAA;AAGF,IAAK,KAIJ;AAJD,WAAK,KAAK;IACT,wBAAe,CAAA;IACf,4BAAmB,CAAA;IACnB,4BAAmB,CAAA;AACpB,CAAC,EAJI,KAAK,KAAL,KAAK,QAIT;AAGM,MAAM,SAAS,GAAG;IACxB,IAAI,EAAE,UAAU;IAChB,MAAM,EAAE,kBAAkB;CAC1B;;;;AC9BM,MAAM,SAAS,GAAG;IACxB,OAAO,OAAO,CAAA;AACf,CAAC;;ACDD,MAAM,SAAS,GAA8B,EAAE,CAAA;AAC/C,MAAM,YAAY,GAAuC,EAAE,CAAA;AAE3D,MAAM,aAAa,GAAG,CAAC,IAAY,KAAK,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAA;AACjG,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,IAAY,EAAE,IAAY;IACrD,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE;QACrB,OAAO,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,UAAU,SAAS,EAAE,EAAE,CAAA;KACxD;IACD,OAAO,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,MAAM,GAAG,MAAM,SAAS,EAAE,EAAE,CAAA;AAC9D,CAAC,CAAA;AAEM,eAAe,SAAS,CAAC,EAAC,IAAI,EAAE,IAAI,EAAiC;IACxE,MAAM,QAAQ,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,CAAA;IAClC,IAAI,SAAS,CAAC,QAAQ,CAAC,EAAE;QACrB,OAAO,SAAS,CAAC,QAAQ,CAAC,CAAA;KAC7B;IAED,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE;QACzB,YAAY,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,OAAO,CAACC,iBAAS,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI;YACtE,IAAI,IAAI,CAAC,MAAM,KAAK,GAAG,EAAE;gBACrB,OAAO,IAAI,CAAC,IAAI,EAAE,CAAA;aACrB;iBAAM;gBACH,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;aAC7C;SACJ,CAAC,CAAA;KACL;IACD,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC,CAAA;IACzC,SAAS,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAA;IAC1B,OAAO,IAAI,CAAA;AACf;;AC7BO,MAAM,SAAS,GAAG,CAAC,IAAY,EAAE,KAAa,EAAE,IAAa;IACnE,IAAI,CAACC,gBAAQ,EAAE;QACd,OAAM;KACN;IACD,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,IAAI,IAAI,EAAE;QACT,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QACxB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;QAC5D,OAAO,GAAG,YAAY,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;KAC5C;IACD,QAAQ,CAAC,MAAM,GAAG,GAAG,IAAI,IAAI,kBAAkB,CAAC,KAAK,CAAC,GAAG,OAAO,UAAU,CAAC;AAC5E,CAAC,CAAA;AAEM,MAAM,SAAS,GAAG,CAAC,IAAY;IACrC,IAAI,CAACA,gBAAQ,EAAE;QACd,OAAO,IAAI,CAAA;KACX;IACD,MAAM,MAAM,GAAG,IAAI,GAAG,GAAG,CAAC;IAC1B,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACxC,IAAI,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC/B,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;YAC9B,OAAO,kBAAkB,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;SAC3D;KACD;IACD,OAAO,IAAI,CAAC;AACb,CAAC,CAAA;AAEM,MAAM,UAAU,GAAG,CAAC,UAAkB;IAC5C,IAAI;QACH,MAAM,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;QAC/B,MAAM,GAAG,GAAG,MAAM,CAAC,eAAe,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;QAChE,MAAM,UAAU,GAAG,GAAG,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;QACpD,IAAI,UAAU,EAAE;YACf,OAAO,KAAK,CAAC;SACb;QACD,MAAM,UAAU,GAAG,GAAG,CAAC,eAAe,CAAC;QACvC,IAAI,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,KAAK,EAAE;YAC/C,OAAO,KAAK,CAAC;SACb;QACD,OAAO,IAAI,CAAC;KACZ;IAAC,OAAO,KAAK,EAAE;QACf,OAAO,KAAK,CAAC;KACb;AACF,CAAC;;MCjCY,OAAO;IAInB;;;;oBAgBsC,IAAI;oBAIZ,YAAY;uBAEf,KAAK;qBACP,KAAK;QAtB7B,IAAI,CAAC,CAAC,GAAGP,gBAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;KAC3B;IAwBD,YAAY,CAAC,QAAgB;QAC5BQ,kBAAY,CAACJ,WAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,IAAI,CAAC,CAAA;KAC7C;IAGD,aAAa,CAAC,QAAgB;QAC7BI,kBAAY,CAAC,UAAU,EAAE,QAAQ,EAAE,SAAS,CAAC,IAAI,CAAC,CAAA;KAClD;IAGO,MAAM,gBAAgB;QAC7B,MAAM,EAAC,IAAI,EAAE,OAAO,EAAC,GAAG,IAAI,CAAA;QAC5B,IAAwB,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE;YAC1C,OAAM;SACN;QACD,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAA;KACrB;IAED,iBAAiB;QAChB,IAAIC,qBAAa,EAAE,EAAE;YACpB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;YACnB,IAAI,CAAC,gBAAgB,EAAE,CAAC,OAAO,EAAE,CAAA;SACjC;aAAM;YACN,IAAI,CAAC,gBAAgB,CAAC;gBACrB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;gBACnB,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAA;aAC7B,CAAC,CAAA;SACF;KACD;IAED,oBAAoB;QACnB,IAAI,IAAI,CAAC,oBAAoB,EAAE;YAC9B,IAAI,CAAC,oBAAoB,CAAC,UAAU,EAAE,CAAA;YACtC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAA;SAChC;KACD;IAED,MAAM,iBAAiB;QACtB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC5B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC9B,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAA;KAC7B;IAEO,gBAAgB,CAAC,QAAoB;QAC5C,IAAwB,OAAO,MAAM,KAAK,WAAW,IAAI,CAAE,MAAc,CAAC,oBAAoB,EAAE;YAC/F,QAAQ,EAAE,CAAA;YACV,OAAM;SACN;QACD,IAAI,CAAC,oBAAoB,GAAG,IAAI,oBAAoB,CACnD,OAAO;YACN,OAAO,CAAC,OAAO,CAAC,KAAK;gBACpB,IAAI,KAAK,CAAC,cAAc,EAAE;oBACzB,IAAI,IAAI,CAAC,oBAAoB,EAAE;wBAC9B,IAAI,CAAC,oBAAoB,CAAC,UAAU,EAAE,CAAA;wBACtC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAA;qBAChC;oBACD,QAAQ,EAAE,CAAA;iBACV;aACD,CAAC,CAAA;SACF,EACD,EAAC,UAAU,EAAE,MAAM,EAAC,CACpB,CAAA;QACD,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;KAC5C;IAEO,MAAM,QAAQ;QACrB,IAAI;YACH,MAAM,EAAC,IAAI,EAAE,IAAI,EAAC,GAAG,IAAI,CAAA;YACzB,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,EAAC,IAAI,EAAE,IAAI,EAAC,CAAC,CAAA;YAC1C,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;YAChC,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC;SAC5C;QAAC,OAAO,CAAC,EAAE;YACX,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;YAC/B,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,EAAE,CAAA;YACxB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAA;SACjB;KACD;IAED,MAAM;QACL,IAAI,IAAI,CAAC,KAAK,EAAE;YACf,OAAO,IAAI,CAAA;SACX;QACD,QACCR,QAACC,UAAI,IAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,GAAG,EAClF;KACD;;;;;;;;;;AC9HK,MAAM,gBAAgB,GAAGC,UAAI,CAACC,WAAK,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAA;AAGtE,MAAM,gBAAgB,GAAG;IAC/B,IAAI,EAAE,kBAAkB;IACxB,SAAS,EAAE,6BAA6B;IACxC,SAAS,EAAE,8BAA8B;IACzC,QAAQ,EAAE,6BAA6B;CACvC,CAAA;AAEM,MAAM,oBAAoB,GAAG,YAAY;;ACZhD,IAAY,SAIX;AAJD,WAAY,SAAS;IACpB,0BAAa,CAAA;IACb,4BAAe,CAAA;IACf,0BAAa,CAAA;AACd,CAAC,EAJW,SAAS,KAAT,SAAS;;MCUR,cAAc;IAG1B;;;QAiFQ,kBAAa,GAAG,CAAC,KAAgB;YACxC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YAEnB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;gBACnB,SAAS,EAAE,gBAAgB,CAAC,IAAI;gBAChC,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,GAAG,EAAE,IAAI,CAAC,IAAI;aACd,CAAC,CAAA;SACF,CAAA;oBAhF8C,GAAG;4BAIW,KAAK;8BAIA,sBAAsB;6BAIxB,wBAAwB;0BAI9B,YAAY;yBAIf,WAAW;qBAmBtC,SAAS,CAAC,IAAI;QA/CzC,IAAI,CAAC,CAAC,GAAGJ,gBAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;KAC3B;IAkCD,YAAY,CAAC,QAAgB;QAC5BQ,kBAAY,CAAC,gBAAgB,EAAE,QAAQ,EAAE,gBAAgB,CAAC,IAAI,CAAC,CAAA;KAC/D;IAGD,UAAU,CAAC,QAAmB;QAC7B,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,oBAAoB,EAAE,QAAQ,CAAC,CAAC;QAC9D,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;QAC7D,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACzC,SAAS,CAAC,oBAAoB,EAAE,QAAQ,CAAC,CAAC;KAC1C;IAID,IAAY,YAAY;QACvB,OAAO,SAAS,CAAC,oBAAoB,CAAC,CAAA;KACtC;IAED,IAAY,WAAW;QACtB,OAAO,QAAQ,CAAC,eAAe,CAAA;KAC/B;IAED,IAAY,wBAAwB;QACnC,OAAOD,gBAAQ,IAAI,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU,CAAC,8BAA8B,CAAC,CAAC,OAAO,CAAC;KAClG;IAED,iBAAiB;QAChB,IAAI,CAAC,gBAAgB,EAAE,CAAA;QACvB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;KAC5B;IAEO,gBAAgB;QACvB,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACvC,IAAI,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QACrC,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,oBAAoB,CAAC,CAAA;QAErE,IAAI,YAAY,IAAI,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;YACnD,IAAI,CAAC,KAAK,GAAG,YAAyB,CAAC;SACvC;aAAM,IAAI,SAAS,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;YACpD,IAAI,CAAC,KAAK,GAAG,SAAsB,CAAC;SACpC;aAAM;YACN,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC;SAC5B;KACD;IAYD,MAAM;QACL,IAAI,MAAM,GAAG,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,IAAI,CAAC;QAC3C,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,IAAI,EAAE;YAClC,MAAM,GAAG,IAAI,CAAC,wBAAwB,CAAC;SACvC;QACD,QACCN,QAACC,UAAI,qDAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAC/C,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC,IAAI,GAAG,SAAS,CAAC,KAAK,EAChD,IAAI,EAAE,IAAI,CAAC,IAAI,IACjBD,qEAAQ,OAAO,EAAE,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,kBACpE,IAAI,CAAC,KAAK,gBACZ,MAAM,GAAG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,cAAc,IAC9DA,qEACCA,mEAAM,KAAK,EAAE,gBAAgB,CAAC,SAAS,IACrC,SAAS,CAAC,KAAK,IAAIA,uEAAU,IAAI,EAAC,KAAK,EAAC,KAAK,EAAE,gBAAgB,CAAC,SAAS,EAAE,IAAI,EAAC,YAAY,GAAY,EACxG,SAAS,CAAC,IAAI,IAAIA,uEAAU,IAAI,EAAC,MAAM,EAAC,KAAK,EAAE,gBAAgB,CAAC,QAAQ,EAAE,IAAI,EAAC,YAAY,GAAY,CAClG,EACN,IAAI,CAAC,YAAY,KAAK,MAAM,GAAG,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,CAC3D,CACC,CACH,EACP;KACD;;;;;;;;;;;;","names":["govHost","h","Host","pick","Sizes","Colors","iconsPath","isWindow","validateProp","iconsLazyLoad"],"sources":["../../../packages/core/src/components/gov-flex/constants.ts","../../../packages/core/src/components/gov-flex/gov-flex.tsx","../../../packages/core/src/components/gov-icon/constants.ts","../../../packages/core/src/utils/ds.utils.ts","../../../packages/core/src/utils/icon.utils.ts","../../../packages/core/src/helpers/Dom/document.ts","../../../packages/core/src/components/gov-icon/gov-icon.tsx","../../../packages/core/src/components/gov-theme-switch/constants.ts","../../../packages/core/src/components/gov-theme-switch/gov-theme-switch.types.ts","../../../packages/core/src/components/gov-theme-switch/gov-theme-switch.tsx"],"sourcesContent":["import {Sizes} from \"../../core/constants/sizes\";\nimport {ValueOf} from \"../../types/interfaces\";\n\nexport const FlexSizes = Sizes\nexport type FlexSizesType = `${ValueOf<typeof FlexSizes>}`\n\nexport const FlexClass = {\n\troot: 'gov-flex',\n}\n\n","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","import { ValueOf } from '../../types/interfaces'\nimport { pick } from '../../utils/utils';\nimport { Colors } from '../../core/constants/colors';\nimport {Sizes} from \"../../core/constants/sizes\";\n\nexport const IconSizes = pick(Sizes, ['_XS', '_S', '_M', '_L', '_XL', '_2XL', '_3XL', '_4XL', '_5XL'])\nexport type IconSizesType = `${ValueOf<typeof IconSizes>}`\n\nexport const IconColors = pick(Colors, [\n\t'DEFAULT',\n\t'PRIMARY',\n\t'SECONDARY',\n\t'NEUTRAL',\n\t'ERROR',\n\t'SUCCESS',\n\t'WARNING',\n\t'DISABLED',\n\t'WHITE',\n\t'BLACK',\n])\nexport type IconColorType = `${ValueOf<typeof IconColors>}`\n\nenum Types {\n\tBASIC = 'basic',\n\tCOMPLEX = 'complex',\n\tCOLORED = 'colored',\n}\nexport type Type = `${ValueOf<typeof Types>}`\n\nexport const IconClass = {\n\troot: 'gov-icon',\n\tholder: 'gov-icon__holder',\n}\n","import { version } from '../../package.json'\n\nexport const dsVersion = (): string => {\n\treturn version\n}\n","import {dsVersion} from \"./ds.utils\"\nimport {iconsPath} from \"../helpers/Dom/win\"\n\nconst iconCache: { [key: string]: string } = {}\nconst requestCache: { [key: string]: Promise<string> } = {}\n\nconst isExternalUrl = (path: string) => path.startsWith(\"http://\") || path.startsWith(\"https://\")\nconst iconUrl = (path: string, name: string, type: string) => {\n if (isExternalUrl(path)) {\n return `${path}/${type}/${name}.svg?v=${dsVersion()}`\n }\n return `${path}/${type}/${name}.svg` + `?v=${dsVersion()}`\n}\n\nexport async function fetchIcon({name, type}: { name: string; type: string }): Promise<string> {\n const cacheKey = type + \"-\" + name\n if (iconCache[cacheKey]) {\n return iconCache[cacheKey]\n }\n\n if (!requestCache[cacheKey]) {\n requestCache[cacheKey] = fetch(iconUrl(iconsPath(), name, type)).then(resp => {\n if (resp.status === 200) {\n return resp.text()\n } else {\n throw new Error(\"Gov Icon doesn't exists\")\n }\n })\n }\n const path = await requestCache[cacheKey]\n iconCache[cacheKey] = path\n return path\n}\n","import {Nullable} from \"../../utils/helpers.types\";\nimport {isWindow} from \"./win\";\n\nexport const setCookie = (name: string, value: string, days?: number) => {\n\tif (!isWindow) {\n\t\treturn\n\t}\n\tlet expires = \"\";\n\tif (days) {\n\t\tconst date = new Date();\n\t\tdate.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));\n\t\texpires = \"; expires=\" + date.toUTCString();\n\t}\n\tdocument.cookie = `${name}=${encodeURIComponent(value)}${expires}; path=/`;\n}\n\nexport const getCookie = (name: string): Nullable<string> => {\n\tif (!isWindow) {\n\t\treturn null\n\t}\n\tconst nameEQ = name + \"=\";\n\tconst cookies = document.cookie.split(';');\n\tfor (let i = 0; i < cookies.length; i++) {\n\t\tlet cookie = cookies[i].trim();\n\t\tif (cookie.startsWith(nameEQ)) {\n\t\t\treturn decodeURIComponent(cookie.substring(nameEQ.length));\n\t\t}\n\t}\n\treturn null;\n}\n\nexport const isValidSVG = (svgContent: string): boolean => {\n\ttry {\n\t\tconst parser = new DOMParser();\n\t\tconst doc = parser.parseFromString(svgContent, \"image/svg+xml\");\n\t\tconst parseError = doc.querySelector(\"parsererror\");\n\t\tif (parseError) {\n\t\t\treturn false;\n\t\t}\n\t\tconst svgElement = doc.documentElement;\n\t\tif (svgElement.tagName.toLowerCase() !== \"svg\") {\n\t\t\treturn false;\n\t\t}\n\t\treturn true;\n\t} catch (error) {\n\t\treturn false;\n\t}\n}\n","import {Build, Component, Element, h, Host, Prop, State, Watch} from \"@stencil/core\"\nimport {IconClass, IconColors, type IconColorType, IconSizesType} from \"./constants\"\nimport {fetchIcon} from \"../../utils/icon.utils\"\nimport {govHost} from \"../../helpers/Dom/template\"\nimport {GovHost} from \"../../helpers/Dom/template.types\"\nimport {iconsLazyLoad} from \"../../helpers/Dom/win\"\nimport {validateProp} from \"../../helpers/Validate/props\";\nimport {Sizes} from \"../../core/constants/sizes\";\nimport {isValidSVG} from \"../../helpers/Dom/document\";\n\n@Component({\n\tassetsDirs: [\"assets\"],\n\ttag: \"gov-icon\",\n})\nexport class GovIcon {\n\tprivate h: GovHost\n\tprivate intersectionObserver: IntersectionObserver\n\n\tconstructor() {\n\t\tthis.h = govHost(this.host)\n\t}\n\n\t@Element() host: HTMLGovIconElement\n\t/**\n\t * Icon size\n\t */\n\t@Prop({reflect: true}) readonly size?: IconSizesType\n\t/**\n\t * Icon color\n\t */\n\t@Prop({reflect: true}) readonly color?: IconColorType\n\t/**\n\t * Name of icon in folder\n\t */\n\t@Prop({reflect: true}) name: string = null\n\t/**\n\t * Type (folder) of icon\n\t */\n\t@Prop({reflect: true}) type = \"components\"\n\n\t@State() private visible = false\n\t@State() private error = false\n\n\t@Watch(\"size\")\n\tvalidateSize(newValue: string): void {\n\t\tvalidateProp(Sizes, newValue, IconClass.root)\n\t}\n\n\t@Watch(\"color\")\n\tvalidateColor(newValue: string): void {\n\t\tvalidateProp(IconColors, newValue, IconClass.root)\n\t}\n\n\t@Watch(\"name\")\n\tprivate async loadIconPathData(): Promise<void> {\n\t\tconst {name, visible} = this\n\t\tif (!Build.isBrowser || !name || !visible) {\n\t\t\treturn\n\t\t}\n\t\tawait this.loadIcon()\n\t}\n\n\tconnectedCallback(): void {\n\t\tif (iconsLazyLoad()) {\n\t\t\tthis.visible = true\n\t\t\tthis.loadIconPathData().finally()\n\t\t} else {\n\t\t\tthis.waitUntilVisible(async () => {\n\t\t\t\tthis.visible = true\n\t\t\t\tawait this.loadIconPathData()\n\t\t\t})\n\t\t}\n\t}\n\n\tdisconnectedCallback(): void {\n\t\tif (this.intersectionObserver) {\n\t\t\tthis.intersectionObserver.disconnect()\n\t\t\tthis.intersectionObserver = null\n\t\t}\n\t}\n\n\tasync componentWillLoad(): Promise<void> {\n\t\tthis.validateSize(this.size)\n\t\tthis.validateColor(this.color)\n\t\tawait this.loadIconPathData()\n\t}\n\n\tprivate waitUntilVisible(callback: () => void): void {\n\t\tif (!Build.isBrowser || typeof window === \"undefined\" || !(window as any).IntersectionObserver) {\n\t\t\tcallback()\n\t\t\treturn\n\t\t}\n\t\tthis.intersectionObserver = new IntersectionObserver(\n\t\t\tentries => {\n\t\t\t\tentries.forEach(entry => {\n\t\t\t\t\tif (entry.isIntersecting) {\n\t\t\t\t\t\tif (this.intersectionObserver) {\n\t\t\t\t\t\t\tthis.intersectionObserver.disconnect()\n\t\t\t\t\t\t\tthis.intersectionObserver = null\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcallback()\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t},\n\t\t\t{rootMargin: \"50px\"},\n\t\t)\n\t\tthis.intersectionObserver.observe(this.host)\n\t}\n\n\tprivate async loadIcon() {\n\t\ttry {\n\t\t\tconst {name, type} = this\n\t\t\tconst data = await fetchIcon({name, type})\n\t\t\tconst isValid = isValidSVG(data)\n\t\t\tthis.host.innerHTML = isValid ? data : null;\n\t\t} catch (e) {\n\t\t\tconsole.log(e);\n\t\t\tconsole.log(JSON.stringify(e));\n\t\t\tthis.host.innerHTML = ''\n\t\t\tthis.error = true\n\t\t}\n\t}\n\n\trender() {\n\t\tif (this.error) {\n\t\t\treturn null\n\t\t}\n\t\treturn (\n\t\t\t<Host class={this.h.classes(IconClass.root)} size={this.size} color={this.color}/>\n\t\t)\n\t}\n}\n","import {pick} from \"../../utils/utils\";\nimport {Sizes} from \"../../core/constants/sizes\";\nimport {ValueOf} from \"../../types/interfaces\";\n\nexport const ThemeSwitchSizes = pick(Sizes, ['_XS', '_S', '_M', '_L', '_XL'])\nexport type ThemeSwitchSizesType = `${ValueOf<typeof ThemeSwitchSizes>}`\n\nexport const ThemeSwitchClass = {\n\troot: 'gov-theme-switch',\n\tindicator: 'gov-theme-switch__indicator',\n\ticonLight: 'gov-theme-switch__icon-light',\n\ticonDark: 'gov-theme-switch__icon-dark',\n}\n\nexport const ATTRIBUTE_THEME_NAME = 'data-theme'\n","import {GovBaseEvent} from \"../../types/event.types\";\n\nexport enum ThemeList {\n\tauto = 'auto',\n\tlight = 'light',\n\tdark = 'dark'\n}\n\nexport interface ThemeSwitchEvent extends GovBaseEvent {\n\tref: HTMLGovThemeSwitchElement;\n\tstate: ThemeList\n}\n\n","import {Component, Element, Event, EventEmitter, h, Host, Prop, State, Watch} from \"@stencil/core\"\nimport {GovHost} from \"../../helpers/Dom/template.types\";\nimport {govHost} from \"../../helpers/Dom/template\";\nimport {ATTRIBUTE_THEME_NAME, ThemeSwitchClass, ThemeSwitchSizes, ThemeSwitchSizesType} from \"./constants\";\nimport {isWindow} from \"../../helpers/Dom/win\";\nimport {ThemeList, ThemeSwitchEvent} from \"./gov-theme-switch.types\";\nimport {validateProp} from \"../../helpers/Validate/props\";\nimport {getCookie, setCookie} from \"../../helpers/Dom/document\";\n\n@Component({\n\ttag: \"gov-theme-switch\",\n})\nexport class GovThemeSwitch {\n\tprivate h: GovHost\n\n\tconstructor() {\n\t\tthis.h = govHost(this.host)\n\t}\n\n\t@Element() host: HTMLGovThemeSwitchElement\n\n\t/**\n\t * Switch's size.\n\t */\n\t@Prop() readonly size?: ThemeSwitchSizesType = \"m\"\n\t/**\n\t * Display switch label\n\t */\n\t@Prop({attribute: \"display-label\"}) readonly displayLabel? = false\n\t/**\n\t * Label in light mode\n\t */\n\t@Prop({attribute: \"aria-label-light\"}) readonly ariaLabelLight? = \"Přenout na tmavý mód\"\n\t/**\n\t * Label in dark mode\n\t */\n\t@Prop({attribute: \"aria-label-dark\"}) readonly ariaLabelDark? = \"Přepnout na světlý mód\"\n\t/**\n\t * Label in light mode\n\t */\n\t@Prop({attribute: \"label-light\"}) readonly labelLight? = \"Světlý mód\"\n\t/**\n\t * Label in dark mode\n\t */\n\t@Prop({attribute: \"label-dark\"}) readonly labelDark? = \"Tmavý mód\"\n\t/**\n\t * Called when the theme is changed by the user\n\t */\n\t@Event({eventName: \"gov-change\"}) govChange: EventEmitter<ThemeSwitchEvent>\n\n\t@Watch(\"size\")\n\tvalidateSize(newValue: string): void {\n\t\tvalidateProp(ThemeSwitchSizes, newValue, ThemeSwitchClass.root)\n\t}\n\n\t@Watch(\"theme\")\n\twatchTheme(newValue: ThemeList): void {\n\t\tthis.htmlElement.setAttribute(ATTRIBUTE_THEME_NAME, newValue);\n\t\tthis.htmlElement.classList.remove(...Object.keys(ThemeList));\n\t\tthis.htmlElement.classList.add(newValue);\n\t\tsetCookie(ATTRIBUTE_THEME_NAME, newValue);\n\t}\n\n\t@State() theme: ThemeList = ThemeList.auto\n\n\tprivate get storageValue() {\n\t\treturn getCookie(ATTRIBUTE_THEME_NAME)\n\t}\n\n\tprivate get htmlElement(): HTMLElement {\n\t\treturn document.documentElement\n\t}\n\n\tprivate get isSystemPrefersColorDark(): boolean {\n\t\treturn isWindow && window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches;\n\t}\n\n\tcomponentWillLoad() {\n\t\tthis.initDefaultState()\n\t\tthis.validateSize(this.size)\n\t}\n\n\tprivate initDefaultState() {\n\t\tconst options = Object.keys(ThemeList);\n\t\tlet currentState = this.storageValue;\n\t\tconst htmlState = this.htmlElement.getAttribute(ATTRIBUTE_THEME_NAME)\n\n\t\tif (currentState && options.includes(currentState)) {\n\t\t\tthis.theme = currentState as ThemeList;\n\t\t} else if (htmlState && options.includes(htmlState)) {\n\t\t\tthis.theme = htmlState as ThemeList;\n\t\t} else {\n\t\t\tthis.theme = ThemeList.auto;\n\t\t}\n\t}\n\n\tprivate setThemeState = (state: ThemeList) => {\n\t\tthis.theme = state;\n\n\t\tthis.govChange.emit({\n\t\t\tcomponent: ThemeSwitchClass.root,\n\t\t\tstate: this.theme,\n\t\t\tref: this.host\n\t\t})\n\t}\n\n\trender() {\n\t\tlet isDark = this.theme === ThemeList.dark;\n\t\tif (this.theme === ThemeList.auto) {\n\t\t\tisDark = this.isSystemPrefersColorDark;\n\t\t}\n\t\treturn (\n\t\t\t<Host class={this.h.classes(ThemeSwitchClass.root)}\n\t\t\t\t theme={isDark ? ThemeList.dark : ThemeList.light}\n\t\t\t\t size={this.size}>\n\t\t\t\t<button onClick={() => this.setThemeState(isDark ? ThemeList.light : ThemeList.dark)}\n\t\t\t\t\t\taria-current={this.theme}\n\t\t\t\t\t\taria-label={isDark ? this.ariaLabelDark : this.ariaLabelLight}>\n\t\t\t\t\t<span>\n\t\t\t\t\t\t<span class={ThemeSwitchClass.indicator}>\n\t\t\t\t\t\t\t{ThemeList.light && <gov-icon name=\"sun\" class={ThemeSwitchClass.iconLight} type=\"components\"></gov-icon>}\n\t\t\t\t\t\t\t{ThemeList.dark && <gov-icon name=\"moon\" class={ThemeSwitchClass.iconDark} type=\"components\"></gov-icon>}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t{this.displayLabel && (isDark ? this.labelDark : this.labelLight)}\n\t\t\t\t\t</span>\n\t\t\t\t</button>\n\t\t\t</Host>\n\t\t)\n\t}\n}\n"],"version":3}
1
+ {"file":"gov-flex.gov-icon.gov-theme-switch.entry.cjs.js","mappings":"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","names":["govHost","h","Host","pick","Sizes","Colors","iconsPath","isWindow","validateProp","iconsLazyLoad"],"sources":["../../../packages/core/src/components/gov-flex/constants.ts","../../../packages/core/src/components/gov-flex/gov-flex.tsx","../../../packages/core/src/components/gov-icon/constants.ts","../../../packages/core/src/utils/ds.utils.ts","../../../packages/core/src/utils/icon.utils.ts","../../../packages/core/src/helpers/Dom/document.ts","../../../packages/core/src/components/gov-icon/gov-icon.tsx","../../../packages/core/src/components/gov-theme-switch/constants.ts","../../../packages/core/src/components/gov-theme-switch/gov-theme-switch.types.ts","../../../packages/core/src/components/gov-theme-switch/gov-theme-switch.tsx"],"sourcesContent":["import {Sizes} from \"../../core/constants/sizes\";\nimport {ValueOf} from \"../../types/interfaces\";\n\nexport const FlexSizes = Sizes\nexport type FlexSizesType = `${ValueOf<typeof FlexSizes>}`\n\nexport const FlexClass = {\n\troot: 'gov-flex',\n}\n\n","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","import { ValueOf } from '../../types/interfaces'\nimport { pick } from '../../utils/utils';\nimport { Colors } from '../../core/constants/colors';\nimport {Sizes} from \"../../core/constants/sizes\";\n\nexport const IconSizes = pick(Sizes, ['_XS', '_S', '_M', '_L', '_XL', '_2XL', '_3XL', '_4XL', '_5XL'])\nexport type IconSizesType = `${ValueOf<typeof IconSizes>}`\n\nexport const IconColors = pick(Colors, [\n\t'DEFAULT',\n\t'PRIMARY',\n\t'SECONDARY',\n\t'NEUTRAL',\n\t'ERROR',\n\t'SUCCESS',\n\t'WARNING',\n\t'DISABLED',\n\t'WHITE',\n\t'BLACK',\n])\nexport type IconColorType = `${ValueOf<typeof IconColors>}`\n\nenum Types {\n\tBASIC = 'basic',\n\tCOMPLEX = 'complex',\n\tCOLORED = 'colored',\n}\nexport type Type = `${ValueOf<typeof Types>}`\n\nexport const IconClass = {\n\troot: 'gov-icon',\n\tholder: 'gov-icon__holder',\n}\n","import { version } from '../../package.json'\n\nexport const dsVersion = (): string => {\n\treturn version\n}\n","import {dsVersion} from \"./ds.utils\"\nimport {iconsPath} from \"../helpers/Dom/win\"\n\nconst iconCache: { [key: string]: string } = {}\nconst requestCache: { [key: string]: Promise<string> } = {}\n\nconst isExternalUrl = (path: string) => path.startsWith(\"http://\") || path.startsWith(\"https://\")\nconst iconUrl = (path: string, name: string, type: string) => {\n if (isExternalUrl(path)) {\n return `${path}/${type}/${name}.svg?v=${dsVersion()}`\n }\n return `${path}/${type}/${name}.svg` + `?v=${dsVersion()}`\n}\n\nexport async function fetchIcon({name, type}: { name: string; type: string }): Promise<string> {\n const cacheKey = type + \"-\" + name\n if (iconCache[cacheKey]) {\n return iconCache[cacheKey]\n }\n\n if (!requestCache[cacheKey]) {\n requestCache[cacheKey] = fetch(iconUrl(iconsPath(), name, type)).then(resp => {\n if (resp.status === 200) {\n return resp.text()\n } else {\n throw new Error(\"Gov Icon doesn't exists\")\n }\n })\n }\n const path = await requestCache[cacheKey]\n iconCache[cacheKey] = path\n return path\n}\n","import {Nullable} from \"../../utils/helpers.types\";\nimport {isWindow} from \"./win\";\n\nexport const setCookie = (name: string, value: string, days?: number) => {\n\tif (!isWindow) {\n\t\treturn\n\t}\n\tlet expires = \"\";\n\tif (days) {\n\t\tconst date = new Date();\n\t\tdate.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));\n\t\texpires = \"; expires=\" + date.toUTCString();\n\t}\n\tdocument.cookie = `${name}=${encodeURIComponent(value)}${expires}; path=/`;\n}\n\nexport const getCookie = (name: string): Nullable<string> => {\n\tif (!isWindow) {\n\t\treturn null\n\t}\n\tconst nameEQ = name + \"=\";\n\tconst cookies = document.cookie.split(';');\n\tfor (let i = 0; i < cookies.length; i++) {\n\t\tlet cookie = cookies[i].trim();\n\t\tif (cookie.startsWith(nameEQ)) {\n\t\t\treturn decodeURIComponent(cookie.substring(nameEQ.length));\n\t\t}\n\t}\n\treturn null;\n}\n\nexport const isValidSVG = (svgContent: string): boolean => {\n\ttry {\n\t\tconst parser = new DOMParser();\n\t\tconst doc = parser.parseFromString(svgContent, \"image/svg+xml\");\n\t\tconst parseError = doc.querySelector(\"parsererror\");\n\t\tif (parseError) {\n\t\t\treturn false;\n\t\t}\n\t\tconst svgElement = doc.documentElement;\n\t\tif (svgElement.tagName.toLowerCase() !== \"svg\") {\n\t\t\treturn false;\n\t\t}\n\t\treturn true;\n\t} catch (error) {\n\t\treturn false;\n\t}\n}\n","import {Build, Component, Element, h, Host, Prop, State, Watch} from \"@stencil/core\"\nimport {IconClass, IconColors, type IconColorType, IconSizesType} from \"./constants\"\nimport {fetchIcon} from \"../../utils/icon.utils\"\nimport {govHost} from \"../../helpers/Dom/template\"\nimport {GovHost} from \"../../helpers/Dom/template.types\"\nimport {iconsLazyLoad} from \"../../helpers/Dom/win\"\nimport {validateProp} from \"../../helpers/Validate/props\";\nimport {Sizes} from \"../../core/constants/sizes\";\nimport {isValidSVG} from \"../../helpers/Dom/document\";\n\n@Component({\n\tassetsDirs: [\"assets\"],\n\ttag: \"gov-icon\",\n})\nexport class GovIcon {\n\tprivate h: GovHost\n\tprivate intersectionObserver: IntersectionObserver\n\n\tconstructor() {\n\t\tthis.h = govHost(this.host)\n\t}\n\n\t@Element() host: HTMLGovIconElement\n\t/**\n\t * Icon size\n\t */\n\t@Prop({reflect: true}) readonly size?: IconSizesType\n\t/**\n\t * Icon color\n\t */\n\t@Prop({reflect: true}) readonly color?: IconColorType\n\t/**\n\t * Name of icon in folder\n\t */\n\t@Prop({reflect: true}) name: string = null\n\t/**\n\t * Type (folder) of icon\n\t */\n\t@Prop({reflect: true}) type = \"components\"\n\n\t@State() private visible = false\n\t@State() private error = false\n\n\t@Watch(\"size\")\n\tvalidateSize(newValue: string): void {\n\t\tvalidateProp(Sizes, newValue, IconClass.root)\n\t}\n\n\t@Watch(\"color\")\n\tvalidateColor(newValue: string): void {\n\t\tvalidateProp(IconColors, newValue, IconClass.root)\n\t}\n\n\t@Watch(\"name\")\n\tprivate async loadIconPathData(): Promise<void> {\n\t\tconst {name, visible} = this\n\t\tif (!Build.isBrowser || !name || !visible) {\n\t\t\treturn\n\t\t}\n\t\tawait this.loadIcon()\n\t}\n\n\tconnectedCallback(): void {\n\t\tif (iconsLazyLoad()) {\n\t\t\tthis.visible = true\n\t\t\tthis.loadIconPathData().finally()\n\t\t} else {\n\t\t\tthis.waitUntilVisible(async () => {\n\t\t\t\tthis.visible = true\n\t\t\t\tawait this.loadIconPathData()\n\t\t\t})\n\t\t}\n\t}\n\n\tdisconnectedCallback(): void {\n\t\tif (this.intersectionObserver) {\n\t\t\tthis.intersectionObserver.disconnect()\n\t\t\tthis.intersectionObserver = null\n\t\t}\n\t}\n\n\tasync componentWillLoad(): Promise<void> {\n\t\tthis.validateSize(this.size)\n\t\tthis.validateColor(this.color)\n\t\tawait this.loadIconPathData()\n\t}\n\n\tprivate waitUntilVisible(callback: () => void): void {\n\t\tif (!Build.isBrowser || typeof window === \"undefined\" || !(window as any).IntersectionObserver) {\n\t\t\tcallback()\n\t\t\treturn\n\t\t}\n\t\tthis.intersectionObserver = new IntersectionObserver(\n\t\t\tentries => {\n\t\t\t\tentries.forEach(entry => {\n\t\t\t\t\tif (entry.isIntersecting) {\n\t\t\t\t\t\tif (this.intersectionObserver) {\n\t\t\t\t\t\t\tthis.intersectionObserver.disconnect()\n\t\t\t\t\t\t\tthis.intersectionObserver = null\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcallback()\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t},\n\t\t\t{rootMargin: \"50px\"},\n\t\t)\n\t\tthis.intersectionObserver.observe(this.host)\n\t}\n\n\tprivate async loadIcon() {\n\t\ttry {\n\t\t\tconst {name, type} = this\n\t\t\tconst data = await fetchIcon({name, type})\n\t\t\tconst isValid = isValidSVG(data)\n\t\t\tthis.host.innerHTML = isValid ? data : null;\n\t\t} catch (e) {\n\t\t\tthis.host.innerHTML = ''\n\t\t\tthis.error = true\n\t\t}\n\t}\n\n\trender() {\n\t\tif (this.error) {\n\t\t\treturn null\n\t\t}\n\t\treturn (\n\t\t\t<Host class={this.h.classes(IconClass.root)} size={this.size} color={this.color}/>\n\t\t)\n\t}\n}\n","import {pick} from \"../../utils/utils\";\nimport {Sizes} from \"../../core/constants/sizes\";\nimport {ValueOf} from \"../../types/interfaces\";\n\nexport const ThemeSwitchSizes = pick(Sizes, ['_XS', '_S', '_M', '_L', '_XL'])\nexport type ThemeSwitchSizesType = `${ValueOf<typeof ThemeSwitchSizes>}`\n\nexport const ThemeSwitchClass = {\n\troot: 'gov-theme-switch',\n\tindicator: 'gov-theme-switch__indicator',\n\tlabel: 'gov-theme-switch__label',\n\ticonLight: 'gov-theme-switch__icon-light',\n\ticonDark: 'gov-theme-switch__icon-dark',\n}\n\nexport const ATTRIBUTE_THEME_NAME = 'data-theme'\n","import {GovBaseEvent} from \"../../types/event.types\";\n\nexport enum ThemeList {\n\tauto = 'auto',\n\tlight = 'light',\n\tdark = 'dark'\n}\n\nexport interface ThemeSwitchEvent extends GovBaseEvent {\n\tref: HTMLGovThemeSwitchElement;\n\tstate: ThemeList\n}\n\n","import {Component, Element, Event, EventEmitter, h, Host, Prop, State, Watch} from \"@stencil/core\"\nimport {GovHost} from \"../../helpers/Dom/template.types\";\nimport {govHost} from \"../../helpers/Dom/template\";\nimport {ATTRIBUTE_THEME_NAME, ThemeSwitchClass, ThemeSwitchSizes, ThemeSwitchSizesType} from \"./constants\";\nimport {isWindow} from \"../../helpers/Dom/win\";\nimport {ThemeList, ThemeSwitchEvent} from \"./gov-theme-switch.types\";\nimport {validateProp} from \"../../helpers/Validate/props\";\nimport {getCookie, setCookie} from \"../../helpers/Dom/document\";\n\n@Component({\n\ttag: \"gov-theme-switch\",\n})\nexport class GovThemeSwitch {\n\tprivate h: GovHost\n\n\tconstructor() {\n\t\tthis.h = govHost(this.host)\n\t}\n\n\t@Element() host: HTMLGovThemeSwitchElement\n\n\t/**\n\t * Switch's size.\n\t */\n\t@Prop() readonly size?: ThemeSwitchSizesType = \"m\"\n\t/**\n\t * Display switch label\n\t */\n\t@Prop({attribute: \"display-label\"}) readonly displayLabel? = false\n\t/**\n\t * Label in light mode\n\t */\n\t@Prop({attribute: \"aria-label-light\"}) readonly ariaLabelLight? = \"Přenout na tmavý mód\"\n\t/**\n\t * Label in dark mode\n\t */\n\t@Prop({attribute: \"aria-label-dark\"}) readonly ariaLabelDark? = \"Přepnout na světlý mód\"\n\t/**\n\t * Label in light mode\n\t */\n\t@Prop({attribute: \"label-light\"}) readonly labelLight? = \"Světlý mód\"\n\t/**\n\t * Label in dark mode\n\t */\n\t@Prop({attribute: \"label-dark\"}) readonly labelDark? = \"Tmavý mód\"\n\t/**\n\t * Called when the theme is changed by the user\n\t */\n\t@Event({eventName: \"gov-change\"}) govChange: EventEmitter<ThemeSwitchEvent>\n\n\t@Watch(\"size\")\n\tvalidateSize(newValue: string): void {\n\t\tvalidateProp(ThemeSwitchSizes, newValue, ThemeSwitchClass.root)\n\t}\n\n\t@Watch(\"theme\")\n\twatchTheme(newValue: ThemeList): void {\n\t\tthis.htmlElement.setAttribute(ATTRIBUTE_THEME_NAME, newValue);\n\t\tthis.htmlElement.classList.remove(...Object.keys(ThemeList));\n\t\tthis.htmlElement.classList.add(newValue);\n\t\tsetCookie(ATTRIBUTE_THEME_NAME, newValue);\n\t}\n\n\t@State() theme: ThemeList = ThemeList.auto\n\n\tprivate get storageValue() {\n\t\treturn getCookie(ATTRIBUTE_THEME_NAME)\n\t}\n\n\tprivate get htmlElement(): HTMLElement {\n\t\treturn document.documentElement\n\t}\n\n\tprivate get isSystemPrefersColorDark(): boolean {\n\t\treturn isWindow && window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches;\n\t}\n\n\tcomponentWillLoad() {\n\t\tthis.initDefaultState()\n\t\tthis.validateSize(this.size)\n\t}\n\n\tprivate initDefaultState() {\n\t\tconst options = Object.keys(ThemeList);\n\t\tlet currentState = this.storageValue;\n\t\tconst htmlState = this.htmlElement.getAttribute(ATTRIBUTE_THEME_NAME)\n\n\t\tif (currentState && options.includes(currentState)) {\n\t\t\tthis.theme = currentState as ThemeList;\n\t\t} else if (htmlState && options.includes(htmlState)) {\n\t\t\tthis.theme = htmlState as ThemeList;\n\t\t} else {\n\t\t\tthis.theme = ThemeList.auto;\n\t\t}\n\t}\n\n\tprivate setThemeState = (state: ThemeList) => {\n\t\tthis.theme = state;\n\n\t\tthis.govChange.emit({\n\t\t\tcomponent: ThemeSwitchClass.root,\n\t\t\tstate: this.theme,\n\t\t\tref: this.host\n\t\t})\n\t}\n\n\trender() {\n\t\tlet isDark = this.theme === ThemeList.dark;\n\t\tif (this.theme === ThemeList.auto) {\n\t\t\tisDark = this.isSystemPrefersColorDark;\n\t\t}\n\t\treturn (\n\t\t\t<Host class={this.h.classes(ThemeSwitchClass.root)}\n\t\t\t\t theme={isDark ? ThemeList.dark : ThemeList.light}\n\t\t\t\t size={this.size}>\n\t\t\t\t<button onClick={() => this.setThemeState(isDark ? ThemeList.light : ThemeList.dark)}\n\t\t\t\t\t\taria-current={this.theme}\n\t\t\t\t\t\taria-label={isDark ? this.ariaLabelDark : this.ariaLabelLight}>\n\t\t\t\t\t<span>\n\t\t\t\t\t\t<span class={ThemeSwitchClass.indicator}>\n\t\t\t\t\t\t\t{ThemeList.light && <gov-icon name=\"sun\" class={ThemeSwitchClass.iconLight} type=\"components\"></gov-icon>}\n\t\t\t\t\t\t\t{ThemeList.dark && <gov-icon name=\"moon\" class={ThemeSwitchClass.iconDark} type=\"components\"></gov-icon>}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t{this.displayLabel ? (\n\t\t\t\t\t\t\t<span class={ThemeSwitchClass.label}>\n\t\t\t\t\t\t\t\t{isDark ? this.labelDark : this.labelLight}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t) : null\n\t\t\t\t\t\t}\n\t\t\t\t\t</span>\n\t\t\t\t</button>\n\t\t\t</Host>\n\t\t)\n\t}\n}\n"],"version":3}
@@ -8,12 +8,12 @@ const props = require('./props-d189860c.js');
8
8
  const string_utils = require('./string.utils-b84c81cf.js');
9
9
  const utils = require('./utils-d263c5c6.js');
10
10
  const constants = require('./constants-47ba678b.js');
11
- const array_utils = require('./array.utils-96eadde3.js');
11
+ const array_utils = require('./array.utils-211fffc0.js');
12
12
  const attribute = require('./attribute-06dc5228.js');
13
13
  const accessibility = require('./accessibility-c475826b.js');
14
14
  require('./gov.log-bfea3151.js');
15
15
  require('./sizes-89f8d3b2.js');
16
- require('./helpers.types-ff60c9bd.js');
16
+ require('./helpers.types-9066e4a4.js');
17
17
 
18
18
  const GovFormAutocomplete = class {
19
19
  constructor(hostRef) {
@@ -116,14 +116,15 @@ const GovFormAutocomplete = class {
116
116
  this.inheritedAttributes = accessibility.inheritAriaAttributes(this.host);
117
117
  }
118
118
  disconnectedCallback() {
119
- this.attributeObserver.stopObserving();
119
+ var _a;
120
+ (_a = this.attributeObserver) === null || _a === void 0 ? void 0 : _a.stopObserving();
120
121
  }
121
122
  onAriaAttributeChange(attributeName, newValue) {
122
123
  this.host.removeAttribute(attributeName);
123
124
  this.inheritedAttributes = Object.assign(Object.assign({}, this.inheritedAttributes), { [attributeName]: newValue });
124
125
  }
125
126
  render() {
126
- return (index.h(index.Host, { key: 'a8bf269f28c969a01b9d6fd884b5e6dd253905f6', class: constants.FormAutocompleteClass.root, size: this.size }, index.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": utils.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": template.booleanString(this.list.length && this.focused ? true : false), ref: el => (this.inputRef = el) }), index.h("slot", { key: 'aa60e7afc9f03418525f40f54989c56ac817a08a', name: "validation-icon" }), index.h("slot", { key: 'fd1aa38d3f92793689e7238c4cc7b11fdb6d7c83', name: "icon-end" })), index.h("ul", { key: 'f721a4bebd03c2837604e42d4ece440f2668e4db', class: constants.FormAutocompleteClass.list, role: 'listbox', "aria-hidden": template.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 ? (index.h("li", { class: constants.FormAutocompleteClass.empty }, this.messageEmpty)) : null, this.focused && this.processing === true && this.isValueAccepted ? (index.h("li", { class: constants.FormAutocompleteClass.loading }, index.h("gov-skeleton", { size: "m" }))) : null, this.focused ? this.list.map((item, index$1) => {
127
+ return (index.h(index.Host, { key: '22d9a81f648404e942ee680acddda83165af4dc2', class: constants.FormAutocompleteClass.root, size: this.size }, index.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": utils.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": template.booleanString(this.list.length && this.focused ? true : false), ref: el => (this.inputRef = el) }), index.h("slot", { key: '739722e49f8062d3ebec84dc2a1f840413439c7c', name: "validation-icon" }), index.h("slot", { key: '6f3b3c7695a5c7d56276fbc41f854b9afff3800e', name: "icon-end" })), index.h("ul", { key: '52b34c8501d976b438350104594b02137d40a386', class: constants.FormAutocompleteClass.list, role: 'listbox', "aria-hidden": template.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 ? (index.h("li", { class: constants.FormAutocompleteClass.empty }, this.messageEmpty)) : null, this.focused && this.processing === true && this.isValueAccepted ? (index.h("li", { class: constants.FormAutocompleteClass.loading }, index.h("gov-skeleton", { size: "m" }))) : null, this.focused ? this.list.map((item, index$1) => {
127
128
  const isSelected = this.arrowCounter === index$1;
128
129
  return (index.h("li", { class: constants.FormAutocompleteClass.item, innerHTML: this.templateResolver(item, isSelected), role: 'option', "aria-posinset": index$1, tabindex: isSelected ? 0 : -1, "aria-setsize": this.list.length, onTouchStart: (e) => this.onSelectHandler(e, index$1), onMouseDown: (e) => this.onSelectHandler(e, index$1), "aria-selected": template.toBoolAttr(isSelected) }, index.h("slot", { name: "list-item-left" }), index.h("slot", { name: "list-item-right" })));
129
130
  }) : null)));
@@ -1 +1 @@
1
- {"file":"gov-form-autocomplete.entry.cjs.js","mappings":"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","names":["createID","validateProp","FormAutocompleteSizes","FormAutocompleteClass","propsValueToArray","delay","AttributeObserver","ariaAttributes","inheritAriaAttributes","h","Host","throttle","booleanString","toBoolAttr","index","has"],"sources":["../../../packages/core/src/components/gov-form/autocomplete/gov-form-autocomplete.tsx"],"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"],"version":3}
1
+ {"file":"gov-form-autocomplete.entry.cjs.js","mappings":"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","names":["createID","validateProp","FormAutocompleteSizes","FormAutocompleteClass","propsValueToArray","delay","AttributeObserver","ariaAttributes","inheritAriaAttributes","h","Host","throttle","booleanString","toBoolAttr","index","has"],"sources":["../../../packages/core/src/components/gov-form/autocomplete/gov-form-autocomplete.tsx"],"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"],"version":3}
@@ -3,17 +3,17 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-0e4f24f9.js');
6
- const constants = require('./constants-02aec493.js');
6
+ const constants = require('./constants-7f713d6c.js');
7
7
  const template = require('./template-39939fd6.js');
8
8
  const props = require('./props-d189860c.js');
9
9
  const stencil_utils = require('./stencil.utils-182382ee.js');
10
- const array_utils = require('./array.utils-96eadde3.js');
10
+ const array_utils = require('./array.utils-211fffc0.js');
11
11
  require('./utils-d263c5c6.js');
12
12
  require('./sizes-89f8d3b2.js');
13
13
  require('./gov.log-bfea3151.js');
14
- require('./helpers.types-ff60c9bd.js');
14
+ require('./helpers.types-9066e4a4.js');
15
15
 
16
- const govFormGroupCss = "gov-form-group,.gov-form-group,gov-form-radio-group,.gov-form-radio-group,gov-form-checkbox-group,.gov-form-checkbox-group{margin-top:0;margin-bottom:0;position:relative;display:flex;width:100%;flex-direction:column;align-items:flex-start}gov-form-group .gov-form-label__label,.gov-form-group .gov-form-label__label,gov-form-radio-group .gov-form-label__label,.gov-form-radio-group .gov-form-label__label,gov-form-checkbox-group .gov-form-label__label,.gov-form-checkbox-group .gov-form-label__label{margin:0}gov-form-group[orientation=horizontal],.gov-form-group[orientation=horizontal],gov-form-radio-group[orientation=horizontal],.gov-form-radio-group[orientation=horizontal],gov-form-checkbox-group[orientation=horizontal],.gov-form-checkbox-group[orientation=horizontal]{flex-direction:row;flex-wrap:wrap}gov-form-group[orientation=horizontal] .gov-form-label__label,.gov-form-group[orientation=horizontal] .gov-form-label__label,gov-form-radio-group[orientation=horizontal] .gov-form-label__label,.gov-form-radio-group[orientation=horizontal] .gov-form-label__label,gov-form-checkbox-group[orientation=horizontal] .gov-form-label__label,.gov-form-checkbox-group[orientation=horizontal] .gov-form-label__label{white-space:nowrap}gov-form-group[gap=xs],.gov-form-group[gap=xs],gov-form-radio-group[gap=xs],.gov-form-radio-group[gap=xs],gov-form-checkbox-group[gap=xs],.gov-form-checkbox-group[gap=xs]{gap:var(--gap, var(--spacing-xs-nudge))}gov-form-group[gap=s],.gov-form-group[gap=s],gov-form-radio-group[gap=s],.gov-form-radio-group[gap=s],gov-form-checkbox-group[gap=s],.gov-form-checkbox-group[gap=s]{gap:var(--gap, var(--spacing-s))}gov-form-group[gap=m],.gov-form-group[gap=m],gov-form-radio-group[gap=m],.gov-form-radio-group[gap=m],gov-form-checkbox-group[gap=m],.gov-form-checkbox-group[gap=m]{gap:var(--gap, var(--spacing-s-nudge))}gov-form-group[gap=l],.gov-form-group[gap=l],gov-form-radio-group[gap=l],.gov-form-radio-group[gap=l],gov-form-checkbox-group[gap=l],.gov-form-checkbox-group[gap=l]{gap:var(--gap, var(--spacing-m))}gov-form-group[gap=xl],.gov-form-group[gap=xl],gov-form-radio-group[gap=xl],.gov-form-radio-group[gap=xl],gov-form-checkbox-group[gap=xl],.gov-form-checkbox-group[gap=xl]{gap:var(--gap, var(--spacing-m-nudge))}";
16
+ const govFormGroupCss = "gov-form-group,.gov-form-group,gov-form-radio-group,.gov-form-radio-group,gov-form-checkbox-group,.gov-form-checkbox-group{margin-top:0;margin-bottom:0;position:relative;display:flex;width:100%;flex-direction:column;align-items:flex-start}gov-form-group .gov-form-label__label,.gov-form-group .gov-form-label__label,gov-form-radio-group .gov-form-label__label,.gov-form-radio-group .gov-form-label__label,gov-form-checkbox-group .gov-form-label__label,.gov-form-checkbox-group .gov-form-label__label{margin:0}gov-form-group[orientation=horizontal],.gov-form-group[orientation=horizontal],gov-form-radio-group[orientation=horizontal],.gov-form-radio-group[orientation=horizontal],gov-form-checkbox-group[orientation=horizontal],.gov-form-checkbox-group[orientation=horizontal]{flex-direction:row;flex-wrap:wrap}gov-form-group[orientation=horizontal] .gov-form-label__label,.gov-form-group[orientation=horizontal] .gov-form-label__label,gov-form-radio-group[orientation=horizontal] .gov-form-label__label,.gov-form-radio-group[orientation=horizontal] .gov-form-label__label,gov-form-checkbox-group[orientation=horizontal] .gov-form-label__label,.gov-form-checkbox-group[orientation=horizontal] .gov-form-label__label{white-space:nowrap}gov-form-group[gap=xs],.gov-form-group[gap=xs],gov-form-radio-group[gap=xs],.gov-form-radio-group[gap=xs],gov-form-checkbox-group[gap=xs],.gov-form-checkbox-group[gap=xs]{gap:var(--gap, var(--spacing-xs-nudge))}gov-form-group[gap=s],.gov-form-group[gap=s],gov-form-radio-group[gap=s],.gov-form-radio-group[gap=s],gov-form-checkbox-group[gap=s],.gov-form-checkbox-group[gap=s]{gap:var(--gap, var(--spacing-s))}gov-form-group[gap=m],.gov-form-group[gap=m],gov-form-radio-group[gap=m],.gov-form-radio-group[gap=m],gov-form-checkbox-group[gap=m],.gov-form-checkbox-group[gap=m]{gap:var(--gap, var(--spacing-m))}gov-form-group[gap=l],.gov-form-group[gap=l],gov-form-radio-group[gap=l],.gov-form-radio-group[gap=l],gov-form-checkbox-group[gap=l],.gov-form-checkbox-group[gap=l]{gap:var(--gap, var(--spacing-l))}gov-form-group[gap=xl],.gov-form-group[gap=xl],gov-form-radio-group[gap=xl],.gov-form-radio-group[gap=xl],gov-form-checkbox-group[gap=xl],.gov-form-checkbox-group[gap=xl]{gap:var(--gap, var(--spacing-xl))}";
17
17
  const GovFormCheckboxGroupStyle0 = govFormGroupCss;
18
18
 
19
19
  const GovFormCheckboxGroup = class {
@@ -70,7 +70,7 @@ const GovFormCheckboxGroup = class {
70
70
  });
71
71
  }
72
72
  render() {
73
- return (index.h(index.Host, { key: '7f71876a9b72b688bb354a1477153bd8d1b5ad05', gap: this.gap, class: this.h.classes(constants.FormGroupClass.root), value: this.value }, index.h("slot", { key: '2b3ce2b04ab3a2e55128a6d8c00a1d41217061f6' })));
73
+ return (index.h(index.Host, { key: '332a7e45344ebd6bafbcf20813ab7a06a99aae7e', gap: this.gap, class: this.h.classes(constants.FormGroupClass.root), value: this.value }, index.h("slot", { key: 'd00028b250fa309ee22d25bd07f0f940fec0590e' })));
74
74
  }
75
75
  get host() { return index.getElement(this); }
76
76
  static get watchers() { return {
@@ -1 +1 @@
1
- {"file":"gov-form-checkbox-group.entry.cjs.js","mappings":";;;;;;;;;;;;;;;AAAA,MAAM,eAAe,GAAG,itEAAitE,CAAC;AAC1uE,mCAAe,eAAe;;MCoBjB,oBAAoB;IAGhC;;;QAoCA,iBAAY,GAAG,CAAC,KAAqC;;YACpD,KAAK,CAAC,eAAe,EAAE,CAAA;YACvB,MAAM,KAAK,GAAGA,6BAAiB,CAAW,IAAI,CAAC,KAAK,CAAC,CAAC;YACtD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;gBAAE,OAAO;YAClC,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE;gBACzB,IAAI,CAAC,KAAK,GAAG,CAAC,GAAG,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;aAC3C;iBAAM;gBACN,IAAI,CAAC,KAAK,GAAG,MAAA,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,GAAG,KAAK,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAI,EAAE,CAAA;aACpE;YACD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;gBACnB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,SAAS,EAAEC,gCAAsB,CAAC,IAAI;aACtC,CAAC,CAAA;SACF,CAAA;mBAzC2C,SAAS;2BAIK,UAAU;qBAIG,SAAS;QAf/E,IAAI,CAAC,CAAC,GAAGC,gBAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;KAC3B;IAqBD,WAAW,CAAC,QAAgB;QAC3B,IAAI,QAAQ,EAAE;YACbC,kBAAY,CAACC,wBAAc,EAAE,QAAQ,EAAEC,wBAAc,CAAC,IAAI,CAAC,CAAA;SAC3D;KACD;IAGD,mBAAmB,CAAC,QAAgB;QACnC,IAAI,QAAQ,EAAE;YACbF,kBAAY,CAACG,8BAAoB,EAAE,QAAQ,EAAED,wBAAc,CAAC,IAAI,CAAC,CAAA;SACjE;KACD;IAiBD,iBAAiB;QAChB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAC1B,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QAC1C,IAAI,CAAC,KAAK,GAAGL,6BAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;KAC1C;IAED,kBAAkB;QACjBO,kBAAI,CAAC,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAA;KACpC;IAED,iBAAiB;QAChB,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO;YAC/D,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,mBAAmB,CAAC,EAAE;gBAC/C,OAAO,CAAC,gBAAgB,CAAC,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC,CAAA;aACzD;YACD,OAAO,CAAC,YAAY,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAA;YACjD,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SACrD,CAAC,CAAA;KACF;IAED,MAAM;QACL,QACCC,QAACC,UAAI,qDAAC,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAACJ,wBAAc,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,IACjFG,oEAAa,CACP,EACP;KACD;;;;;;;;;;;","names":["propsValueToArray","FormCheckboxGroupClass","govHost","validateProp","FormGroupSizes","FormGroupClass","FormGroupOrientation","tick","h","Host"],"sources":["../../../packages/core/src/components/gov-form/group/gov-form-group.scss?tag=gov-form-checkbox-group","../../../packages/core/src/components/gov-form/group/gov-form-checkbox-group.tsx"],"sourcesContent":["/* Form Control */\n\n\ngov-form-group, .gov-form-group,\ngov-form-radio-group, .gov-form-radio-group,\ngov-form-checkbox-group, .gov-form-checkbox-group {\n\t// VARIABLES\n\t@import \"./gov-form-group-variables\";\n\n\t@include reset-margin();\n\t@include base(flex);\n\tflex-direction: column;\n\talign-items: flex-start;\n\t.gov-form-label__label {\n\t\tmargin: 0;\n\t}\n\n\t&[orientation=\"horizontal\"] {\n\t\tflex-direction: row;\n\t\tflex-wrap: wrap;\n\t\t.gov-form-label__label {\n\t\t\twhite-space: nowrap;\n\t\t}\n\t}\n\n\t// SIZES\n\t@each $size, $definitions in $form-group-gaps {\n\t\t&[gap=\"#{$size}\"] {\n\t\t\tgap: map-get($definitions, \"gap\");\n\t\t}\n\t}\n}\n","import {Component, Element, Event, EventEmitter, h, Host, Prop, Watch} from \"@stencil/core\"\nimport {\n\tFormCheckboxGroupClass,\n\tFormGroupClass,\n\tFormGroupOrientation,\n\tFormGroupOrientationType,\n\tFormGroupSizes,\n\tFormGroupSizesType\n} from \"./constants\"\nimport {GovHost} from \"../../../helpers/Dom/template.types\"\nimport {govHost} from \"../../../helpers/Dom/template\"\nimport {validateProp} from \"../../../helpers/Validate/props\"\nimport {FormCheckboxEvent} from \"../checkbox/gov-form-checkbox.types\"\nimport {FormCheckboxGroupEvent} from \"./gov-form-group.types\"\nimport {tick} from \"../../../utils/stencil.utils\"\nimport {propsValueToArray} from \"../../../utils/array.utils\"\n\n@Component({\n\ttag: \"gov-form-checkbox-group\",\n\tstyleUrl: \"gov-form-group.scss\",\n})\nexport class GovFormCheckboxGroup {\n\tprivate readonly h: GovHost\n\n\tconstructor() {\n\t\tthis.h = govHost(this.host)\n\t}\n\n\t@Element() host: HTMLGovFormGroupElement\n\t/**\n\t * Gap's size.\n\t */\n\t@Prop() readonly gap?: FormGroupSizesType = undefined\n\t/**\n\t * Elements orientation\n\t */\n\t@Prop() readonly orientation?: FormGroupOrientationType = 'vertical'\n\t/**\n\t * Group's value\n\t */\n\t@Prop({attribute: \"value\", mutable: true}) value?: string | string[] = undefined\n\t/**\n /* Emitted when the checkbox change value.\n\t */\n\t@Event({eventName: \"gov-change\"}) govChange: EventEmitter<FormCheckboxGroupEvent>\n\n\t@Watch(\"gap\")\n\tvalidateGap(newValue: string): void {\n\t\tif (newValue) {\n\t\t\tvalidateProp(FormGroupSizes, newValue, FormGroupClass.root)\n\t\t}\n\t}\n\n\t@Watch(\"orientation\")\n\tvalidateOrientation(newValue: string): void {\n\t\tif (newValue) {\n\t\t\tvalidateProp(FormGroupOrientation, newValue, FormGroupClass.root)\n\t\t}\n\t}\n\n\thandleChange = (event: CustomEvent<FormCheckboxEvent>) => {\n\t\tevent.stopPropagation()\n\t\tconst value = propsValueToArray<string[]>(this.value);\n\t\tif (!Array.isArray(value)) return;\n\t\tif (event.detail.checked) {\n\t\t\tthis.value = [...value, event.detail.value]\n\t\t} else {\n\t\t\tthis.value = value.filter((val) => val !== event.detail.value) ?? []\n\t\t}\n\t\tthis.govChange.emit({\n\t\t\tvalue: this.value,\n\t\t\tcomponent: FormCheckboxGroupClass.root,\n\t\t})\n\t}\n\n\tcomponentWillLoad(): void {\n\t\tthis.validateGap(this.gap)\n\t\tthis.validateOrientation(this.orientation)\n\t\tthis.value = propsValueToArray(this.value)\n\t}\n\n\tcomponentDidRender(): void {\n\t\ttick(() => this.rerenderComponent())\n\t}\n\n\trerenderComponent(): void {\n\t\tthis.host.querySelectorAll('gov-form-checkbox').forEach((element) => {\n\t\t\tif (!element.hasAttribute('listener-attached')) {\n\t\t\t\telement.addEventListener('gov-change', this.handleChange)\n\t\t\t}\n\t\t\telement.setAttribute('listener-attached', 'true')\n\t\t\telement.checked = this.value.includes(element.value);\n\t\t})\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host gap={this.gap} class={this.h.classes(FormGroupClass.root)} value={this.value}>\n\t\t\t\t<slot></slot>\n\t\t\t</Host>\n\t\t)\n\t}\n}\n"],"version":3}
1
+ {"file":"gov-form-checkbox-group.entry.cjs.js","mappings":";;;;;;;;;;;;;;;AAAA,MAAM,eAAe,GAAG,ssEAAssE,CAAC;AAC/tE,mCAAe,eAAe;;MCoBjB,oBAAoB;IAGhC;;;QAoCA,iBAAY,GAAG,CAAC,KAAqC;;YACpD,KAAK,CAAC,eAAe,EAAE,CAAA;YACvB,MAAM,KAAK,GAAGA,6BAAiB,CAAW,IAAI,CAAC,KAAK,CAAC,CAAC;YACtD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;gBAAE,OAAO;YAClC,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE;gBACzB,IAAI,CAAC,KAAK,GAAG,CAAC,GAAG,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;aAC3C;iBAAM;gBACN,IAAI,CAAC,KAAK,GAAG,MAAA,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,GAAG,KAAK,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAI,EAAE,CAAA;aACpE;YACD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;gBACnB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,SAAS,EAAEC,gCAAsB,CAAC,IAAI;aACtC,CAAC,CAAA;SACF,CAAA;mBAzC2C,SAAS;2BAIK,UAAU;qBAIG,SAAS;QAf/E,IAAI,CAAC,CAAC,GAAGC,gBAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;KAC3B;IAqBD,WAAW,CAAC,QAAgB;QAC3B,IAAI,QAAQ,EAAE;YACbC,kBAAY,CAACC,wBAAc,EAAE,QAAQ,EAAEC,wBAAc,CAAC,IAAI,CAAC,CAAA;SAC3D;KACD;IAGD,mBAAmB,CAAC,QAAgB;QACnC,IAAI,QAAQ,EAAE;YACbF,kBAAY,CAACG,8BAAoB,EAAE,QAAQ,EAAED,wBAAc,CAAC,IAAI,CAAC,CAAA;SACjE;KACD;IAiBD,iBAAiB;QAChB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAC1B,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QAC1C,IAAI,CAAC,KAAK,GAAGL,6BAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;KAC1C;IAED,kBAAkB;QACjBO,kBAAI,CAAC,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAA;KACpC;IAED,iBAAiB;QAChB,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO;YAC/D,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,mBAAmB,CAAC,EAAE;gBAC/C,OAAO,CAAC,gBAAgB,CAAC,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC,CAAA;aACzD;YACD,OAAO,CAAC,YAAY,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAA;YACjD,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SACrD,CAAC,CAAA;KACF;IAED,MAAM;QACL,QACCC,QAACC,UAAI,qDAAC,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAACJ,wBAAc,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,IACjFG,oEAAa,CACP,EACP;KACD;;;;;;;;;;;","names":["propsValueToArray","FormCheckboxGroupClass","govHost","validateProp","FormGroupSizes","FormGroupClass","FormGroupOrientation","tick","h","Host"],"sources":["../../../packages/core/src/components/gov-form/group/gov-form-group.scss?tag=gov-form-checkbox-group","../../../packages/core/src/components/gov-form/group/gov-form-checkbox-group.tsx"],"sourcesContent":["/* Form Control */\n\n\ngov-form-group, .gov-form-group,\ngov-form-radio-group, .gov-form-radio-group,\ngov-form-checkbox-group, .gov-form-checkbox-group {\n\t// VARIABLES\n\t@import \"./gov-form-group-variables\";\n\n\t@include reset-margin();\n\t@include base(flex);\n\tflex-direction: column;\n\talign-items: flex-start;\n\t.gov-form-label__label {\n\t\tmargin: 0;\n\t}\n\n\t&[orientation=\"horizontal\"] {\n\t\tflex-direction: row;\n\t\tflex-wrap: wrap;\n\t\t.gov-form-label__label {\n\t\t\twhite-space: nowrap;\n\t\t}\n\t}\n\n\t// SIZES\n\t@each $size, $definitions in $form-group-gaps {\n\t\t&[gap=\"#{$size}\"] {\n\t\t\tgap: map-get($definitions, \"gap\");\n\t\t}\n\t}\n}\n","import {Component, Element, Event, EventEmitter, h, Host, Prop, Watch} from \"@stencil/core\"\nimport {\n\tFormCheckboxGroupClass,\n\tFormGroupClass,\n\tFormGroupOrientation,\n\tFormGroupOrientationType,\n\tFormGroupSizes,\n\tFormGroupSizesType\n} from \"./constants\"\nimport {GovHost} from \"../../../helpers/Dom/template.types\"\nimport {govHost} from \"../../../helpers/Dom/template\"\nimport {validateProp} from \"../../../helpers/Validate/props\"\nimport {FormCheckboxEvent} from \"../checkbox/gov-form-checkbox.types\"\nimport {FormCheckboxGroupEvent} from \"./gov-form-group.types\"\nimport {tick} from \"../../../utils/stencil.utils\"\nimport {propsValueToArray} from \"../../../utils/array.utils\"\n\n@Component({\n\ttag: \"gov-form-checkbox-group\",\n\tstyleUrl: \"gov-form-group.scss\",\n})\nexport class GovFormCheckboxGroup {\n\tprivate readonly h: GovHost\n\n\tconstructor() {\n\t\tthis.h = govHost(this.host)\n\t}\n\n\t@Element() host: HTMLGovFormGroupElement\n\t/**\n\t * Gap's size.\n\t */\n\t@Prop() readonly gap?: FormGroupSizesType = undefined\n\t/**\n\t * Elements orientation\n\t */\n\t@Prop() readonly orientation?: FormGroupOrientationType = 'vertical'\n\t/**\n\t * Group's value\n\t */\n\t@Prop({attribute: \"value\", mutable: true}) value?: string | string[] = undefined\n\t/**\n /* Emitted when the checkbox change value.\n\t */\n\t@Event({eventName: \"gov-change\"}) govChange: EventEmitter<FormCheckboxGroupEvent>\n\n\t@Watch(\"gap\")\n\tvalidateGap(newValue: string): void {\n\t\tif (newValue) {\n\t\t\tvalidateProp(FormGroupSizes, newValue, FormGroupClass.root)\n\t\t}\n\t}\n\n\t@Watch(\"orientation\")\n\tvalidateOrientation(newValue: string): void {\n\t\tif (newValue) {\n\t\t\tvalidateProp(FormGroupOrientation, newValue, FormGroupClass.root)\n\t\t}\n\t}\n\n\thandleChange = (event: CustomEvent<FormCheckboxEvent>) => {\n\t\tevent.stopPropagation()\n\t\tconst value = propsValueToArray<string[]>(this.value);\n\t\tif (!Array.isArray(value)) return;\n\t\tif (event.detail.checked) {\n\t\t\tthis.value = [...value, event.detail.value]\n\t\t} else {\n\t\t\tthis.value = value.filter((val) => val !== event.detail.value) ?? []\n\t\t}\n\t\tthis.govChange.emit({\n\t\t\tvalue: this.value,\n\t\t\tcomponent: FormCheckboxGroupClass.root,\n\t\t})\n\t}\n\n\tcomponentWillLoad(): void {\n\t\tthis.validateGap(this.gap)\n\t\tthis.validateOrientation(this.orientation)\n\t\tthis.value = propsValueToArray(this.value)\n\t}\n\n\tcomponentDidRender(): void {\n\t\ttick(() => this.rerenderComponent())\n\t}\n\n\trerenderComponent(): void {\n\t\tthis.host.querySelectorAll('gov-form-checkbox').forEach((element) => {\n\t\t\tif (!element.hasAttribute('listener-attached')) {\n\t\t\t\telement.addEventListener('gov-change', this.handleChange)\n\t\t\t}\n\t\t\telement.setAttribute('listener-attached', 'true')\n\t\t\telement.checked = this.value.includes(element.value);\n\t\t})\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host gap={this.gap} class={this.h.classes(FormGroupClass.root)} value={this.value}>\n\t\t\t\t<slot></slot>\n\t\t\t</Host>\n\t\t)\n\t}\n}\n"],"version":3}
@@ -71,7 +71,8 @@ const GovFormCheckbox = class {
71
71
  this.hydrated = true;
72
72
  }
73
73
  disconnectedCallback() {
74
- this.attributeObserver.stopObserving();
74
+ var _a;
75
+ (_a = this.attributeObserver) === null || _a === void 0 ? void 0 : _a.stopObserving();
75
76
  }
76
77
  onAriaAttributeChange(attributeName, newValue) {
77
78
  this.host.removeAttribute(attributeName);
@@ -1 +1 @@
1
- {"file":"gov-form-checkbox.entry.cjs.js","mappings":"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","names":["createID","govHost","govForm","validateProp","FormCheckboxSizes","FormCheckboxClass","toBoolAttr","inheritAriaAttributes","AttributeObserver","ariaAttributes","h","Host","toBoolAttrIfDefined","Fragment"],"sources":["../../../packages/core/src/components/gov-form/checkbox/gov-form-checkbox.tsx"],"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"],"version":3}
1
+ {"file":"gov-form-checkbox.entry.cjs.js","mappings":"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","names":["createID","govHost","govForm","validateProp","FormCheckboxSizes","FormCheckboxClass","toBoolAttr","inheritAriaAttributes","AttributeObserver","ariaAttributes","h","Host","toBoolAttrIfDefined","Fragment"],"sources":["../../../packages/core/src/components/gov-form/checkbox/gov-form-checkbox.tsx"],"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"],"version":3}
@@ -58,7 +58,7 @@ const GovFormControl = class {
58
58
  }
59
59
  render() {
60
60
  const Tag = this.fieldset ? "fieldset" : "div";
61
- return (index.h(index.Host, { key: 'ca3d81a16858cbe4b2c06580cb2e9523a77191be', size: this.size, class: this.h.classes(form.FormControlClass.root) }, index.h(Tag, { key: '4b2bdfbc3c227b910660596d5815c70ef8fa22dd', class: form.FormControlClass.holder }, this.h.hasSlot("top") && index.h("slot", { key: '21e1b5d8e989e6e4ecf9795a2d9d3ccd6dc29543', name: "top" }), index.h("slot", { key: 'd2acefce44c05404f9d1ce224f7f259361423d82' }), this.h.hasSlot("bottom") && (index.h("div", { key: 'e5c095ee40f41623e9f6a871e29724be42a8be8f', class: form.FormControlClass.bottom }, index.h("slot", { key: '941873ca1268fca177d3ff92b10a205dea0faad3', name: "bottom" }))))));
61
+ return (index.h(index.Host, { key: '1502fcaa64e9c9839e7393573f10aa7a98161f8a', size: this.size, class: this.h.classes(form.FormControlClass.root) }, index.h(Tag, { key: 'ea3147966c1e34366293c19228793679f5065d53', class: form.FormControlClass.holder }, this.h.hasSlot("top") && index.h("slot", { key: '803c63b94d671bdcd30eeb2bf4a9ab9f23633358', name: "top" }), index.h("slot", { key: 'c46d8faf4cea51bc15e6f57e0f2e9bea895b4454' }), this.h.hasSlot("bottom") && (index.h("div", { key: '78fcf2aa671f3741f6d38f0519cd8983be5d6082', class: form.FormControlClass.bottom }, index.h("slot", { key: '0d25b0c2d06a1f5612c2bf85dc428715e2a8f97a', name: "bottom" }))))));
62
62
  }
63
63
  get host() { return index.getElement(this); }
64
64
  };
@@ -176,14 +176,15 @@ const GovFormFile = class {
176
176
  this.registerListeners();
177
177
  }
178
178
  disconnectedCallback() {
179
- this.attributeObserver.stopObserving();
179
+ var _a;
180
+ (_a = this.attributeObserver) === null || _a === void 0 ? void 0 : _a.stopObserving();
180
181
  }
181
182
  onAriaAttributeChange(attributeName, newValue) {
182
183
  this.host.removeAttribute(attributeName);
183
184
  this.inheritedAttributes = Object.assign(Object.assign({}, this.inheritedAttributes), { [attributeName]: newValue });
184
185
  }
185
186
  render() {
186
- return (index.h(index.Host, { key: '92ee90aa5d8d28d310c0229ce513be88edafd68d', class: this.h.classes([FormFileClass.root]), invalid: template.toBoolAttrIfDefined(this.invalid), expanded: template.toBoolAttrIfDefined(this.expanded) }, index.h("div", { key: 'ada51c64168a7cb4dcb4f123e7f74fe401b63c82', class: FormFileClass.area, ref: el => (this.areaRef = el) }, index.h("slot", { key: '77a4e7096f1949c8c284b0d6607ffd96567669ef' }), index.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": template.toBoolAttrIfDefined(this.required), "aria-invalid": template.toBoolAttrIfDefined(this.invalid), "aria-disabled": template.toBoolAttrIfDefined(this.disabled) }))), this.h.hasSlot("attachments") ? (index.h("div", { class: FormFileClass.attachments }, index.h("slot", { name: "attachments" }))) : null, this.files.length && this.displayAttachments ? (index.h("div", { class: FormFileClass.attachments }, index.h("gov-attachments", { label: this.accessibleAttachmentsLabel, "accessible-label": this.accessibleAttachmentsLabel }, this.files.map(item => (index.h("gov-attachments-item", { "accessible-remove-labelledby": item.id, "on-gov-remove": () => this.onRemoveFileHandler(item) }, index.h("span", { class: "sr-only", id: item.id }, this.accessibleRemoveLabel.replace("{FILE_NAME}", item.file.name)), item.file.name, item.acceptValid === false ? (index.h("gov-form-message", { slot: "message", color: "error" }, index.h("gov-icon", { slot: "icon", name: "exclamation-triangle-fill", type: "components" }), item.acceptValid === false ? this.errorAccept : null)) : null, item.sizeValid === false ? (index.h("gov-form-message", { slot: "message", color: "error" }, index.h("gov-icon", { slot: "icon", name: "exclamation-triangle-fill", type: "components" }), this.errorSize.replace("{FILE_SIZE}", formatBytes(this.maxFileSize)))) : null, index.h("span", { slot: "info" }, "(", formatBytes(item.file.size), ")"))))))) : null));
187
+ return (index.h(index.Host, { key: '6fe6eb71a8275871bb0aeebae9531d846123ae06', class: this.h.classes([FormFileClass.root]), invalid: template.toBoolAttrIfDefined(this.invalid), expanded: template.toBoolAttrIfDefined(this.expanded) }, index.h("div", { key: 'cd7ab5a0c223214f5d825c8695993e8c64b9ea78', class: FormFileClass.area, ref: el => (this.areaRef = el) }, index.h("slot", { key: '6197c08c6a50725a261da65069159f75e3e47834' }), index.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": template.toBoolAttrIfDefined(this.required), "aria-invalid": template.toBoolAttrIfDefined(this.invalid), "aria-disabled": template.toBoolAttrIfDefined(this.disabled) }))), this.h.hasSlot("attachments") ? (index.h("div", { class: FormFileClass.attachments }, index.h("slot", { name: "attachments" }))) : null, this.files.length && this.displayAttachments ? (index.h("div", { class: FormFileClass.attachments }, index.h("gov-attachments", { label: this.accessibleAttachmentsLabel, "accessible-label": this.accessibleAttachmentsLabel }, this.files.map(item => (index.h("gov-attachments-item", { "accessible-remove-labelledby": item.id, "on-gov-remove": () => this.onRemoveFileHandler(item) }, index.h("span", { class: "sr-only", id: item.id }, this.accessibleRemoveLabel.replace("{FILE_NAME}", item.file.name)), item.file.name, item.acceptValid === false ? (index.h("gov-form-message", { slot: "message", color: "error" }, index.h("gov-icon", { slot: "icon", name: "exclamation-triangle-fill", type: "components" }), item.acceptValid === false ? this.errorAccept : null)) : null, item.sizeValid === false ? (index.h("gov-form-message", { slot: "message", color: "error" }, index.h("gov-icon", { slot: "icon", name: "exclamation-triangle-fill", type: "components" }), this.errorSize.replace("{FILE_SIZE}", formatBytes(this.maxFileSize)))) : null, index.h("span", { slot: "info" }, "(", formatBytes(item.file.size), ")"))))))) : null));
187
188
  }
188
189
  onRemoveFileHandler(file) {
189
190
  const index = this.files.findIndex(item => item.id === file.id);