@dwp/govuk-casa 8.7.12 → 8.9.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.
Files changed (173) hide show
  1. package/dist/casa.d.ts +12 -1
  2. package/dist/casa.js +10 -2
  3. package/dist/casa.js.map +1 -0
  4. package/dist/lib/CasaTemplateLoader.js +1 -0
  5. package/dist/lib/CasaTemplateLoader.js.map +1 -0
  6. package/dist/lib/JourneyContext.d.ts +12 -3
  7. package/dist/lib/JourneyContext.js +20 -5
  8. package/dist/lib/JourneyContext.js.map +1 -0
  9. package/dist/lib/MutableRouter.js +1 -0
  10. package/dist/lib/MutableRouter.js.map +1 -0
  11. package/dist/lib/Plan.d.ts +1 -1
  12. package/dist/lib/Plan.js +2 -5
  13. package/dist/lib/Plan.js.map +1 -0
  14. package/dist/lib/ValidationError.js +1 -0
  15. package/dist/lib/ValidationError.js.map +1 -0
  16. package/dist/lib/ValidatorFactory.d.ts +2 -2
  17. package/dist/lib/ValidatorFactory.js +3 -2
  18. package/dist/lib/ValidatorFactory.js.map +1 -0
  19. package/dist/lib/configuration-ingestor.js +1 -0
  20. package/dist/lib/configuration-ingestor.js.map +1 -0
  21. package/dist/lib/configure.js +2 -1
  22. package/dist/lib/configure.js.map +1 -0
  23. package/dist/lib/constants.d.ts +9 -0
  24. package/dist/lib/constants.js +13 -0
  25. package/dist/lib/constants.js.map +1 -0
  26. package/dist/lib/end-session.js +1 -0
  27. package/dist/lib/end-session.js.map +1 -0
  28. package/dist/lib/field.js +1 -0
  29. package/dist/lib/field.js.map +1 -0
  30. package/dist/lib/index.js +1 -0
  31. package/dist/lib/index.js.map +1 -0
  32. package/dist/lib/logger.js +1 -0
  33. package/dist/lib/logger.js.map +1 -0
  34. package/dist/lib/mount.js +3 -2
  35. package/dist/lib/mount.js.map +1 -0
  36. package/dist/lib/nunjucks-filters.js +1 -0
  37. package/dist/lib/nunjucks-filters.js.map +1 -0
  38. package/dist/lib/nunjucks.js +1 -0
  39. package/dist/lib/nunjucks.js.map +1 -0
  40. package/dist/lib/utils.d.ts +45 -27
  41. package/dist/lib/utils.js +105 -67
  42. package/dist/lib/utils.js.map +1 -0
  43. package/dist/lib/validators/dateObject.js +4 -3
  44. package/dist/lib/validators/dateObject.js.map +1 -0
  45. package/dist/lib/validators/email.js +1 -0
  46. package/dist/lib/validators/email.js.map +1 -0
  47. package/dist/lib/validators/inArray.js +1 -0
  48. package/dist/lib/validators/inArray.js.map +1 -0
  49. package/dist/lib/validators/index.js +1 -0
  50. package/dist/lib/validators/index.js.map +1 -0
  51. package/dist/lib/validators/nino.js +1 -0
  52. package/dist/lib/validators/nino.js.map +1 -0
  53. package/dist/lib/validators/postalAddressObject.d.ts +2 -2
  54. package/dist/lib/validators/postalAddressObject.js +2 -1
  55. package/dist/lib/validators/postalAddressObject.js.map +1 -0
  56. package/dist/lib/validators/regex.js +1 -0
  57. package/dist/lib/validators/regex.js.map +1 -0
  58. package/dist/lib/validators/required.js +1 -0
  59. package/dist/lib/validators/required.js.map +1 -0
  60. package/dist/lib/validators/strlen.js +1 -0
  61. package/dist/lib/validators/strlen.js.map +1 -0
  62. package/dist/lib/validators/wordCount.js +1 -0
  63. package/dist/lib/validators/wordCount.js.map +1 -0
  64. package/dist/lib/waypoint-url.js +40 -9
  65. package/dist/lib/waypoint-url.js.map +1 -0
  66. package/dist/middleware/body-parser.js +1 -0
  67. package/dist/middleware/body-parser.js.map +1 -0
  68. package/dist/middleware/csrf.js +1 -0
  69. package/dist/middleware/csrf.js.map +1 -0
  70. package/dist/middleware/data.js +1 -0
  71. package/dist/middleware/data.js.map +1 -0
  72. package/dist/middleware/gather-fields.js +10 -2
  73. package/dist/middleware/gather-fields.js.map +1 -0
  74. package/dist/middleware/i18n.js +1 -0
  75. package/dist/middleware/i18n.js.map +1 -0
  76. package/dist/middleware/post.js +1 -0
  77. package/dist/middleware/post.js.map +1 -0
  78. package/dist/middleware/pre.js +1 -0
  79. package/dist/middleware/pre.js.map +1 -0
  80. package/dist/middleware/progress-journey.js +7 -2
  81. package/dist/middleware/progress-journey.js.map +1 -0
  82. package/dist/middleware/sanitise-fields.js +1 -0
  83. package/dist/middleware/sanitise-fields.js.map +1 -0
  84. package/dist/middleware/serve-first-waypoint.js +1 -0
  85. package/dist/middleware/serve-first-waypoint.js.map +1 -0
  86. package/dist/middleware/session.js +1 -0
  87. package/dist/middleware/session.js.map +1 -0
  88. package/dist/middleware/skip-waypoint.js +1 -0
  89. package/dist/middleware/skip-waypoint.js.map +1 -0
  90. package/dist/middleware/steer-journey.js +2 -0
  91. package/dist/middleware/steer-journey.js.map +1 -0
  92. package/dist/middleware/strip-proxy-path.js +1 -0
  93. package/dist/middleware/strip-proxy-path.js.map +1 -0
  94. package/dist/middleware/validate-fields.js +7 -1
  95. package/dist/middleware/validate-fields.js.map +1 -0
  96. package/dist/mjs/esm-wrapper.js +11 -15
  97. package/dist/routes/ancillary.js +1 -0
  98. package/dist/routes/ancillary.js.map +1 -0
  99. package/dist/routes/journey.js +1 -0
  100. package/dist/routes/journey.js.map +1 -0
  101. package/dist/routes/static.js +1 -0
  102. package/dist/routes/static.js.map +1 -0
  103. package/locales/cy/error.json +1 -1
  104. package/locales/en/error.json +1 -1
  105. package/package.json +17 -16
  106. package/src/casa.js +330 -0
  107. package/src/lib/CasaTemplateLoader.js +104 -0
  108. package/src/lib/JourneyContext.js +797 -0
  109. package/src/lib/MutableRouter.js +310 -0
  110. package/src/lib/Plan.js +619 -0
  111. package/src/lib/ValidationError.js +163 -0
  112. package/src/lib/ValidatorFactory.js +105 -0
  113. package/src/lib/configuration-ingestor.js +457 -0
  114. package/src/lib/configure.js +202 -0
  115. package/src/lib/constants.js +9 -0
  116. package/src/lib/dirname.cjs +1 -0
  117. package/src/lib/end-session.js +45 -0
  118. package/src/lib/field.js +456 -0
  119. package/src/lib/index.js +33 -0
  120. package/src/lib/logger.js +16 -0
  121. package/src/lib/mount.js +127 -0
  122. package/src/lib/nunjucks-filters.js +150 -0
  123. package/src/lib/nunjucks.js +53 -0
  124. package/src/lib/utils.js +232 -0
  125. package/src/lib/validators/dateObject.js +169 -0
  126. package/src/lib/validators/email.js +55 -0
  127. package/src/lib/validators/inArray.js +81 -0
  128. package/src/lib/validators/index.js +24 -0
  129. package/src/lib/validators/nino.js +57 -0
  130. package/src/lib/validators/postalAddressObject.js +162 -0
  131. package/src/lib/validators/regex.js +48 -0
  132. package/src/lib/validators/required.js +74 -0
  133. package/src/lib/validators/strlen.js +66 -0
  134. package/src/lib/validators/wordCount.js +70 -0
  135. package/src/lib/waypoint-url.js +126 -0
  136. package/src/middleware/body-parser.js +31 -0
  137. package/src/middleware/csrf.js +29 -0
  138. package/src/middleware/data.js +105 -0
  139. package/src/middleware/dirname.cjs +1 -0
  140. package/src/middleware/gather-fields.js +58 -0
  141. package/src/middleware/i18n.js +106 -0
  142. package/src/middleware/post.js +61 -0
  143. package/src/middleware/pre.js +91 -0
  144. package/src/middleware/progress-journey.js +96 -0
  145. package/src/middleware/sanitise-fields.js +58 -0
  146. package/src/middleware/serve-first-waypoint.js +28 -0
  147. package/src/middleware/session.js +129 -0
  148. package/src/middleware/skip-waypoint.js +46 -0
  149. package/src/middleware/steer-journey.js +79 -0
  150. package/src/middleware/strip-proxy-path.js +56 -0
  151. package/src/middleware/validate-fields.js +89 -0
  152. package/src/routes/ancillary.js +29 -0
  153. package/src/routes/dirname.cjs +1 -0
  154. package/src/routes/journey.js +212 -0
  155. package/src/routes/static.js +77 -0
  156. package/views/casa/components/character-count/README.md +10 -0
  157. package/views/casa/components/character-count/template.njk +6 -2
  158. package/views/casa/components/checkboxes/README.md +43 -34
  159. package/views/casa/components/checkboxes/template.njk +8 -7
  160. package/views/casa/components/date-input/README.md +11 -1
  161. package/views/casa/components/date-input/template.njk +6 -4
  162. package/views/casa/components/input/README.md +9 -0
  163. package/views/casa/components/input/template.njk +6 -2
  164. package/views/casa/components/postal-address-object/README.md +10 -0
  165. package/views/casa/components/postal-address-object/template.njk +20 -5
  166. package/views/casa/components/radios/README.md +49 -24
  167. package/views/casa/components/radios/template.njk +6 -3
  168. package/views/casa/components/select/README.md +65 -0
  169. package/views/casa/components/select/macro.njk +3 -0
  170. package/views/casa/components/select/template.njk +49 -0
  171. package/views/casa/components/textarea/README.md +9 -0
  172. package/views/casa/components/textarea/template.njk +6 -2
  173. package/views/casa/layouts/journey.njk +1 -1
