@requence/task 1.0.0-alpha.1 → 1.0.0-alpha.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/build/index.js CHANGED
@@ -74,6 +74,11 @@ var nodeDeferUpdateSchema = z.object({
74
74
  timestamp: z.coerce.date(),
75
75
  reason: z.string().optional()
76
76
  });
77
+ var nodeEndUpdateSchema = z.object({
78
+ type: z.literal("nodeEnd"),
79
+ timestamp: z.coerce.date(),
80
+ node: nodeInfoSchema
81
+ });
77
82
  var updateSchema = z.discriminatedUnion("type", [
78
83
  taskStartUpdateSchema,
79
84
  taskErrorUpdateSchema,
@@ -81,7 +86,8 @@ var updateSchema = z.discriminatedUnion("type", [
81
86
  nodeStartUpdateSchema,
82
87
  nodeUpdateUpdateSchema,
83
88
  nodeErrorUpdateSchema,
84
- nodeDeferUpdateSchema
89
+ nodeDeferUpdateSchema,
90
+ nodeEndUpdateSchema
85
91
  ]);
86
92
 
87
93
  // src/utils/callbackToAsyncIterator.ts
@@ -172,7 +178,8 @@ in your package.json in requence.accessToken`);
172
178
  "nodeStart",
173
179
  "nodeUpdate",
174
180
  "nodeDefer",
175
- "nodeError"
181
+ "nodeError",
182
+ "nodeEnd"
176
183
  ];
177
184
  let input = null;
178
185
  let meta = null;
@@ -185,7 +192,6 @@ in your package.json in requence.accessToken`);
185
192
  return;
186
193
  }
187
194
  const update = updateResult.data;
188
- taskUpdateHandlers.forEach((handler) => handler(update));
189
195
  if (update.type === "taskEnd" || update.type === "taskError") {
190
196
  eventSource.close();
191
197
  }
