@zengenti/contensis-react-base 4.0.0-beta.3 → 4.0.0-beta.4

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 (54) hide show
  1. package/cjs/{App-BNcmM8rN.js → App-DXro6av4.js} +5 -5
  2. package/cjs/{App-BNcmM8rN.js.map → App-DXro6av4.js.map} +1 -1
  3. package/cjs/{ChangePassword.container-642SYfpS.js → ChangePassword.container-ECjEXixF.js} +2 -2
  4. package/cjs/{ChangePassword.container-642SYfpS.js.map → ChangePassword.container-ECjEXixF.js.map} +1 -1
  5. package/cjs/{CookieHelper.class-BoY5TrIi.js → CookieHelper.class-C3Eqoze9.js} +170 -261
  6. package/cjs/CookieHelper.class-C3Eqoze9.js.map +1 -0
  7. package/cjs/{RouteLoader-DvyYYyIE.js → RouteLoader-BFc-Wl6M.js} +2 -2
  8. package/cjs/{RouteLoader-DvyYYyIE.js.map → RouteLoader-BFc-Wl6M.js.map} +1 -1
  9. package/cjs/{SSRContext-D66GKlH7.js → SSRContext-CFeZxG9H.js} +3 -3
  10. package/cjs/{SSRContext-D66GKlH7.js.map → SSRContext-CFeZxG9H.js.map} +1 -1
  11. package/cjs/client.js +8 -8
  12. package/cjs/contensis-react-base.js +8 -8
  13. package/cjs/redux.js +3 -3
  14. package/cjs/routing.js +5 -5
  15. package/cjs/{store-CADDS7cV.js → store-D07FOXvM.js} +4 -7
  16. package/cjs/store-D07FOXvM.js.map +1 -0
  17. package/cjs/user.js +2 -2
  18. package/cjs/util.js +4 -4
  19. package/cjs/{version-ASZx0NDG.js → version-B7XFkBhY.js} +2 -2
  20. package/cjs/{version-ASZx0NDG.js.map → version-B7XFkBhY.js.map} +1 -1
  21. package/esm/{App-CfIZbvU9.js → App-CIlf4cl4.js} +5 -5
  22. package/esm/{App-CfIZbvU9.js.map → App-CIlf4cl4.js.map} +1 -1
  23. package/esm/{ChangePassword.container-Q7bElOVz.js → ChangePassword.container-C0tFq0Tf.js} +2 -2
  24. package/esm/{ChangePassword.container-Q7bElOVz.js.map → ChangePassword.container-C0tFq0Tf.js.map} +1 -1
  25. package/esm/{CookieHelper.class-DzleKOOc.js → CookieHelper.class-FTURFpz3.js} +170 -261
  26. package/esm/CookieHelper.class-FTURFpz3.js.map +1 -0
  27. package/esm/{RouteLoader-qJA3UqTM.js → RouteLoader-D7HmVx5l.js} +2 -2
  28. package/esm/{RouteLoader-qJA3UqTM.js.map → RouteLoader-D7HmVx5l.js.map} +1 -1
  29. package/esm/{SSRContext-C743Oeli.js → SSRContext-CkiWIvde.js} +3 -3
  30. package/esm/{SSRContext-C743Oeli.js.map → SSRContext-CkiWIvde.js.map} +1 -1
  31. package/esm/client.js +9 -9
  32. package/esm/contensis-react-base.js +9 -9
  33. package/esm/redux.js +5 -5
  34. package/esm/routing.js +5 -5
  35. package/esm/{store-uQZKjfA8.js → store-v2gyr6u2.js} +4 -6
  36. package/esm/store-v2gyr6u2.js.map +1 -0
  37. package/esm/user.js +3 -3
  38. package/esm/util.js +4 -4
  39. package/esm/{version-B9nPx4IF.js → version-DvjTUbcA.js} +2 -2
  40. package/esm/{version-B9nPx4IF.js.map → version-DvjTUbcA.js.map} +1 -1
  41. package/models/app/pages/VersionInfo/components/VersionInfo.d.ts +4 -1
  42. package/models/models/AppState.d.ts +3 -3
  43. package/models/models/StaticRoute.d.ts +3 -2
  44. package/models/redux/store/injectors.d.ts +4 -4
  45. package/models/redux/store/store.d.ts +1 -1
  46. package/models/search/containers/withListing.d.ts +4 -1
  47. package/models/search/containers/withSearch.d.ts +4 -1
  48. package/models/user/hocs/withRegistration.d.ts +6 -3
  49. package/package.json +11 -11
  50. package/cjs/CookieHelper.class-BoY5TrIi.js.map +0 -1
  51. package/cjs/store-CADDS7cV.js.map +0 -1
  52. package/esm/CookieHelper.class-DzleKOOc.js.map +0 -1
  53. package/esm/store-uQZKjfA8.js.map +0 -1
  54. package/models/routing/routes.d.ts +0 -133
@@ -5,37 +5,16 @@ const LOGIN_COOKIE = 'ContensisCMSUserName';
5
5
  const REFRESH_TOKEN_COOKIE = 'RefreshToken';
6
6
  const findLoginCookies = cookies => typeof cookies === 'object' ? Object.fromEntries(Object.entries(cookies).filter(([name]) => [LOGIN_COOKIE, REFRESH_TOKEN_COOKIE].includes(name))) : cookies;
7
7
 
8
- var cookie = {};
8
+ var dist = {};
9
9
 
