@trigger.dev/sdk 3.0.0-beta.7 → 3.0.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.
Files changed (279) hide show
  1. package/dist/commonjs/apiClient.d.ts +737 -0
  2. package/dist/commonjs/apiClient.js +692 -0
  3. package/dist/commonjs/apiClient.js.map +1 -0
  4. package/dist/commonjs/concurrencyLimit.d.ts +10 -0
  5. package/dist/commonjs/concurrencyLimit.js +17 -0
  6. package/dist/commonjs/concurrencyLimit.js.map +1 -0
  7. package/dist/commonjs/errors.d.ts +66 -0
  8. package/dist/commonjs/errors.js +109 -0
  9. package/dist/commonjs/errors.js.map +1 -0
  10. package/dist/commonjs/httpEndpoint.d.ts +87 -0
  11. package/dist/commonjs/httpEndpoint.js +130 -0
  12. package/dist/commonjs/httpEndpoint.js.map +1 -0
  13. package/dist/commonjs/index.d.ts +23 -0
  14. package/dist/commonjs/index.js +55 -0
  15. package/dist/commonjs/index.js.map +1 -0
  16. package/dist/commonjs/integrations.d.ts +11 -0
  17. package/dist/commonjs/integrations.js +3 -0
  18. package/dist/commonjs/integrations.js.map +1 -0
  19. package/dist/commonjs/io.d.ts +453 -0
  20. package/dist/commonjs/io.js +1165 -0
  21. package/dist/commonjs/io.js.map +1 -0
  22. package/dist/commonjs/ioWithIntegrations.d.ts +4 -0
  23. package/dist/commonjs/ioWithIntegrations.js +32 -0
  24. package/dist/commonjs/ioWithIntegrations.js.map +1 -0
  25. package/dist/commonjs/job.d.ts +96 -0
  26. package/dist/commonjs/job.js +210 -0
  27. package/dist/commonjs/job.js.map +1 -0
  28. package/dist/commonjs/package.json +3 -0
  29. package/dist/commonjs/retry.d.ts +20 -0
  30. package/dist/commonjs/retry.js +22 -0
  31. package/dist/commonjs/retry.js.map +1 -0
  32. package/dist/commonjs/runLocalStorage.d.ts +8 -0
  33. package/dist/commonjs/runLocalStorage.js +6 -0
  34. package/dist/commonjs/runLocalStorage.js.map +1 -0
  35. package/dist/commonjs/security.d.ts +18 -0
  36. package/dist/commonjs/security.js +41 -0
  37. package/dist/commonjs/security.js.map +1 -0
  38. package/dist/commonjs/status.d.ts +19 -0
  39. package/dist/commonjs/status.js +38 -0
  40. package/dist/commonjs/status.js.map +1 -0
  41. package/dist/commonjs/store/keyValueStore.d.ts +17 -0
  42. package/dist/commonjs/store/keyValueStore.js +138 -0
  43. package/dist/commonjs/store/keyValueStore.js.map +1 -0
  44. package/dist/commonjs/store/keyValueStoreClient.d.ts +19 -0
  45. package/dist/commonjs/store/keyValueStoreClient.js +65 -0
  46. package/dist/commonjs/store/keyValueStoreClient.js.map +1 -0
  47. package/dist/commonjs/triggerClient.d.ts +300 -0
  48. package/dist/commonjs/triggerClient.js +1366 -0
  49. package/dist/commonjs/triggerClient.js.map +1 -0
  50. package/dist/commonjs/triggers/dynamic.d.ts +56 -0
  51. package/dist/commonjs/triggers/dynamic.js +97 -0
  52. package/dist/commonjs/triggers/dynamic.js.map +1 -0
  53. package/dist/commonjs/triggers/eventTrigger.d.ts +58 -0
  54. package/dist/commonjs/triggers/eventTrigger.js +69 -0
  55. package/dist/commonjs/triggers/eventTrigger.js.map +1 -0
  56. package/dist/commonjs/triggers/externalSource.d.ts +148 -0
  57. package/dist/commonjs/triggers/externalSource.js +106 -0
  58. package/dist/commonjs/triggers/externalSource.js.map +1 -0
  59. package/dist/commonjs/triggers/invokeTrigger.d.ts +39 -0
  60. package/dist/commonjs/triggers/invokeTrigger.js +58 -0
  61. package/dist/commonjs/triggers/invokeTrigger.js.map +1 -0
  62. package/dist/commonjs/triggers/notifications.d.ts +111 -0
  63. package/dist/commonjs/triggers/notifications.js +101 -0
  64. package/dist/commonjs/triggers/notifications.js.map +1 -0
  65. package/dist/commonjs/triggers/scheduled.d.ts +145 -0
  66. package/dist/commonjs/triggers/scheduled.js +208 -0
  67. package/dist/commonjs/triggers/scheduled.js.map +1 -0
  68. package/dist/commonjs/triggers/webhook.d.ts +143 -0
  69. package/dist/commonjs/triggers/webhook.js +133 -0
  70. package/dist/commonjs/triggers/webhook.js.map +1 -0
  71. package/dist/commonjs/typed-emitter.d.ts +37 -0
  72. package/dist/commonjs/typed-emitter.js +3 -0
  73. package/dist/commonjs/typed-emitter.js.map +1 -0
  74. package/dist/commonjs/types.d.ts +204 -0
  75. package/dist/commonjs/types.js +23 -0
  76. package/dist/commonjs/types.js.map +1 -0
  77. package/dist/commonjs/utils/formatSchemaErrors.d.ts +3 -0
  78. package/dist/commonjs/utils/formatSchemaErrors.js +10 -0
  79. package/dist/commonjs/utils/formatSchemaErrors.js.map +1 -0
  80. package/dist/commonjs/utils/typedAsyncLocalStorage.d.ts +6 -0
  81. package/dist/commonjs/utils/typedAsyncLocalStorage.js +18 -0
  82. package/dist/commonjs/utils/typedAsyncLocalStorage.js.map +1 -0
  83. package/dist/commonjs/utils.d.ts +1 -0
  84. package/dist/commonjs/utils.js +11 -0
  85. package/dist/commonjs/utils.js.map +1 -0
  86. package/dist/commonjs/v3/cache.d.ts +28 -0
  87. package/dist/commonjs/v3/cache.js +63 -0
  88. package/dist/commonjs/v3/cache.js.map +1 -0
  89. package/dist/commonjs/v3/config.d.ts +4 -0
  90. package/dist/commonjs/v3/config.js +7 -0
  91. package/dist/commonjs/v3/config.js.map +1 -0
  92. package/dist/commonjs/v3/envvars.d.ts +14 -0
  93. package/dist/commonjs/v3/envvars.js +246 -0
  94. package/dist/commonjs/v3/envvars.js.map +1 -0
  95. package/dist/commonjs/v3/idempotencyKeys.d.ts +49 -0
  96. package/dist/commonjs/v3/idempotencyKeys.js +76 -0
  97. package/dist/commonjs/v3/idempotencyKeys.js.map +1 -0
  98. package/dist/commonjs/v3/index.d.ts +36 -0
  99. package/dist/commonjs/v3/index.js +79 -0
  100. package/dist/commonjs/v3/index.js.map +1 -0
  101. package/dist/commonjs/v3/retry.d.ts +15 -0
  102. package/dist/commonjs/v3/retry.js +411 -0
  103. package/dist/commonjs/v3/retry.js.map +1 -0
  104. package/dist/commonjs/v3/runs.d.ts +345 -0
  105. package/dist/commonjs/v3/runs.js +195 -0
  106. package/dist/commonjs/v3/runs.js.map +1 -0
  107. package/dist/commonjs/v3/schedules/api.d.ts +1 -0
  108. package/dist/commonjs/v3/schedules/api.js +3 -0
  109. package/dist/commonjs/v3/schedules/api.js.map +1 -0
  110. package/dist/commonjs/v3/schedules/index.d.ts +87 -0
  111. package/dist/commonjs/v3/schedules/index.js +250 -0
  112. package/dist/commonjs/v3/schedules/index.js.map +1 -0
  113. package/dist/commonjs/v3/shared.d.ts +443 -0
  114. package/dist/commonjs/v3/shared.js +547 -0
  115. package/dist/commonjs/v3/shared.js.map +1 -0
  116. package/dist/commonjs/v3/tags.d.ts +6 -0
  117. package/dist/commonjs/v3/tags.js +50 -0
  118. package/dist/commonjs/v3/tags.js.map +1 -0
  119. package/dist/commonjs/v3/tasks.d.ts +31 -0
  120. package/dist/commonjs/v3/tasks.js +35 -0
  121. package/dist/commonjs/v3/tasks.js.map +1 -0
  122. package/dist/commonjs/v3/tracer.d.ts +2 -0
  123. package/dist/commonjs/v3/tracer.js +7 -0
  124. package/dist/commonjs/v3/tracer.js.map +1 -0
  125. package/dist/commonjs/v3/usage.d.ts +77 -0
  126. package/dist/commonjs/v3/usage.js +115 -0
  127. package/dist/commonjs/v3/usage.js.map +1 -0
  128. package/dist/commonjs/v3/wait.d.ts +22 -0
  129. package/dist/commonjs/v3/wait.js +99 -0
  130. package/dist/commonjs/v3/wait.js.map +1 -0
  131. package/dist/commonjs/version.d.ts +1 -0
  132. package/dist/commonjs/version.js +5 -0
  133. package/dist/commonjs/version.js.map +1 -0
  134. package/dist/esm/apiClient.d.ts +737 -0
  135. package/dist/esm/apiClient.js +687 -0
  136. package/dist/esm/apiClient.js.map +1 -0
  137. package/dist/esm/concurrencyLimit.d.ts +10 -0
  138. package/dist/esm/concurrencyLimit.js +13 -0
  139. package/dist/esm/concurrencyLimit.js.map +1 -0
  140. package/dist/esm/errors.d.ts +66 -0
  141. package/dist/esm/errors.js +95 -0
  142. package/dist/esm/errors.js.map +1 -0
  143. package/dist/esm/httpEndpoint.d.ts +87 -0
  144. package/dist/esm/httpEndpoint.js +125 -0
  145. package/dist/esm/httpEndpoint.js.map +1 -0
  146. package/dist/esm/index.d.ts +23 -0
  147. package/dist/esm/index.js +35 -0
  148. package/dist/esm/index.js.map +1 -0
  149. package/dist/esm/integrations.d.ts +11 -0
  150. package/dist/esm/integrations.js +2 -0
  151. package/dist/esm/integrations.js.map +1 -0
  152. package/dist/esm/io.d.ts +453 -0
  153. package/dist/esm/io.js +1159 -0
  154. package/dist/esm/io.js.map +1 -0
  155. package/dist/esm/ioWithIntegrations.d.ts +4 -0
  156. package/dist/esm/ioWithIntegrations.js +29 -0
  157. package/dist/esm/ioWithIntegrations.js.map +1 -0
  158. package/dist/esm/job.d.ts +96 -0
  159. package/dist/esm/job.js +206 -0
  160. package/dist/esm/job.js.map +1 -0
  161. package/dist/esm/package.json +3 -0
  162. package/dist/esm/retry.d.ts +20 -0
  163. package/dist/esm/retry.js +19 -0
  164. package/dist/esm/retry.js.map +1 -0
  165. package/dist/esm/runLocalStorage.d.ts +8 -0
  166. package/dist/esm/runLocalStorage.js +3 -0
  167. package/dist/esm/runLocalStorage.js.map +1 -0
  168. package/dist/esm/security.d.ts +18 -0
  169. package/dist/esm/security.js +34 -0
  170. package/dist/esm/security.js.map +1 -0
  171. package/dist/esm/status.d.ts +19 -0
  172. package/dist/esm/status.js +34 -0
  173. package/dist/esm/status.js.map +1 -0
  174. package/dist/esm/store/keyValueStore.d.ts +17 -0
  175. package/dist/esm/store/keyValueStore.js +134 -0
  176. package/dist/esm/store/keyValueStore.js.map +1 -0
  177. package/dist/esm/store/keyValueStoreClient.d.ts +19 -0
  178. package/dist/esm/store/keyValueStoreClient.js +61 -0
  179. package/dist/esm/store/keyValueStoreClient.js.map +1 -0
  180. package/dist/esm/triggerClient.d.ts +300 -0
  181. package/dist/esm/triggerClient.js +1359 -0
  182. package/dist/esm/triggerClient.js.map +1 -0
  183. package/dist/esm/triggers/dynamic.d.ts +56 -0
  184. package/dist/esm/triggers/dynamic.js +93 -0
  185. package/dist/esm/triggers/dynamic.js.map +1 -0
  186. package/dist/esm/triggers/eventTrigger.d.ts +58 -0
  187. package/dist/esm/triggers/eventTrigger.js +64 -0
  188. package/dist/esm/triggers/eventTrigger.js.map +1 -0
  189. package/dist/esm/triggers/externalSource.d.ts +148 -0
  190. package/dist/esm/triggers/externalSource.js +100 -0
  191. package/dist/esm/triggers/externalSource.js.map +1 -0
  192. package/dist/esm/triggers/invokeTrigger.d.ts +39 -0
  193. package/dist/esm/triggers/invokeTrigger.js +53 -0
  194. package/dist/esm/triggers/invokeTrigger.js.map +1 -0
  195. package/dist/esm/triggers/notifications.d.ts +111 -0
  196. package/dist/esm/triggers/notifications.js +94 -0
  197. package/dist/esm/triggers/notifications.js.map +1 -0
  198. package/dist/esm/triggers/scheduled.d.ts +145 -0
  199. package/dist/esm/triggers/scheduled.js +197 -0
  200. package/dist/esm/triggers/scheduled.js.map +1 -0
  201. package/dist/esm/triggers/webhook.d.ts +143 -0
  202. package/dist/esm/triggers/webhook.js +128 -0
  203. package/dist/esm/triggers/webhook.js.map +1 -0
  204. package/dist/esm/typed-emitter.d.ts +37 -0
  205. package/dist/esm/typed-emitter.js +2 -0
  206. package/dist/esm/typed-emitter.js.map +1 -0
  207. package/dist/esm/types.d.ts +204 -0
  208. package/dist/esm/types.js +19 -0
  209. package/dist/esm/types.js.map +1 -0
  210. package/dist/esm/utils/formatSchemaErrors.d.ts +3 -0
  211. package/dist/esm/utils/formatSchemaErrors.js +7 -0
  212. package/dist/esm/utils/formatSchemaErrors.js.map +1 -0
  213. package/dist/esm/utils/typedAsyncLocalStorage.d.ts +6 -0
  214. package/dist/esm/utils/typedAsyncLocalStorage.js +14 -0
  215. package/dist/esm/utils/typedAsyncLocalStorage.js.map +1 -0
  216. package/dist/esm/utils.d.ts +1 -0
  217. package/dist/esm/utils.js +8 -0
  218. package/dist/esm/utils.js.map +1 -0
  219. package/dist/esm/v3/cache.d.ts +28 -0
  220. package/dist/esm/v3/cache.js +58 -0
  221. package/dist/esm/v3/cache.js.map +1 -0
  222. package/dist/esm/v3/config.d.ts +4 -0
  223. package/dist/esm/v3/config.js +4 -0
  224. package/dist/esm/v3/config.js.map +1 -0
  225. package/dist/esm/v3/envvars.d.ts +14 -0
  226. package/dist/esm/v3/envvars.js +238 -0
  227. package/dist/esm/v3/envvars.js.map +1 -0
  228. package/dist/esm/v3/idempotencyKeys.d.ts +49 -0
  229. package/dist/esm/v3/idempotencyKeys.js +72 -0
  230. package/dist/esm/v3/idempotencyKeys.js.map +1 -0
  231. package/dist/esm/v3/index.d.ts +36 -0
  232. package/dist/esm/v3/index.js +35 -0
  233. package/dist/esm/v3/index.js.map +1 -0
  234. package/dist/esm/v3/retry.d.ts +15 -0
  235. package/dist/esm/v3/retry.js +408 -0
  236. package/dist/esm/v3/retry.js.map +1 -0
  237. package/dist/esm/v3/runs.d.ts +345 -0
  238. package/dist/esm/v3/runs.js +192 -0
  239. package/dist/esm/v3/runs.js.map +1 -0
  240. package/dist/esm/v3/schedules/api.d.ts +1 -0
  241. package/dist/esm/v3/schedules/api.js +2 -0
  242. package/dist/esm/v3/schedules/api.js.map +1 -0
  243. package/dist/esm/v3/schedules/index.d.ts +87 -0
  244. package/dist/esm/v3/schedules/index.js +239 -0
  245. package/dist/esm/v3/schedules/index.js.map +1 -0
  246. package/dist/esm/v3/shared.d.ts +443 -0
  247. package/dist/esm/v3/shared.js +534 -0
  248. package/dist/esm/v3/shared.js.map +1 -0
  249. package/dist/esm/v3/tags.d.ts +6 -0
  250. package/dist/esm/v3/tags.js +47 -0
  251. package/dist/esm/v3/tags.js.map +1 -0
  252. package/dist/esm/v3/tasks.d.ts +31 -0
  253. package/dist/esm/v3/tasks.js +31 -0
  254. package/dist/esm/v3/tasks.js.map +1 -0
  255. package/dist/esm/v3/tracer.d.ts +2 -0
  256. package/dist/esm/v3/tracer.js +4 -0
  257. package/dist/esm/v3/tracer.js.map +1 -0
  258. package/dist/esm/v3/usage.d.ts +77 -0
  259. package/dist/esm/v3/usage.js +112 -0
  260. package/dist/esm/v3/usage.js.map +1 -0
  261. package/dist/esm/v3/wait.d.ts +22 -0
  262. package/dist/esm/v3/wait.js +96 -0
  263. package/dist/esm/v3/wait.js.map +1 -0
  264. package/dist/esm/version.d.ts +1 -0
  265. package/dist/esm/version.js +2 -0
  266. package/dist/esm/version.js.map +1 -0
  267. package/package.json +62 -47
  268. package/dist/index.d.mts +0 -2704
  269. package/dist/index.d.ts +0 -2704
  270. package/dist/index.js +0 -4886
  271. package/dist/index.js.map +0 -1
  272. package/dist/index.mjs +0 -4847
  273. package/dist/index.mjs.map +0 -1
  274. package/dist/v3/index.d.mts +0 -261
  275. package/dist/v3/index.d.ts +0 -261
  276. package/dist/v3/index.js +0 -921
  277. package/dist/v3/index.js.map +0 -1
  278. package/dist/v3/index.mjs +0 -911
  279. package/dist/v3/index.mjs.map +0 -1