@@ -216,6 +222,7 @@ in your package.json in requence.accessToken`);
216
222
  if (update.type === "taskError") {
217
223
  resultPromise.reject(new TaskError(update.error, params.taskTemplate));
218
224
  }
225
+ taskUpdateHandlers.forEach((handler) => handler(update));
219
226
  });
220
227
  });
221
228
  };
@@ -263,5 +270,5 @@ export {
263
270
  TaskError
264
271
  };
265
272
 
266
- //# debugId=A9D3BA4F308FA87164756E2164756E21
273
+ //# debugId=1F3F1932800384D964756E2164756E21
267
274
  //# sourceMappingURL=index.js.map
@@ -2,11 +2,11 @@
2
2
  "version": 3,
3
3
  "sources": ["../src/index.ts", "../src/types.ts", "../src/utils/callbackToAsyncIterator.ts"],
4
4
  "sourcesContent": [
5
- "import { readFileSync } from 'node:fs'\n\nimport { createRemotePromise, deobfuscate } from '@requence/helpers'\nimport { EventSource } from 'eventsource'\nimport { z } from 'zod'\n\nimport {\n type CreateTaskOptions,\n type Result,\n type Update,\n updateSchema,\n} from './types.ts'\nimport callbackToAsyncIterator from './utils/callbackToAsyncIterator.ts'\n\nexport class TaskError extends Error {\n constructor(\n message: string,\n public readonly taskTemplate: string,\n ) {\n super(message)\n }\n}\n\ntype TaskUpdateHandler = (update: Update) => void\n\nconst eventSchema = z\n .object({ type: z.string(), data: z.string() })\n .transform((event) => ({ type: event.type, ...JSON.parse(event.data) }))\n .pipe(updateSchema)\n\nexport function createTask<\n T extends keyof Requence.TaskTemplate | (string & {}),\n>(params: CreateTaskOptions<T>, onUpdate?: TaskUpdateHandler) {\n const taskUpdateHandlers = new Set<TaskUpdateHandler>()\n\n const accessKey =\n params.accessToken ??\n process.env.REQUENCE_ACCESS_TOKEN ??\n (JSON.parse(readFileSync('package.json', 'utf-8')) as any).requence\n ?.accessToken\n\n if (!accessKey) {\n throw new Error(\n 'No access token found\\nYou can provide the access token as argument to createTask,\\nas environment variable REQUENCE_ACCESS_TOKEN or\\nin your package.json in requence.accessToken',\n )\n }\n\n const parts = deobfuscate(accessKey)\n if (parts.length < 2 || parts[0] !== 'api') {\n throw new Error('Invalid api key')\n }\n const [, token, apiBaseUrl] = parts\n\n const startUrl = `${apiBaseUrl}/task/start/${params.taskTemplate}`\n\n const payloadPromise = createRemotePromise<{\n id: string\n urls: { watch: string }\n }>()\n\n let isMonitoring = false\n const startMonitoring = async () => {\n if (isMonitoring) {\n return\n }\n\n isMonitoring = true\n const payload = await payloadPromise\n\n const eventSource = new EventSource(payload.urls.watch, {\n fetch: (input, init) =>\n fetch(input, {\n ...init,\n headers: {\n Authorization: `Bearer ${token}`,\n },\n }),\n })\n\n const taskEvents: Array<Update['type']> = [\n 'taskStart',\n 'taskError',\n 'taskEnd',\n 'nodeStart',\n 'nodeUpdate',\n 'nodeDefer',\n 'nodeError',\n ]\n\n let input: unknown = null\n let meta: unknown = null\n taskEvents.forEach((taskEvent) => {\n eventSource.addEventListener(taskEvent, (event) => {\n const updateResult = eventSchema.safeParse(event)\n\n if (!updateResult.success) {\n eventSource.close()\n resultPromise.reject(\n new TaskError(\n `Invalid ${taskEvent} update received`,\n params.taskTemplate,\n ),\n )\n return\n }\n\n const update = updateResult.data\n taskUpdateHandlers.forEach((handler) => handler(update))\n\n if (update.type === 'taskEnd' || update.type === 'taskError') {\n eventSource.close()\n }\n\n if (update.type === 'taskStart') {\n input = update.input\n meta = update.meta\n }\n\n if (update.type === 'taskEnd') {\n const getPartialResult = (alias: string) =>\n update.partialResults.find(\n (partialResult) => partialResult.node.alias === alias,\n )\n\n resultPromise.resolve({\n getInput() {\n return input\n },\n getMeta() {\n return meta\n },\n getError(alias) {\n return getPartialResult(alias)?.error ?? null\n },\n getData(alias) {\n if (!alias) {\n return update.result\n }\n\n return getPartialResult(alias)?.data ?? null\n },\n } as Result<T>)\n }\n\n if (update.type === 'taskError') {\n resultPromise.reject(new TaskError(update.error, params.taskTemplate))\n }\n })\n })\n }\n\n const taskIdPromise = createRemotePromise<string>()\n const resultPromise = createRemotePromise<Result<T>>(startMonitoring)\n\n ;(async () => {\n const response = await fetch(startUrl, {\n method: 'post',\n headers: {\n Accept: 'application/json',\n 'Content-Type': 'application/json',\n Authorization: `Bearer ${token}`,\n },\n body: JSON.stringify({ input: params.input, meta: params.meta }),\n })\n\n if (!response.ok) {\n const error = new TaskError(await response.text(), params.taskTemplate)\n taskIdPromise.reject(error)\n resultPromise.reject(error)\n return\n }\n\n const payload = await response.json()\n taskIdPromise.resolve(payload.id)\n payloadPromise.resolve(payload)\n if (onUpdate) {\n taskUpdateHandlers.add(onUpdate)\n startMonitoring()\n }\n })()\n\n const asyncIterable = callbackToAsyncIterator<Update>({\n subscribe: (push) => {\n taskUpdateHandlers.add(push)\n startMonitoring()\n },\n done: (value) => value.type === 'taskError' || value.type === 'taskEnd',\n })\n\n return Object.assign(resultPromise.promise, asyncIterable, {\n getTaskId() {\n return taskIdPromise\n },\n })\n}\n",
6
- "import { z } from 'zod'\n\ntype Prettify<T> = {\n [K in keyof T]: T[K]\n} & {}\n\ntype IfUnknown<T, Then, Else> = unknown extends T\n ? T extends unknown\n ? Then\n : Else\n : Else\n\ntype IfNull<T, Then, Else> = T extends null\n ? null extends T\n ? Then\n : Else\n : Else\n\nexport type CreateTaskOptions<T> = {\n taskTemplate: T\n accessToken?: string\n} & IfNull<\n Input<T>,\n { input?: null },\n IfUnknown<Input<T>, { input?: any }, { input: Input<T> }>\n> &\n IfNull<\n Meta<T>,\n { meta?: null },\n IfUnknown<Meta<T>, { meta?: any }, { meta: Meta<T> }>\n >\n\ntype Input<T> = T extends keyof Requence.TaskTemplate\n ? Requence.TaskTemplate[T]['input']\n : unknown\ntype Meta<T> = T extends keyof Requence.TaskTemplate\n ? Requence.TaskTemplate[T]['meta']\n : unknown\ntype Data<T> = T extends keyof Requence.TaskTemplate\n ? Prettify<Requence.TaskTemplate[T]['results']>\n : unknown\ntype NamedData<T, A> = T extends keyof Requence.TaskTemplate\n ? A extends keyof Requence.TaskTemplate[T]['namedResults']\n ? Prettify<Requence.TaskTemplate[T]['namedResults'][A]>\n : unknown\n : unknown\ntype Alias<T> = T extends keyof Requence.TaskTemplate\n ? keyof Requence.TaskTemplate[T]['namedResults']\n : string\n\nexport interface Result<T> {\n getInput(): Input<T>\n getMeta(): Meta<T>\n getData: {\n (): Data<T>\n <A extends Alias<T>>(alias: A): NamedData<T, A>\n }\n getError(alias: Alias<T>): string | null\n}\n\nconst serviceNodeInfoSchema = z.object({\n id: z.string().uuid(),\n type: z.literal('service'),\n alias: z.string().optional(),\n service: z\n .object({\n id: z.string().uuid(),\n name: z.string(),\n version: z.string(),\n })\n .optional(),\n})\n\nconst logicNodeInfoSchema = z.object({\n id: z.string().uuid(),\n type: z.literal('logic'),\n alias: z.string().optional(),\n logic: z\n .object({\n language: z.enum(['typescript', 'javascript', 'python']),\n })\n .optional(),\n})\n\nconst nodeInfoSchema = z.discriminatedUnion('type', [\n serviceNodeInfoSchema,\n logicNodeInfoSchema,\n])\n\nconst taskStartUpdateSchema = z.object({\n type: z.literal('taskStart'),\n timestamp: z.coerce.date(),\n input: z.unknown(),\n meta: z.unknown(),\n})\n\nconst taskErrorUpdateSchema = z.object({\n type: z.literal('taskError'),\n timestamp: z.coerce.date(),\n error: z.string(),\n})\n\nconst taskEndUpdateSchema = z.object({\n type: z.literal('taskEnd'),\n timestamp: z.coerce.date(),\n result: z.record(z.string(), z.unknown()),\n partialResults: z.array(\n z.object({\n node: nodeInfoSchema,\n timestamp: z.coerce.date().nullable(),\n data: z.unknown(),\n error: z.string().optional(),\n }),\n ),\n})\n\nconst nodeStartUpdateSchema = z.object({\n type: z.literal('nodeStart'),\n timestamp: z.coerce.date(),\n node: nodeInfoSchema,\n})\n\nconst nodeUpdateUpdateSchema = z.object({\n type: z.literal('nodeUpdate'),\n timestamp: z.coerce.date(),\n data: z.unknown(),\n})\n\nconst nodeErrorUpdateSchema = z.object({\n type: z.literal('nodeError'),\n timestamp: z.coerce.date(),\n error: z.string(),\n})\n\nconst nodeDeferUpdateSchema = z.object({\n type: z.literal('nodeDefer'),\n timestamp: z.coerce.date(),\n reason: z.string().optional(),\n})\n\nexport const updateSchema = z.discriminatedUnion('type', [\n taskStartUpdateSchema,\n taskErrorUpdateSchema,\n taskEndUpdateSchema,\n nodeStartUpdateSchema,\n nodeUpdateUpdateSchema,\n nodeErrorUpdateSchema,\n nodeDeferUpdateSchema,\n])\n\nexport type Update = z.infer<typeof updateSchema>\n",
5
+ "import { readFileSync } from 'node:fs'\n\nimport { createRemotePromise, deobfuscate } from '@requence/helpers'\nimport { EventSource } from 'eventsource'\nimport { z } from 'zod'\n\nimport {\n type CreateTaskOptions,\n type Result,\n type Update,\n updateSchema,\n} from './types.ts'\nimport callbackToAsyncIterator from './utils/callbackToAsyncIterator.ts'\n\nexport class TaskError extends Error {\n constructor(\n message: string,\n public readonly taskTemplate: string,\n ) {\n super(message)\n }\n}\n\ntype TaskUpdateHandler = (update: Update) => void\n\nconst eventSchema = z\n .object({ type: z.string(), data: z.string() })\n .transform((event) => ({ type: event.type, ...JSON.parse(event.data) }))\n .pipe(updateSchema)\n\nexport function createTask<\n T extends keyof Requence.TaskTemplate | (string & {}),\n>(params: CreateTaskOptions<T>, onUpdate?: TaskUpdateHandler) {\n const taskUpdateHandlers = new Set<TaskUpdateHandler>()\n\n const accessKey =\n params.accessToken ??\n process.env.REQUENCE_ACCESS_TOKEN ??\n (JSON.parse(readFileSync('package.json', 'utf-8')) as any).requence\n ?.accessToken\n\n if (!accessKey) {\n throw new Error(\n 'No access token found\\nYou can provide the access token as argument to createTask,\\nas environment variable REQUENCE_ACCESS_TOKEN or\\nin your package.json in requence.accessToken',\n )\n }\n\n const parts = deobfuscate(accessKey)\n if (parts.length < 2 || parts[0] !== 'api') {\n throw new Error('Invalid api key')\n }\n const [, token, apiBaseUrl] = parts\n\n const startUrl = `${apiBaseUrl}/task/start/${params.taskTemplate}`\n\n const payloadPromise = createRemotePromise<{\n id: string\n urls: { watch: string }\n }>()\n\n let isMonitoring = false\n const startMonitoring = async () => {\n if (isMonitoring) {\n return\n }\n\n isMonitoring = true\n const payload = await payloadPromise\n\n const eventSource = new EventSource(payload.urls.watch, {\n fetch: (input, init) =>\n fetch(input, {\n ...init,\n headers: {\n Authorization: `Bearer ${token}`,\n },\n }),\n })\n\n const taskEvents: Array<Update['type']> = [\n 'taskStart',\n 'taskError',\n 'taskEnd',\n 'nodeStart',\n 'nodeUpdate',\n 'nodeDefer',\n 'nodeError',\n 'nodeEnd',\n ]\n\n let input: unknown = null\n let meta: unknown = null\n taskEvents.forEach((taskEvent) => {\n eventSource.addEventListener(taskEvent, (event) => {\n const updateResult = eventSchema.safeParse(event)\n\n if (!updateResult.success) {\n eventSource.close()\n resultPromise.reject(\n new TaskError(\n `Invalid ${taskEvent} update received`,\n params.taskTemplate,\n ),\n )\n return\n }\n\n const update = updateResult.data\n\n if (update.type === 'taskEnd' || update.type === 'taskError') {\n eventSource.close()\n }\n\n if (update.type === 'taskStart') {\n input = update.input\n meta = update.meta\n }\n\n if (update.type === 'taskEnd') {\n const getPartialResult = (alias: string) =>\n update.partialResults.find(\n (partialResult) => partialResult.node.alias === alias,\n )\n\n resultPromise.resolve({\n getInput() {\n return input\n },\n getMeta() {\n return meta\n },\n getError(alias) {\n return getPartialResult(alias)?.error ?? null\n },\n getData(alias) {\n if (!alias) {\n return update.result\n }\n\n return getPartialResult(alias)?.data ?? null\n },\n } as Result<T>)\n }\n\n if (update.type === 'taskError') {\n resultPromise.reject(new TaskError(update.error, params.taskTemplate))\n }\n\n taskUpdateHandlers.forEach((handler) => handler(update))\n })\n })\n }\n\n const taskIdPromise = createRemotePromise<string>()\n const resultPromise = createRemotePromise<Result<T>>(startMonitoring)\n\n ;(async () => {\n const response = await fetch(startUrl, {\n method: 'post',\n headers: {\n Accept: 'application/json',\n 'Content-Type': 'application/json',\n Authorization: `Bearer ${token}`,\n },\n body: JSON.stringify({ input: params.input, meta: params.meta }),\n })\n\n if (!response.ok) {\n const error = new TaskError(await response.text(), params.taskTemplate)\n taskIdPromise.reject(error)\n resultPromise.reject(error)\n return\n }\n\n const payload = await response.json()\n taskIdPromise.resolve(payload.id)\n payloadPromise.resolve(payload)\n if (onUpdate) {\n taskUpdateHandlers.add(onUpdate)\n startMonitoring()\n }\n })()\n\n const asyncIterable = callbackToAsyncIterator<Update>({\n subscribe: (push) => {\n taskUpdateHandlers.add(push)\n startMonitoring()\n },\n done: (value) => value.type === 'taskError' || value.type === 'taskEnd',\n })\n\n return Object.assign(resultPromise.promise, asyncIterable, {\n getTaskId() {\n return taskIdPromise\n },\n })\n}\n",
6
+ "import { z } from 'zod'\n\ntype Prettify<T> = {\n [K in keyof T]: T[K]\n} & {}\n\ntype IfUnknown<T, Then, Else> = unknown extends T\n ? T extends unknown\n ? Then\n : Else\n : Else\n\ntype IfNull<T, Then, Else> = T extends null\n ? null extends T\n ? Then\n : Else\n : Else\n\nexport type CreateTaskOptions<T> = {\n taskTemplate: T\n accessToken?: string\n} & IfNull<\n Input<T>,\n { input?: null },\n IfUnknown<Input<T>, { input?: any }, { input: Input<T> }>\n> &\n IfNull<\n Meta<T>,\n { meta?: null },\n IfUnknown<Meta<T>, { meta?: any }, { meta: Meta<T> }>\n >\n\ntype Input<T> = T extends keyof Requence.TaskTemplate\n ? Requence.TaskTemplate[T]['input']\n : unknown\ntype Meta<T> = T extends keyof Requence.TaskTemplate\n ? Requence.TaskTemplate[T]['meta']\n : unknown\ntype Data<T> = T extends keyof Requence.TaskTemplate\n ? Prettify<Requence.TaskTemplate[T]['results']>\n : unknown\ntype NamedData<T, A> = T extends keyof Requence.TaskTemplate\n ? A extends keyof Requence.TaskTemplate[T]['namedResults']\n ? Prettify<Requence.TaskTemplate[T]['namedResults'][A]>\n : unknown\n : unknown\ntype Alias<T> = T extends keyof Requence.TaskTemplate\n ? keyof Requence.TaskTemplate[T]['namedResults']\n : string\n\nexport interface Result<T> {\n getInput(): Input<T>\n getMeta(): Meta<T>\n getData: {\n (): Data<T>\n <A extends Alias<T>>(alias: A): NamedData<T, A>\n }\n getError(alias: Alias<T>): string | null\n}\n\nconst serviceNodeInfoSchema = z.object({\n id: z.string().uuid(),\n type: z.literal('service'),\n alias: z.string().optional(),\n service: z\n .object({\n id: z.string().uuid(),\n name: z.string(),\n version: z.string(),\n })\n .optional(),\n})\n\nconst logicNodeInfoSchema = z.object({\n id: z.string().uuid(),\n type: z.literal('logic'),\n alias: z.string().optional(),\n logic: z\n .object({\n language: z.enum(['typescript', 'javascript', 'python']),\n })\n .optional(),\n})\n\nconst nodeInfoSchema = z.discriminatedUnion('type', [\n serviceNodeInfoSchema,\n logicNodeInfoSchema,\n])\n\nconst taskStartUpdateSchema = z.object({\n type: z.literal('taskStart'),\n timestamp: z.coerce.date(),\n input: z.unknown(),\n meta: z.unknown(),\n})\n\nconst taskErrorUpdateSchema = z.object({\n type: z.literal('taskError'),\n timestamp: z.coerce.date(),\n error: z.string(),\n})\n\nconst taskEndUpdateSchema = z.object({\n type: z.literal('taskEnd'),\n timestamp: z.coerce.date(),\n result: z.record(z.string(), z.unknown()),\n partialResults: z.array(\n z.object({\n node: nodeInfoSchema,\n timestamp: z.coerce.date().nullable(),\n data: z.unknown(),\n error: z.string().optional(),\n }),\n ),\n})\n\nconst nodeStartUpdateSchema = z.object({\n type: z.literal('nodeStart'),\n timestamp: z.coerce.date(),\n node: nodeInfoSchema,\n})\n\nconst nodeUpdateUpdateSchema = z.object({\n type: z.literal('nodeUpdate'),\n timestamp: z.coerce.date(),\n data: z.unknown(),\n})\n\nconst nodeErrorUpdateSchema = z.object({\n type: z.literal('nodeError'),\n timestamp: z.coerce.date(),\n error: z.string(),\n})\n\nconst nodeDeferUpdateSchema = z.object({\n type: z.literal('nodeDefer'),\n timestamp: z.coerce.date(),\n reason: z.string().optional(),\n})\n\nconst nodeEndUpdateSchema = z.object({\n type: z.literal('nodeEnd'),\n timestamp: z.coerce.date(),\n node: nodeInfoSchema,\n})\n\nexport const updateSchema = z.discriminatedUnion('type', [\n taskStartUpdateSchema,\n taskErrorUpdateSchema,\n taskEndUpdateSchema,\n nodeStartUpdateSchema,\n nodeUpdateUpdateSchema,\n nodeErrorUpdateSchema,\n nodeDeferUpdateSchema,\n nodeEndUpdateSchema,\n])\n\nexport type Update = z.infer<typeof updateSchema>\n",
7
7
  "export default function callbackToAsyncIterator<T>(options: {\n subscribe: (push: (value: T) => void) => void | (() => void)\n done: (value: T) => boolean\n}): AsyncIterable<T> {\n const pullQueue: Array<(value: T) => void> = []\n const pushQueue: Array<T> = []\n\n const pushValue = (value: T) => {\n if (pullQueue.length !== 0) {\n const resolver = pullQueue.shift()\n resolver!(value)\n } else {\n pushQueue.push(value)\n }\n }\n\n const pullValue = () =>\n new Promise<T>((resolve) => {\n if (pushQueue.length !== 0) {\n resolve(pushQueue.shift()!)\n } else {\n pullQueue.push(resolve)\n }\n })\n\n return {\n [Symbol.asyncIterator]() {\n let done = false\n const unsubscribe = options.subscribe(pushValue)\n return {\n async next() {\n if (done) {\n return { value: undefined, done: true }\n }\n\n const value = await pullValue()\n done = options.done(value)\n return { value, done: false }\n },\n async return() {\n unsubscribe?.()\n return { value: undefined, done: true }\n },\n }\n },\n }\n}\n"
8
8
  ],
9
- "mappings": "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",
10
- "debugId": "A9D3BA4F308FA87164756E2164756E21",
9
+ "mappings": "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",
10
+ "debugId": "1F3F1932800384D964756E2164756E21",
11
11
  "names": []
12
12
  }
@@ -71,6 +71,26 @@ export declare function createTask<T extends keyof Requence.TaskTemplate | (stri
71
71
  type: "nodeDefer";
72
72
  timestamp: Date;
73
73
  reason?: string | undefined;
74
+ } | {
75
+ type: "nodeEnd";
76
+ timestamp: Date;
77
+ node: {
78
+ type: "service";
79
+ id: string;
80
+ service?: {
81
+ id: string;
82
+ name: string;
83
+ version: string;
84
+ } | undefined;
85
+ alias?: string | undefined;
86
+ } | {
87
+ type: "logic";
88
+ id: string;
89
+ alias?: string | undefined;
90
+ logic?: {
91
+ language: "typescript" | "javascript" | "python";
92
+ } | undefined;
93
+ };
74
94
  }> & {
75
95
  getTaskId(): Promise<string> & {
76
96
  resolve: (value: string | PromiseLike<string>) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,MAAM,EACX,KAAK,MAAM,EAEZ,MAAM,YAAY,CAAA;AAGnB,qBAAa,SAAU,SAAQ,KAAK;aAGhB,YAAY,EAAE,MAAM;gBADpC,OAAO,EAAE,MAAM,EACC,YAAY,EAAE,MAAM;CAIvC;AAED,KAAK,iBAAiB,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;AAOjD,wBAAgB,UAAU,CACxB,CAAC,SAAS,MAAM,QAAQ,CAAC,YAAY,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,EACrD,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkK3D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,MAAM,EACX,KAAK,MAAM,EAEZ,MAAM,YAAY,CAAA;AAGnB,qBAAa,SAAU,SAAQ,KAAK;aAGhB,YAAY,EAAE,MAAM;gBADpC,OAAO,EAAE,MAAM,EACC,YAAY,EAAE,MAAM;CAIvC;AAED,KAAK,iBAAiB,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;AAOjD,wBAAgB,UAAU,CACxB,CAAC,SAAS,MAAM,QAAQ,CAAC,YAAY,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,EACrD,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoK3D"}
@@ -365,6 +365,110 @@ export declare const updateSchema: z.ZodDiscriminatedUnion<"type", [z.ZodObject<
365
365
  type: "nodeDefer";
366
366
  timestamp: Date;
367
367
  reason?: string | undefined;
368
+ }>, z.ZodObject<{
369
+ type: z.ZodLiteral<"nodeEnd">;
370
+ timestamp: z.ZodDate;
371
+ node: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
372
+ id: z.ZodString;
373
+ type: z.ZodLiteral<"service">;
374
+ alias: z.ZodOptional<z.ZodString>;
375
+ service: z.ZodOptional<z.ZodObject<{
376
+ id: z.ZodString;
377
+ name: z.ZodString;
378
+ version: z.ZodString;
379
+ }, "strip", z.ZodTypeAny, {
380
+ id: string;
381
+ name: string;
382
+ version: string;
383
+ }, {
384
+ id: string;
385
+ name: string;
386
+ version: string;
387
+ }>>;
388
+ }, "strip", z.ZodTypeAny, {
389
+ type: "service";
390
+ id: string;
391
+ service?: {
392
+ id: string;
393
+ name: string;
394
+ version: string;
395
+ } | undefined;
396
+ alias?: string | undefined;
397
+ }, {
398
+ type: "service";
399
+ id: string;
400
+ service?: {
401
+ id: string;
402
+ name: string;
403
+ version: string;
404
+ } | undefined;
405
+ alias?: string | undefined;
406
+ }>, z.ZodObject<{
407
+ id: z.ZodString;
408
+ type: z.ZodLiteral<"logic">;
409
+ alias: z.ZodOptional<z.ZodString>;
410
+ logic: z.ZodOptional<z.ZodObject<{
411
+ language: z.ZodEnum<["typescript", "javascript", "python"]>;
412
+ }, "strip", z.ZodTypeAny, {
413
+ language: "typescript" | "javascript" | "python";
414
+ }, {
415
+ language: "typescript" | "javascript" | "python";
416
+ }>>;
417
+ }, "strip", z.ZodTypeAny, {
418
+ type: "logic";
419
+ id: string;
420
+ alias?: string | undefined;
421
+ logic?: {
422
+ language: "typescript" | "javascript" | "python";
423
+ } | undefined;
424
+ }, {
425
+ type: "logic";
426
+ id: string;
427
+ alias?: string | undefined;
428
+ logic?: {
429
+ language: "typescript" | "javascript" | "python";
430
+ } | undefined;
431
+ }>]>;
432
+ }, "strip", z.ZodTypeAny, {
433
+ type: "nodeEnd";
434
+ timestamp: Date;
435
+ node: {
436
+ type: "service";
437
+ id: string;
438
+ service?: {
439
+ id: string;
440
+ name: string;
441
+ version: string;
442
+ } | undefined;
443
+ alias?: string | undefined;
444
+ } | {
445
+ type: "logic";
446
+ id: string;
447
+ alias?: string | undefined;
448
+ logic?: {
449
+ language: "typescript" | "javascript" | "python";
450
+ } | undefined;
451
+ };
452
+ }, {
453
+ type: "nodeEnd";
454
+ timestamp: Date;
455
+ node: {
456
+ type: "service";
457
+ id: string;
458
+ service?: {
459
+ id: string;
460
+ name: string;
461
+ version: string;
462
+ } | undefined;
463
+ alias?: string | undefined;
464
+ } | {
465
+ type: "logic";
466
+ id: string;
467
+ alias?: string | undefined;
468
+ logic?: {
469
+ language: "typescript" | "javascript" | "python";
470
+ } | undefined;
471
+ };
368
472
  }>]>;
369
473
  export type Update = z.infer<typeof updateSchema>;
370
474
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@requence/task",
3
3
  "type": "module",
4
- "version": "1.0.0-alpha.1",
4
+ "version": "1.0.0-alpha.2",
5
5
  "bin": {
6
6
  "requence-task": "build/cli.js"
7
7
  },
@@ -19,6 +19,7 @@
19
19
  "build": "ADD_ENTRYPOINT=src/cli.ts bun -e \"import('@requence/utils/build-package.mts')\" && bun build-declaration "
20
20
  },
21
21
  "dependencies": {
22
+ "chalk": "^5.3.0",
22
23
  "eventsource": "^3.0.1",
23
24
  "zod": "^3.24.1"
24
25
  },