10
- /*!
11
- * cookie
12
- * Copyright(c) 2012-2014 Roman Shtylman
13
- * Copyright(c) 2015 Douglas Christopher Wilson
14
- * MIT Licensed
15
- */
16
-
17
- var hasRequiredCookie;
18
-
19
- function requireCookie () {
20
- if (hasRequiredCookie) return cookie;
21
- hasRequiredCookie = 1;
22
-
23
- /**
24
- * Module exports.
25
- * @public
26
- */
27
-
28
- cookie.parse = parse;
29
- cookie.serialize = serialize;
30
-
31
- /**
32
- * Module variables.
33
- * @private
34
- */
35
-
36
- var __toString = Object.prototype.toString;
37
- var __hasOwnProperty = Object.prototype.hasOwnProperty;
10
+ var hasRequiredDist;
38
11
 
12
+ function requireDist () {
13
+ if (hasRequiredDist) return dist;
14
+ hasRequiredDist = 1;
15
+ Object.defineProperty(dist, "__esModule", { value: true });
16
+ dist.parse = parse;
17
+ dist.serialize = serialize;
39
18
  /**
40
19
  * RegExp to match cookie-name in RFC 6265 sec 4.1.1
41
20
  * This refers out to the obsoleted definition of token in RFC 2616 sec 2.2
@@ -46,10 +25,11 @@ function requireCookie () {
46
25
  * tchar = "!" / "#" / "$" / "%" / "&" / "'" /
47
26
  * "*" / "+" / "-" / "." / "^" / "_" /
48
27
  * "`" / "|" / "~" / DIGIT / ALPHA
28
+ *
29
+ * Note: Allowing more characters - https://github.com/jshttp/cookie/issues/191
30
+ * Allow same range as cookie value, except `=`, which delimits end of name.
49
31
  */
50
-
51
- var cookieNameRegExp = /^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/;
52
-
32
+ const cookieNameRegExp = /^[\u0021-\u003A\u003C\u003E-\u007E]+$/;
53
33
  /**
54
34
  * RegExp to match cookie-value in RFC 6265 sec 4.1.1
55
35
  *
@@ -58,10 +38,11 @@ function requireCookie () {
58
38
  * ; US-ASCII characters excluding CTLs,
59
39
  * ; whitespace DQUOTE, comma, semicolon,
60
40
  * ; and backslash
41
+ *
42
+ * Allowing more characters: https://github.com/jshttp/cookie/issues/191
43
+ * Comma, backslash, and DQUOTE are not part of the parsing algorithm.
61
44
  */
62
-
63
- var cookieValueRegExp = /^("?)[\u0021\u0023-\u002B\u002D-\u003A\u003C-\u005B\u005D-\u007E]*\1$/;
64
-
45
+ const cookieValueRegExp = /^[\u0021-\u003A\u003C-\u007E]*$/;
65
46
  /**
66
47
  * RegExp to match domain-value in RFC 6265 sec 4.1.1
67
48
  *
@@ -85,9 +66,7 @@ function requireCookie () {
85
66
  * character is not permitted, but a trailing %x2E ("."), if present, will
86
67
  * cause the user agent to ignore the attribute.)
87
68
  */
88
-
89
- var domainValueRegExp = /^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i;
90
-
69
+ const domainValueRegExp = /^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i;
91
70
  /**
92
71
  * RegExp to match path-value in RFC 6265 sec 4.1.1
93
72
  *
@@ -95,90 +74,68 @@ function requireCookie () {
95
74
  * CHAR = %x01-7F
96
75
  * ; defined in RFC 5234 appendix B.1
97
76
  */
98
-
99
- var pathValueRegExp = /^[\u0020-\u003A\u003D-\u007E]*$/;
100
-
77
+ const pathValueRegExp = /^[\u0020-\u003A\u003D-\u007E]*$/;
78
+ const __toString = Object.prototype.toString;
79
+ const NullObject = /* @__PURE__ */ (() => {
80
+ const C = function () { };
81
+ C.prototype = Object.create(null);
82
+ return C;
83
+ })();
101
84
  /**
102
85
  * Parse a cookie header.
103
86
  *
104
87
  * Parse the given cookie header string into an object
105
88
  * The object has the various cookies as keys(names) => values
106
- *
107
- * @param {string} str
108
- * @param {object} [opt]
109
- * @return {object}
110
- * @public
111
89
  */
112
-
113
- function parse(str, opt) {
114
- if (typeof str !== 'string') {
115
- throw new TypeError('argument str must be a string');
116
- }
117
-
118
- var obj = {};
119
- var len = str.length;
120
- // RFC 6265 sec 4.1.1, RFC 2616 2.2 defines a cookie name consists of one char minimum, plus '='.
121
- if (len < 2) return obj;
122
-
123
- var dec = (opt && opt.decode) || decode;
124
- var index = 0;
125
- var eqIdx = 0;
126
- var endIdx = 0;
127
-
128
- do {
129
- eqIdx = str.indexOf('=', index);
130
- if (eqIdx === -1) break; // No more cookie pairs.
131
-
132
- endIdx = str.indexOf(';', index);
133
-
134
- if (endIdx === -1) {
135
- endIdx = len;
136
- } else if (eqIdx > endIdx) {
137
- // backtrack on prior semicolon
138
- index = str.lastIndexOf(';', eqIdx - 1) + 1;
139
- continue;
140
- }
141
-
142
- var keyStartIdx = startIndex(str, index, eqIdx);
143
- var keyEndIdx = endIndex(str, eqIdx, keyStartIdx);
144
- var key = str.slice(keyStartIdx, keyEndIdx);
145
-
146
- // only assign once
147
- if (!__hasOwnProperty.call(obj, key)) {
148
- var valStartIdx = startIndex(str, eqIdx + 1, endIdx);
149
- var valEndIdx = endIndex(str, endIdx, valStartIdx);
150
-
151
- if (str.charCodeAt(valStartIdx) === 0x22 /* " */ && str.charCodeAt(valEndIdx - 1) === 0x22 /* " */) {
152
- valStartIdx++;
153
- valEndIdx--;
154
- }
155
-
156
- var val = str.slice(valStartIdx, valEndIdx);
157
- obj[key] = tryDecode(val, dec);
158
- }
159
-
160
- index = endIdx + 1;
161
- } while (index < len);
162
-
163
- return obj;
90
+ function parse(str, options) {
91
+ const obj = new NullObject();
92
+ const len = str.length;
93
+ // RFC 6265 sec 4.1.1, RFC 2616 2.2 defines a cookie name consists of one char minimum, plus '='.
94
+ if (len < 2)
95
+ return obj;
96
+ const dec = options?.decode || decode;
97
+ let index = 0;
98
+ do {
99
+ const eqIdx = str.indexOf("=", index);
100
+ if (eqIdx === -1)
101
+ break; // No more cookie pairs.
102
+ const colonIdx = str.indexOf(";", index);
103
+ const endIdx = colonIdx === -1 ? len : colonIdx;
104
+ if (eqIdx > endIdx) {
105
+ // backtrack on prior semicolon
106
+ index = str.lastIndexOf(";", eqIdx - 1) + 1;
107
+ continue;
108
+ }
109
+ const keyStartIdx = startIndex(str, index, eqIdx);
110
+ const keyEndIdx = endIndex(str, eqIdx, keyStartIdx);
111
+ const key = str.slice(keyStartIdx, keyEndIdx);
112
+ // only assign once
113
+ if (obj[key] === undefined) {
114
+ let valStartIdx = startIndex(str, eqIdx + 1, endIdx);
115
+ let valEndIdx = endIndex(str, endIdx, valStartIdx);
116
+ const value = dec(str.slice(valStartIdx, valEndIdx));
117
+ obj[key] = value;
118
+ }
119
+ index = endIdx + 1;
120
+ } while (index < len);
121
+ return obj;
164
122
  }
165
-
166
123
  function startIndex(str, index, max) {
167
- do {
168
- var code = str.charCodeAt(index);
169
- if (code !== 0x20 /* */ && code !== 0x09 /* \t */) return index;
170
- } while (++index < max);
171
- return max;
124
+ do {
125
+ const code = str.charCodeAt(index);
126
+ if (code !== 0x20 /* */ && code !== 0x09 /* \t */)
127
+ return index;
128
+ } while (++index < max);
129
+ return max;
172
130
  }
173
-
174
131
  function endIndex(str, index, min) {
175
- while (index > min) {
176
- var code = str.charCodeAt(--index);
177
- if (code !== 0x20 /* */ && code !== 0x09 /* \t */) return index + 1;
178
- }
179
- return min;
132
+ while (index > min) {
133
+ const code = str.charCodeAt(--index);
134
+ if (code !== 0x20 /* */ && code !== 0x09 /* \t */)
135
+ return index + 1;
136
+ }
137
+ return min;
180
138
  }
181
-
182
139
  /**
183
140
  * Serialize data into a cookie header.
184
141
  *
@@ -187,169 +144,116 @@ function requireCookie () {
187
144
  *
188
145
  * serialize('foo', 'bar', { httpOnly: true })
189
146
  * => "foo=bar; httpOnly"
190
- *
191
- * @param {string} name
192
- * @param {string} val
193
- * @param {object} [opt]
194
- * @return {string}
195
- * @public
196
147
  */
197
-
198
- function serialize(name, val, opt) {
199
- var enc = (opt && opt.encode) || encodeURIComponent;
200
-
201
- if (typeof enc !== 'function') {
202
- throw new TypeError('option encode is invalid');
203
- }
204
-
205
- if (!cookieNameRegExp.test(name)) {
206
- throw new TypeError('argument name is invalid');
207
- }
208
-
209
- var value = enc(val);
210
-
211
- if (!cookieValueRegExp.test(value)) {
212
- throw new TypeError('argument val is invalid');
213
- }
214
-
215
- var str = name + '=' + value;
216
- if (!opt) return str;
217
-
218
- if (null != opt.maxAge) {
219
- var maxAge = Math.floor(opt.maxAge);
220
-
221
- if (!isFinite(maxAge)) {
222
- throw new TypeError('option maxAge is invalid')
148
+ function serialize(name, val, options) {
149
+ const enc = options?.encode || encodeURIComponent;
150
+ if (!cookieNameRegExp.test(name)) {
151
+ throw new TypeError(`argument name is invalid: ${name}`);
223
152
  }
224
-
225
- str += '; Max-Age=' + maxAge;
226
- }
227
-
228
- if (opt.domain) {
229
- if (!domainValueRegExp.test(opt.domain)) {
230
- throw new TypeError('option domain is invalid');
153
+ const value = enc(val);
154
+ if (!cookieValueRegExp.test(value)) {
155
+ throw new TypeError(`argument val is invalid: ${val}`);
231
156
  }
232
-
233
- str += '; Domain=' + opt.domain;
234
- }
235
-
236
- if (opt.path) {
237
- if (!pathValueRegExp.test(opt.path)) {
238
- throw new TypeError('option path is invalid');
157
+ let str = name + "=" + value;
158
+ if (!options)
159
+ return str;
160
+ if (options.maxAge !== undefined) {
161
+ if (!Number.isInteger(options.maxAge)) {
162
+ throw new TypeError(`option maxAge is invalid: ${options.maxAge}`);
163
+ }
164
+ str += "; Max-Age=" + options.maxAge;
239
165
  }
240
-
241
- str += '; Path=' + opt.path;
242
- }
243
-
244
- if (opt.expires) {
245
- var expires = opt.expires;
246
-
247
- if (!isDate(expires) || isNaN(expires.valueOf())) {
248
- throw new TypeError('option expires is invalid');
166
+ if (options.domain) {
167
+ if (!domainValueRegExp.test(options.domain)) {
168
+ throw new TypeError(`option domain is invalid: ${options.domain}`);
169
+ }
170
+ str += "; Domain=" + options.domain;
249
171
  }
250
-
251
- str += '; Expires=' + expires.toUTCString();
252
- }
253
-
254
- if (opt.httpOnly) {
255
- str += '; HttpOnly';
256
- }
257
-
258
- if (opt.secure) {
259
- str += '; Secure';
260
- }
261
-
262
- if (opt.partitioned) {
263
- str += '; Partitioned';
264
- }
265
-
266
- if (opt.priority) {
267
- var priority = typeof opt.priority === 'string'
268
- ? opt.priority.toLowerCase() : opt.priority;
269
-
270
- switch (priority) {
271
- case 'low':
272
- str += '; Priority=Low';
273
- break
274
- case 'medium':
275
- str += '; Priority=Medium';
276
- break
277
- case 'high':
278
- str += '; Priority=High';
279
- break
280
- default:
281
- throw new TypeError('option priority is invalid')
172
+ if (options.path) {
173
+ if (!pathValueRegExp.test(options.path)) {
174
+ throw new TypeError(`option path is invalid: ${options.path}`);
175
+ }
176
+ str += "; Path=" + options.path;
282
177
  }
283
- }
284
-
285
- if (opt.sameSite) {
286
- var sameSite = typeof opt.sameSite === 'string'
287
- ? opt.sameSite.toLowerCase() : opt.sameSite;
288
-
289
- switch (sameSite) {
290
- case true:
291
- str += '; SameSite=Strict';
292
- break;
293
- case 'lax':
294
- str += '; SameSite=Lax';
295
- break;
296
- case 'strict':
297
- str += '; SameSite=Strict';
298
- break;
299
- case 'none':
300
- str += '; SameSite=None';
301
- break;
302
- default:
303
- throw new TypeError('option sameSite is invalid');
178
+ if (options.expires) {
179
+ if (!isDate(options.expires) ||
180
+ !Number.isFinite(options.expires.valueOf())) {
181
+ throw new TypeError(`option expires is invalid: ${options.expires}`);
182
+ }
183
+ str += "; Expires=" + options.expires.toUTCString();
304
184
  }
305
- }
306
-
307
- return str;
185
+ if (options.httpOnly) {
186
+ str += "; HttpOnly";
187
+ }
188
+ if (options.secure) {
189
+ str += "; Secure";
190
+ }
191
+ if (options.partitioned) {
192
+ str += "; Partitioned";
193
+ }
194
+ if (options.priority) {
195
+ const priority = typeof options.priority === "string"
196
+ ? options.priority.toLowerCase()
197
+ : undefined;
198
+ switch (priority) {
199
+ case "low":
200
+ str += "; Priority=Low";
201
+ break;
202
+ case "medium":
203
+ str += "; Priority=Medium";
204
+ break;
205
+ case "high":
206
+ str += "; Priority=High";
207
+ break;
208
+ default:
209
+ throw new TypeError(`option priority is invalid: ${options.priority}`);
210
+ }
211
+ }
212
+ if (options.sameSite) {
213
+ const sameSite = typeof options.sameSite === "string"
214
+ ? options.sameSite.toLowerCase()
215
+ : options.sameSite;
216
+ switch (sameSite) {
217
+ case true:
218
+ case "strict":
219
+ str += "; SameSite=Strict";
220
+ break;
221
+ case "lax":
222
+ str += "; SameSite=Lax";
223
+ break;
224
+ case "none":
225
+ str += "; SameSite=None";
226
+ break;
227
+ default:
228
+ throw new TypeError(`option sameSite is invalid: ${options.sameSite}`);
229
+ }
230
+ }
231
+ return str;
308
232
  }
309
-
310
233
  /**
311
234
  * URL-decode string value. Optimized to skip native call when no %.
312
- *
313
- * @param {string} str
314
- * @returns {string}
315
235
  */
316
-
317
- function decode (str) {
318
- return str.indexOf('%') !== -1
319
- ? decodeURIComponent(str)
320
- : str
236
+ function decode(str) {
237
+ if (str.indexOf("%") === -1)
238
+ return str;
239
+ try {
240
+ return decodeURIComponent(str);
241
+ }
242
+ catch (e) {
243
+ return str;
244
+ }
321
245
  }
322
-
323
246
  /**
324
247
  * Determine if value is a Date.
325
- *
326
- * @param {*} val
327
- * @private
328
248
  */
329
-
330
- function isDate (val) {
331
- return __toString.call(val) === '[object Date]';
332
- }
333
-
334
- /**
335
- * Try decoding a string using a decoding function.
336
- *
337
- * @param {string} str
338
- * @param {function} decode
339
- * @private
340
- */
341
-
342
- function tryDecode(str, decode) {
343
- try {
344
- return decode(str);
345
- } catch (e) {
346
- return str;
347
- }
249
+ function isDate(val) {
250
+ return __toString.call(val) === "[object Date]";
348
251
  }
349
- return cookie;
252
+
253
+ return dist;
350
254
  }
351
255
 
352
- var cookieExports = requireCookie();
256
+ var distExports = requireDist();
353
257
 
354
258
  function hasDocumentCookie() {
355
259
  const testingValue = typeof global === 'undefined'
@@ -363,7 +267,7 @@ function hasDocumentCookie() {
363
267
  }
364
268
  function parseCookies(cookies) {
365
269
  if (typeof cookies === 'string') {
366
- return cookieExports.parse(cookies);
270
+ return distExports.parse(cookies);
367
271
  }
368
272
  else if (typeof cookies === 'object' && cookies !== null) {
369
273
  return cookies;
@@ -403,7 +307,7 @@ class Cookies {
403
307
  return;
404
308
  }
405
309
  const previousCookies = this.cookies;
406
- this.cookies = cookieExports.parse(document.cookie);
310
+ this.cookies = distExports.parse(document.cookie);
407
311
  this._checkChanges(previousCookies);
408
312
  };
409
313
  const domCookies = typeof document === 'undefined' ? '' : document.cookie;
@@ -461,7 +365,7 @@ class Cookies {
461
365
  const stringValue = typeof value === 'string' ? value : JSON.stringify(value);
462
366
  this.cookies = Object.assign(Object.assign({}, this.cookies), { [name]: stringValue });
463
367
  if (this.HAS_DOCUMENT_COOKIE) {
464
- document.cookie = cookieExports.serialize(name, stringValue, options);
368
+ document.cookie = distExports.serialize(name, stringValue, options);
465
369
  }
466
370
  this._emitChange({ name, value, options });
467
371
  }
@@ -470,7 +374,7 @@ class Cookies {
470
374
  this.cookies = Object.assign({}, this.cookies);
471
375
  delete this.cookies[name];
472
376
  if (this.HAS_DOCUMENT_COOKIE) {
473
- document.cookie = cookieExports.serialize(name, '', finalOptions);
377
+ document.cookie = distExports.serialize(name, '', finalOptions);
474
378
  }
475
379
  this._emitChange({ name, value: undefined, options });
476
380
  }
@@ -499,6 +403,11 @@ class Cookies {
499
403
  }
500
404
  }
501
405
  }
406
+ removeAllChangeListeners() {
407
+ while (this.changeListeners.length > 0) {
408
+ this.removeChangeListener(this.changeListeners[0]);
409
+ }
410
+ }
502
411
  }
503
412
 
504
413
  const COOKIE_VALID_DAYS = 1; // 0 = Session cookie
@@ -559,4 +468,4 @@ exports.Cookies = Cookies;
559
468
  exports.LOGIN_COOKIE = LOGIN_COOKIE;
560
469
  exports.REFRESH_TOKEN_COOKIE = REFRESH_TOKEN_COOKIE;
561
470
  exports.findLoginCookies = findLoginCookies;
562
- //# sourceMappingURL=CookieHelper.class-BoY5TrIi.js.map
471
+ //# sourceMappingURL=CookieHelper.class-C3Eqoze9.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CookieHelper.class-C3Eqoze9.js","sources":["../src/user/util/CookieConstants.ts","../node_modules/universal-cookie/esm/index.mjs","../src/user/util/CookieHelper.class.ts"],"sourcesContent":["export const BEARER_TOKEN_COOKIE = 'ContensisSecurityBearerToken';\nexport const LOGIN_COOKIE = 'ContensisCMSUserName';\nexport const REFRESH_TOKEN_COOKIE = 'RefreshToken';\n\nexport type CookieObject = { [name: string]: any };\n\nexport const findLoginCookies = (cookies: CookieObject | string) =>\n typeof cookies === 'object'\n ? Object.fromEntries(\n Object.entries(cookies).filter(([name]) =>\n [LOGIN_COOKIE, REFRESH_TOKEN_COOKIE].includes(name)\n )\n )\n : cookies;\n","var dist = {};\n\nvar hasRequiredDist;\n\nfunction requireDist () {\n\tif (hasRequiredDist) return dist;\n\thasRequiredDist = 1;\n\tObject.defineProperty(dist, \"__esModule\", { value: true });\n\tdist.parse = parse;\n\tdist.serialize = serialize;\n\t/**\n\t * RegExp to match cookie-name in RFC 6265 sec 4.1.1\n\t * This refers out to the obsoleted definition of token in RFC 2616 sec 2.2\n\t * which has been replaced by the token definition in RFC 7230 appendix B.\n\t *\n\t * cookie-name = token\n\t * token = 1*tchar\n\t * tchar = \"!\" / \"#\" / \"$\" / \"%\" / \"&\" / \"'\" /\n\t * \"*\" / \"+\" / \"-\" / \".\" / \"^\" / \"_\" /\n\t * \"`\" / \"|\" / \"~\" / DIGIT / ALPHA\n\t *\n\t * Note: Allowing more characters - https://github.com/jshttp/cookie/issues/191\n\t * Allow same range as cookie value, except `=`, which delimits end of name.\n\t */\n\tconst cookieNameRegExp = /^[\\u0021-\\u003A\\u003C\\u003E-\\u007E]+$/;\n\t/**\n\t * RegExp to match cookie-value in RFC 6265 sec 4.1.1\n\t *\n\t * cookie-value = *cookie-octet / ( DQUOTE *cookie-octet DQUOTE )\n\t * cookie-octet = %x21 / %x23-2B / %x2D-3A / %x3C-5B / %x5D-7E\n\t * ; US-ASCII characters excluding CTLs,\n\t * ; whitespace DQUOTE, comma, semicolon,\n\t * ; and backslash\n\t *\n\t * Allowing more characters: https://github.com/jshttp/cookie/issues/191\n\t * Comma, backslash, and DQUOTE are not part of the parsing algorithm.\n\t */\n\tconst cookieValueRegExp = /^[\\u0021-\\u003A\\u003C-\\u007E]*$/;\n\t/**\n\t * RegExp to match domain-value in RFC 6265 sec 4.1.1\n\t *\n\t * domain-value = <subdomain>\n\t * ; defined in [RFC1034], Section 3.5, as\n\t * ; enhanced by [RFC1123], Section 2.1\n\t * <subdomain> = <label> | <subdomain> \".\" <label>\n\t * <label> = <let-dig> [ [ <ldh-str> ] <let-dig> ]\n\t * Labels must be 63 characters or less.\n\t * 'let-dig' not 'letter' in the first char, per RFC1123\n\t * <ldh-str> = <let-dig-hyp> | <let-dig-hyp> <ldh-str>\n\t * <let-dig-hyp> = <let-dig> | \"-\"\n\t * <let-dig> = <letter> | <digit>\n\t * <letter> = any one of the 52 alphabetic characters A through Z in\n\t * upper case and a through z in lower case\n\t * <digit> = any one of the ten digits 0 through 9\n\t *\n\t * Keep support for leading dot: https://github.com/jshttp/cookie/issues/173\n\t *\n\t * > (Note that a leading %x2E (\".\"), if present, is ignored even though that\n\t * character is not permitted, but a trailing %x2E (\".\"), if present, will\n\t * cause the user agent to ignore the attribute.)\n\t */\n\tconst domainValueRegExp = /^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i;\n\t/**\n\t * RegExp to match path-value in RFC 6265 sec 4.1.1\n\t *\n\t * path-value = <any CHAR except CTLs or \";\">\n\t * CHAR = %x01-7F\n\t * ; defined in RFC 5234 appendix B.1\n\t */\n\tconst pathValueRegExp = /^[\\u0020-\\u003A\\u003D-\\u007E]*$/;\n\tconst __toString = Object.prototype.toString;\n\tconst NullObject = /* @__PURE__ */ (() => {\n\t const C = function () { };\n\t C.prototype = Object.create(null);\n\t return C;\n\t})();\n\t/**\n\t * Parse a cookie header.\n\t *\n\t * Parse the given cookie header string into an object\n\t * The object has the various cookies as keys(names) => values\n\t */\n\tfunction parse(str, options) {\n\t const obj = new NullObject();\n\t const len = str.length;\n\t // RFC 6265 sec 4.1.1, RFC 2616 2.2 defines a cookie name consists of one char minimum, plus '='.\n\t if (len < 2)\n\t return obj;\n\t const dec = options?.decode || decode;\n\t let index = 0;\n\t do {\n\t const eqIdx = str.indexOf(\"=\", index);\n\t if (eqIdx === -1)\n\t break; // No more cookie pairs.\n\t const colonIdx = str.indexOf(\";\", index);\n\t const endIdx = colonIdx === -1 ? len : colonIdx;\n\t if (eqIdx > endIdx) {\n\t // backtrack on prior semicolon\n\t index = str.lastIndexOf(\";\", eqIdx - 1) + 1;\n\t continue;\n\t }\n\t const keyStartIdx = startIndex(str, index, eqIdx);\n\t const keyEndIdx = endIndex(str, eqIdx, keyStartIdx);\n\t const key = str.slice(keyStartIdx, keyEndIdx);\n\t // only assign once\n\t if (obj[key] === undefined) {\n\t let valStartIdx = startIndex(str, eqIdx + 1, endIdx);\n\t let valEndIdx = endIndex(str, endIdx, valStartIdx);\n\t const value = dec(str.slice(valStartIdx, valEndIdx));\n\t obj[key] = value;\n\t }\n\t index = endIdx + 1;\n\t } while (index < len);\n\t return obj;\n\t}\n\tfunction startIndex(str, index, max) {\n\t do {\n\t const code = str.charCodeAt(index);\n\t if (code !== 0x20 /* */ && code !== 0x09 /* \\t */)\n\t return index;\n\t } while (++index < max);\n\t return max;\n\t}\n\tfunction endIndex(str, index, min) {\n\t while (index > min) {\n\t const code = str.charCodeAt(--index);\n\t if (code !== 0x20 /* */ && code !== 0x09 /* \\t */)\n\t return index + 1;\n\t }\n\t return min;\n\t}\n\t/**\n\t * Serialize data into a cookie header.\n\t *\n\t * Serialize a name value pair into a cookie string suitable for\n\t * http headers. An optional options object specifies cookie parameters.\n\t *\n\t * serialize('foo', 'bar', { httpOnly: true })\n\t * => \"foo=bar; httpOnly\"\n\t */\n\tfunction serialize(name, val, options) {\n\t const enc = options?.encode || encodeURIComponent;\n\t if (!cookieNameRegExp.test(name)) {\n\t throw new TypeError(`argument name is invalid: ${name}`);\n\t }\n\t const value = enc(val);\n\t if (!cookieValueRegExp.test(value)) {\n\t throw new TypeError(`argument val is invalid: ${val}`);\n\t }\n\t let str = name + \"=\" + value;\n\t if (!options)\n\t return str;\n\t if (options.maxAge !== undefined) {\n\t if (!Number.isInteger(options.maxAge)) {\n\t throw new TypeError(`option maxAge is invalid: ${options.maxAge}`);\n\t }\n\t str += \"; Max-Age=\" + options.maxAge;\n\t }\n\t if (options.domain) {\n\t if (!domainValueRegExp.test(options.domain)) {\n\t throw new TypeError(`option domain is invalid: ${options.domain}`);\n\t }\n\t str += \"; Domain=\" + options.domain;\n\t }\n\t if (options.path) {\n\t if (!pathValueRegExp.test(options.path)) {\n\t throw new TypeError(`option path is invalid: ${options.path}`);\n\t }\n\t str += \"; Path=\" + options.path;\n\t }\n\t if (options.expires) {\n\t if (!isDate(options.expires) ||\n\t !Number.isFinite(options.expires.valueOf())) {\n\t throw new TypeError(`option expires is invalid: ${options.expires}`);\n\t }\n\t str += \"; Expires=\" + options.expires.toUTCString();\n\t }\n\t if (options.httpOnly) {\n\t str += \"; HttpOnly\";\n\t }\n\t if (options.secure) {\n\t str += \"; Secure\";\n\t }\n\t if (options.partitioned) {\n\t str += \"; Partitioned\";\n\t }\n\t if (options.priority) {\n\t const priority = typeof options.priority === \"string\"\n\t ? options.priority.toLowerCase()\n\t : undefined;\n\t switch (priority) {\n\t case \"low\":\n\t str += \"; Priority=Low\";\n\t break;\n\t case \"medium\":\n\t str += \"; Priority=Medium\";\n\t break;\n\t case \"high\":\n\t str += \"; Priority=High\";\n\t break;\n\t default:\n\t throw new TypeError(`option priority is invalid: ${options.priority}`);\n\t }\n\t }\n\t if (options.sameSite) {\n\t const sameSite = typeof options.sameSite === \"string\"\n\t ? options.sameSite.toLowerCase()\n\t : options.sameSite;\n\t switch (sameSite) {\n\t case true:\n\t case \"strict\":\n\t str += \"; SameSite=Strict\";\n\t break;\n\t case \"lax\":\n\t str += \"; SameSite=Lax\";\n\t break;\n\t case \"none\":\n\t str += \"; SameSite=None\";\n\t break;\n\t default:\n\t throw new TypeError(`option sameSite is invalid: ${options.sameSite}`);\n\t }\n\t }\n\t return str;\n\t}\n\t/**\n\t * URL-decode string value. Optimized to skip native call when no %.\n\t */\n\tfunction decode(str) {\n\t if (str.indexOf(\"%\") === -1)\n\t return str;\n\t try {\n\t return decodeURIComponent(str);\n\t }\n\t catch (e) {\n\t return str;\n\t }\n\t}\n\t/**\n\t * Determine if value is a Date.\n\t */\n\tfunction isDate(val) {\n\t return __toString.call(val) === \"[object Date]\";\n\t}\n\t\n\treturn dist;\n}\n\nvar distExports = requireDist();\n\nfunction hasDocumentCookie() {\n const testingValue = typeof global === 'undefined'\n ? undefined\n : global.TEST_HAS_DOCUMENT_COOKIE;\n if (typeof testingValue === 'boolean') {\n return testingValue;\n }\n // Can we get/set cookies on document.cookie?\n return typeof document === 'object' && typeof document.cookie === 'string';\n}\nfunction parseCookies(cookies) {\n if (typeof cookies === 'string') {\n return distExports.parse(cookies);\n }\n else if (typeof cookies === 'object' && cookies !== null) {\n return cookies;\n }\n else {\n return {};\n }\n}\nfunction readCookie(value, options = {}) {\n const cleanValue = cleanupCookieValue(value);\n if (!options.doNotParse) {\n try {\n return JSON.parse(cleanValue);\n }\n catch (e) {\n // At least we tried\n }\n }\n // Ignore clean value if we failed the deserialization\n // It is not relevant anymore to trim those values\n return value;\n}\nfunction cleanupCookieValue(value) {\n // express prepend j: before serializing a cookie\n if (value && value[0] === 'j' && value[1] === ':') {\n return value.substr(2);\n }\n return value;\n}\n\nclass Cookies {\n constructor(cookies, defaultSetOptions = {}) {\n this.changeListeners = [];\n this.HAS_DOCUMENT_COOKIE = false;\n this.update = () => {\n if (!this.HAS_DOCUMENT_COOKIE) {\n return;\n }\n const previousCookies = this.cookies;\n this.cookies = distExports.parse(document.cookie);\n this._checkChanges(previousCookies);\n };\n const domCookies = typeof document === 'undefined' ? '' : document.cookie;\n this.cookies = parseCookies(cookies || domCookies);\n this.defaultSetOptions = defaultSetOptions;\n this.HAS_DOCUMENT_COOKIE = hasDocumentCookie();\n }\n _emitChange(params) {\n for (let i = 0; i < this.changeListeners.length; ++i) {\n this.changeListeners[i](params);\n }\n }\n _checkChanges(previousCookies) {\n const names = new Set(Object.keys(previousCookies).concat(Object.keys(this.cookies)));\n names.forEach((name) => {\n if (previousCookies[name] !== this.cookies[name]) {\n this._emitChange({\n name,\n value: readCookie(this.cookies[name]),\n });\n }\n });\n }\n _startPolling() {\n this.pollingInterval = setInterval(this.update, 300);\n }\n _stopPolling() {\n if (this.pollingInterval) {\n clearInterval(this.pollingInterval);\n }\n }\n get(name, options = {}) {\n if (!options.doNotUpdate) {\n this.update();\n }\n return readCookie(this.cookies[name], options);\n }\n getAll(options = {}) {\n if (!options.doNotUpdate) {\n this.update();\n }\n const result = {};\n for (let name in this.cookies) {\n result[name] = readCookie(this.cookies[name], options);\n }\n return result;\n }\n set(name, value, options) {\n if (options) {\n options = Object.assign(Object.assign({}, this.defaultSetOptions), options);\n }\n else {\n options = this.defaultSetOptions;\n }\n const stringValue = typeof value === 'string' ? value : JSON.stringify(value);\n this.cookies = Object.assign(Object.assign({}, this.cookies), { [name]: stringValue });\n if (this.HAS_DOCUMENT_COOKIE) {\n document.cookie = distExports.serialize(name, stringValue, options);\n }\n this._emitChange({ name, value, options });\n }\n remove(name, options) {\n const finalOptions = (options = Object.assign(Object.assign(Object.assign({}, this.defaultSetOptions), options), { expires: new Date(1970, 1, 1, 0, 0, 1), maxAge: 0 }));\n this.cookies = Object.assign({}, this.cookies);\n delete this.cookies[name];\n if (this.HAS_DOCUMENT_COOKIE) {\n document.cookie = distExports.serialize(name, '', finalOptions);\n }\n this._emitChange({ name, value: undefined, options });\n }\n addChangeListener(callback) {\n this.changeListeners.push(callback);\n if (this.HAS_DOCUMENT_COOKIE && this.changeListeners.length === 1) {\n if (typeof window === 'object' && 'cookieStore' in window) {\n window.cookieStore.addEventListener('change', this.update);\n }\n else {\n this._startPolling();\n }\n }\n }\n removeChangeListener(callback) {\n const idx = this.changeListeners.indexOf(callback);\n if (idx >= 0) {\n this.changeListeners.splice(idx, 1);\n }\n if (this.HAS_DOCUMENT_COOKIE && this.changeListeners.length === 0) {\n if (typeof window === 'object' && 'cookieStore' in window) {\n window.cookieStore.removeEventListener('change', this.update);\n }\n else {\n this._stopPolling();\n }\n }\n }\n removeAllChangeListeners() {\n while (this.changeListeners.length > 0) {\n this.removeChangeListener(this.changeListeners[0]);\n }\n }\n}\n\nexport { Cookies as default };\n","import { useCookies } from 'react-cookie';\nimport FallbackCookies from 'universal-cookie';\n\nconst COOKIE_VALID_DAYS = 1; // 0 = Session cookie\n\ntype CookieHook = ReturnType<typeof useCookies>;\ntype Cookies = { [k: string]: string };\ntype SetCookie = CookieHook[1];\ntype RemoveCookie = CookieHook[2];\ntype UpdateCookie = CookieHook[3];\n\n// CookieHelper is a class that takes in and lets us pass around the methods provided\n// by `useCookie` react hook in backend code that is connected to the universal-cookies\n// instance created in SSR middleware (and provides browser cookies)\nexport class CookieHelper {\n private cookies: Cookies;\n private set?: SetCookie;\n private remove?: RemoveCookie;\n private update?: UpdateCookie;\n private fallback!: FallbackCookies;\n\n get raw() {\n return this.cookies;\n }\n\n get cookie(): FallbackCookies {\n return (this.set ? this : this.fallback) as FallbackCookies;\n }\n\n constructor(\n cookies?: { [k: string]: string },\n setCookie?: CookieHelper['set'],\n removeCookie?: CookieHelper['remove'],\n updateCookies?: CookieHelper['update']\n ) {\n // Add fallback methods if global cookies not supplied\n if (!cookies || !setCookie || !removeCookie)\n this.fallback = new FallbackCookies();\n\n this.cookies = cookies || this.fallback.getAll();\n if (setCookie) this.set = setCookie;\n if (removeCookie) this.remove = removeCookie;\n if (updateCookies) this.update = updateCookies;\n }\n\n GetCookie(name: string) {\n const cookie = this.cookies[name];\n if (typeof cookie === 'undefined') {\n return null;\n }\n return cookie;\n }\n\n SetCookie(name: string, value: string, maxAgeDays = COOKIE_VALID_DAYS) {\n // update local cookies object as this is provided as a clone of `req.universalCookies`\n this.cookies[name] = value;\n\n // call the passed setCookie method so we can update the `universal-cookie` instance\n // with the change listener attached so the cookies can be set in SSR response\n if (maxAgeDays === 0) this.cookie.set(name, value);\n else\n this.cookie.set(name, value, {\n expires: addDays(new Date(), maxAgeDays),\n path: '/',\n });\n }\n\n DeleteCookie(name: string) {\n // update local cookies object as this is provided as a clone of `req.universalCookies`\n delete this.cookies[name];\n\n this.cookie.remove(name, {\n path: '/',\n });\n }\n}\nconst addDays = (date = new Date(), days: number) => {\n const result = new Date(date);\n result.setDate(result.getDate() + days);\n return result;\n};\n\nexport const mapCookieHeader = cookies =>\n typeof cookies === 'object'\n ? Object.entries(cookies)\n .map(([name, value]) => `${name}=${value}`)\n .join('; ')\n : cookies;\n"],"names":["BEARER_TOKEN_COOKIE","LOGIN_COOKIE","REFRESH_TOKEN_COOKIE","findLoginCookies","cookies","Object","fromEntries","entries","filter","name","includes","COOKIE_VALID_DAYS","CookieHelper","raw","cookie","set","fallback","constructor","setCookie","removeCookie","updateCookies","FallbackCookies","getAll","remove","update","GetCookie","SetCookie","value","maxAgeDays","expires","addDays","Date","path","DeleteCookie","date","days","result","setDate","getDate"],"mappings":"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","x_google_ignoreList":[1]}
@@ -6,7 +6,7 @@ var reactRouterDom = require('react-router-dom');
6
6
  var reselect = require('reselect');
7
7
  var selectors = require('./selectors-wCs5fHD4.js');
8
8
  var ToJs = require('./ToJs-C9jwV7YB.js');
9
- var SSRContext = require('./SSRContext-D66GKlH7.js');
9
+ var SSRContext = require('./SSRContext-CFeZxG9H.js');
10
10
 
11
11
  function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
12
12
 
@@ -305,4 +305,4 @@ exports.RouteLoader = RouteLoader$1;
305
305
  exports.Status = Status;
306
306
  exports.mergeStaticRoutes = mergeStaticRoutes;
307
307
  exports.useHttpContext = useHttpContext;
308
- //# sourceMappingURL=RouteLoader-DvyYYyIE.js.map
308
+ //# sourceMappingURL=RouteLoader-BFc-Wl6M.js.map