@digigov/form 2.0.0-8de46296 → 2.0.0-96651090

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 (795) hide show
  1. package/Field/ErrorGroup.d.ts +15 -0
  2. package/Field/ErrorGroup.js +53 -0
  3. package/Field/FieldBase.d.ts +1 -1
  4. package/Field/FieldBase.js +77 -0
  5. package/Field/FieldBaseContainer.d.ts +2 -2
  6. package/Field/FieldBaseContainer.js +43 -0
  7. package/Field/FieldConditional.d.ts +1 -1
  8. package/Field/FieldConditional.js +45 -0
  9. package/Field/index.d.ts +1 -1
  10. package/Field/index.js +70 -68
  11. package/Field/types.d.ts +61 -11
  12. package/Field/utils/evaluateFieldWithConditions.d.ts +2 -0
  13. package/Field/utils/evaluateFieldWithConditions.js +19 -0
  14. package/Field/utils/resolveField.d.ts +3 -0
  15. package/Field/utils/resolveField.js +32 -0
  16. package/Field/utils/useField.d.ts +2 -0
  17. package/Field/utils/useField.js +47 -0
  18. package/FieldArray/BaseFieldArray.d.ts +5 -0
  19. package/FieldArray/BaseFieldArray.js +46 -0
  20. package/FieldArray/FormDialog/ArrayDisplay/ArrayContainerDisplay.d.ts +9 -0
  21. package/FieldArray/FormDialog/ArrayDisplay/ArrayContainerDisplay.js +13 -0
  22. package/FieldArray/FormDialog/ArrayDisplay/ArrayItemDisplay.d.ts +26 -0
  23. package/FieldArray/FormDialog/ArrayDisplay/ArrayItemDisplay.js +117 -0
  24. package/FieldArray/FormDialog/ArrayDisplay/ArrayItemHeader.d.ts +5 -0
  25. package/FieldArray/FormDialog/ArrayDisplay/ArrayItemHeader.js +6 -0
  26. package/FieldArray/FormDialog/ArrayDisplay/index.d.ts +15 -0
  27. package/FieldArray/FormDialog/ArrayDisplay/index.js +32 -0
  28. package/FieldArray/FormDialog/ArrayEditModal.d.ts +24 -0
  29. package/FieldArray/FormDialog/ArrayEditModal.js +138 -0
  30. package/FieldArray/FormDialog/index.d.ts +19 -0
  31. package/FieldArray/FormDialog/index.js +199 -0
  32. package/FieldArray/index.d.ts +11 -2
  33. package/FieldArray/index.js +65 -60
  34. package/FieldObject/index.d.ts +11 -3
  35. package/FieldObject/index.js +53 -52
  36. package/Fieldset/FieldsetWithContext.js +27 -0
  37. package/Fieldset/index.d.ts +2 -2
  38. package/Fieldset/index.js +18 -32
  39. package/Fieldset/types.d.ts +3 -2
  40. package/FormBuilder/index.d.ts +8 -1
  41. package/FormBuilder/index.js +239 -2
  42. package/FormContext.d.ts +3 -2
  43. package/FormContext.js +7 -0
  44. package/MultiplicityField/add-objects.d.ts +3 -2
  45. package/MultiplicityField/add-objects.js +107 -0
  46. package/MultiplicityField/index.d.ts +2 -19
  47. package/MultiplicityField/index.js +84 -106
  48. package/MultiplicityField/types.d.ts +19 -0
  49. package/Questions/Questions.d.ts +1 -1
  50. package/Questions/Questions.js +48 -0
  51. package/Questions/QuestionsContext.d.ts +1 -2
  52. package/Questions/QuestionsContext.js +10 -0
  53. package/Questions/Step/ReviewStep.js +32 -0
  54. package/Questions/Step/Step.d.ts +1 -1
  55. package/Questions/Step/Step.js +39 -0
  56. package/Questions/Step/StepArrayReview.d.ts +1 -1
  57. package/Questions/Step/StepArrayReview.js +35 -0
  58. package/Questions/Step/StepContext.d.ts +1 -2
  59. package/Questions/Step/StepContext.js +28 -0
  60. package/Questions/Step/StepDescription.d.ts +1 -1
  61. package/Questions/Step/StepDescription.js +18 -0
  62. package/Questions/Step/StepForm.d.ts +2 -2
  63. package/Questions/Step/StepForm.js +29 -0
  64. package/Questions/Step/StepQuote.d.ts +1 -1
  65. package/Questions/Step/StepQuote.js +5 -0
  66. package/Questions/Step/StepTitle.d.ts +2 -1
  67. package/Questions/Step/StepTitle.js +25 -0
  68. package/Questions/Step/getAddMoreFields.d.ts +2 -2
  69. package/Questions/Step/getAddMoreFields.js +24 -0
  70. package/Questions/Step/index.d.ts +11 -12
  71. package/Questions/Step/index.js +13 -13
  72. package/Questions/Step/types.d.ts +2 -1
  73. package/Questions/getNextStep.d.ts +1 -1
  74. package/Questions/getNextStep.js +13 -0
  75. package/Questions/index.d.ts +2 -2
  76. package/Questions/index.js +4 -3
  77. package/Questions/types.d.ts +2 -1
  78. package/hooks/useFieldFocusManager.d.ts +25 -0
  79. package/hooks/useFieldFocusManager.js +83 -0
  80. package/hooks/utils.d.ts +18 -0
  81. package/hooks/utils.js +60 -0
  82. package/index.d.ts +5 -2
  83. package/index.js +8 -4
  84. package/inputs/AutoCompleteInput/index.d.ts +5 -5
  85. package/inputs/AutoCompleteInput/index.js +42 -41
  86. package/inputs/Checkboxes/index.d.ts +7 -4
  87. package/inputs/Checkboxes/index.js +50 -91
  88. package/inputs/DateInput/index.d.ts +3 -7
  89. package/inputs/DateInput/index.js +128 -125
  90. package/inputs/DateTimeInput/index.d.ts +10 -0
  91. package/inputs/DateTimeInput/index.js +190 -0
  92. package/inputs/FileInput/index.d.ts +18 -2
  93. package/inputs/FileInput/index.js +59 -56
  94. package/inputs/ImageInput/index.d.ts +10 -2
  95. package/inputs/ImageInput/index.js +94 -74
  96. package/inputs/Input/index.d.ts +5 -2
  97. package/inputs/Input/index.js +67 -67
  98. package/inputs/Label/index.d.ts +2 -4
  99. package/inputs/Label/index.js +13 -21
  100. package/inputs/OtpInput/index.d.ts +9 -6
  101. package/inputs/OtpInput/index.js +121 -138
  102. package/inputs/Radio/index.d.ts +10 -3
  103. package/inputs/Radio/index.js +72 -56
  104. package/inputs/Select/index.d.ts +7 -4
  105. package/inputs/Select/index.js +23 -30
  106. package/inputs/index.d.ts +9 -9
  107. package/inputs/index.js +10 -9
  108. package/inputs/registry.d.ts +5 -0
  109. package/inputs/registry.js +80 -0
  110. package/internal.d.ts +5 -34
  111. package/internal.js +6 -0
  112. package/lazy.d.ts +97 -0
  113. package/lazy.js +163 -0
  114. package/package.json +12 -13
  115. package/registry.d.ts +43 -25
  116. package/registry.js +170 -0
  117. package/src/Field/ErrorGroup.tsx +84 -0
  118. package/src/Field/FieldBase.tsx +43 -24
  119. package/src/Field/FieldBaseContainer.tsx +71 -47
  120. package/src/Field/FieldConditional.tsx +10 -2
  121. package/src/Field/doc.mdx +207 -0
  122. package/src/Field/index.tsx +37 -23
  123. package/src/Field/types.tsx +92 -13
  124. package/src/Field/utils/evaluateFieldWithConditions.ts +33 -0
  125. package/src/Field/utils/resolveField.ts +58 -0
  126. package/src/Field/utils/useField.ts +68 -0
  127. package/src/FieldArray/BaseFieldArray.tsx +97 -0
  128. package/src/FieldArray/FieldArray.stories.js +4 -2
  129. package/src/FieldArray/FormDialog/ArrayDisplay/ArrayContainerDisplay.tsx +45 -0
  130. package/src/FieldArray/FormDialog/ArrayDisplay/ArrayDisplay.stories.js +14 -0
  131. package/src/FieldArray/FormDialog/ArrayDisplay/ArrayItemDisplay.tsx +337 -0
  132. package/src/FieldArray/FormDialog/ArrayDisplay/ArrayItemHeader.tsx +15 -0
  133. package/src/FieldArray/FormDialog/ArrayDisplay/__stories__/Cards.tsx +88 -0
  134. package/src/FieldArray/FormDialog/ArrayDisplay/__stories__/Default.tsx +93 -0
  135. package/src/FieldArray/FormDialog/ArrayDisplay/__stories__/ReadOnly.tsx +79 -0
  136. package/src/FieldArray/FormDialog/ArrayDisplay/__stories__/ReadOnlyCards.tsx +75 -0
  137. package/src/FieldArray/FormDialog/ArrayDisplay/__stories__/Sortable.tsx +93 -0
  138. package/src/FieldArray/FormDialog/ArrayDisplay/__stories__/SortableCards.tsx +88 -0
  139. package/src/FieldArray/FormDialog/ArrayDisplay/index.test.tsx +44 -0
  140. package/src/FieldArray/FormDialog/ArrayDisplay/index.tsx +67 -0
  141. package/src/FieldArray/FormDialog/ArrayEditModal.tsx +241 -0
  142. package/src/FieldArray/FormDialog/index.tsx +302 -0
  143. package/src/FieldArray/__stories__/CardsWithError.tsx +124 -0
  144. package/src/FieldArray/__stories__/Default.tsx +2 -1
  145. package/src/FieldArray/__stories__/WithExactLength.tsx +2 -1
  146. package/src/FieldArray/__stories__/WithModal.tsx +160 -0
  147. package/src/FieldArray/__tests__/fieldset-multiplicity.spec.tsx +271 -0
  148. package/src/FieldArray/__tests__/multiplicity-attachment.spec.tsx +280 -0
  149. package/src/FieldArray/__tests__/multiplicity-optional.spec.tsx +232 -0
  150. package/src/FieldArray/__tests__/multiplicity-required.spec.tsx +170 -0
  151. package/src/FieldArray/__tests__/nested-fieldset-multiplicity.spec.tsx +627 -0
  152. package/src/FieldArray/__tests__/preference-multiple-choice.spec.tsx +222 -0
  153. package/src/FieldArray/index.spec.tsx +355 -0
  154. package/src/FieldArray/index.test.tsx +36 -0
  155. package/src/FieldArray/index.tsx +84 -55
  156. package/src/FieldObject/index.tsx +53 -27
  157. package/src/Fieldset/FieldsetWithContext.tsx +1 -1
  158. package/src/Fieldset/index.tsx +6 -6
  159. package/src/Fieldset/types.tsx +5 -3
  160. package/src/FormBuilder/FormBuilder.stories.js +6 -1
  161. package/src/FormBuilder/__stories__/AutoErrorGrouping.tsx +63 -0
  162. package/src/FormBuilder/__stories__/Default.tsx +1 -1
  163. package/src/FormBuilder/__stories__/ErrorGrouping.tsx +43 -0
  164. package/src/FormBuilder/{FormBuilder.mdx → doc.mdx} +27 -35
  165. package/src/FormBuilder/index.test.tsx +32 -0
  166. package/src/FormBuilder/index.tsx +314 -1
  167. package/src/FormBuilder/interaction.test.tsx +40 -0
  168. package/src/FormBuilder/scenarios.test.tsx +2775 -0
  169. package/src/FormContext.tsx +7 -3
  170. package/src/MultiplicityField/MultiplicityField.stories.js +9 -6
  171. package/src/MultiplicityField/__stories__/Default.tsx +1 -1
  172. package/src/MultiplicityField/__stories__/PreviewDisplay.tsx +4 -6
  173. package/src/MultiplicityField/__stories__/WithExactLength.tsx +2 -2
  174. package/src/MultiplicityField/__stories__/WithMaxLength.tsx +2 -2
  175. package/src/MultiplicityField/__stories__/WithMinAndMaxLength.tsx +2 -2
  176. package/src/MultiplicityField/__stories__/WithMinLength.tsx +2 -2
  177. package/src/MultiplicityField/add-objects.tsx +39 -30
  178. package/{cjs/MultiplicityField/MultiplicityField.mdx → src/MultiplicityField/doc.mdx} +112 -98
  179. package/src/MultiplicityField/index.test.tsx +44 -0
  180. package/src/MultiplicityField/index.tsx +21 -31
  181. package/src/MultiplicityField/types.ts +25 -0
  182. package/src/Questions/Questions.stories.js +4 -1
  183. package/src/Questions/Questions.tsx +6 -6
  184. package/src/Questions/QuestionsContext.tsx +1 -1
  185. package/src/Questions/Step/Step.tsx +1 -1
  186. package/src/Questions/Step/StepArrayReview.tsx +3 -3
  187. package/src/Questions/Step/StepContext.tsx +1 -1
  188. package/src/Questions/Step/StepDescription.tsx +2 -1
  189. package/src/Questions/Step/StepForm.tsx +2 -2
  190. package/src/Questions/Step/StepQuote.tsx +2 -1
  191. package/src/Questions/Step/StepTitle.tsx +6 -3
  192. package/src/Questions/Step/getAddMoreFields.tsx +2 -2
  193. package/src/Questions/Step/index.ts +0 -1
  194. package/src/Questions/Step/types.tsx +2 -1
  195. package/src/Questions/__snapshots__/index.spec.tsx.snap +74 -587
  196. package/src/Questions/__stories__/Default.tsx +1 -1
  197. package/{Questions/index.mdx → src/Questions/doc.mdx} +34 -57
  198. package/src/Questions/getNextStep.tsx +1 -1
  199. package/src/Questions/index.spec.tsx +17 -5
  200. package/src/Questions/index.test.tsx +24 -0
  201. package/src/Questions/types.tsx +2 -1
  202. package/src/create-simple-form.mdx +2 -6
  203. package/src/{index.mdx → doc.mdx} +29 -18
  204. package/src/hooks/__tests__/useFieldFocusManager.spec.tsx +1079 -0
  205. package/src/hooks/__tests__/utils.spec.ts +568 -0
  206. package/src/hooks/useFieldFocusManager.ts +162 -0
  207. package/src/hooks/utils.ts +122 -0
  208. package/src/index.ts +4 -1
  209. package/src/inputs/AutoCompleteInput/AutoComplete.stories.js +5 -1
  210. package/src/inputs/AutoCompleteInput/__stories__/Default.tsx +20 -19
  211. package/src/inputs/AutoCompleteInput/__stories__/Multiple.tsx +47 -0
  212. package/src/inputs/AutoCompleteInput/doc.mdx +18 -0
  213. package/src/inputs/AutoCompleteInput/index.test.tsx +28 -0
  214. package/src/inputs/AutoCompleteInput/index.tsx +48 -33
  215. package/src/inputs/Checkboxes/Checkboxes.stories.js +6 -3
  216. package/src/inputs/Checkboxes/__stories__/Conditional.tsx +3 -4
  217. package/src/inputs/Checkboxes/__stories__/Default.tsx +1 -1
  218. package/src/inputs/Checkboxes/__stories__/WithDivider.tsx +1 -1
  219. package/src/inputs/Checkboxes/doc.mdx +23 -0
  220. package/src/inputs/Checkboxes/index.test.tsx +32 -0
  221. package/src/inputs/Checkboxes/index.tsx +106 -92
  222. package/src/inputs/DateInput/DateInput.stories.js +8 -1
  223. package/src/inputs/DateInput/__stories__/Default.tsx +17 -16
  224. package/src/inputs/DateInput/__stories__/WithDefaultValue.tsx +26 -0
  225. package/src/inputs/DateInput/__stories__/WithInitialValue.tsx +28 -0
  226. package/src/inputs/DateInput/__stories__/WithWrongDefaultValue.tsx +26 -0
  227. package/src/inputs/DateInput/__stories__/WithWrongInitialValue.tsx +28 -0
  228. package/src/inputs/DateInput/doc.mdx +16 -0
  229. package/src/inputs/DateInput/index.test.tsx +40 -0
  230. package/src/inputs/DateInput/index.tsx +77 -27
  231. package/src/inputs/DateTimeInput/DateTimeInput.stories.js +14 -0
  232. package/src/inputs/DateTimeInput/__stories__/Default.tsx +25 -0
  233. package/src/inputs/DateTimeInput/__stories__/WithDefaultValue.tsx +26 -0
  234. package/src/inputs/DateTimeInput/__stories__/WithInitialValue.tsx +28 -0
  235. package/src/inputs/DateTimeInput/__stories__/WithWrongDefaultValue.tsx +26 -0
  236. package/src/inputs/DateTimeInput/__stories__/WithWrongInitialValue.tsx +28 -0
  237. package/src/inputs/DateTimeInput/doc.mdx +16 -0
  238. package/src/inputs/DateTimeInput/index.test.tsx +40 -0
  239. package/src/inputs/DateTimeInput/index.tsx +246 -0
  240. package/src/inputs/FileInput/FileInput.stories.js +5 -1
  241. package/src/inputs/FileInput/__stories__/Default.tsx +1 -1
  242. package/src/inputs/FileInput/__stories__/WithBorderAndLink.tsx +34 -0
  243. package/src/inputs/FileInput/doc.mdx +15 -0
  244. package/src/inputs/FileInput/index.test.tsx +28 -0
  245. package/src/inputs/FileInput/index.tsx +102 -43
  246. package/src/inputs/ImageInput/ImageInput.stories.js +7 -3
  247. package/src/inputs/ImageInput/__stories__/Default.tsx +1 -1
  248. package/src/inputs/ImageInput/__stories__/{WithInvalidImageSize.tsx → MaxSize.tsx} +5 -3
  249. package/src/inputs/ImageInput/__stories__/WithInitialValues.tsx +45 -0
  250. package/src/inputs/ImageInput/__stories__/WithInvalidImageDimension.tsx +3 -1
  251. package/src/inputs/ImageInput/__stories__/logo.d.ts +4 -0
  252. package/src/inputs/ImageInput/__stories__/logo.png +0 -0
  253. package/src/inputs/ImageInput/doc.mdx +23 -0
  254. package/src/inputs/ImageInput/index.test.tsx +36 -0
  255. package/src/inputs/ImageInput/index.tsx +105 -52
  256. package/src/inputs/Input/Input.stories.js +17 -10
  257. package/src/inputs/Input/__stories__/AFM.tsx +1 -1
  258. package/src/inputs/Input/__stories__/AMKA.tsx +23 -0
  259. package/src/inputs/Input/__stories__/Boolean.tsx +1 -1
  260. package/src/inputs/Input/__stories__/Email.tsx +23 -0
  261. package/src/inputs/Input/__stories__/IBAN.tsx +1 -1
  262. package/src/inputs/Input/__stories__/Integer.tsx +1 -1
  263. package/src/inputs/Input/__stories__/LandlineNumber.tsx +3 -2
  264. package/src/inputs/Input/__stories__/MobilePhone.tsx +2 -1
  265. package/src/inputs/Input/__stories__/PhoneNumber.tsx +2 -1
  266. package/src/inputs/Input/__stories__/PostalCode.tsx +2 -1
  267. package/src/inputs/Input/__stories__/Rate.tsx +25 -0
  268. package/src/inputs/Input/__stories__/{Default.tsx → String.tsx} +2 -2
  269. package/src/inputs/Input/__stories__/StringWithTrimValidation.tsx +26 -0
  270. package/src/inputs/Input/__stories__/{TextWithCharacterLimit.tsx → TextWithLimit.tsx} +3 -2
  271. package/src/inputs/Input/doc.mdx +56 -0
  272. package/src/inputs/Input/index.test.tsx +76 -0
  273. package/src/inputs/Input/index.tsx +55 -35
  274. package/src/inputs/Label/Label.stories.js +4 -1
  275. package/src/inputs/Label/__stories__/Default.tsx +4 -2
  276. package/src/inputs/Label/doc.mdx +14 -0
  277. package/src/inputs/Label/index.test.tsx +24 -0
  278. package/src/inputs/Label/index.tsx +4 -11
  279. package/src/inputs/OtpInput/OtpInput.stories.js +4 -1
  280. package/src/inputs/OtpInput/__stories__/Default.tsx +1 -1
  281. package/src/inputs/OtpInput/doc.mdx +16 -0
  282. package/src/inputs/OtpInput/index.test.tsx +24 -0
  283. package/src/inputs/OtpInput/index.tsx +46 -35
  284. package/src/inputs/Radio/Radio.stories.js +6 -3
  285. package/src/inputs/Radio/__stories__/Conditional.tsx +5 -2
  286. package/src/inputs/Radio/__stories__/Default.tsx +1 -1
  287. package/src/inputs/Radio/__stories__/WithDivider.tsx +1 -1
  288. package/src/inputs/Radio/doc.mdx +23 -0
  289. package/src/inputs/Radio/index.test.tsx +32 -0
  290. package/src/inputs/Radio/index.tsx +93 -12
  291. package/src/inputs/Select/Select.stories.js +4 -1
  292. package/src/inputs/Select/__stories__/Default.tsx +1 -1
  293. package/src/inputs/Select/doc.mdx +13 -0
  294. package/src/inputs/Select/index.test.tsx +24 -0
  295. package/src/inputs/Select/index.tsx +22 -9
  296. package/src/inputs/registry.ts +86 -0
  297. package/src/installation.mdx +2 -5
  298. package/src/internal.ts +2 -31
  299. package/src/lazy.ts +56 -0
  300. package/src/registry.ts +179 -0
  301. package/src/types.tsx +21 -65
  302. package/src/utils.ts +67 -33
  303. package/src/validators/index.ts +138 -99
  304. package/src/validators/types.ts +1 -1
  305. package/src/validators/utils/amka.ts +39 -0
  306. package/src/validators/utils/date.ts +131 -0
  307. package/src/validators/utils/datetime.ts +222 -0
  308. package/src/validators/utils/email.ts +11 -0
  309. package/src/validators/utils/file.ts +36 -20
  310. package/src/validators/utils/iban.ts +2 -2
  311. package/src/validators/utils/image.ts +2 -2
  312. package/src/validators/utils/index.ts +15 -6
  313. package/src/validators/utils/int.ts +2 -2
  314. package/src/validators/utils/number.ts +2 -2
  315. package/src/validators/utils/otp.ts +2 -2
  316. package/src/validators/utils/phone.ts +65 -74
  317. package/src/validators/utils/postal_code.ts +3 -3
  318. package/src/validators/utils/text_limit.ts +2 -2
  319. package/src/validators/utils/uuid4.ts +2 -1
  320. package/src/validators/validators.spec.ts +6 -40
  321. package/types.d.ts +14 -37
  322. package/types.js +1 -0
  323. package/utils.d.ts +4 -1
  324. package/utils.js +56 -0
  325. package/validators/index.d.ts +6 -6
  326. package/validators/index.js +115 -180
  327. package/validators/types.d.ts +1 -1
  328. package/validators/utils/afm.js +19 -0
  329. package/validators/utils/amka.d.ts +6 -0
  330. package/validators/utils/amka.js +27 -0
  331. package/validators/utils/date.d.ts +9 -0
  332. package/validators/utils/date.js +95 -0
  333. package/validators/utils/datetime.d.ts +9 -0
  334. package/validators/utils/datetime.js +121 -0
  335. package/validators/utils/email.d.ts +5 -0
  336. package/validators/utils/email.js +10 -0
  337. package/validators/utils/file.d.ts +2 -2
  338. package/validators/utils/file.js +31 -0
  339. package/validators/utils/iban.d.ts +2 -2
  340. package/validators/utils/iban.js +104 -0
  341. package/validators/utils/image.d.ts +2 -2
  342. package/validators/utils/image.js +65 -0
  343. package/validators/utils/index.d.ts +14 -11
  344. package/validators/utils/index.js +62 -85
  345. package/validators/utils/int.d.ts +1 -1
  346. package/validators/utils/int.js +13 -0
  347. package/validators/utils/number.d.ts +1 -1
  348. package/validators/utils/number.js +12 -0
  349. package/validators/utils/otp.d.ts +2 -2
  350. package/validators/utils/otp.js +21 -0
  351. package/validators/utils/phone.d.ts +3 -3
  352. package/validators/utils/phone.js +198 -0
  353. package/validators/utils/postal_code.d.ts +3 -3
  354. package/validators/utils/postal_code.js +18 -0
  355. package/validators/utils/text_limit.d.ts +2 -2
  356. package/validators/utils/text_limit.js +34 -0
  357. package/validators/utils/uuid4.js +14 -0
  358. package/Field/FieldBase/index.js +0 -81
  359. package/Field/FieldBase/package.json +0 -6
  360. package/Field/FieldBaseContainer/index.js +0 -40
  361. package/Field/FieldBaseContainer/package.json +0 -6
  362. package/Field/FieldConditional/index.js +0 -59
  363. package/Field/FieldConditional/package.json +0 -6
  364. package/Field/index.mdx +0 -6
  365. package/Field/package.json +0 -6
  366. package/Field/types/index.js +0 -1
  367. package/Field/types/package.json +0 -6
  368. package/Field/utils/index.js +0 -153
  369. package/Field/utils/package.json +0 -6
  370. package/Field/utils.d.ts +0 -5
  371. package/FieldArray/FieldArray.stories/index.js +0 -8
  372. package/FieldArray/FieldArray.stories/package.json +0 -6
  373. package/FieldArray/FieldArray.stories.d.ts +0 -9
  374. package/FieldArray/FieldArray.stories.playwright.json +0 -353
  375. package/FieldArray/__stories__/Default/index.js +0 -88
  376. package/FieldArray/__stories__/Default/package.json +0 -6
  377. package/FieldArray/__stories__/Default.d.ts +0 -2
  378. package/FieldArray/__stories__/WithExactLength/index.js +0 -88
  379. package/FieldArray/__stories__/WithExactLength/package.json +0 -6
  380. package/FieldArray/__stories__/WithExactLength.d.ts +0 -2
  381. package/FieldArray/package.json +0 -6
  382. package/FieldObject/package.json +0 -6
  383. package/Fieldset/FieldsetWithContext/index.js +0 -35
  384. package/Fieldset/FieldsetWithContext/package.json +0 -6
  385. package/Fieldset/package.json +0 -6
  386. package/Fieldset/types/index.js +0 -1
  387. package/Fieldset/types/package.json +0 -6
  388. package/Form.stories/index.js +0 -3
  389. package/Form.stories/package.json +0 -6
  390. package/Form.stories.d.ts +0 -4
  391. package/FormBuilder/FormBuilder/index.js +0 -152
  392. package/FormBuilder/FormBuilder/package.json +0 -6
  393. package/FormBuilder/FormBuilder.d.ts +0 -5
  394. package/FormBuilder/FormBuilder.mdx +0 -256
  395. package/FormBuilder/FormBuilder.stories/index.js +0 -7
  396. package/FormBuilder/FormBuilder.stories/package.json +0 -6
  397. package/FormBuilder/FormBuilder.stories.d.ts +0 -8
  398. package/FormBuilder/FormBuilder.stories.playwright.json +0 -52
  399. package/FormBuilder/__stories__/Default/index.js +0 -26
  400. package/FormBuilder/__stories__/Default/package.json +0 -6
  401. package/FormBuilder/__stories__/Default.d.ts +0 -3
  402. package/FormBuilder/package.json +0 -6
  403. package/FormContext/index.js +0 -5
  404. package/FormContext/package.json +0 -6
  405. package/MultiplicityField/MultiplicityField.mdx +0 -590
  406. package/MultiplicityField/MultiplicityField.stories/index.js +0 -12
  407. package/MultiplicityField/MultiplicityField.stories/package.json +0 -6
  408. package/MultiplicityField/MultiplicityField.stories.d.ts +0 -13
  409. package/MultiplicityField/MultiplicityField.stories.playwright.json +0 -1370
  410. package/MultiplicityField/__stories__/Default/index.js +0 -95
  411. package/MultiplicityField/__stories__/Default/package.json +0 -6
  412. package/MultiplicityField/__stories__/Default.d.ts +0 -2
  413. package/MultiplicityField/__stories__/PreviewDisplay/index.js +0 -72
  414. package/MultiplicityField/__stories__/PreviewDisplay/package.json +0 -6
  415. package/MultiplicityField/__stories__/PreviewDisplay.d.ts +0 -2
  416. package/MultiplicityField/__stories__/WithExactLength/index.js +0 -90
  417. package/MultiplicityField/__stories__/WithExactLength/package.json +0 -6
  418. package/MultiplicityField/__stories__/WithExactLength.d.ts +0 -2
  419. package/MultiplicityField/__stories__/WithMaxLength/index.js +0 -93
  420. package/MultiplicityField/__stories__/WithMaxLength/package.json +0 -6
  421. package/MultiplicityField/__stories__/WithMaxLength.d.ts +0 -2
  422. package/MultiplicityField/__stories__/WithMinAndMaxLength/index.js +0 -94
  423. package/MultiplicityField/__stories__/WithMinAndMaxLength/package.json +0 -6
  424. package/MultiplicityField/__stories__/WithMinAndMaxLength.d.ts +0 -2
  425. package/MultiplicityField/__stories__/WithMinLength/index.js +0 -93
  426. package/MultiplicityField/__stories__/WithMinLength/package.json +0 -6
  427. package/MultiplicityField/__stories__/WithMinLength.d.ts +0 -2
  428. package/MultiplicityField/add-objects/index.js +0 -148
  429. package/MultiplicityField/add-objects/package.json +0 -6
  430. package/MultiplicityField/package.json +0 -6
  431. package/Questions/Questions/index.js +0 -75
  432. package/Questions/Questions/package.json +0 -6
  433. package/Questions/Questions.stories/index.js +0 -7
  434. package/Questions/Questions.stories/package.json +0 -6
  435. package/Questions/Questions.stories.d.ts +0 -8
  436. package/Questions/QuestionsContext/index.js +0 -11
  437. package/Questions/QuestionsContext/package.json +0 -6
  438. package/Questions/Step/ReviewStep/index.js +0 -50
  439. package/Questions/Step/ReviewStep/package.json +0 -6
  440. package/Questions/Step/Step/index.js +0 -62
  441. package/Questions/Step/Step/package.json +0 -6
  442. package/Questions/Step/StepArrayReview/index.js +0 -46
  443. package/Questions/Step/StepArrayReview/package.json +0 -6
  444. package/Questions/Step/StepContext/index.js +0 -27
  445. package/Questions/Step/StepContext/package.json +0 -6
  446. package/Questions/Step/StepDescription/index.js +0 -24
  447. package/Questions/Step/StepDescription/package.json +0 -6
  448. package/Questions/Step/StepForm/index.js +0 -44
  449. package/Questions/Step/StepForm/package.json +0 -6
  450. package/Questions/Step/StepQuote/index.js +0 -10
  451. package/Questions/Step/StepQuote/package.json +0 -6
  452. package/Questions/Step/StepTitle/index.js +0 -41
  453. package/Questions/Step/StepTitle/package.json +0 -6
  454. package/Questions/Step/getAddMoreFields/index.js +0 -21
  455. package/Questions/Step/getAddMoreFields/package.json +0 -6
  456. package/Questions/Step/package.json +0 -6
  457. package/Questions/Step/types/index.js +0 -1
  458. package/Questions/Step/types/package.json +0 -6
  459. package/Questions/__snapshots__/index.spec.tsx.snap +0 -596
  460. package/Questions/__stories__/Default/index.js +0 -102
  461. package/Questions/__stories__/Default/package.json +0 -6
  462. package/Questions/__stories__/Default.d.ts +0 -3
  463. package/Questions/getNextStep/index.js +0 -20
  464. package/Questions/getNextStep/package.json +0 -6
  465. package/Questions/index.spec/index.js +0 -59
  466. package/Questions/index.spec/package.json +0 -6
  467. package/Questions/index.spec.d.ts +0 -1
  468. package/Questions/package.json +0 -6
  469. package/Questions/types/index.js +0 -1
  470. package/Questions/types/package.json +0 -6
  471. package/cjs/Field/FieldBase/index.js +0 -88
  472. package/cjs/Field/FieldBaseContainer/index.js +0 -47
  473. package/cjs/Field/FieldConditional/index.js +0 -66
  474. package/cjs/Field/index.js +0 -80
  475. package/cjs/Field/index.mdx +0 -6
  476. package/cjs/Field/types/index.js +0 -5
  477. package/cjs/Field/utils/index.js +0 -167
  478. package/cjs/FieldArray/FieldArray.stories/index.js +0 -38
  479. package/cjs/FieldArray/FieldArray.stories.playwright.json +0 -353
  480. package/cjs/FieldArray/__stories__/Default/index.js +0 -98
  481. package/cjs/FieldArray/__stories__/WithExactLength/index.js +0 -98
  482. package/cjs/FieldArray/index.js +0 -68
  483. package/cjs/FieldObject/index.js +0 -64
  484. package/cjs/Fieldset/FieldsetWithContext/index.js +0 -45
  485. package/cjs/Fieldset/index.js +0 -44
  486. package/cjs/Fieldset/types/index.js +0 -5
  487. package/cjs/Form.stories/index.js +0 -9
  488. package/cjs/FormBuilder/FormBuilder/index.js +0 -162
  489. package/cjs/FormBuilder/FormBuilder.mdx +0 -256
  490. package/cjs/FormBuilder/FormBuilder.stories/index.js +0 -26
  491. package/cjs/FormBuilder/FormBuilder.stories.playwright.json +0 -52
  492. package/cjs/FormBuilder/__stories__/Default/index.js +0 -36
  493. package/cjs/FormBuilder/index.js +0 -8
  494. package/cjs/FormContext/index.js +0 -11
  495. package/cjs/MultiplicityField/MultiplicityField.stories/index.js +0 -86
  496. package/cjs/MultiplicityField/MultiplicityField.stories.playwright.json +0 -1370
  497. package/cjs/MultiplicityField/__stories__/Default/index.js +0 -105
  498. package/cjs/MultiplicityField/__stories__/PreviewDisplay/index.js +0 -82
  499. package/cjs/MultiplicityField/__stories__/WithExactLength/index.js +0 -100
  500. package/cjs/MultiplicityField/__stories__/WithMaxLength/index.js +0 -103
  501. package/cjs/MultiplicityField/__stories__/WithMinAndMaxLength/index.js +0 -104
  502. package/cjs/MultiplicityField/__stories__/WithMinLength/index.js +0 -103
  503. package/cjs/MultiplicityField/add-objects/index.js +0 -155
  504. package/cjs/MultiplicityField/index.js +0 -118
  505. package/cjs/Questions/Questions/index.js +0 -85
  506. package/cjs/Questions/Questions.stories/index.js +0 -26
  507. package/cjs/Questions/QuestionsContext/index.js +0 -17
  508. package/cjs/Questions/Step/ReviewStep/index.js +0 -60
  509. package/cjs/Questions/Step/Step/index.js +0 -72
  510. package/cjs/Questions/Step/StepArrayReview/index.js +0 -56
  511. package/cjs/Questions/Step/StepContext/index.js +0 -33
  512. package/cjs/Questions/Step/StepDescription/index.js +0 -34
  513. package/cjs/Questions/Step/StepForm/index.js +0 -54
  514. package/cjs/Questions/Step/StepQuote/index.js +0 -17
  515. package/cjs/Questions/Step/StepTitle/index.js +0 -51
  516. package/cjs/Questions/Step/getAddMoreFields/index.js +0 -27
  517. package/cjs/Questions/Step/index.js +0 -143
  518. package/cjs/Questions/Step/types/index.js +0 -5
  519. package/cjs/Questions/__snapshots__/index.spec.tsx.snap +0 -596
  520. package/cjs/Questions/__stories__/Default/index.js +0 -113
  521. package/cjs/Questions/getNextStep/index.js +0 -26
  522. package/cjs/Questions/index.js +0 -21
  523. package/cjs/Questions/index.mdx +0 -415
  524. package/cjs/Questions/index.spec/index.js +0 -63
  525. package/cjs/Questions/types/index.js +0 -5
  526. package/cjs/create-simple-form.mdx +0 -539
  527. package/cjs/index.js +0 -22
  528. package/cjs/index.mdx +0 -51
  529. package/cjs/inputs/AutoCompleteInput/AutoComplete.stories/index.js +0 -26
  530. package/cjs/inputs/AutoCompleteInput/__stories__/Default/index.js +0 -56
  531. package/cjs/inputs/AutoCompleteInput/index.js +0 -52
  532. package/cjs/inputs/Checkboxes/Checkboxes.stories/index.js +0 -50
  533. package/cjs/inputs/Checkboxes/Checkboxes.stories.playwright.json +0 -85
  534. package/cjs/inputs/Checkboxes/__stories__/Conditional/index.js +0 -102
  535. package/cjs/inputs/Checkboxes/__stories__/Default/index.js +0 -50
  536. package/cjs/inputs/Checkboxes/__stories__/WithDivider/index.js +0 -51
  537. package/cjs/inputs/Checkboxes/index.js +0 -101
  538. package/cjs/inputs/DateInput/DateInput.stories/index.js +0 -26
  539. package/cjs/inputs/DateInput/DateInput.stories.playwright.json +0 -72
  540. package/cjs/inputs/DateInput/__stories__/Default/index.js +0 -33
  541. package/cjs/inputs/DateInput/index.js +0 -141
  542. package/cjs/inputs/FileInput/FileInput.stories/index.js +0 -26
  543. package/cjs/inputs/FileInput/FileInput.stories.playwright.json +0 -75
  544. package/cjs/inputs/FileInput/__stories__/Default/index.js +0 -30
  545. package/cjs/inputs/FileInput/index.js +0 -68
  546. package/cjs/inputs/ImageInput/ImageInput.stories/index.js +0 -50
  547. package/cjs/inputs/ImageInput/ImageInput.stories.playwright.json +0 -77
  548. package/cjs/inputs/ImageInput/__stories__/Default/index.js +0 -38
  549. package/cjs/inputs/ImageInput/__stories__/WithInvalidImageDimension/index.js +0 -46
  550. package/cjs/inputs/ImageInput/__stories__/WithInvalidImageSize/index.js +0 -43
  551. package/cjs/inputs/ImageInput/index.js +0 -86
  552. package/cjs/inputs/Input/Input.stories/index.js +0 -134
  553. package/cjs/inputs/Input/Input.stories.playwright.json +0 -376
  554. package/cjs/inputs/Input/__stories__/AFM/index.js +0 -32
  555. package/cjs/inputs/Input/__stories__/Boolean/index.js +0 -33
  556. package/cjs/inputs/Input/__stories__/Default/index.js +0 -33
  557. package/cjs/inputs/Input/__stories__/IBAN/index.js +0 -33
  558. package/cjs/inputs/Input/__stories__/Integer/index.js +0 -41
  559. package/cjs/inputs/Input/__stories__/LandlineNumber/index.js +0 -36
  560. package/cjs/inputs/Input/__stories__/MobilePhone/index.js +0 -36
  561. package/cjs/inputs/Input/__stories__/PhoneNumber/index.js +0 -35
  562. package/cjs/inputs/Input/__stories__/PostalCode/index.js +0 -35
  563. package/cjs/inputs/Input/__stories__/TextWithCharacterLimit/index.js +0 -39
  564. package/cjs/inputs/Input/index.js +0 -76
  565. package/cjs/inputs/Input/index.mdx +0 -8
  566. package/cjs/inputs/Label/Label.stories/index.js +0 -26
  567. package/cjs/inputs/Label/Label.stories.playwright.json +0 -40
  568. package/cjs/inputs/Label/__stories__/Default/index.js +0 -37
  569. package/cjs/inputs/Label/index.js +0 -29
  570. package/cjs/inputs/OtpInput/OtpInput.stories/index.js +0 -26
  571. package/cjs/inputs/OtpInput/__stories__/Default/index.js +0 -39
  572. package/cjs/inputs/OtpInput/index.js +0 -150
  573. package/cjs/inputs/Radio/Radio.stories/index.js +0 -50
  574. package/cjs/inputs/Radio/Radio.stories.playwright.json +0 -73
  575. package/cjs/inputs/Radio/__stories__/Conditional/index.js +0 -102
  576. package/cjs/inputs/Radio/__stories__/Default/index.js +0 -55
  577. package/cjs/inputs/Radio/__stories__/WithDivider/index.js +0 -56
  578. package/cjs/inputs/Radio/index.js +0 -64
  579. package/cjs/inputs/Select/Select.stories/index.js +0 -26
  580. package/cjs/inputs/Select/Select.stories.playwright.json +0 -22
  581. package/cjs/inputs/Select/__stories__/Default/index.js +0 -61
  582. package/cjs/inputs/Select/index.js +0 -38
  583. package/cjs/inputs/index.js +0 -69
  584. package/cjs/installation.mdx +0 -68
  585. package/cjs/internal/index.js +0 -348
  586. package/cjs/registry/index.js +0 -147
  587. package/cjs/types/index.js +0 -5
  588. package/cjs/utils/index.js +0 -87
  589. package/cjs/validators/index.js +0 -193
  590. package/cjs/validators/types/index.js +0 -5
  591. package/cjs/validators/utils/afm/index.js +0 -38
  592. package/cjs/validators/utils/file/index.js +0 -51
  593. package/cjs/validators/utils/iban/index.js +0 -123
  594. package/cjs/validators/utils/image/index.js +0 -126
  595. package/cjs/validators/utils/index.js +0 -204
  596. package/cjs/validators/utils/int/index.js +0 -26
  597. package/cjs/validators/utils/number/index.js +0 -22
  598. package/cjs/validators/utils/otp/index.js +0 -32
  599. package/cjs/validators/utils/phone/index.js +0 -143
  600. package/cjs/validators/utils/postal_code/index.js +0 -34
  601. package/cjs/validators/utils/text_limit/index.js +0 -54
  602. package/cjs/validators/utils/uuid4/index.js +0 -25
  603. package/cjs/validators/validators.spec/index.js +0 -87
  604. package/create-simple-form.mdx +0 -539
  605. package/index.mdx +0 -51
  606. package/inputs/AutoCompleteInput/AutoComplete.stories/index.js +0 -7
  607. package/inputs/AutoCompleteInput/AutoComplete.stories/package.json +0 -6
  608. package/inputs/AutoCompleteInput/AutoComplete.stories.d.ts +0 -8
  609. package/inputs/AutoCompleteInput/__stories__/Default/index.js +0 -46
  610. package/inputs/AutoCompleteInput/__stories__/Default/package.json +0 -6
  611. package/inputs/AutoCompleteInput/__stories__/Default.d.ts +0 -2
  612. package/inputs/AutoCompleteInput/package.json +0 -6
  613. package/inputs/Checkboxes/Checkboxes.stories/index.js +0 -9
  614. package/inputs/Checkboxes/Checkboxes.stories/package.json +0 -6
  615. package/inputs/Checkboxes/Checkboxes.stories.d.ts +0 -10
  616. package/inputs/Checkboxes/Checkboxes.stories.playwright.json +0 -85
  617. package/inputs/Checkboxes/__stories__/Conditional/index.js +0 -92
  618. package/inputs/Checkboxes/__stories__/Conditional/package.json +0 -6
  619. package/inputs/Checkboxes/__stories__/Conditional.d.ts +0 -2
  620. package/inputs/Checkboxes/__stories__/Default/index.js +0 -40
  621. package/inputs/Checkboxes/__stories__/Default/package.json +0 -6
  622. package/inputs/Checkboxes/__stories__/Default.d.ts +0 -3
  623. package/inputs/Checkboxes/__stories__/WithDivider/index.js +0 -41
  624. package/inputs/Checkboxes/__stories__/WithDivider/package.json +0 -6
  625. package/inputs/Checkboxes/__stories__/WithDivider.d.ts +0 -3
  626. package/inputs/Checkboxes/package.json +0 -6
  627. package/inputs/DateInput/DateInput.stories/index.js +0 -7
  628. package/inputs/DateInput/DateInput.stories/package.json +0 -6
  629. package/inputs/DateInput/DateInput.stories.d.ts +0 -8
  630. package/inputs/DateInput/DateInput.stories.playwright.json +0 -72
  631. package/inputs/DateInput/__stories__/Default/index.js +0 -23
  632. package/inputs/DateInput/__stories__/Default/package.json +0 -6
  633. package/inputs/DateInput/__stories__/Default.d.ts +0 -3
  634. package/inputs/DateInput/package.json +0 -6
  635. package/inputs/FileInput/FileInput.stories/index.js +0 -7
  636. package/inputs/FileInput/FileInput.stories/package.json +0 -6
  637. package/inputs/FileInput/FileInput.stories.d.ts +0 -8
  638. package/inputs/FileInput/FileInput.stories.playwright.json +0 -75
  639. package/inputs/FileInput/__stories__/Default/index.js +0 -20
  640. package/inputs/FileInput/__stories__/Default/package.json +0 -6
  641. package/inputs/FileInput/__stories__/Default.d.ts +0 -3
  642. package/inputs/FileInput/package.json +0 -6
  643. package/inputs/ImageInput/ImageInput.stories/index.js +0 -9
  644. package/inputs/ImageInput/ImageInput.stories/package.json +0 -6
  645. package/inputs/ImageInput/ImageInput.stories.d.ts +0 -10
  646. package/inputs/ImageInput/ImageInput.stories.playwright.json +0 -77
  647. package/inputs/ImageInput/__stories__/Default/index.js +0 -28
  648. package/inputs/ImageInput/__stories__/Default/package.json +0 -6
  649. package/inputs/ImageInput/__stories__/Default.d.ts +0 -3
  650. package/inputs/ImageInput/__stories__/WithInvalidImageDimension/index.js +0 -36
  651. package/inputs/ImageInput/__stories__/WithInvalidImageDimension/package.json +0 -6
  652. package/inputs/ImageInput/__stories__/WithInvalidImageDimension.d.ts +0 -3
  653. package/inputs/ImageInput/__stories__/WithInvalidImageSize/index.js +0 -33
  654. package/inputs/ImageInput/__stories__/WithInvalidImageSize/package.json +0 -6
  655. package/inputs/ImageInput/__stories__/WithInvalidImageSize.d.ts +0 -3
  656. package/inputs/ImageInput/package.json +0 -6
  657. package/inputs/Input/Input.stories/index.js +0 -16
  658. package/inputs/Input/Input.stories/package.json +0 -6
  659. package/inputs/Input/Input.stories.d.ts +0 -17
  660. package/inputs/Input/Input.stories.playwright.json +0 -376
  661. package/inputs/Input/__stories__/AFM/index.js +0 -22
  662. package/inputs/Input/__stories__/AFM/package.json +0 -6
  663. package/inputs/Input/__stories__/AFM.d.ts +0 -3
  664. package/inputs/Input/__stories__/Boolean/index.js +0 -23
  665. package/inputs/Input/__stories__/Boolean/package.json +0 -6
  666. package/inputs/Input/__stories__/Boolean.d.ts +0 -3
  667. package/inputs/Input/__stories__/Default/index.js +0 -23
  668. package/inputs/Input/__stories__/Default/package.json +0 -6
  669. package/inputs/Input/__stories__/Default.d.ts +0 -3
  670. package/inputs/Input/__stories__/IBAN/index.js +0 -23
  671. package/inputs/Input/__stories__/IBAN/package.json +0 -6
  672. package/inputs/Input/__stories__/IBAN.d.ts +0 -3
  673. package/inputs/Input/__stories__/Integer/index.js +0 -31
  674. package/inputs/Input/__stories__/Integer/package.json +0 -6
  675. package/inputs/Input/__stories__/Integer.d.ts +0 -3
  676. package/inputs/Input/__stories__/LandlineNumber/index.js +0 -26
  677. package/inputs/Input/__stories__/LandlineNumber/package.json +0 -6
  678. package/inputs/Input/__stories__/LandlineNumber.d.ts +0 -3
  679. package/inputs/Input/__stories__/MobilePhone/index.js +0 -26
  680. package/inputs/Input/__stories__/MobilePhone/package.json +0 -6
  681. package/inputs/Input/__stories__/MobilePhone.d.ts +0 -3
  682. package/inputs/Input/__stories__/PhoneNumber/index.js +0 -25
  683. package/inputs/Input/__stories__/PhoneNumber/package.json +0 -6
  684. package/inputs/Input/__stories__/PhoneNumber.d.ts +0 -3
  685. package/inputs/Input/__stories__/PostalCode/index.js +0 -25
  686. package/inputs/Input/__stories__/PostalCode/package.json +0 -6
  687. package/inputs/Input/__stories__/PostalCode.d.ts +0 -3
  688. package/inputs/Input/__stories__/TextWithCharacterLimit/index.js +0 -29
  689. package/inputs/Input/__stories__/TextWithCharacterLimit/package.json +0 -6
  690. package/inputs/Input/__stories__/TextWithCharacterLimit.d.ts +0 -3
  691. package/inputs/Input/index.mdx +0 -8
  692. package/inputs/Input/package.json +0 -6
  693. package/inputs/Label/Label.stories/index.js +0 -7
  694. package/inputs/Label/Label.stories/package.json +0 -6
  695. package/inputs/Label/Label.stories.d.ts +0 -8
  696. package/inputs/Label/Label.stories.playwright.json +0 -40
  697. package/inputs/Label/__stories__/Default/index.js +0 -27
  698. package/inputs/Label/__stories__/Default/package.json +0 -6
  699. package/inputs/Label/__stories__/Default.d.ts +0 -3
  700. package/inputs/Label/package.json +0 -6
  701. package/inputs/OtpInput/OtpInput.stories/index.js +0 -7
  702. package/inputs/OtpInput/OtpInput.stories/package.json +0 -6
  703. package/inputs/OtpInput/OtpInput.stories.d.ts +0 -8
  704. package/inputs/OtpInput/__stories__/Default/index.js +0 -29
  705. package/inputs/OtpInput/__stories__/Default/package.json +0 -6
  706. package/inputs/OtpInput/__stories__/Default.d.ts +0 -3
  707. package/inputs/OtpInput/package.json +0 -6
  708. package/inputs/Radio/Radio.stories/index.js +0 -9
  709. package/inputs/Radio/Radio.stories/package.json +0 -6
  710. package/inputs/Radio/Radio.stories.d.ts +0 -10
  711. package/inputs/Radio/Radio.stories.playwright.json +0 -73
  712. package/inputs/Radio/__stories__/Conditional/index.js +0 -92
  713. package/inputs/Radio/__stories__/Conditional/package.json +0 -6
  714. package/inputs/Radio/__stories__/Conditional.d.ts +0 -2
  715. package/inputs/Radio/__stories__/Default/index.js +0 -45
  716. package/inputs/Radio/__stories__/Default/package.json +0 -6
  717. package/inputs/Radio/__stories__/Default.d.ts +0 -3
  718. package/inputs/Radio/__stories__/WithDivider/index.js +0 -46
  719. package/inputs/Radio/__stories__/WithDivider/package.json +0 -6
  720. package/inputs/Radio/__stories__/WithDivider.d.ts +0 -3
  721. package/inputs/Radio/package.json +0 -6
  722. package/inputs/Select/Select.stories/index.js +0 -7
  723. package/inputs/Select/Select.stories/package.json +0 -6
  724. package/inputs/Select/Select.stories.d.ts +0 -8
  725. package/inputs/Select/Select.stories.playwright.json +0 -22
  726. package/inputs/Select/__stories__/Default/index.js +0 -51
  727. package/inputs/Select/__stories__/Default/package.json +0 -6
  728. package/inputs/Select/__stories__/Default.d.ts +0 -3
  729. package/inputs/Select/package.json +0 -6
  730. package/inputs/package.json +0 -6
  731. package/installation.mdx +0 -68
  732. package/internal/index.js +0 -34
  733. package/internal/package.json +0 -6
  734. package/registry/index.js +0 -138
  735. package/registry/package.json +0 -6
  736. package/src/Field/index.mdx +0 -6
  737. package/src/Field/utils.ts +0 -191
  738. package/src/FieldArray/FieldArray.stories.playwright.json +0 -353
  739. package/src/FormBuilder/FormBuilder.stories.playwright.json +0 -52
  740. package/src/FormBuilder/FormBuilder.tsx +0 -166
  741. package/src/MultiplicityField/MultiplicityField.mdx +0 -590
  742. package/src/MultiplicityField/MultiplicityField.stories.playwright.json +0 -1370
  743. package/src/Questions/index.mdx +0 -415
  744. package/src/inputs/Checkboxes/Checkboxes.stories.playwright.json +0 -85
  745. package/src/inputs/Checkboxes/index.mdx +0 -0
  746. package/src/inputs/DateInput/DateInput.stories.playwright.json +0 -72
  747. package/src/inputs/FileInput/FileInput.stories.playwright.json +0 -75
  748. package/src/inputs/ImageInput/ImageInput.stories.playwright.json +0 -77
  749. package/src/inputs/Input/Input.stories.playwright.json +0 -376
  750. package/src/inputs/Input/index.mdx +0 -8
  751. package/src/inputs/Label/Label.stories.playwright.json +0 -40
  752. package/src/inputs/Label/index.mdx +0 -0
  753. package/src/inputs/Radio/Radio.stories.playwright.json +0 -73
  754. package/src/inputs/Radio/index.mdx +0 -0
  755. package/src/inputs/Select/Select.stories.playwright.json +0 -22
  756. package/src/registry.js +0 -145
  757. package/types/index.js +0 -1
  758. package/types/package.json +0 -6
  759. package/utils/index.js +0 -80
  760. package/utils/package.json +0 -6
  761. package/validators/package.json +0 -6
  762. package/validators/types/index.js +0 -1
  763. package/validators/types/package.json +0 -6
  764. package/validators/utils/afm/index.js +0 -31
  765. package/validators/utils/afm/package.json +0 -6
  766. package/validators/utils/file/index.js +0 -45
  767. package/validators/utils/file/package.json +0 -6
  768. package/validators/utils/iban/index.js +0 -116
  769. package/validators/utils/iban/package.json +0 -6
  770. package/validators/utils/image/index.js +0 -119
  771. package/validators/utils/image/package.json +0 -6
  772. package/validators/utils/int/index.js +0 -19
  773. package/validators/utils/int/package.json +0 -6
  774. package/validators/utils/number/index.js +0 -15
  775. package/validators/utils/number/package.json +0 -6
  776. package/validators/utils/otp/index.js +0 -25
  777. package/validators/utils/otp/package.json +0 -6
  778. package/validators/utils/package.json +0 -6
  779. package/validators/utils/phone/index.js +0 -134
  780. package/validators/utils/phone/package.json +0 -6
  781. package/validators/utils/postal_code/index.js +0 -27
  782. package/validators/utils/postal_code/package.json +0 -6
  783. package/validators/utils/text_limit/index.js +0 -47
  784. package/validators/utils/text_limit/package.json +0 -6
  785. package/validators/utils/uuid4/index.js +0 -18
  786. package/validators/utils/uuid4/package.json +0 -6
  787. package/validators/validators.spec/index.js +0 -85
  788. package/validators/validators.spec/package.json +0 -6
  789. package/validators/validators.spec.d.ts +0 -1
  790. /package/{cjs/inputs/Checkboxes/index.mdx → Field/types.js} +0 -0
  791. /package/{cjs/inputs/Label/index.mdx → Fieldset/types.js} +0 -0
  792. /package/{cjs/inputs/Radio/index.mdx → MultiplicityField/types.js} +0 -0
  793. /package/{inputs/Checkboxes/index.mdx → Questions/Step/types.js} +0 -0
  794. /package/{inputs/Label/index.mdx → Questions/types.js} +0 -0
  795. /package/{inputs/Radio/index.mdx → validators/types.js} +0 -0
