@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
@@ -6,18 +6,15 @@ var _setupTests = require("../../setupTests");
6
6
  var _hooks = require("../../hooks");
7
7
  var _CollectionSummary = _interopRequireWildcard(require("./CollectionSummary"));
8
8
  var _Confirmation = require("./Confirmation");
9
- 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); }
10
- 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; }
11
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
- 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); }
13
- 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; }
14
- 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; }
15
- 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; }
16
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
17
- 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); } // Global imports.
9
+ 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); }
10
+ 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; }
11
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
+ // Global imports.
13
+
18
14
  // Local imports.
19
- describe('components.CollectionSummary.CollectionSummary', function () {
20
- var CONFIG = {
15
+
16
+ describe('components.CollectionSummary.CollectionSummary', () => {
17
+ const CONFIG = {
21
18
  id: 'testSummary',
22
19
  fieldId: 'testSummary',
23
20
  collectionName: 'testCollection',
@@ -28,7 +25,7 @@ describe('components.CollectionSummary.CollectionSummary', function () {
28
25
  }
29
26
  }
30
27
  };
31
- var FORM_DATA = {
28
+ const FORM_DATA = {
32
29
  testCollectionActiveId: '001',
33
30
  testCollection: [{
34
31
  id: '000',
@@ -37,7 +34,7 @@ describe('components.CollectionSummary.CollectionSummary', function () {
37
34
  id: '001'
38
35
  }]
39
36
  };
40
- var PAGES = [{
37
+ const PAGES = [{
41
38
  id: 'testPage',
42
39
  title: 'Test page',
43
40
  collection: {
@@ -55,41 +52,41 @@ describe('components.CollectionSummary.CollectionSummary', function () {
55
52
  }],
56
53
  formData: FORM_DATA
57
54
  }];
58
- var ON_ACTION = function ON_ACTION() {};
59
- var checkSetup = function checkSetup(container) {
60
- var withAddButton = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
61
- var summaryDiv = container.children[0];
55
+ const ON_ACTION = () => {};
56
+ const checkSetup = function (container) {
57
+ let withAddButton = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
58
+ const summaryDiv = container.children[0];
62
59
  expect(summaryDiv.tagName).toEqual('DIV');
63
- var cardList = withAddButton ? summaryDiv.children[1] : summaryDiv.children[0];
60
+ const cardList = withAddButton ? summaryDiv.children[1] : summaryDiv.children[0];
64
61
  expect(cardList.tagName).toEqual('UL');
65
62
  expect(cardList.classList).toContain('collection-summary-card-list');
66
- var cards = Array.from(cardList.children, function (child) {
63
+ const cards = Array.from(cardList.children, child => {
67
64
  expect(child.tagName).toEqual('LI');
68
65
  return child.children[0] || null;
69
- }).filter(function (c) {
70
- return !!c;
71
- });
66
+ }).filter(c => !!c);
72
67
  return {
73
- summaryDiv: summaryDiv,
74
- cardList: cardList,
75
- cards: cards
68
+ summaryDiv,
69
+ cardList,
70
+ cards
76
71
  };
77
72
  };
78
- it('should correctly render a CollectionSummary component', function () {
79
- var _renderWithValidation = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react.default.createElement(_CollectionSummary.default, {
80
- config: CONFIG,
81
- formData: FORM_DATA,
82
- onAction: ON_ACTION
83
- })),
84
- container = _renderWithValidation.container;
85
- var _checkSetup = checkSetup(container),
86
- cards = _checkSetup.cards;
73
+ it('should correctly render a CollectionSummary component', () => {
74
+ const {
75
+ container
76
+ } = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react.default.createElement(_CollectionSummary.default, {
77
+ config: CONFIG,
78
+ formData: FORM_DATA,
79
+ onAction: ON_ACTION
80
+ }));
81
+ const {
82
+ cards
83
+ } = checkSetup(container);
87
84
  expect(cards.length).toEqual(2);
88
- expect(cards[0].id).toEqual("".concat(CONFIG.fieldId, ".summaryCard").concat(FORM_DATA.testCollection[0].id));
89
- expect(cards[1].id).toEqual("".concat(CONFIG.fieldId, ".summaryCard").concat(FORM_DATA.testCollection[1].id));
85
+ expect(cards[0].id).toEqual(`${CONFIG.fieldId}.summaryCard${FORM_DATA.testCollection[0].id}`);
86
+ expect(cards[1].id).toEqual(`${CONFIG.fieldId}.summaryCard${FORM_DATA.testCollection[1].id}`);
90
87
  });
91
- it('should focus on the most recently duplicated item', function () {
92
- var customConfig = {
88
+ it('should focus on the most recently duplicated item', () => {
89
+ const customConfig = {
93
90
  id: 'testSummary',
94
91
  fieldId: 'testSummary',
95
92
  collectionName: 'testCollection',
@@ -109,7 +106,7 @@ describe('components.CollectionSummary.CollectionSummary', function () {
109
106
  quickEdit: true,
110
107
  focusOn: true
111
108
  };
112
- var customFormData = {
109
+ const customFormData = {
113
110
  testCollectionActiveId: '001',
114
111
  testCollection: [{
115
112
  id: '000',
@@ -120,60 +117,63 @@ describe('components.CollectionSummary.CollectionSummary', function () {
120
117
  isDuplicate: true
121
118
  }]
122
119
  };
123
- var _renderWithValidation2 = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react.default.createElement(_CollectionSummary.default, {
124
- config: customConfig,
125
- formData: customFormData,
126
- onAction: ON_ACTION
127
- })),
128
- container = _renderWithValidation2.container;
129
- var changeButtons = container.querySelectorAll('[data-testid="change-button"]');
130
- var firstDuplicatedItem = changeButtons[0];
131
- var lastDuplicatedItem = changeButtons[changeButtons.length - 1];
120
+ const {
121
+ container
122
+ } = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react.default.createElement(_CollectionSummary.default, {
123
+ config: customConfig,
124
+ formData: customFormData,
125
+ onAction: ON_ACTION
126
+ }));
127
+ const changeButtons = container.querySelectorAll('[data-testid="change-button"]');
128
+ const firstDuplicatedItem = changeButtons[0];
129
+ const lastDuplicatedItem = changeButtons[changeButtons.length - 1];
132
130
  expect(lastDuplicatedItem).toBeDefined();
133
131
  expect(document.activeElement).toEqual(lastDuplicatedItem);
134
132
  expect(lastDuplicatedItem.id).toEqual('testSummary.summaryCard001.changeButton');
135
133
  expect(document.activeElement).not.toEqual(firstDuplicatedItem);
136
134
  });
137
- it('should correctly queue errors found when validating entries', function () {
138
- var ErrorCheckComponent = function ErrorCheckComponent() {
139
- var _useValidation = (0, _hooks.useValidation)(),
140
- queuedErrors = _useValidation.queuedErrors;
141
- return /*#__PURE__*/_react.default.createElement("div", null, Array.isArray(queuedErrors) && "queuedErrors is an array of length ".concat(queuedErrors.length), (queuedErrors === null || queuedErrors === void 0 ? void 0 : queuedErrors.length) > 0 && queuedErrors.map(function (e) {
142
- return e.error;
143
- }));
135
+ it('should correctly queue errors found when validating entries', () => {
136
+ const ErrorCheckComponent = () => {
137
+ const {
138
+ queuedErrors
139
+ } = (0, _hooks.useValidation)();
140
+ return /*#__PURE__*/_react.default.createElement("div", null, Array.isArray(queuedErrors) && `queuedErrors is an array of length ${queuedErrors.length}`, queuedErrors?.length > 0 && queuedErrors.map(e => e.error));
144
141
  };
145
- var _renderWithValidation3 = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(ErrorCheckComponent, null), /*#__PURE__*/_react.default.createElement(_CollectionSummary.default, {
146
- config: CONFIG,
147
- formData: FORM_DATA,
148
- onAction: ON_ACTION,
149
- pages: PAGES
150
- }))),
151
- container = _renderWithValidation3.container;
152
- var errorChecker = container.children[0];
142
+ const {
143
+ container
144
+ } = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(ErrorCheckComponent, null), /*#__PURE__*/_react.default.createElement(_CollectionSummary.default, {
145
+ config: CONFIG,
146
+ formData: FORM_DATA,
147
+ onAction: ON_ACTION,
148
+ pages: PAGES
149
+ })));
150
+ const errorChecker = container.children[0];
153
151
  expect(errorChecker.textContent).toContain('queuedErrors is an array of length 1');
154
152
  expect(errorChecker.textContent).toContain('testText is required');
155
153
  });
156
- it('should render a confirmation when a SummaryCard\'s delete button is pressed', function () {
157
- var _renderWithValidation4 = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react.default.createElement(_CollectionSummary.default, {
158
- config: CONFIG,
159
- formData: FORM_DATA,
160
- onAction: ON_ACTION
161
- })),
162
- container = _renderWithValidation4.container;
163
- var _checkSetup2 = checkSetup(container),
164
- summaryDiv = _checkSetup2.summaryDiv,
165
- cards = _checkSetup2.cards;
154
+ it('should render a confirmation when a SummaryCard\'s delete button is pressed', () => {
155
+ const {
156
+ container
157
+ } = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react.default.createElement(_CollectionSummary.default, {
158
+ config: CONFIG,
159
+ formData: FORM_DATA,
160
+ onAction: ON_ACTION
161
+ }));
162
+ const {
163
+ summaryDiv,
164
+ cards
165
+ } = checkSetup(container);
166
166
  expect(cards.length).toEqual(2);
167
- var card = cards[0];
168
- var deleteButton = card.children[0].children[1].children[0];
167
+ const card = cards[0];
168
+ const deleteButton = card.children[0].children[1].children[0];
169
169
  _react2.fireEvent.click(deleteButton, {});
170
170
  expect(summaryDiv.children.length).toEqual(2); // Now with a confirmation.
171
- expect(summaryDiv.children[0].id).toEqual("".concat(CONFIG.fieldId, ".confirmation"));
171
+ expect(summaryDiv.children[0].id).toEqual(`${CONFIG.fieldId}.confirmation`);
172
172
  expect(summaryDiv.children[0].classList).toContain(_Confirmation.DEFAULT_CLASS);
173
173
  });
174
- describe('Add Another button', function () {
175
- it('should render with an Add button if one is configured', function () {
176
- var CONFIG_WITH_BUTTON = {
174
+ describe('Add Another button', () => {
175
+ it('should render with an Add button if one is configured', () => {
176
+ const CONFIG_WITH_BUTTON = {
177
177
  id: 'testSummary',
178
178
  fieldId: 'testSummary',
179
179
  collectionName: 'testCollection',
@@ -185,21 +185,23 @@ describe('components.CollectionSummary.CollectionSummary', function () {
185
185
  title: 'Title'
186
186
  }
187
187
  };
188
- var _renderWithValidation5 = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react.default.createElement(_CollectionSummary.default, {
189
- config: CONFIG_WITH_BUTTON,
190
- formData: FORM_DATA,
191
- onAction: ON_ACTION
192
- })),
193
- container = _renderWithValidation5.container;
194
- var _checkSetup3 = checkSetup(container, true),
195
- summaryDiv = _checkSetup3.summaryDiv;
188
+ const {
189
+ container
190
+ } = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react.default.createElement(_CollectionSummary.default, {
191
+ config: CONFIG_WITH_BUTTON,
192
+ formData: FORM_DATA,
193
+ onAction: ON_ACTION
194
+ }));
195
+ const {
196
+ summaryDiv
197
+ } = checkSetup(container, true);
196
198
  expect(summaryDiv.children.length).toEqual(2); // The button and card list.
197
- expect(summaryDiv.children[0].id).toEqual("".concat(CONFIG_WITH_BUTTON.fieldId, ".addButton"));
199
+ expect(summaryDiv.children[0].id).toEqual(`${CONFIG_WITH_BUTTON.fieldId}.addButton`);
198
200
  expect(summaryDiv.children[0].textContent).toEqual(CONFIG_WITH_BUTTON.addButton.label);
199
201
  expect(summaryDiv.children[0].tagName).toEqual('BUTTON');
200
202
  });
201
- it('should use the default button label if none is provided', function () {
202
- var CONFIG_WITH_BUTTON = {
203
+ it('should use the default button label if none is provided', () => {
204
+ const CONFIG_WITH_BUTTON = {
203
205
  id: 'testSummary',
204
206
  fieldId: 'testSummary',
205
207
  collectionName: 'testCollection',
@@ -210,138 +212,154 @@ describe('components.CollectionSummary.CollectionSummary', function () {
210
212
  title: 'Title'
211
213
  }
212
214
  };
213
- var _renderWithValidation6 = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react.default.createElement(_CollectionSummary.default, {
214
- config: CONFIG_WITH_BUTTON,
215
- formData: FORM_DATA,
216
- onAction: ON_ACTION
217
- })),
218
- container = _renderWithValidation6.container;
219
- var _checkSetup4 = checkSetup(container, true),
220
- summaryDiv = _checkSetup4.summaryDiv;
215
+ const {
216
+ container
217
+ } = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react.default.createElement(_CollectionSummary.default, {
218
+ config: CONFIG_WITH_BUTTON,
219
+ formData: FORM_DATA,
220
+ onAction: ON_ACTION
221
+ }));
222
+ const {
223
+ summaryDiv
224
+ } = checkSetup(container, true);
221
225
  expect(summaryDiv.children.length).toEqual(2); // The button and card list.
222
- expect(summaryDiv.children[0].id).toEqual("".concat(CONFIG_WITH_BUTTON.fieldId, ".addButton"));
226
+ expect(summaryDiv.children[0].id).toEqual(`${CONFIG_WITH_BUTTON.fieldId}.addButton`);
223
227
  expect(summaryDiv.children[0].textContent).toEqual(_CollectionSummary.DEFAULT_ADD_BUTTON_LABEL);
224
228
  expect(summaryDiv.children[0].tagName).toEqual('BUTTON');
225
229
  });
226
- it('should apply the expected class name to the summary card when delete button is pressed', function () {
227
- var _renderWithValidation7 = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react.default.createElement(_CollectionSummary.default, {
228
- config: CONFIG,
229
- formData: FORM_DATA,
230
- onAction: ON_ACTION
231
- })),
232
- container = _renderWithValidation7.container;
233
- var _checkSetup5 = checkSetup(container),
234
- cards = _checkSetup5.cards;
230
+ it('should apply the expected class name to the summary card when delete button is pressed', () => {
231
+ const {
232
+ container
233
+ } = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react.default.createElement(_CollectionSummary.default, {
234
+ config: CONFIG,
235
+ formData: FORM_DATA,
236
+ onAction: ON_ACTION
237
+ }));
238
+ const {
239
+ cards
240
+ } = checkSetup(container);
235
241
  expect(cards.length).toEqual(2);
236
- var card = cards[0];
237
- var deleteButton = card.children[0].children[1].children[0];
242
+ const card = cards[0];
243
+ const deleteButton = card.children[0].children[1].children[0];
238
244
  _react2.fireEvent.click(deleteButton, {});
239
- var confirmation = container.querySelector(".".concat(_Confirmation.DEFAULT_CLASS));
245
+ const confirmation = container.querySelector(`.${_Confirmation.DEFAULT_CLASS}`);
240
246
  expect(confirmation).toBeTruthy();
241
247
  expect(card.className).toContain('deleting-summary-card');
242
248
  });
243
- it('should focus on the delete button in the confirmation panel', function () {
244
- var _renderWithValidation8 = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react.default.createElement(_CollectionSummary.default, {
245
- config: CONFIG,
246
- formData: FORM_DATA,
247
- onAction: ON_ACTION
248
- })),
249
- container = _renderWithValidation8.container;
250
- var _checkSetup6 = checkSetup(container),
251
- cards = _checkSetup6.cards;
249
+ it('should focus on the delete button in the confirmation panel', () => {
250
+ const {
251
+ container
252
+ } = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react.default.createElement(_CollectionSummary.default, {
253
+ config: CONFIG,
254
+ formData: FORM_DATA,
255
+ onAction: ON_ACTION
256
+ }));
257
+ const {
258
+ cards
259
+ } = checkSetup(container);
252
260
  expect(cards.length).toEqual(2);
253
- var card = cards[0];
254
- var deleteButton = card.children[0].children[1].children[0];
261
+ const card = cards[0];
262
+ const deleteButton = card.children[0].children[1].children[0];
255
263
  _react2.fireEvent.click(deleteButton, {});
256
- var confirmButton = container.querySelector(".".concat(_Confirmation.DEFAULT_CLASS, " button.hods-button--warning"));
264
+ const confirmButton = container.querySelector(`.${_Confirmation.DEFAULT_CLASS} button.hods-button--warning`);
257
265
  expect(confirmButton).toBeTruthy();
258
266
  expect(document.activeElement).toEqual(confirmButton);
259
267
  });
260
- it('should have the role "alert" in the confirmation panel', function () {
261
- var _renderWithValidation9 = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react.default.createElement(_CollectionSummary.default, {
262
- config: CONFIG,
263
- formData: FORM_DATA,
264
- onAction: ON_ACTION
265
- })),
266
- container = _renderWithValidation9.container;
267
- var _checkSetup7 = checkSetup(container),
268
- cards = _checkSetup7.cards;
268
+ it('should have the role "alert" in the confirmation panel', () => {
269
+ const {
270
+ container
271
+ } = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react.default.createElement(_CollectionSummary.default, {
272
+ config: CONFIG,
273
+ formData: FORM_DATA,
274
+ onAction: ON_ACTION
275
+ }));
276
+ const {
277
+ cards
278
+ } = checkSetup(container);
269
279
  expect(cards.length).toEqual(2);
270
- var card = cards[0];
271
- var deleteButton = card.children[0].children[1].children[0];
280
+ const card = cards[0];
281
+ const deleteButton = card.children[0].children[1].children[0];
272
282
  _react2.fireEvent.click(deleteButton, {});
273
- var confirmation = container.querySelector(".".concat(_Confirmation.DEFAULT_CLASS));
283
+ const confirmation = container.querySelector(`.${_Confirmation.DEFAULT_CLASS}`);
274
284
  expect(confirmation).toBeTruthy();
275
- var roleAttribute = confirmation.getAttribute('role');
285
+ const roleAttribute = confirmation.getAttribute('role');
276
286
  expect(roleAttribute).toEqual('alert');
277
287
  });
278
- it('should correctly render field values in confirmation view', function () {
279
- var listViewConfig = _objectSpread(_objectSpread({}, CONFIG), {}, {
280
- card: _objectSpread(_objectSpread({}, CONFIG.card), {}, {
288
+ it('should correctly render field values in confirmation view', () => {
289
+ const listViewConfig = {
290
+ ...CONFIG,
291
+ card: {
292
+ ...CONFIG.card,
281
293
  listView: true
282
- }),
294
+ },
283
295
  confirmation: {
284
296
  displayFields: ['testText']
285
297
  }
286
- });
287
- var _renderWithValidation10 = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react.default.createElement(_CollectionSummary.default, {
288
- config: listViewConfig,
289
- formData: FORM_DATA,
290
- onAction: ON_ACTION,
291
- pages: PAGES
292
- })),
293
- container = _renderWithValidation10.container,
294
- getByText = _renderWithValidation10.getByText;
295
- var _checkSetup8 = checkSetup(container),
296
- cards = _checkSetup8.cards;
298
+ };
299
+ const {
300
+ container,
301
+ getByText
302
+ } = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react.default.createElement(_CollectionSummary.default, {
303
+ config: listViewConfig,
304
+ formData: FORM_DATA,
305
+ onAction: ON_ACTION,
306
+ pages: PAGES
307
+ }));
308
+ const {
309
+ cards
310
+ } = checkSetup(container);
297
311
  expect(cards.length).toEqual(2);
298
- var card = cards[0];
299
- var deleteButton = card.querySelector('.govuk-summary-card__actions li:last-child button');
312
+ const card = cards[0];
313
+ const deleteButton = card.querySelector('.govuk-summary-card__actions li:last-child button');
300
314
  _react2.fireEvent.click(deleteButton);
301
- var confirmation = container.querySelector(".".concat(_Confirmation.DEFAULT_CLASS));
315
+ const confirmation = container.querySelector(`.${_Confirmation.DEFAULT_CLASS}`);
302
316
  expect(confirmation).toBeTruthy();
303
- listViewConfig.confirmation.displayFields.forEach(function (field) {
304
- var fieldValue = FORM_DATA.testCollection[0][field];
305
- var fieldElement = getByText(fieldValue);
317
+ listViewConfig.confirmation.displayFields.forEach(field => {
318
+ const fieldValue = FORM_DATA.testCollection[0][field];
319
+ const fieldElement = getByText(fieldValue);
306
320
  expect(fieldElement).not.toBeNull();
307
321
  });
308
322
  });
309
- it('should correctly render field values in confirmation view with index', function () {
310
- var listViewConfig = _objectSpread(_objectSpread({}, CONFIG), {}, {
311
- card: _objectSpread(_objectSpread({}, CONFIG.card), {}, {
323
+ it('should correctly render field values in confirmation view with index', () => {
324
+ const listViewConfig = {
325
+ ...CONFIG,
326
+ card: {
327
+ ...CONFIG.card,
312
328
  listView: true
313
- }),
329
+ },
314
330
  confirmation: {
315
331
  displayFields: ['testText'],
316
332
  // eslint-disable-next-line no-template-curly-in-string
317
333
  message: 'Test confirmation message with index number ${index}'
318
334
  }
319
- });
320
- var _renderWithValidation11 = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react.default.createElement(_CollectionSummary.default, {
321
- config: listViewConfig,
322
- formData: FORM_DATA,
323
- onAction: ON_ACTION,
324
- pages: PAGES
325
- })),
326
- container = _renderWithValidation11.container,
327
- getByText = _renderWithValidation11.getByText;
328
- var _checkSetup9 = checkSetup(container),
329
- cards = _checkSetup9.cards;
335
+ };
336
+ const {
337
+ container,
338
+ getByText
339
+ } = (0, _setupTests.renderWithValidation)( /*#__PURE__*/_react.default.createElement(_CollectionSummary.default, {
340
+ config: listViewConfig,
341
+ formData: FORM_DATA,
342
+ onAction: ON_ACTION,
343
+ pages: PAGES
344
+ }));
345
+ const {
346
+ cards
347
+ } = checkSetup(container);
330
348
  expect(cards.length).toEqual(2);
331
- var card = cards[0];
332
- var deleteButton = card.querySelector('.govuk-summary-card__actions li:last-child button');
349
+ const card = cards[0];
350
+ const deleteButton = card.querySelector('.govuk-summary-card__actions li:last-child button');
333
351
  _react2.fireEvent.click(deleteButton);
334
- var confirmation = container.querySelector(".".concat(_Confirmation.DEFAULT_CLASS));
352
+ const confirmation = container.querySelector(`.${_Confirmation.DEFAULT_CLASS}`);
335
353
  expect(confirmation).toBeTruthy();
336
- listViewConfig.confirmation.displayFields.forEach(function (field) {
337
- var fieldValue = FORM_DATA.testCollection[0][field];
338
- var fieldElement = getByText(fieldValue);
354
+ listViewConfig.confirmation.displayFields.forEach(field => {
355
+ const fieldValue = FORM_DATA.testCollection[0][field];
356
+ const fieldElement = getByText(fieldValue);
339
357
  expect(fieldElement).not.toBeNull();
340
358
  });
341
359
 
342
360
  // Check if the confirmation message contains the index
343
- var confirmationMessage = confirmation.querySelector('h2').textContent;
344
- expect(confirmationMessage).toContain("Test confirmation message with index number 1");
361
+ const confirmationMessage = confirmation.querySelector('h2').textContent;
362
+ expect(confirmationMessage).toContain(`Test confirmation message with index number 1`);
345
363
  });
346
364
  });
347
365
  });
@@ -8,23 +8,25 @@ var _copReactComponents = require("@ukhomeoffice/cop-react-components");
8
8
  var _propTypes = _interopRequireDefault(require("prop-types"));
9
9
  var _react = _interopRequireDefault(require("react"));
10
10
  require("./Confirmation.scss");
11
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
12
  // Global imports.
13
13
 
14
14
  // Styles.
15
15
 
16
- var DEFAULT_CLASS = exports.DEFAULT_CLASS = 'hods-form-confirmation';
17
- var DEFAULT_MESSAGE = exports.DEFAULT_MESSAGE = 'Are you sure?';
18
- var DEFAULT_CONFIRM_LABEL = exports.DEFAULT_CONFIRM_LABEL = 'Confirm';
19
- var Confirmation = function Confirmation(_ref) {
20
- var id = _ref.id,
21
- message = _ref.message,
22
- confirmLabel = _ref.confirmLabel,
23
- children = _ref.children,
24
- onConfirm = _ref.onConfirm,
25
- onCancel = _ref.onCancel,
26
- classModifiers = _ref.classModifiers;
27
- var classes = _copReactComponents.Utils.classBuilder(DEFAULT_CLASS, classModifiers, '');
16
+ const DEFAULT_CLASS = exports.DEFAULT_CLASS = 'hods-form-confirmation';
17
+ const DEFAULT_MESSAGE = exports.DEFAULT_MESSAGE = 'Are you sure?';
18
+ const DEFAULT_CONFIRM_LABEL = exports.DEFAULT_CONFIRM_LABEL = 'Confirm';
19
+ const Confirmation = _ref => {
20
+ let {
21
+ id,
22
+ message,
23
+ confirmLabel,
24
+ children,
25
+ onConfirm,
26
+ onCancel,
27
+ classModifiers
28
+ } = _ref;
29
+ const classes = _copReactComponents.Utils.classBuilder(DEFAULT_CLASS, classModifiers, '');
28
30
  return /*#__PURE__*/_react.default.createElement("div", {
29
31
  id: id,
30
32
  className: classes(),