prostgles-server 4.2.420 → 4.2.421
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.js +1 -1
- package/dist/DBSchemaBuilder/getServerFunctionReturnTypes.js.map +1 -1
- package/dist/PublishParser/defineServerFunction.d.ts +26 -0
- package/dist/PublishParser/defineServerFunction.d.ts.map +1 -1
- package/dist/PublishParser/defineServerFunction.js +15 -1
- package/dist/PublishParser/defineServerFunction.js.map +1 -1
- package/lib/DBSchemaBuilder/getServerFunctionReturnTypes.ts +1 -1
- package/lib/PublishParser/defineServerFunction.ts +55 -0
- package/package.json +1 -1
|
@@ -45,7 +45,7 @@ const getServerFunctionReturnTypes = (instancePath) => {
|
|
|
45
45
|
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
|
|
46
46
|
finalRunReturnType.symbol?.valueDeclaration &&
|
|
47
47
|
ts.isFunctionLike(finalRunReturnType.symbol.valueDeclaration)) {
|
|
48
|
-
finalRunReturnType =
|
|
48
|
+
finalRunReturnType = unwrapMaybePromise(checker.getReturnTypeOfSignature(finalRunReturnType.getCallSignatures()[0]));
|
|
49
49
|
}
|
|
50
50
|
if (finalRunReturnType) {
|
|
51
51
|
const resolvedReturnType = (0, resolveTypeToStructure_1.resolveTypeToStructure)(globalBuiltins, prop.getName(), checker, finalRunReturnType);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getServerFunctionReturnTypes.js","sourceRoot":"","sources":["../../lib/DBSchemaBuilder/getServerFunctionReturnTypes.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"getServerFunctionReturnTypes.js","sourceRoot":"","sources":["../../lib/DBSchemaBuilder/getServerFunctionReturnTypes.ts"],"names":[],"mappings":";;;AAAA,iCAAiC;AACjC,+BAA+B;AAC/B,qEAAkE;AAClE,mEAAgE;AAEzD,MAAM,4BAA4B,GAAG,CAAC,YAAoB,EAAuB,EAAE;IACxF,MAAM,UAAU,GAAG,EAAE,CAAC,cAAc,CAAC,IAAA,cAAO,EAAC,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IACzF,IAAI,CAAC,UAAU;QAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAE5D,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5E,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,0BAA0B,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,EAAE,IAAA,cAAO,EAAC,UAAU,CAAC,CAAC,CAAC;IAElG,MAAM,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACrD,MAAM,OAAO,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IACzC,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;IACvD,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IAEzC,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,0BAA0B,YAAY,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,MAAM,cAAc,GAAG,IAAA,6CAAqB,EAAC,YAAY,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAE7E,IAAI,UAAU,CAAC,iBAAiB,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,sCAAsC,YAAY,EAAE,CAAC,CAAC;IACxE,CAAC;IAED,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,SAAS,KAAK,CAAC,IAAI;QAC7C,IACE,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC;YACzB,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC;YAChC,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,WAAW,EACpC,CAAC;YACD,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAC9B,IAAI,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,yBAAyB,CAAC,GAAG,CAAC;gBAAE,OAAO;YAEvD,MAAM,MAAM,GAAG,GAAG,CAAC,UAAU,CAAC,IAAI,CAChC,CAAC,CAAC,EAA8B,EAAE,CAChC,EAAE,CAAC,oBAAoB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,WAAW,CACvF,CAAC;YACF,IAAI,CAAC,MAAM;gBAAE,OAAO;YAEpB,MAAM,aAAa,GAAG,MAAM,CAAC,WAAW,CAAC;YACzC,MAAM,UAAU,GAAG,mBAAmB,CAAC,aAAa,CAAC,CAAC;YAEtD,IAAI,CAAC,UAAU;gBAAE,OAAO;YAExB,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,mBAAmB,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC3D,MAAM,QAAQ,GAAG,OAAO,CAAC,yBAAyB,CAChD,IAAI,EACJ,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,YAAa,CAAC,CAAC,CAAE,CAChD,CAAC;gBACF,MAAM,aAAa,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;gBAEjD,8CAA8C;gBAC9C,IAAI,kBAAkB,GAAG,aAAa,CAAC;gBACvC,OACE,kBAAkB;oBAClB,uEAAuE;oBACvE,kBAAkB,CAAC,MAAM,EAAE,gBAAgB;oBAC3C,EAAE,CAAC,cAAc,CAAC,kBAAkB,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAC7D,CAAC;oBACD,kBAAkB,GAAG,kBAAkB,CACrC,OAAO,CAAC,wBAAwB,CAAC,kBAAkB,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAE,CAAC,CAC7E,CAAC;gBACJ,CAAC;gBAED,IAAI,kBAAkB,EAAE,CAAC;oBACvB,MAAM,kBAAkB,GAAG,IAAA,+CAAsB,EAC/C,cAAc,EACd,IAAI,CAAC,OAAO,EAAE,EACd,OAAO,EACP,kBAAkB,CACnB,CAAC;oBACF,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,kBAAkB,CAAC,CAAC;gBACjD,CAAC;YACH,CAAC;QACH,CAAC;QAED,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC/B,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;IAEd,qFAAqF;IACrF,SAAS,mBAAmB,CAAC,IAAmB;QAC9C,IAAI,CAAC,GAAG,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAExC,sDAAsD;QACtD,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,iBAAiB,EAAE,CAAC;QACpC,IAAI,GAAG,EAAE,CAAC;YACR,CAAC,GAAG,kBAAkB,CAAC,OAAO,CAAC,wBAAwB,CAAC,GAAG,CAAC,CAAC,CAAC;QAChE,CAAC;QAED,uBAAuB;QACvB,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;QAClC,OAAO,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IACpC,CAAC;IAED,8DAA8D;IAC9D,SAAS,gBAAgB,CAAC,SAAkB;QAC1C,MAAM,SAAS,GAAG,OAAO,CAAC,iBAAiB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAC9D,IAAI,CAAC,SAAS;YAAE,OAAO;QAEvB,IAAI,OAAO,GAAG,OAAO,CAAC,yBAAyB,CAC7C,SAAS,EACT,SAAS,CAAC,gBAAgB,IAAI,SAAS,CAAC,YAAa,CAAC,CAAC,CAAE,CAC1D,CAAC;QAEF,0DAA0D;QAC1D,OAAO,GAAG,OAAO,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAE9C,yCAAyC;QAEzC,MAAM,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;QAC1C,IAAI,CAAC,GAAG;YAAE,OAAO;QAEjB,OAAO,kBAAkB,CAAC,OAAO,CAAC,wBAAwB,CAAC,GAAG,CAAC,CAAC,CAAC;IACnE,CAAC;IAED,gDAAgD;IAChD,SAAS,kBAAkB,CAAC,IAAa;QACvC,MAAM,OAAO,GAAG,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC7C,OAAO,OAAO,IAAI,IAAI,CAAC;IACzB,CAAC;AACH,CAAC,CAAC;AAxHW,QAAA,4BAA4B,gCAwHvC"}
|
|
@@ -35,4 +35,30 @@ context: Context | undefined) => <Input extends Record<string, JSONB.FieldType>
|
|
|
35
35
|
input?: Input;
|
|
36
36
|
description?: string;
|
|
37
37
|
};
|
|
38
|
+
type InputOf<T> = T extends {
|
|
39
|
+
input?: infer I;
|
|
40
|
+
} ? I : undefined;
|
|
41
|
+
type SafeInput<I> = I extends Record<string, JSONB.FieldType> ? I : undefined;
|
|
42
|
+
type ServerFunctionArgsFrom<Context, Def> = {
|
|
43
|
+
input?: InputOf<Def>;
|
|
44
|
+
description?: string;
|
|
45
|
+
run: (args: JSONBObjectTypeIfDefined<SafeInput<InputOf<Def>>>, context: Context) => MaybePromise<any>;
|
|
46
|
+
};
|
|
47
|
+
type ServerFunctionBlock<Context, Defs> = {
|
|
48
|
+
[K in keyof Defs]: ServerFunctionArgsFrom<Context, Defs[K]>;
|
|
49
|
+
};
|
|
50
|
+
type WrappedDef<Context, Def> = Def extends ({
|
|
51
|
+
input?: infer I;
|
|
52
|
+
description?: infer D;
|
|
53
|
+
run: (a: any, c: Context) => infer R;
|
|
54
|
+
}) ? {
|
|
55
|
+
input?: SafeInput<I>;
|
|
56
|
+
description?: D extends string ? D : string | undefined;
|
|
57
|
+
run: undefined | ((a: any) => R);
|
|
58
|
+
} : never;
|
|
59
|
+
type WrappedBlock<Context, Defs> = {
|
|
60
|
+
[K in keyof Defs]: WrappedDef<Context, Defs[K]>;
|
|
61
|
+
};
|
|
62
|
+
export declare const createServerFunctionBlockWithContext: <Context>(context: Context | undefined) => <const Defs extends Record<string, any>>(defs: Defs & ServerFunctionBlock<Context, Defs>) => WrappedBlock<Context, Defs>;
|
|
63
|
+
export {};
|
|
38
64
|
//# sourceMappingURL=defineServerFunction.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defineServerFunction.d.ts","sourceRoot":"","sources":["../../lib/PublishParser/defineServerFunction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,wBAAwB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACrF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE5D,MAAM,MAAM,wBAAwB,GAAG;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;IACpD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,GAAG,EAAE,SAAS,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,KAAK,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;CACzF,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAC/B,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,SAAS,GAAG,SAAS,EACtE,MAAM;IACN,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,GAAG,EAAE,SAAS,GAAG,CAAC,CAAC,IAAI,EAAE,wBAAwB,CAAC,MAAM,CAAC,KAAK,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;CACtF,KAAwB,wBAAwB,CAAC;AAElD,MAAM,MAAM,yBAAyB,CAAC,CAAC,GAAG,IAAI,EAAE,KAAK,SAAS,WAAW,GAAG,WAAW,IAAI;AACzF;;GAEG;AACH,MAAM,EAAE,SAAS,GAAG,aAAa,CAAC,CAAC,EAAE,KAAK,CAAC,KACxC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAAC,CAAC;AAE5D,eAAO,MAAM,+BAA+B,GAAI,OAAO;AACrD;;GAEG;AACH,SAAS,OAAO,GAAG,SAAS,MAG1B,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,SAAS,EACzD,GAAG,SAAS,CAAC,IAAI,EAAE,wBAAwB,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,OAAO,KAAK,YAAY,CAAC,GAAG,CAAC,EAC1F,MAAM;IACN,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,GAAG,EAAE,GAAG,CAAC;CACV;0BAKuB,GAAG,KAE0B,GAAG;YAV9C,KAAK;kBACC,MAAM;CAavB,CAAC"}
|
|
1
|
+
{"version":3,"file":"defineServerFunction.d.ts","sourceRoot":"","sources":["../../lib/PublishParser/defineServerFunction.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.createServerFunctionWithContext = exports.defineServerFunction = void 0;
|
|
3
|
+
exports.createServerFunctionBlockWithContext = exports.createServerFunctionWithContext = exports.defineServerFunction = void 0;
|
|
4
4
|
const defineServerFunction = (args) => args;
|
|
5
5
|
exports.defineServerFunction = defineServerFunction;
|
|
6
6
|
const createServerFunctionWithContext = (
|
|
@@ -17,4 +17,18 @@ context) => {
|
|
|
17
17
|
});
|
|
18
18
|
};
|
|
19
19
|
exports.createServerFunctionWithContext = createServerFunctionWithContext;
|
|
20
|
+
const createServerFunctionBlockWithContext = (context) => {
|
|
21
|
+
return (defs) => {
|
|
22
|
+
const wrapped = {};
|
|
23
|
+
for (const key in defs) {
|
|
24
|
+
const def = defs[key];
|
|
25
|
+
wrapped[key] = {
|
|
26
|
+
...def,
|
|
27
|
+
run: context === undefined ? undefined : (args) => def.run(args, context),
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
return wrapped;
|
|
31
|
+
};
|
|
32
|
+
};
|
|
33
|
+
exports.createServerFunctionBlockWithContext = createServerFunctionBlockWithContext;
|
|
20
34
|
//# sourceMappingURL=defineServerFunction.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defineServerFunction.js","sourceRoot":"","sources":["../../lib/PublishParser/defineServerFunction.ts"],"names":[],"mappings":";;;AAaO,MAAM,oBAAoB,GAAG,CAElC,IAOD,EAAE,EAAE,CAAC,IAA2C,CAAC;AATrC,QAAA,oBAAoB,wBASiB;AAS3C,MAAM,+BAA+B,GAAG;AAC7C;;GAEG;AACH,OAA4B,EAC5B,EAAE;IACF,OAAO,CAGL,IAID,EAAE,EAAE,CACH,CAAC;QACC,GAAG,IAAI;QACP,GAAG,EACD,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAClC,CAAC,aAAkB,EAAE,EAAE;YACrB,iEAAiE;YACjE,OAAO,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,OAAO,CAAQ,CAAC;QACjD,CAAC,CACF;KACJ,CAAoC,CAAC;AAC1C,CAAC,CAAC;AAxBW,QAAA,+BAA+B,mCAwB1C"}
|
|
1
|
+
{"version":3,"file":"defineServerFunction.js","sourceRoot":"","sources":["../../lib/PublishParser/defineServerFunction.ts"],"names":[],"mappings":";;;AAaO,MAAM,oBAAoB,GAAG,CAElC,IAOD,EAAE,EAAE,CAAC,IAA2C,CAAC;AATrC,QAAA,oBAAoB,wBASiB;AAS3C,MAAM,+BAA+B,GAAG;AAC7C;;GAEG;AACH,OAA4B,EAC5B,EAAE;IACF,OAAO,CAGL,IAID,EAAE,EAAE,CACH,CAAC;QACC,GAAG,IAAI;QACP,GAAG,EACD,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAClC,CAAC,aAAkB,EAAE,EAAE;YACrB,iEAAiE;YACjE,OAAO,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,OAAO,CAAQ,CAAC;QACjD,CAAC,CACF;KACJ,CAAoC,CAAC;AAC1C,CAAC,CAAC;AAxBW,QAAA,+BAA+B,mCAwB1C;AAuCK,MAAM,oCAAoC,GAAG,CAAU,OAA4B,EAAE,EAAE;IAC5F,OAAO,CACL,IAA+C,EAClB,EAAE;QAC/B,MAAM,OAAO,GAAG,EAAiC,CAAC;QAElD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,GAAG;gBACb,GAAG,GAAG;gBACN,GAAG,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC;aAC/E,CAAC;QACJ,CAAC;QAED,OAAO,OAA0D,CAAC;IACpE,CAAC,CAAC;AACJ,CAAC,CAAC;AAhBW,QAAA,oCAAoC,wCAgB/C"}
|
|
@@ -60,7 +60,7 @@ export const getServerFunctionReturnTypes = (instancePath: string): Map<string,
|
|
|
60
60
|
finalRunReturnType.symbol?.valueDeclaration &&
|
|
61
61
|
ts.isFunctionLike(finalRunReturnType.symbol.valueDeclaration)
|
|
62
62
|
) {
|
|
63
|
-
finalRunReturnType =
|
|
63
|
+
finalRunReturnType = unwrapMaybePromise(
|
|
64
64
|
checker.getReturnTypeOfSignature(finalRunReturnType.getCallSignatures()[0]!),
|
|
65
65
|
);
|
|
66
66
|
}
|
|
@@ -54,3 +54,58 @@ export const createServerFunctionWithContext = <Context>(
|
|
|
54
54
|
),
|
|
55
55
|
}) satisfies ServerFunctionDefinition;
|
|
56
56
|
};
|
|
57
|
+
|
|
58
|
+
type InputOf<T> = T extends { input?: infer I } ? I : undefined;
|
|
59
|
+
|
|
60
|
+
// if inference fails or is invalid → fall back to undefined
|
|
61
|
+
type SafeInput<I> = I extends Record<string, JSONB.FieldType> ? I : undefined;
|
|
62
|
+
|
|
63
|
+
type ServerFunctionArgsFrom<Context, Def> = {
|
|
64
|
+
input?: InputOf<Def>;
|
|
65
|
+
description?: string;
|
|
66
|
+
run: (
|
|
67
|
+
args: JSONBObjectTypeIfDefined<SafeInput<InputOf<Def>>>,
|
|
68
|
+
context: Context,
|
|
69
|
+
) => MaybePromise<any>;
|
|
70
|
+
};
|
|
71
|
+
|
|
72
|
+
type ServerFunctionBlock<Context, Defs> = {
|
|
73
|
+
[K in keyof Defs]: ServerFunctionArgsFrom<Context, Defs[K]>;
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
type WrappedDef<Context, Def> =
|
|
77
|
+
Def extends (
|
|
78
|
+
{
|
|
79
|
+
input?: infer I;
|
|
80
|
+
description?: infer D;
|
|
81
|
+
run: (a: any, c: Context) => infer R;
|
|
82
|
+
}
|
|
83
|
+
) ?
|
|
84
|
+
{
|
|
85
|
+
input?: SafeInput<I>;
|
|
86
|
+
description?: D extends string ? D : string | undefined;
|
|
87
|
+
run: undefined | ((a: any) => R); // keep return type, widen args
|
|
88
|
+
}
|
|
89
|
+
: never;
|
|
90
|
+
|
|
91
|
+
type WrappedBlock<Context, Defs> = {
|
|
92
|
+
[K in keyof Defs]: WrappedDef<Context, Defs[K]>;
|
|
93
|
+
};
|
|
94
|
+
|
|
95
|
+
export const createServerFunctionBlockWithContext = <Context>(context: Context | undefined) => {
|
|
96
|
+
return <const Defs extends Record<string, any>>(
|
|
97
|
+
defs: Defs & ServerFunctionBlock<Context, Defs>,
|
|
98
|
+
): WrappedBlock<Context, Defs> => {
|
|
99
|
+
const wrapped = {} as WrappedBlock<Context, Defs>;
|
|
100
|
+
|
|
101
|
+
for (const key in defs) {
|
|
102
|
+
const def = defs[key];
|
|
103
|
+
wrapped[key] = {
|
|
104
|
+
...def,
|
|
105
|
+
run: context === undefined ? undefined : (args: any) => def.run(args, context),
|
|
106
|
+
};
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
return wrapped satisfies Record<string, ServerFunctionDefinition>;
|
|
110
|
+
};
|
|
111
|
+
};
|