@ukhomeoffice/cop-react-form-renderer 7.3.2-alpha.5 → 8.0.0-alpha
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/README.md +106 -32
- package/dist/components/CheckYourAnswers/Answer.d.ts +10 -0
- package/dist/components/CheckYourAnswers/CheckYourAnswers.d.ts +35 -0
- package/dist/components/CheckYourAnswers/index.d.ts +2 -0
- package/dist/components/CollectionPage/CollectionPage.d.ts +24 -0
- package/dist/components/CollectionPage/index.d.ts +1 -0
- package/dist/components/CollectionSummary/BannerStrip.d.ts +9 -0
- package/dist/components/CollectionSummary/CollectionSummary.d.ts +53 -0
- package/dist/components/CollectionSummary/Confirmation.d.ts +15 -0
- package/dist/components/CollectionSummary/RenderListView.d.ts +42 -0
- package/dist/components/CollectionSummary/SummaryCard.d.ts +62 -0
- package/dist/components/CollectionSummary/SummaryCardButtons.d.ts +21 -0
- package/dist/components/CollectionSummary/SummaryCardDetails.d.ts +14 -0
- package/dist/components/CollectionSummary/SummaryCardValidationContext.d.ts +9 -0
- package/dist/components/CollectionSummary/index.d.ts +2 -0
- package/dist/components/FormComponent/Collection.d.ts +39 -0
- package/dist/components/FormComponent/Container.d.ts +26 -0
- package/dist/components/FormComponent/FormComponent.d.ts +39 -0
- package/dist/components/FormComponent/helpers/addLabel.d.ts +7 -0
- package/dist/components/FormComponent/helpers/getComponentDisabled.d.ts +2 -0
- package/dist/components/FormComponent/helpers/getComponentError.d.ts +4 -0
- package/dist/components/FormComponent/helpers/getComponentFieldSet.d.ts +2 -0
- package/dist/components/FormComponent/helpers/index.d.ts +5 -0
- package/dist/components/FormComponent/index.d.ts +2 -0
- package/dist/components/FormPage/FormPage.d.ts +36 -0
- package/dist/components/FormPage/index.d.ts +2 -0
- package/dist/components/FormRenderer/FormRenderer.d.ts +39 -0
- package/dist/components/FormRenderer/handlers/cyaAction.d.ts +9 -0
- package/dist/components/FormRenderer/handlers/getPageId.d.ts +8 -0
- package/dist/components/FormRenderer/handlers/index.d.ts +6 -0
- package/dist/components/FormRenderer/handlers/navigate.d.ts +10 -0
- package/dist/components/FormRenderer/handlers/submissionError.d.ts +7 -0
- package/dist/components/FormRenderer/helpers/canActionProceed.d.ts +12 -0
- package/dist/components/FormRenderer/helpers/canCYASubmit.d.ts +10 -0
- package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.d.ts +2 -0
- package/dist/components/FormRenderer/helpers/clearOutUncompletedRoutes.d.ts +51 -0
- package/dist/components/FormRenderer/helpers/clearOutUncompletedRoutesUtils.d.ts +179 -0
- package/dist/components/FormRenderer/helpers/getCYA.d.ts +20 -0
- package/dist/components/FormRenderer/helpers/getFormState.d.ts +25 -0
- package/dist/components/FormRenderer/helpers/getNextPageId.d.ts +2 -0
- package/dist/components/FormRenderer/helpers/getPage.d.ts +9 -0
- package/dist/components/FormRenderer/helpers/getRelevantPages.d.ts +2 -0
- package/dist/components/FormRenderer/helpers/getSubmissionStatus.d.ts +2 -0
- package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.d.ts +10 -0
- package/dist/components/FormRenderer/helpers/index.d.ts +29 -0
- package/dist/components/FormRenderer/index.d.ts +2 -0
- package/dist/components/FormRenderer/onCYAAction.d.ts +6 -0
- package/dist/components/FormRenderer/onPageAction.d.ts +2 -0
- package/dist/components/FormRenderer/onTaskAction.d.ts +2 -0
- package/dist/components/PageActions/ActionButton.d.ts +7 -0
- package/dist/components/PageActions/PageActions.d.ts +7 -0
- package/dist/components/PageActions/index.d.ts +2 -0
- package/dist/components/SummaryList/GroupAction.d.ts +12 -0
- package/dist/components/SummaryList/RowAction.d.ts +12 -0
- package/dist/components/SummaryList/SummaryList.d.ts +28 -0
- package/dist/components/SummaryList/SummaryList.stories.d.ts +10 -0
- package/dist/components/SummaryList/SummaryListHeadingRow.d.ts +7 -0
- package/dist/components/SummaryList/SummaryListHeadingRowWithAction.d.ts +16 -0
- package/dist/components/SummaryList/SummaryListRow.d.ts +19 -0
- package/dist/components/SummaryList/SummaryListTitleRow.d.ts +7 -0
- package/dist/components/SummaryList/helpers/getGroupActionAttributes.d.ts +17 -0
- package/dist/components/SummaryList/helpers/getRowActionAttributes.d.ts +17 -0
- package/dist/components/SummaryList/helpers/index.d.ts +2 -0
- package/dist/components/SummaryList/index.d.ts +2 -0
- package/dist/components/TaskList/Task.d.ts +12 -0
- package/dist/components/TaskList/TaskList.d.ts +40 -0
- package/dist/components/TaskList/TaskState.d.ts +6 -0
- package/dist/components/TaskList/index.d.ts +2 -0
- package/dist/components/index.d.ts +8 -0
- package/dist/context/HooksContext/HooksContext.d.ts +23 -0
- package/dist/context/HooksContext/index.d.ts +3 -0
- package/dist/context/ValidationContext/ValidationContext.d.ts +7 -0
- package/dist/context/ValidationContext/index.d.ts +3 -0
- package/dist/context/index.d.ts +3 -0
- package/dist/hooks/index.d.ts +6 -0
- package/dist/hooks/useAxios.d.ts +2 -0
- package/dist/hooks/useGetRequest.d.ts +12 -0
- package/dist/hooks/useHooks.d.ts +2 -0
- package/dist/hooks/useRefData.d.ts +7 -0
- package/dist/hooks/useValidation.d.ts +2 -0
- package/dist/index.cjs +5 -0
- package/dist/index.css +1 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.js +6124 -81
- package/dist/models/CollectionLabels.d.ts +7 -0
- package/dist/models/ComponentTypes.d.ts +27 -0
- package/dist/models/EventTypes.d.ts +6 -0
- package/dist/models/FormPages.d.ts +6 -0
- package/dist/models/FormTypes.d.ts +10 -0
- package/dist/models/HubFormats.d.ts +5 -0
- package/dist/models/PageAction.d.ts +89 -0
- package/dist/models/TaskStates.d.ts +39 -0
- package/dist/models/index.d.ts +143 -0
- package/dist/setupTests.d.ts +14 -0
- package/dist/utils/CheckYourAnswers/getCYAAction.d.ts +20 -0
- package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.d.ts +22 -0
- package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.d.ts +22 -0
- package/dist/utils/CheckYourAnswers/getCYARow.d.ts +26 -0
- package/dist/utils/CheckYourAnswers/getCYARowForGroup.d.ts +17 -0
- package/dist/utils/CheckYourAnswers/getCYARowsForCollection.d.ts +2 -0
- package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.d.ts +23 -0
- package/dist/utils/CheckYourAnswers/getCYARowsForContainer.d.ts +2 -0
- package/dist/utils/CheckYourAnswers/getCYARowsForPage.d.ts +11 -0
- package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.d.ts +3 -0
- package/dist/utils/CheckYourAnswers/index.d.ts +5 -0
- package/dist/utils/CheckYourAnswers/showComponentCYA.d.ts +11 -0
- package/dist/utils/CollectionPage/addCollectionPageEntry.d.ts +12 -0
- package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.d.ts +13 -0
- package/dist/utils/CollectionPage/duplicateCollectionPageEntry.d.ts +13 -0
- package/dist/utils/CollectionPage/getCollectionPageActiveId.d.ts +14 -0
- package/dist/utils/CollectionPage/getCollectionPageActiveIndex.d.ts +15 -0
- package/dist/utils/CollectionPage/getCollectionPageData.d.ts +15 -0
- package/dist/utils/CollectionPage/getErrorsForCollection.d.ts +2 -0
- package/dist/utils/CollectionPage/getQuickEditPage.d.ts +40 -0
- package/dist/utils/CollectionPage/index.d.ts +13 -0
- package/dist/utils/CollectionPage/mergeCollectionPages.d.ts +13 -0
- package/dist/utils/CollectionPage/removeCollectionPageEntry.d.ts +11 -0
- package/dist/utils/CollectionPage/setCollectionPageData.d.ts +16 -0
- package/dist/utils/Component/addShowWhen.d.ts +13 -0
- package/dist/utils/Component/applyToComponentTree.d.ts +15 -0
- package/dist/utils/Component/cleanAttributes.d.ts +14 -0
- package/dist/utils/Component/elevateNestedComponents.d.ts +28 -0
- package/dist/utils/Component/getDefaultValue.d.ts +2 -0
- package/dist/utils/Component/getDefaultValueFromConfig.d.ts +2 -0
- package/dist/utils/Component/index.d.ts +12 -0
- package/dist/utils/Component/isEditable.d.ts +3 -0
- package/dist/utils/Component/optionIsSelected.d.ts +10 -0
- package/dist/utils/Component/setupContainerComponentsPath.d.ts +2 -0
- package/dist/utils/Component/showComponent.d.ts +2 -0
- package/dist/utils/Condition/index.d.ts +6 -0
- package/dist/utils/Condition/meetsAllConditions.d.ts +8 -0
- package/dist/utils/Condition/meetsCondition.d.ts +14 -0
- package/dist/utils/Condition/meetsOneCondition.d.ts +8 -0
- package/dist/utils/Condition/setupConditions.d.ts +2 -0
- package/dist/utils/Container/getEditableComponents.d.ts +7 -0
- package/dist/utils/Container/index.d.ts +6 -0
- package/dist/utils/Container/setupNesting.d.ts +2 -0
- package/dist/utils/Container/showContainer.d.ts +8 -0
- package/dist/utils/Data/applyFormula.d.ts +2 -0
- package/dist/utils/Data/deleteValues.d.ts +8 -0
- package/dist/utils/Data/getAutocompleteSource.d.ts +2 -0
- package/dist/utils/Data/getDataPath.d.ts +21 -0
- package/dist/utils/Data/getOptions.d.ts +2 -0
- package/dist/utils/Data/getSourceData.d.ts +17 -0
- package/dist/utils/Data/index.d.ts +15 -0
- package/dist/utils/Data/nestInRefdataOptions.d.ts +10 -0
- package/dist/utils/Data/refDataToOptions.d.ts +8 -0
- package/dist/utils/Data/setDataItem.d.ts +2 -0
- package/dist/utils/Data/setupFormData.d.ts +15 -0
- package/dist/utils/Data/setupRefDataUrlForComponent.d.ts +2 -0
- package/dist/utils/FormPage/applyConditionalProperties.d.ts +8 -0
- package/dist/utils/FormPage/getConditionalText.d.ts +23 -0
- package/dist/utils/FormPage/getFormPage.d.ts +9 -0
- package/dist/utils/FormPage/getFormPages.d.ts +9 -0
- package/dist/utils/FormPage/getPageActions.d.ts +13 -0
- package/dist/utils/FormPage/getParagraphFromText.d.ts +11 -0
- package/dist/utils/FormPage/index.d.ts +10 -0
- package/dist/utils/FormPage/showFormPage.d.ts +8 -0
- package/dist/utils/FormPage/showFormPageCYA.d.ts +8 -0
- package/dist/utils/FormPage/useComponent.d.ts +9 -0
- package/dist/utils/Format/formatData.d.ts +8 -0
- package/dist/utils/Format/formatDataForComponent.d.ts +15 -0
- package/dist/utils/Format/formatDataForForm.d.ts +8 -0
- package/dist/utils/Format/formatDataForPage.d.ts +15 -0
- package/dist/utils/Format/index.d.ts +7 -0
- package/dist/utils/Hub/getFormHub.d.ts +15 -0
- package/dist/utils/Hub/index.d.ts +4 -0
- package/dist/utils/Meta/constants.d.ts +2 -0
- package/dist/utils/Meta/documents/getDocuments.d.ts +2 -0
- package/dist/utils/Meta/documents/index.d.ts +6 -0
- package/dist/utils/Meta/documents/setDocumentsForField.d.ts +2 -0
- package/dist/utils/Meta/index.d.ts +9 -0
- package/dist/utils/Operate/checkValueIsTruthy.d.ts +9 -0
- package/dist/utils/Operate/deleteValueInFormData.d.ts +8 -0
- package/dist/utils/Operate/doesContainValue.d.ts +11 -0
- package/dist/utils/Operate/getFirstOf.d.ts +2 -0
- package/dist/utils/Operate/getIndexOfMatchingValueIn.d.ts +11 -0
- package/dist/utils/Operate/getLength.d.ts +11 -0
- package/dist/utils/Operate/index.d.ts +4 -0
- package/dist/utils/Operate/persistValueInFormData.d.ts +9 -0
- package/dist/utils/Operate/runPageOperations.d.ts +19 -0
- package/dist/utils/Operate/setValueInFormData.d.ts +2 -0
- package/dist/utils/Operate/shouldRun.d.ts +9 -0
- package/dist/utils/Validate/additional/conditionallyPermittedChange.d.ts +14 -0
- package/dist/utils/Validate/additional/conditionallyRequired.d.ts +11 -0
- package/dist/utils/Validate/additional/index.d.ts +2 -0
- package/dist/utils/Validate/additional/mustBeAfter.d.ts +14 -0
- package/dist/utils/Validate/additional/mustBeBefore.d.ts +14 -0
- package/dist/utils/Validate/additional/mustBeEarlierDateTime.d.ts +15 -0
- package/dist/utils/Validate/additional/mustBeGreaterThan.d.ts +7 -0
- package/dist/utils/Validate/additional/mustBeInTheFuture.d.ts +8 -0
- package/dist/utils/Validate/additional/mustBeInThePast.d.ts +9 -0
- package/dist/utils/Validate/additional/mustBeLessThan.d.ts +7 -0
- package/dist/utils/Validate/additional/mustBeLongerThan.d.ts +9 -0
- package/dist/utils/Validate/additional/mustBeNumbersOnly.d.ts +9 -0
- package/dist/utils/Validate/additional/mustBeOneOf.d.ts +8 -0
- package/dist/utils/Validate/additional/mustBeShorterThan.d.ts +9 -0
- package/dist/utils/Validate/additional/mustBeUniqueInCollection.d.ts +10 -0
- package/dist/utils/Validate/additional/mustEnterAtLeastOne.d.ts +9 -0
- package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.d.ts +7 -0
- package/dist/utils/Validate/additional/mustNotContainSql.d.ts +2 -0
- package/dist/utils/Validate/additional/mustSelectOnlyOne.d.ts +8 -0
- package/dist/utils/Validate/additional/utils.d.ts +4 -0
- package/dist/utils/Validate/index.d.ts +42 -0
- package/dist/utils/Validate/validateCollection.d.ts +9 -0
- package/dist/utils/Validate/validateComponent.d.ts +16 -0
- package/dist/utils/Validate/validateContainer.d.ts +12 -0
- package/dist/utils/Validate/validateDate.d.ts +29 -0
- package/dist/utils/Validate/validateEmail.d.ts +13 -0
- package/dist/utils/Validate/validateMultifile.d.ts +3 -0
- package/dist/utils/Validate/validateOnPageLoad.d.ts +1 -0
- package/dist/utils/Validate/validatePage.d.ts +8 -0
- package/dist/utils/Validate/validateRegex.d.ts +13 -0
- package/dist/utils/Validate/validateRequired.d.ts +9 -0
- package/dist/utils/Validate/validateTextArea.d.ts +13 -0
- package/dist/utils/Validate/validateTime.d.ts +20 -0
- package/dist/utils/canOverrideFieldRequired.d.ts +9 -0
- package/dist/utils/index.d.ts +140 -0
- package/package.json +81 -170
- package/LICENCE.md +0 -21
- package/dist/components/CheckYourAnswers/Answer.js +0 -59
- package/dist/components/CheckYourAnswers/Answer.test.js +0 -142
- package/dist/components/CheckYourAnswers/CheckYourAnswers.js +0 -252
- package/dist/components/CheckYourAnswers/CheckYourAnswers.scss +0 -43
- package/dist/components/CheckYourAnswers/CheckYourAnswers.stories.mdx +0 -409
- package/dist/components/CheckYourAnswers/CheckYourAnswers.test.js +0 -603
- package/dist/components/CheckYourAnswers/index.js +0 -10
- package/dist/components/CollectionPage/CollectionPage.js +0 -178
- package/dist/components/CollectionPage/CollectionPage.test.js +0 -507
- package/dist/components/CollectionPage/index.js +0 -10
- package/dist/components/CollectionSummary/BannerStrip.js +0 -65
- package/dist/components/CollectionSummary/BannerStrip.scss +0 -60
- package/dist/components/CollectionSummary/BannerStrip.test.js +0 -167
- package/dist/components/CollectionSummary/CollectionSummary.js +0 -362
- package/dist/components/CollectionSummary/CollectionSummary.scss +0 -26
- package/dist/components/CollectionSummary/CollectionSummary.test.js +0 -368
- package/dist/components/CollectionSummary/Confirmation.js +0 -65
- package/dist/components/CollectionSummary/Confirmation.scss +0 -26
- package/dist/components/CollectionSummary/Confirmation.test.js +0 -109
- package/dist/components/CollectionSummary/RenderListView.js +0 -162
- package/dist/components/CollectionSummary/RenderListView.scss +0 -295
- package/dist/components/CollectionSummary/RenderListView.test.js +0 -303
- package/dist/components/CollectionSummary/SummaryCard.js +0 -277
- package/dist/components/CollectionSummary/SummaryCard.scss +0 -114
- package/dist/components/CollectionSummary/SummaryCard.test.js +0 -1442
- package/dist/components/CollectionSummary/SummaryCardButtons.js +0 -76
- package/dist/components/CollectionSummary/SummaryCardButtons.test.js +0 -87
- package/dist/components/CollectionSummary/SummaryCardDetails.js +0 -206
- package/dist/components/CollectionSummary/SummaryCardDetails.scss +0 -216
- package/dist/components/CollectionSummary/SummaryCardDetails.test.js +0 -654
- package/dist/components/CollectionSummary/SummaryCardValidationContext.js +0 -79
- package/dist/components/CollectionSummary/SummaryCardValidationContext.test.js +0 -104
- package/dist/components/CollectionSummary/index.js +0 -10
- package/dist/components/FormComponent/Collection.js +0 -234
- package/dist/components/FormComponent/Collection.scss +0 -24
- package/dist/components/FormComponent/Collection.test.js +0 -934
- package/dist/components/FormComponent/Container.js +0 -130
- package/dist/components/FormComponent/Container.scss +0 -15
- package/dist/components/FormComponent/Container.test.js +0 -456
- package/dist/components/FormComponent/FormComponent.js +0 -238
- package/dist/components/FormComponent/FormComponent.stories.mdx +0 -186
- package/dist/components/FormComponent/FormComponent.test.js +0 -436
- package/dist/components/FormComponent/helpers/addLabel.js +0 -25
- package/dist/components/FormComponent/helpers/getComponentDisabled.js +0 -15
- package/dist/components/FormComponent/helpers/getComponentDisabled.test.js +0 -27
- package/dist/components/FormComponent/helpers/getComponentError.js +0 -23
- package/dist/components/FormComponent/helpers/getComponentError.test.js +0 -51
- package/dist/components/FormComponent/helpers/getComponentFieldSet.js +0 -11
- package/dist/components/FormComponent/helpers/getComponentFieldSet.test.js +0 -30
- package/dist/components/FormComponent/helpers/index.js +0 -35
- package/dist/components/FormComponent/index.js +0 -10
- package/dist/components/FormPage/FormPage.js +0 -212
- package/dist/components/FormPage/FormPage.scss +0 -7
- package/dist/components/FormPage/FormPage.stories.mdx +0 -157
- package/dist/components/FormPage/FormPage.test.js +0 -454
- package/dist/components/FormPage/index.js +0 -10
- package/dist/components/FormRenderer/FormRenderer.js +0 -426
- package/dist/components/FormRenderer/FormRenderer.scss +0 -5
- package/dist/components/FormRenderer/FormRenderer.stories.mdx +0 -178
- package/dist/components/FormRenderer/FormRenderer.test.js +0 -799
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/cop-reassign-task-to-rcc.json +0 -446
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-chained-component-show-whens-containerised.json +0 -120
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-chained-component-show-whens-dependent-component-nested-block.json +0 -113
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-chained-component-show-whens-dependent-component-nested.json +0 -106
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-chained-component-show-whens-refdata.json +0 -106
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-chained-component-show-whens-target-component-nested.json +0 -99
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-chained-component-show-whens.json +0 -106
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-chained-show-whens-page-hidden.json +0 -113
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-cop-airpax.json +0 -26408
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-cop-mandec.json +0 -9405
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-hidden-collection-component-dependent-on-external-data.json +0 -158
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-hidden-collection-component.json +0 -86
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-hidden-component-referring-to-collection.json +0 -173
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-hidden-component-referring-to-hidden-collection.json +0 -202
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-hidden-component-show-when-in-component-and-page.json +0 -63
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-hidden-component-with-nested-questions-visible-elsewhere.json +0 -118
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-hidden-component-with-nested-questions.json +0 -112
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-hidden-component.json +0 -58
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-hidden-containerised-component.json +0 -97
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-hidden-embedded-collection-component.json +0 -83
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-hidden-embedded-component.json +0 -55
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-hidden-entire-collection.json +0 -114
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-hidden-multilevel-containerised-component-leaf-hidden.json +0 -106
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-hidden-multilevel-containerised-component.json +0 -106
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-hidden-options.json +0 -99
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-hidden-page-collection.json +0 -128
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-hidden-page-component-used-elsewhere.json +0 -109
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-hidden-page-same-component-reused.json +0 -62
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-hidden-page.json +0 -96
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-nested-answers-hidden-by-option-visible-elsewhere.json +0 -113
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-nested-answers-hidden-by-option.json +0 -112
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-page-nested-component.json +0 -26003
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-page-nested-radio-component.json +0 -201
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-page-same-component-reused-one-shown.json +0 -75
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/forms/form-variance-breach.json +0 -4272
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/cop-airpax-carrier.json +0 -407
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/cop-airpax-change-what-happened-before.json +0 -300
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/cop-airpax-remove-photos-before.json +0 -384
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/cop-mandec-remove-business-interests-before.json +0 -140
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/cop-mandec-remove-criminality-before.json +0 -186
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/cop-mandec-remove-unspent-convictions-before.json +0 -143
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/cop-variance-breach-with-upload-files.json +0 -1264
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/data-chained-component-show-whens-containerised.json +0 -11
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/data-chained-component-show-whens-dependent-component-nested-block.json +0 -10
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/data-chained-component-show-whens-dependent-component-nested.json +0 -9
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/data-chained-component-show-whens-refdata.json +0 -11
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/data-chained-component-show-whens-target-component-nested.json +0 -9
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/data-chained-component-show-whens.json +0 -9
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/data-chained-show-whens-page-hidden.json +0 -9
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/data-hidden-collection-component-dependent-on-external-data.json +0 -26
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/data-hidden-collection-component.json +0 -15
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/data-hidden-component-referring-to-collection.json +0 -25
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/data-hidden-component-referring-to-hidden-collection.json +0 -26
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/data-hidden-component-show-when-in-component-and-page.json +0 -6
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/data-hidden-component-with-nested-questions-visible-elsewhere.json +0 -12
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/data-hidden-component-with-nested-questions.json +0 -12
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/data-hidden-component.json +0 -5
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/data-hidden-containerised-component.json +0 -11
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/data-hidden-embedded-collection-component.json +0 -15
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/data-hidden-embedded-component.json +0 -5
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/data-hidden-entire-collection.json +0 -20
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/data-hidden-multilevel-containerised-component-leaf-hidden.json +0 -14
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/data-hidden-multilevel-containerised-component.json +0 -14
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/data-hidden-options.json +0 -10
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/data-hidden-page-collection.json +0 -18
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/data-hidden-page-component-used-elsewhere.json +0 -9
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/data-hidden-page-same-component-reused.json +0 -6
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/data-hidden-page.json +0 -9
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/data-nested-answers-hidden-by-option-visible-elsewhere.json +0 -12
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/data-nested-answers-hidden-by-option.json +0 -12
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/data-page-nested-component.json +0 -63
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/data-page-nested-radio-component.json +0 -45
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/data-page-same-component-reused-one-shown.json +0 -8
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/input/reassign-to-rcc.json +0 -72
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/cop-airpax-change-what-happened-after.json +0 -280
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/cop-airpax-remove-photos-after.json +0 -355
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/cop-mandec-base-file.json +0 -80
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/cop-mandec-remove-business-interests-after.json +0 -122
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/cop-mandec-remove-criminality-after.json +0 -86
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/cop-mandec-remove-unspent-convictions-after.json +0 -127
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/data-chained-component-show-whens-containerised-removed.json +0 -11
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/data-chained-component-show-whens-dependent-component-nested-block-removed.json +0 -7
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/data-chained-component-show-whens-dependent-component-nested-removed.json +0 -7
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/data-chained-component-show-whens-refdata-removed.json +0 -7
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/data-chained-component-show-whens-removed.json +0 -7
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/data-chained-component-show-whens-target-component-nested-removed.json +0 -6
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/data-chained-show-whens-page-hidden-removed.json +0 -6
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/data-hidden-collection-component-dependent-on-external-data-removed.json +0 -23
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/data-hidden-collection-component-removed.json +0 -4
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/data-hidden-component-referring-to-collection-removed.json +0 -21
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/data-hidden-component-referring-to-hidden-collection-removed.json +0 -6
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/data-hidden-component-removed.json +0 -4
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/data-hidden-component-show-when-in-component-and-page-removed.json +0 -5
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/data-hidden-component-with-nested-questions-removed.json +0 -10
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/data-hidden-component-with-nested-questions-visible-elsewhere-removed.json +0 -11
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/data-hidden-containerised-component-removed.json +0 -10
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/data-hidden-embedded-collection-component-removed.json +0 -4
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/data-hidden-embedded-component-removed.json +0 -4
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/data-hidden-entire-collection-removed.json +0 -3
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/data-hidden-multilevel-containerised-component-leaf-hidden-removed.json +0 -13
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/data-hidden-multilevel-containerised-component-removed.json +0 -10
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/data-hidden-options-removed.json +0 -8
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/data-hidden-page-collection-removed.json +0 -15
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/data-hidden-page-component-used-elsewhere-removed.json +0 -5
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/data-hidden-page-removed.json +0 -4
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/data-hidden-page-same-component-reused-removed.json +0 -5
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/data-nested-answers-hidden-by-option-removed.json +0 -11
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/data-nested-answers-hidden-by-option-visible-elsewhere-removed.json +0 -12
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/data-page-nested-component.json +0 -63
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/data-page-nested-radio-component-removed.json +0 -45
- package/dist/components/FormRenderer/clear-uncompleted-routes/test-data/output/data-page-same-component-reused-one-shown-removed.json +0 -7
- package/dist/components/FormRenderer/handlers/cyaAction.js +0 -23
- package/dist/components/FormRenderer/handlers/getPageId.js +0 -15
- package/dist/components/FormRenderer/handlers/getPageId.test.js +0 -35
- package/dist/components/FormRenderer/handlers/handlers.test.js +0 -81
- package/dist/components/FormRenderer/handlers/index.js +0 -17
- package/dist/components/FormRenderer/handlers/navigate.js +0 -25
- package/dist/components/FormRenderer/handlers/submissionError.js +0 -18
- package/dist/components/FormRenderer/helpers/canActionProceed.js +0 -27
- package/dist/components/FormRenderer/helpers/canActionProceed.test.js +0 -84
- package/dist/components/FormRenderer/helpers/canCYASubmit.js +0 -17
- package/dist/components/FormRenderer/helpers/canCYASubmit.test.js +0 -75
- package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.js +0 -63
- package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.test.js +0 -191
- package/dist/components/FormRenderer/helpers/clearOutUncompletedRoutes.js +0 -338
- package/dist/components/FormRenderer/helpers/clearOutUncompletedRoutes.test.js +0 -434
- package/dist/components/FormRenderer/helpers/clearOutUncompletedRoutesUtils.js +0 -399
- package/dist/components/FormRenderer/helpers/clearOutUncompletedRoutesUtils.test.js +0 -559
- package/dist/components/FormRenderer/helpers/getCYA.js +0 -42
- package/dist/components/FormRenderer/helpers/getCYA.test.js +0 -46
- package/dist/components/FormRenderer/helpers/getFormState.js +0 -25
- package/dist/components/FormRenderer/helpers/getFormState.test.js +0 -60
- package/dist/components/FormRenderer/helpers/getNextPageId.js +0 -76
- package/dist/components/FormRenderer/helpers/getNextPageId.test.js +0 -292
- package/dist/components/FormRenderer/helpers/getPage.js +0 -27
- package/dist/components/FormRenderer/helpers/getPage.test.js +0 -45
- package/dist/components/FormRenderer/helpers/getRelevantPages.js +0 -27
- package/dist/components/FormRenderer/helpers/getRelevantPages.test.js +0 -70
- package/dist/components/FormRenderer/helpers/getSubmissionStatus.js +0 -65
- package/dist/components/FormRenderer/helpers/getSubmissionStatus.test.js +0 -309
- package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.js +0 -201
- package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.test.js +0 -473
- package/dist/components/FormRenderer/helpers/index.js +0 -33
- package/dist/components/FormRenderer/index.js +0 -10
- package/dist/components/FormRenderer/onCYAAction.js +0 -150
- package/dist/components/FormRenderer/onCYAAction.test.js +0 -741
- package/dist/components/FormRenderer/onPageAction.js +0 -227
- package/dist/components/FormRenderer/onPageAction.test.js +0 -960
- package/dist/components/FormRenderer/onTaskAction.js +0 -47
- package/dist/components/FormRenderer/onTaskAction.test.js +0 -247
- package/dist/components/PageActions/ActionButton.js +0 -48
- package/dist/components/PageActions/ActionButton.test.js +0 -73
- package/dist/components/PageActions/PageActions.js +0 -37
- package/dist/components/PageActions/PageActions.stories.mdx +0 -74
- package/dist/components/PageActions/PageActions.test.js +0 -106
- package/dist/components/PageActions/index.js +0 -10
- package/dist/components/SummaryList/GroupAction.js +0 -50
- package/dist/components/SummaryList/GroupAction.test.js +0 -86
- package/dist/components/SummaryList/RowAction.js +0 -48
- package/dist/components/SummaryList/RowAction.test.js +0 -86
- package/dist/components/SummaryList/SummaryList.js +0 -128
- package/dist/components/SummaryList/SummaryList.scss +0 -79
- package/dist/components/SummaryList/SummaryList.stories.mdx +0 -84
- package/dist/components/SummaryList/SummaryList.test.js +0 -504
- package/dist/components/SummaryList/SummaryListHeadingRow.js +0 -39
- package/dist/components/SummaryList/SummaryListHeadingRowWithAction.js +0 -65
- package/dist/components/SummaryList/SummaryListHeadingRowWithAction.scss +0 -38
- package/dist/components/SummaryList/SummaryListRow.js +0 -58
- package/dist/components/SummaryList/SummaryListTitleRow.js +0 -32
- package/dist/components/SummaryList/helpers/getGroupActionAttributes.js +0 -29
- package/dist/components/SummaryList/helpers/getGroupActionAttributes.test.js +0 -72
- package/dist/components/SummaryList/helpers/getRowActionAttributes.js +0 -29
- package/dist/components/SummaryList/helpers/getRowActionAttributes.test.js +0 -72
- package/dist/components/SummaryList/helpers/index.js +0 -14
- package/dist/components/SummaryList/index.js +0 -10
- package/dist/components/TaskList/Task.js +0 -62
- package/dist/components/TaskList/Task.test.js +0 -176
- package/dist/components/TaskList/TaskList.js +0 -175
- package/dist/components/TaskList/TaskList.scss +0 -123
- package/dist/components/TaskList/TaskList.stories.mdx +0 -164
- package/dist/components/TaskList/TaskList.test.js +0 -535
- package/dist/components/TaskList/TaskState.js +0 -37
- package/dist/components/TaskList/TaskState.test.js +0 -95
- package/dist/components/TaskList/index.js +0 -10
- package/dist/components/index.js +0 -56
- package/dist/context/HooksContext/HooksContext.js +0 -122
- package/dist/context/HooksContext/HooksContext.test.js +0 -45
- package/dist/context/HooksContext/index.js +0 -16
- package/dist/context/ValidationContext/ValidationContext.js +0 -98
- package/dist/context/ValidationContext/ValidationContext.test.js +0 -107
- package/dist/context/ValidationContext/index.js +0 -16
- package/dist/context/index.js +0 -21
- package/dist/hooks/index.js +0 -55
- package/dist/hooks/useAxios.js +0 -36
- package/dist/hooks/useGetRequest.js +0 -89
- package/dist/hooks/useHooks.js +0 -15
- package/dist/hooks/useRefData.js +0 -62
- package/dist/hooks/useValidation.js +0 -15
- package/dist/json/actions.json +0 -17
- package/dist/json/actionsNoSave.json +0 -17
- package/dist/json/addressDetails.json +0 -149
- package/dist/json/areYouACivilServant.json +0 -7
- package/dist/json/firstForm.json +0 -94
- package/dist/json/grade.json +0 -108
- package/dist/json/group.data.json +0 -21
- package/dist/json/group.json +0 -402
- package/dist/json/groupOfRow.json +0 -137
- package/dist/json/groupOfRowData.json +0 -15
- package/dist/json/port.json +0 -346
- package/dist/json/saveAndContinue.json +0 -98
- package/dist/json/sublocation.json +0 -859
- package/dist/json/taskList.json +0 -265
- package/dist/json/team.json +0 -17351
- package/dist/json/terminal.json +0 -81
- package/dist/json/userProfile.data.json +0 -21
- package/dist/json/userProfile.json +0 -276
- package/dist/models/CollectionLabels.js +0 -15
- package/dist/models/ComponentTypes.js +0 -58
- package/dist/models/EventTypes.js +0 -16
- package/dist/models/FormPages.js +0 -16
- package/dist/models/FormTypes.js +0 -24
- package/dist/models/HubFormats.js +0 -14
- package/dist/models/PageAction.js +0 -65
- package/dist/models/TaskStates.js +0 -46
- package/dist/models/index.js +0 -77
- package/dist/setupTests.js +0 -54
- package/dist/utils/CheckYourAnswers/getCYAAction.js +0 -44
- package/dist/utils/CheckYourAnswers/getCYAAction.test.js +0 -120
- package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.js +0 -57
- package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.test.js +0 -162
- package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.js +0 -66
- package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.test.js +0 -198
- package/dist/utils/CheckYourAnswers/getCYARow.js +0 -58
- package/dist/utils/CheckYourAnswers/getCYARow.test.js +0 -373
- package/dist/utils/CheckYourAnswers/getCYARowForGroup.js +0 -69
- package/dist/utils/CheckYourAnswers/getCYARowForGroup.test.js +0 -70
- package/dist/utils/CheckYourAnswers/getCYARowsForCollection.js +0 -71
- package/dist/utils/CheckYourAnswers/getCYARowsForCollection.test.js +0 -285
- package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.js +0 -237
- package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.test.js +0 -844
- package/dist/utils/CheckYourAnswers/getCYARowsForContainer.js +0 -45
- package/dist/utils/CheckYourAnswers/getCYARowsForContainer.test.js +0 -535
- package/dist/utils/CheckYourAnswers/getCYARowsForPage.js +0 -72
- package/dist/utils/CheckYourAnswers/getCYARowsForPage.test.js +0 -343
- package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.js +0 -42
- package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.test.js +0 -56
- package/dist/utils/CheckYourAnswers/index.js +0 -15
- package/dist/utils/CheckYourAnswers/showComponentCYA.js +0 -53
- package/dist/utils/CheckYourAnswers/showComponentCYA.test.js +0 -149
- package/dist/utils/CollectionPage/addCollectionPageEntry.js +0 -23
- package/dist/utils/CollectionPage/addCollectionPageEntry.test.js +0 -17
- package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.js +0 -26
- package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.test.js +0 -70
- package/dist/utils/CollectionPage/duplicateCollectionPageEntry.js +0 -51
- package/dist/utils/CollectionPage/duplicateCollectionPageEntry.test.js +0 -125
- package/dist/utils/CollectionPage/getCollectionPageActiveId.js +0 -24
- package/dist/utils/CollectionPage/getCollectionPageActiveId.test.js +0 -26
- package/dist/utils/CollectionPage/getCollectionPageActiveIndex.js +0 -44
- package/dist/utils/CollectionPage/getCollectionPageActiveIndex.test.js +0 -88
- package/dist/utils/CollectionPage/getCollectionPageData.js +0 -53
- package/dist/utils/CollectionPage/getCollectionPageData.test.js +0 -103
- package/dist/utils/CollectionPage/getErrorsForCollection.js +0 -55
- package/dist/utils/CollectionPage/getErrorsForCollection.test.js +0 -154
- package/dist/utils/CollectionPage/getQuickEditPage.js +0 -122
- package/dist/utils/CollectionPage/getQuickEditPage.test.js +0 -143
- package/dist/utils/CollectionPage/index.js +0 -33
- package/dist/utils/CollectionPage/mergeCollectionPages.js +0 -128
- package/dist/utils/CollectionPage/mergeCollectionPages.test.js +0 -198
- package/dist/utils/CollectionPage/removeCollectionPageEntry.js +0 -36
- package/dist/utils/CollectionPage/removeCollectionPageEntry.test.js +0 -62
- package/dist/utils/CollectionPage/setCollectionPageData.js +0 -60
- package/dist/utils/CollectionPage/setCollectionPageData.test.js +0 -182
- package/dist/utils/Component/addShowWhen.js +0 -43
- package/dist/utils/Component/addShowWhen.test.js +0 -217
- package/dist/utils/Component/applyToComponentTree.js +0 -68
- package/dist/utils/Component/applyToComponentTree.test.js +0 -125
- package/dist/utils/Component/cleanAttributes.js +0 -42
- package/dist/utils/Component/cleanAttributes.test.js +0 -67
- package/dist/utils/Component/elevateNestedComponents.js +0 -58
- package/dist/utils/Component/elevateNestedComponents.test.js +0 -305
- package/dist/utils/Component/getComponent.js +0 -305
- package/dist/utils/Component/getComponentTests/getComponent.autocomplete.test.js +0 -73
- package/dist/utils/Component/getComponentTests/getComponent.calculation.test.js +0 -251
- package/dist/utils/Component/getComponentTests/getComponent.checkboxes.test.js +0 -156
- package/dist/utils/Component/getComponentTests/getComponent.date.test.js +0 -104
- package/dist/utils/Component/getComponentTests/getComponent.details.test.js +0 -56
- package/dist/utils/Component/getComponentTests/getComponent.email.test.js +0 -60
- package/dist/utils/Component/getComponentTests/getComponent.file.test.js +0 -60
- package/dist/utils/Component/getComponentTests/getComponent.heading.test.js +0 -31
- package/dist/utils/Component/getComponentTests/getComponent.html.test.js +0 -42
- package/dist/utils/Component/getComponentTests/getComponent.insetText.test.js +0 -29
- package/dist/utils/Component/getComponentTests/getComponent.list.test.js +0 -47
- package/dist/utils/Component/getComponentTests/getComponent.multifile.test.js +0 -66
- package/dist/utils/Component/getComponentTests/getComponent.nested.test.js +0 -211
- package/dist/utils/Component/getComponentTests/getComponent.paragraph.test.js +0 -46
- package/dist/utils/Component/getComponentTests/getComponent.phoneNumber.test.js +0 -60
- package/dist/utils/Component/getComponentTests/getComponent.radios.test.js +0 -221
- package/dist/utils/Component/getComponentTests/getComponent.select.test.js +0 -62
- package/dist/utils/Component/getComponentTests/getComponent.text.test.js +0 -60
- package/dist/utils/Component/getComponentTests/getComponent.textArea.test.js +0 -104
- package/dist/utils/Component/getComponentTests/getComponent.time.test.js +0 -80
- package/dist/utils/Component/getComponentTests/getComponent.unknown.test.js +0 -14
- package/dist/utils/Component/getComponentTests/getComponent.warningText.test.js +0 -29
- package/dist/utils/Component/getDefaultValue.js +0 -22
- package/dist/utils/Component/getDefaultValue.test.js +0 -62
- package/dist/utils/Component/getDefaultValueFromConfig.js +0 -106
- package/dist/utils/Component/getDefaultValueFromConfig.test.js +0 -141
- package/dist/utils/Component/index.js +0 -29
- package/dist/utils/Component/isEditable.js +0 -13
- package/dist/utils/Component/isEditable.test.js +0 -42
- package/dist/utils/Component/optionIsSelected.js +0 -25
- package/dist/utils/Component/optionIsSelected.test.js +0 -69
- package/dist/utils/Component/setupContainerComponentsPath.js +0 -35
- package/dist/utils/Component/setupContainerComponentsPath.test.js +0 -79
- package/dist/utils/Component/showComponent.js +0 -25
- package/dist/utils/Component/showComponent.test.js +0 -157
- package/dist/utils/Component/wrapInFormGroup.js +0 -26
- package/dist/utils/Condition/index.js +0 -17
- package/dist/utils/Condition/meetsAllConditions.js +0 -44
- package/dist/utils/Condition/meetsAllConditions.test.js +0 -109
- package/dist/utils/Condition/meetsCondition.js +0 -165
- package/dist/utils/Condition/meetsCondition.test.js +0 -899
- package/dist/utils/Condition/meetsOneCondition.js +0 -32
- package/dist/utils/Condition/meetsOneCondition.test.js +0 -101
- package/dist/utils/Condition/setupConditions.js +0 -36
- package/dist/utils/Condition/setupConditions.test.js +0 -34
- package/dist/utils/Container/getEditableComponents.js +0 -29
- package/dist/utils/Container/getEditableComponents.test.js +0 -134
- package/dist/utils/Container/index.js +0 -17
- package/dist/utils/Container/setupNesting.js +0 -53
- package/dist/utils/Container/setupNesting.test.js +0 -143
- package/dist/utils/Container/showContainer.js +0 -52
- package/dist/utils/Container/showContainer.test.js +0 -179
- package/dist/utils/Data/applyFormula.js +0 -90
- package/dist/utils/Data/applyFormula.test.js +0 -264
- package/dist/utils/Data/deleteValues.js +0 -19
- package/dist/utils/Data/deleteValues.test.js +0 -58
- package/dist/utils/Data/getAutocompleteSource.js +0 -87
- package/dist/utils/Data/getAutocompleteSource.test.js +0 -335
- package/dist/utils/Data/getDataPath.js +0 -66
- package/dist/utils/Data/getDataPath.test.js +0 -49
- package/dist/utils/Data/getOptions.js +0 -86
- package/dist/utils/Data/getOptions.test.js +0 -279
- package/dist/utils/Data/getSourceData.js +0 -44
- package/dist/utils/Data/getSourceData.test.js +0 -158
- package/dist/utils/Data/index.js +0 -35
- package/dist/utils/Data/nestInRefdataOptions.js +0 -47
- package/dist/utils/Data/nestInRefdataOptions.test.js +0 -237
- package/dist/utils/Data/refDataToOptions.js +0 -44
- package/dist/utils/Data/refDataToOptions.test.js +0 -197
- package/dist/utils/Data/setDataItem.js +0 -26
- package/dist/utils/Data/setDataItem.test.js +0 -136
- package/dist/utils/Data/setupFormData.js +0 -49
- package/dist/utils/Data/setupFormData.test.js +0 -215
- package/dist/utils/Data/setupRefDataUrlForComponent.js +0 -44
- package/dist/utils/Data/setupRefDataUrlForComponent.test.js +0 -150
- package/dist/utils/FormPage/applyConditionalProperties.js +0 -34
- package/dist/utils/FormPage/applyConditionalProperties.test.js +0 -61
- package/dist/utils/FormPage/getConditionalText.js +0 -55
- package/dist/utils/FormPage/getConditionalText.test.js +0 -163
- package/dist/utils/FormPage/getFormPage.js +0 -54
- package/dist/utils/FormPage/getFormPage.test.js +0 -206
- package/dist/utils/FormPage/getFormPages.js +0 -30
- package/dist/utils/FormPage/getFormPages.test.js +0 -97
- package/dist/utils/FormPage/getPageActions.js +0 -58
- package/dist/utils/FormPage/getPageActions.test.js +0 -115
- package/dist/utils/FormPage/getParagraphFromText.js +0 -21
- package/dist/utils/FormPage/getParagraphFromText.test.js +0 -28
- package/dist/utils/FormPage/index.js +0 -24
- package/dist/utils/FormPage/showFormPage.js +0 -52
- package/dist/utils/FormPage/showFormPage.test.js +0 -181
- package/dist/utils/FormPage/showFormPageCYA.js +0 -23
- package/dist/utils/FormPage/showFormPageCYA.test.js +0 -29
- package/dist/utils/FormPage/useComponent.js +0 -83
- package/dist/utils/FormPage/useComponent.test.js +0 -216
- package/dist/utils/Format/formatData.js +0 -27
- package/dist/utils/Format/formatData.test.js +0 -46
- package/dist/utils/Format/formatDataForComponent.js +0 -35
- package/dist/utils/Format/formatDataForComponent.test.js +0 -114
- package/dist/utils/Format/formatDataForForm.js +0 -27
- package/dist/utils/Format/formatDataForForm.test.js +0 -79
- package/dist/utils/Format/formatDataForPage.js +0 -31
- package/dist/utils/Format/formatDataForPage.test.js +0 -94
- package/dist/utils/Format/index.js +0 -21
- package/dist/utils/Hub/getFormHub.js +0 -40
- package/dist/utils/Hub/getFormHub.test.js +0 -105
- package/dist/utils/Hub/index.js +0 -15
- package/dist/utils/Meta/constants.js +0 -9
- package/dist/utils/Meta/documents/getDocuments.js +0 -15
- package/dist/utils/Meta/documents/getDocuments.test.js +0 -46
- package/dist/utils/Meta/documents/index.js +0 -19
- package/dist/utils/Meta/documents/setDocumentsForField.js +0 -30
- package/dist/utils/Meta/documents/setDocumentsForField.test.js +0 -97
- package/dist/utils/Meta/index.js +0 -17
- package/dist/utils/Operate/checkValueIsTruthy.js +0 -29
- package/dist/utils/Operate/checkValueIsTruthy.test.js +0 -43
- package/dist/utils/Operate/deleteValueInFormData.js +0 -27
- package/dist/utils/Operate/deleteValueInFormData.test.js +0 -61
- package/dist/utils/Operate/doesContainValue.js +0 -35
- package/dist/utils/Operate/doesContainValue.test.js +0 -76
- package/dist/utils/Operate/getFirstOf.js +0 -31
- package/dist/utils/Operate/getFirstOf.test.js +0 -87
- package/dist/utils/Operate/getIndexOfMatchingValueIn.js +0 -68
- package/dist/utils/Operate/getIndexOfMatchingValueIn.test.js +0 -158
- package/dist/utils/Operate/getLength.js +0 -51
- package/dist/utils/Operate/getLength.test.js +0 -90
- package/dist/utils/Operate/index.js +0 -13
- package/dist/utils/Operate/persistValueInFormData.js +0 -40
- package/dist/utils/Operate/persistValueInFormData.test.js +0 -118
- package/dist/utils/Operate/runPageOperations.js +0 -75
- package/dist/utils/Operate/runPageOperations.test.js +0 -105
- package/dist/utils/Operate/setValueInFormData.js +0 -22
- package/dist/utils/Operate/setValueInFormData.test.js +0 -45
- package/dist/utils/Operate/shouldRun.js +0 -57
- package/dist/utils/Operate/shouldRun.test.js +0 -65
- package/dist/utils/Validate/additional/conditionallyPermittedChange.js +0 -26
- package/dist/utils/Validate/additional/conditionallyPermittedChange.test.js +0 -34
- package/dist/utils/Validate/additional/conditionallyRequired.js +0 -24
- package/dist/utils/Validate/additional/conditionallyRequired.test.js +0 -74
- package/dist/utils/Validate/additional/index.js +0 -74
- package/dist/utils/Validate/additional/index.test.js +0 -130
- package/dist/utils/Validate/additional/mustBeAfter.js +0 -34
- package/dist/utils/Validate/additional/mustBeAfter.test.js +0 -109
- package/dist/utils/Validate/additional/mustBeBefore.js +0 -34
- package/dist/utils/Validate/additional/mustBeBefore.test.js +0 -77
- package/dist/utils/Validate/additional/mustBeEarlierDateTime.js +0 -57
- package/dist/utils/Validate/additional/mustBeEarlierDateTime.test.js +0 -128
- package/dist/utils/Validate/additional/mustBeGreaterThan.js +0 -22
- package/dist/utils/Validate/additional/mustBeGreaterThan.test.js +0 -57
- package/dist/utils/Validate/additional/mustBeInTheFuture.js +0 -33
- package/dist/utils/Validate/additional/mustBeInTheFuture.test.js +0 -32
- package/dist/utils/Validate/additional/mustBeInThePast.js +0 -36
- package/dist/utils/Validate/additional/mustBeInThePast.test.js +0 -32
- package/dist/utils/Validate/additional/mustBeLessThan.js +0 -22
- package/dist/utils/Validate/additional/mustBeLessThan.test.js +0 -53
- package/dist/utils/Validate/additional/mustBeLongerThan.js +0 -23
- package/dist/utils/Validate/additional/mustBeLongerThan.test.js +0 -49
- package/dist/utils/Validate/additional/mustBeNumbersOnly.js +0 -24
- package/dist/utils/Validate/additional/mustBeNumbersOnly.test.js +0 -45
- package/dist/utils/Validate/additional/mustBeOneOf.js +0 -22
- package/dist/utils/Validate/additional/mustBeOneOf.test.js +0 -37
- package/dist/utils/Validate/additional/mustBeShorterThan.js +0 -23
- package/dist/utils/Validate/additional/mustBeShorterThan.test.js +0 -49
- package/dist/utils/Validate/additional/mustBeUniqueInCollection.js +0 -40
- package/dist/utils/Validate/additional/mustBeUniqueInCollection.test.js +0 -163
- package/dist/utils/Validate/additional/mustEnterAtLeastOne.js +0 -26
- package/dist/utils/Validate/additional/mustEnterAtLeastOne.test.js +0 -37
- package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.js +0 -19
- package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.test.js +0 -37
- package/dist/utils/Validate/additional/mustNotContainSql.js +0 -19
- package/dist/utils/Validate/additional/mustNotContainSql.test.js +0 -33
- package/dist/utils/Validate/additional/mustSelectOnlyOne.js +0 -29
- package/dist/utils/Validate/additional/mustSelectOnlyOne.test.js +0 -55
- package/dist/utils/Validate/additional/utils.js +0 -35
- package/dist/utils/Validate/index.js +0 -33
- package/dist/utils/Validate/validateCollection.js +0 -50
- package/dist/utils/Validate/validateCollection.test.js +0 -134
- package/dist/utils/Validate/validateComponent.js +0 -126
- package/dist/utils/Validate/validateComponent.test.js +0 -435
- package/dist/utils/Validate/validateContainer.js +0 -52
- package/dist/utils/Validate/validateContainer.test.js +0 -115
- package/dist/utils/Validate/validateDate.js +0 -112
- package/dist/utils/Validate/validateDate.test.js +0 -133
- package/dist/utils/Validate/validateEmail.js +0 -45
- package/dist/utils/Validate/validateEmail.test.js +0 -78
- package/dist/utils/Validate/validateMultifile.js +0 -29
- package/dist/utils/Validate/validateMultifile.test.js +0 -46
- package/dist/utils/Validate/validateOnPageLoad.js +0 -24
- package/dist/utils/Validate/validateOnPageLoad.test.js +0 -89
- package/dist/utils/Validate/validatePage.js +0 -56
- package/dist/utils/Validate/validatePage.test.js +0 -795
- package/dist/utils/Validate/validateRegex.js +0 -41
- package/dist/utils/Validate/validateRegex.test.js +0 -43
- package/dist/utils/Validate/validateRequired.js +0 -37
- package/dist/utils/Validate/validateRequired.test.js +0 -64
- package/dist/utils/Validate/validateTextArea.js +0 -36
- package/dist/utils/Validate/validateTextArea.test.js +0 -71
- package/dist/utils/Validate/validateTime.js +0 -76
- package/dist/utils/Validate/validateTime.test.js +0 -116
- package/dist/utils/canOverrideFieldRequired.js +0 -23
- package/dist/utils/index.js +0 -42
package/dist/utils/Meta/index.js
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var _constants = require("./constants");
|
|
8
|
-
var _documents = _interopRequireDefault(require("./documents"));
|
|
9
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
|
-
// Local imports
|
|
11
|
-
|
|
12
|
-
const Meta = {
|
|
13
|
-
documents: _documents.default,
|
|
14
|
-
name: _constants.META_PROPERTY
|
|
15
|
-
};
|
|
16
|
-
var _default = exports.default = Meta;
|
|
17
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29uc3RhbnRzIiwicmVxdWlyZSIsIl9kb2N1bWVudHMiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiZSIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0IiwiTWV0YSIsImRvY3VtZW50cyIsIm5hbWUiLCJNRVRBX1BST1BFUlRZIiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3V0aWxzL01ldGEvaW5kZXguanMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gTG9jYWwgaW1wb3J0c1xuaW1wb3J0IHsgTUVUQV9QUk9QRVJUWSB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCBkb2N1bWVudHMgZnJvbSAnLi9kb2N1bWVudHMnO1xuXG5jb25zdCBNZXRhID0ge1xuICBkb2N1bWVudHMsXG4gIG5hbWU6IE1FVEFfUFJPUEVSVFlcbn07XG5cbmV4cG9ydCBkZWZhdWx0IE1ldGE7XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUNBLElBQUFBLFVBQUEsR0FBQUMsT0FBQTtBQUNBLElBQUFDLFVBQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUFvQyxTQUFBRSx1QkFBQUMsQ0FBQSxXQUFBQSxDQUFBLElBQUFBLENBQUEsQ0FBQUMsVUFBQSxHQUFBRCxDQUFBLEtBQUFFLE9BQUEsRUFBQUYsQ0FBQTtBQUZwQzs7QUFJQSxNQUFNRyxJQUFJLEdBQUc7RUFDWEMsU0FBUyxFQUFUQSxrQkFBUztFQUNUQyxJQUFJLEVBQUVDO0FBQ1IsQ0FBQztBQUFDLElBQUFDLFFBQUEsR0FBQUMsT0FBQSxDQUFBTixPQUFBLEdBRWFDLElBQUkiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var _copReactComponents = require("@ukhomeoffice/cop-react-components");
|
|
8
|
-
var _getSourceData = _interopRequireDefault(require("../Data/getSourceData"));
|
|
9
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
|
-
// Global imports.
|
|
11
|
-
|
|
12
|
-
// Local imports.
|
|
13
|
-
|
|
14
|
-
/**
|
|
15
|
-
* Simple operation to check if a given value in data is truthy or not.
|
|
16
|
-
* Supports getting a value from an interpolated field string.
|
|
17
|
-
* @param {object} config The operation config.
|
|
18
|
-
* @param {object} data The page's formData.
|
|
19
|
-
* @returns true if the value is truthy, false if it isn't or doesn't exist.
|
|
20
|
-
*/
|
|
21
|
-
const checkValueIsTruthy = (config, data) => {
|
|
22
|
-
if (config !== null && config !== void 0 && config.field) {
|
|
23
|
-
const fieldPath = _copReactComponents.Utils.interpolateString(config.field, data);
|
|
24
|
-
return !!(0, _getSourceData.default)(data, fieldPath);
|
|
25
|
-
}
|
|
26
|
-
return false;
|
|
27
|
-
};
|
|
28
|
-
var _default = exports.default = checkValueIsTruthy;
|
|
29
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29wUmVhY3RDb21wb25lbnRzIiwicmVxdWlyZSIsIl9nZXRTb3VyY2VEYXRhIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsImUiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsImNoZWNrVmFsdWVJc1RydXRoeSIsImNvbmZpZyIsImRhdGEiLCJmaWVsZCIsImZpZWxkUGF0aCIsIlV0aWxzIiwiaW50ZXJwb2xhdGVTdHJpbmciLCJnZXRTb3VyY2VEYXRhIiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3V0aWxzL09wZXJhdGUvY2hlY2tWYWx1ZUlzVHJ1dGh5LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIEdsb2JhbCBpbXBvcnRzLlxuaW1wb3J0IHsgVXRpbHMgfSBmcm9tICdAdWtob21lb2ZmaWNlL2NvcC1yZWFjdC1jb21wb25lbnRzJztcblxuLy8gTG9jYWwgaW1wb3J0cy5cbmltcG9ydCBnZXRTb3VyY2VEYXRhIGZyb20gJy4uL0RhdGEvZ2V0U291cmNlRGF0YSc7XG5cbi8qKlxuICogU2ltcGxlIG9wZXJhdGlvbiB0byBjaGVjayBpZiBhIGdpdmVuIHZhbHVlIGluIGRhdGEgaXMgdHJ1dGh5IG9yIG5vdC5cbiAqIFN1cHBvcnRzIGdldHRpbmcgYSB2YWx1ZSBmcm9tIGFuIGludGVycG9sYXRlZCBmaWVsZCBzdHJpbmcuXG4gKiBAcGFyYW0ge29iamVjdH0gY29uZmlnIFRoZSBvcGVyYXRpb24gY29uZmlnLlxuICogQHBhcmFtIHtvYmplY3R9IGRhdGEgVGhlIHBhZ2UncyBmb3JtRGF0YS5cbiAqIEByZXR1cm5zIHRydWUgaWYgdGhlIHZhbHVlIGlzIHRydXRoeSwgZmFsc2UgaWYgaXQgaXNuJ3Qgb3IgZG9lc24ndCBleGlzdC5cbiAqL1xuY29uc3QgY2hlY2tWYWx1ZUlzVHJ1dGh5ID0gKGNvbmZpZywgZGF0YSkgPT4ge1xuICBpZiAoY29uZmlnPy5maWVsZCkge1xuICAgIGNvbnN0IGZpZWxkUGF0aCA9IFV0aWxzLmludGVycG9sYXRlU3RyaW5nKGNvbmZpZy5maWVsZCwgZGF0YSk7XG4gICAgcmV0dXJuICEhZ2V0U291cmNlRGF0YShkYXRhLCBmaWVsZFBhdGgpO1xuICB9XG4gIHJldHVybiBmYWxzZTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IGNoZWNrVmFsdWVJc1RydXRoeTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0EsSUFBQUEsbUJBQUEsR0FBQUMsT0FBQTtBQUdBLElBQUFDLGNBQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUFrRCxTQUFBRSx1QkFBQUMsQ0FBQSxXQUFBQSxDQUFBLElBQUFBLENBQUEsQ0FBQUMsVUFBQSxHQUFBRCxDQUFBLEtBQUFFLE9BQUEsRUFBQUYsQ0FBQTtBQUpsRDs7QUFHQTs7QUFHQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU1HLGtCQUFrQixHQUFHQSxDQUFDQyxNQUFNLEVBQUVDLElBQUksS0FBSztFQUMzQyxJQUFJRCxNQUFNLGFBQU5BLE1BQU0sZUFBTkEsTUFBTSxDQUFFRSxLQUFLLEVBQUU7SUFDakIsTUFBTUMsU0FBUyxHQUFHQyx5QkFBSyxDQUFDQyxpQkFBaUIsQ0FBQ0wsTUFBTSxDQUFDRSxLQUFLLEVBQUVELElBQUksQ0FBQztJQUM3RCxPQUFPLENBQUMsQ0FBQyxJQUFBSyxzQkFBYSxFQUFDTCxJQUFJLEVBQUVFLFNBQVMsQ0FBQztFQUN6QztFQUNBLE9BQU8sS0FBSztBQUNkLENBQUM7QUFBQyxJQUFBSSxRQUFBLEdBQUFDLE9BQUEsQ0FBQVYsT0FBQSxHQUVhQyxrQkFBa0IiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _checkValueIsTruthy = _interopRequireDefault(require("./checkValueIsTruthy"));
|
|
4
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
5
|
-
describe('Utils.Operate.checkValueIsTruthy', () => {
|
|
6
|
-
const DATA = {
|
|
7
|
-
alpha: 'abc',
|
|
8
|
-
bravo: ''
|
|
9
|
-
};
|
|
10
|
-
it('Should return true is the value of the field is truthy', () => {
|
|
11
|
-
const CONFIG = {
|
|
12
|
-
field: 'alpha'
|
|
13
|
-
};
|
|
14
|
-
const result = (0, _checkValueIsTruthy.default)(CONFIG, DATA);
|
|
15
|
-
expect(result).toEqual(true);
|
|
16
|
-
});
|
|
17
|
-
it('Should return false if the value of the field is falsy', () => {
|
|
18
|
-
const CONFIG = {
|
|
19
|
-
field: 'bravo'
|
|
20
|
-
};
|
|
21
|
-
const result = (0, _checkValueIsTruthy.default)(CONFIG, DATA);
|
|
22
|
-
expect(result).toEqual(false);
|
|
23
|
-
});
|
|
24
|
-
it('Should return false if the field does not exist', () => {
|
|
25
|
-
const CONFIG = {
|
|
26
|
-
field: 'charlie'
|
|
27
|
-
};
|
|
28
|
-
const result = (0, _checkValueIsTruthy.default)(CONFIG, DATA);
|
|
29
|
-
expect(result).toEqual(false);
|
|
30
|
-
});
|
|
31
|
-
it('Should return false when an invalid config is used', () => {
|
|
32
|
-
const result = (0, _checkValueIsTruthy.default)(null, DATA);
|
|
33
|
-
expect(result).toEqual(false);
|
|
34
|
-
});
|
|
35
|
-
it('Should return false when invalid data is used', () => {
|
|
36
|
-
const CONFIG = {
|
|
37
|
-
field: 'alpha'
|
|
38
|
-
};
|
|
39
|
-
const result = (0, _checkValueIsTruthy.default)(CONFIG, null);
|
|
40
|
-
expect(result).toEqual(false);
|
|
41
|
-
});
|
|
42
|
-
});
|
|
43
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY2hlY2tWYWx1ZUlzVHJ1dGh5IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJlIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJkZXNjcmliZSIsIkRBVEEiLCJhbHBoYSIsImJyYXZvIiwiaXQiLCJDT05GSUciLCJmaWVsZCIsInJlc3VsdCIsImNoZWNrVmFsdWVJc1RydXRoeSIsImV4cGVjdCIsInRvRXF1YWwiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdXRpbHMvT3BlcmF0ZS9jaGVja1ZhbHVlSXNUcnV0aHkudGVzdC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgY2hlY2tWYWx1ZUlzVHJ1dGh5IGZyb20gJy4vY2hlY2tWYWx1ZUlzVHJ1dGh5JztcblxuZGVzY3JpYmUoJ1V0aWxzLk9wZXJhdGUuY2hlY2tWYWx1ZUlzVHJ1dGh5JywgKCkgPT4ge1xuICBjb25zdCBEQVRBID0geyBcbiAgICBhbHBoYTogJ2FiYycsXG4gICAgYnJhdm86ICcnXG4gIH07XG5cbiAgaXQoJ1Nob3VsZCByZXR1cm4gdHJ1ZSBpcyB0aGUgdmFsdWUgb2YgdGhlIGZpZWxkIGlzIHRydXRoeScsICgpID0+IHtcbiAgICBjb25zdCBDT05GSUcgPSB7IGZpZWxkOiAnYWxwaGEnIH07XG4gICAgY29uc3QgcmVzdWx0ID0gY2hlY2tWYWx1ZUlzVHJ1dGh5KENPTkZJRywgREFUQSk7XG4gICAgZXhwZWN0KHJlc3VsdCkudG9FcXVhbCh0cnVlKTtcbiAgfSk7XG5cbiAgaXQoJ1Nob3VsZCByZXR1cm4gZmFsc2UgaWYgdGhlIHZhbHVlIG9mIHRoZSBmaWVsZCBpcyBmYWxzeScsICgpID0+IHtcbiAgICBjb25zdCBDT05GSUcgPSB7IGZpZWxkOiAnYnJhdm8nIH07XG4gICAgY29uc3QgcmVzdWx0ID0gY2hlY2tWYWx1ZUlzVHJ1dGh5KENPTkZJRywgREFUQSk7XG4gICAgZXhwZWN0KHJlc3VsdCkudG9FcXVhbChmYWxzZSk7XG4gIH0pO1xuXG4gIGl0KCdTaG91bGQgcmV0dXJuIGZhbHNlIGlmIHRoZSBmaWVsZCBkb2VzIG5vdCBleGlzdCcsICgpID0+IHtcbiAgICBjb25zdCBDT05GSUcgPSB7IGZpZWxkOiAnY2hhcmxpZScgfTtcbiAgICBjb25zdCByZXN1bHQgPSBjaGVja1ZhbHVlSXNUcnV0aHkoQ09ORklHLCBEQVRBKTtcbiAgICBleHBlY3QocmVzdWx0KS50b0VxdWFsKGZhbHNlKTtcbiAgfSk7XG5cbiAgaXQoJ1Nob3VsZCByZXR1cm4gZmFsc2Ugd2hlbiBhbiBpbnZhbGlkIGNvbmZpZyBpcyB1c2VkJywgKCkgPT4ge1xuICAgIGNvbnN0IHJlc3VsdCA9IGNoZWNrVmFsdWVJc1RydXRoeShudWxsLCBEQVRBKTtcbiAgICBleHBlY3QocmVzdWx0KS50b0VxdWFsKGZhbHNlKTtcbiAgfSk7XG5cbiAgaXQoJ1Nob3VsZCByZXR1cm4gZmFsc2Ugd2hlbiBpbnZhbGlkIGRhdGEgaXMgdXNlZCcsICgpID0+IHtcbiAgICBjb25zdCBDT05GSUcgPSB7IGZpZWxkOiAnYWxwaGEnIH07XG4gICAgY29uc3QgcmVzdWx0ID0gY2hlY2tWYWx1ZUlzVHJ1dGh5KENPTkZJRywgbnVsbCk7XG4gICAgZXhwZWN0KHJlc3VsdCkudG9FcXVhbChmYWxzZSk7XG4gIH0pO1xuXG59KTtcbiJdLCJtYXBwaW5ncyI6Ijs7QUFBQSxJQUFBQSxtQkFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQXNELFNBQUFELHVCQUFBRSxDQUFBLFdBQUFBLENBQUEsSUFBQUEsQ0FBQSxDQUFBQyxVQUFBLEdBQUFELENBQUEsS0FBQUUsT0FBQSxFQUFBRixDQUFBO0FBRXRERyxRQUFRLENBQUMsa0NBQWtDLEVBQUUsTUFBTTtFQUNqRCxNQUFNQyxJQUFJLEdBQUc7SUFDWEMsS0FBSyxFQUFFLEtBQUs7SUFDWkMsS0FBSyxFQUFFO0VBQ1QsQ0FBQztFQUVEQyxFQUFFLENBQUMsd0RBQXdELEVBQUUsTUFBTTtJQUNqRSxNQUFNQyxNQUFNLEdBQUc7TUFBRUMsS0FBSyxFQUFFO0lBQVEsQ0FBQztJQUNqQyxNQUFNQyxNQUFNLEdBQUcsSUFBQUMsMkJBQWtCLEVBQUNILE1BQU0sRUFBRUosSUFBSSxDQUFDO0lBQy9DUSxNQUFNLENBQUNGLE1BQU0sQ0FBQyxDQUFDRyxPQUFPLENBQUMsSUFBSSxDQUFDO0VBQzlCLENBQUMsQ0FBQztFQUVGTixFQUFFLENBQUMsd0RBQXdELEVBQUUsTUFBTTtJQUNqRSxNQUFNQyxNQUFNLEdBQUc7TUFBRUMsS0FBSyxFQUFFO0lBQVEsQ0FBQztJQUNqQyxNQUFNQyxNQUFNLEdBQUcsSUFBQUMsMkJBQWtCLEVBQUNILE1BQU0sRUFBRUosSUFBSSxDQUFDO0lBQy9DUSxNQUFNLENBQUNGLE1BQU0sQ0FBQyxDQUFDRyxPQUFPLENBQUMsS0FBSyxDQUFDO0VBQy9CLENBQUMsQ0FBQztFQUVGTixFQUFFLENBQUMsaURBQWlELEVBQUUsTUFBTTtJQUMxRCxNQUFNQyxNQUFNLEdBQUc7TUFBRUMsS0FBSyxFQUFFO0lBQVUsQ0FBQztJQUNuQyxNQUFNQyxNQUFNLEdBQUcsSUFBQUMsMkJBQWtCLEVBQUNILE1BQU0sRUFBRUosSUFBSSxDQUFDO0lBQy9DUSxNQUFNLENBQUNGLE1BQU0sQ0FBQyxDQUFDRyxPQUFPLENBQUMsS0FBSyxDQUFDO0VBQy9CLENBQUMsQ0FBQztFQUVGTixFQUFFLENBQUMsb0RBQW9ELEVBQUUsTUFBTTtJQUM3RCxNQUFNRyxNQUFNLEdBQUcsSUFBQUMsMkJBQWtCLEVBQUMsSUFBSSxFQUFFUCxJQUFJLENBQUM7SUFDN0NRLE1BQU0sQ0FBQ0YsTUFBTSxDQUFDLENBQUNHLE9BQU8sQ0FBQyxLQUFLLENBQUM7RUFDL0IsQ0FBQyxDQUFDO0VBRUZOLEVBQUUsQ0FBQywrQ0FBK0MsRUFBRSxNQUFNO0lBQ3hELE1BQU1DLE1BQU0sR0FBRztNQUFFQyxLQUFLLEVBQUU7SUFBUSxDQUFDO0lBQ2pDLE1BQU1DLE1BQU0sR0FBRyxJQUFBQywyQkFBa0IsRUFBQ0gsTUFBTSxFQUFFLElBQUksQ0FBQztJQUMvQ0ksTUFBTSxDQUFDRixNQUFNLENBQUMsQ0FBQ0csT0FBTyxDQUFDLEtBQUssQ0FBQztFQUMvQixDQUFDLENBQUM7QUFFSixDQUFDLENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
/**
|
|
8
|
-
* Simple operation to delete a value in the form data.
|
|
9
|
-
* @param {object} config The operation config.
|
|
10
|
-
* @param {object} data The page's formData.
|
|
11
|
-
* @param {function} onChange The page's onChange handler.
|
|
12
|
-
*/
|
|
13
|
-
const deleteValueInFormData = (config, data, onChange) => {
|
|
14
|
-
const node = data;
|
|
15
|
-
if (config !== null && config !== void 0 && config.field && config !== null && config !== void 0 && config.component) {
|
|
16
|
-
delete node[config.field];
|
|
17
|
-
onChange({
|
|
18
|
-
target: {
|
|
19
|
-
name: config.field,
|
|
20
|
-
value: null,
|
|
21
|
-
component: config.component
|
|
22
|
-
}
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
};
|
|
26
|
-
var _default = exports.default = deleteValueInFormData;
|
|
27
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJkZWxldGVWYWx1ZUluRm9ybURhdGEiLCJjb25maWciLCJkYXRhIiwib25DaGFuZ2UiLCJub2RlIiwiZmllbGQiLCJjb21wb25lbnQiLCJ0YXJnZXQiLCJuYW1lIiwidmFsdWUiLCJfZGVmYXVsdCIsImV4cG9ydHMiLCJkZWZhdWx0Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3V0aWxzL09wZXJhdGUvZGVsZXRlVmFsdWVJbkZvcm1EYXRhLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogU2ltcGxlIG9wZXJhdGlvbiB0byBkZWxldGUgYSB2YWx1ZSBpbiB0aGUgZm9ybSBkYXRhLlxuICogQHBhcmFtIHtvYmplY3R9IGNvbmZpZyBUaGUgb3BlcmF0aW9uIGNvbmZpZy5cbiAqIEBwYXJhbSB7b2JqZWN0fSBkYXRhIFRoZSBwYWdlJ3MgZm9ybURhdGEuXG4gKiBAcGFyYW0ge2Z1bmN0aW9ufSBvbkNoYW5nZSBUaGUgcGFnZSdzIG9uQ2hhbmdlIGhhbmRsZXIuXG4gKi9cbmNvbnN0IGRlbGV0ZVZhbHVlSW5Gb3JtRGF0YSA9IChjb25maWcsIGRhdGEsIG9uQ2hhbmdlKSA9PiB7XG4gIGNvbnN0IG5vZGUgPSBkYXRhO1xuICBpZiAoY29uZmlnPy5maWVsZCAmJiBjb25maWc/LmNvbXBvbmVudCkge1xuICAgIGRlbGV0ZSBub2RlW2NvbmZpZy5maWVsZF07XG4gICAgb25DaGFuZ2UoeyB0YXJnZXQ6IHsgbmFtZTogY29uZmlnLmZpZWxkLCB2YWx1ZTogbnVsbCwgY29tcG9uZW50OiBjb25maWcuY29tcG9uZW50IH19KTtcbiAgfVxufTtcblxuZXhwb3J0IGRlZmF1bHQgZGVsZXRlVmFsdWVJbkZvcm1EYXRhO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxNQUFNQSxxQkFBcUIsR0FBR0EsQ0FBQ0MsTUFBTSxFQUFFQyxJQUFJLEVBQUVDLFFBQVEsS0FBSztFQUN4RCxNQUFNQyxJQUFJLEdBQUdGLElBQUk7RUFDakIsSUFBSUQsTUFBTSxhQUFOQSxNQUFNLGVBQU5BLE1BQU0sQ0FBRUksS0FBSyxJQUFJSixNQUFNLGFBQU5BLE1BQU0sZUFBTkEsTUFBTSxDQUFFSyxTQUFTLEVBQUU7SUFDdEMsT0FBT0YsSUFBSSxDQUFDSCxNQUFNLENBQUNJLEtBQUssQ0FBQztJQUN6QkYsUUFBUSxDQUFDO01BQUVJLE1BQU0sRUFBRTtRQUFFQyxJQUFJLEVBQUVQLE1BQU0sQ0FBQ0ksS0FBSztRQUFFSSxLQUFLLEVBQUUsSUFBSTtRQUFFSCxTQUFTLEVBQUVMLE1BQU0sQ0FBQ0s7TUFBVTtJQUFDLENBQUMsQ0FBQztFQUN2RjtBQUNGLENBQUM7QUFBQyxJQUFBSSxRQUFBLEdBQUFDLE9BQUEsQ0FBQUMsT0FBQSxHQUVhWixxQkFBcUIiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _deleteValueInFormData = _interopRequireDefault(require("./deleteValueInFormData"));
|
|
4
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
5
|
-
describe('Utils.Operate.deleteValueInFormData', () => {
|
|
6
|
-
const ON_CHANGE = () => {};
|
|
7
|
-
it('Should delete value from data', () => {
|
|
8
|
-
const CONFIG = {
|
|
9
|
-
field: 'a',
|
|
10
|
-
component: 'A'
|
|
11
|
-
};
|
|
12
|
-
const DATA = {
|
|
13
|
-
a: '1',
|
|
14
|
-
b: '2'
|
|
15
|
-
};
|
|
16
|
-
(0, _deleteValueInFormData.default)(CONFIG, DATA, ON_CHANGE);
|
|
17
|
-
expect(DATA).toEqual({
|
|
18
|
-
b: '2'
|
|
19
|
-
});
|
|
20
|
-
});
|
|
21
|
-
it('Should do nothing if value is absent', () => {
|
|
22
|
-
const CONFIG = {
|
|
23
|
-
field: 'c',
|
|
24
|
-
component: 'C'
|
|
25
|
-
};
|
|
26
|
-
const DATA = {
|
|
27
|
-
a: '1',
|
|
28
|
-
b: '2'
|
|
29
|
-
};
|
|
30
|
-
(0, _deleteValueInFormData.default)(CONFIG, DATA, ON_CHANGE);
|
|
31
|
-
expect(DATA).toEqual({
|
|
32
|
-
a: '1',
|
|
33
|
-
b: '2'
|
|
34
|
-
});
|
|
35
|
-
});
|
|
36
|
-
it('Should do nothing if config is null', () => {
|
|
37
|
-
const CONFIG = null;
|
|
38
|
-
const DATA = {
|
|
39
|
-
a: '1',
|
|
40
|
-
b: '2'
|
|
41
|
-
};
|
|
42
|
-
(0, _deleteValueInFormData.default)(CONFIG, DATA, ON_CHANGE);
|
|
43
|
-
expect(DATA).toEqual({
|
|
44
|
-
a: '1',
|
|
45
|
-
b: '2'
|
|
46
|
-
});
|
|
47
|
-
});
|
|
48
|
-
it('Should do nothing if config is empty', () => {
|
|
49
|
-
const CONFIG = {};
|
|
50
|
-
const DATA = {
|
|
51
|
-
a: '1',
|
|
52
|
-
b: '2'
|
|
53
|
-
};
|
|
54
|
-
(0, _deleteValueInFormData.default)(CONFIG, DATA, ON_CHANGE);
|
|
55
|
-
expect(DATA).toEqual({
|
|
56
|
-
a: '1',
|
|
57
|
-
b: '2'
|
|
58
|
-
});
|
|
59
|
-
});
|
|
60
|
-
});
|
|
61
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZGVsZXRlVmFsdWVJbkZvcm1EYXRhIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJlIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJkZXNjcmliZSIsIk9OX0NIQU5HRSIsIml0IiwiQ09ORklHIiwiZmllbGQiLCJjb21wb25lbnQiLCJEQVRBIiwiYSIsImIiLCJkZWxldGVWYWx1ZUluRm9ybURhdGEiLCJleHBlY3QiLCJ0b0VxdWFsIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3V0aWxzL09wZXJhdGUvZGVsZXRlVmFsdWVJbkZvcm1EYXRhLnRlc3QuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGRlbGV0ZVZhbHVlSW5Gb3JtRGF0YSBmcm9tICcuL2RlbGV0ZVZhbHVlSW5Gb3JtRGF0YSc7XG5cbmRlc2NyaWJlKCdVdGlscy5PcGVyYXRlLmRlbGV0ZVZhbHVlSW5Gb3JtRGF0YScsICgpID0+IHtcblxuICBjb25zdCBPTl9DSEFOR0UgPSAoKSA9PiB7IH07XG5cbiAgaXQoJ1Nob3VsZCBkZWxldGUgdmFsdWUgZnJvbSBkYXRhJywgKCkgPT4ge1xuICAgIGNvbnN0IENPTkZJRyA9IHsgZmllbGQ6ICdhJywgY29tcG9uZW50OiAnQScgfTtcbiAgICBjb25zdCBEQVRBID0ge1xuICAgICAgYTogJzEnLFxuICAgICAgYjogJzInLFxuICAgIH07XG4gICAgZGVsZXRlVmFsdWVJbkZvcm1EYXRhKENPTkZJRywgREFUQSwgT05fQ0hBTkdFKTtcbiAgICBleHBlY3QoREFUQSkudG9FcXVhbCh7IGI6ICcyJyB9KTtcbiAgfSk7XG5cbiAgaXQoJ1Nob3VsZCBkbyBub3RoaW5nIGlmIHZhbHVlIGlzIGFic2VudCcsICgpID0+IHtcbiAgICBjb25zdCBDT05GSUcgPSB7IGZpZWxkOiAnYycsIGNvbXBvbmVudDogJ0MnIH07XG4gICAgY29uc3QgREFUQSA9IHtcbiAgICAgIGE6ICcxJyxcbiAgICAgIGI6ICcyJyxcbiAgICB9O1xuICAgIGRlbGV0ZVZhbHVlSW5Gb3JtRGF0YShDT05GSUcsIERBVEEsIE9OX0NIQU5HRSk7XG4gICAgZXhwZWN0KERBVEEpLnRvRXF1YWwoeyBhOiAnMScsIGI6ICcyJyB9KTtcbiAgfSk7XG5cbiAgaXQoJ1Nob3VsZCBkbyBub3RoaW5nIGlmIGNvbmZpZyBpcyBudWxsJywgKCkgPT4ge1xuICAgIGNvbnN0IENPTkZJRyA9IG51bGw7XG4gICAgY29uc3QgREFUQSA9IHtcbiAgICAgIGE6ICcxJyxcbiAgICAgIGI6ICcyJyxcbiAgICB9O1xuICAgIGRlbGV0ZVZhbHVlSW5Gb3JtRGF0YShDT05GSUcsIERBVEEsIE9OX0NIQU5HRSk7XG4gICAgZXhwZWN0KERBVEEpLnRvRXF1YWwoeyBhOiAnMScsIGI6ICcyJyB9KTtcbiAgfSk7XG5cbiAgaXQoJ1Nob3VsZCBkbyBub3RoaW5nIGlmIGNvbmZpZyBpcyBlbXB0eScsICgpID0+IHtcbiAgICBjb25zdCBDT05GSUcgPSB7fTtcbiAgICBjb25zdCBEQVRBID0ge1xuICAgICAgYTogJzEnLFxuICAgICAgYjogJzInLFxuICAgIH07XG4gICAgZGVsZXRlVmFsdWVJbkZvcm1EYXRhKENPTkZJRywgREFUQSwgT05fQ0hBTkdFKTtcbiAgICBleHBlY3QoREFUQSkudG9FcXVhbCh7IGE6ICcxJywgYjogJzInIH0pO1xuICB9KTtcblxufSk7XG4iXSwibWFwcGluZ3MiOiI7O0FBQUEsSUFBQUEsc0JBQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUE0RCxTQUFBRCx1QkFBQUUsQ0FBQSxXQUFBQSxDQUFBLElBQUFBLENBQUEsQ0FBQUMsVUFBQSxHQUFBRCxDQUFBLEtBQUFFLE9BQUEsRUFBQUYsQ0FBQTtBQUU1REcsUUFBUSxDQUFDLHFDQUFxQyxFQUFFLE1BQU07RUFFcEQsTUFBTUMsU0FBUyxHQUFHQSxDQUFBLEtBQU0sQ0FBRSxDQUFDO0VBRTNCQyxFQUFFLENBQUMsK0JBQStCLEVBQUUsTUFBTTtJQUN4QyxNQUFNQyxNQUFNLEdBQUc7TUFBRUMsS0FBSyxFQUFFLEdBQUc7TUFBRUMsU0FBUyxFQUFFO0lBQUksQ0FBQztJQUM3QyxNQUFNQyxJQUFJLEdBQUc7TUFDWEMsQ0FBQyxFQUFFLEdBQUc7TUFDTkMsQ0FBQyxFQUFFO0lBQ0wsQ0FBQztJQUNELElBQUFDLDhCQUFxQixFQUFDTixNQUFNLEVBQUVHLElBQUksRUFBRUwsU0FBUyxDQUFDO0lBQzlDUyxNQUFNLENBQUNKLElBQUksQ0FBQyxDQUFDSyxPQUFPLENBQUM7TUFBRUgsQ0FBQyxFQUFFO0lBQUksQ0FBQyxDQUFDO0VBQ2xDLENBQUMsQ0FBQztFQUVGTixFQUFFLENBQUMsc0NBQXNDLEVBQUUsTUFBTTtJQUMvQyxNQUFNQyxNQUFNLEdBQUc7TUFBRUMsS0FBSyxFQUFFLEdBQUc7TUFBRUMsU0FBUyxFQUFFO0lBQUksQ0FBQztJQUM3QyxNQUFNQyxJQUFJLEdBQUc7TUFDWEMsQ0FBQyxFQUFFLEdBQUc7TUFDTkMsQ0FBQyxFQUFFO0lBQ0wsQ0FBQztJQUNELElBQUFDLDhCQUFxQixFQUFDTixNQUFNLEVBQUVHLElBQUksRUFBRUwsU0FBUyxDQUFDO0lBQzlDUyxNQUFNLENBQUNKLElBQUksQ0FBQyxDQUFDSyxPQUFPLENBQUM7TUFBRUosQ0FBQyxFQUFFLEdBQUc7TUFBRUMsQ0FBQyxFQUFFO0lBQUksQ0FBQyxDQUFDO0VBQzFDLENBQUMsQ0FBQztFQUVGTixFQUFFLENBQUMscUNBQXFDLEVBQUUsTUFBTTtJQUM5QyxNQUFNQyxNQUFNLEdBQUcsSUFBSTtJQUNuQixNQUFNRyxJQUFJLEdBQUc7TUFDWEMsQ0FBQyxFQUFFLEdBQUc7TUFDTkMsQ0FBQyxFQUFFO0lBQ0wsQ0FBQztJQUNELElBQUFDLDhCQUFxQixFQUFDTixNQUFNLEVBQUVHLElBQUksRUFBRUwsU0FBUyxDQUFDO0lBQzlDUyxNQUFNLENBQUNKLElBQUksQ0FBQyxDQUFDSyxPQUFPLENBQUM7TUFBRUosQ0FBQyxFQUFFLEdBQUc7TUFBRUMsQ0FBQyxFQUFFO0lBQUksQ0FBQyxDQUFDO0VBQzFDLENBQUMsQ0FBQztFQUVGTixFQUFFLENBQUMsc0NBQXNDLEVBQUUsTUFBTTtJQUMvQyxNQUFNQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQ2pCLE1BQU1HLElBQUksR0FBRztNQUNYQyxDQUFDLEVBQUUsR0FBRztNQUNOQyxDQUFDLEVBQUU7SUFDTCxDQUFDO0lBQ0QsSUFBQUMsOEJBQXFCLEVBQUNOLE1BQU0sRUFBRUcsSUFBSSxFQUFFTCxTQUFTLENBQUM7SUFDOUNTLE1BQU0sQ0FBQ0osSUFBSSxDQUFDLENBQUNLLE9BQU8sQ0FBQztNQUFFSixDQUFDLEVBQUUsR0FBRztNQUFFQyxDQUFDLEVBQUU7SUFBSSxDQUFDLENBQUM7RUFDMUMsQ0FBQyxDQUFDO0FBRUosQ0FBQyxDQUFDIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var _copReactComponents = require("@ukhomeoffice/cop-react-components");
|
|
8
|
-
var _getSourceData = _interopRequireDefault(require("../Data/getSourceData"));
|
|
9
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
|
-
// Global imports.
|
|
11
|
-
|
|
12
|
-
// Local imports.
|
|
13
|
-
|
|
14
|
-
/**
|
|
15
|
-
* Returns if it can find a value in the form data. supports searching in arrays and objects
|
|
16
|
-
* @param {object} config The config of the operation.
|
|
17
|
-
* @param {string} config.target the JPath to the object/array that contains the data we want to checkon
|
|
18
|
-
* @param {string} config.key the JPath to the field we want to check
|
|
19
|
-
* @param {string} config.value the value that we want to check the the data against
|
|
20
|
-
* @param {object} data A page's formData.
|
|
21
|
-
* @returns The index of the matching value if one exists, or null.
|
|
22
|
-
*/
|
|
23
|
-
const doesContainValue = (config, data) => {
|
|
24
|
-
const targetPath = _copReactComponents.Utils.interpolateString(config.target, data);
|
|
25
|
-
const target = (0, _getSourceData.default)(data, targetPath);
|
|
26
|
-
if (target && Array.isArray(target)) {
|
|
27
|
-
return target.some(entry => config.key ? (0, _getSourceData.default)(entry, config.key) === config.value : entry === config.value);
|
|
28
|
-
}
|
|
29
|
-
if (target && typeof target === "object") {
|
|
30
|
-
return (0, _getSourceData.default)(target, config.key) === config.value;
|
|
31
|
-
}
|
|
32
|
-
return false;
|
|
33
|
-
};
|
|
34
|
-
var _default = exports.default = doesContainValue;
|
|
35
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29wUmVhY3RDb21wb25lbnRzIiwicmVxdWlyZSIsIl9nZXRTb3VyY2VEYXRhIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsImUiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsImRvZXNDb250YWluVmFsdWUiLCJjb25maWciLCJkYXRhIiwidGFyZ2V0UGF0aCIsIlV0aWxzIiwiaW50ZXJwb2xhdGVTdHJpbmciLCJ0YXJnZXQiLCJnZXRTb3VyY2VEYXRhIiwiQXJyYXkiLCJpc0FycmF5Iiwic29tZSIsImVudHJ5Iiwia2V5IiwidmFsdWUiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdXRpbHMvT3BlcmF0ZS9kb2VzQ29udGFpblZhbHVlLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIEdsb2JhbCBpbXBvcnRzLlxuaW1wb3J0IHsgVXRpbHMgfSBmcm9tICdAdWtob21lb2ZmaWNlL2NvcC1yZWFjdC1jb21wb25lbnRzJztcblxuLy8gTG9jYWwgaW1wb3J0cy5cbmltcG9ydCBnZXRTb3VyY2VEYXRhIGZyb20gJy4uL0RhdGEvZ2V0U291cmNlRGF0YSc7XG5cbi8qKlxuICogUmV0dXJucyBpZiBpdCBjYW4gZmluZCBhIHZhbHVlIGluIHRoZSBmb3JtIGRhdGEuIHN1cHBvcnRzIHNlYXJjaGluZyBpbiBhcnJheXMgYW5kIG9iamVjdHNcbiAqIEBwYXJhbSB7b2JqZWN0fSBjb25maWcgVGhlIGNvbmZpZyBvZiB0aGUgb3BlcmF0aW9uLlxuICogQHBhcmFtIHtzdHJpbmd9IGNvbmZpZy50YXJnZXQgdGhlIEpQYXRoIHRvIHRoZSBvYmplY3QvYXJyYXkgdGhhdCBjb250YWlucyB0aGUgZGF0YSB3ZSB3YW50IHRvIGNoZWNrb25cbiAqIEBwYXJhbSB7c3RyaW5nfSBjb25maWcua2V5IHRoZSBKUGF0aCB0byB0aGUgZmllbGQgd2Ugd2FudCB0byBjaGVja1xuICogQHBhcmFtIHtzdHJpbmd9IGNvbmZpZy52YWx1ZSB0aGUgdmFsdWUgdGhhdCB3ZSB3YW50IHRvIGNoZWNrIHRoZSB0aGUgZGF0YSBhZ2FpbnN0XG4gKiBAcGFyYW0ge29iamVjdH0gZGF0YSBBIHBhZ2UncyBmb3JtRGF0YS5cbiAqIEByZXR1cm5zIFRoZSBpbmRleCBvZiB0aGUgbWF0Y2hpbmcgdmFsdWUgaWYgb25lIGV4aXN0cywgb3IgbnVsbC5cbiAqL1xuY29uc3QgZG9lc0NvbnRhaW5WYWx1ZSA9IChjb25maWcsIGRhdGEpID0+IHtcbiAgY29uc3QgdGFyZ2V0UGF0aCA9IFV0aWxzLmludGVycG9sYXRlU3RyaW5nKGNvbmZpZy50YXJnZXQsIGRhdGEpO1xuICBjb25zdCB0YXJnZXQgPSBnZXRTb3VyY2VEYXRhKGRhdGEsIHRhcmdldFBhdGgpO1xuICBpZiAodGFyZ2V0ICYmIEFycmF5LmlzQXJyYXkodGFyZ2V0KSkge1xuICAgIHJldHVybiB0YXJnZXQuc29tZShlbnRyeSA9PiBcbiAgICAgIGNvbmZpZy5rZXkgPyBnZXRTb3VyY2VEYXRhKGVudHJ5LCBjb25maWcua2V5KSA9PT0gY29uZmlnLnZhbHVlIDogZW50cnkgPT09IGNvbmZpZy52YWx1ZVxuICAgIClcbiAgfVxuICBpZiAodGFyZ2V0ICYmIHR5cGVvZiB0YXJnZXQgPT09IFwib2JqZWN0XCIpIHtcbiAgICByZXR1cm4gZ2V0U291cmNlRGF0YSh0YXJnZXQsIGNvbmZpZy5rZXkpID09PSBjb25maWcudmFsdWVcbiAgfVxuICByZXR1cm4gZmFsc2Vcbn1cblxuZXhwb3J0IGRlZmF1bHQgZG9lc0NvbnRhaW5WYWx1ZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0EsSUFBQUEsbUJBQUEsR0FBQUMsT0FBQTtBQUdBLElBQUFDLGNBQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUFrRCxTQUFBRSx1QkFBQUMsQ0FBQSxXQUFBQSxDQUFBLElBQUFBLENBQUEsQ0FBQUMsVUFBQSxHQUFBRCxDQUFBLEtBQUFFLE9BQUEsRUFBQUYsQ0FBQTtBQUpsRDs7QUFHQTs7QUFHQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxNQUFNRyxnQkFBZ0IsR0FBR0EsQ0FBQ0MsTUFBTSxFQUFFQyxJQUFJLEtBQUs7RUFDekMsTUFBTUMsVUFBVSxHQUFHQyx5QkFBSyxDQUFDQyxpQkFBaUIsQ0FBQ0osTUFBTSxDQUFDSyxNQUFNLEVBQUVKLElBQUksQ0FBQztFQUMvRCxNQUFNSSxNQUFNLEdBQUcsSUFBQUMsc0JBQWEsRUFBQ0wsSUFBSSxFQUFFQyxVQUFVLENBQUM7RUFDOUMsSUFBSUcsTUFBTSxJQUFJRSxLQUFLLENBQUNDLE9BQU8sQ0FBQ0gsTUFBTSxDQUFDLEVBQUU7SUFDbkMsT0FBT0EsTUFBTSxDQUFDSSxJQUFJLENBQUNDLEtBQUssSUFDdEJWLE1BQU0sQ0FBQ1csR0FBRyxHQUFHLElBQUFMLHNCQUFhLEVBQUNJLEtBQUssRUFBRVYsTUFBTSxDQUFDVyxHQUFHLENBQUMsS0FBS1gsTUFBTSxDQUFDWSxLQUFLLEdBQUdGLEtBQUssS0FBS1YsTUFBTSxDQUFDWSxLQUNwRixDQUFDO0VBQ0g7RUFDQSxJQUFJUCxNQUFNLElBQUksT0FBT0EsTUFBTSxLQUFLLFFBQVEsRUFBRTtJQUN4QyxPQUFPLElBQUFDLHNCQUFhLEVBQUNELE1BQU0sRUFBRUwsTUFBTSxDQUFDVyxHQUFHLENBQUMsS0FBS1gsTUFBTSxDQUFDWSxLQUFLO0VBQzNEO0VBQ0EsT0FBTyxLQUFLO0FBQ2QsQ0FBQztBQUFBLElBQUFDLFFBQUEsR0FBQUMsT0FBQSxDQUFBaEIsT0FBQSxHQUVjQyxnQkFBZ0IiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _doesContainValue = _interopRequireDefault(require("./doesContainValue"));
|
|
4
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
5
|
-
describe('doesContainValue', () => {
|
|
6
|
-
const mockData = {
|
|
7
|
-
arrayOfValues: ['abc', 'bcd', 'cde', 'def', {
|
|
8
|
-
root: {
|
|
9
|
-
branch: 'leaf'
|
|
10
|
-
}
|
|
11
|
-
}],
|
|
12
|
-
cutoffIndex: 1,
|
|
13
|
-
ignoreIndex: 2,
|
|
14
|
-
valueToSearchFor: 'cde',
|
|
15
|
-
targetName: 'arrayOfValues',
|
|
16
|
-
fieldName: 'valueToSearchFor',
|
|
17
|
-
cutoffName: 'cutoffIndex',
|
|
18
|
-
ignoreName: 'ignoreIndex'
|
|
19
|
-
};
|
|
20
|
-
test('returns true if value exists in array', () => {
|
|
21
|
-
const config = {
|
|
22
|
-
target: 'arrayOfValues',
|
|
23
|
-
value: 'cde'
|
|
24
|
-
};
|
|
25
|
-
const result = (0, _doesContainValue.default)(config, mockData);
|
|
26
|
-
expect(result).toBe(true);
|
|
27
|
-
});
|
|
28
|
-
test('returns false if value does not exist in array', () => {
|
|
29
|
-
const config = {
|
|
30
|
-
target: 'arrayOfValues',
|
|
31
|
-
value: 'xyz'
|
|
32
|
-
};
|
|
33
|
-
const result = (0, _doesContainValue.default)(config, mockData);
|
|
34
|
-
expect(result).toBe(false);
|
|
35
|
-
});
|
|
36
|
-
test('returns true if key-value pair matches in array object', () => {
|
|
37
|
-
const config = {
|
|
38
|
-
target: 'arrayOfValues',
|
|
39
|
-
key: 'root.branch',
|
|
40
|
-
value: 'leaf'
|
|
41
|
-
};
|
|
42
|
-
const result = (0, _doesContainValue.default)(config, mockData);
|
|
43
|
-
expect(result).toBe(true);
|
|
44
|
-
});
|
|
45
|
-
test('returns false if key-value pair does not match in array object', () => {
|
|
46
|
-
const config = {
|
|
47
|
-
target: 'arrayOfValues',
|
|
48
|
-
key: 'root.branch',
|
|
49
|
-
value: 'notLeaf'
|
|
50
|
-
};
|
|
51
|
-
const result = (0, _doesContainValue.default)(config, mockData);
|
|
52
|
-
expect(result).toBe(false);
|
|
53
|
-
});
|
|
54
|
-
test('handles non-array targets gracefully', () => {
|
|
55
|
-
const config = {
|
|
56
|
-
target: 'nonExistentTarget',
|
|
57
|
-
value: 'value'
|
|
58
|
-
};
|
|
59
|
-
const result = (0, _doesContainValue.default)(config, mockData);
|
|
60
|
-
expect(result).toBe(false);
|
|
61
|
-
});
|
|
62
|
-
test('handles objects as target correctly', () => {
|
|
63
|
-
const config = {
|
|
64
|
-
target: 'objectTarget',
|
|
65
|
-
key: 'key',
|
|
66
|
-
value: 'value'
|
|
67
|
-
};
|
|
68
|
-
const result = (0, _doesContainValue.default)(config, {
|
|
69
|
-
objectTarget: {
|
|
70
|
-
key: 'value'
|
|
71
|
-
}
|
|
72
|
-
});
|
|
73
|
-
expect(result).toBe(true);
|
|
74
|
-
});
|
|
75
|
-
});
|
|
76
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZG9lc0NvbnRhaW5WYWx1ZSIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiZSIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0IiwiZGVzY3JpYmUiLCJtb2NrRGF0YSIsImFycmF5T2ZWYWx1ZXMiLCJyb290IiwiYnJhbmNoIiwiY3V0b2ZmSW5kZXgiLCJpZ25vcmVJbmRleCIsInZhbHVlVG9TZWFyY2hGb3IiLCJ0YXJnZXROYW1lIiwiZmllbGROYW1lIiwiY3V0b2ZmTmFtZSIsImlnbm9yZU5hbWUiLCJ0ZXN0IiwiY29uZmlnIiwidGFyZ2V0IiwidmFsdWUiLCJyZXN1bHQiLCJkb2VzQ29udGFpblZhbHVlIiwiZXhwZWN0IiwidG9CZSIsImtleSIsIm9iamVjdFRhcmdldCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91dGlscy9PcGVyYXRlL2RvZXNDb250YWluVmFsdWUudGVzdC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZG9lc0NvbnRhaW5WYWx1ZSBmcm9tICcuL2RvZXNDb250YWluVmFsdWUnO1xuXG5kZXNjcmliZSgnZG9lc0NvbnRhaW5WYWx1ZScsICgpID0+IHtcbiAgY29uc3QgbW9ja0RhdGEgPSB7XG4gICAgYXJyYXlPZlZhbHVlczogW1xuICAgICAgJ2FiYycsXG4gICAgICAnYmNkJyxcbiAgICAgICdjZGUnLFxuICAgICAgJ2RlZicsXG4gICAgICB7XG4gICAgICAgIHJvb3Q6IHtcbiAgICAgICAgICBicmFuY2g6ICdsZWFmJ1xuICAgICAgICB9XG4gICAgICB9XG4gICAgXSxcbiAgICBjdXRvZmZJbmRleDogMSxcbiAgICBpZ25vcmVJbmRleDogMixcbiAgICB2YWx1ZVRvU2VhcmNoRm9yOiAnY2RlJyxcbiAgICB0YXJnZXROYW1lOiAnYXJyYXlPZlZhbHVlcycsXG4gICAgZmllbGROYW1lOiAndmFsdWVUb1NlYXJjaEZvcicsXG4gICAgY3V0b2ZmTmFtZTogJ2N1dG9mZkluZGV4JyxcbiAgICBpZ25vcmVOYW1lOiAnaWdub3JlSW5kZXgnXG4gIH07XG5cbiAgdGVzdCgncmV0dXJucyB0cnVlIGlmIHZhbHVlIGV4aXN0cyBpbiBhcnJheScsICgpID0+IHtcbiAgICBjb25zdCBjb25maWcgPSB7XG4gICAgICB0YXJnZXQ6ICdhcnJheU9mVmFsdWVzJyxcbiAgICAgIHZhbHVlOiAnY2RlJ1xuICAgIH07XG5cbiAgICBjb25zdCByZXN1bHQgPSBkb2VzQ29udGFpblZhbHVlKGNvbmZpZywgbW9ja0RhdGEpO1xuICAgIGV4cGVjdChyZXN1bHQpLnRvQmUodHJ1ZSk7XG4gIH0pO1xuXG4gIHRlc3QoJ3JldHVybnMgZmFsc2UgaWYgdmFsdWUgZG9lcyBub3QgZXhpc3QgaW4gYXJyYXknLCAoKSA9PiB7XG4gICAgY29uc3QgY29uZmlnID0ge1xuICAgICAgdGFyZ2V0OiAnYXJyYXlPZlZhbHVlcycsXG4gICAgICB2YWx1ZTogJ3h5eidcbiAgICB9O1xuXG4gICAgY29uc3QgcmVzdWx0ID0gZG9lc0NvbnRhaW5WYWx1ZShjb25maWcsIG1vY2tEYXRhKTtcbiAgICBleHBlY3QocmVzdWx0KS50b0JlKGZhbHNlKTtcbiAgfSk7XG5cbiAgdGVzdCgncmV0dXJucyB0cnVlIGlmIGtleS12YWx1ZSBwYWlyIG1hdGNoZXMgaW4gYXJyYXkgb2JqZWN0JywgKCkgPT4ge1xuICAgIGNvbnN0IGNvbmZpZyA9IHtcbiAgICAgIHRhcmdldDogJ2FycmF5T2ZWYWx1ZXMnLFxuICAgICAga2V5OiAncm9vdC5icmFuY2gnLFxuICAgICAgdmFsdWU6ICdsZWFmJ1xuICAgIH07XG5cbiAgICBjb25zdCByZXN1bHQgPSBkb2VzQ29udGFpblZhbHVlKGNvbmZpZywgbW9ja0RhdGEpO1xuICAgIGV4cGVjdChyZXN1bHQpLnRvQmUodHJ1ZSk7XG4gIH0pO1xuXG4gIHRlc3QoJ3JldHVybnMgZmFsc2UgaWYga2V5LXZhbHVlIHBhaXIgZG9lcyBub3QgbWF0Y2ggaW4gYXJyYXkgb2JqZWN0JywgKCkgPT4ge1xuICAgIGNvbnN0IGNvbmZpZyA9IHtcbiAgICAgIHRhcmdldDogJ2FycmF5T2ZWYWx1ZXMnLFxuICAgICAga2V5OiAncm9vdC5icmFuY2gnLFxuICAgICAgdmFsdWU6ICdub3RMZWFmJ1xuICAgIH07XG5cbiAgICBjb25zdCByZXN1bHQgPSBkb2VzQ29udGFpblZhbHVlKGNvbmZpZywgbW9ja0RhdGEpO1xuICAgIGV4cGVjdChyZXN1bHQpLnRvQmUoZmFsc2UpO1xuICB9KTtcblxuICB0ZXN0KCdoYW5kbGVzIG5vbi1hcnJheSB0YXJnZXRzIGdyYWNlZnVsbHknLCAoKSA9PiB7XG4gICAgY29uc3QgY29uZmlnID0ge1xuICAgICAgdGFyZ2V0OiAnbm9uRXhpc3RlbnRUYXJnZXQnLFxuICAgICAgdmFsdWU6ICd2YWx1ZSdcbiAgICB9O1xuXG4gICAgY29uc3QgcmVzdWx0ID0gZG9lc0NvbnRhaW5WYWx1ZShjb25maWcsIG1vY2tEYXRhKTtcbiAgICBleHBlY3QocmVzdWx0KS50b0JlKGZhbHNlKTtcbiAgfSk7XG5cbiAgdGVzdCgnaGFuZGxlcyBvYmplY3RzIGFzIHRhcmdldCBjb3JyZWN0bHknLCAoKSA9PiB7XG4gICAgY29uc3QgY29uZmlnID0ge1xuICAgICAgdGFyZ2V0OiAnb2JqZWN0VGFyZ2V0JyxcbiAgICAgIGtleTogJ2tleScsXG4gICAgICB2YWx1ZTogJ3ZhbHVlJ1xuICAgIH07XG5cbiAgICBjb25zdCByZXN1bHQgPSBkb2VzQ29udGFpblZhbHVlKGNvbmZpZywgeyBvYmplY3RUYXJnZXQ6IHsga2V5OiAndmFsdWUnIH0gfSk7XG4gICAgZXhwZWN0KHJlc3VsdCkudG9CZSh0cnVlKTtcbiAgfSk7XG59KTtcbiJdLCJtYXBwaW5ncyI6Ijs7QUFBQSxJQUFBQSxpQkFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQWtELFNBQUFELHVCQUFBRSxDQUFBLFdBQUFBLENBQUEsSUFBQUEsQ0FBQSxDQUFBQyxVQUFBLEdBQUFELENBQUEsS0FBQUUsT0FBQSxFQUFBRixDQUFBO0FBRWxERyxRQUFRLENBQUMsa0JBQWtCLEVBQUUsTUFBTTtF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
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var _copReactComponents = require("@ukhomeoffice/cop-react-components");
|
|
8
|
-
var _getSourceData = _interopRequireDefault(require("../Data/getSourceData"));
|
|
9
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
|
-
// Global imports.
|
|
11
|
-
|
|
12
|
-
// Local imports.
|
|
13
|
-
|
|
14
|
-
const getFirstOf = (config, data) => {
|
|
15
|
-
if (config !== null && config !== void 0 && config.fields) {
|
|
16
|
-
let fieldValue;
|
|
17
|
-
config.fields.find(field => {
|
|
18
|
-
const fieldPath = _copReactComponents.Utils.interpolateString(field, data);
|
|
19
|
-
const foundValue = (0, _getSourceData.default)(data, fieldPath);
|
|
20
|
-
if (foundValue) {
|
|
21
|
-
fieldValue = foundValue;
|
|
22
|
-
return true;
|
|
23
|
-
}
|
|
24
|
-
return false;
|
|
25
|
-
});
|
|
26
|
-
return fieldValue || (config.fallback ? _copReactComponents.Utils.interpolateString(config.fallback, data) : '');
|
|
27
|
-
}
|
|
28
|
-
return (config === null || config === void 0 ? void 0 : config.value) || null;
|
|
29
|
-
};
|
|
30
|
-
var _default = exports.default = getFirstOf;
|
|
31
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29wUmVhY3RDb21wb25lbnRzIiwicmVxdWlyZSIsIl9nZXRTb3VyY2VEYXRhIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsImUiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsImdldEZpcnN0T2YiLCJjb25maWciLCJkYXRhIiwiZmllbGRzIiwiZmllbGRWYWx1ZSIsImZpbmQiLCJmaWVsZCIsImZpZWxkUGF0aCIsIlV0aWxzIiwiaW50ZXJwb2xhdGVTdHJpbmciLCJmb3VuZFZhbHVlIiwiZ2V0U291cmNlRGF0YSIsImZhbGxiYWNrIiwidmFsdWUiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdXRpbHMvT3BlcmF0ZS9nZXRGaXJzdE9mLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIEdsb2JhbCBpbXBvcnRzLlxuaW1wb3J0IHsgVXRpbHMgfSBmcm9tICdAdWtob21lb2ZmaWNlL2NvcC1yZWFjdC1jb21wb25lbnRzJztcblxuLy8gTG9jYWwgaW1wb3J0cy5cbmltcG9ydCBnZXRTb3VyY2VEYXRhIGZyb20gJy4uL0RhdGEvZ2V0U291cmNlRGF0YSc7XG5cbmNvbnN0IGdldEZpcnN0T2YgPSAoY29uZmlnLCBkYXRhKSA9PiB7XG4gIGlmIChjb25maWc/LmZpZWxkcyl7XG4gICAgbGV0IGZpZWxkVmFsdWU7XG4gICAgY29uZmlnLmZpZWxkcy5maW5kKChmaWVsZCkgPT4ge1xuICAgICAgY29uc3QgZmllbGRQYXRoID0gVXRpbHMuaW50ZXJwb2xhdGVTdHJpbmcoZmllbGQsIGRhdGEpO1xuICAgICAgY29uc3QgZm91bmRWYWx1ZSA9IGdldFNvdXJjZURhdGEoZGF0YSwgZmllbGRQYXRoKVxuICAgICAgaWYgKGZvdW5kVmFsdWUpIHtcbiAgICAgICAgZmllbGRWYWx1ZSA9IGZvdW5kVmFsdWVcbiAgICAgICAgcmV0dXJuIHRydWVcbiAgICAgIH1cbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH0pXG5cbiAgICAgcmV0dXJuIGZpZWxkVmFsdWUgfHxcbiAgICAgKCBjb25maWcuZmFsbGJhY2sgPyBVdGlscy5pbnRlcnBvbGF0ZVN0cmluZyggY29uZmlnLmZhbGxiYWNrLCBkYXRhKSA6ICcnKVxuICB9XG4gIHJldHVybiBjb25maWc/LnZhbHVlIHx8IG51bGw7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBnZXRGaXJzdE9mO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFDQSxJQUFBQSxtQkFBQSxHQUFBQyxPQUFBO0FBR0EsSUFBQUMsY0FBQSxHQUFBQyxzQkFBQSxDQUFBRixPQUFBO0FBQWtELFNBQUFFLHVCQUFBQyxDQUFBLFdBQUFBLENBQUEsSUFBQUEsQ0FBQSxDQUFBQyxVQUFBLEdBQUFELENBQUEsS0FBQUUsT0FBQSxFQUFBRixDQUFBO0FBSmxEOztBQUdBOztBQUdBLE1BQU1HLFVBQVUsR0FBR0EsQ0FBQ0MsTUFBTSxFQUFFQyxJQUFJLEtBQUs7RUFDbkMsSUFBSUQsTUFBTSxhQUFOQSxNQUFNLGVBQU5BLE1BQU0sQ0FBRUUsTUFBTSxFQUFDO0lBQ2pCLElBQUlDLFVBQVU7SUFDZEgsTUFBTSxDQUFDRSxNQUFNLENBQUNFLElBQUksQ0FBRUMsS0FBSyxJQUFLO01BQzVCLE1BQU1DLFNBQVMsR0FBR0MseUJBQUssQ0FBQ0MsaUJBQWlCLENBQUNILEtBQUssRUFBRUosSUFBSSxDQUFDO01BQ3RELE1BQU1RLFVBQVUsR0FBRyxJQUFBQyxzQkFBYSxFQUFDVCxJQUFJLEVBQUVLLFNBQVMsQ0FBQztNQUNqRCxJQUFJRyxVQUFVLEVBQUU7UUFDZE4sVUFBVSxHQUFHTSxVQUFVO1FBQ3ZCLE9BQU8sSUFBSTtNQUNiO01BQ0EsT0FBTyxLQUFLO0lBQ2QsQ0FBQyxDQUFDO0lBRUQsT0FBT04sVUFBVSxLQUNmSCxNQUFNLENBQUNXLFFBQVEsR0FBR0oseUJBQUssQ0FBQ0MsaUJBQWlCLENBQUVSLE1BQU0sQ0FBQ1csUUFBUSxFQUFFVixJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7RUFDNUU7RUFDQSxPQUFPLENBQUFELE1BQU0sYUFBTkEsTUFBTSx1QkFBTkEsTUFBTSxDQUFFWSxLQUFLLEtBQUksSUFBSTtBQUM5QixDQUFDO0FBQUMsSUFBQUMsUUFBQSxHQUFBQyxPQUFBLENBQUFoQixPQUFBLEdBRWFDLFVBQVUiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _getFirstOf = _interopRequireDefault(require("./getFirstOf"));
|
|
4
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
5
|
-
describe('Utils.Operate.getFirstOf', () => {
|
|
6
|
-
const DATA = {
|
|
7
|
-
name: 'sam',
|
|
8
|
-
id: 1,
|
|
9
|
-
test: ['2', '3'],
|
|
10
|
-
idName: 'passport',
|
|
11
|
-
passportNumber: 123,
|
|
12
|
-
otherIdDoc: '',
|
|
13
|
-
anotherMadeUpId: 789
|
|
14
|
-
};
|
|
15
|
-
it('Should handle interpolated field strings', () => {
|
|
16
|
-
// eslint-disable-next-line no-template-curly-in-string
|
|
17
|
-
const CONFIG = {
|
|
18
|
-
fields: ['test[${id}]']
|
|
19
|
-
};
|
|
20
|
-
const result = (0, _getFirstOf.default)(CONFIG, DATA);
|
|
21
|
-
expect(result).toEqual(DATA.test[1]);
|
|
22
|
-
});
|
|
23
|
-
it('Should return the value provided in config if no field is specified', () => {
|
|
24
|
-
const CONFIG = {
|
|
25
|
-
value: '2'
|
|
26
|
-
};
|
|
27
|
-
const result = (0, _getFirstOf.default)(CONFIG, DATA);
|
|
28
|
-
expect(result).toEqual(CONFIG.value);
|
|
29
|
-
});
|
|
30
|
-
it('Should return the fallback if the requested fields are not found', () => {
|
|
31
|
-
// eslint-disable-next-line no-template-curly-in-string
|
|
32
|
-
const CONFIG = {
|
|
33
|
-
value: '2',
|
|
34
|
-
fields: ['nonExistent'],
|
|
35
|
-
fallback: "Test ${name}"
|
|
36
|
-
};
|
|
37
|
-
const result = (0, _getFirstOf.default)(CONFIG, DATA);
|
|
38
|
-
expect(result).toEqual("Test ".concat(DATA.name));
|
|
39
|
-
});
|
|
40
|
-
it('Should return the value of the passportNumber field given in config', () => {
|
|
41
|
-
const CONFIG = {
|
|
42
|
-
fields: ['passportNumber', 'anotherMadeUpId', 'otherIdDoc']
|
|
43
|
-
};
|
|
44
|
-
const result = (0, _getFirstOf.default)(CONFIG, DATA);
|
|
45
|
-
expect(result).toEqual(DATA.passportNumber);
|
|
46
|
-
});
|
|
47
|
-
it('Should return the value of the anotherMadeUpId field given in config', () => {
|
|
48
|
-
const CONFIG = {
|
|
49
|
-
fields: ['anotherMadeUpId', 'passportNumber', 'otherIdDoc']
|
|
50
|
-
};
|
|
51
|
-
const result = (0, _getFirstOf.default)(CONFIG, DATA);
|
|
52
|
-
expect(result).toEqual(DATA.anotherMadeUpId);
|
|
53
|
-
});
|
|
54
|
-
it('Should return the value of the otherIdDoc field given in config', () => {
|
|
55
|
-
const CONFIG = {
|
|
56
|
-
fields: ['otherIdDoc', 'passportNumber', 'anotherMadeUpId']
|
|
57
|
-
};
|
|
58
|
-
const result = (0, _getFirstOf.default)(CONFIG, DATA);
|
|
59
|
-
expect(result).toEqual(DATA.passportNumber);
|
|
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
|
-
const CONFIG = {
|
|
63
|
-
fields: ['otherIdDoc', 'passportNumber', 'anotherMadeUpId']
|
|
64
|
-
};
|
|
65
|
-
const result = (0, _getFirstOf.default)(CONFIG, DATA);
|
|
66
|
-
expect(result).toEqual(DATA.passportNumber);
|
|
67
|
-
});
|
|
68
|
-
it('Should return no value if elements in config.fields are not found in data', () => {
|
|
69
|
-
const CONFIG = {
|
|
70
|
-
fields: ['otherIdDoc1', 'passportNumber1', 'anotherMadeUpId1']
|
|
71
|
-
};
|
|
72
|
-
const result = (0, _getFirstOf.default)(CONFIG, DATA);
|
|
73
|
-
expect(result).toEqual('');
|
|
74
|
-
});
|
|
75
|
-
it('Should return null when an invalid config is used', () => {
|
|
76
|
-
const result = (0, _getFirstOf.default)(null, DATA);
|
|
77
|
-
expect(result).toEqual(null);
|
|
78
|
-
});
|
|
79
|
-
it('Should return null when invalid data is used', () => {
|
|
80
|
-
const CONFIG = {
|
|
81
|
-
field: 'a'
|
|
82
|
-
};
|
|
83
|
-
const result = (0, _getFirstOf.default)(CONFIG, null);
|
|
84
|
-
expect(result).toEqual(null);
|
|
85
|
-
});
|
|
86
|
-
});
|
|
87
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZ2V0Rmlyc3RPZiIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiZSIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0IiwiZGVzY3JpYmUiLCJEQVRBIiwibmFtZSIsImlkIiwidGVzdCIsImlkTmFtZSIsInBhc3Nwb3J0TnVtYmVyIiwib3RoZXJJZERvYyIsImFub3RoZXJNYWRlVXBJZCIsIml0IiwiQ09ORklHIiwiZmllbGRzIiwicmVzdWx0IiwiZ2V0Rmlyc3RPZiIsImV4cGVjdCIsInRvRXF1YWwiLCJ2YWx1ZSIsImZhbGxiYWNrIiwiY29uY2F0IiwiZmllbGQiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdXRpbHMvT3BlcmF0ZS9nZXRGaXJzdE9mLnRlc3QuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGdldEZpcnN0T2YgZnJvbSAnLi9nZXRGaXJzdE9mJztcblxuZGVzY3JpYmUoJ1V0aWxzLk9wZXJhdGUuZ2V0Rmlyc3RPZicsICgpID0+IHtcbiAgY29uc3QgREFUQSA9IHtcbiAgICAgICAgbmFtZTogJ3NhbScsXG4gICAgICAgIGlkOiAxLFxuICAgICAgICB0ZXN0OiBbICcyJywgJzMnIF0sXG4gICAgICAgIGlkTmFtZTogJ3Bhc3Nwb3J0JyxcbiAgICAgICAgcGFzc3BvcnROdW1iZXI6IDEyMyxcbiAgICAgICAgb3RoZXJJZERvYzogJycsXG4gICAgICAgIGFub3RoZXJNYWRlVXBJZDogNzg5LCAgXG59O1xuXG4gIGl0KCdTaG91bGQgaGFuZGxlIGludGVycG9sYXRlZCBmaWVsZCBzdHJpbmdzJywgKCkgPT4ge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby10ZW1wbGF0ZS1jdXJseS1pbi1zdHJpbmdcbiAgICBjb25zdCBDT05GSUcgPSB7IGZpZWxkczogWyd0ZXN0WyR7aWR9XSddIH07XG4gICAgY29uc3QgcmVzdWx0ID0gZ2V0Rmlyc3RPZihDT05GSUcsIERBVEEpO1xuICAgIGV4cGVjdChyZXN1bHQpLnRvRXF1YWwoREFUQS50ZXN0WzFdKTtcbiAgfSk7XG5cbiAgaXQoJ1Nob3VsZCByZXR1cm4gdGhlIHZhbHVlIHByb3ZpZGVkIGluIGNvbmZpZyBpZiBubyBmaWVsZCBpcyBzcGVjaWZpZWQnLCAoKSA9PiB7XG4gICAgY29uc3QgQ09ORklHID17IHZhbHVlOiAnMicgfTsgXG4gICAgY29uc3QgcmVzdWx0ID0gZ2V0Rmlyc3RPZihDT05GSUcsIERBVEEpO1xuICAgIGV4cGVjdChyZXN1bHQpLnRvRXF1YWwoQ09ORklHLnZhbHVlKTtcbiAgfSk7XG5cbiAgaXQoJ1Nob3VsZCByZXR1cm4gdGhlIGZhbGxiYWNrIGlmIHRoZSByZXF1ZXN0ZWQgZmllbGRzIGFyZSBub3QgZm91bmQnLCAoKSA9PiB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXRlbXBsYXRlLWN1cmx5LWluLXN0cmluZ1xuICAgIGNvbnN0IENPTkZJRyA9eyB2YWx1ZTogJzInLCBmaWVsZHM6IFsgJ25vbkV4aXN0ZW50JyBdLCBmYWxsYmFjazogXCJUZXN0ICR7bmFtZX1cIiB9O1xuICAgIGNvbnN0IHJlc3VsdCA9IGdldEZpcnN0T2YoQ09ORklHLCBEQVRBKTtcbiAgICBleHBlY3QocmVzdWx0KS50b0VxdWFsKGBUZXN0ICR7REFUQS5uYW1lfWApO1xuICB9KTtcblxuICBpdCgnU2hvdWxkIHJldHVybiB0aGUgdmFsdWUgb2YgdGhlIHBhc3Nwb3J0TnVtYmVyIGZpZWxkIGdpdmVuIGluIGNvbmZpZycsICgpID0+IHtcbiAgICBjb25zdCBDT05GSUcgPSB7IGZpZWxkczogWyAncGFzc3BvcnROdW1iZXInLCAnYW5vdGhlck1hZGVVcElkJywgJ290aGVySWREb2MnXSB9O1xuICAgIGNvbnN0IHJlc3VsdCA9IGdldEZpcnN0T2YoQ09ORklHLCBEQVRBKTtcbiAgICBleHBlY3QocmVzdWx0KS50b0VxdWFsKERBVEEucGFzc3BvcnROdW1iZXIpO1xuICB9KTtcblxuICBpdCgnU2hvdWxkIHJldHVybiB0aGUgdmFsdWUgb2YgdGhlIGFub3RoZXJNYWRlVXBJZCBmaWVsZCBnaXZlbiBpbiBjb25maWcnLCAoKSA9PiB7XG4gICAgY29uc3QgQ09ORklHID0geyBmaWVsZHM6IFsgJ2Fub3RoZXJNYWRlVXBJZCcsICdwYXNzcG9ydE51bWJlcicsICdvdGhlcklkRG9jJ10gfTtcbiAgICBjb25zdCByZXN1bHQgPSBnZXRGaXJzdE9mKENPTkZJRywgREFUQSk7XG4gICAgZXhwZWN0KHJlc3VsdCkudG9FcXVhbChEQVRBLmFub3RoZXJNYWRlVXBJZCk7XG4gIH0pO1xuXG4gIGl0KCdTaG91bGQgcmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGUgb3RoZXJJZERvYyBmaWVsZCBnaXZlbiBpbiBjb25maWcnLCAoKSA9PiB7XG4gICAgY29uc3QgQ09ORklHID0geyBmaWVsZHM6IFsgJ290aGVySWREb2MnLCAncGFzc3BvcnROdW1iZXInLCAnYW5vdGhlck1hZGVVcElkJ10gfTtcbiAgICBjb25zdCByZXN1bHQgPSBnZXRGaXJzdE9mKENPTkZJRywgREFUQSk7XG4gICAgZXhwZWN0KHJlc3VsdCkudG9FcXVhbChEQVRBLnBhc3Nwb3J0TnVtYmVyKTtcbiAgfSk7XG5cbiAgaXQoJ1Nob3VsZCByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSBvdGhlcklkRG9jIGZpZWxkIGdpdmVuIGluIGNvbmZpZywgaWYgaXQgZXhpc3RzLCBvdGhlcndpc2UgbmV4dCBmaWVsZCBuZXh0IGluIHRoZSBhcnJheScsICgpID0+IHtcbiAgICBjb25zdCBDT05GSUcgPSB7IGZpZWxkczogWyAnb3RoZXJJZERvYycsICdwYXNzcG9ydE51bWJlcicsICdhbm90aGVyTWFkZVVwSWQnXSB9O1xuICAgIGNvbnN0IHJlc3VsdCA9IGdldEZpcnN0T2YoQ09ORklHLCBEQVRBKTtcbiAgICBleHBlY3QocmVzdWx0KS50b0VxdWFsKERBVEEucGFzc3BvcnROdW1iZXIpO1xuICB9KTtcblxuICBpdCgnU2hvdWxkIHJldHVybiBubyB2YWx1ZSBpZiBlbGVtZW50cyBpbiBjb25maWcuZmllbGRzIGFyZSBub3QgZm91bmQgaW4gZGF0YScsICgpID0+IHtcbiAgICBjb25zdCBDT05GSUcgPSB7IGZpZWxkczogWyAnb3RoZXJJZERvYzEnLCAncGFzc3BvcnROdW1iZXIxJywgJ2Fub3RoZXJNYWRlVXBJZDEnXSB9O1xuICAgIGNvbnN0IHJlc3VsdCA9IGdldEZpcnN0T2YoQ09ORklHLCBEQVRBKTtcbiAgICBleHBlY3QocmVzdWx0KS50b0VxdWFsKCcnKTtcbiAgfSk7XG4gIFxuXG4gIGl0KCdTaG91bGQgcmV0dXJuIG51bGwgd2hlbiBhbiBpbnZhbGlkIGNvbmZpZyBpcyB1c2VkJywgKCkgPT4ge1xuICAgIGNvbnN0IHJlc3VsdCA9IGdldEZpcnN0T2YobnVsbCwgREFUQSk7XG4gICAgZXhwZWN0KHJlc3VsdCkudG9FcXVhbChudWxsKTtcbiAgfSk7XG5cbiAgaXQoJ1Nob3VsZCByZXR1cm4gbnVsbCB3aGVuIGludmFsaWQgZGF0YSBpcyB1c2VkJywgKCkgPT4ge1xuICAgIGNvbnN0IENPTkZJRyA9IHsgZmllbGQ6ICdhJyB9O1xuICAgIGNvbnN0IHJlc3VsdCA9IGdldEZpcnN0T2YoQ09ORklHLCBudWxsKTtcbiAgICBleHBlY3QocmVzdWx0KS50b0VxdWFsKG51bGwpO1xuICB9KTtcblxufSk7XG4iXSwibWFwcGluZ3MiOiI7O0FBQUEsSUFBQUEsV0FBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQXNDLFNBQUFELHVCQUFBRSxDQUFBLFdBQUFBLENBQUEsSUFBQUEsQ0FBQSxDQUFBQyxVQUFBLEdBQUFELENBQUEsS0FBQUUsT0FBQSxFQUFBRixDQUFBO0FBRXRDRyxRQUFRLENBQUMsMEJBQTBCLEVBQUUsTUFBTTtFQUN6QyxNQUFNQyxJQUFJLEdBQUc7SUFDUEMsSUFBSSxFQUFFLEtBQUs7SUFDWEMsRUFBRSxFQUFFLENBQUM7SUFDTEMsSUFBSSxFQUFFLENBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBRTtJQUNsQkMsTUFBTSxFQUFFLFVBQVU7SUFDbEJDLGNBQWMsRUFBRSxHQUFHO0lBQ25CQyxV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
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var _copReactComponents = require("@ukhomeoffice/cop-react-components");
|
|
8
|
-
var _getSourceData = _interopRequireDefault(require("../Data/getSourceData"));
|
|
9
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
|
-
// Global imports.
|
|
11
|
-
|
|
12
|
-
// Local imports.
|
|
13
|
-
|
|
14
|
-
const getValueOrField = (config, data) => {
|
|
15
|
-
if (config !== null && config !== void 0 && config.value) {
|
|
16
|
-
return config.value;
|
|
17
|
-
}
|
|
18
|
-
const path = _copReactComponents.Utils.interpolateString(config === null || config === void 0 ? void 0 : config.field, data);
|
|
19
|
-
return (0, _getSourceData.default)(data, path);
|
|
20
|
-
};
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
* Searches for a value in an array in data that matches a value given
|
|
24
|
-
* in config. A cutoff index can be provided in config if the search
|
|
25
|
-
* should stop after a certain number of entries. An index to ignore
|
|
26
|
-
* can also be provided.
|
|
27
|
-
* @param {object} config The config of the operation.
|
|
28
|
-
* @param {object} data A page's formData.
|
|
29
|
-
* @returns The index of the matching value if one exists, or null.
|
|
30
|
-
*/
|
|
31
|
-
const getIndexOfMatchingValueIn = (config, data) => {
|
|
32
|
-
if (!config || !data) {
|
|
33
|
-
return null;
|
|
34
|
-
}
|
|
35
|
-
const targetPath = _copReactComponents.Utils.interpolateString(config.target, data);
|
|
36
|
-
const target = (0, _getSourceData.default)(data, targetPath);
|
|
37
|
-
const value = getValueOrField(config, data);
|
|
38
|
-
const cutoff = getValueOrField(config.cutoff, data);
|
|
39
|
-
const ignore = getValueOrField(config.ignore, data);
|
|
40
|
-
let result = null;
|
|
41
|
-
if (target && value && Array.isArray(target)) {
|
|
42
|
-
target.every((entry, index) => {
|
|
43
|
-
if (index === cutoff) {
|
|
44
|
-
return false;
|
|
45
|
-
}
|
|
46
|
-
if (index === ignore) {
|
|
47
|
-
return true;
|
|
48
|
-
}
|
|
49
|
-
// Here we're simply checking if value matches the entry itself. This
|
|
50
|
-
// will be enough of a check for arrays of simple values.
|
|
51
|
-
if (entry === value) {
|
|
52
|
-
result = index;
|
|
53
|
-
return false;
|
|
54
|
-
}
|
|
55
|
-
// If the last check failed and there is a config.key defined, then
|
|
56
|
-
// we're most likely checking an array of objects and should use the
|
|
57
|
-
// key to index in and find a matching value.
|
|
58
|
-
if (config.key && (0, _getSourceData.default)(entry, config.key) === value) {
|
|
59
|
-
result = index;
|
|
60
|
-
return false;
|
|
61
|
-
}
|
|
62
|
-
return true;
|
|
63
|
-
});
|
|
64
|
-
}
|
|
65
|
-
return typeof result === 'number' ? result.toString() : result;
|
|
66
|
-
};
|
|
67
|
-
var _default = exports.default = getIndexOfMatchingValueIn;
|
|
68
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29wUmVhY3RDb21wb25lbnRzIiwicmVxdWlyZSIsIl9nZXRTb3VyY2VEYXRhIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsImUiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsImdldFZhbHVlT3JGaWVsZCIsImNvbmZpZyIsImRhdGEiLCJ2YWx1ZSIsInBhdGgiLCJVdGlscyIsImludGVycG9sYXRlU3RyaW5nIiwiZmllbGQiLCJnZXRTb3VyY2VEYXRhIiwiZ2V0SW5kZXhPZk1hdGNoaW5nVmFsdWVJbiIsInRhcmdldFBhdGgiLCJ0YXJnZXQiLCJjdXRvZmYiLCJpZ25vcmUiLCJyZXN1bHQiLCJBcnJheSIsImlzQXJyYXkiLCJldmVyeSIsImVudHJ5IiwiaW5kZXgiLCJrZXkiLCJ0b1N0cmluZyIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91dGlscy9PcGVyYXRlL2dldEluZGV4T2ZNYXRjaGluZ1ZhbHVlSW4uanMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gR2xvYmFsIGltcG9ydHMuXG5pbXBvcnQgeyBVdGlscyB9IGZyb20gJ0B1a2hvbWVvZmZpY2UvY29wLXJlYWN0LWNvbXBvbmVudHMnO1xuXG4vLyBMb2NhbCBpbXBvcnRzLlxuaW1wb3J0IGdldFNvdXJjZURhdGEgZnJvbSAnLi4vRGF0YS9nZXRTb3VyY2VEYXRhJztcblxuY29uc3QgZ2V0VmFsdWVPckZpZWxkID0gKGNvbmZpZywgZGF0YSkgPT4ge1xuICBpZiAoY29uZmlnPy52YWx1ZSkge1xuICAgIHJldHVybiBjb25maWcudmFsdWU7XG4gIH1cbiAgY29uc3QgcGF0aCA9IFV0aWxzLmludGVycG9sYXRlU3RyaW5nKGNvbmZpZz8uZmllbGQsIGRhdGEpO1xuICByZXR1cm4gZ2V0U291cmNlRGF0YShkYXRhLCBwYXRoKTtcbn07XG5cbi8qKlxuICogU2VhcmNoZXMgZm9yIGEgdmFsdWUgaW4gYW4gYXJyYXkgaW4gZGF0YSB0aGF0IG1hdGNoZXMgYSB2YWx1ZSBnaXZlbiBcbiAqIGluIGNvbmZpZy4gQSBjdXRvZmYgaW5kZXggY2FuIGJlIHByb3ZpZGVkIGluIGNvbmZpZyBpZiB0aGUgc2VhcmNoIFxuICogc2hvdWxkIHN0b3AgYWZ0ZXIgYSBjZXJ0YWluIG51bWJlciBvZiBlbnRyaWVzLiBBbiBpbmRleCB0byBpZ25vcmVcbiAqIGNhbiBhbHNvIGJlIHByb3ZpZGVkLlxuICogQHBhcmFtIHtvYmplY3R9IGNvbmZpZyBUaGUgY29uZmlnIG9mIHRoZSBvcGVyYXRpb24uXG4gKiBAcGFyYW0ge29iamVjdH0gZGF0YSBBIHBhZ2UncyBmb3JtRGF0YS5cbiAqIEByZXR1cm5zIFRoZSBpbmRleCBvZiB0aGUgbWF0Y2hpbmcgdmFsdWUgaWYgb25lIGV4aXN0cywgb3IgbnVsbC5cbiAqL1xuY29uc3QgZ2V0SW5kZXhPZk1hdGNoaW5nVmFsdWVJbiA9IChjb25maWcsIGRhdGEpID0+IHtcbiAgaWYgKCFjb25maWcgfHwgIWRhdGEpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuICBjb25zdCB0YXJnZXRQYXRoID0gVXRpbHMuaW50ZXJwb2xhdGVTdHJpbmcoY29uZmlnLnRhcmdldCwgZGF0YSk7XG4gIGNvbnN0IHRhcmdldCA9IGdldFNvdXJjZURhdGEoZGF0YSwgdGFyZ2V0UGF0aCk7XG4gIGNvbnN0IHZhbHVlID0gZ2V0VmFsdWVPckZpZWxkKGNvbmZpZywgZGF0YSk7XG4gIGNvbnN0IGN1dG9mZiA9IGdldFZhbHVlT3JGaWVsZChjb25maWcuY3V0b2ZmLCBkYXRhKTtcbiAgY29uc3QgaWdub3JlID0gZ2V0VmFsdWVPckZpZWxkKGNvbmZpZy5pZ25vcmUsIGRhdGEpO1xuICBsZXQgcmVzdWx0ID0gbnVsbDtcbiAgaWYgKHRhcmdldCAmJiB2YWx1ZSAmJiBBcnJheS5pc0FycmF5KHRhcmdldCkpIHtcbiAgICB0YXJnZXQuZXZlcnkoKGVudHJ5LCBpbmRleCkgPT4ge1xuICAgICAgaWYgKGluZGV4ID09PSBjdXRvZmYpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgICAgaWYgKGluZGV4ID09PSBpZ25vcmUpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgICAvLyBIZXJlIHdlJ3JlIHNpbXBseSBjaGVja2luZyBpZiB2YWx1ZSBtYXRjaGVzIHRoZSBlbnRyeSBpdHNlbGYuIFRoaXNcbiAgICAgIC8vIHdpbGwgYmUgZW5vdWdoIG9mIGEgY2hlY2sgZm9yIGFycmF5cyBvZiBzaW1wbGUgdmFsdWVzLlxuICAgICAgaWYgKGVudHJ5ID09PSB2YWx1ZSkge1xuICAgICAgICByZXN1bHQgPSBpbmRleDtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgICAgLy8gSWYgdGhlIGxhc3QgY2hlY2sgZmFpbGVkIGFuZCB0aGVyZSBpcyBhIGNvbmZpZy5rZXkgZGVmaW5lZCwgdGhlblxuICAgICAgLy8gd2UncmUgbW9zdCBsaWtlbHkgY2hlY2tpbmcgYW4gYXJyYXkgb2Ygb2JqZWN0cyBhbmQgc2hvdWxkIHVzZSB0aGVcbiAgICAgIC8vIGtleSB0byBpbmRleCBpbiBhbmQgZmluZCBhIG1hdGNoaW5nIHZhbHVlLlxuICAgICAgaWYgKGNvbmZpZy5rZXkgJiYgZ2V0U291cmNlRGF0YShlbnRyeSwgY29uZmlnLmtleSkgPT09IHZhbHVlKSB7XG4gICAgICAgIHJlc3VsdCA9IGluZGV4O1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9KVxuICB9XG4gIHJldHVybiAodHlwZW9mIHJlc3VsdCA9PT0gJ251bWJlcicpID8gcmVzdWx0LnRvU3RyaW5nKCkgOiByZXN1bHQ7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBnZXRJbmRleE9mTWF0Y2hpbmdWYWx1ZUluO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFDQSxJQUFBQSxtQkFBQSxHQUFBQyxPQUFBO0FBR0EsSUFBQUMsY0FBQSxHQUFBQyxzQkFBQSxDQUFBRixPQUFBO0FBQWtELFNBQUFFLHVCQUFBQyxDQUFBLFdBQUFBLENBQUEsSUFBQUEsQ0FBQSxDQUFBQyxVQUFBLEdBQUFELENBQUEsS0FBQUUsT0FBQSxFQUFBRixDQUFBO0FBSmxEOztBQUdBOztBQUdBLE1BQU1HLGVBQWUsR0FBR0EsQ0FBQ0MsTUFBTSxFQUFFQyxJQUFJLEtBQUs7RUFDeEMsSUFBSUQsTUFBTSxhQUFOQSxNQUFNLGVBQU5BLE1BQU0sQ0FBRUUsS0FBSyxFQUFFO0lBQ2pCLE9BQU9GLE1BQU0sQ0FBQ0UsS0FBSztFQUNyQjtFQUNBLE1BQU1DLElBQUksR0FBR0MseUJBQUssQ0FBQ0MsaUJBQWlCLENBQUNMLE1BQU0sYUFBTkEsTUFBTSx1QkFBTkEsTUFBTSxDQUFFTSxLQUFLLEVBQUVMLElBQUksQ0FBQztFQUN6RCxPQUFPLElBQUFNLHNCQUFhLEVBQUNOLElBQUksRUFBRUUsSUFBSSxDQUFDO0FBQ2xDLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBTUsseUJBQXlCLEdBQUdBLENBQUNSLE1BQU0sRUFBRUMsSUFBSSxLQUFLO0VBQ2xELElBQUksQ0FBQ0QsTUFBTSxJQUFJLENBQUNDLElBQUksRUFBRTtJQUNwQixPQUFPLElBQUk7RUFDYjtFQUNBLE1BQU1RLFVBQVUsR0FBR0wseUJBQUssQ0FBQ0MsaUJBQWlCLENBQUNMLE1BQU0sQ0FBQ1UsTUFBTSxFQUFFVCxJQUFJLENBQUM7RUFDL0QsTUFBTVMsTUFBTSxHQUFHLElBQUFILHNCQUFhLEVBQUNOLElBQUksRUFBRVEsVUFBVSxDQUFDO0VBQzlDLE1BQU1QLEtBQUssR0FBR0gsZUFBZSxDQUFDQyxNQUFNLEVBQUVDLElBQUksQ0FBQztFQUMzQyxNQUFNVSxNQUFNLEdBQUdaLGVBQWUsQ0FBQ0MsTUFBTSxDQUFDVyxNQUFNLEVBQUVWLElBQUksQ0FBQztFQUNuRCxNQUFNVyxNQUFNLEdBQUdiLGVBQWUsQ0FBQ0MsTUFBTSxDQUFDWSxNQUFNLEVBQUVYLElBQUksQ0FBQztFQUNuRCxJQUFJWSxNQUFNLEdBQUcsSUFBSTtFQUNqQixJQUFJSCxNQUFNLElBQUlSLEtBQUssSUFBSVksS0FBSyxDQUFDQyxPQUFPLENBQUNMLE1BQU0sQ0FBQyxFQUFFO0lBQzVDQSxNQUFNLENBQUNNLEtBQUssQ0FBQyxDQUFDQyxLQUFLLEVBQUVDLEtBQUssS0FBSztNQUM3QixJQUFJQSxLQUFLLEtBQUtQLE1BQU0sRUFBRTtRQUNwQixPQUFPLEtBQUs7TUFDZDtNQUNBLElBQUlPLEtBQUssS0FBS04sTUFBTSxFQUFFO1FBQ3BCLE9BQU8sSUFBSTtNQUNiO01BQ0E7TUFDQTtNQUNBLElBQUlLLEtBQUssS0FBS2YsS0FBSyxFQUFFO1FBQ25CVyxNQUFNLEdBQUdLLEtBQUs7UUFDZCxPQUFPLEtBQUs7TUFDZDtNQUNBO01BQ0E7TUFDQTtNQUNBLElBQUlsQixNQUFNLENBQUNtQixHQUFHLElBQUksSUFBQVosc0JBQWEsRUFBQ1UsS0FBSyxFQUFFakIsTUFBTSxDQUFDbUIsR0FBRyxDQUFDLEtBQUtqQixLQUFLLEVBQUU7UUFDNURXLE1BQU0sR0FBR0ssS0FBSztRQUNkLE9BQU8sS0FBSztNQUNkO01BQ0EsT0FBTyxJQUFJO0lBQ2IsQ0FBQyxDQUFDO0VBQ0o7RUFDQSxPQUFRLE9BQU9MLE1BQU0sS0FBSyxRQUFRLEdBQUlBLE1BQU0sQ0FBQ08sUUFBUSxDQUFDLENBQUMsR0FBR1AsTUFBTTtBQUNsRSxDQUFDO0FBQUMsSUFBQVEsUUFBQSxHQUFBQyxPQUFBLENBQUF4QixPQUFBLEdBRWFVLHlCQUF5QiIsImlnbm9yZUxpc3QiOltdfQ==
|