@@ -1,2 +1,239 @@
1
- import { FormBuilder } from '@digigov/form/FormBuilder/FormBuilder';
2
- export default FormBuilder;
1
+ import react, { useCallback, useEffect, useMemo, useRef } from "react";
2
+ import { useForm } from "react-hook-form";
3
+ import { Field } from "../Field/index.js";
4
+ import { ErrorGroup } from "../Field/ErrorGroup.js";
5
+ import { FieldsetWithContext } from "../Fieldset/FieldsetWithContext.js";
6
+ import { FormContext, useFormContext } from "../FormContext.js";
7
+ import useFieldFocusManager from "../hooks/useFieldFocusManager.js";
8
+ import { CONTROLLED_FIELD_COMPONENTS } from "../inputs/registry.js";
9
+ import { yupResolver } from "../utils.js";
10
+ import { useValidationSchema } from "../validators/index.js";
11
+ import { Button } from "@digigov/ui/form/Button/index.js";
12
+ import { Form } from "@digigov/ui/form/Form/index.js";
13
+ import { useScreenSize } from "@digigov/ui/utils/hooks/useScreen.js";
14
+ const FormBuilder_FormBase = /*#__PURE__*/ react.forwardRef(function({ onSubmit, children, registerField, fieldsMap, fieldsetsMap, resolver, initial, mode, reValidateMode, shouldFocusError, criteriaMode, componentRegistry, grid, errors, ...props }, ref) {
15
+ const form = useForm({
16
+ resolver,
17
+ mode,
18
+ defaultValues: initial,
19
+ reValidateMode,
20
+ shouldFocusError: false,
21
+ criteriaMode
22
+ });
23
+ const handleSubmit = useCallback((data)=>{
24
+ if (onSubmit) onSubmit(data);
25
+ }, [
26
+ onSubmit
27
+ ]);
28
+ const { setError } = form;
29
+ useEffect(()=>{
30
+ if (errors) for(const fieldName in errors)setError(fieldName, errors[fieldName]);
31
+ }, [
32
+ errors,
33
+ setError
34
+ ]);
35
+ const { registerCustomFocusableElement: registerFieldFocus, focusOnError } = useFieldFocusManager({
36
+ control: form.control,
37
+ subscribe: form.subscribe,
38
+ enabled: shouldFocusError,
39
+ setFocus: form.setFocus
40
+ });
41
+ const submit = form.handleSubmit(handleSubmit, focusOnError);
42
+ const ctx = {
43
+ fieldsMap,
44
+ fieldsetsMap,
45
+ control: form.control,
46
+ register: form.register,
47
+ watch: form.watch,
48
+ resetField: form.resetField,
49
+ registerField: registerField,
50
+ registerFieldFocus,
51
+ errors: form.formState.errors,
52
+ formState: form.formState,
53
+ reset: form.reset,
54
+ trigger: form.trigger,
55
+ getFieldState: form.getFieldState,
56
+ setValue: form.setValue,
57
+ clearErrors: form.clearErrors,
58
+ getValues: form.getValues,
59
+ unregister: form.unregister,
60
+ componentRegistry,
61
+ setError: form.setError,
62
+ formRef: ref,
63
+ submit
64
+ };
65
+ return /*#__PURE__*/ react.createElement(FormContext.Provider, {
66
+ value: ctx
67
+ }, /*#__PURE__*/ react.createElement(Form, {
68
+ grid: grid,
69
+ onSubmit: submit,
70
+ ref: ref,
71
+ ...props
72
+ }, children));
73
+ });
74
+ const useFormValues = ()=>{
75
+ const ctx = useFormContext();
76
+ return ctx.getValues();
77
+ };
78
+ const FormBuilder_FormBuilder = /*#__PURE__*/ react.forwardRef(function({ fields = [], fieldsets, initial = {}, onSubmit, children, reValidateMode = 'onChange', mode = 'onSubmit', shouldFocusError = true, criteriaMode = 'all', auto = false, validatorRegistry, componentRegistry, grid = false, ...props }, ref) {
79
+ const { screenSize } = useScreenSize();
80
+ const transformedFields = useMemo(()=>fields.map((field)=>{
81
+ const layout = field.layout;
82
+ if (!layout) return {
83
+ ...field,
84
+ layout: DEFAULT_LAYOUT
85
+ };
86
+ return {
87
+ ...field,
88
+ layout: BREAKPOINTS.reduce((expandedLayout, breakpoint, breakpointIndex)=>{
89
+ if (field?.layout?.[breakpoint]) expandedLayout[breakpoint] = field?.layout[breakpoint];
90
+ else if (expandedLayout[BREAKPOINTS[breakpointIndex - 1]]) expandedLayout[breakpoint] = expandedLayout[BREAKPOINTS[breakpointIndex - 1]];
91
+ else expandedLayout[breakpoint] = 12;
92
+ return expandedLayout;
93
+ }, {})
94
+ };
95
+ }), [
96
+ fields
97
+ ]);
98
+ const fieldsState = useRef(transformedFields);
99
+ const setFieldsState = useCallback((newFields)=>{
100
+ fieldsState.current = newFields;
101
+ }, []);
102
+ const registerField = useCallback((field)=>{
103
+ const fieldIndex = fieldsState.current.findIndex((f)=>f.key === field.key);
104
+ if (fieldIndex > -1) fieldsState.current[fieldIndex] = field;
105
+ else fieldsState.current.push(field);
106
+ setFieldsState(fieldsState.current);
107
+ }, [
108
+ setFieldsState
109
+ ]);
110
+ const schema = useValidationSchema(fieldsState, validatorRegistry);
111
+ const resolver = useMemo(()=>{
112
+ if (!schema) return;
113
+ return yupResolver(schema);
114
+ }, [
115
+ schema
116
+ ]);
117
+ const fieldsMap = useMemo(()=>{
118
+ if (!schema || !transformedFields) return {};
119
+ return transformedFields.reduce((map, field)=>({
120
+ ...map,
121
+ [field.key]: field
122
+ }), {});
123
+ }, [
124
+ schema,
125
+ transformedFields
126
+ ]);
127
+ const fieldsetsMap = useMemo(()=>{
128
+ if (!schema || !fieldsets) return;
129
+ return fieldsets.reduce((map, fieldset)=>({
130
+ ...map,
131
+ [fieldset.key]: fieldset
132
+ }), {});
133
+ }, [
134
+ fieldsets,
135
+ schema
136
+ ]);
137
+ const fieldChildren = useMemo(()=>{
138
+ if (!schema || !auto) return;
139
+ if (fieldsets) return fieldsets.map((fieldset)=>/*#__PURE__*/ react.createElement(FieldsetWithContext, {
140
+ key: fieldset.key,
141
+ name: fieldset.key
142
+ }));
143
+ if (transformedFields) {
144
+ const fieldsByLayouts = groupFieldsByLayout(transformedFields);
145
+ const fieldsByLayoutSize = fieldsByLayouts[screenSize];
146
+ return fieldsByLayoutSize.map((item, index)=>{
147
+ if (Array.isArray(item)) return /*#__PURE__*/ react.createElement(ErrorGroup, {
148
+ key: index,
149
+ screenSize: screenSize,
150
+ fieldOrder: item.map((field)=>field.key)
151
+ }, item.map((f)=>/*#__PURE__*/ react.createElement(Field, {
152
+ key: f.key,
153
+ name: f.key
154
+ })));
155
+ return /*#__PURE__*/ react.createElement(Field, {
156
+ key: item.key,
157
+ name: item.key
158
+ });
159
+ });
160
+ }
161
+ }, [
162
+ auto,
163
+ fieldsets,
164
+ schema,
165
+ screenSize,
166
+ transformedFields
167
+ ]);
168
+ return /*#__PURE__*/ react.createElement(FormBuilder_FormBase, {
169
+ resolver: resolver,
170
+ fieldsetsMap: fieldsetsMap,
171
+ fieldsMap: fieldsMap,
172
+ registerField: registerField,
173
+ initial: initial,
174
+ reValidateMode: reValidateMode,
175
+ mode: mode,
176
+ shouldFocusError: shouldFocusError,
177
+ criteriaMode: criteriaMode,
178
+ onSubmit: onSubmit,
179
+ componentRegistry: componentRegistry,
180
+ ref: ref,
181
+ grid: grid,
182
+ ...props
183
+ }, fieldChildren, auto && /*#__PURE__*/ react.createElement(Button, {
184
+ type: "submit"
185
+ }, "Συνέχεια"), children);
186
+ });
187
+ const DEFAULT_LAYOUT = {
188
+ xs: 12,
189
+ sm: 12,
190
+ md: 12,
191
+ lg: 12,
192
+ xl: 12
193
+ };
194
+ const BREAKPOINTS = [
195
+ 'xs',
196
+ 'sm',
197
+ 'md',
198
+ 'lg',
199
+ 'xl'
200
+ ];
201
+ function groupFieldsByLayout(fields) {
202
+ return BREAKPOINTS.reduce((sizes, size)=>{
203
+ sizes[size] = fields.reduce((acc, item)=>{
204
+ const layoutValue = item.layout?.[size] || 12;
205
+ if (0 === layoutValue) return [
206
+ ...acc,
207
+ item
208
+ ];
209
+ const lastElement = acc[acc.length - 1];
210
+ const currentSum = Array.isArray(lastElement) ? lastElement.reduce((sum, i)=>sum + (i.layout?.[size] || 0), 0) : 0;
211
+ if (!Array.isArray(lastElement) || currentSum + layoutValue > 12) return 12 === layoutValue ? [
212
+ ...acc,
213
+ item
214
+ ] : [
215
+ ...acc,
216
+ [
217
+ item
218
+ ]
219
+ ];
220
+ return [
221
+ ...acc.slice(0, -1),
222
+ [
223
+ ...lastElement,
224
+ item
225
+ ]
226
+ ];
227
+ }, []).map((item)=>{
228
+ if (Array.isArray(item) && 1 === item.length) return item[0];
229
+ return item;
230
+ });
231
+ return sizes;
232
+ }, {});
233
+ }
234
+ const ControlledFormBuilder = (props)=>/*#__PURE__*/ react.createElement(FormBuilder_FormBuilder, {
235
+ ...props,
236
+ componentRegistry: CONTROLLED_FIELD_COMPONENTS
237
+ });
238
+ const src_FormBuilder = FormBuilder_FormBuilder;
239
+ export { ControlledFormBuilder, FormBuilder_FormBase as FormBase, src_FormBuilder as default, useFormContext, useFormValues };
package/FormContext.d.ts CHANGED
@@ -1,3 +1,4 @@
1
- import React from 'react';
2
- import { FormContextProps } from '@digigov/form/types';
1
+ import type React from 'react';
2
+ import type { FormContextProps } from './types.js';
3
3
  export declare const FormContext: React.Context<FormContextProps>;
