velocious 1.0.358 → 1.0.359
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -0
- package/build/src/frontend-models/base.d.ts +1 -1
- package/build/src/frontend-models/base.js +2 -2
- package/build/src/frontend-models/websocket-channel.d.ts +7 -6
- package/build/src/frontend-models/websocket-channel.d.ts.map +1 -1
- package/build/src/frontend-models/websocket-channel.js +9 -7
- package/build/src/http-server/client/request.d.ts +5 -0
- package/build/src/http-server/client/request.d.ts.map +1 -1
- package/build/src/http-server/client/request.js +10 -1
- package/build/src/http-server/client/websocket-request.d.ts +10 -1
- package/build/src/http-server/client/websocket-request.d.ts.map +1 -1
- package/build/src/http-server/client/websocket-request.js +14 -2
- package/build/src/http-server/client/websocket-session.d.ts.map +1 -1
- package/build/src/http-server/client/websocket-session.js +2 -1
- package/package.json +1 -1
|
@@ -15,11 +15,11 @@
|
|
|
15
15
|
* `matches()` routes by model name.
|
|
16
16
|
*/
|
|
17
17
|
export default class FrontendModelWebsocketChannel extends VelociousWebsocketChannel {
|
|
18
|
-
/** @returns {Promise<boolean>} */
|
|
18
|
+
/** @returns {Promise<boolean>} Whether the frontend-model subscription is authorized. */
|
|
19
19
|
canSubscribe(): Promise<boolean>;
|
|
20
20
|
/**
|
|
21
21
|
* @param {Record<string, any>} broadcastParams - Params from `broadcastToChannel`.
|
|
22
|
-
* @returns {boolean}
|
|
22
|
+
* @returns {boolean} Whether the broadcast matches this subscriber's model.
|
|
23
23
|
*/
|
|
24
24
|
matches(broadcastParams: Record<string, any>): boolean;
|
|
25
25
|
/** @returns {string | null} - Requested frontend-model name or null. */
|
|
@@ -29,16 +29,17 @@ export default class FrontendModelWebsocketChannel extends VelociousWebsocketCha
|
|
|
29
29
|
* importing `WebsocketRequest` here because its `node:querystring`
|
|
30
30
|
* dependency would pull server-only code into browser bundles via
|
|
31
31
|
* the `configuration → logger → websocket-publishers` import chain.
|
|
32
|
-
*
|
|
33
32
|
* Header names are normalized to lowercase so `header("cookie")`
|
|
34
33
|
* finds a value regardless of whether the upgrade-request headers
|
|
35
|
-
* map uses `"Cookie"` or `"cookie"`.
|
|
36
|
-
*
|
|
37
|
-
*
|
|
34
|
+
* map uses `"Cookie"` or `"cookie"`. Session metadata stays separate
|
|
35
|
+
* from headers and is exposed through `metadata(...)` for ability
|
|
36
|
+
* resolvers that need websocket-delivered session data.
|
|
37
|
+
* @returns {{headers: () => Record<string, any>, header: (name: string) => any, metadata: (key?: string) => any, path: () => string, httpMethod: () => string, remoteAddress: () => string | undefined, origin: () => any}} Request-like object for ability resolution.
|
|
38
38
|
*/
|
|
39
39
|
_syntheticRequest(): {
|
|
40
40
|
headers: () => Record<string, any>;
|
|
41
41
|
header: (name: string) => any;
|
|
42
|
+
metadata: (key?: string) => any;
|
|
42
43
|
path: () => string;
|
|
43
44
|
httpMethod: () => string;
|
|
44
45
|
remoteAddress: () => string | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"websocket-channel.d.ts","sourceRoot":"","sources":["../../../src/frontend-models/websocket-channel.js"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;;;GAeG;AACH;IACE,
|
|
1
|
+
{"version":3,"file":"websocket-channel.d.ts","sourceRoot":"","sources":["../../../src/frontend-models/websocket-channel.js"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;;;GAeG;AACH;IACE,yFAAyF;IACzF,gBADc,OAAO,CAAC,OAAO,CAAC,CAgC7B;IAED;;;OAGG;IACH,yBAHW,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GACjB,OAAO,CAInB;IAED,wEAAwE;IACxE,cADc,MAAM,GAAG,IAAI,CAK1B;IAED;;;;;;;;;;;OAWG;IACH,qBAFa;QAAC,OAAO,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,GAAG,CAAC;QAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,KAAK,GAAG,CAAC;QAAC,IAAI,EAAE,MAAM,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;QAAC,MAAM,EAAE,MAAM,GAAG,CAAA;KAAC,CAuB1N;CACF;sCAvGqC,qCAAqC"}
|
|
@@ -18,7 +18,7 @@ import Response from "../http-server/client/response.js";
|
|
|
18
18
|
* `matches()` routes by model name.
|
|
19
19
|
*/
|
|
20
20
|
export default class FrontendModelWebsocketChannel extends VelociousWebsocketChannel {
|
|
21
|
-
/** @returns {Promise<boolean>} */
|
|
21
|
+
/** @returns {Promise<boolean>} Whether the frontend-model subscription is authorized. */
|
|
22
22
|
async canSubscribe() {
|
|
23
23
|
const modelName = this._modelName();
|
|
24
24
|
if (!modelName)
|
|
@@ -48,7 +48,7 @@ export default class FrontendModelWebsocketChannel extends VelociousWebsocketCha
|
|
|
48
48
|
}
|
|
49
49
|
/**
|
|
50
50
|
* @param {Record<string, any>} broadcastParams - Params from `broadcastToChannel`.
|
|
51
|
-
* @returns {boolean}
|
|
51
|
+
* @returns {boolean} Whether the broadcast matches this subscriber's model.
|
|
52
52
|
*/
|
|
53
53
|
matches(broadcastParams) {
|
|
54
54
|
return broadcastParams?.model === this._modelName();
|
|
@@ -64,16 +64,17 @@ export default class FrontendModelWebsocketChannel extends VelociousWebsocketCha
|
|
|
64
64
|
* importing `WebsocketRequest` here because its `node:querystring`
|
|
65
65
|
* dependency would pull server-only code into browser bundles via
|
|
66
66
|
* the `configuration → logger → websocket-publishers` import chain.
|
|
67
|
-
*
|
|
68
67
|
* Header names are normalized to lowercase so `header("cookie")`
|
|
69
68
|
* finds a value regardless of whether the upgrade-request headers
|
|
70
|
-
* map uses `"Cookie"` or `"cookie"`.
|
|
71
|
-
*
|
|
72
|
-
*
|
|
69
|
+
* map uses `"Cookie"` or `"cookie"`. Session metadata stays separate
|
|
70
|
+
* from headers and is exposed through `metadata(...)` for ability
|
|
71
|
+
* resolvers that need websocket-delivered session data.
|
|
72
|
+
* @returns {{headers: () => Record<string, any>, header: (name: string) => any, metadata: (key?: string) => any, path: () => string, httpMethod: () => string, remoteAddress: () => string | undefined, origin: () => any}} Request-like object for ability resolution.
|
|
73
73
|
*/
|
|
74
74
|
_syntheticRequest() {
|
|
75
75
|
const upgradeRequest = /** @type {any} */ (this.session.upgradeRequest);
|
|
76
76
|
const rawHeaders = typeof upgradeRequest?.headers === "function" ? upgradeRequest.headers() : {};
|
|
77
|
+
const metadata = typeof this.session.getMetadata === "function" ? this.session.getMetadata() : {};
|
|
77
78
|
const remoteAddress = typeof upgradeRequest?.remoteAddress === "function" ? upgradeRequest.remoteAddress() : undefined;
|
|
78
79
|
/** @type {Record<string, any>} */
|
|
79
80
|
const headerMap = {};
|
|
@@ -83,6 +84,7 @@ export default class FrontendModelWebsocketChannel extends VelociousWebsocketCha
|
|
|
83
84
|
return {
|
|
84
85
|
headers: () => headerMap,
|
|
85
86
|
header: (name) => headerMap[String(name).toLowerCase()],
|
|
87
|
+
metadata: (key) => key === undefined ? { ...metadata } : metadata[key],
|
|
86
88
|
path: () => "/frontend-models",
|
|
87
89
|
httpMethod: () => "POST",
|
|
88
90
|
remoteAddress: () => remoteAddress,
|
|
@@ -90,4 +92,4 @@ export default class FrontendModelWebsocketChannel extends VelociousWebsocketCha
|
|
|
90
92
|
};
|
|
91
93
|
}
|
|
92
94
|
}
|
|
93
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vic29ja2V0LWNoYW5uZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZnJvbnRlbmQtbW9kZWxzL3dlYnNvY2tldC1jaGFubmVsLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFlBQVk7QUFFWixPQUFPLHlCQUF5QixNQUFNLHFDQUFxQyxDQUFBO0FBQzNFLE9BQU8sUUFBUSxNQUFNLG1DQUFtQyxDQUFBO0FBRXhEOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUNILE1BQU0sQ0FBQyxPQUFPLE9BQU8sNkJBQThCLFNBQVEseUJBQXlCO0lBQ2xGLGtDQUFrQztJQUNsQyxLQUFLLENBQUMsWUFBWTtRQUNoQixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUE7UUFFbkMsSUFBSSxDQUFDLFNBQVM7WUFBRSxPQUFPLEtBQUssQ0FBQTtRQUU1QixNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQTtRQUNoRCxNQUFNLFlBQVksR0FBRyxhQUFhLENBQUMsZUFBZSxFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUE7UUFDNUQsTUFBTSxVQUFVLEdBQUcsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFBO1FBRTFDLElBQUksQ0FBQyxVQUFVO1lBQUUsT0FBTyxLQUFLLENBQUE7UUFFN0IsTUFBTSxPQUFPLEdBQUcsTUFBTSxhQUFhLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDbkQsTUFBTSxFQUFFLEVBQUMsS0FBSyxFQUFFLFNBQVMsRUFBQztZQUMxQixPQUFPLEVBQUUsa0JBQWtCLENBQUMsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztZQUN0RCxRQUFRLEVBQUUsSUFBSSxRQUFRLENBQUMsRUFBQyxhQUFhLEVBQUMsQ0FBQztTQUN4QyxDQUFDLENBQUE7UUFFRixJQUFJLENBQUMsT0FBTztZQUFFLE9BQU8sS0FBSyxDQUFBO1FBRTFCLHFFQUFxRTtRQUNyRSxtRUFBbUU7UUFDbkUsMkNBQTJDO1FBQzNDLElBQUksT0FBTyxPQUFPLENBQUMsMEJBQTBCLEtBQUssVUFBVSxFQUFFLENBQUM7WUFDN0QsT0FBTyxDQUFDLDBCQUEwQixDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBQ2hELENBQUM7UUFFRCxNQUFNLFNBQVMsR0FBRyxPQUFPLE9BQU8sQ0FBQyxRQUFRLEtBQUssVUFBVTtZQUN0RCxDQUFDLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBQyxDQUFDO1lBQzVELENBQUMsQ0FBQyxFQUFFLENBQUE7UUFFTixPQUFPLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQywrQkFBK0IsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLEtBQUssT0FBTyxDQUFDLENBQUE7SUFDMUYsQ0FBQztJQUVEOzs7T0FHRztJQUNILE9BQU8sQ0FBQyxlQUFlO1FBQ3JCLE9BQU8sZUFBZSxFQUFFLEtBQUssS0FBSyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUE7SUFDckQsQ0FBQztJQUVELHdFQUF3RTtJQUN4RSxVQUFVO1FBQ1IsT0FBTyxPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsS0FBSyxLQUFLLFFBQVEsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQztZQUMzRSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLO1lBQ25CLENBQUMsQ0FBQyxJQUFJLENBQUE7SUFDVixDQUFDO0lBRUQ7Ozs7Ozs7Ozs7O09BV0c7SUFDSCxpQkFBaUI7UUFDZixNQUFNLGNBQWMsR0FBRyxrQkFBa0IsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLENBQUE7UUFDdkUsTUFBTSxVQUFVLEdBQUcsT0FBTyxjQUFjLEVBQUUsT0FBTyxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUE7UUFDaEcsTUFBTSxhQUFhLEdBQUcsT0FBTyxjQUFjLEVBQUUsYUFBYSxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUE7UUFDdEgsa0NBQWtDO1FBQ2xDLE1BQU0sU0FBUyxHQUFHLEVBQUUsQ0FBQTtRQUVwQixLQUFLLE1BQU0sR0FBRyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDaEQsU0FBUyxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUNoRCxDQUFDO1FBRUQsT0FBTztZQUNMLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxTQUFTO1lBQ3hCLE1BQU0sRUFBRSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUN2RCxJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsa0JBQWtCO1lBQzlCLFVBQVUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNO1lBQ3hCLGFBQWEsRUFBRSxHQUFHLEVBQUUsQ0FBQyxhQUFhO1lBQ2xDLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxTQUFTLENBQUMsTUFBTTtTQUMvQixDQUFBO0lBQ0gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQHRzLWNoZWNrXG5cbmltcG9ydCBWZWxvY2lvdXNXZWJzb2NrZXRDaGFubmVsIGZyb20gXCIuLi9odHRwLXNlcnZlci93ZWJzb2NrZXQtY2hhbm5lbC5qc1wiXG5pbXBvcnQgUmVzcG9uc2UgZnJvbSBcIi4uL2h0dHAtc2VydmVyL2NsaWVudC9yZXNwb25zZS5qc1wiXG5cbi8qKlxuICogUGVyLXNlc3Npb24gY2hhbm5lbCBzdWJzY3JpcHRpb24gZm9yIGZyb250ZW5kLW1vZGVsIGxpZmVjeWNsZSBldmVudHMuXG4gKiBSZXBsYWNlcyB0aGUgbGVnYWN5IGBGcm9udGVuZE1vZGVsV2Vic29ja2V0Q2hhbm5lbGAgKFBoYXNlIDMpLlxuICpcbiAqIEF1dGggbW9kZWw6IHN1YnNjcmliZS10aW1lIG9ubHkuIGBjYW5TdWJzY3JpYmVgIHJlc29sdmVzIHRoZSBjYWxsZXInc1xuICogYWJpbGl0eSBvbmNlLCBjaGVja3MgdGhhdCBhdCBsZWFzdCBvbmUgYGFsbG93YCBydWxlIGV4aXN0cyBmb3JcbiAqIGByZWFkYCBvbiB0aGUgcmVxdWVzdGVkIG1vZGVsIGNsYXNzLCBhbmQgdGhlbiBkZWxpdmVycyBldmVyeSBmdXR1cmVcbiAqIGxpZmVjeWNsZSBicm9hZGNhc3QgZm9yIHRoYXQgbW9kZWwgd2l0aG91dCByZS1hdXRob3JpemluZyBwZXIgZXZlbnQuXG4gKiBUaGlzIG1hdGNoZXMgdGhlIGV4cGxpY2l0IGRlc2lnbiBkZWNpc2lvbiBpbiBQaGFzZSAzIHRvIHRyYWRlXG4gKiBwZXItcmVjb3JkIHZpc2liaWxpdHkgZ3VhcmFudGVlcyBmb3IgbWFzc2l2ZWx5IGNoZWFwZXIgYnJvYWRjYXN0IGZhbi1vdXQuXG4gKlxuICogV2lyZTogc3Vic2NyaWJlIHdpdGggYHN1YnNjcmliZUNoYW5uZWwoXCJmcm9udGVuZC1tb2RlbHNcIiwge3BhcmFtczoge21vZGVsOiBNb2RlbE5hbWV9fSlgLlxuICogQmFja2VuZCBwdWJsaXNoZXMgYHthY3Rpb24sIGlkLCByZWNvcmR9YCB2aWFcbiAqIGBjb25maWd1cmF0aW9uLmJyb2FkY2FzdFRvQ2hhbm5lbChcImZyb250ZW5kLW1vZGVsc1wiLCB7bW9kZWw6IE1vZGVsTmFtZX0sIGJvZHkpYDtcbiAqIGBtYXRjaGVzKClgIHJvdXRlcyBieSBtb2RlbCBuYW1lLlxuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBGcm9udGVuZE1vZGVsV2Vic29ja2V0Q2hhbm5lbCBleHRlbmRzIFZlbG9jaW91c1dlYnNvY2tldENoYW5uZWwge1xuICAvKiogQHJldHVybnMge1Byb21pc2U8Ym9vbGVhbj59ICovXG4gIGFzeW5jIGNhblN1YnNjcmliZSgpIHtcbiAgICBjb25zdCBtb2RlbE5hbWUgPSB0aGlzLl9tb2RlbE5hbWUoKVxuXG4gICAgaWYgKCFtb2RlbE5hbWUpIHJldHVybiBmYWxzZVxuXG4gICAgY29uc3QgY29uZmlndXJhdGlvbiA9IHRoaXMuc2Vzc2lvbi5jb25maWd1cmF0aW9uXG4gICAgY29uc3QgbW9kZWxDbGFzc2VzID0gY29uZmlndXJhdGlvbi5nZXRNb2RlbENsYXNzZXM/LigpIHx8IHt9XG4gICAgY29uc3QgTW9kZWxDbGFzcyA9IG1vZGVsQ2xhc3Nlc1ttb2RlbE5hbWVdXG5cbiAgICBpZiAoIU1vZGVsQ2xhc3MpIHJldHVybiBmYWxzZVxuXG4gICAgY29uc3QgYWJpbGl0eSA9IGF3YWl0IGNvbmZpZ3VyYXRpb24ucmVzb2x2ZUFiaWxpdHk/Lih7XG4gICAgICBwYXJhbXM6IHttb2RlbDogbW9kZWxOYW1lfSxcbiAgICAgIHJlcXVlc3Q6IC8qKiBAdHlwZSB7YW55fSAqLyAodGhpcy5fc3ludGhldGljUmVxdWVzdCgpKSxcbiAgICAgIHJlc3BvbnNlOiBuZXcgUmVzcG9uc2Uoe2NvbmZpZ3VyYXRpb259KVxuICAgIH0pXG5cbiAgICBpZiAoIWFiaWxpdHkpIHJldHVybiBmYWxzZVxuXG4gICAgLy8gTG9hZCByZXNvdXJjZS1kZWNsYXJlZCBydWxlcyBmb3IgdGhpcyBtb2RlbCBjbGFzcyBiZWZvcmUgY2hlY2tpbmcsXG4gICAgLy8gb3RoZXJ3aXNlIGBydWxlc0ZvcmAgcmV0dXJucyBlbXB0eSBmb3IgYWJpbGl0aWVzIHdob3NlIHJlc291cmNlc1xuICAgIC8vIHJlZ2lzdGVyIHJ1bGVzIGxhemlseSB2aWEgYGFiaWxpdGllcygpYC5cbiAgICBpZiAodHlwZW9mIGFiaWxpdHkubG9hZEFiaWxpdGllc0Zvck1vZGVsQ2xhc3MgPT09IFwiZnVuY3Rpb25cIikge1xuICAgICAgYWJpbGl0eS5sb2FkQWJpbGl0aWVzRm9yTW9kZWxDbGFzcyhNb2RlbENsYXNzKVxuICAgIH1cblxuICAgIGNvbnN0IHJlYWRSdWxlcyA9IHR5cGVvZiBhYmlsaXR5LnJ1bGVzRm9yID09PSBcImZ1bmN0aW9uXCJcbiAgICAgID8gYWJpbGl0eS5ydWxlc0Zvcih7YWN0aW9uOiBcInJlYWRcIiwgbW9kZWxDbGFzczogTW9kZWxDbGFzc30pXG4gICAgICA6IFtdXG5cbiAgICByZXR1cm4gcmVhZFJ1bGVzLnNvbWUoKC8qKiBAdHlwZSB7e2VmZmVjdDogc3RyaW5nfX0gKi8gcnVsZSkgPT4gcnVsZS5lZmZlY3QgPT09IFwiYWxsb3dcIilcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge1JlY29yZDxzdHJpbmcsIGFueT59IGJyb2FkY2FzdFBhcmFtcyAtIFBhcmFtcyBmcm9tIGBicm9hZGNhc3RUb0NoYW5uZWxgLlxuICAgKiBAcmV0dXJucyB7Ym9vbGVhbn1cbiAgICovXG4gIG1hdGNoZXMoYnJvYWRjYXN0UGFyYW1zKSB7XG4gICAgcmV0dXJuIGJyb2FkY2FzdFBhcmFtcz8ubW9kZWwgPT09IHRoaXMuX21vZGVsTmFtZSgpXG4gIH1cblxuICAvKiogQHJldHVybnMge3N0cmluZyB8IG51bGx9IC0gUmVxdWVzdGVkIGZyb250ZW5kLW1vZGVsIG5hbWUgb3IgbnVsbC4gKi9cbiAgX21vZGVsTmFtZSgpIHtcbiAgICByZXR1cm4gdHlwZW9mIHRoaXMucGFyYW1zPy5tb2RlbCA9PT0gXCJzdHJpbmdcIiAmJiB0aGlzLnBhcmFtcy5tb2RlbC5sZW5ndGggPiAwXG4gICAgICA/IHRoaXMucGFyYW1zLm1vZGVsXG4gICAgICA6IG51bGxcbiAgfVxuXG4gIC8qKlxuICAgKiBNaW5pbWFsIFJlcXVlc3QtbGlrZSBzdHViIHVzZWQgb25seSBmb3IgYWJpbGl0eSByZXNvbHV0aW9uLiBBdm9pZHNcbiAgICogaW1wb3J0aW5nIGBXZWJzb2NrZXRSZXF1ZXN0YCBoZXJlIGJlY2F1c2UgaXRzIGBub2RlOnF1ZXJ5c3RyaW5nYFxuICAgKiBkZXBlbmRlbmN5IHdvdWxkIHB1bGwgc2VydmVyLW9ubHkgY29kZSBpbnRvIGJyb3dzZXIgYnVuZGxlcyB2aWFcbiAgICogdGhlIGBjb25maWd1cmF0aW9uIOKGkiBsb2dnZXIg4oaSIHdlYnNvY2tldC1wdWJsaXNoZXJzYCBpbXBvcnQgY2hhaW4uXG4gICAqXG4gICAqIEhlYWRlciBuYW1lcyBhcmUgbm9ybWFsaXplZCB0byBsb3dlcmNhc2Ugc28gYGhlYWRlcihcImNvb2tpZVwiKWBcbiAgICogZmluZHMgYSB2YWx1ZSByZWdhcmRsZXNzIG9mIHdoZXRoZXIgdGhlIHVwZ3JhZGUtcmVxdWVzdCBoZWFkZXJzXG4gICAqIG1hcCB1c2VzIGBcIkNvb2tpZVwiYCBvciBgXCJjb29raWVcImAuXG4gICAqXG4gICAqIEByZXR1cm5zIHt7aGVhZGVyczogKCkgPT4gUmVjb3JkPHN0cmluZywgYW55PiwgaGVhZGVyOiAobmFtZTogc3RyaW5nKSA9PiBhbnksIHBhdGg6ICgpID0+IHN0cmluZywgaHR0cE1ldGhvZDogKCkgPT4gc3RyaW5nLCByZW1vdGVBZGRyZXNzOiAoKSA9PiBzdHJpbmcgfCB1bmRlZmluZWQsIG9yaWdpbjogKCkgPT4gYW55fX1cbiAgICovXG4gIF9zeW50aGV0aWNSZXF1ZXN0KCkge1xuICAgIGNvbnN0IHVwZ3JhZGVSZXF1ZXN0ID0gLyoqIEB0eXBlIHthbnl9ICovICh0aGlzLnNlc3Npb24udXBncmFkZVJlcXVlc3QpXG4gICAgY29uc3QgcmF3SGVhZGVycyA9IHR5cGVvZiB1cGdyYWRlUmVxdWVzdD8uaGVhZGVycyA9PT0gXCJmdW5jdGlvblwiID8gdXBncmFkZVJlcXVlc3QuaGVhZGVycygpIDoge31cbiAgICBjb25zdCByZW1vdGVBZGRyZXNzID0gdHlwZW9mIHVwZ3JhZGVSZXF1ZXN0Py5yZW1vdGVBZGRyZXNzID09PSBcImZ1bmN0aW9uXCIgPyB1cGdyYWRlUmVxdWVzdC5yZW1vdGVBZGRyZXNzKCkgOiB1bmRlZmluZWRcbiAgICAvKiogQHR5cGUge1JlY29yZDxzdHJpbmcsIGFueT59ICovXG4gICAgY29uc3QgaGVhZGVyTWFwID0ge31cblxuICAgIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKHJhd0hlYWRlcnMgfHwge30pKSB7XG4gICAgICBoZWFkZXJNYXBba2V5LnRvTG93ZXJDYXNlKCldID0gcmF3SGVhZGVyc1trZXldXG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIGhlYWRlcnM6ICgpID0+IGhlYWRlck1hcCxcbiAgICAgIGhlYWRlcjogKG5hbWUpID0+IGhlYWRlck1hcFtTdHJpbmcobmFtZSkudG9Mb3dlckNhc2UoKV0sXG4gICAgICBwYXRoOiAoKSA9PiBcIi9mcm9udGVuZC1tb2RlbHNcIixcbiAgICAgIGh0dHBNZXRob2Q6ICgpID0+IFwiUE9TVFwiLFxuICAgICAgcmVtb3RlQWRkcmVzczogKCkgPT4gcmVtb3RlQWRkcmVzcyxcbiAgICAgIG9yaWdpbjogKCkgPT4gaGVhZGVyTWFwLm9yaWdpblxuICAgIH1cbiAgfVxufVxuIl19
|
|
95
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vic29ja2V0LWNoYW5uZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZnJvbnRlbmQtbW9kZWxzL3dlYnNvY2tldC1jaGFubmVsLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFlBQVk7QUFFWixPQUFPLHlCQUF5QixNQUFNLHFDQUFxQyxDQUFBO0FBQzNFLE9BQU8sUUFBUSxNQUFNLG1DQUFtQyxDQUFBO0FBRXhEOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUNILE1BQU0sQ0FBQyxPQUFPLE9BQU8sNkJBQThCLFNBQVEseUJBQXlCO0lBQ2xGLHlGQUF5RjtJQUN6RixLQUFLLENBQUMsWUFBWTtRQUNoQixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUE7UUFFbkMsSUFBSSxDQUFDLFNBQVM7WUFBRSxPQUFPLEtBQUssQ0FBQTtRQUU1QixNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQTtRQUNoRCxNQUFNLFlBQVksR0FBRyxhQUFhLENBQUMsZUFBZSxFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUE7UUFDNUQsTUFBTSxVQUFVLEdBQUcsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFBO1FBRTFDLElBQUksQ0FBQyxVQUFVO1lBQUUsT0FBTyxLQUFLLENBQUE7UUFFN0IsTUFBTSxPQUFPLEdBQUcsTUFBTSxhQUFhLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDbkQsTUFBTSxFQUFFLEVBQUMsS0FBSyxFQUFFLFNBQVMsRUFBQztZQUMxQixPQUFPLEVBQUUsa0JBQWtCLENBQUMsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztZQUN0RCxRQUFRLEVBQUUsSUFBSSxRQUFRLENBQUMsRUFBQyxhQUFhLEVBQUMsQ0FBQztTQUN4QyxDQUFDLENBQUE7UUFFRixJQUFJLENBQUMsT0FBTztZQUFFLE9BQU8sS0FBSyxDQUFBO1FBRTFCLHFFQUFxRTtRQUNyRSxtRUFBbUU7UUFD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Y2VzQ29udGVudCI6WyIvLyBAdHMtY2hlY2tcblxuaW1wb3J0IFZlbG9jaW91c1dlYnNvY2tldENoYW5uZWwgZnJvbSBcIi4uL2h0dHAtc2VydmVyL3dlYnNvY2tldC1jaGFubmVsLmpzXCJcbmltcG9ydCBSZXNwb25zZSBmcm9tIFwiLi4vaHR0cC1zZXJ2ZXIvY2xpZW50L3Jlc3BvbnNlLmpzXCJcblxuLyoqXG4gKiBQZXItc2Vzc2lvbiBjaGFubmVsIHN1YnNjcmlwdGlvbiBmb3IgZnJvbnRlbmQtbW9kZWwgbGlmZWN5Y2xlIGV2ZW50cy5cbiAqIFJlcGxhY2VzIHRoZSBsZWdhY3kgYEZyb250ZW5kTW9kZWxXZWJzb2NrZXRDaGFubmVsYCAoUGhhc2UgMykuXG4gKlxuICogQXV0aCBtb2RlbDogc3Vic2NyaWJlLXRpbWUgb25seS4gYGNhblN1YnNjcmliZWAgcmVzb2x2ZXMgdGhlIGNhbGxlcidzXG4gKiBhYmlsaXR5IG9uY2UsIGNoZWNrcyB0aGF0IGF0IGxlYXN0IG9uZSBgYWxsb3dgIHJ1bGUgZXhpc3RzIGZvclxuICogYHJlYWRgIG9uIHRoZSByZXF1ZXN0ZWQgbW9kZWwgY2xhc3MsIGFuZCB0aGVuIGRlbGl2ZXJzIGV2ZXJ5IGZ1dHVyZVxuICogbGlmZWN5Y2xlIGJyb2FkY2FzdCBmb3IgdGhhdCBtb2RlbCB3aXRob3V0IHJlLWF1dGhvcml6aW5nIHBlciBldmVudC5cbiAqIFRoaXMgbWF0Y2hlcyB0aGUgZXhwbGljaXQgZGVzaWduIGRlY2lzaW9uIGluIFBoYXNlIDMgdG8gdHJhZGVcbiAqIHBlci1yZWNvcmQgdmlzaWJpbGl0eSBndWFyYW50ZWVzIGZvciBtYXNzaXZlbHkgY2hlYXBlciBicm9hZGNhc3QgZmFuLW91dC5cbiAqXG4gKiBXaXJlOiBzdWJzY3JpYmUgd2l0aCBgc3Vic2NyaWJlQ2hhbm5lbChcImZyb250ZW5kLW1vZGVsc1wiLCB7cGFyYW1zOiB7bW9kZWw6IE1vZGVsTmFtZX19KWAuXG4gKiBCYWNrZW5kIHB1Ymxpc2hlcyBge2FjdGlvbiwgaWQsIHJlY29yZH1gIHZpYVxuICogYGNvbmZpZ3VyYXRpb24uYnJvYWRjYXN0VG9DaGFubmVsKFwiZnJvbnRlbmQtbW9kZWxzXCIsIHttb2RlbDogTW9kZWxOYW1lfSwgYm9keSlgO1xuICogYG1hdGNoZXMoKWAgcm91dGVzIGJ5IG1vZGVsIG5hbWUuXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEZyb250ZW5kTW9kZWxXZWJzb2NrZXRDaGFubmVsIGV4dGVuZHMgVmVsb2Npb3VzV2Vic29ja2V0Q2hhbm5lbCB7XG4gIC8qKiBAcmV0dXJucyB7UHJvbWlzZTxib29sZWFuPn0gV2hldGhlciB0aGUgZnJvbnRlbmQtbW9kZWwgc3Vic2NyaXB0aW9uIGlzIGF1dGhvcml6ZWQuICovXG4gIGFzeW5jIGNhblN1YnNjcmliZSgpIHtcbiAgICBjb25zdCBtb2RlbE5hbWUgPSB0aGlzLl9tb2RlbE5hbWUoKVxuXG4gICAgaWYgKCFtb2RlbE5hbWUpIHJldHVybiBmYWxzZVxuXG4gICAgY29uc3QgY29uZmlndXJhdGlvbiA9IHRoaXMuc2Vzc2lvbi5jb25maWd1cmF0aW9uXG4gICAgY29uc3QgbW9kZWxDbGFzc2VzID0gY29uZmlndXJhdGlvbi5nZXRNb2RlbENsYXNzZXM/LigpIHx8IHt9XG4gICAgY29uc3QgTW9kZWxDbGFzcyA9IG1vZGVsQ2xhc3Nlc1ttb2RlbE5hbWVdXG5cbiAgICBpZiAoIU1vZGVsQ2xhc3MpIHJldHVybiBmYWxzZVxuXG4gICAgY29uc3QgYWJpbGl0eSA9IGF3YWl0IGNvbmZpZ3VyYXRpb24ucmVzb2x2ZUFiaWxpdHk/Lih7XG4gICAgICBwYXJhbXM6IHttb2RlbDogbW9kZWxOYW1lfSxcbiAgICAgIHJlcXVlc3Q6IC8qKiBAdHlwZSB7YW55fSAqLyAodGhpcy5fc3ludGhldGljUmVxdWVzdCgpKSxcbiAgICAgIHJlc3BvbnNlOiBuZXcgUmVzcG9uc2Uoe2NvbmZpZ3VyYXRpb259KVxuICAgIH0pXG5cbiAgICBpZiAoIWFiaWxpdHkpIHJldHVybiBmYWxzZVxuXG4gICAgLy8gTG9hZCByZXNvdXJjZS1kZWNsYXJlZCBydWxlcyBmb3IgdGhpcyBtb2RlbCBjbGFzcyBiZWZvcmUgY2hlY2tpbmcsXG4gICAgLy8gb3RoZXJ3aXNlIGBydWxlc0ZvcmAgcmV0dXJucyBlbXB0eSBmb3IgYWJpbGl0aWVzIHdob3NlIHJlc291cmNlc1xuICAgIC8vIHJlZ2lzdGVyIHJ1bGVzIGxhemlseSB2aWEgYGFiaWxpdGllcygpYC5cbiAgICBpZiAodHlwZW9mIGFiaWxpdHkubG9hZEFiaWxpdGllc0Zvck1vZGVsQ2xhc3MgPT09IFwiZnVuY3Rpb25cIikge1xuICAgICAgYWJpbGl0eS5sb2FkQWJpbGl0aWVzRm9yTW9kZWxDbGFzcyhNb2RlbENsYXNzKVxuICAgIH1cblxuICAgIGNvbnN0IHJlYWRSdWxlcyA9IHR5cGVvZiBhYmlsaXR5LnJ1bGVzRm9yID09PSBcImZ1bmN0aW9uXCJcbiAgICAgID8gYWJpbGl0eS5ydWxlc0Zvcih7YWN0aW9uOiBcInJlYWRcIiwgbW9kZWxDbGFzczogTW9kZWxDbGFzc30pXG4gICAgICA6IFtdXG5cbiAgICByZXR1cm4gcmVhZFJ1bGVzLnNvbWUoKC8qKiBAdHlwZSB7e2VmZmVjdDogc3RyaW5nfX0gKi8gcnVsZSkgPT4gcnVsZS5lZmZlY3QgPT09IFwiYWxsb3dcIilcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge1JlY29yZDxzdHJpbmcsIGFueT59IGJyb2FkY2FzdFBhcmFtcyAtIFBhcmFtcyBmcm9tIGBicm9hZGNhc3RUb0NoYW5uZWxgLlxuICAgKiBAcmV0dXJucyB7Ym9vbGVhbn0gV2hldGhlciB0aGUgYnJvYWRjYXN0IG1hdGNoZXMgdGhpcyBzdWJzY3JpYmVyJ3MgbW9kZWwuXG4gICAqL1xuICBtYXRjaGVzKGJyb2FkY2FzdFBhcmFtcykge1xuICAgIHJldHVybiBicm9hZGNhc3RQYXJhbXM/Lm1vZGVsID09PSB0aGlzLl9tb2RlbE5hbWUoKVxuICB9XG5cbiAgLyoqIEByZXR1cm5zIHtzdHJpbmcgfCBudWxsfSAtIFJlcXVlc3RlZCBmcm9udGVuZC1tb2RlbCBuYW1lIG9yIG51bGwuICovXG4gIF9tb2RlbE5hbWUoKSB7XG4gICAgcmV0dXJuIHR5cGVvZiB0aGlzLnBhcmFtcz8ubW9kZWwgPT09IFwic3RyaW5nXCIgJiYgdGhpcy5wYXJhbXMubW9kZWwubGVuZ3RoID4gMFxuICAgICAgPyB0aGlzLnBhcmFtcy5tb2RlbFxuICAgICAgOiBudWxsXG4gIH1cblxuICAvKipcbiAgICogTWluaW1hbCBSZXF1ZXN0LWxpa2Ugc3R1YiB1c2VkIG9ubHkgZm9yIGFiaWxpdHkgcmVzb2x1dGlvbi4gQXZvaWRzXG4gICAqIGltcG9ydGluZyBgV2Vic29ja2V0UmVxdWVzdGAgaGVyZSBiZWNhdXNlIGl0cyBgbm9kZTpxdWVyeXN0cmluZ2BcbiAgICogZGVwZW5kZW5jeSB3b3VsZCBwdWxsIHNlcnZlci1vbmx5IGNvZGUgaW50byBicm93c2VyIGJ1bmRsZXMgdmlhXG4gICAqIHRoZSBgY29uZmlndXJhdGlvbiDihpIgbG9nZ2VyIOKGkiB3ZWJzb2NrZXQtcHVibGlzaGVyc2AgaW1wb3J0IGNoYWluLlxuICAgKiBIZWFkZXIgbmFtZXMgYXJlIG5vcm1hbGl6ZWQgdG8gbG93ZXJjYXNlIHNvIGBoZWFkZXIoXCJjb29raWVcIilgXG4gICAqIGZpbmRzIGEgdmFsdWUgcmVnYXJkbGVzcyBvZiB3aGV0aGVyIHRoZSB1cGdyYWRlLXJlcXVlc3QgaGVhZGVyc1xuICAgKiBtYXAgdXNlcyBgXCJDb29raWVcImAgb3IgYFwiY29va2llXCJgLiBTZXNzaW9uIG1ldGFkYXRhIHN0YXlzIHNlcGFyYXRlXG4gICAqIGZyb20gaGVhZGVycyBhbmQgaXMgZXhwb3NlZCB0aHJvdWdoIGBtZXRhZGF0YSguLi4pYCBmb3IgYWJpbGl0eVxuICAgKiByZXNvbHZlcnMgdGhhdCBuZWVkIHdlYnNvY2tldC1kZWxpdmVyZWQgc2Vzc2lvbiBkYXRhLlxuICAgKiBAcmV0dXJucyB7e2hlYWRlcnM6ICgpID0+IFJlY29yZDxzdHJpbmcsIGFueT4sIGhlYWRlcjogKG5hbWU6IHN0cmluZykgPT4gYW55LCBtZXRhZGF0YTogKGtleT86IHN0cmluZykgPT4gYW55LCBwYXRoOiAoKSA9PiBzdHJpbmcsIGh0dHBNZXRob2Q6ICgpID0+IHN0cmluZywgcmVtb3RlQWRkcmVzczogKCkgPT4gc3RyaW5nIHwgdW5kZWZpbmVkLCBvcmlnaW46ICgpID0+IGFueX19IFJlcXVlc3QtbGlrZSBvYmplY3QgZm9yIGFiaWxpdHkgcmVzb2x1dGlvbi5cbiAgICovXG4gIF9zeW50aGV0aWNSZXF1ZXN0KCkge1xuICAgIGNvbnN0IHVwZ3JhZGVSZXF1ZXN0ID0gLyoqIEB0eXBlIHthbnl9ICovICh0aGlzLnNlc3Npb24udXBncmFkZVJlcXVlc3QpXG4gICAgY29uc3QgcmF3SGVhZGVycyA9IHR5cGVvZiB1cGdyYWRlUmVxdWVzdD8uaGVhZGVycyA9PT0gXCJmdW5jdGlvblwiID8gdXBncmFkZVJlcXVlc3QuaGVhZGVycygpIDoge31cbiAgICBjb25zdCBtZXRhZGF0YSA9IHR5cGVvZiB0aGlzLnNlc3Npb24uZ2V0TWV0YWRhdGEgPT09IFwiZnVuY3Rpb25cIiA/IHRoaXMuc2Vzc2lvbi5nZXRNZXRhZGF0YSgpIDoge31cbiAgICBjb25zdCByZW1vdGVBZGRyZXNzID0gdHlwZW9mIHVwZ3JhZGVSZXF1ZXN0Py5yZW1vdGVBZGRyZXNzID09PSBcImZ1bmN0aW9uXCIgPyB1cGdyYWRlUmVxdWVzdC5yZW1vdGVBZGRyZXNzKCkgOiB1bmRlZmluZWRcbiAgICAvKiogQHR5cGUge1JlY29yZDxzdHJpbmcsIGFueT59ICovXG4gICAgY29uc3QgaGVhZGVyTWFwID0ge31cblxuICAgIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKHJhd0hlYWRlcnMgfHwge30pKSB7XG4gICAgICBoZWFkZXJNYXBba2V5LnRvTG93ZXJDYXNlKCldID0gcmF3SGVhZGVyc1trZXldXG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIGhlYWRlcnM6ICgpID0+IGhlYWRlck1hcCxcbiAgICAgIGhlYWRlcjogKG5hbWUpID0+IGhlYWRlck1hcFtTdHJpbmcobmFtZSkudG9Mb3dlckNhc2UoKV0sXG4gICAgICBtZXRhZGF0YTogKGtleSkgPT4ga2V5ID09PSB1bmRlZmluZWQgPyB7Li4ubWV0YWRhdGF9IDogbWV0YWRhdGFba2V5XSxcbiAgICAgIHBhdGg6ICgpID0+IFwiL2Zyb250ZW5kLW1vZGVsc1wiLFxuICAgICAgaHR0cE1ldGhvZDogKCkgPT4gXCJQT1NUXCIsXG4gICAgICByZW1vdGVBZGRyZXNzOiAoKSA9PiByZW1vdGVBZGRyZXNzLFxuICAgICAgb3JpZ2luOiAoKSA9PiBoZWFkZXJNYXAub3JpZ2luXG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -26,6 +26,11 @@ export default class VelociousHttpServerClientRequest {
|
|
|
26
26
|
httpMethod(): string;
|
|
27
27
|
httpVersion(): string;
|
|
28
28
|
host(): string | void;
|
|
29
|
+
/**
|
|
30
|
+
* @param {string} [key] - Metadata key.
|
|
31
|
+
* @returns {any} - Metadata value for a key, or the full metadata object.
|
|
32
|
+
*/
|
|
33
|
+
metadata(key?: string): any;
|
|
29
34
|
hostWithPort(): string;
|
|
30
35
|
origin(): string | null;
|
|
31
36
|
path(): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../../../src/http-server/client/request.js"],"names":[],"mappings":"AAOA;IACE;;;;OAIG;IACH,oDAHG;QAA2C,MAAM,EAAzC,OAAO,YAAY,EAAE,OAAO;QACmB,aAAa,EAA5D,OAAO,wBAAwB,EAAE,OAAO;KAClD,EAOA;IAHC,qCAAoB;IACpB,wDAAkC;IAClC,6BAAuD;IAGzD,kBAAkE;IAElE;;;OAGG;IACH,WAHW,MAAM,GACJ,MAAM,GAAG,SAAS,CAEoB;IAEnD;;;OAGG;IACH,mBAHW,MAAM,GACJ,MAAM,GAAG,IAAI,CAE6D;IACvF,kCAA6D;IAC7D,qBAA0D;IAC1D,sBAA4D;IAC5D,sBAA8C;
|
|
1
|
+
{"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../../../src/http-server/client/request.js"],"names":[],"mappings":"AAOA;IACE;;;;OAIG;IACH,oDAHG;QAA2C,MAAM,EAAzC,OAAO,YAAY,EAAE,OAAO;QACmB,aAAa,EAA5D,OAAO,wBAAwB,EAAE,OAAO;KAClD,EAOA;IAHC,qCAAoB;IACpB,wDAAkC;IAClC,6BAAuD;IAGzD,kBAAkE;IAElE;;;OAGG;IACH,WAHW,MAAM,GACJ,MAAM,GAAG,SAAS,CAEoB;IAEnD;;;OAGG;IACH,mBAHW,MAAM,GACJ,MAAM,GAAG,IAAI,CAE6D;IACvF,kCAA6D;IAC7D,qBAA0D;IAC1D,sBAA4D;IAC5D,sBAA8C;IAC9C;;;OAGG;IACH,eAHW,MAAM,GACJ,GAAG,CAMf;IAED,uBAcC;IAED,wBAAyC;IACzC,eAA8C;IAC9C,2HAA2H;IAC3H,UADc,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,EAAE,CAAC,CACxC;IACzD,sBAA8C;IAE9C,2FAA2F;IAC3F,eADc,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAiB9C;IACD,0BAAsD;IACtD,oCAAqD;IAErD,gEAAwE;IACxE,kCAAgD;CACjD;0BAzFyB,qBAAqB"}
|
|
@@ -30,6 +30,15 @@ export default class VelociousHttpServerClientRequest {
|
|
|
30
30
|
httpMethod() { return this.requestParser.getHttpMethod(); }
|
|
31
31
|
httpVersion() { return this.requestParser.getHttpVersion(); }
|
|
32
32
|
host() { return this.requestParser.getHost(); }
|
|
33
|
+
/**
|
|
34
|
+
* @param {string} [key] - Metadata key.
|
|
35
|
+
* @returns {any} - Metadata value for a key, or the full metadata object.
|
|
36
|
+
*/
|
|
37
|
+
metadata(key) {
|
|
38
|
+
if (key !== undefined)
|
|
39
|
+
return undefined;
|
|
40
|
+
return {};
|
|
41
|
+
}
|
|
33
42
|
hostWithPort() {
|
|
34
43
|
const port = this.port();
|
|
35
44
|
const protocol = this.protocol();
|
|
@@ -70,4 +79,4 @@ export default class VelociousHttpServerClientRequest {
|
|
|
70
79
|
getRequestBuffer() { return this.getRequestParser().getRequestBuffer(); }
|
|
71
80
|
getRequestParser() { return this.requestParser; }
|
|
72
81
|
}
|
|
73
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9odHRwLXNlcnZlci9jbGllbnQvcmVxdWVzdC5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxZQUFZO0FBRVosT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLFdBQVcsQ0FBQTtBQUM5QixPQUFPLFdBQVcsTUFBTSxhQUFhLENBQUE7QUFDckMsT0FBTyxhQUFhLE1BQU0scUJBQXFCLENBQUE7QUFDL0MsT0FBTyxhQUFhLE1BQU0sZ0NBQWdDLENBQUE7QUFFMUQsTUFBTSxDQUFDLE9BQU8sT0FBTyxnQ0FBZ0M7SUFDbkQ7Ozs7T0FJRztJQUNILFlBQVksRUFBQyxNQUFNLEVBQUUsYUFBYSxFQUFFLEdBQUcsUUFBUSxFQUFDO1FBQzlDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQTtRQUV2QixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQTtRQUNwQixJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQTtRQUNsQyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksYUFBYSxDQUFDLEVBQUMsYUFBYSxFQUFDLENBQUMsQ0FBQTtJQUN6RCxDQUFDO0lBRUQsT0FBTyxLQUFLLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLE1BQU0sSUFBSSxDQUFDLFlBQVksRUFBRSxFQUFFLENBQUEsQ0FBQyxDQUFDO0lBRWxFOzs7T0FHRztJQUNILElBQUksQ0FBQyxJQUFJLElBQUksT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQSxDQUFDLENBQUM7SUFFbkQ7OztPQUdHO0lBQ0gsTUFBTSxDQUFDLFVBQVUsSUFBSSxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQSxDQUFDLENBQUM7SUFDdkYsT0FBTyxLQUFLLE9BQU8sSUFBSSxDQUFDLGdCQUFn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QUFhLENBQUEsQ0FBQyxDQUFDO0NBQ2pEIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQHRzLWNoZWNrXG5cbmltcG9ydCB7ZGlnZ30gZnJvbSBcImRpZ2dlcml6ZVwiXG5pbXBvcnQgcXVlcnlzdHJpbmcgZnJvbSBcInF1ZXJ5c3RyaW5nXCJcbmltcG9ydCBSZXF1ZXN0UGFyc2VyIGZyb20gXCIuL3JlcXVlc3QtcGFyc2VyLmpzXCJcbmltcG9ydCByZXN0QXJnc0Vycm9yIGZyb20gXCIuLi8uLi91dGlscy9yZXN0LWFyZ3MtZXJyb3IuanNcIlxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBWZWxvY2lvdXNIdHRwU2VydmVyQ2xpZW50UmVxdWVzdCB7XG4gIC8qKlxuICAgKiBAcGFyYW0ge29iamVjdH0gYXJncyAtIE9wdGlvbnMgb2JqZWN0LlxuICAgKiBAcGFyYW0ge2ltcG9ydChcIi4vaW5kZXguanNcIikuZGVmYXVsdH0gYXJncy5jbGllbnQgLSBDbGllbnQgaW5zdGFuY2UuXG4gICAqIEBwYXJhbSB7aW1wb3J0KFwiLi4vLi4vY29uZmlndXJhdGlvbi5qc1wiKS5kZWZhdWx0fSBhcmdzLmNvbmZpZ3VyYXRpb24gLSBDb25maWd1cmF0aW9uIGluc3RhbmNlLlxuICAgKi9cbiAgY29uc3RydWN0b3Ioe2NsaWVudCwgY29uZmlndXJhdGlvbiwgLi4ucmVzdEFyZ3N9KSB7XG4gICAgcmVzdEFyZ3NFcnJvcihyZXN0QXJncylcblxuICAgIHRoaXMuY2xpZW50ID0gY2xpZW50XG4gICAgdGhpcy5jb25maWd1cmF0aW9uID0gY29uZmlndXJhdGlvblxuICAgIHRoaXMucmVxdWVzdFBhcnNlciA9IG5ldyBSZXF1ZXN0UGFyc2VyKHtjb25maWd1cmF0aW9ufSlcbiAgfVxuXG4gIGJhc2VVUkwoKSB7IHJldHVybiBgJHt0aGlzLnByb3RvY29sKCl9Oi8vJHt0aGlzLmhvc3RXaXRoUG9ydCgpfWAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge0J1ZmZlcn0gZGF0YSAtIERhdGEgcGF5bG9hZC5cbiAgICogQHJldHVybnMge0J1ZmZlciB8IHVuZGVmaW5lZH0gLSBSZW1haW5pbmcgZGF0YSwgaWYgYW55LlxuICAgKi9cbiAgZmVlZChkYXRhKSB7IHJldHVybiB0aGlzLnJlcXVlc3RQYXJzZXIuZmVlZChkYXRhKSB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBoZWFkZXJOYW1lIC0gSGVhZGVyIG5hbWUuXG4gICAqIEByZXR1cm5zIHtzdHJpbmcgfCBudWxsfSAtIFRoZSBoZWFkZXIuXG4gICAqL1xuICBoZWFkZXIoaGVhZGVyTmFtZSkgeyByZXR1cm4gdGhpcy5nZXRSZXF1ZXN0QnVmZmVyKCkuZ2V0SGVhZGVyKGhlYWRlck5hbWUpPy5nZXRWYWx1ZSgpIH1cbiAgaGVhZGVycygpIHsgcmV0dXJuIHRoaXMuZ2V0UmVxdWVzdEJ1ZmZlcigpLmdldEhlYWRlcnNIYXNoKCkgfVxuICBodHRwTWV0aG9kKCkgeyByZXR1cm4gdGhpcy5yZXF1ZXN0UGFyc2VyLmdldEh0dHBNZXRob2QoKSB9XG4gIGh0dHBWZXJzaW9uKCkgeyByZXR1cm4gdGhpcy5yZXF1ZXN0UGFyc2VyLmdldEh0dHBWZXJzaW9uKCkgfVxuICBob3N0KCkgeyByZXR1cm4gdGhpcy5yZXF1ZXN0UGFyc2VyLmdldEhvc3QoKSB9XG4gIC8qKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gW2tleV0gLSBNZXRhZGF0YSBrZXkuXG4gICAqIEByZXR1cm5zIHthbnl9IC0gTWV0YWRhdGEgdmFsdWUgZm9yIGEga2V5LCBvciB0aGUgZnVsbCBtZXRhZGF0YSBvYmplY3QuXG4gICAqL1xuICBtZXRhZGF0YShrZXkpIHtcbiAgICBpZiAoa2V5ICE9PSB1bmRlZmluZWQpIHJldHVybiB1bmRlZmluZWRcblxuICAgIHJldHVybiB7fVxuICB9XG5cbiAgaG9zdFdpdGhQb3J0KCkge1xuICAgIGNvbnN0IHBvcnQgPSB0aGlzLnBvcnQoKVxuICAgIGNvbnN0IHByb3RvY29sID0gdGhpcy5wcm90b2NvbCgpXG4gICAgbGV0IGhvc3RXaXRoUG9ydCA9IGAke3RoaXMuaG9zdCgpfWBcblxuICAgIGlmIChwb3J0ID09IDgwICYmIHByb3RvY29sID09IFwiaHR0cFwiKSB7XG4gICAgICAvLyBEbyBub3RoaW5nXG4gICAgfSBlbHNlIGlmIChwb3J0ID09IDQ0MyAmJiBwcm90b2NvbCA9PSBcImh0dHBzXCIpIHtcbiAgICAgIC8vIERvIG5vdGhpbmdcbiAgICB9IGVsc2UgaWYgKHBvcnQpIHtcbiAgICAgIGhvc3RXaXRoUG9ydCArPSBgOiR7cG9ydH1gXG4gICAgfVxuXG4gICAgcmV0dXJuIGhvc3RXaXRoUG9ydFxuICB9XG5cbiAgb3JpZ2luKCkgeyByZXR1cm4gdGhpcy5oZWFkZXIoXCJvcmlnaW5cIikgfVxuICBwYXRoKCkgeyByZXR1cm4gdGhpcy5yZXF1ZXN0UGFyc2VyLmdldFBhdGgoKSB9XG4gIC8qKiBAcmV0dXJucyB7UmVjb3JkPHN0cmluZywgc3RyaW5nIHwgc3RyaW5nW10gfCB1bmRlZmluZWQgfCBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiB8IHVua25vd25bXT59IC0gVGhlIHJlcXVlc3QgcGFyYW1zLiAqL1xuICBwYXJhbXMoKSB7IHJldHVybiBkaWdnKHRoaXMsIFwicmVxdWVzdFBhcnNlclwiLCBcInBhcmFtc1wiKSB9XG4gIHBvcnQoKSB7IHJldHVybiB0aGlzLnJlcXVlc3RQYXJzZXIuZ2V0UG9ydCgpIH1cblxuICAvKiogQHJldHVybnMge1JlY29yZDxzdHJpbmcsIHN0cmluZyB8IHN0cmluZ1tdPn0gLSBQYXJzZWQgcXVlcnkgcGFyYW1ldGVycyBmcm9tIHRoZSBVUkwuICovXG4gIHF1ZXJ5UGFyYW1zKCkge1xuICAgIGNvbnN0IHF1ZXJ5ID0gdGhpcy5wYXRoKCkuc3BsaXQoXCI/XCIpWzFdXG5cbiAgICBpZiAoIXF1ZXJ5KSByZXR1cm4gT2JqZWN0LmNyZWF0ZShudWxsKVxuXG4gICAgY29uc3QgcGFyc2VkID0gcXVlcnlzdHJpbmcucGFyc2UocXVlcnkpXG4gICAgLyoqIEB0eXBlIHtSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBzdHJpbmdbXT59ICovXG4gICAgY29uc3QgcGFyYW1zID0gT2JqZWN0LmNyZWF0ZShudWxsKVxuXG4gICAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMocGFyc2VkKSkge1xuICAgICAgaWYgKHR5cGVvZiB2YWx1ZSAhPT0gXCJ1bmRlZmluZWRcIikge1xuICAgICAgICBwYXJhbXNba2V5XSA9IHZhbHVlXG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHBhcmFtc1xuICB9XG4gIHByb3RvY29sKCkgeyByZXR1cm4gdGhpcy5yZXF1ZXN0UGFyc2VyLmdldFByb3RvY29sKCkgfVxuICByZW1vdGVBZGRyZXNzKCkgeyByZXR1cm4gdGhpcy5jbGllbnQ/LnJlbW90ZUFkZHJlc3MgfVxuXG4gIGdldFJlcXVlc3RCdWZmZXIoKSB7IHJldHVybiB0aGlzLmdldFJlcXVlc3RQYXJzZXIoKS5nZXRSZXF1ZXN0QnVmZmVyKCkgfVxuICBnZXRSZXF1ZXN0UGFyc2VyKCkgeyByZXR1cm4gdGhpcy5yZXF1ZXN0UGFyc2VyIH1cbn1cbiJdfQ==
|
|
@@ -3,14 +3,16 @@ export default class VelociousHttpServerClientWebsocketRequest {
|
|
|
3
3
|
* @param {object} args - Options object.
|
|
4
4
|
* @param {any} [args.body] - Request body.
|
|
5
5
|
* @param {Record<string, string>} [args.headers] - Header list.
|
|
6
|
+
* @param {Record<string, any>} [args.metadata] - Session metadata.
|
|
6
7
|
* @param {string} args.method - HTTP method.
|
|
7
8
|
* @param {string} args.path - Path.
|
|
8
9
|
* @param {Record<string, any>} [args.params] - Parameters object.
|
|
9
10
|
* @param {string} [args.remoteAddress] - Remote address.
|
|
10
11
|
*/
|
|
11
|
-
constructor({ body, headers, method, params, path, remoteAddress }: {
|
|
12
|
+
constructor({ body, headers, metadata, method, params, path, remoteAddress }: {
|
|
12
13
|
body?: any;
|
|
13
14
|
headers?: Record<string, string> | undefined;
|
|
15
|
+
metadata?: Record<string, any> | undefined;
|
|
14
16
|
method: string;
|
|
15
17
|
path: string;
|
|
16
18
|
params?: Record<string, any> | undefined;
|
|
@@ -19,6 +21,8 @@ export default class VelociousHttpServerClientWebsocketRequest {
|
|
|
19
21
|
body: any;
|
|
20
22
|
/** @type {Record<string, string>} */
|
|
21
23
|
headersMap: Record<string, string>;
|
|
24
|
+
/** @type {Record<string, any>} */
|
|
25
|
+
metadataObject: Record<string, any>;
|
|
22
26
|
method: string;
|
|
23
27
|
/** @type {Record<string, any>} */
|
|
24
28
|
paramsObject: Record<string, any>;
|
|
@@ -34,6 +38,11 @@ export default class VelociousHttpServerClientWebsocketRequest {
|
|
|
34
38
|
httpMethod(): string;
|
|
35
39
|
httpVersion(): string;
|
|
36
40
|
host(): string | undefined;
|
|
41
|
+
/**
|
|
42
|
+
* @param {string} [key] - Metadata key.
|
|
43
|
+
* @returns {any} - Metadata value for a key, or the full metadata object.
|
|
44
|
+
*/
|
|
45
|
+
metadata(key?: string): any;
|
|
37
46
|
hostWithPort(): string | undefined;
|
|
38
47
|
origin(): string | null;
|
|
39
48
|
path(): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"websocket-request.d.ts","sourceRoot":"","sources":["../../../../src/http-server/client/websocket-request.js"],"names":[],"mappings":"AAIA;IACE
|
|
1
|
+
{"version":3,"file":"websocket-request.d.ts","sourceRoot":"","sources":["../../../../src/http-server/client/websocket-request.js"],"names":[],"mappings":"AAIA;IACE;;;;;;;;;OASG;IACH,8EARG;QAAmB,IAAI,GAAf,GAAG;QAC2B,OAAO;QACV,QAAQ;QACtB,MAAM,EAAnB,MAAM;QACO,IAAI,EAAjB,MAAM;QACqB,MAAM;QACnB,aAAa;KACrC,EA+BA;IA1BC,UAAgB;IAChB,qCAAqC;IACrC,YADW,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CACb;IACpB,kCAAkC;IAClC,gBADW,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CACqB;IACnD,eAAkC;IAClC,kCAAkC;IAClC,cADW,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CACR;IACtB,cAAiB;IACjB,uCAAuC;IAmBzC,8BAKC;IAED;;;OAGG;IACH,aAHW,MAAM,GACJ,MAAM,GAAG,IAAI,CAEyC;IAEnE,kCAAoC;IAEpC,qBAAmC;IAEnC,sBAAoC;IAEpC,2BAAkD;IAElD;;;OAGG;IACH,eAHW,MAAM,GACJ,GAAG,CAMf;IAED,mCAQC;IAED,wBAAyC;IAEzC,eAA4B;IAE5B,8BAAqC;IAErC,2BAKC;IAED,+BAKC;IAED,2FAA2F;IAC3F,eADc,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CACE;IAEjD,oCAAkD;IAElD,yBAkBC;CACF"}
|
|
@@ -5,12 +5,13 @@ export default class VelociousHttpServerClientWebsocketRequest {
|
|
|
5
5
|
* @param {object} args - Options object.
|
|
6
6
|
* @param {any} [args.body] - Request body.
|
|
7
7
|
* @param {Record<string, string>} [args.headers] - Header list.
|
|
8
|
+
* @param {Record<string, any>} [args.metadata] - Session metadata.
|
|
8
9
|
* @param {string} args.method - HTTP method.
|
|
9
10
|
* @param {string} args.path - Path.
|
|
10
11
|
* @param {Record<string, any>} [args.params] - Parameters object.
|
|
11
12
|
* @param {string} [args.remoteAddress] - Remote address.
|
|
12
13
|
*/
|
|
13
|
-
constructor({ body, headers, method, params, path, remoteAddress }) {
|
|
14
|
+
constructor({ body, headers, metadata, method, params, path, remoteAddress }) {
|
|
14
15
|
if (!method)
|
|
15
16
|
throw new Error("method is required");
|
|
16
17
|
if (!path)
|
|
@@ -18,6 +19,8 @@ export default class VelociousHttpServerClientWebsocketRequest {
|
|
|
18
19
|
this.body = body;
|
|
19
20
|
/** @type {Record<string, string>} */
|
|
20
21
|
this.headersMap = {};
|
|
22
|
+
/** @type {Record<string, any>} */
|
|
23
|
+
this.metadataObject = metadata ? { ...metadata } : {};
|
|
21
24
|
this.method = method.toUpperCase();
|
|
22
25
|
/** @type {Record<string, any>} */
|
|
23
26
|
this.paramsObject = {};
|
|
@@ -53,6 +56,15 @@ export default class VelociousHttpServerClientWebsocketRequest {
|
|
|
53
56
|
httpMethod() { return this.method; }
|
|
54
57
|
httpVersion() { return "websocket"; }
|
|
55
58
|
host() { return this.header("host") || undefined; }
|
|
59
|
+
/**
|
|
60
|
+
* @param {string} [key] - Metadata key.
|
|
61
|
+
* @returns {any} - Metadata value for a key, or the full metadata object.
|
|
62
|
+
*/
|
|
63
|
+
metadata(key) {
|
|
64
|
+
if (key !== undefined)
|
|
65
|
+
return this.metadataObject[key];
|
|
66
|
+
return { ...this.metadataObject };
|
|
67
|
+
}
|
|
56
68
|
hostWithPort() {
|
|
57
69
|
const host = this.host();
|
|
58
70
|
const port = this.port();
|
|
@@ -95,4 +107,4 @@ export default class VelociousHttpServerClientWebsocketRequest {
|
|
|
95
107
|
return params;
|
|
96
108
|
}
|
|
97
109
|
}
|
|
98
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
110
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vic29ja2V0LXJlcXVlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvaHR0cC1zZXJ2ZXIvY2xpZW50L3dlYnNvY2tldC1yZXF1ZXN0LmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFlBQVk7QUFFWixPQUFPLFdBQVcsTUFBTSxhQUFhLENBQUE7QUFFckMsTUFBTSxDQUFDLE9BQU8sT0FBTyx5Q0FBeUM7SUFDNUQ7Ozs7Ozs7OztPQVNHO0lBQ0gsWUFBWSxFQUFDLElBQUksRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBQztRQUN4RSxJQUFJLENBQUMsTUFBTTtZQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsb0JBQW9CLENBQUMsQ0FBQTtRQUNsRCxJQUFJLENBQUMsSUFBSTtZQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQTtRQUU5QyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQTtRQUNoQixxQ0FBcUM7UUFDckMsSUFBSSxDQUFDLFVBQVUsR0FBRyxFQUFFLENBQUE7UUFDcEIsa0NBQWtDO1FBQ2xDLElBQUksQ0FBQyxjQUFjLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFDLEdBQUcsUUFBUSxFQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQTtRQUNuRCxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQTtRQUNsQyxrQ0FBa0M7UUFDbEMsSUFBSSxDQUFDLFlBQVksR0FBRyxFQUFFLENBQUE7UUFDdEIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUE7UUFDakIsSUFBSSxDQUFDLGtCQUFrQixHQUFHLGFBQWEsQ0FBQTtRQUV2QyxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1osS0FBSyxNQUFNLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxJQUFJLE1BQU0sQ0FBQyxP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QUE7SUFDZixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAdHMtY2hlY2tcblxuaW1wb3J0IHF1ZXJ5c3RyaW5nIGZyb20gXCJxdWVyeXN0cmluZ1wiXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFZlbG9jaW91c0h0dHBTZXJ2ZXJDbGllbnRXZWJzb2NrZXRSZXF1ZXN0IHtcbiAgLyoqXG4gICAqIEBwYXJhbSB7b2JqZWN0fSBhcmdzIC0gT3B0aW9ucyBvYmplY3QuXG4gICAqIEBwYXJhbSB7YW55fSBbYXJncy5ib2R5XSAtIFJlcXVlc3QgYm9keS5cbiAgICogQHBhcmFtIHtSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+fSBbYXJncy5oZWFkZXJzXSAtIEhlYWRlciBsaXN0LlxuICAgKiBAcGFyYW0ge1JlY29yZDxzdHJpbmcsIGFueT59IFthcmdzLm1ldGFkYXRhXSAtIFNlc3Npb24gbWV0YWRhdGEuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBhcmdzLm1ldGhvZCAtIEhUVFAgbWV0aG9kLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gYXJncy5wYXRoIC0gUGF0aC5cbiAgICogQHBhcmFtIHtSZWNvcmQ8c3RyaW5nLCBhbnk+fSBbYXJncy5wYXJhbXNdIC0gUGFyYW1ldGVycyBvYmplY3QuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBbYXJncy5yZW1vdGVBZGRyZXNzXSAtIFJlbW90ZSBhZGRyZXNzLlxuICAgKi9cbiAgY29uc3RydWN0b3Ioe2JvZHksIGhlYWRlcnMsIG1ldGFkYXRhLCBtZXRob2QsIHBhcmFtcywgcGF0aCwgcmVtb3RlQWRkcmVzc30pIHtcbiAgICBpZiAoIW1ldGhvZCkgdGhyb3cgbmV3IEVycm9yKFwibWV0aG9kIGlzIHJlcXVpcmVkXCIpXG4gICAgaWYgKCFwYXRoKSB0aHJvdyBuZXcgRXJyb3IoXCJwYXRoIGlzIHJlcXVpcmVkXCIpXG5cbiAgICB0aGlzLmJvZHkgPSBib2R5XG4gICAgLyoqIEB0eXBlIHtSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+fSAqL1xuICAgIHRoaXMuaGVhZGVyc01hcCA9IHt9XG4gICAgLyoqIEB0eXBlIHtSZWNvcmQ8c3RyaW5nLCBhbnk+fSAqL1xuICAgIHRoaXMubWV0YWRhdGFPYmplY3QgPSBtZXRhZGF0YSA/IHsuLi5tZXRhZGF0YX0gOiB7fVxuICAgIHRoaXMubWV0aG9kID0gbWV0aG9kLnRvVXBwZXJDYXNlKClcbiAgICAvKiogQHR5cGUge1JlY29yZDxzdHJpbmcsIGFueT59ICovXG4gICAgdGhpcy5wYXJhbXNPYmplY3QgPSB7fVxuICAgIHRoaXMuX3BhdGggPSBwYXRoXG4gICAgdGhpcy5yZW1vdGVBZGRyZXNzVmFsdWUgPSByZW1vdGVBZGRyZXNzXG5cbiAgICBpZiAoaGVhZGVycykge1xuICAgICAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMoaGVhZGVycykpIHtcbiAgICAgICAgdGhpcy5oZWFkZXJzTWFwW2tleS50b0xvd2VyQ2FzZSgpXSA9IHZhbHVlXG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHBhcmFtcykgdGhpcy5wYXJhbXNPYmplY3QgPSB7Li4ucGFyYW1zfVxuICAgIGlmICh0aGlzLmJvZHkgJiYgdHlwZW9mIHRoaXMuYm9keSA9PT0gXCJvYmplY3RcIikgdGhpcy5wYXJhbXNPYmplY3QgPSB7Li4udGhpcy5wYXJhbXNPYmplY3QsIC4uLnRoaXMuYm9keX1cbiAgICBpZiAodGhpcy5ib2R5ICYmIHR5cGVvZiB0aGlzLmJvZHkgPT09IFwib2JqZWN0XCIgJiYgIXRoaXMuaGVhZGVyc01hcFtcImNvbnRlbnQtdHlwZVwiXSkge1xuICAgICAgdGhpcy5oZWFkZXJzTWFwW1wiY29udGVudC10eXBlXCJdID0gXCJhcHBsaWNhdGlvbi9qc29uXCJcbiAgICB9XG5cbiAgICBjb25zdCBxdWVyeVBhcmFtcyA9IHRoaXMuX3BhcnNlUXVlcnlQYXJhbXMoKVxuXG4gICAgdGhpcy5wYXJhbXNPYmplY3QgPSB7Li4ucXVlcnlQYXJhbXMsIC4uLnRoaXMucGFyYW1zT2JqZWN0fVxuICB9XG5cbiAgYmFzZVVSTCgpIHtcbiAgICBjb25zdCBwcm90b2NvbCA9IHRoaXMucHJvdG9jb2woKVxuICAgIGNvbnN0IGhvc3QgPSB0aGlzLmhvc3RXaXRoUG9ydCgpXG5cbiAgICBpZiAocHJvdG9jb2wgJiYgaG9zdCkgcmV0dXJuIGAke3Byb3RvY29sfTovLyR7aG9zdH1gXG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtzdHJpbmd9IG5hbWUgLSBIZWFkZXIgbmFtZS5cbiAgICogQHJldHVybnMge3N0cmluZyB8IG51bGx9IC0gSGVhZGVyIHZhbHVlLlxuICAgKi9cbiAgaGVhZGVyKG5hbWUpIHsgcmV0dXJuIHRoaXMuaGVhZGVyc01hcFtuYW1lLnRvTG93ZXJDYXNlKCldIHx8IG51bGwgfVxuXG4gIGhlYWRlcnMoKSB7IHJldHVybiB0aGlzLmhlYWRlcnNNYXAgfVxuXG4gIGh0dHBNZXRob2QoKSB7IHJldHVybiB0aGlzLm1ldGhvZCB9XG5cbiAgaHR0cFZlcnNpb24oKSB7IHJldHVybiBcIndlYnNvY2tldFwiIH1cblxuICBob3N0KCkgeyByZXR1cm4gdGhpcy5oZWFkZXIoXCJob3N0XCIpIHx8IHVuZGVmaW5lZCB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBba2V5XSAtIE1ldGFkYXRhIGtleS5cbiAgICogQHJldHVybnMge2FueX0gLSBNZXRhZGF0YSB2YWx1ZSBmb3IgYSBrZXksIG9yIHRoZSBmdWxsIG1ldGFkYXRhIG9iamVjdC5cbiAgICovXG4gIG1ldGFkYXRhKGtleSkge1xuICAgIGlmIChrZXkgIT09IHVuZGVmaW5lZCkgcmV0dXJuIHRoaXMubWV0YWRhdGFPYmplY3Rba2V5XVxuXG4gICAgcmV0dXJuIHsuLi50aGlzLm1ldGFkYXRhT2JqZWN0fVxuICB9XG5cbiAgaG9zdFdpdGhQb3J0KCkge1xuICAgIGNvbnN0IGhvc3QgPSB0aGlzLmhvc3QoKVxuICAgIGNvbnN0IHBvcnQgPSB0aGlzLnBvcnQoKVxuXG4gICAgaWYgKCFob3N0KSByZXR1cm5cbiAgICBpZiAoIXBvcnQpIHJldHVybiBob3N0XG5cbiAgICByZXR1cm4gYCR7aG9zdH06JHtwb3J0fWBcbiAgfVxuXG4gIG9yaWdpbigpIHsgcmV0dXJuIHRoaXMuaGVhZGVyKFwib3JpZ2luXCIpIH1cblxuICBwYXRoKCkgeyByZXR1cm4gdGhpcy5fcGF0aCB9XG5cbiAgcGFyYW1zKCkgeyByZXR1cm4gdGhpcy5wYXJhbXNPYmplY3QgfVxuXG4gIHBvcnQoKSB7XG4gICAgY29uc3QgaG9zdEhlYWRlciA9IHRoaXMuaGVhZGVyKFwiaG9zdFwiKVxuICAgIGNvbnN0IG1hdGNoID0gaG9zdEhlYWRlcj8ubWF0Y2goLzooXFxkKykkLylcblxuICAgIGlmIChtYXRjaCkgcmV0dXJuIHBhcnNlSW50KG1hdGNoWzFdKVxuICB9XG5cbiAgcHJvdG9jb2woKSB7XG4gICAgY29uc3Qgb3JpZ2luID0gdGhpcy5vcmlnaW4oKVxuICAgIGNvbnN0IG1hdGNoID0gb3JpZ2luPy5tYXRjaCgvXiguKyk6XFwvXFwvLylcblxuICAgIHJldHVybiBtYXRjaD8uWzFdXG4gIH1cblxuICAvKiogQHJldHVybnMge1JlY29yZDxzdHJpbmcsIHN0cmluZyB8IHN0cmluZ1tdPn0gLSBQYXJzZWQgcXVlcnkgcGFyYW1ldGVycyBmcm9tIHRoZSBVUkwuICovXG4gIHF1ZXJ5UGFyYW1zKCkgeyByZXR1cm4gdGhpcy5fcGFyc2VRdWVyeVBhcmFtcygpIH1cblxuICByZW1vdGVBZGRyZXNzKCkgeyByZXR1cm4gdGhpcy5yZW1vdGVBZGRyZXNzVmFsdWUgfVxuXG4gIF9wYXJzZVF1ZXJ5UGFyYW1zKCkge1xuICAgIGNvbnN0IHF1ZXJ5ID0gdGhpcy5fcGF0aC5zcGxpdChcIj9cIilbMV1cblxuICAgIGlmICghcXVlcnkpIHJldHVybiBPYmplY3QuY3JlYXRlKG51bGwpXG5cbiAgICBjb25zdCBwYXJzZWRRdWVyeSA9IHF1ZXJ5c3RyaW5nLnBhcnNlKHF1ZXJ5KVxuICAgIC8qKiBAdHlwZSB7UmVjb3JkPHN0cmluZywgc3RyaW5nIHwgc3RyaW5nW10+fSAqL1xuICAgIGNvbnN0IHBhcmFtcyA9IE9iamVjdC5jcmVhdGUobnVsbClcblxuICAgIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKHBhcnNlZFF1ZXJ5KSkge1xuICAgICAgY29uc3QgdmFsdWUgPSBwYXJzZWRRdWVyeVtrZXldXG5cbiAgICAgIGlmICh0eXBlb2YgdmFsdWUgIT09IFwidW5kZWZpbmVkXCIpIHtcbiAgICAgICAgcGFyYW1zW2tleV0gPSB2YWx1ZVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBwYXJhbXNcbiAgfVxufVxuIl19
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"websocket-session.d.ts","sourceRoot":"","sources":["../../../../src/http-server/client/websocket-session.js"],"names":[],"mappings":"AA0EA;IAWE;;;;;;;OAOG;IACH,8FANG;QAAuD,aAAa,EAA5D,OAAO,wBAAwB,EAAE,OAAO;QACL,MAAM,EAAzC,OAAO,YAAY,EAAE,OAAO;QACqD,cAAc;QACzB,cAAc;QACE,qBAAqB;KACrH,EAwFA;IAzGD,mEAA2B;IAC3B,wBAAyB;IACzB,mBAAoB;IACpB,oCAAgC;IAChC,oCAAgC;IAChC,8BAA0B;IAC1B,mCAA+B;IAC/B,wCAAwC;IACxC,cADW,uBAAuB,EAAE,CACnB;IAWf,4BAA6B;IAC7B,qCAAoB;IACpB,wDAAkC;IAClC,8EAAoC;IACpC,2FAAoC;IACpC,kHAAkD;IAClD,+BAA2D;IAC3D,eAA8B;IAE9B,kCAAkC;IAClC,WADW,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CACX;IAEnB;;;;;OAKG;IACH,MAFU,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAEf;IAEd,wEAAwE;IACxE,cADW,GAAG,CAAC,MAAM,EAAE,OAAO,4BAA4B,EAAE,OAAO,CAAC,CACvC;IAE7B,0GAA0G;IAC1G,uBADW,GAAG,CAAC,MAAM,EAAE;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,OAAO,yBAAyB,EAAE,OAAO,CAAA;KAAC,CAAC,CAChE;IAEtC;;;;;;OAMG;IACH,WAFU,MAAM,CAEa;IAE7B,kFAAkF;IAClF,SADW,OAAO,CACE;IAEpB,uEAAuE;IACvE,gBADW,GAAG,EAAE,CACQ;IAExB,kDAAkD;IAClD,QADW,OAAO,YAAY,EAAE,OAAO,GAAG,IAAI,CAC5B;IAElB;;;;;;;OAOG;IACH,eAFU,OAAO,CAAC,IAAI,CAAC,CAEe;IAEtC;;;;;;OAMG;IACH,wBAFU,OAAO,CAAC,GAAG,CAAC,GAAG,SAAS,CAEK;IAEvC;;;;;OAKG;IACH,qBAFU,MAAM,EAAE,GAAG,IAAI,CAEM;IAE/B;;;;;OAKG;IACH,mBAFU,MAAM,GAAG,IAAI,CAEM;IAE7B;;;;;OAKG;IACH,kBAFU,MAAM,CAES;IAG3B;;;;;OAKG;IACH,0BAFa,IAAI,CAQhB;IAED;;;;;;;OAOG;IACH,gCAHW,MAAM,GACJ,IAAI,CAIhB;IAED,kFAAkF;IAClF,eADc,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAGhC;IAED,mFAAmF;IACnF,YADc,OAAO,CAGpB;IAED;;;OAGG;IACH,yBAHW,MAAM,GACJ,IAAI,CAIhB;IAED,gBAGC;IAED;;;OAGG;IACH,yBAHW,MAAM,GACJ,OAAO,CAInB;IAED;;;OAGG;IACH,aAHW,MAAM,GACJ,IAAI,CAKhB;IAED;;;;;OAKG;IACH,mBALW,MAAM,WACN,GAAG,YACH;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAC,GAC3E,OAAO,CAAC,IAAI,CAAC,CA2CzB;IAED;;OAEG;IACH,qBAFa,OAAO,CAAC,IAAI,CAAC,CA2CzB;IAED;;;OAGG;IACH,oBAHW,OAAO,YAAY,EAAE,OAAO,GAC1B,IAAI,CAMhB;IAED;;;OAGG;IACH,wBAHW,uBAAuB,GACrB,OAAO,CAAC,IAAI,CAAC,CAYzB;IAED;;;OAGG;IACH,0BAHW,uBAAuB,GACrB,OAAO,CAAC,IAAI,CAAC,CAWzB;IAED;;;;;;;OAOG;IACH,6BAHW,uBAAuB,GACrB,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"websocket-session.d.ts","sourceRoot":"","sources":["../../../../src/http-server/client/websocket-session.js"],"names":[],"mappings":"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"}
|