@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
|
@@ -7,13 +7,13 @@ exports.default = void 0;
|
|
|
7
7
|
var _copReactComponents = require("@ukhomeoffice/cop-react-components");
|
|
8
8
|
var _react = _interopRequireDefault(require("react"));
|
|
9
9
|
var _cleanAttributes = _interopRequireDefault(require("./cleanAttributes"));
|
|
10
|
-
function _interopRequireDefault(
|
|
11
|
-
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (
|
|
12
|
-
|
|
13
|
-
|
|
10
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); } // Global imports
|
|
12
|
+
// Local imports
|
|
13
|
+
const wrapInFormGroup = (config, children) => {
|
|
14
|
+
const attrs = (0, _cleanAttributes.default)(config, ['fieldId', 'displayMenu', 'showCharacterCount', 'readonly']);
|
|
14
15
|
return /*#__PURE__*/_react.default.createElement(_copReactComponents.FormGroup, _extends({}, attrs, {
|
|
15
16
|
onChange: null
|
|
16
17
|
}), children);
|
|
17
18
|
};
|
|
18
|
-
var _default = wrapInFormGroup;
|
|
19
|
-
exports.default = _default;
|
|
19
|
+
var _default = exports.default = wrapInFormGroup;
|
|
@@ -7,11 +7,10 @@ exports.default = void 0;
|
|
|
7
7
|
var _meetsAllConditions = _interopRequireDefault(require("./meetsAllConditions"));
|
|
8
8
|
var _meetsCondition = _interopRequireDefault(require("./meetsCondition"));
|
|
9
9
|
var _meetsOneCondition = _interopRequireDefault(require("./meetsOneCondition"));
|
|
10
|
-
function _interopRequireDefault(
|
|
11
|
-
|
|
10
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
|
+
const Condition = {
|
|
12
12
|
meetsOne: _meetsOneCondition.default,
|
|
13
13
|
meetsAll: _meetsAllConditions.default,
|
|
14
14
|
met: _meetsCondition.default
|
|
15
15
|
};
|
|
16
|
-
var _default = Condition;
|
|
17
|
-
exports.default = _default;
|
|
16
|
+
var _default = exports.default = Condition;
|
|
@@ -7,17 +7,17 @@ exports.default = void 0;
|
|
|
7
7
|
var _Data = _interopRequireDefault(require("../Data"));
|
|
8
8
|
var _meetsCondition = _interopRequireDefault(require("./meetsCondition"));
|
|
9
9
|
var _setupConditions = _interopRequireDefault(require("./setupConditions"));
|
|
10
|
-
function _interopRequireDefault(
|
|
10
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
11
|
// Local imports
|
|
12
12
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
13
|
+
const testConditions = function (conditions, data) {
|
|
14
|
+
let type = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'and';
|
|
15
|
+
const arr = Array.isArray(conditions) ? conditions : [conditions];
|
|
16
|
+
const testCallback = condition => {
|
|
17
17
|
if (Array.isArray(condition.conditions)) {
|
|
18
18
|
return testConditions(condition.conditions, data, condition.type);
|
|
19
19
|
}
|
|
20
|
-
|
|
20
|
+
const sourceDataValue = _Data.default.getSource(data, condition.field);
|
|
21
21
|
return (0, _meetsCondition.default)(condition, sourceDataValue, data);
|
|
22
22
|
};
|
|
23
23
|
return type === 'and' ? arr.every(testCallback) : arr.some(testCallback);
|
|
@@ -29,12 +29,11 @@ var testConditions = function testConditions(conditions, data) {
|
|
|
29
29
|
* @param {object} data The top-level form data.
|
|
30
30
|
* @returns Boolean true if all conditions are met; false otherwise.
|
|
31
31
|
*/
|
|
32
|
-
|
|
33
|
-
|
|
32
|
+
const meetsAllConditions = (options, data) => {
|
|
33
|
+
const conditions = (0, _setupConditions.default)(options);
|
|
34
34
|
if (conditions) {
|
|
35
35
|
return testConditions(conditions, data);
|
|
36
36
|
}
|
|
37
37
|
return true;
|
|
38
38
|
};
|
|
39
|
-
var _default = meetsAllConditions;
|
|
40
|
-
exports.default = _default;
|
|
39
|
+
var _default = exports.default = meetsAllConditions;
|
|
@@ -1,41 +1,41 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _meetsAllConditions = _interopRequireDefault(require("./meetsAllConditions"));
|
|
4
|
-
function _interopRequireDefault(
|
|
4
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
5
5
|
// Local imports
|
|
6
6
|
|
|
7
|
-
describe('utils.Condition.meetsAllConditions',
|
|
8
|
-
|
|
7
|
+
describe('utils.Condition.meetsAllConditions', () => {
|
|
8
|
+
const DATA = {
|
|
9
9
|
alpha: 'bravo',
|
|
10
10
|
charlie: 'delta'
|
|
11
11
|
};
|
|
12
|
-
it('should evaluate to true when conditions are null',
|
|
12
|
+
it('should evaluate to true when conditions are null', () => {
|
|
13
13
|
expect((0, _meetsAllConditions.default)(null, DATA)).toBeTruthy();
|
|
14
14
|
});
|
|
15
|
-
it('should evaluate to true when conditions are undefined',
|
|
15
|
+
it('should evaluate to true when conditions are undefined', () => {
|
|
16
16
|
expect((0, _meetsAllConditions.default)(undefined, DATA)).toBeTruthy();
|
|
17
17
|
});
|
|
18
|
-
it('should evaluate to true when conditions is an empty array',
|
|
18
|
+
it('should evaluate to true when conditions is an empty array', () => {
|
|
19
19
|
expect((0, _meetsAllConditions.default)([], DATA)).toBeTruthy();
|
|
20
20
|
});
|
|
21
|
-
it('should evaluate to true when a single condition is met',
|
|
22
|
-
|
|
21
|
+
it('should evaluate to true when a single condition is met', () => {
|
|
22
|
+
const CONDITION = {
|
|
23
23
|
field: 'alpha',
|
|
24
24
|
op: 'eq',
|
|
25
25
|
value: 'bravo'
|
|
26
26
|
};
|
|
27
27
|
expect((0, _meetsAllConditions.default)(CONDITION, DATA)).toBeTruthy();
|
|
28
28
|
});
|
|
29
|
-
it('should evaluate to false when a single condition is not met',
|
|
30
|
-
|
|
29
|
+
it('should evaluate to false when a single condition is not met', () => {
|
|
30
|
+
const CONDITION = {
|
|
31
31
|
field: 'alpha',
|
|
32
32
|
op: 'ne',
|
|
33
33
|
value: 'bravo'
|
|
34
34
|
};
|
|
35
35
|
expect((0, _meetsAllConditions.default)(CONDITION, DATA)).toBeFalsy();
|
|
36
36
|
});
|
|
37
|
-
it('should evaluate to true when all conditions are met',
|
|
38
|
-
|
|
37
|
+
it('should evaluate to true when all conditions are met', () => {
|
|
38
|
+
const CONDITIONS = [{
|
|
39
39
|
field: 'alpha',
|
|
40
40
|
op: 'eq',
|
|
41
41
|
value: 'bravo'
|
|
@@ -46,8 +46,8 @@ describe('utils.Condition.meetsAllConditions', function () {
|
|
|
46
46
|
}];
|
|
47
47
|
expect((0, _meetsAllConditions.default)(CONDITIONS, DATA)).toBeTruthy();
|
|
48
48
|
});
|
|
49
|
-
it('should evaluate to false when one of the conditions is not met',
|
|
50
|
-
|
|
49
|
+
it('should evaluate to false when one of the conditions is not met', () => {
|
|
50
|
+
const CONDITIONS = [{
|
|
51
51
|
field: 'alpha',
|
|
52
52
|
op: 'eq',
|
|
53
53
|
value: 'bravo'
|
|
@@ -58,18 +58,18 @@ describe('utils.Condition.meetsAllConditions', function () {
|
|
|
58
58
|
}];
|
|
59
59
|
expect((0, _meetsAllConditions.default)(CONDITIONS, DATA)).toBeFalsy();
|
|
60
60
|
});
|
|
61
|
-
it('should handle nested conditions',
|
|
62
|
-
|
|
61
|
+
it('should handle nested conditions', () => {
|
|
62
|
+
const VALID_DATA = {
|
|
63
63
|
shouldBeAlpha: 'alpha',
|
|
64
64
|
shouldBeBravo: 'bravo',
|
|
65
65
|
canBeCharlieOrDelta: 'charlie'
|
|
66
66
|
};
|
|
67
|
-
|
|
67
|
+
const INVALID_DATA = {
|
|
68
68
|
shouldBeAlpha: 'alpha',
|
|
69
69
|
shouldBeBravo: 'bravo',
|
|
70
70
|
canBeCharlieOrDelta: 'echo'
|
|
71
71
|
};
|
|
72
|
-
|
|
72
|
+
const CONDITIONS = [{
|
|
73
73
|
type: 'or',
|
|
74
74
|
conditions: [{
|
|
75
75
|
field: 'canBeCharlieOrDelta',
|
|
@@ -5,15 +5,15 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var _Data = _interopRequireDefault(require("../Data"));
|
|
8
|
-
function _interopRequireDefault(
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
|
+
// Local imports
|
|
10
|
+
|
|
11
|
+
const getComparisonValue = (condition, data) => {
|
|
12
12
|
if (['in', 'nin', 'includesAllOf', '!includesAllOf'].includes(condition.op)) {
|
|
13
13
|
return condition.values;
|
|
14
14
|
}
|
|
15
|
-
if (typeof condition.value === 'string' &&
|
|
16
|
-
|
|
15
|
+
if (typeof condition.value === 'string' && condition.value?.startsWith('field::')) {
|
|
16
|
+
const comparisonField = condition.value.replace('field::', '');
|
|
17
17
|
return _Data.default.getSource(data, comparisonField);
|
|
18
18
|
}
|
|
19
19
|
return condition.value;
|
|
@@ -31,9 +31,9 @@ var getComparisonValue = function getComparisonValue(condition, data) {
|
|
|
31
31
|
*
|
|
32
32
|
* @returns A boolean indicating whether the value meets the condition.
|
|
33
33
|
*/
|
|
34
|
-
|
|
35
|
-
if (condition &&
|
|
36
|
-
|
|
34
|
+
const meetsCondition = (condition, value, data) => {
|
|
35
|
+
if (condition && typeof condition === 'object') {
|
|
36
|
+
const compare = getComparisonValue(condition, data);
|
|
37
37
|
switch (condition.op) {
|
|
38
38
|
case '=':
|
|
39
39
|
case 'eq':
|
|
@@ -68,8 +68,8 @@ var meetsCondition = function meetsCondition(condition, value, data) {
|
|
|
68
68
|
if (!value || !compare) {
|
|
69
69
|
return false;
|
|
70
70
|
}
|
|
71
|
-
|
|
72
|
-
|
|
71
|
+
const valFloat = parseFloat(value.replace(',', ''));
|
|
72
|
+
const compareFloat = parseFloat(compare.replace(',', ''));
|
|
73
73
|
return valFloat < compareFloat;
|
|
74
74
|
}
|
|
75
75
|
case '>':
|
|
@@ -77,23 +77,20 @@ var meetsCondition = function meetsCondition(condition, value, data) {
|
|
|
77
77
|
if (!value || !compare) {
|
|
78
78
|
return false;
|
|
79
79
|
}
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
return
|
|
80
|
+
const valFloat = parseFloat(value.replace(/,/g, ''));
|
|
81
|
+
const compareFloat = parseFloat(compare.replace(/,/g, ''));
|
|
82
|
+
return valFloat > compareFloat;
|
|
83
83
|
}
|
|
84
84
|
case 'contains':
|
|
85
85
|
{
|
|
86
|
-
return value
|
|
86
|
+
return value?.toString().toLowerCase().includes(compare);
|
|
87
87
|
// If no value is provided, the field cannot contain it, so it must fail the condition.
|
|
88
88
|
}
|
|
89
|
-
|
|
90
89
|
case '!contains':
|
|
91
90
|
{
|
|
92
|
-
|
|
93
|
-
return (_value$toString$toLow = !(value !== null && value !== void 0 && value.toString().toLowerCase().includes(compare))) !== null && _value$toString$toLow !== void 0 ? _value$toString$toLow : true;
|
|
91
|
+
return !value?.toString().toLowerCase().includes(compare) ?? true;
|
|
94
92
|
// If no value is provided, the field cannot contain it, so it must meet the condition.
|
|
95
93
|
}
|
|
96
|
-
|
|
97
94
|
case 'includes':
|
|
98
95
|
{
|
|
99
96
|
if (Array.isArray(value)) {
|
|
@@ -114,9 +111,7 @@ var meetsCondition = function meetsCondition(condition, value, data) {
|
|
|
114
111
|
// This will break if compare is not an array, meaning
|
|
115
112
|
// the form JSON has been written incorrectly. Seemed silly
|
|
116
113
|
// to try and hide the configuration error with type checking.
|
|
117
|
-
return compare.every(
|
|
118
|
-
return value.includes(entry);
|
|
119
|
-
});
|
|
114
|
+
return compare.every(entry => value.includes(entry));
|
|
120
115
|
}
|
|
121
116
|
return false;
|
|
122
117
|
}
|
|
@@ -126,9 +121,7 @@ var meetsCondition = function meetsCondition(condition, value, data) {
|
|
|
126
121
|
// This will break if compare is not an array, meaning
|
|
127
122
|
// the form JSON has been written incorrectly. Seemed silly
|
|
128
123
|
// to try and hide the configuration error with type checking.
|
|
129
|
-
return !compare.every(
|
|
130
|
-
return value.includes(entry);
|
|
131
|
-
});
|
|
124
|
+
return !compare.every(entry => value.includes(entry));
|
|
132
125
|
}
|
|
133
126
|
return true;
|
|
134
127
|
}
|
|
@@ -138,5 +131,4 @@ var meetsCondition = function meetsCondition(condition, value, data) {
|
|
|
138
131
|
}
|
|
139
132
|
return true;
|
|
140
133
|
};
|
|
141
|
-
var _default = meetsCondition;
|
|
142
|
-
exports.default = _default;
|
|
134
|
+
var _default = exports.default = meetsCondition;
|