@digigov/form 0.13.2 → 1.0.0-6b93ebf2

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 (302) hide show
  1. package/Field/FieldBase.js +2 -2
  2. package/Field/FieldBaseContainer.js +8 -8
  3. package/Field/FieldConditional.js +2 -2
  4. package/Field/utils.js +6 -6
  5. package/FieldArray/__stories__/Default.js +2 -2
  6. package/FieldArray/__stories__/WithExactLength.js +2 -2
  7. package/FieldArray/index.js +3 -3
  8. package/FieldObject/index.d.ts +1 -1
  9. package/FieldObject/index.js +5 -5
  10. package/Fieldset/FieldsetWithContext.js +4 -4
  11. package/Fieldset/index.d.ts +1 -1
  12. package/Fieldset/index.js +2 -2
  13. package/Fieldset/types.d.ts +2 -2
  14. package/FormBuilder/FormBuilder.js +5 -5
  15. package/FormBuilder/FormBuilder.mdx +32 -45
  16. package/FormBuilder/__stories__/Default.js +2 -2
  17. package/MultiplicityField/MultiplicityField.mdx +277 -267
  18. package/MultiplicityField/__stories__/Default.js +2 -2
  19. package/MultiplicityField/__stories__/PreviewDisplay.js +8 -8
  20. package/MultiplicityField/__stories__/WithExactLength.js +2 -2
  21. package/MultiplicityField/__stories__/WithMaxLength.js +2 -2
  22. package/MultiplicityField/__stories__/WithMinAndMaxLength.js +2 -2
  23. package/MultiplicityField/__stories__/WithMinLength.js +2 -2
  24. package/MultiplicityField/add-objects.js +6 -6
  25. package/MultiplicityField/index.d.ts +2 -2
  26. package/MultiplicityField/index.js +7 -7
  27. package/Questions/Questions.js +2 -2
  28. package/Questions/Step/ReviewStep.js +8 -8
  29. package/Questions/Step/Step.js +2 -2
  30. package/Questions/Step/StepArrayReview.js +10 -10
  31. package/Questions/Step/StepDescription.js +2 -2
  32. package/Questions/Step/StepForm.d.ts +1 -1
  33. package/Questions/Step/StepForm.js +6 -6
  34. package/Questions/Step/StepTitle.js +5 -3
  35. package/Questions/Step/getAddMoreFields.d.ts +1 -1
  36. package/Questions/__snapshots__/index.spec.tsx.snap +9 -9
  37. package/Questions/__stories__/Default.js +6 -6
  38. package/Questions/index.mdx +41 -44
  39. package/Questions/index.spec.js +2 -2
  40. package/create-simple-form.mdx +258 -237
  41. package/es/Field/FieldBase.js +1 -1
  42. package/es/Field/FieldBaseContainer.js +6 -6
  43. package/es/Field/FieldConditional.js +1 -1
  44. package/es/Field/utils.js +5 -5
  45. package/es/FieldArray/__stories__/Default.js +1 -1
  46. package/es/FieldArray/__stories__/WithExactLength.js +1 -1
  47. package/es/FieldArray/index.js +2 -2
  48. package/es/FieldObject/index.js +3 -3
  49. package/es/Fieldset/FieldsetWithContext.js +2 -2
  50. package/es/Fieldset/index.js +1 -1
  51. package/es/FormBuilder/FormBuilder.js +3 -3
  52. package/es/FormBuilder/FormBuilder.mdx +32 -45
  53. package/es/FormBuilder/__stories__/Default.js +1 -1
  54. package/es/MultiplicityField/MultiplicityField.mdx +277 -267
  55. package/es/MultiplicityField/__stories__/Default.js +1 -1
  56. package/es/MultiplicityField/__stories__/PreviewDisplay.js +7 -7
  57. package/es/MultiplicityField/__stories__/WithExactLength.js +1 -1
  58. package/es/MultiplicityField/__stories__/WithMaxLength.js +1 -1
  59. package/es/MultiplicityField/__stories__/WithMinAndMaxLength.js +1 -1
  60. package/es/MultiplicityField/__stories__/WithMinLength.js +1 -1
  61. package/es/MultiplicityField/add-objects.js +3 -3
  62. package/es/MultiplicityField/index.js +5 -5
  63. package/es/Questions/Questions.js +1 -1
  64. package/es/Questions/Step/ReviewStep.js +5 -5
  65. package/es/Questions/Step/Step.js +1 -1
  66. package/es/Questions/Step/StepArrayReview.js +7 -7
  67. package/es/Questions/Step/StepDescription.js +1 -1
  68. package/es/Questions/Step/StepForm.js +5 -5
  69. package/es/Questions/Step/StepTitle.js +5 -4
  70. package/es/Questions/__snapshots__/index.spec.tsx.snap +9 -9
  71. package/es/Questions/__stories__/Default.js +4 -4
  72. package/es/Questions/index.mdx +41 -44
  73. package/es/Questions/index.spec.js +1 -1
  74. package/es/create-simple-form.mdx +258 -237
  75. package/es/index.mdx +13 -6
  76. package/es/inputs/AutoComplete/__stories__/Default.js +3 -3
  77. package/es/inputs/AutoComplete/index.js +1 -1
  78. package/es/inputs/Checkboxes/__stories__/Conditional.js +1 -1
  79. package/es/inputs/Checkboxes/__stories__/Default.js +1 -1
  80. package/es/inputs/Checkboxes/__stories__/WithDivider.js +2 -2
  81. package/es/inputs/Checkboxes/index.js +3 -3
  82. package/es/inputs/DateInput/__stories__/Default.js +1 -1
  83. package/es/inputs/DateInput/index.js +1 -1
  84. package/es/inputs/FileInput/__stories__/Default.js +1 -1
  85. package/es/inputs/FileInput/index.js +5 -5
  86. package/es/inputs/Input/__stories__/AFM.js +1 -1
  87. package/es/inputs/Input/__stories__/Boolean.js +1 -1
  88. package/es/inputs/Input/__stories__/Default.js +1 -1
  89. package/es/inputs/Input/__stories__/IBAN.js +1 -1
  90. package/es/inputs/Input/__stories__/Integer.js +1 -1
  91. package/es/inputs/Input/__stories__/MobilePhone.js +1 -1
  92. package/es/inputs/Input/__stories__/PhoneNumber.js +1 -1
  93. package/es/inputs/Input/__stories__/PostalCode.js +1 -1
  94. package/es/inputs/Input/__stories__/TextWithCharacterLimit.js +1 -1
  95. package/es/inputs/Input/index.js +1 -1
  96. package/es/inputs/Label/__stories__/Default.js +1 -1
  97. package/es/inputs/Label/index.js +3 -3
  98. package/es/inputs/OtpInput/__stories__/Default.js +1 -1
  99. package/es/inputs/OtpInput/index.js +1 -1
  100. package/es/inputs/Radio/__stories__/Conditional.js +1 -1
  101. package/es/inputs/Radio/__stories__/Default.js +1 -1
  102. package/es/inputs/Radio/__stories__/WithDivider.js +2 -2
  103. package/es/inputs/Radio/index.js +4 -4
  104. package/es/inputs/Select/__stories__/Default.js +1 -1
  105. package/es/installation.mdx +12 -16
  106. package/es/utils.js +1 -1
  107. package/es/validators/index.js +2 -2
  108. package/esm/Field/FieldBase.js +1 -1
  109. package/esm/Field/FieldBaseContainer.js +6 -6
  110. package/esm/Field/FieldConditional.js +1 -1
  111. package/esm/Field/utils.js +5 -5
  112. package/esm/FieldArray/__stories__/Default.js +1 -1
  113. package/esm/FieldArray/__stories__/WithExactLength.js +1 -1
  114. package/esm/FieldArray/index.js +2 -2
  115. package/esm/FieldObject/index.js +3 -3
  116. package/esm/Fieldset/FieldsetWithContext.js +2 -2
  117. package/esm/Fieldset/index.js +1 -1
  118. package/esm/FormBuilder/FormBuilder.js +3 -3
  119. package/esm/FormBuilder/FormBuilder.mdx +32 -45
  120. package/esm/FormBuilder/__stories__/Default.js +1 -1
  121. package/esm/MultiplicityField/MultiplicityField.mdx +277 -267
  122. package/esm/MultiplicityField/__stories__/Default.js +1 -1
  123. package/esm/MultiplicityField/__stories__/PreviewDisplay.js +7 -7
  124. package/esm/MultiplicityField/__stories__/WithExactLength.js +1 -1
  125. package/esm/MultiplicityField/__stories__/WithMaxLength.js +1 -1
  126. package/esm/MultiplicityField/__stories__/WithMinAndMaxLength.js +1 -1
  127. package/esm/MultiplicityField/__stories__/WithMinLength.js +1 -1
  128. package/esm/MultiplicityField/add-objects.js +3 -3
  129. package/esm/MultiplicityField/index.js +5 -5
  130. package/esm/Questions/Questions.js +1 -1
  131. package/esm/Questions/Step/ReviewStep.js +5 -5
  132. package/esm/Questions/Step/Step.js +1 -1
  133. package/esm/Questions/Step/StepArrayReview.js +7 -7
  134. package/esm/Questions/Step/StepDescription.js +1 -1
  135. package/esm/Questions/Step/StepForm.js +5 -5
  136. package/esm/Questions/Step/StepTitle.js +5 -4
  137. package/esm/Questions/__snapshots__/index.spec.tsx.snap +9 -9
  138. package/esm/Questions/__stories__/Default.js +4 -4
  139. package/esm/Questions/index.mdx +41 -44
  140. package/esm/Questions/index.spec.js +1 -1
  141. package/esm/create-simple-form.mdx +258 -237
  142. package/esm/index.js +1 -1
  143. package/esm/index.mdx +13 -6
  144. package/esm/inputs/AutoComplete/__stories__/Default.js +3 -3
  145. package/esm/inputs/AutoComplete/index.js +1 -1
  146. package/esm/inputs/Checkboxes/__stories__/Conditional.js +1 -1
  147. package/esm/inputs/Checkboxes/__stories__/Default.js +1 -1
  148. package/esm/inputs/Checkboxes/__stories__/WithDivider.js +2 -2
  149. package/esm/inputs/Checkboxes/index.js +3 -3
  150. package/esm/inputs/DateInput/__stories__/Default.js +1 -1
  151. package/esm/inputs/DateInput/index.js +1 -1
  152. package/esm/inputs/FileInput/__stories__/Default.js +1 -1
  153. package/esm/inputs/FileInput/index.js +5 -5
  154. package/esm/inputs/Input/__stories__/AFM.js +1 -1
  155. package/esm/inputs/Input/__stories__/Boolean.js +1 -1
  156. package/esm/inputs/Input/__stories__/Default.js +1 -1
  157. package/esm/inputs/Input/__stories__/IBAN.js +1 -1
  158. package/esm/inputs/Input/__stories__/Integer.js +1 -1
  159. package/esm/inputs/Input/__stories__/MobilePhone.js +1 -1
  160. package/esm/inputs/Input/__stories__/PhoneNumber.js +1 -1
  161. package/esm/inputs/Input/__stories__/PostalCode.js +1 -1
  162. package/esm/inputs/Input/__stories__/TextWithCharacterLimit.js +1 -1
  163. package/esm/inputs/Input/index.js +1 -1
  164. package/esm/inputs/Label/__stories__/Default.js +1 -1
  165. package/esm/inputs/Label/index.js +3 -3
  166. package/esm/inputs/OtpInput/__stories__/Default.js +1 -1
  167. package/esm/inputs/OtpInput/index.js +1 -1
  168. package/esm/inputs/Radio/__stories__/Conditional.js +1 -1
  169. package/esm/inputs/Radio/__stories__/Default.js +1 -1
  170. package/esm/inputs/Radio/__stories__/WithDivider.js +2 -2
  171. package/esm/inputs/Radio/index.js +4 -4
  172. package/esm/inputs/Select/__stories__/Default.js +1 -1
  173. package/esm/installation.mdx +12 -16
  174. package/esm/utils.js +1 -1
  175. package/esm/validators/index.js +2 -2
  176. package/index.mdx +13 -6
  177. package/inputs/AutoComplete/__stories__/Default.js +4 -4
  178. package/inputs/AutoComplete/index.d.ts +2 -2
  179. package/inputs/AutoComplete/index.js +2 -2
  180. package/inputs/Checkboxes/__stories__/Conditional.js +2 -2
  181. package/inputs/Checkboxes/__stories__/Default.js +2 -2
  182. package/inputs/Checkboxes/__stories__/WithDivider.js +3 -3
  183. package/inputs/Checkboxes/index.d.ts +1 -1
  184. package/inputs/Checkboxes/index.js +4 -4
  185. package/inputs/DateInput/__stories__/Default.js +2 -2
  186. package/inputs/DateInput/index.js +2 -2
  187. package/inputs/FileInput/__stories__/Default.js +2 -2
  188. package/inputs/FileInput/index.js +5 -5
  189. package/inputs/Input/__stories__/AFM.js +2 -2
  190. package/inputs/Input/__stories__/Boolean.js +2 -2
  191. package/inputs/Input/__stories__/Default.js +2 -2
  192. package/inputs/Input/__stories__/IBAN.js +2 -2
  193. package/inputs/Input/__stories__/Integer.js +2 -2
  194. package/inputs/Input/__stories__/MobilePhone.js +2 -2
  195. package/inputs/Input/__stories__/PhoneNumber.js +2 -2
  196. package/inputs/Input/__stories__/PostalCode.js +2 -2
  197. package/inputs/Input/__stories__/TextWithCharacterLimit.js +2 -2
  198. package/inputs/Input/index.js +1 -1
  199. package/inputs/Label/__stories__/Default.js +2 -2
  200. package/inputs/Label/index.js +4 -4
  201. package/inputs/OtpInput/__stories__/Default.js +2 -2
  202. package/inputs/OtpInput/index.js +1 -1
  203. package/inputs/Radio/__stories__/Conditional.js +2 -2
  204. package/inputs/Radio/__stories__/Default.js +2 -2
  205. package/inputs/Radio/__stories__/WithDivider.js +3 -3
  206. package/inputs/Radio/index.d.ts +1 -1
  207. package/inputs/Radio/index.js +7 -7
  208. package/inputs/Select/__stories__/Default.js +2 -2
  209. package/inputs/Select/index.d.ts +1 -1
  210. package/installation.mdx +12 -16
  211. package/package.json +5 -5
  212. package/src/Field/FieldBase.tsx +1 -1
  213. package/src/Field/FieldBaseContainer.tsx +7 -7
  214. package/src/Field/FieldConditional.tsx +1 -1
  215. package/src/Field/index.tsx +1 -1
  216. package/src/Field/utils.ts +7 -7
  217. package/src/FieldArray/FieldArray.stories.js +1 -1
  218. package/src/FieldArray/__stories__/Default.tsx +1 -1
  219. package/src/FieldArray/__stories__/WithExactLength.tsx +1 -1
  220. package/src/FieldArray/index.tsx +3 -3
  221. package/src/FieldObject/index.tsx +6 -6
  222. package/src/Fieldset/FieldsetWithContext.tsx +3 -3
  223. package/src/Fieldset/index.tsx +5 -5
  224. package/src/Fieldset/types.tsx +3 -3
  225. package/src/FormBuilder/FormBuilder.mdx +32 -45
  226. package/src/FormBuilder/FormBuilder.stories.js +1 -1
  227. package/src/FormBuilder/FormBuilder.tsx +4 -4
  228. package/src/FormBuilder/__stories__/Default.tsx +1 -1
  229. package/src/MultiplicityField/MultiplicityField.mdx +277 -267
  230. package/src/MultiplicityField/MultiplicityField.stories.js +1 -1
  231. package/src/MultiplicityField/__stories__/Default.tsx +1 -1
  232. package/src/MultiplicityField/__stories__/PreviewDisplay.tsx +14 -14
  233. package/src/MultiplicityField/__stories__/WithExactLength.tsx +1 -1
  234. package/src/MultiplicityField/__stories__/WithMaxLength.tsx +1 -1
  235. package/src/MultiplicityField/__stories__/WithMinAndMaxLength.tsx +1 -1
  236. package/src/MultiplicityField/__stories__/WithMinLength.tsx +1 -1
  237. package/src/MultiplicityField/add-objects.tsx +3 -3
  238. package/src/MultiplicityField/index.tsx +9 -9
  239. package/src/Questions/Questions.stories.js +1 -1
  240. package/src/Questions/Questions.tsx +2 -2
  241. package/src/Questions/Step/ReviewStep.tsx +6 -6
  242. package/src/Questions/Step/Step.tsx +1 -1
  243. package/src/Questions/Step/StepArrayReview.tsx +11 -11
  244. package/src/Questions/Step/StepDescription.tsx +1 -1
  245. package/src/Questions/Step/StepForm.tsx +6 -6
  246. package/src/Questions/Step/StepTitle.tsx +16 -12
  247. package/src/Questions/Step/getAddMoreFields.tsx +1 -1
  248. package/src/Questions/__snapshots__/index.spec.tsx.snap +9 -9
  249. package/src/Questions/__stories__/Default.tsx +4 -4
  250. package/src/Questions/index.mdx +41 -44
  251. package/src/Questions/index.spec.tsx +1 -1
  252. package/src/create-simple-form.mdx +258 -237
  253. package/src/index.mdx +13 -6
  254. package/src/inputs/AutoComplete/__stories__/Default.tsx +3 -3
  255. package/src/inputs/AutoComplete/index.tsx +4 -4
  256. package/src/inputs/Checkboxes/Checkboxes.stories.js +1 -1
  257. package/src/inputs/Checkboxes/__stories__/Conditional.tsx +2 -2
  258. package/src/inputs/Checkboxes/__stories__/Default.tsx +1 -1
  259. package/src/inputs/Checkboxes/__stories__/WithDivider.tsx +2 -2
  260. package/src/inputs/Checkboxes/index.tsx +4 -4
  261. package/src/inputs/DateInput/DateInput.stories.js +1 -1
  262. package/src/inputs/DateInput/__stories__/Default.tsx +1 -1
  263. package/src/inputs/DateInput/index.tsx +2 -2
  264. package/src/inputs/FileInput/FileInput.stories.js +1 -1
  265. package/src/inputs/FileInput/__stories__/Default.tsx +1 -1
  266. package/src/inputs/FileInput/index.tsx +5 -5
  267. package/src/inputs/Input/__stories__/AFM.tsx +1 -1
  268. package/src/inputs/Input/__stories__/Boolean.tsx +1 -1
  269. package/src/inputs/Input/__stories__/Default.tsx +1 -1
  270. package/src/inputs/Input/__stories__/IBAN.tsx +1 -1
  271. package/src/inputs/Input/__stories__/Integer.tsx +1 -1
  272. package/src/inputs/Input/__stories__/MobilePhone.tsx +1 -1
  273. package/src/inputs/Input/__stories__/PhoneNumber.tsx +1 -1
  274. package/src/inputs/Input/__stories__/PostalCode.tsx +1 -1
  275. package/src/inputs/Input/__stories__/TextWithCharacterLimit.tsx +1 -1
  276. package/src/inputs/Input/index.tsx +3 -3
  277. package/src/inputs/Label/Label.stories.js +1 -1
  278. package/src/inputs/Label/__stories__/Default.tsx +1 -1
  279. package/src/inputs/Label/index.tsx +4 -4
  280. package/src/inputs/OtpInput/__stories__/Default.tsx +1 -1
  281. package/src/inputs/OtpInput/index.tsx +7 -3
  282. package/src/inputs/Radio/Radio.stories.js +1 -2
  283. package/src/inputs/Radio/__stories__/Conditional.tsx +3 -3
  284. package/src/inputs/Radio/__stories__/Default.tsx +1 -1
  285. package/src/inputs/Radio/__stories__/WithDivider.tsx +2 -2
  286. package/src/inputs/Radio/index.tsx +6 -6
  287. package/src/inputs/Select/Select.stories.js +1 -1
  288. package/src/inputs/Select/__stories__/Default.tsx +1 -1
  289. package/src/inputs/Select/index.tsx +2 -2
  290. package/src/installation.mdx +12 -16
  291. package/src/types.tsx +4 -2
  292. package/src/utils.ts +1 -1
  293. package/src/validators/index.ts +10 -10
  294. package/src/validators/utils/file.ts +1 -1
  295. package/src/validators/utils/phone.ts +1 -1
  296. package/src/validators/utils/postal_code.ts +1 -1
  297. package/types.d.ts +4 -2
  298. package/validators/index.d.ts +3 -3
  299. package/validators/index.js +4 -4
  300. package/validators/utils/file.d.ts +1 -1
  301. package/validators/utils/phone.d.ts +1 -1
  302. package/validators/utils/postal_code.d.ts +1 -1
