@ukhomeoffice/cop-react-form-renderer 5.14.0 → 5.14.4
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 +94 -128
- package/dist/components/CheckYourAnswers/CheckYourAnswers.js +99 -129
- package/dist/components/CheckYourAnswers/CheckYourAnswers.test.js +291 -501
- package/dist/components/CheckYourAnswers/index.js +2 -3
- package/dist/components/CollectionPage/CollectionPage.js +64 -58
- package/dist/components/CollectionPage/CollectionPage.test.js +212 -238
- package/dist/components/CollectionPage/index.js +2 -3
- package/dist/components/FormComponent/Collection.js +77 -113
- package/dist/components/FormComponent/Collection.test.js +688 -787
- package/dist/components/FormComponent/Container.js +44 -43
- package/dist/components/FormComponent/Container.test.js +316 -346
- package/dist/components/FormComponent/FormComponent.js +58 -64
- package/dist/components/FormComponent/FormComponent.test.js +180 -219
- package/dist/components/FormComponent/helpers/addLabel.js +5 -9
- package/dist/components/FormComponent/helpers/getComponentDisabled.js +2 -3
- package/dist/components/FormComponent/helpers/getComponentDisabled.test.js +8 -8
- package/dist/components/FormComponent/helpers/getComponentError.js +4 -7
- package/dist/components/FormComponent/helpers/getComponentError.test.js +15 -15
- package/dist/components/FormComponent/helpers/getComponentFieldSet.js +2 -2
- 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 +2 -3
- package/dist/components/FormPage/FormPage.js +65 -79
- package/dist/components/FormPage/FormPage.test.js +134 -170
- package/dist/components/FormPage/index.js +2 -3
- package/dist/components/FormRenderer/FormRenderer.js +151 -193
- package/dist/components/FormRenderer/FormRenderer.test.js +598 -920
- package/dist/components/FormRenderer/handlers/cyaAction.js +4 -5
- package/dist/components/FormRenderer/handlers/getPageId.js +2 -5
- 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 +3 -4
- package/dist/components/FormRenderer/handlers/navigate.js +5 -6
- package/dist/components/FormRenderer/handlers/submissionError.js +2 -3
- package/dist/components/FormRenderer/helpers/canActionProceed.js +2 -3
- package/dist/components/FormRenderer/helpers/canActionProceed.test.js +10 -10
- package/dist/components/FormRenderer/helpers/canCYASubmit.js +2 -5
- package/dist/components/FormRenderer/helpers/canCYASubmit.test.js +17 -21
- package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.js +19 -27
- package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.test.js +17 -17
- package/dist/components/FormRenderer/helpers/getCYA.js +6 -9
- package/dist/components/FormRenderer/helpers/getCYA.test.js +12 -12
- package/dist/components/FormRenderer/helpers/getFormState.js +7 -10
- package/dist/components/FormRenderer/helpers/getFormState.test.js +11 -11
- package/dist/components/FormRenderer/helpers/getNextPageId.js +19 -34
- package/dist/components/FormRenderer/helpers/getNextPageId.test.js +68 -68
- package/dist/components/FormRenderer/helpers/getPage.js +3 -6
- package/dist/components/FormRenderer/helpers/getPage.test.js +12 -12
- package/dist/components/FormRenderer/helpers/getRelevantPages.js +9 -13
- package/dist/components/FormRenderer/helpers/getRelevantPages.test.js +15 -15
- package/dist/components/FormRenderer/helpers/getSubmissionStatus.js +12 -13
- package/dist/components/FormRenderer/helpers/getSubmissionStatus.test.js +98 -92
- package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.js +66 -66
- package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.test.js +72 -79
- package/dist/components/FormRenderer/helpers/index.js +3 -4
- package/dist/components/FormRenderer/index.js +2 -3
- package/dist/components/FormRenderer/onCYAAction.js +52 -62
- package/dist/components/FormRenderer/onCYAAction.test.js +146 -138
- package/dist/components/FormRenderer/onPageAction.js +48 -47
- package/dist/components/FormRenderer/onPageAction.test.js +219 -205
- package/dist/components/FormRenderer/onTaskAction.js +12 -17
- package/dist/components/FormRenderer/onTaskAction.test.js +94 -89
- package/dist/components/PageActions/ActionButton.js +15 -19
- package/dist/components/PageActions/ActionButton.test.js +58 -79
- package/dist/components/PageActions/PageActions.js +12 -13
- package/dist/components/PageActions/PageActions.test.js +88 -116
- package/dist/components/PageActions/index.js +2 -3
- package/dist/components/SummaryList/GroupAction.js +15 -23
- package/dist/components/SummaryList/GroupAction.test.js +41 -37
- package/dist/components/SummaryList/RowAction.js +14 -19
- package/dist/components/SummaryList/RowAction.test.js +41 -37
- package/dist/components/SummaryList/SummaryList.js +25 -30
- package/dist/components/SummaryList/SummaryList.test.js +160 -182
- package/dist/components/SummaryList/SummaryListHeadingRow.js +9 -8
- package/dist/components/SummaryList/SummaryListRow.js +9 -8
- package/dist/components/SummaryList/SummaryListTitleRow.js +8 -7
- package/dist/components/SummaryList/helpers/getGroupActionAttributes.js +5 -8
- package/dist/components/SummaryList/helpers/getGroupActionAttributes.test.js +24 -24
- package/dist/components/SummaryList/helpers/getRowActionAttributes.js +5 -8
- 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 +2 -3
- package/dist/components/TaskList/Task.js +22 -33
- package/dist/components/TaskList/Task.test.js +84 -77
- package/dist/components/TaskList/TaskList.js +46 -75
- package/dist/components/TaskList/TaskList.test.js +118 -113
- package/dist/components/TaskList/TaskState.js +9 -9
- package/dist/components/TaskList/TaskState.test.js +56 -49
- package/dist/components/TaskList/index.js +2 -3
- package/dist/components/index.js +8 -8
- package/dist/context/HooksContext/HooksContext.js +59 -85
- package/dist/context/HooksContext/HooksContext.test.js +28 -36
- package/dist/context/HooksContext/index.js +4 -6
- package/dist/context/ValidationContext/ValidationContext.js +35 -76
- package/dist/context/ValidationContext/ValidationContext.test.js +50 -61
- package/dist/context/ValidationContext/index.js +4 -6
- package/dist/context/index.js +3 -3
- package/dist/hooks/index.js +10 -11
- package/dist/hooks/useAxios.js +17 -43
- package/dist/hooks/useGetRequest.js +65 -106
- package/dist/hooks/useHooks.js +2 -5
- package/dist/hooks/useRefData.js +30 -45
- package/dist/hooks/useValidation.js +2 -5
- package/dist/index.js +15 -17
- package/dist/models/CollectionLabels.js +2 -3
- package/dist/models/ComponentTypes.js +25 -26
- package/dist/models/EventTypes.js +5 -6
- package/dist/models/FormPages.js +5 -6
- package/dist/models/FormTypes.js +9 -10
- package/dist/models/HubFormats.js +4 -5
- package/dist/models/PageAction.js +45 -42
- package/dist/models/TaskStates.js +30 -31
- package/dist/models/index.js +11 -12
- package/dist/setupTests.js +20 -24
- package/dist/utils/CheckYourAnswers/getCYAAction.js +6 -7
- package/dist/utils/CheckYourAnswers/getCYAAction.test.js +53 -55
- package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.js +18 -20
- package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.test.js +21 -23
- package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.js +17 -21
- package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.test.js +18 -20
- package/dist/utils/CheckYourAnswers/getCYARow.js +8 -10
- package/dist/utils/CheckYourAnswers/getCYARow.test.js +72 -72
- package/dist/utils/CheckYourAnswers/getCYARowForGroup.js +20 -27
- package/dist/utils/CheckYourAnswers/getCYARowForGroup.test.js +16 -17
- package/dist/utils/CheckYourAnswers/getCYARowsForCollection.js +41 -47
- package/dist/utils/CheckYourAnswers/getCYARowsForCollection.test.js +72 -75
- package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.js +71 -78
- package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.test.js +133 -114
- package/dist/utils/CheckYourAnswers/getCYARowsForContainer.js +27 -23
- package/dist/utils/CheckYourAnswers/getCYARowsForContainer.test.js +112 -106
- package/dist/utils/CheckYourAnswers/getCYARowsForPage.js +16 -23
- package/dist/utils/CheckYourAnswers/getCYARowsForPage.test.js +77 -83
- package/dist/utils/CheckYourAnswers/index.js +3 -4
- package/dist/utils/CheckYourAnswers/showComponentCYA.js +7 -9
- package/dist/utils/CheckYourAnswers/showComponentCYA.test.js +25 -25
- package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.js +9 -16
- package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.test.js +19 -20
- package/dist/utils/CollectionPage/getCollectionPageActiveIndex.js +4 -8
- package/dist/utils/CollectionPage/getCollectionPageActiveIndex.test.js +15 -15
- package/dist/utils/CollectionPage/index.js +3 -4
- package/dist/utils/CollectionPage/mergeCollectionPages.js +26 -29
- package/dist/utils/CollectionPage/mergeCollectionPages.test.js +15 -15
- package/dist/utils/Component/addShowWhen.js +5 -10
- package/dist/utils/Component/addShowWhen.test.js +38 -38
- package/dist/utils/Component/applyToComponentTree.js +20 -22
- package/dist/utils/Component/applyToComponentTree.test.js +28 -33
- package/dist/utils/Component/cleanAttributes.js +11 -16
- package/dist/utils/Component/cleanAttributes.test.js +17 -18
- package/dist/utils/Component/elevateNestedComponents.js +7 -9
- package/dist/utils/Component/elevateNestedComponents.test.js +19 -19
- package/dist/utils/Component/getComponent.js +91 -99
- package/dist/utils/Component/getComponentTests/getComponent.autocomplete.test.js +19 -18
- package/dist/utils/Component/getComponentTests/getComponent.calculation.test.js +51 -63
- package/dist/utils/Component/getComponentTests/getComponent.checkboxes.test.js +41 -49
- package/dist/utils/Component/getComponentTests/getComponent.date.test.js +33 -37
- package/dist/utils/Component/getComponentTests/getComponent.details.test.js +21 -19
- package/dist/utils/Component/getComponentTests/getComponent.email.test.js +19 -23
- package/dist/utils/Component/getComponentTests/getComponent.file.test.js +23 -27
- package/dist/utils/Component/getComponentTests/getComponent.heading.test.js +12 -11
- package/dist/utils/Component/getComponentTests/getComponent.html.test.js +18 -16
- package/dist/utils/Component/getComponentTests/getComponent.insetText.test.js +10 -9
- package/dist/utils/Component/getComponentTests/getComponent.list.test.js +18 -16
- package/dist/utils/Component/getComponentTests/getComponent.multifile.test.js +24 -27
- package/dist/utils/Component/getComponentTests/getComponent.nested.test.js +156 -175
- package/dist/utils/Component/getComponentTests/getComponent.paragraph.test.js +18 -16
- package/dist/utils/Component/getComponentTests/getComponent.phoneNumber.test.js +19 -23
- package/dist/utils/Component/getComponentTests/getComponent.radios.test.js +59 -73
- package/dist/utils/Component/getComponentTests/getComponent.select.test.js +19 -23
- package/dist/utils/Component/getComponentTests/getComponent.text.test.js +19 -23
- package/dist/utils/Component/getComponentTests/getComponent.textArea.test.js +35 -41
- package/dist/utils/Component/getComponentTests/getComponent.time.test.js +24 -32
- package/dist/utils/Component/getComponentTests/getComponent.unknown.test.js +3 -3
- package/dist/utils/Component/getComponentTests/getComponent.warningText.test.js +10 -9
- package/dist/utils/Component/getDefaultValue.js +7 -9
- package/dist/utils/Component/getDefaultValue.test.js +14 -14
- package/dist/utils/Component/index.js +3 -4
- package/dist/utils/Component/isEditable.js +3 -7
- package/dist/utils/Component/isEditable.test.js +14 -15
- package/dist/utils/Component/optionIsSelected.js +2 -3
- package/dist/utils/Component/optionIsSelected.test.js +10 -10
- package/dist/utils/Component/setupContainerComponentsPath.js +30 -33
- package/dist/utils/Component/setupContainerComponentsPath.test.js +16 -16
- package/dist/utils/Component/showComponent.js +4 -6
- package/dist/utils/Component/showComponent.test.js +29 -29
- package/dist/utils/Component/wrapInFormGroup.js +6 -6
- package/dist/utils/Condition/index.js +3 -4
- package/dist/utils/Condition/meetsAllConditions.js +9 -10
- package/dist/utils/Condition/meetsAllConditions.test.js +18 -18
- package/dist/utils/Condition/meetsCondition.js +19 -27
- package/dist/utils/Condition/meetsCondition.test.js +377 -377
- package/dist/utils/Condition/meetsOneCondition.js +7 -8
- package/dist/utils/Condition/meetsOneCondition.test.js +17 -17
- package/dist/utils/Condition/setupConditions.js +15 -21
- package/dist/utils/Condition/setupConditions.test.js +8 -8
- package/dist/utils/Container/getEditableComponents.js +5 -8
- package/dist/utils/Container/getEditableComponents.test.js +44 -46
- package/dist/utils/Container/index.js +3 -4
- package/dist/utils/Container/setupNesting.js +17 -24
- package/dist/utils/Container/setupNesting.test.js +28 -31
- package/dist/utils/Container/showContainer.js +5 -10
- package/dist/utils/Container/showContainer.test.js +31 -31
- package/dist/utils/Data/applyFormula.js +41 -52
- package/dist/utils/Data/applyFormula.test.js +26 -26
- package/dist/utils/Data/getAutocompleteSource.js +11 -14
- package/dist/utils/Data/getAutocompleteSource.test.js +59 -59
- package/dist/utils/Data/getDataPath.js +21 -32
- package/dist/utils/Data/getDataPath.test.js +20 -20
- package/dist/utils/Data/getOptions.js +22 -28
- package/dist/utils/Data/getOptions.test.js +21 -21
- package/dist/utils/Data/getSourceData.js +7 -21
- package/dist/utils/Data/getSourceData.test.js +85 -81
- package/dist/utils/Data/index.js +3 -4
- package/dist/utils/Data/refDataToOptions.js +12 -17
- package/dist/utils/Data/refDataToOptions.test.js +20 -20
- package/dist/utils/Data/setDataItem.js +8 -10
- package/dist/utils/Data/setDataItem.test.js +38 -38
- package/dist/utils/Data/setupFormData.js +32 -48
- package/dist/utils/Data/setupFormData.test.js +99 -98
- package/dist/utils/Data/setupRefDataUrlForComponent.js +22 -30
- package/dist/utils/Data/setupRefDataUrlForComponent.test.js +28 -28
- package/dist/utils/FormPage/applyConditionalProperties.js +7 -12
- package/dist/utils/FormPage/applyConditionalProperties.test.js +16 -19
- package/dist/utils/FormPage/getFormPage.js +17 -19
- package/dist/utils/FormPage/getFormPage.test.js +49 -48
- package/dist/utils/FormPage/getFormPages.js +9 -15
- package/dist/utils/FormPage/getFormPages.test.js +22 -25
- package/dist/utils/FormPage/getPageActions.js +11 -19
- package/dist/utils/FormPage/getPageActions.test.js +33 -33
- package/dist/utils/FormPage/getParagraphFromText.js +6 -9
- package/dist/utils/FormPage/getParagraphFromText.test.js +7 -7
- package/dist/utils/FormPage/index.js +3 -4
- package/dist/utils/FormPage/showFormPage.js +5 -10
- package/dist/utils/FormPage/showFormPage.test.js +33 -33
- package/dist/utils/FormPage/showFormPageCYA.js +4 -5
- package/dist/utils/FormPage/showFormPageCYA.test.js +9 -9
- package/dist/utils/FormPage/useComponent.js +21 -29
- package/dist/utils/FormPage/useComponent.test.js +71 -73
- package/dist/utils/Format/formatData.js +2 -3
- package/dist/utils/Format/formatData.test.js +19 -19
- package/dist/utils/Format/formatDataForComponent.js +6 -9
- package/dist/utils/Format/formatDataForComponent.test.js +50 -78
- package/dist/utils/Format/formatDataForForm.js +7 -10
- package/dist/utils/Format/formatDataForForm.test.js +14 -17
- package/dist/utils/Format/formatDataForPage.js +4 -7
- package/dist/utils/Format/formatDataForPage.test.js +20 -25
- package/dist/utils/Format/index.js +3 -4
- package/dist/utils/Hub/getFormHub.js +3 -4
- package/dist/utils/Hub/getFormHub.test.js +29 -32
- package/dist/utils/Hub/index.js +3 -4
- package/dist/utils/Meta/constants.js +2 -4
- package/dist/utils/Meta/documents/getDocuments.js +2 -6
- package/dist/utils/Meta/documents/getDocuments.test.js +25 -17
- package/dist/utils/Meta/documents/index.js +3 -4
- package/dist/utils/Meta/documents/setDocumentsForField.js +16 -19
- package/dist/utils/Meta/documents/setDocumentsForField.test.js +69 -35
- package/dist/utils/Meta/index.js +3 -4
- package/dist/utils/Operate/checkValueIsTruthy.js +5 -6
- package/dist/utils/Operate/checkValueIsTruthy.test.js +17 -17
- package/dist/utils/Operate/getFirstOf.js +9 -10
- package/dist/utils/Operate/getFirstOf.test.js +33 -33
- package/dist/utils/Operate/getIndexOfMatchingValueIn.js +13 -14
- package/dist/utils/Operate/getIndexOfMatchingValueIn.test.js +47 -53
- package/dist/utils/Operate/index.js +3 -4
- package/dist/utils/Operate/persistValueInFormData.js +7 -8
- package/dist/utils/Operate/persistValueInFormData.test.js +23 -21
- package/dist/utils/Operate/runPageOperations.js +10 -11
- package/dist/utils/Operate/runPageOperations.test.js +36 -37
- package/dist/utils/Operate/setValueInFormData.js +6 -7
- package/dist/utils/Operate/setValueInFormData.test.js +17 -17
- package/dist/utils/Operate/shouldRun.js +9 -10
- package/dist/utils/Operate/shouldRun.test.js +22 -28
- package/dist/utils/Validate/additional/conditionallyRequired.js +5 -7
- package/dist/utils/Validate/additional/conditionallyRequired.test.js +19 -19
- package/dist/utils/Validate/additional/index.js +8 -9
- package/dist/utils/Validate/additional/index.test.js +13 -13
- package/dist/utils/Validate/additional/mustBeAfter.js +4 -5
- package/dist/utils/Validate/additional/mustBeAfter.test.js +41 -41
- package/dist/utils/Validate/additional/mustBeBefore.js +4 -5
- package/dist/utils/Validate/additional/mustBeBefore.test.js +29 -29
- package/dist/utils/Validate/additional/mustBeEarlierDateTime.js +8 -14
- package/dist/utils/Validate/additional/mustBeEarlierDateTime.test.js +34 -38
- package/dist/utils/Validate/additional/mustBeGreaterThan.js +3 -4
- package/dist/utils/Validate/additional/mustBeGreaterThan.test.js +19 -19
- package/dist/utils/Validate/additional/mustBeInTheFuture.js +5 -6
- package/dist/utils/Validate/additional/mustBeInTheFuture.test.js +13 -13
- package/dist/utils/Validate/additional/mustBeInThePast.js +6 -7
- package/dist/utils/Validate/additional/mustBeInThePast.test.js +13 -13
- package/dist/utils/Validate/additional/mustBeLessThan.js +3 -4
- package/dist/utils/Validate/additional/mustBeLessThan.test.js +18 -18
- package/dist/utils/Validate/additional/mustBeLongerThan.js +2 -3
- package/dist/utils/Validate/additional/mustBeLongerThan.test.js +17 -17
- package/dist/utils/Validate/additional/mustBeNumbersOnly.js +3 -4
- package/dist/utils/Validate/additional/mustBeNumbersOnly.test.js +21 -21
- package/dist/utils/Validate/additional/mustBeShorterThan.js +2 -3
- package/dist/utils/Validate/additional/mustBeShorterThan.test.js +17 -17
- package/dist/utils/Validate/additional/mustEnterAtLeastOne.js +4 -7
- package/dist/utils/Validate/additional/mustEnterAtLeastOne.test.js +15 -17
- package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.js +2 -3
- package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.test.js +13 -13
- package/dist/utils/Validate/additional/mustSelectOnlyOne.js +4 -7
- package/dist/utils/Validate/additional/mustSelectOnlyOne.test.js +29 -27
- package/dist/utils/Validate/additional/utils.js +9 -25
- package/dist/utils/Validate/index.js +3 -4
- package/dist/utils/Validate/validateCollection.js +22 -29
- package/dist/utils/Validate/validateCollection.test.js +85 -77
- package/dist/utils/Validate/validateComponent.js +19 -19
- package/dist/utils/Validate/validateComponent.test.js +169 -147
- package/dist/utils/Validate/validateContainer.js +16 -22
- package/dist/utils/Validate/validateContainer.test.js +52 -48
- package/dist/utils/Validate/validateDate.js +14 -21
- package/dist/utils/Validate/validateDate.test.js +28 -29
- package/dist/utils/Validate/validateEmail.js +8 -11
- package/dist/utils/Validate/validateEmail.test.js +26 -26
- package/dist/utils/Validate/validateMultifile.js +6 -10
- package/dist/utils/Validate/validateMultifile.test.js +17 -18
- package/dist/utils/Validate/validatePage.js +20 -22
- package/dist/utils/Validate/validatePage.test.js +146 -143
- package/dist/utils/Validate/validateRegex.js +6 -10
- package/dist/utils/Validate/validateRegex.test.js +17 -17
- package/dist/utils/Validate/validateRequired.js +6 -9
- package/dist/utils/Validate/validateRequired.test.js +19 -19
- package/dist/utils/Validate/validateTextArea.js +6 -9
- package/dist/utils/Validate/validateTextArea.test.js +21 -21
- package/dist/utils/Validate/validateTime.js +8 -16
- package/dist/utils/Validate/validateTime.test.js +15 -15
- package/dist/utils/index.js +10 -12
- package/package.json +9 -6
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var _getPageId = _interopRequireDefault(require("./getPageId"));
|
|
8
|
-
function _interopRequireDefault(
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
9
|
/**
|
|
10
10
|
* Gets the pageId from the invoked CYA action and calls onChange if it is
|
|
11
11
|
* different to the currentPageId.
|
|
@@ -13,11 +13,10 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
13
13
|
* @param {string} currentPageId The current pageId.
|
|
14
14
|
* @param {Function} onChange The handler to call if the pageId is different to the currentPageId.
|
|
15
15
|
*/
|
|
16
|
-
|
|
17
|
-
|
|
16
|
+
const cyaAction = (page, currentPageId, onChange) => {
|
|
17
|
+
const pageId = (0, _getPageId.default)(page.action, page.pageId);
|
|
18
18
|
if (pageId !== currentPageId) {
|
|
19
19
|
onChange(pageId);
|
|
20
20
|
}
|
|
21
21
|
};
|
|
22
|
-
var _default = cyaAction;
|
|
23
|
-
exports.default = _default;
|
|
22
|
+
var _default = exports.default = cyaAction;
|
|
@@ -10,8 +10,5 @@ exports.default = void 0;
|
|
|
10
10
|
* @param {string} pageId The id of the page on which the action was invoked.
|
|
11
11
|
* @returns A page id.
|
|
12
12
|
*/
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
};
|
|
16
|
-
var _default = getPageId;
|
|
17
|
-
exports.default = _default;
|
|
13
|
+
const getPageId = (action, pageId) => action?.page || pageId;
|
|
14
|
+
var _default = exports.default = getPageId;
|
|
@@ -1,29 +1,29 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _getPageId = _interopRequireDefault(require("./getPageId"));
|
|
4
|
-
function _interopRequireDefault(
|
|
4
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
5
5
|
// Local imports
|
|
6
6
|
|
|
7
|
-
describe('components',
|
|
8
|
-
describe('FormRenderer',
|
|
9
|
-
describe('handlers',
|
|
10
|
-
describe('getPageId',
|
|
11
|
-
it('should return the pageId when the action is null',
|
|
12
|
-
|
|
13
|
-
|
|
7
|
+
describe('components', () => {
|
|
8
|
+
describe('FormRenderer', () => {
|
|
9
|
+
describe('handlers', () => {
|
|
10
|
+
describe('getPageId', () => {
|
|
11
|
+
it('should return the pageId when the action is null', () => {
|
|
12
|
+
const PAGE_ID = 'alpha';
|
|
13
|
+
const ACTION = null;
|
|
14
14
|
expect((0, _getPageId.default)(ACTION, PAGE_ID)).toEqual(PAGE_ID);
|
|
15
15
|
});
|
|
16
|
-
it('should return the pageId when the action contains no page',
|
|
17
|
-
|
|
18
|
-
|
|
16
|
+
it('should return the pageId when the action contains no page', () => {
|
|
17
|
+
const PAGE_ID = 'alpha';
|
|
18
|
+
const ACTION = {
|
|
19
19
|
id: 'bravo'
|
|
20
20
|
};
|
|
21
21
|
expect((0, _getPageId.default)(ACTION, PAGE_ID)).toEqual(PAGE_ID);
|
|
22
22
|
});
|
|
23
|
-
it('should return the page when provided',
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
23
|
+
it('should return the page when provided', () => {
|
|
24
|
+
const NAVIGATE_TO = 'delta';
|
|
25
|
+
const PAGE_ID = 'alpha';
|
|
26
|
+
const ACTION = {
|
|
27
27
|
page: NAVIGATE_TO
|
|
28
28
|
};
|
|
29
29
|
expect((0, _getPageId.default)(ACTION, PAGE_ID)).toEqual(NAVIGATE_TO);
|
|
@@ -1,33 +1,33 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _ = _interopRequireDefault(require("."));
|
|
4
|
-
function _interopRequireDefault(
|
|
4
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
5
5
|
// Local imports
|
|
6
6
|
|
|
7
|
-
describe('components',
|
|
8
|
-
describe('FormRenderer',
|
|
9
|
-
describe('handlers',
|
|
10
|
-
describe('cyaAction',
|
|
11
|
-
it('should not call the onChange method when the page is unchanged',
|
|
12
|
-
|
|
13
|
-
|
|
7
|
+
describe('components', () => {
|
|
8
|
+
describe('FormRenderer', () => {
|
|
9
|
+
describe('handlers', () => {
|
|
10
|
+
describe('cyaAction', () => {
|
|
11
|
+
it('should not call the onChange method when the page is unchanged', () => {
|
|
12
|
+
const CURRENT_PAGE_ID = 'alpha';
|
|
13
|
+
const PAGE = {
|
|
14
14
|
pageId: CURRENT_PAGE_ID
|
|
15
15
|
};
|
|
16
|
-
|
|
17
|
-
|
|
16
|
+
const ON_CHANGE_CALLS = [];
|
|
17
|
+
const ON_CHANGE = pageId => {
|
|
18
18
|
ON_CHANGE_CALLS.push(pageId);
|
|
19
19
|
};
|
|
20
20
|
_.default.cyaAction(PAGE, CURRENT_PAGE_ID, ON_CHANGE);
|
|
21
21
|
expect(ON_CHANGE_CALLS.length).toEqual(0);
|
|
22
22
|
});
|
|
23
|
-
it('should call the onChange method when the page has changed',
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
23
|
+
it('should call the onChange method when the page has changed', () => {
|
|
24
|
+
const CURRENT_PAGE_ID = 'alpha';
|
|
25
|
+
const NEW_PAGE_ID = 'bravo';
|
|
26
|
+
const PAGE = {
|
|
27
27
|
pageId: NEW_PAGE_ID
|
|
28
28
|
};
|
|
29
|
-
|
|
30
|
-
|
|
29
|
+
const ON_CHANGE_CALLS = [];
|
|
30
|
+
const ON_CHANGE = pageId => {
|
|
31
31
|
ON_CHANGE_CALLS.push(pageId);
|
|
32
32
|
};
|
|
33
33
|
_.default.cyaAction(PAGE, CURRENT_PAGE_ID, ON_CHANGE);
|
|
@@ -35,27 +35,27 @@ describe('components', function () {
|
|
|
35
35
|
expect(ON_CHANGE_CALLS[0]).toEqual(NEW_PAGE_ID);
|
|
36
36
|
});
|
|
37
37
|
});
|
|
38
|
-
describe('navigate',
|
|
39
|
-
it('should not call the onNavigate method when the page is unchanged',
|
|
40
|
-
|
|
41
|
-
|
|
38
|
+
describe('navigate', () => {
|
|
39
|
+
it('should not call the onNavigate method when the page is unchanged', () => {
|
|
40
|
+
const CURRENT_PAGE_ID = 'alpha';
|
|
41
|
+
const ACTION = {
|
|
42
42
|
page: CURRENT_PAGE_ID
|
|
43
43
|
};
|
|
44
|
-
|
|
45
|
-
|
|
44
|
+
const ON_NAVIGATE_CALLS = [];
|
|
45
|
+
const ON_NAVIGATE = pageId => {
|
|
46
46
|
ON_NAVIGATE_CALLS.push(pageId);
|
|
47
47
|
};
|
|
48
48
|
_.default.navigate(ACTION, CURRENT_PAGE_ID, ON_NAVIGATE);
|
|
49
49
|
expect(ON_NAVIGATE_CALLS.length).toEqual(0);
|
|
50
50
|
});
|
|
51
|
-
it('should call the onNavigate method when the page has changed',
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
51
|
+
it('should call the onNavigate method when the page has changed', () => {
|
|
52
|
+
const CURRENT_PAGE_ID = 'alpha';
|
|
53
|
+
const NEW_PAGE_ID = 'bravo';
|
|
54
|
+
const ACTION = {
|
|
55
55
|
page: NEW_PAGE_ID
|
|
56
56
|
};
|
|
57
|
-
|
|
58
|
-
|
|
57
|
+
const ON_NAVIGATE_CALLS = [];
|
|
58
|
+
const ON_NAVIGATE = pageId => {
|
|
59
59
|
ON_NAVIGATE_CALLS.push(pageId);
|
|
60
60
|
};
|
|
61
61
|
_.default.navigate(ACTION, CURRENT_PAGE_ID, ON_NAVIGATE);
|
|
@@ -63,13 +63,13 @@ describe('components', function () {
|
|
|
63
63
|
expect(ON_NAVIGATE_CALLS[0]).toEqual(NEW_PAGE_ID);
|
|
64
64
|
});
|
|
65
65
|
});
|
|
66
|
-
describe('submissionError',
|
|
67
|
-
it('should call the onError method with the same errors',
|
|
68
|
-
|
|
69
|
-
|
|
66
|
+
describe('submissionError', () => {
|
|
67
|
+
it('should call the onError method with the same errors', () => {
|
|
68
|
+
const ON_ERROR_CALLS = [];
|
|
69
|
+
const ON_ERROR = errors => {
|
|
70
70
|
ON_ERROR_CALLS.push(errors);
|
|
71
71
|
};
|
|
72
|
-
|
|
72
|
+
const ERRORS = ['alpha', 'bravo', 'charlie'];
|
|
73
73
|
_.default.submissionError(ERRORS, ON_ERROR);
|
|
74
74
|
expect(ON_ERROR_CALLS.length).toEqual(1);
|
|
75
75
|
expect(ON_ERROR_CALLS[0]).toEqual(ERRORS);
|
|
@@ -7,11 +7,10 @@ exports.default = void 0;
|
|
|
7
7
|
var _cyaAction = _interopRequireDefault(require("./cyaAction"));
|
|
8
8
|
var _navigate = _interopRequireDefault(require("./navigate"));
|
|
9
9
|
var _submissionError = _interopRequireDefault(require("./submissionError"));
|
|
10
|
-
function _interopRequireDefault(
|
|
11
|
-
|
|
10
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
|
+
const handlers = {
|
|
12
12
|
cyaAction: _cyaAction.default,
|
|
13
13
|
navigate: _navigate.default,
|
|
14
14
|
submissionError: _submissionError.default
|
|
15
15
|
};
|
|
16
|
-
var _default = handlers;
|
|
17
|
-
exports.default = _default;
|
|
16
|
+
var _default = exports.default = handlers;
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var _getPageId = _interopRequireDefault(require("./getPageId"));
|
|
8
|
-
function _interopRequireDefault(
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
9
|
/**
|
|
10
10
|
* Gets the pageId from the invoked page action and calls onNavigate if it is
|
|
11
11
|
* different to the currentPageId.
|
|
@@ -14,12 +14,11 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
14
14
|
* @param {Function} onNavigate The handler to call if the pageId is different to the currentPageId.
|
|
15
15
|
* @param {object|undefined} state State to pass to the handler on change
|
|
16
16
|
*/
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
17
|
+
const navigate = function (action, currentPageId, onNavigate) {
|
|
18
|
+
let state = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : undefined;
|
|
19
|
+
const pageId = (0, _getPageId.default)(action, currentPageId);
|
|
20
20
|
if (pageId !== currentPageId) {
|
|
21
21
|
onNavigate(pageId, state);
|
|
22
22
|
}
|
|
23
23
|
};
|
|
24
|
-
var _default = navigate;
|
|
25
|
-
exports.default = _default;
|
|
24
|
+
var _default = exports.default = navigate;
|
|
@@ -9,10 +9,9 @@ exports.default = void 0;
|
|
|
9
9
|
* @param {Array} errors The errors returned by the backend when submitting.
|
|
10
10
|
* @param {Function} onError The handler to call with the formatted errors.
|
|
11
11
|
*/
|
|
12
|
-
|
|
12
|
+
const submissionError = (errors, onError) => {
|
|
13
13
|
// For now, simply pass them straight through as we don't yet know
|
|
14
14
|
// what the errors will look like.
|
|
15
15
|
onError(errors);
|
|
16
16
|
};
|
|
17
|
-
var _default = submissionError;
|
|
18
|
-
exports.default = _default;
|
|
17
|
+
var _default = exports.default = submissionError;
|
|
@@ -13,11 +13,10 @@ exports.default = void 0;
|
|
|
13
13
|
* @param {Function} pageValidator A function to validate the page.
|
|
14
14
|
* @returns A boolean where `true` means the action can proceed and `false` means it cannot.
|
|
15
15
|
*/
|
|
16
|
-
|
|
16
|
+
const canActionProceed = (action, page, pageValidator) => {
|
|
17
17
|
if (action.validate) {
|
|
18
18
|
return pageValidator(page).length === 0;
|
|
19
19
|
}
|
|
20
20
|
return true;
|
|
21
21
|
};
|
|
22
|
-
var _default = canActionProceed;
|
|
23
|
-
exports.default = _default;
|
|
22
|
+
var _default = exports.default = canActionProceed;
|
|
@@ -2,21 +2,21 @@
|
|
|
2
2
|
|
|
3
3
|
var _Validate = _interopRequireDefault(require("../../../utils/Validate"));
|
|
4
4
|
var _canActionProceed = _interopRequireDefault(require("./canActionProceed"));
|
|
5
|
-
function _interopRequireDefault(
|
|
5
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
6
6
|
// Local imports
|
|
7
7
|
|
|
8
|
-
describe('components.FormRenderer.helpers.canActionProceed',
|
|
9
|
-
it('should return true when the action does not require validation',
|
|
10
|
-
|
|
8
|
+
describe('components.FormRenderer.helpers.canActionProceed', () => {
|
|
9
|
+
it('should return true when the action does not require validation', () => {
|
|
10
|
+
const ACTION = {
|
|
11
11
|
validate: false
|
|
12
12
|
};
|
|
13
13
|
expect((0, _canActionProceed.default)(ACTION, {}, _Validate.default.page)).toBeTruthy();
|
|
14
14
|
});
|
|
15
|
-
it('should return true when the page is valid',
|
|
16
|
-
|
|
15
|
+
it('should return true when the page is valid', () => {
|
|
16
|
+
const ACTION = {
|
|
17
17
|
validate: true
|
|
18
18
|
};
|
|
19
|
-
|
|
19
|
+
const PAGE = {
|
|
20
20
|
components: [{
|
|
21
21
|
id: 'a',
|
|
22
22
|
fieldId: 'a',
|
|
@@ -29,11 +29,11 @@ describe('components.FormRenderer.helpers.canActionProceed', function () {
|
|
|
29
29
|
};
|
|
30
30
|
expect((0, _canActionProceed.default)(ACTION, PAGE, _Validate.default.page)).toBeTruthy();
|
|
31
31
|
});
|
|
32
|
-
it('should return false when the page is invalid',
|
|
33
|
-
|
|
32
|
+
it('should return false when the page is invalid', () => {
|
|
33
|
+
const ACTION = {
|
|
34
34
|
validate: true
|
|
35
35
|
};
|
|
36
|
-
|
|
36
|
+
const PAGE = {
|
|
37
37
|
components: [{
|
|
38
38
|
id: 'a',
|
|
39
39
|
fieldId: 'a',
|
|
@@ -12,8 +12,5 @@ exports.default = void 0;
|
|
|
12
12
|
* @param {Function} pagesValidator A function to validate the page.
|
|
13
13
|
* @returns A boolean where `true` means the CYA can submit and `false` means it cannot.
|
|
14
14
|
*/
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
};
|
|
18
|
-
var _default = canCYASubmit;
|
|
19
|
-
exports.default = _default;
|
|
15
|
+
const canCYASubmit = (pages, pagesValidator) => pagesValidator(pages).length === 0;
|
|
16
|
+
var _default = exports.default = canCYASubmit;
|
|
@@ -2,35 +2,31 @@
|
|
|
2
2
|
|
|
3
3
|
var _Validate = _interopRequireDefault(require("../../../utils/Validate"));
|
|
4
4
|
var _canCYASubmit = _interopRequireDefault(require("./canCYASubmit"));
|
|
5
|
-
function _interopRequireDefault(
|
|
5
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
6
6
|
// Local imports
|
|
7
7
|
|
|
8
|
-
describe('components.FormRenderer.helpers.canCYASubmit',
|
|
9
|
-
|
|
8
|
+
describe('components.FormRenderer.helpers.canCYASubmit', () => {
|
|
9
|
+
const ALPHA = {
|
|
10
10
|
id: 'a',
|
|
11
11
|
fieldId: 'a',
|
|
12
12
|
label: 'Alpha',
|
|
13
13
|
required: true
|
|
14
14
|
};
|
|
15
|
-
|
|
15
|
+
const CHARLIE = {
|
|
16
16
|
id: 'c',
|
|
17
17
|
fieldId: 'c',
|
|
18
18
|
label: 'Charlie',
|
|
19
19
|
required: true
|
|
20
20
|
};
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
});
|
|
25
|
-
};
|
|
26
|
-
it('should return true when all pages are valid', function () {
|
|
27
|
-
var PAGE_1 = {
|
|
21
|
+
const validatePages = pages => pages.flatMap(page => _Validate.default.page(page));
|
|
22
|
+
it('should return true when all pages are valid', () => {
|
|
23
|
+
const PAGE_1 = {
|
|
28
24
|
components: [ALPHA],
|
|
29
25
|
formData: {
|
|
30
26
|
a: 'Bravo'
|
|
31
27
|
}
|
|
32
28
|
};
|
|
33
|
-
|
|
29
|
+
const PAGE_2 = {
|
|
34
30
|
components: [CHARLIE],
|
|
35
31
|
formData: {
|
|
36
32
|
c: 'Delta'
|
|
@@ -38,12 +34,12 @@ describe('components.FormRenderer.helpers.canCYASubmit', function () {
|
|
|
38
34
|
};
|
|
39
35
|
expect((0, _canCYASubmit.default)([PAGE_1, PAGE_2], validatePages)).toBeTruthy();
|
|
40
36
|
});
|
|
41
|
-
it('should return false when the first page is invalid',
|
|
42
|
-
|
|
37
|
+
it('should return false when the first page is invalid', () => {
|
|
38
|
+
const PAGE_1 = {
|
|
43
39
|
components: [ALPHA],
|
|
44
40
|
formData: {}
|
|
45
41
|
};
|
|
46
|
-
|
|
42
|
+
const PAGE_2 = {
|
|
47
43
|
components: [CHARLIE],
|
|
48
44
|
formData: {
|
|
49
45
|
c: 'Delta'
|
|
@@ -51,25 +47,25 @@ describe('components.FormRenderer.helpers.canCYASubmit', function () {
|
|
|
51
47
|
};
|
|
52
48
|
expect((0, _canCYASubmit.default)([PAGE_1, PAGE_2], validatePages)).toBeFalsy();
|
|
53
49
|
});
|
|
54
|
-
it('should return false when the second page is invalid',
|
|
55
|
-
|
|
50
|
+
it('should return false when the second page is invalid', () => {
|
|
51
|
+
const PAGE_1 = {
|
|
56
52
|
components: [ALPHA],
|
|
57
53
|
formData: {
|
|
58
54
|
a: 'Bravo'
|
|
59
55
|
}
|
|
60
56
|
};
|
|
61
|
-
|
|
57
|
+
const PAGE_2 = {
|
|
62
58
|
components: [CHARLIE],
|
|
63
59
|
formData: {}
|
|
64
60
|
};
|
|
65
61
|
expect((0, _canCYASubmit.default)([PAGE_1, PAGE_2], validatePages)).toBeFalsy();
|
|
66
62
|
});
|
|
67
|
-
it('should return false when the both pages are invalid',
|
|
68
|
-
|
|
63
|
+
it('should return false when the both pages are invalid', () => {
|
|
64
|
+
const PAGE_1 = {
|
|
69
65
|
components: [ALPHA],
|
|
70
66
|
formData: {}
|
|
71
67
|
};
|
|
72
|
-
|
|
68
|
+
const PAGE_2 = {
|
|
73
69
|
components: [CHARLIE],
|
|
74
70
|
formData: {}
|
|
75
71
|
};
|
|
@@ -5,20 +5,15 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var _optionIsSelected = _interopRequireDefault(require("../../../utils/Component/optionIsSelected"));
|
|
8
|
-
function _interopRequireDefault(
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
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; }
|
|
13
|
-
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
14
|
-
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); }
|
|
15
|
-
var parentComponents = ['radios', 'checkboxes'];
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
|
+
// Local imports
|
|
10
|
+
|
|
11
|
+
const parentComponents = ['radios', 'checkboxes'];
|
|
16
12
|
function getIdsToDelete(component, selectedValue) {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
component === null || component === void 0 ? void 0 : (_component$data = component.data) === null || _component$data === void 0 ? void 0 : (_component$data$optio = _component$data.options) === null || _component$data$optio === void 0 ? void 0 : _component$data$optio.forEach(function (option) {
|
|
13
|
+
const idsToDelete = [];
|
|
14
|
+
component?.data?.options?.forEach(option => {
|
|
20
15
|
if (!(0, _optionIsSelected.default)(selectedValue, option) && option.nested) {
|
|
21
|
-
option.nested.forEach(
|
|
16
|
+
option.nested.forEach(nested => {
|
|
22
17
|
idsToDelete.push(nested.id);
|
|
23
18
|
});
|
|
24
19
|
}
|
|
@@ -26,29 +21,26 @@ function getIdsToDelete(component, selectedValue) {
|
|
|
26
21
|
return idsToDelete;
|
|
27
22
|
}
|
|
28
23
|
;
|
|
29
|
-
|
|
30
|
-
page.components.forEach(
|
|
24
|
+
const cleanHiddenNestedData = (patch, page) => {
|
|
25
|
+
page.components.forEach(component => {
|
|
31
26
|
if (!parentComponents.includes(component.type)) {
|
|
32
27
|
return;
|
|
33
28
|
}
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
idsToDelete.forEach(
|
|
29
|
+
const _patch = patch;
|
|
30
|
+
const idsToDelete = getIdsToDelete(component, _patch[component.id]);
|
|
31
|
+
idsToDelete.forEach(id => {
|
|
37
32
|
delete _patch[id];
|
|
38
33
|
});
|
|
39
34
|
});
|
|
40
35
|
if (page.collection && patch[page.collection.name]) {
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
})) : entry;
|
|
48
|
-
});
|
|
36
|
+
const activeId = patch[`${page.collection.name}ActiveId`] || page.formData?.[`${page.collection.name}ActiveId`];
|
|
37
|
+
const _patch = patch;
|
|
38
|
+
_patch[page.collection.name] = _patch[page.collection.name].map(entry => entry.id === activeId ? cleanHiddenNestedData(entry, {
|
|
39
|
+
...page,
|
|
40
|
+
collection: undefined
|
|
41
|
+
}) : entry);
|
|
49
42
|
}
|
|
50
43
|
;
|
|
51
44
|
return patch;
|
|
52
45
|
};
|
|
53
|
-
var _default = cleanHiddenNestedData;
|
|
54
|
-
exports.default = _default;
|
|
46
|
+
var _default = exports.default = cleanHiddenNestedData;
|
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _cleanHiddenNestedData = _interopRequireDefault(require("./cleanHiddenNestedData"));
|
|
4
|
-
function _interopRequireDefault(
|
|
4
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
5
5
|
// Local imports
|
|
6
6
|
|
|
7
|
-
describe('components',
|
|
8
|
-
describe('FormRenderer',
|
|
9
|
-
describe('helpers',
|
|
10
|
-
describe('cleanHiddenNestedData',
|
|
11
|
-
it('should remove data corresponding to hidden nested components in radios',
|
|
12
|
-
|
|
7
|
+
describe('components', () => {
|
|
8
|
+
describe('FormRenderer', () => {
|
|
9
|
+
describe('helpers', () => {
|
|
10
|
+
describe('cleanHiddenNestedData', () => {
|
|
11
|
+
it('should remove data corresponding to hidden nested components in radios', () => {
|
|
12
|
+
const patchRadios = {
|
|
13
13
|
parent: 'option2',
|
|
14
14
|
nested1: 'should not be included',
|
|
15
15
|
nested2: 'should be included'
|
|
16
16
|
};
|
|
17
|
-
|
|
17
|
+
const pageRadios = {
|
|
18
18
|
id: 'page',
|
|
19
19
|
name: 'page',
|
|
20
20
|
title: 'Page',
|
|
@@ -39,17 +39,17 @@ describe('components', function () {
|
|
|
39
39
|
}
|
|
40
40
|
}]
|
|
41
41
|
};
|
|
42
|
-
|
|
42
|
+
const updatedPatchRadios = (0, _cleanHiddenNestedData.default)(patchRadios, pageRadios);
|
|
43
43
|
expect(updatedPatchRadios.nested1).toBeFalsy();
|
|
44
44
|
expect(updatedPatchRadios.nested2).toBeTruthy();
|
|
45
45
|
});
|
|
46
|
-
it('should remove data corresponding to hidden nested components in checkboxes',
|
|
47
|
-
|
|
46
|
+
it('should remove data corresponding to hidden nested components in checkboxes', () => {
|
|
47
|
+
const patchCheckboxes = {
|
|
48
48
|
parent: ['option2'],
|
|
49
49
|
nested1: 'should not be included',
|
|
50
50
|
nested2: 'should be included'
|
|
51
51
|
};
|
|
52
|
-
|
|
52
|
+
const pageCheckboxes = {
|
|
53
53
|
id: 'page',
|
|
54
54
|
name: 'page',
|
|
55
55
|
title: 'Page',
|
|
@@ -74,12 +74,12 @@ describe('components', function () {
|
|
|
74
74
|
}
|
|
75
75
|
}]
|
|
76
76
|
};
|
|
77
|
-
|
|
77
|
+
const updatedPatchCheckboxes = (0, _cleanHiddenNestedData.default)(patchCheckboxes, pageCheckboxes);
|
|
78
78
|
expect(updatedPatchCheckboxes.nested1).toBeFalsy();
|
|
79
79
|
expect(updatedPatchCheckboxes.nested2).toBeTruthy();
|
|
80
80
|
});
|
|
81
|
-
it('remove data corresponding to hidden nested components within the active collection entry',
|
|
82
|
-
|
|
81
|
+
it('remove data corresponding to hidden nested components within the active collection entry', () => {
|
|
82
|
+
const patch = {
|
|
83
83
|
collectionNameActiveId: '456',
|
|
84
84
|
collectionName: [{
|
|
85
85
|
id: '123',
|
|
@@ -93,7 +93,7 @@ describe('components', function () {
|
|
|
93
93
|
nested2: 'should be included'
|
|
94
94
|
}]
|
|
95
95
|
};
|
|
96
|
-
|
|
96
|
+
const page = {
|
|
97
97
|
id: 'page',
|
|
98
98
|
name: 'page',
|
|
99
99
|
title: 'Page',
|
|
@@ -120,7 +120,7 @@ describe('components', function () {
|
|
|
120
120
|
}
|
|
121
121
|
}]
|
|
122
122
|
};
|
|
123
|
-
|
|
123
|
+
const updatedPatch = (0, _cleanHiddenNestedData.default)(patch, page);
|
|
124
124
|
expect(updatedPatch.collectionName[0].nested1).toBeTruthy();
|
|
125
125
|
expect(updatedPatch.collectionName[0].nested2).toBeTruthy();
|
|
126
126
|
expect(updatedPatch.collectionName[1].nested1).toBeFalsy();
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var _models = require("../../../models");
|
|
8
8
|
var _utils = _interopRequireDefault(require("../../../utils"));
|
|
9
|
-
function _interopRequireDefault(
|
|
9
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
10
|
// Local imports
|
|
11
11
|
|
|
12
12
|
/**
|
|
@@ -15,7 +15,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
15
15
|
* @param {object} hub The hub, if there is one.
|
|
16
16
|
* @returns A configuration object for the Check your answers screen.
|
|
17
17
|
*/
|
|
18
|
-
|
|
18
|
+
const getCYA = (pageId, pages, hub) => {
|
|
19
19
|
if (pageId === _models.FormPages.HUB && hub === _models.HubFormats.CYA) {
|
|
20
20
|
return {
|
|
21
21
|
title: ''
|
|
@@ -26,11 +26,9 @@ var getCYA = function getCYA(pageId, pages, hub) {
|
|
|
26
26
|
return {};
|
|
27
27
|
}
|
|
28
28
|
;
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
if ((currentPage === null || currentPage === void 0 ? void 0 : currentPage.type) === _models.FormPages.PARTIAL_CYA) {
|
|
33
|
-
var pageWithConditionals = _utils.default.FormPage.applyConditionalProperties(currentPage);
|
|
29
|
+
const currentPage = pages?.find(p => p.id === pageId);
|
|
30
|
+
if (currentPage?.type === _models.FormPages.PARTIAL_CYA) {
|
|
31
|
+
const pageWithConditionals = _utils.default.FormPage.applyConditionalProperties(currentPage);
|
|
34
32
|
return {
|
|
35
33
|
title: pageWithConditionals.title,
|
|
36
34
|
hideChangeActions: pageWithConditionals.hideChangeActions,
|
|
@@ -40,5 +38,4 @@ var getCYA = function getCYA(pageId, pages, hub) {
|
|
|
40
38
|
;
|
|
41
39
|
return undefined;
|
|
42
40
|
};
|
|
43
|
-
var _default = getCYA;
|
|
44
|
-
exports.default = _default;
|
|
41
|
+
var _default = exports.default = getCYA;
|