windmill-ts 0.4.3 → 0.5.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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "windmill-ts",
3
- "version": "0.4.3",
3
+ "version": "0.5.0",
4
4
  "description": "Type-safe client for Windmill",
5
5
  "main": "dist/src/index.js",
6
6
  "bin": "dist/src/index.js",
@@ -13,13 +13,23 @@ const preamble = dedent `
13
13
  return wmill.runFlow(flowPath, schema.parse(args));
14
14
  };
15
15
 
16
+ type RunFlowAsyncOptions = {
17
+ detached?: boolean;
18
+ };
19
+
16
20
  export const runFlowAsync = <Path extends keyof typeof ${mapName}>(
17
21
  flowPath: Path,
18
22
  args: z.input<(typeof ${mapName})[Path]>,
23
+ options?: RunFlowAsyncOptions,
19
24
  ) => {
25
+ const { detached = false } = options ?? {};
20
26
  const schema = ${mapName}[flowPath];
21
27
 
22
- return wmill.runFlowAsync(flowPath, schema.parse(args));
28
+ const runner = detached
29
+ ? runDetached
30
+ : <T extends unknown>(cb: () => Promise<T>) => cb();
31
+
32
+ return runner(() => wmill.runFlowAsync(flowPath, schema.parse(args)));
23
33
  };
24
34
 
25
35
  export const getFlowArgsSchema = <Path extends keyof typeof ${mapName}>(
@@ -1 +1 @@
1
- {"version":3,"file":"flows.js","sourceRoot":"","sources":["../../../src/generator/flows.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,OAAO,GAAG,OAAO,CAAC;AAExB,MAAM,QAAQ,GAAG,MAAM,CAAA;sDAC+B,OAAO;;4BAEjC,OAAO;;qBAEd,OAAO;;;;;2DAK+B,OAAO;;4BAEtC,OAAO;;qBAEd,OAAO;;;;;gEAKoC,OAAO;;;aAG1D,OAAO;;CAEnB,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,IAAI,EAAE;IACtC,MAAM,EAAE,KAAK,EAAE,GAAG,UAAU,EAAG,CAAC;IAEhC,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC;IAEtB,OAAO,eAAe,CAAC;QACrB,SAAS,EAAE,SAAS,EAAE;QACtB,OAAO;KACR,CAAC,CAAC;AACL,CAAC,CAAC"}
1
+ {"version":3,"file":"flows.js","sourceRoot":"","sources":["../../../src/generator/flows.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,OAAO,GAAG,OAAO,CAAC;AAExB,MAAM,QAAQ,GAAG,MAAM,CAAA;sDAC+B,OAAO;;4BAEjC,OAAO;;qBAEd,OAAO;;;;;;;;;2DAS+B,OAAO;;4BAEtC,OAAO;;;;qBAId,OAAO;;;;;;;;;gEASoC,OAAO;;;aAG1D,OAAO;;CAEnB,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,IAAI,EAAE;IACtC,MAAM,EAAE,KAAK,EAAE,GAAG,UAAU,EAAG,CAAC;IAEhC,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC;IAEtB,OAAO,eAAe,CAAC;QACrB,SAAS,EAAE,SAAS,EAAE;QACtB,OAAO;KACR,CAAC,CAAC;AACL,CAAC,CAAC"}
@@ -25,6 +25,19 @@ const preamble = dedent `
25
25
  }
26
26
  }) as T;
27
27
  }
