@gov-design-system-ce/components 0.0.55 → 0.0.57

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 (220) hide show
  1. package/dist/cjs/core.cjs.js +1 -1
  2. package/dist/cjs/gov-accordion-item.cjs.entry.js +1 -1
  3. package/dist/cjs/gov-accordion-item.cjs.entry.js.map +1 -1
  4. package/dist/cjs/gov-app.cjs.entry.js +85 -29
  5. package/dist/cjs/gov-app.cjs.entry.js.map +1 -1
  6. package/dist/cjs/gov-badge.cjs.entry.js +1 -1
  7. package/dist/cjs/gov-badge.cjs.entry.js.map +1 -1
  8. package/dist/cjs/gov-button.cjs.entry.js +1 -1
  9. package/dist/cjs/gov-button.cjs.entry.js.map +1 -1
  10. package/dist/cjs/gov-form-checkbox.cjs.entry.js +1 -1
  11. package/dist/cjs/gov-form-checkbox.cjs.entry.js.map +1 -1
  12. package/dist/cjs/gov-form-file.cjs.entry.js +8 -2
  13. package/dist/cjs/gov-form-file.cjs.entry.js.map +1 -1
  14. package/dist/cjs/gov-form-input.cjs.entry.js +1 -1
  15. package/dist/cjs/gov-form-input.cjs.entry.js.map +1 -1
  16. package/dist/cjs/gov-form-multi-select.cjs.entry.js +1 -1
  17. package/dist/cjs/gov-form-multi-select.cjs.entry.js.map +1 -1
  18. package/dist/cjs/gov-form-radio.cjs.entry.js +1 -1
  19. package/dist/cjs/gov-form-radio.cjs.entry.js.map +1 -1
  20. package/dist/cjs/gov-form-select.cjs.entry.js +2 -2
  21. package/dist/cjs/gov-form-select.cjs.entry.js.map +1 -1
  22. package/dist/cjs/gov-form-switch.cjs.entry.js +1 -1
  23. package/dist/cjs/gov-form-switch.cjs.entry.js.map +1 -1
  24. package/dist/cjs/gov-icon.cjs.entry.js +2 -2
  25. package/dist/cjs/gov-icon.cjs.entry.js.map +1 -1
  26. package/dist/cjs/gov-modal.cjs.entry.js +1 -1
  27. package/dist/cjs/gov-modal.cjs.entry.js.map +1 -1
  28. package/dist/cjs/gov-prompt.cjs.entry.js +1 -1
  29. package/dist/cjs/gov-prompt.cjs.entry.js.map +1 -1
  30. package/dist/cjs/gov-stepper-item.cjs.entry.js +1 -1
  31. package/dist/cjs/gov-stepper-item.cjs.entry.js.map +1 -1
  32. package/dist/cjs/gov-tile.cjs.entry.js +2 -3
  33. package/dist/cjs/gov-tile.cjs.entry.js.map +1 -1
  34. package/dist/cjs/gov-wizard-item.cjs.entry.js +1 -1
  35. package/dist/cjs/gov-wizard-item.cjs.entry.js.map +1 -1
  36. package/dist/cjs/loader.cjs.js +1 -1
  37. package/dist/collection/components/gov-accordion/gov-accordion-item.css +1 -0
  38. package/dist/collection/components/gov-badge/gov-badge.css +12 -12
  39. package/dist/collection/components/gov-button/default/gov-button.css +12 -12
  40. package/dist/collection/components/gov-form/checkbox/gov-form-checkbox.css +1 -0
  41. package/dist/collection/components/gov-form/file/gov-form-file.js +8 -2
  42. package/dist/collection/components/gov-form/file/gov-form-file.js.map +1 -1
  43. package/dist/collection/components/gov-form/input/gov-form-input.css +17 -7
  44. package/dist/collection/components/gov-form/multiselect/gov-form-multi-select.css +32 -11
  45. package/dist/collection/components/gov-form/radio/gov-form-radio.css +1 -0
  46. package/dist/collection/components/gov-form/select/gov-form-select.css +29 -11
  47. package/dist/collection/components/gov-form/select/gov-form-select.js +1 -1
  48. package/dist/collection/components/gov-form/select/gov-form-select.js.map +1 -1
  49. package/dist/collection/components/gov-form/switch/gov-form-switch.css +4 -8
  50. package/dist/collection/components/gov-icon/gov-icon.css +6 -2
  51. package/dist/collection/components/gov-icon/list.js +10 -0
  52. package/dist/collection/components/gov-icon/list.js.map +1 -1
  53. package/dist/collection/components/gov-modal/gov-modal.css +0 -4
  54. package/dist/collection/components/gov-promp/gov-prompt.css +0 -4
  55. package/dist/collection/components/gov-stepper/gov-stepper-item.css +0 -1
  56. package/dist/collection/components/gov-tile/gov-tile.css +17 -36
  57. package/dist/collection/components/gov-tile/gov-tile.js +1 -20
  58. package/dist/collection/components/gov-tile/gov-tile.js.map +1 -1
  59. package/dist/collection/components/gov-wizard/gov-wizard-item.css +3 -1
  60. package/dist/collection/pages/Accordion.js +2 -2
  61. package/dist/collection/pages/Accordion.js.map +1 -1
  62. package/dist/collection/pages/Forms.js +69 -4
  63. package/dist/collection/pages/Forms.js.map +1 -1
  64. package/dist/collection/pages/Tiles.js +14 -23
  65. package/dist/collection/pages/Tiles.js.map +1 -1
  66. package/dist/components/gov-accordion-item.js +1 -1
  67. package/dist/components/gov-accordion-item.js.map +1 -1
  68. package/dist/components/gov-alert.js +1 -1
  69. package/dist/components/gov-app.js +1 -1
  70. package/dist/components/gov-app.js.map +1 -1
  71. package/dist/components/gov-attachments-item.js +1 -1
  72. package/dist/components/gov-badge.js +1 -1
  73. package/dist/components/gov-button.js +1 -1
  74. package/dist/components/gov-card.js +1 -1
  75. package/dist/components/gov-form-autocomplete.js +1 -1
  76. package/dist/components/gov-form-checkbox.js +1 -1
  77. package/dist/components/gov-form-checkbox.js.map +1 -1
  78. package/dist/components/gov-form-file.js +1 -1
  79. package/dist/components/gov-form-file.js.map +1 -1
  80. package/dist/components/gov-form-input.js +1 -1
  81. package/dist/components/gov-form-multi-select.js +1 -1
  82. package/dist/components/gov-form-multi-select.js.map +1 -1
  83. package/dist/components/gov-form-radio.js +1 -1
  84. package/dist/components/gov-form-radio.js.map +1 -1
  85. package/dist/components/gov-form-select.js +1 -1
  86. package/dist/components/gov-form-switch.js +1 -1
  87. package/dist/components/gov-form-switch.js.map +1 -1
  88. package/dist/components/gov-icon.js +1 -1
  89. package/dist/components/gov-loading.js +1 -1
  90. package/dist/components/gov-modal.js +1 -1
  91. package/dist/components/gov-modal.js.map +1 -1
  92. package/dist/components/gov-pagination.js +1 -1
  93. package/dist/components/gov-prompt.js +1 -1
  94. package/dist/components/gov-prompt.js.map +1 -1
  95. package/dist/components/gov-side-nav-item.js +1 -1
  96. package/dist/components/gov-stepper-item.js +1 -1
  97. package/dist/components/gov-stepper-item.js.map +1 -1
  98. package/dist/components/gov-tabs.js +1 -1
  99. package/dist/components/gov-tile.js +1 -1
  100. package/dist/components/gov-tile.js.map +1 -1
  101. package/dist/components/gov-toast.js +1 -1
  102. package/dist/components/gov-wizard-item.js +1 -1
  103. package/dist/components/gov-wizard-item.js.map +1 -1
  104. package/dist/components/{p-a2e601c5.js → p-0378da4d.js} +2 -2
  105. package/dist/components/{p-a2e601c5.js.map → p-0378da4d.js.map} +1 -1
  106. package/dist/components/p-1a0f8d13.js +2 -0
  107. package/dist/components/p-1a0f8d13.js.map +1 -0
  108. package/dist/components/p-80f0ed50.js +2 -0
  109. package/dist/components/{p-bacc5e05.js.map → p-80f0ed50.js.map} +1 -1
  110. package/dist/components/{p-49620025.js → p-839e8965.js} +2 -2
  111. package/dist/components/{p-f33b16d3.js → p-8449a4cf.js} +2 -2
  112. package/dist/components/{p-f33b16d3.js.map → p-8449a4cf.js.map} +1 -1
  113. package/dist/components/p-8d9c2f0a.js +2 -0
  114. package/dist/components/{p-04086571.js.map → p-8d9c2f0a.js.map} +1 -1
  115. package/dist/components/{p-3b1801e4.js → p-d4f30d9b.js} +2 -2
  116. package/dist/core/core.esm.js +1 -1
  117. package/dist/core/core.esm.js.map +1 -1
  118. package/dist/core/{p-7d61b13e.entry.js → p-13624a77.entry.js} +2 -2
  119. package/dist/core/p-13624a77.entry.js.map +1 -0
  120. package/dist/core/p-2944bf77.entry.js +2 -0
  121. package/dist/core/{p-64f7e661.entry.js.map → p-2944bf77.entry.js.map} +1 -1
  122. package/dist/core/p-4c79a97a.entry.js +2 -0
  123. package/dist/core/p-4c79a97a.entry.js.map +1 -0
  124. package/dist/core/p-62e9bbf3.entry.js +2 -0
  125. package/dist/core/p-62e9bbf3.entry.js.map +1 -0
  126. package/dist/core/p-667dc3de.entry.js +2 -0
  127. package/dist/core/p-667dc3de.entry.js.map +1 -0
  128. package/dist/core/p-69f944d1.entry.js +2 -0
  129. package/dist/core/p-69f944d1.entry.js.map +1 -0
  130. package/dist/core/{p-bfb4d904.entry.js → p-6a65af35.entry.js} +2 -2
  131. package/dist/core/{p-bfb4d904.entry.js.map → p-6a65af35.entry.js.map} +1 -1
  132. package/dist/core/p-74ce7780.entry.js +2 -0
  133. package/dist/core/p-74ce7780.entry.js.map +1 -0
  134. package/dist/core/p-85258200.entry.js +2 -0
  135. package/dist/core/{p-f0a5847a.entry.js.map → p-85258200.entry.js.map} +1 -1
  136. package/dist/core/p-8fce08d1.entry.js +2 -0
  137. package/dist/core/p-8fce08d1.entry.js.map +1 -0
  138. package/dist/core/p-9bfab069.entry.js +2 -0
  139. package/dist/core/{p-fc853777.entry.js.map → p-9bfab069.entry.js.map} +1 -1
  140. package/dist/core/p-a85f4a62.entry.js +2 -0
  141. package/dist/core/p-a85f4a62.entry.js.map +1 -0
  142. package/dist/core/{p-accf8575.entry.js → p-af646ce2.entry.js} +2 -2
  143. package/dist/core/{p-accf8575.entry.js.map → p-af646ce2.entry.js.map} +1 -1
  144. package/dist/core/p-cacd0fed.entry.js +2 -0
  145. package/dist/core/{p-22a86871.entry.js.map → p-cacd0fed.entry.js.map} +1 -1
  146. package/dist/core/p-d4cfa93a.entry.js +2 -0
  147. package/dist/core/{p-81643870.entry.js.map → p-d4cfa93a.entry.js.map} +1 -1
  148. package/dist/core/p-de5c9181.entry.js +2 -0
  149. package/dist/core/p-de5c9181.entry.js.map +1 -0
  150. package/dist/core/p-f8252fea.entry.js +2 -0
  151. package/dist/core/{p-ea4459ae.entry.js.map → p-f8252fea.entry.js.map} +1 -1
  152. package/dist/esm/core.js +1 -1
  153. package/dist/esm/gov-accordion-item.entry.js +1 -1
  154. package/dist/esm/gov-accordion-item.entry.js.map +1 -1
  155. package/dist/esm/gov-app.entry.js +85 -29
  156. package/dist/esm/gov-app.entry.js.map +1 -1
  157. package/dist/esm/gov-badge.entry.js +1 -1
  158. package/dist/esm/gov-badge.entry.js.map +1 -1
  159. package/dist/esm/gov-button.entry.js +1 -1
  160. package/dist/esm/gov-button.entry.js.map +1 -1
  161. package/dist/esm/gov-form-checkbox.entry.js +1 -1
  162. package/dist/esm/gov-form-checkbox.entry.js.map +1 -1
  163. package/dist/esm/gov-form-file.entry.js +8 -2
  164. package/dist/esm/gov-form-file.entry.js.map +1 -1
  165. package/dist/esm/gov-form-input.entry.js +1 -1
  166. package/dist/esm/gov-form-input.entry.js.map +1 -1
  167. package/dist/esm/gov-form-multi-select.entry.js +1 -1
  168. package/dist/esm/gov-form-multi-select.entry.js.map +1 -1
  169. package/dist/esm/gov-form-radio.entry.js +1 -1
  170. package/dist/esm/gov-form-radio.entry.js.map +1 -1
  171. package/dist/esm/gov-form-select.entry.js +2 -2
  172. package/dist/esm/gov-form-select.entry.js.map +1 -1
  173. package/dist/esm/gov-form-switch.entry.js +1 -1
  174. package/dist/esm/gov-form-switch.entry.js.map +1 -1
  175. package/dist/esm/gov-icon.entry.js +2 -2
  176. package/dist/esm/gov-icon.entry.js.map +1 -1
  177. package/dist/esm/gov-modal.entry.js +1 -1
  178. package/dist/esm/gov-modal.entry.js.map +1 -1
  179. package/dist/esm/gov-prompt.entry.js +1 -1
  180. package/dist/esm/gov-prompt.entry.js.map +1 -1
  181. package/dist/esm/gov-stepper-item.entry.js +1 -1
  182. package/dist/esm/gov-stepper-item.entry.js.map +1 -1
  183. package/dist/esm/gov-tile.entry.js +2 -3
  184. package/dist/esm/gov-tile.entry.js.map +1 -1
  185. package/dist/esm/gov-wizard-item.entry.js +1 -1
  186. package/dist/esm/gov-wizard-item.entry.js.map +1 -1
  187. package/dist/esm/loader.js +1 -1
  188. package/dist/hydrate/index.js +110 -50
  189. package/dist/types/components/gov-tile/gov-tile.d.ts +0 -4
  190. package/dist/types/components.d.ts +0 -8
  191. package/package.json +3 -3
  192. package/dist/components/p-04086571.js +0 -2
  193. package/dist/components/p-8d128f59.js +0 -2
  194. package/dist/components/p-8d128f59.js.map +0 -1
  195. package/dist/components/p-bacc5e05.js +0 -2
  196. package/dist/core/p-22a86871.entry.js +0 -2
  197. package/dist/core/p-23385300.entry.js +0 -2
  198. package/dist/core/p-23385300.entry.js.map +0 -1
  199. package/dist/core/p-48cfc1c6.entry.js +0 -2
  200. package/dist/core/p-48cfc1c6.entry.js.map +0 -1
  201. package/dist/core/p-4e3d3563.entry.js +0 -2
  202. package/dist/core/p-4e3d3563.entry.js.map +0 -1
  203. package/dist/core/p-63839c58.entry.js +0 -2
  204. package/dist/core/p-63839c58.entry.js.map +0 -1
  205. package/dist/core/p-64f7e661.entry.js +0 -2
  206. package/dist/core/p-74f0be51.entry.js +0 -2
  207. package/dist/core/p-74f0be51.entry.js.map +0 -1
  208. package/dist/core/p-7d61b13e.entry.js.map +0 -1
  209. package/dist/core/p-81643870.entry.js +0 -2
  210. package/dist/core/p-82f64673.entry.js +0 -2
  211. package/dist/core/p-82f64673.entry.js.map +0 -1
  212. package/dist/core/p-e769f3ee.entry.js +0 -2
  213. package/dist/core/p-e769f3ee.entry.js.map +0 -1
  214. package/dist/core/p-ea4459ae.entry.js +0 -2
  215. package/dist/core/p-ed724948.entry.js +0 -2
  216. package/dist/core/p-ed724948.entry.js.map +0 -1
  217. package/dist/core/p-f0a5847a.entry.js +0 -2
  218. package/dist/core/p-fc853777.entry.js +0 -2
  219. /package/dist/components/{p-49620025.js.map → p-839e8965.js.map} +0 -0
  220. /package/dist/components/{p-3b1801e4.js.map → p-d4f30d9b.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"gov-form-file.js","sourceRoot":"","sources":["../../../../../../../src/components/gov-form/file/gov-form-file.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Event, EventEmitter, h, Host, Method, Prop, State, Watch } from \"@stencil/core\"\nimport { createID } from \"../../../utils/string.utils\"\nimport { FormFileClass } from \"./constants\"\nimport { govHost, toBoolAttr, toBoolAttrIfDefined } from \"../../../helpers/Dom/template\"\nimport { validateWcagLabelFor, validateWcagRef } from \"../../../helpers/Validate/wcag\"\nimport { canValidateWcagOnRender } from \"../../../helpers/Dom/win\"\nimport { fileAcceptValidation, fileSizeValidation, formatBytes } from \"../../../utils/file.utils\"\nimport { delay } from \"../../../utils/utils\"\nimport { GovForm } from \"../../../helpers/Dom/form.types\"\nimport { GovHost } from \"../../../helpers/Dom/template.types\"\nimport { govForm } from \"../../../helpers/Dom/form\"\nimport { GovFormFileEvent, GovFormFileItem } from \"./gov-form-file.types\"\n\n@Component({\n\ttag: \"gov-form-file\",\n\tstyleUrl: \"gov-form-file.scss\",\n})\nexport class GovFormFile {\n\tprivate f: GovForm\n\tprivate readonly h: GovHost\n\n\tprivate areaRef?: HTMLDivElement\n\tprivate inputRef?: HTMLInputElement\n\tprivate readonly fileId: string\n\n\tconstructor() {\n\t\tthis.fileId = createID(\"GovInputFile\")\n\n\t\tthis.h = govHost(this.host)\n\t\tthis.f = govForm(this.h)\n\t}\n\n\t@Element() host: HTMLGovFormFileElement\n\t/**\n\t * Expands the file input to fill 100% of the container width.\n\t */\n\t@Prop() readonly expanded: boolean = false\n\t/**\n\t * Set whether the input is required or not. Please note that this is necessary for accessible inputs when the user is required to fill them.\n\t * When using this property you need to also set “novalidate” attribute to your form element to prevent browser from displaying its own validation errors.\n\t */\n\t@Prop() readonly required: boolean = false\n\t/**\n\t * Makes the File component disabled.\n\t * This prevents users from being able to interact with the File, and conveys its inactive state to assistive technologies.\n\t */\n\t@Prop() readonly disabled: boolean\n\t/**\n\t * Show list of attachments\n\t */\n\t@Prop({ attribute: \"display-attachments\" }) readonly displayAttachments: boolean = true\n\t/**\n\t * Name of the input.\n\t */\n\t@Prop() readonly name: string\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/accept\n\t */\n\t@Prop() readonly accept: string\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/multiple\n\t */\n\t@Prop() readonly multiple: boolean = false\n\t/**\n\t * Maximum embedded file size\n\t */\n\t@Prop({ attribute: \"max-file-size\" }) readonly maxFileSize: number = -1\n\t/**\n\t * Custom File identifier.\n\t */\n\t@Prop({ attribute: \"identifier\" }) readonly identifier: string\n\t/**\n\t * Indicates the entered value does not conform to the format expected by the application.\n\t */\n\t@Prop() readonly invalid: boolean\n\t/**\n\t * Error message when the maximum file size is exceeded\n\t */\n\t@Prop({ attribute: \"error-size\" }) readonly errorSize: string = \"Soubor je větší než povolená velikost {FILE_SIZE}\"\n\t/**\n\t * Insert unsupported file error message\n\t */\n\t@Prop({ attribute: \"error-accept\" }) readonly errorAccept: string = \"Soubor tohoto typu není povolen\"\n\t/**\n\t * Description of the list of attachments\n\t */\n\t@Prop({ attribute: \"attachments-label\" }) readonly attachmentsLabel: string = \"Přílohy\"\n\t/**\n\t * 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 * Adds accessible label for the remove button that is only shown for screen readers.\n\t */\n\t@Prop({ attribute: \"wcag-remove-label\" }) readonly wcagRemoveLabel: string = \"Odebrat soubor {FILE_NAME}\"\n\t/**\n\t * Adds accessible label for the list of attachments.\n\t */\n\t@Prop({ attribute: \"wcag-attachments-label\" }) readonly wcagAttachmentsLabel: string = \"Přílohy\"\n\t/**\n\t * Emitted when the File has focus.\n\t */\n\t@Event({ eventName: \"gov-focus\" }) govFocus: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Emitted when the File loses focus.\n\t */\n\t@Event({ eventName: \"gov-blur\" }) govBlur: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Called when the list of inserted files is changed\n\t */\n\t@Event({ eventName: \"gov-files\" }) govFiles: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Called when a new file is added\n\t */\n\t@Event({ eventName: \"gov-add-file\" }) govAddFile: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Called when a file is removed from the list\n\t */\n\t@Event({ eventName: \"gov-remove-file\" }) govRemoveFile: EventEmitter<GovFormFileEvent>\n\n\t@State() files: GovFormFileItem[] = []\n\n\t@Watch(\"disabled\")\n\t@Watch(\"invalid\")\n\twatchDisabled(): void {\n\t\tthis.passControlAttrs()\n\t}\n\n\tprivate passControlAttrs() {\n\t\tthis.f.passAttrToControl(\"disabled\", toBoolAttr(this.disabled))\n\t\tthis.f.passAttrToControl(\"invalid\", toBoolAttr(this.invalid))\n\t\tthis.f.passAttrToControl(\"type\", \"File\")\n\t}\n\n\n\tprivate registerListeners() {\n\t\tfunction highlight() {\n\t\t\tthis.areaRef.classList.add(\"highlight\")\n\t\t}\n\n\t\tfunction unhighlight() {\n\t\t\tthis.areaRef.classList.remove(\"highlight\")\n\t\t}\n\n\t\tthis.inputRef.addEventListener(\n\t\t\t\"change\",\n\t\t\te => {\n\t\t\t\te.preventDefault()\n\t\t\t\te.stopPropagation()\n\t\t\t\tconst files = (e.target as HTMLInputElement).files\n\t\t\t\tthis.validateFiles(files)\n\t\t\t},\n\t\t\tfalse,\n\t\t)\n\t\t//this.inputRef.addEventListener('focus')\n\n\t\tif (this.expanded) {\n\t\t\tconst events = [\"dragover\", \"dragleave\"]\n\t\t\tconst inEvents = [\"dragenter\", \"dragover\", \"mouseenter\"]\n\t\t\tconst outEvents = [\"dragleave\", \"drop\", \"mouseleave\"]\n\n\t\t\tevents.map(eventName => this.inputRef.addEventListener(eventName, this.preventDefaults.bind(this), false))\n\t\t\tinEvents.map(eventName => this.inputRef.addEventListener(eventName, highlight.bind(this), false))\n\t\t\toutEvents.forEach(eventName => this.inputRef.addEventListener(eventName, unhighlight.bind(this), false))\n\n\t\t\tthis.areaRef.addEventListener(\"drop\", this.handleDrop.bind(this), false)\n\t\t}\n\t}\n\n\tpreventDefaults(e) {\n\t\te.preventDefault()\n\t\te.stopPropagation()\n\t}\n\n\thandleDrop(e: DragEvent) {\n\t\tconst dataTransfer = e.dataTransfer\n\t\tthis.validateFiles(dataTransfer.files)\n\t}\n\n\tprivate validateFiles(files: FileList) {\n\t\tArray.from(files).map(file => {\n\t\t\tconst isFile = this.files.find(item => item.file.name === file.name && item.file.size === file.size) || null\n\t\t\tif (isFile === null) {\n\t\t\t\tconst isSizeValid = typeof this.maxFileSize === \"number\" && this.maxFileSize > 0 ? fileSizeValidation(file, this.maxFileSize) : true\n\t\t\t\tconst isAcceptValid = fileAcceptValidation(file, this.accept)\n\t\t\t\tconst newFile = {\n\t\t\t\t\tid: createID(\"GovFormFile\"),\n\t\t\t\t\tfile,\n\t\t\t\t\tacceptValid: isAcceptValid,\n\t\t\t\t\tsizeValid: isSizeValid,\n\t\t\t\t}\n\t\t\t\tthis.files = [...this.files, newFile]\n\t\t\t\tthis.govAddFile.emit({\n\t\t\t\t\tcomponent: FormFileClass.root,\n\t\t\t\t\tfile: newFile,\n\t\t\t\t})\n\t\t\t}\n\t\t})\n\n\t\tthis.govFiles.emit({\n\t\t\tcomponent: FormFileClass.root,\n\t\t\tfiles: this.files,\n\t\t})\n\t}\n\n\tcomponentWillLoad() {\n\t\tthis.f.passAttrToLabel(\"required\", String(this.required))\n\t\tthis.watchDisabled()\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\n\t\tthis.registerListeners()\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class={this.h.classes([FormFileClass.root])} invalid={toBoolAttrIfDefined(this.invalid)} expanded={toBoolAttrIfDefined(this.expanded)}>\n\t\t\t\t<div class={FormFileClass.area} ref={el => (this.areaRef = el as HTMLDivElement)}>\n\t\t\t\t\t<slot />\n\t\t\t\t\t<input\n\t\t\t\t\t\tclass={FormFileClass.input}\n\t\t\t\t\t\tref={el => (this.inputRef = el as HTMLInputElement)}\n\t\t\t\t\t\tid={this.identifier || this.fileId}\n\t\t\t\t\t\ttype=\"file\"\n\t\t\t\t\t\tname={this.name}\n\t\t\t\t\t\taccept={this.accept}\n\t\t\t\t\t\tmultiple={this.multiple}\n\t\t\t\t\t\tonChange={this.onChangeHandler.bind(this)}\n\t\t\t\t\t\tonFocus={this.onFocusHandler.bind(this)}\n\t\t\t\t\t\tonBlur={this.onBlurHandler.bind(this)}\n\t\t\t\t\t\trequired={this.required}\n\t\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\t\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-disabled={toBoolAttrIfDefined(this.disabled)}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\n\t\t\t\t{this.h.hasSlot(\"attachments\") ? (\n\t\t\t\t\t<div class={FormFileClass.attachments}>\n\t\t\t\t\t\t<slot name={\"attachments\"} />\n\t\t\t\t\t</div>\n\t\t\t\t) : null}\n\n\t\t\t\t{this.files.length && this.displayAttachments ? (\n\t\t\t\t\t<div class={FormFileClass.attachments}>\n\t\t\t\t\t\t<gov-attachments label={this.wcagAttachmentsLabel} wcag-label={this.wcagAttachmentsLabel}>\n\t\t\t\t\t\t\t{this.files.map(item => (\n\t\t\t\t\t\t\t\t<gov-attachments-item wcag-remove-labelled-by={item.id} on-gov-remove={() => this.onRemoveFileHandler(item)}>\n\t\t\t\t\t\t\t\t\t<span class={\"sr-only\"} id={item.id}>\n\t\t\t\t\t\t\t\t\t\t{this.wcagRemoveLabel.replace(\"{FILE_NAME}\", item.file.name)}\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t{item.file.name}\n\t\t\t\t\t\t\t\t\t{item.acceptValid === false ? (\n\t\t\t\t\t\t\t\t\t\t<gov-form-message slot=\"message\" variant=\"error\">\n\t\t\t\t\t\t\t\t\t\t\t<gov-icon slot=\"icon\" name=\"exclamation-triangle-fill\"></gov-icon>\n\t\t\t\t\t\t\t\t\t\t\t{item.acceptValid === false ? this.errorAccept : null}\n\t\t\t\t\t\t\t\t\t\t</gov-form-message>\n\t\t\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t\t\t\t{item.sizeValid === false ? (\n\t\t\t\t\t\t\t\t\t\t<gov-form-message slot=\"message\" variant=\"error\">\n\t\t\t\t\t\t\t\t\t\t\t<gov-icon slot=\"icon\" name=\"exclamation-triangle-fill\"></gov-icon>\n\t\t\t\t\t\t\t\t\t\t\t{this.errorSize.replace(\"{FILE_SIZE}\", formatBytes(this.maxFileSize))}\n\t\t\t\t\t\t\t\t\t\t</gov-form-message>\n\t\t\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t\t\t\t<span slot=\"info\">({formatBytes(item.file.size)})</span>\n\t\t\t\t\t\t\t\t</gov-attachments-item>\n\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t</gov-attachments>\n\t\t\t\t\t</div>\n\t\t\t\t) : null}\n\t\t\t</Host>\n\t\t)\n\t}\n\n\tprivate onRemoveFileHandler(file: GovFormFileItem) {\n\t\tconst index = this.files.findIndex(item => item.id === file.id)\n\t\tif (index !== -1) {\n\t\t\tconst files = this.files\n\t\t\tconst removeFile = this.files[index]\n\t\t\tfiles.splice(index, 1)\n\t\t\tthis.files = [...files]\n\t\t\tthis.govRemoveFile.emit({\n\t\t\t\tcomponent: FormFileClass.root,\n\t\t\t\tfile: removeFile,\n\t\t\t})\n\t\t\tthis.govFiles.emit({\n\t\t\t\tcomponent: FormFileClass.root,\n\t\t\t\tfiles,\n\t\t\t})\n\t\t}\n\t}\n\n\tprivate onFocusHandler(e: FocusEvent) {\n\t\te.stopPropagation()\n\t\tthis.govFocus.emit({\n\t\t\tcomponent: FormFileClass.root,\n\t\t\toriginalEvent: e,\n\t\t})\n\t}\n\n\tprivate onBlurHandler(e: FocusEvent) {\n\t\te.stopPropagation()\n\t\tthis.govBlur.emit({\n\t\t\tcomponent: FormFileClass.root,\n\t\t\toriginalEvent: e,\n\t\t})\n\t}\n\n\tprivate onChangeHandler(e: Event) {\n\t\te.stopPropagation()\n\t}\n\n\t/**\n\t * Returns the reference of the native element\n\t */\n\t@Method()\n\tasync getRef(): Promise<HTMLInputElement> {\n\t\treturn this.inputRef\n\t}\n\n\t/**\n\t * Returns the reference of the native area element\n\t */\n\t@Method()\n\tasync getAreaRef(): Promise<HTMLDivElement> {\n\t\treturn this.areaRef\n\t}\n\n\t/**\n\t * Remove all files from component state\n\t */\n\t@Method()\n\tasync reset(): Promise<void> {\n\t\tthis.files = []\n\t}\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\", FormFileClass.root)\n\t\tvalidateWcagRef(this.wcagLabelledBy, \"wcag-labelled-by\", FormFileClass.root)\n\t\tvalidateWcagLabelFor(this.identifier || this.fileId, this.wcagLabelledBy, FormFileClass.root)\n\t}\n}\n"]}
