prostgles-server 4.2.635 → 4.2.636
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/DBSchemaBuilder/getServerFunctionReturnTypes.external.fixture.d.ts +2 -2
- package/dist/DBSchemaBuilder/getServerFunctionReturnTypes.fixture.d.ts +8 -8
- package/dist/PublishParser/defineServerFunction.d.ts +1 -1
- package/dist/PublishParser/defineServerFunction.d.ts.map +1 -1
- package/dist/PublishParser/defineServerFunction.spec.js +12 -0
- package/dist/PublishParser/defineServerFunction.spec.js.map +1 -1
- package/lib/PublishParser/defineServerFunction.spec.ts +17 -0
- package/lib/PublishParser/defineServerFunction.ts +1 -1
- package/package.json +1 -1
|
@@ -7,9 +7,9 @@ export declare const externalFunctions: {
|
|
|
7
7
|
description?: string;
|
|
8
8
|
run: (args: import("prostgles-types").JSONB.GetObjectType<{
|
|
9
9
|
value: "string";
|
|
10
|
-
}>, context: import("..").RestrictedFunctionContext<FixtureSchema, import("..").SessionUser,
|
|
10
|
+
}>, context: import("..").RestrictedFunctionContext<FixtureSchema, import("..").SessionUser, never>) => import("prostgles-types").MaybePromise<string>;
|
|
11
11
|
} & {
|
|
12
12
|
unrestrictedDbAccess?: undefined;
|
|
13
|
-
} & import("..").ServerFunctionContextMarker<FixtureSchema, import("..").SessionUser,
|
|
13
|
+
} & import("..").ServerFunctionContextMarker<FixtureSchema, import("..").SessionUser, never>;
|
|
14
14
|
};
|
|
15
15
|
//# sourceMappingURL=getServerFunctionReturnTypes.external.fixture.d.ts.map
|
|
@@ -35,17 +35,17 @@ export declare const stateServerFunctions: {
|
|
|
35
35
|
readonly recursiveResult: {
|
|
36
36
|
input?: Record<string, import("prostgles-types").JSONB.FieldType> | undefined;
|
|
37
37
|
description?: string;
|
|
38
|
-
run: (args: import("prostgles-types").JSONB.GetObjectType<Record<string, import("prostgles-types").JSONB.FieldType>>, context: import("..").RestrictedFunctionContext<FixtureSchema, import("..").SessionUser,
|
|
38
|
+
run: (args: import("prostgles-types").JSONB.GetObjectType<Record<string, import("prostgles-types").JSONB.FieldType>>, context: import("..").RestrictedFunctionContext<FixtureSchema, import("..").SessionUser, never>) => import("prostgles-types").MaybePromise<RecursiveResult>;
|
|
39
39
|
} & {
|
|
40
40
|
unrestrictedDbAccess?: undefined;
|
|
41
|
-
} & import("..").ServerFunctionContextMarker<FixtureSchema, import("..").SessionUser,
|
|
41
|
+
} & import("..").ServerFunctionContextMarker<FixtureSchema, import("..").SessionUser, never>;
|
|
42
42
|
readonly sampleSchemas: {
|
|
43
43
|
input?: Record<string, import("prostgles-types").JSONB.FieldType> | undefined;
|
|
44
44
|
description?: string;
|
|
45
|
-
run: (args: import("prostgles-types").JSONB.GetObjectType<Record<string, import("prostgles-types").JSONB.FieldType>>, context: import("..").RestrictedFunctionContext<FixtureSchema, import("..").SessionUser,
|
|
45
|
+
run: (args: import("prostgles-types").JSONB.GetObjectType<Record<string, import("prostgles-types").JSONB.FieldType>>, context: import("..").RestrictedFunctionContext<FixtureSchema, import("..").SessionUser, never>) => import("prostgles-types").MaybePromise<SampleSchema[]>;
|
|
46
46
|
} & {
|
|
47
47
|
unrestrictedDbAccess?: undefined;
|
|
48
|
-
} & import("..").ServerFunctionContextMarker<FixtureSchema, import("..").SessionUser,
|
|
48
|
+
} & import("..").ServerFunctionContextMarker<FixtureSchema, import("..").SessionUser, never>;
|
|
49
49
|
readonly scalarResult: {
|
|
50
50
|
input?: {
|
|
51
51
|
value: "number";
|
|
@@ -53,10 +53,10 @@ export declare const stateServerFunctions: {
|
|
|
53
53
|
description?: string;
|
|
54
54
|
run: (args: import("prostgles-types").JSONB.GetObjectType<{
|
|
55
55
|
value: "number";
|
|
56
|
-
}>, context: import("..").RestrictedFunctionContext<FixtureSchema, import("..").SessionUser,
|
|
56
|
+
}>, context: import("..").RestrictedFunctionContext<FixtureSchema, import("..").SessionUser, never>) => import("prostgles-types").MaybePromise<number>;
|
|
57
57
|
} & {
|
|
58
58
|
unrestrictedDbAccess?: undefined;
|
|
59
|
-
} & import("..").ServerFunctionContextMarker<FixtureSchema, import("..").SessionUser,
|
|
59
|
+
} & import("..").ServerFunctionContextMarker<FixtureSchema, import("..").SessionUser, never>;
|
|
60
60
|
};
|
|
61
61
|
};
|
|
62
62
|
external: {
|
|
@@ -71,10 +71,10 @@ export declare const stateServerFunctions: {
|
|
|
71
71
|
description?: string;
|
|
72
72
|
run: (args: import("prostgles-types").JSONB.GetObjectType<{
|
|
73
73
|
value: "string";
|
|
74
|
-
}>, context: import("..").RestrictedFunctionContext<FixtureSchema, import("..").SessionUser,
|
|
74
|
+
}>, context: import("..").RestrictedFunctionContext<FixtureSchema, import("..").SessionUser, never>) => import("prostgles-types").MaybePromise<string>;
|
|
75
75
|
} & {
|
|
76
76
|
unrestrictedDbAccess?: undefined;
|
|
77
|
-
} & import("..").ServerFunctionContextMarker<FixtureSchema, import("..").SessionUser,
|
|
77
|
+
} & import("..").ServerFunctionContextMarker<FixtureSchema, import("..").SessionUser, never>;
|
|
78
78
|
};
|
|
79
79
|
};
|
|
80
80
|
};
|
|
@@ -25,7 +25,7 @@ export type ServerFunctionDefinition = {
|
|
|
25
25
|
};
|
|
26
26
|
declare const serverFunctionContext: unique symbol;
|
|
27
27
|
export type ServerFunctionContextMarker<S, SUser extends SessionUser, Context = undefined> = {
|
|
28
|
-
[serverFunctionContext]?: [S, SUser, Context];
|
|
28
|
+
[serverFunctionContext]?: [S, SUser, [Context] extends [undefined] ? never : Context];
|
|
29
29
|
};
|
|
30
30
|
type DefineFunctionArgs<TInput extends Record<string, JSONB.FieldType> | undefined, Context, Return> = {
|
|
31
31
|
input?: TInput;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defineServerFunction.d.ts","sourceRoot":"","sources":["../../lib/PublishParser/defineServerFunction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,QAAQ,EACR,UAAU,EACV,KAAK,EACL,wBAAwB,EACxB,YAAY,EACZ,UAAU,EACX,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAC7F,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE5D,KAAK,mBAAmB,CAAC,CAAC,EAAE,KAAK,SAAS,WAAW,EAAE,OAAO,IAAI,IAAI,CACpE,aAAa,CAAC,CAAC,EAAE,KAAK,CAAC,EACvB,QAAQ,GAAG,WAAW,GAAG,YAAY,CACtC,GAAG;IACF,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,CAAC,SAAS,QAAQ,GACtB,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,SAAS,SAAS,GACrC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,GAC/B,KAAK,CAAC,MAAM,CAAC,GACf,KAAK,CAAC,MAAM,CAAC,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,yBAAyB,CACnC,CAAC,GAAG,IAAI,EACR,KAAK,SAAS,WAAW,GAAG,WAAW,EACvC,OAAO,GAAG,SAAS,IACjB,mBAAmB,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,GAAG;IAC3C,GAAG,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,2BAA2B,CACrC,CAAC,GAAG,IAAI,EACR,KAAK,SAAS,WAAW,GAAG,WAAW,EACvC,OAAO,GAAG,SAAS,IACjB,mBAAmB,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,GAAG;IAC3C,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;IACtB,EAAE,EAAE,EAAE,CAAC;IACP,GAAG,EAAE,UAAU,CAAC;IAChB,mBAAmB,EAAE,aAAa,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,qBAAqB,CAAC,CAAC;CACrE,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAC7B,yBAAyB,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,GACrD,2BAA2B,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;AAE5D,MAAM,MAAM,wBAAwB,GAAG;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IACxC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB,CAAC,EAAE,IAAI,CAAC;IAC5B,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,YAAY,CAAC,OAAO,CAAC,CAAC;CAChD,CAAC;AAEF,OAAO,CAAC,MAAM,qBAAqB,EAAE,OAAO,MAAM,CAAC;AACnD,MAAM,MAAM,2BAA2B,CACrC,CAAC,EACD,KAAK,SAAS,WAAW,EACzB,OAAO,GAAG,SAAS,IACjB;IACF,CAAC,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"defineServerFunction.d.ts","sourceRoot":"","sources":["../../lib/PublishParser/defineServerFunction.ts"],"names":[],"mappings":"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"}
|
|
@@ -46,6 +46,7 @@ void (0, node_test_1.describe)("defineFunction type test", async () => {
|
|
|
46
46
|
defineContextFunctions({
|
|
47
47
|
userFilter: { type: "public" },
|
|
48
48
|
functions: {
|
|
49
|
+
...functions,
|
|
49
50
|
getContextItem: (0, defineServerFunction_1.defineFunction)({
|
|
50
51
|
run: (_args, { context, dbo }) => {
|
|
51
52
|
void dbo.items.find();
|
|
@@ -54,6 +55,16 @@ void (0, node_test_1.describe)("defineFunction type test", async () => {
|
|
|
54
55
|
}),
|
|
55
56
|
},
|
|
56
57
|
});
|
|
58
|
+
const otherContextFunctions = (0, defineServerFunction_1.createFunctionsDefinerWithContext)()({
|
|
59
|
+
getOtherContextItem: (0, defineServerFunction_1.defineFunction)({
|
|
60
|
+
run: (_args, { context }) => context.otherService,
|
|
61
|
+
}),
|
|
62
|
+
});
|
|
63
|
+
defineContextFunctions({
|
|
64
|
+
userFilter: { type: "public" },
|
|
65
|
+
// @ts-expect-error Context-dependent functions must use the configured context.
|
|
66
|
+
functions: otherContextFunctions,
|
|
67
|
+
});
|
|
57
68
|
const contextualHooks = {
|
|
58
69
|
items: {
|
|
59
70
|
afterEach: [
|
|
@@ -74,6 +85,7 @@ void (0, node_test_1.describe)("defineFunction type test", async () => {
|
|
|
74
85
|
createContext: () => ({
|
|
75
86
|
serviceManager: { getService: (name) => name },
|
|
76
87
|
}),
|
|
88
|
+
functions: { test: group },
|
|
77
89
|
onReady: ({ context }) => {
|
|
78
90
|
context.serviceManager.getService("documents");
|
|
79
91
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defineServerFunction.spec.js","sourceRoot":"","sources":["../../lib/PublishParser/defineServerFunction.spec.ts"],"names":[],"mappings":";;AAAA,yCAA2C;AAC3C,
|
|
1
|
+
{"version":3,"file":"defineServerFunction.spec.js","sourceRoot":"","sources":["../../lib/PublishParser/defineServerFunction.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ import {
|
|
|
4
4
|
createFunctionGroupDefiner,
|
|
5
5
|
createFunctionGroupDefinerWithContext,
|
|
6
6
|
createFunctionsDefiner,
|
|
7
|
+
createFunctionsDefinerWithContext,
|
|
7
8
|
} from "./defineServerFunction";
|
|
8
9
|
import type { TableHooks } from "../TableHooks/TableHooks";
|
|
9
10
|
import { createProstgles } from "../index";
|
|
@@ -70,6 +71,7 @@ void describe("defineFunction type test", async () => {
|
|
|
70
71
|
defineContextFunctions({
|
|
71
72
|
userFilter: { type: "public" },
|
|
72
73
|
functions: {
|
|
74
|
+
...functions,
|
|
73
75
|
getContextItem: defineFunction({
|
|
74
76
|
run: (_args, { context, dbo }) => {
|
|
75
77
|
void dbo.items.find();
|
|
@@ -79,6 +81,20 @@ void describe("defineFunction type test", async () => {
|
|
|
79
81
|
},
|
|
80
82
|
});
|
|
81
83
|
|
|
84
|
+
const otherContextFunctions = createFunctionsDefinerWithContext<
|
|
85
|
+
TestSchema,
|
|
86
|
+
{ otherService: string }
|
|
87
|
+
>()({
|
|
88
|
+
getOtherContextItem: defineFunction({
|
|
89
|
+
run: (_args, { context }) => context.otherService,
|
|
90
|
+
}),
|
|
91
|
+
});
|
|
92
|
+
defineContextFunctions({
|
|
93
|
+
userFilter: { type: "public" },
|
|
94
|
+
// @ts-expect-error Context-dependent functions must use the configured context.
|
|
95
|
+
functions: otherContextFunctions,
|
|
96
|
+
});
|
|
97
|
+
|
|
82
98
|
const contextualHooks: TableHooks<TestSchema, AppContext> = {
|
|
83
99
|
items: {
|
|
84
100
|
afterEach: [
|
|
@@ -101,6 +117,7 @@ void describe("defineFunction type test", async () => {
|
|
|
101
117
|
createContext: () => ({
|
|
102
118
|
serviceManager: { getService: (name: string) => name },
|
|
103
119
|
}),
|
|
120
|
+
functions: { test: group },
|
|
104
121
|
onReady: ({ context }) => {
|
|
105
122
|
context.serviceManager.getService("documents");
|
|
106
123
|
},
|
|
@@ -60,7 +60,7 @@ export type ServerFunctionContextMarker<
|
|
|
60
60
|
SUser extends SessionUser,
|
|
61
61
|
Context = undefined,
|
|
62
62
|
> = {
|
|
63
|
-
[serverFunctionContext]?: [S, SUser, Context];
|
|
63
|
+
[serverFunctionContext]?: [S, SUser, [Context] extends [undefined] ? never : Context];
|
|
64
64
|
};
|
|
65
65
|
|
|
66
66
|
type DefineFunctionArgs<
|