@ukhomeoffice/cop-react-form-renderer 6.5.1-peter → 6.7.0-alpha

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 (390) hide show
  1. package/dist/components/CheckYourAnswers/Answer.js +12 -12
  2. package/dist/components/CheckYourAnswers/Answer.test.js +92 -127
  3. package/dist/components/CheckYourAnswers/CheckYourAnswers.js +101 -131
  4. package/dist/components/CheckYourAnswers/CheckYourAnswers.test.js +463 -769
  5. package/dist/components/CollectionPage/CollectionPage.js +73 -63
  6. package/dist/components/CollectionPage/CollectionPage.test.js +316 -366
  7. package/dist/components/CollectionSummary/BannerStrip.js +13 -13
  8. package/dist/components/CollectionSummary/BannerStrip.test.js +80 -76
  9. package/dist/components/CollectionSummary/CollectionSummary.js +97 -107
  10. package/dist/components/CollectionSummary/CollectionSummary.test.js +152 -142
  11. package/dist/components/CollectionSummary/Confirmation.js +14 -12
  12. package/dist/components/CollectionSummary/Confirmation.test.js +68 -63
  13. package/dist/components/CollectionSummary/RenderListView.js +45 -51
  14. package/dist/components/CollectionSummary/RenderListView.test.js +78 -77
  15. package/dist/components/CollectionSummary/SummaryCard.js +104 -135
  16. package/dist/components/CollectionSummary/SummaryCard.test.js +930 -962
  17. package/dist/components/CollectionSummary/SummaryCardDetails.js +72 -71
  18. package/dist/components/CollectionSummary/SummaryCardDetails.test.js +128 -135
  19. package/dist/components/CollectionSummary/SummaryCardValidationContext.js +30 -35
  20. package/dist/components/CollectionSummary/SummaryCardValidationContext.test.js +62 -74
  21. package/dist/components/FormComponent/Collection.js +74 -108
  22. package/dist/components/FormComponent/Collection.test.js +909 -1081
  23. package/dist/components/FormComponent/Container.js +40 -38
  24. package/dist/components/FormComponent/Container.test.js +314 -345
  25. package/dist/components/FormComponent/FormComponent.js +69 -72
  26. package/dist/components/FormComponent/FormComponent.test.js +353 -414
  27. package/dist/components/FormComponent/helpers/addLabel.js +4 -7
  28. package/dist/components/FormComponent/helpers/getComponentDisabled.js +1 -1
  29. package/dist/components/FormComponent/helpers/getComponentDisabled.test.js +7 -7
  30. package/dist/components/FormComponent/helpers/getComponentError.js +3 -5
  31. package/dist/components/FormComponent/helpers/getComponentError.test.js +14 -14
  32. package/dist/components/FormComponent/helpers/getComponentFieldSet.js +3 -4
  33. package/dist/components/FormComponent/helpers/getComponentFieldSet.test.js +6 -6
  34. package/dist/components/FormComponent/helpers/index.js +4 -4
  35. package/dist/components/FormPage/FormPage.js +65 -80
  36. package/dist/components/FormPage/FormPage.test.js +127 -163
  37. package/dist/components/FormRenderer/FormRenderer.js +143 -179
  38. package/dist/components/FormRenderer/FormRenderer.test.js +730 -1115
  39. package/dist/components/FormRenderer/handlers/cyaAction.js +2 -2
  40. package/dist/components/FormRenderer/handlers/getPageId.js +1 -3
  41. package/dist/components/FormRenderer/handlers/getPageId.test.js +14 -14
  42. package/dist/components/FormRenderer/handlers/handlers.test.js +32 -32
  43. package/dist/components/FormRenderer/handlers/index.js +1 -1
  44. package/dist/components/FormRenderer/handlers/navigate.js +3 -3
  45. package/dist/components/FormRenderer/handlers/submissionError.js +1 -1
  46. package/dist/components/FormRenderer/helpers/canActionProceed.js +1 -1
  47. package/dist/components/FormRenderer/helpers/canActionProceed.test.js +15 -15
  48. package/dist/components/FormRenderer/helpers/canCYASubmit.js +1 -3
  49. package/dist/components/FormRenderer/helpers/canCYASubmit.test.js +16 -20
  50. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.js +17 -22
  51. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.test.js +16 -16
  52. package/dist/components/FormRenderer/helpers/getCYA.js +3 -5
  53. package/dist/components/FormRenderer/helpers/getCYA.test.js +11 -11
  54. package/dist/components/FormRenderer/helpers/getFormState.js +5 -7
  55. package/dist/components/FormRenderer/helpers/getFormState.test.js +10 -10
  56. package/dist/components/FormRenderer/helpers/getNextPageId.js +13 -24
  57. package/dist/components/FormRenderer/helpers/getNextPageId.test.js +67 -67
  58. package/dist/components/FormRenderer/helpers/getPage.js +2 -4
  59. package/dist/components/FormRenderer/helpers/getPage.test.js +11 -11
  60. package/dist/components/FormRenderer/helpers/getRelevantPages.js +7 -9
  61. package/dist/components/FormRenderer/helpers/getRelevantPages.test.js +14 -14
  62. package/dist/components/FormRenderer/helpers/getSubmissionStatus.js +5 -5
  63. package/dist/components/FormRenderer/helpers/getSubmissionStatus.test.js +103 -97
  64. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.js +62 -60
  65. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.test.js +71 -78
  66. package/dist/components/FormRenderer/helpers/index.js +2 -4
  67. package/dist/components/FormRenderer/onCYAAction.js +59 -51
  68. package/dist/components/FormRenderer/onCYAAction.test.js +164 -152
  69. package/dist/components/FormRenderer/onPageAction.js +44 -47
  70. package/dist/components/FormRenderer/onPageAction.test.js +223 -213
  71. package/dist/components/FormRenderer/onTaskAction.js +9 -13
  72. package/dist/components/FormRenderer/onTaskAction.test.js +93 -88
  73. package/dist/components/PageActions/ActionButton.js +12 -15
  74. package/dist/components/PageActions/ActionButton.test.js +56 -78
  75. package/dist/components/PageActions/PageActions.js +10 -10
  76. package/dist/components/PageActions/PageActions.test.js +86 -115
  77. package/dist/components/SummaryList/GroupAction.js +9 -17
  78. package/dist/components/SummaryList/GroupAction.test.js +37 -33
  79. package/dist/components/SummaryList/RowAction.js +11 -16
  80. package/dist/components/SummaryList/RowAction.test.js +37 -33
  81. package/dist/components/SummaryList/SummaryList.js +21 -26
  82. package/dist/components/SummaryList/SummaryList.test.js +143 -166
  83. package/dist/components/SummaryList/SummaryListHeadingRow.js +6 -4
  84. package/dist/components/SummaryList/SummaryListRow.js +6 -4
  85. package/dist/components/SummaryList/SummaryListTitleRow.js +5 -3
  86. package/dist/components/SummaryList/helpers/getGroupActionAttributes.js +3 -5
  87. package/dist/components/SummaryList/helpers/getGroupActionAttributes.test.js +22 -22
  88. package/dist/components/SummaryList/helpers/getRowActionAttributes.js +3 -5
  89. package/dist/components/SummaryList/helpers/getRowActionAttributes.test.js +22 -22
  90. package/dist/components/SummaryList/helpers/index.js +1 -1
  91. package/dist/components/TaskList/Task.js +19 -29
  92. package/dist/components/TaskList/Task.test.js +83 -76
  93. package/dist/components/TaskList/TaskList.js +45 -71
  94. package/dist/components/TaskList/TaskList.test.js +113 -111
  95. package/dist/components/TaskList/TaskState.js +7 -5
  96. package/dist/components/TaskList/TaskState.test.js +52 -45
  97. package/dist/components/index.js +7 -7
  98. package/dist/context/HooksContext/HooksContext.js +57 -80
  99. package/dist/context/HooksContext/HooksContext.test.js +26 -35
  100. package/dist/context/HooksContext/index.js +3 -4
  101. package/dist/context/ValidationContext/ValidationContext.js +43 -94
  102. package/dist/context/ValidationContext/ValidationContext.test.js +56 -68
  103. package/dist/context/ValidationContext/index.js +3 -4
  104. package/dist/context/index.js +2 -2
  105. package/dist/hooks/index.js +9 -10
  106. package/dist/hooks/useAxios.js +14 -40
  107. package/dist/hooks/useGetRequest.js +61 -97
  108. package/dist/hooks/useHooks.js +1 -3
  109. package/dist/hooks/useRefData.js +26 -39
  110. package/dist/hooks/useValidation.js +1 -3
  111. package/dist/index.js +13 -14
  112. package/dist/models/CollectionLabels.js +1 -1
  113. package/dist/models/ComponentTypes.js +25 -25
  114. package/dist/models/EventTypes.js +4 -4
  115. package/dist/models/FormPages.js +4 -4
  116. package/dist/models/FormTypes.js +8 -8
  117. package/dist/models/HubFormats.js +3 -3
  118. package/dist/models/PageAction.js +44 -38
  119. package/dist/models/TaskStates.js +29 -28
  120. package/dist/models/index.js +9 -9
  121. package/dist/setupTests.js +30 -31
  122. package/dist/utils/CheckYourAnswers/getCYAAction.js +5 -5
  123. package/dist/utils/CheckYourAnswers/getCYAAction.test.js +52 -54
  124. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.js +15 -25
  125. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.test.js +33 -35
  126. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.js +17 -31
  127. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.test.js +42 -44
  128. package/dist/utils/CheckYourAnswers/getCYARow.js +6 -6
  129. package/dist/utils/CheckYourAnswers/getCYARow.test.js +86 -86
  130. package/dist/utils/CheckYourAnswers/getCYARowForGroup.js +18 -24
  131. package/dist/utils/CheckYourAnswers/getCYARowForGroup.test.js +15 -16
  132. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.js +33 -36
  133. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.test.js +58 -61
  134. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.js +83 -89
  135. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.test.js +164 -138
  136. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.js +25 -20
  137. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.test.js +103 -97
  138. package/dist/utils/CheckYourAnswers/getCYARowsForPage.js +13 -18
  139. package/dist/utils/CheckYourAnswers/getCYARowsForPage.test.js +70 -76
  140. package/dist/utils/CheckYourAnswers/getComponentRowForCYA.js +11 -11
  141. package/dist/utils/CheckYourAnswers/getComponentRowForCYA.test.js +7 -7
  142. package/dist/utils/CheckYourAnswers/index.js +1 -1
  143. package/dist/utils/CheckYourAnswers/showComponentCYA.js +4 -4
  144. package/dist/utils/CheckYourAnswers/showComponentCYA.test.js +25 -25
  145. package/dist/utils/CollectionPage/addCollectionPageEntry.js +2 -2
  146. package/dist/utils/CollectionPage/addCollectionPageEntry.test.js +5 -5
  147. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.js +2 -2
  148. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.test.js +17 -18
  149. package/dist/utils/CollectionPage/duplicateCollectionPageEntry.js +18 -20
  150. package/dist/utils/CollectionPage/duplicateCollectionPageEntry.test.js +55 -26
  151. package/dist/utils/CollectionPage/getCollectionPageActiveId.js +2 -2
  152. package/dist/utils/CollectionPage/getCollectionPageActiveId.test.js +10 -10
  153. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.js +7 -11
  154. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.test.js +22 -22
  155. package/dist/utils/CollectionPage/getCollectionPageData.js +8 -12
  156. package/dist/utils/CollectionPage/getCollectionPageData.test.js +19 -19
  157. package/dist/utils/CollectionPage/getErrorsForCollection.js +24 -24
  158. package/dist/utils/CollectionPage/getErrorsForCollection.test.js +20 -22
  159. package/dist/utils/CollectionPage/getQuickEditPage.js +36 -28
  160. package/dist/utils/CollectionPage/getQuickEditPage.test.js +26 -45
  161. package/dist/utils/CollectionPage/index.js +1 -1
  162. package/dist/utils/CollectionPage/mergeCollectionPages.js +31 -35
  163. package/dist/utils/CollectionPage/mergeCollectionPages.test.js +20 -20
  164. package/dist/utils/CollectionPage/removeCollectionPageEntry.js +4 -6
  165. package/dist/utils/CollectionPage/removeCollectionPageEntry.test.js +10 -10
  166. package/dist/utils/CollectionPage/setCollectionPageData.js +10 -16
  167. package/dist/utils/CollectionPage/setCollectionPageData.test.js +24 -24
  168. package/dist/utils/Component/addShowWhen.js +4 -8
  169. package/dist/utils/Component/addShowWhen.test.js +37 -37
  170. package/dist/utils/Component/applyToComponentTree.js +18 -18
  171. package/dist/utils/Component/applyToComponentTree.test.js +27 -32
  172. package/dist/utils/Component/cleanAttributes.js +10 -13
  173. package/dist/utils/Component/cleanAttributes.test.js +17 -18
  174. package/dist/utils/Component/elevateNestedComponents.js +5 -5
  175. package/dist/utils/Component/elevateNestedComponents.test.js +30 -30
  176. package/dist/utils/Component/getComponent.js +88 -94
  177. package/dist/utils/Component/getComponentTests/getComponent.autocomplete.test.js +18 -17
  178. package/dist/utils/Component/getComponentTests/getComponent.calculation.test.js +46 -59
  179. package/dist/utils/Component/getComponentTests/getComponent.checkboxes.test.js +39 -48
  180. package/dist/utils/Component/getComponentTests/getComponent.date.test.js +23 -33
  181. package/dist/utils/Component/getComponentTests/getComponent.details.test.js +20 -18
  182. package/dist/utils/Component/getComponentTests/getComponent.email.test.js +17 -22
  183. package/dist/utils/Component/getComponentTests/getComponent.file.test.js +20 -25
  184. package/dist/utils/Component/getComponentTests/getComponent.heading.test.js +10 -9
  185. package/dist/utils/Component/getComponentTests/getComponent.html.test.js +17 -15
  186. package/dist/utils/Component/getComponentTests/getComponent.insetText.test.js +9 -8
  187. package/dist/utils/Component/getComponentTests/getComponent.list.test.js +17 -15
  188. package/dist/utils/Component/getComponentTests/getComponent.multifile.test.js +22 -26
  189. package/dist/utils/Component/getComponentTests/getComponent.nested.test.js +155 -175
  190. package/dist/utils/Component/getComponentTests/getComponent.paragraph.test.js +17 -15
  191. package/dist/utils/Component/getComponentTests/getComponent.phoneNumber.test.js +17 -22
  192. package/dist/utils/Component/getComponentTests/getComponent.radios.test.js +57 -72
  193. package/dist/utils/Component/getComponentTests/getComponent.select.test.js +17 -22
  194. package/dist/utils/Component/getComponentTests/getComponent.text.test.js +17 -22
  195. package/dist/utils/Component/getComponentTests/getComponent.textArea.test.js +31 -38
  196. package/dist/utils/Component/getComponentTests/getComponent.time.test.js +20 -29
  197. package/dist/utils/Component/getComponentTests/getComponent.unknown.test.js +2 -2
  198. package/dist/utils/Component/getComponentTests/getComponent.warningText.test.js +9 -8
  199. package/dist/utils/Component/getDefaultValue.js +6 -8
  200. package/dist/utils/Component/getDefaultValue.test.js +12 -12
  201. package/dist/utils/Component/getDefaultValueFromConfig.js +22 -21
  202. package/dist/utils/Component/getDefaultValueFromConfig.test.js +31 -31
  203. package/dist/utils/Component/index.js +1 -1
  204. package/dist/utils/Component/isEditable.js +2 -4
  205. package/dist/utils/Component/isEditable.test.js +14 -15
  206. package/dist/utils/Component/optionIsSelected.js +1 -1
  207. package/dist/utils/Component/optionIsSelected.test.js +9 -9
  208. package/dist/utils/Component/setupContainerComponentsPath.js +27 -29
  209. package/dist/utils/Component/setupContainerComponentsPath.test.js +11 -11
  210. package/dist/utils/Component/showComponent.js +1 -1
  211. package/dist/utils/Component/showComponent.test.js +28 -28
  212. package/dist/utils/Component/wrapInFormGroup.js +2 -2
  213. package/dist/utils/Condition/index.js +1 -1
  214. package/dist/utils/Condition/meetsAllConditions.js +8 -8
  215. package/dist/utils/Condition/meetsAllConditions.test.js +20 -20
  216. package/dist/utils/Condition/meetsCondition.js +16 -25
  217. package/dist/utils/Condition/meetsCondition.test.js +402 -402
  218. package/dist/utils/Condition/meetsOneCondition.js +5 -5
  219. package/dist/utils/Condition/meetsOneCondition.test.js +16 -16
  220. package/dist/utils/Condition/setupConditions.js +13 -18
  221. package/dist/utils/Condition/setupConditions.test.js +7 -7
  222. package/dist/utils/Container/getEditableComponents.js +3 -5
  223. package/dist/utils/Container/getEditableComponents.test.js +43 -45
  224. package/dist/utils/Container/index.js +1 -1
  225. package/dist/utils/Container/setupNesting.js +16 -20
  226. package/dist/utils/Container/setupNesting.test.js +27 -30
  227. package/dist/utils/Container/showContainer.js +3 -7
  228. package/dist/utils/Container/showContainer.test.js +30 -30
  229. package/dist/utils/Data/applyFormula.js +38 -48
  230. package/dist/utils/Data/applyFormula.test.js +20 -20
  231. package/dist/utils/Data/getAutocompleteSource.js +18 -26
  232. package/dist/utils/Data/getAutocompleteSource.test.js +80 -86
  233. package/dist/utils/Data/getDataPath.js +18 -28
  234. package/dist/utils/Data/getDataPath.test.js +12 -12
  235. package/dist/utils/Data/getOptions.js +24 -30
  236. package/dist/utils/Data/getOptions.test.js +27 -27
  237. package/dist/utils/Data/getSourceData.js +6 -19
  238. package/dist/utils/Data/getSourceData.test.js +84 -80
  239. package/dist/utils/Data/index.js +1 -1
  240. package/dist/utils/Data/nestInRefdataOptions.js +9 -16
  241. package/dist/utils/Data/nestInRefdataOptions.test.js +16 -16
  242. package/dist/utils/Data/refDataToOptions.js +10 -13
  243. package/dist/utils/Data/refDataToOptions.test.js +19 -19
  244. package/dist/utils/Data/setDataItem.js +7 -8
  245. package/dist/utils/Data/setDataItem.test.js +37 -37
  246. package/dist/utils/Data/setupFormData.js +13 -21
  247. package/dist/utils/Data/setupFormData.test.js +51 -50
  248. package/dist/utils/Data/setupRefDataUrlForComponent.js +20 -26
  249. package/dist/utils/Data/setupRefDataUrlForComponent.test.js +24 -24
  250. package/dist/utils/FormPage/applyConditionalProperties.js +5 -9
  251. package/dist/utils/FormPage/applyConditionalProperties.test.js +15 -18
  252. package/dist/utils/FormPage/getConditionalText.js +3 -3
  253. package/dist/utils/FormPage/getConditionalText.test.js +29 -29
  254. package/dist/utils/FormPage/getFormPage.js +15 -16
  255. package/dist/utils/FormPage/getFormPage.test.js +47 -46
  256. package/dist/utils/FormPage/getFormPages.js +7 -12
  257. package/dist/utils/FormPage/getFormPages.test.js +20 -23
  258. package/dist/utils/FormPage/getPageActions.js +9 -15
  259. package/dist/utils/FormPage/getPageActions.test.js +32 -32
  260. package/dist/utils/FormPage/getParagraphFromText.js +5 -7
  261. package/dist/utils/FormPage/getParagraphFromText.test.js +6 -6
  262. package/dist/utils/FormPage/index.js +2 -4
  263. package/dist/utils/FormPage/showFormPage.js +3 -7
  264. package/dist/utils/FormPage/showFormPage.test.js +32 -32
  265. package/dist/utils/FormPage/showFormPageCYA.js +1 -1
  266. package/dist/utils/FormPage/showFormPageCYA.test.js +8 -8
  267. package/dist/utils/FormPage/useComponent.js +21 -28
  268. package/dist/utils/FormPage/useComponent.test.js +77 -79
  269. package/dist/utils/Format/formatData.js +1 -1
  270. package/dist/utils/Format/formatData.test.js +18 -18
  271. package/dist/utils/Format/formatDataForComponent.js +5 -6
  272. package/dist/utils/Format/formatDataForComponent.test.js +50 -78
  273. package/dist/utils/Format/formatDataForForm.js +6 -8
  274. package/dist/utils/Format/formatDataForForm.test.js +13 -16
  275. package/dist/utils/Format/formatDataForPage.js +4 -5
  276. package/dist/utils/Format/formatDataForPage.test.js +20 -25
  277. package/dist/utils/Format/index.js +1 -1
  278. package/dist/utils/Hub/getFormHub.js +1 -1
  279. package/dist/utils/Hub/getFormHub.test.js +28 -31
  280. package/dist/utils/Hub/index.js +1 -1
  281. package/dist/utils/Meta/constants.js +2 -2
  282. package/dist/utils/Meta/documents/getDocuments.js +1 -1
  283. package/dist/utils/Meta/documents/getDocuments.test.js +24 -16
  284. package/dist/utils/Meta/documents/index.js +1 -1
  285. package/dist/utils/Meta/documents/setDocumentsForField.js +14 -16
  286. package/dist/utils/Meta/documents/setDocumentsForField.test.js +68 -34
  287. package/dist/utils/Meta/index.js +1 -1
  288. package/dist/utils/Operate/checkValueIsTruthy.js +2 -2
  289. package/dist/utils/Operate/checkValueIsTruthy.test.js +16 -16
  290. package/dist/utils/Operate/getFirstOf.js +5 -5
  291. package/dist/utils/Operate/getFirstOf.test.js +31 -31
  292. package/dist/utils/Operate/getIndexOfMatchingValueIn.js +10 -10
  293. package/dist/utils/Operate/getIndexOfMatchingValueIn.test.js +46 -52
  294. package/dist/utils/Operate/index.js +1 -1
  295. package/dist/utils/Operate/persistValueInFormData.js +3 -3
  296. package/dist/utils/Operate/persistValueInFormData.test.js +22 -20
  297. package/dist/utils/Operate/runPageOperations.js +7 -7
  298. package/dist/utils/Operate/runPageOperations.test.js +35 -36
  299. package/dist/utils/Operate/setValueInFormData.js +2 -2
  300. package/dist/utils/Operate/setValueInFormData.test.js +16 -16
  301. package/dist/utils/Operate/shouldRun.js +6 -6
  302. package/dist/utils/Operate/shouldRun.test.js +21 -27
  303. package/dist/utils/Validate/additional/conditionallyRequired.js +4 -4
  304. package/dist/utils/Validate/additional/conditionallyRequired.test.js +18 -18
  305. package/dist/utils/Validate/additional/index.js +6 -6
  306. package/dist/utils/Validate/additional/index.test.js +12 -12
  307. package/dist/utils/Validate/additional/mustBeAfter.js +2 -2
  308. package/dist/utils/Validate/additional/mustBeAfter.test.js +40 -40
  309. package/dist/utils/Validate/additional/mustBeBefore.js +2 -2
  310. package/dist/utils/Validate/additional/mustBeBefore.test.js +28 -28
  311. package/dist/utils/Validate/additional/mustBeEarlierDateTime.js +7 -11
  312. package/dist/utils/Validate/additional/mustBeEarlierDateTime.test.js +37 -41
  313. package/dist/utils/Validate/additional/mustBeGreaterThan.js +2 -2
  314. package/dist/utils/Validate/additional/mustBeGreaterThan.test.js +18 -18
  315. package/dist/utils/Validate/additional/mustBeInTheFuture.js +2 -2
  316. package/dist/utils/Validate/additional/mustBeInTheFuture.test.js +12 -12
  317. package/dist/utils/Validate/additional/mustBeInThePast.js +3 -3
  318. package/dist/utils/Validate/additional/mustBeInThePast.test.js +12 -12
  319. package/dist/utils/Validate/additional/mustBeLessThan.js +2 -2
  320. package/dist/utils/Validate/additional/mustBeLessThan.test.js +17 -17
  321. package/dist/utils/Validate/additional/mustBeLongerThan.js +1 -1
  322. package/dist/utils/Validate/additional/mustBeLongerThan.test.js +16 -16
  323. package/dist/utils/Validate/additional/mustBeNumbersOnly.js +2 -2
  324. package/dist/utils/Validate/additional/mustBeNumbersOnly.test.js +20 -20
  325. package/dist/utils/Validate/additional/mustBeShorterThan.js +1 -1
  326. package/dist/utils/Validate/additional/mustBeShorterThan.test.js +16 -16
  327. package/dist/utils/Validate/additional/mustBeUniqueInCollection.js +8 -4
  328. package/dist/utils/Validate/additional/mustBeUniqueInCollection.test.js +64 -32
  329. package/dist/utils/Validate/additional/mustEnterAtLeastOne.js +2 -2
  330. package/dist/utils/Validate/additional/mustEnterAtLeastOne.test.js +14 -16
  331. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.js +1 -1
  332. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.test.js +12 -12
  333. package/dist/utils/Validate/additional/mustNotContainSql.js +3 -4
  334. package/dist/utils/Validate/additional/mustNotContainSql.test.js +14 -14
  335. package/dist/utils/Validate/additional/mustSelectOnlyOne.js +2 -2
  336. package/dist/utils/Validate/additional/mustSelectOnlyOne.test.js +28 -26
  337. package/dist/utils/Validate/additional/utils.js +9 -22
  338. package/dist/utils/Validate/index.js +1 -1
  339. package/dist/utils/Validate/validateCollection.js +19 -25
  340. package/dist/utils/Validate/validateCollection.test.js +74 -66
  341. package/dist/utils/Validate/validateComponent.js +17 -15
  342. package/dist/utils/Validate/validateComponent.test.js +167 -146
  343. package/dist/utils/Validate/validateContainer.js +15 -20
  344. package/dist/utils/Validate/validateContainer.test.js +58 -52
  345. package/dist/utils/Validate/validateDate.js +15 -21
  346. package/dist/utils/Validate/validateDate.test.js +31 -32
  347. package/dist/utils/Validate/validateEmail.js +6 -8
  348. package/dist/utils/Validate/validateEmail.test.js +25 -25
  349. package/dist/utils/Validate/validateMultifile.js +5 -7
  350. package/dist/utils/Validate/validateMultifile.test.js +17 -18
  351. package/dist/utils/Validate/validatePage.js +19 -22
  352. package/dist/utils/Validate/validatePage.test.js +215 -203
  353. package/dist/utils/Validate/validateRegex.js +3 -5
  354. package/dist/utils/Validate/validateRegex.test.js +14 -14
  355. package/dist/utils/Validate/validateRequired.js +4 -6
  356. package/dist/utils/Validate/validateRequired.test.js +18 -18
  357. package/dist/utils/Validate/validateTextArea.js +4 -6
  358. package/dist/utils/Validate/validateTextArea.test.js +20 -20
  359. package/dist/utils/Validate/validateTime.js +11 -18
  360. package/dist/utils/Validate/validateTime.test.js +16 -16
  361. package/dist/utils/index.js +7 -9
  362. package/package.json +2 -2
  363. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/component-used-in-multiple-pages-data.json +0 -4
  364. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/component-used-in-multiple-pages-form.json +0 -61
  365. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/cop-airpax-after.json +0 -429
  366. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/cop-airpax-before.json +0 -449
  367. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/cop-airpax-form.json +0 -15219
  368. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/cop-eab-2-data-after.json +0 -516
  369. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/cop-eab-2-data-before.json +0 -593
  370. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/cop-eab2-form.json +0 -15219
  371. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/cop-mandec-data-after.json +0 -84
  372. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/cop-mandec-data-before.json +0 -98
  373. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/cop-mandec-form.json +0 -9158
  374. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/data-with-collection-data-removed.json +0 -4
  375. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/data-with-collections.json +0 -8
  376. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/data-with-components-removed.json +0 -3
  377. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/data-with-components.json +0 -5
  378. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/data-with-entire-collection-removed.json +0 -3
  379. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/data-with-nested-component-removed.json +0 -10
  380. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/data-with-nested-components.json +0 -11
  381. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/form-for-nested-components.json +0 -96
  382. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/form-with-collections-delete-entire.json +0 -47
  383. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/form-with-collections.json +0 -46
  384. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/form-with-components.json +0 -48
  385. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/test.json +0 -1605
  386. package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/test2.json +0 -205
  387. package/dist/components/FormRenderer/helpers/clearOutUncompletedRoutes.js +0 -206
  388. package/dist/components/FormRenderer/helpers/clearOutUncompletedRoutes.test.js +0 -143
  389. package/dist/components/FormRenderer/helpers/deleteNodeByPath.js +0 -26
  390. package/dist/components/FormRenderer/helpers/deleteNodeByPath.test.js +0 -56
