@ukhomeoffice/cop-react-form-renderer 5.90.1 → 5.91.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/CheckYourAnswers/Answer.js +15 -15
- package/dist/components/CheckYourAnswers/Answer.test.js +181 -132
- package/dist/components/CheckYourAnswers/CheckYourAnswers.js +142 -106
- package/dist/components/CheckYourAnswers/CheckYourAnswers.test.js +941 -563
- package/dist/components/CheckYourAnswers/index.js +1 -1
- package/dist/components/CollectionPage/CollectionPage.js +66 -75
- package/dist/components/CollectionPage/CollectionPage.test.js +369 -318
- package/dist/components/CollectionPage/index.js +1 -1
- package/dist/components/CollectionSummary/BannerStrip.js +15 -15
- package/dist/components/CollectionSummary/BannerStrip.test.js +79 -83
- package/dist/components/CollectionSummary/CollectionSummary.js +131 -109
- package/dist/components/CollectionSummary/CollectionSummary.test.js +180 -198
- package/dist/components/CollectionSummary/Confirmation.js +13 -15
- package/dist/components/CollectionSummary/Confirmation.test.js +63 -68
- package/dist/components/CollectionSummary/RenderListView.js +63 -46
- package/dist/components/CollectionSummary/RenderListView.scss +9 -0
- package/dist/components/CollectionSummary/RenderListView.test.js +120 -84
- package/dist/components/CollectionSummary/SummaryCard.js +157 -121
- package/dist/components/CollectionSummary/SummaryCard.test.js +1000 -970
- package/dist/components/CollectionSummary/SummaryCardDetails.js +94 -103
- package/dist/components/CollectionSummary/SummaryCardDetails.test.js +195 -187
- package/dist/components/CollectionSummary/SummaryCardValidationContext.js +36 -31
- package/dist/components/CollectionSummary/SummaryCardValidationContext.test.js +76 -64
- package/dist/components/CollectionSummary/index.js +1 -1
- package/dist/components/FormComponent/Collection.js +117 -80
- package/dist/components/FormComponent/Collection.test.js +1082 -910
- package/dist/components/FormComponent/Container.js +38 -43
- package/dist/components/FormComponent/Container.test.js +411 -379
- package/dist/components/FormComponent/FormComponent.js +74 -71
- package/dist/components/FormComponent/FormComponent.test.js +415 -354
- package/dist/components/FormComponent/helpers/addLabel.js +7 -4
- package/dist/components/FormComponent/helpers/getComponentDisabled.js +1 -1
- package/dist/components/FormComponent/helpers/getComponentDisabled.test.js +8 -8
- package/dist/components/FormComponent/helpers/getComponentError.js +5 -3
- package/dist/components/FormComponent/helpers/getComponentError.test.js +15 -15
- package/dist/components/FormComponent/helpers/getComponentFieldSet.js +4 -3
- package/dist/components/FormComponent/helpers/getComponentFieldSet.test.js +7 -7
- package/dist/components/FormComponent/helpers/index.js +5 -5
- package/dist/components/FormComponent/index.js +1 -1
- package/dist/components/FormPage/FormPage.js +87 -71
- package/dist/components/FormPage/FormPage.test.js +170 -133
- package/dist/components/FormPage/index.js +1 -1
- package/dist/components/FormRenderer/FormRenderer.js +198 -153
- package/dist/components/FormRenderer/FormRenderer.test.js +1116 -731
- package/dist/components/FormRenderer/handlers/cyaAction.js +3 -3
- package/dist/components/FormRenderer/handlers/getPageId.js +3 -1
- package/dist/components/FormRenderer/handlers/getPageId.test.js +15 -15
- package/dist/components/FormRenderer/handlers/handlers.test.js +33 -33
- package/dist/components/FormRenderer/handlers/index.js +2 -2
- package/dist/components/FormRenderer/handlers/navigate.js +4 -4
- package/dist/components/FormRenderer/handlers/submissionError.js +1 -1
- package/dist/components/FormRenderer/helpers/canActionProceed.js +1 -1
- package/dist/components/FormRenderer/helpers/canActionProceed.test.js +16 -16
- package/dist/components/FormRenderer/helpers/canCYASubmit.js +3 -1
- package/dist/components/FormRenderer/helpers/canCYASubmit.test.js +21 -17
- package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.js +30 -27
- package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.test.js +21 -21
- package/dist/components/FormRenderer/helpers/getCYA.js +7 -5
- package/dist/components/FormRenderer/helpers/getCYA.test.js +12 -12
- package/dist/components/FormRenderer/helpers/getFormState.js +8 -6
- package/dist/components/FormRenderer/helpers/getFormState.test.js +11 -11
- package/dist/components/FormRenderer/helpers/getNextPageId.js +32 -18
- package/dist/components/FormRenderer/helpers/getNextPageId.test.js +68 -68
- package/dist/components/FormRenderer/helpers/getPage.js +4 -2
- package/dist/components/FormRenderer/helpers/getPage.test.js +12 -12
- package/dist/components/FormRenderer/helpers/getRelevantPages.js +11 -8
- package/dist/components/FormRenderer/helpers/getRelevantPages.test.js +15 -15
- package/dist/components/FormRenderer/helpers/getSubmissionStatus.js +13 -12
- package/dist/components/FormRenderer/helpers/getSubmissionStatus.test.js +98 -104
- package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.js +64 -65
- package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.test.js +79 -72
- package/dist/components/FormRenderer/helpers/index.js +2 -2
- package/dist/components/FormRenderer/index.js +1 -1
- package/dist/components/FormRenderer/onCYAAction.js +54 -61
- package/dist/components/FormRenderer/onCYAAction.test.js +153 -165
- package/dist/components/FormRenderer/onPageAction.js +41 -45
- package/dist/components/FormRenderer/onPageAction.test.js +210 -225
- package/dist/components/FormRenderer/onTaskAction.js +15 -11
- package/dist/components/FormRenderer/onTaskAction.test.js +89 -94
- package/dist/components/PageActions/ActionButton.js +16 -13
- package/dist/components/PageActions/ActionButton.test.js +79 -57
- package/dist/components/PageActions/PageActions.js +11 -11
- package/dist/components/PageActions/PageActions.test.js +116 -87
- package/dist/components/PageActions/index.js +1 -1
- package/dist/components/SummaryList/GroupAction.js +21 -13
- package/dist/components/SummaryList/GroupAction.test.js +37 -41
- package/dist/components/SummaryList/RowAction.js +17 -12
- package/dist/components/SummaryList/RowAction.test.js +37 -41
- package/dist/components/SummaryList/SummaryList.js +28 -23
- package/dist/components/SummaryList/SummaryList.test.js +206 -179
- package/dist/components/SummaryList/SummaryListHeadingRow.js +6 -8
- package/dist/components/SummaryList/SummaryListHeadingRowWithAction.js +5 -7
- package/dist/components/SummaryList/SummaryListRow.js +6 -8
- package/dist/components/SummaryList/SummaryListTitleRow.js +5 -7
- package/dist/components/SummaryList/helpers/getGroupActionAttributes.js +6 -4
- package/dist/components/SummaryList/helpers/getGroupActionAttributes.test.js +24 -24
- package/dist/components/SummaryList/helpers/getRowActionAttributes.js +6 -4
- package/dist/components/SummaryList/helpers/getRowActionAttributes.test.js +24 -24
- package/dist/components/SummaryList/helpers/index.js +2 -2
- package/dist/components/SummaryList/index.js +1 -1
- package/dist/components/TaskList/Task.js +30 -20
- package/dist/components/TaskList/Task.test.js +77 -84
- package/dist/components/TaskList/TaskList.js +84 -53
- package/dist/components/TaskList/TaskList.test.js +150 -150
- package/dist/components/TaskList/TaskState.js +6 -8
- package/dist/components/TaskList/TaskState.test.js +49 -56
- package/dist/components/TaskList/index.js +1 -1
- package/dist/components/index.js +8 -8
- package/dist/context/HooksContext/HooksContext.js +81 -58
- package/dist/context/HooksContext/HooksContext.test.js +36 -27
- package/dist/context/HooksContext/index.js +4 -3
- package/dist/context/ValidationContext/ValidationContext.js +95 -44
- package/dist/context/ValidationContext/ValidationContext.test.js +70 -58
- package/dist/context/ValidationContext/index.js +4 -3
- package/dist/context/index.js +3 -3
- package/dist/hooks/index.js +11 -10
- package/dist/hooks/useAxios.js +41 -15
- package/dist/hooks/useGetRequest.js +98 -62
- package/dist/hooks/useHooks.js +3 -1
- package/dist/hooks/useRefData.js +41 -28
- package/dist/hooks/useValidation.js +3 -1
- package/dist/index.js +15 -14
- package/dist/models/CollectionLabels.js +1 -1
- package/dist/models/ComponentTypes.js +25 -25
- package/dist/models/EventTypes.js +4 -4
- package/dist/models/FormPages.js +4 -4
- package/dist/models/FormTypes.js +8 -8
- package/dist/models/HubFormats.js +3 -3
- package/dist/models/PageAction.js +38 -44
- package/dist/models/TaskStates.js +28 -29
- package/dist/models/index.js +10 -10
- package/dist/setupTests.js +32 -31
- package/dist/utils/CheckYourAnswers/getCYAAction.js +5 -5
- package/dist/utils/CheckYourAnswers/getCYAAction.test.js +55 -53
- package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.js +27 -17
- package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.test.js +36 -34
- package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.js +34 -20
- package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.test.js +45 -43
- package/dist/utils/CheckYourAnswers/getCYARow.js +10 -8
- package/dist/utils/CheckYourAnswers/getCYARow.test.js +87 -87
- package/dist/utils/CheckYourAnswers/getCYARowForGroup.js +25 -19
- package/dist/utils/CheckYourAnswers/getCYARowForGroup.test.js +17 -16
- package/dist/utils/CheckYourAnswers/getCYARowsForCollection.js +45 -39
- package/dist/utils/CheckYourAnswers/getCYARowsForCollection.test.js +75 -72
- package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.js +105 -100
- package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.test.js +182 -218
- package/dist/utils/CheckYourAnswers/getCYARowsForContainer.js +21 -26
- package/dist/utils/CheckYourAnswers/getCYARowsForContainer.test.js +106 -112
- package/dist/utils/CheckYourAnswers/getCYARowsForPage.js +21 -15
- package/dist/utils/CheckYourAnswers/getCYARowsForPage.test.js +83 -77
- package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.js +13 -13
- package/dist/utils/CheckYourAnswers/getSummaryListRowForDetails.test.js +19 -14
- package/dist/utils/CheckYourAnswers/index.js +2 -2
- package/dist/utils/CheckYourAnswers/showComponentCYA.js +6 -6
- package/dist/utils/CheckYourAnswers/showComponentCYA.test.js +26 -26
- package/dist/utils/CollectionPage/addCollectionPageEntry.js +3 -3
- package/dist/utils/CollectionPage/addCollectionPageEntry.test.js +6 -6
- package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.js +3 -3
- package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.test.js +22 -21
- package/dist/utils/CollectionPage/duplicateCollectionPageEntry.js +24 -14
- package/dist/utils/CollectionPage/duplicateCollectionPageEntry.test.js +43 -52
- package/dist/utils/CollectionPage/getCollectionPageActiveId.js +3 -3
- package/dist/utils/CollectionPage/getCollectionPageActiveId.test.js +11 -11
- package/dist/utils/CollectionPage/getCollectionPageActiveIndex.js +12 -7
- package/dist/utils/CollectionPage/getCollectionPageActiveIndex.test.js +23 -23
- package/dist/utils/CollectionPage/getCollectionPageData.js +13 -8
- package/dist/utils/CollectionPage/getCollectionPageData.test.js +20 -20
- package/dist/utils/CollectionPage/getErrorsForCollection.js +26 -25
- package/dist/utils/CollectionPage/getErrorsForCollection.test.js +23 -21
- package/dist/utils/CollectionPage/getQuickEditPage.js +32 -37
- package/dist/utils/CollectionPage/getQuickEditPage.test.js +22 -18
- package/dist/utils/CollectionPage/index.js +2 -2
- package/dist/utils/CollectionPage/mergeCollectionPages.js +42 -37
- package/dist/utils/CollectionPage/mergeCollectionPages.test.js +18 -48
- package/dist/utils/CollectionPage/removeCollectionPageEntry.js +7 -5
- package/dist/utils/CollectionPage/removeCollectionPageEntry.test.js +11 -11
- package/dist/utils/CollectionPage/setCollectionPageData.js +19 -12
- package/dist/utils/CollectionPage/setCollectionPageData.test.js +26 -26
- package/dist/utils/Component/addShowWhen.js +8 -4
- package/dist/utils/Component/addShowWhen.test.js +38 -38
- package/dist/utils/Component/applyToComponentTree.js +20 -19
- package/dist/utils/Component/applyToComponentTree.test.js +33 -28
- package/dist/utils/Component/cleanAttributes.js +13 -10
- package/dist/utils/Component/cleanAttributes.test.js +18 -17
- package/dist/utils/Component/elevateNestedComponents.js +7 -6
- package/dist/utils/Component/elevateNestedComponents.test.js +34 -34
- package/dist/utils/Component/getComponent.js +97 -90
- package/dist/utils/Component/getComponentTests/getComponent.autocomplete.test.js +18 -19
- package/dist/utils/Component/getComponentTests/getComponent.calculation.test.js +63 -50
- package/dist/utils/Component/getComponentTests/getComponent.checkboxes.test.js +49 -40
- package/dist/utils/Component/getComponentTests/getComponent.date.test.js +40 -30
- package/dist/utils/Component/getComponentTests/getComponent.details.test.js +19 -21
- package/dist/utils/Component/getComponentTests/getComponent.email.test.js +23 -18
- package/dist/utils/Component/getComponentTests/getComponent.file.test.js +27 -22
- package/dist/utils/Component/getComponentTests/getComponent.heading.test.js +11 -12
- package/dist/utils/Component/getComponentTests/getComponent.html.test.js +16 -18
- package/dist/utils/Component/getComponentTests/getComponent.insetText.test.js +9 -10
- package/dist/utils/Component/getComponentTests/getComponent.list.test.js +16 -18
- package/dist/utils/Component/getComponentTests/getComponent.multifile.test.js +27 -23
- package/dist/utils/Component/getComponentTests/getComponent.nested.test.js +175 -155
- package/dist/utils/Component/getComponentTests/getComponent.paragraph.test.js +16 -18
- package/dist/utils/Component/getComponentTests/getComponent.phoneNumber.test.js +23 -18
- package/dist/utils/Component/getComponentTests/getComponent.radios.test.js +73 -58
- package/dist/utils/Component/getComponentTests/getComponent.select.test.js +23 -18
- package/dist/utils/Component/getComponentTests/getComponent.text.test.js +23 -18
- package/dist/utils/Component/getComponentTests/getComponent.textArea.test.js +41 -34
- package/dist/utils/Component/getComponentTests/getComponent.time.test.js +32 -23
- package/dist/utils/Component/getComponentTests/getComponent.unknown.test.js +3 -3
- package/dist/utils/Component/getComponentTests/getComponent.warningText.test.js +9 -10
- package/dist/utils/Component/getDefaultValue.js +9 -7
- package/dist/utils/Component/getDefaultValue.test.js +13 -13
- package/dist/utils/Component/getDefaultValueFromConfig.js +24 -24
- package/dist/utils/Component/getDefaultValueFromConfig.test.js +32 -32
- package/dist/utils/Component/index.js +2 -2
- package/dist/utils/Component/isEditable.js +4 -2
- package/dist/utils/Component/isEditable.test.js +15 -14
- package/dist/utils/Component/optionIsSelected.js +4 -2
- package/dist/utils/Component/optionIsSelected.test.js +12 -12
- package/dist/utils/Component/setupContainerComponentsPath.js +31 -29
- package/dist/utils/Component/setupContainerComponentsPath.test.js +16 -16
- package/dist/utils/Component/showComponent.js +4 -3
- package/dist/utils/Component/showComponent.test.js +29 -29
- package/dist/utils/Component/wrapInFormGroup.js +4 -4
- package/dist/utils/Condition/index.js +2 -2
- package/dist/utils/Condition/meetsAllConditions.js +9 -9
- package/dist/utils/Condition/meetsAllConditions.test.js +21 -21
- package/dist/utils/Condition/meetsCondition.js +31 -20
- package/dist/utils/Condition/meetsCondition.test.js +403 -403
- package/dist/utils/Condition/meetsOneCondition.js +6 -6
- package/dist/utils/Condition/meetsOneCondition.test.js +17 -17
- package/dist/utils/Condition/setupConditions.js +19 -14
- package/dist/utils/Condition/setupConditions.test.js +8 -8
- package/dist/utils/Container/getEditableComponents.js +6 -4
- package/dist/utils/Container/getEditableComponents.test.js +46 -44
- package/dist/utils/Container/index.js +2 -2
- package/dist/utils/Container/setupNesting.js +22 -16
- package/dist/utils/Container/setupNesting.test.js +31 -28
- package/dist/utils/Container/showContainer.js +8 -4
- package/dist/utils/Container/showContainer.test.js +31 -31
- package/dist/utils/Data/applyFormula.js +50 -40
- package/dist/utils/Data/applyFormula.test.js +26 -26
- package/dist/utils/Data/deleteValues.js +8 -4
- package/dist/utils/Data/deleteValues.test.js +11 -11
- package/dist/utils/Data/getAutocompleteSource.js +29 -20
- package/dist/utils/Data/getAutocompleteSource.test.js +87 -81
- package/dist/utils/Data/getDataPath.js +30 -20
- package/dist/utils/Data/getDataPath.test.js +20 -20
- package/dist/utils/Data/getOptions.js +34 -27
- package/dist/utils/Data/getOptions.test.js +28 -28
- package/dist/utils/Data/getSourceData.js +19 -6
- package/dist/utils/Data/getSourceData.test.js +81 -85
- package/dist/utils/Data/index.js +2 -2
- package/dist/utils/Data/nestInRefdataOptions.js +16 -9
- package/dist/utils/Data/nestInRefdataOptions.test.js +17 -17
- package/dist/utils/Data/refDataToOptions.js +15 -11
- package/dist/utils/Data/refDataToOptions.test.js +20 -20
- package/dist/utils/Data/setDataItem.js +8 -7
- package/dist/utils/Data/setDataItem.test.js +38 -38
- package/dist/utils/Data/setupFormData.js +22 -14
- package/dist/utils/Data/setupFormData.test.js +51 -52
- package/dist/utils/Data/setupRefDataUrlForComponent.js +28 -21
- package/dist/utils/Data/setupRefDataUrlForComponent.test.js +28 -28
- package/dist/utils/FormPage/applyConditionalProperties.js +10 -6
- package/dist/utils/FormPage/applyConditionalProperties.test.js +19 -16
- package/dist/utils/FormPage/getConditionalText.js +4 -4
- package/dist/utils/FormPage/getConditionalText.test.js +35 -35
- package/dist/utils/FormPage/getFormPage.js +17 -16
- package/dist/utils/FormPage/getFormPage.test.js +48 -49
- package/dist/utils/FormPage/getFormPages.js +13 -8
- package/dist/utils/FormPage/getFormPages.test.js +25 -22
- package/dist/utils/FormPage/getPageActions.js +17 -10
- package/dist/utils/FormPage/getPageActions.test.js +33 -33
- package/dist/utils/FormPage/getParagraphFromText.js +7 -5
- package/dist/utils/FormPage/getParagraphFromText.test.js +7 -7
- package/dist/utils/FormPage/index.js +5 -3
- package/dist/utils/FormPage/showFormPage.js +8 -4
- package/dist/utils/FormPage/showFormPage.test.js +33 -33
- package/dist/utils/FormPage/showFormPageCYA.js +3 -3
- package/dist/utils/FormPage/showFormPageCYA.test.js +9 -9
- package/dist/utils/FormPage/useComponent.js +28 -21
- package/dist/utils/FormPage/useComponent.test.js +80 -78
- package/dist/utils/Format/formatData.js +1 -1
- package/dist/utils/Format/formatData.test.js +19 -19
- package/dist/utils/Format/formatDataForComponent.js +7 -6
- package/dist/utils/Format/formatDataForComponent.test.js +78 -50
- package/dist/utils/Format/formatDataForForm.js +8 -6
- package/dist/utils/Format/formatDataForForm.test.js +17 -14
- package/dist/utils/Format/formatDataForPage.js +5 -4
- package/dist/utils/Format/formatDataForPage.test.js +25 -20
- package/dist/utils/Format/index.js +2 -2
- package/dist/utils/Hub/getFormHub.js +2 -2
- package/dist/utils/Hub/getFormHub.test.js +32 -29
- package/dist/utils/Hub/index.js +2 -2
- package/dist/utils/Meta/constants.js +2 -2
- package/dist/utils/Meta/documents/getDocuments.js +4 -1
- package/dist/utils/Meta/documents/getDocuments.test.js +17 -25
- package/dist/utils/Meta/documents/index.js +2 -2
- package/dist/utils/Meta/documents/setDocumentsForField.js +17 -15
- package/dist/utils/Meta/documents/setDocumentsForField.test.js +35 -69
- package/dist/utils/Meta/index.js +2 -2
- package/dist/utils/Operate/checkValueIsTruthy.js +4 -4
- package/dist/utils/Operate/checkValueIsTruthy.test.js +17 -17
- package/dist/utils/Operate/deleteValueInFormData.js +3 -3
- package/dist/utils/Operate/deleteValueInFormData.test.js +15 -15
- package/dist/utils/Operate/getFirstOf.js +8 -8
- package/dist/utils/Operate/getFirstOf.test.js +33 -33
- package/dist/utils/Operate/getIndexOfMatchingValueIn.js +12 -12
- package/dist/utils/Operate/getIndexOfMatchingValueIn.test.js +53 -47
- package/dist/utils/Operate/getLength.js +11 -11
- package/dist/utils/Operate/getLength.test.js +19 -19
- package/dist/utils/Operate/index.js +2 -2
- package/dist/utils/Operate/persistValueInFormData.js +6 -6
- package/dist/utils/Operate/persistValueInFormData.test.js +21 -23
- package/dist/utils/Operate/runPageOperations.js +9 -9
- package/dist/utils/Operate/runPageOperations.test.js +37 -36
- package/dist/utils/Operate/setValueInFormData.js +5 -5
- package/dist/utils/Operate/setValueInFormData.test.js +17 -17
- package/dist/utils/Operate/shouldRun.js +8 -8
- package/dist/utils/Operate/shouldRun.test.js +28 -22
- package/dist/utils/Validate/additional/conditionallyPermittedChange.js +1 -1
- package/dist/utils/Validate/additional/conditionallyPermittedChange.test.js +15 -15
- package/dist/utils/Validate/additional/conditionallyRequired.js +5 -4
- package/dist/utils/Validate/additional/conditionallyRequired.test.js +19 -19
- package/dist/utils/Validate/additional/index.js +8 -8
- package/dist/utils/Validate/additional/index.test.js +22 -22
- package/dist/utils/Validate/additional/mustBeAfter.js +3 -3
- package/dist/utils/Validate/additional/mustBeAfter.test.js +41 -41
- package/dist/utils/Validate/additional/mustBeBefore.js +3 -3
- package/dist/utils/Validate/additional/mustBeBefore.test.js +29 -29
- package/dist/utils/Validate/additional/mustBeEarlierDateTime.js +14 -9
- package/dist/utils/Validate/additional/mustBeEarlierDateTime.test.js +42 -38
- package/dist/utils/Validate/additional/mustBeGreaterThan.js +2 -2
- package/dist/utils/Validate/additional/mustBeGreaterThan.test.js +19 -19
- package/dist/utils/Validate/additional/mustBeInTheFuture.js +4 -4
- package/dist/utils/Validate/additional/mustBeInTheFuture.test.js +13 -13
- package/dist/utils/Validate/additional/mustBeInThePast.js +5 -5
- package/dist/utils/Validate/additional/mustBeInThePast.test.js +13 -13
- package/dist/utils/Validate/additional/mustBeLessThan.js +2 -2
- package/dist/utils/Validate/additional/mustBeLessThan.test.js +18 -18
- package/dist/utils/Validate/additional/mustBeLongerThan.js +1 -1
- package/dist/utils/Validate/additional/mustBeLongerThan.test.js +17 -17
- package/dist/utils/Validate/additional/mustBeNumbersOnly.js +2 -2
- package/dist/utils/Validate/additional/mustBeNumbersOnly.test.js +21 -21
- package/dist/utils/Validate/additional/mustBeOneOf.js +1 -1
- package/dist/utils/Validate/additional/mustBeOneOf.test.js +13 -13
- package/dist/utils/Validate/additional/mustBeShorterThan.js +1 -1
- package/dist/utils/Validate/additional/mustBeShorterThan.test.js +17 -17
- package/dist/utils/Validate/additional/mustBeUniqueInCollection.js +5 -5
- package/dist/utils/Validate/additional/mustBeUniqueInCollection.test.js +40 -36
- package/dist/utils/Validate/additional/mustEnterAtLeastOne.js +5 -3
- package/dist/utils/Validate/additional/mustEnterAtLeastOne.test.js +17 -15
- package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.js +1 -1
- package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.test.js +13 -13
- package/dist/utils/Validate/additional/mustNotContainSql.js +4 -3
- package/dist/utils/Validate/additional/mustNotContainSql.test.js +15 -15
- package/dist/utils/Validate/additional/mustSelectOnlyOne.js +5 -3
- package/dist/utils/Validate/additional/mustSelectOnlyOne.test.js +27 -29
- package/dist/utils/Validate/additional/utils.js +24 -11
- package/dist/utils/Validate/index.js +2 -2
- package/dist/utils/Validate/validateCollection.js +27 -21
- package/dist/utils/Validate/validateCollection.test.js +77 -85
- package/dist/utils/Validate/validateComponent.js +23 -22
- package/dist/utils/Validate/validateComponent.test.js +165 -188
- package/dist/utils/Validate/validateContainer.js +21 -16
- package/dist/utils/Validate/validateContainer.test.js +56 -62
- package/dist/utils/Validate/validateDate.js +23 -17
- package/dist/utils/Validate/validateDate.test.js +32 -31
- package/dist/utils/Validate/validateEmail.js +9 -7
- package/dist/utils/Validate/validateEmail.test.js +26 -26
- package/dist/utils/Validate/validateMultifile.js +7 -5
- package/dist/utils/Validate/validateMultifile.test.js +18 -17
- package/dist/utils/Validate/validatePage.js +24 -20
- package/dist/utils/Validate/validatePage.test.js +215 -227
- package/dist/utils/Validate/validateRegex.js +8 -5
- package/dist/utils/Validate/validateRegex.test.js +17 -17
- package/dist/utils/Validate/validateRequired.js +7 -5
- package/dist/utils/Validate/validateRequired.test.js +19 -19
- package/dist/utils/Validate/validateTextArea.js +7 -5
- package/dist/utils/Validate/validateTextArea.test.js +21 -21
- package/dist/utils/Validate/validateTime.js +19 -12
- package/dist/utils/Validate/validateTime.test.js +27 -27
- package/dist/utils/index.js +10 -8
- package/package.json +1 -1
|
@@ -1,28 +1,28 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _elevateNestedComponents = _interopRequireDefault(require("./elevateNestedComponents"));
|
|
4
|
-
function _interopRequireDefault(
|
|
5
|
-
describe('utils.Component.elevateNestedComponents', ()
|
|
6
|
-
it('should return an empty array if components is undefined', ()
|
|
7
|
-
|
|
4
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
5
|
+
describe('utils.Component.elevateNestedComponents', function () {
|
|
6
|
+
it('should return an empty array if components is undefined', function () {
|
|
7
|
+
var DATA = {
|
|
8
8
|
alpha: 'abc'
|
|
9
9
|
};
|
|
10
10
|
expect((0, _elevateNestedComponents.default)(undefined, DATA)).toEqual([]);
|
|
11
11
|
});
|
|
12
|
-
it('should return an empty array if components is null', ()
|
|
13
|
-
|
|
12
|
+
it('should return an empty array if components is null', function () {
|
|
13
|
+
var DATA = {
|
|
14
14
|
alpha: 'abc'
|
|
15
15
|
};
|
|
16
16
|
expect((0, _elevateNestedComponents.default)(null, DATA)).toEqual([]);
|
|
17
17
|
});
|
|
18
|
-
it('should return an empty array if components is empty', ()
|
|
19
|
-
|
|
18
|
+
it('should return an empty array if components is empty', function () {
|
|
19
|
+
var DATA = {
|
|
20
20
|
alpha: 'abc'
|
|
21
21
|
};
|
|
22
22
|
expect((0, _elevateNestedComponents.default)([], DATA)).toEqual([]);
|
|
23
23
|
});
|
|
24
|
-
it('should return the original components if none have nested components', ()
|
|
25
|
-
|
|
24
|
+
it('should return the original components if none have nested components', function () {
|
|
25
|
+
var COMPONENTS = [{
|
|
26
26
|
id: 'textComp'
|
|
27
27
|
}, {
|
|
28
28
|
id: 'radiosComp',
|
|
@@ -36,13 +36,13 @@ describe('utils.Component.elevateNestedComponents', () => {
|
|
|
36
36
|
}]
|
|
37
37
|
}
|
|
38
38
|
}];
|
|
39
|
-
|
|
39
|
+
var DATA = {
|
|
40
40
|
alpha: 'abc'
|
|
41
41
|
};
|
|
42
42
|
expect((0, _elevateNestedComponents.default)(COMPONENTS, DATA)).toEqual(COMPONENTS);
|
|
43
43
|
});
|
|
44
|
-
it('should return the original components if data is null', ()
|
|
45
|
-
|
|
44
|
+
it('should return the original components if data is null', function () {
|
|
45
|
+
var COMPONENTS = [{
|
|
46
46
|
id: 'textComp'
|
|
47
47
|
}, {
|
|
48
48
|
id: 'radiosComp',
|
|
@@ -58,8 +58,8 @@ describe('utils.Component.elevateNestedComponents', () => {
|
|
|
58
58
|
}];
|
|
59
59
|
expect((0, _elevateNestedComponents.default)(COMPONENTS, null)).toEqual(COMPONENTS);
|
|
60
60
|
});
|
|
61
|
-
it('should return the original array with elevated nested components when they are visible', ()
|
|
62
|
-
|
|
61
|
+
it('should return the original array with elevated nested components when they are visible', function () {
|
|
62
|
+
var COMPONENTS = [{
|
|
63
63
|
id: 'textComp'
|
|
64
64
|
}, {
|
|
65
65
|
id: 'radiosComp',
|
|
@@ -78,7 +78,7 @@ describe('utils.Component.elevateNestedComponents', () => {
|
|
|
78
78
|
}]
|
|
79
79
|
}
|
|
80
80
|
}];
|
|
81
|
-
|
|
81
|
+
var DATA = {
|
|
82
82
|
radiosComp: 'yes'
|
|
83
83
|
};
|
|
84
84
|
expect((0, _elevateNestedComponents.default)(COMPONENTS, DATA)).toEqual([].concat(COMPONENTS, [{
|
|
@@ -87,8 +87,8 @@ describe('utils.Component.elevateNestedComponents', () => {
|
|
|
87
87
|
id: 'nestedTwo'
|
|
88
88
|
}]));
|
|
89
89
|
});
|
|
90
|
-
it('should return the original array with elevated nested components when a component has a full_path', ()
|
|
91
|
-
|
|
90
|
+
it('should return the original array with elevated nested components when a component has a full_path', function () {
|
|
91
|
+
var COMPONENTS = [{
|
|
92
92
|
id: 'textComp'
|
|
93
93
|
}, {
|
|
94
94
|
id: 'radiosComp',
|
|
@@ -108,7 +108,7 @@ describe('utils.Component.elevateNestedComponents', () => {
|
|
|
108
108
|
},
|
|
109
109
|
full_path: 'component.radiosComp'
|
|
110
110
|
}];
|
|
111
|
-
|
|
111
|
+
var DATA = {
|
|
112
112
|
component: {
|
|
113
113
|
radiosComp: 'yes'
|
|
114
114
|
}
|
|
@@ -119,8 +119,8 @@ describe('utils.Component.elevateNestedComponents', () => {
|
|
|
119
119
|
id: 'nestedTwo'
|
|
120
120
|
}]));
|
|
121
121
|
});
|
|
122
|
-
it('should not elevate nested components under a component which is hidden with a show_when', ()
|
|
123
|
-
|
|
122
|
+
it('should not elevate nested components under a component which is hidden with a show_when', function () {
|
|
123
|
+
var COMPONENTS = [{
|
|
124
124
|
id: 'textComp'
|
|
125
125
|
}, {
|
|
126
126
|
id: 'radiosComp',
|
|
@@ -144,14 +144,14 @@ describe('utils.Component.elevateNestedComponents', () => {
|
|
|
144
144
|
}]
|
|
145
145
|
}
|
|
146
146
|
}];
|
|
147
|
-
|
|
147
|
+
var DATA = {
|
|
148
148
|
radiosComp: 'yes',
|
|
149
149
|
testField: 'red'
|
|
150
150
|
};
|
|
151
151
|
expect((0, _elevateNestedComponents.default)(COMPONENTS, DATA)).toEqual([].concat(COMPONENTS));
|
|
152
152
|
});
|
|
153
|
-
it('should elevate nested components under a component which is shown with a show_When', ()
|
|
154
|
-
|
|
153
|
+
it('should elevate nested components under a component which is shown with a show_When', function () {
|
|
154
|
+
var COMPONENTS = [{
|
|
155
155
|
id: 'textComp'
|
|
156
156
|
}, {
|
|
157
157
|
id: 'radiosComp',
|
|
@@ -175,7 +175,7 @@ describe('utils.Component.elevateNestedComponents', () => {
|
|
|
175
175
|
}]
|
|
176
176
|
}
|
|
177
177
|
}];
|
|
178
|
-
|
|
178
|
+
var DATA = {
|
|
179
179
|
radiosComp: 'yes',
|
|
180
180
|
testField: 'red'
|
|
181
181
|
};
|
|
@@ -185,8 +185,8 @@ describe('utils.Component.elevateNestedComponents', () => {
|
|
|
185
185
|
id: 'nestedTwo'
|
|
186
186
|
}]));
|
|
187
187
|
});
|
|
188
|
-
it('should elevate nested components under an option which is shown with a show_When', ()
|
|
189
|
-
|
|
188
|
+
it('should elevate nested components under an option which is shown with a show_When', function () {
|
|
189
|
+
var COMPONENTS = [{
|
|
190
190
|
id: 'textComp'
|
|
191
191
|
}, {
|
|
192
192
|
id: 'radiosComp',
|
|
@@ -215,7 +215,7 @@ describe('utils.Component.elevateNestedComponents', () => {
|
|
|
215
215
|
}]
|
|
216
216
|
}
|
|
217
217
|
}];
|
|
218
|
-
|
|
218
|
+
var DATA = {
|
|
219
219
|
radiosComp: 'yes',
|
|
220
220
|
testField: 'red',
|
|
221
221
|
testFieldTwo: 'purple'
|
|
@@ -226,8 +226,8 @@ describe('utils.Component.elevateNestedComponents', () => {
|
|
|
226
226
|
id: 'nestedTwo'
|
|
227
227
|
}]));
|
|
228
228
|
});
|
|
229
|
-
it('should not elevate nested components under an option which is hidden with a show_When', ()
|
|
230
|
-
|
|
229
|
+
it('should not elevate nested components under an option which is hidden with a show_When', function () {
|
|
230
|
+
var COMPONENTS = [{
|
|
231
231
|
id: 'textComp'
|
|
232
232
|
}, {
|
|
233
233
|
id: 'radiosComp',
|
|
@@ -256,15 +256,15 @@ describe('utils.Component.elevateNestedComponents', () => {
|
|
|
256
256
|
}]
|
|
257
257
|
}
|
|
258
258
|
}];
|
|
259
|
-
|
|
259
|
+
var DATA = {
|
|
260
260
|
radiosComp: 'yes',
|
|
261
261
|
testField: 'red',
|
|
262
262
|
testFieldTwo: 'orange'
|
|
263
263
|
};
|
|
264
264
|
expect((0, _elevateNestedComponents.default)(COMPONENTS, DATA)).toEqual([].concat(COMPONENTS));
|
|
265
265
|
});
|
|
266
|
-
it('should return the original array with elevated nested components that are defined using refdata_match when they are visible', ()
|
|
267
|
-
|
|
266
|
+
it('should return the original array with elevated nested components that are defined using refdata_match when they are visible', function () {
|
|
267
|
+
var COMPONENTS = [{
|
|
268
268
|
id: 'textComp'
|
|
269
269
|
}, {
|
|
270
270
|
id: 'checkboxComp',
|
|
@@ -289,7 +289,7 @@ describe('utils.Component.elevateNestedComponents', () => {
|
|
|
289
289
|
}]
|
|
290
290
|
}
|
|
291
291
|
}];
|
|
292
|
-
|
|
292
|
+
var DATA = {
|
|
293
293
|
checkboxComp: [{
|
|
294
294
|
value: 'yes',
|
|
295
295
|
id: 99
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
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); }
|
|
3
4
|
Object.defineProperty(exports, "__esModule", {
|
|
4
5
|
value: true
|
|
5
6
|
});
|
|
@@ -12,11 +13,16 @@ var _cleanAttributes = _interopRequireDefault(require("./cleanAttributes"));
|
|
|
12
13
|
var _isEditable = _interopRequireDefault(require("./isEditable"));
|
|
13
14
|
var _FormComponent = _interopRequireDefault(require("../../components/FormComponent"));
|
|
14
15
|
var _wrapInFormGroup = _interopRequireDefault(require("./wrapInFormGroup"));
|
|
15
|
-
function _interopRequireDefault(
|
|
16
|
-
function
|
|
16
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
|
+
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; }
|
|
18
|
+
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; }
|
|
19
|
+
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; }
|
|
20
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
21
|
+
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); }
|
|
22
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } /* eslint-disable no-use-before-define */ // Global imports
|
|
17
23
|
// Local imports
|
|
18
|
-
|
|
19
|
-
|
|
24
|
+
var LIST_CLASS = 'govuk-list';
|
|
25
|
+
var BODY_CLASS = 'govuk-body';
|
|
20
26
|
|
|
21
27
|
/**
|
|
22
28
|
* Separate function for each component type for the sake of
|
|
@@ -25,155 +31,155 @@ const BODY_CLASS = 'govuk-body';
|
|
|
25
31
|
* makes it much harder to follow what's going on.
|
|
26
32
|
*/
|
|
27
33
|
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
34
|
+
var getAlert = function getAlert(config) {
|
|
35
|
+
var attrs = (0, _cleanAttributes.default)(config);
|
|
36
|
+
var heading = _copReactComponents.Utils.interpolateString(config.heading, config.formData);
|
|
37
|
+
var children = _copReactComponents.Utils.interpolateString(config.text, config.formData);
|
|
32
38
|
return /*#__PURE__*/_react.default.createElement(_copReactComponents.Alert, _extends({}, attrs, {
|
|
33
39
|
heading: heading
|
|
34
40
|
}), children);
|
|
35
41
|
};
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
42
|
+
var getAutocomplete = function getAutocomplete(config) {
|
|
43
|
+
var attrs = (0, _cleanAttributes.default)(config);
|
|
44
|
+
var source = _Data.default.getAutocompleteSource(config);
|
|
39
45
|
return /*#__PURE__*/_react.default.createElement(_copReactComponents.Autocomplete, _extends({}, attrs, {
|
|
40
46
|
source: source
|
|
41
47
|
}));
|
|
42
48
|
};
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
_Data.default.getOptions(config, val
|
|
49
|
+
var getCheckboxes = function getCheckboxes(config) {
|
|
50
|
+
var options = [];
|
|
51
|
+
_Data.default.getOptions(config, function (val) {
|
|
46
52
|
options = val;
|
|
47
53
|
});
|
|
48
|
-
options = options.map(paramOption
|
|
54
|
+
options = options.map(function (paramOption) {
|
|
49
55
|
if (!Array.isArray(paramOption.nested)) {
|
|
50
56
|
return paramOption;
|
|
51
57
|
}
|
|
52
|
-
return {
|
|
53
|
-
...paramOption,
|
|
58
|
+
return _objectSpread(_objectSpread({}, paramOption), {}, {
|
|
54
59
|
children: getChildrenJsx(config, paramOption.nested)
|
|
55
|
-
};
|
|
60
|
+
});
|
|
56
61
|
});
|
|
57
|
-
|
|
62
|
+
var attrs = (0, _cleanAttributes.default)(config);
|
|
58
63
|
return /*#__PURE__*/_react.default.createElement(_copReactComponents.Checkboxes, _extends({}, attrs, {
|
|
59
64
|
options: options
|
|
60
65
|
}));
|
|
61
66
|
};
|
|
62
|
-
|
|
63
|
-
|
|
67
|
+
var getCalculation = function getCalculation(config) {
|
|
68
|
+
var value = _Data.default.applyFormula(config);
|
|
64
69
|
if (typeof config.onChange === 'function') {
|
|
65
70
|
if (value !== config.value) {
|
|
66
71
|
config.onChange({
|
|
67
72
|
target: {
|
|
68
73
|
name: config.fieldId,
|
|
69
|
-
value
|
|
74
|
+
value: value
|
|
70
75
|
}
|
|
71
76
|
});
|
|
72
77
|
}
|
|
73
78
|
}
|
|
74
|
-
|
|
79
|
+
var attrs = (0, _cleanAttributes.default)(config, ['formula']);
|
|
75
80
|
return /*#__PURE__*/_react.default.createElement(_copReactComponents.TextInput, _extends({}, attrs, {
|
|
76
81
|
readonly: true
|
|
77
82
|
}));
|
|
78
83
|
};
|
|
79
|
-
|
|
80
|
-
|
|
84
|
+
var getDate = function getDate(config) {
|
|
85
|
+
var attrs = (0, _cleanAttributes.default)(config);
|
|
81
86
|
return /*#__PURE__*/_react.default.createElement(_copReactComponents.DateInput, attrs);
|
|
82
87
|
};
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
88
|
+
var getDetails = function getDetails(config) {
|
|
89
|
+
var attrs = (0, _cleanAttributes.default)(config, ['tagName']);
|
|
90
|
+
var html = getHTML(config);
|
|
86
91
|
return /*#__PURE__*/_react.default.createElement(_copReactComponents.Details, attrs, html);
|
|
87
92
|
};
|
|
88
|
-
|
|
89
|
-
|
|
93
|
+
var getFileUpload = function getFileUpload(config) {
|
|
94
|
+
var attrs = (0, _cleanAttributes.default)(config);
|
|
90
95
|
return /*#__PURE__*/_react.default.createElement(_copReactComponents.FileUpload, attrs);
|
|
91
96
|
};
|
|
92
|
-
|
|
93
|
-
|
|
97
|
+
var getMultiFileUpload = function getMultiFileUpload(config) {
|
|
98
|
+
var attrs = (0, _cleanAttributes.default)(config);
|
|
94
99
|
return /*#__PURE__*/_react.default.createElement(_copReactComponents.MultiFileUpload, attrs);
|
|
95
100
|
};
|
|
96
|
-
|
|
97
|
-
|
|
101
|
+
var getHeading = function getHeading(config) {
|
|
102
|
+
var attrs = (0, _cleanAttributes.default)(config);
|
|
98
103
|
return /*#__PURE__*/_react.default.createElement(_copReactComponents.Heading, attrs, config.content);
|
|
99
104
|
};
|
|
100
|
-
|
|
101
|
-
|
|
105
|
+
var getHTML = function getHTML(config) {
|
|
106
|
+
var attrs = (0, _cleanAttributes.default)(config);
|
|
102
107
|
return /*#__PURE__*/_react.default.createElement(_copReactComponents.Markup, attrs);
|
|
103
108
|
};
|
|
104
|
-
|
|
105
|
-
|
|
109
|
+
var getInsetText = function getInsetText(config) {
|
|
110
|
+
var attrs = (0, _cleanAttributes.default)(config);
|
|
106
111
|
return /*#__PURE__*/_react.default.createElement(_copReactComponents.InsetText, attrs, config.content);
|
|
107
112
|
};
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
113
|
+
var getList = function getList(config) {
|
|
114
|
+
var _attrs$items;
|
|
115
|
+
var attrs = (0, _cleanAttributes.default)(config, ['ordered']);
|
|
116
|
+
var tagName = config.ordered ? 'ol' : 'ul';
|
|
117
|
+
var bullet = config.ordered ? 'number' : 'bullet';
|
|
118
|
+
var classes = _copReactComponents.Utils.classBuilder(LIST_CLASS, bullet);
|
|
119
|
+
var content = (_attrs$items = attrs.items) === null || _attrs$items === void 0 ? void 0 : _attrs$items.map(function (item) {
|
|
120
|
+
return "<li>".concat(item, "</li>");
|
|
121
|
+
}).join('');
|
|
122
|
+
return getHTML(_objectSpread(_objectSpread({}, attrs), {}, {
|
|
116
123
|
className: classes(),
|
|
117
|
-
tagName,
|
|
118
|
-
content,
|
|
124
|
+
tagName: tagName,
|
|
125
|
+
content: content,
|
|
119
126
|
type: _models.ComponentTypes.HTML
|
|
120
|
-
});
|
|
127
|
+
}));
|
|
121
128
|
};
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
return getHTML({
|
|
125
|
-
className: BODY_CLASS
|
|
126
|
-
|
|
129
|
+
var getParagraph = function getParagraph(config) {
|
|
130
|
+
var attrs = (0, _cleanAttributes.default)(config);
|
|
131
|
+
return getHTML(_objectSpread(_objectSpread({
|
|
132
|
+
className: BODY_CLASS
|
|
133
|
+
}, attrs), {}, {
|
|
127
134
|
tagName: 'p',
|
|
128
135
|
type: _models.ComponentTypes.HTML
|
|
129
|
-
});
|
|
136
|
+
}));
|
|
130
137
|
};
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
_Data.default.getOptions(config, val
|
|
138
|
+
var getRadios = function getRadios(config) {
|
|
139
|
+
var options = [];
|
|
140
|
+
_Data.default.getOptions(config, function (val) {
|
|
134
141
|
options = val;
|
|
135
142
|
});
|
|
136
|
-
options = options.map(paramOption
|
|
143
|
+
options = options.map(function (paramOption) {
|
|
137
144
|
if (!Array.isArray(paramOption.nested)) {
|
|
138
145
|
return paramOption;
|
|
139
146
|
}
|
|
140
|
-
return {
|
|
141
|
-
...paramOption,
|
|
147
|
+
return _objectSpread(_objectSpread({}, paramOption), {}, {
|
|
142
148
|
children: getChildrenJsx(config, paramOption.nested)
|
|
143
|
-
};
|
|
149
|
+
});
|
|
144
150
|
});
|
|
145
|
-
|
|
151
|
+
var attrs = (0, _cleanAttributes.default)(config);
|
|
146
152
|
return /*#__PURE__*/_react.default.createElement(_copReactComponents.Radios, _extends({}, attrs, {
|
|
147
153
|
options: options
|
|
148
154
|
}));
|
|
149
155
|
};
|
|
150
|
-
|
|
151
|
-
|
|
156
|
+
var getTextArea = function getTextArea(config) {
|
|
157
|
+
var attrs = (0, _cleanAttributes.default)(config);
|
|
152
158
|
return /*#__PURE__*/_react.default.createElement(_copReactComponents.TextArea, attrs);
|
|
153
159
|
};
|
|
154
|
-
|
|
155
|
-
|
|
160
|
+
var getTextInput = function getTextInput(config) {
|
|
161
|
+
var attrs = (0, _cleanAttributes.default)(config);
|
|
156
162
|
return /*#__PURE__*/_react.default.createElement(_copReactComponents.TextInput, attrs);
|
|
157
163
|
};
|
|
158
|
-
|
|
159
|
-
|
|
164
|
+
var getTime = function getTime(config) {
|
|
165
|
+
var attrs = (0, _cleanAttributes.default)(config);
|
|
160
166
|
return /*#__PURE__*/_react.default.createElement(_copReactComponents.TimeInput, attrs);
|
|
161
167
|
};
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
_Data.default.getOptions(config, val
|
|
168
|
+
var getSelect = function getSelect(config) {
|
|
169
|
+
var options = [];
|
|
170
|
+
_Data.default.getOptions(config, function (val) {
|
|
165
171
|
options = val;
|
|
166
172
|
});
|
|
167
|
-
|
|
173
|
+
var attrs = (0, _cleanAttributes.default)(config);
|
|
168
174
|
return /*#__PURE__*/_react.default.createElement(_copReactComponents.Select, _extends({}, attrs, {
|
|
169
175
|
options: options
|
|
170
176
|
}));
|
|
171
177
|
};
|
|
172
|
-
|
|
173
|
-
|
|
178
|
+
var getWarningText = function getWarningText(config) {
|
|
179
|
+
var attrs = (0, _cleanAttributes.default)(config);
|
|
174
180
|
return /*#__PURE__*/_react.default.createElement(_copReactComponents.WarningText, attrs, config.content);
|
|
175
181
|
};
|
|
176
|
-
|
|
182
|
+
var getComponentByType = function getComponentByType(config) {
|
|
177
183
|
switch (config.type) {
|
|
178
184
|
case _models.ComponentTypes.HTML:
|
|
179
185
|
return getHTML(config);
|
|
@@ -227,12 +233,10 @@ const getComponentByType = config => {
|
|
|
227
233
|
* @param {*} parent the parent configuration
|
|
228
234
|
* @param {*} child the child configuration
|
|
229
235
|
*/
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
...paramChild
|
|
233
|
-
};
|
|
236
|
+
var getChildJsx = function getChildJsx(parent, paramChild) {
|
|
237
|
+
var child = _objectSpread({}, paramChild);
|
|
234
238
|
if (parent.full_path) {
|
|
235
|
-
|
|
239
|
+
var pathParts = parent.full_path.split('.');
|
|
236
240
|
pathParts.pop();
|
|
237
241
|
pathParts.push(child.fieldId);
|
|
238
242
|
child.full_path = pathParts.join('.');
|
|
@@ -260,10 +264,13 @@ const getChildJsx = (parent, paramChild) => {
|
|
|
260
264
|
* @param {*} parentConfig parent component which the childrenConfigs will be under
|
|
261
265
|
* @param {*} childrenConfigs array of configurations for the child components
|
|
262
266
|
*/
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
+
var getChildrenJsx = exports.getChildrenJsx = function getChildrenJsx(parentConfig, childrenConfigs) {
|
|
268
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, childrenConfigs.map(function (config) {
|
|
269
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, {
|
|
270
|
+
key: config.id
|
|
271
|
+
}, getChildJsx(parentConfig, config));
|
|
272
|
+
}));
|
|
273
|
+
};
|
|
267
274
|
/**
|
|
268
275
|
* Get a renderable component, based on a configuration object.
|
|
269
276
|
* @param {object} config The configuration object for the component.
|
|
@@ -271,16 +278,16 @@ exports.getChildrenJsx = getChildrenJsx;
|
|
|
271
278
|
* @param {Function} fnOverride An optional override function for component rendering.
|
|
272
279
|
* @returns A renderable component.
|
|
273
280
|
*/
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
281
|
+
var getComponent = function getComponent(config) {
|
|
282
|
+
var wrap = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
283
|
+
var fnOverride = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : undefined;
|
|
277
284
|
if (typeof fnOverride === 'function') {
|
|
278
|
-
|
|
285
|
+
var overrideComponent = fnOverride(config, wrap);
|
|
279
286
|
if (overrideComponent) {
|
|
280
287
|
return overrideComponent;
|
|
281
288
|
}
|
|
282
289
|
}
|
|
283
|
-
|
|
290
|
+
var component = getComponentByType(config);
|
|
284
291
|
if (component && wrap && (0, _isEditable.default)(config)) {
|
|
285
292
|
return (0, _wrapInFormGroup.default)(config, component);
|
|
286
293
|
}
|
|
@@ -3,18 +3,18 @@
|
|
|
3
3
|
var _react = require("@testing-library/react");
|
|
4
4
|
var _models = require("../../../models");
|
|
5
5
|
var _getComponent = _interopRequireDefault(require("../getComponent"));
|
|
6
|
-
function _interopRequireDefault(
|
|
6
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
7
7
|
// Global imports
|
|
8
8
|
|
|
9
9
|
// Local imports
|
|
10
10
|
|
|
11
|
-
describe('utils.Component.get', ()
|
|
12
|
-
it('should return an appropriately rendered autocomplete component', ()
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
11
|
+
describe('utils.Component.get', function () {
|
|
12
|
+
it('should return an appropriately rendered autocomplete component', function () {
|
|
13
|
+
var ID = 'test-id';
|
|
14
|
+
var FIELD_ID = 'field-id';
|
|
15
|
+
var LABEL = 'label';
|
|
16
|
+
var OPTIONS = [];
|
|
17
|
+
var COMPONENT = {
|
|
18
18
|
type: _models.ComponentTypes.AUTOCOMPLETE,
|
|
19
19
|
id: ID,
|
|
20
20
|
fieldId: FIELD_ID,
|
|
@@ -24,27 +24,26 @@ describe('utils.Component.get', () => {
|
|
|
24
24
|
},
|
|
25
25
|
'data-testid': ID
|
|
26
26
|
};
|
|
27
|
-
|
|
28
|
-
container
|
|
29
|
-
|
|
30
|
-
const formGroup = (0, _react.getByTestId)(container, ID);
|
|
27
|
+
var _render = (0, _react.render)((0, _getComponent.default)(COMPONENT)),
|
|
28
|
+
container = _render.container;
|
|
29
|
+
var formGroup = (0, _react.getByTestId)(container, ID);
|
|
31
30
|
expect(formGroup.tagName).toEqual('DIV');
|
|
32
31
|
expect(formGroup.classList).toContain('govuk-form-group');
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
formGroup.childNodes.forEach(node
|
|
32
|
+
var label;
|
|
33
|
+
var autocompleteWrapper;
|
|
34
|
+
var autocomplete;
|
|
35
|
+
var autocompleteInput;
|
|
36
|
+
formGroup.childNodes.forEach(function (node) {
|
|
38
37
|
// Check if it's an element.
|
|
39
38
|
if (node instanceof Element) {
|
|
40
39
|
if (node.tagName === 'LABEL') {
|
|
41
40
|
label = node;
|
|
42
41
|
} else if (node.classList.contains('hods-autocomplete__outer-wrapper')) {
|
|
43
42
|
autocompleteWrapper = node;
|
|
44
|
-
|
|
43
|
+
var autocompleteInner = node.childNodes[0];
|
|
45
44
|
if (autocompleteInner instanceof Element) {
|
|
46
45
|
autocomplete = autocompleteInner;
|
|
47
|
-
autocomplete.childNodes.forEach(grandchild
|
|
46
|
+
autocomplete.childNodes.forEach(function (grandchild) {
|
|
48
47
|
if (grandchild instanceof Element) {
|
|
49
48
|
if (grandchild.tagName === 'INPUT') {
|
|
50
49
|
autocompleteInput = grandchild;
|