@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
@@ -4,29 +4,21 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
8
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
9
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
10
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
11
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
12
- function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
13
- var getComponentToUse = function getComponentToUse(toUse, formComponents) {
14
- var path = toUse.use.split('.');
15
- var firstId = path.shift();
16
- var wrapper = JSON.parse(JSON.stringify(_objectSpread({}, formComponents.find(function (fc) {
17
- return fc.id === firstId;
18
- }))));
19
- var component = wrapper;
20
- var parent = wrapper;
21
- var _loop = function _loop() {
22
- var id = path.shift();
7
+ const getComponentToUse = (toUse, formComponents) => {
8
+ const path = toUse.use.split('.');
9
+ const firstId = path.shift();
10
+ let wrapper = JSON.parse(JSON.stringify({
11
+ ...formComponents.find(fc => fc.id === firstId)
12
+ }));
13
+ let component = wrapper;
14
+ let parent = wrapper;
15
+ while (component && path.length > 0) {
16
+ const id = path.shift();
23
17
  if (Array.isArray(component.components)) {
24
18
  // Filter the parent components down to just the one referenced
25
19
  // by the current id.
26
20
  parent = component;
27
- parent.components = parent.components.filter(function (c) {
28
- return c.id === id;
29
- });
21
+ parent.components = parent.components.filter(c => c.id === id);
30
22
  if (parent.components.length > 0) {
31
23
  // Make the found child the parent so we can iterate.
32
24
  // eslint-disable-next-line prefer-destructuring
@@ -40,14 +32,13 @@ var getComponentToUse = function getComponentToUse(toUse, formComponents) {
40
32
  // components on this parent.
41
33
  component = undefined;
42
34
  }
43
- };
44
- while (component && path.length > 0) {
45
- _loop();
46
35
  }
47
36
  if (component) {
48
- component = _objectSpread(_objectSpread({
49
- cya_label: component.label
50
- }, component), toUse);
37
+ component = {
38
+ cya_label: component.label,
39
+ ...component,
40
+ ...toUse
41
+ };
51
42
  if (parent && parent.id !== component.id) {
52
43
  parent.components = [component];
53
44
  } else {
@@ -67,13 +58,15 @@ var getComponentToUse = function getComponentToUse(toUse, formComponents) {
67
58
  * @param {Array} formComponents An array of existing components on the form.
68
59
  * @returns A component configuration object.
69
60
  */
70
- var useComponent = function useComponent(toUse, formComponents) {
61
+ const useComponent = (toUse, formComponents) => {
71
62
  if (toUse) {
72
- var component = getComponentToUse(toUse, formComponents);
63
+ const component = getComponentToUse(toUse, formComponents);
73
64
  if (component) {
74
65
  return component;
75
66
  }
76
67
  }
77
- return _objectSpread({}, toUse);
68
+ return {
69
+ ...toUse
70
+ };
78
71
  };
79
72
  var _default = exports.default = useComponent;
@@ -3,22 +3,18 @@
3
3
  var _models = require("../../models");
4
4
  var _useComponent = _interopRequireDefault(require("./useComponent"));
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('FormPage', function () {
14
- describe('useComponent', function () {
15
- var ZULU = {
6
+ // Local imports
7
+
8
+ describe('utils', () => {
9
+ describe('FormPage', () => {
10
+ describe('useComponent', () => {
11
+ const ZULU = {
16
12
  id: 'z',
17
13
  fieldId: 'z',
18
14
  label: 'Zulu',
19
15
  type: _models.ComponentTypes.TEXT
20
16
  };
21
- var CONTAINER = {
17
+ const CONTAINER = {
22
18
  id: 'container',
23
19
  fieldId: 'container',
24
20
  label: 'Container',
@@ -30,7 +26,7 @@ describe('utils', function () {
30
26
  type: _models.ComponentTypes.TEXT
31
27
  }, ZULU]
32
28
  };
33
- var FORM_COMPONENTS = [{
29
+ const FORM_COMPONENTS = [{
34
30
  id: 'a',
35
31
  fieldId: 'a',
36
32
  label: 'Alpha',
@@ -51,129 +47,131 @@ describe('utils', function () {
51
47
  cya_label: 'Delta',
52
48
  type: _models.ComponentTypes.TEXT
53
49
  }, CONTAINER];
54
- it('should handle a null toUse configuration', function () {
55
- var TO_USE = null;
50
+ it('should handle a null toUse configuration', () => {
51
+ const TO_USE = null;
56
52
  expect((0, _useComponent.default)(TO_USE, FORM_COMPONENTS)).toEqual({});
57
53
  });
58
- it('should handle an unrecognised component reference', function () {
59
- var TO_USE = {
54
+ it('should handle an unrecognised component reference', () => {
55
+ const TO_USE = {
60
56
  use: 'e',
61
57
  label: 'Echo'
62
58
  };
63
59
  expect((0, _useComponent.default)(TO_USE, FORM_COMPONENTS)).toEqual(TO_USE);
64
60
  });
65
- it('should use the appropriate component', function () {
66
- var TO_USE = {
61
+ it('should use the appropriate component', () => {
62
+ const TO_USE = {
67
63
  use: 'a'
68
64
  };
69
- var A = FORM_COMPONENTS[0];
70
- expect((0, _useComponent.default)(TO_USE, FORM_COMPONENTS)).toEqual(_objectSpread(_objectSpread({
71
- use: 'a'
72
- }, A), {}, {
65
+ const A = FORM_COMPONENTS[0];
66
+ expect((0, _useComponent.default)(TO_USE, FORM_COMPONENTS)).toEqual({
67
+ use: 'a',
68
+ ...A,
73
69
  cya_label: A.label
74
- }));
70
+ });
75
71
  });
76
- it('should allow the fieldId to be overridden', function () {
77
- var TO_USE = {
72
+ it('should allow the fieldId to be overridden', () => {
73
+ const TO_USE = {
78
74
  use: 'a',
79
75
  fieldId: 'alpha'
80
76
  };
81
- var A = FORM_COMPONENTS[0];
82
- expect((0, _useComponent.default)(TO_USE, FORM_COMPONENTS)).toEqual(_objectSpread(_objectSpread({
83
- use: 'a'
84
- }, A), {}, {
77
+ const A = FORM_COMPONENTS[0];
78
+ expect((0, _useComponent.default)(TO_USE, FORM_COMPONENTS)).toEqual({
79
+ use: 'a',
80
+ ...A,
85
81
  cya_label: A.label,
86
82
  fieldId: TO_USE.fieldId
87
- }));
83
+ });
88
84
  });
89
- it('should allow the label to be overridden but keep the cya_label unaffected', function () {
90
- var TO_USE = {
85
+ it('should allow the label to be overridden but keep the cya_label unaffected', () => {
86
+ const TO_USE = {
91
87
  use: 'a',
92
88
  label: 'Alpha foxtrot'
93
89
  };
94
- var A = FORM_COMPONENTS[0];
95
- expect((0, _useComponent.default)(TO_USE, FORM_COMPONENTS)).toEqual(_objectSpread(_objectSpread({
96
- use: 'a'
97
- }, A), {}, {
90
+ const A = FORM_COMPONENTS[0];
91
+ expect((0, _useComponent.default)(TO_USE, FORM_COMPONENTS)).toEqual({
92
+ use: 'a',
93
+ ...A,
98
94
  cya_label: A.label,
99
95
  label: TO_USE.label
100
- }));
96
+ });
101
97
  });
102
- it('should allow the form component cya_label, if label is empty', function () {
103
- var TO_USE = {
98
+ it('should allow the form component cya_label, if label is empty', () => {
99
+ const TO_USE = {
104
100
  use: 'd',
105
101
  label: ''
106
102
  };
107
- var A = FORM_COMPONENTS[3];
108
- expect((0, _useComponent.default)(TO_USE, FORM_COMPONENTS)).toEqual(_objectSpread(_objectSpread({
109
- use: 'd'
110
- }, A), {}, {
103
+ const A = FORM_COMPONENTS[3];
104
+ expect((0, _useComponent.default)(TO_USE, FORM_COMPONENTS)).toEqual({
105
+ use: 'd',
106
+ ...A,
111
107
  cya_label: A.cya_label,
112
108
  label: TO_USE.label
113
- }));
109
+ });
114
110
  });
115
- it('should allow the form component cya_label, if label is not given', function () {
116
- var TO_USE = {
111
+ it('should allow the form component cya_label, if label is not given', () => {
112
+ const TO_USE = {
117
113
  use: 'd'
118
114
  };
119
- var A = FORM_COMPONENTS[3];
120
- expect((0, _useComponent.default)(TO_USE, FORM_COMPONENTS)).toEqual(_objectSpread(_objectSpread({
121
- use: 'd'
122
- }, A), {}, {
115
+ const A = FORM_COMPONENTS[3];
116
+ expect((0, _useComponent.default)(TO_USE, FORM_COMPONENTS)).toEqual({
117
+ use: 'd',
118
+ ...A,
123
119
  cya_label: A.cya_label,
124
120
  label: TO_USE.label
125
- }));
121
+ });
126
122
  });
127
- it('should handle a container', function () {
128
- var TO_USE = {
123
+ it('should handle a container', () => {
124
+ const TO_USE = {
129
125
  use: CONTAINER.id
130
126
  };
131
- expect((0, _useComponent.default)(TO_USE, FORM_COMPONENTS)).toEqual(_objectSpread(_objectSpread({
132
- use: CONTAINER.id
133
- }, CONTAINER), {}, {
127
+ expect((0, _useComponent.default)(TO_USE, FORM_COMPONENTS)).toEqual({
128
+ use: CONTAINER.id,
129
+ ...CONTAINER,
134
130
  cya_label: CONTAINER.label
135
- }));
131
+ });
136
132
  });
137
- it('should handle a component nested inside a container', function () {
138
- var ID = "".concat(CONTAINER.id, ".").concat(ZULU.id);
139
- var TO_USE = {
133
+ it('should handle a component nested inside a container', () => {
134
+ const ID = "".concat(CONTAINER.id, ".").concat(ZULU.id);
135
+ const TO_USE = {
140
136
  use: ID
141
137
  };
142
- expect((0, _useComponent.default)(TO_USE, FORM_COMPONENTS)).toEqual(_objectSpread(_objectSpread({}, CONTAINER), {}, {
143
- components: [_objectSpread(_objectSpread({
144
- use: ID
145
- }, ZULU), {}, {
138
+ expect((0, _useComponent.default)(TO_USE, FORM_COMPONENTS)).toEqual({
139
+ ...CONTAINER,
140
+ components: [{
141
+ use: ID,
142
+ ...ZULU,
146
143
  cya_label: ZULU.label
147
- }) // Foxtrot is not included
144
+ }
145
+ // Foxtrot is not included
148
146
  ]
149
- }));
147
+ });
150
148
  });
151
- it('should handle an unrecognised container reference', function () {
152
- var ID = "unrecognised.".concat(ZULU.id);
153
- var TO_USE = {
149
+ it('should handle an unrecognised container reference', () => {
150
+ const ID = "unrecognised.".concat(ZULU.id);
151
+ const TO_USE = {
154
152
  use: ID
155
153
  };
156
154
  expect((0, _useComponent.default)(TO_USE, FORM_COMPONENTS)).toEqual(TO_USE);
157
155
  });
158
- it('should handle an unrecognised component within a container', function () {
159
- var ID = "".concat(CONTAINER.id, ".unrecognised");
160
- var TO_USE = {
156
+ it('should handle an unrecognised component within a container', () => {
157
+ const ID = "".concat(CONTAINER.id, ".unrecognised");
158
+ const TO_USE = {
161
159
  use: ID
162
160
  };
163
161
  expect((0, _useComponent.default)(TO_USE, FORM_COMPONENTS)).toEqual(TO_USE);
164
162
  });
165
- it('should allow the cya_label to overriden', function () {
166
- var TO_USE = {
163
+ it('should allow the cya_label to overriden', () => {
164
+ const TO_USE = {
167
165
  use: 'd',
168
166
  cya_label: 'Alpha'
169
167
  };
170
- var A = FORM_COMPONENTS[3];
171
- expect((0, _useComponent.default)(TO_USE, FORM_COMPONENTS)).toEqual(_objectSpread(_objectSpread({
172
- use: 'd'
173
- }, A), {}, {
168
+ const A = FORM_COMPONENTS[3];
169
+ expect((0, _useComponent.default)(TO_USE, FORM_COMPONENTS)).toEqual({
170
+ use: 'd',
171
+ ...A,
174
172
  cya_label: TO_USE.cya_label,
175
173
  label: TO_USE.label
176
- }));
174
+ });
177
175
  });
178
176
  });
179
177
  });
@@ -10,7 +10,7 @@ exports.default = void 0;
10
10
  * @param {string} value The string value to be formatted.
11
11
  * @returns A formatted version of the value.
12
12
  */
13
- var formatData = function formatData(format, value) {
13
+ const formatData = (format, value) => {
14
14
  if (format && value) {
15
15
  switch (format.type) {
16
16
  case 'lowercase':
@@ -4,40 +4,40 @@ var _formatData = _interopRequireDefault(require("./formatData"));
4
4
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5
5
  // Local imports
6
6
 
7
- describe('utils', function () {
8
- describe('Format', function () {
9
- describe('formatData', function () {
10
- it('should handle no format', function () {
11
- var FORMAT = null;
12
- var VALUE = 'AlPhA';
7
+ describe('utils', () => {
8
+ describe('Format', () => {
9
+ describe('formatData', () => {
10
+ it('should handle no format', () => {
11
+ const FORMAT = null;
12
+ const VALUE = 'AlPhA';
13
13
  expect((0, _formatData.default)(FORMAT, VALUE)).toEqual(VALUE);
14
14
  });
15
- it('should handle no value', function () {
16
- var FORMAT = {
15
+ it('should handle no value', () => {
16
+ const FORMAT = {
17
17
  type: 'lowercase'
18
18
  };
19
- var VALUE = null;
19
+ const VALUE = null;
20
20
  expect((0, _formatData.default)(FORMAT, VALUE)).toBeNull();
21
21
  });
22
- it('should format a string as lowercase', function () {
23
- var FORMAT = {
22
+ it('should format a string as lowercase', () => {
23
+ const FORMAT = {
24
24
  type: 'lowercase'
25
25
  };
26
- var VALUE = 'AlPhA';
26
+ const VALUE = 'AlPhA';
27
27
  expect((0, _formatData.default)(FORMAT, VALUE)).toEqual('alpha');
28
28
  });
29
- it('should format a string as uppercase', function () {
30
- var FORMAT = {
29
+ it('should format a string as uppercase', () => {
30
+ const FORMAT = {
31
31
  type: 'uppercase'
32
32
  };
33
- var VALUE = 'AlPhA';
33
+ const VALUE = 'AlPhA';
34
34
  expect((0, _formatData.default)(FORMAT, VALUE)).toEqual('ALPHA');
35
35
  });
36
- it('should leave an unknown format type alone', function () {
37
- var FORMAT = {
36
+ it('should leave an unknown format type alone', () => {
37
+ const FORMAT = {
38
38
  type: 'not-a-real-type'
39
39
  };
40
- var VALUE = 'AlPhA';
40
+ const VALUE = 'AlPhA';
41
41
  expect((0, _formatData.default)(FORMAT, VALUE)).toEqual(VALUE);
42
42
  });
43
43
  });
@@ -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;