@based/server 6.9.0 → 7.0.1
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/auth/defaultConfig.d.ts +0 -1
- package/dist/auth/defaultConfig.js +4 -9
- package/dist/auth/defaultConfig.js.map +1 -1
- package/dist/auth/index.d.ts +3 -4
- package/dist/auth/index.js +21 -24
- package/dist/auth/index.js.map +1 -1
- package/dist/auth/parseAuthState.d.ts +0 -1
- package/dist/auth/parseAuthState.js +3 -5
- package/dist/auth/parseAuthState.js.map +1 -1
- package/dist/auth/parseJSONAuthState.d.ts +0 -1
- package/dist/auth/parseJSONAuthState.js +1 -3
- package/dist/auth/parseJSONAuthState.js.map +1 -1
- package/dist/authorize.d.ts +2 -3
- package/dist/authorize.js +17 -22
- package/dist/authorize.js.map +1 -1
- package/dist/channel/cleanup.d.ts +1 -2
- package/dist/channel/cleanup.js +2 -6
- package/dist/channel/cleanup.js.map +1 -1
- package/dist/channel/create.d.ts +2 -3
- package/dist/channel/create.js +5 -9
- package/dist/channel/create.js.map +1 -1
- package/dist/channel/destroy.d.ts +2 -3
- package/dist/channel/destroy.js +7 -12
- package/dist/channel/destroy.js.map +1 -1
- package/dist/channel/extend.d.ts +3 -4
- package/dist/channel/extend.js +2 -7
- package/dist/channel/extend.js.map +1 -1
- package/dist/channel/get.d.ts +2 -3
- package/dist/channel/get.js +4 -9
- package/dist/channel/get.js.map +1 -1
- package/dist/channel/index.d.ts +8 -9
- package/dist/channel/index.js +8 -24
- package/dist/channel/index.js.map +1 -1
- package/dist/channel/start.d.ts +1 -2
- package/dist/channel/start.js +10 -15
- package/dist/channel/start.js.map +1 -1
- package/dist/channel/subscribe.d.ts +1 -2
- package/dist/channel/subscribe.js +8 -13
- package/dist/channel/subscribe.js.map +1 -1
- package/dist/channel/types.d.ts +0 -1
- package/dist/channel/types.js +1 -2
- package/dist/channel/types.js.map +1 -1
- package/dist/channel/unsub.d.ts +1 -2
- package/dist/channel/unsub.js +7 -13
- package/dist/channel/unsub.js.map +1 -1
- package/dist/compress.d.ts +1 -2
- package/dist/compress.js +9 -16
- package/dist/compress.js.map +1 -1
- package/dist/error/errorTypeHandlers.d.ts +1 -2
- package/dist/error/errorTypeHandlers.js +20 -23
- package/dist/error/errorTypeHandlers.js.map +1 -1
- package/dist/error/index.d.ts +4 -5
- package/dist/error/index.js +10 -29
- package/dist/error/index.js.map +1 -1
- package/dist/error/types.d.ts +0 -1
- package/dist/error/types.js +3 -6
- package/dist/error/types.js.map +1 -1
- package/dist/functionApi/callFunction.d.ts +1 -2
- package/dist/functionApi/callFunction.js +10 -14
- package/dist/functionApi/callFunction.js.map +1 -1
- package/dist/functionApi/channelSubscribe.d.ts +1 -2
- package/dist/functionApi/channelSubscribe.js +14 -18
- package/dist/functionApi/channelSubscribe.js.map +1 -1
- package/dist/functionApi/client/channel.d.ts +0 -1
- package/dist/functionApi/client/channel.js +12 -12
- package/dist/functionApi/client/channel.js.map +1 -1
- package/dist/functionApi/client/index.d.ts +4 -5
- package/dist/functionApi/client/index.js +15 -21
- package/dist/functionApi/client/index.js.map +1 -1
- package/dist/functionApi/client/query.d.ts +1 -2
- package/dist/functionApi/client/query.js +9 -10
- package/dist/functionApi/client/query.js.map +1 -1
- package/dist/functionApi/get.d.ts +1 -2
- package/dist/functionApi/get.js +17 -21
- package/dist/functionApi/get.js.map +1 -1
- package/dist/functionApi/index.d.ts +7 -9
- package/dist/functionApi/index.js +7 -26
- package/dist/functionApi/index.js.map +1 -1
- package/dist/functionApi/observe.d.ts +2 -3
- package/dist/functionApi/observe.js +15 -19
- package/dist/functionApi/observe.js.map +1 -1
- package/dist/functionApi/publish.d.ts +1 -2
- package/dist/functionApi/publish.js +7 -11
- package/dist/functionApi/publish.js.map +1 -1
- package/dist/functionApi/stream.d.ts +1 -2
- package/dist/functionApi/stream.js +13 -17
- package/dist/functionApi/stream.js.map +1 -1
- package/dist/functions/genVersion.d.ts +0 -1
- package/dist/functions/genVersion.js +8 -12
- package/dist/functions/genVersion.js.map +1 -1
- package/dist/functions/index.d.ts +4 -5
- package/dist/functions/index.js +42 -57
- package/dist/functions/index.js.map +1 -1
- package/dist/functions/timeout.d.ts +0 -1
- package/dist/functions/timeout.js +2 -7
- package/dist/functions/timeout.js.map +1 -1
- package/dist/functions/types.d.ts +1 -2
- package/dist/functions/types.js +1 -2
- package/dist/incoming/http/function.d.ts +1 -2
- package/dist/incoming/http/function.js +13 -17
- package/dist/incoming/http/function.js.map +1 -1
- package/dist/incoming/http/handleRequest.d.ts +3 -0
- package/dist/incoming/http/handleRequest.js +11 -0
- package/dist/incoming/http/handleRequest.js.map +1 -0
- package/dist/incoming/http/index.d.ts +1 -2
- package/dist/incoming/http/index.js +52 -94
- package/dist/incoming/http/index.js.map +1 -1
- package/dist/incoming/http/parseQuery.d.ts +2 -3
- package/dist/incoming/http/parseQuery.js +9 -8
- package/dist/incoming/http/parseQuery.js.map +1 -1
- package/dist/incoming/http/publish.d.ts +1 -2
- package/dist/incoming/http/publish.js +16 -20
- package/dist/incoming/http/publish.js.map +1 -1
- package/dist/incoming/http/query.d.ts +1 -2
- package/dist/incoming/http/query.js +32 -46
- package/dist/incoming/http/query.js.map +1 -1
- package/dist/incoming/http/readBody.d.ts +1 -2
- package/dist/incoming/http/readBody.js +17 -25
- package/dist/incoming/http/readBody.js.map +1 -1
- package/dist/incoming/http/streamFunction/getExtension.d.ts +0 -1
- package/dist/incoming/http/streamFunction/getExtension.js +3 -8
- package/dist/incoming/http/streamFunction/getExtension.js.map +1 -1
- package/dist/incoming/http/streamFunction/index.d.ts +1 -2
- package/dist/incoming/http/streamFunction/index.js +8 -12
- package/dist/incoming/http/streamFunction/index.js.map +1 -1
- package/dist/incoming/http/streamFunction/multiPart/index.d.ts +1 -2
- package/dist/incoming/http/streamFunction/multiPart/index.js +12 -19
- package/dist/incoming/http/streamFunction/multiPart/index.js.map +1 -1
- package/dist/incoming/http/streamFunction/multiPart/readFormData.d.ts +1 -2
- package/dist/incoming/http/streamFunction/multiPart/readFormData.js +11 -16
- package/dist/incoming/http/streamFunction/multiPart/readFormData.js.map +1 -1
- package/dist/incoming/http/streamFunction/stream/createStream.d.ts +1 -2
- package/dist/incoming/http/streamFunction/stream/createStream.js +13 -18
- package/dist/incoming/http/streamFunction/stream/createStream.js.map +1 -1
- package/dist/incoming/http/streamFunction/stream/index.d.ts +1 -2
- package/dist/incoming/http/streamFunction/stream/index.js +19 -26
- package/dist/incoming/http/streamFunction/stream/index.js.map +1 -1
- package/dist/incoming/index.d.ts +1 -2
- package/dist/incoming/index.js +19 -24
- package/dist/incoming/index.js.map +1 -1
- package/dist/incoming/upgrade.d.ts +1 -2
- package/dist/incoming/upgrade.js +8 -13
- package/dist/incoming/upgrade.js.map +1 -1
- package/dist/incoming/ws/auth.d.ts +2 -3
- package/dist/incoming/ws/auth.js +19 -25
- package/dist/incoming/ws/auth.js.map +1 -1
- package/dist/incoming/ws/channelPublish.d.ts +1 -2
- package/dist/incoming/ws/channelPublish.js +17 -21
- package/dist/incoming/ws/channelPublish.js.map +1 -1
- package/dist/incoming/ws/channelSubscribe.d.ts +2 -3
- package/dist/incoming/ws/channelSubscribe.js +32 -38
- package/dist/incoming/ws/channelSubscribe.js.map +1 -1
- package/dist/incoming/ws/function.d.ts +1 -2
- package/dist/incoming/ws/function.js +23 -27
- package/dist/incoming/ws/function.js.map +1 -1
- package/dist/incoming/ws/get.d.ts +1 -2
- package/dist/incoming/ws/get.js +34 -38
- package/dist/incoming/ws/get.js.map +1 -1
- package/dist/incoming/ws/index.d.ts +1 -2
- package/dist/incoming/ws/index.js +19 -23
- package/dist/incoming/ws/index.js.map +1 -1
- package/dist/incoming/ws/query.d.ts +2 -3
- package/dist/incoming/ws/query.js +26 -32
- package/dist/incoming/ws/query.js.map +1 -1
- package/dist/incoming/ws/types.d.ts +1 -2
- package/dist/incoming/ws/types.js +1 -2
- package/dist/index.d.ts +9 -10
- package/dist/index.js +9 -29
- package/dist/index.js.map +1 -1
- package/dist/installFn.d.ts +3 -4
- package/dist/installFn.js +10 -14
- package/dist/installFn.js.map +1 -1
- package/dist/protocol.d.ts +1 -2
- package/dist/protocol.js +55 -78
- package/dist/protocol.js.map +1 -1
- package/dist/query/cleanup.d.ts +1 -2
- package/dist/query/cleanup.js +2 -6
- package/dist/query/cleanup.js.map +1 -1
- package/dist/query/create.d.ts +2 -3
- package/dist/query/create.js +5 -9
- package/dist/query/create.js.map +1 -1
- package/dist/query/destroy.d.ts +2 -3
- package/dist/query/destroy.js +7 -12
- package/dist/query/destroy.js.map +1 -1
- package/dist/query/extendCache.d.ts +1 -2
- package/dist/query/extendCache.js +1 -5
- package/dist/query/extendCache.js.map +1 -1
- package/dist/query/genObservableId.d.ts +0 -1
- package/dist/query/genObservableId.js +4 -8
- package/dist/query/genObservableId.js.map +1 -1
- package/dist/query/get.d.ts +2 -3
- package/dist/query/get.js +4 -9
- package/dist/query/get.js.map +1 -1
- package/dist/query/index.d.ts +10 -11
- package/dist/query/index.js +10 -26
- package/dist/query/index.js.map +1 -1
- package/dist/query/send.d.ts +2 -3
- package/dist/query/send.js +8 -13
- package/dist/query/send.js.map +1 -1
- package/dist/query/start/error.d.ts +2 -3
- package/dist/query/start/error.js +6 -10
- package/dist/query/start/error.js.map +1 -1
- package/dist/query/start/index.d.ts +1 -2
- package/dist/query/start/index.js +14 -19
- package/dist/query/start/index.js.map +1 -1
- package/dist/query/start/relay.d.ts +2 -3
- package/dist/query/start/relay.js +3 -7
- package/dist/query/start/relay.js.map +1 -1
- package/dist/query/start/update.d.ts +2 -3
- package/dist/query/start/update.js +18 -19
- package/dist/query/start/update.js.map +1 -1
- package/dist/query/subscribe.d.ts +3 -4
- package/dist/query/subscribe.js +13 -19
- package/dist/query/subscribe.js.map +1 -1
- package/dist/query/types.d.ts +1 -2
- package/dist/query/types.js +1 -2
- package/dist/query/unsub.d.ts +2 -3
- package/dist/query/unsub.js +7 -13
- package/dist/query/unsub.js.map +1 -1
- package/dist/security.d.ts +1 -2
- package/dist/security.js +8 -14
- package/dist/security.js.map +1 -1
- package/dist/sendError.d.ts +2 -3
- package/dist/sendError.js +21 -28
- package/dist/sendError.js.map +1 -1
- package/dist/sendHttpResponse.d.ts +1 -2
- package/dist/sendHttpResponse.js +11 -17
- package/dist/sendHttpResponse.js.map +1 -1
- package/dist/server.d.ts +8 -9
- package/dist/server.js +73 -64
- package/dist/server.js.map +1 -1
- package/dist/verifyRoute.d.ts +2 -3
- package/dist/verifyRoute.js +13 -17
- package/dist/verifyRoute.js.map +1 -1
- package/package.json +10 -14
- package/dist/auth/defaultConfig.d.ts.map +0 -1
- package/dist/auth/index.d.ts.map +0 -1
- package/dist/auth/parseAuthState.d.ts.map +0 -1
- package/dist/auth/parseJSONAuthState.d.ts.map +0 -1
- package/dist/authorize.d.ts.map +0 -1
- package/dist/channel/cleanup.d.ts.map +0 -1
- package/dist/channel/create.d.ts.map +0 -1
- package/dist/channel/destroy.d.ts.map +0 -1
- package/dist/channel/extend.d.ts.map +0 -1
- package/dist/channel/get.d.ts.map +0 -1
- package/dist/channel/index.d.ts.map +0 -1
- package/dist/channel/start.d.ts.map +0 -1
- package/dist/channel/subscribe.d.ts.map +0 -1
- package/dist/channel/types.d.ts.map +0 -1
- package/dist/channel/unsub.d.ts.map +0 -1
- package/dist/compress.d.ts.map +0 -1
- package/dist/createSimpleServer.d.ts +0 -34
- package/dist/createSimpleServer.js +0 -197
- package/dist/createSimpleServer.js.map +0 -1
- package/dist/error/errorTypeHandlers.d.ts.map +0 -1
- package/dist/error/index.d.ts.map +0 -1
- package/dist/error/types.d.ts.map +0 -1
- package/dist/functionApi/callFunction.d.ts.map +0 -1
- package/dist/functionApi/channelSubscribe.d.ts.map +0 -1
- package/dist/functionApi/client/channel.d.ts.map +0 -1
- package/dist/functionApi/client/index.d.ts.map +0 -1
- package/dist/functionApi/client/query.d.ts.map +0 -1
- package/dist/functionApi/get.d.ts.map +0 -1
- package/dist/functionApi/index.d.ts.map +0 -1
- package/dist/functionApi/observe.d.ts.map +0 -1
- package/dist/functionApi/publish.d.ts.map +0 -1
- package/dist/functionApi/stream.d.ts.map +0 -1
- package/dist/functions/genVersion.d.ts.map +0 -1
- package/dist/functions/index.d.ts.map +0 -1
- package/dist/functions/timeout.d.ts.map +0 -1
- package/dist/functions/types.d.ts.map +0 -1
- package/dist/incoming/http/function.d.ts.map +0 -1
- package/dist/incoming/http/index.d.ts.map +0 -1
- package/dist/incoming/http/parseQuery.d.ts.map +0 -1
- package/dist/incoming/http/publish.d.ts.map +0 -1
- package/dist/incoming/http/query.d.ts.map +0 -1
- package/dist/incoming/http/readBody.d.ts.map +0 -1
- package/dist/incoming/http/streamFunction/getExtension.d.ts.map +0 -1
- package/dist/incoming/http/streamFunction/index.d.ts.map +0 -1
- package/dist/incoming/http/streamFunction/multiPart/index.d.ts.map +0 -1
- package/dist/incoming/http/streamFunction/multiPart/readFormData.d.ts.map +0 -1
- package/dist/incoming/http/streamFunction/stream/createStream.d.ts.map +0 -1
- package/dist/incoming/http/streamFunction/stream/index.d.ts.map +0 -1
- package/dist/incoming/index.d.ts.map +0 -1
- package/dist/incoming/upgrade.d.ts.map +0 -1
- package/dist/incoming/ws/auth.d.ts.map +0 -1
- package/dist/incoming/ws/channelPublish.d.ts.map +0 -1
- package/dist/incoming/ws/channelSubscribe.d.ts.map +0 -1
- package/dist/incoming/ws/function.d.ts.map +0 -1
- package/dist/incoming/ws/get.d.ts.map +0 -1
- package/dist/incoming/ws/index.d.ts.map +0 -1
- package/dist/incoming/ws/observable.d.ts +0 -7
- package/dist/incoming/ws/observable.js +0 -91
- package/dist/incoming/ws/observable.js.map +0 -1
- package/dist/incoming/ws/query.d.ts.map +0 -1
- package/dist/incoming/ws/types.d.ts.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/installFn.d.ts.map +0 -1
- package/dist/ip.d.ts +0 -2
- package/dist/ip.js +0 -8
- package/dist/ip.js.map +0 -1
- package/dist/observable/cleanup.d.ts +0 -2
- package/dist/observable/cleanup.js +0 -66
- package/dist/observable/cleanup.js.map +0 -1
- package/dist/observable/create.d.ts +0 -3
- package/dist/observable/create.js +0 -35
- package/dist/observable/create.js.map +0 -1
- package/dist/observable/destroy.d.ts +0 -4
- package/dist/observable/destroy.js +0 -47
- package/dist/observable/destroy.js.map +0 -1
- package/dist/observable/extendCache.d.ts +0 -2
- package/dist/observable/extendCache.js +0 -10
- package/dist/observable/extendCache.js.map +0 -1
- package/dist/observable/genObservableId.d.ts +0 -1
- package/dist/observable/genObservableId.js +0 -12
- package/dist/observable/genObservableId.js.map +0 -1
- package/dist/observable/get.d.ts +0 -4
- package/dist/observable/get.js +0 -15
- package/dist/observable/get.js.map +0 -1
- package/dist/observable/index.d.ts +0 -10
- package/dist/observable/index.js +0 -27
- package/dist/observable/index.js.map +0 -1
- package/dist/observable/send.d.ts +0 -5
- package/dist/observable/send.js +0 -26
- package/dist/observable/send.js.map +0 -1
- package/dist/observable/start/error.d.ts +0 -3
- package/dist/observable/start/error.js +0 -43
- package/dist/observable/start/error.js.map +0 -1
- package/dist/observable/start/index.d.ts +0 -2
- package/dist/observable/start/index.js +0 -56
- package/dist/observable/start/index.js.map +0 -1
- package/dist/observable/start/update.d.ts +0 -3
- package/dist/observable/start/update.js +0 -116
- package/dist/observable/start/update.js.map +0 -1
- package/dist/observable/subscribe.d.ts +0 -7
- package/dist/observable/subscribe.js +0 -47
- package/dist/observable/subscribe.js.map +0 -1
- package/dist/observable/types.d.ts +0 -25
- package/dist/observable/types.js +0 -3
- package/dist/observable/types.js.map +0 -1
- package/dist/observable/unsub.d.ts +0 -6
- package/dist/observable/unsub.js +0 -46
- package/dist/observable/unsub.js.map +0 -1
- package/dist/protocol.d.ts.map +0 -1
- package/dist/query/cleanup.d.ts.map +0 -1
- package/dist/query/create.d.ts.map +0 -1
- package/dist/query/destroy.d.ts.map +0 -1
- package/dist/query/extendCache.d.ts.map +0 -1
- package/dist/query/genObservableId.d.ts.map +0 -1
- package/dist/query/get.d.ts.map +0 -1
- package/dist/query/index.d.ts.map +0 -1
- package/dist/query/send.d.ts.map +0 -1
- package/dist/query/start/error.d.ts.map +0 -1
- package/dist/query/start/index.d.ts.map +0 -1
- package/dist/query/start/relay.d.ts.map +0 -1
- package/dist/query/start/update.d.ts.map +0 -1
- package/dist/query/subscribe.d.ts.map +0 -1
- package/dist/query/types.d.ts.map +0 -1
- package/dist/query/unsub.d.ts.map +0 -1
- package/dist/security.d.ts.map +0 -1
- package/dist/sendError.d.ts.map +0 -1
- package/dist/sendHttpResponse.d.ts.map +0 -1
- package/dist/server.d.ts.map +0 -1
- package/dist/verifyRoute.d.ts.map +0 -1
|
@@ -1,32 +1,26 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
};
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
const
|
|
11
|
-
const sendHttpResponse_1 = require("../../../../sendHttpResponse");
|
|
12
|
-
const mime_types_1 = __importDefault(require("mime-types"));
|
|
13
|
-
const utils_1 = require("@saulx/utils");
|
|
14
|
-
const installFn_1 = require("../../../../installFn");
|
|
15
|
-
const authorize_1 = require("../../../../authorize");
|
|
16
|
-
const singleStream = (server, ctx, route, type, size) => {
|
|
1
|
+
import createDataStream from './createStream.js';
|
|
2
|
+
import { sendError } from '../../../../sendError.js';
|
|
3
|
+
import getExtension from '../getExtension.js';
|
|
4
|
+
import { BasedErrorCode } from '../../../../error/index.js';
|
|
5
|
+
import { sendHttpResponse } from '../../../../sendHttpResponse.js';
|
|
6
|
+
import mimeTypes from 'mime-types';
|
|
7
|
+
import { parseQuery } from '@saulx/utils';
|
|
8
|
+
import { installFn } from '../../../../installFn.js';
|
|
9
|
+
import { authorize } from '../../../../authorize.js';
|
|
10
|
+
export const singleStream = (server, ctx, route, type, size) => {
|
|
17
11
|
const extension = ctx.session.req.getHeader('content-extension');
|
|
18
12
|
const fileName = ctx.session.req.getHeader('content-name') || '';
|
|
19
13
|
if (extension) {
|
|
20
|
-
const mime =
|
|
14
|
+
const mime = mimeTypes.lookup(extension);
|
|
21
15
|
if (mime) {
|
|
22
16
|
type = ctx.session.headers['content-type'] = mime;
|
|
23
17
|
}
|
|
24
18
|
}
|
|
25
|
-
const stream = (
|
|
19
|
+
const stream = createDataStream(server, route, ctx, size);
|
|
26
20
|
let payload;
|
|
27
21
|
if ('query' in ctx.session) {
|
|
28
22
|
try {
|
|
29
|
-
payload =
|
|
23
|
+
payload = parseQuery(decodeURIComponent(ctx.session.query));
|
|
30
24
|
}
|
|
31
25
|
catch (err) { }
|
|
32
26
|
}
|
|
@@ -36,10 +30,10 @@ const singleStream = (server, ctx, route, type, size) => {
|
|
|
36
30
|
size,
|
|
37
31
|
mimeType: type,
|
|
38
32
|
fileName,
|
|
39
|
-
extension: (
|
|
33
|
+
extension: getExtension(type) || '',
|
|
40
34
|
};
|
|
41
|
-
|
|
42
|
-
|
|
35
|
+
authorize(route, server, ctx, streamPayload, () => {
|
|
36
|
+
installFn(server, ctx, route).then((spec) => {
|
|
43
37
|
if (spec === null) {
|
|
44
38
|
stream.destroy();
|
|
45
39
|
return;
|
|
@@ -47,18 +41,18 @@ const singleStream = (server, ctx, route, type, size) => {
|
|
|
47
41
|
const fn = spec.fn;
|
|
48
42
|
fn(server.client, streamPayload, ctx)
|
|
49
43
|
.catch((err) => {
|
|
50
|
-
|
|
44
|
+
sendError(server, ctx, BasedErrorCode.FunctionError, {
|
|
51
45
|
err,
|
|
52
46
|
route,
|
|
53
47
|
});
|
|
54
48
|
})
|
|
55
49
|
.then((r) => {
|
|
56
50
|
if (stream.readableEnded || stream.listenerCount('data') === 0) {
|
|
57
|
-
|
|
51
|
+
sendHttpResponse(ctx, r);
|
|
58
52
|
}
|
|
59
53
|
else {
|
|
60
54
|
stream.on('end', () => {
|
|
61
|
-
|
|
55
|
+
sendHttpResponse(ctx, r);
|
|
62
56
|
});
|
|
63
57
|
}
|
|
64
58
|
});
|
|
@@ -67,5 +61,4 @@ const singleStream = (server, ctx, route, type, size) => {
|
|
|
67
61
|
stream.destroy();
|
|
68
62
|
});
|
|
69
63
|
};
|
|
70
|
-
exports.singleStream = singleStream;
|
|
71
64
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/incoming/http/streamFunction/stream/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/incoming/http/streamFunction/stream/index.ts"],"names":[],"mappings":"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"}
|
package/dist/incoming/index.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { BasedServer, ServerOptions } from '../server';
|
|
1
|
+
import type { BasedServer, ServerOptions } from '../server.js';
|
|
2
2
|
declare const _default: (server: BasedServer, { key, cert, port, ws: wsOptions, disableRest, disableWs }: ServerOptions) => void;
|
|
3
3
|
export default _default;
|
|
4
|
-
//# sourceMappingURL=index.d.ts.map
|
package/dist/incoming/index.js
CHANGED
|
@@ -1,23 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
};
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
const query_1 = require("../query");
|
|
10
|
-
const channel_1 = require("../channel");
|
|
11
|
-
const http_1 = require("./http");
|
|
12
|
-
const auth_1 = require("./ws/auth");
|
|
13
|
-
exports.default = (server, { key, cert, port, ws: wsOptions = {}, disableRest, disableWs }) => {
|
|
1
|
+
import uws from '@based/uws';
|
|
2
|
+
import { upgradeAuthorize, upgrade } from './upgrade.js';
|
|
3
|
+
import { message } from './ws/index.js';
|
|
4
|
+
import { unsubscribeWsIgnoreClient } from '../query/index.js';
|
|
5
|
+
import { unsubscribeChannelIgnoreClient } from '../channel/index.js';
|
|
6
|
+
import { httpHandler } from './http/index.js';
|
|
7
|
+
import { sendAndVerifyAuthMessage } from './ws/auth.js';
|
|
8
|
+
export default (server, { key, cert, port, ws: wsOptions = {}, disableRest, disableWs }) => {
|
|
14
9
|
const app = key && cert
|
|
15
|
-
?
|
|
10
|
+
? uws.SSLApp({
|
|
16
11
|
key_file_name: key,
|
|
17
12
|
cert_file_name: cert,
|
|
18
13
|
ssl_prefer_low_memory_usage: true,
|
|
19
14
|
})
|
|
20
|
-
:
|
|
15
|
+
: uws.App();
|
|
21
16
|
if (port) {
|
|
22
17
|
server.port = port;
|
|
23
18
|
}
|
|
@@ -40,15 +35,15 @@ exports.default = (server, { key, cert, port, ws: wsOptions = {}, disableRest, d
|
|
|
40
35
|
// compression: uws.SHARED_COMPRESSOR,
|
|
41
36
|
upgrade: server.auth?.authorizeConnection
|
|
42
37
|
? (res, req, ctx) => {
|
|
43
|
-
|
|
38
|
+
upgradeAuthorize(server, res, req, ctx);
|
|
44
39
|
}
|
|
45
40
|
: (res, req, ctx) => {
|
|
46
|
-
|
|
41
|
+
upgrade(server, res, req, ctx);
|
|
47
42
|
},
|
|
48
43
|
message: (ws, data, isBinary) => {
|
|
49
44
|
const session = ws.getUserData();
|
|
50
45
|
// @ts-ignore
|
|
51
|
-
|
|
46
|
+
message(server, session.c, data, isBinary);
|
|
52
47
|
},
|
|
53
48
|
open: (ws) => {
|
|
54
49
|
if (ws) {
|
|
@@ -60,16 +55,16 @@ exports.default = (server, { key, cert, port, ws: wsOptions = {}, disableRest, d
|
|
|
60
55
|
session.c = ctx;
|
|
61
56
|
wsOptions.open(ctx);
|
|
62
57
|
if (session.authState.token || session.authState.refreshToken) {
|
|
63
|
-
|
|
58
|
+
sendAndVerifyAuthMessage(server, ctx);
|
|
64
59
|
}
|
|
65
60
|
}
|
|
66
61
|
},
|
|
67
62
|
close: (ws) => {
|
|
68
63
|
const session = ws.getUserData();
|
|
69
64
|
session.obs.forEach((id) => {
|
|
70
|
-
if (
|
|
65
|
+
if (unsubscribeWsIgnoreClient(server, id, session.c)) {
|
|
71
66
|
// This is here for channels so we do not need to keep a seperate obs set on clients
|
|
72
|
-
|
|
67
|
+
unsubscribeChannelIgnoreClient(server, id, session.c);
|
|
73
68
|
}
|
|
74
69
|
});
|
|
75
70
|
wsOptions.close(session.c);
|
|
@@ -89,9 +84,9 @@ exports.default = (server, { key, cert, port, ws: wsOptions = {}, disableRest, d
|
|
|
89
84
|
});
|
|
90
85
|
}
|
|
91
86
|
if (!disableRest) {
|
|
92
|
-
app.get('/*', (res, req) =>
|
|
93
|
-
app.post('/*', (res, req) =>
|
|
94
|
-
app.options('/*', (res, req) =>
|
|
87
|
+
app.get('/*', (res, req) => httpHandler(server, req, res));
|
|
88
|
+
app.post('/*', (res, req) => httpHandler(server, req, res));
|
|
89
|
+
app.options('/*', (res, req) => httpHandler(server, req, res));
|
|
95
90
|
}
|
|
96
91
|
server.uwsApp = app;
|
|
97
92
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/incoming/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/incoming/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import uws from '@based/uws';
|
|
2
|
-
import { BasedServer } from '../server';
|
|
2
|
+
import { BasedServer } from '../server.js';
|
|
3
3
|
export declare const upgrade: (server: BasedServer, res: uws.HttpResponse, req: uws.HttpRequest, ctx: uws.us_socket_context_t) => void;
|
|
4
4
|
export declare const upgradeAuthorize: (server: BasedServer, res: uws.HttpResponse, req: uws.HttpRequest, ctx: uws.us_socket_context_t) => void;
|
|
5
|
-
//# sourceMappingURL=upgrade.d.ts.map
|
package/dist/incoming/upgrade.js
CHANGED
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.upgradeAuthorize = exports.upgrade = void 0;
|
|
4
|
-
const auth_1 = require("../auth");
|
|
5
|
-
const security_1 = require("../security");
|
|
1
|
+
import { parseAuthState } from '../auth/index.js';
|
|
2
|
+
import { blockIncomingRequest } from '../security.js';
|
|
6
3
|
// import { BasedErrorCode } from '../error'
|
|
7
4
|
let clientId = 0;
|
|
8
|
-
const upgradeInternal = (
|
|
5
|
+
const upgradeInternal = (_server, res, req,
|
|
9
6
|
// eslint-disable-next-line
|
|
10
7
|
ctx, ip) => {
|
|
11
8
|
const secWebSocketProtocol = req.getHeader('sec-websocket-protocol');
|
|
@@ -37,23 +34,22 @@ ctx, ip) => {
|
|
|
37
34
|
ip,
|
|
38
35
|
id: ++clientId,
|
|
39
36
|
authState: secWebSocketProtocol
|
|
40
|
-
?
|
|
37
|
+
? parseAuthState(secWebSocketProtocol)
|
|
41
38
|
: {},
|
|
42
39
|
origin,
|
|
43
40
|
obs: new Set(),
|
|
44
41
|
}, secWebSocketKey, secWebSocketProtocol, secWebSocketExtensions, ctx);
|
|
45
42
|
};
|
|
46
|
-
const upgrade = (server, res, req,
|
|
43
|
+
export const upgrade = (server, res, req,
|
|
47
44
|
// eslint-disable-next-line
|
|
48
45
|
ctx) => {
|
|
49
46
|
const ip = server.getIp(res, req);
|
|
50
|
-
if (
|
|
47
|
+
if (blockIncomingRequest(server, ip, res, req, server.rateLimit.ws, 10)) {
|
|
51
48
|
return;
|
|
52
49
|
}
|
|
53
50
|
upgradeInternal(server, res, req, ctx, ip);
|
|
54
51
|
};
|
|
55
|
-
|
|
56
|
-
const upgradeAuthorize = (server, res, req,
|
|
52
|
+
export const upgradeAuthorize = (server, res, req,
|
|
57
53
|
// eslint-disable-next-line
|
|
58
54
|
ctx) => {
|
|
59
55
|
let aborted = false;
|
|
@@ -61,7 +57,7 @@ ctx) => {
|
|
|
61
57
|
aborted = true;
|
|
62
58
|
});
|
|
63
59
|
const ip = server.getIp(res, req);
|
|
64
|
-
if (
|
|
60
|
+
if (blockIncomingRequest(server, ip, res, req, server.rateLimit.ws, 10)) {
|
|
65
61
|
return;
|
|
66
62
|
}
|
|
67
63
|
server.auth.authorizeConnection(server.client, req, ip).then((authorized) => {
|
|
@@ -77,5 +73,4 @@ ctx) => {
|
|
|
77
73
|
}
|
|
78
74
|
});
|
|
79
75
|
};
|
|
80
|
-
exports.upgradeAuthorize = upgradeAuthorize;
|
|
81
76
|
//# sourceMappingURL=upgrade.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upgrade.js","sourceRoot":"","sources":["../../src/incoming/upgrade.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"upgrade.js","sourceRoot":"","sources":["../../src/incoming/upgrade.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import { BasedServer } from '../../server';
|
|
1
|
+
import { BasedServer } from '../../server.js';
|
|
2
2
|
import { WebSocketSession, Context } from '@based/functions';
|
|
3
|
-
import { BinaryMessageHandler } from './types';
|
|
3
|
+
import { BinaryMessageHandler } from './types.js';
|
|
4
4
|
export declare const reEvaulateUnauthorized: (server: BasedServer, ctx: Context<WebSocketSession>) => void;
|
|
5
5
|
export declare const authMessage: BinaryMessageHandler;
|
|
6
6
|
export declare const sendAndVerifyAuthMessage: (server: BasedServer, ctx: Context<WebSocketSession>) => Promise<void>;
|
|
7
|
-
//# sourceMappingURL=auth.d.ts.map
|
package/dist/incoming/ws/auth.js
CHANGED
|
@@ -1,13 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
const
|
|
8
|
-
const installFn_1 = require("../../installFn");
|
|
9
|
-
const authorize_1 = require("../../authorize");
|
|
10
|
-
const sendAuthMessage = (ctx, payload) => ctx.session?.ws.send((0, protocol_1.encodeAuthResponse)((0, protocol_1.valueToBuffer)(payload)), true, false);
|
|
1
|
+
import { valueToBuffer, decodePayload, encodeAuthResponse, } from '../../protocol.js';
|
|
2
|
+
import { enableSubscribe } from './query.js';
|
|
3
|
+
import { rateLimitRequest } from '../../security.js';
|
|
4
|
+
import { enableChannelSubscribe } from './channelSubscribe.js';
|
|
5
|
+
import { installFn } from '../../installFn.js';
|
|
6
|
+
import { authorize } from '../../authorize.js';
|
|
7
|
+
const sendAuthMessage = (ctx, payload) => ctx.session?.ws.send(encodeAuthResponse(valueToBuffer(payload)), true, false);
|
|
11
8
|
const parse = (payload) => {
|
|
12
9
|
try {
|
|
13
10
|
return JSON.parse(payload);
|
|
@@ -16,7 +13,7 @@ const parse = (payload) => {
|
|
|
16
13
|
return { error: 'invalid token' };
|
|
17
14
|
}
|
|
18
15
|
};
|
|
19
|
-
const reEvaulateUnauthorized = (server, ctx) => {
|
|
16
|
+
export const reEvaulateUnauthorized = (server, ctx) => {
|
|
20
17
|
const session = ctx.session;
|
|
21
18
|
if (!session) {
|
|
22
19
|
return;
|
|
@@ -28,11 +25,11 @@ const reEvaulateUnauthorized = (server, ctx) => {
|
|
|
28
25
|
name,
|
|
29
26
|
type: 'query',
|
|
30
27
|
};
|
|
31
|
-
|
|
32
|
-
|
|
28
|
+
installFn(server, ctx, route, id).then((spec) => {
|
|
29
|
+
authorize(route, server, ctx, payload, () => {
|
|
33
30
|
session.unauthorizedObs.delete(obs);
|
|
34
31
|
if (spec) {
|
|
35
|
-
|
|
32
|
+
enableSubscribe(route, spec, server, ctx, payload, id, checksum);
|
|
36
33
|
}
|
|
37
34
|
});
|
|
38
35
|
});
|
|
@@ -45,20 +42,19 @@ const reEvaulateUnauthorized = (server, ctx) => {
|
|
|
45
42
|
name,
|
|
46
43
|
type: 'channel',
|
|
47
44
|
};
|
|
48
|
-
|
|
49
|
-
|
|
45
|
+
installFn(server, ctx, route, id).then((spec) => {
|
|
46
|
+
authorize(route, server, ctx, payload, () => {
|
|
50
47
|
session.unauthorizedChannels.delete(channel);
|
|
51
48
|
if (spec) {
|
|
52
|
-
|
|
49
|
+
enableChannelSubscribe(route, spec, server, ctx, payload, id);
|
|
53
50
|
}
|
|
54
51
|
});
|
|
55
52
|
});
|
|
56
53
|
});
|
|
57
54
|
}
|
|
58
55
|
};
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
if ((0, security_1.rateLimitRequest)(server, ctx, 10, server.rateLimit.ws)) {
|
|
56
|
+
export const authMessage = (arr, start, len, isDeflate, ctx, server) => {
|
|
57
|
+
if (rateLimitRequest(server, ctx, 10, server.rateLimit.ws)) {
|
|
62
58
|
ctx.session.ws.close();
|
|
63
59
|
return false;
|
|
64
60
|
}
|
|
@@ -66,7 +62,7 @@ const authMessage = (arr, start, len, isDeflate, ctx, server) => {
|
|
|
66
62
|
return;
|
|
67
63
|
}
|
|
68
64
|
// | 4 header | * payload |
|
|
69
|
-
const payload =
|
|
65
|
+
const payload = decodePayload(new Uint8Array(arr.slice(start + 4, start + len)), isDeflate);
|
|
70
66
|
const authState = parse(payload);
|
|
71
67
|
server.auth
|
|
72
68
|
.verifyAuthState(server.client, ctx, authState)
|
|
@@ -80,7 +76,7 @@ const authMessage = (arr, start, len, isDeflate, ctx, server) => {
|
|
|
80
76
|
sendAuthMessage(ctx, verified);
|
|
81
77
|
return true;
|
|
82
78
|
}
|
|
83
|
-
|
|
79
|
+
reEvaulateUnauthorized(server, ctx);
|
|
84
80
|
sendAuthMessage(ctx, verified);
|
|
85
81
|
})
|
|
86
82
|
.catch((err) => {
|
|
@@ -96,9 +92,8 @@ const authMessage = (arr, start, len, isDeflate, ctx, server) => {
|
|
|
96
92
|
});
|
|
97
93
|
return true;
|
|
98
94
|
};
|
|
99
|
-
exports.authMessage = authMessage;
|
|
100
95
|
// send and verify
|
|
101
|
-
const sendAndVerifyAuthMessage = async (server, ctx) => {
|
|
96
|
+
export const sendAndVerifyAuthMessage = async (server, ctx) => {
|
|
102
97
|
const session = ctx.session;
|
|
103
98
|
if (!session) {
|
|
104
99
|
return;
|
|
@@ -115,5 +110,4 @@ const sendAndVerifyAuthMessage = async (server, ctx) => {
|
|
|
115
110
|
session.authState = verified;
|
|
116
111
|
sendAuthMessage(ctx, verified);
|
|
117
112
|
};
|
|
118
|
-
exports.sendAndVerifyAuthMessage = sendAndVerifyAuthMessage;
|
|
119
113
|
//# sourceMappingURL=auth.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/incoming/ws/auth.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/incoming/ws/auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
const authorize_1 = require("../../authorize");
|
|
9
|
-
const sendError_1 = require("../../sendError");
|
|
10
|
-
const error_1 = require("../../error");
|
|
1
|
+
import { readUint8, decodePayload, parsePayload } from '../../protocol.js';
|
|
2
|
+
import { rateLimitRequest } from '../../security.js';
|
|
3
|
+
import { verifyRoute } from '../../verifyRoute.js';
|
|
4
|
+
import { extendChannel, hasChannel } from '../../channel/index.js';
|
|
5
|
+
import { authorize } from '../../authorize.js';
|
|
6
|
+
import { sendError } from '../../sendError.js';
|
|
7
|
+
import { BasedErrorCode } from '../../error/index.js';
|
|
11
8
|
const publish = (route, spec, server, ctx, payload, id) => {
|
|
12
9
|
const channel = server.activeChannelsById.get(id);
|
|
13
10
|
if (!channel) {
|
|
@@ -23,19 +20,19 @@ const publish = (route, spec, server, ctx, payload, id) => {
|
|
|
23
20
|
}
|
|
24
21
|
}
|
|
25
22
|
catch (err) {
|
|
26
|
-
|
|
23
|
+
sendError(server, ctx, BasedErrorCode.FunctionError, {
|
|
27
24
|
channelId: id,
|
|
28
25
|
err,
|
|
29
26
|
route,
|
|
30
27
|
});
|
|
31
28
|
}
|
|
32
29
|
};
|
|
33
|
-
const channelPublishMessage = (arr, start, len, isDeflate, ctx, server) => {
|
|
30
|
+
export const channelPublishMessage = (arr, start, len, isDeflate, ctx, server) => {
|
|
34
31
|
// | 4 header | 8 id | * payload |
|
|
35
|
-
const id =
|
|
32
|
+
const id = readUint8(arr, start + 4, 8);
|
|
36
33
|
// how to determine it does not exist?
|
|
37
|
-
if (!
|
|
38
|
-
if (
|
|
34
|
+
if (!hasChannel(server, id)) {
|
|
35
|
+
if (rateLimitRequest(server, ctx, 1, server.rateLimit.ws)) {
|
|
39
36
|
ctx.session.ws.close();
|
|
40
37
|
return false;
|
|
41
38
|
}
|
|
@@ -43,13 +40,13 @@ const channelPublishMessage = (arr, start, len, isDeflate, ctx, server) => {
|
|
|
43
40
|
return true;
|
|
44
41
|
}
|
|
45
42
|
const channel = server.activeChannelsById.get(id);
|
|
46
|
-
|
|
43
|
+
extendChannel(server, channel);
|
|
47
44
|
const name = channel.name;
|
|
48
|
-
const route =
|
|
45
|
+
const route = verifyRoute(server, ctx, 'channel', server.functions.route(name), name, id);
|
|
49
46
|
if (route === null) {
|
|
50
47
|
return true;
|
|
51
48
|
}
|
|
52
|
-
if (
|
|
49
|
+
if (rateLimitRequest(server, ctx, route.rateLimitTokens, server.rateLimit.ws)) {
|
|
53
50
|
ctx.session.ws.close();
|
|
54
51
|
return false;
|
|
55
52
|
}
|
|
@@ -58,9 +55,8 @@ const channelPublishMessage = (arr, start, len, isDeflate, ctx, server) => {
|
|
|
58
55
|
}
|
|
59
56
|
const payload = len === 12
|
|
60
57
|
? undefined
|
|
61
|
-
:
|
|
62
|
-
|
|
58
|
+
: parsePayload(decodePayload(new Uint8Array(arr.slice(start + 12, start + len)), isDeflate));
|
|
59
|
+
authorize(route, server, ctx, payload, publish, id, undefined, route.publicPublisher);
|
|
63
60
|
return true;
|
|
64
61
|
};
|
|
65
|
-
exports.channelPublishMessage = channelPublishMessage;
|
|
66
62
|
//# sourceMappingURL=channelPublish.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channelPublish.js","sourceRoot":"","sources":["../../../src/incoming/ws/channelPublish.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"channelPublish.js","sourceRoot":"","sources":["../../../src/incoming/ws/channelPublish.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { WebSocketSession, BasedRoute } from '@based/functions';
|
|
2
|
-
import { IsAuthorizedHandler } from '../../authorize';
|
|
3
|
-
import { BinaryMessageHandler } from './types';
|
|
2
|
+
import { IsAuthorizedHandler } from '../../authorize.js';
|
|
3
|
+
import { BinaryMessageHandler } from './types.js';
|
|
4
4
|
export declare const enableChannelSubscribe: IsAuthorizedHandler<WebSocketSession, BasedRoute<'channel'>>;
|
|
5
5
|
export declare const channelSubscribeMessage: BinaryMessageHandler;
|
|
6
6
|
export declare const unsubscribeChannelMessage: BinaryMessageHandler;
|
|
7
|
-
//# sourceMappingURL=channelSubscribe.d.ts.map
|