@ukhomeoffice/cop-react-form-renderer 5.13.0 → 5.13.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/FormRenderer/onCYAAction.js +5 -1
- package/dist/components/FormRenderer/onCYAAction.test.js +8 -5
- package/dist/components/FormRenderer/onPageAction.js +8 -5
- package/dist/components/FormRenderer/onPageAction.test.js +6 -5
- package/dist/context/HooksContext/HooksContext.js +1 -1
- package/dist/models/EventTypes.js +3 -1
- package/package.json +1 -1
|
@@ -101,7 +101,11 @@ var onCYAAction = function onCYAAction(setPagePoint, action, pages, validate, co
|
|
|
101
101
|
onPageChange(_helpers.default.getNextPageId(type, pages, pageId, action, (_formState$page = formState.page) === null || _formState$page === void 0 ? void 0 : _formState$page.formData));
|
|
102
102
|
}
|
|
103
103
|
if (action.type === _models.PageAction.TYPES.CANCEL) {
|
|
104
|
-
|
|
104
|
+
var formData = _utils.default.Format.form({
|
|
105
|
+
pages: pages,
|
|
106
|
+
components: components
|
|
107
|
+
}, _objectSpread({}, data), _models.EventTypes.CANCEL);
|
|
108
|
+
hooks.onCancel(formData);
|
|
105
109
|
}
|
|
106
110
|
};
|
|
107
111
|
var _default = onCYAAction;
|
|
@@ -102,15 +102,15 @@ describe('components.FormRenderer.onCYAAction', function () {
|
|
|
102
102
|
onFormComplete: function onFormComplete() {
|
|
103
103
|
this.onFormCompleteCalls += 1;
|
|
104
104
|
},
|
|
105
|
-
|
|
106
|
-
onCancel: function onCancel() {
|
|
107
|
-
this.
|
|
105
|
+
onCancelArgs: [],
|
|
106
|
+
onCancel: function onCancel(data) {
|
|
107
|
+
this.onCancelArgs.push(data);
|
|
108
108
|
},
|
|
109
109
|
reset: function reset() {
|
|
110
110
|
this.onSubmitCalls = 0;
|
|
111
111
|
this.onSubmitArgs = [];
|
|
112
112
|
this.onFormCompleteCalls = 0;
|
|
113
|
-
this.
|
|
113
|
+
this.onCancelArgs = [];
|
|
114
114
|
}
|
|
115
115
|
};
|
|
116
116
|
var setPagePointCalls = 0;
|
|
@@ -578,6 +578,9 @@ describe('components.FormRenderer.onCYAAction', function () {
|
|
|
578
578
|
}
|
|
579
579
|
});
|
|
580
580
|
_onCYAAction.default.apply(void 0, Object.values(CUSTOM_ARGS));
|
|
581
|
-
expect(MOCK_HOOKS.
|
|
581
|
+
expect(MOCK_HOOKS.onCancelArgs.length).toEqual(1);
|
|
582
|
+
expect(MOCK_HOOKS.onCancelArgs[0]).toMatchObject({
|
|
583
|
+
id: 'formId'
|
|
584
|
+
});
|
|
582
585
|
});
|
|
583
586
|
});
|
|
@@ -20,11 +20,6 @@ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input ==
|
|
|
20
20
|
// patchLabel captures non-ID values
|
|
21
21
|
// for display purposes after submission.)
|
|
22
22
|
var onPageAction = function onPageAction(action, patch, patchLabel, hooks, data, formState, validate, onPageChange, type, pages, components, pageId, setPagePoint, currentTask, setData, hubDetails, setSubmitted, addErrors) {
|
|
23
|
-
if (action.type === _models.PageAction.TYPES.CANCEL) {
|
|
24
|
-
hooks.onCancel();
|
|
25
|
-
return;
|
|
26
|
-
}
|
|
27
|
-
;
|
|
28
23
|
// Save a copy of data in case submit errors and we need to revert
|
|
29
24
|
var preSubmitData = _objectSpread({}, data);
|
|
30
25
|
var form = formState;
|
|
@@ -36,6 +31,14 @@ var onPageAction = function onPageAction(action, patch, patchLabel, hooks, data,
|
|
|
36
31
|
// This should normally have no effect but will prevent issues
|
|
37
32
|
// with validation if formData happens to have been wiped.
|
|
38
33
|
form.page.formData = _objectSpread(_objectSpread({}, form.page.formData), _patch);
|
|
34
|
+
|
|
35
|
+
// Exposes form data to consuming application.
|
|
36
|
+
if (action.type === _models.PageAction.TYPES.CANCEL) {
|
|
37
|
+
hooks.onCancel(form.page.formData);
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
;
|
|
41
|
+
|
|
39
42
|
// Check to see whether the action is able to proceed, which in
|
|
40
43
|
// in the case of a submission will validate the fields in the page.
|
|
41
44
|
if (_helpers.default.canActionProceed(action, form.page, validate.page)) {
|
|
@@ -121,15 +121,15 @@ describe('components.FormRenderer.onPageAction', function () {
|
|
|
121
121
|
onFormComplete: function onFormComplete() {
|
|
122
122
|
this.onFormCompleteCalls += 1;
|
|
123
123
|
},
|
|
124
|
-
|
|
125
|
-
onCancel: function onCancel() {
|
|
126
|
-
this.
|
|
124
|
+
onCancelArgs: [],
|
|
125
|
+
onCancel: function onCancel(data) {
|
|
126
|
+
this.onCancelArgs.push(data);
|
|
127
127
|
},
|
|
128
128
|
reset: function reset() {
|
|
129
129
|
this.onSubmitCalls = 0;
|
|
130
130
|
this.onSubmitArgs = [];
|
|
131
131
|
this.onFormCompleteCalls = 0;
|
|
132
|
-
this.
|
|
132
|
+
this.onCancelArgs = [];
|
|
133
133
|
this.onActionCalls = 0;
|
|
134
134
|
},
|
|
135
135
|
onActionCalls: 0,
|
|
@@ -290,7 +290,8 @@ describe('components.FormRenderer.onPageAction', function () {
|
|
|
290
290
|
action: ACTION
|
|
291
291
|
});
|
|
292
292
|
_onPageAction.default.apply(void 0, Object.values(CUSTOM_ARGS));
|
|
293
|
-
expect(MOCK_HOOKS.
|
|
293
|
+
expect(MOCK_HOOKS.onCancelArgs.length).toEqual(1);
|
|
294
|
+
expect(MOCK_HOOKS.onCancelArgs[0]).toMatchObject({});
|
|
294
295
|
// Shouldn't get to the point of validation if
|
|
295
296
|
// action is a cancel action.
|
|
296
297
|
expect(_helpers.default.canActionProceedCalls).toEqual(0);
|
|
@@ -56,7 +56,7 @@ var DEFAULT_HOOKS = {
|
|
|
56
56
|
return errors;
|
|
57
57
|
},
|
|
58
58
|
// Returns the list of errors already found in FR by default.
|
|
59
|
-
onCancel: function onCancel() {} // Consuming application must provide function to action, else this does nothing.
|
|
59
|
+
onCancel: function onCancel(data) {} // Consuming application must provide function to action, else this does nothing.
|
|
60
60
|
};
|
|
61
61
|
|
|
62
62
|
var ALLOWED_HOOKS = Object.keys(DEFAULT_HOOKS);
|
|
@@ -6,9 +6,11 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var TYPE_BLUR = 'blur';
|
|
8
8
|
var TYPE_SUBMIT = 'submit';
|
|
9
|
+
var TYPE_CANCEL = 'cancel';
|
|
9
10
|
var EventTypes = {
|
|
10
11
|
BLUR: TYPE_BLUR,
|
|
11
|
-
SUBMIT: TYPE_SUBMIT
|
|
12
|
+
SUBMIT: TYPE_SUBMIT,
|
|
13
|
+
CANCEL: TYPE_CANCEL
|
|
12
14
|
};
|
|
13
15
|
var _default = EventTypes;
|
|
14
16
|
exports.default = _default;
|