@ukhomeoffice/cop-react-form-renderer 5.90.1 → 5.91.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/CheckYourAnswers/Answer.js +15 -15
- package/dist/components/CheckYourAnswers/Answer.test.js +181 -132
- package/dist/components/CheckYourAnswers/CheckYourAnswers.js +142 -106
- package/dist/components/CheckYourAnswers/CheckYourAnswers.test.js +941 -563
- package/dist/components/CheckYourAnswers/index.js +1 -1
- package/dist/components/CollectionPage/CollectionPage.js +66 -75
- package/dist/components/CollectionPage/CollectionPage.test.js +369 -318
- package/dist/components/CollectionPage/index.js +1 -1
- package/dist/components/CollectionSummary/BannerStrip.js +15 -15
- package/dist/components/CollectionSummary/BannerStrip.test.js +79 -83
- package/dist/components/CollectionSummary/CollectionSummary.js +131 -109
- package/dist/components/CollectionSummary/CollectionSummary.test.js +180 -198
- package/dist/components/CollectionSummary/Confirmation.js +13 -15
- package/dist/components/CollectionSummary/Confirmation.test.js +63 -68
- package/dist/components/CollectionSummary/RenderListView.js +63 -46
- package/dist/components/CollectionSummary/RenderListView.scss +9 -0
- package/dist/components/CollectionSummary/RenderListView.test.js +120 -84
- package/dist/components/CollectionSummary/SummaryCard.js +157 -121
- package/dist/components/CollectionSummary/SummaryCard.test.js +1000 -970
- package/dist/components/CollectionSummary/SummaryCardDetails.js +94 -103
- package/dist/components/CollectionSummary/SummaryCardDetails.test.js +195 -187
- package/dist/components/CollectionSummary/SummaryCardValidationContext.js +36 -31
- package/dist/components/CollectionSummary/SummaryCardValidationContext.test.js +76 -64
- package/dist/components/CollectionSummary/index.js +1 -1
- package/dist/components/FormComponent/Collection.js +117 -80
- package/dist/components/FormComponent/Collection.test.js +1082 -910
- package/dist/components/FormComponent/Container.js +38 -43
- package/dist/components/FormComponent/Container.test.js +411 -379
- package/dist/components/FormComponent/FormComponent.js +74 -71
- package/dist/components/FormComponent/FormComponent.test.js +415 -354
- package/dist/components/FormComponent/helpers/addLabel.js +7 -4
- 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 +5 -3
- package/dist/components/FormComponent/helpers/getComponentError.test.js +15 -15
- package/dist/components/FormComponent/helpers/getComponentFieldSet.js +4 -3
- 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 +87 -71
- package/dist/components/FormPage/FormPage.test.js +170 -133
- package/dist/components/FormPage/index.js +1 -1
- package/dist/components/FormRenderer/FormRenderer.js +198 -153
- package/dist/components/FormRenderer/FormRenderer.test.js +1116 -731
- package/dist/components/FormRenderer/handlers/cyaAction.js +3 -3
- package/dist/components/FormRenderer/handlers/getPageId.js +3 -1
- 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 +3 -1
- package/dist/components/FormRenderer/helpers/canCYASubmit.test.js +21 -17
- package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.js +30 -27
- package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.test.js +21 -21
- package/dist/components/FormRenderer/helpers/getCYA.js +7 -5
- package/dist/components/FormRenderer/helpers/getCYA.test.js +12 -12
- package/dist/components/FormRenderer/helpers/getFormState.js +8 -6
- package/dist/components/FormRenderer/helpers/getFormState.test.js +11 -11
- package/dist/components/FormRenderer/helpers/getNextPageId.js +32 -18
- package/dist/components/FormRenderer/helpers/getNextPageId.test.js +68 -68
- package/dist/components/FormRenderer/helpers/getPage.js +4 -2
- package/dist/components/FormRenderer/helpers/getPage.test.js +12 -12
- package/dist/components/FormRenderer/helpers/getRelevantPages.js +11 -8
- package/dist/components/FormRenderer/helpers/getRelevantPages.test.js +15 -15
- package/dist/components/FormRenderer/helpers/getSubmissionStatus.js +13 -12
- package/dist/components/FormRenderer/helpers/getSubmissionStatus.test.js +98 -104
- package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.js +64 -65
- package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.test.js +79 -72
- package/dist/components/FormRenderer/helpers/index.js +2 -2
- package/dist/components/FormRenderer/index.js +1 -1
- package/dist/components/FormRenderer/onCYAAction.js +54 -61
- package/dist/components/FormRenderer/onCYAAction.test.js +153 -165
- package/dist/components/FormRenderer/onPageAction.js +41 -45
- package/dist/components/FormRenderer/onPageAction.test.js +210 -225
- package/dist/components/FormRenderer/onTaskAction.js +15 -11
- package/dist/components/FormRenderer/onTaskAction.test.js +89 -94
- package/dist/components/PageActions/ActionButton.js +16 -13
- package/dist/components/PageActions/ActionButton.test.js +79 -57
- package/dist/components/PageActions/PageActions.js +11 -11
- package/dist/components/PageActions/PageActions.test.js +116 -87
- package/dist/components/PageActions/index.js +1 -1
- package/dist/components/SummaryList/GroupAction.js +21 -13
- package/dist/components/SummaryList/GroupAction.test.js +37 -41
- package/dist/components/SummaryList/RowAction.js +17 -12
- package/dist/components/SummaryList/RowAction.test.js +37 -41
- package/dist/components/SummaryList/SummaryList.js +28 -23
- package/dist/components/SummaryList/SummaryList.test.js +206 -179
- package/dist/components/SummaryList/SummaryListHeadingRow.js +6 -8
- package/dist/components/SummaryList/SummaryListHeadingRowWithAction.js +5 -7
- package/dist/components/SummaryList/SummaryListRow.js +6 -8
- package/dist/components/SummaryList/SummaryListTitleRow.js +5 -7
- package/dist/components/SummaryList/helpers/getGroupActionAttributes.js +6 -4
- package/dist/components/SummaryList/helpers/getGroupActionAttributes.test.js +24 -24
- package/dist/components/SummaryList/helpers/getRowActionAttributes.js +6 -4
- 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 +30 -20
- package/dist/components/TaskList/Task.test.js +77 -84
- package/dist/components/TaskList/TaskList.js +84 -53
- package/dist/components/TaskList/TaskList.test.js +150 -150
- package/dist/components/TaskList/TaskState.js +6 -8
- package/dist/components/TaskList/TaskState.test.js +49 -56
- package/dist/components/TaskList/index.js +1 -1
- package/dist/components/index.js +8 -8
- package/dist/context/HooksContext/HooksContext.js +81 -58
- package/dist/context/HooksContext/HooksContext.test.js +36 -27
- package/dist/context/HooksContext/index.js +4 -3
- package/dist/context/ValidationContext/ValidationContext.js +95 -44
- package/dist/context/ValidationContext/ValidationContext.test.js +70 -58
- package/dist/context/ValidationContext/index.js +4 -3
- package/dist/context/index.js +3 -3
- package/dist/hooks/index.js +11 -10
- package/dist/hooks/useAxios.js +41 -15
- package/dist/hooks/useGetRequest.js +98 -62
- package/dist/hooks/useHooks.js +3 -1
- package/dist/hooks/useRefData.js +41 -28
- package/dist/hooks/useValidation.js +3 -1
- package/dist/index.js +15 -14
- 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 +38 -44
- package/dist/models/TaskStates.js +28 -29
- package/dist/models/index.js +10 -10
- package/dist/setupTests.js +32 -31
- package/dist/utils/CheckYourAnswers/getCYAAction.js +5 -5
- package/dist/utils/CheckYourAnswers/getCYAAction.test.js +55 -53
- package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.js +27 -17
- package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.test.js +36 -34
- package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.js +34 -20
- package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.test.js +45 -43
- package/dist/utils/CheckYourAnswers/getCYARow.js +10 -8
- package/dist/utils/CheckYourAnswers/getCYARow.test.js +87 -87
- package/dist/utils/CheckYourAnswers/getCYARowForGroup.js +25 -19
- package/dist/utils/CheckYourAnswers/getCYARowForGroup.test.js +17 -16
- package/dist/utils/CheckYourAnswers/getCYARowsForCollection.js +45 -39
- package/dist/utils/CheckYourAnswers/getCYARowsForCollection.test.js +75 -72
- package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.js +105 -100
- package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.test.js +182 -218
- package/dist/utils/CheckYourAnswers/getCYARowsForContainer.js +21 -26
- package/dist/utils/CheckYourAnswers/getCYARowsForContainer.test.js +106 -112
- package/dist/utils/CheckYourAnswers/getCYARowsForPage.js +21 -15
- package/dist/utils/CheckYourAnswers/getCYARowsForPage.test.js +83 -77
- package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.js +13 -13
- package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.test.js +19 -14
- 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 +22 -21
- package/dist/utils/CollectionPage/duplicateCollectionPageEntry.js +24 -14
- package/dist/utils/CollectionPage/duplicateCollectionPageEntry.test.js +43 -52
- package/dist/utils/CollectionPage/getCollectionPageActiveId.js +3 -3
- package/dist/utils/CollectionPage/getCollectionPageActiveId.test.js +11 -11
- package/dist/utils/CollectionPage/getCollectionPageActiveIndex.js +12 -7
- package/dist/utils/CollectionPage/getCollectionPageActiveIndex.test.js +23 -23
- package/dist/utils/CollectionPage/getCollectionPageData.js +13 -8
- package/dist/utils/CollectionPage/getCollectionPageData.test.js +20 -20
- package/dist/utils/CollectionPage/getErrorsForCollection.js +26 -25
- package/dist/utils/CollectionPage/getErrorsForCollection.test.js +23 -21
- package/dist/utils/CollectionPage/getQuickEditPage.js +32 -37
- package/dist/utils/CollectionPage/getQuickEditPage.test.js +22 -18
- package/dist/utils/CollectionPage/index.js +2 -2
- package/dist/utils/CollectionPage/mergeCollectionPages.js +42 -37
- package/dist/utils/CollectionPage/mergeCollectionPages.test.js +18 -48
- package/dist/utils/CollectionPage/removeCollectionPageEntry.js +7 -5
- package/dist/utils/CollectionPage/removeCollectionPageEntry.test.js +11 -11
- package/dist/utils/CollectionPage/setCollectionPageData.js +19 -12
- package/dist/utils/CollectionPage/setCollectionPageData.test.js +26 -26
- package/dist/utils/Component/addShowWhen.js +8 -4
- package/dist/utils/Component/addShowWhen.test.js +38 -38
- package/dist/utils/Component/applyToComponentTree.js +20 -19
- package/dist/utils/Component/applyToComponentTree.test.js +33 -28
- package/dist/utils/Component/cleanAttributes.js +13 -10
- package/dist/utils/Component/cleanAttributes.test.js +18 -17
- package/dist/utils/Component/elevateNestedComponents.js +7 -6
- package/dist/utils/Component/elevateNestedComponents.test.js +34 -34
- package/dist/utils/Component/getComponent.js +97 -90
- package/dist/utils/Component/getComponentTests/getComponent.autocomplete.test.js +18 -19
- package/dist/utils/Component/getComponentTests/getComponent.calculation.test.js +63 -50
- package/dist/utils/Component/getComponentTests/getComponent.checkboxes.test.js +49 -40
- package/dist/utils/Component/getComponentTests/getComponent.date.test.js +40 -30
- package/dist/utils/Component/getComponentTests/getComponent.details.test.js +19 -21
- package/dist/utils/Component/getComponentTests/getComponent.email.test.js +23 -18
- package/dist/utils/Component/getComponentTests/getComponent.file.test.js +27 -22
- package/dist/utils/Component/getComponentTests/getComponent.heading.test.js +11 -12
- package/dist/utils/Component/getComponentTests/getComponent.html.test.js +16 -18
- package/dist/utils/Component/getComponentTests/getComponent.insetText.test.js +9 -10
- package/dist/utils/Component/getComponentTests/getComponent.list.test.js +16 -18
- package/dist/utils/Component/getComponentTests/getComponent.multifile.test.js +27 -23
- package/dist/utils/Component/getComponentTests/getComponent.nested.test.js +175 -155
- package/dist/utils/Component/getComponentTests/getComponent.paragraph.test.js +16 -18
- package/dist/utils/Component/getComponentTests/getComponent.phoneNumber.test.js +23 -18
- package/dist/utils/Component/getComponentTests/getComponent.radios.test.js +73 -58
- package/dist/utils/Component/getComponentTests/getComponent.select.test.js +23 -18
- package/dist/utils/Component/getComponentTests/getComponent.text.test.js +23 -18
- package/dist/utils/Component/getComponentTests/getComponent.textArea.test.js +41 -34
- package/dist/utils/Component/getComponentTests/getComponent.time.test.js +32 -23
- package/dist/utils/Component/getComponentTests/getComponent.unknown.test.js +3 -3
- package/dist/utils/Component/getComponentTests/getComponent.warningText.test.js +9 -10
- package/dist/utils/Component/getDefaultValue.js +9 -7
- 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 +4 -2
- package/dist/utils/Component/isEditable.test.js +15 -14
- package/dist/utils/Component/optionIsSelected.js +4 -2
- package/dist/utils/Component/optionIsSelected.test.js +12 -12
- package/dist/utils/Component/setupContainerComponentsPath.js +31 -29
- package/dist/utils/Component/setupContainerComponentsPath.test.js +16 -16
- package/dist/utils/Component/showComponent.js +4 -3
- 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 +31 -20
- 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 +19 -14
- package/dist/utils/Condition/setupConditions.test.js +8 -8
- package/dist/utils/Container/getEditableComponents.js +6 -4
- package/dist/utils/Container/getEditableComponents.test.js +46 -44
- package/dist/utils/Container/index.js +2 -2
- package/dist/utils/Container/setupNesting.js +22 -16
- package/dist/utils/Container/setupNesting.test.js +31 -28
- package/dist/utils/Container/showContainer.js +8 -4
- package/dist/utils/Container/showContainer.test.js +31 -31
- package/dist/utils/Data/applyFormula.js +50 -40
- package/dist/utils/Data/applyFormula.test.js +26 -26
- package/dist/utils/Data/deleteValues.js +8 -4
- package/dist/utils/Data/deleteValues.test.js +11 -11
- package/dist/utils/Data/getAutocompleteSource.js +29 -20
- package/dist/utils/Data/getAutocompleteSource.test.js +87 -81
- package/dist/utils/Data/getDataPath.js +30 -20
- package/dist/utils/Data/getDataPath.test.js +20 -20
- package/dist/utils/Data/getOptions.js +34 -27
- package/dist/utils/Data/getOptions.test.js +28 -28
- package/dist/utils/Data/getSourceData.js +19 -6
- package/dist/utils/Data/getSourceData.test.js +81 -85
- package/dist/utils/Data/index.js +2 -2
- package/dist/utils/Data/nestInRefdataOptions.js +16 -9
- package/dist/utils/Data/nestInRefdataOptions.test.js +17 -17
- package/dist/utils/Data/refDataToOptions.js +15 -11
- package/dist/utils/Data/refDataToOptions.test.js +20 -20
- package/dist/utils/Data/setDataItem.js +8 -7
- package/dist/utils/Data/setDataItem.test.js +38 -38
- package/dist/utils/Data/setupFormData.js +22 -14
- package/dist/utils/Data/setupFormData.test.js +51 -52
- package/dist/utils/Data/setupRefDataUrlForComponent.js +28 -21
- package/dist/utils/Data/setupRefDataUrlForComponent.test.js +28 -28
- package/dist/utils/FormPage/applyConditionalProperties.js +10 -6
- package/dist/utils/FormPage/applyConditionalProperties.test.js +19 -16
- package/dist/utils/FormPage/getConditionalText.js +4 -4
- package/dist/utils/FormPage/getConditionalText.test.js +35 -35
- package/dist/utils/FormPage/getFormPage.js +17 -16
- package/dist/utils/FormPage/getFormPage.test.js +48 -49
- package/dist/utils/FormPage/getFormPages.js +13 -8
- package/dist/utils/FormPage/getFormPages.test.js +25 -22
- package/dist/utils/FormPage/getPageActions.js +17 -10
- package/dist/utils/FormPage/getPageActions.test.js +33 -33
- package/dist/utils/FormPage/getParagraphFromText.js +7 -5
- package/dist/utils/FormPage/getParagraphFromText.test.js +7 -7
- package/dist/utils/FormPage/index.js +5 -3
- package/dist/utils/FormPage/showFormPage.js +8 -4
- 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 +28 -21
- package/dist/utils/FormPage/useComponent.test.js +80 -78
- package/dist/utils/Format/formatData.js +1 -1
- package/dist/utils/Format/formatData.test.js +19 -19
- package/dist/utils/Format/formatDataForComponent.js +7 -6
- package/dist/utils/Format/formatDataForComponent.test.js +78 -50
- package/dist/utils/Format/formatDataForForm.js +8 -6
- package/dist/utils/Format/formatDataForForm.test.js +17 -14
- package/dist/utils/Format/formatDataForPage.js +5 -4
- package/dist/utils/Format/formatDataForPage.test.js +25 -20
- package/dist/utils/Format/index.js +2 -2
- package/dist/utils/Hub/getFormHub.js +2 -2
- package/dist/utils/Hub/getFormHub.test.js +32 -29
- package/dist/utils/Hub/index.js +2 -2
- package/dist/utils/Meta/constants.js +2 -2
- package/dist/utils/Meta/documents/getDocuments.js +4 -1
- package/dist/utils/Meta/documents/getDocuments.test.js +17 -25
- package/dist/utils/Meta/documents/index.js +2 -2
- package/dist/utils/Meta/documents/setDocumentsForField.js +17 -15
- package/dist/utils/Meta/documents/setDocumentsForField.test.js +35 -69
- 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 +53 -47
- 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 +21 -23
- package/dist/utils/Operate/runPageOperations.js +9 -9
- package/dist/utils/Operate/runPageOperations.test.js +37 -36
- 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 +28 -22
- 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 +5 -4
- 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 +14 -9
- package/dist/utils/Validate/additional/mustBeEarlierDateTime.test.js +42 -38
- 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 +40 -36
- package/dist/utils/Validate/additional/mustEnterAtLeastOne.js +5 -3
- package/dist/utils/Validate/additional/mustEnterAtLeastOne.test.js +17 -15
- 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 +4 -3
- package/dist/utils/Validate/additional/mustNotContainSql.test.js +15 -15
- package/dist/utils/Validate/additional/mustSelectOnlyOne.js +5 -3
- package/dist/utils/Validate/additional/mustSelectOnlyOne.test.js +27 -29
- package/dist/utils/Validate/additional/utils.js +24 -11
- package/dist/utils/Validate/index.js +2 -2
- package/dist/utils/Validate/validateCollection.js +27 -21
- package/dist/utils/Validate/validateCollection.test.js +77 -85
- package/dist/utils/Validate/validateComponent.js +23 -22
- package/dist/utils/Validate/validateComponent.test.js +165 -188
- package/dist/utils/Validate/validateContainer.js +21 -16
- package/dist/utils/Validate/validateContainer.test.js +56 -62
- package/dist/utils/Validate/validateDate.js +23 -17
- package/dist/utils/Validate/validateDate.test.js +32 -31
- package/dist/utils/Validate/validateEmail.js +9 -7
- package/dist/utils/Validate/validateEmail.test.js +26 -26
- package/dist/utils/Validate/validateMultifile.js +7 -5
- package/dist/utils/Validate/validateMultifile.test.js +18 -17
- package/dist/utils/Validate/validatePage.js +24 -20
- package/dist/utils/Validate/validatePage.test.js +215 -227
- package/dist/utils/Validate/validateRegex.js +8 -5
- package/dist/utils/Validate/validateRegex.test.js +17 -17
- package/dist/utils/Validate/validateRequired.js +7 -5
- package/dist/utils/Validate/validateRequired.test.js +19 -19
- package/dist/utils/Validate/validateTextArea.js +7 -5
- package/dist/utils/Validate/validateTextArea.test.js +21 -21
- package/dist/utils/Validate/validateTime.js +19 -12
- package/dist/utils/Validate/validateTime.test.js +27 -27
- package/dist/utils/index.js +10 -8
- package/package.json +1 -1
|
@@ -2,44 +2,36 @@
|
|
|
2
2
|
|
|
3
3
|
var _constants = require("../constants");
|
|
4
4
|
var _getDocuments = _interopRequireDefault(require("./getDocuments"));
|
|
5
|
-
function _interopRequireDefault(
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
6
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
7
|
+
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; }
|
|
8
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
9
|
+
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); }
|
|
10
|
+
describe('Utils.Meta.documents.get', function () {
|
|
11
|
+
it('should return an empty array if formData is null', function () {
|
|
8
12
|
expect((0, _getDocuments.default)(null)).toEqual([]);
|
|
9
13
|
});
|
|
10
|
-
it('should return an empty array if formData does not contain a meta property', ()
|
|
14
|
+
it('should return an empty array if formData does not contain a meta property', function () {
|
|
11
15
|
expect((0, _getDocuments.default)({})).toEqual([]);
|
|
12
16
|
});
|
|
13
|
-
it('should return an empty array if the meta property is undefined', ()
|
|
14
|
-
|
|
15
|
-
[_constants.META_PROPERTY]: undefined
|
|
16
|
-
};
|
|
17
|
+
it('should return an empty array if the meta property is undefined', function () {
|
|
18
|
+
var FORM_DATA = _defineProperty({}, _constants.META_PROPERTY, undefined);
|
|
17
19
|
expect((0, _getDocuments.default)(FORM_DATA)).toEqual([]);
|
|
18
20
|
});
|
|
19
|
-
it('should return an empty array if the meta property contains no documents property', ()
|
|
20
|
-
|
|
21
|
-
[_constants.META_PROPERTY]: {}
|
|
22
|
-
};
|
|
21
|
+
it('should return an empty array if the meta property contains no documents property', function () {
|
|
22
|
+
var FORM_DATA = _defineProperty({}, _constants.META_PROPERTY, {});
|
|
23
23
|
expect((0, _getDocuments.default)(FORM_DATA)).toEqual([]);
|
|
24
24
|
});
|
|
25
|
-
it('should return an empty array if the meta.documents property is undefined', ()
|
|
26
|
-
|
|
27
|
-
[_constants.META_PROPERTY]: {
|
|
28
|
-
[_constants.META_DOCUMENTS_PROPERTY]: undefined
|
|
29
|
-
}
|
|
30
|
-
};
|
|
25
|
+
it('should return an empty array if the meta.documents property is undefined', function () {
|
|
26
|
+
var FORM_DATA = _defineProperty({}, _constants.META_PROPERTY, _defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, undefined));
|
|
31
27
|
expect((0, _getDocuments.default)(FORM_DATA)).toEqual([]);
|
|
32
28
|
});
|
|
33
|
-
it('should return the meta.documents property if it exists', ()
|
|
34
|
-
|
|
29
|
+
it('should return the meta.documents property if it exists', function () {
|
|
30
|
+
var DOCUMENTS = [{
|
|
35
31
|
field: 'alpha',
|
|
36
32
|
url: 'http://alpha-bravo.com/files/charlie'
|
|
37
33
|
}];
|
|
38
|
-
|
|
39
|
-
[_constants.META_PROPERTY]: {
|
|
40
|
-
[_constants.META_DOCUMENTS_PROPERTY]: DOCUMENTS
|
|
41
|
-
}
|
|
42
|
-
};
|
|
34
|
+
var FORM_DATA = _defineProperty({}, _constants.META_PROPERTY, _defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, DOCUMENTS));
|
|
43
35
|
expect((0, _getDocuments.default)(FORM_DATA)).toEqual(DOCUMENTS);
|
|
44
36
|
});
|
|
45
37
|
});
|
|
@@ -7,10 +7,10 @@ exports.default = void 0;
|
|
|
7
7
|
var _constants = require("../constants");
|
|
8
8
|
var _setDocumentsForField = _interopRequireDefault(require("./setDocumentsForField"));
|
|
9
9
|
var _getDocuments = _interopRequireDefault(require("./getDocuments"));
|
|
10
|
-
function _interopRequireDefault(
|
|
10
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
11
|
// Local imports
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
var documents = {
|
|
14
14
|
setForField: _setDocumentsForField.default,
|
|
15
15
|
get: _getDocuments.default,
|
|
16
16
|
name: _constants.META_DOCUMENTS_PROPERTY
|
|
@@ -6,23 +6,25 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var _constants = require("../constants");
|
|
8
8
|
var _getDocuments = _interopRequireDefault(require("./getDocuments"));
|
|
9
|
-
function _interopRequireDefault(
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
9
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
11
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
12
|
+
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; }
|
|
13
|
+
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; }
|
|
14
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
15
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } // Local imports
|
|
16
|
+
var setDocumentsForField = function setDocumentsForField(documents, formData, field, allowMultiple) {
|
|
17
|
+
var changedDocuments = allowMultiple ? (0, _getDocuments.default)(formData) : (0, _getDocuments.default)(formData).filter(function (d) {
|
|
18
|
+
return d.field !== field;
|
|
19
|
+
});
|
|
14
20
|
if (Array.isArray(documents)) {
|
|
15
|
-
documents.forEach(document
|
|
16
|
-
changedDocuments.push({
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
});
|
|
21
|
+
documents.forEach(function (document) {
|
|
22
|
+
changedDocuments.push(_objectSpread(_objectSpread({}, document), {}, {
|
|
23
|
+
field: field
|
|
24
|
+
}));
|
|
20
25
|
});
|
|
21
26
|
}
|
|
22
|
-
|
|
23
|
-
return {
|
|
24
|
-
...existing,
|
|
25
|
-
[_constants.META_DOCUMENTS_PROPERTY]: changedDocuments
|
|
26
|
-
};
|
|
27
|
+
var existing = formData ? formData[_constants.META_PROPERTY] : undefined;
|
|
28
|
+
return _objectSpread(_objectSpread({}, existing), {}, _defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, changedDocuments));
|
|
27
29
|
};
|
|
28
30
|
var _default = exports.default = setDocumentsForField;
|
|
@@ -2,92 +2,58 @@
|
|
|
2
2
|
|
|
3
3
|
var _constants = require("../constants");
|
|
4
4
|
var _setDocumentsForField = _interopRequireDefault(require("./setDocumentsForField"));
|
|
5
|
-
function _interopRequireDefault(
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
6
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
7
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
8
|
+
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; }
|
|
9
|
+
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; }
|
|
10
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
11
|
+
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); }
|
|
12
|
+
describe('Utils.Meta.documents.add', function () {
|
|
13
|
+
var ALPHA_DOCUMENT = {
|
|
8
14
|
field: 'alpha',
|
|
9
15
|
url: 'http://alpha-bravo.com/files/alpha'
|
|
10
16
|
};
|
|
11
|
-
|
|
17
|
+
var BRAVO_DOCUMENT = {
|
|
12
18
|
field: 'bravo',
|
|
13
19
|
url: 'http://alpha-bravo.com/files/bravo'
|
|
14
20
|
};
|
|
15
|
-
it('should return an appropriately set up object if formData is null', ()
|
|
16
|
-
expect((0, _setDocumentsForField.default)([ALPHA_DOCUMENT], null, ALPHA_DOCUMENT.field)).toEqual({
|
|
17
|
-
[_constants.META_DOCUMENTS_PROPERTY]: [ALPHA_DOCUMENT]
|
|
18
|
-
});
|
|
21
|
+
it('should return an appropriately set up object if formData is null', function () {
|
|
22
|
+
expect((0, _setDocumentsForField.default)([ALPHA_DOCUMENT], null, ALPHA_DOCUMENT.field)).toEqual(_defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, [ALPHA_DOCUMENT]));
|
|
19
23
|
});
|
|
20
|
-
it('should add a new document to the array', ()
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
[_constants.META_DOCUMENTS_PROPERTY]: [ALPHA_DOCUMENT]
|
|
24
|
-
}
|
|
25
|
-
};
|
|
26
|
-
expect((0, _setDocumentsForField.default)([BRAVO_DOCUMENT], FORM_DATA, BRAVO_DOCUMENT.field)).toEqual({
|
|
27
|
-
[_constants.META_DOCUMENTS_PROPERTY]: [ALPHA_DOCUMENT, BRAVO_DOCUMENT]
|
|
28
|
-
});
|
|
24
|
+
it('should add a new document to the array', function () {
|
|
25
|
+
var FORM_DATA = _defineProperty({}, _constants.META_PROPERTY, _defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, [ALPHA_DOCUMENT]));
|
|
26
|
+
expect((0, _setDocumentsForField.default)([BRAVO_DOCUMENT], FORM_DATA, BRAVO_DOCUMENT.field)).toEqual(_defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, [ALPHA_DOCUMENT, BRAVO_DOCUMENT]));
|
|
29
27
|
});
|
|
30
|
-
it('should add multiple new documents to the array', ()
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
}
|
|
35
|
-
};
|
|
36
|
-
const SECOND_DOCUMENT = {
|
|
37
|
-
...ALPHA_DOCUMENT
|
|
38
|
-
};
|
|
39
|
-
expect((0, _setDocumentsForField.default)([ALPHA_DOCUMENT, SECOND_DOCUMENT], FORM_DATA, ALPHA_DOCUMENT.field)).toEqual({
|
|
40
|
-
[_constants.META_DOCUMENTS_PROPERTY]: [ALPHA_DOCUMENT, SECOND_DOCUMENT]
|
|
41
|
-
});
|
|
28
|
+
it('should add multiple new documents to the array', function () {
|
|
29
|
+
var FORM_DATA = _defineProperty({}, _constants.META_PROPERTY, _defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, []));
|
|
30
|
+
var SECOND_DOCUMENT = _objectSpread({}, ALPHA_DOCUMENT);
|
|
31
|
+
expect((0, _setDocumentsForField.default)([ALPHA_DOCUMENT, SECOND_DOCUMENT], FORM_DATA, ALPHA_DOCUMENT.field)).toEqual(_defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, [ALPHA_DOCUMENT, SECOND_DOCUMENT]));
|
|
42
32
|
});
|
|
43
|
-
it('should replace an existing document with the same field', ()
|
|
44
|
-
|
|
45
|
-
|
|
33
|
+
it('should replace an existing document with the same field', function () {
|
|
34
|
+
var NEW_URL = 'http://replacement.com/files/alpha';
|
|
35
|
+
var NEW_ALPHA = {
|
|
46
36
|
field: ALPHA_DOCUMENT.field,
|
|
47
37
|
url: NEW_URL
|
|
48
38
|
};
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
[_constants.META_DOCUMENTS_PROPERTY]: [ALPHA_DOCUMENT]
|
|
52
|
-
}
|
|
53
|
-
};
|
|
54
|
-
expect((0, _setDocumentsForField.default)([NEW_ALPHA], FORM_DATA, NEW_ALPHA.field)).toEqual({
|
|
55
|
-
[_constants.META_DOCUMENTS_PROPERTY]: [NEW_ALPHA]
|
|
56
|
-
});
|
|
39
|
+
var FORM_DATA = _defineProperty({}, _constants.META_PROPERTY, _defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, [ALPHA_DOCUMENT]));
|
|
40
|
+
expect((0, _setDocumentsForField.default)([NEW_ALPHA], FORM_DATA, NEW_ALPHA.field)).toEqual(_defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, [NEW_ALPHA]));
|
|
57
41
|
});
|
|
58
|
-
it('should add a document with the same field if allowMultiple is true', ()
|
|
59
|
-
|
|
60
|
-
|
|
42
|
+
it('should add a document with the same field if allowMultiple is true', function () {
|
|
43
|
+
var NEW_URL = 'http://replacement.com/files/alpha';
|
|
44
|
+
var NEW_ALPHA = {
|
|
61
45
|
field: ALPHA_DOCUMENT.field,
|
|
62
46
|
url: NEW_URL
|
|
63
47
|
};
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
[_constants.META_DOCUMENTS_PROPERTY]: [ALPHA_DOCUMENT]
|
|
67
|
-
}
|
|
68
|
-
};
|
|
69
|
-
expect((0, _setDocumentsForField.default)([NEW_ALPHA], FORM_DATA, NEW_ALPHA.field, true)).toEqual({
|
|
70
|
-
[_constants.META_DOCUMENTS_PROPERTY]: [ALPHA_DOCUMENT, NEW_ALPHA]
|
|
71
|
-
});
|
|
48
|
+
var FORM_DATA = _defineProperty({}, _constants.META_PROPERTY, _defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, [ALPHA_DOCUMENT]));
|
|
49
|
+
expect((0, _setDocumentsForField.default)([NEW_ALPHA], FORM_DATA, NEW_ALPHA.field, true)).toEqual(_defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, [ALPHA_DOCUMENT, NEW_ALPHA]));
|
|
72
50
|
});
|
|
73
|
-
it('should handle a null document being passed where a document with that field already exists', ()
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
[_constants.META_DOCUMENTS_PROPERTY]: [ALPHA_DOCUMENT]
|
|
77
|
-
}
|
|
78
|
-
};
|
|
79
|
-
expect((0, _setDocumentsForField.default)(null, FORM_DATA, ALPHA_DOCUMENT.field)).toEqual({
|
|
80
|
-
[_constants.META_DOCUMENTS_PROPERTY]: []
|
|
81
|
-
});
|
|
51
|
+
it('should handle a null document being passed where a document with that field already exists', function () {
|
|
52
|
+
var FORM_DATA = _defineProperty({}, _constants.META_PROPERTY, _defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, [ALPHA_DOCUMENT]));
|
|
53
|
+
expect((0, _setDocumentsForField.default)(null, FORM_DATA, ALPHA_DOCUMENT.field)).toEqual(_defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, []));
|
|
82
54
|
});
|
|
83
|
-
it('should handle a null document being passed where a document with that field does not already exist', ()
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
[_constants.META_DOCUMENTS_PROPERTY]: [ALPHA_DOCUMENT]
|
|
87
|
-
}
|
|
88
|
-
};
|
|
89
|
-
expect((0, _setDocumentsForField.default)(null, FORM_DATA, BRAVO_DOCUMENT.field)).toEqual({
|
|
90
|
-
[_constants.META_DOCUMENTS_PROPERTY]: [ALPHA_DOCUMENT]
|
|
91
|
-
});
|
|
55
|
+
it('should handle a null document being passed where a document with that field does not already exist', function () {
|
|
56
|
+
var FORM_DATA = _defineProperty({}, _constants.META_PROPERTY, _defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, [ALPHA_DOCUMENT]));
|
|
57
|
+
expect((0, _setDocumentsForField.default)(null, FORM_DATA, BRAVO_DOCUMENT.field)).toEqual(_defineProperty({}, _constants.META_DOCUMENTS_PROPERTY, [ALPHA_DOCUMENT]));
|
|
92
58
|
});
|
|
93
59
|
});
|
package/dist/utils/Meta/index.js
CHANGED
|
@@ -6,10 +6,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var _constants = require("./constants");
|
|
8
8
|
var _documents = _interopRequireDefault(require("./documents"));
|
|
9
|
-
function _interopRequireDefault(
|
|
9
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
10
|
// Local imports
|
|
11
11
|
|
|
12
|
-
|
|
12
|
+
var Meta = {
|
|
13
13
|
documents: _documents.default,
|
|
14
14
|
name: _constants.META_PROPERTY
|
|
15
15
|
};
|
|
@@ -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(
|
|
9
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
10
|
// Global imports.
|
|
11
11
|
|
|
12
12
|
// Local imports.
|
|
@@ -18,9 +18,9 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
|
|
|
18
18
|
* @param {object} data The page's formData.
|
|
19
19
|
* @returns true if the value is truthy, false if it isn't or doesn't exist.
|
|
20
20
|
*/
|
|
21
|
-
|
|
22
|
-
if (config
|
|
23
|
-
|
|
21
|
+
var checkValueIsTruthy = function checkValueIsTruthy(config, data) {
|
|
22
|
+
if (config !== null && config !== void 0 && config.field) {
|
|
23
|
+
var fieldPath = _copReactComponents.Utils.interpolateString(config.field, data);
|
|
24
24
|
return !!(0, _getSourceData.default)(data, fieldPath);
|
|
25
25
|
}
|
|
26
26
|
return false;
|
|
@@ -1,42 +1,42 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _checkValueIsTruthy = _interopRequireDefault(require("./checkValueIsTruthy"));
|
|
4
|
-
function _interopRequireDefault(
|
|
5
|
-
describe('Utils.Operate.checkValueIsTruthy', ()
|
|
6
|
-
|
|
4
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
5
|
+
describe('Utils.Operate.checkValueIsTruthy', function () {
|
|
6
|
+
var DATA = {
|
|
7
7
|
alpha: 'abc',
|
|
8
8
|
bravo: ''
|
|
9
9
|
};
|
|
10
|
-
it('Should return true is the value of the field is truthy', ()
|
|
11
|
-
|
|
10
|
+
it('Should return true is the value of the field is truthy', function () {
|
|
11
|
+
var CONFIG = {
|
|
12
12
|
field: 'alpha'
|
|
13
13
|
};
|
|
14
|
-
|
|
14
|
+
var result = (0, _checkValueIsTruthy.default)(CONFIG, DATA);
|
|
15
15
|
expect(result).toEqual(true);
|
|
16
16
|
});
|
|
17
|
-
it('Should return false if the value of the field is falsy', ()
|
|
18
|
-
|
|
17
|
+
it('Should return false if the value of the field is falsy', function () {
|
|
18
|
+
var CONFIG = {
|
|
19
19
|
field: 'bravo'
|
|
20
20
|
};
|
|
21
|
-
|
|
21
|
+
var result = (0, _checkValueIsTruthy.default)(CONFIG, DATA);
|
|
22
22
|
expect(result).toEqual(false);
|
|
23
23
|
});
|
|
24
|
-
it('Should return false if the field does not exist', ()
|
|
25
|
-
|
|
24
|
+
it('Should return false if the field does not exist', function () {
|
|
25
|
+
var CONFIG = {
|
|
26
26
|
field: 'charlie'
|
|
27
27
|
};
|
|
28
|
-
|
|
28
|
+
var result = (0, _checkValueIsTruthy.default)(CONFIG, DATA);
|
|
29
29
|
expect(result).toEqual(false);
|
|
30
30
|
});
|
|
31
|
-
it('Should return false when an invalid config is used', ()
|
|
32
|
-
|
|
31
|
+
it('Should return false when an invalid config is used', function () {
|
|
32
|
+
var result = (0, _checkValueIsTruthy.default)(null, DATA);
|
|
33
33
|
expect(result).toEqual(false);
|
|
34
34
|
});
|
|
35
|
-
it('Should return false when invalid data is used', ()
|
|
36
|
-
|
|
35
|
+
it('Should return false when invalid data is used', function () {
|
|
36
|
+
var CONFIG = {
|
|
37
37
|
field: 'alpha'
|
|
38
38
|
};
|
|
39
|
-
|
|
39
|
+
var result = (0, _checkValueIsTruthy.default)(CONFIG, null);
|
|
40
40
|
expect(result).toEqual(false);
|
|
41
41
|
});
|
|
42
42
|
});
|
|
@@ -10,9 +10,9 @@ exports.default = void 0;
|
|
|
10
10
|
* @param {object} data The page's formData.
|
|
11
11
|
* @param {function} onChange The page's onChange handler.
|
|
12
12
|
*/
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
if (config
|
|
13
|
+
var deleteValueInFormData = function deleteValueInFormData(config, data, onChange) {
|
|
14
|
+
var node = data;
|
|
15
|
+
if (config !== null && config !== void 0 && config.field && config !== null && config !== void 0 && config.component) {
|
|
16
16
|
delete node[config.field];
|
|
17
17
|
onChange({
|
|
18
18
|
target: {
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _deleteValueInFormData = _interopRequireDefault(require("./deleteValueInFormData"));
|
|
4
|
-
function _interopRequireDefault(
|
|
5
|
-
describe('Utils.Operate.deleteValueInFormData', ()
|
|
6
|
-
|
|
7
|
-
it('Should delete value from data', ()
|
|
8
|
-
|
|
4
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
5
|
+
describe('Utils.Operate.deleteValueInFormData', function () {
|
|
6
|
+
var ON_CHANGE = function ON_CHANGE() {};
|
|
7
|
+
it('Should delete value from data', function () {
|
|
8
|
+
var CONFIG = {
|
|
9
9
|
field: 'a',
|
|
10
10
|
component: 'A'
|
|
11
11
|
};
|
|
12
|
-
|
|
12
|
+
var DATA = {
|
|
13
13
|
a: '1',
|
|
14
14
|
b: '2'
|
|
15
15
|
};
|
|
@@ -18,12 +18,12 @@ describe('Utils.Operate.deleteValueInFormData', () => {
|
|
|
18
18
|
b: '2'
|
|
19
19
|
});
|
|
20
20
|
});
|
|
21
|
-
it('Should do nothing if value is absent', ()
|
|
22
|
-
|
|
21
|
+
it('Should do nothing if value is absent', function () {
|
|
22
|
+
var CONFIG = {
|
|
23
23
|
field: 'c',
|
|
24
24
|
component: 'C'
|
|
25
25
|
};
|
|
26
|
-
|
|
26
|
+
var DATA = {
|
|
27
27
|
a: '1',
|
|
28
28
|
b: '2'
|
|
29
29
|
};
|
|
@@ -33,9 +33,9 @@ describe('Utils.Operate.deleteValueInFormData', () => {
|
|
|
33
33
|
b: '2'
|
|
34
34
|
});
|
|
35
35
|
});
|
|
36
|
-
it('Should do nothing if config is null', ()
|
|
37
|
-
|
|
38
|
-
|
|
36
|
+
it('Should do nothing if config is null', function () {
|
|
37
|
+
var CONFIG = null;
|
|
38
|
+
var DATA = {
|
|
39
39
|
a: '1',
|
|
40
40
|
b: '2'
|
|
41
41
|
};
|
|
@@ -45,9 +45,9 @@ describe('Utils.Operate.deleteValueInFormData', () => {
|
|
|
45
45
|
b: '2'
|
|
46
46
|
});
|
|
47
47
|
});
|
|
48
|
-
it('Should do nothing if config is empty', ()
|
|
49
|
-
|
|
50
|
-
|
|
48
|
+
it('Should do nothing if config is empty', function () {
|
|
49
|
+
var CONFIG = {};
|
|
50
|
+
var DATA = {
|
|
51
51
|
a: '1',
|
|
52
52
|
b: '2'
|
|
53
53
|
};
|
|
@@ -6,17 +6,17 @@ 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(
|
|
9
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
10
|
// Global imports.
|
|
11
11
|
|
|
12
12
|
// Local imports.
|
|
13
13
|
|
|
14
|
-
|
|
15
|
-
if (config
|
|
16
|
-
|
|
17
|
-
config.fields.find(field
|
|
18
|
-
|
|
19
|
-
|
|
14
|
+
var getFirstOf = function getFirstOf(config, data) {
|
|
15
|
+
if (config !== null && config !== void 0 && config.fields) {
|
|
16
|
+
var fieldValue;
|
|
17
|
+
config.fields.find(function (field) {
|
|
18
|
+
var fieldPath = _copReactComponents.Utils.interpolateString(field, data);
|
|
19
|
+
var foundValue = (0, _getSourceData.default)(data, fieldPath);
|
|
20
20
|
if (foundValue) {
|
|
21
21
|
fieldValue = foundValue;
|
|
22
22
|
return true;
|
|
@@ -25,6 +25,6 @@ const getFirstOf = (config, data) => {
|
|
|
25
25
|
});
|
|
26
26
|
return fieldValue || (config.fallback ? _copReactComponents.Utils.interpolateString(config.fallback, data) : '');
|
|
27
27
|
}
|
|
28
|
-
return config
|
|
28
|
+
return (config === null || config === void 0 ? void 0 : config.value) || null;
|
|
29
29
|
};
|
|
30
30
|
var _default = exports.default = getFirstOf;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _getFirstOf = _interopRequireDefault(require("./getFirstOf"));
|
|
4
|
-
function _interopRequireDefault(
|
|
5
|
-
describe('Utils.Operate.getFirstOf', ()
|
|
6
|
-
|
|
4
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
5
|
+
describe('Utils.Operate.getFirstOf', function () {
|
|
6
|
+
var DATA = {
|
|
7
7
|
name: 'sam',
|
|
8
8
|
id: 1,
|
|
9
9
|
test: ['2', '3'],
|
|
@@ -12,75 +12,75 @@ describe('Utils.Operate.getFirstOf', () => {
|
|
|
12
12
|
otherIdDoc: '',
|
|
13
13
|
anotherMadeUpId: 789
|
|
14
14
|
};
|
|
15
|
-
it('Should handle interpolated field strings', ()
|
|
15
|
+
it('Should handle interpolated field strings', function () {
|
|
16
16
|
// eslint-disable-next-line no-template-curly-in-string
|
|
17
|
-
|
|
17
|
+
var CONFIG = {
|
|
18
18
|
fields: ['test[${id}]']
|
|
19
19
|
};
|
|
20
|
-
|
|
20
|
+
var result = (0, _getFirstOf.default)(CONFIG, DATA);
|
|
21
21
|
expect(result).toEqual(DATA.test[1]);
|
|
22
22
|
});
|
|
23
|
-
it('Should return the value provided in config if no field is specified', ()
|
|
24
|
-
|
|
23
|
+
it('Should return the value provided in config if no field is specified', function () {
|
|
24
|
+
var CONFIG = {
|
|
25
25
|
value: '2'
|
|
26
26
|
};
|
|
27
|
-
|
|
27
|
+
var result = (0, _getFirstOf.default)(CONFIG, DATA);
|
|
28
28
|
expect(result).toEqual(CONFIG.value);
|
|
29
29
|
});
|
|
30
|
-
it('Should return the fallback if the requested fields are not found', ()
|
|
30
|
+
it('Should return the fallback if the requested fields are not found', function () {
|
|
31
31
|
// eslint-disable-next-line no-template-curly-in-string
|
|
32
|
-
|
|
32
|
+
var CONFIG = {
|
|
33
33
|
value: '2',
|
|
34
34
|
fields: ['nonExistent'],
|
|
35
35
|
fallback: "Test ${name}"
|
|
36
36
|
};
|
|
37
|
-
|
|
38
|
-
expect(result).toEqual(
|
|
37
|
+
var result = (0, _getFirstOf.default)(CONFIG, DATA);
|
|
38
|
+
expect(result).toEqual("Test ".concat(DATA.name));
|
|
39
39
|
});
|
|
40
|
-
it('Should return the value of the passportNumber field given in config', ()
|
|
41
|
-
|
|
40
|
+
it('Should return the value of the passportNumber field given in config', function () {
|
|
41
|
+
var CONFIG = {
|
|
42
42
|
fields: ['passportNumber', 'anotherMadeUpId', 'otherIdDoc']
|
|
43
43
|
};
|
|
44
|
-
|
|
44
|
+
var result = (0, _getFirstOf.default)(CONFIG, DATA);
|
|
45
45
|
expect(result).toEqual(DATA.passportNumber);
|
|
46
46
|
});
|
|
47
|
-
it('Should return the value of the anotherMadeUpId field given in config', ()
|
|
48
|
-
|
|
47
|
+
it('Should return the value of the anotherMadeUpId field given in config', function () {
|
|
48
|
+
var CONFIG = {
|
|
49
49
|
fields: ['anotherMadeUpId', 'passportNumber', 'otherIdDoc']
|
|
50
50
|
};
|
|
51
|
-
|
|
51
|
+
var result = (0, _getFirstOf.default)(CONFIG, DATA);
|
|
52
52
|
expect(result).toEqual(DATA.anotherMadeUpId);
|
|
53
53
|
});
|
|
54
|
-
it('Should return the value of the otherIdDoc field given in config', ()
|
|
55
|
-
|
|
54
|
+
it('Should return the value of the otherIdDoc field given in config', function () {
|
|
55
|
+
var CONFIG = {
|
|
56
56
|
fields: ['otherIdDoc', 'passportNumber', 'anotherMadeUpId']
|
|
57
57
|
};
|
|
58
|
-
|
|
58
|
+
var result = (0, _getFirstOf.default)(CONFIG, DATA);
|
|
59
59
|
expect(result).toEqual(DATA.passportNumber);
|
|
60
60
|
});
|
|
61
|
-
it('Should return the value of the otherIdDoc field given in config, if it exists, otherwise next field next in the array', ()
|
|
62
|
-
|
|
61
|
+
it('Should return the value of the otherIdDoc field given in config, if it exists, otherwise next field next in the array', function () {
|
|
62
|
+
var CONFIG = {
|
|
63
63
|
fields: ['otherIdDoc', 'passportNumber', 'anotherMadeUpId']
|
|
64
64
|
};
|
|
65
|
-
|
|
65
|
+
var result = (0, _getFirstOf.default)(CONFIG, DATA);
|
|
66
66
|
expect(result).toEqual(DATA.passportNumber);
|
|
67
67
|
});
|
|
68
|
-
it('Should return no value if elements in config.fields are not found in data', ()
|
|
69
|
-
|
|
68
|
+
it('Should return no value if elements in config.fields are not found in data', function () {
|
|
69
|
+
var CONFIG = {
|
|
70
70
|
fields: ['otherIdDoc1', 'passportNumber1', 'anotherMadeUpId1']
|
|
71
71
|
};
|
|
72
|
-
|
|
72
|
+
var result = (0, _getFirstOf.default)(CONFIG, DATA);
|
|
73
73
|
expect(result).toEqual('');
|
|
74
74
|
});
|
|
75
|
-
it('Should return null when an invalid config is used', ()
|
|
76
|
-
|
|
75
|
+
it('Should return null when an invalid config is used', function () {
|
|
76
|
+
var result = (0, _getFirstOf.default)(null, DATA);
|
|
77
77
|
expect(result).toEqual(null);
|
|
78
78
|
});
|
|
79
|
-
it('Should return null when invalid data is used', ()
|
|
80
|
-
|
|
79
|
+
it('Should return null when invalid data is used', function () {
|
|
80
|
+
var CONFIG = {
|
|
81
81
|
field: 'a'
|
|
82
82
|
};
|
|
83
|
-
|
|
83
|
+
var result = (0, _getFirstOf.default)(CONFIG, null);
|
|
84
84
|
expect(result).toEqual(null);
|
|
85
85
|
});
|
|
86
86
|
});
|
|
@@ -6,16 +6,16 @@ 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(
|
|
9
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
10
|
// Global imports.
|
|
11
11
|
|
|
12
12
|
// Local imports.
|
|
13
13
|
|
|
14
|
-
|
|
15
|
-
if (config
|
|
14
|
+
var getValueOrField = function getValueOrField(config, data) {
|
|
15
|
+
if (config !== null && config !== void 0 && config.value) {
|
|
16
16
|
return config.value;
|
|
17
17
|
}
|
|
18
|
-
|
|
18
|
+
var path = _copReactComponents.Utils.interpolateString(config === null || config === void 0 ? void 0 : config.field, data);
|
|
19
19
|
return (0, _getSourceData.default)(data, path);
|
|
20
20
|
};
|
|
21
21
|
|
|
@@ -28,18 +28,18 @@ const getValueOrField = (config, data) => {
|
|
|
28
28
|
* @param {object} data A page's formData.
|
|
29
29
|
* @returns The index of the matching value if one exists, or null.
|
|
30
30
|
*/
|
|
31
|
-
|
|
31
|
+
var getIndexOfMatchingValueIn = function getIndexOfMatchingValueIn(config, data) {
|
|
32
32
|
if (!config || !data) {
|
|
33
33
|
return null;
|
|
34
34
|
}
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
35
|
+
var targetPath = _copReactComponents.Utils.interpolateString(config.target, data);
|
|
36
|
+
var target = (0, _getSourceData.default)(data, targetPath);
|
|
37
|
+
var value = getValueOrField(config, data);
|
|
38
|
+
var cutoff = getValueOrField(config.cutoff, data);
|
|
39
|
+
var ignore = getValueOrField(config.ignore, data);
|
|
40
|
+
var result = null;
|
|
41
41
|
if (target && value && Array.isArray(target)) {
|
|
42
|
-
target.every((entry, index)
|
|
42
|
+
target.every(function (entry, index) {
|
|
43
43
|
if (index === cutoff) {
|
|
44
44
|
return false;
|
|
45
45
|
}
|