@digigov/form 2.0.0-a32ad9b2 → 2.0.0-a402a664

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 (300) hide show
  1. package/Field/FieldBase/index.js +6 -1
  2. package/Field/FieldBase.js.map +2 -2
  3. package/Field/FieldBaseContainer/index.js +5 -3
  4. package/Field/FieldBaseContainer.js.map +2 -2
  5. package/Field/FieldConditional/index.js +4 -0
  6. package/Field/FieldConditional.js.map +2 -2
  7. package/Field/index.js +10 -4
  8. package/Field/index.js.map +2 -2
  9. package/Field/types.d.ts +10 -3
  10. package/Field/utils/index.js +3 -1
  11. package/Field/utils/index.js.map +2 -2
  12. package/Field/utils/useField/index.js +8 -1
  13. package/Field/utils/useField.js.map +2 -2
  14. package/FieldArray/FormDialog/index.js +314 -196
  15. package/FieldArray/FormDialog.d.ts +20 -7
  16. package/FieldArray/FormDialog.js.map +3 -3
  17. package/FieldArray/__stories__/Default.d.ts +1 -1
  18. package/FieldArray/__stories__/WithExactLength.d.ts +1 -1
  19. package/FieldArray/__stories__/WithModal.d.ts +1 -1
  20. package/FieldArray/index.d.ts +1 -0
  21. package/FieldArray/index.js +12 -7
  22. package/FieldArray/index.js.map +2 -2
  23. package/FieldObject/index.d.ts +3 -0
  24. package/FieldObject/index.js +26 -15
  25. package/FieldObject/index.js.map +2 -2
  26. package/FormBuilder/FormBuilder.stories.d.ts +2 -0
  27. package/FormBuilder/__stories__/AutoErrorGrouping.d.ts +1 -1
  28. package/FormBuilder/__stories__/Default.d.ts +1 -1
  29. package/FormBuilder/__stories__/ErrorGrouping.d.ts +1 -1
  30. package/FormBuilder/index.d.ts +1 -1
  31. package/FormBuilder/index.js +11 -6
  32. package/FormBuilder/index.js.map +2 -2
  33. package/FormContext/index.js +6 -2
  34. package/FormContext.d.ts +1 -0
  35. package/FormContext.js.map +2 -2
  36. package/MultiplicityField/MultiplicityField.stories.d.ts +2 -0
  37. package/MultiplicityField/__stories__/Default.d.ts +1 -1
  38. package/MultiplicityField/__stories__/PreviewDisplay.d.ts +1 -1
  39. package/MultiplicityField/__stories__/WithExactLength.d.ts +1 -1
  40. package/MultiplicityField/__stories__/WithMaxLength.d.ts +1 -1
  41. package/MultiplicityField/__stories__/WithMinAndMaxLength.d.ts +1 -1
  42. package/MultiplicityField/__stories__/WithMinLength.d.ts +1 -1
  43. package/MultiplicityField/add-objects/index.js +2 -0
  44. package/MultiplicityField/add-objects.js.map +2 -2
  45. package/MultiplicityField/index.js +4 -1
  46. package/MultiplicityField/index.js.map +2 -2
  47. package/MultiplicityField/types.d.ts +1 -0
  48. package/Questions/Questions.stories.d.ts +2 -0
  49. package/Questions/__stories__/Default.d.ts +1 -1
  50. package/cjs/Field/FieldBase/index.js +6 -1
  51. package/cjs/Field/FieldBase.js.map +2 -2
  52. package/cjs/Field/FieldBaseContainer/index.js +4 -2
  53. package/cjs/Field/FieldBaseContainer.js.map +3 -3
  54. package/cjs/Field/FieldConditional/index.js +4 -0
  55. package/cjs/Field/FieldConditional.js.map +2 -2
  56. package/cjs/Field/index.js +10 -4
  57. package/cjs/Field/index.js.map +2 -2
  58. package/cjs/Field/types.js.map +1 -1
  59. package/cjs/Field/utils/index.js +3 -1
  60. package/cjs/Field/utils/index.js.map +2 -2
  61. package/cjs/Field/utils/useField/index.js +8 -1
  62. package/cjs/Field/utils/useField.js.map +2 -2
  63. package/cjs/FieldArray/FormDialog/index.js +309 -194
  64. package/cjs/FieldArray/FormDialog.js.map +3 -3
  65. package/cjs/FieldArray/index.js +12 -7
  66. package/cjs/FieldArray/index.js.map +2 -2
  67. package/cjs/FieldObject/index.js +26 -15
  68. package/cjs/FieldObject/index.js.map +2 -2
  69. package/cjs/FormBuilder/index.js +11 -6
  70. package/cjs/FormBuilder/index.js.map +2 -2
  71. package/cjs/FormContext/index.js +7 -2
  72. package/cjs/FormContext.js.map +2 -2
  73. package/cjs/MultiplicityField/add-objects/index.js +2 -0
  74. package/cjs/MultiplicityField/add-objects.js.map +2 -2
  75. package/cjs/MultiplicityField/index.js +4 -1
  76. package/cjs/MultiplicityField/index.js.map +2 -2
  77. package/cjs/MultiplicityField/types.js.map +1 -1
  78. package/cjs/inputs/Checkboxes/index.js +1 -1
  79. package/cjs/inputs/Checkboxes/index.js.map +2 -2
  80. package/cjs/inputs/DateInput/index.js +20 -8
  81. package/cjs/inputs/DateInput/index.js.map +2 -2
  82. package/cjs/inputs/DateTimeInput/index.js +23 -10
  83. package/cjs/inputs/DateTimeInput/index.js.map +2 -2
  84. package/cjs/inputs/FileInput/index.js +26 -21
  85. package/cjs/inputs/FileInput/index.js.map +2 -2
  86. package/cjs/inputs/ImageInput/__stories__/logo.d/index.js +1 -0
  87. package/cjs/inputs/ImageInput/__stories__/logo.d.js.map +7 -0
  88. package/cjs/inputs/ImageInput/index.js +41 -10
  89. package/cjs/inputs/ImageInput/index.js.map +2 -2
  90. package/cjs/inputs/Input/index.js +4 -4
  91. package/cjs/inputs/Input/index.js.map +2 -2
  92. package/cjs/inputs/Select/index.js +4 -3
  93. package/cjs/inputs/Select/index.js.map +2 -2
  94. package/cjs/inputs/inputsScenarios/index.js +2 -2
  95. package/cjs/inputs/inputsScenarios.js.map +2 -2
  96. package/cjs/lazy/index.js +2 -1
  97. package/cjs/lazy.js.map +2 -2
  98. package/cjs/registry/index.js +6 -6
  99. package/cjs/registry.js.map +2 -2
  100. package/cjs/types.js.map +1 -1
  101. package/cjs/utils/index.js +20 -6
  102. package/cjs/utils.js.map +2 -2
  103. package/cjs/validators/index.js +10 -5
  104. package/cjs/validators/index.js.map +2 -2
  105. package/cjs/validators/utils/amka/index.js +60 -0
  106. package/cjs/validators/utils/amka.js.map +7 -0
  107. package/cjs/validators/utils/file/index.js +30 -17
  108. package/cjs/validators/utils/file.js.map +2 -2
  109. package/cjs/validators/utils/index.js +5 -1
  110. package/cjs/validators/utils/index.js.map +2 -2
  111. package/index.js +1 -1
  112. package/inputs/AutoCompleteInput/AutoComplete.stories.d.ts +2 -0
  113. package/inputs/AutoCompleteInput/__stories__/Default.d.ts +1 -1
  114. package/inputs/AutoCompleteInput/__stories__/Multiple.d.ts +1 -1
  115. package/inputs/Checkboxes/Checkboxes.stories.d.ts +2 -0
  116. package/inputs/Checkboxes/__stories__/Conditional.d.ts +1 -1
  117. package/inputs/Checkboxes/__stories__/Default.d.ts +1 -1
  118. package/inputs/Checkboxes/__stories__/WithDivider.d.ts +1 -1
  119. package/inputs/Checkboxes/index.js +1 -1
  120. package/inputs/Checkboxes/index.js.map +2 -2
  121. package/inputs/DateInput/DateInput.stories.d.ts +2 -0
  122. package/inputs/DateInput/__stories__/Default.d.ts +1 -1
  123. package/inputs/DateInput/index.js +20 -8
  124. package/inputs/DateInput/index.js.map +2 -2
  125. package/inputs/DateTimeInput/DateTimeInput.stories.d.ts +2 -0
  126. package/inputs/DateTimeInput/__stories__/Default.d.ts +1 -1
  127. package/inputs/DateTimeInput/index.js +23 -10
  128. package/inputs/DateTimeInput/index.js.map +2 -2
  129. package/inputs/FileInput/FileInput.stories.d.ts +3 -0
  130. package/inputs/FileInput/__stories__/Default.d.ts +1 -1
  131. package/inputs/FileInput/__stories__/WithBorderAndLink.d.ts +3 -0
  132. package/inputs/FileInput/index.d.ts +6 -3
  133. package/inputs/FileInput/index.js +31 -23
  134. package/inputs/FileInput/index.js.map +2 -2
  135. package/inputs/ImageInput/ImageInput.stories.d.ts +4 -1
  136. package/inputs/ImageInput/__stories__/Default.d.ts +1 -1
  137. package/inputs/ImageInput/__stories__/MaxSize.d.ts +1 -1
  138. package/inputs/ImageInput/__stories__/WithInitialValues.d.ts +3 -0
  139. package/inputs/ImageInput/__stories__/WithInvalidImageDimension.d.ts +1 -1
  140. package/inputs/ImageInput/__stories__/logo.d/index.js +1 -0
  141. package/inputs/ImageInput/__stories__/logo.d/package.json +6 -0
  142. package/inputs/ImageInput/__stories__/logo.d.js.map +7 -0
  143. package/inputs/ImageInput/index.d.ts +9 -1
  144. package/inputs/ImageInput/index.js +42 -11
  145. package/inputs/ImageInput/index.js.map +2 -2
  146. package/inputs/Input/Input.stories.d.ts +4 -0
  147. package/inputs/Input/__stories__/AFM.d.ts +1 -1
  148. package/inputs/Input/__stories__/AMKA.d.ts +3 -0
  149. package/inputs/Input/__stories__/Boolean.d.ts +1 -1
  150. package/inputs/Input/__stories__/Email.d.ts +3 -0
  151. package/inputs/Input/__stories__/IBAN.d.ts +1 -1
  152. package/inputs/Input/__stories__/Integer.d.ts +1 -1
  153. package/inputs/Input/__stories__/LandlineNumber.d.ts +1 -1
  154. package/inputs/Input/__stories__/MobilePhone.d.ts +1 -1
  155. package/inputs/Input/__stories__/PhoneNumber.d.ts +1 -1
  156. package/inputs/Input/__stories__/PostalCode.d.ts +1 -1
  157. package/inputs/Input/__stories__/String.d.ts +1 -1
  158. package/inputs/Input/__stories__/StringWithTrimValidation.d.ts +1 -1
  159. package/inputs/Input/__stories__/TextWithLimit.d.ts +1 -1
  160. package/inputs/Input/index.d.ts +2 -1
  161. package/inputs/Input/index.js +4 -4
  162. package/inputs/Input/index.js.map +2 -2
  163. package/inputs/Label/Label.stories.d.ts +2 -0
  164. package/inputs/Label/__stories__/Default.d.ts +1 -1
  165. package/inputs/OtpInput/OtpInput.stories.d.ts +2 -0
  166. package/inputs/OtpInput/__stories__/Default.d.ts +1 -1
  167. package/inputs/Radio/Radio.stories.d.ts +2 -0
  168. package/inputs/Radio/__stories__/Conditional.d.ts +1 -1
  169. package/inputs/Radio/__stories__/Default.d.ts +1 -1
  170. package/inputs/Radio/__stories__/WithDivider.d.ts +1 -1
  171. package/inputs/Select/Select.stories.d.ts +2 -0
  172. package/inputs/Select/__stories__/Default.d.ts +1 -1
  173. package/inputs/Select/index.d.ts +2 -1
  174. package/inputs/Select/index.js +4 -3
  175. package/inputs/Select/index.js.map +2 -2
  176. package/inputs/inputsScenarios/index.js +2 -2
  177. package/inputs/inputsScenarios.d.ts +1 -1
  178. package/inputs/inputsScenarios.js.map +2 -2
  179. package/lazy/index.js +2 -1
  180. package/package.json +4 -4
  181. package/registry/index.js +6 -6
  182. package/src/Field/FieldBase.tsx +5 -0
  183. package/src/Field/FieldBaseContainer.tsx +8 -4
  184. package/src/Field/FieldConditional.tsx +4 -0
  185. package/src/Field/index.tsx +15 -5
  186. package/src/Field/types.tsx +11 -3
  187. package/src/Field/utils/index.ts +2 -0
  188. package/src/Field/utils/useField.ts +9 -1
  189. package/src/FieldArray/FormDialog.tsx +430 -243
  190. package/src/FieldArray/__stories__/Default.tsx +1 -1
  191. package/src/FieldArray/__stories__/WithExactLength.tsx +1 -1
  192. package/src/FieldArray/__stories__/WithModal.tsx +4 -3
  193. package/src/FieldArray/index.tsx +26 -30
  194. package/src/FieldObject/index.tsx +33 -18
  195. package/src/FormBuilder/FormBuilder.stories.js +3 -0
  196. package/src/FormBuilder/__stories__/AutoErrorGrouping.tsx +1 -1
  197. package/src/FormBuilder/__stories__/Default.tsx +1 -1
  198. package/src/FormBuilder/__stories__/ErrorGrouping.tsx +1 -1
  199. package/src/FormBuilder/index.tsx +12 -6
  200. package/src/FormBuilder/scenarios.test.tsx +6 -6
  201. package/src/FormContext.tsx +5 -1
  202. package/src/MultiplicityField/MultiplicityField.stories.js +3 -0
  203. package/src/MultiplicityField/__stories__/Default.tsx +1 -1
  204. package/src/MultiplicityField/__stories__/PreviewDisplay.tsx +1 -1
  205. package/src/MultiplicityField/__stories__/WithExactLength.tsx +1 -1
  206. package/src/MultiplicityField/__stories__/WithMaxLength.tsx +1 -1
  207. package/src/MultiplicityField/__stories__/WithMinAndMaxLength.tsx +1 -1
  208. package/src/MultiplicityField/__stories__/WithMinLength.tsx +1 -1
  209. package/src/MultiplicityField/add-objects.tsx +2 -0
  210. package/src/MultiplicityField/index.tsx +3 -0
  211. package/src/MultiplicityField/types.ts +1 -0
  212. package/src/Questions/Questions.stories.js +3 -0
  213. package/src/Questions/__stories__/Default.tsx +1 -1
  214. package/src/inputs/AutoCompleteInput/AutoComplete.stories.js +3 -0
  215. package/src/inputs/AutoCompleteInput/__stories__/Default.tsx +1 -1
  216. package/src/inputs/AutoCompleteInput/__stories__/Multiple.tsx +1 -1
  217. package/src/inputs/Checkboxes/Checkboxes.stories.js +3 -0
  218. package/src/inputs/Checkboxes/__stories__/Conditional.tsx +1 -1
  219. package/src/inputs/Checkboxes/__stories__/Default.tsx +1 -1
  220. package/src/inputs/Checkboxes/__stories__/WithDivider.tsx +1 -1
  221. package/src/inputs/Checkboxes/index.tsx +1 -1
  222. package/src/inputs/DateInput/DateInput.stories.js +3 -0
  223. package/src/inputs/DateInput/__stories__/Default.tsx +1 -1
  224. package/src/inputs/DateInput/index.tsx +21 -7
  225. package/src/inputs/DateTimeInput/DateTimeInput.stories.js +3 -0
  226. package/src/inputs/DateTimeInput/__stories__/Default.tsx +1 -1
  227. package/src/inputs/DateTimeInput/index.tsx +24 -9
  228. package/src/inputs/FileInput/FileInput.stories.js +4 -0
  229. package/src/inputs/FileInput/__stories__/Default.tsx +1 -1
  230. package/src/inputs/FileInput/__stories__/WithBorderAndLink.tsx +34 -0
  231. package/src/inputs/FileInput/index.test.tsx +4 -0
  232. package/src/inputs/FileInput/index.tsx +41 -30
  233. package/src/inputs/ImageInput/ImageInput.stories.js +5 -1
  234. package/src/inputs/ImageInput/__stories__/Default.tsx +1 -1
  235. package/src/inputs/ImageInput/__stories__/MaxSize.tsx +3 -2
  236. package/src/inputs/ImageInput/__stories__/WithInitialValues.tsx +45 -0
  237. package/src/inputs/ImageInput/__stories__/WithInvalidImageDimension.tsx +1 -1
  238. package/src/inputs/ImageInput/__stories__/logo.d.ts +4 -0
  239. package/src/inputs/ImageInput/__stories__/logo.png +0 -0
  240. package/src/inputs/ImageInput/index.test.tsx +21 -17
  241. package/src/inputs/ImageInput/index.tsx +100 -48
  242. package/src/inputs/Input/Input.stories.js +5 -0
  243. package/src/inputs/Input/__stories__/AFM.tsx +1 -1
  244. package/src/inputs/Input/__stories__/AMKA.tsx +23 -0
  245. package/src/inputs/Input/__stories__/Boolean.tsx +1 -1
  246. package/src/inputs/Input/__stories__/Email.tsx +23 -0
  247. package/src/inputs/Input/__stories__/IBAN.tsx +1 -1
  248. package/src/inputs/Input/__stories__/Integer.tsx +1 -1
  249. package/src/inputs/Input/__stories__/LandlineNumber.tsx +1 -1
  250. package/src/inputs/Input/__stories__/MobilePhone.tsx +1 -1
  251. package/src/inputs/Input/__stories__/PhoneNumber.tsx +1 -1
  252. package/src/inputs/Input/__stories__/PostalCode.tsx +1 -1
  253. package/src/inputs/Input/__stories__/String.tsx +1 -1
  254. package/src/inputs/Input/__stories__/StringWithTrimValidation.tsx +1 -1
  255. package/src/inputs/Input/__stories__/TextWithLimit.tsx +1 -1
  256. package/src/inputs/Input/index.test.tsx +8 -0
  257. package/src/inputs/Input/index.tsx +5 -3
  258. package/src/inputs/Label/Label.stories.js +3 -0
  259. package/src/inputs/Label/__stories__/Default.tsx +1 -1
  260. package/src/inputs/OtpInput/OtpInput.stories.js +3 -0
  261. package/src/inputs/OtpInput/__stories__/Default.tsx +1 -1
  262. package/src/inputs/Radio/Radio.stories.js +3 -0
  263. package/src/inputs/Radio/__stories__/Conditional.tsx +1 -1
  264. package/src/inputs/Radio/__stories__/Default.tsx +1 -1
  265. package/src/inputs/Radio/__stories__/WithDivider.tsx +1 -1
  266. package/src/inputs/Select/Select.stories.js +3 -0
  267. package/src/inputs/Select/__stories__/Default.tsx +1 -1
  268. package/src/inputs/Select/index.tsx +7 -4
  269. package/src/inputs/inputsScenarios.ts +2 -2
  270. package/src/lazy.js +2 -1
  271. package/src/registry.js +6 -6
  272. package/src/types.tsx +2 -1
  273. package/src/utils.ts +27 -6
  274. package/src/validators/index.ts +16 -5
  275. package/src/validators/utils/amka.ts +39 -0
  276. package/src/validators/utils/file.ts +33 -19
  277. package/src/validators/utils/index.ts +4 -1
  278. package/types.d.ts +2 -1
  279. package/types.js.map +1 -1
  280. package/utils/index.js +20 -6
  281. package/utils.d.ts +2 -0
  282. package/utils.js.map +2 -2
  283. package/validators/index.d.ts +1 -1
  284. package/validators/index.js +11 -5
  285. package/validators/index.js.map +2 -2
  286. package/validators/utils/amka/index.js +36 -0
  287. package/{inputs/Input/inputsInputScenarios → validators/utils/amka}/package.json +1 -1
  288. package/validators/utils/amka.d.ts +6 -0
  289. package/validators/utils/amka.js.map +7 -0
  290. package/validators/utils/file/index.js +30 -17
  291. package/validators/utils/file.js.map +2 -2
  292. package/validators/utils/index.d.ts +1 -0
  293. package/validators/utils/index.js +4 -1
  294. package/validators/utils/index.js.map +2 -2
  295. package/cjs/inputs/Input/inputsInputScenarios/index.js +0 -439
  296. package/cjs/inputs/Input/inputsInputScenarios.js.map +0 -7
  297. package/inputs/Input/inputsInputScenarios/index.js +0 -406
  298. package/inputs/Input/inputsInputScenarios.d.ts +0 -57
  299. package/inputs/Input/inputsInputScenarios.js.map +0 -7
  300. package/src/inputs/Input/inputsInputScenarios.ts +0 -404