@@ -2,6 +2,14 @@
2
2
  * @access private
3
3
  * @typedef {import('../casa').GlobalHook | import('../casa').PageHook} Hook
4
4
  */
5
+ /**
6
+ * Determine if value is empty. Recurse over objects.
7
+ *
8
+ * @access private
9
+ * @param {any} val Value to check
10
+ * @returns {boolean} True if the object is empty
11
+ */
12
+ export function isEmpty(val: any): boolean;
5
13
  /**
6
14
  * Test is a value can be stringified (numbers or strings)
7
15
  *
@@ -10,6 +18,17 @@
10
18
  * @returns {boolean} Whether the value is stringable or not
11
19
  */
12
20
  export function isStringable(value: any): boolean;
21
+ /**
22
+ * Extract the middleware functions that are relevant for the given hook and
23
+ * path.
24
+ *
25
+ * @access private
26
+ * @param {string} hookName Hook name (including scope prefix)
27
+ * @param {string} path URL path to match (relative to mountUrl)
28
+ * @param {Hook[]} hooks Hooks to be applied at the page level
29
+ * @returns {Function[]} An array of middleware that should be applied
30
+ */
31
+ export function resolveMiddlewareHooks(hookName: string, path: string, hooks?: Hook[]): Function[];
13
32
  /**
14
33
  * Coerce an input to a string.
15
34
  *
@@ -20,34 +39,43 @@ export function isStringable(value: any): boolean;
20
39
  */
21
40
  export function stringifyInput(input: any, fallback: string, ...args: any[]): string;
22
41
  /**
23
- * Determine if value is empty. Recurse over objects.
42
+ * Strip whitespace from a string.
24
43
  *
25
44
  * @access private
26
- * @param {any} val Value to check
27
- * @returns {boolean} True if the object is empty
45
+ * @param {string} value value to be stripped of whitespace
46
+ * @param {object} options overrides for the default whitespace replacements
47
+ * @returns {string} value stripped of white space
48
+ * @throws {TypeError}
28
49
  */
29
- export function isEmpty(val: any): boolean;
50
+ export function stripWhitespace(value: string, options: object): string;
30
51
  /**
31
- * Extract the middleware functions that are relevant for the given hook and
32
- * path.
52
+ * Checks if the given string can be used as an object key.
33
53
  *
34
54
  * @access private
35
- * @param {string} hookName Hook name (including scope prefix)
36
- * @param {string} path URL path to match (relative to mountUrl)
37
- * @param {Hook[]} hooks Hooks to be applied at the page level
38
- * @returns {Function[]} An array of middleware that should be applied
55
+ * @param {string} key Proposed Object key
56
+ * @returns {string} Same key if it's valid
57
+ * @throws {Error} if proposed key is an invalid keyword
39
58
  */
40
- export function resolveMiddlewareHooks(hookName: string, path: string, hooks?: Hook[]): Function[];
59
+ export function notProto(key: string): string;
41
60
  /**
42
- * Validate a waypoint.
61
+ * Validate a hook name.
43
62
  *
44
63
  * @access private
45
- * @param {string} waypoint Waypoint
64
+ * @param {string} hookName Hook name
46
65
  * @returns {void}
47
66
  * @throws {TypeError}
48
67
  * @throws {SyntaxError}
49
68
  */
