@beignet/provider-inngest 0.0.1 → 0.0.2
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 +11 -0
- package/dist/index.d.ts +58 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -0
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +58 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,16 @@
|
|
|
1
1
|
# @beignet/provider-inngest
|
|
2
2
|
|
|
3
|
+
## 0.0.2
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Updated dependencies [90b29ad]
|
|
8
|
+
- Updated dependencies [07fa19c]
|
|
9
|
+
- Updated dependencies [08bae67]
|
|
10
|
+
- Updated dependencies [730a818]
|
|
11
|
+
- Updated dependencies [a79f60c]
|
|
12
|
+
- @beignet/core@0.0.2
|
|
13
|
+
|
|
3
14
|
## 0.0.1
|
|
4
15
|
|
|
5
16
|
- Initial Beignet release under the `@beignet` npm scope.
|
package/dist/index.d.ts
CHANGED
|
@@ -69,29 +69,87 @@ export interface InngestPort {
|
|
|
69
69
|
data: TData;
|
|
70
70
|
}): Promise<void>;
|
|
71
71
|
}
|
|
72
|
+
/**
|
|
73
|
+
* Options for `createInngestJobDispatcher(...)`.
|
|
74
|
+
*/
|
|
72
75
|
export interface InngestJobDispatcherOptions {
|
|
76
|
+
/**
|
|
77
|
+
* Optional provider instrumentation target.
|
|
78
|
+
*/
|
|
73
79
|
instrumentation?: ProviderInstrumentationTarget;
|
|
74
80
|
}
|
|
81
|
+
/**
|
|
82
|
+
* Retry attempts accepted by Inngest function definitions.
|
|
83
|
+
*/
|
|
75
84
|
export type InngestFunctionRetryAttempts = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20;
|
|
85
|
+
/**
|
|
86
|
+
* Static or request-aware context for an Inngest job function.
|
|
87
|
+
*/
|
|
76
88
|
export type InngestJobFunctionContext<Ctx> = Ctx | ((args: InngestJobFunctionContextArgs) => MaybePromise<Ctx>);
|
|
89
|
+
/**
|
|
90
|
+
* Arguments passed to an Inngest job function context factory.
|
|
91
|
+
*/
|
|
77
92
|
export interface InngestJobFunctionContextArgs {
|
|
93
|
+
/**
|
|
94
|
+
* Inngest event payload wrapper.
|
|
95
|
+
*/
|
|
78
96
|
event: {
|
|
79
97
|
name: string;
|
|
80
98
|
data: unknown;
|
|
81
99
|
};
|
|
100
|
+
/**
|
|
101
|
+
* Raw Inngest step object.
|
|
102
|
+
*/
|
|
82
103
|
step: unknown;
|
|
83
104
|
}
|
|
105
|
+
/**
|
|
106
|
+
* Instrumentation target for Inngest job functions.
|
|
107
|
+
*/
|
|
84
108
|
export type InngestJobFunctionInstrumentation = ProviderInstrumentationTarget;
|
|
109
|
+
/**
|
|
110
|
+
* Options for creating an Inngest function from a Beignet job definition.
|
|
111
|
+
*/
|
|
85
112
|
export interface CreateInngestJobFunctionOptions<J extends JobDef<string, StandardSchema, Ctx>, Ctx> {
|
|
113
|
+
/**
|
|
114
|
+
* Raw Inngest client.
|
|
115
|
+
*/
|
|
86
116
|
client: Inngest;
|
|
117
|
+
/**
|
|
118
|
+
* Beignet job definition.
|
|
119
|
+
*/
|
|
87
120
|
job: J;
|
|
121
|
+
/**
|
|
122
|
+
* Inngest function ID. Defaults to the job name.
|
|
123
|
+
*/
|
|
88
124
|
id?: string;
|
|
125
|
+
/**
|
|
126
|
+
* Inngest function display name. Defaults to the job name.
|
|
127
|
+
*/
|
|
89
128
|
name?: string;
|
|
129
|
+
/**
|
|
130
|
+
* Inngest function description. Defaults to the job description.
|
|
131
|
+
*/
|
|
90
132
|
description?: string;
|
|
133
|
+
/**
|
|
134
|
+
* Static app context or context factory evaluated for each function run.
|
|
135
|
+
*/
|
|
91
136
|
ctx?: InngestJobFunctionContext<Ctx>;
|
|
137
|
+
/**
|
|
138
|
+
* Optional provider instrumentation target.
|
|
139
|
+
*/
|
|
92
140
|
instrumentation?: InngestJobFunctionInstrumentation;
|
|
93
141
|
}
|
|
142
|
+
/**
|
|
143
|
+
* Create a Beignet job dispatcher that schedules jobs through Inngest events.
|
|
144
|
+
*/
|
|
94
145
|
export declare function createInngestJobDispatcher(client: Inngest, options?: InngestJobDispatcherOptions): JobDispatcherPort;
|
|
146
|
+
/**
|
|
147
|
+
* Create an Inngest function from a Beignet job definition.
|
|
148
|
+
*
|
|
149
|
+
* The function validates the incoming Inngest event data against the job payload
|
|
150
|
+
* schema before calling the job handler. `job.retry.attempts` is mapped to
|
|
151
|
+
* Inngest retries and must be between 0 and 20.
|
|
152
|
+
*/
|
|
95
153
|
export declare function createInngestJobFunction<Ctx, J extends JobDef<string, StandardSchema, Ctx>>(options: CreateInngestJobFunctionOptions<J, Ctx>): InngestFunction.Any;
|
|
96
154
|
/**
|
|
97
155
|
* Inngest provider that extends ports with background job and event capabilities.
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,KAAK,EAEV,MAAM,EACN,YAAY,EACZ,cAAc,EACf,MAAM,oBAAoB,CAAC;AAE5B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAGL,KAAK,6BAA6B,EACnC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,SAAS,CAAC;AACxD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;GAGG;AACH,QAAA,MAAM,mBAAmB;;;iBAYvB,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B;;;OAGG;IACH,MAAM,EAAE,OAAO,CAAC;IAEhB;;;;;;;;;;;OAWG;IACH,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,KAAK,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACjE;AAED,MAAM,WAAW,2BAA2B;IAC1C,eAAe,CAAC,EAAE,6BAA6B,CAAC;CACjD;AAED,MAAM,MAAM,4BAA4B,GACpC,CAAC,GACD,CAAC,GACD,CAAC,GACD,CAAC,GACD,CAAC,GACD,CAAC,GACD,CAAC,GACD,CAAC,GACD,CAAC,GACD,CAAC,GACD,EAAE,GACF,EAAE,GACF,EAAE,GACF,EAAE,GACF,EAAE,GACF,EAAE,GACF,EAAE,GACF,EAAE,GACF,EAAE,GACF,EAAE,GACF,EAAE,CAAC;AAEP,MAAM,MAAM,yBAAyB,CAAC,GAAG,IACrC,GAAG,GACH,CAAC,CAAC,IAAI,EAAE,6BAA6B,KAAK,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;AAEjE,MAAM,WAAW,6BAA6B;IAC5C,KAAK,EAAE;QACL,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,OAAO,CAAC;KACf,CAAC;IACF,IAAI,EAAE,OAAO,CAAC;CACf;AAED,MAAM,MAAM,iCAAiC,GAAG,6BAA6B,CAAC;AAE9E,MAAM,WAAW,+BAA+B,CAC9C,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,cAAc,EAAE,GAAG,CAAC,EAC7C,GAAG;IAEH,MAAM,EAAE,OAAO,CAAC;IAChB,GAAG,EAAE,CAAC,CAAC;IACP,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,GAAG,CAAC,EAAE,yBAAyB,CAAC,GAAG,CAAC,CAAC;IACrC,eAAe,CAAC,EAAE,iCAAiC,CAAC;CACrD;AAgDD,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,OAAO,EACf,OAAO,GAAE,2BAAgC,GACxC,iBAAiB,CAoCnB;AAED,wBAAgB,wBAAwB,CACtC,GAAG,EACH,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,cAAc,EAAE,GAAG,CAAC,EAC7C,OAAO,EAAE,+BAA+B,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,eAAe,CAAC,GAAG,CAyDvE;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,eAAe;;;;;;EA4D1B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -76,6 +76,9 @@ function resolveRetryAttempts(job) {
|
|
|
76
76
|
}
|
|
77
77
|
return attempts;
|
|
78
78
|
}
|
|
79
|
+
/**
|
|
80
|
+
* Create a Beignet job dispatcher that schedules jobs through Inngest events.
|
|
81
|
+
*/
|
|
79
82
|
export function createInngestJobDispatcher(client, options = {}) {
|
|
80
83
|
const instrumentation = createProviderInstrumentation(options.instrumentation, {
|
|
81
84
|
providerName: "inngest",
|
|
@@ -104,6 +107,13 @@ export function createInngestJobDispatcher(client, options = {}) {
|
|
|
104
107
|
},
|
|
105
108
|
};
|
|
106
109
|
}
|
|
110
|
+
/**
|
|
111
|
+
* Create an Inngest function from a Beignet job definition.
|
|
112
|
+
*
|
|
113
|
+
* The function validates the incoming Inngest event data against the job payload
|
|
114
|
+
* schema before calling the job handler. `job.retry.attempts` is mapped to
|
|
115
|
+
* Inngest retries and must be between 0 and 20.
|
|
116
|
+
*/
|
|
107
117
|
export function createInngestJobFunction(options) {
|
|
108
118
|
const { client, job } = options;
|
|
109
119
|
const retries = resolveRetryAttempts(job);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAQH,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,EACL,cAAc,EACd,6BAA6B,GAE9B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,OAAO,EAAwB,MAAM,SAAS,CAAC;AACxD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;GAGG;AACH,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC;;;OAGG;IACH,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC;IAE3C;;;OAGG;IACH,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACjC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/index.ts
CHANGED
|
@@ -91,10 +91,19 @@ export interface InngestPort {
|
|
|
91
91
|
send<TData>(args: { name: string; data: TData }): Promise<void>;
|
|
92
92
|
}
|
|
93
93
|
|
|
94
|
+
/**
|
|
95
|
+
* Options for `createInngestJobDispatcher(...)`.
|
|
96
|
+
*/
|
|
94
97
|
export interface InngestJobDispatcherOptions {
|
|
98
|
+
/**
|
|
99
|
+
* Optional provider instrumentation target.
|
|
100
|
+
*/
|
|
95
101
|
instrumentation?: ProviderInstrumentationTarget;
|
|
96
102
|
}
|
|
97
103
|
|
|
104
|
+
/**
|
|
105
|
+
* Retry attempts accepted by Inngest function definitions.
|
|
106
|
+
*/
|
|
98
107
|
export type InngestFunctionRetryAttempts =
|
|
99
108
|
| 0
|
|
100
109
|
| 1
|
|
@@ -118,30 +127,69 @@ export type InngestFunctionRetryAttempts =
|
|
|
118
127
|
| 19
|
|
119
128
|
| 20;
|
|
120
129
|
|
|
130
|
+
/**
|
|
131
|
+
* Static or request-aware context for an Inngest job function.
|
|
132
|
+
*/
|
|
121
133
|
export type InngestJobFunctionContext<Ctx> =
|
|
122
134
|
| Ctx
|
|
123
135
|
| ((args: InngestJobFunctionContextArgs) => MaybePromise<Ctx>);
|
|
124
136
|
|
|
137
|
+
/**
|
|
138
|
+
* Arguments passed to an Inngest job function context factory.
|
|
139
|
+
*/
|
|
125
140
|
export interface InngestJobFunctionContextArgs {
|
|
141
|
+
/**
|
|
142
|
+
* Inngest event payload wrapper.
|
|
143
|
+
*/
|
|
126
144
|
event: {
|
|
127
145
|
name: string;
|
|
128
146
|
data: unknown;
|
|
129
147
|
};
|
|
148
|
+
/**
|
|
149
|
+
* Raw Inngest step object.
|
|
150
|
+
*/
|
|
130
151
|
step: unknown;
|
|
131
152
|
}
|
|
132
153
|
|
|
154
|
+
/**
|
|
155
|
+
* Instrumentation target for Inngest job functions.
|
|
156
|
+
*/
|
|
133
157
|
export type InngestJobFunctionInstrumentation = ProviderInstrumentationTarget;
|
|
134
158
|
|
|
159
|
+
/**
|
|
160
|
+
* Options for creating an Inngest function from a Beignet job definition.
|
|
161
|
+
*/
|
|
135
162
|
export interface CreateInngestJobFunctionOptions<
|
|
136
163
|
J extends JobDef<string, StandardSchema, Ctx>,
|
|
137
164
|
Ctx,
|
|
138
165
|
> {
|
|
166
|
+
/**
|
|
167
|
+
* Raw Inngest client.
|
|
168
|
+
*/
|
|
139
169
|
client: Inngest;
|
|
170
|
+
/**
|
|
171
|
+
* Beignet job definition.
|
|
172
|
+
*/
|
|
140
173
|
job: J;
|
|
174
|
+
/**
|
|
175
|
+
* Inngest function ID. Defaults to the job name.
|
|
176
|
+
*/
|
|
141
177
|
id?: string;
|
|
178
|
+
/**
|
|
179
|
+
* Inngest function display name. Defaults to the job name.
|
|
180
|
+
*/
|
|
142
181
|
name?: string;
|
|
182
|
+
/**
|
|
183
|
+
* Inngest function description. Defaults to the job description.
|
|
184
|
+
*/
|
|
143
185
|
description?: string;
|
|
186
|
+
/**
|
|
187
|
+
* Static app context or context factory evaluated for each function run.
|
|
188
|
+
*/
|
|
144
189
|
ctx?: InngestJobFunctionContext<Ctx>;
|
|
190
|
+
/**
|
|
191
|
+
* Optional provider instrumentation target.
|
|
192
|
+
*/
|
|
145
193
|
instrumentation?: InngestJobFunctionInstrumentation;
|
|
146
194
|
}
|
|
147
195
|
|
|
@@ -191,6 +239,9 @@ function resolveRetryAttempts(
|
|
|
191
239
|
return attempts as InngestFunctionRetryAttempts;
|
|
192
240
|
}
|
|
193
241
|
|
|
242
|
+
/**
|
|
243
|
+
* Create a Beignet job dispatcher that schedules jobs through Inngest events.
|
|
244
|
+
*/
|
|
194
245
|
export function createInngestJobDispatcher(
|
|
195
246
|
client: Inngest,
|
|
196
247
|
options: InngestJobDispatcherOptions = {},
|
|
@@ -232,6 +283,13 @@ export function createInngestJobDispatcher(
|
|
|
232
283
|
};
|
|
233
284
|
}
|
|
234
285
|
|
|
286
|
+
/**
|
|
287
|
+
* Create an Inngest function from a Beignet job definition.
|
|
288
|
+
*
|
|
289
|
+
* The function validates the incoming Inngest event data against the job payload
|
|
290
|
+
* schema before calling the job handler. `job.retry.attempts` is mapped to
|
|
291
|
+
* Inngest retries and must be between 0 and 20.
|
|
292
|
+
*/
|
|
235
293
|
export function createInngestJobFunction<
|
|
236
294
|
Ctx,
|
|
237
295
|
J extends JobDef<string, StandardSchema, Ctx>,
|