@blokjs/helper 0.2.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/dist/components/AddElse.d.ts +49 -0
- package/dist/components/AddElse.js +22 -0
- package/dist/components/AddElse.js.map +1 -0
- package/dist/components/AddIf.d.ts +54 -0
- package/dist/components/AddIf.js +33 -0
- package/dist/components/AddIf.js.map +1 -0
- package/dist/components/HelperResponse.d.ts +6 -0
- package/dist/components/HelperResponse.js +10 -0
- package/dist/components/HelperResponse.js.map +1 -0
- package/dist/components/Response.d.ts +0 -0
- package/dist/components/Response.js +2 -0
- package/dist/components/Response.js.map +1 -0
- package/dist/components/StepNode.d.ts +6 -0
- package/dist/components/StepNode.js +49 -0
- package/dist/components/StepNode.js.map +1 -0
- package/dist/components/Trigger.d.ts +14 -0
- package/dist/components/Trigger.js +16 -0
- package/dist/components/Trigger.js.map +1 -0
- package/dist/components/Workflow.d.ts +3 -0
- package/dist/components/Workflow.js +11 -0
- package/dist/components/Workflow.js.map +1 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.js +12 -0
- package/dist/index.js.map +1 -0
- package/dist/types/StepOpts.d.ts +80 -0
- package/dist/types/StepOpts.js +62 -0
- package/dist/types/StepOpts.js.map +1 -0
- package/dist/types/TriggerOpts.d.ts +217 -0
- package/dist/types/TriggerOpts.js +92 -0
- package/dist/types/TriggerOpts.js.map +1 -0
- package/dist/types/WorkflowOpts.d.ts +79 -0
- package/dist/types/WorkflowOpts.js +22 -0
- package/dist/types/WorkflowOpts.js.map +1 -0
- package/package.json +35 -0
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { type StepOpts } from "../types/StepOpts";
|
|
3
|
+
export default class AddElse {
|
|
4
|
+
private steps;
|
|
5
|
+
addStep(step: StepOpts): AddElse;
|
|
6
|
+
build(): ConditionElseOpts;
|
|
7
|
+
}
|
|
8
|
+
declare const ConditionElseSchema: z.ZodObject<{
|
|
9
|
+
type: z.ZodEnum<["if", "else"]>;
|
|
10
|
+
steps: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
11
|
+
name: z.ZodString;
|
|
12
|
+
node: z.ZodString;
|
|
13
|
+
type: z.ZodEnum<["local", "module", "runtime.python3", "runtime.nodejs", "runtime.bun", "runtime.go", "runtime.java", "runtime.rust", "runtime.php", "runtime.csharp", "runtime.ruby", "runtime.docker", "runtime.wasm"]>;
|
|
14
|
+
inputs: z.ZodOptional<z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>>;
|
|
15
|
+
runtime: z.ZodOptional<z.ZodEnum<["nodejs", "bun", "python3", "go", "java", "rust", "php", "csharp", "ruby", "docker", "wasm"]>>;
|
|
16
|
+
}, "strip", z.ZodTypeAny, {
|
|
17
|
+
name: string;
|
|
18
|
+
node: string;
|
|
19
|
+
type: "local" | "module" | "runtime.python3" | "runtime.nodejs" | "runtime.bun" | "runtime.go" | "runtime.java" | "runtime.rust" | "runtime.php" | "runtime.csharp" | "runtime.ruby" | "runtime.docker" | "runtime.wasm";
|
|
20
|
+
inputs?: {} | undefined;
|
|
21
|
+
runtime?: "nodejs" | "bun" | "python3" | "go" | "java" | "rust" | "php" | "csharp" | "ruby" | "docker" | "wasm" | undefined;
|
|
22
|
+
}, {
|
|
23
|
+
name: string;
|
|
24
|
+
node: string;
|
|
25
|
+
type: "local" | "module" | "runtime.python3" | "runtime.nodejs" | "runtime.bun" | "runtime.go" | "runtime.java" | "runtime.rust" | "runtime.php" | "runtime.csharp" | "runtime.ruby" | "runtime.docker" | "runtime.wasm";
|
|
26
|
+
inputs?: {} | undefined;
|
|
27
|
+
runtime?: "nodejs" | "bun" | "python3" | "go" | "java" | "rust" | "php" | "csharp" | "ruby" | "docker" | "wasm" | undefined;
|
|
28
|
+
}>, "many">>;
|
|
29
|
+
}, "strip", z.ZodTypeAny, {
|
|
30
|
+
type: "if" | "else";
|
|
31
|
+
steps?: {
|
|
32
|
+
name: string;
|
|
33
|
+
node: string;
|
|
34
|
+
type: "local" | "module" | "runtime.python3" | "runtime.nodejs" | "runtime.bun" | "runtime.go" | "runtime.java" | "runtime.rust" | "runtime.php" | "runtime.csharp" | "runtime.ruby" | "runtime.docker" | "runtime.wasm";
|
|
35
|
+
inputs?: {} | undefined;
|
|
36
|
+
runtime?: "nodejs" | "bun" | "python3" | "go" | "java" | "rust" | "php" | "csharp" | "ruby" | "docker" | "wasm" | undefined;
|
|
37
|
+
}[] | undefined;
|
|
38
|
+
}, {
|
|
39
|
+
type: "if" | "else";
|
|
40
|
+
steps?: {
|
|
41
|
+
name: string;
|
|
42
|
+
node: string;
|
|
43
|
+
type: "local" | "module" | "runtime.python3" | "runtime.nodejs" | "runtime.bun" | "runtime.go" | "runtime.java" | "runtime.rust" | "runtime.php" | "runtime.csharp" | "runtime.ruby" | "runtime.docker" | "runtime.wasm";
|
|
44
|
+
inputs?: {} | undefined;
|
|
45
|
+
runtime?: "nodejs" | "bun" | "python3" | "go" | "java" | "rust" | "php" | "csharp" | "ruby" | "docker" | "wasm" | undefined;
|
|
46
|
+
}[] | undefined;
|
|
47
|
+
}>;
|
|
48
|
+
export type ConditionElseOpts = z.infer<typeof ConditionElseSchema>;
|
|
49
|
+
export {};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { StepOptsSchema } from "../types/StepOpts";
|
|
3
|
+
export default class AddElse {
|
|
4
|
+
steps = [];
|
|
5
|
+
addStep(step) {
|
|
6
|
+
this.steps.push(step);
|
|
7
|
+
return this;
|
|
8
|
+
}
|
|
9
|
+
build() {
|
|
10
|
+
const model = {
|
|
11
|
+
type: "else",
|
|
12
|
+
steps: this.steps,
|
|
13
|
+
};
|
|
14
|
+
ConditionElseSchema.parse(model);
|
|
15
|
+
return model;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
const ConditionElseSchema = z.object({
|
|
19
|
+
type: z.enum(["if", "else"]),
|
|
20
|
+
steps: z.array(StepOptsSchema).optional(),
|
|
21
|
+
});
|
|
22
|
+
//# sourceMappingURL=AddElse.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AddElse.js","sourceRoot":"","sources":["../../src/components/AddElse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAiB,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAElE,MAAM,CAAC,OAAO,OAAO,OAAO;IACnB,KAAK,GAAe,EAAE,CAAC;IAE/B,OAAO,CAAC,IAAc;QACrB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtB,OAAO,IAAI,CAAC;IACb,CAAC;IAED,KAAK;QACJ,MAAM,KAAK,GAAsB;YAChC,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE,IAAI,CAAC,KAAK;SACjB,CAAC;QAEF,mBAAmB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAEjC,OAAO,KAAK,CAAC;IACd,CAAC;CACD;AAED,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC5B,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,QAAQ,EAAE;CACzC,CAAC,CAAC"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { type StepOpts } from "../types/StepOpts";
|
|
3
|
+
export default class AddIf {
|
|
4
|
+
private condition;
|
|
5
|
+
private steps;
|
|
6
|
+
constructor(condition: string);
|
|
7
|
+
addStep(step: StepOpts): AddIf;
|
|
8
|
+
build(): ConditionOpts;
|
|
9
|
+
}
|
|
10
|
+
declare const ConditionSchema: z.ZodObject<{
|
|
11
|
+
type: z.ZodEnum<["if", "else"]>;
|
|
12
|
+
condition: z.ZodString;
|
|
13
|
+
steps: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
14
|
+
name: z.ZodString;
|
|
15
|
+
node: z.ZodString;
|
|
16
|
+
type: z.ZodEnum<["local", "module", "runtime.python3", "runtime.nodejs", "runtime.bun", "runtime.go", "runtime.java", "runtime.rust", "runtime.php", "runtime.csharp", "runtime.ruby", "runtime.docker", "runtime.wasm"]>;
|
|
17
|
+
inputs: z.ZodOptional<z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>>;
|
|
18
|
+
runtime: z.ZodOptional<z.ZodEnum<["nodejs", "bun", "python3", "go", "java", "rust", "php", "csharp", "ruby", "docker", "wasm"]>>;
|
|
19
|
+
}, "strip", z.ZodTypeAny, {
|
|
20
|
+
name: string;
|
|
21
|
+
node: string;
|
|
22
|
+
type: "local" | "module" | "runtime.python3" | "runtime.nodejs" | "runtime.bun" | "runtime.go" | "runtime.java" | "runtime.rust" | "runtime.php" | "runtime.csharp" | "runtime.ruby" | "runtime.docker" | "runtime.wasm";
|
|
23
|
+
inputs?: {} | undefined;
|
|
24
|
+
runtime?: "nodejs" | "bun" | "python3" | "go" | "java" | "rust" | "php" | "csharp" | "ruby" | "docker" | "wasm" | undefined;
|
|
25
|
+
}, {
|
|
26
|
+
name: string;
|
|
27
|
+
node: string;
|
|
28
|
+
type: "local" | "module" | "runtime.python3" | "runtime.nodejs" | "runtime.bun" | "runtime.go" | "runtime.java" | "runtime.rust" | "runtime.php" | "runtime.csharp" | "runtime.ruby" | "runtime.docker" | "runtime.wasm";
|
|
29
|
+
inputs?: {} | undefined;
|
|
30
|
+
runtime?: "nodejs" | "bun" | "python3" | "go" | "java" | "rust" | "php" | "csharp" | "ruby" | "docker" | "wasm" | undefined;
|
|
31
|
+
}>, "many">>;
|
|
32
|
+
}, "strip", z.ZodTypeAny, {
|
|
33
|
+
type: "if" | "else";
|
|
34
|
+
condition: string;
|
|
35
|
+
steps?: {
|
|
36
|
+
name: string;
|
|
37
|
+
node: string;
|
|
38
|
+
type: "local" | "module" | "runtime.python3" | "runtime.nodejs" | "runtime.bun" | "runtime.go" | "runtime.java" | "runtime.rust" | "runtime.php" | "runtime.csharp" | "runtime.ruby" | "runtime.docker" | "runtime.wasm";
|
|
39
|
+
inputs?: {} | undefined;
|
|
40
|
+
runtime?: "nodejs" | "bun" | "python3" | "go" | "java" | "rust" | "php" | "csharp" | "ruby" | "docker" | "wasm" | undefined;
|
|
41
|
+
}[] | undefined;
|
|
42
|
+
}, {
|
|
43
|
+
type: "if" | "else";
|
|
44
|
+
condition: string;
|
|
45
|
+
steps?: {
|
|
46
|
+
name: string;
|
|
47
|
+
node: string;
|
|
48
|
+
type: "local" | "module" | "runtime.python3" | "runtime.nodejs" | "runtime.bun" | "runtime.go" | "runtime.java" | "runtime.rust" | "runtime.php" | "runtime.csharp" | "runtime.ruby" | "runtime.docker" | "runtime.wasm";
|
|
49
|
+
inputs?: {} | undefined;
|
|
50
|
+
runtime?: "nodejs" | "bun" | "python3" | "go" | "java" | "rust" | "php" | "csharp" | "ruby" | "docker" | "wasm" | undefined;
|
|
51
|
+
}[] | undefined;
|
|
52
|
+
}>;
|
|
53
|
+
export type ConditionOpts = z.infer<typeof ConditionSchema>;
|
|
54
|
+
export {};
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { StepOptsSchema } from "../types/StepOpts";
|
|
3
|
+
export default class AddIf {
|
|
4
|
+
condition;
|
|
5
|
+
steps = [];
|
|
6
|
+
constructor(condition) {
|
|
7
|
+
this.condition = condition;
|
|
8
|
+
}
|
|
9
|
+
addStep(step) {
|
|
10
|
+
this.steps.push(step);
|
|
11
|
+
return this;
|
|
12
|
+
}
|
|
13
|
+
build() {
|
|
14
|
+
const model = {
|
|
15
|
+
type: "if",
|
|
16
|
+
condition: this.condition,
|
|
17
|
+
steps: this.steps,
|
|
18
|
+
};
|
|
19
|
+
ConditionSchema.parse(model);
|
|
20
|
+
return model;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
const ConditionSchema = z.object({
|
|
24
|
+
type: z.enum(["if", "else"]),
|
|
25
|
+
condition: z
|
|
26
|
+
.string({
|
|
27
|
+
required_error: "Condition is required",
|
|
28
|
+
invalid_type_error: "Condition must be a string",
|
|
29
|
+
})
|
|
30
|
+
.min(1),
|
|
31
|
+
steps: z.array(StepOptsSchema).optional(),
|
|
32
|
+
});
|
|
33
|
+
//# sourceMappingURL=AddIf.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AddIf.js","sourceRoot":"","sources":["../../src/components/AddIf.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAiB,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAElE,MAAM,CAAC,OAAO,OAAO,KAAK;IACjB,SAAS,CAAS;IAClB,KAAK,GAAe,EAAE,CAAC;IAE/B,YAAY,SAAiB;QAC5B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC5B,CAAC;IAED,OAAO,CAAC,IAAc;QACrB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtB,OAAO,IAAI,CAAC;IACb,CAAC;IAED,KAAK;QACJ,MAAM,KAAK,GAAkB;YAC5B,IAAI,EAAE,IAAI;YACV,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,KAAK,EAAE,IAAI,CAAC,KAAK;SACjB,CAAC;QAEF,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAE7B,OAAO,KAAK,CAAC;IACd,CAAC;CACD;AAED,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IAChC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC5B,SAAS,EAAE,CAAC;SACV,MAAM,CAAC;QACP,cAAc,EAAE,uBAAuB;QACvC,kBAAkB,EAAE,4BAA4B;KAChD,CAAC;SACD,GAAG,CAAC,CAAC,CAAC;IACR,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,QAAQ,EAAE;CACzC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HelperResponse.js","sourceRoot":"","sources":["../../src/components/HelperResponse.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,OAAO,cAAc;IACxB,OAAO,GAA+B,EAAE,CAAC;IAEnD,SAAS,CAAC,MAAoB;QAC7B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACvB,CAAC;IAED,MAAM;QACL,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC;CACD"}
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Response.js","sourceRoot":"","sources":["../../src/components/Response.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { type StepConditionOpts, type StepOpts } from "../types/StepOpts";
|
|
2
|
+
import HelperResponse from "./HelperResponse";
|
|
3
|
+
export default class StepNode extends HelperResponse {
|
|
4
|
+
addStep(config: StepOpts): StepNode;
|
|
5
|
+
addCondition(conditions: StepConditionOpts): StepNode;
|
|
6
|
+
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { StepConditionSchema, StepOptsSchema, } from "../types/StepOpts";
|
|
2
|
+
import HelperResponse from "./HelperResponse";
|
|
3
|
+
export default class StepNode extends HelperResponse {
|
|
4
|
+
addStep(config) {
|
|
5
|
+
StepOptsSchema.parse(config);
|
|
6
|
+
if (this._config.nodes === undefined)
|
|
7
|
+
this._config.nodes = {};
|
|
8
|
+
this._config.nodes[config.name] = {
|
|
9
|
+
inputs: config.inputs,
|
|
10
|
+
};
|
|
11
|
+
this._config.steps?.push({
|
|
12
|
+
name: config.name,
|
|
13
|
+
node: config.node,
|
|
14
|
+
type: config.type,
|
|
15
|
+
runtime: config.runtime,
|
|
16
|
+
});
|
|
17
|
+
const helperResponse = new StepNode();
|
|
18
|
+
helperResponse.setConfig(this._config);
|
|
19
|
+
return helperResponse;
|
|
20
|
+
}
|
|
21
|
+
addCondition(conditions) {
|
|
22
|
+
StepConditionSchema.parse(conditions);
|
|
23
|
+
const func = conditions;
|
|
24
|
+
const response = func.conditions();
|
|
25
|
+
if (this._config.nodes === undefined)
|
|
26
|
+
this._config.nodes = {};
|
|
27
|
+
for (let i = 0; i < response.length; i++) {
|
|
28
|
+
const condition = response[i];
|
|
29
|
+
const steps = condition.steps;
|
|
30
|
+
for (let j = 0; j < steps.length; j++) {
|
|
31
|
+
const step = steps[j];
|
|
32
|
+
this._config.nodes[step.name] = {
|
|
33
|
+
inputs: step.inputs,
|
|
34
|
+
};
|
|
35
|
+
step.inputs = undefined;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
if (this._config.steps === undefined)
|
|
39
|
+
this._config.steps = [];
|
|
40
|
+
this._config.steps.push(conditions.node);
|
|
41
|
+
this._config.nodes[conditions.node.name] = {
|
|
42
|
+
conditions: response,
|
|
43
|
+
};
|
|
44
|
+
const helperResponse = new StepNode();
|
|
45
|
+
helperResponse.setConfig(this._config);
|
|
46
|
+
return helperResponse;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=StepNode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StepNode.js","sourceRoot":"","sources":["../../src/components/StepNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAGN,mBAAmB,EAEnB,cAAc,GACd,MAAM,mBAAmB,CAAC;AAG3B,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAE9C,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,cAAc;IACnD,OAAO,CAAC,MAAgB;QACvB,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAE7B,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS;YAAE,IAAI,CAAC,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC;QAC9D,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG;YACjC,MAAM,EAAE,MAAM,CAAC,MAAM;SACrB,CAAC;QAEF,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC;YACxB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,OAAO,EAAE,MAAM,CAAC,OAAO;SACvB,CAAC,CAAC;QAEH,MAAM,cAAc,GAAG,IAAI,QAAQ,EAAE,CAAC;QACtC,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACvC,OAAO,cAAc,CAAC;IACvB,CAAC;IAED,YAAY,CAAC,UAA6B;QACzC,mBAAmB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACtC,MAAM,IAAI,GAAG,UAAoC,CAAC;QAClD,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,EAA2C,CAAC;QAE5E,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS;YAAE,IAAI,CAAC,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC;QAE9D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC1C,MAAM,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC9B,MAAM,KAAK,GAAG,SAAS,CAAC,KAAmB,CAAC;YAE5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACvC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBAEtB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;oBAC/B,MAAM,EAAE,IAAI,CAAC,MAAM;iBACnB,CAAC;gBAEF,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;YACzB,CAAC;QACF,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS;YAAE,IAAI,CAAC,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC;QAC9D,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;YAC1C,UAAU,EAAE,QAAQ;SACpB,CAAC;QAEF,MAAM,cAAc,GAAG,IAAI,QAAQ,EAAE,CAAC;QACtC,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACvC,OAAO,cAAc,CAAC;IACvB,CAAC;CACD"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { type CronTriggerOpts, type PubSubTriggerOpts, type QueueTriggerOpts, type SSETriggerOpts, type TriggerOpts, type WebSocketTriggerOpts, type WebhookTriggerOpts, type WorkerTriggerOpts } from "../types/TriggerOpts";
|
|
2
|
+
import HelperResponse from "./HelperResponse";
|
|
3
|
+
import StepNode from "./StepNode";
|
|
4
|
+
export default class Trigger extends HelperResponse {
|
|
5
|
+
addTrigger(name: "http", config: TriggerOpts): StepNode;
|
|
6
|
+
addTrigger(name: "queue", config: QueueTriggerOpts): StepNode;
|
|
7
|
+
addTrigger(name: "pubsub", config: PubSubTriggerOpts): StepNode;
|
|
8
|
+
addTrigger(name: "cron", config: CronTriggerOpts): StepNode;
|
|
9
|
+
addTrigger(name: "worker", config: WorkerTriggerOpts): StepNode;
|
|
10
|
+
addTrigger(name: "webhook", config: WebhookTriggerOpts): StepNode;
|
|
11
|
+
addTrigger(name: "sse", config: SSETriggerOpts): StepNode;
|
|
12
|
+
addTrigger(name: "websocket", config: WebSocketTriggerOpts): StepNode;
|
|
13
|
+
addTrigger(name: "grpc" | "manual", config?: Record<string, unknown>): StepNode;
|
|
14
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { TriggerOptsSchema, TriggersSchema, } from "../types/TriggerOpts";
|
|
2
|
+
import HelperResponse from "./HelperResponse";
|
|
3
|
+
import StepNode from "./StepNode";
|
|
4
|
+
export default class Trigger extends HelperResponse {
|
|
5
|
+
addTrigger(name, config) {
|
|
6
|
+
TriggersSchema.parse(name);
|
|
7
|
+
if (name === "http" && config) {
|
|
8
|
+
TriggerOptsSchema.parse(config);
|
|
9
|
+
}
|
|
10
|
+
this._config.trigger = { [name]: config || {} };
|
|
11
|
+
const helperResponse = new StepNode();
|
|
12
|
+
helperResponse.setConfig(this._config);
|
|
13
|
+
return helperResponse;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=Trigger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Trigger.js","sourceRoot":"","sources":["../../src/components/Trigger.ts"],"names":[],"mappings":"AAAA,OAAO,EAON,iBAAiB,EAEjB,cAAc,GAId,MAAM,sBAAsB,CAAC;AAC9B,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,QAAQ,MAAM,YAAY,CAAC;AAElC,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,cAAc;IAWlD,UAAU,CAAyB,IAAO,EAAE,MAA4B;QACvE,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAE3B,IAAI,IAAI,KAAK,MAAM,IAAI,MAAM,EAAE,CAAC;YAC/B,iBAAiB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACjC,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,IAAI,EAAE,EAAE,CAAC;QAEhD,MAAM,cAAc,GAAG,IAAI,QAAQ,EAAE,CAAC;QACtC,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACvC,OAAO,cAAc,CAAC;IACvB,CAAC;CACD"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { WorkflowOptsSchema } from "../types/WorkflowOpts";
|
|
2
|
+
import Trigger from "./Trigger";
|
|
3
|
+
export default function Workflow(config) {
|
|
4
|
+
WorkflowOptsSchema.parse(config);
|
|
5
|
+
config.steps = [];
|
|
6
|
+
config.nodes = {};
|
|
7
|
+
const helperResponse = new Trigger();
|
|
8
|
+
helperResponse.setConfig(config);
|
|
9
|
+
return helperResponse;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=Workflow.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Workflow.js","sourceRoot":"","sources":["../../src/components/Workflow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC9E,OAAO,OAAO,MAAM,WAAW,CAAC;AAEhC,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,MAAoB;IACpD,kBAAkB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACjC,MAAM,CAAC,KAAK,GAAG,EAAE,CAAC;IAClB,MAAM,CAAC,KAAK,GAAG,EAAE,CAAC;IAElB,MAAM,cAAc,GAAG,IAAI,OAAO,EAAE,CAAC;IACrC,cAAc,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IACjC,OAAO,cAAc,CAAC;AACvB,CAAC"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import AddElse from "./components/AddElse";
|
|
2
|
+
import AddIf, { ConditionOpts } from "./components/AddIf";
|
|
3
|
+
import HelperResponse from "./components/HelperResponse";
|
|
4
|
+
import Step from "./components/StepNode";
|
|
5
|
+
import Trigger from "./components/Trigger";
|
|
6
|
+
import Workflow from "./components/Workflow";
|
|
7
|
+
import { NodeType, NodeTypeSchema, RuntimeKind, RuntimeKindSchema, StepInputs, StepOpts } from "./types/StepOpts";
|
|
8
|
+
import { CronTriggerOpts, CronTriggerOptsSchema, HttpTriggerOptsSchema, PubSubProvider, PubSubProviderSchema, PubSubTriggerOpts, PubSubTriggerOptsSchema, QueueProvider, QueueProviderSchema, QueueTriggerOpts, QueueTriggerOptsSchema, SSETriggerOpts, SSETriggerOptsSchema, TriggerOpts, TriggerOptsSchema, TriggersEnum, TriggersSchema, WebSocketTriggerOpts, WebSocketTriggerOptsSchema, WebhookTriggerOpts, WebhookTriggerOptsSchema, WorkerTriggerOpts, WorkerTriggerOptsSchema } from "./types/TriggerOpts";
|
|
9
|
+
export { AddElse, AddIf, ConditionOpts, HelperResponse, NodeType, NodeTypeSchema, RuntimeKind, RuntimeKindSchema, Step, StepInputs, StepOpts, Trigger, Workflow, TriggerOpts, TriggerOptsSchema, HttpTriggerOptsSchema, QueueProvider, QueueProviderSchema, QueueTriggerOpts, QueueTriggerOptsSchema, PubSubProvider, PubSubProviderSchema, PubSubTriggerOpts, PubSubTriggerOptsSchema, WorkerTriggerOpts, WorkerTriggerOptsSchema, CronTriggerOpts, CronTriggerOptsSchema, WebhookTriggerOpts, WebhookTriggerOptsSchema, WebSocketTriggerOpts, WebSocketTriggerOptsSchema, SSETriggerOpts, SSETriggerOptsSchema, TriggersSchema, TriggersEnum, };
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import AddElse from "./components/AddElse";
|
|
2
|
+
import AddIf from "./components/AddIf";
|
|
3
|
+
import HelperResponse from "./components/HelperResponse";
|
|
4
|
+
import Step from "./components/StepNode";
|
|
5
|
+
import Trigger from "./components/Trigger";
|
|
6
|
+
import Workflow from "./components/Workflow";
|
|
7
|
+
import { NodeTypeSchema, RuntimeKindSchema } from "./types/StepOpts";
|
|
8
|
+
import { CronTriggerOptsSchema, HttpTriggerOptsSchema, PubSubProviderSchema, PubSubTriggerOptsSchema, QueueProviderSchema, QueueTriggerOptsSchema, SSETriggerOptsSchema, TriggerOptsSchema,
|
|
9
|
+
// Triggers enum
|
|
10
|
+
TriggersSchema, WebSocketTriggerOptsSchema, WebhookTriggerOptsSchema, WorkerTriggerOptsSchema, } from "./types/TriggerOpts";
|
|
11
|
+
export { AddElse, AddIf, HelperResponse, NodeTypeSchema, RuntimeKindSchema, Step, Trigger, Workflow, TriggerOptsSchema, HttpTriggerOptsSchema, QueueProviderSchema, QueueTriggerOptsSchema, PubSubProviderSchema, PubSubTriggerOptsSchema, WorkerTriggerOptsSchema, CronTriggerOptsSchema, WebhookTriggerOptsSchema, WebSocketTriggerOptsSchema, SSETriggerOptsSchema, TriggersSchema, };
|
|
12
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,sBAAsB,CAAC;AAC3C,OAAO,KAAwB,MAAM,oBAAoB,CAAC;AAC1D,OAAO,cAAc,MAAM,6BAA6B,CAAC;AACzD,OAAO,IAAI,MAAM,uBAAuB,CAAC;AACzC,OAAO,OAAO,MAAM,sBAAsB,CAAC;AAC3C,OAAO,QAAQ,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAY,cAAc,EAAe,iBAAiB,EAAwB,MAAM,kBAAkB,CAAC;AAClH,OAAO,EAGN,qBAAqB,EACrB,qBAAqB,EAGrB,oBAAoB,EAEpB,uBAAuB,EAGvB,mBAAmB,EAEnB,sBAAsB,EAGtB,oBAAoB,EAGpB,iBAAiB;AAEjB,gBAAgB;AAChB,cAAc,EAGd,0BAA0B,EAG1B,wBAAwB,EAGxB,uBAAuB,GACvB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACN,OAAO,EACP,KAAK,EAEL,cAAc,EAEd,cAAc,EAEd,iBAAiB,EACjB,IAAI,EAGJ,OAAO,EACP,QAAQ,EAGR,iBAAiB,EACjB,qBAAqB,EAErB,mBAAmB,EAEnB,sBAAsB,EAEtB,oBAAoB,EAEpB,uBAAuB,EAEvB,uBAAuB,EAEvB,qBAAqB,EAErB,wBAAwB,EAExB,0BAA0B,EAE1B,oBAAoB,EACpB,cAAc,GAEd,CAAC"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import type { ConditionElseOpts } from "../components/AddElse";
|
|
3
|
+
import type { ConditionOpts } from "../components/AddIf";
|
|
4
|
+
/**
|
|
5
|
+
* RuntimeKind represents all supported runtime environments
|
|
6
|
+
* Synced with @blokjs/runner RuntimeKind type
|
|
7
|
+
*/
|
|
8
|
+
export declare const RuntimeKindSchema: z.ZodEnum<["nodejs", "bun", "python3", "go", "java", "rust", "php", "csharp", "ruby", "docker", "wasm"]>;
|
|
9
|
+
export type RuntimeKind = z.infer<typeof RuntimeKindSchema>;
|
|
10
|
+
/**
|
|
11
|
+
* Node type enum - includes both legacy types and new runtime types
|
|
12
|
+
*/
|
|
13
|
+
export declare const NodeTypeSchema: z.ZodEnum<["local", "module", "runtime.python3", "runtime.nodejs", "runtime.bun", "runtime.go", "runtime.java", "runtime.rust", "runtime.php", "runtime.csharp", "runtime.ruby", "runtime.docker", "runtime.wasm"]>;
|
|
14
|
+
export type NodeType = z.infer<typeof NodeTypeSchema>;
|
|
15
|
+
export declare const StepOptsSchema: z.ZodObject<{
|
|
16
|
+
name: z.ZodString;
|
|
17
|
+
node: z.ZodString;
|
|
18
|
+
type: z.ZodEnum<["local", "module", "runtime.python3", "runtime.nodejs", "runtime.bun", "runtime.go", "runtime.java", "runtime.rust", "runtime.php", "runtime.csharp", "runtime.ruby", "runtime.docker", "runtime.wasm"]>;
|
|
19
|
+
inputs: z.ZodOptional<z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>>;
|
|
20
|
+
runtime: z.ZodOptional<z.ZodEnum<["nodejs", "bun", "python3", "go", "java", "rust", "php", "csharp", "ruby", "docker", "wasm"]>>;
|
|
21
|
+
}, "strip", z.ZodTypeAny, {
|
|
22
|
+
name: string;
|
|
23
|
+
node: string;
|
|
24
|
+
type: "local" | "module" | "runtime.python3" | "runtime.nodejs" | "runtime.bun" | "runtime.go" | "runtime.java" | "runtime.rust" | "runtime.php" | "runtime.csharp" | "runtime.ruby" | "runtime.docker" | "runtime.wasm";
|
|
25
|
+
inputs?: {} | undefined;
|
|
26
|
+
runtime?: "nodejs" | "bun" | "python3" | "go" | "java" | "rust" | "php" | "csharp" | "ruby" | "docker" | "wasm" | undefined;
|
|
27
|
+
}, {
|
|
28
|
+
name: string;
|
|
29
|
+
node: string;
|
|
30
|
+
type: "local" | "module" | "runtime.python3" | "runtime.nodejs" | "runtime.bun" | "runtime.go" | "runtime.java" | "runtime.rust" | "runtime.php" | "runtime.csharp" | "runtime.ruby" | "runtime.docker" | "runtime.wasm";
|
|
31
|
+
inputs?: {} | undefined;
|
|
32
|
+
runtime?: "nodejs" | "bun" | "python3" | "go" | "java" | "rust" | "php" | "csharp" | "ruby" | "docker" | "wasm" | undefined;
|
|
33
|
+
}>;
|
|
34
|
+
export type StepOpts = z.infer<typeof StepOptsSchema>;
|
|
35
|
+
export declare const StepInputsSchema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
|
|
36
|
+
export type StepInputs = z.infer<typeof StepInputsSchema>;
|
|
37
|
+
export declare const StepConditionSchema: z.ZodObject<{
|
|
38
|
+
node: z.ZodObject<{
|
|
39
|
+
name: z.ZodString;
|
|
40
|
+
node: z.ZodString;
|
|
41
|
+
type: z.ZodEnum<["local", "module", "runtime.python3", "runtime.nodejs", "runtime.bun", "runtime.go", "runtime.java", "runtime.rust", "runtime.php", "runtime.csharp", "runtime.ruby", "runtime.docker", "runtime.wasm"]>;
|
|
42
|
+
inputs: z.ZodOptional<z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>>;
|
|
43
|
+
runtime: z.ZodOptional<z.ZodEnum<["nodejs", "bun", "python3", "go", "java", "rust", "php", "csharp", "ruby", "docker", "wasm"]>>;
|
|
44
|
+
}, "strip", z.ZodTypeAny, {
|
|
45
|
+
name: string;
|
|
46
|
+
node: string;
|
|
47
|
+
type: "local" | "module" | "runtime.python3" | "runtime.nodejs" | "runtime.bun" | "runtime.go" | "runtime.java" | "runtime.rust" | "runtime.php" | "runtime.csharp" | "runtime.ruby" | "runtime.docker" | "runtime.wasm";
|
|
48
|
+
inputs?: {} | undefined;
|
|
49
|
+
runtime?: "nodejs" | "bun" | "python3" | "go" | "java" | "rust" | "php" | "csharp" | "ruby" | "docker" | "wasm" | undefined;
|
|
50
|
+
}, {
|
|
51
|
+
name: string;
|
|
52
|
+
node: string;
|
|
53
|
+
type: "local" | "module" | "runtime.python3" | "runtime.nodejs" | "runtime.bun" | "runtime.go" | "runtime.java" | "runtime.rust" | "runtime.php" | "runtime.csharp" | "runtime.ruby" | "runtime.docker" | "runtime.wasm";
|
|
54
|
+
inputs?: {} | undefined;
|
|
55
|
+
runtime?: "nodejs" | "bun" | "python3" | "go" | "java" | "rust" | "php" | "csharp" | "ruby" | "docker" | "wasm" | undefined;
|
|
56
|
+
}>;
|
|
57
|
+
conditions: z.ZodOptional<z.ZodFunction<z.ZodTuple<[], z.ZodUnknown>, z.ZodUnknown>>;
|
|
58
|
+
}, "strip", z.ZodTypeAny, {
|
|
59
|
+
node: {
|
|
60
|
+
name: string;
|
|
61
|
+
node: string;
|
|
62
|
+
type: "local" | "module" | "runtime.python3" | "runtime.nodejs" | "runtime.bun" | "runtime.go" | "runtime.java" | "runtime.rust" | "runtime.php" | "runtime.csharp" | "runtime.ruby" | "runtime.docker" | "runtime.wasm";
|
|
63
|
+
inputs?: {} | undefined;
|
|
64
|
+
runtime?: "nodejs" | "bun" | "python3" | "go" | "java" | "rust" | "php" | "csharp" | "ruby" | "docker" | "wasm" | undefined;
|
|
65
|
+
};
|
|
66
|
+
conditions?: ((...args: unknown[]) => unknown) | undefined;
|
|
67
|
+
}, {
|
|
68
|
+
node: {
|
|
69
|
+
name: string;
|
|
70
|
+
node: string;
|
|
71
|
+
type: "local" | "module" | "runtime.python3" | "runtime.nodejs" | "runtime.bun" | "runtime.go" | "runtime.java" | "runtime.rust" | "runtime.php" | "runtime.csharp" | "runtime.ruby" | "runtime.docker" | "runtime.wasm";
|
|
72
|
+
inputs?: {} | undefined;
|
|
73
|
+
runtime?: "nodejs" | "bun" | "python3" | "go" | "java" | "rust" | "php" | "csharp" | "ruby" | "docker" | "wasm" | undefined;
|
|
74
|
+
};
|
|
75
|
+
conditions?: ((...args: unknown[]) => unknown) | undefined;
|
|
76
|
+
}>;
|
|
77
|
+
export interface IConditions {
|
|
78
|
+
conditions: () => ConditionOpts[] | ConditionElseOpts[];
|
|
79
|
+
}
|
|
80
|
+
export type StepConditionOpts = z.infer<typeof StepConditionSchema>;
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
/**
|
|
3
|
+
* RuntimeKind represents all supported runtime environments
|
|
4
|
+
* Synced with @blokjs/runner RuntimeKind type
|
|
5
|
+
*/
|
|
6
|
+
export const RuntimeKindSchema = z.enum([
|
|
7
|
+
"nodejs",
|
|
8
|
+
"bun",
|
|
9
|
+
"python3",
|
|
10
|
+
"go",
|
|
11
|
+
"java",
|
|
12
|
+
"rust",
|
|
13
|
+
"php",
|
|
14
|
+
"csharp",
|
|
15
|
+
"ruby",
|
|
16
|
+
"docker",
|
|
17
|
+
"wasm",
|
|
18
|
+
]);
|
|
19
|
+
/**
|
|
20
|
+
* Node type enum - includes both legacy types and new runtime types
|
|
21
|
+
*/
|
|
22
|
+
export const NodeTypeSchema = z.enum([
|
|
23
|
+
"local",
|
|
24
|
+
"module",
|
|
25
|
+
// Legacy runtime types (backward compatible)
|
|
26
|
+
"runtime.python3",
|
|
27
|
+
// New runtime types
|
|
28
|
+
"runtime.nodejs",
|
|
29
|
+
"runtime.bun",
|
|
30
|
+
"runtime.go",
|
|
31
|
+
"runtime.java",
|
|
32
|
+
"runtime.rust",
|
|
33
|
+
"runtime.php",
|
|
34
|
+
"runtime.csharp",
|
|
35
|
+
"runtime.ruby",
|
|
36
|
+
"runtime.docker",
|
|
37
|
+
"runtime.wasm",
|
|
38
|
+
]);
|
|
39
|
+
export const StepOptsSchema = z.object({
|
|
40
|
+
name: z
|
|
41
|
+
.string({
|
|
42
|
+
required_error: "Name is required",
|
|
43
|
+
invalid_type_error: "Name must be a string",
|
|
44
|
+
})
|
|
45
|
+
.min(3),
|
|
46
|
+
node: z
|
|
47
|
+
.string({
|
|
48
|
+
required_error: "Node is required",
|
|
49
|
+
invalid_type_error: "Node must be a string",
|
|
50
|
+
})
|
|
51
|
+
.min(5),
|
|
52
|
+
type: NodeTypeSchema,
|
|
53
|
+
inputs: z.object({}).optional(),
|
|
54
|
+
runtime: RuntimeKindSchema.optional(),
|
|
55
|
+
});
|
|
56
|
+
// It is used globally in the project
|
|
57
|
+
export const StepInputsSchema = z.object({}, { message: "Inputs required" });
|
|
58
|
+
export const StepConditionSchema = z.object({
|
|
59
|
+
node: StepOptsSchema,
|
|
60
|
+
conditions: z.function().optional(),
|
|
61
|
+
});
|
|
62
|
+
//# sourceMappingURL=StepOpts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StepOpts.js","sourceRoot":"","sources":["../../src/types/StepOpts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB;;;GAGG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC;IACvC,QAAQ;IACR,KAAK;IACL,SAAS;IACT,IAAI;IACJ,MAAM;IACN,MAAM;IACN,KAAK;IACL,QAAQ;IACR,MAAM;IACN,QAAQ;IACR,MAAM;CACN,CAAC,CAAC;AAIH;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC;IACpC,OAAO;IACP,QAAQ;IACR,6CAA6C;IAC7C,iBAAiB;IACjB,oBAAoB;IACpB,gBAAgB;IAChB,aAAa;IACb,YAAY;IACZ,cAAc;IACd,cAAc;IACd,aAAa;IACb,gBAAgB;IAChB,cAAc;IACd,gBAAgB;IAChB,cAAc;CACd,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,IAAI,EAAE,CAAC;SACL,MAAM,CAAC;QACP,cAAc,EAAE,kBAAkB;QAClC,kBAAkB,EAAE,uBAAuB;KAC3C,CAAC;SACD,GAAG,CAAC,CAAC,CAAC;IACR,IAAI,EAAE,CAAC;SACL,MAAM,CAAC;QACP,cAAc,EAAE,kBAAkB;QAClC,kBAAkB,EAAE,uBAAuB;KAC3C,CAAC;SACD,GAAG,CAAC,CAAC,CAAC;IACR,IAAI,EAAE,cAAc;IACpB,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;IAC/B,OAAO,EAAE,iBAAiB,CAAC,QAAQ,EAAE;CACrC,CAAC,CAAC;AAIH,qCAAqC;AACrC,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC,CAAC;AAG7E,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,IAAI,EAAE,cAAc;IACpB,UAAU,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CACnC,CAAC,CAAC"}
|
|
@@ -0,0 +1,217 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export declare const HttpTriggerOptsSchema: z.ZodObject<{
|
|
3
|
+
method: z.ZodEnum<["GET", "POST", "PUT", "DELETE", "PATCH", "ANY"]>;
|
|
4
|
+
path: z.ZodOptional<z.ZodString>;
|
|
5
|
+
accept: z.ZodDefault<z.ZodString>;
|
|
6
|
+
headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
|
|
7
|
+
}, "strip", z.ZodTypeAny, {
|
|
8
|
+
method: "GET" | "POST" | "PUT" | "DELETE" | "PATCH" | "ANY";
|
|
9
|
+
accept: string;
|
|
10
|
+
path?: string | undefined;
|
|
11
|
+
headers?: Record<string, any> | undefined;
|
|
12
|
+
}, {
|
|
13
|
+
method: "GET" | "POST" | "PUT" | "DELETE" | "PATCH" | "ANY";
|
|
14
|
+
path?: string | undefined;
|
|
15
|
+
accept?: string | undefined;
|
|
16
|
+
headers?: Record<string, any> | undefined;
|
|
17
|
+
}>;
|
|
18
|
+
export declare const TriggerOptsSchema: z.ZodObject<{
|
|
19
|
+
method: z.ZodEnum<["GET", "POST", "PUT", "DELETE", "PATCH", "ANY"]>;
|
|
20
|
+
path: z.ZodOptional<z.ZodString>;
|
|
21
|
+
accept: z.ZodDefault<z.ZodString>;
|
|
22
|
+
headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
|
|
23
|
+
}, "strip", z.ZodTypeAny, {
|
|
24
|
+
method: "GET" | "POST" | "PUT" | "DELETE" | "PATCH" | "ANY";
|
|
25
|
+
accept: string;
|
|
26
|
+
path?: string | undefined;
|
|
27
|
+
headers?: Record<string, any> | undefined;
|
|
28
|
+
}, {
|
|
29
|
+
method: "GET" | "POST" | "PUT" | "DELETE" | "PATCH" | "ANY";
|
|
30
|
+
path?: string | undefined;
|
|
31
|
+
accept?: string | undefined;
|
|
32
|
+
headers?: Record<string, any> | undefined;
|
|
33
|
+
}>;
|
|
34
|
+
export type TriggerOpts = z.input<typeof TriggerOptsSchema>;
|
|
35
|
+
export declare const QueueProviderSchema: z.ZodEnum<["kafka", "rabbitmq", "sqs", "redis", "beanstalk"]>;
|
|
36
|
+
export type QueueProvider = z.infer<typeof QueueProviderSchema>;
|
|
37
|
+
export declare const QueueTriggerOptsSchema: z.ZodObject<{
|
|
38
|
+
provider: z.ZodEnum<["kafka", "rabbitmq", "sqs", "redis", "beanstalk"]>;
|
|
39
|
+
topic: z.ZodString;
|
|
40
|
+
subscription: z.ZodOptional<z.ZodString>;
|
|
41
|
+
consumerGroup: z.ZodOptional<z.ZodString>;
|
|
42
|
+
ack: z.ZodDefault<z.ZodBoolean>;
|
|
43
|
+
deadLetterQueue: z.ZodOptional<z.ZodString>;
|
|
44
|
+
maxRetries: z.ZodDefault<z.ZodNumber>;
|
|
45
|
+
retryDelay: z.ZodDefault<z.ZodNumber>;
|
|
46
|
+
batchSize: z.ZodDefault<z.ZodNumber>;
|
|
47
|
+
concurrency: z.ZodDefault<z.ZodNumber>;
|
|
48
|
+
}, "strip", z.ZodTypeAny, {
|
|
49
|
+
provider: "kafka" | "rabbitmq" | "sqs" | "redis" | "beanstalk";
|
|
50
|
+
topic: string;
|
|
51
|
+
ack: boolean;
|
|
52
|
+
maxRetries: number;
|
|
53
|
+
retryDelay: number;
|
|
54
|
+
batchSize: number;
|
|
55
|
+
concurrency: number;
|
|
56
|
+
subscription?: string | undefined;
|
|
57
|
+
consumerGroup?: string | undefined;
|
|
58
|
+
deadLetterQueue?: string | undefined;
|
|
59
|
+
}, {
|
|
60
|
+
provider: "kafka" | "rabbitmq" | "sqs" | "redis" | "beanstalk";
|
|
61
|
+
topic: string;
|
|
62
|
+
subscription?: string | undefined;
|
|
63
|
+
consumerGroup?: string | undefined;
|
|
64
|
+
ack?: boolean | undefined;
|
|
65
|
+
deadLetterQueue?: string | undefined;
|
|
66
|
+
maxRetries?: number | undefined;
|
|
67
|
+
retryDelay?: number | undefined;
|
|
68
|
+
batchSize?: number | undefined;
|
|
69
|
+
concurrency?: number | undefined;
|
|
70
|
+
}>;
|
|
71
|
+
export type QueueTriggerOpts = z.input<typeof QueueTriggerOptsSchema>;
|
|
72
|
+
export declare const PubSubProviderSchema: z.ZodEnum<["gcp", "aws", "azure"]>;
|
|
73
|
+
export type PubSubProvider = z.infer<typeof PubSubProviderSchema>;
|
|
74
|
+
export declare const PubSubTriggerOptsSchema: z.ZodObject<{
|
|
75
|
+
provider: z.ZodEnum<["gcp", "aws", "azure"]>;
|
|
76
|
+
topic: z.ZodString;
|
|
77
|
+
subscription: z.ZodString;
|
|
78
|
+
ack: z.ZodDefault<z.ZodBoolean>;
|
|
79
|
+
maxMessages: z.ZodDefault<z.ZodNumber>;
|
|
80
|
+
ackDeadline: z.ZodDefault<z.ZodNumber>;
|
|
81
|
+
deadLetterTopic: z.ZodOptional<z.ZodString>;
|
|
82
|
+
filter: z.ZodOptional<z.ZodString>;
|
|
83
|
+
}, "strip", z.ZodTypeAny, {
|
|
84
|
+
provider: "gcp" | "aws" | "azure";
|
|
85
|
+
topic: string;
|
|
86
|
+
subscription: string;
|
|
87
|
+
ack: boolean;
|
|
88
|
+
maxMessages: number;
|
|
89
|
+
ackDeadline: number;
|
|
90
|
+
filter?: string | undefined;
|
|
91
|
+
deadLetterTopic?: string | undefined;
|
|
92
|
+
}, {
|
|
93
|
+
provider: "gcp" | "aws" | "azure";
|
|
94
|
+
topic: string;
|
|
95
|
+
subscription: string;
|
|
96
|
+
filter?: string | undefined;
|
|
97
|
+
ack?: boolean | undefined;
|
|
98
|
+
maxMessages?: number | undefined;
|
|
99
|
+
ackDeadline?: number | undefined;
|
|
100
|
+
deadLetterTopic?: string | undefined;
|
|
101
|
+
}>;
|
|
102
|
+
export type PubSubTriggerOpts = z.input<typeof PubSubTriggerOptsSchema>;
|
|
103
|
+
export declare const WorkerTriggerOptsSchema: z.ZodObject<{
|
|
104
|
+
queue: z.ZodString;
|
|
105
|
+
concurrency: z.ZodDefault<z.ZodNumber>;
|
|
106
|
+
timeout: z.ZodOptional<z.ZodNumber>;
|
|
107
|
+
retries: z.ZodDefault<z.ZodNumber>;
|
|
108
|
+
priority: z.ZodDefault<z.ZodNumber>;
|
|
109
|
+
delay: z.ZodOptional<z.ZodNumber>;
|
|
110
|
+
}, "strip", z.ZodTypeAny, {
|
|
111
|
+
concurrency: number;
|
|
112
|
+
queue: string;
|
|
113
|
+
retries: number;
|
|
114
|
+
priority: number;
|
|
115
|
+
timeout?: number | undefined;
|
|
116
|
+
delay?: number | undefined;
|
|
117
|
+
}, {
|
|
118
|
+
queue: string;
|
|
119
|
+
concurrency?: number | undefined;
|
|
120
|
+
timeout?: number | undefined;
|
|
121
|
+
retries?: number | undefined;
|
|
122
|
+
priority?: number | undefined;
|
|
123
|
+
delay?: number | undefined;
|
|
124
|
+
}>;
|
|
125
|
+
export type WorkerTriggerOpts = z.input<typeof WorkerTriggerOptsSchema>;
|
|
126
|
+
export declare const CronTriggerOptsSchema: z.ZodObject<{
|
|
127
|
+
schedule: z.ZodString;
|
|
128
|
+
timezone: z.ZodDefault<z.ZodString>;
|
|
129
|
+
overlap: z.ZodDefault<z.ZodBoolean>;
|
|
130
|
+
}, "strip", z.ZodTypeAny, {
|
|
131
|
+
schedule: string;
|
|
132
|
+
timezone: string;
|
|
133
|
+
overlap: boolean;
|
|
134
|
+
}, {
|
|
135
|
+
schedule: string;
|
|
136
|
+
timezone?: string | undefined;
|
|
137
|
+
overlap?: boolean | undefined;
|
|
138
|
+
}>;
|
|
139
|
+
export type CronTriggerOpts = z.input<typeof CronTriggerOptsSchema>;
|
|
140
|
+
export declare const WebhookTriggerOptsSchema: z.ZodObject<{
|
|
141
|
+
source: z.ZodString;
|
|
142
|
+
events: z.ZodArray<z.ZodString, "many">;
|
|
143
|
+
secret: z.ZodOptional<z.ZodString>;
|
|
144
|
+
path: z.ZodOptional<z.ZodString>;
|
|
145
|
+
}, "strip", z.ZodTypeAny, {
|
|
146
|
+
source: string;
|
|
147
|
+
events: string[];
|
|
148
|
+
path?: string | undefined;
|
|
149
|
+
secret?: string | undefined;
|
|
150
|
+
}, {
|
|
151
|
+
source: string;
|
|
152
|
+
events: string[];
|
|
153
|
+
path?: string | undefined;
|
|
154
|
+
secret?: string | undefined;
|
|
155
|
+
}>;
|
|
156
|
+
export type WebhookTriggerOpts = z.input<typeof WebhookTriggerOptsSchema>;
|
|
157
|
+
export declare const WebSocketTriggerOptsSchema: z.ZodObject<{
|
|
158
|
+
events: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
159
|
+
rooms: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
160
|
+
path: z.ZodOptional<z.ZodString>;
|
|
161
|
+
maxConnections: z.ZodDefault<z.ZodNumber>;
|
|
162
|
+
heartbeatInterval: z.ZodDefault<z.ZodNumber>;
|
|
163
|
+
messageRateLimit: z.ZodDefault<z.ZodNumber>;
|
|
164
|
+
}, "strip", z.ZodTypeAny, {
|
|
165
|
+
events: string[];
|
|
166
|
+
maxConnections: number;
|
|
167
|
+
heartbeatInterval: number;
|
|
168
|
+
messageRateLimit: number;
|
|
169
|
+
path?: string | undefined;
|
|
170
|
+
rooms?: string[] | undefined;
|
|
171
|
+
}, {
|
|
172
|
+
path?: string | undefined;
|
|
173
|
+
events?: string[] | undefined;
|
|
174
|
+
rooms?: string[] | undefined;
|
|
175
|
+
maxConnections?: number | undefined;
|
|
176
|
+
heartbeatInterval?: number | undefined;
|
|
177
|
+
messageRateLimit?: number | undefined;
|
|
178
|
+
}>;
|
|
179
|
+
export type WebSocketTriggerOpts = z.input<typeof WebSocketTriggerOptsSchema>;
|
|
180
|
+
export declare const SSETriggerOptsSchema: z.ZodObject<{
|
|
181
|
+
events: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
182
|
+
channels: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
183
|
+
path: z.ZodOptional<z.ZodString>;
|
|
184
|
+
maxConnections: z.ZodDefault<z.ZodNumber>;
|
|
185
|
+
heartbeatInterval: z.ZodDefault<z.ZodNumber>;
|
|
186
|
+
retryInterval: z.ZodDefault<z.ZodNumber>;
|
|
187
|
+
}, "strip", z.ZodTypeAny, {
|
|
188
|
+
events: string[];
|
|
189
|
+
maxConnections: number;
|
|
190
|
+
heartbeatInterval: number;
|
|
191
|
+
retryInterval: number;
|
|
192
|
+
path?: string | undefined;
|
|
193
|
+
channels?: string[] | undefined;
|
|
194
|
+
}, {
|
|
195
|
+
path?: string | undefined;
|
|
196
|
+
events?: string[] | undefined;
|
|
197
|
+
maxConnections?: number | undefined;
|
|
198
|
+
heartbeatInterval?: number | undefined;
|
|
199
|
+
channels?: string[] | undefined;
|
|
200
|
+
retryInterval?: number | undefined;
|
|
201
|
+
}>;
|
|
202
|
+
export type SSETriggerOpts = z.input<typeof SSETriggerOptsSchema>;
|
|
203
|
+
export declare const TriggersSchema: z.ZodEnum<["http", "grpc", "manual", "cron", "queue", "pubsub", "worker", "webhook", "sse", "websocket"]>;
|
|
204
|
+
export type TriggersEnum = z.infer<typeof TriggersSchema>;
|
|
205
|
+
export type TriggerConfigMap = {
|
|
206
|
+
http: TriggerOpts;
|
|
207
|
+
grpc: Record<string, unknown>;
|
|
208
|
+
manual: Record<string, unknown>;
|
|
209
|
+
cron: CronTriggerOpts;
|
|
210
|
+
queue: QueueTriggerOpts;
|
|
211
|
+
pubsub: PubSubTriggerOpts;
|
|
212
|
+
worker: WorkerTriggerOpts;
|
|
213
|
+
webhook: WebhookTriggerOpts;
|
|
214
|
+
sse: SSETriggerOpts;
|
|
215
|
+
websocket: WebSocketTriggerOpts;
|
|
216
|
+
};
|
|
217
|
+
export type AnyTriggerOpts = TriggerOpts | QueueTriggerOpts | PubSubTriggerOpts | WorkerTriggerOpts | CronTriggerOpts | WebhookTriggerOpts | WebSocketTriggerOpts | SSETriggerOpts | Record<string, unknown>;
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
// HTTP Trigger Options
|
|
3
|
+
export const HttpTriggerOptsSchema = z.object({
|
|
4
|
+
method: z.enum(["GET", "POST", "PUT", "DELETE", "PATCH", "ANY"]),
|
|
5
|
+
path: z.string().optional(),
|
|
6
|
+
accept: z.string().default("application/json"),
|
|
7
|
+
headers: z.record(z.string(), z.any()).optional(),
|
|
8
|
+
});
|
|
9
|
+
// Legacy alias for backward compatibility
|
|
10
|
+
export const TriggerOptsSchema = HttpTriggerOptsSchema;
|
|
11
|
+
// Queue Trigger Options (Kafka, RabbitMQ, SQS, Redis)
|
|
12
|
+
export const QueueProviderSchema = z.enum(["kafka", "rabbitmq", "sqs", "redis", "beanstalk"]);
|
|
13
|
+
export const QueueTriggerOptsSchema = z.object({
|
|
14
|
+
provider: QueueProviderSchema,
|
|
15
|
+
topic: z.string().describe("Topic or queue name to consume from"),
|
|
16
|
+
subscription: z.string().optional().describe("Subscription name (for pub/sub providers)"),
|
|
17
|
+
consumerGroup: z.string().optional().describe("Consumer group ID (for Kafka)"),
|
|
18
|
+
ack: z.boolean().default(true).describe("Whether to acknowledge messages after processing"),
|
|
19
|
+
deadLetterQueue: z.string().optional().describe("Dead letter queue for failed messages"),
|
|
20
|
+
maxRetries: z.number().default(3).describe("Maximum retry attempts before sending to DLQ"),
|
|
21
|
+
retryDelay: z.number().default(1000).describe("Delay between retries in milliseconds"),
|
|
22
|
+
batchSize: z.number().default(1).describe("Number of messages to process in batch"),
|
|
23
|
+
concurrency: z.number().default(1).describe("Number of concurrent consumers"),
|
|
24
|
+
});
|
|
25
|
+
// Pub/Sub Trigger Options (GCP Pub/Sub, AWS SNS, Azure Service Bus)
|
|
26
|
+
export const PubSubProviderSchema = z.enum(["gcp", "aws", "azure"]);
|
|
27
|
+
export const PubSubTriggerOptsSchema = z.object({
|
|
28
|
+
provider: PubSubProviderSchema,
|
|
29
|
+
topic: z.string().describe("Topic name to subscribe to"),
|
|
30
|
+
subscription: z
|
|
31
|
+
.string()
|
|
32
|
+
.describe("Subscription name (GCP) or SQS queue URL (AWS) or Service Bus subscription (Azure)"),
|
|
33
|
+
ack: z.boolean().default(true).describe("Whether to acknowledge messages after processing"),
|
|
34
|
+
maxMessages: z.number().default(10).describe("Maximum messages to receive at once"),
|
|
35
|
+
ackDeadline: z.number().default(30).describe("Acknowledgment deadline in seconds"),
|
|
36
|
+
deadLetterTopic: z.string().optional().describe("Dead letter topic for failed messages"),
|
|
37
|
+
filter: z.string().optional().describe("Message filter expression"),
|
|
38
|
+
});
|
|
39
|
+
// Worker Trigger Options (background jobs)
|
|
40
|
+
export const WorkerTriggerOptsSchema = z.object({
|
|
41
|
+
queue: z.string().describe("Worker queue name"),
|
|
42
|
+
concurrency: z.number().default(1).describe("Number of concurrent workers"),
|
|
43
|
+
timeout: z.number().optional().describe("Job timeout in milliseconds"),
|
|
44
|
+
retries: z.number().default(3).describe("Number of retry attempts"),
|
|
45
|
+
priority: z.number().default(0).describe("Job priority (higher = more priority)"),
|
|
46
|
+
delay: z.number().optional().describe("Delay before processing in milliseconds"),
|
|
47
|
+
});
|
|
48
|
+
// Cron Trigger Options (scheduled workflows)
|
|
49
|
+
export const CronTriggerOptsSchema = z.object({
|
|
50
|
+
schedule: z.string().describe("Cron expression (e.g., '0 * * * *' for hourly)"),
|
|
51
|
+
timezone: z.string().default("UTC").describe("Timezone for schedule evaluation"),
|
|
52
|
+
overlap: z.boolean().default(false).describe("Allow overlapping executions"),
|
|
53
|
+
});
|
|
54
|
+
// Webhook Trigger Options (external service events)
|
|
55
|
+
export const WebhookTriggerOptsSchema = z.object({
|
|
56
|
+
source: z.string().describe("Source service (github, stripe, shopify, etc.)"),
|
|
57
|
+
events: z.array(z.string()).describe("Event types to listen for"),
|
|
58
|
+
secret: z.string().optional().describe("Webhook secret for verification"),
|
|
59
|
+
path: z.string().optional().describe("Custom webhook path"),
|
|
60
|
+
});
|
|
61
|
+
// WebSocket Trigger Options (real-time bidirectional)
|
|
62
|
+
export const WebSocketTriggerOptsSchema = z.object({
|
|
63
|
+
events: z.array(z.string()).default(["*"]).describe("Event names to listen for (supports wildcards)"),
|
|
64
|
+
rooms: z.array(z.string()).optional().describe("Room/channel filters"),
|
|
65
|
+
path: z.string().optional().describe("WebSocket endpoint path"),
|
|
66
|
+
maxConnections: z.number().default(10000).describe("Maximum concurrent connections"),
|
|
67
|
+
heartbeatInterval: z.number().default(30000).describe("Heartbeat interval in milliseconds"),
|
|
68
|
+
messageRateLimit: z.number().default(100).describe("Max messages per second per client"),
|
|
69
|
+
});
|
|
70
|
+
// SSE Trigger Options (Server-Sent Events)
|
|
71
|
+
export const SSETriggerOptsSchema = z.object({
|
|
72
|
+
events: z.array(z.string()).default(["*"]).describe("Event names to emit"),
|
|
73
|
+
channels: z.array(z.string()).optional().describe("Channel filters"),
|
|
74
|
+
path: z.string().optional().describe("SSE endpoint path"),
|
|
75
|
+
maxConnections: z.number().default(10000).describe("Maximum concurrent connections"),
|
|
76
|
+
heartbeatInterval: z.number().default(30000).describe("Heartbeat interval in milliseconds"),
|
|
77
|
+
retryInterval: z.number().default(3000).describe("Client retry interval in milliseconds"),
|
|
78
|
+
});
|
|
79
|
+
// All trigger types
|
|
80
|
+
export const TriggersSchema = z.enum([
|
|
81
|
+
"http",
|
|
82
|
+
"grpc",
|
|
83
|
+
"manual",
|
|
84
|
+
"cron",
|
|
85
|
+
"queue",
|
|
86
|
+
"pubsub",
|
|
87
|
+
"worker",
|
|
88
|
+
"webhook",
|
|
89
|
+
"sse",
|
|
90
|
+
"websocket",
|
|
91
|
+
]);
|
|
92
|
+
//# sourceMappingURL=TriggerOpts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TriggerOpts.js","sourceRoot":"","sources":["../../src/types/TriggerOpts.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export declare const WorkflowOptsSchema: z.ZodObject<{
|
|
3
|
+
name: z.ZodString;
|
|
4
|
+
version: z.ZodString;
|
|
5
|
+
description: z.ZodOptional<z.ZodString>;
|
|
6
|
+
steps: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
7
|
+
name: z.ZodString;
|
|
8
|
+
node: z.ZodString;
|
|
9
|
+
type: z.ZodEnum<["local", "module", "runtime.python3", "runtime.nodejs", "runtime.bun", "runtime.go", "runtime.java", "runtime.rust", "runtime.php", "runtime.csharp", "runtime.ruby", "runtime.docker", "runtime.wasm"]>;
|
|
10
|
+
inputs: z.ZodOptional<z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>>;
|
|
11
|
+
runtime: z.ZodOptional<z.ZodEnum<["nodejs", "bun", "python3", "go", "java", "rust", "php", "csharp", "ruby", "docker", "wasm"]>>;
|
|
12
|
+
}, "strip", z.ZodTypeAny, {
|
|
13
|
+
name: string;
|
|
14
|
+
node: string;
|
|
15
|
+
type: "local" | "module" | "runtime.python3" | "runtime.nodejs" | "runtime.bun" | "runtime.go" | "runtime.java" | "runtime.rust" | "runtime.php" | "runtime.csharp" | "runtime.ruby" | "runtime.docker" | "runtime.wasm";
|
|
16
|
+
inputs?: {} | undefined;
|
|
17
|
+
runtime?: "nodejs" | "bun" | "python3" | "go" | "java" | "rust" | "php" | "csharp" | "ruby" | "docker" | "wasm" | undefined;
|
|
18
|
+
}, {
|
|
19
|
+
name: string;
|
|
20
|
+
node: string;
|
|
21
|
+
type: "local" | "module" | "runtime.python3" | "runtime.nodejs" | "runtime.bun" | "runtime.go" | "runtime.java" | "runtime.rust" | "runtime.php" | "runtime.csharp" | "runtime.ruby" | "runtime.docker" | "runtime.wasm";
|
|
22
|
+
inputs?: {} | undefined;
|
|
23
|
+
runtime?: "nodejs" | "bun" | "python3" | "go" | "java" | "rust" | "php" | "csharp" | "ruby" | "docker" | "wasm" | undefined;
|
|
24
|
+
}>, "many">>;
|
|
25
|
+
nodes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>>>;
|
|
26
|
+
trigger: z.ZodOptional<z.ZodRecord<z.ZodEnum<["http", "grpc", "manual", "cron", "queue", "pubsub", "worker", "webhook", "sse", "websocket"]>, z.ZodObject<{
|
|
27
|
+
method: z.ZodEnum<["GET", "POST", "PUT", "DELETE", "PATCH", "ANY"]>;
|
|
28
|
+
path: z.ZodOptional<z.ZodString>;
|
|
29
|
+
accept: z.ZodDefault<z.ZodString>;
|
|
30
|
+
headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
|
|
31
|
+
}, "strip", z.ZodTypeAny, {
|
|
32
|
+
method: "GET" | "POST" | "PUT" | "DELETE" | "PATCH" | "ANY";
|
|
33
|
+
accept: string;
|
|
34
|
+
path?: string | undefined;
|
|
35
|
+
headers?: Record<string, any> | undefined;
|
|
36
|
+
}, {
|
|
37
|
+
method: "GET" | "POST" | "PUT" | "DELETE" | "PATCH" | "ANY";
|
|
38
|
+
path?: string | undefined;
|
|
39
|
+
accept?: string | undefined;
|
|
40
|
+
headers?: Record<string, any> | undefined;
|
|
41
|
+
}>>>;
|
|
42
|
+
}, "strip", z.ZodTypeAny, {
|
|
43
|
+
name: string;
|
|
44
|
+
version: string;
|
|
45
|
+
steps?: {
|
|
46
|
+
name: string;
|
|
47
|
+
node: string;
|
|
48
|
+
type: "local" | "module" | "runtime.python3" | "runtime.nodejs" | "runtime.bun" | "runtime.go" | "runtime.java" | "runtime.rust" | "runtime.php" | "runtime.csharp" | "runtime.ruby" | "runtime.docker" | "runtime.wasm";
|
|
49
|
+
inputs?: {} | undefined;
|
|
50
|
+
runtime?: "nodejs" | "bun" | "python3" | "go" | "java" | "rust" | "php" | "csharp" | "ruby" | "docker" | "wasm" | undefined;
|
|
51
|
+
}[] | undefined;
|
|
52
|
+
description?: string | undefined;
|
|
53
|
+
nodes?: Record<string, {}> | undefined;
|
|
54
|
+
trigger?: Partial<Record<"queue" | "http" | "grpc" | "manual" | "cron" | "pubsub" | "worker" | "webhook" | "sse" | "websocket", {
|
|
55
|
+
method: "GET" | "POST" | "PUT" | "DELETE" | "PATCH" | "ANY";
|
|
56
|
+
accept: string;
|
|
57
|
+
path?: string | undefined;
|
|
58
|
+
headers?: Record<string, any> | undefined;
|
|
59
|
+
}>> | undefined;
|
|
60
|
+
}, {
|
|
61
|
+
name: string;
|
|
62
|
+
version: string;
|
|
63
|
+
steps?: {
|
|
64
|
+
name: string;
|
|
65
|
+
node: string;
|
|
66
|
+
type: "local" | "module" | "runtime.python3" | "runtime.nodejs" | "runtime.bun" | "runtime.go" | "runtime.java" | "runtime.rust" | "runtime.php" | "runtime.csharp" | "runtime.ruby" | "runtime.docker" | "runtime.wasm";
|
|
67
|
+
inputs?: {} | undefined;
|
|
68
|
+
runtime?: "nodejs" | "bun" | "python3" | "go" | "java" | "rust" | "php" | "csharp" | "ruby" | "docker" | "wasm" | undefined;
|
|
69
|
+
}[] | undefined;
|
|
70
|
+
description?: string | undefined;
|
|
71
|
+
nodes?: Record<string, {}> | undefined;
|
|
72
|
+
trigger?: Partial<Record<"queue" | "http" | "grpc" | "manual" | "cron" | "pubsub" | "worker" | "webhook" | "sse" | "websocket", {
|
|
73
|
+
method: "GET" | "POST" | "PUT" | "DELETE" | "PATCH" | "ANY";
|
|
74
|
+
path?: string | undefined;
|
|
75
|
+
accept?: string | undefined;
|
|
76
|
+
headers?: Record<string, any> | undefined;
|
|
77
|
+
}>> | undefined;
|
|
78
|
+
}>;
|
|
79
|
+
export type WorkflowOpts = z.infer<typeof WorkflowOptsSchema>;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { StepInputsSchema, StepOptsSchema } from "./StepOpts";
|
|
3
|
+
import { TriggerOptsSchema, TriggersSchema } from "./TriggerOpts";
|
|
4
|
+
export const WorkflowOptsSchema = z.object({
|
|
5
|
+
name: z
|
|
6
|
+
.string({
|
|
7
|
+
required_error: "Name is required",
|
|
8
|
+
invalid_type_error: "Name must be a string",
|
|
9
|
+
})
|
|
10
|
+
.min(3),
|
|
11
|
+
version: z
|
|
12
|
+
.string({
|
|
13
|
+
required_error: "Version is required",
|
|
14
|
+
invalid_type_error: "Version must be a string",
|
|
15
|
+
})
|
|
16
|
+
.min(5, { message: "Format required x.x.x" }),
|
|
17
|
+
description: z.string().optional(),
|
|
18
|
+
steps: z.array(StepOptsSchema).optional(),
|
|
19
|
+
nodes: z.record(z.string(), StepInputsSchema).optional(),
|
|
20
|
+
trigger: z.record(TriggersSchema, TriggerOptsSchema).optional(),
|
|
21
|
+
});
|
|
22
|
+
//# sourceMappingURL=WorkflowOpts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WorkflowOpts.js","sourceRoot":"","sources":["../../src/types/WorkflowOpts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAElE,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,IAAI,EAAE,CAAC;SACL,MAAM,CAAC;QACP,cAAc,EAAE,kBAAkB;QAClC,kBAAkB,EAAE,uBAAuB;KAC3C,CAAC;SACD,GAAG,CAAC,CAAC,CAAC;IACR,OAAO,EAAE,CAAC;SACR,MAAM,CAAC;QACP,cAAc,EAAE,qBAAqB;QACrC,kBAAkB,EAAE,0BAA0B;KAC9C,CAAC;SACD,GAAG,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,uBAAuB,EAAE,CAAC;IAC9C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,QAAQ,EAAE;IACzC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,gBAAgB,CAAC,CAAC,QAAQ,EAAE;IACxD,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC,QAAQ,EAAE;CAC/D,CAAC,CAAC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@blokjs/helper",
|
|
3
|
+
"version": "0.2.0",
|
|
4
|
+
"description": "",
|
|
5
|
+
"engines": {
|
|
6
|
+
"node": ">=18.0.0"
|
|
7
|
+
},
|
|
8
|
+
"type": "module",
|
|
9
|
+
"main": "dist/index.js",
|
|
10
|
+
"types": "dist/index.d.ts",
|
|
11
|
+
"files": [
|
|
12
|
+
"dist"
|
|
13
|
+
],
|
|
14
|
+
"author": "Marco A. Castillo Della Sera",
|
|
15
|
+
"license": "MIT",
|
|
16
|
+
"scripts": {
|
|
17
|
+
"build": "rm -rf dist && bun run tsc",
|
|
18
|
+
"build:dev": "tsc --watch",
|
|
19
|
+
"test:dev": "vitest",
|
|
20
|
+
"test": "vitest run",
|
|
21
|
+
"typecheck": "tsc --noEmit --incremental"
|
|
22
|
+
},
|
|
23
|
+
"devDependencies": {
|
|
24
|
+
"@types/node": "^22.15.21",
|
|
25
|
+
"typescript": "^5.8.3",
|
|
26
|
+
"vitest": "^4.0.18"
|
|
27
|
+
},
|
|
28
|
+
"dependencies": {
|
|
29
|
+
"zod": "^3.24.2"
|
|
30
|
+
},
|
|
31
|
+
"private": false,
|
|
32
|
+
"publishConfig": {
|
|
33
|
+
"access": "public"
|
|
34
|
+
}
|
|
35
|
+
}
|