@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
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var _getPageId = _interopRequireDefault(require("./getPageId"));
8
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
8
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
9
9
  /**
10
10
  * Gets the pageId from the invoked CYA action and calls onChange if it is
11
11
  * different to the currentPageId.
@@ -13,8 +13,8 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
13
13
  * @param {string} currentPageId The current pageId.
14
14
  * @param {Function} onChange The handler to call if the pageId is different to the currentPageId.
15
15
  */
16
- var cyaAction = function cyaAction(page, currentPageId, onChange) {
17
- var pageId = (0, _getPageId.default)(page.action, page.pageId);
16
+ const cyaAction = (page, currentPageId, onChange) => {
17
+ const pageId = (0, _getPageId.default)(page.action, page.pageId);
18
18
  if (pageId !== currentPageId) {
19
19
  onChange(pageId);
20
20
  }
@@ -10,7 +10,5 @@ exports.default = void 0;
10
10
  * @param {string} pageId The id of the page on which the action was invoked.
11
11
  * @returns A page id.
12
12
  */
13
- var getPageId = function getPageId(action, pageId) {
14
- return (action === null || action === void 0 ? void 0 : action.page) || pageId;
15
- };
13
+ const getPageId = (action, pageId) => (action === null || action === void 0 ? void 0 : action.page) || pageId;
16
14
  var _default = exports.default = getPageId;
@@ -1,29 +1,29 @@
1
1
  "use strict";
2
2
 
3
3
  var _getPageId = _interopRequireDefault(require("./getPageId"));
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('components', function () {
8
- describe('FormRenderer', function () {
9
- describe('handlers', function () {
10
- describe('getPageId', function () {
11
- it('should return the pageId when the action is null', function () {
12
- var PAGE_ID = 'alpha';
13
- var ACTION = null;
7
+ describe('components', () => {
8
+ describe('FormRenderer', () => {
9
+ describe('handlers', () => {
10
+ describe('getPageId', () => {
11
+ it('should return the pageId when the action is null', () => {
12
+ const PAGE_ID = 'alpha';
13
+ const ACTION = null;
14
14
  expect((0, _getPageId.default)(ACTION, PAGE_ID)).toEqual(PAGE_ID);
15
15
  });
16
- it('should return the pageId when the action contains no page', function () {
17
- var PAGE_ID = 'alpha';
18
- var ACTION = {
16
+ it('should return the pageId when the action contains no page', () => {
17
+ const PAGE_ID = 'alpha';
18
+ const ACTION = {
19
19
  id: 'bravo'
20
20
  };
21
21
  expect((0, _getPageId.default)(ACTION, PAGE_ID)).toEqual(PAGE_ID);
22
22
  });
23
- it('should return the page when provided', function () {
24
- var NAVIGATE_TO = 'delta';
25
- var PAGE_ID = 'alpha';
26
- var ACTION = {
23
+ it('should return the page when provided', () => {
24
+ const NAVIGATE_TO = 'delta';
25
+ const PAGE_ID = 'alpha';
26
+ const ACTION = {
27
27
  page: NAVIGATE_TO
28
28
  };
29
29
  expect((0, _getPageId.default)(ACTION, PAGE_ID)).toEqual(NAVIGATE_TO);
@@ -1,33 +1,33 @@
1
1
  "use strict";
2
2
 
3
3
  var _ = _interopRequireDefault(require("."));
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('components', function () {
8
- describe('FormRenderer', function () {
9
- describe('handlers', function () {
10
- describe('cyaAction', function () {
11
- it('should not call the onChange method when the page is unchanged', function () {
12
- var CURRENT_PAGE_ID = 'alpha';
13
- var PAGE = {
7
+ describe('components', () => {
8
+ describe('FormRenderer', () => {
9
+ describe('handlers', () => {
10
+ describe('cyaAction', () => {
11
+ it('should not call the onChange method when the page is unchanged', () => {
12
+ const CURRENT_PAGE_ID = 'alpha';
13
+ const PAGE = {
14
14
  pageId: CURRENT_PAGE_ID
15
15
  };
16
- var ON_CHANGE_CALLS = [];
17
- var ON_CHANGE = function ON_CHANGE(pageId) {
16
+ const ON_CHANGE_CALLS = [];
17
+ const ON_CHANGE = pageId => {
18
18
  ON_CHANGE_CALLS.push(pageId);
19
19
  };
20
20
  _.default.cyaAction(PAGE, CURRENT_PAGE_ID, ON_CHANGE);
21
21
  expect(ON_CHANGE_CALLS.length).toEqual(0);
22
22
  });
23
- it('should call the onChange method when the page has changed', function () {
24
- var CURRENT_PAGE_ID = 'alpha';
25
- var NEW_PAGE_ID = 'bravo';
26
- var PAGE = {
23
+ it('should call the onChange method when the page has changed', () => {
24
+ const CURRENT_PAGE_ID = 'alpha';
25
+ const NEW_PAGE_ID = 'bravo';
26
+ const PAGE = {
27
27
  pageId: NEW_PAGE_ID
28
28
  };
29
- var ON_CHANGE_CALLS = [];
30
- var ON_CHANGE = function ON_CHANGE(pageId) {
29
+ const ON_CHANGE_CALLS = [];
30
+ const ON_CHANGE = pageId => {
31
31
  ON_CHANGE_CALLS.push(pageId);
32
32
  };
33
33
  _.default.cyaAction(PAGE, CURRENT_PAGE_ID, ON_CHANGE);
@@ -35,27 +35,27 @@ describe('components', function () {
35
35
  expect(ON_CHANGE_CALLS[0]).toEqual(NEW_PAGE_ID);
36
36
  });
37
37
  });
38
- describe('navigate', function () {
39
- it('should not call the onNavigate method when the page is unchanged', function () {
40
- var CURRENT_PAGE_ID = 'alpha';
41
- var ACTION = {
38
+ describe('navigate', () => {
39
+ it('should not call the onNavigate method when the page is unchanged', () => {
40
+ const CURRENT_PAGE_ID = 'alpha';
41
+ const ACTION = {
42
42
  page: CURRENT_PAGE_ID
43
43
  };
44
- var ON_NAVIGATE_CALLS = [];
45
- var ON_NAVIGATE = function ON_NAVIGATE(pageId) {
44
+ const ON_NAVIGATE_CALLS = [];
45
+ const ON_NAVIGATE = pageId => {
46
46
  ON_NAVIGATE_CALLS.push(pageId);
47
47
  };
48
48
  _.default.navigate(ACTION, CURRENT_PAGE_ID, ON_NAVIGATE);
49
49
  expect(ON_NAVIGATE_CALLS.length).toEqual(0);
50
50
  });
51
- it('should call the onNavigate method when the page has changed', function () {
52
- var CURRENT_PAGE_ID = 'alpha';
53
- var NEW_PAGE_ID = 'bravo';
54
- var ACTION = {
51
+ it('should call the onNavigate method when the page has changed', () => {
52
+ const CURRENT_PAGE_ID = 'alpha';
53
+ const NEW_PAGE_ID = 'bravo';
54
+ const ACTION = {
55
55
  page: NEW_PAGE_ID
56
56
  };
57
- var ON_NAVIGATE_CALLS = [];
58
- var ON_NAVIGATE = function ON_NAVIGATE(pageId) {
57
+ const ON_NAVIGATE_CALLS = [];
58
+ const ON_NAVIGATE = pageId => {
59
59
  ON_NAVIGATE_CALLS.push(pageId);
60
60
  };
61
61
  _.default.navigate(ACTION, CURRENT_PAGE_ID, ON_NAVIGATE);
@@ -63,13 +63,13 @@ describe('components', function () {
63
63
  expect(ON_NAVIGATE_CALLS[0]).toEqual(NEW_PAGE_ID);
64
64
  });
65
65
  });
66
- describe('submissionError', function () {
67
- it('should call the onError method with the same errors', function () {
68
- var ON_ERROR_CALLS = [];
69
- var ON_ERROR = function ON_ERROR(errors) {
66
+ describe('submissionError', () => {
67
+ it('should call the onError method with the same errors', () => {
68
+ const ON_ERROR_CALLS = [];
69
+ const ON_ERROR = errors => {
70
70
  ON_ERROR_CALLS.push(errors);
71
71
  };
72
- var ERRORS = ['alpha', 'bravo', 'charlie'];
72
+ const ERRORS = ['alpha', 'bravo', 'charlie'];
73
73
  _.default.submissionError(ERRORS, ON_ERROR);
74
74
  expect(ON_ERROR_CALLS.length).toEqual(1);
75
75
  expect(ON_ERROR_CALLS[0]).toEqual(ERRORS);
@@ -7,8 +7,8 @@ exports.default = void 0;
7
7
  var _cyaAction = _interopRequireDefault(require("./cyaAction"));
8
8
  var _navigate = _interopRequireDefault(require("./navigate"));
9
9
  var _submissionError = _interopRequireDefault(require("./submissionError"));
10
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
- var handlers = {
10
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
11
+ const handlers = {
12
12
  cyaAction: _cyaAction.default,
13
13
  navigate: _navigate.default,
14
14
  submissionError: _submissionError.default
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var _getPageId = _interopRequireDefault(require("./getPageId"));
8
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
8
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
9
9
  /**
10
10
  * Gets the pageId from the invoked page action and calls onNavigate if it is
11
11
  * different to the currentPageId.
@@ -14,9 +14,9 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
14
14
  * @param {Function} onNavigate The handler to call if the pageId is different to the currentPageId.
15
15
  * @param {object|undefined} state State to pass to the handler on change
16
16
  */
17
- var navigate = function navigate(action, currentPageId, onNavigate) {
18
- var state = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : undefined;
19
- var pageId = (0, _getPageId.default)(action, currentPageId);
17
+ const navigate = function (action, currentPageId, onNavigate) {
18
+ let state = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : undefined;
19
+ const pageId = (0, _getPageId.default)(action, currentPageId);
20
20
  if (pageId !== currentPageId) {
21
21
  onNavigate(pageId, state);
22
22
  }
@@ -9,7 +9,7 @@ exports.default = void 0;
9
9
  * @param {Array} errors The errors returned by the backend when submitting.
10
10
  * @param {Function} onError The handler to call with the formatted errors.
11
11
  */
12
- var submissionError = function submissionError(errors, onError) {
12
+ const submissionError = (errors, onError) => {
13
13
  // For now, simply pass them straight through as we don't yet know
14
14
  // what the errors will look like.
15
15
  onError(errors);
@@ -14,7 +14,7 @@ exports.default = void 0;
14
14
  * @param {Array} errors An array of existing errors.
15
15
  * @returns A boolean where `true` means the action can proceed and `false` means it cannot.
16
16
  */
17
- var canActionProceed = function canActionProceed(action, page, pageValidator, errors) {
17
+ const canActionProceed = (action, page, pageValidator, errors) => {
18
18
  if (action.validate) {
19
19
  if (action.checkPreexistingErrors && errors.length !== 0) {
20
20
  return false;
@@ -2,21 +2,21 @@
2
2
 
3
3
  var _Validate = _interopRequireDefault(require("../../../utils/Validate"));
4
4
  var _canActionProceed = _interopRequireDefault(require("./canActionProceed"));
5
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
6
6
  // Local imports
7
7
 
8
- describe('components.FormRenderer.helpers.canActionProceed', function () {
9
- it('should return true when the action does not require validation', function () {
10
- var ACTION = {
8
+ describe('components.FormRenderer.helpers.canActionProceed', () => {
9
+ it('should return true when the action does not require validation', () => {
10
+ const ACTION = {
11
11
  validate: false
12
12
  };
13
13
  expect((0, _canActionProceed.default)(ACTION, {}, _Validate.default.page)).toBeTruthy();
14
14
  });
15
- it('should return true when the page is valid', function () {
16
- var ACTION = {
15
+ it('should return true when the page is valid', () => {
16
+ const ACTION = {
17
17
  validate: true
18
18
  };
19
- var PAGE = {
19
+ const PAGE = {
20
20
  components: [{
21
21
  id: 'a',
22
22
  fieldId: 'a',
@@ -29,11 +29,11 @@ describe('components.FormRenderer.helpers.canActionProceed', function () {
29
29
  };
30
30
  expect((0, _canActionProceed.default)(ACTION, PAGE, _Validate.default.page, [])).toBeTruthy();
31
31
  });
32
- it('should return false when the page is invalid', function () {
33
- var ACTION = {
32
+ it('should return false when the page is invalid', () => {
33
+ const ACTION = {
34
34
  validate: true
35
35
  };
36
- var PAGE = {
36
+ const PAGE = {
37
37
  components: [{
38
38
  id: 'a',
39
39
  fieldId: 'a',
@@ -44,12 +44,12 @@ describe('components.FormRenderer.helpers.canActionProceed', function () {
44
44
  };
45
45
  expect((0, _canActionProceed.default)(ACTION, PAGE, _Validate.default.page, [])).toBeFalsy();
46
46
  });
47
- it('should return false when the action has checkPreexistingErrors and errors is not empty', function () {
48
- var ACTION = {
47
+ it('should return false when the action has checkPreexistingErrors and errors is not empty', () => {
48
+ const ACTION = {
49
49
  validate: true,
50
50
  checkPreexistingErrors: true
51
51
  };
52
- var PAGE = {
52
+ const PAGE = {
53
53
  components: [{
54
54
  id: 'a',
55
55
  fieldId: 'a',
@@ -62,12 +62,12 @@ describe('components.FormRenderer.helpers.canActionProceed', function () {
62
62
  };
63
63
  expect((0, _canActionProceed.default)(ACTION, PAGE, _Validate.default.page, ['anError'])).toBeFalsy();
64
64
  });
65
- it('should return true when the action has checkPreexistingErrors and errors is empty', function () {
66
- var ACTION = {
65
+ it('should return true when the action has checkPreexistingErrors and errors is empty', () => {
66
+ const ACTION = {
67
67
  validate: true,
68
68
  checkPreexistingErrors: true
69
69
  };
70
- var PAGE = {
70
+ const PAGE = {
71
71
  components: [{
72
72
  id: 'a',
73
73
  fieldId: 'a',
@@ -12,7 +12,5 @@ exports.default = void 0;
12
12
  * @param {Function} pagesValidator A function to validate the page.
13
13
  * @returns A boolean where `true` means the CYA can submit and `false` means it cannot.
14
14
  */
15
- var canCYASubmit = function canCYASubmit(pages, pagesValidator) {
16
- return pagesValidator(pages).length === 0;
17
- };
15
+ const canCYASubmit = (pages, pagesValidator) => pagesValidator(pages).length === 0;
18
16
  var _default = exports.default = canCYASubmit;
@@ -2,35 +2,31 @@
2
2
 
3
3
  var _Validate = _interopRequireDefault(require("../../../utils/Validate"));
4
4
  var _canCYASubmit = _interopRequireDefault(require("./canCYASubmit"));
5
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
6
6
  // Local imports
7
7
 
8
- describe('components.FormRenderer.helpers.canCYASubmit', function () {
9
- var ALPHA = {
8
+ describe('components.FormRenderer.helpers.canCYASubmit', () => {
9
+ const ALPHA = {
10
10
  id: 'a',
11
11
  fieldId: 'a',
12
12
  label: 'Alpha',
13
13
  required: true
14
14
  };
15
- var CHARLIE = {
15
+ const CHARLIE = {
16
16
  id: 'c',
17
17
  fieldId: 'c',
18
18
  label: 'Charlie',
19
19
  required: true
20
20
  };
21
- var validatePages = function validatePages(pages) {
22
- return pages.flatMap(function (page) {
23
- return _Validate.default.page(page);
24
- });
25
- };
26
- it('should return true when all pages are valid', function () {
27
- var PAGE_1 = {
21
+ const validatePages = pages => pages.flatMap(page => _Validate.default.page(page));
22
+ it('should return true when all pages are valid', () => {
23
+ const PAGE_1 = {
28
24
  components: [ALPHA],
29
25
  formData: {
30
26
  a: 'Bravo'
31
27
  }
32
28
  };
33
- var PAGE_2 = {
29
+ const PAGE_2 = {
34
30
  components: [CHARLIE],
35
31
  formData: {
36
32
  c: 'Delta'
@@ -38,12 +34,12 @@ describe('components.FormRenderer.helpers.canCYASubmit', function () {
38
34
  };
39
35
  expect((0, _canCYASubmit.default)([PAGE_1, PAGE_2], validatePages)).toBeTruthy();
40
36
  });
41
- it('should return false when the first page is invalid', function () {
42
- var PAGE_1 = {
37
+ it('should return false when the first page is invalid', () => {
38
+ const PAGE_1 = {
43
39
  components: [ALPHA],
44
40
  formData: {}
45
41
  };
46
- var PAGE_2 = {
42
+ const PAGE_2 = {
47
43
  components: [CHARLIE],
48
44
  formData: {
49
45
  c: 'Delta'
@@ -51,25 +47,25 @@ describe('components.FormRenderer.helpers.canCYASubmit', function () {
51
47
  };
52
48
  expect((0, _canCYASubmit.default)([PAGE_1, PAGE_2], validatePages)).toBeFalsy();
53
49
  });
54
- it('should return false when the second page is invalid', function () {
55
- var PAGE_1 = {
50
+ it('should return false when the second page is invalid', () => {
51
+ const PAGE_1 = {
56
52
  components: [ALPHA],
57
53
  formData: {
58
54
  a: 'Bravo'
59
55
  }
60
56
  };
61
- var PAGE_2 = {
57
+ const PAGE_2 = {
62
58
  components: [CHARLIE],
63
59
  formData: {}
64
60
  };
65
61
  expect((0, _canCYASubmit.default)([PAGE_1, PAGE_2], validatePages)).toBeFalsy();
66
62
  });
67
- it('should return false when the both pages are invalid', function () {
68
- var PAGE_1 = {
63
+ it('should return false when the both pages are invalid', () => {
64
+ const PAGE_1 = {
69
65
  components: [ALPHA],
70
66
  formData: {}
71
67
  };
72
- var PAGE_2 = {
68
+ const PAGE_2 = {
73
69
  components: [CHARLIE],
74
70
  formData: {}
75
71
  };
@@ -8,55 +8,52 @@ var _optionIsSelected = _interopRequireDefault(require("../../../utils/Component
8
8
  var _getCollectionPageActiveId = _interopRequireDefault(require("../../../utils/CollectionPage/getCollectionPageActiveId"));
9
9
  var _getCollectionPageData = _interopRequireDefault(require("../../../utils/CollectionPage/getCollectionPageData"));
10
10
  var _setCollectionPageData = _interopRequireDefault(require("../../../utils/CollectionPage/setCollectionPageData"));
11
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
- 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); }
11
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
12
  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; }
14
13
  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; }
15
- 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; }
16
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
17
- 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
18
- var parentComponents = ['radios', 'checkboxes'];
19
- var getActiveIds = function getActiveIds(collectionName, formData) {
20
- var nameParts = collectionName.split('.');
21
- var result = {};
22
- nameParts.forEach(function (part) {
14
+ 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; }
15
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
16
+ 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
17
+ const parentComponents = ['radios', 'checkboxes'];
18
+ const getActiveIds = (collectionName, formData) => {
19
+ const nameParts = collectionName.split('.');
20
+ const result = {};
21
+ nameParts.forEach(part => {
23
22
  result["".concat(part, "ActiveId")] = formData["".concat(part, "ActiveId")];
24
23
  });
25
24
  return result;
26
25
  };
27
26
  function getIdsToDelete(component, selectedValue) {
28
27
  var _component$data;
29
- var idsToDelete = [];
30
- component === null || component === void 0 || (_component$data = component.data) === null || _component$data === void 0 || (_component$data = _component$data.options) === null || _component$data === void 0 || _component$data.forEach(function (option) {
28
+ const idsToDelete = [];
29
+ component === null || component === void 0 || (_component$data = component.data) === null || _component$data === void 0 || (_component$data = _component$data.options) === null || _component$data === void 0 || _component$data.forEach(option => {
31
30
  if (!(0, _optionIsSelected.default)(selectedValue, option) && option.nested) {
32
- option.nested.forEach(function (nested) {
31
+ option.nested.forEach(nested => {
33
32
  idsToDelete.push(nested.id);
34
33
  });
35
34
  }
36
35
  });
37
36
  return idsToDelete;
38
37
  }
39
- var cleanHiddenNestedData = function cleanHiddenNestedData(patch, page) {
40
- var _patch = patch;
41
- page.components.forEach(function (component) {
38
+ const cleanHiddenNestedData = (patch, page) => {
39
+ let _patch = patch;
40
+ page.components.forEach(component => {
42
41
  if (!parentComponents.includes(component.type)) {
43
42
  return;
44
43
  }
45
- var idsToDelete = getIdsToDelete(component, _patch[component.id]);
46
- idsToDelete.forEach(function (id) {
44
+ const idsToDelete = getIdsToDelete(component, _patch[component.id]);
45
+ idsToDelete.forEach(id => {
47
46
  delete _patch[id];
48
47
  });
49
48
  });
50
49
  if (page.collection) {
51
50
  _patch = _objectSpread(_objectSpread({}, getActiveIds(page.collection.name, page.formData)), _patch);
52
- var collectionData = (0, _getCollectionPageData.default)(page.collection.name, _patch);
51
+ const collectionData = (0, _getCollectionPageData.default)(page.collection.name, _patch);
53
52
  if (collectionData) {
54
- var activeId = (0, _getCollectionPageActiveId.default)(page.collection.name, _patch);
55
- var modifiedCollection = collectionData.map(function (entry) {
56
- return entry.id === activeId ? cleanHiddenNestedData(entry, _objectSpread(_objectSpread({}, page), {}, {
57
- collection: undefined
58
- })) : entry;
59
- });
53
+ const activeId = (0, _getCollectionPageActiveId.default)(page.collection.name, _patch);
54
+ const modifiedCollection = collectionData.map(entry => entry.id === activeId ? cleanHiddenNestedData(entry, _objectSpread(_objectSpread({}, page), {}, {
55
+ collection: undefined
56
+ })) : entry);
60
57
  (0, _setCollectionPageData.default)(page.collection.name, modifiedCollection, _patch);
61
58
  }
62
59
  }
@@ -1,20 +1,20 @@
1
1
  "use strict";
2
2
 
3
3
  var _cleanHiddenNestedData = _interopRequireDefault(require("./cleanHiddenNestedData"));
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('components', function () {
8
- describe('FormRenderer', function () {
9
- describe('helpers', function () {
10
- describe('cleanHiddenNestedData', function () {
11
- it('should remove data corresponding to hidden nested components in radios', function () {
12
- var patchRadios = {
7
+ describe('components', () => {
8
+ describe('FormRenderer', () => {
9
+ describe('helpers', () => {
10
+ describe('cleanHiddenNestedData', () => {
11
+ it('should remove data corresponding to hidden nested components in radios', () => {
12
+ const patchRadios = {
13
13
  parent: 'option2',
14
14
  nested1: 'should not be included',
15
15
  nested2: 'should be included'
16
16
  };
17
- var pageRadios = {
17
+ const pageRadios = {
18
18
  id: 'page',
19
19
  name: 'page',
20
20
  title: 'Page',
@@ -39,17 +39,17 @@ describe('components', function () {
39
39
  }
40
40
  }]
41
41
  };
42
- var updatedPatchRadios = (0, _cleanHiddenNestedData.default)(patchRadios, pageRadios);
42
+ const updatedPatchRadios = (0, _cleanHiddenNestedData.default)(patchRadios, pageRadios);
43
43
  expect(updatedPatchRadios.nested1).toBeFalsy();
44
44
  expect(updatedPatchRadios.nested2).toBeTruthy();
45
45
  });
46
- it('should remove data corresponding to hidden nested components in checkboxes', function () {
47
- var patchCheckboxes = {
46
+ it('should remove data corresponding to hidden nested components in checkboxes', () => {
47
+ const patchCheckboxes = {
48
48
  parent: ['option2'],
49
49
  nested1: 'should not be included',
50
50
  nested2: 'should be included'
51
51
  };
52
- var pageCheckboxes = {
52
+ const pageCheckboxes = {
53
53
  id: 'page',
54
54
  name: 'page',
55
55
  title: 'Page',
@@ -74,12 +74,12 @@ describe('components', function () {
74
74
  }
75
75
  }]
76
76
  };
77
- var updatedPatchCheckboxes = (0, _cleanHiddenNestedData.default)(patchCheckboxes, pageCheckboxes);
77
+ const updatedPatchCheckboxes = (0, _cleanHiddenNestedData.default)(patchCheckboxes, pageCheckboxes);
78
78
  expect(updatedPatchCheckboxes.nested1).toBeFalsy();
79
79
  expect(updatedPatchCheckboxes.nested2).toBeTruthy();
80
80
  });
81
- it('should remove data corresponding to hidden nested components within the active collection entry', function () {
82
- var patch = {
81
+ it('should remove data corresponding to hidden nested components within the active collection entry', () => {
82
+ const patch = {
83
83
  collectionNameActiveId: '456',
84
84
  collectionName: [{
85
85
  id: '123',
@@ -93,7 +93,7 @@ describe('components', function () {
93
93
  nested2: 'should be included'
94
94
  }]
95
95
  };
96
- var page = {
96
+ const page = {
97
97
  id: 'page',
98
98
  name: 'page',
99
99
  title: 'Page',
@@ -123,14 +123,14 @@ describe('components', function () {
123
123
  }
124
124
  }]
125
125
  };
126
- var updatedPatch = (0, _cleanHiddenNestedData.default)(patch, page);
126
+ const updatedPatch = (0, _cleanHiddenNestedData.default)(patch, page);
127
127
  expect(updatedPatch.collectionName[0].nested1).toBeTruthy();
128
128
  expect(updatedPatch.collectionName[0].nested2).toBeTruthy();
129
129
  expect(updatedPatch.collectionName[1].nested1).toBeFalsy();
130
130
  expect(updatedPatch.collectionName[1].nested2).toBeTruthy();
131
131
  });
132
- it('should remove data corresponding to hidden nested components when collection is nested within an entity', function () {
133
- var patch = {
132
+ it('should remove data corresponding to hidden nested components when collection is nested within an entity', () => {
133
+ const patch = {
134
134
  collectionNameActiveId: '456',
135
135
  entities: [{
136
136
  id: '777',
@@ -147,7 +147,7 @@ describe('components', function () {
147
147
  }]
148
148
  }]
149
149
  };
150
- var page = {
150
+ const page = {
151
151
  id: 'page',
152
152
  name: 'page',
153
153
  title: 'Page',
@@ -178,7 +178,7 @@ describe('components', function () {
178
178
  }
179
179
  }]
180
180
  };
181
- var updatedPatch = (0, _cleanHiddenNestedData.default)(patch, page);
181
+ const updatedPatch = (0, _cleanHiddenNestedData.default)(patch, page);
182
182
  expect(updatedPatch.entities[0].collectionName[0].nested1).toBeTruthy();
183
183
  expect(updatedPatch.entities[0].collectionName[0].nested2).toBeTruthy();
184
184
  expect(updatedPatch.entities[0].collectionName[1].nested1).toBeFalsy();
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.default = void 0;
7
7
  var _models = require("../../../models");
8
8
  var _utils = _interopRequireDefault(require("../../../utils"));
9
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
10
  // Local imports
11
11
 
12
12
  /**
@@ -15,7 +15,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
15
15
  * @param {object} hub The hub, if there is one.
16
16
  * @returns A configuration object for the Check your answers screen.
17
17
  */
18
- var getCYA = function getCYA(pageId, pages, hub) {
18
+ const getCYA = (pageId, pages, hub) => {
19
19
  if (pageId === _models.FormPages.HUB && hub === _models.HubFormats.CYA) {
20
20
  return {
21
21
  title: ''
@@ -26,11 +26,9 @@ var getCYA = function getCYA(pageId, pages, hub) {
26
26
  return {};
27
27
  }
28
28
  ;
29
- var currentPage = pages === null || pages === void 0 ? void 0 : pages.find(function (p) {
30
- return p.id === pageId;
31
- });
29
+ const currentPage = pages === null || pages === void 0 ? void 0 : pages.find(p => p.id === pageId);
32
30
  if ((currentPage === null || currentPage === void 0 ? void 0 : currentPage.type) === _models.FormPages.PARTIAL_CYA) {
33
- var pageWithConditionals = _utils.default.FormPage.applyConditionalProperties(currentPage);
31
+ const pageWithConditionals = _utils.default.FormPage.applyConditionalProperties(currentPage);
34
32
  return {
35
33
  title: pageWithConditionals.title,
36
34
  hideChangeActions: pageWithConditionals.hideChangeActions,