@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
@@ -2,41 +2,41 @@
2
2
 
3
3
  var _checkValueIsTruthy = _interopRequireDefault(require("./checkValueIsTruthy"));
4
4
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5
- describe('Utils.Operate.checkValueIsTruthy', function () {
6
- var DATA = {
5
+ describe('Utils.Operate.checkValueIsTruthy', () => {
6
+ const DATA = {
7
7
  alpha: 'abc',
8
8
  bravo: ''
9
9
  };
10
- it('Should return true is the value of the field is truthy', function () {
11
- var CONFIG = {
10
+ it('Should return true is the value of the field is truthy', () => {
11
+ const CONFIG = {
12
12
  field: 'alpha'
13
13
  };
14
- var result = (0, _checkValueIsTruthy.default)(CONFIG, DATA);
14
+ const result = (0, _checkValueIsTruthy.default)(CONFIG, DATA);
15
15
  expect(result).toEqual(true);
16
16
  });
17
- it('Should return false if the value of the field is falsy', function () {
18
- var CONFIG = {
17
+ it('Should return false if the value of the field is falsy', () => {
18
+ const CONFIG = {
19
19
  field: 'bravo'
20
20
  };
21
- var result = (0, _checkValueIsTruthy.default)(CONFIG, DATA);
21
+ const result = (0, _checkValueIsTruthy.default)(CONFIG, DATA);
22
22
  expect(result).toEqual(false);
23
23
  });
24
- it('Should return false if the field does not exist', function () {
25
- var CONFIG = {
24
+ it('Should return false if the field does not exist', () => {
25
+ const CONFIG = {
26
26
  field: 'charlie'
27
27
  };
28
- var result = (0, _checkValueIsTruthy.default)(CONFIG, DATA);
28
+ const result = (0, _checkValueIsTruthy.default)(CONFIG, DATA);
29
29
  expect(result).toEqual(false);
30
30
  });
31
- it('Should return false when an invalid config is used', function () {
32
- var result = (0, _checkValueIsTruthy.default)(null, DATA);
31
+ it('Should return false when an invalid config is used', () => {
32
+ const result = (0, _checkValueIsTruthy.default)(null, DATA);
33
33
  expect(result).toEqual(false);
34
34
  });
35
- it('Should return false when invalid data is used', function () {
36
- var CONFIG = {
35
+ it('Should return false when invalid data is used', () => {
36
+ const CONFIG = {
37
37
  field: 'alpha'
38
38
  };
39
- var result = (0, _checkValueIsTruthy.default)(CONFIG, null);
39
+ const result = (0, _checkValueIsTruthy.default)(CONFIG, null);
40
40
  expect(result).toEqual(false);
41
41
  });
42
42
  });
@@ -11,12 +11,12 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
11
11
 
12
12
  // Local imports.
13
13
 
14
- var getFirstOf = function getFirstOf(config, data) {
14
+ const getFirstOf = (config, data) => {
15
15
  if (config !== null && config !== void 0 && config.fields) {
16
- var fieldValue;
17
- config.fields.find(function (field) {
18
- var fieldPath = _copReactComponents.Utils.interpolateString(field, data);
19
- var foundValue = (0, _getSourceData.default)(data, fieldPath);
16
+ let fieldValue;
17
+ config.fields.find(field => {
18
+ const fieldPath = _copReactComponents.Utils.interpolateString(field, data);
19
+ const foundValue = (0, _getSourceData.default)(data, fieldPath);
20
20
  if (foundValue) {
21
21
  fieldValue = foundValue;
22
22
  return true;
@@ -2,8 +2,8 @@
2
2
 
3
3
  var _getFirstOf = _interopRequireDefault(require("./getFirstOf"));
4
4
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5
- describe('Utils.Operate.getFirstOf', function () {
6
- var DATA = {
5
+ describe('Utils.Operate.getFirstOf', () => {
6
+ const DATA = {
7
7
  name: 'sam',
8
8
  id: 1,
9
9
  test: ['2', '3'],
@@ -12,75 +12,75 @@ describe('Utils.Operate.getFirstOf', function () {
12
12
  otherIdDoc: '',
13
13
  anotherMadeUpId: 789
14
14
  };
15
- it('Should handle interpolated field strings', function () {
15
+ it('Should handle interpolated field strings', () => {
16
16
  // eslint-disable-next-line no-template-curly-in-string
17
- var CONFIG = {
17
+ const CONFIG = {
18
18
  fields: ['test[${id}]']
19
19
  };
20
- var result = (0, _getFirstOf.default)(CONFIG, DATA);
20
+ const result = (0, _getFirstOf.default)(CONFIG, DATA);
21
21
  expect(result).toEqual(DATA.test[1]);
22
22
  });
23
- it('Should return the value provided in config if no field is specified', function () {
24
- var CONFIG = {
23
+ it('Should return the value provided in config if no field is specified', () => {
24
+ const CONFIG = {
25
25
  value: '2'
26
26
  };
27
- var result = (0, _getFirstOf.default)(CONFIG, DATA);
27
+ const result = (0, _getFirstOf.default)(CONFIG, DATA);
28
28
  expect(result).toEqual(CONFIG.value);
29
29
  });
30
- it('Should return the fallback if the requested fields are not found', function () {
30
+ it('Should return the fallback if the requested fields are not found', () => {
31
31
  // eslint-disable-next-line no-template-curly-in-string
32
- var CONFIG = {
32
+ const CONFIG = {
33
33
  value: '2',
34
34
  fields: ['nonExistent'],
35
35
  fallback: "Test ${name}"
36
36
  };
37
- var result = (0, _getFirstOf.default)(CONFIG, DATA);
37
+ const result = (0, _getFirstOf.default)(CONFIG, DATA);
38
38
  expect(result).toEqual("Test ".concat(DATA.name));
39
39
  });
40
- it('Should return the value of the passportNumber field given in config', function () {
41
- var CONFIG = {
40
+ it('Should return the value of the passportNumber field given in config', () => {
41
+ const CONFIG = {
42
42
  fields: ['passportNumber', 'anotherMadeUpId', 'otherIdDoc']
43
43
  };
44
- var result = (0, _getFirstOf.default)(CONFIG, DATA);
44
+ const result = (0, _getFirstOf.default)(CONFIG, DATA);
45
45
  expect(result).toEqual(DATA.passportNumber);
46
46
  });
47
- it('Should return the value of the anotherMadeUpId field given in config', function () {
48
- var CONFIG = {
47
+ it('Should return the value of the anotherMadeUpId field given in config', () => {
48
+ const CONFIG = {
49
49
  fields: ['anotherMadeUpId', 'passportNumber', 'otherIdDoc']
50
50
  };
51
- var result = (0, _getFirstOf.default)(CONFIG, DATA);
51
+ const result = (0, _getFirstOf.default)(CONFIG, DATA);
52
52
  expect(result).toEqual(DATA.anotherMadeUpId);
53
53
  });
54
- it('Should return the value of the otherIdDoc field given in config', function () {
55
- var CONFIG = {
54
+ it('Should return the value of the otherIdDoc field given in config', () => {
55
+ const CONFIG = {
56
56
  fields: ['otherIdDoc', 'passportNumber', 'anotherMadeUpId']
57
57
  };
58
- var result = (0, _getFirstOf.default)(CONFIG, DATA);
58
+ const result = (0, _getFirstOf.default)(CONFIG, DATA);
59
59
  expect(result).toEqual(DATA.passportNumber);
60
60
  });
61
- it('Should return the value of the otherIdDoc field given in config, if it exists, otherwise next field next in the array', function () {
62
- var CONFIG = {
61
+ it('Should return the value of the otherIdDoc field given in config, if it exists, otherwise next field next in the array', () => {
62
+ const CONFIG = {
63
63
  fields: ['otherIdDoc', 'passportNumber', 'anotherMadeUpId']
64
64
  };
65
- var result = (0, _getFirstOf.default)(CONFIG, DATA);
65
+ const result = (0, _getFirstOf.default)(CONFIG, DATA);
66
66
  expect(result).toEqual(DATA.passportNumber);
67
67
  });
68
- it('Should return no value if elements in config.fields are not found in data', function () {
69
- var CONFIG = {
68
+ it('Should return no value if elements in config.fields are not found in data', () => {
69
+ const CONFIG = {
70
70
  fields: ['otherIdDoc1', 'passportNumber1', 'anotherMadeUpId1']
71
71
  };
72
- var result = (0, _getFirstOf.default)(CONFIG, DATA);
72
+ const result = (0, _getFirstOf.default)(CONFIG, DATA);
73
73
  expect(result).toEqual('');
74
74
  });
75
- it('Should return null when an invalid config is used', function () {
76
- var result = (0, _getFirstOf.default)(null, DATA);
75
+ it('Should return null when an invalid config is used', () => {
76
+ const result = (0, _getFirstOf.default)(null, DATA);
77
77
  expect(result).toEqual(null);
78
78
  });
79
- it('Should return null when invalid data is used', function () {
80
- var CONFIG = {
79
+ it('Should return null when invalid data is used', () => {
80
+ const CONFIG = {
81
81
  field: 'a'
82
82
  };
83
- var result = (0, _getFirstOf.default)(CONFIG, null);
83
+ const result = (0, _getFirstOf.default)(CONFIG, null);
84
84
  expect(result).toEqual(null);
85
85
  });
86
86
  });
@@ -11,11 +11,11 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
11
11
 
12
12
  // Local imports.
13
13
 
14
- var getValueOrField = function getValueOrField(config, data) {
14
+ const getValueOrField = (config, data) => {
15
15
  if (config !== null && config !== void 0 && config.value) {
16
16
  return config.value;
17
17
  }
18
- var path = _copReactComponents.Utils.interpolateString(config === null || config === void 0 ? void 0 : config.field, data);
18
+ const path = _copReactComponents.Utils.interpolateString(config === null || config === void 0 ? void 0 : config.field, data);
19
19
  return (0, _getSourceData.default)(data, path);
20
20
  };
21
21
 
@@ -28,18 +28,18 @@ var getValueOrField = function getValueOrField(config, data) {
28
28
  * @param {object} data A page's formData.
29
29
  * @returns The index of the matching value if one exists, or null.
30
30
  */
31
- var getIndexOfMatchingValueIn = function getIndexOfMatchingValueIn(config, data) {
31
+ const getIndexOfMatchingValueIn = (config, data) => {
32
32
  if (!config || !data) {
33
33
  return null;
34
34
  }
35
- var targetPath = _copReactComponents.Utils.interpolateString(config.target, data);
36
- var target = (0, _getSourceData.default)(data, targetPath);
37
- var value = getValueOrField(config, data);
38
- var cutoff = getValueOrField(config.cutoff, data);
39
- var ignore = getValueOrField(config.ignore, data);
40
- var result = null;
35
+ const targetPath = _copReactComponents.Utils.interpolateString(config.target, data);
36
+ const target = (0, _getSourceData.default)(data, targetPath);
37
+ const value = getValueOrField(config, data);
38
+ const cutoff = getValueOrField(config.cutoff, data);
39
+ const ignore = getValueOrField(config.ignore, data);
40
+ let result = null;
41
41
  if (target && value && Array.isArray(target)) {
42
- target.every(function (entry, index) {
42
+ target.every((entry, index) => {
43
43
  if (index === cutoff) {
44
44
  return false;
45
45
  }
@@ -2,8 +2,8 @@
2
2
 
3
3
  var _getIndexOfMatchingValueIn = _interopRequireDefault(require("./getIndexOfMatchingValueIn"));
4
4
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5
- describe('Utils.Operate.getIndexOfPriorMatchingValueIn', function () {
6
- var DATA = {
5
+ describe('Utils.Operate.getIndexOfPriorMatchingValueIn', () => {
6
+ const DATA = {
7
7
  arrayOfValues: ['abc', 'bcd', 'cde', 'def', {
8
8
  root: {
9
9
  branch: 'leaf'
@@ -17,147 +17,141 @@ describe('Utils.Operate.getIndexOfPriorMatchingValueIn', function () {
17
17
  cutoffName: 'cutoffIndex',
18
18
  ignoreName: 'ignoreIndex'
19
19
  };
20
- it('Should return the index of a matching value if one exists', function () {
21
- var CONFIG = {
20
+ it('Should return the index of a matching value if one exists', () => {
21
+ const CONFIG = {
22
22
  target: 'arrayOfValues',
23
23
  value: 'cde'
24
24
  };
25
- var result = (0, _getIndexOfMatchingValueIn.default)(CONFIG, DATA);
25
+ const result = (0, _getIndexOfMatchingValueIn.default)(CONFIG, DATA);
26
26
  expect(result).toEqual('2');
27
27
  });
28
- it('Should handle getting value from given field', function () {
29
- var CONFIG = {
28
+ it('Should handle getting value from given field', () => {
29
+ const CONFIG = {
30
30
  target: 'arrayOfValues',
31
31
  field: 'valueToSearchFor'
32
32
  };
33
- var result = (0, _getIndexOfMatchingValueIn.default)(CONFIG, DATA);
33
+ const result = (0, _getIndexOfMatchingValueIn.default)(CONFIG, DATA);
34
34
  expect(result).toEqual('2');
35
35
  });
36
- it('Should handle interpolated string for field', function () {
36
+ it('Should handle interpolated string for field', () => {
37
37
  // eslint-disable-next-line no-template-curly-in-string
38
- var CONFIG = {
38
+ const CONFIG = {
39
39
  target: 'arrayOfValues',
40
40
  field: '${fieldName}'
41
41
  };
42
- var result = (0, _getIndexOfMatchingValueIn.default)(CONFIG, DATA);
42
+ const result = (0, _getIndexOfMatchingValueIn.default)(CONFIG, DATA);
43
43
  expect(result).toEqual('2');
44
44
  });
45
- it('Should handle interpolated string for key', function () {
45
+ it('Should handle interpolated string for key', () => {
46
46
  // eslint-disable-next-line no-template-curly-in-string
47
- var CONFIG = {
47
+ const CONFIG = {
48
48
  target: 'arrayOfValues',
49
49
  key: 'root.branch',
50
50
  value: 'leaf'
51
51
  };
52
- var result = (0, _getIndexOfMatchingValueIn.default)(CONFIG, DATA);
52
+ const result = (0, _getIndexOfMatchingValueIn.default)(CONFIG, DATA);
53
53
  expect(result).toEqual('4');
54
54
  });
55
- it('Should handle a cutoff value being specified', function () {
56
- var CONFIG = {
55
+ it('Should handle a cutoff value being specified', () => {
56
+ const CONFIG = {
57
57
  target: 'arrayOfValues',
58
58
  value: 'cde',
59
59
  cutoff: {
60
60
  value: 1
61
61
  }
62
62
  };
63
- var result = (0, _getIndexOfMatchingValueIn.default)(CONFIG, DATA);
63
+ const result = (0, _getIndexOfMatchingValueIn.default)(CONFIG, DATA);
64
64
  expect(result).toEqual(null); // Cutoff occurs before matching value is reached.
65
65
  });
66
-
67
- it('Should handle a cutoff field being specified', function () {
68
- var CONFIG = {
66
+ it('Should handle a cutoff field being specified', () => {
67
+ const CONFIG = {
69
68
  target: 'arrayOfValues',
70
69
  value: 'cde',
71
70
  cutoff: {
72
71
  field: 'cutoffIndex'
73
72
  }
74
73
  };
75
- var result = (0, _getIndexOfMatchingValueIn.default)(CONFIG, DATA);
74
+ const result = (0, _getIndexOfMatchingValueIn.default)(CONFIG, DATA);
76
75
  expect(result).toEqual(null); // Cutoff occurs before matching value is reached.
77
76
  });
78
-
79
- it('Should handle interpolated string for cutoff.field', function () {
77
+ it('Should handle interpolated string for cutoff.field', () => {
80
78
  // eslint-disable-next-line no-template-curly-in-string
81
- var CONFIG = {
79
+ const CONFIG = {
82
80
  target: 'arrayOfValues',
83
81
  value: 'cde',
84
82
  cutoff: {
85
83
  field: '${cutoffName}'
86
84
  }
87
85
  };
88
- var result = (0, _getIndexOfMatchingValueIn.default)(CONFIG, DATA);
86
+ const result = (0, _getIndexOfMatchingValueIn.default)(CONFIG, DATA);
89
87
  expect(result).toEqual(null); // Cutoff occurs before matching value is reached.
90
88
  });
91
-
92
- it('Should handle an ignore value being specified', function () {
93
- var CONFIG = {
89
+ it('Should handle an ignore value being specified', () => {
90
+ const CONFIG = {
94
91
  target: 'arrayOfValues',
95
92
  value: 'cde',
96
93
  ignore: {
97
94
  value: 2
98
95
  }
99
96
  };
100
- var result = (0, _getIndexOfMatchingValueIn.default)(CONFIG, DATA);
97
+ const result = (0, _getIndexOfMatchingValueIn.default)(CONFIG, DATA);
101
98
  expect(result).toEqual(null); // Should ignore the matching value.
102
99
  });
103
-
104
- it('Should handle an ignore field being specified', function () {
105
- var CONFIG = {
100
+ it('Should handle an ignore field being specified', () => {
101
+ const CONFIG = {
106
102
  target: 'arrayOfValues',
107
103
  value: 'cde',
108
104
  ignore: {
109
105
  field: 'ignoreIndex'
110
106
  }
111
107
  };
112
- var result = (0, _getIndexOfMatchingValueIn.default)(CONFIG, DATA);
108
+ const result = (0, _getIndexOfMatchingValueIn.default)(CONFIG, DATA);
113
109
  expect(result).toEqual(null); // Should ignore the matching value.
114
110
  });
115
-
116
- it('Should handle interpolated string for ignore.field', function () {
111
+ it('Should handle interpolated string for ignore.field', () => {
117
112
  // eslint-disable-next-line no-template-curly-in-string
118
- var CONFIG = {
113
+ const CONFIG = {
119
114
  target: 'arrayOfValues',
120
115
  value: 'cde',
121
116
  ignore: {
122
117
  field: '${ignoreName}'
123
118
  }
124
119
  };
125
- var result = (0, _getIndexOfMatchingValueIn.default)(CONFIG, DATA);
120
+ const result = (0, _getIndexOfMatchingValueIn.default)(CONFIG, DATA);
126
121
  expect(result).toEqual(null); // Should ignore the matching value.
127
122
  });
128
-
129
- it('Should handle interpolated string for target', function () {
123
+ it('Should handle interpolated string for target', () => {
130
124
  // eslint-disable-next-line no-template-curly-in-string
131
- var CONFIG = {
125
+ const CONFIG = {
132
126
  target: '${targetName}',
133
127
  value: 'cde'
134
128
  };
135
- var result = (0, _getIndexOfMatchingValueIn.default)(CONFIG, DATA);
129
+ const result = (0, _getIndexOfMatchingValueIn.default)(CONFIG, DATA);
136
130
  expect(result).toEqual('2');
137
131
  });
138
- it('Should return null when the target does not exist', function () {
139
- var CONFIG = {
132
+ it('Should return null when the target does not exist', () => {
133
+ const CONFIG = {
140
134
  target: 'notARealTarget',
141
135
  value: 'cde'
142
136
  };
143
- var result = (0, _getIndexOfMatchingValueIn.default)(CONFIG, DATA);
137
+ const result = (0, _getIndexOfMatchingValueIn.default)(CONFIG, DATA);
144
138
  expect(result).toEqual(null);
145
139
  });
146
- it('Should return null when config is missing fields', function () {
147
- var CONFIG = {};
148
- var result = (0, _getIndexOfMatchingValueIn.default)(CONFIG, DATA);
140
+ it('Should return null when config is missing fields', () => {
141
+ const CONFIG = {};
142
+ const result = (0, _getIndexOfMatchingValueIn.default)(CONFIG, DATA);
149
143
  expect(result).toEqual(null);
150
144
  });
151
- it('Should return null when config is invalid', function () {
152
- var result = (0, _getIndexOfMatchingValueIn.default)(null, DATA);
145
+ it('Should return null when config is invalid', () => {
146
+ const result = (0, _getIndexOfMatchingValueIn.default)(null, DATA);
153
147
  expect(result).toEqual(null);
154
148
  });
155
- it('Should return null when data is invalid', function () {
156
- var CONFIG = {
149
+ it('Should return null when data is invalid', () => {
150
+ const CONFIG = {
157
151
  target: 'arrayOfValues',
158
152
  value: 'cde'
159
153
  };
160
- var result = (0, _getIndexOfMatchingValueIn.default)(CONFIG, null);
154
+ const result = (0, _getIndexOfMatchingValueIn.default)(CONFIG, null);
161
155
  expect(result).toEqual(null);
162
156
  });
163
157
  });
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.default = void 0;
7
7
  var _runPageOperations = _interopRequireDefault(require("./runPageOperations"));
8
8
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
- var Operate = {
9
+ const Operate = {
10
10
  runPageOperations: _runPageOperations.default
11
11
  };
12
12
  var _default = exports.default = Operate;
@@ -18,10 +18,10 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
18
18
  * @param {object} data The page's formData.
19
19
  * @param {function} onChange The page's onChange handler.
20
20
  */
21
- var persistValueInFormData = function persistValueInFormData(config, data, onChange) {
22
- var value;
21
+ const persistValueInFormData = (config, data, onChange) => {
22
+ let value;
23
23
  if (config !== null && config !== void 0 && config.field) {
24
- var fieldPath = _copReactComponents.Utils.interpolateString(config.field, data);
24
+ const fieldPath = _copReactComponents.Utils.interpolateString(config.field, data);
25
25
  value = (0, _getSourceData.default)(data, fieldPath);
26
26
  } else {
27
27
  value = config === null || config === void 0 ? void 0 : config.value;
@@ -2,19 +2,21 @@
2
2
 
3
3
  var _persistValueInFormData = _interopRequireDefault(require("./persistValueInFormData"));
4
4
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5
- describe('Utils.Operate.persistValueInFormData', function () {
6
- var DATA = {
5
+ describe('Utils.Operate.persistValueInFormData', () => {
6
+ let DATA = {
7
7
  alpha: 'abc',
8
8
  beta: 'charlie',
9
9
  charlie: '123'
10
10
  };
11
- var ON_CHANGE_COUNT = 0;
12
- var ON_CHANGE = function ON_CHANGE(_ref) {
13
- var target = _ref.target;
11
+ let ON_CHANGE_COUNT = 0;
12
+ const ON_CHANGE = _ref => {
13
+ let {
14
+ target
15
+ } = _ref;
14
16
  DATA[target.name] = target.value;
15
17
  ON_CHANGE_COUNT += 1;
16
18
  };
17
- beforeEach(function () {
19
+ beforeEach(() => {
18
20
  DATA = {
19
21
  alpha: 'abc',
20
22
  beta: 'charlie',
@@ -22,8 +24,8 @@ describe('Utils.Operate.persistValueInFormData', function () {
22
24
  };
23
25
  ON_CHANGE_COUNT = 0;
24
26
  });
25
- it('Should trigger a change correctly', function () {
26
- var CONFIG = {
27
+ it('Should trigger a change correctly', () => {
28
+ const CONFIG = {
27
29
  name: 'alpha',
28
30
  value: 'bcd'
29
31
  };
@@ -35,8 +37,8 @@ describe('Utils.Operate.persistValueInFormData', function () {
35
37
  });
36
38
  expect(ON_CHANGE_COUNT).toEqual(1);
37
39
  });
38
- it('Should trigger a change correctly with boolean false', function () {
39
- var CONFIG = {
40
+ it('Should trigger a change correctly with boolean false', () => {
41
+ const CONFIG = {
40
42
  name: 'alpha',
41
43
  value: false
42
44
  };
@@ -48,8 +50,8 @@ describe('Utils.Operate.persistValueInFormData', function () {
48
50
  });
49
51
  expect(ON_CHANGE_COUNT).toEqual(1);
50
52
  });
51
- it('Should not call onChange when value is unchanged', function () {
52
- var CONFIG = {
53
+ it('Should not call onChange when value is unchanged', () => {
54
+ const CONFIG = {
53
55
  name: 'alpha',
54
56
  value: 'abc'
55
57
  };
@@ -61,8 +63,8 @@ describe('Utils.Operate.persistValueInFormData', function () {
61
63
  });
62
64
  expect(ON_CHANGE_COUNT).toEqual(0);
63
65
  });
64
- it('Should not call onChange if no value or field is given', function () {
65
- var CONFIG = {
66
+ it('Should not call onChange if no value or field is given', () => {
67
+ const CONFIG = {
66
68
  name: 'alpha'
67
69
  };
68
70
  (0, _persistValueInFormData.default)(CONFIG, DATA, ON_CHANGE);
@@ -73,8 +75,8 @@ describe('Utils.Operate.persistValueInFormData', function () {
73
75
  });
74
76
  expect(ON_CHANGE_COUNT).toEqual(0);
75
77
  });
76
- it('Should not call onChange if no name is given', function () {
77
- var CONFIG = {
78
+ it('Should not call onChange if no name is given', () => {
79
+ const CONFIG = {
78
80
  field: 'charlie'
79
81
  };
80
82
  (0, _persistValueInFormData.default)(CONFIG, DATA, ON_CHANGE);
@@ -85,8 +87,8 @@ describe('Utils.Operate.persistValueInFormData', function () {
85
87
  });
86
88
  expect(ON_CHANGE_COUNT).toEqual(0);
87
89
  });
88
- it('Should not call onChange if field cannot be found', function () {
89
- var CONFIG = {
90
+ it('Should not call onChange if field cannot be found', () => {
91
+ const CONFIG = {
90
92
  name: 'alpha',
91
93
  field: 'delta'
92
94
  };
@@ -98,9 +100,9 @@ describe('Utils.Operate.persistValueInFormData', function () {
98
100
  });
99
101
  expect(ON_CHANGE_COUNT).toEqual(0);
100
102
  });
101
- it('Should correctly interpolate a field value', function () {
103
+ it('Should correctly interpolate a field value', () => {
102
104
  // eslint-disable-next-line no-template-curly-in-string
103
- var CONFIG = {
105
+ const CONFIG = {
104
106
  name: 'alpha',
105
107
  field: '${beta}'
106
108
  };
@@ -17,15 +17,15 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
17
17
 
18
18
  // Local imports.
19
19
 
20
- var functions = {
20
+ const functions = {
21
21
  checkValueIsTruthy: _checkValueIsTruthy.default,
22
22
  getIndexOfMatchingValueIn: _getIndexOfMatchingValueIn.default,
23
23
  persistValueInFormData: _persistValueInFormData.default,
24
24
  setValueInFormData: _setValueInFormData.default,
25
25
  getFirstOf: _getFirstOf.default
26
26
  };
27
- var doOperation = function doOperation(config, data, onChange) {
28
- var fn = functions[config.function];
27
+ const doOperation = (config, data, onChange) => {
28
+ const fn = functions[config.function];
29
29
  if (typeof fn === 'function') {
30
30
  return fn(config, data, onChange);
31
31
  }
@@ -49,15 +49,15 @@ var doOperation = function doOperation(config, data, onChange) {
49
49
  * @param {function} onChange The page's onChange handler.
50
50
  * @returns data with the results of any operations included.
51
51
  */
52
- var runPageOperations = function runPageOperations(config, data, onChange) {
52
+ const runPageOperations = (config, data, onChange) => {
53
53
  if (config !== null && config !== void 0 && config.operations && data) {
54
- config.operations.forEach(function (op) {
54
+ config.operations.forEach(op => {
55
55
  if ((0, _shouldRun.default)(op.run_when, data)) {
56
- var result = doOperation(op, data, onChange);
56
+ const result = doOperation(op, data, onChange);
57
57
  if (op.output) {
58
58
  // Remove array indexers and replace them with dot separators. This ensures that outputPath will
59
59
  // work with setDataItem.
60
- var outputPath = _copReactComponents.Utils.interpolateString(op.output, data).replace('[', '.').replace(']', '');
60
+ const outputPath = _copReactComponents.Utils.interpolateString(op.output, data).replace('[', '.').replace(']', '');
61
61
  (0, _setDataItem.default)(data, outputPath, result);
62
62
  }
63
63
  }