1
+ {"version":3,"file":"gov-form-file.js","sourceRoot":"","sources":["../../../../../../../src/components/gov-form/file/gov-form-file.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Event, EventEmitter, h, Host, Method, Prop, State, Watch } from \"@stencil/core\"\nimport { createID } from \"../../../utils/string.utils\"\nimport { FormFileClass } from \"./constants\"\nimport { govHost, toBoolAttr, toBoolAttrIfDefined } from \"../../../helpers/Dom/template\"\nimport { validateWcagLabelFor, validateWcagRef } from \"../../../helpers/Validate/wcag\"\nimport { canValidateWcagOnRender } from \"../../../helpers/Dom/win\"\nimport { fileAcceptValidation, fileSizeValidation, formatBytes } from \"../../../utils/file.utils\"\nimport { delay } from \"../../../utils/utils\"\nimport { GovForm } from \"../../../helpers/Dom/form.types\"\nimport { GovHost } from \"../../../helpers/Dom/template.types\"\nimport { govForm } from \"../../../helpers/Dom/form\"\nimport { GovFormFileEvent, GovFormFileItem } from \"./gov-form-file.types\"\n\n@Component({\n\ttag: \"gov-form-file\",\n\tstyleUrl: \"gov-form-file.scss\",\n})\nexport class GovFormFile {\n\tprivate f: GovForm\n\tprivate readonly h: GovHost\n\n\tprivate areaRef?: HTMLDivElement\n\tprivate inputRef?: HTMLInputElement\n\tprivate readonly fileId: string\n\n\tconstructor() {\n\t\tthis.fileId = createID(\"GovInputFile\")\n\n\t\tthis.h = govHost(this.host)\n\t\tthis.f = govForm(this.h)\n\t}\n\n\t@Element() host: HTMLGovFormFileElement\n\t/**\n\t * Expands the file input to fill 100% of the container width.\n\t */\n\t@Prop() readonly expanded: boolean = false\n\t/**\n\t * Set whether the input is required or not. Please note that this is necessary for accessible inputs when the user is required to fill them.\n\t * When using this property you need to also set “novalidate” attribute to your form element to prevent browser from displaying its own validation errors.\n\t */\n\t@Prop() readonly required: boolean = false\n\t/**\n\t * Makes the File component disabled.\n\t * This prevents users from being able to interact with the File, and conveys its inactive state to assistive technologies.\n\t */\n\t@Prop() readonly disabled: boolean\n\t/**\n\t * Show list of attachments\n\t */\n\t@Prop({ attribute: \"display-attachments\" }) readonly displayAttachments: boolean = true\n\t/**\n\t * Name of the input.\n\t */\n\t@Prop() readonly name: string\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/accept\n\t */\n\t@Prop() readonly accept: string\n\t/**\n\t * Same as original parameter\n\t * @link https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/multiple\n\t */\n\t@Prop() readonly multiple: boolean = false\n\t/**\n\t * Maximum embedded file size\n\t */\n\t@Prop({ attribute: \"max-file-size\" }) readonly maxFileSize: number = -1\n\t/**\n\t * Custom File identifier.\n\t */\n\t@Prop({ attribute: \"identifier\" }) readonly identifier: string\n\t/**\n\t * Indicates the entered value does not conform to the format expected by the application.\n\t */\n\t@Prop() readonly invalid: boolean\n\t/**\n\t * Error message when the maximum file size is exceeded\n\t */\n\t@Prop({ attribute: \"error-size\" }) readonly errorSize: string = \"Soubor je větší než povolená velikost {FILE_SIZE}\"\n\t/**\n\t * Insert unsupported file error message\n\t */\n\t@Prop({ attribute: \"error-accept\" }) readonly errorAccept: string = \"Soubor tohoto typu není povolen\"\n\t/**\n\t * Description of the list of attachments\n\t */\n\t@Prop({ attribute: \"attachments-label\" }) readonly attachmentsLabel: string = \"Přílohy\"\n\t/**\n\t * 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 * Adds accessible label for the remove button that is only shown for screen readers.\n\t */\n\t@Prop({ attribute: \"wcag-remove-label\" }) readonly wcagRemoveLabel: string = \"Odebrat soubor {FILE_NAME}\"\n\t/**\n\t * Adds accessible label for the list of attachments.\n\t */\n\t@Prop({ attribute: \"wcag-attachments-label\" }) readonly wcagAttachmentsLabel: string = \"Přílohy\"\n\t/**\n\t * Emitted when the File has focus.\n\t */\n\t@Event({ eventName: \"gov-focus\" }) govFocus: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Emitted when the File loses focus.\n\t */\n\t@Event({ eventName: \"gov-blur\" }) govBlur: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Called when the list of inserted files is changed\n\t */\n\t@Event({ eventName: \"gov-files\" }) govFiles: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Called when a new file is added\n\t */\n\t@Event({ eventName: \"gov-add-file\" }) govAddFile: EventEmitter<GovFormFileEvent>\n\t/**\n\t * Called when a file is removed from the list\n\t */\n\t@Event({ eventName: \"gov-remove-file\" }) govRemoveFile: EventEmitter<GovFormFileEvent>\n\n\t@State() files: GovFormFileItem[] = []\n\n\t@Watch(\"disabled\")\n\t@Watch(\"invalid\")\n\twatchDisabled(): void {\n\t\tthis.passControlAttrs()\n\t}\n\n\tprivate passControlAttrs() {\n\t\tthis.f.passAttrToControl(\"disabled\", toBoolAttr(this.disabled))\n\t\tthis.f.passAttrToControl(\"invalid\", toBoolAttr(this.invalid))\n\t\tthis.f.passAttrToControl(\"type\", \"File\")\n\t}\n\n\n\tprivate registerListeners() {\n\t\tfunction highlight() {\n\t\t\tthis.areaRef.classList.add(\"highlight\")\n\t\t}\n\n\t\tfunction unhighlight() {\n\t\t\tthis.areaRef.classList.remove(\"highlight\")\n\t\t}\n\n\t\tthis.inputRef.addEventListener(\n\t\t\t\"change\",\n\t\t\te => {\n\t\t\t\te.preventDefault()\n\t\t\t\te.stopPropagation()\n\t\t\t\tconst files = (e.target as HTMLInputElement).files\n\t\t\t\tthis.validateFiles(files)\n\t\t\t},\n\t\t\tfalse,\n\t\t)\n\t\t//this.inputRef.addEventListener('focus')\n\n\t\tif (this.expanded) {\n\t\t\tconst events = [\"dragover\", \"dragleave\"]\n\t\t\tconst inEvents = [\"dragenter\", \"dragover\", \"mouseenter\"]\n\t\t\tconst outEvents = [\"dragleave\", \"drop\", \"mouseleave\"]\n\n\t\t\tevents.map(eventName => this.inputRef.addEventListener(eventName, this.preventDefaults.bind(this), false))\n\t\t\tinEvents.map(eventName => this.inputRef.addEventListener(eventName, highlight.bind(this), false))\n\t\t\toutEvents.forEach(eventName => this.inputRef.addEventListener(eventName, unhighlight.bind(this), false))\n\n\t\t\tthis.areaRef.addEventListener(\"drop\", this.handleDrop.bind(this), false)\n\t\t}\n\t}\n\n\tpreventDefaults(e) {\n\t\te.preventDefault()\n\t\te.stopPropagation()\n\t}\n\n\thandleDrop(e: DragEvent) {\n\t\tconst dataTransfer = e.dataTransfer\n\t\tthis.validateFiles(dataTransfer.files)\n\t}\n\n\tprivate validateFiles(files: FileList) {\n\t\tlet filesBuffer: GovFormFileItem[] = []\n\t\tArray.from(files).map(file => {\n\t\t\tconst isFile = this.files.find(item => item.file.name === file.name && item.file.size === file.size) || null\n\t\t\tif (isFile === null) {\n\t\t\t\tconst isSizeValid = typeof this.maxFileSize === \"number\" && this.maxFileSize > 0 ? fileSizeValidation(file, this.maxFileSize) : true\n\t\t\t\tconst isAcceptValid = fileAcceptValidation(file, this.accept)\n\t\t\t\tconst newFile = {\n\t\t\t\t\tid: createID(\"GovFormFile\"),\n\t\t\t\t\tfile,\n\t\t\t\t\tacceptValid: isAcceptValid,\n\t\t\t\t\tsizeValid: isSizeValid,\n\t\t\t\t}\n\t\t\t\tif (this.displayAttachments) {\n\t\t\t\t\tthis.files = [...this.files, newFile]\n\t\t\t\t} else {\n\t\t\t\t\tfilesBuffer = [...filesBuffer, newFile]\n\t\t\t\t}\n\t\t\t\tthis.govAddFile.emit({\n\t\t\t\t\tcomponent: FormFileClass.root,\n\t\t\t\t\tfile: newFile,\n\t\t\t\t})\n\t\t\t}\n\t\t})\n\n\t\tthis.govFiles.emit({\n\t\t\tcomponent: FormFileClass.root,\n\t\t\tfiles: filesBuffer.length ? filesBuffer : this.files,\n\t\t})\n\t}\n\n\tcomponentWillLoad() {\n\t\tthis.f.passAttrToLabel(\"required\", String(this.required))\n\t\tthis.watchDisabled()\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\n\t\tthis.registerListeners()\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class={this.h.classes([FormFileClass.root])} invalid={toBoolAttrIfDefined(this.invalid)} expanded={toBoolAttrIfDefined(this.expanded)}>\n\t\t\t\t<div class={FormFileClass.area} ref={el => (this.areaRef = el as HTMLDivElement)}>\n\t\t\t\t\t<slot />\n\t\t\t\t\t<input\n\t\t\t\t\t\tclass={FormFileClass.input}\n\t\t\t\t\t\tref={el => (this.inputRef = el as HTMLInputElement)}\n\t\t\t\t\t\tid={this.identifier || this.fileId}\n\t\t\t\t\t\ttype=\"file\"\n\t\t\t\t\t\tname={this.name}\n\t\t\t\t\t\taccept={this.accept}\n\t\t\t\t\t\tmultiple={this.multiple}\n\t\t\t\t\t\tonChange={this.onChangeHandler.bind(this)}\n\t\t\t\t\t\tonFocus={this.onFocusHandler.bind(this)}\n\t\t\t\t\t\tonBlur={this.onBlurHandler.bind(this)}\n\t\t\t\t\t\trequired={this.required}\n\t\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\t\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-disabled={toBoolAttrIfDefined(this.disabled)}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\n\t\t\t\t{this.h.hasSlot(\"attachments\") ? (\n\t\t\t\t\t<div class={FormFileClass.attachments}>\n\t\t\t\t\t\t<slot name={\"attachments\"} />\n\t\t\t\t\t</div>\n\t\t\t\t) : null}\n\n\t\t\t\t{this.files.length && this.displayAttachments ? (\n\t\t\t\t\t<div class={FormFileClass.attachments}>\n\t\t\t\t\t\t<gov-attachments label={this.wcagAttachmentsLabel} wcag-label={this.wcagAttachmentsLabel}>\n\t\t\t\t\t\t\t{this.files.map(item => (\n\t\t\t\t\t\t\t\t<gov-attachments-item wcag-remove-labelled-by={item.id} on-gov-remove={() => this.onRemoveFileHandler(item)}>\n\t\t\t\t\t\t\t\t\t<span class={\"sr-only\"} id={item.id}>\n\t\t\t\t\t\t\t\t\t\t{this.wcagRemoveLabel.replace(\"{FILE_NAME}\", item.file.name)}\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t{item.file.name}\n\t\t\t\t\t\t\t\t\t{item.acceptValid === false ? (\n\t\t\t\t\t\t\t\t\t\t<gov-form-message slot=\"message\" variant=\"error\">\n\t\t\t\t\t\t\t\t\t\t\t<gov-icon slot=\"icon\" name=\"exclamation-triangle-fill\"></gov-icon>\n\t\t\t\t\t\t\t\t\t\t\t{item.acceptValid === false ? this.errorAccept : null}\n\t\t\t\t\t\t\t\t\t\t</gov-form-message>\n\t\t\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t\t\t\t{item.sizeValid === false ? (\n\t\t\t\t\t\t\t\t\t\t<gov-form-message slot=\"message\" variant=\"error\">\n\t\t\t\t\t\t\t\t\t\t\t<gov-icon slot=\"icon\" name=\"exclamation-triangle-fill\"></gov-icon>\n\t\t\t\t\t\t\t\t\t\t\t{this.errorSize.replace(\"{FILE_SIZE}\", formatBytes(this.maxFileSize))}\n\t\t\t\t\t\t\t\t\t\t</gov-form-message>\n\t\t\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t\t\t\t<span slot=\"info\">({formatBytes(item.file.size)})</span>\n\t\t\t\t\t\t\t\t</gov-attachments-item>\n\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t</gov-attachments>\n\t\t\t\t\t</div>\n\t\t\t\t) : null}\n\t\t\t</Host>\n\t\t)\n\t}\n\n\tprivate onRemoveFileHandler(file: GovFormFileItem) {\n\t\tconst index = this.files.findIndex(item => item.id === file.id)\n\t\tif (index !== -1) {\n\t\t\tconst files = this.files\n\t\t\tconst removeFile = this.files[index]\n\t\t\tfiles.splice(index, 1)\n\t\t\tthis.files = [...files]\n\t\t\tthis.govRemoveFile.emit({\n\t\t\t\tcomponent: FormFileClass.root,\n\t\t\t\tfile: removeFile,\n\t\t\t})\n\t\t\tthis.govFiles.emit({\n\t\t\t\tcomponent: FormFileClass.root,\n\t\t\t\tfiles,\n\t\t\t})\n\t\t}\n\t}\n\n\tprivate onFocusHandler(e: FocusEvent) {\n\t\te.stopPropagation()\n\t\tthis.govFocus.emit({\n\t\t\tcomponent: FormFileClass.root,\n\t\t\toriginalEvent: e,\n\t\t})\n\t}\n\n\tprivate onBlurHandler(e: FocusEvent) {\n\t\te.stopPropagation()\n\t\tthis.govBlur.emit({\n\t\t\tcomponent: FormFileClass.root,\n\t\t\toriginalEvent: e,\n\t\t})\n\t}\n\n\tprivate onChangeHandler(e: Event) {\n\t\te.stopPropagation()\n\t}\n\n\t/**\n\t * Returns the reference of the native element\n\t */\n\t@Method()\n\tasync getRef(): Promise<HTMLInputElement> {\n\t\treturn this.inputRef\n\t}\n\n\t/**\n\t * Returns the reference of the native area element\n\t */\n\t@Method()\n\tasync getAreaRef(): Promise<HTMLDivElement> {\n\t\treturn this.areaRef\n\t}\n\n\t/**\n\t * Remove all files from component state\n\t */\n\t@Method()\n\tasync reset(): Promise<void> {\n\t\tthis.files = []\n\t}\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\", FormFileClass.root)\n\t\tvalidateWcagRef(this.wcagLabelledBy, \"wcag-labelled-by\", FormFileClass.root)\n\t\tvalidateWcagLabelFor(this.identifier || this.fileId, this.wcagLabelledBy, FormFileClass.root)\n\t}\n}\n"]}
@@ -292,6 +292,10 @@
292
292
  .gov-form-input *[slot=right-icon] {
293
293
  right: 0;
294
294
  }