package/src/index.mdx CHANGED
@@ -4,12 +4,19 @@ title: Digigov Form
4
4
  sidebar_label: Introduction to Digigov Form
5
5
  ---
6
6
 
7
- import LeadText from "@site/src/components/LeadText";
7
+ import LeadText from '@site/src/components/LeadText';
8
8
 
9
- <LeadText>Digigov Form is an off-the-shelf solution for managing web forms using Reactjs. It supports flexible and multi-step forms and easy-to-use validation. This page will guide you through everything you need to create accessible and
10
- dynamic forms that can handle all sorts of user inputs.</LeadText>
11
-
12
- <img src="/img/form.svg" style={{margin: '3rem 0', maxWidth: '450px', width: '60%'}}/>
9
+ <LeadText>
10
+ Digigov Form is an off-the-shelf solution for managing web forms using
11
+ Reactjs. It supports flexible and multi-step forms and easy-to-use validation.
12
+ This page will guide you through everything you need to create accessible and
13
+ dynamic forms that can handle all sorts of user inputs.
14
+ </LeadText>
15
+
16
+ <img
17
+ src="/img/form.svg"
18
+ style={{ margin: '3rem 0', maxWidth: '450px', width: '60%' }}
19
+ />
13
20
 
14
21
  ## Before we start
