@gov-design-system-ce/components 4.1.0-rc1 → 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (888) hide show
  1. package/dist/cjs/{colors-976f6dff.js → colors-f7c8eadd.js} +7 -9
  2. package/dist/cjs/colors-f7c8eadd.js.map +1 -0
  3. package/dist/cjs/{constants-e2807da6.js → constants-49f0efa6.js} +2 -2
  4. package/dist/cjs/{constants-e2807da6.js.map → constants-49f0efa6.js.map} +1 -1
  5. package/dist/cjs/{constants-43c0c51b.js → constants-4dfa23e3.js} +2 -2
  6. package/dist/cjs/{constants-43c0c51b.js.map → constants-4dfa23e3.js.map} +1 -1
  7. package/dist/cjs/{constants-441d1af4.js → constants-82929d01.js} +2 -2
  8. package/dist/cjs/{constants-441d1af4.js.map → constants-82929d01.js.map} +1 -1
  9. package/dist/cjs/{constants-bd0d66ac.js → constants-b9fece07.js} +2 -2
  10. package/dist/cjs/{constants-bd0d66ac.js.map → constants-b9fece07.js.map} +1 -1
  11. package/dist/cjs/{constants-5037cdc9.js → constants-c0886404.js} +2 -2
  12. package/dist/cjs/{constants-5037cdc9.js.map → constants-c0886404.js.map} +1 -1
  13. package/dist/cjs/{constants-861428a4.js → constants-f464dc4c.js} +2 -2
  14. package/dist/cjs/{constants-861428a4.js.map → constants-f464dc4c.js.map} +1 -1
  15. package/dist/cjs/core.cjs.js +2 -2
  16. package/dist/cjs/{form-c1aec07a.js → form-4e66039a.js} +4 -3
  17. package/dist/cjs/form-4e66039a.js.map +1 -0
  18. package/dist/cjs/gov-accordion-item.cjs.entry.js +11 -9
  19. package/dist/cjs/gov-accordion-item.cjs.entry.js.map +1 -1
  20. package/dist/cjs/gov-accordion.cjs.entry.js +4 -5
  21. package/dist/cjs/gov-accordion.cjs.entry.js.map +1 -1
  22. package/dist/cjs/gov-attachments_3.cjs.entry.js +14 -15
  23. package/dist/cjs/gov-attachments_3.cjs.entry.js.map +1 -1
  24. package/dist/cjs/gov-backdrop.cjs.entry.js +7 -8
  25. package/dist/cjs/gov-backdrop.cjs.entry.js.map +1 -1
  26. package/dist/cjs/gov-breadcrumbs.cjs.entry.js +7 -8
  27. package/dist/cjs/gov-breadcrumbs.cjs.entry.js.map +1 -1
  28. package/dist/cjs/gov-button.cjs.entry.js +12 -13
  29. package/dist/cjs/gov-button.cjs.entry.js.map +1 -1
  30. package/dist/cjs/gov-card.cjs.entry.js +7 -8
  31. package/dist/cjs/gov-card.cjs.entry.js.map +1 -1
  32. package/dist/cjs/gov-chip.cjs.entry.js +13 -14
  33. package/dist/cjs/gov-chip.cjs.entry.js.map +1 -1
  34. package/dist/cjs/gov-container.cjs.entry.js +3 -11
  35. package/dist/cjs/gov-container.cjs.entry.js.map +1 -1
  36. package/dist/cjs/gov-control-group.cjs.entry.js +6 -7
  37. package/dist/cjs/gov-control-group.cjs.entry.js.map +1 -1
  38. package/dist/cjs/gov-cookiebar.cjs.entry.js +3 -3
  39. package/dist/cjs/gov-dialog.cjs.entry.js +7 -8
  40. package/dist/cjs/gov-dialog.cjs.entry.js.map +1 -1
  41. package/dist/cjs/gov-dropdown.cjs.entry.js +6 -6
  42. package/dist/cjs/gov-empty.cjs.entry.js +5 -6
  43. package/dist/cjs/gov-empty.cjs.entry.js.map +1 -1
  44. package/dist/cjs/gov-error-code.cjs.entry.js +3 -3
  45. package/dist/cjs/gov-flex_4.cjs.entry.js +322 -0
  46. package/dist/cjs/gov-flex_4.cjs.entry.js.map +1 -0
  47. package/dist/cjs/gov-form-autocomplete.cjs.entry.js +6 -8
  48. package/dist/cjs/gov-form-autocomplete.cjs.entry.js.map +1 -1
  49. package/dist/cjs/gov-form-checkbox-group.cjs.entry.js +6 -7
  50. package/dist/cjs/gov-form-checkbox-group.cjs.entry.js.map +1 -1
  51. package/dist/cjs/gov-form-checkbox.cjs.entry.js +9 -10
  52. package/dist/cjs/gov-form-checkbox.cjs.entry.js.map +1 -1
  53. package/dist/cjs/gov-form-control.cjs.entry.js +7 -7
  54. package/dist/cjs/gov-form-file.cjs.entry.js +12 -8
  55. package/dist/cjs/gov-form-file.cjs.entry.js.map +1 -1
  56. package/dist/cjs/gov-form-group.cjs.entry.js +5 -6
  57. package/dist/cjs/gov-form-group.cjs.entry.js.map +1 -1
  58. package/dist/cjs/gov-form-input_2.cjs.entry.js +14 -13
  59. package/dist/cjs/gov-form-input_2.cjs.entry.js.map +1 -1
  60. package/dist/cjs/gov-form-multi-select.cjs.entry.js +13 -29
  61. package/dist/cjs/gov-form-multi-select.cjs.entry.js.map +1 -1
  62. package/dist/cjs/gov-form-password-power.cjs.entry.js +2 -2
  63. package/dist/cjs/gov-form-radio-group.cjs.entry.js +6 -7
  64. package/dist/cjs/gov-form-radio-group.cjs.entry.js.map +1 -1
  65. package/dist/cjs/gov-form-radio.cjs.entry.js +8 -9
  66. package/dist/cjs/gov-form-radio.cjs.entry.js.map +1 -1
  67. package/dist/cjs/gov-form-search.cjs.entry.js +3 -3
  68. package/dist/cjs/gov-form-select.cjs.entry.js +10 -11
  69. package/dist/cjs/gov-form-select.cjs.entry.js.map +1 -1
  70. package/dist/cjs/gov-form-switch.cjs.entry.js +9 -10
  71. package/dist/cjs/gov-form-switch.cjs.entry.js.map +1 -1
  72. package/dist/cjs/gov-grid-item.cjs.entry.js +3 -3
  73. package/dist/cjs/gov-grid.cjs.entry.js +3 -3
  74. package/dist/cjs/gov-infobar.cjs.entry.js +7 -8
  75. package/dist/cjs/gov-infobar.cjs.entry.js.map +1 -1
  76. package/dist/cjs/gov-layout-column.cjs.entry.js +3 -3
  77. package/dist/cjs/gov-layout.cjs.entry.js +3 -3
  78. package/dist/cjs/gov-lifecycle.cjs.entry.js +47 -0
  79. package/dist/cjs/gov-lifecycle.cjs.entry.js.map +1 -0
  80. package/dist/cjs/gov-link.cjs.entry.js +51 -0
  81. package/dist/cjs/gov-link.cjs.entry.js.map +1 -0
  82. package/dist/cjs/gov-loading.cjs.entry.js +5 -6
  83. package/dist/cjs/gov-loading.cjs.entry.js.map +1 -1
  84. package/dist/cjs/gov-message.cjs.entry.js +6 -7
  85. package/dist/cjs/gov-message.cjs.entry.js.map +1 -1
  86. package/dist/cjs/gov-pagination.cjs.entry.js +8 -9
  87. package/dist/cjs/gov-pagination.cjs.entry.js.map +1 -1
  88. package/dist/cjs/gov-spacer.cjs.entry.js +5 -6
  89. package/dist/cjs/gov-spacer.cjs.entry.js.map +1 -1
  90. package/dist/cjs/gov-stepper-item.cjs.entry.js +8 -9
  91. package/dist/cjs/gov-stepper-item.cjs.entry.js.map +1 -1
  92. package/dist/cjs/gov-stepper.cjs.entry.js +7 -8
  93. package/dist/cjs/gov-stepper.cjs.entry.js.map +1 -1
  94. package/dist/cjs/gov-tabs-item.cjs.entry.js +6 -6
  95. package/dist/cjs/gov-tabs.cjs.entry.js +7 -8
  96. package/dist/cjs/gov-tabs.cjs.entry.js.map +1 -1
  97. package/dist/cjs/gov-tag.cjs.entry.js +11 -12
  98. package/dist/cjs/gov-tag.cjs.entry.js.map +1 -1
  99. package/dist/cjs/gov-tile.cjs.entry.js +3 -3
  100. package/dist/cjs/gov-tile.cjs.entry.js.map +1 -1
  101. package/dist/cjs/gov-tiles.cjs.entry.js +3 -3
  102. package/dist/cjs/gov-toast.cjs.entry.js +10 -11
  103. package/dist/cjs/gov-toast.cjs.entry.js.map +1 -1
  104. package/dist/cjs/gov-tooltip-content.cjs.entry.js +5 -5
  105. package/dist/cjs/gov-tooltip-content.cjs.entry.js.map +1 -1
  106. package/dist/cjs/gov-tooltip.cjs.entry.js +12 -13
  107. package/dist/cjs/gov-tooltip.cjs.entry.js.map +1 -1
  108. package/dist/cjs/gov-wizard-item.cjs.entry.js +10 -11
  109. package/dist/cjs/gov-wizard-item.cjs.entry.js.map +1 -1
  110. package/dist/cjs/gov-wizard.cjs.entry.js +10 -11
  111. package/dist/cjs/gov-wizard.cjs.entry.js.map +1 -1
  112. package/dist/cjs/{win-587f4614.js → gov.log-bfea3151.js} +16 -4
  113. package/dist/cjs/gov.log-bfea3151.js.map +1 -0
  114. package/dist/cjs/{index-1af4880c.js → index-7ff4447c.js} +20 -12
  115. package/dist/cjs/index-7ff4447c.js.map +1 -0
  116. package/dist/cjs/loader.cjs.js +2 -2
  117. package/dist/cjs/{props-b8a955b2.js → props-d189860c.js} +2 -2
  118. package/dist/cjs/{props-b8a955b2.js.map → props-d189860c.js.map} +1 -1
  119. package/dist/cjs/{string.utils-2335838f.js → string.utils-b84c81cf.js} +2 -1
  120. package/dist/cjs/string.utils-b84c81cf.js.map +1 -0
  121. package/dist/cjs/{template-b070338f.js → template-39939fd6.js} +1 -20
  122. package/dist/cjs/template-39939fd6.js.map +1 -0
  123. package/dist/cjs/{wcag-31089f70.js → wcag-2927ff73.js} +5 -6
  124. package/dist/cjs/wcag-2927ff73.js.map +1 -0
  125. package/dist/collection/collection-manifest.json +3 -1
  126. package/dist/collection/components/gov-accordion/gov-accordion-item.js +8 -5
  127. package/dist/collection/components/gov-accordion/gov-accordion-item.js.map +1 -1
  128. package/dist/collection/components/gov-attachments/gov-attachments-item.css +6 -35
  129. package/dist/collection/components/gov-attachments/gov-attachments-item.js +1 -1
  130. package/dist/collection/components/gov-attachments/gov-attachments-item.js.map +1 -1
  131. package/dist/collection/components/gov-attachments/gov-attachments.js +1 -1
  132. package/dist/collection/components/gov-backdrop/gov-backdrop.js +1 -1
  133. package/dist/collection/components/gov-breadcrumbs/gov-breadcrumbs.js +1 -1
  134. package/dist/collection/components/gov-breadcrumbs/gov-breadcrumbs.js.map +1 -1
  135. package/dist/collection/components/gov-button/button/gov-button.js +9 -9
  136. package/dist/collection/components/gov-button/button/gov-button.js.map +1 -1
  137. package/dist/collection/components/gov-button/dropdown/gov-dropdown.js +1 -1
  138. package/dist/collection/components/gov-card/gov-card.js +1 -1
  139. package/dist/collection/components/gov-card/gov-card.js.map +1 -1
  140. package/dist/collection/components/gov-chip/gov-chip.js +16 -16
  141. package/dist/collection/components/gov-chip/gov-chip.js.map +1 -1
  142. package/dist/collection/components/gov-container/gov-container.js +2 -38
  143. package/dist/collection/components/gov-container/gov-container.js.map +1 -1
  144. package/dist/collection/components/gov-control-group/gov-control-group.js +1 -1
  145. package/dist/collection/components/gov-cookiebar/gov-cookiebar.js +1 -1
  146. package/dist/collection/components/gov-dialog/gov-dialog.js +1 -1
  147. package/dist/collection/components/gov-dialog/gov-dialog.js.map +1 -1
  148. package/dist/collection/components/gov-empty/gov-empty.js +1 -1
  149. package/dist/collection/components/gov-error-code/gov-error-code.js +1 -1
  150. package/dist/collection/components/gov-flex/constants.js +4 -0
  151. package/dist/collection/components/gov-flex/constants.js.map +1 -0
  152. package/dist/collection/components/gov-flex/gov-flex.js +127 -0
  153. package/dist/collection/components/gov-flex/gov-flex.js.map +1 -0
  154. package/dist/collection/components/gov-form/autocomplete/gov-form-autocomplete.js +1 -20
  155. package/dist/collection/components/gov-form/autocomplete/gov-form-autocomplete.js.map +1 -1
  156. package/dist/collection/components/gov-form/checkbox/gov-form-checkbox.js +1 -1
  157. package/dist/collection/components/gov-form/checkbox/gov-form-checkbox.js.map +1 -1
  158. package/dist/collection/components/gov-form/control/gov-form-control.js +1 -1
  159. package/dist/collection/components/gov-form/file/gov-form-file.js +6 -20
  160. package/dist/collection/components/gov-form/file/gov-form-file.js.map +1 -1
  161. package/dist/collection/components/gov-form/group/gov-form-checkbox-group.js +1 -1
  162. package/dist/collection/components/gov-form/group/gov-form-group.css +7 -36
  163. package/dist/collection/components/gov-form/group/gov-form-group.js +1 -1
  164. package/dist/collection/components/gov-form/group/gov-form-radio-group.js +1 -1
  165. package/dist/collection/components/gov-form/input/constants.js +1 -0
  166. package/dist/collection/components/gov-form/input/constants.js.map +1 -1
  167. package/dist/collection/components/gov-form/input/gov-form-input.js +5 -3
  168. package/dist/collection/components/gov-form/input/gov-form-input.js.map +1 -1
  169. package/dist/collection/components/gov-form/label/gov-form-label.js +1 -1
  170. package/dist/collection/components/gov-form/message/gov-form-message.js +1 -1
  171. package/dist/collection/components/gov-form/multiselect/gov-form-multi-select.js +5 -29
  172. package/dist/collection/components/gov-form/multiselect/gov-form-multi-select.js.map +1 -1
  173. package/dist/collection/components/gov-form/password-power/gov-form-password-power.js +1 -1
  174. package/dist/collection/components/gov-form/search/gov-form-search.js +1 -1
  175. package/dist/collection/components/gov-form/select/gov-form-select.js +2 -2
  176. package/dist/collection/components/gov-form/select/gov-form-select.js.map +1 -1
  177. package/dist/collection/components/gov-form/switch/constants.js +1 -1
  178. package/dist/collection/components/gov-form/switch/constants.js.map +1 -1
  179. package/dist/collection/components/gov-form/switch/gov-form-switch.js +2 -2
  180. package/dist/collection/components/gov-form/switch/gov-form-switch.js.map +1 -1
  181. package/dist/collection/components/gov-grid/gov-grid-item.js +1 -1
  182. package/dist/collection/components/gov-grid/gov-grid.js +1 -1
  183. package/dist/collection/components/gov-icon/constants.js +8 -7
  184. package/dist/collection/components/gov-icon/constants.js.map +1 -1
  185. package/dist/collection/components/gov-icon/gov-icon.js +38 -6
  186. package/dist/collection/components/gov-icon/gov-icon.js.map +1 -1
  187. package/dist/collection/components/gov-icon/list.js +37 -151
  188. package/dist/collection/components/gov-icon/list.js.map +1 -1
  189. package/dist/collection/components/gov-infobar/gov-infobar.js +2 -2
  190. package/dist/collection/components/gov-infobar/gov-infobar.js.map +1 -1
  191. package/dist/collection/components/gov-layout/gov-layout-column.js +1 -1
  192. package/dist/collection/components/gov-layout/gov-layout.js +1 -1
  193. package/dist/collection/components/gov-lifecycle-tester/gov-lifecycle-tester.js +39 -0
  194. package/dist/collection/components/gov-lifecycle-tester/gov-lifecycle-tester.js.map +1 -0
  195. package/dist/collection/components/gov-link/constants.js +7 -0
  196. package/dist/collection/components/gov-link/constants.js.map +1 -0
  197. package/dist/collection/components/gov-link/gov-link.js +129 -0
  198. package/dist/collection/components/gov-link/gov-link.js.map +1 -0
  199. package/dist/collection/components/gov-loading/loading/gov-loading.js +1 -1
  200. package/dist/collection/components/gov-loading/loading/gov-loading.js.map +1 -1
  201. package/dist/collection/components/gov-loading/skeleton/gov-skeleton.js +1 -1
  202. package/dist/collection/components/gov-message/gov-message.js +1 -1
  203. package/dist/collection/components/gov-pagination/gov-pagination.js +2 -2
  204. package/dist/collection/components/gov-pagination/gov-pagination.js.map +1 -1
  205. package/dist/collection/components/gov-spacer/gov-spacer.js +1 -1
  206. package/dist/collection/components/gov-stepper/gov-stepper-item.js +1 -1
  207. package/dist/collection/components/gov-stepper/gov-stepper.js +1 -1
  208. package/dist/collection/components/gov-tabs/gov-tabs-item.js +1 -1
  209. package/dist/collection/components/gov-tabs/gov-tabs.js +1 -1
  210. package/dist/collection/components/gov-tabs/gov-tabs.js.map +1 -1
  211. package/dist/collection/components/gov-tag/gov-tag.js +9 -9
  212. package/dist/collection/components/gov-tag/gov-tag.js.map +1 -1
  213. package/dist/collection/components/gov-theme-switch/constants.js +9 -1
  214. package/dist/collection/components/gov-theme-switch/constants.js.map +1 -1
  215. package/dist/collection/components/gov-theme-switch/gov-theme-switch.js +134 -10
  216. package/dist/collection/components/gov-theme-switch/gov-theme-switch.js.map +1 -1
  217. package/dist/collection/components/gov-tile/container/gov-tiles.js +1 -1
  218. package/dist/collection/components/gov-tile/gov-tile.js +7 -7
  219. package/dist/collection/components/gov-tile/gov-tile.js.map +1 -1
  220. package/dist/collection/components/gov-toast/constants.js +1 -0
  221. package/dist/collection/components/gov-toast/constants.js.map +1 -1
  222. package/dist/collection/components/gov-toast/gov-toast.js +3 -4
  223. package/dist/collection/components/gov-toast/gov-toast.js.map +1 -1
  224. package/dist/collection/components/gov-tooltip/gov-tooltip-content.js +1 -1
  225. package/dist/collection/components/gov-tooltip/gov-tooltip-content.js.map +1 -1
  226. package/dist/collection/components/gov-tooltip/gov-tooltip.js +2 -2
  227. package/dist/collection/components/gov-wizard/gov-wizard-item.js +3 -3
  228. package/dist/collection/components/gov-wizard/gov-wizard-item.js.map +1 -1
  229. package/dist/collection/components/gov-wizard/gov-wizard.js +1 -1
  230. package/dist/collection/core/constants/colors.js +6 -8
  231. package/dist/collection/core/constants/colors.js.map +1 -1
  232. package/dist/collection/data/color-definitions.js +359 -172
  233. package/dist/collection/helpers/Dom/document.js +28 -0
  234. package/dist/collection/helpers/Dom/document.js.map +1 -0
  235. package/dist/collection/helpers/Dom/template.js +0 -18
  236. package/dist/collection/helpers/Dom/template.js.map +1 -1
  237. package/dist/collection/helpers/Dom/template.types.js.map +1 -1
  238. package/dist/collection/pages/Accordion.js +30 -30
  239. package/dist/collection/pages/Accordion.js.map +1 -1
  240. package/dist/collection/pages/Button.js +383 -383
  241. package/dist/collection/pages/Button.js.map +1 -1
  242. package/dist/collection/pages/Chip.js +53 -53
  243. package/dist/collection/pages/Chip.js.map +1 -1
  244. package/dist/collection/pages/ControlGroup.js +18 -18
  245. package/dist/collection/pages/ControlGroup.js.map +1 -1
  246. package/dist/collection/pages/Dialog.js +1 -1
  247. package/dist/collection/pages/Dialog.js.map +1 -1
  248. package/dist/collection/pages/Forms.js +206 -196
  249. package/dist/collection/pages/Forms.js.map +1 -1
  250. package/dist/collection/pages/Grid.js +1 -1
  251. package/dist/collection/pages/Grid.js.map +1 -1
  252. package/dist/collection/pages/Icon.js +10 -0
  253. package/dist/collection/pages/Icon.js.map +1 -1
  254. package/dist/collection/pages/Infobar.js +16 -16
  255. package/dist/collection/pages/Infobar.js.map +1 -1
  256. package/dist/collection/pages/Message.js +20 -20
  257. package/dist/collection/pages/Message.js.map +1 -1
  258. package/dist/collection/pages/Spacer.js +1 -1
  259. package/dist/collection/pages/Spacer.js.map +1 -1
  260. package/dist/collection/pages/Stepper.js +15 -15
  261. package/dist/collection/pages/Stepper.js.map +1 -1
  262. package/dist/collection/pages/Tag.js +135 -160
  263. package/dist/collection/pages/Tag.js.map +1 -1
  264. package/dist/collection/pages/ToastMessage.js +4 -4
  265. package/dist/collection/pages/ToastMessage.js.map +1 -1
  266. package/dist/collection/pages/ToastMessageCountdown.js +4 -4
  267. package/dist/collection/pages/ToastMessageCountdown.js.map +1 -1
  268. package/dist/collection/pages/Tooltip.js +2 -2
  269. package/dist/collection/pages/Tooltip.js.map +1 -1
  270. package/dist/collection/pages/Typography.js +20 -0
  271. package/dist/collection/pages/Typography.js.map +1 -1
  272. package/dist/collection/pages/Wizard.js +2 -2
  273. package/dist/collection/pages/Wizard.js.map +1 -1
  274. package/dist/collection/utils/string.utils.js +1 -1
  275. package/dist/collection/utils/string.utils.js.map +1 -1
  276. package/dist/components/gov-accordion-item.js +1 -1
  277. package/dist/components/gov-accordion-item.js.map +1 -1
  278. package/dist/components/gov-accordion.js +1 -1
  279. package/dist/components/gov-attachments-item.js +1 -1
  280. package/dist/components/gov-attachments.js +1 -1
  281. package/dist/components/gov-backdrop.js +1 -1
  282. package/dist/components/gov-breadcrumbs.js +1 -1
  283. package/dist/components/gov-breadcrumbs.js.map +1 -1
  284. package/dist/components/gov-button.js +1 -1
  285. package/dist/components/gov-card.js +1 -1
  286. package/dist/components/gov-card.js.map +1 -1
  287. package/dist/components/gov-chip.js +1 -1
  288. package/dist/components/gov-container.js +1 -1
  289. package/dist/components/gov-container.js.map +1 -1
  290. package/dist/components/gov-control-group.js +1 -1
  291. package/dist/components/gov-cookiebar.js +1 -1
  292. package/dist/components/gov-dialog.js +1 -1
  293. package/dist/components/gov-dialog.js.map +1 -1
  294. package/dist/components/gov-dropdown.js +1 -1
  295. package/dist/components/gov-dropdown.js.map +1 -1
  296. package/dist/components/gov-empty.js +1 -1
  297. package/dist/components/gov-error-code.js +1 -1
  298. package/dist/components/{gov-app.d.ts → gov-flex.d.ts} +4 -4
  299. package/dist/components/gov-flex.js +2 -0
  300. package/dist/components/gov-flex.js.map +1 -0
  301. package/dist/components/gov-form-autocomplete.js +1 -1
  302. package/dist/components/gov-form-checkbox-group.js +1 -1
  303. package/dist/components/gov-form-checkbox-group.js.map +1 -1
  304. package/dist/components/gov-form-checkbox.js +1 -1
  305. package/dist/components/gov-form-checkbox.js.map +1 -1
  306. package/dist/components/gov-form-control.js +1 -1
  307. package/dist/components/gov-form-file.js +1 -1
  308. package/dist/components/gov-form-file.js.map +1 -1
  309. package/dist/components/gov-form-group.js +1 -1
  310. package/dist/components/gov-form-input.js +1 -1
  311. package/dist/components/gov-form-label.js +1 -1
  312. package/dist/components/gov-form-label.js.map +1 -1
  313. package/dist/components/gov-form-message.js +1 -1
  314. package/dist/components/gov-form-multi-select.js +1 -1
  315. package/dist/components/gov-form-multi-select.js.map +1 -1
  316. package/dist/components/gov-form-password-power.js +1 -1
  317. package/dist/components/gov-form-radio-group.js +1 -1
  318. package/dist/components/gov-form-radio-group.js.map +1 -1
  319. package/dist/components/gov-form-radio.js +1 -1
  320. package/dist/components/gov-form-search.js +1 -1
  321. package/dist/components/gov-form-select.js +1 -1
  322. package/dist/components/gov-form-switch.js +1 -1
  323. package/dist/components/gov-form-switch.js.map +1 -1
  324. package/dist/components/gov-grid-item.js +1 -1
  325. package/dist/components/gov-grid.js +1 -1
  326. package/dist/components/gov-icon.js +1 -1
  327. package/dist/components/gov-infobar.js +1 -1
  328. package/dist/components/gov-infobar.js.map +1 -1
  329. package/dist/components/gov-layout-column.js +1 -1
  330. package/dist/components/gov-layout.js +1 -1
  331. package/dist/components/gov-lifecycle.d.ts +11 -0
  332. package/dist/components/gov-lifecycle.js +2 -0
  333. package/dist/components/gov-lifecycle.js.map +1 -0
  334. package/dist/components/gov-link.d.ts +11 -0
  335. package/dist/components/gov-link.js +2 -0
  336. package/dist/components/gov-link.js.map +1 -0
  337. package/dist/components/gov-loading.js +1 -1
  338. package/dist/components/gov-loading.js.map +1 -1
  339. package/dist/components/gov-message.js +1 -1
  340. package/dist/components/gov-pagination.js +1 -1
  341. package/dist/components/gov-pagination.js.map +1 -1
  342. package/dist/components/gov-skeleton.js +1 -1
  343. package/dist/components/gov-spacer.js +1 -1
  344. package/dist/components/gov-stepper-item.js +1 -1
  345. package/dist/components/gov-stepper.js +1 -1
  346. package/dist/components/gov-tabs-item.js +1 -1
  347. package/dist/components/gov-tabs.js +1 -1
  348. package/dist/components/gov-tabs.js.map +1 -1
  349. package/dist/components/gov-tag.js +1 -1
  350. package/dist/components/gov-tag.js.map +1 -1
  351. package/dist/components/gov-theme-switch.js +1 -1
  352. package/dist/components/gov-theme-switch.js.map +1 -1
  353. package/dist/components/gov-tile.js +1 -1
  354. package/dist/components/gov-tile.js.map +1 -1
  355. package/dist/components/gov-tiles.js +1 -1
  356. package/dist/components/gov-toast.js +1 -1
  357. package/dist/components/gov-toast.js.map +1 -1
  358. package/dist/components/gov-tooltip-content.js +1 -1
  359. package/dist/components/gov-tooltip-content.js.map +1 -1
  360. package/dist/components/gov-tooltip.js +1 -1
  361. package/dist/components/gov-tooltip.js.map +1 -1
  362. package/dist/components/gov-wizard-item.js +1 -1
  363. package/dist/components/gov-wizard-item.js.map +1 -1
  364. package/dist/components/gov-wizard.js +1 -1
  365. package/dist/components/index.js +1 -1
  366. package/dist/components/p-20c2203a.js +2 -0
  367. package/dist/components/p-20c2203a.js.map +1 -0
  368. package/dist/components/p-227eb30d.js +2 -0
  369. package/dist/components/{p-9a93146e.js.map → p-227eb30d.js.map} +1 -1
  370. package/dist/components/p-2b87c27b.js +2 -0
  371. package/dist/components/{p-7fd16831.js.map → p-2b87c27b.js.map} +1 -1
  372. package/dist/components/p-31a99bfc.js +2 -0
  373. package/dist/components/p-4149f195.js +2 -0
  374. package/dist/components/{p-ae3dada7.js → p-42200001.js} +3 -3
  375. package/dist/components/p-42200001.js.map +1 -0
  376. package/dist/components/p-44a8a668.js +2 -0
  377. package/dist/components/p-45097b4c.js +2 -0
  378. package/dist/components/p-45097b4c.js.map +1 -0
  379. package/dist/components/p-5952a5d0.js +2 -0
  380. package/dist/components/p-5aad3497.js +2 -0
  381. package/dist/components/p-5aad3497.js.map +1 -0
  382. package/dist/components/p-68a1aaec.js +2 -0
  383. package/dist/components/p-68a1aaec.js.map +1 -0
  384. package/dist/components/p-76d604c6.js +2 -0
  385. package/dist/components/p-7d4f2214.js +2 -0
  386. package/dist/components/{p-1366ed8d.js.map → p-7d4f2214.js.map} +1 -1
  387. package/dist/components/p-7f3becc5.js +2 -0
  388. package/dist/components/p-859a4f0d.js +2 -0
  389. package/dist/components/{p-dbae2385.js.map → p-859a4f0d.js.map} +1 -1
  390. package/dist/components/{p-7f8a24a7.js → p-860520b0.js} +2 -2
  391. package/dist/components/p-880743a5.js.map +1 -1
  392. package/dist/components/p-929ebfb5.js +2 -0
  393. package/dist/components/p-929ebfb5.js.map +1 -0
  394. package/dist/components/p-9908b9f0.js +2 -0
  395. package/dist/components/p-9908b9f0.js.map +1 -0
  396. package/dist/components/{p-19c681a3.js → p-a2435993.js} +2 -2
  397. package/dist/components/{p-59737af9.js → p-a521c59a.js} +2 -2
  398. package/dist/components/{p-0c93dd39.js → p-c61a5830.js} +2 -2
  399. package/dist/components/{p-95d41a3b.js → p-cd6c2938.js} +2 -2
  400. package/dist/components/p-cd6c2938.js.map +1 -0
  401. package/dist/components/p-dc952cc2.js +2 -0
  402. package/dist/components/p-dc952cc2.js.map +1 -0
  403. package/dist/components/{p-6e19816b.js → p-dfb5794a.js} +2 -2
  404. package/dist/components/p-ea7fdd2e.js +2 -0
  405. package/dist/components/p-ea7fdd2e.js.map +1 -0
  406. package/dist/components/p-f44899e1.js +2 -0
  407. package/dist/components/p-f44899e1.js.map +1 -0
  408. package/dist/core/core.css +8256 -7340
  409. package/dist/core/core.esm.js +1 -1
  410. package/dist/core/core.esm.js.map +1 -1
  411. package/dist/core/p-00d153bf.entry.js +2 -0
  412. package/dist/core/p-019e967c.entry.js +2 -0
  413. package/dist/core/{p-eeb9cb73.entry.js.map → p-019e967c.entry.js.map} +1 -1
  414. package/dist/core/p-0be19b89.entry.js +2 -0
  415. package/dist/core/p-1abdcb62.entry.js +2 -0
  416. package/dist/core/p-1abdcb62.entry.js.map +1 -0
  417. package/dist/core/p-1ac9544f.entry.js +2 -0
  418. package/dist/core/{p-35e66bef.entry.js.map → p-1ac9544f.entry.js.map} +1 -1
  419. package/dist/core/p-1b3c808d.entry.js +2 -0
  420. package/dist/core/p-1b3c808d.entry.js.map +1 -0
  421. package/dist/core/p-20c2203a.js +2 -0
  422. package/dist/core/p-20c2203a.js.map +1 -0
  423. package/dist/core/p-22fa411d.entry.js +2 -0
  424. package/dist/core/p-2c290fe5.entry.js +2 -0
  425. package/dist/core/p-2c290fe5.entry.js.map +1 -0
  426. package/dist/core/p-2c59483f.entry.js +2 -0
  427. package/dist/core/p-2c59483f.entry.js.map +1 -0
  428. package/dist/core/p-30eaeeec.entry.js +2 -0
  429. package/dist/core/p-3bbb77a0.js +2 -0
  430. package/dist/core/p-3fc3c26b.entry.js +2 -0
  431. package/dist/core/{p-db940455.entry.js.map → p-3fc3c26b.entry.js.map} +1 -1
  432. package/dist/core/p-40d764ac.entry.js +2 -0
  433. package/dist/core/{p-9ff8f059.entry.js.map → p-40d764ac.entry.js.map} +1 -1
  434. package/dist/core/p-410ec0dd.entry.js +2 -0
  435. package/dist/core/{p-17015e36.entry.js.map → p-410ec0dd.entry.js.map} +1 -1
  436. package/dist/core/p-439b66a5.entry.js +2 -0
  437. package/dist/core/{p-a53a277a.entry.js.map → p-439b66a5.entry.js.map} +1 -1
  438. package/dist/core/p-443a813a.entry.js +2 -0
  439. package/dist/core/{p-2ed3afef.entry.js.map → p-443a813a.entry.js.map} +1 -1
  440. package/dist/core/p-48c93ac0.entry.js +2 -0
  441. package/dist/core/p-48c93ac0.entry.js.map +1 -0
  442. package/dist/core/p-52ca31be.entry.js +2 -0
  443. package/dist/core/{p-fa7caad6.entry.js.map → p-52ca31be.entry.js.map} +1 -1
  444. package/dist/core/p-535316b4.entry.js +2 -0
  445. package/dist/core/p-5396935e.entry.js +2 -0
  446. package/dist/core/{p-42d9924c.js → p-56efd4a2.js} +2 -2
  447. package/dist/core/p-5aad3497.js +2 -0
  448. package/dist/core/p-5aad3497.js.map +1 -0
  449. package/dist/core/p-5b2131c1.entry.js +2 -0
  450. package/dist/core/p-5ed63e9c.entry.js +2 -0
  451. package/dist/core/{p-5dcbfca3.entry.js.map → p-5ed63e9c.entry.js.map} +1 -1
  452. package/dist/core/{p-60658ae9.js → p-5f1000da.js} +2 -2
  453. package/dist/core/p-6454af62.entry.js +2 -0
  454. package/dist/core/{p-182189d2.entry.js.map → p-6454af62.entry.js.map} +1 -1
  455. package/dist/core/p-74458da3.entry.js +2 -0
  456. package/dist/core/p-74458da3.entry.js.map +1 -0
  457. package/dist/core/p-76d604c6.js +2 -0
  458. package/dist/core/{p-a21dc94f.js.map → p-76d604c6.js.map} +1 -1
  459. package/dist/core/p-773f71f6.entry.js +2 -0
  460. package/dist/core/{p-f1be099b.entry.js.map → p-773f71f6.entry.js.map} +1 -1
  461. package/dist/core/p-783a6b5b.entry.js +2 -0
  462. package/dist/core/{p-9d0f20ec.entry.js.map → p-783a6b5b.entry.js.map} +1 -1
  463. package/dist/core/p-7b7e502b.entry.js +2 -0
  464. package/dist/core/p-7ba4daf4.js +2 -0
  465. package/dist/core/p-7bf52eb9.entry.js +2 -0
  466. package/dist/core/p-7bf52eb9.entry.js.map +1 -0
  467. package/dist/core/p-7d6073aa.entry.js +2 -0
  468. package/dist/core/{p-7cf554e6.entry.js.map → p-7d6073aa.entry.js.map} +1 -1
  469. package/dist/core/p-7f3becc5.js +2 -0
  470. package/dist/core/{p-a1e95a5f.js → p-8506b611.js} +3 -3
  471. package/dist/core/p-8506b611.js.map +1 -0
  472. package/dist/core/{p-e9a6cd71.js → p-860520b0.js} +2 -2
  473. package/dist/core/p-8701c28e.entry.js +2 -0
  474. package/dist/core/p-8701c28e.entry.js.map +1 -0
  475. package/dist/core/p-880743a5.js.map +1 -1
  476. package/dist/core/p-951823cb.entry.js +2 -0
  477. package/dist/core/{p-963f9fcd.entry.js.map → p-951823cb.entry.js.map} +1 -1
  478. package/dist/core/p-9da91318.entry.js +2 -0
  479. package/dist/core/{p-9b41ac88.entry.js.map → p-9da91318.entry.js.map} +1 -1
  480. package/dist/core/p-a218e2eb.entry.js +2 -0
  481. package/dist/core/{p-d2351924.entry.js.map → p-a218e2eb.entry.js.map} +1 -1
  482. package/dist/core/{p-169b67af.js → p-a2435993.js} +2 -2
  483. package/dist/core/p-a521c59a.js +2 -0
  484. package/dist/core/p-b1efeb41.entry.js +2 -0
  485. package/dist/core/p-b1efeb41.entry.js.map +1 -0
  486. package/dist/core/p-b4af0bec.entry.js +2 -0
  487. package/dist/core/p-b4af0bec.entry.js.map +1 -0
  488. package/dist/core/p-bc966c46.entry.js +2 -0
  489. package/dist/core/{p-83039b10.entry.js.map → p-bc966c46.entry.js.map} +1 -1
  490. package/dist/core/p-bdc51179.entry.js +2 -0
  491. package/dist/core/p-bdc51179.entry.js.map +1 -0
  492. package/dist/core/p-c20fe3da.entry.js +2 -0
  493. package/dist/core/{p-f456bd71.entry.js.map → p-c20fe3da.entry.js.map} +1 -1
  494. package/dist/core/p-c4ffcc37.entry.js +2 -0
  495. package/dist/core/p-c4ffcc37.entry.js.map +1 -0
  496. package/dist/core/p-c52afdfc.js +2 -0
  497. package/dist/core/{p-28a7d3f7.js.map → p-c52afdfc.js.map} +1 -1
  498. package/dist/core/{p-c990d746.js → p-c61a5830.js} +2 -2
  499. package/dist/core/p-cb557873.entry.js +2 -0
  500. package/dist/core/{p-0ebc8365.entry.js.map → p-cb557873.entry.js.map} +1 -1
  501. package/dist/core/{p-95d41a3b.js → p-cd6c2938.js} +2 -2
  502. package/dist/core/p-cd6c2938.js.map +1 -0
  503. package/dist/core/p-d24710ff.entry.js +2 -0
  504. package/dist/core/p-d24710ff.entry.js.map +1 -0
  505. package/dist/core/p-d65cef62.entry.js +2 -0
  506. package/dist/core/{p-aa8adc45.entry.js.map → p-d65cef62.entry.js.map} +1 -1
  507. package/dist/core/p-da1db6fd.js +2 -0
  508. package/dist/core/p-da1db6fd.js.map +1 -0
  509. package/dist/core/p-db22d51c.entry.js +2 -0
  510. package/dist/core/{p-dc3fab19.entry.js.map → p-db22d51c.entry.js.map} +1 -1
  511. package/dist/core/p-dec3f948.entry.js +2 -0
  512. package/dist/core/{p-ab9ae7ba.entry.js.map → p-dec3f948.entry.js.map} +1 -1
  513. package/dist/core/{p-45a30859.js → p-e0e2e9c1.js} +2 -2
  514. package/dist/core/p-e2517a72.entry.js +2 -0
  515. package/dist/core/{p-b55fc943.entry.js.map → p-e2517a72.entry.js.map} +1 -1
  516. package/dist/core/p-e44a0fee.js +2 -0
  517. package/dist/core/p-e834ee73.entry.js +2 -0
  518. package/dist/core/p-e834ee73.entry.js.map +1 -0
  519. package/dist/core/p-ea7fdd2e.js +2 -0
  520. package/dist/core/p-ea7fdd2e.js.map +1 -0
  521. package/dist/core/p-ed1131cb.entry.js +2 -0
  522. package/dist/core/{p-6d772ff9.entry.js.map → p-ed1131cb.entry.js.map} +1 -1
  523. package/dist/core/p-f1056a83.entry.js +2 -0
  524. package/dist/core/{p-b3acb156.entry.js.map → p-f1056a83.entry.js.map} +1 -1
  525. package/dist/core/p-f1fa5e1e.entry.js +2 -0
  526. package/dist/core/{p-e4978aab.entry.js.map → p-f1fa5e1e.entry.js.map} +1 -1
  527. package/dist/core/p-f4bcf817.entry.js +2 -0
  528. package/dist/core/p-f4bcf817.entry.js.map +1 -0
  529. package/dist/core/p-f6709826.entry.js +2 -0
  530. package/dist/core/p-f6709826.entry.js.map +1 -0
  531. package/dist/core/p-f7a4da9d.entry.js +2 -0
  532. package/dist/core/{p-a5489b0e.entry.js.map → p-f7a4da9d.entry.js.map} +1 -1
  533. package/dist/core/p-fca60e04.entry.js +2 -0
  534. package/dist/core/{p-663d3db2.entry.js.map → p-fca60e04.entry.js.map} +1 -1
  535. package/dist/core/p-fe6fed11.entry.js +2 -0
  536. package/dist/core/p-fe6fed11.entry.js.map +1 -0
  537. package/dist/esm/{colors-02c1ea96.js → colors-4cf64720.js} +7 -9
  538. package/dist/esm/colors-4cf64720.js.map +1 -0
  539. package/dist/esm/{constants-6d727976.js → constants-085f9943.js} +2 -2
  540. package/dist/esm/{constants-6d727976.js.map → constants-085f9943.js.map} +1 -1
  541. package/dist/esm/{constants-990365f1.js → constants-372455eb.js} +3 -3
  542. package/dist/esm/{constants-990365f1.js.map → constants-372455eb.js.map} +1 -1
  543. package/dist/esm/{constants-d6418889.js → constants-3ab65c42.js} +2 -2
  544. package/dist/esm/{constants-d6418889.js.map → constants-3ab65c42.js.map} +1 -1
  545. package/dist/esm/{constants-48177684.js → constants-3b914c35.js} +3 -3
  546. package/dist/esm/{constants-48177684.js.map → constants-3b914c35.js.map} +1 -1
  547. package/dist/esm/{constants-d42abf99.js → constants-43f10674.js} +2 -2
  548. package/dist/esm/{constants-d42abf99.js.map → constants-43f10674.js.map} +1 -1
  549. package/dist/esm/{constants-501eb756.js → constants-4da2b3c0.js} +2 -2
  550. package/dist/esm/{constants-501eb756.js.map → constants-4da2b3c0.js.map} +1 -1
  551. package/dist/esm/{constants-c716fa44.js → constants-51f51588.js} +3 -3
  552. package/dist/esm/{constants-c716fa44.js.map → constants-51f51588.js.map} +1 -1
  553. package/dist/esm/{constants-f4e4ede6.js → constants-8429b68f.js} +3 -3
  554. package/dist/esm/{constants-f4e4ede6.js.map → constants-8429b68f.js.map} +1 -1
  555. package/dist/esm/{constants-47e20524.js → constants-9177ea52.js} +3 -3
  556. package/dist/esm/{constants-47e20524.js.map → constants-9177ea52.js.map} +1 -1
  557. package/dist/esm/{constants-7307438d.js → constants-bc210662.js} +3 -3
  558. package/dist/esm/{constants-7307438d.js.map → constants-bc210662.js.map} +1 -1
  559. package/dist/esm/core.js +3 -3
  560. package/dist/esm/{form-472e078d.js → form-713f26fd.js} +7 -6
  561. package/dist/esm/form-713f26fd.js.map +1 -0
  562. package/dist/esm/gov-accordion-item.entry.js +13 -11
  563. package/dist/esm/gov-accordion-item.entry.js.map +1 -1
  564. package/dist/esm/gov-accordion.entry.js +6 -7
  565. package/dist/esm/gov-accordion.entry.js.map +1 -1
  566. package/dist/esm/gov-attachments_3.entry.js +13 -14
  567. package/dist/esm/gov-attachments_3.entry.js.map +1 -1
  568. package/dist/esm/gov-backdrop.entry.js +7 -8
  569. package/dist/esm/gov-backdrop.entry.js.map +1 -1
  570. package/dist/esm/gov-breadcrumbs.entry.js +7 -8
  571. package/dist/esm/gov-breadcrumbs.entry.js.map +1 -1
  572. package/dist/esm/gov-button.entry.js +12 -13
  573. package/dist/esm/gov-button.entry.js.map +1 -1
  574. package/dist/esm/gov-card.entry.js +7 -8
  575. package/dist/esm/gov-card.entry.js.map +1 -1
  576. package/dist/esm/gov-chip.entry.js +14 -15
  577. package/dist/esm/gov-chip.entry.js.map +1 -1
  578. package/dist/esm/gov-container.entry.js +3 -11
  579. package/dist/esm/gov-container.entry.js.map +1 -1
  580. package/dist/esm/gov-control-group.entry.js +7 -8
  581. package/dist/esm/gov-control-group.entry.js.map +1 -1
  582. package/dist/esm/gov-cookiebar.entry.js +3 -3
  583. package/dist/esm/gov-dialog.entry.js +7 -8
  584. package/dist/esm/gov-dialog.entry.js.map +1 -1
  585. package/dist/esm/gov-dropdown.entry.js +7 -7
  586. package/dist/esm/gov-empty.entry.js +7 -8
  587. package/dist/esm/gov-empty.entry.js.map +1 -1
  588. package/dist/esm/gov-error-code.entry.js +3 -3
  589. package/dist/esm/gov-flex_4.entry.js +315 -0
  590. package/dist/esm/gov-flex_4.entry.js.map +1 -0
  591. package/dist/esm/gov-form-autocomplete.entry.js +8 -10
  592. package/dist/esm/gov-form-autocomplete.entry.js.map +1 -1
  593. package/dist/esm/gov-form-checkbox-group.entry.js +8 -9
  594. package/dist/esm/gov-form-checkbox-group.entry.js.map +1 -1
  595. package/dist/esm/gov-form-checkbox.entry.js +12 -13
  596. package/dist/esm/gov-form-checkbox.entry.js.map +1 -1
  597. package/dist/esm/gov-form-control.entry.js +10 -10
  598. package/dist/esm/gov-form-file.entry.js +15 -11
  599. package/dist/esm/gov-form-file.entry.js.map +1 -1
  600. package/dist/esm/gov-form-group.entry.js +7 -8
  601. package/dist/esm/gov-form-group.entry.js.map +1 -1
  602. package/dist/esm/gov-form-input_2.entry.js +17 -16
  603. package/dist/esm/gov-form-input_2.entry.js.map +1 -1
  604. package/dist/esm/gov-form-multi-select.entry.js +16 -32
  605. package/dist/esm/gov-form-multi-select.entry.js.map +1 -1
  606. package/dist/esm/gov-form-password-power.entry.js +2 -2
  607. package/dist/esm/gov-form-radio-group.entry.js +8 -9
  608. package/dist/esm/gov-form-radio-group.entry.js.map +1 -1
  609. package/dist/esm/gov-form-radio.entry.js +11 -12
  610. package/dist/esm/gov-form-radio.entry.js.map +1 -1
  611. package/dist/esm/gov-form-search.entry.js +4 -4
  612. package/dist/esm/gov-form-select.entry.js +13 -14
  613. package/dist/esm/gov-form-select.entry.js.map +1 -1
  614. package/dist/esm/gov-form-switch.entry.js +12 -13
  615. package/dist/esm/gov-form-switch.entry.js.map +1 -1
  616. package/dist/esm/gov-grid-item.entry.js +3 -3
  617. package/dist/esm/gov-grid.entry.js +3 -3
  618. package/dist/esm/gov-infobar.entry.js +8 -9
  619. package/dist/esm/gov-infobar.entry.js.map +1 -1
  620. package/dist/esm/gov-layout-column.entry.js +3 -3
  621. package/dist/esm/gov-layout.entry.js +3 -3
  622. package/dist/esm/gov-lifecycle.entry.js +43 -0
  623. package/dist/esm/gov-lifecycle.entry.js.map +1 -0
  624. package/dist/esm/gov-link.entry.js +47 -0
  625. package/dist/esm/gov-link.entry.js.map +1 -0
  626. package/dist/esm/gov-loading.entry.js +6 -7
  627. package/dist/esm/gov-loading.entry.js.map +1 -1
  628. package/dist/esm/gov-message.entry.js +7 -8
  629. package/dist/esm/gov-message.entry.js.map +1 -1
  630. package/dist/esm/gov-pagination.entry.js +9 -10
  631. package/dist/esm/gov-pagination.entry.js.map +1 -1
  632. package/dist/esm/gov-spacer.entry.js +6 -7
  633. package/dist/esm/gov-spacer.entry.js.map +1 -1
  634. package/dist/esm/gov-stepper-item.entry.js +9 -10
  635. package/dist/esm/gov-stepper-item.entry.js.map +1 -1
  636. package/dist/esm/gov-stepper.entry.js +8 -9
  637. package/dist/esm/gov-stepper.entry.js.map +1 -1
  638. package/dist/esm/gov-tabs-item.entry.js +7 -7
  639. package/dist/esm/gov-tabs.entry.js +8 -9
  640. package/dist/esm/gov-tabs.entry.js.map +1 -1
  641. package/dist/esm/gov-tag.entry.js +12 -13
  642. package/dist/esm/gov-tag.entry.js.map +1 -1
  643. package/dist/esm/gov-tile.entry.js +4 -4
  644. package/dist/esm/gov-tile.entry.js.map +1 -1
  645. package/dist/esm/gov-tiles.entry.js +3 -3
  646. package/dist/esm/gov-toast.entry.js +11 -12
  647. package/dist/esm/gov-toast.entry.js.map +1 -1
  648. package/dist/esm/gov-tooltip-content.entry.js +6 -6
  649. package/dist/esm/gov-tooltip-content.entry.js.map +1 -1
  650. package/dist/esm/gov-tooltip.entry.js +10 -11
  651. package/dist/esm/gov-tooltip.entry.js.map +1 -1
  652. package/dist/esm/gov-wizard-item.entry.js +11 -12
  653. package/dist/esm/gov-wizard-item.entry.js.map +1 -1
  654. package/dist/esm/gov-wizard.entry.js +10 -11
  655. package/dist/esm/gov-wizard.entry.js.map +1 -1
  656. package/dist/esm/{win-cec370ad.js → gov.log-066c3139.js} +17 -3
  657. package/dist/esm/gov.log-066c3139.js.map +1 -0
  658. package/dist/esm/{index-d8b4eb6c.js → index-c263e031.js} +20 -12
  659. package/dist/esm/index-c263e031.js.map +1 -0
  660. package/dist/esm/loader.js +3 -3
  661. package/dist/esm/{props-c82e1abf.js → props-fb6587c3.js} +2 -2
  662. package/dist/esm/{props-c82e1abf.js.map → props-fb6587c3.js.map} +1 -1
  663. package/dist/esm/{string.utils-5ce3f551.js → string.utils-1da8f8fb.js} +2 -2
  664. package/dist/esm/string.utils-1da8f8fb.js.map +1 -0
  665. package/dist/esm/{template-3d84d705.js → template-7ecee4d1.js} +2 -20
  666. package/dist/esm/template-7ecee4d1.js.map +1 -0
  667. package/dist/esm/{utils-2b4ef320.js → utils-e10e994d.js} +2 -2
  668. package/dist/esm/{utils-2b4ef320.js.map → utils-e10e994d.js.map} +1 -1
  669. package/dist/esm/{wcag-fa5ce56c.js → wcag-de9a3dc6.js} +3 -4
  670. package/dist/esm/wcag-de9a3dc6.js.map +1 -0
  671. package/dist/hydrate/index.js +418 -10076
  672. package/dist/hydrate/index.mjs +418 -10076
  673. package/dist/stencil.config.js +9 -6
  674. package/dist/stencil.config.js.map +1 -1
  675. package/dist/types/components/gov-accordion/gov-accordion-item.d.ts +1 -0
  676. package/dist/types/components/gov-button/button/gov-button.d.ts +1 -1
  677. package/dist/types/components/gov-chip/gov-chip.d.ts +3 -3
  678. package/dist/types/components/gov-container/gov-container.d.ts +0 -6
  679. package/dist/types/components/gov-flex/constants.d.ts +3 -0
  680. package/dist/types/components/gov-flex/gov-flex.d.ts +33 -0
  681. package/dist/types/components/gov-form/autocomplete/gov-form-autocomplete.d.ts +0 -4
  682. package/dist/types/components/gov-form/file/gov-form-file.d.ts +1 -4
  683. package/dist/types/components/gov-form/input/constants.d.ts +1 -0
  684. package/dist/types/components/gov-form/multiselect/gov-form-multi-select.d.ts +0 -2
  685. package/dist/types/components/gov-form/switch/constants.d.ts +1 -1
  686. package/dist/types/components/gov-icon/constants.d.ts +4 -1
  687. package/dist/types/components/gov-icon/gov-icon.d.ts +8 -2
  688. package/dist/types/components/gov-icon/list.d.ts +1 -1
  689. package/dist/types/components/gov-lifecycle-tester/gov-lifecycle-tester.d.ts +14 -0
  690. package/dist/types/components/gov-link/constants.d.ts +7 -0
  691. package/dist/types/components/gov-link/gov-link.d.ts +30 -0
  692. package/dist/types/components/gov-tag/gov-tag.d.ts +2 -2
  693. package/dist/types/components/gov-theme-switch/constants.d.ts +9 -0
  694. package/dist/types/components/gov-theme-switch/gov-theme-switch.d.ts +26 -2
  695. package/dist/types/components/gov-tile/gov-tile.d.ts +1 -1
  696. package/dist/types/components/gov-toast/constants.d.ts +1 -0
  697. package/dist/types/components.d.ts +191 -50
  698. package/dist/types/core/constants/colors.d.ts +6 -8
  699. package/dist/types/helpers/Dom/document.d.ts +3 -0
  700. package/dist/types/helpers/Dom/template.d.ts +0 -1
  701. package/dist/types/helpers/Dom/template.types.d.ts +0 -1
  702. package/dist/types/utils/string.utils.d.ts +1 -0
  703. package/package.json +3 -3
  704. package/dist/cjs/colors-976f6dff.js.map +0 -1
  705. package/dist/cjs/form-c1aec07a.js.map +0 -1
  706. package/dist/cjs/gov-app_2.cjs.entry.js +0 -9891
  707. package/dist/cjs/gov-app_2.cjs.entry.js.map +0 -1
  708. package/dist/cjs/gov-form-label.cjs.entry.js +0 -27
  709. package/dist/cjs/gov-form-label.cjs.entry.js.map +0 -1
  710. package/dist/cjs/gov-icon.cjs.entry.js +0 -161
  711. package/dist/cjs/gov-icon.cjs.entry.js.map +0 -1
  712. package/dist/cjs/gov.log-1e8bab6e.js +0 -21
  713. package/dist/cjs/gov.log-1e8bab6e.js.map +0 -1
  714. package/dist/cjs/index-1af4880c.js.map +0 -1
  715. package/dist/cjs/string.utils-2335838f.js.map +0 -1
  716. package/dist/cjs/template-b070338f.js.map +0 -1
  717. package/dist/cjs/wcag-31089f70.js.map +0 -1
  718. package/dist/cjs/win-587f4614.js.map +0 -1
  719. package/dist/collection/components/gov-app/gov-app.css +0 -68
  720. package/dist/collection/components/gov-app/gov-app.js +0 -93
  721. package/dist/collection/components/gov-app/gov-app.js.map +0 -1
  722. package/dist/components/gov-app.js +0 -2
  723. package/dist/components/gov-app.js.map +0 -1
  724. package/dist/components/p-0075138f.js +0 -2
  725. package/dist/components/p-0075138f.js.map +0 -1
  726. package/dist/components/p-08621bdf.js +0 -2
  727. package/dist/components/p-1366ed8d.js +0 -2
  728. package/dist/components/p-1a0b3b4f.js +0 -2
  729. package/dist/components/p-1a0b3b4f.js.map +0 -1
  730. package/dist/components/p-255d0471.js +0 -2
  731. package/dist/components/p-255d0471.js.map +0 -1
  732. package/dist/components/p-565120d5.js +0 -2
  733. package/dist/components/p-736e4917.js +0 -2
  734. package/dist/components/p-7501abe8.js +0 -2
  735. package/dist/components/p-7501abe8.js.map +0 -1
  736. package/dist/components/p-778e3fff.js +0 -2
  737. package/dist/components/p-778e3fff.js.map +0 -1
  738. package/dist/components/p-7fd16831.js +0 -2
  739. package/dist/components/p-95d41a3b.js.map +0 -1
  740. package/dist/components/p-9a93146e.js +0 -2
  741. package/dist/components/p-ae3dada7.js.map +0 -1
  742. package/dist/components/p-ae7e6127.js +0 -2
  743. package/dist/components/p-cc90a508.js +0 -2
  744. package/dist/components/p-cc90a508.js.map +0 -1
  745. package/dist/components/p-d5f25595.js +0 -2
  746. package/dist/components/p-d5f25595.js.map +0 -1
  747. package/dist/components/p-dbae2385.js +0 -2
  748. package/dist/components/p-dcaf0383.js +0 -2
  749. package/dist/components/p-dcaf0383.js.map +0 -1
  750. package/dist/components/p-e183a7c7.js +0 -2
  751. package/dist/components/p-e3aeaca0.js +0 -2
  752. package/dist/components/p-e3aeaca0.js.map +0 -1
  753. package/dist/components/p-edd1417b.js +0 -2
  754. package/dist/core/p-006e52f1.entry.js +0 -2
  755. package/dist/core/p-006e52f1.entry.js.map +0 -1
  756. package/dist/core/p-0075138f.js +0 -2
  757. package/dist/core/p-0075138f.js.map +0 -1
  758. package/dist/core/p-023787b3.entry.js +0 -2
  759. package/dist/core/p-023787b3.entry.js.map +0 -1
  760. package/dist/core/p-052cc573.js +0 -2
  761. package/dist/core/p-0a952b3c.entry.js +0 -2
  762. package/dist/core/p-0a952b3c.entry.js.map +0 -1
  763. package/dist/core/p-0ebc8365.entry.js +0 -2
  764. package/dist/core/p-17015e36.entry.js +0 -2
  765. package/dist/core/p-182189d2.entry.js +0 -2
  766. package/dist/core/p-2614044c.js +0 -2
  767. package/dist/core/p-28a7d3f7.js +0 -2
  768. package/dist/core/p-2ed3afef.entry.js +0 -2
  769. package/dist/core/p-2effdd60.entry.js +0 -2
  770. package/dist/core/p-2effdd60.entry.js.map +0 -1
  771. package/dist/core/p-35e66bef.entry.js +0 -2
  772. package/dist/core/p-3f2b803c.entry.js +0 -2
  773. package/dist/core/p-477a5027.entry.js +0 -2
  774. package/dist/core/p-477a5027.entry.js.map +0 -1
  775. package/dist/core/p-47e364bb.entry.js +0 -2
  776. package/dist/core/p-47e364bb.entry.js.map +0 -1
  777. package/dist/core/p-4bce896c.js +0 -2
  778. package/dist/core/p-5c88f415.entry.js +0 -2
  779. package/dist/core/p-5c88f415.entry.js.map +0 -1
  780. package/dist/core/p-5dc0af54.entry.js +0 -2
  781. package/dist/core/p-5dc0af54.entry.js.map +0 -1
  782. package/dist/core/p-5dcbfca3.entry.js +0 -2
  783. package/dist/core/p-663d3db2.entry.js +0 -2
  784. package/dist/core/p-69d56f17.js +0 -2
  785. package/dist/core/p-6aa40794.js +0 -2
  786. package/dist/core/p-6b42a387.entry.js +0 -2
  787. package/dist/core/p-6d772ff9.entry.js +0 -2
  788. package/dist/core/p-6ed147a6.entry.js +0 -2
  789. package/dist/core/p-6ed147a6.entry.js.map +0 -1
  790. package/dist/core/p-7cf554e6.entry.js +0 -2
  791. package/dist/core/p-81b0848c.entry.js +0 -2
  792. package/dist/core/p-81b0848c.entry.js.map +0 -1
  793. package/dist/core/p-83039b10.entry.js +0 -2
  794. package/dist/core/p-904de5e6.entry.js +0 -2
  795. package/dist/core/p-904de5e6.entry.js.map +0 -1
  796. package/dist/core/p-91a9cd24.entry.js +0 -2
  797. package/dist/core/p-95d41a3b.js.map +0 -1
  798. package/dist/core/p-963f9fcd.entry.js +0 -2
  799. package/dist/core/p-9b41ac88.entry.js +0 -2
  800. package/dist/core/p-9d0f20ec.entry.js +0 -2
  801. package/dist/core/p-9dde00d8.entry.js +0 -2
  802. package/dist/core/p-9dde00d8.entry.js.map +0 -1
  803. package/dist/core/p-9ff8f059.entry.js +0 -2
  804. package/dist/core/p-a16229c6.entry.js +0 -2
  805. package/dist/core/p-a16229c6.entry.js.map +0 -1
  806. package/dist/core/p-a1e95a5f.js.map +0 -1
  807. package/dist/core/p-a1ebb4da.entry.js +0 -2
  808. package/dist/core/p-a1ebb4da.entry.js.map +0 -1
  809. package/dist/core/p-a21dc94f.js +0 -2
  810. package/dist/core/p-a53a277a.entry.js +0 -2
  811. package/dist/core/p-a5489b0e.entry.js +0 -2
  812. package/dist/core/p-a54f1db9.entry.js +0 -2
  813. package/dist/core/p-a693ffbf.js +0 -2
  814. package/dist/core/p-a693ffbf.js.map +0 -1
  815. package/dist/core/p-aa8adc45.entry.js +0 -2
  816. package/dist/core/p-ab9ae7ba.entry.js +0 -2
  817. package/dist/core/p-b3acb156.entry.js +0 -2
  818. package/dist/core/p-b48a4aa0.js +0 -2
  819. package/dist/core/p-b48a4aa0.js.map +0 -1
  820. package/dist/core/p-b55fc943.entry.js +0 -2
  821. package/dist/core/p-b838bb27.entry.js +0 -2
  822. package/dist/core/p-c214c202.entry.js +0 -2
  823. package/dist/core/p-c214c202.entry.js.map +0 -1
  824. package/dist/core/p-c4c7cb24.entry.js +0 -2
  825. package/dist/core/p-d2351924.entry.js +0 -2
  826. package/dist/core/p-db940455.entry.js +0 -2
  827. package/dist/core/p-dc3fab19.entry.js +0 -2
  828. package/dist/core/p-e0d428c9.js +0 -2
  829. package/dist/core/p-e0d428c9.js.map +0 -1
  830. package/dist/core/p-e134b123.entry.js +0 -2
  831. package/dist/core/p-e3aeaca0.js +0 -2
  832. package/dist/core/p-e3aeaca0.js.map +0 -1
  833. package/dist/core/p-e4978aab.entry.js +0 -2
  834. package/dist/core/p-edc05eff.entry.js +0 -2
  835. package/dist/core/p-edc05eff.entry.js.map +0 -1
  836. package/dist/core/p-eeb9cb73.entry.js +0 -2
  837. package/dist/core/p-f141ad5e.entry.js +0 -2
  838. package/dist/core/p-f1be099b.entry.js +0 -2
  839. package/dist/core/p-f456bd71.entry.js +0 -2
  840. package/dist/core/p-fa7caad6.entry.js +0 -2
  841. package/dist/core/p-fc90bf06.entry.js +0 -2
  842. package/dist/core/p-fc90bf06.entry.js.map +0 -1
  843. package/dist/esm/colors-02c1ea96.js.map +0 -1
  844. package/dist/esm/form-472e078d.js.map +0 -1
  845. package/dist/esm/gov-app_2.entry.js +0 -9886
  846. package/dist/esm/gov-app_2.entry.js.map +0 -1
  847. package/dist/esm/gov-form-label.entry.js +0 -23
  848. package/dist/esm/gov-form-label.entry.js.map +0 -1
  849. package/dist/esm/gov-icon.entry.js +0 -157
  850. package/dist/esm/gov-icon.entry.js.map +0 -1
  851. package/dist/esm/gov.log-6e9faad2.js +0 -19
  852. package/dist/esm/gov.log-6e9faad2.js.map +0 -1
  853. package/dist/esm/index-d8b4eb6c.js.map +0 -1
  854. package/dist/esm/string.utils-5ce3f551.js.map +0 -1
  855. package/dist/esm/template-3d84d705.js.map +0 -1
  856. package/dist/esm/wcag-fa5ce56c.js.map +0 -1
  857. package/dist/esm/win-cec370ad.js.map +0 -1
  858. package/dist/types/components/gov-app/gov-app.d.ts +0 -37
  859. /package/dist/components/{p-ae7e6127.js.map → p-31a99bfc.js.map} +0 -0
  860. /package/dist/components/{p-736e4917.js.map → p-4149f195.js.map} +0 -0
  861. /package/dist/components/{p-08621bdf.js.map → p-44a8a668.js.map} +0 -0
  862. /package/dist/components/{p-e183a7c7.js.map → p-5952a5d0.js.map} +0 -0
  863. /package/dist/components/{p-565120d5.js.map → p-76d604c6.js.map} +0 -0
  864. /package/dist/components/{p-edd1417b.js.map → p-7f3becc5.js.map} +0 -0
  865. /package/dist/components/{p-7f8a24a7.js.map → p-860520b0.js.map} +0 -0
  866. /package/dist/components/{p-19c681a3.js.map → p-a2435993.js.map} +0 -0
  867. /package/dist/components/{p-59737af9.js.map → p-a521c59a.js.map} +0 -0
  868. /package/dist/components/{p-0c93dd39.js.map → p-c61a5830.js.map} +0 -0
  869. /package/dist/components/{p-6e19816b.js.map → p-dfb5794a.js.map} +0 -0
  870. /package/dist/core/{p-a54f1db9.entry.js.map → p-00d153bf.entry.js.map} +0 -0
  871. /package/dist/core/{p-3f2b803c.entry.js.map → p-0be19b89.entry.js.map} +0 -0
  872. /package/dist/core/{p-f141ad5e.entry.js.map → p-22fa411d.entry.js.map} +0 -0
  873. /package/dist/core/{p-b838bb27.entry.js.map → p-30eaeeec.entry.js.map} +0 -0
  874. /package/dist/core/{p-69d56f17.js.map → p-3bbb77a0.js.map} +0 -0
  875. /package/dist/core/{p-6b42a387.entry.js.map → p-535316b4.entry.js.map} +0 -0
  876. /package/dist/core/{p-91a9cd24.entry.js.map → p-5396935e.entry.js.map} +0 -0
  877. /package/dist/core/{p-42d9924c.js.map → p-56efd4a2.js.map} +0 -0
  878. /package/dist/core/{p-e134b123.entry.js.map → p-5b2131c1.entry.js.map} +0 -0
  879. /package/dist/core/{p-60658ae9.js.map → p-5f1000da.js.map} +0 -0
  880. /package/dist/core/{p-c4c7cb24.entry.js.map → p-7b7e502b.entry.js.map} +0 -0
  881. /package/dist/core/{p-2614044c.js.map → p-7ba4daf4.js.map} +0 -0
  882. /package/dist/core/{p-6aa40794.js.map → p-7f3becc5.js.map} +0 -0
  883. /package/dist/core/{p-e9a6cd71.js.map → p-860520b0.js.map} +0 -0
  884. /package/dist/core/{p-169b67af.js.map → p-a2435993.js.map} +0 -0
  885. /package/dist/core/{p-4bce896c.js.map → p-a521c59a.js.map} +0 -0
  886. /package/dist/core/{p-c990d746.js.map → p-c61a5830.js.map} +0 -0
  887. /package/dist/core/{p-45a30859.js.map → p-e0e2e9c1.js.map} +0 -0
  888. /package/dist/core/{p-052cc573.js.map → p-e44a0fee.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"names":["FlexClass","root","GovFlex","proxyCustomElement","H","constructor","this","h","govHost","host","render","Host","key","class","classes"],"sources":["../../../packages/core/src/components/gov-flex/constants.ts","../../../packages/core/src/components/gov-flex/gov-flex.tsx"],"sourcesContent":["export const FlexClass = {\n\troot: 'gov-flex',\n}\n\n","import {Component, Element, h, Host, Prop} from '@stencil/core'\nimport {FlexClass} 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. Can be 'row', 'row-reverse', 'column', or 'column-reverse'.\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 * Allowed values: 'flex-start', 'flex-end', 'center', 'space-between', 'space-around', 'space-evenly'.\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. Can be 'stretch', 'flex-start', 'flex-end', 'center', or 'baseline'.\n\t */\n\t@Prop({\n\t\tattribute: 'align-items', reflect: 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. Can be 'nowrap', 'wrap', or 'wrap-reverse'.\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 * Allowed values: 'flex-start', 'flex-end', 'center', 'space-between', 'space-around', 'stretch'.\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 * Allowed values: 'auto', 'flex-start', 'flex-end', 'center', 'baseline', 'stretch'.\n\t */\n\t@Prop({\n\t\tattribute: 'align-self',\n\t\treflect: true\n\t}) alignSelf?: 'auto' | 'flex-start' | 'flex-end' | 'center' | 'baseline' | 'stretch';\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"],"mappings":"6FAAO,MAAMA,EAAY,CACxBC,KAAM,Y,MCOMC,EAAOC,EAAA,MAAAD,UAAAE,EAGnB,WAAAC,G,6CASyE,M,iIARxEC,KAAKC,EAAIC,EAAQF,KAAKG,K,CAiDvB,MAAAC,GACC,OACCH,EAACI,EAAI,CAAAC,IAAA,2CAACC,MAAOP,KAAKC,EAAEO,QAAQd,EAAUC,OACrCM,EAAA,QAAAK,IAAA,6C","ignoreList":[]}
