@digigov/form 2.0.0-599965f0 → 2.0.0-5e7a6790

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 (389) hide show
  1. package/Field/ErrorGroup.d.ts +3 -3
  2. package/Field/ErrorGroup.js.map +1 -1
  3. package/Field/FieldBase/index.js +0 -1
  4. package/Field/FieldBase.d.ts +1 -1
  5. package/Field/FieldBase.js.map +2 -2
  6. package/Field/FieldBaseContainer.d.ts +1 -1
  7. package/Field/FieldBaseContainer.js.map +2 -2
  8. package/Field/FieldConditional.d.ts +1 -1
  9. package/Field/FieldConditional.js.map +1 -1
  10. package/Field/index.d.ts +1 -1
  11. package/Field/index.js +15 -25
  12. package/Field/index.js.map +2 -2
  13. package/Field/types.d.ts +11 -10
  14. package/Field/utils/evaluateFieldWithConditions.d.ts +2 -2
  15. package/Field/utils/evaluateFieldWithConditions.js.map +2 -2
  16. package/Field/utils/resolveField/index.js +35 -0
  17. package/Field/utils/{calculateField → resolveField}/package.json +1 -1
  18. package/Field/utils/resolveField.d.ts +3 -0
  19. package/Field/utils/resolveField.js.map +7 -0
  20. package/Field/utils/useField/index.js +4 -2
  21. package/Field/utils/useField.d.ts +1 -1
  22. package/Field/utils/useField.js.map +2 -2
  23. package/FieldArray/BaseFieldArray/index.js +76 -0
  24. package/{inputs/inputsScenarios → FieldArray/BaseFieldArray}/package.json +1 -1
  25. package/FieldArray/BaseFieldArray.d.ts +5 -0
  26. package/FieldArray/BaseFieldArray.js.map +7 -0
  27. package/FieldArray/FormDialog/ArrayDisplay/ArrayDisplay.stories.d.ts +10 -0
  28. package/FieldArray/FormDialog/ArrayDisplay/ArrayItemDisplay/index.js +97 -0
  29. package/FieldArray/FormDialog/ArrayDisplay/ArrayItemDisplay/package.json +6 -0
  30. package/FieldArray/FormDialog/ArrayDisplay/ArrayItemDisplay.d.ts +22 -0
  31. package/FieldArray/FormDialog/ArrayDisplay/ArrayItemDisplay.js.map +7 -0
  32. package/FieldArray/FormDialog/ArrayDisplay/ArrayItemHeader/index.js +11 -0
  33. package/FieldArray/FormDialog/ArrayDisplay/ArrayItemHeader/package.json +6 -0
  34. package/FieldArray/FormDialog/ArrayDisplay/ArrayItemHeader.d.ts +5 -0
  35. package/FieldArray/FormDialog/ArrayDisplay/ArrayItemHeader.js.map +7 -0
  36. package/FieldArray/FormDialog/ArrayDisplay/__stories__/Default.d.ts +2 -0
  37. package/FieldArray/FormDialog/ArrayDisplay/__stories__/ReadOnly.d.ts +2 -0
  38. package/FieldArray/FormDialog/ArrayDisplay/__stories__/Sortable.d.ts +2 -0
  39. package/FieldArray/FormDialog/ArrayDisplay/index.d.ts +14 -0
  40. package/FieldArray/FormDialog/ArrayDisplay/index.js +51 -0
  41. package/FieldArray/FormDialog/ArrayDisplay/index.js.map +7 -0
  42. package/FieldArray/FormDialog/ArrayDisplay/package.json +6 -0
  43. package/FieldArray/FormDialog/ArrayEditModal/index.js +149 -0
  44. package/FieldArray/FormDialog/ArrayEditModal/package.json +6 -0
  45. package/FieldArray/FormDialog/ArrayEditModal.d.ts +26 -0
  46. package/FieldArray/FormDialog/ArrayEditModal.js.map +7 -0
  47. package/FieldArray/FormDialog/index.d.ts +19 -0
  48. package/FieldArray/FormDialog/index.js +139 -346
  49. package/FieldArray/FormDialog/index.js.map +7 -0
  50. package/FieldArray/index.d.ts +4 -2
  51. package/FieldArray/index.js +25 -70
  52. package/FieldArray/index.js.map +2 -2
  53. package/FieldObject/index.d.ts +4 -4
  54. package/FieldObject/index.js +5 -12
  55. package/FieldObject/index.js.map +2 -2
  56. package/Fieldset/FieldsetWithContext.js.map +1 -1
  57. package/Fieldset/index.d.ts +1 -1
  58. package/Fieldset/index.js.map +1 -1
  59. package/Fieldset/types.d.ts +2 -2
  60. package/FormBuilder/index.d.ts +1 -1
  61. package/FormBuilder/index.js +155 -130
  62. package/FormBuilder/index.js.map +2 -2
  63. package/FormContext.d.ts +2 -2
  64. package/FormContext.js.map +2 -2
  65. package/MultiplicityField/add-objects/index.js +10 -19
  66. package/MultiplicityField/add-objects.d.ts +1 -1
  67. package/MultiplicityField/add-objects.js.map +2 -2
  68. package/MultiplicityField/index.d.ts +2 -2
  69. package/MultiplicityField/index.js.map +2 -2
  70. package/MultiplicityField/types.d.ts +2 -2
  71. package/Questions/Questions.d.ts +1 -1
  72. package/Questions/Questions.js.map +1 -1
  73. package/Questions/QuestionsContext.d.ts +1 -1
  74. package/Questions/QuestionsContext.js.map +1 -1
  75. package/Questions/Step/Step.d.ts +1 -1
  76. package/Questions/Step/Step.js.map +1 -1
  77. package/Questions/Step/StepArrayReview.d.ts +1 -1
  78. package/Questions/Step/StepArrayReview.js.map +1 -1
  79. package/Questions/Step/StepContext.d.ts +1 -1
  80. package/Questions/Step/StepContext.js.map +1 -1
  81. package/Questions/Step/StepDescription.d.ts +1 -1
  82. package/Questions/Step/StepDescription.js.map +2 -2
  83. package/Questions/Step/StepForm.d.ts +2 -2
  84. package/Questions/Step/StepForm.js.map +1 -1
  85. package/Questions/Step/StepQuote.d.ts +1 -1
  86. package/Questions/Step/StepQuote.js.map +2 -2
  87. package/Questions/Step/StepTitle.d.ts +1 -1
  88. package/Questions/Step/StepTitle.js.map +2 -2
  89. package/Questions/Step/getAddMoreFields.d.ts +2 -2
  90. package/Questions/Step/getAddMoreFields.js.map +1 -1
  91. package/Questions/Step/types.d.ts +1 -1
  92. package/Questions/getNextStep.d.ts +1 -1
  93. package/Questions/getNextStep.js.map +1 -1
  94. package/Questions/types.d.ts +1 -1
  95. package/cjs/Field/ErrorGroup.js.map +1 -1
  96. package/cjs/Field/FieldBase/index.js +0 -1
  97. package/cjs/Field/FieldBase.js.map +2 -2
  98. package/cjs/Field/FieldBaseContainer.js.map +2 -2
  99. package/cjs/Field/FieldConditional.js.map +1 -1
  100. package/cjs/Field/index.js +15 -22
  101. package/cjs/Field/index.js.map +2 -2
  102. package/cjs/Field/types.js.map +1 -1
  103. package/cjs/Field/utils/evaluateFieldWithConditions.js.map +2 -2
  104. package/cjs/Field/utils/resolveField/index.js +55 -0
  105. package/cjs/Field/utils/resolveField.js.map +7 -0
  106. package/cjs/Field/utils/useField/index.js +4 -2
  107. package/cjs/Field/utils/useField.js.map +2 -2
  108. package/cjs/FieldArray/BaseFieldArray/index.js +109 -0
  109. package/cjs/FieldArray/BaseFieldArray.js.map +7 -0
  110. package/cjs/FieldArray/FormDialog/ArrayDisplay/ArrayItemDisplay/index.js +130 -0
  111. package/cjs/FieldArray/FormDialog/ArrayDisplay/ArrayItemDisplay.js.map +7 -0
  112. package/cjs/{locales/el → FieldArray/FormDialog/ArrayDisplay/ArrayItemHeader}/index.js +16 -7
  113. package/cjs/FieldArray/FormDialog/ArrayDisplay/ArrayItemHeader.js.map +7 -0
  114. package/cjs/FieldArray/FormDialog/ArrayDisplay/index.js +84 -0
  115. package/cjs/FieldArray/FormDialog/ArrayDisplay/index.js.map +7 -0
  116. package/cjs/FieldArray/FormDialog/ArrayEditModal/index.js +177 -0
  117. package/cjs/FieldArray/FormDialog/ArrayEditModal.js.map +7 -0
  118. package/cjs/FieldArray/FormDialog/index.js +130 -329
  119. package/cjs/FieldArray/FormDialog/index.js.map +7 -0
  120. package/cjs/FieldArray/index.js +25 -70
  121. package/cjs/FieldArray/index.js.map +3 -3
  122. package/cjs/FieldObject/index.js +5 -9
  123. package/cjs/FieldObject/index.js.map +2 -2
  124. package/cjs/Fieldset/FieldsetWithContext.js.map +1 -1
  125. package/cjs/Fieldset/index.js.map +1 -1
  126. package/cjs/Fieldset/types.js.map +1 -1
  127. package/cjs/FormBuilder/index.js +156 -131
  128. package/cjs/FormBuilder/index.js.map +3 -3
  129. package/cjs/FormContext.js.map +2 -2
  130. package/cjs/MultiplicityField/add-objects/index.js +9 -13
  131. package/cjs/MultiplicityField/add-objects.js.map +2 -2
  132. package/cjs/MultiplicityField/index.js.map +2 -2
  133. package/cjs/MultiplicityField/types.js.map +1 -1
  134. package/cjs/Questions/Questions.js.map +1 -1
  135. package/cjs/Questions/QuestionsContext.js.map +1 -1
  136. package/cjs/Questions/Step/Step.js.map +1 -1
  137. package/cjs/Questions/Step/StepArrayReview.js.map +1 -1
  138. package/cjs/Questions/Step/StepContext.js.map +1 -1
  139. package/cjs/Questions/Step/StepDescription.js.map +2 -2
  140. package/cjs/Questions/Step/StepForm.js.map +1 -1
  141. package/cjs/Questions/Step/StepQuote.js.map +2 -2
  142. package/cjs/Questions/Step/StepTitle.js.map +2 -2
  143. package/cjs/Questions/Step/getAddMoreFields.js.map +1 -1
  144. package/cjs/Questions/Step/types.js.map +1 -1
  145. package/cjs/Questions/getNextStep.js.map +1 -1
  146. package/cjs/Questions/types.js.map +1 -1
  147. package/cjs/hooks/useFieldFocusManager/index.js +135 -0
  148. package/cjs/hooks/useFieldFocusManager.js.map +7 -0
  149. package/cjs/hooks/utils/index.js +98 -0
  150. package/cjs/hooks/utils.js.map +7 -0
  151. package/cjs/inputs/AutoCompleteInput/index.js.map +2 -2
  152. package/cjs/inputs/Checkboxes/index.js +67 -63
  153. package/cjs/inputs/Checkboxes/index.js.map +2 -2
  154. package/cjs/inputs/DateInput/index.js +10 -5
  155. package/cjs/inputs/DateInput/index.js.map +2 -2
  156. package/cjs/inputs/DateTimeInput/index.js +10 -5
  157. package/cjs/inputs/DateTimeInput/index.js.map +2 -2
  158. package/cjs/inputs/FileInput/index.js.map +2 -2
  159. package/cjs/inputs/ImageInput/index.js.map +1 -1
  160. package/cjs/inputs/Input/index.js +54 -56
  161. package/cjs/inputs/Input/index.js.map +2 -2
  162. package/cjs/inputs/Label/index.js.map +1 -1
  163. package/cjs/inputs/OtpInput/index.js +36 -31
  164. package/cjs/inputs/OtpInput/index.js.map +2 -2
  165. package/cjs/inputs/Radio/index.js +5 -4
  166. package/cjs/inputs/Radio/index.js.map +3 -3
  167. package/cjs/inputs/Select/index.js.map +1 -1
  168. package/cjs/{Field/utils → inputs/registry}/index.js +4 -4
  169. package/cjs/inputs/registry.js.map +7 -0
  170. package/cjs/{lazy/index.js → lazy.js} +10 -9
  171. package/cjs/lazy.js.map +2 -2
  172. package/cjs/{registry/index.js → registry.js} +23 -13
  173. package/cjs/registry.js.map +2 -2
  174. package/cjs/types.js.map +1 -1
  175. package/cjs/utils.js.map +2 -2
  176. package/cjs/validators/index.js.map +2 -2
  177. package/cjs/validators/types.js.map +1 -1
  178. package/cjs/validators/utils/date.js.map +1 -1
  179. package/cjs/validators/utils/datetime.js.map +1 -1
  180. package/cjs/validators/utils/file.js.map +1 -1
  181. package/cjs/validators/utils/iban.js.map +1 -1
  182. package/cjs/validators/utils/image.js.map +1 -1
  183. package/cjs/validators/utils/index.js.map +1 -1
  184. package/cjs/validators/utils/int.js.map +1 -1
  185. package/cjs/validators/utils/number.js.map +1 -1
  186. package/cjs/validators/utils/otp.js.map +1 -1
  187. package/cjs/validators/utils/phone.js.map +1 -1
  188. package/cjs/validators/utils/postal_code.js.map +1 -1
  189. package/cjs/validators/utils/text_limit.js.map +1 -1
  190. package/hooks/useFieldFocusManager/index.js +116 -0
  191. package/hooks/useFieldFocusManager/package.json +6 -0
  192. package/hooks/useFieldFocusManager.d.ts +25 -0
  193. package/hooks/useFieldFocusManager.js.map +7 -0
  194. package/hooks/utils/index.js +73 -0
  195. package/{Field → hooks}/utils/package.json +1 -1
  196. package/hooks/utils.d.ts +18 -0
  197. package/hooks/utils.js.map +7 -0
  198. package/index.js +1 -1
  199. package/inputs/AutoCompleteInput/index.d.ts +3 -3
  200. package/inputs/AutoCompleteInput/index.js +1 -3
  201. package/inputs/AutoCompleteInput/index.js.map +2 -2
  202. package/inputs/Checkboxes/index.d.ts +3 -3
  203. package/inputs/Checkboxes/index.js +67 -63
  204. package/inputs/Checkboxes/index.js.map +2 -2
  205. package/inputs/DateInput/index.d.ts +2 -5
  206. package/inputs/DateInput/index.js +10 -5
  207. package/inputs/DateInput/index.js.map +2 -2
  208. package/inputs/DateTimeInput/index.d.ts +2 -5
  209. package/inputs/DateTimeInput/index.js +10 -5
  210. package/inputs/DateTimeInput/index.js.map +2 -2
  211. package/inputs/FileInput/index.d.ts +4 -4
  212. package/inputs/FileInput/index.js +1 -4
  213. package/inputs/FileInput/index.js.map +2 -2
  214. package/inputs/ImageInput/index.d.ts +2 -2
  215. package/inputs/ImageInput/index.js.map +1 -1
  216. package/inputs/Input/index.d.ts +2 -2
  217. package/inputs/Input/index.js +54 -56
  218. package/inputs/Input/index.js.map +2 -2
  219. package/inputs/Label/index.d.ts +1 -1
  220. package/inputs/Label/index.js.map +1 -1
  221. package/inputs/OtpInput/index.d.ts +1 -5
  222. package/inputs/OtpInput/index.js +36 -31
  223. package/inputs/OtpInput/index.js.map +2 -2
  224. package/inputs/Radio/index.d.ts +4 -4
  225. package/inputs/Radio/index.js +5 -4
  226. package/inputs/Radio/index.js.map +3 -3
  227. package/inputs/Select/index.d.ts +2 -2
  228. package/inputs/Select/index.js.map +1 -1
  229. package/{Field/utils → inputs/registry}/index.js +1 -1
  230. package/{locales/el → inputs/registry}/package.json +1 -1
  231. package/{Field/utils/index.d.ts → inputs/registry.d.ts} +2 -1
  232. package/inputs/registry.js.map +7 -0
  233. package/lazy/index.js +10 -9
  234. package/package.json +4 -4
  235. package/registry/index.js +23 -13
  236. package/src/Field/ErrorGroup.tsx +3 -3
  237. package/src/Field/FieldBase.tsx +1 -2
  238. package/src/Field/FieldBaseContainer.tsx +3 -2
  239. package/src/Field/FieldConditional.tsx +1 -1
  240. package/src/Field/index.tsx +15 -33
  241. package/src/Field/types.tsx +11 -12
  242. package/src/Field/utils/evaluateFieldWithConditions.ts +5 -2
  243. package/src/Field/utils/resolveField.ts +58 -0
  244. package/src/Field/utils/useField.ts +3 -1
  245. package/src/FieldArray/BaseFieldArray.tsx +97 -0
  246. package/src/FieldArray/FormDialog/ArrayDisplay/ArrayDisplay.stories.js +11 -0
  247. package/src/FieldArray/FormDialog/ArrayDisplay/ArrayItemDisplay.tsx +165 -0
  248. package/src/FieldArray/FormDialog/ArrayDisplay/ArrayItemHeader.tsx +15 -0
  249. package/src/FieldArray/FormDialog/ArrayDisplay/__stories__/Default.tsx +93 -0
  250. package/src/FieldArray/FormDialog/ArrayDisplay/__stories__/ReadOnly.tsx +79 -0
  251. package/src/FieldArray/FormDialog/ArrayDisplay/__stories__/Sortable.tsx +93 -0
  252. package/src/FieldArray/FormDialog/ArrayDisplay/index.tsx +75 -0
  253. package/src/FieldArray/FormDialog/ArrayEditModal.tsx +233 -0
  254. package/src/FieldArray/FormDialog/index.tsx +247 -0
  255. package/src/FieldArray/__tests__/fieldset-multiplicity.spec.tsx +271 -0
  256. package/src/FieldArray/__tests__/multiplicity-attachment.spec.tsx +280 -0
  257. package/src/FieldArray/__tests__/multiplicity-required.spec.tsx +131 -0
  258. package/src/FieldArray/__tests__/nested-fieldset-multiplicity.spec.tsx +627 -0
  259. package/src/FieldArray/__tests__/preference-multiple-choice.spec.tsx +222 -0
  260. package/src/FieldArray/index.spec.tsx +355 -0
  261. package/src/FieldArray/index.tsx +29 -83
  262. package/src/FieldObject/index.tsx +9 -17
  263. package/src/Fieldset/FieldsetWithContext.tsx +1 -1
  264. package/src/Fieldset/index.tsx +1 -1
  265. package/src/Fieldset/types.tsx +2 -2
  266. package/src/FormBuilder/index.tsx +188 -142
  267. package/src/FormContext.tsx +3 -2
  268. package/src/MultiplicityField/add-objects.tsx +12 -21
  269. package/src/MultiplicityField/index.tsx +3 -2
  270. package/src/MultiplicityField/types.ts +5 -2
  271. package/src/Questions/Questions.tsx +2 -2
  272. package/src/Questions/QuestionsContext.tsx +1 -1
  273. package/src/Questions/Step/Step.tsx +1 -1
  274. package/src/Questions/Step/StepArrayReview.tsx +2 -2
  275. package/src/Questions/Step/StepContext.tsx +1 -1
  276. package/src/Questions/Step/StepDescription.tsx +2 -1
  277. package/src/Questions/Step/StepForm.tsx +2 -2
  278. package/src/Questions/Step/StepQuote.tsx +2 -1
  279. package/src/Questions/Step/StepTitle.tsx +2 -1
  280. package/src/Questions/Step/getAddMoreFields.tsx +2 -2
  281. package/src/Questions/Step/types.tsx +1 -1
  282. package/src/Questions/getNextStep.tsx +1 -1
  283. package/src/Questions/types.tsx +1 -1
  284. package/src/hooks/__tests__/useFieldFocusManager.spec.tsx +1079 -0
  285. package/src/hooks/__tests__/utils.spec.ts +568 -0
  286. package/src/hooks/useFieldFocusManager.ts +162 -0
  287. package/src/hooks/utils.ts +122 -0
  288. package/src/inputs/AutoCompleteInput/index.tsx +4 -6
  289. package/src/inputs/Checkboxes/index.tsx +95 -87
  290. package/src/inputs/DateInput/index.tsx +19 -6
  291. package/src/inputs/DateTimeInput/index.tsx +19 -6
  292. package/src/inputs/FileInput/index.tsx +9 -7
  293. package/src/inputs/ImageInput/index.tsx +2 -2
  294. package/src/inputs/Input/index.tsx +72 -71
  295. package/src/inputs/Label/index.tsx +1 -1
  296. package/src/inputs/OtpInput/index.tsx +43 -34
  297. package/src/inputs/Radio/index.tsx +29 -21
  298. package/src/inputs/Select/index.tsx +2 -2
  299. package/src/{Field/utils/index.ts → inputs/registry.ts} +3 -1
  300. package/src/lazy.js +10 -9
  301. package/src/registry.js +23 -13
  302. package/src/types.tsx +12 -5
  303. package/src/utils.ts +3 -2
  304. package/src/validators/index.ts +10 -9
  305. package/src/validators/types.ts +1 -1
  306. package/src/validators/utils/date.ts +2 -2
  307. package/src/validators/utils/datetime.ts +2 -2
  308. package/src/validators/utils/file.ts +2 -2
  309. package/src/validators/utils/iban.ts +2 -2
  310. package/src/validators/utils/image.ts +2 -2
  311. package/src/validators/utils/index.ts +2 -2
  312. package/src/validators/utils/int.ts +1 -1
  313. package/src/validators/utils/number.ts +1 -1
  314. package/src/validators/utils/otp.ts +2 -2
  315. package/src/validators/utils/phone.ts +2 -2
  316. package/src/validators/utils/postal_code.ts +2 -2
  317. package/src/validators/utils/text_limit.ts +2 -2
  318. package/types.d.ts +8 -4
  319. package/types.js.map +1 -1
  320. package/utils.d.ts +1 -1
  321. package/utils.js.map +2 -2
  322. package/validators/index.d.ts +5 -5
  323. package/validators/index.js.map +2 -2
  324. package/validators/types.d.ts +1 -1
  325. package/validators/utils/date.d.ts +2 -2
  326. package/validators/utils/date.js.map +1 -1
  327. package/validators/utils/datetime.d.ts +2 -2
  328. package/validators/utils/datetime.js.map +1 -1
  329. package/validators/utils/file.d.ts +2 -2
  330. package/validators/utils/file.js.map +1 -1
  331. package/validators/utils/iban.d.ts +2 -2
  332. package/validators/utils/iban.js.map +1 -1
  333. package/validators/utils/image.d.ts +2 -2
  334. package/validators/utils/image.js.map +1 -1
  335. package/validators/utils/index.d.ts +2 -2
  336. package/validators/utils/index.js.map +1 -1
  337. package/validators/utils/int.d.ts +1 -1
  338. package/validators/utils/int.js.map +1 -1
  339. package/validators/utils/number.d.ts +1 -1
  340. package/validators/utils/number.js.map +1 -1
  341. package/validators/utils/otp.d.ts +2 -2
  342. package/validators/utils/otp.js.map +1 -1
  343. package/validators/utils/phone.d.ts +2 -2
  344. package/validators/utils/phone.js.map +1 -1
  345. package/validators/utils/postal_code.d.ts +2 -2
  346. package/validators/utils/postal_code.js.map +1 -1
  347. package/validators/utils/text_limit.d.ts +2 -2
  348. package/validators/utils/text_limit.js.map +1 -1
  349. package/Field/utils/calculateField/index.js +0 -27
  350. package/Field/utils/calculateField.d.ts +0 -2
  351. package/Field/utils/calculateField.js.map +0 -7
  352. package/Field/utils/index.js.map +0 -7
  353. package/FieldArray/FormDialog.d.ts +0 -66
  354. package/FieldArray/FormDialog.js.map +0 -7
  355. package/FormBuilder/index.test.d.ts +0 -1
  356. package/FormBuilder/interaction.test.d.ts +0 -1
  357. package/FormBuilder/scenarios.test.d.ts +0 -88
  358. package/MultiplicityField/index.test.d.ts +0 -1
  359. package/Questions/index.spec.d.ts +0 -1
  360. package/Questions/index.test.d.ts +0 -1
  361. package/cjs/Field/utils/calculateField/index.js +0 -50
  362. package/cjs/Field/utils/calculateField.js.map +0 -7
  363. package/cjs/Field/utils/index.js.map +0 -7
  364. package/cjs/FieldArray/FormDialog.js.map +0 -7
  365. package/cjs/inputs/inputsScenarios/index.js +0 -533
  366. package/cjs/inputs/inputsScenarios.js.map +0 -7
  367. package/cjs/locales/el.js.map +0 -7
  368. package/inputs/AutoCompleteInput/index.test.d.ts +0 -1
  369. package/inputs/Checkboxes/index.test.d.ts +0 -1
  370. package/inputs/DateInput/index.test.d.ts +0 -1
  371. package/inputs/DateTimeInput/index.test.d.ts +0 -1
  372. package/inputs/FileInput/index.test.d.ts +0 -1
  373. package/inputs/ImageInput/index.test.d.ts +0 -1
  374. package/inputs/Input/index.test.d.ts +0 -1
  375. package/inputs/Label/index.test.d.ts +0 -1
  376. package/inputs/OtpInput/index.test.d.ts +0 -1
  377. package/inputs/Radio/index.test.d.ts +0 -1
  378. package/inputs/Select/index.test.d.ts +0 -1
  379. package/inputs/inputsScenarios/index.js +0 -499
  380. package/inputs/inputsScenarios.d.ts +0 -296
  381. package/inputs/inputsScenarios.js.map +0 -7
  382. package/locales/el/index.js +0 -6
  383. package/locales/el.d.ts +0 -2
  384. package/locales/el.js.map +0 -7
  385. package/src/Field/utils/calculateField.ts +0 -49
  386. package/src/FieldArray/FormDialog.tsx +0 -565
  387. package/src/inputs/inputsScenarios.ts +0 -496
  388. package/src/locales/el.ts +0 -3
  389. /package/{FieldArray/index.test.d.ts → hooks/__tests__/utils.spec.d.ts} +0 -0
