@gov-design-system-ce/components 0.0.12 → 0.0.14

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 (680) hide show
  1. package/dist/cjs/{constants-e175be18.js → constants-0883e74c.js} +2 -2
  2. package/dist/cjs/constants-0883e74c.js.map +1 -0
  3. package/dist/cjs/{constants-245999e7.js → constants-adc8268f.js} +2 -2
  4. package/dist/cjs/constants-adc8268f.js.map +1 -0
  5. package/dist/cjs/core.cjs.js +2 -2
  6. package/dist/cjs/gov-accordion-item.cjs.entry.js +13 -9
  7. package/dist/cjs/gov-accordion-item.cjs.entry.js.map +1 -1
  8. package/dist/cjs/gov-accordion.cjs.entry.js +3 -3
  9. package/dist/cjs/gov-accordion.cjs.entry.js.map +1 -1
  10. package/dist/cjs/gov-alert.cjs.entry.js +2 -2
  11. package/dist/cjs/gov-alert.cjs.entry.js.map +1 -1
  12. package/dist/cjs/gov-app.cjs.entry.js +79 -7
  13. package/dist/cjs/gov-app.cjs.entry.js.map +1 -1
  14. package/dist/cjs/gov-attachments_3.cjs.entry.js +4 -4
  15. package/dist/cjs/gov-attachments_3.cjs.entry.js.map +1 -1
  16. package/dist/cjs/gov-backdrop.cjs.entry.js +2 -2
  17. package/dist/cjs/gov-backdrop.cjs.entry.js.map +1 -1
  18. package/dist/cjs/gov-badge.cjs.entry.js +3 -3
  19. package/dist/cjs/gov-badge.cjs.entry.js.map +1 -1
  20. package/dist/cjs/gov-breadcrumbs.cjs.entry.js +3 -33
  21. package/dist/cjs/gov-breadcrumbs.cjs.entry.js.map +1 -1
  22. package/dist/cjs/gov-button.cjs.entry.js +3 -3
  23. package/dist/cjs/gov-button.cjs.entry.js.map +1 -1
  24. package/dist/cjs/gov-card.cjs.entry.js +2 -2
  25. package/dist/cjs/gov-card.cjs.entry.js.map +1 -1
  26. package/dist/cjs/gov-container.cjs.entry.js +2 -2
  27. package/dist/cjs/gov-container.cjs.entry.js.map +1 -1
  28. package/dist/cjs/gov-cookiebar.cjs.entry.js +2 -2
  29. package/dist/cjs/gov-cookiebar.cjs.entry.js.map +1 -1
  30. package/dist/cjs/gov-empty.cjs.entry.js +2 -2
  31. package/dist/cjs/gov-empty.cjs.entry.js.map +1 -1
  32. package/dist/cjs/gov-error-code.cjs.entry.js +2 -2
  33. package/dist/cjs/gov-error-code.cjs.entry.js.map +1 -1
  34. package/dist/cjs/gov-form-autocomplete.cjs.entry.js +2 -2
  35. package/dist/cjs/gov-form-autocomplete.cjs.entry.js.map +1 -1
  36. package/dist/cjs/gov-form-checkbox.cjs.entry.js +2 -2
  37. package/dist/cjs/gov-form-checkbox.cjs.entry.js.map +1 -1
  38. package/dist/cjs/gov-form-control.cjs.entry.js +2 -2
  39. package/dist/cjs/gov-form-control.cjs.entry.js.map +1 -1
  40. package/dist/cjs/gov-form-file.cjs.entry.js +2 -2
  41. package/dist/cjs/gov-form-file.cjs.entry.js.map +1 -1
  42. package/dist/cjs/gov-form-group.cjs.entry.js +2 -2
  43. package/dist/cjs/gov-form-group.cjs.entry.js.map +1 -1
  44. package/dist/cjs/gov-form-input.cjs.entry.js +2 -2
  45. package/dist/cjs/gov-form-input.cjs.entry.js.map +1 -1
  46. package/dist/cjs/gov-form-label.cjs.entry.js +2 -2
  47. package/dist/cjs/gov-form-label.cjs.entry.js.map +1 -1
  48. package/dist/cjs/gov-form-multi-select.cjs.entry.js +2 -2
  49. package/dist/cjs/gov-form-multi-select.cjs.entry.js.map +1 -1
  50. package/dist/cjs/gov-form-password-power.cjs.entry.js +2 -2
  51. package/dist/cjs/gov-form-password-power.cjs.entry.js.map +1 -1
  52. package/dist/cjs/gov-form-radio.cjs.entry.js +2 -2
  53. package/dist/cjs/gov-form-radio.cjs.entry.js.map +1 -1
  54. package/dist/cjs/gov-form-search.cjs.entry.js +2 -2
  55. package/dist/cjs/gov-form-search.cjs.entry.js.map +1 -1
  56. package/dist/cjs/gov-form-select.cjs.entry.js +2 -2
  57. package/dist/cjs/gov-form-select.cjs.entry.js.map +1 -1
  58. package/dist/cjs/gov-form-switch.cjs.entry.js +2 -2
  59. package/dist/cjs/gov-form-switch.cjs.entry.js.map +1 -1
  60. package/dist/cjs/gov-grid-item.cjs.entry.js +2 -2
  61. package/dist/cjs/gov-grid-item.cjs.entry.js.map +1 -1
  62. package/dist/cjs/gov-grid.cjs.entry.js +2 -2
  63. package/dist/cjs/gov-grid.cjs.entry.js.map +1 -1
  64. package/dist/cjs/gov-icon.cjs.entry.js +3 -3
  65. package/dist/cjs/gov-icon.cjs.entry.js.map +1 -1
  66. package/dist/cjs/gov-layout-column.cjs.entry.js +2 -2
  67. package/dist/cjs/gov-layout-column.cjs.entry.js.map +1 -1
  68. package/dist/cjs/gov-layout.cjs.entry.js +2 -2
  69. package/dist/cjs/gov-layout.cjs.entry.js.map +1 -1
  70. package/dist/cjs/gov-loading.cjs.entry.js +2 -2
  71. package/dist/cjs/gov-loading.cjs.entry.js.map +1 -1
  72. package/dist/cjs/gov-message.cjs.entry.js +2 -2
  73. package/dist/cjs/gov-message.cjs.entry.js.map +1 -1
  74. package/dist/cjs/gov-modal.cjs.entry.js +2 -2
  75. package/dist/cjs/gov-modal.cjs.entry.js.map +1 -1
  76. package/dist/cjs/gov-nav-item.cjs.entry.js +2 -2
  77. package/dist/cjs/gov-nav-item.cjs.entry.js.map +1 -1
  78. package/dist/cjs/gov-nav.cjs.entry.js +2 -2
  79. package/dist/cjs/gov-nav.cjs.entry.js.map +1 -1
  80. package/dist/cjs/gov-pagination.cjs.entry.js +2 -2
  81. package/dist/cjs/gov-pagination.cjs.entry.js.map +1 -1
  82. package/dist/cjs/gov-prompt.cjs.entry.js +2 -2
  83. package/dist/cjs/gov-prompt.cjs.entry.js.map +1 -1
  84. package/dist/cjs/gov-side-nav-item.cjs.entry.js +2 -2
  85. package/dist/cjs/gov-side-nav-item.cjs.entry.js.map +1 -1
  86. package/dist/cjs/gov-side-nav.cjs.entry.js +2 -2
  87. package/dist/cjs/gov-side-nav.cjs.entry.js.map +1 -1
  88. package/dist/cjs/gov-skeleton.cjs.entry.js +117 -0
  89. package/dist/cjs/gov-skeleton.cjs.entry.js.map +1 -0
  90. package/dist/cjs/gov-spacer.cjs.entry.js +2 -2
  91. package/dist/cjs/gov-spacer.cjs.entry.js.map +1 -1
  92. package/dist/cjs/gov-statsbar-item.cjs.entry.js +2 -2
  93. package/dist/cjs/gov-statsbar-item.cjs.entry.js.map +1 -1
  94. package/dist/cjs/gov-statsbar.cjs.entry.js +2 -2
  95. package/dist/cjs/gov-statsbar.cjs.entry.js.map +1 -1
  96. package/dist/cjs/gov-stepper-item.cjs.entry.js +2 -2
  97. package/dist/cjs/gov-stepper-item.cjs.entry.js.map +1 -1
  98. package/dist/cjs/gov-stepper.cjs.entry.js +2 -2
  99. package/dist/cjs/gov-stepper.cjs.entry.js.map +1 -1
  100. package/dist/cjs/gov-tabs-item.cjs.entry.js +2 -2
  101. package/dist/cjs/gov-tabs-item.cjs.entry.js.map +1 -1
  102. package/dist/cjs/gov-tabs.cjs.entry.js +2 -2
  103. package/dist/cjs/gov-tabs.cjs.entry.js.map +1 -1
  104. package/dist/cjs/gov-tile.cjs.entry.js +2 -2
  105. package/dist/cjs/gov-tile.cjs.entry.js.map +1 -1
  106. package/dist/cjs/gov-tiles.cjs.entry.js +2 -2
  107. package/dist/cjs/gov-tiles.cjs.entry.js.map +1 -1
  108. package/dist/cjs/gov-toast.cjs.entry.js +2 -2
  109. package/dist/cjs/gov-toast.cjs.entry.js.map +1 -1
  110. package/dist/cjs/gov-tooltip-content.cjs.entry.js +2 -2
  111. package/dist/cjs/gov-tooltip-content.cjs.entry.js.map +1 -1
  112. package/dist/cjs/gov-tooltip.cjs.entry.js +2 -2
  113. package/dist/cjs/gov-tooltip.cjs.entry.js.map +1 -1
  114. package/dist/cjs/gov-wizzard-item.cjs.entry.js +2 -2
  115. package/dist/cjs/gov-wizzard-item.cjs.entry.js.map +1 -1
  116. package/dist/cjs/gov-wizzard.cjs.entry.js +2 -2
  117. package/dist/cjs/gov-wizzard.cjs.entry.js.map +1 -1
  118. package/dist/cjs/{index-356717ae.js → index-29ac07f6.js} +64 -2
  119. package/dist/cjs/index-29ac07f6.js.map +1 -0
  120. package/dist/cjs/loader.cjs.js +2 -2
  121. package/dist/collection/collection-manifest.json +3 -2
  122. package/dist/collection/components/gov-accordion/constants.js +1 -1
  123. package/dist/collection/components/gov-accordion/constants.js.map +1 -1
  124. package/dist/collection/components/gov-accordion/gov-accordion-item.css +19 -0
  125. package/dist/collection/components/gov-accordion/gov-accordion-item.js +39 -17
  126. package/dist/collection/components/gov-accordion/gov-accordion-item.js.map +1 -1
  127. package/dist/collection/components/gov-accordion/gov-accordion.css +19 -0
  128. package/dist/collection/components/gov-accordion/gov-accordion.js +1 -1
  129. package/dist/collection/components/gov-alert/gov-alert.css +19 -0
  130. package/dist/collection/components/gov-app/gov-app.css +19 -0
  131. package/dist/collection/components/gov-attachments/gov-attachments-item.css +19 -0
  132. package/dist/collection/components/gov-attachments/gov-attachments.css +19 -0
  133. package/dist/collection/components/gov-backdrop/gov-backdrop.css +19 -0
  134. package/dist/collection/components/gov-badge/gov-badge.css +19 -0
  135. package/dist/collection/components/gov-badge/gov-badge.js +1 -1
  136. package/dist/collection/components/gov-breadcrumbs/constants.js +0 -4
  137. package/dist/collection/components/gov-breadcrumbs/constants.js.map +1 -1
  138. package/dist/collection/components/gov-breadcrumbs/gov-breadcrumbs.css +45 -16
  139. package/dist/collection/components/gov-breadcrumbs/gov-breadcrumbs.js +2 -81
  140. package/dist/collection/components/gov-breadcrumbs/gov-breadcrumbs.js.map +1 -1
  141. package/dist/collection/components/gov-button/constants.js +1 -1
  142. package/dist/collection/components/gov-button/constants.js.map +1 -1
  143. package/dist/collection/components/gov-button/gov-button.css +19 -0
  144. package/dist/collection/components/gov-button/gov-button.js +1 -1
  145. package/dist/collection/components/gov-card/gov-card.css +19 -0
  146. package/dist/collection/components/gov-container/gov-container.css +19 -0
  147. package/dist/collection/components/gov-cookiebar/gov-cookiebar.css +19 -0
  148. package/dist/collection/components/gov-empty/gov-empty.css +19 -0
  149. package/dist/collection/components/gov-error-code/gov-error-code.css +19 -0
  150. package/dist/collection/components/gov-form/autocomplete/gov-form-autocomplete.css +19 -0
  151. package/dist/collection/components/gov-form/checkbox/gov-form-checkbox.css +19 -0
  152. package/dist/collection/components/gov-form/control/gov-form-control.css +19 -0
  153. package/dist/collection/components/gov-form/file/gov-form-file.css +19 -0
  154. package/dist/collection/components/gov-form/group/gov-form-group.css +19 -0
  155. package/dist/collection/components/gov-form/input/gov-form-input.css +19 -0
  156. package/dist/collection/components/gov-form/label/gov-form-label.css +19 -0
  157. package/dist/collection/components/gov-form/message/gov-form-message.css +19 -0
  158. package/dist/collection/components/gov-form/message/gov-form-message.js +1 -1
  159. package/dist/collection/components/gov-form/message/gov-form-message.js.map +1 -1
  160. package/dist/collection/components/gov-form/multiselect/gov-form-multi-select.css +19 -0
  161. package/dist/collection/components/gov-form/password-power/gov-form-password-power.css +19 -0
  162. package/dist/collection/components/gov-form/radio/gov-form-radio.css +19 -0
  163. package/dist/collection/components/gov-form/search/gov-form-search.css +22 -3
  164. package/dist/collection/components/gov-form/select/gov-form-select.css +19 -0
  165. package/dist/collection/components/gov-form/switch/gov-form-switch.css +19 -0
  166. package/dist/collection/components/gov-grid/gov-grid-item.css +19 -0
  167. package/dist/collection/components/gov-grid/gov-grid.css +19 -0
  168. package/dist/collection/components/gov-icon/gov-icon.css +19 -0
  169. package/dist/collection/components/gov-layout/gov-layout-column.css +19 -0
  170. package/dist/collection/components/gov-layout/gov-layout.css +19 -0
  171. package/dist/collection/components/gov-loading/loading/constants.js.map +1 -0
  172. package/dist/collection/components/gov-loading/{gov-loading.css → loading/gov-loading.css} +19 -0
  173. package/dist/collection/components/gov-loading/{gov-loading.js → loading/gov-loading.js} +1 -1
  174. package/dist/collection/components/gov-loading/loading/gov-loading.js.map +1 -0
  175. package/dist/collection/components/gov-loading/skeleton/constants.js +20 -0
  176. package/dist/collection/components/gov-loading/skeleton/constants.js.map +1 -0
  177. package/dist/collection/components/gov-loading/skeleton/gov-skeleton.css +290 -0
  178. package/dist/collection/components/gov-loading/skeleton/gov-skeleton.js +267 -0
  179. package/dist/collection/components/gov-loading/skeleton/gov-skeleton.js.map +1 -0
  180. package/dist/collection/components/gov-message/gov-message.css +19 -0
  181. package/dist/collection/components/gov-modal/gov-modal.css +19 -0
  182. package/dist/collection/components/gov-nav/gov-nav-item.css +19 -0
  183. package/dist/collection/components/gov-nav/gov-nav.css +19 -0
  184. package/dist/collection/components/gov-pagination/gov-pagination.css +19 -0
  185. package/dist/collection/components/gov-promp/gov-prompt.css +19 -0
  186. package/dist/collection/components/gov-side-nav/gov-side-nav-item.css +19 -0
  187. package/dist/collection/components/gov-side-nav/gov-side-nav.css +19 -0
  188. package/dist/collection/components/gov-spacer/gov-spacer.css +19 -0
  189. package/dist/collection/components/gov-statsbar/gov-statsbar-item.css +19 -0
  190. package/dist/collection/components/gov-statsbar/gov-statsbar.css +19 -0
  191. package/dist/collection/components/gov-stepper/gov-stepper-item.css +19 -0
  192. package/dist/collection/components/gov-stepper/gov-stepper.css +19 -0
  193. package/dist/collection/components/gov-tabs/gov-tabs-item.css +19 -0
  194. package/dist/collection/components/gov-tabs/gov-tabs.css +19 -0
  195. package/dist/collection/components/gov-tile/container/constants.js.map +1 -0
  196. package/dist/collection/components/{gov-tiles → gov-tile/container}/gov-tiles.css +19 -0
  197. package/dist/collection/components/{gov-tiles → gov-tile/container}/gov-tiles.js +2 -2
  198. package/dist/collection/components/gov-tile/container/gov-tiles.js.map +1 -0
  199. package/dist/collection/components/gov-tile/gov-tile.css +19 -0
  200. package/dist/collection/components/gov-toast/gov-toast.css +19 -0
  201. package/dist/collection/components/gov-tooltip/gov-tooltip-content.css +19 -0
  202. package/dist/collection/components/gov-tooltip/gov-tooltip.css +19 -0
  203. package/dist/collection/components/gov-wizzard/gov-wizzard-item.css +19 -0
  204. package/dist/collection/components/gov-wizzard/gov-wizzard.css +19 -0
  205. package/dist/collection/pages/Breadcrumbs.js +25 -5
  206. package/dist/collection/pages/Breadcrumbs.js.map +1 -1
  207. package/dist/collection/pages/Loading.js +52 -0
  208. package/dist/collection/pages/Loading.js.map +1 -1
  209. package/dist/components/constants.js +1 -1
  210. package/dist/components/constants.js.map +1 -1
  211. package/dist/components/constants3.js +1 -1
  212. package/dist/components/constants3.js.map +1 -1
  213. package/dist/components/gov-accordion-item.js +13 -7
  214. package/dist/components/gov-accordion-item.js.map +1 -1
  215. package/dist/components/gov-accordion.js +2 -1
  216. package/dist/components/gov-accordion.js.map +1 -1
  217. package/dist/components/gov-alert.js +2 -1
  218. package/dist/components/gov-alert.js.map +1 -1
  219. package/dist/components/gov-app.js +79 -6
  220. package/dist/components/gov-app.js.map +1 -1
  221. package/dist/components/gov-attachments-item2.js +2 -1
  222. package/dist/components/gov-attachments-item2.js.map +1 -1
  223. package/dist/components/gov-attachments2.js +2 -1
  224. package/dist/components/gov-attachments2.js.map +1 -1
  225. package/dist/components/gov-backdrop2.js +2 -1
  226. package/dist/components/gov-backdrop2.js.map +1 -1
  227. package/dist/components/gov-badge2.js +2 -1
  228. package/dist/components/gov-badge2.js.map +1 -1
  229. package/dist/components/gov-breadcrumbs.js +6 -51
  230. package/dist/components/gov-breadcrumbs.js.map +1 -1
  231. package/dist/components/gov-button2.js +2 -1
  232. package/dist/components/gov-button2.js.map +1 -1
  233. package/dist/components/gov-card.js +2 -1
  234. package/dist/components/gov-card.js.map +1 -1
  235. package/dist/components/gov-container.js +2 -1
  236. package/dist/components/gov-container.js.map +1 -1
  237. package/dist/components/gov-cookiebar.js +2 -1
  238. package/dist/components/gov-cookiebar.js.map +1 -1
  239. package/dist/components/gov-empty.js +2 -1
  240. package/dist/components/gov-empty.js.map +1 -1
  241. package/dist/components/gov-error-code.js +2 -1
  242. package/dist/components/gov-error-code.js.map +1 -1
  243. package/dist/components/gov-form-autocomplete2.js +2 -1
  244. package/dist/components/gov-form-autocomplete2.js.map +1 -1
  245. package/dist/components/gov-form-checkbox.js +2 -1
  246. package/dist/components/gov-form-checkbox.js.map +1 -1
  247. package/dist/components/gov-form-control.js +2 -1
  248. package/dist/components/gov-form-control.js.map +1 -1
  249. package/dist/components/gov-form-file.js +2 -1
  250. package/dist/components/gov-form-file.js.map +1 -1
  251. package/dist/components/gov-form-group.js +2 -1
  252. package/dist/components/gov-form-group.js.map +1 -1
  253. package/dist/components/gov-form-input2.js +2 -1
  254. package/dist/components/gov-form-input2.js.map +1 -1
  255. package/dist/components/gov-form-label.js +2 -1
  256. package/dist/components/gov-form-label.js.map +1 -1
  257. package/dist/components/gov-form-message2.js +2 -1
  258. package/dist/components/gov-form-message2.js.map +1 -1
  259. package/dist/components/gov-form-multi-select.js +2 -1
  260. package/dist/components/gov-form-multi-select.js.map +1 -1
  261. package/dist/components/gov-form-password-power.js +2 -1
  262. package/dist/components/gov-form-password-power.js.map +1 -1
  263. package/dist/components/gov-form-radio.js +2 -1
  264. package/dist/components/gov-form-radio.js.map +1 -1
  265. package/dist/components/gov-form-search.js +2 -1
  266. package/dist/components/gov-form-search.js.map +1 -1
  267. package/dist/components/gov-form-select2.js +2 -1
  268. package/dist/components/gov-form-select2.js.map +1 -1
  269. package/dist/components/gov-form-switch.js +2 -1
  270. package/dist/components/gov-form-switch.js.map +1 -1
  271. package/dist/components/gov-grid-item.js +2 -1
  272. package/dist/components/gov-grid-item.js.map +1 -1
  273. package/dist/components/gov-grid.js +2 -1
  274. package/dist/components/gov-grid.js.map +1 -1
  275. package/dist/components/gov-icon2.js +3 -2
  276. package/dist/components/gov-icon2.js.map +1 -1
  277. package/dist/components/gov-layout-column.js +2 -1
  278. package/dist/components/gov-layout-column.js.map +1 -1
  279. package/dist/components/gov-layout.js +2 -1
  280. package/dist/components/gov-layout.js.map +1 -1
  281. package/dist/components/gov-loading.js +2 -1
  282. package/dist/components/gov-loading.js.map +1 -1
  283. package/dist/components/gov-message.js +2 -1
  284. package/dist/components/gov-message.js.map +1 -1
  285. package/dist/components/gov-modal.js +2 -1
  286. package/dist/components/gov-modal.js.map +1 -1
  287. package/dist/components/gov-nav-item.js +2 -1
  288. package/dist/components/gov-nav-item.js.map +1 -1
  289. package/dist/components/gov-nav.js +2 -1
  290. package/dist/components/gov-nav.js.map +1 -1
  291. package/dist/components/gov-pagination.js +2 -1
  292. package/dist/components/gov-pagination.js.map +1 -1
  293. package/dist/components/gov-prompt.js +2 -1
  294. package/dist/components/gov-prompt.js.map +1 -1
  295. package/dist/components/gov-side-nav-item.js +2 -1
  296. package/dist/components/gov-side-nav-item.js.map +1 -1
  297. package/dist/components/gov-side-nav.js +2 -1
  298. package/dist/components/gov-side-nav.js.map +1 -1
  299. package/dist/components/gov-skeleton.d.ts +11 -0
  300. package/dist/components/gov-skeleton.js +138 -0
  301. package/dist/components/gov-skeleton.js.map +1 -0
  302. package/dist/components/gov-spacer.js +2 -1
  303. package/dist/components/gov-spacer.js.map +1 -1
  304. package/dist/components/gov-statsbar-item.js +2 -1
  305. package/dist/components/gov-statsbar-item.js.map +1 -1
  306. package/dist/components/gov-statsbar.js +2 -1
  307. package/dist/components/gov-statsbar.js.map +1 -1
  308. package/dist/components/gov-stepper-item.js +2 -1
  309. package/dist/components/gov-stepper-item.js.map +1 -1
  310. package/dist/components/gov-stepper.js +2 -1
  311. package/dist/components/gov-stepper.js.map +1 -1
  312. package/dist/components/gov-tabs-item.js +2 -1
  313. package/dist/components/gov-tabs-item.js.map +1 -1
  314. package/dist/components/gov-tabs.js +2 -1
  315. package/dist/components/gov-tabs.js.map +1 -1
  316. package/dist/components/gov-tile.js +2 -1
  317. package/dist/components/gov-tile.js.map +1 -1
  318. package/dist/components/gov-tiles.js +2 -1
  319. package/dist/components/gov-tiles.js.map +1 -1
  320. package/dist/components/gov-toast.js +2 -1
  321. package/dist/components/gov-toast.js.map +1 -1
  322. package/dist/components/gov-tooltip-content.js +2 -1
  323. package/dist/components/gov-tooltip-content.js.map +1 -1
  324. package/dist/components/gov-tooltip.js +2 -1
  325. package/dist/components/gov-tooltip.js.map +1 -1
  326. package/dist/components/gov-wizzard-item.js +2 -1
  327. package/dist/components/gov-wizzard-item.js.map +1 -1
  328. package/dist/components/gov-wizzard.js +2 -1
  329. package/dist/components/gov-wizzard.js.map +1 -1
  330. package/dist/components/index.d.ts +3 -2
  331. package/dist/components/index.js +1 -0
  332. package/dist/components/index.js.map +1 -1
  333. package/dist/core/core.css +1 -1
  334. package/dist/core/core.esm.js +1 -1
  335. package/dist/core/core.esm.js.map +1 -1
  336. package/dist/core/p-0272ffa0.entry.js +2 -0
  337. package/dist/core/{p-5b4e3bdf.entry.js.map → p-0272ffa0.entry.js.map} +1 -1
  338. package/dist/core/p-042d5b20.entry.js +2 -0
  339. package/dist/core/{p-1bb5184f.entry.js.map → p-042d5b20.entry.js.map} +1 -1
  340. package/dist/core/p-0874a5ec.entry.js +2 -0
  341. package/dist/core/p-0874a5ec.entry.js.map +1 -0
  342. package/dist/core/p-0f0564e8.entry.js +2 -0
  343. package/dist/core/{p-c0d3d3e0.entry.js.map → p-0f0564e8.entry.js.map} +1 -1
  344. package/dist/core/p-131c50d1.entry.js +2 -0
  345. package/dist/core/{p-e86bffd0.entry.js.map → p-131c50d1.entry.js.map} +1 -1
  346. package/dist/core/p-1c877e8e.entry.js +2 -0
  347. package/dist/core/{p-02c1b4db.entry.js.map → p-1c877e8e.entry.js.map} +1 -1
  348. package/dist/core/p-1def0eb2.entry.js +2 -0
  349. package/dist/core/{p-733bd593.entry.js.map → p-1def0eb2.entry.js.map} +1 -1
  350. package/dist/core/p-2426fa82.entry.js +2 -0
  351. package/dist/core/{p-9d51ea56.entry.js.map → p-2426fa82.entry.js.map} +1 -1
  352. package/dist/core/p-24877419.entry.js +2 -0
  353. package/dist/core/{p-9ca0a11c.entry.js.map → p-24877419.entry.js.map} +1 -1
  354. package/dist/core/p-2f88b6d9.entry.js +2 -0
  355. package/dist/core/{p-a6c8d474.entry.js.map → p-2f88b6d9.entry.js.map} +1 -1
  356. package/dist/core/p-30b162df.entry.js +2 -0
  357. package/dist/core/p-30b162df.entry.js.map +1 -0
  358. package/dist/core/p-337fb136.entry.js +2 -0
  359. package/dist/core/{p-4e12d6e3.entry.js.map → p-337fb136.entry.js.map} +1 -1
  360. package/dist/core/p-3f92f3bf.entry.js +2 -0
  361. package/dist/core/{p-4b375a4d.entry.js.map → p-3f92f3bf.entry.js.map} +1 -1
  362. package/dist/core/p-402c2751.entry.js +2 -0
  363. package/dist/core/{p-9658b6ef.entry.js.map → p-402c2751.entry.js.map} +1 -1
  364. package/dist/core/p-405fc50f.entry.js +2 -0
  365. package/dist/core/{p-c9948e57.entry.js.map → p-405fc50f.entry.js.map} +1 -1
  366. package/dist/core/p-42636ddf.entry.js +2 -0
  367. package/dist/core/{p-fc9d66ae.entry.js.map → p-42636ddf.entry.js.map} +1 -1
  368. package/dist/core/p-429850b9.entry.js +2 -0
  369. package/dist/core/p-429850b9.entry.js.map +1 -0
  370. package/dist/core/p-471c0863.entry.js +2 -0
  371. package/dist/core/{p-613d8ed8.entry.js.map → p-471c0863.entry.js.map} +1 -1
  372. package/dist/core/p-4af5e4f4.js +3 -0
  373. package/dist/core/p-4af5e4f4.js.map +1 -0
  374. package/dist/core/p-52dc68aa.entry.js +2 -0
  375. package/dist/core/{p-f531f5c4.entry.js.map → p-52dc68aa.entry.js.map} +1 -1
  376. package/dist/core/p-540e79c4.entry.js +2 -0
  377. package/dist/core/{p-01bdd4a4.entry.js.map → p-540e79c4.entry.js.map} +1 -1
  378. package/dist/core/p-5a1c8d48.entry.js +2 -0
  379. package/dist/core/{p-68d968ac.entry.js.map → p-5a1c8d48.entry.js.map} +1 -1
  380. package/dist/core/p-5d348765.entry.js +2 -0
  381. package/dist/core/{p-8a8d846c.entry.js.map → p-5d348765.entry.js.map} +1 -1
  382. package/dist/core/p-5e4cf9a2.entry.js +2 -0
  383. package/dist/core/{p-8dacc8dc.entry.js.map → p-5e4cf9a2.entry.js.map} +1 -1
  384. package/dist/core/p-61103476.entry.js +2 -0
  385. package/dist/core/{p-533bd158.entry.js.map → p-61103476.entry.js.map} +1 -1
  386. package/dist/core/p-67006730.entry.js +2 -0
  387. package/dist/core/{p-ac33c5ef.entry.js.map → p-67006730.entry.js.map} +1 -1
  388. package/dist/core/p-6aa31f02.entry.js +2 -0
  389. package/dist/core/{p-7be3abb5.entry.js.map → p-6aa31f02.entry.js.map} +1 -1
  390. package/dist/core/p-732f74fe.entry.js +2 -0
  391. package/dist/core/{p-49853c5a.entry.js.map → p-732f74fe.entry.js.map} +1 -1
  392. package/dist/core/p-76e2aa52.entry.js +2 -0
  393. package/dist/core/{p-e57d250f.entry.js.map → p-76e2aa52.entry.js.map} +1 -1
  394. package/dist/core/p-7bfa06b1.entry.js +2 -0
  395. package/dist/core/{p-4d73d70e.entry.js.map → p-7bfa06b1.entry.js.map} +1 -1
  396. package/dist/core/p-8204070b.entry.js +2 -0
  397. package/dist/core/{p-b37ca132.entry.js.map → p-8204070b.entry.js.map} +1 -1
  398. package/dist/core/p-8bebbcc7.entry.js +2 -0
  399. package/dist/core/{p-63d2e8ec.entry.js.map → p-8bebbcc7.entry.js.map} +1 -1
  400. package/dist/core/p-93edcce2.entry.js +2 -0
  401. package/dist/core/{p-b5284ce3.entry.js.map → p-93edcce2.entry.js.map} +1 -1
  402. package/dist/core/p-9bdce72b.entry.js +2 -0
  403. package/dist/core/{p-8d5c9030.entry.js.map → p-9bdce72b.entry.js.map} +1 -1
  404. package/dist/core/p-a4d23e73.entry.js +2 -0
  405. package/dist/core/{p-25380da6.entry.js.map → p-a4d23e73.entry.js.map} +1 -1
  406. package/dist/core/p-a5d69694.js +2 -0
  407. package/dist/core/p-a5d69694.js.map +1 -0
  408. package/dist/core/p-a89c27c1.entry.js +2 -0
  409. package/dist/core/{p-3e9ba1c1.entry.js.map → p-a89c27c1.entry.js.map} +1 -1
  410. package/dist/core/p-aba39622.entry.js +2 -0
  411. package/dist/core/{p-a5e34e93.entry.js.map → p-aba39622.entry.js.map} +1 -1
  412. package/dist/core/p-b2275b3d.js +2 -0
  413. package/dist/core/p-b2275b3d.js.map +1 -0
  414. package/dist/core/p-b7587525.entry.js +2 -0
  415. package/dist/core/{p-ae3e2d60.entry.js.map → p-b7587525.entry.js.map} +1 -1
  416. package/dist/core/p-bce96aac.entry.js +2 -0
  417. package/dist/core/p-bce96aac.entry.js.map +1 -0
  418. package/dist/core/p-c836f7cd.entry.js +2 -0
  419. package/dist/core/{p-d2d8998d.entry.js.map → p-c836f7cd.entry.js.map} +1 -1
  420. package/dist/core/p-c91928ed.entry.js +2 -0
  421. package/dist/core/p-c91928ed.entry.js.map +1 -0
  422. package/dist/core/p-d2f6053f.entry.js +2 -0
  423. package/dist/core/{p-595a2301.entry.js.map → p-d2f6053f.entry.js.map} +1 -1
  424. package/dist/core/p-d389c001.entry.js +2 -0
  425. package/dist/core/{p-f1fe9358.entry.js.map → p-d389c001.entry.js.map} +1 -1
  426. package/dist/core/p-d5c2db32.entry.js +2 -0
  427. package/dist/core/{p-9ba104c3.entry.js.map → p-d5c2db32.entry.js.map} +1 -1
  428. package/dist/core/p-d8def432.entry.js +2 -0
  429. package/dist/core/{p-72f16a95.entry.js.map → p-d8def432.entry.js.map} +1 -1
  430. package/dist/core/p-d90a2718.entry.js +2 -0
  431. package/dist/core/{p-24cde59e.entry.js.map → p-d90a2718.entry.js.map} +1 -1
  432. package/dist/core/p-d9b4bc20.entry.js +2 -0
  433. package/dist/core/{p-84fda9dd.entry.js.map → p-d9b4bc20.entry.js.map} +1 -1
  434. package/dist/core/p-dc94a1da.entry.js +2 -0
  435. package/dist/core/{p-cf6576fd.entry.js.map → p-dc94a1da.entry.js.map} +1 -1
  436. package/dist/core/p-e1e4c8f8.entry.js +2 -0
  437. package/dist/core/p-e1e4c8f8.entry.js.map +1 -0
  438. package/dist/core/p-e3141382.entry.js +2 -0
  439. package/dist/core/{p-b966062a.entry.js.map → p-e3141382.entry.js.map} +1 -1
  440. package/dist/core/p-e4bb6100.entry.js +2 -0
  441. package/dist/core/{p-16608a87.entry.js.map → p-e4bb6100.entry.js.map} +1 -1
  442. package/dist/core/p-e4bb6114.entry.js +2 -0
  443. package/dist/core/{p-9d30e79e.entry.js.map → p-e4bb6114.entry.js.map} +1 -1
  444. package/dist/core/p-e6b8c610.entry.js +2 -0
  445. package/dist/core/{p-ef095a1f.entry.js.map → p-e6b8c610.entry.js.map} +1 -1
  446. package/dist/core/p-ef393836.entry.js +2 -0
  447. package/dist/core/{p-833ab414.entry.js.map → p-ef393836.entry.js.map} +1 -1
  448. package/dist/core/p-f0a4439e.entry.js +2 -0
  449. package/dist/core/p-f0a4439e.entry.js.map +1 -0
  450. package/dist/core/p-f644cad5.entry.js +2 -0
  451. package/dist/core/{p-fac1c202.entry.js.map → p-f644cad5.entry.js.map} +1 -1
  452. package/dist/core/p-f6e2f2f0.entry.js +2 -0
  453. package/dist/core/{p-00e1e600.entry.js.map → p-f6e2f2f0.entry.js.map} +1 -1
  454. package/dist/custom-elements/index.d.ts +6 -0
  455. package/dist/custom-elements/index.js +1 -1
  456. package/dist/custom-elements/index.js.map +1 -1
  457. package/dist/esm/{constants-45f6db4c.js → constants-089b3fdd.js} +2 -2
  458. package/dist/esm/constants-089b3fdd.js.map +1 -0
  459. package/dist/esm/{constants-14a7ba8e.js → constants-ab132d9c.js} +2 -2
  460. package/dist/esm/constants-ab132d9c.js.map +1 -0
  461. package/dist/esm/core.js +2 -2
  462. package/dist/esm/gov-accordion-item.entry.js +13 -9
  463. package/dist/esm/gov-accordion-item.entry.js.map +1 -1
  464. package/dist/esm/gov-accordion.entry.js +3 -3
  465. package/dist/esm/gov-accordion.entry.js.map +1 -1
  466. package/dist/esm/gov-alert.entry.js +2 -2
  467. package/dist/esm/gov-alert.entry.js.map +1 -1
  468. package/dist/esm/gov-app.entry.js +79 -7
  469. package/dist/esm/gov-app.entry.js.map +1 -1
  470. package/dist/esm/gov-attachments_3.entry.js +4 -4
  471. package/dist/esm/gov-attachments_3.entry.js.map +1 -1
  472. package/dist/esm/gov-backdrop.entry.js +2 -2
  473. package/dist/esm/gov-backdrop.entry.js.map +1 -1
  474. package/dist/esm/gov-badge.entry.js +3 -3
  475. package/dist/esm/gov-badge.entry.js.map +1 -1
  476. package/dist/esm/gov-breadcrumbs.entry.js +4 -34
  477. package/dist/esm/gov-breadcrumbs.entry.js.map +1 -1
  478. package/dist/esm/gov-button.entry.js +3 -3
  479. package/dist/esm/gov-button.entry.js.map +1 -1
  480. package/dist/esm/gov-card.entry.js +2 -2
  481. package/dist/esm/gov-card.entry.js.map +1 -1
  482. package/dist/esm/gov-container.entry.js +2 -2
  483. package/dist/esm/gov-container.entry.js.map +1 -1
  484. package/dist/esm/gov-cookiebar.entry.js +2 -2
  485. package/dist/esm/gov-cookiebar.entry.js.map +1 -1
  486. package/dist/esm/gov-empty.entry.js +2 -2
  487. package/dist/esm/gov-empty.entry.js.map +1 -1
  488. package/dist/esm/gov-error-code.entry.js +2 -2
  489. package/dist/esm/gov-error-code.entry.js.map +1 -1
  490. package/dist/esm/gov-form-autocomplete.entry.js +2 -2
  491. package/dist/esm/gov-form-autocomplete.entry.js.map +1 -1
  492. package/dist/esm/gov-form-checkbox.entry.js +2 -2
  493. package/dist/esm/gov-form-checkbox.entry.js.map +1 -1
  494. package/dist/esm/gov-form-control.entry.js +2 -2
  495. package/dist/esm/gov-form-control.entry.js.map +1 -1
  496. package/dist/esm/gov-form-file.entry.js +2 -2
  497. package/dist/esm/gov-form-file.entry.js.map +1 -1
  498. package/dist/esm/gov-form-group.entry.js +2 -2
  499. package/dist/esm/gov-form-group.entry.js.map +1 -1
  500. package/dist/esm/gov-form-input.entry.js +2 -2
  501. package/dist/esm/gov-form-input.entry.js.map +1 -1
  502. package/dist/esm/gov-form-label.entry.js +2 -2
  503. package/dist/esm/gov-form-label.entry.js.map +1 -1
  504. package/dist/esm/gov-form-multi-select.entry.js +2 -2
  505. package/dist/esm/gov-form-multi-select.entry.js.map +1 -1
  506. package/dist/esm/gov-form-password-power.entry.js +2 -2
  507. package/dist/esm/gov-form-password-power.entry.js.map +1 -1
  508. package/dist/esm/gov-form-radio.entry.js +2 -2
  509. package/dist/esm/gov-form-radio.entry.js.map +1 -1
  510. package/dist/esm/gov-form-search.entry.js +2 -2
  511. package/dist/esm/gov-form-search.entry.js.map +1 -1
  512. package/dist/esm/gov-form-select.entry.js +2 -2
  513. package/dist/esm/gov-form-select.entry.js.map +1 -1
  514. package/dist/esm/gov-form-switch.entry.js +2 -2
  515. package/dist/esm/gov-form-switch.entry.js.map +1 -1
  516. package/dist/esm/gov-grid-item.entry.js +2 -2
  517. package/dist/esm/gov-grid-item.entry.js.map +1 -1
  518. package/dist/esm/gov-grid.entry.js +2 -2
  519. package/dist/esm/gov-grid.entry.js.map +1 -1
  520. package/dist/esm/gov-icon.entry.js +3 -3
  521. package/dist/esm/gov-icon.entry.js.map +1 -1
  522. package/dist/esm/gov-layout-column.entry.js +2 -2
  523. package/dist/esm/gov-layout-column.entry.js.map +1 -1
  524. package/dist/esm/gov-layout.entry.js +2 -2
  525. package/dist/esm/gov-layout.entry.js.map +1 -1
  526. package/dist/esm/gov-loading.entry.js +2 -2
  527. package/dist/esm/gov-loading.entry.js.map +1 -1
  528. package/dist/esm/gov-message.entry.js +2 -2
  529. package/dist/esm/gov-message.entry.js.map +1 -1
  530. package/dist/esm/gov-modal.entry.js +2 -2
  531. package/dist/esm/gov-modal.entry.js.map +1 -1
  532. package/dist/esm/gov-nav-item.entry.js +2 -2
  533. package/dist/esm/gov-nav-item.entry.js.map +1 -1
  534. package/dist/esm/gov-nav.entry.js +2 -2
  535. package/dist/esm/gov-nav.entry.js.map +1 -1
  536. package/dist/esm/gov-pagination.entry.js +2 -2
  537. package/dist/esm/gov-pagination.entry.js.map +1 -1
  538. package/dist/esm/gov-prompt.entry.js +2 -2
  539. package/dist/esm/gov-prompt.entry.js.map +1 -1
  540. package/dist/esm/gov-side-nav-item.entry.js +2 -2
  541. package/dist/esm/gov-side-nav-item.entry.js.map +1 -1
  542. package/dist/esm/gov-side-nav.entry.js +2 -2
  543. package/dist/esm/gov-side-nav.entry.js.map +1 -1
  544. package/dist/esm/gov-skeleton.entry.js +113 -0
  545. package/dist/esm/gov-skeleton.entry.js.map +1 -0
  546. package/dist/esm/gov-spacer.entry.js +2 -2
  547. package/dist/esm/gov-spacer.entry.js.map +1 -1
  548. package/dist/esm/gov-statsbar-item.entry.js +2 -2
  549. package/dist/esm/gov-statsbar-item.entry.js.map +1 -1
  550. package/dist/esm/gov-statsbar.entry.js +2 -2
  551. package/dist/esm/gov-statsbar.entry.js.map +1 -1
  552. package/dist/esm/gov-stepper-item.entry.js +2 -2
  553. package/dist/esm/gov-stepper-item.entry.js.map +1 -1
  554. package/dist/esm/gov-stepper.entry.js +2 -2
  555. package/dist/esm/gov-stepper.entry.js.map +1 -1
  556. package/dist/esm/gov-tabs-item.entry.js +2 -2
  557. package/dist/esm/gov-tabs-item.entry.js.map +1 -1
  558. package/dist/esm/gov-tabs.entry.js +2 -2
  559. package/dist/esm/gov-tabs.entry.js.map +1 -1
  560. package/dist/esm/gov-tile.entry.js +2 -2
  561. package/dist/esm/gov-tile.entry.js.map +1 -1
  562. package/dist/esm/gov-tiles.entry.js +2 -2
  563. package/dist/esm/gov-tiles.entry.js.map +1 -1
  564. package/dist/esm/gov-toast.entry.js +2 -2
  565. package/dist/esm/gov-toast.entry.js.map +1 -1
  566. package/dist/esm/gov-tooltip-content.entry.js +2 -2
  567. package/dist/esm/gov-tooltip-content.entry.js.map +1 -1
  568. package/dist/esm/gov-tooltip.entry.js +2 -2
  569. package/dist/esm/gov-tooltip.entry.js.map +1 -1
  570. package/dist/esm/gov-wizzard-item.entry.js +2 -2
  571. package/dist/esm/gov-wizzard-item.entry.js.map +1 -1
  572. package/dist/esm/gov-wizzard.entry.js +2 -2
  573. package/dist/esm/gov-wizzard.entry.js.map +1 -1
  574. package/dist/esm/{index-00e9a0d5.js → index-b010bfb4.js} +64 -2
  575. package/dist/esm/index-b010bfb4.js.map +1 -0
  576. package/dist/esm/loader.js +2 -2
  577. package/dist/hydrate/index.js +285 -116
  578. package/dist/stencil.config.js +14 -0
  579. package/dist/stencil.config.js.map +1 -1
  580. package/dist/types/components/gov-accordion/constants.d.ts +1 -1
  581. package/dist/types/components/gov-accordion/gov-accordion-item.d.ts +8 -4
  582. package/dist/types/components/gov-breadcrumbs/constants.d.ts +0 -4
  583. package/dist/types/components/gov-breadcrumbs/gov-breadcrumbs.d.ts +0 -14
  584. package/dist/types/components/gov-button/constants.d.ts +1 -1
  585. package/dist/types/components/gov-form/checkbox/constants.d.ts +1 -1
  586. package/dist/types/components/gov-form/group/constants.d.ts +1 -1
  587. package/dist/types/components/gov-form/label/constants.d.ts +1 -1
  588. package/dist/types/components/gov-form/message/gov-form-message.d.ts +1 -1
  589. package/dist/types/components/gov-form/radio/constants.d.ts +1 -1
  590. package/dist/types/components/gov-form/switch/constants.d.ts +1 -1
  591. package/dist/types/components/gov-loading/skeleton/constants.d.ts +20 -0
  592. package/dist/types/components/gov-loading/skeleton/gov-skeleton.d.ts +52 -0
  593. package/dist/types/components/gov-spacer/constants.d.ts +1 -1
  594. package/dist/types/components/gov-stepper/constants.d.ts +1 -1
  595. package/dist/types/components/gov-wizzard/constants.d.ts +1 -1
  596. package/dist/types/components.d.ts +86 -16
  597. package/package.json +1 -1
  598. package/dist/cjs/constants-245999e7.js.map +0 -1
  599. package/dist/cjs/constants-e175be18.js.map +0 -1
  600. package/dist/cjs/index-356717ae.js.map +0 -1
  601. package/dist/collection/components/gov-loading/constants.js.map +0 -1
  602. package/dist/collection/components/gov-loading/gov-loading.js.map +0 -1
  603. package/dist/collection/components/gov-tiles/constants.js.map +0 -1
  604. package/dist/collection/components/gov-tiles/gov-tiles.js.map +0 -1
  605. package/dist/core/p-00e1e600.entry.js +0 -2
  606. package/dist/core/p-01bdd4a4.entry.js +0 -2
  607. package/dist/core/p-0284b5e2.js +0 -2
  608. package/dist/core/p-0284b5e2.js.map +0 -1
  609. package/dist/core/p-02c1b4db.entry.js +0 -2
  610. package/dist/core/p-16608a87.entry.js +0 -2
  611. package/dist/core/p-1bb5184f.entry.js +0 -2
  612. package/dist/core/p-24cde59e.entry.js +0 -2
  613. package/dist/core/p-25380da6.entry.js +0 -2
  614. package/dist/core/p-3e9ba1c1.entry.js +0 -2
  615. package/dist/core/p-43811261.entry.js +0 -2
  616. package/dist/core/p-43811261.entry.js.map +0 -1
  617. package/dist/core/p-49853c5a.entry.js +0 -2
  618. package/dist/core/p-4b375a4d.entry.js +0 -2
  619. package/dist/core/p-4d73d70e.entry.js +0 -2
  620. package/dist/core/p-4e12d6e3.entry.js +0 -2
  621. package/dist/core/p-533bd158.entry.js +0 -2
  622. package/dist/core/p-595a2301.entry.js +0 -2
  623. package/dist/core/p-5b4e3bdf.entry.js +0 -2
  624. package/dist/core/p-613d8ed8.entry.js +0 -2
  625. package/dist/core/p-63d2e8ec.entry.js +0 -2
  626. package/dist/core/p-682c7cc6.js +0 -3
  627. package/dist/core/p-682c7cc6.js.map +0 -1
  628. package/dist/core/p-68d968ac.entry.js +0 -2
  629. package/dist/core/p-71e57780.entry.js +0 -2
  630. package/dist/core/p-71e57780.entry.js.map +0 -1
  631. package/dist/core/p-72f16a95.entry.js +0 -2
  632. package/dist/core/p-733bd593.entry.js +0 -2
  633. package/dist/core/p-7ac5f119.entry.js +0 -2
  634. package/dist/core/p-7ac5f119.entry.js.map +0 -1
  635. package/dist/core/p-7be3abb5.entry.js +0 -2
  636. package/dist/core/p-833ab414.entry.js +0 -2
  637. package/dist/core/p-84fda9dd.entry.js +0 -2
  638. package/dist/core/p-8a8d846c.entry.js +0 -2
  639. package/dist/core/p-8d5c9030.entry.js +0 -2
  640. package/dist/core/p-8dacc8dc.entry.js +0 -2
  641. package/dist/core/p-9658b6ef.entry.js +0 -2
  642. package/dist/core/p-99155ec0.entry.js +0 -2
  643. package/dist/core/p-99155ec0.entry.js.map +0 -1
  644. package/dist/core/p-9ba104c3.entry.js +0 -2
  645. package/dist/core/p-9ca0a11c.entry.js +0 -2
  646. package/dist/core/p-9d30e79e.entry.js +0 -2
  647. package/dist/core/p-9d51ea56.entry.js +0 -2
  648. package/dist/core/p-9dd1bbdd.entry.js +0 -2
  649. package/dist/core/p-9dd1bbdd.entry.js.map +0 -1
  650. package/dist/core/p-a5e34e93.entry.js +0 -2
  651. package/dist/core/p-a6c8d474.entry.js +0 -2
  652. package/dist/core/p-ac33c5ef.entry.js +0 -2
  653. package/dist/core/p-ae3e2d60.entry.js +0 -2
  654. package/dist/core/p-b37ca132.entry.js +0 -2
  655. package/dist/core/p-b5284ce3.entry.js +0 -2
  656. package/dist/core/p-b966062a.entry.js +0 -2
  657. package/dist/core/p-bd560ffc.entry.js +0 -2
  658. package/dist/core/p-bd560ffc.entry.js.map +0 -1
  659. package/dist/core/p-c0d3d3e0.entry.js +0 -2
  660. package/dist/core/p-c9948e57.entry.js +0 -2
  661. package/dist/core/p-cd869237.js +0 -2
  662. package/dist/core/p-cd869237.js.map +0 -1
  663. package/dist/core/p-cf6576fd.entry.js +0 -2
  664. package/dist/core/p-d2d8998d.entry.js +0 -2
  665. package/dist/core/p-e57d250f.entry.js +0 -2
  666. package/dist/core/p-e86bffd0.entry.js +0 -2
  667. package/dist/core/p-ef095a1f.entry.js +0 -2
  668. package/dist/core/p-f1fe9358.entry.js +0 -2
  669. package/dist/core/p-f531f5c4.entry.js +0 -2
  670. package/dist/core/p-fac1c202.entry.js +0 -2
  671. package/dist/core/p-fc9d66ae.entry.js +0 -2
  672. package/dist/esm/constants-14a7ba8e.js.map +0 -1
  673. package/dist/esm/constants-45f6db4c.js.map +0 -1
  674. package/dist/esm/index-00e9a0d5.js.map +0 -1
  675. /package/dist/collection/components/gov-loading/{constants.js → loading/constants.js} +0 -0
  676. /package/dist/collection/components/{gov-tiles → gov-tile/container}/constants.js +0 -0
  677. /package/dist/types/components/gov-loading/{constants.d.ts → loading/constants.d.ts} +0 -0
  678. /package/dist/types/components/gov-loading/{gov-loading.d.ts → loading/gov-loading.d.ts} +0 -0
  679. /package/dist/types/components/{gov-tiles → gov-tile/container}/constants.d.ts +0 -0
  680. /package/dist/types/components/{gov-tiles → gov-tile/container}/gov-tiles.d.ts +0 -0