@@ -5,18 +5,16 @@ var _formatDataForForm = _interopRequireDefault(require("./formatDataForForm"));
5
5
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6
6
  // Local imports
7
7
 
8
- describe('utils', function () {
9
- describe('Format', function () {
10
- var setupField = function setupField(fieldId, format) {
11
- return {
12
- fieldId: fieldId,
13
- format: format
14
- };
15
- };
16
- describe('formatDataForForm', function () {
17
- it('should appropriately format entire form', function () {
18
- var EVENT_TYPE = _models.EventTypes.SUBMIT;
19
- var COMPONENTS = [setupField('alpha', {
8
+ describe('utils', () => {
9
+ describe('Format', () => {
10
+ const setupField = (fieldId, format) => ({
11
+ fieldId,
12
+ format
13
+ });
14
+ describe('formatDataForForm', () => {
15
+ it('should appropriately format entire form', () => {
16
+ const EVENT_TYPE = _models.EventTypes.SUBMIT;
17
+ const COMPONENTS = [setupField('alpha', {
20
18
  type: 'lowercase',
21
19
  on: _models.EventTypes.SUBMIT
22
20
  }),
@@ -43,15 +41,14 @@ describe('utils', function () {
43
41
  on: _models.EventTypes.SUBMIT
44
42
  }) // Should not be formatted because of event type
45
43
  ];
46
-
47
- var DATA = {
44
+ const DATA = {
48
45
  alpha: 'AlPhA',
49
46
  bravo: 'bRaVo',
50
47
  charlie: 'CHArlie',
51
48
  delta: 'deLTA',
52
49
  foxtrot: 'FOXTROT'
53
50
  };
54
- var FORM = {
51
+ const FORM = {
55
52
  components: COMPONENTS.slice(0, 1),
56
53
  pages: [{
57
54
  components: COMPONENTS.slice(2, 3)
@@ -59,7 +56,7 @@ describe('utils', function () {
59
56
  components: COMPONENTS.slice(4)
60
57
  }]
61
58
  };
62
- var FORMATTED_DATA = (0, _formatDataForForm.default)(FORM, DATA, EVENT_TYPE);
59
+ const FORMATTED_DATA = (0, _formatDataForForm.default)(FORM, DATA, EVENT_TYPE);
63
60
  expect(FORMATTED_DATA).toEqual({
64
61
  alpha: 'alpha',
65
62
  bravo: 'bRaVo',
@@ -13,7 +13,7 @@ var _formatDataForComponent = require("./formatDataForComponent");
13
13
  * @param {object} data The top-level form data.
14
14
  * @param {string} eventType What type of event initiated this call.
15
15
  */
16
- var formatDataForPage = function formatDataForPage(page, data, eventType) {
16
+ const formatDataForPage = (page, data, eventType) => {
17
17
  (0, _formatDataForComponent.formatDataForComponents)(page.components, data, eventType);
18
18
  };
19
19
 
@@ -23,9 +23,8 @@ var formatDataForPage = function formatDataForPage(page, data, eventType) {
23
23
  * @param {object} data The top-level form data.
24
24
  * @param {string} eventType What type of event initiated this call.
25
25
  */
26
- var formatDataForPages = exports.formatDataForPages = function formatDataForPages(pages, data, eventType) {
27
- pages.forEach(function (page) {
28
- return formatDataForPage(page, data, eventType);
29
- });
26
+ const formatDataForPages = (pages, data, eventType) => {
27
+ pages.forEach(page => formatDataForPage(page, data, eventType));
30
28
  };
29
+ exports.formatDataForPages = formatDataForPages;
31
30
  var _default = exports.default = formatDataForPage;
@@ -1,24 +1,21 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
4
3
  var _models = require("../../models");
5
4
  var _formatDataForPage = _interopRequireWildcard(require("./formatDataForPage"));
6
- 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); }
7
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && 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; }
5
+ 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); }
6
+ 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; }
8
7
  // Local imports
9
8
 
10
- describe('utils', function () {
11
- describe('Format', function () {
12
- var setupField = function setupField(fieldId, format) {
13
- return {
14
- fieldId: fieldId,
15
- format: format
16
- };
17
- };
18
- describe('formatDataForPage', function () {
19
- it('should appropriately format a page of components', function () {
20
- var EVENT_TYPE = _models.EventTypes.SUBMIT;
21
- var COMPONENTS = [setupField('alpha', {
9
+ describe('utils', () => {
10
+ describe('Format', () => {
11
+ const setupField = (fieldId, format) => ({
12
+ fieldId,
13
+ format
14
+ });
15
+ describe('formatDataForPage', () => {
16
+ it('should appropriately format a page of components', () => {
17
+ const EVENT_TYPE = _models.EventTypes.SUBMIT;
18
+ const COMPONENTS = [setupField('alpha', {
22
19
  type: 'lowercase',
23
20
  on: _models.EventTypes.SUBMIT
24
21
  }),
@@ -35,14 +32,13 @@ describe('utils', function () {
35
32
  on: _models.EventTypes.BLUR
36
33
  }) // Should not be formatted because of event type
37
34
  ];
38
-
39
- var DATA = {
35
+ const DATA = {
40
36
  alpha: 'AlPhA',
41
37
  bravo: 'bRaVo',
42
38
  charlie: 'CHArlie',
43
39
  delta: 'deLTA'
44
40
  };
45
- var PAGE = {
41
+ const PAGE = {
46
42
  components: COMPONENTS
47
43
  };
48
44
  (0, _formatDataForPage.default)(PAGE, DATA, EVENT_TYPE);
@@ -54,10 +50,10 @@ describe('utils', function () {
54
50
  });
55
51
  });
56
52
  });
57
- describe('formatDataForPages', function () {
58
- it('should appropriately format multiple pages', function () {
59
- var EVENT_TYPE = _models.EventTypes.SUBMIT;
60
- var COMPONENTS = [setupField('alpha', {
53
+ describe('formatDataForPages', () => {
54
+ it('should appropriately format multiple pages', () => {
55
+ const EVENT_TYPE = _models.EventTypes.SUBMIT;
56
+ const COMPONENTS = [setupField('alpha', {
61
57
  type: 'lowercase',
62
58
  on: _models.EventTypes.SUBMIT
63
59
  }),
@@ -74,14 +70,13 @@ describe('utils', function () {
74
70
  on: _models.EventTypes.BLUR
75
71
  }) // Should not be formatted because of event type
76
72
  ];
77
-
78
- var DATA = {
73
+ const DATA = {
79
74
  alpha: 'AlPhA',
80
75
  bravo: 'bRaVo',
81
76
  charlie: 'CHArlie',
82
77
  delta: 'deLTA'
83
78
  };
84
- var PAGES = [{
79
+ const PAGES = [{
85
80
  components: COMPONENTS.slice(0, 1)
86
81
  }, {
87
82
  components: COMPONENTS.slice(2)
@@ -11,7 +11,7 @@ var _formatDataForPage = _interopRequireDefault(require("./formatDataForPage"));
11
11
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
12
  // Local imports
13
13
 
14
- var Format = {
14
+ const Format = {
15
15
  component: _formatDataForComponent.default,
16
16
  data: _formatData.default,
17
17
  form: _formatDataForForm.default,
@@ -22,7 +22,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
22
22
  * The string "CYA" if the CYA screen should be used, or;
23
23
  * A page configuration object if the CYA screen should not be used and components are defined.
24
24
  */
25
- var getFormHub = function getFormHub(type, hub, components, formData) {
25
+ const getFormHub = (type, hub, components, formData) => {
26
26
  if (type === _models.FormTypes.HUB && hub) {
27
27
  if (hub.format === _models.HubFormats.CYA) {
28
28
  return _models.HubFormats.CYA;
@@ -3,16 +3,12 @@
3
3
  var _models = require("../../models");
4
4
  var _getFormHub = _interopRequireDefault(require("./getFormHub"));
5
5
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6
- 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); }
7
- 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; }
8
- 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; }
9
- 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; }
10
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
11
- 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); } // Local imports
12
- describe('utils', function () {
13
- describe('Hub', function () {
14
- describe('getFormHub', function () {
15
- var FORM_COMPONENTS = [{
6
+ // Local imports
7
+
8
+ describe('utils', () => {
9
+ describe('Hub', () => {
10
+ describe('getFormHub', () => {
11
+ const FORM_COMPONENTS = [{
16
12
  id: 'a',
17
13
  fieldId: 'a',
18
14
  label: 'Alpha',
@@ -33,33 +29,33 @@ describe('utils', function () {
33
29
  url: '${urls.refData}/v3/charlies'
34
30
  }
35
31
  }];
36
- var FORM_DATA = {
32
+ const FORM_DATA = {
37
33
  urls: {
38
34
  refData: 'https://ho.gov.uk/ref-data/'
39
35
  }
40
36
  };
41
- [_models.FormTypes.CYA, _models.FormTypes.FORM, _models.FormTypes.WIZARD].forEach(function (formType) {
42
- describe("when the FormType is \"".concat(formType, "\""), function () {
43
- it('should return undefined', function () {
37
+ [_models.FormTypes.CYA, _models.FormTypes.FORM, _models.FormTypes.WIZARD].forEach(formType => {
38
+ describe("when the FormType is \"".concat(formType, "\""), () => {
39
+ it('should return undefined', () => {
44
40
  expect((0, _getFormHub.default)(formType, {}, FORM_COMPONENTS, FORM_DATA)).toBeUndefined();
45
41
  });
46
42
  });
47
43
  });
48
- describe("when the FormType is \"".concat(_models.FormTypes.HUB, "\""), function () {
49
- it('should return undefined when there is no hub', function () {
44
+ describe("when the FormType is \"".concat(_models.FormTypes.HUB, "\""), () => {
45
+ it('should return undefined when there is no hub', () => {
50
46
  expect((0, _getFormHub.default)(_models.FormTypes.HUB, null, FORM_COMPONENTS, FORM_DATA)).toBeUndefined();
51
47
  });
52
- it("should return undefined when the format is not \"".concat(_models.HubFormats.CYA, "\" but hub also has no components"), function () {
48
+ it("should return undefined when the format is not \"".concat(_models.HubFormats.CYA, "\" but hub also has no components"), () => {
53
49
  expect((0, _getFormHub.default)(_models.FormTypes.HUB, {}, FORM_COMPONENTS, FORM_DATA)).toBeUndefined();
54
50
  });
55
- it("should return the string \"".concat(_models.HubFormats.CYA, "\" when the format is set to \"").concat(_models.HubFormats.CYA, "\""), function () {
56
- var HUB = {
51
+ it("should return the string \"".concat(_models.HubFormats.CYA, "\" when the format is set to \"").concat(_models.HubFormats.CYA, "\""), () => {
52
+ const HUB = {
57
53
  format: _models.HubFormats.CYA
58
54
  };
59
55
  expect((0, _getFormHub.default)(_models.FormTypes.HUB, HUB, FORM_COMPONENTS, FORM_DATA)).toEqual(_models.HubFormats.CYA);
60
56
  });
61
- it("should return an appropriate page when the format is not \"".concat(_models.HubFormats.CYA, "\" and hub contains components"), function () {
62
- var HUB = {
57
+ it("should return an appropriate page when the format is not \"".concat(_models.HubFormats.CYA, "\" and hub contains components"), () => {
58
+ const HUB = {
63
59
  title: 'Hub title',
64
60
  components: ['Opening paragraph', {
65
61
  type: 'heading',
@@ -69,32 +65,33 @@ describe('utils', function () {
69
65
  use: 'a'
70
66
  }]
71
67
  };
72
- var A = FORM_COMPONENTS[0];
68
+ const A = FORM_COMPONENTS[0];
73
69
  expect((0, _getFormHub.default)(_models.FormTypes.HUB, HUB, FORM_COMPONENTS, FORM_DATA)).toEqual({
74
70
  title: HUB.title,
75
71
  components: [{
76
72
  type: 'html',
77
73
  tagName: 'p',
78
74
  content: HUB.components[0]
79
- }, _objectSpread(_objectSpread({}, HUB.components[1]), {}, {
75
+ }, {
76
+ ...HUB.components[1],
80
77
  full_path: HUB.components[1].fieldId
81
- }), {
78
+ }, {
82
79
  type: 'html',
83
80
  tagName: 'p',
84
81
  content: HUB.components[2]
85
- }, _objectSpread(_objectSpread({
86
- use: 'a'
87
- }, A), {}, {
82
+ }, {
83
+ use: 'a',
84
+ ...A,
88
85
  cya_label: A.label,
89
86
  full_path: A.fieldId
90
- })],
87
+ }],
91
88
  formData: FORM_DATA
92
89
  });
93
90
  });
94
91
  });
95
- describe("when the FormType is \"".concat(_models.FormTypes.TASK, "\""), function () {
96
- it("should return the string \"".concat(_models.HubFormats.TASK, "\" when the format is set to \"").concat(_models.HubFormats.TASK, "\""), function () {
97
- var HUB = {
92
+ describe("when the FormType is \"".concat(_models.FormTypes.TASK, "\""), () => {
93
+ it("should return the string \"".concat(_models.HubFormats.TASK, "\" when the format is set to \"").concat(_models.HubFormats.TASK, "\""), () => {
94
+ const HUB = {
98
95
  format: _models.HubFormats.TASK
99
96
  };
100
97
  expect((0, _getFormHub.default)(_models.FormTypes.TASK, HUB, FORM_COMPONENTS, FORM_DATA)).toEqual(_models.HubFormats.TASK);
@@ -8,7 +8,7 @@ var _getFormHub = _interopRequireDefault(require("./getFormHub"));
8
8
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
9
  // Local imports
10
10
 
11
- var Hub = {
11
+ const Hub = {
12
12
  get: _getFormHub.default
13
13
  };
14
14
  var _default = exports.default = Hub;
@@ -4,5 +4,5 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.META_PROPERTY = exports.META_DOCUMENTS_PROPERTY = void 0;
7
- var META_PROPERTY = exports.META_PROPERTY = 'meta';
8
- var META_DOCUMENTS_PROPERTY = exports.META_DOCUMENTS_PROPERTY = 'documents';
7
+ const META_PROPERTY = exports.META_PROPERTY = 'meta';
8
+ const META_DOCUMENTS_PROPERTY = exports.META_DOCUMENTS_PROPERTY = 'documents';
@@ -7,7 +7,7 @@ exports.default = void 0;
7
7
  var _constants = require("../constants");
8
8
  // Local imports
9
9
 
10
- var getDocuments = function getDocuments(formData) {
10
+ const getDocuments = formData => {
11
11
  var _formData$META_PROPER;
12
12
  return (formData === null || formData === void 0 || (_formData$META_PROPER = formData[_constants.META_PROPERTY]) === null || _formData$META_PROPER === void 0 ? void 0 : _formData$META_PROPER[_constants.META_DOCUMENTS_PROPERTY]) || [];
13
13
  };
@@ -3,35 +3,43 @@
3
3
  var _constants = require("../constants");
4
4
  var _getDocuments = _interopRequireDefault(require("./getDocuments"));
5
5
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6
- 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); }
7
- 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; }
8
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
9
- function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
10
- describe('Utils.Meta.documents.get', function () {
11
- it('should return an empty array if formData is null', function () {
6
+ describe('Utils.Meta.documents.get', () => {
7
+ it('should return an empty array if formData is null', () => {
12
8
  expect((0, _getDocuments.default)(null)).toEqual([]);
13
9
  });
14
- it('should return an empty array if formData does not contain a meta property', function () {
10
+ it('should return an empty array if formData does not contain a meta property', () => {
15
11
  expect((0, _getDocuments.default)({})).toEqual([]);
16
12
  });
17
- it('should return an empty array if the meta property is undefined', function () {
18
- var FORM_DATA = _defineProperty({}, _constants.META_PROPERTY, undefined);
13
+ it('should return an empty array if the meta property is undefined', () => {
14
+ const FORM_DATA = {
15
+ [_constants.META_PROPERTY]: undefined
16
+ };
19
17
  expect((0, _getDocuments.default)(FORM_DATA)).toEqual([]);
20
18
  });
21
- it('should return an empty array if the meta property contains no documents property', function () {
22
- var FORM_DATA = _defineProperty({}, _constants.META_PROPERTY, {});
19
+ it('should return an empty array if the meta property contains no documents property', () => {
20
+ const FORM_DATA = {
21
+ [_constants.META_PROPERTY]: {}
22
+ };
23
23
  expect((0, _getDocuments.default)(FORM_DATA)).toEqual([]);
24
24
  });
25
- it('should return an empty array if the meta.documents property is undefined', function () {
26
- var FORM_DATA = _defineProperty({}, _constants.META_PROPERTY, _defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, undefined));
25
+ it('should return an empty array if the meta.documents property is undefined', () => {
26
+ const FORM_DATA = {
27
+ [_constants.META_PROPERTY]: {
28
+ [_constants.META_DOCUMENTS_PROPERTY]: undefined
29
+ }
30
+ };
27
31
  expect((0, _getDocuments.default)(FORM_DATA)).toEqual([]);
28
32
  });
29
- it('should return the meta.documents property if it exists', function () {
30
- var DOCUMENTS = [{
33
+ it('should return the meta.documents property if it exists', () => {
34
+ const DOCUMENTS = [{
31
35
  field: 'alpha',
32
36
  url: 'http://alpha-bravo.com/files/charlie'
33
37
  }];
34
- var FORM_DATA = _defineProperty({}, _constants.META_PROPERTY, _defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, DOCUMENTS));
38
+ const FORM_DATA = {
39
+ [_constants.META_PROPERTY]: {
40
+ [_constants.META_DOCUMENTS_PROPERTY]: DOCUMENTS
41
+ }
42
+ };
35
43
  expect((0, _getDocuments.default)(FORM_DATA)).toEqual(DOCUMENTS);
36
44
  });
37
45
  });
@@ -10,7 +10,7 @@ var _getDocuments = _interopRequireDefault(require("./getDocuments"));
10
10
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
11
  // Local imports
12
12
 
13
- var documents = {
13
+ const documents = {
14
14
  setForField: _setDocumentsForField.default,
15
15
  get: _getDocuments.default,
16
16
  name: _constants.META_DOCUMENTS_PROPERTY
@@ -7,24 +7,22 @@ exports.default = void 0;
7
7
  var _constants = require("../constants");
8
8
  var _getDocuments = _interopRequireDefault(require("./getDocuments"));
9
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
- 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); }
11
- 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; }
12
- 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; }
13
- 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; }
14
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
15
- 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); } // Local imports
16
- var setDocumentsForField = function setDocumentsForField(documents, formData, field, allowMultiple) {
17
- var changedDocuments = allowMultiple ? (0, _getDocuments.default)(formData) : (0, _getDocuments.default)(formData).filter(function (d) {
18
- return d.field !== field;
19
- });
10
+ // Local imports
11
+
12
+ const setDocumentsForField = (documents, formData, field, allowMultiple) => {
13
+ const changedDocuments = allowMultiple ? (0, _getDocuments.default)(formData) : (0, _getDocuments.default)(formData).filter(d => d.field !== field);
20
14
  if (Array.isArray(documents)) {
21
- documents.forEach(function (document) {
22
- changedDocuments.push(_objectSpread(_objectSpread({}, document), {}, {
23
- field: field
24
- }));
15
+ documents.forEach(document => {
16
+ changedDocuments.push({
17
+ ...document,
18
+ field
19
+ });
25
20
  });
26
21
  }
27
- var existing = formData ? formData[_constants.META_PROPERTY] : undefined;
28
- return _objectSpread(_objectSpread({}, existing), {}, _defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, changedDocuments));
22
+ const existing = formData ? formData[_constants.META_PROPERTY] : undefined;
23
+ return {
24
+ ...existing,
25
+ [_constants.META_DOCUMENTS_PROPERTY]: changedDocuments
26
+ };
29
27
  };
30
28
  var _default = exports.default = setDocumentsForField;
@@ -3,57 +3,91 @@
3
3
  var _constants = require("../constants");
4
4
  var _setDocumentsForField = _interopRequireDefault(require("./setDocumentsForField"));
5
5
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
6
- 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); }
7
- 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; }
8
- 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; }
9
- 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; }
10
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
11
- 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); }
12
- describe('Utils.Meta.documents.add', function () {
13
- var ALPHA_DOCUMENT = {
6
+ describe('Utils.Meta.documents.add', () => {
7
+ const ALPHA_DOCUMENT = {
14
8
  field: 'alpha',
15
9
  url: 'http://alpha-bravo.com/files/alpha'
16
10
  };
17
- var BRAVO_DOCUMENT = {
11
+ const BRAVO_DOCUMENT = {
18
12
  field: 'bravo',
19
13
  url: 'http://alpha-bravo.com/files/bravo'
20
14
  };
21
- it('should return an appropriately set up object if formData is null', function () {
22
- expect((0, _setDocumentsForField.default)([ALPHA_DOCUMENT], null, ALPHA_DOCUMENT.field)).toEqual(_defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, [ALPHA_DOCUMENT]));
15
+ it('should return an appropriately set up object if formData is null', () => {
16
+ expect((0, _setDocumentsForField.default)([ALPHA_DOCUMENT], null, ALPHA_DOCUMENT.field)).toEqual({
17
+ [_constants.META_DOCUMENTS_PROPERTY]: [ALPHA_DOCUMENT]
18
+ });
23
19
  });
24
- it('should add a new document to the array', function () {
25
- var FORM_DATA = _defineProperty({}, _constants.META_PROPERTY, _defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, [ALPHA_DOCUMENT]));
26
- expect((0, _setDocumentsForField.default)([BRAVO_DOCUMENT], FORM_DATA, BRAVO_DOCUMENT.field)).toEqual(_defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, [ALPHA_DOCUMENT, BRAVO_DOCUMENT]));
20
+ it('should add a new document to the array', () => {
21
+ const FORM_DATA = {
22
+ [_constants.META_PROPERTY]: {
23
+ [_constants.META_DOCUMENTS_PROPERTY]: [ALPHA_DOCUMENT]
24
+ }
25
+ };
26
+ expect((0, _setDocumentsForField.default)([BRAVO_DOCUMENT], FORM_DATA, BRAVO_DOCUMENT.field)).toEqual({
27
+ [_constants.META_DOCUMENTS_PROPERTY]: [ALPHA_DOCUMENT, BRAVO_DOCUMENT]
28
+ });
27
29
  });
28
- it('should add multiple new documents to the array', function () {
29
- var FORM_DATA = _defineProperty({}, _constants.META_PROPERTY, _defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, []));
30
- var SECOND_DOCUMENT = _objectSpread({}, ALPHA_DOCUMENT);
31
- expect((0, _setDocumentsForField.default)([ALPHA_DOCUMENT, SECOND_DOCUMENT], FORM_DATA, ALPHA_DOCUMENT.field)).toEqual(_defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, [ALPHA_DOCUMENT, SECOND_DOCUMENT]));
30
+ it('should add multiple new documents to the array', () => {
31
+ const FORM_DATA = {
32
+ [_constants.META_PROPERTY]: {
33
+ [_constants.META_DOCUMENTS_PROPERTY]: []
34
+ }
35
+ };
36
+ const SECOND_DOCUMENT = {
37
+ ...ALPHA_DOCUMENT
38
+ };
39
+ expect((0, _setDocumentsForField.default)([ALPHA_DOCUMENT, SECOND_DOCUMENT], FORM_DATA, ALPHA_DOCUMENT.field)).toEqual({
40
+ [_constants.META_DOCUMENTS_PROPERTY]: [ALPHA_DOCUMENT, SECOND_DOCUMENT]
41
+ });
32
42
  });
33
- it('should replace an existing document with the same field', function () {
34
- var NEW_URL = 'http://replacement.com/files/alpha';
35
- var NEW_ALPHA = {
43
+ it('should replace an existing document with the same field', () => {
44
+ const NEW_URL = 'http://replacement.com/files/alpha';
45
+ const NEW_ALPHA = {
36
46
  field: ALPHA_DOCUMENT.field,
37
47
  url: NEW_URL
38
48
  };
39
- var FORM_DATA = _defineProperty({}, _constants.META_PROPERTY, _defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, [ALPHA_DOCUMENT]));
40
- expect((0, _setDocumentsForField.default)([NEW_ALPHA], FORM_DATA, NEW_ALPHA.field)).toEqual(_defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, [NEW_ALPHA]));
49
+ const FORM_DATA = {
50
+ [_constants.META_PROPERTY]: {
51
+ [_constants.META_DOCUMENTS_PROPERTY]: [ALPHA_DOCUMENT]
52
+ }
53
+ };
54
+ expect((0, _setDocumentsForField.default)([NEW_ALPHA], FORM_DATA, NEW_ALPHA.field)).toEqual({
55
+ [_constants.META_DOCUMENTS_PROPERTY]: [NEW_ALPHA]
56
+ });
41
57
  });
42
- it('should add a document with the same field if allowMultiple is true', function () {
43
- var NEW_URL = 'http://replacement.com/files/alpha';
44
- var NEW_ALPHA = {
58
+ it('should add a document with the same field if allowMultiple is true', () => {
59
+ const NEW_URL = 'http://replacement.com/files/alpha';
60
+ const NEW_ALPHA = {
45
61
  field: ALPHA_DOCUMENT.field,
46
62
  url: NEW_URL
47
63
  };
48
- var FORM_DATA = _defineProperty({}, _constants.META_PROPERTY, _defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, [ALPHA_DOCUMENT]));
49
- expect((0, _setDocumentsForField.default)([NEW_ALPHA], FORM_DATA, NEW_ALPHA.field, true)).toEqual(_defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, [ALPHA_DOCUMENT, NEW_ALPHA]));
64
+ const FORM_DATA = {
65
+ [_constants.META_PROPERTY]: {
66
+ [_constants.META_DOCUMENTS_PROPERTY]: [ALPHA_DOCUMENT]
67
+ }
68
+ };
69
+ expect((0, _setDocumentsForField.default)([NEW_ALPHA], FORM_DATA, NEW_ALPHA.field, true)).toEqual({
70
+ [_constants.META_DOCUMENTS_PROPERTY]: [ALPHA_DOCUMENT, NEW_ALPHA]
71
+ });
50
72
  });
51
- it('should handle a null document being passed where a document with that field already exists', function () {
52
- var FORM_DATA = _defineProperty({}, _constants.META_PROPERTY, _defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, [ALPHA_DOCUMENT]));
53
- expect((0, _setDocumentsForField.default)(null, FORM_DATA, ALPHA_DOCUMENT.field)).toEqual(_defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, []));
73
+ it('should handle a null document being passed where a document with that field already exists', () => {
74
+ const FORM_DATA = {
75
+ [_constants.META_PROPERTY]: {
76
+ [_constants.META_DOCUMENTS_PROPERTY]: [ALPHA_DOCUMENT]
77
+ }
78
+ };
79
+ expect((0, _setDocumentsForField.default)(null, FORM_DATA, ALPHA_DOCUMENT.field)).toEqual({
80
+ [_constants.META_DOCUMENTS_PROPERTY]: []
81
+ });
54
82
  });
55
- it('should handle a null document being passed where a document with that field does not already exist', function () {
56
- var FORM_DATA = _defineProperty({}, _constants.META_PROPERTY, _defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, [ALPHA_DOCUMENT]));
57
- expect((0, _setDocumentsForField.default)(null, FORM_DATA, BRAVO_DOCUMENT.field)).toEqual(_defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, [ALPHA_DOCUMENT]));
83
+ it('should handle a null document being passed where a document with that field does not already exist', () => {
84
+ const FORM_DATA = {
85
+ [_constants.META_PROPERTY]: {
86
+ [_constants.META_DOCUMENTS_PROPERTY]: [ALPHA_DOCUMENT]
87
+ }
88
+ };
89
+ expect((0, _setDocumentsForField.default)(null, FORM_DATA, BRAVO_DOCUMENT.field)).toEqual({
90
+ [_constants.META_DOCUMENTS_PROPERTY]: [ALPHA_DOCUMENT]
91
+ });
58
92
  });
59
93
  });
@@ -9,7 +9,7 @@ var _documents = _interopRequireDefault(require("./documents"));
9
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
10
  // Local imports
11
11
 
12
- var Meta = {
12
+ const Meta = {
13
13
  documents: _documents.default,
14
14
  name: _constants.META_PROPERTY
15
15
  };
@@ -18,9 +18,9 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
18
18
  * @param {object} data The page's formData.
19
19
  * @returns true if the value is truthy, false if it isn't or doesn't exist.
20
20
  */
21
- var checkValueIsTruthy = function checkValueIsTruthy(config, data) {
21
+ const checkValueIsTruthy = (config, data) => {
22
22
  if (config !== null && config !== void 0 && config.field) {
23
- var fieldPath = _copReactComponents.Utils.interpolateString(config.field, data);
23
+ const fieldPath = _copReactComponents.Utils.interpolateString(config.field, data);
24
24
  return !!(0, _getSourceData.default)(data, fieldPath);
25
25
  }
26
26
  return false;