@@ -0,0 +1,165 @@
1
+ import React from 'react';
2
+ import type { UseFieldArrayMove } from 'react-hook-form';
3
+ import { TableDataCell, TableRow } from '@digigov/ui/content';
4
+ import { Button } from '@digigov/ui/form/Button';
5
+ import type { StackProps } from '@digigov/ui/layouts';
6
+ import { Grid, Stack } from '@digigov/ui/layouts';
7
+ import Heading from '@digigov/ui/typography/Heading';
8
+
9
+ export interface ArrayItemDisplayProps {
10
+ data: any;
11
+ name: string;
12
+ edit: (name: string) => void;
13
+ remove: (name: string) => void;
14
+ disabledEdit?: boolean;
15
+ disabledDelete?: boolean;
16
+ disabled?: boolean;
17
+ sortable: boolean;
18
+ index: number;
19
+ isFirst: boolean;
20
+ isLast: boolean;
21
+ move: UseFieldArrayMove;
22
+ valueDisplay?: (value) => React.ReactNode;
23
+ border: boolean;
24
+ wordBreak?: 'break-all' | 'none';
25
+ stackProps?: StackProps;
26
+ }
27
+
28
+ export const ArrayItemDisplay = ({
29
+ name,
30
+ data,
31
+ edit,
32
+ remove,
33
+ disabledEdit,
34
+ disabledDelete,
35
+ disabled,
36
+ sortable,
37
+ index,
38
+ isFirst,
39
+ isLast,
40
+ move,
41
+ valueDisplay,
42
+ border = true,
43
+ wordBreak = 'break-all',
44
+ stackProps = {
45
+ spacing: 4,
46
+ alignItems: 'flex-end',
47
+ justifyContent: 'flex-end',
48
+ direction: 'column',
49
+ },
50
+ }: ArrayItemDisplayProps) => {
51
+ if (data === undefined || data === null) {
52
+ return null;
53
+ }
54
+ if (
55
+ Object.keys(data).length === 0 ||
56
+ (Object.keys(data).length === 1 && data.id)
57
+ ) {
58
+ return null;
59
+ }
60
+ delete data.id;
61
+ const values: (string | Record<string, any>)[] =
62
+ typeof data === 'string' ? [data] : Object.values(data || {});
63
+ const borderVariant = border === false || sortable ? 'none' : 'border';
64
+ return (
65
+ <>
66
+ <TableRow>
67
+ {values?.map?.((value, valueIndex) => {
68
+ return (
69
+ <TableDataCell
70
+ key={valueIndex}
71
+ variant={borderVariant}
72
+ wordBreak={wordBreak}
73
+ pb={sortable ? 0 : undefined}
74
+ pt={sortable ? 4 : undefined}
75
+ >
76
+ {sortable && valueIndex === 0 && (
77
+ <Heading size="sm" className="mb-2">
78
+ Επιλογή #{index + 1}
79
+ </Heading>
80
+ )}
81
+ {(value as Record<string, any>)?.name ||
82
+ (Array.isArray(value)
83
+ ? value.join('\n')
84
+ : valueDisplay
85
+ ? valueDisplay(value)
86
+ : value) ||
87
+ ''}
88
+ </TableDataCell>
89
+ );
90
+ })}
91
+ {disabled === true ||
92
+ (disabledEdit === true && disabledDelete === true) ? null : (
93
+ <TableDataCell variant={borderVariant}>
94
+ <Stack {...stackProps}>
95
+ {disabledEdit !== true && (
96
+ <Button
97
+ variant="link"
98
+ type="button"
99
+ onClick={() => {
100
+ edit(name);
101
+ }}
102
+ >
103
+ Επεξεργασία
104
+ </Button>
105
+ )}
106
+ {disabledDelete !== true && (
107
+ <Button
108
+ variant="link"
109
+ type="button"
110
+ onClick={() => remove(name)}
111
+ >
112
+ Διαγραφή
113
+ </Button>
114
+ )}
115
+ </Stack>
116
+ </TableDataCell>
117
+ )}
118
+ </TableRow>
119
+ {sortable && (
120
+ <TableRow>
121
+ <TableDataCell
122
+ variant={isLast ? 'none' : 'border'}
123
+ colSpan={
124
+ disabled === true ||
125
+ (disabledEdit === true && disabledDelete === true)
126
+ ? values.length
127
+ : values.length + 1
128
+ }
129
+ >
130
+ {sortable && !disabled && !(isFirst && isLast) && (
131
+ <Grid xs={12} mt={2}>
132
+ Μετακίνηση{' '}
133
+ {!isFirst && (
134
+ <>
135
+ προς τα{' '}
136
+ <Button
137
+ type="button"
138
+ variant="link"
139
+ onClick={() => move(index, index - 1)}
140
+ >
141
+ πάνω
142
+ </Button>
143
+ </>
144
+ )}
145
+ {!isFirst && !isLast && ' ή '}
146
+ {!isLast && (
147
+ <>
148
+ προς τα{' '}
149
+ <Button
150
+ type="button"
151
+ variant="link"
152
+ onClick={() => move(index, index + 1)}
153
+ >
154
+ κάτω
155
+ </Button>
156
+ </>
157
+ )}
158
+ </Grid>
159
+ )}
160
+ </TableDataCell>
161
+ </TableRow>
162
+ )}
163
+ </>
164
+ );
165
+ };
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ import { TableHead, TableHeadCell, TableRow } from '@digigov/ui/content';
3
+
4
+ export const ArrayItemHeader = ({ labels, disabled }) => {
5
+ return (
6
+ <TableHead>
7
+ <TableRow>
8
+ {labels.map((label, index) => {
9
+ return <TableHeadCell key={index}>{label}</TableHeadCell>;
10
+ })}
11
+ {!disabled && <TableHeadCell>Ενέργειες</TableHeadCell>}
12
+ </TableRow>
13
+ </TableHead>
14
+ );
15
+ };
@@ -0,0 +1,93 @@
1
+ import React, { useState } from 'react';
2
+ import { ArrayDisplay } from '@digigov/form/FieldArray/FormDialog/ArrayDisplay/';
3
+
4
+ const mockOfField = {
5
+ type: 'object',
6
+ label: { primary: 'Item' },
7
+ extra: {
8
+ fields: [
9
+ { key: 'afm', label: { primary: 'ΑΦΜ' } },
10
+ { key: 'firstName', label: { primary: 'Όνομα' } },
11
+ { key: 'lastName', label: { primary: 'Επώνυμο' } },
12
+ ],
13
+ },
14
+ };
15
+
16
+ const mockCustomField = {
17
+ editable: true,
18
+ extra: {
19
+ noHeader: false,
20
+ noEdit: false,
21
+ noDelete: false,
22
+ border: true,
23
+ verticalAlign: 'top',
24
+ wordBreak: 'break-all',
25
+ stackProps: {
26
+ spacing: 4,
27
+ alignItems: 'flex-end',
28
+ justifyContent: 'flex-end',
29
+ direction: 'column',
30
+ },
31
+ },
32
+ };
33
+
34
+ const initialValues = [
35
+ {
36
+ afm: '123456789',
37
+ firstName: 'Γιάννης',
38
+ lastName: 'Παπαδόπουλος',
39
+ },
40
+ {
41
+ afm: '987654321',
42
+ firstName: 'Μαρία',
43
+ lastName: 'Κωνσταντίνου',
44
+ },
45
+ {
46
+ afm: '456789123',
47
+ firstName: 'Δημήτρης',
48
+ lastName: 'Αθανασίου',
49
+ },
50
+ ];
51
+
52
+ export const Default = () => {
53
+ const [fieldArrayValues, setFieldArrayValues] = useState(initialValues);
54
+
55
+ const handleEdit = (index: number) => {
56
+ const newFirstName = prompt(
57
+ '[TEST INTERFACE] Εισάγετε νέο όνομα:',
58
+ fieldArrayValues[index].firstName
59
+ );
60
+ if (newFirstName !== null) {
61
+ const newValues = [...fieldArrayValues];
62
+ newValues[index] = { ...newValues[index], firstName: newFirstName };
63
+ setFieldArrayValues(newValues);
64
+ }
65
+ };
66
+
67
+ const handleRemove = (index: number) => {
68
+ if (confirm('Είστε βέβαιοι ότι θέλετε να διαγράψετε αυτό το στοιχείο;')) {
69
+ const newValues = fieldArrayValues.filter((_, i) => i !== index);
70
+ setFieldArrayValues(newValues);
71
+ }
72
+ };
73
+
74
+ const handleMove = (fromIndex: number, toIndex: number) => {
75
+ const newValues = [...fieldArrayValues];
76
+ const [movedItem] = newValues.splice(fromIndex, 1);
77
+ newValues.splice(toIndex, 0, movedItem);
78
+ setFieldArrayValues(newValues);
79
+ };
80
+
81
+ return (
82
+ <ArrayDisplay
83
+ fieldArrayName="signatories"
84
+ fieldArrayValues={fieldArrayValues}
85
+ ofField={mockOfField}
86
+ customField={mockCustomField}
87
+ onEdit={handleEdit}
88
+ onRemove={handleRemove}
89
+ move={handleMove}
90
+ sortable={false}
91
+ />
92
+ );
93
+ };
@@ -0,0 +1,79 @@
1
+ import React, { useState } from 'react';
2
+ import { ArrayDisplay } from '@digigov/form/FieldArray/FormDialog/ArrayDisplay/';
3
+
4
+ const mockOfField = {
5
+ type: 'object',
6
+ label: { primary: 'Item' },
7
+ extra: {
8
+ fields: [
9
+ { key: 'afm', label: { primary: 'ΑΦΜ' } },
10
+ { key: 'firstName', label: { primary: 'Όνομα' } },
11
+ { key: 'lastName', label: { primary: 'Επώνυμο' } },
12
+ ],
13
+ },
14
+ };
15
+
16
+ const mockCustomField = {
17
+ editable: false,
18
+ extra: {
19
+ noHeader: false,
20
+ noEdit: false,
21
+ noDelete: false,
22
+ border: true,
23
+ verticalAlign: 'top',
24
+ wordBreak: 'break-all',
25
+ stackProps: {
26
+ spacing: 4,
27
+ alignItems: 'flex-end',
28
+ justifyContent: 'flex-end',
29
+ direction: 'column',
30
+ },
31
+ },
32
+ };
33
+
34
+ const initialValues = [
35
+ {
36
+ afm: '123456789',
37
+ firstName: 'Γιάννης',
38
+ lastName: 'Παπαδόπουλος',
39
+ },
40
+ {
41
+ afm: '987654321',
42
+ firstName: 'Μαρία',
43
+ lastName: 'Κωνσταντίνου',
44
+ },
45
+ {
46
+ afm: '456789123',
47
+ firstName: 'Δημήτρης',
48
+ lastName: 'Αθανασίου',
49
+ },
50
+ ];
51
+
52
+ export const ReadOnly = () => {
53
+ const [fieldArrayValues] = useState(initialValues);
54
+
55
+ const handleEdit = () => {
56
+ console.log('Edit is disabled');
57
+ };
58
+
59
+ const handleRemove = () => {
60
+ console.log('Remove is disabled');
61
+ };
62
+
63
+ const handleMove = () => {
64
+ console.log('Move is disabled');
65
+ };
66
+
67
+ return (
68
+ <ArrayDisplay
69
+ fieldArrayName="signatories"
70
+ fieldArrayValues={fieldArrayValues}
71
+ ofField={mockOfField}
72
+ customField={mockCustomField}
73
+ onEdit={handleEdit}
74
+ onRemove={handleRemove}
75
+ move={handleMove}
76
+ sortable={false}
77
+ />
78
+ );
79
+ };
@@ -0,0 +1,93 @@
1
+ import React, { useState } from 'react';
2
+ import { ArrayDisplay } from '@digigov/form/FieldArray/FormDialog/ArrayDisplay/';
3
+
4
+ const mockOfField = {
5
+ type: 'object',
6
+ label: { primary: 'Item' },
7
+ extra: {
8
+ fields: [
9
+ { key: 'afm', label: { primary: 'ΑΦΜ' } },
10
+ { key: 'firstName', label: { primary: 'Όνομα' } },
11
+ { key: 'lastName', label: { primary: 'Επώνυμο' } },
12
+ ],
13
+ },
14
+ };
15
+
16
+ const mockCustomField = {
17
+ editable: true,
18
+ extra: {
19
+ noHeader: false,
20
+ noEdit: false,
21
+ noDelete: false,
22
+ border: true,
23
+ verticalAlign: 'top',
24
+ wordBreak: 'break-all',
25
+ stackProps: {
26
+ spacing: 4,
27
+ alignItems: 'flex-end',
28
+ justifyContent: 'flex-end',
29
+ direction: 'column',
30
+ },
31
+ },
32
+ };
33
+
34
+ const initialValues = [
35
+ {
36
+ afm: '123456789',
37
+ firstName: 'Γιάννης',
38
+ lastName: 'Παπαδόπουλος',
39
+ },
40
+ {
41
+ afm: '987654321',
42
+ firstName: 'Μαρία',
43
+ lastName: 'Κωνσταντίνου',
44
+ },
45
+ {
46
+ afm: '456789123',
47
+ firstName: 'Δημήτρης',
48
+ lastName: 'Αθανασίου',
49
+ },
50
+ ];
51
+
52
+ export const Sortable = () => {
53
+ const [fieldArrayValues, setFieldArrayValues] = useState(initialValues);
54
+
55
+ const handleEdit = (index: number) => {
56
+ const newFirstName = prompt(
57
+ 'Εισάγετε νέο όνομα:',
58
+ fieldArrayValues[index].firstName
59
+ );
60
+ if (newFirstName !== null) {
61
+ const newValues = [...fieldArrayValues];
62
+ newValues[index] = { ...newValues[index], firstName: newFirstName };
63
+ setFieldArrayValues(newValues);
64
+ }
65
+ };
66
+
67
+ const handleRemove = (index: number) => {
68
+ if (confirm('Είστε βέβαιοι ότι θέλετε να διαγράψετε αυτό το στοιχείο;')) {
69
+ const newValues = fieldArrayValues.filter((_, i) => i !== index);
70
+ setFieldArrayValues(newValues);
71
+ }
72
+ };
73
+
74
+ const handleMove = (fromIndex: number, toIndex: number) => {
75
+ const newValues = [...fieldArrayValues];
76
+ const [movedItem] = newValues.splice(fromIndex, 1);
77
+ newValues.splice(toIndex, 0, movedItem);
78
+ setFieldArrayValues(newValues);
79
+ };
80
+
81
+ return (
82
+ <ArrayDisplay
83
+ fieldArrayName="signatories"
84
+ fieldArrayValues={fieldArrayValues}
85
+ ofField={mockOfField}
86
+ customField={mockCustomField}
87
+ onEdit={handleEdit}
88
+ onRemove={handleRemove}
89
+ move={handleMove}
90
+ sortable={true}
91
+ />
92
+ );
93
+ };
@@ -0,0 +1,75 @@
1
+ import React from 'react';
2
+ import type { UseFieldArrayMove } from 'react-hook-form';
3
+ import { ArrayItemDisplay } from '@digigov/form/FieldArray/FormDialog/ArrayDisplay/ArrayItemDisplay';
4
+ import { ArrayItemHeader } from '@digigov/form/FieldArray/FormDialog/ArrayDisplay/ArrayItemHeader';
5
+ import { Table, TableBody, TableContainer } from '@digigov/ui/content';
6
+
7
+ export interface ArrayDisplayProps {
8
+ fieldArrayName: string;
9
+ fieldArrayValues: any[];
10
+ ofField: any;
11
+ customField: any;
12
+ onEdit: (index: number) => void;
13
+ onRemove: (index: number) => void;
14
+ move: UseFieldArrayMove;
15
+ sortable: boolean;
16
+ }
17
+
18
+ export const ArrayDisplay = ({
19
+ fieldArrayName,
20
+ fieldArrayValues,
21
+ ofField,
22
+ customField,
23
+ onEdit,
24
+ onRemove,
25
+ move,
26
+ sortable,
27
+ }: ArrayDisplayProps) => {
28
+ return (
29
+ <TableContainer {...customField.extra?.tableContainer}>
30
+ <Table verticalAlign={customField.extra?.verticalAlign}>
31
+ {!customField.extra?.noHeader &&
32
+ ofField?.extra &&
33
+ fieldArrayValues?.length > 0 && (
34
+ <ArrayItemHeader
35
+ labels={
36
+ ofField.type === 'object'
37
+ ? ofField.extra.fields.map(({ label }) => label.primary)
38
+ : [ofField.label.primary]
39
+ }
40
+ disabled={customField?.editable === false}
41
+ />
42
+ )}
43
+ <TableBody>
44
+ {fieldArrayValues?.map?.((field, index) => {
45
+ return (
46
+ <ArrayItemDisplay
47
+ key={index}
48
+ name={`${fieldArrayName}.${index}`}
49
+ index={index}
50
+ isFirst={index === 0}
51
+ isLast={index === fieldArrayValues.length - 1}
52
+ data={field}
53
+ edit={() => onEdit(index)}
54
+ stackProps={customField?.extra?.stackProps}
55
+ wordBreak={customField?.extra?.wordBreak}
56
+ valueDisplay={customField?.extra?.valueDisplay}
57
+ remove={() => onRemove(index)}
58
+ border={customField.extra?.border}
59
+ move={move}
60
+ sortable={sortable}
61
+ disabledEdit={
62
+ sortable ? true : (customField.extra?.noEdit ?? false)
63
+ }
64
+ disabledDelete={customField.extra?.noDelete ?? false}
65
+ disabled={customField?.editable === false}
66
+ />
67
+ );
68
+ })}
69
+ </TableBody>
70
+ </Table>
71
+ </TableContainer>
72
+ );
73
+ };
74
+
75
+ export default ArrayDisplay;