@ukhomeoffice/cop-react-form-renderer 5.45.1 → 5.45.2-alpha

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 (350) hide show
  1. package/dist/components/CheckYourAnswers/Answer.js +12 -12
  2. package/dist/components/CheckYourAnswers/Answer.test.js +92 -127
  3. package/dist/components/CheckYourAnswers/CheckYourAnswers.js +101 -131
  4. package/dist/components/CheckYourAnswers/CheckYourAnswers.test.js +464 -769
  5. package/dist/components/CollectionPage/CollectionPage.js +66 -58
  6. package/dist/components/CollectionPage/CollectionPage.test.js +300 -342
  7. package/dist/components/CollectionSummary/BannerStrip.js +12 -12
  8. package/dist/components/CollectionSummary/BannerStrip.test.js +63 -59
  9. package/dist/components/CollectionSummary/CollectionSummary.js +60 -75
  10. package/dist/components/CollectionSummary/CollectionSummary.test.js +102 -96
  11. package/dist/components/CollectionSummary/Confirmation.js +14 -12
  12. package/dist/components/CollectionSummary/Confirmation.test.js +68 -63
  13. package/dist/components/CollectionSummary/SummaryCard.js +93 -133
  14. package/dist/components/CollectionSummary/SummaryCard.test.js +902 -924
  15. package/dist/components/CollectionSummary/SummaryCardValidationContext.js +23 -29
  16. package/dist/components/CollectionSummary/SummaryCardValidationContext.test.js +61 -73
  17. package/dist/components/FormComponent/Collection.js +73 -107
  18. package/dist/components/FormComponent/Collection.test.js +809 -945
  19. package/dist/components/FormComponent/Container.js +40 -38
  20. package/dist/components/FormComponent/Container.test.js +314 -345
  21. package/dist/components/FormComponent/FormComponent.js +67 -70
  22. package/dist/components/FormComponent/FormComponent.test.js +284 -342
  23. package/dist/components/FormComponent/helpers/addLabel.js +4 -7
  24. package/dist/components/FormComponent/helpers/getComponentDisabled.js +1 -1
  25. package/dist/components/FormComponent/helpers/getComponentDisabled.test.js +7 -7
  26. package/dist/components/FormComponent/helpers/getComponentError.js +3 -5
  27. package/dist/components/FormComponent/helpers/getComponentError.test.js +14 -14
  28. package/dist/components/FormComponent/helpers/getComponentFieldSet.js +3 -4
  29. package/dist/components/FormComponent/helpers/getComponentFieldSet.test.js +6 -6
  30. package/dist/components/FormComponent/helpers/index.js +4 -4
  31. package/dist/components/FormPage/FormPage.js +65 -80
  32. package/dist/components/FormPage/FormPage.test.js +127 -163
  33. package/dist/components/FormRenderer/FormRenderer.js +142 -178
  34. package/dist/components/FormRenderer/FormRenderer.test.js +730 -1115
  35. package/dist/components/FormRenderer/handlers/cyaAction.js +2 -2
  36. package/dist/components/FormRenderer/handlers/getPageId.js +1 -3
  37. package/dist/components/FormRenderer/handlers/getPageId.test.js +14 -14
  38. package/dist/components/FormRenderer/handlers/handlers.test.js +32 -32
  39. package/dist/components/FormRenderer/handlers/index.js +1 -1
  40. package/dist/components/FormRenderer/handlers/navigate.js +3 -3
  41. package/dist/components/FormRenderer/handlers/submissionError.js +1 -1
  42. package/dist/components/FormRenderer/helpers/canActionProceed.js +1 -1
  43. package/dist/components/FormRenderer/helpers/canActionProceed.test.js +9 -9
  44. package/dist/components/FormRenderer/helpers/canCYASubmit.js +1 -3
  45. package/dist/components/FormRenderer/helpers/canCYASubmit.test.js +16 -20
  46. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.js +17 -22
  47. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.test.js +16 -16
  48. package/dist/components/FormRenderer/helpers/getCYA.js +3 -5
  49. package/dist/components/FormRenderer/helpers/getCYA.test.js +11 -11
  50. package/dist/components/FormRenderer/helpers/getFormState.js +5 -7
  51. package/dist/components/FormRenderer/helpers/getFormState.test.js +10 -10
  52. package/dist/components/FormRenderer/helpers/getNextPageId.js +13 -24
  53. package/dist/components/FormRenderer/helpers/getNextPageId.test.js +67 -67
  54. package/dist/components/FormRenderer/helpers/getPage.js +2 -4
  55. package/dist/components/FormRenderer/helpers/getPage.test.js +11 -11
  56. package/dist/components/FormRenderer/helpers/getRelevantPages.js +7 -9
  57. package/dist/components/FormRenderer/helpers/getRelevantPages.test.js +14 -14
  58. package/dist/components/FormRenderer/helpers/getSubmissionStatus.js +5 -5
  59. package/dist/components/FormRenderer/helpers/getSubmissionStatus.test.js +97 -91
  60. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.js +62 -60
  61. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.test.js +71 -73
  62. package/dist/components/FormRenderer/helpers/index.js +1 -1
  63. package/dist/components/FormRenderer/onCYAAction.js +59 -51
  64. package/dist/components/FormRenderer/onCYAAction.test.js +164 -152
  65. package/dist/components/FormRenderer/onPageAction.js +43 -39
  66. package/dist/components/FormRenderer/onPageAction.test.js +223 -206
  67. package/dist/components/FormRenderer/onTaskAction.js +9 -13
  68. package/dist/components/FormRenderer/onTaskAction.test.js +93 -88
  69. package/dist/components/PageActions/ActionButton.js +12 -15
  70. package/dist/components/PageActions/ActionButton.test.js +56 -78
  71. package/dist/components/PageActions/PageActions.js +10 -10
  72. package/dist/components/PageActions/PageActions.test.js +86 -115
  73. package/dist/components/SummaryList/GroupAction.js +9 -17
  74. package/dist/components/SummaryList/GroupAction.test.js +37 -33
  75. package/dist/components/SummaryList/RowAction.js +11 -16
  76. package/dist/components/SummaryList/RowAction.test.js +37 -33
  77. package/dist/components/SummaryList/SummaryList.js +21 -26
  78. package/dist/components/SummaryList/SummaryList.test.js +143 -166
  79. package/dist/components/SummaryList/SummaryListHeadingRow.js +6 -4
  80. package/dist/components/SummaryList/SummaryListRow.js +6 -4
  81. package/dist/components/SummaryList/SummaryListTitleRow.js +5 -3
  82. package/dist/components/SummaryList/helpers/getGroupActionAttributes.js +3 -5
  83. package/dist/components/SummaryList/helpers/getGroupActionAttributes.test.js +22 -22
  84. package/dist/components/SummaryList/helpers/getRowActionAttributes.js +3 -5
  85. package/dist/components/SummaryList/helpers/getRowActionAttributes.test.js +22 -22
  86. package/dist/components/SummaryList/helpers/index.js +1 -1
  87. package/dist/components/TaskList/Task.js +19 -29
  88. package/dist/components/TaskList/Task.test.js +83 -76
  89. package/dist/components/TaskList/TaskList.js +45 -71
  90. package/dist/components/TaskList/TaskList.test.js +113 -111
  91. package/dist/components/TaskList/TaskState.js +7 -5
  92. package/dist/components/TaskList/TaskState.test.js +52 -45
  93. package/dist/components/index.js +7 -7
  94. package/dist/context/HooksContext/HooksContext.js +58 -79
  95. package/dist/context/HooksContext/HooksContext.test.js +26 -35
  96. package/dist/context/HooksContext/index.js +3 -4
  97. package/dist/context/ValidationContext/ValidationContext.js +32 -72
  98. package/dist/context/ValidationContext/ValidationContext.test.js +47 -59
  99. package/dist/context/ValidationContext/index.js +3 -4
  100. package/dist/context/index.js +2 -2
  101. package/dist/hooks/index.js +9 -10
  102. package/dist/hooks/useAxios.js +14 -40
  103. package/dist/hooks/useGetRequest.js +61 -97
  104. package/dist/hooks/useHooks.js +1 -3
  105. package/dist/hooks/useRefData.js +26 -39
  106. package/dist/hooks/useValidation.js +1 -3
  107. package/dist/index.js +13 -14
  108. package/dist/models/CollectionLabels.js +1 -1
  109. package/dist/models/ComponentTypes.js +25 -25
  110. package/dist/models/EventTypes.js +4 -4
  111. package/dist/models/FormPages.js +4 -4
  112. package/dist/models/FormTypes.js +8 -8
  113. package/dist/models/HubFormats.js +3 -3
  114. package/dist/models/PageAction.js +44 -38
  115. package/dist/models/TaskStates.js +30 -28
  116. package/dist/models/index.js +9 -9
  117. package/dist/setupTests.js +30 -31
  118. package/dist/utils/CheckYourAnswers/getCYAAction.js +5 -5
  119. package/dist/utils/CheckYourAnswers/getCYAAction.test.js +52 -54
  120. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.js +15 -25
  121. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.test.js +33 -35
  122. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.js +17 -31
  123. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.test.js +42 -44
  124. package/dist/utils/CheckYourAnswers/getCYARow.js +6 -6
  125. package/dist/utils/CheckYourAnswers/getCYARow.test.js +86 -86
  126. package/dist/utils/CheckYourAnswers/getCYARowForGroup.js +18 -24
  127. package/dist/utils/CheckYourAnswers/getCYARowForGroup.test.js +15 -16
  128. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.js +33 -36
  129. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.test.js +58 -60
  130. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.js +79 -88
  131. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.test.js +146 -124
  132. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.js +25 -20
  133. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.test.js +103 -97
  134. package/dist/utils/CheckYourAnswers/getCYARowsForPage.js +13 -18
  135. package/dist/utils/CheckYourAnswers/getCYARowsForPage.test.js +70 -76
  136. package/dist/utils/CheckYourAnswers/index.js +1 -1
  137. package/dist/utils/CheckYourAnswers/showComponentCYA.js +4 -4
  138. package/dist/utils/CheckYourAnswers/showComponentCYA.test.js +24 -24
  139. package/dist/utils/CollectionPage/addCollectionPageEntry.js +1 -1
  140. package/dist/utils/CollectionPage/addCollectionPageEntry.test.js +5 -5
  141. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.js +2 -2
  142. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.test.js +17 -17
  143. package/dist/utils/CollectionPage/duplicateCollectionPageEntry.js +9 -18
  144. package/dist/utils/CollectionPage/duplicateCollectionPageEntry.test.js +27 -22
  145. package/dist/utils/CollectionPage/getCollectionPageActiveId.js +2 -2
  146. package/dist/utils/CollectionPage/getCollectionPageActiveId.test.js +10 -10
  147. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.js +7 -11
  148. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.test.js +22 -22
  149. package/dist/utils/CollectionPage/getCollectionPageData.js +8 -12
  150. package/dist/utils/CollectionPage/getCollectionPageData.test.js +19 -19
  151. package/dist/utils/CollectionPage/getQuickEditPage.js +19 -19
  152. package/dist/utils/CollectionPage/getQuickEditPage.test.js +12 -16
  153. package/dist/utils/CollectionPage/index.js +1 -1
  154. package/dist/utils/CollectionPage/mergeCollectionPages.js +29 -30
  155. package/dist/utils/CollectionPage/mergeCollectionPages.test.js +17 -17
  156. package/dist/utils/CollectionPage/removeCollectionPageEntry.js +4 -6
  157. package/dist/utils/CollectionPage/removeCollectionPageEntry.test.js +10 -10
  158. package/dist/utils/CollectionPage/setCollectionPageData.js +8 -12
  159. package/dist/utils/CollectionPage/setCollectionPageData.test.js +17 -17
  160. package/dist/utils/Component/addShowWhen.js +4 -8
  161. package/dist/utils/Component/addShowWhen.test.js +37 -37
  162. package/dist/utils/Component/applyToComponentTree.js +18 -18
  163. package/dist/utils/Component/applyToComponentTree.test.js +27 -32
  164. package/dist/utils/Component/cleanAttributes.js +10 -13
  165. package/dist/utils/Component/cleanAttributes.test.js +17 -18
  166. package/dist/utils/Component/elevateNestedComponents.js +5 -5
  167. package/dist/utils/Component/elevateNestedComponents.test.js +30 -30
  168. package/dist/utils/Component/getComponent.js +88 -94
  169. package/dist/utils/Component/getComponentTests/getComponent.autocomplete.test.js +18 -17
  170. package/dist/utils/Component/getComponentTests/getComponent.calculation.test.js +46 -59
  171. package/dist/utils/Component/getComponentTests/getComponent.checkboxes.test.js +39 -48
  172. package/dist/utils/Component/getComponentTests/getComponent.date.test.js +23 -33
  173. package/dist/utils/Component/getComponentTests/getComponent.details.test.js +20 -18
  174. package/dist/utils/Component/getComponentTests/getComponent.email.test.js +17 -22
  175. package/dist/utils/Component/getComponentTests/getComponent.file.test.js +20 -25
  176. package/dist/utils/Component/getComponentTests/getComponent.heading.test.js +10 -9
  177. package/dist/utils/Component/getComponentTests/getComponent.html.test.js +17 -15
  178. package/dist/utils/Component/getComponentTests/getComponent.insetText.test.js +9 -8
  179. package/dist/utils/Component/getComponentTests/getComponent.list.test.js +17 -15
  180. package/dist/utils/Component/getComponentTests/getComponent.multifile.test.js +22 -26
  181. package/dist/utils/Component/getComponentTests/getComponent.nested.test.js +155 -175
  182. package/dist/utils/Component/getComponentTests/getComponent.paragraph.test.js +17 -15
  183. package/dist/utils/Component/getComponentTests/getComponent.phoneNumber.test.js +17 -22
  184. package/dist/utils/Component/getComponentTests/getComponent.radios.test.js +57 -70
  185. package/dist/utils/Component/getComponentTests/getComponent.select.test.js +17 -22
  186. package/dist/utils/Component/getComponentTests/getComponent.text.test.js +17 -22
  187. package/dist/utils/Component/getComponentTests/getComponent.textArea.test.js +31 -38
  188. package/dist/utils/Component/getComponentTests/getComponent.time.test.js +20 -29
  189. package/dist/utils/Component/getComponentTests/getComponent.unknown.test.js +2 -2
  190. package/dist/utils/Component/getComponentTests/getComponent.warningText.test.js +9 -8
  191. package/dist/utils/Component/getDefaultValue.js +6 -8
  192. package/dist/utils/Component/getDefaultValue.test.js +12 -12
  193. package/dist/utils/Component/getDefaultValueFromConfig.js +22 -21
  194. package/dist/utils/Component/getDefaultValueFromConfig.test.js +31 -31
  195. package/dist/utils/Component/index.js +1 -1
  196. package/dist/utils/Component/isEditable.js +2 -4
  197. package/dist/utils/Component/isEditable.test.js +14 -15
  198. package/dist/utils/Component/optionIsSelected.js +1 -1
  199. package/dist/utils/Component/optionIsSelected.test.js +9 -9
  200. package/dist/utils/Component/setupContainerComponentsPath.js +27 -29
  201. package/dist/utils/Component/setupContainerComponentsPath.test.js +11 -11
  202. package/dist/utils/Component/showComponent.js +1 -1
  203. package/dist/utils/Component/showComponent.test.js +28 -28
  204. package/dist/utils/Component/wrapInFormGroup.js +2 -2
  205. package/dist/utils/Condition/index.js +1 -1
  206. package/dist/utils/Condition/meetsAllConditions.js +7 -7
  207. package/dist/utils/Condition/meetsAllConditions.test.js +17 -17
  208. package/dist/utils/Condition/meetsCondition.js +14 -17
  209. package/dist/utils/Condition/meetsCondition.test.js +376 -376
  210. package/dist/utils/Condition/meetsOneCondition.js +5 -5
  211. package/dist/utils/Condition/meetsOneCondition.test.js +16 -16
  212. package/dist/utils/Condition/setupConditions.js +13 -18
  213. package/dist/utils/Condition/setupConditions.test.js +7 -7
  214. package/dist/utils/Container/getEditableComponents.js +3 -5
  215. package/dist/utils/Container/getEditableComponents.test.js +43 -45
  216. package/dist/utils/Container/index.js +1 -1
  217. package/dist/utils/Container/setupNesting.js +16 -20
  218. package/dist/utils/Container/setupNesting.test.js +27 -30
  219. package/dist/utils/Container/showContainer.js +3 -7
  220. package/dist/utils/Container/showContainer.test.js +30 -30
  221. package/dist/utils/Data/applyFormula.js +38 -48
  222. package/dist/utils/Data/applyFormula.test.js +20 -20
  223. package/dist/utils/Data/getAutocompleteSource.js +18 -26
  224. package/dist/utils/Data/getAutocompleteSource.test.js +80 -86
  225. package/dist/utils/Data/getDataPath.js +18 -28
  226. package/dist/utils/Data/getDataPath.test.js +12 -12
  227. package/dist/utils/Data/getOptions.js +19 -25
  228. package/dist/utils/Data/getOptions.test.js +20 -20
  229. package/dist/utils/Data/getSourceData.js +6 -19
  230. package/dist/utils/Data/getSourceData.test.js +84 -80
  231. package/dist/utils/Data/index.js +1 -1
  232. package/dist/utils/Data/refDataToOptions.js +10 -13
  233. package/dist/utils/Data/refDataToOptions.test.js +19 -19
  234. package/dist/utils/Data/setDataItem.js +7 -8
  235. package/dist/utils/Data/setDataItem.test.js +37 -37
  236. package/dist/utils/Data/setupFormData.js +13 -21
  237. package/dist/utils/Data/setupFormData.test.js +51 -50
  238. package/dist/utils/Data/setupRefDataUrlForComponent.js +20 -26
  239. package/dist/utils/Data/setupRefDataUrlForComponent.test.js +24 -24
  240. package/dist/utils/FormPage/applyConditionalProperties.js +5 -9
  241. package/dist/utils/FormPage/applyConditionalProperties.test.js +15 -18
  242. package/dist/utils/FormPage/getFormPage.js +15 -16
  243. package/dist/utils/FormPage/getFormPage.test.js +47 -46
  244. package/dist/utils/FormPage/getFormPages.js +7 -12
  245. package/dist/utils/FormPage/getFormPages.test.js +20 -23
  246. package/dist/utils/FormPage/getPageActions.js +9 -15
  247. package/dist/utils/FormPage/getPageActions.test.js +32 -32
  248. package/dist/utils/FormPage/getPageTitle.js +2 -2
  249. package/dist/utils/FormPage/getPageTitle.test.js +22 -22
  250. package/dist/utils/FormPage/getParagraphFromText.js +5 -7
  251. package/dist/utils/FormPage/getParagraphFromText.test.js +6 -6
  252. package/dist/utils/FormPage/index.js +1 -1
  253. package/dist/utils/FormPage/showFormPage.js +3 -7
  254. package/dist/utils/FormPage/showFormPage.test.js +32 -32
  255. package/dist/utils/FormPage/showFormPageCYA.js +1 -1
  256. package/dist/utils/FormPage/showFormPageCYA.test.js +8 -8
  257. package/dist/utils/FormPage/useComponent.js +21 -28
  258. package/dist/utils/FormPage/useComponent.test.js +78 -79
  259. package/dist/utils/Format/formatData.js +1 -1
  260. package/dist/utils/Format/formatData.test.js +18 -18
  261. package/dist/utils/Format/formatDataForComponent.js +5 -6
  262. package/dist/utils/Format/formatDataForComponent.test.js +50 -77
  263. package/dist/utils/Format/formatDataForForm.js +6 -8
  264. package/dist/utils/Format/formatDataForForm.test.js +13 -15
  265. package/dist/utils/Format/formatDataForPage.js +4 -5
  266. package/dist/utils/Format/formatDataForPage.test.js +20 -23
  267. package/dist/utils/Format/index.js +1 -1
  268. package/dist/utils/Hub/getFormHub.js +1 -1
  269. package/dist/utils/Hub/getFormHub.test.js +28 -31
  270. package/dist/utils/Hub/index.js +1 -1
  271. package/dist/utils/Meta/constants.js +2 -2
  272. package/dist/utils/Meta/documents/getDocuments.js +1 -1
  273. package/dist/utils/Meta/documents/getDocuments.test.js +24 -16
  274. package/dist/utils/Meta/documents/index.js +1 -1
  275. package/dist/utils/Meta/documents/setDocumentsForField.js +14 -16
  276. package/dist/utils/Meta/documents/setDocumentsForField.test.js +68 -34
  277. package/dist/utils/Meta/index.js +1 -1
  278. package/dist/utils/Operate/checkValueIsTruthy.js +2 -2
  279. package/dist/utils/Operate/checkValueIsTruthy.test.js +16 -16
  280. package/dist/utils/Operate/getFirstOf.js +5 -5
  281. package/dist/utils/Operate/getFirstOf.test.js +31 -31
  282. package/dist/utils/Operate/getIndexOfMatchingValueIn.js +10 -10
  283. package/dist/utils/Operate/getIndexOfMatchingValueIn.test.js +46 -46
  284. package/dist/utils/Operate/index.js +1 -1
  285. package/dist/utils/Operate/persistValueInFormData.js +3 -3
  286. package/dist/utils/Operate/persistValueInFormData.test.js +22 -20
  287. package/dist/utils/Operate/runPageOperations.js +7 -7
  288. package/dist/utils/Operate/runPageOperations.test.js +35 -36
  289. package/dist/utils/Operate/setValueInFormData.js +2 -2
  290. package/dist/utils/Operate/setValueInFormData.test.js +16 -16
  291. package/dist/utils/Operate/shouldRun.js +6 -6
  292. package/dist/utils/Operate/shouldRun.test.js +21 -26
  293. package/dist/utils/Validate/additional/conditionallyRequired.js +4 -4
  294. package/dist/utils/Validate/additional/conditionallyRequired.test.js +18 -18
  295. package/dist/utils/Validate/additional/index.js +6 -6
  296. package/dist/utils/Validate/additional/index.test.js +12 -12
  297. package/dist/utils/Validate/additional/mustBeAfter.js +2 -2
  298. package/dist/utils/Validate/additional/mustBeAfter.test.js +40 -40
  299. package/dist/utils/Validate/additional/mustBeBefore.js +2 -2
  300. package/dist/utils/Validate/additional/mustBeBefore.test.js +28 -28
  301. package/dist/utils/Validate/additional/mustBeEarlierDateTime.js +7 -11
  302. package/dist/utils/Validate/additional/mustBeEarlierDateTime.test.js +37 -41
  303. package/dist/utils/Validate/additional/mustBeGreaterThan.js +2 -2
  304. package/dist/utils/Validate/additional/mustBeGreaterThan.test.js +18 -18
  305. package/dist/utils/Validate/additional/mustBeInTheFuture.js +2 -2
  306. package/dist/utils/Validate/additional/mustBeInTheFuture.test.js +12 -12
  307. package/dist/utils/Validate/additional/mustBeInThePast.js +3 -3
  308. package/dist/utils/Validate/additional/mustBeInThePast.test.js +12 -12
  309. package/dist/utils/Validate/additional/mustBeLessThan.js +2 -2
  310. package/dist/utils/Validate/additional/mustBeLessThan.test.js +17 -17
  311. package/dist/utils/Validate/additional/mustBeLongerThan.js +1 -1
  312. package/dist/utils/Validate/additional/mustBeLongerThan.test.js +16 -16
  313. package/dist/utils/Validate/additional/mustBeNumbersOnly.js +2 -2
  314. package/dist/utils/Validate/additional/mustBeNumbersOnly.test.js +20 -20
  315. package/dist/utils/Validate/additional/mustBeShorterThan.js +1 -1
  316. package/dist/utils/Validate/additional/mustBeShorterThan.test.js +16 -16
  317. package/dist/utils/Validate/additional/mustEnterAtLeastOne.js +2 -2
  318. package/dist/utils/Validate/additional/mustEnterAtLeastOne.test.js +14 -16
  319. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.js +1 -1
  320. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.test.js +12 -12
  321. package/dist/utils/Validate/additional/mustNotContainSql.js +3 -4
  322. package/dist/utils/Validate/additional/mustNotContainSql.test.js +14 -14
  323. package/dist/utils/Validate/additional/mustSelectOnlyOne.js +2 -2
  324. package/dist/utils/Validate/additional/mustSelectOnlyOne.test.js +28 -26
  325. package/dist/utils/Validate/additional/utils.js +9 -22
  326. package/dist/utils/Validate/index.js +1 -1
  327. package/dist/utils/Validate/validateCollection.js +19 -25
  328. package/dist/utils/Validate/validateCollection.test.js +74 -66
  329. package/dist/utils/Validate/validateComponent.js +17 -15
  330. package/dist/utils/Validate/validateComponent.test.js +167 -146
  331. package/dist/utils/Validate/validateContainer.js +14 -19
  332. package/dist/utils/Validate/validateContainer.test.js +49 -45
  333. package/dist/utils/Validate/validateDate.js +11 -17
  334. package/dist/utils/Validate/validateDate.test.js +28 -29
  335. package/dist/utils/Validate/validateEmail.js +6 -8
  336. package/dist/utils/Validate/validateEmail.test.js +25 -25
  337. package/dist/utils/Validate/validateMultifile.js +5 -7
  338. package/dist/utils/Validate/validateMultifile.test.js +17 -18
  339. package/dist/utils/Validate/validatePage.js +17 -18
  340. package/dist/utils/Validate/validatePage.test.js +185 -182
  341. package/dist/utils/Validate/validateRegex.js +3 -5
  342. package/dist/utils/Validate/validateRegex.test.js +14 -14
  343. package/dist/utils/Validate/validateRequired.js +4 -6
  344. package/dist/utils/Validate/validateRequired.test.js +18 -18
  345. package/dist/utils/Validate/validateTextArea.js +4 -6
  346. package/dist/utils/Validate/validateTextArea.test.js +20 -20
  347. package/dist/utils/Validate/validateTime.js +7 -14
  348. package/dist/utils/Validate/validateTime.test.js +14 -14
  349. package/dist/utils/index.js +7 -9
  350. package/package.json +1 -1
