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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (382) hide show
  1. package/dist/components/CheckYourAnswers/Answer.js +15 -15
  2. package/dist/components/CheckYourAnswers/Answer.test.js +181 -132
  3. package/dist/components/CheckYourAnswers/CheckYourAnswers.js +142 -106
  4. package/dist/components/CheckYourAnswers/CheckYourAnswers.test.js +941 -563
  5. package/dist/components/CheckYourAnswers/index.js +1 -1
  6. package/dist/components/CollectionPage/CollectionPage.js +66 -75
  7. package/dist/components/CollectionPage/CollectionPage.test.js +369 -318
  8. package/dist/components/CollectionPage/index.js +1 -1
  9. package/dist/components/CollectionSummary/BannerStrip.js +15 -15
  10. package/dist/components/CollectionSummary/BannerStrip.test.js +79 -83
  11. package/dist/components/CollectionSummary/CollectionSummary.js +131 -109
  12. package/dist/components/CollectionSummary/CollectionSummary.test.js +180 -198
  13. package/dist/components/CollectionSummary/Confirmation.js +13 -15
  14. package/dist/components/CollectionSummary/Confirmation.test.js +63 -68
  15. package/dist/components/CollectionSummary/RenderListView.js +55 -47
  16. package/dist/components/CollectionSummary/RenderListView.test.js +81 -82
  17. package/dist/components/CollectionSummary/SummaryCard.js +157 -121
  18. package/dist/components/CollectionSummary/SummaryCard.test.js +1000 -970
  19. package/dist/components/CollectionSummary/SummaryCardDetails.js +94 -103
  20. package/dist/components/CollectionSummary/SummaryCardDetails.test.js +195 -187
  21. package/dist/components/CollectionSummary/SummaryCardValidationContext.js +36 -31
  22. package/dist/components/CollectionSummary/SummaryCardValidationContext.test.js +76 -64
  23. package/dist/components/CollectionSummary/index.js +1 -1
  24. package/dist/components/FormComponent/Collection.js +117 -80
  25. package/dist/components/FormComponent/Collection.test.js +1082 -910
  26. package/dist/components/FormComponent/Container.js +38 -43
  27. package/dist/components/FormComponent/Container.test.js +411 -379
  28. package/dist/components/FormComponent/FormComponent.js +74 -71
  29. package/dist/components/FormComponent/FormComponent.test.js +415 -354
  30. package/dist/components/FormComponent/helpers/addLabel.js +7 -4
  31. package/dist/components/FormComponent/helpers/getComponentDisabled.js +1 -1
  32. package/dist/components/FormComponent/helpers/getComponentDisabled.test.js +8 -8
  33. package/dist/components/FormComponent/helpers/getComponentError.js +5 -3
  34. package/dist/components/FormComponent/helpers/getComponentError.test.js +15 -15
  35. package/dist/components/FormComponent/helpers/getComponentFieldSet.js +4 -3
  36. package/dist/components/FormComponent/helpers/getComponentFieldSet.test.js +7 -7
  37. package/dist/components/FormComponent/helpers/index.js +5 -5
  38. package/dist/components/FormComponent/index.js +1 -1
  39. package/dist/components/FormPage/FormPage.js +87 -71
  40. package/dist/components/FormPage/FormPage.test.js +170 -133
  41. package/dist/components/FormPage/index.js +1 -1
  42. package/dist/components/FormRenderer/FormRenderer.js +198 -153
  43. package/dist/components/FormRenderer/FormRenderer.test.js +1116 -731
  44. package/dist/components/FormRenderer/handlers/cyaAction.js +3 -3
  45. package/dist/components/FormRenderer/handlers/getPageId.js +3 -1
  46. package/dist/components/FormRenderer/handlers/getPageId.test.js +15 -15
  47. package/dist/components/FormRenderer/handlers/handlers.test.js +33 -33
  48. package/dist/components/FormRenderer/handlers/index.js +2 -2
  49. package/dist/components/FormRenderer/handlers/navigate.js +4 -4
  50. package/dist/components/FormRenderer/handlers/submissionError.js +1 -1
  51. package/dist/components/FormRenderer/helpers/canActionProceed.js +1 -1
  52. package/dist/components/FormRenderer/helpers/canActionProceed.test.js +16 -16
  53. package/dist/components/FormRenderer/helpers/canCYASubmit.js +3 -1
  54. package/dist/components/FormRenderer/helpers/canCYASubmit.test.js +21 -17
  55. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.js +30 -27
  56. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.test.js +21 -21
  57. package/dist/components/FormRenderer/helpers/getCYA.js +7 -5
  58. package/dist/components/FormRenderer/helpers/getCYA.test.js +12 -12
  59. package/dist/components/FormRenderer/helpers/getFormState.js +8 -6
  60. package/dist/components/FormRenderer/helpers/getFormState.test.js +11 -11
  61. package/dist/components/FormRenderer/helpers/getNextPageId.js +32 -18
  62. package/dist/components/FormRenderer/helpers/getNextPageId.test.js +68 -68
  63. package/dist/components/FormRenderer/helpers/getPage.js +4 -2
  64. package/dist/components/FormRenderer/helpers/getPage.test.js +12 -12
  65. package/dist/components/FormRenderer/helpers/getRelevantPages.js +11 -8
  66. package/dist/components/FormRenderer/helpers/getRelevantPages.test.js +15 -15
  67. package/dist/components/FormRenderer/helpers/getSubmissionStatus.js +13 -12
  68. package/dist/components/FormRenderer/helpers/getSubmissionStatus.test.js +98 -104
  69. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.js +64 -65
  70. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.test.js +79 -72
  71. package/dist/components/FormRenderer/helpers/index.js +2 -2
  72. package/dist/components/FormRenderer/index.js +1 -1
  73. package/dist/components/FormRenderer/onCYAAction.js +54 -61
  74. package/dist/components/FormRenderer/onCYAAction.test.js +153 -165
  75. package/dist/components/FormRenderer/onPageAction.js +41 -45
  76. package/dist/components/FormRenderer/onPageAction.test.js +210 -225
  77. package/dist/components/FormRenderer/onTaskAction.js +15 -11
  78. package/dist/components/FormRenderer/onTaskAction.test.js +89 -94
  79. package/dist/components/PageActions/ActionButton.js +16 -13
  80. package/dist/components/PageActions/ActionButton.test.js +79 -57
  81. package/dist/components/PageActions/PageActions.js +11 -11
  82. package/dist/components/PageActions/PageActions.test.js +116 -87
  83. package/dist/components/PageActions/index.js +1 -1
  84. package/dist/components/SummaryList/GroupAction.js +21 -13
  85. package/dist/components/SummaryList/GroupAction.test.js +37 -41
  86. package/dist/components/SummaryList/RowAction.js +17 -12
  87. package/dist/components/SummaryList/RowAction.test.js +37 -41
  88. package/dist/components/SummaryList/SummaryList.js +28 -23
  89. package/dist/components/SummaryList/SummaryList.test.js +206 -179
  90. package/dist/components/SummaryList/SummaryListHeadingRow.js +6 -8
  91. package/dist/components/SummaryList/SummaryListHeadingRowWithAction.js +5 -7
  92. package/dist/components/SummaryList/SummaryListRow.js +6 -8
  93. package/dist/components/SummaryList/SummaryListTitleRow.js +5 -7
  94. package/dist/components/SummaryList/helpers/getGroupActionAttributes.js +6 -4
  95. package/dist/components/SummaryList/helpers/getGroupActionAttributes.test.js +24 -24
  96. package/dist/components/SummaryList/helpers/getRowActionAttributes.js +6 -4
  97. package/dist/components/SummaryList/helpers/getRowActionAttributes.test.js +24 -24
  98. package/dist/components/SummaryList/helpers/index.js +2 -2
  99. package/dist/components/SummaryList/index.js +1 -1
  100. package/dist/components/TaskList/Task.js +30 -20
  101. package/dist/components/TaskList/Task.test.js +77 -84
  102. package/dist/components/TaskList/TaskList.js +84 -53
  103. package/dist/components/TaskList/TaskList.test.js +150 -150
  104. package/dist/components/TaskList/TaskState.js +6 -8
  105. package/dist/components/TaskList/TaskState.test.js +49 -56
  106. package/dist/components/TaskList/index.js +1 -1
  107. package/dist/components/index.js +8 -8
  108. package/dist/context/HooksContext/HooksContext.js +81 -58
  109. package/dist/context/HooksContext/HooksContext.test.js +36 -27
  110. package/dist/context/HooksContext/index.js +4 -3
  111. package/dist/context/ValidationContext/ValidationContext.js +95 -44
  112. package/dist/context/ValidationContext/ValidationContext.test.js +70 -58
  113. package/dist/context/ValidationContext/index.js +4 -3
  114. package/dist/context/index.js +3 -3
  115. package/dist/hooks/index.js +11 -10
  116. package/dist/hooks/useAxios.js +41 -15
  117. package/dist/hooks/useGetRequest.js +98 -62
  118. package/dist/hooks/useHooks.js +3 -1
  119. package/dist/hooks/useRefData.js +41 -28
  120. package/dist/hooks/useValidation.js +3 -1
  121. package/dist/index.js +15 -14
  122. package/dist/models/CollectionLabels.js +1 -1
  123. package/dist/models/ComponentTypes.js +25 -25
  124. package/dist/models/EventTypes.js +4 -4
  125. package/dist/models/FormPages.js +4 -4
  126. package/dist/models/FormTypes.js +8 -8
  127. package/dist/models/HubFormats.js +3 -3
  128. package/dist/models/PageAction.js +38 -44
  129. package/dist/models/TaskStates.js +28 -29
  130. package/dist/models/index.js +10 -10
  131. package/dist/setupTests.js +32 -31
  132. package/dist/utils/CheckYourAnswers/getCYAAction.js +5 -5
  133. package/dist/utils/CheckYourAnswers/getCYAAction.test.js +55 -53
  134. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.js +27 -17
  135. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.test.js +36 -34
  136. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.js +34 -20
  137. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.test.js +45 -43
  138. package/dist/utils/CheckYourAnswers/getCYARow.js +10 -8
  139. package/dist/utils/CheckYourAnswers/getCYARow.test.js +87 -87
  140. package/dist/utils/CheckYourAnswers/getCYARowForGroup.js +25 -19
  141. package/dist/utils/CheckYourAnswers/getCYARowForGroup.test.js +17 -16
  142. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.js +45 -39
  143. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.test.js +75 -72
  144. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.js +105 -100
  145. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.test.js +182 -218
  146. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.js +21 -26
  147. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.test.js +106 -112
  148. package/dist/utils/CheckYourAnswers/getCYARowsForPage.js +21 -15
  149. package/dist/utils/CheckYourAnswers/getCYARowsForPage.test.js +83 -77
  150. package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.js +13 -13
  151. package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.test.js +19 -14
  152. package/dist/utils/CheckYourAnswers/index.js +2 -2
  153. package/dist/utils/CheckYourAnswers/showComponentCYA.js +6 -6
  154. package/dist/utils/CheckYourAnswers/showComponentCYA.test.js +26 -26
  155. package/dist/utils/CollectionPage/addCollectionPageEntry.js +3 -3
  156. package/dist/utils/CollectionPage/addCollectionPageEntry.test.js +6 -6
  157. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.js +3 -3
  158. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.test.js +22 -21
  159. package/dist/utils/CollectionPage/duplicateCollectionPageEntry.js +24 -14
  160. package/dist/utils/CollectionPage/duplicateCollectionPageEntry.test.js +43 -52
  161. package/dist/utils/CollectionPage/getCollectionPageActiveId.js +3 -3
  162. package/dist/utils/CollectionPage/getCollectionPageActiveId.test.js +11 -11
  163. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.js +12 -7
  164. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.test.js +23 -23
  165. package/dist/utils/CollectionPage/getCollectionPageData.js +13 -8
  166. package/dist/utils/CollectionPage/getCollectionPageData.test.js +20 -20
  167. package/dist/utils/CollectionPage/getErrorsForCollection.js +26 -25
  168. package/dist/utils/CollectionPage/getErrorsForCollection.test.js +23 -21
  169. package/dist/utils/CollectionPage/getQuickEditPage.js +32 -37
  170. package/dist/utils/CollectionPage/getQuickEditPage.test.js +22 -18
  171. package/dist/utils/CollectionPage/index.js +2 -2
  172. package/dist/utils/CollectionPage/mergeCollectionPages.js +42 -37
  173. package/dist/utils/CollectionPage/mergeCollectionPages.test.js +18 -48
  174. package/dist/utils/CollectionPage/removeCollectionPageEntry.js +7 -5
  175. package/dist/utils/CollectionPage/removeCollectionPageEntry.test.js +11 -11
  176. package/dist/utils/CollectionPage/setCollectionPageData.js +19 -12
  177. package/dist/utils/CollectionPage/setCollectionPageData.test.js +26 -26
  178. package/dist/utils/Component/addShowWhen.js +8 -4
  179. package/dist/utils/Component/addShowWhen.test.js +38 -38
  180. package/dist/utils/Component/applyToComponentTree.js +20 -19
  181. package/dist/utils/Component/applyToComponentTree.test.js +33 -28
  182. package/dist/utils/Component/cleanAttributes.js +13 -10
  183. package/dist/utils/Component/cleanAttributes.test.js +18 -17
  184. package/dist/utils/Component/elevateNestedComponents.js +7 -6
  185. package/dist/utils/Component/elevateNestedComponents.test.js +34 -34
  186. package/dist/utils/Component/getComponent.js +97 -90
  187. package/dist/utils/Component/getComponentTests/getComponent.autocomplete.test.js +18 -19
  188. package/dist/utils/Component/getComponentTests/getComponent.calculation.test.js +63 -50
  189. package/dist/utils/Component/getComponentTests/getComponent.checkboxes.test.js +49 -40
  190. package/dist/utils/Component/getComponentTests/getComponent.date.test.js +40 -30
  191. package/dist/utils/Component/getComponentTests/getComponent.details.test.js +19 -21
  192. package/dist/utils/Component/getComponentTests/getComponent.email.test.js +23 -18
  193. package/dist/utils/Component/getComponentTests/getComponent.file.test.js +27 -22
  194. package/dist/utils/Component/getComponentTests/getComponent.heading.test.js +11 -12
  195. package/dist/utils/Component/getComponentTests/getComponent.html.test.js +16 -18
  196. package/dist/utils/Component/getComponentTests/getComponent.insetText.test.js +9 -10
  197. package/dist/utils/Component/getComponentTests/getComponent.list.test.js +16 -18
  198. package/dist/utils/Component/getComponentTests/getComponent.multifile.test.js +27 -23
  199. package/dist/utils/Component/getComponentTests/getComponent.nested.test.js +175 -155
  200. package/dist/utils/Component/getComponentTests/getComponent.paragraph.test.js +16 -18
  201. package/dist/utils/Component/getComponentTests/getComponent.phoneNumber.test.js +23 -18
  202. package/dist/utils/Component/getComponentTests/getComponent.radios.test.js +73 -58
  203. package/dist/utils/Component/getComponentTests/getComponent.select.test.js +23 -18
  204. package/dist/utils/Component/getComponentTests/getComponent.text.test.js +23 -18
  205. package/dist/utils/Component/getComponentTests/getComponent.textArea.test.js +41 -34
  206. package/dist/utils/Component/getComponentTests/getComponent.time.test.js +32 -23
  207. package/dist/utils/Component/getComponentTests/getComponent.unknown.test.js +3 -3
  208. package/dist/utils/Component/getComponentTests/getComponent.warningText.test.js +9 -10
  209. package/dist/utils/Component/getDefaultValue.js +9 -7
  210. package/dist/utils/Component/getDefaultValue.test.js +13 -13
  211. package/dist/utils/Component/getDefaultValueFromConfig.js +24 -24
  212. package/dist/utils/Component/getDefaultValueFromConfig.test.js +32 -32
  213. package/dist/utils/Component/index.js +2 -2
  214. package/dist/utils/Component/isEditable.js +4 -2
  215. package/dist/utils/Component/isEditable.test.js +15 -14
  216. package/dist/utils/Component/optionIsSelected.js +4 -2
  217. package/dist/utils/Component/optionIsSelected.test.js +12 -12
  218. package/dist/utils/Component/setupContainerComponentsPath.js +31 -29
  219. package/dist/utils/Component/setupContainerComponentsPath.test.js +16 -16
  220. package/dist/utils/Component/showComponent.js +4 -3
  221. package/dist/utils/Component/showComponent.test.js +29 -29
  222. package/dist/utils/Component/wrapInFormGroup.js +4 -4
  223. package/dist/utils/Condition/index.js +2 -2
  224. package/dist/utils/Condition/meetsAllConditions.js +9 -9
  225. package/dist/utils/Condition/meetsAllConditions.test.js +21 -21
  226. package/dist/utils/Condition/meetsCondition.js +31 -20
  227. package/dist/utils/Condition/meetsCondition.test.js +403 -403
  228. package/dist/utils/Condition/meetsOneCondition.js +6 -6
  229. package/dist/utils/Condition/meetsOneCondition.test.js +17 -17
  230. package/dist/utils/Condition/setupConditions.js +19 -14
  231. package/dist/utils/Condition/setupConditions.test.js +8 -8
  232. package/dist/utils/Container/getEditableComponents.js +6 -4
  233. package/dist/utils/Container/getEditableComponents.test.js +46 -44
  234. package/dist/utils/Container/index.js +2 -2
  235. package/dist/utils/Container/setupNesting.js +22 -16
  236. package/dist/utils/Container/setupNesting.test.js +31 -28
  237. package/dist/utils/Container/showContainer.js +8 -4
  238. package/dist/utils/Container/showContainer.test.js +31 -31
  239. package/dist/utils/Data/applyFormula.js +50 -40
  240. package/dist/utils/Data/applyFormula.test.js +26 -26
  241. package/dist/utils/Data/deleteValues.js +8 -4
  242. package/dist/utils/Data/deleteValues.test.js +11 -11
  243. package/dist/utils/Data/getAutocompleteSource.js +29 -20
  244. package/dist/utils/Data/getAutocompleteSource.test.js +87 -81
  245. package/dist/utils/Data/getDataPath.js +30 -20
  246. package/dist/utils/Data/getDataPath.test.js +20 -20
  247. package/dist/utils/Data/getOptions.js +34 -27
  248. package/dist/utils/Data/getOptions.test.js +28 -28
  249. package/dist/utils/Data/getSourceData.js +19 -6
  250. package/dist/utils/Data/getSourceData.test.js +81 -85
  251. package/dist/utils/Data/index.js +2 -2
  252. package/dist/utils/Data/nestInRefdataOptions.js +16 -9
  253. package/dist/utils/Data/nestInRefdataOptions.test.js +17 -17
  254. package/dist/utils/Data/refDataToOptions.js +15 -11
  255. package/dist/utils/Data/refDataToOptions.test.js +20 -20
  256. package/dist/utils/Data/setDataItem.js +8 -7
  257. package/dist/utils/Data/setDataItem.test.js +38 -38
  258. package/dist/utils/Data/setupFormData.js +22 -14
  259. package/dist/utils/Data/setupFormData.test.js +51 -52
  260. package/dist/utils/Data/setupRefDataUrlForComponent.js +28 -21
  261. package/dist/utils/Data/setupRefDataUrlForComponent.test.js +28 -28
  262. package/dist/utils/FormPage/applyConditionalProperties.js +10 -6
  263. package/dist/utils/FormPage/applyConditionalProperties.test.js +19 -16
  264. package/dist/utils/FormPage/getConditionalText.js +4 -4
  265. package/dist/utils/FormPage/getConditionalText.test.js +35 -35
  266. package/dist/utils/FormPage/getFormPage.js +17 -16
  267. package/dist/utils/FormPage/getFormPage.test.js +48 -49
  268. package/dist/utils/FormPage/getFormPages.js +13 -8
  269. package/dist/utils/FormPage/getFormPages.test.js +25 -22
  270. package/dist/utils/FormPage/getPageActions.js +17 -10
  271. package/dist/utils/FormPage/getPageActions.test.js +33 -33
  272. package/dist/utils/FormPage/getParagraphFromText.js +7 -5
  273. package/dist/utils/FormPage/getParagraphFromText.test.js +7 -7
  274. package/dist/utils/FormPage/index.js +5 -3
  275. package/dist/utils/FormPage/showFormPage.js +8 -4
  276. package/dist/utils/FormPage/showFormPage.test.js +33 -33
  277. package/dist/utils/FormPage/showFormPageCYA.js +3 -3
  278. package/dist/utils/FormPage/showFormPageCYA.test.js +9 -9
  279. package/dist/utils/FormPage/useComponent.js +28 -21
  280. package/dist/utils/FormPage/useComponent.test.js +80 -78
  281. package/dist/utils/Format/formatData.js +1 -1
  282. package/dist/utils/Format/formatData.test.js +19 -19
  283. package/dist/utils/Format/formatDataForComponent.js +7 -6
  284. package/dist/utils/Format/formatDataForComponent.test.js +78 -50
  285. package/dist/utils/Format/formatDataForForm.js +8 -6
  286. package/dist/utils/Format/formatDataForForm.test.js +17 -14
  287. package/dist/utils/Format/formatDataForPage.js +5 -4
  288. package/dist/utils/Format/formatDataForPage.test.js +25 -20
  289. package/dist/utils/Format/index.js +2 -2
  290. package/dist/utils/Hub/getFormHub.js +2 -2
  291. package/dist/utils/Hub/getFormHub.test.js +32 -29
  292. package/dist/utils/Hub/index.js +2 -2
  293. package/dist/utils/Meta/constants.js +2 -2
  294. package/dist/utils/Meta/documents/getDocuments.js +4 -1
  295. package/dist/utils/Meta/documents/getDocuments.test.js +17 -25
  296. package/dist/utils/Meta/documents/index.js +2 -2
  297. package/dist/utils/Meta/documents/setDocumentsForField.js +17 -15
  298. package/dist/utils/Meta/documents/setDocumentsForField.test.js +35 -69
  299. package/dist/utils/Meta/index.js +2 -2
  300. package/dist/utils/Operate/checkValueIsTruthy.js +4 -4
  301. package/dist/utils/Operate/checkValueIsTruthy.test.js +17 -17
  302. package/dist/utils/Operate/deleteValueInFormData.js +3 -3
  303. package/dist/utils/Operate/deleteValueInFormData.test.js +15 -15
  304. package/dist/utils/Operate/getFirstOf.js +8 -8
  305. package/dist/utils/Operate/getFirstOf.test.js +33 -33
  306. package/dist/utils/Operate/getIndexOfMatchingValueIn.js +12 -12
  307. package/dist/utils/Operate/getIndexOfMatchingValueIn.test.js +53 -47
  308. package/dist/utils/Operate/getLength.js +11 -11
  309. package/dist/utils/Operate/getLength.test.js +19 -19
  310. package/dist/utils/Operate/index.js +2 -2
  311. package/dist/utils/Operate/persistValueInFormData.js +6 -6
  312. package/dist/utils/Operate/persistValueInFormData.test.js +21 -23
  313. package/dist/utils/Operate/runPageOperations.js +9 -9
  314. package/dist/utils/Operate/runPageOperations.test.js +37 -36
  315. package/dist/utils/Operate/setValueInFormData.js +5 -5
  316. package/dist/utils/Operate/setValueInFormData.test.js +17 -17
  317. package/dist/utils/Operate/shouldRun.js +8 -8
  318. package/dist/utils/Operate/shouldRun.test.js +28 -22
  319. package/dist/utils/Validate/additional/conditionallyPermittedChange.js +1 -1
  320. package/dist/utils/Validate/additional/conditionallyPermittedChange.test.js +15 -15
  321. package/dist/utils/Validate/additional/conditionallyRequired.js +5 -4
  322. package/dist/utils/Validate/additional/conditionallyRequired.test.js +19 -19
  323. package/dist/utils/Validate/additional/index.js +8 -8
  324. package/dist/utils/Validate/additional/index.test.js +22 -22
  325. package/dist/utils/Validate/additional/mustBeAfter.js +3 -3
  326. package/dist/utils/Validate/additional/mustBeAfter.test.js +41 -41
  327. package/dist/utils/Validate/additional/mustBeBefore.js +3 -3
  328. package/dist/utils/Validate/additional/mustBeBefore.test.js +29 -29
  329. package/dist/utils/Validate/additional/mustBeEarlierDateTime.js +14 -9
  330. package/dist/utils/Validate/additional/mustBeEarlierDateTime.test.js +42 -38
  331. package/dist/utils/Validate/additional/mustBeGreaterThan.js +2 -2
  332. package/dist/utils/Validate/additional/mustBeGreaterThan.test.js +19 -19
  333. package/dist/utils/Validate/additional/mustBeInTheFuture.js +4 -4
  334. package/dist/utils/Validate/additional/mustBeInTheFuture.test.js +13 -13
  335. package/dist/utils/Validate/additional/mustBeInThePast.js +5 -5
  336. package/dist/utils/Validate/additional/mustBeInThePast.test.js +13 -13
  337. package/dist/utils/Validate/additional/mustBeLessThan.js +2 -2
  338. package/dist/utils/Validate/additional/mustBeLessThan.test.js +18 -18
  339. package/dist/utils/Validate/additional/mustBeLongerThan.js +1 -1
  340. package/dist/utils/Validate/additional/mustBeLongerThan.test.js +17 -17
  341. package/dist/utils/Validate/additional/mustBeNumbersOnly.js +2 -2
  342. package/dist/utils/Validate/additional/mustBeNumbersOnly.test.js +21 -21
  343. package/dist/utils/Validate/additional/mustBeOneOf.js +1 -1
  344. package/dist/utils/Validate/additional/mustBeOneOf.test.js +13 -13
  345. package/dist/utils/Validate/additional/mustBeShorterThan.js +1 -1
  346. package/dist/utils/Validate/additional/mustBeShorterThan.test.js +17 -17
  347. package/dist/utils/Validate/additional/mustBeUniqueInCollection.js +5 -5
  348. package/dist/utils/Validate/additional/mustBeUniqueInCollection.test.js +40 -36
  349. package/dist/utils/Validate/additional/mustEnterAtLeastOne.js +5 -3
  350. package/dist/utils/Validate/additional/mustEnterAtLeastOne.test.js +17 -15
  351. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.js +1 -1
  352. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.test.js +13 -13
  353. package/dist/utils/Validate/additional/mustNotContainSql.js +4 -3
  354. package/dist/utils/Validate/additional/mustNotContainSql.test.js +15 -15
  355. package/dist/utils/Validate/additional/mustSelectOnlyOne.js +5 -3
  356. package/dist/utils/Validate/additional/mustSelectOnlyOne.test.js +27 -29
  357. package/dist/utils/Validate/additional/utils.js +24 -11
  358. package/dist/utils/Validate/index.js +2 -2
  359. package/dist/utils/Validate/validateCollection.js +27 -21
  360. package/dist/utils/Validate/validateCollection.test.js +77 -85
  361. package/dist/utils/Validate/validateComponent.js +23 -22
  362. package/dist/utils/Validate/validateComponent.test.js +165 -188
  363. package/dist/utils/Validate/validateContainer.js +21 -16
  364. package/dist/utils/Validate/validateContainer.test.js +56 -62
  365. package/dist/utils/Validate/validateDate.js +23 -17
  366. package/dist/utils/Validate/validateDate.test.js +32 -31
  367. package/dist/utils/Validate/validateEmail.js +9 -7
  368. package/dist/utils/Validate/validateEmail.test.js +26 -26
  369. package/dist/utils/Validate/validateMultifile.js +7 -5
  370. package/dist/utils/Validate/validateMultifile.test.js +18 -17
  371. package/dist/utils/Validate/validatePage.js +24 -20
  372. package/dist/utils/Validate/validatePage.test.js +215 -227
  373. package/dist/utils/Validate/validateRegex.js +8 -5
  374. package/dist/utils/Validate/validateRegex.test.js +17 -17
  375. package/dist/utils/Validate/validateRequired.js +7 -5
  376. package/dist/utils/Validate/validateRequired.test.js +19 -19
  377. package/dist/utils/Validate/validateTextArea.js +7 -5
  378. package/dist/utils/Validate/validateTextArea.test.js +21 -21
  379. package/dist/utils/Validate/validateTime.js +19 -12
  380. package/dist/utils/Validate/validateTime.test.js +27 -27
  381. package/dist/utils/index.js +10 -8
  382. package/package.json +1 -1
