@newskit-render/my-account 7.110.2 → 7.110.3
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/cjs/api/mutateHandler.d.ts +5 -1
- package/dist/cjs/api/mutateHandler.js +89 -105
- package/dist/cjs/api/mutateHandler.js.map +1 -1
- package/dist/esm/api/mutateHandler.d.ts +5 -1
- package/dist/esm/api/mutateHandler.js +89 -105
- package/dist/esm/api/mutateHandler.js.map +1 -1
- package/package.json +4 -4
|
@@ -1,3 +1,7 @@
|
|
|
1
1
|
import { NextApiRequest, NextApiResponse } from 'next';
|
|
2
2
|
import { OverrideYupSchemaType, DefaultSchemaKeysType } from '@newskit-render/validation';
|
|
3
|
-
export
|
|
3
|
+
export interface MutateHandlerOptions {
|
|
4
|
+
enableStepUpMfa?: boolean;
|
|
5
|
+
mfaGoToUrl?: string | undefined;
|
|
6
|
+
}
|
|
7
|
+
export declare const mutateHandler: (req: NextApiRequest, res: NextApiResponse, validationSchema: DefaultSchemaKeysType | OverrideYupSchemaType, options?: MutateHandlerOptions) => Promise<void>;
|
|
@@ -46,15 +46,6 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
46
46
|
}
|
|
47
47
|
return t;
|
|
48
48
|
};
|
|
49
|
-
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
50
|
-
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
51
|
-
if (ar || !(i in from)) {
|
|
52
|
-
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
53
|
-
ar[i] = from[i];
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
return to.concat(ar || Array.prototype.slice.call(from));
|
|
57
|
-
};
|
|
58
49
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
59
50
|
exports.mutateHandler = void 0;
|
|
60
51
|
var cookie_1 = require("cookie");
|
|
@@ -65,106 +56,99 @@ var shared_components_1 = require("@newskit-render/shared-components");
|
|
|
65
56
|
var constants_1 = require("../constants");
|
|
66
57
|
var mutateHandlerHelpers_1 = require("./mutateHandlerHelpers");
|
|
67
58
|
var authorization_1 = require("./authorization");
|
|
68
|
-
var mutateHandler = function (
|
|
69
|
-
var
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
return __generator(this, function (_e) {
|
|
78
|
-
switch (_e.label) {
|
|
79
|
-
case 0:
|
|
80
|
-
if (req.method !== 'POST') {
|
|
81
|
-
res.status(405);
|
|
82
|
-
res.json({ message: "Method '".concat(req.method, "' not allowed") });
|
|
83
|
-
res.end();
|
|
84
|
-
return [2 /*return*/];
|
|
85
|
-
}
|
|
86
|
-
parsedData = (0, shared_components_1.safeJsonParse)(req.body);
|
|
87
|
-
validationSchemaKey = parsedData.validationSchemaKey, data = __rest(parsedData, ["validationSchemaKey"]);
|
|
88
|
-
fieldSchema = validationSchema[validationSchemaKey];
|
|
89
|
-
if (!enableStepUpMfa) return [3 /*break*/, 5];
|
|
90
|
-
_a = ((0, cookie_1.parse)(((_d = req === null || req === void 0 ? void 0 : req.headers) === null || _d === void 0 ? void 0 : _d.cookie) || '') || {}).stepup_access_token, stepUpMfaToken = _a === void 0 ? '' : _a;
|
|
91
|
-
if (!!stepUpMfaToken) return [3 /*break*/, 4];
|
|
92
|
-
_e.label = 1;
|
|
93
|
-
case 1:
|
|
94
|
-
_e.trys.push([1, 3, , 4]);
|
|
95
|
-
return [4 /*yield*/, (0, authorization_1.authorizeAPi)(req, res)];
|
|
96
|
-
case 2: return [2 /*return*/, _e.sent()];
|
|
97
|
-
case 3:
|
|
98
|
-
_b = _e.sent();
|
|
99
|
-
errorMessage = _b.message;
|
|
100
|
-
res.status(400);
|
|
101
|
-
res.json({ error: errorMessage });
|
|
102
|
-
res.end();
|
|
103
|
-
return [2 /*return*/];
|
|
104
|
-
case 4:
|
|
105
|
-
res.status(200);
|
|
59
|
+
var mutateHandler = function (req, res, validationSchema, options) { return __awaiter(void 0, void 0, void 0, function () {
|
|
60
|
+
var parsedData, validationSchemaKey, data, fieldSchema, _a, stepUpMfaToken, _b, errorMessage, _c, errorMessage, sanitizedDataObject, apolloClient, result, postcode;
|
|
61
|
+
var _d;
|
|
62
|
+
return __generator(this, function (_e) {
|
|
63
|
+
switch (_e.label) {
|
|
64
|
+
case 0:
|
|
65
|
+
if (req.method !== 'POST') {
|
|
66
|
+
res.status(405);
|
|
67
|
+
res.json({ message: "Method '".concat(req.method, "' not allowed") });
|
|
106
68
|
res.end();
|
|
107
69
|
return [2 /*return*/];
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
70
|
+
}
|
|
71
|
+
parsedData = (0, shared_components_1.safeJsonParse)(req.body);
|
|
72
|
+
validationSchemaKey = parsedData.validationSchemaKey, data = __rest(parsedData, ["validationSchemaKey"]);
|
|
73
|
+
fieldSchema = validationSchema[validationSchemaKey];
|
|
74
|
+
if (!(options === null || options === void 0 ? void 0 : options.enableStepUpMfa)) return [3 /*break*/, 5];
|
|
75
|
+
_a = ((0, cookie_1.parse)(((_d = req === null || req === void 0 ? void 0 : req.headers) === null || _d === void 0 ? void 0 : _d.cookie) || '') || {}).stepup_access_token, stepUpMfaToken = _a === void 0 ? '' : _a;
|
|
76
|
+
if (!!stepUpMfaToken) return [3 /*break*/, 4];
|
|
77
|
+
_e.label = 1;
|
|
78
|
+
case 1:
|
|
79
|
+
_e.trys.push([1, 3, , 4]);
|
|
80
|
+
return [4 /*yield*/, (0, authorization_1.authorizeAPi)(req, res, options === null || options === void 0 ? void 0 : options.mfaGoToUrl)];
|
|
81
|
+
case 2: return [2 /*return*/, _e.sent()];
|
|
82
|
+
case 3:
|
|
83
|
+
_b = _e.sent();
|
|
84
|
+
errorMessage = _b.message;
|
|
85
|
+
res.status(400);
|
|
86
|
+
res.json({ error: errorMessage });
|
|
87
|
+
res.end();
|
|
88
|
+
return [2 /*return*/];
|
|
89
|
+
case 4:
|
|
90
|
+
res.status(200);
|
|
91
|
+
res.end();
|
|
92
|
+
return [2 /*return*/];
|
|
93
|
+
case 5:
|
|
94
|
+
if (!fieldSchema) {
|
|
127
95
|
res.status(400);
|
|
128
|
-
res.json({ error:
|
|
129
|
-
|
|
130
|
-
return [2 /*return*/];
|
|
131
|
-
case 9:
|
|
132
|
-
sanitizedDataObject = (0, helpers_1.getSanitizedObject)(data, 'encode');
|
|
133
|
-
return [4 /*yield*/, (0, api_1.createApolloClient)(api_1.ClientTypes.main, req.headers.cookie, undefined, undefined, undefined, {
|
|
134
|
-
enableStepUpMfa: enableStepUpMfa,
|
|
135
|
-
})];
|
|
136
|
-
case 10:
|
|
137
|
-
apolloClient = _e.sent();
|
|
138
|
-
if (!(validationSchemaKey === validation_1.ValidationSchemaNames.password)) return [3 /*break*/, 12];
|
|
139
|
-
return [4 /*yield*/, (0, mutateHandlerHelpers_1.handlePasswordRequest)(res, apolloClient, validationSchemaKey)];
|
|
140
|
-
case 11:
|
|
141
|
-
_e.sent();
|
|
142
|
-
return [2 /*return*/];
|
|
143
|
-
case 12:
|
|
144
|
-
if (!(validationSchemaKey === validation_1.ValidationSchemaNames.postcode &&
|
|
145
|
-
sanitizedDataObject.postcode)) return [3 /*break*/, 14];
|
|
146
|
-
postcode = sanitizedDataObject.postcode;
|
|
147
|
-
return [4 /*yield*/, (0, mutateHandlerHelpers_1.handlePostcodeRequest)(res, apolloClient, postcode, validationSchemaKey)];
|
|
148
|
-
case 13:
|
|
149
|
-
_e.sent();
|
|
150
|
-
return [2 /*return*/];
|
|
151
|
-
case 14: return [4 /*yield*/, (0, mutateHandlerHelpers_1.handleMutation)(res, sanitizedDataObject, validationSchemaKey, apolloClient)];
|
|
152
|
-
case 15:
|
|
153
|
-
result = _e.sent();
|
|
154
|
-
_e.label = 16;
|
|
155
|
-
case 16:
|
|
156
|
-
try {
|
|
157
|
-
(0, mutateHandlerHelpers_1.checkResponse)(result, validationSchemaKey);
|
|
158
|
-
res.status(200);
|
|
159
|
-
res.end(JSON.stringify(result));
|
|
160
|
-
}
|
|
161
|
-
catch (err) {
|
|
162
|
-
(0, mutateHandlerHelpers_1.handleRequestError)(res, err, validationSchemaKey, data);
|
|
163
|
-
}
|
|
96
|
+
res.json({ error: constants_1.MISSING_VALUE_IN_VALIDATION_SCHEME_ERROR_MSG });
|
|
97
|
+
console.error('Missing validation schema');
|
|
164
98
|
return [2 /*return*/];
|
|
165
|
-
|
|
166
|
-
|
|
99
|
+
}
|
|
100
|
+
_e.label = 6;
|
|
101
|
+
case 6:
|
|
102
|
+
_e.trys.push([6, 8, , 9]);
|
|
103
|
+
// Throws error if a field is invalid
|
|
104
|
+
return [4 /*yield*/, fieldSchema.validate(data)];
|
|
105
|
+
case 7:
|
|
106
|
+
// Throws error if a field is invalid
|
|
107
|
+
_e.sent();
|
|
108
|
+
return [3 /*break*/, 9];
|
|
109
|
+
case 8:
|
|
110
|
+
_c = _e.sent();
|
|
111
|
+
errorMessage = _c.message;
|
|
112
|
+
res.status(400);
|
|
113
|
+
res.json({ error: errorMessage });
|
|
114
|
+
res.end();
|
|
115
|
+
return [2 /*return*/];
|
|
116
|
+
case 9:
|
|
117
|
+
sanitizedDataObject = (0, helpers_1.getSanitizedObject)(data, 'encode');
|
|
118
|
+
return [4 /*yield*/, (0, api_1.createApolloClient)(api_1.ClientTypes.main, req.headers.cookie, undefined, undefined, undefined, {
|
|
119
|
+
enableStepUpMfa: options === null || options === void 0 ? void 0 : options.enableStepUpMfa,
|
|
120
|
+
})];
|
|
121
|
+
case 10:
|
|
122
|
+
apolloClient = _e.sent();
|
|
123
|
+
if (!(validationSchemaKey === validation_1.ValidationSchemaNames.password)) return [3 /*break*/, 12];
|
|
124
|
+
return [4 /*yield*/, (0, mutateHandlerHelpers_1.handlePasswordRequest)(res, apolloClient, validationSchemaKey)];
|
|
125
|
+
case 11:
|
|
126
|
+
_e.sent();
|
|
127
|
+
return [2 /*return*/];
|
|
128
|
+
case 12:
|
|
129
|
+
if (!(validationSchemaKey === validation_1.ValidationSchemaNames.postcode &&
|
|
130
|
+
sanitizedDataObject.postcode)) return [3 /*break*/, 14];
|
|
131
|
+
postcode = sanitizedDataObject.postcode;
|
|
132
|
+
return [4 /*yield*/, (0, mutateHandlerHelpers_1.handlePostcodeRequest)(res, apolloClient, postcode, validationSchemaKey)];
|
|
133
|
+
case 13:
|
|
134
|
+
_e.sent();
|
|
135
|
+
return [2 /*return*/];
|
|
136
|
+
case 14: return [4 /*yield*/, (0, mutateHandlerHelpers_1.handleMutation)(res, sanitizedDataObject, validationSchemaKey, apolloClient)];
|
|
137
|
+
case 15:
|
|
138
|
+
result = _e.sent();
|
|
139
|
+
_e.label = 16;
|
|
140
|
+
case 16:
|
|
141
|
+
try {
|
|
142
|
+
(0, mutateHandlerHelpers_1.checkResponse)(result, validationSchemaKey);
|
|
143
|
+
res.status(200);
|
|
144
|
+
res.end(JSON.stringify(result));
|
|
145
|
+
}
|
|
146
|
+
catch (err) {
|
|
147
|
+
(0, mutateHandlerHelpers_1.handleRequestError)(res, err, validationSchemaKey, data);
|
|
148
|
+
}
|
|
149
|
+
return [2 /*return*/];
|
|
150
|
+
}
|
|
167
151
|
});
|
|
168
|
-
};
|
|
152
|
+
}); };
|
|
169
153
|
exports.mutateHandler = mutateHandler;
|
|
170
154
|
//# sourceMappingURL=mutateHandler.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mutateHandler.js","sourceRoot":"","sources":["../../../src/api/mutateHandler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mutateHandler.js","sourceRoot":"","sources":["../../../src/api/mutateHandler.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,7 @@
|
|
|
1
1
|
import { NextApiRequest, NextApiResponse } from 'next';
|
|
2
2
|
import { OverrideYupSchemaType, DefaultSchemaKeysType } from '@newskit-render/validation';
|
|
3
|
-
export
|
|
3
|
+
export interface MutateHandlerOptions {
|
|
4
|
+
enableStepUpMfa?: boolean;
|
|
5
|
+
mfaGoToUrl?: string | undefined;
|
|
6
|
+
}
|
|
7
|
+
export declare const mutateHandler: (req: NextApiRequest, res: NextApiResponse, validationSchema: DefaultSchemaKeysType | OverrideYupSchemaType, options?: MutateHandlerOptions) => Promise<void>;
|
|
@@ -45,15 +45,6 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
45
45
|
}
|
|
46
46
|
return t;
|
|
47
47
|
};
|
|
48
|
-
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
49
|
-
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
50
|
-
if (ar || !(i in from)) {
|
|
51
|
-
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
52
|
-
ar[i] = from[i];
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
return to.concat(ar || Array.prototype.slice.call(from));
|
|
56
|
-
};
|
|
57
48
|
import { parse } from 'cookie';
|
|
58
49
|
import { getSanitizedObject } from '../helpers';
|
|
59
50
|
import { createApolloClient, ClientTypes } from '@newskit-render/api';
|
|
@@ -62,105 +53,98 @@ import { safeJsonParse } from '@newskit-render/shared-components';
|
|
|
62
53
|
import { MISSING_VALUE_IN_VALIDATION_SCHEME_ERROR_MSG } from '../constants';
|
|
63
54
|
import { handlePasswordRequest, handlePostcodeRequest, handleMutation, checkResponse, handleRequestError, } from './mutateHandlerHelpers';
|
|
64
55
|
import { authorizeAPi } from './authorization';
|
|
65
|
-
export var mutateHandler = function (
|
|
66
|
-
var
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
return __generator(this, function (_e) {
|
|
75
|
-
switch (_e.label) {
|
|
76
|
-
case 0:
|
|
77
|
-
if (req.method !== 'POST') {
|
|
78
|
-
res.status(405);
|
|
79
|
-
res.json({ message: "Method '".concat(req.method, "' not allowed") });
|
|
80
|
-
res.end();
|
|
81
|
-
return [2 /*return*/];
|
|
82
|
-
}
|
|
83
|
-
parsedData = safeJsonParse(req.body);
|
|
84
|
-
validationSchemaKey = parsedData.validationSchemaKey, data = __rest(parsedData, ["validationSchemaKey"]);
|
|
85
|
-
fieldSchema = validationSchema[validationSchemaKey];
|
|
86
|
-
if (!enableStepUpMfa) return [3 /*break*/, 5];
|
|
87
|
-
_a = (parse(((_d = req === null || req === void 0 ? void 0 : req.headers) === null || _d === void 0 ? void 0 : _d.cookie) || '') || {}).stepup_access_token, stepUpMfaToken = _a === void 0 ? '' : _a;
|
|
88
|
-
if (!!stepUpMfaToken) return [3 /*break*/, 4];
|
|
89
|
-
_e.label = 1;
|
|
90
|
-
case 1:
|
|
91
|
-
_e.trys.push([1, 3, , 4]);
|
|
92
|
-
return [4 /*yield*/, authorizeAPi(req, res)];
|
|
93
|
-
case 2: return [2 /*return*/, _e.sent()];
|
|
94
|
-
case 3:
|
|
95
|
-
_b = _e.sent();
|
|
96
|
-
errorMessage = _b.message;
|
|
97
|
-
res.status(400);
|
|
98
|
-
res.json({ error: errorMessage });
|
|
99
|
-
res.end();
|
|
100
|
-
return [2 /*return*/];
|
|
101
|
-
case 4:
|
|
102
|
-
res.status(200);
|
|
56
|
+
export var mutateHandler = function (req, res, validationSchema, options) { return __awaiter(void 0, void 0, void 0, function () {
|
|
57
|
+
var parsedData, validationSchemaKey, data, fieldSchema, _a, stepUpMfaToken, _b, errorMessage, _c, errorMessage, sanitizedDataObject, apolloClient, result, postcode;
|
|
58
|
+
var _d;
|
|
59
|
+
return __generator(this, function (_e) {
|
|
60
|
+
switch (_e.label) {
|
|
61
|
+
case 0:
|
|
62
|
+
if (req.method !== 'POST') {
|
|
63
|
+
res.status(405);
|
|
64
|
+
res.json({ message: "Method '".concat(req.method, "' not allowed") });
|
|
103
65
|
res.end();
|
|
104
66
|
return [2 /*return*/];
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
67
|
+
}
|
|
68
|
+
parsedData = safeJsonParse(req.body);
|
|
69
|
+
validationSchemaKey = parsedData.validationSchemaKey, data = __rest(parsedData, ["validationSchemaKey"]);
|
|
70
|
+
fieldSchema = validationSchema[validationSchemaKey];
|
|
71
|
+
if (!(options === null || options === void 0 ? void 0 : options.enableStepUpMfa)) return [3 /*break*/, 5];
|
|
72
|
+
_a = (parse(((_d = req === null || req === void 0 ? void 0 : req.headers) === null || _d === void 0 ? void 0 : _d.cookie) || '') || {}).stepup_access_token, stepUpMfaToken = _a === void 0 ? '' : _a;
|
|
73
|
+
if (!!stepUpMfaToken) return [3 /*break*/, 4];
|
|
74
|
+
_e.label = 1;
|
|
75
|
+
case 1:
|
|
76
|
+
_e.trys.push([1, 3, , 4]);
|
|
77
|
+
return [4 /*yield*/, authorizeAPi(req, res, options === null || options === void 0 ? void 0 : options.mfaGoToUrl)];
|
|
78
|
+
case 2: return [2 /*return*/, _e.sent()];
|
|
79
|
+
case 3:
|
|
80
|
+
_b = _e.sent();
|
|
81
|
+
errorMessage = _b.message;
|
|
82
|
+
res.status(400);
|
|
83
|
+
res.json({ error: errorMessage });
|
|
84
|
+
res.end();
|
|
85
|
+
return [2 /*return*/];
|
|
86
|
+
case 4:
|
|
87
|
+
res.status(200);
|
|
88
|
+
res.end();
|
|
89
|
+
return [2 /*return*/];
|
|
90
|
+
case 5:
|
|
91
|
+
if (!fieldSchema) {
|
|
124
92
|
res.status(400);
|
|
125
|
-
res.json({ error:
|
|
126
|
-
|
|
127
|
-
return [2 /*return*/];
|
|
128
|
-
case 9:
|
|
129
|
-
sanitizedDataObject = getSanitizedObject(data, 'encode');
|
|
130
|
-
return [4 /*yield*/, createApolloClient(ClientTypes.main, req.headers.cookie, undefined, undefined, undefined, {
|
|
131
|
-
enableStepUpMfa: enableStepUpMfa,
|
|
132
|
-
})];
|
|
133
|
-
case 10:
|
|
134
|
-
apolloClient = _e.sent();
|
|
135
|
-
if (!(validationSchemaKey === ValidationSchemaNames.password)) return [3 /*break*/, 12];
|
|
136
|
-
return [4 /*yield*/, handlePasswordRequest(res, apolloClient, validationSchemaKey)];
|
|
137
|
-
case 11:
|
|
138
|
-
_e.sent();
|
|
139
|
-
return [2 /*return*/];
|
|
140
|
-
case 12:
|
|
141
|
-
if (!(validationSchemaKey === ValidationSchemaNames.postcode &&
|
|
142
|
-
sanitizedDataObject.postcode)) return [3 /*break*/, 14];
|
|
143
|
-
postcode = sanitizedDataObject.postcode;
|
|
144
|
-
return [4 /*yield*/, handlePostcodeRequest(res, apolloClient, postcode, validationSchemaKey)];
|
|
145
|
-
case 13:
|
|
146
|
-
_e.sent();
|
|
147
|
-
return [2 /*return*/];
|
|
148
|
-
case 14: return [4 /*yield*/, handleMutation(res, sanitizedDataObject, validationSchemaKey, apolloClient)];
|
|
149
|
-
case 15:
|
|
150
|
-
result = _e.sent();
|
|
151
|
-
_e.label = 16;
|
|
152
|
-
case 16:
|
|
153
|
-
try {
|
|
154
|
-
checkResponse(result, validationSchemaKey);
|
|
155
|
-
res.status(200);
|
|
156
|
-
res.end(JSON.stringify(result));
|
|
157
|
-
}
|
|
158
|
-
catch (err) {
|
|
159
|
-
handleRequestError(res, err, validationSchemaKey, data);
|
|
160
|
-
}
|
|
93
|
+
res.json({ error: MISSING_VALUE_IN_VALIDATION_SCHEME_ERROR_MSG });
|
|
94
|
+
console.error('Missing validation schema');
|
|
161
95
|
return [2 /*return*/];
|
|
162
|
-
|
|
163
|
-
|
|
96
|
+
}
|
|
97
|
+
_e.label = 6;
|
|
98
|
+
case 6:
|
|
99
|
+
_e.trys.push([6, 8, , 9]);
|
|
100
|
+
// Throws error if a field is invalid
|
|
101
|
+
return [4 /*yield*/, fieldSchema.validate(data)];
|
|
102
|
+
case 7:
|
|
103
|
+
// Throws error if a field is invalid
|
|
104
|
+
_e.sent();
|
|
105
|
+
return [3 /*break*/, 9];
|
|
106
|
+
case 8:
|
|
107
|
+
_c = _e.sent();
|
|
108
|
+
errorMessage = _c.message;
|
|
109
|
+
res.status(400);
|
|
110
|
+
res.json({ error: errorMessage });
|
|
111
|
+
res.end();
|
|
112
|
+
return [2 /*return*/];
|
|
113
|
+
case 9:
|
|
114
|
+
sanitizedDataObject = getSanitizedObject(data, 'encode');
|
|
115
|
+
return [4 /*yield*/, createApolloClient(ClientTypes.main, req.headers.cookie, undefined, undefined, undefined, {
|
|
116
|
+
enableStepUpMfa: options === null || options === void 0 ? void 0 : options.enableStepUpMfa,
|
|
117
|
+
})];
|
|
118
|
+
case 10:
|
|
119
|
+
apolloClient = _e.sent();
|
|
120
|
+
if (!(validationSchemaKey === ValidationSchemaNames.password)) return [3 /*break*/, 12];
|
|
121
|
+
return [4 /*yield*/, handlePasswordRequest(res, apolloClient, validationSchemaKey)];
|
|
122
|
+
case 11:
|
|
123
|
+
_e.sent();
|
|
124
|
+
return [2 /*return*/];
|
|
125
|
+
case 12:
|
|
126
|
+
if (!(validationSchemaKey === ValidationSchemaNames.postcode &&
|
|
127
|
+
sanitizedDataObject.postcode)) return [3 /*break*/, 14];
|
|
128
|
+
postcode = sanitizedDataObject.postcode;
|
|
129
|
+
return [4 /*yield*/, handlePostcodeRequest(res, apolloClient, postcode, validationSchemaKey)];
|
|
130
|
+
case 13:
|
|
131
|
+
_e.sent();
|
|
132
|
+
return [2 /*return*/];
|
|
133
|
+
case 14: return [4 /*yield*/, handleMutation(res, sanitizedDataObject, validationSchemaKey, apolloClient)];
|
|
134
|
+
case 15:
|
|
135
|
+
result = _e.sent();
|
|
136
|
+
_e.label = 16;
|
|
137
|
+
case 16:
|
|
138
|
+
try {
|
|
139
|
+
checkResponse(result, validationSchemaKey);
|
|
140
|
+
res.status(200);
|
|
141
|
+
res.end(JSON.stringify(result));
|
|
142
|
+
}
|
|
143
|
+
catch (err) {
|
|
144
|
+
handleRequestError(res, err, validationSchemaKey, data);
|
|
145
|
+
}
|
|
146
|
+
return [2 /*return*/];
|
|
147
|
+
}
|
|
164
148
|
});
|
|
165
|
-
};
|
|
149
|
+
}); };
|
|
166
150
|
//# sourceMappingURL=mutateHandler.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mutateHandler.js","sourceRoot":"","sources":["../../../src/api/mutateHandler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mutateHandler.js","sourceRoot":"","sources":["../../../src/api/mutateHandler.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@newskit-render/my-account",
|
|
3
|
-
"version": "7.110.
|
|
3
|
+
"version": "7.110.3",
|
|
4
4
|
"description": "Newskit Render",
|
|
5
5
|
"author": "",
|
|
6
6
|
"license": "UNLICENSED",
|
|
@@ -33,9 +33,9 @@
|
|
|
33
33
|
"@emotion/react": "11.9.3",
|
|
34
34
|
"@emotion/styled": "11.9.3",
|
|
35
35
|
"@hookform/resolvers": "2.9.10",
|
|
36
|
-
"@newskit-render/api": "^1.16.
|
|
37
|
-
"@newskit-render/shared-components": "^4.47.
|
|
38
|
-
"@newskit-render/validation": "^1.19.
|
|
36
|
+
"@newskit-render/api": "^1.16.8",
|
|
37
|
+
"@newskit-render/shared-components": "^4.47.17",
|
|
38
|
+
"@newskit-render/validation": "^1.19.24",
|
|
39
39
|
"@stripe/react-stripe-js": "2.1.1",
|
|
40
40
|
"@stripe/stripe-js": "1.54.1",
|
|
41
41
|
"cross-fetch": "3.1.5",
|