50
- export function validateWaypoint(waypoint: string): void;
69
+ export function validateHookName(hookName: string): void;
70
+ /**
71
+ * Validate a hook path.
72
+ *
73
+ * @access private
74
+ * @param {string} path URL path
75
+ * @returns {void}
76
+ * @throws {TypeError}
77
+ */
78
+ export function validateHookPath(path: string): void;
51
79
  /**
52
80
  * Validate a URL path.
53
81
  *
@@ -69,23 +97,13 @@ export function validateUrlPath(path: string): string;
69
97
  */
70
98
  export function validateView(view: string): void;
71
99
  /**
72
- * Validate a hook name.
100
+ * Validate a waypoint.
73
101
  *
74
102
  * @access private
75
- * @param {string} hookName Hook name
103
+ * @param {string} waypoint Waypoint
76
104
  * @returns {void}
77
105
  * @throws {TypeError}
78
106
  * @throws {SyntaxError}
79
107
  */
80
- export function validateHookName(hookName: string): void;
81
- export function validateHookPath(path: any): void;
82
- /**
83
- * Checks if the given string can be used as an object key.
84
- *
85
- * @access private
86
- * @param {string} key Proposed Object key
87
- * @returns {string} Same key if it's valid
88
- * @throws {Error} if proposed key is an invalid keyword
89
- */
90
- export function notProto(key: string): string;
108
+ export function validateWaypoint(waypoint: string): void;
91
109
  export type Hook = import('../casa').GlobalHook | import('../casa').PageHook;
package/dist/lib/utils.js CHANGED
@@ -4,32 +4,7 @@
4
4
  * @typedef {import('../casa').GlobalHook | import('../casa').PageHook} Hook
5
5
  */
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.notProto = exports.validateHookPath = exports.validateHookName = exports.validateView = exports.validateUrlPath = exports.validateWaypoint = exports.resolveMiddlewareHooks = exports.isEmpty = exports.stringifyInput = exports.isStringable = void 0;
8
- /**
9
- * Test is a value can be stringified (numbers or strings)
10
- *
11
- * @access private
12
- * @param {any} value Item to test
13
- * @returns {boolean} Whether the value is stringable or not
14
- */
15
- function isStringable(value) {
16
- return typeof value === 'string' || typeof value === 'number';
17
- }
18
- exports.isStringable = isStringable;
19
- /**
20
- * Coerce an input to a string.
21
- *
22
- * @access private
23
- * @param {any} input Input to be stringified
24
- * @param {string} fallback Fallback to use if input can't be stringified
25
- * @returns {string} The stringified input
26
- */
27
- function stringifyInput(input, fallback) {
28
- // Not using param defaults here as the fallback may be explicitly "undefined"
29
- const fb = arguments.length === 2 && (isStringable(fallback) || fallback === undefined) ? fallback : '';
30
- return isStringable(input) ? String(input) : fb;
31
- }
32
- exports.stringifyInput = stringifyInput;
7
+ exports.validateWaypoint = exports.validateView = exports.validateUrlPath = exports.validateHookPath = exports.validateHookName = exports.notProto = exports.stripWhitespace = exports.stringifyInput = exports.resolveMiddlewareHooks = exports.isStringable = exports.isEmpty = void 0;
33
8
  /**
34
9
  * Determine if value is empty. Recurse over objects.
35
10
  *
@@ -51,6 +26,17 @@ function isEmpty(val) {
51
26
  return false;
52
27
  }
53
28
  exports.isEmpty = isEmpty;
29
+ /**
30
+ * Test is a value can be stringified (numbers or strings)
31
+ *
32
+ * @access private
33
+ * @param {any} value Item to test
34
+ * @returns {boolean} Whether the value is stringable or not
35
+ */
36
+ function isStringable(value) {
37
+ return typeof value === 'string' || typeof value === 'number';
38
+ }
39
+ exports.isStringable = isStringable;
54
40
  /**
55
41
  * Extract the middleware functions that are relevant for the given hook and
56
42
  * path.
@@ -67,28 +53,100 @@ function resolveMiddlewareHooks(hookName, path, hooks = []) {
67
53
  return hooks.filter((h) => h.hook === hookName).filter(pathMatch).map((h) => h.middleware);
68
54
  }
69
55
  exports.resolveMiddlewareHooks = resolveMiddlewareHooks;
56
+ /**
57
+ * Coerce an input to a string.
58
+ *
59
+ * @access private
60
+ * @param {any} input Input to be stringified
61
+ * @param {string} fallback Fallback to use if input can't be stringified
62
+ * @returns {string} The stringified input
63
+ */
64
+ function stringifyInput(input, fallback) {
65
+ // Not using param defaults here as the fallback may be explicitly "undefined"
66
+ const fb = arguments.length === 2 && (isStringable(fallback) || fallback === undefined) ? fallback : '';
67
+ return isStringable(input) ? String(input) : fb;
68
+ }
69
+ exports.stringifyInput = stringifyInput;
70
+ /**
71
+ * Strip whitespace from a string.
72
+ *
73
+ * @access private
74
+ * @param {string} value value to be stripped of whitespace
75
+ * @param {object} options overrides for the default whitespace replacements
76
+ * @returns {string} value stripped of white space
77
+ * @throws {TypeError}
78
+ */
79
+ function stripWhitespace(value, options) {
80
+ const opts = Object.assign({ leading: '', trailing: '', nested: ' ' }, options);
81
+ if (typeof value !== 'string') {
82
+ throw new TypeError('value must be a string');
83
+ }
84
+ if (typeof opts.leading !== 'string') {
85
+ throw new TypeError('leading must be a string');
86
+ }
87
+ if (typeof opts.trailing !== 'string') {
88
+ throw new TypeError('trailing must be a string');
89
+ }
90
+ if (typeof opts.nested !== 'string') {
91
+ throw new TypeError('nested must be a string');
92
+ }
93
+ return value
94
+ .replace(/^\s+/, opts.leading)
95
+ .replace(/\s+$/, opts.trailing)
96
+ .replace(/\s+/g, opts.nested);
97
+ }
98
+ exports.stripWhitespace = stripWhitespace;
70
99
  /* ------------------------------------------------ validation / sanitisation */
71
100
  /**
72
- * Validate a waypoint.
101
+ * Checks if the given string can be used as an object key.
73
102
  *
74
103
  * @access private
75
- * @param {string} waypoint Waypoint
104
+ * @param {string} key Proposed Object key
105
+ * @returns {string} Same key if it's valid
106
+ * @throws {Error} if proposed key is an invalid keyword
107
+ */
108
+ function notProto(key) {
109
+ if (['__proto__', 'constructor', 'prototype'].includes(String(key).toLowerCase())) {
110
+ throw new Error('Attempt to use prototype key disallowed');
111
+ }
112
+ return key;
113
+ }
114
+ exports.notProto = notProto;
115
+ /**
116
+ * Validate a hook name.
117
+ *
118
+ * @access private
119
+ * @param {string} hookName Hook name
76
120
  * @returns {void}
77
121
  * @throws {TypeError}
78
122
  * @throws {SyntaxError}
79
123
  */
