@based/server 10.1.1 → 10.2.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.
- package/dist/authorize.d.ts +6 -8
- package/dist/authorize.js +56 -41
- package/dist/authorize.js.map +1 -1
- package/dist/functionApi/callFunction.js +1 -1
- package/dist/functionApi/callFunction.js.map +1 -1
- package/dist/functionApi/channelSubscribe.js +2 -2
- package/dist/functionApi/channelSubscribe.js.map +1 -1
- package/dist/functionApi/client/channel.js +2 -2
- package/dist/functionApi/client/channel.js.map +1 -1
- package/dist/functionApi/client/index.d.ts +3 -2
- package/dist/functionApi/client/index.js +5 -5
- package/dist/functionApi/client/index.js.map +1 -1
- package/dist/functionApi/client/query.d.ts +9 -4
- package/dist/functionApi/client/query.js +23 -5
- package/dist/functionApi/client/query.js.map +1 -1
- package/dist/functionApi/get.d.ts +2 -3
- package/dist/functionApi/get.js +20 -20
- package/dist/functionApi/get.js.map +1 -1
- package/dist/functionApi/observe.d.ts +2 -3
- package/dist/functionApi/observe.js +10 -10
- package/dist/functionApi/observe.js.map +1 -1
- package/dist/functionApi/publish.js +1 -1
- package/dist/functionApi/publish.js.map +1 -1
- package/dist/functionApi/stream.js +1 -1
- package/dist/functionApi/stream.js.map +1 -1
- package/dist/incoming/http/basicFunction.d.ts +3 -3
- package/dist/incoming/http/basicFunction.js +1 -1
- package/dist/incoming/http/basicFunction.js.map +1 -1
- package/dist/incoming/http/fakeWs/handleBinary.js +22 -30
- package/dist/incoming/http/fakeWs/handleBinary.js.map +1 -1
- package/dist/incoming/http/fakeWs/index.js +1 -1
- package/dist/incoming/http/fakeWs/index.js.map +1 -1
- package/dist/incoming/http/httpFunction.d.ts +3 -3
- package/dist/incoming/http/httpFunction.js +1 -1
- package/dist/incoming/http/httpFunction.js.map +1 -1
- package/dist/incoming/http/index.js +8 -3
- package/dist/incoming/http/index.js.map +1 -1
- package/dist/incoming/http/publish.d.ts +3 -3
- package/dist/incoming/http/publish.js +5 -5
- package/dist/incoming/http/publish.js.map +1 -1
- package/dist/incoming/http/query.js +41 -8
- package/dist/incoming/http/query.js.map +1 -1
- package/dist/incoming/http/streamFunction/multiPart/index.js +2 -2
- package/dist/incoming/http/streamFunction/multiPart/index.js.map +1 -1
- package/dist/incoming/http/streamFunction/stream/index.js +28 -25
- package/dist/incoming/http/streamFunction/stream/index.js.map +1 -1
- package/dist/incoming/upgrade.js +0 -1
- package/dist/incoming/upgrade.js.map +1 -1
- package/dist/incoming/ws/auth.js +56 -26
- package/dist/incoming/ws/auth.js.map +1 -1
- package/dist/incoming/ws/channelPublish.js +10 -10
- package/dist/incoming/ws/channelPublish.js.map +1 -1
- package/dist/incoming/ws/channelSubscribe.d.ts +2 -2
- package/dist/incoming/ws/channelSubscribe.js +23 -16
- package/dist/incoming/ws/channelSubscribe.js.map +1 -1
- package/dist/incoming/ws/function.js +27 -19
- package/dist/incoming/ws/function.js.map +1 -1
- package/dist/incoming/ws/get.js +49 -27
- package/dist/incoming/ws/get.js.map +1 -1
- package/dist/incoming/ws/index.js +17 -23
- package/dist/incoming/ws/index.js.map +1 -1
- package/dist/incoming/ws/query.d.ts +4 -2
- package/dist/incoming/ws/query.js +60 -26
- package/dist/incoming/ws/query.js.map +1 -1
- package/dist/incoming/ws/stream.js +22 -14
- package/dist/incoming/ws/stream.js.map +1 -1
- package/dist/installFn.d.ts +3 -3
- package/dist/installFn.js +14 -13
- package/dist/installFn.js.map +1 -1
- package/dist/protocol.d.ts +4 -2
- package/dist/protocol.js +28 -41
- package/dist/protocol.js.map +1 -1
- package/dist/query/attachCtx.d.ts +8 -0
- package/dist/query/attachCtx.js +113 -0
- package/dist/query/attachCtx.js.map +1 -0
- package/dist/query/cleanup.js +4 -4
- package/dist/query/cleanup.js.map +1 -1
- package/dist/query/create.d.ts +4 -3
- package/dist/query/create.js +12 -9
- package/dist/query/create.js.map +1 -1
- package/dist/query/destroy.d.ts +1 -1
- package/dist/query/destroy.js +7 -7
- package/dist/query/destroy.js.map +1 -1
- package/dist/query/index.d.ts +0 -1
- package/dist/query/index.js +0 -1
- package/dist/query/index.js.map +1 -1
- package/dist/query/send.js +4 -2
- package/dist/query/send.js.map +1 -1
- package/dist/query/start/error.js +13 -7
- package/dist/query/start/error.js.map +1 -1
- package/dist/query/start/genChecksum.js +11 -0
- package/dist/query/start/genChecksum.js.map +1 -1
- package/dist/query/start/index.js +5 -3
- package/dist/query/start/index.js.map +1 -1
- package/dist/query/start/relay.js +1 -1
- package/dist/query/start/relay.js.map +1 -1
- package/dist/query/start/update.js +12 -11
- package/dist/query/start/update.js.map +1 -1
- package/dist/query/subscribe.js +12 -6
- package/dist/query/subscribe.js.map +1 -1
- package/dist/query/types.d.ts +11 -1
- package/dist/query/unsub.js +35 -3
- package/dist/query/unsub.js.map +1 -1
- package/dist/server.d.ts +2 -2
- package/dist/server.js +2 -2
- package/dist/server.js.map +1 -1
- package/dist/types.d.ts +18 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/package.json +5 -5
- package/dist/incoming/http/fakeWs/function.d.ts +0 -2
- package/dist/incoming/http/fakeWs/function.js +0 -50
- package/dist/incoming/http/fakeWs/function.js.map +0 -1
- package/dist/incoming/http/fakeWs/query.d.ts +0 -2
- package/dist/incoming/http/fakeWs/query.js +0 -78
- package/dist/incoming/http/fakeWs/query.js.map +0 -1
- package/dist/query/genObservableId.d.ts +0 -1
- package/dist/query/genObservableId.js +0 -8
- package/dist/query/genObservableId.js.map +0 -1
package/dist/authorize.d.ts
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
export
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
export declare const authorize: <S extends ClientSession = ClientSession, R extends BasedRoute = BasedRoute, P = any>(route: R, server: BasedServer, ctx: Context<S>, payload: P, isAuthorized: IsAuthorizedHandler<S, R, P>, id?: number, checksum?: number, isPublic?: boolean, authError?: AuthErrorHandler<S, R, P>) => void;
|
|
8
|
-
export {};
|
|
1
|
+
import { BasedFunctionConfig, BasedRoute } from '@based/functions';
|
|
2
|
+
import { ClientSession, FunctionErrorHandler, FunctionProps } from './types.js';
|
|
3
|
+
export declare const defaultAuthError: FunctionErrorHandler<ClientSession>;
|
|
4
|
+
export declare const authorize: <S extends ClientSession = ClientSession, R extends BasedRoute = BasedRoute, P = any>(props: FunctionProps<S, R, P>, publicHandler?: boolean) => Promise<FunctionProps<S, R, P> & {
|
|
5
|
+
spec: BasedFunctionConfig<R["type"]>;
|
|
6
|
+
}>;
|
package/dist/authorize.js
CHANGED
|
@@ -1,70 +1,85 @@
|
|
|
1
1
|
import { sendError } from './sendError.js';
|
|
2
2
|
import { BasedErrorCode } from '@based/errors';
|
|
3
|
-
import { isBasedRoute
|
|
3
|
+
import { isBasedRoute } from '@based/functions';
|
|
4
4
|
import { installFn } from './installFn.js';
|
|
5
|
-
export const defaultAuthError = (
|
|
5
|
+
export const defaultAuthError = (props, err) => {
|
|
6
6
|
const code = err
|
|
7
7
|
? BasedErrorCode.AuthorizeFunctionError
|
|
8
8
|
: BasedErrorCode.AuthorizeRejectedError;
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
const route = props.route;
|
|
10
|
+
if (props.id && isBasedRoute('channel', route)) {
|
|
11
|
+
sendError(props.server, props.ctx, code, {
|
|
11
12
|
route,
|
|
12
13
|
err,
|
|
13
|
-
channelId: id,
|
|
14
|
+
channelId: props.id,
|
|
14
15
|
});
|
|
15
16
|
return;
|
|
16
17
|
}
|
|
17
|
-
if (id && isBasedRoute('query', route)) {
|
|
18
|
-
sendError(server, ctx, code, {
|
|
18
|
+
if (props.id && isBasedRoute('query', route)) {
|
|
19
|
+
sendError(props.server, props.ctx, code, {
|
|
19
20
|
route,
|
|
20
21
|
err,
|
|
21
|
-
observableId: id,
|
|
22
|
+
observableId: props.id,
|
|
22
23
|
});
|
|
23
24
|
return;
|
|
24
25
|
}
|
|
25
|
-
if (id) {
|
|
26
|
-
sendError(server, ctx, code, {
|
|
26
|
+
if (props.id) {
|
|
27
|
+
sendError(props.server, props.ctx, code, {
|
|
27
28
|
route,
|
|
28
29
|
err,
|
|
29
|
-
requestId: id,
|
|
30
|
+
requestId: props.id,
|
|
30
31
|
});
|
|
31
32
|
return;
|
|
32
33
|
}
|
|
33
|
-
sendError(server, ctx, code, {
|
|
34
|
+
sendError(props.server, props.ctx, code, {
|
|
34
35
|
route,
|
|
35
36
|
err,
|
|
36
37
|
});
|
|
37
38
|
};
|
|
38
|
-
export const authorize = (
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
if (spec === null) {
|
|
44
|
-
return;
|
|
45
|
-
}
|
|
46
|
-
if (route.public === true || isPublic) {
|
|
47
|
-
isAuthorized(route, spec, server, ctx, payload, id, checksum);
|
|
48
|
-
return;
|
|
49
|
-
}
|
|
50
|
-
const authorize = spec.authorize || server.auth.authorize;
|
|
51
|
-
authorize(server.client, ctx, route.name, payload)
|
|
52
|
-
.then((ok) => {
|
|
53
|
-
if (!ctx.session || !ok) {
|
|
54
|
-
if (ctx.session &&
|
|
55
|
-
!authError(route, server, ctx, payload, id, checksum)) {
|
|
56
|
-
defaultAuthError(route, server, ctx, payload, id, checksum);
|
|
57
|
-
}
|
|
39
|
+
export const authorize = (props, publicHandler = props.route.public) => {
|
|
40
|
+
return {
|
|
41
|
+
// @ts-ignore (higher perf then a promise)
|
|
42
|
+
then: (resolve) => {
|
|
43
|
+
if (!props.ctx.session) {
|
|
58
44
|
return;
|
|
59
45
|
}
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
46
|
+
const onAuthError = props.error ?? defaultAuthError;
|
|
47
|
+
installFn(props).then((spec) => {
|
|
48
|
+
if (!props.ctx.session) {
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
if (spec === null) {
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
if (publicHandler === true) {
|
|
55
|
+
// @ts-ignore
|
|
56
|
+
props.spec = spec;
|
|
57
|
+
// @ts-ignore
|
|
58
|
+
resolve(props);
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
const authorize = spec.authorize || props.server.auth.authorize;
|
|
62
|
+
// non async auth as option?
|
|
63
|
+
authorize(props.server.client, props.ctx, props.route.name, props.payload)
|
|
64
|
+
.then((ok) => {
|
|
65
|
+
if (!props.ctx.session || !ok) {
|
|
66
|
+
if (props.ctx.session && !onAuthError(props)) {
|
|
67
|
+
defaultAuthError(props);
|
|
68
|
+
}
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
// @ts-ignore
|
|
72
|
+
props.spec = spec;
|
|
73
|
+
// @ts-ignore
|
|
74
|
+
resolve(props);
|
|
75
|
+
})
|
|
76
|
+
.catch((err) => {
|
|
77
|
+
if (props.ctx.session && !onAuthError(props, err)) {
|
|
78
|
+
defaultAuthError(props, err);
|
|
79
|
+
}
|
|
80
|
+
});
|
|
81
|
+
});
|
|
82
|
+
},
|
|
83
|
+
};
|
|
69
84
|
};
|
|
70
85
|
//# sourceMappingURL=authorize.js.map
|
package/dist/authorize.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authorize.js","sourceRoot":"","sources":["../src/authorize.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"authorize.js","sourceRoot":"","sources":["../src/authorize.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ export const callFunction = async (server, name, ctx, payload) => {
|
|
|
7
7
|
if (route === null) {
|
|
8
8
|
return;
|
|
9
9
|
}
|
|
10
|
-
const spec = await installFn(server, server.client.ctx, route);
|
|
10
|
+
const spec = await installFn({ server, ctx: server.client.ctx, route });
|
|
11
11
|
if (!spec) {
|
|
12
12
|
throw createError(server, ctx, BasedErrorCode.FunctionNotFound, {
|
|
13
13
|
route,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"callFunction.js","sourceRoot":"","sources":["../../src/functionApi/callFunction.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAE/C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAE9C,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAC/B,MAAmB,EACnB,IAAY,EACZ,GAAY,EACZ,OAAY,EACE,EAAE;IAChB,MAAM,KAAK,GAAG,WAAW,CACvB,MAAM,EACN,MAAM,CAAC,MAAM,CAAC,GAAG,EACjB,UAAU,EACV,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,EAC5B,IAAI,CACL,CAAA;IAED,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACnB,OAAM;IACR,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"callFunction.js","sourceRoot":"","sources":["../../src/functionApi/callFunction.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAE/C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAE9C,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAC/B,MAAmB,EACnB,IAAY,EACZ,GAAY,EACZ,OAAY,EACE,EAAE;IAChB,MAAM,KAAK,GAAG,WAAW,CACvB,MAAM,EACN,MAAM,CAAC,MAAM,CAAC,GAAG,EACjB,UAAU,EACV,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,EAC5B,IAAI,CACL,CAAA;IAED,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACnB,OAAM;IACR,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,CAAA;IAEvE,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE,cAAc,CAAC,gBAAgB,EAAE;YAC9D,KAAK;SACN,CAAC,CAAA;IACJ,CAAC;IAED,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QAChD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE,cAAc,CAAC,aAAa,EAAE;gBAC3D,KAAK;gBACL,GAAG,EAAE,IAAI,KAAK,CAAC,qBAAqB,GAAG,IAAI,CAAC,KAAK,CAAC;aACnD,CAAC,CAAA;QACJ,CAAC;QACD,IAAI,CAAC;YACH,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QAC7D,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE,cAAc,CAAC,aAAa,EAAE;gBAC3D,KAAK;gBACL,GAAG;aACJ,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAED,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,CAAC,CAAA;IAC7C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE,cAAc,CAAC,aAAa,EAAE;YAC3D,KAAK;YACL,GAAG;SACJ,CAAC,CAAA;IACJ,CAAC;AACH,CAAC,CAAA"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { verifyRoute } from '../verifyRoute.js';
|
|
2
2
|
import { unsubscribeFunction, subscribeChannelFunction, hasChannel, createChannel, } from '../channel/index.js';
|
|
3
3
|
import { installFn } from '../installFn.js';
|
|
4
|
-
import { createError
|
|
4
|
+
import { createError } from '../error/index.js';
|
|
5
5
|
import { BasedErrorCode } from '@based/errors';
|
|
6
6
|
export const subscribeChannel = (server, name, id, payload, update) => {
|
|
7
7
|
const route = verifyRoute(server, server.client.ctx, 'channel', server.functions.route(name), name, id);
|
|
@@ -20,7 +20,7 @@ export const subscribeChannel = (server, name, id, payload, update) => {
|
|
|
20
20
|
subscribeChannelFunction(server, id, update);
|
|
21
21
|
return close;
|
|
22
22
|
}
|
|
23
|
-
installFn(server, server.client.ctx, route).then((spec) => {
|
|
23
|
+
installFn({ server, ctx: server.client.ctx, route }).then((spec) => {
|
|
24
24
|
if (isClosed) {
|
|
25
25
|
return;
|
|
26
26
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channelSubscribe.js","sourceRoot":"","sources":["../../src/functionApi/channelSubscribe.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EACxB,UAAU,EACV,aAAa,GACd,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"channelSubscribe.js","sourceRoot":"","sources":["../../src/functionApi/channelSubscribe.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EACxB,UAAU,EACV,aAAa,GACd,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAE9C,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,MAAmB,EACnB,IAAY,EACZ,EAAU,EACV,OAAY,EACZ,MAAsC,EACxB,EAAE;IAChB,MAAM,KAAK,GAAG,WAAW,CACvB,MAAM,EACN,MAAM,CAAC,MAAM,CAAC,GAAG,EACjB,SAAS,EACT,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,EAC5B,IAAI,EACJ,EAAE,CACH,CAAA;IAED,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,IAAI,IAAI,qBAAqB,CAAC,CAAA;IAChD,CAAC;IAED,IAAI,QAAQ,GAAG,KAAK,CAAA;IAEpB,MAAM,KAAK,GAAG,GAAG,EAAE;QACjB,IAAI,QAAQ,EAAE,CAAC;YACb,OAAM;QACR,CAAC;QACD,QAAQ,GAAG,IAAI,CAAA;QACf,mBAAmB,CAAC,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,CAAA;IACzC,CAAC,CAAA;IAED,IAAI,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;QAC3B,wBAAwB,CAAC,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,CAAA;QAC5C,OAAO,KAAK,CAAA;IACd,CAAC;IAED,SAAS,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;QACjE,IAAI,QAAQ,EAAE,CAAC;YACb,OAAM;QACR,CAAC;QACD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,MAAM,CACJ,IAAI,EACJ,WAAW,CACT,MAAM,EACN,MAAM,CAAC,MAAM,CAAC,GAAG,EACjB,cAAc,CAAC,gBAAgB,EAC/B;gBACE,KAAK;aACN,CACF,CACF,CAAA;YACD,OAAM;QACR,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;YAC5B,aAAa,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,CAAA;QAChD,CAAC;QACD,wBAAwB,CAAC,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,CAAA;IAC9C,CAAC,CAAC,CAAA;IAEF,OAAO,KAAK,CAAA;AACd,CAAC,CAAA"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { BasedChannel as BasedChannelAbstract, } from '@based/functions';
|
|
2
|
-
import { genObservableId } from '../../query/index.js';
|
|
3
2
|
import { publish } from '../publish.js';
|
|
4
3
|
import { subscribeChannel } from '../channelSubscribe.js';
|
|
4
|
+
import { genObserveId } from '@based/protocol/client-server';
|
|
5
5
|
export class BasedChannel extends BasedChannelAbstract {
|
|
6
6
|
payload;
|
|
7
7
|
name;
|
|
@@ -11,7 +11,7 @@ export class BasedChannel extends BasedChannelAbstract {
|
|
|
11
11
|
super();
|
|
12
12
|
this.ctx = ctx;
|
|
13
13
|
this.payload = payload;
|
|
14
|
-
this.id =
|
|
14
|
+
this.id = genObserveId(name, payload);
|
|
15
15
|
this.name = name;
|
|
16
16
|
}
|
|
17
17
|
subscribe(onMessage, onError) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channel.js","sourceRoot":"","sources":["../../../src/functionApi/client/channel.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,IAAI,oBAAoB,GAIrC,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"channel.js","sourceRoot":"","sources":["../../../src/functionApi/client/channel.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,IAAI,oBAAoB,GAIrC,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AAE5D,MAAM,OAAO,YAAa,SAAQ,oBAAoB;IAC7C,OAAO,CAAK;IACZ,IAAI,CAAQ;IACZ,EAAE,CAAQ;IACV,GAAG,CAAgC;IAE1C,YAAY,GAAmC,EAAE,IAAY,EAAE,OAAY;QACzE,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;QACd,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,EAAE,GAAG,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QACrC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;IAClB,CAAC;IAED,SAAS,CACP,SAAiC,EACjC,OAA4B;QAE5B,OAAO,gBAAgB,CACrB,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAC9B,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,EAAE,EACP,IAAI,CAAC,OAAO,EACZ,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YACX,IAAI,GAAG,EAAE,CAAC;gBACR,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,CAAC,GAAG,CAAC,CAAA;gBACd,CAAC;gBACD,OAAM;YACR,CAAC;YACD,SAAS,CAAC,GAAG,CAAC,CAAA;QAChB,CAAC,CACF,CAAA;IACH,CAAC;IAED,OAAO,CAAC,OAAY,EAAE,MAAe,IAAI,CAAC,GAAG;QAC3C,OAAO,CACL,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAC9B,IAAI,CAAC,IAAI,EACT,GAAG,EACH,IAAI,CAAC,EAAE,EACP,IAAI,CAAC,OAAO,EACZ,OAAO,CACR,CAAA;IACH,CAAC;CACF"}
|
|
@@ -7,9 +7,10 @@ export declare class BasedFunctionClient extends BasedfunctionClientAbstract {
|
|
|
7
7
|
server: BasedServer;
|
|
8
8
|
ctx: Context<InternalSessionClient>;
|
|
9
9
|
constructor(server: BasedServer);
|
|
10
|
-
geo(ctx: Context): Promise<import("@based/functions").Geo>;
|
|
11
10
|
call(name: string, payload?: any, ctx?: Context): Promise<any>;
|
|
12
|
-
query(name: string, payload?: any
|
|
11
|
+
query(name: string, payload?: any, attachedCtx?: Context | {
|
|
12
|
+
[key: string]: any;
|
|
13
|
+
}): BasedQuery;
|
|
13
14
|
channel(name: string, payload?: any): BasedChannel;
|
|
14
15
|
stream(name: string, streamOpts: StreamFunctionOpts, ctx?: Context): Promise<any>;
|
|
15
16
|
renewAuthState(ctx: Context<Session>, authState?: AuthState): Promise<AuthState>;
|
|
@@ -13,15 +13,15 @@ export class BasedFunctionClient extends BasedfunctionClientAbstract {
|
|
|
13
13
|
session: { type: 'client', client: this, headers: {} },
|
|
14
14
|
};
|
|
15
15
|
}
|
|
16
|
-
geo(ctx) {
|
|
17
|
-
|
|
18
|
-
}
|
|
16
|
+
// geo(ctx: Context) {
|
|
17
|
+
// return this.server.geo(ctx)
|
|
18
|
+
// }
|
|
19
19
|
// TODO: CTX - Transpile the ctx in there by static analysis for "call" & "stream"
|
|
20
20
|
call(name, payload, ctx = this.ctx) {
|
|
21
21
|
return callFunction(this.server, name, ctx, payload);
|
|
22
22
|
}
|
|
23
|
-
query(name, payload) {
|
|
24
|
-
return new BasedQuery(this.ctx, name, payload);
|
|
23
|
+
query(name, payload, attachedCtx) {
|
|
24
|
+
return new BasedQuery(this.ctx, name, payload, attachedCtx);
|
|
25
25
|
}
|
|
26
26
|
channel(name, payload) {
|
|
27
27
|
return new BasedChannel(this.ctx, name, payload);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/functionApi/client/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC7C,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAEL,mBAAmB,IAAI,2BAA2B,EAGlD,eAAe,EACf,WAAW,GAGZ,MAAM,kBAAkB,CAAA;AAEzB,MAAM,OAAO,mBAAoB,SAAQ,2BAA2B;IAGlE,GAAG,CAAgC;IAEnC,YAAY,MAAmB;QAC7B,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,GAAG,GAAG;YACT,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE;SACvD,CAAA;IACH,CAAC;IAED,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/functionApi/client/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC7C,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAEL,mBAAmB,IAAI,2BAA2B,EAGlD,eAAe,EACf,WAAW,GAGZ,MAAM,kBAAkB,CAAA;AAEzB,MAAM,OAAO,mBAAoB,SAAQ,2BAA2B;IAGlE,GAAG,CAAgC;IAEnC,YAAY,MAAmB;QAC7B,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,GAAG,GAAG;YACT,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE;SACvD,CAAA;IACH,CAAC;IAED,sBAAsB;IACtB,gCAAgC;IAChC,IAAI;IAEJ,kFAAkF;IAClF,IAAI,CAAC,IAAY,EAAE,OAAa,EAAE,MAAe,IAAI,CAAC,GAAG;QACvD,OAAO,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,CAAA;IACtD,CAAC;IAED,KAAK,CACH,IAAY,EACZ,OAAa,EACb,WAA8C;QAE9C,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,CAAC,CAAA;IAC7D,CAAC;IAED,OAAO,CAAC,IAAY,EAAE,OAAa;QACjC,OAAO,IAAI,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;IAClD,CAAC;IAED,KAAK,CAAC,MAAM,CACV,IAAY,EACZ,UAA8B,EAC9B,MAAe,IAAI,CAAC,GAAG;QAEvB,aAAa;QACb,OAAO,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,UAAU,CAAC,CAAA;IAC3D,CAAC;IAED,cAAc,CACZ,GAAqB,EACrB,SAAqB;QAErB,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;IACxD,CAAC;IAED,YAAY,CAAC,GAAqB,EAAE,SAAoB;QACtD,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;YACjB,OAAM;QACR,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1B,OAAM;QACR,CAAC;QACD,GAAG,CAAC,OAAO,CAAC,SAAS,GAAG,SAAS,CAAA;QACjC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAA;IACtC,CAAC;IAED,aAAa,CAAC,GAAqB,EAAE,SAAoB;QACvD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,OAAM;QACR,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;IAChD,CAAC;IAED,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QACnB,OAAO,uBAAuB,CAAA;IAChC,CAAC;CACF"}
|
|
@@ -1,10 +1,15 @@
|
|
|
1
|
-
import { ObservableUpdateFunction, ObserveErrorListener } from '../../query/index.js';
|
|
2
|
-
import { BasedQuery as BasedQueryAbstract, Context, InternalSessionClient } from '@based/functions';
|
|
1
|
+
import { AttachedCtx, ObservableUpdateFunction, ObserveErrorListener } from '../../query/index.js';
|
|
2
|
+
import { BasedQuery as BasedQueryAbstract, BasedRoute, Context, InternalSessionClient } from '@based/functions';
|
|
3
3
|
export declare class BasedQuery extends BasedQueryAbstract {
|
|
4
|
-
|
|
4
|
+
payload: any;
|
|
5
5
|
name: string;
|
|
6
6
|
ctx: Context<InternalSessionClient>;
|
|
7
|
-
|
|
7
|
+
attachedCtx: AttachedCtx;
|
|
8
|
+
id: number;
|
|
9
|
+
route: BasedRoute<'query'>;
|
|
10
|
+
constructor(ctx: Context<InternalSessionClient>, name: string, payload: any, attachedCtx?: {
|
|
11
|
+
[key: string]: any;
|
|
12
|
+
} | Context);
|
|
8
13
|
subscribe(onData: ObservableUpdateFunction, onError?: ObserveErrorListener): () => void;
|
|
9
14
|
getWhen(condition: (data: any, checksum: number) => boolean): Promise<any>;
|
|
10
15
|
get(): Promise<any>;
|
|
@@ -1,15 +1,33 @@
|
|
|
1
1
|
import { observe } from '../observe.js';
|
|
2
2
|
import { get } from '../get.js';
|
|
3
3
|
import { BasedQuery as BasedQueryAbstract, } from '@based/functions';
|
|
4
|
+
import { attachCtx, attachCtxInternal } from '../../query/attachCtx.js';
|
|
5
|
+
import { genObserveId } from '@based/protocol/client-server';
|
|
6
|
+
import { verifyRoute } from '../../verifyRoute.js';
|
|
4
7
|
export class BasedQuery extends BasedQueryAbstract {
|
|
5
|
-
|
|
8
|
+
payload;
|
|
6
9
|
name;
|
|
7
10
|
ctx;
|
|
8
|
-
|
|
11
|
+
attachedCtx;
|
|
12
|
+
id;
|
|
13
|
+
route;
|
|
14
|
+
constructor(ctx, name, payload, attachedCtx) {
|
|
9
15
|
super();
|
|
16
|
+
const server = ctx.session.client.server;
|
|
17
|
+
this.id = genObserveId(name, payload);
|
|
10
18
|
this.ctx = ctx;
|
|
11
|
-
this.
|
|
19
|
+
this.payload = payload;
|
|
12
20
|
this.name = name;
|
|
21
|
+
this.route = verifyRoute(server, ctx, 'query', server.functions.route(name), name, this.id);
|
|
22
|
+
if (!this.route) {
|
|
23
|
+
throw new Error(`Query ${this.route.name} does not exist`);
|
|
24
|
+
}
|
|
25
|
+
if (attachedCtx && this.route.ctx) {
|
|
26
|
+
this.attachedCtx =
|
|
27
|
+
'session' in attachedCtx
|
|
28
|
+
? attachCtx(server, this.route, attachedCtx, this.id)
|
|
29
|
+
: attachCtxInternal(this.route, attachedCtx, this.id);
|
|
30
|
+
}
|
|
13
31
|
}
|
|
14
32
|
subscribe(onData, onError) {
|
|
15
33
|
// @ts-ignore
|
|
@@ -46,7 +64,7 @@ export class BasedQuery extends BasedQueryAbstract {
|
|
|
46
64
|
// @ts-ignore
|
|
47
65
|
onData.safe = true;
|
|
48
66
|
}
|
|
49
|
-
return observe(this
|
|
67
|
+
return observe(this, onData, onError);
|
|
50
68
|
}
|
|
51
69
|
async getWhen(condition) {
|
|
52
70
|
return new Promise((resolve) => {
|
|
@@ -59,7 +77,7 @@ export class BasedQuery extends BasedQueryAbstract {
|
|
|
59
77
|
});
|
|
60
78
|
}
|
|
61
79
|
async get() {
|
|
62
|
-
return get(this
|
|
80
|
+
return get(this);
|
|
63
81
|
}
|
|
64
82
|
}
|
|
65
83
|
//# sourceMappingURL=query.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../../src/functionApi/client/query.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../../src/functionApi/client/query.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
export declare const get: (server: BasedServer, name: string, ctx: Context, payload: any) => Promise<any>;
|
|
1
|
+
import { BasedQuery } from './client/query.js';
|
|
2
|
+
export declare const get: (query: BasedQuery) => Promise<any>;
|
package/dist/functionApi/get.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import { createError
|
|
2
|
-
import {
|
|
3
|
-
import { verifyRoute } from '../verifyRoute.js';
|
|
1
|
+
import { createError } from '../error/index.js';
|
|
2
|
+
import { hasObs, subscribeNext, getObsAndStopRemove, destroyObs, start, createObsNoStart, } from '../query/index.js';
|
|
4
3
|
import { installFn } from '../installFn.js';
|
|
5
4
|
import { BasedErrorCode } from '@based/errors';
|
|
6
5
|
const getObsData = (resolve, reject, server, id, ctx, route) => {
|
|
@@ -30,31 +29,32 @@ const getObsData = (resolve, reject, server, id, ctx, route) => {
|
|
|
30
29
|
}
|
|
31
30
|
});
|
|
32
31
|
};
|
|
33
|
-
export const get = (
|
|
32
|
+
export const get = (query) => {
|
|
34
33
|
return new Promise((resolve, reject) => {
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
catch (err) {
|
|
44
|
-
reject(err);
|
|
45
|
-
return;
|
|
46
|
-
}
|
|
47
|
-
const id = genObservableId(name, payload);
|
|
34
|
+
const attachedCtx = query.attachedCtx;
|
|
35
|
+
const id = attachedCtx ? attachedCtx.id : query.id;
|
|
36
|
+
const server = query.ctx.session.client.server;
|
|
37
|
+
const route = query.route;
|
|
38
|
+
const ctx = query.ctx;
|
|
39
|
+
const payload = query.payload;
|
|
48
40
|
if (!hasObs(server, id)) {
|
|
49
|
-
installFn(server,
|
|
41
|
+
installFn({ server, ctx, route }).then((spec) => {
|
|
50
42
|
if (!spec) {
|
|
51
|
-
reject(createError(server, ctx, BasedErrorCode.FunctionNotFound, {
|
|
43
|
+
reject(createError(server, query.ctx, BasedErrorCode.FunctionNotFound, {
|
|
52
44
|
route,
|
|
53
45
|
}));
|
|
54
46
|
return;
|
|
55
47
|
}
|
|
56
48
|
if (!hasObs(server, id)) {
|
|
57
|
-
|
|
49
|
+
createObsNoStart({
|
|
50
|
+
server,
|
|
51
|
+
route,
|
|
52
|
+
id,
|
|
53
|
+
payload,
|
|
54
|
+
ctx,
|
|
55
|
+
spec,
|
|
56
|
+
attachedCtx,
|
|
57
|
+
});
|
|
58
58
|
getObsData(resolve, reject, server, id, ctx, route);
|
|
59
59
|
start(server, id);
|
|
60
60
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get.js","sourceRoot":"","sources":["../../src/functionApi/get.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"get.js","sourceRoot":"","sources":["../../src/functionApi/get.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { BasedServer } from '../server.js';
|
|
2
|
-
import { Context } from '@based/functions';
|
|
3
1
|
import { ObservableUpdateFunction, ObserveErrorListener } from '../query/index.js';
|
|
4
|
-
|
|
2
|
+
import { BasedQuery } from './client/query.js';
|
|
3
|
+
export declare const observe: (query: BasedQuery, update: ObservableUpdateFunction, error: ObserveErrorListener) => (() => void);
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { createError } from '../error/index.js';
|
|
2
|
-
import {
|
|
3
|
-
import { genObservableId, hasObs, createObs, subscribeFunction, unsubscribeFunction, } from '../query/index.js';
|
|
2
|
+
import { hasObs, createObs, subscribeFunction, unsubscribeFunction, } from '../query/index.js';
|
|
4
3
|
import { installFn } from '../installFn.js';
|
|
5
4
|
import { BasedErrorCode } from '@based/errors';
|
|
6
|
-
export const observe = (
|
|
7
|
-
const
|
|
8
|
-
const
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
5
|
+
export const observe = (query, update, error) => {
|
|
6
|
+
const attachedCtx = query.attachedCtx;
|
|
7
|
+
const id = attachedCtx ? attachedCtx.id : query.id;
|
|
8
|
+
const server = query.ctx.session.client.server;
|
|
9
|
+
const route = query.route;
|
|
10
|
+
const ctx = query.ctx;
|
|
11
|
+
const payload = query.payload;
|
|
12
12
|
let isClosed = false;
|
|
13
13
|
const close = () => {
|
|
14
14
|
if (isClosed) {
|
|
@@ -21,7 +21,7 @@ export const observe = (server, name, ctx, payload, update, error) => {
|
|
|
21
21
|
subscribeFunction(server, id, update);
|
|
22
22
|
return close;
|
|
23
23
|
}
|
|
24
|
-
installFn(server, server.client.ctx, route).then((spec) => {
|
|
24
|
+
installFn({ server, ctx: server.client.ctx, route }).then((spec) => {
|
|
25
25
|
if (isClosed) {
|
|
26
26
|
return;
|
|
27
27
|
}
|
|
@@ -32,7 +32,7 @@ export const observe = (server, name, ctx, payload, update, error) => {
|
|
|
32
32
|
return;
|
|
33
33
|
}
|
|
34
34
|
if (!hasObs(server, id)) {
|
|
35
|
-
createObs(server,
|
|
35
|
+
createObs({ server, route, id, payload, ctx, spec, attachedCtx });
|
|
36
36
|
}
|
|
37
37
|
subscribeFunction(server, id, update);
|
|
38
38
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observe.js","sourceRoot":"","sources":["../../src/functionApi/observe.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"observe.js","sourceRoot":"","sources":["../../src/functionApi/observe.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EACL,MAAM,EACN,SAAS,EAGT,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAG9C,MAAM,CAAC,MAAM,OAAO,GAAG,CACrB,KAAiB,EACjB,MAAgC,EAChC,KAA2B,EACb,EAAE;IAChB,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAA;IACrC,MAAM,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAA;IAClD,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAA;IAC9C,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAA;IACzB,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAA;IACrB,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAA;IAE7B,IAAI,QAAQ,GAAG,KAAK,CAAA;IAEpB,MAAM,KAAK,GAAG,GAAG,EAAE;QACjB,IAAI,QAAQ,EAAE,CAAC;YACb,OAAM;QACR,CAAC;QACD,QAAQ,GAAG,IAAI,CAAA;QACf,mBAAmB,CAAC,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,CAAA;IACzC,CAAC,CAAA;IAED,IAAI,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;QACvB,iBAAiB,CAAC,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,CAAA;QACrC,OAAO,KAAK,CAAA;IACd,CAAC;IAED,SAAS,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;QACjE,IAAI,QAAQ,EAAE,CAAC;YACb,OAAM;QACR,CAAC;QACD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,KAAK,CACH,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE,cAAc,CAAC,gBAAgB,EAAE;gBACxD,KAAK;aACN,CAAC,CACH,CAAA;YACD,OAAM;QACR,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;YACxB,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAA;QACnE,CAAC;QACD,iBAAiB,CAAC,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,CAAA;IACvC,CAAC,CAAC,CAAA;IAEF,OAAO,KAAK,CAAA;AACd,CAAC,CAAA"}
|
|
@@ -7,7 +7,7 @@ export const publish = (server, name, ctx, id, payload, msg) => {
|
|
|
7
7
|
if (route === null) {
|
|
8
8
|
return;
|
|
9
9
|
}
|
|
10
|
-
installFn(server, server.client.ctx, route).then((fn) => {
|
|
10
|
+
installFn({ server, ctx: server.client.ctx, route }).then((fn) => {
|
|
11
11
|
if (fn === null) {
|
|
12
12
|
return;
|
|
13
13
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publish.js","sourceRoot":"","sources":["../../src/functionApi/publish.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAE9C,MAAM,CAAC,MAAM,OAAO,GAAG,CACrB,MAAmB,EACnB,IAAY,EACZ,GAAY,EACZ,EAAU,EACV,OAAY,EACZ,GAAQ,EACR,EAAE;IACF,MAAM,KAAK,GAAG,WAAW,CACvB,MAAM,EACN,MAAM,CAAC,MAAM,CAAC,GAAG,EACjB,SAAS,EACT,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,EAC5B,IAAI,CACL,CAAA;IACD,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACnB,OAAM;IACR,CAAC;IACD,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE;
|
|
1
|
+
{"version":3,"file":"publish.js","sourceRoot":"","sources":["../../src/functionApi/publish.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAE9C,MAAM,CAAC,MAAM,OAAO,GAAG,CACrB,MAAmB,EACnB,IAAY,EACZ,GAAY,EACZ,EAAU,EACV,OAAY,EACZ,GAAQ,EACR,EAAE;IACF,MAAM,KAAK,GAAG,WAAW,CACvB,MAAM,EACN,MAAM,CAAC,MAAM,CAAC,GAAG,EACjB,SAAS,EACT,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,EAC5B,IAAI,CACL,CAAA;IACD,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACnB,OAAM;IACR,CAAC;IACD,SAAS,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE;QAC/D,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YAChB,OAAM;QACR,CAAC;QACD,IAAI,CAAC;YACH,OAAO,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,CAAA;QAC3D,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,sBAAsB;YACtB,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE,cAAc,CAAC,aAAa,EAAE;gBACrD,GAAG;gBACH,KAAK;aACN,CAAC,CAAA;QACJ,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA"}
|
|
@@ -16,7 +16,7 @@ export const streamFunction = async (server, name, ctx, streamOpts) => {
|
|
|
16
16
|
if (route === null) {
|
|
17
17
|
return;
|
|
18
18
|
}
|
|
19
|
-
const fn = await installFn(server, server.client.ctx, route);
|
|
19
|
+
const fn = await installFn({ server, ctx: server.client.ctx, route });
|
|
20
20
|
if (!fn) {
|
|
21
21
|
throw createError(server, ctx, BasedErrorCode.FunctionNotFound, {
|
|
22
22
|
route,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stream.js","sourceRoot":"","sources":["../../src/functionApi/stream.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAEL,eAAe,EAGf,oBAAoB,GACrB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE3C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAE9C,MAAM,UAAU,GAAG,CACjB,MAA2C,EAC3C,IAAY,EACK,EAAE;IACnB,IAAI,MAAM,YAAY,eAAe,EAAE,CAAC;QACtC,OAAO,MAAM,CAAA;IACf,CAAC;IACD,MAAM,CAAC,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,CAAA;IACnC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACd,OAAO,CAAC,CAAA;AACV,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EACjC,MAAmB,EACnB,IAAY,EACZ,GAAY,EACZ,UAA8B,EAChB,EAAE;IAChB,MAAM,KAAK,GAAG,WAAW,CACvB,MAAM,EACN,MAAM,CAAC,MAAM,CAAC,GAAG,EACjB,QAAQ,EACR,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,EAC5B,IAAI,CACL,CAAA;IAED,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACnB,OAAM;IACR,CAAC;IAED,MAAM,EAAE,GAAG,MAAM,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"stream.js","sourceRoot":"","sources":["../../src/functionApi/stream.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { HttpSession } from '@based/functions';
|
|
2
|
-
import {
|
|
3
|
-
export declare const basicFunction:
|
|
1
|
+
import { HttpSession, BasedRoute } from '@based/functions';
|
|
2
|
+
import { FunctionHandler } from '../../types.js';
|
|
3
|
+
export declare const basicFunction: FunctionHandler<HttpSession, BasedRoute<'function'>>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { sendHttpResponse } from '../../sendHttpResponse.js';
|
|
2
2
|
import { BasedErrorCode } from '@based/errors';
|
|
3
3
|
import { sendError } from '../../sendError.js';
|
|
4
|
-
export const basicFunction = async (route,
|
|
4
|
+
export const basicFunction = async ({ route, server, ctx, payload, spec }) => {
|
|
5
5
|
const send = (responseData, headers, status) => {
|
|
6
6
|
if (!ctx.session) {
|
|
7
7
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"basicFunction.js","sourceRoot":"","sources":["../../../src/incoming/http/basicFunction.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"basicFunction.js","sourceRoot":"","sources":["../../../src/incoming/http/basicFunction.ts"],"names":[],"mappings":"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"}
|