@@ -14,43 +14,53 @@ var _getCYARowsForContainer = _interopRequireDefault(require("../../utils/CheckY
14
14
  var _showComponent = _interopRequireDefault(require("../../utils/Component/showComponent"));
15
15
  var _Condition = _interopRequireDefault(require("../../utils/Condition"));
16
16
  require("./SummaryCardDetails.scss");
17
- 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); }
18
- 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; }
19
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
20
- // Global imports.
21
-
17
+ 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); }
18
+ 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; }
19
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
20
+ 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); }
21
+ 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; }
22
+ 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; }
23
+ 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; }
24
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
25
+ 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.
22
26
  // Local imports.
23
-
24
27
  // Styles.
25
-
26
- const DEFAULT_CLASS = exports.DEFAULT_CLASS = 'hods-form-summary-card-details';
27
- const SummaryCardDetails = _ref => {
28
- let {
29
- masterPage,
30
- childCollections,
31
- formData,
32
- entryData,
33
- classModifiers,
34
- hideChildSectionTitles,
35
- optionalFieldPlaceholder
36
- } = _ref;
37
- const classes = _utils.default.classBuilder(DEFAULT_CLASS, classModifiers);
38
- const childMasterPages = (0, _react.useMemo)(() => childCollections.map(childName => masterPage.childPages.find(page => page.collection?.name === childName)).filter(e => !!e), [masterPage, childCollections]);
39
- const getSectionContent = (columns, components, childPage) => {
40
- let columnIndex = 0;
41
- return columns.flatMap((column, index) => {
42
- let rowIndex = 0;
43
- const columnContent = column.fields?.flatMap(fieldId => {
44
- const componentMatches = components.filter(comp => comp.fieldId === fieldId);
45
- return componentMatches.map(component => {
46
- if (!component || !(0, _showComponent.default)(component, {
47
- ...childPage.formData,
48
- ...entryData
49
- })) {
28
+ var DEFAULT_CLASS = exports.DEFAULT_CLASS = 'hods-form-summary-card-details';
29
+ var SummaryCardDetails = function SummaryCardDetails(_ref) {
30
+ var _masterPage$childPage;
31
+ var masterPage = _ref.masterPage,
32
+ childCollections = _ref.childCollections,
33
+ formData = _ref.formData,
34
+ entryData = _ref.entryData,
35
+ classModifiers = _ref.classModifiers,
36
+ hideChildSectionTitles = _ref.hideChildSectionTitles,
37
+ optionalFieldPlaceholder = _ref.optionalFieldPlaceholder;
38
+ var classes = _utils.default.classBuilder(DEFAULT_CLASS, classModifiers);
39
+ var childMasterPages = (0, _react.useMemo)(function () {
40
+ return childCollections.map(function (childName) {
41
+ return masterPage.childPages.find(function (page) {
42
+ var _page$collection;
43
+ return ((_page$collection = page.collection) === null || _page$collection === void 0 ? void 0 : _page$collection.name) === childName;
44
+ });
45
+ }).filter(function (e) {
46
+ return !!e;
47
+ });
48
+ }, [masterPage, childCollections]);
49
+ var getSectionContent = function getSectionContent(columns, components, childPage) {
50
+ var columnIndex = 0;
51
+ return columns.flatMap(function (column, index) {
52
+ var _column$fields;
53
+ var rowIndex = 0;
54
+ var columnContent = (_column$fields = column.fields) === null || _column$fields === void 0 ? void 0 : _column$fields.flatMap(function (fieldId) {
55
+ var componentMatches = components.filter(function (comp) {
56
+ return comp.fieldId === fieldId;
57
+ });
58
+ return componentMatches.map(function (component) {
59
+ if (!component || !(0, _showComponent.default)(component, _objectSpread(_objectSpread({}, childPage.formData), entryData))) {
50
60
  return null;
51
61
  }
52
62
  if (component.type === _models.ComponentTypes.CONTAINER) {
53
- const containerRows = (0, _getCYARowsForContainer.default)(childPage, component, entryData);
63
+ var containerRows = (0, _getCYARowsForContainer.default)(childPage, component, entryData);
54
64
  rowIndex += 1;
55
65
  return /*#__PURE__*/_react.default.createElement("div", {
56
66
  key: fieldId,
@@ -59,32 +69,21 @@ const SummaryCardDetails = _ref => {
59
69
  '--column': columnIndex + 1,
60
70
  '--row': rowIndex
61
71
  }
62
- }, containerRows.map(subComponent => {
72
+ }, containerRows.map(function (subComponent) {
73
+ var _entryData$component$;
63
74
  // Put value for current subcomponent at top level
64
- const modEntry = {
65
- ...entryData,
66
- ...{
67
- [subComponent.fieldId]: entryData[component.fieldId]?.[subComponent.fieldId]
68
- }
69
- };
70
- return (0, _getSummaryListRowForDetails.default)(childPage, {
71
- ...subComponent,
72
- ...{
73
- label: subComponent.key
74
- }
75
- }, classes, modEntry, optionalFieldPlaceholder);
75
+ var modEntry = _objectSpread(_objectSpread({}, entryData), _defineProperty({}, subComponent.fieldId, (_entryData$component$ = entryData[component.fieldId]) === null || _entryData$component$ === void 0 ? void 0 : _entryData$component$[subComponent.fieldId]));
76
+ return (0, _getSummaryListRowForDetails.default)(childPage, _objectSpread(_objectSpread({}, subComponent), {
77
+ label: subComponent.key
78
+ }), classes, modEntry, optionalFieldPlaceholder);
76
79
  }));
77
80
  }
78
81
  if (component.type === _models.ComponentTypes.COLLECTION) {
79
- const collectionRows = (0, _getCYARowsForCollection.default)({
80
- ...childPage,
81
- formData: {
82
- ...childPage.formData,
83
- ...entryData
84
- }
85
- }, component, entryData[component.id]);
82
+ var collectionRows = (0, _getCYARowsForCollection.default)(_objectSpread(_objectSpread({}, childPage), {}, {
83
+ formData: _objectSpread(_objectSpread({}, childPage.formData), entryData)
84
+ }), component, entryData[component.id]);
86
85
  rowIndex += 1;
87
- let collectionHeadingIndex = 0;
86
+ var collectionHeadingIndex = 0;
88
87
  return /*#__PURE__*/_react.default.createElement("div", {
89
88
  key: fieldId,
90
89
  className: classes('field'),
@@ -92,20 +91,13 @@ const SummaryCardDetails = _ref => {
92
91
  '--column': columnIndex + 1,
93
92
  '--row': rowIndex
94
93
  }
95
- }, collectionRows.map(subComponent => {
94
+ }, collectionRows.map(function (subComponent) {
95
+ var _entryData$component$2;
96
96
  // Put value for current subComponent at the top level
97
- const modEntry = {
98
- ...entryData,
99
- ...{
100
- [subComponent.fieldId]: entryData[component.fieldId]?.[subComponent.fieldId]
101
- }
102
- };
103
- const rowContent = (0, _getSummaryListRowForDetails.default)(childPage, {
104
- ...subComponent,
105
- ...{
106
- label: subComponent.key
107
- }
108
- }, classes, modEntry, optionalFieldPlaceholder);
97
+ var modEntry = _objectSpread(_objectSpread({}, entryData), _defineProperty({}, subComponent.fieldId, (_entryData$component$2 = entryData[component.fieldId]) === null || _entryData$component$2 === void 0 ? void 0 : _entryData$component$2[subComponent.fieldId]));
98
+ var rowContent = (0, _getSummaryListRowForDetails.default)(childPage, _objectSpread(_objectSpread({}, subComponent), {
99
+ label: subComponent.key
100
+ }), classes, modEntry, optionalFieldPlaceholder);
109
101
  // Because collections are flat, we need to identify the subsequent titles (2, 3, 4... etc) in order to apply appropriate spacing
110
102
  if (subComponent.type === 'title') {
111
103
  collectionHeadingIndex += 1;
@@ -130,16 +122,18 @@ const SummaryCardDetails = _ref => {
130
122
  }
131
123
  }, (0, _getSummaryListRowForDetails.default)(childPage, component, classes, entryData, optionalFieldPlaceholder));
132
124
  });
133
- }).filter(e => !!e);
125
+ }).filter(function (e) {
126
+ return !!e;
127
+ });
134
128
  // If the column that's just been generated has anything in it
135
129
  // then we stick a divider on it's right side. The divider isn't
136
130
  // passed rowIndex as it spans all rows. columnIndex is incremented
137
131
  // twice to account for the divider column too.
138
- const lastColumn = index === columns.length - 1;
132
+ var lastColumn = index === columns.length - 1;
139
133
  if (!lastColumn && columnContent.length !== 0) {
140
134
  columnIndex += 2;
141
135
  return [].concat(columnContent, [/*#__PURE__*/_react.default.createElement("div", {
142
- key: `divider${columnIndex}`,
136
+ key: "divider".concat(columnIndex),
143
137
  className: classes('divider'),
144
138
  style: {
145
139
  '--column': columnIndex
@@ -147,61 +141,58 @@ const SummaryCardDetails = _ref => {
147
141
  })]);
148
142
  }
149
143
  return columnContent;
150
- }).filter(e => !!e);
144
+ }).filter(function (e) {
145
+ return !!e;
146
+ });
151
147
  };
152
- return masterPage?.childPages?.filter(p => _utils.default.FormPage.show(p, {
153
- ...formData,
154
- ...entryData
155
- })).map(childPage => {
156
- const allPageComponents = _utils.default.Component.elevateNested(childPage?.components, entryData);
157
- return childPage.summaryLayout?.sections.map(section => {
158
- if (section.show_when && !_utils.default.Condition.meetsAll(section.show_when, {
159
- ...formData,
160
- ...entryData
161
- })) {
148
+ return (masterPage === null || masterPage === void 0 || (_masterPage$childPage = masterPage.childPages) === null || _masterPage$childPage === void 0 ? void 0 : _masterPage$childPage.filter(function (p) {
149
+ return _utils.default.FormPage.show(p, _objectSpread(_objectSpread({}, formData), entryData));
150
+ }).map(function (childPage) {
151
+ var _childPage$summaryLay;
152
+ var allPageComponents = _utils.default.Component.elevateNested(childPage === null || childPage === void 0 ? void 0 : childPage.components, entryData);
153
+ return (_childPage$summaryLay = childPage.summaryLayout) === null || _childPage$summaryLay === void 0 ? void 0 : _childPage$summaryLay.sections.map(function (section) {
154
+ if (section.show_when && !_utils.default.Condition.meetsAll(section.show_when, _objectSpread(_objectSpread({}, formData), entryData))) {
162
155
  return null;
163
156
  }
164
157
  if (section.type === 'childCollection') {
165
- const childMasterPage = childMasterPages.find(p => p.collection.name === section.collectionName);
166
- const childFormData = entryData[section.collectionName.split('.').pop()] || [];
158
+ var childMasterPage = childMasterPages.find(function (p) {
159
+ return p.collection.name === section.collectionName;
160
+ });
161
+ var childFormData = entryData[section.collectionName.split('.').pop()] || [];
167
162
  if (childMasterPage && childFormData.length > 0) {
168
163
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("h3", {
169
164
  className: classes('section-title')
170
- }, section.title), childFormData.map(entry => /*#__PURE__*/_react.default.createElement(SummaryCardDetails, {
171
- masterPage: childMasterPage,
172
- childMasterPages: [],
173
- formData: {
174
- ...formData,
175
- ...entryData,
176
- ...entry
177
- },
178
- entryData: entry,
179
- hideChildSectionTitles: true,
180
- optionalFieldPlaceholder: optionalFieldPlaceholder
181
- })));
165
+ }, section.title), childFormData.map(function (entry) {
166
+ return /*#__PURE__*/_react.default.createElement(SummaryCardDetails, {
167
+ masterPage: childMasterPage,
168
+ childMasterPages: [],
169
+ formData: _objectSpread(_objectSpread(_objectSpread({}, formData), entryData), entry),
170
+ entryData: entry,
171
+ hideChildSectionTitles: true,
172
+ optionalFieldPlaceholder: optionalFieldPlaceholder
173
+ });
174
+ }));
182
175
  }
183
176
  return null;
184
177
  }
185
- const columns = section.columns.filter(column => _Condition.default.meetsAll(column, {
186
- ...childPage.formData,
187
- ...entryData
188
- }));
178
+ var columns = section.columns.filter(function (column) {
179
+ return _Condition.default.meetsAll(column, _objectSpread(_objectSpread({}, childPage.formData), entryData));
180
+ });
189
181
  return /*#__PURE__*/_react.default.createElement("div", {
190
182
  key: section.title,
191
183
  className: classes('section')
192
184
  }, !hideChildSectionTitles && /*#__PURE__*/_react.default.createElement("h3", {
193
185
  className: classes('section-title')
194
- }, _utils.default.FormPage.getConditionalText(section.title, {
195
- ...childPage.formData,
196
- ...entryData
197
- })), /*#__PURE__*/_react.default.createElement("dl", {
186
+ }, _utils.default.FormPage.getConditionalText(section.title, _objectSpread(_objectSpread({}, childPage.formData), entryData))), /*#__PURE__*/_react.default.createElement("dl", {
198
187
  className: classes('section-content'),
199
188
  style: {
200
189
  '--dividers': columns.length - 1
201
190
  }
202
191
  }, getSectionContent(columns, allPageComponents, childPage)));
203
192
  });
204
- }).filter(e => !!e) || null;
193
+ }).filter(function (e) {
194
+ return !!e;
195
+ })) || null;
205
196
  };
206
197
  SummaryCardDetails.propTypes = {
207
198
  childCollections: _propTypes.default.arrayOf(_propTypes.default.string),