@ukhomeoffice/cop-react-form-renderer 5.44.1-alpha → 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 +104 -77
  10. package/dist/components/CollectionSummary/CollectionSummary.test.js +126 -81
  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 +96 -131
  14. package/dist/components/CollectionSummary/SummaryCard.test.js +959 -810
  15. package/dist/components/CollectionSummary/SummaryCardValidationContext.js +66 -0
  16. package/dist/components/CollectionSummary/SummaryCardValidationContext.test.js +86 -0
  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 +6 -7
  59. package/dist/components/FormRenderer/helpers/getSubmissionStatus.test.js +96 -110
  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 +2 -2
@@ -2,16 +2,12 @@
2
2
 
3
3
  var _getFormPage = _interopRequireDefault(require("./getFormPage"));
4
4
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
6
- function 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; }
7
- 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; }
8
- 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; }
9
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
10
- 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
11
- describe('utils', function () {
12
- describe('FormPage', function () {
13
- describe('getFormPage', function () {
14
- var FORM_COMPONENTS = [{
5
+ // Local imports
6
+
7
+ describe('utils', () => {
8
+ describe('FormPage', () => {
9
+ describe('getFormPage', () => {
10
+ const FORM_COMPONENTS = [{
15
11
  id: 'a',
16
12
  fieldId: 'a',
17
13
  label: 'Alpha',
@@ -46,17 +42,17 @@ describe('utils', function () {
46
42
  label: 'Bravo ${currentUser.surname}',
47
43
  type: 'text'
48
44
  }];
49
- var FORM_DATA = {
45
+ const FORM_DATA = {
50
46
  urls: {
51
47
  refData: 'https://ho.gov.uk/ref-data/'
52
48
  }
53
49
  };
54
- it('should handle null or undefined pageOptions', function () {
50
+ it('should handle null or undefined pageOptions', () => {
55
51
  expect((0, _getFormPage.default)(null, FORM_COMPONENTS, FORM_DATA)).toBeNull();
56
52
  expect((0, _getFormPage.default)(undefined, FORM_COMPONENTS, FORM_DATA)).toBeNull();
57
53
  });
58
- it('should handle a page not using any form components', function () {
59
- var PAGE = {
54
+ it('should handle a page not using any form components', () => {
55
+ const PAGE = {
60
56
  title: 'Page',
61
57
  components: [{
62
58
  type: 'heading',
@@ -70,8 +66,8 @@ describe('utils', function () {
70
66
  formData: FORM_DATA
71
67
  });
72
68
  });
73
- it('should handle a page with inline strings and convert them to paragraphs', function () {
74
- var PAGE = {
69
+ it('should handle a page with inline strings and convert them to paragraphs', () => {
70
+ const PAGE = {
75
71
  title: 'Page',
76
72
  components: ["Opening paragraph", {
77
73
  type: 'heading',
@@ -85,9 +81,10 @@ describe('utils', function () {
85
81
  type: 'html',
86
82
  tagName: 'p',
87
83
  content: PAGE.components[0]
88
- }, _objectSpread(_objectSpread({}, PAGE.components[1]), {}, {
84
+ }, {
85
+ ...PAGE.components[1],
89
86
  full_path: PAGE.components[1].fieldId
90
- }), {
87
+ }, {
91
88
  type: 'html',
92
89
  tagName: 'p',
93
90
  content: PAGE.components[2]
@@ -95,8 +92,8 @@ describe('utils', function () {
95
92
  formData: FORM_DATA
96
93
  });
97
94
  });
98
- it('should handle a page that references a form-level component', function () {
99
- var PAGE = {
95
+ it('should handle a page that references a form-level component', () => {
96
+ const PAGE = {
100
97
  title: 'Page',
101
98
  components: ["Opening paragraph", {
102
99
  type: 'heading',
@@ -106,30 +103,31 @@ describe('utils', function () {
106
103
  use: 'a'
107
104
  }]
108
105
  };
109
- var A = FORM_COMPONENTS[0];
106
+ const A = FORM_COMPONENTS[0];
110
107
  expect((0, _getFormPage.default)(PAGE, FORM_COMPONENTS, FORM_DATA)).toEqual({
111
108
  title: PAGE.title,
112
109
  components: [{
113
110
  type: 'html',
114
111
  tagName: 'p',
115
112
  content: PAGE.components[0]
116
- }, _objectSpread(_objectSpread({}, PAGE.components[1]), {}, {
113
+ }, {
114
+ ...PAGE.components[1],
117
115
  full_path: PAGE.components[1].fieldId
118
- }), {
116
+ }, {
119
117
  type: 'html',
120
118
  tagName: 'p',
121
119
  content: PAGE.components[2]
122
- }, _objectSpread(_objectSpread({
123
- use: 'a'
124
- }, A), {}, {
120
+ }, {
121
+ use: 'a',
122
+ ...A,
125
123
  cya_label: A.label,
126
124
  full_path: A.fieldId
127
- })],
125
+ }],
128
126
  formData: FORM_DATA
129
127
  });
130
128
  });
131
- it('should handle a page that references a form-level component with a data url', function () {
132
- var PAGE = {
129
+ it('should handle a page that references a form-level component with a data url', () => {
130
+ const PAGE = {
133
131
  title: 'Page',
134
132
  components: ["Opening paragraph", {
135
133
  type: 'heading',
@@ -139,33 +137,34 @@ describe('utils', function () {
139
137
  use: 'c'
140
138
  }]
141
139
  };
142
- var C = FORM_COMPONENTS[2];
140
+ const C = FORM_COMPONENTS[2];
143
141
  expect((0, _getFormPage.default)(PAGE, FORM_COMPONENTS, FORM_DATA)).toEqual({
144
142
  title: PAGE.title,
145
143
  components: [{
146
144
  type: 'html',
147
145
  tagName: 'p',
148
146
  content: PAGE.components[0]
149
- }, _objectSpread(_objectSpread({}, PAGE.components[1]), {}, {
147
+ }, {
148
+ ...PAGE.components[1],
150
149
  full_path: PAGE.components[1].fieldId
151
- }), {
150
+ }, {
152
151
  type: 'html',
153
152
  tagName: 'p',
154
153
  content: PAGE.components[2]
155
- }, _objectSpread(_objectSpread({
156
- use: 'c'
157
- }, C), {}, {
154
+ }, {
155
+ use: 'c',
156
+ ...C,
158
157
  cya_label: C.label,
159
158
  data: {
160
159
  url: "".concat(FORM_DATA.urls.refData, "/v3/charlies")
161
160
  },
162
161
  full_path: C.fieldId
163
- })],
162
+ }],
164
163
  formData: FORM_DATA
165
164
  });
166
165
  });
167
- it('should handle a page that references a form-level component with a data url without an environment context', function () {
168
- var PAGE = {
166
+ it('should handle a page that references a form-level component with a data url without an environment context', () => {
167
+ const PAGE = {
169
168
  title: 'Page',
170
169
  components: ["Opening paragraph", {
171
170
  type: 'heading',
@@ -175,29 +174,31 @@ describe('utils', function () {
175
174
  use: 'c'
176
175
  }]
177
176
  };
178
- var C = FORM_COMPONENTS[2];
177
+ const C = FORM_COMPONENTS[2];
179
178
  expect((0, _getFormPage.default)(PAGE, FORM_COMPONENTS, {})).toEqual({
180
179
  title: PAGE.title,
181
180
  components: [{
182
181
  type: 'html',
183
182
  tagName: 'p',
184
183
  content: PAGE.components[0]
185
- }, _objectSpread(_objectSpread({}, PAGE.components[1]), {}, {
184
+ }, {
185
+ ...PAGE.components[1],
186
186
  full_path: PAGE.components[1].fieldId
187
- }), {
187
+ }, {
188
188
  type: 'html',
189
189
  tagName: 'p',
190
190
  content: PAGE.components[2]
191
- }, // eslint-disable-next-line no-template-curly-in-string
192
- _objectSpread(_objectSpread({
193
- use: 'c'
194
- }, C), {}, {
191
+ },
192
+ // eslint-disable-next-line no-template-curly-in-string
193
+ {
194
+ use: 'c',
195
+ ...C,
195
196
  cya_label: C.label,
196
197
  full_path: C.fieldId,
197
198
  data: {
198
199
  url: '/v3/charlies'
199
200
  }
200
- })],
201
+ }],
201
202
  formData: {}
202
203
  });
203
204
  });
@@ -6,12 +6,8 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.default = void 0;
7
7
  var _getFormPage = _interopRequireDefault(require("./getFormPage"));
8
8
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
10
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
11
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
12
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
13
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
14
- function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } // Local imports
9
+ // Local imports
10
+
15
11
  /**
16
12
  * Converts pages objects defined in the JSON to page objects for rendering.
17
13
  * @param {Array} pages The JSON pages.
@@ -19,13 +15,12 @@ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input ==
19
15
  * @param {object} formData The top-level form data, used for setting up components.
20
16
  * @returns An array of page objects for rendering.
21
17
  */
22
- var getFormPages = function getFormPages(pages, components, formData) {
18
+ const getFormPages = (pages, components, formData) => {
23
19
  if (Array.isArray(pages)) {
24
- return pages.map(function (options, index) {
25
- return _objectSpread(_objectSpread({}, (0, _getFormPage.default)(options, components, formData)), {}, {
26
- index: index
27
- });
28
- });
20
+ return pages.map((options, index) => ({
21
+ ...(0, _getFormPage.default)(options, components, formData),
22
+ index
23
+ }));
29
24
  }
30
25
  return [];
31
26
  };
@@ -2,16 +2,12 @@
2
2
 
3
3
  var _getFormPages = _interopRequireDefault(require("./getFormPages"));
4
4
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
6
- function 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; }
7
- 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; }
8
- 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; }
9
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
10
- 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
11
- describe('utils', function () {
12
- describe('FormPage', function () {
13
- describe('getFormPages', function () {
14
- var FORM_COMPONENTS = [{
5
+ // Local imports
6
+
7
+ describe('utils', () => {
8
+ describe('FormPage', () => {
9
+ describe('getFormPages', () => {
10
+ const FORM_COMPONENTS = [{
15
11
  id: 'a',
16
12
  fieldId: 'a',
17
13
  label: 'Alpha',
@@ -32,17 +28,17 @@ describe('utils', function () {
32
28
  url: '${urls.refData}/v3/charlies'
33
29
  }
34
30
  }];
35
- var FORM_DATA = {
31
+ const FORM_DATA = {
36
32
  urls: {
37
33
  refData: 'https://ho.gov.uk/ref-data/'
38
34
  }
39
35
  };
40
- it('should handle null or undefined pageOptions', function () {
36
+ it('should handle null or undefined pageOptions', () => {
41
37
  expect((0, _getFormPages.default)(null, FORM_COMPONENTS, FORM_DATA)).toEqual([]);
42
38
  expect((0, _getFormPages.default)(undefined, FORM_COMPONENTS, FORM_DATA)).toEqual([]);
43
39
  });
44
- it('should appropriately set up multiples pages with various configurations', function () {
45
- var PAGE_1 = {
40
+ it('should appropriately set up multiples pages with various configurations', () => {
41
+ const PAGE_1 = {
46
42
  title: 'Page 1',
47
43
  components: [{
48
44
  type: 'heading',
@@ -50,7 +46,7 @@ describe('utils', function () {
50
46
  content: 'Page heading'
51
47
  }]
52
48
  };
53
- var PAGE_2 = {
49
+ const PAGE_2 = {
54
50
  title: 'Page 2',
55
51
  components: ["Opening paragraph", {
56
52
  type: 'heading',
@@ -60,8 +56,8 @@ describe('utils', function () {
60
56
  use: 'c'
61
57
  }]
62
58
  };
63
- var PAGES = [PAGE_1, PAGE_2];
64
- var C = FORM_COMPONENTS[2];
59
+ const PAGES = [PAGE_1, PAGE_2];
60
+ const C = FORM_COMPONENTS[2];
65
61
  expect((0, _getFormPages.default)(PAGES, FORM_COMPONENTS, FORM_DATA)).toEqual([{
66
62
  index: 0,
67
63
  title: PAGE_1.title,
@@ -74,21 +70,22 @@ describe('utils', function () {
74
70
  type: 'html',
75
71
  tagName: 'p',
76
72
  content: PAGE_2.components[0]
77
- }, _objectSpread(_objectSpread({}, PAGE_2.components[1]), {}, {
73
+ }, {
74
+ ...PAGE_2.components[1],
78
75
  full_path: PAGE_2.components[1].fieldId
79
- }), {
76
+ }, {
80
77
  type: 'html',
81
78
  tagName: 'p',
82
79
  content: PAGE_2.components[2]
83
- }, _objectSpread(_objectSpread({
84
- use: 'c'
85
- }, C), {}, {
80
+ }, {
81
+ use: 'c',
82
+ ...C,
86
83
  cya_label: C.label,
87
84
  data: {
88
85
  url: "".concat(FORM_DATA.urls.refData, "/v3/charlies")
89
86
  },
90
87
  full_path: C.fieldId
91
- })],
88
+ }],
92
89
  formData: FORM_DATA
93
90
  }]);
94
91
  });
@@ -5,14 +5,10 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var _models = require("../../models");
8
- 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); }
9
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
10
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
11
- 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; }
12
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
13
- 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); }
14
- var standardiseAction = function standardiseAction(obj) {
15
- var action = _objectSpread({}, obj);
8
+ const standardiseAction = obj => {
9
+ const action = {
10
+ ...obj
11
+ };
16
12
  // This is in place for backwards compatibility with version 1.
17
13
  if (!action.page) {
18
14
  if (action.href) {
@@ -35,15 +31,15 @@ var standardiseAction = function standardiseAction(obj) {
35
31
  * will convert both by taking the final part of the relative path:
36
32
  * - `href: '/bravo'` => `page: 'bravo'`
37
33
  */
38
- var getPageActions = function getPageActions(page) {
34
+ const getPageActions = page => {
39
35
  if (page && Array.isArray(page.actions)) {
40
- return page.actions.map(function (a) {
36
+ return page.actions.map(a => {
41
37
  if (typeof a === 'string') {
42
38
  return _models.PageAction.DEFAULTS[a];
43
39
  }
44
- if (a && _typeof(a) === 'object') {
40
+ if (a && typeof a === 'object') {
45
41
  var _PageAction$DEFAULTS$;
46
- var object = a;
42
+ const object = a;
47
43
  // eslint-disable-next-line no-prototype-builtins
48
44
  if ((_PageAction$DEFAULTS$ = _models.PageAction.DEFAULTS[object.type]) !== null && _PageAction$DEFAULTS$ !== void 0 && _PageAction$DEFAULTS$.validate && !object.hasOwnProperty('validate')) {
49
45
  object.validate = true;
@@ -51,9 +47,7 @@ var getPageActions = function getPageActions(page) {
51
47
  return standardiseAction(object);
52
48
  }
53
49
  return undefined;
54
- }).filter(function (a) {
55
- return !!a;
56
- });
50
+ }).filter(a => !!a);
57
51
  }
58
52
  return undefined;
59
53
  };
@@ -5,14 +5,14 @@ var _getPageActions = _interopRequireDefault(require("./getPageActions"));
5
5
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6
6
  // Local imports
7
7
 
8
- describe('utils', function () {
9
- describe('FormPage', function () {
10
- describe('getPageActions', function () {
11
- it('should handle a null or undefined page', function () {
8
+ describe('utils', () => {
9
+ describe('FormPage', () => {
10
+ describe('getPageActions', () => {
11
+ it('should handle a null or undefined page', () => {
12
12
  expect((0, _getPageActions.default)(null)).toBeUndefined();
13
13
  expect((0, _getPageActions.default)(undefined)).toBeUndefined();
14
14
  });
15
- it('should handle a null or undefined actions array', function () {
15
+ it('should handle a null or undefined actions array', () => {
16
16
  expect((0, _getPageActions.default)({
17
17
  actions: null
18
18
  })).toBeUndefined();
@@ -20,89 +20,89 @@ describe('utils', function () {
20
20
  actions: undefined
21
21
  })).toBeUndefined();
22
22
  });
23
- it('should handle an array of strings', function () {
24
- var actions = [_models.PageAction.TYPES.SAVE_AND_CONTINUE, _models.PageAction.TYPES.SAVE_AND_RETURN];
23
+ it('should handle an array of strings', () => {
24
+ const actions = [_models.PageAction.TYPES.SAVE_AND_CONTINUE, _models.PageAction.TYPES.SAVE_AND_RETURN];
25
25
  expect((0, _getPageActions.default)({
26
- actions: actions
26
+ actions
27
27
  })).toEqual([_models.PageAction.DEFAULTS.saveAndContinue, _models.PageAction.DEFAULTS.saveAndReturn]);
28
28
  });
29
- it('should handle a null entry in the array', function () {
30
- var actions = [_models.PageAction.TYPES.SAVE_AND_CONTINUE, _models.PageAction.TYPES.SAVE_AND_RETURN, null];
29
+ it('should handle a null entry in the array', () => {
30
+ const actions = [_models.PageAction.TYPES.SAVE_AND_CONTINUE, _models.PageAction.TYPES.SAVE_AND_RETURN, null];
31
31
  expect((0, _getPageActions.default)({
32
- actions: actions
32
+ actions
33
33
  })).toEqual([_models.PageAction.DEFAULTS.saveAndContinue, _models.PageAction.DEFAULTS.saveAndReturn]);
34
34
  });
35
- it('should handle an undefined entry in the array', function () {
36
- var actions = [undefined, _models.PageAction.TYPES.SAVE_AND_CONTINUE, undefined, _models.PageAction.TYPES.SAVE_AND_RETURN];
35
+ it('should handle an undefined entry in the array', () => {
36
+ const actions = [undefined, _models.PageAction.TYPES.SAVE_AND_CONTINUE, undefined, _models.PageAction.TYPES.SAVE_AND_RETURN];
37
37
  expect((0, _getPageActions.default)({
38
- actions: actions
38
+ actions
39
39
  })).toEqual([_models.PageAction.DEFAULTS.saveAndContinue, _models.PageAction.DEFAULTS.saveAndReturn]);
40
40
  });
41
- it('should handle an object entry in the array', function () {
42
- var actions = [{
41
+ it('should handle an object entry in the array', () => {
42
+ const actions = [{
43
43
  type: 'navigate',
44
44
  page: 'alpha'
45
45
  }];
46
46
  expect((0, _getPageActions.default)({
47
- actions: actions
47
+ actions
48
48
  })).toEqual(actions);
49
49
  });
50
- it('should convert an href to a page', function () {
51
- var actions = [{
50
+ it('should convert an href to a page', () => {
51
+ const actions = [{
52
52
  type: 'navigate',
53
53
  href: '/alpha/bravo'
54
54
  }];
55
55
  expect((0, _getPageActions.default)({
56
- actions: actions
56
+ actions
57
57
  })).toEqual([{
58
58
  type: 'navigate',
59
59
  page: 'bravo',
60
60
  href: '/alpha/bravo'
61
61
  }]);
62
62
  });
63
- it('should convert a url to a page', function () {
64
- var actions = [{
63
+ it('should convert a url to a page', () => {
64
+ const actions = [{
65
65
  type: 'navigate',
66
66
  url: '/alpha/bravo'
67
67
  }];
68
68
  expect((0, _getPageActions.default)({
69
- actions: actions
69
+ actions
70
70
  })).toEqual([{
71
71
  type: 'navigate',
72
72
  page: 'bravo',
73
73
  url: '/alpha/bravo'
74
74
  }]);
75
75
  });
76
- it('should handle an action without a page, href, or url', function () {
77
- var actions = [{
76
+ it('should handle an action without a page, href, or url', () => {
77
+ const actions = [{
78
78
  type: 'submit',
79
79
  label: 'Charlie'
80
80
  }];
81
81
  expect((0, _getPageActions.default)({
82
- actions: actions
82
+ actions
83
83
  })).toEqual(actions);
84
84
  });
85
- it('should add a default validation prop if none are present', function () {
86
- var actions = [{
85
+ it('should add a default validation prop if none are present', () => {
86
+ const actions = [{
87
87
  type: 'saveAndContinue',
88
88
  label: 'Charlie'
89
89
  }];
90
90
  expect((0, _getPageActions.default)({
91
- actions: actions
91
+ actions
92
92
  })).toEqual([{
93
93
  type: 'saveAndContinue',
94
94
  label: 'Charlie',
95
95
  validate: true
96
96
  }]);
97
97
  });
98
- it('should not overwrite a validation prop when one exists', function () {
99
- var actions = [{
98
+ it('should not overwrite a validation prop when one exists', () => {
99
+ const actions = [{
100
100
  type: 'submit',
101
101
  label: 'Charlie',
102
102
  validate: false
103
103
  }];
104
104
  expect((0, _getPageActions.default)({
105
- actions: actions
105
+ actions
106
106
  })).toEqual([{
107
107
  type: 'submit',
108
108
  label: 'Charlie',
@@ -11,14 +11,14 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
11
11
 
12
12
  // Local imports.
13
13
 
14
- var getPageTitle = function getPageTitle(title, formData) {
14
+ const getPageTitle = (title, formData) => {
15
15
  if (typeof title === 'string') {
16
16
  return _copReactComponents.Utils.interpolateString(title, formData);
17
17
  }
18
18
  if (!Array.isArray(title)) {
19
19
  return null;
20
20
  }
21
- var shownOption = title.find(function (option) {
21
+ const shownOption = title.find(option => {
22
22
  if (typeof option === 'string') {
23
23
  // This is intended to allow a plain string 'fallback' option in the array.
24
24
  // As such, it should be the last option in the array as any options after
@@ -2,32 +2,32 @@
2
2
 
3
3
  var _getPageTitle = _interopRequireDefault(require("./getPageTitle"));
4
4
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5
- describe('utils.FormPage.getPageTitle', function () {
6
- var FORM_DATA = {
5
+ describe('utils.FormPage.getPageTitle', () => {
6
+ const FORM_DATA = {
7
7
  testField: 'Alpha',
8
8
  testField2: 'yes'
9
9
  };
10
- it('should return null if title is not defined', function () {
11
- var result = (0, _getPageTitle.default)(null, FORM_DATA);
10
+ it('should return null if title is not defined', () => {
11
+ const result = (0, _getPageTitle.default)(null, FORM_DATA);
12
12
  expect(result).toEqual(null);
13
13
  });
14
- it('should return the defined page title if it\'s just a string', function () {
15
- var PAGE = {
14
+ it('should return the defined page title if it\'s just a string', () => {
15
+ const PAGE = {
16
16
  title: 'Page title'
17
17
  };
18
- var result = (0, _getPageTitle.default)(PAGE.title, FORM_DATA);
18
+ const result = (0, _getPageTitle.default)(PAGE.title, FORM_DATA);
19
19
  expect(result).toEqual('Page title');
20
20
  });
21
- it('should return a correctly interpolated title', function () {
21
+ it('should return a correctly interpolated title', () => {
22
22
  // eslint-disable-next-line no-template-curly-in-string
23
- var PAGE = {
23
+ const PAGE = {
24
24
  title: '${testField} title'
25
25
  };
26
- var result = (0, _getPageTitle.default)(PAGE.title, FORM_DATA);
26
+ const result = (0, _getPageTitle.default)(PAGE.title, FORM_DATA);
27
27
  expect(result).toEqual("".concat(FORM_DATA.testField, " title"));
28
28
  });
29
- it('should return the title that has it\'s conditions met', function () {
30
- var PAGE = {
29
+ it('should return the title that has it\'s conditions met', () => {
30
+ const PAGE = {
31
31
  title: [{
32
32
  title: 'First title',
33
33
  show_when: [{
@@ -44,11 +44,11 @@ describe('utils.FormPage.getPageTitle', function () {
44
44
  }]
45
45
  }]
46
46
  };
47
- var result = (0, _getPageTitle.default)(PAGE.title, FORM_DATA);
47
+ const result = (0, _getPageTitle.default)(PAGE.title, FORM_DATA);
48
48
  expect(result).toEqual('Second title');
49
49
  });
50
- it('should return a plain string title if one is encountered in the array', function () {
51
- var PAGE = {
50
+ it('should return a plain string title if one is encountered in the array', () => {
51
+ const PAGE = {
52
52
  title: [{
53
53
  title: 'First title',
54
54
  show_when: [{
@@ -65,11 +65,11 @@ describe('utils.FormPage.getPageTitle', function () {
65
65
  }]
66
66
  }, "Default title"]
67
67
  };
68
- var result = (0, _getPageTitle.default)(PAGE.title, FORM_DATA);
68
+ const result = (0, _getPageTitle.default)(PAGE.title, FORM_DATA);
69
69
  expect(result).toEqual('Default title');
70
70
  });
71
- it('should correctly interpolate a plain string option in the title array', function () {
72
- var PAGE = {
71
+ it('should correctly interpolate a plain string option in the title array', () => {
72
+ const PAGE = {
73
73
  title: [{
74
74
  title: 'First title',
75
75
  show_when: [{
@@ -88,11 +88,11 @@ describe('utils.FormPage.getPageTitle', function () {
88
88
  // eslint-disable-next-line no-template-curly-in-string
89
89
  "${testField} title"]
90
90
  };
91
- var result = (0, _getPageTitle.default)(PAGE.title, FORM_DATA);
91
+ const result = (0, _getPageTitle.default)(PAGE.title, FORM_DATA);
92
92
  expect(result).toEqual("".concat(FORM_DATA.testField, " title"));
93
93
  });
94
- it('should correctly interpolate a conditional title', function () {
95
- var PAGE = {
94
+ it('should correctly interpolate a conditional title', () => {
95
+ const PAGE = {
96
96
  title: [{
97
97
  title: 'First title',
98
98
  show_when: [{
@@ -110,7 +110,7 @@ describe('utils.FormPage.getPageTitle', function () {
110
110
  }]
111
111
  }]
112
112
  };
113
- var result = (0, _getPageTitle.default)(PAGE.title, FORM_DATA);
113
+ const result = (0, _getPageTitle.default)(PAGE.title, FORM_DATA);
114
114
  expect(result).toEqual("".concat(FORM_DATA.testField, " title"));
115
115
  });
116
116
  });