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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (384) hide show
  1. package/dist/components/CheckYourAnswers/Answer.js +15 -15
  2. package/dist/components/CheckYourAnswers/Answer.test.js +132 -181
  3. package/dist/components/CheckYourAnswers/CheckYourAnswers.js +106 -142
  4. package/dist/components/CheckYourAnswers/CheckYourAnswers.test.js +563 -941
  5. package/dist/components/CheckYourAnswers/index.js +1 -1
  6. package/dist/components/CollectionPage/CollectionPage.js +76 -66
  7. package/dist/components/CollectionPage/CollectionPage.test.js +318 -369
  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 +83 -79
  11. package/dist/components/CollectionSummary/CollectionSummary.js +109 -131
  12. package/dist/components/CollectionSummary/CollectionSummary.test.js +198 -180
  13. package/dist/components/CollectionSummary/Confirmation.js +15 -13
  14. package/dist/components/CollectionSummary/Confirmation.test.js +68 -63
  15. package/dist/components/CollectionSummary/RenderListView.js +47 -55
  16. package/dist/components/CollectionSummary/RenderListView.test.js +82 -81
  17. package/dist/components/CollectionSummary/SummaryCard.js +121 -157
  18. package/dist/components/CollectionSummary/SummaryCard.test.js +970 -1000
  19. package/dist/components/CollectionSummary/SummaryCardDetails.js +103 -94
  20. package/dist/components/CollectionSummary/SummaryCardDetails.test.js +187 -195
  21. package/dist/components/CollectionSummary/SummaryCardValidationContext.js +31 -36
  22. package/dist/components/CollectionSummary/SummaryCardValidationContext.test.js +64 -76
  23. package/dist/components/CollectionSummary/index.js +1 -1
  24. package/dist/components/FormComponent/Collection.js +81 -117
  25. package/dist/components/FormComponent/Collection.scss +1 -1
  26. package/dist/components/FormComponent/Collection.test.js +910 -1082
  27. package/dist/components/FormComponent/Container.js +45 -38
  28. package/dist/components/FormComponent/Container.scss +15 -0
  29. package/dist/components/FormComponent/Container.test.js +379 -411
  30. package/dist/components/FormComponent/FormComponent.js +71 -74
  31. package/dist/components/FormComponent/FormComponent.test.js +354 -415
  32. package/dist/components/FormComponent/helpers/addLabel.js +4 -7
  33. package/dist/components/FormComponent/helpers/getComponentDisabled.js +1 -1
  34. package/dist/components/FormComponent/helpers/getComponentDisabled.test.js +8 -8
  35. package/dist/components/FormComponent/helpers/getComponentError.js +3 -5
  36. package/dist/components/FormComponent/helpers/getComponentError.test.js +15 -15
  37. package/dist/components/FormComponent/helpers/getComponentFieldSet.js +3 -4
  38. package/dist/components/FormComponent/helpers/getComponentFieldSet.test.js +7 -7
  39. package/dist/components/FormComponent/helpers/index.js +5 -5
  40. package/dist/components/FormComponent/index.js +1 -1
  41. package/dist/components/FormPage/FormPage.js +71 -87
  42. package/dist/components/FormPage/FormPage.test.js +133 -170
  43. package/dist/components/FormPage/index.js +1 -1
  44. package/dist/components/FormRenderer/FormRenderer.js +153 -198
  45. package/dist/components/FormRenderer/FormRenderer.test.js +731 -1116
  46. package/dist/components/FormRenderer/handlers/cyaAction.js +3 -3
  47. package/dist/components/FormRenderer/handlers/getPageId.js +1 -3
  48. package/dist/components/FormRenderer/handlers/getPageId.test.js +15 -15
  49. package/dist/components/FormRenderer/handlers/handlers.test.js +33 -33
  50. package/dist/components/FormRenderer/handlers/index.js +2 -2
  51. package/dist/components/FormRenderer/handlers/navigate.js +4 -4
  52. package/dist/components/FormRenderer/handlers/submissionError.js +1 -1
  53. package/dist/components/FormRenderer/helpers/canActionProceed.js +1 -1
  54. package/dist/components/FormRenderer/helpers/canActionProceed.test.js +16 -16
  55. package/dist/components/FormRenderer/helpers/canCYASubmit.js +1 -3
  56. package/dist/components/FormRenderer/helpers/canCYASubmit.test.js +17 -21
  57. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.js +27 -30
  58. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.test.js +21 -21
  59. package/dist/components/FormRenderer/helpers/getCYA.js +5 -7
  60. package/dist/components/FormRenderer/helpers/getCYA.test.js +12 -12
  61. package/dist/components/FormRenderer/helpers/getFormState.js +6 -8
  62. package/dist/components/FormRenderer/helpers/getFormState.test.js +11 -11
  63. package/dist/components/FormRenderer/helpers/getNextPageId.js +18 -32
  64. package/dist/components/FormRenderer/helpers/getNextPageId.test.js +68 -68
  65. package/dist/components/FormRenderer/helpers/getPage.js +2 -4
  66. package/dist/components/FormRenderer/helpers/getPage.test.js +12 -12
  67. package/dist/components/FormRenderer/helpers/getRelevantPages.js +8 -11
  68. package/dist/components/FormRenderer/helpers/getRelevantPages.test.js +15 -15
  69. package/dist/components/FormRenderer/helpers/getSubmissionStatus.js +12 -13
  70. package/dist/components/FormRenderer/helpers/getSubmissionStatus.test.js +104 -98
  71. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.js +65 -64
  72. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.test.js +72 -79
  73. package/dist/components/FormRenderer/helpers/index.js +2 -2
  74. package/dist/components/FormRenderer/index.js +1 -1
  75. package/dist/components/FormRenderer/onCYAAction.js +61 -54
  76. package/dist/components/FormRenderer/onCYAAction.test.js +165 -153
  77. package/dist/components/FormRenderer/onPageAction.js +45 -41
  78. package/dist/components/FormRenderer/onPageAction.test.js +225 -210
  79. package/dist/components/FormRenderer/onTaskAction.js +11 -15
  80. package/dist/components/FormRenderer/onTaskAction.test.js +94 -89
  81. package/dist/components/PageActions/ActionButton.js +13 -16
  82. package/dist/components/PageActions/ActionButton.test.js +57 -79
  83. package/dist/components/PageActions/PageActions.js +11 -11
  84. package/dist/components/PageActions/PageActions.test.js +87 -116
  85. package/dist/components/PageActions/index.js +1 -1
  86. package/dist/components/SummaryList/GroupAction.js +13 -21
  87. package/dist/components/SummaryList/GroupAction.test.js +41 -37
  88. package/dist/components/SummaryList/RowAction.js +12 -17
  89. package/dist/components/SummaryList/RowAction.test.js +41 -37
  90. package/dist/components/SummaryList/SummaryList.js +23 -28
  91. package/dist/components/SummaryList/SummaryList.test.js +179 -206
  92. package/dist/components/SummaryList/SummaryListHeadingRow.js +8 -6
  93. package/dist/components/SummaryList/SummaryListHeadingRowWithAction.js +7 -5
  94. package/dist/components/SummaryList/SummaryListRow.js +8 -6
  95. package/dist/components/SummaryList/SummaryListTitleRow.js +7 -5
  96. package/dist/components/SummaryList/helpers/getGroupActionAttributes.js +4 -6
  97. package/dist/components/SummaryList/helpers/getGroupActionAttributes.test.js +24 -24
  98. package/dist/components/SummaryList/helpers/getRowActionAttributes.js +4 -6
  99. package/dist/components/SummaryList/helpers/getRowActionAttributes.test.js +24 -24
  100. package/dist/components/SummaryList/helpers/index.js +2 -2
  101. package/dist/components/SummaryList/index.js +1 -1
  102. package/dist/components/TaskList/Task.js +20 -30
  103. package/dist/components/TaskList/Task.test.js +84 -77
  104. package/dist/components/TaskList/TaskList.js +53 -84
  105. package/dist/components/TaskList/TaskList.test.js +150 -150
  106. package/dist/components/TaskList/TaskState.js +8 -6
  107. package/dist/components/TaskList/TaskState.test.js +56 -49
  108. package/dist/components/TaskList/index.js +1 -1
  109. package/dist/components/index.js +8 -8
  110. package/dist/context/HooksContext/HooksContext.js +58 -81
  111. package/dist/context/HooksContext/HooksContext.test.js +27 -36
  112. package/dist/context/HooksContext/index.js +3 -4
  113. package/dist/context/ValidationContext/ValidationContext.js +44 -95
  114. package/dist/context/ValidationContext/ValidationContext.test.js +58 -70
  115. package/dist/context/ValidationContext/index.js +3 -4
  116. package/dist/context/index.js +3 -3
  117. package/dist/hooks/index.js +10 -11
  118. package/dist/hooks/useAxios.js +15 -41
  119. package/dist/hooks/useGetRequest.js +62 -98
  120. package/dist/hooks/useHooks.js +1 -3
  121. package/dist/hooks/useRefData.js +28 -41
  122. package/dist/hooks/useValidation.js +1 -3
  123. package/dist/index.js +14 -15
  124. package/dist/models/CollectionLabels.js +1 -1
  125. package/dist/models/ComponentTypes.js +25 -25
  126. package/dist/models/EventTypes.js +4 -4
  127. package/dist/models/FormPages.js +4 -4
  128. package/dist/models/FormTypes.js +8 -8
  129. package/dist/models/HubFormats.js +3 -3
  130. package/dist/models/PageAction.js +44 -38
  131. package/dist/models/TaskStates.js +29 -28
  132. package/dist/models/index.js +10 -10
  133. package/dist/setupTests.js +31 -32
  134. package/dist/utils/CheckYourAnswers/getCYAAction.js +5 -5
  135. package/dist/utils/CheckYourAnswers/getCYAAction.test.js +53 -55
  136. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.js +17 -27
  137. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.test.js +34 -36
  138. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.js +20 -34
  139. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.test.js +43 -45
  140. package/dist/utils/CheckYourAnswers/getCYARow.js +8 -10
  141. package/dist/utils/CheckYourAnswers/getCYARow.test.js +87 -87
  142. package/dist/utils/CheckYourAnswers/getCYARowForGroup.js +19 -25
  143. package/dist/utils/CheckYourAnswers/getCYARowForGroup.test.js +16 -17
  144. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.js +39 -45
  145. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.test.js +72 -75
  146. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.js +100 -105
  147. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.test.js +218 -182
  148. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.js +26 -21
  149. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.test.js +112 -106
  150. package/dist/utils/CheckYourAnswers/getCYARowsForPage.js +15 -21
  151. package/dist/utils/CheckYourAnswers/getCYARowsForPage.test.js +77 -83
  152. package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.js +13 -13
  153. package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.test.js +14 -19
  154. package/dist/utils/CheckYourAnswers/index.js +2 -2
  155. package/dist/utils/CheckYourAnswers/showComponentCYA.js +6 -6
  156. package/dist/utils/CheckYourAnswers/showComponentCYA.test.js +26 -26
  157. package/dist/utils/CollectionPage/addCollectionPageEntry.js +3 -3
  158. package/dist/utils/CollectionPage/addCollectionPageEntry.test.js +6 -6
  159. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.js +3 -3
  160. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.test.js +21 -22
  161. package/dist/utils/CollectionPage/duplicateCollectionPageEntry.js +15 -24
  162. package/dist/utils/CollectionPage/duplicateCollectionPageEntry.test.js +52 -43
  163. package/dist/utils/CollectionPage/getCollectionPageActiveId.js +3 -3
  164. package/dist/utils/CollectionPage/getCollectionPageActiveId.test.js +11 -11
  165. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.js +7 -12
  166. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.test.js +23 -23
  167. package/dist/utils/CollectionPage/getCollectionPageData.js +8 -13
  168. package/dist/utils/CollectionPage/getCollectionPageData.test.js +20 -20
  169. package/dist/utils/CollectionPage/getErrorsForCollection.js +25 -26
  170. package/dist/utils/CollectionPage/getErrorsForCollection.test.js +21 -23
  171. package/dist/utils/CollectionPage/getQuickEditPage.js +37 -32
  172. package/dist/utils/CollectionPage/getQuickEditPage.test.js +18 -22
  173. package/dist/utils/CollectionPage/index.js +2 -2
  174. package/dist/utils/CollectionPage/mergeCollectionPages.js +37 -42
  175. package/dist/utils/CollectionPage/mergeCollectionPages.test.js +26 -22
  176. package/dist/utils/CollectionPage/removeCollectionPageEntry.js +5 -7
  177. package/dist/utils/CollectionPage/removeCollectionPageEntry.test.js +11 -11
  178. package/dist/utils/CollectionPage/setCollectionPageData.js +13 -19
  179. package/dist/utils/CollectionPage/setCollectionPageData.test.js +26 -26
  180. package/dist/utils/Component/addShowWhen.js +4 -8
  181. package/dist/utils/Component/addShowWhen.test.js +38 -38
  182. package/dist/utils/Component/applyToComponentTree.js +19 -20
  183. package/dist/utils/Component/applyToComponentTree.test.js +28 -33
  184. package/dist/utils/Component/cleanAttributes.js +10 -13
  185. package/dist/utils/Component/cleanAttributes.test.js +17 -18
  186. package/dist/utils/Component/elevateNestedComponents.js +6 -7
  187. package/dist/utils/Component/elevateNestedComponents.test.js +34 -34
  188. package/dist/utils/Component/getComponent.js +90 -97
  189. package/dist/utils/Component/getComponentTests/getComponent.autocomplete.test.js +19 -18
  190. package/dist/utils/Component/getComponentTests/getComponent.calculation.test.js +50 -63
  191. package/dist/utils/Component/getComponentTests/getComponent.checkboxes.test.js +40 -49
  192. package/dist/utils/Component/getComponentTests/getComponent.date.test.js +30 -40
  193. package/dist/utils/Component/getComponentTests/getComponent.details.test.js +21 -19
  194. package/dist/utils/Component/getComponentTests/getComponent.email.test.js +18 -23
  195. package/dist/utils/Component/getComponentTests/getComponent.file.test.js +22 -27
  196. package/dist/utils/Component/getComponentTests/getComponent.heading.test.js +12 -11
  197. package/dist/utils/Component/getComponentTests/getComponent.html.test.js +18 -16
  198. package/dist/utils/Component/getComponentTests/getComponent.insetText.test.js +10 -9
  199. package/dist/utils/Component/getComponentTests/getComponent.list.test.js +18 -16
  200. package/dist/utils/Component/getComponentTests/getComponent.multifile.test.js +23 -27
  201. package/dist/utils/Component/getComponentTests/getComponent.nested.test.js +155 -175
  202. package/dist/utils/Component/getComponentTests/getComponent.paragraph.test.js +18 -16
  203. package/dist/utils/Component/getComponentTests/getComponent.phoneNumber.test.js +18 -23
  204. package/dist/utils/Component/getComponentTests/getComponent.radios.test.js +58 -73
  205. package/dist/utils/Component/getComponentTests/getComponent.select.test.js +18 -23
  206. package/dist/utils/Component/getComponentTests/getComponent.text.test.js +18 -23
  207. package/dist/utils/Component/getComponentTests/getComponent.textArea.test.js +34 -41
  208. package/dist/utils/Component/getComponentTests/getComponent.time.test.js +23 -32
  209. package/dist/utils/Component/getComponentTests/getComponent.unknown.test.js +3 -3
  210. package/dist/utils/Component/getComponentTests/getComponent.warningText.test.js +10 -9
  211. package/dist/utils/Component/getDefaultValue.js +7 -9
  212. package/dist/utils/Component/getDefaultValue.test.js +13 -13
  213. package/dist/utils/Component/getDefaultValueFromConfig.js +24 -24
  214. package/dist/utils/Component/getDefaultValueFromConfig.test.js +32 -32
  215. package/dist/utils/Component/index.js +2 -2
  216. package/dist/utils/Component/isEditable.js +2 -4
  217. package/dist/utils/Component/isEditable.test.js +14 -15
  218. package/dist/utils/Component/optionIsSelected.js +2 -4
  219. package/dist/utils/Component/optionIsSelected.test.js +12 -12
  220. package/dist/utils/Component/setupContainerComponentsPath.js +29 -31
  221. package/dist/utils/Component/setupContainerComponentsPath.test.js +16 -16
  222. package/dist/utils/Component/showComponent.js +3 -4
  223. package/dist/utils/Component/showComponent.test.js +29 -29
  224. package/dist/utils/Component/wrapInFormGroup.js +4 -4
  225. package/dist/utils/Condition/index.js +2 -2
  226. package/dist/utils/Condition/meetsAllConditions.js +9 -9
  227. package/dist/utils/Condition/meetsAllConditions.test.js +21 -21
  228. package/dist/utils/Condition/meetsCondition.js +20 -31
  229. package/dist/utils/Condition/meetsCondition.test.js +403 -403
  230. package/dist/utils/Condition/meetsOneCondition.js +6 -6
  231. package/dist/utils/Condition/meetsOneCondition.test.js +17 -17
  232. package/dist/utils/Condition/setupConditions.js +14 -19
  233. package/dist/utils/Condition/setupConditions.test.js +8 -8
  234. package/dist/utils/Container/getEditableComponents.js +4 -6
  235. package/dist/utils/Container/getEditableComponents.test.js +44 -46
  236. package/dist/utils/Container/index.js +2 -2
  237. package/dist/utils/Container/setupNesting.js +16 -22
  238. package/dist/utils/Container/setupNesting.test.js +28 -31
  239. package/dist/utils/Container/showContainer.js +4 -8
  240. package/dist/utils/Container/showContainer.test.js +31 -31
  241. package/dist/utils/Data/applyFormula.js +40 -50
  242. package/dist/utils/Data/applyFormula.test.js +26 -26
  243. package/dist/utils/Data/deleteValues.js +4 -8
  244. package/dist/utils/Data/deleteValues.test.js +11 -11
  245. package/dist/utils/Data/getAutocompleteSource.js +20 -29
  246. package/dist/utils/Data/getAutocompleteSource.test.js +81 -87
  247. package/dist/utils/Data/getDataPath.js +20 -30
  248. package/dist/utils/Data/getDataPath.test.js +20 -20
  249. package/dist/utils/Data/getOptions.js +27 -34
  250. package/dist/utils/Data/getOptions.test.js +28 -28
  251. package/dist/utils/Data/getSourceData.js +6 -19
  252. package/dist/utils/Data/getSourceData.test.js +85 -81
  253. package/dist/utils/Data/index.js +2 -2
  254. package/dist/utils/Data/nestInRefdataOptions.js +9 -16
  255. package/dist/utils/Data/nestInRefdataOptions.test.js +17 -17
  256. package/dist/utils/Data/refDataToOptions.js +11 -15
  257. package/dist/utils/Data/refDataToOptions.test.js +20 -20
  258. package/dist/utils/Data/setDataItem.js +7 -8
  259. package/dist/utils/Data/setDataItem.test.js +38 -38
  260. package/dist/utils/Data/setupFormData.js +14 -22
  261. package/dist/utils/Data/setupFormData.test.js +52 -51
  262. package/dist/utils/Data/setupRefDataUrlForComponent.js +21 -28
  263. package/dist/utils/Data/setupRefDataUrlForComponent.test.js +28 -28
  264. package/dist/utils/FormPage/applyConditionalProperties.js +6 -10
  265. package/dist/utils/FormPage/applyConditionalProperties.test.js +16 -19
  266. package/dist/utils/FormPage/getConditionalText.js +4 -4
  267. package/dist/utils/FormPage/getConditionalText.test.js +35 -35
  268. package/dist/utils/FormPage/getFormPage.js +16 -17
  269. package/dist/utils/FormPage/getFormPage.test.js +49 -48
  270. package/dist/utils/FormPage/getFormPages.js +8 -13
  271. package/dist/utils/FormPage/getFormPages.test.js +22 -25
  272. package/dist/utils/FormPage/getPageActions.js +10 -17
  273. package/dist/utils/FormPage/getPageActions.test.js +33 -33
  274. package/dist/utils/FormPage/getParagraphFromText.js +5 -7
  275. package/dist/utils/FormPage/getParagraphFromText.test.js +7 -7
  276. package/dist/utils/FormPage/index.js +3 -5
  277. package/dist/utils/FormPage/showFormPage.js +4 -8
  278. package/dist/utils/FormPage/showFormPage.test.js +33 -33
  279. package/dist/utils/FormPage/showFormPageCYA.js +3 -3
  280. package/dist/utils/FormPage/showFormPageCYA.test.js +9 -9
  281. package/dist/utils/FormPage/useComponent.js +21 -28
  282. package/dist/utils/FormPage/useComponent.test.js +78 -80
  283. package/dist/utils/Format/formatData.js +1 -1
  284. package/dist/utils/Format/formatData.test.js +19 -19
  285. package/dist/utils/Format/formatDataForComponent.js +6 -7
  286. package/dist/utils/Format/formatDataForComponent.test.js +50 -78
  287. package/dist/utils/Format/formatDataForForm.js +6 -8
  288. package/dist/utils/Format/formatDataForForm.test.js +14 -17
  289. package/dist/utils/Format/formatDataForPage.js +4 -5
  290. package/dist/utils/Format/formatDataForPage.test.js +20 -25
  291. package/dist/utils/Format/index.js +2 -2
  292. package/dist/utils/Hub/getFormHub.js +2 -2
  293. package/dist/utils/Hub/getFormHub.test.js +29 -32
  294. package/dist/utils/Hub/index.js +2 -2
  295. package/dist/utils/Meta/constants.js +2 -2
  296. package/dist/utils/Meta/documents/getDocuments.js +1 -4
  297. package/dist/utils/Meta/documents/getDocuments.test.js +25 -17
  298. package/dist/utils/Meta/documents/index.js +2 -2
  299. package/dist/utils/Meta/documents/setDocumentsForField.js +15 -17
  300. package/dist/utils/Meta/documents/setDocumentsForField.test.js +69 -35
  301. package/dist/utils/Meta/index.js +2 -2
  302. package/dist/utils/Operate/checkValueIsTruthy.js +4 -4
  303. package/dist/utils/Operate/checkValueIsTruthy.test.js +17 -17
  304. package/dist/utils/Operate/deleteValueInFormData.js +3 -3
  305. package/dist/utils/Operate/deleteValueInFormData.test.js +15 -15
  306. package/dist/utils/Operate/getFirstOf.js +8 -8
  307. package/dist/utils/Operate/getFirstOf.test.js +33 -33
  308. package/dist/utils/Operate/getIndexOfMatchingValueIn.js +12 -12
  309. package/dist/utils/Operate/getIndexOfMatchingValueIn.test.js +47 -53
  310. package/dist/utils/Operate/getLength.js +11 -11
  311. package/dist/utils/Operate/getLength.test.js +19 -19
  312. package/dist/utils/Operate/index.js +2 -2
  313. package/dist/utils/Operate/persistValueInFormData.js +6 -6
  314. package/dist/utils/Operate/persistValueInFormData.test.js +23 -21
  315. package/dist/utils/Operate/runPageOperations.js +9 -9
  316. package/dist/utils/Operate/runPageOperations.test.js +36 -37
  317. package/dist/utils/Operate/setValueInFormData.js +5 -5
  318. package/dist/utils/Operate/setValueInFormData.test.js +17 -17
  319. package/dist/utils/Operate/shouldRun.js +8 -8
  320. package/dist/utils/Operate/shouldRun.test.js +22 -28
  321. package/dist/utils/Validate/additional/conditionallyPermittedChange.js +25 -0
  322. package/dist/utils/Validate/additional/conditionallyPermittedChange.test.js +33 -0
  323. package/dist/utils/Validate/additional/conditionallyRequired.js +4 -5
  324. package/dist/utils/Validate/additional/conditionallyRequired.test.js +19 -19
  325. package/dist/utils/Validate/additional/index.js +10 -8
  326. package/dist/utils/Validate/additional/index.test.js +22 -22
  327. package/dist/utils/Validate/additional/mustBeAfter.js +3 -3
  328. package/dist/utils/Validate/additional/mustBeAfter.test.js +41 -41
  329. package/dist/utils/Validate/additional/mustBeBefore.js +3 -3
  330. package/dist/utils/Validate/additional/mustBeBefore.test.js +29 -29
  331. package/dist/utils/Validate/additional/mustBeEarlierDateTime.js +9 -14
  332. package/dist/utils/Validate/additional/mustBeEarlierDateTime.test.js +38 -42
  333. package/dist/utils/Validate/additional/mustBeGreaterThan.js +2 -2
  334. package/dist/utils/Validate/additional/mustBeGreaterThan.test.js +19 -19
  335. package/dist/utils/Validate/additional/mustBeInTheFuture.js +4 -4
  336. package/dist/utils/Validate/additional/mustBeInTheFuture.test.js +13 -13
  337. package/dist/utils/Validate/additional/mustBeInThePast.js +5 -5
  338. package/dist/utils/Validate/additional/mustBeInThePast.test.js +13 -13
  339. package/dist/utils/Validate/additional/mustBeLessThan.js +2 -2
  340. package/dist/utils/Validate/additional/mustBeLessThan.test.js +18 -18
  341. package/dist/utils/Validate/additional/mustBeLongerThan.js +1 -1
  342. package/dist/utils/Validate/additional/mustBeLongerThan.test.js +17 -17
  343. package/dist/utils/Validate/additional/mustBeNumbersOnly.js +2 -2
  344. package/dist/utils/Validate/additional/mustBeNumbersOnly.test.js +21 -21
  345. package/dist/utils/Validate/additional/mustBeOneOf.js +1 -1
  346. package/dist/utils/Validate/additional/mustBeOneOf.test.js +13 -13
  347. package/dist/utils/Validate/additional/mustBeShorterThan.js +1 -1
  348. package/dist/utils/Validate/additional/mustBeShorterThan.test.js +17 -17
  349. package/dist/utils/Validate/additional/mustBeUniqueInCollection.js +5 -5
  350. package/dist/utils/Validate/additional/mustBeUniqueInCollection.test.js +36 -40
  351. package/dist/utils/Validate/additional/mustEnterAtLeastOne.js +3 -5
  352. package/dist/utils/Validate/additional/mustEnterAtLeastOne.test.js +15 -17
  353. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.js +1 -1
  354. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.test.js +13 -13
  355. package/dist/utils/Validate/additional/mustNotContainSql.js +3 -4
  356. package/dist/utils/Validate/additional/mustNotContainSql.test.js +15 -15
  357. package/dist/utils/Validate/additional/mustSelectOnlyOne.js +3 -5
  358. package/dist/utils/Validate/additional/mustSelectOnlyOne.test.js +29 -27
  359. package/dist/utils/Validate/additional/utils.js +11 -24
  360. package/dist/utils/Validate/index.js +2 -2
  361. package/dist/utils/Validate/validateCollection.js +21 -27
  362. package/dist/utils/Validate/validateCollection.test.js +85 -77
  363. package/dist/utils/Validate/validateComponent.js +22 -23
  364. package/dist/utils/Validate/validateComponent.test.js +188 -165
  365. package/dist/utils/Validate/validateContainer.js +16 -21
  366. package/dist/utils/Validate/validateContainer.test.js +62 -56
  367. package/dist/utils/Validate/validateDate.js +17 -23
  368. package/dist/utils/Validate/validateDate.test.js +31 -32
  369. package/dist/utils/Validate/validateEmail.js +7 -9
  370. package/dist/utils/Validate/validateEmail.test.js +26 -26
  371. package/dist/utils/Validate/validateMultifile.js +5 -7
  372. package/dist/utils/Validate/validateMultifile.test.js +17 -18
  373. package/dist/utils/Validate/validatePage.js +20 -24
  374. package/dist/utils/Validate/validatePage.test.js +227 -215
  375. package/dist/utils/Validate/validateRegex.js +5 -8
  376. package/dist/utils/Validate/validateRegex.test.js +17 -17
  377. package/dist/utils/Validate/validateRequired.js +5 -7
  378. package/dist/utils/Validate/validateRequired.test.js +19 -19
  379. package/dist/utils/Validate/validateTextArea.js +5 -7
  380. package/dist/utils/Validate/validateTextArea.test.js +21 -21
  381. package/dist/utils/Validate/validateTime.js +12 -19
  382. package/dist/utils/Validate/validateTime.test.js +27 -27
  383. package/dist/utils/index.js +8 -10
  384. package/package.json +3 -2