80
- function validateWaypoint(waypoint) {
81
- if (typeof waypoint !== 'string') {
82
- throw new TypeError('Waypoint must be a string');
124
+ function validateHookName(hookName) {
125
+ if (typeof hookName !== 'string') {
126
+ throw new TypeError('Hook name must be a string');
83
127
  }
84
- if (!waypoint.length) {
85
- throw new SyntaxError('Waypoint must not be empty');
128
+ if (!hookName.length) {
129
+ throw new SyntaxError('Hook name must not be empty');
86
130
  }
87
- if (waypoint.match(/[^/a-z0-9_-]/)) {
88
- throw new SyntaxError('Waypoint must contain only a-z, 0-9, -, _ and / characters');
131
+ if (!hookName.match(/^([a-z_]+\.|)[a-z_]+$/i)) {
132
+ throw new SyntaxError('Hook name must match either <scope>.<hookname> or <hookname> formats');
89
133
  }
90
134
  }
91
- exports.validateWaypoint = validateWaypoint;
135
+ exports.validateHookName = validateHookName;
136
+ /**
137
+ * Validate a hook path.
138
+ *
139
+ * @access private
140
+ * @param {string} path URL path
141
+ * @returns {void}
142
+ * @throws {TypeError}
143
+ */
144
+ function validateHookPath(path) {
145
+ if (typeof path !== 'string' && !(path instanceof RegExp)) {
146
+ throw new TypeError('Hook path must be a string or RegExp');
147
+ }
148
+ }
149
+ exports.validateHookPath = validateHookPath;
92
150
  /**
93
151
  * Validate a URL path.
94
152
  *
@@ -133,44 +191,24 @@ function validateView(view) {
133
191
  }
134
192
  exports.validateView = validateView;
135
193
  /**
136
- * Validate a hook name.
194
+ * Validate a waypoint.
137
195
  *
138
196
  * @access private
139
- * @param {string} hookName Hook name
197
+ * @param {string} waypoint Waypoint
140
198
  * @returns {void}
141
199
  * @throws {TypeError}
142
200
  * @throws {SyntaxError}
143
201
  */
144
- function validateHookName(hookName) {
145
- if (typeof hookName !== 'string') {
146
- throw new TypeError('Hook name must be a string');
147
- }
148
- if (!hookName.length) {
149
- throw new SyntaxError('Hook name must not be empty');
150
- }
151
- if (!hookName.match(/^([a-z_]+\.|)[a-z_]+$/i)) {
152
- throw new SyntaxError('Hook name must match either <scope>.<hookname> or <hookname> formats');
202
+ function validateWaypoint(waypoint) {
203
+ if (typeof waypoint !== 'string') {
204
+ throw new TypeError('Waypoint must be a string');
153
205
  }
154
- }
155
- exports.validateHookName = validateHookName;
156
- function validateHookPath(path) {
157
- if (typeof path !== 'string' && !(path instanceof RegExp)) {
158
- throw new TypeError('Hook path must be a string or RegExp');
206
+ if (!waypoint.length) {
207
+ throw new SyntaxError('Waypoint must not be empty');
159
208
  }
160
- }
161
- exports.validateHookPath = validateHookPath;
162
- /**
163
- * Checks if the given string can be used as an object key.
164
- *
165
- * @access private
166
- * @param {string} key Proposed Object key
167
- * @returns {string} Same key if it's valid
168
- * @throws {Error} if proposed key is an invalid keyword
169
- */
170
- function notProto(key) {
171
- if (['__proto__', 'constructor', 'prototype'].includes(String(key).toLowerCase())) {
172
- throw new Error('Attempt to use prototype key disallowed');
209
+ if (waypoint.match(/[^/a-z0-9_-]/)) {
210
+ throw new SyntaxError('Waypoint must contain only a-z, 0-9, -, _ and / characters');
173
211
  }
174
- return key;
175
212
  }
176
- exports.notProto = notProto;
213
+ exports.validateWaypoint = validateWaypoint;
214
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/lib/utils.js"],"names":[],"mappings":"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"}
@@ -135,12 +135,13 @@ class DateObject extends ValidatorFactory_js_1.default {
135
135
  sanitise(value) {
136
136
  if (value !== undefined) {
137
137
  return isPlainObject(value) ? {
138
- dd: (0, utils_js_1.stringifyInput)(value.dd),
139
- mm: (0, utils_js_1.stringifyInput)(value.mm),
140
- yyyy: (0, utils_js_1.stringifyInput)(value.yyyy),
138
+ dd: (0, utils_js_1.stripWhitespace)((0, utils_js_1.stringifyInput)(value.dd)),
139
+ mm: (0, utils_js_1.stripWhitespace)((0, utils_js_1.stringifyInput)(value.mm)),
140
+ yyyy: (0, utils_js_1.stripWhitespace)((0, utils_js_1.stringifyInput)(value.yyyy)),
141
141
  } : Object.create(null);
142
142
  }
143
143
  return undefined;
144
144
  }
145
145
  }
146
146
  exports.default = DateObject;
147
+ //# sourceMappingURL=dateObject.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dateObject.js","sourceRoot":"","sources":["../../../src/lib/validators/dateObject.js"],"names":[],"mappings":"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"}
@@ -55,3 +55,4 @@ class Email extends ValidatorFactory_js_1.default {
55
55
  }
56
56
  }
57
57
  exports.default = Email;
58
+ //# sourceMappingURL=email.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"email.js","sourceRoot":"","sources":["../../../src/lib/validators/email.js"],"names":[],"mappings":";;;;;AAAA,2CAA2C;AAC3C,0DAAqC;AACrC,+EAAoD;AACpD,iFAAsD;AACtD,0CAA6C;AAE7C,MAAM,EAAE,OAAO,EAAE,GAAG,mBAAY,CAAC,CAAC,WAAW;AAE7C;;;GAGG;AAEH;;;GAGG;AAEH;;;;;;;;;GASG;AACH,MAAqB,KAAM,SAAQ,6BAAgB;IAAnD;;QACE,uDAAuD;QACvD,SAAI,GAAG,OAAO,CAAC;IAwBjB,CAAC;IAtBC,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,EAAE;QAC9B,IAAI,OAAO,CAAC;QACZ,IAAI;YACF,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;SAC1B;QAAC,OAAO,CAAC,EAAE;YACV,OAAO,GAAG,KAAK,CAAC;SACjB;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI;YACvC,OAAO,EAAE,+BAA+B;YACxC,MAAM,EAAE,8BAA8B;SACvC,CAAC;QAEF,OAAO,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,4BAAe,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;IAC1E,CAAC;IAED,QAAQ,CAAC,KAAK;QACZ,IAAI,KAAK,KAAK,SAAS,EAAE;YACvB,OAAO,IAAA,yBAAc,EAAC,KAAK,CAAC,CAAC;SAC9B;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AA1BD,wBA0BC"}
@@ -79,3 +79,4 @@ class InArray extends ValidatorFactory_js_1.default {
79
79
  }
80
80
  }
81
81
  exports.default = InArray;
82
+ //# sourceMappingURL=inArray.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inArray.js","sourceRoot":"","sources":["../../../src/lib/validators/inArray.js"],"names":[],"mappings":";;;;;AAAA,2CAA2C;AAC3C;;;;;;;;GAQG;AACH,+EAAoD;AACpD,iFAAsD;AACtD,0CAA2D;AAE3D;;;GAGG;AAEH;;;;GAIG;AAEH;;;;;;;;;;GAUG;AACH,MAAqB,OAAQ,SAAQ,6BAAgB;IAArD;;QACE,yDAAyD;QACzD,SAAI,GAAG,SAAS,CAAC;IA0CnB,CAAC;IAxCC,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,EAAE;QAC9B,IAAI,KAAK,GAAG,KAAK,CAAC;QAClB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC;QACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI;YACvC,MAAM,EAAE,gCAAgC;YACxC,OAAO,EAAE,iCAAiC;SAC3C,CAAC;QAEF,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,WAAW,EAAE;YAClD,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YACtD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE;gBAChD,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE;oBAChD,KAAK,GAAG,IAAI,CAAC;iBACd;qBAAM;oBACL,KAAK,GAAG,KAAK,CAAC;oBACd,MAAM;iBACP;aACF;SACF;QAED,OAAO,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,4BAAe,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;IACxE,CAAC;IAED,QAAQ,CAAC,KAAK;QACZ,MAAM,MAAM,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,IAAA,yBAAc,EAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC;QAEzD,mBAAmB;QACnB,IAAI,IAAA,uBAAY,EAAC,KAAK,CAAC,EAAE;YACvB,OAAO,IAAA,yBAAc,EAAC,KAAK,CAAC,CAAC;SAC9B;QAED,kCAAkC;QAClC,qEAAqE;QACrE,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACxB,OAAO,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;SAC1B;QAED,oBAAoB;QACpB,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AA5CD,0BA4CC"}
@@ -26,3 +26,4 @@ exports.default = {
26
26
  strlen: strlen_js_1.default,
27
27
  wordCount: wordCount_js_1.default,
28
28
  };
29
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/validators/index.js"],"names":[],"mappings":";;;;;AAAA,oEAAyC;AACzC,0DAA+B;AAC/B,8DAAmC;AACnC,wDAA6B;AAC7B,sFAA2D;AAC3D,0DAA+B;AAC/B,gEAAqC;AACrC,4DAAiC;AACjC,kEAAuC;AAEvC;;GAEG;AACH,kBAAe;IACb,UAAU,EAAV,uBAAU;IACV,KAAK,EAAL,kBAAK;IACL,OAAO,EAAP,oBAAO;IACP,IAAI,EAAJ,iBAAI;IACJ,mBAAmB,EAAnB,gCAAmB;IACnB,KAAK,EAAL,kBAAK;IACL,QAAQ,EAAR,qBAAQ;IACR,MAAM,EAAN,mBAAM;IACN,SAAS,EAAT,sBAAS;CACV,CAAA"}
@@ -54,3 +54,4 @@ class Nino extends ValidatorFactory_js_1.default {
54
54
  }
55
55
  }
56
56
  exports.default = Nino;
57
+ //# sourceMappingURL=nino.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nino.js","sourceRoot":"","sources":["../../../src/lib/validators/nino.js"],"names":[],"mappings":";;;;;AAAA,2CAA2C;AAC3C,+EAAoD;AACpD,iFAAsD;AACtD,0CAA6C;AAE7C;;;GAGG;AAEH;;;;GAIG;AAEH;;;;;;;;;;;GAWG;AACH,MAAqB,IAAK,SAAQ,6BAAgB;IAAlD;;QACE,SAAI,GAAG,MAAM,CAAC;IA2BhB,CAAC;IAzBC,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,EAAE;QAC9B,MAAM,EACJ,eAAe,EACf,QAAQ,GAAG;YACT,MAAM,EAAE,6BAA6B;YACrC,OAAO,EAAE,8BAA8B;SACxC,GACF,GAAG,IAAI,CAAC,MAAM,CAAC;QAEhB,IAAI,OAAO,eAAe,KAAK,WAAW,IAAI,OAAO,eAAe,KAAK,SAAS,EAAE;YAClF,MAAM,IAAI,SAAS,CAAC,+EAA+E,OAAO,eAAe,EAAE,CAAC,CAAC;SAC9H;QACD,MAAM,KAAK,GAAG,OAAO,KAAK,KAAK,QAAQ;eAClC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,eAAe,KAAK,WAAW,IAAI,eAAe,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC;iBAC/F,KAAK,CAAC,0EAA0E,CAAC,CAAC;QAEvF,OAAO,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,4BAAe,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;IACxE,CAAC;IAED,QAAQ,CAAC,KAAK;QACZ,IAAI,KAAK,KAAK,SAAS,EAAE;YACvB,OAAO,IAAA,yBAAc,EAAC,KAAK,CAAC,CAAC;SAC9B;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AA5BD,uBA4BC"}
@@ -10,7 +10,7 @@
10
10
  * @property {string|object} [errorMsgAddress3] Error message for address3 part
11
11
  * @property {string|object} [errorMsgAddress4] Error message for address4 part
12
12
  * @property {string|object} [errorMsgPostcode] Error message for postcode part
13
- * @property {number} [strlenmax] Max. String length for each of the inputs appress[1-4]
13
+ * @property {number} [strlenmax] Max. String length for each of the inputs address[1-4]
14
14
  * @property {string[]} [requiredFields] Field parts required (others become optional). One of
15
15
  * 'address1'|'address2'|'address3'|'address4'|'postcode'
16
16
  */
@@ -59,7 +59,7 @@ export type PostalAddressObjectConfigOptions = {
59
59
  */
60
60
  errorMsgPostcode?: string | object | undefined;
61
61
  /**
62
- * Max. String length for each of the inputs appress[1-4]
62
+ * Max. String length for each of the inputs address[1-4]
63
63
  */
64
64
  strlenmax?: number | undefined;
65
65
  /**
@@ -21,7 +21,7 @@ const { isPlainObject } = lodash_1.default; // CommonjS
21
21
  * @property {string|object} [errorMsgAddress3] Error message for address3 part
22
22
  * @property {string|object} [errorMsgAddress4] Error message for address4 part
23
23
  * @property {string|object} [errorMsgPostcode] Error message for postcode part
24
- * @property {number} [strlenmax] Max. String length for each of the inputs appress[1-4]
24
+ * @property {number} [strlenmax] Max. String length for each of the inputs address[1-4]
25
25
  * @property {string[]} [requiredFields] Field parts required (others become optional). One of
26
26
  * 'address1'|'address2'|'address3'|'address4'|'postcode'
27
27
  */
@@ -137,3 +137,4 @@ class PostalAddressObject extends ValidatorFactory_js_1.default {
137
137
  }
138
138
  }
139
139
  exports.default = PostalAddressObject;
140
+ //# sourceMappingURL=postalAddressObject.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"postalAddressObject.js","sourceRoot":"","sources":["../../../src/lib/validators/postalAddressObject.js"],"names":[],"mappings":"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"}
@@ -48,3 +48,4 @@ class Regex extends ValidatorFactory_js_1.default {
48
48
  }
49
49
  }
50
50
  exports.default = Regex;
51
+ //# sourceMappingURL=regex.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"regex.js","sourceRoot":"","sources":["../../../src/lib/validators/regex.js"],"names":[],"mappings":";;;;;AAAA,2CAA2C;AAC3C,iFAAsD;AACtD,+EAAoD;AACpD,0CAA6C;AAE7C;;;GAGG;AAEH;;;;;GAKG;AAEH;;;;;;;GAOG;AACH,MAAqB,KAAM,SAAQ,6BAAgB;IAAnD;;QACE,SAAI,GAAG,OAAO,CAAC;IAqBjB,CAAC;IAnBC,QAAQ,CAAC,KAAK,GAAG,EAAE,EAAE,WAAW,GAAG,EAAE;QACnC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,KAAK,CAAC;QAC3C,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,CAAC;QACvD,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;QAEtC,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI;YACvC,MAAM,EAAE,8BAA8B;YACtC,OAAO,EAAE,+BAA+B;SACzC,CAAC;QAEF,OAAO,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,4BAAe,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;IACxE,CAAC;IAED,QAAQ,CAAC,KAAK;QACZ,IAAI,KAAK,KAAK,SAAS,EAAE;YACvB,OAAO,IAAA,yBAAc,EAAC,KAAK,CAAC,CAAC;SAC9B;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AAtBD,wBAsBC"}
@@ -67,3 +67,4 @@ class Required extends ValidatorFactory_js_1.default {
67
67
  }
68
68
  }
69
69
  exports.default = Required;
70
+ //# sourceMappingURL=required.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"required.js","sourceRoot":"","sources":["../../../src/lib/validators/required.js"],"names":[],"mappings":";;;;;AAAA,2CAA2C;AAC3C,oDAA4B;AAC5B,0CAAoE;AACpE,iFAAsD;AACtD,+EAAoD;AAEpD,MAAM,EAAE,aAAa,EAAE,GAAG,gBAAM,CAAC,CAAC,WAAW;AAE7C;;;GAGG;AAEH;;;GAGG;AAEH;;;;;;;;;;GAUG;AACH,MAAqB,QAAS,SAAQ,6BAAgB;IAAtD;;QACE,SAAI,GAAG,UAAU,CAAC;IA2CpB,CAAC;IAzCC,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,EAAE;QAC9B,MAAM,EACJ,QAAQ,GAAG;YACT,MAAM,EAAE,iCAAiC;YACzC,OAAO,EAAE,kCAAkC;SAC5C,GACF,GAAG,IAAI,CAAC,MAAM,CAAC;QAEhB,IAAI,CAAC,IAAA,kBAAO,EAAC,KAAK,CAAC,EAAE;YACnB,OAAO,EAAE,CAAA;SACV;QAED,OAAO;YACL,4BAAe,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;SAChD,CAAC;IACJ,CAAC;IAED,QAAQ,CAAC,KAAK;QACZ,MAAM,MAAM,GAAG,CAAC,GAAG,EAAE,EAAE;YACrB,MAAM,CAAC,GAAG,IAAA,yBAAc,EAAC,GAAG,EAAE,SAAS,CAAC,CAAC;YACzC,OAAO,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAC9D,CAAC,CAAC;QAEF,IAAI,IAAA,uBAAY,EAAC,KAAK,CAAC,EAAE;YACvB,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;SACtB;QAED,kCAAkC;QAClC,qEAAqE;QACrE,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACxB,OAAO,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;SAC1B;QAED,kCAAkC;QAClC,yEAAyE;QACzE,IAAI,aAAa,CAAC,KAAK,CAAC,EAAE;YACxB,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACpF;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AA5CD,2BA4CC"}
@@ -59,3 +59,4 @@ class Strlen extends ValidatorFactory_js_1.default {
59
59
  }
60
60
  }
61
61
  exports.default = Strlen;
62
+ //# sourceMappingURL=strlen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"strlen.js","sourceRoot":"","sources":["../../../src/lib/validators/strlen.js"],"names":[],"mappings":";;;;;AAAA,2CAA2C;AAC3C,iFAAsD;AACtD,+EAAoD;AACpD,0CAA6C;AAE7C;;;GAGG;AAEH;;;;;;GAMG;AAEH;;;;;;;GAOG;AACH,MAAqB,MAAO,SAAQ,6BAAgB;IAApD;;QACE,SAAI,GAAG,QAAQ,CAAC;IAsClB,CAAC;IApCC,QAAQ,CAAC,UAAU,GAAG,EAAE,EAAE,WAAW,GAAG,EAAE;QACxC,MAAM,EACJ,WAAW,GAAG;YACZ,MAAM,EAAE,mCAAmC;YAC3C,OAAO,EAAE,oCAAoC;SAC9C,EACD,WAAW,GAAG;YACZ,MAAM,EAAE,mCAAmC;YAC3C,OAAO,EAAE,oCAAoC;SAC9C,EACD,GAAG,EACH,GAAG,GACJ,GAAG,IAAI,CAAC,MAAM,CAAC;QAEhB,IAAI,QAAQ,CAAC;QACb,IAAI,KAAK,GAAG,IAAI,CAAC;QAEjB,IAAI,OAAO,GAAG,KAAK,WAAW,IAAI,UAAU,CAAC,MAAM,GAAG,GAAG,EAAE;YACzD,KAAK,GAAG,KAAK,CAAC;YACd,QAAQ,GAAG,WAAW,CAAC;SACxB;QAED,IAAI,OAAO,GAAG,KAAK,WAAW,IAAI,UAAU,CAAC,MAAM,GAAG,GAAG,EAAE;YACzD,KAAK,GAAG,KAAK,CAAC;YACd,QAAQ,GAAG,WAAW,CAAC;SACxB;QAED,OAAO,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,4BAAe,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;IACxE,CAAC;IAED,QAAQ,CAAC,KAAK;QACZ,IAAI,KAAK,KAAK,SAAS,EAAE;YACvB,OAAO,IAAA,yBAAc,EAAC,KAAK,CAAC,CAAC;SAC9B;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AAvCD,yBAuCC"}
@@ -62,3 +62,4 @@ class WordCount extends ValidatorFactory_js_1.default {
62
62
  }
63
63
  }
64
64
  exports.default = WordCount;
65
+ //# sourceMappingURL=wordCount.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wordCount.js","sourceRoot":"","sources":["../../../src/lib/validators/wordCount.js"],"names":[],"mappings":";;;;;AAAA,2CAA2C;AAC3C,iFAAsD;AACtD,+EAAoD;AACpD,0CAA6C;AAE7C;;;GAGG;AAEH;;;;;;GAMG;AAEH;;;;;;;GAOG;AACH,MAAqB,SAAU,SAAQ,6BAAgB;IAAvD;;QACE,SAAI,GAAG,WAAW,CAAC;IA0CrB,CAAC;IAxCC,KAAK,CAAC,KAAK;QACT,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;IAC5C,CAAC;IAED,QAAQ,CAAC,UAAU,GAAG,EAAE,EAAE,WAAW,GAAG,EAAE;QACxC,MAAM,EACJ,WAAW,GAAG;YACZ,MAAM,EAAE,sCAAsC;YAC9C,OAAO,EAAE,uCAAuC;SACjD,EACD,WAAW,GAAG;YACZ,MAAM,EAAE,sCAAsC;YAC9C,OAAO,EAAE,uCAAuC;SACjD,EACD,GAAG,EACH,GAAG,GACJ,GAAG,IAAI,CAAC,MAAM,CAAC;QAEhB,IAAI,QAAQ,CAAC;QACb,IAAI,KAAK,GAAG,IAAI,CAAC;QAEjB,IAAI,OAAO,GAAG,KAAK,WAAW,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,GAAG,GAAG,EAAE;YAC/E,KAAK,GAAG,KAAK,CAAC;YACd,QAAQ,GAAG,WAAW,CAAC;SACxB;QAED,IAAI,OAAO,GAAG,KAAK,WAAW,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,GAAG,GAAG,EAAE;YAC/E,KAAK,GAAG,KAAK,CAAC;YACd,QAAQ,GAAG,WAAW,CAAC;SACxB;QAED,OAAO,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,4BAAe,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;IACxE,CAAC;IAED,QAAQ,CAAC,KAAK;QACZ,IAAI,KAAK,KAAK,SAAS,EAAE;YACvB,OAAO,IAAA,yBAAc,EAAC,KAAK,CAAC,CAAC;SAC9B;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AA3CD,4BA2CC"}
@@ -14,6 +14,31 @@ const reUrlProtocolExtract = /^url:\/\/(.+)$/i;
14
14
  * @returns {string} Sanitised waypoint
15
15
  */
16
16
  const sanitiseWaypoint = (w) => w.replace(/[^/a-z0-9_-]/ig, '').replace(/\/+/g, '/');
17
+ /**
18
+ * Sanitise a waypoint string, with allowed URL parameters:
19
+ * contextid = JourneyContext ID
20
+ *
21
+ * @access private
22
+ * @param {string} w Waypoint and potential URL parameters
23
+ * @returns {string} Sanitised waypoint
24
+ */
25
+ const sanitiseWaypointWithAllowedParams = (w) => {
26
+ // Extract URL params
27
+ const parts = w.split('?');
28
+ if (parts.length !== 2) {
29
+ return sanitiseWaypoint(w);
30
+ }
31
+ const [waypoint, rawParams] = parts;
32
+ const urlSearchParams = new URLSearchParams(rawParams);
33
+ // Strip all but those parameters allowed
34
+ const validatedUrlSearchParams = new URLSearchParams();
35
+ for (const pk of ['contextid']) {
36
+ if (urlSearchParams.has(pk)) {
37
+ validatedUrlSearchParams.set(pk, urlSearchParams.get(pk));
38
+ }
39
+ }
40
+ return `${sanitiseWaypoint(waypoint)}?${validatedUrlSearchParams.toString()}`.replace(/\?$/, '');
41
+ };
17
42
  /**
18
43
  * Generate a URL pointing at a particular waypoint.
19
44
  *
@@ -42,13 +67,18 @@ function waypointUrl({ waypoint = '', mountUrl = '/', journeyContext, edit = fal
42
67
  // - This will generate a link to the root handler "_" for the given mount path
43
68
  if (String(waypoint).substr(0, 7) === 'url:///') {
44
69
  const m = waypoint.match(reUrlProtocolExtract);
45
- const u = new URL(m[1], 'https://placeholder.test/');
70
+ const u = new URL(sanitiseWaypointWithAllowedParams(m[1]), 'https://placeholder.test/');
46
71
  url.pathname = `${sanitiseWaypoint(u.pathname)}/_/`;
47
- url.searchParams.append('refmount', `url://${mountUrl}`);
48
- url.searchParams.append('route', routeName);
72
+ url.searchParams.set('refmount', `url://${mountUrl}`);
73
+ url.searchParams.set('route', routeName);
74
+ for (const [uk, uv] of u.searchParams.entries()) {
75
+ url.searchParams.append(uk, uv);
76
+ }
49
77
  }
50
78
  else {
51
- url.pathname = `${mountUrl}${waypoint}`;
79
+ const u = new URL(sanitiseWaypointWithAllowedParams(`${mountUrl}${waypoint}`), 'https://placeholder.test/');
80
+ url.pathname = u.pathname;
81
+ url.search = u.search;
52
82
  }
53
83
  // Attach context ID as query parameter for non-default contexts.
54
84
  // To avoid messy URLs with duplicated content, this parameter will _not_ be
@@ -57,20 +87,21 @@ function waypointUrl({ waypoint = '', mountUrl = '/', journeyContext, edit = fal
57
87
  if (journeyContext
58
88
  && !journeyContext.isDefault()
59
89
  && journeyContext.identity.id
60
- && !mountUrl.includes(journeyContext.identity.id)) {
61
- url.searchParams.append('contextid', journeyContext.identity.id);
90
+ && !mountUrl.includes(`/${journeyContext.identity.id}/`)) {
91
+ url.searchParams.set('contextid', journeyContext.identity.id);
62
92
  }
63
93
  // Attach edit mode flag
64
94
  if (edit === true) {
65
- url.searchParams.append('edit', 'true');
95
+ url.searchParams.set('edit', 'true');
66
96
  }
67
97
  if (edit && editOrigin) {
68
- url.searchParams.append('editorigin', sanitiseWaypoint(editOrigin));
98
+ url.searchParams.set('editorigin', sanitiseWaypointWithAllowedParams(editOrigin));
69
99
  }
70
100
  // Skipto
71
101
  if (skipTo) {
72
- url.searchParams.append('skipto', sanitiseWaypoint(skipTo));
102
+ url.searchParams.set('skipto', sanitiseWaypointWithAllowedParams(skipTo));
73
103
  }
74
104
  return `${sanitiseWaypoint(url.pathname)}${url.search}`;
75
105
  }
76
106
  exports.default = waypointUrl;
107
+ //# sourceMappingURL=waypoint-url.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"waypoint-url.js","sourceRoot":"","sources":["../../src/lib/waypoint-url.js"],"names":[],"mappings":";AAAA;;;GAGG;;AAEH,sBAAsB;AACtB,MAAM,oBAAoB,GAAG,iBAAiB,CAAA;AAE9C;;;;;;GAMG;AACH,MAAM,gBAAgB,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAErF;;;;;;;GAOG;AACH,MAAM,iCAAiC,GAAG,CAAC,CAAC,EAAE,EAAE;IAC9C,qBAAqB;IACrB,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;QACtB,OAAO,gBAAgB,CAAC,CAAC,CAAC,CAAC;KAC5B;IACD,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,GAAG,KAAK,CAAC;IACpC,MAAM,eAAe,GAAG,IAAI,eAAe,CAAC,SAAS,CAAC,CAAC;IAEvD,yCAAyC;IACzC,MAAM,wBAAwB,GAAG,IAAI,eAAe,EAAE,CAAC;IACvD,KAAK,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE;QAC9B,IAAI,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;YAC3B,wBAAwB,CAAC,GAAG,CAAC,EAAE,EAAE,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;SAC3D;KACF;IAED,OAAO,GAAG,gBAAgB,CAAC,QAAQ,CAAC,IAAI,wBAAwB,CAAC,QAAQ,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AACnG,CAAC,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,SAAwB,WAAW,CAAC,EAClC,QAAQ,GAAG,EAAE,EACb,QAAQ,GAAG,GAAG,EACd,cAAc,EACd,IAAI,GAAG,KAAK,EACZ,UAAU,EACV,MAAM,EACN,SAAS,GAAG,MAAM,GACnB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;IACrB,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,0BAA0B,CAAC,CAAC;IAEhD,yBAAyB;IACzB,+EAA+E;IAC/E,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,SAAS,EAAE;QAC/C,MAAM,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAE/C,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,iCAAiC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,2BAA2B,CAAC,CAAC;QACxF,GAAG,CAAC,QAAQ,GAAG,GAAG,gBAAgB,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;QAEpD,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,SAAS,QAAQ,EAAE,CAAC,CAAC;QACtD,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QACzC,KAAK,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE;YAC/C,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;SACjC;KACF;SAAM;QACL,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,iCAAiC,CAAC,GAAG,QAAQ,GAAG,QAAQ,EAAE,CAAC,EAAE,2BAA2B,CAAC,CAAC;QAC5G,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC;QAC1B,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;KACvB;IAED,iEAAiE;IACjE,4EAA4E;IAC5E,yEAAyE;IACzE,2DAA2D;IAC3D,IACE,cAAc;WACX,CAAC,cAAc,CAAC,SAAS,EAAE;WAC3B,cAAc,CAAC,QAAQ,CAAC,EAAE;WAC1B,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,cAAc,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,EACxD;QACA,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,EAAE,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;KAC/D;IAED,wBAAwB;IACxB,IAAI,IAAI,KAAK,IAAI,EAAE;QACjB,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KACtC;IAED,IAAI,IAAI,IAAI,UAAU,EAAE;QACtB,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,EAAE,iCAAiC,CAAC,UAAU,CAAC,CAAC,CAAC;KACnF;IAED,SAAS;IACT,IAAI,MAAM,EAAE;QACV,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,iCAAiC,CAAC,MAAM,CAAC,CAAC,CAAC;KAC3E;IAED,OAAO,GAAG,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC;AAC1D,CAAC;AA1DD,8BA0DC"}
@@ -31,3 +31,4 @@ function bodyParserMiddleware() {
31
31
  ];
32
32
  }
33
33
  exports.default = bodyParserMiddleware;
34
+ //# sourceMappingURL=body-parser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"body-parser.js","sourceRoot":"","sources":["../../src/middleware/body-parser.js"],"names":[],"mappings":";;;AAAA,qCAA0D;AAE1D,MAAM,MAAM,GAAG,YAAY,CAAC;AAC5B,MAAM,UAAU,GAAG,oBAAoB,CAAC;AACxC,MAAM,YAAY,GAAG,sBAAsB,CAAC;AAE5C,SAAgB,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ;IAChD,MAAM,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,0BAA0B,EAAE,EAAE,CAAC,CAAC;IACvF,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QACrB,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;KACjE;IACD,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QACzB,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;KACjE;IACD,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QAC3B,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;KACnE;AACH,CAAC;AAXD,gCAWC;AAED,SAAwB,oBAAoB;IAC1C,OAAO;QACL,IAAA,oBAAiB,EAAC;YAChB,QAAQ,EAAE,IAAI;YACd,IAAI,EAAE,mCAAmC;YACzC,OAAO,EAAE,IAAI;YACb,cAAc,EAAE,EAAE;YAClB,KAAK,EAAE,IAAI,GAAG,EAAE;YAChB,MAAM,EAAE,UAAU;SACnB,CAAC;KACH,CAAC;AACJ,CAAC;AAXD,uCAWC"}
@@ -29,3 +29,4 @@ function csrfMiddleware() {
29
29
  ];
30
30
  }
31
31
  exports.default = csrfMiddleware;
32
+ //# sourceMappingURL=csrf.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"csrf.js","sourceRoot":"","sources":["../../src/middleware/csrf.js"],"names":[],"mappings":";;;;;AAAA,kDAA0B;AAE1B,4EAA4E;AAC5E,6EAA6E;AAC7E,YAAY;AAEZ,SAAwB,cAAc;IACpC,OAAO;QACL,IAAA,eAAK,EAAC;YACJ,MAAM,EAAE,KAAK;YACb,UAAU,EAAE,SAAS;YACrB,oBAAoB;YACpB,6EAA6E;YAC7E,2CAA2C;YAC3C,0CAA0C;YAC1C,2BAA2B;YAC3B,kBAAkB;YAClB,6CAA6C;YAC7C,KAAK;SACN,CAAC;QACF,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;;YACjB,GAAG,CAAC,MAAM,CAAC,IAAI,mCACV,MAAA,GAAG,CAAC,MAAM,0CAAE,IAAI,KACnB,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,GAC3B,CAAC;YACF,IAAI,EAAE,CAAC;QACT,CAAC;KACF,CAAC;AACJ,CAAC;AAtBD,iCAsBC"}
@@ -81,3 +81,4 @@ function dataMiddleware({ plan, events, }) {
81
81
  ];
82
82
  }
83
83
  exports.default = dataMiddleware;
84
+ //# sourceMappingURL=data.js.map