@ukhomeoffice/cop-react-form-renderer 6.7.0-alpha → 6.11.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 (372) hide show
  1. package/dist/components/CheckYourAnswers/Answer.js +22 -16
  2. package/dist/components/CheckYourAnswers/Answer.test.js +180 -92
  3. package/dist/components/CheckYourAnswers/CheckYourAnswers.js +137 -103
  4. package/dist/components/CheckYourAnswers/CheckYourAnswers.test.js +861 -463
  5. package/dist/components/CollectionPage/CollectionPage.js +63 -73
  6. package/dist/components/CollectionPage/CollectionPage.test.js +366 -316
  7. package/dist/components/CollectionSummary/BannerStrip.js +13 -13
  8. package/dist/components/CollectionSummary/BannerStrip.test.js +76 -80
  9. package/dist/components/CollectionSummary/CollectionSummary.js +126 -99
  10. package/dist/components/CollectionSummary/CollectionSummary.test.js +188 -152
  11. package/dist/components/CollectionSummary/Confirmation.js +12 -14
  12. package/dist/components/CollectionSummary/Confirmation.test.js +63 -68
  13. package/dist/components/CollectionSummary/RenderListView.js +52 -46
  14. package/dist/components/CollectionSummary/RenderListView.scss +1 -1
  15. package/dist/components/CollectionSummary/RenderListView.test.js +77 -78
  16. package/dist/components/CollectionSummary/SummaryCard.js +152 -110
  17. package/dist/components/CollectionSummary/SummaryCard.test.js +1018 -929
  18. package/dist/components/CollectionSummary/SummaryCardDetails.js +137 -94
  19. package/dist/components/CollectionSummary/SummaryCardDetails.scss +13 -4
  20. package/dist/components/CollectionSummary/SummaryCardDetails.test.js +331 -128
  21. package/dist/components/CollectionSummary/SummaryCardValidationContext.js +35 -30
  22. package/dist/components/CollectionSummary/SummaryCardValidationContext.test.js +74 -62
  23. package/dist/components/FormComponent/Collection.js +108 -74
  24. package/dist/components/FormComponent/Collection.test.js +1081 -909
  25. package/dist/components/FormComponent/Container.js +39 -40
  26. package/dist/components/FormComponent/Container.test.js +412 -312
  27. package/dist/components/FormComponent/FormComponent.js +72 -69
  28. package/dist/components/FormComponent/FormComponent.test.js +414 -353
  29. package/dist/components/FormComponent/helpers/addLabel.js +7 -4
  30. package/dist/components/FormComponent/helpers/getComponentDisabled.js +1 -1
  31. package/dist/components/FormComponent/helpers/getComponentDisabled.test.js +7 -7
  32. package/dist/components/FormComponent/helpers/getComponentError.js +5 -3
  33. package/dist/components/FormComponent/helpers/getComponentError.test.js +14 -14
  34. package/dist/components/FormComponent/helpers/getComponentFieldSet.js +4 -3
  35. package/dist/components/FormComponent/helpers/getComponentFieldSet.test.js +6 -6
  36. package/dist/components/FormComponent/helpers/index.js +4 -4
  37. package/dist/components/FormPage/FormPage.js +80 -65
  38. package/dist/components/FormPage/FormPage.test.js +163 -127
  39. package/dist/components/FormRenderer/FormRenderer.js +180 -143
  40. package/dist/components/FormRenderer/FormRenderer.test.js +1115 -730
  41. package/dist/components/FormRenderer/handlers/cyaAction.js +2 -2
  42. package/dist/components/FormRenderer/handlers/getPageId.js +3 -1
  43. package/dist/components/FormRenderer/handlers/getPageId.test.js +14 -14
  44. package/dist/components/FormRenderer/handlers/handlers.test.js +32 -32
  45. package/dist/components/FormRenderer/handlers/index.js +1 -1
  46. package/dist/components/FormRenderer/handlers/navigate.js +3 -3
  47. package/dist/components/FormRenderer/handlers/submissionError.js +1 -1
  48. package/dist/components/FormRenderer/helpers/canActionProceed.js +1 -1
  49. package/dist/components/FormRenderer/helpers/canActionProceed.test.js +15 -15
  50. package/dist/components/FormRenderer/helpers/canCYASubmit.js +3 -1
  51. package/dist/components/FormRenderer/helpers/canCYASubmit.test.js +20 -16
  52. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.js +22 -17
  53. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.test.js +16 -16
  54. package/dist/components/FormRenderer/helpers/getCYA.js +5 -3
  55. package/dist/components/FormRenderer/helpers/getCYA.test.js +11 -11
  56. package/dist/components/FormRenderer/helpers/getFormState.js +7 -5
  57. package/dist/components/FormRenderer/helpers/getFormState.test.js +10 -10
  58. package/dist/components/FormRenderer/helpers/getNextPageId.js +24 -13
  59. package/dist/components/FormRenderer/helpers/getNextPageId.test.js +67 -67
  60. package/dist/components/FormRenderer/helpers/getPage.js +4 -2
  61. package/dist/components/FormRenderer/helpers/getPage.test.js +11 -11
  62. package/dist/components/FormRenderer/helpers/getRelevantPages.js +9 -7
  63. package/dist/components/FormRenderer/helpers/getRelevantPages.test.js +14 -14
  64. package/dist/components/FormRenderer/helpers/getSubmissionStatus.js +5 -5
  65. package/dist/components/FormRenderer/helpers/getSubmissionStatus.test.js +97 -103
  66. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.js +60 -62
  67. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.test.js +78 -71
  68. package/dist/components/FormRenderer/helpers/index.js +1 -1
  69. package/dist/components/FormRenderer/onCYAAction.js +51 -59
  70. package/dist/components/FormRenderer/onCYAAction.test.js +152 -164
  71. package/dist/components/FormRenderer/onPageAction.js +39 -43
  72. package/dist/components/FormRenderer/onPageAction.test.js +208 -223
  73. package/dist/components/FormRenderer/onTaskAction.js +13 -9
  74. package/dist/components/FormRenderer/onTaskAction.test.js +88 -93
  75. package/dist/components/PageActions/ActionButton.js +15 -12
  76. package/dist/components/PageActions/ActionButton.test.js +78 -56
  77. package/dist/components/PageActions/PageActions.js +10 -10
  78. package/dist/components/PageActions/PageActions.test.js +115 -86
  79. package/dist/components/SummaryList/GroupAction.js +17 -9
  80. package/dist/components/SummaryList/GroupAction.test.js +33 -37
  81. package/dist/components/SummaryList/RowAction.js +16 -11
  82. package/dist/components/SummaryList/RowAction.test.js +33 -37
  83. package/dist/components/SummaryList/SummaryList.js +34 -21
  84. package/dist/components/SummaryList/SummaryList.scss +15 -0
  85. package/dist/components/SummaryList/SummaryList.test.js +226 -143
  86. package/dist/components/SummaryList/SummaryListHeadingRow.js +4 -6
  87. package/dist/components/SummaryList/SummaryListHeadingRowWithAction.js +53 -0
  88. package/dist/components/SummaryList/SummaryListHeadingRowWithAction.scss +38 -0
  89. package/dist/components/SummaryList/SummaryListRow.js +4 -6
  90. package/dist/components/SummaryList/SummaryListTitleRow.js +3 -5
  91. package/dist/components/SummaryList/helpers/getGroupActionAttributes.js +5 -3
  92. package/dist/components/SummaryList/helpers/getGroupActionAttributes.test.js +22 -22
  93. package/dist/components/SummaryList/helpers/getRowActionAttributes.js +5 -3
  94. package/dist/components/SummaryList/helpers/getRowActionAttributes.test.js +22 -22
  95. package/dist/components/SummaryList/helpers/index.js +1 -1
  96. package/dist/components/TaskList/Task.js +29 -19
  97. package/dist/components/TaskList/Task.test.js +76 -83
  98. package/dist/components/TaskList/TaskList.js +92 -49
  99. package/dist/components/TaskList/TaskList.scss +24 -0
  100. package/dist/components/TaskList/TaskList.test.js +255 -113
  101. package/dist/components/TaskList/TaskState.js +5 -7
  102. package/dist/components/TaskList/TaskState.test.js +45 -52
  103. package/dist/components/index.js +7 -7
  104. package/dist/context/HooksContext/HooksContext.js +80 -57
  105. package/dist/context/HooksContext/HooksContext.test.js +35 -26
  106. package/dist/context/HooksContext/index.js +4 -3
  107. package/dist/context/ValidationContext/ValidationContext.js +94 -43
  108. package/dist/context/ValidationContext/ValidationContext.test.js +68 -56
  109. package/dist/context/ValidationContext/index.js +4 -3
  110. package/dist/context/index.js +2 -2
  111. package/dist/hooks/index.js +10 -9
  112. package/dist/hooks/useAxios.js +40 -14
  113. package/dist/hooks/useGetRequest.js +97 -61
  114. package/dist/hooks/useHooks.js +3 -1
  115. package/dist/hooks/useRefData.js +39 -26
  116. package/dist/hooks/useValidation.js +3 -1
  117. package/dist/index.js +14 -13
  118. package/dist/models/CollectionLabels.js +1 -1
  119. package/dist/models/ComponentTypes.js +25 -25
  120. package/dist/models/EventTypes.js +4 -4
  121. package/dist/models/FormPages.js +4 -4
  122. package/dist/models/FormTypes.js +8 -8
  123. package/dist/models/HubFormats.js +3 -3
  124. package/dist/models/PageAction.js +38 -44
  125. package/dist/models/TaskStates.js +28 -29
  126. package/dist/models/index.js +9 -9
  127. package/dist/setupTests.js +31 -30
  128. package/dist/utils/CheckYourAnswers/getCYAAction.js +5 -5
  129. package/dist/utils/CheckYourAnswers/getCYAAction.test.js +54 -52
  130. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.js +25 -15
  131. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.test.js +35 -33
  132. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.js +31 -17
  133. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.test.js +44 -42
  134. package/dist/utils/CheckYourAnswers/getCYARow.js +6 -6
  135. package/dist/utils/CheckYourAnswers/getCYARow.test.js +86 -86
  136. package/dist/utils/CheckYourAnswers/getCYARowForGroup.js +24 -18
  137. package/dist/utils/CheckYourAnswers/getCYARowForGroup.test.js +16 -15
  138. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.js +36 -33
  139. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.test.js +61 -58
  140. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.js +108 -87
  141. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.test.js +281 -162
  142. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.js +20 -25
  143. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.test.js +97 -103
  144. package/dist/utils/CheckYourAnswers/getCYARowsForPage.js +18 -13
  145. package/dist/utils/CheckYourAnswers/getCYARowsForPage.test.js +76 -70
  146. package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.js +42 -0
  147. package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.test.js +56 -0
  148. package/dist/utils/CheckYourAnswers/index.js +1 -1
  149. package/dist/utils/CheckYourAnswers/showComponentCYA.js +4 -4
  150. package/dist/utils/CheckYourAnswers/showComponentCYA.test.js +25 -25
  151. package/dist/utils/CollectionPage/addCollectionPageEntry.js +2 -2
  152. package/dist/utils/CollectionPage/addCollectionPageEntry.test.js +5 -5
  153. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.js +2 -2
  154. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.test.js +18 -17
  155. package/dist/utils/CollectionPage/duplicateCollectionPageEntry.js +22 -12
  156. package/dist/utils/CollectionPage/duplicateCollectionPageEntry.test.js +38 -47
  157. package/dist/utils/CollectionPage/getCollectionPageActiveId.js +2 -2
  158. package/dist/utils/CollectionPage/getCollectionPageActiveId.test.js +10 -10
  159. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.js +11 -7
  160. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.test.js +22 -22
  161. package/dist/utils/CollectionPage/getCollectionPageData.js +12 -8
  162. package/dist/utils/CollectionPage/getCollectionPageData.test.js +19 -19
  163. package/dist/utils/CollectionPage/getErrorsForCollection.js +24 -24
  164. package/dist/utils/CollectionPage/getErrorsForCollection.test.js +22 -20
  165. package/dist/utils/CollectionPage/getQuickEditPage.js +31 -35
  166. package/dist/utils/CollectionPage/getQuickEditPage.test.js +27 -15
  167. package/dist/utils/CollectionPage/index.js +1 -1
  168. package/dist/utils/CollectionPage/mergeCollectionPages.js +43 -31
  169. package/dist/utils/CollectionPage/mergeCollectionPages.test.js +26 -26
  170. package/dist/utils/CollectionPage/removeCollectionPageEntry.js +6 -4
  171. package/dist/utils/CollectionPage/removeCollectionPageEntry.test.js +10 -10
  172. package/dist/utils/CollectionPage/setCollectionPageData.js +16 -10
  173. package/dist/utils/CollectionPage/setCollectionPageData.test.js +24 -24
  174. package/dist/utils/Component/addShowWhen.js +8 -4
  175. package/dist/utils/Component/addShowWhen.test.js +37 -37
  176. package/dist/utils/Component/applyToComponentTree.js +18 -18
  177. package/dist/utils/Component/applyToComponentTree.test.js +32 -27
  178. package/dist/utils/Component/cleanAttributes.js +13 -10
  179. package/dist/utils/Component/cleanAttributes.test.js +18 -17
  180. package/dist/utils/Component/elevateNestedComponents.js +7 -6
  181. package/dist/utils/Component/elevateNestedComponents.test.js +68 -30
  182. package/dist/utils/Component/getComponent.js +94 -88
  183. package/dist/utils/Component/getComponentTests/getComponent.autocomplete.test.js +17 -18
  184. package/dist/utils/Component/getComponentTests/getComponent.calculation.test.js +59 -46
  185. package/dist/utils/Component/getComponentTests/getComponent.checkboxes.test.js +48 -39
  186. package/dist/utils/Component/getComponentTests/getComponent.date.test.js +33 -23
  187. package/dist/utils/Component/getComponentTests/getComponent.details.test.js +18 -20
  188. package/dist/utils/Component/getComponentTests/getComponent.email.test.js +22 -17
  189. package/dist/utils/Component/getComponentTests/getComponent.file.test.js +25 -20
  190. package/dist/utils/Component/getComponentTests/getComponent.heading.test.js +9 -10
  191. package/dist/utils/Component/getComponentTests/getComponent.html.test.js +15 -17
  192. package/dist/utils/Component/getComponentTests/getComponent.insetText.test.js +8 -9
  193. package/dist/utils/Component/getComponentTests/getComponent.list.test.js +15 -17
  194. package/dist/utils/Component/getComponentTests/getComponent.multifile.test.js +26 -22
  195. package/dist/utils/Component/getComponentTests/getComponent.nested.test.js +175 -155
  196. package/dist/utils/Component/getComponentTests/getComponent.paragraph.test.js +15 -17
  197. package/dist/utils/Component/getComponentTests/getComponent.phoneNumber.test.js +22 -17
  198. package/dist/utils/Component/getComponentTests/getComponent.radios.test.js +72 -57
  199. package/dist/utils/Component/getComponentTests/getComponent.select.test.js +22 -17
  200. package/dist/utils/Component/getComponentTests/getComponent.text.test.js +22 -17
  201. package/dist/utils/Component/getComponentTests/getComponent.textArea.test.js +38 -31
  202. package/dist/utils/Component/getComponentTests/getComponent.time.test.js +29 -20
  203. package/dist/utils/Component/getComponentTests/getComponent.unknown.test.js +2 -2
  204. package/dist/utils/Component/getComponentTests/getComponent.warningText.test.js +8 -9
  205. package/dist/utils/Component/getDefaultValue.js +8 -6
  206. package/dist/utils/Component/getDefaultValue.test.js +12 -12
  207. package/dist/utils/Component/getDefaultValueFromConfig.js +21 -22
  208. package/dist/utils/Component/getDefaultValueFromConfig.test.js +31 -31
  209. package/dist/utils/Component/index.js +1 -1
  210. package/dist/utils/Component/isEditable.js +4 -2
  211. package/dist/utils/Component/isEditable.test.js +15 -14
  212. package/dist/utils/Component/optionIsSelected.js +6 -1
  213. package/dist/utils/Component/optionIsSelected.test.js +35 -9
  214. package/dist/utils/Component/setupContainerComponentsPath.js +29 -27
  215. package/dist/utils/Component/setupContainerComponentsPath.test.js +11 -11
  216. package/dist/utils/Component/showComponent.js +1 -1
  217. package/dist/utils/Component/showComponent.test.js +28 -28
  218. package/dist/utils/Component/wrapInFormGroup.js +2 -2
  219. package/dist/utils/Condition/index.js +1 -1
  220. package/dist/utils/Condition/meetsAllConditions.js +8 -8
  221. package/dist/utils/Condition/meetsAllConditions.test.js +20 -20
  222. package/dist/utils/Condition/meetsCondition.js +25 -16
  223. package/dist/utils/Condition/meetsCondition.test.js +402 -402
  224. package/dist/utils/Condition/meetsOneCondition.js +5 -5
  225. package/dist/utils/Condition/meetsOneCondition.test.js +16 -16
  226. package/dist/utils/Condition/setupConditions.js +18 -13
  227. package/dist/utils/Condition/setupConditions.test.js +7 -7
  228. package/dist/utils/Container/getEditableComponents.js +5 -3
  229. package/dist/utils/Container/getEditableComponents.test.js +45 -43
  230. package/dist/utils/Container/index.js +1 -1
  231. package/dist/utils/Container/setupNesting.js +20 -16
  232. package/dist/utils/Container/setupNesting.test.js +30 -27
  233. package/dist/utils/Container/showContainer.js +7 -3
  234. package/dist/utils/Container/showContainer.test.js +30 -30
  235. package/dist/utils/Data/applyFormula.js +48 -38
  236. package/dist/utils/Data/applyFormula.test.js +20 -20
  237. package/dist/utils/Data/getAutocompleteSource.js +26 -18
  238. package/dist/utils/Data/getAutocompleteSource.test.js +86 -80
  239. package/dist/utils/Data/getDataPath.js +28 -18
  240. package/dist/utils/Data/getDataPath.test.js +12 -12
  241. package/dist/utils/Data/getOptions.js +30 -24
  242. package/dist/utils/Data/getOptions.test.js +27 -27
  243. package/dist/utils/Data/getSourceData.js +19 -6
  244. package/dist/utils/Data/getSourceData.test.js +80 -84
  245. package/dist/utils/Data/index.js +1 -1
  246. package/dist/utils/Data/nestInRefdataOptions.js +16 -9
  247. package/dist/utils/Data/nestInRefdataOptions.test.js +16 -16
  248. package/dist/utils/Data/refDataToOptions.js +13 -10
  249. package/dist/utils/Data/refDataToOptions.test.js +19 -19
  250. package/dist/utils/Data/setDataItem.js +8 -7
  251. package/dist/utils/Data/setDataItem.test.js +37 -37
  252. package/dist/utils/Data/setupFormData.js +21 -13
  253. package/dist/utils/Data/setupFormData.test.js +50 -51
  254. package/dist/utils/Data/setupRefDataUrlForComponent.js +26 -20
  255. package/dist/utils/Data/setupRefDataUrlForComponent.test.js +24 -24
  256. package/dist/utils/FormPage/applyConditionalProperties.js +9 -5
  257. package/dist/utils/FormPage/applyConditionalProperties.test.js +18 -15
  258. package/dist/utils/FormPage/getConditionalText.js +3 -3
  259. package/dist/utils/FormPage/getConditionalText.test.js +29 -29
  260. package/dist/utils/FormPage/getFormPage.js +16 -15
  261. package/dist/utils/FormPage/getFormPage.test.js +46 -47
  262. package/dist/utils/FormPage/getFormPages.js +12 -7
  263. package/dist/utils/FormPage/getFormPages.test.js +23 -20
  264. package/dist/utils/FormPage/getPageActions.js +15 -9
  265. package/dist/utils/FormPage/getPageActions.test.js +32 -32
  266. package/dist/utils/FormPage/getParagraphFromText.js +7 -5
  267. package/dist/utils/FormPage/getParagraphFromText.test.js +6 -6
  268. package/dist/utils/FormPage/index.js +4 -2
  269. package/dist/utils/FormPage/showFormPage.js +7 -3
  270. package/dist/utils/FormPage/showFormPage.test.js +32 -32
  271. package/dist/utils/FormPage/showFormPageCYA.js +1 -1
  272. package/dist/utils/FormPage/showFormPageCYA.test.js +8 -8
  273. package/dist/utils/FormPage/useComponent.js +28 -21
  274. package/dist/utils/FormPage/useComponent.test.js +79 -77
  275. package/dist/utils/Format/formatData.js +1 -1
  276. package/dist/utils/Format/formatData.test.js +18 -18
  277. package/dist/utils/Format/formatDataForComponent.js +6 -5
  278. package/dist/utils/Format/formatDataForComponent.test.js +78 -50
  279. package/dist/utils/Format/formatDataForForm.js +8 -6
  280. package/dist/utils/Format/formatDataForForm.test.js +16 -13
  281. package/dist/utils/Format/formatDataForPage.js +5 -4
  282. package/dist/utils/Format/formatDataForPage.test.js +25 -20
  283. package/dist/utils/Format/index.js +1 -1
  284. package/dist/utils/Hub/getFormHub.js +1 -1
  285. package/dist/utils/Hub/getFormHub.test.js +31 -28
  286. package/dist/utils/Hub/index.js +1 -1
  287. package/dist/utils/Meta/constants.js +2 -2
  288. package/dist/utils/Meta/documents/getDocuments.js +1 -1
  289. package/dist/utils/Meta/documents/getDocuments.test.js +16 -24
  290. package/dist/utils/Meta/documents/index.js +1 -1
  291. package/dist/utils/Meta/documents/setDocumentsForField.js +16 -14
  292. package/dist/utils/Meta/documents/setDocumentsForField.test.js +34 -68
  293. package/dist/utils/Meta/index.js +1 -1
  294. package/dist/utils/Operate/checkValueIsTruthy.js +2 -2
  295. package/dist/utils/Operate/checkValueIsTruthy.test.js +16 -16
  296. package/dist/utils/Operate/getFirstOf.js +5 -5
  297. package/dist/utils/Operate/getFirstOf.test.js +31 -31
  298. package/dist/utils/Operate/getIndexOfMatchingValueIn.js +10 -10
  299. package/dist/utils/Operate/getIndexOfMatchingValueIn.test.js +52 -46
  300. package/dist/utils/Operate/getLength.js +50 -0
  301. package/dist/utils/Operate/getLength.test.js +89 -0
  302. package/dist/utils/Operate/index.js +1 -1
  303. package/dist/utils/Operate/persistValueInFormData.js +3 -3
  304. package/dist/utils/Operate/persistValueInFormData.test.js +20 -22
  305. package/dist/utils/Operate/runPageOperations.js +9 -7
  306. package/dist/utils/Operate/runPageOperations.test.js +36 -35
  307. package/dist/utils/Operate/setValueInFormData.js +2 -2
  308. package/dist/utils/Operate/setValueInFormData.test.js +16 -16
  309. package/dist/utils/Operate/shouldRun.js +6 -6
  310. package/dist/utils/Operate/shouldRun.test.js +27 -21
  311. package/dist/utils/Validate/additional/conditionallyRequired.js +4 -4
  312. package/dist/utils/Validate/additional/conditionallyRequired.test.js +18 -18
  313. package/dist/utils/Validate/additional/index.js +6 -6
  314. package/dist/utils/Validate/additional/index.test.js +12 -12
  315. package/dist/utils/Validate/additional/mustBeAfter.js +2 -2
  316. package/dist/utils/Validate/additional/mustBeAfter.test.js +40 -40
  317. package/dist/utils/Validate/additional/mustBeBefore.js +2 -2
  318. package/dist/utils/Validate/additional/mustBeBefore.test.js +28 -28
  319. package/dist/utils/Validate/additional/mustBeEarlierDateTime.js +11 -7
  320. package/dist/utils/Validate/additional/mustBeEarlierDateTime.test.js +41 -37
  321. package/dist/utils/Validate/additional/mustBeGreaterThan.js +2 -2
  322. package/dist/utils/Validate/additional/mustBeGreaterThan.test.js +18 -18
  323. package/dist/utils/Validate/additional/mustBeInTheFuture.js +2 -2
  324. package/dist/utils/Validate/additional/mustBeInTheFuture.test.js +12 -12
  325. package/dist/utils/Validate/additional/mustBeInThePast.js +3 -3
  326. package/dist/utils/Validate/additional/mustBeInThePast.test.js +12 -12
  327. package/dist/utils/Validate/additional/mustBeLessThan.js +2 -2
  328. package/dist/utils/Validate/additional/mustBeLessThan.test.js +17 -17
  329. package/dist/utils/Validate/additional/mustBeLongerThan.js +1 -1
  330. package/dist/utils/Validate/additional/mustBeLongerThan.test.js +16 -16
  331. package/dist/utils/Validate/additional/mustBeNumbersOnly.js +2 -2
  332. package/dist/utils/Validate/additional/mustBeNumbersOnly.test.js +20 -20
  333. package/dist/utils/Validate/additional/mustBeShorterThan.js +1 -1
  334. package/dist/utils/Validate/additional/mustBeShorterThan.test.js +16 -16
  335. package/dist/utils/Validate/additional/mustBeUniqueInCollection.js +4 -4
  336. package/dist/utils/Validate/additional/mustBeUniqueInCollection.test.js +39 -35
  337. package/dist/utils/Validate/additional/mustEnterAtLeastOne.js +2 -2
  338. package/dist/utils/Validate/additional/mustEnterAtLeastOne.test.js +16 -14
  339. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.js +1 -1
  340. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.test.js +12 -12
  341. package/dist/utils/Validate/additional/mustNotContainSql.js +4 -3
  342. package/dist/utils/Validate/additional/mustNotContainSql.test.js +14 -14
  343. package/dist/utils/Validate/additional/mustSelectOnlyOne.js +2 -2
  344. package/dist/utils/Validate/additional/mustSelectOnlyOne.test.js +26 -28
  345. package/dist/utils/Validate/additional/utils.js +22 -9
  346. package/dist/utils/Validate/index.js +1 -1
  347. package/dist/utils/Validate/validateCollection.js +25 -19
  348. package/dist/utils/Validate/validateCollection.test.js +66 -74
  349. package/dist/utils/Validate/validateComponent.js +21 -18
  350. package/dist/utils/Validate/validateComponent.test.js +176 -166
  351. package/dist/utils/Validate/validateContainer.js +20 -15
  352. package/dist/utils/Validate/validateContainer.test.js +52 -58
  353. package/dist/utils/Validate/validateDate.js +21 -15
  354. package/dist/utils/Validate/validateDate.test.js +32 -31
  355. package/dist/utils/Validate/validateEmail.js +8 -6
  356. package/dist/utils/Validate/validateEmail.test.js +25 -25
  357. package/dist/utils/Validate/validateMultifile.js +7 -5
  358. package/dist/utils/Validate/validateMultifile.test.js +18 -17
  359. package/dist/utils/Validate/validatePage.js +22 -19
  360. package/dist/utils/Validate/validatePage.test.js +203 -215
  361. package/dist/utils/Validate/validateRegex.js +5 -3
  362. package/dist/utils/Validate/validateRegex.test.js +14 -14
  363. package/dist/utils/Validate/validateRequired.js +6 -4
  364. package/dist/utils/Validate/validateRequired.test.js +18 -18
  365. package/dist/utils/Validate/validateTextArea.js +6 -4
  366. package/dist/utils/Validate/validateTextArea.test.js +20 -20
  367. package/dist/utils/Validate/validateTime.js +26 -11
  368. package/dist/utils/Validate/validateTime.test.js +62 -16
  369. package/dist/utils/index.js +9 -7
  370. package/package.json +2 -2
  371. package/dist/utils/CheckYourAnswers/getComponentRowForCYA.js +0 -37
  372. package/dist/utils/CheckYourAnswers/getComponentRowForCYA.test.js +0 -41
