@digigov/form 2.0.0-834daea4 → 2.0.0-87b6232d

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 (562) hide show
  1. package/Field/ErrorGroup/index.js +48 -0
  2. package/{Form.stories → Field/ErrorGroup}/package.json +1 -1
  3. package/Field/ErrorGroup.d.ts +15 -0
  4. package/Field/ErrorGroup.js.map +7 -0
  5. package/Field/FieldBase/index.js +38 -25
  6. package/Field/FieldBase.js.map +2 -2
  7. package/Field/FieldBaseContainer/index.js +5 -3
  8. package/Field/FieldBaseContainer.js.map +2 -2
  9. package/Field/FieldConditional/index.js +4 -0
  10. package/Field/FieldConditional.js.map +2 -2
  11. package/Field/index.js +14 -4
  12. package/Field/index.js.map +2 -2
  13. package/Field/types.d.ts +20 -10
  14. package/Field/utils/index.js +8 -1
  15. package/Field/utils/index.js.map +2 -2
  16. package/Field/utils/useField/index.js +14 -1
  17. package/Field/utils/useField.js.map +2 -2
  18. package/FieldArray/FieldArray.stories.d.ts +1 -0
  19. package/FieldArray/FormDialog/index.js +402 -0
  20. package/{Questions/Questions.stories → FieldArray/FormDialog}/package.json +1 -1
  21. package/FieldArray/FormDialog.d.ts +67 -0
  22. package/FieldArray/FormDialog.js.map +7 -0
  23. package/FieldArray/__stories__/WithModal.d.ts +2 -0
  24. package/FieldArray/index.d.ts +6 -0
  25. package/FieldArray/index.js +97 -46
  26. package/FieldArray/index.js.map +3 -3
  27. package/FieldObject/index.d.ts +5 -0
  28. package/FieldObject/index.js +30 -15
  29. package/FieldObject/index.js.map +2 -2
  30. package/FormBuilder/FormBuilder.stories.d.ts +2 -0
  31. package/FormBuilder/__stories__/AutoErrorGrouping.d.ts +3 -0
  32. package/FormBuilder/__stories__/ErrorGrouping.d.ts +3 -0
  33. package/FormBuilder/index.js +93 -6
  34. package/FormBuilder/index.js.map +2 -2
  35. package/FormBuilder/interaction.test.d.ts +1 -0
  36. package/FormContext.js.map +2 -2
  37. package/MultiplicityField/add-objects/index.js +6 -2
  38. package/MultiplicityField/add-objects.js.map +2 -2
  39. package/MultiplicityField/index.js +2 -0
  40. package/MultiplicityField/index.js.map +2 -2
  41. package/MultiplicityField/types.d.ts +1 -2
  42. package/Questions/Questions/index.js +5 -4
  43. package/Questions/Questions.js.map +2 -2
  44. package/Questions/Step/StepArrayReview.js.map +2 -2
  45. package/cjs/Field/ErrorGroup/index.js +82 -0
  46. package/cjs/Field/ErrorGroup.js.map +7 -0
  47. package/cjs/Field/FieldBase/index.js +37 -24
  48. package/cjs/Field/FieldBase.js.map +2 -2
  49. package/cjs/Field/FieldBaseContainer/index.js +5 -3
  50. package/cjs/Field/FieldBaseContainer.js.map +2 -2
  51. package/cjs/Field/FieldConditional/index.js +4 -0
  52. package/cjs/Field/FieldConditional.js.map +2 -2
  53. package/cjs/Field/index.js +14 -4
  54. package/cjs/Field/index.js.map +2 -2
  55. package/cjs/Field/types.js.map +1 -1
  56. package/cjs/Field/utils/index.js +8 -1
  57. package/cjs/Field/utils/index.js.map +3 -3
  58. package/cjs/Field/utils/useField/index.js +14 -1
  59. package/cjs/Field/utils/useField.js.map +2 -2
  60. package/cjs/FieldArray/FormDialog/index.js +421 -0
  61. package/cjs/FieldArray/FormDialog.js.map +7 -0
  62. package/cjs/FieldArray/index.js +92 -44
  63. package/cjs/FieldArray/index.js.map +3 -3
  64. package/cjs/FieldObject/index.js +30 -15
  65. package/cjs/FieldObject/index.js.map +2 -2
  66. package/cjs/FormBuilder/index.js +92 -5
  67. package/cjs/FormBuilder/index.js.map +2 -2
  68. package/cjs/FormContext/index.js +2 -2
  69. package/cjs/FormContext.js.map +3 -3
  70. package/cjs/MultiplicityField/add-objects/index.js +6 -2
  71. package/cjs/MultiplicityField/add-objects.js.map +2 -2
  72. package/cjs/MultiplicityField/index.js +2 -0
  73. package/cjs/MultiplicityField/index.js.map +2 -2
  74. package/cjs/MultiplicityField/types.js.map +1 -1
  75. package/cjs/Questions/Questions/index.js +5 -4
  76. package/cjs/Questions/Questions.js.map +2 -2
  77. package/cjs/Questions/Step/StepArrayReview.js.map +2 -2
  78. package/cjs/inputs/AutoCompleteInput/index.js +4 -3
  79. package/cjs/inputs/AutoCompleteInput/index.js.map +2 -2
  80. package/cjs/inputs/Checkboxes/index.js +2 -1
  81. package/cjs/inputs/Checkboxes/index.js.map +2 -2
  82. package/cjs/inputs/DateInput/index.js +27 -12
  83. package/cjs/inputs/DateInput/index.js.map +2 -2
  84. package/cjs/inputs/DateTimeInput/index.js +224 -0
  85. package/cjs/inputs/DateTimeInput/index.js.map +7 -0
  86. package/cjs/inputs/FileInput/index.js +50 -31
  87. package/cjs/inputs/FileInput/index.js.map +2 -2
  88. package/cjs/inputs/ImageInput/index.js +8 -2
  89. package/cjs/inputs/ImageInput/index.js.map +2 -2
  90. package/cjs/inputs/Input/index.js +9 -2
  91. package/cjs/inputs/Input/index.js.map +2 -2
  92. package/cjs/inputs/Input/inputsInputScenarios.js.map +2 -2
  93. package/cjs/inputs/Label/index.js.map +2 -2
  94. package/cjs/inputs/OtpInput/index.js +1 -0
  95. package/cjs/inputs/OtpInput/index.js.map +2 -2
  96. package/cjs/inputs/Radio/index.js +1 -0
  97. package/cjs/inputs/Radio/index.js.map +2 -2
  98. package/cjs/inputs/Select/index.js +9 -2
  99. package/cjs/inputs/Select/index.js.map +2 -2
  100. package/cjs/inputs/inputsScenarios/index.js +6 -12
  101. package/cjs/inputs/inputsScenarios.js.map +2 -2
  102. package/cjs/lazy/index.js +48 -38
  103. package/cjs/lazy.js.map +3 -3
  104. package/cjs/locales/el.js.map +1 -1
  105. package/cjs/registry/index.js +70 -60
  106. package/cjs/registry.js.map +3 -3
  107. package/cjs/types.js.map +1 -1
  108. package/cjs/utils/index.js +22 -7
  109. package/cjs/utils.js.map +2 -2
  110. package/cjs/validators/index.js +58 -27
  111. package/cjs/validators/index.js.map +2 -2
  112. package/cjs/validators/utils/amka/index.js +60 -0
  113. package/cjs/validators/utils/amka.js.map +7 -0
  114. package/cjs/validators/utils/datetime/index.js +151 -0
  115. package/cjs/validators/utils/datetime.js.map +7 -0
  116. package/cjs/validators/utils/file/index.js +30 -17
  117. package/cjs/validators/utils/file.js.map +2 -2
  118. package/cjs/validators/utils/index.js +8 -2
  119. package/cjs/validators/utils/index.js.map +2 -2
  120. package/cjs/validators/utils/int/index.js +1 -1
  121. package/cjs/validators/utils/int.js.map +2 -2
  122. package/cjs/validators/utils/number/index.js +1 -1
  123. package/cjs/validators/utils/number.js.map +2 -2
  124. package/cjs/validators/utils/phone.js.map +2 -2
  125. package/cjs/validators/utils/postal_code.js.map +1 -1
  126. package/cjs/validators/utils/uuid4.js.map +2 -2
  127. package/index.js +1 -1
  128. package/inputs/AutoCompleteInput/index.d.ts +1 -1
  129. package/inputs/AutoCompleteInput/index.js +4 -3
  130. package/inputs/AutoCompleteInput/index.js.map +2 -2
  131. package/inputs/Checkboxes/index.d.ts +1 -1
  132. package/inputs/Checkboxes/index.js +2 -1
  133. package/inputs/Checkboxes/index.js.map +2 -2
  134. package/inputs/DateInput/index.d.ts +1 -2
  135. package/inputs/DateInput/index.js +27 -12
  136. package/inputs/DateInput/index.js.map +2 -2
  137. package/inputs/DateTimeInput/DateTimeInput.stories.d.ts +7 -0
  138. package/inputs/DateTimeInput/__stories__/Default.d.ts +3 -0
  139. package/inputs/DateTimeInput/index.d.ts +13 -0
  140. package/inputs/DateTimeInput/index.js +194 -0
  141. package/inputs/DateTimeInput/index.js.map +7 -0
  142. package/inputs/DateTimeInput/index.test.d.ts +1 -0
  143. package/inputs/{Input/Input.stories → DateTimeInput}/package.json +1 -1
  144. package/inputs/FileInput/FileInput.stories.d.ts +1 -0
  145. package/inputs/FileInput/__stories__/WithBorderAndLink.d.ts +3 -0
  146. package/inputs/FileInput/index.d.ts +12 -0
  147. package/inputs/FileInput/index.js +55 -33
  148. package/inputs/FileInput/index.js.map +2 -2
  149. package/inputs/ImageInput/index.js +8 -2
  150. package/inputs/ImageInput/index.js.map +2 -2
  151. package/inputs/Input/Input.stories.d.ts +2 -0
  152. package/inputs/Input/__stories__/AMKA.d.ts +3 -0
  153. package/inputs/Input/__stories__/StringWithTrimValidation.d.ts +3 -0
  154. package/inputs/Input/index.d.ts +2 -1
  155. package/inputs/Input/index.js +9 -2
  156. package/inputs/Input/index.js.map +2 -2
  157. package/inputs/Input/inputsInputScenarios.js.map +2 -2
  158. package/inputs/Label/index.d.ts +0 -2
  159. package/inputs/Label/index.js.map +2 -2
  160. package/inputs/OtpInput/index.js +1 -0
  161. package/inputs/OtpInput/index.js.map +2 -2
  162. package/inputs/Radio/index.d.ts +1 -1
  163. package/inputs/Radio/index.js +1 -0
  164. package/inputs/Radio/index.js.map +2 -2
  165. package/inputs/Select/index.d.ts +3 -2
  166. package/inputs/Select/index.js +13 -3
  167. package/inputs/Select/index.js.map +2 -2
  168. package/inputs/inputsScenarios/index.js +6 -12
  169. package/inputs/inputsScenarios.d.ts +1 -1
  170. package/inputs/inputsScenarios.js.map +2 -2
  171. package/lazy/index.js +77 -71
  172. package/locales/el.js.map +1 -1
  173. package/package.json +5 -5
  174. package/registry/index.js +116 -107
  175. package/src/Field/ErrorGroup.tsx +84 -0
  176. package/src/Field/FieldBase.tsx +55 -36
  177. package/src/Field/FieldBaseContainer.tsx +11 -7
  178. package/src/Field/FieldConditional.tsx +6 -2
  179. package/src/Field/doc.mdx +202 -1
  180. package/src/Field/index.tsx +19 -5
  181. package/src/Field/types.tsx +22 -10
  182. package/src/Field/utils/index.ts +7 -0
  183. package/src/Field/utils/useField.ts +14 -2
  184. package/src/FieldArray/FieldArray.stories.js +1 -0
  185. package/src/FieldArray/FormDialog.tsx +574 -0
  186. package/src/FieldArray/__stories__/Default.tsx +1 -0
  187. package/src/FieldArray/__stories__/WithExactLength.tsx +1 -0
  188. package/src/FieldArray/__stories__/WithModal.tsx +160 -0
  189. package/src/FieldArray/index.test.tsx +8 -0
  190. package/src/FieldArray/index.tsx +116 -60
  191. package/src/FieldObject/index.tsx +39 -18
  192. package/src/FormBuilder/FormBuilder.stories.js +2 -0
  193. package/src/FormBuilder/__stories__/AutoErrorGrouping.tsx +63 -0
  194. package/src/FormBuilder/__stories__/ErrorGrouping.tsx +43 -0
  195. package/src/FormBuilder/doc.mdx +9 -4
  196. package/src/FormBuilder/index.test.tsx +12 -0
  197. package/src/FormBuilder/index.tsx +103 -9
  198. package/src/FormBuilder/interaction.test.tsx +40 -0
  199. package/src/FormBuilder/scenarios.test.tsx +124 -10
  200. package/src/FormContext.tsx +1 -2
  201. package/src/MultiplicityField/add-objects.tsx +6 -3
  202. package/src/MultiplicityField/doc.mdx +101 -83
  203. package/src/MultiplicityField/index.test.tsx +4 -0
  204. package/src/MultiplicityField/index.tsx +2 -0
  205. package/src/MultiplicityField/types.ts +1 -2
  206. package/src/Questions/Questions.tsx +4 -4
  207. package/src/Questions/Step/StepArrayReview.tsx +1 -1
  208. package/src/Questions/__snapshots__/index.spec.tsx.snap +12 -10
  209. package/src/Questions/doc.mdx +21 -41
  210. package/src/Questions/index.spec.tsx +14 -2
  211. package/src/Questions/index.test.tsx +4 -0
  212. package/src/doc.mdx +26 -11
  213. package/src/inputs/AutoCompleteInput/__stories__/Default.tsx +2 -10
  214. package/src/inputs/AutoCompleteInput/__stories__/Multiple.tsx +1 -7
  215. package/src/inputs/AutoCompleteInput/index.test.tsx +4 -0
  216. package/src/inputs/AutoCompleteInput/index.tsx +4 -5
  217. package/src/inputs/Checkboxes/index.test.tsx +4 -0
  218. package/src/inputs/Checkboxes/index.tsx +3 -4
  219. package/src/inputs/DateInput/__stories__/Default.tsx +7 -12
  220. package/src/inputs/DateInput/index.test.tsx +4 -0
  221. package/src/inputs/DateInput/index.tsx +28 -11
  222. package/src/inputs/DateTimeInput/DateTimeInput.stories.js +8 -0
  223. package/src/inputs/DateTimeInput/__stories__/Default.tsx +25 -0
  224. package/src/inputs/DateTimeInput/doc.mdx +16 -0
  225. package/src/inputs/DateTimeInput/index.test.tsx +24 -0
  226. package/src/inputs/DateTimeInput/index.tsx +209 -0
  227. package/src/inputs/FileInput/FileInput.stories.js +1 -0
  228. package/src/inputs/FileInput/__stories__/WithBorderAndLink.tsx +34 -0
  229. package/src/inputs/FileInput/index.test.tsx +8 -0
  230. package/src/inputs/FileInput/index.tsx +56 -23
  231. package/src/inputs/ImageInput/ImageInput.stories.js +0 -1
  232. package/src/inputs/ImageInput/__stories__/MaxSize.tsx +2 -2
  233. package/src/inputs/ImageInput/index.test.tsx +4 -4
  234. package/src/inputs/ImageInput/index.tsx +8 -5
  235. package/src/inputs/Input/Input.stories.js +2 -0
  236. package/src/inputs/Input/__stories__/AMKA.tsx +23 -0
  237. package/src/inputs/Input/__stories__/LandlineNumber.tsx +2 -1
  238. package/src/inputs/Input/__stories__/MobilePhone.tsx +1 -0
  239. package/src/inputs/Input/__stories__/PhoneNumber.tsx +1 -0
  240. package/src/inputs/Input/__stories__/PostalCode.tsx +1 -0
  241. package/src/inputs/Input/__stories__/StringWithTrimValidation.tsx +26 -0
  242. package/src/inputs/Input/__stories__/TextWithLimit.tsx +1 -0
  243. package/src/inputs/Input/index.test.tsx +8 -0
  244. package/src/inputs/Input/index.tsx +12 -3
  245. package/src/inputs/Input/inputsInputScenarios.ts +244 -245
  246. package/src/inputs/Label/index.test.tsx +4 -0
  247. package/src/inputs/Label/index.tsx +0 -3
  248. package/src/inputs/OtpInput/index.test.tsx +4 -0
  249. package/src/inputs/OtpInput/index.tsx +3 -1
  250. package/src/inputs/Radio/index.test.tsx +4 -0
  251. package/src/inputs/Radio/index.tsx +2 -1
  252. package/src/inputs/Select/index.test.tsx +4 -0
  253. package/src/inputs/Select/index.tsx +18 -6
  254. package/src/inputs/inputsScenarios.ts +36 -42
  255. package/src/lazy.js +77 -68
  256. package/src/locales/el.ts +1 -1
  257. package/src/registry.js +108 -100
  258. package/src/types.tsx +4 -3
  259. package/src/utils.ts +29 -8
  260. package/src/validators/index.ts +104 -32
  261. package/src/validators/utils/amka.ts +39 -0
  262. package/src/validators/utils/datetime.ts +130 -0
  263. package/src/validators/utils/file.ts +33 -17
  264. package/src/validators/utils/index.ts +5 -1
  265. package/src/validators/utils/int.ts +1 -1
  266. package/src/validators/utils/number.ts +1 -1
  267. package/src/validators/utils/phone.ts +1 -1
  268. package/src/validators/utils/postal_code.ts +1 -1
  269. package/src/validators/utils/uuid4.ts +2 -1
  270. package/src/validators/validators.spec.ts +3 -3
  271. package/types.d.ts +4 -3
  272. package/types.js.map +1 -1
  273. package/utils/index.js +22 -7
  274. package/utils.d.ts +2 -0
  275. package/utils.js.map +2 -2
  276. package/validators/index.d.ts +1 -1
  277. package/validators/index.js +63 -28
  278. package/validators/index.js.map +2 -2
  279. package/validators/utils/amka/index.js +36 -0
  280. package/{FieldArray/FieldArray.stories → validators/utils/amka}/package.json +1 -1
  281. package/validators/utils/amka.d.ts +6 -0
  282. package/validators/utils/amka.js.map +7 -0
  283. package/validators/utils/datetime/index.js +116 -0
  284. package/validators/utils/datetime/package.json +6 -0
  285. package/validators/utils/datetime.d.ts +9 -0
  286. package/validators/utils/datetime.js.map +7 -0
  287. package/validators/utils/file/index.js +30 -17
  288. package/validators/utils/file.js.map +2 -2
  289. package/validators/utils/index.d.ts +2 -0
  290. package/validators/utils/index.js +5 -1
  291. package/validators/utils/index.js.map +2 -2
  292. package/validators/utils/int/index.js +1 -1
  293. package/validators/utils/int.js.map +2 -2
  294. package/validators/utils/number/index.js +1 -1
  295. package/validators/utils/number.js.map +2 -2
  296. package/validators/utils/phone.d.ts +1 -1
  297. package/validators/utils/phone.js.map +2 -2
  298. package/validators/utils/postal_code.d.ts +1 -1
  299. package/validators/utils/postal_code.js.map +1 -1
  300. package/validators/utils/uuid4.js.map +2 -2
  301. package/FieldArray/FieldArray.stories/index.js +0 -14
  302. package/FieldArray/FieldArray.stories.js.map +0 -7
  303. package/FieldArray/__stories__/Default/index.js +0 -95
  304. package/FieldArray/__stories__/Default/package.json +0 -6
  305. package/FieldArray/__stories__/Default.js.map +0 -7
  306. package/FieldArray/__stories__/WithExactLength/index.js +0 -95
  307. package/FieldArray/__stories__/WithExactLength/package.json +0 -6
  308. package/FieldArray/__stories__/WithExactLength.js.map +0 -7
  309. package/Form.stories/index.js +0 -7
  310. package/Form.stories.js.map +0 -7
  311. package/FormBuilder/FormBuilder.stories/index.js +0 -12
  312. package/FormBuilder/FormBuilder.stories/package.json +0 -6
  313. package/FormBuilder/FormBuilder.stories.js.map +0 -7
  314. package/FormBuilder/__stories__/Default/index.js +0 -32
  315. package/FormBuilder/__stories__/Default/package.json +0 -6
  316. package/FormBuilder/__stories__/Default.js.map +0 -7
  317. package/MultiplicityField/MultiplicityField.stories/index.js +0 -22
  318. package/MultiplicityField/MultiplicityField.stories/package.json +0 -6
  319. package/MultiplicityField/MultiplicityField.stories.js.map +0 -7
  320. package/MultiplicityField/__stories__/Default/index.js +0 -100
  321. package/MultiplicityField/__stories__/Default/package.json +0 -6
  322. package/MultiplicityField/__stories__/Default.js.map +0 -7
  323. package/MultiplicityField/__stories__/PreviewDisplay/index.js +0 -70
  324. package/MultiplicityField/__stories__/PreviewDisplay/package.json +0 -6
  325. package/MultiplicityField/__stories__/PreviewDisplay.js.map +0 -7
  326. package/MultiplicityField/__stories__/WithExactLength/index.js +0 -97
  327. package/MultiplicityField/__stories__/WithExactLength/package.json +0 -6
  328. package/MultiplicityField/__stories__/WithExactLength.js.map +0 -7
  329. package/MultiplicityField/__stories__/WithMaxLength/index.js +0 -100
  330. package/MultiplicityField/__stories__/WithMaxLength/package.json +0 -6
  331. package/MultiplicityField/__stories__/WithMaxLength.js.map +0 -7
  332. package/MultiplicityField/__stories__/WithMinAndMaxLength/index.js +0 -101
  333. package/MultiplicityField/__stories__/WithMinAndMaxLength/package.json +0 -6
  334. package/MultiplicityField/__stories__/WithMinAndMaxLength.js.map +0 -7
  335. package/MultiplicityField/__stories__/WithMinLength/index.js +0 -100
  336. package/MultiplicityField/__stories__/WithMinLength/package.json +0 -6
  337. package/MultiplicityField/__stories__/WithMinLength.js.map +0 -7
  338. package/Questions/Questions.stories/index.js +0 -12
  339. package/Questions/Questions.stories.js.map +0 -7
  340. package/Questions/__stories__/Default/index.js +0 -108
  341. package/Questions/__stories__/Default/package.json +0 -6
  342. package/Questions/__stories__/Default.js.map +0 -7
  343. package/cjs/FieldArray/FieldArray.stories/index.js +0 -48
  344. package/cjs/FieldArray/FieldArray.stories.js.map +0 -7
  345. package/cjs/FieldArray/__stories__/Default/index.js +0 -128
  346. package/cjs/FieldArray/__stories__/Default.js.map +0 -7
  347. package/cjs/FieldArray/__stories__/WithExactLength/index.js +0 -128
  348. package/cjs/FieldArray/__stories__/WithExactLength.js.map +0 -7
  349. package/cjs/Form.stories/index.js +0 -26
  350. package/cjs/Form.stories.js.map +0 -7
  351. package/cjs/FormBuilder/FormBuilder.stories/index.js +0 -45
  352. package/cjs/FormBuilder/FormBuilder.stories.js.map +0 -7
  353. package/cjs/FormBuilder/__stories__/Default/index.js +0 -65
  354. package/cjs/FormBuilder/__stories__/Default.js.map +0 -7
  355. package/cjs/MultiplicityField/MultiplicityField.stories/index.js +0 -60
  356. package/cjs/MultiplicityField/MultiplicityField.stories.js.map +0 -7
  357. package/cjs/MultiplicityField/__stories__/Default/index.js +0 -133
  358. package/cjs/MultiplicityField/__stories__/Default.js.map +0 -7
  359. package/cjs/MultiplicityField/__stories__/PreviewDisplay/index.js +0 -86
  360. package/cjs/MultiplicityField/__stories__/PreviewDisplay.js.map +0 -7
  361. package/cjs/MultiplicityField/__stories__/WithExactLength/index.js +0 -130
  362. package/cjs/MultiplicityField/__stories__/WithExactLength.js.map +0 -7
  363. package/cjs/MultiplicityField/__stories__/WithMaxLength/index.js +0 -133
  364. package/cjs/MultiplicityField/__stories__/WithMaxLength.js.map +0 -7
  365. package/cjs/MultiplicityField/__stories__/WithMinAndMaxLength/index.js +0 -134
  366. package/cjs/MultiplicityField/__stories__/WithMinAndMaxLength.js.map +0 -7
  367. package/cjs/MultiplicityField/__stories__/WithMinLength/index.js +0 -133
  368. package/cjs/MultiplicityField/__stories__/WithMinLength.js.map +0 -7
  369. package/cjs/Questions/Questions.stories/index.js +0 -45
  370. package/cjs/Questions/Questions.stories.js.map +0 -7
  371. package/cjs/Questions/__stories__/Default/index.js +0 -136
  372. package/cjs/Questions/__stories__/Default.js.map +0 -7
  373. package/cjs/inputs/AutoCompleteInput/AutoComplete.stories/index.js +0 -48
  374. package/cjs/inputs/AutoCompleteInput/AutoComplete.stories.js.map +0 -7
  375. package/cjs/inputs/AutoCompleteInput/__stories__/Default/index.js +0 -83
  376. package/cjs/inputs/AutoCompleteInput/__stories__/Default.js.map +0 -7
  377. package/cjs/inputs/AutoCompleteInput/__stories__/Multiple/index.js +0 -83
  378. package/cjs/inputs/AutoCompleteInput/__stories__/Multiple.js.map +0 -7
  379. package/cjs/inputs/Checkboxes/Checkboxes.stories/index.js +0 -51
  380. package/cjs/inputs/Checkboxes/Checkboxes.stories.js.map +0 -7
  381. package/cjs/inputs/Checkboxes/__stories__/Conditional/index.js +0 -133
  382. package/cjs/inputs/Checkboxes/__stories__/Conditional.js.map +0 -7
  383. package/cjs/inputs/Checkboxes/__stories__/Default/index.js +0 -77
  384. package/cjs/inputs/Checkboxes/__stories__/Default.js.map +0 -7
  385. package/cjs/inputs/Checkboxes/__stories__/WithDivider/index.js +0 -78
  386. package/cjs/inputs/Checkboxes/__stories__/WithDivider.js.map +0 -7
  387. package/cjs/inputs/DateInput/DateInput.stories/index.js +0 -45
  388. package/cjs/inputs/DateInput/DateInput.stories.js.map +0 -7
  389. package/cjs/inputs/DateInput/__stories__/Default/index.js +0 -61
  390. package/cjs/inputs/DateInput/__stories__/Default.js.map +0 -7
  391. package/cjs/inputs/FileInput/FileInput.stories/index.js +0 -45
  392. package/cjs/inputs/FileInput/FileInput.stories.js.map +0 -7
  393. package/cjs/inputs/FileInput/__stories__/Default/index.js +0 -61
  394. package/cjs/inputs/FileInput/__stories__/Default.js.map +0 -7
  395. package/cjs/inputs/ImageInput/ImageInput.stories/index.js +0 -51
  396. package/cjs/inputs/ImageInput/ImageInput.stories.js.map +0 -7
  397. package/cjs/inputs/ImageInput/__stories__/Default/index.js +0 -63
  398. package/cjs/inputs/ImageInput/__stories__/Default.js.map +0 -7
  399. package/cjs/inputs/ImageInput/__stories__/MaxSize/index.js +0 -69
  400. package/cjs/inputs/ImageInput/__stories__/MaxSize.js.map +0 -7
  401. package/cjs/inputs/ImageInput/__stories__/WithInvalidImageDimension/index.js +0 -72
  402. package/cjs/inputs/ImageInput/__stories__/WithInvalidImageDimension.js.map +0 -7
  403. package/cjs/inputs/ImageInput/__stories__/WithInvalidImageSize/index.js +0 -68
  404. package/cjs/inputs/ImageInput/__stories__/WithInvalidImageSize.js.map +0 -7
  405. package/cjs/inputs/Input/Input.stories/index.js +0 -72
  406. package/cjs/inputs/Input/Input.stories.js.map +0 -7
  407. package/cjs/inputs/Input/__stories__/AFM/index.js +0 -63
  408. package/cjs/inputs/Input/__stories__/AFM.js.map +0 -7
  409. package/cjs/inputs/Input/__stories__/Boolean/index.js +0 -64
  410. package/cjs/inputs/Input/__stories__/Boolean.js.map +0 -7
  411. package/cjs/inputs/Input/__stories__/IBAN/index.js +0 -64
  412. package/cjs/inputs/Input/__stories__/IBAN.js.map +0 -7
  413. package/cjs/inputs/Input/__stories__/Integer/index.js +0 -78
  414. package/cjs/inputs/Input/__stories__/Integer.js.map +0 -7
  415. package/cjs/inputs/Input/__stories__/LandlineNumber/index.js +0 -67
  416. package/cjs/inputs/Input/__stories__/LandlineNumber.js.map +0 -7
  417. package/cjs/inputs/Input/__stories__/MobilePhone/index.js +0 -67
  418. package/cjs/inputs/Input/__stories__/MobilePhone.js.map +0 -7
  419. package/cjs/inputs/Input/__stories__/PhoneNumber/index.js +0 -66
  420. package/cjs/inputs/Input/__stories__/PhoneNumber.js.map +0 -7
  421. package/cjs/inputs/Input/__stories__/PostalCode/index.js +0 -64
  422. package/cjs/inputs/Input/__stories__/PostalCode.js.map +0 -7
  423. package/cjs/inputs/Input/__stories__/String/index.js +0 -64
  424. package/cjs/inputs/Input/__stories__/String.js.map +0 -7
  425. package/cjs/inputs/Input/__stories__/TextWithLimit/index.js +0 -64
  426. package/cjs/inputs/Input/__stories__/TextWithLimit.js.map +0 -7
  427. package/cjs/inputs/Label/Label.stories/index.js +0 -45
  428. package/cjs/inputs/Label/Label.stories.js.map +0 -7
  429. package/cjs/inputs/Label/__stories__/Default/index.js +0 -72
  430. package/cjs/inputs/Label/__stories__/Default.js.map +0 -7
  431. package/cjs/inputs/OtpInput/OtpInput.stories/index.js +0 -45
  432. package/cjs/inputs/OtpInput/OtpInput.stories.js.map +0 -7
  433. package/cjs/inputs/OtpInput/__stories__/Default/index.js +0 -64
  434. package/cjs/inputs/OtpInput/__stories__/Default.js.map +0 -7
  435. package/cjs/inputs/Radio/Radio.stories/index.js +0 -51
  436. package/cjs/inputs/Radio/Radio.stories.js.map +0 -7
  437. package/cjs/inputs/Radio/__stories__/Conditional/index.js +0 -133
  438. package/cjs/inputs/Radio/__stories__/Conditional.js.map +0 -7
  439. package/cjs/inputs/Radio/__stories__/Default/index.js +0 -81
  440. package/cjs/inputs/Radio/__stories__/Default.js.map +0 -7
  441. package/cjs/inputs/Radio/__stories__/WithDivider/index.js +0 -82
  442. package/cjs/inputs/Radio/__stories__/WithDivider.js.map +0 -7
  443. package/cjs/inputs/Select/Select.stories/index.js +0 -45
  444. package/cjs/inputs/Select/Select.stories.js.map +0 -7
  445. package/cjs/inputs/Select/__stories__/Default/index.js +0 -86
  446. package/cjs/inputs/Select/__stories__/Default.js.map +0 -7
  447. package/inputs/AutoCompleteInput/AutoComplete.stories/index.js +0 -14
  448. package/inputs/AutoCompleteInput/AutoComplete.stories/package.json +0 -6
  449. package/inputs/AutoCompleteInput/AutoComplete.stories.js.map +0 -7
  450. package/inputs/AutoCompleteInput/__stories__/Default/index.js +0 -50
  451. package/inputs/AutoCompleteInput/__stories__/Default/package.json +0 -6
  452. package/inputs/AutoCompleteInput/__stories__/Default.js.map +0 -7
  453. package/inputs/AutoCompleteInput/__stories__/Multiple/index.js +0 -50
  454. package/inputs/AutoCompleteInput/__stories__/Multiple/package.json +0 -6
  455. package/inputs/AutoCompleteInput/__stories__/Multiple.js.map +0 -7
  456. package/inputs/Checkboxes/Checkboxes.stories/index.js +0 -16
  457. package/inputs/Checkboxes/Checkboxes.stories/package.json +0 -6
  458. package/inputs/Checkboxes/Checkboxes.stories.js.map +0 -7
  459. package/inputs/Checkboxes/__stories__/Conditional/index.js +0 -100
  460. package/inputs/Checkboxes/__stories__/Conditional/package.json +0 -6
  461. package/inputs/Checkboxes/__stories__/Conditional.js.map +0 -7
  462. package/inputs/Checkboxes/__stories__/Default/index.js +0 -44
  463. package/inputs/Checkboxes/__stories__/Default/package.json +0 -6
  464. package/inputs/Checkboxes/__stories__/Default.js.map +0 -7
  465. package/inputs/Checkboxes/__stories__/WithDivider/index.js +0 -45
  466. package/inputs/Checkboxes/__stories__/WithDivider/package.json +0 -6
  467. package/inputs/Checkboxes/__stories__/WithDivider.js.map +0 -7
  468. package/inputs/DateInput/DateInput.stories/index.js +0 -12
  469. package/inputs/DateInput/DateInput.stories/package.json +0 -6
  470. package/inputs/DateInput/DateInput.stories.js.map +0 -7
  471. package/inputs/DateInput/__stories__/Default/index.js +0 -28
  472. package/inputs/DateInput/__stories__/Default/package.json +0 -6
  473. package/inputs/DateInput/__stories__/Default.js.map +0 -7
  474. package/inputs/FileInput/FileInput.stories/index.js +0 -12
  475. package/inputs/FileInput/FileInput.stories/package.json +0 -6
  476. package/inputs/FileInput/FileInput.stories.js.map +0 -7
  477. package/inputs/FileInput/__stories__/Default/index.js +0 -28
  478. package/inputs/FileInput/__stories__/Default/package.json +0 -6
  479. package/inputs/FileInput/__stories__/Default.js.map +0 -7
  480. package/inputs/ImageInput/ImageInput.stories/index.js +0 -16
  481. package/inputs/ImageInput/ImageInput.stories/package.json +0 -6
  482. package/inputs/ImageInput/ImageInput.stories.js.map +0 -7
  483. package/inputs/ImageInput/__stories__/Default/index.js +0 -30
  484. package/inputs/ImageInput/__stories__/Default/package.json +0 -6
  485. package/inputs/ImageInput/__stories__/Default.js.map +0 -7
  486. package/inputs/ImageInput/__stories__/MaxSize/index.js +0 -36
  487. package/inputs/ImageInput/__stories__/MaxSize/package.json +0 -6
  488. package/inputs/ImageInput/__stories__/MaxSize.js.map +0 -7
  489. package/inputs/ImageInput/__stories__/WithInvalidImageDimension/index.js +0 -39
  490. package/inputs/ImageInput/__stories__/WithInvalidImageDimension/package.json +0 -6
  491. package/inputs/ImageInput/__stories__/WithInvalidImageDimension.js.map +0 -7
  492. package/inputs/ImageInput/__stories__/WithInvalidImageSize/index.js +0 -35
  493. package/inputs/ImageInput/__stories__/WithInvalidImageSize/package.json +0 -6
  494. package/inputs/ImageInput/__stories__/WithInvalidImageSize.d.ts +0 -3
  495. package/inputs/ImageInput/__stories__/WithInvalidImageSize.js.map +0 -7
  496. package/inputs/Input/Input.stories/index.js +0 -30
  497. package/inputs/Input/Input.stories.js.map +0 -7
  498. package/inputs/Input/__stories__/AFM/index.js +0 -30
  499. package/inputs/Input/__stories__/AFM/package.json +0 -6
  500. package/inputs/Input/__stories__/AFM.js.map +0 -7
  501. package/inputs/Input/__stories__/Boolean/index.js +0 -31
  502. package/inputs/Input/__stories__/Boolean/package.json +0 -6
  503. package/inputs/Input/__stories__/Boolean.js.map +0 -7
  504. package/inputs/Input/__stories__/IBAN/index.js +0 -31
  505. package/inputs/Input/__stories__/IBAN/package.json +0 -6
  506. package/inputs/Input/__stories__/IBAN.js.map +0 -7
  507. package/inputs/Input/__stories__/Integer/index.js +0 -45
  508. package/inputs/Input/__stories__/Integer/package.json +0 -6
  509. package/inputs/Input/__stories__/Integer.js.map +0 -7
  510. package/inputs/Input/__stories__/LandlineNumber/index.js +0 -34
  511. package/inputs/Input/__stories__/LandlineNumber/package.json +0 -6
  512. package/inputs/Input/__stories__/LandlineNumber.js.map +0 -7
  513. package/inputs/Input/__stories__/MobilePhone/index.js +0 -34
  514. package/inputs/Input/__stories__/MobilePhone/package.json +0 -6
  515. package/inputs/Input/__stories__/MobilePhone.js.map +0 -7
  516. package/inputs/Input/__stories__/PhoneNumber/index.js +0 -33
  517. package/inputs/Input/__stories__/PhoneNumber/package.json +0 -6
  518. package/inputs/Input/__stories__/PhoneNumber.js.map +0 -7
  519. package/inputs/Input/__stories__/PostalCode/index.js +0 -31
  520. package/inputs/Input/__stories__/PostalCode/package.json +0 -6
  521. package/inputs/Input/__stories__/PostalCode.js.map +0 -7
  522. package/inputs/Input/__stories__/String/index.js +0 -31
  523. package/inputs/Input/__stories__/String/package.json +0 -6
  524. package/inputs/Input/__stories__/String.js.map +0 -7
  525. package/inputs/Input/__stories__/TextWithLimit/index.js +0 -31
  526. package/inputs/Input/__stories__/TextWithLimit/package.json +0 -6
  527. package/inputs/Input/__stories__/TextWithLimit.js.map +0 -7
  528. package/inputs/Label/Label.stories/index.js +0 -12
  529. package/inputs/Label/Label.stories/package.json +0 -6
  530. package/inputs/Label/Label.stories.js.map +0 -7
  531. package/inputs/Label/__stories__/Default/index.js +0 -39
  532. package/inputs/Label/__stories__/Default/package.json +0 -6
  533. package/inputs/Label/__stories__/Default.js.map +0 -7
  534. package/inputs/OtpInput/OtpInput.stories/index.js +0 -12
  535. package/inputs/OtpInput/OtpInput.stories/package.json +0 -6
  536. package/inputs/OtpInput/OtpInput.stories.js.map +0 -7
  537. package/inputs/OtpInput/__stories__/Default/index.js +0 -31
  538. package/inputs/OtpInput/__stories__/Default/package.json +0 -6
  539. package/inputs/OtpInput/__stories__/Default.js.map +0 -7
  540. package/inputs/Radio/Radio.stories/index.js +0 -16
  541. package/inputs/Radio/Radio.stories/package.json +0 -6
  542. package/inputs/Radio/Radio.stories.js.map +0 -7
  543. package/inputs/Radio/__stories__/Conditional/index.js +0 -100
  544. package/inputs/Radio/__stories__/Conditional/package.json +0 -6
  545. package/inputs/Radio/__stories__/Conditional.js.map +0 -7
  546. package/inputs/Radio/__stories__/Default/index.js +0 -48
  547. package/inputs/Radio/__stories__/Default/package.json +0 -6
  548. package/inputs/Radio/__stories__/Default.js.map +0 -7
  549. package/inputs/Radio/__stories__/WithDivider/index.js +0 -49
  550. package/inputs/Radio/__stories__/WithDivider/package.json +0 -6
  551. package/inputs/Radio/__stories__/WithDivider.js.map +0 -7
  552. package/inputs/Select/Select.stories/index.js +0 -12
  553. package/inputs/Select/Select.stories/package.json +0 -6
  554. package/inputs/Select/Select.stories.js.map +0 -7
  555. package/inputs/Select/__stories__/Default/index.js +0 -53
  556. package/inputs/Select/__stories__/Default/package.json +0 -6
  557. package/inputs/Select/__stories__/Default.js.map +0 -7
  558. package/lazy.d.ts +0 -81
  559. package/lazy.js.map +0 -7
  560. package/registry.d.ts +0 -71
  561. package/registry.js.map +0 -7
  562. package/src/inputs/ImageInput/__stories__/WithInvalidImageSize.tsx +0 -36
