@ukhomeoffice/cop-react-form-renderer 6.13.2 → 6.14.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 (386) hide show
  1. package/README.md +8 -0
  2. package/dist/components/CheckYourAnswers/Answer.js +12 -11
  3. package/dist/components/CheckYourAnswers/Answer.test.js +132 -181
  4. package/dist/components/CheckYourAnswers/CheckYourAnswers.js +98 -133
  5. package/dist/components/CheckYourAnswers/CheckYourAnswers.test.js +544 -939
  6. package/dist/components/CheckYourAnswers/index.js +1 -1
  7. package/dist/components/CollectionPage/CollectionPage.js +62 -60
  8. package/dist/components/CollectionPage/CollectionPage.test.js +315 -365
  9. package/dist/components/CollectionPage/index.js +1 -1
  10. package/dist/components/CollectionSummary/BannerStrip.js +14 -14
  11. package/dist/components/CollectionSummary/BannerStrip.test.js +79 -74
  12. package/dist/components/CollectionSummary/CollectionSummary.js +81 -99
  13. package/dist/components/CollectionSummary/CollectionSummary.test.js +182 -166
  14. package/dist/components/CollectionSummary/Confirmation.js +15 -13
  15. package/dist/components/CollectionSummary/Confirmation.test.js +68 -63
  16. package/dist/components/CollectionSummary/RenderListView.js +47 -48
  17. package/dist/components/CollectionSummary/RenderListView.scss +4 -0
  18. package/dist/components/CollectionSummary/RenderListView.test.js +133 -98
  19. package/dist/components/CollectionSummary/SummaryCard.js +110 -148
  20. package/dist/components/CollectionSummary/SummaryCard.test.js +961 -993
  21. package/dist/components/CollectionSummary/SummaryCardButtons.js +71 -0
  22. package/dist/components/CollectionSummary/SummaryCardButtons.test.js +85 -0
  23. package/dist/components/CollectionSummary/SummaryCardDetails.js +59 -76
  24. package/dist/components/CollectionSummary/SummaryCardDetails.test.js +170 -180
  25. package/dist/components/CollectionSummary/SummaryCardValidationContext.js +31 -36
  26. package/dist/components/CollectionSummary/SummaryCardValidationContext.test.js +63 -75
  27. package/dist/components/CollectionSummary/index.js +1 -1
  28. package/dist/components/FormComponent/Collection.js +67 -102
  29. package/dist/components/FormComponent/Collection.test.js +907 -1080
  30. package/dist/components/FormComponent/Container.js +35 -29
  31. package/dist/components/FormComponent/Container.test.js +378 -409
  32. package/dist/components/FormComponent/FormComponent.js +59 -63
  33. package/dist/components/FormComponent/FormComponent.test.js +354 -415
  34. package/dist/components/FormComponent/helpers/addLabel.js +4 -7
  35. package/dist/components/FormComponent/helpers/getComponentDisabled.js +1 -1
  36. package/dist/components/FormComponent/helpers/getComponentDisabled.test.js +8 -8
  37. package/dist/components/FormComponent/helpers/getComponentError.js +3 -5
  38. package/dist/components/FormComponent/helpers/getComponentError.test.js +15 -15
  39. package/dist/components/FormComponent/helpers/getComponentFieldSet.js +3 -4
  40. package/dist/components/FormComponent/helpers/getComponentFieldSet.test.js +7 -7
  41. package/dist/components/FormComponent/helpers/index.js +5 -5
  42. package/dist/components/FormComponent/index.js +1 -1
  43. package/dist/components/FormPage/FormPage.js +99 -88
  44. package/dist/components/FormPage/FormPage.test.js +173 -164
  45. package/dist/components/FormPage/index.js +1 -1
  46. package/dist/components/FormRenderer/FormRenderer.js +138 -174
  47. package/dist/components/FormRenderer/FormRenderer.test.js +732 -1114
  48. package/dist/components/FormRenderer/handlers/cyaAction.js +3 -3
  49. package/dist/components/FormRenderer/handlers/getPageId.js +1 -3
  50. package/dist/components/FormRenderer/handlers/getPageId.test.js +15 -15
  51. package/dist/components/FormRenderer/handlers/handlers.test.js +33 -33
  52. package/dist/components/FormRenderer/handlers/index.js +2 -2
  53. package/dist/components/FormRenderer/handlers/navigate.js +4 -4
  54. package/dist/components/FormRenderer/handlers/submissionError.js +1 -1
  55. package/dist/components/FormRenderer/helpers/canActionProceed.js +1 -1
  56. package/dist/components/FormRenderer/helpers/canActionProceed.test.js +16 -16
  57. package/dist/components/FormRenderer/helpers/canCYASubmit.js +1 -3
  58. package/dist/components/FormRenderer/helpers/canCYASubmit.test.js +17 -21
  59. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.js +22 -25
  60. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.test.js +21 -21
  61. package/dist/components/FormRenderer/helpers/getCYA.js +4 -6
  62. package/dist/components/FormRenderer/helpers/getCYA.test.js +12 -12
  63. package/dist/components/FormRenderer/helpers/getFormState.js +6 -8
  64. package/dist/components/FormRenderer/helpers/getFormState.test.js +11 -11
  65. package/dist/components/FormRenderer/helpers/getNextPageId.js +14 -25
  66. package/dist/components/FormRenderer/helpers/getNextPageId.test.js +68 -68
  67. package/dist/components/FormRenderer/helpers/getPage.js +2 -4
  68. package/dist/components/FormRenderer/helpers/getPage.test.js +12 -12
  69. package/dist/components/FormRenderer/helpers/getRelevantPages.js +7 -9
  70. package/dist/components/FormRenderer/helpers/getRelevantPages.test.js +15 -15
  71. package/dist/components/FormRenderer/helpers/getSubmissionStatus.js +6 -6
  72. package/dist/components/FormRenderer/helpers/getSubmissionStatus.test.js +104 -98
  73. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.js +44 -51
  74. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.test.js +68 -74
  75. package/dist/components/FormRenderer/helpers/index.js +2 -2
  76. package/dist/components/FormRenderer/index.js +1 -1
  77. package/dist/components/FormRenderer/onCYAAction.js +43 -44
  78. package/dist/components/FormRenderer/onCYAAction.test.js +126 -133
  79. package/dist/components/FormRenderer/onPageAction.js +26 -35
  80. package/dist/components/FormRenderer/onPageAction.test.js +177 -186
  81. package/dist/components/FormRenderer/onTaskAction.js +11 -12
  82. package/dist/components/FormRenderer/onTaskAction.test.js +63 -68
  83. package/dist/components/PageActions/ActionButton.js +14 -14
  84. package/dist/components/PageActions/ActionButton.test.js +57 -79
  85. package/dist/components/PageActions/PageActions.js +11 -11
  86. package/dist/components/PageActions/PageActions.test.js +87 -116
  87. package/dist/components/PageActions/index.js +1 -1
  88. package/dist/components/SummaryList/GroupAction.js +10 -18
  89. package/dist/components/SummaryList/GroupAction.test.js +38 -34
  90. package/dist/components/SummaryList/RowAction.js +12 -17
  91. package/dist/components/SummaryList/RowAction.test.js +38 -34
  92. package/dist/components/SummaryList/SummaryList.js +23 -25
  93. package/dist/components/SummaryList/SummaryList.test.js +162 -189
  94. package/dist/components/SummaryList/SummaryListHeadingRow.js +7 -5
  95. package/dist/components/SummaryList/SummaryListHeadingRowWithAction.js +7 -5
  96. package/dist/components/SummaryList/SummaryListRow.js +7 -5
  97. package/dist/components/SummaryList/SummaryListTitleRow.js +6 -4
  98. package/dist/components/SummaryList/helpers/getGroupActionAttributes.js +3 -5
  99. package/dist/components/SummaryList/helpers/getGroupActionAttributes.test.js +23 -23
  100. package/dist/components/SummaryList/helpers/getRowActionAttributes.js +3 -5
  101. package/dist/components/SummaryList/helpers/getRowActionAttributes.test.js +23 -23
  102. package/dist/components/SummaryList/helpers/index.js +2 -2
  103. package/dist/components/SummaryList/index.js +1 -1
  104. package/dist/components/TaskList/Task.js +20 -30
  105. package/dist/components/TaskList/Task.test.js +84 -77
  106. package/dist/components/TaskList/TaskList.js +56 -79
  107. package/dist/components/TaskList/TaskList.test.js +149 -149
  108. package/dist/components/TaskList/TaskState.js +8 -6
  109. package/dist/components/TaskList/TaskState.test.js +53 -46
  110. package/dist/components/TaskList/index.js +1 -1
  111. package/dist/components/index.js +8 -8
  112. package/dist/context/HooksContext/HooksContext.js +56 -79
  113. package/dist/context/HooksContext/HooksContext.test.js +27 -36
  114. package/dist/context/HooksContext/index.js +3 -4
  115. package/dist/context/ValidationContext/ValidationContext.js +44 -95
  116. package/dist/context/ValidationContext/ValidationContext.test.js +57 -69
  117. package/dist/context/ValidationContext/index.js +3 -4
  118. package/dist/context/index.js +3 -3
  119. package/dist/hooks/index.js +10 -11
  120. package/dist/hooks/useAxios.js +15 -41
  121. package/dist/hooks/useGetRequest.js +62 -98
  122. package/dist/hooks/useHooks.js +1 -3
  123. package/dist/hooks/useRefData.js +25 -37
  124. package/dist/hooks/useValidation.js +1 -3
  125. package/dist/index.js +14 -15
  126. package/dist/models/CollectionLabels.js +1 -1
  127. package/dist/models/ComponentTypes.js +25 -25
  128. package/dist/models/EventTypes.js +4 -4
  129. package/dist/models/FormPages.js +4 -4
  130. package/dist/models/FormTypes.js +8 -8
  131. package/dist/models/HubFormats.js +3 -3
  132. package/dist/models/PageAction.js +44 -38
  133. package/dist/models/TaskStates.js +29 -28
  134. package/dist/models/index.js +10 -10
  135. package/dist/setupTests.js +30 -31
  136. package/dist/utils/CheckYourAnswers/getCYAAction.js +5 -5
  137. package/dist/utils/CheckYourAnswers/getCYAAction.test.js +53 -55
  138. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.js +12 -21
  139. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.test.js +32 -33
  140. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.js +15 -28
  141. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.test.js +41 -42
  142. package/dist/utils/CheckYourAnswers/getCYARow.js +7 -7
  143. package/dist/utils/CheckYourAnswers/getCYARow.test.js +87 -87
  144. package/dist/utils/CheckYourAnswers/getCYARowForGroup.js +19 -21
  145. package/dist/utils/CheckYourAnswers/getCYARowForGroup.test.js +16 -17
  146. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.js +27 -34
  147. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.test.js +48 -52
  148. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.js +79 -93
  149. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.test.js +110 -115
  150. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.js +11 -14
  151. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.test.js +146 -98
  152. package/dist/utils/CheckYourAnswers/getCYARowsForPage.js +14 -19
  153. package/dist/utils/CheckYourAnswers/getCYARowsForPage.test.js +69 -73
  154. package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.js +7 -8
  155. package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.test.js +15 -16
  156. package/dist/utils/CheckYourAnswers/index.js +2 -2
  157. package/dist/utils/CheckYourAnswers/showComponentCYA.js +5 -5
  158. package/dist/utils/CheckYourAnswers/showComponentCYA.test.js +26 -26
  159. package/dist/utils/CollectionPage/addCollectionPageEntry.js +2 -2
  160. package/dist/utils/CollectionPage/addCollectionPageEntry.test.js +6 -6
  161. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.js +3 -3
  162. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.test.js +18 -19
  163. package/dist/utils/CollectionPage/duplicateCollectionPageEntry.js +13 -20
  164. package/dist/utils/CollectionPage/duplicateCollectionPageEntry.test.js +48 -39
  165. package/dist/utils/CollectionPage/getCollectionPageActiveId.js +2 -2
  166. package/dist/utils/CollectionPage/getCollectionPageActiveId.test.js +11 -11
  167. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.js +7 -11
  168. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.test.js +23 -23
  169. package/dist/utils/CollectionPage/getCollectionPageData.js +8 -12
  170. package/dist/utils/CollectionPage/getCollectionPageData.test.js +20 -20
  171. package/dist/utils/CollectionPage/getErrorsForCollection.js +20 -21
  172. package/dist/utils/CollectionPage/getErrorsForCollection.test.js +21 -23
  173. package/dist/utils/CollectionPage/getQuickEditPage.js +22 -23
  174. package/dist/utils/CollectionPage/getQuickEditPage.test.js +17 -18
  175. package/dist/utils/CollectionPage/index.js +2 -2
  176. package/dist/utils/CollectionPage/mergeCollectionPages.js +26 -35
  177. package/dist/utils/CollectionPage/mergeCollectionPages.test.js +18 -18
  178. package/dist/utils/CollectionPage/removeCollectionPageEntry.js +5 -7
  179. package/dist/utils/CollectionPage/removeCollectionPageEntry.test.js +11 -11
  180. package/dist/utils/CollectionPage/setCollectionPageData.js +10 -16
  181. package/dist/utils/CollectionPage/setCollectionPageData.test.js +25 -25
  182. package/dist/utils/Component/addShowWhen.js +5 -6
  183. package/dist/utils/Component/addShowWhen.test.js +38 -38
  184. package/dist/utils/Component/applyToComponentTree.js +12 -15
  185. package/dist/utils/Component/applyToComponentTree.test.js +28 -31
  186. package/dist/utils/Component/cleanAttributes.js +12 -11
  187. package/dist/utils/Component/cleanAttributes.test.js +17 -18
  188. package/dist/utils/Component/elevateNestedComponents.js +6 -6
  189. package/dist/utils/Component/elevateNestedComponents.test.js +34 -34
  190. package/dist/utils/Component/getComponent.js +81 -83
  191. package/dist/utils/Component/getComponentTests/getComponent.autocomplete.test.js +19 -18
  192. package/dist/utils/Component/getComponentTests/getComponent.calculation.test.js +41 -58
  193. package/dist/utils/Component/getComponentTests/getComponent.checkboxes.test.js +40 -49
  194. package/dist/utils/Component/getComponentTests/getComponent.date.test.js +24 -34
  195. package/dist/utils/Component/getComponentTests/getComponent.details.test.js +21 -19
  196. package/dist/utils/Component/getComponentTests/getComponent.email.test.js +18 -23
  197. package/dist/utils/Component/getComponentTests/getComponent.file.test.js +21 -26
  198. package/dist/utils/Component/getComponentTests/getComponent.heading.test.js +11 -10
  199. package/dist/utils/Component/getComponentTests/getComponent.html.test.js +18 -16
  200. package/dist/utils/Component/getComponentTests/getComponent.insetText.test.js +10 -9
  201. package/dist/utils/Component/getComponentTests/getComponent.list.test.js +18 -16
  202. package/dist/utils/Component/getComponentTests/getComponent.multifile.test.js +23 -27
  203. package/dist/utils/Component/getComponentTests/getComponent.nested.test.js +201 -174
  204. package/dist/utils/Component/getComponentTests/getComponent.paragraph.test.js +18 -16
  205. package/dist/utils/Component/getComponentTests/getComponent.phoneNumber.test.js +18 -23
  206. package/dist/utils/Component/getComponentTests/getComponent.radios.test.js +58 -73
  207. package/dist/utils/Component/getComponentTests/getComponent.select.test.js +18 -23
  208. package/dist/utils/Component/getComponentTests/getComponent.text.test.js +18 -23
  209. package/dist/utils/Component/getComponentTests/getComponent.textArea.test.js +32 -39
  210. package/dist/utils/Component/getComponentTests/getComponent.time.test.js +21 -30
  211. package/dist/utils/Component/getComponentTests/getComponent.unknown.test.js +3 -3
  212. package/dist/utils/Component/getComponentTests/getComponent.warningText.test.js +10 -9
  213. package/dist/utils/Component/getDefaultValue.js +7 -9
  214. package/dist/utils/Component/getDefaultValue.test.js +13 -13
  215. package/dist/utils/Component/getDefaultValueFromConfig.js +16 -20
  216. package/dist/utils/Component/getDefaultValueFromConfig.test.js +32 -32
  217. package/dist/utils/Component/index.js +2 -2
  218. package/dist/utils/Component/isEditable.js +2 -4
  219. package/dist/utils/Component/isEditable.test.js +14 -15
  220. package/dist/utils/Component/optionIsSelected.js +2 -4
  221. package/dist/utils/Component/optionIsSelected.test.js +12 -12
  222. package/dist/utils/Component/setupContainerComponentsPath.js +23 -28
  223. package/dist/utils/Component/setupContainerComponentsPath.test.js +12 -12
  224. package/dist/utils/Component/showComponent.js +2 -2
  225. package/dist/utils/Component/showComponent.test.js +29 -29
  226. package/dist/utils/Component/wrapInFormGroup.js +4 -4
  227. package/dist/utils/Condition/index.js +2 -2
  228. package/dist/utils/Condition/meetsAllConditions.js +9 -9
  229. package/dist/utils/Condition/meetsAllConditions.test.js +21 -21
  230. package/dist/utils/Condition/meetsCondition.js +17 -26
  231. package/dist/utils/Condition/meetsCondition.test.js +403 -403
  232. package/dist/utils/Condition/meetsOneCondition.js +6 -6
  233. package/dist/utils/Condition/meetsOneCondition.test.js +17 -17
  234. package/dist/utils/Condition/setupConditions.js +12 -15
  235. package/dist/utils/Condition/setupConditions.test.js +8 -8
  236. package/dist/utils/Container/getEditableComponents.js +4 -6
  237. package/dist/utils/Container/getEditableComponents.test.js +44 -46
  238. package/dist/utils/Container/index.js +2 -2
  239. package/dist/utils/Container/setupNesting.js +14 -15
  240. package/dist/utils/Container/setupNesting.test.js +20 -23
  241. package/dist/utils/Container/showContainer.js +4 -8
  242. package/dist/utils/Container/showContainer.test.js +31 -31
  243. package/dist/utils/Data/applyFormula.js +30 -44
  244. package/dist/utils/Data/applyFormula.test.js +21 -21
  245. package/dist/utils/Data/deleteValues.js +4 -8
  246. package/dist/utils/Data/deleteValues.test.js +11 -11
  247. package/dist/utils/Data/getAutocompleteSource.js +19 -27
  248. package/dist/utils/Data/getAutocompleteSource.test.js +76 -81
  249. package/dist/utils/Data/getDataPath.js +18 -28
  250. package/dist/utils/Data/getDataPath.test.js +13 -13
  251. package/dist/utils/Data/getOptions.js +57 -30
  252. package/dist/utils/Data/getOptions.test.js +75 -28
  253. package/dist/utils/Data/getSourceData.js +6 -19
  254. package/dist/utils/Data/getSourceData.test.js +85 -81
  255. package/dist/utils/Data/index.js +2 -2
  256. package/dist/utils/Data/nestInRefdataOptions.js +9 -12
  257. package/dist/utils/Data/nestInRefdataOptions.test.js +17 -17
  258. package/dist/utils/Data/refDataToOptions.js +9 -10
  259. package/dist/utils/Data/refDataToOptions.test.js +20 -20
  260. package/dist/utils/Data/setDataItem.js +7 -8
  261. package/dist/utils/Data/setDataItem.test.js +38 -38
  262. package/dist/utils/Data/setupFormData.js +13 -20
  263. package/dist/utils/Data/setupFormData.test.js +48 -47
  264. package/dist/utils/Data/setupRefDataUrlForComponent.js +11 -20
  265. package/dist/utils/Data/setupRefDataUrlForComponent.test.js +25 -25
  266. package/dist/utils/FormPage/applyConditionalProperties.js +7 -8
  267. package/dist/utils/FormPage/applyConditionalProperties.test.js +14 -15
  268. package/dist/utils/FormPage/getConditionalText.js +4 -4
  269. package/dist/utils/FormPage/getConditionalText.test.js +30 -30
  270. package/dist/utils/FormPage/getFormPage.js +16 -12
  271. package/dist/utils/FormPage/getFormPage.test.js +23 -24
  272. package/dist/utils/FormPage/getFormPages.js +8 -11
  273. package/dist/utils/FormPage/getFormPages.test.js +15 -16
  274. package/dist/utils/FormPage/getPageActions.js +10 -13
  275. package/dist/utils/FormPage/getPageActions.test.js +33 -33
  276. package/dist/utils/FormPage/getParagraphFromText.js +5 -7
  277. package/dist/utils/FormPage/getParagraphFromText.test.js +7 -7
  278. package/dist/utils/FormPage/index.js +3 -5
  279. package/dist/utils/FormPage/showFormPage.js +4 -8
  280. package/dist/utils/FormPage/showFormPage.test.js +33 -33
  281. package/dist/utils/FormPage/showFormPageCYA.js +2 -2
  282. package/dist/utils/FormPage/showFormPageCYA.test.js +9 -9
  283. package/dist/utils/FormPage/useComponent.js +25 -22
  284. package/dist/utils/FormPage/useComponent.test.js +79 -44
  285. package/dist/utils/Format/formatData.js +1 -1
  286. package/dist/utils/Format/formatData.test.js +19 -19
  287. package/dist/utils/Format/formatDataForComponent.js +6 -7
  288. package/dist/utils/Format/formatDataForComponent.test.js +50 -78
  289. package/dist/utils/Format/formatDataForForm.js +5 -6
  290. package/dist/utils/Format/formatDataForForm.test.js +14 -17
  291. package/dist/utils/Format/formatDataForPage.js +4 -5
  292. package/dist/utils/Format/formatDataForPage.test.js +20 -25
  293. package/dist/utils/Format/index.js +2 -2
  294. package/dist/utils/Hub/getFormHub.js +2 -2
  295. package/dist/utils/Hub/getFormHub.test.js +23 -24
  296. package/dist/utils/Hub/index.js +2 -2
  297. package/dist/utils/Meta/constants.js +2 -2
  298. package/dist/utils/Meta/documents/getDocuments.js +1 -1
  299. package/dist/utils/Meta/documents/getDocuments.test.js +25 -17
  300. package/dist/utils/Meta/documents/index.js +2 -2
  301. package/dist/utils/Meta/documents/setDocumentsForField.js +12 -13
  302. package/dist/utils/Meta/documents/setDocumentsForField.test.js +70 -33
  303. package/dist/utils/Meta/index.js +2 -2
  304. package/dist/utils/Operate/checkValueIsTruthy.js +3 -3
  305. package/dist/utils/Operate/checkValueIsTruthy.test.js +17 -17
  306. package/dist/utils/Operate/deleteValueInFormData.js +2 -2
  307. package/dist/utils/Operate/deleteValueInFormData.test.js +15 -15
  308. package/dist/utils/Operate/getFirstOf.js +6 -6
  309. package/dist/utils/Operate/getFirstOf.test.js +32 -32
  310. package/dist/utils/Operate/getIndexOfMatchingValueIn.js +11 -11
  311. package/dist/utils/Operate/getIndexOfMatchingValueIn.test.js +47 -53
  312. package/dist/utils/Operate/getLength.js +9 -9
  313. package/dist/utils/Operate/getLength.test.js +19 -19
  314. package/dist/utils/Operate/index.js +2 -2
  315. package/dist/utils/Operate/persistValueInFormData.js +4 -4
  316. package/dist/utils/Operate/persistValueInFormData.test.js +23 -21
  317. package/dist/utils/Operate/runPageOperations.js +8 -8
  318. package/dist/utils/Operate/runPageOperations.test.js +24 -25
  319. package/dist/utils/Operate/setValueInFormData.js +3 -3
  320. package/dist/utils/Operate/setValueInFormData.test.js +17 -17
  321. package/dist/utils/Operate/shouldRun.js +7 -7
  322. package/dist/utils/Operate/shouldRun.test.js +22 -24
  323. package/dist/utils/Validate/additional/conditionallyPermittedChange.js +1 -1
  324. package/dist/utils/Validate/additional/conditionallyPermittedChange.test.js +15 -15
  325. package/dist/utils/Validate/additional/conditionallyRequired.js +4 -4
  326. package/dist/utils/Validate/additional/conditionallyRequired.test.js +19 -19
  327. package/dist/utils/Validate/additional/index.js +8 -8
  328. package/dist/utils/Validate/additional/index.test.js +22 -22
  329. package/dist/utils/Validate/additional/mustBeAfter.js +3 -3
  330. package/dist/utils/Validate/additional/mustBeAfter.test.js +41 -41
  331. package/dist/utils/Validate/additional/mustBeBefore.js +3 -3
  332. package/dist/utils/Validate/additional/mustBeBefore.test.js +29 -29
  333. package/dist/utils/Validate/additional/mustBeEarlierDateTime.js +8 -12
  334. package/dist/utils/Validate/additional/mustBeEarlierDateTime.test.js +37 -38
  335. package/dist/utils/Validate/additional/mustBeGreaterThan.js +2 -2
  336. package/dist/utils/Validate/additional/mustBeGreaterThan.test.js +19 -19
  337. package/dist/utils/Validate/additional/mustBeInTheFuture.js +3 -3
  338. package/dist/utils/Validate/additional/mustBeInTheFuture.test.js +13 -13
  339. package/dist/utils/Validate/additional/mustBeInThePast.js +4 -4
  340. package/dist/utils/Validate/additional/mustBeInThePast.test.js +13 -13
  341. package/dist/utils/Validate/additional/mustBeLessThan.js +2 -2
  342. package/dist/utils/Validate/additional/mustBeLessThan.test.js +18 -18
  343. package/dist/utils/Validate/additional/mustBeLongerThan.js +1 -1
  344. package/dist/utils/Validate/additional/mustBeLongerThan.test.js +17 -17
  345. package/dist/utils/Validate/additional/mustBeNumbersOnly.js +2 -2
  346. package/dist/utils/Validate/additional/mustBeNumbersOnly.test.js +21 -21
  347. package/dist/utils/Validate/additional/mustBeOneOf.js +1 -1
  348. package/dist/utils/Validate/additional/mustBeOneOf.test.js +13 -13
  349. package/dist/utils/Validate/additional/mustBeShorterThan.js +1 -1
  350. package/dist/utils/Validate/additional/mustBeShorterThan.test.js +17 -17
  351. package/dist/utils/Validate/additional/mustBeUniqueInCollection.js +5 -5
  352. package/dist/utils/Validate/additional/mustBeUniqueInCollection.test.js +35 -36
  353. package/dist/utils/Validate/additional/mustEnterAtLeastOne.js +2 -2
  354. package/dist/utils/Validate/additional/mustEnterAtLeastOne.test.js +15 -17
  355. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.js +1 -1
  356. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.test.js +13 -13
  357. package/dist/utils/Validate/additional/mustNotContainSql.js +3 -4
  358. package/dist/utils/Validate/additional/mustNotContainSql.test.js +15 -15
  359. package/dist/utils/Validate/additional/mustSelectOnlyOne.js +2 -2
  360. package/dist/utils/Validate/additional/mustSelectOnlyOne.test.js +29 -27
  361. package/dist/utils/Validate/additional/utils.js +9 -22
  362. package/dist/utils/Validate/index.js +2 -2
  363. package/dist/utils/Validate/validateCollection.js +18 -23
  364. package/dist/utils/Validate/validateCollection.test.js +75 -67
  365. package/dist/utils/Validate/validateComponent.js +19 -19
  366. package/dist/utils/Validate/validateComponent.test.js +179 -154
  367. package/dist/utils/Validate/validateContainer.js +14 -17
  368. package/dist/utils/Validate/validateContainer.test.js +59 -53
  369. package/dist/utils/Validate/validateDate.js +16 -22
  370. package/dist/utils/Validate/validateDate.test.js +31 -32
  371. package/dist/utils/Validate/validateEmail.js +8 -9
  372. package/dist/utils/Validate/validateEmail.test.js +29 -26
  373. package/dist/utils/Validate/validateMultifile.js +5 -7
  374. package/dist/utils/Validate/validateMultifile.test.js +17 -18
  375. package/dist/utils/Validate/validatePage.js +13 -18
  376. package/dist/utils/Validate/validatePage.test.js +198 -195
  377. package/dist/utils/Validate/validateRegex.js +3 -5
  378. package/dist/utils/Validate/validateRegex.test.js +15 -15
  379. package/dist/utils/Validate/validateRequired.js +4 -6
  380. package/dist/utils/Validate/validateRequired.test.js +19 -19
  381. package/dist/utils/Validate/validateTextArea.js +4 -6
  382. package/dist/utils/Validate/validateTextArea.test.js +21 -21
  383. package/dist/utils/Validate/validateTime.js +12 -19
  384. package/dist/utils/Validate/validateTime.test.js +27 -27
  385. package/dist/utils/index.js +5 -6
  386. package/package.json +5 -5