@@ -10,37 +10,41 @@ var _react = _interopRequireDefault(require("react"));
10
10
  var _GroupAction = _interopRequireDefault(require("./GroupAction"));
11
11
  var _SummaryListRow = _interopRequireDefault(require("./SummaryListRow"));
12
12
  var _SummaryListHeadingRow = _interopRequireDefault(require("./SummaryListHeadingRow"));
13
+ var _SummaryListHeadingRowWithAction = _interopRequireDefault(require("./SummaryListHeadingRowWithAction"));
13
14
  var _SummaryListTitleRow = _interopRequireDefault(require("./SummaryListTitleRow"));
14
15
  require("./SummaryList.scss");
15
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
16
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } // Global imports
16
+ var _excluded = ["rows", "noChangeAction", "noGroupAction", "isGroup", "classBlock", "classModifiers", "className"]; // Global imports
17
17
  // Local imports
18
18
  // Styles
19
- const DEFAULT_CLASS = exports.DEFAULT_CLASS = 'govuk-summary-list';
20
- const SummaryList = _ref => {
21
- let {
22
- rows,
23
- noChangeAction,
24
- noGroupAction,
25
- isGroup,
26
- classBlock,
27
- classModifiers,
28
- className,
29
- ...attrs
30
- } = _ref;
31
- const classes = _copReactComponents.Utils.classBuilder(classBlock, classModifiers, className);
32
- const cleanedHtmlAttrs = _copReactComponents.Utils.cleanHtmlAttributes(attrs);
33
- let groupActionRow = null;
19
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
20
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
21
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
22
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
23
+ var DEFAULT_CLASS = exports.DEFAULT_CLASS = 'govuk-summary-list';
24
+ var SummaryList = function SummaryList(_ref) {
25
+ var rows = _ref.rows,
26
+ noChangeAction = _ref.noChangeAction,
27
+ noGroupAction = _ref.noGroupAction,
28
+ isGroup = _ref.isGroup,
29
+ classBlock = _ref.classBlock,
30
+ classModifiers = _ref.classModifiers,
31
+ className = _ref.className,
32
+ attrs = _objectWithoutProperties(_ref, _excluded);
33
+ var classes = _copReactComponents.Utils.classBuilder(classBlock, classModifiers, className);
34
+ var cleanedHtmlAttrs = _copReactComponents.Utils.cleanHtmlAttributes(attrs);
35
+ var groupActionRow = null;
34
36
  if (isGroup) {
35
- const rowActions = rows.filter(r => !!r.action);
37
+ var rowActions = rows.filter(function (r) {
38
+ return !!r.action;
39
+ });
36
40
  groupActionRow = rowActions !== null && rowActions !== void 0 && rowActions.length ? rowActions[0] : null;
37
41
  }
38
42
  return /*#__PURE__*/_react.default.createElement("div", {
39
43
  className: "group-of-rows"
40
44
  }, /*#__PURE__*/_react.default.createElement("dl", _extends({}, cleanedHtmlAttrs, {
41
45
  className: classes()
42
- }), rows.map(row => {
43
- const key = "".concat(row.pageId, "_").concat(row.full_path || row.fieldId);
46
+ }), rows.map(function (row) {
47
+ var key = "".concat(row.pageId, "_").concat(row.full_path || row.fieldId);
44
48
  if (row.type === 'title') {
45
49
  return /*#__PURE__*/_react.default.createElement(_SummaryListTitleRow.default, {
46
50
  key: key,
@@ -56,6 +60,13 @@ const SummaryList = _ref => {
56
60
  classes: classes
57
61
  });
58
62
  }
63
+ if (row.type === 'headingWithAction') {
64
+ return /*#__PURE__*/_react.default.createElement(_SummaryListHeadingRowWithAction.default, {
65
+ row: row,
66
+ classes: classes,
67
+ noChangeAction: noChangeAction
68
+ });
69
+ }
59
70
  if (row.type === 'action') {
60
71
  return noChangeAction ? null : /*#__PURE__*/_react.default.createElement("div", {
61
72
  key: "".concat(key, "-actions")
@@ -69,7 +80,9 @@ const SummaryList = _ref => {
69
80
  classes: classes,
70
81
  showAction: !noChangeAction
71
82
  });
72
- }).filter(r => !!r), isGroup && !noGroupAction && /*#__PURE__*/_react.default.createElement("div", {
83
+ }).filter(function (r) {
84
+ return !!r;
85
+ }), isGroup && !noGroupAction && /*#__PURE__*/_react.default.createElement("div", {
73
86
  className: "change-group-button"
74
87
  }, /*#__PURE__*/_react.default.createElement(_GroupAction.default, {
75
88
  group: groupActionRow
@@ -33,6 +33,21 @@
33
33
  }
34
34
  }
35
35
 
36
+ .govuk-summary-list__headingWithAction {
37
+ display: table-row;
38
+ width: 100%;
39
+ white-space: nowrap;
40
+ .heading-text, .heading-action {
41
+ padding-bottom: 10px;
42
+ }
43
+
44
+ &:not(:first-child) {
45
+ .heading-text, .heading-action {
46
+ padding-top: 20px;
47
+ }
48
+ }
49
+ }
50
+
36
51
  .changeRow {
37
52
  .govuk-link {
38
53
  float: right;
@@ -1,45 +1,53 @@
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 _SummaryList = _interopRequireWildcard(require("./SummaryList"));
6
- 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); }
7
- 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; }
7
+ 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); }
8
+ 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; }
8
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
- // Global imports
10
-
10
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
11
+ 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."); }
12
+ 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); }
13
+ 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; }
14
+ 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; } }
15
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } // Global imports
11
16
  // Local imports
