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

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 (383) hide show
  1. package/dist/components/CheckYourAnswers/Answer.js +15 -15
  2. package/dist/components/CheckYourAnswers/Answer.test.js +181 -132
  3. package/dist/components/CheckYourAnswers/CheckYourAnswers.js +142 -106
  4. package/dist/components/CheckYourAnswers/CheckYourAnswers.test.js +941 -563
  5. package/dist/components/CheckYourAnswers/index.js +1 -1
  6. package/dist/components/CollectionPage/CollectionPage.js +66 -75
  7. package/dist/components/CollectionPage/CollectionPage.test.js +369 -318
  8. package/dist/components/CollectionPage/index.js +1 -1
  9. package/dist/components/CollectionSummary/BannerStrip.js +15 -15
  10. package/dist/components/CollectionSummary/BannerStrip.test.js +79 -83
  11. package/dist/components/CollectionSummary/CollectionSummary.js +131 -109
  12. package/dist/components/CollectionSummary/CollectionSummary.test.js +180 -198
  13. package/dist/components/CollectionSummary/Confirmation.js +13 -15
  14. package/dist/components/CollectionSummary/Confirmation.test.js +63 -68
  15. package/dist/components/CollectionSummary/RenderListView.js +63 -46
  16. package/dist/components/CollectionSummary/RenderListView.scss +9 -0
  17. package/dist/components/CollectionSummary/RenderListView.test.js +120 -84
  18. package/dist/components/CollectionSummary/SummaryCard.js +157 -121
  19. package/dist/components/CollectionSummary/SummaryCard.test.js +1000 -970
  20. package/dist/components/CollectionSummary/SummaryCardDetails.js +94 -103
  21. package/dist/components/CollectionSummary/SummaryCardDetails.test.js +195 -187
  22. package/dist/components/CollectionSummary/SummaryCardValidationContext.js +36 -31
  23. package/dist/components/CollectionSummary/SummaryCardValidationContext.test.js +76 -64
  24. package/dist/components/CollectionSummary/index.js +1 -1
  25. package/dist/components/FormComponent/Collection.js +117 -80
  26. package/dist/components/FormComponent/Collection.test.js +1082 -910
  27. package/dist/components/FormComponent/Container.js +38 -43
  28. package/dist/components/FormComponent/Container.test.js +411 -379
  29. package/dist/components/FormComponent/FormComponent.js +74 -71
  30. package/dist/components/FormComponent/FormComponent.test.js +415 -354
  31. package/dist/components/FormComponent/helpers/addLabel.js +7 -4
  32. package/dist/components/FormComponent/helpers/getComponentDisabled.js +1 -1
  33. package/dist/components/FormComponent/helpers/getComponentDisabled.test.js +8 -8
  34. package/dist/components/FormComponent/helpers/getComponentError.js +5 -3
  35. package/dist/components/FormComponent/helpers/getComponentError.test.js +15 -15
  36. package/dist/components/FormComponent/helpers/getComponentFieldSet.js +4 -3
  37. package/dist/components/FormComponent/helpers/getComponentFieldSet.test.js +7 -7
  38. package/dist/components/FormComponent/helpers/index.js +5 -5
  39. package/dist/components/FormComponent/index.js +1 -1
  40. package/dist/components/FormPage/FormPage.js +87 -71
  41. package/dist/components/FormPage/FormPage.test.js +170 -133
  42. package/dist/components/FormPage/index.js +1 -1
  43. package/dist/components/FormRenderer/FormRenderer.js +198 -153
  44. package/dist/components/FormRenderer/FormRenderer.test.js +1116 -731
  45. package/dist/components/FormRenderer/handlers/cyaAction.js +3 -3
  46. package/dist/components/FormRenderer/handlers/getPageId.js +3 -1
  47. package/dist/components/FormRenderer/handlers/getPageId.test.js +15 -15
  48. package/dist/components/FormRenderer/handlers/handlers.test.js +33 -33
  49. package/dist/components/FormRenderer/handlers/index.js +2 -2
  50. package/dist/components/FormRenderer/handlers/navigate.js +4 -4
  51. package/dist/components/FormRenderer/handlers/submissionError.js +1 -1
  52. package/dist/components/FormRenderer/helpers/canActionProceed.js +1 -1
  53. package/dist/components/FormRenderer/helpers/canActionProceed.test.js +16 -16
  54. package/dist/components/FormRenderer/helpers/canCYASubmit.js +3 -1
  55. package/dist/components/FormRenderer/helpers/canCYASubmit.test.js +21 -17
  56. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.js +30 -27
  57. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.test.js +21 -21
  58. package/dist/components/FormRenderer/helpers/getCYA.js +7 -5
  59. package/dist/components/FormRenderer/helpers/getCYA.test.js +12 -12
  60. package/dist/components/FormRenderer/helpers/getFormState.js +8 -6
  61. package/dist/components/FormRenderer/helpers/getFormState.test.js +11 -11
  62. package/dist/components/FormRenderer/helpers/getNextPageId.js +32 -18
  63. package/dist/components/FormRenderer/helpers/getNextPageId.test.js +68 -68
  64. package/dist/components/FormRenderer/helpers/getPage.js +4 -2
  65. package/dist/components/FormRenderer/helpers/getPage.test.js +12 -12
  66. package/dist/components/FormRenderer/helpers/getRelevantPages.js +11 -8
  67. package/dist/components/FormRenderer/helpers/getRelevantPages.test.js +15 -15
  68. package/dist/components/FormRenderer/helpers/getSubmissionStatus.js +13 -12
  69. package/dist/components/FormRenderer/helpers/getSubmissionStatus.test.js +98 -104
  70. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.js +64 -65
  71. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.test.js +79 -72
  72. package/dist/components/FormRenderer/helpers/index.js +2 -2
  73. package/dist/components/FormRenderer/index.js +1 -1
  74. package/dist/components/FormRenderer/onCYAAction.js +54 -61
  75. package/dist/components/FormRenderer/onCYAAction.test.js +153 -165
  76. package/dist/components/FormRenderer/onPageAction.js +41 -45
  77. package/dist/components/FormRenderer/onPageAction.test.js +210 -225
  78. package/dist/components/FormRenderer/onTaskAction.js +15 -11
  79. package/dist/components/FormRenderer/onTaskAction.test.js +89 -94
  80. package/dist/components/PageActions/ActionButton.js +16 -13
  81. package/dist/components/PageActions/ActionButton.test.js +79 -57
  82. package/dist/components/PageActions/PageActions.js +11 -11
  83. package/dist/components/PageActions/PageActions.test.js +116 -87
  84. package/dist/components/PageActions/index.js +1 -1
  85. package/dist/components/SummaryList/GroupAction.js +21 -13
  86. package/dist/components/SummaryList/GroupAction.test.js +37 -41
  87. package/dist/components/SummaryList/RowAction.js +17 -12
  88. package/dist/components/SummaryList/RowAction.test.js +37 -41
  89. package/dist/components/SummaryList/SummaryList.js +28 -23
  90. package/dist/components/SummaryList/SummaryList.test.js +206 -179
  91. package/dist/components/SummaryList/SummaryListHeadingRow.js +6 -8
  92. package/dist/components/SummaryList/SummaryListHeadingRowWithAction.js +5 -7
  93. package/dist/components/SummaryList/SummaryListRow.js +6 -8
  94. package/dist/components/SummaryList/SummaryListTitleRow.js +5 -7
  95. package/dist/components/SummaryList/helpers/getGroupActionAttributes.js +6 -4
  96. package/dist/components/SummaryList/helpers/getGroupActionAttributes.test.js +24 -24
  97. package/dist/components/SummaryList/helpers/getRowActionAttributes.js +6 -4
  98. package/dist/components/SummaryList/helpers/getRowActionAttributes.test.js +24 -24
  99. package/dist/components/SummaryList/helpers/index.js +2 -2
  100. package/dist/components/SummaryList/index.js +1 -1
  101. package/dist/components/TaskList/Task.js +30 -20
  102. package/dist/components/TaskList/Task.test.js +77 -84
  103. package/dist/components/TaskList/TaskList.js +84 -53
  104. package/dist/components/TaskList/TaskList.test.js +150 -150
  105. package/dist/components/TaskList/TaskState.js +6 -8
  106. package/dist/components/TaskList/TaskState.test.js +49 -56
  107. package/dist/components/TaskList/index.js +1 -1
  108. package/dist/components/index.js +8 -8
  109. package/dist/context/HooksContext/HooksContext.js +81 -58
  110. package/dist/context/HooksContext/HooksContext.test.js +36 -27
  111. package/dist/context/HooksContext/index.js +4 -3
  112. package/dist/context/ValidationContext/ValidationContext.js +95 -44
  113. package/dist/context/ValidationContext/ValidationContext.test.js +70 -58
  114. package/dist/context/ValidationContext/index.js +4 -3
  115. package/dist/context/index.js +3 -3
  116. package/dist/hooks/index.js +11 -10
  117. package/dist/hooks/useAxios.js +41 -15
  118. package/dist/hooks/useGetRequest.js +98 -62
  119. package/dist/hooks/useHooks.js +3 -1
  120. package/dist/hooks/useRefData.js +41 -28
  121. package/dist/hooks/useValidation.js +3 -1
  122. package/dist/index.js +15 -14
  123. package/dist/models/CollectionLabels.js +1 -1
  124. package/dist/models/ComponentTypes.js +25 -25
  125. package/dist/models/EventTypes.js +4 -4
  126. package/dist/models/FormPages.js +4 -4
  127. package/dist/models/FormTypes.js +8 -8
  128. package/dist/models/HubFormats.js +3 -3
  129. package/dist/models/PageAction.js +38 -44
  130. package/dist/models/TaskStates.js +28 -29
  131. package/dist/models/index.js +10 -10
  132. package/dist/setupTests.js +32 -31
  133. package/dist/utils/CheckYourAnswers/getCYAAction.js +5 -5
  134. package/dist/utils/CheckYourAnswers/getCYAAction.test.js +55 -53
  135. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.js +27 -17
  136. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.test.js +36 -34
  137. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.js +34 -20
  138. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.test.js +45 -43
  139. package/dist/utils/CheckYourAnswers/getCYARow.js +10 -8
  140. package/dist/utils/CheckYourAnswers/getCYARow.test.js +87 -87
  141. package/dist/utils/CheckYourAnswers/getCYARowForGroup.js +25 -19
  142. package/dist/utils/CheckYourAnswers/getCYARowForGroup.test.js +17 -16
  143. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.js +45 -39
  144. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.test.js +75 -72
  145. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.js +105 -100
  146. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.test.js +182 -218
  147. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.js +21 -26
  148. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.test.js +106 -112
  149. package/dist/utils/CheckYourAnswers/getCYARowsForPage.js +21 -15
  150. package/dist/utils/CheckYourAnswers/getCYARowsForPage.test.js +83 -77
  151. package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.js +13 -13
  152. package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.test.js +19 -14
  153. package/dist/utils/CheckYourAnswers/index.js +2 -2
  154. package/dist/utils/CheckYourAnswers/showComponentCYA.js +6 -6
  155. package/dist/utils/CheckYourAnswers/showComponentCYA.test.js +26 -26
  156. package/dist/utils/CollectionPage/addCollectionPageEntry.js +3 -3
  157. package/dist/utils/CollectionPage/addCollectionPageEntry.test.js +6 -6
  158. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.js +3 -3
  159. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.test.js +22 -21
  160. package/dist/utils/CollectionPage/duplicateCollectionPageEntry.js +24 -14
  161. package/dist/utils/CollectionPage/duplicateCollectionPageEntry.test.js +43 -52
  162. package/dist/utils/CollectionPage/getCollectionPageActiveId.js +3 -3
  163. package/dist/utils/CollectionPage/getCollectionPageActiveId.test.js +11 -11
  164. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.js +12 -7
  165. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.test.js +23 -23
  166. package/dist/utils/CollectionPage/getCollectionPageData.js +13 -8
  167. package/dist/utils/CollectionPage/getCollectionPageData.test.js +20 -20
  168. package/dist/utils/CollectionPage/getErrorsForCollection.js +26 -25
  169. package/dist/utils/CollectionPage/getErrorsForCollection.test.js +23 -21
  170. package/dist/utils/CollectionPage/getQuickEditPage.js +32 -37
  171. package/dist/utils/CollectionPage/getQuickEditPage.test.js +22 -18
  172. package/dist/utils/CollectionPage/index.js +2 -2
  173. package/dist/utils/CollectionPage/mergeCollectionPages.js +42 -37
  174. package/dist/utils/CollectionPage/mergeCollectionPages.test.js +18 -48
  175. package/dist/utils/CollectionPage/removeCollectionPageEntry.js +7 -5
  176. package/dist/utils/CollectionPage/removeCollectionPageEntry.test.js +11 -11
  177. package/dist/utils/CollectionPage/setCollectionPageData.js +19 -12
  178. package/dist/utils/CollectionPage/setCollectionPageData.test.js +26 -26
  179. package/dist/utils/Component/addShowWhen.js +8 -4
  180. package/dist/utils/Component/addShowWhen.test.js +38 -38
  181. package/dist/utils/Component/applyToComponentTree.js +20 -19
  182. package/dist/utils/Component/applyToComponentTree.test.js +33 -28
  183. package/dist/utils/Component/cleanAttributes.js +13 -10
  184. package/dist/utils/Component/cleanAttributes.test.js +18 -17
  185. package/dist/utils/Component/elevateNestedComponents.js +7 -6
  186. package/dist/utils/Component/elevateNestedComponents.test.js +34 -34
  187. package/dist/utils/Component/getComponent.js +97 -90
  188. package/dist/utils/Component/getComponentTests/getComponent.autocomplete.test.js +18 -19
  189. package/dist/utils/Component/getComponentTests/getComponent.calculation.test.js +63 -50
  190. package/dist/utils/Component/getComponentTests/getComponent.checkboxes.test.js +49 -40
  191. package/dist/utils/Component/getComponentTests/getComponent.date.test.js +40 -30
  192. package/dist/utils/Component/getComponentTests/getComponent.details.test.js +19 -21
  193. package/dist/utils/Component/getComponentTests/getComponent.email.test.js +23 -18
  194. package/dist/utils/Component/getComponentTests/getComponent.file.test.js +27 -22
  195. package/dist/utils/Component/getComponentTests/getComponent.heading.test.js +11 -12
  196. package/dist/utils/Component/getComponentTests/getComponent.html.test.js +16 -18
  197. package/dist/utils/Component/getComponentTests/getComponent.insetText.test.js +9 -10
  198. package/dist/utils/Component/getComponentTests/getComponent.list.test.js +16 -18
  199. package/dist/utils/Component/getComponentTests/getComponent.multifile.test.js +27 -23
  200. package/dist/utils/Component/getComponentTests/getComponent.nested.test.js +175 -155
  201. package/dist/utils/Component/getComponentTests/getComponent.paragraph.test.js +16 -18
  202. package/dist/utils/Component/getComponentTests/getComponent.phoneNumber.test.js +23 -18
  203. package/dist/utils/Component/getComponentTests/getComponent.radios.test.js +73 -58
  204. package/dist/utils/Component/getComponentTests/getComponent.select.test.js +23 -18
  205. package/dist/utils/Component/getComponentTests/getComponent.text.test.js +23 -18
  206. package/dist/utils/Component/getComponentTests/getComponent.textArea.test.js +41 -34
  207. package/dist/utils/Component/getComponentTests/getComponent.time.test.js +32 -23
  208. package/dist/utils/Component/getComponentTests/getComponent.unknown.test.js +3 -3
  209. package/dist/utils/Component/getComponentTests/getComponent.warningText.test.js +9 -10
  210. package/dist/utils/Component/getDefaultValue.js +9 -7
  211. package/dist/utils/Component/getDefaultValue.test.js +13 -13
  212. package/dist/utils/Component/getDefaultValueFromConfig.js +24 -24
  213. package/dist/utils/Component/getDefaultValueFromConfig.test.js +32 -32
  214. package/dist/utils/Component/index.js +2 -2
  215. package/dist/utils/Component/isEditable.js +4 -2
  216. package/dist/utils/Component/isEditable.test.js +15 -14
  217. package/dist/utils/Component/optionIsSelected.js +4 -2
  218. package/dist/utils/Component/optionIsSelected.test.js +12 -12
  219. package/dist/utils/Component/setupContainerComponentsPath.js +31 -29
  220. package/dist/utils/Component/setupContainerComponentsPath.test.js +16 -16
  221. package/dist/utils/Component/showComponent.js +4 -3
  222. package/dist/utils/Component/showComponent.test.js +29 -29
  223. package/dist/utils/Component/wrapInFormGroup.js +4 -4
  224. package/dist/utils/Condition/index.js +2 -2
  225. package/dist/utils/Condition/meetsAllConditions.js +9 -9
  226. package/dist/utils/Condition/meetsAllConditions.test.js +21 -21
  227. package/dist/utils/Condition/meetsCondition.js +31 -20
  228. package/dist/utils/Condition/meetsCondition.test.js +403 -403
  229. package/dist/utils/Condition/meetsOneCondition.js +6 -6
  230. package/dist/utils/Condition/meetsOneCondition.test.js +17 -17
  231. package/dist/utils/Condition/setupConditions.js +19 -14
  232. package/dist/utils/Condition/setupConditions.test.js +8 -8
  233. package/dist/utils/Container/getEditableComponents.js +6 -4
  234. package/dist/utils/Container/getEditableComponents.test.js +46 -44
  235. package/dist/utils/Container/index.js +2 -2
  236. package/dist/utils/Container/setupNesting.js +22 -16
  237. package/dist/utils/Container/setupNesting.test.js +31 -28
  238. package/dist/utils/Container/showContainer.js +8 -4
  239. package/dist/utils/Container/showContainer.test.js +31 -31
  240. package/dist/utils/Data/applyFormula.js +50 -40
  241. package/dist/utils/Data/applyFormula.test.js +26 -26
  242. package/dist/utils/Data/deleteValues.js +8 -4
  243. package/dist/utils/Data/deleteValues.test.js +11 -11
  244. package/dist/utils/Data/getAutocompleteSource.js +29 -20
  245. package/dist/utils/Data/getAutocompleteSource.test.js +87 -81
  246. package/dist/utils/Data/getDataPath.js +30 -20
  247. package/dist/utils/Data/getDataPath.test.js +20 -20
  248. package/dist/utils/Data/getOptions.js +34 -27
  249. package/dist/utils/Data/getOptions.test.js +28 -28
  250. package/dist/utils/Data/getSourceData.js +19 -6
  251. package/dist/utils/Data/getSourceData.test.js +81 -85
  252. package/dist/utils/Data/index.js +2 -2
  253. package/dist/utils/Data/nestInRefdataOptions.js +16 -9
  254. package/dist/utils/Data/nestInRefdataOptions.test.js +17 -17
  255. package/dist/utils/Data/refDataToOptions.js +15 -11
  256. package/dist/utils/Data/refDataToOptions.test.js +20 -20
  257. package/dist/utils/Data/setDataItem.js +8 -7
  258. package/dist/utils/Data/setDataItem.test.js +38 -38
  259. package/dist/utils/Data/setupFormData.js +22 -14
  260. package/dist/utils/Data/setupFormData.test.js +51 -52
  261. package/dist/utils/Data/setupRefDataUrlForComponent.js +28 -21
  262. package/dist/utils/Data/setupRefDataUrlForComponent.test.js +28 -28
  263. package/dist/utils/FormPage/applyConditionalProperties.js +10 -6
  264. package/dist/utils/FormPage/applyConditionalProperties.test.js +19 -16
  265. package/dist/utils/FormPage/getConditionalText.js +4 -4
  266. package/dist/utils/FormPage/getConditionalText.test.js +35 -35
  267. package/dist/utils/FormPage/getFormPage.js +17 -16
  268. package/dist/utils/FormPage/getFormPage.test.js +48 -49
  269. package/dist/utils/FormPage/getFormPages.js +13 -8
  270. package/dist/utils/FormPage/getFormPages.test.js +25 -22
  271. package/dist/utils/FormPage/getPageActions.js +17 -10
  272. package/dist/utils/FormPage/getPageActions.test.js +33 -33
  273. package/dist/utils/FormPage/getParagraphFromText.js +7 -5
  274. package/dist/utils/FormPage/getParagraphFromText.test.js +7 -7
  275. package/dist/utils/FormPage/index.js +5 -3
  276. package/dist/utils/FormPage/showFormPage.js +8 -4
  277. package/dist/utils/FormPage/showFormPage.test.js +33 -33
  278. package/dist/utils/FormPage/showFormPageCYA.js +3 -3
  279. package/dist/utils/FormPage/showFormPageCYA.test.js +9 -9
  280. package/dist/utils/FormPage/useComponent.js +28 -21
  281. package/dist/utils/FormPage/useComponent.test.js +80 -78
  282. package/dist/utils/Format/formatData.js +1 -1
  283. package/dist/utils/Format/formatData.test.js +19 -19
  284. package/dist/utils/Format/formatDataForComponent.js +7 -6
  285. package/dist/utils/Format/formatDataForComponent.test.js +78 -50
  286. package/dist/utils/Format/formatDataForForm.js +8 -6
  287. package/dist/utils/Format/formatDataForForm.test.js +17 -14
  288. package/dist/utils/Format/formatDataForPage.js +5 -4
  289. package/dist/utils/Format/formatDataForPage.test.js +25 -20
  290. package/dist/utils/Format/index.js +2 -2
  291. package/dist/utils/Hub/getFormHub.js +2 -2
  292. package/dist/utils/Hub/getFormHub.test.js +32 -29
  293. package/dist/utils/Hub/index.js +2 -2
  294. package/dist/utils/Meta/constants.js +2 -2
  295. package/dist/utils/Meta/documents/getDocuments.js +4 -1
  296. package/dist/utils/Meta/documents/getDocuments.test.js +17 -25
  297. package/dist/utils/Meta/documents/index.js +2 -2
  298. package/dist/utils/Meta/documents/setDocumentsForField.js +17 -15
  299. package/dist/utils/Meta/documents/setDocumentsForField.test.js +35 -69
  300. package/dist/utils/Meta/index.js +2 -2
  301. package/dist/utils/Operate/checkValueIsTruthy.js +4 -4
  302. package/dist/utils/Operate/checkValueIsTruthy.test.js +17 -17
  303. package/dist/utils/Operate/deleteValueInFormData.js +3 -3
  304. package/dist/utils/Operate/deleteValueInFormData.test.js +15 -15
  305. package/dist/utils/Operate/getFirstOf.js +8 -8
  306. package/dist/utils/Operate/getFirstOf.test.js +33 -33
  307. package/dist/utils/Operate/getIndexOfMatchingValueIn.js +12 -12
  308. package/dist/utils/Operate/getIndexOfMatchingValueIn.test.js +53 -47
  309. package/dist/utils/Operate/getLength.js +11 -11
  310. package/dist/utils/Operate/getLength.test.js +19 -19
  311. package/dist/utils/Operate/index.js +2 -2
  312. package/dist/utils/Operate/persistValueInFormData.js +6 -6
  313. package/dist/utils/Operate/persistValueInFormData.test.js +21 -23
  314. package/dist/utils/Operate/runPageOperations.js +9 -9
  315. package/dist/utils/Operate/runPageOperations.test.js +37 -36
  316. package/dist/utils/Operate/setValueInFormData.js +5 -5
  317. package/dist/utils/Operate/setValueInFormData.test.js +17 -17
  318. package/dist/utils/Operate/shouldRun.js +8 -8
  319. package/dist/utils/Operate/shouldRun.test.js +28 -22
  320. package/dist/utils/Validate/additional/conditionallyPermittedChange.js +1 -1
  321. package/dist/utils/Validate/additional/conditionallyPermittedChange.test.js +15 -15
  322. package/dist/utils/Validate/additional/conditionallyRequired.js +5 -4
  323. package/dist/utils/Validate/additional/conditionallyRequired.test.js +19 -19
  324. package/dist/utils/Validate/additional/index.js +8 -8
  325. package/dist/utils/Validate/additional/index.test.js +22 -22
  326. package/dist/utils/Validate/additional/mustBeAfter.js +3 -3
  327. package/dist/utils/Validate/additional/mustBeAfter.test.js +41 -41
  328. package/dist/utils/Validate/additional/mustBeBefore.js +3 -3
  329. package/dist/utils/Validate/additional/mustBeBefore.test.js +29 -29
  330. package/dist/utils/Validate/additional/mustBeEarlierDateTime.js +14 -9
  331. package/dist/utils/Validate/additional/mustBeEarlierDateTime.test.js +42 -38
  332. package/dist/utils/Validate/additional/mustBeGreaterThan.js +2 -2
  333. package/dist/utils/Validate/additional/mustBeGreaterThan.test.js +19 -19
  334. package/dist/utils/Validate/additional/mustBeInTheFuture.js +4 -4
  335. package/dist/utils/Validate/additional/mustBeInTheFuture.test.js +13 -13
  336. package/dist/utils/Validate/additional/mustBeInThePast.js +5 -5
  337. package/dist/utils/Validate/additional/mustBeInThePast.test.js +13 -13
  338. package/dist/utils/Validate/additional/mustBeLessThan.js +2 -2
  339. package/dist/utils/Validate/additional/mustBeLessThan.test.js +18 -18
  340. package/dist/utils/Validate/additional/mustBeLongerThan.js +1 -1
  341. package/dist/utils/Validate/additional/mustBeLongerThan.test.js +17 -17
  342. package/dist/utils/Validate/additional/mustBeNumbersOnly.js +2 -2
  343. package/dist/utils/Validate/additional/mustBeNumbersOnly.test.js +21 -21
  344. package/dist/utils/Validate/additional/mustBeOneOf.js +1 -1
  345. package/dist/utils/Validate/additional/mustBeOneOf.test.js +13 -13
  346. package/dist/utils/Validate/additional/mustBeShorterThan.js +1 -1
  347. package/dist/utils/Validate/additional/mustBeShorterThan.test.js +17 -17
  348. package/dist/utils/Validate/additional/mustBeUniqueInCollection.js +5 -5
  349. package/dist/utils/Validate/additional/mustBeUniqueInCollection.test.js +40 -36
  350. package/dist/utils/Validate/additional/mustEnterAtLeastOne.js +5 -3
  351. package/dist/utils/Validate/additional/mustEnterAtLeastOne.test.js +17 -15
  352. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.js +1 -1
  353. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.test.js +13 -13
  354. package/dist/utils/Validate/additional/mustNotContainSql.js +4 -3
  355. package/dist/utils/Validate/additional/mustNotContainSql.test.js +15 -15
  356. package/dist/utils/Validate/additional/mustSelectOnlyOne.js +5 -3
  357. package/dist/utils/Validate/additional/mustSelectOnlyOne.test.js +27 -29
  358. package/dist/utils/Validate/additional/utils.js +24 -11
  359. package/dist/utils/Validate/index.js +2 -2
  360. package/dist/utils/Validate/validateCollection.js +27 -21
  361. package/dist/utils/Validate/validateCollection.test.js +77 -85
  362. package/dist/utils/Validate/validateComponent.js +23 -22
  363. package/dist/utils/Validate/validateComponent.test.js +165 -188
  364. package/dist/utils/Validate/validateContainer.js +21 -16
  365. package/dist/utils/Validate/validateContainer.test.js +56 -62
  366. package/dist/utils/Validate/validateDate.js +23 -17
  367. package/dist/utils/Validate/validateDate.test.js +32 -31
  368. package/dist/utils/Validate/validateEmail.js +9 -7
  369. package/dist/utils/Validate/validateEmail.test.js +26 -26
  370. package/dist/utils/Validate/validateMultifile.js +7 -5
  371. package/dist/utils/Validate/validateMultifile.test.js +18 -17
  372. package/dist/utils/Validate/validatePage.js +24 -20
  373. package/dist/utils/Validate/validatePage.test.js +215 -227
  374. package/dist/utils/Validate/validateRegex.js +8 -5
  375. package/dist/utils/Validate/validateRegex.test.js +17 -17
  376. package/dist/utils/Validate/validateRequired.js +7 -5
  377. package/dist/utils/Validate/validateRequired.test.js +19 -19
  378. package/dist/utils/Validate/validateTextArea.js +7 -5
  379. package/dist/utils/Validate/validateTextArea.test.js +21 -21
  380. package/dist/utils/Validate/validateTime.js +19 -12
  381. package/dist/utils/Validate/validateTime.test.js +27 -27
  382. package/dist/utils/index.js +10 -8
  383. package/package.json +1 -1