@@ -0,0 +1,547 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TaskRunPromise = exports.SubtaskUnwrapError = void 0;
4
+ exports.queue = queue;
5
+ exports.createTask = createTask;
6
+ exports.trigger = trigger;
7
+ exports.triggerAndWait = triggerAndWait;
8
+ exports.batchTriggerAndWait = batchTriggerAndWait;
9
+ exports.triggerAndPoll = triggerAndPoll;
10
+ exports.batchTrigger = batchTrigger;
11
+ exports.apiClientMissingError = apiClientMissingError;
12
+ const api_1 = require("@opentelemetry/api");
13
+ const semantic_conventions_1 = require("@opentelemetry/semantic-conventions");
14
+ const v3_1 = require("@trigger.dev/core/v3");
15
+ const idempotencyKeys_js_1 = require("./idempotencyKeys.js");
16
+ const runs_js_1 = require("./runs.js");
17
+ const tracer_js_1 = require("./tracer.js");
18
+ function queue(options) {
19
+ return options;
20
+ }
21
+ class SubtaskUnwrapError extends Error {
22
+ taskId;
23
+ runId;
24
+ cause;
25
+ constructor(taskId, runId, subtaskError) {
26
+ if (subtaskError instanceof Error) {
27
+ super(`Error in ${taskId}: ${subtaskError.message}`, { cause: subtaskError });
28
+ this.name = "SubtaskUnwrapError";
29
+ }
30
+ else {
31
+ super(`Error in ${taskId}`, { cause: subtaskError });
32
+ this.name = "SubtaskUnwrapError";
33
+ }
34
+ this.taskId = taskId;
35
+ this.runId = runId;
36
+ }
37
+ }
38
+ exports.SubtaskUnwrapError = SubtaskUnwrapError;
39
+ class TaskRunPromise extends Promise {
40
+ taskId;
41
+ constructor(executor, taskId) {
42
+ super(executor);
43
+ this.taskId = taskId;
44
+ }
45
+ unwrap() {
46
+ return this.then((result) => {
47
+ if (result.ok) {
48
+ return result.output;
49
+ }
50
+ else {
51
+ throw new SubtaskUnwrapError(this.taskId, result.id, result.error);
52
+ }
53
+ });
54
+ }
55
+ }
56
+ exports.TaskRunPromise = TaskRunPromise;
57
+ function createTask(params) {
58
+ const customQueue = params.queue
59
+ ? queue({
60
+ name: params.queue?.name ?? `task/${params.id}`,
61
+ ...params.queue,
62
+ })
63
+ : undefined;
64
+ const task = {
65
+ id: params.id,
66
+ trigger: async (payload, options) => {
67
+ const taskMetadata = v3_1.taskCatalog.getTaskManifest(params.id);
68
+ return await trigger_internal(taskMetadata && taskMetadata.exportName
69
+ ? `${taskMetadata.exportName}.trigger()`
70
+ : `trigger()`, params.id, payload, {
71
+ queue: customQueue,
72
+ ...options,
73
+ });
74
+ },
75
+ batchTrigger: async (items) => {
76
+ const taskMetadata = v3_1.taskCatalog.getTaskManifest(params.id);
77
+ return await batchTrigger_internal(taskMetadata && taskMetadata.exportName
78
+ ? `${taskMetadata.exportName}.batchTrigger()`
79
+ : `batchTrigger()`, params.id, items, undefined, customQueue);
80
+ },
81
+ triggerAndWait: (payload, options) => {
82
+ const taskMetadata = v3_1.taskCatalog.getTaskManifest(params.id);
83
+ return new TaskRunPromise((resolve, reject) => {
84
+ triggerAndWait_internal(taskMetadata && taskMetadata.exportName
85
+ ? `${taskMetadata.exportName}.triggerAndWait()`
86
+ : `triggerAndWait()`, params.id, payload, {
87
+ queue: customQueue,
88
+ ...options,
89
+ })
90
+ .then((result) => {
91
+ resolve(result);
92
+ })
93
+ .catch((error) => {
94
+ reject(error);
95
+ });
96
+ }, params.id);
97
+ },
98
+ batchTriggerAndWait: async (items) => {
99
+ const taskMetadata = v3_1.taskCatalog.getTaskManifest(params.id);
100
+ return await batchTriggerAndWait_internal(taskMetadata && taskMetadata.exportName
101
+ ? `${taskMetadata.exportName}.batchTriggerAndWait()`
102
+ : `batchTriggerAndWait()`, params.id, items, undefined, customQueue);
103
+ },
104
+ };
105
+ v3_1.taskCatalog.registerTaskMetadata({
106
+ id: params.id,
107
+ queue: params.queue,
108
+ retry: params.retry ? { ...v3_1.defaultRetryOptions, ...params.retry } : undefined,
109
+ machine: params.machine,
110
+ fns: {
111
+ run: params.run,
112
+ init: params.init,
113
+ cleanup: params.cleanup,
114
+ middleware: params.middleware,
115
+ handleError: params.handleError,
116
+ onSuccess: params.onSuccess,
117
+ onFailure: params.onFailure,
118
+ onStart: params.onStart,
119
+ },
120
+ });
121
+ // @ts-expect-error
122
+ task[Symbol.for("trigger.dev/task")] = true;
123
+ return task;
124
+ }
125
+ /**
126
+ * Trigger a task by its identifier with the given payload. Returns a typesafe `RunHandle`.
127
+ *
128
+ * @example
129
+ *
130
+ * ```ts
131
+ * import { tasks, runs } from "@trigger.dev/sdk/v3";
132
+ * import type { myTask } from "./myTasks"; // Import just the type of the task
133
+ *
134
+ * const handle = await tasks.trigger<typeof myTask>("my-task", { foo: "bar" }); // The id and payload are fully typesafe
135
+ * const run = await runs.retrieve(handle);
136
+ * console.log(run.output) // The output is also fully typed
137
+ * ```
138
+ *
139
+ * @returns {RunHandle} An object with the `id` of the run. Can be used to retrieve the completed run output in a typesafe manner.
140
+ */
141
+ async function trigger(id, payload, options, requestOptions) {
142
+ return await trigger_internal("tasks.trigger()", id, payload, options, requestOptions);
143
+ }
144
+ /**
145
+ * Trigger a task with the given payload, and wait for the result. Returns the result of the task run
146
+ * @param id - The id of the task to trigger
147
+ * @param payload
148
+ * @param options - Options for the task run
149
+ * @returns TaskRunResult
150
+ * @example
151
+ * ```ts
152
+ * import { tasks } from "@trigger.dev/sdk/v3";
153
+ * const result = await tasks.triggerAndWait("my-task", { foo: "bar" });
154
+ *
155
+ * if (result.ok) {
156
+ * console.log(result.output);
157
+ * } else {
158
+ * console.error(result.error);
159
+ * }
160
+ * ```
161
+ */
162
+ function triggerAndWait(id, payload, options, requestOptions) {
163
+ return new TaskRunPromise((resolve, reject) => {
164
+ triggerAndWait_internal("tasks.triggerAndWait()", id, payload, options, requestOptions)
165
+ .then((result) => {
166
+ resolve(result);
167
+ })
168
+ .catch((error) => {
169
+ reject(error);
170
+ });
171
+ }, id);
172
+ }
173
+ /**
174
+ * Batch trigger multiple task runs with the given payloads, and wait for the results. Returns the results of the task runs.
175
+ * @param id - The id of the task to trigger
176
+ * @param items
177
+ * @returns BatchResult
178
+ * @example
179
+ *
180
+ * ```ts
181
+ * import { tasks } from "@trigger.dev/sdk/v3";
182
+ *
183
+ * const result = await tasks.batchTriggerAndWait("my-task", [
184
+ * { payload: { foo: "bar" } },
185
+ * { payload: { foo: "baz" } },
186
+ * ]);
187
+ *
188
+ * for (const run of result.runs) {
189
+ * if (run.ok) {
190
+ * console.log(run.output);
191
+ * } else {
192
+ * console.error(run.error);
193
+ * }
194
+ * }
195
+ * ```
196
+ */
197
+ async function batchTriggerAndWait(id, items, requestOptions) {
198
+ return await batchTriggerAndWait_internal("tasks.batchTriggerAndWait()", id, items, requestOptions);
199
+ }
200
+ /**
201
+ * Trigger a task by its identifier with the given payload and poll until the run is completed.
202
+ *
203
+ * @example
204
+ *
205
+ * ```ts
206
+ * import { tasks, runs } from "@trigger.dev/sdk/v3";
207
+ * import type { myTask } from "./myTasks"; // Import just the type of the task
208
+ *
209
+ * const run = await tasks.triggerAndPoll<typeof myTask>("my-task", { foo: "bar" }); // The id and payload are fully typesafe
210
+ * console.log(run.output) // The output is also fully typed
211
+ * ```
212
+ *
213
+ * @returns {Run} The completed run, either successful or failed.
214
+ */
215
+ async function triggerAndPoll(id, payload, options, requestOptions) {
216
+ const handle = await trigger(id, payload, options, requestOptions);
217
+ return runs_js_1.runs.poll(handle, options, requestOptions);
218
+ }
219
+ async function batchTrigger(id, items, requestOptions) {
220
+ return await batchTrigger_internal("tasks.batchTrigger()", id, items, requestOptions);
221
+ }
222
+ async function trigger_internal(name, id, payload, options, requestOptions) {
223
+ const apiClient = v3_1.apiClientManager.client;
224
+ if (!apiClient) {
225
+ throw apiClientMissingError();
226
+ }
227
+ const payloadPacket = await (0, v3_1.stringifyIO)(payload);
228
+ const handle = await apiClient.triggerTask(id, {
229
+ payload: payloadPacket.data,
230
+ options: {
231
+ queue: options?.queue,
232
+ concurrencyKey: options?.concurrencyKey,
233
+ test: v3_1.taskContext.ctx?.run.isTest,
234
+ payloadType: payloadPacket.dataType,
235
+ idempotencyKey: await makeKey(options?.idempotencyKey),
236
+ delay: options?.delay,
237
+ ttl: options?.ttl,
238
+ tags: options?.tags,
239
+ maxAttempts: options?.maxAttempts,
240
+ },
241
+ }, {
242
+ spanParentAsLink: true,
243
+ }, {
244
+ name,
245
+ tracer: tracer_js_1.tracer,
246
+ icon: "trigger",
247
+ attributes: {
248
+ [semantic_conventions_1.SEMATTRS_MESSAGING_OPERATION]: "publish",
249
+ ["messaging.client_id"]: v3_1.taskContext.worker?.id,
250
+ [semantic_conventions_1.SEMATTRS_MESSAGING_SYSTEM]: "trigger.dev",
251
+ ...(0, v3_1.accessoryAttributes)({
252
+ items: [
253
+ {
254
+ text: id,
255
+ variant: "normal",
256
+ },
257
+ ],
258
+ style: "codepath",
259
+ }),
260
+ },
261
+ onResponseBody: (body, span) => {
262
+ body &&
263
+ typeof body === "object" &&
264
+ !Array.isArray(body) &&
265
+ "id" in body &&
266
+ typeof body.id === "string" &&
267
+ span.setAttribute("messaging.message.id", body.id);
268
+ },
269
+ ...requestOptions,
270
+ });
271
+ return handle;
272
+ }
273
+ async function batchTrigger_internal(name, id, items, requestOptions, queue) {
274
+ const apiClient = v3_1.apiClientManager.client;
275
+ if (!apiClient) {
276
+ throw apiClientMissingError();
277
+ }
278
+ const response = await apiClient.batchTriggerTask(id, {
279
+ items: await Promise.all(items.map(async (item) => {
280
+ const payloadPacket = await (0, v3_1.stringifyIO)(item.payload);
281
+ return {
282
+ payload: payloadPacket.data,
283
+ options: {
284
+ queue: item.options?.queue ?? queue,
285
+ concurrencyKey: item.options?.concurrencyKey,
286
+ test: v3_1.taskContext.ctx?.run.isTest,
287
+ payloadType: payloadPacket.dataType,
288
+ idempotencyKey: await makeKey(item.options?.idempotencyKey),
289
+ delay: item.options?.delay,
290
+ ttl: item.options?.ttl,
291
+ tags: item.options?.tags,
292
+ maxAttempts: item.options?.maxAttempts,
293
+ },
294
+ };
295
+ })),
296
+ }, { spanParentAsLink: true }, {
297
+ name,
298
+ tracer: tracer_js_1.tracer,
299
+ icon: "trigger",
300
+ attributes: {
301
+ [semantic_conventions_1.SEMATTRS_MESSAGING_OPERATION]: "publish",
302
+ ["messaging.client_id"]: v3_1.taskContext.worker?.id,
303
+ [semantic_conventions_1.SEMATTRS_MESSAGING_SYSTEM]: "trigger.dev",
304
+ ...(0, v3_1.accessoryAttributes)({
305
+ items: [
306
+ {
307
+ text: id,
308
+ variant: "normal",
309
+ },
310
+ ],
311
+ style: "codepath",
312
+ }),
313
+ },
314
+ ...requestOptions,
315
+ });
316
+ const handle = {
317
+ batchId: response.batchId,
318
+ runs: response.runs.map((id) => ({ id })),
319
+ };
320
+ return handle;
321
+ }
322
+ async function triggerAndWait_internal(name, id, payload, options, requestOptions) {
323
+ const ctx = v3_1.taskContext.ctx;
324
+ if (!ctx) {
325
+ throw new Error("triggerAndWait can only be used from inside a task.run()");
326
+ }
327
+ const apiClient = v3_1.apiClientManager.client;
328
+ if (!apiClient) {
329
+ throw apiClientMissingError();
330
+ }
331
+ const payloadPacket = await (0, v3_1.stringifyIO)(payload);
332
+ return await tracer_js_1.tracer.startActiveSpan(name, async (span) => {
333
+ const response = await apiClient.triggerTask(id, {
334
+ payload: payloadPacket.data,
335
+ options: {
336
+ dependentAttempt: ctx.attempt.id,
337
+ lockToVersion: v3_1.taskContext.worker?.version, // Lock to current version because we're waiting for it to finish
338
+ queue: options?.queue,
339
+ concurrencyKey: options?.concurrencyKey,
340
+ test: v3_1.taskContext.ctx?.run.isTest,
341
+ payloadType: payloadPacket.dataType,
342
+ idempotencyKey: await makeKey(options?.idempotencyKey),
343
+ delay: options?.delay,
344
+ ttl: options?.ttl,
345
+ tags: options?.tags,
346
+ maxAttempts: options?.maxAttempts,
347
+ },
348
+ }, {}, requestOptions);
349
+ span.setAttribute("messaging.message.id", response.id);
350
+ if (options?.idempotencyKey) {
351
+ // If an idempotency key is provided, we can check if the result is already available
352
+ const result = await apiClient.getRunResult(response.id);
353
+ if (result) {
354
+ v3_1.logger.log(`Result reused from previous task run with idempotency key '${options.idempotencyKey}'.`, {
355
+ runId: response.id,
356
+ idempotencyKey: options.idempotencyKey,
357
+ });
358
+ return await handleTaskRunExecutionResult(result);
359
+ }
360
+ }
361
+ const result = await v3_1.runtime.waitForTask({
362
+ id: response.id,
363
+ ctx,
364
+ });
365
+ return await handleTaskRunExecutionResult(result);
366
+ }, {
367
+ kind: api_1.SpanKind.PRODUCER,
368
+ attributes: {
369
+ [v3_1.SemanticInternalAttributes.STYLE_ICON]: "trigger",
370
+ [semantic_conventions_1.SEMATTRS_MESSAGING_OPERATION]: "publish",
371
+ ["messaging.client_id"]: v3_1.taskContext.worker?.id,
372
+ [semantic_conventions_1.SEMATTRS_MESSAGING_DESTINATION]: id,
373
+ [semantic_conventions_1.SEMATTRS_MESSAGING_SYSTEM]: "trigger.dev",
374
+ ...(0, v3_1.accessoryAttributes)({
375
+ items: [
376
+ {
377
+ text: id,
378
+ variant: "normal",
379
+ },
380
+ ],
381
+ style: "codepath",
382
+ }),
383
+ },
384
+ });
385
+ }
386
+ async function batchTriggerAndWait_internal(name, id, items, requestOptions, queue) {
387
+ const ctx = v3_1.taskContext.ctx;
388
+ if (!ctx) {
389
+ throw new Error("batchTriggerAndWait can only be used from inside a task.run()");
390
+ }
391
+ const apiClient = v3_1.apiClientManager.client;
392
+ if (!apiClient) {
393
+ throw apiClientMissingError();
394
+ }
395
+ return await tracer_js_1.tracer.startActiveSpan(name, async (span) => {
396
+ const response = await apiClient.batchTriggerTask(id, {
397
+ items: await Promise.all(items.map(async (item) => {
398
+ const payloadPacket = await (0, v3_1.stringifyIO)(item.payload);
399
+ return {
400
+ payload: payloadPacket.data,
401
+ options: {
402
+ lockToVersion: v3_1.taskContext.worker?.version,
403
+ queue: item.options?.queue ?? queue,
404
+ concurrencyKey: item.options?.concurrencyKey,
405
+ test: v3_1.taskContext.ctx?.run.isTest,
406
+ payloadType: payloadPacket.dataType,
407
+ idempotencyKey: await makeKey(item.options?.idempotencyKey),
408
+ delay: item.options?.delay,
409
+ ttl: item.options?.ttl,
410
+ tags: item.options?.tags,
411
+ maxAttempts: item.options?.maxAttempts,
412
+ },
413
+ };
414
+ })),
415
+ dependentAttempt: ctx.attempt.id,
416
+ }, {}, requestOptions);
417
+ span.setAttribute("messaging.message.id", response.batchId);
418
+ const getBatchResults = async () => {
419
+ // We need to check if the results are already available, but only if any of the items options has an idempotency key
420
+ const hasIdempotencyKey = items.some((item) => item.options?.idempotencyKey);
421
+ if (hasIdempotencyKey) {
422
+ const results = await apiClient.getBatchResults(response.batchId);
423
+ if (results) {
424
+ return results;
425
+ }
426
+ }
427
+ return {
428
+ id: response.batchId,
429
+ items: [],
430
+ };
431
+ };
432
+ const existingResults = await getBatchResults();
433
+ const incompleteRuns = response.runs.filter((runId) => !existingResults.items.some((item) => item.id === runId));
434
+ if (incompleteRuns.length === 0) {
435
+ v3_1.logger.log(`Results reused from previous task runs because of the provided idempotency keys.`);
436
+ // All runs are already completed
437
+ const runs = await handleBatchTaskRunExecutionResult(existingResults.items);
438
+ return {
439
+ id: existingResults.id,
440
+ runs,
441
+ };
442
+ }
443
+ const result = await v3_1.runtime.waitForBatch({
444
+ id: response.batchId,
445
+ runs: incompleteRuns,
446
+ ctx,
447
+ });
448
+ // Combine the already completed runs with the newly completed runs, ordered by the original order
449
+ const combinedItems = [];
450
+ for (const runId of response.runs) {
451
+ const existingItem = existingResults.items.find((item) => item.id === runId);
452
+ if (existingItem) {
453
+ combinedItems.push(existingItem);
454
+ }
455
+ else {
456
+ const newItem = result.items.find((item) => item.id === runId);
457
+ if (newItem) {
458
+ combinedItems.push(newItem);
459
+ }
460
+ }
461
+ }
462
+ const runs = await handleBatchTaskRunExecutionResult(combinedItems);
463
+ return {
464
+ id: result.id,
465
+ runs,
466
+ };
467
+ }, {
468
+ kind: api_1.SpanKind.PRODUCER,
469
+ attributes: {
470
+ [v3_1.SemanticInternalAttributes.STYLE_ICON]: "trigger",
471
+ ["messaging.batch.message_count"]: items.length,
472
+ [semantic_conventions_1.SEMATTRS_MESSAGING_OPERATION]: "publish",
473
+ ["messaging.client_id"]: v3_1.taskContext.worker?.id,
474
+ [semantic_conventions_1.SEMATTRS_MESSAGING_DESTINATION]: id,
475
+ [semantic_conventions_1.SEMATTRS_MESSAGING_SYSTEM]: "trigger.dev",
476
+ ...(0, v3_1.accessoryAttributes)({
477
+ items: [
478
+ {
479
+ text: id,
480
+ variant: "normal",
481
+ },
482
+ ],
483
+ style: "codepath",
484
+ }),
485
+ },
486
+ });
487
+ }
488
+ async function handleBatchTaskRunExecutionResult(items) {
489
+ const someObjectStoreOutputs = items.some((item) => item.ok && item.outputType === "application/store");
490
+ if (!someObjectStoreOutputs) {
491
+ const results = await Promise.all(items.map(async (item) => {
492
+ return await handleTaskRunExecutionResult(item);
493
+ }));
494
+ return results;
495
+ }
496
+ return await tracer_js_1.tracer.startActiveSpan("store.downloadPayloads", async (span) => {
497
+ const results = await Promise.all(items.map(async (item) => {
498
+ return await handleTaskRunExecutionResult(item);
499
+ }));
500
+ return results;
501
+ }, {
502
+ kind: api_1.SpanKind.INTERNAL,
503
+ [v3_1.SemanticInternalAttributes.STYLE_ICON]: "cloud-download",
504
+ });
505
+ }
506
+ async function handleTaskRunExecutionResult(execution) {
507
+ if (execution.ok) {
508
+ const outputPacket = { data: execution.output, dataType: execution.outputType };
509
+ const importedPacket = await (0, v3_1.conditionallyImportPacket)(outputPacket, tracer_js_1.tracer);
510
+ return {
511
+ ok: true,
512
+ id: execution.id,
513
+ output: await (0, v3_1.parsePacket)(importedPacket),
514
+ };
515
+ }
516
+ else {
517
+ return {
518
+ ok: false,
519
+ id: execution.id,
520
+ error: (0, v3_1.createErrorTaskError)(execution.error),
521
+ };
522
+ }
523
+ }
524
+ function apiClientMissingError() {
525
+ const hasBaseUrl = !!v3_1.apiClientManager.baseURL;
526
+ const hasAccessToken = !!v3_1.apiClientManager.accessToken;
527
+ if (!hasBaseUrl && !hasAccessToken) {
528
+ return `You need to set the TRIGGER_API_URL and TRIGGER_SECRET_KEY environment variables.`;
529
+ }
530
+ else if (!hasBaseUrl) {
531
+ return `You need to set the TRIGGER_API_URL environment variable.`;
532
+ }
533
+ else if (!hasAccessToken) {
534
+ return `You need to set the TRIGGER_SECRET_KEY environment variable.`;
535
+ }
536
+ return `Unknown error`;
537
+ }
538
+ async function makeKey(idempotencyKey) {
539
+ if (!idempotencyKey) {
540
+ return;
541
+ }
542
+ if ((0, idempotencyKeys_js_1.isIdempotencyKey)(idempotencyKey)) {
543
+ return idempotencyKey;
544
+ }
545
+ return await idempotencyKeys_js_1.idempotencyKeys.create(idempotencyKey, { scope: "global" });
546
+ }
547
+ //# sourceMappingURL=shared.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../src/v3/shared.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import type { ApiRequestOptions, RunTags } from "@trigger.dev/core/v3";
2
+ export declare const tags: {
3
+ add: typeof addTags;
4
+ };
5
+ declare function addTags(tags: RunTags, requestOptions?: ApiRequestOptions): Promise<void>;
6
+ export {};
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.tags = void 0;
4
+ const v3_1 = require("@trigger.dev/core/v3");
5
+ const shared_js_1 = require("./shared.js");
6
+ const tracer_js_1 = require("./tracer.js");
7
+ exports.tags = {
8
+ add: addTags,
9
+ };
10
+ async function addTags(tags, requestOptions) {
11
+ const apiClient = v3_1.apiClientManager.client;
12
+ if (!apiClient) {
13
+ throw (0, shared_js_1.apiClientMissingError)();
14
+ }
15
+ const run = v3_1.taskContext.ctx?.run;
16
+ if (!run) {
17
+ throw new Error("Can't set tags outside of a run. You can trigger a task and set tags in the options.");
18
+ }
19
+ const $requestOptions = (0, v3_1.mergeRequestOptions)({
20
+ tracer: tracer_js_1.tracer,
21
+ name: "tags.set()",
22
+ icon: "tag",
23
+ attributes: {
24
+ ...(0, v3_1.accessoryAttributes)({
25
+ items: [
26
+ {
27
+ text: typeof tags === "string" ? tags : tags.join(", "),
28
+ variant: "normal",
29
+ },
30
+ ],
31
+ style: "codepath",
32
+ }),
33
+ },
34
+ }, requestOptions);
35
+ try {
36
+ await apiClient.addTags(run.id, { tags }, $requestOptions);
37
+ }
38
+ catch (error) {
39
+ if (error instanceof v3_1.UnprocessableEntityError) {
40
+ v3_1.logger.error(error.message, {
41
+ existingTags: run.tags,
42
+ newTags: tags,
43
+ });
44
+ return;
45
+ }
46
+ v3_1.logger.error("Failed to set tags", { error });
47
+ throw error;
48
+ }
49
+ }
50
+ //# sourceMappingURL=tags.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tags.js","sourceRoot":"","sources":["../../../src/v3/tags.ts"],"names":[],"mappings":";;;AACA,6CAO8B;AAC9B,2CAAoD;AACpD,2CAAqC;AAExB,QAAA,IAAI,GAAG;IAClB,GAAG,EAAE,OAAO;CACb,CAAC;AAEF,KAAK,UAAU,OAAO,CAAC,IAAa,EAAE,cAAkC;IACtE,MAAM,SAAS,GAAG,qBAAgB,CAAC,MAAM,CAAC;IAE1C,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAA,iCAAqB,GAAE,CAAC;IAChC,CAAC;IAED,MAAM,GAAG,GAAG,gBAAW,CAAC,GAAG,EAAE,GAAG,CAAC;IACjC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CACb,sFAAsF,CACvF,CAAC;IACJ,CAAC;IAED,MAAM,eAAe,GAAG,IAAA,wBAAmB,EACzC;QACE,MAAM,EAAN,kBAAM;QACN,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,KAAK;QACX,UAAU,EAAE;YACV,GAAG,IAAA,wBAAmB,EAAC;gBACrB,KAAK,EAAE;oBACL;wBACE,IAAI,EAAE,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;wBACvD,OAAO,EAAE,QAAQ;qBAClB;iBACF;gBACD,KAAK,EAAE,UAAU;aAClB,CAAC;SACH;KACF,EACD,cAAc,CACf,CAAC;IAEF,IAAI,CAAC;QACH,MAAM,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,eAAe,CAAC,CAAC;IAC7D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,6BAAwB,EAAE,CAAC;YAC9C,WAAM,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE;gBAC1B,YAAY,EAAE,GAAG,CAAC,IAAI;gBACtB,OAAO,EAAE,IAAI;aACd,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,WAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAE9C,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -0,0 +1,31 @@
1
+ import { InitOutput } from "@trigger.dev/core/v3";
2
+ import { batchTrigger, batchTriggerAndWait, trigger, triggerAndPoll, triggerAndWait, SubtaskUnwrapError } from "./shared.js";
3
+ export { SubtaskUnwrapError };
4
+ import type { TaskOptions, Task, Queue, RunHandle, BatchRunHandle, TaskRunResult, BatchResult, BatchItem, TaskPayload, TaskOutput, TaskIdentifier, TaskRunOptions, AnyTask } from "./shared.js";
5
+ export type { TaskOptions, Task, Queue, RunHandle, BatchRunHandle, TaskRunResult, BatchResult, BatchItem, TaskPayload, TaskOutput, TaskIdentifier, TaskRunOptions, AnyTask, };
6
+ /** Creates a task that can be triggered
7
+ * @param options - Task options
8
+ * @example
9
+ *
10
+ * ```ts
11
+ * import { task } from "@trigger.dev/sdk/v3";
12
+ *
13
+ * export const helloWorld = task({
14
+ id: "hello-world",
15
+ * run: async (payload: { url: string }) => {
16
+ * return { hello: "world" };
17
+ * },
18
+ * });
19
+ *
20
+ * ```
21
+ *
22
+ * @returns A task that can be triggered
23
+ */
24
+ export declare function task<TIdentifier extends string, TInput = void, TOutput = unknown, TInitOutput extends InitOutput = any>(options: TaskOptions<TIdentifier, TInput, TOutput, TInitOutput>): Task<TIdentifier, TInput, TOutput>;
25
+ export declare const tasks: {
26
+ trigger: typeof trigger;
27
+ triggerAndPoll: typeof triggerAndPoll;
28
+ batchTrigger: typeof batchTrigger;
29
+ triggerAndWait: typeof triggerAndWait;
30
+ batchTriggerAndWait: typeof batchTriggerAndWait;
31
+ };