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

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 (383) hide show
  1. package/dist/components/CheckYourAnswers/Answer.js +15 -15
  2. package/dist/components/CheckYourAnswers/Answer.test.js +181 -132
  3. package/dist/components/CheckYourAnswers/CheckYourAnswers.js +142 -106
  4. package/dist/components/CheckYourAnswers/CheckYourAnswers.test.js +941 -563
  5. package/dist/components/CheckYourAnswers/index.js +1 -1
  6. package/dist/components/CollectionPage/CollectionPage.js +66 -75
  7. package/dist/components/CollectionPage/CollectionPage.test.js +369 -318
  8. package/dist/components/CollectionPage/index.js +1 -1
  9. package/dist/components/CollectionSummary/BannerStrip.js +15 -15
  10. package/dist/components/CollectionSummary/BannerStrip.test.js +79 -83
  11. package/dist/components/CollectionSummary/CollectionSummary.js +131 -109
  12. package/dist/components/CollectionSummary/CollectionSummary.test.js +180 -198
  13. package/dist/components/CollectionSummary/Confirmation.js +13 -15
  14. package/dist/components/CollectionSummary/Confirmation.test.js +63 -68
  15. package/dist/components/CollectionSummary/RenderListView.js +63 -46
  16. package/dist/components/CollectionSummary/RenderListView.scss +9 -0
  17. package/dist/components/CollectionSummary/RenderListView.test.js +120 -84
  18. package/dist/components/CollectionSummary/SummaryCard.js +157 -121
  19. package/dist/components/CollectionSummary/SummaryCard.test.js +1000 -970
  20. package/dist/components/CollectionSummary/SummaryCardDetails.js +94 -103
  21. package/dist/components/CollectionSummary/SummaryCardDetails.test.js +195 -187
  22. package/dist/components/CollectionSummary/SummaryCardValidationContext.js +36 -31
  23. package/dist/components/CollectionSummary/SummaryCardValidationContext.test.js +76 -64
  24. package/dist/components/CollectionSummary/index.js +1 -1
  25. package/dist/components/FormComponent/Collection.js +117 -80
  26. package/dist/components/FormComponent/Collection.test.js +1082 -910
  27. package/dist/components/FormComponent/Container.js +38 -43
  28. package/dist/components/FormComponent/Container.test.js +411 -379
  29. package/dist/components/FormComponent/FormComponent.js +74 -71
  30. package/dist/components/FormComponent/FormComponent.test.js +415 -354
  31. package/dist/components/FormComponent/helpers/addLabel.js +7 -4
  32. package/dist/components/FormComponent/helpers/getComponentDisabled.js +1 -1
  33. package/dist/components/FormComponent/helpers/getComponentDisabled.test.js +8 -8
  34. package/dist/components/FormComponent/helpers/getComponentError.js +5 -3
  35. package/dist/components/FormComponent/helpers/getComponentError.test.js +15 -15
  36. package/dist/components/FormComponent/helpers/getComponentFieldSet.js +4 -3
  37. package/dist/components/FormComponent/helpers/getComponentFieldSet.test.js +7 -7
  38. package/dist/components/FormComponent/helpers/index.js +5 -5
  39. package/dist/components/FormComponent/index.js +1 -1
  40. package/dist/components/FormPage/FormPage.js +87 -71
  41. package/dist/components/FormPage/FormPage.test.js +170 -133
  42. package/dist/components/FormPage/index.js +1 -1
  43. package/dist/components/FormRenderer/FormRenderer.js +198 -153
  44. package/dist/components/FormRenderer/FormRenderer.test.js +1116 -731
  45. package/dist/components/FormRenderer/handlers/cyaAction.js +3 -3
  46. package/dist/components/FormRenderer/handlers/getPageId.js +3 -1
  47. package/dist/components/FormRenderer/handlers/getPageId.test.js +15 -15
  48. package/dist/components/FormRenderer/handlers/handlers.test.js +33 -33
  49. package/dist/components/FormRenderer/handlers/index.js +2 -2
  50. package/dist/components/FormRenderer/handlers/navigate.js +4 -4
  51. package/dist/components/FormRenderer/handlers/submissionError.js +1 -1
  52. package/dist/components/FormRenderer/helpers/canActionProceed.js +1 -1
  53. package/dist/components/FormRenderer/helpers/canActionProceed.test.js +16 -16
  54. package/dist/components/FormRenderer/helpers/canCYASubmit.js +3 -1
  55. package/dist/components/FormRenderer/helpers/canCYASubmit.test.js +21 -17
  56. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.js +30 -27
  57. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.test.js +21 -21
  58. package/dist/components/FormRenderer/helpers/getCYA.js +7 -5
  59. package/dist/components/FormRenderer/helpers/getCYA.test.js +12 -12
  60. package/dist/components/FormRenderer/helpers/getFormState.js +8 -6
  61. package/dist/components/FormRenderer/helpers/getFormState.test.js +11 -11
  62. package/dist/components/FormRenderer/helpers/getNextPageId.js +32 -18
  63. package/dist/components/FormRenderer/helpers/getNextPageId.test.js +68 -68
  64. package/dist/components/FormRenderer/helpers/getPage.js +4 -2
  65. package/dist/components/FormRenderer/helpers/getPage.test.js +12 -12
  66. package/dist/components/FormRenderer/helpers/getRelevantPages.js +11 -8
  67. package/dist/components/FormRenderer/helpers/getRelevantPages.test.js +15 -15
  68. package/dist/components/FormRenderer/helpers/getSubmissionStatus.js +13 -12
  69. package/dist/components/FormRenderer/helpers/getSubmissionStatus.test.js +98 -104
  70. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.js +64 -65
  71. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.test.js +79 -72
  72. package/dist/components/FormRenderer/helpers/index.js +2 -2
  73. package/dist/components/FormRenderer/index.js +1 -1
  74. package/dist/components/FormRenderer/onCYAAction.js +54 -61
  75. package/dist/components/FormRenderer/onCYAAction.test.js +153 -165
  76. package/dist/components/FormRenderer/onPageAction.js +41 -45
  77. package/dist/components/FormRenderer/onPageAction.test.js +210 -225
  78. package/dist/components/FormRenderer/onTaskAction.js +15 -11
  79. package/dist/components/FormRenderer/onTaskAction.test.js +89 -94
  80. package/dist/components/PageActions/ActionButton.js +16 -13
  81. package/dist/components/PageActions/ActionButton.test.js +79 -57
  82. package/dist/components/PageActions/PageActions.js +11 -11
  83. package/dist/components/PageActions/PageActions.test.js +116 -87
  84. package/dist/components/PageActions/index.js +1 -1
  85. package/dist/components/SummaryList/GroupAction.js +21 -13
  86. package/dist/components/SummaryList/GroupAction.test.js +37 -41
  87. package/dist/components/SummaryList/RowAction.js +17 -12
  88. package/dist/components/SummaryList/RowAction.test.js +37 -41
  89. package/dist/components/SummaryList/SummaryList.js +28 -23
  90. package/dist/components/SummaryList/SummaryList.test.js +206 -179
  91. package/dist/components/SummaryList/SummaryListHeadingRow.js +6 -8
  92. package/dist/components/SummaryList/SummaryListHeadingRowWithAction.js +5 -7
  93. package/dist/components/SummaryList/SummaryListRow.js +6 -8
  94. package/dist/components/SummaryList/SummaryListTitleRow.js +5 -7
  95. package/dist/components/SummaryList/helpers/getGroupActionAttributes.js +6 -4
  96. package/dist/components/SummaryList/helpers/getGroupActionAttributes.test.js +24 -24
  97. package/dist/components/SummaryList/helpers/getRowActionAttributes.js +6 -4
  98. package/dist/components/SummaryList/helpers/getRowActionAttributes.test.js +24 -24
  99. package/dist/components/SummaryList/helpers/index.js +2 -2
  100. package/dist/components/SummaryList/index.js +1 -1
  101. package/dist/components/TaskList/Task.js +30 -20
  102. package/dist/components/TaskList/Task.test.js +77 -84
  103. package/dist/components/TaskList/TaskList.js +84 -53
  104. package/dist/components/TaskList/TaskList.test.js +150 -150
  105. package/dist/components/TaskList/TaskState.js +6 -8
  106. package/dist/components/TaskList/TaskState.test.js +49 -56
  107. package/dist/components/TaskList/index.js +1 -1
  108. package/dist/components/index.js +8 -8
  109. package/dist/context/HooksContext/HooksContext.js +81 -58
  110. package/dist/context/HooksContext/HooksContext.test.js +36 -27
  111. package/dist/context/HooksContext/index.js +4 -3
  112. package/dist/context/ValidationContext/ValidationContext.js +95 -44
  113. package/dist/context/ValidationContext/ValidationContext.test.js +70 -58
  114. package/dist/context/ValidationContext/index.js +4 -3
  115. package/dist/context/index.js +3 -3
  116. package/dist/hooks/index.js +11 -10
  117. package/dist/hooks/useAxios.js +41 -15
  118. package/dist/hooks/useGetRequest.js +98 -62
  119. package/dist/hooks/useHooks.js +3 -1
  120. package/dist/hooks/useRefData.js +41 -28
  121. package/dist/hooks/useValidation.js +3 -1
  122. package/dist/index.js +15 -14
  123. package/dist/models/CollectionLabels.js +1 -1
  124. package/dist/models/ComponentTypes.js +25 -25
  125. package/dist/models/EventTypes.js +4 -4
  126. package/dist/models/FormPages.js +4 -4
  127. package/dist/models/FormTypes.js +8 -8
  128. package/dist/models/HubFormats.js +3 -3
  129. package/dist/models/PageAction.js +38 -44
  130. package/dist/models/TaskStates.js +28 -29
  131. package/dist/models/index.js +10 -10
  132. package/dist/setupTests.js +32 -31
  133. package/dist/utils/CheckYourAnswers/getCYAAction.js +5 -5
  134. package/dist/utils/CheckYourAnswers/getCYAAction.test.js +55 -53
  135. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.js +27 -17
  136. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.test.js +36 -34
  137. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.js +34 -20
  138. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.test.js +45 -43
  139. package/dist/utils/CheckYourAnswers/getCYARow.js +10 -8
  140. package/dist/utils/CheckYourAnswers/getCYARow.test.js +87 -87
  141. package/dist/utils/CheckYourAnswers/getCYARowForGroup.js +25 -19
  142. package/dist/utils/CheckYourAnswers/getCYARowForGroup.test.js +17 -16
  143. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.js +45 -39
  144. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.test.js +75 -72
  145. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.js +105 -100
  146. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.test.js +182 -218
  147. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.js +21 -26
  148. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.test.js +106 -112
  149. package/dist/utils/CheckYourAnswers/getCYARowsForPage.js +21 -15
  150. package/dist/utils/CheckYourAnswers/getCYARowsForPage.test.js +83 -77
  151. package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.js +13 -13
  152. package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.test.js +19 -14
  153. package/dist/utils/CheckYourAnswers/index.js +2 -2
  154. package/dist/utils/CheckYourAnswers/showComponentCYA.js +6 -6
  155. package/dist/utils/CheckYourAnswers/showComponentCYA.test.js +26 -26
  156. package/dist/utils/CollectionPage/addCollectionPageEntry.js +3 -3
  157. package/dist/utils/CollectionPage/addCollectionPageEntry.test.js +6 -6
  158. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.js +3 -3
  159. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.test.js +22 -21
  160. package/dist/utils/CollectionPage/duplicateCollectionPageEntry.js +24 -14
  161. package/dist/utils/CollectionPage/duplicateCollectionPageEntry.test.js +43 -52
  162. package/dist/utils/CollectionPage/getCollectionPageActiveId.js +3 -3
  163. package/dist/utils/CollectionPage/getCollectionPageActiveId.test.js +11 -11
  164. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.js +12 -7
  165. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.test.js +23 -23
  166. package/dist/utils/CollectionPage/getCollectionPageData.js +13 -8
  167. package/dist/utils/CollectionPage/getCollectionPageData.test.js +20 -20
  168. package/dist/utils/CollectionPage/getErrorsForCollection.js +26 -25
  169. package/dist/utils/CollectionPage/getErrorsForCollection.test.js +23 -21
  170. package/dist/utils/CollectionPage/getQuickEditPage.js +32 -37
  171. package/dist/utils/CollectionPage/getQuickEditPage.test.js +22 -18
  172. package/dist/utils/CollectionPage/index.js +2 -2
  173. package/dist/utils/CollectionPage/mergeCollectionPages.js +42 -37
  174. package/dist/utils/CollectionPage/mergeCollectionPages.test.js +18 -48
  175. package/dist/utils/CollectionPage/removeCollectionPageEntry.js +7 -5
  176. package/dist/utils/CollectionPage/removeCollectionPageEntry.test.js +11 -11
  177. package/dist/utils/CollectionPage/setCollectionPageData.js +19 -12
  178. package/dist/utils/CollectionPage/setCollectionPageData.test.js +26 -26
  179. package/dist/utils/Component/addShowWhen.js +8 -4
  180. package/dist/utils/Component/addShowWhen.test.js +38 -38
  181. package/dist/utils/Component/applyToComponentTree.js +20 -19
  182. package/dist/utils/Component/applyToComponentTree.test.js +33 -28
  183. package/dist/utils/Component/cleanAttributes.js +13 -10
  184. package/dist/utils/Component/cleanAttributes.test.js +18 -17
  185. package/dist/utils/Component/elevateNestedComponents.js +7 -6
  186. package/dist/utils/Component/elevateNestedComponents.test.js +34 -34
  187. package/dist/utils/Component/getComponent.js +97 -90
  188. package/dist/utils/Component/getComponentTests/getComponent.autocomplete.test.js +18 -19
  189. package/dist/utils/Component/getComponentTests/getComponent.calculation.test.js +63 -50
  190. package/dist/utils/Component/getComponentTests/getComponent.checkboxes.test.js +49 -40
  191. package/dist/utils/Component/getComponentTests/getComponent.date.test.js +40 -30
  192. package/dist/utils/Component/getComponentTests/getComponent.details.test.js +19 -21
  193. package/dist/utils/Component/getComponentTests/getComponent.email.test.js +23 -18
  194. package/dist/utils/Component/getComponentTests/getComponent.file.test.js +27 -22
  195. package/dist/utils/Component/getComponentTests/getComponent.heading.test.js +11 -12
  196. package/dist/utils/Component/getComponentTests/getComponent.html.test.js +16 -18
  197. package/dist/utils/Component/getComponentTests/getComponent.insetText.test.js +9 -10
  198. package/dist/utils/Component/getComponentTests/getComponent.list.test.js +16 -18
  199. package/dist/utils/Component/getComponentTests/getComponent.multifile.test.js +27 -23
  200. package/dist/utils/Component/getComponentTests/getComponent.nested.test.js +175 -155
  201. package/dist/utils/Component/getComponentTests/getComponent.paragraph.test.js +16 -18
  202. package/dist/utils/Component/getComponentTests/getComponent.phoneNumber.test.js +23 -18
  203. package/dist/utils/Component/getComponentTests/getComponent.radios.test.js +73 -58
  204. package/dist/utils/Component/getComponentTests/getComponent.select.test.js +23 -18
  205. package/dist/utils/Component/getComponentTests/getComponent.text.test.js +23 -18
  206. package/dist/utils/Component/getComponentTests/getComponent.textArea.test.js +41 -34
  207. package/dist/utils/Component/getComponentTests/getComponent.time.test.js +32 -23
  208. package/dist/utils/Component/getComponentTests/getComponent.unknown.test.js +3 -3
  209. package/dist/utils/Component/getComponentTests/getComponent.warningText.test.js +9 -10
  210. package/dist/utils/Component/getDefaultValue.js +9 -7
  211. package/dist/utils/Component/getDefaultValue.test.js +13 -13
  212. package/dist/utils/Component/getDefaultValueFromConfig.js +24 -24
  213. package/dist/utils/Component/getDefaultValueFromConfig.test.js +32 -32
  214. package/dist/utils/Component/index.js +2 -2
  215. package/dist/utils/Component/isEditable.js +4 -2
  216. package/dist/utils/Component/isEditable.test.js +15 -14
  217. package/dist/utils/Component/optionIsSelected.js +4 -2
  218. package/dist/utils/Component/optionIsSelected.test.js +12 -12
  219. package/dist/utils/Component/setupContainerComponentsPath.js +31 -29
  220. package/dist/utils/Component/setupContainerComponentsPath.test.js +16 -16
  221. package/dist/utils/Component/showComponent.js +4 -3
  222. package/dist/utils/Component/showComponent.test.js +29 -29
  223. package/dist/utils/Component/wrapInFormGroup.js +4 -4
  224. package/dist/utils/Condition/index.js +2 -2
  225. package/dist/utils/Condition/meetsAllConditions.js +9 -9
  226. package/dist/utils/Condition/meetsAllConditions.test.js +21 -21
  227. package/dist/utils/Condition/meetsCondition.js +31 -20
  228. package/dist/utils/Condition/meetsCondition.test.js +403 -403
  229. package/dist/utils/Condition/meetsOneCondition.js +6 -6
  230. package/dist/utils/Condition/meetsOneCondition.test.js +17 -17
  231. package/dist/utils/Condition/setupConditions.js +19 -14
  232. package/dist/utils/Condition/setupConditions.test.js +8 -8
  233. package/dist/utils/Container/getEditableComponents.js +6 -4
  234. package/dist/utils/Container/getEditableComponents.test.js +46 -44
  235. package/dist/utils/Container/index.js +2 -2
  236. package/dist/utils/Container/setupNesting.js +22 -16
  237. package/dist/utils/Container/setupNesting.test.js +31 -28
  238. package/dist/utils/Container/showContainer.js +8 -4
  239. package/dist/utils/Container/showContainer.test.js +31 -31
  240. package/dist/utils/Data/applyFormula.js +50 -40
  241. package/dist/utils/Data/applyFormula.test.js +26 -26
  242. package/dist/utils/Data/deleteValues.js +8 -4
  243. package/dist/utils/Data/deleteValues.test.js +11 -11
  244. package/dist/utils/Data/getAutocompleteSource.js +29 -20
  245. package/dist/utils/Data/getAutocompleteSource.test.js +87 -81
  246. package/dist/utils/Data/getDataPath.js +30 -20
  247. package/dist/utils/Data/getDataPath.test.js +20 -20
  248. package/dist/utils/Data/getOptions.js +34 -27
  249. package/dist/utils/Data/getOptions.test.js +28 -28
  250. package/dist/utils/Data/getSourceData.js +19 -6
  251. package/dist/utils/Data/getSourceData.test.js +81 -85
  252. package/dist/utils/Data/index.js +2 -2
  253. package/dist/utils/Data/nestInRefdataOptions.js +16 -9
  254. package/dist/utils/Data/nestInRefdataOptions.test.js +17 -17
  255. package/dist/utils/Data/refDataToOptions.js +15 -11
  256. package/dist/utils/Data/refDataToOptions.test.js +20 -20
  257. package/dist/utils/Data/setDataItem.js +8 -7
  258. package/dist/utils/Data/setDataItem.test.js +38 -38
  259. package/dist/utils/Data/setupFormData.js +22 -14
  260. package/dist/utils/Data/setupFormData.test.js +51 -52
  261. package/dist/utils/Data/setupRefDataUrlForComponent.js +28 -21
  262. package/dist/utils/Data/setupRefDataUrlForComponent.test.js +28 -28
  263. package/dist/utils/FormPage/applyConditionalProperties.js +10 -6
  264. package/dist/utils/FormPage/applyConditionalProperties.test.js +19 -16
  265. package/dist/utils/FormPage/getConditionalText.js +4 -4
  266. package/dist/utils/FormPage/getConditionalText.test.js +35 -35
  267. package/dist/utils/FormPage/getFormPage.js +17 -16
  268. package/dist/utils/FormPage/getFormPage.test.js +48 -49
  269. package/dist/utils/FormPage/getFormPages.js +13 -8
  270. package/dist/utils/FormPage/getFormPages.test.js +25 -22
  271. package/dist/utils/FormPage/getPageActions.js +17 -10
  272. package/dist/utils/FormPage/getPageActions.test.js +33 -33
  273. package/dist/utils/FormPage/getParagraphFromText.js +7 -5
  274. package/dist/utils/FormPage/getParagraphFromText.test.js +7 -7
  275. package/dist/utils/FormPage/index.js +5 -3
  276. package/dist/utils/FormPage/showFormPage.js +8 -4
  277. package/dist/utils/FormPage/showFormPage.test.js +33 -33
  278. package/dist/utils/FormPage/showFormPageCYA.js +3 -3
  279. package/dist/utils/FormPage/showFormPageCYA.test.js +9 -9
  280. package/dist/utils/FormPage/useComponent.js +28 -21
  281. package/dist/utils/FormPage/useComponent.test.js +80 -78
  282. package/dist/utils/Format/formatData.js +1 -1
  283. package/dist/utils/Format/formatData.test.js +19 -19
  284. package/dist/utils/Format/formatDataForComponent.js +7 -6
  285. package/dist/utils/Format/formatDataForComponent.test.js +78 -50
  286. package/dist/utils/Format/formatDataForForm.js +8 -6
  287. package/dist/utils/Format/formatDataForForm.test.js +17 -14
  288. package/dist/utils/Format/formatDataForPage.js +5 -4
  289. package/dist/utils/Format/formatDataForPage.test.js +25 -20
  290. package/dist/utils/Format/index.js +2 -2
  291. package/dist/utils/Hub/getFormHub.js +2 -2
  292. package/dist/utils/Hub/getFormHub.test.js +32 -29
  293. package/dist/utils/Hub/index.js +2 -2
  294. package/dist/utils/Meta/constants.js +2 -2
  295. package/dist/utils/Meta/documents/getDocuments.js +4 -1
  296. package/dist/utils/Meta/documents/getDocuments.test.js +17 -25
  297. package/dist/utils/Meta/documents/index.js +2 -2
  298. package/dist/utils/Meta/documents/setDocumentsForField.js +17 -15
  299. package/dist/utils/Meta/documents/setDocumentsForField.test.js +35 -69
  300. package/dist/utils/Meta/index.js +2 -2
  301. package/dist/utils/Operate/checkValueIsTruthy.js +4 -4
  302. package/dist/utils/Operate/checkValueIsTruthy.test.js +17 -17
  303. package/dist/utils/Operate/deleteValueInFormData.js +3 -3
  304. package/dist/utils/Operate/deleteValueInFormData.test.js +15 -15
  305. package/dist/utils/Operate/getFirstOf.js +8 -8
  306. package/dist/utils/Operate/getFirstOf.test.js +33 -33
  307. package/dist/utils/Operate/getIndexOfMatchingValueIn.js +12 -12
  308. package/dist/utils/Operate/getIndexOfMatchingValueIn.test.js +53 -47
  309. package/dist/utils/Operate/getLength.js +11 -11
  310. package/dist/utils/Operate/getLength.test.js +19 -19
  311. package/dist/utils/Operate/index.js +2 -2
  312. package/dist/utils/Operate/persistValueInFormData.js +6 -6
  313. package/dist/utils/Operate/persistValueInFormData.test.js +21 -23
  314. package/dist/utils/Operate/runPageOperations.js +9 -9
  315. package/dist/utils/Operate/runPageOperations.test.js +37 -36
  316. package/dist/utils/Operate/setValueInFormData.js +5 -5
  317. package/dist/utils/Operate/setValueInFormData.test.js +17 -17
  318. package/dist/utils/Operate/shouldRun.js +8 -8
  319. package/dist/utils/Operate/shouldRun.test.js +28 -22
  320. package/dist/utils/Validate/additional/conditionallyPermittedChange.js +1 -1
  321. package/dist/utils/Validate/additional/conditionallyPermittedChange.test.js +15 -15
  322. package/dist/utils/Validate/additional/conditionallyRequired.js +5 -4
  323. package/dist/utils/Validate/additional/conditionallyRequired.test.js +19 -19
  324. package/dist/utils/Validate/additional/index.js +8 -8
  325. package/dist/utils/Validate/additional/index.test.js +22 -22
  326. package/dist/utils/Validate/additional/mustBeAfter.js +3 -3
  327. package/dist/utils/Validate/additional/mustBeAfter.test.js +41 -41
  328. package/dist/utils/Validate/additional/mustBeBefore.js +3 -3
  329. package/dist/utils/Validate/additional/mustBeBefore.test.js +29 -29
  330. package/dist/utils/Validate/additional/mustBeEarlierDateTime.js +14 -9
  331. package/dist/utils/Validate/additional/mustBeEarlierDateTime.test.js +42 -38
  332. package/dist/utils/Validate/additional/mustBeGreaterThan.js +2 -2
  333. package/dist/utils/Validate/additional/mustBeGreaterThan.test.js +19 -19
  334. package/dist/utils/Validate/additional/mustBeInTheFuture.js +4 -4
  335. package/dist/utils/Validate/additional/mustBeInTheFuture.test.js +13 -13
  336. package/dist/utils/Validate/additional/mustBeInThePast.js +5 -5
  337. package/dist/utils/Validate/additional/mustBeInThePast.test.js +13 -13
  338. package/dist/utils/Validate/additional/mustBeLessThan.js +2 -2
  339. package/dist/utils/Validate/additional/mustBeLessThan.test.js +18 -18
  340. package/dist/utils/Validate/additional/mustBeLongerThan.js +1 -1
  341. package/dist/utils/Validate/additional/mustBeLongerThan.test.js +17 -17
  342. package/dist/utils/Validate/additional/mustBeNumbersOnly.js +2 -2
  343. package/dist/utils/Validate/additional/mustBeNumbersOnly.test.js +21 -21
  344. package/dist/utils/Validate/additional/mustBeOneOf.js +1 -1
  345. package/dist/utils/Validate/additional/mustBeOneOf.test.js +13 -13
  346. package/dist/utils/Validate/additional/mustBeShorterThan.js +1 -1
  347. package/dist/utils/Validate/additional/mustBeShorterThan.test.js +17 -17
  348. package/dist/utils/Validate/additional/mustBeUniqueInCollection.js +5 -5
  349. package/dist/utils/Validate/additional/mustBeUniqueInCollection.test.js +40 -36
  350. package/dist/utils/Validate/additional/mustEnterAtLeastOne.js +5 -3
  351. package/dist/utils/Validate/additional/mustEnterAtLeastOne.test.js +17 -15
  352. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.js +1 -1
  353. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.test.js +13 -13
  354. package/dist/utils/Validate/additional/mustNotContainSql.js +4 -3
  355. package/dist/utils/Validate/additional/mustNotContainSql.test.js +15 -15
  356. package/dist/utils/Validate/additional/mustSelectOnlyOne.js +5 -3
  357. package/dist/utils/Validate/additional/mustSelectOnlyOne.test.js +27 -29
  358. package/dist/utils/Validate/additional/utils.js +24 -11
  359. package/dist/utils/Validate/index.js +2 -2
  360. package/dist/utils/Validate/validateCollection.js +27 -21
  361. package/dist/utils/Validate/validateCollection.test.js +77 -85
  362. package/dist/utils/Validate/validateComponent.js +23 -22
  363. package/dist/utils/Validate/validateComponent.test.js +165 -188
  364. package/dist/utils/Validate/validateContainer.js +21 -16
  365. package/dist/utils/Validate/validateContainer.test.js +56 -62
  366. package/dist/utils/Validate/validateDate.js +23 -17
  367. package/dist/utils/Validate/validateDate.test.js +32 -31
  368. package/dist/utils/Validate/validateEmail.js +9 -7
  369. package/dist/utils/Validate/validateEmail.test.js +26 -26
  370. package/dist/utils/Validate/validateMultifile.js +7 -5
  371. package/dist/utils/Validate/validateMultifile.test.js +18 -17
  372. package/dist/utils/Validate/validatePage.js +24 -20
  373. package/dist/utils/Validate/validatePage.test.js +215 -227
  374. package/dist/utils/Validate/validateRegex.js +8 -5
  375. package/dist/utils/Validate/validateRegex.test.js +17 -17
  376. package/dist/utils/Validate/validateRequired.js +7 -5
  377. package/dist/utils/Validate/validateRequired.test.js +19 -19
  378. package/dist/utils/Validate/validateTextArea.js +7 -5
  379. package/dist/utils/Validate/validateTextArea.test.js +21 -21
  380. package/dist/utils/Validate/validateTime.js +19 -12
  381. package/dist/utils/Validate/validateTime.test.js +27 -27
  382. package/dist/utils/index.js +10 -8
  383. package/package.json +1 -1
