@digigov/form 0.6.9 → 0.7.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 (307) hide show
  1. package/CHANGELOG.md +24 -1
  2. package/Field/FieldBase.js +110 -0
  3. package/Field/{ConditionalField.js → FieldConditional.js} +9 -29
  4. package/Field/FieldContainer.js +62 -0
  5. package/Field/index.js +11 -251
  6. package/Field/types.js +5 -0
  7. package/Field/utils.js +146 -0
  8. package/Fieldset/FieldsetWithContext.js +63 -0
  9. package/Fieldset/index.js +4 -63
  10. package/Fieldset/types.js +5 -0
  11. package/FormBuilder.js +178 -0
  12. package/FormContext.js +14 -0
  13. package/Questions/Questions.js +105 -0
  14. package/Questions/QuestionsContext.js +20 -0
  15. package/Questions/Step/ReviewStep.js +11 -7
  16. package/Questions/Step/Step.js +93 -0
  17. package/Questions/Step/StepArrayReview.js +79 -0
  18. package/Questions/Step/StepContext.js +37 -0
  19. package/Questions/Step/StepDescription.js +2 -2
  20. package/Questions/Step/StepForm.js +10 -6
  21. package/Questions/Step/StepTitle.js +2 -2
  22. package/Questions/Step/getAddMoreFields.js +31 -0
  23. package/Questions/Step/index.js +81 -200
  24. package/Questions/Step/types.js +5 -0
  25. package/Questions/__snapshots__/index.spec.tsx.snap +461 -2499
  26. package/Questions/getNextStep.js +30 -0
  27. package/Questions/index.js +4 -150
  28. package/Questions/types.js +5 -0
  29. package/es/Field/FieldBase.js +93 -0
  30. package/es/Field/{ConditionalField.js → FieldConditional.js} +5 -28
  31. package/es/Field/FieldContainer.js +40 -0
  32. package/es/Field/index.js +8 -233
  33. package/es/Field/types.js +1 -0
  34. package/es/Field/utils.js +122 -0
  35. package/es/Fieldset/FieldsetWithContext.js +41 -0
  36. package/es/Fieldset/index.js +3 -51
  37. package/es/Fieldset/types.js +1 -0
  38. package/es/FormBuilder.js +148 -0
  39. package/es/FormContext.js +5 -0
  40. package/es/Questions/Questions.js +84 -0
  41. package/es/Questions/QuestionsContext.js +11 -0
  42. package/es/Questions/Step/ReviewStep.js +5 -3
  43. package/es/Questions/Step/Step.js +69 -0
  44. package/es/Questions/Step/StepArrayReview.js +50 -0
  45. package/es/Questions/Step/StepContext.js +27 -0
  46. package/es/Questions/Step/StepDescription.js +1 -1
  47. package/es/Questions/Step/StepForm.js +4 -2
  48. package/es/Questions/Step/StepTitle.js +1 -1
  49. package/es/Questions/Step/getAddMoreFields.js +22 -0
  50. package/es/Questions/Step/index.js +13 -165
  51. package/es/Questions/Step/types.js +1 -0
  52. package/es/Questions/__snapshots__/index.spec.tsx.snap +461 -2499
  53. package/es/Questions/getNextStep.js +23 -0
  54. package/es/Questions/index.js +2 -119
  55. package/es/Questions/index.spec.js +2 -1
  56. package/es/Questions/types.js +1 -0
  57. package/es/index.js +2 -153
  58. package/es/inputs/index.js +5 -4
  59. package/es/internal.js +31 -0
  60. package/es/types.js +1 -0
  61. package/es/utils.js +5 -3
  62. package/es/validators/index.js +155 -0
  63. package/es/validators/types.js +1 -0
  64. package/es/validators/utils/afm.js +35 -0
  65. package/es/validators/utils/file.js +52 -0
  66. package/es/validators/utils/iban.js +123 -0
  67. package/es/validators/utils/index.js +105 -0
  68. package/es/validators/utils/phone.js +122 -0
  69. package/es/validators/utils/postal_code.js +29 -0
  70. package/es/validators/utils/uuid4.js +20 -0
  71. package/{esm → es/validators}/validators.spec.js +1 -1
  72. package/esm/Field/FieldBase.js +93 -0
  73. package/esm/Field/{ConditionalField.js → FieldConditional.js} +5 -28
  74. package/esm/Field/FieldContainer.js +40 -0
  75. package/esm/Field/index.js +8 -233
  76. package/esm/Field/types.js +1 -0
  77. package/esm/Field/utils.js +122 -0
  78. package/esm/Fieldset/FieldsetWithContext.js +41 -0
  79. package/esm/Fieldset/index.js +3 -51
  80. package/esm/Fieldset/types.js +1 -0
  81. package/esm/FormBuilder.js +148 -0
  82. package/esm/FormContext.js +5 -0
  83. package/esm/Questions/Questions.js +84 -0
  84. package/esm/Questions/QuestionsContext.js +11 -0
  85. package/esm/Questions/Step/ReviewStep.js +5 -3
  86. package/esm/Questions/Step/Step.js +69 -0
  87. package/esm/Questions/Step/StepArrayReview.js +50 -0
  88. package/esm/Questions/Step/StepContext.js +27 -0
  89. package/esm/Questions/Step/StepDescription.js +1 -1
  90. package/esm/Questions/Step/StepForm.js +4 -2
  91. package/esm/Questions/Step/StepTitle.js +1 -1
  92. package/esm/Questions/Step/getAddMoreFields.js +22 -0
  93. package/esm/Questions/Step/index.js +13 -165
  94. package/esm/Questions/Step/types.js +1 -0
  95. package/esm/Questions/__snapshots__/index.spec.tsx.snap +461 -2499
  96. package/esm/Questions/getNextStep.js +23 -0
  97. package/esm/Questions/index.js +2 -119
  98. package/esm/Questions/index.spec.js +2 -1
  99. package/esm/Questions/types.js +1 -0
  100. package/esm/index.js +3 -154
  101. package/esm/inputs/index.js +5 -4
  102. package/esm/internal.js +31 -0
  103. package/esm/types.js +1 -0
  104. package/esm/utils.js +5 -3
  105. package/esm/validators/index.js +155 -0
  106. package/esm/validators/types.js +1 -0
  107. package/esm/validators/utils/afm.js +35 -0
  108. package/esm/validators/utils/file.js +52 -0
  109. package/esm/validators/utils/iban.js +123 -0
  110. package/esm/validators/utils/index.js +105 -0
  111. package/esm/validators/utils/phone.js +122 -0
  112. package/esm/validators/utils/postal_code.js +29 -0
  113. package/esm/validators/utils/uuid4.js +20 -0
  114. package/{es → esm/validators}/validators.spec.js +1 -1
  115. package/index.js +8 -191
  116. package/inputs/index.js +13 -5
  117. package/internal.js +356 -0
  118. package/libs/form/src/Field/FieldBase.d.ts +3 -0
  119. package/libs/form/src/Field/FieldConditional.d.ts +4 -0
  120. package/libs/form/src/Field/FieldContainer.d.ts +4 -0
  121. package/libs/form/src/Field/index.d.ts +1 -62
  122. package/libs/form/src/Field/types.d.ts +75 -0
  123. package/libs/form/src/Field/utils.d.ts +5 -0
  124. package/libs/form/src/Fieldset/FieldsetWithContext.d.ts +4 -0
  125. package/libs/form/src/Fieldset/index.d.ts +2 -12
  126. package/libs/form/src/Fieldset/types.d.ts +6 -0
  127. package/libs/form/src/FormBuilder.d.ts +5 -0
  128. package/libs/form/src/FormContext.d.ts +3 -0
  129. package/libs/form/src/Questions/Questions.d.ts +8 -0
  130. package/libs/form/src/Questions/QuestionsContext.d.ts +3 -0
  131. package/libs/form/src/Questions/Step/ReviewStep.d.ts +1 -0
  132. package/libs/form/src/Questions/Step/Step.d.ts +9 -0
  133. package/libs/form/src/Questions/Step/StepArrayReview.d.ts +4 -0
  134. package/libs/form/src/Questions/Step/StepContext.d.ts +4 -0
  135. package/libs/form/src/Questions/Step/StepForm.d.ts +2 -1
  136. package/libs/form/src/Questions/Step/getAddMoreFields.d.ts +3 -0
  137. package/libs/form/src/Questions/Step/index.d.ts +12 -47
  138. package/libs/form/src/Questions/Step/types.d.ts +31 -0
  139. package/libs/form/src/Questions/getNextStep.d.ts +2 -0
  140. package/libs/form/src/Questions/index.d.ts +1 -28
  141. package/libs/form/src/Questions/types.d.ts +19 -0
  142. package/libs/form/src/index.d.ts +2 -73
  143. package/libs/form/src/inputs/Checkboxes/index.d.ts +1 -1
  144. package/libs/form/src/inputs/DateInput/index.d.ts +1 -2
  145. package/libs/form/src/inputs/FileInput/index.d.ts +1 -1
  146. package/libs/form/src/inputs/Input/index.d.ts +1 -1
  147. package/libs/form/src/inputs/Label/index.d.ts +2 -1
  148. package/libs/form/src/inputs/Radio/index.d.ts +1 -1
  149. package/libs/form/src/inputs/Select/index.d.ts +1 -1
  150. package/libs/form/src/inputs/index.d.ts +4 -3
  151. package/libs/form/src/internal.d.ts +31 -0
  152. package/libs/form/src/types.d.ts +70 -0
  153. package/libs/form/src/validators/index.d.ts +8 -0
  154. package/libs/form/src/validators/types.d.ts +2 -0
  155. package/libs/form/src/validators/utils/afm.d.ts +6 -0
  156. package/libs/form/src/validators/utils/file.d.ts +1 -0
  157. package/libs/form/src/validators/utils/iban.d.ts +2 -0
  158. package/libs/form/src/validators/utils/index.d.ts +12 -0
  159. package/libs/form/src/validators/utils/phone.d.ts +9 -0
  160. package/libs/form/src/validators/utils/postal_code.d.ts +2 -0
  161. package/libs/form/src/validators/utils/uuid4.d.ts +6 -0
  162. package/libs/form/src/{validators.spec.d.ts → validators/validators.spec.d.ts} +0 -0
  163. package/libs/ui/src/core/Accordion/index.d.ts +3 -3
  164. package/libs/ui/src/core/Base/index.d.ts +3 -0
  165. package/libs/ui/src/core/Blockquote/index.d.ts +1 -1
  166. package/libs/ui/src/core/Button/BackButton.d.ts +1 -1
  167. package/libs/ui/src/core/Button/ButtonLink.d.ts +1 -1
  168. package/libs/ui/src/core/Button/index.d.ts +1 -1
  169. package/libs/ui/src/core/Divider/index.d.ts +1 -1
  170. package/libs/ui/src/core/Form/index.d.ts +3 -0
  171. package/libs/ui/src/core/Label/index.d.ts +4 -0
  172. package/libs/ui/src/core/Link/index.d.ts +1 -0
  173. package/libs/ui/src/core/NavList/NavHorizontal.d.ts +3 -0
  174. package/libs/ui/src/core/NavList/NavHorizontalList.d.ts +3 -0
  175. package/libs/ui/src/core/NavList/NavHorizontalListItem.d.ts +3 -0
  176. package/libs/ui/src/core/NavList/NavList.d.ts +1 -14
  177. package/libs/ui/src/core/NavList/NavListBase.d.ts +4 -0
  178. package/libs/ui/src/core/NavList/NavListItem.d.ts +1 -0
  179. package/libs/ui/src/core/NavList/NavListItemBase.d.ts +2 -1
  180. package/libs/ui/src/core/NavList/NavListSubMenu.d.ts +1 -1
  181. package/libs/ui/src/core/NavList/NavVertical.d.ts +3 -0
  182. package/libs/ui/src/core/NavList/NavVerticalItem.d.ts +3 -0
  183. package/libs/ui/src/core/NavList/index.d.ts +5 -0
  184. package/libs/ui/src/core/NavList/types.d.ts +14 -0
  185. package/libs/ui/src/core/SkipLink/index.d.ts +3 -0
  186. package/libs/ui/src/core/SvgIcon/index.d.ts +1 -0
  187. package/libs/ui/src/core/Table/TableFloatingScroll.d.ts +2 -0
  188. package/libs/ui/src/core/Table/index.d.ts +1 -0
  189. package/libs/ui/src/core/index.d.ts +4 -0
  190. package/libs/ui/src/layouts/Grid/index.d.ts +1 -0
  191. package/libs/ui/src/typography/Caption/index.d.ts +3 -2
  192. package/libs/ui/src/typography/Title/index.d.ts +2 -1
  193. package/libs-ui/react-core/src/Accordion/index.d.ts +3 -3
  194. package/libs-ui/react-core/src/AccordionControls/index.d.ts +3 -3
  195. package/libs-ui/react-core/src/AccordionSection/index.d.ts +3 -3
  196. package/libs-ui/react-core/src/AccordionSectionContent/index.d.ts +3 -3
  197. package/libs-ui/react-core/src/AccordionSectionHeader/index.d.ts +3 -3
  198. package/libs-ui/react-core/src/AccordionSectionSummary/index.d.ts +4 -3
  199. package/libs-ui/react-core/src/AccordionSectionSummaryHeading/index.d.ts +3 -3
  200. package/libs-ui/react-core/src/BackLink/index.d.ts +3 -3
  201. package/libs-ui/react-core/src/Base/index.d.ts +43 -0
  202. package/libs-ui/react-core/src/Blockquote/index.d.ts +3 -3
  203. package/libs-ui/react-core/src/Breadcrumbs/index.d.ts +3 -3
  204. package/libs-ui/react-core/src/BreadcrumbsList/index.d.ts +3 -3
  205. package/libs-ui/react-core/src/BreadcrumbsListItem/index.d.ts +3 -3
  206. package/libs-ui/react-core/src/Button/index.d.ts +3 -3
  207. package/libs-ui/react-core/src/ButtonGroup/index.d.ts +3 -3
  208. package/libs-ui/react-core/src/ButtonLink/index.d.ts +3 -3
  209. package/libs-ui/react-core/src/CallToAction/index.d.ts +1 -1
  210. package/libs-ui/react-core/src/Card/index.d.ts +3 -3
  211. package/libs-ui/react-core/src/CardAction/index.d.ts +3 -3
  212. package/libs-ui/react-core/src/CardHeading/index.d.ts +3 -3
  213. package/libs-ui/react-core/src/CardText/index.d.ts +3 -3
  214. package/libs-ui/react-core/src/CheckIcon/index.d.ts +15 -0
  215. package/libs-ui/react-core/src/Checkbox/index.d.ts +3 -3
  216. package/libs-ui/react-core/src/CheckboxItem/index.d.ts +3 -3
  217. package/libs-ui/react-core/src/Confirmation/index.d.ts +3 -3
  218. package/libs-ui/react-core/src/ConfirmationBody/index.d.ts +3 -3
  219. package/libs-ui/react-core/src/ConfirmationTitle/index.d.ts +3 -3
  220. package/libs-ui/react-core/src/DateInput/index.d.ts +3 -3
  221. package/libs-ui/react-core/src/DateInputItem/index.d.ts +3 -3
  222. package/libs-ui/react-core/src/Details/index.d.ts +3 -3
  223. package/libs-ui/react-core/src/DetailsContent/index.d.ts +3 -3
  224. package/libs-ui/react-core/src/DetailsSummary/index.d.ts +3 -3
  225. package/libs-ui/react-core/src/ErrorMessage/index.d.ts +3 -3
  226. package/libs-ui/react-core/src/ErrorSummary/index.d.ts +3 -3
  227. package/libs-ui/react-core/src/Field/index.d.ts +3 -3
  228. package/libs-ui/react-core/src/Fieldset/index.d.ts +3 -3
  229. package/libs-ui/react-core/src/FieldsetLegend/index.d.ts +3 -3
  230. package/libs-ui/react-core/src/FileUpload/index.d.ts +3 -3
  231. package/libs-ui/react-core/src/Form/index.d.ts +11 -0
  232. package/libs-ui/react-core/src/Grid/index.d.ts +3 -3
  233. package/libs-ui/react-core/src/Heading/index.d.ts +3 -3
  234. package/libs-ui/react-core/src/HeadingCaption/index.d.ts +3 -3
  235. package/libs-ui/react-core/src/Hidden/index.d.ts +3 -3
  236. package/libs-ui/react-core/src/Hint/index.d.ts +3 -3
  237. package/libs-ui/react-core/src/Label/index.d.ts +3 -3
  238. package/libs-ui/react-core/src/LabelTitle/index.d.ts +7 -7
  239. package/libs-ui/react-core/src/Link/index.d.ts +3 -3
  240. package/libs-ui/react-core/src/List/index.d.ts +3 -3
  241. package/libs-ui/react-core/src/ListItem/index.d.ts +3 -3
  242. package/libs-ui/react-core/src/NavHorizontal/index.d.ts +16 -0
  243. package/libs-ui/react-core/src/NavHorizontalList/index.d.ts +10 -0
  244. package/libs-ui/react-core/src/NavHorizontalListItem/index.d.ts +18 -0
  245. package/libs-ui/react-core/src/NavVertical/index.d.ts +11 -0
  246. package/libs-ui/react-core/src/NavVerticalItem/index.d.ts +14 -0
  247. package/libs-ui/react-core/src/NormalText/index.d.ts +3 -3
  248. package/libs-ui/react-core/src/NotificationBanner/index.d.ts +3 -3
  249. package/libs-ui/react-core/src/NotificationBannerContent/index.d.ts +3 -3
  250. package/libs-ui/react-core/src/NotificationBannerHeader/index.d.ts +3 -3
  251. package/libs-ui/react-core/src/NotificationBannerHeading/index.d.ts +3 -3
  252. package/libs-ui/react-core/src/NotificationBannerLink/index.d.ts +3 -3
  253. package/libs-ui/react-core/src/Paragraph/index.d.ts +3 -3
  254. package/libs-ui/react-core/src/PhaseBanner/index.d.ts +3 -3
  255. package/libs-ui/react-core/src/PhaseBannerHeaderContainer/index.d.ts +3 -3
  256. package/libs-ui/react-core/src/PhaseBannerTag/index.d.ts +3 -3
  257. package/libs-ui/react-core/src/PhaseBannerText/index.d.ts +3 -3
  258. package/libs-ui/react-core/src/Radio/index.d.ts +3 -3
  259. package/libs-ui/react-core/src/RadioItem/index.d.ts +3 -3
  260. package/libs-ui/react-core/src/SectionBreak/index.d.ts +3 -3
  261. package/libs-ui/react-core/src/Select/index.d.ts +3 -3
  262. package/libs-ui/react-core/src/SelectOption/index.d.ts +3 -3
  263. package/libs-ui/react-core/src/SkipLink/index.d.ts +10 -0
  264. package/libs-ui/react-core/src/SummaryList/index.d.ts +3 -3
  265. package/libs-ui/react-core/src/SummaryListItem/index.d.ts +3 -3
  266. package/libs-ui/react-core/src/SummaryListItemAction/index.d.ts +3 -3
  267. package/libs-ui/react-core/src/SummaryListItemKey/index.d.ts +3 -3
  268. package/libs-ui/react-core/src/SummaryListItemValue/index.d.ts +3 -3
  269. package/libs-ui/react-core/src/SvgIcon/index.d.ts +3 -3
  270. package/libs-ui/react-core/src/Table/index.d.ts +3 -3
  271. package/libs-ui/react-core/src/TableBody/index.d.ts +3 -3
  272. package/libs-ui/react-core/src/TableCaption/index.d.ts +3 -3
  273. package/libs-ui/react-core/src/TableContainer/index.d.ts +3 -3
  274. package/libs-ui/react-core/src/TableDataCell/index.d.ts +3 -3
  275. package/libs-ui/react-core/src/TableHead/index.d.ts +3 -3
  276. package/libs-ui/react-core/src/TableHeadCell/index.d.ts +3 -3
  277. package/libs-ui/react-core/src/TableNoDataRow/index.d.ts +3 -3
  278. package/libs-ui/react-core/src/TableRow/index.d.ts +3 -3
  279. package/libs-ui/react-core/src/Tabs/index.d.ts +3 -3
  280. package/libs-ui/react-core/src/TabsHeading/index.d.ts +3 -3
  281. package/libs-ui/react-core/src/TabsList/index.d.ts +3 -3
  282. package/libs-ui/react-core/src/TabsListItem/index.d.ts +3 -3
  283. package/libs-ui/react-core/src/TabsPanel/index.d.ts +3 -3
  284. package/libs-ui/react-core/src/TextArea/index.d.ts +3 -3
  285. package/libs-ui/react-core/src/TextInput/index.d.ts +3 -3
  286. package/libs-ui/react-core/src/UncheckIcon/index.d.ts +4 -4
  287. package/libs-ui/react-core/src/VisuallyHidden/index.d.ts +3 -3
  288. package/libs-ui/react-core/src/WarningText/index.d.ts +3 -3
  289. package/package.json +3 -2
  290. package/types.js +5 -0
  291. package/utils.js +6 -4
  292. package/validators/index.js +181 -0
  293. package/validators/types.js +5 -0
  294. package/validators/utils/afm.js +45 -0
  295. package/validators/utils/file.js +62 -0
  296. package/validators/utils/iban.js +134 -0
  297. package/validators/utils/index.js +210 -0
  298. package/validators/utils/phone.js +144 -0
  299. package/validators/utils/postal_code.js +40 -0
  300. package/validators/utils/uuid4.js +30 -0
  301. package/validators/validators.spec.js +88 -0
  302. package/es/validators.js +0 -626
  303. package/esm/validators.js +0 -626
  304. package/libs/form/src/Field/ConditionalField.d.ts +0 -17
  305. package/libs/form/src/validators.d.ts +0 -14
  306. package/validators.js +0 -662
  307. package/validators.spec.js +0 -88
