@digigov/form 2.0.0-4be8f7cc → 2.0.0-6452adf3

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 (796) hide show
  1. package/Field/FieldBase/index.js +104 -77
  2. package/Field/FieldBase.js.map +7 -0
  3. package/Field/FieldBaseContainer/index.js +29 -37
  4. package/Field/FieldBaseContainer.js.map +7 -0
  5. package/Field/FieldConditional/index.js +79 -53
  6. package/Field/FieldConditional.js.map +7 -0
  7. package/Field/index.js +102 -63
  8. package/Field/index.js.map +7 -0
  9. package/Field/types/index.js +1 -1
  10. package/Field/types.d.ts +39 -3
  11. package/Field/types.js.map +7 -0
  12. package/Field/utils/calculateField/index.js +27 -0
  13. package/{inputs/Input/__stories__/Default → Field/utils/calculateField}/package.json +1 -1
  14. package/Field/utils/calculateField.d.ts +2 -0
  15. package/Field/utils/calculateField.js.map +7 -0
  16. package/Field/utils/evaluateFieldWithConditions/index.js +26 -0
  17. package/Field/utils/evaluateFieldWithConditions/package.json +6 -0
  18. package/Field/utils/evaluateFieldWithConditions.d.ts +2 -0
  19. package/Field/utils/evaluateFieldWithConditions.js.map +7 -0
  20. package/Field/utils/index.d.ts +4 -0
  21. package/Field/utils/index.js +40 -115
  22. package/Field/utils/index.js.map +7 -0
  23. package/Field/utils/useField/index.js +51 -0
  24. package/{FormBuilder/FormBuilder → Field/utils/useField}/package.json +1 -1
  25. package/Field/utils/useField.d.ts +2 -0
  26. package/Field/utils/useField.js.map +7 -0
  27. package/FieldArray/FieldArray.stories/index.js +12 -6
  28. package/FieldArray/FieldArray.stories.d.ts +2 -2
  29. package/FieldArray/FieldArray.stories.js.map +7 -0
  30. package/FieldArray/__stories__/Default/index.js +87 -80
  31. package/FieldArray/__stories__/Default.d.ts +2 -2
  32. package/FieldArray/__stories__/Default.js.map +7 -0
  33. package/FieldArray/__stories__/WithExactLength/index.js +87 -80
  34. package/FieldArray/__stories__/WithExactLength.d.ts +2 -2
  35. package/FieldArray/__stories__/WithExactLength.js.map +7 -0
  36. package/FieldArray/index.d.ts +1 -0
  37. package/FieldArray/index.js +74 -59
  38. package/FieldArray/index.js.map +7 -0
  39. package/FieldArray/index.test.d.ts +1 -0
  40. package/FieldObject/index.d.ts +3 -0
  41. package/FieldObject/index.js +70 -52
  42. package/FieldObject/index.js.map +7 -0
  43. package/Fieldset/FieldsetWithContext/index.js +27 -31
  44. package/Fieldset/FieldsetWithContext.js.map +7 -0
  45. package/Fieldset/index.d.ts +1 -1
  46. package/Fieldset/index.js +27 -29
  47. package/Fieldset/index.js.map +7 -0
  48. package/Fieldset/types/index.js +1 -1
  49. package/Fieldset/types.d.ts +3 -2
  50. package/Fieldset/types.js.map +7 -0
  51. package/Form.stories/index.js +7 -3
  52. package/Form.stories.js.map +7 -0
  53. package/FormBuilder/FormBuilder.stories/index.js +10 -5
  54. package/FormBuilder/FormBuilder.stories.d.ts +1 -1
  55. package/FormBuilder/FormBuilder.stories.js.map +7 -0
  56. package/FormBuilder/__stories__/Default/index.js +27 -21
  57. package/FormBuilder/__stories__/Default.d.ts +2 -2
  58. package/FormBuilder/__stories__/Default.js.map +7 -0
  59. package/FormBuilder/index.d.ts +8 -1
  60. package/FormBuilder/index.js +158 -2
  61. package/FormBuilder/index.js.map +7 -0
  62. package/FormBuilder/index.test.d.ts +1 -0
  63. package/FormBuilder/scenarios.test.d.ts +88 -0
  64. package/FormContext/index.js +7 -3
  65. package/FormContext.js.map +7 -0
  66. package/MultiplicityField/MultiplicityField.stories/index.js +20 -10
  67. package/MultiplicityField/MultiplicityField.stories.d.ts +6 -6
  68. package/MultiplicityField/MultiplicityField.stories.js.map +7 -0
  69. package/MultiplicityField/__stories__/Default/index.js +90 -85
  70. package/MultiplicityField/__stories__/Default.d.ts +2 -2
  71. package/MultiplicityField/__stories__/Default.js.map +7 -0
  72. package/MultiplicityField/__stories__/PreviewDisplay/index.js +70 -72
  73. package/MultiplicityField/__stories__/PreviewDisplay.d.ts +2 -2
  74. package/MultiplicityField/__stories__/PreviewDisplay.js.map +7 -0
  75. package/MultiplicityField/__stories__/WithExactLength/index.js +87 -80
  76. package/MultiplicityField/__stories__/WithExactLength.d.ts +2 -2
  77. package/MultiplicityField/__stories__/WithExactLength.js.map +7 -0
  78. package/MultiplicityField/__stories__/WithMaxLength/index.js +90 -83
  79. package/MultiplicityField/__stories__/WithMaxLength.d.ts +2 -2
  80. package/MultiplicityField/__stories__/WithMaxLength.js.map +7 -0
  81. package/MultiplicityField/__stories__/WithMinAndMaxLength/index.js +91 -84
  82. package/MultiplicityField/__stories__/WithMinAndMaxLength.d.ts +2 -2
  83. package/MultiplicityField/__stories__/WithMinAndMaxLength.js.map +7 -0
  84. package/MultiplicityField/__stories__/WithMinLength/index.js +90 -83
  85. package/MultiplicityField/__stories__/WithMinLength.d.ts +2 -2
  86. package/MultiplicityField/__stories__/WithMinLength.js.map +7 -0
  87. package/MultiplicityField/add-objects/index.js +135 -132
  88. package/MultiplicityField/add-objects.d.ts +2 -1
  89. package/MultiplicityField/add-objects.js.map +7 -0
  90. package/MultiplicityField/index.d.ts +2 -19
  91. package/MultiplicityField/index.js +113 -106
  92. package/MultiplicityField/index.js.map +7 -0
  93. package/MultiplicityField/index.test.d.ts +1 -0
  94. package/MultiplicityField/types/index.js +1 -0
  95. package/{validators/validators.spec → MultiplicityField/types}/package.json +1 -1
  96. package/MultiplicityField/types.d.ts +19 -0
  97. package/MultiplicityField/types.js.map +7 -0
  98. package/Questions/Questions/index.js +44 -53
  99. package/Questions/Questions.js.map +7 -0
  100. package/Questions/Questions.stories/index.js +10 -5
  101. package/Questions/Questions.stories.d.ts +1 -1
  102. package/Questions/Questions.stories.js.map +7 -0
  103. package/Questions/QuestionsContext/index.js +9 -9
  104. package/Questions/QuestionsContext.d.ts +0 -1
  105. package/Questions/QuestionsContext.js.map +7 -0
  106. package/Questions/Step/ReviewStep/index.js +35 -47
  107. package/Questions/Step/ReviewStep.js.map +7 -0
  108. package/Questions/Step/Step/index.js +39 -47
  109. package/Questions/Step/Step.js.map +7 -0
  110. package/Questions/Step/StepArrayReview/index.js +41 -45
  111. package/Questions/Step/StepArrayReview.js.map +7 -0
  112. package/Questions/Step/StepContext/index.js +15 -19
  113. package/Questions/Step/StepContext.d.ts +0 -1
  114. package/Questions/Step/StepContext.js.map +7 -0
  115. package/Questions/Step/StepDescription/index.js +22 -22
  116. package/Questions/Step/StepDescription.js.map +7 -0
  117. package/Questions/Step/StepForm/index.js +33 -43
  118. package/Questions/Step/StepForm.js.map +7 -0
  119. package/Questions/Step/StepQuote/index.js +10 -9
  120. package/Questions/Step/StepQuote.js.map +7 -0
  121. package/Questions/Step/StepTitle/index.js +41 -38
  122. package/Questions/Step/StepTitle.d.ts +2 -1
  123. package/Questions/Step/StepTitle.js.map +7 -0
  124. package/Questions/Step/getAddMoreFields/index.js +28 -20
  125. package/Questions/Step/getAddMoreFields.js.map +7 -0
  126. package/Questions/Step/index.d.ts +0 -1
  127. package/Questions/Step/index.js +16 -13
  128. package/Questions/Step/index.js.map +7 -0
  129. package/Questions/Step/types/index.js +1 -1
  130. package/Questions/Step/types.d.ts +1 -0
  131. package/Questions/Step/types.js.map +7 -0
  132. package/Questions/__stories__/Default/index.js +106 -100
  133. package/Questions/__stories__/Default.d.ts +2 -2
  134. package/Questions/__stories__/Default.js.map +7 -0
  135. package/Questions/getNextStep/index.js +12 -10
  136. package/Questions/getNextStep.js.map +7 -0
  137. package/Questions/index.js +7 -3
  138. package/Questions/index.js.map +7 -0
  139. package/Questions/index.test.d.ts +1 -0
  140. package/Questions/types/index.js +1 -1
  141. package/Questions/types.d.ts +1 -0
  142. package/Questions/types.js.map +7 -0
  143. package/cjs/Field/FieldBase/index.js +136 -83
  144. package/cjs/Field/FieldBase.js.map +7 -0
  145. package/cjs/Field/FieldBaseContainer/index.js +61 -43
  146. package/cjs/Field/FieldBaseContainer.js.map +7 -0
  147. package/cjs/Field/FieldConditional/index.js +111 -59
  148. package/cjs/Field/FieldConditional.js.map +7 -0
  149. package/cjs/Field/index.js +131 -72
  150. package/cjs/Field/index.js.map +7 -0
  151. package/cjs/Field/types/index.js +16 -5
  152. package/cjs/Field/types.js.map +7 -0
  153. package/cjs/Field/utils/calculateField/index.js +50 -0
  154. package/cjs/Field/utils/calculateField.js.map +7 -0
  155. package/cjs/Field/utils/evaluateFieldWithConditions/index.js +49 -0
  156. package/cjs/Field/utils/evaluateFieldWithConditions.js.map +7 -0
  157. package/cjs/Field/utils/index.js +84 -133
  158. package/cjs/Field/utils/index.js.map +7 -0
  159. package/cjs/Field/utils/useField/index.js +74 -0
  160. package/cjs/Field/utils/useField.js.map +7 -0
  161. package/cjs/FieldArray/FieldArray.stories/index.js +46 -36
  162. package/cjs/FieldArray/FieldArray.stories.js.map +7 -0
  163. package/cjs/FieldArray/__stories__/Default/index.js +119 -89
  164. package/cjs/FieldArray/__stories__/Default.js.map +7 -0
  165. package/cjs/FieldArray/__stories__/WithExactLength/index.js +119 -89
  166. package/cjs/FieldArray/__stories__/WithExactLength.js.map +7 -0
  167. package/cjs/FieldArray/index.js +106 -65
  168. package/cjs/FieldArray/index.js.map +7 -0
  169. package/cjs/FieldObject/index.js +99 -61
  170. package/cjs/FieldObject/index.js.map +7 -0
  171. package/cjs/Fieldset/FieldsetWithContext/index.js +54 -40
  172. package/cjs/Fieldset/FieldsetWithContext.js.map +7 -0
  173. package/cjs/Fieldset/index.js +61 -39
  174. package/cjs/Fieldset/index.js.map +7 -0
  175. package/cjs/Fieldset/types/index.js +16 -5
  176. package/cjs/Fieldset/types.js.map +7 -0
  177. package/cjs/Form.stories/index.js +25 -8
  178. package/cjs/Form.stories.js.map +7 -0
  179. package/cjs/FormBuilder/FormBuilder.stories/index.js +43 -24
  180. package/cjs/FormBuilder/FormBuilder.stories.js.map +7 -0
  181. package/cjs/FormBuilder/__stories__/Default/index.js +60 -31
  182. package/cjs/FormBuilder/__stories__/Default.js.map +7 -0
  183. package/cjs/FormBuilder/index.js +194 -8
  184. package/cjs/FormBuilder/index.js.map +7 -0
  185. package/cjs/FormContext/index.js +29 -8
  186. package/cjs/FormContext.js.map +7 -0
  187. package/cjs/MultiplicityField/MultiplicityField.stories/index.js +58 -84
  188. package/cjs/MultiplicityField/MultiplicityField.stories.js.map +7 -0
  189. package/cjs/MultiplicityField/__stories__/Default/index.js +122 -94
  190. package/cjs/MultiplicityField/__stories__/Default.js.map +7 -0
  191. package/cjs/MultiplicityField/__stories__/PreviewDisplay/index.js +85 -81
  192. package/cjs/MultiplicityField/__stories__/PreviewDisplay.js.map +7 -0
  193. package/cjs/MultiplicityField/__stories__/WithExactLength/index.js +119 -89
  194. package/cjs/MultiplicityField/__stories__/WithExactLength.js.map +7 -0
  195. package/cjs/MultiplicityField/__stories__/WithMaxLength/index.js +122 -92
  196. package/cjs/MultiplicityField/__stories__/WithMaxLength.js.map +7 -0
  197. package/cjs/MultiplicityField/__stories__/WithMinAndMaxLength/index.js +123 -93
  198. package/cjs/MultiplicityField/__stories__/WithMinAndMaxLength.js.map +7 -0
  199. package/cjs/MultiplicityField/__stories__/WithMinLength/index.js +122 -92
  200. package/cjs/MultiplicityField/__stories__/WithMinLength.js.map +7 -0
  201. package/cjs/MultiplicityField/add-objects/index.js +162 -138
  202. package/cjs/MultiplicityField/add-objects.js.map +7 -0
  203. package/cjs/MultiplicityField/index.js +141 -115
  204. package/cjs/MultiplicityField/index.js.map +7 -0
  205. package/cjs/MultiplicityField/types/index.js +16 -0
  206. package/cjs/MultiplicityField/types.js.map +7 -0
  207. package/cjs/Questions/Questions/index.js +76 -62
  208. package/cjs/Questions/Questions.js.map +7 -0
  209. package/cjs/Questions/Questions.stories/index.js +43 -24
  210. package/cjs/Questions/Questions.stories.js.map +7 -0
  211. package/cjs/Questions/QuestionsContext/index.js +31 -14
  212. package/cjs/Questions/QuestionsContext.js.map +7 -0
  213. package/cjs/Questions/Step/ReviewStep/index.js +61 -56
  214. package/cjs/Questions/Step/ReviewStep.js.map +7 -0
  215. package/cjs/Questions/Step/Step/index.js +71 -56
  216. package/cjs/Questions/Step/Step.js.map +7 -0
  217. package/cjs/Questions/Step/StepArrayReview/index.js +65 -54
  218. package/cjs/Questions/Step/StepArrayReview.js.map +7 -0
  219. package/cjs/Questions/Step/StepContext/index.js +37 -24
  220. package/cjs/Questions/Step/StepContext.js.map +7 -0
  221. package/cjs/Questions/Step/StepDescription/index.js +55 -31
  222. package/cjs/Questions/Step/StepDescription.js.map +7 -0
  223. package/cjs/Questions/Step/StepForm/index.js +65 -52
  224. package/cjs/Questions/Step/StepForm.js.map +7 -0
  225. package/cjs/Questions/Step/StepQuote/index.js +42 -15
  226. package/cjs/Questions/Step/StepQuote.js.map +7 -0
  227. package/cjs/Questions/Step/StepTitle/index.js +72 -47
  228. package/cjs/Questions/Step/StepTitle.js.map +7 -0
  229. package/cjs/Questions/Step/getAddMoreFields/index.js +50 -25
  230. package/cjs/Questions/Step/getAddMoreFields.js.map +7 -0
  231. package/cjs/Questions/Step/index.js +59 -143
  232. package/cjs/Questions/Step/index.js.map +7 -0
  233. package/cjs/Questions/Step/types/index.js +16 -5
  234. package/cjs/Questions/Step/types.js.map +7 -0
  235. package/cjs/Questions/__stories__/Default/index.js +132 -109
  236. package/cjs/Questions/__stories__/Default.js.map +7 -0
  237. package/cjs/Questions/getNextStep/index.js +33 -14
  238. package/cjs/Questions/getNextStep.js.map +7 -0
  239. package/cjs/Questions/index.js +29 -19
  240. package/cjs/Questions/index.js.map +7 -0
  241. package/cjs/Questions/types/index.js +16 -5
  242. package/cjs/Questions/types.js.map +7 -0
  243. package/cjs/index.js +47 -20
  244. package/cjs/index.js.map +7 -0
  245. package/cjs/inputs/AutoCompleteInput/AutoComplete.stories/index.js +46 -36
  246. package/cjs/inputs/AutoCompleteInput/AutoComplete.stories.js.map +7 -0
  247. package/cjs/inputs/AutoCompleteInput/__stories__/Default/index.js +78 -46
  248. package/cjs/inputs/AutoCompleteInput/__stories__/Default.js.map +7 -0
  249. package/cjs/inputs/AutoCompleteInput/__stories__/Multiple/index.js +78 -47
  250. package/cjs/inputs/AutoCompleteInput/__stories__/Multiple.js.map +7 -0
  251. package/cjs/inputs/AutoCompleteInput/index.js +91 -49
  252. package/cjs/inputs/AutoCompleteInput/index.js.map +7 -0
  253. package/cjs/inputs/Checkboxes/Checkboxes.stories/index.js +49 -48
  254. package/cjs/inputs/Checkboxes/Checkboxes.stories.js.map +7 -0
  255. package/cjs/inputs/Checkboxes/__stories__/Conditional/index.js +120 -90
  256. package/cjs/inputs/Checkboxes/__stories__/Conditional.js.map +7 -0
  257. package/cjs/inputs/Checkboxes/__stories__/Default/index.js +73 -46
  258. package/cjs/inputs/Checkboxes/__stories__/Default.js.map +7 -0
  259. package/cjs/inputs/Checkboxes/__stories__/WithDivider/index.js +74 -47
  260. package/cjs/inputs/Checkboxes/__stories__/WithDivider.js.map +7 -0
  261. package/cjs/inputs/Checkboxes/index.js +100 -96
  262. package/cjs/inputs/Checkboxes/index.js.map +7 -0
  263. package/cjs/inputs/DateInput/DateInput.stories/index.js +43 -24
  264. package/cjs/inputs/DateInput/DateInput.stories.js.map +7 -0
  265. package/cjs/inputs/DateInput/__stories__/Default/index.js +56 -28
  266. package/cjs/inputs/DateInput/__stories__/Default.js.map +7 -0
  267. package/cjs/inputs/DateInput/index.js +121 -109
  268. package/cjs/inputs/DateInput/index.js.map +7 -0
  269. package/cjs/inputs/FileInput/FileInput.stories/index.js +43 -24
  270. package/cjs/inputs/FileInput/FileInput.stories.js.map +7 -0
  271. package/cjs/inputs/FileInput/__stories__/Default/index.js +57 -26
  272. package/cjs/inputs/FileInput/__stories__/Default.js.map +7 -0
  273. package/cjs/inputs/FileInput/index.js +75 -63
  274. package/cjs/inputs/FileInput/index.js.map +7 -0
  275. package/cjs/inputs/ImageInput/ImageInput.stories/index.js +49 -48
  276. package/cjs/inputs/ImageInput/ImageInput.stories.js.map +7 -0
  277. package/cjs/inputs/ImageInput/__stories__/Default/index.js +58 -33
  278. package/cjs/inputs/ImageInput/__stories__/Default.js.map +7 -0
  279. package/cjs/inputs/ImageInput/__stories__/MaxSize/index.js +69 -0
  280. package/cjs/inputs/ImageInput/__stories__/MaxSize.js.map +7 -0
  281. package/cjs/inputs/ImageInput/__stories__/WithInvalidImageDimension/index.js +66 -40
  282. package/cjs/inputs/ImageInput/__stories__/WithInvalidImageDimension.js.map +7 -0
  283. package/cjs/inputs/ImageInput/__stories__/WithInvalidImageSize/index.js +62 -37
  284. package/cjs/inputs/ImageInput/__stories__/WithInvalidImageSize.js.map +7 -0
  285. package/cjs/inputs/ImageInput/index.js +90 -83
  286. package/cjs/inputs/ImageInput/index.js.map +7 -0
  287. package/cjs/inputs/Input/Input.stories/index.js +70 -132
  288. package/cjs/inputs/Input/Input.stories.js.map +7 -0
  289. package/cjs/inputs/Input/__stories__/AFM/index.js +60 -29
  290. package/cjs/inputs/Input/__stories__/AFM.js.map +7 -0
  291. package/cjs/inputs/Input/__stories__/Boolean/index.js +61 -30
  292. package/cjs/inputs/Input/__stories__/Boolean.js.map +7 -0
  293. package/cjs/inputs/Input/__stories__/IBAN/index.js +61 -30
  294. package/cjs/inputs/Input/__stories__/IBAN.js.map +7 -0
  295. package/cjs/inputs/Input/__stories__/Integer/index.js +75 -38
  296. package/cjs/inputs/Input/__stories__/Integer.js.map +7 -0
  297. package/cjs/inputs/Input/__stories__/LandlineNumber/index.js +64 -33
  298. package/cjs/inputs/Input/__stories__/LandlineNumber.js.map +7 -0
  299. package/cjs/inputs/Input/__stories__/MobilePhone/index.js +64 -33
  300. package/cjs/inputs/Input/__stories__/MobilePhone.js.map +7 -0
  301. package/cjs/inputs/Input/__stories__/PhoneNumber/index.js +63 -32
  302. package/cjs/inputs/Input/__stories__/PhoneNumber.js.map +7 -0
  303. package/cjs/inputs/Input/__stories__/PostalCode/index.js +60 -31
  304. package/cjs/inputs/Input/__stories__/PostalCode.js.map +7 -0
  305. package/cjs/inputs/Input/__stories__/String/index.js +64 -0
  306. package/cjs/inputs/Input/__stories__/String.js.map +7 -0
  307. package/cjs/inputs/Input/__stories__/TextWithLimit/index.js +64 -0
  308. package/cjs/inputs/Input/__stories__/TextWithLimit.js.map +7 -0
  309. package/cjs/inputs/Input/index.js +98 -71
  310. package/cjs/inputs/Input/index.js.map +7 -0
  311. package/cjs/inputs/Input/inputsInputScenarios/index.js +439 -0
  312. package/cjs/inputs/Input/inputsInputScenarios.js.map +7 -0
  313. package/cjs/inputs/Label/Label.stories/index.js +43 -24
  314. package/cjs/inputs/Label/Label.stories.js.map +7 -0
  315. package/cjs/inputs/Label/__stories__/Default/index.js +68 -33
  316. package/cjs/inputs/Label/__stories__/Default.js.map +7 -0
  317. package/cjs/inputs/Label/index.js +45 -24
  318. package/cjs/inputs/Label/index.js.map +7 -0
  319. package/cjs/inputs/OtpInput/OtpInput.stories/index.js +43 -24
  320. package/cjs/inputs/OtpInput/OtpInput.stories.js.map +7 -0
  321. package/cjs/inputs/OtpInput/__stories__/Default/index.js +59 -34
  322. package/cjs/inputs/OtpInput/__stories__/Default.js.map +7 -0
  323. package/cjs/inputs/OtpInput/index.js +142 -113
  324. package/cjs/inputs/OtpInput/index.js.map +7 -0
  325. package/cjs/inputs/Radio/Radio.stories/index.js +49 -48
  326. package/cjs/inputs/Radio/Radio.stories.js.map +7 -0
  327. package/cjs/inputs/Radio/__stories__/Conditional/index.js +120 -90
  328. package/cjs/inputs/Radio/__stories__/Conditional.js.map +7 -0
  329. package/cjs/inputs/Radio/__stories__/Default/index.js +77 -51
  330. package/cjs/inputs/Radio/__stories__/Default.js.map +7 -0
  331. package/cjs/inputs/Radio/__stories__/WithDivider/index.js +78 -52
  332. package/cjs/inputs/Radio/__stories__/WithDivider.js.map +7 -0
  333. package/cjs/inputs/Radio/index.js +130 -61
  334. package/cjs/inputs/Radio/index.js.map +7 -0
  335. package/cjs/inputs/Select/Select.stories/index.js +43 -24
  336. package/cjs/inputs/Select/Select.stories.js.map +7 -0
  337. package/cjs/inputs/Select/__stories__/Default/index.js +82 -57
  338. package/cjs/inputs/Select/__stories__/Default.js.map +7 -0
  339. package/cjs/inputs/Select/index.js +54 -36
  340. package/cjs/inputs/Select/index.js.map +7 -0
  341. package/cjs/inputs/index.js +62 -69
  342. package/cjs/inputs/index.js.map +7 -0
  343. package/cjs/inputs/inputsScenarios/index.js +539 -0
  344. package/cjs/inputs/inputsScenarios.js.map +7 -0
  345. package/cjs/internal/index.js +36 -346
  346. package/cjs/internal.js.map +7 -0
  347. package/cjs/lazy/index.js +99 -516
  348. package/cjs/lazy.js.map +7 -0
  349. package/cjs/locales/el/index.js +35 -0
  350. package/cjs/locales/el.js.map +7 -0
  351. package/cjs/registry/index.js +182 -142
  352. package/cjs/registry.js.map +7 -0
  353. package/cjs/types/index.js +22 -5
  354. package/cjs/types.js.map +7 -0
  355. package/cjs/utils/index.js +78 -83
  356. package/cjs/utils.js.map +7 -0
  357. package/cjs/validators/index.js +107 -164
  358. package/cjs/validators/index.js.map +7 -0
  359. package/cjs/validators/types/index.js +16 -5
  360. package/cjs/validators/types.js.map +7 -0
  361. package/cjs/validators/utils/afm/index.js +38 -21
  362. package/cjs/validators/utils/afm.js.map +7 -0
  363. package/cjs/validators/utils/date/index.js +138 -0
  364. package/cjs/validators/utils/date.js.map +7 -0
  365. package/cjs/validators/utils/file/index.js +44 -39
  366. package/cjs/validators/utils/file.js.map +7 -0
  367. package/cjs/validators/utils/iban/index.js +36 -17
  368. package/cjs/validators/utils/iban.js.map +7 -0
  369. package/cjs/validators/utils/image/index.js +88 -112
  370. package/cjs/validators/utils/image.js.map +7 -0
  371. package/cjs/validators/utils/index.js +97 -159
  372. package/cjs/validators/utils/index.js.map +7 -0
  373. package/cjs/validators/utils/int/index.js +34 -12
  374. package/cjs/validators/utils/int.js.map +7 -0
  375. package/cjs/validators/utils/number/index.js +33 -11
  376. package/cjs/validators/utils/number.js.map +7 -0
  377. package/cjs/validators/utils/otp/index.js +35 -13
  378. package/cjs/validators/utils/otp.js.map +7 -0
  379. package/cjs/validators/utils/phone/index.js +113 -58
  380. package/cjs/validators/utils/phone.js.map +7 -0
  381. package/cjs/validators/utils/postal_code/index.js +36 -16
  382. package/cjs/validators/utils/postal_code.js.map +7 -0
  383. package/cjs/validators/utils/text_limit/index.js +40 -25
  384. package/cjs/validators/utils/text_limit.js.map +7 -0
  385. package/cjs/validators/utils/uuid4/index.js +34 -13
  386. package/cjs/validators/utils/uuid4.js.map +7 -0
  387. package/index.d.ts +4 -1
  388. package/index.js +13 -4
  389. package/index.js.map +7 -0
  390. package/inputs/AutoCompleteInput/AutoComplete.stories/index.js +12 -6
  391. package/inputs/AutoCompleteInput/AutoComplete.stories.d.ts +2 -2
  392. package/inputs/AutoCompleteInput/AutoComplete.stories.js.map +7 -0
  393. package/inputs/AutoCompleteInput/__stories__/Default/index.js +45 -39
  394. package/inputs/AutoCompleteInput/__stories__/Default.d.ts +2 -2
  395. package/inputs/AutoCompleteInput/__stories__/Default.js.map +7 -0
  396. package/inputs/AutoCompleteInput/__stories__/Multiple/index.js +45 -40
  397. package/inputs/AutoCompleteInput/__stories__/Multiple.d.ts +2 -2
  398. package/inputs/AutoCompleteInput/__stories__/Multiple.js.map +7 -0
  399. package/inputs/AutoCompleteInput/index.d.ts +1 -1
  400. package/inputs/AutoCompleteInput/index.js +61 -40
  401. package/inputs/AutoCompleteInput/index.js.map +7 -0
  402. package/inputs/AutoCompleteInput/index.test.d.ts +1 -0
  403. package/inputs/Checkboxes/Checkboxes.stories/index.js +14 -7
  404. package/inputs/Checkboxes/Checkboxes.stories.d.ts +3 -3
  405. package/inputs/Checkboxes/Checkboxes.stories.js.map +7 -0
  406. package/inputs/Checkboxes/__stories__/Conditional/index.js +87 -80
  407. package/inputs/Checkboxes/__stories__/Conditional.d.ts +2 -2
  408. package/inputs/Checkboxes/__stories__/Conditional.js.map +7 -0
  409. package/inputs/Checkboxes/__stories__/Default/index.js +40 -36
  410. package/inputs/Checkboxes/__stories__/Default.d.ts +2 -2
  411. package/inputs/Checkboxes/__stories__/Default.js.map +7 -0
  412. package/inputs/Checkboxes/__stories__/WithDivider/index.js +41 -37
  413. package/inputs/Checkboxes/__stories__/WithDivider.d.ts +2 -2
  414. package/inputs/Checkboxes/__stories__/WithDivider.js.map +7 -0
  415. package/inputs/Checkboxes/index.d.ts +1 -0
  416. package/inputs/Checkboxes/index.js +72 -87
  417. package/inputs/Checkboxes/index.js.map +7 -0
  418. package/inputs/Checkboxes/index.test.d.ts +1 -0
  419. package/inputs/DateInput/DateInput.stories/index.js +10 -5
  420. package/inputs/DateInput/DateInput.stories.d.ts +1 -1
  421. package/inputs/DateInput/DateInput.stories.js.map +7 -0
  422. package/inputs/DateInput/__stories__/Default/index.js +23 -18
  423. package/inputs/DateInput/__stories__/Default.d.ts +2 -2
  424. package/inputs/DateInput/__stories__/Default.js.map +7 -0
  425. package/inputs/DateInput/index.d.ts +2 -2
  426. package/inputs/DateInput/index.js +91 -99
  427. package/inputs/DateInput/index.js.map +7 -0
  428. package/inputs/DateInput/index.test.d.ts +1 -0
  429. package/inputs/FileInput/FileInput.stories/index.js +10 -5
  430. package/inputs/FileInput/FileInput.stories.d.ts +1 -1
  431. package/inputs/FileInput/FileInput.stories.js.map +7 -0
  432. package/inputs/FileInput/__stories__/Default/index.js +24 -16
  433. package/inputs/FileInput/__stories__/Default.d.ts +2 -2
  434. package/inputs/FileInput/__stories__/Default.js.map +7 -0
  435. package/inputs/FileInput/index.js +43 -54
  436. package/inputs/FileInput/index.js.map +7 -0
  437. package/inputs/FileInput/index.test.d.ts +1 -0
  438. package/inputs/ImageInput/ImageInput.stories/index.js +14 -7
  439. package/inputs/ImageInput/ImageInput.stories.d.ts +3 -3
  440. package/inputs/ImageInput/ImageInput.stories.js.map +7 -0
  441. package/inputs/ImageInput/__stories__/Default/index.js +25 -23
  442. package/inputs/ImageInput/__stories__/Default.d.ts +2 -2
  443. package/inputs/ImageInput/__stories__/Default.js.map +7 -0
  444. package/inputs/ImageInput/__stories__/MaxSize/index.js +36 -0
  445. package/inputs/ImageInput/__stories__/MaxSize/package.json +6 -0
  446. package/inputs/ImageInput/__stories__/MaxSize.d.ts +3 -0
  447. package/inputs/ImageInput/__stories__/MaxSize.js.map +7 -0
  448. package/inputs/ImageInput/__stories__/WithInvalidImageDimension/index.js +33 -30
  449. package/inputs/ImageInput/__stories__/WithInvalidImageDimension.d.ts +2 -2
  450. package/inputs/ImageInput/__stories__/WithInvalidImageDimension.js.map +7 -0
  451. package/inputs/ImageInput/__stories__/WithInvalidImageSize/index.js +29 -27
  452. package/inputs/ImageInput/__stories__/WithInvalidImageSize.d.ts +2 -2
  453. package/inputs/ImageInput/__stories__/WithInvalidImageSize.js.map +7 -0
  454. package/inputs/ImageInput/index.js +58 -75
  455. package/inputs/ImageInput/index.js.map +7 -0
  456. package/inputs/ImageInput/index.test.d.ts +1 -0
  457. package/inputs/Input/Input.stories/index.js +28 -14
  458. package/inputs/Input/Input.stories.d.ts +10 -10
  459. package/inputs/Input/Input.stories.js.map +7 -0
  460. package/inputs/Input/__stories__/AFM/index.js +27 -19
  461. package/inputs/Input/__stories__/AFM.d.ts +2 -2
  462. package/inputs/Input/__stories__/AFM.js.map +7 -0
  463. package/inputs/Input/__stories__/Boolean/index.js +28 -20
  464. package/inputs/Input/__stories__/Boolean.d.ts +2 -2
  465. package/inputs/Input/__stories__/Boolean.js.map +7 -0
  466. package/inputs/Input/__stories__/IBAN/index.js +28 -20
  467. package/inputs/Input/__stories__/IBAN.d.ts +2 -2
  468. package/inputs/Input/__stories__/IBAN.js.map +7 -0
  469. package/inputs/Input/__stories__/Integer/index.js +43 -29
  470. package/inputs/Input/__stories__/Integer.d.ts +2 -2
  471. package/inputs/Input/__stories__/Integer.js.map +7 -0
  472. package/inputs/Input/__stories__/LandlineNumber/index.js +31 -23
  473. package/inputs/Input/__stories__/LandlineNumber.d.ts +2 -2
  474. package/inputs/Input/__stories__/LandlineNumber.js.map +7 -0
  475. package/inputs/Input/__stories__/MobilePhone/index.js +31 -23
  476. package/inputs/Input/__stories__/MobilePhone.d.ts +2 -2
  477. package/inputs/Input/__stories__/MobilePhone.js.map +7 -0
  478. package/inputs/Input/__stories__/PhoneNumber/index.js +30 -22
  479. package/inputs/Input/__stories__/PhoneNumber.d.ts +2 -2
  480. package/inputs/Input/__stories__/PhoneNumber.js.map +7 -0
  481. package/inputs/Input/__stories__/PostalCode/index.js +27 -21
  482. package/inputs/Input/__stories__/PostalCode.d.ts +2 -2
  483. package/inputs/Input/__stories__/PostalCode.js.map +7 -0
  484. package/inputs/Input/__stories__/String/index.js +31 -0
  485. package/inputs/Input/__stories__/String/package.json +6 -0
  486. package/inputs/Input/__stories__/String.d.ts +3 -0
  487. package/inputs/Input/__stories__/String.js.map +7 -0
  488. package/inputs/Input/__stories__/TextWithLimit/index.js +31 -0
  489. package/inputs/Input/__stories__/TextWithLimit/package.json +6 -0
  490. package/inputs/Input/__stories__/TextWithLimit.d.ts +3 -0
  491. package/inputs/Input/__stories__/TextWithLimit.js.map +7 -0
  492. package/inputs/Input/index.js +67 -66
  493. package/inputs/Input/index.js.map +7 -0
  494. package/inputs/Input/index.test.d.ts +1 -0
  495. package/inputs/Input/inputsInputScenarios/index.js +406 -0
  496. package/inputs/Input/inputsInputScenarios/package.json +6 -0
  497. package/inputs/Input/inputsInputScenarios.d.ts +57 -0
  498. package/inputs/Input/inputsInputScenarios.js.map +7 -0
  499. package/inputs/Label/Label.stories/index.js +10 -5
  500. package/inputs/Label/Label.stories.d.ts +1 -1
  501. package/inputs/Label/Label.stories.js.map +7 -0
  502. package/inputs/Label/__stories__/Default/index.js +35 -23
  503. package/inputs/Label/__stories__/Default.d.ts +2 -2
  504. package/inputs/Label/__stories__/Default.js.map +7 -0
  505. package/inputs/Label/index.d.ts +1 -1
  506. package/inputs/Label/index.js +12 -17
  507. package/inputs/Label/index.js.map +7 -0
  508. package/inputs/Label/index.test.d.ts +1 -0
  509. package/inputs/OtpInput/OtpInput.stories/index.js +10 -5
  510. package/inputs/OtpInput/OtpInput.stories.d.ts +1 -1
  511. package/inputs/OtpInput/OtpInput.stories.js.map +7 -0
  512. package/inputs/OtpInput/__stories__/Default/index.js +26 -24
  513. package/inputs/OtpInput/__stories__/Default.d.ts +2 -2
  514. package/inputs/OtpInput/__stories__/Default.js.map +7 -0
  515. package/inputs/OtpInput/index.d.ts +1 -1
  516. package/inputs/OtpInput/index.js +110 -104
  517. package/inputs/OtpInput/index.js.map +7 -0
  518. package/inputs/OtpInput/index.test.d.ts +1 -0
  519. package/inputs/Radio/Radio.stories/index.js +14 -7
  520. package/inputs/Radio/Radio.stories.d.ts +3 -3
  521. package/inputs/Radio/Radio.stories.js.map +7 -0
  522. package/inputs/Radio/__stories__/Conditional/index.js +87 -80
  523. package/inputs/Radio/__stories__/Conditional.d.ts +2 -2
  524. package/inputs/Radio/__stories__/Conditional.js.map +7 -0
  525. package/inputs/Radio/__stories__/Default/index.js +44 -41
  526. package/inputs/Radio/__stories__/Default.d.ts +2 -2
  527. package/inputs/Radio/__stories__/Default.js.map +7 -0
  528. package/inputs/Radio/__stories__/WithDivider/index.js +45 -42
  529. package/inputs/Radio/__stories__/WithDivider.d.ts +2 -2
  530. package/inputs/Radio/__stories__/WithDivider.js.map +7 -0
  531. package/inputs/Radio/index.d.ts +5 -0
  532. package/inputs/Radio/index.js +101 -55
  533. package/inputs/Radio/index.js.map +7 -0
  534. package/inputs/Radio/index.test.d.ts +1 -0
  535. package/inputs/Select/Select.stories/index.js +10 -5
  536. package/inputs/Select/Select.stories.d.ts +1 -1
  537. package/inputs/Select/Select.stories.js.map +7 -0
  538. package/inputs/Select/__stories__/Default/index.js +49 -47
  539. package/inputs/Select/__stories__/Default.d.ts +2 -2
  540. package/inputs/Select/__stories__/Default.js.map +7 -0
  541. package/inputs/Select/index.js +23 -31
  542. package/inputs/Select/index.js.map +7 -0
  543. package/inputs/Select/index.test.d.ts +1 -0
  544. package/inputs/index.js +21 -9
  545. package/inputs/index.js.map +7 -0
  546. package/inputs/inputsScenarios/index.js +505 -0
  547. package/inputs/inputsScenarios/package.json +6 -0
  548. package/inputs/inputsScenarios.d.ts +296 -0
  549. package/inputs/inputsScenarios.js.map +7 -0
  550. package/internal/index.js +10 -34
  551. package/internal.d.ts +2 -31
  552. package/internal.js.map +7 -0
  553. package/lazy/index.js +71 -395
  554. package/lazy.d.ts +40 -29
  555. package/lazy.js.map +7 -0
  556. package/locales/el/index.js +6 -0
  557. package/{Questions/index.spec → locales/el}/package.json +1 -1
  558. package/locales/el.d.ts +2 -0
  559. package/locales/el.js.map +7 -0
  560. package/package.json +7 -8
  561. package/registry/index.js +154 -134
  562. package/registry.d.ts +8 -1
  563. package/registry.js.map +7 -0
  564. package/src/Field/FieldBase.tsx +2 -0
  565. package/src/Field/FieldBaseContainer.tsx +2 -2
  566. package/src/Field/FieldConditional.tsx +5 -1
  567. package/src/Field/index.tsx +22 -3
  568. package/src/Field/types.tsx +67 -3
  569. package/src/Field/utils/calculateField.ts +49 -0
  570. package/src/Field/utils/evaluateFieldWithConditions.ts +30 -0
  571. package/src/Field/utils/index.ts +76 -0
  572. package/src/Field/utils/useField.ts +54 -0
  573. package/src/FieldArray/FieldArray.stories.js +2 -2
  574. package/src/FieldArray/index.test.tsx +24 -0
  575. package/src/FieldArray/index.tsx +20 -8
  576. package/src/FieldObject/index.tsx +18 -5
  577. package/src/Fieldset/index.tsx +5 -5
  578. package/src/Fieldset/types.tsx +5 -3
  579. package/src/FormBuilder/FormBuilder.stories.js +1 -1
  580. package/{FormBuilder/FormBuilder.mdx → src/FormBuilder/doc.mdx} +20 -33
  581. package/src/FormBuilder/index.test.tsx +20 -0
  582. package/src/FormBuilder/index.tsx +178 -1
  583. package/src/FormBuilder/scenarios.test.tsx +1864 -0
  584. package/src/MultiplicityField/MultiplicityField.stories.js +6 -6
  585. package/src/MultiplicityField/__stories__/PreviewDisplay.tsx +2 -2
  586. package/src/MultiplicityField/__stories__/WithExactLength.tsx +1 -1
  587. package/src/MultiplicityField/__stories__/WithMaxLength.tsx +1 -1
  588. package/src/MultiplicityField/__stories__/WithMinAndMaxLength.tsx +1 -1
  589. package/src/MultiplicityField/__stories__/WithMinLength.tsx +1 -1
  590. package/src/MultiplicityField/add-objects.tsx +27 -12
  591. package/{MultiplicityField/MultiplicityField.mdx → src/MultiplicityField/doc.mdx} +12 -16
  592. package/src/MultiplicityField/index.test.tsx +40 -0
  593. package/src/MultiplicityField/index.tsx +20 -34
  594. package/src/MultiplicityField/types.ts +22 -0
  595. package/src/Questions/Questions.stories.js +1 -1
  596. package/src/Questions/Step/StepTitle.tsx +5 -3
  597. package/src/Questions/Step/index.ts +0 -1
  598. package/src/Questions/Step/types.tsx +1 -0
  599. package/src/Questions/__snapshots__/index.spec.tsx.snap +72 -587
  600. package/src/Questions/{index.mdx → doc.mdx} +13 -16
  601. package/src/Questions/index.spec.tsx +3 -3
  602. package/src/Questions/index.test.tsx +20 -0
  603. package/src/Questions/types.tsx +1 -0
  604. package/src/create-simple-form.mdx +2 -6
  605. package/src/{index.mdx → doc.mdx} +4 -8
  606. package/src/index.ts +4 -1
  607. package/src/inputs/AutoCompleteInput/AutoComplete.stories.js +2 -2
  608. package/src/inputs/AutoCompleteInput/__stories__/Multiple.tsx +1 -2
  609. package/{cjs/inputs/AutoCompleteInput/index.mdx → src/inputs/AutoCompleteInput/doc.mdx} +2 -13
  610. package/src/inputs/AutoCompleteInput/index.test.tsx +24 -0
  611. package/src/inputs/AutoCompleteInput/index.tsx +47 -30
  612. package/src/inputs/Checkboxes/Checkboxes.stories.js +3 -3
  613. package/src/inputs/Checkboxes/{index.mdx → doc.mdx} +5 -15
  614. package/src/inputs/Checkboxes/index.test.tsx +28 -0
  615. package/src/inputs/Checkboxes/index.tsx +35 -30
  616. package/src/inputs/DateInput/DateInput.stories.js +1 -1
  617. package/src/inputs/DateInput/__stories__/Default.tsx +21 -15
  618. package/{inputs/DateInput/index.mdx → src/inputs/DateInput/doc.mdx} +1 -8
  619. package/src/inputs/DateInput/index.test.tsx +20 -0
  620. package/src/inputs/DateInput/index.tsx +7 -5
  621. package/src/inputs/FileInput/FileInput.stories.js +1 -1
  622. package/{inputs/FileInput/index.mdx → src/inputs/FileInput/doc.mdx} +1 -5
  623. package/src/inputs/FileInput/index.test.tsx +20 -0
  624. package/src/inputs/FileInput/index.tsx +5 -6
  625. package/src/inputs/ImageInput/ImageInput.stories.js +4 -3
  626. package/src/inputs/ImageInput/__stories__/MaxSize.tsx +37 -0
  627. package/src/inputs/ImageInput/__stories__/WithInvalidImageDimension.tsx +2 -0
  628. package/src/inputs/ImageInput/doc.mdx +23 -0
  629. package/src/inputs/ImageInput/index.test.tsx +32 -0
  630. package/src/inputs/ImageInput/index.tsx +9 -11
  631. package/src/inputs/Input/Input.stories.js +10 -10
  632. package/src/inputs/Input/__stories__/{Default.tsx → String.tsx} +2 -2
  633. package/src/inputs/Input/__stories__/{TextWithCharacterLimit.tsx → TextWithLimit.tsx} +2 -2
  634. package/src/inputs/Input/doc.mdx +56 -0
  635. package/src/inputs/Input/index.test.tsx +56 -0
  636. package/src/inputs/Input/index.tsx +33 -30
  637. package/src/inputs/Input/inputsInputScenarios.ts +405 -0
  638. package/src/inputs/Label/Label.stories.js +1 -1
  639. package/src/inputs/Label/__stories__/Default.tsx +3 -1
  640. package/src/inputs/Label/doc.mdx +14 -0
  641. package/src/inputs/Label/index.test.tsx +20 -0
  642. package/src/inputs/Label/index.tsx +3 -7
  643. package/src/inputs/OtpInput/OtpInput.stories.js +1 -1
  644. package/{cjs/inputs/OtpInput/index.mdx → src/inputs/OtpInput/doc.mdx} +1 -8
  645. package/src/inputs/OtpInput/index.test.tsx +20 -0
  646. package/src/inputs/Radio/Radio.stories.js +3 -3
  647. package/src/inputs/Radio/__stories__/Conditional.tsx +2 -1
  648. package/{cjs/inputs/Radio/index.mdx → src/inputs/Radio/doc.mdx} +5 -15
  649. package/src/inputs/Radio/index.test.tsx +28 -0
  650. package/src/inputs/Radio/index.tsx +77 -8
  651. package/src/inputs/Select/Select.stories.js +1 -1
  652. package/src/inputs/Select/{index.mdx → doc.mdx} +1 -5
  653. package/src/inputs/Select/index.test.tsx +20 -0
  654. package/src/inputs/Select/index.tsx +1 -2
  655. package/src/inputs/inputsScenarios.ts +502 -0
  656. package/src/installation.mdx +2 -5
  657. package/src/internal.ts +2 -31
  658. package/src/lazy.js +24 -16
  659. package/src/locales/el.ts +3 -0
  660. package/src/registry.js +16 -2
  661. package/src/types.tsx +10 -63
  662. package/src/utils.ts +34 -33
  663. package/src/validators/index.ts +15 -70
  664. package/src/validators/utils/date.ts +107 -0
  665. package/src/validators/utils/file.ts +1 -1
  666. package/src/validators/utils/index.ts +1 -0
  667. package/src/validators/utils/phone.ts +62 -71
  668. package/src/validators/validators.spec.ts +3 -37
  669. package/types/index.js +2 -1
  670. package/types.d.ts +5 -34
  671. package/types.js.map +7 -0
  672. package/utils/index.js +56 -77
  673. package/utils.js.map +7 -0
  674. package/validators/index.js +83 -148
  675. package/validators/index.js.map +7 -0
  676. package/validators/types/index.js +1 -1
  677. package/validators/types.js.map +7 -0
  678. package/validators/utils/afm/index.js +16 -16
  679. package/validators/utils/afm.js.map +7 -0
  680. package/validators/utils/date/index.js +103 -0
  681. package/validators/utils/date/package.json +6 -0
  682. package/validators/utils/date.d.ts +9 -0
  683. package/validators/utils/date.js.map +7 -0
  684. package/validators/utils/file/index.js +22 -34
  685. package/validators/utils/file.js.map +7 -0
  686. package/validators/utils/iban/index.js +14 -12
  687. package/validators/utils/iban.js.map +7 -0
  688. package/validators/utils/image/index.js +66 -106
  689. package/validators/utils/image.js.map +7 -0
  690. package/validators/utils/index.d.ts +1 -0
  691. package/validators/utils/index.js +55 -48
  692. package/validators/utils/index.js.map +7 -0
  693. package/validators/utils/int/index.js +12 -7
  694. package/validators/utils/int.js.map +7 -0
  695. package/validators/utils/number/index.js +11 -6
  696. package/validators/utils/number.js.map +7 -0
  697. package/validators/utils/otp/index.js +13 -8
  698. package/validators/utils/otp.js.map +7 -0
  699. package/validators/utils/phone/index.js +89 -51
  700. package/validators/utils/phone.js.map +7 -0
  701. package/validators/utils/postal_code/index.js +14 -11
  702. package/validators/utils/postal_code.js.map +7 -0
  703. package/validators/utils/text_limit/index.js +18 -20
  704. package/validators/utils/text_limit.js.map +7 -0
  705. package/validators/utils/uuid4/index.js +12 -8
  706. package/validators/utils/uuid4.js.map +7 -0
  707. package/Field/utils.d.ts +0 -5
  708. package/FieldArray/FieldArray.stories.playwright.json +0 -353
  709. package/FormBuilder/FormBuilder/index.js +0 -152
  710. package/FormBuilder/FormBuilder.d.ts +0 -5
  711. package/FormBuilder/FormBuilder.stories.playwright.json +0 -52
  712. package/MultiplicityField/MultiplicityField.stories.playwright.json +0 -1370
  713. package/Questions/__snapshots__/index.spec.tsx.snap +0 -596
  714. package/Questions/index.mdx +0 -415
  715. package/Questions/index.spec/index.js +0 -59
  716. package/cjs/Field/index.mdx +0 -6
  717. package/cjs/FieldArray/FieldArray.stories.playwright.json +0 -353
  718. package/cjs/FormBuilder/FormBuilder/index.js +0 -162
  719. package/cjs/FormBuilder/FormBuilder.mdx +0 -256
  720. package/cjs/FormBuilder/FormBuilder.stories.playwright.json +0 -52
  721. package/cjs/MultiplicityField/MultiplicityField.mdx +0 -590
  722. package/cjs/MultiplicityField/MultiplicityField.stories.playwright.json +0 -1370
  723. package/cjs/Questions/__snapshots__/index.spec.tsx.snap +0 -596
  724. package/cjs/Questions/index.mdx +0 -415
  725. package/cjs/Questions/index.spec/index.js +0 -63
  726. package/cjs/create-simple-form.mdx +0 -539
  727. package/cjs/index.mdx +0 -51
  728. package/cjs/inputs/Checkboxes/Checkboxes.stories.playwright.json +0 -85
  729. package/cjs/inputs/Checkboxes/index.mdx +0 -33
  730. package/cjs/inputs/DateInput/DateInput.stories.playwright.json +0 -72
  731. package/cjs/inputs/DateInput/index.mdx +0 -23
  732. package/cjs/inputs/FileInput/FileInput.stories.playwright.json +0 -75
  733. package/cjs/inputs/FileInput/index.mdx +0 -19
  734. package/cjs/inputs/ImageInput/ImageInput.stories.playwright.json +0 -77
  735. package/cjs/inputs/ImageInput/index.mdx +0 -19
  736. package/cjs/inputs/Input/Input.stories.playwright.json +0 -376
  737. package/cjs/inputs/Input/__stories__/Default/index.js +0 -33
  738. package/cjs/inputs/Input/__stories__/TextWithCharacterLimit/index.js +0 -39
  739. package/cjs/inputs/Input/index.mdx +0 -95
  740. package/cjs/inputs/Label/Label.stories.playwright.json +0 -40
  741. package/cjs/inputs/Label/index.mdx +0 -0
  742. package/cjs/inputs/Radio/Radio.stories.playwright.json +0 -73
  743. package/cjs/inputs/Select/Select.stories.playwright.json +0 -22
  744. package/cjs/inputs/Select/index.mdx +0 -17
  745. package/cjs/installation.mdx +0 -68
  746. package/cjs/validators/validators.spec/index.js +0 -87
  747. package/create-simple-form.mdx +0 -539
  748. package/index.mdx +0 -51
  749. package/inputs/AutoCompleteInput/index.mdx +0 -29
  750. package/inputs/Checkboxes/Checkboxes.stories.playwright.json +0 -85
  751. package/inputs/Checkboxes/index.mdx +0 -33
  752. package/inputs/DateInput/DateInput.stories.playwright.json +0 -72
  753. package/inputs/FileInput/FileInput.stories.playwright.json +0 -75
  754. package/inputs/ImageInput/ImageInput.stories.playwright.json +0 -77
  755. package/inputs/ImageInput/index.mdx +0 -19
  756. package/inputs/Input/Input.stories.playwright.json +0 -376
  757. package/inputs/Input/__stories__/Default/index.js +0 -23
  758. package/inputs/Input/__stories__/Default.d.ts +0 -3
  759. package/inputs/Input/__stories__/TextWithCharacterLimit/index.js +0 -29
  760. package/inputs/Input/__stories__/TextWithCharacterLimit/package.json +0 -6
  761. package/inputs/Input/__stories__/TextWithCharacterLimit.d.ts +0 -3
  762. package/inputs/Input/index.mdx +0 -95
  763. package/inputs/Label/Label.stories.playwright.json +0 -40
  764. package/inputs/Label/index.mdx +0 -0
  765. package/inputs/OtpInput/index.mdx +0 -23
  766. package/inputs/Radio/Radio.stories.playwright.json +0 -73
  767. package/inputs/Radio/index.mdx +0 -33
  768. package/inputs/Select/Select.stories.playwright.json +0 -22
  769. package/inputs/Select/index.mdx +0 -17
  770. package/installation.mdx +0 -68
  771. package/src/Field/index.mdx +0 -6
  772. package/src/Field/utils.ts +0 -191
  773. package/src/FieldArray/FieldArray.stories.playwright.json +0 -353
  774. package/src/FormBuilder/FormBuilder.mdx +0 -256
  775. package/src/FormBuilder/FormBuilder.stories.playwright.json +0 -52
  776. package/src/FormBuilder/FormBuilder.tsx +0 -166
  777. package/src/MultiplicityField/MultiplicityField.mdx +0 -590
  778. package/src/MultiplicityField/MultiplicityField.stories.playwright.json +0 -1370
  779. package/src/inputs/AutoCompleteInput/index.mdx +0 -29
  780. package/src/inputs/Checkboxes/Checkboxes.stories.playwright.json +0 -85
  781. package/src/inputs/DateInput/DateInput.stories.playwright.json +0 -72
  782. package/src/inputs/DateInput/index.mdx +0 -23
  783. package/src/inputs/FileInput/FileInput.stories.playwright.json +0 -75
  784. package/src/inputs/FileInput/index.mdx +0 -19
  785. package/src/inputs/ImageInput/ImageInput.stories.playwright.json +0 -77
  786. package/src/inputs/ImageInput/index.mdx +0 -19
  787. package/src/inputs/Input/Input.stories.playwright.json +0 -376
  788. package/src/inputs/Input/index.mdx +0 -95
  789. package/src/inputs/Label/Label.stories.playwright.json +0 -40
  790. package/src/inputs/Label/index.mdx +0 -0
  791. package/src/inputs/OtpInput/index.mdx +0 -23
  792. package/src/inputs/Radio/Radio.stories.playwright.json +0 -73
  793. package/src/inputs/Radio/index.mdx +0 -33
  794. package/src/inputs/Select/Select.stories.playwright.json +0 -22
  795. package/validators/validators.spec/index.js +0 -85
  796. /package/{Field/index.mdx → src/Field/doc.mdx} +0 -0
