@ukhomeoffice/cop-react-form-renderer 6.7.0-alpha → 6.11.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (372) hide show
  1. package/dist/components/CheckYourAnswers/Answer.js +22 -16
  2. package/dist/components/CheckYourAnswers/Answer.test.js +180 -92
  3. package/dist/components/CheckYourAnswers/CheckYourAnswers.js +137 -103
  4. package/dist/components/CheckYourAnswers/CheckYourAnswers.test.js +861 -463
  5. package/dist/components/CollectionPage/CollectionPage.js +63 -73
  6. package/dist/components/CollectionPage/CollectionPage.test.js +366 -316
  7. package/dist/components/CollectionSummary/BannerStrip.js +13 -13
  8. package/dist/components/CollectionSummary/BannerStrip.test.js +76 -80
  9. package/dist/components/CollectionSummary/CollectionSummary.js +126 -99
  10. package/dist/components/CollectionSummary/CollectionSummary.test.js +188 -152
  11. package/dist/components/CollectionSummary/Confirmation.js +12 -14
  12. package/dist/components/CollectionSummary/Confirmation.test.js +63 -68
  13. package/dist/components/CollectionSummary/RenderListView.js +52 -46
  14. package/dist/components/CollectionSummary/RenderListView.scss +1 -1
  15. package/dist/components/CollectionSummary/RenderListView.test.js +77 -78
  16. package/dist/components/CollectionSummary/SummaryCard.js +152 -110
  17. package/dist/components/CollectionSummary/SummaryCard.test.js +1018 -929
  18. package/dist/components/CollectionSummary/SummaryCardDetails.js +137 -94
  19. package/dist/components/CollectionSummary/SummaryCardDetails.scss +13 -4
  20. package/dist/components/CollectionSummary/SummaryCardDetails.test.js +331 -128
  21. package/dist/components/CollectionSummary/SummaryCardValidationContext.js +35 -30
  22. package/dist/components/CollectionSummary/SummaryCardValidationContext.test.js +74 -62
  23. package/dist/components/FormComponent/Collection.js +108 -74
  24. package/dist/components/FormComponent/Collection.test.js +1081 -909
  25. package/dist/components/FormComponent/Container.js +39 -40
  26. package/dist/components/FormComponent/Container.test.js +412 -312
  27. package/dist/components/FormComponent/FormComponent.js +72 -69
  28. package/dist/components/FormComponent/FormComponent.test.js +414 -353
  29. package/dist/components/FormComponent/helpers/addLabel.js +7 -4
  30. package/dist/components/FormComponent/helpers/getComponentDisabled.js +1 -1
  31. package/dist/components/FormComponent/helpers/getComponentDisabled.test.js +7 -7
  32. package/dist/components/FormComponent/helpers/getComponentError.js +5 -3
  33. package/dist/components/FormComponent/helpers/getComponentError.test.js +14 -14
  34. package/dist/components/FormComponent/helpers/getComponentFieldSet.js +4 -3
  35. package/dist/components/FormComponent/helpers/getComponentFieldSet.test.js +6 -6
  36. package/dist/components/FormComponent/helpers/index.js +4 -4
  37. package/dist/components/FormPage/FormPage.js +80 -65
  38. package/dist/components/FormPage/FormPage.test.js +163 -127
  39. package/dist/components/FormRenderer/FormRenderer.js +180 -143
  40. package/dist/components/FormRenderer/FormRenderer.test.js +1115 -730
  41. package/dist/components/FormRenderer/handlers/cyaAction.js +2 -2
  42. package/dist/components/FormRenderer/handlers/getPageId.js +3 -1
  43. package/dist/components/FormRenderer/handlers/getPageId.test.js +14 -14
  44. package/dist/components/FormRenderer/handlers/handlers.test.js +32 -32
  45. package/dist/components/FormRenderer/handlers/index.js +1 -1
  46. package/dist/components/FormRenderer/handlers/navigate.js +3 -3
  47. package/dist/components/FormRenderer/handlers/submissionError.js +1 -1
  48. package/dist/components/FormRenderer/helpers/canActionProceed.js +1 -1
  49. package/dist/components/FormRenderer/helpers/canActionProceed.test.js +15 -15
  50. package/dist/components/FormRenderer/helpers/canCYASubmit.js +3 -1
  51. package/dist/components/FormRenderer/helpers/canCYASubmit.test.js +20 -16
  52. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.js +22 -17
  53. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.test.js +16 -16
  54. package/dist/components/FormRenderer/helpers/getCYA.js +5 -3
  55. package/dist/components/FormRenderer/helpers/getCYA.test.js +11 -11
  56. package/dist/components/FormRenderer/helpers/getFormState.js +7 -5
  57. package/dist/components/FormRenderer/helpers/getFormState.test.js +10 -10
  58. package/dist/components/FormRenderer/helpers/getNextPageId.js +24 -13
  59. package/dist/components/FormRenderer/helpers/getNextPageId.test.js +67 -67
  60. package/dist/components/FormRenderer/helpers/getPage.js +4 -2
  61. package/dist/components/FormRenderer/helpers/getPage.test.js +11 -11
  62. package/dist/components/FormRenderer/helpers/getRelevantPages.js +9 -7
  63. package/dist/components/FormRenderer/helpers/getRelevantPages.test.js +14 -14
  64. package/dist/components/FormRenderer/helpers/getSubmissionStatus.js +5 -5
  65. package/dist/components/FormRenderer/helpers/getSubmissionStatus.test.js +97 -103
  66. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.js +60 -62
  67. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.test.js +78 -71
  68. package/dist/components/FormRenderer/helpers/index.js +1 -1
  69. package/dist/components/FormRenderer/onCYAAction.js +51 -59
  70. package/dist/components/FormRenderer/onCYAAction.test.js +152 -164
  71. package/dist/components/FormRenderer/onPageAction.js +39 -43
  72. package/dist/components/FormRenderer/onPageAction.test.js +208 -223
  73. package/dist/components/FormRenderer/onTaskAction.js +13 -9
  74. package/dist/components/FormRenderer/onTaskAction.test.js +88 -93
  75. package/dist/components/PageActions/ActionButton.js +15 -12
  76. package/dist/components/PageActions/ActionButton.test.js +78 -56
  77. package/dist/components/PageActions/PageActions.js +10 -10
  78. package/dist/components/PageActions/PageActions.test.js +115 -86
  79. package/dist/components/SummaryList/GroupAction.js +17 -9
  80. package/dist/components/SummaryList/GroupAction.test.js +33 -37
  81. package/dist/components/SummaryList/RowAction.js +16 -11
  82. package/dist/components/SummaryList/RowAction.test.js +33 -37
  83. package/dist/components/SummaryList/SummaryList.js +34 -21
  84. package/dist/components/SummaryList/SummaryList.scss +15 -0
  85. package/dist/components/SummaryList/SummaryList.test.js +226 -143
  86. package/dist/components/SummaryList/SummaryListHeadingRow.js +4 -6
  87. package/dist/components/SummaryList/SummaryListHeadingRowWithAction.js +53 -0
  88. package/dist/components/SummaryList/SummaryListHeadingRowWithAction.scss +38 -0
  89. package/dist/components/SummaryList/SummaryListRow.js +4 -6
  90. package/dist/components/SummaryList/SummaryListTitleRow.js +3 -5
  91. package/dist/components/SummaryList/helpers/getGroupActionAttributes.js +5 -3
  92. package/dist/components/SummaryList/helpers/getGroupActionAttributes.test.js +22 -22
  93. package/dist/components/SummaryList/helpers/getRowActionAttributes.js +5 -3
  94. package/dist/components/SummaryList/helpers/getRowActionAttributes.test.js +22 -22
  95. package/dist/components/SummaryList/helpers/index.js +1 -1
  96. package/dist/components/TaskList/Task.js +29 -19
  97. package/dist/components/TaskList/Task.test.js +76 -83
  98. package/dist/components/TaskList/TaskList.js +92 -49
  99. package/dist/components/TaskList/TaskList.scss +24 -0
  100. package/dist/components/TaskList/TaskList.test.js +255 -113
  101. package/dist/components/TaskList/TaskState.js +5 -7
  102. package/dist/components/TaskList/TaskState.test.js +45 -52
  103. package/dist/components/index.js +7 -7
  104. package/dist/context/HooksContext/HooksContext.js +80 -57
  105. package/dist/context/HooksContext/HooksContext.test.js +35 -26
  106. package/dist/context/HooksContext/index.js +4 -3
  107. package/dist/context/ValidationContext/ValidationContext.js +94 -43
  108. package/dist/context/ValidationContext/ValidationContext.test.js +68 -56
  109. package/dist/context/ValidationContext/index.js +4 -3
  110. package/dist/context/index.js +2 -2
  111. package/dist/hooks/index.js +10 -9
  112. package/dist/hooks/useAxios.js +40 -14
  113. package/dist/hooks/useGetRequest.js +97 -61
  114. package/dist/hooks/useHooks.js +3 -1
  115. package/dist/hooks/useRefData.js +39 -26
  116. package/dist/hooks/useValidation.js +3 -1
  117. package/dist/index.js +14 -13
  118. package/dist/models/CollectionLabels.js +1 -1
  119. package/dist/models/ComponentTypes.js +25 -25
  120. package/dist/models/EventTypes.js +4 -4
  121. package/dist/models/FormPages.js +4 -4
  122. package/dist/models/FormTypes.js +8 -8
  123. package/dist/models/HubFormats.js +3 -3
  124. package/dist/models/PageAction.js +38 -44
  125. package/dist/models/TaskStates.js +28 -29
  126. package/dist/models/index.js +9 -9
  127. package/dist/setupTests.js +31 -30
  128. package/dist/utils/CheckYourAnswers/getCYAAction.js +5 -5
  129. package/dist/utils/CheckYourAnswers/getCYAAction.test.js +54 -52
  130. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.js +25 -15
  131. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.test.js +35 -33
  132. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.js +31 -17
  133. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.test.js +44 -42
  134. package/dist/utils/CheckYourAnswers/getCYARow.js +6 -6
  135. package/dist/utils/CheckYourAnswers/getCYARow.test.js +86 -86
  136. package/dist/utils/CheckYourAnswers/getCYARowForGroup.js +24 -18
  137. package/dist/utils/CheckYourAnswers/getCYARowForGroup.test.js +16 -15
  138. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.js +36 -33
  139. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.test.js +61 -58
  140. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.js +108 -87
  141. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.test.js +281 -162
  142. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.js +20 -25
  143. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.test.js +97 -103
  144. package/dist/utils/CheckYourAnswers/getCYARowsForPage.js +18 -13
  145. package/dist/utils/CheckYourAnswers/getCYARowsForPage.test.js +76 -70
  146. package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.js +42 -0
  147. package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.test.js +56 -0
  148. package/dist/utils/CheckYourAnswers/index.js +1 -1
  149. package/dist/utils/CheckYourAnswers/showComponentCYA.js +4 -4
  150. package/dist/utils/CheckYourAnswers/showComponentCYA.test.js +25 -25
  151. package/dist/utils/CollectionPage/addCollectionPageEntry.js +2 -2
  152. package/dist/utils/CollectionPage/addCollectionPageEntry.test.js +5 -5
  153. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.js +2 -2
  154. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.test.js +18 -17
  155. package/dist/utils/CollectionPage/duplicateCollectionPageEntry.js +22 -12
  156. package/dist/utils/CollectionPage/duplicateCollectionPageEntry.test.js +38 -47
  157. package/dist/utils/CollectionPage/getCollectionPageActiveId.js +2 -2
  158. package/dist/utils/CollectionPage/getCollectionPageActiveId.test.js +10 -10
  159. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.js +11 -7
  160. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.test.js +22 -22
  161. package/dist/utils/CollectionPage/getCollectionPageData.js +12 -8
  162. package/dist/utils/CollectionPage/getCollectionPageData.test.js +19 -19
  163. package/dist/utils/CollectionPage/getErrorsForCollection.js +24 -24
  164. package/dist/utils/CollectionPage/getErrorsForCollection.test.js +22 -20
  165. package/dist/utils/CollectionPage/getQuickEditPage.js +31 -35
  166. package/dist/utils/CollectionPage/getQuickEditPage.test.js +27 -15
  167. package/dist/utils/CollectionPage/index.js +1 -1
  168. package/dist/utils/CollectionPage/mergeCollectionPages.js +43 -31
  169. package/dist/utils/CollectionPage/mergeCollectionPages.test.js +26 -26
  170. package/dist/utils/CollectionPage/removeCollectionPageEntry.js +6 -4
  171. package/dist/utils/CollectionPage/removeCollectionPageEntry.test.js +10 -10
  172. package/dist/utils/CollectionPage/setCollectionPageData.js +16 -10
  173. package/dist/utils/CollectionPage/setCollectionPageData.test.js +24 -24
  174. package/dist/utils/Component/addShowWhen.js +8 -4
  175. package/dist/utils/Component/addShowWhen.test.js +37 -37
  176. package/dist/utils/Component/applyToComponentTree.js +18 -18
  177. package/dist/utils/Component/applyToComponentTree.test.js +32 -27
  178. package/dist/utils/Component/cleanAttributes.js +13 -10
  179. package/dist/utils/Component/cleanAttributes.test.js +18 -17
  180. package/dist/utils/Component/elevateNestedComponents.js +7 -6
  181. package/dist/utils/Component/elevateNestedComponents.test.js +68 -30
  182. package/dist/utils/Component/getComponent.js +94 -88
  183. package/dist/utils/Component/getComponentTests/getComponent.autocomplete.test.js +17 -18
  184. package/dist/utils/Component/getComponentTests/getComponent.calculation.test.js +59 -46
  185. package/dist/utils/Component/getComponentTests/getComponent.checkboxes.test.js +48 -39
  186. package/dist/utils/Component/getComponentTests/getComponent.date.test.js +33 -23
  187. package/dist/utils/Component/getComponentTests/getComponent.details.test.js +18 -20
  188. package/dist/utils/Component/getComponentTests/getComponent.email.test.js +22 -17
  189. package/dist/utils/Component/getComponentTests/getComponent.file.test.js +25 -20
  190. package/dist/utils/Component/getComponentTests/getComponent.heading.test.js +9 -10
  191. package/dist/utils/Component/getComponentTests/getComponent.html.test.js +15 -17
  192. package/dist/utils/Component/getComponentTests/getComponent.insetText.test.js +8 -9
  193. package/dist/utils/Component/getComponentTests/getComponent.list.test.js +15 -17
  194. package/dist/utils/Component/getComponentTests/getComponent.multifile.test.js +26 -22
  195. package/dist/utils/Component/getComponentTests/getComponent.nested.test.js +175 -155
  196. package/dist/utils/Component/getComponentTests/getComponent.paragraph.test.js +15 -17
  197. package/dist/utils/Component/getComponentTests/getComponent.phoneNumber.test.js +22 -17
  198. package/dist/utils/Component/getComponentTests/getComponent.radios.test.js +72 -57
  199. package/dist/utils/Component/getComponentTests/getComponent.select.test.js +22 -17
  200. package/dist/utils/Component/getComponentTests/getComponent.text.test.js +22 -17
  201. package/dist/utils/Component/getComponentTests/getComponent.textArea.test.js +38 -31
  202. package/dist/utils/Component/getComponentTests/getComponent.time.test.js +29 -20
  203. package/dist/utils/Component/getComponentTests/getComponent.unknown.test.js +2 -2
  204. package/dist/utils/Component/getComponentTests/getComponent.warningText.test.js +8 -9
  205. package/dist/utils/Component/getDefaultValue.js +8 -6
  206. package/dist/utils/Component/getDefaultValue.test.js +12 -12
  207. package/dist/utils/Component/getDefaultValueFromConfig.js +21 -22
  208. package/dist/utils/Component/getDefaultValueFromConfig.test.js +31 -31
  209. package/dist/utils/Component/index.js +1 -1
  210. package/dist/utils/Component/isEditable.js +4 -2
  211. package/dist/utils/Component/isEditable.test.js +15 -14
  212. package/dist/utils/Component/optionIsSelected.js +6 -1
  213. package/dist/utils/Component/optionIsSelected.test.js +35 -9
  214. package/dist/utils/Component/setupContainerComponentsPath.js +29 -27
  215. package/dist/utils/Component/setupContainerComponentsPath.test.js +11 -11
  216. package/dist/utils/Component/showComponent.js +1 -1
  217. package/dist/utils/Component/showComponent.test.js +28 -28
  218. package/dist/utils/Component/wrapInFormGroup.js +2 -2
  219. package/dist/utils/Condition/index.js +1 -1
  220. package/dist/utils/Condition/meetsAllConditions.js +8 -8
  221. package/dist/utils/Condition/meetsAllConditions.test.js +20 -20
  222. package/dist/utils/Condition/meetsCondition.js +25 -16
  223. package/dist/utils/Condition/meetsCondition.test.js +402 -402
  224. package/dist/utils/Condition/meetsOneCondition.js +5 -5
  225. package/dist/utils/Condition/meetsOneCondition.test.js +16 -16
  226. package/dist/utils/Condition/setupConditions.js +18 -13
  227. package/dist/utils/Condition/setupConditions.test.js +7 -7
  228. package/dist/utils/Container/getEditableComponents.js +5 -3
  229. package/dist/utils/Container/getEditableComponents.test.js +45 -43
  230. package/dist/utils/Container/index.js +1 -1
  231. package/dist/utils/Container/setupNesting.js +20 -16
  232. package/dist/utils/Container/setupNesting.test.js +30 -27
  233. package/dist/utils/Container/showContainer.js +7 -3
  234. package/dist/utils/Container/showContainer.test.js +30 -30
  235. package/dist/utils/Data/applyFormula.js +48 -38
  236. package/dist/utils/Data/applyFormula.test.js +20 -20
  237. package/dist/utils/Data/getAutocompleteSource.js +26 -18
  238. package/dist/utils/Data/getAutocompleteSource.test.js +86 -80
  239. package/dist/utils/Data/getDataPath.js +28 -18
  240. package/dist/utils/Data/getDataPath.test.js +12 -12
  241. package/dist/utils/Data/getOptions.js +30 -24
  242. package/dist/utils/Data/getOptions.test.js +27 -27
  243. package/dist/utils/Data/getSourceData.js +19 -6
  244. package/dist/utils/Data/getSourceData.test.js +80 -84
  245. package/dist/utils/Data/index.js +1 -1
  246. package/dist/utils/Data/nestInRefdataOptions.js +16 -9
  247. package/dist/utils/Data/nestInRefdataOptions.test.js +16 -16
  248. package/dist/utils/Data/refDataToOptions.js +13 -10
  249. package/dist/utils/Data/refDataToOptions.test.js +19 -19
  250. package/dist/utils/Data/setDataItem.js +8 -7
  251. package/dist/utils/Data/setDataItem.test.js +37 -37
  252. package/dist/utils/Data/setupFormData.js +21 -13
  253. package/dist/utils/Data/setupFormData.test.js +50 -51
  254. package/dist/utils/Data/setupRefDataUrlForComponent.js +26 -20
  255. package/dist/utils/Data/setupRefDataUrlForComponent.test.js +24 -24
  256. package/dist/utils/FormPage/applyConditionalProperties.js +9 -5
  257. package/dist/utils/FormPage/applyConditionalProperties.test.js +18 -15
  258. package/dist/utils/FormPage/getConditionalText.js +3 -3
  259. package/dist/utils/FormPage/getConditionalText.test.js +29 -29
  260. package/dist/utils/FormPage/getFormPage.js +16 -15
  261. package/dist/utils/FormPage/getFormPage.test.js +46 -47
  262. package/dist/utils/FormPage/getFormPages.js +12 -7
  263. package/dist/utils/FormPage/getFormPages.test.js +23 -20
  264. package/dist/utils/FormPage/getPageActions.js +15 -9
  265. package/dist/utils/FormPage/getPageActions.test.js +32 -32
  266. package/dist/utils/FormPage/getParagraphFromText.js +7 -5
  267. package/dist/utils/FormPage/getParagraphFromText.test.js +6 -6
  268. package/dist/utils/FormPage/index.js +4 -2
  269. package/dist/utils/FormPage/showFormPage.js +7 -3
  270. package/dist/utils/FormPage/showFormPage.test.js +32 -32
  271. package/dist/utils/FormPage/showFormPageCYA.js +1 -1
  272. package/dist/utils/FormPage/showFormPageCYA.test.js +8 -8
  273. package/dist/utils/FormPage/useComponent.js +28 -21
  274. package/dist/utils/FormPage/useComponent.test.js +79 -77
  275. package/dist/utils/Format/formatData.js +1 -1
  276. package/dist/utils/Format/formatData.test.js +18 -18
  277. package/dist/utils/Format/formatDataForComponent.js +6 -5
  278. package/dist/utils/Format/formatDataForComponent.test.js +78 -50
  279. package/dist/utils/Format/formatDataForForm.js +8 -6
  280. package/dist/utils/Format/formatDataForForm.test.js +16 -13
  281. package/dist/utils/Format/formatDataForPage.js +5 -4
  282. package/dist/utils/Format/formatDataForPage.test.js +25 -20
  283. package/dist/utils/Format/index.js +1 -1
  284. package/dist/utils/Hub/getFormHub.js +1 -1
  285. package/dist/utils/Hub/getFormHub.test.js +31 -28
  286. package/dist/utils/Hub/index.js +1 -1
  287. package/dist/utils/Meta/constants.js +2 -2
  288. package/dist/utils/Meta/documents/getDocuments.js +1 -1
  289. package/dist/utils/Meta/documents/getDocuments.test.js +16 -24
  290. package/dist/utils/Meta/documents/index.js +1 -1
  291. package/dist/utils/Meta/documents/setDocumentsForField.js +16 -14
  292. package/dist/utils/Meta/documents/setDocumentsForField.test.js +34 -68
  293. package/dist/utils/Meta/index.js +1 -1
  294. package/dist/utils/Operate/checkValueIsTruthy.js +2 -2
  295. package/dist/utils/Operate/checkValueIsTruthy.test.js +16 -16
  296. package/dist/utils/Operate/getFirstOf.js +5 -5
  297. package/dist/utils/Operate/getFirstOf.test.js +31 -31
  298. package/dist/utils/Operate/getIndexOfMatchingValueIn.js +10 -10
  299. package/dist/utils/Operate/getIndexOfMatchingValueIn.test.js +52 -46
  300. package/dist/utils/Operate/getLength.js +50 -0
  301. package/dist/utils/Operate/getLength.test.js +89 -0
  302. package/dist/utils/Operate/index.js +1 -1
  303. package/dist/utils/Operate/persistValueInFormData.js +3 -3
  304. package/dist/utils/Operate/persistValueInFormData.test.js +20 -22
  305. package/dist/utils/Operate/runPageOperations.js +9 -7
  306. package/dist/utils/Operate/runPageOperations.test.js +36 -35
  307. package/dist/utils/Operate/setValueInFormData.js +2 -2
  308. package/dist/utils/Operate/setValueInFormData.test.js +16 -16
  309. package/dist/utils/Operate/shouldRun.js +6 -6
  310. package/dist/utils/Operate/shouldRun.test.js +27 -21
  311. package/dist/utils/Validate/additional/conditionallyRequired.js +4 -4
  312. package/dist/utils/Validate/additional/conditionallyRequired.test.js +18 -18
  313. package/dist/utils/Validate/additional/index.js +6 -6
  314. package/dist/utils/Validate/additional/index.test.js +12 -12
  315. package/dist/utils/Validate/additional/mustBeAfter.js +2 -2
  316. package/dist/utils/Validate/additional/mustBeAfter.test.js +40 -40
  317. package/dist/utils/Validate/additional/mustBeBefore.js +2 -2
  318. package/dist/utils/Validate/additional/mustBeBefore.test.js +28 -28
  319. package/dist/utils/Validate/additional/mustBeEarlierDateTime.js +11 -7
  320. package/dist/utils/Validate/additional/mustBeEarlierDateTime.test.js +41 -37
  321. package/dist/utils/Validate/additional/mustBeGreaterThan.js +2 -2
  322. package/dist/utils/Validate/additional/mustBeGreaterThan.test.js +18 -18
  323. package/dist/utils/Validate/additional/mustBeInTheFuture.js +2 -2
  324. package/dist/utils/Validate/additional/mustBeInTheFuture.test.js +12 -12
  325. package/dist/utils/Validate/additional/mustBeInThePast.js +3 -3
  326. package/dist/utils/Validate/additional/mustBeInThePast.test.js +12 -12
  327. package/dist/utils/Validate/additional/mustBeLessThan.js +2 -2
  328. package/dist/utils/Validate/additional/mustBeLessThan.test.js +17 -17
  329. package/dist/utils/Validate/additional/mustBeLongerThan.js +1 -1
  330. package/dist/utils/Validate/additional/mustBeLongerThan.test.js +16 -16
  331. package/dist/utils/Validate/additional/mustBeNumbersOnly.js +2 -2
  332. package/dist/utils/Validate/additional/mustBeNumbersOnly.test.js +20 -20
  333. package/dist/utils/Validate/additional/mustBeShorterThan.js +1 -1
  334. package/dist/utils/Validate/additional/mustBeShorterThan.test.js +16 -16
  335. package/dist/utils/Validate/additional/mustBeUniqueInCollection.js +4 -4
  336. package/dist/utils/Validate/additional/mustBeUniqueInCollection.test.js +39 -35
  337. package/dist/utils/Validate/additional/mustEnterAtLeastOne.js +2 -2
  338. package/dist/utils/Validate/additional/mustEnterAtLeastOne.test.js +16 -14
  339. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.js +1 -1
  340. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.test.js +12 -12
  341. package/dist/utils/Validate/additional/mustNotContainSql.js +4 -3
  342. package/dist/utils/Validate/additional/mustNotContainSql.test.js +14 -14
  343. package/dist/utils/Validate/additional/mustSelectOnlyOne.js +2 -2
  344. package/dist/utils/Validate/additional/mustSelectOnlyOne.test.js +26 -28
  345. package/dist/utils/Validate/additional/utils.js +22 -9
  346. package/dist/utils/Validate/index.js +1 -1
  347. package/dist/utils/Validate/validateCollection.js +25 -19
  348. package/dist/utils/Validate/validateCollection.test.js +66 -74
  349. package/dist/utils/Validate/validateComponent.js +21 -18
  350. package/dist/utils/Validate/validateComponent.test.js +176 -166
  351. package/dist/utils/Validate/validateContainer.js +20 -15
  352. package/dist/utils/Validate/validateContainer.test.js +52 -58
  353. package/dist/utils/Validate/validateDate.js +21 -15
  354. package/dist/utils/Validate/validateDate.test.js +32 -31
  355. package/dist/utils/Validate/validateEmail.js +8 -6
  356. package/dist/utils/Validate/validateEmail.test.js +25 -25
  357. package/dist/utils/Validate/validateMultifile.js +7 -5
  358. package/dist/utils/Validate/validateMultifile.test.js +18 -17
  359. package/dist/utils/Validate/validatePage.js +22 -19
  360. package/dist/utils/Validate/validatePage.test.js +203 -215
  361. package/dist/utils/Validate/validateRegex.js +5 -3
  362. package/dist/utils/Validate/validateRegex.test.js +14 -14
  363. package/dist/utils/Validate/validateRequired.js +6 -4
  364. package/dist/utils/Validate/validateRequired.test.js +18 -18
  365. package/dist/utils/Validate/validateTextArea.js +6 -4
  366. package/dist/utils/Validate/validateTextArea.test.js +20 -20
  367. package/dist/utils/Validate/validateTime.js +26 -11
  368. package/dist/utils/Validate/validateTime.test.js +62 -16
  369. package/dist/utils/index.js +9 -7
  370. package/package.json +2 -2
  371. package/dist/utils/CheckYourAnswers/getComponentRowForCYA.js +0 -37
  372. package/dist/utils/CheckYourAnswers/getComponentRowForCYA.test.js +0 -41