4
+ export declare const useFormContext: () => FormContextProps;
package/FormContext.js ADDED
@@ -0,0 +1,7 @@
1
+ import { createContext, useContext } from "react";
2
+ const FormContext = /*#__PURE__*/ createContext({
3
+ fieldsMap: {},
4
+ fieldsetsMap: {}
5
+ });
6
+ const useFormContext = ()=>useContext(FormContext);
7
+ export { FormContext, useFormContext };
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
- import { ErrorOption, FieldArrayWithId, UseFieldArrayReturn } from 'react-hook-form';
3
- import { MultiplicityProps, StashedObject } from '@digigov/form/MultiplicityField';
2
+ import type { ErrorOption, FieldArrayWithId, UseFieldArrayReturn } from 'react-hook-form';
3
+ import type { MultiplicityProps, StashedObject } from './types.js';
4
4
  export interface AddObjectsProps extends Omit<MultiplicityProps, 'key' | 'component'> {
5
5
  fields: FieldArrayWithId[];
6
6
  error?: ErrorOption;
@@ -8,6 +8,7 @@ export interface AddObjectsProps extends Omit<MultiplicityProps, 'key' | 'compon
8
8
  remove: UseFieldArrayReturn['remove'];
9
9
  stashedObjects: StashedObject[];
10
10
  onStash: (arg0: StashedObject) => void;
11
+ children?: React.ReactNode;
11
12
  }
