@digigov/form 0.6.9 → 0.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (307) hide show
  1. package/CHANGELOG.md +24 -1
  2. package/Field/FieldBase.js +110 -0
  3. package/Field/{ConditionalField.js → FieldConditional.js} +9 -29
  4. package/Field/FieldContainer.js +62 -0
  5. package/Field/index.js +11 -251
  6. package/Field/types.js +5 -0
  7. package/Field/utils.js +146 -0
  8. package/Fieldset/FieldsetWithContext.js +63 -0
  9. package/Fieldset/index.js +4 -63
  10. package/Fieldset/types.js +5 -0
  11. package/FormBuilder.js +178 -0
  12. package/FormContext.js +14 -0
  13. package/Questions/Questions.js +105 -0
  14. package/Questions/QuestionsContext.js +20 -0
  15. package/Questions/Step/ReviewStep.js +11 -7
  16. package/Questions/Step/Step.js +93 -0
  17. package/Questions/Step/StepArrayReview.js +79 -0
  18. package/Questions/Step/StepContext.js +37 -0
  19. package/Questions/Step/StepDescription.js +2 -2
  20. package/Questions/Step/StepForm.js +10 -6
  21. package/Questions/Step/StepTitle.js +2 -2
  22. package/Questions/Step/getAddMoreFields.js +31 -0
  23. package/Questions/Step/index.js +81 -200
  24. package/Questions/Step/types.js +5 -0
  25. package/Questions/__snapshots__/index.spec.tsx.snap +461 -2499
  26. package/Questions/getNextStep.js +30 -0
  27. package/Questions/index.js +4 -150
  28. package/Questions/types.js +5 -0
  29. package/es/Field/FieldBase.js +93 -0
  30. package/es/Field/{ConditionalField.js → FieldConditional.js} +5 -28
  31. package/es/Field/FieldContainer.js +40 -0
  32. package/es/Field/index.js +8 -233
  33. package/es/Field/types.js +1 -0
  34. package/es/Field/utils.js +122 -0
  35. package/es/Fieldset/FieldsetWithContext.js +41 -0
  36. package/es/Fieldset/index.js +3 -51
  37. package/es/Fieldset/types.js +1 -0
  38. package/es/FormBuilder.js +148 -0
  39. package/es/FormContext.js +5 -0
  40. package/es/Questions/Questions.js +84 -0
  41. package/es/Questions/QuestionsContext.js +11 -0
  42. package/es/Questions/Step/ReviewStep.js +5 -3
  43. package/es/Questions/Step/Step.js +69 -0
  44. package/es/Questions/Step/StepArrayReview.js +50 -0
  45. package/es/Questions/Step/StepContext.js +27 -0
  46. package/es/Questions/Step/StepDescription.js +1 -1
  47. package/es/Questions/Step/StepForm.js +4 -2
  48. package/es/Questions/Step/StepTitle.js +1 -1
  49. package/es/Questions/Step/getAddMoreFields.js +22 -0
  50. package/es/Questions/Step/index.js +13 -165
  51. package/es/Questions/Step/types.js +1 -0
  52. package/es/Questions/__snapshots__/index.spec.tsx.snap +461 -2499
  53. package/es/Questions/getNextStep.js +23 -0
  54. package/es/Questions/index.js +2 -119
  55. package/es/Questions/index.spec.js +2 -1
  56. package/es/Questions/types.js +1 -0
  57. package/es/index.js +2 -153
  58. package/es/inputs/index.js +5 -4
  59. package/es/internal.js +31 -0
  60. package/es/types.js +1 -0
  61. package/es/utils.js +5 -3
  62. package/es/validators/index.js +155 -0
  63. package/es/validators/types.js +1 -0
  64. package/es/validators/utils/afm.js +35 -0
  65. package/es/validators/utils/file.js +52 -0
  66. package/es/validators/utils/iban.js +123 -0
  67. package/es/validators/utils/index.js +105 -0
  68. package/es/validators/utils/phone.js +122 -0
  69. package/es/validators/utils/postal_code.js +29 -0
  70. package/es/validators/utils/uuid4.js +20 -0
  71. package/{esm → es/validators}/validators.spec.js +1 -1
  72. package/esm/Field/FieldBase.js +93 -0
  73. package/esm/Field/{ConditionalField.js → FieldConditional.js} +5 -28
  74. package/esm/Field/FieldContainer.js +40 -0
  75. package/esm/Field/index.js +8 -233
  76. package/esm/Field/types.js +1 -0
  77. package/esm/Field/utils.js +122 -0
  78. package/esm/Fieldset/FieldsetWithContext.js +41 -0
  79. package/esm/Fieldset/index.js +3 -51
  80. package/esm/Fieldset/types.js +1 -0
  81. package/esm/FormBuilder.js +148 -0
  82. package/esm/FormContext.js +5 -0
  83. package/esm/Questions/Questions.js +84 -0
  84. package/esm/Questions/QuestionsContext.js +11 -0
  85. package/esm/Questions/Step/ReviewStep.js +5 -3
  86. package/esm/Questions/Step/Step.js +69 -0
  87. package/esm/Questions/Step/StepArrayReview.js +50 -0
  88. package/esm/Questions/Step/StepContext.js +27 -0
  89. package/esm/Questions/Step/StepDescription.js +1 -1
  90. package/esm/Questions/Step/StepForm.js +4 -2
  91. package/esm/Questions/Step/StepTitle.js +1 -1
  92. package/esm/Questions/Step/getAddMoreFields.js +22 -0
  93. package/esm/Questions/Step/index.js +13 -165
  94. package/esm/Questions/Step/types.js +1 -0
  95. package/esm/Questions/__snapshots__/index.spec.tsx.snap +461 -2499
  96. package/esm/Questions/getNextStep.js +23 -0
  97. package/esm/Questions/index.js +2 -119
  98. package/esm/Questions/index.spec.js +2 -1
  99. package/esm/Questions/types.js +1 -0
  100. package/esm/index.js +3 -154
  101. package/esm/inputs/index.js +5 -4
  102. package/esm/internal.js +31 -0
  103. package/esm/types.js +1 -0
  104. package/esm/utils.js +5 -3
  105. package/esm/validators/index.js +155 -0
  106. package/esm/validators/types.js +1 -0
  107. package/esm/validators/utils/afm.js +35 -0
  108. package/esm/validators/utils/file.js +52 -0
  109. package/esm/validators/utils/iban.js +123 -0
  110. package/esm/validators/utils/index.js +105 -0
  111. package/esm/validators/utils/phone.js +122 -0
  112. package/esm/validators/utils/postal_code.js +29 -0
  113. package/esm/validators/utils/uuid4.js +20 -0
  114. package/{es → esm/validators}/validators.spec.js +1 -1
  115. package/index.js +8 -191
  116. package/inputs/index.js +13 -5
  117. package/internal.js +356 -0
  118. package/libs/form/src/Field/FieldBase.d.ts +3 -0
  119. package/libs/form/src/Field/FieldConditional.d.ts +4 -0
  120. package/libs/form/src/Field/FieldContainer.d.ts +4 -0
  121. package/libs/form/src/Field/index.d.ts +1 -62
  122. package/libs/form/src/Field/types.d.ts +75 -0
  123. package/libs/form/src/Field/utils.d.ts +5 -0
  124. package/libs/form/src/Fieldset/FieldsetWithContext.d.ts +4 -0
  125. package/libs/form/src/Fieldset/index.d.ts +2 -12
  126. package/libs/form/src/Fieldset/types.d.ts +6 -0
  127. package/libs/form/src/FormBuilder.d.ts +5 -0
  128. package/libs/form/src/FormContext.d.ts +3 -0
  129. package/libs/form/src/Questions/Questions.d.ts +8 -0
  130. package/libs/form/src/Questions/QuestionsContext.d.ts +3 -0
  131. package/libs/form/src/Questions/Step/ReviewStep.d.ts +1 -0
  132. package/libs/form/src/Questions/Step/Step.d.ts +9 -0
  133. package/libs/form/src/Questions/Step/StepArrayReview.d.ts +4 -0
  134. package/libs/form/src/Questions/Step/StepContext.d.ts +4 -0
  135. package/libs/form/src/Questions/Step/StepForm.d.ts +2 -1
  136. package/libs/form/src/Questions/Step/getAddMoreFields.d.ts +3 -0
  137. package/libs/form/src/Questions/Step/index.d.ts +12 -47
  138. package/libs/form/src/Questions/Step/types.d.ts +31 -0
  139. package/libs/form/src/Questions/getNextStep.d.ts +2 -0
  140. package/libs/form/src/Questions/index.d.ts +1 -28
  141. package/libs/form/src/Questions/types.d.ts +19 -0
  142. package/libs/form/src/index.d.ts +2 -73
  143. package/libs/form/src/inputs/Checkboxes/index.d.ts +1 -1
  144. package/libs/form/src/inputs/DateInput/index.d.ts +1 -2
  145. package/libs/form/src/inputs/FileInput/index.d.ts +1 -1
  146. package/libs/form/src/inputs/Input/index.d.ts +1 -1
  147. package/libs/form/src/inputs/Label/index.d.ts +2 -1
  148. package/libs/form/src/inputs/Radio/index.d.ts +1 -1
  149. package/libs/form/src/inputs/Select/index.d.ts +1 -1
  150. package/libs/form/src/inputs/index.d.ts +4 -3
  151. package/libs/form/src/internal.d.ts +31 -0
  152. package/libs/form/src/types.d.ts +70 -0
  153. package/libs/form/src/validators/index.d.ts +8 -0
  154. package/libs/form/src/validators/types.d.ts +2 -0
  155. package/libs/form/src/validators/utils/afm.d.ts +6 -0
  156. package/libs/form/src/validators/utils/file.d.ts +1 -0
  157. package/libs/form/src/validators/utils/iban.d.ts +2 -0
  158. package/libs/form/src/validators/utils/index.d.ts +12 -0
  159. package/libs/form/src/validators/utils/phone.d.ts +9 -0
  160. package/libs/form/src/validators/utils/postal_code.d.ts +2 -0
  161. package/libs/form/src/validators/utils/uuid4.d.ts +6 -0
  162. package/libs/form/src/{validators.spec.d.ts → validators/validators.spec.d.ts} +0 -0
  163. package/libs/ui/src/core/Accordion/index.d.ts +3 -3
  164. package/libs/ui/src/core/Base/index.d.ts +3 -0
  165. package/libs/ui/src/core/Blockquote/index.d.ts +1 -1
  166. package/libs/ui/src/core/Button/BackButton.d.ts +1 -1
  167. package/libs/ui/src/core/Button/ButtonLink.d.ts +1 -1
  168. package/libs/ui/src/core/Button/index.d.ts +1 -1
  169. package/libs/ui/src/core/Divider/index.d.ts +1 -1
  170. package/libs/ui/src/core/Form/index.d.ts +3 -0
  171. package/libs/ui/src/core/Label/index.d.ts +4 -0
  172. package/libs/ui/src/core/Link/index.d.ts +1 -0
  173. package/libs/ui/src/core/NavList/NavHorizontal.d.ts +3 -0
  174. package/libs/ui/src/core/NavList/NavHorizontalList.d.ts +3 -0
  175. package/libs/ui/src/core/NavList/NavHorizontalListItem.d.ts +3 -0
  176. package/libs/ui/src/core/NavList/NavList.d.ts +1 -14
  177. package/libs/ui/src/core/NavList/NavListBase.d.ts +4 -0
  178. package/libs/ui/src/core/NavList/NavListItem.d.ts +1 -0
  179. package/libs/ui/src/core/NavList/NavListItemBase.d.ts +2 -1
  180. package/libs/ui/src/core/NavList/NavListSubMenu.d.ts +1 -1
  181. package/libs/ui/src/core/NavList/NavVertical.d.ts +3 -0
  182. package/libs/ui/src/core/NavList/NavVerticalItem.d.ts +3 -0
  183. package/libs/ui/src/core/NavList/index.d.ts +5 -0
  184. package/libs/ui/src/core/NavList/types.d.ts +14 -0
  185. package/libs/ui/src/core/SkipLink/index.d.ts +3 -0
  186. package/libs/ui/src/core/SvgIcon/index.d.ts +1 -0
  187. package/libs/ui/src/core/Table/TableFloatingScroll.d.ts +2 -0
  188. package/libs/ui/src/core/Table/index.d.ts +1 -0
  189. package/libs/ui/src/core/index.d.ts +4 -0
  190. package/libs/ui/src/layouts/Grid/index.d.ts +1 -0
  191. package/libs/ui/src/typography/Caption/index.d.ts +3 -2
  192. package/libs/ui/src/typography/Title/index.d.ts +2 -1
  193. package/libs-ui/react-core/src/Accordion/index.d.ts +3 -3
  194. package/libs-ui/react-core/src/AccordionControls/index.d.ts +3 -3
  195. package/libs-ui/react-core/src/AccordionSection/index.d.ts +3 -3
  196. package/libs-ui/react-core/src/AccordionSectionContent/index.d.ts +3 -3
  197. package/libs-ui/react-core/src/AccordionSectionHeader/index.d.ts +3 -3
  198. package/libs-ui/react-core/src/AccordionSectionSummary/index.d.ts +4 -3
  199. package/libs-ui/react-core/src/AccordionSectionSummaryHeading/index.d.ts +3 -3
  200. package/libs-ui/react-core/src/BackLink/index.d.ts +3 -3
  201. package/libs-ui/react-core/src/Base/index.d.ts +43 -0
  202. package/libs-ui/react-core/src/Blockquote/index.d.ts +3 -3
  203. package/libs-ui/react-core/src/Breadcrumbs/index.d.ts +3 -3
  204. package/libs-ui/react-core/src/BreadcrumbsList/index.d.ts +3 -3
  205. package/libs-ui/react-core/src/BreadcrumbsListItem/index.d.ts +3 -3
  206. package/libs-ui/react-core/src/Button/index.d.ts +3 -3
  207. package/libs-ui/react-core/src/ButtonGroup/index.d.ts +3 -3
  208. package/libs-ui/react-core/src/ButtonLink/index.d.ts +3 -3
  209. package/libs-ui/react-core/src/CallToAction/index.d.ts +1 -1
  210. package/libs-ui/react-core/src/Card/index.d.ts +3 -3
  211. package/libs-ui/react-core/src/CardAction/index.d.ts +3 -3
  212. package/libs-ui/react-core/src/CardHeading/index.d.ts +3 -3
  213. package/libs-ui/react-core/src/CardText/index.d.ts +3 -3
  214. package/libs-ui/react-core/src/CheckIcon/index.d.ts +15 -0
  215. package/libs-ui/react-core/src/Checkbox/index.d.ts +3 -3
  216. package/libs-ui/react-core/src/CheckboxItem/index.d.ts +3 -3
  217. package/libs-ui/react-core/src/Confirmation/index.d.ts +3 -3
  218. package/libs-ui/react-core/src/ConfirmationBody/index.d.ts +3 -3
  219. package/libs-ui/react-core/src/ConfirmationTitle/index.d.ts +3 -3
  220. package/libs-ui/react-core/src/DateInput/index.d.ts +3 -3
  221. package/libs-ui/react-core/src/DateInputItem/index.d.ts +3 -3
  222. package/libs-ui/react-core/src/Details/index.d.ts +3 -3
  223. package/libs-ui/react-core/src/DetailsContent/index.d.ts +3 -3
  224. package/libs-ui/react-core/src/DetailsSummary/index.d.ts +3 -3
  225. package/libs-ui/react-core/src/ErrorMessage/index.d.ts +3 -3
  226. package/libs-ui/react-core/src/ErrorSummary/index.d.ts +3 -3
  227. package/libs-ui/react-core/src/Field/index.d.ts +3 -3
  228. package/libs-ui/react-core/src/Fieldset/index.d.ts +3 -3
  229. package/libs-ui/react-core/src/FieldsetLegend/index.d.ts +3 -3
  230. package/libs-ui/react-core/src/FileUpload/index.d.ts +3 -3
  231. package/libs-ui/react-core/src/Form/index.d.ts +11 -0
  232. package/libs-ui/react-core/src/Grid/index.d.ts +3 -3
  233. package/libs-ui/react-core/src/Heading/index.d.ts +3 -3
  234. package/libs-ui/react-core/src/HeadingCaption/index.d.ts +3 -3
  235. package/libs-ui/react-core/src/Hidden/index.d.ts +3 -3
  236. package/libs-ui/react-core/src/Hint/index.d.ts +3 -3
  237. package/libs-ui/react-core/src/Label/index.d.ts +3 -3
  238. package/libs-ui/react-core/src/LabelTitle/index.d.ts +7 -7
  239. package/libs-ui/react-core/src/Link/index.d.ts +3 -3
  240. package/libs-ui/react-core/src/List/index.d.ts +3 -3
  241. package/libs-ui/react-core/src/ListItem/index.d.ts +3 -3
  242. package/libs-ui/react-core/src/NavHorizontal/index.d.ts +16 -0
  243. package/libs-ui/react-core/src/NavHorizontalList/index.d.ts +10 -0
  244. package/libs-ui/react-core/src/NavHorizontalListItem/index.d.ts +18 -0
  245. package/libs-ui/react-core/src/NavVertical/index.d.ts +11 -0
  246. package/libs-ui/react-core/src/NavVerticalItem/index.d.ts +14 -0
  247. package/libs-ui/react-core/src/NormalText/index.d.ts +3 -3
  248. package/libs-ui/react-core/src/NotificationBanner/index.d.ts +3 -3
  249. package/libs-ui/react-core/src/NotificationBannerContent/index.d.ts +3 -3
  250. package/libs-ui/react-core/src/NotificationBannerHeader/index.d.ts +3 -3
  251. package/libs-ui/react-core/src/NotificationBannerHeading/index.d.ts +3 -3
  252. package/libs-ui/react-core/src/NotificationBannerLink/index.d.ts +3 -3
  253. package/libs-ui/react-core/src/Paragraph/index.d.ts +3 -3
  254. package/libs-ui/react-core/src/PhaseBanner/index.d.ts +3 -3
  255. package/libs-ui/react-core/src/PhaseBannerHeaderContainer/index.d.ts +3 -3
  256. package/libs-ui/react-core/src/PhaseBannerTag/index.d.ts +3 -3
  257. package/libs-ui/react-core/src/PhaseBannerText/index.d.ts +3 -3
  258. package/libs-ui/react-core/src/Radio/index.d.ts +3 -3
  259. package/libs-ui/react-core/src/RadioItem/index.d.ts +3 -3
  260. package/libs-ui/react-core/src/SectionBreak/index.d.ts +3 -3
  261. package/libs-ui/react-core/src/Select/index.d.ts +3 -3
  262. package/libs-ui/react-core/src/SelectOption/index.d.ts +3 -3
  263. package/libs-ui/react-core/src/SkipLink/index.d.ts +10 -0
  264. package/libs-ui/react-core/src/SummaryList/index.d.ts +3 -3
  265. package/libs-ui/react-core/src/SummaryListItem/index.d.ts +3 -3
  266. package/libs-ui/react-core/src/SummaryListItemAction/index.d.ts +3 -3
  267. package/libs-ui/react-core/src/SummaryListItemKey/index.d.ts +3 -3
  268. package/libs-ui/react-core/src/SummaryListItemValue/index.d.ts +3 -3
  269. package/libs-ui/react-core/src/SvgIcon/index.d.ts +3 -3
  270. package/libs-ui/react-core/src/Table/index.d.ts +3 -3
  271. package/libs-ui/react-core/src/TableBody/index.d.ts +3 -3
  272. package/libs-ui/react-core/src/TableCaption/index.d.ts +3 -3
  273. package/libs-ui/react-core/src/TableContainer/index.d.ts +3 -3
  274. package/libs-ui/react-core/src/TableDataCell/index.d.ts +3 -3
  275. package/libs-ui/react-core/src/TableHead/index.d.ts +3 -3
  276. package/libs-ui/react-core/src/TableHeadCell/index.d.ts +3 -3
  277. package/libs-ui/react-core/src/TableNoDataRow/index.d.ts +3 -3
  278. package/libs-ui/react-core/src/TableRow/index.d.ts +3 -3
  279. package/libs-ui/react-core/src/Tabs/index.d.ts +3 -3
  280. package/libs-ui/react-core/src/TabsHeading/index.d.ts +3 -3
  281. package/libs-ui/react-core/src/TabsList/index.d.ts +3 -3
  282. package/libs-ui/react-core/src/TabsListItem/index.d.ts +3 -3
  283. package/libs-ui/react-core/src/TabsPanel/index.d.ts +3 -3
  284. package/libs-ui/react-core/src/TextArea/index.d.ts +3 -3
  285. package/libs-ui/react-core/src/TextInput/index.d.ts +3 -3
  286. package/libs-ui/react-core/src/UncheckIcon/index.d.ts +4 -4
  287. package/libs-ui/react-core/src/VisuallyHidden/index.d.ts +3 -3
  288. package/libs-ui/react-core/src/WarningText/index.d.ts +3 -3
  289. package/package.json +3 -2
  290. package/types.js +5 -0
  291. package/utils.js +6 -4
  292. package/validators/index.js +181 -0
  293. package/validators/types.js +5 -0
  294. package/validators/utils/afm.js +45 -0
  295. package/validators/utils/file.js +62 -0
  296. package/validators/utils/iban.js +134 -0
  297. package/validators/utils/index.js +210 -0
  298. package/validators/utils/phone.js +144 -0
  299. package/validators/utils/postal_code.js +40 -0
  300. package/validators/utils/uuid4.js +30 -0
  301. package/validators/validators.spec.js +88 -0
  302. package/es/validators.js +0 -626
  303. package/esm/validators.js +0 -626
  304. package/libs/form/src/Field/ConditionalField.d.ts +0 -17
  305. package/libs/form/src/validators.d.ts +0 -14
  306. package/validators.js +0 -662
  307. package/validators.spec.js +0 -88