package/lazy/index.js CHANGED
@@ -9,12 +9,12 @@ export default {
9
9
  'FieldBase': lazy(() => import('@digigov/form/Field/FieldBase').then((module) => ({ default: module['FieldBase'] }))),
10
10
  'FieldBaseContainer': lazy(() => import('@digigov/form/Field/FieldBaseContainer').then((module) => ({ default: module['FieldBaseContainer'] }))),
11
11
  'FieldConditional': lazy(() => import('@digigov/form/Field/FieldConditional').then((module) => ({ default: module['FieldConditional'] }))),
12
- 'FieldObject': lazy(() => import('@digigov/form/FieldObject').then((module) => ({ default: module['FieldObject'] }))),
13
12
  'FormDialog': lazy(() => import('@digigov/form/FieldArray/FormDialog').then((module) => ({ default: module['FormDialog'] }))),
14
13
  'ArrayItemModal': lazy(() => import('@digigov/form/FieldArray/FormDialog').then((module) => ({ default: module['ArrayItemModal'] }))),
15
14
  'ArrayItemHeader': lazy(() => import('@digigov/form/FieldArray/FormDialog').then((module) => ({ default: module['ArrayItemHeader'] }))),
16
15
  'ArrayItemDisplay': lazy(() => import('@digigov/form/FieldArray/FormDialog').then((module) => ({ default: module['ArrayItemDisplay'] }))),
17
16
  'FieldArray': lazy(() => import('@digigov/form/FieldArray').then((module) => ({ default: module['FieldArray'] }))),
17
+ 'FieldObject': lazy(() => import('@digigov/form/FieldObject').then((module) => ({ default: module['FieldObject'] }))),
18
18
  'FieldsetWithContext': lazy(() => import('@digigov/form/Fieldset/FieldsetWithContext').then((module) => ({ default: module['FieldsetWithContext'] }))),
19
19
  'FieldsetLabel': lazy(() => import('@digigov/form/Fieldset').then((module) => ({ default: module['FieldsetLabel'] }))),
20
20
  'FieldsetCaption': lazy(() => import('@digigov/form/Fieldset').then((module) => ({ default: module['FieldsetCaption'] }))),
@@ -57,6 +57,7 @@ export default {
57
57
  'RadioButtonsGroup': lazy(() => import('@digigov/form/inputs/Radio').then((module) => ({ default: module['RadioButtonsGroup'] }))),
58
58
  'ControlledRadioButtonsGroup': lazy(() => import('@digigov/form/inputs/Radio').then((module) => ({ default: module['ControlledRadioButtonsGroup'] }))),
59
59
  'AFM_VALIDATOR': lazy(() => import('@digigov/form/validators/utils').then((module) => ({ default: module['AFM_VALIDATOR'] }))),
60
+ 'AMKA_VALIDATOR': lazy(() => import('@digigov/form/validators/utils').then((module) => ({ default: module['AMKA_VALIDATOR'] }))),
60
61
  'LATER_THAN_VALIDATOR': lazy(() => import('@digigov/form/validators/utils').then((module) => ({ default: module['LATER_THAN_VALIDATOR'] }))),
61
62
  'EARLIER_THAN_VALIDATOR': lazy(() => import('@digigov/form/validators/utils').then((module) => ({ default: module['EARLIER_THAN_VALIDATOR'] }))),
62
63
  'DATE_VALIDATOR': lazy(() => import('@digigov/form/validators/utils').then((module) => ({ default: module['DATE_VALIDATOR'] }))),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@digigov/form",
3
- "version": "2.0.0-a32ad9b2",
3
+ "version": "2.0.0-a402a664",
4
4
  "description": "@digigov form builder",
5
5
  "author": "GRNET Developers <devs@lists.grnet.gr>",
6
6
  "license": "BSD-2-Clause",
@@ -14,11 +14,11 @@
14
14
  "yup": "0.32.11",
15
15
  "dayjs": "1.10.4",
16
16
  "@hookform/resolvers": "5.0.1",
17
- "@digigov/react-icons": "2.0.0-a32ad9b2"
17
+ "@digigov/react-icons": "2.0.0-a402a664"
18
18
  },
19
19
  "peerDependencies": {
20
- "@digigov/ui": "2.0.0-a32ad9b2",
21
- "@digigov/react-core": "2.0.0-a32ad9b2",
20
+ "@digigov/ui": "2.0.0-a402a664",
21
+ "@digigov/react-core": "2.0.0-a402a664",
22
22
  "clsx": "1.1.1",
23
23
  "react": "^18.3.0 || ^19.1.0",
24
24
  "react-dom": "^18.3.0 || ^19.1.0"
package/registry/index.js CHANGED
@@ -10,9 +10,9 @@ import * as _digigov_form_Field_FieldBaseContainer from "@digigov/form/Field/Fie
10
10
  import * as _digigov_form_Field_FieldConditional from "@digigov/form/Field/FieldConditional";
11
11
  import * as _digigov_form_Field from "@digigov/form/Field";
12
12
  import * as _digigov_form_Field_types from "@digigov/form/Field/types";
13
- import * as _digigov_form_FieldObject from "@digigov/form/FieldObject";
14
13
  import * as _digigov_form_FieldArray_FormDialog from "@digigov/form/FieldArray/FormDialog";
15
14
  import * as _digigov_form_FieldArray from "@digigov/form/FieldArray";
15
+ import * as _digigov_form_FieldObject from "@digigov/form/FieldObject";
16
16
  import * as _digigov_form_Fieldset_FieldsetWithContext from "@digigov/form/Fieldset/FieldsetWithContext";
17
17
  import * as _digigov_form_Fieldset from "@digigov/form/Fieldset";
18
18
  import * as _digigov_form_Fieldset_types from "@digigov/form/Fieldset/types";
@@ -45,19 +45,19 @@ import * as _digigov_form_Questions_Step_StepTitle from "@digigov/form/Questions
45
45
  import * as _digigov_form_Questions_Step_getAddMoreFields from "@digigov/form/Questions/Step/getAddMoreFields";
46
46
  import * as _digigov_form_Questions_Step from "@digigov/form/Questions/Step";
47
47
  import * as _digigov_form_Questions_Step_types from "@digigov/form/Questions/Step/types";
48
- import * as _digigov_form_inputs_AutoCompleteInput from "@digigov/form/inputs/AutoCompleteInput";
49
48
  import * as _digigov_form_inputs_Checkboxes from "@digigov/form/inputs/Checkboxes";
49
+ import * as _digigov_form_inputs_AutoCompleteInput from "@digigov/form/inputs/AutoCompleteInput";
50
50
  import * as _digigov_form_inputs_DateInput from "@digigov/form/inputs/DateInput";
51
51
  import * as _digigov_form_inputs_DateTimeInput from "@digigov/form/inputs/DateTimeInput";
52
52
  import * as _digigov_form_inputs_FileInput from "@digigov/form/inputs/FileInput";
53
53
  import * as _digigov_form_inputs_ImageInput from "@digigov/form/inputs/ImageInput";
54
54
  import * as _digigov_form_inputs_Input from "@digigov/form/inputs/Input";
55
- import * as _digigov_form_inputs_Input_inputsInputScenarios from "@digigov/form/inputs/Input/inputsInputScenarios";
56
55
  import * as _digigov_form_inputs_Label from "@digigov/form/inputs/Label";
57
56
  import * as _digigov_form_inputs_OtpInput from "@digigov/form/inputs/OtpInput";
58
57
  import * as _digigov_form_inputs_Radio from "@digigov/form/inputs/Radio";
59
58
  import * as _digigov_form_inputs_Select from "@digigov/form/inputs/Select";
60
59
  import * as _digigov_form_validators_utils_afm from "@digigov/form/validators/utils/afm";
60
+ import * as _digigov_form_validators_utils_amka from "@digigov/form/validators/utils/amka";
61
61
  import * as _digigov_form_validators_utils_date from "@digigov/form/validators/utils/date";
62
62
  import * as _digigov_form_validators_utils_datetime from "@digigov/form/validators/utils/datetime";
63
63
  import * as _digigov_form_validators_utils_file from "@digigov/form/validators/utils/file";
@@ -101,9 +101,9 @@ export default {
101
101
  '@digigov/form/Field/FieldConditional': lazyImport(_digigov_form_Field_FieldConditional),
102
102
  '@digigov/form/Field': lazyImport(_digigov_form_Field),
103
103
  '@digigov/form/Field/types': lazyImport(_digigov_form_Field_types),
104
- '@digigov/form/FieldObject': lazyImport(_digigov_form_FieldObject),
105
104
  '@digigov/form/FieldArray/FormDialog': lazyImport(_digigov_form_FieldArray_FormDialog),
106
105
  '@digigov/form/FieldArray': lazyImport(_digigov_form_FieldArray),
106
+ '@digigov/form/FieldObject': lazyImport(_digigov_form_FieldObject),
107
107
  '@digigov/form/Fieldset/FieldsetWithContext': lazyImport(_digigov_form_Fieldset_FieldsetWithContext),
108
108
  '@digigov/form/Fieldset': lazyImport(_digigov_form_Fieldset),
109
109
  '@digigov/form/Fieldset/types': lazyImport(_digigov_form_Fieldset_types),
@@ -136,19 +136,19 @@ export default {
136
136
  '@digigov/form/Questions/Step/getAddMoreFields': lazyImport(_digigov_form_Questions_Step_getAddMoreFields),
137
137
  '@digigov/form/Questions/Step': lazyImport(_digigov_form_Questions_Step),
138
138
  '@digigov/form/Questions/Step/types': lazyImport(_digigov_form_Questions_Step_types),
139
- '@digigov/form/inputs/AutoCompleteInput': lazyImport(_digigov_form_inputs_AutoCompleteInput),
140
139
  '@digigov/form/inputs/Checkboxes': lazyImport(_digigov_form_inputs_Checkboxes),
140
+ '@digigov/form/inputs/AutoCompleteInput': lazyImport(_digigov_form_inputs_AutoCompleteInput),
141
141
  '@digigov/form/inputs/DateInput': lazyImport(_digigov_form_inputs_DateInput),
142
142
  '@digigov/form/inputs/DateTimeInput': lazyImport(_digigov_form_inputs_DateTimeInput),
143
143
  '@digigov/form/inputs/FileInput': lazyImport(_digigov_form_inputs_FileInput),
144
144
  '@digigov/form/inputs/ImageInput': lazyImport(_digigov_form_inputs_ImageInput),
145
145
  '@digigov/form/inputs/Input': lazyImport(_digigov_form_inputs_Input),
146
- '@digigov/form/inputs/Input/inputsInputScenarios': lazyImport(_digigov_form_inputs_Input_inputsInputScenarios),
147
146
  '@digigov/form/inputs/Label': lazyImport(_digigov_form_inputs_Label),
148
147
  '@digigov/form/inputs/OtpInput': lazyImport(_digigov_form_inputs_OtpInput),
149
148
  '@digigov/form/inputs/Radio': lazyImport(_digigov_form_inputs_Radio),
150
149
  '@digigov/form/inputs/Select': lazyImport(_digigov_form_inputs_Select),
151
150
  '@digigov/form/validators/utils/afm': lazyImport(_digigov_form_validators_utils_afm),
151
+ '@digigov/form/validators/utils/amka': lazyImport(_digigov_form_validators_utils_amka),
152
152
  '@digigov/form/validators/utils/date': lazyImport(_digigov_form_validators_utils_date),
153
153
  '@digigov/form/validators/utils/datetime': lazyImport(_digigov_form_validators_utils_datetime),
154
154
  '@digigov/form/validators/utils/file': lazyImport(_digigov_form_validators_utils_file),
@@ -39,10 +39,12 @@ export const FieldBase: React.FC<FieldBaseProps> = ({
39
39
  <FieldBaseContainer
40
40
  label={label}
41
41
  layout={layout}
42
+ register={register}
42
43
  error={errorGroupContext ? undefined : error}
43
44
  hasError={!!error}
44
45
  wrapper={wrapper}
45
46
  name={name}
47
+ controlled={controlled}
46
48
  >
47
49
  <Controller
48
50
  control={control}
@@ -74,6 +76,7 @@ export const FieldBase: React.FC<FieldBaseProps> = ({
74
76
  <FieldBaseContainer
75
77
  label={label}
76
78
  layout={layout}
79
+ register={register}
77
80
  error={errorGroupContext ? undefined : error}
78
81
  hasError={!!error}
79
82
  wrapper={wrapper}
@@ -90,6 +93,7 @@ export const FieldBase: React.FC<FieldBaseProps> = ({
90
93
  aria-describedby={error && `${name}-error`}
91
94
  required={required}
92
95
  disabled={editable === false}
96
+ defaultValue={defaultValue}
93
97
  {...componentProps}
94
98
  />
95
99
  ) : (
@@ -100,6 +104,7 @@ export const FieldBase: React.FC<FieldBaseProps> = ({
100
104
  error={!!error}
101
105
  extra={extra}
102
106
  type={type}
107
+ defaultValue={defaultValue}
103
108
  aria-required={!!required}
104
109
  aria-describedby={error && `${name}-error`}
105
110
  required={required}
@@ -3,7 +3,7 @@ import { FieldContainerProps } from '@digigov/form/Field/types';
3
3
  import Label from '@digigov/form/inputs/Label';
4
4
  import { ErrorMessage } from '@digigov/react-core/ErrorMessage';
5
5
  import FieldContainer from '@digigov/react-core/FieldContainer';
6
- import CoreFieldset from '@digigov/react-core/Fieldset';
6
+ import Fieldset from '@digigov/react-core/Fieldset';
7
7
  import FieldsetLegend from '@digigov/react-core/FieldsetLegend';
8
8
  import LabelContainer from '@digigov/react-core/LabelContainer';
9
9
  import { useTranslation } from '@digigov/ui/i18n';
@@ -17,6 +17,8 @@ export const FieldBaseContainer: React.FC<FieldContainerProps> = ({
17
17
  error,
18
18
  hasError,
19
19
  layout,
20
+ controlled,
21
+ labelSize = 'sm',
20
22
  }) => {
21
23
  const { t } = useTranslation();
22
24
  const errorMessage = error?.message.key
@@ -26,8 +28,10 @@ export const FieldBaseContainer: React.FC<FieldContainerProps> = ({
26
28
  if (wrapper === 'fieldset') {
27
29
  return (
28
30
  <FieldContainer error={hasError} {...layout}>
29
- <CoreFieldset>
30
- <FieldsetLegend size="sm">{label && label.primary}</FieldsetLegend>
31
+ <Fieldset {...(controlled && { tabIndex: -1 })}>
32
+ <FieldsetLegend size={labelSize}>
33
+ {label && label.primary}
34
+ </FieldsetLegend>
31
35
  {label && label.secondary && <Hint>{t(label.secondary)}</Hint>}
32
36
  {error && (
33
37
  <ErrorMessage id={`${name}-error`}>
@@ -36,7 +40,7 @@ export const FieldBaseContainer: React.FC<FieldContainerProps> = ({
36
40
  )}
37
41
  {children}
38
42
  {label && label.hint && <Hint size="sm">{label.hint}</Hint>}
39
- </CoreFieldset>
43
+ </Fieldset>
40
44
  </FieldContainer>
41
45
  );
42
46
  } else {
@@ -13,6 +13,7 @@ const ChildFieldMemo = React.memo(
13
13
  field,
14
14
  control,
15
15
  reset,
16
+ resetField,
16
17
  register,
17
18
  error,
18
19
  Field,
@@ -27,6 +28,7 @@ const ChildFieldMemo = React.memo(
27
28
  Field={Field}
28
29
  name={newField.key}
29
30
  reset={reset}
31
+ resetField={resetField}
30
32
  control={control}
31
33
  register={register}
32
34
  error={error}
@@ -54,6 +56,7 @@ export const FieldConditional: React.FC<FieldConditionalProps> = ({
54
56
  field,
55
57
  register,
56
58
  reset,
59
+ resetField,
57
60
  error,
58
61
  Field,
59
62
  }) => {
@@ -76,6 +79,7 @@ export const FieldConditional: React.FC<FieldConditionalProps> = ({
76
79
  control={control}
77
80
  register={register}
78
81
  reset={reset}
82
+ resetField={resetField}
79
83
  error={error}
80
84
  Field={Field}
81
85
  />
@@ -16,7 +16,6 @@ import FieldArray from '@digigov/form/FieldArray';
16
16
  import Multiplicity from '@digigov/form/MultiplicityField';
17
17
  export const Field: React.FC<FieldProps> = ({
18
18
  name,
19
- disabled,
20
19
  children,
21
20
  ...customField
22
21
  }) => {
@@ -25,6 +24,7 @@ export const Field: React.FC<FieldProps> = ({
25
24
  control,
26
25
  register,
27
26
  reset,
27
+ resetField,
28
28
  error,
29
29
  componentRegistry,
30
30
  formState,
@@ -47,12 +47,12 @@ export const Field: React.FC<FieldProps> = ({
47
47
  ),
48
48
  [field]
49
49
  );
50
-
51
50
  if (calculatedField.condition) {
52
51
  return (
53
52
  <FieldConditional
54
53
  control={control}
55
54
  reset={reset}
55
+ resetField={resetField}
56
56
  register={register}
57
57
  field={calculatedField as FieldWithCondition}
58
58
  error={error}
@@ -68,12 +68,15 @@ export const Field: React.FC<FieldProps> = ({
68
68
  trigger={trigger}
69
69
  register={register}
70
70
  clearErrors={clearErrors}
71
- error={error}
71
+ error={
72
+ formState.isSubmitted && !formState.isSubmitting ? error : undefined
73
+ }
72
74
  getValues={getValues}
73
75
  setValue={setValue}
74
76
  formState={formState}
75
77
  Field={Field}
76
78
  reset={reset}
79
+ resetField={resetField}
77
80
  {...calculatedField}
78
81
  />
79
82
  );
@@ -94,20 +97,27 @@ export const Field: React.FC<FieldProps> = ({
94
97
  setValue={setValue}
95
98
  getValues={getValues}
96
99
  unregister={unregister}
100
+ resetField={resetField}
97
101
  Field={Field}
98
102
  {...calculatedField}
99
103
  />
100
104
  );
101
105
  }
106
+ const editable =
107
+ customField.editable === false || customField.disabled === true
108
+ ? false
109
+ : true;
110
+ const customError = error ? error : formState?.errors[name];
102
111
  return (
103
112
  <FieldBase
104
113
  {...calculatedField}
114
+ editable={editable}
105
115
  name={name}
106
- disabled={disabled}
107
116
  control={control}
108
117
  register={register}
109
118
  reset={reset}
110
- error={error}
119
+ error={customError}
120
+ resetField={resetField}
111
121
  Field={Field}
112
122
  />
113
123
  );
@@ -1,6 +1,7 @@
1
1
  import React from 'react';
2
2
  import { ErrorOption, UseFormReturn, UseFormProps } from 'react-hook-form';
3
3
  import { ValidatorSchema } from '@digigov/form/validators/types';
4
+ import { FieldsetLegendProps } from '@digigov/ui/form/FieldContainer';
4
5
  import { GridProps } from '@digigov/ui/layouts/Grid';
5
6
 
6
7
  export interface FieldLabelProps {
@@ -25,6 +26,7 @@ export interface FieldSpec {
25
26
  | 'datetime'
26
27
  | 'otp'
27
28
  | 'afm'
29
+ | 'amka'
28
30
  | 'iban'
29
31
  | 'file'
30
32
  | 'image'
@@ -45,7 +47,7 @@ export interface FieldSpec {
45
47
  variant?: 'inline' | 'dialog';
46
48
  required?: boolean;
47
49
  enabled?: boolean;
48
- disabled?: boolean;
50
+ disabled?: boolean; // TODO: keep disabled or editable
49
51
  layout?: Record<
50
52
  string,
51
53
  | GridProps['xs']
@@ -80,6 +82,7 @@ export interface FieldConditionalProps {
80
82
  control: UseFormReturn['control'];
81
83
  register: UseFormReturn['register'];
82
84
  reset: UseFormReturn['reset'];
85
+ resetField?: UseFormReturn['resetField'];
83
86
  error?: ErrorOption;
84
87
  Field: React.FC<FieldProps>;
85
88
  }
@@ -93,12 +96,15 @@ export interface FieldComponentItem {
93
96
 
94
97
  export interface FieldContainerProps {
95
98
  name?: FieldSpec['key'];
99
+ register: FieldBaseProps['register'];
96
100
  layout?: FieldSpec['layout'];
97
101
  label?: FieldSpec['label'];
98
102
  error?: ErrorOption | Record<string, any>;
99
103
  hasError?: boolean;
100
104
  children?: React.ReactNode;
105
+ controlled?: boolean;
101
106
  wrapper?: FieldSpec['wrapper'];
107
+ labelSize?: FieldsetLegendProps['size'];
102
108
  }
103
109
 
104
110
  export type FieldComponentRegistry = Record<string, FieldComponentItem>;
@@ -117,7 +123,7 @@ export interface ControlledFieldProps {
117
123
  error?: boolean;
118
124
  name?: string;
119
125
  disabled?: boolean;
120
- Field: React.FC<FieldProps>;
126
+ Field?: React.FC<FieldProps>;
121
127
  }
122
128
 
123
129
  export interface UncontrolledFieldProps {
@@ -145,7 +151,8 @@ export interface FieldBaseProps extends CalculatedField {
145
151
  control: UseFormReturn['control'];
146
152
  register: UseFormReturn['register'];
147
153
  reset: UseFormReturn['reset'];
148
- Field: React.FC<FieldProps>;
154
+ resetField?: UseFormReturn['resetField'];
155
+ Field?: React.FC<FieldProps>;
149
156
  }
150
157
 
151
158
  export interface FieldProps extends FieldSpec {
@@ -158,6 +165,7 @@ export interface UseFieldProps {
158
165
  control: FieldBaseProps['control'];
159
166
  register: FieldBaseProps['register'];
160
167
  reset: FieldBaseProps['reset'];
168
+ resetField: FieldBaseProps['resetField'];
161
169
  watch: UseFormReturn['watch'];
162
170
  formState: UseFormReturn['formState'];
163
171
  getFieldState: UseFormReturn['getFieldState'];
@@ -20,10 +20,12 @@ export const FIELD_COMPONENTS: FieldComponentRegistry = {
20
20
  file: {
21
21
  wrapper: 'fieldset',
22
22
  component: FileInput,
23
+ // controlled: true,
23
24
  },
24
25
  image: {
25
26
  wrapper: 'fieldset',
26
27
  component: ImageInput,
28
+ controlled: true,
27
29
  },
28
30
  date: {
29
31
  wrapper: 'fieldset',
@@ -11,6 +11,7 @@ export const useField = (
11
11
  control,
12
12
  register,
13
13
  reset,
14
+ resetField,
14
15
  trigger,
15
16
  clearErrors,
16
17
  errors,
@@ -30,11 +31,17 @@ export const useField = (
30
31
  `);
31
32
  }
32
33
  let error = errors[name];
33
- const nameIndexRegex = name.match(/^(.*?)\.(\d+)$/);
34
+
35
+ const nameIndexRegex = name.match(/^\[*(.*?)\.(\d+)\]*$/);
34
36
  if (nameIndexRegex) {
35
37
  const [, fieldArrayName, indexStr] = nameIndexRegex;
36
38
  error = errors[fieldArrayName]?.[Number(indexStr)];
37
39
  }
40
+ const nestedNameIndexRegex = name.match(/^\[*(.*?)\.(\d+)\.(.*?)\]*$/);
41
+ if (nestedNameIndexRegex) {
42
+ const [, fieldArrayName, indexStr, fieldItemName] = nestedNameIndexRegex;
43
+ error = errors[fieldArrayName]?.[Number(indexStr)]?.[fieldItemName];
44
+ }
38
45
  useMemo(
39
46
  () => customField?.type && registerField({ ...customField, key: name }),
40
47
  [customField, name, registerField]
@@ -44,6 +51,7 @@ export const useField = (
44
51
  control,
45
52
  register,
46
53
  reset,
54
+ resetField,
47
55
  trigger,
48
56
  watch,
49
57
  componentRegistry,