@ukhomeoffice/cop-react-form-renderer 5.45.2-alpha → 5.48.1-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/dist/components/CheckYourAnswers/Answer.js +12 -12
- package/dist/components/CheckYourAnswers/Answer.test.js +127 -92
- package/dist/components/CheckYourAnswers/CheckYourAnswers.js +131 -101
- package/dist/components/CheckYourAnswers/CheckYourAnswers.test.js +769 -464
- package/dist/components/CollectionPage/CollectionPage.js +58 -66
- package/dist/components/CollectionPage/CollectionPage.test.js +342 -300
- package/dist/components/CollectionSummary/BannerStrip.js +12 -12
- package/dist/components/CollectionSummary/BannerStrip.test.js +59 -63
- package/dist/components/CollectionSummary/CollectionSummary.js +88 -61
- package/dist/components/CollectionSummary/CollectionSummary.test.js +96 -102
- package/dist/components/CollectionSummary/Confirmation.js +12 -14
- package/dist/components/CollectionSummary/Confirmation.test.js +63 -68
- package/dist/components/CollectionSummary/SummaryCard.js +148 -109
- package/dist/components/CollectionSummary/SummaryCard.scss +1 -1
- package/dist/components/CollectionSummary/SummaryCard.test.js +927 -905
- package/dist/components/CollectionSummary/SummaryCardValidationContext.js +29 -23
- package/dist/components/CollectionSummary/SummaryCardValidationContext.test.js +73 -61
- package/dist/components/FormComponent/Collection.js +107 -73
- package/dist/components/FormComponent/Collection.test.js +945 -809
- package/dist/components/FormComponent/Container.js +38 -40
- package/dist/components/FormComponent/Container.test.js +345 -314
- package/dist/components/FormComponent/FormComponent.js +70 -67
- package/dist/components/FormComponent/FormComponent.test.js +342 -284
- package/dist/components/FormComponent/helpers/addLabel.js +7 -4
- package/dist/components/FormComponent/helpers/getComponentDisabled.js +1 -1
- package/dist/components/FormComponent/helpers/getComponentDisabled.test.js +7 -7
- package/dist/components/FormComponent/helpers/getComponentError.js +5 -3
- package/dist/components/FormComponent/helpers/getComponentError.test.js +14 -14
- package/dist/components/FormComponent/helpers/getComponentFieldSet.js +4 -3
- package/dist/components/FormComponent/helpers/getComponentFieldSet.test.js +6 -6
- package/dist/components/FormComponent/helpers/index.js +4 -4
- package/dist/components/FormPage/FormPage.js +80 -65
- package/dist/components/FormPage/FormPage.test.js +163 -127
- package/dist/components/FormRenderer/FormRenderer.js +181 -144
- package/dist/components/FormRenderer/FormRenderer.test.js +1115 -730
- package/dist/components/FormRenderer/handlers/cyaAction.js +2 -2
- package/dist/components/FormRenderer/handlers/getPageId.js +3 -1
- package/dist/components/FormRenderer/handlers/getPageId.test.js +14 -14
- package/dist/components/FormRenderer/handlers/handlers.test.js +32 -32
- package/dist/components/FormRenderer/handlers/index.js +1 -1
- package/dist/components/FormRenderer/handlers/navigate.js +3 -3
- package/dist/components/FormRenderer/handlers/submissionError.js +1 -1
- package/dist/components/FormRenderer/helpers/canActionProceed.js +5 -1
- package/dist/components/FormRenderer/helpers/canActionProceed.test.js +47 -11
- package/dist/components/FormRenderer/helpers/canCYASubmit.js +3 -1
- package/dist/components/FormRenderer/helpers/canCYASubmit.test.js +20 -16
- package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.js +22 -17
- package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.test.js +16 -16
- package/dist/components/FormRenderer/helpers/getCYA.js +5 -3
- package/dist/components/FormRenderer/helpers/getCYA.test.js +11 -11
- package/dist/components/FormRenderer/helpers/getFormState.js +7 -5
- package/dist/components/FormRenderer/helpers/getFormState.test.js +10 -10
- package/dist/components/FormRenderer/helpers/getNextPageId.js +24 -13
- package/dist/components/FormRenderer/helpers/getNextPageId.test.js +67 -67
- package/dist/components/FormRenderer/helpers/getPage.js +4 -2
- package/dist/components/FormRenderer/helpers/getPage.test.js +11 -11
- package/dist/components/FormRenderer/helpers/getRelevantPages.js +9 -7
- package/dist/components/FormRenderer/helpers/getRelevantPages.test.js +14 -14
- package/dist/components/FormRenderer/helpers/getSubmissionStatus.js +5 -5
- package/dist/components/FormRenderer/helpers/getSubmissionStatus.test.js +91 -97
- package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.js +60 -62
- package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.test.js +73 -71
- package/dist/components/FormRenderer/helpers/index.js +1 -1
- package/dist/components/FormRenderer/onCYAAction.js +51 -59
- package/dist/components/FormRenderer/onCYAAction.test.js +152 -164
- package/dist/components/FormRenderer/onPageAction.js +40 -44
- package/dist/components/FormRenderer/onPageAction.test.js +206 -223
- package/dist/components/FormRenderer/onTaskAction.js +13 -9
- package/dist/components/FormRenderer/onTaskAction.test.js +88 -93
- package/dist/components/PageActions/ActionButton.js +15 -12
- package/dist/components/PageActions/ActionButton.test.js +78 -56
- package/dist/components/PageActions/PageActions.js +10 -10
- package/dist/components/PageActions/PageActions.test.js +115 -86
- package/dist/components/SummaryList/GroupAction.js +17 -9
- package/dist/components/SummaryList/GroupAction.test.js +33 -37
- package/dist/components/SummaryList/RowAction.js +16 -11
- package/dist/components/SummaryList/RowAction.test.js +33 -37
- package/dist/components/SummaryList/SummaryList.js +26 -21
- package/dist/components/SummaryList/SummaryList.test.js +166 -143
- package/dist/components/SummaryList/SummaryListHeadingRow.js +4 -6
- package/dist/components/SummaryList/SummaryListRow.js +4 -6
- package/dist/components/SummaryList/SummaryListTitleRow.js +3 -5
- package/dist/components/SummaryList/helpers/getGroupActionAttributes.js +5 -3
- package/dist/components/SummaryList/helpers/getGroupActionAttributes.test.js +22 -22
- package/dist/components/SummaryList/helpers/getRowActionAttributes.js +5 -3
- package/dist/components/SummaryList/helpers/getRowActionAttributes.test.js +22 -22
- package/dist/components/SummaryList/helpers/index.js +1 -1
- package/dist/components/TaskList/Task.js +29 -19
- package/dist/components/TaskList/Task.test.js +76 -83
- package/dist/components/TaskList/TaskList.js +71 -45
- package/dist/components/TaskList/TaskList.test.js +111 -113
- package/dist/components/TaskList/TaskState.js +5 -7
- package/dist/components/TaskList/TaskState.test.js +45 -52
- package/dist/components/index.js +7 -7
- package/dist/context/HooksContext/HooksContext.js +79 -58
- package/dist/context/HooksContext/HooksContext.test.js +35 -26
- package/dist/context/HooksContext/index.js +4 -3
- package/dist/context/ValidationContext/ValidationContext.js +72 -32
- package/dist/context/ValidationContext/ValidationContext.test.js +59 -47
- package/dist/context/ValidationContext/index.js +4 -3
- package/dist/context/index.js +2 -2
- package/dist/hooks/index.js +10 -9
- package/dist/hooks/useAxios.js +40 -14
- package/dist/hooks/useGetRequest.js +97 -61
- package/dist/hooks/useHooks.js +3 -1
- package/dist/hooks/useRefData.js +39 -26
- package/dist/hooks/useValidation.js +3 -1
- package/dist/index.js +14 -13
- package/dist/models/CollectionLabels.js +1 -1
- package/dist/models/ComponentTypes.js +25 -25
- package/dist/models/EventTypes.js +4 -4
- package/dist/models/FormPages.js +4 -4
- package/dist/models/FormTypes.js +8 -8
- package/dist/models/HubFormats.js +3 -3
- package/dist/models/PageAction.js +38 -44
- package/dist/models/TaskStates.js +28 -30
- package/dist/models/index.js +9 -9
- package/dist/setupTests.js +31 -30
- package/dist/utils/CheckYourAnswers/getCYAAction.js +5 -5
- package/dist/utils/CheckYourAnswers/getCYAAction.test.js +54 -52
- package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.js +25 -15
- package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.test.js +35 -33
- package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.js +31 -17
- package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.test.js +44 -42
- package/dist/utils/CheckYourAnswers/getCYARow.js +6 -6
- package/dist/utils/CheckYourAnswers/getCYARow.test.js +86 -86
- package/dist/utils/CheckYourAnswers/getCYARowForGroup.js +24 -18
- package/dist/utils/CheckYourAnswers/getCYARowForGroup.test.js +16 -15
- package/dist/utils/CheckYourAnswers/getCYARowsForCollection.js +36 -33
- package/dist/utils/CheckYourAnswers/getCYARowsForCollection.test.js +60 -58
- package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.js +88 -79
- package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.test.js +124 -146
- package/dist/utils/CheckYourAnswers/getCYARowsForContainer.js +20 -25
- package/dist/utils/CheckYourAnswers/getCYARowsForContainer.test.js +97 -103
- package/dist/utils/CheckYourAnswers/getCYARowsForPage.js +18 -13
- package/dist/utils/CheckYourAnswers/getCYARowsForPage.test.js +76 -70
- package/dist/utils/CheckYourAnswers/index.js +1 -1
- package/dist/utils/CheckYourAnswers/showComponentCYA.js +4 -4
- package/dist/utils/CheckYourAnswers/showComponentCYA.test.js +24 -24
- package/dist/utils/CollectionPage/addCollectionPageEntry.js +1 -1
- package/dist/utils/CollectionPage/addCollectionPageEntry.test.js +5 -5
- package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.js +2 -2
- package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.test.js +17 -17
- package/dist/utils/CollectionPage/duplicateCollectionPageEntry.js +18 -9
- package/dist/utils/CollectionPage/duplicateCollectionPageEntry.test.js +22 -27
- package/dist/utils/CollectionPage/getCollectionPageActiveId.js +2 -2
- package/dist/utils/CollectionPage/getCollectionPageActiveId.test.js +10 -10
- package/dist/utils/CollectionPage/getCollectionPageActiveIndex.js +11 -7
- package/dist/utils/CollectionPage/getCollectionPageActiveIndex.test.js +22 -22
- package/dist/utils/CollectionPage/getCollectionPageData.js +12 -8
- package/dist/utils/CollectionPage/getCollectionPageData.test.js +19 -19
- package/dist/utils/CollectionPage/getQuickEditPage.js +19 -19
- package/dist/utils/CollectionPage/getQuickEditPage.test.js +16 -12
- package/dist/utils/CollectionPage/index.js +1 -1
- package/dist/utils/CollectionPage/mergeCollectionPages.js +30 -29
- package/dist/utils/CollectionPage/mergeCollectionPages.test.js +17 -17
- package/dist/utils/CollectionPage/removeCollectionPageEntry.js +6 -4
- package/dist/utils/CollectionPage/removeCollectionPageEntry.test.js +10 -10
- package/dist/utils/CollectionPage/setCollectionPageData.js +12 -8
- package/dist/utils/CollectionPage/setCollectionPageData.test.js +17 -17
- package/dist/utils/Component/addShowWhen.js +8 -4
- package/dist/utils/Component/addShowWhen.test.js +37 -37
- package/dist/utils/Component/applyToComponentTree.js +18 -18
- package/dist/utils/Component/applyToComponentTree.test.js +32 -27
- package/dist/utils/Component/cleanAttributes.js +13 -10
- package/dist/utils/Component/cleanAttributes.test.js +18 -17
- package/dist/utils/Component/elevateNestedComponents.js +5 -5
- package/dist/utils/Component/elevateNestedComponents.test.js +30 -30
- package/dist/utils/Component/getComponent.js +94 -88
- package/dist/utils/Component/getComponentTests/getComponent.autocomplete.test.js +17 -18
- package/dist/utils/Component/getComponentTests/getComponent.calculation.test.js +59 -46
- package/dist/utils/Component/getComponentTests/getComponent.checkboxes.test.js +48 -39
- package/dist/utils/Component/getComponentTests/getComponent.date.test.js +33 -23
- package/dist/utils/Component/getComponentTests/getComponent.details.test.js +18 -20
- package/dist/utils/Component/getComponentTests/getComponent.email.test.js +22 -17
- package/dist/utils/Component/getComponentTests/getComponent.file.test.js +25 -20
- package/dist/utils/Component/getComponentTests/getComponent.heading.test.js +9 -10
- package/dist/utils/Component/getComponentTests/getComponent.html.test.js +15 -17
- package/dist/utils/Component/getComponentTests/getComponent.insetText.test.js +8 -9
- package/dist/utils/Component/getComponentTests/getComponent.list.test.js +15 -17
- package/dist/utils/Component/getComponentTests/getComponent.multifile.test.js +26 -22
- package/dist/utils/Component/getComponentTests/getComponent.nested.test.js +175 -155
- package/dist/utils/Component/getComponentTests/getComponent.paragraph.test.js +15 -17
- package/dist/utils/Component/getComponentTests/getComponent.phoneNumber.test.js +22 -17
- package/dist/utils/Component/getComponentTests/getComponent.radios.test.js +70 -57
- package/dist/utils/Component/getComponentTests/getComponent.select.test.js +22 -17
- package/dist/utils/Component/getComponentTests/getComponent.text.test.js +22 -17
- package/dist/utils/Component/getComponentTests/getComponent.textArea.test.js +38 -31
- package/dist/utils/Component/getComponentTests/getComponent.time.test.js +29 -20
- package/dist/utils/Component/getComponentTests/getComponent.unknown.test.js +2 -2
- package/dist/utils/Component/getComponentTests/getComponent.warningText.test.js +8 -9
- package/dist/utils/Component/getDefaultValue.js +8 -6
- package/dist/utils/Component/getDefaultValue.test.js +12 -12
- package/dist/utils/Component/getDefaultValueFromConfig.js +21 -22
- package/dist/utils/Component/getDefaultValueFromConfig.test.js +31 -31
- package/dist/utils/Component/index.js +1 -1
- package/dist/utils/Component/isEditable.js +4 -2
- package/dist/utils/Component/isEditable.test.js +15 -14
- package/dist/utils/Component/optionIsSelected.js +1 -1
- package/dist/utils/Component/optionIsSelected.test.js +9 -9
- package/dist/utils/Component/setupContainerComponentsPath.js +29 -27
- package/dist/utils/Component/setupContainerComponentsPath.test.js +11 -11
- package/dist/utils/Component/showComponent.js +1 -1
- package/dist/utils/Component/showComponent.test.js +28 -28
- package/dist/utils/Component/wrapInFormGroup.js +2 -2
- package/dist/utils/Condition/index.js +1 -1
- package/dist/utils/Condition/meetsAllConditions.js +7 -7
- package/dist/utils/Condition/meetsAllConditions.test.js +17 -17
- package/dist/utils/Condition/meetsCondition.js +17 -14
- package/dist/utils/Condition/meetsCondition.test.js +376 -376
- package/dist/utils/Condition/meetsOneCondition.js +5 -5
- package/dist/utils/Condition/meetsOneCondition.test.js +16 -16
- package/dist/utils/Condition/setupConditions.js +18 -13
- package/dist/utils/Condition/setupConditions.test.js +7 -7
- package/dist/utils/Container/getEditableComponents.js +5 -3
- package/dist/utils/Container/getEditableComponents.test.js +45 -43
- package/dist/utils/Container/index.js +1 -1
- package/dist/utils/Container/setupNesting.js +20 -16
- package/dist/utils/Container/setupNesting.test.js +30 -27
- package/dist/utils/Container/showContainer.js +7 -3
- package/dist/utils/Container/showContainer.test.js +30 -30
- package/dist/utils/Data/applyFormula.js +48 -38
- package/dist/utils/Data/applyFormula.test.js +20 -20
- package/dist/utils/Data/getAutocompleteSource.js +26 -18
- package/dist/utils/Data/getAutocompleteSource.test.js +86 -80
- package/dist/utils/Data/getDataPath.js +28 -18
- package/dist/utils/Data/getDataPath.test.js +12 -12
- package/dist/utils/Data/getOptions.js +25 -19
- package/dist/utils/Data/getOptions.test.js +20 -20
- package/dist/utils/Data/getSourceData.js +19 -6
- package/dist/utils/Data/getSourceData.test.js +80 -84
- package/dist/utils/Data/index.js +1 -1
- package/dist/utils/Data/refDataToOptions.js +13 -10
- package/dist/utils/Data/refDataToOptions.test.js +19 -19
- package/dist/utils/Data/setDataItem.js +8 -7
- package/dist/utils/Data/setDataItem.test.js +37 -37
- package/dist/utils/Data/setupFormData.js +21 -13
- package/dist/utils/Data/setupFormData.test.js +50 -51
- package/dist/utils/Data/setupRefDataUrlForComponent.js +26 -20
- package/dist/utils/Data/setupRefDataUrlForComponent.test.js +24 -24
- package/dist/utils/FormPage/applyConditionalProperties.js +9 -5
- package/dist/utils/FormPage/applyConditionalProperties.test.js +18 -15
- package/dist/utils/FormPage/getFormPage.js +16 -15
- package/dist/utils/FormPage/getFormPage.test.js +46 -47
- package/dist/utils/FormPage/getFormPages.js +12 -7
- package/dist/utils/FormPage/getFormPages.test.js +23 -20
- package/dist/utils/FormPage/getPageActions.js +15 -9
- package/dist/utils/FormPage/getPageActions.test.js +32 -32
- package/dist/utils/FormPage/getPageTitle.js +2 -2
- package/dist/utils/FormPage/getPageTitle.test.js +22 -22
- package/dist/utils/FormPage/getParagraphFromText.js +7 -5
- package/dist/utils/FormPage/getParagraphFromText.test.js +6 -6
- package/dist/utils/FormPage/index.js +1 -1
- package/dist/utils/FormPage/showFormPage.js +7 -3
- package/dist/utils/FormPage/showFormPage.test.js +32 -32
- package/dist/utils/FormPage/showFormPageCYA.js +1 -1
- package/dist/utils/FormPage/showFormPageCYA.test.js +8 -8
- package/dist/utils/FormPage/useComponent.js +28 -21
- package/dist/utils/FormPage/useComponent.test.js +79 -78
- package/dist/utils/Format/formatData.js +1 -1
- package/dist/utils/Format/formatData.test.js +18 -18
- package/dist/utils/Format/formatDataForComponent.js +6 -5
- package/dist/utils/Format/formatDataForComponent.test.js +77 -50
- package/dist/utils/Format/formatDataForForm.js +8 -6
- package/dist/utils/Format/formatDataForForm.test.js +15 -13
- package/dist/utils/Format/formatDataForPage.js +5 -4
- package/dist/utils/Format/formatDataForPage.test.js +23 -20
- package/dist/utils/Format/index.js +1 -1
- package/dist/utils/Hub/getFormHub.js +1 -1
- package/dist/utils/Hub/getFormHub.test.js +31 -28
- package/dist/utils/Hub/index.js +1 -1
- package/dist/utils/Meta/constants.js +2 -2
- package/dist/utils/Meta/documents/getDocuments.js +1 -1
- package/dist/utils/Meta/documents/getDocuments.test.js +16 -24
- package/dist/utils/Meta/documents/index.js +1 -1
- package/dist/utils/Meta/documents/setDocumentsForField.js +16 -14
- package/dist/utils/Meta/documents/setDocumentsForField.test.js +34 -68
- package/dist/utils/Meta/index.js +1 -1
- package/dist/utils/Operate/checkValueIsTruthy.js +2 -2
- package/dist/utils/Operate/checkValueIsTruthy.test.js +16 -16
- package/dist/utils/Operate/getFirstOf.js +5 -5
- package/dist/utils/Operate/getFirstOf.test.js +31 -31
- package/dist/utils/Operate/getIndexOfMatchingValueIn.js +10 -10
- package/dist/utils/Operate/getIndexOfMatchingValueIn.test.js +46 -46
- package/dist/utils/Operate/index.js +1 -1
- package/dist/utils/Operate/persistValueInFormData.js +3 -3
- package/dist/utils/Operate/persistValueInFormData.test.js +20 -22
- package/dist/utils/Operate/runPageOperations.js +7 -7
- package/dist/utils/Operate/runPageOperations.test.js +36 -35
- package/dist/utils/Operate/setValueInFormData.js +2 -2
- package/dist/utils/Operate/setValueInFormData.test.js +16 -16
- package/dist/utils/Operate/shouldRun.js +6 -6
- package/dist/utils/Operate/shouldRun.test.js +26 -21
- package/dist/utils/Validate/additional/conditionallyRequired.js +4 -4
- package/dist/utils/Validate/additional/conditionallyRequired.test.js +18 -18
- package/dist/utils/Validate/additional/index.js +10 -8
- package/dist/utils/Validate/additional/index.test.js +12 -12
- package/dist/utils/Validate/additional/mustBeAfter.js +2 -2
- package/dist/utils/Validate/additional/mustBeAfter.test.js +40 -40
- package/dist/utils/Validate/additional/mustBeBefore.js +2 -2
- package/dist/utils/Validate/additional/mustBeBefore.test.js +28 -28
- package/dist/utils/Validate/additional/mustBeEarlierDateTime.js +11 -7
- package/dist/utils/Validate/additional/mustBeEarlierDateTime.test.js +41 -37
- package/dist/utils/Validate/additional/mustBeGreaterThan.js +2 -2
- package/dist/utils/Validate/additional/mustBeGreaterThan.test.js +18 -18
- package/dist/utils/Validate/additional/mustBeInTheFuture.js +2 -2
- package/dist/utils/Validate/additional/mustBeInTheFuture.test.js +12 -12
- package/dist/utils/Validate/additional/mustBeInThePast.js +3 -3
- package/dist/utils/Validate/additional/mustBeInThePast.test.js +12 -12
- package/dist/utils/Validate/additional/mustBeLessThan.js +2 -2
- package/dist/utils/Validate/additional/mustBeLessThan.test.js +17 -17
- package/dist/utils/Validate/additional/mustBeLongerThan.js +1 -1
- package/dist/utils/Validate/additional/mustBeLongerThan.test.js +16 -16
- package/dist/utils/Validate/additional/mustBeNumbersOnly.js +2 -2
- package/dist/utils/Validate/additional/mustBeNumbersOnly.test.js +20 -20
- package/dist/utils/Validate/additional/mustBeShorterThan.js +1 -1
- package/dist/utils/Validate/additional/mustBeShorterThan.test.js +16 -16
- package/dist/utils/Validate/additional/mustBeUniqueInCollection.js +35 -0
- package/dist/utils/Validate/additional/mustBeUniqueInCollection.test.js +127 -0
- package/dist/utils/Validate/additional/mustEnterAtLeastOne.js +2 -2
- package/dist/utils/Validate/additional/mustEnterAtLeastOne.test.js +16 -14
- package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.js +1 -1
- package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.test.js +12 -12
- package/dist/utils/Validate/additional/mustNotContainSql.js +4 -3
- package/dist/utils/Validate/additional/mustNotContainSql.test.js +14 -14
- package/dist/utils/Validate/additional/mustSelectOnlyOne.js +2 -2
- package/dist/utils/Validate/additional/mustSelectOnlyOne.test.js +26 -28
- package/dist/utils/Validate/additional/utils.js +22 -9
- package/dist/utils/Validate/index.js +1 -1
- package/dist/utils/Validate/validateCollection.js +25 -19
- package/dist/utils/Validate/validateCollection.test.js +66 -74
- package/dist/utils/Validate/validateComponent.js +16 -18
- package/dist/utils/Validate/validateComponent.test.js +146 -167
- package/dist/utils/Validate/validateContainer.js +19 -14
- package/dist/utils/Validate/validateContainer.test.js +45 -49
- package/dist/utils/Validate/validateDate.js +17 -11
- package/dist/utils/Validate/validateDate.test.js +29 -28
- package/dist/utils/Validate/validateEmail.js +8 -6
- package/dist/utils/Validate/validateEmail.test.js +25 -25
- package/dist/utils/Validate/validateMultifile.js +7 -5
- package/dist/utils/Validate/validateMultifile.test.js +18 -17
- package/dist/utils/Validate/validatePage.js +18 -17
- package/dist/utils/Validate/validatePage.test.js +182 -185
- package/dist/utils/Validate/validateRegex.js +5 -3
- package/dist/utils/Validate/validateRegex.test.js +14 -14
- package/dist/utils/Validate/validateRequired.js +6 -4
- package/dist/utils/Validate/validateRequired.test.js +18 -18
- package/dist/utils/Validate/validateTextArea.js +6 -4
- package/dist/utils/Validate/validateTextArea.test.js +20 -20
- package/dist/utils/Validate/validateTime.js +14 -7
- package/dist/utils/Validate/validateTime.test.js +14 -14
- package/dist/utils/index.js +9 -7
- package/package.json +2 -2
|
@@ -4,30 +4,34 @@ var _setupTests = require("../../setupTests");
|
|
|
4
4
|
var _models = require("../../models");
|
|
5
5
|
var _getCYARowsForPage = _interopRequireDefault(require("./getCYARowsForPage"));
|
|
6
6
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
7
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
8
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
9
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
10
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
11
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
12
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } // Local imports
|
|
13
|
+
describe('utils', function () {
|
|
14
|
+
describe('CheckYourAnswers', function () {
|
|
15
|
+
describe('getCYARowsForPage', function () {
|
|
16
|
+
it('should get a appropriate row for a page with a single readonly text component', function () {
|
|
17
|
+
var COMPONENT = {
|
|
14
18
|
type: 'text',
|
|
15
19
|
readonly: true,
|
|
16
20
|
id: 'a',
|
|
17
21
|
fieldId: 'a',
|
|
18
22
|
label: 'Alpha'
|
|
19
23
|
};
|
|
20
|
-
|
|
24
|
+
var PAGE = {
|
|
21
25
|
id: 'page',
|
|
22
26
|
components: [COMPONENT],
|
|
23
27
|
formData: {
|
|
24
28
|
a: 'Bravo'
|
|
25
29
|
}
|
|
26
30
|
};
|
|
27
|
-
|
|
28
|
-
|
|
31
|
+
var ON_ACTION = function ON_ACTION() {};
|
|
32
|
+
var ROWS = (0, _getCYARowsForPage.default)(PAGE, ON_ACTION);
|
|
29
33
|
expect(ROWS.length).toEqual(1);
|
|
30
|
-
ROWS.forEach((row, index)
|
|
34
|
+
ROWS.forEach(function (row, index) {
|
|
31
35
|
(0, _setupTests.expectObjectLike)(row, {
|
|
32
36
|
pageId: PAGE.id,
|
|
33
37
|
fieldId: PAGE.components[index].fieldId,
|
|
@@ -38,20 +42,20 @@ describe('utils', () => {
|
|
|
38
42
|
});
|
|
39
43
|
});
|
|
40
44
|
});
|
|
41
|
-
it('should get appropriate rows for a page with two editable text components', ()
|
|
42
|
-
|
|
45
|
+
it('should get appropriate rows for a page with two editable text components', function () {
|
|
46
|
+
var COMPONENT_A = {
|
|
43
47
|
type: 'text',
|
|
44
48
|
id: 'a',
|
|
45
49
|
fieldId: 'a',
|
|
46
50
|
label: 'Alpha'
|
|
47
51
|
};
|
|
48
|
-
|
|
52
|
+
var COMPONENT_B = {
|
|
49
53
|
type: 'text',
|
|
50
54
|
id: 'b',
|
|
51
55
|
fieldId: 'b',
|
|
52
56
|
label: 'Bravo'
|
|
53
57
|
};
|
|
54
|
-
|
|
58
|
+
var PAGE = {
|
|
55
59
|
id: 'page',
|
|
56
60
|
components: [COMPONENT_A, COMPONENT_B],
|
|
57
61
|
formData: {
|
|
@@ -60,10 +64,10 @@ describe('utils', () => {
|
|
|
60
64
|
},
|
|
61
65
|
cya_link: {}
|
|
62
66
|
};
|
|
63
|
-
|
|
64
|
-
|
|
67
|
+
var ON_ACTION = function ON_ACTION() {};
|
|
68
|
+
var ROWS = (0, _getCYARowsForPage.default)(PAGE, ON_ACTION);
|
|
65
69
|
expect(ROWS.length).toEqual(2);
|
|
66
|
-
ROWS.forEach((row, index)
|
|
70
|
+
ROWS.forEach(function (row, index) {
|
|
67
71
|
(0, _setupTests.expectObjectLike)(row, {
|
|
68
72
|
pageId: PAGE.id,
|
|
69
73
|
fieldId: PAGE.components[index].fieldId,
|
|
@@ -76,24 +80,24 @@ describe('utils', () => {
|
|
|
76
80
|
});
|
|
77
81
|
});
|
|
78
82
|
});
|
|
79
|
-
it("should filter out any components that shouldn't be shown", ()
|
|
80
|
-
|
|
83
|
+
it("should filter out any components that shouldn't be shown", function () {
|
|
84
|
+
var COMPONENT_A = {
|
|
81
85
|
type: 'text',
|
|
82
86
|
id: 'a',
|
|
83
87
|
fieldId: 'a',
|
|
84
88
|
label: 'Alpha'
|
|
85
89
|
};
|
|
86
|
-
|
|
90
|
+
var COMPONENT_B = {
|
|
87
91
|
type: 'text',
|
|
88
92
|
id: 'b',
|
|
89
93
|
fieldId: 'b',
|
|
90
94
|
label: 'Bravo'
|
|
91
95
|
};
|
|
92
|
-
|
|
96
|
+
var COMPONENT_C = {
|
|
93
97
|
type: 'heading',
|
|
94
98
|
content: 'Heading component'
|
|
95
99
|
};
|
|
96
|
-
|
|
100
|
+
var PAGE = {
|
|
97
101
|
id: 'page',
|
|
98
102
|
components: [COMPONENT_A, COMPONENT_B, COMPONENT_C],
|
|
99
103
|
formData: {
|
|
@@ -102,10 +106,10 @@ describe('utils', () => {
|
|
|
102
106
|
},
|
|
103
107
|
cya_link: {}
|
|
104
108
|
};
|
|
105
|
-
|
|
106
|
-
|
|
109
|
+
var ON_ACTION = function ON_ACTION() {};
|
|
110
|
+
var ROWS = (0, _getCYARowsForPage.default)(PAGE, ON_ACTION);
|
|
107
111
|
expect(ROWS.length).toEqual(2);
|
|
108
|
-
ROWS.forEach((row, index)
|
|
112
|
+
ROWS.forEach(function (row, index) {
|
|
109
113
|
(0, _setupTests.expectObjectLike)(row, {
|
|
110
114
|
pageId: PAGE.id,
|
|
111
115
|
fieldId: PAGE.components[index].fieldId,
|
|
@@ -118,20 +122,20 @@ describe('utils', () => {
|
|
|
118
122
|
});
|
|
119
123
|
});
|
|
120
124
|
});
|
|
121
|
-
it('should get a appropriate row for a page with a single readonly text component inside of a container', ()
|
|
122
|
-
|
|
125
|
+
it('should get a appropriate row for a page with a single readonly text component inside of a container', function () {
|
|
126
|
+
var FORM_DATA = {
|
|
123
127
|
container: {
|
|
124
128
|
a: 'Bravo'
|
|
125
129
|
}
|
|
126
130
|
};
|
|
127
|
-
|
|
131
|
+
var COMPONENT = {
|
|
128
132
|
type: 'text',
|
|
129
133
|
readonly: true,
|
|
130
134
|
id: 'a',
|
|
131
135
|
fieldId: 'a',
|
|
132
136
|
label: 'Alpha'
|
|
133
137
|
};
|
|
134
|
-
|
|
138
|
+
var CONTAINER = {
|
|
135
139
|
id: 'container',
|
|
136
140
|
fieldId: 'container',
|
|
137
141
|
type: _models.ComponentTypes.CONTAINER,
|
|
@@ -139,15 +143,15 @@ describe('utils', () => {
|
|
|
139
143
|
value: FORM_DATA.container,
|
|
140
144
|
formData: FORM_DATA
|
|
141
145
|
};
|
|
142
|
-
|
|
146
|
+
var PAGE = {
|
|
143
147
|
id: 'page',
|
|
144
148
|
components: [CONTAINER],
|
|
145
149
|
formData: FORM_DATA
|
|
146
150
|
};
|
|
147
|
-
|
|
148
|
-
|
|
151
|
+
var ON_ACTION = function ON_ACTION() {};
|
|
152
|
+
var ROWS = (0, _getCYARowsForPage.default)(PAGE, ON_ACTION);
|
|
149
153
|
expect(ROWS.length).toEqual(1);
|
|
150
|
-
ROWS.forEach((row, index)
|
|
154
|
+
ROWS.forEach(function (row, index) {
|
|
151
155
|
(0, _setupTests.expectObjectLike)(row, {
|
|
152
156
|
pageId: PAGE.id,
|
|
153
157
|
fieldId: CONTAINER.components[index].fieldId,
|
|
@@ -158,32 +162,32 @@ describe('utils', () => {
|
|
|
158
162
|
});
|
|
159
163
|
});
|
|
160
164
|
});
|
|
161
|
-
it('Add ability to display answers from multiple fields in a single row', ()
|
|
162
|
-
|
|
165
|
+
it('Add ability to display answers from multiple fields in a single row', function () {
|
|
166
|
+
var COMPONENT_ADDRESS = {
|
|
163
167
|
id: 'firstLineOfTheAddress',
|
|
164
168
|
fieldId: 'firstLineOfTheAddress',
|
|
165
169
|
label: 'address',
|
|
166
170
|
type: 'text'
|
|
167
171
|
};
|
|
168
|
-
|
|
172
|
+
var COMPONENT_TOWN = {
|
|
169
173
|
id: 'town',
|
|
170
174
|
fieldId: 'town',
|
|
171
175
|
label: 'Town',
|
|
172
176
|
type: 'text'
|
|
173
177
|
};
|
|
174
|
-
|
|
178
|
+
var COMPONENT_CITY = {
|
|
175
179
|
id: 'city',
|
|
176
180
|
fieldId: 'city',
|
|
177
181
|
label: 'City',
|
|
178
182
|
type: 'text'
|
|
179
183
|
};
|
|
180
|
-
|
|
184
|
+
var COMPONENT_POSTCODE = {
|
|
181
185
|
id: 'postCode',
|
|
182
186
|
fieldId: 'postCode',
|
|
183
187
|
label: 'postCode',
|
|
184
188
|
type: 'text'
|
|
185
189
|
};
|
|
186
|
-
|
|
190
|
+
var PAGE = {
|
|
187
191
|
components: [COMPONENT_ADDRESS, COMPONENT_TOWN, COMPONENT_CITY, COMPONENT_POSTCODE],
|
|
188
192
|
id: 'addressDetails',
|
|
189
193
|
fieldId: 'UK address',
|
|
@@ -201,35 +205,36 @@ describe('utils', () => {
|
|
|
201
205
|
postCode: 'SW1A 2AA'
|
|
202
206
|
}
|
|
203
207
|
};
|
|
204
|
-
|
|
208
|
+
var ON_ACTION = function ON_ACTION() {};
|
|
205
209
|
// rows do not have defined keys which means cannot pass them to render as an array,
|
|
206
210
|
// so just pass the single row instead of array containing single row
|
|
207
|
-
|
|
211
|
+
var cyaRow = (0, _getCYARowsForPage.default)(PAGE, ON_ACTION).map(function (row) {
|
|
212
|
+
return row.value;
|
|
213
|
+
});
|
|
208
214
|
expect(cyaRow.length).toEqual(1);
|
|
209
|
-
|
|
210
|
-
container
|
|
211
|
-
} = (0, _setupTests.renderWithValidation)(cyaRow[0]);
|
|
215
|
+
var _renderWithValidation = (0, _setupTests.renderWithValidation)(cyaRow[0]),
|
|
216
|
+
container = _renderWithValidation.container;
|
|
212
217
|
expect(container.childNodes.length).toEqual(4);
|
|
213
|
-
|
|
218
|
+
var addressValues = container.childNodes;
|
|
214
219
|
expect(addressValues[0].childNodes[0].textContent).toEqual('10 Downing Street');
|
|
215
220
|
expect(addressValues[1].childNodes[0].textContent).toEqual('City of Westminster');
|
|
216
221
|
expect(addressValues[2].childNodes[0].textContent).toEqual('London');
|
|
217
222
|
expect(addressValues[3].childNodes[0].textContent).toEqual('SW1A 2AA');
|
|
218
223
|
});
|
|
219
|
-
it('should get appropriate rows for a page with a single readonly text component within a collection', ()
|
|
220
|
-
|
|
224
|
+
it('should get appropriate rows for a page with a single readonly text component within a collection', function () {
|
|
225
|
+
var FORM_DATA = {
|
|
221
226
|
collection: [{
|
|
222
227
|
a: 'Bravo'
|
|
223
228
|
}]
|
|
224
229
|
};
|
|
225
|
-
|
|
230
|
+
var COMPONENT = {
|
|
226
231
|
type: 'text',
|
|
227
232
|
readonly: true,
|
|
228
233
|
id: 'a',
|
|
229
234
|
fieldId: 'a',
|
|
230
235
|
label: 'Alpha'
|
|
231
236
|
};
|
|
232
|
-
|
|
237
|
+
var COLLECTION = {
|
|
233
238
|
id: 'collection',
|
|
234
239
|
fieldId: 'collection',
|
|
235
240
|
type: _models.ComponentTypes.COLLECTION,
|
|
@@ -237,13 +242,13 @@ describe('utils', () => {
|
|
|
237
242
|
value: FORM_DATA.collection,
|
|
238
243
|
formData: FORM_DATA
|
|
239
244
|
};
|
|
240
|
-
|
|
245
|
+
var PAGE = {
|
|
241
246
|
id: 'page',
|
|
242
247
|
components: [COLLECTION],
|
|
243
248
|
formData: FORM_DATA
|
|
244
249
|
};
|
|
245
|
-
|
|
246
|
-
|
|
250
|
+
var ON_ACTION = function ON_ACTION() {};
|
|
251
|
+
var ROWS = (0, _getCYARowsForPage.default)(PAGE, ON_ACTION);
|
|
247
252
|
expect(ROWS.length).toEqual(2); // Title and item row
|
|
248
253
|
(0, _setupTests.expectObjectLike)(ROWS[1], {
|
|
249
254
|
pageId: PAGE.id,
|
|
@@ -251,27 +256,26 @@ describe('utils', () => {
|
|
|
251
256
|
full_path: "".concat(COLLECTION.fieldId, "[0].").concat(COMPONENT.fieldId),
|
|
252
257
|
key: COMPONENT.label,
|
|
253
258
|
action: null,
|
|
254
|
-
component: {
|
|
255
|
-
...COMPONENT,
|
|
259
|
+
component: _objectSpread(_objectSpread({}, COMPONENT), {}, {
|
|
256
260
|
full_path: "".concat(COLLECTION.fieldId, "[0].").concat(COMPONENT.fieldId)
|
|
257
|
-
},
|
|
261
|
+
}),
|
|
258
262
|
value: 'Bravo'
|
|
259
263
|
});
|
|
260
264
|
});
|
|
261
|
-
it('should ignore the result of the override function if it returns nullish', ()
|
|
262
|
-
|
|
265
|
+
it('should ignore the result of the override function if it returns nullish', function () {
|
|
266
|
+
var COMPONENT_A = {
|
|
263
267
|
type: 'text',
|
|
264
268
|
id: 'a',
|
|
265
269
|
fieldId: 'a',
|
|
266
270
|
label: 'Alpha'
|
|
267
271
|
};
|
|
268
|
-
|
|
272
|
+
var COMPONENT_B = {
|
|
269
273
|
type: 'text',
|
|
270
274
|
id: 'b',
|
|
271
275
|
fieldId: 'b',
|
|
272
276
|
label: 'Bravo'
|
|
273
277
|
};
|
|
274
|
-
|
|
278
|
+
var PAGE = {
|
|
275
279
|
id: 'page',
|
|
276
280
|
components: [COMPONENT_A, COMPONENT_B],
|
|
277
281
|
formData: {
|
|
@@ -280,10 +284,12 @@ describe('utils', () => {
|
|
|
280
284
|
},
|
|
281
285
|
cya_link: {}
|
|
282
286
|
};
|
|
283
|
-
|
|
284
|
-
|
|
287
|
+
var ON_ACTION = function ON_ACTION() {};
|
|
288
|
+
var ROWS = (0, _getCYARowsForPage.default)(PAGE, ON_ACTION, function () {
|
|
289
|
+
return null;
|
|
290
|
+
});
|
|
285
291
|
expect(ROWS.length).toEqual(2);
|
|
286
|
-
ROWS.forEach((row, index)
|
|
292
|
+
ROWS.forEach(function (row, index) {
|
|
287
293
|
(0, _setupTests.expectObjectLike)(row, {
|
|
288
294
|
pageId: PAGE.id,
|
|
289
295
|
fieldId: PAGE.components[index].fieldId,
|
|
@@ -296,20 +302,20 @@ describe('utils', () => {
|
|
|
296
302
|
});
|
|
297
303
|
});
|
|
298
304
|
});
|
|
299
|
-
it('should use rows produced by the override function if provided', ()
|
|
300
|
-
|
|
305
|
+
it('should use rows produced by the override function if provided', function () {
|
|
306
|
+
var COMPONENT_A = {
|
|
301
307
|
type: 'text',
|
|
302
308
|
id: 'a',
|
|
303
309
|
fieldId: 'a',
|
|
304
310
|
label: 'Alpha'
|
|
305
311
|
};
|
|
306
|
-
|
|
312
|
+
var COMPONENT_B = {
|
|
307
313
|
type: 'text',
|
|
308
314
|
id: 'b',
|
|
309
315
|
fieldId: 'b',
|
|
310
316
|
label: 'Bravo'
|
|
311
317
|
};
|
|
312
|
-
|
|
318
|
+
var PAGE = {
|
|
313
319
|
id: 'page',
|
|
314
320
|
components: [COMPONENT_A, COMPONENT_B],
|
|
315
321
|
formData: {
|
|
@@ -318,16 +324,16 @@ describe('utils', () => {
|
|
|
318
324
|
},
|
|
319
325
|
cya_link: {}
|
|
320
326
|
};
|
|
321
|
-
|
|
327
|
+
var ON_ACTION = function ON_ACTION() {};
|
|
322
328
|
// eslint-disable-next-line arrow-body-style
|
|
323
|
-
|
|
329
|
+
var OVERRIDE = function OVERRIDE(page, comp) {
|
|
324
330
|
// This will be called for each component on the page,
|
|
325
331
|
// returning a custom row object.
|
|
326
332
|
return {
|
|
327
333
|
key: "CustomRowFor".concat(comp.label)
|
|
328
334
|
};
|
|
329
335
|
};
|
|
330
|
-
|
|
336
|
+
var ROWS = (0, _getCYARowsForPage.default)(PAGE, ON_ACTION, OVERRIDE);
|
|
331
337
|
expect(ROWS.length).toEqual(2);
|
|
332
338
|
expect(ROWS).toEqual([{
|
|
333
339
|
key: 'CustomRowForAlpha'
|
|
@@ -8,7 +8,7 @@ var _getCYARowsForPage = _interopRequireDefault(require("./getCYARowsForPage"));
|
|
|
8
8
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
9
9
|
// Local imports
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
var CheckYourAnswers = {
|
|
12
12
|
getRows: _getCYARowsForPage.default
|
|
13
13
|
};
|
|
14
14
|
var _default = exports.default = CheckYourAnswers;
|
|
@@ -12,7 +12,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
12
12
|
/* eslint-disable no-console */
|
|
13
13
|
// Local imports
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
var EXCLUDE_FROM_CYA = exports.EXCLUDE_FROM_CYA = [_models.ComponentTypes.ALERT, _models.ComponentTypes.COLLECTION_SUMMARY, _models.ComponentTypes.HEADING, _models.ComponentTypes.HTML, _models.ComponentTypes.INSET_TEXT];
|
|
16
16
|
|
|
17
17
|
/**
|
|
18
18
|
* Determines whether a given component should display on the Check your answers screen.
|
|
@@ -22,7 +22,7 @@ const EXCLUDE_FROM_CYA = exports.EXCLUDE_FROM_CYA = [_models.ComponentTypes.ALER
|
|
|
22
22
|
*
|
|
23
23
|
* @returns A boolean true if the component should show; otherwise false.
|
|
24
24
|
*/
|
|
25
|
-
|
|
25
|
+
var showComponentCYA = function showComponentCYA(options, data) {
|
|
26
26
|
if (!options) {
|
|
27
27
|
return false;
|
|
28
28
|
}
|
|
@@ -34,12 +34,12 @@ const showComponentCYA = (options, data) => {
|
|
|
34
34
|
}
|
|
35
35
|
if (options.hideOnCyaWhenEmpty) {
|
|
36
36
|
if (options.type === _models.ComponentTypes.COLLECTION) {
|
|
37
|
-
|
|
37
|
+
var itemCollectionsData = (0, _getSourceData.default)(data, options.full_path);
|
|
38
38
|
if (!(itemCollectionsData !== null && itemCollectionsData !== void 0 && itemCollectionsData.length)) {
|
|
39
39
|
return false;
|
|
40
40
|
}
|
|
41
41
|
} else {
|
|
42
|
-
|
|
42
|
+
var value = (0, _getSourceData.default)(data, options.fieldId);
|
|
43
43
|
if (!value && value !== false && value !== 0) {
|
|
44
44
|
return false;
|
|
45
45
|
}
|
|
@@ -5,81 +5,81 @@ var _showComponentCYA = _interopRequireDefault(require("./showComponentCYA"));
|
|
|
5
5
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
6
6
|
// Local imports
|
|
7
7
|
|
|
8
|
-
describe('utils', ()
|
|
9
|
-
describe('CheckYourAnswers', ()
|
|
10
|
-
describe('showComponentCYA', ()
|
|
11
|
-
it('should not show when there are no options', ()
|
|
8
|
+
describe('utils', function () {
|
|
9
|
+
describe('CheckYourAnswers', function () {
|
|
10
|
+
describe('showComponentCYA', function () {
|
|
11
|
+
it('should not show when there are no options', function () {
|
|
12
12
|
expect((0, _showComponentCYA.default)(null, null)).toBeFalsy();
|
|
13
13
|
});
|
|
14
|
-
it('should not show when show_on_cya is defined and falsy', ()
|
|
14
|
+
it('should not show when show_on_cya is defined and falsy', function () {
|
|
15
15
|
expect((0, _showComponentCYA.default)({
|
|
16
16
|
show_on_cya: false
|
|
17
17
|
})).toBeFalsy();
|
|
18
18
|
});
|
|
19
|
-
it('should not show when it is a heading type', ()
|
|
19
|
+
it('should not show when it is a heading type', function () {
|
|
20
20
|
expect((0, _showComponentCYA.default)({
|
|
21
21
|
type: _models.ComponentTypes.HEADING
|
|
22
22
|
}, null)).toBeFalsy();
|
|
23
23
|
});
|
|
24
|
-
it('should not show when it is an html type', ()
|
|
24
|
+
it('should not show when it is an html type', function () {
|
|
25
25
|
expect((0, _showComponentCYA.default)({
|
|
26
26
|
type: _models.ComponentTypes.HTML
|
|
27
27
|
}, null)).toBeFalsy();
|
|
28
28
|
});
|
|
29
|
-
it('should not show when it is an inset-text type', ()
|
|
29
|
+
it('should not show when it is an inset-text type', function () {
|
|
30
30
|
expect((0, _showComponentCYA.default)({
|
|
31
31
|
type: _models.ComponentTypes.INSET_TEXT
|
|
32
32
|
}, null)).toBeFalsy();
|
|
33
33
|
});
|
|
34
|
-
it('should not show when it hidden and disabled', ()
|
|
34
|
+
it('should not show when it hidden and disabled', function () {
|
|
35
35
|
expect((0, _showComponentCYA.default)({
|
|
36
36
|
hidden: true,
|
|
37
37
|
disabled: true
|
|
38
38
|
}, null)).toBeFalsy();
|
|
39
39
|
});
|
|
40
|
-
it('should show when show_on_cya is defined and truthy', ()
|
|
40
|
+
it('should show when show_on_cya is defined and truthy', function () {
|
|
41
41
|
expect((0, _showComponentCYA.default)({
|
|
42
42
|
show_on_cya: true
|
|
43
43
|
})).toBeTruthy();
|
|
44
44
|
});
|
|
45
|
-
it('should show when it hidden but not disabled', ()
|
|
45
|
+
it('should show when it hidden but not disabled', function () {
|
|
46
46
|
expect((0, _showComponentCYA.default)({
|
|
47
47
|
hidden: true
|
|
48
48
|
}, null)).toBeTruthy();
|
|
49
49
|
});
|
|
50
|
-
it('should show when it disabled but not hidden', ()
|
|
50
|
+
it('should show when it disabled but not hidden', function () {
|
|
51
51
|
expect((0, _showComponentCYA.default)({
|
|
52
52
|
disabled: true
|
|
53
53
|
}, null)).toBeTruthy();
|
|
54
54
|
});
|
|
55
|
-
it('should show when it not html, inset-text, a heading, hidden, or disabled', ()
|
|
55
|
+
it('should show when it not html, inset-text, a heading, hidden, or disabled', function () {
|
|
56
56
|
expect((0, _showComponentCYA.default)({
|
|
57
57
|
type: _models.ComponentTypes.TEXT
|
|
58
58
|
}, null)).toBeTruthy();
|
|
59
59
|
});
|
|
60
|
-
it('should show when hideOnCyaWhenEmpty is defined and falsy', ()
|
|
60
|
+
it('should show when hideOnCyaWhenEmpty is defined and falsy', function () {
|
|
61
61
|
expect((0, _showComponentCYA.default)({
|
|
62
62
|
hideOnCyaWhenEmpty: false
|
|
63
63
|
})).toBeTruthy();
|
|
64
64
|
});
|
|
65
|
-
it('should show collection when hideOnCyaWhenEmpty is not defined', ()
|
|
65
|
+
it('should show collection when hideOnCyaWhenEmpty is not defined', function () {
|
|
66
66
|
expect((0, _showComponentCYA.default)({
|
|
67
67
|
type: _models.ComponentTypes.COLLECTION
|
|
68
68
|
})).toBeTruthy();
|
|
69
69
|
});
|
|
70
|
-
it('should not show when it\'s a collection and hideOnCyaWhenEmpty is truthy', ()
|
|
70
|
+
it('should not show when it\'s a collection and hideOnCyaWhenEmpty is truthy', function () {
|
|
71
71
|
expect((0, _showComponentCYA.default)({
|
|
72
72
|
hideOnCyaWhenEmpty: true,
|
|
73
73
|
type: _models.ComponentTypes.COLLECTION
|
|
74
74
|
})).toBeFalsy();
|
|
75
75
|
});
|
|
76
|
-
it('should not show when it\'s not a collection and hideOnCyaWhenEmpty is truthy', ()
|
|
76
|
+
it('should not show when it\'s not a collection and hideOnCyaWhenEmpty is truthy', function () {
|
|
77
77
|
expect((0, _showComponentCYA.default)({
|
|
78
78
|
hideOnCyaWhenEmpty: true,
|
|
79
79
|
type: _models.ComponentTypes.TEXT
|
|
80
80
|
})).toBeFalsy();
|
|
81
81
|
});
|
|
82
|
-
it('should show when length of full_path data is 1 or more', ()
|
|
82
|
+
it('should show when length of full_path data is 1 or more', function () {
|
|
83
83
|
expect((0, _showComponentCYA.default)({
|
|
84
84
|
hideOnCyaWhenEmpty: true,
|
|
85
85
|
type: _models.ComponentTypes.COLLECTION,
|
|
@@ -88,7 +88,7 @@ describe('utils', () => {
|
|
|
88
88
|
example: [0, 1]
|
|
89
89
|
})).toBeTruthy();
|
|
90
90
|
});
|
|
91
|
-
it('should not show when length of full_path data is less than 1', ()
|
|
91
|
+
it('should not show when length of full_path data is less than 1', function () {
|
|
92
92
|
expect((0, _showComponentCYA.default)({
|
|
93
93
|
hideOnCyaWhenEmpty: true,
|
|
94
94
|
type: _models.ComponentTypes.COLLECTION,
|
|
@@ -97,7 +97,7 @@ describe('utils', () => {
|
|
|
97
97
|
example: []
|
|
98
98
|
})).toBeFalsy();
|
|
99
99
|
});
|
|
100
|
-
it('should show when value of component data does exist and hideOnCyaWhenEmpty is truthy', ()
|
|
100
|
+
it('should show when value of component data does exist and hideOnCyaWhenEmpty is truthy', function () {
|
|
101
101
|
expect((0, _showComponentCYA.default)({
|
|
102
102
|
hideOnCyaWhenEmpty: true,
|
|
103
103
|
type: _models.ComponentTypes.TEXT,
|
|
@@ -106,21 +106,21 @@ describe('utils', () => {
|
|
|
106
106
|
example: "yes"
|
|
107
107
|
})).toBeTruthy();
|
|
108
108
|
});
|
|
109
|
-
it('should not show when value of component data does not exist and hideOnCyaWhenEmpty is truthy', ()
|
|
109
|
+
it('should not show when value of component data does not exist and hideOnCyaWhenEmpty is truthy', function () {
|
|
110
110
|
expect((0, _showComponentCYA.default)({
|
|
111
111
|
hideOnCyaWhenEmpty: true,
|
|
112
112
|
type: _models.ComponentTypes.TEXT,
|
|
113
113
|
fieldId: "example"
|
|
114
114
|
}, {})).toBeFalsy();
|
|
115
115
|
});
|
|
116
|
-
it('should show when value of component data does not exist and hideOnCyaWhenEmpty is falsy', ()
|
|
116
|
+
it('should show when value of component data does not exist and hideOnCyaWhenEmpty is falsy', function () {
|
|
117
117
|
expect((0, _showComponentCYA.default)({
|
|
118
118
|
hideOnCyaWhenEmpty: false,
|
|
119
119
|
type: _models.ComponentTypes.TEXT,
|
|
120
120
|
fieldId: "example"
|
|
121
121
|
}, {})).toBeTruthy();
|
|
122
122
|
});
|
|
123
|
-
it('should show when value of component data does is falsy and hideOnCyaWhenEmpty is truthy', ()
|
|
123
|
+
it('should show when value of component data does is falsy and hideOnCyaWhenEmpty is truthy', function () {
|
|
124
124
|
expect((0, _showComponentCYA.default)({
|
|
125
125
|
hideOnCyaWhenEmpty: true,
|
|
126
126
|
type: _models.ComponentTypes.TEXT,
|
|
@@ -129,7 +129,7 @@ describe('utils', () => {
|
|
|
129
129
|
example: false
|
|
130
130
|
})).toBeTruthy();
|
|
131
131
|
});
|
|
132
|
-
it('should show when value of component data is numerically zero and hideOnCyaWhenEmpty is truthy', ()
|
|
132
|
+
it('should show when value of component data is numerically zero and hideOnCyaWhenEmpty is truthy', function () {
|
|
133
133
|
expect((0, _showComponentCYA.default)({
|
|
134
134
|
hideOnCyaWhenEmpty: true,
|
|
135
135
|
type: _models.ComponentTypes.TEXT,
|
|
@@ -14,7 +14,7 @@ exports.default = void 0;
|
|
|
14
14
|
* @param {string} collectionName The name of the collection to create the new entry for.
|
|
15
15
|
* @param {object} formData The top level formData object.
|
|
16
16
|
*/
|
|
17
|
-
|
|
17
|
+
var addCollectionPageEntry = function addCollectionPageEntry(collectionName, formData) {
|
|
18
18
|
// eslint-disable-next-line no-param-reassign
|
|
19
19
|
formData["".concat(collectionName.split('.').pop(), "ActiveId")] = '0';
|
|
20
20
|
};
|
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
var _addCollectionPageEntry = _interopRequireDefault(require("./addCollectionPageEntry"));
|
|
4
4
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
5
|
-
describe('Utils.CollectionPage.addCollectionPageEntry', ()
|
|
6
|
-
it('should correctly add a new entry for a top-level collection', ()
|
|
7
|
-
|
|
5
|
+
describe('Utils.CollectionPage.addCollectionPageEntry', function () {
|
|
6
|
+
it('should correctly add a new entry for a top-level collection', function () {
|
|
7
|
+
var FORM_DATA = {};
|
|
8
8
|
(0, _addCollectionPageEntry.default)('testCollection', FORM_DATA);
|
|
9
9
|
expect(FORM_DATA.testCollectionActiveId).toBeTruthy();
|
|
10
10
|
});
|
|
11
|
-
it('should correctly add a new entry for a nested collection', ()
|
|
12
|
-
|
|
11
|
+
it('should correctly add a new entry for a nested collection', function () {
|
|
12
|
+
var FORM_DATA = {};
|
|
13
13
|
(0, _addCollectionPageEntry.default)('parent.child.grandchild', FORM_DATA);
|
|
14
14
|
expect(FORM_DATA.grandchildActiveId).toBeTruthy();
|
|
15
15
|
});
|
|
@@ -18,8 +18,8 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
18
18
|
* @param {object} formData A page's form data containing the collection's data.
|
|
19
19
|
* @return true if the entry ws successfully duplicated, false if not.
|
|
20
20
|
*/
|
|
21
|
-
|
|
22
|
-
|
|
21
|
+
var duplicateCollectionPageActiveEntry = function duplicateCollectionPageActiveEntry(collectionName, formData) {
|
|
22
|
+
var currentEntryId = (0, _getCollectionPageActiveId.default)(collectionName, formData);
|
|
23
23
|
return (0, _duplicateCollectionPageEntry.default)(collectionName, formData, currentEntryId);
|
|
24
24
|
};
|
|
25
25
|
var _default = exports.default = duplicateCollectionPageActiveEntry;
|