@@ -4,23 +4,22 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
8
7
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
9
8
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
10
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
11
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
12
- function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
13
- var getValueAndLabel = function getValueAndLabel(opt, itemStructure) {
9
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
10
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
11
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
12
+ const getValueAndLabel = (opt, itemStructure) => {
14
13
  var _value;
15
- var value = opt.value || opt.id;
16
- var label = opt.label || opt.name;
14
+ let value = opt.value || opt.id;
15
+ let label = opt.label || opt.name;
17
16
  if (itemStructure) {
18
17
  value = opt[itemStructure.value] || value;
19
18
  label = opt[itemStructure.label] || label;
20
19
  }
21
20
  return {
22
21
  value: (_value = value) === null || _value === void 0 ? void 0 : _value.toString(),
23
- label: label
22
+ label
24
23
  };
25
24
  };
26
25
 
@@ -30,9 +29,9 @@ var getValueAndLabel = function getValueAndLabel(opt, itemStructure) {
30
29
  * @param {Object} itemStructure The structure of the item.
31
30
  * @returns An array of options.
32
31
  */
33
- var refDataToOptions = function refDataToOptions(refDataItems, itemStructure) {
32
+ const refDataToOptions = (refDataItems, itemStructure) => {
34
33
  if (Array.isArray(refDataItems)) {
35
- return refDataItems.map(function (opt) {
34
+ return refDataItems.map(opt => {
36
35
  if (typeof opt === 'string') {
37
36
  return opt;
38
37
  }
@@ -1,20 +1,20 @@
1
1
  "use strict";
2
2
 
3
3
  var _refDataToOptions = _interopRequireDefault(require("./refDataToOptions"));
4
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
4
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
5
5
  // Local imports
6
6
 
7
- describe('utils', function () {
8
- describe('Data', function () {
9
- describe('refDataToOptions', function () {
10
- it('can handle a null refData', function () {
7
+ describe('utils', () => {
8
+ describe('Data', () => {
9
+ describe('refDataToOptions', () => {
10
+ it('can handle a null refData', () => {
11
11
  expect((0, _refDataToOptions.default)(null)).toEqual([]);
12
12
  });
13
- it('can handle an undefined refData', function () {
13
+ it('can handle an undefined refData', () => {
14
14
  expect((0, _refDataToOptions.default)(undefined)).toEqual([]);
15
15
  });
16
- it('can handle genuine refData', function () {
17
- var REF_DATA = [{
16
+ it('can handle genuine refData', () => {
17
+ const REF_DATA = [{
18
18
  id: 'a',
19
19
  name: 'Alpha'
20
20
  }, {
@@ -41,8 +41,8 @@ describe('utils', function () {
41
41
  label: 'Charlie'
42
42
  }]);
43
43
  });
44
- it('can handle refData that is already in a usable options format', function () {
45
- var REF_DATA = [{
44
+ it('can handle refData that is already in a usable options format', () => {
45
+ const REF_DATA = [{
46
46
  value: 'a',
47
47
  label: 'Alpha'
48
48
  }, {
@@ -63,8 +63,8 @@ describe('utils', function () {
63
63
  label: 'Charlie'
64
64
  }]);
65
65
  });
66
- it('can handle refData that is in a mixed format', function () {
67
- var REF_DATA = [{
66
+ it('can handle refData that is in a mixed format', () => {
67
+ const REF_DATA = [{
68
68
  id: 'a',
69
69
  name: 'Alpha',
70
70
  type: 'Delta'
@@ -93,8 +93,8 @@ describe('utils', function () {
93
93
  type: 'Delta'
94
94
  }]);
95
95
  });
96
- it('can handle refData that contains strings and objects', function () {
97
- var REF_DATA = [{
96
+ it('can handle refData that contains strings and objects', () => {
97
+ const REF_DATA = [{
98
98
  id: 'a',
99
99
  name: 'Alpha',
100
100
  type: 'Delta'
@@ -123,8 +123,8 @@ describe('utils', function () {
123
123
  type: 'Delta'
124
124
  }]);
125
125
  });
126
- it('can handle refData with custom value and label properties', function () {
127
- var REF_DATA = [{
126
+ it('can handle refData with custom value and label properties', () => {
127
+ const REF_DATA = [{
128
128
  id: 1,
129
129
  displayName: 'Alpha'
130
130
  }, {
@@ -134,7 +134,7 @@ describe('utils', function () {
134
134
  id: 3,
135
135
  displayName: 'Charlie'
136
136
  }];
137
- var ITEM_STRUCTURE = {
137
+ const ITEM_STRUCTURE = {
138
138
  value: 'id',
139
139
  label: 'displayName'
140
140
  };
@@ -155,8 +155,8 @@ describe('utils', function () {
155
155
  label: 'Charlie'
156
156
  }]);
157
157
  });
158
- it('can handle refData with missing custom value and label properties', function () {
159
- var REF_DATA = [{
158
+ it('can handle refData with missing custom value and label properties', () => {
159
+ const REF_DATA = [{
160
160
  id: 1,
161
161
  name: 'Alpha'
162
162
  }, {
@@ -168,7 +168,7 @@ describe('utils', function () {
168
168
  objId: 'chaz',
169
169
  name: 'Charlie'
170
170
  }];
171
- var ITEM_STRUCTURE = {
171
+ const ITEM_STRUCTURE = {
172
172
  value: 'objId',
173
173
  label: 'displayName'
174
174
  };
@@ -4,17 +4,16 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
8
- var setDataItem = function setDataItem(data, fieldId, value) {
9
- var handleArrayIndices = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
7
+ const setDataItem = function (data, fieldId, value) {
8
+ let handleArrayIndices = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
10
9
  if (fieldId && data) {
11
- var parts = handleArrayIndices ?
10
+ const parts = handleArrayIndices ?
12
11
  // Replace all occurrences of '[' with '.' and ']' with ''.
13
12
  fieldId.replace(/\[/g, '.').replace(/\]/g, '').split('.') : fieldId.split('.');
14
- var leaf = parts.pop();
15
- var node = data;
16
- parts.forEach(function (part) {
17
- if (!node[part] || _typeof(node[part]) !== 'object') {
13
+ const leaf = parts.pop();
14
+ let node = data;
15
+ parts.forEach(part => {
16
+ if (!node[part] || typeof node[part] !== 'object') {
18
17
  node[part] = {};
19
18
  }
20
19
  node = node[part];
@@ -1,49 +1,49 @@
1
1
  "use strict";
2
2
 
3
3
  var _setDataItem = _interopRequireDefault(require("./setDataItem"));
4
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5
- describe('utils.Data.setDataItem', function () {
6
- it('should handle a null data object', function () {
7
- var DATA = null;
8
- var FIELD_ID = 'alpha.bravo.charlie';
9
- var VALUE = 'delta';
4
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
5
+ describe('utils.Data.setDataItem', () => {
6
+ it('should handle a null data object', () => {
7
+ const DATA = null;
8
+ const FIELD_ID = 'alpha.bravo.charlie';
9
+ const VALUE = 'delta';
10
10
  expect((0, _setDataItem.default)(DATA, FIELD_ID, VALUE)).toBeNull();
11
11
  expect(DATA).toBeNull();
12
12
  });
13
- it('should handle an undefined data object', function () {
14
- var DATA = undefined;
15
- var FIELD_ID = 'alpha.bravo.charlie';
16
- var VALUE = 'delta';
13
+ it('should handle an undefined data object', () => {
14
+ const DATA = undefined;
15
+ const FIELD_ID = 'alpha.bravo.charlie';
16
+ const VALUE = 'delta';
17
17
  expect((0, _setDataItem.default)(DATA, FIELD_ID, VALUE)).toBeUndefined();
18
18
  expect(DATA).toBeUndefined();
19
19
  });
20
- it('should handle a null fieldId', function () {
21
- var DATA = {};
22
- var FIELD_ID = null;
23
- var VALUE = 'delta';
20
+ it('should handle a null fieldId', () => {
21
+ const DATA = {};
22
+ const FIELD_ID = null;
23
+ const VALUE = 'delta';
24
24
  expect((0, _setDataItem.default)(DATA, FIELD_ID, VALUE)).toMatchObject({});
25
25
  expect(DATA).toMatchObject({});
26
26
  });
27
- it('should handle an undefined fieldId', function () {
28
- var DATA = {};
29
- var FIELD_ID = undefined;
30
- var VALUE = 'delta';
27
+ it('should handle an undefined fieldId', () => {
28
+ const DATA = {};
29
+ const FIELD_ID = undefined;
30
+ const VALUE = 'delta';
31
31
  expect((0, _setDataItem.default)(DATA, FIELD_ID, VALUE)).toMatchObject({});
32
32
  expect(DATA).toMatchObject({});
33
33
  });
34
- it('should handle an empty fieldId', function () {
35
- var DATA = {};
36
- var FIELD_ID = '';
37
- var VALUE = 'delta';
34
+ it('should handle an empty fieldId', () => {
35
+ const DATA = {};
36
+ const FIELD_ID = '';
37
+ const VALUE = 'delta';
38
38
  expect((0, _setDataItem.default)(DATA, FIELD_ID, VALUE)).toMatchObject({});
39
39
  expect(DATA).toMatchObject({});
40
40
  });
41
- it('should appropriately set a nested value', function () {
42
- var DATA = {
41
+ it('should appropriately set a nested value', () => {
42
+ const DATA = {
43
43
  alpha: {}
44
44
  };
45
- var FIELD_ID = 'alpha.bravo.charlie';
46
- var VALUE = 'delta';
45
+ const FIELD_ID = 'alpha.bravo.charlie';
46
+ const VALUE = 'delta';
47
47
  expect((0, _setDataItem.default)(DATA, FIELD_ID, VALUE)).toMatchObject({
48
48
  alpha: {
49
49
  bravo: {
@@ -59,16 +59,16 @@ describe('utils.Data.setDataItem', function () {
59
59
  }
60
60
  });
61
61
  });
62
- it('should appropriately change a nested value', function () {
63
- var DATA = {
62
+ it('should appropriately change a nested value', () => {
63
+ const DATA = {
64
64
  alpha: {
65
65
  bravo: {
66
66
  charlie: 'echo'
67
67
  }
68
68
  }
69
69
  };
70
- var FIELD_ID = 'alpha.bravo.charlie';
71
- var VALUE = 'delta';
70
+ const FIELD_ID = 'alpha.bravo.charlie';
71
+ const VALUE = 'delta';
72
72
  expect((0, _setDataItem.default)(DATA, FIELD_ID, VALUE)).toMatchObject({
73
73
  alpha: {
74
74
  bravo: {
@@ -84,14 +84,14 @@ describe('utils.Data.setDataItem', function () {
84
84
  }
85
85
  });
86
86
  });
87
- it('should handle a parent node that is not an object and convert it appropriately', function () {
88
- var DATA = {
87
+ it('should handle a parent node that is not an object and convert it appropriately', () => {
88
+ const DATA = {
89
89
  alpha: {
90
90
  bravo: 'echo'
91
91
  }
92
92
  };
93
- var FIELD_ID = 'alpha.bravo.charlie';
94
- var VALUE = 'delta';
93
+ const FIELD_ID = 'alpha.bravo.charlie';
94
+ const VALUE = 'delta';
95
95
  expect((0, _setDataItem.default)(DATA, FIELD_ID, VALUE)).toMatchObject({
96
96
  alpha: {
97
97
  bravo: {
@@ -107,16 +107,16 @@ describe('utils.Data.setDataItem', function () {
107
107
  }
108
108
  });
109
109
  });
110
- it('should handle array indices in fieldPath if handleArrayIndices is true', function () {
111
- var DATA = {
110
+ it('should handle array indices in fieldPath if handleArrayIndices is true', () => {
111
+ const DATA = {
112
112
  alpha: {
113
113
  bravo: [{
114
114
  charlie: '123'
115
115
  }]
116
116
  }
117
117
  };
118
- var FIELD_ID = 'alpha.bravo[0].charlie';
119
- var VALUE = '456';
118
+ const FIELD_ID = 'alpha.bravo[0].charlie';
119
+ const VALUE = '456';
120
120
  expect((0, _setDataItem.default)(DATA, FIELD_ID, VALUE, true)).toMatchObject({
121
121
  alpha: {
122
122
  bravo: [{
@@ -5,31 +5,24 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var _getSourceData = _interopRequireDefault(require("./getSourceData"));
8
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
8
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
9
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
11
10
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
12
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
13
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
14
- function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } // Local imports
15
- var setupComponentSourceData = function setupComponentSourceData(component, data) {
16
- var componentSourceData = data;
11
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
12
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
13
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } // Local imports
14
+ const setupComponentSourceData = (component, data) => {
15
+ const componentSourceData = data;
17
16
  if (component.source) {
18
17
  componentSourceData[component.fieldId] = (0, _getSourceData.default)(componentSourceData, component.source.field);
19
18
  }
20
19
  };
21
- var setupSourceDataForComponents = function setupSourceDataForComponents(components, data) {
22
- components.forEach(function (component) {
23
- return setupComponentSourceData(component, data);
24
- });
20
+ const setupSourceDataForComponents = (components, data) => {
21
+ components.forEach(component => setupComponentSourceData(component, data));
25
22
  };
26
- var setupPageSourceData = function setupPageSourceData(pages, data) {
27
- pages.forEach(function (page) {
28
- page.components.filter(function (c) {
29
- return !c.use;
30
- }).forEach(function (component) {
31
- return setupComponentSourceData(component, data);
32
- });
23
+ const setupPageSourceData = (pages, data) => {
24
+ pages.forEach(page => {
25
+ page.components.filter(c => !c.use).forEach(component => setupComponentSourceData(component, data));
33
26
  });
34
27
  };
35
28
 
@@ -46,8 +39,8 @@ var setupPageSourceData = function setupPageSourceData(pages, data) {
46
39
  * @param {object} baseData
47
40
  * @returns
48
41
  */
49
- var setupFormData = function setupFormData(pages, components, baseData) {
50
- var data = _objectSpread({}, baseData);
42
+ const setupFormData = (pages, components, baseData) => {
43
+ const data = _objectSpread({}, baseData);
51
44
  setupSourceDataForComponents(components, data);
52
45
  setupPageSourceData(pages, data);
53
46
  return data;
@@ -3,64 +3,63 @@
3
3
  var _setupFormData = _interopRequireDefault(require("./setupFormData"));
4
4
  var _userProfile = _interopRequireDefault(require("../../json/userProfile.json"));
5
5
  var _userProfileData = _interopRequireDefault(require("../../json/userProfile.data.json"));
6
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
7
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
6
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
8
7
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
9
8
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
10
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
11
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
12
- function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } /* eslint-disable import/no-named-default */ // Local imports
13
- describe('utils', function () {
14
- describe('Data', function () {
15
- describe('setupFormData', function () {
16
- it('should populate a simple form', function () {
17
- var PAGES = [];
18
- var COMPONENTS = [{
9
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
10
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
11
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /* eslint-disable import/no-named-default */ // Local imports
12
+ describe('utils', () => {
13
+ describe('Data', () => {
14
+ describe('setupFormData', () => {
15
+ it('should populate a simple form', () => {
16
+ const PAGES = [];
17
+ const COMPONENTS = [{
19
18
  fieldId: 'testField',
20
19
  source: {
21
20
  field: 'sourceField'
22
21
  }
23
22
  }];
24
- var DATA = {
23
+ const DATA = {
25
24
  sourceField: 'VALUE'
26
25
  };
27
- var RESULT = (0, _setupFormData.default)(PAGES, COMPONENTS, DATA);
26
+ const RESULT = (0, _setupFormData.default)(PAGES, COMPONENTS, DATA);
28
27
  expect(RESULT).toEqual({
29
28
  sourceField: 'VALUE',
30
29
  testField: 'VALUE'
31
30
  });
32
31
  });
33
- it('should handle a missing source field', function () {
34
- var PAGES = [];
35
- var COMPONENTS = [{
32
+ it('should handle a missing source field', () => {
33
+ const PAGES = [];
34
+ const COMPONENTS = [{
36
35
  fieldId: 'testField',
37
36
  source: {
38
37
  field: 'otherSourceField'
39
38
  }
40
39
  }];
41
- var DATA = {
40
+ const DATA = {
42
41
  sourceField: 'VALUE'
43
42
  };
44
- var RESULT = (0, _setupFormData.default)(PAGES, COMPONENTS, DATA);
43
+ const RESULT = (0, _setupFormData.default)(PAGES, COMPONENTS, DATA);
45
44
  expect(RESULT).toEqual({
46
45
  sourceField: 'VALUE',
47
46
  testField: undefined
48
47
  });
49
48
  });
50
- it('should handle a nested source field', function () {
51
- var PAGES = [];
52
- var COMPONENTS = [{
49
+ it('should handle a nested source field', () => {
50
+ const PAGES = [];
51
+ const COMPONENTS = [{
53
52
  fieldId: 'testField',
54
53
  source: {
55
54
  field: 'nested.sourceField'
56
55
  }
57
56
  }];
58
- var DATA = {
57
+ const DATA = {
59
58
  nested: {
60
59
  sourceField: 'VALUE'
61
60
  }
62
61
  };
63
- var RESULT = (0, _setupFormData.default)(PAGES, COMPONENTS, DATA);
62
+ const RESULT = (0, _setupFormData.default)(PAGES, COMPONENTS, DATA);
64
63
  expect(RESULT).toEqual({
65
64
  nested: {
66
65
  sourceField: 'VALUE'
@@ -68,20 +67,20 @@ describe('utils', function () {
68
67
  testField: 'VALUE'
69
68
  });
70
69
  });
71
- it('should handle a missing nested source field', function () {
72
- var PAGES = [];
73
- var COMPONENTS = [{
70
+ it('should handle a missing nested source field', () => {
71
+ const PAGES = [];
72
+ const COMPONENTS = [{
74
73
  fieldId: 'testField',
75
74
  source: {
76
75
  field: 'nested.otherSourceField'
77
76
  }
78
77
  }];
79
- var DATA = {
78
+ const DATA = {
80
79
  nested: {
81
80
  sourceField: 'VALUE'
82
81
  }
83
82
  };
84
- var RESULT = (0, _setupFormData.default)(PAGES, COMPONENTS, DATA);
83
+ const RESULT = (0, _setupFormData.default)(PAGES, COMPONENTS, DATA);
85
84
  expect(RESULT).toEqual({
86
85
  nested: {
87
86
  sourceField: 'VALUE'
@@ -89,20 +88,20 @@ describe('utils', function () {
89
88
  testField: undefined
90
89
  });
91
90
  });
92
- it('should handle an entirely missing nested source field', function () {
93
- var PAGES = [];
94
- var COMPONENTS = [{
91
+ it('should handle an entirely missing nested source field', () => {
92
+ const PAGES = [];
93
+ const COMPONENTS = [{
95
94
  fieldId: 'testField',
96
95
  source: {
97
96
  field: 'otherNested.sourceField'
98
97
  }
99
98
  }];
100
- var DATA = {
99
+ const DATA = {
101
100
  nested: {
102
101
  sourceField: 'VALUE'
103
102
  }
104
103
  };
105
- var RESULT = (0, _setupFormData.default)(PAGES, COMPONENTS, DATA);
104
+ const RESULT = (0, _setupFormData.default)(PAGES, COMPONENTS, DATA);
106
105
  expect(RESULT).toEqual({
107
106
  nested: {
108
107
  sourceField: 'VALUE'
@@ -110,8 +109,8 @@ describe('utils', function () {
110
109
  testField: undefined
111
110
  });
112
111
  });
113
- it('should handle sources within pages', function () {
114
- var PAGES = [{
112
+ it('should handle sources within pages', () => {
113
+ const PAGES = [{
115
114
  components: [{
116
115
  fieldId: 'pageField',
117
116
  source: {
@@ -126,20 +125,20 @@ describe('utils', function () {
126
125
  }
127
126
  }]
128
127
  }];
129
- var COMPONENTS = [{
128
+ const COMPONENTS = [{
130
129
  fieldId: 'testField',
131
130
  source: {
132
131
  field: 'nested.sourceField'
133
132
  }
134
133
  }];
135
- var DATA = {
134
+ const DATA = {
136
135
  nested: {
137
136
  sourceField: 'VALUE'
138
137
  },
139
138
  pageSourceField: 'PAGE 1',
140
139
  secondPageSourceField: 'Bob'
141
140
  };
142
- var RESULT = (0, _setupFormData.default)(PAGES, COMPONENTS, DATA);
141
+ const RESULT = (0, _setupFormData.default)(PAGES, COMPONENTS, DATA);
143
142
  expect(RESULT).toEqual({
144
143
  nested: {
145
144
  sourceField: 'VALUE'
@@ -151,8 +150,8 @@ describe('utils', function () {
151
150
  secondPageField: 'Bob'
152
151
  });
153
152
  });
154
- it('should ignore sources within pages that reference a top-level component', function () {
155
- var PAGES = [{
153
+ it('should ignore sources within pages that reference a top-level component', () => {
154
+ const PAGES = [{
156
155
  components: [{
157
156
  fieldId: 'pageField',
158
157
  use: 'testField',
@@ -168,20 +167,20 @@ describe('utils', function () {
168
167
  }
169
168
  }]
170
169
  }];
171
- var COMPONENTS = [{
170
+ const COMPONENTS = [{
172
171
  fieldId: 'testField',
173
172
  source: {
174
173
  field: 'nested.sourceField'
175
174
  }
176
175
  }];
177
- var DATA = {
176
+ const DATA = {
178
177
  nested: {
179
178
  sourceField: 'VALUE'
180
179
  },
181
180
  pageSourceField: 'PAGE 1',
182
181
  secondPageSourceField: 'Bob'
183
182
  };
184
- var RESULT = (0, _setupFormData.default)(PAGES, COMPONENTS, DATA);
183
+ const RESULT = (0, _setupFormData.default)(PAGES, COMPONENTS, DATA);
185
184
  expect(RESULT).toEqual({
186
185
  nested: {
187
186
  sourceField: 'VALUE'
@@ -192,10 +191,12 @@ describe('utils', function () {
192
191
  secondPageField: 'Bob'
193
192
  });
194
193
  });
195
- it('should populate data for the user profile configuration and source', function () {
196
- var pages = _userProfile.default.pages,
197
- components = _userProfile.default.components;
198
- var RESULT = (0, _setupFormData.default)(pages, components, _userProfileData.default);
194
+ it('should populate data for the user profile configuration and source', () => {
195
+ const {
196
+ pages,
197
+ components
198
+ } = _userProfile.default;
199
+ const RESULT = (0, _setupFormData.default)(pages, components, _userProfileData.default);
199
200
 
200
201
  // It should produce an aggregation of the original source data (USER_PROFILE_DATA)
201
202
  // and data calculated for the fields, based on that source data.
@@ -6,28 +6,19 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.default = void 0;
7
7
  var _copReactComponents = require("@ukhomeoffice/cop-react-components");
8
8
  var _models = require("../../models");
9
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
10
9
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
11
10
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
12
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
13
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
14
- function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } /* eslint-disable no-use-before-define */ // Global imports
15
- var setupRefDataForContainer = function setupRefDataForContainer(container, data) {
16
- return _objectSpread(_objectSpread({}, container), {}, {
17
- components: setupRefDataUrlForComponents(container.components, data)
18
- });
19
- };
20
- var setupRefDataForCollection = function setupRefDataForCollection(collection, data) {
21
- return _objectSpread(_objectSpread({}, collection), {}, {
22
- item: setupRefDataUrlForComponents(collection.item, data)
23
- });
24
- };
25
- var setupRefDataUrlForComponents = function setupRefDataUrlForComponents(components, data) {
26
- return components.map(function (component) {
27
- return setupRefDataUrlForComponent(component, data);
28
- });
29
- };
30
- var setupRefDataUrlForComponent = function setupRefDataUrlForComponent(component, data) {
11
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
12
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
13
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /* eslint-disable no-use-before-define */ // Global imports
14
+ const setupRefDataForContainer = (container, data) => _objectSpread(_objectSpread({}, container), {}, {
15
+ components: setupRefDataUrlForComponents(container.components, data)
16
+ });
17
+ const setupRefDataForCollection = (collection, data) => _objectSpread(_objectSpread({}, collection), {}, {
18
+ item: setupRefDataUrlForComponents(collection.item, data)
19
+ });
20
+ const setupRefDataUrlForComponents = (components, data) => components.map(component => setupRefDataUrlForComponent(component, data));
21
+ const setupRefDataUrlForComponent = (component, data) => {
31
22
  if (component) {
32
23
  var _component$data, _component$data2;
33
24
  if (component.type === _models.ComponentTypes.CONTAINER) {