12
-
13
- describe('components', () => {
14
- describe('SummaryList', () => {
15
- const checkSummaryList = (container, id) => {
16
- const summaryList = (0, _react.getByTestId)(container, id);
17
+ describe('components', function () {
18
+ describe('SummaryList', function () {
19
+ var checkSummaryList = function checkSummaryList(container, id) {
20
+ var summaryList = (0, _react.getByTestId)(container, id);
17
21
  expect(summaryList.tagName).toEqual('DL');
18
22
  expect(summaryList.classList).toContain(_SummaryList.DEFAULT_CLASS);
19
23
  return summaryList;
20
24
  };
21
- const checkTitleRow = (summaryList, index) => {
22
- const row = summaryList.childNodes[index];
25
+ var checkTitleRow = function checkTitleRow(summaryList, index) {
26
+ var row = summaryList.childNodes[index];
23
27
  expect(row.tagName).toEqual('DIV');
24
28
  expect(row.classList).toContain("".concat(_SummaryList.DEFAULT_CLASS, "__row"));
25
29
  expect(row.classList).toContain("".concat(_SummaryList.DEFAULT_CLASS, "__title"));
26
- const [heading] = row.childNodes;
30
+ var _row$childNodes = _slicedToArray(row.childNodes, 1),
31
+ heading = _row$childNodes[0];
27
32
  expect(heading.tagName).toEqual('H3');
28
33
  expect(heading.classList).toContain('govuk-heading-s');
29
34
  return heading;
30
35
  };
31
- const checkActionRow = (summaryList, index) => {
32
- const row = summaryList.childNodes[index];
36
+ var checkActionRow = function checkActionRow(summaryList, index) {
37
+ var row = summaryList.childNodes[index];
33
38
  expect(row.tagName).toEqual('DIV');
34
39
  expect(row.childNodes.length).toEqual(1);
35
- const link = row.childNodes[0];
40
+ var link = row.childNodes[0];
36
41
  return link;
37
42
  };
38
- const checkRow = (summaryList, index) => {
39
- const row = summaryList.childNodes[index];
43
+ var checkRow = function checkRow(summaryList, index) {
44
+ var row = summaryList.childNodes[index];
40
45
  expect(row.tagName).toEqual('DIV');
41
46
  expect(row.classList).toContain("".concat(_SummaryList.DEFAULT_CLASS, "__row"));
42
- const [key, value, actions] = row.childNodes;
47
+ var _row$childNodes2 = _slicedToArray(row.childNodes, 3),
48
+ key = _row$childNodes2[0],
49
+ value = _row$childNodes2[1],
50
+ actions = _row$childNodes2[2];
43
51
  expect(key.tagName).toEqual('DT');
44
52
  expect(key.classList).toContain("".concat(_SummaryList.DEFAULT_CLASS, "__key"));
45
53
  expect(value.tagName).toEqual('DD');
@@ -48,11 +56,26 @@ describe('components', () => {
48
56
  expect(actions.classList).toContain("".concat(_SummaryList.DEFAULT_CLASS, "__actions"));
49
57
  return [key, value, actions];
50
58
  };
51
- const checkRowNoChangeActions = (summaryList, index) => {
52
- const row = summaryList.childNodes[index];
59
+ var checkHeadingRowWithAction = function checkHeadingRowWithAction(summaryList, index) {
60
+ var row = summaryList.childNodes[index];
61
+ expect(row.tagName).toEqual('DIV');
62
+ expect(row.classList).toContain("".concat(_SummaryList.DEFAULT_CLASS, "__headingWithAction"));
63
+ var _row$childNodes3 = _slicedToArray(row.childNodes, 2),
64
+ key = _row$childNodes3[0],
65
+ action = _row$childNodes3[1];
66
+ expect(key.tagName).toEqual('TD');
67
+ expect(key.classList).toContain('heading-text');
68
+ expect(action.tagName).toEqual('TD');
69
+ expect(action.classList).toContain('heading-action');
70
+ return [key, action];
71
+ };
72
+ var checkRowNoChangeActions = function checkRowNoChangeActions(summaryList, index) {
73
+ var row = summaryList.childNodes[index];
53
74
  expect(row.tagName).toEqual('DIV');
54
75
  expect(row.classList).toContain("".concat(_SummaryList.DEFAULT_CLASS, "__row"));
55
- const [key, value] = row.childNodes;
76
+ var _row$childNodes4 = _slicedToArray(row.childNodes, 2),
77
+ key = _row$childNodes4[0],
78
+ value = _row$childNodes4[1];
56
79
  expect(key.tagName).toEqual('DT');
57
80
  expect(key.classList).toContain("".concat(_SummaryList.DEFAULT_CLASS, "__key"));
58
81
  expect(value.tagName).toEqual('DD');
@@ -60,21 +83,20 @@ describe('components', () => {
60
83
  expect(row.childNodes.length).toEqual(2);
61
84
  return [key, value];
62
85
  };
63
- it('should handle an empty rows array', () => {
64
- const ID = 'test-id';
65
- const ROWS = [];
66
- const {
67
- container
68
- } = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_SummaryList.default, {
69
- "data-testid": ID,
70
- rows: ROWS
71
- }));
72
- const summaryList = checkSummaryList(container, ID);
86
+ it('should handle an empty rows array', function () {
87
+ var ID = 'test-id';
88
+ var ROWS = [];
89
+ var _render = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_SummaryList.default, {
90
+ "data-testid": ID,
91
+ rows: ROWS
92
+ })),
93
+ container = _render.container;
94
+ var summaryList = checkSummaryList(container, ID);
73
95
  expect(summaryList.childNodes.length).toEqual(0);
74
96
  });
75
- it('should handle rows with no actions and string values', () => {
76
- const ID = 'test-id';
77
- const ROWS = [{
97
+ it('should handle rows with no actions and string values', function () {
98
+ var ID = 'test-id';
99
+ var ROWS = [{
78
100
  key: 'a',
79
101
  pageId: 'p1',
80
102
  fieldId: 'a',
@@ -85,25 +107,28 @@ describe('components', () => {
85
107
  fieldId: 'b',
86
108
  value: 'Bravo value'
87
109
  }];
88
- const {
89
- container
90
- } = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_SummaryList.default, {
91
- "data-testid": ID,
92
- rows: ROWS,
93
- noGroupAction: true
94
- }));
95
- const summaryList = checkSummaryList(container, ID);
110
+ var _render2 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_SummaryList.default, {
111
+ "data-testid": ID,
112
+ rows: ROWS,
113
+ noGroupAction: true
114
+ })),
115
+ container = _render2.container;
116
+ var summaryList = checkSummaryList(container, ID);
96
117
  expect(summaryList.childNodes.length).toEqual(ROWS.length);
97
- ROWS.forEach((row, index) => {
98
- const [key, value, actions] = checkRow(summaryList, index);
118
+ ROWS.forEach(function (row, index) {
119
+ var _checkRow = checkRow(summaryList, index),
120
+ _checkRow2 = _slicedToArray(_checkRow, 3),
121
+ key = _checkRow2[0],
122
+ value = _checkRow2[1],
123
+ actions = _checkRow2[2];
99
124
  expect(key.textContent).toEqual("".concat(row.key, " (optional)"));
100
125
  expect(value.textContent).toEqual(row.value);
101
126
  expect(actions.childNodes.length).toEqual(0);
102
127
  });
103
128
  });
104
- it('should handle title rows', () => {
105
- const ID = 'test-id';
106
- const ROWS = [{
129
+ it('should handle title rows', function () {
130
+ var ID = 'test-id';
131
+ var ROWS = [{
107
132
  key: 'Title',
108
133
  pageId: 'p1',
109
134
  fieldId: 'a',
@@ -119,25 +144,28 @@ describe('components', () => {
119
144
  fieldId: 'c',
120
145
  value: 'Bravo value'
121
146
  }];
122
- const {
123
- container
124
- } = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_SummaryList.default, {
125
- "data-testid": ID,
126
- rows: ROWS
127
- }));
128
- const summaryList = checkSummaryList(container, ID);
147
+ var _render3 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_SummaryList.default, {
148
+ "data-testid": ID,
149
+ rows: ROWS
150
+ })),
151
+ container = _render3.container;
152
+ var summaryList = checkSummaryList(container, ID);
129
153
  expect(summaryList.childNodes.length).toEqual(ROWS.length);
130
- const assessTitleRow = (row, index) => {
131
- const heading = checkTitleRow(summaryList, index);
154
+ var assessTitleRow = function assessTitleRow(row, index) {
155
+ var heading = checkTitleRow(summaryList, index);
132
156
  expect(heading.textContent).toEqual(row.key);
133
157
  };
134
- const assessRow = (row, index) => {
135
- const [key, value, actions] = checkRow(summaryList, index);
158
+ var assessRow = function assessRow(row, index) {
159
+ var _checkRow3 = checkRow(summaryList, index),
160
+ _checkRow4 = _slicedToArray(_checkRow3, 3),
161
+ key = _checkRow4[0],
162
+ value = _checkRow4[1],
163
+ actions = _checkRow4[2];
136
164
  expect(key.textContent).toEqual("".concat(row.key, " (optional)"));
137
165
  expect(value.textContent).toEqual(row.value);
138
166
  expect(actions.childNodes.length).toEqual(0);
139
167
  };
140
- ROWS.forEach((row, index) => {
168
+ ROWS.forEach(function (row, index) {
141
169
  if (row.type === 'title') {
142
170
  assessTitleRow(row, index);
143
171
  } else {
@@ -145,9 +173,9 @@ describe('components', () => {
145
173
  }
146
174
  });
147
175
  });
148
- it('should handle action rows', () => {
149
- const ID = 'test-id';
150
- const ROWS = [{
176
+ it('should handle action rows', function () {
177
+ var ID = 'test-id';
178
+ var ROWS = [{
151
179
  key: 'a',
152
180
  pageId: 'p1',
153
181
  fieldId: 'a',
@@ -172,25 +200,24 @@ describe('components', () => {
172
200
  label: 'Do action'
173
201
  }
174
202
  }];
175
- const {
176
- container
177
- } = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_SummaryList.default, {
178
- "data-testid": ID,
179
- rows: ROWS
180
- }));
181
- const summaryList = checkSummaryList(container, ID);
203
+ var _render4 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_SummaryList.default, {
204
+ "data-testid": ID,
205
+ rows: ROWS
206
+ })),
207
+ container = _render4.container;
208
+ var summaryList = checkSummaryList(container, ID);
182
209
  expect(summaryList.childNodes.length).toEqual(ROWS.length);
183
- const assessActionRow = (row, index) => {
184
- const link = checkActionRow(summaryList, index);
210
+ var assessActionRow = function assessActionRow(row, index) {
211
+ var link = checkActionRow(summaryList, index);
185
212
  expect(link.textContent).toEqual(row.action.label);
186
213
  };
187
- ROWS.forEach((row, index) => {
214
+ ROWS.forEach(function (row, index) {
188
215
  assessActionRow(row, index);
189
216
  });
190
217
  });
191
- it('should hide actions rows if flag is given', () => {
192
- const ID = 'test-id';
193
- const ROWS = [{
218
+ it('should hide actions rows if flag is given', function () {
219
+ var ID = 'test-id';
220
+ var ROWS = [{
194
221
  key: 'a',
195
222
  pageId: 'p1',
196
223
  fieldId: 'a',
@@ -215,20 +242,19 @@ describe('components', () => {
215
242
  label: 'Do action'
216
243
  }
217
244
  }];
218
- const {
219
- container
220
- } = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_SummaryList.default, {
221
- "data-testid": ID,
222
- rows: ROWS,
223
- noChangeAction: true
224
- }));
225
- const summaryList = checkSummaryList(container, ID);
245
+ var _render5 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_SummaryList.default, {
246
+ "data-testid": ID,
247
+ rows: ROWS,
248
+ noChangeAction: true
249
+ })),
250
+ container = _render5.container;
251
+ var summaryList = checkSummaryList(container, ID);
226
252
  expect(summaryList.childNodes.length).toEqual(0);
227
253
  });
228
- it('should handle rows with no actions and component values', () => {
229
- const ID = 'test-id';
230
- const VALUES = ['Alpha component value', 'Bravo component value'];
231
- const ROWS = [{
254
+ it('should handle rows with no actions and component values', function () {
255
+ var ID = 'test-id';
256
+ var VALUES = ['Alpha component value', 'Bravo component value'];
257
+ var ROWS = [{
232
258
  key: 'a',
233
259
  pageId: 'p1',
234
260
  fieldId: 'a',
@@ -239,31 +265,34 @@ describe('components', () => {
239
265
  fieldId: 'b',
240
266
  value: /*#__PURE__*/_react2.default.createElement("div", null, VALUES[1])
241
267
  }];
242
- const {
243
- container
244
- } = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_SummaryList.default, {
245
- "data-testid": ID,
246
- rows: ROWS
247
- }));
248
- const summaryList = checkSummaryList(container, ID);
268
+ var _render6 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_SummaryList.default, {
269
+ "data-testid": ID,
270
+ rows: ROWS
271
+ })),
272
+ container = _render6.container;
273
+ var summaryList = checkSummaryList(container, ID);
249
274
  expect(summaryList.childNodes.length).toEqual(ROWS.length);
250
- ROWS.forEach((row, index) => {
251
- const [key, value, actions] = checkRow(summaryList, index);
275
+ ROWS.forEach(function (row, index) {
276
+ var _checkRow5 = checkRow(summaryList, index),
277
+ _checkRow6 = _slicedToArray(_checkRow5, 3),
278
+ key = _checkRow6[0],
279
+ value = _checkRow6[1],
280
+ actions = _checkRow6[2];
252
281
  expect(key.textContent).toEqual("".concat(row.key, " (optional)"));
253
282
  expect(value.childNodes.length).toEqual(1);
254
- const valueDiv = value.childNodes[0];
283
+ var valueDiv = value.childNodes[0];
255
284
  expect(valueDiv.tagName).toEqual('DIV');
256
285
  expect(valueDiv.textContent).toEqual(VALUES[index]);
257
286
  expect(actions.childNodes.length).toEqual(0);
258
287
  });
259
288
  });
260
- it('should handle rows with actions', () => {
261
- const ID = 'test-id';
262
- const ON_ACTION_CALLS = [];
263
- const ON_ACTION = row => {
289
+ it('should handle rows with actions', function () {
290
+ var ID = 'test-id';
291
+ var ON_ACTION_CALLS = [];
292
+ var ON_ACTION = function ON_ACTION(row) {
264
293
  ON_ACTION_CALLS.push(row);
265
294
  };
266
- const ROWS = [{
295
+ var ROWS = [{
267
296
  key: 'a',
268
297
  pageId: 'p1',
269
298
  fieldId: 'a',
@@ -282,29 +311,79 @@ describe('components', () => {
282
311
  onAction: ON_ACTION
283
312
  }
284
313
  }];
285
- const {
286
- container
287
- } = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_SummaryList.default, {
288
- "data-testid": ID,
289
- rows: ROWS
290
- }));
291
- const summaryList = checkSummaryList(container, ID);
314
+ var _render7 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_SummaryList.default, {
315
+ "data-testid": ID,
316
+ rows: ROWS
317
+ })),
318
+ container = _render7.container;
319
+ var summaryList = checkSummaryList(container, ID);
292
320
  expect(summaryList.childNodes.length).toEqual(ROWS.length);
293
- ROWS.forEach((row, index) => {
294
- const [key, value, actions] = checkRow(summaryList, index);
321
+ ROWS.forEach(function (row, index) {
322
+ var _checkRow7 = checkRow(summaryList, index),
323
+ _checkRow8 = _slicedToArray(_checkRow7, 3),
324
+ key = _checkRow8[0],
325
+ value = _checkRow8[1],
326
+ actions = _checkRow8[2];
295
327
  expect(key.textContent).toEqual("".concat(row.key, " (optional)"));
296
328
  expect(value.textContent).toEqual(row.value);
297
- const a = actions.childNodes[0];
329
+ var a = actions.childNodes[0];
298
330
  expect(a.textContent).toEqual(row.action.label);
299
331
  _react.fireEvent.click(a, {});
300
332
  expect(ON_ACTION_CALLS.length).toEqual(index + 1);
301
333
  expect(ON_ACTION_CALLS[index]).toEqual(row);
302
334
  });
303
335
  });
304
- it('should handle rows with component values and actions set to hidden', () => {
305
- const ID = 'test-id';
306
- const VALUES = ['Alpha component value', 'Bravo component value'];
307
- const ROWS = [{
336
+ it('should handle heading rows with actions', function () {
337
+ var ID = 'test-id';
338
+ var ON_ACTION_CALLS = [];
339
+ var ON_ACTION = function ON_ACTION(row) {
340
+ ON_ACTION_CALLS.push(row);
341
+ };
342
+ var ROWS = [{
343
+ key: 'a',
344
+ pageId: 'p1',
345
+ type: 'headingWithAction',
346
+ size: 'm',
347
+ action: {
348
+ label: 'Change A',
349
+ onAction: ON_ACTION
350
+ }
351
+ }, {
352
+ key: 'b',
353
+ pageId: 'p2',
354
+ type: 'headingWithAction',
355
+ size: 'm',
356
+ action: {
357
+ label: 'Change B',
358
+ onAction: ON_ACTION
359
+ }
360
+ }];
361
+ var _render8 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_SummaryList.default, {
362
+ "data-testid": ID,
363
+ rows: ROWS
364
+ })),
365
+ container = _render8.container;
366
+ var summaryList = checkSummaryList(container, ID);
367
+ expect(summaryList.childNodes.length).toEqual(ROWS.length);
368
+ ROWS.forEach(function (row, index) {
369
+ var _checkHeadingRowWithA = checkHeadingRowWithAction(summaryList, index),
370
+ _checkHeadingRowWithA2 = _slicedToArray(_checkHeadingRowWithA, 2),
371
+ key = _checkHeadingRowWithA2[0],
372
+ actions = _checkHeadingRowWithA2[1];
373
+ expect(key.textContent).toEqual("".concat(row.key));
374
+ var a = actions.childNodes[0];
375
+ expect(a.textContent).toEqual(row.action.label);
376
+ _react.fireEvent.click(a, {});
377
+ expect(ON_ACTION_CALLS.length).toEqual(index + 1);
378
+ expect(ON_ACTION_CALLS[index]).toEqual({
379
+ action: row.action
380
+ });
381
+ });
382
+ });
383
+ it('should handle rows with component values and actions set to hidden', function () {
384
+ var ID = 'test-id';
385
+ var VALUES = ['Alpha component value', 'Bravo component value'];
386
+ var ROWS = [{
308
387
  key: 'a',
309
388
  pageId: 'p1',
310
389
  fieldId: 'a',
@@ -315,29 +394,31 @@ describe('components', () => {
315
394
  fieldId: 'b',
316
395
  value: /*#__PURE__*/_react2.default.createElement("div", null, VALUES[1])
317
396
  }];
318
- const {
319
- container
320
- } = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_SummaryList.default, {
321
- "data-testid": ID,
322
- rows: ROWS,
323
- noChangeAction: true
324
- }));
325
- const summaryList = checkSummaryList(container, ID);
397
+ var _render9 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_SummaryList.default, {
398
+ "data-testid": ID,
399
+ rows: ROWS,
400
+ noChangeAction: true
401
+ })),
402
+ container = _render9.container;
403
+ var summaryList = checkSummaryList(container, ID);
326
404
  expect(summaryList.childNodes.length).toEqual(ROWS.length);
327
- ROWS.forEach((row, index) => {
328
- const [key, value] = checkRowNoChangeActions(summaryList, index);
405
+ ROWS.forEach(function (row, index) {
406
+ var _checkRowNoChangeActi = checkRowNoChangeActions(summaryList, index),
407
+ _checkRowNoChangeActi2 = _slicedToArray(_checkRowNoChangeActi, 2),
408
+ key = _checkRowNoChangeActi2[0],
409
+ value = _checkRowNoChangeActi2[1];
329
410
  expect(key.textContent).toEqual("".concat(row.key, " (optional)"));
330
411
  expect(value.childNodes.length).toEqual(1);
331
- const valueDiv = value.childNodes[0];
412
+ var valueDiv = value.childNodes[0];
332
413
  expect(valueDiv.tagName).toEqual('DIV');
333
414
  expect(valueDiv.textContent).toEqual(VALUES[index]);
334
415
  });
335
416
  });
336
- it('should render groups of rows correctly', () => {
337
- const ID = 'test-id';
338
- const VALUES = ['Alpha component value', 'Bravo component value', 'Charlie component value'];
339
- const ISGROUP = true;
340
- const ROWS = [{
417
+ it('should render groups of rows correctly', function () {
418
+ var ID = 'test-id';
419
+ var VALUES = ['Alpha component value', 'Bravo component value', 'Charlie component value'];
420
+ var ISGROUP = true;
421
+ var ROWS = [{
341
422
  key: 'a',
342
423
  pageId: 'p1',
343
424
  fieldId: 'a',
@@ -356,20 +437,22 @@ describe('components', () => {
356
437
  fieldId: 'c',
357
438
  value: /*#__PURE__*/_react2.default.createElement("div", null, VALUES[2])
358
439
  }];
359
- const {
360
- container
361
- } = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_SummaryList.default, {
362
- "data-testid": ID,
363
- rows: ROWS,
364
- isGroup: ISGROUP
365
- }));
366
- const summaryList = checkSummaryList(container, ID);
440
+ var _render10 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_SummaryList.default, {
441
+ "data-testid": ID,
442
+ rows: ROWS,
443
+ isGroup: ISGROUP
444
+ })),
445
+ container = _render10.container;
446
+ var summaryList = checkSummaryList(container, ID);
367
447
  expect(summaryList.childNodes.length).toEqual(ROWS.length + 1);
368
- ROWS.forEach((row, index) => {
369
- const [key, value] = checkRow(summaryList, index);
448
+ ROWS.forEach(function (row, index) {
449
+ var _checkRow9 = checkRow(summaryList, index),
450
+ _checkRow10 = _slicedToArray(_checkRow9, 2),
451
+ key = _checkRow10[0],
452
+ value = _checkRow10[1];
370
453
  expect(key.textContent).toEqual("".concat(row.key, " (optional)"));
371
454
  expect(value.childNodes.length).toEqual(1);
372
- const valueDiv = value.childNodes[0];
455
+ var valueDiv = value.childNodes[0];
373
456
  expect(valueDiv.tagName).toEqual('DIV');
374
457
  expect(valueDiv.textContent).toEqual(VALUES[index]);
375
458
  });