@ukhomeoffice/cop-react-form-renderer 5.44.1-alpha → 5.45.2-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 +92 -127
- package/dist/components/CheckYourAnswers/CheckYourAnswers.js +101 -131
- package/dist/components/CheckYourAnswers/CheckYourAnswers.test.js +464 -769
- package/dist/components/CollectionPage/CollectionPage.js +66 -58
- package/dist/components/CollectionPage/CollectionPage.test.js +300 -342
- package/dist/components/CollectionSummary/BannerStrip.js +12 -12
- package/dist/components/CollectionSummary/BannerStrip.test.js +63 -59
- package/dist/components/CollectionSummary/CollectionSummary.js +104 -77
- package/dist/components/CollectionSummary/CollectionSummary.test.js +126 -81
- package/dist/components/CollectionSummary/Confirmation.js +14 -12
- package/dist/components/CollectionSummary/Confirmation.test.js +68 -63
- package/dist/components/CollectionSummary/SummaryCard.js +96 -131
- package/dist/components/CollectionSummary/SummaryCard.test.js +959 -810
- package/dist/components/CollectionSummary/SummaryCardValidationContext.js +66 -0
- package/dist/components/CollectionSummary/SummaryCardValidationContext.test.js +86 -0
- package/dist/components/FormComponent/Collection.js +73 -107
- package/dist/components/FormComponent/Collection.test.js +809 -945
- package/dist/components/FormComponent/Container.js +40 -38
- package/dist/components/FormComponent/Container.test.js +314 -345
- package/dist/components/FormComponent/FormComponent.js +67 -70
- package/dist/components/FormComponent/FormComponent.test.js +284 -342
- package/dist/components/FormComponent/helpers/addLabel.js +4 -7
- package/dist/components/FormComponent/helpers/getComponentDisabled.js +1 -1
- package/dist/components/FormComponent/helpers/getComponentDisabled.test.js +7 -7
- package/dist/components/FormComponent/helpers/getComponentError.js +3 -5
- package/dist/components/FormComponent/helpers/getComponentError.test.js +14 -14
- package/dist/components/FormComponent/helpers/getComponentFieldSet.js +3 -4
- 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 +65 -80
- package/dist/components/FormPage/FormPage.test.js +127 -163
- package/dist/components/FormRenderer/FormRenderer.js +142 -178
- package/dist/components/FormRenderer/FormRenderer.test.js +730 -1115
- package/dist/components/FormRenderer/handlers/cyaAction.js +2 -2
- package/dist/components/FormRenderer/handlers/getPageId.js +1 -3
- 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 +1 -1
- package/dist/components/FormRenderer/helpers/canActionProceed.test.js +9 -9
- package/dist/components/FormRenderer/helpers/canCYASubmit.js +1 -3
- package/dist/components/FormRenderer/helpers/canCYASubmit.test.js +16 -20
- package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.js +17 -22
- package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.test.js +16 -16
- package/dist/components/FormRenderer/helpers/getCYA.js +3 -5
- package/dist/components/FormRenderer/helpers/getCYA.test.js +11 -11
- package/dist/components/FormRenderer/helpers/getFormState.js +5 -7
- package/dist/components/FormRenderer/helpers/getFormState.test.js +10 -10
- package/dist/components/FormRenderer/helpers/getNextPageId.js +13 -24
- package/dist/components/FormRenderer/helpers/getNextPageId.test.js +67 -67
- package/dist/components/FormRenderer/helpers/getPage.js +2 -4
- package/dist/components/FormRenderer/helpers/getPage.test.js +11 -11
- package/dist/components/FormRenderer/helpers/getRelevantPages.js +7 -9
- package/dist/components/FormRenderer/helpers/getRelevantPages.test.js +14 -14
- package/dist/components/FormRenderer/helpers/getSubmissionStatus.js +6 -7
- package/dist/components/FormRenderer/helpers/getSubmissionStatus.test.js +96 -110
- package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.js +62 -60
- package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.test.js +71 -73
- package/dist/components/FormRenderer/helpers/index.js +1 -1
- package/dist/components/FormRenderer/onCYAAction.js +59 -51
- package/dist/components/FormRenderer/onCYAAction.test.js +164 -152
- package/dist/components/FormRenderer/onPageAction.js +43 -39
- package/dist/components/FormRenderer/onPageAction.test.js +223 -206
- package/dist/components/FormRenderer/onTaskAction.js +9 -13
- package/dist/components/FormRenderer/onTaskAction.test.js +93 -88
- package/dist/components/PageActions/ActionButton.js +12 -15
- package/dist/components/PageActions/ActionButton.test.js +56 -78
- package/dist/components/PageActions/PageActions.js +10 -10
- package/dist/components/PageActions/PageActions.test.js +86 -115
- package/dist/components/SummaryList/GroupAction.js +9 -17
- package/dist/components/SummaryList/GroupAction.test.js +37 -33
- package/dist/components/SummaryList/RowAction.js +11 -16
- package/dist/components/SummaryList/RowAction.test.js +37 -33
- package/dist/components/SummaryList/SummaryList.js +21 -26
- package/dist/components/SummaryList/SummaryList.test.js +143 -166
- package/dist/components/SummaryList/SummaryListHeadingRow.js +6 -4
- package/dist/components/SummaryList/SummaryListRow.js +6 -4
- package/dist/components/SummaryList/SummaryListTitleRow.js +5 -3
- package/dist/components/SummaryList/helpers/getGroupActionAttributes.js +3 -5
- package/dist/components/SummaryList/helpers/getGroupActionAttributes.test.js +22 -22
- package/dist/components/SummaryList/helpers/getRowActionAttributes.js +3 -5
- 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 +19 -29
- package/dist/components/TaskList/Task.test.js +83 -76
- package/dist/components/TaskList/TaskList.js +45 -71
- package/dist/components/TaskList/TaskList.test.js +113 -111
- package/dist/components/TaskList/TaskState.js +7 -5
- package/dist/components/TaskList/TaskState.test.js +52 -45
- package/dist/components/index.js +7 -7
- package/dist/context/HooksContext/HooksContext.js +58 -79
- package/dist/context/HooksContext/HooksContext.test.js +26 -35
- package/dist/context/HooksContext/index.js +3 -4
- package/dist/context/ValidationContext/ValidationContext.js +32 -72
- package/dist/context/ValidationContext/ValidationContext.test.js +47 -59
- package/dist/context/ValidationContext/index.js +3 -4
- package/dist/context/index.js +2 -2
- package/dist/hooks/index.js +9 -10
- package/dist/hooks/useAxios.js +14 -40
- package/dist/hooks/useGetRequest.js +61 -97
- package/dist/hooks/useHooks.js +1 -3
- package/dist/hooks/useRefData.js +26 -39
- package/dist/hooks/useValidation.js +1 -3
- package/dist/index.js +13 -14
- package/dist/models/CollectionLabels.js +1 -1
- package/dist/models/ComponentTypes.js +25 -25
- package/dist/models/EventTypes.js +4 -4
- package/dist/models/FormPages.js +4 -4
- package/dist/models/FormTypes.js +8 -8
- package/dist/models/HubFormats.js +3 -3
- package/dist/models/PageAction.js +44 -38
- package/dist/models/TaskStates.js +30 -28
- package/dist/models/index.js +9 -9
- package/dist/setupTests.js +30 -31
- package/dist/utils/CheckYourAnswers/getCYAAction.js +5 -5
- package/dist/utils/CheckYourAnswers/getCYAAction.test.js +52 -54
- package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.js +15 -25
- package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.test.js +33 -35
- package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.js +17 -31
- package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.test.js +42 -44
- package/dist/utils/CheckYourAnswers/getCYARow.js +6 -6
- package/dist/utils/CheckYourAnswers/getCYARow.test.js +86 -86
- package/dist/utils/CheckYourAnswers/getCYARowForGroup.js +18 -24
- package/dist/utils/CheckYourAnswers/getCYARowForGroup.test.js +15 -16
- package/dist/utils/CheckYourAnswers/getCYARowsForCollection.js +33 -36
- package/dist/utils/CheckYourAnswers/getCYARowsForCollection.test.js +58 -60
- package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.js +79 -88
- package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.test.js +146 -124
- package/dist/utils/CheckYourAnswers/getCYARowsForContainer.js +25 -20
- package/dist/utils/CheckYourAnswers/getCYARowsForContainer.test.js +103 -97
- package/dist/utils/CheckYourAnswers/getCYARowsForPage.js +13 -18
- package/dist/utils/CheckYourAnswers/getCYARowsForPage.test.js +70 -76
- 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 +9 -18
- package/dist/utils/CollectionPage/duplicateCollectionPageEntry.test.js +27 -22
- package/dist/utils/CollectionPage/getCollectionPageActiveId.js +2 -2
- package/dist/utils/CollectionPage/getCollectionPageActiveId.test.js +10 -10
- package/dist/utils/CollectionPage/getCollectionPageActiveIndex.js +7 -11
- package/dist/utils/CollectionPage/getCollectionPageActiveIndex.test.js +22 -22
- package/dist/utils/CollectionPage/getCollectionPageData.js +8 -12
- package/dist/utils/CollectionPage/getCollectionPageData.test.js +19 -19
- package/dist/utils/CollectionPage/getQuickEditPage.js +19 -19
- package/dist/utils/CollectionPage/getQuickEditPage.test.js +12 -16
- package/dist/utils/CollectionPage/index.js +1 -1
- package/dist/utils/CollectionPage/mergeCollectionPages.js +29 -30
- package/dist/utils/CollectionPage/mergeCollectionPages.test.js +17 -17
- package/dist/utils/CollectionPage/removeCollectionPageEntry.js +4 -6
- package/dist/utils/CollectionPage/removeCollectionPageEntry.test.js +10 -10
- package/dist/utils/CollectionPage/setCollectionPageData.js +8 -12
- package/dist/utils/CollectionPage/setCollectionPageData.test.js +17 -17
- package/dist/utils/Component/addShowWhen.js +4 -8
- package/dist/utils/Component/addShowWhen.test.js +37 -37
- package/dist/utils/Component/applyToComponentTree.js +18 -18
- package/dist/utils/Component/applyToComponentTree.test.js +27 -32
- package/dist/utils/Component/cleanAttributes.js +10 -13
- package/dist/utils/Component/cleanAttributes.test.js +17 -18
- package/dist/utils/Component/elevateNestedComponents.js +5 -5
- package/dist/utils/Component/elevateNestedComponents.test.js +30 -30
- package/dist/utils/Component/getComponent.js +88 -94
- package/dist/utils/Component/getComponentTests/getComponent.autocomplete.test.js +18 -17
- package/dist/utils/Component/getComponentTests/getComponent.calculation.test.js +46 -59
- package/dist/utils/Component/getComponentTests/getComponent.checkboxes.test.js +39 -48
- package/dist/utils/Component/getComponentTests/getComponent.date.test.js +23 -33
- package/dist/utils/Component/getComponentTests/getComponent.details.test.js +20 -18
- package/dist/utils/Component/getComponentTests/getComponent.email.test.js +17 -22
- package/dist/utils/Component/getComponentTests/getComponent.file.test.js +20 -25
- package/dist/utils/Component/getComponentTests/getComponent.heading.test.js +10 -9
- package/dist/utils/Component/getComponentTests/getComponent.html.test.js +17 -15
- package/dist/utils/Component/getComponentTests/getComponent.insetText.test.js +9 -8
- package/dist/utils/Component/getComponentTests/getComponent.list.test.js +17 -15
- package/dist/utils/Component/getComponentTests/getComponent.multifile.test.js +22 -26
- package/dist/utils/Component/getComponentTests/getComponent.nested.test.js +155 -175
- package/dist/utils/Component/getComponentTests/getComponent.paragraph.test.js +17 -15
- package/dist/utils/Component/getComponentTests/getComponent.phoneNumber.test.js +17 -22
- package/dist/utils/Component/getComponentTests/getComponent.radios.test.js +57 -70
- package/dist/utils/Component/getComponentTests/getComponent.select.test.js +17 -22
- package/dist/utils/Component/getComponentTests/getComponent.text.test.js +17 -22
- package/dist/utils/Component/getComponentTests/getComponent.textArea.test.js +31 -38
- package/dist/utils/Component/getComponentTests/getComponent.time.test.js +20 -29
- package/dist/utils/Component/getComponentTests/getComponent.unknown.test.js +2 -2
- package/dist/utils/Component/getComponentTests/getComponent.warningText.test.js +9 -8
- package/dist/utils/Component/getDefaultValue.js +6 -8
- package/dist/utils/Component/getDefaultValue.test.js +12 -12
- package/dist/utils/Component/getDefaultValueFromConfig.js +22 -21
- package/dist/utils/Component/getDefaultValueFromConfig.test.js +31 -31
- package/dist/utils/Component/index.js +1 -1
- package/dist/utils/Component/isEditable.js +2 -4
- package/dist/utils/Component/isEditable.test.js +14 -15
- package/dist/utils/Component/optionIsSelected.js +1 -1
- package/dist/utils/Component/optionIsSelected.test.js +9 -9
- package/dist/utils/Component/setupContainerComponentsPath.js +27 -29
- 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 +14 -17
- 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 +13 -18
- package/dist/utils/Condition/setupConditions.test.js +7 -7
- package/dist/utils/Container/getEditableComponents.js +3 -5
- package/dist/utils/Container/getEditableComponents.test.js +43 -45
- package/dist/utils/Container/index.js +1 -1
- package/dist/utils/Container/setupNesting.js +16 -20
- package/dist/utils/Container/setupNesting.test.js +27 -30
- package/dist/utils/Container/showContainer.js +3 -7
- package/dist/utils/Container/showContainer.test.js +30 -30
- package/dist/utils/Data/applyFormula.js +38 -48
- package/dist/utils/Data/applyFormula.test.js +20 -20
- package/dist/utils/Data/getAutocompleteSource.js +18 -26
- package/dist/utils/Data/getAutocompleteSource.test.js +80 -86
- package/dist/utils/Data/getDataPath.js +18 -28
- package/dist/utils/Data/getDataPath.test.js +12 -12
- package/dist/utils/Data/getOptions.js +19 -25
- package/dist/utils/Data/getOptions.test.js +20 -20
- package/dist/utils/Data/getSourceData.js +6 -19
- package/dist/utils/Data/getSourceData.test.js +84 -80
- package/dist/utils/Data/index.js +1 -1
- package/dist/utils/Data/refDataToOptions.js +10 -13
- package/dist/utils/Data/refDataToOptions.test.js +19 -19
- package/dist/utils/Data/setDataItem.js +7 -8
- package/dist/utils/Data/setDataItem.test.js +37 -37
- package/dist/utils/Data/setupFormData.js +13 -21
- package/dist/utils/Data/setupFormData.test.js +51 -50
- package/dist/utils/Data/setupRefDataUrlForComponent.js +20 -26
- package/dist/utils/Data/setupRefDataUrlForComponent.test.js +24 -24
- package/dist/utils/FormPage/applyConditionalProperties.js +5 -9
- package/dist/utils/FormPage/applyConditionalProperties.test.js +15 -18
- package/dist/utils/FormPage/getFormPage.js +15 -16
- package/dist/utils/FormPage/getFormPage.test.js +47 -46
- package/dist/utils/FormPage/getFormPages.js +7 -12
- package/dist/utils/FormPage/getFormPages.test.js +20 -23
- package/dist/utils/FormPage/getPageActions.js +9 -15
- 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 +5 -7
- package/dist/utils/FormPage/getParagraphFromText.test.js +6 -6
- package/dist/utils/FormPage/index.js +1 -1
- package/dist/utils/FormPage/showFormPage.js +3 -7
- 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 +21 -28
- package/dist/utils/FormPage/useComponent.test.js +78 -79
- package/dist/utils/Format/formatData.js +1 -1
- package/dist/utils/Format/formatData.test.js +18 -18
- package/dist/utils/Format/formatDataForComponent.js +5 -6
- package/dist/utils/Format/formatDataForComponent.test.js +50 -77
- package/dist/utils/Format/formatDataForForm.js +6 -8
- package/dist/utils/Format/formatDataForForm.test.js +13 -15
- package/dist/utils/Format/formatDataForPage.js +4 -5
- package/dist/utils/Format/formatDataForPage.test.js +20 -23
- package/dist/utils/Format/index.js +1 -1
- package/dist/utils/Hub/getFormHub.js +1 -1
- package/dist/utils/Hub/getFormHub.test.js +28 -31
- 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 +24 -16
- package/dist/utils/Meta/documents/index.js +1 -1
- package/dist/utils/Meta/documents/setDocumentsForField.js +14 -16
- package/dist/utils/Meta/documents/setDocumentsForField.test.js +68 -34
- 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 +22 -20
- package/dist/utils/Operate/runPageOperations.js +7 -7
- package/dist/utils/Operate/runPageOperations.test.js +35 -36
- 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 +21 -26
- 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 +6 -6
- 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 +7 -11
- package/dist/utils/Validate/additional/mustBeEarlierDateTime.test.js +37 -41
- 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/mustEnterAtLeastOne.js +2 -2
- package/dist/utils/Validate/additional/mustEnterAtLeastOne.test.js +14 -16
- 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 +3 -4
- 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 +28 -26
- package/dist/utils/Validate/additional/utils.js +9 -22
- package/dist/utils/Validate/index.js +1 -1
- package/dist/utils/Validate/validateCollection.js +19 -25
- package/dist/utils/Validate/validateCollection.test.js +74 -66
- package/dist/utils/Validate/validateComponent.js +17 -15
- package/dist/utils/Validate/validateComponent.test.js +167 -146
- package/dist/utils/Validate/validateContainer.js +14 -19
- package/dist/utils/Validate/validateContainer.test.js +49 -45
- package/dist/utils/Validate/validateDate.js +11 -17
- package/dist/utils/Validate/validateDate.test.js +28 -29
- package/dist/utils/Validate/validateEmail.js +6 -8
- package/dist/utils/Validate/validateEmail.test.js +25 -25
- package/dist/utils/Validate/validateMultifile.js +5 -7
- package/dist/utils/Validate/validateMultifile.test.js +17 -18
- package/dist/utils/Validate/validatePage.js +17 -18
- package/dist/utils/Validate/validatePage.test.js +185 -182
- package/dist/utils/Validate/validateRegex.js +3 -5
- package/dist/utils/Validate/validateRegex.test.js +14 -14
- package/dist/utils/Validate/validateRequired.js +4 -6
- package/dist/utils/Validate/validateRequired.test.js +18 -18
- package/dist/utils/Validate/validateTextArea.js +4 -6
- package/dist/utils/Validate/validateTextArea.test.js +20 -20
- package/dist/utils/Validate/validateTime.js +7 -14
- package/dist/utils/Validate/validateTime.test.js +14 -14
- package/dist/utils/index.js +7 -9
- package/package.json +2 -2
|
@@ -2,26 +2,22 @@
|
|
|
2
2
|
|
|
3
3
|
var _getCYARowsForCollectionPage = _interopRequireDefault(require("./getCYARowsForCollectionPage"));
|
|
4
4
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
10
|
-
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } // Local imports
|
|
11
|
-
describe('utils.CheckYourAnswers.getCYARowsForCollectionPage', function () {
|
|
12
|
-
var TEXT_COMP = {
|
|
5
|
+
// Local imports
|
|
6
|
+
|
|
7
|
+
describe('utils.CheckYourAnswers.getCYARowsForCollectionPage', () => {
|
|
8
|
+
const TEXT_COMP = {
|
|
13
9
|
id: 'testText',
|
|
14
10
|
fieldId: 'testText',
|
|
15
11
|
label: 'Test text',
|
|
16
12
|
type: 'text'
|
|
17
13
|
};
|
|
18
|
-
|
|
14
|
+
const DATE_COMP = {
|
|
19
15
|
id: 'testDate',
|
|
20
16
|
fieldId: 'testDate',
|
|
21
17
|
label: 'Test date',
|
|
22
18
|
type: 'date'
|
|
23
19
|
};
|
|
24
|
-
|
|
20
|
+
const PAGES = [{
|
|
25
21
|
id: 'page1',
|
|
26
22
|
collection: {
|
|
27
23
|
name: 'collection'
|
|
@@ -34,7 +30,7 @@ describe('utils.CheckYourAnswers.getCYARowsForCollectionPage', function () {
|
|
|
34
30
|
},
|
|
35
31
|
components: [DATE_COMP]
|
|
36
32
|
}];
|
|
37
|
-
|
|
33
|
+
const MASTER_PAGE = {
|
|
38
34
|
id: 'page1',
|
|
39
35
|
collection: {
|
|
40
36
|
name: 'collection',
|
|
@@ -55,73 +51,80 @@ describe('utils.CheckYourAnswers.getCYARowsForCollectionPage', function () {
|
|
|
55
51
|
},
|
|
56
52
|
childPages: PAGES
|
|
57
53
|
};
|
|
58
|
-
it('should return no rows for a collection if it does not exist in formData',
|
|
59
|
-
|
|
60
|
-
|
|
54
|
+
it('should return no rows for a collection if it does not exist in formData', () => {
|
|
55
|
+
const FORM_DATA = {};
|
|
56
|
+
const PAGE = {
|
|
57
|
+
...MASTER_PAGE,
|
|
61
58
|
formData: FORM_DATA
|
|
62
|
-
}
|
|
63
|
-
|
|
59
|
+
};
|
|
60
|
+
const ROWS = (0, _getCYARowsForCollectionPage.default)(PAGE, null, null, FORM_DATA);
|
|
64
61
|
expect(ROWS.length).toEqual(0);
|
|
65
62
|
});
|
|
66
|
-
it('should return no rows for a collection if it has no entries',
|
|
67
|
-
|
|
63
|
+
it('should return no rows for a collection if it has no entries', () => {
|
|
64
|
+
const FORM_DATA = {
|
|
68
65
|
collection: []
|
|
69
66
|
};
|
|
70
|
-
|
|
67
|
+
const PAGE = {
|
|
68
|
+
...MASTER_PAGE,
|
|
71
69
|
formData: FORM_DATA
|
|
72
|
-
}
|
|
73
|
-
|
|
70
|
+
};
|
|
71
|
+
const ROWS = (0, _getCYARowsForCollectionPage.default)(PAGE, null, null, FORM_DATA);
|
|
74
72
|
expect(ROWS.length).toEqual(0);
|
|
75
73
|
});
|
|
76
|
-
it('should accept the hideNameFromCYA collection flag',
|
|
77
|
-
|
|
74
|
+
it('should accept the hideNameFromCYA collection flag', () => {
|
|
75
|
+
const FORM_DATA = {
|
|
78
76
|
collection: [{
|
|
79
77
|
testText: 'hello'
|
|
80
78
|
}]
|
|
81
79
|
};
|
|
82
|
-
|
|
80
|
+
const PAGE = {
|
|
81
|
+
...MASTER_PAGE,
|
|
83
82
|
formData: FORM_DATA,
|
|
84
|
-
collection:
|
|
83
|
+
collection: {
|
|
84
|
+
...MASTER_PAGE.collection,
|
|
85
85
|
hideNameFromCYA: true
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
|
|
86
|
+
}
|
|
87
|
+
};
|
|
88
|
+
const TITLE_FIELD_ID = "".concat(PAGE.collection.name, "Title");
|
|
89
|
+
const ROWS = (0, _getCYARowsForCollectionPage.default)(PAGE, null, null, FORM_DATA);
|
|
90
90
|
expect(ROWS[0].fieldId).not.toEqual(TITLE_FIELD_ID);
|
|
91
91
|
});
|
|
92
|
-
it('should format titles correctly when collection.labels.item is specified',
|
|
93
|
-
|
|
92
|
+
it('should format titles correctly when collection.labels.item is specified', () => {
|
|
93
|
+
const FORM_DATA = {
|
|
94
94
|
collection: [{
|
|
95
95
|
id: '01',
|
|
96
96
|
testText: 'value'
|
|
97
97
|
}]
|
|
98
98
|
};
|
|
99
|
-
|
|
99
|
+
const PAGE = {
|
|
100
|
+
...MASTER_PAGE,
|
|
100
101
|
formData: FORM_DATA
|
|
101
|
-
}
|
|
102
|
-
|
|
102
|
+
};
|
|
103
|
+
const ROWS = (0, _getCYARowsForCollectionPage.default)(PAGE, null, null, FORM_DATA);
|
|
103
104
|
expect(ROWS.length).toEqual(7); // Collection title, item title, action rows & component rows
|
|
104
105
|
expect(ROWS[1].key).toEqual('Collection entry 1');
|
|
105
106
|
});
|
|
106
|
-
it('should provide default titles if collection.labels.item is not specified',
|
|
107
|
-
|
|
107
|
+
it('should provide default titles if collection.labels.item is not specified', () => {
|
|
108
|
+
const FORM_DATA = {
|
|
108
109
|
collection: [{
|
|
109
110
|
id: '01',
|
|
110
111
|
testText: 'value'
|
|
111
112
|
}]
|
|
112
113
|
};
|
|
113
|
-
|
|
114
|
-
|
|
114
|
+
const PAGE = {
|
|
115
|
+
...MASTER_PAGE,
|
|
116
|
+
collection: {
|
|
117
|
+
...MASTER_PAGE.collection,
|
|
115
118
|
labels: {}
|
|
116
|
-
}
|
|
119
|
+
},
|
|
117
120
|
formData: FORM_DATA
|
|
118
|
-
}
|
|
119
|
-
|
|
121
|
+
};
|
|
122
|
+
const ROWS = (0, _getCYARowsForCollectionPage.default)(PAGE, null, null, FORM_DATA);
|
|
120
123
|
expect(ROWS.length).toEqual(7); // Collection title, item title, action rows & component rows
|
|
121
124
|
expect(ROWS[1].key).toEqual('Item 1');
|
|
122
125
|
});
|
|
123
|
-
it('should return correctly formatted rows for mutliple entries',
|
|
124
|
-
|
|
126
|
+
it('should return correctly formatted rows for mutliple entries', () => {
|
|
127
|
+
const FORM_DATA = {
|
|
125
128
|
collection: [{
|
|
126
129
|
id: '01',
|
|
127
130
|
testText: 'value'
|
|
@@ -130,10 +133,11 @@ describe('utils.CheckYourAnswers.getCYARowsForCollectionPage', function () {
|
|
|
130
133
|
testText: 'value'
|
|
131
134
|
}]
|
|
132
135
|
};
|
|
133
|
-
|
|
136
|
+
const PAGE = {
|
|
137
|
+
...MASTER_PAGE,
|
|
134
138
|
formData: FORM_DATA
|
|
135
|
-
}
|
|
136
|
-
|
|
139
|
+
};
|
|
140
|
+
const ROWS = (0, _getCYARowsForCollectionPage.default)(PAGE, null, null, FORM_DATA);
|
|
137
141
|
expect(ROWS.length).toEqual(13); // Title row + component row for each item
|
|
138
142
|
expect(ROWS[0]).toMatchObject({
|
|
139
143
|
type: 'heading',
|
|
@@ -170,8 +174,8 @@ describe('utils.CheckYourAnswers.getCYARowsForCollectionPage', function () {
|
|
|
170
174
|
key: 'Test date'
|
|
171
175
|
});
|
|
172
176
|
});
|
|
173
|
-
it('should return correctly formatted rows for only the active entry when page.collection.onlyShowActiveEntryOnCYA is defined',
|
|
174
|
-
|
|
177
|
+
it('should return correctly formatted rows for only the active entry when page.collection.onlyShowActiveEntryOnCYA is defined', () => {
|
|
178
|
+
const FORM_DATA = {
|
|
175
179
|
collectionActiveId: '02',
|
|
176
180
|
collection: [{
|
|
177
181
|
id: '01',
|
|
@@ -181,13 +185,15 @@ describe('utils.CheckYourAnswers.getCYARowsForCollectionPage', function () {
|
|
|
181
185
|
testText: 'value'
|
|
182
186
|
}]
|
|
183
187
|
};
|
|
184
|
-
|
|
185
|
-
|
|
188
|
+
const PAGE = {
|
|
189
|
+
...MASTER_PAGE,
|
|
190
|
+
collection: {
|
|
191
|
+
...MASTER_PAGE.collection,
|
|
186
192
|
onlyShowActiveEntryOnCYA: true
|
|
187
|
-
}
|
|
193
|
+
},
|
|
188
194
|
formData: FORM_DATA
|
|
189
|
-
}
|
|
190
|
-
|
|
195
|
+
};
|
|
196
|
+
const ROWS = (0, _getCYARowsForCollectionPage.default)(PAGE, null, null, FORM_DATA);
|
|
191
197
|
expect(ROWS.length).toEqual(7); // Title row + component row for only the active item.
|
|
192
198
|
expect(ROWS[0]).toMatchObject({
|
|
193
199
|
type: 'heading',
|
|
@@ -209,8 +215,8 @@ describe('utils.CheckYourAnswers.getCYARowsForCollectionPage', function () {
|
|
|
209
215
|
key: 'Test date'
|
|
210
216
|
});
|
|
211
217
|
});
|
|
212
|
-
it('should exclude components that should not be shown',
|
|
213
|
-
|
|
218
|
+
it('should exclude components that should not be shown', () => {
|
|
219
|
+
const FD = {
|
|
214
220
|
collection: [{
|
|
215
221
|
id: '01',
|
|
216
222
|
otherField: 'yes',
|
|
@@ -221,12 +227,14 @@ describe('utils.CheckYourAnswers.getCYARowsForCollectionPage', function () {
|
|
|
221
227
|
testText: 'testing'
|
|
222
228
|
}]
|
|
223
229
|
};
|
|
224
|
-
|
|
230
|
+
const PAGE = {
|
|
231
|
+
...MASTER_PAGE,
|
|
225
232
|
collection: {
|
|
226
233
|
name: 'collection'
|
|
227
234
|
},
|
|
228
235
|
formData: FD,
|
|
229
|
-
childPages: [
|
|
236
|
+
childPages: [{
|
|
237
|
+
...PAGES[0],
|
|
230
238
|
components: [{
|
|
231
239
|
id: 'testText',
|
|
232
240
|
fieldId: 'testText',
|
|
@@ -238,9 +246,9 @@ describe('utils.CheckYourAnswers.getCYARowsForCollectionPage', function () {
|
|
|
238
246
|
value: "yes"
|
|
239
247
|
}
|
|
240
248
|
}]
|
|
241
|
-
}
|
|
242
|
-
}
|
|
243
|
-
|
|
249
|
+
}]
|
|
250
|
+
};
|
|
251
|
+
const ROWS = (0, _getCYARowsForCollectionPage.default)(PAGE, null, null, FD);
|
|
244
252
|
expect(ROWS.length).toEqual(4);
|
|
245
253
|
expect(ROWS[0]).toMatchObject({
|
|
246
254
|
type: 'heading',
|
|
@@ -259,28 +267,30 @@ describe('utils.CheckYourAnswers.getCYARowsForCollectionPage', function () {
|
|
|
259
267
|
key: 'Test text'
|
|
260
268
|
});
|
|
261
269
|
});
|
|
262
|
-
it('should exclude pages that should not be shown',
|
|
263
|
-
|
|
270
|
+
it('should exclude pages that should not be shown', () => {
|
|
271
|
+
const FD = {
|
|
264
272
|
collection: [{
|
|
265
273
|
id: '01',
|
|
266
274
|
otherField: 'yes',
|
|
267
275
|
testText: 'testing'
|
|
268
276
|
}]
|
|
269
277
|
};
|
|
270
|
-
|
|
278
|
+
const PAGE = {
|
|
279
|
+
...MASTER_PAGE,
|
|
271
280
|
collection: {
|
|
272
281
|
name: 'collection'
|
|
273
282
|
},
|
|
274
283
|
formData: FD,
|
|
275
|
-
childPages: [
|
|
284
|
+
childPages: [{
|
|
285
|
+
...PAGES[0],
|
|
276
286
|
show_when: {
|
|
277
287
|
field: "otherField",
|
|
278
288
|
op: "!=",
|
|
279
289
|
value: "yes"
|
|
280
290
|
}
|
|
281
|
-
}
|
|
282
|
-
}
|
|
283
|
-
|
|
291
|
+
}, PAGES[1]]
|
|
292
|
+
};
|
|
293
|
+
const ROWS = (0, _getCYARowsForCollectionPage.default)(PAGE, null, null, FD);
|
|
284
294
|
expect(ROWS.length).toEqual(3); // Missing the page with the text component on.
|
|
285
295
|
expect(ROWS[0]).toMatchObject({
|
|
286
296
|
type: 'heading',
|
|
@@ -295,25 +305,28 @@ describe('utils.CheckYourAnswers.getCYARowsForCollectionPage', function () {
|
|
|
295
305
|
key: 'Test date'
|
|
296
306
|
});
|
|
297
307
|
});
|
|
298
|
-
it('should include rows for custom headings',
|
|
299
|
-
|
|
308
|
+
it('should include rows for custom headings', () => {
|
|
309
|
+
const FORM_DATA = {
|
|
300
310
|
collection: [{
|
|
301
311
|
id: '01',
|
|
302
312
|
testText: 'value'
|
|
303
313
|
}]
|
|
304
314
|
};
|
|
305
|
-
|
|
315
|
+
const PAGE = {
|
|
316
|
+
...MASTER_PAGE,
|
|
306
317
|
formData: FORM_DATA,
|
|
307
|
-
childPages: [
|
|
308
|
-
|
|
318
|
+
childPages: [{
|
|
319
|
+
...PAGES[0],
|
|
320
|
+
collection: {
|
|
321
|
+
...PAGES[0].collection,
|
|
309
322
|
heading: {
|
|
310
323
|
size: 'm',
|
|
311
324
|
text: 'Custom page heading'
|
|
312
325
|
}
|
|
313
|
-
}
|
|
314
|
-
}
|
|
315
|
-
}
|
|
316
|
-
|
|
326
|
+
}
|
|
327
|
+
}]
|
|
328
|
+
};
|
|
329
|
+
const ROWS = (0, _getCYARowsForCollectionPage.default)(PAGE, null, null, FORM_DATA);
|
|
317
330
|
expect(ROWS.length).toEqual(7);
|
|
318
331
|
expect(ROWS[0]).toMatchObject({
|
|
319
332
|
type: 'heading',
|
|
@@ -336,99 +349,106 @@ describe('utils.CheckYourAnswers.getCYARowsForCollectionPage', function () {
|
|
|
336
349
|
key: 'Test text'
|
|
337
350
|
});
|
|
338
351
|
});
|
|
339
|
-
it('should default to a title size of small if one is not specified',
|
|
340
|
-
|
|
352
|
+
it('should default to a title size of small if one is not specified', () => {
|
|
353
|
+
const FORM_DATA = {
|
|
341
354
|
collection: [{
|
|
342
355
|
id: '01',
|
|
343
356
|
testText: 'value'
|
|
344
357
|
}]
|
|
345
358
|
};
|
|
346
|
-
|
|
359
|
+
const PAGE = {
|
|
360
|
+
...MASTER_PAGE,
|
|
347
361
|
formData: FORM_DATA,
|
|
348
|
-
childPages: [
|
|
349
|
-
|
|
362
|
+
childPages: [{
|
|
363
|
+
...PAGES[0],
|
|
364
|
+
collection: {
|
|
365
|
+
...PAGES[0].collection,
|
|
350
366
|
heading: {
|
|
351
367
|
text: 'Custom page heading'
|
|
352
368
|
}
|
|
353
|
-
}
|
|
354
|
-
}
|
|
355
|
-
}
|
|
356
|
-
|
|
369
|
+
}
|
|
370
|
+
}]
|
|
371
|
+
};
|
|
372
|
+
const ROWS = (0, _getCYARowsForCollectionPage.default)(PAGE, null, null, FORM_DATA);
|
|
357
373
|
expect(ROWS[5]).toMatchObject({
|
|
358
374
|
type: 'heading',
|
|
359
375
|
key: 'Custom page heading',
|
|
360
376
|
size: 's'
|
|
361
377
|
});
|
|
362
378
|
});
|
|
363
|
-
it('should position actions under the title if actionPosition flag is not specified',
|
|
364
|
-
|
|
379
|
+
it('should position actions under the title if actionPosition flag is not specified', () => {
|
|
380
|
+
const FORM_DATA = {
|
|
365
381
|
collection: [{
|
|
366
382
|
id: '01',
|
|
367
383
|
testText: 'value'
|
|
368
384
|
}]
|
|
369
385
|
};
|
|
370
|
-
|
|
386
|
+
const PAGE = {
|
|
387
|
+
...MASTER_PAGE,
|
|
371
388
|
formData: FORM_DATA
|
|
372
|
-
}
|
|
373
|
-
|
|
389
|
+
};
|
|
390
|
+
const ROWS = (0, _getCYARowsForCollectionPage.default)(PAGE, null, null, FORM_DATA);
|
|
374
391
|
expect(ROWS[2].action.label).toEqual('Change');
|
|
375
392
|
expect(ROWS[3].action.label).toEqual('custom remove label');
|
|
376
393
|
expect(ROWS[4].action.label).toEqual('custom change label');
|
|
377
394
|
});
|
|
378
|
-
it('should position actions under the title if actionPosition flag is top',
|
|
379
|
-
|
|
395
|
+
it('should position actions under the title if actionPosition flag is top', () => {
|
|
396
|
+
const FORM_DATA = {
|
|
380
397
|
collection: [{
|
|
381
398
|
id: '01',
|
|
382
399
|
testText: 'value'
|
|
383
400
|
}]
|
|
384
401
|
};
|
|
385
|
-
|
|
386
|
-
|
|
402
|
+
const PAGE = {
|
|
403
|
+
...MASTER_PAGE,
|
|
404
|
+
collection: {
|
|
405
|
+
...MASTER_PAGE.collection,
|
|
387
406
|
actionPosition: 'top'
|
|
388
|
-
}
|
|
407
|
+
},
|
|
389
408
|
formData: FORM_DATA
|
|
390
|
-
}
|
|
391
|
-
|
|
409
|
+
};
|
|
410
|
+
const ROWS = (0, _getCYARowsForCollectionPage.default)(PAGE, null, null, FORM_DATA);
|
|
392
411
|
expect(ROWS[2].action.label).toEqual('Change');
|
|
393
412
|
expect(ROWS[3].action.label).toEqual('custom remove label');
|
|
394
413
|
expect(ROWS[4].action.label).toEqual('custom change label');
|
|
395
414
|
});
|
|
396
|
-
it('should position actions under all other rows if actionPosition flag is bottom',
|
|
397
|
-
|
|
415
|
+
it('should position actions under all other rows if actionPosition flag is bottom', () => {
|
|
416
|
+
const FORM_DATA = {
|
|
398
417
|
collection: [{
|
|
399
418
|
id: '01',
|
|
400
419
|
testText: 'value'
|
|
401
420
|
}]
|
|
402
421
|
};
|
|
403
|
-
|
|
404
|
-
|
|
422
|
+
const PAGE = {
|
|
423
|
+
...MASTER_PAGE,
|
|
424
|
+
collection: {
|
|
425
|
+
...MASTER_PAGE.collection,
|
|
405
426
|
actionPosition: 'bottom'
|
|
406
|
-
}
|
|
427
|
+
},
|
|
407
428
|
formData: FORM_DATA
|
|
408
|
-
}
|
|
409
|
-
|
|
429
|
+
};
|
|
430
|
+
const ROWS = (0, _getCYARowsForCollectionPage.default)(PAGE, null, null, FORM_DATA);
|
|
410
431
|
expect(ROWS[ROWS.length - 3].action.label).toEqual('Change');
|
|
411
432
|
expect(ROWS[ROWS.length - 2].action.label).toEqual('custom remove label');
|
|
412
433
|
expect(ROWS[ROWS.length - 1].action.label).toEqual('custom change label');
|
|
413
434
|
});
|
|
414
|
-
it('should ignore the result of the override function if it returns nullish',
|
|
415
|
-
|
|
435
|
+
it('should ignore the result of the override function if it returns nullish', () => {
|
|
436
|
+
const FORM_DATA = {
|
|
416
437
|
collection: [{
|
|
417
438
|
id: '01',
|
|
418
439
|
testText: 'value'
|
|
419
440
|
}]
|
|
420
441
|
};
|
|
421
|
-
|
|
442
|
+
const PAGE = {
|
|
443
|
+
...MASTER_PAGE,
|
|
422
444
|
formData: FORM_DATA
|
|
423
|
-
}
|
|
424
|
-
|
|
425
|
-
return null;
|
|
426
|
-
}, FORM_DATA);
|
|
445
|
+
};
|
|
446
|
+
const ROWS = (0, _getCYARowsForCollectionPage.default)(PAGE, null, () => null, FORM_DATA);
|
|
427
447
|
expect(ROWS.length).toEqual(7); // Collection title, item title, action rows & component rows
|
|
428
448
|
expect(ROWS[5].key).toEqual("Test text");
|
|
429
449
|
});
|
|
430
|
-
it('should use the rows produced by the override function if provided',
|
|
431
|
-
|
|
450
|
+
it('should use the rows produced by the override function if provided', () => {
|
|
451
|
+
const FORM_DATA = {
|
|
432
452
|
collection: [{
|
|
433
453
|
id: '01',
|
|
434
454
|
testText: 'value'
|
|
@@ -436,22 +456,23 @@ describe('utils.CheckYourAnswers.getCYARowsForCollectionPage', function () {
|
|
|
436
456
|
};
|
|
437
457
|
|
|
438
458
|
// eslint-disable-next-line arrow-body-style
|
|
439
|
-
|
|
459
|
+
const OVERRIDE = (page, comp) => {
|
|
440
460
|
// This will be called for each component on the page,
|
|
441
461
|
// returning a custom row object.
|
|
442
462
|
return {
|
|
443
463
|
key: "CustomRowFor".concat(comp.label)
|
|
444
464
|
};
|
|
445
465
|
};
|
|
446
|
-
|
|
466
|
+
const PAGE = {
|
|
467
|
+
...MASTER_PAGE,
|
|
447
468
|
formData: FORM_DATA
|
|
448
|
-
}
|
|
449
|
-
|
|
469
|
+
};
|
|
470
|
+
const ROWS = (0, _getCYARowsForCollectionPage.default)(PAGE, null, OVERRIDE, FORM_DATA);
|
|
450
471
|
expect(ROWS.length).toEqual(7); // Collection title, item title, action rows & component rows
|
|
451
472
|
expect(ROWS[5].key).toEqual("CustomRowFor".concat(TEXT_COMP.label));
|
|
452
473
|
});
|
|
453
|
-
it('should create rows for nested collections correctly',
|
|
454
|
-
|
|
474
|
+
it('should create rows for nested collections correctly', () => {
|
|
475
|
+
const CUSTOM_FORM_DATA = {
|
|
455
476
|
parentActiveId: '001',
|
|
456
477
|
childActiveId: '001',
|
|
457
478
|
parent: [{
|
|
@@ -463,7 +484,7 @@ describe('utils.CheckYourAnswers.getCYARowsForCollectionPage', function () {
|
|
|
463
484
|
}]
|
|
464
485
|
}]
|
|
465
486
|
};
|
|
466
|
-
|
|
487
|
+
const CHILD_MASTER_PAGE = {
|
|
467
488
|
id: 'childPage',
|
|
468
489
|
collection: {
|
|
469
490
|
name: 'parent.child',
|
|
@@ -487,7 +508,7 @@ describe('utils.CheckYourAnswers.getCYARowsForCollectionPage', function () {
|
|
|
487
508
|
components: [TEXT_COMP]
|
|
488
509
|
}]
|
|
489
510
|
};
|
|
490
|
-
|
|
511
|
+
const PARENT_MASTER_PAGE = {
|
|
491
512
|
id: 'parentPage',
|
|
492
513
|
collection: {
|
|
493
514
|
name: 'parent',
|
|
@@ -501,10 +522,11 @@ describe('utils.CheckYourAnswers.getCYARowsForCollectionPage', function () {
|
|
|
501
522
|
components: [TEXT_COMP]
|
|
502
523
|
}, CHILD_MASTER_PAGE]
|
|
503
524
|
};
|
|
504
|
-
|
|
525
|
+
const PAGE = {
|
|
526
|
+
...PARENT_MASTER_PAGE,
|
|
505
527
|
formData: CUSTOM_FORM_DATA
|
|
506
|
-
}
|
|
507
|
-
|
|
528
|
+
};
|
|
529
|
+
const ROWS = (0, _getCYARowsForCollectionPage.default)(PAGE, null, null, CUSTOM_FORM_DATA);
|
|
508
530
|
expect(ROWS.length).toEqual(8);
|
|
509
531
|
expect(ROWS[0]).toMatchObject({
|
|
510
532
|
type: 'heading',
|
|
@@ -10,36 +10,41 @@ var _getCYARow = _interopRequireDefault(require("./getCYARow"));
|
|
|
10
10
|
var _getCYARowsForCollection = _interopRequireDefault(require("./getCYARowsForCollection"));
|
|
11
11
|
var _showComponentCYA = _interopRequireDefault(require("./showComponentCYA"));
|
|
12
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
}).flatMap(
|
|
25
|
-
|
|
13
|
+
// Local imports
|
|
14
|
+
|
|
15
|
+
const getCYARowsForContainer = (page, container, formData, onAction, fnOverride) => {
|
|
16
|
+
if ((0, _showComponentCYA.default)(container, {
|
|
17
|
+
...page.formData,
|
|
18
|
+
...formData
|
|
19
|
+
})) {
|
|
20
|
+
const allComponents = (0, _elevateNestedComponents.default)(container.components, formData);
|
|
21
|
+
return allComponents.filter(c => (0, _showComponentCYA.default)(c, {
|
|
22
|
+
...page.formData,
|
|
23
|
+
...formData
|
|
24
|
+
})).flatMap(component => {
|
|
25
|
+
const fd = formData ? formData[component.fieldId] : undefined;
|
|
26
26
|
if (typeof fnOverride === 'function') {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
27
|
+
const overrideRows = fnOverride({
|
|
28
|
+
...page,
|
|
29
|
+
formData
|
|
30
|
+
}, component, onAction);
|
|
30
31
|
if (overrideRows) {
|
|
31
32
|
return overrideRows;
|
|
32
33
|
}
|
|
33
34
|
}
|
|
34
35
|
if (component.type === _models.ComponentTypes.CONTAINER) {
|
|
35
|
-
return getCYARowsForContainer(page, component,
|
|
36
|
+
return getCYARowsForContainer(page, component, {
|
|
37
|
+
...fd,
|
|
38
|
+
...formData
|
|
39
|
+
}, onAction, fnOverride);
|
|
36
40
|
}
|
|
37
41
|
if (component.type === _models.ComponentTypes.COLLECTION) {
|
|
38
42
|
return (0, _getCYARowsForCollection.default)(page, component, fd, onAction, fnOverride);
|
|
39
43
|
}
|
|
40
|
-
return (0, _getCYARow.default)(
|
|
41
|
-
|
|
42
|
-
|
|
44
|
+
return (0, _getCYARow.default)({
|
|
45
|
+
...page,
|
|
46
|
+
formData
|
|
47
|
+
}, component, onAction);
|
|
43
48
|
});
|
|
44
49
|
}
|
|
45
50
|
return null;
|