package/CHANGELOG.md CHANGED
@@ -1,6 +1,29 @@
1
1
  # Change Log - @digigov/form
2
2
 
3
- This log was last generated on Thu, 23 Jun 2022 11:49:45 GMT and should not be manually modified.
3
+ This log was last generated on Wed, 31 Aug 2022 16:10:12 GMT and should not be manually modified.
4
+
5
+ ## 0.7.1
6
+ Wed, 31 Aug 2022 16:10:12 GMT
7
+
8
+ _Version update only_
9
+
10
+ ## 0.7.0
11
+ Tue, 26 Jul 2022 07:39:59 GMT
12
+
13
+ ### Minor changes
14
+
15
+ - Refactor code and file structure
16
+
17
+ ### Patches
18
+
19
+ - Integrate @digigov/react-core/Grid in Field component and spec
20
+
21
+ ## 0.6.10
22
+ Thu, 07 Jul 2022 13:01:18 GMT
23
+
24
+ ### Patches
25
+
26
+ - refactor code to resolve circular dependencies
4
27
 
5
28
  ## 0.6.9
6
29
  Thu, 23 Jun 2022 11:49:45 GMT
@@ -0,0 +1,110 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.FieldBase = void 0;
9
+
10
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
+
12
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
13
+
14
+ var _react = _interopRequireDefault(require("react"));
15
+
16
+ var _FieldContainer = _interopRequireDefault(require("@digigov/form/Field/FieldContainer"));
17
+
18
+ var _reactHookForm = require("react-hook-form");
19
+
20
+ var _excluded = ["required", "name", "component", "wrapper", "control", "type", "controlled", "enabled", "editable", "defaultValue", "label", "extra", "layout", "error", "register"];
21
+
22
+ var FieldBase = function FieldBase(props) {
23
+ var required = props.required,
24
+ name = props.name,
25
+ Component = props.component,
26
+ wrapper = props.wrapper,
27
+ control = props.control,
28
+ type = props.type,
29
+ _props$controlled = props.controlled,
30
+ controlled = _props$controlled === void 0 ? false : _props$controlled,
31
+ _props$enabled = props.enabled,
32
+ enabled = _props$enabled === void 0 ? true : _props$enabled,
33
+ editable = props.editable,
34
+ defaultValue = props.defaultValue,
35
+ label = props.label,
36
+ _props$extra = props.extra,
37
+ extra = _props$extra === void 0 ? {} : _props$extra,
38
+ layout = props.layout,
39
+ error = props.error,
40
+ register = props.register,
41
+ componentProps = (0, _objectWithoutProperties2["default"])(props, _excluded);
42
+
43
+ if (!enabled) {
44
+ return null;
45
+ }
46
+
47
+ if (controlled) {
48
+ return /*#__PURE__*/_react["default"].createElement(_FieldContainer["default"], {
49
+ label: label,
50
+ layout: layout,
51
+ error: error,
52
+ wrapper: wrapper,
53
+ name: name
54
+ }, /*#__PURE__*/_react["default"].createElement(_reactHookForm.Controller, {
55
+ control: control,
56
+ name: name,
57
+ render: function render(_ref) {
58
+ var onChange = _ref.onChange,
59
+ onBlur = _ref.onBlur,
60
+ value = _ref.value;
61
+ return /*#__PURE__*/_react["default"].createElement(Component, (0, _extends2["default"])({
62
+ name: name,
63
+ onChange: onChange,
64
+ onBlur: onBlur,
65
+ value: value,
66
+ defaultValue: defaultValue,
67
+ extra: extra,
68
+ error: !!error,
69
+ type: type,
70
+ "aria-required": !!required,
71
+ "aria-describedby": error && "".concat(name, "-error"),
72
+ required: required,
73
+ disabled: editable === false
74
+ }, componentProps));
75
+ }
76
+ }));
77
+ }
78
+
79
+ return /*#__PURE__*/_react["default"].createElement(_FieldContainer["default"], {
80
+ label: label,
81
+ layout: layout,
82
+ error: error,
83
+ wrapper: wrapper,
84
+ name: name
85
+ }, Component !== null && Component !== void 0 && Component.render ? /*#__PURE__*/_react["default"].createElement(Component, (0, _extends2["default"])({
86
+ name: name,
87
+ ref: register,
88
+ control: control,
89
+ error: !!error,
90
+ extra: extra,
91
+ type: type,
92
+ "aria-required": !!required,
93
+ "aria-describedby": error && "".concat(name, "-error"),
94
+ required: required,
95
+ disabled: editable === false
96
+ }, componentProps)) : /*#__PURE__*/_react["default"].createElement(Component, (0, _extends2["default"])({
97
+ name: name,
98
+ register: register,
99
+ control: control,
100
+ error: !!error,
101
+ extra: extra,
102
+ type: type,
103
+ "aria-required": !!required,
104
+ "aria-describedby": error && "".concat(name, "-error"),
105
+ required: required,
106
+ disabled: editable === false
107
+ }, componentProps)));
108
+ };
109
+
110
+ exports.FieldBase = FieldBase;
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.ConditionalField = void 0;
8
+ exports["default"] = exports.FieldConditional = void 0;
9
9
 