@@ -1,13 +1,17 @@
1
1
  "use strict";
2
2
 
3
3
  var _getAutocompleteSource = _interopRequireDefault(require("./getAutocompleteSource"));
4
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
5
- // Local imports
6
-
7
- describe('utils', () => {
8
- describe('Data', () => {
4
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5
+ 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); }
6
+ 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; }
7
+ 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; }
8
+ 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; }
9
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
10
+ 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
11
+ describe('utils', function () {
12
+ describe('Data', function () {
9
13
  // test data
10
- const gbCurrency = {
14
+ var gbCurrency = {
11
15
  currencyName: 'Great British Pounds',
12
16
  currencyCode: 'GBP',
13
17
  hint: 'hint',
@@ -15,7 +19,7 @@ describe('utils', () => {
15
19
  label: 'GBP',
16
20
  slangTerm: 'quid'
17
21
  };
18
- const usCurrency = {
22
+ var usCurrency = {
19
23
  currencyName: 'United States Dollars',
20
24
  currencyCode: 'USD',
21
25
  hint: 'hint',
@@ -24,7 +28,7 @@ describe('utils', () => {
24
28
  slangTerm: 'bucks',
25
29
  synonyms: ['greenbacks']
26
30
  };
27
- const options = {
31
+ var options = {
28
32
  alpha: {
29
33
  value: 'a',
30
34
  label: 'Alpha',
@@ -46,30 +50,30 @@ describe('utils', () => {
46
50
  hint: 'hint'
47
51
  }
48
52
  };
49
- const testCurrencies = [gbCurrency, usCurrency];
50
- describe('getAutocompleteSource', () => {
51
- it('should handle a null config', () => {
52
- const SOURCE = (0, _getAutocompleteSource.default)(null);
53
+ var testCurrencies = [gbCurrency, usCurrency];
54
+ describe('getAutocompleteSource', function () {
55
+ it('should handle a null config', function () {
56
+ var SOURCE = (0, _getAutocompleteSource.default)(null);
53
57
  expect(typeof SOURCE === 'function').toBeTruthy();
54
- SOURCE('query', results => {
58
+ SOURCE('query', function (results) {
55
59
  expect(Array.isArray(results)).toBeTruthy();
56
60
  expect(results.length).toEqual(0);
57
61
  });
58
62
  });
59
- describe('without custom item labels', () => {
60
- it('should get any specified options from the config', () => {
61
- const CONFIG = {
63
+ describe('without custom item labels', function () {
64
+ it('should get any specified options from the config', function () {
65
+ var CONFIG = {
62
66
  data: {
63
67
  options: [options.alpha, options.bravo]
64
68
  }
65
69
  };
66
- const SOURCE = (0, _getAutocompleteSource.default)(CONFIG);
70
+ var SOURCE = (0, _getAutocompleteSource.default)(CONFIG);
67
71
  expect(typeof SOURCE === 'function').toBeTruthy();
68
- SOURCE('a', results => {
72
+ SOURCE('a', function (results) {
69
73
  expect(results.length).toEqual(2);
70
74
  expect(results).toEqual([options.alpha, options.bravo]);
71
75
  });
72
- SOURCE('al', results => {
76
+ SOURCE('al', function (results) {
73
77
  expect(results.length).toEqual(1);
74
78
  expect(results).toEqual([{
75
79
  value: 'a',
@@ -78,95 +82,93 @@ describe('utils', () => {
78
82
  }]);
79
83
  });
80
84
  });
81
- it('should handle an empty query', () => {
82
- const CONFIG = {
85
+ it('should handle an empty query', function () {
86
+ var CONFIG = {
83
87
  data: {
84
88
  options: [options.alpha, options.bravo]
85
89
  }
86
90
  };
87
- const SOURCE = (0, _getAutocompleteSource.default)(CONFIG);
88
- SOURCE('', results => {
91
+ var SOURCE = (0, _getAutocompleteSource.default)(CONFIG);
92
+ SOURCE('', function (results) {
89
93
  expect(results.length).toEqual(2);
90
94
  expect(results).toEqual([options.alpha, options.bravo]);
91
95
  });
92
96
  });
93
- it('should handle an undefined query', () => {
94
- const CONFIG = {
97
+ it('should handle an undefined query', function () {
98
+ var CONFIG = {
95
99
  data: {
96
100
  options: [options.alpha, options.bravo]
97
101
  }
98
102
  };
99
- const SOURCE = (0, _getAutocompleteSource.default)(CONFIG);
100
- SOURCE(undefined, results => {
103
+ var SOURCE = (0, _getAutocompleteSource.default)(CONFIG);
104
+ SOURCE(undefined, function (results) {
101
105
  expect(results.length).toEqual(2);
102
106
  expect(results).toEqual([options.alpha, options.bravo]);
103
107
  });
104
108
  });
105
- it('should handle a null query', () => {
106
- const CONFIG = {
109
+ it('should handle a null query', function () {
110
+ var CONFIG = {
107
111
  data: {
108
112
  options: [options.alpha, options.bravo]
109
113
  }
110
114
  };
111
- const SOURCE = (0, _getAutocompleteSource.default)(CONFIG);
112
- SOURCE(null, results => {
115
+ var SOURCE = (0, _getAutocompleteSource.default)(CONFIG);
116
+ SOURCE(null, function (results) {
113
117
  expect(results.length).toEqual(2);
114
118
  expect(results).toEqual([options.alpha, options.bravo]);
115
119
  });
116
120
  });
117
- it('should handle a missing label on an option', () => {
118
- const CONFIG = {
121
+ it('should handle a missing label on an option', function () {
122
+ var CONFIG = {
119
123
  data: {
120
124
  options: [options.alpha, {
121
125
  value: 'b'
122
126
  }]
123
127
  }
124
128
  };
125
- const SOURCE = (0, _getAutocompleteSource.default)(CONFIG);
129
+ var SOURCE = (0, _getAutocompleteSource.default)(CONFIG);
126
130
  expect(typeof SOURCE === 'function').toBeTruthy();
127
- SOURCE('a', results => {
131
+ SOURCE('a', function (results) {
128
132
  expect(results.length).toEqual(1);
129
133
  expect(results).toEqual([options.alpha]);
130
134
  });
131
135
  });
132
- it('should return matches in the right order', () => {
133
- const CONFIG = {
136
+ it('should return matches in the right order', function () {
137
+ var CONFIG = {
134
138
  data: {
135
139
  options: [options.alIncluded, options.alStart, options.bravo, options.alpha]
136
140
  }
137
141
  };
138
- const SOURCE = (0, _getAutocompleteSource.default)(CONFIG);
142
+ var SOURCE = (0, _getAutocompleteSource.default)(CONFIG);
139
143
  expect(typeof SOURCE === 'function').toBeTruthy();
140
- SOURCE('al', results => {
144
+ SOURCE('al', function (results) {
141
145
  expect(results.length).toEqual(3);
142
146
  expect(results).toEqual([options.alpha, options.alStart, options.alIncluded]);
143
147
  });
144
148
  });
145
- it('should match options using a defined synonym', () => {
146
- const CONFIG = {
149
+ it('should match options using a defined synonym', function () {
150
+ var CONFIG = {
147
151
  data: {
148
- options: [{
149
- ...options.alpha,
152
+ options: [_objectSpread(_objectSpread({}, options.alpha), {}, {
150
153
  synonyms: ['first']
151
- }, {
154
+ }), {
152
155
  value: 'b'
153
156
  }]
154
157
  }
155
158
  };
156
- const SOURCE = (0, _getAutocompleteSource.default)(CONFIG);
159
+ var SOURCE = (0, _getAutocompleteSource.default)(CONFIG);
157
160
  expect(typeof SOURCE === 'function').toBeTruthy();
158
- SOURCE('first', results => {
161
+ SOURCE('first', function (results) {
159
162
  expect(results.length).toEqual(1);
160
- expect(results).toEqual([{
161
- ...options.alpha,
163
+ expect(results).toEqual([_objectSpread(_objectSpread({}, options.alpha), {}, {
162
164
  synonyms: ['first']
163
- }]);
165
+ })]);
164
166
  });
165
167
  });
166
168
  });
167
- describe('with custom item labels', () => {
168
- it('should get any specified options from the config', () => {
169
- const CONFIG = {
169
+ describe('with custom item labels', function () {
170
+ it('should get any specified options from the config', function () {
171
+ var CONFIG = {
170
172
  item: {
171
173
  value: 'currencyCode',
172
174
  label: 'currencyCode',
@@ -177,19 +179,19 @@ describe('utils', () => {
177
179
  options: testCurrencies
178
180
  }
179
181
  };
180
- const SOURCE = (0, _getAutocompleteSource.default)(CONFIG);
182
+ var SOURCE = (0, _getAutocompleteSource.default)(CONFIG);
181
183
  expect(typeof SOURCE === 'function').toBeTruthy();
182
- SOURCE('GB', results => {
184
+ SOURCE('GB', function (results) {
183
185
  expect(results.length).toEqual(1);
184
186
  expect(results).toEqual([gbCurrency]);
185
187
  });
186
- SOURCE(' (', results => {
188
+ SOURCE(' (', function (results) {
187
189
  expect(results.length).toEqual(2);
188
190
  expect(results).toEqual(testCurrencies);
189
191
  });
190
192
  });
191
- it('should handle an empty query', () => {
192
- const CONFIG = {
193
+ it('should handle an empty query', function () {
194
+ var CONFIG = {
193
195
  item: {
194
196
  value: 'currencyCode',
195
197
  label: 'currencyCode',
@@ -200,14 +202,14 @@ describe('utils', () => {
200
202
  options: testCurrencies
201
203
  }
202
204
  };
203
- const SOURCE = (0, _getAutocompleteSource.default)(CONFIG);
204
- SOURCE('', results => {
205
+ var SOURCE = (0, _getAutocompleteSource.default)(CONFIG);
206
+ SOURCE('', function (results) {
205
207
  expect(results.length).toEqual(2);
206
208
  expect(results).toEqual(testCurrencies);
207
209
  });
208
210
  });
209
- it('should handle an undefined query', () => {
210
- const CONFIG = {
211
+ it('should handle an undefined query', function () {
212
+ var CONFIG = {
211
213
  item: {
212
214
  value: 'currencyCode',
213
215
  label: 'currencyCode',
@@ -218,14 +220,14 @@ describe('utils', () => {
218
220
  options: testCurrencies
219
221
  }
220
222
  };
221
- const SOURCE = (0, _getAutocompleteSource.default)(CONFIG);
222
- SOURCE(undefined, results => {
223
+ var SOURCE = (0, _getAutocompleteSource.default)(CONFIG);
224
+ SOURCE(undefined, function (results) {
223
225
  expect(results.length).toEqual(2);
224
226
  expect(results).toEqual(testCurrencies);
225
227
  });
226
228
  });
227
- it('should handle a null query', () => {
228
- const CONFIG = {
229
+ it('should handle a null query', function () {
230
+ var CONFIG = {
229
231
  item: {
230
232
  value: 'currencyCode',
231
233
  label: 'currencyCode',
@@ -236,14 +238,14 @@ describe('utils', () => {
236
238
  options: testCurrencies
237
239
  }
238
240
  };
239
- const SOURCE = (0, _getAutocompleteSource.default)(CONFIG);
240
- SOURCE(null, results => {
241
+ var SOURCE = (0, _getAutocompleteSource.default)(CONFIG);
242
+ SOURCE(null, function (results) {
241
243
  expect(results.length).toEqual(2);
242
244
  expect(results).toEqual(testCurrencies);
243
245
  });
244
246
  });
245
- it('should handle a missing label on an option', () => {
246
- const CONFIG = {
247
+ it('should handle a missing label on an option', function () {
248
+ var CONFIG = {
247
249
  item: {
248
250
  value: 'currencyCode',
249
251
  label: 'currencyCode',
@@ -259,9 +261,9 @@ describe('utils', () => {
259
261
  }]
260
262
  }
261
263
  };
262
- const SOURCE = (0, _getAutocompleteSource.default)(CONFIG);
264
+ var SOURCE = (0, _getAutocompleteSource.default)(CONFIG);
263
265
  expect(typeof SOURCE === 'function').toBeTruthy();
264
- SOURCE('a', results => {
266
+ SOURCE('a', function (results) {
265
267
  // We expect 2 results here instead of 1 because defining a custom
266
268
  // format for item labels means the label is constructed upon processing
267
269
  // a query - we're not relying on the 'label' field of the option.
@@ -275,8 +277,8 @@ describe('utils', () => {
275
277
  }]);
276
278
  });
277
279
  });
278
- it('should match options using a defined synonym', () => {
279
- const CONFIG = {
280
+ it('should match options using a defined synonym', function () {
281
+ var CONFIG = {
280
282
  item: {
281
283
  value: 'currencyCode',
282
284
  label: 'currencyCode',
@@ -287,15 +289,17 @@ describe('utils', () => {
287
289
  options: testCurrencies
288
290
  }
289
291
  };
290
- const SOURCE = (0, _getAutocompleteSource.default)(CONFIG);
292
+ var SOURCE = (0, _getAutocompleteSource.default)(CONFIG);
291
293
  expect(typeof SOURCE === 'function').toBeTruthy();
292
- SOURCE('greenbacks', results => {
294
+ SOURCE('greenbacks', function (results) {
293
295
  expect(results.length).toEqual(1);
294
- expect(results).toEqual(testCurrencies.filter(c => c.currencyCode === 'USD'));
296
+ expect(results).toEqual(testCurrencies.filter(function (c) {
297
+ return c.currencyCode === 'USD';
298
+ }));
295
299
  });
296
300
  });
297
- it('should match options using defined extra searchable fields', () => {
298
- const CONFIG = {
301
+ it('should match options using defined extra searchable fields', function () {
302
+ var CONFIG = {
299
303
  item: {
300
304
  value: 'currencyCode',
301
305
  label: 'currencyCode',
@@ -307,11 +311,13 @@ describe('utils', () => {
307
311
  options: testCurrencies
308
312
  }
309
313
  };
310
- const SOURCE = (0, _getAutocompleteSource.default)(CONFIG);
314
+ var SOURCE = (0, _getAutocompleteSource.default)(CONFIG);
311
315
  expect(typeof SOURCE === 'function').toBeTruthy();
312
- SOURCE('buc', results => {
316
+ SOURCE('buc', function (results) {
313
317
  expect(results.length).toEqual(1);
314
- expect(results).toEqual(testCurrencies.filter(c => c.currencyCode === 'USD'));
318
+ expect(results).toEqual(testCurrencies.filter(function (c) {
319
+ return c.currencyCode === 'USD';
320
+ }));
315
321
  });
316
322
  });
317
323
  });
@@ -4,37 +4,47 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
- const DOT = '.';
8
- const SLASH = '/';
9
- const DOT_DOT = `${DOT}${DOT}`;
10
- const PARENT_PATH = `${DOT}${SLASH}`;
11
- const toPath = arr => arr.join(DOT);
12
- const toParts = function (str) {
13
- let separator = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : DOT;
7
+ var DOT = '.';
8
+ var SLASH = '/';
9
+ var DOT_DOT = "".concat(DOT).concat(DOT);
10
+ var PARENT_PATH = "".concat(DOT).concat(SLASH);
11
+ var toPath = function toPath(arr) {
12
+ return arr.join(DOT);
13
+ };
14
+ var toParts = function toParts(str) {
15
+ var separator = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : DOT;
14
16
  return str.split(separator);
15
17
  };
16
- const isDotDot = str => str === DOT_DOT;
17
- const isDotOrDotDot = str => [DOT, DOT_DOT].indexOf(str) > -1;
18
- const isRelativePath = path => path && path.indexOf(DOT) === 0;
19
- const standardiseRelativePath = path => {
18
+ var isDotDot = function isDotDot(str) {
19
+ return str === DOT_DOT;
20
+ };
21
+ var isDotOrDotDot = function isDotOrDotDot(str) {
22
+ return [DOT, DOT_DOT].indexOf(str) > -1;
23
+ };
24
+ var isRelativePath = function isRelativePath(path) {
25
+ return path && path.indexOf(DOT) === 0;
26
+ };
27
+ var standardiseRelativePath = function standardiseRelativePath(path) {
20
28
  if (path.indexOf(PARENT_PATH) === 0) {
21
29
  return path;
22
30
  }
23
- return `${PARENT_PATH}${path}`;
31
+ return "".concat(PARENT_PATH).concat(path);
24
32
  };
25
- const ascendPath = (startPath, ascent) => {
26
- const relativePath = standardiseRelativePath(ascent);
33
+ var ascendPath = function ascendPath(startPath, ascent) {
34
+ var relativePath = standardiseRelativePath(ascent);
27
35
  // Always add 1 because we're starting on a leaf node within a "directory".
28
- const stepsToClimb = toParts(relativePath, SLASH).filter(isDotDot).length + 1;
29
- const pathParts = startPath ? toParts(startPath) : [];
36
+ var stepsToClimb = toParts(relativePath, SLASH).filter(isDotDot).length + 1;
37
+ var pathParts = startPath ? toParts(startPath) : [];
30
38
  if (stepsToClimb >= pathParts.length) {
31
39
  return '';
32
40
  }
33
41
  return toPath(pathParts.slice(0, -stepsToClimb));
34
42
  };
35
- const descendPath = (startPath, descent) => {
36
- const stepsDown = toParts(descent, SLASH).filter(str => !isDotOrDotDot(str));
37
- return startPath ? `${startPath}.${toPath(stepsDown)}` : toPath(stepsDown);
43
+ var descendPath = function descendPath(startPath, descent) {
44
+ var stepsDown = toParts(descent, SLASH).filter(function (str) {
45
+ return !isDotOrDotDot(str);
46
+ });
47
+ return startPath ? "".concat(startPath, ".").concat(toPath(stepsDown)) : toPath(stepsDown);
38
48
  };
39
49
 
40
50
  /**
@@ -56,7 +66,7 @@ const descendPath = (startPath, descent) => {
56
66
  * getDataPath('../../relative.path', 'this.is.the.current.path');
57
67
  * // => 'this.is.relative.path'
58
68
  */
59
- const getDataPath = (path, currentPath) => {
69
+ var getDataPath = function getDataPath(path, currentPath) {
60
70
  if (isRelativePath(path)) {
61
71
  return descendPath(ascendPath(currentPath, path), path);
62
72
  }
@@ -1,48 +1,48 @@
1
1
  "use strict";
2
2
 
3
3
  var _getDataPath = _interopRequireDefault(require("./getDataPath"));
4
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
5
- describe('utils.Data.getDataPath', () => {
6
- const CURRENT_PATH = 'this.is.the.current.path';
7
- const RELATIVE = 'relative.path';
8
- const ABSOLUTE = 'absolute.path';
9
- const doTest = (path, currentPath, expected) => {
4
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5
+ describe('utils.Data.getDataPath', function () {
6
+ var CURRENT_PATH = 'this.is.the.current.path';
7
+ var RELATIVE = 'relative.path';
8
+ var ABSOLUTE = 'absolute.path';
9
+ var doTest = function doTest(path, currentPath, expected) {
10
10
  expect((0, _getDataPath.default)(path, currentPath)).toEqual(expected);
11
11
  };
12
- it(`should return an absolute path appropriately`, () => {
12
+ it("should return an absolute path appropriately", function () {
13
13
  doTest(ABSOLUTE, CURRENT_PATH, ABSOLUTE);
14
14
  });
15
- it(`should return an absolute path appropriately where the current path is null`, () => {
15
+ it("should return an absolute path appropriately where the current path is null", function () {
16
16
  doTest(ABSOLUTE, null, ABSOLUTE);
17
17
  });
18
18
  [{
19
- p: `./${RELATIVE}`,
20
- e: `this.is.the.current.${RELATIVE}`,
19
+ p: "./".concat(RELATIVE),
20
+ e: "this.is.the.current.".concat(RELATIVE),
21
21
  d: 'a sibling node'
22
22
  }, {
23
- p: `../${RELATIVE}`,
24
- e: `this.is.the.${RELATIVE}`,
23
+ p: "../".concat(RELATIVE),
24
+ e: "this.is.the.".concat(RELATIVE),
25
25
  d: 'a cousin node'
26
26
  }, {
27
- p: `./../${RELATIVE}`,
28
- e: `this.is.the.${RELATIVE}`,
27
+ p: "./../".concat(RELATIVE),
28
+ e: "this.is.the.".concat(RELATIVE),
29
29
  d: 'a cousin node with leading dot-slash'
30
30
  }, {
31
- p: `../../../../../../../${RELATIVE}`,
31
+ p: "../../../../../../../".concat(RELATIVE),
32
32
  e: RELATIVE,
33
33
  d: 'an inappropriately nested node'
34
- }].forEach(test => {
35
- it(`should return ${test.d} appropriately`, () => {
34
+ }].forEach(function (test) {
35
+ it("should return ".concat(test.d, " appropriately"), function () {
36
36
  doTest(test.p, CURRENT_PATH, test.e);
37
37
  });
38
- it(`should return ${test.d} appropriately where the current path is null`, () => {
38
+ it("should return ".concat(test.d, " appropriately where the current path is null"), function () {
39
39
  doTest(test.p, null, RELATIVE);
40
40
  });
41
41
  });
42
- it('should handle a null path and return null', () => {
42
+ it('should handle a null path and return null', function () {
43
43
  doTest(null, CURRENT_PATH, null);
44
44
  });
45
- it('should handle an undefined path and return undefined', () => {
45
+ it('should handle an undefined path and return undefined', function () {
46
46
  doTest(undefined, CURRENT_PATH, undefined);
47
47
  });
48
48
  });
@@ -7,36 +7,43 @@ exports.default = void 0;
7
7
  var _copReactComponents = require("@ukhomeoffice/cop-react-components");
8
8
  var _Condition = _interopRequireDefault(require("../Condition"));
9
9
  var _nestInRefdataOptions = _interopRequireDefault(require("./nestInRefdataOptions"));
10
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
11
- // Global Imports
12
-
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+ 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); }
12
+ 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; }
13
+ 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; }
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); } // Global Imports
13
17
  // Local Imports
14
-
15
- const interpolateOptions = (config, options) => options.map(opt => {
16
- if (opt.show_when) {
17
- const result = opt.show_when.type === 'or' ? _Condition.default.meetsOne(opt, config.formData) : _Condition.default.meetsAll(opt, config.formData);
18
- if (!result) {
19
- return null;
18
+ var interpolateOptions = function interpolateOptions(config, options) {
19
+ return options.map(function (opt) {
20
+ if (opt.show_when) {
21
+ var result = opt.show_when.type === 'or' ? _Condition.default.meetsOne(opt, config.formData) : _Condition.default.meetsAll(opt, config.formData);
22
+ if (!result) {
23
+ return null;
24
+ }
20
25
  }
21
- }
22
- if (typeof opt === 'string') {
23
- return opt;
24
- }
25
- if (config.alternativeHintField) {
26
- // eslint-disable-next-line no-param-reassign
27
- opt.hint = opt[config.alternativeHintField];
28
- }
29
- return {
30
- ...opt,
31
- value: _copReactComponents.Utils.interpolateString(opt.value, config.formData),
32
- label: _copReactComponents.Utils.interpolateString(opt.label, config.formData),
33
- hint: _copReactComponents.Utils.interpolateString(opt.hint, config.formData)
34
- };
35
- }).filter(n => n);
36
- const getOptions = (config, callback) => {
26
+ if (typeof opt === 'string') {
27
+ return opt;
28
+ }
29
+ if (config.alternativeHintField) {
30
+ // eslint-disable-next-line no-param-reassign
31
+ opt.hint = opt[config.alternativeHintField];
32
+ }
33
+ return _objectSpread(_objectSpread({}, opt), {}, {
34
+ value: _copReactComponents.Utils.interpolateString(opt.value, config.formData),
35
+ label: _copReactComponents.Utils.interpolateString(opt.label, config.formData),
36
+ hint: _copReactComponents.Utils.interpolateString(opt.hint, config.formData)
37
+ });
38
+ }).filter(function (n) {
39
+ return n;
40
+ });
41
+ };
42
+ var getOptions = function getOptions(config, callback) {
37
43
  if (config) {
38
- if (config.options && config?.data?.options && config?.data?.url) {
39
- const combinedOptions = (0, _nestInRefdataOptions.default)(config.options, config.data.options);
44
+ var _config$data, _config$data2;
45
+ if (config.options && config !== null && config !== void 0 && (_config$data = config.data) !== null && _config$data !== void 0 && _config$data.options && config !== null && config !== void 0 && (_config$data2 = config.data) !== null && _config$data2 !== void 0 && _config$data2.url) {
46
+ var combinedOptions = (0, _nestInRefdataOptions.default)(config.options, config.data.options);
40
47
  return callback(interpolateOptions(config, combinedOptions));
41
48
  }
42
49
  if (config.options) {