@based/server 8.0.0 → 8.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,2 @@
1
+ import { FakeBinaryMessageHandler } from './types.js';
2
+ export declare const handleFunction: FakeBinaryMessageHandler;
@@ -0,0 +1,48 @@
1
+ import { readUint8, decodeName, decodePayload, encodeFunctionResponse, valueToBuffer, parsePayload, encodeErrorResponse, } from '../../../protocol.js';
2
+ import { verifyRoute } from '../../../verifyRoute.js';
3
+ import { installFn } from '../../../installFn.js';
4
+ import { createError } from '../../../error/index.js';
5
+ import { BasedErrorCode } from '@based/errors';
6
+ export const handleFunction = (arr, startByte, len, isDeflate, ctx, server) => {
7
+ // | 4 header | 3 id | 1 name length | * name | * payload |
8
+ const requestId = readUint8(arr, startByte + 4, 3);
9
+ const nameLen = arr[startByte + 7];
10
+ const name = decodeName(arr, startByte + 8, startByte + 8 + nameLen);
11
+ if (!name || !requestId) {
12
+ return;
13
+ }
14
+ const route = verifyRoute(server, ctx, 'function', server.functions.route(name), name, requestId);
15
+ if (route === null) {
16
+ return;
17
+ }
18
+ const payload = len === nameLen + 8
19
+ ? undefined
20
+ : parsePayload(decodePayload(new Uint8Array(arr.slice(startByte + 8 + nameLen, startByte + len)), isDeflate));
21
+ return installFn(server, ctx, route).then(async (spec) => {
22
+ const isAuth = route.public ||
23
+ (await server.auth
24
+ .authorize(server.client, ctx, route.name, payload)
25
+ .catch(() => false));
26
+ if (!isAuth) {
27
+ const errorData = createError(server, ctx, BasedErrorCode.AuthorizeRejectedError, {
28
+ route,
29
+ requestId,
30
+ });
31
+ return encodeErrorResponse(valueToBuffer(errorData));
32
+ }
33
+ return spec
34
+ .fn(server.client, payload, ctx)
35
+ .then((v) => {
36
+ return encodeFunctionResponse(requestId, valueToBuffer(v));
37
+ })
38
+ .catch((err) => {
39
+ const errorData = createError(server, ctx, BasedErrorCode.FunctionError, {
40
+ route,
41
+ requestId,
42
+ err,
43
+ });
44
+ return encodeErrorResponse(valueToBuffer(errorData));
45
+ });
46
+ });
47
+ };
48
+ //# sourceMappingURL=function.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"function.js","sourceRoot":"","sources":["../../../../src/incoming/http/fakeWs/function.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ /// <reference types="node" resolution-mode="require"/>
2
+ import { HttpSession, Context } from '@based/functions';
3
+ import { BasedServer } from '../../../server.js';
4
+ export declare const handleBinary: (server: BasedServer, ctx: Context<HttpSession>, data: Buffer) => Promise<void>;
@@ -0,0 +1,134 @@
1
+ import { end } from '../../../sendHttpResponse.js';
2
+ import { decodeHeader, readUint8, encodeAuthResponse, valueToBuffer, } from '../../../protocol.js';
3
+ import { handleQuery } from './query.js';
4
+ import { handleFunction } from './function.js';
5
+ const reader = (server, ctx, arr, start) => {
6
+ const { len, isDeflate, type } = decodeHeader(readUint8(arr, start, 4));
7
+ const next = len + start;
8
+ // type 0 = function
9
+ if (type === 0) {
10
+ const p = handleFunction(arr, start, len, isDeflate, ctx, server);
11
+ if (p) {
12
+ return [next, p];
13
+ }
14
+ else {
15
+ return [undefined];
16
+ }
17
+ }
18
+ // type 1 = subscribe , type 2 === get
19
+ if (type === 1 || type === 3) {
20
+ const p = handleQuery(arr, start, len, isDeflate, ctx, server);
21
+ if (p) {
22
+ return [next, p];
23
+ }
24
+ else {
25
+ return [undefined];
26
+ }
27
+ }
28
+ // type 2 unsubscribe
29
+ if (type === 2) {
30
+ return [next];
31
+ }
32
+ // // type 4 = auth
33
+ if (type === 4) {
34
+ return [next];
35
+ }
36
+ // fix these 2!
37
+ // type 5 = channel sub
38
+ if (type === 5) {
39
+ return [next];
40
+ }
41
+ // type 6 = channelPublish
42
+ if (type === 6) {
43
+ return [next];
44
+ }
45
+ // // type 5 = channelSubscribe
46
+ // if (
47
+ // type === 5 &&
48
+ // channelSubscribeMessage(arr, start, len, isDeflate, ctx, server)
49
+ // ) {
50
+ // return next;
51
+ // }
52
+ // // type 6 = channelPublish
53
+ // if (
54
+ // type === 6 &&
55
+ // channelPublishMessage(arr, start, len, isDeflate, ctx, server)
56
+ // ) {
57
+ // return next;
58
+ // }
59
+ // // type 7.x = subType
60
+ // if (type === 7) {
61
+ // const subType = readUint8(arr, start + 4, 1);
62
+ // // type 7.0 = channelUnsubscribe
63
+ // if (subType === 0) {
64
+ // if (unsubscribeChannelMessage(arr, start, len, isDeflate, ctx, server)) {
65
+ // return next;
66
+ // }
67
+ // }
68
+ // // type 7.1 = register stream
69
+ // if (subType === 1) {
70
+ // if (registerStream(arr, start, len, isDeflate, ctx, server)) {
71
+ // return next;
72
+ // }
73
+ // }
74
+ // // type 7.2 = chunk
75
+ // if (subType === 2) {
76
+ // if (receiveChunkStream(arr, start, len, isDeflate, ctx, server)) {
77
+ // return next;
78
+ // }
79
+ // }
80
+ // }
81
+ // return false...
82
+ return [next];
83
+ };
84
+ export const handleBinary = async (server, ctx, data) => {
85
+ if (!ctx.session) {
86
+ return;
87
+ }
88
+ const uint8View = data;
89
+ const len = uint8View.byteLength;
90
+ let next = 0;
91
+ const q = [];
92
+ while (next < len) {
93
+ if (!ctx.session) {
94
+ return;
95
+ }
96
+ const [n, p] = reader(server, ctx, uint8View, next);
97
+ if (n === undefined) {
98
+ ctx.session.res.end();
99
+ return;
100
+ }
101
+ if (p) {
102
+ q.push(p);
103
+ }
104
+ next = n;
105
+ }
106
+ const prevToken = ctx.session.authState.token;
107
+ // TRY CATCH...
108
+ const r = await Promise.all(q);
109
+ if (!ctx.session) {
110
+ return;
111
+ }
112
+ if (ctx.session.authState.token || prevToken) {
113
+ const b = encodeAuthResponse(valueToBuffer(ctx.session.authState));
114
+ r.push(b);
115
+ }
116
+ const buf = Buffer.allocUnsafe(r.reduce((acc, i) => {
117
+ if (!i.byteLength) {
118
+ return acc;
119
+ }
120
+ return acc + i.byteLength + 4;
121
+ }, 0));
122
+ let i = 0;
123
+ for (const x of r) {
124
+ if (!x.byteLength) {
125
+ continue;
126
+ }
127
+ buf.writeUint32LE(x.byteLength, i);
128
+ i += 4;
129
+ buf.set(x, i);
130
+ i += x.byteLength;
131
+ }
132
+ end(ctx, buf);
133
+ };
134
+ //# sourceMappingURL=handleBinary.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handleBinary.js","sourceRoot":"","sources":["../../../../src/incoming/http/fakeWs/handleBinary.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { HttpSession, Context } from '@based/functions';
2
+ import { BasedServer } from '../../../server.js';
3
+ export declare const handleFakeWs: (server: BasedServer, ctx: Context<HttpSession>) => any;
@@ -0,0 +1,33 @@
1
+ import { handleBinary } from './handleBinary.js';
2
+ const MAX_CHUNK_SIZE = 1024 * 1024;
3
+ export const handleFakeWs = (server, ctx) => {
4
+ const len = ctx.session.headers['content-length'];
5
+ if (len > MAX_CHUNK_SIZE * 100 || !len || typeof len !== 'number') {
6
+ ctx.session.res.end();
7
+ return;
8
+ }
9
+ let total;
10
+ let lastWritten = 0;
11
+ // buffer
12
+ // add length as a header
13
+ ctx.session.res.onData((c, isLast) => {
14
+ if (!total) {
15
+ if (!isLast) {
16
+ total = Buffer.allocUnsafe(len);
17
+ }
18
+ else {
19
+ total = Buffer.from(c);
20
+ handleBinary(server, ctx, total);
21
+ return;
22
+ }
23
+ }
24
+ // @ts-ignore
25
+ total.set(c, lastWritten);
26
+ lastWritten += c.byteLength;
27
+ if (isLast) {
28
+ handleBinary(server, ctx, total);
29
+ }
30
+ });
31
+ // ctx.session.res.end('blap')
32
+ };
33
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/incoming/http/fakeWs/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAEhD,MAAM,cAAc,GAAG,IAAI,GAAG,IAAI,CAAA;AAElC,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,MAAmB,EACnB,GAAyB,EACpB,EAAE;IACP,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAA;IAEjD,IAAI,GAAG,GAAG,cAAc,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAClE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,CAAA;QACrB,OAAM;IACR,CAAC;IAED,IAAI,KAAa,CAAA;IACjB,IAAI,WAAW,GAAG,CAAC,CAAA;IAEnB,SAAS;IACT,yBAAyB;IACzB,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE;QACnC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;YACjC,CAAC;iBAAM,CAAC;gBACN,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;gBACtB,YAAY,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,CAAA;gBAChC,OAAM;YACR,CAAC;QACH,CAAC;QACD,aAAa;QACb,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,CAAC,CAAA;QACzB,WAAW,IAAI,CAAC,CAAC,UAAU,CAAA;QAC3B,IAAI,MAAM,EAAE,CAAC;YACX,YAAY,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,CAAA;QAClC,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,8BAA8B;AAChC,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ import { FakeBinaryMessageHandler } from './types.js';
2
+ export declare const handleQuery: FakeBinaryMessageHandler;
@@ -0,0 +1,77 @@
1
+ import { createObs, getObsAndStopRemove, hasObs, subscribeNext, start, } from '../../../query/index.js';
2
+ import { readUint8, decodeName, parsePayload, decodePayload, valueToBuffer, updateId, encodeErrorResponse, } from '../../../protocol.js';
3
+ import { verifyRoute } from '../../../verifyRoute.js';
4
+ import { createError } from '../../../error/index.js';
5
+ import { BasedErrorCode } from '@based/errors';
6
+ const EMPTY = Buffer.allocUnsafe(0);
7
+ export const handleQuery = (arr, startByte, len, isDeflate, ctx, server) => {
8
+ // | 4 header | 8 id | 8 checksum | 1 name length | * name | * payload |
9
+ const nameLen = arr[startByte + 20];
10
+ const id = readUint8(arr, startByte + 4, 8);
11
+ const checksum = readUint8(arr, startByte + 12, 8);
12
+ const name = decodeName(arr, startByte + 21, startByte + 21 + nameLen);
13
+ if (!name || !id) {
14
+ return;
15
+ }
16
+ const route = verifyRoute(server, ctx, 'query', server.functions.route(name), name, id);
17
+ const payload = len === nameLen + 21
18
+ ? undefined
19
+ : parsePayload(decodePayload(new Uint8Array(arr.slice(startByte + 21 + nameLen, startByte + len)), isDeflate));
20
+ if (route === null) {
21
+ return;
22
+ }
23
+ // COMPARE CHECKSUMS
24
+ return new Promise(async (resolve, reject) => {
25
+ const isAuth = route.public ||
26
+ (await server.auth
27
+ .authorize(server.client, ctx, route.name, payload)
28
+ .catch(() => false));
29
+ if (!isAuth) {
30
+ const errorData = createError(server, ctx, BasedErrorCode.AuthorizeRejectedError, {
31
+ route,
32
+ observableId: id,
33
+ });
34
+ resolve(encodeErrorResponse(valueToBuffer(errorData)));
35
+ return;
36
+ }
37
+ if (hasObs(server, id)) {
38
+ const obs = getObsAndStopRemove(server, id);
39
+ if (obs.cache) {
40
+ if (obs.checksum === checksum) {
41
+ resolve(EMPTY);
42
+ return;
43
+ }
44
+ const buffer = obs.cache;
45
+ if (obs.reusedCache) {
46
+ const prevId = updateId(buffer, obs.id);
47
+ buffer.set(prevId, 4);
48
+ }
49
+ resolve(buffer);
50
+ }
51
+ else {
52
+ resolve(EMPTY);
53
+ }
54
+ return;
55
+ }
56
+ const obs = createObs(server, name, id, payload, true);
57
+ if (server.queryEvents) {
58
+ server.queryEvents.get(obs, ctx);
59
+ }
60
+ subscribeNext(obs, (err) => {
61
+ if (err) {
62
+ resolve(EMPTY);
63
+ // console.error('NOT HANDLED')
64
+ }
65
+ else {
66
+ const buffer = obs.cache;
67
+ if (obs.reusedCache) {
68
+ const prevId = updateId(buffer, obs.id);
69
+ buffer.set(prevId, 4);
70
+ }
71
+ resolve(buffer);
72
+ }
73
+ });
74
+ start(server, id);
75
+ });
76
+ };
77
+ //# sourceMappingURL=query.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query.js","sourceRoot":"","sources":["../../../../src/incoming/http/fakeWs/query.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { BasedServer } from '../../../server.js';
2
+ import { HttpSession, Context } from '@based/functions';
3
+ export type FakeBinaryMessageHandler = (arr: Uint8Array, start: number, len: number, isDeflate: boolean, ctx: Context<HttpSession>, server: BasedServer) => Promise<Uint8Array> | void;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/incoming/http/fakeWs/types.ts"],"names":[],"mappings":""}
@@ -10,12 +10,16 @@ import { authorize } from '../../authorize.js';
10
10
  import { end } from '../../sendHttpResponse.js';