@@ -1,2 +1,2 @@
1
- import{G as o,d as s}from"./p-cc90a508.js";const c=o;const t=s;export{c as GovFormAutocomplete,t as defineCustomElement};
1
+ import{G as o,d as s}from"./p-45097b4c.js";const t=o;const c=s;export{t as GovFormAutocomplete,c as defineCustomElement};
2
2
  //# sourceMappingURL=gov-form-autocomplete.js.map
@@ -1,2 +1,2 @@
1
- import{p as o,H as r,c as a,h as g,d as e}from"./p-ae3dada7.js";import{F as i,a as t,b as p,c as n}from"./p-e44a0fee.js";import{g as s}from"./p-0075138f.js";import{v as m}from"./p-19c681a3.js";import{t as l}from"./p-26618322.js";import{p as f}from"./p-ded281e6.js";const v=".gov-spin-animation,.gov-pseudo-spin-animation::before{animation:spin 4s linear infinite}@keyframes spin{100%{transform:rotate(360deg)}}@keyframes countdown{to{transform:scaleX(0)}}@keyframes progress{0%{background-position:-200px 0}100%{background-position:calc(200px + 100%) 0}}@keyframes pulse{0%{opacity:1}50%{opacity:0.4}100%{opacity:1}}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))}";const c=v;const u=o(class o extends r{constructor(){super();this.__registerHost();this.govChange=a(this,"gov-change",7);this.handleChange=o=>{var r;o.stopPropagation();const a=f(this.value);if(!Array.isArray(a))return;if(o.detail.checked){this.value=[...a,o.detail.value]}else{this.value=(r=a.filter((r=>r!==o.detail.value)))!==null&&r!==void 0?r:[]}this.govChange.emit({value:this.value,component:i.root})};this.gap=undefined;this.orientation="vertical";this.value=undefined;this.h=s(this.host)}validateGap(o){if(o){m(p,o,t.root)}}validateOrientation(o){if(o){m(n,o,t.root)}}componentWillLoad(){this.validateGap(this.gap);this.validateOrientation(this.orientation);this.value=f(this.value)}componentDidRender(){l((()=>this.rerenderComponent()))}rerenderComponent(){this.host.querySelectorAll("gov-form-checkbox").forEach((o=>{if(!o.hasAttribute("listener-attached")){o.addEventListener("gov-change",this.handleChange)}o.setAttribute("listener-attached","true");o.checked=this.value.includes(o.value)}))}render(){return g(e,{key:"7f71876a9b72b688bb354a1477153bd8d1b5ad05",gap:this.gap,class:this.h.classes(t.root),value:this.value},g("slot",{key:"2b3ce2b04ab3a2e55128a6d8c00a1d41217061f6"}))}get host(){return this}static get watchers(){return{gap:["validateGap"],orientation:["validateOrientation"]}}static get style(){return c}},[4,"gov-form-checkbox-group",{gap:[1],orientation:[1],value:[1025]},undefined,{gap:["validateGap"],orientation:["validateOrientation"]}]);function h(){if(typeof customElements==="undefined"){return}const o=["gov-form-checkbox-group"];o.forEach((o=>{switch(o){case"gov-form-checkbox-group":if(!customElements.get(o)){customElements.define(o,u)}break}}))}h();const d=u;const b=h;export{d as GovFormCheckboxGroup,b as defineCustomElement};
1
+ import{p as o,H as r,c as a,h as g,d as e}from"./p-42200001.js";import{F as t,a as i,b as p,c as n}from"./p-e44a0fee.js";import{g as m}from"./p-ea7fdd2e.js";import{v as f}from"./p-a2435993.js";import{t as l}from"./p-26618322.js";import{p as s}from"./p-ded281e6.js";const v=":root{--roboto:Roboto, sans-serif}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 !important;margin-bottom:0 !important;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))}";const c=v;const u=o(class o extends r{constructor(){super();this.__registerHost();this.govChange=a(this,"gov-change",7);this.handleChange=o=>{var r;o.stopPropagation();const a=s(this.value);if(!Array.isArray(a))return;if(o.detail.checked){this.value=[...a,o.detail.value]}else{this.value=(r=a.filter((r=>r!==o.detail.value)))!==null&&r!==void 0?r:[]}this.govChange.emit({value:this.value,component:t.root})};this.gap=undefined;this.orientation="vertical";this.value=undefined;this.h=m(this.host)}validateGap(o){if(o){f(p,o,i.root)}}validateOrientation(o){if(o){f(n,o,i.root)}}componentWillLoad(){this.validateGap(this.gap);this.validateOrientation(this.orientation);this.value=s(this.value)}componentDidRender(){l((()=>this.rerenderComponent()))}rerenderComponent(){this.host.querySelectorAll("gov-form-checkbox").forEach((o=>{if(!o.hasAttribute("listener-attached")){o.addEventListener("gov-change",this.handleChange)}o.setAttribute("listener-attached","true");o.checked=this.value.includes(o.value)}))}render(){return g(e,{key:"9f0b69dea278df308a3ad5dacf989d4a89687b2a",gap:this.gap,class:this.h.classes(i.root),value:this.value},g("slot",{key:"14abf79a5ef9bc899b2732f6ae159781afa51fe2"}))}get host(){return this}static get watchers(){return{gap:["validateGap"],orientation:["validateOrientation"]}}static get style(){return c}},[4,"gov-form-checkbox-group",{gap:[1],orientation:[1],value:[1025]},undefined,{gap:["validateGap"],orientation:["validateOrientation"]}]);function h(){if(typeof customElements==="undefined"){return}const o=["gov-form-checkbox-group"];o.forEach((o=>{switch(o){case"gov-form-checkbox-group":if(!customElements.get(o)){customElements.define(o,u)}break}}))}h();const d=u;const b=h;export{d as GovFormCheckboxGroup,b as defineCustomElement};
2
2
  //# sourceMappingURL=gov-form-checkbox-group.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["govFormGroupCss","GovFormCheckboxGroupStyle0","GovFormCheckboxGroup","proxyCustomElement","H","constructor","this","handleChange","event","stopPropagation","value","propsValueToArray","Array","isArray","detail","checked","_a","filter","val","govChange","emit","component","FormCheckboxGroupClass","root","undefined","h","govHost","host","validateGap","newValue","validateProp","FormGroupSizes","FormGroupClass","validateOrientation","FormGroupOrientation","componentWillLoad","gap","orientation","componentDidRender","tick","rerenderComponent","querySelectorAll","forEach","element","hasAttribute","addEventListener","setAttribute","includes","render","Host","key","class","classes"],"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"],"mappings":"yQAAA,MAAMA,EAAkB,wiFACxB,MAAAC,EAAeD,E,MCoBFE,EAAoBC,EAAA,MAAAD,UAAAE,EAGhC,WAAAC,G,oEAoCAC,KAAAC,aAAgBC,I,MACfA,EAAMC,kBACN,MAAMC,EAAQC,EAA4BL,KAAKI,OAC/C,IAAKE,MAAMC,QAAQH,GAAQ,OAC3B,GAAIF,EAAMM,OAAOC,QAAS,CACzBT,KAAKI,MAAQ,IAAIA,EAAOF,EAAMM,OAAOJ,M,KAC/B,CACNJ,KAAKI,OAAQM,EAAAN,EAAMO,QAAQC,GAAQA,IAAQV,EAAMM,OAAOJ,WAAM,MAAAM,SAAA,EAAAA,EAAI,E,CAEnEV,KAAKa,UAAUC,KAAK,CACnBV,MAAOJ,KAAKI,MACZW,UAAWC,EAAuBC,MACjC,E,SAxCyCC,U,iBAIc,W,WAIaA,UAftElB,KAAKmB,EAAIC,EAAQpB,KAAKqB,K,CAsBvB,WAAAC,CAAYC,GACX,GAAIA,EAAU,CACbC,EAAaC,EAAgBF,EAAUG,EAAeT,K,EAKxD,mBAAAU,CAAoBJ,GACnB,GAAIA,EAAU,CACbC,EAAaI,EAAsBL,EAAUG,EAAeT,K,EAmB9D,iBAAAY,GACC7B,KAAKsB,YAAYtB,KAAK8B,KACtB9B,KAAK2B,oBAAoB3B,KAAK+B,aAC9B/B,KAAKI,MAAQC,EAAkBL,KAAKI,M,CAGrC,kBAAA4B,GACCC,GAAK,IAAMjC,KAAKkC,qB,CAGjB,iBAAAA,GACClC,KAAKqB,KAAKc,iBAAiB,qBAAqBC,SAASC,IACxD,IAAKA,EAAQC,aAAa,qBAAsB,CAC/CD,EAAQE,iBAAiB,aAAcvC,KAAKC,a,CAE7CoC,EAAQG,aAAa,oBAAqB,QAC1CH,EAAQ5B,QAAUT,KAAKI,MAAMqC,SAASJ,EAAQjC,MAAM,G,CAItD,MAAAsC,GACC,OACCvB,EAACwB,EAAI,CAAAC,IAAA,2CAACd,IAAK9B,KAAK8B,IAAKe,MAAO7C,KAAKmB,EAAE2B,QAAQpB,EAAeT,MAAOb,MAAOJ,KAAKI,OAC5Ee,EAAA,QAAAyB,IAAA,6C","ignoreList":[]}
