@convex-dev/workpool 0.2.3 → 0.2.5
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 +17 -3
- package/dist/commonjs/client/index.d.ts.map +1 -1
- package/dist/commonjs/client/index.js +8 -4
- package/dist/commonjs/client/index.js.map +1 -1
- package/dist/esm/client/index.d.ts +17 -3
- package/dist/esm/client/index.d.ts.map +1 -1
- package/dist/esm/client/index.js +8 -4
- package/dist/esm/client/index.js.map +1 -1
- package/package.json +1 -1
- package/src/client/index.ts +29 -7
|
@@ -5,14 +5,15 @@ import { type LogLevel } from "../component/logging.js";
|
|
|
5
5
|
import { runResult as resultValidator, type RetryBehavior, RunResult, Status } from "../component/shared.js";
|
|
6
6
|
import { RunMutationCtx, RunQueryCtx, UseApi } from "./utils.js";
|
|
7
7
|
export { resultValidator, type RunResult, type RetryBehavior };
|
|
8
|
-
export { resultValidator as vResultValidator };
|
|
9
8
|
export { retryBehavior as vRetryBehavior } from "../component/shared.js";
|
|
10
|
-
export { logLevel as vLogLevel } from "../component/logging.js";
|
|
9
|
+
export { logLevel as vLogLevel, type LogLevel } from "../component/logging.js";
|
|
10
|
+
export { resultValidator as vResultValidator };
|
|
11
11
|
export declare const DEFAULT_RETRY_BEHAVIOR: RetryBehavior;
|
|
12
12
|
export type WorkId = string & {
|
|
13
13
|
__isWorkId: true;
|
|
14
14
|
};
|
|
15
15
|
export declare const workIdValidator: VString<WorkId, "required">;
|
|
16
|
+
export { workIdValidator as vWorkIdValidator };
|
|
16
17
|
export declare class Workpool {
|
|
17
18
|
private component;
|
|
18
19
|
private options;
|
|
@@ -70,6 +71,12 @@ export declare class Workpool {
|
|
|
70
71
|
* If unset, it will use the Workpool's configured default.
|
|
71
72
|
*/
|
|
72
73
|
retry?: boolean | RetryBehavior;
|
|
74
|
+
/**
|
|
75
|
+
* The name of the function. By default, if you pass in api.foo.bar.baz,
|
|
76
|
+
* it will use "foo/bar:baz" as the name. If you pass in a function handle,
|
|
77
|
+
* it will use the function handle directly.
|
|
78
|
+
*/
|
|
79
|
+
name?: string;
|
|
73
80
|
} & CallbackOptions & SchedulerOptions): Promise<WorkId>;
|
|
74
81
|
/**
|
|
75
82
|
* Enqueues a mutation to be run.
|
|
@@ -84,7 +91,14 @@ export declare class Workpool {
|
|
|
84
91
|
* @param options - The options for the mutation to specify onComplete handling
|
|
85
92
|
* and scheduling via `runAt` or `runAfter`.
|
|
86
93
|
*/
|
|
87
|
-
enqueueMutation<Args extends DefaultFunctionArgs, ReturnType>(ctx: RunMutationCtx, fn: FunctionReference<"mutation", FunctionVisibility, Args, ReturnType>, fnArgs: Args, options?: CallbackOptions & SchedulerOptions
|
|
94
|
+
enqueueMutation<Args extends DefaultFunctionArgs, ReturnType>(ctx: RunMutationCtx, fn: FunctionReference<"mutation", FunctionVisibility, Args, ReturnType>, fnArgs: Args, options?: CallbackOptions & SchedulerOptions & {
|
|
95
|
+
/**
|
|
96
|
+
* The name of the function. By default, if you pass in api.foo.bar.baz,
|
|
97
|
+
* it will use "foo/bar:baz" as the name. If you pass in a function handle,
|
|
98
|
+
* it will use the function handle directly.
|
|
99
|
+
*/
|
|
100
|
+
name?: string;
|
|
101
|
+
}): Promise<WorkId>;
|
|
88
102
|
/**
|
|
89
103
|
* Cancels a work item. If it's already started, it will be allowed to finish
|
|
90
104
|
* but will not be retried.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,mBAAmB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,9 +3,9 @@ import { v } from "convex/values";
|
|
|
3
3
|
import { DEFAULT_LOG_LEVEL, logLevel, } from "../component/logging.js";
|
|
4
4
|
import { DEFAULT_MAX_PARALLELISM, runResult as resultValidator, } from "../component/shared.js";
|
|
5
5
|
export { resultValidator };
|
|
6
|
-
export { resultValidator as vResultValidator };
|
|
7
6
|
export { retryBehavior as vRetryBehavior } from "../component/shared.js";
|
|
8
7
|
export { logLevel as vLogLevel } from "../component/logging.js";
|
|
8
|
+
export { resultValidator as vResultValidator };
|
|
9
9
|
// Attempts will run with delay [0, 250, 500, 1000, 2000] (ms)
|
|
10
10
|
export const DEFAULT_RETRY_BEHAVIOR = {
|
|
11
11
|
maxAttempts: 5,
|
|
@@ -13,6 +13,7 @@ export const DEFAULT_RETRY_BEHAVIOR = {
|
|
|
13
13
|
base: 2,
|
|
14
14
|
};
|
|
15
15
|
export const workIdValidator = v.string();
|
|
16
|
+
export { workIdValidator as vWorkIdValidator };
|
|
16
17
|
export class Workpool {
|
|
17
18
|
component;
|
|
18
19
|
options;
|
|
@@ -142,10 +143,13 @@ function getRetryBehavior(defaultRetryBehavior, retryActionsByDefault, retryOver
|
|
|
142
143
|
}
|
|
143
144
|
return retryOverride ?? (retryByDefault ? defaultRetry : undefined);
|
|
144
145
|
}
|
|
145
|
-
async function defaultEnqueueArgs(fn, { logLevel, maxParallelism }) {
|
|
146
|
+
async function defaultEnqueueArgs(fn, { logLevel, maxParallelism, name }) {
|
|
147
|
+
const [fnHandle, fnName] = typeof fn === "string" && fn.startsWith("function://")
|
|
148
|
+
? [fn, name ?? fn]
|
|
149
|
+
: [await createFunctionHandle(fn), name ?? getFunctionName(fn)];
|
|
146
150
|
return {
|
|
147
|
-
fnHandle
|
|
148
|
-
fnName
|
|
151
|
+
fnHandle,
|
|
152
|
+
fnName,
|
|
149
153
|
config: {
|
|
150
154
|
logLevel: logLevel ?? getDefaultLogLevel(),
|
|
151
155
|
maxParallelism: maxParallelism ?? DEFAULT_MAX_PARALLELISM,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,14 +5,15 @@ import { type LogLevel } from "../component/logging.js";
|
|
|
5
5
|
import { runResult as resultValidator, type RetryBehavior, RunResult, Status } from "../component/shared.js";
|
|
6
6
|
import { RunMutationCtx, RunQueryCtx, UseApi } from "./utils.js";
|
|
7
7
|
export { resultValidator, type RunResult, type RetryBehavior };
|
|
8
|
-
export { resultValidator as vResultValidator };
|
|
9
8
|
export { retryBehavior as vRetryBehavior } from "../component/shared.js";
|
|
10
|
-
export { logLevel as vLogLevel } from "../component/logging.js";
|
|
9
|
+
export { logLevel as vLogLevel, type LogLevel } from "../component/logging.js";
|
|
10
|
+
export { resultValidator as vResultValidator };
|
|
11
11
|
export declare const DEFAULT_RETRY_BEHAVIOR: RetryBehavior;
|
|
12
12
|
export type WorkId = string & {
|
|
13
13
|
__isWorkId: true;
|
|
14
14
|
};
|
|
15
15
|
export declare const workIdValidator: VString<WorkId, "required">;
|
|
16
|
+
export { workIdValidator as vWorkIdValidator };
|
|
16
17
|
export declare class Workpool {
|
|
17
18
|
private component;
|
|
18
19
|
private options;
|
|
@@ -70,6 +71,12 @@ export declare class Workpool {
|
|
|
70
71
|
* If unset, it will use the Workpool's configured default.
|
|
71
72
|
*/
|
|
72
73
|
retry?: boolean | RetryBehavior;
|
|
74
|
+
/**
|
|
75
|
+
* The name of the function. By default, if you pass in api.foo.bar.baz,
|
|
76
|
+
* it will use "foo/bar:baz" as the name. If you pass in a function handle,
|
|
77
|
+
* it will use the function handle directly.
|
|
78
|
+
*/
|
|
79
|
+
name?: string;
|
|
73
80
|
} & CallbackOptions & SchedulerOptions): Promise<WorkId>;
|
|
74
81
|
/**
|
|
75
82
|
* Enqueues a mutation to be run.
|
|
@@ -84,7 +91,14 @@ export declare class Workpool {
|
|
|
84
91
|
* @param options - The options for the mutation to specify onComplete handling
|
|
85
92
|
* and scheduling via `runAt` or `runAfter`.
|
|
86
93
|
*/
|
|
87
|
-
enqueueMutation<Args extends DefaultFunctionArgs, ReturnType>(ctx: RunMutationCtx, fn: FunctionReference<"mutation", FunctionVisibility, Args, ReturnType>, fnArgs: Args, options?: CallbackOptions & SchedulerOptions
|
|
94
|
+
enqueueMutation<Args extends DefaultFunctionArgs, ReturnType>(ctx: RunMutationCtx, fn: FunctionReference<"mutation", FunctionVisibility, Args, ReturnType>, fnArgs: Args, options?: CallbackOptions & SchedulerOptions & {
|
|
95
|
+
/**
|
|
96
|
+
* The name of the function. By default, if you pass in api.foo.bar.baz,
|
|
97
|
+
* it will use "foo/bar:baz" as the name. If you pass in a function handle,
|
|
98
|
+
* it will use the function handle directly.
|
|
99
|
+
*/
|
|
100
|
+
name?: string;
|
|
101
|
+
}): Promise<WorkId>;
|
|
88
102
|
/**
|
|
89
103
|
* Cancels a work item. If it's already started, it will be allowed to finish
|
|
90
104
|
* but will not be retried.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,mBAAmB,
|
|
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
|
@@ -3,9 +3,9 @@ import { v } from "convex/values";
|
|
|
3
3
|
import { DEFAULT_LOG_LEVEL, logLevel, } from "../component/logging.js";
|
|
4
4
|
import { DEFAULT_MAX_PARALLELISM, runResult as resultValidator, } from "../component/shared.js";
|
|
5
5
|
export { resultValidator };
|
|
6
|
-
export { resultValidator as vResultValidator };
|
|
7
6
|
export { retryBehavior as vRetryBehavior } from "../component/shared.js";
|
|
8
7
|
export { logLevel as vLogLevel } from "../component/logging.js";
|
|
8
|
+
export { resultValidator as vResultValidator };
|
|
9
9
|
// Attempts will run with delay [0, 250, 500, 1000, 2000] (ms)
|
|
10
10
|
export const DEFAULT_RETRY_BEHAVIOR = {
|
|
11
11
|
maxAttempts: 5,
|
|
@@ -13,6 +13,7 @@ export const DEFAULT_RETRY_BEHAVIOR = {
|
|
|
13
13
|
base: 2,
|
|
14
14
|
};
|
|
15
15
|
export const workIdValidator = v.string();
|
|
16
|
+
export { workIdValidator as vWorkIdValidator };
|
|
16
17
|
export class Workpool {
|
|
17
18
|
component;
|
|
18
19
|
options;
|
|
@@ -142,10 +143,13 @@ function getRetryBehavior(defaultRetryBehavior, retryActionsByDefault, retryOver
|
|
|
142
143
|
}
|
|
143
144
|
return retryOverride ?? (retryByDefault ? defaultRetry : undefined);
|
|
144
145
|
}
|
|
145
|
-
async function defaultEnqueueArgs(fn, { logLevel, maxParallelism }) {
|
|
146
|
+
async function defaultEnqueueArgs(fn, { logLevel, maxParallelism, name }) {
|
|
147
|
+
const [fnHandle, fnName] = typeof fn === "string" && fn.startsWith("function://")
|
|
148
|
+
? [fn, name ?? fn]
|
|
149
|
+
: [await createFunctionHandle(fn), name ?? getFunctionName(fn)];
|
|
146
150
|
return {
|
|
147
|
-
fnHandle
|
|
148
|
-
fnName
|
|
151
|
+
fnHandle,
|
|
152
|
+
fnName,
|
|
149
153
|
config: {
|
|
150
154
|
logLevel: logLevel ?? getDefaultLogLevel(),
|
|
151
155
|
maxParallelism: maxParallelism ?? DEFAULT_MAX_PARALLELISM,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/client/index.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createFunctionHandle,
|
|
3
3
|
DefaultFunctionArgs,
|
|
4
|
+
FunctionHandle,
|
|
4
5
|
FunctionReference,
|
|
5
6
|
FunctionVisibility,
|
|
6
7
|
getFunctionName,
|
|
@@ -24,9 +25,9 @@ import {
|
|
|
24
25
|
} from "../component/shared.js";
|
|
25
26
|
import { RunMutationCtx, RunQueryCtx, UseApi } from "./utils.js";
|
|
26
27
|
export { resultValidator, type RunResult, type RetryBehavior };
|
|
27
|
-
export { resultValidator as vResultValidator };
|
|
28
28
|
export { retryBehavior as vRetryBehavior } from "../component/shared.js";
|
|
29
|
-
export { logLevel as vLogLevel } from "../component/logging.js";
|
|
29
|
+
export { logLevel as vLogLevel, type LogLevel } from "../component/logging.js";
|
|
30
|
+
export { resultValidator as vResultValidator };
|
|
30
31
|
|
|
31
32
|
// Attempts will run with delay [0, 250, 500, 1000, 2000] (ms)
|
|
32
33
|
export const DEFAULT_RETRY_BEHAVIOR: RetryBehavior = {
|
|
@@ -36,6 +37,7 @@ export const DEFAULT_RETRY_BEHAVIOR: RetryBehavior = {
|
|
|
36
37
|
};
|
|
37
38
|
export type WorkId = string & { __isWorkId: true };
|
|
38
39
|
export const workIdValidator = v.string() as VString<WorkId>;
|
|
40
|
+
export { workIdValidator as vWorkIdValidator };
|
|
39
41
|
|
|
40
42
|
export class Workpool {
|
|
41
43
|
/**
|
|
@@ -98,6 +100,12 @@ export class Workpool {
|
|
|
98
100
|
* If unset, it will use the Workpool's configured default.
|
|
99
101
|
*/
|
|
100
102
|
retry?: boolean | RetryBehavior;
|
|
103
|
+
/**
|
|
104
|
+
* The name of the function. By default, if you pass in api.foo.bar.baz,
|
|
105
|
+
* it will use "foo/bar:baz" as the name. If you pass in a function handle,
|
|
106
|
+
* it will use the function handle directly.
|
|
107
|
+
*/
|
|
108
|
+
name?: string;
|
|
101
109
|
} & CallbackOptions &
|
|
102
110
|
SchedulerOptions
|
|
103
111
|
): Promise<WorkId> {
|
|
@@ -140,7 +148,15 @@ export class Workpool {
|
|
|
140
148
|
ctx: RunMutationCtx,
|
|
141
149
|
fn: FunctionReference<"mutation", FunctionVisibility, Args, ReturnType>,
|
|
142
150
|
fnArgs: Args,
|
|
143
|
-
options?: CallbackOptions &
|
|
151
|
+
options?: CallbackOptions &
|
|
152
|
+
SchedulerOptions & {
|
|
153
|
+
/**
|
|
154
|
+
* The name of the function. By default, if you pass in api.foo.bar.baz,
|
|
155
|
+
* it will use "foo/bar:baz" as the name. If you pass in a function handle,
|
|
156
|
+
* it will use the function handle directly.
|
|
157
|
+
*/
|
|
158
|
+
name?: string;
|
|
159
|
+
}
|
|
144
160
|
): Promise<WorkId> {
|
|
145
161
|
const onComplete: OnComplete | undefined = options?.onComplete
|
|
146
162
|
? {
|
|
@@ -283,12 +299,18 @@ function getRetryBehavior(
|
|
|
283
299
|
}
|
|
284
300
|
|
|
285
301
|
async function defaultEnqueueArgs(
|
|
286
|
-
fn:
|
|
287
|
-
|
|
302
|
+
fn:
|
|
303
|
+
| FunctionReference<"action" | "mutation", FunctionVisibility>
|
|
304
|
+
| FunctionHandle<"action" | "mutation", DefaultFunctionArgs>,
|
|
305
|
+
{ logLevel, maxParallelism, name }: Partial<Config> & { name?: string }
|
|
288
306
|
) {
|
|
307
|
+
const [fnHandle, fnName] =
|
|
308
|
+
typeof fn === "string" && fn.startsWith("function://")
|
|
309
|
+
? [fn, name ?? fn]
|
|
310
|
+
: [await createFunctionHandle(fn), name ?? getFunctionName(fn)];
|
|
289
311
|
return {
|
|
290
|
-
fnHandle
|
|
291
|
-
fnName
|
|
312
|
+
fnHandle,
|
|
313
|
+
fnName,
|
|
292
314
|
config: {
|
|
293
315
|
logLevel: logLevel ?? getDefaultLogLevel(),
|
|
294
316
|
maxParallelism: maxParallelism ?? DEFAULT_MAX_PARALLELISM,
|