@ukhomeoffice/cop-react-form-renderer 6.7.0-alpha → 6.11.1

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