@@ -14,14 +14,11 @@ import {
14
14
  TableDataCell,
15
15
  } from '@digigov/react-core';
16
16
 
17
- import LeadText from '@site/src/components/LeadText';
18
17
 
19
- <LeadText>
20
- Question pages are used to ask users meaningful questions needed by your
21
- GOV.GR service, or even gather data about their persona or their application
22
- status. Use step questions to make bigger forms less scary and easier to fill
23
- out.
24
- </LeadText>
18
+ Question pages are used to ask users meaningful questions needed by your
19
+ GOV.GR service, or even gather data about their persona or their application
20
+ status. Use step questions to make bigger forms less scary and easier to fill
21
+ out.
25
22
 
26
23
  ## Introduction to Question pages
27
24
 
@@ -41,7 +38,7 @@ Even if users struggle through to the end of a form and answer honestly, if it
41
38
  more work than they expected, they’ll be annoyed about it. That's the exact
42
39
  opposite of our goals of making concise, easy-to-use services.
43
40
 
44
- ```jsx live
41
+ ```jsx
45
42
  import React from 'react';
46
43
  import Questions, { Step, StepForm, StepTitle } from '@digigov/form/Questions';
47
44
  import { Field } from '@digigov/form';
@@ -87,11 +84,11 @@ const steps = [
87
84
  ],