@@ -4,6 +4,12 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
+ 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); }
8
+ 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; }
9
+ 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; }
10
+ 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; }
11
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
12
+ 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); }
7
13
  /* eslint-disable no-param-reassign */
8
14
 
9
15
  /*
@@ -22,27 +28,21 @@ exports.default = void 0;
22
28
  * - The master page for a child collection, with its own array of child pages.
23
29
  */
24
30
 
25
- const createMasterPage = page => ({
26
- id: page.id,
27
- name: page.name,
28
- collection: {
29
- masterPage: true,
30
- ...page.collection
31
- },
32
- formData: {
33
- ...page.formData
34
- },
35
- childPages: [page]
36
- });
37
- const mergeIntoMasterPage = (page, masterPage) => {
38
- masterPage.collection = {
39
- ...masterPage.collection,
40
- ...page.collection
41
- };
42
- masterPage.formData = {
43
- ...masterPage.formData,
44
- ...page.formData
31
+ var createMasterPage = function createMasterPage(page) {
32
+ return {
33
+ id: page.id,
34
+ name: page.name,
35
+ orderInForm: page.orderInForm,
36
+ collection: _objectSpread({
37
+ masterPage: true
38
+ }, page.collection),
39
+ formData: _objectSpread({}, page.formData),
40
+ childPages: [page]
45
41
  };
42
+ };
43
+ var mergeIntoMasterPage = function mergeIntoMasterPage(page, masterPage) {
44
+ masterPage.collection = _objectSpread(_objectSpread({}, masterPage.collection), page.collection);
45
+ masterPage.formData = _objectSpread(_objectSpread({}, masterPage.formData), page.formData);
46
46
  masterPage.childPages = [].concat(masterPage.childPages, [page]);
47
47
  };
48
48
 
@@ -54,14 +54,14 @@ const mergeIntoMasterPage = (page, masterPage) => {
54
54
  * @returns true if page belonged to a child collection and was successfully
55
55
  * nested. false if it isn't in a child collection or failed to be nested.
56
56
  */
57
- const nestUnderParent = (childPage, masterPages) => {
58
- const names = childPage.collection.name.split('.');
57
+ var nestUnderParent = function nestUnderParent(childPage, masterPages) {
58
+ var names = childPage.collection.name.split('.');
59
59
  if (names.length === 1) {
60
60
  return false;
61
61
  }
62
62
  names.pop();
63
- const parentName = names.join('.');
64
- const parentPage = masterPages[parentName] || null;
63
+ var parentName = names.join('.');
64
+ var parentPage = masterPages[parentName] || null;
65
65
  if (!parentPage) {
66
66
  // Something had gone wrong if we're here - parent collection pages
67
67
  // should always be defined before their children, so the parent master
@@ -69,6 +69,12 @@ const nestUnderParent = (childPage, masterPages) => {
69
69
  return false;
70
70
  }
71
71
  parentPage.childPages.push(childPage);
72
+
73
+ // Sort the pages to make sure they're in the same order
74
+ // they were in on the form.
75
+ parentPage.childPages.sort(function (a, b) {
76
+ return a.orderInForm - b.orderInForm;
77
+ });
72
78
  return true;
73
79
  };
74
80
 
@@ -83,15 +89,16 @@ const nestUnderParent = (childPage, masterPages) => {
83
89
  * @param { array } pages Array of pages in the form.
84
90
  * @returns An array of the same pages, with a master page for each collection.
85
91
  */
86
- const mergeCollectionPages = pages => {
87
- const masterPages = {};
88
- const pagesWithMasters = pages.map(page => {
92
+ var mergeCollectionPages = function mergeCollectionPages(pages) {
93
+ var masterPages = {};
94
+ var pagesWithMasters = pages.map(function (page, index) {
89
95
  var _page$collection;
96
+ page.orderInForm = index;
90
97
  if (page !== null && page !== void 0 && (_page$collection = page.collection) !== null && _page$collection !== void 0 && _page$collection.name) {
91
98
  if (!masterPages[page.collection.name]) {
92
99
  // If no master page exists for this collection.name, then
93
100
  // we kick one off using this page as a template.
94
- const newMasterPage = createMasterPage(page);
101
+ var newMasterPage = createMasterPage(page);
95
102
  masterPages[page.collection.name] = newMasterPage;
96
103
  return newMasterPage;
97
104
  }
@@ -102,16 +109,21 @@ const mergeCollectionPages = pages => {
102
109
  return null;
103
110
  }
104
111
  return page;
105
- }).filter(page => !!page);
112
+ }).filter(function (page) {
113
+ return !!page;
114
+ });
115
+
106
116
  // We nest any child master pages under their parents here to
107
117
  // ensure that all parent master pages have been created by the
108
118
  // above code first.
109
- return pagesWithMasters.map(page => {
119
+ return pagesWithMasters.map(function (page) {
110
120
  var _page$collection2;
111
121
  if ((_page$collection2 = page.collection) !== null && _page$collection2 !== void 0 && _page$collection2.masterPage) {
112
122
  return nestUnderParent(page, masterPages) ? null : page;
113
123
  }
114
124
  return page;
115
- }).filter(e => !!e);
125
+ }).filter(function (e) {
126
+ return !!e;
127
+ });
116
128
  };
117
129
  var _default = exports.default = mergeCollectionPages;
@@ -4,27 +4,27 @@ var _mergeCollectionPages = _interopRequireDefault(require("./mergeCollectionPag
4
4
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5
5
  // Local imports
6
6
 
7
- describe('utils.CollectionPage.mergeCollectionPages', () => {
8
- const TEXT_COMP = {
7
+ describe('utils.CollectionPage.mergeCollectionPages', function () {
8
+ var TEXT_COMP = {
9
9
  id: 'testText',
10
10
  fieldId: 'testText',
11
11
  type: 'text'
12
12
  };
13
- const DATE_COMP = {
13
+ var DATE_COMP = {
14
14
  id: 'testDate',
15
15
  fieldId: 'testDate',
16
16
  type: 'date'
17
17
  };
18
- it('should return the same array if no pages belong to collections', () => {
19
- const PAGES = [{
18
+ it('should return the same array if no pages belong to collections', function () {
19
+ var PAGES = [{
20
20
  id: 'page1'
21
21
  }, {
22
22
  id: 'page2'
23
23
  }];
24
24
  expect((0, _mergeCollectionPages.default)(PAGES)).toEqual(PAGES);
25
25
  });
26
- it('should merge pages from the same collection into a single page', () => {
27
- const PAGES = [{
26
+ it('should merge pages from the same collection into a single page', function () {
27
+ var PAGES = [{
28
28
  id: 'page1',
29
29
  collection: {
30
30
  name: 'collection'
@@ -37,7 +37,7 @@ describe('utils.CollectionPage.mergeCollectionPages', () => {
37
37
  },
38
38
  components: [DATE_COMP]
39
39
  }];
40
- const RESULT = (0, _mergeCollectionPages.default)(PAGES);
40
+ var RESULT = (0, _mergeCollectionPages.default)(PAGES);
41
41
  expect(RESULT.length).toEqual(1);
42
42
  expect(RESULT[0]).toMatchObject({
43
43
  id: 'page1',
@@ -49,8 +49,8 @@ describe('utils.CollectionPage.mergeCollectionPages', () => {
49
49
  childPages: PAGES
50
50
  });
51
51
  });
52
- it('should correctly merge and nest child collection pages under their parents', () => {
53
- const PAGES = [{
52
+ it('should correctly merge and nest child collection pages under their parents', function () {
53
+ var PAGES = [{
54
54
  id: 'page1',
55
55
  collection: {
56
56
  name: 'parent'
@@ -75,7 +75,7 @@ describe('utils.CollectionPage.mergeCollectionPages', () => {
75
75
  },
76
76
  components: [DATE_COMP]
77
77
  }];
78
- const RESULT = (0, _mergeCollectionPages.default)(PAGES);
78
+ var RESULT = (0, _mergeCollectionPages.default)(PAGES);
79
79
  expect(RESULT.length).toEqual(1);
80
80
  expect(RESULT[0]).toMatchObject({
81
81
  id: 'page1',
@@ -95,8 +95,8 @@ describe('utils.CollectionPage.mergeCollectionPages', () => {
95
95
  }]
96
96
  });
97
97
  });
98
- it('should correctly merge and nest child collection pages under their parents, even if the child pages are created first', () => {
99
- const PAGES = [{
98
+ it('should correctly merge and nest child collection pages under their parents, even if the child pages are created first', function () {
99
+ var PAGES = [{
100
100
  id: 'page1',
101
101
  collection: {
102
102
  name: 'parent.child'
@@ -121,7 +121,7 @@ describe('utils.CollectionPage.mergeCollectionPages', () => {
121
121
  },
122
122
  components: [DATE_COMP]
123
123
  }];
124
- const RESULT = (0, _mergeCollectionPages.default)(PAGES);
124
+ var RESULT = (0, _mergeCollectionPages.default)(PAGES);
125
125
  expect(RESULT.length).toEqual(1); // One master page for parent collection.
126
126
  expect(RESULT[0].childPages.length).toEqual(3); // Two normal pages and the child collection's master page.
127
127
  expect(RESULT[0]).toMatchObject({
@@ -131,7 +131,7 @@ describe('utils.CollectionPage.mergeCollectionPages', () => {
131
131
  masterPage: true
132
132
  },
133
133
  formData: {},
134
- childPages: [PAGES[2], PAGES[3], {
134
+ childPages: [{
135
135
  id: 'page1',
136
136
  collection: {
137
137
  name: 'parent.child',
@@ -139,11 +139,11 @@ describe('utils.CollectionPage.mergeCollectionPages', () => {
139
139
  },
140
140
  formData: {},
141
141
  childPages: [PAGES[0], PAGES[1]]
142
- }]
142
+ }, PAGES[2], PAGES[3]]
143
143
  });
144
144
  });
145
- it('should leave non-collection pages unaffected', () => {
146
- const PAGES = [{
145
+ it('should leave non-collection pages unaffected', function () {
146
+ var PAGES = [{
147
147
  id: 'page1',
148
148
  collection: {
149
149
  name: 'collection'
@@ -158,9 +158,9 @@ describe('utils.CollectionPage.mergeCollectionPages', () => {
158
158
  }, {
159
159
  id: 'page3'
160
160
  }];
161
- const RESULT = (0, _mergeCollectionPages.default)(PAGES);
161
+ var RESULT = (0, _mergeCollectionPages.default)(PAGES);
162
162
  expect(RESULT.length).toEqual(2);
163
- expect(RESULT[0]).toEqual({
163
+ expect(RESULT[0]).toMatchObject({
164
164
  id: 'page1',
165
165
  collection: {
166
166
  name: 'collection',
@@ -169,12 +169,12 @@ describe('utils.CollectionPage.mergeCollectionPages', () => {
169
169
  formData: {},
170
170
  childPages: [PAGES[0], PAGES[1]]
171
171
  });
172
- expect(RESULT[1]).toEqual({
172
+ expect(RESULT[1]).toMatchObject({
173
173
  id: 'page3'
174
174
  });
175
175
  });
176
- it('should handle multiple collections', () => {
177
- const PAGES = [{
176
+ it('should handle multiple collections', function () {
177
+ var PAGES = [{
178
178
  id: 'page1',
179
179
  collection: {
180
180
  name: 'collection1'
@@ -199,9 +199,9 @@ describe('utils.CollectionPage.mergeCollectionPages', () => {
199
199
  },
200
200
  components: []
201
201
  }];
202
- const RESULT = (0, _mergeCollectionPages.default)(PAGES);
202
+ var RESULT = (0, _mergeCollectionPages.default)(PAGES);
203
203
  expect(RESULT.length).toEqual(2);
204
- expect(RESULT[0]).toEqual({
204
+ expect(RESULT[0]).toMatchObject({
205
205
  id: 'page1',
206
206
  collection: {
207
207
  name: 'collection1',
@@ -210,7 +210,7 @@ describe('utils.CollectionPage.mergeCollectionPages', () => {
210
210
  formData: {},
211
211
  childPages: [PAGES[0], PAGES[1]]
212
212
  });
213
- expect(RESULT[1]).toEqual({
213
+ expect(RESULT[1]).toMatchObject({
214
214
  id: 'page3',
215
215
  collection: {
216
216
  name: 'collection2',
@@ -17,16 +17,18 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
17
17
  * @returns null if the target entry could not be deleted.
18
18
  * The deleted entry if it was deleted successfully.
19
19
  */
20
- const removeCollectionPageEntry = (collectionName, formData, id) => {
21
- const collectionData = (0, _getCollectionPageData.default)(collectionName, formData);
20
+ var removeCollectionPageEntry = function removeCollectionPageEntry(collectionName, formData, id) {
21
+ var collectionData = (0, _getCollectionPageData.default)(collectionName, formData);
22
22
  if (!collectionData) {
23
23
  return null;
24
24
  }
25
- const indexToDelete = collectionData.findIndex(entry => entry.id === id);
25
+ var indexToDelete = collectionData.findIndex(function (entry) {
26
+ return entry.id === id;
27
+ });
26
28
  if (indexToDelete === -1) {
27
29
  return null;
28
30
  }
29
- const deletedEntry = collectionData[indexToDelete];
31
+ var deletedEntry = collectionData[indexToDelete];
30
32
  collectionData.splice(indexToDelete, 1);
31
33
  return deletedEntry;
32
34
  };
@@ -4,8 +4,8 @@ var _removeCollectionPageEntry = _interopRequireDefault(require("./removeCollect
4
4
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5
5
  // Local imports.
6
6
 
7
- describe('utils.collectionPage.removeCollectionPageEntry', () => {
8
- const FORM_DATA = {
7
+ describe('utils.collectionPage.removeCollectionPageEntry', function () {
8
+ var FORM_DATA = {
9
9
  parentsActiveId: '1',
10
10
  childrenActiveId: '1',
11
11
  grandchildrenActiveId: '1',
@@ -29,20 +29,20 @@ describe('utils.collectionPage.removeCollectionPageEntry', () => {
29
29
  }]
30
30
  }]
31
31
  };
32
- it('should return null if a parent collection does not exist', () => {
33
- const removedEntry = (0, _removeCollectionPageEntry.default)('parents.chainbreak.grandchildren', FORM_DATA, '1');
32
+ it('should return null if a parent collection does not exist', function () {
33
+ var removedEntry = (0, _removeCollectionPageEntry.default)('parents.chainbreak.grandchildren', FORM_DATA, '1');
34
34
  expect(removedEntry).toEqual(null);
35
35
  });
36
- it('should return null if an entry with the provided id does not exist', () => {
37
- const removedEntry = (0, _removeCollectionPageEntry.default)('parents.children.grandchildren', FORM_DATA, '0');
36
+ it('should return null if an entry with the provided id does not exist', function () {
37
+ var removedEntry = (0, _removeCollectionPageEntry.default)('parents.children.grandchildren', FORM_DATA, '0');
38
38
  expect(removedEntry).toEqual(null);
39
39
  });
40
- it('should return null if form data is invalid', () => {
41
- const removedEntry = (0, _removeCollectionPageEntry.default)('parents.children.grandchildren', null, '1');
40
+ it('should return null if form data is invalid', function () {
41
+ var removedEntry = (0, _removeCollectionPageEntry.default)('parents.children.grandchildren', null, '1');
42
42
  expect(removedEntry).toEqual(null);
43
43
  });
44
- it('should correctly remove the target entry', () => {
45
- const removedEntry = (0, _removeCollectionPageEntry.default)('parents.children.grandchildren', FORM_DATA, '3');
44
+ it('should correctly remove the target entry', function () {
45
+ var removedEntry = (0, _removeCollectionPageEntry.default)('parents.children.grandchildren', FORM_DATA, '3');
46
46
  expect(removedEntry).toEqual({
47
47
  id: '3',
48
48
  value: 'Charlie'
@@ -4,7 +4,9 @@ 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;
7
+ var isValidIndex = function isValidIndex(value) {
8
+ return typeof value === 'number' && value >= 0;
9
+ };
8
10
 
9
11
  /**
10
12
  * This function sets the data for a given collection in formData.
@@ -20,19 +22,21 @@ const isValidIndex = value => typeof value === 'number' && value >= 0;
20
22
  * @param {Array} newData The new data to set for the collection.
21
23
  * @param {Object} formData Top level formData object.
22
24
  */
23
- const setCollectionPageData = (collectionName, newData, formData) => {
24
- const nameParts = collectionName.split('.');
25
- const targetCollection = nameParts[nameParts.length - 1];
26
- let data = formData;
27
- nameParts.some(name => {
25
+ var setCollectionPageData = function setCollectionPageData(collectionName, newData, formData) {
26
+ var nameParts = collectionName.split('.');
27
+ var targetCollection = nameParts[nameParts.length - 1];
28
+ var data = formData;
29
+ nameParts.some(function (name) {
28
30
  var _data$name;
29
31
  // Current collection doesn't exist, so create it
30
32
  if (!data[name]) {
31
33
  data[name] = [];
32
34
  }
33
35
  // If the entry matching the active ID doesn't exist in the collection, create it.
34
- if (!data[name].find(e => e.id === formData["".concat(name, "ActiveId")])) {
35
- const newEntryId = Date.now().toString();
36
+ if (!data[name].find(function (e) {
37
+ return e.id === formData["".concat(name, "ActiveId")];
38
+ })) {
39
+ var newEntryId = Date.now().toString();
36
40
  // eslint-disable-next-line no-param-reassign
37
41
  formData["".concat(name, "ActiveId")] = formData["".concat(name, "ActiveId")] || newEntryId;
38
42
  data[name].push({
@@ -46,8 +50,10 @@ const setCollectionPageData = (collectionName, newData, formData) => {
46
50
  data[targetCollection] = newData;
47
51
  return true;
48
52
  }
49
- const activeId = formData["".concat(name, "ActiveId")];
50
- const activeIndex = (_data$name = data[name]) === null || _data$name === void 0 ? void 0 : _data$name.findIndex(item => item.id === activeId);
53
+ var activeId = formData["".concat(name, "ActiveId")];
54
+ var activeIndex = (_data$name = data[name]) === null || _data$name === void 0 ? void 0 : _data$name.findIndex(function (item) {
55
+ return item.id === activeId;
56
+ });
51
57
  if (!isValidIndex(activeIndex)) {
52
58
  return true;
53
59
  }
@@ -2,10 +2,10 @@
2
2
 
3
3
  var _setCollectionPageData = _interopRequireDefault(require("./setCollectionPageData"));
4
4
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5
- describe('Utils.CollectionPage.setCollectionPageData', () => {
6
- it('should create necessary entries when collections in the path don\'t exist', () => {
7
- const FORM_DATA = {};
8
- const NEW_DATA = [{
5
+ describe('Utils.CollectionPage.setCollectionPageData', function () {
6
+ it('should create necessary entries when collections in the path don\'t exist', function () {
7
+ var FORM_DATA = {};
8
+ var NEW_DATA = [{
9
9
  id: '123',
10
10
  value: 'Alpha'
11
11
  }];
@@ -32,11 +32,11 @@ describe('Utils.CollectionPage.setCollectionPageData', () => {
32
32
  value: 'Alpha'
33
33
  });
34
34
  });
35
- it('should not overwrite existing entry IDs', () => {
36
- const FORM_DATA = {
35
+ it('should not overwrite existing entry IDs', function () {
36
+ var FORM_DATA = {
37
37
  grandchildActiveId: 77
38
38
  };
39
- const NEW_DATA = [{
39
+ var NEW_DATA = [{
40
40
  id: '123',
41
41
  value: 'Alpha'
42
42
  }];
@@ -63,9 +63,9 @@ describe('Utils.CollectionPage.setCollectionPageData', () => {
63
63
  value: 'Alpha'
64
64
  });
65
65
  });
66
- describe('when failing to set data for a nested collection', () => {
67
- it('should do nothing if one of the parent collections does not exist', () => {
68
- const FORM_DATA = {
66
+ describe('when failing to set data for a nested collection', function () {
67
+ it('should do nothing if one of the parent collections does not exist', function () {
68
+ var FORM_DATA = {
69
69
  parentActiveId: '1',
70
70
  childActiveId: '1',
71
71
  grandchildActiveId: '1',
@@ -80,7 +80,7 @@ describe('Utils.CollectionPage.setCollectionPageData', () => {
80
80
  }]
81
81
  }]
82
82
  };
83
- const NEW_DATA = [{
83
+ var NEW_DATA = [{
84
84
  id: '1',
85
85
  value: 'newValue'
86
86
  }];
@@ -90,8 +90,8 @@ describe('Utils.CollectionPage.setCollectionPageData', () => {
90
90
  value: 'oldValue'
91
91
  });
92
92
  });
93
- it('should do nothing if an active ID does not exist for a parent collection', () => {
94
- const FORM_DATA = {
93
+ it('should do nothing if an active ID does not exist for a parent collection', function () {
94
+ var FORM_DATA = {
95
95
  parentActiveId: '1',
96
96
  grandchildActiveId: '1',
97
97
  parent: [{
@@ -105,7 +105,7 @@ describe('Utils.CollectionPage.setCollectionPageData', () => {
105
105
  }]
106
106
  }]
107
107
  };
108
- const NEW_DATA = [{
108
+ var NEW_DATA = [{
109
109
  id: '1',
110
110
  value: 'newValue'
111
111
  }];
@@ -116,15 +116,15 @@ describe('Utils.CollectionPage.setCollectionPageData', () => {
116
116
  });
117
117
  });
118
118
  });
119
- it('should correctly set the value for a top-level collection', () => {
120
- const FORM_DATA = {
119
+ it('should correctly set the value for a top-level collection', function () {
120
+ var FORM_DATA = {
121
121
  testCollectionActiveId: '1',
122
122
  testCollection: [{
123
123
  id: '1',
124
124
  value: 'oldValue'
125
125
  }]
126
126
  };
127
- const NEW_DATA = [{
127
+ var NEW_DATA = [{
128
128
  id: '1',
129
129
  value: 'newValue'
130
130
  }];
@@ -134,8 +134,8 @@ describe('Utils.CollectionPage.setCollectionPageData', () => {
134
134
  value: 'newValue'
135
135
  });
136
136
  });
137
- it('should correctly set the data for a nested collection', () => {
138
- const FORM_DATA = {
137
+ it('should correctly set the data for a nested collection', function () {
138
+ var FORM_DATA = {
139
139
  parentActiveId: '1',
140
140
  childActiveId: '1',
141
141
  grandchildActiveId: '1',
@@ -150,7 +150,7 @@ describe('Utils.CollectionPage.setCollectionPageData', () => {
150
150
  }]
151
151
  }]
152
152
  };
153
- const NEW_DATA = [{
153
+ var NEW_DATA = [{
154
154
  id: '1',
155
155
  value: 'newValue'
156
156
  }];
@@ -160,10 +160,10 @@ describe('Utils.CollectionPage.setCollectionPageData', () => {
160
160
  value: 'newValue'
161
161
  });
162
162
  });
163
- it('creates a new entry and updates active ID if no matching active ID is found', () => {
164
- const formData = {};
165
- const collectionName = 'testCollection';
166
- const newData = [{
163
+ it('creates a new entry and updates active ID if no matching active ID is found', function () {
164
+ var formData = {};
165
+ var collectionName = 'testCollection';
166
+ var newData = [{
167
167
  id: 'dataId',
168
168
  value: 'testValue'
169
169
  }];
@@ -4,6 +4,12 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
+ 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); }
8
+ 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; }
9
+ 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; }
10
+ 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; }
11
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
12
+ 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); }
7
13
  /**
8
14
  * Adds a show_when to a component.
9
15
  * If the component has no show_when, then an array is created
@@ -15,16 +21,14 @@ exports.default = void 0;
15
21
  * @returns The component with the new show_when added.
16
22
  * null if component or condition are invalid.
17
23
  */
18
- const addShowWhen = (component, condition) => {
24
+ var addShowWhen = function addShowWhen(component, condition) {
19
25
  if (!component) {
20
26
  return null;
21
27
  }
22
28
  if (!condition) {
23
29
  return component;
24
30
  }
25
- const result = {
26
- ...component
27
- };
31
+ var result = _objectSpread({}, component);
28
32
  if (result.show_when) {
29
33
  if (Array.isArray(condition)) {
30
34
  result.show_when = Array.isArray(result.show_when) ? [].concat(condition, result.show_when) : [].concat(condition, [result.show_when]);