@farm.js/jobs 0.1.0-beta.99 → 0.1.1-beta.1
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/README.md +2 -2
- package/dist/index.d.ts +19 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +53 -8
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
Jobs integration primitives for Farm.js
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
See [Stability and Support](https://farmjs.dev/docs/stability) for what this package guarantees.
|
|
6
6
|
|
|
7
7
|
```bash
|
|
8
|
-
npm install @farm.js/jobs
|
|
8
|
+
npm install @farm.js/jobs
|
|
9
9
|
```
|
|
10
10
|
|
|
11
11
|
See the [Farm.js repository](https://github.com/farming-labs/farm.js) for documentation, examples, and support.
|
package/dist/index.d.ts
CHANGED
|
@@ -56,12 +56,23 @@ export interface JobsTaskDefinition<TInput, TOutput> extends JobsTaskInput<TInpu
|
|
|
56
56
|
export type JobsTaskMap = Record<string, JobsTaskDefinition<any, any>>;
|
|
57
57
|
export type InferJobsTaskInput<TTask> = TTask extends JobsTaskDefinition<infer TInput, any> ? TInput : never;
|
|
58
58
|
export type InferJobsTaskOutput<TTask> = TTask extends JobsTaskDefinition<any, infer TOutput> ? TOutput : never;
|
|
59
|
+
/**
|
|
60
|
+
* An unambiguous input envelope for object payloads that collide with the
|
|
61
|
+
* legacy `{ input, options }` trigger form.
|
|
62
|
+
*/
|
|
63
|
+
export type JobsExplicitInputBody<TInput> = [TInput] extends [void] ? {
|
|
64
|
+
$input?: undefined;
|
|
65
|
+
$options?: JobsTriggerOptions;
|
|
66
|
+
} : {
|
|
67
|
+
$input: TInput;
|
|
68
|
+
$options?: JobsTriggerOptions;
|
|
69
|
+
};
|
|
59
70
|
export type JobsTriggerBody<TInput> = [TInput] extends [void] ? {
|
|
60
71
|
$options?: JobsTriggerOptions;
|
|
61
|
-
} : (TInput extends object ? TInput & {
|
|
72
|
+
} : JobsExplicitInputBody<TInput> | (TInput extends object ? TInput & {
|
|
62
73
|
$options?: JobsTriggerOptions;
|
|
63
74
|
} : {
|
|
64
|
-
value: TInput;
|
|
75
|
+
$value: TInput;
|
|
65
76
|
$options?: JobsTriggerOptions;
|
|
66
77
|
}) | JobsLegacyTriggerBody<TInput>;
|
|
67
78
|
export type JobsBatchTriggerItem<TInput> = [TInput] extends [void] ? {
|
|
@@ -81,10 +92,12 @@ export interface JobsScheduleConfig extends JobsScheduleOptions {
|
|
|
81
92
|
}
|
|
82
93
|
export type JobsScheduleBody<TInput> = [TInput] extends [void] ? {
|
|
83
94
|
$schedule: JobsScheduleConfig;
|
|
84
|
-
} : (TInput
|
|
95
|
+
} : (JobsExplicitInputBody<TInput> & {
|
|
96
|
+
$schedule: JobsScheduleConfig;
|
|
97
|
+
}) | (TInput extends object ? TInput & {
|
|
85
98
|
$schedule: JobsScheduleConfig;
|
|
86
99
|
} : {
|
|
87
|
-
value: TInput;
|
|
100
|
+
$value: TInput;
|
|
88
101
|
$schedule: JobsScheduleConfig;
|
|
89
102
|
}) | JobsLegacyScheduleBody<TInput>;
|
|
90
103
|
export type JobsLegacyTriggerBody<TInput> = [TInput] extends [void] ? {
|
|
@@ -273,10 +286,10 @@ export declare function jobs<const TTasks extends JobsTaskMap>(input: JobsIntegr
|
|
|
273
286
|
configured: boolean;
|
|
274
287
|
tasks: JobsTaskMetadata[];
|
|
275
288
|
};
|
|
276
|
-
config: import("@farm.js/core").FarmIntegrationConfigDefinition<ResolvedTriggerJobsConfig, import("@farm.js/core").
|
|
289
|
+
config: import("@farm.js/core").FarmIntegrationConfigDefinition<ResolvedTriggerJobsConfig, import("@farm.js/core").FarmSchema | undefined> | import("@farm.js/core").FarmIntegrationConfigDefinition<ResolvedInngestJobsConfig, import("@farm.js/core").FarmSchema | undefined>;
|
|
277
290
|
api: JobsAPI<TTasks>;
|
|
278
291
|
log: FarmIntegrationLogger | undefined;
|
|
279
|
-
routes: (import("@farm.js/core").FarmTypedIntegrationRoute<string, never, never, JobsTaskMetadata[], false, "GET", import("@farm.js/core").
|
|
292
|
+
routes: (import("@farm.js/core").FarmTypedIntegrationRoute<string, never, never, JobsTaskMetadata[], false, "GET", import("@farm.js/core").FarmSchema | undefined> | import("@farm.js/core").FarmTypedIntegrationRoute<string, JobsTriggerBody<InferJobsTaskInput<TTasks[string & keyof TTasks]>>, never, JobsTriggerResult, false, "POST", import("@farm.js/core").FarmSchema | undefined> | import("@farm.js/core").FarmTypedIntegrationRoute<string, JobsBatchTriggerBody<InferJobsTaskInput<TTasks[string & keyof TTasks]>>, never, JobsBatchTriggerResult, false, "POST", import("@farm.js/core").FarmSchema | undefined> | import("@farm.js/core").FarmTypedIntegrationRoute<string, JobsScheduleBody<InferJobsTaskInput<TTasks[string & keyof TTasks]>>, never, JobsScheduleResult, false, "POST", import("@farm.js/core").FarmSchema | undefined> | import("@farm.js/core").FarmTypedIntegrationRoute<string, never, JobsStatusQuery, JobsRunStatusResult<InferJobsTaskOutput<TTasks[string & keyof TTasks]>>, false, "GET", import("@farm.js/core").FarmSchema | undefined> | import("@farm.js/core").FarmTypedIntegrationRoute<string, JobsCancelBody, never, JobsCancelResult, false, "POST", import("@farm.js/core").FarmSchema | undefined>)[];
|
|
280
293
|
}>;
|
|
281
294
|
export {};
|
|
282
295
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,qBAAqB,EAC3B,MAAM,eAAe,CAAC;AAEvB,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AAGxE,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,SAAS,CAAC;AAEpD,MAAM,MAAM,aAAa,GACrB,QAAQ,GACR,SAAS,GACT,SAAS,GACT,SAAS,GACT,WAAW,GACX,QAAQ,GACR,UAAU,GACV,SAAS,GACT,SAAS,CAAC;AAEd,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;CAClC;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,0BAA0B,CAAC;AAEnE,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,eAAe,CAAC;IACzB,IAAI,EAAE;QACJ,GAAG,EAAE,MAAM,CAAC;QACZ,EAAE,EAAE,MAAM,CAAC;KACZ,CAAC;IACF,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;CAC5D;AAED,MAAM,WAAW,gBAAgB,CAAC,MAAM;IACtC,KAAK,CAAC,EAAE,MAAM,GAAG,uBAAuB,CAAC;IACzC,KAAK,CAAC,EAAE,KAAK,GAAG,uBAAuB,CAAC;IACxC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC;IACtD,cAAc,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC;IACtD,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,aAAa,CAAC,MAAM,EAAE,OAAO;IAC5C,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B,QAAQ,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACpC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;CAC1E;AAED,MAAM,WAAW,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAE,SAAQ,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC;IACzF,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;CACjC;AAED,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;AAEvE,MAAM,MAAM,kBAAkB,CAAC,KAAK,IAClC,KAAK,SAAS,kBAAkB,CAAC,MAAM,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,GAAG,KAAK,CAAC;AAEvE,MAAM,MAAM,mBAAmB,CAAC,KAAK,IACnC,KAAK,SAAS,kBAAkB,CAAC,GAAG,EAAE,MAAM,OAAO,CAAC,GAAG,OAAO,GAAG,KAAK,CAAC;AAEzE,MAAM,MAAM,eAAe,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,GACzD;IACE,QAAQ,CAAC,EAAE,kBAAkB,CAAC;CAC/B,GAEG,CAAC,MAAM,SAAS,MAAM,GAClB,MAAM,GAAG;IACP,QAAQ,CAAC,EAAE,kBAAkB,CAAC;CAC/B,GACD;IACE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -117,17 +117,18 @@ function isLegacyScheduleBody(value) {
|
|
|
117
117
|
keys.every((key) => key === "input" || key === "options" || key === "at" || key === "after"));
|
|
118
118
|
}
|
|
119
119
|
function readInlinePayload(value, reservedKeys) {
|
|
120
|
+
// Scalar task inputs are wrapped as { $value: TInput } so run() receives the
|
|
121
|
+
// scalar itself. The marker is reserved and $-prefixed like $options and
|
|
122
|
+
// $schedule, which keeps it distinguishable from payload data: an object
|
|
123
|
+
// input that happens to carry a "value" key used to be indistinguishable
|
|
124
|
+
// from the wrapper and was silently unwrapped into its own property.
|
|
125
|
+
if (hasOwn(value, "$value")) {
|
|
126
|
+
return value.$value;
|
|
127
|
+
}
|
|
120
128
|
const payload = stripReservedKeys(value, reservedKeys);
|
|
121
|
-
|
|
122
|
-
if (keys.length === 0) {
|
|
129
|
+
if (Object.keys(payload).length === 0) {
|
|
123
130
|
return undefined;
|
|
124
131
|
}
|
|
125
|
-
// Scalar task inputs are declared as { value: TInput } in the typed body;
|
|
126
|
-
// unwrap that encoding so run() receives the scalar itself, matching the
|
|
127
|
-
// legacy { input } form. Object inputs spread inline and keep their shape.
|
|
128
|
-
if (keys.length === 1 && keys[0] === "value") {
|
|
129
|
-
return payload.value;
|
|
130
|
-
}
|
|
131
132
|
return payload;
|
|
132
133
|
}
|
|
133
134
|
async function parseRequestBody(request) {
|
|
@@ -839,9 +840,41 @@ function errorResponse(error) {
|
|
|
839
840
|
status: 500,
|
|
840
841
|
});
|
|
841
842
|
}
|
|
843
|
+
const warnedLegacyEnvelopes = new Set();
|
|
844
|
+
/**
|
|
845
|
+
* Warn, in development only, that a request used the deprecated
|
|
846
|
+
* `{ input, options }` envelope.
|
|
847
|
+
*
|
|
848
|
+
* The envelope cannot be told apart from an object input that happens to carry
|
|
849
|
+
* one of its own keys: a payload of `{ input: "abc" }` is read as the envelope
|
|
850
|
+
* and silently unwrapped to `"abc"`. `$input` is collision-free because the
|
|
851
|
+
* `$` prefix is reserved.
|
|
852
|
+
*
|
|
853
|
+
* Deliberately logs no part of the body, not even its key names. The shape is
|
|
854
|
+
* already implied by taking this branch, and a job payload can carry user data.
|
|
855
|
+
* Warns once per operation so a busy dev server is not flooded.
|
|
856
|
+
*/
|
|
857
|
+
function warnDeprecatedLegacyEnvelope(operation) {
|
|
858
|
+
if (process.env.NODE_ENV === "production")
|
|
859
|
+
return;
|
|
860
|
+
if (warnedLegacyEnvelopes.has(operation))
|
|
861
|
+
return;
|
|
862
|
+
warnedLegacyEnvelopes.add(operation);
|
|
863
|
+
console.warn(`[farm:jobs] A ${operation} request used the deprecated { input, options } envelope. ` +
|
|
864
|
+
`That shape is ambiguous with an object input carrying its own "input" key, which is ` +
|
|
865
|
+
`read as the envelope and unwrapped. Send { $input: ... } instead, which cannot ` +
|
|
866
|
+
`collide with payload data.`);
|
|
867
|
+
}
|
|
842
868
|
function normalizeTriggerInput(body) {
|
|
843
869
|
const value = body || {};
|
|
870
|
+
if (hasOwn(value, "$input")) {
|
|
871
|
+
return {
|
|
872
|
+
input: value.$input,
|
|
873
|
+
options: value.$options,
|
|
874
|
+
};
|
|
875
|
+
}
|
|
844
876
|
if (isLegacyTriggerBody(value)) {
|
|
877
|
+
warnDeprecatedLegacyEnvelope("trigger");
|
|
845
878
|
return {
|
|
846
879
|
input: value.input,
|
|
847
880
|
options: value.options,
|
|
@@ -854,7 +887,19 @@ function normalizeTriggerInput(body) {
|
|
|
854
887
|
}
|
|
855
888
|
function normalizeScheduleInput(body) {
|
|
856
889
|
const value = body || {};
|
|
890
|
+
if (hasOwn(value, "$input")) {
|
|
891
|
+
const schedule = value.$schedule && typeof value.$schedule === "object"
|
|
892
|
+
? value.$schedule
|
|
893
|
+
: undefined;
|
|
894
|
+
return {
|
|
895
|
+
input: value.$input,
|
|
896
|
+
at: schedule?.at,
|
|
897
|
+
after: schedule?.after,
|
|
898
|
+
options: schedule,
|
|
899
|
+
};
|
|
900
|
+
}
|
|
857
901
|
if (isLegacyScheduleBody(value)) {
|
|
902
|
+
warnDeprecatedLegacyEnvelope("schedule");
|
|
858
903
|
return {
|
|
859
904
|
input: value.input,
|
|
860
905
|
at: value.at,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@farm.js/jobs",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.1-beta.1",
|
|
4
4
|
"description": "Jobs integration primitives for Farm.js",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -25,8 +25,8 @@
|
|
|
25
25
|
"access": "public"
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@farm.js/integration-utils": "0.1.
|
|
29
|
-
"@farm.js/core": "0.1.
|
|
28
|
+
"@farm.js/integration-utils": "0.1.1-beta.1",
|
|
29
|
+
"@farm.js/core": "0.1.1-beta.1"
|
|
30
30
|
},
|
|
31
31
|
"scripts": {
|
|
32
32
|
"build": "node -e \"require('node:fs').rmSync('dist', { recursive: true, force: true })\" && tsc",
|