@@ -0,0 +1,123 @@
1
+ export function validateIban(value, countryCode) {
2
+ value = value.replace(/\s/g, '').replace(/-/g, '');
3
+
4
+ if (value.match(/^[0-9]*$/i)) {
5
+ // this is for greek iban without the country code
6
+ if (value.length !== 25) {
7
+ return false;
8
+ }
9
+ } else {
10
+ value = value.toUpperCase();
11
+
12
+ if (countryCode) {
13
+ if (!value.startsWith(countryCode.toUpperCase())) {
14
+ return false;
15
+ }
16
+
17
+ if (value.length === ibanCountryCodesLengths[countryCode.toUpperCase()]) {
18
+ return true;
19
+ }
20
+ }
21
+
22
+ if (value.length !== 27) {
23
+ // this is for greek iban
24
+ return false;
25
+ }
26
+ }
27
+
28
+ return true;
29
+ }
30
+ export var IBAN_VALIDATOR = function IBAN_VALIDATOR(field) {
31
+ var _field$extra;
32
+
33
+ var countryCode = field === null || field === void 0 ? void 0 : (_field$extra = field.extra) === null || _field$extra === void 0 ? void 0 : _field$extra.country;
34
+ return {
35
+ name: 'iban-validator',
36
+ message: 'form.error.iban',
37
+ test: function test(value) {
38
+ if (!value) {
39
+ return true;
40
+ }
41
+
42
+ return validateIban(value, countryCode);
43
+ }
44
+ };
45
+ };
46
+ var ibanCountryCodesLengths = {
47
+ AD: 24,
48
+ AT: 20,
49
+ AZ: 28,
50
+ BH: 22,
51
+ BY: 28,
52
+ BE: 16,
53
+ BA: 20,
54
+ BR: 29,
55
+ BG: 22,
56
+ CR: 22,
57
+ HR: 21,
58
+ CY: 28,
59
+ CZ: 24,
60
+ DK: 18,
61
+ DO: 28,
62
+ EG: 29,
63
+ SV: 28,
64
+ EE: 20,
65
+ FO: 18,
66
+ FI: 18,
67
+ FR: 27,
68
+ GE: 22,
69
+ DE: 22,
70
+ GI: 23,
71
+ GR: 27,
72
+ GL: 18,
73
+ GT: 28,
74
+ VA: 22,
75
+ HU: 28,
76
+ IS: 26,
77
+ IQ: 23,
78
+ IE: 22,
79
+ IL: 23,
80
+ IT: 27,
81
+ JO: 30,
82
+ KZ: 20,
83
+ XK: 20,
84
+ KW: 30,
85
+ LV: 21,
86
+ LB: 28,
87
+ LI: 21,
88
+ LT: 20,
89
+ LU: 20,
90
+ MT: 31,
91
+ MR: 27,
92
+ MU: 30,
93
+ MD: 24,
94
+ MC: 27,
95
+ ME: 22,
96
+ NL: 18,
97
+ MK: 19,
98
+ NO: 15,
99
+ PK: 24,
100
+ PS: 29,
101
+ PL: 28,
102
+ PT: 25,
103
+ QA: 29,
104
+ RO: 24,
105
+ LC: 32,
106
+ SM: 27,
107
+ ST: 25,
108
+ SA: 24,
109
+ RS: 22,
110
+ SC: 31,
111
+ SK: 24,
112
+ SI: 19,
113
+ ES: 24,
114
+ SE: 24,
115
+ CH: 21,
116
+ TL: 23,
117
+ TN: 24,
118
+ TR: 26,
119
+ UA: 29,
120
+ AE: 23,
121
+ GB: 22,
122
+ VG: 24
123
+ };
@@ -0,0 +1,105 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
+ import * as yup from 'yup';
4
+ export * from '@digigov/form/validators/utils/afm';
5
+ export * from '@digigov/form/validators/utils/file';
6
+ export * from '@digigov/form/validators/utils/iban';
7
+ export * from '@digigov/form/validators/utils/phone';
8
+ export * from '@digigov/form/validators/utils/postal_code';
9
+ export * from '@digigov/form/validators/utils/uuid4';
10
+ export function getYupField(field, yupTypeMap) {
11
+ var yupField = yupTypeMap[field.type] || yupTypeMap.string;
12
+ return yupField(field);
13
+ }
14
+ export function computeShape(fields, yupTypeMap, validatorRegistry) {
15
+ var fieldSchemas = {};
16
+ var objectFields = {};
17
+ fields.forEach(function (field) {
18
+ if (field.key.includes('.')) {
19
+ var _field$key$split = field.key.split(/\.(.+)/),
20
+ _field$key$split2 = _slicedToArray(_field$key$split, 2),
21
+ objectKey = _field$key$split2[0],
22
+ fieldKey = _field$key$split2[1];
23
+
24
+ if (!objectFields[objectKey]) {
25
+ objectFields[objectKey] = [];
26
+ }
27
+
28
+ objectFields[objectKey].push(_extends({}, field, {
29
+ key: fieldKey
30
+ }));
31
+ return;
32
+ }
33
+
34
+ var yupField = getYupField(field, yupTypeMap);
35
+
36
+ if (field.condition) {
37
+ for (var key in field.condition) {
38
+ var then = void 0,
39
+ otherwise = void 0;
40
+
41
+ if (field.condition[key].then) {
42
+ var _field$condition$key$, _field$condition$key$2;
43
+
44
+ if (((_field$condition$key$ = field.condition[key].then) === null || _field$condition$key$ === void 0 ? void 0 : _field$condition$key$.required) === false) {
45
+ then = yupField;
46
+ } else if (((_field$condition$key$2 = field.condition[key].then) === null || _field$condition$key$2 === void 0 ? void 0 : _field$condition$key$2.required) === true) {
47
+ then = yupField.required('form.error.required');
48
+ }
49
+ }
50
+
51
+ if (field.condition[key]["else"]) {
52
+ var _field$condition$key$3, _field$condition$key$4;
53
+
54
+ if (((_field$condition$key$3 = field.condition[key]["else"]) === null || _field$condition$key$3 === void 0 ? void 0 : _field$condition$key$3.required) === false) {
55
+ otherwise = yupField;
56
+ } else if (((_field$condition$key$4 = field.condition[key]["else"]) === null || _field$condition$key$4 === void 0 ? void 0 : _field$condition$key$4.required) === true) {
57
+ otherwise = yupField.required('form.error.required');
58
+ }
59
+ }
60
+
61
+ if (then || otherwise) {
62
+ yupField = yupField.when(key, {
63
+ is: field.condition[key].is,
64
+ then: then,
65
+ otherwise: otherwise
66
+ });
67
+ }
68
+ }
69
+ } else if (field.required) {
70
+ yupField = yupField.required('form.error.required');
71
+ }
72
+
73
+ if (validatorRegistry && field.type && validatorRegistry[field.type]) {
74
+ validatorRegistry[field.type].forEach(function (validator) {
75
+ yupField = yupField.test(validator);
76
+ });
77
+ }
78
+
79
+ if (field.validators) {
80
+ field.validators.forEach(function (validator) {
81
+ yupField = yupField.test(validator);
82
+ });
83
+ }
84
+
85
+ fieldSchemas[field.key] = yupField;
86
+ });
87
+
88
+ for (var objectKey in objectFields) {
89
+ fieldSchemas[objectKey] = getYupObjectShape(objectFields[objectKey], yupTypeMap, validatorRegistry);
90
+ }
91
+
92
+ return fieldSchemas;
93
+ }
94
+ export function getYupObjectShape( // eslint-disable-next-line @typescript-eslint/no-explicit-any
95
+ fields, yupTypeMap, validatorRegistry) {
96
+ if (!fields.current) {
97
+ var fieldSchemas = computeShape(fields, yupTypeMap, validatorRegistry);
98
+ return yup.object().shape(fieldSchemas);
99
+ }
100
+
101
+ return yup.lazy(function () {
102
+ var fieldSchemas = computeShape(Object.values(fields.current), yupTypeMap, validatorRegistry);
103
+ return yup.object().shape(fieldSchemas);
104
+ });
105
+ }
@@ -0,0 +1,122 @@
1
+ import * as gPhoneNumber from 'google-libphonenumber';
2
+ export function validatePhoneNumber(phoneNumber) {
3
+ var countries = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ['gr'];
4
+ var typeOfPhoneNumber = arguments.length > 2 ? arguments[2] : undefined;
5
+ var phoneUtil = gPhoneNumber.PhoneNumberUtil.getInstance();
6
+
7
+ if (!countries || countries.length === 0) {
8
+ return true;
9
+ }
10
+
11
+ return countries.some(function (country) {
12
+ try {
13
+ var phone = phoneUtil.parse(phoneNumber, country.toUpperCase());
14
+
15
+ if (phoneUtil.isValidNumber(phone)) {
16
+ if (typeOfPhoneNumber) {
17
+ if (matchTypeOfPhoneNumber(phone, typeOfPhoneNumber, phoneUtil)) {
18
+ return true;
19
+ } else {
20
+ return false;
21
+ }
22
+ } else {
23
+ return true;
24
+ }
25
+ }
26
+
27
+ return false;
28
+ } catch (error) {
29
+ console.error(error);
30
+ return false;
31
+ }
32
+ });
33
+ }
34
+ var phoneNumberTypes = {
35
+ 0: 'landline',
36
+ 1: 'mobile',
37
+ 2: 'landline_or_mobile'
38
+ };
39
+ export function matchTypeOfPhoneNumber(phone, type, phoneUtil) {
40
+ try {
41
+ var phoneNumberType = phoneUtil.getNumberType(phone);
42
+ var numberType = phoneNumberTypes[phoneNumberType];
43
+
44
+ if (numberType === 'landline_or_mobile' || numberType === type) {
45
+ return true;
46
+ } else {
47
+ return false;
48
+ }
49
+ } catch (error) {
50
+ console.error(error);
51
+ return false;
52
+ }
53
+ }
54
+
55
+ function validateMobile(value) {
56
+ var phoneUtil = gPhoneNumber.PhoneNumberUtil.getInstance();
57
+ var origValue = value; // probably catch all the cases with a regex instead of gphonenumber
58
+
59
+ if (!value.match(/^((\+|00){0,1}\d{1,3}[- ]?)?\d{10}$/)) {
60
+ return false;
61
+ }
62
+
63
+ try {
64
+ var phone;
65
+
66
+ try {
67
+ phone = phoneUtil.parse(value);
68
+ } catch (err) {
69
+ try {
70
+ value = '+' + value;
71
+ phone = phoneUtil.parse(value);
72
+ } catch (err) {
73
+ value = '+30' + origValue;
74
+ phone = phoneUtil.parse(value);
75
+ }
76
+ }
77
+
78
+ return phoneUtil.isValidNumber(phone);
79
+ } catch (err) {
80
+ console.error(err);
81
+ return false;
82
+ }
83
+ }
84
+
85
+ export var MOBILE_PHONE_VALIDATOR = {
86
+ name: 'mobile-phone-validator',
87
+ message: 'form.error.mobile_phone',
88
+ test: function test(value) {
89
+ if (value) {
90
+ return validateMobile(value);
91
+ }
92
+
93
+ return true;
94
+ }
95
+ };
96
+ export var PHONE_NUMBER_VALIDATOR = function PHONE_NUMBER_VALIDATOR(field) {
97
+ var _field$extra, _field$extra2;
98
+
99
+ var countryCode = field === null || field === void 0 ? void 0 : (_field$extra = field.extra) === null || _field$extra === void 0 ? void 0 : _field$extra.countries;
100
+ var typeOfPhone = field === null || field === void 0 ? void 0 : (_field$extra2 = field.extra) === null || _field$extra2 === void 0 ? void 0 : _field$extra2.phoneType;
101
+ return {
102
+ name: 'phone-number-validator',
103
+ message: function message() {
104
+ if (typeOfPhone === 'mobile') {
105
+ return 'form.error.mobile_phone';
106
+ }
107
+
108
+ if (typeOfPhone === 'landline') {
109
+ return 'form.error.landline';
110
+ } else {
111
+ return 'form.error.phone_number';
112
+ }
113
+ },
114
+ test: function test(value) {
115
+ if (!value) {
116
+ return true;
117
+ }
118
+
119
+ return validatePhoneNumber(value, countryCode, typeOfPhone);
120
+ }
121
+ };
122
+ };
@@ -0,0 +1,29 @@
1
+ var CODE_REGEX = /^[12345678][0-9]{4}$/;
2
+ export function validatePostalCode(number, countries) {
3
+ if (!countries) {
4
+ return false;
5
+ } else {
6
+ if (countries.length === 1 && countries[0].toUpperCase() === 'GR') {
7
+ // Greek postal code must be 5 digits long and shouldn't start with 0 or 9.
8
+ return CODE_REGEX.test(number);
9
+ } else {
10
+ return true;
11
+ }
12
+ }
13
+ }
14
+ export var POSTALCODE_VALIDATOR = function POSTALCODE_VALIDATOR(field) {
15
+ var _field$extra;
16
+
17
+ var countryCode = field === null || field === void 0 ? void 0 : (_field$extra = field.extra) === null || _field$extra === void 0 ? void 0 : _field$extra.countries;
18
+ return {
19
+ name: 'postal-code-validator',
20
+ message: 'form.error.postalCode',
21
+ test: function test(value) {
22
+ if (!value) {
23
+ return true;
24
+ }
25
+
26
+ return validatePostalCode(value, countryCode);
27
+ }
28
+ };
29
+ };
@@ -0,0 +1,20 @@
1
+ var UUID4_PATTERN = /^[0-9A-F]{8}-[0-9A-F]{4}-[4][0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i;
2
+ export function validateUUID4(uuid4) {
3
+ if (uuid4.length !== 36) {
4
+ // This uuid4 should be 36 characters long
5
+ return false;
6
+ }
7
+
8
+ return UUID4_PATTERN.test(uuid4);
9
+ }
10
+ export var UUID4_VALIDATOR = {
11
+ name: 'uuid4-validator',
12
+ message: 'form.error.uuid4',
13
+ test: function test(value) {
14
+ if (value) {
15
+ return validateUUID4(value);
16
+ }
17
+
18
+ return true;
19
+ }
20
+ };
@@ -1,4 +1,4 @@
1
- import { validateUUID4, validateIban, validatePostalCode, validatePhoneNumber } from '@digigov/form/validators';
1
+ import { validateUUID4, validateIban, validatePostalCode, validatePhoneNumber } from '@digigov/form/validators/utils';
2
2
  it('validates wrong uuid4 for empty value', function () {
3
3
  expect(validateUUID4('')).toBe(false);
4
4
  });
package/index.js CHANGED
@@ -2,210 +2,27 @@
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
- var _exportNames = {
11
- FormContext: true,
12
- FormBase: true,
13
- FormBuilder: true
14
- };
15
- exports["default"] = exports.FormContext = exports.FormBuilder = exports.FormBase = void 0;
16
-
17
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
18
-
19
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
20
-
21
- var _extends4 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
22
-
23
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
24
-
25
- var _react = _interopRequireWildcard(require("react"));
26
-
27
- var _reactHookForm = require("react-hook-form");
28
-
29
- var _utils = require("@digigov/form/utils");
30
-
31
- var _Grid = _interopRequireDefault(require("@digigov/ui/layouts/Grid"));
8
+ var _exportNames = {};
9
+ exports["default"] = void 0;
32
10
 
33
- var _validators = require("@digigov/form/validators");
11
+ var _internal = require("@digigov/form/internal");
34
12
 
35
- var _Fieldset = _interopRequireWildcard(require("@digigov/form/Fieldset"));
36
-
37
- Object.keys(_Fieldset).forEach(function (key) {
13
+ Object.keys(_internal).forEach(function (key) {
38
14
  if (key === "default" || key === "__esModule") return;
39
15
  if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
40
- if (key in exports && exports[key] === _Fieldset[key]) return;
16
+ if (key in exports && exports[key] === _internal[key]) return;
41
17
  Object.defineProperty(exports, key, {
42
18
  enumerable: true,
43
19
  get: function get() {
44
- return _Fieldset[key];
20
+ return _internal[key];
45
21
  }
46
22
  });
47
23
  });
48
24
 
49
- var _Field = _interopRequireWildcard(require("@digigov/form/Field"));
50
-
51
- Object.keys(_Field).forEach(function (key) {
52
- if (key === "default" || key === "__esModule") return;
53
- if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
54
- if (key in exports && exports[key] === _Field[key]) return;
55
- Object.defineProperty(exports, key, {
56
- enumerable: true,
57
- get: function get() {
58
- return _Field[key];
59
- }
60
- });
61
- });
62
- var _excluded = ["onSubmit", "children", "registerField", "fieldsMap", "fieldsetsMap", "resolver", "mode", "initial", "reValidateMode", "shouldFocusError", "criteriaMode", "componentRegistry"],
63
- _excluded2 = ["fields", "fieldsets", "initial", "onSubmit", "children", "reValidateMode", "mode", "shouldFocusError", "criteriaMode", "auto", "validatorRegistry", "componentRegistry"];
64
-
65
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
66
-
67
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
68
-
69
- var FormContext = /*#__PURE__*/(0, _react.createContext)({
70
- fieldsMap: {},
71
- fieldsetsMap: {}
72
- });
73
- exports.FormContext = FormContext;
74
-
75
- var FormBase = /*#__PURE__*/_react["default"].forwardRef(function FormBase(_ref, ref) {
76
- var onSubmit = _ref.onSubmit,
77
- children = _ref.children,
78
- registerField = _ref.registerField,
79
- fieldsMap = _ref.fieldsMap,
80
- fieldsetsMap = _ref.fieldsetsMap,
81
- resolver = _ref.resolver,
82
- mode = _ref.mode,
83
- initial = _ref.initial,
84
- reValidateMode = _ref.reValidateMode,
85
- shouldFocusError = _ref.shouldFocusError,
86
- criteriaMode = _ref.criteriaMode,
87
- componentRegistry = _ref.componentRegistry,
88
- props = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
89
- var form = (0, _reactHookForm.useForm)({
90
- resolver: resolver,
91
- mode: mode,
92
- defaultValues: initial,
93
- reValidateMode: reValidateMode,
94
- shouldFocusError: shouldFocusError,
95
- criteriaMode: criteriaMode
96
- });
97
- var handleSubmit = (0, _react.useCallback)(function (data) {
98
- var errors = onSubmit && onSubmit(data);
99
-
100
- if (errors) {
101
- for (var key in errors) {
102
- form.setError(key, errors[key]);
103
- }
104
- }
105
- }, [onSubmit]);
106
- var ctx = {
107
- fieldsMap: fieldsMap,
108
- fieldsetsMap: fieldsetsMap,
109
- control: form.control,
110
- register: form.register,
111
- registerField: registerField,
112
- errors: form.errors,
113
- reset: form.reset,
114
- componentRegistry: componentRegistry
115
- };
116
- return /*#__PURE__*/_react["default"].createElement(FormContext.Provider, {
117
- value: ctx
118
- }, /*#__PURE__*/_react["default"].createElement("form", (0, _extends4["default"])({
119
- onSubmit: form.handleSubmit(handleSubmit),
120
- ref: ref
121
- }, props), /*#__PURE__*/_react["default"].createElement(_Grid["default"], {
122
- container: true
123
- }, /*#__PURE__*/_react["default"].createElement(_Grid["default"], {
124
- item: true,
125
- xs: 12
126
- }, children))));
127
- });
128
-
129
- exports.FormBase = FormBase;
130
-
131
- var FormBuilder = /*#__PURE__*/_react["default"].forwardRef(function FormBuilder(_ref2, ref) {
132
- var _ref2$fields = _ref2.fields,
133
- fields = _ref2$fields === void 0 ? [] : _ref2$fields,
134
- fieldsets = _ref2.fieldsets,
135
- _ref2$initial = _ref2.initial,
136
- initial = _ref2$initial === void 0 ? {} : _ref2$initial,
137
- onSubmit = _ref2.onSubmit,
138
- children = _ref2.children,
139
- _ref2$reValidateMode = _ref2.reValidateMode,
140
- reValidateMode = _ref2$reValidateMode === void 0 ? 'onSubmit' : _ref2$reValidateMode,
141
- _ref2$mode = _ref2.mode,
142
- mode = _ref2$mode === void 0 ? 'onSubmit' : _ref2$mode,
143
- _ref2$shouldFocusErro = _ref2.shouldFocusError,
144
- shouldFocusError = _ref2$shouldFocusErro === void 0 ? true : _ref2$shouldFocusErro,
145
- _ref2$criteriaMode = _ref2.criteriaMode,
146
- criteriaMode = _ref2$criteriaMode === void 0 ? 'firstError' : _ref2$criteriaMode,
147
- _ref2$auto = _ref2.auto,
148
- auto = _ref2$auto === void 0 ? false : _ref2$auto,
149
- validatorRegistry = _ref2.validatorRegistry,
150
- componentRegistry = _ref2.componentRegistry,
151
- props = (0, _objectWithoutProperties2["default"])(_ref2, _excluded2);
152
- var fieldsState = (0, _react.useRef)(fields);
153
- var setFieldsState = (0, _react.useCallback)(function (newFields) {
154
- fieldsState.current = newFields;
155
- }, []);
156
- var schema = (0, _validators.useValidationSchema)(fieldsState, validatorRegistry);
157
- var registerField = (0, _react.useCallback)(function (field) {
158
- setFieldsState([].concat((0, _toConsumableArray2["default"])(fieldsState.current), [field]));
159
- }, []);
160
- var resolver;
161
- var fieldsMap;
162
- var fieldsetsMap;
163
- var fieldChildren;
164
-
165
- if (schema) {
166
- resolver = (0, _utils.yupResolver)(schema);
167
- fieldsMap = fields ? fields.reduce(function (map, field) {
168
- return (0, _extends4["default"])({}, map, (0, _defineProperty2["default"])({}, field.key, field));
169
- }, {}) : {};
170
- fieldsetsMap = fieldsets && fieldsets.reduce(function (map, fieldset) {
171
- return (0, _extends4["default"])({}, map, (0, _defineProperty2["default"])({}, fieldset.key, fieldset));
172
- }, {});
173
-
174
- if (auto) {
175
- if (fieldsets) {
176
- fieldChildren = fieldsets.map(function (fieldset) {
177
- return /*#__PURE__*/_react["default"].createElement(_Fieldset["default"], {
178
- key: fieldset.key,
179
- name: fieldset.key
180
- });
181
- });
182
- } else if (fields) {
183
- fieldChildren = fields.map(function (field) {
184
- return /*#__PURE__*/_react["default"].createElement(_Field["default"], {
185
- key: field.key,
186
- name: field.key
187
- });
188
- });
189
- }
190
- }
191
- }
192
-
193
- return /*#__PURE__*/_react["default"].createElement(FormBase, (0, _extends4["default"])({
194
- resolver: resolver,
195
- fieldsetsMap: fieldsetsMap,
196
- fieldsMap: fieldsMap,
197
- registerField: registerField,
198
- initial: initial,
199
- reValidateMode: reValidateMode,
200
- mode: mode,
201
- shouldFocusError: shouldFocusError,
202
- criteriaMode: criteriaMode,
203
- onSubmit: onSubmit,
204
- componentRegistry: componentRegistry,
205
- ref: ref
206
- }, props), fieldChildren, children);
207
- });
25
+ var _FormBuilder = _interopRequireDefault(require("@digigov/form/FormBuilder"));
208
26
 
209
- exports.FormBuilder = FormBuilder;
210
- var _default = FormBuilder;
27
+ var _default = _FormBuilder["default"];
211
28
  exports["default"] = _default;
package/inputs/index.js CHANGED
@@ -11,6 +11,12 @@ Object.defineProperty(exports, "Checkboxes", {
11
11
  return _Checkboxes["default"];
12
12
  }
13
13
  });
14
+ Object.defineProperty(exports, "DateInput", {
15
+ enumerable: true,
16
+ get: function get() {
17
+ return _DateInput["default"];
18
+ }
19
+ });
14
20
  Object.defineProperty(exports, "FileInput", {
15
21
  enumerable: true,
16
22
  get: function get() {
@@ -42,14 +48,16 @@ Object.defineProperty(exports, "Select", {
42
48
  }
43
49
  });
44
50
 
45
- var _FileInput = _interopRequireDefault(require("@digigov/form/inputs/FileInput"));
51
+ var _Checkboxes = _interopRequireDefault(require("@digigov/form/inputs/Checkboxes"));
46
52
 
47
- var _Select = _interopRequireDefault(require("@digigov/form/inputs/Select"));
53
+ var _DateInput = _interopRequireDefault(require("@digigov/form/inputs/DateInput"));
48
54
 
49
- var _Checkboxes = _interopRequireDefault(require("@digigov/form/inputs/Checkboxes"));
55
+ var _FileInput = _interopRequireDefault(require("@digigov/form/inputs/FileInput"));
56
+
57
+ var _Input = _interopRequireDefault(require("@digigov/form/inputs/Input"));
50
58
 
51
59
  var _Label = _interopRequireDefault(require("@digigov/form/inputs/Label"));
52
60
 
53
- var _Input = _interopRequireDefault(require("@digigov/form/inputs/Input"));
61
+ var _Radio = _interopRequireDefault(require("@digigov/form/inputs/Radio"));
54
62
 
55
- var _Radio = _interopRequireDefault(require("@digigov/form/inputs/Radio"));
63
+ var _Select = _interopRequireDefault(require("@digigov/form/inputs/Select"));