@digigov/form 1.0.0-8ae63a77 → 1.0.0-8b33e4c8

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 (468) hide show
  1. package/Field/FieldBase.js +14 -31
  2. package/Field/FieldBaseContainer.js +19 -41
  3. package/Field/FieldConditional.js +14 -33
  4. package/Field/index.js +18 -45
  5. package/Field/package.json +6 -0
  6. package/Field/types.js +1 -5
  7. package/Field/utils.js +30 -63
  8. package/FieldArray/FieldArray.stories.js +5 -42
  9. package/FieldArray/__stories__/Default.js +11 -32
  10. package/FieldArray/__stories__/WithExactLength.js +11 -32
  11. package/FieldArray/index.js +19 -41
  12. package/FieldArray/package.json +6 -0
  13. package/FieldObject/index.js +16 -41
  14. package/FieldObject/package.json +6 -0
  15. package/Fieldset/FieldsetWithContext.js +13 -35
  16. package/Fieldset/index.js +21 -51
  17. package/Fieldset/package.json +6 -0
  18. package/Fieldset/types.js +1 -5
  19. package/Form.stories.js +2 -9
  20. package/FormBuilder/FormBuilder.js +33 -62
  21. package/FormBuilder/FormBuilder.stories.js +4 -28
  22. package/FormBuilder/__stories__/Default.js +8 -29
  23. package/FormBuilder/index.js +2 -11
  24. package/FormBuilder/package.json +6 -0
  25. package/FormContext.js +3 -12
  26. package/MultiplicityField/MultiplicityField.stories.js +9 -98
  27. package/MultiplicityField/__stories__/Default.js +11 -32
  28. package/MultiplicityField/__stories__/PreviewDisplay.js +29 -52
  29. package/MultiplicityField/__stories__/WithExactLength.js +11 -32
  30. package/MultiplicityField/__stories__/WithMaxLength.js +11 -32
  31. package/MultiplicityField/__stories__/WithMinAndMaxLength.js +11 -32
  32. package/MultiplicityField/__stories__/WithMinLength.js +11 -32
  33. package/MultiplicityField/add-objects.js +25 -49
  34. package/MultiplicityField/index.js +26 -55
  35. package/MultiplicityField/package.json +6 -0
  36. package/Questions/Questions.js +14 -35
  37. package/Questions/Questions.stories.js +4 -28
  38. package/Questions/QuestionsContext.js +3 -12
  39. package/Questions/Step/ReviewStep.js +21 -47
  40. package/Questions/Step/Step.js +18 -42
  41. package/Questions/Step/StepArrayReview.js +23 -52
  42. package/Questions/Step/StepContext.js +3 -13
  43. package/Questions/Step/StepDescription.js +14 -42
  44. package/Questions/Step/StepForm.js +19 -45
  45. package/Questions/Step/StepQuote.js +8 -23
  46. package/Questions/Step/StepTitle.js +17 -48
  47. package/Questions/Step/getAddMoreFields.js +2 -11
  48. package/Questions/Step/index.js +13 -170
  49. package/Questions/Step/package.json +6 -0
  50. package/Questions/Step/types.js +1 -5
  51. package/Questions/__stories__/Default.js +24 -51
  52. package/Questions/getNextStep.js +1 -8
  53. package/Questions/index.js +3 -25
  54. package/Questions/index.spec.js +12 -23
  55. package/Questions/package.json +6 -0
  56. package/Questions/types.js +1 -5
  57. package/{es → cjs}/Field/FieldBase.js +31 -14
  58. package/cjs/Field/FieldBaseContainer.js +65 -0
  59. package/cjs/Field/FieldConditional.js +81 -0
  60. package/cjs/Field/index.js +103 -0
  61. package/cjs/Field/types.js +5 -0
  62. package/{es → cjs}/Field/utils.js +63 -30
  63. package/cjs/FieldArray/FieldArray.stories.js +45 -0
  64. package/cjs/FieldArray/__stories__/Default.js +111 -0
  65. package/cjs/FieldArray/__stories__/WithExactLength.js +111 -0
  66. package/cjs/FieldArray/index.js +87 -0
  67. package/cjs/FieldObject/index.js +83 -0
  68. package/cjs/Fieldset/FieldsetWithContext.js +63 -0
  69. package/cjs/Fieldset/index.js +64 -0
  70. package/cjs/Fieldset/types.js +5 -0
  71. package/cjs/Form.stories.js +10 -0
  72. package/{esm → cjs}/FormBuilder/FormBuilder.js +62 -33
  73. package/cjs/FormBuilder/FormBuilder.stories.js +31 -0
  74. package/cjs/FormBuilder/__stories__/Default.js +49 -0
  75. package/cjs/FormBuilder/index.js +11 -0
  76. package/cjs/FormContext.js +14 -0
  77. package/cjs/MultiplicityField/MultiplicityField.stories.js +101 -0
  78. package/{es → cjs}/MultiplicityField/__stories__/Default.js +32 -11
  79. package/cjs/MultiplicityField/__stories__/PreviewDisplay.js +106 -0
  80. package/{esm → cjs}/MultiplicityField/__stories__/WithExactLength.js +32 -11
  81. package/{es → cjs}/MultiplicityField/__stories__/WithMaxLength.js +32 -11
  82. package/{es → cjs}/MultiplicityField/__stories__/WithMinAndMaxLength.js +32 -11
  83. package/{esm → cjs}/MultiplicityField/__stories__/WithMinLength.js +32 -11
  84. package/{esm → cjs}/MultiplicityField/add-objects.js +49 -25
  85. package/cjs/MultiplicityField/index.js +143 -0
  86. package/cjs/Questions/Questions.js +105 -0
  87. package/cjs/Questions/Questions.stories.js +31 -0
  88. package/cjs/Questions/QuestionsContext.js +20 -0
  89. package/cjs/Questions/Step/ReviewStep.js +79 -0
  90. package/cjs/Questions/Step/Step.js +93 -0
  91. package/cjs/Questions/Step/StepArrayReview.js +79 -0
  92. package/{esm → cjs}/Questions/Step/StepContext.js +13 -3
  93. package/cjs/Questions/Step/StepDescription.js +55 -0
  94. package/cjs/Questions/Step/StepForm.js +74 -0
  95. package/cjs/Questions/Step/StepQuote.js +26 -0
  96. package/cjs/Questions/Step/StepTitle.js +75 -0
  97. package/{es → cjs}/Questions/Step/getAddMoreFields.js +11 -2
  98. package/cjs/Questions/Step/index.js +170 -0
  99. package/cjs/Questions/Step/types.js +5 -0
  100. package/cjs/Questions/__stories__/Default.js +135 -0
  101. package/{es → cjs}/Questions/getNextStep.js +8 -1
  102. package/cjs/Questions/index.js +25 -0
  103. package/cjs/Questions/index.spec.js +73 -0
  104. package/cjs/Questions/types.js +5 -0
  105. package/cjs/index.js +28 -0
  106. package/cjs/inputs/AutoComplete/AutoComplete.stories.js +31 -0
  107. package/cjs/inputs/AutoComplete/__stories__/Default.js +71 -0
  108. package/cjs/inputs/AutoComplete/index.js +68 -0
  109. package/cjs/inputs/Checkboxes/Checkboxes.stories.js +59 -0
  110. package/{es → cjs}/inputs/Checkboxes/__stories__/Conditional.js +28 -8
  111. package/cjs/inputs/Checkboxes/__stories__/Default.js +62 -0
  112. package/cjs/inputs/Checkboxes/__stories__/WithDivider.js +63 -0
  113. package/cjs/inputs/Checkboxes/index.js +127 -0
  114. package/cjs/inputs/DateInput/DateInput.stories.js +31 -0
  115. package/cjs/inputs/DateInput/__stories__/Default.js +45 -0
  116. package/cjs/inputs/DateInput/index.js +181 -0
  117. package/cjs/inputs/FileInput/FileInput.stories.js +31 -0
  118. package/cjs/inputs/FileInput/__stories__/Default.js +42 -0
  119. package/cjs/inputs/FileInput/index.js +92 -0
  120. package/cjs/inputs/Input/Input.stories.js +143 -0
  121. package/cjs/inputs/Input/__stories__/AFM.js +44 -0
  122. package/cjs/inputs/Input/__stories__/Boolean.js +45 -0
  123. package/cjs/inputs/Input/__stories__/Default.js +45 -0
  124. package/cjs/inputs/Input/__stories__/IBAN.js +45 -0
  125. package/cjs/inputs/Input/__stories__/Integer.js +53 -0
  126. package/cjs/inputs/Input/__stories__/MobilePhone.js +44 -0
  127. package/cjs/inputs/Input/__stories__/PhoneNumber.js +44 -0
  128. package/cjs/inputs/Input/__stories__/PostalCode.js +47 -0
  129. package/cjs/inputs/Input/__stories__/TextWithCharacterLimit.js +51 -0
  130. package/cjs/inputs/Input/index.js +96 -0
  131. package/cjs/inputs/Label/Label.stories.js +31 -0
  132. package/cjs/inputs/Label/__stories__/Default.js +49 -0
  133. package/cjs/inputs/Label/index.js +41 -0
  134. package/cjs/inputs/OtpInput/OtpInput.stories.js +31 -0
  135. package/cjs/inputs/OtpInput/__stories__/Default.js +52 -0
  136. package/cjs/inputs/OtpInput/index.js +182 -0
  137. package/cjs/inputs/Radio/Radio.stories.js +59 -0
  138. package/{es → cjs}/inputs/Radio/__stories__/Conditional.js +28 -8
  139. package/cjs/inputs/Radio/__stories__/Default.js +67 -0
  140. package/cjs/inputs/Radio/__stories__/WithDivider.js +68 -0
  141. package/cjs/inputs/Radio/index.js +82 -0
  142. package/cjs/inputs/Select/Select.stories.js +31 -0
  143. package/cjs/inputs/Select/__stories__/Default.js +73 -0
  144. package/cjs/inputs/Select/index.js +49 -0
  145. package/cjs/inputs/index.js +71 -0
  146. package/cjs/internal.js +391 -0
  147. package/cjs/registry.js +208 -0
  148. package/cjs/types.js +5 -0
  149. package/{es → cjs}/utils.js +26 -12
  150. package/{es → cjs}/validators/index.js +54 -26
  151. package/cjs/validators/types.js +5 -0
  152. package/{es → cjs}/validators/utils/afm.js +13 -3
  153. package/{es → cjs}/validators/utils/file.js +12 -2
  154. package/{esm → cjs}/validators/utils/iban.js +13 -2
  155. package/cjs/validators/utils/index.js +229 -0
  156. package/{es → cjs}/validators/utils/int.js +14 -3
  157. package/cjs/validators/utils/number.js +27 -0
  158. package/{esm → cjs}/validators/utils/otp.js +14 -3
  159. package/{esm → cjs}/validators/utils/phone.js +28 -6
  160. package/{es → cjs}/validators/utils/postal_code.js +14 -3
  161. package/{esm → cjs}/validators/utils/text_limit.js +14 -3
  162. package/{es → cjs}/validators/utils/uuid4.js +13 -3
  163. package/cjs/validators/validators.spec.js +88 -0
  164. package/index.js +8 -28
  165. package/inputs/AutoComplete/AutoComplete.stories.js +4 -28
  166. package/inputs/AutoComplete/__stories__/Default.js +13 -35
  167. package/inputs/AutoComplete/index.js +12 -35
  168. package/inputs/AutoComplete/package.json +6 -0
  169. package/inputs/Checkboxes/Checkboxes.stories.js +6 -56
  170. package/inputs/Checkboxes/__stories__/Conditional.js +8 -28
  171. package/inputs/Checkboxes/__stories__/Default.js +8 -28
  172. package/inputs/Checkboxes/__stories__/WithDivider.js +8 -28
  173. package/inputs/Checkboxes/index.js +25 -52
  174. package/inputs/Checkboxes/package.json +6 -0
  175. package/inputs/DateInput/DateInput.stories.js +4 -28
  176. package/inputs/DateInput/__stories__/Default.js +8 -28
  177. package/inputs/DateInput/index.js +26 -52
  178. package/inputs/DateInput/package.json +6 -0
  179. package/inputs/FileInput/FileInput.stories.js +4 -28
  180. package/inputs/FileInput/__stories__/Default.js +8 -28
  181. package/inputs/FileInput/index.js +22 -52
  182. package/inputs/FileInput/package.json +6 -0
  183. package/inputs/Input/Input.stories.js +12 -140
  184. package/inputs/Input/__stories__/AFM.js +8 -28
  185. package/inputs/Input/__stories__/Boolean.js +8 -28
  186. package/inputs/Input/__stories__/Default.js +8 -28
  187. package/inputs/Input/__stories__/IBAN.js +8 -28
  188. package/inputs/Input/__stories__/Integer.js +9 -29
  189. package/inputs/Input/__stories__/MobilePhone.js +8 -28
  190. package/inputs/Input/__stories__/PhoneNumber.js +8 -28
  191. package/inputs/Input/__stories__/PostalCode.js +8 -28
  192. package/inputs/Input/__stories__/TextWithCharacterLimit.js +8 -28
  193. package/inputs/Input/index.js +19 -40
  194. package/inputs/Input/package.json +6 -0
  195. package/inputs/Label/Label.stories.js +4 -28
  196. package/inputs/Label/__stories__/Default.js +9 -29
  197. package/inputs/Label/index.js +9 -25
  198. package/inputs/Label/package.json +6 -0
  199. package/inputs/OtpInput/OtpInput.stories.js +4 -28
  200. package/inputs/OtpInput/__stories__/Default.js +9 -30
  201. package/inputs/OtpInput/index.js +28 -53
  202. package/inputs/OtpInput/package.json +6 -0
  203. package/inputs/Radio/Radio.stories.js +6 -56
  204. package/inputs/Radio/__stories__/Conditional.js +8 -28
  205. package/inputs/Radio/__stories__/Default.js +8 -28
  206. package/inputs/Radio/__stories__/WithDivider.js +8 -28
  207. package/inputs/Radio/index.js +24 -45
  208. package/inputs/Radio/package.json +6 -0
  209. package/inputs/Select/Select.stories.js +4 -28
  210. package/inputs/Select/__stories__/Default.js +8 -28
  211. package/inputs/Select/index.js +12 -29
  212. package/inputs/Select/package.json +6 -0
  213. package/inputs/index.js +8 -71
  214. package/inputs/package.json +6 -0
  215. package/internal.js +34 -391
  216. package/package.json +6 -6
  217. package/registry.js +61 -133
  218. package/types.js +1 -5
  219. package/utils.js +12 -26
  220. package/validators/index.js +26 -54
  221. package/validators/package.json +6 -0
  222. package/validators/types.js +1 -5
  223. package/validators/utils/afm.js +3 -13
  224. package/validators/utils/file.js +2 -12
  225. package/validators/utils/iban.js +2 -13
  226. package/validators/utils/index.js +12 -139
  227. package/validators/utils/int.js +3 -14
  228. package/validators/utils/number.js +3 -14
  229. package/validators/utils/otp.js +3 -14
  230. package/validators/utils/package.json +6 -0
  231. package/validators/utils/phone.js +6 -28
  232. package/validators/utils/postal_code.js +3 -14
  233. package/validators/utils/text_limit.js +3 -14
  234. package/validators/utils/uuid4.js +3 -13
  235. package/validators/validators.spec.js +29 -32
  236. package/es/Field/FieldBaseContainer.js +0 -43
  237. package/es/Field/FieldConditional.js +0 -62
  238. package/es/Field/index.js +0 -76
  239. package/es/Field/types.js +0 -1
  240. package/es/FieldArray/FieldArray.stories.js +0 -8
  241. package/es/FieldArray/__stories__/Default.js +0 -90
  242. package/es/FieldArray/__stories__/WithExactLength.js +0 -90
  243. package/es/FieldArray/index.js +0 -65
  244. package/es/FieldObject/index.js +0 -58
  245. package/es/Fieldset/FieldsetWithContext.js +0 -41
  246. package/es/Fieldset/index.js +0 -34
  247. package/es/Fieldset/types.js +0 -1
  248. package/es/Form.stories.js +0 -3
  249. package/es/FormBuilder/FormBuilder.js +0 -160
  250. package/es/FormBuilder/FormBuilder.stories.js +0 -7
  251. package/es/FormBuilder/__stories__/Default.js +0 -28
  252. package/es/FormBuilder/index.js +0 -2
  253. package/es/FormContext.js +0 -5
  254. package/es/MultiplicityField/MultiplicityField.stories.js +0 -12
  255. package/es/MultiplicityField/__stories__/PreviewDisplay.js +0 -83
  256. package/es/MultiplicityField/__stories__/WithExactLength.js +0 -92
  257. package/es/MultiplicityField/__stories__/WithMinLength.js +0 -95
  258. package/es/MultiplicityField/add-objects.js +0 -160
  259. package/es/MultiplicityField/index.js +0 -114
  260. package/es/Questions/Questions.js +0 -84
  261. package/es/Questions/Questions.stories.js +0 -7
  262. package/es/Questions/QuestionsContext.js +0 -11
  263. package/es/Questions/Step/ReviewStep.js +0 -53
  264. package/es/Questions/Step/Step.js +0 -69
  265. package/es/Questions/Step/StepArrayReview.js +0 -50
  266. package/es/Questions/Step/StepContext.js +0 -27
  267. package/es/Questions/Step/StepDescription.js +0 -27
  268. package/es/Questions/Step/StepForm.js +0 -48
  269. package/es/Questions/Step/StepQuote.js +0 -11
  270. package/es/Questions/Step/StepTitle.js +0 -44
  271. package/es/Questions/Step/index.js +0 -13
  272. package/es/Questions/Step/types.js +0 -1
  273. package/es/Questions/__stories__/Default.js +0 -108
  274. package/es/Questions/index.js +0 -3
  275. package/es/Questions/index.spec.js +0 -62
  276. package/es/Questions/types.js +0 -1
  277. package/es/index.js +0 -3
  278. package/es/inputs/AutoComplete/AutoComplete.stories.js +0 -7
  279. package/es/inputs/AutoComplete/__stories__/Default.js +0 -49
  280. package/es/inputs/AutoComplete/index.js +0 -45
  281. package/es/inputs/Checkboxes/Checkboxes.stories.js +0 -9
  282. package/es/inputs/Checkboxes/__stories__/Default.js +0 -42
  283. package/es/inputs/Checkboxes/__stories__/WithDivider.js +0 -43
  284. package/es/inputs/Checkboxes/index.js +0 -100
  285. package/es/inputs/DateInput/DateInput.stories.js +0 -7
  286. package/es/inputs/DateInput/__stories__/Default.js +0 -25
  287. package/es/inputs/DateInput/index.js +0 -155
  288. package/es/inputs/FileInput/FileInput.stories.js +0 -7
  289. package/es/inputs/FileInput/__stories__/Default.js +0 -22
  290. package/es/inputs/FileInput/index.js +0 -62
  291. package/es/inputs/Input/Input.stories.js +0 -15
  292. package/es/inputs/Input/__stories__/AFM.js +0 -24
  293. package/es/inputs/Input/__stories__/Boolean.js +0 -25
  294. package/es/inputs/Input/__stories__/Default.js +0 -25
  295. package/es/inputs/Input/__stories__/IBAN.js +0 -25
  296. package/es/inputs/Input/__stories__/Integer.js +0 -33
  297. package/es/inputs/Input/__stories__/MobilePhone.js +0 -24
  298. package/es/inputs/Input/__stories__/PhoneNumber.js +0 -24
  299. package/es/inputs/Input/__stories__/PostalCode.js +0 -27
  300. package/es/inputs/Input/__stories__/TextWithCharacterLimit.js +0 -31
  301. package/es/inputs/Input/index.js +0 -75
  302. package/es/inputs/Label/Label.stories.js +0 -7
  303. package/es/inputs/Label/__stories__/Default.js +0 -29
  304. package/es/inputs/Label/index.js +0 -25
  305. package/es/inputs/OtpInput/OtpInput.stories.js +0 -7
  306. package/es/inputs/OtpInput/__stories__/Default.js +0 -31
  307. package/es/inputs/OtpInput/index.js +0 -157
  308. package/es/inputs/Radio/Radio.stories.js +0 -9
  309. package/es/inputs/Radio/__stories__/Default.js +0 -47
  310. package/es/inputs/Radio/__stories__/WithDivider.js +0 -48
  311. package/es/inputs/Radio/index.js +0 -61
  312. package/es/inputs/Select/Select.stories.js +0 -7
  313. package/es/inputs/Select/__stories__/Default.js +0 -53
  314. package/es/inputs/Select/index.js +0 -32
  315. package/es/inputs/index.js +0 -8
  316. package/es/internal.js +0 -34
  317. package/es/registry.js +0 -136
  318. package/es/types.js +0 -1
  319. package/es/validators/types.js +0 -1
  320. package/es/validators/utils/iban.js +0 -123
  321. package/es/validators/utils/index.js +0 -102
  322. package/es/validators/utils/number.js +0 -16
  323. package/es/validators/utils/otp.js +0 -26
  324. package/es/validators/utils/phone.js +0 -122
  325. package/es/validators/utils/text_limit.js +0 -54
  326. package/es/validators/validators.spec.js +0 -85
  327. package/esm/Field/FieldBase.js +0 -84
  328. package/esm/Field/FieldBaseContainer.js +0 -43
  329. package/esm/Field/FieldConditional.js +0 -62
  330. package/esm/Field/index.js +0 -76
  331. package/esm/Field/index.mdx +0 -6
  332. package/esm/Field/types.js +0 -1
  333. package/esm/Field/utils.js +0 -162
  334. package/esm/FieldArray/FieldArray.stories.js +0 -8
  335. package/esm/FieldArray/FieldArray.stories.playwright.json +0 -353
  336. package/esm/FieldArray/__stories__/Default.js +0 -90
  337. package/esm/FieldArray/__stories__/WithExactLength.js +0 -90
  338. package/esm/FieldArray/index.js +0 -65
  339. package/esm/FieldObject/index.js +0 -58
  340. package/esm/Fieldset/FieldsetWithContext.js +0 -41
  341. package/esm/Fieldset/index.js +0 -34
  342. package/esm/Fieldset/types.js +0 -1
  343. package/esm/Form.stories.js +0 -3
  344. package/esm/FormBuilder/FormBuilder.mdx +0 -256
  345. package/esm/FormBuilder/FormBuilder.stories.js +0 -7
  346. package/esm/FormBuilder/FormBuilder.stories.playwright.json +0 -52
  347. package/esm/FormBuilder/__stories__/Default.js +0 -28
  348. package/esm/FormBuilder/index.js +0 -2
  349. package/esm/FormContext.js +0 -5
  350. package/esm/MultiplicityField/MultiplicityField.mdx +0 -590
  351. package/esm/MultiplicityField/MultiplicityField.stories.js +0 -12
  352. package/esm/MultiplicityField/MultiplicityField.stories.playwright.json +0 -1370
  353. package/esm/MultiplicityField/__stories__/Default.js +0 -97
  354. package/esm/MultiplicityField/__stories__/PreviewDisplay.js +0 -83
  355. package/esm/MultiplicityField/__stories__/WithMaxLength.js +0 -95
  356. package/esm/MultiplicityField/__stories__/WithMinAndMaxLength.js +0 -96
  357. package/esm/MultiplicityField/index.js +0 -114
  358. package/esm/Questions/Questions.js +0 -84
  359. package/esm/Questions/Questions.stories.js +0 -7
  360. package/esm/Questions/QuestionsContext.js +0 -11
  361. package/esm/Questions/Step/ReviewStep.js +0 -53
  362. package/esm/Questions/Step/Step.js +0 -69
  363. package/esm/Questions/Step/StepArrayReview.js +0 -50
  364. package/esm/Questions/Step/StepDescription.js +0 -27
  365. package/esm/Questions/Step/StepForm.js +0 -48
  366. package/esm/Questions/Step/StepQuote.js +0 -11
  367. package/esm/Questions/Step/StepTitle.js +0 -44
  368. package/esm/Questions/Step/getAddMoreFields.js +0 -22
  369. package/esm/Questions/Step/index.js +0 -13
  370. package/esm/Questions/Step/types.js +0 -1
  371. package/esm/Questions/__snapshots__/index.spec.tsx.snap +0 -596
  372. package/esm/Questions/__stories__/Default.js +0 -108
  373. package/esm/Questions/getNextStep.js +0 -23
  374. package/esm/Questions/index.js +0 -3
  375. package/esm/Questions/index.mdx +0 -415
  376. package/esm/Questions/index.spec.js +0 -62
  377. package/esm/Questions/types.js +0 -1
  378. package/esm/create-simple-form.mdx +0 -539
  379. package/esm/index.js +0 -8
  380. package/esm/index.mdx +0 -51
  381. package/esm/inputs/AutoComplete/AutoComplete.stories.js +0 -7
  382. package/esm/inputs/AutoComplete/__stories__/Default.js +0 -49
  383. package/esm/inputs/AutoComplete/index.js +0 -45
  384. package/esm/inputs/Checkboxes/Checkboxes.stories.js +0 -9
  385. package/esm/inputs/Checkboxes/Checkboxes.stories.playwright.json +0 -85
  386. package/esm/inputs/Checkboxes/__stories__/Conditional.js +0 -95
  387. package/esm/inputs/Checkboxes/__stories__/Default.js +0 -42
  388. package/esm/inputs/Checkboxes/__stories__/WithDivider.js +0 -43
  389. package/esm/inputs/Checkboxes/index.js +0 -100
  390. package/esm/inputs/Checkboxes/index.mdx +0 -0
  391. package/esm/inputs/DateInput/DateInput.stories.js +0 -7
  392. package/esm/inputs/DateInput/DateInput.stories.playwright.json +0 -72
  393. package/esm/inputs/DateInput/__stories__/Default.js +0 -25
  394. package/esm/inputs/DateInput/index.js +0 -155
  395. package/esm/inputs/FileInput/FileInput.stories.js +0 -7
  396. package/esm/inputs/FileInput/FileInput.stories.playwright.json +0 -75
  397. package/esm/inputs/FileInput/__stories__/Default.js +0 -22
  398. package/esm/inputs/FileInput/index.js +0 -62
  399. package/esm/inputs/Input/Input.stories.js +0 -15
  400. package/esm/inputs/Input/Input.stories.playwright.json +0 -376
  401. package/esm/inputs/Input/__stories__/AFM.js +0 -24
  402. package/esm/inputs/Input/__stories__/Boolean.js +0 -25
  403. package/esm/inputs/Input/__stories__/Default.js +0 -25
  404. package/esm/inputs/Input/__stories__/IBAN.js +0 -25
  405. package/esm/inputs/Input/__stories__/Integer.js +0 -33
  406. package/esm/inputs/Input/__stories__/MobilePhone.js +0 -24
  407. package/esm/inputs/Input/__stories__/PhoneNumber.js +0 -24
  408. package/esm/inputs/Input/__stories__/PostalCode.js +0 -27
  409. package/esm/inputs/Input/__stories__/TextWithCharacterLimit.js +0 -31
  410. package/esm/inputs/Input/index.js +0 -75
  411. package/esm/inputs/Input/index.mdx +0 -8
  412. package/esm/inputs/Label/Label.stories.js +0 -7
  413. package/esm/inputs/Label/Label.stories.playwright.json +0 -40
  414. package/esm/inputs/Label/__stories__/Default.js +0 -29
  415. package/esm/inputs/Label/index.js +0 -25
  416. package/esm/inputs/Label/index.mdx +0 -0
  417. package/esm/inputs/OtpInput/OtpInput.stories.js +0 -7
  418. package/esm/inputs/OtpInput/__stories__/Default.js +0 -31
  419. package/esm/inputs/OtpInput/index.js +0 -157
  420. package/esm/inputs/Radio/Radio.stories.js +0 -9
  421. package/esm/inputs/Radio/Radio.stories.playwright.json +0 -73
  422. package/esm/inputs/Radio/__stories__/Conditional.js +0 -95
  423. package/esm/inputs/Radio/__stories__/Default.js +0 -47
  424. package/esm/inputs/Radio/__stories__/WithDivider.js +0 -48
  425. package/esm/inputs/Radio/index.js +0 -61
  426. package/esm/inputs/Radio/index.mdx +0 -0
  427. package/esm/inputs/Select/Select.stories.js +0 -7
  428. package/esm/inputs/Select/Select.stories.playwright.json +0 -22
  429. package/esm/inputs/Select/__stories__/Default.js +0 -53
  430. package/esm/inputs/Select/index.js +0 -32
  431. package/esm/inputs/index.js +0 -8
  432. package/esm/installation.mdx +0 -68
  433. package/esm/internal.js +0 -34
  434. package/esm/registry.js +0 -136
  435. package/esm/types.js +0 -1
  436. package/esm/utils.js +0 -99
  437. package/esm/validators/index.js +0 -186
  438. package/esm/validators/types.js +0 -1
  439. package/esm/validators/utils/afm.js +0 -35
  440. package/esm/validators/utils/file.js +0 -52
  441. package/esm/validators/utils/index.js +0 -102
  442. package/esm/validators/utils/int.js +0 -20
  443. package/esm/validators/utils/number.js +0 -16
  444. package/esm/validators/utils/postal_code.js +0 -29
  445. package/esm/validators/utils/uuid4.js +0 -20
  446. package/esm/validators/validators.spec.js +0 -85
  447. /package/{es → cjs}/Field/index.mdx +0 -0
  448. /package/{es → cjs}/FieldArray/FieldArray.stories.playwright.json +0 -0
  449. /package/{es → cjs}/FormBuilder/FormBuilder.mdx +0 -0
  450. /package/{es → cjs}/FormBuilder/FormBuilder.stories.playwright.json +0 -0
  451. /package/{es → cjs}/MultiplicityField/MultiplicityField.mdx +0 -0
  452. /package/{es → cjs}/MultiplicityField/MultiplicityField.stories.playwright.json +0 -0
  453. /package/{es → cjs}/Questions/__snapshots__/index.spec.tsx.snap +0 -0
  454. /package/{es → cjs}/Questions/index.mdx +0 -0
  455. /package/{es → cjs}/create-simple-form.mdx +0 -0
  456. /package/{es → cjs}/index.mdx +0 -0
  457. /package/{es → cjs}/inputs/Checkboxes/Checkboxes.stories.playwright.json +0 -0
  458. /package/{es → cjs}/inputs/Checkboxes/index.mdx +0 -0
  459. /package/{es → cjs}/inputs/DateInput/DateInput.stories.playwright.json +0 -0
  460. /package/{es → cjs}/inputs/FileInput/FileInput.stories.playwright.json +0 -0
  461. /package/{es → cjs}/inputs/Input/Input.stories.playwright.json +0 -0
  462. /package/{es → cjs}/inputs/Input/index.mdx +0 -0
  463. /package/{es → cjs}/inputs/Label/Label.stories.playwright.json +0 -0
  464. /package/{es → cjs}/inputs/Label/index.mdx +0 -0
  465. /package/{es → cjs}/inputs/Radio/Radio.stories.playwright.json +0 -0
  466. /package/{es → cjs}/inputs/Radio/index.mdx +0 -0
  467. /package/{es → cjs}/inputs/Select/Select.stories.playwright.json +0 -0
  468. /package/{es → cjs}/installation.mdx +0 -0