@@ -1,30 +1,18 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
4
3
  var _react = require("@testing-library/react");
5
4
  var _models = require("../../../models");
6
5
  var _getComponent = _interopRequireDefault(require("../getComponent"));
7
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
8
- 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; }
9
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
10
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
11
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
12
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
13
- function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
14
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
15
- 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; }
16
- 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; }
17
- 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; }
18
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
19
- 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); }
20
- 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); } }
21
- 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
6
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
7
+ // Global imports
8
+
22
9
  // Local imports
23
- describe('utils.Component.get', function () {
24
- var ID = 'test-id';
25
- var FIELD_ID = 'field-id';
26
- var LABEL = 'label';
27
- var COMPONENT = {
10
+
11
+ describe('utils.Component.get', () => {
12
+ const ID = 'test-id';
13
+ const FIELD_ID = 'field-id';
14
+ const LABEL = 'label';
15
+ const COMPONENT = {
28
16
  type: _models.ComponentTypes.CALCULATION,
29
17
  id: ID,
30
18
  fieldId: FIELD_ID,
@@ -35,11 +23,11 @@ describe('utils.Component.get', function () {
35
23
  },
36
24
  'data-testid': ID
37
25
  };
38
- var error = jest.spyOn(console, 'error').mockImplementation(function () {});
39
- afterAll(function () {
26
+ const error = jest.spyOn(console, 'error').mockImplementation(() => {});
27
+ afterAll(() => {
40
28
  error.mockReset();
41
29
  });
42
- afterEach(function () {
30
+ afterEach(() => {
43
31
  error.mockClear();
44
32
  });
45
33
 
@@ -127,36 +115,34 @@ describe('utils.Component.get', function () {
127
115
  }
128
116
  },
129
117
  result: '266.67'
130
- }].forEach(function (test) {
118
+ }].forEach(test => {
131
119
  // eslint-disable-next-line no-param-reassign
132
- test.config.onChange = function (_ref) {
133
- var target = _ref.target;
120
+ test.config.onChange = _ref => {
121
+ let {
122
+ target
123
+ } = _ref;
134
124
  COMPONENT.formData[target.name] = target.value;
135
125
  };
136
- it("should render 'calculation' component with formula to given calculated value: ".concat(test.result), /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
137
- var _render, container, _getAllByTestId, _getAllByTestId2, formGroup, input, label;
138
- return _regeneratorRuntime().wrap(function _callee$(_context) {
139
- while (1) switch (_context.prev = _context.next) {
140
- case 0:
141
- _render = (0, _react.render)((0, _getComponent.default)(_objectSpread(_objectSpread({}, COMPONENT), test.config))), container = _render.container;
142
- _getAllByTestId = (0, _react.getAllByTestId)(container, ID), _getAllByTestId2 = _slicedToArray(_getAllByTestId, 2), formGroup = _getAllByTestId2[0], input = _getAllByTestId2[1];
143
- expect(formGroup.tagName).toEqual('DIV');
144
- expect(formGroup.classList).toContain('govuk-form-group');
145
- label = formGroup.childNodes[0];
146
- expect(label.tagName).toEqual('LABEL');
147
- expect(label.classList).toContain('govuk-label');
148
- expect(label.textContent).toContain(LABEL);
149
- expect(formGroup.classList).toContain('govuk-form-group');
150
- expect(input.tagName).toEqual('DIV');
151
- expect(input.classList).toContain('hods-readonly');
152
- expect(input.id).toEqual(ID);
153
- expect("".concat(COMPONENT.formData[FIELD_ID])).toEqual(test.result);
154
- case 13:
155
- case "end":
156
- return _context.stop();
157
- }
158
- }, _callee);
159
- })));
126
+ it(`should render 'calculation' component with formula to given calculated value: ${test.result}`, async () => {
127
+ const {
128
+ container
129
+ } = (0, _react.render)((0, _getComponent.default)({
130
+ ...COMPONENT,
131
+ ...test.config
132
+ }));
133
+ const [formGroup, input] = (0, _react.getAllByTestId)(container, ID);
134
+ expect(formGroup.tagName).toEqual('DIV');
135
+ expect(formGroup.classList).toContain('govuk-form-group');
136
+ const label = formGroup.childNodes[0];
137
+ expect(label.tagName).toEqual('LABEL');
138
+ expect(label.classList).toContain('govuk-label');
139
+ expect(label.textContent).toContain(LABEL);
140
+ expect(formGroup.classList).toContain('govuk-form-group');
141
+ expect(input.tagName).toEqual('DIV');
142
+ expect(input.classList).toContain('hods-readonly');
143
+ expect(input.id).toEqual(ID);
144
+ expect(`${COMPONENT.formData[FIELD_ID]}`).toEqual(test.result);
145
+ });
160
146
  });
161
147
 
162
148
  /**
@@ -175,12 +161,12 @@ describe('utils.Component.get', function () {
175
161
  *
176
162
  */
177
163
  [{
178
- error: "Missing 'formula' definition"
164
+ error: `Missing 'formula' definition`
179
165
  }, {
180
166
  config: {
181
167
  formula: {}
182
168
  },
183
- error: "Calculation formula 'name' cannot be empty"
169
+ error: `Calculation formula 'name' cannot be empty`
184
170
  }, {
185
171
  config: {
186
172
  formula: {
@@ -192,7 +178,7 @@ describe('utils.Component.get', function () {
192
178
  }]
193
179
  }
194
180
  },
195
- error: "Unsupported operation 'tictactoe'"
181
+ error: `Unsupported operation 'tictactoe'`
196
182
  }, {
197
183
  config: {
198
184
  formula: {
@@ -242,17 +228,18 @@ describe('utils.Component.get', function () {
242
228
  }
243
229
  },
244
230
  error: 'Argument cannot have more than one reference'
245
- }].forEach(function (test) {
246
- it("should return an appropriately rendered calculation component with message ".concat(test.result), function () {
247
- var _render2 = (0, _react.render)((0, _getComponent.default)(_objectSpread(_objectSpread({}, COMPONENT), test.config))),
248
- container = _render2.container;
249
- var _getAllByTestId3 = (0, _react.getAllByTestId)(container, ID),
250
- _getAllByTestId4 = _slicedToArray(_getAllByTestId3, 2),
251
- formGroup = _getAllByTestId4[0],
252
- input = _getAllByTestId4[1];
231
+ }].forEach(test => {
232
+ it(`should return an appropriately rendered calculation component with message ${test.result}`, () => {
233
+ const {
234
+ container
235
+ } = (0, _react.render)((0, _getComponent.default)({
236
+ ...COMPONENT,
237
+ ...test.config
238
+ }));
239
+ const [formGroup, input] = (0, _react.getAllByTestId)(container, ID);
253
240
  expect(formGroup.tagName).toEqual('DIV');
254
241
  expect(formGroup.classList).toContain('govuk-form-group');
255
- var label = formGroup.childNodes[0];
242
+ const label = formGroup.childNodes[0];
256
243
  expect(label.tagName).toEqual('LABEL');
257
244
  expect(label.classList).toContain('govuk-label');
258
245
  expect(label.textContent).toContain(LABEL);
@@ -4,31 +4,28 @@ var _react = require("@testing-library/react");
4
4
  var _models = require("../../../models");
5
5
  var _setupTests = require("../../../setupTests");
6
6
  var _getComponent = _interopRequireDefault(require("../getComponent"));
7
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
8
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
9
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
10
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
11
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
12
- function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
13
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } // Global imports
7
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
8
+ // Global imports
9
+
14
10
  // Local imports
15
- describe('utils.Component.get', function () {
16
- it('should return an appropriately rendered checkboxes component', function () {
17
- var ID = 'test-id';
18
- var FIELD_ID = 'field-id';
19
- var LABEL = 'label';
20
- var OPTIONS = [{
11
+
12
+ describe('utils.Component.get', () => {
13
+ it('should return an appropriately rendered checkboxes component', () => {
14
+ const ID = 'test-id';
15
+ const FIELD_ID = 'field-id';
16
+ const LABEL = 'label';
17
+ const OPTIONS = [{
21
18
  value: 'a',
22
19
  label: 'Alpha'
23
20
  }, {
24
21
  value: 'b',
25
22
  label: 'Bravo'
26
23
  }];
27
- var ON_CHANGE_CALLS = [];
28
- var ON_CHANGE = function ON_CHANGE(e) {
24
+ const ON_CHANGE_CALLS = [];
25
+ const ON_CHANGE = e => {
29
26
  ON_CHANGE_CALLS.push(e.target);
30
27
  };
31
- var COMPONENT = {
28
+ const COMPONENT = {
32
29
  type: _models.ComponentTypes.CHECKBOXES,
33
30
  id: ID,
34
31
  fieldId: FIELD_ID,
@@ -39,16 +36,14 @@ describe('utils.Component.get', function () {
39
36
  onChange: ON_CHANGE,
40
37
  'data-testid': ID
41
38
  };
42
- var _render = (0, _react.render)((0, _getComponent.default)(COMPONENT)),
43
- container = _render.container;
44
- var _getAllByTestId = (0, _react.getAllByTestId)(container, ID),
45
- _getAllByTestId2 = _slicedToArray(_getAllByTestId, 2),
46
- formGroup = _getAllByTestId2[0],
47
- checkboxes = _getAllByTestId2[1];
39
+ const {
40
+ container
41
+ } = (0, _react.render)((0, _getComponent.default)(COMPONENT));
42
+ const [formGroup, checkboxes] = (0, _react.getAllByTestId)(container, ID);
48
43
  expect(formGroup.tagName).toEqual('DIV');
49
44
  expect(formGroup.classList).toContain('govuk-form-group');
50
- var label;
51
- formGroup.childNodes.forEach(function (node) {
45
+ let label;
46
+ formGroup.childNodes.forEach(node => {
52
47
  // Check if it's an element.
53
48
  if (node instanceof Element) {
54
49
  if (node.tagName === 'LABEL') {
@@ -62,22 +57,20 @@ describe('utils.Component.get', function () {
62
57
  expect(checkboxes.tagName).toEqual('DIV');
63
58
  expect(checkboxes.classList).toContain('govuk-checkboxes');
64
59
  expect(checkboxes.childNodes.length).toEqual(OPTIONS.length);
65
- var checkboxItems = [];
66
- OPTIONS.forEach(function (_, index) {
67
- var checkbox = checkboxes.childNodes[index];
60
+ const checkboxItems = [];
61
+ OPTIONS.forEach((_, index) => {
62
+ const checkbox = checkboxes.childNodes[index];
68
63
  expect(checkbox instanceof Element).toBeTruthy();
69
64
  if (checkbox instanceof Element) {
70
65
  checkboxItems.push(checkbox);
71
66
  }
72
67
  });
73
68
  expect(checkboxItems.length).toEqual(OPTIONS.length);
74
- OPTIONS.forEach(function (option, index) {
75
- var checkbox = checkboxItems[index];
69
+ OPTIONS.forEach((option, index) => {
70
+ const checkbox = checkboxItems[index];
76
71
  expect(checkbox.tagName).toEqual('DIV');
77
72
  expect(checkbox.classList).toContain('govuk-checkboxes__item');
78
- var _checkbox$childNodes = _slicedToArray(checkbox.childNodes, 2),
79
- input = _checkbox$childNodes[0],
80
- inputLabel = _checkbox$childNodes[1];
73
+ const [input, inputLabel] = checkbox.childNodes;
81
74
  expect(input.tagName).toEqual('INPUT');
82
75
  expect(input.type).toEqual('checkbox');
83
76
  expect(inputLabel.textContent).toEqual(option.label);
@@ -101,16 +94,16 @@ describe('utils.Component.get', function () {
101
94
  value: [OPTIONS[1].value]
102
95
  });
103
96
  });
104
- it('should return an appropriately rendered checkboxes component with a nested component', function () {
105
- var ID = 'test-id';
106
- var FIELD_ID = 'field-id';
107
- var LABEL = 'label';
108
- var NESTED = {
97
+ it('should return an appropriately rendered checkboxes component with a nested component', () => {
98
+ const ID = 'test-id';
99
+ const FIELD_ID = 'field-id';
100
+ const LABEL = 'label';
101
+ const NESTED = {
109
102
  id: 'charle',
110
103
  fieldId: 'charle',
111
104
  type: 'text'
112
105
  };
113
- var OPTIONS = [{
106
+ const OPTIONS = [{
114
107
  value: 'a',
115
108
  label: 'Alpha',
116
109
  nested: [NESTED]
@@ -118,11 +111,11 @@ describe('utils.Component.get', function () {
118
111
  value: 'b',
119
112
  label: 'Bravo'
120
113
  }];
121
- var ON_CHANGE_CALLS = [];
122
- var ON_CHANGE = function ON_CHANGE(e) {
114
+ const ON_CHANGE_CALLS = [];
115
+ const ON_CHANGE = e => {
123
116
  ON_CHANGE_CALLS.push(e.target);
124
117
  };
125
- var COMPONENT = {
118
+ const COMPONENT = {
126
119
  type: _models.ComponentTypes.CHECKBOXES,
127
120
  id: ID,
128
121
  fieldId: FIELD_ID,
@@ -134,16 +127,14 @@ describe('utils.Component.get', function () {
134
127
  onChange: ON_CHANGE,
135
128
  'data-testid': ID
136
129
  };
137
- var _renderWithValidation = (0, _setupTests.renderWithValidation)((0, _getComponent.default)(COMPONENT)),
138
- container = _renderWithValidation.container;
139
- var _getAllByTestId3 = (0, _react.getAllByTestId)(container, ID),
140
- _getAllByTestId4 = _slicedToArray(_getAllByTestId3, 2),
141
- formGroup = _getAllByTestId4[0],
142
- checkboxes = _getAllByTestId4[1];
130
+ const {
131
+ container
132
+ } = (0, _setupTests.renderWithValidation)((0, _getComponent.default)(COMPONENT));
133
+ const [formGroup, checkboxes] = (0, _react.getAllByTestId)(container, ID);
143
134
  expect(formGroup.tagName).toEqual('DIV');
144
135
  expect(formGroup.classList).toContain('govuk-form-group');
145
- var label;
146
- formGroup.childNodes.forEach(function (node) {
136
+ let label;
137
+ formGroup.childNodes.forEach(node => {
147
138
  // Check if it's an element.
148
139
  if (node instanceof Element) {
149
140
  if (node.tagName === 'LABEL') {
@@ -3,24 +3,21 @@
3
3
  var _react = require("@testing-library/react");
4
4
  var _models = require("../../../models");
5
5
  var _getComponent = _interopRequireDefault(require("../getComponent"));
6
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
7
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
8
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
9
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
10
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
11
- function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
12
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } // Global imports
6
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
7
+ // Global imports
8
+
13
9
  // Local imports
14
- describe('utils.Component.get', function () {
15
- it('should return an appropriately rendered date component', function () {
16
- var ID = 'test-id';
17
- var FIELD_ID = 'field-id';
18
- var LABEL = 'label';
19
- var ON_CHANGE_CALLS = [];
20
- var ON_CHANGE = function ON_CHANGE(e) {
10
+
11
+ describe('utils.Component.get', () => {
12
+ it('should return an appropriately rendered date component', () => {
13
+ const ID = 'test-id';
14
+ const FIELD_ID = 'field-id';
15
+ const LABEL = 'label';
16
+ const ON_CHANGE_CALLS = [];
17
+ const ON_CHANGE = e => {
21
18
  ON_CHANGE_CALLS.push(e.target);
22
19
  };
23
- var COMPONENT = {
20
+ const COMPONENT = {
24
21
  type: _models.ComponentTypes.DATE,
25
22
  id: ID,
26
23
  fieldId: FIELD_ID,
@@ -28,13 +25,11 @@ describe('utils.Component.get', function () {
28
25
  onChange: ON_CHANGE,
29
26
  'data-testid': ID
30
27
  };
31
- var checkDateField = function checkDateField(node, option) {
28
+ const checkDateField = (node, option) => {
32
29
  expect(node.tagName).toEqual('DIV');
33
30
  expect(node.classList).toContain('govuk-date-input__item');
34
- var group = node.childNodes[0]; // form group
35
- var _group$childNodes = _slicedToArray(group.childNodes, 2),
36
- label = _group$childNodes[0],
37
- input = _group$childNodes[1];
31
+ const group = node.childNodes[0]; // form group
32
+ const [label, input] = group.childNodes;
38
33
  expect(label.tagName).toEqual('LABEL');
39
34
  expect(label.classList).toContain('govuk-label');
40
35
  expect(label.textContent).toEqual(option.label);
@@ -42,41 +37,36 @@ describe('utils.Component.get', function () {
42
37
  expect(input.id).toEqual(option.id);
43
38
  return input;
44
39
  };
45
- var _render = (0, _react.render)((0, _getComponent.default)(COMPONENT)),
46
- container = _render.container;
47
- var _getAllByTestId = (0, _react.getAllByTestId)(container, ID),
48
- _getAllByTestId2 = _slicedToArray(_getAllByTestId, 2),
49
- formGroup = _getAllByTestId2[0],
50
- dateInput = _getAllByTestId2[1];
40
+ const {
41
+ container
42
+ } = (0, _react.render)((0, _getComponent.default)(COMPONENT));
43
+ const [formGroup, dateInput] = (0, _react.getAllByTestId)(container, ID);
51
44
  expect(formGroup.tagName).toEqual('DIV');
52
45
  expect(formGroup.classList).toContain('govuk-form-group');
53
- var label = formGroup.childNodes[0];
46
+ const label = formGroup.childNodes[0];
54
47
  expect(label.innerHTML).toContain(LABEL);
55
48
  expect(label.getAttribute('for')).toEqual(ID);
56
49
  expect(dateInput.tagName).toEqual('DIV');
57
50
  expect(dateInput.classList).toContain('govuk-date-input');
58
51
  expect(dateInput.id).toEqual(ID);
59
- var _dateInput$childNodes = _slicedToArray(dateInput.childNodes, 3),
60
- dayItem = _dateInput$childNodes[0],
61
- monthItem = _dateInput$childNodes[1],
62
- yearItem = _dateInput$childNodes[2];
63
- var dayInput = checkDateField(dayItem, {
64
- id: "".concat(ID, "-day"),
52
+ const [dayItem, monthItem, yearItem] = dateInput.childNodes;
53
+ const dayInput = checkDateField(dayItem, {
54
+ id: `${ID}-day`,
65
55
  label: 'Day'
66
56
  });
67
- var monthInput = checkDateField(monthItem, {
68
- id: "".concat(ID, "-month"),
57
+ const monthInput = checkDateField(monthItem, {
58
+ id: `${ID}-month`,
69
59
  label: 'Month'
70
60
  });
71
- var yearInput = checkDateField(yearItem, {
72
- id: "".concat(ID, "-year"),
61
+ const yearInput = checkDateField(yearItem, {
62
+ id: `${ID}-year`,
73
63
  label: 'Year'
74
64
  });
75
65
 
76
66
  // Add something to the day and make sure it fires.
77
67
  _react.fireEvent.change(dayInput, {
78
68
  target: {
79
- name: "".concat(FIELD_ID, "-day"),
69
+ name: `${FIELD_ID}-day`,
80
70
  value: '5'
81
71
  }
82
72
  });
@@ -88,7 +78,7 @@ describe('utils.Component.get', function () {
88
78
  // And now the month...
89
79
  _react.fireEvent.change(monthInput, {
90
80
  target: {
91
- name: "".concat(FIELD_ID, "-month"),
81
+ name: `${FIELD_ID}-month`,
92
82
  value: '11'
93
83
  }
94
84
  });
@@ -100,7 +90,7 @@ describe('utils.Component.get', function () {
100
90
  // And finally the year.
101
91
  _react.fireEvent.change(yearInput, {
102
92
  target: {
103
- name: "".concat(FIELD_ID, "-year"),
93
+ name: `${FIELD_ID}-year`,
104
94
  value: '2022'
105
95
  }
106
96
  });
@@ -3,45 +3,47 @@
3
3
  var _react = require("@testing-library/react");
4
4
  var _models = require("../../../models");
5
5
  var _getComponent = _interopRequireDefault(require("../getComponent"));
6
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
7
7
  // Global imports
8
8
 
9
9
  // Local imports
10
10
 
11
- describe('utils.Component.get', function () {
12
- it('should return a details component containing basic text', function () {
13
- var ID = 'test-id';
14
- var CONTENT = 'Details content';
15
- var SUMMARY = 'Details Summary';
16
- var COMPONENT = {
11
+ describe('utils.Component.get', () => {
12
+ it('should return a details component containing basic text', () => {
13
+ const ID = 'test-id';
14
+ const CONTENT = 'Details content';
15
+ const SUMMARY = 'Details Summary';
16
+ const COMPONENT = {
17
17
  type: _models.ComponentTypes.DETAILS,
18
18
  content: CONTENT,
19
19
  summary: SUMMARY,
20
20
  'data-testid': ID
21
21
  };
22
- var _render = (0, _react.render)((0, _getComponent.default)(COMPONENT)),
23
- container = _render.container;
24
- var details = container.querySelector('details');
22
+ const {
23
+ container
24
+ } = (0, _react.render)((0, _getComponent.default)(COMPONENT));
25
+ const details = container.querySelector('details');
25
26
  expect(details.classList).toContain('hods-details');
26
27
  expect(details.childNodes[0].textContent).toEqual(SUMMARY);
27
28
  expect(details.childNodes[1].textContent).toEqual(CONTENT);
28
29
  });
29
- it('should return a details component containing multiple html components', function () {
30
- var ID = 'test-id';
31
- var CONTENT = '<p>this is the content</p><ol><li>one</li><li>two</li></ol><p>second section of content</p>';
32
- var SUMMARY = 'Details Summary';
33
- var COMPONENT = {
30
+ it('should return a details component containing multiple html components', () => {
31
+ const ID = 'test-id';
32
+ const CONTENT = '<p>this is the content</p><ol><li>one</li><li>two</li></ol><p>second section of content</p>';
33
+ const SUMMARY = 'Details Summary';
34
+ const COMPONENT = {
34
35
  type: _models.ComponentTypes.DETAILS,
35
36
  content: CONTENT,
36
37
  summary: SUMMARY,
37
38
  tagName: 'div',
38
39
  'data-testid': ID
39
40
  };
40
- var _render2 = (0, _react.render)((0, _getComponent.default)(COMPONENT)),
41
- container = _render2.container;
42
- var details = container.querySelector('details');
41
+ const {
42
+ container
43
+ } = (0, _react.render)((0, _getComponent.default)(COMPONENT));
44
+ const details = container.querySelector('details');
43
45
  expect(details.classList).toContain('hods-details');
44
- var content = details.childNodes[1].childNodes[0].childNodes;
46
+ const content = details.childNodes[1].childNodes[0].childNodes;
45
47
  expect(content[0].textContent).toEqual('this is the content');
46
48
  expect(content[0].tagName).toEqual('P');
47
49
  expect(content[1].childNodes[0].textContent).toEqual('one');
@@ -3,24 +3,21 @@
3
3
  var _react = require("@testing-library/react");
4
4
  var _models = require("../../../models");
5
5
  var _getComponent = _interopRequireDefault(require("../getComponent"));
6
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
7
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
8
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
9
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
10
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
11
- function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
12
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } // Global imports
6
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
7
+ // Global imports
8
+
13
9
  // Local imports
14
- describe('utils.Component.get', function () {
15
- it('should return an appropriately rendered email component', function () {
16
- var ID = 'test-id';
17
- var FIELD_ID = 'field-id';
18
- var LABEL = 'label';
19
- var ON_CHANGE_CALLS = [];
20
- var ON_CHANGE = function ON_CHANGE(e) {
10
+
11
+ describe('utils.Component.get', () => {
12
+ it('should return an appropriately rendered email component', () => {
13
+ const ID = 'test-id';
14
+ const FIELD_ID = 'field-id';
15
+ const LABEL = 'label';
16
+ const ON_CHANGE_CALLS = [];
17
+ const ON_CHANGE = e => {
21
18
  ON_CHANGE_CALLS.push(e.target);
22
19
  };
23
- var COMPONENT = {
20
+ const COMPONENT = {
24
21
  type: _models.ComponentTypes.EMAIL,
25
22
  id: ID,
26
23
  fieldId: FIELD_ID,
@@ -28,16 +25,14 @@ describe('utils.Component.get', function () {
28
25
  onChange: ON_CHANGE,
29
26
  'data-testid': ID
30
27
  };
31
- var _render = (0, _react.render)((0, _getComponent.default)(COMPONENT)),
32
- container = _render.container;
33
- var _getAllByTestId = (0, _react.getAllByTestId)(container, ID),
34
- _getAllByTestId2 = _slicedToArray(_getAllByTestId, 2),
35
- formGroup = _getAllByTestId2[0],
36
- input = _getAllByTestId2[1];
28
+ const {
29
+ container
30
+ } = (0, _react.render)((0, _getComponent.default)(COMPONENT));
31
+ const [formGroup, input] = (0, _react.getAllByTestId)(container, ID);
37
32
  expect(formGroup.tagName).toEqual('DIV');
38
33
  expect(formGroup.classList).toContain('govuk-form-group');
39
- var label;
40
- formGroup.childNodes.forEach(function (node) {
34
+ let label;
35
+ formGroup.childNodes.forEach(node => {
41
36
  // Check if it's an element.
42
37
  if (node instanceof Element && node.tagName === 'LABEL') {
43
38
  label = node;