inngest 2.0.2 → 2.1.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/CHANGELOG.md +6 -0
- package/components/InngestStepTools.d.ts +6 -6
- package/components/InngestStepTools.d.ts.map +1 -1
- package/components/InngestStepTools.js +25 -8
- package/components/InngestStepTools.js.map +1 -1
- package/landing.d.ts +1 -1
- package/landing.d.ts.map +1 -1
- package/landing.js +1 -1
- package/landing.js.map +1 -1
- package/package.json +1 -1
- package/types.d.ts +15 -0
- package/types.d.ts.map +1 -1
- package/version.d.ts +1 -1
- package/version.js +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type Jsonify } from "type-fest";
|
|
2
2
|
import { type ObjectPaths, type SendEventPayload } from "../helpers/types";
|
|
3
|
-
import { StepOpCode, type ClientOptions, type EventPayload, type HashedOp } from "../types";
|
|
3
|
+
import { StepOpCode, type ClientOptions, type EventPayload, type HashedOp, type StepOpts } from "../types";
|
|
4
4
|
import { type EventsFromOpts, type Inngest } from "./Inngest";
|
|
5
5
|
import { type ExecutionState } from "./InngestFunction";
|
|
6
6
|
export interface TickOp extends HashedOp {
|
|
@@ -43,7 +43,7 @@ export declare const createStepTools: <TOpts extends ClientOptions, Events exten
|
|
|
43
43
|
*
|
|
44
44
|
* Returns a promise that will resolve once the event has been sent.
|
|
45
45
|
*/
|
|
46
|
-
sendEvent: <Payload extends SendEventPayload<EventsFromOpts<TOpts>>>(payload: Payload) => Promise<void>;
|
|
46
|
+
sendEvent: <Payload extends SendEventPayload<EventsFromOpts<TOpts>>>(payload: Payload, opts?: StepOpts) => Promise<void>;
|
|
47
47
|
/**
|
|
48
48
|
* Wait for a particular event to be received before continuing. When the
|
|
49
49
|
* event is received, it will be returned.
|
|
@@ -70,7 +70,7 @@ export declare const createStepTools: <TOpts extends ClientOptions, Events exten
|
|
|
70
70
|
* of the `run` tool, meaning you can return and reason about return data
|
|
71
71
|
* for next steps.
|
|
72
72
|
*/
|
|
73
|
-
run: <T extends () => unknown>(name: string, fn: T) => Promise<Jsonify<T extends () => Promise<infer U> ? Awaited<U extends void ? null : U> : ReturnType<T> extends void ? null : ReturnType<T>>>;
|
|
73
|
+
run: <T extends () => unknown>(name: string, fn: T, opts?: StepOpts) => Promise<Jsonify<T extends () => Promise<infer U> ? Awaited<U extends void ? null : U> : ReturnType<T> extends void ? null : ReturnType<T>>>;
|
|
74
74
|
/**
|
|
75
75
|
* Wait a specified amount of time before continuing.
|
|
76
76
|
*
|
|
@@ -81,20 +81,20 @@ export declare const createStepTools: <TOpts extends ClientOptions, Events exten
|
|
|
81
81
|
*
|
|
82
82
|
* To wait until a particular date, use `sleepUntil` instead.
|
|
83
83
|
*/
|
|
84
|
-
sleep: (time: number | string) => Promise<void>;
|
|
84
|
+
sleep: (time: number | string, opts?: StepOpts) => Promise<void>;
|
|
85
85
|
/**
|
|
86
86
|
* Wait until a particular date before continuing by passing a `Date`.
|
|
87
87
|
*
|
|
88
88
|
* To wait for a particular amount of time from now, always use `sleep`
|
|
89
89
|
* instead.
|
|
90
90
|
*/
|
|
91
|
-
sleepUntil: (time: Date | string) => Promise<void>;
|
|
91
|
+
sleepUntil: (time: Date | string, opts?: StepOpts) => Promise<void>;
|
|
92
92
|
};
|
|
93
93
|
/**
|
|
94
94
|
* A set of optional parameters given to a `waitForEvent` call to control how
|
|
95
95
|
* the event is handled.
|
|
96
96
|
*/
|
|
97
|
-
interface WaitForEventOpts<TriggeringEvent extends EventPayload, IncomingEvent extends EventPayload> {
|
|
97
|
+
interface WaitForEventOpts<TriggeringEvent extends EventPayload, IncomingEvent extends EventPayload> extends StepOpts {
|
|
98
98
|
/**
|
|
99
99
|
* The step function will wait for the event for a maximum of this time, at
|
|
100
100
|
* which point the event will be returned as `null` instead of any event data.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InngestStepTools.d.ts","sourceRoot":"","sources":["../../src/components/InngestStepTools.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AAOzC,OAAO,
|
|
1
|
+
{"version":3,"file":"InngestStepTools.d.ts","sourceRoot":"","sources":["../../src/components/InngestStepTools.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AAOzC,OAAO,EACL,KAAK,WAAW,EAEhB,KAAK,gBAAgB,EACtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,UAAU,EACV,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,QAAQ,EACb,KAAK,QAAQ,EACd,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AAC9D,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGxD,MAAM,WAAW,MAAO,SAAQ,QAAQ;IACtC,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC;IACrC,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;IACzD,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;CACpC;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,oJAMnB,cAAc;IAuJnB;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;kGAIQ,QAAQ,KACd,QAAQ,IAAI,CAAC;IAiBlB;;;;;;;;OAQG;;;;;;IAmEH;;;;;;;;;;;OAWG;0BAEgB,OAAO,QAMhB,MAAM,gBAWL,QAAQ;IAyBnB;;;;;;;;;OASG;kBAMO,MAAM,GAAG,MAAM,SACd,QAAQ,KACZ,QAAQ,IAAI,CAAC;IAapB;;;;;OAKG;uBAMO,IAAI,GAAG,MAAM,SACZ,QAAQ,KACZ,QAAQ,IAAI,CAAC;CA+BvB,CAAC;AAEF;;;GAGG;AACH,UAAU,gBAAgB,CACxB,eAAe,SAAS,YAAY,EACpC,aAAa,SAAS,YAAY,CAClC,SAAQ,QAAQ;IAChB;;;;;;;;;OASG;IACH,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAEhC;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,KAAK,CAAC,EAAE,WAAW,CAAC,eAAe,CAAC,GAAG,WAAW,CAAC,aAAa,CAAC,CAAC;IAElE;;;;;;;;;;;OAWG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED;;;;GAIG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,UAAU,CAAC;IACf,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACrC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAMF;;GAEG;AACH,eAAO,MAAM,UAAU;mBAPD,UAAU,KAAG,MAAM;CAOH,CAAC"}
|
|
@@ -23,16 +23,26 @@ const createStepTools = (client, state) => {
|
|
|
23
23
|
state.tickOps = state.allFoundOps;
|
|
24
24
|
/**
|
|
25
25
|
* Create a unique hash of an operation using only a subset of the operation's
|
|
26
|
-
* properties; will never use `data` and will guarantee the order of the
|
|
27
|
-
* so we don't rely on individual tools for that.
|
|
26
|
+
* properties; will never use `data` and will guarantee the order of the
|
|
27
|
+
* object so we don't rely on individual tools for that.
|
|
28
|
+
*
|
|
29
|
+
* If the operation already contains an ID, the current ID will be used
|
|
30
|
+
* instead, so that users can provide their own IDs.
|
|
28
31
|
*/
|
|
29
32
|
const hashOp = (
|
|
30
33
|
/**
|
|
31
|
-
* The op to generate a hash from. We only use a subset of the op's
|
|
32
|
-
* when creating the hash.
|
|
34
|
+
* The op to generate a hash from. We only use a subset of the op's
|
|
35
|
+
* properties when creating the hash.
|
|
33
36
|
*/
|
|
34
37
|
op) => {
|
|
35
38
|
var _a, _b, _c, _d;
|
|
39
|
+
/**
|
|
40
|
+
* If the op already has an ID, we don't need to generate one. This allows
|
|
41
|
+
* users to specify their own IDs.
|
|
42
|
+
*/
|
|
43
|
+
if (op.id) {
|
|
44
|
+
return op;
|
|
45
|
+
}
|
|
36
46
|
const obj = {
|
|
37
47
|
parent: (_b = (_a = state.currentOp) === null || _a === void 0 ? void 0 : _a.id) !== null && _b !== void 0 ? _b : null,
|
|
38
48
|
op: op.op,
|
|
@@ -120,8 +130,9 @@ const createStepTools = (client, state) => {
|
|
|
120
130
|
*
|
|
121
131
|
* Returns a promise that will resolve once the event has been sent.
|
|
122
132
|
*/
|
|
123
|
-
sendEvent: createTool(() => {
|
|
133
|
+
sendEvent: createTool((_payload, opts) => {
|
|
124
134
|
return {
|
|
135
|
+
id: opts === null || opts === void 0 ? void 0 : opts.id,
|
|
125
136
|
op: types_1.StepOpCode.StepPlanned,
|
|
126
137
|
name: "sendEvent",
|
|
127
138
|
};
|
|
@@ -153,7 +164,9 @@ const createStepTools = (client, state) => {
|
|
|
153
164
|
const matchOpts = {
|
|
154
165
|
timeout: (0, strings_1.timeStr)(typeof opts === "string" ? opts : opts.timeout),
|
|
155
166
|
};
|
|
167
|
+
let id;
|
|
156
168
|
if (typeof opts !== "string") {
|
|
169
|
+
id = opts === null || opts === void 0 ? void 0 : opts.id;
|
|
157
170
|
if (opts === null || opts === void 0 ? void 0 : opts.match) {
|
|
158
171
|
matchOpts.if = `event.${opts.match} == async.${opts.match}`;
|
|
159
172
|
}
|
|
@@ -162,6 +175,7 @@ const createStepTools = (client, state) => {
|
|
|
162
175
|
}
|
|
163
176
|
}
|
|
164
177
|
return {
|
|
178
|
+
id,
|
|
165
179
|
op: types_1.StepOpCode.WaitForEvent,
|
|
166
180
|
name: event,
|
|
167
181
|
opts: matchOpts,
|
|
@@ -179,8 +193,9 @@ const createStepTools = (client, state) => {
|
|
|
179
193
|
* of the `run` tool, meaning you can return and reason about return data
|
|
180
194
|
* for next steps.
|
|
181
195
|
*/
|
|
182
|
-
run: createTool((name) => {
|
|
196
|
+
run: createTool((name, _fn, opts) => {
|
|
183
197
|
return {
|
|
198
|
+
id: opts === null || opts === void 0 ? void 0 : opts.id,
|
|
184
199
|
op: types_1.StepOpCode.StepPlanned,
|
|
185
200
|
name,
|
|
186
201
|
};
|
|
@@ -195,12 +210,13 @@ const createStepTools = (client, state) => {
|
|
|
195
210
|
*
|
|
196
211
|
* To wait until a particular date, use `sleepUntil` instead.
|
|
197
212
|
*/
|
|
198
|
-
sleep: createTool((time) => {
|
|
213
|
+
sleep: createTool((time, opts) => {
|
|
199
214
|
/**
|
|
200
215
|
* The presence of this operation in the returned stack indicates that the
|
|
201
216
|
* sleep is over and we should continue execution.
|
|
202
217
|
*/
|
|
203
218
|
return {
|
|
219
|
+
id: opts === null || opts === void 0 ? void 0 : opts.id,
|
|
204
220
|
op: types_1.StepOpCode.Sleep,
|
|
205
221
|
name: (0, strings_1.timeStr)(time),
|
|
206
222
|
};
|
|
@@ -211,7 +227,7 @@ const createStepTools = (client, state) => {
|
|
|
211
227
|
* To wait for a particular amount of time from now, always use `sleep`
|
|
212
228
|
* instead.
|
|
213
229
|
*/
|
|
214
|
-
sleepUntil: createTool((time) => {
|
|
230
|
+
sleepUntil: createTool((time, opts) => {
|
|
215
231
|
const date = typeof time === "string" ? new Date(time) : time;
|
|
216
232
|
/**
|
|
217
233
|
* The presence of this operation in the returned stack indicates that the
|
|
@@ -219,6 +235,7 @@ const createStepTools = (client, state) => {
|
|
|
219
235
|
*/
|
|
220
236
|
try {
|
|
221
237
|
return {
|
|
238
|
+
id: opts === null || opts === void 0 ? void 0 : opts.id,
|
|
222
239
|
op: types_1.StepOpCode.Sleep,
|
|
223
240
|
name: date.toISOString(),
|
|
224
241
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InngestStepTools.js","sourceRoot":"","sources":["../../src/components/InngestStepTools.ts"],"names":[],"mappings":";;;;;;AAAA,gEAAwC;AACxC,qCAA+B;AAE/B,8CAI2B;AAC3B,gDAA6C;
|
|
1
|
+
{"version":3,"file":"InngestStepTools.js","sourceRoot":"","sources":["../../src/components/InngestStepTools.ts"],"names":[],"mappings":"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"}
|