@trigger.dev/sdk 3.0.0-beta.6 → 3.0.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.
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 -254
  275. package/dist/v3/index.d.ts +0 -254
  276. package/dist/v3/index.js +0 -892
  277. package/dist/v3/index.js.map +0 -1
  278. package/dist/v3/index.mjs +0 -883
  279. package/dist/v3/index.mjs.map +0 -1
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.tasks = exports.SubtaskUnwrapError = void 0;
4
+ exports.task = task;
5
+ const shared_js_1 = require("./shared.js");
6
+ Object.defineProperty(exports, "SubtaskUnwrapError", { enumerable: true, get: function () { return shared_js_1.SubtaskUnwrapError; } });
7
+ /** Creates a task that can be triggered
8
+ * @param options - Task options
9
+ * @example
10
+ *
11
+ * ```ts
12
+ * import { task } from "@trigger.dev/sdk/v3";
13
+ *
14
+ * export const helloWorld = task({
15
+ id: "hello-world",
16
+ * run: async (payload: { url: string }) => {
17
+ * return { hello: "world" };
18
+ * },
19
+ * });
20
+ *
21
+ * ```
22
+ *
23
+ * @returns A task that can be triggered
24
+ */
25
+ function task(options) {
26
+ return (0, shared_js_1.createTask)(options);
27
+ }
28
+ exports.tasks = {
29
+ trigger: shared_js_1.trigger,
30
+ triggerAndPoll: shared_js_1.triggerAndPoll,
31
+ batchTrigger: shared_js_1.batchTrigger,
32
+ triggerAndWait: shared_js_1.triggerAndWait,
33
+ batchTriggerAndWait: shared_js_1.batchTriggerAndWait,
34
+ };
35
+ //# sourceMappingURL=tasks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tasks.js","sourceRoot":"","sources":["../../../src/v3/tasks.ts"],"names":[],"mappings":";;;AA+DA,oBASC;AAvED,2CAQqB;AAEZ,mGAHP,8BAAkB,OAGO;AAkC3B;;;;;;;;;;;;;;;;;GAiBG;AACH,SAAgB,IAAI,CAMlB,OAA+D;IAE/D,OAAO,IAAA,sBAAU,EAA4C,OAAO,CAAC,CAAC;AACxE,CAAC;AAEY,QAAA,KAAK,GAAG;IACnB,OAAO,EAAP,mBAAO;IACP,cAAc,EAAd,0BAAc;IACd,YAAY,EAAZ,wBAAY;IACZ,cAAc,EAAd,0BAAc;IACd,mBAAmB,EAAnB,+BAAmB;CACpB,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { TriggerTracer } from "@trigger.dev/core/v3";
2
+ export declare const tracer: TriggerTracer;
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.tracer = void 0;
4
+ const v3_1 = require("@trigger.dev/core/v3");
5
+ const version_js_1 = require("../version.js");
6
+ exports.tracer = new v3_1.TriggerTracer({ name: "@trigger.dev/sdk", version: version_js_1.VERSION });
7
+ //# sourceMappingURL=tracer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tracer.js","sourceRoot":"","sources":["../../../src/v3/tracer.ts"],"names":[],"mappings":";;;AAAA,6CAAqD;AACrD,8CAAwC;AAE3B,QAAA,MAAM,GAAG,IAAI,kBAAa,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,oBAAO,EAAE,CAAC,CAAC"}
@@ -0,0 +1,77 @@
1
+ export type ComputeUsage = {
2
+ costInCents: number;
3
+ durationMs: number;
4
+ };
5
+ export type CurrentUsage = {
6
+ compute: {
7
+ attempt: ComputeUsage;
8
+ total: ComputeUsage;
9
+ };
10
+ baseCostInCents: number;
11
+ totalCostInCents: number;
12
+ };
13
+ export declare const usage: {
14
+ /**
15
+ * Get the current running usage of this task run.
16
+ *
17
+ * @example
18
+ *
19
+ * ```typescript
20
+ * import { usage, task } from "@trigger.dev/sdk/v3";
21
+ *
22
+ * export const myTask = task({
23
+ * id: "my-task",
24
+ * run: async (payload, { ctx }) => {
25
+ * // ... Do a bunch of work
26
+ *
27
+ * const currentUsage = usage.getCurrent();
28
+ *
29
+ * // You have access to the current compute cost and duration up to this point
30
+ * console.log("Current attempt compute cost and duration", {
31
+ * cost: currentUsage.compute.attempt.costInCents,
32
+ * duration: currentUsage.compute.attempt.durationMs,
33
+ * });
34
+ *
35
+ * // You also can see the total compute cost and duration up to this point in the run, across all attempts
36
+ * console.log("Current total compute cost and duration", {
37
+ * cost: currentUsage.compute.total.costInCents,
38
+ * duration: currentUsage.compute.total.durationMs,
39
+ * });
40
+ *
41
+ * // You can see the base cost of the run, which is the cost of the run before any compute costs
42
+ * console.log("Total cost", {
43
+ * cost: currentUsage.totalCostInCents,
44
+ * baseCost: currentUsage.baseCostInCents,
45
+ * });
46
+ * },
47
+ * });
48
+ * ```
49
+ */
50
+ getCurrent: () => CurrentUsage;
51
+ /**
52
+ * Measure the cost and duration of a function.
53
+ *
54
+ * @example
55
+ *
56
+ * ```typescript
57
+ * import { usage } from "@trigger.dev/sdk/v3";
58
+ *
59
+ * export const myTask = task({
60
+ * id: "my-task",
61
+ * run: async (payload, { ctx }) => {
62
+ * const { result, compute } = await usage.measure(async () => {
63
+ * // Do some work
64
+ * return "result";
65
+ * });
66
+ *
67
+ * console.log("Result", result);
68
+ * console.log("Cost and duration", { cost: compute.costInCents, duration: compute.durationMs });
69
+ * },
70
+ * });
71
+ * ```
72
+ */
73
+ measure: <T>(cb: () => Promise<T>) => Promise<{
74
+ result: T;
75
+ compute: ComputeUsage;
76
+ }>;
77
+ };
@@ -0,0 +1,115 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.usage = void 0;
4
+ const v3_1 = require("@trigger.dev/core/v3");
5
+ exports.usage = {
6
+ /**
7
+ * Get the current running usage of this task run.
8
+ *
9
+ * @example
10
+ *
11
+ * ```typescript
12
+ * import { usage, task } from "@trigger.dev/sdk/v3";
13
+ *
14
+ * export const myTask = task({
15
+ * id: "my-task",
16
+ * run: async (payload, { ctx }) => {
17
+ * // ... Do a bunch of work
18
+ *
19
+ * const currentUsage = usage.getCurrent();
20
+ *
21
+ * // You have access to the current compute cost and duration up to this point
22
+ * console.log("Current attempt compute cost and duration", {
23
+ * cost: currentUsage.compute.attempt.costInCents,
24
+ * duration: currentUsage.compute.attempt.durationMs,
25
+ * });
26
+ *
27
+ * // You also can see the total compute cost and duration up to this point in the run, across all attempts
28
+ * console.log("Current total compute cost and duration", {
29
+ * cost: currentUsage.compute.total.costInCents,
30
+ * duration: currentUsage.compute.total.durationMs,
31
+ * });
32
+ *
33
+ * // You can see the base cost of the run, which is the cost of the run before any compute costs
34
+ * console.log("Total cost", {
35
+ * cost: currentUsage.totalCostInCents,
36
+ * baseCost: currentUsage.baseCostInCents,
37
+ * });
38
+ * },
39
+ * });
40
+ * ```
41
+ */
42
+ getCurrent: () => {
43
+ const sample = v3_1.usage.sample();
44
+ const machine = v3_1.taskContext.ctx?.machine;
45
+ const run = v3_1.taskContext.ctx?.run;
46
+ if (!sample) {
47
+ return {
48
+ compute: {
49
+ attempt: {
50
+ costInCents: 0,
51
+ durationMs: 0,
52
+ },
53
+ total: {
54
+ costInCents: run?.costInCents ?? 0,
55
+ durationMs: run?.durationMs ?? 0,
56
+ },
57
+ },
58
+ baseCostInCents: run?.baseCostInCents ?? 0,
59
+ totalCostInCents: (run?.costInCents ?? 0) + (run?.baseCostInCents ?? 0),
60
+ };
61
+ }
62
+ const currentCostInCents = machine?.centsPerMs ? sample.cpuTime * machine.centsPerMs : 0;
63
+ return {
64
+ compute: {
65
+ attempt: {
66
+ costInCents: currentCostInCents,
67
+ durationMs: sample.cpuTime,
68
+ },
69
+ total: {
70
+ costInCents: (run?.costInCents ?? 0) + currentCostInCents,
71
+ durationMs: (run?.durationMs ?? 0) + sample.cpuTime,
72
+ },
73
+ },
74
+ baseCostInCents: run?.baseCostInCents ?? 0,
75
+ totalCostInCents: (run?.costInCents ?? 0) + currentCostInCents + (run?.baseCostInCents ?? 0),
76
+ };
77
+ },
78
+ /**
79
+ * Measure the cost and duration of a function.
80
+ *
81
+ * @example
82
+ *
83
+ * ```typescript
84
+ * import { usage } from "@trigger.dev/sdk/v3";
85
+ *
86
+ * export const myTask = task({
87
+ * id: "my-task",
88
+ * run: async (payload, { ctx }) => {
89
+ * const { result, compute } = await usage.measure(async () => {
90
+ * // Do some work
91
+ * return "result";
92
+ * });
93
+ *
94
+ * console.log("Result", result);
95
+ * console.log("Cost and duration", { cost: compute.costInCents, duration: compute.durationMs });
96
+ * },
97
+ * });
98
+ * ```
99
+ */
100
+ measure: async (cb) => {
101
+ const measurement = v3_1.usage.start();
102
+ const result = await cb();
103
+ const sample = v3_1.usage.stop(measurement);
104
+ const machine = v3_1.taskContext.ctx?.machine;
105
+ const costInCents = machine?.centsPerMs ? sample.cpuTime * machine.centsPerMs : 0;
106
+ return {
107
+ result,
108
+ compute: {
109
+ costInCents,
110
+ durationMs: sample.cpuTime,
111
+ },
112
+ };
113
+ },
114
+ };
115
+ //# sourceMappingURL=usage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usage.js","sourceRoot":"","sources":["../../../src/v3/usage.ts"],"names":[],"mappings":";;;AAAA,6CAAsE;AAiBzD,QAAA,KAAK,GAAG;IACnB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAmCG;IACH,UAAU,EAAE,GAAiB,EAAE;QAC7B,MAAM,MAAM,GAAG,UAAQ,CAAC,MAAM,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,gBAAW,CAAC,GAAG,EAAE,OAAO,CAAC;QACzC,MAAM,GAAG,GAAG,gBAAW,CAAC,GAAG,EAAE,GAAG,CAAC;QAEjC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO;gBACL,OAAO,EAAE;oBACP,OAAO,EAAE;wBACP,WAAW,EAAE,CAAC;wBACd,UAAU,EAAE,CAAC;qBACd;oBACD,KAAK,EAAE;wBACL,WAAW,EAAE,GAAG,EAAE,WAAW,IAAI,CAAC;wBAClC,UAAU,EAAE,GAAG,EAAE,UAAU,IAAI,CAAC;qBACjC;iBACF;gBACD,eAAe,EAAE,GAAG,EAAE,eAAe,IAAI,CAAC;gBAC1C,gBAAgB,EAAE,CAAC,GAAG,EAAE,WAAW,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,eAAe,IAAI,CAAC,CAAC;aACxE,CAAC;QACJ,CAAC;QAED,MAAM,kBAAkB,GAAG,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAEzF,OAAO;YACL,OAAO,EAAE;gBACP,OAAO,EAAE;oBACP,WAAW,EAAE,kBAAkB;oBAC/B,UAAU,EAAE,MAAM,CAAC,OAAO;iBAC3B;gBACD,KAAK,EAAE;oBACL,WAAW,EAAE,CAAC,GAAG,EAAE,WAAW,IAAI,CAAC,CAAC,GAAG,kBAAkB;oBACzD,UAAU,EAAE,CAAC,GAAG,EAAE,UAAU,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,OAAO;iBACpD;aACF;YACD,eAAe,EAAE,GAAG,EAAE,eAAe,IAAI,CAAC;YAC1C,gBAAgB,EAAE,CAAC,GAAG,EAAE,WAAW,IAAI,CAAC,CAAC,GAAG,kBAAkB,GAAG,CAAC,GAAG,EAAE,eAAe,IAAI,CAAC,CAAC;SAC7F,CAAC;IACJ,CAAC;IACD;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,OAAO,EAAE,KAAK,EAAK,EAAoB,EAAiD,EAAE;QACxF,MAAM,WAAW,GAAG,UAAQ,CAAC,KAAK,EAAE,CAAC;QAErC,MAAM,MAAM,GAAG,MAAM,EAAE,EAAE,CAAC;QAE1B,MAAM,MAAM,GAAG,UAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC1C,MAAM,OAAO,GAAG,gBAAW,CAAC,GAAG,EAAE,OAAO,CAAC;QAEzC,MAAM,WAAW,GAAG,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAElF,OAAO;YACL,MAAM;YACN,OAAO,EAAE;gBACP,WAAW;gBACX,UAAU,EAAE,MAAM,CAAC,OAAO;aAC3B;SACF,CAAC;IACJ,CAAC;CACF,CAAC"}
@@ -0,0 +1,22 @@
1
+ export type WaitOptions = {
2
+ seconds: number;
3
+ } | {
4
+ minutes: number;
5
+ } | {
6
+ hours: number;
7
+ } | {
8
+ days: number;
9
+ } | {
10
+ weeks: number;
11
+ } | {
12
+ months: number;
13
+ } | {
14
+ years: number;
15
+ };
16
+ export declare const wait: {
17
+ for: (options: WaitOptions) => Promise<void>;
18
+ until: (options: {
19
+ date: Date;
20
+ throwIfInThePast?: boolean;
21
+ }) => Promise<void>;
22
+ };
@@ -0,0 +1,99 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.wait = void 0;
4
+ const v3_1 = require("@trigger.dev/core/v3");
5
+ const tracer_js_1 = require("./tracer.js");
6
+ exports.wait = {
7
+ for: async (options) => {
8
+ return tracer_js_1.tracer.startActiveSpan(`wait.for()`, async (span) => {
9
+ const start = Date.now();
10
+ const durationInMs = calculateDurationInMs(options);
11
+ await v3_1.runtime.waitForDuration(durationInMs);
12
+ }, {
13
+ attributes: {
14
+ [v3_1.SemanticInternalAttributes.STYLE_ICON]: "wait",
15
+ ...(0, v3_1.accessoryAttributes)({
16
+ items: [
17
+ {
18
+ text: nameForWaitOptions(options),
19
+ variant: "normal",
20
+ },
21
+ ],
22
+ style: "codepath",
23
+ }),
24
+ },
25
+ });
26
+ },
27
+ until: async (options) => {
28
+ return tracer_js_1.tracer.startActiveSpan(`wait.until()`, async (span) => {
29
+ const start = Date.now();
30
+ if (options.throwIfInThePast && options.date < new Date()) {
31
+ throw new Error("Date is in the past");
32
+ }
33
+ const durationInMs = options.date.getTime() - start;
34
+ await v3_1.runtime.waitForDuration(durationInMs);
35
+ }, {
36
+ attributes: {
37
+ [v3_1.SemanticInternalAttributes.STYLE_ICON]: "wait",
38
+ ...(0, v3_1.accessoryAttributes)({
39
+ items: [
40
+ {
41
+ text: options.date.toISOString(),
42
+ variant: "normal",
43
+ },
44
+ ],
45
+ style: "codepath",
46
+ }),
47
+ },
48
+ });
49
+ },
50
+ };
51
+ function nameForWaitOptions(options) {
52
+ if ("seconds" in options) {
53
+ return options.seconds === 1 ? `1 second` : `${options.seconds} seconds`;
54
+ }
55
+ if ("minutes" in options) {
56
+ return options.minutes === 1 ? `1 minute` : `${options.minutes} minutes`;
57
+ }
58
+ if ("hours" in options) {
59
+ return options.hours === 1 ? `1 hour` : `${options.hours} hours`;
60
+ }
61
+ if ("days" in options) {
62
+ return options.days === 1 ? `1 day` : `${options.days} days`;
63
+ }
64
+ if ("weeks" in options) {
65
+ return options.weeks === 1 ? `1 week` : `${options.weeks} weeks`;
66
+ }
67
+ if ("months" in options) {
68
+ return options.months === 1 ? `1 month` : `${options.months} months`;
69
+ }
70
+ if ("years" in options) {
71
+ return options.years === 1 ? `1 year` : `${options.years} years`;
72
+ }
73
+ return "NaN";
74
+ }
75
+ function calculateDurationInMs(options) {
76
+ if ("seconds" in options) {
77
+ return options.seconds * 1000;
78
+ }
79
+ if ("minutes" in options) {
80
+ return options.minutes * 1000 * 60;
81
+ }
82
+ if ("hours" in options) {
83
+ return options.hours * 1000 * 60 * 60;
84
+ }
85
+ if ("days" in options) {
86
+ return options.days * 1000 * 60 * 60 * 24;
87
+ }
88
+ if ("weeks" in options) {
89
+ return options.weeks * 1000 * 60 * 60 * 24 * 7;
90
+ }
91
+ if ("months" in options) {
92
+ return options.months * 1000 * 60 * 60 * 24 * 30;
93
+ }
94
+ if ("years" in options) {
95
+ return options.years * 1000 * 60 * 60 * 24 * 365;
96
+ }
97
+ throw new Error("Invalid options");
98
+ }
99
+ //# sourceMappingURL=wait.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wait.js","sourceRoot":"","sources":["../../../src/v3/wait.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare const VERSION = "0.0.0";
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.VERSION = void 0;
4
+ exports.VERSION = "3.0.0";
5
+ //# sourceMappingURL=version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":";;;AAAa,QAAA,OAAO,GAAG,OAAO,CAAC"}