@ukhomeoffice/cop-react-form-renderer 5.90.0 → 5.90.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.
- package/dist/components/CheckYourAnswers/Answer.js +15 -15
- package/dist/components/CheckYourAnswers/Answer.test.js +132 -181
- package/dist/components/CheckYourAnswers/CheckYourAnswers.js +106 -142
- package/dist/components/CheckYourAnswers/CheckYourAnswers.test.js +563 -941
- package/dist/components/CheckYourAnswers/index.js +1 -1
- package/dist/components/CollectionPage/CollectionPage.js +76 -66
- package/dist/components/CollectionPage/CollectionPage.test.js +318 -369
- package/dist/components/CollectionPage/index.js +1 -1
- package/dist/components/CollectionSummary/BannerStrip.js +15 -15
- package/dist/components/CollectionSummary/BannerStrip.test.js +83 -79
- package/dist/components/CollectionSummary/CollectionSummary.js +109 -131
- package/dist/components/CollectionSummary/CollectionSummary.test.js +198 -180
- package/dist/components/CollectionSummary/Confirmation.js +15 -13
- package/dist/components/CollectionSummary/Confirmation.test.js +68 -63
- package/dist/components/CollectionSummary/RenderListView.js +47 -55
- package/dist/components/CollectionSummary/RenderListView.test.js +82 -81
- package/dist/components/CollectionSummary/SummaryCard.js +121 -157
- package/dist/components/CollectionSummary/SummaryCard.test.js +970 -1000
- package/dist/components/CollectionSummary/SummaryCardDetails.js +103 -94
- package/dist/components/CollectionSummary/SummaryCardDetails.test.js +187 -195
- package/dist/components/CollectionSummary/SummaryCardValidationContext.js +31 -36
- package/dist/components/CollectionSummary/SummaryCardValidationContext.test.js +64 -76
- package/dist/components/CollectionSummary/index.js +1 -1
- package/dist/components/FormComponent/Collection.js +81 -117
- package/dist/components/FormComponent/Collection.test.js +910 -1082
- package/dist/components/FormComponent/Container.js +43 -38
- package/dist/components/FormComponent/Container.test.js +379 -411
- package/dist/components/FormComponent/FormComponent.js +71 -74
- package/dist/components/FormComponent/FormComponent.test.js +354 -415
- package/dist/components/FormComponent/helpers/addLabel.js +4 -7
- package/dist/components/FormComponent/helpers/getComponentDisabled.js +1 -1
- package/dist/components/FormComponent/helpers/getComponentDisabled.test.js +8 -8
- package/dist/components/FormComponent/helpers/getComponentError.js +3 -5
- package/dist/components/FormComponent/helpers/getComponentError.test.js +15 -15
- package/dist/components/FormComponent/helpers/getComponentFieldSet.js +3 -4
- package/dist/components/FormComponent/helpers/getComponentFieldSet.test.js +7 -7
- package/dist/components/FormComponent/helpers/index.js +5 -5
- package/dist/components/FormComponent/index.js +1 -1
- package/dist/components/FormPage/FormPage.js +71 -87
- package/dist/components/FormPage/FormPage.test.js +133 -170
- package/dist/components/FormPage/index.js +1 -1
- package/dist/components/FormRenderer/FormRenderer.js +153 -198
- package/dist/components/FormRenderer/FormRenderer.test.js +731 -1116
- package/dist/components/FormRenderer/handlers/cyaAction.js +3 -3
- package/dist/components/FormRenderer/handlers/getPageId.js +1 -3
- package/dist/components/FormRenderer/handlers/getPageId.test.js +15 -15
- package/dist/components/FormRenderer/handlers/handlers.test.js +33 -33
- package/dist/components/FormRenderer/handlers/index.js +2 -2
- package/dist/components/FormRenderer/handlers/navigate.js +4 -4
- package/dist/components/FormRenderer/handlers/submissionError.js +1 -1
- package/dist/components/FormRenderer/helpers/canActionProceed.js +1 -1
- package/dist/components/FormRenderer/helpers/canActionProceed.test.js +16 -16
- package/dist/components/FormRenderer/helpers/canCYASubmit.js +1 -3
- package/dist/components/FormRenderer/helpers/canCYASubmit.test.js +17 -21
- package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.js +27 -30
- package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.test.js +21 -21
- package/dist/components/FormRenderer/helpers/getCYA.js +5 -7
- package/dist/components/FormRenderer/helpers/getCYA.test.js +12 -12
- package/dist/components/FormRenderer/helpers/getFormState.js +6 -8
- package/dist/components/FormRenderer/helpers/getFormState.test.js +11 -11
- package/dist/components/FormRenderer/helpers/getNextPageId.js +18 -32
- package/dist/components/FormRenderer/helpers/getNextPageId.test.js +68 -68
- package/dist/components/FormRenderer/helpers/getPage.js +2 -4
- package/dist/components/FormRenderer/helpers/getPage.test.js +12 -12
- package/dist/components/FormRenderer/helpers/getRelevantPages.js +8 -11
- package/dist/components/FormRenderer/helpers/getRelevantPages.test.js +15 -15
- package/dist/components/FormRenderer/helpers/getSubmissionStatus.js +12 -13
- package/dist/components/FormRenderer/helpers/getSubmissionStatus.test.js +104 -98
- package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.js +65 -64
- package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.test.js +72 -79
- package/dist/components/FormRenderer/helpers/index.js +2 -2
- package/dist/components/FormRenderer/index.js +1 -1
- package/dist/components/FormRenderer/onCYAAction.js +61 -54
- package/dist/components/FormRenderer/onCYAAction.test.js +165 -153
- package/dist/components/FormRenderer/onPageAction.js +45 -41
- package/dist/components/FormRenderer/onPageAction.test.js +225 -210
- package/dist/components/FormRenderer/onTaskAction.js +11 -15
- package/dist/components/FormRenderer/onTaskAction.test.js +94 -89
- package/dist/components/PageActions/ActionButton.js +13 -16
- package/dist/components/PageActions/ActionButton.test.js +57 -79
- package/dist/components/PageActions/PageActions.js +11 -11
- package/dist/components/PageActions/PageActions.test.js +87 -116
- package/dist/components/PageActions/index.js +1 -1
- package/dist/components/SummaryList/GroupAction.js +13 -21
- package/dist/components/SummaryList/GroupAction.test.js +41 -37
- package/dist/components/SummaryList/RowAction.js +12 -17
- package/dist/components/SummaryList/RowAction.test.js +41 -37
- package/dist/components/SummaryList/SummaryList.js +23 -28
- package/dist/components/SummaryList/SummaryList.test.js +179 -206
- package/dist/components/SummaryList/SummaryListHeadingRow.js +8 -6
- package/dist/components/SummaryList/SummaryListHeadingRowWithAction.js +7 -5
- package/dist/components/SummaryList/SummaryListRow.js +8 -6
- package/dist/components/SummaryList/SummaryListTitleRow.js +7 -5
- package/dist/components/SummaryList/helpers/getGroupActionAttributes.js +4 -6
- package/dist/components/SummaryList/helpers/getGroupActionAttributes.test.js +24 -24
- package/dist/components/SummaryList/helpers/getRowActionAttributes.js +4 -6
- package/dist/components/SummaryList/helpers/getRowActionAttributes.test.js +24 -24
- package/dist/components/SummaryList/helpers/index.js +2 -2
- package/dist/components/SummaryList/index.js +1 -1
- package/dist/components/TaskList/Task.js +20 -30
- package/dist/components/TaskList/Task.test.js +84 -77
- package/dist/components/TaskList/TaskList.js +53 -84
- package/dist/components/TaskList/TaskList.test.js +150 -150
- package/dist/components/TaskList/TaskState.js +8 -6
- package/dist/components/TaskList/TaskState.test.js +56 -49
- package/dist/components/TaskList/index.js +1 -1
- package/dist/components/index.js +8 -8
- package/dist/context/HooksContext/HooksContext.js +58 -81
- package/dist/context/HooksContext/HooksContext.test.js +27 -36
- package/dist/context/HooksContext/index.js +3 -4
- package/dist/context/ValidationContext/ValidationContext.js +44 -95
- package/dist/context/ValidationContext/ValidationContext.test.js +58 -70
- package/dist/context/ValidationContext/index.js +3 -4
- package/dist/context/index.js +3 -3
- package/dist/hooks/index.js +10 -11
- package/dist/hooks/useAxios.js +15 -41
- package/dist/hooks/useGetRequest.js +62 -98
- package/dist/hooks/useHooks.js +1 -3
- package/dist/hooks/useRefData.js +28 -41
- package/dist/hooks/useValidation.js +1 -3
- package/dist/index.js +14 -15
- package/dist/models/CollectionLabels.js +1 -1
- package/dist/models/ComponentTypes.js +25 -25
- package/dist/models/EventTypes.js +4 -4
- package/dist/models/FormPages.js +4 -4
- package/dist/models/FormTypes.js +8 -8
- package/dist/models/HubFormats.js +3 -3
- package/dist/models/PageAction.js +44 -38
- package/dist/models/TaskStates.js +29 -28
- package/dist/models/index.js +10 -10
- package/dist/setupTests.js +31 -32
- package/dist/utils/CheckYourAnswers/getCYAAction.js +5 -5
- package/dist/utils/CheckYourAnswers/getCYAAction.test.js +53 -55
- package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.js +17 -27
- package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.test.js +34 -36
- package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.js +20 -34
- package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.test.js +43 -45
- package/dist/utils/CheckYourAnswers/getCYARow.js +8 -10
- package/dist/utils/CheckYourAnswers/getCYARow.test.js +87 -87
- package/dist/utils/CheckYourAnswers/getCYARowForGroup.js +19 -25
- package/dist/utils/CheckYourAnswers/getCYARowForGroup.test.js +16 -17
- package/dist/utils/CheckYourAnswers/getCYARowsForCollection.js +39 -45
- package/dist/utils/CheckYourAnswers/getCYARowsForCollection.test.js +72 -75
- package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.js +100 -105
- package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.test.js +218 -182
- package/dist/utils/CheckYourAnswers/getCYARowsForContainer.js +26 -21
- package/dist/utils/CheckYourAnswers/getCYARowsForContainer.test.js +112 -106
- package/dist/utils/CheckYourAnswers/getCYARowsForPage.js +15 -21
- package/dist/utils/CheckYourAnswers/getCYARowsForPage.test.js +77 -83
- package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.js +13 -13
- package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.test.js +14 -19
- package/dist/utils/CheckYourAnswers/index.js +2 -2
- package/dist/utils/CheckYourAnswers/showComponentCYA.js +6 -6
- package/dist/utils/CheckYourAnswers/showComponentCYA.test.js +26 -26
- package/dist/utils/CollectionPage/addCollectionPageEntry.js +3 -3
- package/dist/utils/CollectionPage/addCollectionPageEntry.test.js +6 -6
- package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.js +3 -3
- package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.test.js +21 -22
- package/dist/utils/CollectionPage/duplicateCollectionPageEntry.js +15 -24
- package/dist/utils/CollectionPage/duplicateCollectionPageEntry.test.js +52 -43
- package/dist/utils/CollectionPage/getCollectionPageActiveId.js +3 -3
- package/dist/utils/CollectionPage/getCollectionPageActiveId.test.js +11 -11
- package/dist/utils/CollectionPage/getCollectionPageActiveIndex.js +7 -12
- package/dist/utils/CollectionPage/getCollectionPageActiveIndex.test.js +23 -23
- package/dist/utils/CollectionPage/getCollectionPageData.js +8 -13
- package/dist/utils/CollectionPage/getCollectionPageData.test.js +20 -20
- package/dist/utils/CollectionPage/getErrorsForCollection.js +25 -26
- package/dist/utils/CollectionPage/getErrorsForCollection.test.js +21 -23
- package/dist/utils/CollectionPage/getQuickEditPage.js +37 -32
- package/dist/utils/CollectionPage/getQuickEditPage.test.js +18 -22
- package/dist/utils/CollectionPage/index.js +2 -2
- package/dist/utils/CollectionPage/mergeCollectionPages.js +37 -42
- package/dist/utils/CollectionPage/mergeCollectionPages.test.js +26 -22
- package/dist/utils/CollectionPage/removeCollectionPageEntry.js +5 -7
- package/dist/utils/CollectionPage/removeCollectionPageEntry.test.js +11 -11
- package/dist/utils/CollectionPage/setCollectionPageData.js +13 -19
- package/dist/utils/CollectionPage/setCollectionPageData.test.js +26 -26
- package/dist/utils/Component/addShowWhen.js +4 -8
- package/dist/utils/Component/addShowWhen.test.js +38 -38
- package/dist/utils/Component/applyToComponentTree.js +19 -20
- package/dist/utils/Component/applyToComponentTree.test.js +28 -33
- package/dist/utils/Component/cleanAttributes.js +10 -13
- package/dist/utils/Component/cleanAttributes.test.js +17 -18
- package/dist/utils/Component/elevateNestedComponents.js +6 -7
- package/dist/utils/Component/elevateNestedComponents.test.js +34 -34
- package/dist/utils/Component/getComponent.js +90 -97
- package/dist/utils/Component/getComponentTests/getComponent.autocomplete.test.js +19 -18
- package/dist/utils/Component/getComponentTests/getComponent.calculation.test.js +50 -63
- package/dist/utils/Component/getComponentTests/getComponent.checkboxes.test.js +40 -49
- package/dist/utils/Component/getComponentTests/getComponent.date.test.js +30 -40
- package/dist/utils/Component/getComponentTests/getComponent.details.test.js +21 -19
- package/dist/utils/Component/getComponentTests/getComponent.email.test.js +18 -23
- package/dist/utils/Component/getComponentTests/getComponent.file.test.js +22 -27
- package/dist/utils/Component/getComponentTests/getComponent.heading.test.js +12 -11
- package/dist/utils/Component/getComponentTests/getComponent.html.test.js +18 -16
- package/dist/utils/Component/getComponentTests/getComponent.insetText.test.js +10 -9
- package/dist/utils/Component/getComponentTests/getComponent.list.test.js +18 -16
- package/dist/utils/Component/getComponentTests/getComponent.multifile.test.js +23 -27
- package/dist/utils/Component/getComponentTests/getComponent.nested.test.js +155 -175
- package/dist/utils/Component/getComponentTests/getComponent.paragraph.test.js +18 -16
- package/dist/utils/Component/getComponentTests/getComponent.phoneNumber.test.js +18 -23
- package/dist/utils/Component/getComponentTests/getComponent.radios.test.js +58 -73
- package/dist/utils/Component/getComponentTests/getComponent.select.test.js +18 -23
- package/dist/utils/Component/getComponentTests/getComponent.text.test.js +18 -23
- package/dist/utils/Component/getComponentTests/getComponent.textArea.test.js +34 -41
- package/dist/utils/Component/getComponentTests/getComponent.time.test.js +23 -32
- package/dist/utils/Component/getComponentTests/getComponent.unknown.test.js +3 -3
- package/dist/utils/Component/getComponentTests/getComponent.warningText.test.js +10 -9
- package/dist/utils/Component/getDefaultValue.js +7 -9
- package/dist/utils/Component/getDefaultValue.test.js +13 -13
- package/dist/utils/Component/getDefaultValueFromConfig.js +24 -24
- package/dist/utils/Component/getDefaultValueFromConfig.test.js +32 -32
- package/dist/utils/Component/index.js +2 -2
- package/dist/utils/Component/isEditable.js +2 -4
- package/dist/utils/Component/isEditable.test.js +14 -15
- package/dist/utils/Component/optionIsSelected.js +2 -4
- package/dist/utils/Component/optionIsSelected.test.js +12 -12
- package/dist/utils/Component/setupContainerComponentsPath.js +29 -31
- package/dist/utils/Component/setupContainerComponentsPath.test.js +16 -16
- package/dist/utils/Component/showComponent.js +3 -4
- package/dist/utils/Component/showComponent.test.js +29 -29
- package/dist/utils/Component/wrapInFormGroup.js +4 -4
- package/dist/utils/Condition/index.js +2 -2
- package/dist/utils/Condition/meetsAllConditions.js +9 -9
- package/dist/utils/Condition/meetsAllConditions.test.js +21 -21
- package/dist/utils/Condition/meetsCondition.js +20 -31
- package/dist/utils/Condition/meetsCondition.test.js +403 -403
- package/dist/utils/Condition/meetsOneCondition.js +6 -6
- package/dist/utils/Condition/meetsOneCondition.test.js +17 -17
- package/dist/utils/Condition/setupConditions.js +14 -19
- package/dist/utils/Condition/setupConditions.test.js +8 -8
- package/dist/utils/Container/getEditableComponents.js +4 -6
- package/dist/utils/Container/getEditableComponents.test.js +44 -46
- package/dist/utils/Container/index.js +2 -2
- package/dist/utils/Container/setupNesting.js +16 -22
- package/dist/utils/Container/setupNesting.test.js +28 -31
- package/dist/utils/Container/showContainer.js +4 -8
- package/dist/utils/Container/showContainer.test.js +31 -31
- package/dist/utils/Data/applyFormula.js +40 -50
- package/dist/utils/Data/applyFormula.test.js +26 -26
- package/dist/utils/Data/deleteValues.js +4 -8
- package/dist/utils/Data/deleteValues.test.js +11 -11
- package/dist/utils/Data/getAutocompleteSource.js +20 -29
- package/dist/utils/Data/getAutocompleteSource.test.js +81 -87
- package/dist/utils/Data/getDataPath.js +20 -30
- package/dist/utils/Data/getDataPath.test.js +20 -20
- package/dist/utils/Data/getOptions.js +27 -34
- package/dist/utils/Data/getOptions.test.js +28 -28
- package/dist/utils/Data/getSourceData.js +6 -19
- package/dist/utils/Data/getSourceData.test.js +85 -81
- package/dist/utils/Data/index.js +2 -2
- package/dist/utils/Data/nestInRefdataOptions.js +9 -16
- package/dist/utils/Data/nestInRefdataOptions.test.js +17 -17
- package/dist/utils/Data/refDataToOptions.js +11 -15
- package/dist/utils/Data/refDataToOptions.test.js +20 -20
- package/dist/utils/Data/setDataItem.js +7 -8
- package/dist/utils/Data/setDataItem.test.js +38 -38
- package/dist/utils/Data/setupFormData.js +14 -22
- package/dist/utils/Data/setupFormData.test.js +52 -51
- package/dist/utils/Data/setupRefDataUrlForComponent.js +21 -28
- package/dist/utils/Data/setupRefDataUrlForComponent.test.js +28 -28
- package/dist/utils/FormPage/applyConditionalProperties.js +6 -10
- package/dist/utils/FormPage/applyConditionalProperties.test.js +16 -19
- package/dist/utils/FormPage/getConditionalText.js +4 -4
- package/dist/utils/FormPage/getConditionalText.test.js +35 -35
- package/dist/utils/FormPage/getFormPage.js +16 -17
- package/dist/utils/FormPage/getFormPage.test.js +49 -48
- package/dist/utils/FormPage/getFormPages.js +8 -13
- package/dist/utils/FormPage/getFormPages.test.js +22 -25
- package/dist/utils/FormPage/getPageActions.js +10 -17
- package/dist/utils/FormPage/getPageActions.test.js +33 -33
- package/dist/utils/FormPage/getParagraphFromText.js +5 -7
- package/dist/utils/FormPage/getParagraphFromText.test.js +7 -7
- package/dist/utils/FormPage/index.js +3 -5
- package/dist/utils/FormPage/showFormPage.js +4 -8
- package/dist/utils/FormPage/showFormPage.test.js +33 -33
- package/dist/utils/FormPage/showFormPageCYA.js +3 -3
- package/dist/utils/FormPage/showFormPageCYA.test.js +9 -9
- package/dist/utils/FormPage/useComponent.js +21 -28
- package/dist/utils/FormPage/useComponent.test.js +78 -80
- package/dist/utils/Format/formatData.js +1 -1
- package/dist/utils/Format/formatData.test.js +19 -19
- package/dist/utils/Format/formatDataForComponent.js +6 -7
- package/dist/utils/Format/formatDataForComponent.test.js +50 -78
- package/dist/utils/Format/formatDataForForm.js +6 -8
- package/dist/utils/Format/formatDataForForm.test.js +14 -17
- package/dist/utils/Format/formatDataForPage.js +4 -5
- package/dist/utils/Format/formatDataForPage.test.js +20 -25
- package/dist/utils/Format/index.js +2 -2
- package/dist/utils/Hub/getFormHub.js +2 -2
- package/dist/utils/Hub/getFormHub.test.js +29 -32
- package/dist/utils/Hub/index.js +2 -2
- package/dist/utils/Meta/constants.js +2 -2
- package/dist/utils/Meta/documents/getDocuments.js +1 -4
- package/dist/utils/Meta/documents/getDocuments.test.js +25 -17
- package/dist/utils/Meta/documents/index.js +2 -2
- package/dist/utils/Meta/documents/setDocumentsForField.js +15 -17
- package/dist/utils/Meta/documents/setDocumentsForField.test.js +69 -35
- package/dist/utils/Meta/index.js +2 -2
- package/dist/utils/Operate/checkValueIsTruthy.js +4 -4
- package/dist/utils/Operate/checkValueIsTruthy.test.js +17 -17
- package/dist/utils/Operate/deleteValueInFormData.js +3 -3
- package/dist/utils/Operate/deleteValueInFormData.test.js +15 -15
- package/dist/utils/Operate/getFirstOf.js +8 -8
- package/dist/utils/Operate/getFirstOf.test.js +33 -33
- package/dist/utils/Operate/getIndexOfMatchingValueIn.js +12 -12
- package/dist/utils/Operate/getIndexOfMatchingValueIn.test.js +47 -53
- package/dist/utils/Operate/getLength.js +11 -11
- package/dist/utils/Operate/getLength.test.js +19 -19
- package/dist/utils/Operate/index.js +2 -2
- package/dist/utils/Operate/persistValueInFormData.js +6 -6
- package/dist/utils/Operate/persistValueInFormData.test.js +23 -21
- package/dist/utils/Operate/runPageOperations.js +9 -9
- package/dist/utils/Operate/runPageOperations.test.js +36 -37
- package/dist/utils/Operate/setValueInFormData.js +5 -5
- package/dist/utils/Operate/setValueInFormData.test.js +17 -17
- package/dist/utils/Operate/shouldRun.js +8 -8
- package/dist/utils/Operate/shouldRun.test.js +22 -28
- package/dist/utils/Validate/additional/conditionallyPermittedChange.js +1 -1
- package/dist/utils/Validate/additional/conditionallyPermittedChange.test.js +15 -15
- package/dist/utils/Validate/additional/conditionallyRequired.js +4 -5
- package/dist/utils/Validate/additional/conditionallyRequired.test.js +19 -19
- package/dist/utils/Validate/additional/index.js +8 -8
- package/dist/utils/Validate/additional/index.test.js +22 -22
- package/dist/utils/Validate/additional/mustBeAfter.js +3 -3
- package/dist/utils/Validate/additional/mustBeAfter.test.js +41 -41
- package/dist/utils/Validate/additional/mustBeBefore.js +3 -3
- package/dist/utils/Validate/additional/mustBeBefore.test.js +29 -29
- package/dist/utils/Validate/additional/mustBeEarlierDateTime.js +9 -14
- package/dist/utils/Validate/additional/mustBeEarlierDateTime.test.js +38 -42
- package/dist/utils/Validate/additional/mustBeGreaterThan.js +2 -2
- package/dist/utils/Validate/additional/mustBeGreaterThan.test.js +19 -19
- package/dist/utils/Validate/additional/mustBeInTheFuture.js +4 -4
- package/dist/utils/Validate/additional/mustBeInTheFuture.test.js +13 -13
- package/dist/utils/Validate/additional/mustBeInThePast.js +5 -5
- package/dist/utils/Validate/additional/mustBeInThePast.test.js +13 -13
- package/dist/utils/Validate/additional/mustBeLessThan.js +2 -2
- package/dist/utils/Validate/additional/mustBeLessThan.test.js +18 -18
- package/dist/utils/Validate/additional/mustBeLongerThan.js +1 -1
- package/dist/utils/Validate/additional/mustBeLongerThan.test.js +17 -17
- package/dist/utils/Validate/additional/mustBeNumbersOnly.js +2 -2
- package/dist/utils/Validate/additional/mustBeNumbersOnly.test.js +21 -21
- package/dist/utils/Validate/additional/mustBeOneOf.js +1 -1
- package/dist/utils/Validate/additional/mustBeOneOf.test.js +13 -13
- package/dist/utils/Validate/additional/mustBeShorterThan.js +1 -1
- package/dist/utils/Validate/additional/mustBeShorterThan.test.js +17 -17
- package/dist/utils/Validate/additional/mustBeUniqueInCollection.js +5 -5
- package/dist/utils/Validate/additional/mustBeUniqueInCollection.test.js +36 -40
- package/dist/utils/Validate/additional/mustEnterAtLeastOne.js +3 -5
- package/dist/utils/Validate/additional/mustEnterAtLeastOne.test.js +15 -17
- package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.js +1 -1
- package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.test.js +13 -13
- package/dist/utils/Validate/additional/mustNotContainSql.js +3 -4
- package/dist/utils/Validate/additional/mustNotContainSql.test.js +15 -15
- package/dist/utils/Validate/additional/mustSelectOnlyOne.js +3 -5
- package/dist/utils/Validate/additional/mustSelectOnlyOne.test.js +29 -27
- package/dist/utils/Validate/additional/utils.js +11 -24
- package/dist/utils/Validate/index.js +2 -2
- package/dist/utils/Validate/validateCollection.js +21 -27
- package/dist/utils/Validate/validateCollection.test.js +85 -77
- package/dist/utils/Validate/validateComponent.js +22 -23
- package/dist/utils/Validate/validateComponent.test.js +188 -165
- package/dist/utils/Validate/validateContainer.js +16 -21
- package/dist/utils/Validate/validateContainer.test.js +62 -56
- package/dist/utils/Validate/validateDate.js +17 -23
- package/dist/utils/Validate/validateDate.test.js +31 -32
- package/dist/utils/Validate/validateEmail.js +7 -9
- package/dist/utils/Validate/validateEmail.test.js +26 -26
- package/dist/utils/Validate/validateMultifile.js +5 -7
- package/dist/utils/Validate/validateMultifile.test.js +17 -18
- package/dist/utils/Validate/validatePage.js +20 -24
- package/dist/utils/Validate/validatePage.test.js +227 -215
- package/dist/utils/Validate/validateRegex.js +5 -8
- package/dist/utils/Validate/validateRegex.test.js +17 -17
- package/dist/utils/Validate/validateRequired.js +5 -7
- package/dist/utils/Validate/validateRequired.test.js +19 -19
- package/dist/utils/Validate/validateTextArea.js +5 -7
- package/dist/utils/Validate/validateTextArea.test.js +21 -21
- package/dist/utils/Validate/validateTime.js +12 -19
- package/dist/utils/Validate/validateTime.test.js +27 -27
- package/dist/utils/index.js +8 -10
- package/package.json +3 -2
|
@@ -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(
|
|
7
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
8
8
|
_dayjs.default.extend(_customParseFormat.default);
|
|
9
|
-
describe('utils',
|
|
10
|
-
describe('Validate',
|
|
11
|
-
describe('additional',
|
|
12
|
-
it('should apply optional validators when specified',
|
|
13
|
-
|
|
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
|
-
|
|
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',
|
|
25
|
-
|
|
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
|
-
|
|
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',
|
|
42
|
-
|
|
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,11 +55,11 @@ describe('utils', function () {
|
|
|
55
55
|
message: 'Date must be in the future'
|
|
56
56
|
}]
|
|
57
57
|
};
|
|
58
|
-
|
|
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
|
-
it('should apply optional validators that fail when the value is an object',
|
|
62
|
-
|
|
61
|
+
it('should apply optional validators that fail when the value is an object', () => {
|
|
62
|
+
const COMPONENT = {
|
|
63
63
|
fieldId: 'container',
|
|
64
64
|
components: [{
|
|
65
65
|
id: 'eventDate',
|
|
@@ -75,7 +75,7 @@ describe('utils', function () {
|
|
|
75
75
|
message: 'The date and time cannot be in the future'
|
|
76
76
|
}]
|
|
77
77
|
};
|
|
78
|
-
|
|
78
|
+
const VALUE = {
|
|
79
79
|
container: {
|
|
80
80
|
eventDate: '01-07-4024',
|
|
81
81
|
eventTime: '1:1'
|
|
@@ -83,8 +83,8 @@ describe('utils', function () {
|
|
|
83
83
|
};
|
|
84
84
|
expect((0, _index.default)(COMPONENT, VALUE)).toEqual('The date and time cannot be in the future');
|
|
85
85
|
});
|
|
86
|
-
it('should apply optional validators that pass when the value is an object',
|
|
87
|
-
|
|
86
|
+
it('should apply optional validators that pass when the value is an object', () => {
|
|
87
|
+
const COMPONENT = {
|
|
88
88
|
fieldId: 'container',
|
|
89
89
|
components: [{
|
|
90
90
|
id: 'eventDate',
|
|
@@ -100,7 +100,7 @@ describe('utils', function () {
|
|
|
100
100
|
message: 'The date and time cannot be in the future'
|
|
101
101
|
}]
|
|
102
102
|
};
|
|
103
|
-
|
|
103
|
+
const VALUE = {
|
|
104
104
|
container: {
|
|
105
105
|
eventDate: '01-07-1024',
|
|
106
106
|
eventTime: '1:1'
|
|
@@ -108,8 +108,8 @@ describe('utils', function () {
|
|
|
108
108
|
};
|
|
109
109
|
expect((0, _index.default)(COMPONENT, VALUE)).toEqual(undefined);
|
|
110
110
|
});
|
|
111
|
-
it('should apply optional validators when the value is within an object',
|
|
112
|
-
|
|
111
|
+
it('should apply optional validators when the value is within an object', () => {
|
|
112
|
+
const COMPONENT = {
|
|
113
113
|
additionalValidation: [{
|
|
114
114
|
function: 'mustBeAfter',
|
|
115
115
|
value: 3,
|
|
@@ -118,7 +118,7 @@ describe('utils', function () {
|
|
|
118
118
|
message: 'Date must be more than 3 days in the future'
|
|
119
119
|
}]
|
|
120
120
|
};
|
|
121
|
-
|
|
121
|
+
const VALUE = {
|
|
122
122
|
testValue: "",
|
|
123
123
|
date: (0, _dayjs.default)().add(1, 'day').format(_utils.DATE_FORMAT)
|
|
124
124
|
};
|
|
@@ -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(
|
|
10
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
11
|
// Global imports
|
|
12
12
|
|
|
13
13
|
// Local imports
|
|
@@ -26,8 +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
|
-
|
|
30
|
-
|
|
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
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(
|
|
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
|
-
|
|
13
|
-
|
|
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',
|
|
20
|
-
|
|
21
|
-
|
|
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',
|
|
28
|
-
|
|
29
|
-
|
|
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',
|
|
36
|
-
|
|
37
|
-
|
|
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',
|
|
44
|
-
|
|
45
|
-
|
|
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',
|
|
52
|
-
|
|
53
|
-
|
|
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',
|
|
60
|
-
|
|
61
|
-
|
|
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',
|
|
68
|
-
|
|
69
|
-
|
|
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',
|
|
76
|
-
|
|
77
|
-
|
|
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',
|
|
84
|
-
|
|
85
|
-
|
|
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',
|
|
92
|
-
|
|
93
|
-
|
|
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',
|
|
99
|
-
|
|
100
|
-
|
|
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(
|
|
10
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
11
|
// Global imports
|
|
12
12
|
|
|
13
13
|
// Local imports
|
|
@@ -26,8 +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
|
-
|
|
30
|
-
|
|
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
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(
|
|
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
|
-
|
|
13
|
-
|
|
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',
|
|
20
|
-
|
|
21
|
-
|
|
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',
|
|
28
|
-
|
|
29
|
-
|
|
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',
|
|
36
|
-
|
|
37
|
-
|
|
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',
|
|
44
|
-
|
|
45
|
-
|
|
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',
|
|
52
|
-
|
|
53
|
-
|
|
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',
|
|
60
|
-
|
|
61
|
-
|
|
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',
|
|
67
|
-
|
|
68
|
-
|
|
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);
|
|
@@ -8,7 +8,7 @@ var _dayjs = _interopRequireDefault(require("dayjs"));
|
|
|
8
8
|
var _customParseFormat = _interopRequireDefault(require("dayjs/plugin/customParseFormat"));
|
|
9
9
|
var _validateComponent = _interopRequireDefault(require("../validateComponent"));
|
|
10
10
|
var _utils = require("./utils");
|
|
11
|
-
function _interopRequireDefault(
|
|
11
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
12
|
// Global Imports
|
|
13
13
|
|
|
14
14
|
// Local imports
|
|
@@ -28,19 +28,14 @@ _dayjs.default.extend(_customParseFormat.default);
|
|
|
28
28
|
* the individual components. False if the date & time is in the future, or
|
|
29
29
|
* the date/time component can't be found.
|
|
30
30
|
*/
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
return c.fieldId === config.date;
|
|
35
|
-
});
|
|
36
|
-
var time = (_container$components2 = container.components) === null || _container$components2 === void 0 ? void 0 : _container$components2.find(function (c) {
|
|
37
|
-
return c.fieldId === config.time;
|
|
38
|
-
});
|
|
31
|
+
const mustBeEarlierDateTime = (data, config, container) => {
|
|
32
|
+
const date = container.components?.find(c => c.fieldId === config.date);
|
|
33
|
+
const time = container.components?.find(c => c.fieldId === config.time);
|
|
39
34
|
if (!date || !time || !data) {
|
|
40
35
|
return false;
|
|
41
36
|
}
|
|
42
|
-
|
|
43
|
-
|
|
37
|
+
const dateFromData = data[container.fieldId]?.[config.date];
|
|
38
|
+
const timeFromData = data[container.fieldId]?.[config.time];
|
|
44
39
|
if (!dateFromData || !timeFromData) {
|
|
45
40
|
return true;
|
|
46
41
|
}
|
|
@@ -53,8 +48,8 @@ var mustBeEarlierDateTime = function mustBeEarlierDateTime(data, config, contain
|
|
|
53
48
|
if ((0, _validateComponent.default)(time, data[container.fieldId], data[container.fieldId])) {
|
|
54
49
|
return true;
|
|
55
50
|
}
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
return (0, _dayjs.default)(
|
|
51
|
+
const dateStr = (0, _utils.formatString)(data[container.fieldId]?.[config.date]);
|
|
52
|
+
const timeStr = (0, _utils.formattedTime)(data[container.fieldId]?.[config.time]);
|
|
53
|
+
return (0, _dayjs.default)(`${dateStr} ${timeStr}`, `${_utils.DATE_FORMAT} HH:mm`).isBefore((0, _dayjs.default)());
|
|
59
54
|
};
|
|
60
55
|
var _default = exports.default = mustBeEarlierDateTime;
|
|
@@ -1,27 +1,21 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _mustBeEarlierDateTime = _interopRequireDefault(require("./mustBeEarlierDateTime"));
|
|
4
|
-
function _interopRequireDefault(
|
|
5
|
-
|
|
6
|
-
|
|
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); }
|
|
11
|
-
describe('utils.Validate.additional.mustBeEarlierDateTime', function () {
|
|
12
|
-
var DATA = {
|
|
4
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
5
|
+
describe('utils.Validate.additional.mustBeEarlierDateTime', () => {
|
|
6
|
+
const DATA = {
|
|
13
7
|
testContainer: {
|
|
14
8
|
testDate: '01-01-2000',
|
|
15
9
|
testTime: '00:00'
|
|
16
10
|
}
|
|
17
11
|
};
|
|
18
|
-
|
|
12
|
+
const CONFIG = {
|
|
19
13
|
function: 'mustBeEarlierDateTime',
|
|
20
14
|
date: 'testDate',
|
|
21
15
|
time: 'testTime',
|
|
22
16
|
message: 'Date and time must be in the past'
|
|
23
17
|
};
|
|
24
|
-
|
|
18
|
+
const CONTAINER = {
|
|
25
19
|
fieldId: 'testContainer',
|
|
26
20
|
type: 'container',
|
|
27
21
|
components: [{
|
|
@@ -34,49 +28,51 @@ describe('utils.Validate.additional.mustBeEarlierDateTime', function () {
|
|
|
34
28
|
required: true
|
|
35
29
|
}]
|
|
36
30
|
};
|
|
37
|
-
test('should return false if the date component is missing',
|
|
38
|
-
|
|
31
|
+
test('should return false if the date component is missing', () => {
|
|
32
|
+
const EDITED_CONFIG = {
|
|
33
|
+
...CONFIG,
|
|
39
34
|
date: 'notARealComponent'
|
|
40
|
-
}
|
|
41
|
-
|
|
35
|
+
};
|
|
36
|
+
const result = (0, _mustBeEarlierDateTime.default)(DATA, EDITED_CONFIG, CONTAINER);
|
|
42
37
|
expect(result).toEqual(false);
|
|
43
38
|
});
|
|
44
|
-
test('should return false if the time component is missing',
|
|
45
|
-
|
|
39
|
+
test('should return false if the time component is missing', () => {
|
|
40
|
+
const EDITED_CONFIG = {
|
|
41
|
+
...CONFIG,
|
|
46
42
|
time: 'notARealComponent'
|
|
47
|
-
}
|
|
48
|
-
|
|
43
|
+
};
|
|
44
|
+
const result = (0, _mustBeEarlierDateTime.default)(DATA, EDITED_CONFIG, CONTAINER);
|
|
49
45
|
expect(result).toEqual(false);
|
|
50
46
|
});
|
|
51
|
-
test('should return false if data is null',
|
|
52
|
-
|
|
47
|
+
test('should return false if data is null', () => {
|
|
48
|
+
const result = (0, _mustBeEarlierDateTime.default)(null, CONFIG, CONTAINER);
|
|
53
49
|
expect(result).toEqual(false);
|
|
54
50
|
});
|
|
55
|
-
test('should return true if date value is missing',
|
|
56
|
-
|
|
51
|
+
test('should return true if date value is missing', () => {
|
|
52
|
+
const EDITED_DATA = {
|
|
57
53
|
testContainer: {
|
|
58
54
|
testTime: '00:00'
|
|
59
55
|
}
|
|
60
56
|
};
|
|
61
|
-
|
|
57
|
+
const result = (0, _mustBeEarlierDateTime.default)(EDITED_DATA, CONFIG, CONTAINER);
|
|
62
58
|
expect(result).toEqual(true);
|
|
63
59
|
});
|
|
64
|
-
test('should return true if time value is missing',
|
|
65
|
-
|
|
60
|
+
test('should return true if time value is missing', () => {
|
|
61
|
+
const EDITED_DATA = {
|
|
66
62
|
testContainer: {
|
|
67
63
|
testDate: '01-01-2000'
|
|
68
64
|
}
|
|
69
65
|
};
|
|
70
|
-
|
|
66
|
+
const result = (0, _mustBeEarlierDateTime.default)(EDITED_DATA, CONFIG, CONTAINER);
|
|
71
67
|
expect(result).toEqual(true);
|
|
72
68
|
});
|
|
73
|
-
test('should return true if time value is missing and optional',
|
|
74
|
-
|
|
69
|
+
test('should return true if time value is missing and optional', () => {
|
|
70
|
+
const EDITED_DATA = {
|
|
75
71
|
testContainer: {
|
|
76
72
|
testDate: '01-01-2000'
|
|
77
73
|
}
|
|
78
74
|
};
|
|
79
|
-
|
|
75
|
+
const EDITED_CONTAINER = {
|
|
80
76
|
fieldId: 'testContainer',
|
|
81
77
|
type: 'container',
|
|
82
78
|
components: [{
|
|
@@ -88,41 +84,41 @@ describe('utils.Validate.additional.mustBeEarlierDateTime', function () {
|
|
|
88
84
|
type: 'time'
|
|
89
85
|
}]
|
|
90
86
|
};
|
|
91
|
-
|
|
87
|
+
const result = (0, _mustBeEarlierDateTime.default)(EDITED_DATA, CONFIG, EDITED_CONTAINER);
|
|
92
88
|
expect(result).toEqual(true);
|
|
93
89
|
});
|
|
94
|
-
test('should return true if date has errors',
|
|
95
|
-
|
|
90
|
+
test('should return true if date has errors', () => {
|
|
91
|
+
const EDITED_DATA = {
|
|
96
92
|
testContainer: {
|
|
97
93
|
testDate: '011-011-200000',
|
|
98
94
|
testTime: '00:00'
|
|
99
95
|
}
|
|
100
96
|
};
|
|
101
|
-
|
|
97
|
+
const result = (0, _mustBeEarlierDateTime.default)(EDITED_DATA, CONFIG, CONTAINER);
|
|
102
98
|
expect(result).toEqual(true);
|
|
103
99
|
});
|
|
104
|
-
test('should return true if time has errors',
|
|
105
|
-
|
|
100
|
+
test('should return true if time has errors', () => {
|
|
101
|
+
const EDITED_DATA = {
|
|
106
102
|
testContainer: {
|
|
107
103
|
testDate: '01-01-2000',
|
|
108
104
|
testTime: '45:78'
|
|
109
105
|
}
|
|
110
106
|
};
|
|
111
|
-
|
|
107
|
+
const result = (0, _mustBeEarlierDateTime.default)(EDITED_DATA, CONFIG, CONTAINER);
|
|
112
108
|
expect(result).toEqual(true);
|
|
113
109
|
});
|
|
114
|
-
test('should return true if date & time are in the past',
|
|
115
|
-
|
|
110
|
+
test('should return true if date & time are in the past', () => {
|
|
111
|
+
const result = (0, _mustBeEarlierDateTime.default)(DATA, CONFIG, CONTAINER);
|
|
116
112
|
expect(result).toEqual(true);
|
|
117
113
|
});
|
|
118
|
-
test('should return false if date & time are not in the past',
|
|
119
|
-
|
|
114
|
+
test('should return false if date & time are not in the past', () => {
|
|
115
|
+
const futureDATA = {
|
|
120
116
|
testContainer: {
|
|
121
117
|
testDate: '01-01-5000',
|
|
122
118
|
testTime: '00:00'
|
|
123
119
|
}
|
|
124
120
|
};
|
|
125
|
-
|
|
121
|
+
const result = (0, _mustBeEarlierDateTime.default)(futureDATA, CONFIG, CONTAINER);
|
|
126
122
|
expect(result).toEqual(false);
|
|
127
123
|
});
|
|
128
124
|
});
|
|
@@ -9,13 +9,13 @@ exports.default = void 0;
|
|
|
9
9
|
* @param {number} config.value - the value must be greater than config.value.
|
|
10
10
|
* @returns true if value is greater than config.value, false if not.
|
|
11
11
|
*/
|
|
12
|
-
|
|
12
|
+
const mustBeGreaterThan = (value, config) => {
|
|
13
13
|
if (!value) {
|
|
14
14
|
// null, undefined and empty strings should be picked up by the required flag
|
|
15
15
|
// and not considered here as they would be valid for optional fields.
|
|
16
16
|
return true;
|
|
17
17
|
}
|
|
18
|
-
|
|
18
|
+
const finalValue = typeof value === 'string' ? value.replace(/,/g, '') : value;
|
|
19
19
|
return parseFloat(finalValue) > config.value;
|
|
20
20
|
};
|
|
21
21
|
var _default = exports.default = mustBeGreaterThan;
|