@ukhomeoffice/cop-react-form-renderer 4.67.0 → 4.68.1
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 +6 -16
- package/dist/components/CheckYourAnswers/Answer.test.js +104 -129
- package/dist/components/CheckYourAnswers/CheckYourAnswers.js +26 -64
- package/dist/components/CheckYourAnswers/CheckYourAnswers.test.js +428 -555
- package/dist/components/CheckYourAnswers/index.js +0 -3
- package/dist/components/CollectionPage/CollectionPage.js +13 -42
- package/dist/components/CollectionPage/CollectionPage.test.js +160 -206
- package/dist/components/CollectionPage/index.js +0 -3
- package/dist/components/FormComponent/Collection.js +35 -79
- package/dist/components/FormComponent/Collection.test.js +340 -391
- package/dist/components/FormComponent/Container.js +10 -31
- package/dist/components/FormComponent/Container.test.js +304 -357
- package/dist/components/FormComponent/FormComponent.js +17 -60
- package/dist/components/FormComponent/FormComponent.test.js +190 -228
- package/dist/components/FormComponent/helpers/addLabel.js +4 -7
- package/dist/components/FormComponent/helpers/getComponentDisabled.js +0 -4
- package/dist/components/FormComponent/helpers/getComponentDisabled.test.js +0 -2
- package/dist/components/FormComponent/helpers/getComponentError.js +0 -6
- package/dist/components/FormComponent/helpers/getComponentError.test.js +0 -2
- package/dist/components/FormComponent/helpers/index.js +0 -4
- package/dist/components/FormComponent/index.js +0 -3
- package/dist/components/FormPage/FormPage.js +21 -53
- package/dist/components/FormPage/FormPage.test.js +122 -160
- package/dist/components/FormPage/index.js +0 -3
- package/dist/components/FormRenderer/FormRenderer.js +106 -296
- package/dist/components/FormRenderer/FormRenderer.test.js +820 -1058
- package/dist/components/FormRenderer/handlers/cyaAction.js +0 -5
- package/dist/components/FormRenderer/handlers/getPageId.js +0 -2
- package/dist/components/FormRenderer/handlers/getPageId.test.js +1 -2
- package/dist/components/FormRenderer/handlers/handlers.test.js +1 -18
- package/dist/components/FormRenderer/handlers/index.js +0 -5
- package/dist/components/FormRenderer/handlers/navigate.js +0 -5
- package/dist/components/FormRenderer/handlers/submissionError.js +0 -2
- package/dist/components/FormRenderer/helpers/canActionProceed.js +0 -3
- package/dist/components/FormRenderer/helpers/canActionProceed.test.js +1 -3
- package/dist/components/FormRenderer/helpers/canCYASubmit.js +0 -2
- package/dist/components/FormRenderer/helpers/canCYASubmit.test.js +1 -5
- package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.js +4 -12
- package/dist/components/FormRenderer/helpers/cleanHiddenNestedData.test.js +1 -2
- package/dist/components/FormRenderer/helpers/getCYA.js +0 -9
- package/dist/components/FormRenderer/helpers/getCYA.test.js +1 -3
- package/dist/components/FormRenderer/helpers/getFormState.js +0 -5
- package/dist/components/FormRenderer/helpers/getFormState.test.js +1 -3
- package/dist/components/FormRenderer/helpers/getNextPageId.js +0 -25
- package/dist/components/FormRenderer/helpers/getNextPageId.test.js +1 -4
- package/dist/components/FormRenderer/helpers/getPage.js +0 -5
- package/dist/components/FormRenderer/helpers/getPage.test.js +1 -3
- package/dist/components/FormRenderer/helpers/getRelevantPages.js +0 -6
- package/dist/components/FormRenderer/helpers/getRelevantPages.test.js +1 -3
- package/dist/components/FormRenderer/helpers/getSubmissionStatus.js +0 -10
- package/dist/components/FormRenderer/helpers/getSubmissionStatus.test.js +4 -7
- package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.js +32 -41
- package/dist/components/FormRenderer/helpers/getUpdatedSectionStates.test.js +122 -8
- package/dist/components/FormRenderer/helpers/index.js +1 -11
- package/dist/components/FormRenderer/index.js +0 -3
- package/dist/components/FormRenderer/onCYAAction.js +8 -30
- package/dist/components/FormRenderer/onCYAAction.test.js +54 -79
- package/dist/components/FormRenderer/onPageAction.js +123 -0
- package/dist/components/FormRenderer/onPageAction.test.js +632 -0
- package/dist/components/PageActions/ActionButton.js +2 -17
- package/dist/components/PageActions/ActionButton.test.js +58 -81
- package/dist/components/PageActions/PageActions.js +3 -10
- package/dist/components/PageActions/PageActions.test.js +95 -120
- package/dist/components/PageActions/index.js +0 -3
- package/dist/components/SummaryList/GroupAction.js +5 -26
- package/dist/components/SummaryList/GroupAction.test.js +14 -28
- package/dist/components/SummaryList/RowAction.js +5 -25
- package/dist/components/SummaryList/RowAction.test.js +14 -28
- package/dist/components/SummaryList/SummaryList.js +7 -31
- package/dist/components/SummaryList/SummaryList.test.js +69 -126
- package/dist/components/SummaryList/SummaryListHeadingRow.js +3 -8
- package/dist/components/SummaryList/SummaryListRow.js +4 -8
- package/dist/components/SummaryList/SummaryListTitleRow.js +2 -7
- package/dist/components/SummaryList/helpers/getGroupActionAttributes.js +0 -3
- package/dist/components/SummaryList/helpers/getGroupActionAttributes.test.js +0 -6
- package/dist/components/SummaryList/helpers/getRowActionAttributes.js +0 -3
- package/dist/components/SummaryList/helpers/getRowActionAttributes.test.js +0 -6
- package/dist/components/SummaryList/helpers/index.js +0 -2
- package/dist/components/SummaryList/index.js +0 -3
- package/dist/components/TaskList/Task.js +9 -31
- package/dist/components/TaskList/Task.test.js +32 -59
- package/dist/components/TaskList/TaskList.js +32 -59
- package/dist/components/TaskList/TaskList.test.js +52 -90
- package/dist/components/TaskList/TaskState.js +2 -10
- package/dist/components/TaskList/TaskState.test.js +23 -41
- package/dist/components/TaskList/index.js +0 -3
- package/dist/components/index.js +0 -7
- package/dist/context/HooksContext/HooksContext.js +21 -39
- package/dist/context/HooksContext/HooksContext.test.js +18 -34
- package/dist/context/HooksContext/index.js +0 -5
- package/dist/context/ValidationContext/ValidationContext.js +26 -56
- package/dist/context/ValidationContext/ValidationContext.test.js +43 -64
- package/dist/context/ValidationContext/index.js +0 -5
- package/dist/context/index.js +0 -3
- package/dist/hooks/index.js +0 -9
- package/dist/hooks/useAxios.js +17 -36
- package/dist/hooks/useGetRequest.js +57 -93
- package/dist/hooks/useHooks.js +2 -4
- package/dist/hooks/useRefData.js +14 -41
- package/dist/hooks/useValidation.js +2 -4
- package/dist/index.js +0 -9
- package/dist/models/PageAction.js +4 -4
- package/dist/models/TaskStates.js +4 -4
- package/dist/models/index.js +1 -10
- package/dist/setupTests.js +0 -13
- package/dist/utils/CheckYourAnswers/getCYAAction.js +1 -9
- package/dist/utils/CheckYourAnswers/getCYAAction.test.js +1 -19
- package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.js +4 -11
- package/dist/utils/CheckYourAnswers/getCYACollectionChangeAction.test.js +4 -9
- package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.js +4 -9
- package/dist/utils/CheckYourAnswers/getCYACollectionDeleteAction.test.js +4 -8
- package/dist/utils/CheckYourAnswers/getCYARow.js +1 -10
- package/dist/utils/CheckYourAnswers/getCYARow.test.js +8 -23
- package/dist/utils/CheckYourAnswers/getCYARowForGroup.js +6 -21
- package/dist/utils/CheckYourAnswers/getCYARowForGroup.test.js +2 -9
- package/dist/utils/CheckYourAnswers/getCYARowsForCollection.js +4 -20
- package/dist/utils/CheckYourAnswers/getCYARowsForCollection.test.js +7 -22
- package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.js +4 -32
- package/dist/utils/CheckYourAnswers/getCYARowsForCollectionPage.test.js +4 -34
- package/dist/utils/CheckYourAnswers/getCYARowsForContainer.js +4 -15
- package/dist/utils/CheckYourAnswers/getCYARowsForContainer.test.js +4 -22
- package/dist/utils/CheckYourAnswers/getCYARowsForPage.js +2 -22
- package/dist/utils/CheckYourAnswers/getCYARowsForPage.test.js +7 -25
- package/dist/utils/CheckYourAnswers/index.js +1 -3
- package/dist/utils/CheckYourAnswers/showComponentCYA.js +2 -15
- package/dist/utils/CheckYourAnswers/showComponentCYA.test.js +1 -3
- package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.js +4 -12
- package/dist/utils/CollectionPage/duplicateCollectionPageActiveEntry.test.js +5 -6
- package/dist/utils/CollectionPage/getCollectionPageActiveIndex.js +0 -6
- package/dist/utils/CollectionPage/getCollectionPageActiveIndex.test.js +1 -2
- package/dist/utils/CollectionPage/index.js +1 -5
- package/dist/utils/CollectionPage/mergeCollectionPages.js +5 -11
- package/dist/utils/CollectionPage/mergeCollectionPages.test.js +1 -2
- package/dist/utils/Component/addShowWhen.js +4 -10
- package/dist/utils/Component/addShowWhen.test.js +1 -2
- package/dist/utils/Component/applyToComponentTree.js +4 -18
- package/dist/utils/Component/applyToComponentTree.test.js +4 -8
- package/dist/utils/Component/cleanAttributes.js +1 -8
- package/dist/utils/Component/cleanAttributes.test.js +15 -16
- package/dist/utils/Component/elevateNestedComponents.js +0 -6
- package/dist/utils/Component/elevateNestedComponents.test.js +0 -2
- package/dist/utils/Component/getComponent.js +7 -86
- package/dist/utils/Component/getComponentTests/getComponent.autocomplete.test.js +6 -10
- package/dist/utils/Component/getComponentTests/getComponent.calculation.test.js +33 -51
- package/dist/utils/Component/getComponentTests/getComponent.checkboxes.test.js +8 -35
- package/dist/utils/Component/getComponentTests/getComponent.date.test.js +12 -29
- package/dist/utils/Component/getComponentTests/getComponent.details.test.js +4 -10
- package/dist/utils/Component/getComponentTests/getComponent.email.test.js +6 -23
- package/dist/utils/Component/getComponentTests/getComponent.file.test.js +6 -24
- package/dist/utils/Component/getComponentTests/getComponent.heading.test.js +3 -7
- package/dist/utils/Component/getComponentTests/getComponent.html.test.js +4 -10
- package/dist/utils/Component/getComponentTests/getComponent.insetText.test.js +3 -7
- package/dist/utils/Component/getComponentTests/getComponent.list.test.js +4 -10
- package/dist/utils/Component/getComponentTests/getComponent.multifile.test.js +5 -22
- package/dist/utils/Component/getComponentTests/getComponent.nested.test.js +156 -175
- package/dist/utils/Component/getComponentTests/getComponent.paragraph.test.js +4 -10
- package/dist/utils/Component/getComponentTests/getComponent.phoneNumber.test.js +6 -23
- package/dist/utils/Component/getComponentTests/getComponent.radios.test.js +8 -35
- package/dist/utils/Component/getComponentTests/getComponent.select.test.js +6 -23
- package/dist/utils/Component/getComponentTests/getComponent.text.test.js +6 -23
- package/dist/utils/Component/getComponentTests/getComponent.textArea.test.js +10 -34
- package/dist/utils/Component/getComponentTests/getComponent.time.test.js +12 -31
- package/dist/utils/Component/getComponentTests/getComponent.unknown.test.js +1 -2
- package/dist/utils/Component/getComponentTests/getComponent.warningText.test.js +3 -7
- package/dist/utils/Component/getDefaultValue.js +4 -8
- package/dist/utils/Component/getDefaultValue.test.js +0 -3
- package/dist/utils/Component/index.js +0 -10
- package/dist/utils/Component/isEditable.js +1 -4
- package/dist/utils/Component/isEditable.test.js +1 -5
- package/dist/utils/Component/setupContainerComponentsPath.js +4 -9
- package/dist/utils/Component/setupContainerComponentsPath.test.js +0 -3
- package/dist/utils/Component/showComponent.js +1 -8
- package/dist/utils/Component/showComponent.test.js +1 -2
- package/dist/utils/Component/wrapInFormGroup.js +0 -7
- package/dist/utils/Condition/index.js +0 -5
- package/dist/utils/Condition/meetsAllConditions.js +0 -9
- package/dist/utils/Condition/meetsAllConditions.test.js +1 -2
- package/dist/utils/Condition/meetsCondition.js +9 -34
- package/dist/utils/Condition/meetsCondition.test.js +21 -14
- package/dist/utils/Condition/meetsOneCondition.js +1 -9
- package/dist/utils/Condition/meetsOneCondition.test.js +1 -2
- package/dist/utils/Condition/setupConditions.js +4 -13
- package/dist/utils/Condition/setupConditions.test.js +0 -2
- package/dist/utils/Container/getEditableComponents.js +0 -7
- package/dist/utils/Container/getEditableComponents.test.js +1 -12
- package/dist/utils/Container/index.js +0 -5
- package/dist/utils/Container/setupNesting.js +4 -12
- package/dist/utils/Container/setupNesting.test.js +4 -10
- package/dist/utils/Container/showContainer.js +9 -18
- package/dist/utils/Container/showContainer.test.js +1 -2
- package/dist/utils/Data/applyFormula.js +6 -29
- package/dist/utils/Data/applyFormula.test.js +1 -2
- package/dist/utils/Data/getAutocompleteSource.js +1 -5
- package/dist/utils/Data/getAutocompleteSource.test.js +1 -2
- package/dist/utils/Data/getDataPath.js +3 -17
- package/dist/utils/Data/getDataPath.test.js +0 -4
- package/dist/utils/Data/getOptions.js +4 -14
- package/dist/utils/Data/getOptions.test.js +1 -2
- package/dist/utils/Data/getSourceData.js +6 -21
- package/dist/utils/Data/getSourceData.test.js +4 -6
- package/dist/utils/Data/index.js +1 -11
- package/dist/utils/Data/refDataToOptions.js +5 -13
- package/dist/utils/Data/refDataToOptions.test.js +1 -2
- package/dist/utils/Data/setDataItem.js +0 -5
- package/dist/utils/Data/setDataItem.test.js +0 -2
- package/dist/utils/Data/setupFormData.js +6 -25
- package/dist/utils/Data/setupFormData.test.js +8 -11
- package/dist/utils/Data/setupRefDataUrlForComponent.js +4 -15
- package/dist/utils/Data/setupRefDataUrlForComponent.test.js +1 -3
- package/dist/utils/FormPage/applyConditionalProperties.js +4 -11
- package/dist/utils/FormPage/applyConditionalProperties.test.js +4 -6
- package/dist/utils/FormPage/getFormPage.js +4 -16
- package/dist/utils/FormPage/getFormPage.test.js +10 -9
- package/dist/utils/FormPage/getFormPages.js +4 -9
- package/dist/utils/FormPage/getFormPages.test.js +6 -7
- package/dist/utils/FormPage/getPageActions.js +6 -19
- package/dist/utils/FormPage/getPageActions.test.js +1 -3
- package/dist/utils/FormPage/getParagraphFromText.js +0 -3
- package/dist/utils/FormPage/getParagraphFromText.test.js +1 -3
- package/dist/utils/FormPage/index.js +0 -7
- package/dist/utils/FormPage/showFormPage.js +9 -18
- package/dist/utils/FormPage/showFormPage.test.js +0 -2
- package/dist/utils/FormPage/showFormPageCYA.js +0 -5
- package/dist/utils/FormPage/showFormPageCYA.test.js +0 -2
- package/dist/utils/FormPage/useComponent.js +7 -19
- package/dist/utils/FormPage/useComponent.test.js +4 -7
- package/dist/utils/Format/formatData.js +0 -5
- package/dist/utils/Format/formatData.test.js +1 -2
- package/dist/utils/Format/formatDataForComponent.js +1 -6
- package/dist/utils/Format/formatDataForComponent.test.js +28 -47
- package/dist/utils/Format/formatDataForForm.js +4 -9
- package/dist/utils/Format/formatDataForForm.test.js +14 -11
- package/dist/utils/Format/formatDataForPage.js +1 -5
- package/dist/utils/Format/formatDataForPage.test.js +15 -12
- package/dist/utils/Format/index.js +1 -6
- package/dist/utils/Hub/getFormHub.js +0 -8
- package/dist/utils/Hub/getFormHub.test.js +6 -8
- package/dist/utils/Hub/index.js +1 -3
- package/dist/utils/Meta/documents/getDocuments.js +1 -4
- package/dist/utils/Meta/documents/getDocuments.test.js +4 -10
- package/dist/utils/Meta/documents/index.js +1 -5
- package/dist/utils/Meta/documents/setDocumentsForField.js +4 -11
- package/dist/utils/Meta/documents/setDocumentsForField.test.js +4 -16
- package/dist/utils/Meta/index.js +1 -4
- package/dist/utils/Operate/checkValueIsTruthy.js +1 -7
- package/dist/utils/Operate/checkValueIsTruthy.test.js +0 -2
- package/dist/utils/Operate/getFirstOf.js +2 -9
- package/dist/utils/Operate/getFirstOf.test.js +0 -2
- package/dist/utils/Operate/getIndexOfMatchingValueIn.js +7 -21
- package/dist/utils/Operate/getIndexOfMatchingValueIn.test.js +6 -2
- package/dist/utils/Operate/index.js +0 -3
- package/dist/utils/Operate/persistValueInFormData.js +1 -8
- package/dist/utils/Operate/persistValueInFormData.test.js +0 -4
- package/dist/utils/Operate/runPageOperations.js +3 -19
- package/dist/utils/Operate/runPageOperations.test.js +4 -6
- package/dist/utils/Operate/setValueInFormData.js +2 -7
- package/dist/utils/Operate/setValueInFormData.test.js +0 -2
- package/dist/utils/Operate/shouldRun.js +1 -14
- package/dist/utils/Operate/shouldRun.test.js +5 -8
- package/dist/utils/Validate/additional/conditionallyRequired.js +0 -3
- package/dist/utils/Validate/additional/conditionallyRequired.test.js +0 -2
- package/dist/utils/Validate/additional/index.js +1 -22
- package/dist/utils/Validate/additional/index.test.js +0 -6
- package/dist/utils/Validate/additional/mustBeAfter.js +3 -8
- package/dist/utils/Validate/additional/mustBeAfter.test.js +0 -4
- package/dist/utils/Validate/additional/mustBeBefore.js +3 -8
- package/dist/utils/Validate/additional/mustBeBefore.test.js +0 -4
- package/dist/utils/Validate/additional/mustBeEarlierDateTime.js +5 -16
- package/dist/utils/Validate/additional/mustBeEarlierDateTime.test.js +4 -8
- package/dist/utils/Validate/additional/mustBeGreaterThan.js +0 -3
- package/dist/utils/Validate/additional/mustBeGreaterThan.test.js +0 -2
- package/dist/utils/Validate/additional/mustBeInTheFuture.js +3 -12
- package/dist/utils/Validate/additional/mustBeInTheFuture.test.js +0 -3
- package/dist/utils/Validate/additional/mustBeInThePast.js +5 -13
- package/dist/utils/Validate/additional/mustBeInThePast.test.js +0 -3
- package/dist/utils/Validate/additional/mustBeLessThan.js +0 -3
- package/dist/utils/Validate/additional/mustBeLessThan.test.js +0 -2
- package/dist/utils/Validate/additional/mustBeLongerThan.js +0 -3
- package/dist/utils/Validate/additional/mustBeLongerThan.test.js +0 -2
- package/dist/utils/Validate/additional/mustBeNumbersOnly.js +0 -3
- package/dist/utils/Validate/additional/mustBeNumbersOnly.test.js +0 -2
- package/dist/utils/Validate/additional/mustBeShorterThan.js +0 -3
- package/dist/utils/Validate/additional/mustBeShorterThan.test.js +0 -2
- package/dist/utils/Validate/additional/mustEnterAtLeastOne.js +0 -5
- package/dist/utils/Validate/additional/mustEnterAtLeastOne.test.js +4 -5
- package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.js +0 -3
- package/dist/utils/Validate/additional/mustHaveLessThanDecimalPlaces.test.js +0 -2
- package/dist/utils/Validate/additional/mustSelectOnlyOne.js +0 -6
- package/dist/utils/Validate/additional/mustSelectOnlyOne.test.js +4 -7
- package/dist/utils/Validate/additional/utils.js +10 -26
- package/dist/utils/Validate/index.js +1 -11
- package/dist/utils/Validate/validateCollection.js +4 -10
- package/dist/utils/Validate/validateCollection.test.js +4 -6
- package/dist/utils/Validate/validateComponent.js +2 -39
- package/dist/utils/Validate/validateComponent.test.js +4 -22
- package/dist/utils/Validate/validateContainer.js +4 -14
- package/dist/utils/Validate/validateContainer.test.js +4 -10
- package/dist/utils/Validate/validateDate.js +6 -38
- package/dist/utils/Validate/validateDate.test.js +0 -4
- package/dist/utils/Validate/validateEmail.js +1 -8
- package/dist/utils/Validate/validateEmail.test.js +5 -4
- package/dist/utils/Validate/validateMultifile.js +0 -7
- package/dist/utils/Validate/validateMultifile.test.js +5 -6
- package/dist/utils/Validate/validatePage.js +4 -16
- package/dist/utils/Validate/validatePage.test.js +30 -25
- package/dist/utils/Validate/validateRegex.js +0 -10
- package/dist/utils/Validate/validateRegex.test.js +5 -4
- package/dist/utils/Validate/validateRequired.js +0 -8
- package/dist/utils/Validate/validateRequired.test.js +5 -4
- package/dist/utils/Validate/validateTextArea.js +0 -8
- package/dist/utils/Validate/validateTextArea.test.js +0 -2
- package/dist/utils/Validate/validateTime.js +5 -22
- package/dist/utils/Validate/validateTime.test.js +0 -2
- package/dist/utils/index.js +4 -20
- package/package.json +2 -2
|
@@ -4,22 +4,18 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _models = require("../../models");
|
|
9
|
-
|
|
10
8
|
var _DEFAULT_VALUES;
|
|
11
|
-
|
|
12
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
13
|
-
|
|
9
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
10
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
11
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
12
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
14
13
|
var DEFAULT_VALUES = (_DEFAULT_VALUES = {}, _defineProperty(_DEFAULT_VALUES, _models.ComponentTypes.COLLECTION, []), _defineProperty(_DEFAULT_VALUES, _models.ComponentTypes.CONTAINER, {}), _defineProperty(_DEFAULT_VALUES, _models.ComponentTypes.FILE, {}), _DEFAULT_VALUES);
|
|
15
|
-
|
|
16
14
|
var getDefaultValue = function getDefaultValue(component) {
|
|
17
15
|
if (component) {
|
|
18
16
|
return DEFAULT_VALUES[component.type] || '';
|
|
19
17
|
}
|
|
20
|
-
|
|
21
18
|
return '';
|
|
22
19
|
};
|
|
23
|
-
|
|
24
20
|
var _default = getDefaultValue;
|
|
25
21
|
exports.default = _default;
|
|
@@ -1,11 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _models = require("../../models");
|
|
4
|
-
|
|
5
4
|
var _getDefaultValue = _interopRequireDefault(require("./getDefaultValue"));
|
|
6
|
-
|
|
7
5
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
8
|
-
|
|
9
6
|
describe('utils.Component.defaultValue', function () {
|
|
10
7
|
it('should return an empty string if the component is undefined', function () {
|
|
11
8
|
expect((0, _getDefaultValue.default)(undefined)).toEqual('');
|
|
@@ -4,25 +4,15 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _cleanAttributes = _interopRequireDefault(require("./cleanAttributes"));
|
|
9
|
-
|
|
10
8
|
var _elevateNestedComponents = _interopRequireDefault(require("./elevateNestedComponents"));
|
|
11
|
-
|
|
12
9
|
var _getComponent = _interopRequireDefault(require("./getComponent"));
|
|
13
|
-
|
|
14
10
|
var _getDefaultValue = _interopRequireDefault(require("./getDefaultValue"));
|
|
15
|
-
|
|
16
11
|
var _isEditable = _interopRequireDefault(require("./isEditable"));
|
|
17
|
-
|
|
18
12
|
var _setupContainerComponentsPath = _interopRequireDefault(require("./setupContainerComponentsPath"));
|
|
19
|
-
|
|
20
13
|
var _showComponent = _interopRequireDefault(require("./showComponent"));
|
|
21
|
-
|
|
22
14
|
var _wrapInFormGroup = _interopRequireDefault(require("./wrapInFormGroup"));
|
|
23
|
-
|
|
24
15
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
25
|
-
|
|
26
16
|
var Component = {
|
|
27
17
|
clean: _cleanAttributes.default,
|
|
28
18
|
defaultValue: _getDefaultValue.default,
|
|
@@ -4,16 +4,13 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = exports.EDITABLE_TYPES = void 0;
|
|
7
|
-
|
|
8
7
|
var _models = require("../../models");
|
|
9
|
-
|
|
10
8
|
// Local imports
|
|
9
|
+
|
|
11
10
|
var EDITABLE_TYPES = [_models.ComponentTypes.AUTOCOMPLETE, _models.ComponentTypes.CALCULATION, _models.ComponentTypes.CHECKBOXES, _models.ComponentTypes.DATE, _models.ComponentTypes.EMAIL, _models.ComponentTypes.FILE, _models.ComponentTypes.MULTI_FILE, _models.ComponentTypes.PHONE_NUMBER, _models.ComponentTypes.RADIOS, _models.ComponentTypes.SELECT, _models.ComponentTypes.TEXT, _models.ComponentTypes.TEXT_AREA, _models.ComponentTypes.TIME];
|
|
12
11
|
exports.EDITABLE_TYPES = EDITABLE_TYPES;
|
|
13
|
-
|
|
14
12
|
var isEditable = function isEditable(options) {
|
|
15
13
|
return EDITABLE_TYPES.includes(options === null || options === void 0 ? void 0 : options.type);
|
|
16
14
|
};
|
|
17
|
-
|
|
18
15
|
var _default = isEditable;
|
|
19
16
|
exports.default = _default;
|
|
@@ -1,14 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
|
-
|
|
5
4
|
var _isEditable = _interopRequireWildcard(require("./isEditable"));
|
|
6
|
-
|
|
7
5
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
8
|
-
|
|
9
6
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
10
|
-
|
|
11
7
|
// Local imports
|
|
8
|
+
|
|
12
9
|
describe('utils', function () {
|
|
13
10
|
describe('Component', function () {
|
|
14
11
|
describe('isEditable', function () {
|
|
@@ -20,7 +17,6 @@ describe('utils', function () {
|
|
|
20
17
|
expect((0, _isEditable.default)(OPTIONS)).toEqual(true);
|
|
21
18
|
});
|
|
22
19
|
});
|
|
23
|
-
|
|
24
20
|
it('should return false if options is undefined', function () {
|
|
25
21
|
expect((0, _isEditable.default)(undefined)).toEqual(false);
|
|
26
22
|
});
|
|
@@ -4,15 +4,13 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _showComponentCYA = require("../CheckYourAnswers/showComponentCYA");
|
|
9
|
-
|
|
8
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
10
9
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
11
|
-
|
|
12
10
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
13
|
-
|
|
14
|
-
function
|
|
15
|
-
|
|
11
|
+
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; }
|
|
12
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
13
|
+
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); }
|
|
16
14
|
var setupContainerComponentsPath = function setupContainerComponentsPath(container) {
|
|
17
15
|
return _objectSpread(_objectSpread({}, container), {}, {
|
|
18
16
|
components: container.components.map(function (component) {
|
|
@@ -24,20 +22,17 @@ var setupContainerComponentsPath = function setupContainerComponentsPath(contain
|
|
|
24
22
|
full_path: "".concat(component.full_path || "".concat(container.full_path, ".").concat(component.fieldId), ".").concat(c.fieldId)
|
|
25
23
|
});
|
|
26
24
|
}
|
|
27
|
-
|
|
28
25
|
return null;
|
|
29
26
|
}).filter(function (c) {
|
|
30
27
|
return !!c;
|
|
31
28
|
})
|
|
32
29
|
});
|
|
33
30
|
}
|
|
34
|
-
|
|
35
31
|
return _objectSpread(_objectSpread({}, component), !component.full_path && {
|
|
36
32
|
full_path: "".concat(container.full_path || container.fieldId, ".").concat(component.fieldId)
|
|
37
33
|
});
|
|
38
34
|
})
|
|
39
35
|
});
|
|
40
36
|
};
|
|
41
|
-
|
|
42
37
|
var _default = setupContainerComponentsPath;
|
|
43
38
|
exports.default = _default;
|
|
@@ -1,11 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _setupTests = require("../../setupTests");
|
|
4
|
-
|
|
5
4
|
var _setupContainerComponentsPath = _interopRequireDefault(require("./setupContainerComponentsPath"));
|
|
6
|
-
|
|
7
5
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
8
|
-
|
|
9
6
|
describe('utils.CheckYourAnswers.setupContainerComponentsPath', function () {
|
|
10
7
|
it('should setup the full_path attribute for components within a container', function () {
|
|
11
8
|
var COMPONENT_1 = {
|
|
@@ -4,29 +4,22 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _Condition = _interopRequireDefault(require("../Condition"));
|
|
9
|
-
|
|
10
8
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
-
|
|
12
9
|
// Local imports
|
|
10
|
+
|
|
13
11
|
var showComponent = function showComponent(component, data) {
|
|
14
12
|
var _component$show_when;
|
|
15
|
-
|
|
16
13
|
if (!component) {
|
|
17
14
|
return false;
|
|
18
15
|
}
|
|
19
|
-
|
|
20
16
|
if (component.hidden && component.disabled) {
|
|
21
17
|
return false;
|
|
22
18
|
}
|
|
23
|
-
|
|
24
19
|
if (((_component$show_when = component.show_when) === null || _component$show_when === void 0 ? void 0 : _component$show_when.type) === "or") {
|
|
25
20
|
return _Condition.default.meetsOne(component, data);
|
|
26
21
|
}
|
|
27
|
-
|
|
28
22
|
return _Condition.default.meetsAll(component, data);
|
|
29
23
|
};
|
|
30
|
-
|
|
31
24
|
var _default = showComponent;
|
|
32
25
|
exports.default = _default;
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _showComponent = _interopRequireDefault(require("./showComponent"));
|
|
4
|
-
|
|
5
4
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
6
|
-
|
|
7
5
|
// Local imports
|
|
6
|
+
|
|
8
7
|
describe('utils', function () {
|
|
9
8
|
describe('Component', function () {
|
|
10
9
|
describe('show', function () {
|
|
@@ -4,23 +4,16 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _copReactComponents = require("@ukhomeoffice/cop-react-components");
|
|
9
|
-
|
|
10
8
|
var _react = _interopRequireDefault(require("react"));
|
|
11
|
-
|
|
12
9
|
var _cleanAttributes = _interopRequireDefault(require("./cleanAttributes"));
|
|
13
|
-
|
|
14
10
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
-
|
|
16
11
|
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); }
|
|
17
|
-
|
|
18
12
|
var wrapInFormGroup = function wrapInFormGroup(config, children) {
|
|
19
13
|
var attrs = (0, _cleanAttributes.default)(config, ['fieldId', 'displayMenu']);
|
|
20
14
|
return /*#__PURE__*/_react.default.createElement(_copReactComponents.FormGroup, _extends({}, attrs, {
|
|
21
15
|
onChange: null
|
|
22
16
|
}), children);
|
|
23
17
|
};
|
|
24
|
-
|
|
25
18
|
var _default = wrapInFormGroup;
|
|
26
19
|
exports.default = _default;
|
|
@@ -4,15 +4,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _meetsAllConditions = _interopRequireDefault(require("./meetsAllConditions"));
|
|
9
|
-
|
|
10
8
|
var _meetsCondition = _interopRequireDefault(require("./meetsCondition"));
|
|
11
|
-
|
|
12
9
|
var _meetsOneCondition = _interopRequireDefault(require("./meetsOneCondition"));
|
|
13
|
-
|
|
14
10
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
-
|
|
16
11
|
var Condition = {
|
|
17
12
|
meetsOne: _meetsOneCondition.default,
|
|
18
13
|
meetsAll: _meetsAllConditions.default,
|
|
@@ -4,15 +4,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _Data = _interopRequireDefault(require("../Data"));
|
|
9
|
-
|
|
10
8
|
var _meetsCondition = _interopRequireDefault(require("./meetsCondition"));
|
|
11
|
-
|
|
12
9
|
var _setupConditions = _interopRequireDefault(require("./setupConditions"));
|
|
13
|
-
|
|
14
10
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
-
|
|
16
11
|
// Local imports
|
|
17
12
|
|
|
18
13
|
/**
|
|
@@ -23,18 +18,14 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
23
18
|
*/
|
|
24
19
|
var meetsAllConditions = function meetsAllConditions(options, data) {
|
|
25
20
|
var conditions = (0, _setupConditions.default)(options);
|
|
26
|
-
|
|
27
21
|
if (conditions) {
|
|
28
22
|
var arr = Array.isArray(conditions) ? conditions : [conditions];
|
|
29
23
|
return arr.every(function (condition) {
|
|
30
24
|
var sourceDataValue = _Data.default.getSource(data, condition.field);
|
|
31
|
-
|
|
32
25
|
return (0, _meetsCondition.default)(condition, sourceDataValue, data);
|
|
33
26
|
});
|
|
34
27
|
}
|
|
35
|
-
|
|
36
28
|
return true;
|
|
37
29
|
};
|
|
38
|
-
|
|
39
30
|
var _default = meetsAllConditions;
|
|
40
31
|
exports.default = _default;
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _meetsAllConditions = _interopRequireDefault(require("./meetsAllConditions"));
|
|
4
|
-
|
|
5
4
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
6
|
-
|
|
7
5
|
// Local imports
|
|
6
|
+
|
|
8
7
|
describe('utils.Condition.meetsAllConditions', function () {
|
|
9
8
|
var DATA = {
|
|
10
9
|
alpha: 'bravo',
|
|
@@ -4,25 +4,20 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _Data = _interopRequireDefault(require("../Data"));
|
|
9
|
-
|
|
10
8
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
-
|
|
12
9
|
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
13
|
-
|
|
14
10
|
var getComparisonValue = function getComparisonValue(condition, data) {
|
|
15
11
|
var _condition$value;
|
|
16
|
-
|
|
17
12
|
if (['in', 'nin'].includes(condition.op)) {
|
|
18
13
|
return condition.values;
|
|
19
14
|
} else if (typeof condition.value === 'string' && (_condition$value = condition.value) !== null && _condition$value !== void 0 && _condition$value.startsWith('field::')) {
|
|
20
15
|
var comparisonField = condition.value.replace('field::', '');
|
|
21
16
|
return _Data.default.getSource(data, comparisonField);
|
|
22
17
|
}
|
|
23
|
-
|
|
24
18
|
return condition.value;
|
|
25
19
|
};
|
|
20
|
+
|
|
26
21
|
/**
|
|
27
22
|
* Looks at a condition object to see if the supplied value meets it.
|
|
28
23
|
* The condition object contains an `op` property, along with a comparator
|
|
@@ -35,19 +30,15 @@ var getComparisonValue = function getComparisonValue(condition, data) {
|
|
|
35
30
|
*
|
|
36
31
|
* @returns A boolean indicating whether the value meets the condition.
|
|
37
32
|
*/
|
|
38
|
-
|
|
39
|
-
|
|
40
33
|
var meetsCondition = function meetsCondition(condition, value, data) {
|
|
41
34
|
if (condition && _typeof(condition) === 'object') {
|
|
42
35
|
var compare = getComparisonValue(condition, data);
|
|
43
|
-
|
|
44
36
|
switch (condition.op) {
|
|
45
37
|
case '=':
|
|
46
38
|
case 'eq':
|
|
47
39
|
{
|
|
48
40
|
return compare === value;
|
|
49
41
|
}
|
|
50
|
-
|
|
51
42
|
case '!=':
|
|
52
43
|
case '<>':
|
|
53
44
|
case 'ne':
|
|
@@ -55,61 +46,51 @@ var meetsCondition = function meetsCondition(condition, value, data) {
|
|
|
55
46
|
{
|
|
56
47
|
return compare !== value;
|
|
57
48
|
}
|
|
58
|
-
|
|
59
49
|
case 'in':
|
|
60
50
|
{
|
|
61
51
|
if (Array.isArray(compare)) {
|
|
62
52
|
return compare.includes(value);
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
|
|
53
|
+
}
|
|
54
|
+
// If it's not an array, nothing can be IN it, so it must fail the condition.
|
|
66
55
|
return false;
|
|
67
56
|
}
|
|
68
|
-
|
|
69
57
|
case 'nin':
|
|
70
58
|
{
|
|
71
59
|
if (Array.isArray(compare)) {
|
|
72
60
|
return compare.includes(value) === false;
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
|
|
61
|
+
}
|
|
62
|
+
// If it's not an array, nothing can be IN it, so it must meet the condition.
|
|
76
63
|
return true;
|
|
77
64
|
}
|
|
78
|
-
|
|
79
65
|
case '<':
|
|
80
66
|
{
|
|
81
67
|
if (!value || !compare) {
|
|
82
68
|
return false;
|
|
83
69
|
}
|
|
84
|
-
|
|
85
70
|
var valFloat = parseFloat(value.replace(',', ''));
|
|
86
71
|
var compareFloat = parseFloat(compare.replace(',', ''));
|
|
87
72
|
return valFloat < compareFloat;
|
|
88
73
|
}
|
|
89
|
-
|
|
90
74
|
case '>':
|
|
91
75
|
{
|
|
92
76
|
if (!value || !compare) {
|
|
93
77
|
return false;
|
|
94
78
|
}
|
|
95
|
-
|
|
96
79
|
var _valFloat = parseFloat(value.replace(',', ''));
|
|
97
|
-
|
|
98
80
|
var _compareFloat = parseFloat(compare.replace(',', ''));
|
|
99
|
-
|
|
100
81
|
return _valFloat > _compareFloat;
|
|
101
82
|
}
|
|
102
|
-
|
|
103
83
|
case 'contains':
|
|
104
84
|
{
|
|
105
|
-
return value === null || value === void 0 ? void 0 : value.toString().toLowerCase().includes(compare);
|
|
85
|
+
return value === null || value === void 0 ? void 0 : value.toString().toLowerCase().includes(compare);
|
|
86
|
+
// If no value is provided, the field cannot contain it, so it must fail the condition.
|
|
106
87
|
}
|
|
107
88
|
|
|
108
89
|
case '!contains':
|
|
109
90
|
{
|
|
110
91
|
var _value$toString$toLow;
|
|
111
|
-
|
|
112
|
-
|
|
92
|
+
return (_value$toString$toLow = !(value !== null && value !== void 0 && value.toString().toLowerCase().includes(compare))) !== null && _value$toString$toLow !== void 0 ? _value$toString$toLow : true;
|
|
93
|
+
// If no value is provided, the field cannot contain it, so it must meet the condition.
|
|
113
94
|
}
|
|
114
95
|
|
|
115
96
|
case 'includes':
|
|
@@ -117,26 +98,20 @@ var meetsCondition = function meetsCondition(condition, value, data) {
|
|
|
117
98
|
if (Array.isArray(value)) {
|
|
118
99
|
return value.includes(compare);
|
|
119
100
|
}
|
|
120
|
-
|
|
121
101
|
return false;
|
|
122
102
|
}
|
|
123
|
-
|
|
124
103
|
case '!includes':
|
|
125
104
|
{
|
|
126
105
|
if (Array.isArray(value)) {
|
|
127
106
|
return !value.includes(compare);
|
|
128
107
|
}
|
|
129
|
-
|
|
130
108
|
return true;
|
|
131
109
|
}
|
|
132
|
-
|
|
133
110
|
default:
|
|
134
111
|
return false;
|
|
135
112
|
}
|
|
136
113
|
}
|
|
137
|
-
|
|
138
114
|
return true;
|
|
139
115
|
};
|
|
140
|
-
|
|
141
116
|
var _default = meetsCondition;
|
|
142
117
|
exports.default = _default;
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _meetsCondition = _interopRequireDefault(require("./meetsCondition"));
|
|
4
|
-
|
|
5
4
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
6
|
-
|
|
7
5
|
// Local imports
|
|
6
|
+
|
|
8
7
|
describe('utils.Condition.meetsCondition', function () {
|
|
9
8
|
var getCondition = function getCondition(operator, val) {
|
|
10
9
|
if (['in', 'nin'].includes(operator)) {
|
|
@@ -13,13 +12,11 @@ describe('utils.Condition.meetsCondition', function () {
|
|
|
13
12
|
values: val
|
|
14
13
|
};
|
|
15
14
|
}
|
|
16
|
-
|
|
17
15
|
return {
|
|
18
16
|
op: operator,
|
|
19
17
|
value: val
|
|
20
18
|
};
|
|
21
19
|
};
|
|
22
|
-
|
|
23
20
|
var TEST_VALUES = ['a', 'b', 3, 4, null, undefined, true, false, 0];
|
|
24
21
|
describe('equality operators', function () {
|
|
25
22
|
['eq', '='].forEach(function (op) {
|
|
@@ -74,8 +71,9 @@ describe('utils.Condition.meetsCondition', function () {
|
|
|
74
71
|
};
|
|
75
72
|
var CONDITION = getCondition(op, 'field::environmentContext.currentUser');
|
|
76
73
|
expect((0, _meetsCondition.default)(CONDITION, VALUE, DATA)).toBeTruthy();
|
|
77
|
-
});
|
|
74
|
+
});
|
|
78
75
|
|
|
76
|
+
// Should reject...
|
|
79
77
|
it('should reject a null and undefined', function () {
|
|
80
78
|
var VALUE = null;
|
|
81
79
|
var CONDITION = getCondition(op, undefined);
|
|
@@ -167,8 +165,9 @@ describe('utils.Condition.meetsCondition', function () {
|
|
|
167
165
|
};
|
|
168
166
|
var CONDITION = getCondition(op, 'field::environmentContext.currentUser');
|
|
169
167
|
expect((0, _meetsCondition.default)(CONDITION, VALUE, DATA)).toBeFalsy();
|
|
170
|
-
});
|
|
168
|
+
});
|
|
171
169
|
|
|
170
|
+
// Should match...
|
|
172
171
|
it('should match a null and undefined', function () {
|
|
173
172
|
var VALUE = null;
|
|
174
173
|
var CONDITION = getCondition(op, undefined);
|
|
@@ -208,8 +207,9 @@ describe('utils.Condition.meetsCondition', function () {
|
|
|
208
207
|
});
|
|
209
208
|
});
|
|
210
209
|
describe('operator in', function () {
|
|
211
|
-
var op = 'in';
|
|
210
|
+
var op = 'in';
|
|
212
211
|
|
|
212
|
+
// Should match...
|
|
213
213
|
it('should match a string that is in the values array', function () {
|
|
214
214
|
var VALUE = 'alpha';
|
|
215
215
|
var CONDITION = getCondition(op, ['alpha', 'bravo', 'charlie']);
|
|
@@ -219,8 +219,9 @@ describe('utils.Condition.meetsCondition', function () {
|
|
|
219
219
|
var VALUE = 4;
|
|
220
220
|
var CONDITION = getCondition(op, ['alpha', 'bravo', 'charlie', 4]);
|
|
221
221
|
expect((0, _meetsCondition.default)(CONDITION, VALUE)).toBeTruthy();
|
|
222
|
-
});
|
|
222
|
+
});
|
|
223
223
|
|
|
224
|
+
// Should reject...
|
|
224
225
|
it('should reject a string that is missing from the values array', function () {
|
|
225
226
|
var VALUE = 'delta';
|
|
226
227
|
var CONDITION = getCondition(op, ['alpha', 'bravo', 'charlie']);
|
|
@@ -245,8 +246,9 @@ describe('utils.Condition.meetsCondition', function () {
|
|
|
245
246
|
});
|
|
246
247
|
});
|
|
247
248
|
describe('operator nin', function () {
|
|
248
|
-
var op = 'nin';
|
|
249
|
+
var op = 'nin';
|
|
249
250
|
|
|
251
|
+
// Should reject...
|
|
250
252
|
it('should reject a string that is in the values array', function () {
|
|
251
253
|
var VALUE = 'alpha';
|
|
252
254
|
var CONDITION = getCondition(op, ['alpha', 'bravo', 'charlie']);
|
|
@@ -256,8 +258,9 @@ describe('utils.Condition.meetsCondition', function () {
|
|
|
256
258
|
var VALUE = 4;
|
|
257
259
|
var CONDITION = getCondition(op, ['alpha', 'bravo', 'charlie', 4]);
|
|
258
260
|
expect((0, _meetsCondition.default)(CONDITION, VALUE)).toBeFalsy();
|
|
259
|
-
});
|
|
261
|
+
});
|
|
260
262
|
|
|
263
|
+
// Should match...
|
|
261
264
|
it('should match a string that is missing from the values array', function () {
|
|
262
265
|
var VALUE = 'delta';
|
|
263
266
|
var CONDITION = getCondition(op, ['alpha', 'bravo', 'charlie']);
|
|
@@ -282,8 +285,9 @@ describe('utils.Condition.meetsCondition', function () {
|
|
|
282
285
|
});
|
|
283
286
|
});
|
|
284
287
|
describe('operator contains', function () {
|
|
285
|
-
var op = 'contains';
|
|
288
|
+
var op = 'contains';
|
|
286
289
|
|
|
290
|
+
// Should match...
|
|
287
291
|
it('should match a string that is in the field array', function () {
|
|
288
292
|
var FIELD = ['alpha', 'bravo', 'charlie'];
|
|
289
293
|
var VALUE = 'alpha';
|
|
@@ -313,8 +317,9 @@ describe('utils.Condition.meetsCondition', function () {
|
|
|
313
317
|
var VALUE = 'alpha';
|
|
314
318
|
var CONDITION = getCondition(op, VALUE);
|
|
315
319
|
expect((0, _meetsCondition.default)(CONDITION, FIELD)).toBeTruthy();
|
|
316
|
-
});
|
|
320
|
+
});
|
|
317
321
|
|
|
322
|
+
// Should reject...
|
|
318
323
|
it('should reject a string that is missing from the field array', function () {
|
|
319
324
|
var FIELD = ['alpha', 'bravo', 'charlie'];
|
|
320
325
|
var VALUE = 'delta';
|
|
@@ -371,8 +376,9 @@ describe('utils.Condition.meetsCondition', function () {
|
|
|
371
376
|
});
|
|
372
377
|
});
|
|
373
378
|
describe('operator !contains', function () {
|
|
374
|
-
var op = '!contains';
|
|
379
|
+
var op = '!contains';
|
|
375
380
|
|
|
381
|
+
// Should match...
|
|
376
382
|
it('should match a string that is not in the field array', function () {
|
|
377
383
|
var FIELD = ['alpha', 'bravo', 'charlie'];
|
|
378
384
|
var VALUE = 'delta';
|
|
@@ -426,8 +432,9 @@ describe('utils.Condition.meetsCondition', function () {
|
|
|
426
432
|
var VALUE = 'alpha';
|
|
427
433
|
var CONDITION = getCondition(op, VALUE);
|
|
428
434
|
expect((0, _meetsCondition.default)(CONDITION, FIELD)).toBeTruthy();
|
|
429
|
-
});
|
|
435
|
+
});
|
|
430
436
|
|
|
437
|
+
// Should reject...
|
|
431
438
|
it('should reject a string that is in the field array', function () {
|
|
432
439
|
var FIELD = ['alpha', 'bravo', 'charlie'];
|
|
433
440
|
var VALUE = 'alpha';
|
|
@@ -4,15 +4,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _Data = _interopRequireDefault(require("../Data"));
|
|
9
|
-
|
|
10
8
|
var _meetsCondition = _interopRequireDefault(require("./meetsCondition"));
|
|
11
|
-
|
|
12
9
|
var _setupConditions = _interopRequireDefault(require("./setupConditions"));
|
|
13
|
-
|
|
14
10
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
-
|
|
16
11
|
// Local imports
|
|
17
12
|
|
|
18
13
|
/**
|
|
@@ -21,20 +16,17 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
21
16
|
* @param {object} data The top-level form data.
|
|
22
17
|
* @returns Boolean true if at least one conditions is met; false otherwise.
|
|
23
18
|
*/
|
|
19
|
+
|
|
24
20
|
var meetsOneCondition = function meetsOneCondition(options, data) {
|
|
25
21
|
var conditions = (0, _setupConditions.default)(options);
|
|
26
|
-
|
|
27
22
|
if (conditions) {
|
|
28
23
|
var arr = Array.isArray(conditions) ? conditions : [conditions];
|
|
29
24
|
return arr.some(function (condition) {
|
|
30
25
|
var sourceDataValue = _Data.default.getSource(data, condition.field);
|
|
31
|
-
|
|
32
26
|
return (0, _meetsCondition.default)(condition, sourceDataValue, data);
|
|
33
27
|
});
|
|
34
28
|
}
|
|
35
|
-
|
|
36
29
|
return true;
|
|
37
30
|
};
|
|
38
|
-
|
|
39
31
|
var _default = meetsOneCondition;
|
|
40
32
|
exports.default = _default;
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _meetsOneCondition = _interopRequireDefault(require("./meetsOneCondition"));
|
|
4
|
-
|
|
5
4
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
6
|
-
|
|
7
5
|
// Local imports
|
|
6
|
+
|
|
8
7
|
describe('utils.Condition.meetsOneCondition', function () {
|
|
9
8
|
var DATA = {
|
|
10
9
|
alpha: 'bravo',
|