@venizia/ignis-helpers 0.2.0-1 → 0.2.0-2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/common/redact.d.ts +10 -2
- package/dist/cjs/common/redact.d.ts.map +1 -1
- package/dist/cjs/common/redact.js +17 -3
- package/dist/cjs/common/redact.js.map +1 -1
- package/dist/cjs/modules/logger/formatting/deep-splat.d.ts.map +1 -1
- package/dist/cjs/modules/logger/formatting/deep-splat.js +18 -1
- package/dist/cjs/modules/logger/formatting/deep-splat.js.map +1 -1
- package/dist/cjs/modules/logger/winston/logger.d.ts.map +1 -1
- package/dist/cjs/modules/logger/winston/logger.js +7 -0
- package/dist/cjs/modules/logger/winston/logger.js.map +1 -1
- package/dist/cjs/modules/network/http-request/fetcher/axios-fetcher.d.ts +22 -2
- package/dist/cjs/modules/network/http-request/fetcher/axios-fetcher.d.ts.map +1 -1
- package/dist/cjs/modules/network/http-request/fetcher/axios-fetcher.js +12 -3
- package/dist/cjs/modules/network/http-request/fetcher/axios-fetcher.js.map +1 -1
- package/dist/cjs/modules/network/http-request/fetcher/base-fetcher.d.ts +15 -14
- package/dist/cjs/modules/network/http-request/fetcher/base-fetcher.d.ts.map +1 -1
- package/dist/cjs/modules/network/http-request/fetcher/base-fetcher.js.map +1 -1
- package/dist/cjs/modules/network/http-request/fetcher/node-fetcher.d.ts +3 -2
- package/dist/cjs/modules/network/http-request/fetcher/node-fetcher.d.ts.map +1 -1
- package/dist/cjs/modules/network/http-request/fetcher/node-fetcher.js +10 -1
- package/dist/cjs/modules/network/http-request/fetcher/node-fetcher.js.map +1 -1
- package/dist/cjs/modules/network/tcp-socket/base-tcp-server.helper.d.ts.map +1 -1
- package/dist/cjs/modules/network/tcp-socket/base-tcp-server.helper.js +3 -5
- package/dist/cjs/modules/network/tcp-socket/base-tcp-server.helper.js.map +1 -1
- package/dist/cjs/modules/redis/base/abstract.helper.js +7 -4
- package/dist/cjs/modules/redis/base/abstract.helper.js.map +1 -1
- package/dist/cjs/modules/socket/socket-io/server/helper.d.ts +10 -0
- package/dist/cjs/modules/socket/socket-io/server/helper.d.ts.map +1 -1
- package/dist/cjs/modules/socket/socket-io/server/helper.js +23 -5
- package/dist/cjs/modules/socket/socket-io/server/helper.js.map +1 -1
- package/dist/cjs/modules/socket/websocket/server/helper.d.ts +9 -0
- package/dist/cjs/modules/socket/websocket/server/helper.d.ts.map +1 -1
- package/dist/cjs/modules/socket/websocket/server/helper.js +35 -4
- package/dist/cjs/modules/socket/websocket/server/helper.js.map +1 -1
- package/dist/esm/common/redact.d.ts +10 -2
- package/dist/esm/common/redact.d.ts.map +1 -1
- package/dist/esm/common/redact.js +17 -3
- package/dist/esm/common/redact.js.map +1 -1
- package/dist/esm/modules/logger/formatting/deep-splat.d.ts.map +1 -1
- package/dist/esm/modules/logger/formatting/deep-splat.js +18 -1
- package/dist/esm/modules/logger/formatting/deep-splat.js.map +1 -1
- package/dist/esm/modules/logger/winston/logger.d.ts.map +1 -1
- package/dist/esm/modules/logger/winston/logger.js +7 -0
- package/dist/esm/modules/logger/winston/logger.js.map +1 -1
- package/dist/esm/modules/network/http-request/fetcher/axios-fetcher.d.ts +22 -2
- package/dist/esm/modules/network/http-request/fetcher/axios-fetcher.d.ts.map +1 -1
- package/dist/esm/modules/network/http-request/fetcher/axios-fetcher.js +12 -3
- package/dist/esm/modules/network/http-request/fetcher/axios-fetcher.js.map +1 -1
- package/dist/esm/modules/network/http-request/fetcher/base-fetcher.d.ts +15 -14
- package/dist/esm/modules/network/http-request/fetcher/base-fetcher.d.ts.map +1 -1
- package/dist/esm/modules/network/http-request/fetcher/base-fetcher.js.map +1 -1
- package/dist/esm/modules/network/http-request/fetcher/node-fetcher.d.ts +3 -2
- package/dist/esm/modules/network/http-request/fetcher/node-fetcher.d.ts.map +1 -1
- package/dist/esm/modules/network/http-request/fetcher/node-fetcher.js +10 -1
- package/dist/esm/modules/network/http-request/fetcher/node-fetcher.js.map +1 -1
- package/dist/esm/modules/network/tcp-socket/base-tcp-server.helper.d.ts.map +1 -1
- package/dist/esm/modules/network/tcp-socket/base-tcp-server.helper.js +3 -2
- package/dist/esm/modules/network/tcp-socket/base-tcp-server.helper.js.map +1 -1
- package/dist/esm/modules/redis/base/abstract.helper.js +7 -4
- package/dist/esm/modules/redis/base/abstract.helper.js.map +1 -1
- package/dist/esm/modules/socket/socket-io/server/helper.d.ts +10 -0
- package/dist/esm/modules/socket/socket-io/server/helper.d.ts.map +1 -1
- package/dist/esm/modules/socket/socket-io/server/helper.js +23 -5
- package/dist/esm/modules/socket/socket-io/server/helper.js.map +1 -1
- package/dist/esm/modules/socket/websocket/server/helper.d.ts +9 -0
- package/dist/esm/modules/socket/websocket/server/helper.d.ts.map +1 -1
- package/dist/esm/modules/socket/websocket/server/helper.js +35 -4
- package/dist/esm/modules/socket/websocket/server/helper.js.map +1 -1
- package/package.json +1 -1
|
@@ -40,6 +40,20 @@ export const formatLogMessage = (opts) => {
|
|
|
40
40
|
if (placeholder === '%j') {
|
|
41
41
|
return toJsonSafe({ value: arg, depth: inspectOptions.depth ?? resolveDepth() });
|
|
42
42
|
}
|
|
43
|
+
// `%o`, `%O` and arguments with NO placeholder (`util.format` appends those) are redacted but
|
|
44
|
+
// left as objects, so `util.formatWithOptions` still renders them the way that placeholder
|
|
45
|
+
// means. Pre-inspecting them into a string here would make `%o` print a quoted, escaped string
|
|
46
|
+
// instead of an object. Only the redaction is added; the rendering is unchanged.
|
|
47
|
+
//
|
|
48
|
+
// Before this, `logger.info('login failed', { password })` printed the password verbatim: the
|
|
49
|
+
// redactor only ever saw `%s`, while the reference docs recommend `%o` for data objects.
|
|
50
|
+
//
|
|
51
|
+
// Bounded like the `%s` path below, and for the same reason: an unbounded walk on a very deep
|
|
52
|
+
// graph is work whose result the renderer discards, and deep enough it is a `RangeError` on a
|
|
53
|
+
// call that could not throw before. `%o` renders at `depth`, so `+2` covers what is shown.
|
|
54
|
+
if (placeholder === undefined || placeholder === '%o' || placeholder === '%O') {
|
|
55
|
+
return redactSecrets(arg, undefined, (inspectOptions.depth ?? resolveDepth()) + 2);
|
|
56
|
+
}
|
|
43
57
|
if (placeholder !== '%s') {
|
|
44
58
|
return arg;
|
|
45
59
|
}
|
|
@@ -47,7 +61,10 @@ export const formatLogMessage = (opts) => {
|
|
|
47
61
|
if (arg instanceof Error) {
|
|
48
62
|
return `\n${ErrorPrettier.format({ error: arg, inspectOptions })}`;
|
|
49
63
|
}
|
|
50
|
-
|
|
64
|
+
// Bounded to just past what `util.inspect` will actually render. `+2`, not `+1`: at exactly
|
|
65
|
+
// `depth + 1` the redactor replaces the last level with a string, and inspect then prints a
|
|
66
|
+
// QUOTED `'[Object]'` instead of its own bare `[Object]`.
|
|
67
|
+
return util.inspect(redactSecrets(arg, undefined, (inspectOptions.depth ?? resolveDepth()) + 2), inspectOptions);
|
|
51
68
|
});
|
|
52
69
|
return util.formatWithOptions(inspectOptions, message, ...widened);
|
|
53
70
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deep-splat.js","sourceRoot":"","sources":["../../../../../src/modules/logger/formatting/deep-splat.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,wFAAwF;AACxF,MAAM,mBAAmB,GAAG,eAAe,CAAC;AAE5C,uQAAuQ;AACvQ,MAAM,qBAAqB,GAAG,CAAC,CAAC;AAEhC,MAAM,YAAY,GAAG,GAAW,EAAE;IAChC,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC;IAE5D,8HAA8H;IAC9H,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACzD,OAAO,qBAAqB,CAAC;IAC/B,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAE/C,mJAAmJ;IACnJ,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;QACvC,OAAO,qBAAqB,CAAC;IAC/B,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,GAAwB,EAAE;IACpD,OAAO;QACL,KAAK,EAAE,YAAY,EAAE;QACrB,cAAc,EAAE,IAAI;QACpB,eAAe,EAAE,IAAI;QACrB,WAAW,EAAE,QAAQ;KACtB,CAAC;AACJ,CAAC,CAAC;AAEF,2TAA2T;AAC3T,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,IAIhC,EAAU,EAAE;IACX,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,cAAc,GAAG,mBAAmB,EAAE,EAAE,GAAG,IAAI,CAAC;IAEvE,MAAM,YAAY,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC;IAEhG,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;QACtC,MAAM,WAAW,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,aAAa,GAAG,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,CAAC;QAE9D,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,OAAO,GAAG,CAAC;QACb,CAAC;QAED,0TAA0T;QAC1T,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;YACzB,OAAO,UAAU,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,cAAc,CAAC,KAAK,IAAI,YAAY,EAAE,EAAE,CAAC,CAAC;QACnF,CAAC;QAED,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;YACzB,OAAO,GAAG,CAAC;QACb,CAAC;QAED,kOAAkO;QAClO,IAAI,GAAG,YAAY,KAAK,EAAE,CAAC;YACzB,OAAO,KAAK,aAAa,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,cAAc,EAAE,CAAC,EAAE,CAAC;QACrE,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,
|
|
1
|
+
{"version":3,"file":"deep-splat.js","sourceRoot":"","sources":["../../../../../src/modules/logger/formatting/deep-splat.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../../../src/modules/logger/winston/logger.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAG/C,qBAAa,aAAc,SAAQ,UAAU;IAC3C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAoC;IACxD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiB;IAEzC,OAAO;IAKP,4KAA4K;IAC5K,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,OAAO,CAAC,MAAM,GAAG,aAAa;IAcvE,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,SAAS,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;KAAE;
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../../../src/modules/logger/winston/logger.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAG/C,qBAAa,aAAc,SAAQ,UAAU;IAC3C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAoC;IACxD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiB;IAEzC,OAAO;IAKP,4KAA4K;IAC5K,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,OAAO,CAAC,MAAM,GAAG,aAAa;IAcvE,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,SAAS,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;KAAE;IAYjF,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO;CAOlD;AAED,OAAO,EAAE,aAAa,IAAI,MAAM,EAAE,CAAC"}
|
|
@@ -19,6 +19,13 @@ export class WinstonLogger extends BaseLogger {
|
|
|
19
19
|
return cached;
|
|
20
20
|
}
|
|
21
21
|
write(opts) {
|
|
22
|
+
// Asked BEFORE handing the line to winston. The deep-splat format - redaction plus
|
|
23
|
+
// `util.inspect` over the whole argument graph - runs as part of winston's pipeline, so a line
|
|
24
|
+
// the level was going to discard was formatted in full first. Measured: 3.6 us per discarded
|
|
25
|
+
// line, against 0.08 us once gated.
|
|
26
|
+
if (!this._logger.isLevelEnabled(opts.level)) {
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
22
29
|
this._logger.log(opts.level, this._formattedPrefix + opts.message, ...opts.args);
|
|
23
30
|
}
|
|
24
31
|
child(opts) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../../../src/modules/logger/winston/logger.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAEhD,MAAM,OAAO,aAAc,SAAQ,UAAU;aAC5B,UAAK,GAAG,IAAI,GAAG,EAAyB,CAAC;IAGxD,YAAoB,KAAa,EAAE,MAAsB;QACvD,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IAED,4KAA4K;IAC5K,MAAM,CAAC,GAAG,CAAC,KAAa,EAAE,YAA6B;QACrD,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,IAAI,aAAa,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QAChD,CAAC;QAED,IAAI,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,GAAG,IAAI,aAAa,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC;YACxD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAChC,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAES,KAAK,CAAC,IAAiE;QAC/E,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;IACnF,CAAC;IAES,KAAK,CAAC,IAAuB;QACrC,IAAI,IAAI,CAAC,OAAO,KAAK,oBAAoB,EAAE,CAAC;YAC1C,OAAO,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC;QAED,OAAO,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACrD,CAAC;;AAGH,OAAO,EAAE,aAAa,IAAI,MAAM,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../../../src/modules/logger/winston/logger.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAEhD,MAAM,OAAO,aAAc,SAAQ,UAAU;aAC5B,UAAK,GAAG,IAAI,GAAG,EAAyB,CAAC;IAGxD,YAAoB,KAAa,EAAE,MAAsB;QACvD,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IAED,4KAA4K;IAC5K,MAAM,CAAC,GAAG,CAAC,KAAa,EAAE,YAA6B;QACrD,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,IAAI,aAAa,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QAChD,CAAC;QAED,IAAI,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,GAAG,IAAI,aAAa,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC;YACxD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAChC,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAES,KAAK,CAAC,IAAiE;QAC/E,mFAAmF;QACnF,+FAA+F;QAC/F,6FAA6F;QAC7F,oCAAoC;QACpC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAC7C,OAAO;QACT,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;IACnF,CAAC;IAES,KAAK,CAAC,IAAuB;QACrC,IAAI,IAAI,CAAC,OAAO,KAAK,oBAAoB,EAAE,CAAC;YAC1C,OAAO,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC;QAED,OAAO,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACrD,CAAC;;AAGH,OAAO,EAAE,aAAa,IAAI,MAAM,EAAE,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { AnyObject, THttpMethod } from '../../../../common/index.js';
|
|
2
2
|
import { AxiosInstance, AxiosRequestConfig, AxiosResponse } from 'axios';
|
|
3
3
|
import { BaseNetworkRequest } from '../base-network-request.helper.js';
|
|
4
|
+
import type { ILogger } from '../../../../modules/logger/common/types.js';
|
|
4
5
|
import { AbstractNetworkFetchableHelper, IRequestOptions } from './base-fetcher.js';
|
|
5
6
|
export interface IAxiosRequestOptions extends AxiosRequestConfig, IRequestOptions {
|
|
6
7
|
url: string;
|
|
@@ -8,14 +9,33 @@ export interface IAxiosRequestOptions extends AxiosRequestConfig, IRequestOption
|
|
|
8
9
|
params?: AnyObject;
|
|
9
10
|
body?: AnyObject;
|
|
10
11
|
headers?: AnyObject;
|
|
12
|
+
/**
|
|
13
|
+
* Declared so the opt-out is TYPED. It used to reach the agent only through the
|
|
14
|
+
* `[extra: string]: any` index signature on {@link IRequestOptions}, which meant nothing told a
|
|
15
|
+
* caller the option existed, and nothing stopped a typo from silently doing nothing.
|
|
16
|
+
*/
|
|
17
|
+
rejectUnauthorized?: boolean;
|
|
11
18
|
}
|
|
12
19
|
export declare class AxiosFetcher extends AbstractNetworkFetchableHelper<'axios', IAxiosRequestOptions, AxiosResponse<any, any>['data'], AxiosInstance> {
|
|
20
|
+
/**
|
|
21
|
+
* One agent for the instance, not one per request. Built here so TLS verification is decided
|
|
22
|
+
* ONCE, at construction, rather than per call - and so connections are actually reused: a fresh
|
|
23
|
+
* agent per request forces a new TCP and TLS handshake every time (measured: 10 handshakes for 10
|
|
24
|
+
* requests, versus 1).
|
|
25
|
+
*/
|
|
26
|
+
private readonly httpsAgent;
|
|
13
27
|
constructor(opts: {
|
|
14
28
|
name: string;
|
|
15
29
|
defaultConfigs: AxiosRequestConfig;
|
|
16
|
-
logger?:
|
|
30
|
+
logger?: ILogger;
|
|
31
|
+
/**
|
|
32
|
+
* Turns OFF certificate verification for this instance. Node's own default is `true` and so is
|
|
33
|
+
* this one; the previous code defaulted it to `false`, which silently accepted any certificate
|
|
34
|
+
* on every HTTPS request the framework made.
|
|
35
|
+
*/
|
|
36
|
+
rejectUnauthorized?: boolean;
|
|
17
37
|
});
|
|
18
|
-
send<T = any>(opts: IAxiosRequestOptions, logger?:
|
|
38
|
+
send<T = any>(opts: IAxiosRequestOptions, logger?: ILogger): Promise<AxiosResponse<T, any, {}>>;
|
|
19
39
|
}
|
|
20
40
|
export interface IAxiosNetworkRequestOptions {
|
|
21
41
|
name: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"axios-fetcher.d.ts","sourceRoot":"","sources":["../../../../../../src/modules/network/http-request/fetcher/axios-fetcher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAQ,WAAW,EAAE,MAAM,UAAU,CAAC;AAExD,OAAc,EAAE,aAAa,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAGhF,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,8BAA8B,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjF,MAAM,WAAW,oBAAqB,SAAQ,kBAAkB,EAAE,eAAe;IAC/E,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,OAAO,CAAC,EAAE,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"axios-fetcher.d.ts","sourceRoot":"","sources":["../../../../../../src/modules/network/http-request/fetcher/axios-fetcher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAQ,WAAW,EAAE,MAAM,UAAU,CAAC;AAExD,OAAc,EAAE,aAAa,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAGhF,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,8BAA8B,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjF,MAAM,WAAW,oBAAqB,SAAQ,kBAAkB,EAAE,eAAe;IAC/E,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,qBAAa,YAAa,SAAQ,8BAA8B,CAC9D,OAAO,EACP,oBAAoB,EAGpB,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,EAC/B,aAAa,CACd;IACC;;;;;OAKG;IACH,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAc;gBAE7B,IAAI,EAAE;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,cAAc,EAAE,kBAAkB,CAAC;QACnC,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB;;;;WAIG;QACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;KAC9B;IAaQ,IAAI,CAAC,CAAC,GAAG,GAAG,EAAE,IAAI,EAAE,oBAAoB,EAAE,MAAM,CAAC,EAAE,OAAO;CA2BpE;AAED,MAAM,WAAW,2BAA2B;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,IAAI,CAAC,kBAAkB,EAAE,SAAS,CAAC,GAAG;QACpD,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;CACH;AAED,qBAAa,mBAAoB,SAAQ,kBAAkB,CAAC,OAAO,CAAC;gBACtD,IAAI,EAAE,2BAA2B;CAwB9C"}
|
|
@@ -10,6 +10,10 @@ export class AxiosFetcher extends AbstractNetworkFetchableHelper {
|
|
|
10
10
|
super({ name: opts.name, variant: 'axios' });
|
|
11
11
|
const { defaultConfigs } = opts;
|
|
12
12
|
opts?.logger?.info('Creating new network request worker instance! Name: %s', this.name);
|
|
13
|
+
this.httpsAgent = new https.Agent({
|
|
14
|
+
keepAlive: true,
|
|
15
|
+
rejectUnauthorized: opts.rejectUnauthorized ?? true,
|
|
16
|
+
});
|
|
13
17
|
this.worker = axios.create({ ...defaultConfigs });
|
|
14
18
|
}
|
|
15
19
|
send(opts, logger) {
|
|
@@ -25,9 +29,14 @@ export class AxiosFetcher extends AbstractNetworkFetchableHelper {
|
|
|
25
29
|
};
|
|
26
30
|
const protocol = this.getProtocol(url);
|
|
27
31
|
if (protocol === HTTP.Protocols.HTTPS) {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
32
|
+
// A caller's own agent WINS. The previous code assigned after the `...rest` spread, so a
|
|
33
|
+
// hardened agent - custom CA, pinning, mTLS - was overwritten and the secure path was
|
|
34
|
+
// unreachable through the public seam.
|
|
35
|
+
props.httpsAgent =
|
|
36
|
+
rest.httpsAgent ??
|
|
37
|
+
(opts.rejectUnauthorized === undefined
|
|
38
|
+
? this.httpsAgent
|
|
39
|
+
: new https.Agent({ keepAlive: true, rejectUnauthorized: opts.rejectUnauthorized }));
|
|
31
40
|
}
|
|
32
41
|
logger?.for(this.send.name).info('URL: %s | Props: %s', url, redactSecrets(props));
|
|
33
42
|
return this.worker.request(props);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"axios-fetcher.js","sourceRoot":"","sources":["../../../../../../src/modules/network/http-request/fetcher/axios-fetcher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,IAAI,EAAe,MAAM,UAAU,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAA2D,MAAM,OAAO,CAAC;AAChF,OAAO,KAAK,MAAM,YAAY,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"axios-fetcher.js","sourceRoot":"","sources":["../../../../../../src/modules/network/http-request/fetcher/axios-fetcher.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { THttpMethod } from '../../../../common/constants/http.js';
|
|
2
2
|
import { AnyObject } from '../../../../common/types.js';
|
|
3
|
+
import type { ILogger } from '../../../../modules/logger/common/types.js';
|
|
3
4
|
import { TFetcherVariant } from '../types.js';
|
|
4
5
|
export interface IRequestOptions {
|
|
5
6
|
url: string;
|
|
@@ -9,13 +10,13 @@ export interface IRequestOptions {
|
|
|
9
10
|
[extra: symbol | string]: any;
|
|
10
11
|
}
|
|
11
12
|
export interface IFetchable<V extends TFetcherVariant, RQ extends IRequestOptions, RS, W = unknown> {
|
|
12
|
-
send(opts: RQ, logger?:
|
|
13
|
-
get(opts: RQ, logger?:
|
|
14
|
-
post(opts: RQ, logger?:
|
|
15
|
-
put(opts: RQ, logger?:
|
|
16
|
-
patch(opts: RQ, logger?:
|
|
17
|
-
delete(opts: RQ, logger?:
|
|
18
|
-
query(opts: RQ, logger?:
|
|
13
|
+
send(opts: RQ, logger?: ILogger): Promise<RS>;
|
|
14
|
+
get(opts: RQ, logger?: ILogger): Promise<RS>;
|
|
15
|
+
post(opts: RQ, logger?: ILogger): Promise<RS>;
|
|
16
|
+
put(opts: RQ, logger?: ILogger): Promise<RS>;
|
|
17
|
+
patch(opts: RQ, logger?: ILogger): Promise<RS>;
|
|
18
|
+
delete(opts: RQ, logger?: ILogger): Promise<RS>;
|
|
19
|
+
query(opts: RQ, logger?: ILogger): Promise<RS>;
|
|
19
20
|
getVariant(): V;
|
|
20
21
|
getWorker(): W;
|
|
21
22
|
}
|
|
@@ -28,15 +29,15 @@ export declare abstract class AbstractNetworkFetchableHelper<V extends TFetcherV
|
|
|
28
29
|
name: string;
|
|
29
30
|
variant: V;
|
|
30
31
|
});
|
|
31
|
-
abstract send(opts: RQ, logger?:
|
|
32
|
+
abstract send(opts: RQ, logger?: ILogger): Promise<RS>;
|
|
32
33
|
getProtocol(url: string): "http" | "https";
|
|
33
34
|
getVariant(): V;
|
|
34
35
|
getWorker(): W;
|
|
35
|
-
get(opts: RQ, logger?:
|
|
36
|
-
post(opts: RQ, logger?:
|
|
37
|
-
put(opts: RQ, logger?:
|
|
38
|
-
patch(opts: RQ, logger?:
|
|
39
|
-
delete(opts: RQ, logger?:
|
|
40
|
-
query(opts: RQ, logger?:
|
|
36
|
+
get(opts: RQ, logger?: ILogger): Promise<RS>;
|
|
37
|
+
post(opts: RQ, logger?: ILogger): Promise<RS>;
|
|
38
|
+
put(opts: RQ, logger?: ILogger): Promise<RS>;
|
|
39
|
+
patch(opts: RQ, logger?: ILogger): Promise<RS>;
|
|
40
|
+
delete(opts: RQ, logger?: ILogger): Promise<RS>;
|
|
41
|
+
query(opts: RQ, logger?: ILogger): Promise<RS>;
|
|
41
42
|
}
|
|
42
43
|
//# sourceMappingURL=base-fetcher.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-fetcher.d.ts","sourceRoot":"","sources":["../../../../../../src/modules/network/http-request/fetcher/base-fetcher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"base-fetcher.d.ts","sourceRoot":"","sources":["../../../../../../src/modules/network/http-request/fetcher/base-fetcher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAG3C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3C,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,GAAG,CAAC;CAC/B;AAED,MAAM,WAAW,UAAU,CACzB,CAAC,SAAS,eAAe,EACzB,EAAE,SAAS,eAAe,EAC1B,EAAE,EACF,CAAC,GAAG,OAAO;IAEX,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;IAC9C,GAAG,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;IAC7C,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;IAC9C,GAAG,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;IAC7C,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;IAC/C,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;IAChD,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;IAE/C,UAAU,IAAI,CAAC,CAAC;IAChB,SAAS,IAAI,CAAC,CAAC;CAChB;AAED,yNAAyN;AACzN,8BAAsB,8BAA8B,CAClD,CAAC,SAAS,eAAe,EACzB,EAAE,SAAS,eAAe,EAC1B,EAAE,EACF,CAAC,GAAG,OAAO,CACX,YAAW,UAAU,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACnC,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC;IACrB,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;gBAER,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,CAAC,CAAA;KAAE;IAK9C,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,EAAE,CAAC;IAEtD,WAAW,CAAC,GAAG,EAAE,MAAM;IAIvB,UAAU;IAIV,SAAS,IAAI,CAAC;IAId,GAAG,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,OAAO;IAK9B,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,OAAO;IAK/B,GAAG,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,OAAO;IAK9B,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,OAAO;IAKhC,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,OAAO;IAKjC,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,OAAO;CAIjC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-fetcher.js","sourceRoot":"","sources":["../../../../../../src/modules/network/http-request/fetcher/base-fetcher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAe,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"base-fetcher.js","sourceRoot":"","sources":["../../../../../../src/modules/network/http-request/fetcher/base-fetcher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAe,MAAM,yBAAyB,CAAC;AAiC5D,yNAAyN;AACzN,MAAM,OAAgB,8BAA8B;IAUlD,YAAY,IAAkC;QAC5C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IAC9B,CAAC;IAID,WAAW,CAAC,GAAW;QACrB,OAAO,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;IAC9E,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,GAAG,CAAC,IAAQ,EAAE,MAAgB;QAC5B,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC;QACzB,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC;IAClE,CAAC;IAED,IAAI,CAAC,IAAQ,EAAE,MAAgB;QAC7B,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC;QACzB,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,MAAM,CAAC,CAAC;IACnE,CAAC;IAED,GAAG,CAAC,IAAQ,EAAE,MAAgB;QAC5B,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC;QACzB,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC;IAClE,CAAC;IAED,KAAK,CAAC,IAAQ,EAAE,MAAgB;QAC9B,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC;QACzB,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,MAAM,CAAC,CAAC;IACpE,CAAC;IAED,MAAM,CAAC,IAAQ,EAAE,MAAgB;QAC/B,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC;QACzB,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,MAAM,CAAC,CAAC;IACrE,CAAC;IAED,KAAK,CAAC,IAAQ,EAAE,MAAgB;QAC9B,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC;QACzB,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,MAAM,CAAC,CAAC;IACpE,CAAC;CACF"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { THttpMethod } from '../../../../common/constants/http.js';
|
|
2
2
|
import { AnyObject } from '../../../../common/types.js';
|
|
3
3
|
import { BaseNetworkRequest } from '../base-network-request.helper.js';
|
|
4
|
+
import type { ILogger } from '../../../../modules/logger/common/types.js';
|
|
4
5
|
import { AbstractNetworkFetchableHelper, IRequestOptions } from './base-fetcher.js';
|
|
5
6
|
export interface INodeFetchRequestOptions extends RequestInit, IRequestOptions {
|
|
6
7
|
url: string;
|
|
@@ -12,9 +13,9 @@ export declare class NodeFetcher extends AbstractNetworkFetchableHelper<'node-fe
|
|
|
12
13
|
constructor(opts: {
|
|
13
14
|
name: string;
|
|
14
15
|
defaultConfigs: RequestInit;
|
|
15
|
-
logger?:
|
|
16
|
+
logger?: ILogger;
|
|
16
17
|
});
|
|
17
|
-
send(opts: INodeFetchRequestOptions, logger?:
|
|
18
|
+
send(opts: INodeFetchRequestOptions, logger?: ILogger): Promise<Response>;
|
|
18
19
|
}
|
|
19
20
|
export interface INodeFetchNetworkRequestOptions {
|
|
20
21
|
name: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-fetcher.d.ts","sourceRoot":"","sources":["../../../../../../src/modules/network/http-request/fetcher/node-fetcher.ts"],"names":[],"mappings":"AACA,OAAO,EAAQ,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,8BAA8B,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjF,MAAM,WAAW,wBAAyB,SAAQ,WAAW,EAAE,eAAe;IAC5E,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,MAAM,CAAC,EAAE,SAAS,CAAC;CACpB;AAED,qBAAa,WAAY,SAAQ,8BAA8B,CAC7D,YAAY,EACZ,wBAAwB,EACxB,OAAO,CAAC,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC,EACjC,OAAO,KAAK,CACb;IACC,OAAO,CAAC,cAAc,CAAc;gBAExB,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,WAAW,CAAC;QAAC,MAAM,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"node-fetcher.d.ts","sourceRoot":"","sources":["../../../../../../src/modules/network/http-request/fetcher/node-fetcher.ts"],"names":[],"mappings":"AACA,OAAO,EAAQ,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,8BAA8B,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjF,MAAM,WAAW,wBAAyB,SAAQ,WAAW,EAAE,eAAe;IAC5E,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,MAAM,CAAC,EAAE,SAAS,CAAC;CACpB;AAED,qBAAa,WAAY,SAAQ,8BAA8B,CAC7D,YAAY,EACZ,wBAAwB,EACxB,OAAO,CAAC,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC,EACjC,OAAO,KAAK,CACb;IACC,OAAO,CAAC,cAAc,CAAc;gBAExB,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,WAAW,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE;IASlE,IAAI,CAAC,IAAI,EAAE,wBAAwB,EAAE,MAAM,CAAC,EAAE,OAAO;CAkErE;AAED,MAAM,WAAW,+BAA+B;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,WAAW,GAAG;QAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;CACH;AAED,qBAAa,uBAAwB,SAAQ,kBAAkB,CAAC,YAAY,CAAC;gBAC/D,IAAI,EAAE,+BAA+B;CAsBlD"}
|
|
@@ -39,9 +39,18 @@ export class NodeFetcher extends AbstractNetworkFetchableHelper {
|
|
|
39
39
|
const requestUrl = serializedParams
|
|
40
40
|
? `${url}${url.includes('?') ? '&' : '?'}${serializedParams}`
|
|
41
41
|
: url;
|
|
42
|
+
// The body is NEVER logged, only its size. `fetch` bodies are strings, and `redactSecrets` walks
|
|
43
|
+
// object keys - so a JSON credential payload passed straight through as a string was printed in
|
|
44
|
+
// full, with no key for the redactor to match on. Headers are normalised through `Headers` first
|
|
45
|
+
// because the `string[][]` form is a list of tuples, which key matching cannot see either.
|
|
46
|
+
const loggableConfigs = {
|
|
47
|
+
...requestConfigs,
|
|
48
|
+
body: typeof body === 'string' ? `[body ${body.length} chars]` : body ? '[body]' : undefined,
|
|
49
|
+
headers: headers ? Object.fromEntries(new Headers(headers)) : undefined,
|
|
50
|
+
};
|
|
42
51
|
logger
|
|
43
52
|
?.for(this.send.name)
|
|
44
|
-
.info('URL: %s | Props: %s | Timeout: %s', url, redactSecrets(
|
|
53
|
+
.info('URL: %s | Props: %s | Timeout: %s', url, redactSecrets(loggableConfigs), timeout);
|
|
45
54
|
try {
|
|
46
55
|
const rs = await fetch(requestUrl, requestConfigs);
|
|
47
56
|
return rs;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-fetcher.js","sourceRoot":"","sources":["../../../../../../src/modules/network/http-request/fetcher/node-fetcher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,IAAI,EAAe,MAAM,yBAAyB,CAAC;AAE5D,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"node-fetcher.js","sourceRoot":"","sources":["../../../../../../src/modules/network/http-request/fetcher/node-fetcher.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-tcp-server.helper.d.ts","sourceRoot":"","sources":["../../../../../src/modules/network/tcp-socket/base-tcp-server.helper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"base-tcp-server.helper.d.ts","sourceRoot":"","sources":["../../../../../src/modules/network/tcp-socket/base-tcp-server.helper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAGjD,OAAO,EACL,aAAa,EACb,UAAU,EACV,MAAM,IAAI,YAAY,EACtB,MAAM,IAAI,YAAY,EACvB,MAAM,UAAU,CAAC;AAElB,MAAM,WAAW,gBAAgB,CAAC,gBAAgB;IAChD,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,gBAAgB,CAAC;IACzB,KAAK,EAAE,cAAc,GAAG,gBAAgB,GAAG,eAAe,CAAC;IAC3D,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,OAAO,EAAE;QACP,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC;QACzB,eAAe,EAAE,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC;QACpC,mBAAmB,CAAC,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,GAAG,IAAI,CAAC;QAC3D,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,GAAG,CAAC;KACvC,CAAC;CACH;AAED,MAAM,WAAW,uBAAuB,CACtC,mBAAmB,SAAS,UAAU,GAAG,UAAU,EACnD,gBAAgB,SAAS,YAAY,GAAG,YAAY,EACpD,gBAAgB,SAAS,YAAY,GAAG,YAAY;IAEpD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IAEnB,aAAa,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAC5C,aAAa,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IACtC,mBAAmB,EAAE;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAE9D,WAAW,CAAC,EAAE,MAAM,CAClB,MAAM,EACN,CAAC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,gBAAgB,CAAC;QAAC,IAAI,EAAE,GAAG,CAAA;KAAE,KAAK,cAAc,CAAC,IAAI,CAAC,CACpF,CAAC;IAEF,cAAc,EAAE,CACd,OAAO,EAAE,OAAO,CAAC,mBAAmB,CAAC,EACrC,kBAAkB,EAAE,CAAC,MAAM,EAAE,gBAAgB,KAAK,IAAI,KACnD,gBAAgB,CAAC;IAEtB,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,gBAAgB,CAAA;KAAE,KAAK,IAAI,CAAC;IAC7D,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,gBAAgB,CAAA;KAAE,KAAK,IAAI,CAAC;IAC7E,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,gBAAgB,CAAC;QAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IAC/F,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,gBAAgB,CAAA;KAAE,KAAK,IAAI,CAAC;IACzE,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,gBAAgB,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,KAAK,IAAI,CAAC;IACvF,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,gBAAgB,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,KAAK,IAAI,CAAC;CAC5E;AAED,qBAAa,oBAAoB,CAC/B,mBAAmB,SAAS,UAAU,GAAG,UAAU,EACnD,gBAAgB,SAAS,YAAY,GAAG,YAAY,EACpD,gBAAgB,SAAS,YAAY,GAAG,YAAY,CACpD,SAAQ,UAAU;IAClB,SAAS,CAAC,aAAa,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAM;IAC3D,SAAS,CAAC,aAAa,EAAE,OAAO,CAAC,aAAa,CAAC,CAAM;IACrD,SAAS,CAAC,mBAAmB,EAAE;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAExE,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACtE,SAAS,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAEnC,SAAS,CAAC,WAAW,EAAE,MAAM,CAC3B,MAAM,EACN,CAAC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,gBAAgB,CAAC;QAAC,IAAI,EAAE,GAAG,CAAA;KAAE,KAAK,cAAc,CAAC,IAAI,CAAC,CACpF,CAAC;IAEF,SAAS,CAAC,cAAc,EAAE,CACxB,OAAO,EAAE,OAAO,CAAC,mBAAmB,CAAC,EACrC,kBAAkB,EAAE,CAAC,MAAM,EAAE,gBAAgB,KAAK,IAAI,KACnD,gBAAgB,CAAC;IAEtB,SAAS,CAAC,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,gBAAgB,CAAA;KAAE,KAAK,IAAI,CAAC;IACvE,SAAS,CAAC,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,gBAAgB,CAAA;KAAE,KAAK,IAAI,CAAC;IACvF,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE;QAC9B,EAAE,EAAE,MAAM,CAAC;QACX,MAAM,EAAE,gBAAgB,CAAC;QACzB,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;KACvB,KAAK,IAAI,CAAC;IACX,SAAS,CAAC,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,gBAAgB,CAAA;KAAE,KAAK,IAAI,CAAC;IACnF,SAAS,CAAC,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,gBAAgB,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,KAAK,IAAI,CAAC;IACjG,SAAS,CAAC,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,gBAAgB,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,KAAK,IAAI,CAAC;gBAGnF,IAAI,EAAE,uBAAuB,CAAC,mBAAmB,EAAE,gBAAgB,EAAE,gBAAgB,CAAC;IAsCxF,SAAS,CAAC,UAAU,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,IAAI,CAAA;KAAE;IAUnE,SAAS;IAiCT,eAAe,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,gBAAgB,CAAA;KAAE;IAsHlD,UAAU;IAIV,SAAS,CAAC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE;IAI9B,SAAS;IAIT,0LAA0L;IACpL,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAiC/B,cAAc,CAAC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,cAAc,GAAG,gBAAgB,GAAG,eAAe,CAAA;KAAE;IAgC/F,IAAI,CAAC,IAAI,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE;CA4B1D"}
|
|
@@ -3,7 +3,6 @@ import { getError } from '../../../modules/error/index.js';
|
|
|
3
3
|
import { dayjs } from '../../../utilities/date.utility.js';
|
|
4
4
|
import { getUID } from '../../../utilities/parse.utility.js';
|
|
5
5
|
import { voidExecution } from '../../../utilities/promise.utility.js';
|
|
6
|
-
import omit from 'lodash/omit';
|
|
7
6
|
export class BaseNetworkTcpServer extends BaseHelper {
|
|
8
7
|
constructor(opts) {
|
|
9
8
|
super({
|
|
@@ -105,7 +104,9 @@ export class BaseNetworkTcpServer extends BaseHelper {
|
|
|
105
104
|
if (authenticateTimeout) {
|
|
106
105
|
clearTimeout(authenticateTimeout);
|
|
107
106
|
}
|
|
108
|
-
|
|
107
|
+
// `delete`, not `omit`: omit rebuilds the WHOLE registry per disconnect, so a disconnect
|
|
108
|
+
// storm is O(n^2) - measured at 5000 clients, 2.3s of drain with a 2.2s worst-case stall.
|
|
109
|
+
delete this.clients[id];
|
|
109
110
|
});
|
|
110
111
|
for (const extraEvent in this.extraEvents) {
|
|
111
112
|
socket.on(extraEvent, args => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-tcp-server.helper.js","sourceRoot":"","sources":["../../../../../src/modules/network/tcp-socket/base-tcp-server.helper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"base-tcp-server.helper.js","sourceRoot":"","sources":["../../../../../src/modules/network/tcp-socket/base-tcp-server.helper.ts"],"names":[],"mappings":"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"}
|
|
@@ -197,10 +197,13 @@ export class AbstractRedisHelper extends BaseHelper {
|
|
|
197
197
|
if (!payload.length) {
|
|
198
198
|
return;
|
|
199
199
|
}
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
200
|
+
// A plain loop, not spread-in-reduce: `{ ...current, [key]: v }` copies every key already
|
|
201
|
+
// accumulated on EVERY element, which is O(n^2). Measured at 10k keys: 2.2s of blocked event
|
|
202
|
+
// loop, against 1.5ms for this.
|
|
203
|
+
const serialized = {};
|
|
204
|
+
for (const { key, value } of payload) {
|
|
205
|
+
serialized[key] = JSON.stringify(value);
|
|
206
|
+
}
|
|
204
207
|
await this.client.mset(serialized);
|
|
205
208
|
if (!options?.log) {
|
|
206
209
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abstract.helper.js","sourceRoot":"","sources":["../../../../../src/modules/redis/base/abstract.helper.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"abstract.helper.js","sourceRoot":"","sources":["../../../../../src/modules/redis/base/abstract.helper.ts"],"names":[],"mappings":"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"}
|
|
@@ -45,6 +45,16 @@ export declare class SocketIOServerHelper extends BaseHelper {
|
|
|
45
45
|
onClientAuthenticated(opts: {
|
|
46
46
|
socket: IOSocket;
|
|
47
47
|
}): void;
|
|
48
|
+
/**
|
|
49
|
+
* Narrows an untrusted room payload to the strings it actually contains.
|
|
50
|
+
*
|
|
51
|
+
* The listeners below run on data any authenticated client sends. Destructuring `{ rooms = [] }`
|
|
52
|
+
* out of an `any` and testing `rooms?.length` accepts a STRING - `{"rooms":"lobby"}` has a
|
|
53
|
+
* length of 5 - and the next line calls `rooms.map`, which a string does not have. socket.io
|
|
54
|
+
* dispatches on `process.nextTick` with no try/catch around the handler, so that TypeError
|
|
55
|
+
* escapes as an uncaught exception and takes the process with it.
|
|
56
|
+
*/
|
|
57
|
+
private static toRoomList;
|
|
48
58
|
private registerRoomHandlers;
|
|
49
59
|
ping(opts: {
|
|
50
60
|
socket: IOSocket;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../../../../../../src/modules/socket/socket-io/server/helper.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAS5C,OAAO,EAAE,MAAM,IAAI,QAAQ,EAAE,MAAM,IAAI,QAAQ,EAAiB,MAAM,WAAW,CAAC;AAClF,OAAO,EAEL,eAAe,EAKf,sBAAsB,EAEvB,MAAM,WAAW,CAAC;AAKnB,qBAAa,oBAAqB,SAAQ,UAAU;IAClD,OAAO,CAAC,OAAO,CAAiB;IAChC,OAAO,CAAC,MAAM,CAAC,CAAa;IAC5B,OAAO,CAAC,SAAS,CAAC,CAAM;IACxB,OAAO,CAAC,aAAa,CAA8B;IAEnD,OAAO,CAAC,EAAE,CAAW;IACrB,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,OAAO,CAA2C;IAE1D,OAAO,CAAC,QAAQ,CAAe;IAC/B,OAAO,CAAC,QAAQ,CAAe;IAC/B,OAAO,CAAC,YAAY,CAAe;IAEnC,OAAO,CAAC,cAAc,CAA0B;IAChD,OAAO,CAAC,cAAc,CAAC,CAA0B;IACjD,OAAO,CAAC,iBAAiB,CAAC,CAA6B;IAEvD,OAAO,CAAC,mBAAmB,CAAS;IACpC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,YAAY,CAAW;gBAEnB,IAAI,EAAE,sBAAsB;IAsBxC,OAAO,CAAC,UAAU;IAgClB,OAAO,CAAC,gBAAgB;IAaxB,WAAW,IAAI,QAAQ;IAIvB,6LAA6L;IAC7L,SAAS,CAAC,UAAU,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,cAAc,CAAC,IAAI,CAAC,CAAA;KAAE;IAUnF,SAAS;IAWT,UAAU,CAAC,IAAI,CAAC,EAAE;QAAE,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,eAAe,GAAG,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,SAAS;IAQ9F,EAAE,CAAC,eAAe,SAAS,OAAO,EAAE,GAAG,OAAO,EAAE,EAAE,gBAAgB,GAAG,IAAI,EAAE,IAAI,EAAE;QAC/E,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,eAAe,KAAK,cAAc,CAAC,gBAAgB,CAAC,CAAC;KACzE;IAiBK,SAAS;IAgDf,OAAO,CAAC,YAAY;IAgCpB,eAAe,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,QAAQ,CAAA;KAAE;IAsC1C,OAAO,CAAC,mBAAmB;IAkF3B,qBAAqB,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,QAAQ,CAAA;KAAE;IAsEhD,OAAO,CAAC,oBAAoB;
|
|
1
|
+
{"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../../../../../../src/modules/socket/socket-io/server/helper.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAS5C,OAAO,EAAE,MAAM,IAAI,QAAQ,EAAE,MAAM,IAAI,QAAQ,EAAiB,MAAM,WAAW,CAAC;AAClF,OAAO,EAEL,eAAe,EAKf,sBAAsB,EAEvB,MAAM,WAAW,CAAC;AAKnB,qBAAa,oBAAqB,SAAQ,UAAU;IAClD,OAAO,CAAC,OAAO,CAAiB;IAChC,OAAO,CAAC,MAAM,CAAC,CAAa;IAC5B,OAAO,CAAC,SAAS,CAAC,CAAM;IACxB,OAAO,CAAC,aAAa,CAA8B;IAEnD,OAAO,CAAC,EAAE,CAAW;IACrB,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,OAAO,CAA2C;IAE1D,OAAO,CAAC,QAAQ,CAAe;IAC/B,OAAO,CAAC,QAAQ,CAAe;IAC/B,OAAO,CAAC,YAAY,CAAe;IAEnC,OAAO,CAAC,cAAc,CAA0B;IAChD,OAAO,CAAC,cAAc,CAAC,CAA0B;IACjD,OAAO,CAAC,iBAAiB,CAAC,CAA6B;IAEvD,OAAO,CAAC,mBAAmB,CAAS;IACpC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,YAAY,CAAW;gBAEnB,IAAI,EAAE,sBAAsB;IAsBxC,OAAO,CAAC,UAAU;IAgClB,OAAO,CAAC,gBAAgB;IAaxB,WAAW,IAAI,QAAQ;IAIvB,6LAA6L;IAC7L,SAAS,CAAC,UAAU,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,cAAc,CAAC,IAAI,CAAC,CAAA;KAAE;IAUnF,SAAS;IAWT,UAAU,CAAC,IAAI,CAAC,EAAE;QAAE,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,eAAe,GAAG,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,SAAS;IAQ9F,EAAE,CAAC,eAAe,SAAS,OAAO,EAAE,GAAG,OAAO,EAAE,EAAE,gBAAgB,GAAG,IAAI,EAAE,IAAI,EAAE;QAC/E,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,eAAe,KAAK,cAAc,CAAC,gBAAgB,CAAC,CAAC;KACzE;IAiBK,SAAS;IAgDf,OAAO,CAAC,YAAY;IAgCpB,eAAe,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,QAAQ,CAAA;KAAE;IAsC1C,OAAO,CAAC,mBAAmB;IAkF3B,qBAAqB,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,QAAQ,CAAA;KAAE;IAsEhD;;;;;;;;OAQG;IACH,OAAO,CAAC,MAAM,CAAC,UAAU;IAOzB,OAAO,CAAC,oBAAoB;IAiF5B,IAAI,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,QAAQ,CAAC;QAAC,YAAY,EAAE,OAAO,CAAA;KAAE;IAwBtD,UAAU,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,QAAQ,CAAA;KAAE;IA2BrC,IAAI,CAAC,IAAI,EAAE;QACT,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,GAAG,CAAA;SAAE,CAAC;QACtC,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;KACvB;IA2CD,OAAO,CAAC,KAAK;IAwBP,QAAQ;CA0Bf"}
|
|
@@ -324,12 +324,27 @@ export class SocketIOServerHelper extends BaseHelper {
|
|
|
324
324
|
execution: () => this.onClientConnected?.({ socket }),
|
|
325
325
|
});
|
|
326
326
|
}
|
|
327
|
+
/**
|
|
328
|
+
* Narrows an untrusted room payload to the strings it actually contains.
|
|
329
|
+
*
|
|
330
|
+
* The listeners below run on data any authenticated client sends. Destructuring `{ rooms = [] }`
|
|
331
|
+
* out of an `any` and testing `rooms?.length` accepts a STRING - `{"rooms":"lobby"}` has a
|
|
332
|
+
* length of 5 - and the next line calls `rooms.map`, which a string does not have. socket.io
|
|
333
|
+
* dispatches on `process.nextTick` with no try/catch around the handler, so that TypeError
|
|
334
|
+
* escapes as an uncaught exception and takes the process with it.
|
|
335
|
+
*/
|
|
336
|
+
static toRoomList(payload) {
|
|
337
|
+
const rooms = payload?.rooms;
|
|
338
|
+
return Array.isArray(rooms)
|
|
339
|
+
? rooms.filter((room) => typeof room === 'string')
|
|
340
|
+
: [];
|
|
341
|
+
}
|
|
327
342
|
registerRoomHandlers(opts) {
|
|
328
343
|
const { socket, clientId: id } = opts;
|
|
329
344
|
const joinLogger = this.logger.for(SocketIOConstants.EVENT_JOIN);
|
|
330
345
|
socket.on(SocketIOConstants.EVENT_JOIN, (payload) => {
|
|
331
|
-
const
|
|
332
|
-
if (!rooms
|
|
346
|
+
const rooms = SocketIOServerHelper.toRoomList(payload);
|
|
347
|
+
if (!rooms.length) {
|
|
333
348
|
return;
|
|
334
349
|
}
|
|
335
350
|
const validateRoomFn = this.validateRoomFn;
|
|
@@ -360,12 +375,15 @@ export class SocketIOServerHelper extends BaseHelper {
|
|
|
360
375
|
});
|
|
361
376
|
const leaveLogger = this.logger.for(SocketIOConstants.EVENT_LEAVE);
|
|
362
377
|
socket.on(SocketIOConstants.EVENT_LEAVE, (payload) => {
|
|
363
|
-
const
|
|
364
|
-
if (!rooms
|
|
378
|
+
const rooms = SocketIOServerHelper.toRoomList(payload);
|
|
379
|
+
if (!rooms.length) {
|
|
365
380
|
return;
|
|
366
381
|
}
|
|
367
382
|
leaveLogger.info('Leaving rooms | id: %s | rooms: %j', id, rooms);
|
|
368
|
-
Promise.
|
|
383
|
+
// `Promise.resolve` per room: socket.io declares `leave(room): Promise<void> | void` - the
|
|
384
|
+
// default adapter is synchronous, a clustered one is not - and `Promise.all` over a mixed
|
|
385
|
+
// iterable is what the previous `any`-typed payload was hiding.
|
|
386
|
+
Promise.all(rooms.map(room => Promise.resolve(socket.leave(room))))
|
|
369
387
|
.then(() => {
|
|
370
388
|
leaveLogger.info('Left rooms | id: %s | rooms: %s', id, rooms);
|
|
371
389
|
})
|