@digigov/form 0.7.0 → 0.8.1

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 (272) hide show
  1. package/CHANGELOG.md +22 -1
  2. package/Field/FieldBase.js +3 -11
  3. package/Field/FieldContainer.js +6 -3
  4. package/Field/index.js +37 -1
  5. package/Field/utils.js +17 -1
  6. package/FieldArray/FieldArray.stories.js +44 -0
  7. package/FieldArray/__stories__/Default.js +109 -0
  8. package/FieldArray/__stories__/WithExactLength.js +108 -0
  9. package/FieldArray/index.js +84 -0
  10. package/FieldObject/index.js +80 -0
  11. package/FormBuilder.js +22 -12
  12. package/MultiplicityField/MultiplicityField.stories.js +86 -0
  13. package/MultiplicityField/__stories__/Default.js +121 -0
  14. package/MultiplicityField/__stories__/WithExactLength.js +116 -0
  15. package/MultiplicityField/__stories__/WithMaxLength.js +119 -0
  16. package/MultiplicityField/__stories__/WithMinAndMaxLength.js +120 -0
  17. package/MultiplicityField/__stories__/WithMinLength.js +119 -0
  18. package/MultiplicityField/add-objects.js +180 -0
  19. package/MultiplicityField/index.js +142 -0
  20. package/es/Field/FieldBase.js +3 -11
  21. package/es/Field/FieldContainer.js +6 -3
  22. package/es/Field/index.js +35 -1
  23. package/es/Field/utils.js +17 -1
  24. package/es/FieldArray/FieldArray.stories.js +7 -0
  25. package/es/FieldArray/__stories__/Default.js +88 -0
  26. package/es/FieldArray/__stories__/WithExactLength.js +87 -0
  27. package/es/FieldArray/index.js +62 -0
  28. package/es/FieldObject/index.js +55 -0
  29. package/es/FormBuilder.js +22 -11
  30. package/es/MultiplicityField/MultiplicityField.stories.js +10 -0
  31. package/es/MultiplicityField/__stories__/Default.js +100 -0
  32. package/es/MultiplicityField/__stories__/WithExactLength.js +95 -0
  33. package/es/MultiplicityField/__stories__/WithMaxLength.js +98 -0
  34. package/es/MultiplicityField/__stories__/WithMinAndMaxLength.js +99 -0
  35. package/es/MultiplicityField/__stories__/WithMinLength.js +98 -0
  36. package/es/MultiplicityField/add-objects.js +156 -0
  37. package/es/MultiplicityField/index.js +113 -0
  38. package/es/inputs/FileInput/index.js +16 -10
  39. package/es/inputs/Radio/index.js +8 -13
  40. package/es/internal.js +2 -0
  41. package/es/utils.js +61 -46
  42. package/es/validators/index.js +26 -10
  43. package/es/validators/utils/index.js +1 -19
  44. package/esm/Field/FieldBase.js +3 -11
  45. package/esm/Field/FieldContainer.js +6 -3
  46. package/esm/Field/index.js +35 -1
  47. package/esm/Field/utils.js +17 -1
  48. package/esm/FieldArray/FieldArray.stories.js +7 -0
  49. package/esm/FieldArray/__stories__/Default.js +88 -0
  50. package/esm/FieldArray/__stories__/WithExactLength.js +87 -0
  51. package/esm/FieldArray/index.js +62 -0
  52. package/esm/FieldObject/index.js +55 -0
  53. package/esm/FormBuilder.js +22 -11
  54. package/esm/MultiplicityField/MultiplicityField.stories.js +10 -0
  55. package/esm/MultiplicityField/__stories__/Default.js +100 -0
  56. package/esm/MultiplicityField/__stories__/WithExactLength.js +95 -0
  57. package/esm/MultiplicityField/__stories__/WithMaxLength.js +98 -0
  58. package/esm/MultiplicityField/__stories__/WithMinAndMaxLength.js +99 -0
  59. package/esm/MultiplicityField/__stories__/WithMinLength.js +98 -0
  60. package/esm/MultiplicityField/add-objects.js +156 -0
  61. package/esm/MultiplicityField/index.js +113 -0
  62. package/esm/index.js +1 -1
  63. package/esm/inputs/FileInput/index.js +16 -10
  64. package/esm/inputs/Radio/index.js +8 -13
  65. package/esm/internal.js +2 -0
  66. package/esm/utils.js +61 -46
  67. package/esm/validators/index.js +26 -10
  68. package/esm/validators/utils/index.js +1 -19
  69. package/inputs/FileInput/index.js +17 -10
  70. package/inputs/Radio/index.js +8 -20
  71. package/internal.js +21 -0
  72. package/libs/form/src/Field/types.d.ts +21 -13
  73. package/libs/form/src/FieldArray/FieldArray.stories.d.ts +8 -0
  74. package/libs/form/src/FieldArray/__stories__/Default.d.ts +1 -0
  75. package/libs/form/src/FieldArray/__stories__/WithExactLength.d.ts +1 -0
  76. package/libs/form/src/FieldArray/index.d.ts +11 -0
  77. package/libs/form/src/FieldObject/index.d.ts +20 -0
  78. package/libs/form/src/MultiplicityField/MultiplicityField.stories.d.ts +11 -0
  79. package/libs/form/src/MultiplicityField/__stories__/Default.d.ts +1 -0
  80. package/libs/form/src/MultiplicityField/__stories__/WithExactLength.d.ts +1 -0
  81. package/libs/form/src/MultiplicityField/__stories__/WithMaxLength.d.ts +1 -0
  82. package/libs/form/src/MultiplicityField/__stories__/WithMinAndMaxLength.d.ts +1 -0
  83. package/libs/form/src/MultiplicityField/__stories__/WithMinLength.d.ts +1 -0
  84. package/libs/form/src/MultiplicityField/add-objects.d.ts +13 -0
  85. package/libs/form/src/MultiplicityField/index.d.ts +32 -0
  86. package/libs/form/src/inputs/DateInput/index.d.ts +0 -1
  87. package/libs/form/src/inputs/FileInput/index.d.ts +1 -0
  88. package/libs/form/src/inputs/Label/index.d.ts +1 -0
  89. package/libs/form/src/internal.d.ts +2 -0
  90. package/libs/form/src/types.d.ts +20 -12
  91. package/libs/form/src/utils.d.ts +8 -3
  92. package/libs/form/src/validators/index.d.ts +4 -3
  93. package/libs/form/src/validators/types.d.ts +1 -1
  94. package/libs/form/src/validators/utils/file.d.ts +3 -1
  95. package/libs/form/src/validators/utils/iban.d.ts +3 -1
  96. package/libs/form/src/validators/utils/index.d.ts +15 -3
  97. package/libs/form/src/validators/utils/phone.d.ts +3 -1
  98. package/libs/form/src/validators/utils/postal_code.d.ts +3 -1
  99. package/libs/ui/src/app/i18n.d.ts +2 -2
  100. package/libs/ui/src/core/Accordion/index.d.ts +3 -3
  101. package/libs/ui/src/core/Base/index.d.ts +3 -0
  102. package/libs/ui/src/core/Blockquote/index.d.ts +1 -1
  103. package/libs/ui/src/core/Button/BackButton.d.ts +1 -1
  104. package/libs/ui/src/core/Button/ButtonLink.d.ts +1 -1
  105. package/libs/ui/src/core/Button/index.d.ts +1 -1
  106. package/libs/ui/src/core/Divider/index.d.ts +1 -1
  107. package/libs/ui/src/core/Form/index.d.ts +3 -0
  108. package/libs/ui/src/core/Label/index.d.ts +4 -0
  109. package/libs/ui/src/core/Link/index.d.ts +1 -0
  110. package/libs/ui/src/core/List/ListItemContent.d.ts +0 -1
  111. package/libs/ui/src/core/List/ListItemIcon.d.ts +1 -3
  112. package/libs/ui/src/core/List/ListItemText.d.ts +0 -1
  113. package/libs/ui/src/core/List/ListItemTitle.d.ts +0 -1
  114. package/libs/ui/src/core/NavList/NavHorizontal.d.ts +3 -0
  115. package/libs/ui/src/core/NavList/NavHorizontalList.d.ts +3 -0
  116. package/libs/ui/src/core/NavList/NavHorizontalListItem.d.ts +3 -0
  117. package/libs/ui/src/core/NavList/NavListItemBase.d.ts +1 -1
  118. package/libs/ui/src/core/NavList/NavVertical.d.ts +3 -0
  119. package/libs/ui/src/core/NavList/NavVerticalItem.d.ts +3 -0
  120. package/libs/ui/src/core/NavList/index.d.ts +5 -0
  121. package/libs/ui/src/core/SkipLink/index.d.ts +3 -0
  122. package/libs/ui/src/core/SvgIcon/index.d.ts +1 -0
  123. package/libs/ui/src/core/Table/TableFloatingScroll.d.ts +0 -1
  124. package/libs/ui/src/core/index.d.ts +4 -0
  125. package/libs/ui/src/locales/el.d.ts +7 -0
  126. package/libs/ui/src/typography/Caption/index.d.ts +3 -2
  127. package/libs/ui/src/typography/Title/index.d.ts +2 -1
  128. package/libs-ui/react-core/src/Accordion/index.d.ts +3 -3
  129. package/libs-ui/react-core/src/AccordionControls/index.d.ts +3 -3
  130. package/libs-ui/react-core/src/AccordionSection/index.d.ts +3 -3
  131. package/libs-ui/react-core/src/AccordionSectionContent/index.d.ts +3 -3
  132. package/libs-ui/react-core/src/AccordionSectionHeader/index.d.ts +3 -3
  133. package/libs-ui/react-core/src/AccordionSectionSummary/index.d.ts +3 -3
  134. package/libs-ui/react-core/src/AccordionSectionSummaryHeading/index.d.ts +3 -3
  135. package/libs-ui/react-core/src/Aside/index.d.ts +10 -0
  136. package/libs-ui/react-core/src/BackLink/index.d.ts +3 -3
  137. package/libs-ui/react-core/src/Base/index.d.ts +43 -0
  138. package/libs-ui/react-core/src/Blockquote/index.d.ts +3 -3
  139. package/libs-ui/react-core/src/Bottom/index.d.ts +9 -0
  140. package/libs-ui/react-core/src/Breadcrumbs/index.d.ts +3 -3
  141. package/libs-ui/react-core/src/BreadcrumbsList/index.d.ts +3 -3
  142. package/libs-ui/react-core/src/BreadcrumbsListItem/index.d.ts +3 -3
  143. package/libs-ui/react-core/src/Button/index.d.ts +3 -3
  144. package/libs-ui/react-core/src/ButtonGroup/index.d.ts +3 -3
  145. package/libs-ui/react-core/src/ButtonLink/index.d.ts +3 -3
  146. package/libs-ui/react-core/src/CallToAction/index.d.ts +1 -1
  147. package/libs-ui/react-core/src/Card/index.d.ts +3 -3
  148. package/libs-ui/react-core/src/CardAction/index.d.ts +3 -3
  149. package/libs-ui/react-core/src/CardHeading/index.d.ts +3 -3
  150. package/libs-ui/react-core/src/CardText/index.d.ts +3 -3
  151. package/libs-ui/react-core/src/CheckIcon/index.d.ts +15 -0
  152. package/libs-ui/react-core/src/Checkbox/index.d.ts +3 -3
  153. package/libs-ui/react-core/src/CheckboxConditional/index.d.ts +11 -0
  154. package/libs-ui/react-core/src/CheckboxItem/index.d.ts +3 -3
  155. package/libs-ui/react-core/src/Confirmation/index.d.ts +3 -3
  156. package/libs-ui/react-core/src/ConfirmationBody/index.d.ts +3 -3
  157. package/libs-ui/react-core/src/ConfirmationTitle/index.d.ts +3 -3
  158. package/libs-ui/react-core/src/Container/index.d.ts +17 -0
  159. package/libs-ui/react-core/src/Copyright/index.d.ts +10 -0
  160. package/libs-ui/react-core/src/DateInput/index.d.ts +3 -3
  161. package/libs-ui/react-core/src/DateInputItem/index.d.ts +3 -3
  162. package/libs-ui/react-core/src/Details/index.d.ts +3 -3
  163. package/libs-ui/react-core/src/DetailsContent/index.d.ts +3 -3
  164. package/libs-ui/react-core/src/DetailsSummary/index.d.ts +3 -3
  165. package/libs-ui/react-core/src/ErrorMessage/index.d.ts +3 -3
  166. package/libs-ui/react-core/src/ErrorSummary/index.d.ts +3 -3
  167. package/libs-ui/react-core/src/Field/index.d.ts +1 -1
  168. package/libs-ui/react-core/src/Fieldset/index.d.ts +3 -3
  169. package/libs-ui/react-core/src/FieldsetLegend/index.d.ts +3 -3
  170. package/libs-ui/react-core/src/FileUpload/index.d.ts +3 -3
  171. package/libs-ui/react-core/src/Footer/index.d.ts +9 -0
  172. package/libs-ui/react-core/src/FooterContainer/index.d.ts +16 -0
  173. package/libs-ui/react-core/src/FooterContent/index.d.ts +10 -0
  174. package/libs-ui/react-core/src/FooterContentLogos/index.d.ts +11 -0
  175. package/libs-ui/react-core/src/FooterHeading/index.d.ts +15 -0
  176. package/libs-ui/react-core/src/FooterImage/index.d.ts +15 -0
  177. package/libs-ui/react-core/src/FooterInlineList/index.d.ts +11 -0
  178. package/libs-ui/react-core/src/FooterInlineListItem/index.d.ts +9 -0
  179. package/libs-ui/react-core/src/FooterLink/index.d.ts +13 -0
  180. package/libs-ui/react-core/src/FooterList/index.d.ts +15 -0
  181. package/libs-ui/react-core/src/FooterListItem/index.d.ts +10 -0
  182. package/libs-ui/react-core/src/FooterMeta/index.d.ts +11 -0
  183. package/libs-ui/react-core/src/FooterMetaItem/index.d.ts +14 -0
  184. package/libs-ui/react-core/src/FooterNavigation/index.d.ts +11 -0
  185. package/libs-ui/react-core/src/FooterSection/index.d.ts +11 -0
  186. package/libs-ui/react-core/src/Form/index.d.ts +3 -3
  187. package/libs-ui/react-core/src/GovGRFooter/index.d.ts +9 -0
  188. package/libs-ui/react-core/src/GovGRLogo/govgr-logo-base64.d.ts +2 -0
  189. package/libs-ui/react-core/src/GovGRLogo/index.d.ts +9 -0
  190. package/libs-ui/react-core/src/Grid/index.d.ts +3 -3
  191. package/libs-ui/react-core/src/Header/index.d.ts +10 -0
  192. package/libs-ui/react-core/src/HeaderContent/index.d.ts +9 -0
  193. package/libs-ui/react-core/src/HeaderLogo/index.d.ts +21 -0
  194. package/libs-ui/react-core/src/HeaderSecondaryLogo/index.d.ts +21 -0
  195. package/libs-ui/react-core/src/HeaderSection/index.d.ts +9 -0
  196. package/libs-ui/react-core/src/HeaderSubtitle/index.d.ts +9 -0
  197. package/libs-ui/react-core/src/HeaderTitle/index.d.ts +13 -0
  198. package/libs-ui/react-core/src/Heading/index.d.ts +3 -3
  199. package/libs-ui/react-core/src/HeadingCaption/index.d.ts +3 -3
  200. package/libs-ui/react-core/src/HellenicRepublicLogo/index.d.ts +20 -0
  201. package/libs-ui/react-core/src/HellenicRepublicLogo/logo-el.d.ts +2 -0
  202. package/libs-ui/react-core/src/HellenicRepublicLogo/logo-en.d.ts +2 -0
  203. package/libs-ui/react-core/src/Hidden/index.d.ts +3 -3
  204. package/libs-ui/react-core/src/Hint/index.d.ts +3 -3
  205. package/libs-ui/react-core/src/Label/index.d.ts +3 -3
  206. package/libs-ui/react-core/src/LabelTitle/index.d.ts +7 -7
  207. package/libs-ui/react-core/src/Layout/index.d.ts +10 -0
  208. package/libs-ui/react-core/src/Link/index.d.ts +3 -3
  209. package/libs-ui/react-core/src/List/index.d.ts +3 -3
  210. package/libs-ui/react-core/src/ListItem/index.d.ts +3 -3
  211. package/libs-ui/react-core/src/Main/index.d.ts +9 -0
  212. package/libs-ui/react-core/src/Masthead/index.d.ts +9 -0
  213. package/libs-ui/react-core/src/MastheadBody/index.d.ts +9 -0
  214. package/libs-ui/react-core/src/NavHorizontal/index.d.ts +16 -0
  215. package/libs-ui/react-core/src/NavHorizontalList/index.d.ts +10 -0
  216. package/libs-ui/react-core/src/NavHorizontalListItem/index.d.ts +18 -0
  217. package/libs-ui/react-core/src/NavVertical/index.d.ts +11 -0
  218. package/libs-ui/react-core/src/NavVerticalItem/index.d.ts +14 -0
  219. package/libs-ui/react-core/src/NormalText/index.d.ts +3 -3
  220. package/libs-ui/react-core/src/NotificationBanner/index.d.ts +3 -3
  221. package/libs-ui/react-core/src/NotificationBannerContent/index.d.ts +3 -3
  222. package/libs-ui/react-core/src/NotificationBannerHeader/index.d.ts +3 -3
  223. package/libs-ui/react-core/src/NotificationBannerHeading/index.d.ts +3 -3
  224. package/libs-ui/react-core/src/NotificationBannerLink/index.d.ts +3 -3
  225. package/libs-ui/react-core/src/PageTitle/index.d.ts +9 -0
  226. package/libs-ui/react-core/src/PageTitleCaption/index.d.ts +14 -0
  227. package/libs-ui/react-core/src/PageTitleHeading/index.d.ts +13 -0
  228. package/libs-ui/react-core/src/PageTitleSection/index.d.ts +10 -0
  229. package/libs-ui/react-core/src/Paragraph/index.d.ts +3 -3
  230. package/libs-ui/react-core/src/PhaseBanner/index.d.ts +3 -3
  231. package/libs-ui/react-core/src/PhaseBannerHeaderContainer/index.d.ts +3 -3
  232. package/libs-ui/react-core/src/PhaseBannerTag/index.d.ts +3 -3
  233. package/libs-ui/react-core/src/PhaseBannerText/index.d.ts +3 -3
  234. package/libs-ui/react-core/src/Radio/index.d.ts +3 -3
  235. package/libs-ui/react-core/src/RadioConditional/index.d.ts +11 -0
  236. package/libs-ui/react-core/src/RadioItem/index.d.ts +3 -3
  237. package/libs-ui/react-core/src/SectionBreak/index.d.ts +3 -3
  238. package/libs-ui/react-core/src/Select/index.d.ts +3 -3
  239. package/libs-ui/react-core/src/SelectOption/index.d.ts +3 -3
  240. package/libs-ui/react-core/src/ServiceBadge/index.d.ts +11 -0
  241. package/libs-ui/react-core/src/SkipLink/index.d.ts +10 -0
  242. package/libs-ui/react-core/src/SummaryList/index.d.ts +3 -3
  243. package/libs-ui/react-core/src/SummaryListItem/index.d.ts +3 -3
  244. package/libs-ui/react-core/src/SummaryListItemAction/index.d.ts +3 -3
  245. package/libs-ui/react-core/src/SummaryListItemKey/index.d.ts +3 -3
  246. package/libs-ui/react-core/src/SummaryListItemValue/index.d.ts +3 -3
  247. package/libs-ui/react-core/src/SvgIcon/index.d.ts +3 -3
  248. package/libs-ui/react-core/src/Table/index.d.ts +3 -3
  249. package/libs-ui/react-core/src/TableBody/index.d.ts +3 -3
  250. package/libs-ui/react-core/src/TableCaption/index.d.ts +3 -3
  251. package/libs-ui/react-core/src/TableContainer/index.d.ts +3 -3
  252. package/libs-ui/react-core/src/TableDataCell/index.d.ts +3 -3
  253. package/libs-ui/react-core/src/TableHead/index.d.ts +3 -3
  254. package/libs-ui/react-core/src/TableHeadCell/index.d.ts +3 -3
  255. package/libs-ui/react-core/src/TableNoDataRow/index.d.ts +3 -3
  256. package/libs-ui/react-core/src/TableRow/index.d.ts +3 -3
  257. package/libs-ui/react-core/src/Tabs/index.d.ts +3 -3
  258. package/libs-ui/react-core/src/TabsHeading/index.d.ts +3 -3
  259. package/libs-ui/react-core/src/TabsList/index.d.ts +3 -3
  260. package/libs-ui/react-core/src/TabsListItem/index.d.ts +3 -3
  261. package/libs-ui/react-core/src/TabsPanel/index.d.ts +3 -3
  262. package/libs-ui/react-core/src/TextArea/index.d.ts +3 -3
  263. package/libs-ui/react-core/src/TextInput/index.d.ts +3 -3
  264. package/libs-ui/react-core/src/Top/index.d.ts +9 -0
  265. package/libs-ui/react-core/src/UncheckIcon/index.d.ts +4 -4
  266. package/libs-ui/react-core/src/VisuallyHidden/index.d.ts +3 -3
  267. package/libs-ui/react-core/src/WarningText/index.d.ts +3 -3
  268. package/libs-ui/react-core/src/index.d.ts +141 -0
  269. package/package.json +7 -6
  270. package/utils.js +61 -47
  271. package/validators/index.js +26 -10
  272. package/validators/utils/index.js +1 -23
