@ukhomeoffice/cop-react-form-renderer 5.90.1 → 5.90.2

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 (382) hide show
  1. package/dist/components/CheckYourAnswers/Answer.js +15 -15
  2. package/dist/components/CheckYourAnswers/Answer.test.js +181 -132
  3. package/dist/components/CheckYourAnswers/CheckYourAnswers.js +142 -106
  4. package/dist/components/CheckYourAnswers/CheckYourAnswers.test.js +941 -563
  5. package/dist/components/CheckYourAnswers/index.js +1 -1
  6. package/dist/components/CollectionPage/CollectionPage.js +66 -75
  7. package/dist/components/CollectionPage/CollectionPage.test.js +369 -318
  8. package/dist/components/CollectionPage/index.js +1 -1
  9. package/dist/components/CollectionSummary/BannerStrip.js +15 -15
  10. package/dist/components/CollectionSummary/BannerStrip.test.js +79 -83
  11. package/dist/components/CollectionSummary/CollectionSummary.js +131 -109
  12. package/dist/components/CollectionSummary/CollectionSummary.test.js +180 -198
  13. package/dist/components/CollectionSummary/Confirmation.js +13 -15
  14. package/dist/components/CollectionSummary/Confirmation.test.js +63 -68
  15. package/dist/components/CollectionSummary/RenderListView.js +55 -47
  16. package/dist/components/CollectionSummary/RenderListView.test.js +81 -82
  17. package/dist/components/CollectionSummary/SummaryCard.js +157 -121
  18. package/dist/components/CollectionSummary/SummaryCard.test.js +1000 -970
  19. package/dist/components/CollectionSummary/SummaryCardDetails.js +94 -103
  20. package/dist/components/CollectionSummary/SummaryCardDetails.test.js +195 -187
  21. package/dist/components/CollectionSummary/SummaryCardValidationContext.js +36 -31
  22. package/dist/components/CollectionSummary/SummaryCardValidationContext.test.js +76 -64
  23. package/dist/components/CollectionSummary/index.js +1 -1
  24. package/dist/components/FormComponent/Collection.js +117 -80
  25. package/dist/components/FormComponent/Collection.test.js +1082 -910
  26. package/dist/components/FormComponent/Container.js +38 -43
  27. package/dist/components/FormComponent/Container.test.js +411 -379
  28. package/dist/components/FormComponent/FormComponent.js +74 -71
  29. package/dist/components/FormComponent/FormComponent.test.js +415 -354
  30. package/dist/components/FormComponent/helpers/addLabel.js +7 -4
  31. package/dist/components/FormComponent/helpers/getComponentDisabled.js +1 -1
  32. package/dist/components/FormComponent/helpers/getComponentDisabled.test.js +8 -8
  33. package/dist/components/FormComponent/helpers/getComponentError.js +5 -3
  34. package/dist/components/FormComponent/helpers/getComponentError.test.js +15 -15
  35. package/dist/components/FormComponent/helpers/getComponentFieldSet.js +4 -3
  36. package/dist/components/FormComponent/helpers/getComponentFieldSet.test.js +7 -7
  37. package/dist/components/FormComponent/helpers/index.js +5 -5
  38. package/dist/components/FormComponent/index.js +1 -1
  39. package/dist/components/FormPage/FormPage.js +87 -71
  40. package/dist/components/FormPage/FormPage.test.js +170 -133
  41. package/dist/components/FormPage/index.js +1 -1
  42. package/dist/components/FormRenderer/FormRenderer.js +198 -153
  43. package/dist/components/FormRenderer/FormRenderer.test.js +1116 -731
  44. package/dist/components/FormRenderer/handlers/cyaAction.js +3 -3
  45. package/dist/components/FormRenderer/handlers/getPageId.js +3 -1
  46. package/dist/components/FormRenderer/handlers/getPageId.test.js +15 -15
  47. package/dist/components/FormRenderer/handlers/handlers.test.js +33 -33
  48. package/dist/components/FormRenderer/handlers/index.js +2 -2
  49. package/dist/components/FormRenderer/handlers/navigate.js +4 -4
  50. package/dist/components/FormRenderer/handlers/submissionError.js +1 -1
  51. package/dist/components/FormRenderer/helpers/canActionProceed.js +1 -1
  52. package/dist/components/FormRenderer/helpers/canActionProceed.test.js +16 -16
  53. package/dist/components/FormRenderer/helpers/canCYASubmit.js +3 -1
  54. package/dist/components/FormRenderer/helpers/canCYASubmit.test.js +21 -17
  55. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.js +30 -27
  56. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.test.js +21 -21
  57. package/dist/components/FormRenderer/helpers/getCYA.js +7 -5
  58. package/dist/components/FormRenderer/helpers/getCYA.test.js +12 -12
  59. package/dist/components/FormRenderer/helpers/getFormState.js +8 -6
  60. package/dist/components/FormRenderer/helpers/getFormState.test.js +11 -11
  61. package/dist/components/FormRenderer/helpers/getNextPageId.js +32 -18
  62. package/dist/components/FormRenderer/helpers/getNextPageId.test.js +68 -68
  63. package/dist/components/FormRenderer/helpers/getPage.js +4 -2
  64. package/dist/components/FormRenderer/helpers/getPage.test.js +12 -12
  65. package/dist/components/FormRenderer/helpers/getRelevantPages.js +11 -8
  66. package/dist/components/FormRenderer/helpers/getRelevantPages.test.js +15 -15
  67. package/dist/components/FormRenderer/helpers/getSubmissionStatus.js +13 -12
  68. package/dist/components/FormRenderer/helpers/getSubmissionStatus.test.js +98 -104
  69. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.js +64 -65
  70. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.test.js +79 -72
  71. package/dist/components/FormRenderer/helpers/index.js +2 -2
  72. package/dist/components/FormRenderer/index.js +1 -1
  73. package/dist/components/FormRenderer/onCYAAction.js +54 -61
  74. package/dist/components/FormRenderer/onCYAAction.test.js +153 -165
  75. package/dist/components/FormRenderer/onPageAction.js +41 -45
  76. package/dist/components/FormRenderer/onPageAction.test.js +210 -225
  77. package/dist/components/FormRenderer/onTaskAction.js +15 -11
  78. package/dist/components/FormRenderer/onTaskAction.test.js +89 -94
  79. package/dist/components/PageActions/ActionButton.js +16 -13
  80. package/dist/components/PageActions/ActionButton.test.js +79 -57
  81. package/dist/components/PageActions/PageActions.js +11 -11
  82. package/dist/components/PageActions/PageActions.test.js +116 -87
  83. package/dist/components/PageActions/index.js +1 -1
  84. package/dist/components/SummaryList/GroupAction.js +21 -13
  85. package/dist/components/SummaryList/GroupAction.test.js +37 -41
  86. package/dist/components/SummaryList/RowAction.js +17 -12
  87. package/dist/components/SummaryList/RowAction.test.js +37 -41
  88. package/dist/components/SummaryList/SummaryList.js +28 -23
  89. package/dist/components/SummaryList/SummaryList.test.js +206 -179
  90. package/dist/components/SummaryList/SummaryListHeadingRow.js +6 -8
  91. package/dist/components/SummaryList/SummaryListHeadingRowWithAction.js +5 -7
  92. package/dist/components/SummaryList/SummaryListRow.js +6 -8
  93. package/dist/components/SummaryList/SummaryListTitleRow.js +5 -7
  94. package/dist/components/SummaryList/helpers/getGroupActionAttributes.js +6 -4
  95. package/dist/components/SummaryList/helpers/getGroupActionAttributes.test.js +24 -24
  96. package/dist/components/SummaryList/helpers/getRowActionAttributes.js +6 -4
  97. package/dist/components/SummaryList/helpers/getRowActionAttributes.test.js +24 -24
  98. package/dist/components/SummaryList/helpers/index.js +2 -2
  99. package/dist/components/SummaryList/index.js +1 -1
  100. package/dist/components/TaskList/Task.js +30 -20
  101. package/dist/components/TaskList/Task.test.js +77 -84
  102. package/dist/components/TaskList/TaskList.js +84 -53
  103. package/dist/components/TaskList/TaskList.test.js +150 -150
  104. package/dist/components/TaskList/TaskState.js +6 -8
  105. package/dist/components/TaskList/TaskState.test.js +49 -56
  106. package/dist/components/TaskList/index.js +1 -1
  107. package/dist/components/index.js +8 -8
  108. package/dist/context/HooksContext/HooksContext.js +81 -58
  109. package/dist/context/HooksContext/HooksContext.test.js +36 -27
  110. package/dist/context/HooksContext/index.js +4 -3
  111. package/dist/context/ValidationContext/ValidationContext.js +95 -44
  112. package/dist/context/ValidationContext/ValidationContext.test.js +70 -58
  113. package/dist/context/ValidationContext/index.js +4 -3
  114. package/dist/context/index.js +3 -3
  115. package/dist/hooks/index.js +11 -10
  116. package/dist/hooks/useAxios.js +41 -15
  117. package/dist/hooks/useGetRequest.js +98 -62
  118. package/dist/hooks/useHooks.js +3 -1
  119. package/dist/hooks/useRefData.js +41 -28
  120. package/dist/hooks/useValidation.js +3 -1
  121. package/dist/index.js +15 -14
  122. package/dist/models/CollectionLabels.js +1 -1
  123. package/dist/models/ComponentTypes.js +25 -25
  124. package/dist/models/EventTypes.js +4 -4
  125. package/dist/models/FormPages.js +4 -4
  126. package/dist/models/FormTypes.js +8 -8
  127. package/dist/models/HubFormats.js +3 -3
  128. package/dist/models/PageAction.js +38 -44
  129. package/dist/models/TaskStates.js +28 -29
  130. package/dist/models/index.js +10 -10
  131. package/dist/setupTests.js +32 -31
  132. package/dist/utils/CheckYourAnswers/getCYAAction.js +5 -5
  133. package/dist/utils/CheckYourAnswers/getCYAAction.test.js +55 -53
  134. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.js +27 -17
  135. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.test.js +36 -34
  136. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.js +34 -20
  137. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.test.js +45 -43
  138. package/dist/utils/CheckYourAnswers/getCYARow.js +10 -8
  139. package/dist/utils/CheckYourAnswers/getCYARow.test.js +87 -87
  140. package/dist/utils/CheckYourAnswers/getCYARowForGroup.js +25 -19
  141. package/dist/utils/CheckYourAnswers/getCYARowForGroup.test.js +17 -16
  142. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.js +45 -39
  143. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.test.js +75 -72
  144. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.js +105 -100
  145. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.test.js +182 -218
  146. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.js +21 -26
  147. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.test.js +106 -112
  148. package/dist/utils/CheckYourAnswers/getCYARowsForPage.js +21 -15
  149. package/dist/utils/CheckYourAnswers/getCYARowsForPage.test.js +83 -77
  150. package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.js +13 -13
  151. package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.test.js +19 -14
  152. package/dist/utils/CheckYourAnswers/index.js +2 -2
  153. package/dist/utils/CheckYourAnswers/showComponentCYA.js +6 -6
  154. package/dist/utils/CheckYourAnswers/showComponentCYA.test.js +26 -26
  155. package/dist/utils/CollectionPage/addCollectionPageEntry.js +3 -3
  156. package/dist/utils/CollectionPage/addCollectionPageEntry.test.js +6 -6
  157. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.js +3 -3
  158. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.test.js +22 -21
  159. package/dist/utils/CollectionPage/duplicateCollectionPageEntry.js +24 -14
  160. package/dist/utils/CollectionPage/duplicateCollectionPageEntry.test.js +43 -52
  161. package/dist/utils/CollectionPage/getCollectionPageActiveId.js +3 -3
  162. package/dist/utils/CollectionPage/getCollectionPageActiveId.test.js +11 -11
  163. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.js +12 -7
  164. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.test.js +23 -23
  165. package/dist/utils/CollectionPage/getCollectionPageData.js +13 -8
  166. package/dist/utils/CollectionPage/getCollectionPageData.test.js +20 -20
  167. package/dist/utils/CollectionPage/getErrorsForCollection.js +26 -25
  168. package/dist/utils/CollectionPage/getErrorsForCollection.test.js +23 -21
  169. package/dist/utils/CollectionPage/getQuickEditPage.js +32 -37
  170. package/dist/utils/CollectionPage/getQuickEditPage.test.js +22 -18
  171. package/dist/utils/CollectionPage/index.js +2 -2
  172. package/dist/utils/CollectionPage/mergeCollectionPages.js +42 -37
  173. package/dist/utils/CollectionPage/mergeCollectionPages.test.js +18 -48
  174. package/dist/utils/CollectionPage/removeCollectionPageEntry.js +7 -5
  175. package/dist/utils/CollectionPage/removeCollectionPageEntry.test.js +11 -11
  176. package/dist/utils/CollectionPage/setCollectionPageData.js +19 -12
  177. package/dist/utils/CollectionPage/setCollectionPageData.test.js +26 -26
  178. package/dist/utils/Component/addShowWhen.js +8 -4
  179. package/dist/utils/Component/addShowWhen.test.js +38 -38
  180. package/dist/utils/Component/applyToComponentTree.js +20 -19
  181. package/dist/utils/Component/applyToComponentTree.test.js +33 -28
  182. package/dist/utils/Component/cleanAttributes.js +13 -10
  183. package/dist/utils/Component/cleanAttributes.test.js +18 -17
  184. package/dist/utils/Component/elevateNestedComponents.js +7 -6
  185. package/dist/utils/Component/elevateNestedComponents.test.js +34 -34
  186. package/dist/utils/Component/getComponent.js +97 -90
  187. package/dist/utils/Component/getComponentTests/getComponent.autocomplete.test.js +18 -19
  188. package/dist/utils/Component/getComponentTests/getComponent.calculation.test.js +63 -50
  189. package/dist/utils/Component/getComponentTests/getComponent.checkboxes.test.js +49 -40
  190. package/dist/utils/Component/getComponentTests/getComponent.date.test.js +40 -30
  191. package/dist/utils/Component/getComponentTests/getComponent.details.test.js +19 -21
  192. package/dist/utils/Component/getComponentTests/getComponent.email.test.js +23 -18
  193. package/dist/utils/Component/getComponentTests/getComponent.file.test.js +27 -22
  194. package/dist/utils/Component/getComponentTests/getComponent.heading.test.js +11 -12
  195. package/dist/utils/Component/getComponentTests/getComponent.html.test.js +16 -18
  196. package/dist/utils/Component/getComponentTests/getComponent.insetText.test.js +9 -10
  197. package/dist/utils/Component/getComponentTests/getComponent.list.test.js +16 -18
  198. package/dist/utils/Component/getComponentTests/getComponent.multifile.test.js +27 -23
  199. package/dist/utils/Component/getComponentTests/getComponent.nested.test.js +175 -155
  200. package/dist/utils/Component/getComponentTests/getComponent.paragraph.test.js +16 -18
  201. package/dist/utils/Component/getComponentTests/getComponent.phoneNumber.test.js +23 -18
  202. package/dist/utils/Component/getComponentTests/getComponent.radios.test.js +73 -58
  203. package/dist/utils/Component/getComponentTests/getComponent.select.test.js +23 -18
  204. package/dist/utils/Component/getComponentTests/getComponent.text.test.js +23 -18
  205. package/dist/utils/Component/getComponentTests/getComponent.textArea.test.js +41 -34
  206. package/dist/utils/Component/getComponentTests/getComponent.time.test.js +32 -23
  207. package/dist/utils/Component/getComponentTests/getComponent.unknown.test.js +3 -3
  208. package/dist/utils/Component/getComponentTests/getComponent.warningText.test.js +9 -10
  209. package/dist/utils/Component/getDefaultValue.js +9 -7
  210. package/dist/utils/Component/getDefaultValue.test.js +13 -13
  211. package/dist/utils/Component/getDefaultValueFromConfig.js +24 -24
  212. package/dist/utils/Component/getDefaultValueFromConfig.test.js +32 -32
  213. package/dist/utils/Component/index.js +2 -2
  214. package/dist/utils/Component/isEditable.js +4 -2
  215. package/dist/utils/Component/isEditable.test.js +15 -14
  216. package/dist/utils/Component/optionIsSelected.js +4 -2
  217. package/dist/utils/Component/optionIsSelected.test.js +12 -12
  218. package/dist/utils/Component/setupContainerComponentsPath.js +31 -29
  219. package/dist/utils/Component/setupContainerComponentsPath.test.js +16 -16
  220. package/dist/utils/Component/showComponent.js +4 -3
  221. package/dist/utils/Component/showComponent.test.js +29 -29
  222. package/dist/utils/Component/wrapInFormGroup.js +4 -4
  223. package/dist/utils/Condition/index.js +2 -2
  224. package/dist/utils/Condition/meetsAllConditions.js +9 -9
  225. package/dist/utils/Condition/meetsAllConditions.test.js +21 -21
  226. package/dist/utils/Condition/meetsCondition.js +31 -20
  227. package/dist/utils/Condition/meetsCondition.test.js +403 -403
  228. package/dist/utils/Condition/meetsOneCondition.js +6 -6
  229. package/dist/utils/Condition/meetsOneCondition.test.js +17 -17
  230. package/dist/utils/Condition/setupConditions.js +19 -14
  231. package/dist/utils/Condition/setupConditions.test.js +8 -8
  232. package/dist/utils/Container/getEditableComponents.js +6 -4
  233. package/dist/utils/Container/getEditableComponents.test.js +46 -44
  234. package/dist/utils/Container/index.js +2 -2
  235. package/dist/utils/Container/setupNesting.js +22 -16
  236. package/dist/utils/Container/setupNesting.test.js +31 -28
  237. package/dist/utils/Container/showContainer.js +8 -4
  238. package/dist/utils/Container/showContainer.test.js +31 -31
  239. package/dist/utils/Data/applyFormula.js +50 -40
  240. package/dist/utils/Data/applyFormula.test.js +26 -26
  241. package/dist/utils/Data/deleteValues.js +8 -4
  242. package/dist/utils/Data/deleteValues.test.js +11 -11
  243. package/dist/utils/Data/getAutocompleteSource.js +29 -20
  244. package/dist/utils/Data/getAutocompleteSource.test.js +87 -81
  245. package/dist/utils/Data/getDataPath.js +30 -20
  246. package/dist/utils/Data/getDataPath.test.js +20 -20
  247. package/dist/utils/Data/getOptions.js +34 -27
  248. package/dist/utils/Data/getOptions.test.js +28 -28
  249. package/dist/utils/Data/getSourceData.js +19 -6
  250. package/dist/utils/Data/getSourceData.test.js +81 -85
  251. package/dist/utils/Data/index.js +2 -2
  252. package/dist/utils/Data/nestInRefdataOptions.js +16 -9
  253. package/dist/utils/Data/nestInRefdataOptions.test.js +17 -17
  254. package/dist/utils/Data/refDataToOptions.js +15 -11
  255. package/dist/utils/Data/refDataToOptions.test.js +20 -20
  256. package/dist/utils/Data/setDataItem.js +8 -7
  257. package/dist/utils/Data/setDataItem.test.js +38 -38
  258. package/dist/utils/Data/setupFormData.js +22 -14
  259. package/dist/utils/Data/setupFormData.test.js +51 -52
  260. package/dist/utils/Data/setupRefDataUrlForComponent.js +28 -21
  261. package/dist/utils/Data/setupRefDataUrlForComponent.test.js +28 -28
  262. package/dist/utils/FormPage/applyConditionalProperties.js +10 -6
  263. package/dist/utils/FormPage/applyConditionalProperties.test.js +19 -16
  264. package/dist/utils/FormPage/getConditionalText.js +4 -4
  265. package/dist/utils/FormPage/getConditionalText.test.js +35 -35
  266. package/dist/utils/FormPage/getFormPage.js +17 -16
  267. package/dist/utils/FormPage/getFormPage.test.js +48 -49
  268. package/dist/utils/FormPage/getFormPages.js +13 -8
  269. package/dist/utils/FormPage/getFormPages.test.js +25 -22
  270. package/dist/utils/FormPage/getPageActions.js +17 -10
  271. package/dist/utils/FormPage/getPageActions.test.js +33 -33
  272. package/dist/utils/FormPage/getParagraphFromText.js +7 -5
  273. package/dist/utils/FormPage/getParagraphFromText.test.js +7 -7
  274. package/dist/utils/FormPage/index.js +5 -3
  275. package/dist/utils/FormPage/showFormPage.js +8 -4
  276. package/dist/utils/FormPage/showFormPage.test.js +33 -33
  277. package/dist/utils/FormPage/showFormPageCYA.js +3 -3
  278. package/dist/utils/FormPage/showFormPageCYA.test.js +9 -9
  279. package/dist/utils/FormPage/useComponent.js +28 -21
  280. package/dist/utils/FormPage/useComponent.test.js +80 -78
  281. package/dist/utils/Format/formatData.js +1 -1
  282. package/dist/utils/Format/formatData.test.js +19 -19
  283. package/dist/utils/Format/formatDataForComponent.js +7 -6
  284. package/dist/utils/Format/formatDataForComponent.test.js +78 -50
  285. package/dist/utils/Format/formatDataForForm.js +8 -6
  286. package/dist/utils/Format/formatDataForForm.test.js +17 -14
  287. package/dist/utils/Format/formatDataForPage.js +5 -4
  288. package/dist/utils/Format/formatDataForPage.test.js +25 -20
  289. package/dist/utils/Format/index.js +2 -2
  290. package/dist/utils/Hub/getFormHub.js +2 -2
  291. package/dist/utils/Hub/getFormHub.test.js +32 -29
  292. package/dist/utils/Hub/index.js +2 -2
  293. package/dist/utils/Meta/constants.js +2 -2
  294. package/dist/utils/Meta/documents/getDocuments.js +4 -1
  295. package/dist/utils/Meta/documents/getDocuments.test.js +17 -25
  296. package/dist/utils/Meta/documents/index.js +2 -2
  297. package/dist/utils/Meta/documents/setDocumentsForField.js +17 -15
  298. package/dist/utils/Meta/documents/setDocumentsForField.test.js +35 -69
  299. package/dist/utils/Meta/index.js +2 -2
  300. package/dist/utils/Operate/checkValueIsTruthy.js +4 -4
  301. package/dist/utils/Operate/checkValueIsTruthy.test.js +17 -17
  302. package/dist/utils/Operate/deleteValueInFormData.js +3 -3
  303. package/dist/utils/Operate/deleteValueInFormData.test.js +15 -15
  304. package/dist/utils/Operate/getFirstOf.js +8 -8
  305. package/dist/utils/Operate/getFirstOf.test.js +33 -33
  306. package/dist/utils/Operate/getIndexOfMatchingValueIn.js +12 -12
  307. package/dist/utils/Operate/getIndexOfMatchingValueIn.test.js +53 -47
  308. package/dist/utils/Operate/getLength.js +11 -11
  309. package/dist/utils/Operate/getLength.test.js +19 -19
  310. package/dist/utils/Operate/index.js +2 -2
  311. package/dist/utils/Operate/persistValueInFormData.js +6 -6
  312. package/dist/utils/Operate/persistValueInFormData.test.js +21 -23
  313. package/dist/utils/Operate/runPageOperations.js +9 -9
  314. package/dist/utils/Operate/runPageOperations.test.js +37 -36
  315. package/dist/utils/Operate/setValueInFormData.js +5 -5
  316. package/dist/utils/Operate/setValueInFormData.test.js +17 -17
  317. package/dist/utils/Operate/shouldRun.js +8 -8
  318. package/dist/utils/Operate/shouldRun.test.js +28 -22
  319. package/dist/utils/Validate/additional/conditionallyPermittedChange.js +1 -1
  320. package/dist/utils/Validate/additional/conditionallyPermittedChange.test.js +15 -15
  321. package/dist/utils/Validate/additional/conditionallyRequired.js +5 -4
  322. package/dist/utils/Validate/additional/conditionallyRequired.test.js +19 -19
  323. package/dist/utils/Validate/additional/index.js +8 -8
  324. package/dist/utils/Validate/additional/index.test.js +22 -22
  325. package/dist/utils/Validate/additional/mustBeAfter.js +3 -3
  326. package/dist/utils/Validate/additional/mustBeAfter.test.js +41 -41
  327. package/dist/utils/Validate/additional/mustBeBefore.js +3 -3
  328. package/dist/utils/Validate/additional/mustBeBefore.test.js +29 -29
  329. package/dist/utils/Validate/additional/mustBeEarlierDateTime.js +14 -9
  330. package/dist/utils/Validate/additional/mustBeEarlierDateTime.test.js +42 -38
  331. package/dist/utils/Validate/additional/mustBeGreaterThan.js +2 -2
  332. package/dist/utils/Validate/additional/mustBeGreaterThan.test.js +19 -19
  333. package/dist/utils/Validate/additional/mustBeInTheFuture.js +4 -4
  334. package/dist/utils/Validate/additional/mustBeInTheFuture.test.js +13 -13
  335. package/dist/utils/Validate/additional/mustBeInThePast.js +5 -5
  336. package/dist/utils/Validate/additional/mustBeInThePast.test.js +13 -13
  337. package/dist/utils/Validate/additional/mustBeLessThan.js +2 -2
  338. package/dist/utils/Validate/additional/mustBeLessThan.test.js +18 -18
  339. package/dist/utils/Validate/additional/mustBeLongerThan.js +1 -1
  340. package/dist/utils/Validate/additional/mustBeLongerThan.test.js +17 -17
  341. package/dist/utils/Validate/additional/mustBeNumbersOnly.js +2 -2
  342. package/dist/utils/Validate/additional/mustBeNumbersOnly.test.js +21 -21
  343. package/dist/utils/Validate/additional/mustBeOneOf.js +1 -1
  344. package/dist/utils/Validate/additional/mustBeOneOf.test.js +13 -13
  345. package/dist/utils/Validate/additional/mustBeShorterThan.js +1 -1
  346. package/dist/utils/Validate/additional/mustBeShorterThan.test.js +17 -17
  347. package/dist/utils/Validate/additional/mustBeUniqueInCollection.js +5 -5
  348. package/dist/utils/Validate/additional/mustBeUniqueInCollection.test.js +40 -36
  349. package/dist/utils/Validate/additional/mustEnterAtLeastOne.js +5 -3
  350. package/dist/utils/Validate/additional/mustEnterAtLeastOne.test.js +17 -15
  351. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.js +1 -1
  352. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.test.js +13 -13
  353. package/dist/utils/Validate/additional/mustNotContainSql.js +4 -3
  354. package/dist/utils/Validate/additional/mustNotContainSql.test.js +15 -15
  355. package/dist/utils/Validate/additional/mustSelectOnlyOne.js +5 -3
  356. package/dist/utils/Validate/additional/mustSelectOnlyOne.test.js +27 -29
  357. package/dist/utils/Validate/additional/utils.js +24 -11
  358. package/dist/utils/Validate/index.js +2 -2
  359. package/dist/utils/Validate/validateCollection.js +27 -21
  360. package/dist/utils/Validate/validateCollection.test.js +77 -85
  361. package/dist/utils/Validate/validateComponent.js +23 -22
  362. package/dist/utils/Validate/validateComponent.test.js +165 -188
  363. package/dist/utils/Validate/validateContainer.js +21 -16
  364. package/dist/utils/Validate/validateContainer.test.js +56 -62
  365. package/dist/utils/Validate/validateDate.js +23 -17
  366. package/dist/utils/Validate/validateDate.test.js +32 -31
  367. package/dist/utils/Validate/validateEmail.js +9 -7
  368. package/dist/utils/Validate/validateEmail.test.js +26 -26
  369. package/dist/utils/Validate/validateMultifile.js +7 -5
  370. package/dist/utils/Validate/validateMultifile.test.js +18 -17
  371. package/dist/utils/Validate/validatePage.js +24 -20
  372. package/dist/utils/Validate/validatePage.test.js +215 -227
  373. package/dist/utils/Validate/validateRegex.js +8 -5
  374. package/dist/utils/Validate/validateRegex.test.js +17 -17
  375. package/dist/utils/Validate/validateRequired.js +7 -5
  376. package/dist/utils/Validate/validateRequired.test.js +19 -19
  377. package/dist/utils/Validate/validateTextArea.js +7 -5
  378. package/dist/utils/Validate/validateTextArea.test.js +21 -21
  379. package/dist/utils/Validate/validateTime.js +19 -12
  380. package/dist/utils/Validate/validateTime.test.js +27 -27
  381. package/dist/utils/index.js +10 -8
  382. package/package.json +1 -1
