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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (382) hide show
  1. package/dist/components/CheckYourAnswers/Answer.js +15 -15
  2. package/dist/components/CheckYourAnswers/Answer.test.js +181 -132
  3. package/dist/components/CheckYourAnswers/CheckYourAnswers.js +142 -106
  4. package/dist/components/CheckYourAnswers/CheckYourAnswers.test.js +941 -563
  5. package/dist/components/CheckYourAnswers/index.js +1 -1
  6. package/dist/components/CollectionPage/CollectionPage.js +66 -75
  7. package/dist/components/CollectionPage/CollectionPage.test.js +369 -318
  8. package/dist/components/CollectionPage/index.js +1 -1
  9. package/dist/components/CollectionSummary/BannerStrip.js +15 -15
  10. package/dist/components/CollectionSummary/BannerStrip.test.js +79 -83
  11. package/dist/components/CollectionSummary/CollectionSummary.js +131 -109
  12. package/dist/components/CollectionSummary/CollectionSummary.test.js +180 -198
  13. package/dist/components/CollectionSummary/Confirmation.js +13 -15
  14. package/dist/components/CollectionSummary/Confirmation.test.js +63 -68
  15. package/dist/components/CollectionSummary/RenderListView.js +55 -47
  16. package/dist/components/CollectionSummary/RenderListView.test.js +81 -82
  17. package/dist/components/CollectionSummary/SummaryCard.js +157 -121
  18. package/dist/components/CollectionSummary/SummaryCard.test.js +1000 -970
  19. package/dist/components/CollectionSummary/SummaryCardDetails.js +94 -103
  20. package/dist/components/CollectionSummary/SummaryCardDetails.test.js +195 -187
  21. package/dist/components/CollectionSummary/SummaryCardValidationContext.js +36 -31
  22. package/dist/components/CollectionSummary/SummaryCardValidationContext.test.js +76 -64
  23. package/dist/components/CollectionSummary/index.js +1 -1
  24. package/dist/components/FormComponent/Collection.js +117 -80
  25. package/dist/components/FormComponent/Collection.test.js +1082 -910
  26. package/dist/components/FormComponent/Container.js +38 -43
  27. package/dist/components/FormComponent/Container.test.js +411 -379
  28. package/dist/components/FormComponent/FormComponent.js +74 -71
  29. package/dist/components/FormComponent/FormComponent.test.js +415 -354
  30. package/dist/components/FormComponent/helpers/addLabel.js +7 -4
  31. package/dist/components/FormComponent/helpers/getComponentDisabled.js +1 -1
  32. package/dist/components/FormComponent/helpers/getComponentDisabled.test.js +8 -8
  33. package/dist/components/FormComponent/helpers/getComponentError.js +5 -3
  34. package/dist/components/FormComponent/helpers/getComponentError.test.js +15 -15
  35. package/dist/components/FormComponent/helpers/getComponentFieldSet.js +4 -3
  36. package/dist/components/FormComponent/helpers/getComponentFieldSet.test.js +7 -7
  37. package/dist/components/FormComponent/helpers/index.js +5 -5
  38. package/dist/components/FormComponent/index.js +1 -1
  39. package/dist/components/FormPage/FormPage.js +87 -71
  40. package/dist/components/FormPage/FormPage.test.js +170 -133
  41. package/dist/components/FormPage/index.js +1 -1
  42. package/dist/components/FormRenderer/FormRenderer.js +198 -153
  43. package/dist/components/FormRenderer/FormRenderer.test.js +1116 -731
  44. package/dist/components/FormRenderer/handlers/cyaAction.js +3 -3
  45. package/dist/components/FormRenderer/handlers/getPageId.js +3 -1
  46. package/dist/components/FormRenderer/handlers/getPageId.test.js +15 -15
  47. package/dist/components/FormRenderer/handlers/handlers.test.js +33 -33
  48. package/dist/components/FormRenderer/handlers/index.js +2 -2
  49. package/dist/components/FormRenderer/handlers/navigate.js +4 -4
  50. package/dist/components/FormRenderer/handlers/submissionError.js +1 -1
  51. package/dist/components/FormRenderer/helpers/canActionProceed.js +1 -1
  52. package/dist/components/FormRenderer/helpers/canActionProceed.test.js +16 -16
  53. package/dist/components/FormRenderer/helpers/canCYASubmit.js +3 -1
  54. package/dist/components/FormRenderer/helpers/canCYASubmit.test.js +21 -17
  55. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.js +30 -27
  56. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.test.js +21 -21
  57. package/dist/components/FormRenderer/helpers/getCYA.js +7 -5
  58. package/dist/components/FormRenderer/helpers/getCYA.test.js +12 -12
  59. package/dist/components/FormRenderer/helpers/getFormState.js +8 -6
  60. package/dist/components/FormRenderer/helpers/getFormState.test.js +11 -11
  61. package/dist/components/FormRenderer/helpers/getNextPageId.js +32 -18
  62. package/dist/components/FormRenderer/helpers/getNextPageId.test.js +68 -68
  63. package/dist/components/FormRenderer/helpers/getPage.js +4 -2
  64. package/dist/components/FormRenderer/helpers/getPage.test.js +12 -12
  65. package/dist/components/FormRenderer/helpers/getRelevantPages.js +11 -8
  66. package/dist/components/FormRenderer/helpers/getRelevantPages.test.js +15 -15
  67. package/dist/components/FormRenderer/helpers/getSubmissionStatus.js +13 -12
  68. package/dist/components/FormRenderer/helpers/getSubmissionStatus.test.js +98 -104
  69. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.js +64 -65
  70. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.test.js +79 -72
  71. package/dist/components/FormRenderer/helpers/index.js +2 -2
  72. package/dist/components/FormRenderer/index.js +1 -1
  73. package/dist/components/FormRenderer/onCYAAction.js +54 -61
  74. package/dist/components/FormRenderer/onCYAAction.test.js +153 -165
  75. package/dist/components/FormRenderer/onPageAction.js +41 -45
  76. package/dist/components/FormRenderer/onPageAction.test.js +210 -225
  77. package/dist/components/FormRenderer/onTaskAction.js +15 -11
  78. package/dist/components/FormRenderer/onTaskAction.test.js +89 -94
  79. package/dist/components/PageActions/ActionButton.js +16 -13
  80. package/dist/components/PageActions/ActionButton.test.js +79 -57
  81. package/dist/components/PageActions/PageActions.js +11 -11
  82. package/dist/components/PageActions/PageActions.test.js +116 -87
  83. package/dist/components/PageActions/index.js +1 -1
  84. package/dist/components/SummaryList/GroupAction.js +21 -13
  85. package/dist/components/SummaryList/GroupAction.test.js +37 -41
  86. package/dist/components/SummaryList/RowAction.js +17 -12
  87. package/dist/components/SummaryList/RowAction.test.js +37 -41
  88. package/dist/components/SummaryList/SummaryList.js +28 -23
  89. package/dist/components/SummaryList/SummaryList.test.js +206 -179
  90. package/dist/components/SummaryList/SummaryListHeadingRow.js +6 -8
  91. package/dist/components/SummaryList/SummaryListHeadingRowWithAction.js +5 -7
  92. package/dist/components/SummaryList/SummaryListRow.js +6 -8
  93. package/dist/components/SummaryList/SummaryListTitleRow.js +5 -7
  94. package/dist/components/SummaryList/helpers/getGroupActionAttributes.js +6 -4
  95. package/dist/components/SummaryList/helpers/getGroupActionAttributes.test.js +24 -24
  96. package/dist/components/SummaryList/helpers/getRowActionAttributes.js +6 -4
  97. package/dist/components/SummaryList/helpers/getRowActionAttributes.test.js +24 -24
  98. package/dist/components/SummaryList/helpers/index.js +2 -2
  99. package/dist/components/SummaryList/index.js +1 -1
  100. package/dist/components/TaskList/Task.js +30 -20
  101. package/dist/components/TaskList/Task.test.js +77 -84
  102. package/dist/components/TaskList/TaskList.js +84 -53
  103. package/dist/components/TaskList/TaskList.test.js +150 -150
  104. package/dist/components/TaskList/TaskState.js +6 -8
  105. package/dist/components/TaskList/TaskState.test.js +49 -56
  106. package/dist/components/TaskList/index.js +1 -1
  107. package/dist/components/index.js +8 -8
  108. package/dist/context/HooksContext/HooksContext.js +81 -58
  109. package/dist/context/HooksContext/HooksContext.test.js +36 -27
  110. package/dist/context/HooksContext/index.js +4 -3
  111. package/dist/context/ValidationContext/ValidationContext.js +95 -44
  112. package/dist/context/ValidationContext/ValidationContext.test.js +70 -58
  113. package/dist/context/ValidationContext/index.js +4 -3
  114. package/dist/context/index.js +3 -3
  115. package/dist/hooks/index.js +11 -10
  116. package/dist/hooks/useAxios.js +41 -15
  117. package/dist/hooks/useGetRequest.js +98 -62
  118. package/dist/hooks/useHooks.js +3 -1
  119. package/dist/hooks/useRefData.js +41 -28
  120. package/dist/hooks/useValidation.js +3 -1
  121. package/dist/index.js +15 -14
  122. package/dist/models/CollectionLabels.js +1 -1
  123. package/dist/models/ComponentTypes.js +25 -25
  124. package/dist/models/EventTypes.js +4 -4
  125. package/dist/models/FormPages.js +4 -4
  126. package/dist/models/FormTypes.js +8 -8
  127. package/dist/models/HubFormats.js +3 -3
  128. package/dist/models/PageAction.js +38 -44
  129. package/dist/models/TaskStates.js +28 -29
  130. package/dist/models/index.js +10 -10
  131. package/dist/setupTests.js +32 -31
  132. package/dist/utils/CheckYourAnswers/getCYAAction.js +5 -5
  133. package/dist/utils/CheckYourAnswers/getCYAAction.test.js +55 -53
  134. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.js +27 -17
  135. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.test.js +36 -34
  136. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.js +34 -20
  137. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.test.js +45 -43
  138. package/dist/utils/CheckYourAnswers/getCYARow.js +10 -8
  139. package/dist/utils/CheckYourAnswers/getCYARow.test.js +87 -87
  140. package/dist/utils/CheckYourAnswers/getCYARowForGroup.js +25 -19
  141. package/dist/utils/CheckYourAnswers/getCYARowForGroup.test.js +17 -16
  142. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.js +45 -39
  143. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.test.js +75 -72
  144. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.js +105 -100
  145. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.test.js +182 -218
  146. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.js +21 -26
  147. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.test.js +106 -112
  148. package/dist/utils/CheckYourAnswers/getCYARowsForPage.js +21 -15
  149. package/dist/utils/CheckYourAnswers/getCYARowsForPage.test.js +83 -77
  150. package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.js +13 -13
  151. package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.test.js +19 -14
  152. package/dist/utils/CheckYourAnswers/index.js +2 -2
  153. package/dist/utils/CheckYourAnswers/showComponentCYA.js +6 -6
  154. package/dist/utils/CheckYourAnswers/showComponentCYA.test.js +26 -26
  155. package/dist/utils/CollectionPage/addCollectionPageEntry.js +3 -3
  156. package/dist/utils/CollectionPage/addCollectionPageEntry.test.js +6 -6
  157. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.js +3 -3
  158. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.test.js +22 -21
  159. package/dist/utils/CollectionPage/duplicateCollectionPageEntry.js +24 -14
  160. package/dist/utils/CollectionPage/duplicateCollectionPageEntry.test.js +43 -52
  161. package/dist/utils/CollectionPage/getCollectionPageActiveId.js +3 -3
  162. package/dist/utils/CollectionPage/getCollectionPageActiveId.test.js +11 -11
  163. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.js +12 -7
  164. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.test.js +23 -23
  165. package/dist/utils/CollectionPage/getCollectionPageData.js +13 -8
  166. package/dist/utils/CollectionPage/getCollectionPageData.test.js +20 -20
  167. package/dist/utils/CollectionPage/getErrorsForCollection.js +26 -25
  168. package/dist/utils/CollectionPage/getErrorsForCollection.test.js +23 -21
  169. package/dist/utils/CollectionPage/getQuickEditPage.js +32 -37
  170. package/dist/utils/CollectionPage/getQuickEditPage.test.js +22 -18
  171. package/dist/utils/CollectionPage/index.js +2 -2
  172. package/dist/utils/CollectionPage/mergeCollectionPages.js +42 -37
  173. package/dist/utils/CollectionPage/mergeCollectionPages.test.js +18 -48
  174. package/dist/utils/CollectionPage/removeCollectionPageEntry.js +7 -5
  175. package/dist/utils/CollectionPage/removeCollectionPageEntry.test.js +11 -11
  176. package/dist/utils/CollectionPage/setCollectionPageData.js +19 -12
  177. package/dist/utils/CollectionPage/setCollectionPageData.test.js +26 -26
  178. package/dist/utils/Component/addShowWhen.js +8 -4
  179. package/dist/utils/Component/addShowWhen.test.js +38 -38
  180. package/dist/utils/Component/applyToComponentTree.js +20 -19
  181. package/dist/utils/Component/applyToComponentTree.test.js +33 -28
  182. package/dist/utils/Component/cleanAttributes.js +13 -10
  183. package/dist/utils/Component/cleanAttributes.test.js +18 -17
  184. package/dist/utils/Component/elevateNestedComponents.js +7 -6
  185. package/dist/utils/Component/elevateNestedComponents.test.js +34 -34
  186. package/dist/utils/Component/getComponent.js +97 -90
  187. package/dist/utils/Component/getComponentTests/getComponent.autocomplete.test.js +18 -19
  188. package/dist/utils/Component/getComponentTests/getComponent.calculation.test.js +63 -50
  189. package/dist/utils/Component/getComponentTests/getComponent.checkboxes.test.js +49 -40
  190. package/dist/utils/Component/getComponentTests/getComponent.date.test.js +40 -30
  191. package/dist/utils/Component/getComponentTests/getComponent.details.test.js +19 -21
  192. package/dist/utils/Component/getComponentTests/getComponent.email.test.js +23 -18
  193. package/dist/utils/Component/getComponentTests/getComponent.file.test.js +27 -22
  194. package/dist/utils/Component/getComponentTests/getComponent.heading.test.js +11 -12
  195. package/dist/utils/Component/getComponentTests/getComponent.html.test.js +16 -18
  196. package/dist/utils/Component/getComponentTests/getComponent.insetText.test.js +9 -10
  197. package/dist/utils/Component/getComponentTests/getComponent.list.test.js +16 -18
  198. package/dist/utils/Component/getComponentTests/getComponent.multifile.test.js +27 -23
  199. package/dist/utils/Component/getComponentTests/getComponent.nested.test.js +175 -155
  200. package/dist/utils/Component/getComponentTests/getComponent.paragraph.test.js +16 -18
  201. package/dist/utils/Component/getComponentTests/getComponent.phoneNumber.test.js +23 -18
  202. package/dist/utils/Component/getComponentTests/getComponent.radios.test.js +73 -58
  203. package/dist/utils/Component/getComponentTests/getComponent.select.test.js +23 -18
  204. package/dist/utils/Component/getComponentTests/getComponent.text.test.js +23 -18
  205. package/dist/utils/Component/getComponentTests/getComponent.textArea.test.js +41 -34
  206. package/dist/utils/Component/getComponentTests/getComponent.time.test.js +32 -23
  207. package/dist/utils/Component/getComponentTests/getComponent.unknown.test.js +3 -3
  208. package/dist/utils/Component/getComponentTests/getComponent.warningText.test.js +9 -10
  209. package/dist/utils/Component/getDefaultValue.js +9 -7
  210. package/dist/utils/Component/getDefaultValue.test.js +13 -13
  211. package/dist/utils/Component/getDefaultValueFromConfig.js +24 -24
  212. package/dist/utils/Component/getDefaultValueFromConfig.test.js +32 -32
  213. package/dist/utils/Component/index.js +2 -2
  214. package/dist/utils/Component/isEditable.js +4 -2
  215. package/dist/utils/Component/isEditable.test.js +15 -14
  216. package/dist/utils/Component/optionIsSelected.js +4 -2
  217. package/dist/utils/Component/optionIsSelected.test.js +12 -12
  218. package/dist/utils/Component/setupContainerComponentsPath.js +31 -29
  219. package/dist/utils/Component/setupContainerComponentsPath.test.js +16 -16
  220. package/dist/utils/Component/showComponent.js +4 -3
  221. package/dist/utils/Component/showComponent.test.js +29 -29
  222. package/dist/utils/Component/wrapInFormGroup.js +4 -4
  223. package/dist/utils/Condition/index.js +2 -2
  224. package/dist/utils/Condition/meetsAllConditions.js +9 -9
  225. package/dist/utils/Condition/meetsAllConditions.test.js +21 -21
  226. package/dist/utils/Condition/meetsCondition.js +31 -20
  227. package/dist/utils/Condition/meetsCondition.test.js +403 -403
  228. package/dist/utils/Condition/meetsOneCondition.js +6 -6
  229. package/dist/utils/Condition/meetsOneCondition.test.js +17 -17
  230. package/dist/utils/Condition/setupConditions.js +19 -14
  231. package/dist/utils/Condition/setupConditions.test.js +8 -8
  232. package/dist/utils/Container/getEditableComponents.js +6 -4
  233. package/dist/utils/Container/getEditableComponents.test.js +46 -44
  234. package/dist/utils/Container/index.js +2 -2
  235. package/dist/utils/Container/setupNesting.js +22 -16
  236. package/dist/utils/Container/setupNesting.test.js +31 -28
  237. package/dist/utils/Container/showContainer.js +8 -4
  238. package/dist/utils/Container/showContainer.test.js +31 -31
  239. package/dist/utils/Data/applyFormula.js +50 -40
  240. package/dist/utils/Data/applyFormula.test.js +26 -26
  241. package/dist/utils/Data/deleteValues.js +8 -4
  242. package/dist/utils/Data/deleteValues.test.js +11 -11
  243. package/dist/utils/Data/getAutocompleteSource.js +29 -20
  244. package/dist/utils/Data/getAutocompleteSource.test.js +87 -81
  245. package/dist/utils/Data/getDataPath.js +30 -20
  246. package/dist/utils/Data/getDataPath.test.js +20 -20
  247. package/dist/utils/Data/getOptions.js +34 -27
  248. package/dist/utils/Data/getOptions.test.js +28 -28
  249. package/dist/utils/Data/getSourceData.js +19 -6
  250. package/dist/utils/Data/getSourceData.test.js +81 -85
  251. package/dist/utils/Data/index.js +2 -2
  252. package/dist/utils/Data/nestInRefdataOptions.js +16 -9
  253. package/dist/utils/Data/nestInRefdataOptions.test.js +17 -17
  254. package/dist/utils/Data/refDataToOptions.js +15 -11
  255. package/dist/utils/Data/refDataToOptions.test.js +20 -20
  256. package/dist/utils/Data/setDataItem.js +8 -7
  257. package/dist/utils/Data/setDataItem.test.js +38 -38
  258. package/dist/utils/Data/setupFormData.js +22 -14
  259. package/dist/utils/Data/setupFormData.test.js +51 -52
  260. package/dist/utils/Data/setupRefDataUrlForComponent.js +28 -21
  261. package/dist/utils/Data/setupRefDataUrlForComponent.test.js +28 -28
  262. package/dist/utils/FormPage/applyConditionalProperties.js +10 -6
  263. package/dist/utils/FormPage/applyConditionalProperties.test.js +19 -16
  264. package/dist/utils/FormPage/getConditionalText.js +4 -4
  265. package/dist/utils/FormPage/getConditionalText.test.js +35 -35
  266. package/dist/utils/FormPage/getFormPage.js +17 -16
  267. package/dist/utils/FormPage/getFormPage.test.js +48 -49
  268. package/dist/utils/FormPage/getFormPages.js +13 -8
  269. package/dist/utils/FormPage/getFormPages.test.js +25 -22
  270. package/dist/utils/FormPage/getPageActions.js +17 -10
  271. package/dist/utils/FormPage/getPageActions.test.js +33 -33
  272. package/dist/utils/FormPage/getParagraphFromText.js +7 -5
  273. package/dist/utils/FormPage/getParagraphFromText.test.js +7 -7
  274. package/dist/utils/FormPage/index.js +5 -3
  275. package/dist/utils/FormPage/showFormPage.js +8 -4
  276. package/dist/utils/FormPage/showFormPage.test.js +33 -33
  277. package/dist/utils/FormPage/showFormPageCYA.js +3 -3
  278. package/dist/utils/FormPage/showFormPageCYA.test.js +9 -9
  279. package/dist/utils/FormPage/useComponent.js +28 -21
  280. package/dist/utils/FormPage/useComponent.test.js +80 -78
  281. package/dist/utils/Format/formatData.js +1 -1
  282. package/dist/utils/Format/formatData.test.js +19 -19
  283. package/dist/utils/Format/formatDataForComponent.js +7 -6
  284. package/dist/utils/Format/formatDataForComponent.test.js +78 -50
  285. package/dist/utils/Format/formatDataForForm.js +8 -6
  286. package/dist/utils/Format/formatDataForForm.test.js +17 -14
  287. package/dist/utils/Format/formatDataForPage.js +5 -4
  288. package/dist/utils/Format/formatDataForPage.test.js +25 -20
  289. package/dist/utils/Format/index.js +2 -2
  290. package/dist/utils/Hub/getFormHub.js +2 -2
  291. package/dist/utils/Hub/getFormHub.test.js +32 -29
  292. package/dist/utils/Hub/index.js +2 -2
  293. package/dist/utils/Meta/constants.js +2 -2
  294. package/dist/utils/Meta/documents/getDocuments.js +4 -1
  295. package/dist/utils/Meta/documents/getDocuments.test.js +17 -25
  296. package/dist/utils/Meta/documents/index.js +2 -2
  297. package/dist/utils/Meta/documents/setDocumentsForField.js +17 -15
  298. package/dist/utils/Meta/documents/setDocumentsForField.test.js +35 -69
  299. package/dist/utils/Meta/index.js +2 -2
  300. package/dist/utils/Operate/checkValueIsTruthy.js +4 -4
  301. package/dist/utils/Operate/checkValueIsTruthy.test.js +17 -17
  302. package/dist/utils/Operate/deleteValueInFormData.js +3 -3
  303. package/dist/utils/Operate/deleteValueInFormData.test.js +15 -15
  304. package/dist/utils/Operate/getFirstOf.js +8 -8
  305. package/dist/utils/Operate/getFirstOf.test.js +33 -33
  306. package/dist/utils/Operate/getIndexOfMatchingValueIn.js +12 -12
  307. package/dist/utils/Operate/getIndexOfMatchingValueIn.test.js +53 -47
  308. package/dist/utils/Operate/getLength.js +11 -11
  309. package/dist/utils/Operate/getLength.test.js +19 -19
  310. package/dist/utils/Operate/index.js +2 -2
  311. package/dist/utils/Operate/persistValueInFormData.js +6 -6
  312. package/dist/utils/Operate/persistValueInFormData.test.js +21 -23
  313. package/dist/utils/Operate/runPageOperations.js +9 -9
  314. package/dist/utils/Operate/runPageOperations.test.js +37 -36
  315. package/dist/utils/Operate/setValueInFormData.js +5 -5
  316. package/dist/utils/Operate/setValueInFormData.test.js +17 -17
  317. package/dist/utils/Operate/shouldRun.js +8 -8
  318. package/dist/utils/Operate/shouldRun.test.js +28 -22
  319. package/dist/utils/Validate/additional/conditionallyPermittedChange.js +1 -1
  320. package/dist/utils/Validate/additional/conditionallyPermittedChange.test.js +15 -15
  321. package/dist/utils/Validate/additional/conditionallyRequired.js +5 -4
  322. package/dist/utils/Validate/additional/conditionallyRequired.test.js +19 -19
  323. package/dist/utils/Validate/additional/index.js +8 -8
  324. package/dist/utils/Validate/additional/index.test.js +22 -22
  325. package/dist/utils/Validate/additional/mustBeAfter.js +3 -3
  326. package/dist/utils/Validate/additional/mustBeAfter.test.js +41 -41
  327. package/dist/utils/Validate/additional/mustBeBefore.js +3 -3
  328. package/dist/utils/Validate/additional/mustBeBefore.test.js +29 -29
  329. package/dist/utils/Validate/additional/mustBeEarlierDateTime.js +14 -9
  330. package/dist/utils/Validate/additional/mustBeEarlierDateTime.test.js +42 -38
  331. package/dist/utils/Validate/additional/mustBeGreaterThan.js +2 -2
  332. package/dist/utils/Validate/additional/mustBeGreaterThan.test.js +19 -19
  333. package/dist/utils/Validate/additional/mustBeInTheFuture.js +4 -4
  334. package/dist/utils/Validate/additional/mustBeInTheFuture.test.js +13 -13
  335. package/dist/utils/Validate/additional/mustBeInThePast.js +5 -5
  336. package/dist/utils/Validate/additional/mustBeInThePast.test.js +13 -13
  337. package/dist/utils/Validate/additional/mustBeLessThan.js +2 -2
  338. package/dist/utils/Validate/additional/mustBeLessThan.test.js +18 -18
  339. package/dist/utils/Validate/additional/mustBeLongerThan.js +1 -1
  340. package/dist/utils/Validate/additional/mustBeLongerThan.test.js +17 -17
  341. package/dist/utils/Validate/additional/mustBeNumbersOnly.js +2 -2
  342. package/dist/utils/Validate/additional/mustBeNumbersOnly.test.js +21 -21
  343. package/dist/utils/Validate/additional/mustBeOneOf.js +1 -1
  344. package/dist/utils/Validate/additional/mustBeOneOf.test.js +13 -13
  345. package/dist/utils/Validate/additional/mustBeShorterThan.js +1 -1
  346. package/dist/utils/Validate/additional/mustBeShorterThan.test.js +17 -17
  347. package/dist/utils/Validate/additional/mustBeUniqueInCollection.js +5 -5
  348. package/dist/utils/Validate/additional/mustBeUniqueInCollection.test.js +40 -36
  349. package/dist/utils/Validate/additional/mustEnterAtLeastOne.js +5 -3
  350. package/dist/utils/Validate/additional/mustEnterAtLeastOne.test.js +17 -15
  351. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.js +1 -1
  352. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.test.js +13 -13
  353. package/dist/utils/Validate/additional/mustNotContainSql.js +4 -3
  354. package/dist/utils/Validate/additional/mustNotContainSql.test.js +15 -15
  355. package/dist/utils/Validate/additional/mustSelectOnlyOne.js +5 -3
  356. package/dist/utils/Validate/additional/mustSelectOnlyOne.test.js +27 -29
  357. package/dist/utils/Validate/additional/utils.js +24 -11
  358. package/dist/utils/Validate/index.js +2 -2
  359. package/dist/utils/Validate/validateCollection.js +27 -21
  360. package/dist/utils/Validate/validateCollection.test.js +77 -85
  361. package/dist/utils/Validate/validateComponent.js +23 -22
  362. package/dist/utils/Validate/validateComponent.test.js +165 -188
  363. package/dist/utils/Validate/validateContainer.js +21 -16
  364. package/dist/utils/Validate/validateContainer.test.js +56 -62
  365. package/dist/utils/Validate/validateDate.js +23 -17
  366. package/dist/utils/Validate/validateDate.test.js +32 -31
  367. package/dist/utils/Validate/validateEmail.js +9 -7
  368. package/dist/utils/Validate/validateEmail.test.js +26 -26
  369. package/dist/utils/Validate/validateMultifile.js +7 -5
  370. package/dist/utils/Validate/validateMultifile.test.js +18 -17
  371. package/dist/utils/Validate/validatePage.js +24 -20
  372. package/dist/utils/Validate/validatePage.test.js +215 -227
  373. package/dist/utils/Validate/validateRegex.js +8 -5
  374. package/dist/utils/Validate/validateRegex.test.js +17 -17
  375. package/dist/utils/Validate/validateRequired.js +7 -5
  376. package/dist/utils/Validate/validateRequired.test.js +19 -19
  377. package/dist/utils/Validate/validateTextArea.js +7 -5
  378. package/dist/utils/Validate/validateTextArea.test.js +21 -21
  379. package/dist/utils/Validate/validateTime.js +19 -12
  380. package/dist/utils/Validate/validateTime.test.js +27 -27
  381. package/dist/utils/index.js +10 -8
  382. package/package.json +1 -1