@@ -0,0 +1,62 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
+ var _excluded = ["name", "register", "control", "formState", "error", "layout", "label"];
4
+ import React from 'react';
5
+ import { useFieldArray } from 'react-hook-form';
6
+ import FieldObject from '@digigov/form/FieldObject';
7
+ import { Button, Card } from '@digigov/ui/core';
8
+ import { FieldsetLabel } from '@digigov/form/Fieldset';
9
+ import Fieldset from '@digigov/react-core/Fieldset';
10
+ import FieldContainer from '@digigov/form/Field/FieldContainer';
11
+ export var FieldArray = function FieldArray(_ref) {
12
+ var name = _ref.name,
13
+ register = _ref.register,
14
+ control = _ref.control,
15
+ formState = _ref.formState,
16
+ error = _ref.error,
17
+ layout = _ref.layout,
18
+ label = _ref.label,
19
+ customField = _objectWithoutProperties(_ref, _excluded);
20
+
21
+ var _useFieldArray = useFieldArray({
22
+ control: control,
23
+ name: name
24
+ }),
25
+ fields = _useFieldArray.fields,
26
+ append = _useFieldArray.append,
27
+ remove = _useFieldArray.remove;
28
+
29
+ return /*#__PURE__*/React.createElement(FieldContainer, {
30
+ label: label,
31
+ layout: layout,
32
+ error: formState.isSubmitted && !formState.isSubmitting && error !== null && error !== void 0 && error.message && error ? error : undefined,
33
+ wrapper: "fieldset",
34
+ name: name
35
+ }, fields.map(function (field, index) {
36
+ var _customField$extra;
37
+
38
+ return /*#__PURE__*/React.createElement(Card, {
39
+ variant: "border",
40
+ key: field.id
41
+ }, /*#__PURE__*/React.createElement(Fieldset, null, /*#__PURE__*/React.createElement(FieldsetLabel, null, "\u03A3\u03C5\u03BD\u03C5\u03C0\u03BF\u03B3\u03C1\u03AC\u03C6\u03BF\u03BD\u03C4\u03B1\u03C2 ", index + 1), /*#__PURE__*/React.createElement(FieldObject, _extends({
42
+ name: "".concat(name, ".").concat(index),
43
+ error: Array.isArray(error) && error[index],
44
+ register: register,
45
+ control: control
46
+ }, (_customField$extra = customField.extra) === null || _customField$extra === void 0 ? void 0 : _customField$extra.of)), /*#__PURE__*/React.createElement(Button, {
47
+ type: "button",
48
+ color: "warning",
49
+ onClick: function onClick() {
50
+ return remove(index);
51
+ }
52
+ }, "Remove")));
53
+ }), /*#__PURE__*/React.createElement(Button, {
54
+ type: "button",
55
+ color: "secondary",
56
+ onClick: function onClick(ev) {
57
+ ev.preventDefault();
58
+ append({});
59
+ }
60
+ }, "\u03A0\u03C1\u03BF\u03C3\u03B8\u03AE\u03BA\u03B7 \u03C3\u03C5\u03BD\u03C5\u03C0\u03BF\u03B3\u03C1\u03AC\u03C6\u03BF\u03BD\u03C4\u03B1"));
61
+ };
62
+ export default FieldArray;
@@ -0,0 +1,55 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import React, { useMemo } from 'react';
3
+ import Fieldset, { FieldsetCaption } from '@digigov/form/Fieldset';
4
+ import { useTranslation } from '@digigov/ui/app/i18n';
5
+ import { FieldBase } from '@digigov/form/Field/FieldBase';
6
+ import { calculateField } from '@digigov/form/Field/utils';
7
+ import { FieldsetLegend } from '@digigov/react-core';
8
+ export var FieldObject = function FieldObject(_ref) {
9
+ var name = _ref.name,
10
+ label = _ref.label,
11
+ extra = _ref.extra,
12
+ error = _ref.error,
13
+ control = _ref.control,
14
+ register = _ref.register,
15
+ formState = _ref.formState;
16
+
17
+ var _useTranslation = useTranslation(),
18
+ t = _useTranslation.t;
19
+
20
+ return /*#__PURE__*/React.createElement(Fieldset, null, (label === null || label === void 0 ? void 0 : label.primary) && /*#__PURE__*/React.createElement(FieldsetLegend, {
21
+ size: "s"
22
+ }, t(label.primary)), (label === null || label === void 0 ? void 0 : label.secondary) && /*#__PURE__*/React.createElement(FieldsetCaption, null, t(label.secondary)), extra === null || extra === void 0 ? void 0 : extra.fields.map(function (field) {
23
+ return /*#__PURE__*/React.createElement(FieldObjectItem, {
24
+ key: "".concat(name, ".").concat(field.key),
25
+ name: "".concat(name, ".").concat(field.key),
26
+ control: control,
27
+ register: register,
28
+ field: field,
29
+ error: error && error[field.key],
30
+ formState: formState
31
+ });
32
+ }));
33
+ };
34
+
35
+ var FieldObjectItem = function FieldObjectItem(_ref2) {
36
+ var name = _ref2.name,
37
+ children = _ref2.children,
38
+ field = _ref2.field,
39
+ error = _ref2.error,
40
+ control = _ref2.control,
41
+ formState = _ref2.formState,
42
+ register = _ref2.register;
43
+ var calculatedField = useMemo(function () {
44
+ return calculateField(children, field);
45
+ }, [field]);
46
+ var customError = error ? error : formState === null || formState === void 0 ? void 0 : formState.errors[name];
47
+ return /*#__PURE__*/React.createElement(FieldBase, _extends({}, calculatedField, {
48
+ name: name,
49
+ control: control,
50
+ register: register,
51
+ error: customError
52
+ }));
53
+ };
54
+
55
+ export default FieldObject;
@@ -1,5 +1,4 @@
1
1
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
- import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
3
2
  import _extends from "@babel/runtime/helpers/extends";