1
+ {"version":3,"names":["govFormGroupCss","GovFormCheckboxGroupStyle0","GovFormCheckboxGroup","proxyCustomElement","H","constructor","this","handleChange","event","stopPropagation","value","propsValueToArray","Array","isArray","detail","checked","_a","filter","val","govChange","emit","component","FormCheckboxGroupClass","root","undefined","h","govHost","host","validateGap","newValue","validateProp","FormGroupSizes","FormGroupClass","validateOrientation","FormGroupOrientation","componentWillLoad","gap","orientation","componentDidRender","tick","rerenderComponent","querySelectorAll","forEach","element","hasAttribute","addEventListener","setAttribute","includes","render","Host","key","class","classes"],"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"],"mappings":"yQAAA,MAAMA,EAAkB,0wEACxB,MAAAC,EAAeD,E,MCoBFE,EAAoBC,EAAA,MAAAD,UAAAE,EAGhC,WAAAC,G,oEAoCAC,KAAAC,aAAgBC,I,MACfA,EAAMC,kBACN,MAAMC,EAAQC,EAA4BL,KAAKI,OAC/C,IAAKE,MAAMC,QAAQH,GAAQ,OAC3B,GAAIF,EAAMM,OAAOC,QAAS,CACzBT,KAAKI,MAAQ,IAAIA,EAAOF,EAAMM,OAAOJ,M,KAC/B,CACNJ,KAAKI,OAAQM,EAAAN,EAAMO,QAAQC,GAAQA,IAAQV,EAAMM,OAAOJ,WAAM,MAAAM,SAAA,EAAAA,EAAI,E,CAEnEV,KAAKa,UAAUC,KAAK,CACnBV,MAAOJ,KAAKI,MACZW,UAAWC,EAAuBC,MACjC,E,SAxCyCC,U,iBAIc,W,WAIaA,UAftElB,KAAKmB,EAAIC,EAAQpB,KAAKqB,K,CAsBvB,WAAAC,CAAYC,GACX,GAAIA,EAAU,CACbC,EAAaC,EAAgBF,EAAUG,EAAeT,K,EAKxD,mBAAAU,CAAoBJ,GACnB,GAAIA,EAAU,CACbC,EAAaI,EAAsBL,EAAUG,EAAeT,K,EAmB9D,iBAAAY,GACC7B,KAAKsB,YAAYtB,KAAK8B,KACtB9B,KAAK2B,oBAAoB3B,KAAK+B,aAC9B/B,KAAKI,MAAQC,EAAkBL,KAAKI,M,CAGrC,kBAAA4B,GACCC,GAAK,IAAMjC,KAAKkC,qB,CAGjB,iBAAAA,GACClC,KAAKqB,KAAKc,iBAAiB,qBAAqBC,SAASC,IACxD,IAAKA,EAAQC,aAAa,qBAAsB,CAC/CD,EAAQE,iBAAiB,aAAcvC,KAAKC,a,CAE7CoC,EAAQG,aAAa,oBAAqB,QAC1CH,EAAQ5B,QAAUT,KAAKI,MAAMqC,SAASJ,EAAQjC,MAAM,G,CAItD,MAAAsC,GACC,OACCvB,EAACwB,EAAI,CAAAC,IAAA,2CAACd,IAAK9B,KAAK8B,IAAKe,MAAO7C,KAAKmB,EAAE2B,QAAQpB,EAAeT,MAAOb,MAAOJ,KAAKI,OAC5Ee,EAAA,QAAAyB,IAAA,6C","ignoreList":[]}
@@ -1,2 +1,2 @@
1
- import{p as t,H as i,c as s,h as e,d as h}from"./p-ae3dada7.js";import{c as n}from"./p-95d41a3b.js";import{v as a}from"./p-19c681a3.js";import{g as o,d as r,e as c}from"./p-255d0471.js";import{g as d,c as l,t as m}from"./p-0075138f.js";import{F as u}from"./p-1c1d0bbe.js";import{i as f,A as p,a as b}from"./p-33d5d1ed.js";import{d as v}from"./p-d5f25595.js";const g=t(class t extends i{constructor(){super();this.__registerHost();this.govFocus=s(this,"gov-focus",7);this.govBlur=s(this,"gov-blur",7);this.govChange=s(this,"gov-change",7);this.hydrated=false;this.value=undefined;this.checked=false;this.required=false;this.disabled=false;this.indeterminate=false;this.name=undefined;this.size="m";this.identifier=undefined;this.noLabel=false;this.invalid=undefined;this.inheritedAttributes={};this.checkboxId=n("GovCheckbox");this.h=d(this.host);this.f=o(this.h)}validateSize(t){a(c,t,r.root)}watchControlAttrs(){this.passControlAttrs()}passControlAttrs(){this.f.passAttrToControl("size",this.size);this.f.passAttrToControl("disabled",l(this.disabled));this.f.passAttrToControl("invalid",l(this.invalid));this.f.passAttrToControl("type","checkbox")}componentWillLoad(){this.passControlAttrs();this.inheritedAttributes=f(this.host)}componentDidLoad(){this.attributeObserver=new p(this.host,((t,i)=>{this.onAriaAttributeChange(t,i)}));this.attributeObserver.startObserving(b)}async componentDidRender(){this.f.passAttrToLabel("identifier",this.identifier||this.checkboxId);this.f.passAttrToLabel("required",String(this.required));this.passControlAttrs()}connectedCallback(){this.hydrated=true}disconnectedCallback(){this.attributeObserver.stopObserving()}onAriaAttributeChange(t,i){this.host.removeAttribute(t);this.inheritedAttributes=Object.assign(Object.assign({},this.inheritedAttributes),{[t]:i})}render(){const t=t=>{if(this.noLabel){return e("label",{class:r.label},t)}return t};return e(h,{class:r.root,hydrated:this.hydrated,checked:this.checked,size:this.size,invalid:m(this.invalid)},t(e(u,null,e("input",Object.assign({id:this.identifier||this.checkboxId,type:"checkbox",value:this.value,name:this.name,checked:this.checked,onClick:this.onClickHandler.bind(this),onChange:this.onChangeHandler.bind(this),onFocus:this.onFocusHandler.bind(this),onBlur:this.onBlurHandler.bind(this),required:this.required,disabled:this.disabled,indeterminate:this.indeterminate,ref:t=>this.inputRef=t},this.inheritedAttributes,{"aria-checked":l(this.checked),"aria-required":m(this.required),"aria-invalid":m(this.invalid),"aria-disabled":m(this.disabled)})),e("span",null,e("slot",{name:"label"}),e("gov-icon",{class:r.check,name:"check-lg"}),e("gov-icon",{class:r.indeterminate,name:"dash-lg"})))))}onFocusHandler(t){t.stopPropagation();this.govFocus.emit({component:r.root,value:this.value,checked:this.checked,originalEvent:t})}onBlurHandler(t){t.stopPropagation();this.govBlur.emit({component:r.root,value:this.value,checked:this.checked,originalEvent:t})}onClickHandler(t){t.stopPropagation()}onChangeHandler(t){this.checked=t.target.checked;t.stopPropagation();this.govChange.emit({component:r.root,value:this.value,checked:this.checked,originalEvent:t})}async getRef(){return this.inputRef}get host(){return this}static get watchers(){return{size:["validateSize","watchControlAttrs"],disabled:["watchControlAttrs"],invalid:["watchControlAttrs"]}}},[4,"gov-form-checkbox",{value:[1],checked:[1540],required:[4],disabled:[4],indeterminate:[516],name:[1],size:[1],identifier:[1],noLabel:[4,"no-label"],invalid:[4],inheritedAttributes:[32],getRef:[64]},undefined,{size:["validateSize","watchControlAttrs"],disabled:["watchControlAttrs"],invalid:["watchControlAttrs"]}]);function k(){if(typeof customElements==="undefined"){return}const t=["gov-form-checkbox","gov-icon"];t.forEach((t=>{switch(t){case"gov-form-checkbox":if(!customElements.get(t)){customElements.define(t,g)}break;case"gov-icon":if(!customElements.get(t)){v()}break}}))}k();const C=g;const A=k;export{C as GovFormCheckbox,A as defineCustomElement};
1
+ import{p as t,H as s,c as i,h as e,d as h}from"./p-42200001.js";import{c as n}from"./p-cd6c2938.js";import{v as a}from"./p-a2435993.js";import{g as o,d as r,e as c}from"./p-9908b9f0.js";import{g as d,c as l,t as m}from"./p-ea7fdd2e.js";import{F as u}from"./p-1c1d0bbe.js";import{i as f,A as p,a as b}from"./p-33d5d1ed.js";import{d as v}from"./p-f44899e1.js";const g=t(class t extends s{constructor(){super();this.__registerHost();this.govFocus=i(this,"gov-focus",7);this.govBlur=i(this,"gov-blur",7);this.govChange=i(this,"gov-change",7);this.hydrated=false;this.value=undefined;this.checked=false;this.required=false;this.disabled=false;this.indeterminate=false;this.name=undefined;this.size="m";this.identifier=undefined;this.noLabel=false;this.invalid=undefined;this.inheritedAttributes={};this.checkboxId=n("GovCheckbox");this.h=d(this.host);this.f=o(this.h)}validateSize(t){a(c,t,r.root)}watchControlAttrs(){this.passControlAttrs()}passControlAttrs(){this.f.passAttrToControl("size",this.size);this.f.passAttrToControl("disabled",l(this.disabled));this.f.passAttrToControl("invalid",l(this.invalid));this.f.passAttrToControl("type","checkbox")}componentWillLoad(){this.passControlAttrs();this.inheritedAttributes=f(this.host)}componentDidLoad(){this.attributeObserver=new p(this.host,((t,s)=>{this.onAriaAttributeChange(t,s)}));this.attributeObserver.startObserving(b)}async componentDidRender(){this.f.passAttrToLabel("identifier",this.identifier||this.checkboxId);this.f.passAttrToLabel("required",String(this.required));this.passControlAttrs()}connectedCallback(){this.hydrated=true}disconnectedCallback(){this.attributeObserver.stopObserving()}onAriaAttributeChange(t,s){this.host.removeAttribute(t);this.inheritedAttributes=Object.assign(Object.assign({},this.inheritedAttributes),{[t]:s})}render(){const t=t=>{if(this.noLabel){return e("label",{class:r.label},t)}return t};return e(h,{class:r.root,hydrated:this.hydrated,checked:this.checked,size:this.size,invalid:m(this.invalid)},t(e(u,null,e("input",Object.assign({id:this.identifier||this.checkboxId,type:"checkbox",value:this.value,name:this.name,checked:this.checked,onClick:this.onClickHandler.bind(this),onChange:this.onChangeHandler.bind(this),onFocus:this.onFocusHandler.bind(this),onBlur:this.onBlurHandler.bind(this),required:this.required,disabled:this.disabled,indeterminate:this.indeterminate,ref:t=>this.inputRef=t},this.inheritedAttributes,{"aria-checked":l(this.checked),"aria-required":m(this.required),"aria-invalid":m(this.invalid),"aria-disabled":m(this.disabled)})),e("span",null,e("slot",{name:"label"}),e("gov-icon",{class:r.check,name:"check-lg",type:"components"}),e("gov-icon",{class:r.indeterminate,name:"dash-lg",type:"components"})))))}onFocusHandler(t){t.stopPropagation();this.govFocus.emit({component:r.root,value:this.value,checked:this.checked,originalEvent:t})}onBlurHandler(t){t.stopPropagation();this.govBlur.emit({component:r.root,value:this.value,checked:this.checked,originalEvent:t})}onClickHandler(t){t.stopPropagation()}onChangeHandler(t){this.checked=t.target.checked;t.stopPropagation();this.govChange.emit({component:r.root,value:this.value,checked:this.checked,originalEvent:t})}async getRef(){return this.inputRef}get host(){return this}static get watchers(){return{size:["validateSize","watchControlAttrs"],disabled:["watchControlAttrs"],invalid:["watchControlAttrs"]}}},[4,"gov-form-checkbox",{value:[1],checked:[1540],required:[4],disabled:[4],indeterminate:[516],name:[1],size:[1],identifier:[1],noLabel:[4,"no-label"],invalid:[4],inheritedAttributes:[32],getRef:[64]},undefined,{size:["validateSize","watchControlAttrs"],disabled:["watchControlAttrs"],invalid:["watchControlAttrs"]}]);function k(){if(typeof customElements==="undefined"){return}const t=["gov-form-checkbox","gov-icon"];t.forEach((t=>{switch(t){case"gov-form-checkbox":if(!customElements.get(t)){customElements.define(t,g)}break;case"gov-icon":if(!customElements.get(t)){v()}break}}))}k();const C=g;const A=k;export{C as GovFormCheckbox,A as defineCustomElement};
2
2
  //# sourceMappingURL=gov-form-checkbox.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["GovFormCheckbox","proxyCustomElement","H","constructor","this","hydrated","checkboxId","createID","h","govHost","host","f","govForm","validateSize","newValue","validateProp","FormCheckboxSizes","FormCheckboxClass","root","watchControlAttrs","passControlAttrs","passAttrToControl","size","toBoolAttr","disabled","invalid","componentWillLoad","inheritedAttributes","inheritAriaAttributes","componentDidLoad","attributeObserver","AttributeObserver","attributeName","onAriaAttributeChange","startObserving","ariaAttributes","componentDidRender","passAttrToLabel","identifier","String","required","connectedCallback","disconnectedCallback","stopObserving","removeAttribute","Object","assign","render","wrapCheckbox","children","noLabel","class","label","Host","checked","toBoolAttrIfDefined","Fragment","id","type","value","name","onClick","onClickHandler","bind","onChange","onChangeHandler","onFocus","onFocusHandler","onBlur","onBlurHandler","indeterminate","ref","el","inputRef","check","e","stopPropagation","govFocus","emit","component","originalEvent","govBlur","target","govChange","getRef"],"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() 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() 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} hydrated={this.hydrated} checked={this.checked} size={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\"></gov-icon>\n\t\t\t\t\t\t\t<gov-icon class={FormCheckboxClass.indeterminate} name=\"dash-lg\"></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"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["GovFormCheckbox","proxyCustomElement","H","constructor","this","hydrated","checkboxId","createID","h","govHost","host","f","govForm","validateSize","newValue","validateProp","FormCheckboxSizes","FormCheckboxClass","root","watchControlAttrs","passControlAttrs","passAttrToControl","size","toBoolAttr","disabled","invalid","componentWillLoad","inheritedAttributes","inheritAriaAttributes","componentDidLoad","attributeObserver","AttributeObserver","attributeName","onAriaAttributeChange","startObserving","ariaAttributes","componentDidRender","passAttrToLabel","identifier","String","required","connectedCallback","disconnectedCallback","stopObserving","removeAttribute","Object","assign","render","wrapCheckbox","children","noLabel","class","label","Host","checked","toBoolAttrIfDefined","Fragment","id","type","value","name","onClick","onClickHandler","bind","onChange","onChangeHandler","onFocus","onFocusHandler","onBlur","onBlurHandler","indeterminate","ref","el","inputRef","check","e","stopPropagation","govFocus","emit","component","originalEvent","govBlur","target","govChange","getRef"],"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() 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() 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} hydrated={this.hydrated} checked={this.checked} size={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"],"mappings":"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","ignoreList":[]}