11
11
  import { httpPublish } from './publish.js';
12
12
  import { handleRequest } from './handleRequest.js';
13
+ import { handleFakeWs } from './fakeWs/index.js';
13
14
  let clientId = 0;
14
15
  export const httpHandler = (server, req, res) => {
16
+ let ctx;
15
17
  res.onAborted(() => {
16
- ctx.session.res = null;
17
- ctx.session.req = null;
18
- ctx.session = null;
18
+ if (ctx) {
19
+ ctx.session.res = null;
20
+ ctx.session.req = null;
21
+ ctx.session = null;
22
+ }
19
23
  });
20
24
  const ip = server.getIp(res, req);
21
25
  if (blockIncomingRequest(server, ip, res, req, server.rateLimit.http, 1)) {
@@ -24,6 +28,36 @@ export const httpHandler = (server, req, res) => {
24
28
  const method = req.getMethod();
25
29
  const url = req.getUrl();
26
30
  const path = url.split('/');
31
+ if (server.restFallbackPath && path[1] === server.restFallbackPath) {
32
+ if (method !== 'post') {
33
+ res.end();
34
+ return;
35
+ }
36
+ let authorization = path[2];
37
+ if (!authorization || authorization.length > 5e3) {
38
+ res.end();
39
+ return;
40
+ }
41
+ ctx = {
42
+ session: {
43
+ url,
44
+ res,
45
+ req,
46
+ method,
47
+ origin: req.getHeader('origin'),
48
+ ua: req.getHeader('user-agent'),
49
+ ip,
50
+ id: ++clientId,
51
+ authState: parseAuthState(authorization),
52
+ // @ts-ignore
53
+ headers: {
54
+ 'content-length': Number(req.getHeader('content-length')),
55
+ },
56
+ },
57
+ };
58
+ handleFakeWs(server, ctx);
59
+ return;
60
+ }
27
61
  const route = server.functions.route(path[1], url);
28
62
  if (route === null || route.internalOnly === true) {
29
63
  sendError(server, {
@@ -75,7 +109,7 @@ export const httpHandler = (server, req, res) => {
75
109
  }
76
110
  }
77
111
  }
78
- const ctx = {
112
+ ctx = {
79
113
  session: {
80
114
  url,
81
115
  res,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/incoming/http/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/incoming/http/index.ts"],"names":[],"mappings":"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"}
@@ -92,6 +92,7 @@ export const message = (server, ctx, msg, isBinary) => {
92
92
  return;
93
93
  }
94
94
  next = n;
95
+ // TODO if next > len illegal request abort & block
95
96
  }
96
97
  };
97
98
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/incoming/ws/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EACL,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE/C,MAAM,MAAM,GAAG,CACb,MAAmB,EACnB,GAA8B,EAC9B,GAAe,EACf,KAAa,EACL,EAAE;IACV,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,YAAY,CAAC,SAAS,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;IACxE,MAAM,IAAI,GAAG,GAAG,GAAG,KAAK,CAAC;IAEzB,oBAAoB;IACpB,IAAI,IAAI,KAAK,CAAC,IAAI,eAAe,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC;QAC3E,OAAO,IAAI,CAAC;IACd,CAAC;IAED,qBAAqB;IACrB,IAAI,IAAI,KAAK,CAAC,IAAI,gBAAgB,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC;QAC5E,OAAO,IAAI,CAAC;IACd,CAAC;IAED,uBAAuB;IACvB,IACE,IAAI,KAAK,CAAC;QACV,kBAAkB,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,CAAC,EAC3D,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,eAAe;IACf,IAAI,IAAI,KAAK,CAAC,IAAI,UAAU,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC;QACtE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,gBAAgB;IAChB,IAAI,IAAI,KAAK,CAAC,IAAI,WAAW,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC;QACvE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,4BAA4B;IAC5B,IACE,IAAI,KAAK,CAAC;QACV,uBAAuB,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,CAAC,EAChE,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,0BAA0B;IAC1B,IACE,IAAI,KAAK,CAAC;QACV,qBAAqB,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,CAAC,EAC9D,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,qBAAqB;IACrB,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QAE7C,gCAAgC;QAChC,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;YAClB,IAAI,yBAAyB,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC;gBACvE,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAED,6BAA6B;QAC7B,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;YAClB,IAAI,cAAc,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC;gBAC5D,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAED,mBAAmB;QACnB,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;YAClB,IAAI,kBAAkB,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC;gBAChE,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,CACrB,MAAmB,EACnB,GAA8B,EAC9B,GAAgB,EAChB,QAAiB,EACjB,EAAE;IACF,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QACjB,OAAO;IACT,CAAC;IACD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE,cAAc,CAAC,gBAAgB,EAAE;YACxD,MAAM,EAAE,GAAG;SACZ,CAAC,CAAC;QACH,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;QACvB,OAAO;IACT,CAAC;IAED,iDAAiD;IACjD,MAAM,SAAS,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC;IACtC,MAAM,GAAG,GAAG,SAAS,CAAC,MAAM,CAAC;IAC7B,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,OAAO,IAAI,GAAG,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;YACjB,OAAO;QACT,CAAC;QACD,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;YACpB,8DAA8D;YAC9D,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;YACvB,OAAO;QACT,CAAC;QACD,IAAI,GAAG,CAAC,CAAC;IACX,CAAC;AACH,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/incoming/ws/index.ts"],"names":[],"mappings":"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"}
package/dist/server.d.ts CHANGED
@@ -122,6 +122,7 @@ export declare class BasedServer {
122
122
  activeObservablesById: Map<number, ActiveObservable>;
123
123
  channelCleanTimeout: NodeJS.Timeout;
124
124
  channelCleanupCycle: number;
125
+ restFallbackPath: string;
125
126
  activeChannels: {
126
127
  [name: string]: Map<number, ActiveChannel>;
127
128
  };
package/dist/server.js CHANGED
@@ -89,6 +89,7 @@ export class BasedServer {
89
89
  activeObservablesById = new Map();
90
90
  channelCleanTimeout;
91
91
  channelCleanupCycle = 30e3;
92
+ restFallbackPath;
92
93
  activeChannels = {};
93
94
  activeChannelsById = new Map();
94
95
  listeners = {};
@@ -107,6 +108,23 @@ export class BasedServer {
107
108
  this.silent = opts.silent;
108
109
  }
109
110
  this.clients = opts.clients ?? {};
111
+ if (!opts.functions) {
112
+ opts.functions = {};
113
+ }
114
+ if (!opts.functions.configs) {
115
+ opts.functions.configs = {};
116
+ }
117
+ let restPath = '1' +
118
+ (~~(Math.random() * 99999999)).toString(16) +
119
+ (~~(Math.random() * 99999999)).toString(16);
120
+ this.restFallbackPath = restPath;
121
+ opts.functions.configs['based:rpstatus'] = {
122
+ type: 'function',
123
+ public: true,
124
+ fn: async () => {
125
+ return restPath;
126
+ },
127
+ };
110
128
  this.functions = new BasedFunctions(this, opts.functions);
111
129
  this.auth = new BasedAuth(this, opts.auth);
112
130
  if (opts.client) {
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@based/server",
3
- "version": "8.0.0",
3
+ "version": "8.1.0",
4
4
  "license": "MIT",
5
5
  "main": "./dist/index.js",
6
6
  "type": "module",
@@ -17,15 +17,15 @@
17
17
  "dependencies": {
18
18
  "utility-types": "^3.10.0",
19
19
  "@based/uws": "^4.1.0",
20
- "@saulx/diff": "^2.0.1",
20
+ "@saulx/diff": "^2.0.2",
21
21
  "@saulx/hash": "^3.0.0",
22
- "@saulx/utils": "^4.3.1",
22
+ "@saulx/utils": "^5.0.0",
23
23
  "picocolors": "^1.0.0",
24
24
  "jsonexport": "^3.2.0",
25
25
  "jsonwebtoken": "^8.5.1",
26
26
  "mime-types": "^2.1.31",
27
- "@based/functions": "^3.0.1",
28
- "@based/errors": "^1.2.0"
27
+ "@based/functions": "^3.0.2",
28
+ "@based/errors": "^1.3.0"
29
29
  },
30
30
  "devDependencies": {
31
31
  "@types/mime-types": "2.1.1",
@@ -1,6 +0,0 @@
1
- import { BasedErrorCode, ErrorHandler } from './types.js';
2
- type ErrorType = {
3
- [K in BasedErrorCode]: ErrorHandler<K>;
4
- };
5
- export declare const errorTypeHandlers: ErrorType;
6
- export {};
@@ -1,121 +0,0 @@
1
- import { BasedErrorCode } from './types.js';
2
- const addName = (payload) => {
3
- return payload.name ? `[${payload.name}] ` : '';
4
- };
5
- export const errorTypeHandlers = {
6
- [BasedErrorCode.MissingAuthStateProtocolHeader]: {
7
- statusCode: 500,
8
- statusMessage: 'Internal Server Error',
9
- message: () => '',
10
- },
11
- [BasedErrorCode.RateLimit]: {
12
- statusCode: 429,
13
- statusMessage: 'Rate limit',
14
- message: () => 'rate limt',
15
- },
16
- [BasedErrorCode.Block]: {
17
- statusCode: 429,
18
- statusMessage: 'Blocked ip',
19
- message: () => 'Blocked ip',
20
- },
21
- [BasedErrorCode.IncorrectAccessKey]: {
22
- statusCode: 429,
23
- statusMessage: 'Rate limit',
24
- message: () => 'rate limt',
25
- },
26
- [BasedErrorCode.FunctionError]: {
27
- statusCode: 500,
28
- statusMessage: 'Internal Server Error',
29
- message: (payload) => {
30
- if (typeof payload.err === 'string' || !payload.err.message) {
31
- return `[${payload.route.name}] ${JSON.stringify(payload.err)}`;
32
- }
33
- return (addName(payload.route) +
34
- `${payload.err.name && payload.err.name !== 'Error'
35
- ? `[${payload.err.name}] `
36
- : ''}${payload.err.message || ''}`);
37
- },
38
- },
39
- [BasedErrorCode.ObserveCallbackError]: {
40
- statusCode: 500,
41
- statusMessage: 'Internal Server Error',
42
- message: () => {
43
- return 'Error in server side observer';
44
- },
45
- },
46
- [BasedErrorCode.FunctionNotFound]: {
47
- statusCode: 404,
48
- statusMessage: 'Not Found',
49
- message: (payload) => {
50
- return (addName(payload.route) +
51
- `Function not found${payload.route.path ? ` path '${payload.route.path}'` : ''}`);
52
- },
53
- },
54
- [BasedErrorCode.FunctionIsWrongType]: {
55
- statusCode: 400,
56
- statusMessage: 'Incorrect Protocol',
57
- message: (payload) => {
58
- return addName(payload.route) + 'Target function is of wrong type';
59
- },
60
- },
61
- [BasedErrorCode.AuthorizeFunctionError]: {
62
- statusCode: 403,
63
- statusMessage: 'Forbidden',
64
- message: (payload) => {
65
- if (typeof payload.err === 'string' || !payload.err.message) {
66
- return `[${payload.route.name}] ${JSON.stringify(payload.err)}`;
67
- }
68
- return (addName(payload.route) +
69
- `${payload.err.name && payload.err.name !== 'Error'
70
- ? `[${payload.err.name}] `
71
- : ''}${payload.err.message || ''}`);
72
- },
73
- },
74
- [BasedErrorCode.AuthorizeRejectedError]: {
75
- statusCode: 403,
76
- statusMessage: 'Forbidden',
77
- message: (payload) => addName(payload.route) + `Authorize rejected access`,
78
- },
79
- [BasedErrorCode.InvalidPayload]: {
80
- statusCode: 400,
81
- statusMessage: 'Bad Request',
82
- message: (payload) => addName(payload.route) + 'Invalid payload',
83
- },
84
- [BasedErrorCode.NoBinaryProtocol]: {
85
- statusCode: 400,
86
- statusMessage: 'Protocol mismatch',
87
- message: () => 'Please upgrade to the latest based client',
88
- },
89
- [BasedErrorCode.PayloadTooLarge]: {
90
- statusCode: 413,
91
- statusMessage: 'Payload Too Large',
92
- message: (payload) => addName(payload.route) + ' PayloadTooLarge',
93
- },
94
- [BasedErrorCode.ChunkTooLarge]: {
95
- statusCode: 413,
96
- statusMessage: 'Payload Too Large',
97
- message: (payload) => addName(payload) + 'ChunkTooLarge ' + payload.name,
98
- },
99
- [BasedErrorCode.UnsupportedContentEncoding]: {
100
- statusCode: 400,
101
- statusMessage: 'Incorrect content encoding',
102
- message: (payload) => addName(payload) + 'Incorrect content encoding',
103
- },
104
- [BasedErrorCode.LengthRequired]: {
105
- statusCode: 411,
106
- statusMessage: 'Length Required',
107
- message: (payload) => addName(payload) + 'Length Required',
108
- },
109
- [BasedErrorCode.MethodNotAllowed]: {
110
- statusCode: 405,
111
- statusMessage: 'Method Not Allowed',
112
- message: (payload) => addName(payload) + 'Method Not Allowed',
113
- },
114
- [BasedErrorCode.NoOservableCacheAvailable]: {
115
- statusCode: 500,
116
- statusMessage: 'Internal Server Error',
117
- message: (payload) => addName(payload.route) +
118
- `No observable cache available${payload.route.name} - ${payload.observableId}`,
119
- },
120
- };
121
- //# sourceMappingURL=errorTypeHandlers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"errorTypeHandlers.js","sourceRoot":"","sources":["../../src/error/errorTypeHandlers.ts"],"names":[],"mappings":"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"}
@@ -1,97 +0,0 @@
1
- import { BasedRoute } from '@based/functions';
2
- export declare const EMPTY_ROUTE: BasedRoute;
3
- export declare enum BasedErrorCode {
4
- FunctionError = 50001,
5
- AuthorizeFunctionError = 50002,
6
- NoOservableCacheAvailable = 50003,
7
- ObserveCallbackError = 50005,
8
- FunctionNotFound = 40401,
9
- FunctionIsWrongType = 40402,
10
- AuthorizeRejectedError = 40301,
11
- InvalidPayload = 40001,
12
- PayloadTooLarge = 40002,
13
- ChunkTooLarge = 40003,
14
- UnsupportedContentEncoding = 40004,
15
- NoBinaryProtocol = 40005,
16
- LengthRequired = 41101,
17
- MethodNotAllowed = 40501,
18
- RateLimit = 40029,
19
- MissingAuthStateProtocolHeader = 40030,
20
- IncorrectAccessKey = 40031,
21
- Block = 90001
22
- }
23
- type FunctionErrorProps = {
24
- err: Error | string;
25
- requestId?: number;
26
- streamRequestId?: number;
27
- route: BasedRoute;
28
- };
29
- type ObservableFunctionErrorProps = {
30
- observableId: number;
31
- err: Error | string;
32
- route: BasedRoute;
33
- };
34
- type ChannelFunctionErrorProps = {
35
- channelId: number;
36
- err: Error | string;
37
- route: BasedRoute;
38
- };
39
- type BasedErrorPayload = {
40
- observableId: number;
41
- route: BasedRoute;
42
- } | {
43
- requestId: number;
44
- route: BasedRoute;
45
- } | {
46
- channelId: number;
47
- route: BasedRoute;
48
- } | {
49
- route: BasedRoute;
50
- };
51
- type BasedFunctionError = FunctionErrorProps | ObservableFunctionErrorProps | ChannelFunctionErrorProps;
52
- export type ErrorPayload = {
53
- [BasedErrorCode.FunctionNotFound]: BasedErrorPayload;
54
- [BasedErrorCode.RateLimit]: {};
55
- [BasedErrorCode.Block]: {};
56
- [BasedErrorCode.IncorrectAccessKey]: {};
57
- [BasedErrorCode.MissingAuthStateProtocolHeader]: {};
58
- [BasedErrorCode.NoBinaryProtocol]: {
59
- buffer: ArrayBuffer;
60
- };
61
- [BasedErrorCode.FunctionError]: BasedFunctionError;
62
- [BasedErrorCode.AuthorizeFunctionError]: BasedFunctionError;
63
- [BasedErrorCode.AuthorizeRejectedError]: BasedErrorPayload;
64
- [BasedErrorCode.ObserveCallbackError]: {
65
- err: Error;
66
- observableId: number;
67
- route: BasedRoute;
68
- };
69
- [BasedErrorCode.NoOservableCacheAvailable]: {
70
- observableId: number;
71
- route: BasedRoute;
72
- };
73
- [BasedErrorCode.FunctionIsWrongType]: BasedErrorPayload;
74
- [BasedErrorCode.InvalidPayload]: BasedErrorPayload;
75
- [BasedErrorCode.PayloadTooLarge]: BasedErrorPayload;
76
- [BasedErrorCode.ChunkTooLarge]: BasedRoute;
77
- [BasedErrorCode.UnsupportedContentEncoding]: BasedRoute;
78
- [BasedErrorCode.LengthRequired]: BasedRoute;
79
- [BasedErrorCode.MethodNotAllowed]: BasedRoute;
80
- };
81
- export type ErrorHandler<T extends BasedErrorCode> = {
82
- statusCode: number;
83
- statusMessage: string;
84
- message: (payload: ErrorPayload[T]) => string;
85
- };
86
- export type BasedErrorData<T extends BasedErrorCode = BasedErrorCode> = {
87
- route: BasedRoute;
88
- message: string;
89
- code: T;
90
- statusCode: number;
91
- statusMessage: string;
92
- requestId?: number;
93
- streamRequestId?: number;
94
- observableId?: number;
95
- channelId?: number;
96
- };
97
- export {};
@@ -1,30 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BasedErrorCode = exports.EMPTY_ROUTE = void 0;
4
- exports.EMPTY_ROUTE = {
5
- name: 'no-route',
6
- path: '',
7
- type: 'function',
8
- };
9
- var BasedErrorCode;
10
- (function (BasedErrorCode) {
11
- BasedErrorCode[BasedErrorCode["FunctionError"] = 50001] = "FunctionError";
12
- BasedErrorCode[BasedErrorCode["AuthorizeFunctionError"] = 50002] = "AuthorizeFunctionError";
13
- BasedErrorCode[BasedErrorCode["NoOservableCacheAvailable"] = 50003] = "NoOservableCacheAvailable";
14
- BasedErrorCode[BasedErrorCode["ObserveCallbackError"] = 50005] = "ObserveCallbackError";
15
- BasedErrorCode[BasedErrorCode["FunctionNotFound"] = 40401] = "FunctionNotFound";
16
- BasedErrorCode[BasedErrorCode["FunctionIsWrongType"] = 40402] = "FunctionIsWrongType";
17
- BasedErrorCode[BasedErrorCode["AuthorizeRejectedError"] = 40301] = "AuthorizeRejectedError";
18
- BasedErrorCode[BasedErrorCode["InvalidPayload"] = 40001] = "InvalidPayload";
19
- BasedErrorCode[BasedErrorCode["PayloadTooLarge"] = 40002] = "PayloadTooLarge";
20
- BasedErrorCode[BasedErrorCode["ChunkTooLarge"] = 40003] = "ChunkTooLarge";
21
- BasedErrorCode[BasedErrorCode["UnsupportedContentEncoding"] = 40004] = "UnsupportedContentEncoding";
22
- BasedErrorCode[BasedErrorCode["NoBinaryProtocol"] = 40005] = "NoBinaryProtocol";
23
- BasedErrorCode[BasedErrorCode["LengthRequired"] = 41101] = "LengthRequired";
24
- BasedErrorCode[BasedErrorCode["MethodNotAllowed"] = 40501] = "MethodNotAllowed";
25
- BasedErrorCode[BasedErrorCode["RateLimit"] = 40029] = "RateLimit";
26
- BasedErrorCode[BasedErrorCode["MissingAuthStateProtocolHeader"] = 40030] = "MissingAuthStateProtocolHeader";
27
- BasedErrorCode[BasedErrorCode["IncorrectAccessKey"] = 40031] = "IncorrectAccessKey";
28
- BasedErrorCode[BasedErrorCode["Block"] = 90001] = "Block";
29
- })(BasedErrorCode || (exports.BasedErrorCode = BasedErrorCode = {}));
30
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/error/types.ts"],"names":[],"mappings":";;;AAEa,QAAA,WAAW,GAAe;IACrC,IAAI,EAAE,UAAU;IAChB,IAAI,EAAE,EAAE;IACR,IAAI,EAAE,UAAU;CACjB,CAAA;AAED,IAAY,cAmBX;AAnBD,WAAY,cAAc;IACxB,yEAAqB,CAAA;IACrB,2FAA8B,CAAA;IAC9B,iGAAiC,CAAA;IACjC,uFAA4B,CAAA;IAC5B,+EAAwB,CAAA;IACxB,qFAA2B,CAAA;IAC3B,2FAA8B,CAAA;IAC9B,2EAAsB,CAAA;IACtB,6EAAuB,CAAA;IACvB,yEAAqB,CAAA;IACrB,mGAAkC,CAAA;IAClC,+EAAwB,CAAA;IACxB,2EAAsB,CAAA;IACtB,+EAAwB,CAAA;IACxB,iEAAiB,CAAA;IACjB,2GAAsC,CAAA;IACtC,mFAA0B,CAAA;IAC1B,yDAAa,CAAA;AACf,CAAC,EAnBW,cAAc,8BAAd,cAAc,QAmBzB"}
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/stream/types.ts"],"names":[],"mappings":""}
File without changes