@convex-dev/workpool 0.2.7-alpha.1 → 0.2.7-alpha.3
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 +19 -30
- package/dist/commonjs/client/index.d.ts.map +1 -1
- package/dist/commonjs/client/index.js +4 -17
- package/dist/commonjs/client/index.js.map +1 -1
- package/dist/esm/client/index.d.ts +19 -30
- package/dist/esm/client/index.d.ts.map +1 -1
- package/dist/esm/client/index.js +4 -17
- package/dist/esm/client/index.js.map +1 -1
- package/package.json +1 -1
- package/src/client/index.ts +24 -53
|
@@ -14,6 +14,22 @@ export type WorkId = string & {
|
|
|
14
14
|
};
|
|
15
15
|
export declare const workIdValidator: VString<WorkId, "required">;
|
|
16
16
|
export { workIdValidator as vWorkIdValidator };
|
|
17
|
+
export type NameOption = {
|
|
18
|
+
/**
|
|
19
|
+
* The name of the function. By default, if you pass in api.foo.bar.baz,
|
|
20
|
+
* it will use "foo/bar:baz" as the name. If you pass in a function handle,
|
|
21
|
+
* it will use the function handle directly.
|
|
22
|
+
*/
|
|
23
|
+
name?: string;
|
|
24
|
+
};
|
|
25
|
+
export type RetryOption = {
|
|
26
|
+
/** Whether to retry the action if it fails.
|
|
27
|
+
* If true, it will use the default retry behavior.
|
|
28
|
+
* If custom behavior is provided, it will retry using that behavior.
|
|
29
|
+
* If unset, it will use the Workpool's configured default.
|
|
30
|
+
*/
|
|
31
|
+
retry?: boolean | RetryBehavior;
|
|
32
|
+
};
|
|
17
33
|
export declare class Workpool {
|
|
18
34
|
private component;
|
|
19
35
|
options: {
|
|
@@ -88,20 +104,7 @@ export declare class Workpool {
|
|
|
88
104
|
* onComplete handling, and scheduling via `runAt` or `runAfter`.
|
|
89
105
|
* @returns The ID of the work that was enqueued.
|
|
90
106
|
*/
|
|
91
|
-
enqueueAction<Args extends DefaultFunctionArgs, ReturnType>(ctx: RunMutationCtx, fn: FunctionReference<"action", FunctionVisibility, Args, ReturnType>, fnArgs: Args, options?:
|
|
92
|
-
/** Whether to retry the action if it fails.
|
|
93
|
-
* If true, it will use the default retry behavior.
|
|
94
|
-
* If custom behavior is provided, it will retry using that behavior.
|
|
95
|
-
* If unset, it will use the Workpool's configured default.
|
|
96
|
-
*/
|
|
97
|
-
retry?: boolean | RetryBehavior;
|
|
98
|
-
/**
|
|
99
|
-
* The name of the function. By default, if you pass in api.foo.bar.baz,
|
|
100
|
-
* it will use "foo/bar:baz" as the name. If you pass in a function handle,
|
|
101
|
-
* it will use the function handle directly.
|
|
102
|
-
*/
|
|
103
|
-
name?: string;
|
|
104
|
-
} & CallbackOptions & SchedulerOptions): Promise<WorkId>;
|
|
107
|
+
enqueueAction<Args extends DefaultFunctionArgs, ReturnType>(ctx: RunMutationCtx, fn: FunctionReference<"action", FunctionVisibility, Args, ReturnType>, fnArgs: Args, options?: RetryOption & CallbackOptions & SchedulerOptions & NameOption): Promise<WorkId>;
|
|
105
108
|
/**
|
|
106
109
|
* Enqueues a mutation to be run.
|
|
107
110
|
*
|
|
@@ -115,22 +118,8 @@ export declare class Workpool {
|
|
|
115
118
|
* @param options - The options for the mutation to specify onComplete handling
|
|
116
119
|
* and scheduling via `runAt` or `runAfter`.
|
|
117
120
|
*/
|
|
118
|
-
enqueueMutation<Args extends DefaultFunctionArgs, ReturnType>(ctx: RunMutationCtx, fn: FunctionReference<"mutation", FunctionVisibility, Args, ReturnType>, fnArgs: Args, options?: CallbackOptions & SchedulerOptions &
|
|
119
|
-
|
|
120
|
-
* The name of the function. By default, if you pass in api.foo.bar.baz,
|
|
121
|
-
* it will use "foo/bar:baz" as the name. If you pass in a function handle,
|
|
122
|
-
* it will use the function handle directly.
|
|
123
|
-
*/
|
|
124
|
-
name?: string;
|
|
125
|
-
}): Promise<WorkId>;
|
|
126
|
-
enqueueQuery<Args extends DefaultFunctionArgs, ReturnType>(ctx: RunMutationCtx, fn: FunctionReference<"query", FunctionVisibility, Args, ReturnType>, fnArgs: Args, options?: CallbackOptions & SchedulerOptions & {
|
|
127
|
-
/**
|
|
128
|
-
* The name of the function. By default, if you pass in api.foo.bar.baz,
|
|
129
|
-
* it will use "foo/bar:baz" as the name. If you pass in a function handle,
|
|
130
|
-
* it will use the function handle directly.
|
|
131
|
-
*/
|
|
132
|
-
name?: string;
|
|
133
|
-
}): Promise<WorkId>;
|
|
121
|
+
enqueueMutation<Args extends DefaultFunctionArgs, ReturnType>(ctx: RunMutationCtx, fn: FunctionReference<"mutation", FunctionVisibility, Args, ReturnType>, fnArgs: Args, options?: CallbackOptions & SchedulerOptions & NameOption): Promise<WorkId>;
|
|
122
|
+
enqueueQuery<Args extends DefaultFunctionArgs, ReturnType>(ctx: RunMutationCtx, fn: FunctionReference<"query", FunctionVisibility, Args, ReturnType>, fnArgs: Args, options?: CallbackOptions & SchedulerOptions & NameOption): Promise<WorkId>;
|
|
134
123
|
/**
|
|
135
124
|
* Cancels a work item. If it's already started, it will be allowed to finish
|
|
136
125
|
* 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,EAEnB,iBAAiB,EAEjB,kBAAkB,EAEnB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAK,OAAO,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAC;AACxD,OAAO,EAEL,KAAK,QAAQ,EAEd,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAIL,SAAS,IAAI,eAAe,EAC5B,KAAK,aAAa,EAClB,SAAS,EAET,MAAM,EACP,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,CAAC;AAC/D,OAAO,EAAE,aAAa,IAAI,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,QAAQ,IAAI,SAAS,EAAE,KAAK,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAC/E,OAAO,EAAE,eAAe,IAAI,gBAAgB,EAAE,CAAC;AAG/C,eAAO,MAAM,sBAAsB,EAAE,aAIpC,CAAC;AACF,MAAM,MAAM,MAAM,GAAG,MAAM,GAAG;IAAE,UAAU,EAAE,IAAI,CAAA;CAAE,CAAC;AACnD,eAAO,MAAM,eAAe,6BAAgC,CAAC;AAC7D,OAAO,EAAE,eAAe,IAAI,gBAAgB,EAAE,CAAC;AAE/C,qBAAa,QAAQ;IAajB,OAAO,CAAC,SAAS;IACV,OAAO,EAAE;QACd;;WAEG;QACH,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB;;;;;;;;WAQG;QACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;QACpB;;WAEG;QACH,oBAAoB,CAAC,EAAE,aAAa,CAAC;QACrC;;;WAGG;QACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;KACjC;IArCH;;;;;;;;;;OAUG;gBAEO,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,qCAAqC;IACjE,OAAO,EAAE;QACd;;WAEG;QACH,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB;;;;;;;;WAQG;QACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;QACpB;;WAEG;QACH,oBAAoB,CAAC,EAAE,aAAa,CAAC;QACrC;;;WAGG;QACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;KACjC;IAEH;;;;;;;;;OASG;IACG,aAAa,CAAC,IAAI,SAAS,mBAAmB,EAAE,UAAU,EAC9D,GAAG,EAAE,cAAc,EACnB,EAAE,EAAE,iBAAiB,CAAC,QAAQ,EAAE,kBAAkB,EAAE,IAAI,EAAE,UAAU,CAAC,EACrE,MAAM,EAAE,IAAI,EACZ,OAAO,CAAC,EAAE
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createFunctionHandle, getFunctionName, } from "convex/server";
|
|
2
2
|
import { v } from "convex/values";
|
|
3
|
-
import { DEFAULT_LOG_LEVEL,
|
|
3
|
+
import { DEFAULT_LOG_LEVEL, } from "../component/logging.js";
|
|
4
4
|
import { DEFAULT_MAX_PARALLELISM, runResult as resultValidator, } from "../component/shared.js";
|
|
5
5
|
export { resultValidator };
|
|
6
6
|
export { retryBehavior as vRetryBehavior } from "../component/shared.js";
|
|
@@ -116,7 +116,7 @@ export class Workpool {
|
|
|
116
116
|
async cancel(ctx, id) {
|
|
117
117
|
await ctx.runMutation(this.component.lib.cancel, {
|
|
118
118
|
id,
|
|
119
|
-
logLevel: this.options.logLevel ??
|
|
119
|
+
logLevel: this.options.logLevel ?? DEFAULT_LOG_LEVEL,
|
|
120
120
|
});
|
|
121
121
|
}
|
|
122
122
|
/**
|
|
@@ -126,7 +126,7 @@ export class Workpool {
|
|
|
126
126
|
*/
|
|
127
127
|
async cancelAll(ctx) {
|
|
128
128
|
await ctx.runMutation(this.component.lib.cancelAll, {
|
|
129
|
-
logLevel: this.options.logLevel ??
|
|
129
|
+
logLevel: this.options.logLevel ?? DEFAULT_LOG_LEVEL,
|
|
130
130
|
});
|
|
131
131
|
}
|
|
132
132
|
/**
|
|
@@ -167,7 +167,7 @@ async function defaultEnqueueArgs(fn, name, { logLevel, maxParallelism }) {
|
|
|
167
167
|
fnHandle,
|
|
168
168
|
fnName,
|
|
169
169
|
config: {
|
|
170
|
-
logLevel: logLevel ??
|
|
170
|
+
logLevel: logLevel ?? DEFAULT_LOG_LEVEL,
|
|
171
171
|
maxParallelism: maxParallelism ?? DEFAULT_MAX_PARALLELISM,
|
|
172
172
|
},
|
|
173
173
|
};
|
|
@@ -184,17 +184,4 @@ function getRunAt(options) {
|
|
|
184
184
|
}
|
|
185
185
|
return Date.now();
|
|
186
186
|
}
|
|
187
|
-
function getDefaultLogLevel() {
|
|
188
|
-
if (process.env.WORKPOOL_LOG_LEVEL) {
|
|
189
|
-
if (!logLevel.members
|
|
190
|
-
.map((m) => m.value)
|
|
191
|
-
.includes(process.env.WORKPOOL_LOG_LEVEL)) {
|
|
192
|
-
console.warn(`Invalid log level (${process.env.WORKPOOL_LOG_LEVEL}), defaulting to "INFO"`);
|
|
193
|
-
}
|
|
194
|
-
else {
|
|
195
|
-
return process.env.WORKPOOL_LOG_LEVEL;
|
|
196
|
-
}
|
|
197
|
-
}
|
|
198
|
-
return DEFAULT_LOG_LEVEL;
|
|
199
|
-
}
|
|
200
187
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EAMpB,eAAe,GAChB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,CAAC,EAAW,MAAM,eAAe,CAAC;AAE3C,OAAO,EACL,iBAAiB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,22 @@ export type WorkId = string & {
|
|
|
14
14
|
};
|
|
15
15
|
export declare const workIdValidator: VString<WorkId, "required">;
|
|
16
16
|
export { workIdValidator as vWorkIdValidator };
|
|
17
|
+
export type NameOption = {
|
|
18
|
+
/**
|
|
19
|
+
* The name of the function. By default, if you pass in api.foo.bar.baz,
|
|
20
|
+
* it will use "foo/bar:baz" as the name. If you pass in a function handle,
|
|
21
|
+
* it will use the function handle directly.
|
|
22
|
+
*/
|
|
23
|
+
name?: string;
|
|
24
|
+
};
|
|
25
|
+
export type RetryOption = {
|
|
26
|
+
/** Whether to retry the action if it fails.
|
|
27
|
+
* If true, it will use the default retry behavior.
|
|
28
|
+
* If custom behavior is provided, it will retry using that behavior.
|
|
29
|
+
* If unset, it will use the Workpool's configured default.
|
|
30
|
+
*/
|
|
31
|
+
retry?: boolean | RetryBehavior;
|
|
32
|
+
};
|
|
17
33
|
export declare class Workpool {
|
|
18
34
|
private component;
|
|
19
35
|
options: {
|
|
@@ -88,20 +104,7 @@ export declare class Workpool {
|
|
|
88
104
|
* onComplete handling, and scheduling via `runAt` or `runAfter`.
|
|
89
105
|
* @returns The ID of the work that was enqueued.
|
|
90
106
|
*/
|
|
91
|
-
enqueueAction<Args extends DefaultFunctionArgs, ReturnType>(ctx: RunMutationCtx, fn: FunctionReference<"action", FunctionVisibility, Args, ReturnType>, fnArgs: Args, options?:
|
|
92
|
-
/** Whether to retry the action if it fails.
|
|
93
|
-
* If true, it will use the default retry behavior.
|
|
94
|
-
* If custom behavior is provided, it will retry using that behavior.
|
|
95
|
-
* If unset, it will use the Workpool's configured default.
|
|
96
|
-
*/
|
|
97
|
-
retry?: boolean | RetryBehavior;
|
|
98
|
-
/**
|
|
99
|
-
* The name of the function. By default, if you pass in api.foo.bar.baz,
|
|
100
|
-
* it will use "foo/bar:baz" as the name. If you pass in a function handle,
|
|
101
|
-
* it will use the function handle directly.
|
|
102
|
-
*/
|
|
103
|
-
name?: string;
|
|
104
|
-
} & CallbackOptions & SchedulerOptions): Promise<WorkId>;
|
|
107
|
+
enqueueAction<Args extends DefaultFunctionArgs, ReturnType>(ctx: RunMutationCtx, fn: FunctionReference<"action", FunctionVisibility, Args, ReturnType>, fnArgs: Args, options?: RetryOption & CallbackOptions & SchedulerOptions & NameOption): Promise<WorkId>;
|
|
105
108
|
/**
|
|
106
109
|
* Enqueues a mutation to be run.
|
|
107
110
|
*
|
|
@@ -115,22 +118,8 @@ export declare class Workpool {
|
|
|
115
118
|
* @param options - The options for the mutation to specify onComplete handling
|
|
116
119
|
* and scheduling via `runAt` or `runAfter`.
|
|
117
120
|
*/
|
|
118
|
-
enqueueMutation<Args extends DefaultFunctionArgs, ReturnType>(ctx: RunMutationCtx, fn: FunctionReference<"mutation", FunctionVisibility, Args, ReturnType>, fnArgs: Args, options?: CallbackOptions & SchedulerOptions &
|
|
119
|
-
|
|
120
|
-
* The name of the function. By default, if you pass in api.foo.bar.baz,
|
|
121
|
-
* it will use "foo/bar:baz" as the name. If you pass in a function handle,
|
|
122
|
-
* it will use the function handle directly.
|
|
123
|
-
*/
|
|
124
|
-
name?: string;
|
|
125
|
-
}): Promise<WorkId>;
|
|
126
|
-
enqueueQuery<Args extends DefaultFunctionArgs, ReturnType>(ctx: RunMutationCtx, fn: FunctionReference<"query", FunctionVisibility, Args, ReturnType>, fnArgs: Args, options?: CallbackOptions & SchedulerOptions & {
|
|
127
|
-
/**
|
|
128
|
-
* The name of the function. By default, if you pass in api.foo.bar.baz,
|
|
129
|
-
* it will use "foo/bar:baz" as the name. If you pass in a function handle,
|
|
130
|
-
* it will use the function handle directly.
|
|
131
|
-
*/
|
|
132
|
-
name?: string;
|
|
133
|
-
}): Promise<WorkId>;
|
|
121
|
+
enqueueMutation<Args extends DefaultFunctionArgs, ReturnType>(ctx: RunMutationCtx, fn: FunctionReference<"mutation", FunctionVisibility, Args, ReturnType>, fnArgs: Args, options?: CallbackOptions & SchedulerOptions & NameOption): Promise<WorkId>;
|
|
122
|
+
enqueueQuery<Args extends DefaultFunctionArgs, ReturnType>(ctx: RunMutationCtx, fn: FunctionReference<"query", FunctionVisibility, Args, ReturnType>, fnArgs: Args, options?: CallbackOptions & SchedulerOptions & NameOption): Promise<WorkId>;
|
|
134
123
|
/**
|
|
135
124
|
* Cancels a work item. If it's already started, it will be allowed to finish
|
|
136
125
|
* 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,EAEnB,iBAAiB,EAEjB,kBAAkB,EAEnB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAK,OAAO,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAC;AACxD,OAAO,EAEL,KAAK,QAAQ,EAEd,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAIL,SAAS,IAAI,eAAe,EAC5B,KAAK,aAAa,EAClB,SAAS,EAET,MAAM,EACP,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,CAAC;AAC/D,OAAO,EAAE,aAAa,IAAI,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,QAAQ,IAAI,SAAS,EAAE,KAAK,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAC/E,OAAO,EAAE,eAAe,IAAI,gBAAgB,EAAE,CAAC;AAG/C,eAAO,MAAM,sBAAsB,EAAE,aAIpC,CAAC;AACF,MAAM,MAAM,MAAM,GAAG,MAAM,GAAG;IAAE,UAAU,EAAE,IAAI,CAAA;CAAE,CAAC;AACnD,eAAO,MAAM,eAAe,6BAAgC,CAAC;AAC7D,OAAO,EAAE,eAAe,IAAI,gBAAgB,EAAE,CAAC;AAE/C,qBAAa,QAAQ;IAajB,OAAO,CAAC,SAAS;IACV,OAAO,EAAE;QACd;;WAEG;QACH,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB;;;;;;;;WAQG;QACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;QACpB;;WAEG;QACH,oBAAoB,CAAC,EAAE,aAAa,CAAC;QACrC;;;WAGG;QACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;KACjC;IArCH;;;;;;;;;;OAUG;gBAEO,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,qCAAqC;IACjE,OAAO,EAAE;QACd;;WAEG;QACH,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB;;;;;;;;WAQG;QACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;QACpB;;WAEG;QACH,oBAAoB,CAAC,EAAE,aAAa,CAAC;QACrC;;;WAGG;QACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;KACjC;IAEH;;;;;;;;;OASG;IACG,aAAa,CAAC,IAAI,SAAS,mBAAmB,EAAE,UAAU,EAC9D,GAAG,EAAE,cAAc,EACnB,EAAE,EAAE,iBAAiB,CAAC,QAAQ,EAAE,kBAAkB,EAAE,IAAI,EAAE,UAAU,CAAC,EACrE,MAAM,EAAE,IAAI,EACZ,OAAO,CAAC,EAAE
|
|
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,6 +1,6 @@
|
|
|
1
1
|
import { createFunctionHandle, getFunctionName, } from "convex/server";
|
|
2
2
|
import { v } from "convex/values";
|
|
3
|
-
import { DEFAULT_LOG_LEVEL,
|
|
3
|
+
import { DEFAULT_LOG_LEVEL, } from "../component/logging.js";
|
|
4
4
|
import { DEFAULT_MAX_PARALLELISM, runResult as resultValidator, } from "../component/shared.js";
|
|
5
5
|
export { resultValidator };
|
|
6
6
|
export { retryBehavior as vRetryBehavior } from "../component/shared.js";
|
|
@@ -116,7 +116,7 @@ export class Workpool {
|
|
|
116
116
|
async cancel(ctx, id) {
|
|
117
117
|
await ctx.runMutation(this.component.lib.cancel, {
|
|
118
118
|
id,
|
|
119
|
-
logLevel: this.options.logLevel ??
|
|
119
|
+
logLevel: this.options.logLevel ?? DEFAULT_LOG_LEVEL,
|
|
120
120
|
});
|
|
121
121
|
}
|
|
122
122
|
/**
|
|
@@ -126,7 +126,7 @@ export class Workpool {
|
|
|
126
126
|
*/
|
|
127
127
|
async cancelAll(ctx) {
|
|
128
128
|
await ctx.runMutation(this.component.lib.cancelAll, {
|
|
129
|
-
logLevel: this.options.logLevel ??
|
|
129
|
+
logLevel: this.options.logLevel ?? DEFAULT_LOG_LEVEL,
|
|
130
130
|
});
|
|
131
131
|
}
|
|
132
132
|
/**
|
|
@@ -167,7 +167,7 @@ async function defaultEnqueueArgs(fn, name, { logLevel, maxParallelism }) {
|
|
|
167
167
|
fnHandle,
|
|
168
168
|
fnName,
|
|
169
169
|
config: {
|
|
170
|
-
logLevel: logLevel ??
|
|
170
|
+
logLevel: logLevel ?? DEFAULT_LOG_LEVEL,
|
|
171
171
|
maxParallelism: maxParallelism ?? DEFAULT_MAX_PARALLELISM,
|
|
172
172
|
},
|
|
173
173
|
};
|
|
@@ -184,17 +184,4 @@ function getRunAt(options) {
|
|
|
184
184
|
}
|
|
185
185
|
return Date.now();
|
|
186
186
|
}
|
|
187
|
-
function getDefaultLogLevel() {
|
|
188
|
-
if (process.env.WORKPOOL_LOG_LEVEL) {
|
|
189
|
-
if (!logLevel.members
|
|
190
|
-
.map((m) => m.value)
|
|
191
|
-
.includes(process.env.WORKPOOL_LOG_LEVEL)) {
|
|
192
|
-
console.warn(`Invalid log level (${process.env.WORKPOOL_LOG_LEVEL}), defaulting to "INFO"`);
|
|
193
|
-
}
|
|
194
|
-
else {
|
|
195
|
-
return process.env.WORKPOOL_LOG_LEVEL;
|
|
196
|
-
}
|
|
197
|
-
}
|
|
198
|
-
return DEFAULT_LOG_LEVEL;
|
|
199
|
-
}
|
|
200
187
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EAMpB,eAAe,GAChB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,CAAC,EAAW,MAAM,eAAe,CAAC;AAE3C,OAAO,EACL,iBAAiB,
|
|
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
|
@@ -40,6 +40,24 @@ export type WorkId = string & { __isWorkId: true };
|
|
|
40
40
|
export const workIdValidator = v.string() as VString<WorkId>;
|
|
41
41
|
export { workIdValidator as vWorkIdValidator };
|
|
42
42
|
|
|
43
|
+
export type NameOption = {
|
|
44
|
+
/**
|
|
45
|
+
* The name of the function. By default, if you pass in api.foo.bar.baz,
|
|
46
|
+
* it will use "foo/bar:baz" as the name. If you pass in a function handle,
|
|
47
|
+
* it will use the function handle directly.
|
|
48
|
+
*/
|
|
49
|
+
name?: string;
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
export type RetryOption = {
|
|
53
|
+
/** Whether to retry the action if it fails.
|
|
54
|
+
* If true, it will use the default retry behavior.
|
|
55
|
+
* If custom behavior is provided, it will retry using that behavior.
|
|
56
|
+
* If unset, it will use the Workpool's configured default.
|
|
57
|
+
*/
|
|
58
|
+
retry?: boolean | RetryBehavior;
|
|
59
|
+
};
|
|
60
|
+
|
|
43
61
|
export class Workpool {
|
|
44
62
|
/**
|
|
45
63
|
* Initializes a Workpool.
|
|
@@ -94,21 +112,7 @@ export class Workpool {
|
|
|
94
112
|
ctx: RunMutationCtx,
|
|
95
113
|
fn: FunctionReference<"action", FunctionVisibility, Args, ReturnType>,
|
|
96
114
|
fnArgs: Args,
|
|
97
|
-
options?:
|
|
98
|
-
/** Whether to retry the action if it fails.
|
|
99
|
-
* If true, it will use the default retry behavior.
|
|
100
|
-
* If custom behavior is provided, it will retry using that behavior.
|
|
101
|
-
* If unset, it will use the Workpool's configured default.
|
|
102
|
-
*/
|
|
103
|
-
retry?: boolean | RetryBehavior;
|
|
104
|
-
/**
|
|
105
|
-
* The name of the function. By default, if you pass in api.foo.bar.baz,
|
|
106
|
-
* it will use "foo/bar:baz" as the name. If you pass in a function handle,
|
|
107
|
-
* it will use the function handle directly.
|
|
108
|
-
*/
|
|
109
|
-
name?: string;
|
|
110
|
-
} & CallbackOptions &
|
|
111
|
-
SchedulerOptions
|
|
115
|
+
options?: RetryOption & CallbackOptions & SchedulerOptions & NameOption
|
|
112
116
|
): Promise<WorkId> {
|
|
113
117
|
const retryBehavior = getRetryBehavior(
|
|
114
118
|
this.options.defaultRetryBehavior,
|
|
@@ -149,15 +153,7 @@ export class Workpool {
|
|
|
149
153
|
ctx: RunMutationCtx,
|
|
150
154
|
fn: FunctionReference<"mutation", FunctionVisibility, Args, ReturnType>,
|
|
151
155
|
fnArgs: Args,
|
|
152
|
-
options?: CallbackOptions &
|
|
153
|
-
SchedulerOptions & {
|
|
154
|
-
/**
|
|
155
|
-
* The name of the function. By default, if you pass in api.foo.bar.baz,
|
|
156
|
-
* it will use "foo/bar:baz" as the name. If you pass in a function handle,
|
|
157
|
-
* it will use the function handle directly.
|
|
158
|
-
*/
|
|
159
|
-
name?: string;
|
|
160
|
-
}
|
|
156
|
+
options?: CallbackOptions & SchedulerOptions & NameOption
|
|
161
157
|
): Promise<WorkId> {
|
|
162
158
|
const onComplete: OnComplete | undefined = options?.onComplete
|
|
163
159
|
? {
|
|
@@ -179,15 +175,7 @@ export class Workpool {
|
|
|
179
175
|
ctx: RunMutationCtx,
|
|
180
176
|
fn: FunctionReference<"query", FunctionVisibility, Args, ReturnType>,
|
|
181
177
|
fnArgs: Args,
|
|
182
|
-
options?: CallbackOptions &
|
|
183
|
-
SchedulerOptions & {
|
|
184
|
-
/**
|
|
185
|
-
* The name of the function. By default, if you pass in api.foo.bar.baz,
|
|
186
|
-
* it will use "foo/bar:baz" as the name. If you pass in a function handle,
|
|
187
|
-
* it will use the function handle directly.
|
|
188
|
-
*/
|
|
189
|
-
name?: string;
|
|
190
|
-
}
|
|
178
|
+
options?: CallbackOptions & SchedulerOptions & NameOption
|
|
191
179
|
): Promise<WorkId> {
|
|
192
180
|
const onComplete: OnComplete | undefined = options?.onComplete
|
|
193
181
|
? {
|
|
@@ -215,7 +203,7 @@ export class Workpool {
|
|
|
215
203
|
async cancel(ctx: RunMutationCtx, id: WorkId): Promise<void> {
|
|
216
204
|
await ctx.runMutation(this.component.lib.cancel, {
|
|
217
205
|
id,
|
|
218
|
-
logLevel: this.options.logLevel ??
|
|
206
|
+
logLevel: this.options.logLevel ?? DEFAULT_LOG_LEVEL,
|
|
219
207
|
});
|
|
220
208
|
}
|
|
221
209
|
/**
|
|
@@ -225,7 +213,7 @@ export class Workpool {
|
|
|
225
213
|
*/
|
|
226
214
|
async cancelAll(ctx: RunMutationCtx): Promise<void> {
|
|
227
215
|
await ctx.runMutation(this.component.lib.cancelAll, {
|
|
228
|
-
logLevel: this.options.logLevel ??
|
|
216
|
+
logLevel: this.options.logLevel ?? DEFAULT_LOG_LEVEL,
|
|
229
217
|
});
|
|
230
218
|
}
|
|
231
219
|
/**
|
|
@@ -345,7 +333,7 @@ async function defaultEnqueueArgs(
|
|
|
345
333
|
fnHandle,
|
|
346
334
|
fnName,
|
|
347
335
|
config: {
|
|
348
|
-
logLevel: logLevel ??
|
|
336
|
+
logLevel: logLevel ?? DEFAULT_LOG_LEVEL,
|
|
349
337
|
maxParallelism: maxParallelism ?? DEFAULT_MAX_PARALLELISM,
|
|
350
338
|
},
|
|
351
339
|
};
|
|
@@ -363,20 +351,3 @@ function getRunAt(options?: SchedulerOptions): number {
|
|
|
363
351
|
}
|
|
364
352
|
return Date.now();
|
|
365
353
|
}
|
|
366
|
-
|
|
367
|
-
function getDefaultLogLevel(): LogLevel {
|
|
368
|
-
if (process.env.WORKPOOL_LOG_LEVEL) {
|
|
369
|
-
if (
|
|
370
|
-
!logLevel.members
|
|
371
|
-
.map((m) => m.value as string)
|
|
372
|
-
.includes(process.env.WORKPOOL_LOG_LEVEL)
|
|
373
|
-
) {
|
|
374
|
-
console.warn(
|
|
375
|
-
`Invalid log level (${process.env.WORKPOOL_LOG_LEVEL}), defaulting to "INFO"`
|
|
376
|
-
);
|
|
377
|
-
} else {
|
|
378
|
-
return process.env.WORKPOOL_LOG_LEVEL as LogLevel;
|
|
379
|
-
}
|
|
380
|
-
}
|
|
381
|
-
return DEFAULT_LOG_LEVEL;
|
|
382
|
-
}
|