15
22
 
@@ -22,7 +29,7 @@ Finally, we also offer an easy way to spread your forms across multiple pages or
22
29
  steps and still be able to gather data in a single serialized object that you
23
30
  will be able to save via an JSON API.
24
31
 
25
- ## Overview
32
+ ## Overview
26
33
 
27
34
  The `@digigov/form` NPM package contains React components and validators. The
28
35
  library uses basic, semantically correct HTML5 input fields.
@@ -1,9 +1,9 @@
1
1
  import React, { Suspense } from 'react';
2
- import FormBuilder from '@digigov/form/FormBuilder';
3
2
  import { Field } from '@digigov/form/Field';
3
+ import FormBuilder from '@digigov/form/FormBuilder';
4
4
  import { FieldSpec } from '@digigov/form/types';
5
- import Button from '@digigov/ui/core/Button';
6
- import { results } from '@digigov/ui/admin/AutoComplete/utils';
5
+ import { results } from '@digigov/ui/form/AutoComplete/utils';
6
+ import Button from '@digigov/ui/form/Button';
7
7
  const fields: FieldSpec[] = [
8
8
  {
9
9
  key: 'autocomplete',
@@ -1,10 +1,10 @@
1
1
  import React, { useCallback } from 'react';
2
- import UIAutoComplete, {
3
- AutoCompleteProps as UIAutoCompleteProps,
4
- } from '@digigov/ui/admin/AutoComplete';
5
- import { FieldOptionProps } from '@digigov/form/inputs/Label';
6
2
  import { ControlledFieldProps } from '@digigov/form/Field/types';
3
+ import { FieldOptionProps } from '@digigov/form/inputs/Label';
7
4
  import { Hint } from '@digigov/react-core';
5
+ import UIAutoComplete, {
6
+ AutoCompleteProps as UIAutoCompleteProps,
7
+ } from '@digigov/ui/form/AutoComplete';
8
8
 
9
9
  export interface AutoCompleteExtra
10
10
  extends Omit<
@@ -2,7 +2,7 @@ import Checkboxes from '@digigov/form/inputs/Checkboxes';
2
2
  export default {
3
3
  title: 'Digigov Form/inputs/Checkboxes',
4
4
  component: Checkboxes,
5
- displayName: 'Checkboxes'
5
+ displayName: 'Checkboxes',
6
6
  };
7
7
  export * from '@digigov/form/inputs/Checkboxes/__stories__/Default';
8
8
  export * from '@digigov/form/inputs/Checkboxes/__stories__/WithDivider';
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import FormBuilder, { Field, FieldSpec } from '@digigov/form';
3
- import { Button } from '@digigov/ui/core';
3
+ import { Button } from '@digigov/ui/form/Button';
4
4
 
5
5
  const fields: FieldSpec[] = [
6
6
  {
@@ -60,7 +60,7 @@ const fields: FieldSpec[] = [
60
60
  {
61
61
  key: 'auth_form',
62
62
  type: 'choice:multiple',
63
- required:true,
63
+ required: true,
64
64
  label: {
65
65
  primary: 'Επιλέξτε μέθοδο πιστοποίησης',
66
66
  secondary:
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import FormBuilder, { Field } from '@digigov/form';
3
- import { Button } from '@digigov/ui/core';
3
+ import { Button } from '@digigov/ui/form/Button';
4
4
 
5
5
  export const Default = () => (
6
6
  <FormBuilder
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import FormBuilder, { Field } from '@digigov/form';
3
- import { Button } from '@digigov/ui/core';
3
+ import { Button } from '@digigov/ui/form/Button';
4
4
 
5
5
  export const WithDivider = () => (
6
6
  <FormBuilder
@@ -27,7 +27,7 @@ export const WithDivider = () => (
27
27
  {
28
28
  label: { primary: 'Αισθάνομαι κούραση' },
29
29
  value: 'fatigue',
30
- divider: 'ή'
30
+ dividerText: 'ή',
31
31
  },
32
32
  ],
33
33
  }}
@@ -1,12 +1,12 @@
1
1
  import React, { useState } from 'react';
2
- import { FieldOptionProps } from '@digigov/form/inputs/Label';
2
+ import { Field } from '@digigov/form';
3
3
  import { ControlledFieldProps } from '@digigov/form/Field/types';
4
- import { useTranslation } from '@digigov/ui/app/i18n';
4
+ import { FieldOptionProps } from '@digigov/form/inputs/Label';
5
+ import { CheckboxConditional } from '@digigov/react-core';
5
6
  import CoreCheckboxes from '@digigov/react-core/Checkbox';
6
7
  import CheckboxItem from '@digigov/react-core/CheckboxItem';
7
8
  import Hint from '@digigov/react-core/Hint';
8
- import { Field } from '@digigov/form';
9
- import { CheckboxConditional } from '@digigov/react-core';
9
+ import { useTranslation } from '@digigov/ui/i18n';
10
10
 
11
11
  export interface CheckboxesProps
12
12
  extends Omit<ControlledFieldProps, 'extra' | 'value'> {
@@ -2,6 +2,6 @@ import DateInput from '@digigov/form/inputs/DateInput';
2
2
  export default {
3
3
  title: 'Digigov Form/inputs/DateInput',
4
4
  component: DateInput,
5
- displayName: 'DateInput'
5
+ displayName: 'DateInput',
6
6
  };
7
7
  export * from '@digigov/form/inputs/DateInput/__stories__/Default';
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import FormBuilder, { Field } from '@digigov/form';
3
- import { Button } from '@digigov/ui/core';
3
+ import { Button } from '@digigov/ui/form/Button';
4
4
 
5
5
  export const Default = () => (
6
6
  <FormBuilder
@@ -1,10 +1,10 @@
1
1
  import React, { useMemo, useState } from 'react';
2
- import { UncontrolledFieldProps } from '@digigov/form/Field/types';
3
2
  import dayjs from 'dayjs';
4
3
  import customParseFormat from 'dayjs/plugin/customParseFormat';
5
- import { useTranslation } from '@digigov/ui/app/i18n';
4
+ import { UncontrolledFieldProps } from '@digigov/form/Field/types';
6
5
  import DateInputContainer from '@digigov/react-core/DateInputContainer';
7
6
  import CoreDateInputItem from '@digigov/react-core/DateInputItem';
7
+ import { useTranslation } from '@digigov/ui/i18n';
8
8
  dayjs.extend(customParseFormat);
9
9
 
10
10
  export interface DateInputProps extends Omit<UncontrolledFieldProps, 'extra'> {
@@ -2,6 +2,6 @@ import FileInput from '@digigov/form/inputs/FileInput';
2
2
  export default {
3
3
  title: 'Digigov Form/inputs/FileInput',
4
4
  component: FileInput,
5
- displayName: 'FileInput'
5
+ displayName: 'FileInput',
6
6
  };
7
7
  export * from '@digigov/form/inputs/FileInput/__stories__/Default';
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import FormBuilder, { Field } from '@digigov/form';
3
- import { Button } from '@digigov/ui/core';
3
+ import { Button } from '@digigov/ui/form/Button';
4
4
 
5
5
  export const Default = () => (
6
6
  <FormBuilder
@@ -1,11 +1,11 @@
1
1
  import React, { useState } from 'react';
2
2
  import { UncontrolledFieldProps } from '@digigov/form/Field/types';
3
- import { useTranslation } from '@digigov/ui/app/i18n';
4
- import Paragraph from '@digigov/ui/typography/Paragraph';
5
- import CoreHint from '@digigov/react-core/Hint';
6
- import Button from '@digigov/ui/core/Button';
7
- import FileUploadContainer from '@digigov/react-core/FileUploadContainer';
8
3
  import FileUpload from '@digigov/react-core/FileUpload';
4
+ import FileUploadContainer from '@digigov/react-core/FileUploadContainer';
5
+ import CoreHint from '@digigov/react-core/Hint';
6
+ import Button from '@digigov/ui/form/Button';
7
+ import { useTranslation } from '@digigov/ui/i18n';
8
+ import Paragraph from '@digigov/ui/typography/Paragraph';
9
9
  export interface FileInputProps extends Omit<UncontrolledFieldProps, 'extra'> {
10
10
  extra?: {
11
11
  className?: string;
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import FormBuilder, { Field } from '@digigov/form';
3
- import { Button } from '@digigov/ui/core';
3
+ import { Button } from '@digigov/ui/form/Button';
4
4
 
5
5
  export const AFM = () => (
6
6
  <FormBuilder
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import FormBuilder, { Field } from '@digigov/form';
3
- import { Button } from '@digigov/ui/core';
3
+ import { Button } from '@digigov/ui/form/Button';
4
4
 
5
5
  export const Boolean = () => (
6
6
  <FormBuilder
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import FormBuilder, { Field } from '@digigov/form';
3
- import { Button } from '@digigov/ui/core';
3
+ import { Button } from '@digigov/ui/form/Button';
4
4
 
5
5
  export const Default = () => (
6
6
  <FormBuilder
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import FormBuilder, { Field } from '@digigov/form';
3
- import { Button } from '@digigov/ui/core';
3
+ import { Button } from '@digigov/ui/form/Button';
4
4
 
5
5
  export const IBAN = () => (
6
6
  <FormBuilder
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import FormBuilder, { Field } from '@digigov/form';
3
- import { Button } from '@digigov/ui/core';
3
+ import { Button } from '@digigov/ui/form/Button';
4
4
 
5
5
  export const Integer = () => {
6
6
  return (
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import FormBuilder, { Field } from '@digigov/form';
3
- import { Button } from '@digigov/ui/core';
3
+ import { Button } from '@digigov/ui/form/Button';
4
4
 
5
5
  export const MobilePhone = () => (
6
6
  <FormBuilder
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import FormBuilder, { Field } from '@digigov/form';
3
- import { Button } from '@digigov/ui/core';
3
+ import { Button } from '@digigov/ui/form/Button';
4
4
 
5
5
  export const PhoneNumber = () => (
6
6
  <FormBuilder
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import FormBuilder, { Field } from '@digigov/form';
3
- import { Button } from '@digigov/ui/core';
3
+ import { Button } from '@digigov/ui/form/Button';
4
4
 
5
5
  export const PostalCode = () => (
6
6
  <FormBuilder
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import FormBuilder, { Field } from '@digigov/form';
3
- import { Button } from '@digigov/ui/core';
3
+ import { Button } from '@digigov/ui/form';
4
4
 
5
5
  export const TextWithCharacterLimit = () => (
6
6
  <FormBuilder
@@ -4,7 +4,7 @@ import TextArea from '@digigov/react-core/TextArea';
4
4
  import { Hint } from '@digigov/react-core';
5
5
  import { UncontrolledFieldProps } from '@digigov/form/Field/types';
6
6
  import { useWatch } from 'react-hook-form';
7
- import { useTranslation } from '@digigov/ui/app/i18n';
7
+ import { useTranslation } from '@digigov/ui/i18n';
8
8
 
9
9
  const TYPES_MAP = {
10
10
  string: 'text',
@@ -58,8 +58,8 @@ export const Input: React.ExoticComponent<InputProps> = React.forwardRef(
58
58
  {limit?.max && (
59
59
  <Hint>
60
60
  {currentValue === undefined ||
61
- (currentValue?.length >= 0 &&
62
- currentValue?.length <= limit?.max) ? (
61
+ (currentValue?.length >= 0 &&
62
+ currentValue?.length <= limit?.max) ? (
63
63
  <span>
64
64
  {t('form.info.text.you_have')}{' '}
65
65
  <b>
@@ -2,6 +2,6 @@ import Label from '@digigov/form/inputs/Label';
2
2
  export default {
3
3
  title: 'Digigov Form/inputs/Label',
4
4
  component: Label,
5
- displayName: 'Label'
5
+ displayName: 'Label',
6
6
  };
7
7
  export * from '@digigov/form/inputs/Label/__stories__/Default';
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import FormBuilder, { Field, Label } from '@digigov/form';
3
- import { Button } from '@digigov/ui/core';
3
+ import { Button } from '@digigov/ui/form/Button';
4
4
 
5
5
  export const Default = () => (
6
6
  <FormBuilder
@@ -1,8 +1,8 @@
1
1
  import React from 'react';
2
- import LabelTitle from '@digigov/react-core/LabelTitle';
3
- import Hint from '@digigov/react-core/Hint';
4
- import { useTranslation } from '@digigov/ui/app/i18n';
5
2
  import { FieldLabelProps } from '@digigov/form/types';
3
+ import Hint from '@digigov/react-core/Hint';
4
+ import LabelTitle from '@digigov/react-core/LabelTitle';
5
+ import { useTranslation } from '@digigov/ui/i18n';
6
6
 
7
7
  export interface FieldOptionProps {
8
8
  label?: FieldLabelProps;
@@ -31,7 +31,7 @@ export const Label: React.FC<LabelProps> = ({ className, label, value }) => {
31
31
  }
32
32
  return (
33
33
  <>
34
- <LabelTitle className={className} size="s">
34
+ <LabelTitle className={className} size="sm">
35
35
  {(label && label.primary && t(label.primary)) || value}
36
36
  </LabelTitle>
37
37
  {label && label.secondary && <Hint>{t(label.secondary)}</Hint>}
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import FormBuilder, { Field, Fieldset } from '@digigov/form';
3
- import { Button } from '@digigov/ui/core';
4
3
  import { FieldSpec } from '@digigov/form/types';
4
+ import { Button } from '@digigov/ui/form/Button';
5
5
  const FIELDS: FieldSpec[] = [
6
6
  {
7
7
  key: 'otp',
@@ -1,7 +1,7 @@
1
1
  import React, { useState, useCallback } from 'react';
2
2
  import SingleCharacterInputContainer, {
3
3
  SingleCharacterInputItem,
4
- } from '@digigov/ui/core/SingleCharacterInputContainer';
4
+ } from '@digigov/ui/form/SingleCharacterInputContainer';
5
5
 
6
6
  export const RE_DIGIT = new RegExp(/^\d+$/);
7
7
  export const REMOVE_SPACES = new RegExp(/\s+/g);
@@ -83,7 +83,7 @@ function useOtp(onChange, maxLength) {
83
83
  const handleOtpChange = useCallback(
84
84
  (e: React.ChangeEvent<HTMLInputElement>, idx: number) => {
85
85
  const target = e.target;
86
- let targetValue = target.value;
86
+ const targetValue = target.value;
87
87
  const isTargetValueDigit = RE_DIGIT.test(targetValue);
88
88
  // We want to pass the empty string when the value is deleted
89
89
  // emptry string replaces the deleted value
@@ -139,7 +139,11 @@ export const OtpInput = function OtpInput({ name, maxLength = 6, ...props }) {
139
139
  disabled={props.disabled}
140
140
  aria-required={props['aria-required']}
141
141
  onChange={(e) => otp.handleOtpChange(e, idx)}
142
- onInput={(e) => { if (e.target.value === digit) { otp.handleOtpChange(e, idx) } }}
142
+ onInput={(e) => {
143
+ if (e.target.value === digit) {
144
+ otp.handleOtpChange(e, idx);
145
+ }
146
+ }}
143
147
  onKeyDown={(e) => otp.handleKeyDown(e, idx)}
144
148
  onFocus={otp.handleFocus}
145
149
  onPaste={otp.handlePaste}
@@ -2,9 +2,8 @@ import Radio from '@digigov/form/inputs/Radio';
2
2
  export default {
3
3
  title: 'Digigov Form/inputs/Radio',
4
4
  component: Radio,
5
- displayName: 'Radio'
5
+ displayName: 'Radio',
6
6
  };
7
7
  export * from '@digigov/form/inputs/Radio/__stories__/Default';
8
8
  export * from '@digigov/form/inputs/Radio/__stories__/WithDivider';
9
9
  export * from '@digigov/form/inputs/Radio/__stories__/Conditional';
10
-
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import FormBuilder, { Field, FieldSpec } from '@digigov/form';
3
- import { Button } from '@digigov/ui/core';
3
+ import { Button } from '@digigov/ui/form/Button';
4
4
 
5
5
  const fields: FieldSpec[] = [
6
6
  {
@@ -57,7 +57,7 @@ const fields: FieldSpec[] = [
57
57
  {
58
58
  key: 'auth_form',
59
59
  type: 'choice:single',
60
- required:true,
60
+ required: true,
61
61
  label: {
62
62
  primary: 'Επιλέξτε μέθοδο πιστοποίησης',
63
63
  secondary:
@@ -94,4 +94,4 @@ export const Conditional = () => (
94
94
  <Field key="auth_form" name="auth_form" />
95
95
  <Button type="submit">Συνέχεια</Button>
96
96
  </FormBuilder>
97
- );
97
+ );
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import FormBuilder, { Field } from '@digigov/form';
3
- import { Button } from '@digigov/ui/core';
3
+ import { Button } from '@digigov/ui/form/Button';
4
4
 
5
5
  export const Default = () => (
6
6
  <FormBuilder
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import FormBuilder, { Field } from '@digigov/form';
3
- import { Button } from '@digigov/ui/core';
3
+ import { Button } from '@digigov/ui/form/Button';
4
4
 
5
5
  export const WithDivider = () => (
6
6
  <FormBuilder
@@ -31,7 +31,7 @@ export const WithDivider = () => (
31
31
  {
32
32
  label: { primary: 'Ηνωμένες Πολιτείες της Αμερικής' },
33
33
  value: 'usa',
34
- divider:'ή'
34
+ dividerText: 'ή',
35
35
  },
36
36
  ],
37
37
  }}
@@ -1,13 +1,13 @@
1
1
  import React from 'react';
2
- import RadioContainer from '@digigov/react-core/RadioContainer';
3
- import RadioItem from '@digigov/react-core/RadioItem';
4
- import { useTranslation } from '@digigov/ui/app/i18n';
5
- import { FieldOptionProps } from '@digigov/form/inputs/Label';
6
- import { UncontrolledFieldProps } from '@digigov/form/Field/types';
7
2
  import { useWatch } from 'react-hook-form';
8
- import Hint from '@digigov/react-core/Hint';
9
3
  import { Field } from '@digigov/form';
4
+ import { UncontrolledFieldProps } from '@digigov/form/Field/types';
5
+ import { FieldOptionProps } from '@digigov/form/inputs/Label';
10
6
  import { RadioConditional } from '@digigov/react-core';
7
+ import Hint from '@digigov/react-core/Hint';
8
+ import RadioContainer from '@digigov/react-core/RadioContainer';
9
+ import RadioItem from '@digigov/react-core/RadioItem';
10
+ import { useTranslation } from '@digigov/ui/i18n';
11
11
 
12
12
  export interface RadioButtonsGroupProps
13
13
  extends Omit<UncontrolledFieldProps, 'extra'> {
@@ -2,6 +2,6 @@ import Select from '@digigov/form/inputs/Select';
2
2
  export default {
3
3
  title: 'Digigov Form/inputs/Select',
4
4
  component: Select,
5
- displayName: 'Select'
5
+ displayName: 'Select',
6
6
  };
7
7
  export * from '@digigov/form/inputs/Select/__stories__/Default';
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import FormBuilder, { Field } from '@digigov/form';
3
- import { Button } from '@digigov/ui/core';
3
+ import { Button } from '@digigov/ui/form/Button';
4
4
 
5
5
  export const Default = () => (
6
6
  <FormBuilder
@@ -1,8 +1,8 @@
1
1
  import React from 'react';
2
+ import { UncontrolledFieldProps } from '@digigov/form/Field/types';
3
+ import { FieldOptionProps } from '@digigov/form/inputs/Label';
2
4
  import SelectContainer from '@digigov/react-core/SelectContainer';
3
5
  import SelectOption from '@digigov/react-core/SelectOption';
4
- import { FieldOptionProps } from '@digigov/form/inputs/Label';
5
- import { UncontrolledFieldProps } from '@digigov/form/Field/types';
6
6
 
7
7
  export interface SelectProps extends Omit<UncontrolledFieldProps, 'extra'> {
8
8
  extra: {
@@ -7,39 +7,35 @@ sidebar_label: Installation
7
7
  import Tabs from '@theme/Tabs';
8
8
  import TabItem from '@theme/TabItem';
9
9
  import CodeBlock from '@theme/CodeBlock';
10
- import LeadText from "@site/src/components/LeadText";
10
+ import LeadText from '@site/src/components/LeadText';
11
11
 
12
12
  <LeadText>
13
- This page will help you install Digigov Form depending on the framework that you
14
- use and the application architecture.
13
+ This page will help you install Digigov Form depending on the framework that
14
+ you use and the application architecture.
15
15
  </LeadText>
16
16
 
17
17
  We assume that your stack uses some of the following tools.
18
18
 
19
- * React v16 or later
20
- * Nextjs or create-react-app to run your code
21
- * Digigov CSS, as a CSS import or as Tailwind plugin
19
+ - React v16 or later
20
+ - Nextjs or create-react-app to run your code
21
+ - Digigov CSS, as a CSS import or as Tailwind plugin
22
22
 
23
23
  ## Using create-digigov-app
24
24
 
25
25
  We highly recommend using `create-digigov-app`. Our scaffolder was created to save development teams time and effort. This way
26
26
  everything you need is already configured.
27
27
 
28
- If you choose to use our scaffolder tool, make sure you follow this
28
+ If you choose to use our scaffolder tool, make sure you follow this
29
29
  [guide](/docs/building-apps) first, if you haven't already done so.
30
30
 
31
31
  Then you just install the `@digigov/form` package from NPM.
32
32
 
33
33
  <Tabs>
34
34
  <TabItem value="npm" label="NPM" default>
35
- <CodeBlock>
36
- npm install @digigov/form --save
37
- </CodeBlock>
35
+ <CodeBlock>npm install @digigov/form --save</CodeBlock>
38
36
  </TabItem>
39
37
  <TabItem value="yarn" label="Yarn">
40
- <CodeBlock>
41
- yarn add @digigov/form
42
- </CodeBlock>
38
+ <CodeBlock>yarn add @digigov/form</CodeBlock>
43
39
  </TabItem>
44
40
  </Tabs>
45
41
 
@@ -48,9 +44,9 @@ Then you just install the `@digigov/form` package from NPM.
48
44
  This method is not recommended and you should proceed at your own risk. For
49
45
  Digigov Form to work properly, it is essential to do some configuration.
50
46
 
51
- * A working React application, ideally [Nextjs](https://nextjs.org/) or [Create
47
+ - A working React application, ideally [Nextjs](https://nextjs.org/) or [Create
52
48
  React App](https://create-react-app.dev/)
53
- * You should already have [installed and configured Digigov
49
+ - You should already have [installed and configured Digigov
54
50
  CSS](https://guide.services.gov.gr/docs/installation)
55
51
 
56
52
  If you meet these prerequisites, now it is time to install the dependencies.
@@ -69,4 +65,4 @@ and install `@digigov/form` and it's dependencies.
69
65
  yarn add @digigov/form @digigov/ui @digigov/react-core
70
66
  </CodeBlock>
71
67
  </TabItem>
72
- </Tabs>
68
+ </Tabs>
package/src/types.tsx CHANGED
@@ -1,7 +1,7 @@
1
1
  import { UseFormReturn, UseFormProps } from 'react-hook-form';
2
- import { GridProps } from '@digigov/ui/layouts/Grid';
3
- import { ValidatorSchema } from '@digigov/form/validators/types';
4
2
  import { FieldComponentRegistry } from '@digigov/form/Field/types';
3
+ import { ValidatorSchema } from '@digigov/form/validators/types';
4
+ import { GridProps } from '@digigov/ui/layouts/Grid';
5
5
 
6
6
  export type FieldError = {
7
7
  message: string;
@@ -59,6 +59,8 @@ export interface FieldSpec {
59
59
  >;
60
60
  validators?: ValidatorSchema[];
61
61
  wrapper?: 'label' | 'fieldset';
62
+ characterWidth?: number;
63
+ width?: string;
62
64
  }
63
65
 
64
66
  export interface FieldsetSpec {
package/src/utils.ts CHANGED
@@ -1,6 +1,6 @@
1
- import * as Yup from 'yup';
2
1
  import { validateFieldsNatively } from '@hookform/resolvers';
3
2
  import { appendErrors, FieldError } from 'react-hook-form';
3
+ import * as Yup from 'yup';
4
4
 
5
5
  /**
6
6
  * Why `path!` ? because it could be `undefined` in some case
@@ -1,9 +1,15 @@
1
- import * as yup from 'yup';
2
- import { FieldSpec } from '@digigov/form/types';
3
- import { ValidatorSchema } from '@digigov/form/validators/types';
4
1
  import { MutableRefObject, useMemo } from 'react';
5
2
  import dayjs from 'dayjs';
6
3
  import customParseFormat from 'dayjs/plugin/customParseFormat';
4
+ import * as yup from 'yup';
5
+ import { AnyObjectSchema, StringSchema } from 'yup';
6
+ import { RequiredArraySchema } from 'yup/lib/array';
7
+ import Lazy from 'yup/lib/Lazy';
8
+ import { MixedSchema } from 'yup/lib/mixed';
9
+ import { TypeOfShape, AssertsShape } from 'yup/lib/object';
10
+ import { AnyObject } from 'yup/lib/types';
11
+ import { FieldSpec } from '@digigov/form/types';
12
+ import { ValidatorSchema } from '@digigov/form/validators/types';
7
13
  import {
8
14
  getYupObjectShape,
9
15
  AFM_VALIDATOR,
@@ -16,14 +22,8 @@ import {
16
22
  POSTALCODE_VALIDATOR,
17
23
  UUID4_VALIDATOR,
18
24
  } from '@digigov/form/validators/utils';
19
- import { MixedSchema } from 'yup/lib/mixed';
20
- import { RequiredArraySchema } from 'yup/lib/array';
21
- import { AnyObject } from 'yup/lib/types';
22
- import Lazy from 'yup/lib/Lazy';
23
- import { TypeOfShape, AssertsShape } from 'yup/lib/object';
24
- import { AnyObjectSchema, StringSchema } from 'yup';
25
- import { NUMBER_VALIDATOR } from '@digigov/form/validators/utils/number';
26
25
  import { INT_VALIDATOR } from '@digigov/form/validators/utils/int';
26
+ import { NUMBER_VALIDATOR } from '@digigov/form/validators/utils/number';
27
27
  dayjs.extend(customParseFormat);
28
28
 
29
29
  const VALID_DATE_FORMATS = ['DD/MM/YYYY'];