4
3
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
5
4
  var _excluded = ["onSubmit", "children", "registerField", "fieldsMap", "fieldsetsMap", "resolver", "mode", "initial", "reValidateMode", "shouldFocusError", "criteriaMode", "componentRegistry", "grid"],
@@ -39,22 +38,24 @@ export var FormBase = /*#__PURE__*/React.forwardRef(function FormBase(_ref, ref)
39
38
  criteriaMode: criteriaMode
40
39
  });
41
40
  var handleSubmit = useCallback(function (data) {
42
- var errors = onSubmit && onSubmit(data);
43
-
44
- if (errors) {
45
- for (var key in errors) {
46
- form.setError(key, errors[key]);
47
- }
48
- }
41
+ onSubmit && onSubmit(data);
49
42
  }, [onSubmit]);
50
43
  var ctx = {
51
44
  fieldsMap: fieldsMap,
52
45
  fieldsetsMap: fieldsetsMap,
53
46
  control: form.control,
54
47
  register: form.register,
48
+ watch: form.watch,
55
49
  registerField: registerField,
56
- errors: form.errors,
50
+ errors: form.formState.errors,
51
+ formState: form.formState,
57
52
  reset: form.reset,
53
+ trigger: form.trigger,
54
+ getFieldState: form.getFieldState,
55
+ setValue: form.setValue,
56
+ clearErrors: form.clearErrors,
57
+ getValues: form.getValues,
58
+ unregister: form.unregister,
58
59
  componentRegistry: componentRegistry
59
60
  };
