@ukhomeoffice/cop-react-form-renderer 5.14.0 → 5.14.4

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 (328) hide show
  1. package/dist/components/CheckYourAnswers/Answer.js +15 -15
  2. package/dist/components/CheckYourAnswers/Answer.test.js +94 -128
  3. package/dist/components/CheckYourAnswers/CheckYourAnswers.js +99 -129
  4. package/dist/components/CheckYourAnswers/CheckYourAnswers.test.js +291 -501
  5. package/dist/components/CheckYourAnswers/index.js +2 -3
  6. package/dist/components/CollectionPage/CollectionPage.js +64 -58
  7. package/dist/components/CollectionPage/CollectionPage.test.js +212 -238
  8. package/dist/components/CollectionPage/index.js +2 -3
  9. package/dist/components/FormComponent/Collection.js +77 -113
  10. package/dist/components/FormComponent/Collection.test.js +688 -787
  11. package/dist/components/FormComponent/Container.js +44 -43
  12. package/dist/components/FormComponent/Container.test.js +316 -346
  13. package/dist/components/FormComponent/FormComponent.js +58 -64
  14. package/dist/components/FormComponent/FormComponent.test.js +180 -219
  15. package/dist/components/FormComponent/helpers/addLabel.js +5 -9
  16. package/dist/components/FormComponent/helpers/getComponentDisabled.js +2 -3
  17. package/dist/components/FormComponent/helpers/getComponentDisabled.test.js +8 -8
  18. package/dist/components/FormComponent/helpers/getComponentError.js +4 -7
  19. package/dist/components/FormComponent/helpers/getComponentError.test.js +15 -15
  20. package/dist/components/FormComponent/helpers/getComponentFieldSet.js +2 -2
  21. package/dist/components/FormComponent/helpers/getComponentFieldSet.test.js +7 -7
  22. package/dist/components/FormComponent/helpers/index.js +5 -5
  23. package/dist/components/FormComponent/index.js +2 -3
  24. package/dist/components/FormPage/FormPage.js +65 -79
  25. package/dist/components/FormPage/FormPage.test.js +134 -170
  26. package/dist/components/FormPage/index.js +2 -3
  27. package/dist/components/FormRenderer/FormRenderer.js +151 -193
  28. package/dist/components/FormRenderer/FormRenderer.test.js +598 -920
  29. package/dist/components/FormRenderer/handlers/cyaAction.js +4 -5
  30. package/dist/components/FormRenderer/handlers/getPageId.js +2 -5
  31. package/dist/components/FormRenderer/handlers/getPageId.test.js +15 -15
  32. package/dist/components/FormRenderer/handlers/handlers.test.js +33 -33
  33. package/dist/components/FormRenderer/handlers/index.js +3 -4
  34. package/dist/components/FormRenderer/handlers/navigate.js +5 -6
  35. package/dist/components/FormRenderer/handlers/submissionError.js +2 -3
  36. package/dist/components/FormRenderer/helpers/canActionProceed.js +2 -3
  37. package/dist/components/FormRenderer/helpers/canActionProceed.test.js +10 -10
  38. package/dist/components/FormRenderer/helpers/canCYASubmit.js +2 -5
  39. package/dist/components/FormRenderer/helpers/canCYASubmit.test.js +17 -21
  40. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.js +19 -27
  41. package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.test.js +17 -17
  42. package/dist/components/FormRenderer/helpers/getCYA.js +6 -9
  43. package/dist/components/FormRenderer/helpers/getCYA.test.js +12 -12
  44. package/dist/components/FormRenderer/helpers/getFormState.js +7 -10
  45. package/dist/components/FormRenderer/helpers/getFormState.test.js +11 -11
  46. package/dist/components/FormRenderer/helpers/getNextPageId.js +19 -34
  47. package/dist/components/FormRenderer/helpers/getNextPageId.test.js +68 -68
  48. package/dist/components/FormRenderer/helpers/getPage.js +3 -6
  49. package/dist/components/FormRenderer/helpers/getPage.test.js +12 -12
  50. package/dist/components/FormRenderer/helpers/getRelevantPages.js +9 -13
  51. package/dist/components/FormRenderer/helpers/getRelevantPages.test.js +15 -15
  52. package/dist/components/FormRenderer/helpers/getSubmissionStatus.js +12 -13
  53. package/dist/components/FormRenderer/helpers/getSubmissionStatus.test.js +98 -92
  54. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.js +66 -66
  55. package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.test.js +72 -79
  56. package/dist/components/FormRenderer/helpers/index.js +3 -4
  57. package/dist/components/FormRenderer/index.js +2 -3
  58. package/dist/components/FormRenderer/onCYAAction.js +52 -62
  59. package/dist/components/FormRenderer/onCYAAction.test.js +146 -138
  60. package/dist/components/FormRenderer/onPageAction.js +48 -47
  61. package/dist/components/FormRenderer/onPageAction.test.js +219 -205
  62. package/dist/components/FormRenderer/onTaskAction.js +12 -17
  63. package/dist/components/FormRenderer/onTaskAction.test.js +94 -89
  64. package/dist/components/PageActions/ActionButton.js +15 -19
  65. package/dist/components/PageActions/ActionButton.test.js +58 -79
  66. package/dist/components/PageActions/PageActions.js +12 -13
  67. package/dist/components/PageActions/PageActions.test.js +88 -116
  68. package/dist/components/PageActions/index.js +2 -3
  69. package/dist/components/SummaryList/GroupAction.js +15 -23
  70. package/dist/components/SummaryList/GroupAction.test.js +41 -37
  71. package/dist/components/SummaryList/RowAction.js +14 -19
  72. package/dist/components/SummaryList/RowAction.test.js +41 -37
  73. package/dist/components/SummaryList/SummaryList.js +25 -30
  74. package/dist/components/SummaryList/SummaryList.test.js +160 -182
  75. package/dist/components/SummaryList/SummaryListHeadingRow.js +9 -8
  76. package/dist/components/SummaryList/SummaryListRow.js +9 -8
  77. package/dist/components/SummaryList/SummaryListTitleRow.js +8 -7
  78. package/dist/components/SummaryList/helpers/getGroupActionAttributes.js +5 -8
  79. package/dist/components/SummaryList/helpers/getGroupActionAttributes.test.js +24 -24
  80. package/dist/components/SummaryList/helpers/getRowActionAttributes.js +5 -8
  81. package/dist/components/SummaryList/helpers/getRowActionAttributes.test.js +24 -24
  82. package/dist/components/SummaryList/helpers/index.js +2 -2
  83. package/dist/components/SummaryList/index.js +2 -3
  84. package/dist/components/TaskList/Task.js +22 -33
  85. package/dist/components/TaskList/Task.test.js +84 -77
  86. package/dist/components/TaskList/TaskList.js +46 -75
  87. package/dist/components/TaskList/TaskList.test.js +118 -113
  88. package/dist/components/TaskList/TaskState.js +9 -9
  89. package/dist/components/TaskList/TaskState.test.js +56 -49
  90. package/dist/components/TaskList/index.js +2 -3
  91. package/dist/components/index.js +8 -8
  92. package/dist/context/HooksContext/HooksContext.js +59 -85
  93. package/dist/context/HooksContext/HooksContext.test.js +28 -36
  94. package/dist/context/HooksContext/index.js +4 -6
  95. package/dist/context/ValidationContext/ValidationContext.js +35 -76
  96. package/dist/context/ValidationContext/ValidationContext.test.js +50 -61
  97. package/dist/context/ValidationContext/index.js +4 -6
  98. package/dist/context/index.js +3 -3
  99. package/dist/hooks/index.js +10 -11
  100. package/dist/hooks/useAxios.js +17 -43
  101. package/dist/hooks/useGetRequest.js +65 -106
  102. package/dist/hooks/useHooks.js +2 -5
  103. package/dist/hooks/useRefData.js +30 -45
  104. package/dist/hooks/useValidation.js +2 -5
  105. package/dist/index.js +15 -17
  106. package/dist/models/CollectionLabels.js +2 -3
  107. package/dist/models/ComponentTypes.js +25 -26
  108. package/dist/models/EventTypes.js +5 -6
  109. package/dist/models/FormPages.js +5 -6
  110. package/dist/models/FormTypes.js +9 -10
  111. package/dist/models/HubFormats.js +4 -5
  112. package/dist/models/PageAction.js +45 -42
  113. package/dist/models/TaskStates.js +30 -31
  114. package/dist/models/index.js +11 -12
  115. package/dist/setupTests.js +20 -24
  116. package/dist/utils/CheckYourAnswers/getCYAAction.js +6 -7
  117. package/dist/utils/CheckYourAnswers/getCYAAction.test.js +53 -55
  118. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.js +18 -20
  119. package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.test.js +21 -23
  120. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.js +17 -21
  121. package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.test.js +18 -20
  122. package/dist/utils/CheckYourAnswers/getCYARow.js +8 -10
  123. package/dist/utils/CheckYourAnswers/getCYARow.test.js +72 -72
  124. package/dist/utils/CheckYourAnswers/getCYARowForGroup.js +20 -27
  125. package/dist/utils/CheckYourAnswers/getCYARowForGroup.test.js +16 -17
  126. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.js +41 -47
  127. package/dist/utils/CheckYourAnswers/getCYARowsForCollection.test.js +72 -75
  128. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.js +71 -78
  129. package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.test.js +133 -114
  130. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.js +27 -23
  131. package/dist/utils/CheckYourAnswers/getCYARowsForContainer.test.js +112 -106
  132. package/dist/utils/CheckYourAnswers/getCYARowsForPage.js +16 -23
  133. package/dist/utils/CheckYourAnswers/getCYARowsForPage.test.js +77 -83
  134. package/dist/utils/CheckYourAnswers/index.js +3 -4
  135. package/dist/utils/CheckYourAnswers/showComponentCYA.js +7 -9
  136. package/dist/utils/CheckYourAnswers/showComponentCYA.test.js +25 -25
  137. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.js +9 -16
  138. package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.test.js +19 -20
  139. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.js +4 -8
  140. package/dist/utils/CollectionPage/getCollectionPageActiveIndex.test.js +15 -15
  141. package/dist/utils/CollectionPage/index.js +3 -4
  142. package/dist/utils/CollectionPage/mergeCollectionPages.js +26 -29
  143. package/dist/utils/CollectionPage/mergeCollectionPages.test.js +15 -15
  144. package/dist/utils/Component/addShowWhen.js +5 -10
  145. package/dist/utils/Component/addShowWhen.test.js +38 -38
  146. package/dist/utils/Component/applyToComponentTree.js +20 -22
  147. package/dist/utils/Component/applyToComponentTree.test.js +28 -33
  148. package/dist/utils/Component/cleanAttributes.js +11 -16
  149. package/dist/utils/Component/cleanAttributes.test.js +17 -18
  150. package/dist/utils/Component/elevateNestedComponents.js +7 -9
  151. package/dist/utils/Component/elevateNestedComponents.test.js +19 -19
  152. package/dist/utils/Component/getComponent.js +91 -99
  153. package/dist/utils/Component/getComponentTests/getComponent.autocomplete.test.js +19 -18
  154. package/dist/utils/Component/getComponentTests/getComponent.calculation.test.js +51 -63
  155. package/dist/utils/Component/getComponentTests/getComponent.checkboxes.test.js +41 -49
  156. package/dist/utils/Component/getComponentTests/getComponent.date.test.js +33 -37
  157. package/dist/utils/Component/getComponentTests/getComponent.details.test.js +21 -19
  158. package/dist/utils/Component/getComponentTests/getComponent.email.test.js +19 -23
  159. package/dist/utils/Component/getComponentTests/getComponent.file.test.js +23 -27
  160. package/dist/utils/Component/getComponentTests/getComponent.heading.test.js +12 -11
  161. package/dist/utils/Component/getComponentTests/getComponent.html.test.js +18 -16
  162. package/dist/utils/Component/getComponentTests/getComponent.insetText.test.js +10 -9
  163. package/dist/utils/Component/getComponentTests/getComponent.list.test.js +18 -16
  164. package/dist/utils/Component/getComponentTests/getComponent.multifile.test.js +24 -27
  165. package/dist/utils/Component/getComponentTests/getComponent.nested.test.js +156 -175
  166. package/dist/utils/Component/getComponentTests/getComponent.paragraph.test.js +18 -16
  167. package/dist/utils/Component/getComponentTests/getComponent.phoneNumber.test.js +19 -23
  168. package/dist/utils/Component/getComponentTests/getComponent.radios.test.js +59 -73
  169. package/dist/utils/Component/getComponentTests/getComponent.select.test.js +19 -23
  170. package/dist/utils/Component/getComponentTests/getComponent.text.test.js +19 -23
  171. package/dist/utils/Component/getComponentTests/getComponent.textArea.test.js +35 -41
  172. package/dist/utils/Component/getComponentTests/getComponent.time.test.js +24 -32
  173. package/dist/utils/Component/getComponentTests/getComponent.unknown.test.js +3 -3
  174. package/dist/utils/Component/getComponentTests/getComponent.warningText.test.js +10 -9
  175. package/dist/utils/Component/getDefaultValue.js +7 -9
  176. package/dist/utils/Component/getDefaultValue.test.js +14 -14
  177. package/dist/utils/Component/index.js +3 -4
  178. package/dist/utils/Component/isEditable.js +3 -7
  179. package/dist/utils/Component/isEditable.test.js +14 -15
  180. package/dist/utils/Component/optionIsSelected.js +2 -3
  181. package/dist/utils/Component/optionIsSelected.test.js +10 -10
  182. package/dist/utils/Component/setupContainerComponentsPath.js +30 -33
  183. package/dist/utils/Component/setupContainerComponentsPath.test.js +16 -16
  184. package/dist/utils/Component/showComponent.js +4 -6
  185. package/dist/utils/Component/showComponent.test.js +29 -29
  186. package/dist/utils/Component/wrapInFormGroup.js +6 -6
  187. package/dist/utils/Condition/index.js +3 -4
  188. package/dist/utils/Condition/meetsAllConditions.js +9 -10
  189. package/dist/utils/Condition/meetsAllConditions.test.js +18 -18
  190. package/dist/utils/Condition/meetsCondition.js +19 -27
  191. package/dist/utils/Condition/meetsCondition.test.js +377 -377
  192. package/dist/utils/Condition/meetsOneCondition.js +7 -8
  193. package/dist/utils/Condition/meetsOneCondition.test.js +17 -17
  194. package/dist/utils/Condition/setupConditions.js +15 -21
  195. package/dist/utils/Condition/setupConditions.test.js +8 -8
  196. package/dist/utils/Container/getEditableComponents.js +5 -8
  197. package/dist/utils/Container/getEditableComponents.test.js +44 -46
  198. package/dist/utils/Container/index.js +3 -4
  199. package/dist/utils/Container/setupNesting.js +17 -24
  200. package/dist/utils/Container/setupNesting.test.js +28 -31
  201. package/dist/utils/Container/showContainer.js +5 -10
  202. package/dist/utils/Container/showContainer.test.js +31 -31
  203. package/dist/utils/Data/applyFormula.js +41 -52
  204. package/dist/utils/Data/applyFormula.test.js +26 -26
  205. package/dist/utils/Data/getAutocompleteSource.js +11 -14
  206. package/dist/utils/Data/getAutocompleteSource.test.js +59 -59
  207. package/dist/utils/Data/getDataPath.js +21 -32
  208. package/dist/utils/Data/getDataPath.test.js +20 -20
  209. package/dist/utils/Data/getOptions.js +22 -28
  210. package/dist/utils/Data/getOptions.test.js +21 -21
  211. package/dist/utils/Data/getSourceData.js +7 -21
  212. package/dist/utils/Data/getSourceData.test.js +85 -81
  213. package/dist/utils/Data/index.js +3 -4
  214. package/dist/utils/Data/refDataToOptions.js +12 -17
  215. package/dist/utils/Data/refDataToOptions.test.js +20 -20
  216. package/dist/utils/Data/setDataItem.js +8 -10
  217. package/dist/utils/Data/setDataItem.test.js +38 -38
  218. package/dist/utils/Data/setupFormData.js +32 -48
  219. package/dist/utils/Data/setupFormData.test.js +99 -98
  220. package/dist/utils/Data/setupRefDataUrlForComponent.js +22 -30
  221. package/dist/utils/Data/setupRefDataUrlForComponent.test.js +28 -28
  222. package/dist/utils/FormPage/applyConditionalProperties.js +7 -12
  223. package/dist/utils/FormPage/applyConditionalProperties.test.js +16 -19
  224. package/dist/utils/FormPage/getFormPage.js +17 -19
  225. package/dist/utils/FormPage/getFormPage.test.js +49 -48
  226. package/dist/utils/FormPage/getFormPages.js +9 -15
  227. package/dist/utils/FormPage/getFormPages.test.js +22 -25
  228. package/dist/utils/FormPage/getPageActions.js +11 -19
  229. package/dist/utils/FormPage/getPageActions.test.js +33 -33
  230. package/dist/utils/FormPage/getParagraphFromText.js +6 -9
  231. package/dist/utils/FormPage/getParagraphFromText.test.js +7 -7
  232. package/dist/utils/FormPage/index.js +3 -4
  233. package/dist/utils/FormPage/showFormPage.js +5 -10
  234. package/dist/utils/FormPage/showFormPage.test.js +33 -33
  235. package/dist/utils/FormPage/showFormPageCYA.js +4 -5
  236. package/dist/utils/FormPage/showFormPageCYA.test.js +9 -9
  237. package/dist/utils/FormPage/useComponent.js +21 -29
  238. package/dist/utils/FormPage/useComponent.test.js +71 -73
  239. package/dist/utils/Format/formatData.js +2 -3
  240. package/dist/utils/Format/formatData.test.js +19 -19
  241. package/dist/utils/Format/formatDataForComponent.js +6 -9
  242. package/dist/utils/Format/formatDataForComponent.test.js +50 -78
  243. package/dist/utils/Format/formatDataForForm.js +7 -10
  244. package/dist/utils/Format/formatDataForForm.test.js +14 -17
  245. package/dist/utils/Format/formatDataForPage.js +4 -7
  246. package/dist/utils/Format/formatDataForPage.test.js +20 -25
  247. package/dist/utils/Format/index.js +3 -4
  248. package/dist/utils/Hub/getFormHub.js +3 -4
  249. package/dist/utils/Hub/getFormHub.test.js +29 -32
  250. package/dist/utils/Hub/index.js +3 -4
  251. package/dist/utils/Meta/constants.js +2 -4
  252. package/dist/utils/Meta/documents/getDocuments.js +2 -6
  253. package/dist/utils/Meta/documents/getDocuments.test.js +25 -17
  254. package/dist/utils/Meta/documents/index.js +3 -4
  255. package/dist/utils/Meta/documents/setDocumentsForField.js +16 -19
  256. package/dist/utils/Meta/documents/setDocumentsForField.test.js +69 -35
  257. package/dist/utils/Meta/index.js +3 -4
  258. package/dist/utils/Operate/checkValueIsTruthy.js +5 -6
  259. package/dist/utils/Operate/checkValueIsTruthy.test.js +17 -17
  260. package/dist/utils/Operate/getFirstOf.js +9 -10
  261. package/dist/utils/Operate/getFirstOf.test.js +33 -33
  262. package/dist/utils/Operate/getIndexOfMatchingValueIn.js +13 -14
  263. package/dist/utils/Operate/getIndexOfMatchingValueIn.test.js +47 -53
  264. package/dist/utils/Operate/index.js +3 -4
  265. package/dist/utils/Operate/persistValueInFormData.js +7 -8
  266. package/dist/utils/Operate/persistValueInFormData.test.js +23 -21
  267. package/dist/utils/Operate/runPageOperations.js +10 -11
  268. package/dist/utils/Operate/runPageOperations.test.js +36 -37
  269. package/dist/utils/Operate/setValueInFormData.js +6 -7
  270. package/dist/utils/Operate/setValueInFormData.test.js +17 -17
  271. package/dist/utils/Operate/shouldRun.js +9 -10
  272. package/dist/utils/Operate/shouldRun.test.js +22 -28
  273. package/dist/utils/Validate/additional/conditionallyRequired.js +5 -7
  274. package/dist/utils/Validate/additional/conditionallyRequired.test.js +19 -19
  275. package/dist/utils/Validate/additional/index.js +8 -9
  276. package/dist/utils/Validate/additional/index.test.js +13 -13
  277. package/dist/utils/Validate/additional/mustBeAfter.js +4 -5
  278. package/dist/utils/Validate/additional/mustBeAfter.test.js +41 -41
  279. package/dist/utils/Validate/additional/mustBeBefore.js +4 -5
  280. package/dist/utils/Validate/additional/mustBeBefore.test.js +29 -29
  281. package/dist/utils/Validate/additional/mustBeEarlierDateTime.js +8 -14
  282. package/dist/utils/Validate/additional/mustBeEarlierDateTime.test.js +34 -38
  283. package/dist/utils/Validate/additional/mustBeGreaterThan.js +3 -4
  284. package/dist/utils/Validate/additional/mustBeGreaterThan.test.js +19 -19
  285. package/dist/utils/Validate/additional/mustBeInTheFuture.js +5 -6
  286. package/dist/utils/Validate/additional/mustBeInTheFuture.test.js +13 -13
  287. package/dist/utils/Validate/additional/mustBeInThePast.js +6 -7
  288. package/dist/utils/Validate/additional/mustBeInThePast.test.js +13 -13
  289. package/dist/utils/Validate/additional/mustBeLessThan.js +3 -4
  290. package/dist/utils/Validate/additional/mustBeLessThan.test.js +18 -18
  291. package/dist/utils/Validate/additional/mustBeLongerThan.js +2 -3
  292. package/dist/utils/Validate/additional/mustBeLongerThan.test.js +17 -17
  293. package/dist/utils/Validate/additional/mustBeNumbersOnly.js +3 -4
  294. package/dist/utils/Validate/additional/mustBeNumbersOnly.test.js +21 -21
  295. package/dist/utils/Validate/additional/mustBeShorterThan.js +2 -3
  296. package/dist/utils/Validate/additional/mustBeShorterThan.test.js +17 -17
  297. package/dist/utils/Validate/additional/mustEnterAtLeastOne.js +4 -7
  298. package/dist/utils/Validate/additional/mustEnterAtLeastOne.test.js +15 -17
  299. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.js +2 -3
  300. package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.test.js +13 -13
  301. package/dist/utils/Validate/additional/mustSelectOnlyOne.js +4 -7
  302. package/dist/utils/Validate/additional/mustSelectOnlyOne.test.js +29 -27
  303. package/dist/utils/Validate/additional/utils.js +9 -25
  304. package/dist/utils/Validate/index.js +3 -4
  305. package/dist/utils/Validate/validateCollection.js +22 -29
  306. package/dist/utils/Validate/validateCollection.test.js +85 -77
  307. package/dist/utils/Validate/validateComponent.js +19 -19
  308. package/dist/utils/Validate/validateComponent.test.js +169 -147
  309. package/dist/utils/Validate/validateContainer.js +16 -22
  310. package/dist/utils/Validate/validateContainer.test.js +52 -48
  311. package/dist/utils/Validate/validateDate.js +14 -21
  312. package/dist/utils/Validate/validateDate.test.js +28 -29
  313. package/dist/utils/Validate/validateEmail.js +8 -11
  314. package/dist/utils/Validate/validateEmail.test.js +26 -26
  315. package/dist/utils/Validate/validateMultifile.js +6 -10
  316. package/dist/utils/Validate/validateMultifile.test.js +17 -18
  317. package/dist/utils/Validate/validatePage.js +20 -22
  318. package/dist/utils/Validate/validatePage.test.js +146 -143
  319. package/dist/utils/Validate/validateRegex.js +6 -10
  320. package/dist/utils/Validate/validateRegex.test.js +17 -17
  321. package/dist/utils/Validate/validateRequired.js +6 -9
  322. package/dist/utils/Validate/validateRequired.test.js +19 -19
  323. package/dist/utils/Validate/validateTextArea.js +6 -9
  324. package/dist/utils/Validate/validateTextArea.test.js +21 -21
  325. package/dist/utils/Validate/validateTime.js +8 -16
  326. package/dist/utils/Validate/validateTime.test.js +15 -15
  327. package/dist/utils/index.js +10 -12
  328. package/package.json +9 -6
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.default = void 0;
7
7
  var _copReactComponents = require("@ukhomeoffice/cop-react-components");