@@ -1,2 +1,2 @@
1
- import{p as s,H as e,h as t,d as i}from"./p-ae3dada7.js";import{g as o,f as c}from"./p-255d0471.js";import{g as a}from"./p-0075138f.js";import{s as r}from"./p-95d41a3b.js";const d=s(class s extends e{constructor(){super();this.__registerHost();this.identifier=undefined;this.invalid=false;this.disabled=false;this.success=false;this.fieldset=false;this.size="m";this.h=a(this.host);this.f=o(this.h)}componentDidRender(){this.syncControlMessages();this.formElementDescriptionControl()}disconnectedCallback(){var s;(s=this.observer)===null||s===void 0?void 0:s.disconnect()}formElementDescriptionControl(){const s=this.host.querySelector("."+c.bottom);if(!s)return;this.observer=new MutationObserver(function(){this.syncControlMessages()}.bind(this));this.observer.observe(s,{childList:true})}syncControlMessages(){Promise.all(this.f.messageElements.map((s=>s.identifier()))).then((s=>{this.f.mainElementsInControl.forEach((e=>{const t=r(e.getAttribute("aria-describedby"));e.removeAttribute("aria-describedby");if(Array.isArray(t)){t.forEach((e=>e.indexOf("GovFormMessage")===-1?s.push(e):null))}if(s.length){e.setAttribute("aria-describedby",s.join(" "))}}))}))}render(){const s=this.fieldset?"fieldset":"div";return t(i,{key:"ca3d81a16858cbe4b2c06580cb2e9523a77191be",size:this.size,class:this.h.classes(c.root)},t(s,{key:"4b2bdfbc3c227b910660596d5815c70ef8fa22dd",class:c.holder},this.h.hasSlot("top")&&t("slot",{key:"21e1b5d8e989e6e4ecf9795a2d9d3ccd6dc29543",name:"top"}),t("slot",{key:"d2acefce44c05404f9d1ce224f7f259361423d82"}),this.h.hasSlot("bottom")&&t("div",{key:"e5c095ee40f41623e9f6a871e29724be42a8be8f",class:c.bottom},t("slot",{key:"941873ca1268fca177d3ff92b10a205dea0faad3",name:"bottom"}))))}get host(){return this}},[4,"gov-form-control",{identifier:[1],invalid:[516],disabled:[516],success:[516],fieldset:[4],size:[1]}]);function n(){if(typeof customElements==="undefined"){return}const s=["gov-form-control"];s.forEach((s=>{switch(s){case"gov-form-control":if(!customElements.get(s)){customElements.define(s,d)}break}}))}n();const f=d;const l=n;export{f as GovFormControl,l as defineCustomElement};
1
+ import{p as s,H as e,h as t,d as i}from"./p-42200001.js";import{g as o,f as d}from"./p-9908b9f0.js";import{g as c}from"./p-ea7fdd2e.js";import{s as r}from"./p-cd6c2938.js";const a=s(class s extends e{constructor(){super();this.__registerHost();this.identifier=undefined;this.invalid=false;this.disabled=false;this.success=false;this.fieldset=false;this.size="m";this.h=c(this.host);this.f=o(this.h)}componentDidRender(){this.syncControlMessages();this.formElementDescriptionControl()}disconnectedCallback(){var s;(s=this.observer)===null||s===void 0?void 0:s.disconnect()}formElementDescriptionControl(){const s=this.host.querySelector("."+d.bottom);if(!s)return;this.observer=new MutationObserver(function(){this.syncControlMessages()}.bind(this));this.observer.observe(s,{childList:true})}syncControlMessages(){Promise.all(this.f.messageElements.map((s=>s.identifier()))).then((s=>{this.f.mainElementsInControl.forEach((e=>{const t=r(e.getAttribute("aria-describedby"));e.removeAttribute("aria-describedby");if(Array.isArray(t)){t.forEach((e=>e.indexOf("GovFormMessage")===-1?s.push(e):null))}if(s.length){e.setAttribute("aria-describedby",s.join(" "))}}))}))}render(){const s=this.fieldset?"fieldset":"div";return t(i,{key:"5d1b7313e297a68d4349290d98190e7a0e3039b2",size:this.size,class:this.h.classes(d.root)},t(s,{key:"d4af40d1dcd012c374e0cd43a6d6777945b8e7d7",class:d.holder},this.h.hasSlot("top")&&t("slot",{key:"d46ee92af80770af49c075387f534b9d538a7e39",name:"top"}),t("slot",{key:"ce46e5d88ca4a1069436d702b27ad0c5051e63b5"}),this.h.hasSlot("bottom")&&t("div",{key:"b9da32bf3ad735b0c8bc187fb32528c710e3383c",class:d.bottom},t("slot",{key:"06f43763e2e0a88a2919e33d730898dd2048dcd0",name:"bottom"}))))}get host(){return this}},[4,"gov-form-control",{identifier:[1],invalid:[516],disabled:[516],success:[516],fieldset:[4],size:[1]}]);function n(){if(typeof customElements==="undefined"){return}const s=["gov-form-control"];s.forEach((s=>{switch(s){case"gov-form-control":if(!customElements.get(s)){customElements.define(s,a)}break}}))}n();const f=a;const l=n;export{f as GovFormControl,l as defineCustomElement};
2
2
  //# sourceMappingURL=gov-form-control.js.map
