@dwp/govuk-casa 8.15.0 → 9.1.0
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/README.md +9 -9
- package/dist/assets/css/casa.css +2 -1
- package/dist/assets/css/casa.css.map +1 -0
- package/dist/casa.d.ts +122 -99
- package/dist/casa.js +120 -88
- package/dist/casa.js.map +1 -1
- package/dist/lib/CasaTemplateLoader.d.ts +4 -4
- package/dist/lib/CasaTemplateLoader.js +16 -16
- package/dist/lib/CasaTemplateLoader.js.map +1 -1
- package/dist/lib/JourneyContext.d.ts +38 -40
- package/dist/lib/JourneyContext.js +89 -75
- package/dist/lib/JourneyContext.js.map +1 -1
- package/dist/lib/MutableRouter.d.ts +40 -41
- package/dist/lib/MutableRouter.js +64 -71
- package/dist/lib/MutableRouter.js.map +1 -1
- package/dist/lib/Plan.d.ts +29 -26
- package/dist/lib/Plan.js +85 -71
- package/dist/lib/Plan.js.map +1 -1
- package/dist/lib/ValidationError.d.ts +16 -15
- package/dist/lib/ValidationError.js +21 -20
- package/dist/lib/ValidationError.js.map +1 -1
- package/dist/lib/ValidatorFactory.d.ts +15 -13
- package/dist/lib/ValidatorFactory.js +14 -12
- package/dist/lib/ValidatorFactory.js.map +1 -1
- package/dist/lib/configuration-ingestor.d.ts +37 -40
- package/dist/lib/configuration-ingestor.js +93 -93
- package/dist/lib/configuration-ingestor.js.map +1 -1
- package/dist/lib/configure.d.ts +6 -6
- package/dist/lib/configure.js +14 -12
- package/dist/lib/configure.js.map +1 -1
- package/dist/lib/constants.d.ts +1 -3
- package/dist/lib/constants.js +9 -11
- package/dist/lib/constants.js.map +1 -1
- package/dist/lib/context-id-generators.d.ts +3 -5
- package/dist/lib/context-id-generators.js +7 -6
- package/dist/lib/context-id-generators.js.map +1 -1
- package/dist/lib/end-session.d.ts +4 -4
- package/dist/lib/end-session.js +5 -5
- package/dist/lib/field.d.ts +24 -29
- package/dist/lib/field.js +41 -70
- package/dist/lib/field.js.map +1 -1
- package/dist/lib/index.d.ts +13 -13
- package/dist/lib/logger.d.ts +7 -6
- package/dist/lib/logger.js +7 -7
- package/dist/lib/logger.js.map +1 -1
- package/dist/lib/mount.d.ts +5 -5
- package/dist/lib/mount.js +12 -17
- package/dist/lib/mount.js.map +1 -1
- package/dist/lib/nunjucks-filters.d.ts +10 -12
- package/dist/lib/nunjucks-filters.js +35 -35
- package/dist/lib/nunjucks-filters.js.map +1 -1
- package/dist/lib/nunjucks.d.ts +7 -5
- package/dist/lib/nunjucks.js +10 -8
- package/dist/lib/nunjucks.js.map +1 -1
- package/dist/lib/utils.d.ts +19 -19
- package/dist/lib/utils.js +62 -55
- package/dist/lib/utils.js.map +1 -1
- package/dist/lib/validators/dateObject.d.ts +29 -22
- package/dist/lib/validators/dateObject.js +58 -49
- package/dist/lib/validators/dateObject.js.map +1 -1
- package/dist/lib/validators/email.d.ts +4 -4
- package/dist/lib/validators/email.js +4 -4
- package/dist/lib/validators/inArray.d.ts +4 -4
- package/dist/lib/validators/inArray.js +7 -8
- package/dist/lib/validators/inArray.js.map +1 -1
- package/dist/lib/validators/index.d.ts +10 -10
- package/dist/lib/validators/index.js +1 -3
- package/dist/lib/validators/index.js.map +1 -1
- package/dist/lib/validators/nino.d.ts +9 -8
- package/dist/lib/validators/nino.js +14 -10
- package/dist/lib/validators/nino.js.map +1 -1
- package/dist/lib/validators/postalAddressObject.d.ts +37 -24
- package/dist/lib/validators/postalAddressObject.js +65 -46
- package/dist/lib/validators/postalAddressObject.js.map +1 -1
- package/dist/lib/validators/range.d.ts +12 -8
- package/dist/lib/validators/range.js +11 -9
- package/dist/lib/validators/range.js.map +1 -1
- package/dist/lib/validators/regex.d.ts +4 -4
- package/dist/lib/validators/regex.js +5 -5
- package/dist/lib/validators/required.d.ts +6 -6
- package/dist/lib/validators/required.js +9 -11
- package/dist/lib/validators/required.js.map +1 -1
- package/dist/lib/validators/strlen.d.ts +12 -8
- package/dist/lib/validators/strlen.js +13 -11
- package/dist/lib/validators/strlen.js.map +1 -1
- package/dist/lib/validators/wordCount.d.ts +12 -8
- package/dist/lib/validators/wordCount.js +15 -11
- package/dist/lib/validators/wordCount.js.map +1 -1
- package/dist/lib/waypoint-url.d.ts +16 -13
- package/dist/lib/waypoint-url.js +39 -36
- package/dist/lib/waypoint-url.js.map +1 -1
- package/dist/middleware/body-parser.d.ts +1 -1
- package/dist/middleware/body-parser.js +6 -6
- package/dist/middleware/body-parser.js.map +1 -1
- package/dist/middleware/data.d.ts +1 -1
- package/dist/middleware/data.js +8 -7
- package/dist/middleware/data.js.map +1 -1
- package/dist/middleware/gather-fields.d.ts +2 -2
- package/dist/middleware/gather-fields.js +6 -4
- package/dist/middleware/gather-fields.js.map +1 -1
- package/dist/middleware/i18n.js +13 -15
- package/dist/middleware/i18n.js.map +1 -1
- package/dist/middleware/post.js +30 -18
- package/dist/middleware/post.js.map +1 -1
- package/dist/middleware/pre.d.ts +2 -2
- package/dist/middleware/pre.js +46 -26
- package/dist/middleware/pre.js.map +1 -1
- package/dist/middleware/progress-journey.d.ts +1 -1
- package/dist/middleware/progress-journey.js +5 -5
- package/dist/middleware/progress-journey.js.map +1 -1
- package/dist/middleware/sanitise-fields.d.ts +1 -1
- package/dist/middleware/sanitise-fields.js +13 -11
- package/dist/middleware/sanitise-fields.js.map +1 -1
- package/dist/middleware/serve-first-waypoint.d.ts +3 -3
- package/dist/middleware/serve-first-waypoint.js +8 -6
- package/dist/middleware/serve-first-waypoint.js.map +1 -1
- package/dist/middleware/session.js +14 -11
- package/dist/middleware/session.js.map +1 -1
- package/dist/middleware/skip-waypoint.d.ts +1 -1
- package/dist/middleware/skip-waypoint.js +3 -3
- package/dist/middleware/skip-waypoint.js.map +1 -1
- package/dist/middleware/steer-journey.d.ts +1 -1
- package/dist/middleware/steer-journey.js +16 -14
- package/dist/middleware/steer-journey.js.map +1 -1
- package/dist/middleware/strip-proxy-path.d.ts +1 -1
- package/dist/middleware/strip-proxy-path.js +3 -3
- package/dist/middleware/strip-proxy-path.js.map +1 -1
- package/dist/middleware/validate-fields.d.ts +1 -1
- package/dist/middleware/validate-fields.js +2 -5
- package/dist/middleware/validate-fields.js.map +1 -1
- package/dist/routes/ancillary.d.ts +3 -3
- package/dist/routes/ancillary.js +4 -4
- package/dist/routes/ancillary.js.map +1 -1
- package/dist/routes/journey.d.ts +2 -2
- package/dist/routes/journey.js +91 -39
- package/dist/routes/journey.js.map +1 -1
- package/dist/routes/static.d.ts +7 -5
- package/dist/routes/static.js +20 -20
- package/dist/routes/static.js.map +1 -1
- package/package.json +17 -16
- package/src/casa.js +134 -102
- package/src/lib/CasaTemplateLoader.js +24 -19
- package/src/lib/JourneyContext.js +147 -107
- package/src/lib/MutableRouter.js +72 -74
- package/src/lib/Plan.js +145 -97
- package/src/lib/ValidationError.js +25 -21
- package/src/lib/ValidatorFactory.js +17 -13
- package/src/lib/configuration-ingestor.js +147 -110
- package/src/lib/configure.js +34 -32
- package/src/lib/constants.js +9 -11
- package/src/lib/context-id-generators.js +40 -43
- package/src/lib/end-session.js +6 -6
- package/src/lib/field.js +74 -78
- package/src/lib/index.js +12 -12
- package/src/lib/logger.js +9 -9
- package/src/lib/mount.js +70 -80
- package/src/lib/nunjucks-filters.js +56 -59
- package/src/lib/nunjucks.js +23 -18
- package/src/lib/utils.js +78 -57
- package/src/lib/validators/dateObject.js +71 -60
- package/src/lib/validators/email.js +8 -8
- package/src/lib/validators/inArray.js +10 -11
- package/src/lib/validators/index.js +12 -14
- package/src/lib/validators/nino.js +29 -15
- package/src/lib/validators/postalAddressObject.js +87 -63
- package/src/lib/validators/range.js +14 -12
- package/src/lib/validators/regex.js +8 -8
- package/src/lib/validators/required.js +16 -16
- package/src/lib/validators/strlen.js +16 -14
- package/src/lib/validators/wordCount.js +22 -14
- package/src/lib/waypoint-url.js +64 -46
- package/src/middleware/body-parser.js +10 -10
- package/src/middleware/csrf.js +1 -1
- package/src/middleware/data.js +28 -24
- package/src/middleware/gather-fields.js +10 -9
- package/src/middleware/i18n.js +35 -37
- package/src/middleware/post.js +41 -21
- package/src/middleware/pre.js +62 -40
- package/src/middleware/progress-journey.js +32 -18
- package/src/middleware/sanitise-fields.js +43 -20
- package/src/middleware/serve-first-waypoint.js +14 -12
- package/src/middleware/session.js +74 -61
- package/src/middleware/skip-waypoint.js +7 -9
- package/src/middleware/steer-journey.js +40 -28
- package/src/middleware/strip-proxy-path.js +8 -7
- package/src/middleware/validate-fields.js +5 -12
- package/src/routes/ancillary.js +5 -7
- package/src/routes/journey.js +159 -85
- package/src/routes/static.js +62 -30
- package/views/casa/components/character-count/README.md +2 -2
- package/views/casa/components/checkboxes/README.md +6 -6
- package/views/casa/components/date-input/README.md +7 -7
- package/views/casa/components/input/README.md +2 -2
- package/views/casa/components/journey-form/README.md +33 -14
- package/views/casa/components/postal-address-object/README.md +4 -4
- package/views/casa/components/radios/README.md +6 -6
- package/views/casa/components/select/README.md +6 -6
- package/views/casa/components/textarea/README.md +2 -2
- package/views/casa/partials/scripts.njk +5 -3
- package/views/casa/partials/styles.njk +1 -4
- package/dist/assets/css/casa-ie8.css +0 -1
|
@@ -40,51 +40,51 @@ const ValidationError_js_1 = __importDefault(require("./ValidationError.js"));
|
|
|
40
40
|
const logger_js_1 = __importDefault(require("./logger.js"));
|
|
41
41
|
const utils_js_1 = require("./utils.js");
|
|
42
42
|
const context_id_generators_js_1 = require("./context-id-generators.js");
|
|
43
|
-
const { isPlainObject, isObject, has, isEqual
|
|
44
|
-
const log = (0, logger_js_1.default)(
|
|
43
|
+
const { isPlainObject, isObject, has, isEqual } = lodash_1.default; // CommonJS
|
|
44
|
+
const log = (0, logger_js_1.default)("lib:journey-context");
|
|
45
45
|
const uuid = (0, context_id_generators_js_1.uuid)();
|
|
46
46
|
/**
|
|
47
|
+
* @typedef {import("../casa").ContextEventUserInfo} ContextEventUserInfo
|
|
47
48
|
* @access private
|
|
48
|
-
* @typedef {import('../casa').ContextEventUserInfo} ContextEventUserInfo
|
|
49
49
|
*/
|
|
50
50
|
/**
|
|
51
|
+
* @typedef {import("../casa").Page} Page
|
|
51
52
|
* @access private
|
|
52
|
-
* @typedef {import('../casa').Page} Page
|
|
53
53
|
*/
|
|
54
54
|
/**
|
|
55
|
+
* @typedef {import("../casa").ContextEventHandler} ContextEventHandler
|
|
55
56
|
* @access private
|
|
56
|
-
* @typedef {import('../casa').ContextEventHandler} ContextEventHandler
|
|
57
57
|
*/
|
|
58
58
|
/**
|
|
59
|
+
* @typedef {import("../casa").ContextEvent} ContextEvent
|
|
59
60
|
* @access private
|
|
60
|
-
* @typedef {import('../casa').ContextEvent} ContextEvent
|
|
61
61
|
*/
|
|
62
62
|
/**
|
|
63
|
+
* @typedef {import("../casa").JourneyContextObject} JourneyContextObject
|
|
63
64
|
* @access private
|
|
64
|
-
* @typedef {import('../casa').JourneyContextObject} JourneyContextObject
|
|
65
65
|
*/
|
|
66
66
|
/**
|
|
67
|
+
* @typedef {import("express").Request} ExpressRequest
|
|
67
68
|
* @access private
|
|
68
|
-
* @typedef {import('express').Request} ExpressRequest
|
|
69
69
|
*/
|
|
70
|
-
function validateObjectKey(key =
|
|
70
|
+
function validateObjectKey(key = "") {
|
|
71
71
|
const keyLower = String.prototype.toLowerCase.call(key);
|
|
72
|
-
if (keyLower ===
|
|
72
|
+
if (keyLower === "prototype" ||
|
|
73
|
+
keyLower === "__proto__" ||
|
|
74
|
+
keyLower === "constructor") {
|
|
73
75
|
throw new SyntaxError(`Invalid object key used, ${key}`);
|
|
74
76
|
}
|
|
75
77
|
return String(key);
|
|
76
78
|
}
|
|
77
79
|
exports.validateObjectKey = validateObjectKey;
|
|
78
|
-
/**
|
|
79
|
-
* @memberof module:@dwp/govuk-casa
|
|
80
|
-
*/
|
|
80
|
+
/** @memberof module:@dwp/govuk-casa */
|
|
81
81
|
class JourneyContext {
|
|
82
82
|
/**
|
|
83
83
|
* Constructor.
|
|
84
84
|
*
|
|
85
85
|
* `data` is the "single source of truth" for all data gathered during the
|
|
86
86
|
* user's journey. This is referred to as the "canonical data model".
|
|
87
|
-
*
|
|
87
|
+
* Page-specific "views" of this data are generated at runtime in order to
|
|
88
88
|
* populate/validate specific form fields.
|
|
89
89
|
*
|
|
90
90
|
* `validation` holds the results of form field validation carried out when
|
|
@@ -97,10 +97,11 @@ class JourneyContext {
|
|
|
97
97
|
* `identity` holds information that helps uniquely identify this context
|
|
98
98
|
* among a group of contexts stored in the session.
|
|
99
99
|
*
|
|
100
|
-
* @param {Record<string,any>} data Entire journey data.
|
|
100
|
+
* @param {Record<string, any>} data Entire journey data.
|
|
101
101
|
* @param {object} validation Page errors (indexed by waypoint id).
|
|
102
102
|
* @param {object} nav Navigation context.
|
|
103
|
-
* @param {object} identity Some metadata for identifying this context among
|
|
103
|
+
* @param {object} identity Some metadata for identifying this context among
|
|
104
|
+
* others.
|
|
104
105
|
*/
|
|
105
106
|
constructor(data = {}, validation = {}, nav = {}, identity = {}) {
|
|
106
107
|
// Private properties
|
|
@@ -143,7 +144,7 @@ class JourneyContext {
|
|
|
143
144
|
for (const [waypoint, errors] of Object.entries(validation)) {
|
|
144
145
|
let dErrors = errors;
|
|
145
146
|
if (Array.isArray(errors)) {
|
|
146
|
-
dErrors = errors.map((e) =>
|
|
147
|
+
dErrors = errors.map((e) => e instanceof ValidationError_js_1.default ? e : new ValidationError_js_1.default(e));
|
|
147
148
|
}
|
|
148
149
|
deserialisedValidation[(0, utils_js_1.notProto)(waypoint)] = dErrors;
|
|
149
150
|
}
|
|
@@ -167,12 +168,12 @@ class JourneyContext {
|
|
|
167
168
|
/**
|
|
168
169
|
* Get data context for a specific a specific page.
|
|
169
170
|
*
|
|
170
|
-
* @param
|
|
171
|
+
* @param {string | Page} page Page waypoint ID, or Page object.
|
|
171
172
|
* @returns {object} Page data.
|
|
172
173
|
* @throws {TypeError} When page is invalid.
|
|
173
174
|
*/
|
|
174
175
|
getDataForPage(page) {
|
|
175
|
-
if (typeof page ===
|
|
176
|
+
if (typeof page === "string") {
|
|
176
177
|
return __classPrivateFieldGet(this, _JourneyContext_data, "f")[validateObjectKey(page)];
|
|
177
178
|
}
|
|
178
179
|
if (isPlainObject(page)) {
|
|
@@ -207,7 +208,7 @@ class JourneyContext {
|
|
|
207
208
|
* @throws {TypeError} When page is invalid.
|
|
208
209
|
*/
|
|
209
210
|
setDataForPage(page, webFormData) {
|
|
210
|
-
if (typeof page ===
|
|
211
|
+
if (typeof page === "string") {
|
|
211
212
|
__classPrivateFieldGet(this, _JourneyContext_data, "f")[validateObjectKey(page)] = webFormData;
|
|
212
213
|
}
|
|
213
214
|
else if (isPlainObject(page)) {
|
|
@@ -267,7 +268,7 @@ class JourneyContext {
|
|
|
267
268
|
}
|
|
268
269
|
errors.forEach((error) => {
|
|
269
270
|
if (!(error instanceof ValidationError_js_1.default)) {
|
|
270
|
-
throw new SyntaxError(
|
|
271
|
+
throw new SyntaxError("Field errors must be a ValidationError");
|
|
271
272
|
}
|
|
272
273
|
});
|
|
273
274
|
__classPrivateFieldGet(this, _JourneyContext_validation, "f")[validateObjectKey(pageId)] = errors;
|
|
@@ -285,12 +286,13 @@ class JourneyContext {
|
|
|
285
286
|
return (_a = __classPrivateFieldGet(this, _JourneyContext_validation, "f")[validateObjectKey(pageId)]) !== null && _a !== void 0 ? _a : [];
|
|
286
287
|
}
|
|
287
288
|
/**
|
|
288
|
-
* Same as `getValidationErrorsForPage()`, but the return value is
|
|
289
|
-
*
|
|
289
|
+
* Same as `getValidationErrorsForPage()`, but the return value is an object
|
|
290
|
+
* whose keys are the field names, and values are the list of errors
|
|
290
291
|
* associated with that particular field.
|
|
291
292
|
*
|
|
292
293
|
* @param {string} pageId Page ID.
|
|
293
|
-
* @returns {object} Object indexed by field names; values containing list of
|
|
294
|
+
* @returns {object} Object indexed by field names; values containing list of
|
|
295
|
+
* errors
|
|
294
296
|
*/
|
|
295
297
|
getValidationErrorsForPageByField(pageId) {
|
|
296
298
|
const errors = this.getValidationErrorsForPage(pageId);
|
|
@@ -323,7 +325,7 @@ class JourneyContext {
|
|
|
323
325
|
* @param {string} language Language to set (ISO 639-1 2-letter code).
|
|
324
326
|
* @returns {JourneyContext} Chain.
|
|
325
327
|
*/
|
|
326
|
-
setNavigationLanguage(language =
|
|
328
|
+
setNavigationLanguage(language = "en") {
|
|
327
329
|
__classPrivateFieldGet(this, _JourneyContext_nav, "f").language = language;
|
|
328
330
|
return this;
|
|
329
331
|
}
|
|
@@ -370,8 +372,8 @@ class JourneyContext {
|
|
|
370
372
|
}
|
|
371
373
|
}
|
|
372
374
|
/**
|
|
373
|
-
* Event listeners are transient. They are not stored in session, and
|
|
374
|
-
* only apply for the current request.
|
|
375
|
+
* Event listeners are transient. They are not stored in session, and
|
|
376
|
+
* generally only apply for the current request.
|
|
375
377
|
*
|
|
376
378
|
* They also only act on a fixed snapshot of this context's state, which is
|
|
377
379
|
* taken at the point of attaching the listeners (in the "data" middleware).
|
|
@@ -395,7 +397,7 @@ class JourneyContext {
|
|
|
395
397
|
* @param {object} params Params
|
|
396
398
|
* @param {string} params.event Event (waypoint-change | context-change)
|
|
397
399
|
* @param {object} params.session Session
|
|
398
|
-
* @param {ContextEventUserInfo|object} [params.userInfo] Pass-through info
|
|
400
|
+
* @param {ContextEventUserInfo | object} [params.userInfo] Pass-through info
|
|
399
401
|
* @returns {JourneyContext} Chain
|
|
400
402
|
*/
|
|
401
403
|
applyEventListeners({ event, session, userInfo }) {
|
|
@@ -414,16 +416,20 @@ class JourneyContext {
|
|
|
414
416
|
let logMessage;
|
|
415
417
|
let runHandler = false;
|
|
416
418
|
if (!waypoint && !field) {
|
|
417
|
-
logMessage =
|
|
419
|
+
logMessage = "Calling generic event handler";
|
|
418
420
|
runHandler = true;
|
|
419
421
|
}
|
|
420
422
|
else if (waypoint && !field) {
|
|
421
423
|
logMessage = `Calling waypoint-specific event handler on "${waypoint}"`;
|
|
422
|
-
runHandler =
|
|
424
|
+
runHandler =
|
|
425
|
+
((_a = previousContext.data) === null || _a === void 0 ? void 0 : _a[waypoint]) !== undefined &&
|
|
426
|
+
!isEqual((_b = this.data) === null || _b === void 0 ? void 0 : _b[waypoint], (_c = previousContext.data) === null || _c === void 0 ? void 0 : _c[waypoint]);
|
|
423
427
|
}
|
|
424
428
|
else if (waypoint && field) {
|
|
425
429
|
logMessage = `Calling field-specific event handler on "${waypoint} : ${field}"`;
|
|
426
|
-
runHandler =
|
|
430
|
+
runHandler =
|
|
431
|
+
((_e = (_d = previousContext.data) === null || _d === void 0 ? void 0 : _d[waypoint]) === null || _e === void 0 ? void 0 : _e[field]) !== undefined &&
|
|
432
|
+
!isEqual((_g = (_f = this.data) === null || _f === void 0 ? void 0 : _f[waypoint]) === null || _g === void 0 ? void 0 : _g[field], (_j = (_h = previousContext.data) === null || _h === void 0 ? void 0 : _h[waypoint]) === null || _j === void 0 ? void 0 : _j[field]);
|
|
427
433
|
}
|
|
428
434
|
if (runHandler) {
|
|
429
435
|
log.trace(logMessage);
|
|
@@ -466,7 +472,7 @@ class JourneyContext {
|
|
|
466
472
|
*/
|
|
467
473
|
static fromContext(context, req) {
|
|
468
474
|
if (!(context instanceof JourneyContext)) {
|
|
469
|
-
throw new TypeError(
|
|
475
|
+
throw new TypeError("Source context must be a JourneyContext");
|
|
470
476
|
}
|
|
471
477
|
const newContextObj = context.toObject();
|
|
472
478
|
newContextObj.identity.id = JourneyContext.generateContextId(req);
|
|
@@ -491,13 +497,13 @@ class JourneyContext {
|
|
|
491
497
|
// being remodelled as an array, we need to convert the "legacy" structure
|
|
492
498
|
// into an equivalent array.
|
|
493
499
|
if (isPlainObject(session === null || session === void 0 ? void 0 : session.journeyContextList)) {
|
|
494
|
-
log.trace(
|
|
500
|
+
log.trace("Session context list already initialised as an object (legacy structure). Will convert from object to array.");
|
|
495
501
|
/* eslint-disable-next-line no-param-reassign */
|
|
496
502
|
session.journeyContextList = Object.entries(session.journeyContextList);
|
|
497
503
|
}
|
|
498
504
|
// Initialise new context list in the session
|
|
499
|
-
if (!has(session,
|
|
500
|
-
log.trace(
|
|
505
|
+
if (!has(session, "journeyContextList")) {
|
|
506
|
+
log.trace("Initialising session with a default journey context list");
|
|
501
507
|
/* eslint-disable-next-line no-param-reassign */
|
|
502
508
|
session.journeyContextList = [];
|
|
503
509
|
const defaultContext = new JourneyContext();
|
|
@@ -507,6 +513,7 @@ class JourneyContext {
|
|
|
507
513
|
}
|
|
508
514
|
/**
|
|
509
515
|
* Validate the format of a context ID:
|
|
516
|
+
*
|
|
510
517
|
* - Between 1 and 64 characters
|
|
511
518
|
* - Contain only the characters a-z, 0-9, -
|
|
512
519
|
*
|
|
@@ -519,17 +526,17 @@ class JourneyContext {
|
|
|
519
526
|
if (id === JourneyContext.DEFAULT_CONTEXT_ID) {
|
|
520
527
|
return JourneyContext.DEFAULT_CONTEXT_ID;
|
|
521
528
|
}
|
|
522
|
-
if (typeof id !==
|
|
523
|
-
throw new TypeError(
|
|
529
|
+
if (typeof id !== "string") {
|
|
530
|
+
throw new TypeError("Context ID must be a string");
|
|
524
531
|
}
|
|
525
532
|
else if (!id.match(/^[a-z0-9-]{1,64}$/)) {
|
|
526
|
-
throw new SyntaxError(
|
|
533
|
+
throw new SyntaxError("Context ID is not in the correct format");
|
|
527
534
|
}
|
|
528
535
|
return id;
|
|
529
536
|
}
|
|
530
537
|
/**
|
|
531
|
-
* Generate a new context ID, validate it, and throw if the ID has already
|
|
532
|
-
* generated during this request lifecycle. This may happen if an ID was
|
|
538
|
+
* Generate a new context ID, validate it, and throw if the ID has already
|
|
539
|
+
* been generated during this request lifecycle. This may happen if an ID was
|
|
533
540
|
* generated, but never used to store a new context in the session. Therefore
|
|
534
541
|
* it is important for user code to always call `putContext()` before
|
|
535
542
|
* generating another ID.
|
|
@@ -543,8 +550,16 @@ class JourneyContext {
|
|
|
543
550
|
// Can't generate custom ID when no request object is provided, because the
|
|
544
551
|
// custom generator function itself exists on that object.
|
|
545
552
|
if (!req) {
|
|
546
|
-
|
|
547
|
-
|
|
553
|
+
throw new Error("Missing required request object.");
|
|
554
|
+
}
|
|
555
|
+
// Define a default context ID generator if required
|
|
556
|
+
if (!Object.hasOwn(req, JourneyContext.ID_GENERATOR_REQ_KEY)) {
|
|
557
|
+
log.warn("A context ID generator is not present in the request. Reverting to uuid().");
|
|
558
|
+
Object.defineProperty(req, JourneyContext.ID_GENERATOR_REQ_KEY, {
|
|
559
|
+
value: uuid,
|
|
560
|
+
enumerable: false,
|
|
561
|
+
writable: false,
|
|
562
|
+
});
|
|
548
563
|
}
|
|
549
564
|
// Collate a list of context IDs already in use, either from existing
|
|
550
565
|
// contexts in the session, or generated during this request lifecycle.
|
|
@@ -606,7 +621,7 @@ class JourneyContext {
|
|
|
606
621
|
static getContextByName(session, name) {
|
|
607
622
|
if (session) {
|
|
608
623
|
const list = new Map(session === null || session === void 0 ? void 0 : session.journeyContextList);
|
|
609
|
-
const context = [...list.values()].find((c) =>
|
|
624
|
+
const context = [...list.values()].find((c) => c.identity.name === name);
|
|
610
625
|
if (context) {
|
|
611
626
|
return JourneyContext.fromObject(context);
|
|
612
627
|
}
|
|
@@ -618,12 +633,14 @@ class JourneyContext {
|
|
|
618
633
|
*
|
|
619
634
|
* @param {object} session Request session
|
|
620
635
|
* @param {string} tag Context tag
|
|
621
|
-
* @returns {
|
|
636
|
+
* @returns {JourneyContext[]} The discovered JourneyContext instance
|
|
622
637
|
*/
|
|
623
638
|
static getContextsByTag(session, tag) {
|
|
624
639
|
if (session) {
|
|
625
640
|
const list = new Map(session === null || session === void 0 ? void 0 : session.journeyContextList);
|
|
626
|
-
return [...list.values()]
|
|
641
|
+
return [...list.values()]
|
|
642
|
+
.filter((c) => { var _a; return (_a = c.identity.tags) === null || _a === void 0 ? void 0 : _a.includes(tag); })
|
|
643
|
+
.map((c) => JourneyContext.fromObject(c));
|
|
627
644
|
}
|
|
628
645
|
return undefined;
|
|
629
646
|
}
|
|
@@ -634,8 +651,8 @@ class JourneyContext {
|
|
|
634
651
|
* @returns {Array} Array of contexts
|
|
635
652
|
*/
|
|
636
653
|
static getContexts(session) {
|
|
637
|
-
if (has(session,
|
|
638
|
-
return session.journeyContextList.map(([, contextObj]) =>
|
|
654
|
+
if (has(session, "journeyContextList")) {
|
|
655
|
+
return session.journeyContextList.map(([, contextObj]) => JourneyContext.fromObject(contextObj));
|
|
639
656
|
}
|
|
640
657
|
return [];
|
|
641
658
|
}
|
|
@@ -645,33 +662,34 @@ class JourneyContext {
|
|
|
645
662
|
* @param {object} session Request session
|
|
646
663
|
* @param {JourneyContext} context Context
|
|
647
664
|
* @param {object} options Options
|
|
648
|
-
* @param {ContextEventUserInfo|object} [options.userInfo] Pass-through
|
|
665
|
+
* @param {ContextEventUserInfo | object} [options.userInfo] Pass-through
|
|
666
|
+
* event info
|
|
649
667
|
* @returns {void}
|
|
650
668
|
* @throws {TypeError} When session is not a valid type, or context has no ID
|
|
651
669
|
*/
|
|
652
670
|
static putContext(session, context, options = {}) {
|
|
653
671
|
if (!isObject(session)) {
|
|
654
|
-
throw new TypeError(
|
|
672
|
+
throw new TypeError("Session must be an object");
|
|
655
673
|
}
|
|
656
674
|
else if (!(context instanceof JourneyContext)) {
|
|
657
|
-
throw new TypeError(
|
|
675
|
+
throw new TypeError("Context must be a valid JourneyContext");
|
|
658
676
|
}
|
|
659
677
|
else if (context.identity.id === undefined) {
|
|
660
|
-
throw new TypeError(
|
|
678
|
+
throw new TypeError("Context must have an ID before storing in session");
|
|
661
679
|
}
|
|
662
680
|
// Initialise the session if necessary
|
|
663
|
-
if (!has(session,
|
|
681
|
+
if (!has(session, "journeyContextList")) {
|
|
664
682
|
JourneyContext.initContextStore(session);
|
|
665
683
|
}
|
|
666
684
|
// Apply context events
|
|
667
685
|
const { userInfo = undefined } = options;
|
|
668
686
|
context.applyEventListeners({
|
|
669
|
-
event:
|
|
687
|
+
event: "waypoint-change",
|
|
670
688
|
session,
|
|
671
689
|
userInfo,
|
|
672
690
|
});
|
|
673
691
|
context.applyEventListeners({
|
|
674
|
-
event:
|
|
692
|
+
event: "context-change",
|
|
675
693
|
session,
|
|
676
694
|
userInfo,
|
|
677
695
|
});
|
|
@@ -738,9 +756,9 @@ class JourneyContext {
|
|
|
738
756
|
/**
|
|
739
757
|
* Extract the Journey Context referred to in the incoming request.
|
|
740
758
|
*
|
|
741
|
-
* This will look in `req.params`, `req.query` and
|
|
742
|
-
* `
|
|
743
|
-
*
|
|
759
|
+
* This will look in `req.params`, `req.query` and `req.body` for a
|
|
760
|
+
* `contextid` parameter, and use that to load the correct Journey Context
|
|
761
|
+
* from the session.
|
|
744
762
|
*
|
|
745
763
|
* @param {ExpressRequest} req ExpressJS incoming request
|
|
746
764
|
* @returns {JourneyContext} The Journey Context
|
|
@@ -748,46 +766,42 @@ class JourneyContext {
|
|
|
748
766
|
static extractContextFromRequest(req) {
|
|
749
767
|
JourneyContext.initContextStore(req.session);
|
|
750
768
|
let contextId;
|
|
751
|
-
if (has(req === null || req === void 0 ? void 0 : req.params,
|
|
752
|
-
log.trace(
|
|
769
|
+
if (has(req === null || req === void 0 ? void 0 : req.params, "contextid")) {
|
|
770
|
+
log.trace("Context ID found in req.params.contextid");
|
|
753
771
|
contextId = String(req.params.contextid);
|
|
754
772
|
}
|
|
755
|
-
else if (has(req.query,
|
|
756
|
-
log.trace(
|
|
773
|
+
else if (has(req.query, "contextid")) {
|
|
774
|
+
log.trace("Context ID found in req.query.contextid");
|
|
757
775
|
contextId = String(req.query.contextid);
|
|
758
776
|
}
|
|
759
|
-
else if (has(req === null || req === void 0 ? void 0 : req.body,
|
|
760
|
-
log.trace(
|
|
777
|
+
else if (has(req === null || req === void 0 ? void 0 : req.body, "contextid")) {
|
|
778
|
+
log.trace("Context ID found in req.body.contextid");
|
|
761
779
|
contextId = String(req.body.contextid);
|
|
762
780
|
}
|
|
763
781
|
else {
|
|
764
|
-
log.trace(
|
|
782
|
+
log.trace("Context ID not specified or not found; will attempt to use default");
|
|
765
783
|
contextId = JourneyContext.DEFAULT_CONTEXT_ID;
|
|
766
784
|
}
|
|
767
785
|
try {
|
|
768
786
|
contextId = JourneyContext.validateContextId(contextId);
|
|
769
787
|
const context = JourneyContext.getContextById(req.session, contextId);
|
|
770
788
|
if (!context) {
|
|
771
|
-
throw
|
|
789
|
+
throw new Error(`Could not find a context with id, ${contextId}`);
|
|
772
790
|
}
|
|
773
791
|
return context;
|
|
774
792
|
}
|
|
775
793
|
catch (err) {
|
|
776
794
|
log.debug(err.message);
|
|
777
|
-
log.trace(
|
|
795
|
+
log.trace("Falling back to default context");
|
|
778
796
|
return JourneyContext.getContextById(req.session, JourneyContext.DEFAULT_CONTEXT_ID);
|
|
779
797
|
}
|
|
780
798
|
}
|
|
781
799
|
}
|
|
782
800
|
_JourneyContext_data = new WeakMap(), _JourneyContext_validation = new WeakMap(), _JourneyContext_nav = new WeakMap(), _JourneyContext_identity = new WeakMap(), _JourneyContext_eventListeners = new WeakMap(), _JourneyContext_eventListenerPreState = new WeakMap();
|
|
783
|
-
JourneyContext.DEFAULT_CONTEXT_ID =
|
|
784
|
-
/**
|
|
785
|
-
|
|
786
|
-
*/
|
|
787
|
-
JourneyContext.
|
|
788
|
-
/**
|
|
789
|
-
* @type {symbol}
|
|
790
|
-
*/
|
|
791
|
-
JourneyContext.ID_GENERATOR_REQ_KEY = Symbol('generateContextId');
|
|
801
|
+
JourneyContext.DEFAULT_CONTEXT_ID = "default";
|
|
802
|
+
/** @type {symbol} */
|
|
803
|
+
JourneyContext.ID_GENERATOR_REQ_LOG = Symbol("generatedContextIds");
|
|
804
|
+
/** @type {symbol} */
|
|
805
|
+
JourneyContext.ID_GENERATOR_REQ_KEY = Symbol("generateContextId");
|
|
792
806
|
exports.default = JourneyContext;
|
|
793
807
|
//# sourceMappingURL=JourneyContext.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"JourneyContext.js","sourceRoot":"","sources":["../../src/lib/JourneyContext.js"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"JourneyContext.js","sourceRoot":"","sources":["../../src/lib/JourneyContext.js"],"names":[],"mappings":"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"}
|