8
8
  var _getSourceData = _interopRequireDefault(require("../Data/getSourceData"));
9
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
10
  // Global imports.
11
11
 
12
12
  // Local imports.
@@ -18,17 +18,17 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
18
18
  * @param {object} data The page's formData.
19
19
  * @returns
20
20
  */
21
- var shouldRun = function shouldRun(config, data) {
22
- if (config !== null && config !== void 0 && config.condition) {
23
- var configuration = config;
24
- var fieldPath = _copReactComponents.Utils.interpolateString(configuration.field, data);
25
- var fieldValue = (0, _getSourceData.default)(data, fieldPath);
21
+ const shouldRun = (config, data) => {
22
+ if (config?.condition) {
23
+ const configuration = config;
24
+ const fieldPath = _copReactComponents.Utils.interpolateString(configuration.field, data);
25
+ const fieldValue = (0, _getSourceData.default)(data, fieldPath);
26
26
  switch (configuration.condition) {
27
27
  // Only run the operation if a given field's value has changed.
28
28
  case 'changes':
29
29
  {
30
- var lastPath = "".concat(fieldPath, "LastValue");
31
- var lastValue = configuration[lastPath] || null;
30
+ const lastPath = `${fieldPath}LastValue`;
31
+ const lastValue = configuration[lastPath] || null;
32
32
  if (lastValue === null) {
33
33
  // If there isn't a last value then we assume
34
34
  // that this is the first render.
@@ -53,5 +53,4 @@ var shouldRun = function shouldRun(config, data) {
53
53
  }
54
54
  return true;
55
55
  };
56
- var _default = shouldRun;
57
- exports.default = _default;
56
+ var _default = exports.default = shouldRun;
@@ -1,66 +1,60 @@
1
1
  "use strict";
2
2
 
3
3
  var _shouldRun = _interopRequireDefault(require("./shouldRun"));
4
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5
- function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
6
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
7
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
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); }
11
- describe('Utils.Operate.shouldRun', function () {
12
- var DATA = {
4
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
5
+ describe('Utils.Operate.shouldRun', () => {
6
+ const DATA = {
13
7
  alpha: 'abc',
14
8
  bravo: ''
15
9
  };
16
- it('Should return true if the run_when config is invalid', function () {
10
+ it('Should return true if the run_when config is invalid', () => {
17
11
  expect((0, _shouldRun.default)(null, DATA)).toEqual(true);
18
12
  });
19
- it('Should return true when the condition is \'changes\' and target value has changed', function () {
20
- var CONFIG = {
13
+ it('Should return true when the condition is \'changes\' and target value has changed', () => {
14
+ const CONFIG = {
21
15
  condition: 'changes',
22
16
  field: 'alpha'
23
17
  };
24
- var result = (0, _shouldRun.default)(CONFIG, DATA);
18
+ let result = (0, _shouldRun.default)(CONFIG, DATA);
25
19
  expect(result).toEqual(false); // Expect false as this is the first render.
26
20
  result = (0, _shouldRun.default)(CONFIG, DATA);
27
21
  expect(result).toEqual(false); // Expect false as the field hasn't changed.
28
- result = (0, _shouldRun.default)(CONFIG, _objectSpread(_objectSpread({}, DATA), {}, {
22
+ result = (0, _shouldRun.default)(CONFIG, {
23
+ ...DATA,
29
24
  alpha: 'bcd'
30
- }));
25
+ });
31
26
  expect(result).toEqual(true); // Expect true as the field's value has been updated.
32
27
  });
33
-
34
- it('Should return true when the condition is \'isTruthy\' and target value is truthy', function () {
35
- var CONFIG = {
28
+ it('Should return true when the condition is \'isTruthy\' and target value is truthy', () => {
29
+ const CONFIG = {
36
30
  condition: 'isTruthy',
37
31
  field: 'alpha'
38
32
  };
39
- var result = (0, _shouldRun.default)(CONFIG, DATA);
33
+ const result = (0, _shouldRun.default)(CONFIG, DATA);
40
34
  expect(result).toEqual(true);
41
35
  });
42
- it('Should return false when the condition is \'isTruthy\' and target value is falsy', function () {
43
- var CONFIG = {
36
+ it('Should return false when the condition is \'isTruthy\' and target value is falsy', () => {
37
+ const CONFIG = {
44
38
  condition: 'isTruthy',
45
39
  field: 'bravo'
46
40
  };
47
- var result = (0, _shouldRun.default)(CONFIG, DATA);
41
+ const result = (0, _shouldRun.default)(CONFIG, DATA);
48
42
  expect(result).toEqual(false);
49
43
  });
50
- it('Should return true when the condition is \'isFalsy\' and target value is falsy', function () {
51
- var CONFIG = {
44
+ it('Should return true when the condition is \'isFalsy\' and target value is falsy', () => {
45
+ const CONFIG = {
52
46
  condition: 'isFalsy',
53
47
  field: 'bravo'
54
48
  };
55
- var result = (0, _shouldRun.default)(CONFIG, DATA);
49
+ const result = (0, _shouldRun.default)(CONFIG, DATA);
56
50
  expect(result).toEqual(true);
57
51
  });
58
- it('Should return false when the condition is \'isFalsy\' and target value is truthy', function () {
59
- var CONFIG = {
52
+ it('Should return false when the condition is \'isFalsy\' and target value is truthy', () => {
53
+ const CONFIG = {
60
54
  condition: 'isFalsy',
61
55
  field: 'alpha'
62
56
  };
63
- var result = (0, _shouldRun.default)(CONFIG, DATA);
57
+ const result = (0, _shouldRun.default)(CONFIG, DATA);
64
58
  expect(result).toEqual(false);
65
59
  });
66
60
  });
@@ -13,12 +13,10 @@ exports.default = void 0;
13
13
  * @returns true if the user has entered data into the 'base' field or entered a value into the 'check' field to turn off the validation
14
14
  * otherwise returns false
15
15
  */
16
- var conditionallyRequired = function conditionallyRequired(data, config, component) {
17
- var _data$component$id, _data$component$id2;
18
- var conditional = (_data$component$id = data[component.id]) === null || _data$component$id === void 0 ? void 0 : _data$component$id[config.base];
19
- var checkFieldvalue = (_data$component$id2 = data[component.id]) === null || _data$component$id2 === void 0 ? void 0 : _data$component$id2[config.check];
20
- var checkHasValue = checkFieldvalue && (checkFieldvalue === null || checkFieldvalue === void 0 ? void 0 : checkFieldvalue.length) > 0;
16
+ const conditionallyRequired = (data, config, component) => {
17
+ const conditional = data[component.id]?.[config.base];
18
+ const checkFieldvalue = data[component.id]?.[config.check];
19
+ const checkHasValue = checkFieldvalue && checkFieldvalue?.length > 0;
21
20
  return !!(conditional || checkHasValue);
22
21
  };
23
- var _default = conditionallyRequired;
24
- exports.default = _default;
22
+ var _default = exports.default = conditionallyRequired;
@@ -1,16 +1,16 @@
1
1
  "use strict";
2
2
 
3
3
  var _conditionallyRequired = _interopRequireDefault(require("./conditionallyRequired"));
4
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5
- describe('utils', function () {
6
- describe('Validate', function () {
7
- describe('additional', function () {
8
- describe('conditionallyRequired', function () {
9
- var CONFIG = {
4
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
5
+ describe('utils', () => {
6
+ describe('Validate', () => {
7
+ describe('additional', () => {
8
+ describe('conditionallyRequired', () => {
9
+ const CONFIG = {
10
10
  base: 'componentOne',
11
11
  check: 'componentTwo'
12
12
  };
13
- var COMPONENT = {
13
+ const COMPONENT = {
14
14
  id: 'containerComponent',
15
15
  fieldId: 'containerComponent',
16
16
  type: 'container',
@@ -24,16 +24,16 @@ describe('utils', function () {
24
24
  type: 'checkboxes'
25
25
  }]
26
26
  };
27
- test('should pass if only the base field has a value', function () {
28
- var DATA = {
27
+ test('should pass if only the base field has a value', () => {
28
+ const DATA = {
29
29
  containerComponent: {
30
30
  componentOne: 'value'
31
31
  }
32
32
  };
33
33
  expect((0, _conditionallyRequired.default)(DATA, CONFIG, COMPONENT)).toEqual(true);
34
34
  });
35
- test('should pass if the base and check fields have values', function () {
36
- var DATA = {
35
+ test('should pass if the base and check fields have values', () => {
36
+ const DATA = {
37
37
  containerComponent: {
38
38
  componentOne: 'value',
39
39
  componentTwo: 'value'
@@ -41,30 +41,30 @@ describe('utils', function () {
41
41
  };
42
42
  expect((0, _conditionallyRequired.default)(DATA, CONFIG, COMPONENT)).toEqual(true);
43
43
  });
44
- test('should pass if only the check field has a value', function () {
45
- var DATA = {
44
+ test('should pass if only the check field has a value', () => {
45
+ const DATA = {
46
46
  containerComponent: {
47
47
  componentTwo: 'value'
48
48
  }
49
49
  };
50
50
  expect((0, _conditionallyRequired.default)(DATA, CONFIG, COMPONENT)).toEqual(true);
51
51
  });
52
- test('should pass if only the check field has a value and that value is an array', function () {
53
- var DATA = {
52
+ test('should pass if only the check field has a value and that value is an array', () => {
53
+ const DATA = {
54
54
  containerComponent: {
55
55
  componentTwo: ['value']
56
56
  }
57
57
  };
58
58
  expect((0, _conditionallyRequired.default)(DATA, CONFIG, COMPONENT)).toEqual(true);
59
59
  });
60
- test('should fail if neither field has a value', function () {
61
- var DATA = {
60
+ test('should fail if neither field has a value', () => {
61
+ const DATA = {
62
62
  containerComponent: {}
63
63
  };
64
64
  expect((0, _conditionallyRequired.default)(DATA, CONFIG, COMPONENT)).toEqual(false);
65
65
  });
66
- test('should fail if there is no data', function () {
67
- var DATA = {};
66
+ test('should fail if there is no data', () => {
67
+ const DATA = {};
68
68
  expect((0, _conditionallyRequired.default)(DATA, CONFIG, COMPONENT)).toEqual(false);
69
69
  });
70
70
  });
@@ -18,10 +18,10 @@ var _mustBeNumbersOnly = _interopRequireDefault(require("./mustBeNumbersOnly"));
18
18
  var _mustEnterAtLeastOne = _interopRequireDefault(require("./mustEnterAtLeastOne"));
19
19
  var _mustHaveLessThanDecimalPlaces = _interopRequireDefault(require("./mustHaveLessThanDecimalPlaces"));
20
20
  var _mustSelectOnlyOne = _interopRequireDefault(require("./mustSelectOnlyOne"));
21
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
21
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
22
22
  // Local imports
23
23
 
24
- var functions = {
24
+ const functions = {
25
25
  conditionallyRequired: _conditionallyRequired.default,
26
26
  mustBeAfter: _mustBeAfter.default,
27
27
  mustBeBefore: _mustBeBefore.default,
@@ -37,20 +37,20 @@ var functions = {
37
37
  mustHaveLessThanDecimalPlaces: _mustHaveLessThanDecimalPlaces.default,
38
38
  mustSelectOnlyOne: _mustSelectOnlyOne.default
39
39
  };
40
- var additionalValidation = function additionalValidation(value, config, component) {
41
- var fn = functions[config.function];
40
+ const additionalValidation = (value, config, component) => {
41
+ const fn = functions[config.function];
42
42
  if (typeof fn === 'function') {
43
43
  return fn(value, config, component) ? undefined : config.message;
44
44
  }
45
45
  return undefined;
46
46
  };
47
- var runAdditionalComponentValidation = function runAdditionalComponentValidation(component, value) {
47
+ const runAdditionalComponentValidation = (component, value) => {
48
48
  // We only care when we have a value - if we don't have one but want one, set `required: true`.
49
49
  // eslint-disable-next-line no-extra-boolean-cast
50
50
  if (!!value) {
51
51
  if (Array.isArray(component.additionalValidation)) {
52
- var error;
53
- component.additionalValidation.forEach(function (config) {
52
+ let error;
53
+ component.additionalValidation.forEach(config => {
54
54
  // If we've already encountered an error, don't run any more validators.
55
55
  if (!error) {
56
56
  error = additionalValidation(value, config, component);
@@ -61,5 +61,4 @@ var runAdditionalComponentValidation = function runAdditionalComponentValidation
61
61
  }
62
62
  return undefined;
63
63
  };
64
- var _default = runAdditionalComponentValidation;
65
- exports.default = _default;
64
+ var _default = exports.default = runAdditionalComponentValidation;
@@ -4,13 +4,13 @@ var _dayjs = _interopRequireDefault(require("dayjs"));
4
4
  var _customParseFormat = _interopRequireDefault(require("dayjs/plugin/customParseFormat"));
5
5
  var _utils = require("./utils");
6
6
  var _index = _interopRequireDefault(require("./index"));
7
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
7
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
8
8
  _dayjs.default.extend(_customParseFormat.default);
9
- describe('utils', function () {
10
- describe('Validate', function () {
11
- describe('additional', function () {
12
- it('should apply optional validators when specified', function () {
13
- var COMPONENT = {
9
+ describe('utils', () => {
10
+ describe('Validate', () => {
11
+ describe('additional', () => {
12
+ it('should apply optional validators when specified', () => {
13
+ const COMPONENT = {
14
14
  additionalValidation: [{
15
15
  function: 'mustBeAfter',
16
16
  value: 3,
@@ -18,11 +18,11 @@ describe('utils', function () {
18
18
  message: 'Date must be more than 3 days in the future'
19
19
  }]
20
20
  };
21
- var VALUE = (0, _dayjs.default)().add(1, 'day').format(_utils.DATE_FORMAT);
21
+ const VALUE = (0, _dayjs.default)().add(1, 'day').format(_utils.DATE_FORMAT);
22
22
  expect((0, _index.default)(COMPONENT, VALUE)).toEqual('Date must be more than 3 days in the future');
23
23
  });
24
- it('should apply multiple optional validators when specified', function () {
25
- var COMPONENT = {
24
+ it('should apply multiple optional validators when specified', () => {
25
+ const COMPONENT = {
26
26
  additionalValidation: [{
27
27
  function: 'mustBeAfter',
28
28
  value: 100,
@@ -35,11 +35,11 @@ describe('utils', function () {
35
35
  message: 'Date must be less than 200 days in the future'
36
36
  }]
37
37
  };
38
- var VALUE = (0, _dayjs.default)().add(250, 'day').format(_utils.DATE_FORMAT);
38
+ const VALUE = (0, _dayjs.default)().add(250, 'day').format(_utils.DATE_FORMAT);
39
39
  expect((0, _index.default)(COMPONENT, VALUE)).toEqual('Date must be less than 200 days in the future');
40
40
  });
41
- it('should apply multiple optional validators when specified and return undefined if all are passed', function () {
42
- var COMPONENT = {
41
+ it('should apply multiple optional validators when specified and return undefined if all are passed', () => {
42
+ const COMPONENT = {
43
43
  additionalValidation: [{
44
44
  function: 'mustBeAfter',
45
45
  value: 100,
@@ -55,7 +55,7 @@ describe('utils', function () {
55
55
  message: 'Date must be in the future'
56
56
  }]
57
57
  };
58
- var VALUE = (0, _dayjs.default)().add(150, 'day').format(_utils.DATE_FORMAT);
58
+ const VALUE = (0, _dayjs.default)().add(150, 'day').format(_utils.DATE_FORMAT);
59
59
  expect((0, _index.default)(COMPONENT, VALUE)).toEqual(undefined);
60
60
  });
61
61
  });
@@ -7,7 +7,7 @@ exports.default = void 0;
7
7
  var _dayjs = _interopRequireDefault(require("dayjs"));
8
8
  var _customParseFormat = _interopRequireDefault(require("dayjs/plugin/customParseFormat"));
9
9
  var _utils = require("./utils");
10
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
11
11
  // Global imports
12
12
 
13
13
  // Local imports
@@ -26,9 +26,8 @@ _dayjs.default.extend(_customParseFormat.default);
26
26
  * @param {number} config.value - number of the unit to be after
27
27
  * @returns false if date is not after the given date/offset or true if it is.
28
28
  */
29
- var mustBeAfter = function mustBeAfter(date, config) {
30
- var dateToCompare = config.date ? (0, _dayjs.default)((0, _utils.formatString)(config.date), _utils.DATE_FORMAT) : (0, _dayjs.default)().add(config.value, config.unit);
29
+ const mustBeAfter = (date, config) => {
30
+ const dateToCompare = config.date ? (0, _dayjs.default)((0, _utils.formatString)(config.date), _utils.DATE_FORMAT) : (0, _dayjs.default)().add(config.value, config.unit);
31
31
  return (0, _dayjs.default)((0, _utils.formatString)(date), _utils.DATE_FORMAT).isAfter(dateToCompare);
32
32
  };
33
- var _default = mustBeAfter;
34
- exports.default = _default;
33
+ var _default = exports.default = mustBeAfter;
@@ -3,101 +3,101 @@
3
3
  var _dayjs = _interopRequireDefault(require("dayjs"));
4
4
  var _mustBeAfter = _interopRequireDefault(require("./mustBeAfter"));
5
5
  var _utils = require("./utils");
6
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
7
- describe('utils', function () {
8
- describe('Validate', function () {
9
- describe('additional', function () {
10
- describe('mustBeAfter', function () {
11
- test('should return true given a date after the given number of months in the future', function () {
12
- var date = (0, _dayjs.default)().add(3, 'month').format(_utils.DATE_FORMAT);
13
- var result = (0, _mustBeAfter.default)(date, {
6
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
7
+ describe('utils', () => {
8
+ describe('Validate', () => {
9
+ describe('additional', () => {
10
+ describe('mustBeAfter', () => {
11
+ test('should return true given a date after the given number of months in the future', () => {
12
+ const date = (0, _dayjs.default)().add(3, 'month').format(_utils.DATE_FORMAT);
13
+ const result = (0, _mustBeAfter.default)(date, {
14
14
  value: 1,
15
15
  unit: 'month'
16
16
  });
17
17
  expect(result).toEqual(true);
18
18
  });
19
- test('should return false given a date before the given number of months in the future', function () {
20
- var date = (0, _dayjs.default)().add(3, 'month').format(_utils.DATE_FORMAT);
21
- var result = (0, _mustBeAfter.default)(date, {
19
+ test('should return false given a date before the given number of months in the future', () => {
20
+ const date = (0, _dayjs.default)().add(3, 'month').format(_utils.DATE_FORMAT);
21
+ const result = (0, _mustBeAfter.default)(date, {
22
22
  value: 5,
23
23
  unit: 'month'
24
24
  });
25
25
  expect(result).toEqual(false);
26
26
  });
27
- test('should return true given a date after the given number of months in the past', function () {
28
- var date = (0, _dayjs.default)().add(-3, 'month').format(_utils.DATE_FORMAT);
29
- var result = (0, _mustBeAfter.default)(date, {
27
+ test('should return true given a date after the given number of months in the past', () => {
28
+ const date = (0, _dayjs.default)().add(-3, 'month').format(_utils.DATE_FORMAT);
29
+ const result = (0, _mustBeAfter.default)(date, {
30
30
  value: -5,
31
31
  unit: 'month'
32
32
  });
33
33
  expect(result).toEqual(true);
34
34
  });
35
- test('should return false given a date before the given number of months in the past', function () {
36
- var date = (0, _dayjs.default)().add(-10, 'month').format(_utils.DATE_FORMAT);
37
- var result = (0, _mustBeAfter.default)(date, {
35
+ test('should return false given a date before the given number of months in the past', () => {
36
+ const date = (0, _dayjs.default)().add(-10, 'month').format(_utils.DATE_FORMAT);
37
+ const result = (0, _mustBeAfter.default)(date, {
38
38
  value: -5,
39
39
  unit: 'month'
40
40
  });
41
41
  expect(result).toEqual(false);
42
42
  });
43
- test('should return true given a date after the given number of years in the future', function () {
44
- var date = (0, _dayjs.default)().add(3, 'year').format(_utils.DATE_FORMAT);
45
- var result = (0, _mustBeAfter.default)(date, {
43
+ test('should return true given a date after the given number of years in the future', () => {
44
+ const date = (0, _dayjs.default)().add(3, 'year').format(_utils.DATE_FORMAT);
45
+ const result = (0, _mustBeAfter.default)(date, {
46
46
  value: 1,
47
47
  unit: 'year'
48
48
  });
49
49
  expect(result).toEqual(true);
50
50
  });
51
- test('should return false given a date before the given number of years in the future', function () {
52
- var date = (0, _dayjs.default)().add(15, 'year').format(_utils.DATE_FORMAT);
53
- var result = (0, _mustBeAfter.default)(date, {
51
+ test('should return false given a date before the given number of years in the future', () => {
52
+ const date = (0, _dayjs.default)().add(15, 'year').format(_utils.DATE_FORMAT);
53
+ const result = (0, _mustBeAfter.default)(date, {
54
54
  value: 20,
55
55
  unit: 'year'
56
56
  });
57
57
  expect(result).toEqual(false);
58
58
  });
59
- test('should return true given a date after the given number of years in the past', function () {
60
- var date = (0, _dayjs.default)().add(-15, 'year').format(_utils.DATE_FORMAT);
61
- var result = (0, _mustBeAfter.default)(date, {
59
+ test('should return true given a date after the given number of years in the past', () => {
60
+ const date = (0, _dayjs.default)().add(-15, 'year').format(_utils.DATE_FORMAT);
61
+ const result = (0, _mustBeAfter.default)(date, {
62
62
  value: -20,
63
63
  unit: 'year'
64
64
  });
65
65
  expect(result).toEqual(true);
66
66
  });
67
- test('should return false given a date before the given number of years in the past', function () {
68
- var date = (0, _dayjs.default)().add(-25, 'year').format(_utils.DATE_FORMAT);
69
- var result = (0, _mustBeAfter.default)(date, {
67
+ test('should return false given a date before the given number of years in the past', () => {
68
+ const date = (0, _dayjs.default)().add(-25, 'year').format(_utils.DATE_FORMAT);
69
+ const result = (0, _mustBeAfter.default)(date, {
70
70
  value: -20,
71
71
  unit: 'year'
72
72
  });
73
73
  expect(result).toEqual(false);
74
74
  });
75
- test('should return true given a date after the given number of days in the future', function () {
76
- var date = (0, _dayjs.default)().add(3, 'day').format(_utils.DATE_FORMAT);
77
- var result = (0, _mustBeAfter.default)(date, {
75
+ test('should return true given a date after the given number of days in the future', () => {
76
+ const date = (0, _dayjs.default)().add(3, 'day').format(_utils.DATE_FORMAT);
77
+ const result = (0, _mustBeAfter.default)(date, {
78
78
  value: 1,
79
79
  unit: 'day'
80
80
  });
81
81
  expect(result).toEqual(true);
82
82
  });
83
- test('should return false given a date before the given number of days in the future', function () {
84
- var date = (0, _dayjs.default)().add(250, 'day').format(_utils.DATE_FORMAT);
85
- var result = (0, _mustBeAfter.default)(date, {
83
+ test('should return false given a date before the given number of days in the future', () => {
84
+ const date = (0, _dayjs.default)().add(250, 'day').format(_utils.DATE_FORMAT);
85
+ const result = (0, _mustBeAfter.default)(date, {
86
86
  value: 275,
87
87
  unit: 'day'
88
88
  });
89
89
  expect(result).toEqual(false);
90
90
  });
91
- test('should return false given a date before the specified fixed date', function () {
92
- var date = (0, _dayjs.default)().format(_utils.DATE_FORMAT);
93
- var result = (0, _mustBeAfter.default)(date, {
91
+ test('should return false given a date before the specified fixed date', () => {
92
+ const date = (0, _dayjs.default)().format(_utils.DATE_FORMAT);
93
+ const result = (0, _mustBeAfter.default)(date, {
94
94
  date: '01-01-5000'
95
95
  });
96
96
  expect(result).toEqual(false);
97
97
  });
98
- test('should return true given a date after the specified fixed date', function () {
99
- var date = (0, _dayjs.default)().format(_utils.DATE_FORMAT);
100
- var result = (0, _mustBeAfter.default)(date, {
98
+ test('should return true given a date after the specified fixed date', () => {
99
+ const date = (0, _dayjs.default)().format(_utils.DATE_FORMAT);
100
+ const result = (0, _mustBeAfter.default)(date, {
101
101
  date: '01-01-2000'
102
102
  });
103
103
  expect(result).toEqual(true);
@@ -7,7 +7,7 @@ exports.default = void 0;
7
7
  var _dayjs = _interopRequireDefault(require("dayjs"));
8
8
  var _customParseFormat = _interopRequireDefault(require("dayjs/plugin/customParseFormat"));
9
9
  var _utils = require("./utils");
10
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
11
11
  // Global imports
12
12
 
13
13
  // Local imports
@@ -26,9 +26,8 @@ _dayjs.default.extend(_customParseFormat.default);
26
26
  * @param {number} config.value - number of the unit to be before
27
27
  * @returns false if date is not before the given date/offset or true if it is.
28
28
  */
29
- var mustBeBefore = function mustBeBefore(date, config) {
30
- var dateToCompare = config.date ? (0, _dayjs.default)((0, _utils.formatString)(config.date), _utils.DATE_FORMAT) : (0, _dayjs.default)().add(config.value, config.unit);
29
+ const mustBeBefore = (date, config) => {
30
+ const dateToCompare = config.date ? (0, _dayjs.default)((0, _utils.formatString)(config.date), _utils.DATE_FORMAT) : (0, _dayjs.default)().add(config.value, config.unit);
31
31
  return (0, _dayjs.default)((0, _utils.formatString)(date), _utils.DATE_FORMAT).isBefore(dateToCompare);
32
32
  };
33
- var _default = mustBeBefore;
34
- exports.default = _default;
33
+ var _default = exports.default = mustBeBefore;
@@ -3,69 +3,69 @@
3
3
  var _dayjs = _interopRequireDefault(require("dayjs"));
4
4
  var _mustBeBefore = _interopRequireDefault(require("./mustBeBefore"));
5
5
  var _utils = require("./utils");
6
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
7
- describe('utils', function () {
8
- describe('Validate', function () {
9
- describe('additional', function () {
10
- describe('mustBeBefore', function () {
11
- test('should return true given a date before the given number of months in the future', function () {
12
- var date = (0, _dayjs.default)().add(1, 'month').format(_utils.DATE_FORMAT);
13
- var result = (0, _mustBeBefore.default)(date, {
6
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
7
+ describe('utils', () => {
8
+ describe('Validate', () => {
9
+ describe('additional', () => {
10
+ describe('mustBeBefore', () => {
11
+ test('should return true given a date before the given number of months in the future', () => {
12
+ const date = (0, _dayjs.default)().add(1, 'month').format(_utils.DATE_FORMAT);
13
+ const result = (0, _mustBeBefore.default)(date, {
14
14
  value: 3,
15
15
  unit: 'month'
16
16
  });
17
17
  expect(result).toEqual(true);
18
18
  });
19
- test('should return false given a date after the given number of months in the future', function () {
20
- var date = (0, _dayjs.default)().add(5, 'month').format(_utils.DATE_FORMAT);
21
- var result = (0, _mustBeBefore.default)(date, {
19
+ test('should return false given a date after the given number of months in the future', () => {
20
+ const date = (0, _dayjs.default)().add(5, 'month').format(_utils.DATE_FORMAT);
21
+ const result = (0, _mustBeBefore.default)(date, {
22
22
  value: 3,
23
23
  unit: 'month'
24
24
  });
25
25
  expect(result).toEqual(false);
26
26
  });
27
- test('should return true given a date before the given number of years in the future', function () {
28
- var date = (0, _dayjs.default)().add(1, 'year').format(_utils.DATE_FORMAT);
29
- var result = (0, _mustBeBefore.default)(date, {
27
+ test('should return true given a date before the given number of years in the future', () => {
28
+ const date = (0, _dayjs.default)().add(1, 'year').format(_utils.DATE_FORMAT);
29
+ const result = (0, _mustBeBefore.default)(date, {
30
30
  value: 3,
31
31
  unit: 'year'
32
32
  });
33
33
  expect(result).toEqual(true);
34
34
  });
35
- test('should return false given a date after the given number of years in the future', function () {
36
- var date = (0, _dayjs.default)().add(20, 'year').format(_utils.DATE_FORMAT);
37
- var result = (0, _mustBeBefore.default)(date, {
35
+ test('should return false given a date after the given number of years in the future', () => {
36
+ const date = (0, _dayjs.default)().add(20, 'year').format(_utils.DATE_FORMAT);
37
+ const result = (0, _mustBeBefore.default)(date, {
38
38
  value: 15,
39
39
  unit: 'year'
40
40
  });
41
41
  expect(result).toEqual(false);
42
42
  });
43
- test('should return true given a date before the given number of days in the future', function () {
44
- var date = (0, _dayjs.default)().add(1, 'day').format(_utils.DATE_FORMAT);
45
- var result = (0, _mustBeBefore.default)(date, {
43
+ test('should return true given a date before the given number of days in the future', () => {
44
+ const date = (0, _dayjs.default)().add(1, 'day').format(_utils.DATE_FORMAT);
45
+ const result = (0, _mustBeBefore.default)(date, {
46
46
  value: 3,
47
47
  unit: 'day'
48
48
  });
49
49
  expect(result).toEqual(true);
50
50
  });
51
- test('should return true given a date after the given number of days in the future', function () {
52
- var date = (0, _dayjs.default)().add(275, 'day').format(_utils.DATE_FORMAT);
53
- var result = (0, _mustBeBefore.default)(date, {
51
+ test('should return true given a date after the given number of days in the future', () => {
52
+ const date = (0, _dayjs.default)().add(275, 'day').format(_utils.DATE_FORMAT);
53
+ const result = (0, _mustBeBefore.default)(date, {
54
54
  value: 250,
55
55
  unit: 'day'
56
56
  });
57
57
  expect(result).toEqual(false);
58
58
  });
59
- test('should return false given a date after the specified fixed date', function () {
60
- var date = (0, _dayjs.default)().format(_utils.DATE_FORMAT);
61
- var result = (0, _mustBeBefore.default)(date, {
59
+ test('should return false given a date after the specified fixed date', () => {
60
+ const date = (0, _dayjs.default)().format(_utils.DATE_FORMAT);
61
+ const result = (0, _mustBeBefore.default)(date, {
62
62
  date: '01-01-2000'
63
63
  });
64
64
  expect(result).toEqual(false);
65
65
  });
66
- test('should return true given a date before the specified fixed date', function () {
67
- var date = (0, _dayjs.default)().format(_utils.DATE_FORMAT);
68
- var result = (0, _mustBeBefore.default)(date, {
66
+ test('should return true given a date before the specified fixed date', () => {
67
+ const date = (0, _dayjs.default)().format(_utils.DATE_FORMAT);
68
+ const result = (0, _mustBeBefore.default)(date, {
69
69
  date: '01-01-5000'
70
70
  });
71
71
  expect(result).toEqual(true);