package/src/registry.js CHANGED
@@ -1,74 +1,78 @@
1
1
 
2
- import * as _digigov_form_Field_FieldBase from '@digigov/form/Field/FieldBase';
3
- import * as _digigov_form_Field_FieldBaseContainer from '@digigov/form/Field/FieldBaseContainer';
4
- import * as _digigov_form_Field_FieldConditional from '@digigov/form/Field/FieldConditional';
5
- import * as _digigov_form_Field from '@digigov/form/Field';
6
- import * as _digigov_form_Field_types from '@digigov/form/Field/types';
7
- import * as _digigov_form_Field_utils_calculateField from '@digigov/form/Field/utils/calculateField';
8
- import * as _digigov_form_Field_utils_evaluateFieldWithConditions from '@digigov/form/Field/utils/evaluateFieldWithConditions';
9
- import * as _digigov_form_Field_utils from '@digigov/form/Field/utils';
10
- import * as _digigov_form_Field_utils_useField from '@digigov/form/Field/utils/useField';
11
- import * as _digigov_form_FieldArray from '@digigov/form/FieldArray';
12
- import * as _digigov_form_FieldObject from '@digigov/form/FieldObject';
13
- import * as _digigov_form_Fieldset_FieldsetWithContext from '@digigov/form/Fieldset/FieldsetWithContext';
14
- import * as _digigov_form_Fieldset from '@digigov/form/Fieldset';
15
- import * as _digigov_form_Fieldset_types from '@digigov/form/Fieldset/types';
16
- import * as _digigov_form_FormBuilder from '@digigov/form/FormBuilder';
17
- import * as _digigov_form_FormContext from '@digigov/form/FormContext';
18
- import * as _digigov_form from '@digigov/form';
19
- import * as _digigov_form_inputs_AutoCompleteInput from '@digigov/form/inputs/AutoCompleteInput';
20
- import * as _digigov_form_inputs_Checkboxes from '@digigov/form/inputs/Checkboxes';
21
- import * as _digigov_form_inputs_DateInput from '@digigov/form/inputs/DateInput';
22
- import * as _digigov_form_inputs_FileInput from '@digigov/form/inputs/FileInput';
23
- import * as _digigov_form_inputs_ImageInput from '@digigov/form/inputs/ImageInput';
24
- import * as _digigov_form_inputs from '@digigov/form/inputs';
25
- import * as _digigov_form_inputs_Input from '@digigov/form/inputs/Input';
26
- import * as _digigov_form_inputs_Input_inputsInputScenarios from '@digigov/form/inputs/Input/inputsInputScenarios';
27
- import * as _digigov_form_inputs_inputsScenarios from '@digigov/form/inputs/inputsScenarios';
28
- import * as _digigov_form_inputs_Label from '@digigov/form/inputs/Label';
29
- import * as _digigov_form_inputs_OtpInput from '@digigov/form/inputs/OtpInput';
30
- import * as _digigov_form_inputs_Radio from '@digigov/form/inputs/Radio';
31
- import * as _digigov_form_inputs_Select from '@digigov/form/inputs/Select';
32
- import * as _digigov_form_internal from '@digigov/form/internal';
33
- import * as _digigov_form_locales_el from '@digigov/form/locales/el';
34
- import * as _digigov_form_MultiplicityField_add_objects from '@digigov/form/MultiplicityField/add-objects';
35
- import * as _digigov_form_MultiplicityField from '@digigov/form/MultiplicityField';
36
- import * as _digigov_form_MultiplicityField_types from '@digigov/form/MultiplicityField/types';
37
- import * as _digigov_form_Questions_getNextStep from '@digigov/form/Questions/getNextStep';
38
- import * as _digigov_form_Questions from '@digigov/form/Questions';
39
- import * as _digigov_form_Questions_Questions from '@digigov/form/Questions/Questions';
40
- import * as _digigov_form_Questions_QuestionsContext from '@digigov/form/Questions/QuestionsContext';
41
- import * as _digigov_form_Questions_Step_getAddMoreFields from '@digigov/form/Questions/Step/getAddMoreFields';
42
- import * as _digigov_form_Questions_Step from '@digigov/form/Questions/Step';
43
- import * as _digigov_form_Questions_Step_ReviewStep from '@digigov/form/Questions/Step/ReviewStep';
44
- import * as _digigov_form_Questions_Step_Step from '@digigov/form/Questions/Step/Step';
45
- import * as _digigov_form_Questions_Step_StepArrayReview from '@digigov/form/Questions/Step/StepArrayReview';
46
- import * as _digigov_form_Questions_Step_StepContext from '@digigov/form/Questions/Step/StepContext';
47
- import * as _digigov_form_Questions_Step_StepDescription from '@digigov/form/Questions/Step/StepDescription';
48
- import * as _digigov_form_Questions_Step_StepForm from '@digigov/form/Questions/Step/StepForm';
49
- import * as _digigov_form_Questions_Step_StepQuote from '@digigov/form/Questions/Step/StepQuote';
50
- import * as _digigov_form_Questions_Step_StepTitle from '@digigov/form/Questions/Step/StepTitle';
51
- import * as _digigov_form_Questions_Step_types from '@digigov/form/Questions/Step/types';
52
- import * as _digigov_form_Questions_types from '@digigov/form/Questions/types';
53
- import * as _digigov_form_types from '@digigov/form/types';
54
- import * as _digigov_form_utils from '@digigov/form/utils';
55
- import * as _digigov_form_validators from '@digigov/form/validators';
56
- import * as _digigov_form_validators_types from '@digigov/form/validators/types';
57
- import * as _digigov_form_validators_utils_afm from '@digigov/form/validators/utils/afm';
58
- import * as _digigov_form_validators_utils_date from '@digigov/form/validators/utils/date';
59
- import * as _digigov_form_validators_utils_file from '@digigov/form/validators/utils/file';
60
- import * as _digigov_form_validators_utils_iban from '@digigov/form/validators/utils/iban';
61
- import * as _digigov_form_validators_utils_image from '@digigov/form/validators/utils/image';
62
- import * as _digigov_form_validators_utils from '@digigov/form/validators/utils';
63
- import * as _digigov_form_validators_utils_int from '@digigov/form/validators/utils/int';
64
- import * as _digigov_form_validators_utils_number from '@digigov/form/validators/utils/number';
65
- import * as _digigov_form_validators_utils_otp from '@digigov/form/validators/utils/otp';
66
- import * as _digigov_form_validators_utils_phone from '@digigov/form/validators/utils/phone';
67
- import * as _digigov_form_validators_utils_postal_code from '@digigov/form/validators/utils/postal_code';
68
- import * as _digigov_form_validators_utils_text_limit from '@digigov/form/validators/utils/text_limit';
69
- import * as _digigov_form_validators_utils_uuid4 from '@digigov/form/validators/utils/uuid4'
2
+ import * as _digigov_form_FormContext from "@digigov/form/FormContext";
3
+ import * as _digigov_form from "@digigov/form";
4
+ import * as _digigov_form_internal from "@digigov/form/internal";
5
+ import * as _digigov_form_types from "@digigov/form/types";
6
+ import * as _digigov_form_utils from "@digigov/form/utils";
7
+ import * as _digigov_form_Field_ErrorGroup from "@digigov/form/Field/ErrorGroup";
8
+ import * as _digigov_form_Field_FieldBase from "@digigov/form/Field/FieldBase";
9
+ import * as _digigov_form_Field_FieldBaseContainer from "@digigov/form/Field/FieldBaseContainer";
10
+ import * as _digigov_form_Field_FieldConditional from "@digigov/form/Field/FieldConditional";
11
+ import * as _digigov_form_Field from "@digigov/form/Field";
12
+ import * as _digigov_form_Field_types from "@digigov/form/Field/types";
13
+ import * as _digigov_form_FieldArray_FormDialog from "@digigov/form/FieldArray/FormDialog";
14
+ import * as _digigov_form_FieldArray from "@digigov/form/FieldArray";
15
+ import * as _digigov_form_FieldObject from "@digigov/form/FieldObject";
16
+ import * as _digigov_form_Fieldset_FieldsetWithContext from "@digigov/form/Fieldset/FieldsetWithContext";
17
+ import * as _digigov_form_Fieldset from "@digigov/form/Fieldset";
18
+ import * as _digigov_form_Fieldset_types from "@digigov/form/Fieldset/types";
19
+ import * as _digigov_form_FormBuilder from "@digigov/form/FormBuilder";
20
+ import * as _digigov_form_MultiplicityField_add_objects from "@digigov/form/MultiplicityField/add-objects";
21
+ import * as _digigov_form_MultiplicityField from "@digigov/form/MultiplicityField";
22
+ import * as _digigov_form_MultiplicityField_types from "@digigov/form/MultiplicityField/types";
23
+ import * as _digigov_form_Questions_Questions from "@digigov/form/Questions/Questions";
24
+ import * as _digigov_form_Questions_QuestionsContext from "@digigov/form/Questions/QuestionsContext";
25
+ import * as _digigov_form_Questions_getNextStep from "@digigov/form/Questions/getNextStep";
26
+ import * as _digigov_form_Questions from "@digigov/form/Questions";
27
+ import * as _digigov_form_Questions_types from "@digigov/form/Questions/types";
28
+ import * as _digigov_form_inputs from "@digigov/form/inputs";
29
+ import * as _digigov_form_inputs_inputsScenarios from "@digigov/form/inputs/inputsScenarios";
30
+ import * as _digigov_form_locales_el from "@digigov/form/locales/el";
31
+ import * as _digigov_form_validators from "@digigov/form/validators";
32
+ import * as _digigov_form_validators_types from "@digigov/form/validators/types";
33
+ import * as _digigov_form_Field_utils_calculateField from "@digigov/form/Field/utils/calculateField";
34
+ import * as _digigov_form_Field_utils_evaluateFieldWithConditions from "@digigov/form/Field/utils/evaluateFieldWithConditions";
35
+ import * as _digigov_form_Field_utils from "@digigov/form/Field/utils";
36
+ import * as _digigov_form_Field_utils_useField from "@digigov/form/Field/utils/useField";
37
+ import * as _digigov_form_Questions_Step_ReviewStep from "@digigov/form/Questions/Step/ReviewStep";
38
+ import * as _digigov_form_Questions_Step_Step from "@digigov/form/Questions/Step/Step";
39
+ import * as _digigov_form_Questions_Step_StepArrayReview from "@digigov/form/Questions/Step/StepArrayReview";
40
+ import * as _digigov_form_Questions_Step_StepContext from "@digigov/form/Questions/Step/StepContext";
41
+ import * as _digigov_form_Questions_Step_StepDescription from "@digigov/form/Questions/Step/StepDescription";
42
+ import * as _digigov_form_Questions_Step_StepForm from "@digigov/form/Questions/Step/StepForm";
43
+ import * as _digigov_form_Questions_Step_StepQuote from "@digigov/form/Questions/Step/StepQuote";
44
+ import * as _digigov_form_Questions_Step_StepTitle from "@digigov/form/Questions/Step/StepTitle";
45
+ import * as _digigov_form_Questions_Step_getAddMoreFields from "@digigov/form/Questions/Step/getAddMoreFields";
46
+ import * as _digigov_form_Questions_Step from "@digigov/form/Questions/Step";
47
+ import * as _digigov_form_Questions_Step_types from "@digigov/form/Questions/Step/types";
48
+ import * as _digigov_form_inputs_AutoCompleteInput from "@digigov/form/inputs/AutoCompleteInput";
49
+ import * as _digigov_form_inputs_Checkboxes from "@digigov/form/inputs/Checkboxes";
50
+ import * as _digigov_form_inputs_DateInput from "@digigov/form/inputs/DateInput";
51
+ import * as _digigov_form_inputs_DateTimeInput from "@digigov/form/inputs/DateTimeInput";
52
+ import * as _digigov_form_inputs_FileInput from "@digigov/form/inputs/FileInput";
53
+ import * as _digigov_form_inputs_ImageInput from "@digigov/form/inputs/ImageInput";
54
+ import * as _digigov_form_inputs_Input from "@digigov/form/inputs/Input";
55
+ import * as _digigov_form_inputs_Input_inputsInputScenarios from "@digigov/form/inputs/Input/inputsInputScenarios";
56
+ import * as _digigov_form_inputs_Label from "@digigov/form/inputs/Label";
57
+ import * as _digigov_form_inputs_OtpInput from "@digigov/form/inputs/OtpInput";
58
+ import * as _digigov_form_inputs_Radio from "@digigov/form/inputs/Radio";
59
+ import * as _digigov_form_inputs_Select from "@digigov/form/inputs/Select";
60
+ import * as _digigov_form_validators_utils_afm from "@digigov/form/validators/utils/afm";
61
+ import * as _digigov_form_validators_utils_amka from "@digigov/form/validators/utils/amka";
62
+ import * as _digigov_form_validators_utils_date from "@digigov/form/validators/utils/date";
63
+ import * as _digigov_form_validators_utils_datetime from "@digigov/form/validators/utils/datetime";
64
+ import * as _digigov_form_validators_utils_file from "@digigov/form/validators/utils/file";
65
+ import * as _digigov_form_validators_utils_iban from "@digigov/form/validators/utils/iban";
66
+ import * as _digigov_form_validators_utils_image from "@digigov/form/validators/utils/image";
67
+ import * as _digigov_form_validators_utils from "@digigov/form/validators/utils";
68
+ import * as _digigov_form_validators_utils_int from "@digigov/form/validators/utils/int";
69
+ import * as _digigov_form_validators_utils_number from "@digigov/form/validators/utils/number";
70
+ import * as _digigov_form_validators_utils_otp from "@digigov/form/validators/utils/otp";
71
+ import * as _digigov_form_validators_utils_phone from "@digigov/form/validators/utils/phone";
72
+ import * as _digigov_form_validators_utils_postal_code from "@digigov/form/validators/utils/postal_code";
73
+ import * as _digigov_form_validators_utils_text_limit from "@digigov/form/validators/utils/text_limit";
74
+ import * as _digigov_form_validators_utils_uuid4 from "@digigov/form/validators/utils/uuid4";
70
75
  function lazyImport(pkgImport) {
71
- // eslint-disable-next-line no-undef
72
76
  return new Proxy(
73
77
  {},
74
78
  {
@@ -87,47 +91,41 @@ function lazyImport(pkgImport) {
87
91
  )
88
92
  }
89
93
  export default {
94
+ '@digigov/form/FormContext': lazyImport(_digigov_form_FormContext),
95
+ '@digigov/form': lazyImport(_digigov_form),
96
+ '@digigov/form/internal': lazyImport(_digigov_form_internal),
97
+ '@digigov/form/types': lazyImport(_digigov_form_types),
98
+ '@digigov/form/utils': lazyImport(_digigov_form_utils),
99
+ '@digigov/form/Field/ErrorGroup': lazyImport(_digigov_form_Field_ErrorGroup),
90
100
  '@digigov/form/Field/FieldBase': lazyImport(_digigov_form_Field_FieldBase),
91
101
  '@digigov/form/Field/FieldBaseContainer': lazyImport(_digigov_form_Field_FieldBaseContainer),
92
102
  '@digigov/form/Field/FieldConditional': lazyImport(_digigov_form_Field_FieldConditional),
93
103
  '@digigov/form/Field': lazyImport(_digigov_form_Field),
94
104
  '@digigov/form/Field/types': lazyImport(_digigov_form_Field_types),
95
- '@digigov/form/Field/utils/calculateField': lazyImport(_digigov_form_Field_utils_calculateField),
96
- '@digigov/form/Field/utils/evaluateFieldWithConditions': lazyImport(_digigov_form_Field_utils_evaluateFieldWithConditions),
97
- '@digigov/form/Field/utils': lazyImport(_digigov_form_Field_utils),
98
- '@digigov/form/Field/utils/useField': lazyImport(_digigov_form_Field_utils_useField),
105
+ '@digigov/form/FieldArray/FormDialog': lazyImport(_digigov_form_FieldArray_FormDialog),
99
106
  '@digigov/form/FieldArray': lazyImport(_digigov_form_FieldArray),
100
107
  '@digigov/form/FieldObject': lazyImport(_digigov_form_FieldObject),
101
108
  '@digigov/form/Fieldset/FieldsetWithContext': lazyImport(_digigov_form_Fieldset_FieldsetWithContext),
102
109
  '@digigov/form/Fieldset': lazyImport(_digigov_form_Fieldset),
103
110
  '@digigov/form/Fieldset/types': lazyImport(_digigov_form_Fieldset_types),
104
111
  '@digigov/form/FormBuilder': lazyImport(_digigov_form_FormBuilder),
105
- '@digigov/form/FormContext': lazyImport(_digigov_form_FormContext),
106
- '@digigov/form': lazyImport(_digigov_form),
107
- '@digigov/form/inputs/AutoCompleteInput': lazyImport(_digigov_form_inputs_AutoCompleteInput),
108
- '@digigov/form/inputs/Checkboxes': lazyImport(_digigov_form_inputs_Checkboxes),
109
- '@digigov/form/inputs/DateInput': lazyImport(_digigov_form_inputs_DateInput),
110
- '@digigov/form/inputs/FileInput': lazyImport(_digigov_form_inputs_FileInput),
111
- '@digigov/form/inputs/ImageInput': lazyImport(_digigov_form_inputs_ImageInput),
112
- '@digigov/form/inputs': lazyImport(_digigov_form_inputs),
113
- '@digigov/form/inputs/Input': lazyImport(_digigov_form_inputs_Input),
114
- '@digigov/form/inputs/Input/inputsInputScenarios': lazyImport(_digigov_form_inputs_Input_inputsInputScenarios),
115
- '@digigov/form/inputs/inputsScenarios': lazyImport(_digigov_form_inputs_inputsScenarios),
116
- '@digigov/form/inputs/Label': lazyImport(_digigov_form_inputs_Label),
117
- '@digigov/form/inputs/OtpInput': lazyImport(_digigov_form_inputs_OtpInput),
118
- '@digigov/form/inputs/Radio': lazyImport(_digigov_form_inputs_Radio),
119
- '@digigov/form/inputs/Select': lazyImport(_digigov_form_inputs_Select),
120
- '@digigov/form/internal': lazyImport(_digigov_form_internal),
121
- '@digigov/form/locales/el': lazyImport(_digigov_form_locales_el),
122
112
  '@digigov/form/MultiplicityField/add-objects': lazyImport(_digigov_form_MultiplicityField_add_objects),
123
113
  '@digigov/form/MultiplicityField': lazyImport(_digigov_form_MultiplicityField),
124
114
  '@digigov/form/MultiplicityField/types': lazyImport(_digigov_form_MultiplicityField_types),
125
- '@digigov/form/Questions/getNextStep': lazyImport(_digigov_form_Questions_getNextStep),
126
- '@digigov/form/Questions': lazyImport(_digigov_form_Questions),
127
115
  '@digigov/form/Questions/Questions': lazyImport(_digigov_form_Questions_Questions),
128
116
  '@digigov/form/Questions/QuestionsContext': lazyImport(_digigov_form_Questions_QuestionsContext),
129
- '@digigov/form/Questions/Step/getAddMoreFields': lazyImport(_digigov_form_Questions_Step_getAddMoreFields),
130
- '@digigov/form/Questions/Step': lazyImport(_digigov_form_Questions_Step),
117
+ '@digigov/form/Questions/getNextStep': lazyImport(_digigov_form_Questions_getNextStep),
118
+ '@digigov/form/Questions': lazyImport(_digigov_form_Questions),
119
+ '@digigov/form/Questions/types': lazyImport(_digigov_form_Questions_types),
120
+ '@digigov/form/inputs': lazyImport(_digigov_form_inputs),
121
+ '@digigov/form/inputs/inputsScenarios': lazyImport(_digigov_form_inputs_inputsScenarios),
122
+ '@digigov/form/locales/el': lazyImport(_digigov_form_locales_el),
123
+ '@digigov/form/validators': lazyImport(_digigov_form_validators),
124
+ '@digigov/form/validators/types': lazyImport(_digigov_form_validators_types),
125
+ '@digigov/form/Field/utils/calculateField': lazyImport(_digigov_form_Field_utils_calculateField),
126
+ '@digigov/form/Field/utils/evaluateFieldWithConditions': lazyImport(_digigov_form_Field_utils_evaluateFieldWithConditions),
127
+ '@digigov/form/Field/utils': lazyImport(_digigov_form_Field_utils),
128
+ '@digigov/form/Field/utils/useField': lazyImport(_digigov_form_Field_utils_useField),
131
129
  '@digigov/form/Questions/Step/ReviewStep': lazyImport(_digigov_form_Questions_Step_ReviewStep),
132
130
  '@digigov/form/Questions/Step/Step': lazyImport(_digigov_form_Questions_Step_Step),
133
131
  '@digigov/form/Questions/Step/StepArrayReview': lazyImport(_digigov_form_Questions_Step_StepArrayReview),
@@ -136,14 +134,25 @@ export default {
136
134
  '@digigov/form/Questions/Step/StepForm': lazyImport(_digigov_form_Questions_Step_StepForm),
137
135
  '@digigov/form/Questions/Step/StepQuote': lazyImport(_digigov_form_Questions_Step_StepQuote),
138
136
  '@digigov/form/Questions/Step/StepTitle': lazyImport(_digigov_form_Questions_Step_StepTitle),
137
+ '@digigov/form/Questions/Step/getAddMoreFields': lazyImport(_digigov_form_Questions_Step_getAddMoreFields),
138
+ '@digigov/form/Questions/Step': lazyImport(_digigov_form_Questions_Step),
139
139
  '@digigov/form/Questions/Step/types': lazyImport(_digigov_form_Questions_Step_types),
140
- '@digigov/form/Questions/types': lazyImport(_digigov_form_Questions_types),
141
- '@digigov/form/types': lazyImport(_digigov_form_types),
142
- '@digigov/form/utils': lazyImport(_digigov_form_utils),
143
- '@digigov/form/validators': lazyImport(_digigov_form_validators),
144
- '@digigov/form/validators/types': lazyImport(_digigov_form_validators_types),
140
+ '@digigov/form/inputs/AutoCompleteInput': lazyImport(_digigov_form_inputs_AutoCompleteInput),
141
+ '@digigov/form/inputs/Checkboxes': lazyImport(_digigov_form_inputs_Checkboxes),
142
+ '@digigov/form/inputs/DateInput': lazyImport(_digigov_form_inputs_DateInput),
143
+ '@digigov/form/inputs/DateTimeInput': lazyImport(_digigov_form_inputs_DateTimeInput),
144
+ '@digigov/form/inputs/FileInput': lazyImport(_digigov_form_inputs_FileInput),
145
+ '@digigov/form/inputs/ImageInput': lazyImport(_digigov_form_inputs_ImageInput),
146
+ '@digigov/form/inputs/Input': lazyImport(_digigov_form_inputs_Input),
147
+ '@digigov/form/inputs/Input/inputsInputScenarios': lazyImport(_digigov_form_inputs_Input_inputsInputScenarios),
148
+ '@digigov/form/inputs/Label': lazyImport(_digigov_form_inputs_Label),
149
+ '@digigov/form/inputs/OtpInput': lazyImport(_digigov_form_inputs_OtpInput),
150
+ '@digigov/form/inputs/Radio': lazyImport(_digigov_form_inputs_Radio),
151
+ '@digigov/form/inputs/Select': lazyImport(_digigov_form_inputs_Select),
145
152
  '@digigov/form/validators/utils/afm': lazyImport(_digigov_form_validators_utils_afm),
153
+ '@digigov/form/validators/utils/amka': lazyImport(_digigov_form_validators_utils_amka),
146
154
  '@digigov/form/validators/utils/date': lazyImport(_digigov_form_validators_utils_date),
155
+ '@digigov/form/validators/utils/datetime': lazyImport(_digigov_form_validators_utils_datetime),
147
156
  '@digigov/form/validators/utils/file': lazyImport(_digigov_form_validators_utils_file),
148
157
  '@digigov/form/validators/utils/iban': lazyImport(_digigov_form_validators_utils_iban),
149
158
  '@digigov/form/validators/utils/image': lazyImport(_digigov_form_validators_utils_image),
@@ -156,4 +165,3 @@ export default {
156
165
  '@digigov/form/validators/utils/text_limit': lazyImport(_digigov_form_validators_utils_text_limit),
157
166
  '@digigov/form/validators/utils/uuid4': lazyImport(_digigov_form_validators_utils_uuid4)
158
167
  };
159
-
package/src/types.tsx CHANGED
@@ -1,4 +1,4 @@
1
- import { UseFormReturn, UseFormProps } from 'react-hook-form';
1
+ import { UseFormReturn, UseFormProps, ErrorOption } from 'react-hook-form';
2
2
  import {
3
3
  FieldComponentRegistry,
4
4
  FieldLabelProps,
@@ -7,9 +7,9 @@ import {
7
7
  } from '@digigov/form/Field/types';
8
8
  import { ValidatorSchema } from '@digigov/form/validators/types';
9
9
  export * from '@digigov/form/Field/types';
10
- export type FieldError = {
10
+ export interface FieldError {
11
11
  message: string;
12
- };
12
+ }
13
13
 
14
14
  export interface FieldsetSpec {
15
15
  key: string;
@@ -54,6 +54,7 @@ export interface FormBuilderProps {
54
54
  componentRegistry?: FieldComponentRegistry;
55
55
  grid?: boolean;
56
56
  controlledFieldsOnly?: boolean;
57
+ errors?: ErrorOption;
57
58
  }
58
59
 
59
60
  export interface FormBaseProps
package/src/utils.ts CHANGED
@@ -13,6 +13,7 @@ const parseErrorSchema = (
13
13
  return (error.inner || []).reduce<Record<string, FieldError>>(
14
14
  (previous, error) => {
15
15
  error.path = error.path?.replace(/\[([0-9]+)\]/g, '.$1');
16
+ // error.path = error.path?.replace(/\["(.*?)"\]/g, '$1');
16
17
  if (!previous[error.path!]) {
17
18
  previous[error.path!] = { message: error.message, type: error.type! };
18
19
  }
@@ -37,13 +38,32 @@ const parseErrorSchema = (
37
38
  {}
38
39
  );
39
40
  };
41
+ function isPlainObject(obj) {
42
+ return (
43
+ typeof obj === 'object' &&
44
+ obj !== null &&
45
+ Object.prototype.toString.call(obj) === '[object Object]'
46
+ );
47
+ }
48
+ function flattenObject(obj, prefix = '') {
49
+ return Object.keys(obj).reduce((acc, key) => {
50
+ const prefixedKey = prefix ? `${prefix}.${key}` : key;
51
+
52
+ if (isPlainObject(obj[key])) {
53
+ Object.assign(acc, flattenObject(obj[key], prefixedKey));
54
+ } else {
55
+ acc[prefixedKey] = obj[key];
56
+ }
57
+
58
+ return acc;
59
+ }, {});
60
+ }
40
61
 
41
62
  export const yupResolver =
42
63
  (schema: any, schemaOptions: any = {}, resolverOptions: any = {}) =>
43
64
  async (values, context, options) => {
44
65
  try {
45
66
  if (schemaOptions.context && process.env.NODE_ENV === 'development') {
46
- // eslint-disable-next-line no-console
47
67
  console.warn(
48
68
  "You should not used the yup options context. Please, use the 'useForm' context object instead"
49
69
  );
@@ -52,11 +72,12 @@ export const yupResolver =
52
72
  const result = await schema[
53
73
  resolverOptions.mode === 'sync' ? 'validateSync' : 'validate'
54
74
  ](
55
- values,
75
+ flattenObject(values),
56
76
  Object.assign({ abortEarly: false }, schemaOptions, { context })
57
77
  );
58
78
 
59
- options.shouldUseNativeValidation && validateFieldsNatively({}, options);
79
+ if (options.shouldUseNativeValidation)
80
+ validateFieldsNatively({}, options);
60
81
 
61
82
  return {
62
83
  values: resolverOptions.rawValues ? values : result,
@@ -67,13 +88,13 @@ export const yupResolver =
67
88
  throw e;
68
89
  }
69
90
 
70
- const parsed = parseErrorSchema(
71
- e,
72
- !options.shouldUseNativeValidation && options.criteriaMode === 'all'
73
- );
74
91
  return {
75
92
  values: {},
76
- errors: parsed,
93
+ errors: parseErrorSchema(
94
+ e,
95
+ !options.shouldUseNativeValidation && options.criteriaMode === 'all'
96
+ ),
97
+ options,
77
98
  };
78
99
  }
79
100
  };
@@ -11,6 +11,7 @@ import { ValidatorSchema } from '@digigov/form/validators/types';
11
11
  import {
12
12
  getYupObjectShape,
13
13
  AFM_VALIDATOR,
14
+ AMKA_VALIDATOR,
14
15
  FILE_MAX_SIZE_VALIDATOR,
15
16
  IBAN_VALIDATOR,
16
17
  OTP_VALIDATOR,
@@ -23,26 +24,42 @@ import {
23
24
  DATE_VALIDATOR,
24
25
  LATER_THAN_VALIDATOR,
25
26
  EARLIER_THAN_VALIDATOR,
27
+ DATETIME_VALIDATOR,
28
+ LATER_THAN_DATETIME_VALIDATOR,
29
+ EARLIER_THAN_DATETIME_VALIDATOR,
26
30
  } from '@digigov/form/validators/utils';
27
31
  import { INT_VALIDATOR } from '@digigov/form/validators/utils/int';
28
32
  import { NUMBER_VALIDATOR } from '@digigov/form/validators/utils/number';
29
33
 
30
- export const getYUPTypeMap = (): Record<string, any> => {
34
+ export const getYUPTypeMap = (
35
+ validatorRegistry?: Record<string, any>
36
+ ): Record<string, any> => {
31
37
  const yupTypeMap = {
32
38
  file: (field): MixedSchema => {
39
+ return yup.mixed().nullable().test(FILE_MAX_SIZE_VALIDATOR(field));
40
+ },
41
+ string: (field): yup.StringSchema => {
42
+ if (field.trim) {
43
+ return yup.string().trim();
44
+ } else {
45
+ return yup.string();
46
+ }
47
+ },
48
+ boolean: (): yup.BooleanSchema<
49
+ boolean | null | undefined,
50
+ AnyObject,
51
+ boolean | null | undefined
52
+ > => {
33
53
  return yup
34
- .mixed()
54
+ .boolean()
55
+ .nullable()
35
56
  .transform((value) => {
36
- if (!value.length) {
37
- return null;
38
- }
57
+ if (value === '' || typeof value === 'string') return null;
58
+ if (typeof value === 'boolean') return value;
59
+ if (value === 0 || value === 1) return Boolean(value);
39
60
  return value;
40
- })
41
- .nullable()
42
- .test(FILE_MAX_SIZE_VALIDATOR(field));
61
+ });
43
62
  },
44
- string: yup.string,
45
- boolean: yup.boolean,
46
63
  object: (
47
64
  field
48
65
  ):
@@ -58,10 +75,13 @@ export const getYUPTypeMap = (): Record<string, any> => {
58
75
  if (typeof field.extra.of === 'object') {
59
76
  // else if the field is an object then it is a scalar type
60
77
  // eg. number, string etc.
78
+ if (field.required) {
79
+ field.extra.min = 1;
80
+ }
61
81
  let arrayValidator = yup
62
82
  .array()
63
- .of(yupTypeMap[field.extra.of.type](field.extra.of))
64
- .required(field.required);
83
+ .nullable()
84
+ .of(yupTypeMap[field.extra.of.type](field.extra.of));
65
85
  if (field.extra.length)
66
86
  arrayValidator = arrayValidator.length(field.extra.length, {
67
87
  key: 'form.error.array.length',
@@ -94,24 +114,43 @@ export const getYUPTypeMap = (): Record<string, any> => {
94
114
  number: (): MixedSchema =>
95
115
  yup
96
116
  .mixed()
97
- .transform((_, val) => (val !== '' ? Number(val) : null))
117
+ .transform((_, val) => (val !== '' ? Number(val) : undefined))
98
118
  .test(NUMBER_VALIDATOR()),
99
119
  int: (): MixedSchema =>
100
120
  yup
101
121
  .mixed()
102
- .transform((_, val) => (val !== '' ? Number(val) : null))
122
+ .transform((_, val) => (val !== '' ? Number(val) : undefined))
103
123
  .test(NUMBER_VALIDATOR())
104
124
  .test(INT_VALIDATOR()),
105
- email: (): yup.StringSchema => yup.string().email('form.error.email'),
106
- afm: (): yup.StringSchema => yup.string().test(AFM_VALIDATOR),
107
- uuid4: (): yup.StringSchema => yup.string().test(UUID4_VALIDATOR),
108
- iban: (field): yup.StringSchema => yup.string().test(IBAN_VALIDATOR(field)),
109
- otp: (field): yup.StringSchema => yup.string().test(OTP_VALIDATOR(field)),
125
+ email: (field): yup.StringSchema =>
126
+ field.trim
127
+ ? yup.string().trim().email('form.error.email')
128
+ : yup.string().email('form.error.email'),
129
+ afm: (field): yup.StringSchema =>
130
+ field.trim
131
+ ? yup.string().trim().test(AFM_VALIDATOR)
132
+ : yup.string().test(AFM_VALIDATOR),
133
+ amka: (field): yup.StringSchema =>
134
+ field.trim
135
+ ? yup.string().trim().test(AMKA_VALIDATOR)
136
+ : yup.string().test(AMKA_VALIDATOR),
137
+ uuid4: (field): yup.StringSchema =>
138
+ field.trim
139
+ ? yup.string().trim().test(UUID4_VALIDATOR)
140
+ : yup.string().test(UUID4_VALIDATOR),
141
+ iban: (field): yup.StringSchema =>
142
+ field.trim
143
+ ? yup.string().trim().test(IBAN_VALIDATOR(field))
144
+ : yup.string().trim().test(IBAN_VALIDATOR(field)),
145
+ otp: (field): yup.StringSchema =>
146
+ yup.string().trim().test(OTP_VALIDATOR(field)),
110
147
  text: (field): yup.StringSchema => {
111
148
  if (field?.extra?.limit?.max || !!field?.extra?.limit?.min) {
112
- return yup.string().test(TEXT_LIMIT_VALIDATOR(field));
149
+ return field.trim
150
+ ? yup.string().trim().test(TEXT_LIMIT_VALIDATOR(field))
151
+ : yup.string().test(TEXT_LIMIT_VALIDATOR(field));
113
152
  } else {
114
- return yup.string();
153
+ return field.trim ? yup.string().trim() : yup.string();
115
154
  }
116
155
  },
117
156
  image: (field): MixedSchema => {
@@ -128,32 +167,65 @@ export const getYUPTypeMap = (): Record<string, any> => {
128
167
  .test(IMAGE_DIMENSION_VALIDATOR(field));
129
168
  },
130
169
  postal_code: (field): yup.StringSchema =>
131
- yup.string().test(POSTALCODE_VALIDATOR(field)),
132
- mobile_phone: (): yup.StringSchema =>
133
- yup.string().test(MOBILE_PHONE_VALIDATOR),
170
+ field.trim
171
+ ? yup.string().trim().test(POSTALCODE_VALIDATOR(field))
172
+ : yup.string().test(POSTALCODE_VALIDATOR(field)),
173
+ mobile_phone: (field): yup.StringSchema =>
174
+ field.trim
175
+ ? yup.string().trim().test(MOBILE_PHONE_VALIDATOR)
176
+ : yup.string().test(MOBILE_PHONE_VALIDATOR),
134
177
  phone_number: (field): yup.StringSchema =>
135
- yup.string().test(PHONE_NUMBER_VALIDATOR(field)),
136
- 'choice:multiple': (): yup.ArraySchema<
178
+ field.trim
179
+ ? yup.string().trim().test(PHONE_NUMBER_VALIDATOR(field))
180
+ : yup.string().test(PHONE_NUMBER_VALIDATOR(field)),
181
+ 'choice:multiple': (
182
+ field
183
+ ): yup.ArraySchema<
137
184
  yup.StringSchema<string | undefined, AnyObject, string | undefined>,
138
185
  AnyObject,
139
186
  (string | undefined)[] | null | undefined,
140
187
  (string | undefined)[] | null | undefined
141
- > => yup.array().of(yup.string()).nullable(),
188
+ > => {
189
+ if (field.required) {
190
+ return yup.array().of(yup.string()).min(1, {
191
+ key: 'form.error.required',
192
+ });
193
+ }
194
+ return yup.array().of(yup.string()).nullable();
195
+ },
142
196
  'choice:single': (): StringSchema<
143
197
  string | null | undefined,
144
198
  AnyObject,
145
199
  string | null | undefined
146
200
  > => yup.string().nullable(),
147
- date: (field): yup.StringSchema => {
201
+ date: (
202
+ field
203
+ ): yup.StringSchema<
204
+ string | null | undefined,
205
+ AnyObject,
206
+ string | null | undefined
207
+ > => {
208
+ let schema = yup.string().nullable();
148
209
  if (field?.extra?.min) {
149
- return yup.string().test(LATER_THAN_VALIDATOR(field));
210
+ schema = schema.test(LATER_THAN_VALIDATOR(field));
150
211
  }
151
212
  if (field?.extra?.max) {
152
- return yup.string().test(EARLIER_THAN_VALIDATOR(field));
213
+ schema = schema.test(EARLIER_THAN_VALIDATOR(field));
153
214
  } else {
154
- return yup.string().test(DATE_VALIDATOR);
215
+ schema = schema.test(DATE_VALIDATOR);
216
+ }
217
+ return schema;
218
+ },
219
+ datetime: (field): yup.StringSchema => {
220
+ if (field?.extra?.min) {
221
+ return yup.string().test(LATER_THAN_DATETIME_VALIDATOR(field));
222
+ }
223
+ if (field?.extra?.max) {
224
+ return yup.string().test(EARLIER_THAN_DATETIME_VALIDATOR(field));
155
225
  }
226
+ return yup.string().test(DATETIME_VALIDATOR);
156
227
  },
228
+ ...validatorRegistry,
157
229
  };
158
230
  return yupTypeMap;
159
231
  };
@@ -165,7 +237,7 @@ export function useValidationSchema(
165
237
  validatorRegistry?: Record<string, ValidatorSchema[]>
166
238
  ): Lazy<any, unknown> | AnyObjectSchema | void {
167
239
  return useMemo(() => {
168
- const yupTypeMap = getYUPTypeMap();
240
+ const yupTypeMap = getYUPTypeMap(validatorRegistry);
169
241
  return getYupObjectShape(fields, yupTypeMap, validatorRegistry);
170
242
  }, []);
171
243
  }
@@ -0,0 +1,39 @@
1
+ function digitSum(number) {
2
+ const sum = number > 9 ? 1 : 0;
3
+ return sum + (number % 10);
4
+ }
5
+
6
+ export function validateAMKA(amka: string): boolean {
7
+ // Validate that the last digit is the correct check digit (created using the
8
+ // Luhn algorithm https://en.wikipedia.org/wiki/Luhn_algorithm).
9
+ amka = String(amka);
10
+ const checkDigitIndex = amka.length - 1;
11
+ let sum = 0;
12
+ amka
13
+ .substring(0, checkDigitIndex)
14
+ .split('')
15
+ .reverse()
16
+ .forEach(function (value, index) {
17
+ const weight = ((index + 1) % 2) + 1;
18
+ sum += digitSum(parseInt(value, 10) * weight);
19
+ });
20
+ const sumMod10 = sum % 10;
21
+ if (sumMod10 === 0) {
22
+ return amka.substring(checkDigitIndex) === '0';
23
+ } else {
24
+ return amka.substring(checkDigitIndex) === 10 - sumMod10 + '';
25
+ }
26
+ }
27
+
28
+ export const AMKA_VALIDATOR = {
29
+ name: 'amka-validator',
30
+ message: 'form.error.amka',
31
+ test: (value): boolean => {
32
+ if (!value) return true;
33
+ const AMKA_REGEX = /^[0-9]{11}$/;
34
+ if (!AMKA_REGEX.test(value) || value === '00000000000') {
35
+ return false;
36
+ }
37
+ return validateAMKA(value);
38
+ },
39
+ };