@@ -0,0 +1,2 @@
1
+ import{r as o,c as a,h as e,H as t,g as i}from"./p-4af5e4f4.js";import{c as r}from"./p-24636c53.js";import{a as s}from"./p-364b4792.js";import{M as d}from"./p-45485d1c.js";import{c as l}from"./p-c20102ff.js";import{d as n}from"./p-03990da5.js";import{g as m,a as g}from"./p-3f37ddb6.js";import{a as c}from"./p-561fa17b.js";const h='.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-modal{display:none}.gov-modal__dialog{z-index:101;position:fixed;top:50%;left:50%;display:flex;justify-content:center;align-items:center;width:100%;max-width:var(--gov-modal-max-width, 52.5rem);height:100%;padding:0.5rem;border:none;background:transparent;transform:translate(-50%, -50%);pointer-events:none}.gov-modal__inner{position:relative;display:flex;flex-direction:column;width:100%;max-height:100%;border-radius:var(--gov-border-radius, 0.1875rem);background:var(--gov-modal-bg, var(--gov-color-neutral-white));overflow:hidden;pointer-events:auto;box-shadow:0 0 1.5rem rgba(var(--gov-color-secondary-800-rgb), 0.24)}.gov-modal__header{display:flex;gap:1rem;align-items:flex-start;padding:1.5rem 1rem;border-bottom:var(--gov-modal-border-color, 0.0625rem solid var(--gov-color-secondary-500))}.gov-modal__icon{flex:0 0 auto;padding-top:calc((var(--gov-text-3xl-font-size) * 1.5 - 1.5rem) / 2)}.gov-modal__icon>*{width:1.5rem;height:1.5rem}.gov-modal__title{font-weight:var(--gov-text-3xl-font-weight);font-size:var(--gov-text-3xl-font-size);line-height:var(--gov-text-3xl-line-height);letter-spacing:var(--gov-text-3xl-letter-spacing);margin:0}.gov-modal__close{flex:0 0 auto;margin-left:auto;padding-top:calc((var(--gov-text-3xl-font-size) * 1.5 - 2rem) / 2)}.gov-modal__content{height:100%;padding:1.5rem 1rem;color:var(--gov-modal-text-color, var(--gov-color-secondary-700));overflow:auto}.gov-modal__content>*:last-child{margin-bottom:0}.gov-modal__actions{display:flex;gap:0.5rem 1rem;flex-wrap:wrap;justify-content:flex-end;padding:1.5rem 1rem;border-top:var(--gov-modal-border-color, 0.0625rem solid var(--gov-color-secondary-500))}.gov-modal__dialog:focus .gov-modal__inner{outline:var(--gov-outline-width, 0.125rem) solid var(--gov-color-focus-base)}.gov-modal[open=""],.gov-modal[open=true i],.gov-modal[open="1"]{display:block}@media (min-width: 30em){.gov-modal__dialog{max-width:calc(var(--gov-modal-max-width, 52.5rem) + 3rem);padding:1.5rem}.gov-modal__dialog:focus{outline-offset:-1.5rem}.gov-modal__inner{box-shadow:0 0 2rem rgba(var(--gov-color-secondary-800-rgb), 0.32)}.gov-modal--prompt .gov-modal__dialog{max-width:calc(var(--gov-modal-prompt-max-width, 33.125rem) + 3rem)}}@media (min-width: 48em){.gov-modal__header{gap:1.25rem;padding:2rem 2.5rem 2rem 3rem}.gov-modal__close{padding-top:calc((var(--gov-text-3xl-font-size) * 1.5 - 2.5rem) / 2)}.gov-modal__content{padding:2rem 3rem}.gov-modal--prompt .gov-modal__header,.gov-modal--prompt .gov-modal__content,.gov-modal--prompt .gov-modal__actions{padding:1.5rem}}';const v=class{constructor(e){o(this,e);this.govClose=a(this,"gov-close",7);this.open=false;this.label=undefined;this.role="dialog";this.labelTag="h2";this.wcaglabelledBy=undefined;this.wcagDescribedBy=undefined;this.wcagCloseLabel=undefined;this.wcagCloseLabelledBy=undefined;this.modalVisible=false;this.h=m(this.host);this.labelId=r("GovModalLabel");this.contentId=r("GovModalContent")}validateLabelTag(o){const a=["h1","h2","h3","h4","h5","h6"];if(o){if(!a.includes(o)){c(`[${d.root}]: Tag ${o} is not allowed.`)}}}watchOpen(o){this.modalVisible=o}showModal(){this.modalVisible=true;document.body.classList.add(d.bodyFix)}hideModal(){this.modalVisible=false;document.body.classList.remove(d.bodyFix)}async componentWillRender(){if(this.modalVisible){this.showModal()}else{this.hideModal()}}async componentDidRender(){this.modalVisible=this.open;if(l()){await n(500);await this.validateWcag()}}render(){const o=this.labelTag;return e(t,{class:this.h.classes(d.root),open:this.modalVisible},e("dialog",{class:d.dialog,hidden:!this.modalVisible,tabindex:"-1",open:this.modalVisible,"aria-modal":"true","aria-hidden":g(!this.modalVisible),"aria-labelledby":this.wcaglabelledBy||this.labelId,"aria-describedby":this.wcagDescribedBy||this.contentId,role:this.role},e("div",{class:d.inner},e("div",{class:d.header},this.h.hasSlot("icon")&&e("div",{class:d.icon},e("slot",{name:"icon"})),this.label&&e(o,{class:d.title,id:this.labelId},this.label),e("gov-button",{class:d.close,variant:"primary",wcagLabel:this.wcagCloseLabel,wcagLabelledBy:this.wcagCloseLabelledBy,type:"base","on-gov-click":this.onCloseHandler.bind(this)},e("gov-icon",{name:"x-lg"}))),e("div",{class:d.content,id:this.contentId},e("slot",null)))),e("gov-backdrop",{visible:this.modalVisible,"wcag-label":this.wcagCloseLabel,"wcag-labelled-by":this.wcagCloseLabelledBy,"on-gov-click":this.onCloseHandler.bind(this)}))}onCloseHandler(o){o.stopPropagation();this.hideModal();this.govClose.emit(o)}async show(){this.showModal()}async hide(){this.hideModal()}async validateWcag(){s(this.wcaglabelledBy,"aria-labelledby",d.root);s(this.wcagDescribedBy,"aria-describedby",d.root)}get host(){return i(this)}static get watchers(){return{labelTag:["validateLabelTag"],open:["watchOpen"]}}};v.style=h;export{v as gov_modal};
2
+ //# sourceMappingURL=p-0272ffa0.entry.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../packages/core/src/components/gov-modal/gov-modal.scss?tag=gov-modal","../../../packages/core/src/components/gov-modal/gov-modal.tsx"],"names":["govModalCss","GovModal","[object Object]","hostRef","this","h","govHost","host","labelId","createID","contentId","newValue","validTags","includes","govErrorLog","ModalClass","root","modalVisible","document","body","classList","add","bodyFix","remove","showModal","hideModal","open","canValidateWcagOnRender","delay","validateWcag","LabelTag","labelTag","Host","class","classes","dialog","hidden","tabindex","aria-modal","aria-hidden","toBoolAttr","aria-labelledby","wcaglabelledBy","aria-describedby","wcagDescribedBy","role","inner","header","hasSlot","icon","name","label","title","id","close","variant","wcagLabel","wcagCloseLabel","wcagLabelledBy","wcagCloseLabelledBy","type","on-gov-click","onCloseHandler","bind","content","visible","wcag-label","wcag-labelled-by","e","stopPropagation","govClose","emit","validateWcagRef"],"mappings":"mUAAA,MAAMA,EAAc,qrFCePC,EAAQ,MAKpBC,YAAAC,2DAWe,qCAQqB,uBAI0B,qJAsBtC,MA5CvBC,KAAKC,EAAIC,EAAQF,KAAKG,MACtBH,KAAKI,QAAUC,EAAS,iBACxBL,KAAKM,UAAYD,EAAS,mBA6C3BP,iBAAiBS,GAChB,MAAMC,EAAY,CAAC,KAAM,KAAM,KAAM,KAAM,KAAM,MACjD,GAAID,EAAU,CACb,IAAKC,EAAUC,SAASF,GAAW,CAClCG,EAAY,IAAIC,EAAWC,cAAcL,uBAM5CT,UAAUS,GACTP,KAAKa,aAAeN,EAGbT,YACPE,KAAKa,aAAe,KACpBC,SAASC,KAAKC,UAAUC,IAAIN,EAAWO,SAGhCpB,YACPE,KAAKa,aAAe,MACpBC,SAASC,KAAKC,UAAUG,OAAOR,EAAWO,SAG3CpB,4BACC,GAAIE,KAAKa,aAAc,CACtBb,KAAKoB,gBACC,CACNpB,KAAKqB,aAIPvB,2BACCE,KAAKa,aAAeb,KAAKsB,KACzB,GAAIC,IAA2B,OACxBC,EAAM,WACNxB,KAAKyB,gBAIb3B,SACC,MAAM4B,EAAW1B,KAAK2B,SACtB,OACC1B,EAAC2B,EAAI,CAACC,MAAO7B,KAAKC,EAAE6B,QAAQnB,EAAWC,MAAOU,KAAMtB,KAAKa,cACxDZ,EAAA,SAAA,CACC4B,MAAOlB,EAAWoB,OAClBC,QAAShC,KAAKa,aACdoB,SAAS,KACTX,KAAMtB,KAAKa,aAAYqB,aACZ,OAAMC,cACJC,GAAYpC,KAAKa,cAAawB,kBAC1BrC,KAAKsC,gBAAkBtC,KAAKI,QAAOmC,mBAClCvC,KAAKwC,iBAAmBxC,KAAKM,UAC/CmC,KAAMzC,KAAKyC,MAEXxC,EAAA,MAAA,CAAK4B,MAAOlB,EAAW+B,OACtBzC,EAAA,MAAA,CAAK4B,MAAOlB,EAAWgC,QACrB3C,KAAKC,EAAE2C,QAAQ,SACf3C,EAAA,MAAA,CAAK4B,MAAOlB,EAAWkC,MACtB5C,EAAA,OAAA,CAAM6C,KAAK,UAGZ9C,KAAK+C,OACL9C,EAACyB,EAAQ,CAACG,MAAOlB,EAAWqC,MAAOC,GAAIjD,KAAKI,SAC1CJ,KAAK+C,OAGR9C,EAAA,aAAA,CACC4B,MAAOlB,EAAWuC,MAClBC,QAAQ,UACRC,UAAWpD,KAAKqD,eAChBC,eAAgBtD,KAAKuD,oBACrBC,KAAK,OAAMC,eACGzD,KAAK0D,eAAeC,KAAK3D,OAEvCC,EAAA,WAAA,CAAU6C,KAAK,WAGjB7C,EAAA,MAAA,CAAK4B,MAAOlB,EAAWiD,QAASX,GAAIjD,KAAKM,WACxCL,EAAA,OAAA,SAKHA,EAAA,eAAA,CACC4D,QAAS7D,KAAKa,aAAYiD,aACd9D,KAAKqD,eAAcU,mBACb/D,KAAKuD,oBAAmBE,eAC5BzD,KAAK0D,eAAeC,KAAK3D,SAMnCF,eAAekE,GACtBA,EAAEC,kBACFjE,KAAKqB,YACLrB,KAAKkE,SAASC,KAAKH,GAOpBlE,aACCE,KAAKoB,YAONtB,aACCE,KAAKqB,YAONvB,qBACCsE,EAAgBpE,KAAKsC,eAAgB,kBAAmB3B,EAAWC,MACnEwD,EAAgBpE,KAAKwC,gBAAiB,mBAAoB7B,EAAWC","sourcesContent":["/*\n * Modal\n */\n\n$class: \".gov-modal\";\n\n#{$class} {\n\tdisplay: none;\n\t&__dialog {\n\t\t@include z-index(\"modal\", 1);\n\t\tposition: fixed;\n\t\ttop: 50%;\n\t\tleft: 50%;\n\t\tdisplay: flex;\n\t\tjustify-content: center;\n\t\talign-items: center;\n\t\twidth: 100%;\n\t\tmax-width: $modal-max-width;\n\t\theight: 100%;\n\t\tpadding: rem-calc(8);\n\t\tborder: none;\n\t\tbackground: transparent;\n\t\ttransform: translate(-50%, -50%);\n\t\tpointer-events: none;\n\t}\n\t&__inner {\n\t\tposition: relative;\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\twidth: 100%;\n\t\tmax-height: 100%;\n\t\tborder-radius: $border-radius;\n\t\tbackground: $modal-bg;\n\t\toverflow: hidden;\n\t\tpointer-events: auto;\n\t\tbox-shadow: get($shadow-l, $shadows);\n\t}\n\t&__header {\n\t\tdisplay: flex;\n\t\tgap: rem-calc(16);\n\t\talign-items: flex-start;\n\t\tpadding: rem-calc(24 16);\n\t\tborder-bottom: $modal-border;\n\t}\n\t&__icon {\n\t\tflex: 0 0 auto;\n\t\tpadding-top: calc(((var(--gov-text-#{$font-size-3xl}-font-size) * 1.5) - rem-calc(24)) / 2);\n\t\t& > * {\n\t\t\twidth: rem-calc(24);\n\t\t\theight: rem-calc(24);\n\t\t}\n\t}\n\t&__title {\n\t\t@include typography($font-size-3xl);\n\t\tmargin: 0;\n\t}\n\t&__close {\n\t\tflex: 0 0 auto;\n\t\tmargin-left: auto;\n\t\tpadding-top: calc(((var(--gov-text-#{$font-size-3xl}-font-size) * 1.5) - rem-calc(32)) / 2);\n\t}\n\t&__content {\n\t\t@include reset-last-margin();\n\t\theight: 100%;\n\t\tpadding: rem-calc(24 16);\n\t\tcolor: $modal-text-color;\n\t\toverflow: auto;\n\t}\n\t&__actions {\n\t\tdisplay: flex;\n\t\tgap: rem-calc(8 16);\n\t\tflex-wrap: wrap;\n\t\tjustify-content: flex-end;\n\t\tpadding: rem-calc(24 16);\n\t\tborder-top: $modal-border;\n\t}\n\n\t// STATES\n\t&__dialog:focus &__inner {\n\t\toutline: $outline;\n\t}\n\t@include parameter(\"open\") {\n\t\tdisplay: block;\n\t}\n\n\t// MQ\n\t@include mq($from: sm) {\n\t\t&__dialog {\n\t\t\tmax-width: calc($modal-max-width + 2 * rem-calc(24));\n\t\t\tpadding: rem-calc(24);\n\t\t\t&:focus {\n\t\t\t\toutline-offset: rem-calc(-24);\n\t\t\t}\n\t\t}\n\t\t&__inner {\n\t\t\tbox-shadow: get($shadow-xl, $shadows);\n\t\t}\n\n\t\t// VARIANTS\n\t\t&--prompt &__dialog {\n\t\t\tmax-width: calc($modal-prompt-max-width + 2 * rem-calc(24));\n\t\t}\n\t}\n\t@include mq($from: md) {\n\t\t&__header {\n\t\t\tgap: rem-calc(20);\n\t\t\tpadding: rem-calc(32 40 32 48);\n\t\t}\n\t\t&__close {\n\t\t\tpadding-top: calc(((var(--gov-text-#{$font-size-3xl}-font-size) * 1.5) - rem-calc(40)) / 2);\n\t\t}\n\t\t&__content {\n\t\t\tpadding: rem-calc(32 48);\n\t\t}\n\n\t\t// VARIANTS\n\t\t&--prompt {\n\t\t\t#{$class} {\n\t\t\t\t&__header,\n\t\t\t\t&__content,\n\t\t\t\t&__actions {\n\t\t\t\t\tpadding: rem-calc(24);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n","import { Component, Event, Element, EventEmitter, h, Host, Method, Prop, Watch, State } from \"@stencil/core\"\nimport { createID } from \"../../utils/string.utils\"\nimport { validateWcagRef } from \"../../helpers/Validate/wcag\"\nimport { ModalClass } from \"./constants\"\nimport { canValidateWcagOnRender } from \"../../helpers/Dom/win\"\nimport { delay } from \"../../utils/utils\"\nimport { toBoolAttr } from \"../../helpers/Dom/template\"\nimport { govHost } from \"../../helpers/Dom/template\"\nimport { GovHost } from \"../../helpers/Dom/template.types\"\nimport { govErrorLog } from \"../../helpers/Log/gov.log\"\n\n@Component({\n\ttag: \"gov-modal\",\n\tstyleUrl: \"gov-modal.scss\",\n})\nexport class GovModal {\n\tprivate h: GovHost\n\tprivate readonly labelId: string\n\tprivate readonly contentId: string\n\n\tconstructor() {\n\t\tthis.h = govHost(this.host)\n\t\tthis.labelId = createID(\"GovModalLabel\")\n\t\tthis.contentId = createID(\"GovModalContent\")\n\t}\n\n\t@Element() host: HTMLGovModalElement\n\n\t/**\n\t * Attribute for modal window display\n\t */\n\t@Prop() open = false\n\t/**\n\t * Title of modal window\n\t */\n\t@Prop() label: string\n\t/**\n\t * Role of modal\n\t */\n\t@Prop({ attribute: \"role\" }) role = \"dialog\"\n\t/**\n\t * Used to change the HMTL tag in the modal label for correct semantic structure\n\t */\n\t@Prop({ attribute: \"label-tag\" }) readonly labelTag: string = \"h2\"\n\t/**\n\t * String of id's that indicate alternative labels elements\n\t */\n\t@Prop({ attribute: \"wcag-labelled-by\" }) wcaglabelledBy: string\n\t/**\n\t * Indicates the id of a component that describes the modal.\n\t */\n\t@Prop({ attribute: \"wcag-described-by\" }) wcagDescribedBy: string\n\t/**\n\t * Adds accessible label for the modal close button that is only shown for screen readers.\n\t */\n\t@Prop({ attribute: \"wcag-close-label\" }) wcagCloseLabel: string\n\t/**\n\t * A string of identifiers that indicate alternative label elements for closing the modal window\n\t */\n\t@Prop({ attribute: \"wcag-close-labelled-by\" }) wcagCloseLabelledBy: string\n\t/**\n\t * Emitted when modal window closes.\n\t */\n\t@Event({ eventName: \"gov-close\" }) govClose: EventEmitter<PointerEvent>\n\n\t@State() modalVisible = false\n\n\t@Watch(\"labelTag\")\n\tvalidateLabelTag(newValue: string): void {\n\t\tconst validTags = [\"h1\", \"h2\", \"h3\", \"h4\", \"h5\", \"h6\"]\n\t\tif (newValue) {\n\t\t\tif (!validTags.includes(newValue)) {\n\t\t\t\tgovErrorLog(`[${ModalClass.root}]: Tag ${newValue} is not allowed.`)\n\t\t\t}\n\t\t}\n\t}\n\n\t@Watch(\"open\")\n\twatchOpen(newValue: boolean): void {\n\t\tthis.modalVisible = newValue\n\t}\n\n\tprivate showModal() {\n\t\tthis.modalVisible = true\n\t\tdocument.body.classList.add(ModalClass.bodyFix)\n\t}\n\n\tprivate hideModal() {\n\t\tthis.modalVisible = false\n\t\tdocument.body.classList.remove(ModalClass.bodyFix)\n\t}\n\n\tasync componentWillRender() {\n\t\tif (this.modalVisible) {\n\t\t\tthis.showModal()\n\t\t} else {\n\t\t\tthis.hideModal()\n\t\t}\n\t}\n\n\tasync componentDidRender() {\n\t\tthis.modalVisible = this.open\n\t\tif (canValidateWcagOnRender()) {\n\t\t\tawait delay(500)\n\t\t\tawait this.validateWcag()\n\t\t}\n\t}\n\n\trender() {\n\t\tconst LabelTag = this.labelTag\n\t\treturn (\n\t\t\t<Host class={this.h.classes(ModalClass.root)} open={this.modalVisible}>\n\t\t\t\t<dialog\n\t\t\t\t\tclass={ModalClass.dialog}\n\t\t\t\t\thidden={!this.modalVisible}\n\t\t\t\t\ttabindex=\"-1\"\n\t\t\t\t\topen={this.modalVisible}\n\t\t\t\t\taria-modal=\"true\"\n\t\t\t\t\taria-hidden={toBoolAttr(!this.modalVisible)}\n\t\t\t\t\taria-labelledby={this.wcaglabelledBy || this.labelId}\n\t\t\t\t\taria-describedby={this.wcagDescribedBy || this.contentId}\n\t\t\t\t\trole={this.role}\n\t\t\t\t>\n\t\t\t\t\t<div class={ModalClass.inner}>\n\t\t\t\t\t\t<div class={ModalClass.header}>\n\t\t\t\t\t\t\t{this.h.hasSlot(\"icon\") && (\n\t\t\t\t\t\t\t\t<div class={ModalClass.icon}>\n\t\t\t\t\t\t\t\t\t<slot name=\"icon\" />\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{this.label && (\n\t\t\t\t\t\t\t\t<LabelTag class={ModalClass.title} id={this.labelId}>\n\t\t\t\t\t\t\t\t\t{this.label}\n\t\t\t\t\t\t\t\t</LabelTag>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t<gov-button\n\t\t\t\t\t\t\t\tclass={ModalClass.close}\n\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\twcagLabel={this.wcagCloseLabel}\n\t\t\t\t\t\t\t\twcagLabelledBy={this.wcagCloseLabelledBy}\n\t\t\t\t\t\t\t\ttype=\"base\"\n\t\t\t\t\t\t\t\ton-gov-click={this.onCloseHandler.bind(this)}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<gov-icon name=\"x-lg\" />\n\t\t\t\t\t\t\t</gov-button>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div class={ModalClass.content} id={this.contentId}>\n\t\t\t\t\t\t\t<slot />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</dialog>\n\n\t\t\t\t<gov-backdrop\n\t\t\t\t\tvisible={this.modalVisible}\n\t\t\t\t\twcag-label={this.wcagCloseLabel}\n\t\t\t\t\twcag-labelled-by={this.wcagCloseLabelledBy}\n\t\t\t\t\ton-gov-click={this.onCloseHandler.bind(this)}\n\t\t\t\t/>\n\t\t\t</Host>\n\t\t)\n\t}\n\n\tprivate onCloseHandler(e: PointerEvent) {\n\t\te.stopPropagation()\n\t\tthis.hideModal()\n\t\tthis.govClose.emit(e)\n\t}\n\n\t/**\n\t * Showing the modal\n\t */\n\t@Method()\n\tasync show(): Promise<void> {\n\t\tthis.showModal()\n\t}\n\n\t/**\n\t * Hidding the modal\n\t */\n\t@Method()\n\tasync hide(): Promise<void> {\n\t\tthis.hideModal()\n\t}\n\n\t/**\n\t * Validate the WCAG attributes of the component\n\t */\n\t@Method()\n\tasync validateWcag(): Promise<void> {\n\t\tvalidateWcagRef(this.wcaglabelledBy, \"aria-labelledby\", ModalClass.root)\n\t\tvalidateWcagRef(this.wcagDescribedBy, \"aria-describedby\", ModalClass.root)\n\t}\n}\n"]}
1
+ {"version":3,"sources":["../../../packages/core/src/components/gov-modal/gov-modal.scss?tag=gov-modal","../../../packages/core/src/components/gov-modal/gov-modal.tsx"],"names":["govModalCss","GovModal","[object Object]","hostRef","this","h","govHost","host","labelId","createID","contentId","newValue","validTags","includes","govErrorLog","ModalClass","root","modalVisible","document","body","classList","add","bodyFix","remove","showModal","hideModal","open","canValidateWcagOnRender","delay","validateWcag","LabelTag","labelTag","Host","class","classes","dialog","hidden","tabindex","aria-modal","aria-hidden","toBoolAttr","aria-labelledby","wcaglabelledBy","aria-describedby","wcagDescribedBy","role","inner","header","hasSlot","icon","name","label","title","id","close","variant","wcagLabel","wcagCloseLabel","wcagLabelledBy","wcagCloseLabelledBy","type","on-gov-click","onCloseHandler","bind","content","visible","wcag-label","wcag-labelled-by","e","stopPropagation","govClose","emit","validateWcagRef"],"mappings":"mUAAA,MAAMA,EAAc,s1FCePC,EAAQ,MAKpBC,YAAAC,2DAWe,qCAQqB,uBAI0B,qJAsBtC,MA5CvBC,KAAKC,EAAIC,EAAQF,KAAKG,MACtBH,KAAKI,QAAUC,EAAS,iBACxBL,KAAKM,UAAYD,EAAS,mBA6C3BP,iBAAiBS,GAChB,MAAMC,EAAY,CAAC,KAAM,KAAM,KAAM,KAAM,KAAM,MACjD,GAAID,EAAU,CACb,IAAKC,EAAUC,SAASF,GAAW,CAClCG,EAAY,IAAIC,EAAWC,cAAcL,uBAM5CT,UAAUS,GACTP,KAAKa,aAAeN,EAGbT,YACPE,KAAKa,aAAe,KACpBC,SAASC,KAAKC,UAAUC,IAAIN,EAAWO,SAGhCpB,YACPE,KAAKa,aAAe,MACpBC,SAASC,KAAKC,UAAUG,OAAOR,EAAWO,SAG3CpB,4BACC,GAAIE,KAAKa,aAAc,CACtBb,KAAKoB,gBACC,CACNpB,KAAKqB,aAIPvB,2BACCE,KAAKa,aAAeb,KAAKsB,KACzB,GAAIC,IAA2B,OACxBC,EAAM,WACNxB,KAAKyB,gBAIb3B,SACC,MAAM4B,EAAW1B,KAAK2B,SACtB,OACC1B,EAAC2B,EAAI,CAACC,MAAO7B,KAAKC,EAAE6B,QAAQnB,EAAWC,MAAOU,KAAMtB,KAAKa,cACxDZ,EAAA,SAAA,CACC4B,MAAOlB,EAAWoB,OAClBC,QAAShC,KAAKa,aACdoB,SAAS,KACTX,KAAMtB,KAAKa,aAAYqB,aACZ,OAAMC,cACJC,GAAYpC,KAAKa,cAAawB,kBAC1BrC,KAAKsC,gBAAkBtC,KAAKI,QAAOmC,mBAClCvC,KAAKwC,iBAAmBxC,KAAKM,UAC/CmC,KAAMzC,KAAKyC,MAEXxC,EAAA,MAAA,CAAK4B,MAAOlB,EAAW+B,OACtBzC,EAAA,MAAA,CAAK4B,MAAOlB,EAAWgC,QACrB3C,KAAKC,EAAE2C,QAAQ,SACf3C,EAAA,MAAA,CAAK4B,MAAOlB,EAAWkC,MACtB5C,EAAA,OAAA,CAAM6C,KAAK,UAGZ9C,KAAK+C,OACL9C,EAACyB,EAAQ,CAACG,MAAOlB,EAAWqC,MAAOC,GAAIjD,KAAKI,SAC1CJ,KAAK+C,OAGR9C,EAAA,aAAA,CACC4B,MAAOlB,EAAWuC,MAClBC,QAAQ,UACRC,UAAWpD,KAAKqD,eAChBC,eAAgBtD,KAAKuD,oBACrBC,KAAK,OAAMC,eACGzD,KAAK0D,eAAeC,KAAK3D,OAEvCC,EAAA,WAAA,CAAU6C,KAAK,WAGjB7C,EAAA,MAAA,CAAK4B,MAAOlB,EAAWiD,QAASX,GAAIjD,KAAKM,WACxCL,EAAA,OAAA,SAKHA,EAAA,eAAA,CACC4D,QAAS7D,KAAKa,aAAYiD,aACd9D,KAAKqD,eAAcU,mBACb/D,KAAKuD,oBAAmBE,eAC5BzD,KAAK0D,eAAeC,KAAK3D,SAMnCF,eAAekE,GACtBA,EAAEC,kBACFjE,KAAKqB,YACLrB,KAAKkE,SAASC,KAAKH,GAOpBlE,aACCE,KAAKoB,YAONtB,aACCE,KAAKqB,YAONvB,qBACCsE,EAAgBpE,KAAKsC,eAAgB,kBAAmB3B,EAAWC,MACnEwD,EAAgBpE,KAAKwC,gBAAiB,mBAAoB7B,EAAWC","sourcesContent":["/*\n * Modal\n */\n\n$class: \".gov-modal\";\n\n#{$class} {\n\tdisplay: none;\n\t&__dialog {\n\t\t@include z-index(\"modal\", 1);\n\t\tposition: fixed;\n\t\ttop: 50%;\n\t\tleft: 50%;\n\t\tdisplay: flex;\n\t\tjustify-content: center;\n\t\talign-items: center;\n\t\twidth: 100%;\n\t\tmax-width: $modal-max-width;\n\t\theight: 100%;\n\t\tpadding: rem-calc(8);\n\t\tborder: none;\n\t\tbackground: transparent;\n\t\ttransform: translate(-50%, -50%);\n\t\tpointer-events: none;\n\t}\n\t&__inner {\n\t\tposition: relative;\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\twidth: 100%;\n\t\tmax-height: 100%;\n\t\tborder-radius: $border-radius;\n\t\tbackground: $modal-bg;\n\t\toverflow: hidden;\n\t\tpointer-events: auto;\n\t\tbox-shadow: get($shadow-l, $shadows);\n\t}\n\t&__header {\n\t\tdisplay: flex;\n\t\tgap: rem-calc(16);\n\t\talign-items: flex-start;\n\t\tpadding: rem-calc(24 16);\n\t\tborder-bottom: $modal-border;\n\t}\n\t&__icon {\n\t\tflex: 0 0 auto;\n\t\tpadding-top: calc(((var(--gov-text-#{$font-size-3xl}-font-size) * 1.5) - rem-calc(24)) / 2);\n\t\t& > * {\n\t\t\twidth: rem-calc(24);\n\t\t\theight: rem-calc(24);\n\t\t}\n\t}\n\t&__title {\n\t\t@include typography($font-size-3xl);\n\t\tmargin: 0;\n\t}\n\t&__close {\n\t\tflex: 0 0 auto;\n\t\tmargin-left: auto;\n\t\tpadding-top: calc(((var(--gov-text-#{$font-size-3xl}-font-size) * 1.5) - rem-calc(32)) / 2);\n\t}\n\t&__content {\n\t\t@include reset-last-margin();\n\t\theight: 100%;\n\t\tpadding: rem-calc(24 16);\n\t\tcolor: $modal-text-color;\n\t\toverflow: auto;\n\t}\n\t&__actions {\n\t\tdisplay: flex;\n\t\tgap: rem-calc(8 16);\n\t\tflex-wrap: wrap;\n\t\tjustify-content: flex-end;\n\t\tpadding: rem-calc(24 16);\n\t\tborder-top: $modal-border;\n\t}\n\n\t// STATES\n\t&__dialog:focus &__inner {\n\t\toutline: $outline;\n\t}\n\t@include parameter(\"open\") {\n\t\tdisplay: block;\n\t}\n\n\t// MQ\n\t@include mq($from: sm) {\n\t\t&__dialog {\n\t\t\tmax-width: calc($modal-max-width + 2 * rem-calc(24));\n\t\t\tpadding: rem-calc(24);\n\t\t\t&:focus {\n\t\t\t\toutline-offset: rem-calc(-24);\n\t\t\t}\n\t\t}\n\t\t&__inner {\n\t\t\tbox-shadow: get($shadow-xl, $shadows);\n\t\t}\n\n\t\t// VARIANTS\n\t\t&--prompt &__dialog {\n\t\t\tmax-width: calc($modal-prompt-max-width + 2 * rem-calc(24));\n\t\t}\n\t}\n\t@include mq($from: md) {\n\t\t&__header {\n\t\t\tgap: rem-calc(20);\n\t\t\tpadding: rem-calc(32 40 32 48);\n\t\t}\n\t\t&__close {\n\t\t\tpadding-top: calc(((var(--gov-text-#{$font-size-3xl}-font-size) * 1.5) - rem-calc(40)) / 2);\n\t\t}\n\t\t&__content {\n\t\t\tpadding: rem-calc(32 48);\n\t\t}\n\n\t\t// VARIANTS\n\t\t&--prompt {\n\t\t\t#{$class} {\n\t\t\t\t&__header,\n\t\t\t\t&__content,\n\t\t\t\t&__actions {\n\t\t\t\t\tpadding: rem-calc(24);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n","import { Component, Event, Element, EventEmitter, h, Host, Method, Prop, Watch, State } from \"@stencil/core\"\nimport { createID } from \"../../utils/string.utils\"\nimport { validateWcagRef } from \"../../helpers/Validate/wcag\"\nimport { ModalClass } from \"./constants\"\nimport { canValidateWcagOnRender } from \"../../helpers/Dom/win\"\nimport { delay } from \"../../utils/utils\"\nimport { toBoolAttr } from \"../../helpers/Dom/template\"\nimport { govHost } from \"../../helpers/Dom/template\"\nimport { GovHost } from \"../../helpers/Dom/template.types\"\nimport { govErrorLog } from \"../../helpers/Log/gov.log\"\n\n@Component({\n\ttag: \"gov-modal\",\n\tstyleUrl: \"gov-modal.scss\",\n})\nexport class GovModal {\n\tprivate h: GovHost\n\tprivate readonly labelId: string\n\tprivate readonly contentId: string\n\n\tconstructor() {\n\t\tthis.h = govHost(this.host)\n\t\tthis.labelId = createID(\"GovModalLabel\")\n\t\tthis.contentId = createID(\"GovModalContent\")\n\t}\n\n\t@Element() host: HTMLGovModalElement\n\n\t/**\n\t * Attribute for modal window display\n\t */\n\t@Prop() open = false\n\t/**\n\t * Title of modal window\n\t */\n\t@Prop() label: string\n\t/**\n\t * Role of modal\n\t */\n\t@Prop({ attribute: \"role\" }) role = \"dialog\"\n\t/**\n\t * Used to change the HMTL tag in the modal label for correct semantic structure\n\t */\n\t@Prop({ attribute: \"label-tag\" }) readonly labelTag: string = \"h2\"\n\t/**\n\t * String of id's that indicate alternative labels elements\n\t */\n\t@Prop({ attribute: \"wcag-labelled-by\" }) wcaglabelledBy: string\n\t/**\n\t * Indicates the id of a component that describes the modal.\n\t */\n\t@Prop({ attribute: \"wcag-described-by\" }) wcagDescribedBy: string\n\t/**\n\t * Adds accessible label for the modal close button that is only shown for screen readers.\n\t */\n\t@Prop({ attribute: \"wcag-close-label\" }) wcagCloseLabel: string\n\t/**\n\t * A string of identifiers that indicate alternative label elements for closing the modal window\n\t */\n\t@Prop({ attribute: \"wcag-close-labelled-by\" }) wcagCloseLabelledBy: string\n\t/**\n\t * Emitted when modal window closes.\n\t */\n\t@Event({ eventName: \"gov-close\" }) govClose: EventEmitter<PointerEvent>\n\n\t@State() modalVisible = false\n\n\t@Watch(\"labelTag\")\n\tvalidateLabelTag(newValue: string): void {\n\t\tconst validTags = [\"h1\", \"h2\", \"h3\", \"h4\", \"h5\", \"h6\"]\n\t\tif (newValue) {\n\t\t\tif (!validTags.includes(newValue)) {\n\t\t\t\tgovErrorLog(`[${ModalClass.root}]: Tag ${newValue} is not allowed.`)\n\t\t\t}\n\t\t}\n\t}\n\n\t@Watch(\"open\")\n\twatchOpen(newValue: boolean): void {\n\t\tthis.modalVisible = newValue\n\t}\n\n\tprivate showModal() {\n\t\tthis.modalVisible = true\n\t\tdocument.body.classList.add(ModalClass.bodyFix)\n\t}\n\n\tprivate hideModal() {\n\t\tthis.modalVisible = false\n\t\tdocument.body.classList.remove(ModalClass.bodyFix)\n\t}\n\n\tasync componentWillRender() {\n\t\tif (this.modalVisible) {\n\t\t\tthis.showModal()\n\t\t} else {\n\t\t\tthis.hideModal()\n\t\t}\n\t}\n\n\tasync componentDidRender() {\n\t\tthis.modalVisible = this.open\n\t\tif (canValidateWcagOnRender()) {\n\t\t\tawait delay(500)\n\t\t\tawait this.validateWcag()\n\t\t}\n\t}\n\n\trender() {\n\t\tconst LabelTag = this.labelTag\n\t\treturn (\n\t\t\t<Host class={this.h.classes(ModalClass.root)} open={this.modalVisible}>\n\t\t\t\t<dialog\n\t\t\t\t\tclass={ModalClass.dialog}\n\t\t\t\t\thidden={!this.modalVisible}\n\t\t\t\t\ttabindex=\"-1\"\n\t\t\t\t\topen={this.modalVisible}\n\t\t\t\t\taria-modal=\"true\"\n\t\t\t\t\taria-hidden={toBoolAttr(!this.modalVisible)}\n\t\t\t\t\taria-labelledby={this.wcaglabelledBy || this.labelId}\n\t\t\t\t\taria-describedby={this.wcagDescribedBy || this.contentId}\n\t\t\t\t\trole={this.role}\n\t\t\t\t>\n\t\t\t\t\t<div class={ModalClass.inner}>\n\t\t\t\t\t\t<div class={ModalClass.header}>\n\t\t\t\t\t\t\t{this.h.hasSlot(\"icon\") && (\n\t\t\t\t\t\t\t\t<div class={ModalClass.icon}>\n\t\t\t\t\t\t\t\t\t<slot name=\"icon\" />\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{this.label && (\n\t\t\t\t\t\t\t\t<LabelTag class={ModalClass.title} id={this.labelId}>\n\t\t\t\t\t\t\t\t\t{this.label}\n\t\t\t\t\t\t\t\t</LabelTag>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t<gov-button\n\t\t\t\t\t\t\t\tclass={ModalClass.close}\n\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\twcagLabel={this.wcagCloseLabel}\n\t\t\t\t\t\t\t\twcagLabelledBy={this.wcagCloseLabelledBy}\n\t\t\t\t\t\t\t\ttype=\"base\"\n\t\t\t\t\t\t\t\ton-gov-click={this.onCloseHandler.bind(this)}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<gov-icon name=\"x-lg\" />\n\t\t\t\t\t\t\t</gov-button>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div class={ModalClass.content} id={this.contentId}>\n\t\t\t\t\t\t\t<slot />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</dialog>\n\n\t\t\t\t<gov-backdrop\n\t\t\t\t\tvisible={this.modalVisible}\n\t\t\t\t\twcag-label={this.wcagCloseLabel}\n\t\t\t\t\twcag-labelled-by={this.wcagCloseLabelledBy}\n\t\t\t\t\ton-gov-click={this.onCloseHandler.bind(this)}\n\t\t\t\t/>\n\t\t\t</Host>\n\t\t)\n\t}\n\n\tprivate onCloseHandler(e: PointerEvent) {\n\t\te.stopPropagation()\n\t\tthis.hideModal()\n\t\tthis.govClose.emit(e)\n\t}\n\n\t/**\n\t * Showing the modal\n\t */\n\t@Method()\n\tasync show(): Promise<void> {\n\t\tthis.showModal()\n\t}\n\n\t/**\n\t * Hidding the modal\n\t */\n\t@Method()\n\tasync hide(): Promise<void> {\n\t\tthis.hideModal()\n\t}\n\n\t/**\n\t * Validate the WCAG attributes of the component\n\t */\n\t@Method()\n\tasync validateWcag(): Promise<void> {\n\t\tvalidateWcagRef(this.wcaglabelledBy, \"aria-labelledby\", ModalClass.root)\n\t\tvalidateWcagRef(this.wcagDescribedBy, \"aria-describedby\", ModalClass.root)\n\t}\n}\n"]}
@@ -0,0 +1,2 @@
1
+ import{r as o,c as t,h as r,H as a,g as s}from"./p-4af5e4f4.js";import{v as i}from"./p-26acf964.js";import{V as e,T as n}from"./p-ff7365ae.js";import{p as v}from"./p-03990da5.js";import{g as c}from"./p-3f37ddb6.js";import{c as g}from"./p-24636c53.js";import"./p-561fa17b.js";const l=v(e,["SUCCESS","WARNING","ERROR","SECONDARY","PRIMARY"]);v(n,["CLASSIC","SOLID"]);const d={root:"gov-toast",hidden:"gov-toast--hidden",icon:"gov-toast__icon",content:"gov-toast__content",close:"gov-toast__close",timer:"gov-toast__timer"};const m=".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-toast{position:relative;display:flex;gap:1rem;flex-direction:column;padding:0.75rem 1rem;border-left:0.25rem solid transparent;background:var(--gov-toast-message-bg, var(--gov-color-neutral-white));z-index:201;position:relative;position:fixed;max-width:23.4375rem;padding-right:3.125rem;opacity:1;transition:opacity 300ms ease-in-out}.gov-toast__icon{flex:0 0 1.25rem;width:1.25rem;height:1.25rem}.gov-toast__content{flex:1 1 auto}.gov-toast__content>*:last-child{margin-bottom:0}.gov-toast__content p{font-weight:var(--gov-text-m-font-weight);font-size:var(--gov-text-m-font-size);line-height:var(--gov-text-m-line-height);letter-spacing:var(--gov-text-m-letter-spacing)}@media (min-width: 30em){.gov-toast{flex-direction:row}}.gov-toast__content{padding-right:0}.gov-toast__close{position:absolute;top:0.5rem;right:0.75rem}.gov-toast__timer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1}.gov-toast--hidden{opacity:0}.gov-toast[gravity=top i]{top:1rem}.gov-toast[gravity=bottom i]{bottom:1rem}.gov-toast[position=left i]{left:1rem}.gov-toast[position=center i]{left:50%;transform:translateX(-50%)}.gov-toast[position=right i]{right:1rem}.gov-toast[type=solid i]{border:none;border-radius:0.25rem;overflow:hidden;box-shadow:none}.gov-toast[type=solid i].is-initialized .gov-toast__timer{transform-origin:left;animation:countdown linear forwards var(--toast-duration, 0)}.gov-toast[variant=warning]{border-left-color:var(--gov-toast-warning-codecor-lor, var(--gov-color-warning))}.gov-toast[variant=warning] .gov-toast__icon{color:var(--gov-toast-warning-codecor-lor, var(--gov-color-warning))}.gov-toast[variant=warning][type=solid i]{background-color:var(--gov-toast-warning-background, var(--gov-color-warning));color:var(--gov-toast-warning-color, var(--gov-color-secondary))}.gov-toast[variant=warning][type=solid i] .gov-toast__icon{color:var(--gov-toast-warning-color, var(--gov-color-secondary))}.gov-toast[variant=warning][type=solid i] .gov-toast__timer{background-color:var(--gov-toast-warning-timer-background, rgba(var(--gov-color-warning-500-rgb), 0.3))}.gov-toast[variant=error]{border-left-color:var(--gov-toast-error-colodecor-r, var(--gov-color-error))}.gov-toast[variant=error] .gov-toast__icon{color:var(--gov-toast-error-colodecor-r, var(--gov-color-error))}.gov-toast[variant=error][type=solid i]{background-color:var(--gov-toast-error-background, var(--gov-color-error));color:var(--gov-toast-error-color, var(--gov-color-neutral-white))}.gov-toast[variant=error][type=solid i] .gov-toast__icon{color:var(--gov-toast-error-color, var(--gov-color-neutral-white))}.gov-toast[variant=error][type=solid i] .gov-toast__timer{background-color:var(--gov-toast-error-timer-background, rgba(var(--gov-color-error-500-rgb), 0.5))}.gov-toast[variant=success]{border-left-color:var(--gov-toast-success-codecor-lor, var(--gov-color-success))}.gov-toast[variant=success] .gov-toast__icon{color:var(--gov-toast-success-codecor-lor, var(--gov-color-success))}.gov-toast[variant=success][type=solid i]{background-color:var(--gov-toast-success-background, var(--gov-color-success-500));color:var(--gov-toast-success-color, var(--gov-color-neutral-white))}.gov-toast[variant=success][type=solid i] .gov-toast__icon{color:var(--gov-toast-success-color, var(--gov-color-neutral-white))}.gov-toast[variant=success][type=solid i] .gov-toast__timer{background-color:var(--gov-toast-success-timer-background, rgba(var(--gov-color-success-600-rgb), 0.5))}.gov-toast[variant=primary]{border-left-color:var(--gov-toast-primary-codecor-lor, var(--gov-color-primary))}.gov-toast[variant=primary] .gov-toast__icon{color:var(--gov-toast-primary-codecor-lor, var(--gov-color-primary))}.gov-toast[variant=primary][type=solid i]{background-color:var(--gov-toast-primary-background, var(--gov-color-primary));color:var(--gov-toast-primary-color, var(--gov-color-neutral-white))}.gov-toast[variant=primary][type=solid i] .gov-toast__icon{color:var(--gov-toast-primary-color, var(--gov-color-neutral-white))}.gov-toast[variant=primary][type=solid i] .gov-toast__timer{background-color:var(--gov-toast-primary-timer-background, rgba(var(--gov-color-primary-700-rgb), 0.5))}.gov-toast[variant=secondary]{border-left-color:var(--gov-toast-secondary-decor-color, var(--gov-color-secondary))}.gov-toast[variant=secondary] .gov-toast__icon{color:var(--gov-toast-secondary-decor-color, var(--gov-color-secondary))}.gov-toast[variant=secondary][type=solid i]{background-color:var(--gov-toast-secondary-background, var(--gov-color-secondary));color:var(--gov-toast-secondary-color, var(--gov-color-neutral-white))}.gov-toast[variant=secondary][type=solid i] .gov-toast__icon{color:var(--gov-toast-secondary-color, var(--gov-color-neutral-white))}.gov-toast[variant=secondary][type=solid i] .gov-toast__timer{background-color:var(--gov-toast-secondary-timer-background, rgba(var(--gov-color-secondary-900-rgb), 0.5))}@media (min-width: 30em){.gov-toast__content{padding-right:2rem}}";const p=class{constructor(r){o(this,r);this.govClose=t(this,"gov-close",7);this.variant="primary";this.gravity="top";this.position="right";this.type="classic";this.time=0;this.closeLabel=undefined;this.wcagCloseLabel=undefined;this.h=c(this.host);this.toastId=g("GovToast")}validateVariant(o){i(l,o,d.root)}componentWillLoad(){this.validateVariant(this.variant);this.runTimer()}componentDidLoad(){const o=document.querySelectorAll(`gov-toast[gravity="${this.gravity}"][position="${this.position}"]:not([data-toast-id="${this.toastId}"])`);if(o.length>0){Array.from(o).map((o=>o.destroy().then()))}}disconnectedCallback(){clearTimeout(this.timeout)}runTimer(){if(this.isSolid){this.host.classList.add("is-initialized")}if(this.isTimer){this.timeout=setTimeout((()=>{this.host.classList.add(d.hidden);setTimeout(this.destroy.bind(this),600)}),this.time)}}render(){return r(a,{class:this.h.classes([d.root,"gov-box-shadow--m"]),"data-toast-id":this.toastId,gravity:this.gravity,position:this.position,variant:this.variant,type:this.type,style:{"--toast-duration":this.time+"ms"}},this.h.hasSlot("icon")&&r("span",{class:d.icon},r("slot",{name:"icon"})),r("div",{class:d.content,"aria-live":"polite",role:"status"},r("slot",null)),r("div",{class:d.close},r("gov-button",{size:"s","wcag-label":this.wcagCloseLabel,variant:this.isSolid?this.variant:"secondary",inverse:this.isSolid,type:"base","on-gov-click":this.onCloseHandler.bind(this)},this.closeLabel?this.closeLabel:r("gov-icon",{name:"x-lg"}))),r("div",{class:d.timer}))}onCloseHandler(){this.destroy().then((()=>this.govClose.emit(this.toastId))).catch()}get isSolid(){return this.type==="solid"}get isTimer(){return Number.isInteger(this.time)&&this.time>0}async destroy(){clearTimeout(this.timeout);const o=document.querySelector(`[data-toast-id="${this.toastId}"]`);if(o){o.classList.add(d.hidden);if(typeof o.remove==="function"){o.remove()}}}get host(){return s(this)}static get watchers(){return{variant:["validateVariant"]}}};p.style=m;export{p as gov_toast};
2
+ //# sourceMappingURL=p-042d5b20.entry.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../packages/core/src/components/gov-toast/constants.ts","../../../packages/core/src/components/gov-toast/gov-toast.scss?tag=gov-toast","../../../packages/core/src/components/gov-toast/gov-toast.tsx"],"names":["ToastVariants","pick","Variants","Types","ToastClass","root","hidden","icon","content","close","timer","govToastCss","GovToast","[object Object]","hostRef","this","h","govHost","host","toastId","createID","newValue","validateProp","validateVariant","variant","runTimer","existedToasts","document","querySelectorAll","gravity","position","length","Array","from","map","toast","destroy","then","clearTimeout","timeout","isSolid","classList","add","isTimer","setTimeout","bind","time","Host","class","classes","data-toast-id","type","style","--toast-duration","hasSlot","name","aria-live","role","size","wcag-label","wcagCloseLabel","inverse","on-gov-click","onCloseHandler","closeLabel","govClose","emit","catch","Number","isInteger","querySelector","remove"],"mappings":"mRAIO,MAAMA,EAAgBC,EAAKC,EAAU,CAAC,UAAW,UAAW,QAAS,YAAa,YAG/DD,EAAKE,EAAO,CAAC,UAAW,UAG3C,MAAMC,EAAa,CACzBC,KAAM,YACNC,OAAQ,oBACRC,KAAM,kBACNC,QAAS,qBACTC,MAAO,mBACPC,MAAO,oBChBR,MAAMC,EAAc,4iKCYPC,EAAQ,MAKpBC,YAAAC,8DAS8C,uBAKD,oBAIY,kBAIhB,oBAIT,0DAzB/BC,KAAKC,EAAIC,EAAQF,KAAKG,MACtBH,KAAKI,QAAUC,EAAS,YAuCzBP,gBAAgBQ,GACfC,EAAatB,EAAeqB,EAAUjB,EAAWC,MAGlDQ,oBACCE,KAAKQ,gBAAgBR,KAAKS,SAC1BT,KAAKU,WAGNZ,mBACC,MAAMa,EAAgBC,SAASC,iBAAiB,sBAAsBb,KAAKc,uBAAuBd,KAAKe,kCAAkCf,KAAKI,cAC9I,GAAIO,EAAcK,OAAS,EAAG,CAC7BC,MAAMC,KAAKP,GAAeQ,KAAKC,GAA+BA,EAAMC,UAAUC,UAIhFxB,uBACCyB,aAAavB,KAAKwB,SAGX1B,WACP,GAAIE,KAAKyB,QAAS,CACjBzB,KAAKG,KAAKuB,UAAUC,IAAI,kBAEzB,GAAI3B,KAAK4B,QAAS,CACjB5B,KAAKwB,QAAUK,YAAW,KACzB7B,KAAKG,KAAKuB,UAAUC,IAAItC,EAAWE,QACnCsC,WAAW7B,KAAKqB,QAAQS,KAAK9B,MAAO,OAClCA,KAAK+B,OAIVjC,SACC,OACCG,EAAC+B,EAAI,CACJC,MAAOjC,KAAKC,EAAEiC,QAAQ,CAAC7C,EAAWC,KAAM,sBAAqB6C,gBAC9CnC,KAAKI,QACpBU,QAASd,KAAKc,QACdC,SAAUf,KAAKe,SACfN,QAAST,KAAKS,QACd2B,KAAMpC,KAAKoC,KACXC,MAAO,CAAEC,mBAAoBtC,KAAK+B,KAAO,OAExC/B,KAAKC,EAAEsC,QAAQ,SACftC,EAAA,OAAA,CAAMgC,MAAO5C,EAAWG,MACvBS,EAAA,OAAA,CAAMuC,KAAK,UAIbvC,EAAA,MAAA,CAAKgC,MAAO5C,EAAWI,QAAOgD,YAAY,SAASC,KAAK,UACvDzC,EAAA,OAAA,OAGDA,EAAA,MAAA,CAAKgC,MAAO5C,EAAWK,OACtBO,EAAA,aAAA,CACC0C,KAAK,IAAGC,aACI5C,KAAK6C,eACjBpC,QAAST,KAAKyB,QAAUzB,KAAKS,QAAU,YACvCqC,QAAS9C,KAAKyB,QACdW,KAAK,OAAMW,eACG/C,KAAKgD,eAAelB,KAAK9B,OAEtCA,KAAKiD,WAAajD,KAAKiD,WAAahD,EAAA,WAAA,CAAUuC,KAAK,WAItDvC,EAAA,MAAA,CAAKgC,MAAO5C,EAAWM,SAKlBG,iBACPE,KAAKqB,UACHC,MAAK,IAAMtB,KAAKkD,SAASC,KAAKnD,KAAKI,WACnCgD,QAGH3B,cACC,OAAOzB,KAAKoC,OAAS,QAGtBR,cACC,OAAOyB,OAAOC,UAAUtD,KAAK+B,OAAS/B,KAAK+B,KAAO,EAOnDjC,gBACCyB,aAAavB,KAAKwB,SAClB,MAAMJ,EAAQR,SAAS2C,cAAc,mBAAmBvD,KAAKI,aAC7D,GAAIgB,EAAO,CACVA,EAAMM,UAAUC,IAAItC,EAAWE,QAC/B,UAAW6B,EAAMoC,SAAW,WAAY,CACvCpC,EAAMoC","sourcesContent":["import { Variants, Types } from '../../core/constants/variants'\nimport { pick } from '../../utils/utils'\nimport { ValueOf } from '../../types/interfaces'\n\nexport const ToastVariants = pick(Variants, ['SUCCESS', 'WARNING', 'ERROR', 'SECONDARY', 'PRIMARY'])\nexport type ToastVariantType = `${ValueOf<typeof ToastVariants>}`\n\nexport const ToastTypes = pick(Types, ['CLASSIC', 'SOLID'])\nexport type ToastTypesType = `${ValueOf<typeof ToastTypes>}`\n\nexport const ToastClass = {\n\troot: 'gov-toast',\n\thidden: 'gov-toast--hidden',\n\ticon: 'gov-toast__icon',\n\tcontent: 'gov-toast__content',\n\tclose: 'gov-toast__close',\n\ttimer: 'gov-toast__timer',\n}\n","/*\n * Alert\n */\n\n@import \"./gov-toast-message-core.scss\";\n$class: \".gov-toast\";\n\n#{$class} {\n\t@include toast-message-core;\n\t@include z-index(\"toast\", 1);\n\tposition: relative;\n\tposition: fixed;\n\tmax-width: rem-calc(375);\n\tpadding-right: rem-calc(50);\n\topacity: 1;\n\ttransition: opacity 300ms ease-in-out;\n\t&__content {\n\t\tpadding-right: 0;\n\t}\n\t&__close {\n\t\tposition: absolute;\n\t\ttop: rem-calc(8);\n\t\tright: rem-calc(12);\n\t}\n\t&__timer {\n\t\tposition: absolute;\n\t\ttop: 0;\n\t\tright: 0;\n\t\tbottom: 0;\n\t\tleft: 0;\n\t\tz-index: -1;\n\t}\n\n\t// VARIANTS\n\t&--hidden {\n\t\topacity: 0;\n\t}\n\t&[gravity=\"top\" i] {\n\t\ttop: rem-calc(16);\n\t}\n\t&[gravity=\"bottom\" i] {\n\t\tbottom: rem-calc(16);\n\t}\n\t&[position=\"left\" i] {\n\t\tleft: rem-calc(16);\n\t}\n\t&[position=\"center\" i] {\n\t\tleft: 50%;\n\t\ttransform: translateX(-50%);\n\t}\n\t&[position=\"right\" i] {\n\t\tright: rem-calc(16);\n\t}\n\t&[type=\"solid\" i] {\n\t\tborder: none;\n\t\tborder-radius: rem-calc(4);\n\t\toverflow: hidden;\n\t\tbox-shadow: none;\n\t\t&.is-initialized #{$class}__timer {\n\t\t\ttransform-origin: left;\n\t\t\tanimation: countdown linear forwards var(--toast-duration, 0);\n\t\t}\n\t}\n\n\t@each $variant, $definitions in $toast-message-variants {\n\t\t&[variant=\"#{$variant}\"] {\n\t\t\tborder-left-color: get(\"decor-color\", $definitions);\n\t\t\t#{$class} {\n\t\t\t\t&__icon {\n\t\t\t\t\tcolor: get(\"decor-color\", $definitions);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t&[type=\"solid\" i] {\n\t\t\t\tbackground-color: get(\"background\", $definitions);\n\t\t\t\tcolor: get(\"color\", $definitions);\n\t\t\t\t#{$class} {\n\t\t\t\t\t&__icon {\n\t\t\t\t\t\tcolor: get(\"color\", $definitions);\n\t\t\t\t\t}\n\t\t\t\t\t&__timer {\n\t\t\t\t\t\tbackground-color: get(\"timer-background\", $definitions);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t// MQ\n\t@include mq($from: sm) {\n\t\t&__content {\n\t\t\tpadding-right: rem-calc(32);\n\t\t}\n\t}\n}\n","import { Component, Element, Event, EventEmitter, h, Host, Prop, Watch, Method } from '@stencil/core'\nimport { validateProp } from '../../helpers/Validate/props'\nimport { ToastClass, ToastTypesType, ToastVariants } from './constants'\nimport { govHost } from '../../helpers/Dom/template'\nimport { GovHost } from '../../helpers/Dom/template.types'\nimport { ToastVariantType } from './constants'\nimport { createID } from '../../utils/string.utils'\n\n@Component({\n\ttag: 'gov-toast',\n\tstyleUrl: 'gov-toast.scss',\n})\nexport class GovToast {\n\tprivate h: GovHost\n\tprivate timeout\n\tprivate readonly toastId: string\n\n\tconstructor() {\n\t\tthis.h = govHost(this.host)\n\t\tthis.toastId = createID('GovToast')\n\t}\n\n\t@Element() host: HTMLGovToastElement\n\t/**\n\t * Style variation of the toast message.\n\t */\n\t@Prop() readonly variant?: ToastVariantType = 'primary'\n\n\t/**\n\t * Toast’s gravity\n\t */\n\t@Prop() readonly gravity: 'top' | 'bottom' = 'top'\n\t/**\n\t * Toast’s position\n\t */\n\t@Prop() readonly position: 'left' | 'center' | 'right' = 'right'\n\t/**\n\t * Toast type\n\t */\n\t@Prop() readonly type?: ToastTypesType = 'classic'\n\t/**\n\t * Number of milliseconds to wait before Toast disappear\n\t */\n\t@Prop() readonly time: number = 0\n\t/**\n\t * Closing button texting instead of icons\n\t */\n\t@Prop({ attribute: 'close-label' }) readonly closeLabel: string\n\t/**\n\t * Aria label for the closing button. It is mandatory if the alert is closable\n\t */\n\t@Prop({ attribute: 'wcag-close-label' }) readonly wcagCloseLabel: string\n\t/**\n\t * Called when the close button is clicked\n\t */\n\t@Event({ eventName: 'gov-close' }) govClose: EventEmitter<string>\n\n\t@Watch('variant')\n\tvalidateVariant(newValue: string): void {\n\t\tvalidateProp(ToastVariants, newValue, ToastClass.root)\n\t}\n\n\tcomponentWillLoad(): void {\n\t\tthis.validateVariant(this.variant)\n\t\tthis.runTimer()\n\t}\n\n\tcomponentDidLoad() {\n\t\tconst existedToasts = document.querySelectorAll(`gov-toast[gravity=\"${this.gravity}\"][position=\"${this.position}\"]:not([data-toast-id=\"${this.toastId}\"])`)\n\t\tif (existedToasts.length > 0) {\n\t\t\tArray.from(existedToasts).map((toast: HTMLGovToastElement) => toast.destroy().then())\n\t\t}\n\t}\n\n\tdisconnectedCallback() {\n\t\tclearTimeout(this.timeout)\n\t}\n\n\tprivate runTimer() {\n\t\tif (this.isSolid) {\n\t\t\tthis.host.classList.add('is-initialized')\n\t\t}\n\t\tif (this.isTimer) {\n\t\t\tthis.timeout = setTimeout(() => {\n\t\t\t\tthis.host.classList.add(ToastClass.hidden)\n\t\t\t\tsetTimeout(this.destroy.bind(this), 600)\n\t\t\t}, this.time)\n\t\t}\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={this.h.classes([ToastClass.root, 'gov-box-shadow--m'])}\n\t\t\t\tdata-toast-id={this.toastId}\n\t\t\t\tgravity={this.gravity}\n\t\t\t\tposition={this.position}\n\t\t\t\tvariant={this.variant}\n\t\t\t\ttype={this.type}\n\t\t\t\tstyle={{ '--toast-duration': this.time + 'ms' }}\n\t\t\t>\n\t\t\t\t{this.h.hasSlot('icon') && (\n\t\t\t\t\t<span class={ToastClass.icon}>\n\t\t\t\t\t\t<slot name=\"icon\" />\n\t\t\t\t\t</span>\n\t\t\t\t)}\n\n\t\t\t\t<div class={ToastClass.content} aria-live=\"polite\" role=\"status\">\n\t\t\t\t\t<slot />\n\t\t\t\t</div>\n\n\t\t\t\t<div class={ToastClass.close}>\n\t\t\t\t\t<gov-button\n\t\t\t\t\t\tsize=\"s\"\n\t\t\t\t\t\twcag-label={this.wcagCloseLabel}\n\t\t\t\t\t\tvariant={this.isSolid ? this.variant : 'secondary'}\n\t\t\t\t\t\tinverse={this.isSolid}\n\t\t\t\t\t\ttype=\"base\"\n\t\t\t\t\t\ton-gov-click={this.onCloseHandler.bind(this)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{this.closeLabel ? this.closeLabel : <gov-icon name=\"x-lg\"></gov-icon>}\n\t\t\t\t\t</gov-button>\n\t\t\t\t</div>\n\n\t\t\t\t<div class={ToastClass.timer}></div>\n\t\t\t</Host>\n\t\t)\n\t}\n\n\tprivate onCloseHandler(): void {\n\t\tthis.destroy()\n\t\t\t.then(() => this.govClose.emit(this.toastId))\n\t\t\t.catch()\n\t}\n\n\tget isSolid(): boolean {\n\t\treturn this.type === 'solid'\n\t}\n\n\tget isTimer(): boolean {\n\t\treturn Number.isInteger(this.time) && this.time > 0\n\t}\n\n\t/**\n\t * Remove toast from dom\n\t */\n\t@Method()\n\tasync destroy(): Promise<void> {\n\t\tclearTimeout(this.timeout)\n\t\tconst toast = document.querySelector(`[data-toast-id=\"${this.toastId}\"]`)\n\t\tif (toast) {\n\t\t\ttoast.classList.add(ToastClass.hidden)\n\t\t\tif (typeof toast.remove === 'function') {\n\t\t\t\ttoast.remove()\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
1
+ {"version":3,"sources":["../../../packages/core/src/components/gov-toast/constants.ts","../../../packages/core/src/components/gov-toast/gov-toast.scss?tag=gov-toast","../../../packages/core/src/components/gov-toast/gov-toast.tsx"],"names":["ToastVariants","pick","Variants","Types","ToastClass","root","hidden","icon","content","close","timer","govToastCss","GovToast","[object Object]","hostRef","this","h","govHost","host","toastId","createID","newValue","validateProp","validateVariant","variant","runTimer","existedToasts","document","querySelectorAll","gravity","position","length","Array","from","map","toast","destroy","then","clearTimeout","timeout","isSolid","classList","add","isTimer","setTimeout","bind","time","Host","class","classes","data-toast-id","type","style","--toast-duration","hasSlot","name","aria-live","role","size","wcag-label","wcagCloseLabel","inverse","on-gov-click","onCloseHandler","closeLabel","govClose","emit","catch","Number","isInteger","querySelector","remove"],"mappings":"mRAIO,MAAMA,EAAgBC,EAAKC,EAAU,CAAC,UAAW,UAAW,QAAS,YAAa,YAG/DD,EAAKE,EAAO,CAAC,UAAW,UAG3C,MAAMC,EAAa,CACzBC,KAAM,YACNC,OAAQ,oBACRC,KAAM,kBACNC,QAAS,qBACTC,MAAO,mBACPC,MAAO,oBChBR,MAAMC,EAAc,6sKCYPC,EAAQ,MAKpBC,YAAAC,8DAS8C,uBAKD,oBAIY,kBAIhB,oBAIT,0DAzB/BC,KAAKC,EAAIC,EAAQF,KAAKG,MACtBH,KAAKI,QAAUC,EAAS,YAuCzBP,gBAAgBQ,GACfC,EAAatB,EAAeqB,EAAUjB,EAAWC,MAGlDQ,oBACCE,KAAKQ,gBAAgBR,KAAKS,SAC1BT,KAAKU,WAGNZ,mBACC,MAAMa,EAAgBC,SAASC,iBAAiB,sBAAsBb,KAAKc,uBAAuBd,KAAKe,kCAAkCf,KAAKI,cAC9I,GAAIO,EAAcK,OAAS,EAAG,CAC7BC,MAAMC,KAAKP,GAAeQ,KAAKC,GAA+BA,EAAMC,UAAUC,UAIhFxB,uBACCyB,aAAavB,KAAKwB,SAGX1B,WACP,GAAIE,KAAKyB,QAAS,CACjBzB,KAAKG,KAAKuB,UAAUC,IAAI,kBAEzB,GAAI3B,KAAK4B,QAAS,CACjB5B,KAAKwB,QAAUK,YAAW,KACzB7B,KAAKG,KAAKuB,UAAUC,IAAItC,EAAWE,QACnCsC,WAAW7B,KAAKqB,QAAQS,KAAK9B,MAAO,OAClCA,KAAK+B,OAIVjC,SACC,OACCG,EAAC+B,EAAI,CACJC,MAAOjC,KAAKC,EAAEiC,QAAQ,CAAC7C,EAAWC,KAAM,sBAAqB6C,gBAC9CnC,KAAKI,QACpBU,QAASd,KAAKc,QACdC,SAAUf,KAAKe,SACfN,QAAST,KAAKS,QACd2B,KAAMpC,KAAKoC,KACXC,MAAO,CAAEC,mBAAoBtC,KAAK+B,KAAO,OAExC/B,KAAKC,EAAEsC,QAAQ,SACftC,EAAA,OAAA,CAAMgC,MAAO5C,EAAWG,MACvBS,EAAA,OAAA,CAAMuC,KAAK,UAIbvC,EAAA,MAAA,CAAKgC,MAAO5C,EAAWI,QAAOgD,YAAY,SAASC,KAAK,UACvDzC,EAAA,OAAA,OAGDA,EAAA,MAAA,CAAKgC,MAAO5C,EAAWK,OACtBO,EAAA,aAAA,CACC0C,KAAK,IAAGC,aACI5C,KAAK6C,eACjBpC,QAAST,KAAKyB,QAAUzB,KAAKS,QAAU,YACvCqC,QAAS9C,KAAKyB,QACdW,KAAK,OAAMW,eACG/C,KAAKgD,eAAelB,KAAK9B,OAEtCA,KAAKiD,WAAajD,KAAKiD,WAAahD,EAAA,WAAA,CAAUuC,KAAK,WAItDvC,EAAA,MAAA,CAAKgC,MAAO5C,EAAWM,SAKlBG,iBACPE,KAAKqB,UACHC,MAAK,IAAMtB,KAAKkD,SAASC,KAAKnD,KAAKI,WACnCgD,QAGH3B,cACC,OAAOzB,KAAKoC,OAAS,QAGtBR,cACC,OAAOyB,OAAOC,UAAUtD,KAAK+B,OAAS/B,KAAK+B,KAAO,EAOnDjC,gBACCyB,aAAavB,KAAKwB,SAClB,MAAMJ,EAAQR,SAAS2C,cAAc,mBAAmBvD,KAAKI,aAC7D,GAAIgB,EAAO,CACVA,EAAMM,UAAUC,IAAItC,EAAWE,QAC/B,UAAW6B,EAAMoC,SAAW,WAAY,CACvCpC,EAAMoC","sourcesContent":["import { Variants, Types } from '../../core/constants/variants'\nimport { pick } from '../../utils/utils'\nimport { ValueOf } from '../../types/interfaces'\n\nexport const ToastVariants = pick(Variants, ['SUCCESS', 'WARNING', 'ERROR', 'SECONDARY', 'PRIMARY'])\nexport type ToastVariantType = `${ValueOf<typeof ToastVariants>}`\n\nexport const ToastTypes = pick(Types, ['CLASSIC', 'SOLID'])\nexport type ToastTypesType = `${ValueOf<typeof ToastTypes>}`\n\nexport const ToastClass = {\n\troot: 'gov-toast',\n\thidden: 'gov-toast--hidden',\n\ticon: 'gov-toast__icon',\n\tcontent: 'gov-toast__content',\n\tclose: 'gov-toast__close',\n\ttimer: 'gov-toast__timer',\n}\n","/*\n * Alert\n */\n\n@import \"./gov-toast-message-core.scss\";\n$class: \".gov-toast\";\n\n#{$class} {\n\t@include toast-message-core;\n\t@include z-index(\"toast\", 1);\n\tposition: relative;\n\tposition: fixed;\n\tmax-width: rem-calc(375);\n\tpadding-right: rem-calc(50);\n\topacity: 1;\n\ttransition: opacity 300ms ease-in-out;\n\t&__content {\n\t\tpadding-right: 0;\n\t}\n\t&__close {\n\t\tposition: absolute;\n\t\ttop: rem-calc(8);\n\t\tright: rem-calc(12);\n\t}\n\t&__timer {\n\t\tposition: absolute;\n\t\ttop: 0;\n\t\tright: 0;\n\t\tbottom: 0;\n\t\tleft: 0;\n\t\tz-index: -1;\n\t}\n\n\t// VARIANTS\n\t&--hidden {\n\t\topacity: 0;\n\t}\n\t&[gravity=\"top\" i] {\n\t\ttop: rem-calc(16);\n\t}\n\t&[gravity=\"bottom\" i] {\n\t\tbottom: rem-calc(16);\n\t}\n\t&[position=\"left\" i] {\n\t\tleft: rem-calc(16);\n\t}\n\t&[position=\"center\" i] {\n\t\tleft: 50%;\n\t\ttransform: translateX(-50%);\n\t}\n\t&[position=\"right\" i] {\n\t\tright: rem-calc(16);\n\t}\n\t&[type=\"solid\" i] {\n\t\tborder: none;\n\t\tborder-radius: rem-calc(4);\n\t\toverflow: hidden;\n\t\tbox-shadow: none;\n\t\t&.is-initialized #{$class}__timer {\n\t\t\ttransform-origin: left;\n\t\t\tanimation: countdown linear forwards var(--toast-duration, 0);\n\t\t}\n\t}\n\n\t@each $variant, $definitions in $toast-message-variants {\n\t\t&[variant=\"#{$variant}\"] {\n\t\t\tborder-left-color: get(\"decor-color\", $definitions);\n\t\t\t#{$class} {\n\t\t\t\t&__icon {\n\t\t\t\t\tcolor: get(\"decor-color\", $definitions);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t&[type=\"solid\" i] {\n\t\t\t\tbackground-color: get(\"background\", $definitions);\n\t\t\t\tcolor: get(\"color\", $definitions);\n\t\t\t\t#{$class} {\n\t\t\t\t\t&__icon {\n\t\t\t\t\t\tcolor: get(\"color\", $definitions);\n\t\t\t\t\t}\n\t\t\t\t\t&__timer {\n\t\t\t\t\t\tbackground-color: get(\"timer-background\", $definitions);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t// MQ\n\t@include mq($from: sm) {\n\t\t&__content {\n\t\t\tpadding-right: rem-calc(32);\n\t\t}\n\t}\n}\n","import { Component, Element, Event, EventEmitter, h, Host, Prop, Watch, Method } from '@stencil/core'\nimport { validateProp } from '../../helpers/Validate/props'\nimport { ToastClass, ToastTypesType, ToastVariants } from './constants'\nimport { govHost } from '../../helpers/Dom/template'\nimport { GovHost } from '../../helpers/Dom/template.types'\nimport { ToastVariantType } from './constants'\nimport { createID } from '../../utils/string.utils'\n\n@Component({\n\ttag: 'gov-toast',\n\tstyleUrl: 'gov-toast.scss',\n})\nexport class GovToast {\n\tprivate h: GovHost\n\tprivate timeout\n\tprivate readonly toastId: string\n\n\tconstructor() {\n\t\tthis.h = govHost(this.host)\n\t\tthis.toastId = createID('GovToast')\n\t}\n\n\t@Element() host: HTMLGovToastElement\n\t/**\n\t * Style variation of the toast message.\n\t */\n\t@Prop() readonly variant?: ToastVariantType = 'primary'\n\n\t/**\n\t * Toast’s gravity\n\t */\n\t@Prop() readonly gravity: 'top' | 'bottom' = 'top'\n\t/**\n\t * Toast’s position\n\t */\n\t@Prop() readonly position: 'left' | 'center' | 'right' = 'right'\n\t/**\n\t * Toast type\n\t */\n\t@Prop() readonly type?: ToastTypesType = 'classic'\n\t/**\n\t * Number of milliseconds to wait before Toast disappear\n\t */\n\t@Prop() readonly time: number = 0\n\t/**\n\t * Closing button texting instead of icons\n\t */\n\t@Prop({ attribute: 'close-label' }) readonly closeLabel: string\n\t/**\n\t * Aria label for the closing button. It is mandatory if the alert is closable\n\t */\n\t@Prop({ attribute: 'wcag-close-label' }) readonly wcagCloseLabel: string\n\t/**\n\t * Called when the close button is clicked\n\t */\n\t@Event({ eventName: 'gov-close' }) govClose: EventEmitter<string>\n\n\t@Watch('variant')\n\tvalidateVariant(newValue: string): void {\n\t\tvalidateProp(ToastVariants, newValue, ToastClass.root)\n\t}\n\n\tcomponentWillLoad(): void {\n\t\tthis.validateVariant(this.variant)\n\t\tthis.runTimer()\n\t}\n\n\tcomponentDidLoad() {\n\t\tconst existedToasts = document.querySelectorAll(`gov-toast[gravity=\"${this.gravity}\"][position=\"${this.position}\"]:not([data-toast-id=\"${this.toastId}\"])`)\n\t\tif (existedToasts.length > 0) {\n\t\t\tArray.from(existedToasts).map((toast: HTMLGovToastElement) => toast.destroy().then())\n\t\t}\n\t}\n\n\tdisconnectedCallback() {\n\t\tclearTimeout(this.timeout)\n\t}\n\n\tprivate runTimer() {\n\t\tif (this.isSolid) {\n\t\t\tthis.host.classList.add('is-initialized')\n\t\t}\n\t\tif (this.isTimer) {\n\t\t\tthis.timeout = setTimeout(() => {\n\t\t\t\tthis.host.classList.add(ToastClass.hidden)\n\t\t\t\tsetTimeout(this.destroy.bind(this), 600)\n\t\t\t}, this.time)\n\t\t}\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={this.h.classes([ToastClass.root, 'gov-box-shadow--m'])}\n\t\t\t\tdata-toast-id={this.toastId}\n\t\t\t\tgravity={this.gravity}\n\t\t\t\tposition={this.position}\n\t\t\t\tvariant={this.variant}\n\t\t\t\ttype={this.type}\n\t\t\t\tstyle={{ '--toast-duration': this.time + 'ms' }}\n\t\t\t>\n\t\t\t\t{this.h.hasSlot('icon') && (\n\t\t\t\t\t<span class={ToastClass.icon}>\n\t\t\t\t\t\t<slot name=\"icon\" />\n\t\t\t\t\t</span>\n\t\t\t\t)}\n\n\t\t\t\t<div class={ToastClass.content} aria-live=\"polite\" role=\"status\">\n\t\t\t\t\t<slot />\n\t\t\t\t</div>\n\n\t\t\t\t<div class={ToastClass.close}>\n\t\t\t\t\t<gov-button\n\t\t\t\t\t\tsize=\"s\"\n\t\t\t\t\t\twcag-label={this.wcagCloseLabel}\n\t\t\t\t\t\tvariant={this.isSolid ? this.variant : 'secondary'}\n\t\t\t\t\t\tinverse={this.isSolid}\n\t\t\t\t\t\ttype=\"base\"\n\t\t\t\t\t\ton-gov-click={this.onCloseHandler.bind(this)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{this.closeLabel ? this.closeLabel : <gov-icon name=\"x-lg\"></gov-icon>}\n\t\t\t\t\t</gov-button>\n\t\t\t\t</div>\n\n\t\t\t\t<div class={ToastClass.timer}></div>\n\t\t\t</Host>\n\t\t)\n\t}\n\n\tprivate onCloseHandler(): void {\n\t\tthis.destroy()\n\t\t\t.then(() => this.govClose.emit(this.toastId))\n\t\t\t.catch()\n\t}\n\n\tget isSolid(): boolean {\n\t\treturn this.type === 'solid'\n\t}\n\n\tget isTimer(): boolean {\n\t\treturn Number.isInteger(this.time) && this.time > 0\n\t}\n\n\t/**\n\t * Remove toast from dom\n\t */\n\t@Method()\n\tasync destroy(): Promise<void> {\n\t\tclearTimeout(this.timeout)\n\t\tconst toast = document.querySelector(`[data-toast-id=\"${this.toastId}\"]`)\n\t\tif (toast) {\n\t\t\ttoast.classList.add(ToastClass.hidden)\n\t\t\tif (typeof toast.remove === 'function') {\n\t\t\t\ttoast.remove()\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
@@ -0,0 +1,2 @@
1
+ import{r as o,h as r,H as a,g as s}from"./p-4af5e4f4.js";import{p as t}from"./p-03990da5.js";import{S as p}from"./p-55500e5a.js";import{g as i}from"./p-3f37ddb6.js";import{v as e}from"./p-26acf964.js";import"./p-561fa17b.js";const g=t(p,["_2XS","_XS","_S","_M","_L"]);const n={root:"gov-form-group"};const m='.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{position:relative;display:flex;width:100%;flex-direction:column;align-items:flex-start}.gov-form-group[gap="2xs"]{gap:0.25rem}.gov-form-group[gap=xs]{gap:0.5rem}.gov-form-group[gap=s]{gap:0.75rem}.gov-form-group[gap=m]{gap:1rem}.gov-form-group[gap=l]{gap:1.25rem}';const f=class{constructor(r){o(this,r);this.gap=undefined;this.h=i(this.host)}validateGap(o){e(g,o,n.root)}componentWillLoad(){this.validateGap(this.gap)}render(){return r(a,{gap:this.gap,class:this.h.classes(n.root)},r("slot",null))}get host(){return s(this)}static get watchers(){return{gap:["validateGap"]}}};f.style=m;export{f as gov_form_group};
2
+ //# sourceMappingURL=p-0874a5ec.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../packages/core/src/components/gov-form/group/constants.ts","../../../packages/core/src/components/gov-form/group/gov-form-group.scss?tag=gov-form-group","../../../packages/core/src/components/gov-form/group/gov-form-group.tsx"],"names":["FormGroupSizes","pick","Sizes","FormGroupClass","root","govFormGroupCss","GovFormGroup","[object Object]","hostRef","undefined","this","h","govHost","host","newValue","validateProp","validateGap","gap","Host","class","classes"],"mappings":"iOAIO,MAAMA,EAAiBC,EAAKC,EAAO,CAAC,OAAQ,MAAO,KAAM,KAAM,OAG/D,MAAMC,EAAiB,CAC7BC,KAAM,kBCRP,MAAMC,EAAkB,snBCUXC,EAAY,MAGxBC,YAAAC,sBAQ4CC,UAP3CC,KAAKC,EAAIC,EAAQF,KAAKG,MAUvBN,YAAYO,GACXC,EAAaf,EAAgBc,EAAUX,EAAeC,MAGvDG,oBACCG,KAAKM,YAAYN,KAAKO,KAGvBV,SACC,OACCI,EAACO,EAAI,CAACD,IAAKP,KAAKO,IAAKE,MAAOT,KAAKC,EAAES,QAAQjB,EAAeC,OACzDO,EAAA,OAAA","sourcesContent":["import { pick } from \"../../../utils/utils\"\nimport { Sizes } from \"../../../core/constants/sizes\"\nimport { ValueOf } from \"../../../types/interfaces\"\n\nexport const FormGroupSizes = pick(Sizes, ['_2XS', '_XS', '_S', '_M', '_L'])\nexport type FormGroupSizesType = `${ValueOf<typeof FormGroupSizes>}`\n\nexport const FormGroupClass = {\n\troot: 'gov-form-group',\n}\n","$class: \".gov-form-group\";\n\n#{$class} {\n\t@include base(flex);\n\tflex-direction: column;\n\talign-items: flex-start;\n\n\t// VARIANTS\n\t@each $gap, $definitions in $form-group-gaps {\n\t\t&[gap=\"#{$gap}\"] {\n\t\t\tgap: get($gap, $sizes);\n\t\t}\n\t}\n}\n// :host([inline]) {\n// \tdisplay: flex;\n\n// \t::slotted(gov-checkbox),\n// \t::slotted(gov-radio) {\n// \t\tdisplay: inline-flex;\n// \t\tmargin-right: rem-calc(30);\n// \t}\n// }\n","import { Component, Element, h, Host, Prop, Watch } from \"@stencil/core\"\nimport { FormGroupClass, FormGroupSizes, FormGroupSizesType } from \"./constants\"\nimport { GovHost } from \"../../../helpers/Dom/template.types\"\nimport { govHost } from \"../../../helpers/Dom/template\"\nimport { validateProp } from \"../../../helpers/Validate/props\"\n\n@Component({\n\ttag: \"gov-form-group\",\n\tstyleUrl: \"gov-form-group.scss\",\n})\nexport class GovFormGroup {\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\n\t@Watch(\"gap\")\n\tvalidateGap(newValue: string): void {\n\t\tvalidateProp(FormGroupSizes, newValue, FormGroupClass.root)\n\t}\n\n\tcomponentWillLoad(): void {\n\t\tthis.validateGap(this.gap)\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host gap={this.gap} class={this.h.classes(FormGroupClass.root)}>\n\t\t\t\t<slot></slot>\n\t\t\t</Host>\n\t\t)\n\t}\n}\n"]}
@@ -0,0 +1,2 @@
1
+ import{r as t,h as s,H as i,g as e}from"./p-4af5e4f4.js";import{c as a}from"./p-24636c53.js";import{g as o,t as r}from"./p-3f37ddb6.js";import{T as n}from"./p-80e30702.js";import"./p-ff7365ae.js";import"./p-03990da5.js";const h=".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-tabs-item{color:var(--gov-tabs-text-color, var(--gov-color-secondary-700))}.gov-tabs-item__inner>*:last-child{margin-bottom:0}";const p=class{constructor(s){t(this,s);this.identifier=undefined;this.triggerIdentifier=undefined;this.label=undefined;this.default=false;this.isActive=false;this.h=o(this.host);this.contentId=a("GovTabContent");this.triggeId=a("GovTabTrigger")}render(){return s(i,{class:this.h.classes(n.root),default:this.default},s("div",{class:n.inner,role:"tabpanel",id:this.identifier||this.contentId,hidden:!this.isActive,"aria-labelledby":this.triggerIdentifier||this.triggeId,"aria-hidden":r(!this.isActive)},s("slot",null)))}async getIdentifier(){return this.identifier||this.contentId}async getTriggerIdentifier(){return this.triggerIdentifier||this.triggeId}async setActiveStatus(t){this.isActive=t}get host(){return e(this)}};p.style=h;export{p as gov_tabs_item};
2
+ //# sourceMappingURL=p-0f0564e8.entry.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../packages/core/src/components/gov-tabs/gov-tabs-item.scss?tag=gov-tabs-item","../../../packages/core/src/components/gov-tabs/gov-tabs-item.tsx"],"names":["govTabsItemCss","GovTabsItem","[object Object]","hostRef","this","h","govHost","host","contentId","createID","triggeId","Host","class","classes","TabsItemClass","root","default","inner","role","id","identifier","hidden","isActive","aria-labelledby","triggerIdentifier","aria-hidden","toBoolAttrIfDefined","status"],"mappings":"4NAAA,MAAMA,EAAiB,iUCUVC,EAAW,MAKvBC,YAAAC,0GAsBoC,oBAChB,MAtBnBC,KAAKC,EAAIC,EAAQF,KAAKG,MACtBH,KAAKI,UAAYC,EAAS,iBAC1BL,KAAKM,SAAWD,EAAS,iBAsB1BP,SACC,OACCG,EAACM,EAAI,CAACC,MAAOR,KAAKC,EAAEQ,QAAQC,EAAcC,MAAOC,QAASZ,KAAKY,SAC9DX,EAAA,MAAA,CACCO,MAAOE,EAAcG,MACrBC,KAAK,WACLC,GAAIf,KAAKgB,YAAchB,KAAKI,UAC5Ba,QAASjB,KAAKkB,SAAQC,kBACLnB,KAAKoB,mBAAqBpB,KAAKM,SAAQe,cAC3CC,GAAqBtB,KAAKkB,WAEvCjB,EAAA,OAAA,QAUJH,sBACC,OAAOE,KAAKgB,YAAchB,KAAKI,UAOhCN,6BACC,OAAOE,KAAKoB,mBAAqBpB,KAAKM,SAOvCR,sBAAsByB,GACrBvB,KAAKkB,SAAWK","sourcesContent":["/*\n * Tabs - Item\n */\n\n$class: \".gov-tabs-item\";\n\n#{$class} {\n\tcolor: $tabs-text-color;\n\t&__inner {\n\t\t@include reset-last-margin();\n\t}\n}\n","import { Component, Element, h, Prop, Method, State, Host } from '@stencil/core'\nimport { createID } from '../../utils/string.utils'\nimport { govHost, toBoolAttrIfDefined } from '../../helpers/Dom/template'\nimport { GovHost } from '../../helpers/Dom/template.types'\nimport { TabsItemClass } from './constants'\n\n@Component({\n\ttag: 'gov-tabs-item',\n\tstyleUrl: 'gov-tabs-item.scss',\n})\nexport class GovTabsItem {\n\tprivate h: GovHost\n\tprivate readonly contentId: string\n\tprivate readonly triggeId: string\n\n\tconstructor() {\n\t\tthis.h = govHost(this.host)\n\t\tthis.contentId = createID('GovTabContent')\n\t\tthis.triggeId = createID('GovTabTrigger')\n\t}\n\n\t@Element() host: HTMLGovTabsItemElement\n\t/**\n\t * Custom tab item identifier. Otherwise, it will be generated\n\t */\n\t@Prop() readonly identifier: string\n\t/**\n\t * Custom tab trigger item identifier. Otherwise, it will be generated\n\t */\n\t@Prop() readonly triggerIdentifier: string\n\t/**\n\t * Item name of the tab\n\t */\n\t@Prop() readonly label: string\n\t/**\n\t * Default selected tab\n\t */\n\t@Prop() readonly default: boolean = false\n\t@State() isActive = false\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class={this.h.classes(TabsItemClass.root)} default={this.default}>\n\t\t\t\t<div\n\t\t\t\t\tclass={TabsItemClass.inner}\n\t\t\t\t\trole=\"tabpanel\"\n\t\t\t\t\tid={this.identifier || this.contentId}\n\t\t\t\t\thidden={!this.isActive}\n\t\t\t\t\taria-labelledby={this.triggerIdentifier || this.triggeId}\n\t\t\t\t\taria-hidden={toBoolAttrIfDefined(!this.isActive)}\n\t\t\t\t>\n\t\t\t\t\t<slot></slot>\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t)\n\t}\n\n\t/**\n\t * Returns a unique tab content identifier\n\t */\n\t@Method()\n\tasync getIdentifier(): Promise<string> {\n\t\treturn this.identifier || this.contentId\n\t}\n\n\t/**\n\t * Returns a unique tab trigger identifier\n\t */\n\t@Method()\n\tasync getTriggerIdentifier(): Promise<string> {\n\t\treturn this.triggerIdentifier || this.triggeId\n\t}\n\n\t/**\n\t * Set status of tab-item\n\t */\n\t@Method()\n\tasync setActiveStatus(status: boolean): Promise<void> {\n\t\tthis.isActive = status\n\t}\n}\n"]}
1
+ {"version":3,"sources":["../../../packages/core/src/components/gov-tabs/gov-tabs-item.scss?tag=gov-tabs-item","../../../packages/core/src/components/gov-tabs/gov-tabs-item.tsx"],"names":["govTabsItemCss","GovTabsItem","[object Object]","hostRef","this","h","govHost","host","contentId","createID","triggeId","Host","class","classes","TabsItemClass","root","default","inner","role","id","identifier","hidden","isActive","aria-labelledby","triggerIdentifier","aria-hidden","toBoolAttrIfDefined","status"],"mappings":"4NAAA,MAAMA,EAAiB,keCUVC,EAAW,MAKvBC,YAAAC,0GAsBoC,oBAChB,MAtBnBC,KAAKC,EAAIC,EAAQF,KAAKG,MACtBH,KAAKI,UAAYC,EAAS,iBAC1BL,KAAKM,SAAWD,EAAS,iBAsB1BP,SACC,OACCG,EAACM,EAAI,CAACC,MAAOR,KAAKC,EAAEQ,QAAQC,EAAcC,MAAOC,QAASZ,KAAKY,SAC9DX,EAAA,MAAA,CACCO,MAAOE,EAAcG,MACrBC,KAAK,WACLC,GAAIf,KAAKgB,YAAchB,KAAKI,UAC5Ba,QAASjB,KAAKkB,SAAQC,kBACLnB,KAAKoB,mBAAqBpB,KAAKM,SAAQe,cAC3CC,GAAqBtB,KAAKkB,WAEvCjB,EAAA,OAAA,QAUJH,sBACC,OAAOE,KAAKgB,YAAchB,KAAKI,UAOhCN,6BACC,OAAOE,KAAKoB,mBAAqBpB,KAAKM,SAOvCR,sBAAsByB,GACrBvB,KAAKkB,SAAWK","sourcesContent":["/*\n * Tabs - Item\n */\n\n$class: \".gov-tabs-item\";\n\n#{$class} {\n\tcolor: $tabs-text-color;\n\t&__inner {\n\t\t@include reset-last-margin();\n\t}\n}\n","import { Component, Element, h, Prop, Method, State, Host } from '@stencil/core'\nimport { createID } from '../../utils/string.utils'\nimport { govHost, toBoolAttrIfDefined } from '../../helpers/Dom/template'\nimport { GovHost } from '../../helpers/Dom/template.types'\nimport { TabsItemClass } from './constants'\n\n@Component({\n\ttag: 'gov-tabs-item',\n\tstyleUrl: 'gov-tabs-item.scss',\n})\nexport class GovTabsItem {\n\tprivate h: GovHost\n\tprivate readonly contentId: string\n\tprivate readonly triggeId: string\n\n\tconstructor() {\n\t\tthis.h = govHost(this.host)\n\t\tthis.contentId = createID('GovTabContent')\n\t\tthis.triggeId = createID('GovTabTrigger')\n\t}\n\n\t@Element() host: HTMLGovTabsItemElement\n\t/**\n\t * Custom tab item identifier. Otherwise, it will be generated\n\t */\n\t@Prop() readonly identifier: string\n\t/**\n\t * Custom tab trigger item identifier. Otherwise, it will be generated\n\t */\n\t@Prop() readonly triggerIdentifier: string\n\t/**\n\t * Item name of the tab\n\t */\n\t@Prop() readonly label: string\n\t/**\n\t * Default selected tab\n\t */\n\t@Prop() readonly default: boolean = false\n\t@State() isActive = false\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class={this.h.classes(TabsItemClass.root)} default={this.default}>\n\t\t\t\t<div\n\t\t\t\t\tclass={TabsItemClass.inner}\n\t\t\t\t\trole=\"tabpanel\"\n\t\t\t\t\tid={this.identifier || this.contentId}\n\t\t\t\t\thidden={!this.isActive}\n\t\t\t\t\taria-labelledby={this.triggerIdentifier || this.triggeId}\n\t\t\t\t\taria-hidden={toBoolAttrIfDefined(!this.isActive)}\n\t\t\t\t>\n\t\t\t\t\t<slot></slot>\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t)\n\t}\n\n\t/**\n\t * Returns a unique tab content identifier\n\t */\n\t@Method()\n\tasync getIdentifier(): Promise<string> {\n\t\treturn this.identifier || this.contentId\n\t}\n\n\t/**\n\t * Returns a unique tab trigger identifier\n\t */\n\t@Method()\n\tasync getTriggerIdentifier(): Promise<string> {\n\t\treturn this.triggerIdentifier || this.triggeId\n\t}\n\n\t/**\n\t * Set status of tab-item\n\t */\n\t@Method()\n\tasync setActiveStatus(status: boolean): Promise<void> {\n\t\tthis.isActive = status\n\t}\n}\n"]}
@@ -0,0 +1,2 @@
1
+ import{r as e,c as t,h as o,H as i,g as r}from"./p-4af5e4f4.js";import{t as l}from"./p-3f37ddb6.js";import{F as s,a,b as m}from"./p-ef79904e.js";import{v as c}from"./p-26acf964.js";import{a as n,b as v}from"./p-364b4792.js";import{c as g}from"./p-c20102ff.js";import{c as f,r as u}from"./p-24636c53.js";import{d}from"./p-03990da5.js";import"./p-55500e5a.js";import"./p-ff7365ae.js";import"./p-561fa17b.js";const h='.gov-form-multi-select__list{margin:0;padding:0}.gov-form-multi-select__list>.gov-form-multi-select__item{margin:0;padding:0;background:none}.gov-form-multi-select__list>.gov-form-multi-select__item::before{display:none}.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-multi-select{position:relative;display:flex;width:100%;align-items:center}.gov-form-multi-select .element{position:relative;flex:1 1 auto}.gov-form-multi-select input,.gov-form-multi-select select,.gov-form-multi-select textarea{width:100%;border:var(--gov-form-input-border-width, 0.0625rem solid var(--gov-color-secondary-700));border-radius:var(--gov-border-radius, 0.1875rem);background-color:var(--gov-form-bg-color, var(--gov-color-neutral-white));color:var(--gov-form-input-color, var(--gov-color-secondary-700));font-family:var(--gov-font-family, "Roboto", sans-serif)}.gov-form-multi-select input:focus,.gov-form-multi-select select:focus,.gov-form-multi-select textarea:focus{outline:none}.gov-form-multi-select input:focus-visible,.gov-form-multi-select select:focus-visible,.gov-form-multi-select textarea:focus-visible{border-radius:var(--gov-border-radius, 0.1875rem);outline:var(--gov-outline-width, 0.125rem) solid var(--gov-color-focus-base);outline-offset:0}.gov-form-multi-select input::-moz-placeholder,.gov-form-multi-select select::-moz-placeholder,.gov-form-multi-select textarea::-moz-placeholder{color:var(--gov-form-placeholder-color, var(--gov-color-secondary-600))}.gov-form-multi-select input::placeholder,.gov-form-multi-select select::placeholder,.gov-form-multi-select textarea::placeholder{color:var(--gov-form-placeholder-color, var(--gov-color-secondary-600))}.gov-form-multi-select textarea{font-weight:var(--gov-text-m-font-weight);font-size:var(--gov-text-m-font-size);line-height:var(--gov-text-m-line-height);letter-spacing:var(--gov-text-m-letter-spacing);padding:0.5rem 0.75rem;resize:none}.gov-form-multi-select *[slot=left-icon],.gov-form-multi-select *[slot=right-icon]{position:absolute;top:50%;display:flex;justify-content:center;color:var(--gov-form-input-icon-color, var(--gov-color-primary));transform:translateY(-50%);pointer-events:none}.gov-form-multi-select *[slot=left-icon]{left:0}.gov-form-multi-select *[slot=right-icon]{right:0}[disabled=""].gov-form-multi-select,[disabled=true i].gov-form-multi-select,[disabled="1"].gov-form-multi-select{pointer-events:none}[disabled=""].gov-form-multi-select input,[disabled=""].gov-form-multi-select select,[disabled=""].gov-form-multi-select textarea,[disabled=true i].gov-form-multi-select input,[disabled=true i].gov-form-multi-select select,[disabled=true i].gov-form-multi-select textarea,[disabled="1"].gov-form-multi-select input,[disabled="1"].gov-form-multi-select select,[disabled="1"].gov-form-multi-select textarea{border-color:var(--gov-form-state-color-disabled, var(--gov-color-secondary-600));background:var(--gov-form-input-disabled-bg, var(--gov-color-secondary-300));color:var(--gov-form-state-color-disabled, var(--gov-color-secondary-600))}[disabled=""].gov-form-multi-select *[slot=left-icon],[disabled=""].gov-form-multi-select *[slot=right-icon],[disabled=true i].gov-form-multi-select *[slot=left-icon],[disabled=true i].gov-form-multi-select *[slot=right-icon],[disabled="1"].gov-form-multi-select *[slot=left-icon],[disabled="1"].gov-form-multi-select *[slot=right-icon]{color:var(--gov-form-state-color-disabled, var(--gov-color-secondary-600))}[invalid=""].gov-form-multi-select input,[invalid=""].gov-form-multi-select select,[invalid=""].gov-form-multi-select textarea,[invalid=true i].gov-form-multi-select input,[invalid=true i].gov-form-multi-select select,[invalid=true i].gov-form-multi-select textarea,[invalid="1"].gov-form-multi-select input,[invalid="1"].gov-form-multi-select select,[invalid="1"].gov-form-multi-select textarea{border-color:var(--gov-form-state-color-error, var(--gov-color-error));color:var(--gov-form-state-color-error, var(--gov-color-error))}[invalid=""].gov-form-multi-select input::-moz-placeholder,[invalid=""].gov-form-multi-select select::-moz-placeholder,[invalid=""].gov-form-multi-select textarea::-moz-placeholder,[invalid=true i].gov-form-multi-select input::-moz-placeholder,[invalid=true i].gov-form-multi-select select::-moz-placeholder,[invalid=true i].gov-form-multi-select textarea::-moz-placeholder,[invalid="1"].gov-form-multi-select input::-moz-placeholder,[invalid="1"].gov-form-multi-select select::-moz-placeholder,[invalid="1"].gov-form-multi-select textarea::-moz-placeholder{color:var(--gov-form-state-color-error, var(--gov-color-error-300))}[invalid=""].gov-form-multi-select input::placeholder,[invalid=""].gov-form-multi-select select::placeholder,[invalid=""].gov-form-multi-select textarea::placeholder,[invalid=true i].gov-form-multi-select input::placeholder,[invalid=true i].gov-form-multi-select select::placeholder,[invalid=true i].gov-form-multi-select textarea::placeholder,[invalid="1"].gov-form-multi-select input::placeholder,[invalid="1"].gov-form-multi-select select::placeholder,[invalid="1"].gov-form-multi-select textarea::placeholder{color:var(--gov-form-state-color-error, var(--gov-color-error-300))}[invalid=""].gov-form-multi-select *[slot=left-icon],[invalid=""].gov-form-multi-select *[slot=right-icon],[invalid=true i].gov-form-multi-select *[slot=left-icon],[invalid=true i].gov-form-multi-select *[slot=right-icon],[invalid="1"].gov-form-multi-select *[slot=left-icon],[invalid="1"].gov-form-multi-select *[slot=right-icon]{color:var(--gov-form-state-color-error, var(--gov-color-error))}[success=""].gov-form-multi-select *[slot=right-icon],[success=true i].gov-form-multi-select *[slot=right-icon],[success="1"].gov-form-multi-select *[slot=right-icon]{color:var(--gov-form-state-color-success, var(--gov-color-success))}[success=""].gov-form-multi-select *[slot=right-icon]:not(.icon-validation):not(.icon-arrow),[success=true i].gov-form-multi-select *[slot=right-icon]:not(.icon-validation):not(.icon-arrow),[success="1"].gov-form-multi-select *[slot=right-icon]:not(.icon-validation):not(.icon-arrow){display:none}[size=m].gov-form-multi-select{font-weight:var(--gov-text-m-font-weight);font-size:var(--gov-text-m-font-size);line-height:var(--gov-text-m-line-height);letter-spacing:var(--gov-text-m-letter-spacing);gap:0.5rem var(--gov-form-input-core-m-icon-size, 1rem)}[size=m].gov-form-multi-select input,[size=m].gov-form-multi-select select{font-weight:var(--gov-text-m-font-weight);font-size:var(--gov-text-m-font-size);line-height:var(--gov-text-m-line-height);letter-spacing:var(--gov-text-m-letter-spacing);height:var(--gov-form-input-core-m-height, 2.5rem);padding:var(--gov-form-input-core-m-padding, 0.4375rem 0.75rem)}[size=m].gov-form-multi-select *[slot=left-icon],[size=m].gov-form-multi-select *[slot=right-icon]{width:var(--gov-form-input-core-m-icon-size, 1rem);height:var(--gov-form-input-core-m-icon-size, 1rem)}[size=m].gov-form-multi-select *[slot=left-icon]{left:calc((var(--gov-form-input-core-m-icon-padding, 2.5rem) - var(--gov-form-input-core-m-icon-size, 1rem)) / 2)}[size=m].gov-form-multi-select *[slot=left-icon]~input{padding-left:var(--gov-form-input-core-m-icon-padding, 2.5rem)}[size=m].gov-form-multi-select *[slot=right-icon]{right:calc((var(--gov-form-input-core-m-icon-padding, 2.5rem) - var(--gov-form-input-core-m-icon-size, 1rem)) / 2)}[size=m].gov-form-multi-select *[slot=right-icon]~input,[size=m].gov-form-multi-select *[slot=right-icon]~select{padding-right:var(--gov-form-input-core-m-icon-padding, 2.5rem)}[size=l].gov-form-multi-select{font-weight:var(--gov-text-m-font-weight);font-size:var(--gov-text-m-font-size);line-height:var(--gov-text-m-line-height);letter-spacing:var(--gov-text-m-letter-spacing);gap:0.5rem var(--gov-form-input-core-l-icon-size, 1rem)}[size=l].gov-form-multi-select input,[size=l].gov-form-multi-select select{font-weight:var(--gov-text-m-font-weight);font-size:var(--gov-text-m-font-size);line-height:var(--gov-text-m-line-height);letter-spacing:var(--gov-text-m-letter-spacing);height:var(--gov-form-input-core-l-height, 3rem);padding:var(--gov-form-input-core-l-padding, 0.6875rem 0.75rem)}[size=l].gov-form-multi-select *[slot=left-icon],[size=l].gov-form-multi-select *[slot=right-icon]{width:var(--gov-form-input-core-l-icon-size, 1rem);height:var(--gov-form-input-core-l-icon-size, 1rem)}[size=l].gov-form-multi-select *[slot=left-icon]{left:calc((var(--gov-form-input-core-l-icon-padding, 2.5rem) - var(--gov-form-input-core-l-icon-size, 1rem)) / 2)}[size=l].gov-form-multi-select *[slot=left-icon]~input{padding-left:var(--gov-form-input-core-l-icon-padding, 2.5rem)}[size=l].gov-form-multi-select *[slot=right-icon]{right:calc((var(--gov-form-input-core-l-icon-padding, 2.5rem) - var(--gov-form-input-core-l-icon-size, 1rem)) / 2)}[size=l].gov-form-multi-select *[slot=right-icon]~input,[size=l].gov-form-multi-select *[slot=right-icon]~select{padding-right:var(--gov-form-input-core-l-icon-padding, 2.5rem)}[size=xl].gov-form-multi-select{font-weight:var(--gov-text-l-font-weight);font-size:var(--gov-text-l-font-size);line-height:var(--gov-text-l-line-height);letter-spacing:var(--gov-text-l-letter-spacing);gap:0.5rem var(--gov-form-input-core-xl-icon-size, 1.25rem)}[size=xl].gov-form-multi-select input,[size=xl].gov-form-multi-select select{font-weight:var(--gov-text-l-font-weight);font-size:var(--gov-text-l-font-size);line-height:var(--gov-text-l-line-height);letter-spacing:var(--gov-text-l-letter-spacing);height:var(--gov-form-input-core-xl-height, 3.5rem);padding:var(--gov-form-input-core-xl-padding, 0.9375rem 1rem 0.875rem)}[size=xl].gov-form-multi-select *[slot=left-icon],[size=xl].gov-form-multi-select *[slot=right-icon]{width:var(--gov-form-input-core-xl-icon-size, 1.25rem);height:var(--gov-form-input-core-xl-icon-size, 1.25rem)}[size=xl].gov-form-multi-select *[slot=left-icon]{left:calc((var(--gov-form-input-core-xl-icon-padding, 3rem) - var(--gov-form-input-core-xl-icon-size, 1.25rem)) / 2)}[size=xl].gov-form-multi-select *[slot=left-icon]~input{padding-left:var(--gov-form-input-core-xl-icon-padding, 3rem)}[size=xl].gov-form-multi-select *[slot=right-icon]{right:calc((var(--gov-form-input-core-xl-icon-padding, 3rem) - var(--gov-form-input-core-xl-icon-size, 1.25rem)) / 2)}[size=xl].gov-form-multi-select *[slot=right-icon]~input,[size=xl].gov-form-multi-select *[slot=right-icon]~select{padding-right:var(--gov-form-input-core-xl-icon-padding, 3rem)}.gov-form-multi-select{background:none}.gov-form-multi-select select{-webkit-appearance:none;-moz-appearance:none}.gov-form-multi-select select::-ms-expand{display:none}[size=m].gov-form-multi-select *[slot=right-icon]{right:var(--gov-form-select-m-arrow-right-position, 1rem);width:var(--gov-form-select-m-arrow-size, 0.5rem);height:var(--gov-form-select-m-arrow-size, 0.5rem)}[size=l].gov-form-multi-select *[slot=right-icon]{right:var(--gov-form-select-l-arrow-right-position, 1rem);width:var(--gov-form-select-l-arrow-size, 0.5rem);height:var(--gov-form-select-l-arrow-size, 0.5rem)}[size=xl].gov-form-multi-select *[slot=right-icon]{right:var(--gov-form-select-xl-arrow-right-position, 1.3125rem);width:var(--gov-form-select-xl-arrow-size, 0.625rem);height:var(--gov-form-select-xl-arrow-size, 0.625rem)}.gov-form-multi-select{flex-wrap:wrap}.gov-form-multi-select__wrap{display:flex;gap:0.5rem;width:100%}.gov-form-multi-select__list{font-weight:var(--gov-text-xs-font-weight);font-size:var(--gov-text-xs-font-size);line-height:var(--gov-text-xs-line-height);letter-spacing:var(--gov-text-xs-letter-spacing);display:flex;gap:0.5rem;flex-wrap:wrap}.gov-form-multi-select__list>.gov-form-multi-select__item{position:relative;display:flex;flex:0 0 auto;align-items:center;padding:0rem 0rem 0rem 0.5rem;background:var(--gov-form-multiselect-bg, var(--gov-color-primary-200));transition:150ms linear background-color}';const p=class{constructor(o){e(this,o);this.govFocus=t(this,"gov-focus",7);this.govBlur=t(this,"gov-blur",7);this.govChange=t(this,"gov-change",7);this.identifier=undefined;this.placeholder=undefined;this.variant=undefined;this.size="m";this.name=undefined;this.required=false;this.disabled=undefined;this.invalid=undefined;this.wcagDescribedBy=undefined;this.wcagLabelledBy=undefined;this.wcagOwns=undefined;this.focused=undefined;this.value=undefined;this.selectedOptions=[];this.selectId=f("GovSelect");this.listId=f("GovMultiList")}validateVariant(e){c(a,e,s.root)}validateSize(e){c(m,e,s.root)}emitChange(e){this.govChange.emit(e)}componentWillLoad(){this.validateVariant(this.variant);this.validateSize(this.size)}getAvailableOptions(){return Array.from(this.selectRef.querySelectorAll("option")).filter((e=>!(e.disabled||e.selected))).map((e=>({name:e.textContent,value:e.value})))}initAutocomplete(){this.autocompleteRef.addEventListener("gov-select",this.onSelectHandler.bind(this));this.autocompleteRef.addEventListener("gov-input",this.onInputHandler.bind(this));this.autocompleteRef.addEventListener("gov-focus",this.onFocusHandler.bind(this));this.autocompleteRef.addEventListener("gov-blur",this.onBlurHandler.bind(this));this.autocompleteRef.setSearchCallback((e=>new Promise((t=>{const o=this.getAvailableOptions();if(String(e).length===0){return t(o)}t(o.filter((({name:t})=>{if(!t)return false;return u(t).toLowerCase().indexOf(u(e).toLowerCase())>-1})))})))).then()}getOptionIndex(e){return this.selectedOptions.findIndex((t=>t.value===e.value&&t.name===e.name))}getOptionElement(e){return this.selectRef.querySelector('option[value="'+e.value+'"]')}selectOption(e){const t=this.getOptionIndex(e);if(t===-1){this.selectedOptions=[...this.selectedOptions,e];const t=this.getOptionElement(e);if(t){t.selected=true}}}removeOption(e){const t=this.getOptionIndex(e);if(t!==-1){this.selectedOptions.splice(t,1);this.selectedOptions=[...this.selectedOptions];const o=this.getOptionElement(e);if(o){o.selected=false}}}async componentDidRender(){this.initAutocomplete();await d(0);this.selectRef.querySelectorAll("option").forEach((e=>{if(e.selected){this.selectOption({name:e.textContent,value:e.value})}}));if(g()){await d(500);await this.validateWcag()}}render(){return o(i,{class:s.root,size:this.size,variant:this.variant},o("div",{class:s.wrap},o("div",{class:"element"},o("gov-form-autocomplete",{value:this.value,disabled:this.disabled,identifier:this.identifier||this.selectId,required:false,size:this.size,variant:this.variant,invalid:this.invalid,placeholder:this.placeholder,ref:e=>this.autocompleteRef=e,minlength:0,wcagDescribedBy:this.wcagDescribedBy,wcagLabelledBy:this.wcagLabelledBy,wcagOwns:this.listId}),o("gov-icon",{slot:"right-icon",class:"icon-arrow",name:"chevron-down"}),o("select",{hidden:true,"aria-hidden":true,multiple:true,required:this.required,name:this.name,disabled:this.disabled,ref:e=>this.selectRef=e,"aria-disabled":l(this.disabled),"aria-required":l(this.required),"aria-invalid":l(this.invalid),"aria-describedby":this.wcagDescribedBy,"aria-labelledby":this.wcagLabelledBy,"aria-owns":this.wcagOwns},o("slot",null)))),o("ul",{role:"listbox",id:this.listId,class:s.list},this.selectedOptions.map((e=>o("li",{class:s.item,role:"option"},e.name,o("gov-button",{wcagLabel:"Odebrat vybranou položku "+e.name,variant:"primary",type:"base",size:"s","on-gov-click":()=>this.onTagRemove(e)},o("gov-icon",{name:"x-lg"})))))))}onFocusHandler(e){e.stopPropagation();this.focused=true;this.govFocus.emit(e)}onBlurHandler(e){e.stopPropagation();e.stopPropagation();this.focused=false;this.govBlur.emit(e)}onInputHandler(e){this.value=e.target.value;e.stopPropagation()}onSelectHandler(e){e.stopPropagation();const t=e.detail;this.selectOption(t);this.value="";this.autocompleteRef.clearValue();this.autocompleteRef.focus()}onTagRemove(e){this.removeOption(e)}async setFocus(e){return this.selectRef.focus(e)}async setValue(e){this.value=e}async getInstance(){return this.selectRef}async validateWcag(){n(this.wcagDescribedBy,"wcag-described-by",s.root);n(this.wcagLabelledBy,"wcag-labelled-by",s.root);n(this.wcagOwns,"wcag-owns",s.root);v(this.identifier||this.selectId,this.wcagLabelledBy,s.root)}get host(){return r(this)}static get watchers(){return{variant:["validateVariant"],size:["validateSize"],selectedOptions:["emitChange"]}}};p.style=h;export{p as gov_form_multi_select};
2
+ //# sourceMappingURL=p-131c50d1.entry.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../packages/core/src/components/gov-form/multiselect/gov-form-multi-select.scss?tag=gov-form-multi-select","../../../packages/core/src/components/gov-form/multiselect/gov-form-multi-select.tsx"],"names":["govFormMultiSelectCss","GovFormMultiSelect","[object Object]","hostRef","this","selectId","createID","listId","newValue","validateProp","FormMultiselectVariants","FormMultiSelectClass","root","FormMultiselectSizes","govChange","emit","validateVariant","variant","validateSize","size","Array","from","selectRef","querySelectorAll","filter","option","disabled","selected","map","name","textContent","value","autocompleteRef","addEventListener","onSelectHandler","bind","onInputHandler","onFocusHandler","onBlurHandler","setSearchCallback","Promise","resolve","data","getAvailableOptions","String","length","removeDiacritics","toLowerCase","indexOf","then","selectedOptions","findIndex","querySelector","newOption","index","getOptionIndex","getOptionElement","removeOption","splice","initAutocomplete","delay","forEach","selectOption","canValidateWcagOnRender","validateWcag","h","Host","class","wrap","identifier","required","invalid","placeholder","ref","el","minlength","wcagDescribedBy","wcagLabelledBy","wcagOwns","slot","hidden","aria-hidden","multiple","aria-disabled","toBoolAttrIfDefined","aria-required","aria-invalid","aria-describedby","aria-labelledby","aria-owns","role","id","list","item","wcagLabel","type","on-gov-click","onTagRemove","e","stopPropagation","focused","govFocus","govBlur","target","detail","clearValue","focus","options","validateWcagRef","validateWcagLabelFor"],"mappings":"sZAAA,MAAMA,EAAwB,gwXCejBC,EAAkB,MAO9BC,YAAAC,+MAqBmD,sCASd,2MAoCgB,GAjEpDC,KAAKC,SAAWC,EAAS,aACzBF,KAAKG,OAASD,EAAS,gBAmExBJ,gBAAgBM,GACfC,EAAaC,EAAyBF,EAAUG,EAAqBC,MAItEV,aAAaM,GACZC,EAAaI,EAAsBL,EAAUG,EAAqBC,MAInEV,WAAWM,GACVJ,KAAKU,UAAUC,KAAKP,GAGrBN,oBACCE,KAAKY,gBAAgBZ,KAAKa,SAC1Bb,KAAKc,aAAad,KAAKe,MAGhBjB,sBACP,OAAOkB,MAAMC,KAAKjB,KAAKkB,UAAUC,iBAAiB,WAChDC,QAAQC,KAAgCA,EAAOC,UAAYD,EAAOE,YAClEC,KAAKH,IAAyB,CAAQI,KAAMJ,EAAOK,YAAaC,MAAON,EAAOM,UAGzE7B,mBACPE,KAAK4B,gBAAgBC,iBAAiB,aAAc7B,KAAK8B,gBAAgBC,KAAK/B,OAC9EA,KAAK4B,gBAAgBC,iBAAiB,YAAa7B,KAAKgC,eAAeD,KAAK/B,OAC5EA,KAAK4B,gBAAgBC,iBAAiB,YAAa7B,KAAKiC,eAAeF,KAAK/B,OAC5EA,KAAK4B,gBAAgBC,iBAAiB,WAAY7B,KAAKkC,cAAcH,KAAK/B,OAC1EA,KAAK4B,gBACHO,mBAAkBR,GACX,IAAIS,SAAQC,IAClB,MAAMC,EAAOtC,KAAKuC,sBAClB,GAAIC,OAAOb,GAAOc,SAAW,EAAG,CAC/B,OAAOJ,EAAQC,GAEhBD,EACCC,EAAKlB,QAAO,EAAGK,KAAAA,MACd,IAAKA,EAAM,OAAO,MAClB,OAAOiB,EAAiBjB,GAAMkB,cAAcC,QAAQF,EAAiBf,GAAOgB,gBAAkB,WAKjGE,OAGK/C,eAAe6B,GACtB,OAAO3B,KAAK8C,gBAAgBC,WAAU1B,GAAUA,EAAOM,QAAUA,EAAMA,OAASN,EAAOI,OAASE,EAAMF,OAG/F3B,iBAAiB6B,GACxB,OAAO3B,KAAKkB,UAAU8B,cAAc,iBAAmBrB,EAAMA,MAAQ,MAG9D7B,aAAamD,GACpB,MAAMC,EAAQlD,KAAKmD,eAAeF,GAClC,GAAIC,KAAW,EAAG,CACjBlD,KAAK8C,gBAAkB,IAAI9C,KAAK8C,gBAAiBG,GACjD,MAAM5B,EAASrB,KAAKoD,iBAAiBH,GACrC,GAAI5B,EAAQ,CACXA,EAAOE,SAAW,OAKbzB,aAAauD,GACpB,MAAMH,EAAQlD,KAAKmD,eAAeE,GAClC,GAAIH,KAAW,EAAG,CACjBlD,KAAK8C,gBAAgBQ,OAAOJ,EAAO,GACnClD,KAAK8C,gBAAkB,IAAI9C,KAAK8C,iBAChC,MAAMzB,EAASrB,KAAKoD,iBAAiBC,GACrC,GAAIhC,EAAQ,CACXA,EAAOE,SAAW,QAKrBzB,2BACCE,KAAKuD,yBACCC,EAAM,GACZxD,KAAKkB,UAAUC,iBAAiB,UAAUsC,SAASpC,IAClD,GAAIA,EAAOE,SAAU,CACpBvB,KAAK0D,aAAa,CACjBjC,KAAMJ,EAAOK,YACbC,MAAON,EAAOM,YAIjB,GAAIgC,IAA2B,OACxBH,EAAM,WACNxD,KAAK4D,gBAIb9D,SACC,OACC+D,EAACC,EAAI,CAACC,MAAOxD,EAAqBC,KAAMO,KAAMf,KAAKe,KAAMF,QAASb,KAAKa,SACtEgD,EAAA,MAAA,CAAKE,MAAOxD,EAAqByD,MAChCH,EAAA,MAAA,CAAKE,MAAM,WACVF,EAAA,wBAAA,CACClC,MAAO3B,KAAK2B,MACZL,SAAUtB,KAAKsB,SACf2C,WAAYjE,KAAKiE,YAAcjE,KAAKC,SACpCiE,SAAU,MACVnD,KAAMf,KAAKe,KACXF,QAASb,KAAKa,QACdsD,QAASnE,KAAKmE,QACdC,YAAapE,KAAKoE,YAClBC,IAAKC,GAAOtE,KAAK4B,gBAAkB0C,EACnCC,UAAW,EACXC,gBAAiBxE,KAAKwE,gBACtBC,eAAgBzE,KAAKyE,eACrBC,SAAU1E,KAAKG,SAEhB0D,EAAA,WAAA,CAAUc,KAAK,aAAaZ,MAAM,aAAatC,KAAK,iBACpDoC,EAAA,SAAA,CACCe,OAAM,KAAAC,cACO,KACbC,SAAQ,KACRZ,SAAUlE,KAAKkE,SACfzC,KAAMzB,KAAKyB,KACXH,SAAUtB,KAAKsB,SACf+C,IAAKC,GAAOtE,KAAKkB,UAAYoD,EAAwBS,gBACtCC,EAAoBhF,KAAKsB,UAAS2D,gBAClCD,EAAoBhF,KAAKkE,UAASgB,eACnCF,EAAoBhF,KAAKmE,SAAQgB,mBAC7BnF,KAAKwE,gBAAeY,kBACrBpF,KAAKyE,eAAcY,YACzBrF,KAAK0E,UAEhBb,EAAA,OAAA,SAIHA,EAAA,KAAA,CAAIyB,KAAK,UAAUC,GAAIvF,KAAKG,OAAQ4D,MAAOxD,EAAqBiF,MAC9DxF,KAAK8C,gBAAgBtB,KAAIH,GAExBwC,EAAA,KAAA,CAAIE,MAAOxD,EAAqBkF,KAAMH,KAAK,UACzCjE,EAAOI,KACRoC,EAAA,aAAA,CACC6B,UAAW,4BAA8BrE,EAAOI,KAChDZ,QAAQ,UACR8E,KAAK,OACL5E,KAAK,IAAG6E,eACM,IAAM5F,KAAK6F,YAAYxE,IAErCwC,EAAA,WAAA,CAAUpC,KAAK,eAUf3B,eAAegG,GACtBA,EAAEC,kBACF/F,KAAKgG,QAAU,KACfhG,KAAKiG,SAAStF,KAAKmF,GAGZhG,cAAcgG,GAAgBA,EAAEC,kBACvCD,EAAEC,kBACF/F,KAAKgG,QAAU,MACfhG,KAAKkG,QAAQvF,KAAKmF,GAGXhG,eAAegG,GACtB9F,KAAK2B,MAASmE,EAAEK,OAA6BxE,MAC7CmE,EAAEC,kBAGKjG,gBAAgBgG,GACvBA,EAAEC,kBACF,MAAMpE,EAAQmE,EAAEM,OAChBpG,KAAK0D,aAAa/B,GAClB3B,KAAK2B,MAAQ,GACb3B,KAAK4B,gBAAgByE,aACrBrG,KAAK4B,gBAAgB0E,QAGdxG,YAAYuD,GACnBrD,KAAKqD,aAAaA,GAOnBvD,eAAeyG,GACd,OAAOvG,KAAKkB,UAAUoF,MAAMC,GAO7BzG,eAAe6B,GACd3B,KAAK2B,MAAQA,EAOd7B,oBACC,OAAOE,KAAKkB,UAObpB,qBACC0G,EAAgBxG,KAAKwE,gBAAiB,oBAAqBjE,EAAqBC,MAChFgG,EAAgBxG,KAAKyE,eAAgB,mBAAoBlE,EAAqBC,MAC9EgG,EAAgBxG,KAAK0E,SAAU,YAAanE,EAAqBC,MACjEiG,EAAqBzG,KAAKiE,YAAcjE,KAAKC,SAAUD,KAAKyE,eAAgBlE,EAAqBC","sourcesContent":["/*\n * Multiselect\n */\n\n@import \"../select/gov-form-select-core.scss\";\n$class: \".gov-form-multi-select\";\n\n#{$class} {\n\t@extend %form-select-core;\n\tflex-wrap: wrap;\n\t&__wrap {\n\t\tdisplay: flex;\n\t\tgap: rem-calc(8);\n\t\twidth: 100%;\n\t}\n\t&__list {\n\t\t@extend %reset-ul;\n\t\t@include typography($font-size-xs);\n\t\tdisplay: flex;\n\t\tgap: rem-calc(8);\n\t\tflex-wrap: wrap;\n\t}\n\t&__list > &__item {\n\t\t@extend %reset-ul-li;\n\t\tposition: relative;\n\t\tdisplay: flex;\n\t\tflex: 0 0 auto;\n\t\talign-items: center;\n\t\tpadding: rem-calc(0 0 0 8);\n\t\tbackground: $form-multiselect-bg;\n\t\ttransition: $t linear background-color;\n\t}\n}\n","import { Component, Element, h, State, Prop, Event, EventEmitter, Watch, Host, Method } from '@stencil/core'\nimport { toBoolAttrIfDefined } from '../../../helpers/Dom/template'\nimport { FormMultiselectSizesType, FormMultiselectVariants, FormMultiselectVariantType, FormMultiSelectClass, FormMultiselectSizes } from './constants'\nimport { validateProp } from '../../../helpers/Validate/props'\nimport { validateWcagLabelFor, validateWcagRef } from '../../../helpers/Validate/wcag'\nimport { canValidateWcagOnRender } from '../../../helpers/Dom/win'\nimport { createID, removeDiacritics } from '../../../utils/string.utils'\nimport { delay } from '../../../utils/utils'\nimport { Nullable } from '../../../types/interfaces'\nimport { GovFormMultiSelectItem } from './interfaces'\n\n@Component({\n\ttag: 'gov-form-multi-select',\n\tstyleUrl: 'gov-form-multi-select.scss',\n})\nexport class GovFormMultiSelect {\n\tprivate selectRef?: HTMLSelectElement\n\tprivate autocompleteRef?: HTMLGovFormAutocompleteElement\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\t}\n\n\t@Element() host: HTMLGovFormSelectElement\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 * Style variation of the form select.\n\t */\n\t@Prop() readonly variant?: FormMultiselectVariantType\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 * 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\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 id of a component that describes the input.\n\t */\n\t@Prop({ attribute: 'wcag-described-by' }) readonly wcagDescribedBy: string\n\t/**\n\t * Indicates the id of a component that labels the input.\n\t */\n\t@Prop({ attribute: 'wcag-labelled-by' }) readonly wcagLabelledBy: string\n\t/**\n\t * Indicates the id of a component that describes the input.\n\t */\n\t@Prop({ attribute: 'wcag-owns' }) readonly wcagOwns: string\n\t/**\n\t * Emitted when the select has focus.\n\t */\n\t@Event({ eventName: 'gov-focus' }) govFocus: EventEmitter<FocusEvent>\n\t/**\n\t * Emitted when the select loses focus.\n\t */\n\t@Event({ eventName: 'gov-blur' }) govBlur: EventEmitter<FocusEvent>\n\t/**\n\t * Emitted when the select change value.\n\t */\n\t@Event({ eventName: 'gov-change' }) govChange: EventEmitter<GovFormMultiSelectItem[]>\n\t@State() focused: boolean\n\t@State() value: string\n\t@State() selectedOptions: GovFormMultiSelectItem[] = []\n\n\t@Watch('variant')\n\tvalidateVariant(newValue: string): void {\n\t\tvalidateProp(FormMultiselectVariants, newValue, FormMultiSelectClass.root)\n\t}\n\n\t@Watch('size')\n\tvalidateSize(newValue: string): void {\n\t\tvalidateProp(FormMultiselectSizes, newValue, FormMultiSelectClass.root)\n\t}\n\n\t@Watch('selectedOptions')\n\temitChange(newValue: GovFormMultiSelectItem[]) {\n\t\tthis.govChange.emit(newValue)\n\t}\n\n\tcomponentWillLoad() {\n\t\tthis.validateVariant(this.variant)\n\t\tthis.validateSize(this.size)\n\t}\n\n\tprivate getAvailableOptions(): GovFormMultiSelectItem[] {\n\t\treturn Array.from(this.selectRef.querySelectorAll('option'))\n\t\t\t.filter((option: HTMLOptionElement) => !(option.disabled || option.selected))\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(value => {\n\t\t\t\treturn new Promise(resolve => {\n\t\t\t\t\tconst data = this.getAvailableOptions()\n\t\t\t\t\tif (String(value).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(({ name }) => {\n\t\t\t\t\t\t\tif (!name) return false\n\t\t\t\t\t\t\treturn removeDiacritics(name).toLowerCase().indexOf(removeDiacritics(value).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.then()\n\t}\n\n\tprivate getOptionIndex(value: GovFormMultiSelectItem): number {\n\t\treturn this.selectedOptions.findIndex(option => option.value === value.value && option.name === value.name)\n\t}\n\n\tprivate getOptionElement(value: GovFormMultiSelectItem): Nullable<HTMLOptionElement> {\n\t\treturn this.selectRef.querySelector('option[value=\"' + value.value + '\"]') as HTMLOptionElement\n\t}\n\n\tprivate selectOption(newOption: GovFormMultiSelectItem) {\n\t\tconst index = this.getOptionIndex(newOption)\n\t\tif (index === -1) {\n\t\t\tthis.selectedOptions = [...this.selectedOptions, newOption]\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: GovFormMultiSelectItem) {\n\t\tconst index = this.getOptionIndex(removeOption)\n\t\tif (index !== -1) {\n\t\t\tthis.selectedOptions.splice(index, 1)\n\t\t\tthis.selectedOptions = [...this.selectedOptions]\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.initAutocomplete()\n\t\tawait delay(0)\n\t\tthis.selectRef.querySelectorAll('option').forEach((option: HTMLOptionElement) => {\n\t\t\tif (option.selected) {\n\t\t\t\tthis.selectOption({\n\t\t\t\t\tname: option.textContent,\n\t\t\t\t\tvalue: option.value,\n\t\t\t\t})\n\t\t\t}\n\t\t})\n\t\tif (canValidateWcagOnRender()) {\n\t\t\tawait delay(500)\n\t\t\tawait this.validateWcag()\n\t\t}\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class={FormMultiSelectClass.root} size={this.size} variant={this.variant}>\n\t\t\t\t<div class={FormMultiSelectClass.wrap}>\n\t\t\t\t\t<div class=\"element\">\n\t\t\t\t\t\t<gov-form-autocomplete\n\t\t\t\t\t\t\tvalue={this.value}\n\t\t\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\t\t\tidentifier={this.identifier || this.selectId}\n\t\t\t\t\t\t\trequired={false}\n\t\t\t\t\t\t\tsize={this.size}\n\t\t\t\t\t\t\tvariant={this.variant}\n\t\t\t\t\t\t\tinvalid={this.invalid}\n\t\t\t\t\t\t\tplaceholder={this.placeholder}\n\t\t\t\t\t\t\tref={el => (this.autocompleteRef = el as HTMLGovFormAutocompleteElement)}\n\t\t\t\t\t\t\tminlength={0}\n\t\t\t\t\t\t\twcagDescribedBy={this.wcagDescribedBy}\n\t\t\t\t\t\t\twcagLabelledBy={this.wcagLabelledBy}\n\t\t\t\t\t\t\twcagOwns={this.listId}\n\t\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<select\n\t\t\t\t\t\t\thidden\n\t\t\t\t\t\t\taria-hidden={true}\n\t\t\t\t\t\t\tmultiple\n\t\t\t\t\t\t\trequired={this.required}\n\t\t\t\t\t\t\tname={this.name}\n\t\t\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\t\t\tref={el => (this.selectRef = el as HTMLSelectElement)}\n\t\t\t\t\t\t\taria-disabled={toBoolAttrIfDefined(this.disabled)}\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-describedby={this.wcagDescribedBy}\n\t\t\t\t\t\t\taria-labelledby={this.wcagLabelledBy}\n\t\t\t\t\t\t\taria-owns={this.wcagOwns}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<slot></slot>\n\t\t\t\t\t\t</select>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<ul role=\"listbox\" id={this.listId} class={FormMultiSelectClass.list}>\n\t\t\t\t\t{this.selectedOptions.map(option => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<li class={FormMultiSelectClass.item} role=\"option\">\n\t\t\t\t\t\t\t\t{option.name}\n\t\t\t\t\t\t\t\t<gov-button\n\t\t\t\t\t\t\t\t\twcagLabel={'Odebrat vybranou položku ' + option.name}\n\t\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\t\ttype=\"base\"\n\t\t\t\t\t\t\t\t\tsize=\"s\"\n\t\t\t\t\t\t\t\t\ton-gov-click={() => this.onTagRemove(option)}\n\t\t\t\t\t\t\t\t>\n\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</gov-button>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t)\n\t\t\t\t\t})}\n\t\t\t\t</ul>\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(e)\n\t}\n\n\tprivate onBlurHandler(e: FocusEvent) {e.stopPropagation()\n\t\te.stopPropagation()\n\t\tthis.focused = false\n\t\tthis.govBlur.emit(e)\n\t}\n\n\tprivate onInputHandler(e: Event) {\n\t\tthis.value = (e.target as HTMLSelectElement).value\n\t\te.stopPropagation()\n\t}\n\n\tprivate onSelectHandler(e: CustomEvent) {\n\t\te.stopPropagation()\n\t\tconst value = e.detail as GovFormMultiSelectItem\n\t\tthis.selectOption(value)\n\t\tthis.value = ''\n\t\tthis.autocompleteRef.clearValue()\n\t\tthis.autocompleteRef.focus()\n\t}\n\n\tprivate onTagRemove(removeOption: GovFormMultiSelectItem) {\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.value = value\n\t}\n\n\t/**\n\t * Returns an instance of the native html select element\n\t */\n\t@Method()\n\tasync getInstance(): Promise<HTMLSelectElement> {\n\t\treturn this.selectRef\n\t}\n\n\t/**\n\t * Validate the WCAG attributes of the component\n\t */\n\t@Method()\n\tasync validateWcag(): Promise<void> {\n\t\tvalidateWcagRef(this.wcagDescribedBy, 'wcag-described-by', FormMultiSelectClass.root)\n\t\tvalidateWcagRef(this.wcagLabelledBy, 'wcag-labelled-by', FormMultiSelectClass.root)\n\t\tvalidateWcagRef(this.wcagOwns, 'wcag-owns', FormMultiSelectClass.root)\n\t\tvalidateWcagLabelFor(this.identifier || this.selectId, this.wcagLabelledBy, FormMultiSelectClass.root)\n\t}\n}\n"]}
1
+ {"version":3,"sources":["../../../packages/core/src/components/gov-form/multiselect/gov-form-multi-select.scss?tag=gov-form-multi-select","../../../packages/core/src/components/gov-form/multiselect/gov-form-multi-select.tsx"],"names":["govFormMultiSelectCss","GovFormMultiSelect","[object Object]","hostRef","this","selectId","createID","listId","newValue","validateProp","FormMultiselectVariants","FormMultiSelectClass","root","FormMultiselectSizes","govChange","emit","validateVariant","variant","validateSize","size","Array","from","selectRef","querySelectorAll","filter","option","disabled","selected","map","name","textContent","value","autocompleteRef","addEventListener","onSelectHandler","bind","onInputHandler","onFocusHandler","onBlurHandler","setSearchCallback","Promise","resolve","data","getAvailableOptions","String","length","removeDiacritics","toLowerCase","indexOf","then","selectedOptions","findIndex","querySelector","newOption","index","getOptionIndex","getOptionElement","removeOption","splice","initAutocomplete","delay","forEach","selectOption","canValidateWcagOnRender","validateWcag","h","Host","class","wrap","identifier","required","invalid","placeholder","ref","el","minlength","wcagDescribedBy","wcagLabelledBy","wcagOwns","slot","hidden","aria-hidden","multiple","aria-disabled","toBoolAttrIfDefined","aria-required","aria-invalid","aria-describedby","aria-labelledby","aria-owns","role","id","list","item","wcagLabel","type","on-gov-click","onTagRemove","e","stopPropagation","focused","govFocus","govBlur","target","detail","clearValue","focus","options","validateWcagRef","validateWcagLabelFor"],"mappings":"sZAAA,MAAMA,EAAwB,i6XCejBC,EAAkB,MAO9BC,YAAAC,+MAqBmD,sCASd,2MAoCgB,GAjEpDC,KAAKC,SAAWC,EAAS,aACzBF,KAAKG,OAASD,EAAS,gBAmExBJ,gBAAgBM,GACfC,EAAaC,EAAyBF,EAAUG,EAAqBC,MAItEV,aAAaM,GACZC,EAAaI,EAAsBL,EAAUG,EAAqBC,MAInEV,WAAWM,GACVJ,KAAKU,UAAUC,KAAKP,GAGrBN,oBACCE,KAAKY,gBAAgBZ,KAAKa,SAC1Bb,KAAKc,aAAad,KAAKe,MAGhBjB,sBACP,OAAOkB,MAAMC,KAAKjB,KAAKkB,UAAUC,iBAAiB,WAChDC,QAAQC,KAAgCA,EAAOC,UAAYD,EAAOE,YAClEC,KAAKH,IAAyB,CAAQI,KAAMJ,EAAOK,YAAaC,MAAON,EAAOM,UAGzE7B,mBACPE,KAAK4B,gBAAgBC,iBAAiB,aAAc7B,KAAK8B,gBAAgBC,KAAK/B,OAC9EA,KAAK4B,gBAAgBC,iBAAiB,YAAa7B,KAAKgC,eAAeD,KAAK/B,OAC5EA,KAAK4B,gBAAgBC,iBAAiB,YAAa7B,KAAKiC,eAAeF,KAAK/B,OAC5EA,KAAK4B,gBAAgBC,iBAAiB,WAAY7B,KAAKkC,cAAcH,KAAK/B,OAC1EA,KAAK4B,gBACHO,mBAAkBR,GACX,IAAIS,SAAQC,IAClB,MAAMC,EAAOtC,KAAKuC,sBAClB,GAAIC,OAAOb,GAAOc,SAAW,EAAG,CAC/B,OAAOJ,EAAQC,GAEhBD,EACCC,EAAKlB,QAAO,EAAGK,KAAAA,MACd,IAAKA,EAAM,OAAO,MAClB,OAAOiB,EAAiBjB,GAAMkB,cAAcC,QAAQF,EAAiBf,GAAOgB,gBAAkB,WAKjGE,OAGK/C,eAAe6B,GACtB,OAAO3B,KAAK8C,gBAAgBC,WAAU1B,GAAUA,EAAOM,QAAUA,EAAMA,OAASN,EAAOI,OAASE,EAAMF,OAG/F3B,iBAAiB6B,GACxB,OAAO3B,KAAKkB,UAAU8B,cAAc,iBAAmBrB,EAAMA,MAAQ,MAG9D7B,aAAamD,GACpB,MAAMC,EAAQlD,KAAKmD,eAAeF,GAClC,GAAIC,KAAW,EAAG,CACjBlD,KAAK8C,gBAAkB,IAAI9C,KAAK8C,gBAAiBG,GACjD,MAAM5B,EAASrB,KAAKoD,iBAAiBH,GACrC,GAAI5B,EAAQ,CACXA,EAAOE,SAAW,OAKbzB,aAAauD,GACpB,MAAMH,EAAQlD,KAAKmD,eAAeE,GAClC,GAAIH,KAAW,EAAG,CACjBlD,KAAK8C,gBAAgBQ,OAAOJ,EAAO,GACnClD,KAAK8C,gBAAkB,IAAI9C,KAAK8C,iBAChC,MAAMzB,EAASrB,KAAKoD,iBAAiBC,GACrC,GAAIhC,EAAQ,CACXA,EAAOE,SAAW,QAKrBzB,2BACCE,KAAKuD,yBACCC,EAAM,GACZxD,KAAKkB,UAAUC,iBAAiB,UAAUsC,SAASpC,IAClD,GAAIA,EAAOE,SAAU,CACpBvB,KAAK0D,aAAa,CACjBjC,KAAMJ,EAAOK,YACbC,MAAON,EAAOM,YAIjB,GAAIgC,IAA2B,OACxBH,EAAM,WACNxD,KAAK4D,gBAIb9D,SACC,OACC+D,EAACC,EAAI,CAACC,MAAOxD,EAAqBC,KAAMO,KAAMf,KAAKe,KAAMF,QAASb,KAAKa,SACtEgD,EAAA,MAAA,CAAKE,MAAOxD,EAAqByD,MAChCH,EAAA,MAAA,CAAKE,MAAM,WACVF,EAAA,wBAAA,CACClC,MAAO3B,KAAK2B,MACZL,SAAUtB,KAAKsB,SACf2C,WAAYjE,KAAKiE,YAAcjE,KAAKC,SACpCiE,SAAU,MACVnD,KAAMf,KAAKe,KACXF,QAASb,KAAKa,QACdsD,QAASnE,KAAKmE,QACdC,YAAapE,KAAKoE,YAClBC,IAAKC,GAAOtE,KAAK4B,gBAAkB0C,EACnCC,UAAW,EACXC,gBAAiBxE,KAAKwE,gBACtBC,eAAgBzE,KAAKyE,eACrBC,SAAU1E,KAAKG,SAEhB0D,EAAA,WAAA,CAAUc,KAAK,aAAaZ,MAAM,aAAatC,KAAK,iBACpDoC,EAAA,SAAA,CACCe,OAAM,KAAAC,cACO,KACbC,SAAQ,KACRZ,SAAUlE,KAAKkE,SACfzC,KAAMzB,KAAKyB,KACXH,SAAUtB,KAAKsB,SACf+C,IAAKC,GAAOtE,KAAKkB,UAAYoD,EAAwBS,gBACtCC,EAAoBhF,KAAKsB,UAAS2D,gBAClCD,EAAoBhF,KAAKkE,UAASgB,eACnCF,EAAoBhF,KAAKmE,SAAQgB,mBAC7BnF,KAAKwE,gBAAeY,kBACrBpF,KAAKyE,eAAcY,YACzBrF,KAAK0E,UAEhBb,EAAA,OAAA,SAIHA,EAAA,KAAA,CAAIyB,KAAK,UAAUC,GAAIvF,KAAKG,OAAQ4D,MAAOxD,EAAqBiF,MAC9DxF,KAAK8C,gBAAgBtB,KAAIH,GAExBwC,EAAA,KAAA,CAAIE,MAAOxD,EAAqBkF,KAAMH,KAAK,UACzCjE,EAAOI,KACRoC,EAAA,aAAA,CACC6B,UAAW,4BAA8BrE,EAAOI,KAChDZ,QAAQ,UACR8E,KAAK,OACL5E,KAAK,IAAG6E,eACM,IAAM5F,KAAK6F,YAAYxE,IAErCwC,EAAA,WAAA,CAAUpC,KAAK,eAUf3B,eAAegG,GACtBA,EAAEC,kBACF/F,KAAKgG,QAAU,KACfhG,KAAKiG,SAAStF,KAAKmF,GAGZhG,cAAcgG,GAAgBA,EAAEC,kBACvCD,EAAEC,kBACF/F,KAAKgG,QAAU,MACfhG,KAAKkG,QAAQvF,KAAKmF,GAGXhG,eAAegG,GACtB9F,KAAK2B,MAASmE,EAAEK,OAA6BxE,MAC7CmE,EAAEC,kBAGKjG,gBAAgBgG,GACvBA,EAAEC,kBACF,MAAMpE,EAAQmE,EAAEM,OAChBpG,KAAK0D,aAAa/B,GAClB3B,KAAK2B,MAAQ,GACb3B,KAAK4B,gBAAgByE,aACrBrG,KAAK4B,gBAAgB0E,QAGdxG,YAAYuD,GACnBrD,KAAKqD,aAAaA,GAOnBvD,eAAeyG,GACd,OAAOvG,KAAKkB,UAAUoF,MAAMC,GAO7BzG,eAAe6B,GACd3B,KAAK2B,MAAQA,EAOd7B,oBACC,OAAOE,KAAKkB,UAObpB,qBACC0G,EAAgBxG,KAAKwE,gBAAiB,oBAAqBjE,EAAqBC,MAChFgG,EAAgBxG,KAAKyE,eAAgB,mBAAoBlE,EAAqBC,MAC9EgG,EAAgBxG,KAAK0E,SAAU,YAAanE,EAAqBC,MACjEiG,EAAqBzG,KAAKiE,YAAcjE,KAAKC,SAAUD,KAAKyE,eAAgBlE,EAAqBC","sourcesContent":["/*\n * Multiselect\n */\n\n@import \"../select/gov-form-select-core.scss\";\n$class: \".gov-form-multi-select\";\n\n#{$class} {\n\t@extend %form-select-core;\n\tflex-wrap: wrap;\n\t&__wrap {\n\t\tdisplay: flex;\n\t\tgap: rem-calc(8);\n\t\twidth: 100%;\n\t}\n\t&__list {\n\t\t@extend %reset-ul;\n\t\t@include typography($font-size-xs);\n\t\tdisplay: flex;\n\t\tgap: rem-calc(8);\n\t\tflex-wrap: wrap;\n\t}\n\t&__list > &__item {\n\t\t@extend %reset-ul-li;\n\t\tposition: relative;\n\t\tdisplay: flex;\n\t\tflex: 0 0 auto;\n\t\talign-items: center;\n\t\tpadding: rem-calc(0 0 0 8);\n\t\tbackground: $form-multiselect-bg;\n\t\ttransition: $t linear background-color;\n\t}\n}\n","import { Component, Element, h, State, Prop, Event, EventEmitter, Watch, Host, Method } from '@stencil/core'\nimport { toBoolAttrIfDefined } from '../../../helpers/Dom/template'\nimport { FormMultiselectSizesType, FormMultiselectVariants, FormMultiselectVariantType, FormMultiSelectClass, FormMultiselectSizes } from './constants'\nimport { validateProp } from '../../../helpers/Validate/props'\nimport { validateWcagLabelFor, validateWcagRef } from '../../../helpers/Validate/wcag'\nimport { canValidateWcagOnRender } from '../../../helpers/Dom/win'\nimport { createID, removeDiacritics } from '../../../utils/string.utils'\nimport { delay } from '../../../utils/utils'\nimport { Nullable } from '../../../types/interfaces'\nimport { GovFormMultiSelectItem } from './interfaces'\n\n@Component({\n\ttag: 'gov-form-multi-select',\n\tstyleUrl: 'gov-form-multi-select.scss',\n})\nexport class GovFormMultiSelect {\n\tprivate selectRef?: HTMLSelectElement\n\tprivate autocompleteRef?: HTMLGovFormAutocompleteElement\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\t}\n\n\t@Element() host: HTMLGovFormSelectElement\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 * Style variation of the form select.\n\t */\n\t@Prop() readonly variant?: FormMultiselectVariantType\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 * 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\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 id of a component that describes the input.\n\t */\n\t@Prop({ attribute: 'wcag-described-by' }) readonly wcagDescribedBy: string\n\t/**\n\t * Indicates the id of a component that labels the input.\n\t */\n\t@Prop({ attribute: 'wcag-labelled-by' }) readonly wcagLabelledBy: string\n\t/**\n\t * Indicates the id of a component that describes the input.\n\t */\n\t@Prop({ attribute: 'wcag-owns' }) readonly wcagOwns: string\n\t/**\n\t * Emitted when the select has focus.\n\t */\n\t@Event({ eventName: 'gov-focus' }) govFocus: EventEmitter<FocusEvent>\n\t/**\n\t * Emitted when the select loses focus.\n\t */\n\t@Event({ eventName: 'gov-blur' }) govBlur: EventEmitter<FocusEvent>\n\t/**\n\t * Emitted when the select change value.\n\t */\n\t@Event({ eventName: 'gov-change' }) govChange: EventEmitter<GovFormMultiSelectItem[]>\n\t@State() focused: boolean\n\t@State() value: string\n\t@State() selectedOptions: GovFormMultiSelectItem[] = []\n\n\t@Watch('variant')\n\tvalidateVariant(newValue: string): void {\n\t\tvalidateProp(FormMultiselectVariants, newValue, FormMultiSelectClass.root)\n\t}\n\n\t@Watch('size')\n\tvalidateSize(newValue: string): void {\n\t\tvalidateProp(FormMultiselectSizes, newValue, FormMultiSelectClass.root)\n\t}\n\n\t@Watch('selectedOptions')\n\temitChange(newValue: GovFormMultiSelectItem[]) {\n\t\tthis.govChange.emit(newValue)\n\t}\n\n\tcomponentWillLoad() {\n\t\tthis.validateVariant(this.variant)\n\t\tthis.validateSize(this.size)\n\t}\n\n\tprivate getAvailableOptions(): GovFormMultiSelectItem[] {\n\t\treturn Array.from(this.selectRef.querySelectorAll('option'))\n\t\t\t.filter((option: HTMLOptionElement) => !(option.disabled || option.selected))\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(value => {\n\t\t\t\treturn new Promise(resolve => {\n\t\t\t\t\tconst data = this.getAvailableOptions()\n\t\t\t\t\tif (String(value).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(({ name }) => {\n\t\t\t\t\t\t\tif (!name) return false\n\t\t\t\t\t\t\treturn removeDiacritics(name).toLowerCase().indexOf(removeDiacritics(value).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.then()\n\t}\n\n\tprivate getOptionIndex(value: GovFormMultiSelectItem): number {\n\t\treturn this.selectedOptions.findIndex(option => option.value === value.value && option.name === value.name)\n\t}\n\n\tprivate getOptionElement(value: GovFormMultiSelectItem): Nullable<HTMLOptionElement> {\n\t\treturn this.selectRef.querySelector('option[value=\"' + value.value + '\"]') as HTMLOptionElement\n\t}\n\n\tprivate selectOption(newOption: GovFormMultiSelectItem) {\n\t\tconst index = this.getOptionIndex(newOption)\n\t\tif (index === -1) {\n\t\t\tthis.selectedOptions = [...this.selectedOptions, newOption]\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: GovFormMultiSelectItem) {\n\t\tconst index = this.getOptionIndex(removeOption)\n\t\tif (index !== -1) {\n\t\t\tthis.selectedOptions.splice(index, 1)\n\t\t\tthis.selectedOptions = [...this.selectedOptions]\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.initAutocomplete()\n\t\tawait delay(0)\n\t\tthis.selectRef.querySelectorAll('option').forEach((option: HTMLOptionElement) => {\n\t\t\tif (option.selected) {\n\t\t\t\tthis.selectOption({\n\t\t\t\t\tname: option.textContent,\n\t\t\t\t\tvalue: option.value,\n\t\t\t\t})\n\t\t\t}\n\t\t})\n\t\tif (canValidateWcagOnRender()) {\n\t\t\tawait delay(500)\n\t\t\tawait this.validateWcag()\n\t\t}\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class={FormMultiSelectClass.root} size={this.size} variant={this.variant}>\n\t\t\t\t<div class={FormMultiSelectClass.wrap}>\n\t\t\t\t\t<div class=\"element\">\n\t\t\t\t\t\t<gov-form-autocomplete\n\t\t\t\t\t\t\tvalue={this.value}\n\t\t\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\t\t\tidentifier={this.identifier || this.selectId}\n\t\t\t\t\t\t\trequired={false}\n\t\t\t\t\t\t\tsize={this.size}\n\t\t\t\t\t\t\tvariant={this.variant}\n\t\t\t\t\t\t\tinvalid={this.invalid}\n\t\t\t\t\t\t\tplaceholder={this.placeholder}\n\t\t\t\t\t\t\tref={el => (this.autocompleteRef = el as HTMLGovFormAutocompleteElement)}\n\t\t\t\t\t\t\tminlength={0}\n\t\t\t\t\t\t\twcagDescribedBy={this.wcagDescribedBy}\n\t\t\t\t\t\t\twcagLabelledBy={this.wcagLabelledBy}\n\t\t\t\t\t\t\twcagOwns={this.listId}\n\t\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<select\n\t\t\t\t\t\t\thidden\n\t\t\t\t\t\t\taria-hidden={true}\n\t\t\t\t\t\t\tmultiple\n\t\t\t\t\t\t\trequired={this.required}\n\t\t\t\t\t\t\tname={this.name}\n\t\t\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\t\t\tref={el => (this.selectRef = el as HTMLSelectElement)}\n\t\t\t\t\t\t\taria-disabled={toBoolAttrIfDefined(this.disabled)}\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-describedby={this.wcagDescribedBy}\n\t\t\t\t\t\t\taria-labelledby={this.wcagLabelledBy}\n\t\t\t\t\t\t\taria-owns={this.wcagOwns}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<slot></slot>\n\t\t\t\t\t\t</select>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<ul role=\"listbox\" id={this.listId} class={FormMultiSelectClass.list}>\n\t\t\t\t\t{this.selectedOptions.map(option => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<li class={FormMultiSelectClass.item} role=\"option\">\n\t\t\t\t\t\t\t\t{option.name}\n\t\t\t\t\t\t\t\t<gov-button\n\t\t\t\t\t\t\t\t\twcagLabel={'Odebrat vybranou položku ' + option.name}\n\t\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\t\ttype=\"base\"\n\t\t\t\t\t\t\t\t\tsize=\"s\"\n\t\t\t\t\t\t\t\t\ton-gov-click={() => this.onTagRemove(option)}\n\t\t\t\t\t\t\t\t>\n\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</gov-button>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t)\n\t\t\t\t\t})}\n\t\t\t\t</ul>\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(e)\n\t}\n\n\tprivate onBlurHandler(e: FocusEvent) {e.stopPropagation()\n\t\te.stopPropagation()\n\t\tthis.focused = false\n\t\tthis.govBlur.emit(e)\n\t}\n\n\tprivate onInputHandler(e: Event) {\n\t\tthis.value = (e.target as HTMLSelectElement).value\n\t\te.stopPropagation()\n\t}\n\n\tprivate onSelectHandler(e: CustomEvent) {\n\t\te.stopPropagation()\n\t\tconst value = e.detail as GovFormMultiSelectItem\n\t\tthis.selectOption(value)\n\t\tthis.value = ''\n\t\tthis.autocompleteRef.clearValue()\n\t\tthis.autocompleteRef.focus()\n\t}\n\n\tprivate onTagRemove(removeOption: GovFormMultiSelectItem) {\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.value = value\n\t}\n\n\t/**\n\t * Returns an instance of the native html select element\n\t */\n\t@Method()\n\tasync getInstance(): Promise<HTMLSelectElement> {\n\t\treturn this.selectRef\n\t}\n\n\t/**\n\t * Validate the WCAG attributes of the component\n\t */\n\t@Method()\n\tasync validateWcag(): Promise<void> {\n\t\tvalidateWcagRef(this.wcagDescribedBy, 'wcag-described-by', FormMultiSelectClass.root)\n\t\tvalidateWcagRef(this.wcagLabelledBy, 'wcag-labelled-by', FormMultiSelectClass.root)\n\t\tvalidateWcagRef(this.wcagOwns, 'wcag-owns', FormMultiSelectClass.root)\n\t\tvalidateWcagLabelFor(this.identifier || this.selectId, this.wcagLabelledBy, FormMultiSelectClass.root)\n\t}\n}\n"]}
@@ -0,0 +1,2 @@
1
+ import{a as t,r as s,h as i,H as n,g as o}from"./p-4af5e4f4.js";import{i as e}from"./p-c20102ff.js";import{g as a}from"./p-3f37ddb6.js";import"./p-03990da5.js";var r;(function(t){t["BASIC"]="basic";t["COMPLEX"]="complex";t["COLORED"]="colored"})(r||(r={}));const c={root:"gov-icon",holder:"gov-icon__holder"};const h="0.0.14";const l=()=>h;const f={};const p={};const d=t=>t.startsWith("http://")||t.startsWith("https://");const u=(s,i,n)=>{if(d(s)){return`${s}/${n}/${i}.svg?v=${l()}`}return t(`${s}/${n}/${i}.svg`)+`?v=${l()}`};async function g({name:t,type:s}){if(f[t]){return f[t]}if(!p[t]){p[t]=fetch(u(e(),t,s)).then((t=>{if(t.status===200){return t.text()}else{throw new Error("Gov Icon doesn't exists")}}))}const i=await p[t];f[t]=i;return i}const m=".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-icon{display:inline-flex}.gov-icon__holder,.gov-icon svg{display:inline-flex;width:100%;height:100%}";const y=class{constructor(t){s(this,t);this.name=null;this.type="basic";this.iconData=undefined;this.visible=false;this.error=false;this.h=a(this.host)}async loadIconPathData(){const{name:t,visible:s,type:i}=this;if(!t||!s){return}try{this.iconData=await g({name:t,type:i})}catch(t){this.error=true}}connectedCallback(){this.waitUntilVisible((async()=>{this.visible=true;await this.loadIconPathData()}))}disconnectedCallback(){if(this.intersectionObserver){this.intersectionObserver.disconnect();this.intersectionObserver=null}}async componentWillLoad(){await this.loadIconPathData()}waitUntilVisible(t){if(typeof window==="undefined"||!window.IntersectionObserver){t();return}this.intersectionObserver=new IntersectionObserver((s=>{s.forEach((s=>{if(s.isIntersecting){this.intersectionObserver.disconnect();this.intersectionObserver=null;t()}}))}),{rootMargin:"50px"});this.intersectionObserver.observe(this.host)}render(){if(this.error){return null}return i(n,{class:this.h.classes(c.root)},i("span",{class:c.holder,innerHTML:this.iconData}))}static get assetsDirs(){return["assets"]}get host(){return o(this)}static get watchers(){return{name:["loadIconPathData"]}}};y.style=m;export{y as gov_icon};
2
+ //# sourceMappingURL=p-1c877e8e.entry.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../packages/core/src/components/gov-icon/constants.ts","../../../packages/core/src/utils/ds.utils.ts","../../../packages/core/src/utils/icon.utils.ts","../../../packages/core/src/components/gov-icon/gov-icon.scss?tag=gov-icon","../../../packages/core/src/components/gov-icon/gov-icon.tsx"],"names":["Types","IconClass","root","holder","dsVersion","version","iconCache","requestCache","isExternalUrl","path","startsWith","iconUrl","name","type","getAssetPath","async","fetchIcon","fetch","iconsPath","then","resp","status","text","Error","govIconCss","GovIcon","[object Object]","hostRef","this","h","govHost","host","visible","iconData","e","error","waitUntilVisible","loadIconPathData","intersectionObserver","disconnect","callback","window","IntersectionObserver","entries","forEach","entry","isIntersecting","rootMargin","observe","Host","class","classes","innerHTML"],"mappings":"gKAEA,IAAKA,GAAL,SAAKA,GACJA,EAAA,SAAA,QACAA,EAAA,WAAA,UACAA,EAAA,WAAA,WAHD,CAAKA,IAAAA,EAAK,KAOH,MAAMC,EAAY,CACxBC,KAAM,WACNC,OAAQ,qCCTF,MAAMC,EAAY,IACjBC,ECCR,MAAMC,EAAuC,GAC7C,MAAMC,EAAmD,GAEzD,MAAMC,EAAiBC,GAAiBA,EAAKC,WAAW,YAAcD,EAAKC,WAAW,YACtF,MAAMC,EAAU,CAACF,EAAcG,EAAcC,KAC5C,GAAIL,EAAcC,GAAO,CACxB,MAAO,GAAGA,KAAQI,KAAQD,WAAcR,MAEzC,OAAOU,EAAa,GAAGL,KAAQI,KAAQD,SAAc,MAAMR,OAGrDW,eAAeC,GAAUJ,KAAEA,EAAIC,KAAEA,IACvC,GAAIP,EAAUM,GAAO,CACpB,OAAON,EAAUM,GAElB,IAAKL,EAAaK,GAAO,CACxBL,EAAaK,GAAQK,MAAMN,EAAQO,IAAaN,EAAMC,IAAOM,MAAKC,IACjE,GAAIA,EAAKC,SAAW,IAAK,CACxB,OAAOD,EAAKE,WACN,CACN,MAAM,IAAIC,MAAM,+BAInB,MAAMd,QAAaF,EAAaK,GAChCN,EAAUM,GAAQH,EAClB,OAAOA,EC9BR,MAAMe,EAAa,uSCWNC,EAAO,MAGnBC,YAAAC,uBAOuB,eAIF,6CAEM,iBACF,MAbxBC,KAAKC,EAAIC,EAAQF,KAAKG,MAiBfL,yBACP,MAAMd,KAAEA,EAAIoB,QAAEA,EAAOnB,KAAEA,GAASe,KAChC,IAAyBhB,IAASoB,EAAS,CAC1C,OAED,IACCJ,KAAKK,eAAiBjB,EAAU,CAAEJ,KAAAA,EAAMC,KAAAA,IACvC,MAAOqB,GACRN,KAAKO,MAAQ,MAIfT,oBACCE,KAAKQ,kBAAiBrB,UACrBa,KAAKI,QAAU,WACTJ,KAAKS,sBAIbX,uBACC,GAAIE,KAAKU,qBAAsB,CAC9BV,KAAKU,qBAAqBC,aAC1BX,KAAKU,qBAAuB,MAI9BZ,gCACOE,KAAKS,mBAGJX,iBAAiBc,GACxB,UAA+BC,SAAW,cAAiBA,OAAeC,qBAAsB,CAC/FF,IACA,OAEDZ,KAAKU,qBAAuB,IAAII,sBAC/BC,IACCA,EAAQC,SAAQC,IACf,GAAIA,EAAMC,eAAgB,CACzBlB,KAAKU,qBAAqBC,aAC1BX,KAAKU,qBAAuB,KAC5BE,UAIH,CAAEO,WAAY,SAEfnB,KAAKU,qBAAqBU,QAAQpB,KAAKG,MAGxCL,SACC,GAAIE,KAAKO,MAAO,CACf,OAAO,KAER,OACCN,EAACoB,EAAI,CAACC,MAAOtB,KAAKC,EAAEsB,QAAQlD,EAAUC,OACrC2B,EAAA,OAAA,CAAMqB,MAAOjD,EAAUE,OAAQiD,UAAWxB,KAAKK","sourcesContent":["import { ValueOf } from '../../types/interfaces'\n\nenum Types {\n\tBASIC = 'basic',\n\tCOMPLEX = 'complex',\n\tCOLORED = 'colored',\n}\nexport type Type = `${ValueOf<typeof Types>}`\n\nexport const IconClass = {\n\troot: 'gov-icon',\n\tholder: 'gov-icon__holder',\n}\n","import { version } from '../../package.json'\n\nexport const dsVersion = (): string => {\n\treturn version\n}\n","import { getAssetPath } from '@stencil/core'\nimport { dsVersion } from './ds.utils'\nimport { iconsPath } from '../helpers/Dom/win'\n\nconst iconCache: { [key: string]: string } = {}\nconst requestCache: { [key: string]: Promise<string> } = {}\n\nconst isExternalUrl = (path: string) => path.startsWith('http://') || path.startsWith('https://')\nconst iconUrl = (path: string, name: string, type: string) => {\n\tif (isExternalUrl(path)) {\n\t\treturn `${path}/${type}/${name}.svg?v=${dsVersion()}`\n\t}\n\treturn getAssetPath(`${path}/${type}/${name}.svg`) + `?v=${dsVersion()}`\n}\n\nexport async function fetchIcon({ name, type }: { name: string; type: string }): Promise<string> {\n\tif (iconCache[name]) {\n\t\treturn iconCache[name]\n\t}\n\tif (!requestCache[name]) {\n\t\trequestCache[name] = fetch(iconUrl(iconsPath(), name, type)).then(resp => {\n\t\t\tif (resp.status === 200) {\n\t\t\t\treturn resp.text()\n\t\t\t} else {\n\t\t\t\tthrow new Error(\"Gov Icon doesn't exists\")\n\t\t\t}\n\t\t})\n\t}\n\tconst path = await requestCache[name]\n\ticonCache[name] = path\n\treturn path\n}\n","/*\n * Icon\n */\n\n$class: \".gov-icon\";\n\n#{$class} {\n\tdisplay: inline-flex;\n\t&__holder,\n\tsvg {\n\t\tdisplay: inline-flex;\n\t\twidth: 100%;\n\t\theight: 100%;\n\t}\n}\n","import { Build, Component, Element, h, Prop, State, Watch, Host } from '@stencil/core'\nimport { IconClass, Type } from './constants'\nimport { fetchIcon } from '../../utils/icon.utils'\nimport { govHost } from '../../helpers/Dom/template'\nimport { GovHost } from '../../helpers/Dom/template.types'\n\n@Component({\n\tassetsDirs: ['assets'],\n\tstyleUrl: 'gov-icon.scss',\n\ttag: 'gov-icon',\n})\nexport class GovIcon {\n\tprivate h: GovHost\n\n\tconstructor() {\n\t\tthis.h = govHost(this.host)\n\t}\n\t@Element() host: HTMLGovIconElement\n\t/**\n\t * Name of icon\n\t */\n\t@Prop() name: string = null\n\t/**\n\t * Type of icon\n\t */\n\t@Prop() type: Type = 'basic'\n\t@State() private iconData: string\n\t@State() private visible = false\n\t@State() private error = false\n\tprivate intersectionObserver: IntersectionObserver\n\n\t@Watch('name')\n\tprivate async loadIconPathData(): Promise<void> {\n\t\tconst { name, visible, type } = this\n\t\tif (!Build.isBrowser || !name || !visible) {\n\t\t\treturn\n\t\t}\n\t\ttry {\n\t\t\tthis.iconData = await fetchIcon({ name, type })\n\t\t} catch (e) {\n\t\t\tthis.error = true\n\t\t}\n\t}\n\n\tconnectedCallback(): void {\n\t\tthis.waitUntilVisible(async () => {\n\t\t\tthis.visible = true\n\t\t\tawait this.loadIconPathData()\n\t\t})\n\t}\n\n\tdisconnectedCallback(): void {\n\t\tif (this.intersectionObserver) {\n\t\t\tthis.intersectionObserver.disconnect()\n\t\t\tthis.intersectionObserver = null\n\t\t}\n\t}\n\n\tasync componentWillLoad(): Promise<void> {\n\t\tawait this.loadIconPathData()\n\t}\n\n\tprivate waitUntilVisible(callback: () => void): void {\n\t\tif (!Build.isBrowser || typeof window === 'undefined' || !(window as any).IntersectionObserver) {\n\t\t\tcallback()\n\t\t\treturn\n\t\t}\n\t\tthis.intersectionObserver = new IntersectionObserver(\n\t\t\tentries => {\n\t\t\t\tentries.forEach(entry => {\n\t\t\t\t\tif (entry.isIntersecting) {\n\t\t\t\t\t\tthis.intersectionObserver.disconnect()\n\t\t\t\t\t\tthis.intersectionObserver = null\n\t\t\t\t\t\tcallback()\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t},\n\t\t\t{ rootMargin: '50px' }\n\t\t)\n\t\tthis.intersectionObserver.observe(this.host)\n\t}\n\n\trender() {\n\t\tif (this.error) {\n\t\t\treturn null\n\t\t}\n\t\treturn (\n\t\t\t<Host class={this.h.classes(IconClass.root)}>\n\t\t\t\t<span class={IconClass.holder} innerHTML={this.iconData}></span>\n\t\t\t</Host>\n\t\t)\n\t}\n}\n"]}
1
+ {"version":3,"sources":["../../../packages/core/src/components/gov-icon/constants.ts","../../../packages/core/src/utils/ds.utils.ts","../../../packages/core/src/utils/icon.utils.ts","../../../packages/core/src/components/gov-icon/gov-icon.scss?tag=gov-icon","../../../packages/core/src/components/gov-icon/gov-icon.tsx"],"names":["Types","IconClass","root","holder","dsVersion","version","iconCache","requestCache","isExternalUrl","path","startsWith","iconUrl","name","type","getAssetPath","async","fetchIcon","fetch","iconsPath","then","resp","status","text","Error","govIconCss","GovIcon","[object Object]","hostRef","this","h","govHost","host","visible","iconData","e","error","waitUntilVisible","loadIconPathData","intersectionObserver","disconnect","callback","window","IntersectionObserver","entries","forEach","entry","isIntersecting","rootMargin","observe","Host","class","classes","innerHTML"],"mappings":"gKAEA,IAAKA,GAAL,SAAKA,GACJA,EAAA,SAAA,QACAA,EAAA,WAAA,UACAA,EAAA,WAAA,WAHD,CAAKA,IAAAA,EAAK,KAOH,MAAMC,EAAY,CACxBC,KAAM,WACNC,OAAQ,qCCTF,MAAMC,EAAY,IACjBC,ECCR,MAAMC,EAAuC,GAC7C,MAAMC,EAAmD,GAEzD,MAAMC,EAAiBC,GAAiBA,EAAKC,WAAW,YAAcD,EAAKC,WAAW,YACtF,MAAMC,EAAU,CAACF,EAAcG,EAAcC,KAC5C,GAAIL,EAAcC,GAAO,CACxB,MAAO,GAAGA,KAAQI,KAAQD,WAAcR,MAEzC,OAAOU,EAAa,GAAGL,KAAQI,KAAQD,SAAc,MAAMR,OAGrDW,eAAeC,GAAUJ,KAAEA,EAAIC,KAAEA,IACvC,GAAIP,EAAUM,GAAO,CACpB,OAAON,EAAUM,GAElB,IAAKL,EAAaK,GAAO,CACxBL,EAAaK,GAAQK,MAAMN,EAAQO,IAAaN,EAAMC,IAAOM,MAAKC,IACjE,GAAIA,EAAKC,SAAW,IAAK,CACxB,OAAOD,EAAKE,WACN,CACN,MAAM,IAAIC,MAAM,+BAInB,MAAMd,QAAaF,EAAaK,GAChCN,EAAUM,GAAQH,EAClB,OAAOA,EC9BR,MAAMe,EAAa,wcCWNC,EAAO,MAGnBC,YAAAC,uBAOuB,eAIF,6CAEM,iBACF,MAbxBC,KAAKC,EAAIC,EAAQF,KAAKG,MAiBfL,yBACP,MAAMd,KAAEA,EAAIoB,QAAEA,EAAOnB,KAAEA,GAASe,KAChC,IAAyBhB,IAASoB,EAAS,CAC1C,OAED,IACCJ,KAAKK,eAAiBjB,EAAU,CAAEJ,KAAAA,EAAMC,KAAAA,IACvC,MAAOqB,GACRN,KAAKO,MAAQ,MAIfT,oBACCE,KAAKQ,kBAAiBrB,UACrBa,KAAKI,QAAU,WACTJ,KAAKS,sBAIbX,uBACC,GAAIE,KAAKU,qBAAsB,CAC9BV,KAAKU,qBAAqBC,aAC1BX,KAAKU,qBAAuB,MAI9BZ,gCACOE,KAAKS,mBAGJX,iBAAiBc,GACxB,UAA+BC,SAAW,cAAiBA,OAAeC,qBAAsB,CAC/FF,IACA,OAEDZ,KAAKU,qBAAuB,IAAII,sBAC/BC,IACCA,EAAQC,SAAQC,IACf,GAAIA,EAAMC,eAAgB,CACzBlB,KAAKU,qBAAqBC,aAC1BX,KAAKU,qBAAuB,KAC5BE,UAIH,CAAEO,WAAY,SAEfnB,KAAKU,qBAAqBU,QAAQpB,KAAKG,MAGxCL,SACC,GAAIE,KAAKO,MAAO,CACf,OAAO,KAER,OACCN,EAACoB,EAAI,CAACC,MAAOtB,KAAKC,EAAEsB,QAAQlD,EAAUC,OACrC2B,EAAA,OAAA,CAAMqB,MAAOjD,EAAUE,OAAQiD,UAAWxB,KAAKK","sourcesContent":["import { ValueOf } from '../../types/interfaces'\n\nenum Types {\n\tBASIC = 'basic',\n\tCOMPLEX = 'complex',\n\tCOLORED = 'colored',\n}\nexport type Type = `${ValueOf<typeof Types>}`\n\nexport const IconClass = {\n\troot: 'gov-icon',\n\tholder: 'gov-icon__holder',\n}\n","import { version } from '../../package.json'\n\nexport const dsVersion = (): string => {\n\treturn version\n}\n","import { getAssetPath } from '@stencil/core'\nimport { dsVersion } from './ds.utils'\nimport { iconsPath } from '../helpers/Dom/win'\n\nconst iconCache: { [key: string]: string } = {}\nconst requestCache: { [key: string]: Promise<string> } = {}\n\nconst isExternalUrl = (path: string) => path.startsWith('http://') || path.startsWith('https://')\nconst iconUrl = (path: string, name: string, type: string) => {\n\tif (isExternalUrl(path)) {\n\t\treturn `${path}/${type}/${name}.svg?v=${dsVersion()}`\n\t}\n\treturn getAssetPath(`${path}/${type}/${name}.svg`) + `?v=${dsVersion()}`\n}\n\nexport async function fetchIcon({ name, type }: { name: string; type: string }): Promise<string> {\n\tif (iconCache[name]) {\n\t\treturn iconCache[name]\n\t}\n\tif (!requestCache[name]) {\n\t\trequestCache[name] = fetch(iconUrl(iconsPath(), name, type)).then(resp => {\n\t\t\tif (resp.status === 200) {\n\t\t\t\treturn resp.text()\n\t\t\t} else {\n\t\t\t\tthrow new Error(\"Gov Icon doesn't exists\")\n\t\t\t}\n\t\t})\n\t}\n\tconst path = await requestCache[name]\n\ticonCache[name] = path\n\treturn path\n}\n","/*\n * Icon\n */\n\n$class: \".gov-icon\";\n\n#{$class} {\n\tdisplay: inline-flex;\n\t&__holder,\n\tsvg {\n\t\tdisplay: inline-flex;\n\t\twidth: 100%;\n\t\theight: 100%;\n\t}\n}\n","import { Build, Component, Element, h, Prop, State, Watch, Host } from '@stencil/core'\nimport { IconClass, Type } from './constants'\nimport { fetchIcon } from '../../utils/icon.utils'\nimport { govHost } from '../../helpers/Dom/template'\nimport { GovHost } from '../../helpers/Dom/template.types'\n\n@Component({\n\tassetsDirs: ['assets'],\n\tstyleUrl: 'gov-icon.scss',\n\ttag: 'gov-icon',\n})\nexport class GovIcon {\n\tprivate h: GovHost\n\n\tconstructor() {\n\t\tthis.h = govHost(this.host)\n\t}\n\t@Element() host: HTMLGovIconElement\n\t/**\n\t * Name of icon\n\t */\n\t@Prop() name: string = null\n\t/**\n\t * Type of icon\n\t */\n\t@Prop() type: Type = 'basic'\n\t@State() private iconData: string\n\t@State() private visible = false\n\t@State() private error = false\n\tprivate intersectionObserver: IntersectionObserver\n\n\t@Watch('name')\n\tprivate async loadIconPathData(): Promise<void> {\n\t\tconst { name, visible, type } = this\n\t\tif (!Build.isBrowser || !name || !visible) {\n\t\t\treturn\n\t\t}\n\t\ttry {\n\t\t\tthis.iconData = await fetchIcon({ name, type })\n\t\t} catch (e) {\n\t\t\tthis.error = true\n\t\t}\n\t}\n\n\tconnectedCallback(): void {\n\t\tthis.waitUntilVisible(async () => {\n\t\t\tthis.visible = true\n\t\t\tawait this.loadIconPathData()\n\t\t})\n\t}\n\n\tdisconnectedCallback(): void {\n\t\tif (this.intersectionObserver) {\n\t\t\tthis.intersectionObserver.disconnect()\n\t\t\tthis.intersectionObserver = null\n\t\t}\n\t}\n\n\tasync componentWillLoad(): Promise<void> {\n\t\tawait this.loadIconPathData()\n\t}\n\n\tprivate waitUntilVisible(callback: () => void): void {\n\t\tif (!Build.isBrowser || typeof window === 'undefined' || !(window as any).IntersectionObserver) {\n\t\t\tcallback()\n\t\t\treturn\n\t\t}\n\t\tthis.intersectionObserver = new IntersectionObserver(\n\t\t\tentries => {\n\t\t\t\tentries.forEach(entry => {\n\t\t\t\t\tif (entry.isIntersecting) {\n\t\t\t\t\t\tthis.intersectionObserver.disconnect()\n\t\t\t\t\t\tthis.intersectionObserver = null\n\t\t\t\t\t\tcallback()\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t},\n\t\t\t{ rootMargin: '50px' }\n\t\t)\n\t\tthis.intersectionObserver.observe(this.host)\n\t}\n\n\trender() {\n\t\tif (this.error) {\n\t\t\treturn null\n\t\t}\n\t\treturn (\n\t\t\t<Host class={this.h.classes(IconClass.root)}>\n\t\t\t\t<span class={IconClass.holder} innerHTML={this.iconData}></span>\n\t\t\t</Host>\n\t\t)\n\t}\n}\n"]}
@@ -0,0 +1,2 @@
1
+ import{r as o,h as r,H as e,g as i}from"./p-4af5e4f4.js";import{g as t}from"./p-3f37ddb6.js";const n={root:"gov-error-code",icon:"gov-error-code__icon",holder:"gov-error-code__holder",content:"gov-error-code__content"};const a=".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-error-code{position:relative;display:block;width:100%}.gov-error-code__holder{margin:0 auto;text-align:center}.gov-error-code__content>*:last-child{margin-bottom:0}.gov-error-code__icon{display:flex;justify-content:center;align-items:center;width:9.375rem;height:9.375rem;margin:0 auto 1.5rem;border-radius:50%;background:var(--gov-error-icon-circle-bg, linear-gradient(to bottom, var(--gov-color-primary-200), var(--gov-color-neutral-white)));color:var(--gov-error-icon-color, var(--gov-color-primary))}.gov-error-code__icon>*{width:7.125rem;height:7.125rem}@media (min-width: 48em){.gov-error-code__icon{width:12.5rem;height:12.5rem;margin:0 auto 2rem}.gov-error-code__icon>*{width:9.5rem;height:9.5rem}}";const c=class{constructor(r){o(this,r);this.h=t(this.host)}render(){return r(e,{class:this.h.classes(n.root)},r("div",{class:n.holder},this.h.hasSlot("icon")&&r("div",{class:n.icon},r("slot",{name:"icon"})),r("div",{class:n.content},r("slot",null))))}get host(){return i(this)}};c.style=a;export{c as gov_error_code};
2
+ //# sourceMappingURL=p-1def0eb2.entry.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../packages/core/src/components/gov-error-code/constants.ts","../../../packages/core/src/components/gov-error-code/gov-error-code.scss?tag=gov-error-code","../../../packages/core/src/components/gov-error-code/gov-error-code.tsx"],"names":["ErrorCodeClass","root","icon","holder","content","govErrorCodeCss","GovErrorCode","[object Object]","hostRef","this","h","govHost","host","Host","class","classes","hasSlot","name"],"mappings":"6FAAO,MAAMA,EAAiB,CAC7BC,KAAM,iBACNC,KAAM,uBACNC,OAAQ,yBACRC,QAAS,2BCJV,MAAMC,EAAkB,q4BCSXC,EAAY,MAGxBC,YAAAC,aACCC,KAAKC,EAAIC,EAAQF,KAAKG,MAKvBL,SACC,OACCG,EAACG,EAAI,CAACC,MAAOL,KAAKC,EAAEK,QAAQf,EAAeC,OAC1CS,EAAA,MAAA,CAAKI,MAAOd,EAAeG,QACzBM,KAAKC,EAAEM,QAAQ,SACfN,EAAA,MAAA,CAAKI,MAAOd,EAAeE,MAC1BQ,EAAA,OAAA,CAAMO,KAAK,UAGbP,EAAA,MAAA,CAAKI,MAAOd,EAAeI,SAC1BM,EAAA,OAAA","sourcesContent":["export const ErrorCodeClass = {\n\troot: 'gov-error-code',\n\ticon: 'gov-error-code__icon',\n\tholder: 'gov-error-code__holder',\n\tcontent: 'gov-error-code__content',\n}\n","/*\n * Alert\n */\n\n$class: \".gov-error-code\";\n\n#{$class} {\n\t@include base();\n\t&__holder {\n\t\tmargin: 0 auto;\n\t\ttext-align: center;\n\t}\n\t&__content {\n\t\t@include reset-last-margin();\n\t}\n\t&__icon {\n\t\tdisplay: flex;\n\t\tjustify-content: center;\n\t\talign-items: center;\n\t\twidth: rem-calc(150);\n\t\theight: rem-calc(150);\n\t\tmargin: 0 auto rem-calc(24);\n\t\tborder-radius: 50%;\n\t\tbackground: $error-icon-circle-bg;\n\t\tcolor: $error-icon-color;\n\t\t& > * {\n\t\t\twidth: rem-calc(114);\n\t\t\theight: rem-calc(114);\n\t\t}\n\t}\n\n\t// MQ\n\t@include mq($from: md) {\n\t\t&__icon {\n\t\t\twidth: rem-calc(200);\n\t\t\theight: rem-calc(200);\n\t\t\tmargin: 0 auto rem-calc(32);\n\t\t\t& > * {\n\t\t\t\twidth: rem-calc(152);\n\t\t\t\theight: rem-calc(152);\n\t\t\t}\n\t\t}\n\t}\n}\n","import { Component, Element, h, Host } from '@stencil/core'\nimport { ErrorCodeClass } from './constants'\nimport { govHost } from '../../helpers/Dom/template'\nimport { GovHost } from '../../helpers/Dom/template.types'\n\n@Component({\n\ttag: 'gov-error-code',\n\tstyleUrl: 'gov-error-code.scss',\n})\nexport class GovErrorCode {\n\tprivate h: GovHost\n\n\tconstructor() {\n\t\tthis.h = govHost(this.host)\n\t}\n\n\t@Element() host: HTMLGovErrorCodeElement\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class={this.h.classes(ErrorCodeClass.root)}>\n\t\t\t\t<div class={ErrorCodeClass.holder}>\n\t\t\t\t\t{this.h.hasSlot('icon') && (\n\t\t\t\t\t\t<div class={ErrorCodeClass.icon}>\n\t\t\t\t\t\t\t<slot name=\"icon\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t\t<div class={ErrorCodeClass.content}>\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t)\n\t}\n}\n"]}
1
+ {"version":3,"sources":["../../../packages/core/src/components/gov-error-code/constants.ts","../../../packages/core/src/components/gov-error-code/gov-error-code.scss?tag=gov-error-code","../../../packages/core/src/components/gov-error-code/gov-error-code.tsx"],"names":["ErrorCodeClass","root","icon","holder","content","govErrorCodeCss","GovErrorCode","[object Object]","hostRef","this","h","govHost","host","Host","class","classes","hasSlot","name"],"mappings":"6FAAO,MAAMA,EAAiB,CAC7BC,KAAM,iBACNC,KAAM,uBACNC,OAAQ,yBACRC,QAAS,2BCJV,MAAMC,EAAkB,siCCSXC,EAAY,MAGxBC,YAAAC,aACCC,KAAKC,EAAIC,EAAQF,KAAKG,MAKvBL,SACC,OACCG,EAACG,EAAI,CAACC,MAAOL,KAAKC,EAAEK,QAAQf,EAAeC,OAC1CS,EAAA,MAAA,CAAKI,MAAOd,EAAeG,QACzBM,KAAKC,EAAEM,QAAQ,SACfN,EAAA,MAAA,CAAKI,MAAOd,EAAeE,MAC1BQ,EAAA,OAAA,CAAMO,KAAK,UAGbP,EAAA,MAAA,CAAKI,MAAOd,EAAeI,SAC1BM,EAAA,OAAA","sourcesContent":["export const ErrorCodeClass = {\n\troot: 'gov-error-code',\n\ticon: 'gov-error-code__icon',\n\tholder: 'gov-error-code__holder',\n\tcontent: 'gov-error-code__content',\n}\n","/*\n * Alert\n */\n\n$class: \".gov-error-code\";\n\n#{$class} {\n\t@include base();\n\t&__holder {\n\t\tmargin: 0 auto;\n\t\ttext-align: center;\n\t}\n\t&__content {\n\t\t@include reset-last-margin();\n\t}\n\t&__icon {\n\t\tdisplay: flex;\n\t\tjustify-content: center;\n\t\talign-items: center;\n\t\twidth: rem-calc(150);\n\t\theight: rem-calc(150);\n\t\tmargin: 0 auto rem-calc(24);\n\t\tborder-radius: 50%;\n\t\tbackground: $error-icon-circle-bg;\n\t\tcolor: $error-icon-color;\n\t\t& > * {\n\t\t\twidth: rem-calc(114);\n\t\t\theight: rem-calc(114);\n\t\t}\n\t}\n\n\t// MQ\n\t@include mq($from: md) {\n\t\t&__icon {\n\t\t\twidth: rem-calc(200);\n\t\t\theight: rem-calc(200);\n\t\t\tmargin: 0 auto rem-calc(32);\n\t\t\t& > * {\n\t\t\t\twidth: rem-calc(152);\n\t\t\t\theight: rem-calc(152);\n\t\t\t}\n\t\t}\n\t}\n}\n","import { Component, Element, h, Host } from '@stencil/core'\nimport { ErrorCodeClass } from './constants'\nimport { govHost } from '../../helpers/Dom/template'\nimport { GovHost } from '../../helpers/Dom/template.types'\n\n@Component({\n\ttag: 'gov-error-code',\n\tstyleUrl: 'gov-error-code.scss',\n})\nexport class GovErrorCode {\n\tprivate h: GovHost\n\n\tconstructor() {\n\t\tthis.h = govHost(this.host)\n\t}\n\n\t@Element() host: HTMLGovErrorCodeElement\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class={this.h.classes(ErrorCodeClass.root)}>\n\t\t\t\t<div class={ErrorCodeClass.holder}>\n\t\t\t\t\t{this.h.hasSlot('icon') && (\n\t\t\t\t\t\t<div class={ErrorCodeClass.icon}>\n\t\t\t\t\t\t\t<slot name=\"icon\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t\t<div class={ErrorCodeClass.content}>\n\t\t\t\t\t\t<slot />\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t)\n\t}\n}\n"]}
@@ -0,0 +1,2 @@
1
+ import{r as e,c as o,h as t,H as r,g as i}from"./p-4af5e4f4.js";import{g as s,t as l}from"./p-3f37ddb6.js";import{g as a,k as c,l as n,m as v}from"./p-9cd80b05.js";import{v as g}from"./p-26acf964.js";import{a as m,b as f}from"./p-364b4792.js";import{c as d}from"./p-c20102ff.js";import{c as h}from"./p-24636c53.js";import{d as p}from"./p-03990da5.js";import"./p-55500e5a.js";import"./p-ff7365ae.js";import"./p-ef79904e.js";import"./p-6278531b.js";import"./p-f687452c.js";import"./p-3464136c.js";import"./p-561fa17b.js";const u='.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-select{position:relative;display:flex;width:100%;align-items:center}.gov-form-select .element{position:relative;flex:1 1 auto}.gov-form-select input,.gov-form-select select,.gov-form-select textarea{width:100%;border:var(--gov-form-input-border-width, 0.0625rem solid var(--gov-color-secondary-700));border-radius:var(--gov-border-radius, 0.1875rem);background-color:var(--gov-form-bg-color, var(--gov-color-neutral-white));color:var(--gov-form-input-color, var(--gov-color-secondary-700));font-family:var(--gov-font-family, "Roboto", sans-serif)}.gov-form-select input:focus,.gov-form-select select:focus,.gov-form-select textarea:focus{outline:none}.gov-form-select input:focus-visible,.gov-form-select select:focus-visible,.gov-form-select textarea:focus-visible{border-radius:var(--gov-border-radius, 0.1875rem);outline:var(--gov-outline-width, 0.125rem) solid var(--gov-color-focus-base);outline-offset:0}.gov-form-select input::-moz-placeholder,.gov-form-select select::-moz-placeholder,.gov-form-select textarea::-moz-placeholder{color:var(--gov-form-placeholder-color, var(--gov-color-secondary-600))}.gov-form-select input::placeholder,.gov-form-select select::placeholder,.gov-form-select textarea::placeholder{color:var(--gov-form-placeholder-color, var(--gov-color-secondary-600))}.gov-form-select textarea{font-weight:var(--gov-text-m-font-weight);font-size:var(--gov-text-m-font-size);line-height:var(--gov-text-m-line-height);letter-spacing:var(--gov-text-m-letter-spacing);padding:0.5rem 0.75rem;resize:none}.gov-form-select *[slot=left-icon],.gov-form-select *[slot=right-icon]{position:absolute;top:50%;display:flex;justify-content:center;color:var(--gov-form-input-icon-color, var(--gov-color-primary));transform:translateY(-50%);pointer-events:none}.gov-form-select *[slot=left-icon]{left:0}.gov-form-select *[slot=right-icon]{right:0}[disabled=""].gov-form-select,[disabled=true i].gov-form-select,[disabled="1"].gov-form-select{pointer-events:none}[disabled=""].gov-form-select input,[disabled=""].gov-form-select select,[disabled=""].gov-form-select textarea,[disabled=true i].gov-form-select input,[disabled=true i].gov-form-select select,[disabled=true i].gov-form-select textarea,[disabled="1"].gov-form-select input,[disabled="1"].gov-form-select select,[disabled="1"].gov-form-select textarea{border-color:var(--gov-form-state-color-disabled, var(--gov-color-secondary-600));background:var(--gov-form-input-disabled-bg, var(--gov-color-secondary-300));color:var(--gov-form-state-color-disabled, var(--gov-color-secondary-600))}[disabled=""].gov-form-select *[slot=left-icon],[disabled=""].gov-form-select *[slot=right-icon],[disabled=true i].gov-form-select *[slot=left-icon],[disabled=true i].gov-form-select *[slot=right-icon],[disabled="1"].gov-form-select *[slot=left-icon],[disabled="1"].gov-form-select *[slot=right-icon]{color:var(--gov-form-state-color-disabled, var(--gov-color-secondary-600))}[invalid=""].gov-form-select input,[invalid=""].gov-form-select select,[invalid=""].gov-form-select textarea,[invalid=true i].gov-form-select input,[invalid=true i].gov-form-select select,[invalid=true i].gov-form-select textarea,[invalid="1"].gov-form-select input,[invalid="1"].gov-form-select select,[invalid="1"].gov-form-select textarea{border-color:var(--gov-form-state-color-error, var(--gov-color-error));color:var(--gov-form-state-color-error, var(--gov-color-error))}[invalid=""].gov-form-select input::-moz-placeholder,[invalid=""].gov-form-select select::-moz-placeholder,[invalid=""].gov-form-select textarea::-moz-placeholder,[invalid=true i].gov-form-select input::-moz-placeholder,[invalid=true i].gov-form-select select::-moz-placeholder,[invalid=true i].gov-form-select textarea::-moz-placeholder,[invalid="1"].gov-form-select input::-moz-placeholder,[invalid="1"].gov-form-select select::-moz-placeholder,[invalid="1"].gov-form-select textarea::-moz-placeholder{color:var(--gov-form-state-color-error, var(--gov-color-error-300))}[invalid=""].gov-form-select input::placeholder,[invalid=""].gov-form-select select::placeholder,[invalid=""].gov-form-select textarea::placeholder,[invalid=true i].gov-form-select input::placeholder,[invalid=true i].gov-form-select select::placeholder,[invalid=true i].gov-form-select textarea::placeholder,[invalid="1"].gov-form-select input::placeholder,[invalid="1"].gov-form-select select::placeholder,[invalid="1"].gov-form-select textarea::placeholder{color:var(--gov-form-state-color-error, var(--gov-color-error-300))}[invalid=""].gov-form-select *[slot=left-icon],[invalid=""].gov-form-select *[slot=right-icon],[invalid=true i].gov-form-select *[slot=left-icon],[invalid=true i].gov-form-select *[slot=right-icon],[invalid="1"].gov-form-select *[slot=left-icon],[invalid="1"].gov-form-select *[slot=right-icon]{color:var(--gov-form-state-color-error, var(--gov-color-error))}[success=""].gov-form-select *[slot=right-icon],[success=true i].gov-form-select *[slot=right-icon],[success="1"].gov-form-select *[slot=right-icon]{color:var(--gov-form-state-color-success, var(--gov-color-success))}[success=""].gov-form-select *[slot=right-icon]:not(.icon-validation):not(.icon-arrow),[success=true i].gov-form-select *[slot=right-icon]:not(.icon-validation):not(.icon-arrow),[success="1"].gov-form-select *[slot=right-icon]:not(.icon-validation):not(.icon-arrow){display:none}[size=m].gov-form-select{font-weight:var(--gov-text-m-font-weight);font-size:var(--gov-text-m-font-size);line-height:var(--gov-text-m-line-height);letter-spacing:var(--gov-text-m-letter-spacing);gap:0.5rem var(--gov-form-input-core-m-icon-size, 1rem)}[size=m].gov-form-select input,[size=m].gov-form-select select{font-weight:var(--gov-text-m-font-weight);font-size:var(--gov-text-m-font-size);line-height:var(--gov-text-m-line-height);letter-spacing:var(--gov-text-m-letter-spacing);height:var(--gov-form-input-core-m-height, 2.5rem);padding:var(--gov-form-input-core-m-padding, 0.4375rem 0.75rem)}[size=m].gov-form-select *[slot=left-icon],[size=m].gov-form-select *[slot=right-icon]{width:var(--gov-form-input-core-m-icon-size, 1rem);height:var(--gov-form-input-core-m-icon-size, 1rem)}[size=m].gov-form-select *[slot=left-icon]{left:calc((var(--gov-form-input-core-m-icon-padding, 2.5rem) - var(--gov-form-input-core-m-icon-size, 1rem)) / 2)}[size=m].gov-form-select *[slot=left-icon]~input{padding-left:var(--gov-form-input-core-m-icon-padding, 2.5rem)}[size=m].gov-form-select *[slot=right-icon]{right:calc((var(--gov-form-input-core-m-icon-padding, 2.5rem) - var(--gov-form-input-core-m-icon-size, 1rem)) / 2)}[size=m].gov-form-select *[slot=right-icon]~input,[size=m].gov-form-select *[slot=right-icon]~select{padding-right:var(--gov-form-input-core-m-icon-padding, 2.5rem)}[size=l].gov-form-select{font-weight:var(--gov-text-m-font-weight);font-size:var(--gov-text-m-font-size);line-height:var(--gov-text-m-line-height);letter-spacing:var(--gov-text-m-letter-spacing);gap:0.5rem var(--gov-form-input-core-l-icon-size, 1rem)}[size=l].gov-form-select input,[size=l].gov-form-select select{font-weight:var(--gov-text-m-font-weight);font-size:var(--gov-text-m-font-size);line-height:var(--gov-text-m-line-height);letter-spacing:var(--gov-text-m-letter-spacing);height:var(--gov-form-input-core-l-height, 3rem);padding:var(--gov-form-input-core-l-padding, 0.6875rem 0.75rem)}[size=l].gov-form-select *[slot=left-icon],[size=l].gov-form-select *[slot=right-icon]{width:var(--gov-form-input-core-l-icon-size, 1rem);height:var(--gov-form-input-core-l-icon-size, 1rem)}[size=l].gov-form-select *[slot=left-icon]{left:calc((var(--gov-form-input-core-l-icon-padding, 2.5rem) - var(--gov-form-input-core-l-icon-size, 1rem)) / 2)}[size=l].gov-form-select *[slot=left-icon]~input{padding-left:var(--gov-form-input-core-l-icon-padding, 2.5rem)}[size=l].gov-form-select *[slot=right-icon]{right:calc((var(--gov-form-input-core-l-icon-padding, 2.5rem) - var(--gov-form-input-core-l-icon-size, 1rem)) / 2)}[size=l].gov-form-select *[slot=right-icon]~input,[size=l].gov-form-select *[slot=right-icon]~select{padding-right:var(--gov-form-input-core-l-icon-padding, 2.5rem)}[size=xl].gov-form-select{font-weight:var(--gov-text-l-font-weight);font-size:var(--gov-text-l-font-size);line-height:var(--gov-text-l-line-height);letter-spacing:var(--gov-text-l-letter-spacing);gap:0.5rem var(--gov-form-input-core-xl-icon-size, 1.25rem)}[size=xl].gov-form-select input,[size=xl].gov-form-select select{font-weight:var(--gov-text-l-font-weight);font-size:var(--gov-text-l-font-size);line-height:var(--gov-text-l-line-height);letter-spacing:var(--gov-text-l-letter-spacing);height:var(--gov-form-input-core-xl-height, 3.5rem);padding:var(--gov-form-input-core-xl-padding, 0.9375rem 1rem 0.875rem)}[size=xl].gov-form-select *[slot=left-icon],[size=xl].gov-form-select *[slot=right-icon]{width:var(--gov-form-input-core-xl-icon-size, 1.25rem);height:var(--gov-form-input-core-xl-icon-size, 1.25rem)}[size=xl].gov-form-select *[slot=left-icon]{left:calc((var(--gov-form-input-core-xl-icon-padding, 3rem) - var(--gov-form-input-core-xl-icon-size, 1.25rem)) / 2)}[size=xl].gov-form-select *[slot=left-icon]~input{padding-left:var(--gov-form-input-core-xl-icon-padding, 3rem)}[size=xl].gov-form-select *[slot=right-icon]{right:calc((var(--gov-form-input-core-xl-icon-padding, 3rem) - var(--gov-form-input-core-xl-icon-size, 1.25rem)) / 2)}[size=xl].gov-form-select *[slot=right-icon]~input,[size=xl].gov-form-select *[slot=right-icon]~select{padding-right:var(--gov-form-input-core-xl-icon-padding, 3rem)}.gov-form-select{background:none}.gov-form-select select{-webkit-appearance:none;-moz-appearance:none}.gov-form-select select::-ms-expand{display:none}[size=m].gov-form-select *[slot=right-icon]{right:var(--gov-form-select-m-arrow-right-position, 1rem);width:var(--gov-form-select-m-arrow-size, 0.5rem);height:var(--gov-form-select-m-arrow-size, 0.5rem)}[size=l].gov-form-select *[slot=right-icon]{right:var(--gov-form-select-l-arrow-right-position, 1rem);width:var(--gov-form-select-l-arrow-size, 0.5rem);height:var(--gov-form-select-l-arrow-size, 0.5rem)}[size=xl].gov-form-select *[slot=right-icon]{right:var(--gov-form-select-xl-arrow-right-position, 1.3125rem);width:var(--gov-form-select-xl-arrow-size, 0.625rem);height:var(--gov-form-select-xl-arrow-size, 0.625rem)}';const z=class{constructor(t){e(this,t);this.govFocus=o(this,"gov-focus",7);this.govBlur=o(this,"gov-blur",7);this.govChange=o(this,"gov-change",7);this.value=undefined;this.identifier=undefined;this.variant=undefined;this.size="m";this.name=undefined;this.required=false;this.disabled=undefined;this.invalid=undefined;this.wcagActiveDescendant=undefined;this.wcagControls=undefined;this.wcagDescribedBy=undefined;this.wcagLabelledBy=undefined;this.wcagOwns=undefined;this.focused=undefined;this.h=s(this.host);this.selectId=h("GovSelect");this.f=a(s(this.host))}validateVariant(e){g(n,e,c.root)}validateSize(e){g(v,e,c.root)}componentWillLoad(){this.validateVariant(this.variant);this.validateSize(this.size);this.host.querySelectorAll("option").forEach((e=>{if(e.value===this.value){e.setAttribute("selected","true")}}));this.f.passAttrToControl("type","select");this.f.passAttrToLabel("required",String(this.required))}async componentDidRender(){if(d()){await p(500);await this.validateWcag()}}render(){return t(r,{class:c.root,size:this.size,variant:this.variant},this.h.hasSlot("prefix")&&t("slot",{name:"prefix"}),t("span",{class:"element"},t("gov-icon",{slot:"right-icon",name:"chevron-down"}),t("select",{id:this.identifier||this.selectId,onFocus:this.onFocusHandler.bind(this),onChange:this.onChangeHandler.bind(this),onBlur:this.onBlurHandler.bind(this),required:this.required,name:this.name,disabled:this.disabled,ref:e=>this.selectRef=e,"aria-disabled":l(this.disabled),"aria-activedescendant":this.wcagActiveDescendant,"aria-controls":this.wcagControls,"aria-required":l(this.required),"aria-invalid":l(this.invalid),"aria-describedby":this.wcagDescribedBy,"aria-labelledby":this.wcagLabelledBy,"aria-owns":this.wcagOwns},t("slot",null))),this.h.hasSlot("sufix")&&t("slot",{name:"sufix"}))}onFocusHandler(e){this.focused=true;this.govFocus.emit(e)}onBlurHandler(e){this.focused=false;this.govBlur.emit(e)}onChangeHandler(e){this.value=e.target.value;e.stopPropagation();this.govChange.emit(e.target)}async setFocus(e){return this.selectRef.focus(e)}async setValue(e){this.value=e}async getInstance(){return this.selectRef}async validateWcag(){m(this.wcagActiveDescendant,"wcag-active-descendant",c.root);m(this.wcagControls,"wcag-controls",c.root);m(this.wcagDescribedBy,"wcag-described-by",c.root);m(this.wcagOwns,"wcag-owns",c.root);f(this.identifier||this.selectId,this.wcagLabelledBy,c.root)}get host(){return i(this)}static get watchers(){return{variant:["validateVariant"],size:["validateSize"]}}};z.style=u;export{z as gov_form_select};
2
+ //# sourceMappingURL=p-2426fa82.entry.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../packages/core/src/components/gov-form/select/gov-form-select.scss?tag=gov-form-select","../../../packages/core/src/components/gov-form/select/gov-form-select.tsx"],"names":["govFormSelectCss","GovFormSelect","[object Object]","hostRef","this","h","govHost","host","selectId","createID","f","govForm","newValue","validateProp","FormSelectVariants","FormSelectClass","root","FormSelectSizes","validateVariant","variant","validateSize","size","querySelectorAll","forEach","option","value","setAttribute","passAttrToControl","passAttrToLabel","String","required","canValidateWcagOnRender","delay","validateWcag","Host","class","hasSlot","name","slot","id","identifier","onFocus","onFocusHandler","bind","onChange","onChangeHandler","onBlur","onBlurHandler","disabled","ref","el","selectRef","aria-disabled","toBoolAttrIfDefined","aria-activedescendant","wcagActiveDescendant","aria-controls","wcagControls","aria-required","aria-invalid","invalid","aria-describedby","wcagDescribedBy","aria-labelledby","wcagLabelledBy","aria-owns","wcagOwns","e","focused","govFocus","emit","govBlur","target","stopPropagation","govChange","options","focus","validateWcagRef","validateWcagLabelFor"],"mappings":"ugBAAA,MAAMA,EAAmB,ixUCgBZC,EAAa,MAOzBC,YAAAC,yMAsB8C,sCAST,iOA9BpCC,KAAKC,EAAIC,EAAQF,KAAKG,MACtBH,KAAKI,SAAWC,EAAS,aACzBL,KAAKM,EAAIC,EAAQL,EAAQF,KAAKG,OAyE/BL,gBAAgBU,GACfC,EAAaC,EAAoBF,EAAUG,EAAgBC,MAI5Dd,aAAaU,GACZC,EAAaI,EAAiBL,EAAUG,EAAgBC,MAGzDd,oBACCE,KAAKc,gBAAgBd,KAAKe,SAC1Bf,KAAKgB,aAAahB,KAAKiB,MAEvBjB,KAAKG,KAAKe,iBAAiB,UAAUC,SAASC,IAC7C,GAAIA,EAAOC,QAAUrB,KAAKqB,MAAO,CAChCD,EAAOE,aAAa,WAAY,YAIlCtB,KAAKM,EAAEiB,kBAAkB,OAAQ,UACjCvB,KAAKM,EAAEkB,gBAAgB,WAAYC,OAAOzB,KAAK0B,WAGhD5B,2BACC,GAAI6B,IAA2B,OACxBC,EAAM,WACN5B,KAAK6B,gBAIb/B,SACC,OACCG,EAAC6B,EAAI,CAACC,MAAOpB,EAAgBC,KAAMK,KAAMjB,KAAKiB,KAAMF,QAASf,KAAKe,SAChEf,KAAKC,EAAE+B,QAAQ,WAAa/B,EAAA,OAAA,CAAMgC,KAAK,WACxChC,EAAA,OAAA,CAAM8B,MAAM,WACX9B,EAAA,WAAA,CAAUiC,KAAK,aAAaD,KAAK,iBACjChC,EAAA,SAAA,CACCkC,GAAInC,KAAKoC,YAAcpC,KAAKI,SAC5BiC,QAASrC,KAAKsC,eAAeC,KAAKvC,MAClCwC,SAAUxC,KAAKyC,gBAAgBF,KAAKvC,MACpC0C,OAAQ1C,KAAK2C,cAAcJ,KAAKvC,MAChC0B,SAAU1B,KAAK0B,SACfO,KAAMjC,KAAKiC,KACXW,SAAU5C,KAAK4C,SACfC,IAAKC,GAAO9C,KAAK+C,UAAYD,EAAwBE,gBACtCC,EAAoBjD,KAAK4C,UAASM,wBAC1BlD,KAAKmD,qBAAoBC,gBACjCpD,KAAKqD,aAAYC,gBACjBL,EAAoBjD,KAAK0B,UAAS6B,eACnCN,EAAoBjD,KAAKwD,SAAQC,mBAC7BzD,KAAK0D,gBAAeC,kBACrB3D,KAAK4D,eAAcC,YACzB7D,KAAK8D,UAEhB7D,EAAA,OAAA,QAGDD,KAAKC,EAAE+B,QAAQ,UAAY/B,EAAA,OAAA,CAAMgC,KAAK,WAKlCnC,eAAeiE,GACtB/D,KAAKgE,QAAU,KACfhE,KAAKiE,SAASC,KAAKH,GAGZjE,cAAciE,GACrB/D,KAAKgE,QAAU,MACfhE,KAAKmE,QAAQD,KAAKH,GAGXjE,gBAAgBiE,GACvB/D,KAAKqB,MAAS0C,EAAEK,OAA6B/C,MAC7C0C,EAAEM,kBACFrE,KAAKsE,UAAUJ,KAAKH,EAAEK,QAOvBtE,eAAeyE,GACd,OAAOvE,KAAK+C,UAAUyB,MAAMD,GAO7BzE,eAAeuB,GACdrB,KAAKqB,MAAQA,EAOdvB,oBACC,OAAOE,KAAK+C,UAObjD,qBACC2E,EAAgBzE,KAAKmD,qBAAsB,yBAA0BxC,EAAgBC,MACrF6D,EAAgBzE,KAAKqD,aAAc,gBAAiB1C,EAAgBC,MACpE6D,EAAgBzE,KAAK0D,gBAAiB,oBAAqB/C,EAAgBC,MAC3E6D,EAAgBzE,KAAK8D,SAAU,YAAanD,EAAgBC,MAC5D8D,EAAqB1E,KAAKoC,YAAcpC,KAAKI,SAAUJ,KAAK4D,eAAgBjD,EAAgBC","sourcesContent":["/*\n * Select\n */\n\n@import \"../select/gov-form-select-core.scss\";\n\n$class: \".gov-form-select\";\n\n#{$class} {\n\t@extend %form-select-core;\n}\n","import { Component, Element, h, State, Prop, Event, EventEmitter, Watch, Host, Method } from '@stencil/core'\nimport { GovHost } from '../../../helpers/Dom/template.types'\nimport { toBoolAttrIfDefined, govHost } from '../../../helpers/Dom/template'\nimport { FormSelectSizesType, FormSelectVariants, FormSelectVariantType, FormSelectClass, FormSelectSizes } from './constants'\nimport { validateProp } from '../../../helpers/Validate/props'\nimport { validateWcagLabelFor, validateWcagRef } from '../../../helpers/Validate/wcag'\nimport { canValidateWcagOnRender } from '../../../helpers/Dom/win'\nimport { createID } from '../../../utils/string.utils'\nimport { delay } from '../../../utils/utils'\nimport { GovForm } from '../../../helpers/Dom/form.types'\nimport { govForm } from '../../../helpers/Dom/form'\n\n@Component({\n\ttag: 'gov-form-select',\n\tstyleUrl: 'gov-form-select.scss',\n})\nexport class GovFormSelect {\n\tprivate f: GovForm\n\tprivate h: GovHost\n\tprivate selectRef?: HTMLSelectElement\n\n\tprivate readonly selectId: string\n\n\tconstructor() {\n\t\tthis.h = govHost(this.host)\n\t\tthis.selectId = createID('GovSelect')\n\t\tthis.f = govForm(govHost(this.host))\n\t}\n\n\t@Element() host: HTMLGovFormSelectElement\n\t/**\n\t * Value of select\n\t */\n\t@Prop({ reflect: true, mutable: true }) value: string\n\t/**\n\t * Custom select identifier.\n\t */\n\t@Prop({ attribute: 'identifier' }) readonly identifier: string\n\t/**\n\t * Style variation of the form select.\n\t */\n\t@Prop() readonly variant?: FormSelectVariantType\n\t/**\n\t * Select’s size.\n\t */\n\t@Prop() readonly size?: FormSelectSizesType = 'm'\n\t/**\n\t * Name of the select.\n\t */\n\t@Prop() readonly name: string\n\t/**\n\t * Set whether the input is required or not. Please note that this is necessary for accessible inputs when the user is required to fill them.\n\t * When using this property you need to also set “novalidate” attribute to your form element to prevent browser from displaying its own validation errors.\n\t */\n\t@Prop() readonly required: boolean = false\n\t/**\n\t * Makes the 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\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 id of a related component’s visually focused element.\n\t */\n\t@Prop({ attribute: 'wcag-active-descendant' }) readonly wcagActiveDescendant: string\n\t/**\n\t * Use this prop to add an aria-controls attribute. Use the attribute to indicate the id of a component controlled by this component.\n\t */\n\t@Prop({ attribute: 'wcag-controls' }) readonly wcagControls: string\n\t/**\n\t * Indicates the id of a component that describes the input.\n\t */\n\t@Prop({ attribute: 'wcag-described-by' }) readonly wcagDescribedBy: string\n\t/**\n\t * Indicates the id of a component that labels the input.\n\t */\n\t@Prop({ attribute: 'wcag-labelled-by' }) readonly wcagLabelledBy: string\n\t/**\n\t * Indicates the id of a component that describes the input.\n\t */\n\t@Prop({ attribute: 'wcag-owns' }) readonly wcagOwns: string\n\t/**\n\t * Emitted when the select has focus.\n\t */\n\t@Event({ eventName: 'gov-focus' }) govFocus: EventEmitter<FocusEvent>\n\t/**\n\t * Emitted when the select loses focus.\n\t */\n\t@Event({ eventName: 'gov-blur' }) govBlur: EventEmitter<FocusEvent>\n\t/**\n\t * Emitted when the select change value.\n\t */\n\t@Event({ eventName: 'gov-change' }) govChange: EventEmitter\n\t@State() focused: boolean\n\n\t@Watch('variant')\n\tvalidateVariant(newValue: string): void {\n\t\tvalidateProp(FormSelectVariants, newValue, FormSelectClass.root)\n\t}\n\n\t@Watch('size')\n\tvalidateSize(newValue: string): void {\n\t\tvalidateProp(FormSelectSizes, newValue, FormSelectClass.root)\n\t}\n\n\tcomponentWillLoad() {\n\t\tthis.validateVariant(this.variant)\n\t\tthis.validateSize(this.size)\n\n\t\tthis.host.querySelectorAll('option').forEach((option: HTMLOptionElement) => {\n\t\t\tif (option.value === this.value) {\n\t\t\t\toption.setAttribute('selected', 'true')\n\t\t\t}\n\t\t})\n\n\t\tthis.f.passAttrToControl('type', 'select')\n\t\tthis.f.passAttrToLabel('required', String(this.required))\n\t}\n\n\tasync componentDidRender() {\n\t\tif (canValidateWcagOnRender()) {\n\t\t\tawait delay(500)\n\t\t\tawait this.validateWcag()\n\t\t}\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class={FormSelectClass.root} size={this.size} variant={this.variant}>\n\t\t\t\t{this.h.hasSlot('prefix') && <slot name=\"prefix\"></slot>}\n\t\t\t\t<span class=\"element\">\n\t\t\t\t\t<gov-icon slot=\"right-icon\" name=\"chevron-down\"></gov-icon>\n\t\t\t\t\t<select\n\t\t\t\t\t\tid={this.identifier || this.selectId}\n\t\t\t\t\t\tonFocus={this.onFocusHandler.bind(this)}\n\t\t\t\t\t\tonChange={this.onChangeHandler.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\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\taria-disabled={toBoolAttrIfDefined(this.disabled)}\n\t\t\t\t\t\taria-activedescendant={this.wcagActiveDescendant}\n\t\t\t\t\t\taria-controls={this.wcagControls}\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-describedby={this.wcagDescribedBy}\n\t\t\t\t\t\taria-labelledby={this.wcagLabelledBy}\n\t\t\t\t\t\taria-owns={this.wcagOwns}\n\t\t\t\t\t>\n\t\t\t\t\t\t<slot></slot>\n\t\t\t\t\t</select>\n\t\t\t\t</span>\n\t\t\t\t{this.h.hasSlot('sufix') && <slot name=\"sufix\"></slot>}\n\t\t\t</Host>\n\t\t)\n\t}\n\n\tprivate onFocusHandler(e: FocusEvent) {\n\t\tthis.focused = true\n\t\tthis.govFocus.emit(e)\n\t}\n\n\tprivate onBlurHandler(e: FocusEvent) {\n\t\tthis.focused = false\n\t\tthis.govBlur.emit(e)\n\t}\n\n\tprivate onChangeHandler(e: Event) {\n\t\tthis.value = (e.target as HTMLSelectElement).value\n\t\te.stopPropagation()\n\t\tthis.govChange.emit(e.target)\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.value = value\n\t}\n\n\t/**\n\t * Returns an instance of the native html select element\n\t */\n\t@Method()\n\tasync getInstance(): Promise<HTMLSelectElement> {\n\t\treturn this.selectRef\n\t}\n\n\t/**\n\t * Validate the WCAG attributes of the component\n\t */\n\t@Method()\n\tasync validateWcag(): Promise<void> {\n\t\tvalidateWcagRef(this.wcagActiveDescendant, 'wcag-active-descendant', FormSelectClass.root)\n\t\tvalidateWcagRef(this.wcagControls, 'wcag-controls', FormSelectClass.root)\n\t\tvalidateWcagRef(this.wcagDescribedBy, 'wcag-described-by', FormSelectClass.root)\n\t\tvalidateWcagRef(this.wcagOwns, 'wcag-owns', FormSelectClass.root)\n\t\tvalidateWcagLabelFor(this.identifier || this.selectId, this.wcagLabelledBy, FormSelectClass.root)\n\t}\n}\n"]}
1
+ {"version":3,"sources":["../../../packages/core/src/components/gov-form/select/gov-form-select.scss?tag=gov-form-select","../../../packages/core/src/components/gov-form/select/gov-form-select.tsx"],"names":["govFormSelectCss","GovFormSelect","[object Object]","hostRef","this","h","govHost","host","selectId","createID","f","govForm","newValue","validateProp","FormSelectVariants","FormSelectClass","root","FormSelectSizes","validateVariant","variant","validateSize","size","querySelectorAll","forEach","option","value","setAttribute","passAttrToControl","passAttrToLabel","String","required","canValidateWcagOnRender","delay","validateWcag","Host","class","hasSlot","name","slot","id","identifier","onFocus","onFocusHandler","bind","onChange","onChangeHandler","onBlur","onBlurHandler","disabled","ref","el","selectRef","aria-disabled","toBoolAttrIfDefined","aria-activedescendant","wcagActiveDescendant","aria-controls","wcagControls","aria-required","aria-invalid","invalid","aria-describedby","wcagDescribedBy","aria-labelledby","wcagLabelledBy","aria-owns","wcagOwns","e","focused","govFocus","emit","govBlur","target","stopPropagation","govChange","options","focus","validateWcagRef","validateWcagLabelFor"],"mappings":"ugBAAA,MAAMA,EAAmB,k7UCgBZC,EAAa,MAOzBC,YAAAC,yMAsB8C,sCAST,iOA9BpCC,KAAKC,EAAIC,EAAQF,KAAKG,MACtBH,KAAKI,SAAWC,EAAS,aACzBL,KAAKM,EAAIC,EAAQL,EAAQF,KAAKG,OAyE/BL,gBAAgBU,GACfC,EAAaC,EAAoBF,EAAUG,EAAgBC,MAI5Dd,aAAaU,GACZC,EAAaI,EAAiBL,EAAUG,EAAgBC,MAGzDd,oBACCE,KAAKc,gBAAgBd,KAAKe,SAC1Bf,KAAKgB,aAAahB,KAAKiB,MAEvBjB,KAAKG,KAAKe,iBAAiB,UAAUC,SAASC,IAC7C,GAAIA,EAAOC,QAAUrB,KAAKqB,MAAO,CAChCD,EAAOE,aAAa,WAAY,YAIlCtB,KAAKM,EAAEiB,kBAAkB,OAAQ,UACjCvB,KAAKM,EAAEkB,gBAAgB,WAAYC,OAAOzB,KAAK0B,WAGhD5B,2BACC,GAAI6B,IAA2B,OACxBC,EAAM,WACN5B,KAAK6B,gBAIb/B,SACC,OACCG,EAAC6B,EAAI,CAACC,MAAOpB,EAAgBC,KAAMK,KAAMjB,KAAKiB,KAAMF,QAASf,KAAKe,SAChEf,KAAKC,EAAE+B,QAAQ,WAAa/B,EAAA,OAAA,CAAMgC,KAAK,WACxChC,EAAA,OAAA,CAAM8B,MAAM,WACX9B,EAAA,WAAA,CAAUiC,KAAK,aAAaD,KAAK,iBACjChC,EAAA,SAAA,CACCkC,GAAInC,KAAKoC,YAAcpC,KAAKI,SAC5BiC,QAASrC,KAAKsC,eAAeC,KAAKvC,MAClCwC,SAAUxC,KAAKyC,gBAAgBF,KAAKvC,MACpC0C,OAAQ1C,KAAK2C,cAAcJ,KAAKvC,MAChC0B,SAAU1B,KAAK0B,SACfO,KAAMjC,KAAKiC,KACXW,SAAU5C,KAAK4C,SACfC,IAAKC,GAAO9C,KAAK+C,UAAYD,EAAwBE,gBACtCC,EAAoBjD,KAAK4C,UAASM,wBAC1BlD,KAAKmD,qBAAoBC,gBACjCpD,KAAKqD,aAAYC,gBACjBL,EAAoBjD,KAAK0B,UAAS6B,eACnCN,EAAoBjD,KAAKwD,SAAQC,mBAC7BzD,KAAK0D,gBAAeC,kBACrB3D,KAAK4D,eAAcC,YACzB7D,KAAK8D,UAEhB7D,EAAA,OAAA,QAGDD,KAAKC,EAAE+B,QAAQ,UAAY/B,EAAA,OAAA,CAAMgC,KAAK,WAKlCnC,eAAeiE,GACtB/D,KAAKgE,QAAU,KACfhE,KAAKiE,SAASC,KAAKH,GAGZjE,cAAciE,GACrB/D,KAAKgE,QAAU,MACfhE,KAAKmE,QAAQD,KAAKH,GAGXjE,gBAAgBiE,GACvB/D,KAAKqB,MAAS0C,EAAEK,OAA6B/C,MAC7C0C,EAAEM,kBACFrE,KAAKsE,UAAUJ,KAAKH,EAAEK,QAOvBtE,eAAeyE,GACd,OAAOvE,KAAK+C,UAAUyB,MAAMD,GAO7BzE,eAAeuB,GACdrB,KAAKqB,MAAQA,EAOdvB,oBACC,OAAOE,KAAK+C,UAObjD,qBACC2E,EAAgBzE,KAAKmD,qBAAsB,yBAA0BxC,EAAgBC,MACrF6D,EAAgBzE,KAAKqD,aAAc,gBAAiB1C,EAAgBC,MACpE6D,EAAgBzE,KAAK0D,gBAAiB,oBAAqB/C,EAAgBC,MAC3E6D,EAAgBzE,KAAK8D,SAAU,YAAanD,EAAgBC,MAC5D8D,EAAqB1E,KAAKoC,YAAcpC,KAAKI,SAAUJ,KAAK4D,eAAgBjD,EAAgBC","sourcesContent":["/*\n * Select\n */\n\n@import \"../select/gov-form-select-core.scss\";\n\n$class: \".gov-form-select\";\n\n#{$class} {\n\t@extend %form-select-core;\n}\n","import { Component, Element, h, State, Prop, Event, EventEmitter, Watch, Host, Method } from '@stencil/core'\nimport { GovHost } from '../../../helpers/Dom/template.types'\nimport { toBoolAttrIfDefined, govHost } from '../../../helpers/Dom/template'\nimport { FormSelectSizesType, FormSelectVariants, FormSelectVariantType, FormSelectClass, FormSelectSizes } from './constants'\nimport { validateProp } from '../../../helpers/Validate/props'\nimport { validateWcagLabelFor, validateWcagRef } from '../../../helpers/Validate/wcag'\nimport { canValidateWcagOnRender } from '../../../helpers/Dom/win'\nimport { createID } from '../../../utils/string.utils'\nimport { delay } from '../../../utils/utils'\nimport { GovForm } from '../../../helpers/Dom/form.types'\nimport { govForm } from '../../../helpers/Dom/form'\n\n@Component({\n\ttag: 'gov-form-select',\n\tstyleUrl: 'gov-form-select.scss',\n})\nexport class GovFormSelect {\n\tprivate f: GovForm\n\tprivate h: GovHost\n\tprivate selectRef?: HTMLSelectElement\n\n\tprivate readonly selectId: string\n\n\tconstructor() {\n\t\tthis.h = govHost(this.host)\n\t\tthis.selectId = createID('GovSelect')\n\t\tthis.f = govForm(govHost(this.host))\n\t}\n\n\t@Element() host: HTMLGovFormSelectElement\n\t/**\n\t * Value of select\n\t */\n\t@Prop({ reflect: true, mutable: true }) value: string\n\t/**\n\t * Custom select identifier.\n\t */\n\t@Prop({ attribute: 'identifier' }) readonly identifier: string\n\t/**\n\t * Style variation of the form select.\n\t */\n\t@Prop() readonly variant?: FormSelectVariantType\n\t/**\n\t * Select’s size.\n\t */\n\t@Prop() readonly size?: FormSelectSizesType = 'm'\n\t/**\n\t * Name of the select.\n\t */\n\t@Prop() readonly name: string\n\t/**\n\t * Set whether the input is required or not. Please note that this is necessary for accessible inputs when the user is required to fill them.\n\t * When using this property you need to also set “novalidate” attribute to your form element to prevent browser from displaying its own validation errors.\n\t */\n\t@Prop() readonly required: boolean = false\n\t/**\n\t * Makes the 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\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 id of a related component’s visually focused element.\n\t */\n\t@Prop({ attribute: 'wcag-active-descendant' }) readonly wcagActiveDescendant: string\n\t/**\n\t * Use this prop to add an aria-controls attribute. Use the attribute to indicate the id of a component controlled by this component.\n\t */\n\t@Prop({ attribute: 'wcag-controls' }) readonly wcagControls: string\n\t/**\n\t * Indicates the id of a component that describes the input.\n\t */\n\t@Prop({ attribute: 'wcag-described-by' }) readonly wcagDescribedBy: string\n\t/**\n\t * Indicates the id of a component that labels the input.\n\t */\n\t@Prop({ attribute: 'wcag-labelled-by' }) readonly wcagLabelledBy: string\n\t/**\n\t * Indicates the id of a component that describes the input.\n\t */\n\t@Prop({ attribute: 'wcag-owns' }) readonly wcagOwns: string\n\t/**\n\t * Emitted when the select has focus.\n\t */\n\t@Event({ eventName: 'gov-focus' }) govFocus: EventEmitter<FocusEvent>\n\t/**\n\t * Emitted when the select loses focus.\n\t */\n\t@Event({ eventName: 'gov-blur' }) govBlur: EventEmitter<FocusEvent>\n\t/**\n\t * Emitted when the select change value.\n\t */\n\t@Event({ eventName: 'gov-change' }) govChange: EventEmitter\n\t@State() focused: boolean\n\n\t@Watch('variant')\n\tvalidateVariant(newValue: string): void {\n\t\tvalidateProp(FormSelectVariants, newValue, FormSelectClass.root)\n\t}\n\n\t@Watch('size')\n\tvalidateSize(newValue: string): void {\n\t\tvalidateProp(FormSelectSizes, newValue, FormSelectClass.root)\n\t}\n\n\tcomponentWillLoad() {\n\t\tthis.validateVariant(this.variant)\n\t\tthis.validateSize(this.size)\n\n\t\tthis.host.querySelectorAll('option').forEach((option: HTMLOptionElement) => {\n\t\t\tif (option.value === this.value) {\n\t\t\t\toption.setAttribute('selected', 'true')\n\t\t\t}\n\t\t})\n\n\t\tthis.f.passAttrToControl('type', 'select')\n\t\tthis.f.passAttrToLabel('required', String(this.required))\n\t}\n\n\tasync componentDidRender() {\n\t\tif (canValidateWcagOnRender()) {\n\t\t\tawait delay(500)\n\t\t\tawait this.validateWcag()\n\t\t}\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class={FormSelectClass.root} size={this.size} variant={this.variant}>\n\t\t\t\t{this.h.hasSlot('prefix') && <slot name=\"prefix\"></slot>}\n\t\t\t\t<span class=\"element\">\n\t\t\t\t\t<gov-icon slot=\"right-icon\" name=\"chevron-down\"></gov-icon>\n\t\t\t\t\t<select\n\t\t\t\t\t\tid={this.identifier || this.selectId}\n\t\t\t\t\t\tonFocus={this.onFocusHandler.bind(this)}\n\t\t\t\t\t\tonChange={this.onChangeHandler.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\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\taria-disabled={toBoolAttrIfDefined(this.disabled)}\n\t\t\t\t\t\taria-activedescendant={this.wcagActiveDescendant}\n\t\t\t\t\t\taria-controls={this.wcagControls}\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-describedby={this.wcagDescribedBy}\n\t\t\t\t\t\taria-labelledby={this.wcagLabelledBy}\n\t\t\t\t\t\taria-owns={this.wcagOwns}\n\t\t\t\t\t>\n\t\t\t\t\t\t<slot></slot>\n\t\t\t\t\t</select>\n\t\t\t\t</span>\n\t\t\t\t{this.h.hasSlot('sufix') && <slot name=\"sufix\"></slot>}\n\t\t\t</Host>\n\t\t)\n\t}\n\n\tprivate onFocusHandler(e: FocusEvent) {\n\t\tthis.focused = true\n\t\tthis.govFocus.emit(e)\n\t}\n\n\tprivate onBlurHandler(e: FocusEvent) {\n\t\tthis.focused = false\n\t\tthis.govBlur.emit(e)\n\t}\n\n\tprivate onChangeHandler(e: Event) {\n\t\tthis.value = (e.target as HTMLSelectElement).value\n\t\te.stopPropagation()\n\t\tthis.govChange.emit(e.target)\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.value = value\n\t}\n\n\t/**\n\t * Returns an instance of the native html select element\n\t */\n\t@Method()\n\tasync getInstance(): Promise<HTMLSelectElement> {\n\t\treturn this.selectRef\n\t}\n\n\t/**\n\t * Validate the WCAG attributes of the component\n\t */\n\t@Method()\n\tasync validateWcag(): Promise<void> {\n\t\tvalidateWcagRef(this.wcagActiveDescendant, 'wcag-active-descendant', FormSelectClass.root)\n\t\tvalidateWcagRef(this.wcagControls, 'wcag-controls', FormSelectClass.root)\n\t\tvalidateWcagRef(this.wcagDescribedBy, 'wcag-described-by', FormSelectClass.root)\n\t\tvalidateWcagRef(this.wcagOwns, 'wcag-owns', FormSelectClass.root)\n\t\tvalidateWcagLabelFor(this.identifier || this.selectId, this.wcagLabelledBy, FormSelectClass.root)\n\t}\n}\n"]}
@@ -0,0 +1,2 @@
1
+ import{r as o,c as a,h as r,H as e,g as i}from"./p-4af5e4f4.js";import{g as d,b as t}from"./p-3f37ddb6.js";import{c as s}from"./p-24636c53.js";import{a as c}from"./p-561fa17b.js";import{v as n}from"./p-364b4792.js";import{c as l}from"./p-c20102ff.js";import{d as g}from"./p-03990da5.js";const v={root:"gov-card",header:"gov-card__header",title:"gov-card__title",inner:"gov-card__inner",img:"gov-card__img",main:"gov-card__main",content:"gov-card__content",icon:"gov-card__icon",btns:"gov-card__btns",footer:"gov-card__footer",arrow:"gov-card__arrow"};const h='.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-card{position:relative;display:flex;width:100%;flex-direction:column;border:var(--gov-card-border-width, 0.0625rem solid var(--gov-color-secondary-500));border-radius:var(--gov-border-radius, 0.1875rem);background:var(--gov-card-bg, var(--gov-color-neutral-white));overflow:hidden}.gov-card__header{gap:1.75rem;width:100%;padding:1.5rem;border-bottom:var(--gov-card-border-width, 0.0625rem solid var(--gov-color-secondary-500));border-radius:0;text-align:left;text-transform:none;transition:background-color 150ms ease-in-out}.gov-card__arrow{flex:0 0 auto;width:1rem;height:1rem;color:var(--gov-card-arrow-color, var(--gov-color-primary))}.gov-card__title{margin:0;padding:0;font-family:var(--gov-font-family, "Roboto", sans-serif);font-weight:400;box-sizing:border-box;font-weight:var(--gov-text-xl-font-weight);font-size:var(--gov-text-xl-font-size);line-height:var(--gov-text-xl-line-height);letter-spacing:var(--gov-text-xl-letter-spacing);color:var(--gov-card-title-color, var(--gov-color-secondary-800));font-weight:700}.gov-card__img{width:100%;margin:0;line-height:1}.gov-card__img img{width:100%;height:auto}.gov-card__inner{display:flex;flex:1 1 auto;flex-direction:column}.gov-card__inner[aria-hidden=""],.gov-card__inner[aria-hidden=true i],.gov-card__inner[aria-hidden="1"]{display:none}.gov-card__main{display:flex;gap:16px 24px;flex:1 1 auto;flex-direction:column;padding:1.5rem}.gov-card__icon{flex:0 0 auto;width:2.5rem;height:2.5rem;color:var(--gov-card-icon-color, var(--gov-color-primary))}.gov-card__btns{display:flex;gap:1rem;flex:0 0 auto;flex-wrap:wrap}.gov-card__content>*:last-child{margin-bottom:0}.gov-card__footer{padding:1rem 1.5rem;background:var(--gov-card-footer-bg, var(--gov-color-primary-100))}.gov-card__footer>*:last-child{margin-bottom:0}.gov-card__footer p{font-weight:var(--gov-text-s-font-weight);font-size:var(--gov-text-s-font-size);line-height:var(--gov-text-s-line-height);letter-spacing:var(--gov-text-s-letter-spacing)}.gov-card[is-expanded=""],.gov-card[is-expanded=true i],.gov-card[is-expanded="1"]{height:100%}.gov-card[collapsible=""] .gov-card__header,.gov-card[collapsible=true i] .gov-card__header,.gov-card[collapsible="1"] .gov-card__header{display:inline-flex;vertical-align:middle;justify-content:center;align-items:center;border:0;background-color:transparent;text-align:center;text-decoration:none;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;justify-content:space-between;text-align:left}.gov-card[collapsible=""] .gov-card__header:focus,.gov-card[collapsible=true i] .gov-card__header:focus,.gov-card[collapsible="1"] .gov-card__header:focus{outline:none}.gov-card[collapsible=""] .gov-card__header:focus,.gov-card[collapsible=true i] .gov-card__header:focus,.gov-card[collapsible="1"] .gov-card__header:focus{outline:none}.gov-card[collapsible=""] .gov-card__header:focus-visible,.gov-card[collapsible=true i] .gov-card__header:focus-visible,.gov-card[collapsible="1"] .gov-card__header:focus-visible{border-radius:var(--gov-border-radius, 0.1875rem);outline:var(--gov-outline-width, 0.125rem) solid var(--gov-color-focus-base);outline-offset:-0.125rem}@media not all and (pointer: coarse){.gov-card[collapsible=""] .gov-card__header:hover,.gov-card[collapsible=true i] .gov-card__header:hover,.gov-card[collapsible="1"] .gov-card__header:hover{background:var(--gov-card-header-hover-bg, var(--gov-color-primary-100))}}.gov-card[collapsible=""][is-expanded=""] .gov-card__header,.gov-card[collapsible=""][is-expanded=true i] .gov-card__header,.gov-card[collapsible=""][is-expanded="1"] .gov-card__header,.gov-card[collapsible=true i][is-expanded=""] .gov-card__header,.gov-card[collapsible=true i][is-expanded=true i] .gov-card__header,.gov-card[collapsible=true i][is-expanded="1"] .gov-card__header,.gov-card[collapsible="1"][is-expanded=""] .gov-card__header,.gov-card[collapsible="1"][is-expanded=true i] .gov-card__header,.gov-card[collapsible="1"][is-expanded="1"] .gov-card__header{border-bottom:var(--gov-card-border-width, 0.0625rem solid var(--gov-color-secondary-500))}.gov-card[collapsible=""][is-expanded=""] .gov-card__arrow,.gov-card[collapsible=""][is-expanded=true i] .gov-card__arrow,.gov-card[collapsible=""][is-expanded="1"] .gov-card__arrow,.gov-card[collapsible=true i][is-expanded=""] .gov-card__arrow,.gov-card[collapsible=true i][is-expanded=true i] .gov-card__arrow,.gov-card[collapsible=true i][is-expanded="1"] .gov-card__arrow,.gov-card[collapsible="1"][is-expanded=""] .gov-card__arrow,.gov-card[collapsible="1"][is-expanded=true i] .gov-card__arrow,.gov-card[collapsible="1"][is-expanded="1"] .gov-card__arrow{transform:scale(-1)}@media (min-width: 30em){.gov-card[promotion=""] .gov-card__main,.gov-card[promotion=true i] .gov-card__main,.gov-card[promotion="1"] .gov-card__main{flex-direction:row;padding:2rem}.gov-card[promotion=""] .gov-card__icon,.gov-card[promotion=true i] .gov-card__icon,.gov-card[promotion="1"] .gov-card__icon{width:3rem;height:3rem}.gov-card[promotion=""] .gov-card__btns,.gov-card[promotion=true i] .gov-card__btns,.gov-card[promotion="1"] .gov-card__btns{flex-direction:column}}';const p=class{constructor(r){o(this,r);this.govToggle=a(this,"gov-toggle",7);this.promotion=false;this.label=undefined;this.collapsible=false;this.expanded=false;this.headlineTag="h3";this.wcagTriggerLabel=undefined;this.wcagTriggerLabelledBy=undefined;this.isExpanded=undefined;this.h=d(this.host);this.headlineId=s("GovCardHeadline");this.contentId=s("GovCardContent")}validateHeadlineTag(o){const a=["h1","h2","h3","h4","h5","h6","span"];if(o){if(!a.includes(o)){c(`[${v.root}]: Tag ${o} is not allowed.`)}}}componentWillLoad(){this.isExpanded=this.label?this.expanded:true;this.validateHeadlineTag(this.headlineTag)}async componentDidRender(){if(l()){await g(500);await this.validateWcag()}}emmitChange(){this.govToggle.emit({open:this.isExpanded,element:this.host})}render(){const o=this.headlineTag;return r(e,{class:this.h.classes(v.root),"is-expanded":this.isExpanded,collapsible:t(this.collapsible),promotion:this.promotion},this.label&&this.collapsible?r("button",{id:this.headlineId,class:v.header,"aria-label":this.wcagTriggerLabel,"aria-labelledby":this.wcagTriggerLabelledBy,"aria-expanded":t(this.isExpanded),"aria-controls":this.contentId,onClick:this.onClickHandler.bind(this)},r(o,{class:v.title},this.label),r("gov-icon",{class:v.arrow,name:"chevron-down"})):null,this.label&&!this.collapsible?r("div",{class:v.header},r(o,{class:v.title},this.label)):null,r("div",{class:v.inner,id:this.contentId,"aria-hidden":this.collapsible?t(!this.isExpanded):undefined,hidden:this.collapsible?!this.isExpanded:undefined,"aria-labelledby":this.collapsible?this.headlineId:undefined},this.h.hasSlot("img")&&r("p",{class:v.img},r("slot",{name:"img"})),r("div",{class:v.main},this.h.hasSlot("icon")&&this.promotion&&r("div",{class:v.icon},r("slot",{name:"icon"})),r("div",{class:v.content},r("slot",null)),this.h.hasSlot("btn")&&this.promotion&&r("div",{class:v.btns},r("slot",{name:"btn"}))),this.h.hasSlot("footer")&&r("div",{class:v.footer},r("slot",{name:"footer"}))))}onClickHandler(o){o.stopPropagation();if(this.collapsible){this.isExpanded=!this.isExpanded;this.emmitChange()}}async open(){if(this.collapsible){this.isExpanded=true;this.emmitChange()}}async close(){if(this.collapsible){this.isExpanded=false;this.emmitChange()}}async validateWcag(){if(this.collapsible){n(this.wcagTriggerLabel,this.wcagTriggerLabelledBy,v.root)}}get host(){return i(this)}static get watchers(){return{headlineTag:["validateHeadlineTag"]}}};p.style=h;export{p as gov_card};
2
+ //# sourceMappingURL=p-24877419.entry.js.map