@@ -1,54 +0,0 @@
1
- export function validateText(value, min, max) {
2
- var validator;
3
-
4
- if (min || max) {
5
- if (value.length < min || value.length > max) {
6
- return validator = false;
7
- } else {
8
- return validator = true;
9
- }
10
- }
11
-
12
- return validator;
13
- }
14
- export var TEXT_LIMIT_VALIDATOR = function TEXT_LIMIT_VALIDATOR(field) {
15
- var _field$extra, _field$extra$limit, _field$extra2, _field$extra2$limit;
16
-
17
- var min = field === null || field === void 0 ? void 0 : (_field$extra = field.extra) === null || _field$extra === void 0 ? void 0 : (_field$extra$limit = _field$extra.limit) === null || _field$extra$limit === void 0 ? void 0 : _field$extra$limit.min;
18
- var max = field === null || field === void 0 ? void 0 : (_field$extra2 = field.extra) === null || _field$extra2 === void 0 ? void 0 : (_field$extra2$limit = _field$extra2.limit) === null || _field$extra2$limit === void 0 ? void 0 : _field$extra2$limit.max;
19
- return {
20
- name: 'text-limit-validator',
21
- message: function message(v) {
22
- if (min || max) {
23
- if (v.value.length < min) {
24
- var _field$extra3, _field$extra3$limit;
25
-
26
- return {
27
- key: 'form.error.text.less_than',
28
- context: {
29
- min: field === null || field === void 0 ? void 0 : (_field$extra3 = field.extra) === null || _field$extra3 === void 0 ? void 0 : (_field$extra3$limit = _field$extra3.limit) === null || _field$extra3$limit === void 0 ? void 0 : _field$extra3$limit.min
30
- }
31
- };
32
- }
33
-
34
- if (v.value.length > max) {
35
- var _field$extra4, _field$extra4$limit;
36
-
37
- return {
38
- key: 'form.error.text.more_than',
39
- context: {
40
- max: field === null || field === void 0 ? void 0 : (_field$extra4 = field.extra) === null || _field$extra4 === void 0 ? void 0 : (_field$extra4$limit = _field$extra4.limit) === null || _field$extra4$limit === void 0 ? void 0 : _field$extra4$limit.max
41
- }
42
- };
43
- }
44
- }
45
- },
46
- test: function test(value) {
47
- if (!value) {
48
- return true;
49
- }
50
-
51
- return validateText(value, min, max);
52
- }
53
- };
54
- };
@@ -1,85 +0,0 @@
1
- import { validateUUID4, validateIban, validatePostalCode, validatePhoneNumber } from '@digigov/form/validators/utils';
2
- it('validates wrong uuid4 for empty value', function () {
3
- expect(validateUUID4('')).toBe(false);
4
- });
5
- it('validates wrong uuid4 because of length', function () {
6
- expect(validateUUID4('9e463bc44a294bab8ee23af6cc3cbbe3')).toBe(false);
7
- });
8
- it('validates wrong uuid4 with correct length and wrong form', function () {
9
- expect(validateUUID4('ab123cd1-1234-ad34-ad45-12345abcdefg')).toBe(false);
10
- });
11
- it('validates correct uuid4 validator', function () {
12
- expect(validateUUID4('9e463bc4-4a29-4bab-8ee2-3af6cc3cbbe3')).toBe(true);
13
- });
14
- it('validates correct gr iban', function () {
15
- expect(validateIban('GR7801100800000008009825202', 'GR')).toBe(true);
16
- });
17
- it('validates correct iban with spaces and dashes', function () {
18
- expect(validateIban('GR 7801-1008 0000-0008 0098-25202', 'GR')).toBe(true);
19
- });
20
- it('validates correct foreign iban', function () {
21
- expect(validateIban('DE75512108001245126199', 'DE')).toBe(true);
22
- });
23
- it('validates wrong iban for empty value', function () {
24
- expect(validateIban('', '')).toBe(false);
25
- });
26
- it('validates wrong greek iban for wrong length', function () {
27
- expect(validateIban('GR78011008000000080098252020', 'gr')).toBe(false);
28
- });
29
- it('validates wrong iban for non existing country code', function () {
30
- expect(validateIban('AAA78011008000000080098252020', 'aaa')).toBe(false);
31
- });
32
- it('validates correct greek iban whithout country code', function () {
33
- expect(validateIban('7801100800000008009825202', '')).toBe(true);
34
- });
35
- it('validates wrong postal code without country code', function () {
36
- expect(validatePostalCode('123', [])).toBe(true);
37
- });
38
- it('validates wrong postal code with wrong country code', function () {
39
- expect(validatePostalCode('123', ['FR'])).toBe(true);
40
- });
41
- it('validates wrong postal code with greek country code', function () {
42
- expect(validatePostalCode('123', ['GR'])).toBe(false);
43
- });
44
- it('validates postal code with greek country code', function () {
45
- expect(validatePostalCode('11143', ['GR'])).toBe(true);
46
- });
47
- it('validates phone number type landline with greek country code', function () {
48
- expect(validatePhoneNumber('2102934896', ['GR'], 'landline')).toBe(true);
49
- });
50
- it('validates phone number type landline with ch country code', function () {
51
- expect(validatePhoneNumber('2102934896', ['CH'], 'landline')).toBe(false);
52
- });
53
- it('validates phone number type landline with ch and gr countries code', function () {
54
- expect(validatePhoneNumber('2102934896', ['GR', 'CH'], 'landline')).toBe(true);
55
- });
56
- it('validatesphone number type landline with ch and gr countries code', function () {
57
- expect(validatePhoneNumber('41446681800', ['GR', 'CH'], 'landline')).toBe(true);
58
- });
59
- it('validates phone number type landline with ch and gr countries code but phone number is mobile', function () {
60
- expect(validatePhoneNumber('2102934896', ['GR', 'CH'], 'mobile')).toBe(false);
61
- });
62
- it('validates phone number type mobile with ch and gr countries code', function () {
63
- expect(validatePhoneNumber('6934100982', ['GR', 'CH'], 'mobile')).toBe(true);
64
- });
65
- it('validates phone number type mobile with gr country code', function () {
66
- expect(validatePhoneNumber('6934100982', ['GR'], 'mobile')).toBe(true);
67
- });
68
- it('validates phone number type mobile with ch country code', function () {
69
- expect(validatePhoneNumber('6934100982', ['CH'], 'mobile')).toBe(false);
70
- });
71
- it('validates phone number with no type and ch country code', function () {
72
- expect(validatePhoneNumber('6934100982', ['CH'], null)).toBe(false);
73
- });
74
- it('validates phone number with no type and gr country code', function () {
75
- expect(validatePhoneNumber('6934100982', ['gr'], null)).toBe(true);
76
- });
77
- it('validates phone number with no type and ch country code', function () {
78
- expect(validatePhoneNumber('41446681800', ['CH'], null)).toBe(true);
79
- });
80
- it('validates phone number with no type and gr country code', function () {
81
- expect(validatePhoneNumber('41446681800', ['gr'], null)).toBe(false);
82
- });
83
- it('validates phone number with no type and gr and ch countries code', function () {
84
- expect(validatePhoneNumber('41446681800', ['gr', 'ch'], null)).toBe(true);
85
- });
@@ -1,84 +0,0 @@
1
- import _extends from "@babel/runtime/helpers/extends";
2
- import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
- var _excluded = ["required", "name", "component", "wrapper", "control", "type", "controlled", "enabled", "editable", "defaultValue", "label", "extra", "layout", "error", "register"];
4
- import React from 'react';
5
- import { Controller } from 'react-hook-form';
6
- import FieldBaseContainer from '@digigov/form/Field/FieldBaseContainer';
7
- export var FieldBase = function FieldBase(props) {
8
- var required = props.required,
9
- name = props.name,
10
- Component = props.component,
11
- wrapper = props.wrapper,
12
- control = props.control,
13
- type = props.type,
14
- _props$controlled = props.controlled,
15
- controlled = _props$controlled === void 0 ? false : _props$controlled,
16
- _props$enabled = props.enabled,
17
- enabled = _props$enabled === void 0 ? true : _props$enabled,
18
- editable = props.editable,
19
- defaultValue = props.defaultValue,
20
- label = props.label,
21
- _props$extra = props.extra,
22
- extra = _props$extra === void 0 ? {} : _props$extra,
23
- layout = props.layout,
24
- error = props.error,
25
- register = props.register,
26
- componentProps = _objectWithoutProperties(props, _excluded);
27
-
28
- if (!enabled) {
29
- return null;
30
- }
31
-
32
- if (controlled) {
33
- return /*#__PURE__*/React.createElement(FieldBaseContainer, {
34
- label: label,
35
- layout: layout,
36
- error: error,
37
- wrapper: wrapper,
38
- name: name
39
- }, /*#__PURE__*/React.createElement(Controller, {
40
- control: control,
41
- name: name,
42
- render: function render(_ref) {
43
- var field = _ref.field;
44
- return /*#__PURE__*/React.createElement(Component, _extends({}, field, {
45
- defaultValue: defaultValue,
46
- extra: extra,
47
- error: !!error,
48
- type: type,
49
- "aria-required": !!required,
50
- "aria-describedby": error && "".concat(name, "-error"),
51
- required: required,
52
- disabled: editable === false
53
- }, componentProps));
54
- }
55
- }));
56
- }
57
-
58
- return /*#__PURE__*/React.createElement(FieldBaseContainer, {
59
- label: label,
60
- layout: layout,
61
- error: error,
62
- wrapper: wrapper,
63
- name: name
64
- }, Component !== null && Component !== void 0 && Component.render ? /*#__PURE__*/React.createElement(Component, _extends({}, register(name), {
65
- control: control,
66
- error: !!error,
67
- extra: extra,
68
- type: type,
69
- "aria-required": !!required,
70
- "aria-describedby": error && "".concat(name, "-error"),
71
- required: required,
72
- disabled: editable === false
73
- }, componentProps)) : /*#__PURE__*/React.createElement(Component, _extends({}, register(name), {
74
- register: register,
75
- control: control,
76
- error: !!error,
77
- extra: extra,
78
- type: type,
79
- "aria-required": !!required,
80
- "aria-describedby": error && "".concat(name, "-error"),
81
- required: required,
82
- disabled: editable === false
83
- }, componentProps)));
84
- };
@@ -1,43 +0,0 @@
1
- import _extends from "@babel/runtime/helpers/extends";
2
- import React from 'react';
3
- import Label from '@digigov/form/inputs/Label';
4
- import ErrorMessage from '@digigov/react-core/ErrorMessage';
5
- import FieldContainer from '@digigov/react-core/FieldContainer';
6
- import CoreFieldset from '@digigov/react-core/Fieldset';
7
- import FieldsetLegend from '@digigov/react-core/FieldsetLegend';
8
- import Hint from '@digigov/react-core/Hint';
9
- import LabelContainer from '@digigov/react-core/LabelContainer';
10
- import { useTranslation } from '@digigov/ui/i18n';
11
- export var FieldBaseContainer = function FieldBaseContainer(_ref) {
12
- var name = _ref.name,
13
- wrapper = _ref.wrapper,
14
- label = _ref.label,
15
- children = _ref.children,
16
- error = _ref.error,
17
- layout = _ref.layout;
18
-
19
- var _useTranslation = useTranslation(),
20
- t = _useTranslation.t;
21
-
22
- var errorMessage = error !== null && error !== void 0 && error.message.key ? error.message.key : (error === null || error === void 0 ? void 0 : error.message) || '';
23
- var errorContext = (error === null || error === void 0 ? void 0 : error.message.context) || {};
24
-
25
- if (wrapper === 'fieldset') {
26
- return /*#__PURE__*/React.createElement(FieldContainer, _extends({
27
- error: !!error
28
- }, layout), /*#__PURE__*/React.createElement(CoreFieldset, null, /*#__PURE__*/React.createElement(FieldsetLegend, {
29
- size: "sm"
30
- }, label && label.primary), label && label.secondary && /*#__PURE__*/React.createElement(Hint, null, t(label.secondary)), error && /*#__PURE__*/React.createElement(ErrorMessage, {
31
- id: "".concat(name, "-error")
32
- }, t(errorMessage, errorContext)), children));
33
- } else {
34
- return /*#__PURE__*/React.createElement(FieldContainer, _extends({
35
- error: !!error
36
- }, layout), /*#__PURE__*/React.createElement(LabelContainer, null, label && /*#__PURE__*/React.createElement(Label, {
37
- label: label
38
- }), error && /*#__PURE__*/React.createElement(ErrorMessage, {
39
- id: "".concat(name, "-error")
40
- }, t(errorMessage, errorContext)), children));
41
- }
42
- };
43
- export default FieldBaseContainer;
@@ -1,62 +0,0 @@
1
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
- import _extends from "@babel/runtime/helpers/extends";
3
- import React from 'react';
4
- import { useWatch } from 'react-hook-form';
5
- import { FieldBase } from '@digigov/form/Field/FieldBase';
6
- import { evaluateFieldWithConditions } from '@digigov/form/Field/utils';
7
- var ChildFieldMemo = /*#__PURE__*/React.memo(function ChildField(_ref) {
8
- var dependencies = _ref.dependencies,
9
- field = _ref.field,
10
- control = _ref.control,
11
- reset = _ref.reset,
12
- register = _ref.register,
13
- error = _ref.error;
14
- var newField = evaluateFieldWithConditions(field, dependencies);
15
- return /*#__PURE__*/React.createElement(FieldBase, _extends({}, newField, {
16
- name: newField.key,
17
- reset: reset,
18
- control: control,
19
- register: register,
20
- error: error
21
- }));
22
- }, function (prev, next) {
23
- if (!prev || !prev.dependencies) {
24
- return false;
25
- }
26
-
27
- if (prev.error !== next.error) {
28
- return false;
29
- }
30
-
31
- for (var dep in next.dependencies) {
32
- if (next.dependencies[dep] !== prev.dependencies[dep]) {
33
- return false;
34
- }
35
- }
36
-
37
- return true;
38
- });
39
- export var FieldConditional = function FieldConditional(_ref2) {
40
- var control = _ref2.control,
41
- field = _ref2.field,
42
- register = _ref2.register,
43
- reset = _ref2.reset,
44
- error = _ref2.error;
45
- var dependencyKeys = Object.keys(field.condition);
46
- var dependencyValues = useWatch({
47
- name: dependencyKeys,
48
- control: control
49
- });
50
- var variables = dependencyKeys.reduce(function (data, fieldKey, index) {
51
- return _extends({}, data, _defineProperty({}, fieldKey, dependencyValues[index]));
52
- }, {});
53
- return /*#__PURE__*/React.createElement(ChildFieldMemo, {
54
- dependencies: variables,
55
- field: field,
56
- control: control,
57
- register: register,
58
- reset: reset,
59
- error: error
60
- });
61
- };
62
- export default FieldConditional;
@@ -1,76 +0,0 @@
1
- import _extends from "@babel/runtime/helpers/extends";
2
- import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
- var _excluded = ["name", "children"];
4
- import React, { useMemo } from 'react';
5
- import { FieldBase } from '@digigov/form/Field/FieldBase';
6
- import FieldConditional from '@digigov/form/Field/FieldConditional';
7
- import { useField, calculateField } from '@digigov/form/Field/utils';
8
- import FieldArray from '@digigov/form/FieldArray';
9
- import Multiplicity from '@digigov/form/MultiplicityField';
10
- export var Field = function Field(_ref) {
11
- var name = _ref.name,
12
- children = _ref.children,
13
- customField = _objectWithoutProperties(_ref, _excluded);
14
-
15
- var _useField = useField(name, customField !== null && customField !== void 0 && customField.type ? customField : null),
16
- field = _useField.field,
17
- control = _useField.control,
18
- register = _useField.register,
19
- reset = _useField.reset,
20
- error = _useField.error,
21
- componentRegistry = _useField.componentRegistry,
22
- formState = _useField.formState,
23
- setValue = _useField.setValue,
24
- getValues = _useField.getValues,
25
- unregister = _useField.unregister,
26
- trigger = _useField.trigger,
27
- clearErrors = _useField.clearErrors;
28
-
29
- var calculatedField = useMemo(function () {
30
- return calculateField(children, field, componentRegistry);
31
- }, [field]);
32
-
33
- if (calculatedField.condition) {
34
- return /*#__PURE__*/React.createElement(FieldConditional, {
35
- control: control,
36
- reset: reset,
37
- register: register,
38
- field: calculatedField,
39
- error: error
40
- });
41
- }
42
-
43
- if (calculatedField.type === 'array' && !calculatedField.multiplicity) {
44
- calculatedField.name = name;
45
- return /*#__PURE__*/React.createElement(FieldArray, _extends({
46
- control: control,
47
- register: register,
48
- error: error,
49
- formState: formState
50
- }, calculatedField));
51
- }
52
-
53
- if (calculatedField.type === 'array' && calculatedField.multiplicity === true) {
54
- calculatedField.name = name;
55
- return /*#__PURE__*/React.createElement(Multiplicity, _extends({
56
- control: control,
57
- register: register,
58
- trigger: trigger,
59
- clearErrors: clearErrors,
60
- error: error,
61
- formState: formState,
62
- setValue: setValue,
63
- getValues: getValues,
64
- unregister: unregister
65
- }, calculatedField));
66
- }
67
-
68
- return /*#__PURE__*/React.createElement(FieldBase, _extends({}, calculatedField, {
69
- name: name,
70
- control: control,
71
- register: register,
72
- reset: reset,
73
- error: error
74
- }));
75
- };
76
- export default Field;
@@ -1,6 +0,0 @@
1
- ---
2
- title: Form
3
- parent: docs/form/components
4
- ---
5
-
6
- hello md
@@ -1 +0,0 @@
1
- export {};
@@ -1,162 +0,0 @@
1
- import _extends from "@babel/runtime/helpers/extends";
2
- import { lazy, useContext, useMemo } from 'react';
3
- import { FormContext } from '@digigov/form/FormContext';
4
- import Checkboxes from '@digigov/form/inputs/Checkboxes';
5
- import DateInput from '@digigov/form/inputs/DateInput';
6
- import FileInput from '@digigov/form/inputs/FileInput';
7
- import Input from '@digigov/form/inputs/Input';
8
- import OtpInput from '@digigov/form/inputs/OtpInput';
9
- import Radio from '@digigov/form/inputs/Radio';
10
- import Select from '@digigov/form/inputs/Select';
11
- var AutoComplete = /*#__PURE__*/lazy(function () {
12
- return import('@digigov/form/inputs/AutoComplete');
13
- });
14
- var FIELD_COMPONENTS = {
15
- text: {
16
- component: Input
17
- },
18
- string: {
19
- component: Input
20
- },
21
- file: {
22
- wrapper: 'fieldset',
23
- component: FileInput
24
- },
25
- date: {
26
- wrapper: 'fieldset',
27
- controlled: true,
28
- component: DateInput
29
- },
30
- otp: {
31
- wrapper: 'fieldset',
32
- controlled: true,
33
- component: OtpInput
34
- },
35
- 'choice:multiple': {
36
- wrapper: 'fieldset',
37
- controlled: true,
38
- component: Checkboxes
39
- },
40
- 'choice:single': {
41
- wrapper: 'fieldset',
42
- controlled: false,
43
- component: Radio
44
- }
45
- };
46
- var ALTERNATIVE_COMPONENTS = {
47
- Select: {
48
- component: Select,
49
- controlled: false
50
- },
51
- AutoComplete: {
52
- component: AutoComplete,
53
- controlled: true
54
- }
55
- };
56
- export function calculateField(children, field, componentRegistry) {
57
- var _field$extra;
58
-
59
- var calculatedField = _extends({}, field);
60
-
61
- var fieldComponentRegistry = _extends({}, FIELD_COMPONENTS, componentRegistry);
62
-
63
- if (children) {
64
- calculatedField.component = children;
65
- calculatedField.controlled = true;
66
- } else if (typeof field.component === 'function') {// leave as is
67
- } else if (!field.component && !field.type) {
68
- var _fieldComponentRegist;
69
-
70
- calculatedField.component = fieldComponentRegistry.string.component;
71
- calculatedField.controlled = ((_fieldComponentRegist = fieldComponentRegistry.string) === null || _fieldComponentRegist === void 0 ? void 0 : _fieldComponentRegist.controlled) || false;
72
- } else if (typeof (field === null || field === void 0 ? void 0 : (_field$extra = field.extra) === null || _field$extra === void 0 ? void 0 : _field$extra.component) === 'string' && ALTERNATIVE_COMPONENTS[field.extra.component]) {
73
- var _ALTERNATIVE_COMPONEN;
74
-
75
- calculatedField.controlled = ((_ALTERNATIVE_COMPONEN = ALTERNATIVE_COMPONENTS[field.extra.component]) === null || _ALTERNATIVE_COMPONEN === void 0 ? void 0 : _ALTERNATIVE_COMPONEN.controlled) || false;
76
- calculatedField.component = ALTERNATIVE_COMPONENTS[field.extra.component].component;
77
- } else if (!field.component && field.type && fieldComponentRegistry[field.type]) {
78
- var _fieldComponentRegist2;
79
-
80
- calculatedField.component = fieldComponentRegistry[field.type].component;
81
- calculatedField.wrapper = fieldComponentRegistry[field.type].wrapper;
82
- calculatedField.controlled = ((_fieldComponentRegist2 = fieldComponentRegistry[field.type]) === null || _fieldComponentRegist2 === void 0 ? void 0 : _fieldComponentRegist2.controlled) || false;
83
- } else {
84
- var _fieldComponentRegist3;
85
-
86
- calculatedField.component = fieldComponentRegistry.string.component;
87
- calculatedField.controlled = ((_fieldComponentRegist3 = fieldComponentRegistry.string) === null || _fieldComponentRegist3 === void 0 ? void 0 : _fieldComponentRegist3.controlled) || false;
88
- }
89
-
90
- return calculatedField;
91
- }
92
- export var useField = function useField(name, customField) {
93
- var _useContext = useContext(FormContext),
94
- fieldsMap = _useContext.fieldsMap,
95
- control = _useContext.control,
96
- register = _useContext.register,
97
- reset = _useContext.reset,
98
- trigger = _useContext.trigger,
99
- clearErrors = _useContext.clearErrors,
100
- errors = _useContext.errors,
101
- registerField = _useContext.registerField,
102
- watch = _useContext.watch,
103
- componentRegistry = _useContext.componentRegistry,
104
- getFieldState = _useContext.getFieldState,
105
- setValue = _useContext.setValue,
106
- getValues = _useContext.getValues,
107
- unregister = _useContext.unregister,
108
- formState = _useContext.formState;
109
-
110
- if (!registerField) {
111
- throw new Error("\n You can't use the Field component without wrapping it in FormBuilder.\n https://devs.pages.grnet.gr/digigov/digigov-sdk/sdk-docs/forms/create-simple-form/\n ");
112
- }
113
-
114
- useMemo(function () {
115
- return (customField === null || customField === void 0 ? void 0 : customField.type) && registerField(_extends({}, customField, {
116
- key: name
117
- }));
118
- }, [customField, name, registerField]);
119
- return {
120
- field: customField || fieldsMap[name],
121
- control: control,
122
- register: register,
123
- reset: reset,
124
- trigger: trigger,
125
- watch: watch,
126
- componentRegistry: componentRegistry,
127
- getFieldState: getFieldState,
128
- setValue: setValue,
129
- clearErrors: clearErrors,
130
- getValues: getValues,
131
- unregister: unregister,
132
- formState: formState,
133
- error: errors[name]
134
- };
135
- };
136
- export function evaluateFieldWithConditions(field, variables) {
137
- var newField = _extends({}, field);
138
-
139
- if (variables) {
140
- for (var key in variables) {
141
- if (field.condition[key] && field.condition[key].is) {
142
- var is = field.condition[key].is;
143
-
144
- if (is === variables[key] || Array.isArray(variables[key]) && variables[key].includes(is)) {
145
- var then = field.condition[key].then || {};
146
-
147
- for (var attr in then) {
148
- newField[attr] = then[attr];
149
- }
150
- }
151
- } else if (field.condition[key]) {
152
- var otherwise = field.condition[key]["else"] || {};
153
-
154
- for (var _attr in otherwise) {
155
- newField[_attr] = otherwise[_attr];
156
- }
157
- }
158
- }
159
- }
160
-
161
- return newField;
162
- }
@@ -1,8 +0,0 @@
1
- import FieldArray from '@digigov/form/FieldArray';
2
- export default {
3
- title: 'Digigov Form/FieldArray',
4
- component: FieldArray,
5
- displayName: 'FieldArray'
6
- };
7
- export * from '@digigov/form/FieldArray/__stories__/Default';
8
- export * from '@digigov/form/FieldArray/__stories__/WithExactLength';