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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (384) hide show
  1. package/dist/components/CheckYourAnswers/Answer.js +15 -15
  2. package/dist/components/CheckYourAnswers/Answer.test.js +132 -181
  3. package/dist/components/CheckYourAnswers/CheckYourAnswers.js +106 -142
  4. package/dist/components/CheckYourAnswers/CheckYourAnswers.test.js +563 -941
  5. package/dist/components/CheckYourAnswers/index.js +1 -1
  6. package/dist/components/CollectionPage/CollectionPage.js +76 -66
  7. package/dist/components/CollectionPage/CollectionPage.test.js +318 -369
  8. package/dist/components/CollectionPage/index.js +1 -1
  9. package/dist/components/CollectionSummary/BannerStrip.js +15 -15
  10. package/dist/components/CollectionSummary/BannerStrip.test.js +83 -79
  11. package/dist/components/CollectionSummary/CollectionSummary.js +109 -131
  12. package/dist/components/CollectionSummary/CollectionSummary.test.js +198 -180
  13. package/dist/components/CollectionSummary/Confirmation.js +15 -13
  14. package/dist/components/CollectionSummary/Confirmation.test.js +68 -63
  15. package/dist/components/CollectionSummary/RenderListView.js +47 -55
  16. package/dist/components/CollectionSummary/RenderListView.test.js +82 -81
  17. package/dist/components/CollectionSummary/SummaryCard.js +121 -157
  18. package/dist/components/CollectionSummary/SummaryCard.test.js +970 -1000
  19. package/dist/components/CollectionSummary/SummaryCardDetails.js +103 -94
  20. package/dist/components/CollectionSummary/SummaryCardDetails.test.js +187 -195
  21. package/dist/components/CollectionSummary/SummaryCardValidationContext.js +31 -36
  22. package/dist/components/CollectionSummary/SummaryCardValidationContext.test.js +64 -76
  23. package/dist/components/CollectionSummary/index.js +1 -1
  24. package/dist/components/FormComponent/Collection.js +81 -117
  25. package/dist/components/FormComponent/Collection.scss +1 -1
  26. package/dist/components/FormComponent/Collection.test.js +910 -1082
  27. package/dist/components/FormComponent/Container.js +45 -38
  28. package/dist/components/FormComponent/Container.scss +15 -0
  29. package/dist/components/FormComponent/Container.test.js +379 -411
  30. package/dist/components/FormComponent/FormComponent.js +71 -74
  31. package/dist/components/FormComponent/FormComponent.test.js +354 -415
  32. package/dist/components/FormComponent/helpers/addLabel.js +4 -7
  33. package/dist/components/FormComponent/helpers/getComponentDisabled.js +1 -1
  34. package/dist/components/FormComponent/helpers/getComponentDisabled.test.js +8 -8
  35. package/dist/components/FormComponent/helpers/getComponentError.js +3 -5
  36. package/dist/components/FormComponent/helpers/getComponentError.test.js +15 -15
  37. package/dist/components/FormComponent/helpers/getComponentFieldSet.js +3 -4
  38. package/dist/components/FormComponent/helpers/getComponentFieldSet.test.js +7 -7
  39. package/dist/components/FormComponent/helpers/index.js +5 -5
  40. package/dist/components/FormComponent/index.js +1 -1
  41. package/dist/components/FormPage/FormPage.js +71 -87
  42. package/dist/components/FormPage/FormPage.test.js +133 -170
  43. package/dist/components/FormPage/index.js +1 -1
  44. package/dist/components/FormRenderer/FormRenderer.js +153 -198
  45. package/dist/components/FormRenderer/FormRenderer.test.js +731 -1116
  46. package/dist/components/FormRenderer/handlers/cyaAction.js +3 -3
  47. package/dist/components/FormRenderer/handlers/getPageId.js +1 -3
  48. package/dist/components/FormRenderer/handlers/getPageId.test.js +15 -15
  49. package/dist/components/FormRenderer/handlers/handlers.test.js +33 -33
  50. package/dist/components/FormRenderer/handlers/index.js +2 -2
  51. package/dist/components/FormRenderer/handlers/navigate.js +4 -4
  52. package/dist/components/FormRenderer/handlers/submissionError.js +1 -1
  53. package/dist/components/FormRenderer/helpers/canActionProceed.js +1 -1
  54. package/dist/components/FormRenderer/helpers/canActionProceed.test.js +16 -16
  55. package/dist/components/FormRenderer/helpers/canCYASubmit.js +1 -3
  56. package/dist/components/FormRenderer/helpers/canCYASubmit.test.js +17 -21
  57. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.js +27 -30
  58. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.test.js +21 -21
  59. package/dist/components/FormRenderer/helpers/getCYA.js +5 -7
  60. package/dist/components/FormRenderer/helpers/getCYA.test.js +12 -12
  61. package/dist/components/FormRenderer/helpers/getFormState.js +6 -8
  62. package/dist/components/FormRenderer/helpers/getFormState.test.js +11 -11
  63. package/dist/components/FormRenderer/helpers/getNextPageId.js +18 -32
  64. package/dist/components/FormRenderer/helpers/getNextPageId.test.js +68 -68
  65. package/dist/components/FormRenderer/helpers/getPage.js +2 -4
  66. package/dist/components/FormRenderer/helpers/getPage.test.js +12 -12
  67. package/dist/components/FormRenderer/helpers/getRelevantPages.js +8 -11
  68. package/dist/components/FormRenderer/helpers/getRelevantPages.test.js +15 -15
  69. package/dist/components/FormRenderer/helpers/getSubmissionStatus.js +12 -13
  70. package/dist/components/FormRenderer/helpers/getSubmissionStatus.test.js +104 -98
  71. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.js +65 -64
  72. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.test.js +72 -79
  73. package/dist/components/FormRenderer/helpers/index.js +2 -2
  74. package/dist/components/FormRenderer/index.js +1 -1
  75. package/dist/components/FormRenderer/onCYAAction.js +61 -54
  76. package/dist/components/FormRenderer/onCYAAction.test.js +165 -153
  77. package/dist/components/FormRenderer/onPageAction.js +45 -41
  78. package/dist/components/FormRenderer/onPageAction.test.js +225 -210
  79. package/dist/components/FormRenderer/onTaskAction.js +11 -15
  80. package/dist/components/FormRenderer/onTaskAction.test.js +94 -89
  81. package/dist/components/PageActions/ActionButton.js +13 -16
  82. package/dist/components/PageActions/ActionButton.test.js +57 -79
  83. package/dist/components/PageActions/PageActions.js +11 -11
  84. package/dist/components/PageActions/PageActions.test.js +87 -116
  85. package/dist/components/PageActions/index.js +1 -1
  86. package/dist/components/SummaryList/GroupAction.js +13 -21
  87. package/dist/components/SummaryList/GroupAction.test.js +41 -37
  88. package/dist/components/SummaryList/RowAction.js +12 -17
  89. package/dist/components/SummaryList/RowAction.test.js +41 -37
  90. package/dist/components/SummaryList/SummaryList.js +23 -28
  91. package/dist/components/SummaryList/SummaryList.test.js +179 -206
  92. package/dist/components/SummaryList/SummaryListHeadingRow.js +8 -6
  93. package/dist/components/SummaryList/SummaryListHeadingRowWithAction.js +7 -5
  94. package/dist/components/SummaryList/SummaryListRow.js +8 -6
  95. package/dist/components/SummaryList/SummaryListTitleRow.js +7 -5
  96. package/dist/components/SummaryList/helpers/getGroupActionAttributes.js +4 -6
  97. package/dist/components/SummaryList/helpers/getGroupActionAttributes.test.js +24 -24
  98. package/dist/components/SummaryList/helpers/getRowActionAttributes.js +4 -6
  99. package/dist/components/SummaryList/helpers/getRowActionAttributes.test.js +24 -24
  100. package/dist/components/SummaryList/helpers/index.js +2 -2
  101. package/dist/components/SummaryList/index.js +1 -1
  102. package/dist/components/TaskList/Task.js +20 -30
  103. package/dist/components/TaskList/Task.test.js +84 -77
  104. package/dist/components/TaskList/TaskList.js +53 -84
  105. package/dist/components/TaskList/TaskList.test.js +150 -150
  106. package/dist/components/TaskList/TaskState.js +8 -6
  107. package/dist/components/TaskList/TaskState.test.js +56 -49
  108. package/dist/components/TaskList/index.js +1 -1
  109. package/dist/components/index.js +8 -8
  110. package/dist/context/HooksContext/HooksContext.js +58 -81
  111. package/dist/context/HooksContext/HooksContext.test.js +27 -36
  112. package/dist/context/HooksContext/index.js +3 -4
  113. package/dist/context/ValidationContext/ValidationContext.js +44 -95
  114. package/dist/context/ValidationContext/ValidationContext.test.js +58 -70
  115. package/dist/context/ValidationContext/index.js +3 -4
  116. package/dist/context/index.js +3 -3
  117. package/dist/hooks/index.js +10 -11
  118. package/dist/hooks/useAxios.js +15 -41
  119. package/dist/hooks/useGetRequest.js +62 -98
  120. package/dist/hooks/useHooks.js +1 -3
  121. package/dist/hooks/useRefData.js +28 -41
  122. package/dist/hooks/useValidation.js +1 -3
  123. package/dist/index.js +14 -15
  124. package/dist/models/CollectionLabels.js +1 -1
  125. package/dist/models/ComponentTypes.js +25 -25
  126. package/dist/models/EventTypes.js +4 -4
  127. package/dist/models/FormPages.js +4 -4
  128. package/dist/models/FormTypes.js +8 -8
  129. package/dist/models/HubFormats.js +3 -3
  130. package/dist/models/PageAction.js +44 -38
  131. package/dist/models/TaskStates.js +29 -28
  132. package/dist/models/index.js +10 -10
  133. package/dist/setupTests.js +31 -32
  134. package/dist/utils/CheckYourAnswers/getCYAAction.js +5 -5
  135. package/dist/utils/CheckYourAnswers/getCYAAction.test.js +53 -55
  136. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.js +17 -27
  137. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.test.js +34 -36
  138. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.js +20 -34
  139. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.test.js +43 -45
  140. package/dist/utils/CheckYourAnswers/getCYARow.js +8 -10
  141. package/dist/utils/CheckYourAnswers/getCYARow.test.js +87 -87
  142. package/dist/utils/CheckYourAnswers/getCYARowForGroup.js +19 -25
  143. package/dist/utils/CheckYourAnswers/getCYARowForGroup.test.js +16 -17
  144. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.js +39 -45
  145. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.test.js +72 -75
  146. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.js +100 -105
  147. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.test.js +218 -182
  148. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.js +26 -21
  149. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.test.js +112 -106
  150. package/dist/utils/CheckYourAnswers/getCYARowsForPage.js +15 -21
  151. package/dist/utils/CheckYourAnswers/getCYARowsForPage.test.js +77 -83
  152. package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.js +13 -13
  153. package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.test.js +14 -19
  154. package/dist/utils/CheckYourAnswers/index.js +2 -2
  155. package/dist/utils/CheckYourAnswers/showComponentCYA.js +6 -6
  156. package/dist/utils/CheckYourAnswers/showComponentCYA.test.js +26 -26
  157. package/dist/utils/CollectionPage/addCollectionPageEntry.js +3 -3
  158. package/dist/utils/CollectionPage/addCollectionPageEntry.test.js +6 -6
  159. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.js +3 -3
  160. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.test.js +21 -22
  161. package/dist/utils/CollectionPage/duplicateCollectionPageEntry.js +15 -24
  162. package/dist/utils/CollectionPage/duplicateCollectionPageEntry.test.js +52 -43
  163. package/dist/utils/CollectionPage/getCollectionPageActiveId.js +3 -3
  164. package/dist/utils/CollectionPage/getCollectionPageActiveId.test.js +11 -11
  165. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.js +7 -12
  166. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.test.js +23 -23
  167. package/dist/utils/CollectionPage/getCollectionPageData.js +8 -13
  168. package/dist/utils/CollectionPage/getCollectionPageData.test.js +20 -20
  169. package/dist/utils/CollectionPage/getErrorsForCollection.js +25 -26
  170. package/dist/utils/CollectionPage/getErrorsForCollection.test.js +21 -23
  171. package/dist/utils/CollectionPage/getQuickEditPage.js +37 -32
  172. package/dist/utils/CollectionPage/getQuickEditPage.test.js +18 -22
  173. package/dist/utils/CollectionPage/index.js +2 -2
  174. package/dist/utils/CollectionPage/mergeCollectionPages.js +37 -42
  175. package/dist/utils/CollectionPage/mergeCollectionPages.test.js +26 -22
  176. package/dist/utils/CollectionPage/removeCollectionPageEntry.js +5 -7
  177. package/dist/utils/CollectionPage/removeCollectionPageEntry.test.js +11 -11
  178. package/dist/utils/CollectionPage/setCollectionPageData.js +13 -19
  179. package/dist/utils/CollectionPage/setCollectionPageData.test.js +26 -26
  180. package/dist/utils/Component/addShowWhen.js +4 -8
  181. package/dist/utils/Component/addShowWhen.test.js +38 -38
  182. package/dist/utils/Component/applyToComponentTree.js +19 -20
  183. package/dist/utils/Component/applyToComponentTree.test.js +28 -33
  184. package/dist/utils/Component/cleanAttributes.js +10 -13
  185. package/dist/utils/Component/cleanAttributes.test.js +17 -18
  186. package/dist/utils/Component/elevateNestedComponents.js +6 -7
  187. package/dist/utils/Component/elevateNestedComponents.test.js +34 -34
  188. package/dist/utils/Component/getComponent.js +90 -97
  189. package/dist/utils/Component/getComponentTests/getComponent.autocomplete.test.js +19 -18
  190. package/dist/utils/Component/getComponentTests/getComponent.calculation.test.js +50 -63
  191. package/dist/utils/Component/getComponentTests/getComponent.checkboxes.test.js +40 -49
  192. package/dist/utils/Component/getComponentTests/getComponent.date.test.js +30 -40
  193. package/dist/utils/Component/getComponentTests/getComponent.details.test.js +21 -19
  194. package/dist/utils/Component/getComponentTests/getComponent.email.test.js +18 -23
  195. package/dist/utils/Component/getComponentTests/getComponent.file.test.js +22 -27
  196. package/dist/utils/Component/getComponentTests/getComponent.heading.test.js +12 -11
  197. package/dist/utils/Component/getComponentTests/getComponent.html.test.js +18 -16
  198. package/dist/utils/Component/getComponentTests/getComponent.insetText.test.js +10 -9
  199. package/dist/utils/Component/getComponentTests/getComponent.list.test.js +18 -16
  200. package/dist/utils/Component/getComponentTests/getComponent.multifile.test.js +23 -27
  201. package/dist/utils/Component/getComponentTests/getComponent.nested.test.js +155 -175
  202. package/dist/utils/Component/getComponentTests/getComponent.paragraph.test.js +18 -16
  203. package/dist/utils/Component/getComponentTests/getComponent.phoneNumber.test.js +18 -23
  204. package/dist/utils/Component/getComponentTests/getComponent.radios.test.js +58 -73
  205. package/dist/utils/Component/getComponentTests/getComponent.select.test.js +18 -23
  206. package/dist/utils/Component/getComponentTests/getComponent.text.test.js +18 -23
  207. package/dist/utils/Component/getComponentTests/getComponent.textArea.test.js +34 -41
  208. package/dist/utils/Component/getComponentTests/getComponent.time.test.js +23 -32
  209. package/dist/utils/Component/getComponentTests/getComponent.unknown.test.js +3 -3
  210. package/dist/utils/Component/getComponentTests/getComponent.warningText.test.js +10 -9
  211. package/dist/utils/Component/getDefaultValue.js +7 -9
  212. package/dist/utils/Component/getDefaultValue.test.js +13 -13
  213. package/dist/utils/Component/getDefaultValueFromConfig.js +24 -24
  214. package/dist/utils/Component/getDefaultValueFromConfig.test.js +32 -32
  215. package/dist/utils/Component/index.js +2 -2
  216. package/dist/utils/Component/isEditable.js +2 -4
  217. package/dist/utils/Component/isEditable.test.js +14 -15
  218. package/dist/utils/Component/optionIsSelected.js +2 -4
  219. package/dist/utils/Component/optionIsSelected.test.js +12 -12
  220. package/dist/utils/Component/setupContainerComponentsPath.js +29 -31
  221. package/dist/utils/Component/setupContainerComponentsPath.test.js +16 -16
  222. package/dist/utils/Component/showComponent.js +3 -4
  223. package/dist/utils/Component/showComponent.test.js +29 -29
  224. package/dist/utils/Component/wrapInFormGroup.js +4 -4
  225. package/dist/utils/Condition/index.js +2 -2
  226. package/dist/utils/Condition/meetsAllConditions.js +9 -9
  227. package/dist/utils/Condition/meetsAllConditions.test.js +21 -21
  228. package/dist/utils/Condition/meetsCondition.js +20 -31
  229. package/dist/utils/Condition/meetsCondition.test.js +403 -403
  230. package/dist/utils/Condition/meetsOneCondition.js +6 -6
  231. package/dist/utils/Condition/meetsOneCondition.test.js +17 -17
  232. package/dist/utils/Condition/setupConditions.js +14 -19
  233. package/dist/utils/Condition/setupConditions.test.js +8 -8
  234. package/dist/utils/Container/getEditableComponents.js +4 -6
  235. package/dist/utils/Container/getEditableComponents.test.js +44 -46
  236. package/dist/utils/Container/index.js +2 -2
  237. package/dist/utils/Container/setupNesting.js +16 -22
  238. package/dist/utils/Container/setupNesting.test.js +28 -31
  239. package/dist/utils/Container/showContainer.js +4 -8
  240. package/dist/utils/Container/showContainer.test.js +31 -31
  241. package/dist/utils/Data/applyFormula.js +40 -50
  242. package/dist/utils/Data/applyFormula.test.js +26 -26
  243. package/dist/utils/Data/deleteValues.js +4 -8
  244. package/dist/utils/Data/deleteValues.test.js +11 -11
  245. package/dist/utils/Data/getAutocompleteSource.js +20 -29
  246. package/dist/utils/Data/getAutocompleteSource.test.js +81 -87
  247. package/dist/utils/Data/getDataPath.js +20 -30
  248. package/dist/utils/Data/getDataPath.test.js +20 -20
  249. package/dist/utils/Data/getOptions.js +27 -34
  250. package/dist/utils/Data/getOptions.test.js +28 -28
  251. package/dist/utils/Data/getSourceData.js +6 -19
  252. package/dist/utils/Data/getSourceData.test.js +85 -81
  253. package/dist/utils/Data/index.js +2 -2
  254. package/dist/utils/Data/nestInRefdataOptions.js +9 -16
  255. package/dist/utils/Data/nestInRefdataOptions.test.js +17 -17
  256. package/dist/utils/Data/refDataToOptions.js +11 -15
  257. package/dist/utils/Data/refDataToOptions.test.js +20 -20
  258. package/dist/utils/Data/setDataItem.js +7 -8
  259. package/dist/utils/Data/setDataItem.test.js +38 -38
  260. package/dist/utils/Data/setupFormData.js +14 -22
  261. package/dist/utils/Data/setupFormData.test.js +52 -51
  262. package/dist/utils/Data/setupRefDataUrlForComponent.js +21 -28
  263. package/dist/utils/Data/setupRefDataUrlForComponent.test.js +28 -28
  264. package/dist/utils/FormPage/applyConditionalProperties.js +6 -10
  265. package/dist/utils/FormPage/applyConditionalProperties.test.js +16 -19
  266. package/dist/utils/FormPage/getConditionalText.js +4 -4
  267. package/dist/utils/FormPage/getConditionalText.test.js +35 -35
  268. package/dist/utils/FormPage/getFormPage.js +16 -17
  269. package/dist/utils/FormPage/getFormPage.test.js +49 -48
  270. package/dist/utils/FormPage/getFormPages.js +8 -13
  271. package/dist/utils/FormPage/getFormPages.test.js +22 -25
  272. package/dist/utils/FormPage/getPageActions.js +10 -17
  273. package/dist/utils/FormPage/getPageActions.test.js +33 -33
  274. package/dist/utils/FormPage/getParagraphFromText.js +5 -7
  275. package/dist/utils/FormPage/getParagraphFromText.test.js +7 -7
  276. package/dist/utils/FormPage/index.js +3 -5
  277. package/dist/utils/FormPage/showFormPage.js +4 -8
  278. package/dist/utils/FormPage/showFormPage.test.js +33 -33
  279. package/dist/utils/FormPage/showFormPageCYA.js +3 -3
  280. package/dist/utils/FormPage/showFormPageCYA.test.js +9 -9
  281. package/dist/utils/FormPage/useComponent.js +21 -28
  282. package/dist/utils/FormPage/useComponent.test.js +78 -80
  283. package/dist/utils/Format/formatData.js +1 -1
  284. package/dist/utils/Format/formatData.test.js +19 -19
  285. package/dist/utils/Format/formatDataForComponent.js +6 -7
  286. package/dist/utils/Format/formatDataForComponent.test.js +50 -78
  287. package/dist/utils/Format/formatDataForForm.js +6 -8
  288. package/dist/utils/Format/formatDataForForm.test.js +14 -17
  289. package/dist/utils/Format/formatDataForPage.js +4 -5
  290. package/dist/utils/Format/formatDataForPage.test.js +20 -25
  291. package/dist/utils/Format/index.js +2 -2
  292. package/dist/utils/Hub/getFormHub.js +2 -2
  293. package/dist/utils/Hub/getFormHub.test.js +29 -32
  294. package/dist/utils/Hub/index.js +2 -2
  295. package/dist/utils/Meta/constants.js +2 -2
  296. package/dist/utils/Meta/documents/getDocuments.js +1 -4
  297. package/dist/utils/Meta/documents/getDocuments.test.js +25 -17
  298. package/dist/utils/Meta/documents/index.js +2 -2
  299. package/dist/utils/Meta/documents/setDocumentsForField.js +15 -17
  300. package/dist/utils/Meta/documents/setDocumentsForField.test.js +69 -35
  301. package/dist/utils/Meta/index.js +2 -2
  302. package/dist/utils/Operate/checkValueIsTruthy.js +4 -4
  303. package/dist/utils/Operate/checkValueIsTruthy.test.js +17 -17
  304. package/dist/utils/Operate/deleteValueInFormData.js +3 -3
  305. package/dist/utils/Operate/deleteValueInFormData.test.js +15 -15
  306. package/dist/utils/Operate/getFirstOf.js +8 -8
  307. package/dist/utils/Operate/getFirstOf.test.js +33 -33
  308. package/dist/utils/Operate/getIndexOfMatchingValueIn.js +12 -12
  309. package/dist/utils/Operate/getIndexOfMatchingValueIn.test.js +47 -53
  310. package/dist/utils/Operate/getLength.js +11 -11
  311. package/dist/utils/Operate/getLength.test.js +19 -19
  312. package/dist/utils/Operate/index.js +2 -2
  313. package/dist/utils/Operate/persistValueInFormData.js +6 -6
  314. package/dist/utils/Operate/persistValueInFormData.test.js +23 -21
  315. package/dist/utils/Operate/runPageOperations.js +9 -9
  316. package/dist/utils/Operate/runPageOperations.test.js +36 -37
  317. package/dist/utils/Operate/setValueInFormData.js +5 -5
  318. package/dist/utils/Operate/setValueInFormData.test.js +17 -17
  319. package/dist/utils/Operate/shouldRun.js +8 -8
  320. package/dist/utils/Operate/shouldRun.test.js +22 -28
  321. package/dist/utils/Validate/additional/conditionallyPermittedChange.js +25 -0
  322. package/dist/utils/Validate/additional/conditionallyPermittedChange.test.js +33 -0
  323. package/dist/utils/Validate/additional/conditionallyRequired.js +4 -5
  324. package/dist/utils/Validate/additional/conditionallyRequired.test.js +19 -19
  325. package/dist/utils/Validate/additional/index.js +10 -8
  326. package/dist/utils/Validate/additional/index.test.js +22 -22
  327. package/dist/utils/Validate/additional/mustBeAfter.js +3 -3
  328. package/dist/utils/Validate/additional/mustBeAfter.test.js +41 -41
  329. package/dist/utils/Validate/additional/mustBeBefore.js +3 -3
  330. package/dist/utils/Validate/additional/mustBeBefore.test.js +29 -29
  331. package/dist/utils/Validate/additional/mustBeEarlierDateTime.js +9 -14
  332. package/dist/utils/Validate/additional/mustBeEarlierDateTime.test.js +38 -42
  333. package/dist/utils/Validate/additional/mustBeGreaterThan.js +2 -2
  334. package/dist/utils/Validate/additional/mustBeGreaterThan.test.js +19 -19
  335. package/dist/utils/Validate/additional/mustBeInTheFuture.js +4 -4
  336. package/dist/utils/Validate/additional/mustBeInTheFuture.test.js +13 -13
  337. package/dist/utils/Validate/additional/mustBeInThePast.js +5 -5
  338. package/dist/utils/Validate/additional/mustBeInThePast.test.js +13 -13
  339. package/dist/utils/Validate/additional/mustBeLessThan.js +2 -2
  340. package/dist/utils/Validate/additional/mustBeLessThan.test.js +18 -18
  341. package/dist/utils/Validate/additional/mustBeLongerThan.js +1 -1
  342. package/dist/utils/Validate/additional/mustBeLongerThan.test.js +17 -17
  343. package/dist/utils/Validate/additional/mustBeNumbersOnly.js +2 -2
  344. package/dist/utils/Validate/additional/mustBeNumbersOnly.test.js +21 -21
  345. package/dist/utils/Validate/additional/mustBeOneOf.js +1 -1
  346. package/dist/utils/Validate/additional/mustBeOneOf.test.js +13 -13
  347. package/dist/utils/Validate/additional/mustBeShorterThan.js +1 -1
  348. package/dist/utils/Validate/additional/mustBeShorterThan.test.js +17 -17
  349. package/dist/utils/Validate/additional/mustBeUniqueInCollection.js +5 -5
  350. package/dist/utils/Validate/additional/mustBeUniqueInCollection.test.js +36 -40
  351. package/dist/utils/Validate/additional/mustEnterAtLeastOne.js +3 -5
  352. package/dist/utils/Validate/additional/mustEnterAtLeastOne.test.js +15 -17
  353. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.js +1 -1
  354. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.test.js +13 -13
  355. package/dist/utils/Validate/additional/mustNotContainSql.js +3 -4
  356. package/dist/utils/Validate/additional/mustNotContainSql.test.js +15 -15
  357. package/dist/utils/Validate/additional/mustSelectOnlyOne.js +3 -5
  358. package/dist/utils/Validate/additional/mustSelectOnlyOne.test.js +29 -27
  359. package/dist/utils/Validate/additional/utils.js +11 -24
  360. package/dist/utils/Validate/index.js +2 -2
  361. package/dist/utils/Validate/validateCollection.js +21 -27
  362. package/dist/utils/Validate/validateCollection.test.js +85 -77
  363. package/dist/utils/Validate/validateComponent.js +22 -23
  364. package/dist/utils/Validate/validateComponent.test.js +188 -165
  365. package/dist/utils/Validate/validateContainer.js +16 -21
  366. package/dist/utils/Validate/validateContainer.test.js +62 -56
  367. package/dist/utils/Validate/validateDate.js +17 -23
  368. package/dist/utils/Validate/validateDate.test.js +31 -32
  369. package/dist/utils/Validate/validateEmail.js +7 -9
  370. package/dist/utils/Validate/validateEmail.test.js +26 -26
  371. package/dist/utils/Validate/validateMultifile.js +5 -7
  372. package/dist/utils/Validate/validateMultifile.test.js +17 -18
  373. package/dist/utils/Validate/validatePage.js +20 -24
  374. package/dist/utils/Validate/validatePage.test.js +227 -215
  375. package/dist/utils/Validate/validateRegex.js +5 -8
  376. package/dist/utils/Validate/validateRegex.test.js +17 -17
  377. package/dist/utils/Validate/validateRequired.js +5 -7
  378. package/dist/utils/Validate/validateRequired.test.js +19 -19
  379. package/dist/utils/Validate/validateTextArea.js +5 -7
  380. package/dist/utils/Validate/validateTextArea.test.js +21 -21
  381. package/dist/utils/Validate/validateTime.js +12 -19
  382. package/dist/utils/Validate/validateTime.test.js +27 -27
  383. package/dist/utils/index.js +8 -10
  384. package/package.json +3 -2
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.formatDataForComponents = exports.default = void 0;
7
7
  var _formatData = _interopRequireDefault(require("./formatData"));