@@ -1,2 +1,2 @@
1
- import{p as t,H as e,c as s,h as i,d as o}from"./p-ae3dada7.js";import{c as a}from"./p-95d41a3b.js";import{g as n,c as h,t as r}from"./p-0075138f.js";import{g as l}from"./p-255d0471.js";import{A as c,a as f,i as m}from"./p-33d5d1ed.js";import{d}from"./p-736e4917.js";import{d as u}from"./p-dbae2385.js";import{d as g}from"./p-1366ed8d.js";import{d as p}from"./p-ae7e6127.js";import{d as v}from"./p-d5f25595.js";const b={root:"gov-form-file",area:"gov-form-file__area",input:"gov-form-file__input",attachments:"gov-form-file__attachments"};function y(t){const e=["bytes","KiB","MiB","GiB","TiB","PiB","EiB","ZiB","YiB"];let s=0,i=parseInt(t,10)||0;while(i>=1024&&++s){i=i/1024}return i.toFixed(i<10&&s>0?1:0)+" "+e[s]}function E(t,e){if(typeof e==="string"&&e.length){return e.replace(/\s/g,"").split(",").filter((e=>new RegExp(e.replace("*",".*")).test(t.type))).length>0}else{return true}}function A(t,e){const s=Math.round(t.size);return s<=e}const k=t(class t extends e{constructor(){super();this.__registerHost();this.govFocus=s(this,"gov-focus",7);this.govBlur=s(this,"gov-blur",7);this.govFiles=s(this,"gov-files",7);this.govAddFile=s(this,"gov-add-file",7);this.govRemoveFile=s(this,"gov-remove-file",7);this.expanded=false;this.required=false;this.disabled=false;this.resetAfterPick=false;this.ignoreFileDuplicationCheck=false;this.displayAttachments=true;this.name=undefined;this.accept=undefined;this.multiple=false;this.maxFileSize=-1;this.identifier=undefined;this.invalid=undefined;this.errorSize="Soubor je větší než povolená velikost {FILE_SIZE}";this.errorAccept="Soubor tohoto typu není povolen";this.attachmentsLabel="Přílohy";this.accessibleRemoveLabel="Odebrat soubor {FILE_NAME}";this.accessibleAttachmentsLabel="Přílohy";this.files=[];this.inheritedAttributes={};this.fileId=a("GovInputFile");this.h=n(this.host);this.f=l(this.h)}watchControlAttrs(){this.passControlAttrs()}passControlAttrs(){this.f.passAttrToControl("invalid",h(this.invalid));this.f.passAttrToControl("disabled",h(this.disabled));this.f.passAttrToControl("type","File")}registerListeners(){function t(){this.areaRef.classList.add("highlight")}function e(){this.areaRef.classList.remove("highlight")}this.inputRef.addEventListener("change",(t=>{t.preventDefault();t.stopPropagation();const e=t.target.files;if(this.resetAfterPick){if(e.length){this.validateFiles(e)}}else{this.validateFiles(e)}}),false);if(this.expanded){const s=["dragover","dragleave"];const i=["dragenter","dragover","mouseenter"];const o=["dragleave","drop","mouseleave"];s.map((t=>this.inputRef.addEventListener(t,this.preventDefaults.bind(this),false)));i.map((e=>this.inputRef.addEventListener(e,t.bind(this),false)));o.forEach((t=>this.inputRef.addEventListener(t,e.bind(this),false)));this.areaRef.addEventListener("drop",this.handleDrop.bind(this),false)}}preventDefaults(t){t.preventDefault();t.stopPropagation()}handleDrop(t){const e=t.dataTransfer;this.validateFiles(e.files)}validateFiles(t){let e=[];Array.from(t).map((t=>{const s=this.files.find((e=>e.file.name===t.name&&e.file.size===t.size))||null;if(s===null||this.ignoreFileDuplicationCheck){const s=typeof this.maxFileSize==="number"&&this.maxFileSize>0?A(t,this.maxFileSize):true;const i=E(t,this.accept);const o={id:a("GovFormFile"),file:t,acceptValid:i,sizeValid:s};if(this.displayAttachments){this.files=[...this.files,o]}else{e=[...e,o]}this.govAddFile.emit({component:b.root,file:o})}}));this.govFiles.emit({component:b.root,files:e.length?e:this.files});if(this.resetAfterPick){this.reset().finally()}}componentDidLoad(){this.attributeObserver=new c(this.host,((t,e)=>{this.onAriaAttributeChange(t,e)}));this.attributeObserver.startObserving(f)}componentWillLoad(){this.f.passAttrToLabel("required",String(this.required));this.passControlAttrs();this.inheritedAttributes=m(this.host)}async componentDidRender(){this.registerListeners()}disconnectedCallback(){this.attributeObserver.stopObserving()}onAriaAttributeChange(t,e){this.host.removeAttribute(t);this.inheritedAttributes=Object.assign(Object.assign({},this.inheritedAttributes),{[t]:e})}render(){return i(o,{key:"42f26e67f508d85b5db8cbc970cc569ed5b748cc",class:this.h.classes([b.root]),invalid:r(this.invalid),expanded:r(this.expanded)},i("div",{key:"b070c1245b8af9c57a629bef4e0e451cb641e087",class:b.area,ref:t=>this.areaRef=t},i("slot",{key:"f74be405c9855462a2caa9beca649d78a6ab3fc0"}),i("input",Object.assign({key:"ac277c3c42b72dcc24678c756a89991b6fe6e681",class:b.input,ref:t=>this.inputRef=t,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":r(this.required),"aria-invalid":r(this.invalid),"aria-disabled":r(this.disabled)}))),this.h.hasSlot("attachments")?i("div",{class:b.attachments},i("slot",{name:"attachments"})):null,this.files.length&&this.displayAttachments?i("div",{class:b.attachments},i("gov-attachments",{label:this.accessibleAttachmentsLabel,"accessible-label":this.accessibleAttachmentsLabel},this.files.map((t=>i("gov-attachments-item",{"accessible-remove-labelledby":t.id,"on-gov-remove":()=>this.onRemoveFileHandler(t)},i("span",{class:"sr-only",id:t.id},this.accessibleRemoveLabel.replace("{FILE_NAME}",t.file.name)),t.file.name,t.acceptValid===false?i("gov-form-message",{slot:"message",color:"error"},i("gov-icon",{slot:"icon",name:"exclamation-triangle-fill"}),t.acceptValid===false?this.errorAccept:null):null,t.sizeValid===false?i("gov-form-message",{slot:"message",color:"error"},i("gov-icon",{slot:"icon",name:"exclamation-triangle-fill"}),this.errorSize.replace("{FILE_SIZE}",y(this.maxFileSize))):null,i("span",{slot:"info"},"(",y(t.file.size),")")))))):null)}onRemoveFileHandler(t){const e=this.files.findIndex((e=>e.id===t.id));if(e!==-1){const t=this.files;const s=this.files[e];t.splice(e,1);this.files=[...t];this.govRemoveFile.emit({component:b.root,file:s});this.govFiles.emit({component:b.root,files:t})}}onFocusHandler(t){t.stopPropagation();this.govFocus.emit({component:b.root,originalEvent:t})}onBlurHandler(t){t.stopPropagation();this.govBlur.emit({component:b.root,originalEvent:t})}onChangeHandler(t){t.stopPropagation()}async getRef(){return this.inputRef}async getAreaRef(){return this.areaRef}async reset(){this.files=[];this.inputRef.value=""}get host(){return this}static get watchers(){return{disabled:["watchControlAttrs"],invalid:["watchControlAttrs"]}}},[4,"gov-form-file",{expanded:[4],required:[4],disabled:[4],resetAfterPick:[4,"reset-after-pick"],ignoreFileDuplicationCheck:[4,"ignore-file-duplication-check"],displayAttachments:[4,"display-attachments"],name:[1],accept:[1],multiple:[4],maxFileSize:[2,"max-file-size"],identifier:[1],invalid:[4],errorSize:[1,"error-size"],errorAccept:[1,"error-accept"],attachmentsLabel:[1,"attachments-label"],accessibleRemoveLabel:[1,"accessible-remove-label"],accessibleAttachmentsLabel:[1,"accessible-attachments-label"],files:[32],inheritedAttributes:[32],getRef:[64],getAreaRef:[64],reset:[64]},undefined,{disabled:["watchControlAttrs"],invalid:["watchControlAttrs"]}]);function j(){if(typeof customElements==="undefined"){return}const t=["gov-form-file","gov-attachments","gov-attachments-item","gov-button","gov-form-message","gov-icon"];t.forEach((t=>{switch(t){case"gov-form-file":if(!customElements.get(t)){customElements.define(t,k)}break;case"gov-attachments":if(!customElements.get(t)){d()}break;case"gov-attachments-item":if(!customElements.get(t)){u()}break;case"gov-button":if(!customElements.get(t)){g()}break;case"gov-form-message":if(!customElements.get(t)){p()}break;case"gov-icon":if(!customElements.get(t)){v()}break}}))}j();const F=k;const C=j;export{F as GovFormFile,C as defineCustomElement};
1
+ import{p as t,H as e,c as s,h as i,d as o}from"./p-42200001.js";import{c as a}from"./p-cd6c2938.js";import{g as n,c as r,t as h}from"./p-ea7fdd2e.js";import{g as l}from"./p-9908b9f0.js";import{A as c,a as f,i as m}from"./p-33d5d1ed.js";import{d}from"./p-4149f195.js";import{d as u}from"./p-859a4f0d.js";import{d as p}from"./p-7d4f2214.js";import{d as g}from"./p-31a99bfc.js";import{d as v}from"./p-f44899e1.js";const b={root:"gov-form-file",area:"gov-form-file__area",input:"gov-form-file__input",attachments:"gov-form-file__attachments"};function y(t){const e=["bytes","KiB","MiB","GiB","TiB","PiB","EiB","ZiB","YiB"];let s=0,i=parseInt(t,10)||0;while(i>=1024&&++s){i=i/1024}return i.toFixed(i<10&&s>0?1:0)+" "+e[s]}function E(t,e){if(typeof e==="string"&&e.length){return e.replace(/\s/g,"").split(",").filter((e=>new RegExp(e.replace("*",".*")).test(t.type))).length>0}else{return true}}function A(t,e){const s=Math.round(t.size);return s<=e}const k=t(class t extends e{constructor(){super();this.__registerHost();this.govFocus=s(this,"gov-focus",7);this.govBlur=s(this,"gov-blur",7);this.govFiles=s(this,"gov-files",7);this.govAddFile=s(this,"gov-add-file",7);this.govRemoveFile=s(this,"gov-remove-file",7);this.eventsRegistered=false;this.expanded=false;this.required=false;this.disabled=false;this.resetAfterPick=false;this.ignoreFileDuplicationCheck=false;this.displayAttachments=true;this.name=undefined;this.accept=undefined;this.multiple=false;this.maxFileSize=-1;this.identifier=undefined;this.invalid=undefined;this.errorSize="Soubor je větší než povolená velikost {FILE_SIZE}";this.errorAccept="Soubor tohoto typu není povolen";this.accessibleRemoveLabel="Odebrat soubor {FILE_NAME}";this.accessibleAttachmentsLabel="Přílohy";this.files=[];this.inheritedAttributes={};this.fileId=a("GovInputFile");this.h=n(this.host);this.f=l(this.h)}watchControlAttrs(){this.passControlAttrs()}passControlAttrs(){this.f.passAttrToControl("invalid",r(this.invalid));this.f.passAttrToControl("disabled",r(this.disabled));this.f.passAttrToControl("type","File")}registerListeners(){if(this.eventsRegistered){return}this.eventsRegistered=true;function t(){this.areaRef.classList.add("highlight")}function e(){this.areaRef.classList.remove("highlight")}this.inputRef.addEventListener("change",(t=>{t.preventDefault();t.stopPropagation();const e=t.target.files;if(this.resetAfterPick){if(e.length){this.validateFiles(e)}}else{this.validateFiles(e)}}),false);if(this.expanded){const s=["dragover","dragleave"];const i=["dragenter","dragover","mouseenter"];const o=["dragleave","drop","mouseleave"];s.map((t=>this.inputRef.addEventListener(t,this.preventDefaults.bind(this),false)));i.map((e=>this.inputRef.addEventListener(e,t.bind(this),false)));o.forEach((t=>this.inputRef.addEventListener(t,e.bind(this),false)));this.areaRef.addEventListener("drop",this.handleDrop.bind(this),false)}}preventDefaults(t){t.preventDefault();t.stopPropagation()}handleDrop(t){const e=t.dataTransfer;this.validateFiles(e.files)}validateFiles(t){let e=[];Array.from(t).map((t=>{const s=this.files.find((e=>e.file.name===t.name&&e.file.size===t.size))||null;if(s===null||this.ignoreFileDuplicationCheck){const s=typeof this.maxFileSize==="number"&&this.maxFileSize>0?A(t,this.maxFileSize):true;const i=E(t,this.accept);const o={id:a("GovFormFile"),file:t,acceptValid:i,sizeValid:s};if(this.displayAttachments){this.files=[...this.files,o]}else{e=[...e,o]}this.govAddFile.emit({component:b.root,file:o})}}));this.govFiles.emit({component:b.root,files:e.length?e:this.files});if(this.resetAfterPick){this.reset().finally()}}componentDidLoad(){this.attributeObserver=new c(this.host,((t,e)=>{this.onAriaAttributeChange(t,e)}));this.attributeObserver.startObserving(f)}componentWillLoad(){this.f.passAttrToLabel("required",String(this.required));this.passControlAttrs();this.inheritedAttributes=m(this.host)}async componentDidRender(){this.registerListeners()}disconnectedCallback(){this.attributeObserver.stopObserving()}onAriaAttributeChange(t,e){this.host.removeAttribute(t);this.inheritedAttributes=Object.assign(Object.assign({},this.inheritedAttributes),{[t]:e})}render(){return i(o,{key:"fda855fd13b98ed5ec1cfca65467a076a88a5fa0",class:this.h.classes([b.root]),invalid:h(this.invalid),expanded:h(this.expanded)},i("div",{key:"b1045cecb8e17259cd01b8856987da468e0e9396",class:b.area,ref:t=>this.areaRef=t},i("slot",{key:"0d06955bac8c995f95078f706988058a50b72e55"}),i("input",Object.assign({key:"ec52abcad54909f6c0af0b7957765b8cadb26a10",class:b.input,ref:t=>this.inputRef=t,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":h(this.required),"aria-invalid":h(this.invalid),"aria-disabled":h(this.disabled)}))),this.h.hasSlot("attachments")?i("div",{class:b.attachments},i("slot",{name:"attachments"})):null,this.files.length&&this.displayAttachments?i("div",{class:b.attachments},i("gov-attachments",{label:this.accessibleAttachmentsLabel,"accessible-label":this.accessibleAttachmentsLabel},this.files.map((t=>i("gov-attachments-item",{"accessible-remove-labelledby":t.id,"on-gov-remove":()=>this.onRemoveFileHandler(t)},i("span",{class:"sr-only",id:t.id},this.accessibleRemoveLabel.replace("{FILE_NAME}",t.file.name)),t.file.name,t.acceptValid===false?i("gov-form-message",{slot:"message",color:"error"},i("gov-icon",{slot:"icon",name:"exclamation-triangle-fill",type:"components"}),t.acceptValid===false?this.errorAccept:null):null,t.sizeValid===false?i("gov-form-message",{slot:"message",color:"error"},i("gov-icon",{slot:"icon",name:"exclamation-triangle-fill",type:"components"}),this.errorSize.replace("{FILE_SIZE}",y(this.maxFileSize))):null,i("span",{slot:"info"},"(",y(t.file.size),")")))))):null)}onRemoveFileHandler(t){const e=this.files.findIndex((e=>e.id===t.id));if(e!==-1){const t=this.files;const s=this.files[e];t.splice(e,1);this.files=[...t];this.govRemoveFile.emit({component:b.root,file:s});this.govFiles.emit({component:b.root,files:t})}}onFocusHandler(t){t.stopPropagation();this.govFocus.emit({component:b.root,originalEvent:t})}onBlurHandler(t){t.stopPropagation();this.govBlur.emit({component:b.root,originalEvent:t})}onChangeHandler(t){t.stopPropagation()}async getRef(){return this.inputRef}async getAreaRef(){return this.areaRef}async reset(){this.files=[];this.inputRef.value=""}get host(){return this}static get watchers(){return{disabled:["watchControlAttrs"],invalid:["watchControlAttrs"]}}},[4,"gov-form-file",{expanded:[4],required:[4],disabled:[4],resetAfterPick:[4,"reset-after-pick"],ignoreFileDuplicationCheck:[4,"ignore-file-duplication-check"],displayAttachments:[4,"display-attachments"],name:[1],accept:[1],multiple:[4],maxFileSize:[2,"max-file-size"],identifier:[1],invalid:[4],errorSize:[1,"error-size"],errorAccept:[1,"error-accept"],accessibleRemoveLabel:[1,"accessible-remove-label"],accessibleAttachmentsLabel:[1,"accessible-attachments-label"],files:[32],inheritedAttributes:[32],getRef:[64],getAreaRef:[64],reset:[64]},undefined,{disabled:["watchControlAttrs"],invalid:["watchControlAttrs"]}]);function j(){if(typeof customElements==="undefined"){return}const t=["gov-form-file","gov-attachments","gov-attachments-item","gov-button","gov-form-message","gov-icon"];t.forEach((t=>{switch(t){case"gov-form-file":if(!customElements.get(t)){customElements.define(t,k)}break;case"gov-attachments":if(!customElements.get(t)){d()}break;case"gov-attachments-item":if(!customElements.get(t)){u()}break;case"gov-button":if(!customElements.get(t)){p()}break;case"gov-form-message":if(!customElements.get(t)){g()}break;case"gov-icon":if(!customElements.get(t)){v()}break}}))}j();const F=k;const C=j;export{F as GovFormFile,C as defineCustomElement};
2
2
  //# sourceMappingURL=gov-form-file.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["FormFileClass","root","area","input","attachments","formatBytes","bytes","units","l","n","parseInt","toFixed","fileAcceptValidation","file","accept","length","replace","split","filter","RegExp","test","type","fileSizeValidation","maxSize","fileSize","Math","round","size","GovFormFile","proxyCustomElement","H","constructor","this","fileId","createID","h","govHost","host","f","govForm","watchControlAttrs","passControlAttrs","passAttrToControl","toBoolAttr","invalid","disabled","registerListeners","highlight","areaRef","classList","add","unhighlight","remove","inputRef","addEventListener","e","preventDefault","stopPropagation","files","target","resetAfterPick","validateFiles","expanded","events","inEvents","outEvents","map","eventName","preventDefaults","bind","forEach","handleDrop","dataTransfer","filesBuffer","Array","from","isFile","find","item","name","ignoreFileDuplicationCheck","isSizeValid","maxFileSize","isAcceptValid","newFile","id","acceptValid","sizeValid","displayAttachments","govAddFile","emit","component","govFiles","reset","finally","componentDidLoad","attributeObserver","AttributeObserver","attributeName","newValue","onAriaAttributeChange","startObserving","ariaAttributes","componentWillLoad","passAttrToLabel","String","required","inheritedAttributes","inheritAriaAttributes","componentDidRender","disconnectedCallback","stopObserving","removeAttribute","Object","assign","render","Host","key","class","classes","toBoolAttrIfDefined","ref","el","identifier","multiple","onChange","onChangeHandler","onFocus","onFocusHandler","onBlur","onBlurHandler","hasSlot","label","accessibleAttachmentsLabel","onRemoveFileHandler","accessibleRemoveLabel","slot","color","errorAccept","errorSize","index","findIndex","removeFile","splice","govRemoveFile","govFocus","originalEvent","govBlur","getRef","getAreaRef","value"],"sources":["../../../packages/core/src/components/gov-form/file/constants.ts","../../../packages/core/src/utils/file.utils.ts","../../../packages/core/src/components/gov-form/file/gov-form-file.tsx"],"sourcesContent":["export const FormFileClass = {\n\troot: 'gov-form-file',\n\tarea: 'gov-form-file__area',\n\tinput: 'gov-form-file__input',\n\tattachments: 'gov-form-file__attachments',\n}\n","export function formatBytes(bytes: any): string {\n\tconst units = ['bytes', 'KiB', 'MiB', 'GiB', 'TiB', 'PiB', 'EiB', 'ZiB', 'YiB']\n\tlet l = 0,\n\t\tn = parseInt(bytes, 10) || 0\n\n\twhile (n >= 1024 && ++l) {\n\t\tn = n / 1024\n\t}\n\n\treturn n.toFixed(n < 10 && l > 0 ? 1 : 0) + ' ' + units[l]\n}\n\nexport function fileAcceptValidation(file: File, accept: string): boolean {\n\tif (typeof accept === 'string' && accept.length) {\n\t\treturn (\n\t\t\taccept\n\t\t\t\t.replace(/\\s/g, '')\n\t\t\t\t.split(',')\n\t\t\t\t.filter(accept => {\n\t\t\t\t\treturn new RegExp(accept.replace('*', '.*')).test(file.type)\n\t\t\t\t}).length > 0\n\t\t)\n\t} else {\n\t\treturn true\n\t}\n}\n\nexport function fileSizeValidation(file: File, maxSize: number): boolean {\n\tconst fileSize = Math.round(file.size)\n\treturn fileSize <= maxSize\n}\n","import {Component, Element, Event, EventEmitter, h, Host, Method, Prop, State, Watch} from \"@stencil/core\"\nimport {createID} from \"../../../utils/string.utils\"\nimport {FormFileClass} from \"./constants\"\nimport {govHost, toBoolAttr, toBoolAttrIfDefined} from \"../../../helpers/Dom/template\"\nimport {fileAcceptValidation, fileSizeValidation, formatBytes} from \"../../../utils/file.utils\"\nimport {GovForm} from \"../../../helpers/Dom/form.types\"\nimport {GovHost} from \"../../../helpers/Dom/template.types\"\nimport {govForm} from \"../../../helpers/Dom/form\"\nimport {GovFormFileEvent, GovFormFileItem} from \"./gov-form-file.types\"\nimport {inheritAriaAttributes} from \"../../../helpers/Accessibility/accessibility\";\nimport {AttributeObserver, Attributes} from \"../../../helpers/Dom/attribute\";\nimport {ariaAttributes} from \"../../../helpers/Accessibility/attributes\";\n\n@Component({\n\ttag: \"gov-form-file\",\n})\nexport class GovFormFile {\n\tprivate f: GovForm\n\tprivate readonly h: GovHost\n\n\tprivate areaRef?: HTMLDivElement\n\tprivate inputRef?: HTMLInputElement\n\tprivate readonly fileId: string\n\tprivate attributeObserver: AttributeObserver\n\n\tconstructor() {\n\t\tthis.fileId = createID(\"GovInputFile\")\n\n\t\tthis.h = govHost(this.host)\n\t\tthis.f = govForm(this.h)\n\t}\n\n\t@Element() host: HTMLGovFormFileElement\n\t/**\n\t * Expands the file input to fill 100% of the container width.\n\t */\n\t@Prop() readonly expanded: boolean = false\n\t/**\n\t * Set whether the input is required or not. Please note that this is necessary for accessible inputs when the user is required to fill them.\n\t * When using this property you need to also set “novalidate” attribute to your form element to prevent browser from displaying its own validation errors.\n\t */\n\t@Prop() readonly required: boolean = false\n\t/**\n\t * Makes the File component disabled.\n\t * This prevents users from being able to interact with the File, and conveys its inactive state to assistive technologies.\n\t */\n\t@Prop() readonly disabled: boolean = false\n\t/**\n\t * After selecting the files, the main input element will be reset.\n\t * The propagation of the event with the selected files will not be affected.\n\t */\n\t@Prop({attribute: \"reset-after-pick\"}) readonly resetAfterPick: boolean = false\n\t/**\n\t * Selected files will not be checked for duplicates based on name and size.\n\t */\n\t@Prop({attribute: \"ignore-file-duplication-check\"}) readonly ignoreFileDuplicationCheck: boolean = false\n\t/**\n\t * Show list of attachments\n\t */\n\t@Prop({attribute: \"display-attachments\"}) readonly displayAttachments: boolean = true\n\t/**\n\t * Name of the input.\n\t */\n\t@Prop() readonly name: string\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/accept\n\t */\n\t@Prop() readonly accept: string\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/multiple\n\t */\n\t@Prop() readonly multiple: boolean = false\n\t/**\n\t * Maximum embedded file size\n\t */\n\t@Prop({attribute: \"max-file-size\"}) readonly maxFileSize: number = -1\n\t/**\n\t * Custom File identifier.\n\t */\n\t@Prop({attribute: \"identifier\"}) readonly identifier: string\n\t/**\n\t * Indicates the entered value does not conform to the format expected by the application.\n\t */\n\t@Prop() readonly invalid: boolean\n\t/**\n\t * Error message when the maximum file size is exceeded\n\t */\n\t@Prop({attribute: \"error-size\"}) readonly errorSize: string = \"Soubor je větší než povolená velikost {FILE_SIZE}\"\n\t/**\n\t * Insert unsupported file error message\n\t */\n\t@Prop({attribute: \"error-accept\"}) readonly errorAccept: string = \"Soubor tohoto typu není povolen\"\n\t/**\n\t * Description of the list of attachments\n\t */\n\t@Prop({attribute: \"attachments-label\"}) readonly attachmentsLabel: string = \"Přílohy\"\n\t/**\n\t * Adds accessible label for the remove button that is only shown for screen readers.\n\t */\n\t@Prop({attribute: \"accessible-remove-label\"}) readonly accessibleRemoveLabel: string = \"Odebrat soubor {FILE_NAME}\"\n\t/**\n\t * Adds accessible label for the list of attachments.\n\t */\n\t@Prop({attribute: \"accessible-attachments-label\"}) readonly accessibleAttachmentsLabel: string = \"Přílohy\"\n\t/**\n\t * Emitted when the File has focus.\n\t */\n\t@Event({eventName: \"gov-focus\"}) govFocus: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Emitted when the File loses focus.\n\t */\n\t@Event({eventName: \"gov-blur\"}) govBlur: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Called when the list of inserted files is changed\n\t */\n\t@Event({eventName: \"gov-files\"}) govFiles: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Called when a new file is added\n\t */\n\t@Event({eventName: \"gov-add-file\"}) govAddFile: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Called when a file is removed from the list\n\t */\n\t@Event({eventName: \"gov-remove-file\"}) govRemoveFile: EventEmitter<GovFormFileEvent>\n\n\n\t@Watch(\"disabled\")\n\t@Watch(\"invalid\")\n\twatchControlAttrs(): void {\n\t\tthis.passControlAttrs()\n\t}\n\n\t@State() files: GovFormFileItem[] = []\n\t@State() inheritedAttributes: Attributes = {}\n\n\n\n\tprivate passControlAttrs() {\n\t\tthis.f.passAttrToControl(\"invalid\", toBoolAttr(this.invalid))\n\t\tthis.f.passAttrToControl(\"disabled\", toBoolAttr(this.disabled))\n\t\tthis.f.passAttrToControl(\"type\", \"File\")\n\t}\n\n\n\tprivate registerListeners() {\n\t\tfunction highlight() {\n\t\t\tthis.areaRef.classList.add(\"highlight\")\n\t\t}\n\n\t\tfunction unhighlight() {\n\t\t\tthis.areaRef.classList.remove(\"highlight\")\n\t\t}\n\n\t\tthis.inputRef.addEventListener(\n\t\t\t\"change\",\n\t\t\te => {\n\t\t\t\te.preventDefault()\n\t\t\t\te.stopPropagation()\n\t\t\t\tconst files = (e.target as HTMLInputElement).files\n\t\t\t\tif (this.resetAfterPick) {\n\t\t\t\t\tif (files.length) {\n\t\t\t\t\t\tthis.validateFiles(files)\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tthis.validateFiles(files)\n\t\t\t\t}\n\t\t\t},\n\t\t\tfalse,\n\t\t)\n\n\t\tif (this.expanded) {\n\t\t\tconst events = [\"dragover\", \"dragleave\"]\n\t\t\tconst inEvents = [\"dragenter\", \"dragover\", \"mouseenter\"]\n\t\t\tconst outEvents = [\"dragleave\", \"drop\", \"mouseleave\"]\n\n\t\t\tevents.map(eventName => this.inputRef.addEventListener(eventName, this.preventDefaults.bind(this), false))\n\t\t\tinEvents.map(eventName => this.inputRef.addEventListener(eventName, highlight.bind(this), false))\n\t\t\toutEvents.forEach(eventName => this.inputRef.addEventListener(eventName, unhighlight.bind(this), false))\n\n\t\t\tthis.areaRef.addEventListener(\"drop\", this.handleDrop.bind(this), false)\n\t\t}\n\t}\n\n\tpreventDefaults(e) {\n\t\te.preventDefault()\n\t\te.stopPropagation()\n\t}\n\n\thandleDrop(e: DragEvent) {\n\t\tconst dataTransfer = e.dataTransfer\n\t\tthis.validateFiles(dataTransfer.files)\n\t}\n\n\tprivate validateFiles(files: FileList) {\n\t\tlet filesBuffer: GovFormFileItem[] = []\n\t\tArray.from(files).map(file => {\n\t\t\tconst isFile = this.files.find(item => item.file.name === file.name && item.file.size === file.size) || null\n\t\t\tif (isFile === null || this.ignoreFileDuplicationCheck) {\n\t\t\t\tconst isSizeValid = typeof this.maxFileSize === \"number\" && this.maxFileSize > 0 ? fileSizeValidation(file, this.maxFileSize) : true\n\t\t\t\tconst isAcceptValid = fileAcceptValidation(file, this.accept)\n\t\t\t\tconst newFile = {\n\t\t\t\t\tid: createID(\"GovFormFile\"),\n\t\t\t\t\tfile,\n\t\t\t\t\tacceptValid: isAcceptValid,\n\t\t\t\t\tsizeValid: isSizeValid,\n\t\t\t\t}\n\t\t\t\tif (this.displayAttachments) {\n\t\t\t\t\tthis.files = [...this.files, newFile]\n\t\t\t\t} else {\n\t\t\t\t\tfilesBuffer = [...filesBuffer, newFile]\n\t\t\t\t}\n\t\t\t\tthis.govAddFile.emit({\n\t\t\t\t\tcomponent: FormFileClass.root,\n\t\t\t\t\tfile: newFile,\n\t\t\t\t})\n\t\t\t}\n\t\t})\n\n\t\tthis.govFiles.emit({\n\t\t\tcomponent: FormFileClass.root,\n\t\t\tfiles: filesBuffer.length ? filesBuffer : this.files,\n\t\t})\n\n\t\tif (this.resetAfterPick) {\n\t\t\tthis.reset().finally()\n\t\t}\n\t}\n\n\tcomponentDidLoad() {\n\t\tthis.attributeObserver = new AttributeObserver(this.host, (attributeName, newValue) => {\n\t\t\tthis.onAriaAttributeChange(attributeName, newValue);\n\t\t});\n\n\t\tthis.attributeObserver.startObserving(ariaAttributes);\n\t}\n\n\tcomponentWillLoad() {\n\t\tthis.f.passAttrToLabel(\"required\", String(this.required))\n\t\tthis.passControlAttrs()\n\t\tthis.inheritedAttributes = inheritAriaAttributes(this.host);\n\t}\n\n\tasync componentDidRender() {\n\t\tthis.registerListeners()\n\t}\n\n\tdisconnectedCallback() {\n\t\tthis.attributeObserver.stopObserving();\n\t}\n\n\tonAriaAttributeChange(attributeName: string, newValue: string) {\n\t\tthis.host.removeAttribute(attributeName)\n\t\tthis.inheritedAttributes = {...this.inheritedAttributes, [attributeName]: newValue};\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class={this.h.classes([FormFileClass.root])}\n\t\t\t\t invalid={toBoolAttrIfDefined(this.invalid)}\n\t\t\t\t expanded={toBoolAttrIfDefined(this.expanded)}>\n\t\t\t\t<div class={FormFileClass.area} ref={el => (this.areaRef = el as HTMLDivElement)}>\n\t\t\t\t\t<slot/>\n\t\t\t\t\t<input\n\t\t\t\t\t\tclass={FormFileClass.input}\n\t\t\t\t\t\tref={el => (this.inputRef = el as HTMLInputElement)}\n\t\t\t\t\t\tid={this.identifier || this.fileId}\n\t\t\t\t\t\ttype=\"file\"\n\t\t\t\t\t\tname={this.name}\n\t\t\t\t\t\taccept={this.accept}\n\t\t\t\t\t\tmultiple={this.multiple}\n\t\t\t\t\t\tonChange={this.onChangeHandler.bind(this)}\n\t\t\t\t\t\tonFocus={this.onFocusHandler.bind(this)}\n\t\t\t\t\t\tonBlur={this.onBlurHandler.bind(this)}\n\t\t\t\t\t\trequired={this.required}\n\t\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\t\t{...this.inheritedAttributes}\n\t\t\t\t\t\taria-required={toBoolAttrIfDefined(this.required)}\n\t\t\t\t\t\taria-invalid={toBoolAttrIfDefined(this.invalid)}\n\t\t\t\t\t\taria-disabled={toBoolAttrIfDefined(this.disabled)}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\n\t\t\t\t{this.h.hasSlot(\"attachments\") ? (\n\t\t\t\t\t<div class={FormFileClass.attachments}>\n\t\t\t\t\t\t<slot name={\"attachments\"}/>\n\t\t\t\t\t</div>\n\t\t\t\t) : null}\n\n\t\t\t\t{this.files.length && this.displayAttachments ? (\n\t\t\t\t\t<div class={FormFileClass.attachments}>\n\t\t\t\t\t\t<gov-attachments label={this.accessibleAttachmentsLabel}\n\t\t\t\t\t\t\t\t\t\t accessible-label={this.accessibleAttachmentsLabel}>\n\t\t\t\t\t\t\t{this.files.map(item => (\n\t\t\t\t\t\t\t\t<gov-attachments-item accessible-remove-labelledby={item.id}\n\t\t\t\t\t\t\t\t\t\t\t\t\t on-gov-remove={() => this.onRemoveFileHandler(item)}>\n\t\t\t\t\t\t\t\t\t<span class={\"sr-only\"} id={item.id}>\n\t\t\t\t\t\t\t\t\t\t{this.accessibleRemoveLabel.replace(\"{FILE_NAME}\", item.file.name)}\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t{item.file.name}\n\t\t\t\t\t\t\t\t\t{item.acceptValid === false ? (\n\t\t\t\t\t\t\t\t\t\t<gov-form-message slot=\"message\" color=\"error\">\n\t\t\t\t\t\t\t\t\t\t\t<gov-icon slot=\"icon\" name=\"exclamation-triangle-fill\"></gov-icon>\n\t\t\t\t\t\t\t\t\t\t\t{item.acceptValid === false ? this.errorAccept : null}\n\t\t\t\t\t\t\t\t\t\t</gov-form-message>\n\t\t\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t\t\t\t{item.sizeValid === false ? (\n\t\t\t\t\t\t\t\t\t\t<gov-form-message slot=\"message\" color=\"error\">\n\t\t\t\t\t\t\t\t\t\t\t<gov-icon slot=\"icon\" name=\"exclamation-triangle-fill\"></gov-icon>\n\t\t\t\t\t\t\t\t\t\t\t{this.errorSize.replace(\"{FILE_SIZE}\", formatBytes(this.maxFileSize))}\n\t\t\t\t\t\t\t\t\t\t</gov-form-message>\n\t\t\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t\t\t\t<span slot=\"info\">({formatBytes(item.file.size)})</span>\n\t\t\t\t\t\t\t\t</gov-attachments-item>\n\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t</gov-attachments>\n\t\t\t\t\t</div>\n\t\t\t\t) : null}\n\t\t\t</Host>\n\t\t)\n\t}\n\n\tprivate onRemoveFileHandler(file: GovFormFileItem) {\n\t\tconst index = this.files.findIndex(item => item.id === file.id)\n\t\tif (index !== -1) {\n\t\t\tconst files = this.files\n\t\t\tconst removeFile = this.files[index]\n\t\t\tfiles.splice(index, 1)\n\t\t\tthis.files = [...files]\n\t\t\tthis.govRemoveFile.emit({\n\t\t\t\tcomponent: FormFileClass.root,\n\t\t\t\tfile: removeFile,\n\t\t\t})\n\t\t\tthis.govFiles.emit({\n\t\t\t\tcomponent: FormFileClass.root,\n\t\t\t\tfiles,\n\t\t\t})\n\t\t}\n\t}\n\n\tprivate onFocusHandler(e: FocusEvent) {\n\t\te.stopPropagation()\n\t\tthis.govFocus.emit({\n\t\t\tcomponent: FormFileClass.root,\n\t\t\toriginalEvent: e,\n\t\t})\n\t}\n\n\tprivate onBlurHandler(e: FocusEvent) {\n\t\te.stopPropagation()\n\t\tthis.govBlur.emit({\n\t\t\tcomponent: FormFileClass.root,\n\t\t\toriginalEvent: e,\n\t\t})\n\t}\n\n\tprivate onChangeHandler(e: Event) {\n\t\te.stopPropagation()\n\t}\n\n\t/**\n\t * Returns the reference of the native element\n\t */\n\t@Method()\n\tasync getRef(): Promise<HTMLInputElement> {\n\t\treturn this.inputRef\n\t}\n\n\t/**\n\t * Returns the reference of the native area element\n\t */\n\t@Method()\n\tasync getAreaRef(): Promise<HTMLDivElement> {\n\t\treturn this.areaRef\n\t}\n\n\t/**\n\t * Remove all files from component state\n\t */\n\t@Method()\n\tasync reset(): Promise<void> {\n\t\tthis.files = []\n\t\tthis.inputRef.value = '';\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["FormFileClass","root","area","input","attachments","formatBytes","bytes","units","l","n","parseInt","toFixed","fileAcceptValidation","file","accept","length","replace","split","filter","RegExp","test","type","fileSizeValidation","maxSize","fileSize","Math","round","size","GovFormFile","proxyCustomElement","H","constructor","this","eventsRegistered","fileId","createID","h","govHost","host","f","govForm","watchControlAttrs","passControlAttrs","passAttrToControl","toBoolAttr","invalid","disabled","registerListeners","highlight","areaRef","classList","add","unhighlight","remove","inputRef","addEventListener","e","preventDefault","stopPropagation","files","target","resetAfterPick","validateFiles","expanded","events","inEvents","outEvents","map","eventName","preventDefaults","bind","forEach","handleDrop","dataTransfer","filesBuffer","Array","from","isFile","find","item","name","ignoreFileDuplicationCheck","isSizeValid","maxFileSize","isAcceptValid","newFile","id","acceptValid","sizeValid","displayAttachments","govAddFile","emit","component","govFiles","reset","finally","componentDidLoad","attributeObserver","AttributeObserver","attributeName","newValue","onAriaAttributeChange","startObserving","ariaAttributes","componentWillLoad","passAttrToLabel","String","required","inheritedAttributes","inheritAriaAttributes","componentDidRender","disconnectedCallback","stopObserving","removeAttribute","Object","assign","render","Host","key","class","classes","toBoolAttrIfDefined","ref","el","identifier","multiple","onChange","onChangeHandler","onFocus","onFocusHandler","onBlur","onBlurHandler","hasSlot","label","accessibleAttachmentsLabel","onRemoveFileHandler","accessibleRemoveLabel","slot","color","errorAccept","errorSize","index","findIndex","removeFile","splice","govRemoveFile","govFocus","originalEvent","govBlur","getRef","getAreaRef","value"],"sources":["../../../packages/core/src/components/gov-form/file/constants.ts","../../../packages/core/src/utils/file.utils.ts","../../../packages/core/src/components/gov-form/file/gov-form-file.tsx"],"sourcesContent":["export const FormFileClass = {\n\troot: 'gov-form-file',\n\tarea: 'gov-form-file__area',\n\tinput: 'gov-form-file__input',\n\tattachments: 'gov-form-file__attachments',\n}\n","export function formatBytes(bytes: any): string {\n\tconst units = ['bytes', 'KiB', 'MiB', 'GiB', 'TiB', 'PiB', 'EiB', 'ZiB', 'YiB']\n\tlet l = 0,\n\t\tn = parseInt(bytes, 10) || 0\n\n\twhile (n >= 1024 && ++l) {\n\t\tn = n / 1024\n\t}\n\n\treturn n.toFixed(n < 10 && l > 0 ? 1 : 0) + ' ' + units[l]\n}\n\nexport function fileAcceptValidation(file: File, accept: string): boolean {\n\tif (typeof accept === 'string' && accept.length) {\n\t\treturn (\n\t\t\taccept\n\t\t\t\t.replace(/\\s/g, '')\n\t\t\t\t.split(',')\n\t\t\t\t.filter(accept => {\n\t\t\t\t\treturn new RegExp(accept.replace('*', '.*')).test(file.type)\n\t\t\t\t}).length > 0\n\t\t)\n\t} else {\n\t\treturn true\n\t}\n}\n\nexport function fileSizeValidation(file: File, maxSize: number): boolean {\n\tconst fileSize = Math.round(file.size)\n\treturn fileSize <= maxSize\n}\n","import {Component, Element, Event, EventEmitter, h, Host, Method, Prop, State, Watch} from \"@stencil/core\"\nimport {createID} from \"../../../utils/string.utils\"\nimport {FormFileClass} from \"./constants\"\nimport {govHost, toBoolAttr, toBoolAttrIfDefined} from \"../../../helpers/Dom/template\"\nimport {fileAcceptValidation, fileSizeValidation, formatBytes} from \"../../../utils/file.utils\"\nimport {GovForm} from \"../../../helpers/Dom/form.types\"\nimport {GovHost} from \"../../../helpers/Dom/template.types\"\nimport {govForm} from \"../../../helpers/Dom/form\"\nimport {GovFormFileEvent, GovFormFileItem} from \"./gov-form-file.types\"\nimport {inheritAriaAttributes} from \"../../../helpers/Accessibility/accessibility\";\nimport {AttributeObserver, Attributes} from \"../../../helpers/Dom/attribute\";\nimport {ariaAttributes} from \"../../../helpers/Accessibility/attributes\";\n\n@Component({\n\ttag: \"gov-form-file\",\n})\nexport class GovFormFile {\n\tprivate f: GovForm\n\tprivate readonly h: GovHost\n\n\tprivate areaRef?: HTMLDivElement\n\tprivate inputRef?: HTMLInputElement\n\tprivate readonly fileId: string\n\tprivate attributeObserver: AttributeObserver\n\tprivate eventsRegistered = false\n\n\tconstructor() {\n\t\tthis.fileId = createID(\"GovInputFile\")\n\n\t\tthis.h = govHost(this.host)\n\t\tthis.f = govForm(this.h)\n\t}\n\n\t@Element() host: HTMLGovFormFileElement\n\t/**\n\t * Expands the file input to fill 100% of the container width.\n\t */\n\t@Prop() readonly expanded: boolean = false\n\t/**\n\t * Set whether the input is required or not. Please note that this is necessary for accessible inputs when the user is required to fill them.\n\t * When using this property you need to also set “novalidate” attribute to your form element to prevent browser from displaying its own validation errors.\n\t */\n\t@Prop() readonly required: boolean = false\n\t/**\n\t * Makes the File component disabled.\n\t * This prevents users from being able to interact with the File, and conveys its inactive state to assistive technologies.\n\t */\n\t@Prop() readonly disabled: boolean = false\n\t/**\n\t * After selecting the files, the main input element will be reset.\n\t * The propagation of the event with the selected files will not be affected.\n\t */\n\t@Prop({attribute: \"reset-after-pick\"}) readonly resetAfterPick: boolean = false\n\t/**\n\t * Selected files will not be checked for duplicates based on name and size.\n\t */\n\t@Prop({attribute: \"ignore-file-duplication-check\"}) readonly ignoreFileDuplicationCheck: boolean = false\n\t/**\n\t * Show list of attachments\n\t */\n\t@Prop({attribute: \"display-attachments\"}) readonly displayAttachments: boolean = true\n\t/**\n\t * Name of the input.\n\t */\n\t@Prop() readonly name: string\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/accept\n\t */\n\t@Prop() readonly accept: string\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/multiple\n\t */\n\t@Prop() readonly multiple: boolean = false\n\t/**\n\t * Maximum embedded file size\n\t */\n\t@Prop({attribute: \"max-file-size\"}) readonly maxFileSize: number = -1\n\t/**\n\t * Custom File identifier.\n\t */\n\t@Prop({attribute: \"identifier\"}) readonly identifier: string\n\t/**\n\t * Indicates the entered value does not conform to the format expected by the application.\n\t */\n\t@Prop() readonly invalid: boolean\n\t/**\n\t * Error message when the maximum file size is exceeded\n\t */\n\t@Prop({attribute: \"error-size\"}) readonly errorSize: string = \"Soubor je větší než povolená velikost {FILE_SIZE}\"\n\t/**\n\t * Insert unsupported file error message\n\t */\n\t@Prop({attribute: \"error-accept\"}) readonly errorAccept: string = \"Soubor tohoto typu není povolen\"\n\t/**\n\t * Adds accessible label for the remove button that is only shown for screen readers.\n\t */\n\t@Prop({attribute: \"accessible-remove-label\"}) readonly accessibleRemoveLabel: string = \"Odebrat soubor {FILE_NAME}\"\n\t/**\n\t * Adds accessible label for the list of attachments.\n\t */\n\t@Prop({attribute: \"accessible-attachments-label\"}) readonly accessibleAttachmentsLabel: string = \"Přílohy\"\n\t/**\n\t * Emitted when the File has focus.\n\t */\n\t@Event({eventName: \"gov-focus\"}) govFocus: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Emitted when the File loses focus.\n\t */\n\t@Event({eventName: \"gov-blur\"}) govBlur: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Called when the list of inserted files is changed\n\t */\n\t@Event({eventName: \"gov-files\"}) govFiles: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Called when a new file is added\n\t */\n\t@Event({eventName: \"gov-add-file\"}) govAddFile: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Called when a file is removed from the list\n\t */\n\t@Event({eventName: \"gov-remove-file\"}) govRemoveFile: EventEmitter<GovFormFileEvent>\n\n\n\t@Watch(\"disabled\")\n\t@Watch(\"invalid\")\n\twatchControlAttrs(): void {\n\t\tthis.passControlAttrs()\n\t}\n\n\t@State() files: GovFormFileItem[] = []\n\t@State() inheritedAttributes: Attributes = {}\n\n\n\n\tprivate passControlAttrs() {\n\t\tthis.f.passAttrToControl(\"invalid\", toBoolAttr(this.invalid))\n\t\tthis.f.passAttrToControl(\"disabled\", toBoolAttr(this.disabled))\n\t\tthis.f.passAttrToControl(\"type\", \"File\")\n\t}\n\n\n\tprivate registerListeners() {\n\t\tif (this.eventsRegistered) {\n\t\t\treturn\n\t\t}\n\t\tthis.eventsRegistered = true\n\n\t\tfunction highlight() {\n\t\t\tthis.areaRef.classList.add(\"highlight\")\n\t\t}\n\n\t\tfunction unhighlight() {\n\t\t\tthis.areaRef.classList.remove(\"highlight\")\n\t\t}\n\n\t\tthis.inputRef.addEventListener(\n\t\t\t\"change\",\n\t\t\te => {\n\t\t\t\te.preventDefault()\n\t\t\t\te.stopPropagation()\n\t\t\t\tconst files = (e.target as HTMLInputElement).files\n\t\t\t\tif (this.resetAfterPick) {\n\t\t\t\t\tif (files.length) {\n\t\t\t\t\t\tthis.validateFiles(files)\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tthis.validateFiles(files)\n\t\t\t\t}\n\t\t\t},\n\t\t\tfalse,\n\t\t)\n\n\t\tif (this.expanded) {\n\t\t\tconst events = [\"dragover\", \"dragleave\"]\n\t\t\tconst inEvents = [\"dragenter\", \"dragover\", \"mouseenter\"]\n\t\t\tconst outEvents = [\"dragleave\", \"drop\", \"mouseleave\"]\n\n\t\t\tevents.map(eventName => this.inputRef.addEventListener(eventName, this.preventDefaults.bind(this), false))\n\t\t\tinEvents.map(eventName => this.inputRef.addEventListener(eventName, highlight.bind(this), false))\n\t\t\toutEvents.forEach(eventName => this.inputRef.addEventListener(eventName, unhighlight.bind(this), false))\n\n\t\t\tthis.areaRef.addEventListener(\"drop\", this.handleDrop.bind(this), false)\n\t\t}\n\t}\n\n\tpreventDefaults(e) {\n\t\te.preventDefault()\n\t\te.stopPropagation()\n\t}\n\n\thandleDrop(e: DragEvent) {\n\t\tconst dataTransfer = e.dataTransfer\n\t\tthis.validateFiles(dataTransfer.files)\n\t}\n\n\tprivate validateFiles(files: FileList) {\n\t\tlet filesBuffer: GovFormFileItem[] = []\n\t\tArray.from(files).map(file => {\n\t\t\tconst isFile = this.files.find(item => item.file.name === file.name && item.file.size === file.size) || null\n\t\t\tif (isFile === null || this.ignoreFileDuplicationCheck) {\n\t\t\t\tconst isSizeValid = typeof this.maxFileSize === \"number\" && this.maxFileSize > 0 ? fileSizeValidation(file, this.maxFileSize) : true\n\t\t\t\tconst isAcceptValid = fileAcceptValidation(file, this.accept)\n\t\t\t\tconst newFile = {\n\t\t\t\t\tid: createID(\"GovFormFile\"),\n\t\t\t\t\tfile,\n\t\t\t\t\tacceptValid: isAcceptValid,\n\t\t\t\t\tsizeValid: isSizeValid,\n\t\t\t\t}\n\t\t\t\tif (this.displayAttachments) {\n\t\t\t\t\tthis.files = [...this.files, newFile]\n\t\t\t\t} else {\n\t\t\t\t\tfilesBuffer = [...filesBuffer, newFile]\n\t\t\t\t}\n\t\t\t\tthis.govAddFile.emit({\n\t\t\t\t\tcomponent: FormFileClass.root,\n\t\t\t\t\tfile: newFile,\n\t\t\t\t})\n\t\t\t}\n\t\t})\n\n\t\tthis.govFiles.emit({\n\t\t\tcomponent: FormFileClass.root,\n\t\t\tfiles: filesBuffer.length ? filesBuffer : this.files,\n\t\t})\n\n\t\tif (this.resetAfterPick) {\n\t\t\tthis.reset().finally()\n\t\t}\n\t}\n\n\tcomponentDidLoad() {\n\t\tthis.attributeObserver = new AttributeObserver(this.host, (attributeName, newValue) => {\n\t\t\tthis.onAriaAttributeChange(attributeName, newValue);\n\t\t});\n\n\t\tthis.attributeObserver.startObserving(ariaAttributes);\n\t}\n\n\tcomponentWillLoad() {\n\t\tthis.f.passAttrToLabel(\"required\", String(this.required))\n\t\tthis.passControlAttrs()\n\t\tthis.inheritedAttributes = inheritAriaAttributes(this.host);\n\t}\n\n\tasync componentDidRender() {\n\t\tthis.registerListeners()\n\t}\n\n\tdisconnectedCallback() {\n\t\tthis.attributeObserver.stopObserving();\n\t}\n\n\tonAriaAttributeChange(attributeName: string, newValue: string) {\n\t\tthis.host.removeAttribute(attributeName)\n\t\tthis.inheritedAttributes = {...this.inheritedAttributes, [attributeName]: newValue};\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class={this.h.classes([FormFileClass.root])}\n\t\t\t\t invalid={toBoolAttrIfDefined(this.invalid)}\n\t\t\t\t expanded={toBoolAttrIfDefined(this.expanded)}>\n\t\t\t\t<div class={FormFileClass.area} ref={el => (this.areaRef = el as HTMLDivElement)}>\n\t\t\t\t\t<slot/>\n\t\t\t\t\t<input\n\t\t\t\t\t\tclass={FormFileClass.input}\n\t\t\t\t\t\tref={el => (this.inputRef = el as HTMLInputElement)}\n\t\t\t\t\t\tid={this.identifier || this.fileId}\n\t\t\t\t\t\ttype=\"file\"\n\t\t\t\t\t\tname={this.name}\n\t\t\t\t\t\taccept={this.accept}\n\t\t\t\t\t\tmultiple={this.multiple}\n\t\t\t\t\t\tonChange={this.onChangeHandler.bind(this)}\n\t\t\t\t\t\tonFocus={this.onFocusHandler.bind(this)}\n\t\t\t\t\t\tonBlur={this.onBlurHandler.bind(this)}\n\t\t\t\t\t\trequired={this.required}\n\t\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\t\t{...this.inheritedAttributes}\n\t\t\t\t\t\taria-required={toBoolAttrIfDefined(this.required)}\n\t\t\t\t\t\taria-invalid={toBoolAttrIfDefined(this.invalid)}\n\t\t\t\t\t\taria-disabled={toBoolAttrIfDefined(this.disabled)}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\n\t\t\t\t{this.h.hasSlot(\"attachments\") ? (\n\t\t\t\t\t<div class={FormFileClass.attachments}>\n\t\t\t\t\t\t<slot name={\"attachments\"}/>\n\t\t\t\t\t</div>\n\t\t\t\t) : null}\n\n\t\t\t\t{this.files.length && this.displayAttachments ? (\n\t\t\t\t\t<div class={FormFileClass.attachments}>\n\t\t\t\t\t\t<gov-attachments label={this.accessibleAttachmentsLabel}\n\t\t\t\t\t\t\t\t\t\t accessible-label={this.accessibleAttachmentsLabel}>\n\t\t\t\t\t\t\t{this.files.map(item => (\n\t\t\t\t\t\t\t\t<gov-attachments-item accessible-remove-labelledby={item.id}\n\t\t\t\t\t\t\t\t\t\t\t\t\t on-gov-remove={() => this.onRemoveFileHandler(item)}>\n\t\t\t\t\t\t\t\t\t<span class={\"sr-only\"} id={item.id}>\n\t\t\t\t\t\t\t\t\t\t{this.accessibleRemoveLabel.replace(\"{FILE_NAME}\", item.file.name)}\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t{item.file.name}\n\t\t\t\t\t\t\t\t\t{item.acceptValid === false ? (\n\t\t\t\t\t\t\t\t\t\t<gov-form-message slot=\"message\" color=\"error\">\n\t\t\t\t\t\t\t\t\t\t\t<gov-icon slot=\"icon\" name=\"exclamation-triangle-fill\" type=\"components\"></gov-icon>\n\t\t\t\t\t\t\t\t\t\t\t{item.acceptValid === false ? this.errorAccept : null}\n\t\t\t\t\t\t\t\t\t\t</gov-form-message>\n\t\t\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t\t\t\t{item.sizeValid === false ? (\n\t\t\t\t\t\t\t\t\t\t<gov-form-message slot=\"message\" color=\"error\">\n\t\t\t\t\t\t\t\t\t\t\t<gov-icon slot=\"icon\" name=\"exclamation-triangle-fill\" type=\"components\"></gov-icon>\n\t\t\t\t\t\t\t\t\t\t\t{this.errorSize.replace(\"{FILE_SIZE}\", formatBytes(this.maxFileSize))}\n\t\t\t\t\t\t\t\t\t\t</gov-form-message>\n\t\t\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t\t\t\t<span slot=\"info\">({formatBytes(item.file.size)})</span>\n\t\t\t\t\t\t\t\t</gov-attachments-item>\n\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t</gov-attachments>\n\t\t\t\t\t</div>\n\t\t\t\t) : null}\n\t\t\t</Host>\n\t\t)\n\t}\n\n\tprivate onRemoveFileHandler(file: GovFormFileItem) {\n\t\tconst index = this.files.findIndex(item => item.id === file.id)\n\t\tif (index !== -1) {\n\t\t\tconst files = this.files\n\t\t\tconst removeFile = this.files[index]\n\t\t\tfiles.splice(index, 1)\n\t\t\tthis.files = [...files]\n\t\t\tthis.govRemoveFile.emit({\n\t\t\t\tcomponent: FormFileClass.root,\n\t\t\t\tfile: removeFile,\n\t\t\t})\n\t\t\tthis.govFiles.emit({\n\t\t\t\tcomponent: FormFileClass.root,\n\t\t\t\tfiles,\n\t\t\t})\n\t\t}\n\t}\n\n\tprivate onFocusHandler(e: FocusEvent) {\n\t\te.stopPropagation()\n\t\tthis.govFocus.emit({\n\t\t\tcomponent: FormFileClass.root,\n\t\t\toriginalEvent: e,\n\t\t})\n\t}\n\n\tprivate onBlurHandler(e: FocusEvent) {\n\t\te.stopPropagation()\n\t\tthis.govBlur.emit({\n\t\t\tcomponent: FormFileClass.root,\n\t\t\toriginalEvent: e,\n\t\t})\n\t}\n\n\tprivate onChangeHandler(e: Event) {\n\t\te.stopPropagation()\n\t}\n\n\t/**\n\t * Returns the reference of the native element\n\t */\n\t@Method()\n\tasync getRef(): Promise<HTMLInputElement> {\n\t\treturn this.inputRef\n\t}\n\n\t/**\n\t * Returns the reference of the native area element\n\t */\n\t@Method()\n\tasync getAreaRef(): Promise<HTMLDivElement> {\n\t\treturn this.areaRef\n\t}\n\n\t/**\n\t * Remove all files from component state\n\t */\n\t@Method()\n\tasync reset(): Promise<void> {\n\t\tthis.files = []\n\t\tthis.inputRef.value = '';\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +1,2 @@
1
- import{p as t,H as e,h as a,d as i}from"./p-ae3dada7.js";import{a as s,b as o,c as r}from"./p-e44a0fee.js";import{g as n}from"./p-0075138f.js";import{v as c}from"./p-19c681a3.js";const f=t(class t extends e{constructor(){super();this.__registerHost();this.gap=undefined;this.orientation="vertical";this.h=n(this.host)}validateGap(t){if(t){c(o,t,s.root)}}validateOrientation(t){if(t){c(r,t,s.root)}}componentWillLoad(){this.validateGap(this.gap);this.validateOrientation(this.orientation)}render(){return a(i,{key:"b7a379997ac1f4080471c42c23cad6f0ed055fd7",gap:this.gap,class:this.h.classes(s.root)},a("slot",{key:"a36809822e81913ec6c8cabdee9eaf64c9f9f471"}))}get host(){return this}static get watchers(){return{gap:["validateGap"],orientation:["validateOrientation"]}}},[4,"gov-form-group",{gap:[1],orientation:[1]},undefined,{gap:["validateGap"],orientation:["validateOrientation"]}]);function p(){if(typeof customElements==="undefined"){return}const t=["gov-form-group"];t.forEach((t=>{switch(t){case"gov-form-group":if(!customElements.get(t)){customElements.define(t,f)}break}}))}p();const d=f;const m=p;export{d as GovFormGroup,m as defineCustomElement};
1
+ import{p as t,H as e,h as a,d as i}from"./p-42200001.js";import{a as s,b as o,c as r}from"./p-e44a0fee.js";import{g as n}from"./p-ea7fdd2e.js";import{v as c}from"./p-a2435993.js";const f=t(class t extends e{constructor(){super();this.__registerHost();this.gap=undefined;this.orientation="vertical";this.h=n(this.host)}validateGap(t){if(t){c(o,t,s.root)}}validateOrientation(t){if(t){c(r,t,s.root)}}componentWillLoad(){this.validateGap(this.gap);this.validateOrientation(this.orientation)}render(){return a(i,{key:"a6b2a022f3c8573fb1bb7424d6a5ac2dc54b101b",gap:this.gap,class:this.h.classes(s.root)},a("slot",{key:"e1b5f38d87e9f46f555e2fc3d247a9c3c10b5872"}))}get host(){return this}static get watchers(){return{gap:["validateGap"],orientation:["validateOrientation"]}}},[4,"gov-form-group",{gap:[1],orientation:[1]},undefined,{gap:["validateGap"],orientation:["validateOrientation"]}]);function p(){if(typeof customElements==="undefined"){return}const t=["gov-form-group"];t.forEach((t=>{switch(t){case"gov-form-group":if(!customElements.get(t)){customElements.define(t,f)}break}}))}p();const d=f;const m=p;export{d as GovFormGroup,m as defineCustomElement};
2
2
  //# sourceMappingURL=gov-form-group.js.map
@@ -1,2 +1,2 @@
1
- import{G as o,d as s}from"./p-778e3fff.js";const f=o;const t=s;export{f as GovFormInput,t as defineCustomElement};
1
+ import{G as c,d as o}from"./p-dc952cc2.js";const s=c;const t=o;export{s as GovFormInput,t as defineCustomElement};
2
2
  //# sourceMappingURL=gov-form-input.js.map
@@ -1,2 +1,2 @@
1
- import{p as s,H as e,c as t,h as o,d as c}from"./p-ae3dada7.js";import{F as i}from"./p-7ba4daf4.js";const l=s(class s extends e{constructor(){super();this.__registerHost();this.govClick=t(this,"gov-click",7);this.identifier=undefined;this.size="m";this.required=false;this.legend=false}render(){const s=this.legend?"legend":"label";return o(c,{key:"9f1487b736715086b83a452d499bf9742cf24672",class:i.root,size:this.size},o(s,{key:"61802424b0836bd8baed52f7972dcee2921b15fd",class:i.label,htmlFor:this.identifier,onClick:()=>this.govClick.emit()},o("slot",{key:"b0dc6eda00c0d76bc5c6f1455bb250224e76365d"}),this.required?o("span",{class:"gov-color--error-500"}," *"):null))}},[4,"gov-form-label",{identifier:[1],size:[1],required:[4],legend:[4]}]);function r(){if(typeof customElements==="undefined"){return}const s=["gov-form-label"];s.forEach((s=>{switch(s){case"gov-form-label":if(!customElements.get(s)){customElements.define(s,l)}break}}))}r();const a=l;const n=r;export{a as GovFormLabel,n as defineCustomElement};
1
+ import{G as a,d as o}from"./p-68a1aaec.js";const s=a;const t=o;export{s as GovFormLabel,t as defineCustomElement};
2
2
  //# sourceMappingURL=gov-form-label.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["GovFormLabel","proxyCustomElement","H","render","Tag","this","legend","h","Host","key","class","FormLabelClass","root","size","label","htmlFor","identifier","onClick","govClick","emit","required"],"sources":["../../../packages/core/src/components/gov-form/label/gov-form-label.tsx"],"sourcesContent":["import { Component, Event, EventEmitter, h, Prop, Host } from '@stencil/core'\nimport { FormLabelClass, FormLabelSizesTypes } from './constants'\n\n@Component({\n\ttag: 'gov-form-label',\n})\nexport class GovFormLabel {\n\t/**\n\t * Identifier for label.\n\t */\n\t@Prop({ attribute: 'identifier' }) readonly identifier: string\n\t/**\n\t * Label's size.\n\t */\n\t@Prop() readonly size?: FormLabelSizesTypes = 'm'\n\t/**\n\t * Set whether the input is required or not.\n\t */\n\t@Prop() readonly required: boolean = false\n\t/**\n\t * Use label as a legend for better accessibility.\n\t * Note: Don't forget to set the fieldset attribute of the gov-form-control component\n\t */\n\t@Prop() readonly legend: boolean = false\n\t/**\n\t * Emitted when the label click.\n\t */\n\t@Event({ eventName: 'gov-click' }) govClick: EventEmitter<PointerEvent>\n\n\trender() {\n\t\tconst Tag = this.legend ? 'legend' : 'label'\n\t\treturn (\n\t\t\t<Host class={FormLabelClass.root} size={this.size}>\n\t\t\t\t<Tag class={FormLabelClass.label} htmlFor={this.identifier} onClick={() => this.govClick.emit()}>\n\t\t\t\t\t<slot></slot>\n\t\t\t\t\t{this.required ? <span class=\"gov-color--error-500\">&nbsp;*</span> : null}\n\t\t\t\t</Tag>\n\t\t\t</Host>\n\t\t)\n\t}\n}\n"],"mappings":"0GAMaA,EAAYC,EAAA,MAAAD,UAAAE,E,oHAQsB,I,cAIT,M,YAKF,K,CAMnC,MAAAC,GACC,MAAMC,EAAMC,KAAKC,OAAS,SAAW,QACrC,OACCC,EAACC,EAAI,CAAAC,IAAA,2CAACC,MAAOC,EAAeC,KAAMC,KAAMR,KAAKQ,MAC5CN,EAACH,EAAG,CAAAK,IAAA,2CAACC,MAAOC,EAAeG,MAAOC,QAASV,KAAKW,WAAYC,QAAS,IAAMZ,KAAKa,SAASC,QACxFZ,EAAA,QAAAE,IAAA,6CACCJ,KAAKe,SAAWb,EAAA,QAAMG,MAAM,wBAAsB,MAAkB,M","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":[],"mappings":"","ignoreList":[]}
@@ -1,2 +1,2 @@
1
- import{G as o,d as s}from"./p-ae7e6127.js";const t=o;const a=s;export{t as GovFormMessage,a as defineCustomElement};
1
+ import{G as o,d as s}from"./p-31a99bfc.js";const t=o;const a=s;export{t as GovFormMessage,a as defineCustomElement};
2
2
  //# sourceMappingURL=gov-form-message.js.map
@@ -1,2 +1,2 @@
1
- import{p as t,H as s,c as i,h as e,d as o}from"./p-ae3dada7.js";import{g as a,h as n,i as h}from"./p-255d0471.js";import{g as l,c as r,t as c}from"./p-0075138f.js";import{v as d}from"./p-19c681a3.js";import{c as u,r as f}from"./p-95d41a3b.js";import{p as m}from"./p-ded281e6.js";import{t as v}from"./p-26618322.js";import{A as p,a as g}from"./p-33d5d1ed.js";import{d as b}from"./p-1366ed8d.js";import{d as y}from"./p-cc90a508.js";import{d as k}from"./p-778e3fff.js";import{d as w}from"./p-d5f25595.js";import{d as A}from"./p-6e19816b.js";const j=t(class t extends s{constructor(){super();this.__registerHost();this.govFocus=i(this,"gov-focus",7);this.govBlur=i(this,"gov-blur",7);this.govChange=i(this,"gov-change",7);this.govSelect=i(this,"gov-select",7);this.govRemove=i(this,"gov-remove",7);this.value=undefined;this.options=undefined;this.identifier=undefined;this.placeholder=undefined;this.size="m";this.name=undefined;this.hideSelectedList=false;this.required=false;this.disabled=false;this.invalid=undefined;this.success=undefined;this.messageEmpty="Nebyly nalezeny žádné výsledky";this.messageLoading="Načítám...";this.focused=undefined;this.valueState=undefined;this.selectedOptionsState=[];this.optionsState=[];this.inheritedAttributes={};this.selectId=u("GovSelect");this.listId=u("GovMultiList");this.h=l(this.host);this.f=a(this.h)}validateSize(t){d(h,t,n.root)}watchOptions(t){this.optionsState=m(t)}watchValue(t){this.selectedOptionsState=m(t)}watchControlAttrs(){this.passControlAttrs()}passControlAttrs(){this.f.passAttrToControl("size",this.size);this.f.passAttrToControl("invalid",r(this.invalid));this.f.passAttrToControl("disabled",r(this.disabled));this.f.passAttrToControl("success",r(this.success))}componentDidLoad(){this.attributeObserver=new p(this.host,((t,s)=>{this.onAriaAttributeChange(t,s)}));this.attributeObserver.startObserving(g);this.initAutocomplete()}componentWillLoad(){this.validateSize(this.size);this.optionsState=m(this.options);this.selectedOptionsState=m(this.value)}disconnectedCallback(){this.attributeObserver.stopObserving()}onAriaAttributeChange(t,s){this.host.removeAttribute(t);this.inheritedAttributes=Object.assign(Object.assign({},this.inheritedAttributes),{[t]:s})}getAvailableOptions(t=false){if(Array.isArray(this.optionsState)&&this.optionsState.length){if(t){return this.optionsState}return this.optionsState.filter((t=>{const s=this.selectedValueIndex(t.value);return s!==-1||(t===null||t===void 0?void 0:t.disabled)?false:true})).map((t=>{var s;return{name:(s=t.label)!==null&&s!==void 0?s:t.value,value:t.value}}))}return Array.from(this.selectRef.querySelectorAll("option")).filter((s=>{if(t){return true}const i=this.selectedValueIndex(s.value);return!(s.disabled||s.selected||i>-1)})).map((t=>({name:t.textContent,value:t.value})))}initAutocomplete(){var t,s,i,e,o;(t=this.autocompleteRef)===null||t===void 0?void 0:t.addEventListener("gov-select",this.onSelectHandler.bind(this));(s=this.autocompleteRef)===null||s===void 0?void 0:s.addEventListener("gov-input",this.onInputHandler.bind(this));(i=this.autocompleteRef)===null||i===void 0?void 0:i.addEventListener("gov-focus",this.onFocusHandler.bind(this));(e=this.autocompleteRef)===null||e===void 0?void 0:e.addEventListener("gov-blur",this.onBlurHandler.bind(this));(o=this.autocompleteRef)===null||o===void 0?void 0:o.setSearchCallback((t=>new Promise((s=>{const i=this.getAvailableOptions();if(String(t).length===0){return s(i)}s(i.filter((({label:s,value:i})=>{if(!s)s=i;return f(s).toLowerCase().indexOf(f(t).toLowerCase())>-1})))})))).finally()}selectedValueIndex(t){return this.selectedOptionsState.findIndex((s=>s===t))}getOptionElement(t){return this.selectRef.querySelector('option[value="'+t+'"]')}getOption(t){var s;return(s=this.getAvailableOptions(true).find((s=>s.value===t)))!==null&&s!==void 0?s:null}selectOption(t,s=true){const i=this.selectedValueIndex(t);if(i===-1){this.selectedOptionsState=[...this.selectedOptionsState,t];this.value=this.selectedOptionsState;if(s){this.govChange.emit({component:n.root,value:this.selectedOptionsState});this.govSelect.emit({component:n.root,value:this.selectedOptionsState})}const i=this.getOptionElement(t);if(i){i.selected=true}}}removeOption(t,s=true){const i=this.selectedValueIndex(t);if(i!==-1){this.selectedOptionsState.splice(i,1);this.selectedOptionsState=[...this.selectedOptionsState];this.value=this.selectedOptionsState;if(s){this.govChange.emit({component:n.root,value:this.selectedOptionsState});this.govRemove.emit({component:n.root,value:this.selectedOptionsState})}const e=this.getOptionElement(t);if(e){e.selected=false}}}async componentDidRender(){this.passControlAttrs();this.f.passAttrToLabel("required",String(this.required));v((()=>{this.selectRef.querySelectorAll("option").forEach((t=>{if(t.selected){this.selectOption(t.value,false)}}))}))}render(){return e(o,{key:"0e2bf90516a05a8e0c27c7532efe5da224c03465",class:n.root,size:this.size},e("div",{key:"f11641f89fe42687883fe53fe948087a27193071",class:n.wrap},this.h.hasSlot("prefix")&&e("slot",{key:"6cd9f9136c071a6378402289894fdabc507ebff2",name:"prefix"}),e("gov-form-autocomplete",{key:"955f58e159a530a5b533c6460547ae709735256e",value:this.valueState,disabled:this.disabled,identifier:this.identifier||this.selectId,required:false,size:this.size,placeholder:this.placeholder,"message-empty":this.messageEmpty,"message-loading":this.messageLoading,ref:t=>this.autocompleteRef=t,minlength:0,"aria-owns":this.listId},e("gov-icon",{key:"b378d8bde11321d2dc578f99c8158056f1253164",slot:"right-icon",class:"icon-arrow",name:"chevron-down"}),this.h.hasSlot("right-icon")&&!(this.success||this.invalid)&&e("slot",{key:"6de4b89ef556f1eaaec97836eac78d10831b28c2",name:"right-icon"}),this.success&&e("gov-icon",{key:"19756d99d19cba8cecdc9a0adb0c35e1a5d8c024",slot:"validation-icon",class:"icon-validation",name:"check-lg"}),this.invalid&&e("gov-icon",{key:"cb21e4f8d4b932602b3409f1c8e4a627c1591bd3",slot:"validation-icon",class:"icon-validation",name:"exclamation-lg"})),e("select",Object.assign({key:"40b56eba1078e476fcc782c2ffbfbcbee503434a",hidden:true,class:"hidden-select-list","aria-hidden":r(true),multiple:true,required:this.required,name:this.name,disabled:this.disabled,ref:t=>this.selectRef=t},this.inheritedAttributes,{"aria-disabled":c(this.disabled),"aria-required":c(this.required),"aria-invalid":c(this.invalid)}),e("slot",{key:"6c970c5fb7d8188a6135e5df2652a48d72ce7a05"}),Array.isArray(this.optionsState)&&this.optionsState.map((t=>{var s;const i=this.selectedValueIndex(t.value);return e("option",{value:t.value,selected:i>-1,disabled:t===null||t===void 0?void 0:t.disabled},(s=t.label)!==null&&s!==void 0?s:t.value)}))),this.h.hasSlot("sufix")&&e("slot",{key:"46c5c8ab89561433a6c6d51eb9097149f3dc4155",name:"sufix"})),this.hideSelectedList===false?e("ul",{role:"listbox",id:this.listId,class:n.list},Array.isArray(this.selectedOptionsState)&&this.selectedOptionsState.map((t=>{var s,i;const o=this.getOption(t);if(!o)return null;return e("li",{class:n.item,role:"option"},(s=o.label)!==null&&s!==void 0?s:o.value,e("gov-button",{"accessible-label":(i="Odebrat vybranou položku "+o.label)!==null&&i!==void 0?i:o.value,color:"primary",type:"base",size:this.size,"on-gov-click":()=>this.onTagRemove(t)},e("gov-icon",{name:"x-lg"})))}))):null)}onFocusHandler(t){t.stopPropagation();this.focused=true;this.govFocus.emit({component:n.root,originalEvent:t,value:this.selectedOptionsState})}onBlurHandler(t){t.stopPropagation();t.stopPropagation();this.focused=false;this.govBlur.emit({component:n.root,originalEvent:t,value:this.selectedOptionsState})}onInputHandler(t){this.valueState=t.detail.value;t.stopPropagation()}onSelectHandler(t){t.stopPropagation();const s=t.detail.selected;this.selectOption(s.value);this.valueState="";this.autocompleteRef.clearValue().finally();this.autocompleteRef.focus()}onTagRemove(t){this.removeOption(t)}async setFocus(t){return this.selectRef.focus(t)}async setValue(t){this.valueState=t}async getRef(){return this.selectRef}get host(){return this}static get watchers(){return{size:["validateSize","watchControlAttrs"],options:["watchOptions"],value:["watchValue"],disabled:["watchControlAttrs"],invalid:["watchControlAttrs"],success:["watchControlAttrs"]}}},[4,"gov-form-multi-select",{value:[1537],options:[1537],identifier:[1],placeholder:[1],size:[1],name:[1],hideSelectedList:[4,"hide-selected-list"],required:[4],disabled:[4],invalid:[4],success:[4],messageEmpty:[1,"message-empty"],messageLoading:[1,"message-loading"],focused:[32],valueState:[32],selectedOptionsState:[32],optionsState:[32],inheritedAttributes:[32],setFocus:[64],setValue:[64],getRef:[64]},undefined,{size:["validateSize","watchControlAttrs"],options:["watchOptions"],value:["watchValue"],disabled:["watchControlAttrs"],invalid:["watchControlAttrs"],success:["watchControlAttrs"]}]);function O(){if(typeof customElements==="undefined"){return}const t=["gov-form-multi-select","gov-button","gov-form-autocomplete","gov-form-input","gov-icon","gov-skeleton"];t.forEach((t=>{switch(t){case"gov-form-multi-select":if(!customElements.get(t)){customElements.define(t,j)}break;case"gov-button":if(!customElements.get(t)){b()}break;case"gov-form-autocomplete":if(!customElements.get(t)){y()}break;case"gov-form-input":if(!customElements.get(t)){k()}break;case"gov-icon":if(!customElements.get(t)){w()}break;case"gov-skeleton":if(!customElements.get(t)){A()}break}}))}O();const C=j;const E=O;export{C as GovFormMultiSelect,E as defineCustomElement};
1
+ import{p as t,H as e,c as i,h as s,d as o}from"./p-42200001.js";import{g as n,h as a,i as h}from"./p-9908b9f0.js";import{g as l,c as r,t as d}from"./p-ea7fdd2e.js";import{v as c}from"./p-a2435993.js";import{c as u,r as f}from"./p-cd6c2938.js";import{p as m}from"./p-ded281e6.js";import{t as v}from"./p-26618322.js";import{A as p,a as g}from"./p-33d5d1ed.js";import{d as b}from"./p-7d4f2214.js";import{d as y}from"./p-45097b4c.js";import{d as k}from"./p-dc952cc2.js";import{d as j}from"./p-f44899e1.js";import{d as w}from"./p-dfb5794a.js";const O=t(class t extends e{constructor(){super();this.__registerHost();this.govFocus=i(this,"gov-focus",7);this.govBlur=i(this,"gov-blur",7);this.govChange=i(this,"gov-change",7);this.govSelect=i(this,"gov-select",7);this.govRemove=i(this,"gov-remove",7);this.value=undefined;this.options=undefined;this.identifier=undefined;this.placeholder=undefined;this.size="m";this.name=undefined;this.hideSelectedList=false;this.required=false;this.disabled=false;this.invalid=undefined;this.success=undefined;this.messageEmpty="Nebyly nalezeny žádné výsledky";this.messageLoading="Načítám...";this.focused=undefined;this.valueState=undefined;this.selectedOptionsState=[];this.optionsState=[];this.inheritedAttributes={};this.selectId=u("GovSelect");this.listId=u("GovMultiList");this.h=l(this.host);this.f=n(this.h)}validateSize(t){c(h,t,a.root)}watchOptions(t){this.optionsState=m(t)}watchValue(t){this.selectedOptionsState=m(t)}componentDidLoad(){this.attributeObserver=new p(this.host,((t,e)=>{this.onAriaAttributeChange(t,e)}));this.attributeObserver.startObserving(g);this.initAutocomplete()}componentWillLoad(){this.validateSize(this.size);this.optionsState=m(this.options);this.selectedOptionsState=m(this.value)}disconnectedCallback(){this.attributeObserver.stopObserving()}onAriaAttributeChange(t,e){this.host.removeAttribute(t);this.inheritedAttributes=Object.assign(Object.assign({},this.inheritedAttributes),{[t]:e})}getAvailableOptions(t=false){if(Array.isArray(this.optionsState)&&this.optionsState.length){if(t){return this.optionsState}return this.optionsState.filter((t=>{const e=this.selectedValueIndex(t.value);return e!==-1||(t===null||t===void 0?void 0:t.disabled)?false:true})).map((t=>{var e;return{name:(e=t.label)!==null&&e!==void 0?e:t.value,value:t.value}}))}return Array.from(this.selectRef.querySelectorAll("option")).filter((e=>{if(t){return true}const i=this.selectedValueIndex(e.value);return!(e.disabled||e.selected||i>-1)})).map((t=>({name:t.textContent,value:t.value})))}initAutocomplete(){var t,e,i,s,o;(t=this.autocompleteRef)===null||t===void 0?void 0:t.addEventListener("gov-select",this.onSelectHandler.bind(this));(e=this.autocompleteRef)===null||e===void 0?void 0:e.addEventListener("gov-input",this.onInputHandler.bind(this));(i=this.autocompleteRef)===null||i===void 0?void 0:i.addEventListener("gov-focus",this.onFocusHandler.bind(this));(s=this.autocompleteRef)===null||s===void 0?void 0:s.addEventListener("gov-blur",this.onBlurHandler.bind(this));(o=this.autocompleteRef)===null||o===void 0?void 0:o.setSearchCallback((t=>new Promise((e=>{const i=this.getAvailableOptions();if(String(t).length===0){return e(i)}e(i.filter((({label:e,value:i})=>{if(!e)e=i;return f(e).toLowerCase().indexOf(f(t).toLowerCase())>-1})))})))).finally()}selectedValueIndex(t){return this.selectedOptionsState.findIndex((e=>e===t))}getOptionElement(t){return this.selectRef.querySelector('option[value="'+t+'"]')}getOption(t){var e;return(e=this.getAvailableOptions(true).find((e=>e.value===t)))!==null&&e!==void 0?e:null}selectOption(t,e=true){const i=this.selectedValueIndex(t);if(i===-1){this.selectedOptionsState=[...this.selectedOptionsState,t];this.value=this.selectedOptionsState;if(e){this.govChange.emit({component:a.root,value:this.selectedOptionsState});this.govSelect.emit({component:a.root,value:this.selectedOptionsState})}const i=this.getOptionElement(t);if(i){i.selected=true}}}removeOption(t,e=true){const i=this.selectedValueIndex(t);if(i!==-1){this.selectedOptionsState.splice(i,1);this.selectedOptionsState=[...this.selectedOptionsState];this.value=this.selectedOptionsState;if(e){this.govChange.emit({component:a.root,value:this.selectedOptionsState});this.govRemove.emit({component:a.root,value:this.selectedOptionsState})}const s=this.getOptionElement(t);if(s){s.selected=false}}}async componentDidRender(){this.f.passAttrToLabel("required",String(this.required));v((()=>{this.selectRef.querySelectorAll("option").forEach((t=>{if(t.selected){this.selectOption(t.value,false)}}))}))}render(){return s(o,{key:"8c36a19951ed5931adea3e023209e8c6b271a98f",class:a.root,size:this.size},s("div",{key:"97ed4682166e9f9261bdde9f8e9261eb350f2a85",class:a.wrap},this.h.hasSlot("prefix")&&s("slot",{key:"e49357d489985785acb2fd4917ec0eea02e420e4",name:"prefix"}),s("gov-form-autocomplete",{key:"9aba6a6e6208107e62e916505e30f56a03707cf1",value:this.valueState,disabled:this.disabled,identifier:this.identifier||this.selectId,required:false,invalid:this.invalid,success:this.success,size:this.size,placeholder:this.placeholder,"message-empty":this.messageEmpty,"message-loading":this.messageLoading,ref:t=>this.autocompleteRef=t,minlength:0,"aria-owns":this.listId},this.success&&s("gov-icon",{key:"0ecf17afa6bef85ac0666e206b0d84bc63cdde2f",slot:"validation-icon",class:"validation-icon",name:"check-lg",type:"components"}),this.invalid&&s("gov-icon",{key:"7573420027300e8951adb1bafe934dbafe5be4a4",slot:"validation-icon",class:"validation-icon",name:"exclamation-lg",type:"components"}),s("gov-icon",{key:"461f2108ddd524153d5f684b0fea218913410737",slot:"icon-end",class:"arrow-icon",name:"chevron-down",type:"components"})),s("select",Object.assign({key:"61aad9d04d5ce5778f66c794d447e45f8d605492",hidden:true,class:"hidden-select-list","aria-hidden":r(true),multiple:true,required:this.required,name:this.name,disabled:this.disabled,ref:t=>this.selectRef=t},this.inheritedAttributes,{"aria-disabled":d(this.disabled),"aria-required":d(this.required),"aria-invalid":d(this.invalid)}),s("slot",{key:"6dda21eb97bab4a943d51f3f4d0593f7580740ed"}),Array.isArray(this.optionsState)&&this.optionsState.map((t=>{var e;const i=this.selectedValueIndex(t.value);return s("option",{value:t.value,selected:i>-1,disabled:t===null||t===void 0?void 0:t.disabled},(e=t.label)!==null&&e!==void 0?e:t.value)}))),this.h.hasSlot("sufix")&&s("slot",{key:"91c91489ce3167f9e0e9eda66e1fab3553750472",name:"sufix"})),this.hideSelectedList===false?s("ul",{role:"listbox",id:this.listId,class:a.list},Array.isArray(this.selectedOptionsState)&&this.selectedOptionsState.map((t=>{var e,i;const o=this.getOption(t);if(!o)return null;return s("li",{class:a.item,role:"option"},(e=o.label)!==null&&e!==void 0?e:o.value,s("gov-button",{"aria-label":(i="Odebrat vybranou položku "+o.label)!==null&&i!==void 0?i:o.value,color:"primary",type:"base",size:this.size,"on-gov-click":()=>this.onTagRemove(t)},s("gov-icon",{name:"x-lg",type:"components"})))}))):null)}onFocusHandler(t){t.stopPropagation();this.focused=true;this.govFocus.emit({component:a.root,originalEvent:t,value:this.selectedOptionsState})}onBlurHandler(t){t.stopPropagation();t.stopPropagation();this.focused=false;this.govBlur.emit({component:a.root,originalEvent:t,value:this.selectedOptionsState})}onInputHandler(t){this.valueState=t.detail.value;t.stopPropagation()}onSelectHandler(t){t.stopPropagation();const e=t.detail.selected;this.selectOption(e.value);this.valueState="";this.autocompleteRef.clearValue().finally();this.autocompleteRef.focus()}onTagRemove(t){this.removeOption(t)}async setFocus(t){return this.selectRef.focus(t)}async setValue(t){this.valueState=t}async getRef(){return this.selectRef}get host(){return this}static get watchers(){return{size:["validateSize"],options:["watchOptions"],value:["watchValue"]}}},[4,"gov-form-multi-select",{value:[1537],options:[1537],identifier:[1],placeholder:[1],size:[1],name:[1],hideSelectedList:[4,"hide-selected-list"],required:[4],disabled:[4],invalid:[516],success:[4],messageEmpty:[1,"message-empty"],messageLoading:[1,"message-loading"],focused:[32],valueState:[32],selectedOptionsState:[32],optionsState:[32],inheritedAttributes:[32],setFocus:[64],setValue:[64],getRef:[64]},undefined,{size:["validateSize"],options:["watchOptions"],value:["watchValue"]}]);function E(){if(typeof customElements==="undefined"){return}const t=["gov-form-multi-select","gov-button","gov-form-autocomplete","gov-form-input","gov-icon","gov-skeleton"];t.forEach((t=>{switch(t){case"gov-form-multi-select":if(!customElements.get(t)){customElements.define(t,O)}break;case"gov-button":if(!customElements.get(t)){b()}break;case"gov-form-autocomplete":if(!customElements.get(t)){y()}break;case"gov-form-input":if(!customElements.get(t)){k()}break;case"gov-icon":if(!customElements.get(t)){j()}break;case"gov-skeleton":if(!customElements.get(t)){w()}break}}))}E();const S=O;const x=E;export{S as GovFormMultiSelect,x as defineCustomElement};
2
2
  //# sourceMappingURL=gov-form-multi-select.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["GovFormMultiSelect","proxyCustomElement","H","constructor","this","selectId","createID","listId","h","govHost","host","f","govForm","validateSize","newValue","validateProp","FormMultiselectSizes","FormMultiSelectClass","root","watchOptions","optionsState","propsValueToArray","watchValue","selectedOptionsState","watchControlAttrs","passControlAttrs","passAttrToControl","size","toBoolAttr","invalid","disabled","success","componentDidLoad","attributeObserver","AttributeObserver","attributeName","onAriaAttributeChange","startObserving","ariaAttributes","initAutocomplete","componentWillLoad","options","value","disconnectedCallback","stopObserving","removeAttribute","inheritedAttributes","Object","assign","getAvailableOptions","ignoreFilter","Array","isArray","length","filter","option","selectedIndex","selectedValueIndex","map","_a","name","label","from","selectRef","querySelectorAll","selected","textContent","autocompleteRef","addEventListener","onSelectHandler","bind","_b","onInputHandler","_c","onFocusHandler","_d","onBlurHandler","_e","setSearchCallback","searchString","Promise","resolve","data","String","removeDiacritics","toLowerCase","indexOf","finally","findIndex","getOptionElement","querySelector","getOption","find","selectOption","newOption","notify","index","govChange","emit","component","govSelect","removeOption","splice","govRemove","componentDidRender","passAttrToLabel","required","tick","forEach","render","Host","key","class","wrap","hasSlot","valueState","identifier","placeholder","messageEmpty","messageLoading","ref","el","minlength","slot","hidden","multiple","toBoolAttrIfDefined","selectedOption","hideSelectedList","role","id","list","item","color","type","onTagRemove","e","stopPropagation","focused","govFocus","originalEvent","govBlur","detail","clearValue","focus","setFocus","setValue","getRef"],"sources":["../../../packages/core/src/components/gov-form/multiselect/gov-form-multi-select.tsx"],"sourcesContent":["import {Component, Element, Event, EventEmitter, h, Host, Method, Prop, State, Watch} from '@stencil/core'\nimport {govForm} from '../../../helpers/Dom/form'\nimport {GovForm} from '../../../helpers/Dom/form.types'\nimport {govHost, toBoolAttr, toBoolAttrIfDefined} from '../../../helpers/Dom/template'\nimport {GovHost} from '../../../helpers/Dom/template.types'\nimport {validateProp} from '../../../helpers/Validate/props'\nimport {Nullable} from '../../../types/interfaces'\nimport {createID, removeDiacritics} from '../../../utils/string.utils'\nimport {FormAutocompleteEvent} from '../autocomplete/gov-form-autocomplete.types'\nimport {FormMultiSelectClass, FormMultiselectSizes, FormMultiselectSizesType,} from './constants'\nimport {\n\tFormMultiselectEvent,\n\tGovFormMultiSelectItem,\n\tGovFormMultiSelectSelectedItem\n} from './gov-form-multi-select.types'\nimport {propsValueToArray} from \"../../../utils/array.utils\";\nimport {tick} from \"../../../utils/stencil.utils\";\nimport {AttributeObserver, Attributes} from \"../../../helpers/Dom/attribute\";\nimport {ariaAttributes} from \"../../../helpers/Accessibility/attributes\";\n\n@Component({\n\ttag: 'gov-form-multi-select',\n})\nexport class GovFormMultiSelect {\n\tprivate f: GovForm\n\tprivate readonly h: GovHost\n\n\tprivate selectRef?: HTMLSelectElement\n\tprivate autocompleteRef?: HTMLGovFormAutocompleteElement\n\tprivate attributeObserver: AttributeObserver\n\n\tprivate readonly selectId: string\n\tprivate readonly listId: string\n\n\tconstructor() {\n\t\tthis.selectId = createID('GovSelect')\n\t\tthis.listId = createID('GovMultiList')\n\n\t\tthis.h = govHost(this.host)\n\t\tthis.f = govForm(this.h)\n\t}\n\n\t@Element() host: HTMLGovFormSelectElement\n\t/**\n\t * Value of multi-select\n\t */\n\t@Prop({reflect: true, mutable: true}) value: string | GovFormMultiSelectSelectedItem[]\n\t/**\n\t * Options of multi-select\n\t */\n\t@Prop({reflect: true, mutable: true}) options?: string | GovFormMultiSelectItem[]\n\t/**\n\t * Custom select identifier.\n\t */\n\t@Prop({attribute: 'identifier'}) readonly identifier: string\n\t/**\n\t * Custom select placeholder.\n\t */\n\t@Prop({attribute: 'placeholder'}) readonly placeholder: string\n\t/**\n\t * Select’s size.\n\t */\n\t@Prop() readonly size?: FormMultiselectSizesType = 'm'\n\t/**\n\t * Name of the select.\n\t */\n\t@Prop() readonly name: string\n\t/**\n\t * Option to hide the list of selected items\n\t */\n\t@Prop({attribute: 'hide-selected-list'}) readonly hideSelectedList: boolean = false\n\t/**\n\t * Set whether the input is required or not. Please note that this is necessary for accessible inputs when the user is required to fill them.\n\t * When using this property you need to also set “novalidate” attribute to your form element to prevent browser from displaying its own validation errors.\n\t */\n\t@Prop() readonly required: boolean = false\n\t/**\n\t * Makes the select 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() readonly disabled: 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 * 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 * 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 * Custom message for when data is loaded\n\t */\n\t@Prop({attribute: 'message-loading'}) readonly messageLoading: string = 'Načítám...'\n\t/**\n\t * Emitted when the select has focus.\n\t */\n\t@Event({eventName: 'gov-focus'}) govFocus: EventEmitter<FormMultiselectEvent>\n\t/**\n\t * Emitted when the select loses focus.\n\t */\n\t@Event({eventName: 'gov-blur'}) govBlur: EventEmitter<FormMultiselectEvent>\n\t/**\n\t * Emitted when the select change value.\n\t */\n\t@Event({eventName: 'gov-change'}) govChange: EventEmitter<FormMultiselectEvent>\n\t/**\n\t * Emitted when an item is selected\n\t */\n\t@Event({eventName: 'gov-select'}) govSelect: EventEmitter<FormMultiselectEvent>\n\t/**\n\t * Emitted when an item is removed\n\t */\n\t@Event({eventName: 'gov-remove'}) govRemove: EventEmitter<FormMultiselectEvent>\n\n\t@State() focused: boolean\n\t@State() valueState: string\n\t@State() selectedOptionsState: GovFormMultiSelectSelectedItem[] = []\n\t@State() optionsState: GovFormMultiSelectItem[] = []\n\n\t@Watch('size')\n\tvalidateSize(newValue: string): void {\n\t\tvalidateProp(FormMultiselectSizes, newValue, FormMultiSelectClass.root)\n\t}\n\n\t@Watch('options')\n\twatchOptions(newValue: string | GovFormMultiSelectItem[]): void {\n\t\tthis.optionsState = propsValueToArray(newValue)\n\t}\n\n\t@Watch('value')\n\twatchValue(newValue: string | GovFormMultiSelectItem[]): void {\n\t\tthis.selectedOptionsState = propsValueToArray(newValue)\n\t}\n\n\t@Watch('disabled')\n\t@Watch('invalid')\n\t@Watch('success')\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('invalid', toBoolAttr(this.invalid))\n\t\tthis.f.passAttrToControl('disabled', toBoolAttr(this.disabled))\n\t\tthis.f.passAttrToControl('success', toBoolAttr(this.success))\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\tthis.initAutocomplete()\n\t}\n\n\tcomponentWillLoad() {\n\t\tthis.validateSize(this.size)\n\t\tthis.optionsState = propsValueToArray(this.options)\n\t\tthis.selectedOptionsState = propsValueToArray(this.value)\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\tprivate getAvailableOptions(ignoreFilter = false): GovFormMultiSelectItem[] {\n\t\tif (Array.isArray(this.optionsState) && this.optionsState.length) {\n\t\t\tif (ignoreFilter) {\n\t\t\t\treturn this.optionsState;\n\t\t\t}\n\t\t\treturn this.optionsState.filter((option) => {\n\t\t\t\tconst selectedIndex = this.selectedValueIndex(option.value)\n\t\t\t\treturn (selectedIndex !== -1 || option?.disabled) ? false : true\n\t\t\t}).map((option) => ({name: option.label ?? option.value, value: option.value}))\n\t\t}\n\t\treturn Array.from(this.selectRef.querySelectorAll('option'))\n\t\t\t.filter((option: HTMLOptionElement) => {\n\t\t\t\tif (ignoreFilter) {\n\t\t\t\t\treturn true\n\t\t\t\t}\n\t\t\t\tconst selectedIndex = this.selectedValueIndex(option.value)\n\t\t\t\treturn !(option.disabled || option.selected || selectedIndex > -1)\n\t\t\t})\n\t\t\t.map((option: HTMLOptionElement) => ({name: option.textContent, value: option.value}))\n\t}\n\n\tprivate initAutocomplete() {\n\t\tthis.autocompleteRef?.addEventListener('gov-select', this.onSelectHandler.bind(this))\n\t\tthis.autocompleteRef?.addEventListener('gov-input', this.onInputHandler.bind(this))\n\t\tthis.autocompleteRef?.addEventListener('gov-focus', this.onFocusHandler.bind(this))\n\t\tthis.autocompleteRef?.addEventListener('gov-blur', this.onBlurHandler.bind(this))\n\t\tthis.autocompleteRef\n\t\t\t?.setSearchCallback(searchString => {\n\t\t\t\treturn new Promise(resolve => {\n\t\t\t\t\tconst data = this.getAvailableOptions()\n\t\t\t\t\tif (String(searchString).length === 0) {\n\t\t\t\t\t\treturn resolve(data)\n\t\t\t\t\t}\n\t\t\t\t\tresolve(\n\t\t\t\t\t\tdata.filter(({label, value}) => {\n\t\t\t\t\t\t\tif (!label) label = value;\n\t\t\t\t\t\t\treturn removeDiacritics(label).toLowerCase().indexOf(removeDiacritics(searchString).toLowerCase()) > -1\n\t\t\t\t\t\t})\n\t\t\t\t\t)\n\t\t\t\t})\n\t\t\t})\n\t\t\t.finally()\n\t}\n\n\tprivate selectedValueIndex(value: GovFormMultiSelectSelectedItem) {\n\t\treturn this.selectedOptionsState.findIndex((selected) => selected === value)\n\t}\n\n\tprivate getOptionElement(value: GovFormMultiSelectSelectedItem): Nullable<HTMLOptionElement> {\n\t\treturn this.selectRef.querySelector('option[value=\"' + value + '\"]') as HTMLOptionElement\n\t}\n\n\tprivate getOption(value: GovFormMultiSelectSelectedItem): GovFormMultiSelectItem | null {\n\t\treturn this.getAvailableOptions(true).find((option) => option.value === value) ?? null;\n\t}\n\n\tprivate selectOption(newOption: GovFormMultiSelectSelectedItem, notify = true) {\n\t\tconst index = this.selectedValueIndex(newOption)\n\t\tif (index === -1) {\n\t\t\tthis.selectedOptionsState = [...this.selectedOptionsState, newOption]\n\t\t\tthis.value = this.selectedOptionsState;\n\t\t\tif (notify) {\n\t\t\t\tthis.govChange.emit({\n\t\t\t\t\tcomponent: FormMultiSelectClass.root,\n\t\t\t\t\tvalue: this.selectedOptionsState,\n\t\t\t\t})\n\t\t\t\tthis.govSelect.emit({\n\t\t\t\t\tcomponent: FormMultiSelectClass.root,\n\t\t\t\t\tvalue: this.selectedOptionsState,\n\t\t\t\t})\n\t\t\t}\n\t\t\tconst option = this.getOptionElement(newOption)\n\t\t\tif (option) {\n\t\t\t\toption.selected = true\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate removeOption(removeOption: GovFormMultiSelectSelectedItem, notify = true) {\n\t\tconst index = this.selectedValueIndex(removeOption)\n\t\tif (index !== -1) {\n\t\t\tthis.selectedOptionsState.splice(index, 1)\n\t\t\tthis.selectedOptionsState = [...this.selectedOptionsState]\n\t\t\tthis.value = this.selectedOptionsState;\n\t\t\tif (notify) {\n\t\t\t\tthis.govChange.emit({\n\t\t\t\t\tcomponent: FormMultiSelectClass.root,\n\t\t\t\t\tvalue: this.selectedOptionsState,\n\t\t\t\t})\n\t\t\t\tthis.govRemove.emit({\n\t\t\t\t\tcomponent: FormMultiSelectClass.root,\n\t\t\t\t\tvalue: this.selectedOptionsState,\n\t\t\t\t})\n\t\t\t}\n\t\t\tconst option = this.getOptionElement(removeOption)\n\t\t\tif (option) {\n\t\t\t\toption.selected = false\n\t\t\t}\n\t\t}\n\t}\n\n\tasync componentDidRender() {\n\t\tthis.passControlAttrs()\n\t\tthis.f.passAttrToLabel('required', String(this.required))\n\n\t\ttick(() => {\n\t\t\tthis.selectRef.querySelectorAll('option').forEach((option: HTMLOptionElement) => {\n\t\t\t\tif (option.selected) {\n\t\t\t\t\tthis.selectOption(option.value, false)\n\t\t\t\t}\n\t\t\t})\n\t\t})\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class={FormMultiSelectClass.root} size={this.size}>\n\t\t\t\t<div class={FormMultiSelectClass.wrap}>\n\t\t\t\t\t{this.h.hasSlot('prefix') && <slot name=\"prefix\"></slot>}\n\t\t\t\t\t<gov-form-autocomplete\n\t\t\t\t\t\tvalue={this.valueState}\n\t\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\t\tidentifier={this.identifier || this.selectId}\n\t\t\t\t\t\trequired={false}\n\t\t\t\t\t\tsize={this.size}\n\t\t\t\t\t\tplaceholder={this.placeholder}\n\t\t\t\t\t\tmessage-empty={this.messageEmpty}\n\t\t\t\t\t\tmessage-loading={this.messageLoading}\n\t\t\t\t\t\tref={el => (this.autocompleteRef = el as HTMLGovFormAutocompleteElement)}\n\t\t\t\t\t\tminlength={0}\n\t\t\t\t\t\taria-owns={this.listId}\n\t\t\t\t\t>\n\t\t\t\t\t\t<gov-icon slot=\"right-icon\" class=\"icon-arrow\" name=\"chevron-down\"></gov-icon>\n\t\t\t\t\t\t{this.h.hasSlot('right-icon') && !(this.success || this.invalid) && <slot name=\"right-icon\"/>}\n\t\t\t\t\t\t{this.success &&\n\t\t\t\t\t\t\t<gov-icon slot=\"validation-icon\" class=\"icon-validation\" name=\"check-lg\"></gov-icon>}\n\t\t\t\t\t\t{this.invalid &&\n\t\t\t\t\t\t\t<gov-icon slot=\"validation-icon\" class=\"icon-validation\" name=\"exclamation-lg\"></gov-icon>}\n\t\t\t\t\t</gov-form-autocomplete>\n\t\t\t\t\t<select\n\t\t\t\t\t\thidden\n\t\t\t\t\t\tclass={'hidden-select-list'}\n\t\t\t\t\t\taria-hidden={toBoolAttr(true)}\n\t\t\t\t\t\tmultiple\n\t\t\t\t\t\trequired={this.required}\n\t\t\t\t\t\tname={this.name}\n\t\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\t\tref={el => (this.selectRef = el as HTMLSelectElement)}\n\t\t\t\t\t\t{...this.inheritedAttributes}\n\t\t\t\t\t\taria-disabled={toBoolAttrIfDefined(this.disabled)}\n\t\t\t\t\t\taria-required={toBoolAttrIfDefined(this.required)}\n\t\t\t\t\t\taria-invalid={toBoolAttrIfDefined(this.invalid)}\n\t\t\t\t\t>\n\t\t\t\t\t\t<slot></slot>\n\t\t\t\t\t\t{Array.isArray(this.optionsState) && this.optionsState.map((option) => {\n\t\t\t\t\t\t\tconst selectedOption = this.selectedValueIndex(option.value);\n\t\t\t\t\t\t\treturn (<option value={option.value} selected={selectedOption > -1}\n\t\t\t\t\t\t\t\t\t\t\tdisabled={option?.disabled}>{option.label ?? option.value}</option>)\n\t\t\t\t\t\t})}\n\t\t\t\t\t</select>\n\t\t\t\t\t{this.h.hasSlot('sufix') && <slot name=\"sufix\"></slot>}\n\t\t\t\t</div>\n\t\t\t\t{this.hideSelectedList === false ? (\n\t\t\t\t\t<ul role=\"listbox\" id={this.listId} class={FormMultiSelectClass.list}>\n\t\t\t\t\t\t{Array.isArray(this.selectedOptionsState) && this.selectedOptionsState.map(selected => {\n\t\t\t\t\t\t\tconst option = this.getOption(selected);\n\t\t\t\t\t\t\tif (!option) return null\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<li class={FormMultiSelectClass.item} role=\"option\">\n\t\t\t\t\t\t\t\t\t{option.label ?? option.value}\n\t\t\t\t\t\t\t\t\t<gov-button\n\t\t\t\t\t\t\t\t\t\taccessible-label={'Odebrat vybranou položku ' + option.label ?? option.value}\n\t\t\t\t\t\t\t\t\t\tcolor=\"primary\"\n\t\t\t\t\t\t\t\t\t\ttype=\"base\"\n\t\t\t\t\t\t\t\t\t\tsize={this.size}\n\t\t\t\t\t\t\t\t\t\ton-gov-click={() => this.onTagRemove(selected)}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<gov-icon name=\"x-lg\"></gov-icon>\n\t\t\t\t\t\t\t\t\t</gov-button>\n\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t})}\n\t\t\t\t\t</ul>\n\t\t\t\t) : null}\n\t\t\t</Host>\n\t\t)\n\t}\n\n\tprivate onFocusHandler(e: FocusEvent) {\n\t\te.stopPropagation()\n\t\tthis.focused = true\n\t\tthis.govFocus.emit({\n\t\t\tcomponent: FormMultiSelectClass.root,\n\t\t\toriginalEvent: e,\n\t\t\tvalue: this.selectedOptionsState,\n\t\t})\n\t}\n\n\tprivate onBlurHandler(e: FocusEvent) {\n\t\te.stopPropagation()\n\t\te.stopPropagation()\n\t\tthis.focused = false\n\t\tthis.govBlur.emit({\n\t\t\tcomponent: FormMultiSelectClass.root,\n\t\t\toriginalEvent: e,\n\t\t\tvalue: this.selectedOptionsState,\n\t\t})\n\t}\n\n\tprivate onInputHandler(e: CustomEvent<FormAutocompleteEvent>) {\n\t\tthis.valueState = e.detail.value\n\t\te.stopPropagation()\n\t}\n\n\tprivate onSelectHandler(e: CustomEvent<FormAutocompleteEvent>) {\n\t\te.stopPropagation()\n\t\tconst value = e.detail.selected\n\t\tthis.selectOption(value.value)\n\t\tthis.valueState = ''\n\t\tthis.autocompleteRef.clearValue().finally()\n\t\tthis.autocompleteRef.focus()\n\t}\n\n\tprivate onTagRemove(removeOption: GovFormMultiSelectSelectedItem) {\n\t\tthis.removeOption(removeOption)\n\t}\n\n\t/**\n\t * Returns the current state of the component\n\t */\n\t@Method()\n\tasync setFocus(options?: FocusOptions): Promise<void> {\n\t\treturn this.selectRef.focus(options)\n\t}\n\n\t/**\n\t * Sets the ordered value of the element\n\t */\n\t@Method()\n\tasync setValue(value: string): Promise<void> {\n\t\tthis.valueState = value\n\t}\n\n\t/**\n\t * Returns an instance of the native html select element\n\t */\n\t@Method()\n\tasync getRef(): Promise<HTMLSelectElement> {\n\t\treturn this.selectRef\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["GovFormMultiSelect","proxyCustomElement","H","constructor","this","selectId","createID","listId","h","govHost","host","f","govForm","validateSize","newValue","validateProp","FormMultiselectSizes","FormMultiSelectClass","root","watchOptions","optionsState","propsValueToArray","watchValue","selectedOptionsState","componentDidLoad","attributeObserver","AttributeObserver","attributeName","onAriaAttributeChange","startObserving","ariaAttributes","initAutocomplete","componentWillLoad","size","options","value","disconnectedCallback","stopObserving","removeAttribute","inheritedAttributes","Object","assign","getAvailableOptions","ignoreFilter","Array","isArray","length","filter","option","selectedIndex","selectedValueIndex","disabled","map","_a","name","label","from","selectRef","querySelectorAll","selected","textContent","autocompleteRef","addEventListener","onSelectHandler","bind","_b","onInputHandler","_c","onFocusHandler","_d","onBlurHandler","_e","setSearchCallback","searchString","Promise","resolve","data","String","removeDiacritics","toLowerCase","indexOf","finally","findIndex","getOptionElement","querySelector","getOption","find","selectOption","newOption","notify","index","govChange","emit","component","govSelect","removeOption","splice","govRemove","componentDidRender","passAttrToLabel","required","tick","forEach","render","Host","key","class","wrap","hasSlot","valueState","identifier","invalid","success","placeholder","messageEmpty","messageLoading","ref","el","minlength","slot","type","hidden","toBoolAttr","multiple","toBoolAttrIfDefined","selectedOption","hideSelectedList","role","id","list","item","color","onTagRemove","e","stopPropagation","focused","govFocus","originalEvent","govBlur","detail","clearValue","focus","setFocus","setValue","getRef"],"sources":["../../../packages/core/src/components/gov-form/multiselect/gov-form-multi-select.tsx"],"sourcesContent":["import {Component, Element, Event, EventEmitter, h, Host, Method, Prop, State, Watch} from '@stencil/core'\nimport {govForm} from '../../../helpers/Dom/form'\nimport {GovForm} from '../../../helpers/Dom/form.types'\nimport {govHost, toBoolAttr, toBoolAttrIfDefined} from '../../../helpers/Dom/template'\nimport {GovHost} from '../../../helpers/Dom/template.types'\nimport {validateProp} from '../../../helpers/Validate/props'\nimport {Nullable} from '../../../types/interfaces'\nimport {createID, removeDiacritics} from '../../../utils/string.utils'\nimport {FormAutocompleteEvent} from '../autocomplete/gov-form-autocomplete.types'\nimport {FormMultiSelectClass, FormMultiselectSizes, FormMultiselectSizesType} from './constants'\nimport {\n\tFormMultiselectEvent,\n\tGovFormMultiSelectItem,\n\tGovFormMultiSelectSelectedItem\n} from './gov-form-multi-select.types'\nimport {propsValueToArray} from \"../../../utils/array.utils\";\nimport {tick} from \"../../../utils/stencil.utils\";\nimport {AttributeObserver, Attributes} from \"../../../helpers/Dom/attribute\";\nimport {ariaAttributes} from \"../../../helpers/Accessibility/attributes\";\n\n@Component({\n\ttag: 'gov-form-multi-select',\n})\nexport class GovFormMultiSelect {\n\tprivate f: GovForm\n\tprivate readonly h: GovHost\n\n\tprivate selectRef?: HTMLSelectElement\n\tprivate autocompleteRef?: HTMLGovFormAutocompleteElement\n\tprivate attributeObserver: AttributeObserver\n\n\tprivate readonly selectId: string\n\tprivate readonly listId: string\n\n\tconstructor() {\n\t\tthis.selectId = createID('GovSelect')\n\t\tthis.listId = createID('GovMultiList')\n\n\t\tthis.h = govHost(this.host)\n\t\tthis.f = govForm(this.h)\n\t}\n\n\t@Element() host: HTMLGovFormSelectElement\n\t/**\n\t * Value of multi-select\n\t */\n\t@Prop({reflect: true, mutable: true}) value: string | GovFormMultiSelectSelectedItem[]\n\t/**\n\t * Options of multi-select\n\t */\n\t@Prop({reflect: true, mutable: true}) options?: string | GovFormMultiSelectItem[]\n\t/**\n\t * Custom select identifier.\n\t */\n\t@Prop({attribute: 'identifier'}) readonly identifier: string\n\t/**\n\t * Custom select placeholder.\n\t */\n\t@Prop({attribute: 'placeholder'}) readonly placeholder: string\n\t/**\n\t * Select’s size.\n\t */\n\t@Prop() readonly size?: FormMultiselectSizesType = 'm'\n\t/**\n\t * Name of the select.\n\t */\n\t@Prop() readonly name: string\n\t/**\n\t * Option to hide the list of selected items\n\t */\n\t@Prop({attribute: 'hide-selected-list'}) readonly hideSelectedList: boolean = false\n\t/**\n\t * Set whether the input is required or not. Please note that this is necessary for accessible inputs when the user is required to fill them.\n\t * When using this property you need to also set “novalidate” attribute to your form element to prevent browser from displaying its own validation errors.\n\t */\n\t@Prop() readonly required: boolean = false\n\t/**\n\t * Makes the select 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() readonly disabled: 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({reflect:true}) readonly invalid: boolean\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 * 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 * Custom message for when data is loaded\n\t */\n\t@Prop({attribute: 'message-loading'}) readonly messageLoading: string = 'Načítám...'\n\t/**\n\t * Emitted when the select has focus.\n\t */\n\t@Event({eventName: 'gov-focus'}) govFocus: EventEmitter<FormMultiselectEvent>\n\t/**\n\t * Emitted when the select loses focus.\n\t */\n\t@Event({eventName: 'gov-blur'}) govBlur: EventEmitter<FormMultiselectEvent>\n\t/**\n\t * Emitted when the select change value.\n\t */\n\t@Event({eventName: 'gov-change'}) govChange: EventEmitter<FormMultiselectEvent>\n\t/**\n\t * Emitted when an item is selected\n\t */\n\t@Event({eventName: 'gov-select'}) govSelect: EventEmitter<FormMultiselectEvent>\n\t/**\n\t * Emitted when an item is removed\n\t */\n\t@Event({eventName: 'gov-remove'}) govRemove: EventEmitter<FormMultiselectEvent>\n\n\t@State() focused: boolean\n\t@State() valueState: string\n\t@State() selectedOptionsState: GovFormMultiSelectSelectedItem[] = []\n\t@State() optionsState: GovFormMultiSelectItem[] = []\n\n\t@Watch('size')\n\tvalidateSize(newValue: string): void {\n\t\tvalidateProp(FormMultiselectSizes, newValue, FormMultiSelectClass.root)\n\t}\n\n\t@Watch('options')\n\twatchOptions(newValue: string | GovFormMultiSelectItem[]): void {\n\t\tthis.optionsState = propsValueToArray(newValue)\n\t}\n\n\t@Watch('value')\n\twatchValue(newValue: string | GovFormMultiSelectItem[]): void {\n\t\tthis.selectedOptionsState = propsValueToArray(newValue)\n\t}\n\n\t@State() inheritedAttributes: Attributes = {}\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\tthis.initAutocomplete()\n\t}\n\n\tcomponentWillLoad() {\n\t\tthis.validateSize(this.size)\n\t\tthis.optionsState = propsValueToArray(this.options)\n\t\tthis.selectedOptionsState = propsValueToArray(this.value)\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\tprivate getAvailableOptions(ignoreFilter = false): GovFormMultiSelectItem[] {\n\t\tif (Array.isArray(this.optionsState) && this.optionsState.length) {\n\t\t\tif (ignoreFilter) {\n\t\t\t\treturn this.optionsState;\n\t\t\t}\n\t\t\treturn this.optionsState.filter((option) => {\n\t\t\t\tconst selectedIndex = this.selectedValueIndex(option.value)\n\t\t\t\treturn (selectedIndex !== -1 || option?.disabled) ? false : true\n\t\t\t}).map((option) => ({name: option.label ?? option.value, value: option.value}))\n\t\t}\n\t\treturn Array.from(this.selectRef.querySelectorAll('option'))\n\t\t\t.filter((option: HTMLOptionElement) => {\n\t\t\t\tif (ignoreFilter) {\n\t\t\t\t\treturn true\n\t\t\t\t}\n\t\t\t\tconst selectedIndex = this.selectedValueIndex(option.value)\n\t\t\t\treturn !(option.disabled || option.selected || selectedIndex > -1)\n\t\t\t})\n\t\t\t.map((option: HTMLOptionElement) => ({name: option.textContent, value: option.value}))\n\t}\n\n\tprivate initAutocomplete() {\n\t\tthis.autocompleteRef?.addEventListener('gov-select', this.onSelectHandler.bind(this))\n\t\tthis.autocompleteRef?.addEventListener('gov-input', this.onInputHandler.bind(this))\n\t\tthis.autocompleteRef?.addEventListener('gov-focus', this.onFocusHandler.bind(this))\n\t\tthis.autocompleteRef?.addEventListener('gov-blur', this.onBlurHandler.bind(this))\n\t\tthis.autocompleteRef\n\t\t\t?.setSearchCallback(searchString => {\n\t\t\t\treturn new Promise(resolve => {\n\t\t\t\t\tconst data = this.getAvailableOptions()\n\t\t\t\t\tif (String(searchString).length === 0) {\n\t\t\t\t\t\treturn resolve(data)\n\t\t\t\t\t}\n\t\t\t\t\tresolve(\n\t\t\t\t\t\tdata.filter(({label, value}) => {\n\t\t\t\t\t\t\tif (!label) label = value;\n\t\t\t\t\t\t\treturn removeDiacritics(label).toLowerCase().indexOf(removeDiacritics(searchString).toLowerCase()) > -1\n\t\t\t\t\t\t})\n\t\t\t\t\t)\n\t\t\t\t})\n\t\t\t})\n\t\t\t.finally()\n\t}\n\n\tprivate selectedValueIndex(value: GovFormMultiSelectSelectedItem) {\n\t\treturn this.selectedOptionsState.findIndex((selected) => selected === value)\n\t}\n\n\tprivate getOptionElement(value: GovFormMultiSelectSelectedItem): Nullable<HTMLOptionElement> {\n\t\treturn this.selectRef.querySelector('option[value=\"' + value + '\"]') as HTMLOptionElement\n\t}\n\n\tprivate getOption(value: GovFormMultiSelectSelectedItem): GovFormMultiSelectItem | null {\n\t\treturn this.getAvailableOptions(true).find((option) => option.value === value) ?? null;\n\t}\n\n\tprivate selectOption(newOption: GovFormMultiSelectSelectedItem, notify = true) {\n\t\tconst index = this.selectedValueIndex(newOption)\n\t\tif (index === -1) {\n\t\t\tthis.selectedOptionsState = [...this.selectedOptionsState, newOption]\n\t\t\tthis.value = this.selectedOptionsState;\n\t\t\tif (notify) {\n\t\t\t\tthis.govChange.emit({\n\t\t\t\t\tcomponent: FormMultiSelectClass.root,\n\t\t\t\t\tvalue: this.selectedOptionsState,\n\t\t\t\t})\n\t\t\t\tthis.govSelect.emit({\n\t\t\t\t\tcomponent: FormMultiSelectClass.root,\n\t\t\t\t\tvalue: this.selectedOptionsState,\n\t\t\t\t})\n\t\t\t}\n\t\t\tconst option = this.getOptionElement(newOption)\n\t\t\tif (option) {\n\t\t\t\toption.selected = true\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate removeOption(removeOption: GovFormMultiSelectSelectedItem, notify = true) {\n\t\tconst index = this.selectedValueIndex(removeOption)\n\t\tif (index !== -1) {\n\t\t\tthis.selectedOptionsState.splice(index, 1)\n\t\t\tthis.selectedOptionsState = [...this.selectedOptionsState]\n\t\t\tthis.value = this.selectedOptionsState;\n\t\t\tif (notify) {\n\t\t\t\tthis.govChange.emit({\n\t\t\t\t\tcomponent: FormMultiSelectClass.root,\n\t\t\t\t\tvalue: this.selectedOptionsState,\n\t\t\t\t})\n\t\t\t\tthis.govRemove.emit({\n\t\t\t\t\tcomponent: FormMultiSelectClass.root,\n\t\t\t\t\tvalue: this.selectedOptionsState,\n\t\t\t\t})\n\t\t\t}\n\t\t\tconst option = this.getOptionElement(removeOption)\n\t\t\tif (option) {\n\t\t\t\toption.selected = false\n\t\t\t}\n\t\t}\n\t}\n\n\tasync componentDidRender() {\n\t\tthis.f.passAttrToLabel('required', String(this.required))\n\n\t\ttick(() => {\n\t\t\tthis.selectRef.querySelectorAll('option').forEach((option: HTMLOptionElement) => {\n\t\t\t\tif (option.selected) {\n\t\t\t\t\tthis.selectOption(option.value, false)\n\t\t\t\t}\n\t\t\t})\n\t\t})\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class={FormMultiSelectClass.root} size={this.size}>\n\t\t\t\t<div class={FormMultiSelectClass.wrap}>\n\t\t\t\t\t{this.h.hasSlot('prefix') && <slot name=\"prefix\"></slot>}\n\t\t\t\t\t<gov-form-autocomplete\n\t\t\t\t\t\tvalue={this.valueState}\n\t\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\t\tidentifier={this.identifier || this.selectId}\n\t\t\t\t\t\trequired={false}\n\t\t\t\t\t\tinvalid={this.invalid}\n\t\t\t\t\t\tsuccess={this.success}\n\t\t\t\t\t\tsize={this.size}\n\t\t\t\t\t\tplaceholder={this.placeholder}\n\t\t\t\t\t\tmessage-empty={this.messageEmpty}\n\t\t\t\t\t\tmessage-loading={this.messageLoading}\n\t\t\t\t\t\tref={el => (this.autocompleteRef = el as HTMLGovFormAutocompleteElement)}\n\t\t\t\t\t\tminlength={0}\n\t\t\t\t\t\taria-owns={this.listId}\n\t\t\t\t\t>\n\t\t\t\t\t\t{this.success && <gov-icon slot=\"validation-icon\" class=\"validation-icon\" name=\"check-lg\" type=\"components\"></gov-icon>}\n\t\t\t\t\t\t{this.invalid && <gov-icon slot=\"validation-icon\" class=\"validation-icon\" name=\"exclamation-lg\" type=\"components\"></gov-icon>}\n\t\t\t\t\t\t<gov-icon slot=\"icon-end\" class=\"arrow-icon\" name=\"chevron-down\" type=\"components\"></gov-icon>\n\t\t\t\t\t</gov-form-autocomplete>\n\t\t\t\t\t<select\n\t\t\t\t\t\thidden\n\t\t\t\t\t\tclass={'hidden-select-list'}\n\t\t\t\t\t\taria-hidden={toBoolAttr(true)}\n\t\t\t\t\t\tmultiple\n\t\t\t\t\t\trequired={this.required}\n\t\t\t\t\t\tname={this.name}\n\t\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\t\tref={el => (this.selectRef = el as HTMLSelectElement)}\n\t\t\t\t\t\t{...this.inheritedAttributes}\n\t\t\t\t\t\taria-disabled={toBoolAttrIfDefined(this.disabled)}\n\t\t\t\t\t\taria-required={toBoolAttrIfDefined(this.required)}\n\t\t\t\t\t\taria-invalid={toBoolAttrIfDefined(this.invalid)}\n\t\t\t\t\t>\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t\t{Array.isArray(this.optionsState) && this.optionsState.map((option) => {\n\t\t\t\t\t\t\tconst selectedOption = this.selectedValueIndex(option.value);\n\t\t\t\t\t\t\treturn (<option value={option.value} selected={selectedOption > -1}\n\t\t\t\t\t\t\t\t\t\t\tdisabled={option?.disabled}>{option.label ?? option.value}</option>)\n\t\t\t\t\t\t})}\n\t\t\t\t\t</select>\n\t\t\t\t\t{this.h.hasSlot('sufix') && <slot name=\"sufix\"></slot>}\n\t\t\t\t</div>\n\t\t\t\t{this.hideSelectedList === false ? (\n\t\t\t\t\t<ul role=\"listbox\" id={this.listId} class={FormMultiSelectClass.list}>\n\t\t\t\t\t\t{Array.isArray(this.selectedOptionsState) && this.selectedOptionsState.map(selected => {\n\t\t\t\t\t\t\tconst option = this.getOption(selected);\n\t\t\t\t\t\t\tif (!option) return null\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<li class={FormMultiSelectClass.item} role=\"option\">\n\t\t\t\t\t\t\t\t\t{option.label ?? option.value}\n\t\t\t\t\t\t\t\t\t<gov-button\n\t\t\t\t\t\t\t\t\t\taria-label={'Odebrat vybranou položku ' + option.label ?? option.value}\n\t\t\t\t\t\t\t\t\t\tcolor=\"primary\"\n\t\t\t\t\t\t\t\t\t\ttype=\"base\"\n\t\t\t\t\t\t\t\t\t\tsize={this.size}\n\t\t\t\t\t\t\t\t\t\ton-gov-click={() => this.onTagRemove(selected)}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<gov-icon name=\"x-lg\" type=\"components\"></gov-icon>\n\t\t\t\t\t\t\t\t\t</gov-button>\n\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t})}\n\t\t\t\t\t</ul>\n\t\t\t\t) : null}\n\t\t\t</Host>\n\t\t)\n\t}\n\n\tprivate onFocusHandler(e: FocusEvent) {\n\t\te.stopPropagation()\n\t\tthis.focused = true\n\t\tthis.govFocus.emit({\n\t\t\tcomponent: FormMultiSelectClass.root,\n\t\t\toriginalEvent: e,\n\t\t\tvalue: this.selectedOptionsState,\n\t\t})\n\t}\n\n\tprivate onBlurHandler(e: FocusEvent) {\n\t\te.stopPropagation()\n\t\te.stopPropagation()\n\t\tthis.focused = false\n\t\tthis.govBlur.emit({\n\t\t\tcomponent: FormMultiSelectClass.root,\n\t\t\toriginalEvent: e,\n\t\t\tvalue: this.selectedOptionsState,\n\t\t})\n\t}\n\n\tprivate onInputHandler(e: CustomEvent<FormAutocompleteEvent>) {\n\t\tthis.valueState = e.detail.value\n\t\te.stopPropagation()\n\t}\n\n\tprivate onSelectHandler(e: CustomEvent<FormAutocompleteEvent>) {\n\t\te.stopPropagation()\n\t\tconst value = e.detail.selected\n\t\tthis.selectOption(value.value)\n\t\tthis.valueState = ''\n\t\tthis.autocompleteRef.clearValue().finally()\n\t\tthis.autocompleteRef.focus()\n\t}\n\n\tprivate onTagRemove(removeOption: GovFormMultiSelectSelectedItem) {\n\t\tthis.removeOption(removeOption)\n\t}\n\n\t/**\n\t * Returns the current state of the component\n\t */\n\t@Method()\n\tasync setFocus(options?: FocusOptions): Promise<void> {\n\t\treturn this.selectRef.focus(options)\n\t}\n\n\t/**\n\t * Sets the ordered value of the element\n\t */\n\t@Method()\n\tasync setValue(value: string): Promise<void> {\n\t\tthis.valueState = value\n\t}\n\n\t/**\n\t * Returns an instance of the native html select element\n\t */\n\t@Method()\n\tasync getRef(): Promise<HTMLSelectElement> {\n\t\treturn this.selectRef\n\t}\n}\n"],"mappings":"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","ignoreList":[]}