@@ -1,6 +1,5 @@
1
1
  "use strict";
2
2
 
3
- 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); }
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
@@ -20,47 +19,35 @@ var _handlers = _interopRequireDefault(require("./handlers"));
20
19
  var _helpers = _interopRequireDefault(require("./helpers"));
21
20
  var _onCYAAction = _interopRequireDefault(require("./onCYAAction"));
22
21
  var _onPageAction = _interopRequireDefault(require("./onPageAction"));
23
- var _onTaskAction2 = _interopRequireDefault(require("./onTaskAction"));
22
+ var _onTaskAction = _interopRequireDefault(require("./onTaskAction"));
24
23
  require("./FormRenderer.scss");
25
- var _excluded = ["noTaskCYAs", "nonSequential"];
26
24
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
27
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
28
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
29
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
30
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
31
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
32
- 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; }
33
- 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; }
34
- 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; }
35
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
36
- 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); }
37
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
38
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
39
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
40
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
41
- function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
42
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } /* eslint-disable no-shadow */ // Global imports
25
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
26
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
27
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } /* eslint-disable no-shadow */ // Global imports
43
28
  // Local imports
44
29
  // Styles
45
- var FormRenderer = function FormRenderer(_ref) {
46
- var title = _ref.title,
47
- type = _ref.type,
48
- components = _ref.components,
49
- pages = _ref.pages,
50
- hub = _ref.hub,
51
- cya = _ref.cya,
52
- data = _ref.data,
53
- hashLink = _ref.hashLink,
54
- hooks = _ref.hooks,
55
- classBlock = _ref.classBlock,
56
- classModifiers = _ref.classModifiers,
57
- className = _ref.className,
58
- hideTitle = _ref.hide_title,
59
- summaryListClassModifiers = _ref.summaryListClassModifiers,
60
- noChangeAction = _ref.noChangeAction,
61
- newPageId = _ref.newPageId,
62
- viewOnly = _ref.viewOnly,
63
- hideBlankRows = _ref.hideBlankRows;
30
+ const FormRenderer = _ref => {
31
+ let {
32
+ title,
33
+ type,
34
+ components,
35
+ pages,
36
+ hub,
37
+ cya,
38
+ data,
39
+ hashLink,
40
+ hooks,
41
+ classBlock,
42
+ classModifiers,
43
+ className,
44
+ hide_title: hideTitle,
45
+ summaryListClassModifiers,
46
+ noChangeAction,
47
+ newPageId,
48
+ viewOnly,
49
+ hideBlankRows
50
+ } = _ref;
64
51
  return /*#__PURE__*/_react.default.createElement(_context.HooksContextProvider, {
65
52
  overrides: hooks
66
53
  }, /*#__PURE__*/_react.default.createElement(_context.ValidationContextProvider, null, /*#__PURE__*/_react.default.createElement(InternalFormRenderer, {
@@ -83,110 +70,85 @@ var FormRenderer = function FormRenderer(_ref) {
83
70
  hideBlankRows: hideBlankRows
84
71
  })));
85
72
  };
86
- var DEFAULT_CLASS = exports.DEFAULT_CLASS = 'hods-form';
87
- var InternalFormRenderer = function InternalFormRenderer(_ref2) {
73
+ const DEFAULT_CLASS = exports.DEFAULT_CLASS = 'hods-form';
74
+ const InternalFormRenderer = _ref2 => {
88
75
  var _formState$page4, _formState$page$actio, _formState$cya$hideCh, _formState$cya$hideGr;
89
- var title = _ref2.title,
90
- type = _ref2.type,
91
- components = _ref2.components,
92
- _pages = _ref2.pages,
93
- _hub = _ref2.hub,
94
- cya = _ref2.cya,
95
- _data = _ref2.data,
96
- classBlock = _ref2.classBlock,
97
- classModifiers = _ref2.classModifiers,
98
- className = _ref2.className,
99
- hashLink = _ref2.hashLink,
100
- hideTitle = _ref2.hide_title,
101
- summaryListClassModifiers = _ref2.summaryListClassModifiers,
102
- noChangeAction = _ref2.noChangeAction,
103
- newPageId = _ref2.newPageId,
104
- viewOnly = _ref2.viewOnly,
105
- hideBlankRows = _ref2.hideBlankRows;
76
+ let {
77
+ title,
78
+ type,
79
+ components,
80
+ pages: _pages,
81
+ hub: _hub,
82
+ cya,
83
+ data: _data,
84
+ classBlock,
85
+ classModifiers,
86
+ className,
87
+ hashLink,
88
+ hide_title: hideTitle,
89
+ summaryListClassModifiers,
90
+ noChangeAction,
91
+ newPageId,
92
+ viewOnly,
93
+ hideBlankRows
94
+ } = _ref2;
106
95
  // Set up the initial states.
107
- var _useState = (0, _react.useState)({}),
108
- _useState2 = _slicedToArray(_useState, 2),
109
- data = _useState2[0],
110
- setData = _useState2[1];
111
- var _useState3 = (0, _react.useState)(),
112
- _useState4 = _slicedToArray(_useState3, 2),
113
- submitted = _useState4[0],
114
- setSubmitted = _useState4[1];
115
- var _useState5 = (0, _react.useState)([]),
116
- _useState6 = _slicedToArray(_useState5, 2),
117
- pages = _useState6[0],
118
- setPages = _useState6[1];
119
- var _useState7 = (0, _react.useState)(undefined),
120
- _useState8 = _slicedToArray(_useState7, 2),
121
- hub = _useState8[0],
122
- setHub = _useState8[1];
123
- var _useState9 = (0, _react.useState)(_helpers.default.getNextPageId(type, _pages, null, null, _data)),
124
- _useState10 = _slicedToArray(_useState9, 2),
125
- pageId = _useState10[0],
126
- setPageId = _useState10[1];
127
- var _useState11 = (0, _react.useState)(_helpers.default.getFormState(pageId, pages, hub)),
128
- _useState12 = _slicedToArray(_useState11, 2),
129
- formState = _useState12[0],
130
- setFormState = _useState12[1];
131
- var _useState13 = (0, _react.useState)({}),
132
- _useState14 = _slicedToArray(_useState13, 2),
133
- currentTask = _useState14[0],
134
- setCurrentTask = _useState14[1];
135
- var _useState15 = (0, _react.useState)({}),
136
- _useState16 = _slicedToArray(_useState15, 2),
137
- hubDetails = _useState16[0],
138
- setHubDetails = _useState16[1];
139
- var _useState17 = (0, _react.useState)('load'),
140
- _useState18 = _slicedToArray(_useState17, 2),
141
- pagePoint = _useState18[0],
142
- setPagePoint = _useState18[1];
143
- var _useState19 = (0, _react.useState)(false),
144
- _useState20 = _slicedToArray(_useState19, 2),
145
- goingBack = _useState20[0],
146
- setGoingBack = _useState20[1];
147
- var _useState21 = (0, _react.useState)(false),
148
- _useState22 = _slicedToArray(_useState21, 2),
149
- submitting = _useState22[0],
150
- setSubmitting = _useState22[1];
96
+ const [data, setData] = (0, _react.useState)({});
97
+ const [submitted, setSubmitted] = (0, _react.useState)();
98
+ const [pages, setPages] = (0, _react.useState)([]);
99
+ const [hub, setHub] = (0, _react.useState)(undefined);
100
+ const [pageId, setPageId] = (0, _react.useState)(_helpers.default.getNextPageId(type, _pages, null, null, _data));
101
+ const [formState, setFormState] = (0, _react.useState)(_helpers.default.getFormState(pageId, pages, hub));
102
+ const [currentTask, setCurrentTask] = (0, _react.useState)({});
103
+ const [hubDetails, setHubDetails] = (0, _react.useState)({});
104
+ const [pagePoint, setPagePoint] = (0, _react.useState)('load');
105
+ const [goingBack, setGoingBack] = (0, _react.useState)(false);
106
+ const [submitting, setSubmitting] = (0, _react.useState)(false);
151
107
 
152
108
  // Set up hooks.
153
- var _useHooks = (0, _hooks.useHooks)(),
154
- hooks = _useHooks.hooks;
109
+ const {
110
+ hooks
111
+ } = (0, _hooks.useHooks)();
155
112
 
156
113
  // Set up the useValidation hook.
157
- var _useValidation = (0, _hooks.useValidation)(),
158
- addErrors = _useValidation.addErrors,
159
- clearErrors = _useValidation.clearErrors,
160
- validate = _useValidation.validate;
114
+ const {
115
+ addErrors,
116
+ clearErrors,
117
+ validate
118
+ } = (0, _hooks.useValidation)();
161
119
 
162
120
  // Need to set submission data when going back
163
- window.onpopstate = function (e) {
121
+ window.onpopstate = e => {
164
122
  var _formState$page;
165
123
  if (document.location.hash) {
166
124
  return;
167
125
  }
168
126
  if (e.state && e.state.fullPages !== undefined) {
169
- setCurrentTask(function (prev) {
127
+ setCurrentTask(prev => {
170
128
  var _e$state;
171
- return _objectSpread(_objectSpread({}, prev), {}, {
129
+ return {
130
+ ...prev,
172
131
  fullPages: (_e$state = e.state) === null || _e$state === void 0 ? void 0 : _e$state.fullPages
173
- });
132
+ };
174
133
  });
175
134
  }
176
135
  setGoingBack(true);
177
136
  hooks.onGoingBack(e.state ? e.state : null);
178
137
  clearErrors();
179
138
  if (components && pages && data && (_formState$page = formState.page) !== null && _formState$page !== void 0 && _formState$page.formData && pagePoint === undefined) {
180
- var submissionData = _utils.default.Format.form({
181
- pages: pages,
182
- components: components
183
- }, _objectSpread(_objectSpread({}, data), formState.page.formData), _models.EventTypes.SUBMIT);
139
+ const submissionData = _utils.default.Format.form({
140
+ pages,
141
+ components
142
+ }, {
143
+ ...data,
144
+ ...formState.page.formData
145
+ }, _models.EventTypes.SUBMIT);
184
146
  setData(submissionData);
185
147
  }
186
148
  };
187
149
 
188
150
  // Setup data.
189
- (0, _react.useEffect)(function () {
151
+ (0, _react.useEffect)(() => {
190
152
  if (components && _pages && _data && (pagePoint === 'load' || viewOnly)) {
191
153
  var _data$formStatus;
192
154
  setData(_utils.default.Data.setupForm(_pages, components, _data));
@@ -197,95 +159,97 @@ var InternalFormRenderer = function InternalFormRenderer(_ref2) {
197
159
  }, [components, _pages, _data, setData, pagePoint, viewOnly]);
198
160
 
199
161
  // Setup pages.
200
- (0, _react.useEffect)(function () {
201
- setPages(_utils.default.FormPage.getAll(_pages, components, _objectSpread({}, data)));
162
+ (0, _react.useEffect)(() => {
163
+ setPages(_utils.default.FormPage.getAll(_pages, components, {
164
+ ...data
165
+ }));
202
166
  }, [components, _pages, data, setPages]);
203
167
 
204
168
  // Setup initial pageId.
205
- (0, _react.useEffect)(function () {
206
- setPageId(function (prev) {
207
- return prev || _helpers.default.getNextPageId(type, pages);
208
- });
169
+ (0, _react.useEffect)(() => {
170
+ setPageId(prev => prev || _helpers.default.getNextPageId(type, pages));
209
171
  }, [type, pages, setPageId]);
210
172
 
211
173
  // Setup hub.
212
- (0, _react.useEffect)(function () {
213
- setHub(_utils.default.Hub.get(type, _hub, components, _objectSpread({}, data)));
174
+ (0, _react.useEffect)(() => {
175
+ setHub(_utils.default.Hub.get(type, _hub, components, {
176
+ ...data
177
+ }));
214
178
  }, [type, _hub, data, components, setHub]);
215
179
 
216
180
  // Form state.
217
- (0, _react.useEffect)(function () {
181
+ (0, _react.useEffect)(() => {
218
182
  var _formState$page2;
219
183
  // revert formData changes if going back in hub-and-spoke
220
184
  if (type === _models.FormTypes.HUB && goingBack && data && (_formState$page2 = formState.page) !== null && _formState$page2 !== void 0 && _formState$page2.formData) {
221
- formState.page.formData = _objectSpread({}, data);
185
+ formState.page.formData = {
186
+ ...data
187
+ };
222
188
  }
223
189
  setGoingBack(false);
224
190
  setFormState(_helpers.default.getFormState(pageId, pages, hub));
225
191
  }, [pages, hub, pageId, setFormState, type, goingBack, data, formState.page]);
226
192
 
227
193
  // Call the onFormLoad hook just when this component first renders.
228
- (0, _react.useEffect)(function () {
194
+ (0, _react.useEffect)(() => {
229
195
  setPagePoint(undefined);
230
196
  // In case of refresh the current task needs to be reset
231
- hooks.onFormLoad(function (currentTask) {
197
+ hooks.onFormLoad(currentTask => {
232
198
  setCurrentTask(currentTask);
233
199
  });
234
200
  }, [hooks]);
235
- (0, _react.useEffect)(function () {
201
+ (0, _react.useEffect)(() => {
236
202
  setHubDetails(_hub);
237
203
  }, [_hub]);
238
204
 
239
205
  // Calling setData directly within the hooks.onSubmit success handler
240
206
  // resulted in a synchronisation error. Handling it in a useEffect appears
241
207
  // to be the way to deal with this... and it certainly seems to work.
242
- (0, _react.useEffect)(function () {
208
+ (0, _react.useEffect)(() => {
243
209
  if (submitted !== null && submitted !== void 0 && submitted.data) {
244
210
  setData(submitted.data);
245
211
  setSubmitted(undefined);
246
212
  }
247
213
  }, [submitted, setData, setSubmitted]);
248
- var theSections = _hub === null || _hub === void 0 ? void 0 : _hub.sections;
249
- var nonSequential = _hub === null || _hub === void 0 ? void 0 : _hub.nonSequential;
214
+ const theSections = _hub === null || _hub === void 0 ? void 0 : _hub.sections;
215
+ const nonSequential = _hub === null || _hub === void 0 ? void 0 : _hub.nonSequential;
250
216
  // Update task list pages with form data and update states
251
- (0, _react.useEffect)(function () {
252
- var pages = currentTask.fullPages;
217
+ (0, _react.useEffect)(() => {
218
+ const pages = currentTask.fullPages;
253
219
  if (pages) {
254
- pages.forEach(function (page) {
255
- var p = page;
220
+ pages.forEach(page => {
221
+ const p = page;
256
222
  if (p) {
257
223
  p.formData = data;
258
224
  }
259
225
  });
260
- setCurrentTask(function (prev) {
261
- return _objectSpread(_objectSpread({}, prev), {}, {
262
- fullPages: pages
263
- });
264
- });
226
+ setCurrentTask(prev => ({
227
+ ...prev,
228
+ fullPages: pages
229
+ }));
265
230
  }
266
231
  if (theSections) {
267
232
  var _data$formStatus2;
268
- var tasks = (data === null || data === void 0 || (_data$formStatus2 = data.formStatus) === null || _data$formStatus2 === void 0 ? void 0 : _data$formStatus2.tasks) || {};
269
- var updatedSections = _helpers.default.getUpdatedSectionStates(theSections, tasks, nonSequential, data);
270
- setHubDetails(function (prev) {
271
- return _objectSpread(_objectSpread({}, prev), {}, {
272
- sections: [].concat(updatedSections)
273
- });
274
- });
233
+ const tasks = (data === null || data === void 0 || (_data$formStatus2 = data.formStatus) === null || _data$formStatus2 === void 0 ? void 0 : _data$formStatus2.tasks) || {};
234
+ const updatedSections = _helpers.default.getUpdatedSectionStates(theSections, tasks, nonSequential, data);
235
+ setHubDetails(prev => ({
236
+ ...prev,
237
+ sections: [].concat(updatedSections)
238
+ }));
275
239
  }
276
240
  }, [currentTask.fullPages, data, theSections, nonSequential]);
277
- var onPageChange = function onPageChange(newPageId) {
278
- var state = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
241
+ const onPageChange = function (newPageId) {
242
+ let state = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
279
243
  clearErrors();
280
244
  setPageId(newPageId);
281
245
  hooks.onPageChange(newPageId, state);
282
246
  };
283
- (0, _react.useEffect)(function () {
247
+ (0, _react.useEffect)(() => {
284
248
  if (newPageId !== undefined) setPageId(newPageId);
285
249
  }, [newPageId]);
286
250
 
287
251
  // Handle change to form data in pages.
288
- var onChange = function onChange(data) {
252
+ const onChange = data => {
289
253
  hooks.onChange(data);
290
254
  };
291
255
 
@@ -293,49 +257,49 @@ var InternalFormRenderer = function InternalFormRenderer(_ref2) {
293
257
  // Passing a dataCallback allows changes to formData from the
294
258
  // CYA screen. This is necessary to allow changing the active
295
259
  // entry in page collections.
296
- var onCYARowAction = function onCYARowAction(page, dataCallback) {
260
+ const onCYARowAction = (page, dataCallback) => {
297
261
  var _formState$page3;
298
262
  if (typeof dataCallback === 'function') {
299
- var newData = dataCallback(_objectSpread({}, data));
263
+ const newData = dataCallback({
264
+ ...data
265
+ });
300
266
  if (newData) {
301
267
  setData(newData);
302
268
  }
303
269
  }
304
270
  if (((_formState$page3 = formState.page) === null || _formState$page3 === void 0 ? void 0 : _formState$page3.type) === _models.FormPages.PARTIAL_CYA) {
305
- hubDetails.sections.every(function (section) {
306
- return section.tasks.every(function (task) {
307
- if (task.pages.includes(page.pageId) && task.name !== currentTask.name) {
308
- (0, _onTaskAction2.default)(task, pages, setCurrentTask, hubDetails, data, onPageChange);
309
- return false;
310
- }
311
- return true;
312
- });
313
- });
271
+ hubDetails.sections.every(section => section.tasks.every(task => {
272
+ if (task.pages.includes(page.pageId) && task.name !== currentTask.name) {
273
+ (0, _onTaskAction.default)(task, pages, setCurrentTask, hubDetails, data, onPageChange);
274
+ return false;
275
+ }
276
+ return true;
277
+ }));
314
278
  }
315
279
  if (page) {
316
280
  _handlers.default.cyaAction(page, pageId, onPageChange);
317
281
  }
318
282
  };
319
- var classes = _utils.default.classBuilder(classBlock, classModifiers, className);
283
+ const classes = _utils.default.classBuilder(classBlock, classModifiers, className);
320
284
  if (hub === _models.HubFormats.TASK) {
321
- var currentCYA = cya;
285
+ const currentCYA = cya;
322
286
  currentCYA.actions = [_models.PageAction.TYPES.SAVE_AND_CONTINUE, _models.PageAction.TYPES.SAVE_AND_RETURN];
323
287
  }
324
288
 
325
289
  // filter out invalid attribs
326
- var _noCYA = hubDetails.noTaskCYAs,
327
- _nonSeq = hubDetails.nonSequential,
328
- taskDetails = _objectWithoutProperties(hubDetails, _excluded);
290
+ const {
291
+ noTaskCYAs: _noCYA,
292
+ nonSequential: _nonSeq,
293
+ ...taskDetails
294
+ } = hubDetails;
329
295
  return /*#__PURE__*/_react.default.createElement("div", {
330
296
  className: classes()
331
297
  }, title && !hideTitle && pageId === _models.FormPages.HUB && /*#__PURE__*/_react.default.createElement(_copReactComponents.LargeHeading, null, title), formState.cya && /*#__PURE__*/_react.default.createElement(_CheckYourAnswers.default, _extends({
332
298
  pages: _helpers.default.getRelevantPages(formState, pages, currentTask.fullPages)
333
299
  }, cya, ((_formState$page4 = formState.page) === null || _formState$page4 === void 0 ? void 0 : _formState$page4.type) === _models.FormPages.PARTIAL_CYA && {
334
- actions: (_formState$page$actio = formState.page.actions) === null || _formState$page$actio === void 0 ? void 0 : _formState$page$actio.filter(function (action) {
335
- return _utils.default.Component.show(action, data);
336
- })
300
+ actions: (_formState$page$actio = formState.page.actions) === null || _formState$page$actio === void 0 ? void 0 : _formState$page$actio.filter(action => _utils.default.Component.show(action, data))
337
301
  }, formState.cya, {
338
- onAction: function onAction(action) {
302
+ onAction: action => {
339
303
  (0, _onCYAAction.default)(setPagePoint, action, pages, validate, components, data, setData, type, pageId, currentTask, hooks, addErrors, hub, onPageChange, formState, submitting, setSubmitting);
340
304
  },
341
305
  onRowAction: onCYARowAction,
@@ -348,14 +312,14 @@ var InternalFormRenderer = function InternalFormRenderer(_ref2) {
348
312
  hideBlankRows: hideBlankRows
349
313
  })), hub === _models.HubFormats.TASK && formState.pageId === _models.FormPages.HUB && /*#__PURE__*/_react.default.createElement(_TaskList.default, _extends({}, taskDetails, {
350
314
  refNumber: data.businessKey,
351
- onTaskAction: function onTaskAction(task) {
352
- (0, _onTaskAction2.default)(task, pages, setCurrentTask, hubDetails, data, onPageChange);
315
+ onTaskAction: task => {
316
+ (0, _onTaskAction.default)(task, pages, setCurrentTask, hubDetails, data, onPageChange);
353
317
  },
354
318
  formData: data
355
319
  })), formState.page && !formState.cya && !formState.page.collection && /*#__PURE__*/_react.default.createElement(_FormPage.default, {
356
320
  page: formState.page,
357
321
  pages: [].concat(pages),
358
- onAction: function onAction(action, patch, patchLabel) {
322
+ onAction: (action, patch, patchLabel) => {
359
323
  (0, _onPageAction.default)(action, patch, patchLabel, hooks, data, formState, validate, onPageChange, type, pages, components, pageId, setPagePoint, currentTask, setData, hubDetails, setSubmitted, addErrors, submitting, setSubmitting);
360
324
  },
361
325
  onChange: onChange,
@@ -366,7 +330,7 @@ var InternalFormRenderer = function InternalFormRenderer(_ref2) {
366
330
  }), formState.page && !formState.cya && formState.page.collection && /*#__PURE__*/_react.default.createElement(_CollectionPage.default, {
367
331
  page: formState.page,
368
332
  onCollectionChange: onChange,
369
- onAction: function onAction(action, patch, patchLabel) {
333
+ onAction: (action, patch, patchLabel) => {
370
334
  (0, _onPageAction.default)(action, patch, patchLabel, hooks, data, formState, validate, onPageChange, type, pages, components, pageId, setPagePoint, currentTask, setData, hubDetails, setSubmitted, addErrors, submitting, setSubmitting);
371
335
  },
372
336
  hashLink: hashLink,
@@ -375,7 +339,7 @@ var InternalFormRenderer = function InternalFormRenderer(_ref2) {
375
339
  submitting: submitting
376
340
  }));
377
341
  };
378
- var propTypes = {
342
+ const propTypes = {
379
343
  classBlock: _propTypes.default.string,
380
344
  classModifiers: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.arrayOf(_propTypes.default.string)]),
381
345
  className: _propTypes.default.string,
@@ -405,7 +369,7 @@ var propTypes = {
405
369
  viewOnly: _propTypes.default.bool,
406
370
  hideBlankRows: _propTypes.default.bool
407
371
  };
408
- var defaultProps = {
372
+ const defaultProps = {
409
373
  classBlock: DEFAULT_CLASS,
410
374
  className: '',
411
375
  classModifiers: [],