@@ -1,5 +1,6 @@
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); }
3
4
  var _react = require("@testing-library/react");
4
5
  var _react2 = _interopRequireDefault(require("react"));
5
6
  var _models = require("../../models");
@@ -7,16 +8,16 @@ var _setupTests = require("../../setupTests");
7
8
  var _utils = _interopRequireDefault(require("../../utils"));
8
9
  var _ActionButton = require("../PageActions/ActionButton");
9
10
  var _FormPage = _interopRequireWildcard(require("./FormPage"));
10
- 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); }
11
- 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 && {}.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; }
12
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
- // Global imports
14
-
11
+ 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); }
12
+ 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; }
13
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
14
+ function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator.return && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw new Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, catch: function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
15
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
16
+ function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } // Global imports
15
17
  // Local imports
16
-
17
- describe('components.FormPage', () => {
18
- describe('FormPage', () => {
19
- const TEXT = {
18
+ describe('components.FormPage', function () {
19
+ describe('FormPage', function () {
20
+ var TEXT = {
20
21
  id: 'text',
21
22
  fieldId: 'text',
22
23
  type: 'text',
@@ -24,7 +25,7 @@ describe('components.FormPage', () => {
24
25
  hint: 'Text hint'
25
26
  };
26
27
  // eslint-disable-next-line no-template-curly-in-string
27
- const TEXT_WITH_EXPRESSION = {
28
+ var TEXT_WITH_EXPRESSION = {
28
29
  id: 'text1',
29
30
  fieldId: 'text1',
30
31
  type: 'text',
@@ -32,7 +33,7 @@ describe('components.FormPage', () => {
32
33
  hint: 'Text hint ${currentUser.givenName}'
33
34
  };
34
35
  // eslint-disable-next-line no-template-curly-in-string
35
- const AUTO_WITH_EXPRESSION = {
36
+ var AUTO_WITH_EXPRESSION = {
36
37
  id: 'text2',
37
38
  fieldId: 'text2',
38
39
  label: '${text2} ${currentUser.givenName}',
@@ -42,8 +43,8 @@ describe('components.FormPage', () => {
42
43
  source: [],
43
44
  disabled: false
44
45
  };
45
- const VALUE = 'Text value';
46
- const PAGE = {
46
+ var VALUE = 'Text value';
47
+ var PAGE = {
47
48
  id: 'pageId',
48
49
  title: 'Page 1',
49
50
  components: [TEXT],
@@ -52,7 +53,7 @@ describe('components.FormPage', () => {
52
53
  text: VALUE
53
54
  }
54
55
  };
55
- const PAGE_WITH_BUTTON_ACTIONS = {
56
+ var PAGE_WITH_BUTTON_ACTIONS = {
56
57
  id: 'pageId',
57
58
  // eslint-disable-next-line no-template-curly-in-string
58
59
  title: '${title}',
@@ -72,8 +73,8 @@ describe('components.FormPage', () => {
72
73
  }],
73
74
  formData: {
74
75
  title: 'Order Form',
75
- text1: `Text1 ${VALUE}`,
76
- text2: `Text2 ${VALUE}`,
76
+ text1: "Text1 ".concat(VALUE),
77
+ text2: "Text2 ".concat(VALUE),
77
78
  wrapper: {
78
79
  email: 'test@example.email',
79
80
  nextAction: 'Payment',
@@ -84,7 +85,7 @@ describe('components.FormPage', () => {
84
85
  }
85
86
  }
86
87
  };
87
- const PAGE_WITH_CONDITIONAL_BUTTONS = {
88
+ var PAGE_WITH_CONDITIONAL_BUTTONS = {
88
89
  id: 'pageId',
89
90
  // eslint-disable-next-line no-template-curly-in-string
90
91
  title: '${title}',
@@ -110,8 +111,8 @@ describe('components.FormPage', () => {
110
111
  }],
111
112
  formData: {
112
113
  title: 'Order Form',
113
- text1: `Text1 ${VALUE}`,
114
- text2: `Text2 ${VALUE}`,
114
+ text1: "Text1 ".concat(VALUE),
115
+ text2: "Text2 ".concat(VALUE),
115
116
  wrapper: {
116
117
  email: 'test@example.email',
117
118
  nextAction: 'Payment',
@@ -122,55 +123,58 @@ describe('components.FormPage', () => {
122
123
  }
123
124
  }
124
125
  };
125
- const ON_ACTION_CALLS = [];
126
- const checkInputField = (formGroup, fieldId, lbl, hnt, val) => {
126
+ var ON_ACTION_CALLS = [];
127
+ var checkInputField = function checkInputField(formGroup, fieldId, lbl, hnt, val) {
127
128
  expect(formGroup.tagName).toEqual('DIV');
128
129
  expect(formGroup.classList).toContain('govuk-form-group');
129
- const label = formGroup.childNodes[0];
130
+ var label = formGroup.childNodes[0];
130
131
  expect(label.tagName).toEqual('LABEL');
131
132
  expect(label.classList).toContain('govuk-label');
132
133
  expect(label.textContent).toEqual(lbl);
133
134
  expect(label.getAttribute('for')).toEqual(fieldId);
134
- const hint = formGroup.childNodes[1];
135
+ var hint = formGroup.childNodes[1];
135
136
  expect(hint.tagName).toEqual('DIV');
136
137
  expect(hint.classList).toContain('govuk-hint');
137
138
  expect(hint.textContent).toEqual(hnt);
138
- const input = formGroup.childNodes[2];
139
+ var input = formGroup.childNodes[2];
139
140
  expect(input.tagName).toEqual('INPUT');
140
141
  expect(input.classList).toContain('govuk-input');
141
142
  expect(input.id).toEqual(fieldId);
142
143
  expect(input.value).toEqual(val);
143
144
  return input;
144
145
  };
145
- const checkAutoCompleteField = (formGroup, fieldId, lbl, hnt, val) => {
146
+ var checkAutoCompleteField = function checkAutoCompleteField(formGroup, fieldId, lbl, hnt, val) {
146
147
  expect(formGroup.tagName).toEqual('DIV');
147
148
  expect(formGroup.classList).toContain('govuk-form-group');
148
- const label = formGroup.childNodes[0];
149
+ var label = formGroup.childNodes[0];
149
150
  expect(label.tagName).toEqual('LABEL');
150
151
  expect(label.classList).toContain('govuk-label');
151
152
  expect(label.textContent).toEqual(lbl);
152
153
  expect(label.getAttribute('for')).toEqual(fieldId);
153
- const hint = formGroup.childNodes[1];
154
+ var hint = formGroup.childNodes[1];
154
155
  expect(hint.tagName).toEqual('DIV');
155
156
  expect(hint.classList).toContain('govuk-hint');
156
157
  expect(hint.textContent).toEqual(hnt);
157
- const outerWrapper = formGroup.childNodes[2];
158
+ var outerWrapper = formGroup.childNodes[2];
158
159
  expect(outerWrapper.classList).toContain('hods-autocomplete__outer-wrapper');
159
- const autocomplete = outerWrapper.childNodes[0];
160
+ var autocomplete = outerWrapper.childNodes[0];
160
161
  expect(autocomplete.classList).toContain('hods-autocomplete__wrapper');
161
- const input = [].concat(autocomplete.childNodes).filter(e => e.tagName === 'INPUT')[0];
162
+ var input = [].concat(autocomplete.childNodes).filter(function (e) {
163
+ return e.tagName === 'INPUT';
164
+ })[0];
162
165
  expect(input.classList).toContain('hods-autocomplete__input');
163
166
  expect(input.tagName).toEqual('INPUT');
164
167
  expect(input.id).toEqual(fieldId);
165
168
  expect(input.value).toEqual(val);
166
169
  return input;
167
170
  };
168
- const checkFormButtonGroup = (buttonGroup, labels) => {
169
- const buttons = [];
171
+ var checkFormButtonGroup = function checkFormButtonGroup(buttonGroup, labels) {
172
+ var _buttonGroup$childNod;
173
+ var buttons = [];
170
174
  expect(buttonGroup.tagName).toEqual('DIV');
171
175
  expect(buttonGroup.classList).toContain('hods-button-group');
172
- expect(buttonGroup.childNodes?.length).toEqual(labels.length);
173
- buttonGroup.childNodes.forEach((button, i) => {
176
+ expect((_buttonGroup$childNod = buttonGroup.childNodes) === null || _buttonGroup$childNod === void 0 ? void 0 : _buttonGroup$childNod.length).toEqual(labels.length);
177
+ buttonGroup.childNodes.forEach(function (button, i) {
174
178
  expect(button.tagName).toEqual('BUTTON');
175
179
  expect(button.classList).toContain('hods-button');
176
180
  expect(button.textContent).toEqual(labels[i]);
@@ -178,118 +182,151 @@ describe('components.FormPage', () => {
178
182
  });
179
183
  return buttons;
180
184
  };
181
- const ON_ACTION = (action, patch, onError) => {
185
+ var ON_ACTION = function ON_ACTION(action, patch, onError) {
182
186
  ON_ACTION_CALLS.push({
183
- action,
184
- patch,
185
- onError
187
+ action: action,
188
+ patch: patch,
189
+ onError: onError
186
190
  });
187
191
  };
188
- beforeEach(() => {
192
+ beforeEach(function () {
189
193
  PAGE.formData = {
190
194
  text: VALUE
191
195
  };
192
196
  ON_ACTION_CALLS.length = 0;
193
197
  });
194
- it('should render a submit page correctly', async () => {
195
- const {
196
- container
197
- } = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react2.default.createElement(_FormPage.default, {
198
- page: PAGE,
199
- onAction: ON_ACTION
200
- }));
201
- const page = container.childNodes[0];
202
- expect(page.tagName).toEqual('DIV');
203
- expect(page.classList).toContain(_FormPage.DEFAULT_CLASS);
204
- const heading = page.childNodes[0];
205
- expect(heading.classList).toContain('govuk-heading-l');
206
- expect(heading.textContent).toEqual(_utils.default.FormPage.getTitle(PAGE.title, PAGE.formData));
207
- checkInputField(page.childNodes[1], TEXT.fieldId, `${TEXT.label} (optional)`, TEXT.hint, VALUE);
208
- checkFormButtonGroup(page.childNodes[2], [_ActionButton.DEFAULT_LABEL]);
209
- });
210
- it('should render a submit page correctly and submit action button has interpolated label', async () => {
211
- const {
212
- container
213
- } = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react2.default.createElement(_FormPage.default, {
214
- page: PAGE_WITH_BUTTON_ACTIONS,
215
- onAction: ON_ACTION
216
- }));
217
- const page = container.childNodes[0];
218
- const FORM_DATA = PAGE_WITH_BUTTON_ACTIONS.formData;
219
- expect(page.tagName).toEqual('DIV');
220
- expect(page.classList).toContain(_FormPage.DEFAULT_CLASS);
221
- const heading = page.childNodes[0];
222
- expect(heading.classList).toContain('govuk-heading-l');
223
- expect(heading.textContent).toEqual(FORM_DATA.title);
224
- checkInputField(page.childNodes[1], TEXT_WITH_EXPRESSION.fieldId, 'Email to test@example.email (optional)', 'Text hint Doe', 'Text1 Text value');
225
- checkAutoCompleteField(page.childNodes[2], AUTO_WITH_EXPRESSION.fieldId, `${FORM_DATA.text2} ${FORM_DATA.currentUser.givenName}`, FORM_DATA.wrapper.email, `Text2 ${VALUE}`);
226
- checkFormButtonGroup(page.childNodes[3], ['Next Payment', 'Go back User Details']);
227
- });
228
- it('should handle a page change appropriately', async () => {
229
- const {
230
- container
231
- } = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react2.default.createElement(_FormPage.default, {
232
- page: PAGE,
233
- onAction: ON_ACTION
234
- }));
235
- const page = container.childNodes[0];
236
- expect(page.tagName).toEqual('DIV');
237
-
238
- // Change the input.
239
- const input = page.childNodes[1].childNodes[2];
240
- const NEW_VALUE = `${VALUE}.`;
241
- const EVENT = {
242
- target: {
243
- name: TEXT.fieldId,
244
- value: NEW_VALUE
198
+ it('should render a submit page correctly', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
199
+ var _renderWithValidation, container, page, heading;
200
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
201
+ while (1) switch (_context.prev = _context.next) {
202
+ case 0:
203
+ _renderWithValidation = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react2.default.createElement(_FormPage.default, {
204
+ page: PAGE,
205
+ onAction: ON_ACTION
206
+ })), container = _renderWithValidation.container;
207
+ page = container.childNodes[0];
208
+ expect(page.tagName).toEqual('DIV');
209
+ expect(page.classList).toContain(_FormPage.DEFAULT_CLASS);
210
+ heading = page.childNodes[0];
211
+ expect(heading.classList).toContain('govuk-heading-l');
212
+ expect(heading.textContent).toEqual(_utils.default.FormPage.getTitle(PAGE.title, PAGE.formData));
213
+ checkInputField(page.childNodes[1], TEXT.fieldId, "".concat(TEXT.label, " (optional)"), TEXT.hint, VALUE);
214
+ checkFormButtonGroup(page.childNodes[2], [_ActionButton.DEFAULT_LABEL]);
215
+ case 9:
216
+ case "end":
217
+ return _context.stop();
245
218
  }
246
- };
247
- _react.fireEvent.change(input, EVENT);
219
+ }, _callee);
220
+ })));
221
+ it('should render a submit page correctly and submit action button has interpolated label', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
222
+ var _renderWithValidation2, container, page, FORM_DATA, heading;
223
+ return _regeneratorRuntime().wrap(function _callee2$(_context2) {
224
+ while (1) switch (_context2.prev = _context2.next) {
225
+ case 0:
226
+ _renderWithValidation2 = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react2.default.createElement(_FormPage.default, {
227
+ page: PAGE_WITH_BUTTON_ACTIONS,
228
+ onAction: ON_ACTION
229
+ })), container = _renderWithValidation2.container;
230
+ page = container.childNodes[0];
231
+ FORM_DATA = PAGE_WITH_BUTTON_ACTIONS.formData;
232
+ expect(page.tagName).toEqual('DIV');
233
+ expect(page.classList).toContain(_FormPage.DEFAULT_CLASS);
234
+ heading = page.childNodes[0];
235
+ expect(heading.classList).toContain('govuk-heading-l');
236
+ expect(heading.textContent).toEqual(FORM_DATA.title);
237
+ checkInputField(page.childNodes[1], TEXT_WITH_EXPRESSION.fieldId, 'Email to test@example.email (optional)', 'Text hint Doe', 'Text1 Text value');
238
+ checkAutoCompleteField(page.childNodes[2], AUTO_WITH_EXPRESSION.fieldId, "".concat(FORM_DATA.text2, " ").concat(FORM_DATA.currentUser.givenName), FORM_DATA.wrapper.email, "Text2 ".concat(VALUE));
239
+ checkFormButtonGroup(page.childNodes[3], ['Next Payment', 'Go back User Details']);
240
+ case 11:
241
+ case "end":
242
+ return _context2.stop();
243
+ }
244
+ }, _callee2);
245
+ })));
246
+ it('should handle a page change appropriately', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
247
+ var _renderWithValidation3, container, page, input, NEW_VALUE, EVENT;
248
+ return _regeneratorRuntime().wrap(function _callee3$(_context3) {
249
+ while (1) switch (_context3.prev = _context3.next) {
250
+ case 0:
251
+ _renderWithValidation3 = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react2.default.createElement(_FormPage.default, {
252
+ page: PAGE,
253
+ onAction: ON_ACTION
254
+ })), container = _renderWithValidation3.container;
255
+ page = container.childNodes[0];
256
+ expect(page.tagName).toEqual('DIV');
248
257
 
249
- // And confirm the formData has been changed.
250
- expect(PAGE.formData.text).toEqual(NEW_VALUE);
251
- });
252
- it('should handle a page action appropriately', async () => {
253
- const {
254
- container
255
- } = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react2.default.createElement(_FormPage.default, {
256
- page: PAGE,
257
- onAction: ON_ACTION
258
- }));
259
- const page = container.childNodes[0];
258
+ // Change the input.
259
+ input = page.childNodes[1].childNodes[2];
260
+ NEW_VALUE = "".concat(VALUE, ".");
261
+ EVENT = {
262
+ target: {
263
+ name: TEXT.fieldId,
264
+ value: NEW_VALUE
265
+ }
266
+ };
267
+ _react.fireEvent.change(input, EVENT);
260
268
 
261
- // Change the input.
262
- const input = page.childNodes[1].childNodes[2];
263
- const NEW_VALUE = `${VALUE}.`;
264
- const CHANGE_EVENT = {
265
- target: {
266
- name: TEXT.fieldId,
267
- value: NEW_VALUE
269
+ // And confirm the formData has been changed.
270
+ expect(PAGE.formData.text).toEqual(NEW_VALUE);
271
+ case 8:
272
+ case "end":
273
+ return _context3.stop();
268
274
  }
269
- };
270
- _react.fireEvent.change(input, CHANGE_EVENT);
275
+ }, _callee3);
276
+ })));
277
+ it('should handle a page action appropriately', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4() {
278
+ var _renderWithValidation4, container, page, input, NEW_VALUE, CHANGE_EVENT, button;
279
+ return _regeneratorRuntime().wrap(function _callee4$(_context4) {
280
+ while (1) switch (_context4.prev = _context4.next) {
281
+ case 0:
282
+ _renderWithValidation4 = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react2.default.createElement(_FormPage.default, {
283
+ page: PAGE,
284
+ onAction: ON_ACTION
285
+ })), container = _renderWithValidation4.container;
286
+ page = container.childNodes[0]; // Change the input.
287
+ input = page.childNodes[1].childNodes[2];
288
+ NEW_VALUE = "".concat(VALUE, ".");
289
+ CHANGE_EVENT = {
290
+ target: {
291
+ name: TEXT.fieldId,
292
+ value: NEW_VALUE
293
+ }
294
+ };
295
+ _react.fireEvent.change(input, CHANGE_EVENT);
271
296
 
272
- // Then click the action button.
273
- const button = page.childNodes[2].childNodes[0];
274
- _react.fireEvent.click(button, {});
297
+ // Then click the action button.
298
+ button = page.childNodes[2].childNodes[0];
299
+ _react.fireEvent.click(button, {});
275
300
 
276
- // And confirm an appropriate action was received.
277
- expect(ON_ACTION_CALLS.length).toEqual(1);
278
- expect(PAGE.formData.text).toEqual(NEW_VALUE);
279
- expect(ON_ACTION_CALLS[0].action).toEqual(_models.PageAction.DEFAULTS.submit);
280
- expect(ON_ACTION_CALLS[0].patch).toEqual({
281
- text: NEW_VALUE
282
- });
283
- });
284
- it('should render only the conditionally shown button', async () => {
285
- const {
286
- container
287
- } = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react2.default.createElement(_FormPage.default, {
288
- page: PAGE_WITH_CONDITIONAL_BUTTONS,
289
- onAction: ON_ACTION
290
- }));
291
- const page = container.childNodes[0];
292
- checkFormButtonGroup(page.childNodes[3], ['Button 2']); // Just the second button shown
293
- });
301
+ // And confirm an appropriate action was received.
302
+ expect(ON_ACTION_CALLS.length).toEqual(1);
303
+ expect(PAGE.formData.text).toEqual(NEW_VALUE);
304
+ expect(ON_ACTION_CALLS[0].action).toEqual(_models.PageAction.DEFAULTS.submit);
305
+ expect(ON_ACTION_CALLS[0].patch).toEqual({
306
+ text: NEW_VALUE
307
+ });
308
+ case 12:
309
+ case "end":
310
+ return _context4.stop();
311
+ }
312
+ }, _callee4);
313
+ })));
314
+ it('should render only the conditionally shown button', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5() {
315
+ var _renderWithValidation5, container, page;
316
+ return _regeneratorRuntime().wrap(function _callee5$(_context5) {
317
+ while (1) switch (_context5.prev = _context5.next) {
318
+ case 0:
319
+ _renderWithValidation5 = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react2.default.createElement(_FormPage.default, {
320
+ page: PAGE_WITH_CONDITIONAL_BUTTONS,
321
+ onAction: ON_ACTION
322
+ })), container = _renderWithValidation5.container;
323
+ page = container.childNodes[0];
324
+ checkFormButtonGroup(page.childNodes[3], ['Button 2']); // Just the second button shown
325
+ case 3:
326
+ case "end":
327
+ return _context5.stop();
328
+ }
329
+ }, _callee5);
330
+ })));
294
331
  });
295
332
  });
@@ -5,5 +5,5 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var _FormPage = _interopRequireDefault(require("./FormPage"));
8
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
8
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
9
  var _default = exports.default = _FormPage.default;