60
61
  return /*#__PURE__*/React.createElement(FormContext.Provider, {
@@ -80,7 +81,7 @@ export var FormBuilder = /*#__PURE__*/React.forwardRef(function FormBuilder(_ref
80
81
  _ref2$shouldFocusErro = _ref2.shouldFocusError,
81
82
  shouldFocusError = _ref2$shouldFocusErro === void 0 ? true : _ref2$shouldFocusErro,
82
83
  _ref2$criteriaMode = _ref2.criteriaMode,
83
- criteriaMode = _ref2$criteriaMode === void 0 ? 'firstError' : _ref2$criteriaMode,
84
+ criteriaMode = _ref2$criteriaMode === void 0 ? 'all' : _ref2$criteriaMode,
84
85
  _ref2$auto = _ref2.auto,
85
86
  auto = _ref2$auto === void 0 ? false : _ref2$auto,
86
87
  validatorRegistry = _ref2.validatorRegistry,
@@ -95,7 +96,17 @@ export var FormBuilder = /*#__PURE__*/React.forwardRef(function FormBuilder(_ref
95
96
  }, []);
96
97
  var schema = useValidationSchema(fieldsState, validatorRegistry);
97
98
  var registerField = useCallback(function (field) {
98
- setFieldsState([].concat(_toConsumableArray(fieldsState.current), [field]));
99
+ var fieldIndex = fieldsState.current.findIndex(function (f) {
100
+ return f.key === field.key;
101
+ });
102
+
103
+ if (fieldIndex > -1) {
104
+ fieldsState.current[fieldIndex] = field;
105
+ } else {
106
+ fieldsState.current.push(field);
107
+ }
108
+
109
+ setFieldsState(fieldsState.current);
99
110
  }, []);
100
111
  var resolver;
101
112
  var fieldsMap;
@@ -0,0 +1,10 @@
1
+ import MultiplicityField from '@digigov/form/MultiplicityField';
2
+ export default {
3
+ title: 'Digigov Form/MultiplicityField',
4
+ component: MultiplicityField
5
+ };
6
+ export * from '@digigov/form/MultiplicityField/__stories__/Default';
7
+ export * from '@digigov/form/MultiplicityField/__stories__/WithMinLength';
8
+ export * from '@digigov/form/MultiplicityField/__stories__/WithMaxLength';
9
+ export * from '@digigov/form/MultiplicityField/__stories__/WithMinAndMaxLength';
10
+ export * from '@digigov/form/MultiplicityField/__stories__/WithExactLength';
@@ -0,0 +1,100 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import React, { Suspense } from 'react';
3
+ import FormBuilder, { Field } from '@digigov/form';
4
+ import { Button } from '@digigov/ui/core';
5
+ var fields = [{
6
+ key: 'string',
7
+ type: 'string',
8
+ label: {
9
+ primary: 'Πεδίο 1',
10
+ secondary: 'Το multiplicity field είναι ένα πεδίο οπότε φαίνεται και είναι μέρος της φόρμας'
11
+ }
12
+ }, {
13
+ key: 'multiplicity',
14
+ type: 'array',
15
+ multiplicity: true,
16
+ label: {
17
+ primary: 'Συνυπογράφοντες',
18
+ secondary: 'Οι συνυπογράφοντες είναι άνθρωποι σαν και εμάς'
19
+ },
20
+ extra: {
21
+ border: true,
22
+ label: {
23
+ object: {
24
+ title: 'Συνυπογράφοντας',
25
+ title_added: 'Οι συνυπογράφοντες που έχετε προσθέσει',
26
+ add: 'Προσθήκη',
27
+ "delete": 'Αφαίρεση συνυπογράφοντος'
28
+ },
29
+ question: {
30
+ title: 'Θέλετε να προσθέσετε επιπλέον συνυπογράφοντες;',
31
+ objectLabel: {
32
+ primary: 'Προσθήκη νέου συνυπογράφοντα',
33
+ secondary: 'Συμπληρώστε τα στοιχεία και μετά πατήστε «Προσθήκη»'
34
+ },
35
+ yes: 'Ναι',
36
+ no: 'Όχι'
37
+ }
38
+ },
39
+ of: {
40
+ type: 'object',
41
+ label: {
42
+ primary: 'Στοιχεία συνυπογράφοντα',
43
+ secondary: 'Δείτε και αλλάξτε τα στοιχεία του συνυπογράφοντα'
44
+ },
45
+ extra: {
46
+ fields: [{
47
+ key: 'afm',
48
+ type: 'afm',
49
+ required: true,
50
+ label: {
51
+ primary: 'ΑΦΜ'
52
+ }
53
+ }, {
54
+ key: 'firstName',
55
+ required: true,
56
+ type: 'string',
57
+ label: {
58
+ primary: 'Όνομα'
59
+ }
60
+ }, {
61
+ key: 'lastName',
62
+ required: true,
63
+ type: 'string',
64
+ label: {
65
+ primary: 'Επώνυμο'
66
+ }
67
+ }]
68
+ }
69
+ }
70
+ }
71
+ }, {
72
+ key: 'phonenumber',
73
+ type: 'phone_number',
74
+ required: true,
75
+ label: {
76
+ primary: 'Πεδίο 2',
77
+ secondary: 'Το multiplicity field είναι ένα πεδίο οπότε φαίνεται και είναι μέρος της φόρμας'
78
+ }
79
+ }];
80
+
81
+ var _ref = /*#__PURE__*/React.createElement(Button, {
82
+ type: "submit"
83
+ }, "\u03A3\u03C5\u03BD\u03AD\u03C7\u03B5\u03B9\u03B1");
84
+
85
+ export var Default = function Default() {
86
+ return /*#__PURE__*/React.createElement(Suspense, {
87
+ fallback: "loading"
88
+ }, /*#__PURE__*/React.createElement(FormBuilder, {
89
+ onSubmit: function onSubmit(data) {
90
+ debugger;
91
+ console.log(data);
92
+ }
93
+ }, /*#__PURE__*/React.createElement(Field, _extends({
94
+ name: "string"
95
+ }, fields[0])), /*#__PURE__*/React.createElement(Field, _extends({
96
+ name: "multiplicity"
97
+ }, fields[1])), /*#__PURE__*/React.createElement(Field, _extends({
98
+ name: "phonenumber"
99
+ }, fields[2])), _ref));
100
+ };
@@ -0,0 +1,95 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import React, { Suspense } from 'react';
3
+ import FormBuilder, { Field } from '@digigov/form';
4
+ import { Button } from '@digigov/ui/core';
5
+ var fields = [{
6
+ key: 'string',
7
+ type: 'string',
8
+ label: {
9
+ primary: 'Πεδίο 1',
10
+ secondary: 'Το multiplicity field είναι ένα πεδίο οπότε φαίνεται και είναι μέρος της φόρμας'
11
+ }
12
+ }, {
13
+ key: 'multiplicity',
14
+ type: 'array',
15
+ multiplicity: true,
16
+ label: {
17
+ primary: 'Εξαρτώμενα μέλη',
18
+ secondary: 'Τα εξαρτώμενα μέλη είναι φυσικά πρόσωπα που υπάγονται στη φορολογική σας δήλωση'
19
+ },
20
+ extra: {
21
+ label: {
22
+ object: {
23
+ title: 'Εξαρτώμενο μέλος',
24
+ add: 'Προσθήκη',
25
+ "delete": 'Αφαίρεση μέλους'
26
+ },
27
+ question: {
28
+ title: 'Θέλετε να προσθέσετε εξαρτώμενα μέλη;',
29
+ yes: 'Ναι',
30
+ no: 'Όχι'
31
+ }
32
+ },
33
+ length: 2,
34
+ of: {
35
+ type: 'object',
36
+ label: {
37
+ primary: 'Στοιχεία εξαρτώμενου μέλους',
38
+ secondary: 'Συμπληρώστε τα στοιχεία παρακάτω και μετά πατήστε το κουμπί «Προσθήκη»'
39
+ },
40
+ extra: {
41
+ fields: [{
42
+ key: 'firstName',
43
+ required: true,
44
+ type: 'string',
45
+ label: {
46
+ primary: 'Όνομα'
47
+ }
48
+ }, {
49
+ key: 'lastName',
50
+ required: true,
51
+ type: 'string',
52
+ label: {
53
+ primary: 'Επώνυμο'
54
+ }
55
+ }, {
56
+ key: 'bod',
57
+ required: true,
58
+ type: 'date',
59
+ label: {
60
+ primary: 'Ημερομηνία γέννησης'
61
+ }
62
+ }]
63
+ }
64
+ }
65
+ }
66
+ }, {
67
+ key: 'phonenumber',
68
+ type: 'phone_number',
69
+ required: true,
70
+ label: {
71
+ primary: 'Πεδίο 2',
72
+ secondary: 'Το multiplicity field είναι ένα πεδίο οπότε φαίνεται και είναι μέρος της φόρμας'
73
+ }
74
+ }];
75
+
76
+ var _ref = /*#__PURE__*/React.createElement(Button, {
77
+ type: "submit"
78
+ }, "\u03A3\u03C5\u03BD\u03AD\u03C7\u03B5\u03B9\u03B1");
79
+
80
+ export var WithExactLength = function WithExactLength() {
81
+ return /*#__PURE__*/React.createElement(Suspense, {
82
+ fallback: "loading"
83
+ }, /*#__PURE__*/React.createElement(FormBuilder, {
84
+ onSubmit: function onSubmit(data) {
85
+ debugger;
86
+ console.log(data);
87
+ }
88
+ }, /*#__PURE__*/React.createElement(Field, _extends({
89
+ name: "string"
90
+ }, fields[0])), /*#__PURE__*/React.createElement(Field, _extends({
91
+ name: "multiplicity"
92
+ }, fields[1])), /*#__PURE__*/React.createElement(Field, _extends({
93
+ name: "phonenumber"
94
+ }, fields[2])), _ref));
95
+ };
@@ -0,0 +1,98 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import React, { Suspense } from 'react';
3
+ import FormBuilder, { Field } from '@digigov/form';
4
+ import { Button } from '@digigov/ui/core';
5
+ var fields = [{
6
+ key: 'string',
7
+ type: 'string',
8
+ label: {
9
+ primary: 'Πεδίο 1',
10
+ secondary: 'Το multiplicity field είναι ένα πεδίο οπότε φαίνεται και είναι μέρος της φόρμας'
11
+ }
12
+ }, {
13
+ key: 'multiplicity',
14
+ type: 'array',
15
+ multiplicity: true,
16
+ label: {
17
+ primary: 'Εξαρτώμενα μέλη',
18
+ secondary: 'Τα εξαρτώμενα μέλη είναι φυσικά πρόσωπα που υπάγονται στη φορολογική σας δήλωση'
19
+ },
20
+ extra: {
21
+ label: {
22
+ object: {
23
+ title: 'Εξαρτώμενο μέλος',
24
+ add: 'Προσθήκη',
25
+ "delete": 'Αφαίρεση μέλους'
26
+ },
27
+ question: {
28
+ title: 'Θέλετε να προσθέσετε εξαρτώμενα μέλη;',
29
+ yes: 'Ναι',
30
+ no: 'Όχι'
31
+ }
32
+ },
33
+ max: 2,
34
+ of: {
35
+ type: 'object',
36
+ label: {
37
+ primary: 'Στοιχεία εξαρτώμενου μέλους',
38
+ secondary: 'Συμπληρώστε τα στοιχεία παρακάτω και μετά πατήστε το κουμπί «Προσθήκη»'
39
+ },
40
+ extra: {
41
+ fields: [{
42
+ key: 'firstName',
43
+ required: true,
44
+ type: 'string',
45
+ label: {
46
+ primary: 'Όνομα'
47
+ }
48
+ }, {
49
+ key: 'lastName',
50
+ required: true,
51
+ type: 'string',
52
+ label: {
53
+ primary: 'Επώνυμο'
54
+ }
55
+ }, {
56
+ key: 'bod',
57
+ required: true,
58
+ type: 'date',
59
+ label: {
60
+ primary: 'Ημερομηνία γέννησης'
61
+ },
62
+ extra: {
63
+ max: 'now'
64
+ }
65
+ }]
66
+ }
67
+ }
68
+ }
69
+ }, {
70
+ key: 'phonenumber',
71
+ type: 'phone_number',
72
+ required: true,
73
+ label: {
74
+ primary: 'Πεδίο 2',
75
+ secondary: 'Το multiplicity field είναι ένα πεδίο οπότε φαίνεται και είναι μέρος της φόρμας'
76
+ }
77
+ }];
78
+
79
+ var _ref = /*#__PURE__*/React.createElement(Button, {
80
+ type: "submit"
81
+ }, "\u03A3\u03C5\u03BD\u03AD\u03C7\u03B5\u03B9\u03B1");
82
+
83
+ export var WithMaxLength = function WithMaxLength() {
84
+ return /*#__PURE__*/React.createElement(Suspense, {
85
+ fallback: "loading"
86
+ }, /*#__PURE__*/React.createElement(FormBuilder, {
87
+ onSubmit: function onSubmit(data) {
88
+ debugger;
89
+ console.log(data);
90
+ }
91
+ }, /*#__PURE__*/React.createElement(Field, _extends({
92
+ name: "string"
93
+ }, fields[0])), /*#__PURE__*/React.createElement(Field, _extends({
94
+ name: "multiplicity"
95
+ }, fields[1])), /*#__PURE__*/React.createElement(Field, _extends({
96
+ name: "phonenumber"
97
+ }, fields[2])), _ref));
98
+ };
@@ -0,0 +1,99 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import React, { Suspense } from 'react';
3
+ import FormBuilder, { Field } from '@digigov/form';
4
+ import { Button } from '@digigov/ui/core';
5
+ var fields = [{
6
+ key: 'string',
7
+ type: 'string',
8
+ label: {
9
+ primary: 'Πεδίο 1',
10
+ secondary: 'Το multiplicity field είναι ένα πεδίο οπότε φαίνεται και είναι μέρος της φόρμας'
11
+ }
12
+ }, {
13
+ key: 'multiplicity',
14
+ type: 'array',
15
+ multiplicity: true,
16
+ label: {
17
+ primary: 'Εξαρτώμενα μέλη',
18
+ secondary: 'Τα εξαρτώμενα μέλη είναι φυσικά πρόσωπα που υπάγονται στη φορολογική σας δήλωση'
19
+ },
20
+ extra: {
21
+ label: {
22
+ object: {
23
+ title: 'Εξαρτώμενο μέλος',
24
+ add: 'Προσθήκη',
25
+ "delete": 'Αφαίρεση μέλους'
26
+ },
27
+ question: {
28
+ title: 'Θέλετε να προσθέσετε εξαρτώμενα μέλη;',
29
+ yes: 'Ναι',
30
+ no: 'Όχι'
31
+ }
32
+ },
33
+ min: 2,
34
+ max: 3,
35
+ of: {
36
+ type: 'object',
37
+ label: {
38
+ primary: 'Στοιχεία εξαρτώμενου μέλους',
39
+ secondary: 'Συμπληρώστε τα στοιχεία παρακάτω και μετά πατήστε το κουμπί «Προσθήκη»'
40
+ },
41
+ extra: {
42
+ fields: [{
43
+ key: 'firstName',
44
+ required: true,
45
+ type: 'string',
46
+ label: {
47
+ primary: 'Όνομα'
48
+ }
49
+ }, {
50
+ key: 'lastName',
51
+ required: true,
52
+ type: 'string',
53
+ label: {
54
+ primary: 'Επώνυμο'
55
+ }
56
+ }, {
57
+ key: 'bod',
58
+ required: true,
59
+ type: 'date',
60
+ label: {
61
+ primary: 'Ημερομηνία γέννησης'
62
+ },
63
+ extra: {
64
+ max: 'now'
65
+ }
66
+ }]
67
+ }
68
+ }
69
+ }
70
+ }, {
71
+ key: 'phonenumber',
72
+ type: 'phone_number',
73
+ required: true,
74
+ label: {
75
+ primary: 'Πεδίο 2',
76
+ secondary: 'Το multiplicity field είναι ένα πεδίο οπότε φαίνεται και είναι μέρος της φόρμας'
77
+ }
78
+ }];
79
+
80
+ var _ref = /*#__PURE__*/React.createElement(Button, {
81
+ type: "submit"
82
+ }, "\u03A3\u03C5\u03BD\u03AD\u03C7\u03B5\u03B9\u03B1");
83
+
84
+ export var WithMinAndMaxLength = function WithMinAndMaxLength() {
85
+ return /*#__PURE__*/React.createElement(Suspense, {
86
+ fallback: "loading"
87
+ }, /*#__PURE__*/React.createElement(FormBuilder, {
88
+ onSubmit: function onSubmit(data) {
89
+ debugger;
90
+ console.log(data);
91
+ }
92
+ }, /*#__PURE__*/React.createElement(Field, _extends({
93
+ name: "string"
94
+ }, fields[0])), /*#__PURE__*/React.createElement(Field, _extends({
95
+ name: "multiplicity"
96
+ }, fields[1])), /*#__PURE__*/React.createElement(Field, _extends({
97
+ name: "phonenumber"
98
+ }, fields[2])), _ref));
99
+ };
@@ -0,0 +1,98 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import React, { Suspense } from 'react';
3
+ import FormBuilder, { Field } from '@digigov/form';
4
+ import { Button } from '@digigov/ui/core';
5
+ var fields = [{
6
+ key: 'string',
7
+ type: 'string',
8
+ label: {
9
+ primary: 'Πεδίο 1',
10
+ secondary: 'Το multiplicity field είναι ένα πεδίο οπότε φαίνεται και είναι μέρος της φόρμας'
11
+ }
12
+ }, {
13
+ key: 'multiplicity',
14
+ type: 'array',
15
+ multiplicity: true,
16
+ label: {
17
+ primary: 'Εξαρτώμενα μέλη',
18
+ secondary: 'Τα εξαρτώμενα μέλη είναι φυσικά πρόσωπα που υπάγονται στη φορολογική σας δήλωση'
19
+ },
20
+ extra: {
21
+ label: {
22
+ object: {
23
+ title: 'Εξαρτώμενο μέλος',
24
+ add: 'Προσθήκη',
25
+ "delete": 'Αφαίρεση μέλους'
26
+ },
27
+ question: {
28
+ title: 'Θέλετε να προσθέσετε εξαρτώμενα μέλη;',
29
+ yes: 'Ναι',
30
+ no: 'Όχι'
31
+ }
32
+ },
33
+ min: 3,
34
+ of: {
35
+ type: 'object',
36
+ label: {
37
+ primary: 'Στοιχεία εξαρτώμενου μέλους',
38
+ secondary: 'Συμπληρώστε τα στοιχεία παρακάτω και μετά πατήστε το κουμπί «Προσθήκη»'
39
+ },
40
+ extra: {
41
+ fields: [{
42
+ key: 'firstName',
43
+ required: true,
44
+ type: 'string',
45
+ label: {
46
+ primary: 'Όνομα'
47
+ }
48
+ }, {
49
+ key: 'lastName',
50
+ required: true,
51
+ type: 'string',
52
+ label: {
53
+ primary: 'Επώνυμο'
54
+ }
55
+ }, {
56
+ key: 'bod',
57
+ required: true,
58
+ type: 'date',
59
+ label: {
60
+ primary: 'Ημερομηνία γέννησης'
61
+ },
62
+ extra: {
63
+ max: 'now'
64
+ }
65
+ }]
66
+ }
67
+ }
68
+ }
69
+ }, {
70
+ key: 'phonenumber',
71
+ type: 'phone_number',
72
+ required: true,
73
+ label: {
74
+ primary: 'Πεδίο 2',
75
+ secondary: 'Το multiplicity field είναι ένα πεδίο οπότε φαίνεται και είναι μέρος της φόρμας'
76
+ }
77
+ }];
78
+
79
+ var _ref = /*#__PURE__*/React.createElement(Button, {
80
+ type: "submit"
81
+ }, "\u03A3\u03C5\u03BD\u03AD\u03C7\u03B5\u03B9\u03B1");
82
+
83
+ export var WithMinLength = function WithMinLength() {
84
+ return /*#__PURE__*/React.createElement(Suspense, {
85
+ fallback: "loading"
86
+ }, /*#__PURE__*/React.createElement(FormBuilder, {
87
+ onSubmit: function onSubmit(data) {
88
+ debugger;
89
+ console.log(data);
90
+ }
91
+ }, /*#__PURE__*/React.createElement(Field, _extends({
92
+ name: "string"
93
+ }, fields[0])), /*#__PURE__*/React.createElement(Field, _extends({
94
+ name: "multiplicity"
95
+ }, fields[1])), /*#__PURE__*/React.createElement(Field, _extends({
96
+ name: "phonenumber"
97
+ }, fields[2])), _ref));
98
+ };