@@ -6,21 +6,23 @@ 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(e) { return e && e.__esModule ? e : { default: e }; }
10
- // Local imports
11
-
9
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
+ 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 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; }
12
+ 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; }
13
+ 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; }
14
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
15
+ 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
12
16
  /**
13
17
  * @param {boolean} complete - true if task complete
14
18
  * @param {boolean} currentPage - true if current page
15
19
  * @param {TaskStates.TYPES|string} defaultState - default state to set task
16
20
  * @returns {TaskStates.TYPES|string} current task state
17
21
  */
18
- const getCurrentTaskState = function (_ref) {
19
- let {
20
- complete,
21
- currentPage
22
- } = _ref;
23
- let defaultState = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _models.TaskStates.TYPES.NOT_STARTED;
22
+ var getCurrentTaskState = function getCurrentTaskState(_ref) {
23
+ var complete = _ref.complete,
24
+ currentPage = _ref.currentPage;
25
+ var defaultState = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _models.TaskStates.TYPES.NOT_STARTED;
24
26
  if (complete) {
25
27
  return _models.TaskStates.TYPES.COMPLETE;
26
28
  }
@@ -37,18 +39,18 @@ const getCurrentTaskState = function (_ref) {
37
39
  * @param {boolean} ignoreSkipped - skipped tasks don't need to have been completed
38
40
  * @returns {boolean} true if dependent tasks complete
39
41
  */
40
- const allDependentTasksComplete = function (taskStates, mustBeComplete) {
41
- let ignoreSkipped = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
42
- return mustBeComplete.reduce((allComplete, taskName) => {
43
- const task = taskStates[taskName];
44
- if (ignoreSkipped && task?.state === _models.TaskStates.TYPES.SKIPPED) {
42
+ var allDependentTasksComplete = function allDependentTasksComplete(taskStates, mustBeComplete) {
43
+ var ignoreSkipped = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
44
+ return mustBeComplete.reduce(function (allComplete, taskName) {
45
+ var task = taskStates[taskName];
46
+ if (ignoreSkipped && (task === null || task === void 0 ? void 0 : task.state) === _models.TaskStates.TYPES.SKIPPED) {
45
47
  return allComplete;
46
48
  }
47
- return allComplete && task?.complete;
49
+ return allComplete && (task === null || task === void 0 ? void 0 : task.complete);
48
50
  }, true);
49
51
  };
50
- const isPreviousTaskComplete = (tasks, taskIndex) => {
51
- const lastTaskState = tasks[taskIndex - 1].state;
52
+ var isPreviousTaskComplete = function isPreviousTaskComplete(tasks, taskIndex) {
53
+ var lastTaskState = tasks[taskIndex - 1].state;
52
54
  if (lastTaskState === _models.TaskStates.TYPES.COMPLETE) {
53
55
  return true;
54
56
  }
@@ -69,9 +71,9 @@ const isPreviousTaskComplete = (tasks, taskIndex) => {
69
71
  * @returns {TYPES|string} new state
70
72
  */
71
73
 
72
- const updateTaskState = function (task, taskIndex, taskList, taskStates) {
73
- let nonSequential = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;
74
- let allowFirst = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : true;
74
+ var updateTaskState = function updateTaskState(task, taskIndex, taskList, taskStates) {
75
+ var nonSequential = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;
76
+ var allowFirst = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : true;
75
77
  if (taskStates[task.name]) {
76
78
  return getCurrentTaskState(taskStates[task.name], task.state);
77
79
  }
@@ -81,7 +83,7 @@ const updateTaskState = function (task, taskIndex, taskList, taskStates) {
81
83
  }
82
84
  return _models.TaskStates.TYPES.NOT_STARTED;
83
85
  }
84
- let notStarted = allowFirst;
86
+ var notStarted = allowFirst;
85
87
  if (taskIndex) {
86
88
  notStarted = isPreviousTaskComplete(taskList, taskIndex);
87
89
  }
@@ -100,12 +102,14 @@ const updateTaskState = function (task, taskIndex, taskList, taskStates) {
100
102
  * @param {boolean} allowFirst - true if first task can be started
101
103
  * @returns {object} - updated section
102
104
  */
103
- const updateTasks = (section, taskStates, nonSequential, allowFirst) => {
104
- const clone = section.tasks.map(a => ({
105
- ...a
106
- }));
107
- clone.filter(t => t.state !== _models.TaskStates.TYPES.SKIPPED).forEach((t, index) => {
108
- const task = t;
105
+ var updateTasks = function updateTasks(section, taskStates, nonSequential, allowFirst) {
106
+ var clone = section.tasks.map(function (a) {
107
+ return _objectSpread({}, a);
108
+ });
109
+ clone.filter(function (t) {
110
+ return t.state !== _models.TaskStates.TYPES.SKIPPED;
111
+ }).forEach(function (t, index) {
112
+ var task = t;
109
113
  task.state = updateTaskState(task, index, clone, taskStates, nonSequential, allowFirst);
110
114
  });
111
115
  return clone;
@@ -120,8 +124,9 @@ const updateTasks = (section, taskStates, nonSequential, allowFirst) => {
120
124
  * @returns {boolean} true if the last non-skipped section is complete, false
121
125
  * if not.
122
126
  */
123
- const isPreviousSectionComplete = (sections, currentIndex) => {
124
- const lastTaskState = sections[currentIndex - 1]?.tasks.slice(-1)[0]?.state;
127
+ var isPreviousSectionComplete = function isPreviousSectionComplete(sections, currentIndex) {
128
+ var _sections;
129
+ var lastTaskState = (_sections = sections[currentIndex - 1]) === null || _sections === void 0 || (_sections = _sections.tasks.slice(-1)[0]) === null || _sections === void 0 ? void 0 : _sections.state;
125
130
  if (lastTaskState === _models.TaskStates.TYPES.COMPLETE) {
126
131
  return true;
127
132
  }
@@ -139,62 +144,56 @@ const isPreviousSectionComplete = (sections, currentIndex) => {
139
144
  * @param {object} data - current form data
140
145
  * @returns {object[]} - updated sections - note this is a clone
141
146
  */
142
- const getUpdatedSectionStates = function (sections, taskStates) {
143
- let nonSequential = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
144
- let data = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
147
+ var getUpdatedSectionStates = function getUpdatedSectionStates(sections, taskStates) {
148
+ var nonSequential = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
149
+ var data = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
145
150
  // Make a clone and handle any hidden sections.
146
- const clone = sections.map(section => {
147
- const showWhen = section.show_when ? [section.show_when].flat() : [];
151
+ var clone = sections.map(function (section) {
152
+ var showWhen = section.show_when ? [section.show_when].flat() : [];
148
153
  if (data && !_utils.default.Condition.meetsAll(showWhen, data)) {
149
- return {
150
- ...section,
154
+ return _objectSpread(_objectSpread({}, section), {}, {
151
155
  skipped: true,
152
- tasks: section.tasks.map(task => ({
153
- ...task,
154
- state: _models.TaskStates.TYPES.SKIPPED
155
- }))
156
- };
156
+ tasks: section.tasks.map(function (task) {
157
+ return _objectSpread(_objectSpread({}, task), {}, {
158
+ state: _models.TaskStates.TYPES.SKIPPED
159
+ });
160
+ })
161
+ });
157
162
  }
158
163
  ;
159
- return {
160
- ...section
161
- };
164
+ return _objectSpread({}, section);
162
165
  });
163
166
 
164
167
  // Now iterate through the clone and handle any hidden tasks.
165
- clone.forEach(s => {
166
- const section = s;
167
- section.tasks = section.tasks.map(task => {
168
- const showWhen = task.show_when ? [task.show_when].flat() : [];
168
+ clone.forEach(function (s) {
169
+ var section = s;
170
+ section.tasks = section.tasks.map(function (task) {
171
+ var showWhen = task.show_when ? [task.show_when].flat() : [];
169
172
  if (data && !_utils.default.Condition.meetsAll(showWhen, data)) {
170
- return {
171
- ...task,
173
+ return _objectSpread(_objectSpread({}, task), {}, {
172
174
  state: _models.TaskStates.TYPES.SKIPPED
173
- };
175
+ });
174
176
  }
175
- return {
176
- ...task
177
- };
177
+ return _objectSpread({}, task);
178
178
  });
179
179
  });
180
180
 
181
181
  // Update the taskStates to account for skipped tasks.
182
- const states = {
183
- ...taskStates
184
- };
185
- clone.forEach(section => {
186
- section.tasks.filter(t => t.state === _models.TaskStates.TYPES.SKIPPED).forEach(task => {
187
- states[task.name] = {
188
- ...states[task.name],
182
+ var states = _objectSpread({}, taskStates);
183
+ clone.forEach(function (section) {
184
+ section.tasks.filter(function (t) {
185
+ return t.state === _models.TaskStates.TYPES.SKIPPED;
186
+ }).forEach(function (task) {
187
+ states[task.name] = _objectSpread(_objectSpread({}, states[task.name]), {}, {
189
188
  state: _models.TaskStates.TYPES.SKIPPED
190
- };
189
+ });
191
190
  });
192
191
  });
193
192
 
194
193
  // Now figure out all the task states.
195
- clone.forEach((s, index) => {
196
- const section = s;
197
- const allowFirst = index === 0 || isPreviousSectionComplete(clone, index);
194
+ clone.forEach(function (s, index) {
195
+ var section = s;
196
+ var allowFirst = index === 0 || isPreviousSectionComplete(clone, index);
198
197
  section.tasks = updateTasks(section, states, nonSequential, allowFirst);
199
198
  });
200
199
  return clone;
@@ -2,13 +2,17 @@
2
2
 
3
3
  var _models = require("../../../models");
4
4
  var _getUpdatedSectionStates = _interopRequireDefault(require("./getUpdatedSectionStates"));
5
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
6
- // Local imports
7
-
8
- describe('components.FormRenderer.helpers.getUpdatedSectionStates', () => {
9
- describe('sequential tasks', () => {
10
- it(`should set all tasks to '${_models.TaskStates.TYPES.CANNOT_START_YET}' excluding the first which should be '${_models.TaskStates.TYPES.NOT_STARTED}'`, () => {
11
- const SECTIONS = [{
5
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6
+ 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); }
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; }
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; }
9
+ 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; }
10
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
11
+ 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
12
+ describe('components.FormRenderer.helpers.getUpdatedSectionStates', function () {
13
+ describe('sequential tasks', function () {
14
+ it("should set all tasks to '".concat(_models.TaskStates.TYPES.CANNOT_START_YET, "' excluding the first which should be '").concat(_models.TaskStates.TYPES.NOT_STARTED, "'"), function () {
15
+ var SECTIONS = [{
12
16
  name: 'Add event details',
13
17
  tasks: [{
14
18
  name: 'Date, location and mode details',
@@ -30,15 +34,15 @@ describe('components.FormRenderer.helpers.getUpdatedSectionStates', () => {
30
34
  pages: ['journeyDetails']
31
35
  }]
32
36
  }];
33
- const updatedSections = (0, _getUpdatedSectionStates.default)(SECTIONS, {});
37
+ var updatedSections = (0, _getUpdatedSectionStates.default)(SECTIONS, {});
34
38
  expect(updatedSections[0].tasks[0].state).toEqual(_models.TaskStates.TYPES.NOT_STARTED);
35
39
  expect(updatedSections[0].tasks[1].state).toEqual(_models.TaskStates.TYPES.CANNOT_START_YET);
36
40
  expect(updatedSections[1].tasks[0].state).toEqual(_models.TaskStates.TYPES.CANNOT_START_YET);
37
41
  expect(updatedSections[1].tasks[1].state).toEqual(_models.TaskStates.TYPES.CANNOT_START_YET);
38
42
  expect(updatedSections[1].tasks[2].state).toEqual(_models.TaskStates.TYPES.CANNOT_START_YET);
39
43
  });
40
- it(`should set tasks after any '${_models.TaskStates.TYPES.COMPLETE}' ones to '${_models.TaskStates.TYPES.NOT_STARTED}'`, () => {
41
- const SECTIONS = [{
44
+ it("should set tasks after any '".concat(_models.TaskStates.TYPES.COMPLETE, "' ones to '").concat(_models.TaskStates.TYPES.NOT_STARTED, "'"), function () {
45
+ var SECTIONS = [{
42
46
  name: 'Add event details',
43
47
  tasks: [{
44
48
  name: 'Date, location and mode details',
@@ -48,17 +52,17 @@ describe('components.FormRenderer.helpers.getUpdatedSectionStates', () => {
48
52
  pages: ['officeDetails']
49
53
  }]
50
54
  }];
51
- const TASKS = {
55
+ var TASKS = {
52
56
  'Date, location and mode details': {
53
57
  complete: true
54
58
  }
55
59
  };
56
- const updatedSections = (0, _getUpdatedSectionStates.default)(SECTIONS, TASKS);
60
+ var updatedSections = (0, _getUpdatedSectionStates.default)(SECTIONS, TASKS);
57
61
  expect(updatedSections[0].tasks[0].state).toEqual(_models.TaskStates.TYPES.COMPLETE);
58
62
  expect(updatedSections[0].tasks[1].state).toEqual(_models.TaskStates.TYPES.NOT_STARTED);
59
63
  });
60
- it(`should set tasks after any '${_models.TaskStates.TYPES.COMPLETE}' ones to '${_models.TaskStates.TYPES.NOT_STARTED} across different sections'`, () => {
61
- const SECTIONS = [{
64
+ it("should set tasks after any '".concat(_models.TaskStates.TYPES.COMPLETE, "' ones to '").concat(_models.TaskStates.TYPES.NOT_STARTED, " across different sections'"), function () {
65
+ var SECTIONS = [{
62
66
  name: 'Add event details',
63
67
  tasks: [{
64
68
  name: 'Date, location and mode details',
@@ -77,7 +81,7 @@ describe('components.FormRenderer.helpers.getUpdatedSectionStates', () => {
77
81
  pages: ['immigrationDate']
78
82
  }]
79
83
  }];
80
- const TASKS = {
84
+ var TASKS = {
81
85
  'Date, location and mode details': {
82
86
  complete: true
83
87
  },
@@ -85,14 +89,14 @@ describe('components.FormRenderer.helpers.getUpdatedSectionStates', () => {
85
89
  complete: true
86
90
  }
87
91
  };
88
- const updatedSections = (0, _getUpdatedSectionStates.default)(SECTIONS, TASKS);
92
+ var updatedSections = (0, _getUpdatedSectionStates.default)(SECTIONS, TASKS);
89
93
  expect(updatedSections[0].tasks[0].state).toEqual(_models.TaskStates.TYPES.COMPLETE);
90
94
  expect(updatedSections[0].tasks[1].state).toEqual(_models.TaskStates.TYPES.COMPLETE);
91
95
  expect(updatedSections[1].tasks[0].state).toEqual(_models.TaskStates.TYPES.NOT_STARTED);
92
96
  expect(updatedSections[1].tasks[1].state).toEqual(_models.TaskStates.TYPES.CANNOT_START_YET);
93
97
  });
94
- it(`should set tasks to '${_models.TaskStates.TYPES.IN_PROGRESS}' if they have a current page but are not complete`, () => {
95
- const SECTIONS = [{
98
+ it("should set tasks to '".concat(_models.TaskStates.TYPES.IN_PROGRESS, "' if they have a current page but are not complete"), function () {
99
+ var SECTIONS = [{
96
100
  name: 'Add event details',
97
101
  tasks: [{
98
102
  name: 'Date, location and mode details',
@@ -102,18 +106,18 @@ describe('components.FormRenderer.helpers.getUpdatedSectionStates', () => {
102
106
  pages: ['officeDetails']
103
107
  }]
104
108
  }];
105
- const TASKS = {
109
+ var TASKS = {
106
110
  'Date, location and mode details': {
107
111
  complete: false,
108
112
  currentPage: 'eventMode'
109
113
  }
110
114
  };
111
- const updatedSections = (0, _getUpdatedSectionStates.default)(SECTIONS, TASKS);
115
+ var updatedSections = (0, _getUpdatedSectionStates.default)(SECTIONS, TASKS);
112
116
  expect(updatedSections[0].tasks[0].state).toEqual(_models.TaskStates.TYPES.IN_PROGRESS);
113
117
  expect(updatedSections[0].tasks[1].state).toEqual(_models.TaskStates.TYPES.CANNOT_START_YET);
114
118
  });
115
- it(`should set the status of any tasks in a section with a failed show_when to '${_models.TaskStates.TYPES.SKIPPED}'`, () => {
116
- const SECTIONS = [{
119
+ it("should set the status of any tasks in a section with a failed show_when to '".concat(_models.TaskStates.TYPES.SKIPPED, "'"), function () {
120
+ var SECTIONS = [{
117
121
  name: 'Add event details',
118
122
  tasks: [{
119
123
  name: 'Date, location and mode details',
@@ -137,7 +141,7 @@ describe('components.FormRenderer.helpers.getUpdatedSectionStates', () => {
137
141
  pages: ['immigrationDate']
138
142
  }]
139
143
  }];
140
- const TASKS = {
144
+ var TASKS = {
141
145
  'Date, location and mode details': {
142
146
  complete: true
143
147
  },
@@ -145,18 +149,18 @@ describe('components.FormRenderer.helpers.getUpdatedSectionStates', () => {
145
149
  complete: true
146
150
  }
147
151
  };
148
- const DATA = {
152
+ var DATA = {
149
153
  field: 'hideMe'
150
154
  };
151
- const updatedSections = (0, _getUpdatedSectionStates.default)(SECTIONS, TASKS, false, DATA);
155
+ var updatedSections = (0, _getUpdatedSectionStates.default)(SECTIONS, TASKS, false, DATA);
152
156
  expect(updatedSections[0].tasks[0].state).toEqual(_models.TaskStates.TYPES.COMPLETE);
153
157
  expect(updatedSections[0].tasks[1].state).toEqual(_models.TaskStates.TYPES.COMPLETE);
154
158
  expect(updatedSections[1].skipped).toEqual(true);
155
159
  expect(updatedSections[1].tasks[0].state).toEqual(_models.TaskStates.TYPES.SKIPPED);
156
160
  expect(updatedSections[1].tasks[1].state).toEqual(_models.TaskStates.TYPES.SKIPPED);
157
161
  });
158
- it(`should set the status of any tasks with a failed show_when to '${_models.TaskStates.TYPES.SKIPPED}'`, () => {
159
- const SECTIONS = [{
162
+ it("should set the status of any tasks with a failed show_when to '".concat(_models.TaskStates.TYPES.SKIPPED, "'"), function () {
163
+ var SECTIONS = [{
160
164
  name: 'Add event details',
161
165
  tasks: [{
162
166
  name: 'Date, location and mode details',
@@ -176,15 +180,15 @@ describe('components.FormRenderer.helpers.getUpdatedSectionStates', () => {
176
180
  }
177
181
  }]
178
182
  }];
179
- const DATA = {
183
+ var DATA = {
180
184
  field: 'hideMe'
181
185
  };
182
- const updatedSections = (0, _getUpdatedSectionStates.default)(SECTIONS, {}, false, DATA);
186
+ var updatedSections = (0, _getUpdatedSectionStates.default)(SECTIONS, {}, false, DATA);
183
187
  expect(updatedSections[0].tasks[0].state).toEqual(_models.TaskStates.TYPES.SKIPPED);
184
188
  expect(updatedSections[0].tasks[1].state).toEqual(_models.TaskStates.TYPES.NOT_STARTED);
185
189
  });
186
- it(`should set the status of any tasks to '${_models.TaskStates.TYPES.NOT_STARTED}' if previous tasks within a section have been skipped`, () => {
187
- const SECTIONS = [{
190
+ it("should set the status of any tasks to '".concat(_models.TaskStates.TYPES.NOT_STARTED, "' if previous tasks within a section have been skipped"), function () {
191
+ var SECTIONS = [{
188
192
  name: 'Add event details',
189
193
  tasks: [{
190
194
  name: 'task one',
@@ -220,22 +224,22 @@ describe('components.FormRenderer.helpers.getUpdatedSectionStates', () => {
220
224
  }
221
225
  }]
222
226
  }];
223
- const DATA = {
227
+ var DATA = {
224
228
  field: 'hideMe'
225
229
  };
226
- const TASKS = {
230
+ var TASKS = {
227
231
  'task one': {
228
232
  complete: true
229
233
  }
230
234
  };
231
- const updatedSections = (0, _getUpdatedSectionStates.default)(SECTIONS, TASKS, false, DATA);
235
+ var updatedSections = (0, _getUpdatedSectionStates.default)(SECTIONS, TASKS, false, DATA);
232
236
  expect(updatedSections[0].tasks[0].state).toEqual(_models.TaskStates.TYPES.COMPLETE);
233
237
  expect(updatedSections[0].tasks[1].state).toEqual(_models.TaskStates.TYPES.SKIPPED);
234
238
  expect(updatedSections[0].tasks[2].state).toEqual(_models.TaskStates.TYPES.SKIPPED);
235
239
  expect(updatedSections[0].tasks[3].state).toEqual(_models.TaskStates.TYPES.NOT_STARTED);
236
240
  });
237
- it(`should set the status of any tasks to '${_models.TaskStates.TYPES.NOT_STARTED}' if previous tasks within the last section have been skipped`, () => {
238
- const SECTIONS = [{
241
+ it("should set the status of any tasks to '".concat(_models.TaskStates.TYPES.NOT_STARTED, "' if previous tasks within the last section have been skipped"), function () {
242
+ var SECTIONS = [{
239
243
  name: 'Add event details',
240
244
  tasks: [{
241
245
  name: 'task one',
@@ -261,22 +265,22 @@ describe('components.FormRenderer.helpers.getUpdatedSectionStates', () => {
261
265
  pages: ['eventDate', 'eventMode']
262
266
  }]
263
267
  }];
264
- const DATA = {
268
+ var DATA = {
265
269
  field: 'showMe'
266
270
  };
267
- const TASKS = {
271
+ var TASKS = {
268
272
  'task one': {
269
273
  complete: true
270
274
  }
271
275
  };
272
- const updatedSections = (0, _getUpdatedSectionStates.default)(SECTIONS, TASKS, false, DATA);
276
+ var updatedSections = (0, _getUpdatedSectionStates.default)(SECTIONS, TASKS, false, DATA);
273
277
  expect(updatedSections[0].tasks[0].state).toEqual(_models.TaskStates.TYPES.COMPLETE);
274
278
  expect(updatedSections[0].tasks[1].state).toEqual(_models.TaskStates.TYPES.SKIPPED);
275
279
  expect(updatedSections[1].tasks[0].state).toEqual(_models.TaskStates.TYPES.NOT_STARTED);
276
280
  });
277
281
  });
278
- it(`should set the status of any tasks to '${_models.TaskStates.TYPES.NOT_STARTED}' if previous tasks have been skipped`, () => {
279
- const SECTIONS = [{
282
+ it("should set the status of any tasks to '".concat(_models.TaskStates.TYPES.NOT_STARTED, "' if previous tasks have been skipped"), function () {
283
+ var SECTIONS = [{
280
284
  name: 'Add event details',
281
285
  show_when: {
282
286
  field: 'field',
@@ -300,20 +304,20 @@ describe('components.FormRenderer.helpers.getUpdatedSectionStates', () => {
300
304
  pages: ['immigrationDate']
301
305
  }]
302
306
  }];
303
- const TASKS = {};
304
- const DATA = {
307
+ var TASKS = {};
308
+ var DATA = {
305
309
  field: 'hideMe'
306
310
  };
307
- const updatedSections = (0, _getUpdatedSectionStates.default)(SECTIONS, TASKS, false, DATA);
311
+ var updatedSections = (0, _getUpdatedSectionStates.default)(SECTIONS, TASKS, false, DATA);
308
312
  expect(updatedSections[0].skipped).toEqual(true);
309
313
  expect(updatedSections[0].tasks[0].state).toEqual(_models.TaskStates.TYPES.SKIPPED);
310
314
  expect(updatedSections[0].tasks[1].state).toEqual(_models.TaskStates.TYPES.SKIPPED);
311
315
  expect(updatedSections[1].tasks[0].state).toEqual(_models.TaskStates.TYPES.NOT_STARTED);
312
316
  expect(updatedSections[1].tasks[1].state).toEqual(_models.TaskStates.TYPES.CANNOT_START_YET);
313
317
  });
314
- describe('non-sequential tasks', () => {
315
- const NON_SEQUENTIAL = true;
316
- const SECTIONS = [{
318
+ describe('non-sequential tasks', function () {
319
+ var NON_SEQUENTIAL = true;
320
+ var SECTIONS = [{
317
321
  name: 'First',
318
322
  tasks: [{
319
323
  name: 'Alpha'
@@ -332,29 +336,31 @@ describe('components.FormRenderer.helpers.getUpdatedSectionStates', () => {
332
336
  name: 'Delta'
333
337
  }]
334
338
  }];
335
- it(`should set all states to '${_models.TaskStates.TYPES.NOT_STARTED}', except any that depend on others`, () => {
336
- const RESULT = (0, _getUpdatedSectionStates.default)(SECTIONS, {}, NON_SEQUENTIAL);
339
+ it("should set all states to '".concat(_models.TaskStates.TYPES.NOT_STARTED, "', except any that depend on others"), function () {
340
+ var RESULT = (0, _getUpdatedSectionStates.default)(SECTIONS, {}, NON_SEQUENTIAL);
337
341
  expect(RESULT[0].tasks[0].state).toEqual(_models.TaskStates.TYPES.NOT_STARTED); // Alpha
338
342
  expect(RESULT[0].tasks[1].state).toEqual(_models.TaskStates.TYPES.NOT_STARTED); // Bravo
339
343
  expect(RESULT[1].tasks[0].state).toEqual(_models.TaskStates.TYPES.CANNOT_START_YET); // Charlie
340
344
  expect(RESULT[2].tasks[0].state).toEqual(_models.TaskStates.TYPES.NOT_STARTED); // Delta
341
345
  });
342
- it('should keep dependent state unable to start if any dependencies are not complete', () => {
343
- const ALPHA_COMPLETE = (0, _getUpdatedSectionStates.default)(SECTIONS, {
346
+
347
+ it('should keep dependent state unable to start if any dependencies are not complete', function () {
348
+ var ALPHA_COMPLETE = (0, _getUpdatedSectionStates.default)(SECTIONS, {
344
349
  Alpha: {
345
350
  complete: true
346
351
  }
347
352
  }, NON_SEQUENTIAL);
348
353
  expect(ALPHA_COMPLETE[1].tasks[0].state).toEqual(_models.TaskStates.TYPES.CANNOT_START_YET); // Charlie
349
- const BRAVO_COMPLETE = (0, _getUpdatedSectionStates.default)(SECTIONS, {
354
+ var BRAVO_COMPLETE = (0, _getUpdatedSectionStates.default)(SECTIONS, {
350
355
  Bravo: {
351
356
  complete: true
352
357
  }
353
358
  }, NON_SEQUENTIAL);
354
359
  expect(BRAVO_COMPLETE[1].tasks[0].state).toEqual(_models.TaskStates.TYPES.CANNOT_START_YET); // Charlie
355
360
  });
356
- it('should allow dependent state to start if all dependencies are complete', () => {
357
- const TASKS = {
361
+
362
+ it('should allow dependent state to start if all dependencies are complete', function () {
363
+ var TASKS = {
358
364
  'Alpha': {
359
365
  complete: true
360
366
  },
@@ -363,12 +369,13 @@ describe('components.FormRenderer.helpers.getUpdatedSectionStates', () => {
363
369
  },
364
370
  'Delta': {}
365
371
  };
366
- const RESULT = (0, _getUpdatedSectionStates.default)(SECTIONS, TASKS, NON_SEQUENTIAL);
372
+ var RESULT = (0, _getUpdatedSectionStates.default)(SECTIONS, TASKS, NON_SEQUENTIAL);
367
373
  expect(RESULT[1].tasks[0].state).toEqual(_models.TaskStates.TYPES.NOT_STARTED); // Charlie
368
374
  expect(RESULT[2].tasks[0].state).toEqual(_models.TaskStates.TYPES.NOT_STARTED); // Delta
369
375
  });
370
- it('should not allow dependent state to start if incomplete dependencies are skipped, but skipped are not ignored', () => {
371
- const TASKS = {
376
+
377
+ it('should not allow dependent state to start if incomplete dependencies are skipped, but skipped are not ignored', function () {
378
+ var TASKS = {
372
379
  'Alpha': {
373
380
  complete: true
374
381
  },
@@ -378,18 +385,17 @@ describe('components.FormRenderer.helpers.getUpdatedSectionStates', () => {
378
385
  },
379
386
  'Delta': {}
380
387
  };
381
- const RESULT = (0, _getUpdatedSectionStates.default)(SECTIONS, TASKS, NON_SEQUENTIAL);
388
+ var RESULT = (0, _getUpdatedSectionStates.default)(SECTIONS, TASKS, NON_SEQUENTIAL);
382
389
  expect(RESULT[1].tasks[0].state).toEqual(_models.TaskStates.TYPES.CANNOT_START_YET); // Charlie
383
390
  });
384
- it('should allow dependent state to start if incomplete dependencies are skipped, and skipped are ignored', () => {
385
- const SKIPPABLE_SECTIONS = [SECTIONS[0], {
386
- ...SECTIONS[1],
387
- tasks: [{
388
- ...SECTIONS[1].tasks[0],
391
+
392
+ it('should allow dependent state to start if incomplete dependencies are skipped, and skipped are ignored', function () {
393
+ var SKIPPABLE_SECTIONS = [SECTIONS[0], _objectSpread(_objectSpread({}, SECTIONS[1]), {}, {
394
+ tasks: [_objectSpread(_objectSpread({}, SECTIONS[1].tasks[0]), {}, {
389
395
  ignoreSkipped: true
390
- }]
391
- }, SECTIONS[2]];
392
- const TASKS = {
396
+ })]
397
+ }), SECTIONS[2]];
398
+ var TASKS = {
393
399
  'Alpha': {
394
400
  complete: true
395
401
  },
@@ -399,11 +405,12 @@ describe('components.FormRenderer.helpers.getUpdatedSectionStates', () => {
399
405
  },
400
406
  'Delta': {}
401
407
  };
402
- const RESULT = (0, _getUpdatedSectionStates.default)(SKIPPABLE_SECTIONS, TASKS, NON_SEQUENTIAL);
408
+ var RESULT = (0, _getUpdatedSectionStates.default)(SKIPPABLE_SECTIONS, TASKS, NON_SEQUENTIAL);
403
409
  expect(RESULT[1].tasks[0].state).toEqual(_models.TaskStates.TYPES.NOT_STARTED); // Charlie
404
410
  });
405
- it('should automatically skip tasks that are not shown', () => {
406
- const SHOW_WHEN_SECTIONS = [{
411
+
412
+ it('should automatically skip tasks that are not shown', function () {
413
+ var SHOW_WHEN_SECTIONS = [{
407
414
  name: 'First',
408
415
  tasks: [{
409
416
  name: 'Alpha'
@@ -431,7 +438,7 @@ describe('components.FormRenderer.helpers.getUpdatedSectionStates', () => {
431
438
  ignoreSkipped: true
432
439
  }]
433
440
  }];
434
- const TASKS = {
441
+ var TASKS = {
435
442
  'Alpha': {
436
443
  complete: true
437
444
  },
@@ -440,11 +447,11 @@ describe('components.FormRenderer.helpers.getUpdatedSectionStates', () => {
440
447
  },
441
448
  'Delta': {}
442
449
  };
443
- const DATA = {
450
+ var DATA = {
444
451
  echo: 'foxtrot',
445
452
  golf: 'hotel'
446
453
  };
447
- const RESULT = (0, _getUpdatedSectionStates.default)(SHOW_WHEN_SECTIONS, TASKS, NON_SEQUENTIAL, DATA);
454
+ var RESULT = (0, _getUpdatedSectionStates.default)(SHOW_WHEN_SECTIONS, TASKS, NON_SEQUENTIAL, DATA);
448
455
  expect(RESULT[2].tasks[0].state).toEqual(_models.TaskStates.TYPES.NOT_STARTED); // Charlie
449
456
  });
450
457
  });
@@ -13,10 +13,10 @@ var _getNextPageId = _interopRequireDefault(require("./getNextPageId"));
13
13
  var _getPage = _interopRequireDefault(require("./getPage"));
14
14
  var _getSubmissionStatus = _interopRequireDefault(require("./getSubmissionStatus"));
15
15
  var _getUpdatedSectionStates = _interopRequireDefault(require("./getUpdatedSectionStates"));
16
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
16
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
17
  // Local imports
18
18
 
19
- const helpers = {
19
+ var helpers = {
20
20
  canActionProceed: _canActionProceed.default,
21
21
  canCYASubmit: _canCYASubmit.default,
22
22
  cleanHiddenNestedData: _cleanHiddenNestedData.default,
@@ -5,5 +5,5 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var _FormRenderer = _interopRequireDefault(require("./FormRenderer"));
8
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
8
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
9
  var _default = exports.default = _FormRenderer.default;