@@ -1,14 +1,14 @@
1
1
  "use strict";
2
2
 
3
3
  var _getCollectionPageActiveIndex = _interopRequireDefault(require("./getCollectionPageActiveIndex"));
4
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
4
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5
5
  // Local imports
6
6
 
7
- describe('utils.CollectionPage.getCollectionPageActiveIndex', () => {
8
- it('should return the index of the active item in the collection, if one exists', () => {
9
- const COLLECTION_NAME = 'test';
10
- const ACTIVE_ID = '002';
11
- const FORM_DATA = {
7
+ describe('utils.CollectionPage.getCollectionPageActiveIndex', function () {
8
+ it('should return the index of the active item in the collection, if one exists', function () {
9
+ var COLLECTION_NAME = 'test';
10
+ var ACTIVE_ID = '002';
11
+ var FORM_DATA = {
12
12
  testActiveId: ACTIVE_ID,
13
13
  test: [{
14
14
  id: '001'
@@ -16,7 +16,7 @@ describe('utils.CollectionPage.getCollectionPageActiveIndex', () => {
16
16
  id: '002'
17
17
  }]
18
18
  };
19
- const PAGE = {
19
+ var PAGE = {
20
20
  collection: {
21
21
  name: COLLECTION_NAME
22
22
  },
@@ -24,10 +24,10 @@ describe('utils.CollectionPage.getCollectionPageActiveIndex', () => {
24
24
  };
25
25
  expect((0, _getCollectionPageActiveIndex.default)(PAGE.collection.name, PAGE.formData)).toEqual(1);
26
26
  });
27
- it('should return the index of the active item in the nested collection, if one exists', () => {
28
- const COLLECTION_NAME = 'parent.child';
29
- const ACTIVE_ID = '001';
30
- const FORM_DATA = {
27
+ it('should return the index of the active item in the nested collection, if one exists', function () {
28
+ var COLLECTION_NAME = 'parent.child';
29
+ var ACTIVE_ID = '001';
30
+ var FORM_DATA = {
31
31
  parentActiveId: '001',
32
32
  childActiveId: ACTIVE_ID,
33
33
  parent: [{
@@ -42,16 +42,16 @@ describe('utils.CollectionPage.getCollectionPageActiveIndex', () => {
42
42
  };
43
43
  expect((0, _getCollectionPageActiveIndex.default)(COLLECTION_NAME, FORM_DATA)).toEqual(0);
44
44
  });
45
- it('should return null if no active item can be found in the collection', () => {
46
- const COLLECTION_NAME = 'test';
47
- const ACTIVE_ID = '002';
48
- const FORM_DATA = {
45
+ it('should return null if no active item can be found in the collection', function () {
46
+ var COLLECTION_NAME = 'test';
47
+ var ACTIVE_ID = '002';
48
+ var FORM_DATA = {
49
49
  testActiveId: ACTIVE_ID,
50
50
  test: [{
51
51
  id: '001'
52
52
  }]
53
53
  };
54
- const PAGE = {
54
+ var PAGE = {
55
55
  collection: {
56
56
  name: COLLECTION_NAME
57
57
  },
@@ -59,10 +59,10 @@ describe('utils.CollectionPage.getCollectionPageActiveIndex', () => {
59
59
  };
60
60
  expect((0, _getCollectionPageActiveIndex.default)(PAGE.collection.name, PAGE.formData)).toEqual(null);
61
61
  });
62
- it('should return null if no active item can be found in the nested collection', () => {
63
- const COLLECTION_NAME = 'parent.child';
64
- const ACTIVE_ID = '002';
65
- const FORM_DATA = {
62
+ it('should return null if no active item can be found in the nested collection', function () {
63
+ var COLLECTION_NAME = 'parent.child';
64
+ var ACTIVE_ID = '002';
65
+ var FORM_DATA = {
66
66
  parentActiveId: '001',
67
67
  childActiveId: ACTIVE_ID,
68
68
  parent: [{
@@ -75,9 +75,9 @@ describe('utils.CollectionPage.getCollectionPageActiveIndex', () => {
75
75
  };
76
76
  expect((0, _getCollectionPageActiveIndex.default)(COLLECTION_NAME, FORM_DATA)).toEqual(null);
77
77
  });
78
- it('should return null if formData is null', () => {
79
- const COLLECTION_NAME = 'test';
80
- const PAGE = {
78
+ it('should return null if formData is null', function () {
79
+ var COLLECTION_NAME = 'test';
80
+ var PAGE = {
81
81
  collection: {
82
82
  name: COLLECTION_NAME
83
83
  }
@@ -4,21 +4,26 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
- const isValidIndex = value => typeof value === 'number' && value >= 0;
8
- const getLastDataInChain = (collectionNames, data, formData) => {
9
- const currentName = collectionNames[0];
7
+ var isValidIndex = function isValidIndex(value) {
8
+ return typeof value === 'number' && value >= 0;
9
+ };
10
+ var getLastDataInChain = function getLastDataInChain(collectionNames, data, formData) {
11
+ var _data$currentName;
12
+ var currentName = collectionNames[0];
10
13
  // If we're at the last collection in the chain, then just
11
14
  // try and grab its data.
12
15
  if (collectionNames.length === 1) {
13
16
  return data[currentName] || null;
14
17
  }
15
- const activeId = formData?.[`${currentName}ActiveId`] || null;
18
+ var activeId = (formData === null || formData === void 0 ? void 0 : formData["".concat(currentName, "ActiveId")]) || null;
16
19
  // No active ID for the current collection - the chain
17
20
  // has been broken!
18
21
  if (!activeId) {
19
22
  return null;
20
23
  }
21
- const activeIndex = data[currentName]?.findIndex(item => item.id === activeId);
24
+ var activeIndex = (_data$currentName = data[currentName]) === null || _data$currentName === void 0 ? void 0 : _data$currentName.findIndex(function (item) {
25
+ return item.id === activeId;
26
+ });
22
27
  // No entry that matches the active ID - the chain
23
28
  // has been broken!
24
29
  if (!isValidIndex(activeIndex)) {
@@ -43,9 +48,9 @@ const getLastDataInChain = (collectionNames, data, formData) => {
43
48
  * @param {object} data The top level formData object.
44
49
  * @returns The active index for the collection, or null if it doesn't exist.
45
50
  */
46
- const getCollectionPageData = (collectionName, formData) => {
47
- const nameParts = collectionName.split('.');
48
- const result = getLastDataInChain(nameParts, formData, formData);
51
+ var getCollectionPageData = function getCollectionPageData(collectionName, formData) {
52
+ var nameParts = collectionName.split('.');
53
+ var result = getLastDataInChain(nameParts, formData, formData);
49
54
  return result;
50
55
  };
51
56
  var _default = exports.default = getCollectionPageData;
@@ -1,15 +1,15 @@
1
1
  "use strict";
2
2
 
3
3
  var _getCollectionPageData = _interopRequireDefault(require("./getCollectionPageData"));
4
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
5
- describe('utils.CollectionPage.getCollectionPageData', () => {
6
- it('should return null if the collection does not exist', () => {
7
- const data = (0, _getCollectionPageData.default)('testCollection', {});
4
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5
+ describe('utils.CollectionPage.getCollectionPageData', function () {
6
+ it('should return null if the collection does not exist', function () {
7
+ var data = (0, _getCollectionPageData.default)('testCollection', {});
8
8
  expect(data).toEqual(null);
9
9
  });
10
- describe('when failing to retrieve a nested collection', () => {
11
- it('should return null if a parent collection does not exist', () => {
12
- const FORM_DATA = {
10
+ describe('when failing to retrieve a nested collection', function () {
11
+ it('should return null if a parent collection does not exist', function () {
12
+ var FORM_DATA = {
13
13
  parentsActiveId: '1',
14
14
  childrenActiveId: '1',
15
15
  grandchildrenActiveId: '1',
@@ -24,11 +24,11 @@ describe('utils.CollectionPage.getCollectionPageData', () => {
24
24
  }]
25
25
  }]
26
26
  };
27
- const data = (0, _getCollectionPageData.default)('parents.chainbreak.grandchildren', FORM_DATA);
27
+ var data = (0, _getCollectionPageData.default)('parents.chainbreak.grandchildren', FORM_DATA);
28
28
  expect(data).toEqual(null);
29
29
  });
30
- it('should return null if there is no active entry in a parent collection', () => {
31
- const FORM_DATA = {
30
+ it('should return null if there is no active entry in a parent collection', function () {
31
+ var FORM_DATA = {
32
32
  parentsActiveId: '1',
33
33
  grandchildrenActiveId: '1',
34
34
  parents: [{
@@ -42,11 +42,11 @@ describe('utils.CollectionPage.getCollectionPageData', () => {
42
42
  }]
43
43
  }]
44
44
  };
45
- const data = (0, _getCollectionPageData.default)('parents.children.grandchildren', FORM_DATA);
45
+ var data = (0, _getCollectionPageData.default)('parents.children.grandchildren', FORM_DATA);
46
46
  expect(data).toEqual(null);
47
47
  });
48
- it('should return null if the target collection does not exist', () => {
49
- const FORM_DATA = {
48
+ it('should return null if the target collection does not exist', function () {
49
+ var FORM_DATA = {
50
50
  parentsActiveId: '1',
51
51
  grandchildrenActiveId: '1',
52
52
  parents: [{
@@ -56,18 +56,18 @@ describe('utils.CollectionPage.getCollectionPageData', () => {
56
56
  }]
57
57
  }]
58
58
  };
59
- const data = (0, _getCollectionPageData.default)('parents.children.grandchildren', FORM_DATA);
59
+ var data = (0, _getCollectionPageData.default)('parents.children.grandchildren', FORM_DATA);
60
60
  expect(data).toEqual(null);
61
61
  });
62
62
  });
63
- it('should get data for top-level collections correctly', () => {
64
- const FORM_DATA = {
63
+ it('should get data for top-level collections correctly', function () {
64
+ var FORM_DATA = {
65
65
  testCollection: [{
66
66
  id: '1',
67
67
  value: 'Alpha'
68
68
  }]
69
69
  };
70
- const data = (0, _getCollectionPageData.default)('testCollection', FORM_DATA);
70
+ var data = (0, _getCollectionPageData.default)('testCollection', FORM_DATA);
71
71
  expect(Array.isArray(data)).toBeTruthy();
72
72
  expect(data.length).toEqual(1);
73
73
  expect(data[0]).toMatchObject({
@@ -75,8 +75,8 @@ describe('utils.CollectionPage.getCollectionPageData', () => {
75
75
  value: 'Alpha'
76
76
  });
77
77
  });
78
- it('should get data for nested collections correctly', () => {
79
- const FORM_DATA = {
78
+ it('should get data for nested collections correctly', function () {
79
+ var FORM_DATA = {
80
80
  parentsActiveId: '1',
81
81
  childrenActiveId: '1',
82
82
  grandchildrenActiveId: '1',
@@ -91,7 +91,7 @@ describe('utils.CollectionPage.getCollectionPageData', () => {
91
91
  }]
92
92
  }]
93
93
  };
94
- const data = (0, _getCollectionPageData.default)('parents.children.grandchildren', FORM_DATA);
94
+ var data = (0, _getCollectionPageData.default)('parents.children.grandchildren', FORM_DATA);
95
95
  expect(Array.isArray(data)).toBeTruthy();
96
96
  expect(data.length).toEqual(1);
97
97
  expect(data[0]).toMatchObject({
@@ -5,49 +5,50 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var _ = _interopRequireDefault(require(".."));
8
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
9
- const getErrorsForCollection = function (config, masterPage, formData, hooks) {
10
- let activeIds = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {};
8
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
10
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
11
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
12
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
13
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
14
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
15
+ var getErrorsForCollection = function getErrorsForCollection(config, masterPage, formData, hooks) {
16
+ var activeIds = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {};
11
17
  if (!masterPage) {
12
18
  return [];
13
19
  }
14
20
  // Get data for current collection
15
- const collectionData = _.default.CollectionPage.getData(masterPage.collection.name, masterPage.formData) || [];
16
- let allErrors = [];
21
+ var collectionData = _.default.CollectionPage.getData(masterPage.collection.name, masterPage.formData) || [];
22
+ var allErrors = [];
17
23
 
18
24
  // Loop over each entry in the collection data
19
- collectionData.forEach(entry => {
25
+ collectionData.forEach(function (entry) {
26
+ var _masterPage$childPage;
20
27
  // eslint-disable-next-line no-param-reassign
21
- activeIds = {
22
- ...activeIds,
23
- [`${masterPage.collection.name.split('.').pop()}ActiveId`]: entry.id
24
- };
28
+ activeIds = _objectSpread(_objectSpread({}, activeIds), {}, _defineProperty({}, "".concat(masterPage.collection.name.split('.').pop(), "ActiveId"), entry.id));
25
29
 
26
30
  // Loop over child pages and validate each one
27
- const allPagesErrors = masterPage.childPages?.flatMap(page => {
28
- const pageWithIds = {
29
- ...page,
30
- formData: {
31
- ...formData,
32
- ...activeIds
33
- }
34
- };
31
+ var allPagesErrors = (_masterPage$childPage = masterPage.childPages) === null || _masterPage$childPage === void 0 ? void 0 : _masterPage$childPage.flatMap(function (page) {
32
+ var pageWithIds = _objectSpread(_objectSpread({}, page), {}, {
33
+ formData: _objectSpread(_objectSpread({}, formData), activeIds)
34
+ });
35
35
 
36
36
  // Handle nested collections
37
37
  if (page.childPages) {
38
38
  return getErrorsForCollection(config, pageWithIds, formData, hooks, activeIds);
39
39
  }
40
- const pageErrors = _.default.Validate.page(pageWithIds);
40
+ var pageErrors = _.default.Validate.page(pageWithIds);
41
41
  return hooks.onValidate(pageWithIds, pageErrors);
42
42
  });
43
43
 
44
44
  // For each error add the entryId so we know what Summary Card we have to pass it to.
45
- allErrors = allErrors.concat(allPagesErrors.map(e => ({
46
- ...e,
47
- entryId: entry.id,
48
- showFor: config.id,
49
- raisedBy: config.id
50
- })));
45
+ allErrors = allErrors.concat(allPagesErrors.map(function (e) {
46
+ return _objectSpread(_objectSpread({}, e), {}, {
47
+ entryId: entry.id,
48
+ showFor: config.id,
49
+ raisedBy: config.id
50
+ });
51
+ }));
51
52
  });
52
53
  return allErrors;
53
54
  };
@@ -2,15 +2,17 @@
2
2
 
3
3
  var _getErrorsForCollection = _interopRequireDefault(require("./getErrorsForCollection"));
4
4
  var _models = require("../../models");
5
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
6
- describe('Utils.CollectionPage.getErrorsForCollection', () => {
7
- const HOOKS = {
8
- onValidate: (_, errors) => errors
5
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6
+ describe('Utils.CollectionPage.getErrorsForCollection', function () {
7
+ var HOOKS = {
8
+ onValidate: function onValidate(_, errors) {
9
+ return errors;
10
+ }
9
11
  };
10
- const CONFIG = {
12
+ var CONFIG = {
11
13
  id: 'testId'
12
14
  };
13
- const FORM_DATA = {
15
+ var FORM_DATA = {
14
16
  collection: [{
15
17
  id: 22,
16
18
  item1: 'blue',
@@ -20,7 +22,7 @@ describe('Utils.CollectionPage.getErrorsForCollection', () => {
20
22
  }]
21
23
  }]
22
24
  };
23
- const FORM_DATA_MISSING_TOP = {
25
+ var FORM_DATA_MISSING_TOP = {
24
26
  collection: [{
25
27
  id: 22,
26
28
  item2: 'blue',
@@ -30,7 +32,7 @@ describe('Utils.CollectionPage.getErrorsForCollection', () => {
30
32
  }]
31
33
  }]
32
34
  };
33
- const FORM_DATA_MISSING_NESTED = {
35
+ var FORM_DATA_MISSING_NESTED = {
34
36
  collection: [{
35
37
  id: 22,
36
38
  item1: 'blue',
@@ -40,7 +42,7 @@ describe('Utils.CollectionPage.getErrorsForCollection', () => {
40
42
  }]
41
43
  }]
42
44
  };
43
- const FORM_DATA_MISSING_BOTH = {
45
+ var FORM_DATA_MISSING_BOTH = {
44
46
  collection: [{
45
47
  id: 22,
46
48
  item9: 'blue',
@@ -50,7 +52,7 @@ describe('Utils.CollectionPage.getErrorsForCollection', () => {
50
52
  }]
51
53
  }]
52
54
  };
53
- const MASTER_PAGE = {
55
+ var MASTER_PAGE = {
54
56
  id: 'masterPage',
55
57
  collection: {
56
58
  name: 'collection',
@@ -77,7 +79,7 @@ describe('Utils.CollectionPage.getErrorsForCollection', () => {
77
79
  }]
78
80
  }]
79
81
  };
80
- const MASTER_PAGE_WITH_NESTED = {
82
+ var MASTER_PAGE_WITH_NESTED = {
81
83
  id: 'masterPage',
82
84
  collection: {
83
85
  name: 'collection',
@@ -130,24 +132,24 @@ describe('Utils.CollectionPage.getErrorsForCollection', () => {
130
132
  }]
131
133
  }]
132
134
  };
133
- it('should return nothing for a master page without errors', () => {
134
- const errors = (0, _getErrorsForCollection.default)(CONFIG, MASTER_PAGE, FORM_DATA, HOOKS);
135
+ it('should return nothing for a master page without errors', function () {
136
+ var errors = (0, _getErrorsForCollection.default)(CONFIG, MASTER_PAGE, FORM_DATA, HOOKS);
135
137
  expect(errors.length).toEqual(0);
136
138
  });
137
- it('should return erorrs for a master page with errors', () => {
138
- const errors = (0, _getErrorsForCollection.default)(CONFIG, MASTER_PAGE, FORM_DATA_MISSING_TOP, HOOKS);
139
+ it('should return erorrs for a master page with errors', function () {
140
+ var errors = (0, _getErrorsForCollection.default)(CONFIG, MASTER_PAGE, FORM_DATA_MISSING_TOP, HOOKS);
139
141
  expect(errors.length).toEqual(1);
140
142
  });
141
- it('should return nothing for a master page with a nested master page without errors', () => {
142
- const errors = (0, _getErrorsForCollection.default)(CONFIG, MASTER_PAGE_WITH_NESTED, FORM_DATA, HOOKS);
143
+ it('should return nothing for a master page with a nested master page without errors', function () {
144
+ var errors = (0, _getErrorsForCollection.default)(CONFIG, MASTER_PAGE_WITH_NESTED, FORM_DATA, HOOKS);
143
145
  expect(errors.length).toEqual(0);
144
146
  });
145
- it('should return errors for a master page with a nested master page without errors', () => {
146
- const errors = (0, _getErrorsForCollection.default)(CONFIG, MASTER_PAGE_WITH_NESTED, FORM_DATA_MISSING_NESTED, HOOKS);
147
+ it('should return errors for a master page with a nested master page without errors', function () {
148
+ var errors = (0, _getErrorsForCollection.default)(CONFIG, MASTER_PAGE_WITH_NESTED, FORM_DATA_MISSING_NESTED, HOOKS);
147
149
  expect(errors.length).toEqual(1);
148
150
  });
149
- it('should return errors for a master page with errors with a nested master page with errors', () => {
150
- const errors = (0, _getErrorsForCollection.default)(CONFIG, MASTER_PAGE_WITH_NESTED, FORM_DATA_MISSING_BOTH, HOOKS);
151
+ it('should return errors for a master page with errors with a nested master page with errors', function () {
152
+ var errors = (0, _getErrorsForCollection.default)(CONFIG, MASTER_PAGE_WITH_NESTED, FORM_DATA_MISSING_BOTH, HOOKS);
151
153
  expect(errors.length).toEqual(2);
152
154
  });
153
155
  });
@@ -6,7 +6,16 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.default = void 0;
7
7
  var _meetsAllConditions = _interopRequireDefault(require("../Condition/meetsAllConditions"));
8
8
  var _showFormPage = _interopRequireDefault(require("../FormPage/showFormPage"));
9
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
9
+ var _excluded = ["id"];
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+ 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); }
12
+ 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; }
13
+ 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; }
14
+ 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; }
15
+ 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; }
16
+ 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; }
17
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
18
+ 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); }
10
19
  /**
11
20
  * Generates a new page to be used in a SumaryCard's quick edit section.
12
21
  * The page is a standard form page that has all the components that are
@@ -45,46 +54,39 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
45
54
  * @param {object} entryData The data for the current collection entry.
46
55
  * @returns Page suitble for rendering in a QuickEdit
47
56
  */
48
- const getQuickEditPage = (masterPage, formData, entryData) => {
57
+ var getQuickEditPage = function getQuickEditPage(masterPage, formData, entryData) {
58
+ var _masterPage$collectio;
49
59
  if (!masterPage) {
50
60
  return null;
51
61
  }
52
- const fullComponents = [];
53
- masterPage.childPages.forEach(page => {
54
- if (!page.summaryQuickEdit || !(0, _showFormPage.default)(page, {
55
- ...formData,
56
- ...entryData
57
- })) {
62
+ var fullComponents = [];
63
+ masterPage.childPages.forEach(function (page) {
64
+ if (!page.summaryQuickEdit || !(0, _showFormPage.default)(page, _objectSpread(_objectSpread({}, formData), entryData))) {
58
65
  return;
59
66
  }
60
- page.summaryQuickEdit.forEach(quickEditComponent => {
67
+ page.summaryQuickEdit.forEach(function (quickEditComponent) {
61
68
  if (typeof quickEditComponent === 'string') {
62
- fullComponents.push({
63
- ...page.components.find(c => c.id === quickEditComponent)
64
- });
69
+ fullComponents.push(_objectSpread({}, page.components.find(function (c) {
70
+ return c.id === quickEditComponent;
71
+ })));
65
72
  return;
66
73
  }
67
- const originalComponent = page.components.find(c => c.id === quickEditComponent.use);
74
+ var originalComponent = page.components.find(function (c) {
75
+ return c.id === quickEditComponent.use;
76
+ });
68
77
  if (!originalComponent) {
69
78
  return;
70
79
  }
71
- const mergedComponent = {
72
- ...originalComponent,
73
- ...quickEditComponent
74
- };
80
+ var mergedComponent = _objectSpread(_objectSpread({}, originalComponent), quickEditComponent);
75
81
 
76
82
  // If there's a show_when in the quick edit config, then we treat
77
83
  // that as a specific test for when the component should be quick
78
84
  // editable - it doesn't get spread to the merged object.
79
85
  if (quickEditComponent.show_when) {
80
- if ((0, _meetsAllConditions.default)(quickEditComponent.show_when, {
81
- ...formData,
82
- ...entryData
83
- })) {
84
- fullComponents.push({
85
- ...mergedComponent,
86
+ if ((0, _meetsAllConditions.default)(quickEditComponent.show_when, _objectSpread(_objectSpread({}, formData), entryData))) {
87
+ fullComponents.push(_objectSpread(_objectSpread({}, mergedComponent), {}, {
86
88
  show_when: originalComponent.show_when || []
87
- });
89
+ }));
88
90
  }
89
91
  return;
90
92
  }
@@ -93,10 +95,9 @@ const getQuickEditPage = (masterPage, formData, entryData) => {
93
95
  });
94
96
 
95
97
  // Put components and actions onto page object
96
- const pageToReturn = {
97
- ...masterPage.childPages[0],
98
- formData
99
- };
98
+ var pageToReturn = _objectSpread(_objectSpread({}, masterPage.childPages[0]), {}, {
99
+ formData: formData
100
+ });
100
101
  pageToReturn.components = fullComponents;
101
102
  pageToReturn.actions = [{
102
103
  type: 'save',
@@ -111,15 +112,9 @@ const getQuickEditPage = (masterPage, formData, entryData) => {
111
112
 
112
113
  // Need to have the collection data at the top level
113
114
  // Remove ID to stop overwriting top-level form ID.
114
- const {
115
- id,
116
- ...entryWithNoId
117
- } = entryData;
118
- pageToReturn.formData = {
119
- ...pageToReturn.formData,
120
- ...entryWithNoId,
121
- [`${masterPage.collection?.name?.split('.').pop()}ActiveId`]: entryData.id
122
- };
115
+ var id = entryData.id,
116
+ entryWithNoId = _objectWithoutProperties(entryData, _excluded);
117
+ pageToReturn.formData = _objectSpread(_objectSpread(_objectSpread({}, pageToReturn.formData), entryWithNoId), {}, _defineProperty({}, "".concat((_masterPage$collectio = masterPage.collection) === null || _masterPage$collectio === void 0 || (_masterPage$collectio = _masterPage$collectio.name) === null || _masterPage$collectio === void 0 ? void 0 : _masterPage$collectio.split('.').pop(), "ActiveId"), entryData.id));
123
118
  delete pageToReturn.title;
124
119
  delete pageToReturn.collection;
125
120
  return pageToReturn;
@@ -1,9 +1,15 @@
1
1
  "use strict";
2
2
 
3
3
  var _getQuickEditPage = _interopRequireDefault(require("./getQuickEditPage"));
4
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
5
- describe('Utils.CollectionPage.getQuickEditPage', () => {
6
- const FORM_DATA = {
4
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
6
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
7
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
8
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
9
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
10
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
11
+ describe('Utils.CollectionPage.getQuickEditPage', function () {
12
+ var FORM_DATA = {
7
13
  items: [{
8
14
  id: '123',
9
15
  testText1: 'value 1',
@@ -12,7 +18,7 @@ describe('Utils.CollectionPage.getQuickEditPage', () => {
12
18
  testText3: 'value 3'
13
19
  }]
14
20
  };
15
- const MASTER_PAGE = {
21
+ var MASTER_PAGE = {
16
22
  collection: {
17
23
  name: 'entries'
18
24
  },
@@ -71,7 +77,7 @@ describe('Utils.CollectionPage.getQuickEditPage', () => {
71
77
  summaryQuickEdit: ["testText3"]
72
78
  }]
73
79
  };
74
- const EXPECTED_OUTPUT = {
80
+ var EXPECTED_OUTPUT = {
75
81
  id: 'firstPage',
76
82
  name: 'firstPage',
77
83
  components: [{
@@ -105,34 +111,32 @@ describe('Utils.CollectionPage.getQuickEditPage', () => {
105
111
  classModifiers: 'secondary'
106
112
  }]
107
113
  };
108
- const ENTRY_DATA = {
114
+ var ENTRY_DATA = {
109
115
  id: '123',
110
116
  testText1: 'value 1',
111
117
  testText2: 'value 2',
112
118
  conditionText: 'true',
113
119
  testText3: 'value 3'
114
120
  };
115
- it('should return a quick edit page', () => {
116
- const createdPage = (0, _getQuickEditPage.default)(MASTER_PAGE, FORM_DATA, ENTRY_DATA);
121
+ it('should return a quick edit page', function () {
122
+ var createdPage = (0, _getQuickEditPage.default)(MASTER_PAGE, FORM_DATA, ENTRY_DATA);
117
123
  expect(createdPage).toMatchObject(EXPECTED_OUTPUT);
118
124
  });
119
- it('should return a quick edit page without components that fail the quick edit show_when', () => {
120
- const CUSTOM_OUTPUT = {
121
- ...EXPECTED_OUTPUT,
125
+ it('should return a quick edit page without components that fail the quick edit show_when', function () {
126
+ var CUSTOM_OUTPUT = _objectSpread(_objectSpread({}, EXPECTED_OUTPUT), {}, {
122
127
  components: [EXPECTED_OUTPUT.components[0],
123
128
  // The second component should fail the show when
124
129
  // and not be included in the quick edit page.
125
130
  EXPECTED_OUTPUT.components[2]]
126
- };
127
- const CUSTOM_ENTRY_DATA = {
128
- ...ENTRY_DATA,
131
+ });
132
+ var CUSTOM_ENTRY_DATA = _objectSpread(_objectSpread({}, ENTRY_DATA), {}, {
129
133
  conditionText: 'false'
130
- };
131
- const createdPage = (0, _getQuickEditPage.default)(MASTER_PAGE, FORM_DATA, CUSTOM_ENTRY_DATA);
134
+ });
135
+ var createdPage = (0, _getQuickEditPage.default)(MASTER_PAGE, FORM_DATA, CUSTOM_ENTRY_DATA);
132
136
  expect(createdPage).toMatchObject(CUSTOM_OUTPUT);
133
137
  });
134
- it('should return a quick edit page with the activeId for the current collection correctly set', () => {
135
- const createdPage = (0, _getQuickEditPage.default)(MASTER_PAGE, FORM_DATA, ENTRY_DATA);
138
+ it('should return a quick edit page with the activeId for the current collection correctly set', function () {
139
+ var createdPage = (0, _getQuickEditPage.default)(MASTER_PAGE, FORM_DATA, ENTRY_DATA);
136
140
  expect(createdPage.formData.entriesActiveId).toEqual('123');
137
141
  expect(createdPage).toMatchObject(EXPECTED_OUTPUT);
138
142
  });
@@ -14,10 +14,10 @@ var _getErrorsForCollection = _interopRequireDefault(require("./getErrorsForColl
14
14
  var _mergeCollectionPages = _interopRequireDefault(require("./mergeCollectionPages"));
15
15
  var _removeCollectionPageEntry = _interopRequireDefault(require("./removeCollectionPageEntry"));
16
16
  var _setCollectionPageData = _interopRequireDefault(require("./setCollectionPageData"));
17
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
17
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
18
18
  // Local imports
19
19
 
20
- const CollectionPage = {
20
+ var CollectionPage = {
21
21
  addEntry: _addCollectionPageEntry.default,
22
22
  duplicateActiveEntry: _duplicateCollectionPageActiveEntry.default,
23
23
  duplicateEntry: _duplicateCollectionPageEntry.default,