295
+ .gov-form-input *[slot=prefix],
296
+ .gov-form-input *[slot=sufix] {
297
+ margin: 0;
298
+ }
295
299
  [size=s].gov-form-input {
296
300
  font-weight: var(--gov-text-s-font-weight);
297
301
  font-size: var(--gov-text-s-font-size);
@@ -431,7 +435,7 @@
431
435
  border: var(--gov-form-input-border-primary, 0.0625rem solid var(--gov-color-primary-600));
432
436
  }
433
437
  [variant=primary].gov-form-input *[slot=left-icon],
434
- [variant=primary].gov-form-input *[slot=right-icon] {
438
+ [variant=primary].gov-form-input *[slot=right-icon]:not(.icon-arrow) {
435
439
  color: var(--gov-form-input-icon-color-primary, var(--gov-color-primary));
436
440
  }
437
441
  [variant=secondary].gov-form-input input,
@@ -441,7 +445,7 @@
441
445
  border: var(--gov-form-input-border-secondary, 0.0625rem solid var(--gov-color-secondary-700));
442
446
  }
443
447
  [variant=secondary].gov-form-input *[slot=left-icon],
444
- [variant=secondary].gov-form-input *[slot=right-icon] {
448
+ [variant=secondary].gov-form-input *[slot=right-icon]:not(.icon-arrow) {
445
449
  color: var(--gov-form-input-icon-color-secondary, var(--gov-color-primary));
446
450
  }
447
451
  [disabled=""].gov-form-input, [disabled=true i].gov-form-input, [disabled="1"].gov-form-input {
@@ -462,7 +466,7 @@
462
466
  [disabled=""].gov-form-input *[slot=right-icon], [disabled=true i].gov-form-input *[slot=left-icon],
463
467
  [disabled=true i].gov-form-input *[slot=right-icon], [disabled="1"].gov-form-input *[slot=left-icon],
464
468
  [disabled="1"].gov-form-input *[slot=right-icon] {
465
- color: var(--gov-form-state-color-disabled, var(--gov-color-secondary-600));
469
+ color: var(--gov-form-state-color-disabled, var(--gov-color-secondary-600)) !important;
466
470
  }
467
471
  [invalid=""].gov-form-input input,
468
472
  [invalid=""].gov-form-input select,
@@ -490,18 +494,24 @@
490
494
  [invalid=""].gov-form-input *[slot=right-icon], [invalid=true i].gov-form-input *[slot=left-icon],
491
495
  [invalid=true i].gov-form-input *[slot=right-icon], [invalid="1"].gov-form-input *[slot=left-icon],
492
496
  [invalid="1"].gov-form-input *[slot=right-icon] {
493
- color: var(--gov-form-state-color-error, var(--gov-color-error));
497
+ color: var(--gov-form-state-color-error, var(--gov-color-error)) !important;
494
498
  }
495
- [success=""].gov-form-input *[slot=right-icon], [success=true i].gov-form-input *[slot=right-icon], [success="1"].gov-form-input *[slot=right-icon] {
499
+ [invalid=""].gov-form-input *[slot=right-icon]:not(.icon-validation):not(.icon-arrow), [invalid=true i].gov-form-input *[slot=right-icon]:not(.icon-validation):not(.icon-arrow), [invalid="1"].gov-form-input *[slot=right-icon]:not(.icon-validation):not(.icon-arrow) {
500
+ display: none;
501
+ }
502
+ [success=""].gov-form-input *[slot=right-icon]:not(.icon-arrow), [success=true i].gov-form-input *[slot=right-icon]:not(.icon-arrow), [success="1"].gov-form-input *[slot=right-icon]:not(.icon-arrow) {
496
503
  color: var(--gov-form-state-color-success, var(--gov-color-success));
497
504
  }
498
505
  [success=""].gov-form-input *[slot=right-icon]:not(.icon-validation):not(.icon-arrow), [success=true i].gov-form-input *[slot=right-icon]:not(.icon-validation):not(.icon-arrow), [success="1"].gov-form-input *[slot=right-icon]:not(.icon-validation):not(.icon-arrow) {
499
506
  display: none;
500
507
  }
501
-
502
- .gov-form-input[invalid=""] *[slot=right-icon]:not(.icon-validation):not(.icon-arrow), .gov-form-input[invalid=true i] *[slot=right-icon]:not(.icon-validation):not(.icon-arrow), .gov-form-input[invalid="1"] *[slot=right-icon]:not(.icon-validation):not(.icon-arrow) {
508
+ [multiline=""].gov-form-input *[slot=left-icon],
509
+ [multiline=""].gov-form-input *[slot=right-icon], [multiline=true i].gov-form-input *[slot=left-icon],
510
+ [multiline=true i].gov-form-input *[slot=right-icon], [multiline="1"].gov-form-input *[slot=left-icon],
511
+ [multiline="1"].gov-form-input *[slot=right-icon] {
503
512
  display: none;
504
513
  }
514
+
505
515
  .gov-form-input[type=reset] input {
506
516
  border-width: 0;
507
517
  }
@@ -309,6 +309,10 @@
309
309
  .gov-form-multi-select *[slot=right-icon] {
310
310
  right: 0;
311
311
  }
312
+ .gov-form-multi-select *[slot=prefix],
313
+ .gov-form-multi-select *[slot=sufix] {
314
+ margin: 0;
315
+ }
312
316
  [size=s].gov-form-multi-select {
313
317
  font-weight: var(--gov-text-s-font-weight);
314
318
  font-size: var(--gov-text-s-font-size);
@@ -448,7 +452,7 @@
448
452
  border: var(--gov-form-input-border-primary, 0.0625rem solid var(--gov-color-primary-600));
449
453
  }
450
454
  [variant=primary].gov-form-multi-select *[slot=left-icon],
451
- [variant=primary].gov-form-multi-select *[slot=right-icon] {
455
+ [variant=primary].gov-form-multi-select *[slot=right-icon]:not(.icon-arrow) {
452
456
  color: var(--gov-form-input-icon-color-primary, var(--gov-color-primary));
453
457
  }
454
458
  [variant=secondary].gov-form-multi-select input,
@@ -458,7 +462,7 @@
458
462
  border: var(--gov-form-input-border-secondary, 0.0625rem solid var(--gov-color-secondary-700));
459
463
  }
460
464
  [variant=secondary].gov-form-multi-select *[slot=left-icon],
461
- [variant=secondary].gov-form-multi-select *[slot=right-icon] {
465
+ [variant=secondary].gov-form-multi-select *[slot=right-icon]:not(.icon-arrow) {
462
466
  color: var(--gov-form-input-icon-color-secondary, var(--gov-color-primary));
463
467
  }
464
468
  [disabled=""].gov-form-multi-select, [disabled=true i].gov-form-multi-select, [disabled="1"].gov-form-multi-select {
@@ -479,7 +483,7 @@
479
483
  [disabled=""].gov-form-multi-select *[slot=right-icon], [disabled=true i].gov-form-multi-select *[slot=left-icon],
480
484
  [disabled=true i].gov-form-multi-select *[slot=right-icon], [disabled="1"].gov-form-multi-select *[slot=left-icon],
481
485
  [disabled="1"].gov-form-multi-select *[slot=right-icon] {
482
- color: var(--gov-form-state-color-disabled, var(--gov-color-secondary-600));
486
+ color: var(--gov-form-state-color-disabled, var(--gov-color-secondary-600)) !important;
483
487
  }
484
488
  [invalid=""].gov-form-multi-select input,
485
489
  [invalid=""].gov-form-multi-select select,
@@ -507,14 +511,23 @@
507
511
  [invalid=""].gov-form-multi-select *[slot=right-icon], [invalid=true i].gov-form-multi-select *[slot=left-icon],
508
512
  [invalid=true i].gov-form-multi-select *[slot=right-icon], [invalid="1"].gov-form-multi-select *[slot=left-icon],
509
513
  [invalid="1"].gov-form-multi-select *[slot=right-icon] {
510
- color: var(--gov-form-state-color-error, var(--gov-color-error));
514
+ color: var(--gov-form-state-color-error, var(--gov-color-error)) !important;
515
+ }
516
+ [invalid=""].gov-form-multi-select *[slot=right-icon]:not(.icon-validation):not(.icon-arrow), [invalid=true i].gov-form-multi-select *[slot=right-icon]:not(.icon-validation):not(.icon-arrow), [invalid="1"].gov-form-multi-select *[slot=right-icon]:not(.icon-validation):not(.icon-arrow) {
517
+ display: none;
511
518
  }
512
- [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] {
519
+ [success=""].gov-form-multi-select *[slot=right-icon]:not(.icon-arrow), [success=true i].gov-form-multi-select *[slot=right-icon]:not(.icon-arrow), [success="1"].gov-form-multi-select *[slot=right-icon]:not(.icon-arrow) {
513
520
  color: var(--gov-form-state-color-success, var(--gov-color-success));
514
521
  }
515
522
  [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) {
516
523
  display: none;
517
524
  }
525
+ [multiline=""].gov-form-multi-select *[slot=left-icon],
526
+ [multiline=""].gov-form-multi-select *[slot=right-icon], [multiline=true i].gov-form-multi-select *[slot=left-icon],
527
+ [multiline=true i].gov-form-multi-select *[slot=right-icon], [multiline="1"].gov-form-multi-select *[slot=left-icon],
528
+ [multiline="1"].gov-form-multi-select *[slot=right-icon] {
529
+ display: none;
530
+ }
518
531
 
519
532
  .gov-form-multi-select {
520
533
  background: none;
@@ -526,20 +539,25 @@
526
539
  .gov-form-multi-select select::-ms-expand {
527
540
  display: none;
528
541
  }
542
+ [size=s].gov-form-multi-select *[slot=right-icon] {
543
+ right: var(--gov-form-select-s-arrow-right-position, 0.75rem);
544
+ width: var(--gov-form-select-s-arrow-size, 0.75rem);
545
+ height: var(--gov-form-select-s-arrow-size, 0.75rem);
546
+ }
529
547
  [size=m].gov-form-multi-select *[slot=right-icon] {
530
548
  right: var(--gov-form-select-m-arrow-right-position, 1rem);
531
- width: var(--gov-form-select-m-arrow-size, 0.5rem);
532
- height: var(--gov-form-select-m-arrow-size, 0.5rem);
549
+ width: var(--gov-form-select-m-arrow-size, 0.75rem);
550
+ height: var(--gov-form-select-m-arrow-size, 0.75rem);
533
551
  }
534
552
  [size=l].gov-form-multi-select *[slot=right-icon] {
535
553
  right: var(--gov-form-select-l-arrow-right-position, 1rem);
536
- width: var(--gov-form-select-l-arrow-size, 0.5rem);
537
- height: var(--gov-form-select-l-arrow-size, 0.5rem);
554
+ width: var(--gov-form-select-l-arrow-size, 1rem);
555
+ height: var(--gov-form-select-l-arrow-size, 1rem);
538
556
  }
539
557
  [size=xl].gov-form-multi-select *[slot=right-icon] {
540
558
  right: var(--gov-form-select-xl-arrow-right-position, 1.3125rem);
541
- width: var(--gov-form-select-xl-arrow-size, 0.625rem);
542
- height: var(--gov-form-select-xl-arrow-size, 0.625rem);
559
+ width: var(--gov-form-select-xl-arrow-size, 1rem);
560
+ height: var(--gov-form-select-xl-arrow-size, 1rem);
543
561
  }
544
562
 
545
563
  .gov-form-multi-select {
@@ -567,4 +585,7 @@
567
585
  padding: 0rem 0rem 0rem 0.5rem;
568
586
  background: var(--gov-form-multiselect-bg, var(--gov-color-primary-200));
569
587
  transition: 150ms linear background-color;
588
+ }
589
+ .gov-form-multi-select .icon-validation {
590
+ display: none;
570
591
  }
@@ -244,6 +244,7 @@
244
244
  .gov-form-radio input + span {
245
245
  position: relative;
246
246
  display: block;
247
+ cursor: pointer;
247
248
  }
248
249
  .gov-form-radio input + span::before {
249
250
  content: "";
@@ -295,6 +295,10 @@
295
295
  .gov-form-select *[slot=right-icon] {
296
296
  right: 0;
297
297
  }
298
+ .gov-form-select *[slot=prefix],
299
+ .gov-form-select *[slot=sufix] {
300
+ margin: 0;
301
+ }
298
302
  [size=s].gov-form-select {
299
303
  font-weight: var(--gov-text-s-font-weight);
300
304
  font-size: var(--gov-text-s-font-size);
@@ -434,7 +438,7 @@
434
438
  border: var(--gov-form-input-border-primary, 0.0625rem solid var(--gov-color-primary-600));
435
439
  }
436
440
  [variant=primary].gov-form-select *[slot=left-icon],
437
- [variant=primary].gov-form-select *[slot=right-icon] {
441
+ [variant=primary].gov-form-select *[slot=right-icon]:not(.icon-arrow) {
438
442
  color: var(--gov-form-input-icon-color-primary, var(--gov-color-primary));
439
443
  }
440
444
  [variant=secondary].gov-form-select input,
@@ -444,7 +448,7 @@
444
448
  border: var(--gov-form-input-border-secondary, 0.0625rem solid var(--gov-color-secondary-700));
445
449
  }
446
450
  [variant=secondary].gov-form-select *[slot=left-icon],
447
- [variant=secondary].gov-form-select *[slot=right-icon] {
451
+ [variant=secondary].gov-form-select *[slot=right-icon]:not(.icon-arrow) {
448
452
  color: var(--gov-form-input-icon-color-secondary, var(--gov-color-primary));
449
453
  }
450
454
  [disabled=""].gov-form-select, [disabled=true i].gov-form-select, [disabled="1"].gov-form-select {
@@ -465,7 +469,7 @@
465
469
  [disabled=""].gov-form-select *[slot=right-icon], [disabled=true i].gov-form-select *[slot=left-icon],
466
470
  [disabled=true i].gov-form-select *[slot=right-icon], [disabled="1"].gov-form-select *[slot=left-icon],
467
471
  [disabled="1"].gov-form-select *[slot=right-icon] {
468
- color: var(--gov-form-state-color-disabled, var(--gov-color-secondary-600));
472
+ color: var(--gov-form-state-color-disabled, var(--gov-color-secondary-600)) !important;
469
473
  }
470
474
  [invalid=""].gov-form-select input,
471
475
  [invalid=""].gov-form-select select,
@@ -493,14 +497,23 @@
493
497
  [invalid=""].gov-form-select *[slot=right-icon], [invalid=true i].gov-form-select *[slot=left-icon],
494
498
  [invalid=true i].gov-form-select *[slot=right-icon], [invalid="1"].gov-form-select *[slot=left-icon],
495
499
  [invalid="1"].gov-form-select *[slot=right-icon] {
496
- color: var(--gov-form-state-color-error, var(--gov-color-error));
500
+ color: var(--gov-form-state-color-error, var(--gov-color-error)) !important;
501
+ }
502
+ [invalid=""].gov-form-select *[slot=right-icon]:not(.icon-validation):not(.icon-arrow), [invalid=true i].gov-form-select *[slot=right-icon]:not(.icon-validation):not(.icon-arrow), [invalid="1"].gov-form-select *[slot=right-icon]:not(.icon-validation):not(.icon-arrow) {
503
+ display: none;
497
504
  }
498
- [success=""].gov-form-select *[slot=right-icon], [success=true i].gov-form-select *[slot=right-icon], [success="1"].gov-form-select *[slot=right-icon] {
505
+ [success=""].gov-form-select *[slot=right-icon]:not(.icon-arrow), [success=true i].gov-form-select *[slot=right-icon]:not(.icon-arrow), [success="1"].gov-form-select *[slot=right-icon]:not(.icon-arrow) {
499
506
  color: var(--gov-form-state-color-success, var(--gov-color-success));
500
507
  }
501
508
  [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) {
502
509
  display: none;
503
510
  }
511
+ [multiline=""].gov-form-select *[slot=left-icon],
512
+ [multiline=""].gov-form-select *[slot=right-icon], [multiline=true i].gov-form-select *[slot=left-icon],
513
+ [multiline=true i].gov-form-select *[slot=right-icon], [multiline="1"].gov-form-select *[slot=left-icon],
514
+ [multiline="1"].gov-form-select *[slot=right-icon] {
515
+ display: none;
516
+ }
504
517
 
505
518
  .gov-form-select {
506
519
  background: none;
@@ -512,18 +525,23 @@
512
525
  .gov-form-select select::-ms-expand {
513
526
  display: none;
514
527
  }
528
+ [size=s].gov-form-select *[slot=right-icon] {
529
+ right: var(--gov-form-select-s-arrow-right-position, 0.75rem);
530
+ width: var(--gov-form-select-s-arrow-size, 0.75rem);
531
+ height: var(--gov-form-select-s-arrow-size, 0.75rem);
532
+ }
515
533
  [size=m].gov-form-select *[slot=right-icon] {
516
534
  right: var(--gov-form-select-m-arrow-right-position, 1rem);
517
- width: var(--gov-form-select-m-arrow-size, 0.5rem);
518
- height: var(--gov-form-select-m-arrow-size, 0.5rem);
535
+ width: var(--gov-form-select-m-arrow-size, 0.75rem);
536
+ height: var(--gov-form-select-m-arrow-size, 0.75rem);
519
537
  }
520
538
  [size=l].gov-form-select *[slot=right-icon] {
521
539
  right: var(--gov-form-select-l-arrow-right-position, 1rem);
522
- width: var(--gov-form-select-l-arrow-size, 0.5rem);
523
- height: var(--gov-form-select-l-arrow-size, 0.5rem);
540
+ width: var(--gov-form-select-l-arrow-size, 1rem);
541
+ height: var(--gov-form-select-l-arrow-size, 1rem);
524
542
  }
525
543
  [size=xl].gov-form-select *[slot=right-icon] {
526
544
  right: var(--gov-form-select-xl-arrow-right-position, 1.3125rem);
527
- width: var(--gov-form-select-xl-arrow-size, 0.625rem);
528
- height: var(--gov-form-select-xl-arrow-size, 0.625rem);
545
+ width: var(--gov-form-select-xl-arrow-size, 1rem);
546
+ height: var(--gov-form-select-xl-arrow-size, 1rem);
529
547
  }
@@ -69,7 +69,7 @@ export class GovFormSelect {
69
69
  });
70
70
  }
71
71
  render() {
72
- return (h(Host, { class: FormSelectClass.root, size: this.size, variant: this.variant }, this.h.hasSlot("prefix") && h("slot", { name: "prefix" }), h("span", { class: "element" }, h("gov-icon", { slot: "right-icon", name: "chevron-down" }), h("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: el => (this.selectRef = el), "aria-disabled": toBoolAttrIfDefined(this.disabled), "aria-activedescendant": this.wcagActiveDescendant, "aria-controls": this.wcagControls, "aria-required": toBoolAttrIfDefined(this.required), "aria-invalid": toBoolAttrIfDefined(this.invalid), "aria-describedby": this.wcagDescribedBy, "aria-labelledby": this.wcagLabelledBy, "aria-owns": this.wcagOwns }, h("slot", null))), this.h.hasSlot("sufix") && h("slot", { name: "sufix" })));
72
+ return (h(Host, { class: FormSelectClass.root, size: this.size, variant: this.variant }, this.h.hasSlot("prefix") && h("slot", { name: "prefix" }), h("span", { class: "element" }, h("gov-icon", { slot: "right-icon", name: "chevron-down", class: "icon-arrow" }), h("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: el => (this.selectRef = el), "aria-disabled": toBoolAttrIfDefined(this.disabled), "aria-activedescendant": this.wcagActiveDescendant, "aria-controls": this.wcagControls, "aria-required": toBoolAttrIfDefined(this.required), "aria-invalid": toBoolAttrIfDefined(this.invalid), "aria-describedby": this.wcagDescribedBy, "aria-labelledby": this.wcagLabelledBy, "aria-owns": this.wcagOwns }, h("slot", null))), this.h.hasSlot("sufix") && h("slot", { name: "sufix" })));
73
73
  }
74
74
  onFocusHandler(e) {
75
75
  this.focused = true;
@@ -1 +1 @@
1
- {"version":3,"file":"gov-form-select.js","sourceRoot":"","sources":["../../../../../../../src/components/gov-form/select/gov-form-select.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Event, EventEmitter, h, Host, Method, Prop, State, Watch } from \"@stencil/core\"\nimport { govForm } from \"../../../helpers/Dom/form\"\nimport { GovForm } from \"../../../helpers/Dom/form.types\"\nimport { govHost, toBoolAttr, toBoolAttrIfDefined } from \"../../../helpers/Dom/template\"\nimport { GovHost } from \"../../../helpers/Dom/template.types\"\nimport { canValidateWcagOnRender } from \"../../../helpers/Dom/win\"\nimport { validateProp } from \"../../../helpers/Validate/props\"\nimport { validateWcagLabelFor, validateWcagRef } from \"../../../helpers/Validate/wcag\"\nimport { createID } from \"../../../utils/string.utils\"\nimport { delay } from \"../../../utils/utils\"\nimport {\n\tFormSelectClass,\n\tFormSelectSizes,\n\tFormSelectSizesType,\n\tFormSelectVariants,\n\tFormSelectVariantType,\n} from \"./constants\"\nimport { FormSelectEvent } from \"./gov-form-select.types\"\n\n@Component({\n\ttag: \"gov-form-select\",\n\tstyleUrl: \"gov-form-select.scss\",\n})\nexport class GovFormSelect {\n\tprivate f: GovForm\n\tprivate readonly 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.f = govForm(this.h)\n\t\tthis.selectId = createID(\"GovSelect\")\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 = 'secondary'\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<FormSelectEvent>\n\t/**\n\t * Emitted when the select loses focus.\n\t */\n\t@Event({ eventName: \"gov-blur\" }) govBlur: EventEmitter<FormSelectEvent>\n\t/**\n\t * Emitted when the select change value.\n\t */\n\t@Event({ eventName: \"gov-change\" }) govChange: EventEmitter<FormSelectEvent>\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\t@Watch(\"disabled\")\n\t@Watch(\"invalid\")\n\t@Watch(\"size\")\n\twatchDisabled(): void {\n\t\tthis.passControlAttrs()\n\t}\n\n\t@Watch(\"value\")\n\twatchValue(): void {\n\t\tthis.markSelectedValue()\n\t}\n\n\tprivate passControlAttrs() {\n\t\tthis.f.passAttrToControl(\"size\", this.size)\n\t\tthis.f.passAttrToControl(\"disabled\", toBoolAttr(this.disabled))\n\t\tthis.f.passAttrToControl(\"invalid\", toBoolAttr(this.invalid))\n\t\tthis.f.passAttrToControl(\"type\", \"select\")\n\t}\n\n\tcomponentWillLoad() {\n\t\tthis.validateVariant(this.variant)\n\t\tthis.validateSize(this.size)\n\n\t\tthis.markSelectedValue()\n\t\tthis.passControlAttrs()\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\tprivate markSelectedValue() {\n\t\tthis.host.querySelectorAll(\"option\").forEach((option: HTMLOptionElement) => {\n\t\t\tif (option.value === this.value) {\n\t\t\t\toption.setAttribute(\"selected\", \"selected\")\n\t\t\t} else {\n\t\t\t\toption.removeAttribute(\"selected\")\n\t\t\t}\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({\n\t\t\tcomponent: FormSelectClass.root,\n\t\t\toriginalEvent: e,\n\t\t\tvalue: this.value,\n\t\t})\n\t}\n\n\tprivate onBlurHandler(e: FocusEvent) {\n\t\tthis.focused = false\n\t\tthis.govBlur.emit({\n\t\t\tcomponent: FormSelectClass.root,\n\t\t\toriginalEvent: e,\n\t\t\tvalue: this.value,\n\t\t})\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({\n\t\t\tcomponent: FormSelectClass.root,\n\t\t\toriginalEvent: e,\n\t\t\tvalue: this.value,\n\t\t})\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 getRef(): 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,"file":"gov-form-select.js","sourceRoot":"","sources":["../../../../../../../src/components/gov-form/select/gov-form-select.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Event, EventEmitter, h, Host, Method, Prop, State, Watch } from \"@stencil/core\"\nimport { govForm } from \"../../../helpers/Dom/form\"\nimport { GovForm } from \"../../../helpers/Dom/form.types\"\nimport { govHost, toBoolAttr, toBoolAttrIfDefined } from \"../../../helpers/Dom/template\"\nimport { GovHost } from \"../../../helpers/Dom/template.types\"\nimport { canValidateWcagOnRender } from \"../../../helpers/Dom/win\"\nimport { validateProp } from \"../../../helpers/Validate/props\"\nimport { validateWcagLabelFor, validateWcagRef } from \"../../../helpers/Validate/wcag\"\nimport { createID } from \"../../../utils/string.utils\"\nimport { delay } from \"../../../utils/utils\"\nimport {\n\tFormSelectClass,\n\tFormSelectSizes,\n\tFormSelectSizesType,\n\tFormSelectVariants,\n\tFormSelectVariantType,\n} from \"./constants\"\nimport { FormSelectEvent } from \"./gov-form-select.types\"\n\n@Component({\n\ttag: \"gov-form-select\",\n\tstyleUrl: \"gov-form-select.scss\",\n})\nexport class GovFormSelect {\n\tprivate f: GovForm\n\tprivate readonly 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.f = govForm(this.h)\n\t\tthis.selectId = createID(\"GovSelect\")\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 = 'secondary'\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<FormSelectEvent>\n\t/**\n\t * Emitted when the select loses focus.\n\t */\n\t@Event({ eventName: \"gov-blur\" }) govBlur: EventEmitter<FormSelectEvent>\n\t/**\n\t * Emitted when the select change value.\n\t */\n\t@Event({ eventName: \"gov-change\" }) govChange: EventEmitter<FormSelectEvent>\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\t@Watch(\"disabled\")\n\t@Watch(\"invalid\")\n\t@Watch(\"size\")\n\twatchDisabled(): void {\n\t\tthis.passControlAttrs()\n\t}\n\n\t@Watch(\"value\")\n\twatchValue(): void {\n\t\tthis.markSelectedValue()\n\t}\n\n\tprivate passControlAttrs() {\n\t\tthis.f.passAttrToControl(\"size\", this.size)\n\t\tthis.f.passAttrToControl(\"disabled\", toBoolAttr(this.disabled))\n\t\tthis.f.passAttrToControl(\"invalid\", toBoolAttr(this.invalid))\n\t\tthis.f.passAttrToControl(\"type\", \"select\")\n\t}\n\n\tcomponentWillLoad() {\n\t\tthis.validateVariant(this.variant)\n\t\tthis.validateSize(this.size)\n\n\t\tthis.markSelectedValue()\n\t\tthis.passControlAttrs()\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\tprivate markSelectedValue() {\n\t\tthis.host.querySelectorAll(\"option\").forEach((option: HTMLOptionElement) => {\n\t\t\tif (option.value === this.value) {\n\t\t\t\toption.setAttribute(\"selected\", \"selected\")\n\t\t\t} else {\n\t\t\t\toption.removeAttribute(\"selected\")\n\t\t\t}\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\" class=\"icon-arrow\"></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({\n\t\t\tcomponent: FormSelectClass.root,\n\t\t\toriginalEvent: e,\n\t\t\tvalue: this.value,\n\t\t})\n\t}\n\n\tprivate onBlurHandler(e: FocusEvent) {\n\t\tthis.focused = false\n\t\tthis.govBlur.emit({\n\t\t\tcomponent: FormSelectClass.root,\n\t\t\toriginalEvent: e,\n\t\t\tvalue: this.value,\n\t\t})\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({\n\t\t\tcomponent: FormSelectClass.root,\n\t\t\toriginalEvent: e,\n\t\t\tvalue: this.value,\n\t\t})\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 getRef(): 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"]}
@@ -299,13 +299,12 @@
299
299
  line-height: var(--gov-text-xs-line-height);
300
300
  letter-spacing: var(--gov-text-xs-letter-spacing);
301
301
  margin-bottom: 0;
302
- padding-top: calc((var(--gov-form-switch-xs-indicator-height, 1.25rem) - var(--gov-text-xs-font-size) * 1.5) / 2);
303
302
  }
304
303
  .gov-form-switch[size=xs] .gov-form-switch__holder {
305
304
  gap: var(--gov-form-switch-xs-gap, 0.75rem);
306
305
  }
307
306
  .gov-form-switch[size=xs] .gov-form-switch__input {
308
- width: calc(var(--gov-form-switch-xs-indicator-height, 1.25rem) * 2.5);
307
+ width: calc(var(--gov-form-switch-xs-indicator-height, 1.25rem) * 1.6666666667);
309
308
  height: var(--gov-form-switch-xs-indicator-height, 1.25rem);
310
309
  }
311
310
  .gov-form-switch[size=xs] .gov-form-switch__indicator {
@@ -335,13 +334,12 @@
335
334
  line-height: var(--gov-text-s-line-height);
336
335
  letter-spacing: var(--gov-text-s-letter-spacing);
337
336
  margin-bottom: 0;
338
- padding-top: calc((var(--gov-form-switch-s-indicator-height, 1.375rem) - var(--gov-text-s-font-size) * 1.5) / 2);
339
337
  }
340
338
  .gov-form-switch[size=s] .gov-form-switch__holder {
341
339
  gap: var(--gov-form-switch-s-gap, 0.75rem);
342
340
  }
343
341
  .gov-form-switch[size=s] .gov-form-switch__input {
344
- width: calc(var(--gov-form-switch-s-indicator-height, 1.375rem) * 2.5);
342
+ width: calc(var(--gov-form-switch-s-indicator-height, 1.375rem) * 1.6666666667);
345
343
  height: var(--gov-form-switch-s-indicator-height, 1.375rem);
346
344
  }
347
345
  .gov-form-switch[size=s] .gov-form-switch__indicator {
@@ -371,13 +369,12 @@
371
369
  line-height: var(--gov-text-m-line-height);
372
370
  letter-spacing: var(--gov-text-m-letter-spacing);
373
371
  margin-bottom: 0;
374
- padding-top: calc((var(--gov-form-switch-m-indicator-height, 1.5rem) - var(--gov-text-m-font-size) * 1.5) / 2);
375
372
  }
376
373
  .gov-form-switch[size=m] .gov-form-switch__holder {
377
374
  gap: var(--gov-form-switch-m-gap, 1rem);
378
375
  }
379
376
  .gov-form-switch[size=m] .gov-form-switch__input {
380
- width: calc(var(--gov-form-switch-m-indicator-height, 1.5rem) * 2.5);
377
+ width: calc(var(--gov-form-switch-m-indicator-height, 1.5rem) * 1.6666666667);
381
378
  height: var(--gov-form-switch-m-indicator-height, 1.5rem);
382
379
  }
383
380
  .gov-form-switch[size=m] .gov-form-switch__indicator {
@@ -407,13 +404,12 @@
407
404
  line-height: var(--gov-text-l-line-height);
408
405
  letter-spacing: var(--gov-text-l-letter-spacing);
409
406
  margin-bottom: 0;
410
- padding-top: calc((var(--gov-form-switch-l-indicator-height, 2rem) - var(--gov-text-l-font-size) * 1.5) / 2);
411
407
  }
412
408
  .gov-form-switch[size=l] .gov-form-switch__holder {
413
409
  gap: var(--gov-form-switch-l-gap, 1rem);
414
410
  }
415
411
  .gov-form-switch[size=l] .gov-form-switch__input {
416
- width: calc(var(--gov-form-switch-l-indicator-height, 2rem) * 2.5);
412
+ width: calc(var(--gov-form-switch-l-indicator-height, 2rem) * 1.6666666667);
417
413
  height: var(--gov-form-switch-l-indicator-height, 2rem);
418
414
  }
419
415
  .gov-form-switch[size=l] .gov-form-switch__indicator {
@@ -230,9 +230,13 @@
230
230
  .gov-icon {
231
231
  display: inline-flex;
232
232
  }
233
- .gov-icon__holder,
234
- .gov-icon svg {
233
+ .gov-icon__holder {
235
234
  display: inline-flex;
236
235
  width: 100%;
237
236
  height: 100%;
237
+ }
238
+ .gov-icon svg {
239
+ display: inline-flex;
240
+ max-width: 100%;
241
+ max-height: 100%;
238
242
  }
@@ -141,6 +141,8 @@ export const basicIcons = [
141
141
  'basic/bluetooth',
142
142
  'basic/book',
143
143
  'basic/box-arrow-in-right',
144
+ 'basic/box-arrow-left',
145
+ 'basic/box-arrow-right',
144
146
  'basic/box-arrow-up-right',
145
147
  'basic/briefcase',
146
148
  'basic/briefcase-fill',
@@ -207,6 +209,7 @@ export const basicIcons = [
207
209
  'basic/house-door-fill',
208
210
  'basic/chat-left-text',
209
211
  'basic/chat-left-text-fill',
212
+ 'basic/check-circle-fill',
210
213
  'basic/check-lg',
211
214
  'basic/check-multiple',
212
215
  'basic/chevron-double-left',
@@ -227,14 +230,21 @@ export const basicIcons = [
227
230
  'basic/moon',
228
231
  'basic/omv',
229
232
  'basic/pencil-square',
233
+ 'basic/person',
234
+ 'basic/person-badge',
230
235
  'basic/person-fill',
231
236
  'basic/person-fill-bussines',
232
237
  'basic/person-search',
238
+ 'basic/person-vcard',
239
+ 'basic/person-vcard-fill',
233
240
  'basic/phone',
234
241
  'basic/plus',
235
242
  'basic/plus-circle',
236
243
  'basic/plus-lg',
237
244
  'basic/printer',
245
+ 'basic/qr-code',
246
+ 'basic/qr-code-scan',
247
+ 'basic/qr-code-scan-simple',
238
248
  'basic/question-circle',
239
249
  'basic/question-circle-fill',
240
250
  'basic/reply',