88
85
  },
89
86
  {
90
- name: 'bod',
87
+ name: 'dob',
91
88
  title: 'When is your birthday?',
92
89
  fields: [
93
90
  {
94
- key: 'bod',
91
+ key: 'dob',
95
92
  label: {
96
93
  primary: 'Birthday',
97
94
  },
@@ -117,10 +114,10 @@ export default function Index() {
117
114
  <Field name="countries" />
118
115
  </StepForm>
119
116
  </Step>
120
- <Step name="bod">
117
+ <Step name="dob">
121
118
  <StepTitle />
122
119
  <StepForm submitButton={true}>
123
- <Field name="bod" />
120
+ <Field name="dob" />
124
121
  </StepForm>
125
122
  </Step>
126
123
  </Questions>
@@ -159,7 +156,7 @@ its subsequent subcomponents that you customise as needed, like the step title,
159
156
  description or form. You can also add components that are not form-specific,
160
157
  adding paragraphs or other custom components.
161
158
 
162
- ```jsx
159
+ ```jsx pure
163
160
  <Questions name="example" steps={steps} onSubmit={(data) => doSomething(data)}>
164
161
  {/* more steps could be rendered here ... */}
165
162
  <Step name="age">
@@ -184,7 +181,7 @@ object. The most basic properties are the following:
184
181
  - `fields` - an array that describes each input field that will be rendered in
185
182
  the `StepForm`. Each fields implements the `FieldSpec` interface as a JSON object.
186
183
 
187
- ```json title="step-name.json"
184
+ ```json pure title="step-name.json"
188
185
  {
189
186
  "name": "name",
190
187
  "title": "What is your name?",
@@ -209,7 +206,7 @@ basic branching between each step. The `nextStep` property will need to be a
209
206
  function that will take the form state as an argument and will return the key of
210
207
  the next `step`.
211
208
 
212
- ```json title="next-step.json"
209
+ ```json pure title="next-step.json"
213
210
  const steps = [
214
211
  {
215
212
  name: 'age',
@@ -263,7 +260,7 @@ For example, you may use a form to determine if citizens are adults or not, and
263
260
  we want to ask users different questions according to their persona. We can use
264
261
  a branch between the `age` step and the other two steps.
265
262
 
266
- ```jsx live
263
+ ```jsx
267
264
  import React from 'react';
268
265
  import GovGRFooter from '@digigov/ui/govgr/Footer';
269
266
  import Header from '@digigov/ui/app/Header';
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { mount } from 'enzyme';
2
+ import { render } from '@testing-library/react';
3
3
 
4
4
  import { Field } from '@digigov/form';
5
5
  import { Step, StepForm, StepQuote, StepTitle } from '@digigov/form/Questions';
@@ -44,7 +44,7 @@ const steps = [
44
44
 
45
45
  it('renders the Questions', () => {
46
46
  expect(
47
- mount(
47
+ render(
48
48
  <Questions
49
49
  name={'example'}
50
50
  onSubmit={(data): void => {
@@ -67,6 +67,6 @@ it('renders the Questions', () => {
67
67
  </StepForm>
68
68
  </Step>
69
69
  </Questions>
70
- )
70
+ ).baseElement
71
71
  ).toMatchSnapshot();
72
72
  });
@@ -0,0 +1,20 @@
1
+ import React from 'react';
2
+ import { test, expect } from '@playwright/experimental-ct-react';
3
+ import TestVariant from '@digigov/ui/utils/TestVariant'
4
+ import { Default } from '@digigov/form/Questions/__stories__/Default';
5
+
6
+ test('renders the All Questions variants', async ({ mount, page }) => {
7
+ await mount(
8
+
9
+ <div>
10
+ <TestVariant title="Default">
11
+ <Default />
12
+ </TestVariant>
13
+ </div>
14
+ )
15
+ await page.evaluate(() => document.fonts.ready);
16
+
17
+ const screenshot = await page.screenshot({ fullPage: true, animations: 'disabled' });
18
+ expect(screenshot).toMatchSnapshot();
19
+ });
20
+
@@ -13,6 +13,7 @@ export interface QuestionsInterface {
13
13
  initialData?: any;
14
14
  localDraft?: boolean;
15
15
  errorLabels?: Record<string, string>;
16
+ children?: React.ReactNode;
16
17
  }
17
18
 
18
19
  export interface QuestionsContextInterface {
@@ -4,12 +4,8 @@ title: Create a simple Digigov Form
4
4
  sidebar_label: Creating simple forms
5
5
  ---
6
6
 
7
- import LeadText from '@site/src/components/LeadText';
8
-
9
- <LeadText>
10
- This guide walks through building a simple form page, complete with validation
11
- and data serialisation.
12
- </LeadText>
7
+ This guide walks through building a simple form page, complete with validation
8
+ and data serialisation.
13
9
 
14
10
  ## What we are building
15
11
 
@@ -4,14 +4,10 @@ title: Digigov Form
4
4
  sidebar_label: Introduction to Digigov Form
5
5
  ---
6
6
 
7
- import LeadText from '@site/src/components/LeadText';
8
-
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>
7
+ Digigov Form is an off-the-shelf solution for managing web forms using
8
+ Reactjs. It supports flexible and multi-step forms and easy-to-use validation.
9
+ This page will guide you through everything you need to create accessible and
10
+ dynamic forms that can handle all sorts of user inputs.
15
11
 
16
12
  <img
17
13
  src="/img/form.svg"
package/src/index.ts CHANGED
@@ -1,3 +1,6 @@
1
- export * from '@digigov/form/internal';
1
+ export { default as Field } from '@digigov/form/Field';
2
+ export { default as Fieldset } from '@digigov/form/Fieldset';
3
+ export * from '@digigov/form/inputs/Label';
2
4
  import FormBuilder from '@digigov/form/FormBuilder';
5
+ export * from '@digigov/form/types';
3
6
  export default FormBuilder;
@@ -4,5 +4,5 @@ export default {
4
4
  component: AutoComplete,
5
5
  displayName: 'AutoCompleteInput',
6
6
  };
7
- export * from '@digigov/form/inputs/AutoCompleteInput/__stories__/Default';
8
- export * from '@digigov/form/inputs/AutoCompleteInput/__stories__/Multiple';
7
+ export { Default } from '@digigov/form/inputs/AutoCompleteInput/__stories__/Default';
8
+ export { Multiple } from '@digigov/form/inputs/AutoCompleteInput/__stories__/Multiple';
@@ -17,10 +17,9 @@ const fields: FieldSpec[] = [
17
17
  key: 'autocomplete',
18
18
  label: { primary: 'Επιλέξτε ήπειρο' },
19
19
  required: true,
20
- type: 'choice:single',
20
+ type: 'choice:multiple',
21
21
  extra: {
22
22
  component: 'AutoComplete',
23
- multiple: true,
24
23
  options: results.map((r) => {
25
24
  return {
26
25
  label: {
@@ -11,19 +11,8 @@ options as the users type and also let them select an option from the list.
11
11
 
12
12
  ### Default
13
13
 
14
- <Story
15
- packageName="@digigov/form"
16
- component="inputs/AutoCompleteInput"
17
- story="Default.tsx"
18
- />
14
+ <code src="@digigov/form/inputs/AutoCompleteInput/__stories__/Default.tsx" />
19
15
 
20
16
  ### Display multiple values
21
17
 
22
- <Story
23
- packageName="@digigov/form"
24
- component="inputs/AutoCompleteInput"
25
- story="Multiple.tsx"
26
- />
27
-
28
-
29
-
18
+ <code src="@digigov/form/inputs/AutoCompleteInput/__stories__/Multiple.tsx" />
@@ -0,0 +1,24 @@
1
+ import React from 'react';
2
+ import { test, expect } from '@playwright/experimental-ct-react';
3
+ import TestVariant from '@digigov/ui/utils/TestVariant'
4
+ import { Default } from '@digigov/form/inputs/AutoCompleteInput/__stories__/Default';
5
+ import { Multiple } from '@digigov/form/inputs/AutoCompleteInput/__stories__/Multiple';
6
+
7
+ test('renders the All AutoCompleteInput variants', async ({ mount, page }) => {
8
+ await mount(
9
+
10
+ <div>
11
+ <TestVariant title="Default">
12
+ <Default />
13
+ </TestVariant>
14
+ <TestVariant title="Multiple">
15
+ <Multiple />
16
+ </TestVariant>
17
+ </div>
18
+ )
19
+ await page.evaluate(() => document.fonts.ready);
20
+
21
+ const screenshot = await page.screenshot({ fullPage: true, animations: 'disabled' });
22
+ expect(screenshot).toMatchSnapshot();
23
+ });
24
+
@@ -1,11 +1,12 @@
1
1
  import React, { useCallback } from 'react';
2
2
  import { ControlledFieldProps } from '@digigov/form/Field/types';
3
3
  import { FieldOptionProps } from '@digigov/form/inputs/Label';
4
- import { Hint } from '@digigov/react-core/Hint';
5
- import UIAutoComplete, {
4
+ import {
5
+ AutoComplete,
6
6
  AutoCompleteProps as UIAutoCompleteProps,
7
7
  } from '@digigov/ui/form/AutoComplete';
8
-
8
+ import { Hint } from '@digigov/ui/typography/Hint';
9
+ import { Base } from '@digigov/ui/utils/Base';
9
10
  export interface AutoCompleteInputExtra
10
11
  extends Omit<
11
12
  UIAutoCompleteProps,
@@ -23,50 +24,61 @@ export interface AutoCompleteInputProps
23
24
  extends Omit<ControlledFieldProps, 'value' | 'onChange' | 'extra'> {
24
25
  extra: AutoCompleteInputExtra;
25
26
  value: string;
26
- onChange: (v: string) => void;
27
+ onChange: (v: string | string[] | undefined) => void;
27
28
  }
28
29
 
29
30
  export const AutoCompleteInput: React.FC<AutoCompleteInputProps> = ({
30
31
  name,
31
- extra: { options, multiple },
32
+ type,
33
+ extra: { options },
32
34
  onChange,
33
35
  value,
36
+ error,
34
37
  ...props
35
38
  }) => {
36
- const suggest = useCallback(function suggest(
37
- query: string,
38
- syncResults: (options: any[]) => void
39
- ): void {
40
- syncResults(
41
- query
42
- ? options.filter(function (option) {
43
- return (
44
- `${option.value} ${option.label?.primary || ''} ${
45
- option.label?.secondary || ''
46
- }`
47
- .toLowerCase()
48
- .indexOf(query.toLowerCase()) !== -1
49
- );
50
- })
51
- : options
52
- );
53
- },
54
- []);
39
+ const suggest = useCallback(
40
+ function suggest(
41
+ query: string,
42
+ syncResults: (options: any[]) => void
43
+ ): void {
44
+ syncResults(
45
+ query
46
+ ? options.filter(function (option) {
47
+ return (
48
+ `${option.value} ${option.label?.primary || ''} ${
49
+ option.label?.secondary || ''
50
+ }`
51
+ .toLowerCase()
52
+ .indexOf(query.toLowerCase()) !== -1
53
+ );
54
+ })
55
+ : options
56
+ );
57
+ },
58
+ [options]
59
+ );
55
60
 
56
61
  return (
57
- <UIAutoComplete
58
- multiple={multiple}
62
+ <AutoComplete
63
+ multiple={type === 'choice:multiple' ? true : false}
59
64
  source={suggest}
60
65
  onConfirm={(value) => {
61
- onChange(value.value);
66
+ if (Array.isArray(value)) {
67
+ const selectedValues = value.map((item) => item.value);
68
+ selectedValues.length > 0
69
+ ? onChange(selectedValues)
70
+ : onChange(undefined);
71
+ } else {
72
+ onChange(value.value);
73
+ }
62
74
  }}
63
75
  templates={{
64
76
  suggestion({ label, value }) {
65
77
  return (
66
- <div>
78
+ <Base as="div">
67
79
  {(label && label.primary && label.primary) || value}
68
80
  {label && label.secondary && <Hint>{label.secondary}</Hint>}
69
- </div>
81
+ </Base>
70
82
  );
71
83
  },
72
84
  inputValue: (option) => {
@@ -76,7 +88,12 @@ export const AutoCompleteInput: React.FC<AutoCompleteInputProps> = ({
76
88
  return option.label.primary || option.value;
77
89
  },
78
90
  }}
79
- {...props}
91
+ {...{
92
+ ...props,
93
+ reset: undefined,
94
+ required: undefined,
95
+ }}
96
+ name={name}
80
97
  id={`${name}-id`}
81
98
  defaultValue={value}
82
99
  />
@@ -4,6 +4,6 @@ export default {
4
4
  component: Checkboxes,
5
5
  displayName: 'Checkboxes',
6
6
  };
7
- export * from '@digigov/form/inputs/Checkboxes/__stories__/Default';
8
- export * from '@digigov/form/inputs/Checkboxes/__stories__/WithDivider';
9
- export * from '@digigov/form/inputs/Checkboxes/__stories__/Conditional';
7
+ export { Default } from '@digigov/form/inputs/Checkboxes/__stories__/Default';
8
+ export { WithDivider } from '@digigov/form/inputs/Checkboxes/__stories__/WithDivider';
9
+ export { Conditional } from '@digigov/form/inputs/Checkboxes/__stories__/Conditional';
@@ -10,24 +10,14 @@ Checkboxes are used to let a user select one or more options of a limited number
10
10
 
11
11
  ### Default
12
12
 
13
- <Story
14
- packageName="@digigov/form"
15
- component="inputs/Checkboxes"
16
- story="Default.tsx"
17
- />
13
+ <code src="@digigov/form/inputs/Checkboxes/__stories__/Default.tsx" />
14
+
18
15
 
19
16
  ### Conditional
20
17
 
21
- <Story
22
- packageName="@digigov/form"
23
- component="inputs/Checkboxes"
24
- story="Conditional.tsx"
25
- />
18
+ <code src="@digigov/form/inputs/Checkboxes/__stories__/Conditional.tsx" />
19
+
26
20
 
27
21
  ### With divider
28
22
 
29
- <Story
30
- packageName="@digigov/form"
31
- component="inputs/Checkboxes"
32
- story="WithDivider.tsx"
33
- />
23
+ <code src="@digigov/form/inputs/Checkboxes/__stories__/WithDivider.tsx" />
@@ -0,0 +1,28 @@
1
+ import React from 'react';
2
+ import { test, expect } from '@playwright/experimental-ct-react';
3
+ import TestVariant from '@digigov/ui/utils/TestVariant'
4
+ import { Conditional } from '@digigov/form/inputs/Checkboxes/__stories__/Conditional';
5
+ import { Default } from '@digigov/form/inputs/Checkboxes/__stories__/Default';
6
+ import { WithDivider } from '@digigov/form/inputs/Checkboxes/__stories__/WithDivider';
7
+
8
+ test('renders the All Checkboxes variants', async ({ mount, page }) => {
9
+ await mount(
10
+
11
+ <div>
12
+ <TestVariant title="Conditional">
13
+ <Conditional />
14
+ </TestVariant>
15
+ <TestVariant title="Default">
16
+ <Default />
17
+ </TestVariant>
18
+ <TestVariant title="WithDivider">
19
+ <WithDivider />
20
+ </TestVariant>
21
+ </div>
22
+ )
23
+ await page.evaluate(() => document.fonts.ready);
24
+
25
+ const screenshot = await page.screenshot({ fullPage: true, animations: 'disabled' });
26
+ expect(screenshot).toMatchSnapshot();
27
+ });
28
+
@@ -1,12 +1,13 @@
1
1
  import React, { useState } from 'react';
2
- import { Field } from '@digigov/form';
3
2
  import { ControlledFieldProps } from '@digigov/form/Field/types';
4
3
  import { FieldOptionProps } from '@digigov/form/inputs/Label';
5
- import { CheckboxConditional } from '@digigov/react-core/CheckboxConditional';
6
- import CoreCheckboxes from '@digigov/react-core/Checkbox';
7
- import CheckboxItem from '@digigov/react-core/CheckboxItem';
8
- import Hint from '@digigov/react-core/Hint';
4
+ import {
5
+ Checkbox,
6
+ CheckboxItem,
7
+ CheckboxConditional,
8
+ } from '@digigov/ui/form/Checkbox';
9
9
  import { useTranslation } from '@digigov/ui/i18n';
10
+ import { Hint } from '@digigov/ui/typography/Hint';
10
11
 
11
12
  export interface CheckboxesProps
12
13
  extends Omit<ControlledFieldProps, 'extra' | 'value'> {
@@ -15,6 +16,7 @@ export interface CheckboxesProps
15
16
  className?: string;
16
17
  options: Array<FieldOptionProps>;
17
18
  };
19
+ fieldComponent: React.FC<Omit<ControlledFieldProps, 'value' | 'onChange'>>;
18
20
  }
19
21
 
20
22
  export const Checkboxes: React.FC<CheckboxesProps> = ({
@@ -23,37 +25,40 @@ export const Checkboxes: React.FC<CheckboxesProps> = ({
23
25
  value,
24
26
  extra: { options, className },
25
27
  disabled,
28
+ Field,
26
29
  ...props
27
30
  }) => {
28
31
  if (!value) value = [];
29
- const handleChange = (optionValue, idx, show) => (evt): void => {
30
- let newValue;
31
- if (evt.currentTarget.checked) {
32
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
33
- // @ts-ignore
34
- newValue = value.concat([optionValue]);
35
- } else {
36
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
37
- // @ts-ignore
38
- newValue = value.filter((val) => val !== optionValue);
39
- }
40
- if (show && show.length > 0) {
41
- setChecked((items) =>
42
- items.map((item, index) => (index === idx ? !item : item))
43
- );
44
- }
32
+ const handleChange =
33
+ (optionValue, idx, show) =>
34
+ (evt): void => {
35
+ let newValue;
36
+ if (evt.currentTarget.checked) {
37
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
38
+ // @ts-ignore
39
+ newValue = value.concat([optionValue]);
40
+ } else {
41
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
42
+ // @ts-ignore
43
+ newValue = value.filter((val) => val !== optionValue);
44
+ }
45
+ if (show && show.length > 0) {
46
+ setChecked((items) =>
47
+ items.map((item, index) => (index === idx ? !item : item))
48
+ );
49
+ }
45
50
 
46
- // reset value to undefined instead of an empty array
47
- // so the error state mechanism can throw validation errors
48
- if (newValue.length === 0) newValue = undefined;
49
- onChange(newValue);
50
- };
51
+ // reset value to undefined instead of an empty array
52
+ // so the error state mechanism can throw validation errors
53
+ if (newValue.length === 0) newValue = undefined;
54
+ onChange(newValue);
55
+ };
51
56
  const { t } = useTranslation();
52
57
  const [checked, setChecked] = useState(
53
58
  Array<boolean>(options.length).fill(false)
54
59
  );
55
60
  return (
56
- <CoreCheckboxes className={className}>
61
+ <Checkbox className={className}>
57
62
  {options.map(
58
63
  (
59
64
  {
@@ -69,7 +74,7 @@ export const Checkboxes: React.FC<CheckboxesProps> = ({
69
74
  <React.Fragment key={index}>
70
75
  <CheckboxItem
71
76
  key={`${name}.${index}`}
72
- name={name}
77
+ name={`${name}.${v}`}
73
78
  value={v}
74
79
  disabled={disabled || optionDisabled}
75
80
  checked={value?.includes(v)}
@@ -89,7 +94,7 @@ export const Checkboxes: React.FC<CheckboxesProps> = ({
89
94
  {label && label.secondary && <Hint>{t(label.secondary)}</Hint>}
90
95
  </CheckboxItem>
91
96
 
92
- {!!checked[index] && show && (
97
+ {!!checked[index] && show && Field && (
93
98
  <CheckboxConditional>
94
99
  {show.map((fieldName) => (
95
100
  <Field name={fieldName} key={fieldName} />
@@ -100,7 +105,7 @@ export const Checkboxes: React.FC<CheckboxesProps> = ({
100
105
  </React.Fragment>
101
106
  )
102
107
  )}
103
- </CoreCheckboxes>
108
+ </Checkbox>
104
109
  );
105
110
  };
106
111
 
@@ -4,4 +4,4 @@ export default {
4
4
  component: DateInput,
5
5
  displayName: 'DateInput',
6
6
  };
7
- export * from '@digigov/form/inputs/DateInput/__stories__/Default';
7
+ export { Default } from '@digigov/form/inputs/DateInput/__stories__/Default';
@@ -2,22 +2,28 @@ import React from 'react';
2
2
  import FormBuilder, { Field } from '@digigov/form';
3
3
  import { Button } from '@digigov/ui/form/Button';
4
4
 
5
+ const fields = [
6
+ {
7
+ key: 'date-example',
8
+ type: 'date',
9
+ required: true,
10
+ label: {
11
+ primary: 'Πότε εκδόθηκε το διαβατήριο σας;',
12
+ secondary:
13
+ 'Για παράδειγμα, 05 11 2020',
14
+ }
15
+ },
16
+ ]
17
+
5
18
  export const Default = () => (
6
- <FormBuilder
7
- onSubmit={(data) => {
8
- console.log(data);
9
- }}
10
- >
11
- <Field
12
- key={'string'}
13
- name="string"
14
- type="date"
15
- required
16
- label={{
17
- primary: 'Πότε εκδόθηκε το διαβατήριο σας;',
18
- secondary: 'Για παράδειγμα, 05 11 2020',
19
- }}
20
- />
19
+ <FormBuilder onSubmit={() => console.log('kati')}>
20
+ {fields.map((field) => {
21
+ return (
22
+ // @ts-ignore
23
+ <Field {...field} name={field.key} />
24
+ )
25
+ }
26
+ )}
21
27
  <Button type="submit">Συνέχεια</Button>
22
28
  </FormBuilder>
23
29
  );
@@ -13,11 +13,4 @@ either with a textbox that validates the input or a special date picker interfac
13
13
 
14
14
  ### Default
15
15
 
16
- <Story
17
- packageName="@digigov/form"
18
- component="inputs/DateInput"
19
- story="Default.tsx"
20
- />
21
-
22
-
23
-
16
+ <code src="@digigov/form/inputs/DateInput/__stories__/Default.tsx" />
@@ -0,0 +1,20 @@
1
+ import React from 'react';
2
+ import { test, expect } from '@playwright/experimental-ct-react';
3
+ import TestVariant from '@digigov/ui/utils/TestVariant'
4
+ import { Default } from '@digigov/form/inputs/DateInput/__stories__/Default';
5
+
6
+ test('renders the All DateInput variants', async ({ mount, page }) => {
7
+ await mount(
8
+
9
+ <div>
10
+ <TestVariant title="Default">
11
+ <Default />
12
+ </TestVariant>
13
+ </div>
14
+ )
15
+ await page.evaluate(() => document.fonts.ready);
16
+
17
+ const screenshot = await page.screenshot({ fullPage: true, animations: 'disabled' });
18
+ expect(screenshot).toMatchSnapshot();
19
+ });
20
+