12
13
  export declare const AddObjects: React.FC<AddObjectsProps>;
13
14
  export default AddObjects;
@@ -0,0 +1,107 @@
1
+ import react, { useEffect, useMemo } from "react";
2
+ import { useWatch } from "react-hook-form";
3
+ import { FieldBase } from "../Field/FieldBase.js";
4
+ import { resolveField } from "../Field/utils/resolveField.js";
5
+ import { useField } from "../Field/utils/useField.js";
6
+ import { FieldObject } from "../FieldObject/index.js";
7
+ import { Fieldset } from "../Fieldset/index.js";
8
+ import { Button } from "@digigov/ui/form/Button/index.js";
9
+ import { RadioConditional } from "@digigov/ui/form/RadioContainer/index.js";
10
+ const AddObjects = ({ name, fields, formState, extra, append, remove, trigger, clearErrors, children, setValue, stashedObjects, getValues, resetField, onStash, error, Field })=>{
11
+ const currentIndex = fields.length > 0 ? fields.length - 1 : fields.length;
12
+ const currentName = `${name}.${currentIndex}`;
13
+ const radioField = {
14
+ key: 'needs-more',
15
+ type: 'choice:single',
16
+ label: {
17
+ primary: extra?.label.question.title
18
+ },
19
+ required: true,
20
+ validators: [
21
+ {
22
+ name: 'is-locked',
23
+ message: 'form.error.needs-more',
24
+ test: (data)=>'no' === data
25
+ }
26
+ ],
27
+ extra: {
28
+ options: [
29
+ {
30
+ label: {
31
+ primary: extra?.label.question.yes
32
+ },
33
+ id: `radio-input-${name}-yes`,
34
+ value: 'yes',
35
+ selected: function() {
36
+ return /*#__PURE__*/ react.createElement(RadioConditional, {
37
+ hidden: 'yes' !== needsMore || extra?.max && extra?.max - stashedObjects.length === 0
38
+ }, 'yes' === needsMore && fields.length > 0 && /*#__PURE__*/ react.createElement(react.Fragment, null, /*#__PURE__*/ react.createElement(FieldObject, {
39
+ name: currentName,
40
+ error: error && error[currentIndex],
41
+ register: register,
42
+ formState: formState,
43
+ control: control,
44
+ ...extra?.of,
45
+ label: extra?.label.question.objectLabel || extra?.of.label
46
+ }), /*#__PURE__*/ react.createElement(Button, {
47
+ color: "secondary",
48
+ name: `${currentName}-add-object`,
49
+ onClick: async (e)=>{
50
+ e.preventDefault();
51
+ const nestedFields = extra?.of.extra.fields.map((f)=>`${currentName}.${f.key}`);
52
+ const result = await trigger(nestedFields);
53
+ if (result) {
54
+ setValue('needs-more', '');
55
+ onStash(getValues(currentName));
56
+ }
57
+ }
58
+ }, extra?.label.object.add)));
59
+ }
60
+ },
61
+ {
62
+ label: {
63
+ primary: extra?.label.question.no
64
+ },
65
+ id: `radio-input-${name}-no`,
66
+ value: 'no'
67
+ }
68
+ ]
69
+ }
70
+ };
71
+ const { field, control, register, reset, error: needsMoreError } = useField(radioField.key, radioField?.type ? radioField : null);
72
+ const resolvedField = useMemo(()=>resolveField(children, field), [
73
+ field
74
+ ]);
75
+ const needsMore = useWatch({
76
+ name: field.key,
77
+ control
78
+ });
79
+ useEffect(()=>{
80
+ if ('yes' === needsMore) append({
81
+ afm: '',
82
+ firstName: '',
83
+ lastName: ''
84
+ });
85
+ if ('no' === needsMore && stashedObjects.length < fields.length) remove(currentIndex);
86
+ if ('' === needsMore) clearErrors('needs-more');
87
+ }, [
88
+ needsMore
89
+ ]);
90
+ resolvedField.label = resolvedField.label || {};
91
+ if (extra?.length) resolvedField.label.secondary = `Έχετε προσθέσει ${stashedObjects.length} εγγραφές και σας απομένουν ακόμα ${extra.length - stashedObjects.length} εγγραφές.`;
92
+ else if (extra?.min && extra?.max) resolvedField.label.secondary = `Το πεδίο πρέπει να έχει ακόμα ${extra?.min - stashedObjects.length} και το μέγιστο ${extra?.max} εγγραφές. Προσθέστε μια ακόμα επιλέγοντας την απάντηση «Ναι» στην επόμενη ερώτηση.`;
93
+ else if (extra?.min) resolvedField.label.secondary = `Το πεδίο πρέπει να έχει ακόμα ${extra?.min - stashedObjects.length} εγγραφές. Προσθέστε μια ακόμα επιλέγοντας την απάντηση «Ναι» στην επόμενη ερώτηση.`;
94
+ else if (extra?.max) resolvedField.label.secondary = ` Έχετε προσθέσει ${stashedObjects.length} εγγραφές και σας απομένουν ${extra.max - stashedObjects.length} επιπλέον εγγραφές.`;
95
+ return /*#__PURE__*/ react.createElement(Fieldset, null, /*#__PURE__*/ react.createElement(FieldBase, {
96
+ ...resolvedField,
97
+ name: resolvedField.key,
98
+ control: control,
99
+ register: register,
100
+ reset: reset,
101
+ resetField: resetField,
102
+ Field: Field,
103
+ error: extra?.max - stashedObjects.length === 0 || extra?.length - stashedObjects.length === 0 ? error : needsMoreError
104
+ }));
105
+ };
106
+ const add_objects = AddObjects;
107
+ export { AddObjects, add_objects as default };
@@ -1,23 +1,6 @@
1
1
  import React from 'react';