8
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
8
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
9
9
  // Local imports
10
10
 
11
11
  /**
@@ -14,8 +14,8 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
14
14
  * @param {object} data The top-level form data.
15
15
  * @param {string} eventType What type of event initiated this call.
16
16
  */
17
- var formatDataForComponent = function formatDataForComponent(component, data, eventType) {
18
- var componentData = data;
17
+ const formatDataForComponent = (component, data, eventType) => {
18
+ const componentData = data;
19
19
  if (component.format && component.format.on === eventType) {
20
20
  componentData[component.fieldId] = (0, _formatData.default)(component.format, componentData[component.fieldId]);
21
21
  }
@@ -27,9 +27,8 @@ var formatDataForComponent = function formatDataForComponent(component, data, ev
27
27
  * @param {object} data The top-level form data.
28
28
  * @param {string} eventType What type of event initiated this call.
29
29
  */
30
- var formatDataForComponents = exports.formatDataForComponents = function formatDataForComponents(components, data, eventType) {
31
- components.forEach(function (component) {
32
- return formatDataForComponent(component, data, eventType);
33
- });
30
+ const formatDataForComponents = (components, data, eventType) => {
31
+ components.forEach(component => formatDataForComponent(component, data, eventType));
34
32
  };
33
+ exports.formatDataForComponents = formatDataForComponents;
35
34
  var _default = exports.default = formatDataForComponent;
@@ -2,110 +2,83 @@
2
2
 
3
3
  var _models = require("../../models");
4
4
  var _formatDataForComponent = _interopRequireWildcard(require("./formatDataForComponent"));
5
- 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); }
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 && 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; }
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 _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
9
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
10
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
11
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
12
- function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
13
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
14
- 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; }
15
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
16
- 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
17
- describe('utils', function () {
18
- describe('Format', function () {
19
- var setupField = function setupField(fieldId, format) {
20
- return {
21
- fieldId: fieldId,
22
- format: format
23
- };
24
- };
25
- var setupData = function setupData(fieldId, value) {
26
- return _defineProperty({}, fieldId, value);
27
- };
28
- var setupFieldAndData = function setupFieldAndData(fieldId, format, value) {
29
- return [setupField(fieldId, format), setupData(fieldId, value)];
30
- };
31
- describe('formatDataForComponent', function () {
32
- it('should handle no format', function () {
33
- var EVENT_TYPE = _models.EventTypes.SUBMIT;
34
- var FIELD_ID = 'field';
35
- var FORMAT = null;
36
- var VALUE = 'AlPhA';
37
- var _setupFieldAndData = setupFieldAndData(FIELD_ID, FORMAT, VALUE),
38
- _setupFieldAndData2 = _slicedToArray(_setupFieldAndData, 2),
39
- COMPONENT = _setupFieldAndData2[0],
40
- DATA = _setupFieldAndData2[1];
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; }
7
+ // Local imports
8
+
9
+ describe('utils', () => {
10
+ describe('Format', () => {
11
+ const setupField = (fieldId, format) => ({
12
+ fieldId,
13
+ format
14
+ });
15
+ const setupData = (fieldId, value) => ({
16
+ [fieldId]: value
17
+ });
18
+ const setupFieldAndData = (fieldId, format, value) => [setupField(fieldId, format), setupData(fieldId, value)];
19
+ describe('formatDataForComponent', () => {
20
+ it('should handle no format', () => {
21
+ const EVENT_TYPE = _models.EventTypes.SUBMIT;
22
+ const FIELD_ID = 'field';
23
+ const FORMAT = null;
24
+ const VALUE = 'AlPhA';
25
+ const [COMPONENT, DATA] = setupFieldAndData(FIELD_ID, FORMAT, VALUE);
41
26
  (0, _formatDataForComponent.default)(COMPONENT, DATA, EVENT_TYPE);
42
27
  expect(DATA[FIELD_ID]).toEqual(VALUE);
43
28
  });
44
- it('should handle no value', function () {
45
- var EVENT_TYPE = _models.EventTypes.SUBMIT;
46
- var FIELD_ID = 'field';
47
- var FORMAT = {
29
+ it('should handle no value', () => {
30
+ const EVENT_TYPE = _models.EventTypes.SUBMIT;
31
+ const FIELD_ID = 'field';
32
+ const FORMAT = {
48
33
  type: 'lowercase',
49
34
  on: EVENT_TYPE
50
35
  };
51
- var VALUE = null;
52
- var _setupFieldAndData3 = setupFieldAndData(FIELD_ID, FORMAT, VALUE),
53
- _setupFieldAndData4 = _slicedToArray(_setupFieldAndData3, 2),
54
- COMPONENT = _setupFieldAndData4[0],
55
- DATA = _setupFieldAndData4[1];
36
+ const VALUE = null;
37
+ const [COMPONENT, DATA] = setupFieldAndData(FIELD_ID, FORMAT, VALUE);
56
38
  (0, _formatDataForComponent.default)(COMPONENT, DATA, EVENT_TYPE);
57
39
  expect(DATA[FIELD_ID]).toBeNull();
58
40
  });
59
- it('should remain unchanged if the wrong event type', function () {
60
- var EVENT_TYPE = _models.EventTypes.SUBMIT;
61
- var FIELD_ID = 'field';
62
- var FORMAT = {
41
+ it('should remain unchanged if the wrong event type', () => {
42
+ const EVENT_TYPE = _models.EventTypes.SUBMIT;
43
+ const FIELD_ID = 'field';
44
+ const FORMAT = {
63
45
  type: 'lowercase',
64
46
  on: _models.EventTypes.BLUR
65
47
  };
66
- var VALUE = 'AlPhA';
67
- var _setupFieldAndData5 = setupFieldAndData(FIELD_ID, FORMAT, VALUE),
68
- _setupFieldAndData6 = _slicedToArray(_setupFieldAndData5, 2),
69
- COMPONENT = _setupFieldAndData6[0],
70
- DATA = _setupFieldAndData6[1];
48
+ const VALUE = 'AlPhA';
49
+ const [COMPONENT, DATA] = setupFieldAndData(FIELD_ID, FORMAT, VALUE);
71
50
  (0, _formatDataForComponent.default)(COMPONENT, DATA, EVENT_TYPE);
72
51
  expect(DATA[FIELD_ID]).toEqual(VALUE);
73
52
  });
74
- it('should format a string as lowercase', function () {
75
- var EVENT_TYPE = _models.EventTypes.SUBMIT;
76
- var FIELD_ID = 'field';
77
- var FORMAT = {
53
+ it('should format a string as lowercase', () => {
54
+ const EVENT_TYPE = _models.EventTypes.SUBMIT;
55
+ const FIELD_ID = 'field';
56
+ const FORMAT = {
78
57
  type: 'lowercase',
79
58
  on: EVENT_TYPE
80
59
  };
81
- var VALUE = 'AlPhA';
82
- var _setupFieldAndData7 = setupFieldAndData(FIELD_ID, FORMAT, VALUE),
83
- _setupFieldAndData8 = _slicedToArray(_setupFieldAndData7, 2),
84
- COMPONENT = _setupFieldAndData8[0],
85
- DATA = _setupFieldAndData8[1];
60
+ const VALUE = 'AlPhA';
61
+ const [COMPONENT, DATA] = setupFieldAndData(FIELD_ID, FORMAT, VALUE);
86
62
  (0, _formatDataForComponent.default)(COMPONENT, DATA, EVENT_TYPE);
87
63
  expect(DATA[FIELD_ID]).toEqual('alpha');
88
64
  });
89
- it('should format a string as uppercase', function () {
90
- var EVENT_TYPE = _models.EventTypes.SUBMIT;
91
- var FIELD_ID = 'field';
92
- var FORMAT = {
65
+ it('should format a string as uppercase', () => {
66
+ const EVENT_TYPE = _models.EventTypes.SUBMIT;
67
+ const FIELD_ID = 'field';
68
+ const FORMAT = {
93
69
  type: 'uppercase',
94
70
  on: EVENT_TYPE
95
71
  };
96
- var VALUE = 'AlPhA';
97
- var _setupFieldAndData9 = setupFieldAndData(FIELD_ID, FORMAT, VALUE),
98
- _setupFieldAndData10 = _slicedToArray(_setupFieldAndData9, 2),
99
- COMPONENT = _setupFieldAndData10[0],
100
- DATA = _setupFieldAndData10[1];
72
+ const VALUE = 'AlPhA';
73
+ const [COMPONENT, DATA] = setupFieldAndData(FIELD_ID, FORMAT, VALUE);
101
74
  (0, _formatDataForComponent.default)(COMPONENT, DATA, EVENT_TYPE);
102
75
  expect(DATA[FIELD_ID]).toEqual('ALPHA');
103
76
  });
104
77
  });
105
- describe('formatDataForComponents', function () {
106
- it('should appropriately format multiple components', function () {
107
- var EVENT_TYPE = _models.EventTypes.SUBMIT;
108
- var COMPONENTS = [setupField('alpha', {
78
+ describe('formatDataForComponents', () => {
79
+ it('should appropriately format multiple components', () => {
80
+ const EVENT_TYPE = _models.EventTypes.SUBMIT;
81
+ const COMPONENTS = [setupField('alpha', {
109
82
  type: 'lowercase',
110
83
  on: _models.EventTypes.SUBMIT
111
84
  }),
@@ -122,8 +95,7 @@ describe('utils', function () {
122
95
  on: _models.EventTypes.BLUR
123
96
  }) // Should not be formatted because of event type
124
97
  ];
125
-
126
- var DATA = {
98
+ const DATA = {
127
99
  alpha: 'AlPhA',
128
100
  bravo: 'bRaVo',
129
101
  charlie: 'CHArlie',
@@ -6,20 +6,18 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.default = void 0;
7
7
  var _formatDataForComponent = require("./formatDataForComponent");
8
8
  var _formatDataForPage = require("./formatDataForPage");
9
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
10
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
11
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
12
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
13
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
14
- function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } // Local imports
9
+ // Local imports
10
+
15
11
  /**
16
12
  * Formats the data for all components on a form, according to each component's format configuration.
17
13
  * @param {object} form The form to format the components for.
18
14
  * @param {object} data The top-level form data.
19
15
  * @param {string} eventType What type of event initiated this call.
20
16
  */
21
- var formatDataForForm = function formatDataForForm(form, baseData, eventType) {
22
- var data = _objectSpread({}, baseData);
17
+ const formatDataForForm = (form, baseData, eventType) => {
18
+ const data = {
19
+ ...baseData
20
+ };
23
21
  (0, _formatDataForComponent.formatDataForComponents)(form.components, data, eventType);
24
22
  (0, _formatDataForPage.formatDataForPages)(form.pages, data, eventType);
25
23
  return data;
@@ -2,21 +2,19 @@
2
2
 
3
3
  var _models = require("../../models");
4
4
  var _formatDataForForm = _interopRequireDefault(require("./formatDataForForm"));
5
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
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)
@@ -8,10 +8,10 @@ var _formatData = _interopRequireDefault(require("./formatData"));
8
8
  var _formatDataForComponent = _interopRequireDefault(require("./formatDataForComponent"));
9
9
  var _formatDataForForm = _interopRequireDefault(require("./formatDataForForm"));
10
10
  var _formatDataForPage = _interopRequireDefault(require("./formatDataForPage"));
11
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
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,
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.default = void 0;
7
7
  var _models = require("../../models");
8
8
  var _FormPage = _interopRequireDefault(require("../FormPage"));
9
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
10
  // Local imports
11
11
 
12
12
  /**
@@ -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;
@@ -2,17 +2,13 @@
2
2
 
3
3
  var _models = require("../../models");
4
4
  var _getFormHub = _interopRequireDefault(require("./getFormHub"));
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 = [{
5
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
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 "${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 "${_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 "${_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 "${_models.HubFormats.CYA}" when the format is set to "${_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 "${_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 "${_models.FormTypes.TASK}"`, () => {
93
+ it(`should return the string "${_models.HubFormats.TASK}" when the format is set to "${_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);
@@ -5,10 +5,10 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var _getFormHub = _interopRequireDefault(require("./getFormHub"));
8
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
8
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
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,8 +7,5 @@ exports.default = void 0;
7
7
  var _constants = require("../constants");
8
8
  // Local imports
9
9
 
10
- var getDocuments = function getDocuments(formData) {
11
- var _formData$META_PROPER;
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
- };
10
+ const getDocuments = formData => formData?.[_constants.META_PROPERTY]?.[_constants.META_DOCUMENTS_PROPERTY] || [];
14
11
  var _default = exports.default = getDocuments;