@convex-dev/workpool 0.2.17 → 0.2.18-alpha.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/commonjs/client/index.d.ts +12 -12
- package/dist/commonjs/client/index.d.ts.map +1 -1
- package/dist/commonjs/client/index.js +10 -8
- package/dist/commonjs/client/index.js.map +1 -1
- package/dist/commonjs/client/utils.d.ts +5 -5
- package/dist/commonjs/client/utils.d.ts.map +1 -1
- package/dist/commonjs/client/utils.js +8 -1
- package/dist/commonjs/client/utils.js.map +1 -1
- package/dist/commonjs/component/danger.d.ts.map +1 -1
- package/dist/commonjs/component/danger.js +1 -1
- package/dist/commonjs/component/danger.js.map +1 -1
- package/dist/esm/client/index.d.ts +12 -12
- package/dist/esm/client/index.d.ts.map +1 -1
- package/dist/esm/client/index.js +10 -8
- package/dist/esm/client/index.js.map +1 -1
- package/dist/esm/client/utils.d.ts +5 -5
- package/dist/esm/client/utils.d.ts.map +1 -1
- package/dist/esm/client/utils.js +8 -1
- package/dist/esm/client/utils.js.map +1 -1
- package/dist/esm/component/danger.d.ts.map +1 -1
- package/dist/esm/component/danger.js +1 -1
- package/dist/esm/component/danger.js.map +1 -1
- package/package.json +3 -3
- package/src/client/index.ts +19 -19
- package/src/client/utils.ts +27 -7
- package/src/component/danger.ts +2 -10
|
@@ -2,10 +2,10 @@ import { DefaultFunctionArgs, FunctionReference, FunctionVisibility, GenericData
|
|
|
2
2
|
import { Infer, Validator, VAny, VString } from "convex/values";
|
|
3
3
|
import { Mounts } from "../component/_generated/api.js";
|
|
4
4
|
import { type LogLevel } from "../component/logging.js";
|
|
5
|
-
import {
|
|
5
|
+
import { vResultValidator, type RetryBehavior, RunResult, Status } from "../component/shared.js";
|
|
6
6
|
import { RunMutationCtx, RunQueryCtx, UseApi } from "./utils.js";
|
|
7
|
-
export { vResultValidator, type RunResult, type RetryBehavior
|
|
8
|
-
export { retryBehavior as vRetryBehavior
|
|
7
|
+
export { vResultValidator, type RunResult, type RetryBehavior };
|
|
8
|
+
export { retryBehavior as vRetryBehavior } from "../component/shared.js";
|
|
9
9
|
export { logLevel as vLogLevel, type LogLevel } from "../component/logging.js";
|
|
10
10
|
export type WorkId = string & {
|
|
11
11
|
__isWorkId: true;
|
|
@@ -103,7 +103,7 @@ export declare class Workpool {
|
|
|
103
103
|
* });
|
|
104
104
|
* ```
|
|
105
105
|
*/
|
|
106
|
-
defineOnComplete<DataModel extends GenericDataModel, V extends Validator<any,
|
|
106
|
+
defineOnComplete<DataModel extends GenericDataModel, V extends Validator<any, any, any> = VAny<any, "optional">>({ context, handler, }: {
|
|
107
107
|
context?: V;
|
|
108
108
|
handler: (ctx: GenericMutationCtx<DataModel>, args: {
|
|
109
109
|
workId: WorkId;
|
|
@@ -117,7 +117,7 @@ export declare class Workpool {
|
|
|
117
117
|
* To be used like:
|
|
118
118
|
* ```ts
|
|
119
119
|
* export const myOnComplete = internalMutation({
|
|
120
|
-
* args:
|
|
120
|
+
* args: vOnCompleteArgs(v.string()),
|
|
121
121
|
* handler: async (ctx, {workId, context, result}) => {
|
|
122
122
|
* // context has been validated as a string
|
|
123
123
|
* // ... do something with the result
|
|
@@ -126,9 +126,9 @@ export declare class Workpool {
|
|
|
126
126
|
* @param context - The context validator. If not provided, it will be `v.any()`.
|
|
127
127
|
* @returns The validator for the onComplete mutation.
|
|
128
128
|
*/
|
|
129
|
-
export declare function
|
|
129
|
+
export declare function vOnCompleteArgs<V extends Validator<any, "required", any> = VAny>(context?: V): import("convex/values").VObject<import("convex/server").Expand<{ [Property in (VAny<any, "optional", string> | V)["isOptional"] extends "optional" ? "context" : never]?: Exclude<Infer<{
|
|
130
130
|
workId: VString<WorkId, "required">;
|
|
131
|
-
context: VAny<any, "
|
|
131
|
+
context: VAny<any, "optional", string> | V;
|
|
132
132
|
result: import("convex/values").VUnion<{
|
|
133
133
|
kind: "success";
|
|
134
134
|
returnValue: any;
|
|
@@ -154,9 +154,9 @@ export declare function vOnCompleteValidator<V extends Validator<any, "required"
|
|
|
154
154
|
}, {
|
|
155
155
|
kind: import("convex/values").VLiteral<"canceled", "required">;
|
|
156
156
|
}, "required", "kind">], "required", "kind" | "returnValue" | `returnValue.${string}` | "error">;
|
|
157
|
-
}[Property]>, undefined> | undefined; } & { [Property_1 in Exclude<"context", (VAny<any, "
|
|
157
|
+
}[Property]>, undefined> | undefined; } & { [Property_1 in Exclude<"context", (VAny<any, "optional", string> | V)["isOptional"] extends "optional" ? "context" : never> | Exclude<"workId", (VAny<any, "optional", string> | V)["isOptional"] extends "optional" ? "context" : never> | Exclude<"result", (VAny<any, "optional", string> | V)["isOptional"] extends "optional" ? "context" : never>]: Infer<{
|
|
158
158
|
workId: VString<WorkId, "required">;
|
|
159
|
-
context: VAny<any, "
|
|
159
|
+
context: VAny<any, "optional", string> | V;
|
|
160
160
|
result: import("convex/values").VUnion<{
|
|
161
161
|
kind: "success";
|
|
162
162
|
returnValue: any;
|
|
@@ -184,7 +184,7 @@ export declare function vOnCompleteValidator<V extends Validator<any, "required"
|
|
|
184
184
|
}, "required", "kind">], "required", "kind" | "returnValue" | `returnValue.${string}` | "error">;
|
|
185
185
|
}[Property_1]>; }>, {
|
|
186
186
|
workId: VString<WorkId, "required">;
|
|
187
|
-
context: VAny<any, "
|
|
187
|
+
context: VAny<any, "optional", string> | V;
|
|
188
188
|
result: import("convex/values").VUnion<{
|
|
189
189
|
kind: "success";
|
|
190
190
|
returnValue: any;
|
|
@@ -210,7 +210,7 @@ export declare function vOnCompleteValidator<V extends Validator<any, "required"
|
|
|
210
210
|
}, {
|
|
211
211
|
kind: import("convex/values").VLiteral<"canceled", "required">;
|
|
212
212
|
}, "required", "kind">], "required", "kind" | "returnValue" | `returnValue.${string}` | "error">;
|
|
213
|
-
}, "required", "context" | "workId" | "result" | `context.${(VAny<any, "
|
|
213
|
+
}, "required", "context" | "workId" | "result" | `context.${(VAny<any, "optional", string> | V)["fieldPaths"]}` | "result.kind" | "result.returnValue" | `result.returnValue.${string}` | "result.error">;
|
|
214
214
|
export type NameOption = {
|
|
215
215
|
/**
|
|
216
216
|
* The name of the function. By default, if you pass in api.foo.bar.baz,
|
|
@@ -286,7 +286,7 @@ export type CallbackOptions = {
|
|
|
286
286
|
* or more manually:
|
|
287
287
|
* ```ts
|
|
288
288
|
* export const completion = internalMutation({
|
|
289
|
-
* args:
|
|
289
|
+
* args: vOnCompleteArgs(v.string()),
|
|
290
290
|
* handler: async (ctx, args) => {
|
|
291
291
|
* console.log(args.result, "Got Context back -> ", args.context, Date.now() - args.context);
|
|
292
292
|
* },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,mBAAmB,EAEnB,iBAAiB,EAEjB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { createFunctionHandle,
|
|
1
|
+
import { createFunctionHandle, internalMutationGeneric, } from "convex/server";
|
|
2
2
|
import { v } from "convex/values";
|
|
3
3
|
import { DEFAULT_LOG_LEVEL } from "../component/logging.js";
|
|
4
4
|
import { DEFAULT_MAX_PARALLELISM, vResultValidator, } from "../component/shared.js";
|
|
5
|
-
|
|
6
|
-
export {
|
|
5
|
+
import { safeFunctionName, } from "./utils.js";
|
|
6
|
+
export { vResultValidator };
|
|
7
|
+
export { retryBehavior as vRetryBehavior } from "../component/shared.js";
|
|
7
8
|
export { logLevel as vLogLevel } from "../component/logging.js";
|
|
8
9
|
export const vWorkIdValidator = v.string();
|
|
9
10
|
export {
|
|
@@ -166,7 +167,7 @@ export class Workpool {
|
|
|
166
167
|
*/
|
|
167
168
|
defineOnComplete({ context, handler, }) {
|
|
168
169
|
return internalMutationGeneric({
|
|
169
|
-
args:
|
|
170
|
+
args: vOnCompleteArgs(context),
|
|
170
171
|
handler,
|
|
171
172
|
});
|
|
172
173
|
}
|
|
@@ -176,7 +177,7 @@ export class Workpool {
|
|
|
176
177
|
* To be used like:
|
|
177
178
|
* ```ts
|
|
178
179
|
* export const myOnComplete = internalMutation({
|
|
179
|
-
* args:
|
|
180
|
+
* args: vOnCompleteArgs(v.string()),
|
|
180
181
|
* handler: async (ctx, {workId, context, result}) => {
|
|
181
182
|
* // context has been validated as a string
|
|
182
183
|
* // ... do something with the result
|
|
@@ -185,15 +186,16 @@ export class Workpool {
|
|
|
185
186
|
* @param context - The context validator. If not provided, it will be `v.any()`.
|
|
186
187
|
* @returns The validator for the onComplete mutation.
|
|
187
188
|
*/
|
|
188
|
-
export function
|
|
189
|
+
export function vOnCompleteArgs(context) {
|
|
189
190
|
return v.object({
|
|
190
191
|
workId: vWorkIdValidator,
|
|
191
|
-
context: context ?? v.any(),
|
|
192
|
+
context: context ?? v.optional(v.any()),
|
|
192
193
|
result: vResultValidator,
|
|
193
194
|
});
|
|
194
195
|
}
|
|
195
196
|
// ensure OnCompleteArgs satisfies SharedOnCompleteArgs
|
|
196
197
|
const _ = {};
|
|
198
|
+
const _2 = {};
|
|
197
199
|
//
|
|
198
200
|
// Helper functions
|
|
199
201
|
//
|
|
@@ -211,7 +213,7 @@ function getRetryBehavior(defaultRetryBehavior, retryActionsByDefault, retryOver
|
|
|
211
213
|
async function defaultEnqueueArgs(fn, name, { logLevel, maxParallelism }) {
|
|
212
214
|
const [fnHandle, fnName] = typeof fn === "string" && fn.startsWith("function://")
|
|
213
215
|
? [fn, name ?? fn]
|
|
214
|
-
: [await createFunctionHandle(fn), name ??
|
|
216
|
+
: [await createFunctionHandle(fn), name ?? safeFunctionName(fn)];
|
|
215
217
|
return {
|
|
216
218
|
fnHandle,
|
|
217
219
|
fnName,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EAQpB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import { Expand, FunctionReference,
|
|
1
|
+
import { Expand, FunctionArgs, FunctionReference, FunctionReturnType, FunctionType, FunctionVisibility } from "convex/server";
|
|
2
2
|
import { GenericId } from "convex/values";
|
|
3
|
-
import { GenericDataModel } from "convex/server";
|
|
4
3
|
export type RunQueryCtx = {
|
|
5
|
-
runQuery:
|
|
4
|
+
runQuery: <Query extends FunctionReference<"query", "internal">>(query: Query, args: FunctionArgs<Query>) => Promise<FunctionReturnType<Query>>;
|
|
6
5
|
};
|
|
7
|
-
export type RunMutationCtx = {
|
|
8
|
-
runMutation:
|
|
6
|
+
export type RunMutationCtx = RunQueryCtx & {
|
|
7
|
+
runMutation: <Mutation extends FunctionReference<"mutation", "internal">>(mutation: Mutation, args: FunctionArgs<Mutation>) => Promise<FunctionReturnType<Mutation>>;
|
|
9
8
|
};
|
|
10
9
|
export type OpaqueIds<T> = T extends GenericId<infer _T> ? string : T extends (infer U)[] ? OpaqueIds<U>[] : T extends object ? {
|
|
11
10
|
[K in keyof T]: OpaqueIds<T[K]>;
|
|
@@ -13,4 +12,5 @@ export type OpaqueIds<T> = T extends GenericId<infer _T> ? string : T extends (i
|
|
|
13
12
|
export type UseApi<API> = Expand<{
|
|
14
13
|
[mod in keyof API]: API[mod] extends FunctionReference<infer FType, "public", infer FArgs, infer FReturnType, infer FComponentPath> ? FunctionReference<FType, "internal", OpaqueIds<FArgs>, OpaqueIds<FReturnType>, FComponentPath> : UseApi<API[mod]>;
|
|
15
14
|
}>;
|
|
15
|
+
export declare function safeFunctionName(f: FunctionReference<FunctionType, FunctionVisibility>): any;
|
|
16
16
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/client/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,iBAAiB,EACjB,kBAAkB,EAClB,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/client/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,YAAY,EACZ,kBAAkB,EAGnB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAI1C,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,EAAE,CAAC,KAAK,SAAS,iBAAiB,CAAC,OAAO,EAAE,UAAU,CAAC,EAC7D,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,YAAY,CAAC,KAAK,CAAC,KACtB,OAAO,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC;CACzC,CAAC;AACF,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG;IACzC,WAAW,EAAE,CAAC,QAAQ,SAAS,iBAAiB,CAAC,UAAU,EAAE,UAAU,CAAC,EACtE,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC,KACzB,OAAO,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC;CAC5C,CAAC;AAEF,MAAM,MAAM,SAAS,CAAC,CAAC,IACrB,CAAC,SAAS,SAAS,CAAC,MAAM,EAAE,CAAC,GACzB,MAAM,GACN,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,GACnB,SAAS,CAAC,CAAC,CAAC,EAAE,GACd,CAAC,SAAS,MAAM,GACd;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,GACnC,CAAC,CAAC;AAEZ,MAAM,MAAM,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC;KAC9B,GAAG,IAAI,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,SAAS,iBAAiB,CACpD,MAAM,KAAK,EACX,QAAQ,EACR,MAAM,KAAK,EACX,MAAM,WAAW,EACjB,MAAM,cAAc,CACrB,GACG,iBAAiB,CACf,KAAK,EACL,UAAU,EACV,SAAS,CAAC,KAAK,CAAC,EAChB,SAAS,CAAC,WAAW,CAAC,EACtB,cAAc,CACf,GACD,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;CACrB,CAAC,CAAC;AAEH,wBAAgB,gBAAgB,CAC9B,CAAC,EAAE,iBAAiB,CAAC,YAAY,EAAE,kBAAkB,CAAC,OASvD"}
|
|
@@ -1,2 +1,9 @@
|
|
|
1
|
-
|
|
1
|
+
import { getFunctionAddress, getFunctionName, } from "convex/server";
|
|
2
|
+
export function safeFunctionName(f) {
|
|
3
|
+
const address = getFunctionAddress(f);
|
|
4
|
+
return (address.name ||
|
|
5
|
+
address.reference ||
|
|
6
|
+
address.functionHandle ||
|
|
7
|
+
getFunctionName(f));
|
|
8
|
+
}
|
|
2
9
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/client/utils.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/client/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,kBAAkB,EAClB,eAAe,GAChB,MAAM,eAAe,CAAC;AA6CvB,MAAM,UAAU,gBAAgB,CAC9B,CAAsD;IAEtD,MAAM,OAAO,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC;IACtC,OAAO,CACL,OAAO,CAAC,IAAI;QACZ,OAAO,CAAC,SAAS;QACjB,OAAO,CAAC,cAAc;QACtB,eAAe,CAAC,CAAC,CAAC,CACnB,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"danger.d.ts","sourceRoot":"","sources":["../../../src/component/danger.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"danger.d.ts","sourceRoot":"","sources":["../../../src/component/danger.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,YAAY;;;;iBAgCvB,CAAC;AAEH,eAAO,MAAM,YAAY;;;;iBA2DvB,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { v } from "convex/values";
|
|
2
2
|
import { internal } from "./_generated/api.js";
|
|
3
|
-
import { internalMutation
|
|
3
|
+
import { internalMutation } from "./_generated/server.js";
|
|
4
4
|
import { paginator } from "convex-helpers/server/pagination";
|
|
5
5
|
import schema from "./schema.js";
|
|
6
6
|
const DEFAULT_OLDER_THAN = 1000 * 60 * 60 * 24;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"danger.js","sourceRoot":"","sources":["../../../src/component/danger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAClC,OAAO,
|
|
1
|
+
{"version":3,"file":"danger.js","sourceRoot":"","sources":["../../../src/component/danger.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,10 +2,10 @@ import { DefaultFunctionArgs, FunctionReference, FunctionVisibility, GenericData
|
|
|
2
2
|
import { Infer, Validator, VAny, VString } from "convex/values";
|
|
3
3
|
import { Mounts } from "../component/_generated/api.js";
|
|
4
4
|
import { type LogLevel } from "../component/logging.js";
|
|
5
|
-
import {
|
|
5
|
+
import { vResultValidator, type RetryBehavior, RunResult, Status } from "../component/shared.js";
|
|
6
6
|
import { RunMutationCtx, RunQueryCtx, UseApi } from "./utils.js";
|
|
7
|
-
export { vResultValidator, type RunResult, type RetryBehavior
|
|
8
|
-
export { retryBehavior as vRetryBehavior
|
|
7
|
+
export { vResultValidator, type RunResult, type RetryBehavior };
|
|
8
|
+
export { retryBehavior as vRetryBehavior } from "../component/shared.js";
|
|
9
9
|
export { logLevel as vLogLevel, type LogLevel } from "../component/logging.js";
|
|
10
10
|
export type WorkId = string & {
|
|
11
11
|
__isWorkId: true;
|
|
@@ -103,7 +103,7 @@ export declare class Workpool {
|
|
|
103
103
|
* });
|
|
104
104
|
* ```
|
|
105
105
|
*/
|
|
106
|
-
defineOnComplete<DataModel extends GenericDataModel, V extends Validator<any,
|
|
106
|
+
defineOnComplete<DataModel extends GenericDataModel, V extends Validator<any, any, any> = VAny<any, "optional">>({ context, handler, }: {
|
|
107
107
|
context?: V;
|
|
108
108
|
handler: (ctx: GenericMutationCtx<DataModel>, args: {
|
|
109
109
|
workId: WorkId;
|
|
@@ -117,7 +117,7 @@ export declare class Workpool {
|
|
|
117
117
|
* To be used like:
|
|
118
118
|
* ```ts
|
|
119
119
|
* export const myOnComplete = internalMutation({
|
|
120
|
-
* args:
|
|
120
|
+
* args: vOnCompleteArgs(v.string()),
|
|
121
121
|
* handler: async (ctx, {workId, context, result}) => {
|
|
122
122
|
* // context has been validated as a string
|
|
123
123
|
* // ... do something with the result
|
|
@@ -126,9 +126,9 @@ export declare class Workpool {
|
|
|
126
126
|
* @param context - The context validator. If not provided, it will be `v.any()`.
|
|
127
127
|
* @returns The validator for the onComplete mutation.
|
|
128
128
|
*/
|
|
129
|
-
export declare function
|
|
129
|
+
export declare function vOnCompleteArgs<V extends Validator<any, "required", any> = VAny>(context?: V): import("convex/values").VObject<import("convex/server").Expand<{ [Property in (VAny<any, "optional", string> | V)["isOptional"] extends "optional" ? "context" : never]?: Exclude<Infer<{
|
|
130
130
|
workId: VString<WorkId, "required">;
|
|
131
|
-
context: VAny<any, "
|
|
131
|
+
context: VAny<any, "optional", string> | V;
|
|
132
132
|
result: import("convex/values").VUnion<{
|
|
133
133
|
kind: "success";
|
|
134
134
|
returnValue: any;
|
|
@@ -154,9 +154,9 @@ export declare function vOnCompleteValidator<V extends Validator<any, "required"
|
|
|
154
154
|
}, {
|
|
155
155
|
kind: import("convex/values").VLiteral<"canceled", "required">;
|
|
156
156
|
}, "required", "kind">], "required", "kind" | "returnValue" | `returnValue.${string}` | "error">;
|
|
157
|
-
}[Property]>, undefined> | undefined; } & { [Property_1 in Exclude<"context", (VAny<any, "
|
|
157
|
+
}[Property]>, undefined> | undefined; } & { [Property_1 in Exclude<"context", (VAny<any, "optional", string> | V)["isOptional"] extends "optional" ? "context" : never> | Exclude<"workId", (VAny<any, "optional", string> | V)["isOptional"] extends "optional" ? "context" : never> | Exclude<"result", (VAny<any, "optional", string> | V)["isOptional"] extends "optional" ? "context" : never>]: Infer<{
|
|
158
158
|
workId: VString<WorkId, "required">;
|
|
159
|
-
context: VAny<any, "
|
|
159
|
+
context: VAny<any, "optional", string> | V;
|
|
160
160
|
result: import("convex/values").VUnion<{
|
|
161
161
|
kind: "success";
|
|
162
162
|
returnValue: any;
|
|
@@ -184,7 +184,7 @@ export declare function vOnCompleteValidator<V extends Validator<any, "required"
|
|
|
184
184
|
}, "required", "kind">], "required", "kind" | "returnValue" | `returnValue.${string}` | "error">;
|
|
185
185
|
}[Property_1]>; }>, {
|
|
186
186
|
workId: VString<WorkId, "required">;
|
|
187
|
-
context: VAny<any, "
|
|
187
|
+
context: VAny<any, "optional", string> | V;
|
|
188
188
|
result: import("convex/values").VUnion<{
|
|
189
189
|
kind: "success";
|
|
190
190
|
returnValue: any;
|
|
@@ -210,7 +210,7 @@ export declare function vOnCompleteValidator<V extends Validator<any, "required"
|
|
|
210
210
|
}, {
|
|
211
211
|
kind: import("convex/values").VLiteral<"canceled", "required">;
|
|
212
212
|
}, "required", "kind">], "required", "kind" | "returnValue" | `returnValue.${string}` | "error">;
|
|
213
|
-
}, "required", "context" | "workId" | "result" | `context.${(VAny<any, "
|
|
213
|
+
}, "required", "context" | "workId" | "result" | `context.${(VAny<any, "optional", string> | V)["fieldPaths"]}` | "result.kind" | "result.returnValue" | `result.returnValue.${string}` | "result.error">;
|
|
214
214
|
export type NameOption = {
|
|
215
215
|
/**
|
|
216
216
|
* The name of the function. By default, if you pass in api.foo.bar.baz,
|
|
@@ -286,7 +286,7 @@ export type CallbackOptions = {
|
|
|
286
286
|
* or more manually:
|
|
287
287
|
* ```ts
|
|
288
288
|
* export const completion = internalMutation({
|
|
289
|
-
* args:
|
|
289
|
+
* args: vOnCompleteArgs(v.string()),
|
|
290
290
|
* handler: async (ctx, args) => {
|
|
291
291
|
* console.log(args.result, "Got Context back -> ", args.context, Date.now() - args.context);
|
|
292
292
|
* },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,mBAAmB,EAEnB,iBAAiB,EAEjB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/client/index.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { createFunctionHandle,
|
|
1
|
+
import { createFunctionHandle, internalMutationGeneric, } from "convex/server";
|
|
2
2
|
import { v } from "convex/values";
|
|
3
3
|
import { DEFAULT_LOG_LEVEL } from "../component/logging.js";
|
|
4
4
|
import { DEFAULT_MAX_PARALLELISM, vResultValidator, } from "../component/shared.js";
|
|
5
|
-
|
|
6
|
-
export {
|
|
5
|
+
import { safeFunctionName, } from "./utils.js";
|
|
6
|
+
export { vResultValidator };
|
|
7
|
+
export { retryBehavior as vRetryBehavior } from "../component/shared.js";
|
|
7
8
|
export { logLevel as vLogLevel } from "../component/logging.js";
|
|
8
9
|
export const vWorkIdValidator = v.string();
|
|
9
10
|
export {
|
|
@@ -166,7 +167,7 @@ export class Workpool {
|
|
|
166
167
|
*/
|
|
167
168
|
defineOnComplete({ context, handler, }) {
|
|
168
169
|
return internalMutationGeneric({
|
|
169
|
-
args:
|
|
170
|
+
args: vOnCompleteArgs(context),
|
|
170
171
|
handler,
|
|
171
172
|
});
|
|
172
173
|
}
|
|
@@ -176,7 +177,7 @@ export class Workpool {
|
|
|
176
177
|
* To be used like:
|
|
177
178
|
* ```ts
|
|
178
179
|
* export const myOnComplete = internalMutation({
|
|
179
|
-
* args:
|
|
180
|
+
* args: vOnCompleteArgs(v.string()),
|
|
180
181
|
* handler: async (ctx, {workId, context, result}) => {
|
|
181
182
|
* // context has been validated as a string
|
|
182
183
|
* // ... do something with the result
|
|
@@ -185,15 +186,16 @@ export class Workpool {
|
|
|
185
186
|
* @param context - The context validator. If not provided, it will be `v.any()`.
|
|
186
187
|
* @returns The validator for the onComplete mutation.
|
|
187
188
|
*/
|
|
188
|
-
export function
|
|
189
|
+
export function vOnCompleteArgs(context) {
|
|
189
190
|
return v.object({
|
|
190
191
|
workId: vWorkIdValidator,
|
|
191
|
-
context: context ?? v.any(),
|
|
192
|
+
context: context ?? v.optional(v.any()),
|
|
192
193
|
result: vResultValidator,
|
|
193
194
|
});
|
|
194
195
|
}
|
|
195
196
|
// ensure OnCompleteArgs satisfies SharedOnCompleteArgs
|
|
196
197
|
const _ = {};
|
|
198
|
+
const _2 = {};
|
|
197
199
|
//
|
|
198
200
|
// Helper functions
|
|
199
201
|
//
|
|
@@ -211,7 +213,7 @@ function getRetryBehavior(defaultRetryBehavior, retryActionsByDefault, retryOver
|
|
|
211
213
|
async function defaultEnqueueArgs(fn, name, { logLevel, maxParallelism }) {
|
|
212
214
|
const [fnHandle, fnName] = typeof fn === "string" && fn.startsWith("function://")
|
|
213
215
|
? [fn, name ?? fn]
|
|
214
|
-
: [await createFunctionHandle(fn), name ??
|
|
216
|
+
: [await createFunctionHandle(fn), name ?? safeFunctionName(fn)];
|
|
215
217
|
return {
|
|
216
218
|
fnHandle,
|
|
217
219
|
fnName,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EAQpB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import { Expand, FunctionReference,
|
|
1
|
+
import { Expand, FunctionArgs, FunctionReference, FunctionReturnType, FunctionType, FunctionVisibility } from "convex/server";
|
|
2
2
|
import { GenericId } from "convex/values";
|
|
3
|
-
import { GenericDataModel } from "convex/server";
|
|
4
3
|
export type RunQueryCtx = {
|
|
5
|
-
runQuery:
|
|
4
|
+
runQuery: <Query extends FunctionReference<"query", "internal">>(query: Query, args: FunctionArgs<Query>) => Promise<FunctionReturnType<Query>>;
|
|
6
5
|
};
|
|
7
|
-
export type RunMutationCtx = {
|
|
8
|
-
runMutation:
|
|
6
|
+
export type RunMutationCtx = RunQueryCtx & {
|
|
7
|
+
runMutation: <Mutation extends FunctionReference<"mutation", "internal">>(mutation: Mutation, args: FunctionArgs<Mutation>) => Promise<FunctionReturnType<Mutation>>;
|
|
9
8
|
};
|
|
10
9
|
export type OpaqueIds<T> = T extends GenericId<infer _T> ? string : T extends (infer U)[] ? OpaqueIds<U>[] : T extends object ? {
|
|
11
10
|
[K in keyof T]: OpaqueIds<T[K]>;
|
|
@@ -13,4 +12,5 @@ export type OpaqueIds<T> = T extends GenericId<infer _T> ? string : T extends (i
|
|
|
13
12
|
export type UseApi<API> = Expand<{
|
|
14
13
|
[mod in keyof API]: API[mod] extends FunctionReference<infer FType, "public", infer FArgs, infer FReturnType, infer FComponentPath> ? FunctionReference<FType, "internal", OpaqueIds<FArgs>, OpaqueIds<FReturnType>, FComponentPath> : UseApi<API[mod]>;
|
|
15
14
|
}>;
|
|
15
|
+
export declare function safeFunctionName(f: FunctionReference<FunctionType, FunctionVisibility>): any;
|
|
16
16
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/client/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,iBAAiB,EACjB,kBAAkB,EAClB,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/client/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,YAAY,EACZ,kBAAkB,EAGnB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAI1C,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,EAAE,CAAC,KAAK,SAAS,iBAAiB,CAAC,OAAO,EAAE,UAAU,CAAC,EAC7D,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,YAAY,CAAC,KAAK,CAAC,KACtB,OAAO,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC;CACzC,CAAC;AACF,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG;IACzC,WAAW,EAAE,CAAC,QAAQ,SAAS,iBAAiB,CAAC,UAAU,EAAE,UAAU,CAAC,EACtE,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC,KACzB,OAAO,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC;CAC5C,CAAC;AAEF,MAAM,MAAM,SAAS,CAAC,CAAC,IACrB,CAAC,SAAS,SAAS,CAAC,MAAM,EAAE,CAAC,GACzB,MAAM,GACN,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,GACnB,SAAS,CAAC,CAAC,CAAC,EAAE,GACd,CAAC,SAAS,MAAM,GACd;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,GACnC,CAAC,CAAC;AAEZ,MAAM,MAAM,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC;KAC9B,GAAG,IAAI,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,SAAS,iBAAiB,CACpD,MAAM,KAAK,EACX,QAAQ,EACR,MAAM,KAAK,EACX,MAAM,WAAW,EACjB,MAAM,cAAc,CACrB,GACG,iBAAiB,CACf,KAAK,EACL,UAAU,EACV,SAAS,CAAC,KAAK,CAAC,EAChB,SAAS,CAAC,WAAW,CAAC,EACtB,cAAc,CACf,GACD,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;CACrB,CAAC,CAAC;AAEH,wBAAgB,gBAAgB,CAC9B,CAAC,EAAE,iBAAiB,CAAC,YAAY,EAAE,kBAAkB,CAAC,OASvD"}
|
package/dist/esm/client/utils.js
CHANGED
|
@@ -1,2 +1,9 @@
|
|
|
1
|
-
|
|
1
|
+
import { getFunctionAddress, getFunctionName, } from "convex/server";
|
|
2
|
+
export function safeFunctionName(f) {
|
|
3
|
+
const address = getFunctionAddress(f);
|
|
4
|
+
return (address.name ||
|
|
5
|
+
address.reference ||
|
|
6
|
+
address.functionHandle ||
|
|
7
|
+
getFunctionName(f));
|
|
8
|
+
}
|
|
2
9
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/client/utils.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/client/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAOL,kBAAkB,EAClB,eAAe,GAChB,MAAM,eAAe,CAAC;AA6CvB,MAAM,UAAU,gBAAgB,CAC9B,CAAsD;IAEtD,MAAM,OAAO,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC;IACtC,OAAO,CACL,OAAO,CAAC,IAAI;QACZ,OAAO,CAAC,SAAS;QACjB,OAAO,CAAC,cAAc;QACtB,eAAe,CAAC,CAAC,CAAC,CACnB,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"danger.d.ts","sourceRoot":"","sources":["../../../src/component/danger.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"danger.d.ts","sourceRoot":"","sources":["../../../src/component/danger.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,YAAY;;;;iBAgCvB,CAAC;AAEH,eAAO,MAAM,YAAY;;;;iBA2DvB,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { v } from "convex/values";
|
|
2
2
|
import { internal } from "./_generated/api.js";
|
|
3
|
-
import { internalMutation
|
|
3
|
+
import { internalMutation } from "./_generated/server.js";
|
|
4
4
|
import { paginator } from "convex-helpers/server/pagination";
|
|
5
5
|
import schema from "./schema.js";
|
|
6
6
|
const DEFAULT_OLDER_THAN = 1000 * 60 * 60 * 24;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"danger.js","sourceRoot":"","sources":["../../../src/component/danger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAClC,OAAO,
|
|
1
|
+
{"version":3,"file":"danger.js","sourceRoot":"","sources":["../../../src/component/danger.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
"email": "support@convex.dev",
|
|
8
8
|
"url": "https://github.com/get-convex/workpool/issues"
|
|
9
9
|
},
|
|
10
|
-
"version": "0.2.
|
|
10
|
+
"version": "0.2.18-alpha.0",
|
|
11
11
|
"license": "Apache-2.0",
|
|
12
12
|
"keywords": [
|
|
13
13
|
"convex",
|
|
@@ -70,7 +70,7 @@
|
|
|
70
70
|
"devDependencies": {
|
|
71
71
|
"@edge-runtime/vm": "5.0.0",
|
|
72
72
|
"@eslint/js": "9.31.0",
|
|
73
|
-
"@types/node": "22.16.
|
|
73
|
+
"@types/node": "22.16.5",
|
|
74
74
|
"@vitest/coverage-v8": "3.2.4",
|
|
75
75
|
"convex-test": "0.0.38",
|
|
76
76
|
"eslint": "9.31.0",
|
|
@@ -78,7 +78,7 @@
|
|
|
78
78
|
"pkg-pr-new": "0.0.54",
|
|
79
79
|
"prettier": "3.6.2",
|
|
80
80
|
"typescript": "5.8.3",
|
|
81
|
-
"typescript-eslint": "8.
|
|
81
|
+
"typescript-eslint": "8.38.0",
|
|
82
82
|
"vitest": "3.2.4"
|
|
83
83
|
},
|
|
84
84
|
"main": "./dist/commonjs/client/index.js",
|
package/src/client/index.ts
CHANGED
|
@@ -7,7 +7,6 @@ import {
|
|
|
7
7
|
FunctionVisibility,
|
|
8
8
|
GenericDataModel,
|
|
9
9
|
GenericMutationCtx,
|
|
10
|
-
getFunctionName,
|
|
11
10
|
internalMutationGeneric,
|
|
12
11
|
RegisteredMutation,
|
|
13
12
|
} from "convex/server";
|
|
@@ -24,17 +23,14 @@ import {
|
|
|
24
23
|
OnCompleteArgs as SharedOnCompleteArgs,
|
|
25
24
|
Status,
|
|
26
25
|
} from "../component/shared.js";
|
|
27
|
-
import {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
};
|
|
34
|
-
export {
|
|
35
|
-
retryBehavior as vRetryBehavior,
|
|
36
|
-
onComplete as vOnComplete,
|
|
37
|
-
} from "../component/shared.js";
|
|
26
|
+
import {
|
|
27
|
+
RunMutationCtx,
|
|
28
|
+
RunQueryCtx,
|
|
29
|
+
safeFunctionName,
|
|
30
|
+
UseApi,
|
|
31
|
+
} from "./utils.js";
|
|
32
|
+
export { vResultValidator, type RunResult, type RetryBehavior };
|
|
33
|
+
export { retryBehavior as vRetryBehavior } from "../component/shared.js";
|
|
38
34
|
export { logLevel as vLogLevel, type LogLevel } from "../component/logging.js";
|
|
39
35
|
export type WorkId = string & { __isWorkId: true };
|
|
40
36
|
export const vWorkIdValidator = v.string() as VString<WorkId>;
|
|
@@ -222,7 +218,7 @@ export class Workpool {
|
|
|
222
218
|
defineOnComplete<
|
|
223
219
|
DataModel extends GenericDataModel,
|
|
224
220
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
225
|
-
V extends Validator<any,
|
|
221
|
+
V extends Validator<any, any, any> = VAny<any, "optional">,
|
|
226
222
|
>({
|
|
227
223
|
context,
|
|
228
224
|
handler,
|
|
@@ -238,7 +234,7 @@ export class Workpool {
|
|
|
238
234
|
) => Promise<void>;
|
|
239
235
|
}): RegisteredMutation<"internal", OnCompleteArgs, null> {
|
|
240
236
|
return internalMutationGeneric({
|
|
241
|
-
args:
|
|
237
|
+
args: vOnCompleteArgs(context),
|
|
242
238
|
handler,
|
|
243
239
|
});
|
|
244
240
|
}
|
|
@@ -249,7 +245,7 @@ export class Workpool {
|
|
|
249
245
|
* To be used like:
|
|
250
246
|
* ```ts
|
|
251
247
|
* export const myOnComplete = internalMutation({
|
|
252
|
-
* args:
|
|
248
|
+
* args: vOnCompleteArgs(v.string()),
|
|
253
249
|
* handler: async (ctx, {workId, context, result}) => {
|
|
254
250
|
* // context has been validated as a string
|
|
255
251
|
* // ... do something with the result
|
|
@@ -258,13 +254,13 @@ export class Workpool {
|
|
|
258
254
|
* @param context - The context validator. If not provided, it will be `v.any()`.
|
|
259
255
|
* @returns The validator for the onComplete mutation.
|
|
260
256
|
*/
|
|
261
|
-
export function
|
|
257
|
+
export function vOnCompleteArgs<
|
|
262
258
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
263
259
|
V extends Validator<any, "required", any> = VAny,
|
|
264
260
|
>(context?: V) {
|
|
265
261
|
return v.object({
|
|
266
262
|
workId: vWorkIdValidator,
|
|
267
|
-
context: context ?? v.any(),
|
|
263
|
+
context: context ?? v.optional(v.any()),
|
|
268
264
|
result: vResultValidator,
|
|
269
265
|
});
|
|
270
266
|
}
|
|
@@ -350,7 +346,7 @@ export type CallbackOptions = {
|
|
|
350
346
|
* or more manually:
|
|
351
347
|
* ```ts
|
|
352
348
|
* export const completion = internalMutation({
|
|
353
|
-
* args:
|
|
349
|
+
* args: vOnCompleteArgs(v.string()),
|
|
354
350
|
* handler: async (ctx, args) => {
|
|
355
351
|
* console.log(args.result, "Got Context back -> ", args.context, Date.now() - args.context);
|
|
356
352
|
* },
|
|
@@ -385,8 +381,12 @@ export type OnCompleteArgs = {
|
|
|
385
381
|
*/
|
|
386
382
|
result: RunResult;
|
|
387
383
|
};
|
|
384
|
+
|
|
388
385
|
// ensure OnCompleteArgs satisfies SharedOnCompleteArgs
|
|
389
386
|
const _ = {} as OnCompleteArgs satisfies SharedOnCompleteArgs;
|
|
387
|
+
const _2 = {} as OnCompleteArgs satisfies Infer<
|
|
388
|
+
ReturnType<typeof vOnCompleteArgs<VAny>>
|
|
389
|
+
>;
|
|
390
390
|
|
|
391
391
|
//
|
|
392
392
|
// Helper functions
|
|
@@ -418,7 +418,7 @@ async function defaultEnqueueArgs(
|
|
|
418
418
|
const [fnHandle, fnName] =
|
|
419
419
|
typeof fn === "string" && fn.startsWith("function://")
|
|
420
420
|
? [fn, name ?? fn]
|
|
421
|
-
: [await createFunctionHandle(fn), name ??
|
|
421
|
+
: [await createFunctionHandle(fn), name ?? safeFunctionName(fn)];
|
|
422
422
|
return {
|
|
423
423
|
fnHandle,
|
|
424
424
|
fnName,
|
package/src/client/utils.ts
CHANGED
|
@@ -1,20 +1,28 @@
|
|
|
1
1
|
import {
|
|
2
2
|
Expand,
|
|
3
|
+
FunctionArgs,
|
|
3
4
|
FunctionReference,
|
|
4
|
-
|
|
5
|
-
|
|
5
|
+
FunctionReturnType,
|
|
6
|
+
FunctionType,
|
|
7
|
+
FunctionVisibility,
|
|
8
|
+
getFunctionAddress,
|
|
9
|
+
getFunctionName,
|
|
6
10
|
} from "convex/server";
|
|
7
11
|
import { GenericId } from "convex/values";
|
|
8
12
|
|
|
9
|
-
import { GenericDataModel } from "convex/server";
|
|
10
|
-
|
|
11
13
|
/* Type utils follow */
|
|
12
14
|
|
|
13
15
|
export type RunQueryCtx = {
|
|
14
|
-
runQuery:
|
|
16
|
+
runQuery: <Query extends FunctionReference<"query", "internal">>(
|
|
17
|
+
query: Query,
|
|
18
|
+
args: FunctionArgs<Query>
|
|
19
|
+
) => Promise<FunctionReturnType<Query>>;
|
|
15
20
|
};
|
|
16
|
-
export type RunMutationCtx = {
|
|
17
|
-
runMutation:
|
|
21
|
+
export type RunMutationCtx = RunQueryCtx & {
|
|
22
|
+
runMutation: <Mutation extends FunctionReference<"mutation", "internal">>(
|
|
23
|
+
mutation: Mutation,
|
|
24
|
+
args: FunctionArgs<Mutation>
|
|
25
|
+
) => Promise<FunctionReturnType<Mutation>>;
|
|
18
26
|
};
|
|
19
27
|
|
|
20
28
|
export type OpaqueIds<T> =
|
|
@@ -43,3 +51,15 @@ export type UseApi<API> = Expand<{
|
|
|
43
51
|
>
|
|
44
52
|
: UseApi<API[mod]>;
|
|
45
53
|
}>;
|
|
54
|
+
|
|
55
|
+
export function safeFunctionName(
|
|
56
|
+
f: FunctionReference<FunctionType, FunctionVisibility>
|
|
57
|
+
) {
|
|
58
|
+
const address = getFunctionAddress(f);
|
|
59
|
+
return (
|
|
60
|
+
address.name ||
|
|
61
|
+
address.reference ||
|
|
62
|
+
address.functionHandle ||
|
|
63
|
+
getFunctionName(f)
|
|
64
|
+
);
|
|
65
|
+
}
|
package/src/component/danger.ts
CHANGED
|
@@ -1,14 +1,6 @@
|
|
|
1
1
|
import { v } from "convex/values";
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
4
|
-
import {
|
|
5
|
-
action,
|
|
6
|
-
internalAction,
|
|
7
|
-
internalMutation,
|
|
8
|
-
internalQuery,
|
|
9
|
-
mutation,
|
|
10
|
-
query,
|
|
11
|
-
} from "./_generated/server.js";
|
|
2
|
+
import { internal } from "./_generated/api.js";
|
|
3
|
+
import { internalMutation } from "./_generated/server.js";
|
|
12
4
|
import { paginator } from "convex-helpers/server/pagination";
|
|
13
5
|
import schema from "./schema.js";
|
|
14
6
|
|