2
- import { ErrorOption, UseFormReturn } from 'react-hook-form';
3
- import { FieldSpec } from '@digigov/form';
4
- import { ControlledFieldProps } from '@digigov/form/Field/types';
5
- export interface MultiplicityProps extends Omit<ControlledFieldProps, 'value' | 'onChange' | 'error' | 'extra'> {
6
- name: string;
7
- control: UseFormReturn['control'];
8
- register: UseFormReturn['register'];
9
- trigger: UseFormReturn['trigger'];
10
- clearErrors: UseFormReturn['clearErrors'];
11
- formState: UseFormReturn['formState'];
12
- setValue: UseFormReturn['setValue'];
13
- getValues: UseFormReturn['getValues'];
14
- unregister: UseFormReturn['unregister'];
15
- error?: ErrorOption;
16
- extra?: Record<string, any>;
17
- label?: FieldSpec['label'];
18
- layout?: FieldSpec['layout'];
19
- }
20
- export type StashedObject = Record<string, any>;
2
+ import type { UseFormReturn } from 'react-hook-form';
3
+ import type { MultiplicityProps } from './types.js';
21
4
  export declare const Multiplicity: React.FC<MultiplicityProps>;
22
5
  export default Multiplicity;
23
6
  export interface ListObjectProps {
@@ -1,108 +1,86 @@
1
- import _extends from "@babel/runtime/helpers/extends";
2
- import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
3
- import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
4
- import React, { useState } from 'react';
5
- import { useFieldArray } from 'react-hook-form';
6
- import FieldContainer from '@digigov/form/Field/FieldBaseContainer';
7
- import FieldObject from '@digigov/form/FieldObject';
8
- import AddObjects from '@digigov/form/MultiplicityField/add-objects';
9
- import { Card, CardContent, CardAction, Button, Heading, CardHeading } from '@digigov/react-core';
10
- // epeidh einai forwardRef to ref mas to dinei xwrista apo ta props
11
- export var Multiplicity = function Multiplicity(_ref) {
12
- var extra = _ref.extra,
13
- name = _ref.name,
14
- control = _ref.control,
15
- error = _ref.error,
16
- register = _ref.register,
17
- trigger = _ref.trigger,
18
- clearErrors = _ref.clearErrors,
19
- formState = _ref.formState,
20
- label = _ref.label,
21
- layout = _ref.layout,
22
- setValue = _ref.setValue,
23
- getValues = _ref.getValues,
24
- unregister = _ref.unregister;
25
- var _useFieldArray = useFieldArray({
26
- control: control,
27
- name: name
28
- }),
29
- fields = _useFieldArray.fields,
30
- append = _useFieldArray.append,
31
- remove = _useFieldArray.remove;
32
- var _useState = useState([]),
33
- _useState2 = _slicedToArray(_useState, 2),
34
- stashedObjects = _useState2[0],
35
- setStashedObjects = _useState2[1];
36
- var handleStash = function handleStash(data) {
37
- setStashedObjects([].concat(_toConsumableArray(stashedObjects), [data]));
38
- };
39
- var handleDelete = function handleDelete(index) {
40
- remove(index);
41
- // creating a new array to maintain immutability
42
- var newStashedObjects = _toConsumableArray(stashedObjects);
43
- newStashedObjects.splice(index, 1);
44
- setStashedObjects(newStashedObjects);
45
- };
46
- return /*#__PURE__*/React.createElement(FieldContainer, {
47
- label: label,
48
- layout: layout,
49
- error: formState.isSubmitted && !formState.isSubmitting && error !== null && error !== void 0 && error.message ? error : undefined,
50
- wrapper: "fieldset",
51
- name: name
52
- }, stashedObjects.length > 0 ? /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Heading, {
53
- size: "md"
54
- }, extra === null || extra === void 0 ? void 0 : extra.label.object.title_added), stashedObjects.map(function (_Object, index) {
55
- return /*#__PURE__*/React.createElement(ListObject, {
56
- key: "".concat(name, ".").concat(index),
57
- index: index,
58
- name: name,
59
- extra: extra,
60
- control: control,
61
- register: register,
62
- formState: formState,
63
- onDelete: handleDelete
1
+ import react, { useState } from "react";
2
+ import { useFieldArray } from "react-hook-form";
3
+ import { FieldBaseContainer } from "../Field/FieldBaseContainer.js";
4
+ import { FieldObject } from "../FieldObject/index.js";
5
+ import { AddObjects } from "./add-objects.js";
6
+ import { Card, CardAction, CardContent, CardHeading } from "@digigov/ui/content/Card/index.js";
7
+ import { Button } from "@digigov/ui/form/Button/index.js";
8
+ import { Heading } from "@digigov/ui/typography/Heading/index.js";
9
+ const Multiplicity = ({ extra, name, control, error, register, trigger, clearErrors, formState, label, layout, setValue, getValues, unregister, resetField, Field })=>{
10
+ const { fields, append, remove } = useFieldArray({
11
+ control,
12
+ name
64
13
  });
65
- })) : '', /*#__PURE__*/React.createElement(AddObjects, {
66
- name: name,
67
- register: register,
68
- control: control,
69
- fields: fields,
70
- formState: formState,
71
- error: error,
72
- stashedObjects: stashedObjects,
73
- extra: extra,
74
- append: append,
75
- remove: remove,
76
- onStash: handleStash,
77
- setValue: setValue,
78
- getValues: getValues,
79
- unregister: unregister,
80
- trigger: trigger,
81
- clearErrors: clearErrors
82
- }));
14
+ const [stashedObjects, setStashedObjects] = useState([]);
15
+ const handleStash = (data)=>{
16
+ setStashedObjects([
17
+ ...stashedObjects,
18
+ data
19
+ ]);
20
+ };
21
+ const handleDelete = (index)=>{
22
+ remove(index);
23
+ const newStashedObjects = [
24
+ ...stashedObjects
25
+ ];
26
+ newStashedObjects.splice(index, 1);
27
+ setStashedObjects(newStashedObjects);
28
+ };
29
+ return /*#__PURE__*/ react.createElement(FieldBaseContainer, {
30
+ label: label,
31
+ layout: layout,
32
+ error: formState.isSubmitted && !formState.isSubmitting && error?.message ? error : void 0,
33
+ hasError: formState.isSubmitted && !formState.isSubmitting && !!error,
34
+ wrapper: "fieldset",
35
+ name: name,
36
+ register: register
37
+ }, stashedObjects.length > 0 ? /*#__PURE__*/ react.createElement("div", null, /*#__PURE__*/ react.createElement(Heading, {
38
+ size: "md"
39
+ }, extra?.label.object.title_added), stashedObjects.map((_Object, index)=>/*#__PURE__*/ react.createElement(ListObject, {
40
+ key: `${name}.${index}`,
41
+ index: index,
42
+ name: name,
43
+ extra: extra,
44
+ control: control,
45
+ register: register,
46
+ formState: formState,
47
+ onDelete: handleDelete
48
+ }))) : '', /*#__PURE__*/ react.createElement(AddObjects, {
49
+ name: name,
50
+ register: register,
51
+ control: control,
52
+ fields: fields,
53
+ formState: formState,
54
+ error: error,
55
+ stashedObjects: stashedObjects,
56
+ extra: extra,
57
+ append: append,
58
+ remove: remove,
59
+ onStash: handleStash,
60
+ setValue: setValue,
61
+ getValues: getValues,
62
+ unregister: unregister,
63
+ trigger: trigger,
64
+ resetField: resetField,
65
+ clearErrors: clearErrors,
66
+ Field: Field
67
+ }));
83
68
  };
84
- export default Multiplicity;
85
- export var ListObject = function ListObject(_ref2) {
86
- var index = _ref2.index,
87
- name = _ref2.name,
88
- extra = _ref2.extra,
89
- control = _ref2.control,
90
- register = _ref2.register,
91
- onDelete = _ref2.onDelete,
92
- formState = _ref2.formState;
93
- var currentName = "".concat(name, ".").concat(index);
94
- return /*#__PURE__*/React.createElement(Card, {
95
- variant: (extra === null || extra === void 0 ? void 0 : extra.border) && 'border'
96
- }, /*#__PURE__*/React.createElement(CardHeading, null, extra === null || extra === void 0 ? void 0 : extra.label.object.title, " #", index + 1), /*#__PURE__*/React.createElement(CardContent, null, /*#__PURE__*/React.createElement(FieldObject, _extends({
97
- name: currentName,
98
- formState: formState,
99
- register: register,
100
- control: control
101
- }, extra === null || extra === void 0 ? void 0 : extra.of))), /*#__PURE__*/React.createElement(CardAction, null, /*#__PURE__*/React.createElement(Button, {
102
- type: "button",
103
- variant: "link",
104
- onClick: function onClick() {
105
- return onDelete(index);
106
- }
107
- }, extra === null || extra === void 0 ? void 0 : extra.label.object["delete"])));
108
- };
69
+ const MultiplicityField = Multiplicity;
70
+ const ListObject = ({ index, name, extra, control, register, onDelete, formState })=>{
71
+ const currentName = `${name}.${index}`;
72
+ return /*#__PURE__*/ react.createElement(Card, {
73
+ variant: extra?.border && 'border'
74
+ }, /*#__PURE__*/ react.createElement(CardHeading, null, extra?.label.object.title, " #", index + 1), /*#__PURE__*/ react.createElement(CardContent, null, /*#__PURE__*/ react.createElement(FieldObject, {
75
+ name: currentName,
76
+ formState: formState,
77
+ register: register,
78
+ control: control,
79
+ ...extra?.of
80
+ })), /*#__PURE__*/ react.createElement(CardAction, null, /*#__PURE__*/ react.createElement(Button, {
81
+ type: "button",
82
+ variant: "link",
83
+ onClick: ()=>onDelete(index)
84
+ }, extra?.label.object.delete)));
85
+ };
86
+ export { ListObject, Multiplicity, MultiplicityField as default };
@@ -0,0 +1,19 @@
1
+ import type { ErrorOption, UseFormReturn } from 'react-hook-form';
2
+ import type { FieldSpec, ControlledFieldProps } from '../Field/types.js';
3
+ export interface MultiplicityProps extends Omit<ControlledFieldProps, 'value' | 'onChange' | 'error' | 'extra'> {
4
+ name: string;
5
+ control: UseFormReturn['control'];
6
+ register: UseFormReturn['register'];
7
+ trigger: UseFormReturn['trigger'];
8
+ clearErrors: UseFormReturn['clearErrors'];
9
+ formState: UseFormReturn['formState'];
10
+ setValue: UseFormReturn['setValue'];
11
+ getValues: UseFormReturn['getValues'];
12
+ unregister: UseFormReturn['unregister'];
13
+ resetField?: UseFormReturn['resetField'];
14
+ error?: ErrorOption;
15
+ extra?: Record<string, any>;
16
+ label?: FieldSpec['label'];
17
+ layout?: FieldSpec['layout'];
18
+ }
19
+ export type StashedObject = Record<string, any>;
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { QuestionsInterface } from '@digigov/form/Questions/types';
2
+ import type { QuestionsInterface } from './types.js';
3
3
  /**
4
4
  * The Question component accepts question data as props
5
5
  * uses composable components to provide a wholesome UX