28
+
29
+ export const runDetached = async <T extends unknown>(cb: () => Promise<T>) => {
30
+ const originalRootFlowJobId = process.env["WM_ROOT_FLOW_JOB_ID"];
31
+ delete (process.env as Record<string, string | undefined>)[
32
+ "WM_ROOT_FLOW_JOB_ID"
33
+ ];
34
+
35
+ const result = await cb();
36
+
37
+ process.env["WM_ROOT_FLOW_JOB_ID"] = originalRootFlowJobId!;
38
+
39
+ return result;
40
+ };
28
41
  `;
29
42
  export const writePreamble = async () => {
30
43
  const { write } = getContext();
@@ -1 +1 @@
1
- {"version":3,"file":"preamble.js","sourceRoot":"","sources":["../../../src/generator/preamble.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,QAAQ,GAAG,MAAM,CAAA;;;;IAInB;AACA;;qEAEqE,CAAC,EACxE;;;;;;;;;;;;;;;;;;CAkBD,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,IAAI,EAAE;IACtC,MAAM,EAAE,KAAK,EAAE,GAAG,UAAU,EAAG,CAAC;IAEhC,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC;AACxB,CAAC,CAAC"}
1
+ {"version":3,"file":"preamble.js","sourceRoot":"","sources":["../../../src/generator/preamble.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,QAAQ,GAAG,MAAM,CAAA;;;;IAInB;AACA;;qEAEqE,CAAC,EACxE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+BD,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,IAAI,EAAE;IACtC,MAAM,EAAE,KAAK,EAAE,GAAG,UAAU,EAAG,CAAC;IAEhC,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC;AACxB,CAAC,CAAC"}
@@ -13,13 +13,23 @@ const preamble = dedent `
13
13
  return wmill.runScript(scriptPath, null, schema.parse(args));
14
14
  };
15
15
 
16
+ type RunScriptAsyncOptions = {
17
+ detached?: boolean;
18
+ };
19
+
16
20
  export const runScriptAsync = <Path extends keyof typeof ${mapName}>(
17
21
  scriptPath: Path,
18
22
  args: z.input<(typeof ${mapName})[Path]>,
23
+ options?: RunScriptAsyncOptions,
19
24
  ) => {
25
+ const { detached = false } = options ?? {};
20
26
  const schema = ${mapName}[scriptPath];
21
27
 
22
- return wmill.runScriptAsync(scriptPath, null, schema.parse(args));
28
+ const runner = detached
29
+ ? runDetached
30
+ : <T extends unknown>(cb: () => Promise<T>) => cb();
31
+
32
+ return runner(() => wmill.runScriptAsync(scriptPath, null, schema.parse(args)));
23
33
  };
24
34
 
25
35
  export const getScriptArgsSchema = <Path extends keyof typeof ${mapName}>(
@@ -1 +1 @@
1
- {"version":3,"file":"scripts.js","sourceRoot":"","sources":["../../../src/generator/scripts.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,OAAO,GAAG,SAAS,CAAC;AAE1B,MAAM,QAAQ,GAAG,MAAM,CAAA;wDACiC,OAAO;;4BAEnC,OAAO;;qBAEd,OAAO;;;;;6DAKiC,OAAO;;4BAExC,OAAO;;qBAEd,OAAO;;;;;kEAKsC,OAAO;;;aAG5D,OAAO;;CAEnB,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,IAAI,EAAE;IACxC,MAAM,EAAE,KAAK,EAAE,GAAG,UAAU,EAAG,CAAC;IAEhC,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC;IAEtB,OAAO,eAAe,CAAC;QACrB,SAAS,EAAE,WAAW,EAAE;QACxB,OAAO;KACR,CAAC,CAAC;AACL,CAAC,CAAC"}
1
+ {"version":3,"file":"scripts.js","sourceRoot":"","sources":["../../../src/generator/scripts.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,OAAO,GAAG,SAAS,CAAC;AAE1B,MAAM,QAAQ,GAAG,MAAM,CAAA;wDACiC,OAAO;;4BAEnC,OAAO;;qBAEd,OAAO;;;;;;;;;6DASiC,OAAO;;4BAExC,OAAO;;;;qBAId,OAAO;;;;;;;;;kEASsC,OAAO;;;aAG5D,OAAO;;CAEnB,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,IAAI,EAAE;IACxC,MAAM,EAAE,KAAK,EAAE,GAAG,UAAU,EAAG,CAAC;IAEhC,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC;IAEtB,OAAO,eAAe,CAAC;QACrB,SAAS,EAAE,WAAW,EAAE;QACxB,OAAO;KACR,CAAC,CAAC;AACL,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "windmill-ts",
3
- "version": "0.4.3",
3
+ "version": "0.5.0",
4
4
  "description": "Type-safe client for Windmill",
5
5
  "main": "dist/src/index.js",
6
6
  "bin": "dist/src/index.js",