10
10
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
11
 
@@ -13,31 +13,9 @@ var _react = _interopRequireDefault(require("react"));
13
13
 
14
14
  var _reactHookForm = require("react-hook-form");
15
15
 
16
- var _Field = require("@digigov/form/Field/");
16
+ var _utils = require("@digigov/form/Field/utils");
17
17
 
18
- function evaluateFieldWithConditions(field, variables) {
19
- var newField = (0, _extends2["default"])({}, field);
20
-
21
- if (variables) {
22
- for (var key in variables) {
23
- if (field.condition[key] && field.condition[key].is === variables[key]) {
24
- var then = field.condition[key].then || {};
25
-
26
- for (var attr in then) {
27
- newField[attr] = then[attr];
28
- }
29
- } else if (field.condition[key]) {
30
- var otherwise = field.condition[key]["else"] || {};
31
-
32
- for (var _attr in otherwise) {
33
- newField[_attr] = otherwise[_attr];
34
- }
35
- }
36
- }
37
- }
38
-
39
- return newField;
40
- }
18
+ var _FieldBase = require("@digigov/form/Field/FieldBase");
41
19
 
42
20
  var ChildFieldMemo = /*#__PURE__*/_react["default"].memo(function ChildField(_ref) {
43
21
  var dependencies = _ref.dependencies,
@@ -45,8 +23,8 @@ var ChildFieldMemo = /*#__PURE__*/_react["default"].memo(function ChildField(_re
45
23
  control = _ref.control,
46
24
  register = _ref.register,
47
25
  error = _ref.error;
48
- var newField = evaluateFieldWithConditions(field, dependencies);
49
- return /*#__PURE__*/_react["default"].createElement(_Field.FieldBase, (0, _extends2["default"])({}, newField, {
26
+ var newField = (0, _utils.evaluateFieldWithConditions)(field, dependencies);
27
+ return /*#__PURE__*/_react["default"].createElement(_FieldBase.FieldBase, (0, _extends2["default"])({}, newField, {
50
28
  name: newField.key,
51
29
  control: control,
52
30
  register: register,
@@ -70,7 +48,7 @@ var ChildFieldMemo = /*#__PURE__*/_react["default"].memo(function ChildField(_re
70
48
  return true;
71
49
  });
72
50
 
73
- var ConditionalField = function ConditionalField(_ref2) {
51
+ var FieldConditional = function FieldConditional(_ref2) {
74
52
  var control = _ref2.control,
75
53
  field = _ref2.field,
76
54
  register = _ref2.register,
@@ -89,4 +67,6 @@ var ConditionalField = function ConditionalField(_ref2) {
89
67
  });
90
68
  };
91
69
 
92
- exports.ConditionalField = ConditionalField;
70
+ exports.FieldConditional = FieldConditional;
71
+ var _default = FieldConditional;
72
+ exports["default"] = _default;
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = exports.FieldContainer = void 0;
9
+
10
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
+
12
+ var _react = _interopRequireDefault(require("react"));
13
+
14
+ var _Field = _interopRequireDefault(require("@digigov/react-core/Field"));
15
+
16
+ var _Label = _interopRequireDefault(require("@digigov/react-core/Label"));
17
+
18
+ var _Fieldset = _interopRequireDefault(require("@digigov/react-core/Fieldset"));
19
+
20
+ var _Hint = _interopRequireDefault(require("@digigov/react-core/Hint"));
21
+
22
+ var _FieldsetLegend = _interopRequireDefault(require("@digigov/react-core/FieldsetLegend"));
23
+
24
+ var _ErrorMessage = _interopRequireDefault(require("@digigov/react-core/ErrorMessage"));
25
+
26
+ var _i18n = require("@digigov/ui/app/i18n");
27
+
28
+ var _Label2 = _interopRequireDefault(require("@digigov/form/inputs/Label"));
29
+
30
+ var FieldContainer = function FieldContainer(_ref) {
31
+ var name = _ref.name,
32
+ wrapper = _ref.wrapper,
33
+ label = _ref.label,
34
+ children = _ref.children,
35
+ error = _ref.error,
36
+ layout = _ref.layout;
37
+
38
+ var _useTranslation = (0, _i18n.useTranslation)(),
39
+ t = _useTranslation.t;
40
+
41
+ if (wrapper === 'fieldset') {
42
+ return /*#__PURE__*/_react["default"].createElement(_Field["default"], (0, _extends2["default"])({
43
+ error: !!error
44
+ }, layout), /*#__PURE__*/_react["default"].createElement(_Fieldset["default"], null, /*#__PURE__*/_react["default"].createElement(_FieldsetLegend["default"], {
45
+ size: "s"
46
+ }, label && label.primary, label && label.secondary && /*#__PURE__*/_react["default"].createElement(_Hint["default"], null, t(label.secondary)), error && /*#__PURE__*/_react["default"].createElement(_ErrorMessage["default"], {
47
+ id: "".concat(name, "-error")
48
+ }, t((error === null || error === void 0 ? void 0 : error.message) || ''))), children));
49
+ } else {
50
+ return /*#__PURE__*/_react["default"].createElement(_Field["default"], (0, _extends2["default"])({
51
+ error: !!error
52
+ }, layout), /*#__PURE__*/_react["default"].createElement(_Label["default"], null, label && /*#__PURE__*/_react["default"].createElement(_Label2["default"], {
53
+ label: label
54
+ }), error && /*#__PURE__*/_react["default"].createElement(_ErrorMessage["default"], {
55
+ id: "".concat(name, "-error")
56
+ }, t((error === null || error === void 0 ? void 0 : error.message) || '')), children));
57
+ }
58
+ };
59
+
60
+ exports.FieldContainer = FieldContainer;
61
+ var _default = FieldContainer;
62
+ exports["default"] = _default;
package/Field/index.js CHANGED
@@ -7,7 +7,7 @@ var _typeof = require("@babel/runtime/helpers/typeof");
7
7
  Object.defineProperty(exports, "__esModule", {
8
8
  value: true
9
9
  });
10
- exports["default"] = exports.FieldBase = exports.Field = void 0;
10
+ exports["default"] = exports.Field = void 0;
11
11
 
12
12
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
13
 
@@ -15,264 +15,24 @@ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/h
15
15
 
16
16
  var _react = _interopRequireWildcard(require("react"));
17
17
 
18
- var _ConditionalField = require("@digigov/form/Field/ConditionalField");
18
+ var _FieldBase = require("@digigov/form/Field/FieldBase");
19
19
 
20
- var _reactHookForm = require("react-hook-form");
20
+ var _FieldConditional = _interopRequireDefault(require("@digigov/form/Field/FieldConditional"));
21
21
 
22
- var _form = require("@digigov/form");
22
+ var _utils = require("@digigov/form/Field/utils");
23
23
 
24
- var _Field = _interopRequireDefault(require("@digigov/react-core/Field"));
25
-
26
- var _Label = _interopRequireDefault(require("@digigov/react-core/Label"));
27
-
28
- var _Fieldset = _interopRequireDefault(require("@digigov/react-core/Fieldset"));
29
-
30
- var _Hint = _interopRequireDefault(require("@digigov/react-core/Hint"));
31
-
32
- var _FieldsetLegend = _interopRequireDefault(require("@digigov/react-core/FieldsetLegend"));
33
-
34
- var _ErrorMessage = _interopRequireDefault(require("@digigov/react-core/ErrorMessage"));
35
-
36
- var _Input = _interopRequireDefault(require("@digigov/form/inputs/Input"));
37
-
38
- var _Checkboxes = _interopRequireDefault(require("@digigov/form/inputs/Checkboxes"));
39
-
40
- var _Radio = _interopRequireDefault(require("@digigov/form/inputs/Radio"));
41
-
42
- var _Select = _interopRequireDefault(require("@digigov/form/inputs/Select"));
43
-
44
- var _FileInput = _interopRequireDefault(require("@digigov/form/inputs/FileInput"));
45
-
46
- var _DateInput = _interopRequireDefault(require("@digigov/form/inputs/DateInput"));
47
-
48
- var _Label2 = _interopRequireDefault(require("@digigov/form/inputs/Label"));
49
-
50
- var _i18n = require("@digigov/ui/app/i18n");
51
-
52
- var _excluded = ["required", "name", "component", "wrapper", "control", "type", "controlled", "enabled", "editable", "defaultValue", "label", "extra", "layout", "error", "register"],
53
- _excluded2 = ["name", "children"];
24
+ var _excluded = ["name", "children"];
54
25
 
55
26
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
56
27
 
57
28
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
58
29
 
59
- var FIELD_COMPONENTS = {
60
- text: {
61
- component: _Input["default"]
62
- },
63
- string: {
64
- component: _Input["default"]
65
- },
66
- file: {
67
- wrapper: 'fieldset',
68
- component: _FileInput["default"]
69
- },
70
- date: {
71
- wrapper: 'fieldset',
72
- controlled: true,
73
- component: _DateInput["default"]
74
- },
75
- 'choice:multiple': {
76
- wrapper: 'fieldset',
77
- controlled: true,
78
- component: _Checkboxes["default"]
79
- },
80
- 'choice:single': {
81
- wrapper: 'fieldset',
82
- controlled: false,
83
- component: _Radio["default"]
84
- }
85
- };
86
- var ALTERNATIVE_COMPONENTS = {
87
- Select: {
88
- component: _Select["default"],
89
- controlled: false
90
- }
91
- };
92
-
93
- var FieldContainer = function FieldContainer(_ref) {
30
+ var Field = function Field(_ref) {
94
31
  var name = _ref.name,
95
- wrapper = _ref.wrapper,
96
- label = _ref.label,
97
32
  children = _ref.children,
98
- error = _ref.error;
99
-
100
- var _useTranslation = (0, _i18n.useTranslation)(),
101
- t = _useTranslation.t;
102
-
103
- if (wrapper === 'fieldset') {
104
- return /*#__PURE__*/_react["default"].createElement(_Field["default"], {
105
- error: !!error
106
- }, /*#__PURE__*/_react["default"].createElement(_Fieldset["default"], null, /*#__PURE__*/_react["default"].createElement(_FieldsetLegend["default"], {
107
- size: "s"
108
- }, label && label.primary, label && label.secondary && /*#__PURE__*/_react["default"].createElement(_Hint["default"], null, t(label.secondary)), error && /*#__PURE__*/_react["default"].createElement(_ErrorMessage["default"], {
109
- id: "".concat(name, "-error")
110
- }, t((error === null || error === void 0 ? void 0 : error.message) || ''))), children));
111
- } else {
112
- return /*#__PURE__*/_react["default"].createElement(_Field["default"], {
113
- error: !!error
114
- }, /*#__PURE__*/_react["default"].createElement(_Label["default"], null, label && /*#__PURE__*/_react["default"].createElement(_Label2["default"], {
115
- label: label
116
- }), error && /*#__PURE__*/_react["default"].createElement(_ErrorMessage["default"], {
117
- id: "".concat(name, "-error")
118
- }, t((error === null || error === void 0 ? void 0 : error.message) || '')), children));
119
- }
120
- };
121
-
122
- var FieldBase = function FieldBase(props) {
123
- var required = props.required,
124
- name = props.name,
125
- Component = props.component,
126
- wrapper = props.wrapper,
127
- control = props.control,
128
- type = props.type,
129
- _props$controlled = props.controlled,
130
- controlled = _props$controlled === void 0 ? false : _props$controlled,
131
- _props$enabled = props.enabled,
132
- enabled = _props$enabled === void 0 ? true : _props$enabled,
133
- editable = props.editable,
134
- defaultValue = props.defaultValue,
135
- label = props.label,
136
- _props$extra = props.extra,
137
- extra = _props$extra === void 0 ? {} : _props$extra,
138
- layout = props.layout,
139
- error = props.error,
140
- register = props.register,
141
- componentProps = (0, _objectWithoutProperties2["default"])(props, _excluded);
142
-
143
- if (!enabled) {
144
- return null;
145
- }
146
-
147
- if (controlled) {
148
- return /*#__PURE__*/_react["default"].createElement(FieldContainer, {
149
- label: label,
150
- layout: layout,
151
- error: error,
152
- wrapper: wrapper,
153
- name: name
154
- }, /*#__PURE__*/_react["default"].createElement(_reactHookForm.Controller, {
155
- control: control,
156
- name: name,
157
- render: function render(_ref2) {
158
- var onChange = _ref2.onChange,
159
- onBlur = _ref2.onBlur,
160
- value = _ref2.value;
161
- return /*#__PURE__*/_react["default"].createElement(Component, (0, _extends2["default"])({
162
- name: name,
163
- onChange: onChange,
164
- onBlur: onBlur,
165
- value: value,
166
- defaultValue: defaultValue,
167
- extra: extra,
168
- error: !!error,
169
- type: type,
170
- "aria-required": !!required,
171
- "aria-describedby": error && "".concat(name, "-error"),
172
- required: required,
173
- disabled: editable === false
174
- }, componentProps));
175
- }
176
- }));
177
- }
178
-
179
- return /*#__PURE__*/_react["default"].createElement(FieldContainer, {
180
- label: label,
181
- layout: layout,
182
- error: error,
183
- wrapper: wrapper,
184
- name: name
185
- }, Component !== null && Component !== void 0 && Component.render ? /*#__PURE__*/_react["default"].createElement(Component, (0, _extends2["default"])({
186
- name: name,
187
- ref: register,
188
- control: control,
189
- error: !!error,
190
- extra: extra,
191
- type: type,
192
- "aria-required": !!required,
193
- "aria-describedby": error && "".concat(name, "-error"),
194
- required: required,
195
- disabled: editable === false
196
- }, componentProps)) : /*#__PURE__*/_react["default"].createElement(Component, (0, _extends2["default"])({
197
- name: name,
198
- register: register,
199
- control: control,
200
- error: !!error,
201
- extra: extra,
202
- type: type,
203
- "aria-required": !!required,
204
- "aria-describedby": error && "".concat(name, "-error"),
205
- required: required,
206
- disabled: editable === false
207
- }, componentProps)));
208
- };
209
-
210
- exports.FieldBase = FieldBase;
211
-
212
- var useField = function useField(name, customField) {
213
- var _useContext = (0, _react.useContext)(_form.FormContext),
214
- fieldsMap = _useContext.fieldsMap,
215
- control = _useContext.control,
216
- register = _useContext.register,
217
- errors = _useContext.errors,
218
- registerField = _useContext.registerField,
219
- componentRegistry = _useContext.componentRegistry;
220
-
221
- (0, _react.useMemo)(function () {
222
- return (customField === null || customField === void 0 ? void 0 : customField.type) && registerField((0, _extends2["default"])({}, customField, {
223
- key: name
224
- }));
225
- }, [customField, name, registerField]);
226
- return {
227
- field: customField || fieldsMap[name],
228
- control: control,
229
- register: register,
230
- componentRegistry: componentRegistry,
231
- error: errors[name]
232
- };
233
- };
234
-
235
- function calculateField(children, field, componentRegistry) {
236
- var _field$extra;
237
-
238
- var calculatedField = (0, _extends2["default"])({}, field);
239
- var FieldComponentRegistry = (0, _extends2["default"])({}, FIELD_COMPONENTS, componentRegistry);
240
-
241
- if (children) {
242
- calculatedField.component = children;
243
- } else if (typeof field.component === 'function') {// leave as is
244
- } else if (!field.component && !field.type) {
245
- var _FieldComponentRegist;
246
-
247
- calculatedField.component = FieldComponentRegistry.string.component;
248
- calculatedField.controlled = ((_FieldComponentRegist = FieldComponentRegistry.string) === null || _FieldComponentRegist === void 0 ? void 0 : _FieldComponentRegist.controlled) || false;
249
- } else if (typeof (field === null || field === void 0 ? void 0 : (_field$extra = field.extra) === null || _field$extra === void 0 ? void 0 : _field$extra.component) === 'string' && ALTERNATIVE_COMPONENTS[field.extra.component]) {
250
- var _ALTERNATIVE_COMPONEN;
251
-
252
- calculatedField.controlled = ((_ALTERNATIVE_COMPONEN = ALTERNATIVE_COMPONENTS[field.extra.component]) === null || _ALTERNATIVE_COMPONEN === void 0 ? void 0 : _ALTERNATIVE_COMPONEN.controlled) || false;
253
- calculatedField.component = ALTERNATIVE_COMPONENTS[field.extra.component].component;
254
- } else if (!field.component && field.type && FieldComponentRegistry[field.type]) {
255
- var _FieldComponentRegist2;
256
-
257
- calculatedField.component = FieldComponentRegistry[field.type].component;
258
- calculatedField.wrapper = FieldComponentRegistry[field.type].wrapper;
259
- calculatedField.controlled = ((_FieldComponentRegist2 = FieldComponentRegistry[field.type]) === null || _FieldComponentRegist2 === void 0 ? void 0 : _FieldComponentRegist2.controlled) || false;
260
- } else {
261
- var _FieldComponentRegist3;
262
-
263
- calculatedField.component = FieldComponentRegistry.string.component;
264
- calculatedField.controlled = ((_FieldComponentRegist3 = FieldComponentRegistry.string) === null || _FieldComponentRegist3 === void 0 ? void 0 : _FieldComponentRegist3.controlled) || false;
265
- }
266
-
267
- return calculatedField;
268
- }
269
-
270
- var Field = function Field(_ref3) {
271
- var name = _ref3.name,
272
- children = _ref3.children,
273
- customField = (0, _objectWithoutProperties2["default"])(_ref3, _excluded2);
33
+ customField = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
274
34
 
275
- var _useField = useField(name, customField !== null && customField !== void 0 && customField.type ? customField : null),
35
+ var _useField = (0, _utils.useField)(name, customField !== null && customField !== void 0 && customField.type ? customField : null),
276
36
  field = _useField.field,
277
37
  control = _useField.control,
278
38
  register = _useField.register,
@@ -280,11 +40,11 @@ var Field = function Field(_ref3) {
280
40
  componentRegistry = _useField.componentRegistry;
281
41
 
282
42
  var calculatedField = (0, _react.useMemo)(function () {
283
- return calculateField(children, field, componentRegistry);
43
+ return (0, _utils.calculateField)(children, field, componentRegistry);
284
44
  }, [field]);
285
45
 
286
46
  if (calculatedField.condition) {
287
- return /*#__PURE__*/_react["default"].createElement(_ConditionalField.ConditionalField, {
47
+ return /*#__PURE__*/_react["default"].createElement(_FieldConditional["default"], {
288
48
  control: control,
289
49
  register: register,
290
50
  field: calculatedField,
@@ -292,7 +52,7 @@ var Field = function Field(_ref3) {
292
52
  });
293
53
  }
294
54
 
295
- return /*#__PURE__*/_react["default"].createElement(FieldBase, (0, _extends2["default"])({}, calculatedField, {
55
+ return /*#__PURE__*/_react["default"].createElement(_FieldBase.FieldBase, (0, _extends2["default"])({}, calculatedField, {
296
56
  name: name,
297
57
  control: control,
298
58
  register: register,
package/Field/types.js ADDED
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });