@trigger.dev/sdk 3.3.17 → 4.0.0-v4-beta.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 (233) hide show
  1. package/dist/commonjs/v3/ai.d.ts +23 -0
  2. package/dist/commonjs/v3/ai.js +50 -0
  3. package/dist/commonjs/v3/ai.js.map +1 -0
  4. package/dist/commonjs/v3/auth.d.ts +4 -3
  5. package/dist/commonjs/v3/auth.js.map +1 -1
  6. package/dist/commonjs/v3/hooks.d.ts +22 -0
  7. package/dist/commonjs/v3/hooks.js +65 -0
  8. package/dist/commonjs/v3/hooks.js.map +1 -0
  9. package/dist/commonjs/v3/index.d.ts +3 -1
  10. package/dist/commonjs/v3/index.js +4 -1
  11. package/dist/commonjs/v3/index.js.map +1 -1
  12. package/dist/commonjs/v3/locals.d.ts +3 -0
  13. package/dist/commonjs/v3/locals.js +6 -0
  14. package/dist/commonjs/v3/locals.js.map +1 -0
  15. package/dist/commonjs/v3/queues.d.ts +61 -0
  16. package/dist/commonjs/v3/queues.js +137 -0
  17. package/dist/commonjs/v3/queues.js.map +1 -0
  18. package/dist/commonjs/v3/retry.js +10 -7
  19. package/dist/commonjs/v3/retry.js.map +1 -1
  20. package/dist/commonjs/v3/runs.d.ts +40 -40
  21. package/dist/commonjs/v3/schedules/index.js +1 -1
  22. package/dist/commonjs/v3/schedules/index.js.map +1 -1
  23. package/dist/commonjs/v3/shared.d.ts +7 -6
  24. package/dist/commonjs/v3/shared.js +188 -176
  25. package/dist/commonjs/v3/shared.js.map +1 -1
  26. package/dist/commonjs/v3/tasks.d.ts +12 -0
  27. package/dist/commonjs/v3/tasks.js +11 -0
  28. package/dist/commonjs/v3/tasks.js.map +1 -1
  29. package/dist/commonjs/v3/wait.d.ts +208 -3
  30. package/dist/commonjs/v3/wait.js +407 -7
  31. package/dist/commonjs/v3/wait.js.map +1 -1
  32. package/dist/commonjs/version.js +1 -1
  33. package/dist/esm/v3/ai.d.ts +23 -0
  34. package/dist/esm/v3/ai.js +47 -0
  35. package/dist/esm/v3/ai.js.map +1 -0
  36. package/dist/esm/v3/auth.d.ts +4 -3
  37. package/dist/esm/v3/auth.js.map +1 -1
  38. package/dist/esm/v3/hooks.d.ts +22 -0
  39. package/dist/esm/v3/hooks.js +54 -0
  40. package/dist/esm/v3/hooks.js.map +1 -0
  41. package/dist/esm/v3/index.d.ts +3 -1
  42. package/dist/esm/v3/index.js +3 -1
  43. package/dist/esm/v3/index.js.map +1 -1
  44. package/dist/esm/v3/locals.d.ts +3 -0
  45. package/dist/esm/v3/locals.js +3 -0
  46. package/dist/esm/v3/locals.js.map +1 -0
  47. package/dist/esm/v3/queues.d.ts +61 -0
  48. package/dist/esm/v3/queues.js +131 -0
  49. package/dist/esm/v3/queues.js.map +1 -0
  50. package/dist/esm/v3/retry.js +11 -8
  51. package/dist/esm/v3/retry.js.map +1 -1
  52. package/dist/esm/v3/runs.d.ts +39 -39
  53. package/dist/esm/v3/schedules/index.js +2 -2
  54. package/dist/esm/v3/schedules/index.js.map +1 -1
  55. package/dist/esm/v3/shared.d.ts +7 -6
  56. package/dist/esm/v3/shared.js +189 -177
  57. package/dist/esm/v3/shared.js.map +1 -1
  58. package/dist/esm/v3/tasks.d.ts +12 -0
  59. package/dist/esm/v3/tasks.js +11 -0
  60. package/dist/esm/v3/tasks.js.map +1 -1
  61. package/dist/esm/v3/wait.d.ts +208 -3
  62. package/dist/esm/v3/wait.js +406 -7
  63. package/dist/esm/v3/wait.js.map +1 -1
  64. package/dist/esm/version.js +1 -1
  65. package/package.json +36 -17
  66. package/dist/commonjs/apiClient.d.ts +0 -727
  67. package/dist/commonjs/apiClient.js +0 -692
  68. package/dist/commonjs/apiClient.js.map +0 -1
  69. package/dist/commonjs/concurrencyLimit.d.ts +0 -10
  70. package/dist/commonjs/concurrencyLimit.js +0 -17
  71. package/dist/commonjs/concurrencyLimit.js.map +0 -1
  72. package/dist/commonjs/errors.d.ts +0 -66
  73. package/dist/commonjs/errors.js +0 -109
  74. package/dist/commonjs/errors.js.map +0 -1
  75. package/dist/commonjs/httpEndpoint.d.ts +0 -87
  76. package/dist/commonjs/httpEndpoint.js +0 -130
  77. package/dist/commonjs/httpEndpoint.js.map +0 -1
  78. package/dist/commonjs/index.d.ts +0 -23
  79. package/dist/commonjs/index.js +0 -55
  80. package/dist/commonjs/index.js.map +0 -1
  81. package/dist/commonjs/integrations.d.ts +0 -11
  82. package/dist/commonjs/integrations.js +0 -3
  83. package/dist/commonjs/integrations.js.map +0 -1
  84. package/dist/commonjs/io.d.ts +0 -441
  85. package/dist/commonjs/io.js +0 -1165
  86. package/dist/commonjs/io.js.map +0 -1
  87. package/dist/commonjs/ioWithIntegrations.d.ts +0 -4
  88. package/dist/commonjs/ioWithIntegrations.js +0 -32
  89. package/dist/commonjs/ioWithIntegrations.js.map +0 -1
  90. package/dist/commonjs/job.d.ts +0 -96
  91. package/dist/commonjs/job.js +0 -210
  92. package/dist/commonjs/job.js.map +0 -1
  93. package/dist/commonjs/retry.d.ts +0 -20
  94. package/dist/commonjs/retry.js +0 -22
  95. package/dist/commonjs/retry.js.map +0 -1
  96. package/dist/commonjs/runLocalStorage.d.ts +0 -8
  97. package/dist/commonjs/runLocalStorage.js +0 -6
  98. package/dist/commonjs/runLocalStorage.js.map +0 -1
  99. package/dist/commonjs/security.d.ts +0 -18
  100. package/dist/commonjs/security.js +0 -41
  101. package/dist/commonjs/security.js.map +0 -1
  102. package/dist/commonjs/status.d.ts +0 -19
  103. package/dist/commonjs/status.js +0 -38
  104. package/dist/commonjs/status.js.map +0 -1
  105. package/dist/commonjs/store/keyValueStore.d.ts +0 -17
  106. package/dist/commonjs/store/keyValueStore.js +0 -138
  107. package/dist/commonjs/store/keyValueStore.js.map +0 -1
  108. package/dist/commonjs/store/keyValueStoreClient.d.ts +0 -19
  109. package/dist/commonjs/store/keyValueStoreClient.js +0 -65
  110. package/dist/commonjs/store/keyValueStoreClient.js.map +0 -1
  111. package/dist/commonjs/triggerClient.d.ts +0 -290
  112. package/dist/commonjs/triggerClient.js +0 -1366
  113. package/dist/commonjs/triggerClient.js.map +0 -1
  114. package/dist/commonjs/triggers/dynamic.d.ts +0 -56
  115. package/dist/commonjs/triggers/dynamic.js +0 -97
  116. package/dist/commonjs/triggers/dynamic.js.map +0 -1
  117. package/dist/commonjs/triggers/eventTrigger.d.ts +0 -58
  118. package/dist/commonjs/triggers/eventTrigger.js +0 -69
  119. package/dist/commonjs/triggers/eventTrigger.js.map +0 -1
  120. package/dist/commonjs/triggers/externalSource.d.ts +0 -148
  121. package/dist/commonjs/triggers/externalSource.js +0 -106
  122. package/dist/commonjs/triggers/externalSource.js.map +0 -1
  123. package/dist/commonjs/triggers/invokeTrigger.d.ts +0 -39
  124. package/dist/commonjs/triggers/invokeTrigger.js +0 -58
  125. package/dist/commonjs/triggers/invokeTrigger.js.map +0 -1
  126. package/dist/commonjs/triggers/notifications.d.ts +0 -111
  127. package/dist/commonjs/triggers/notifications.js +0 -101
  128. package/dist/commonjs/triggers/notifications.js.map +0 -1
  129. package/dist/commonjs/triggers/scheduled.d.ts +0 -145
  130. package/dist/commonjs/triggers/scheduled.js +0 -208
  131. package/dist/commonjs/triggers/scheduled.js.map +0 -1
  132. package/dist/commonjs/triggers/webhook.d.ts +0 -143
  133. package/dist/commonjs/triggers/webhook.js +0 -133
  134. package/dist/commonjs/triggers/webhook.js.map +0 -1
  135. package/dist/commonjs/typed-emitter.d.ts +0 -37
  136. package/dist/commonjs/typed-emitter.js +0 -3
  137. package/dist/commonjs/typed-emitter.js.map +0 -1
  138. package/dist/commonjs/types.d.ts +0 -204
  139. package/dist/commonjs/types.js +0 -23
  140. package/dist/commonjs/types.js.map +0 -1
  141. package/dist/commonjs/utils/formatSchemaErrors.d.ts +0 -3
  142. package/dist/commonjs/utils/formatSchemaErrors.js +0 -10
  143. package/dist/commonjs/utils/formatSchemaErrors.js.map +0 -1
  144. package/dist/commonjs/utils/typedAsyncLocalStorage.d.ts +0 -6
  145. package/dist/commonjs/utils/typedAsyncLocalStorage.js +0 -18
  146. package/dist/commonjs/utils/typedAsyncLocalStorage.js.map +0 -1
  147. package/dist/commonjs/utils.d.ts +0 -1
  148. package/dist/commonjs/utils.js +0 -11
  149. package/dist/commonjs/utils.js.map +0 -1
  150. package/dist/esm/apiClient.d.ts +0 -727
  151. package/dist/esm/apiClient.js +0 -687
  152. package/dist/esm/apiClient.js.map +0 -1
  153. package/dist/esm/concurrencyLimit.d.ts +0 -10
  154. package/dist/esm/concurrencyLimit.js +0 -13
  155. package/dist/esm/concurrencyLimit.js.map +0 -1
  156. package/dist/esm/errors.d.ts +0 -66
  157. package/dist/esm/errors.js +0 -95
  158. package/dist/esm/errors.js.map +0 -1
  159. package/dist/esm/httpEndpoint.d.ts +0 -87
  160. package/dist/esm/httpEndpoint.js +0 -125
  161. package/dist/esm/httpEndpoint.js.map +0 -1
  162. package/dist/esm/index.d.ts +0 -23
  163. package/dist/esm/index.js +0 -35
  164. package/dist/esm/index.js.map +0 -1
  165. package/dist/esm/integrations.d.ts +0 -11
  166. package/dist/esm/integrations.js +0 -2
  167. package/dist/esm/integrations.js.map +0 -1
  168. package/dist/esm/io.d.ts +0 -441
  169. package/dist/esm/io.js +0 -1159
  170. package/dist/esm/io.js.map +0 -1
  171. package/dist/esm/ioWithIntegrations.d.ts +0 -4
  172. package/dist/esm/ioWithIntegrations.js +0 -29
  173. package/dist/esm/ioWithIntegrations.js.map +0 -1
  174. package/dist/esm/job.d.ts +0 -96
  175. package/dist/esm/job.js +0 -206
  176. package/dist/esm/job.js.map +0 -1
  177. package/dist/esm/retry.d.ts +0 -20
  178. package/dist/esm/retry.js +0 -19
  179. package/dist/esm/retry.js.map +0 -1
  180. package/dist/esm/runLocalStorage.d.ts +0 -8
  181. package/dist/esm/runLocalStorage.js +0 -3
  182. package/dist/esm/runLocalStorage.js.map +0 -1
  183. package/dist/esm/security.d.ts +0 -18
  184. package/dist/esm/security.js +0 -34
  185. package/dist/esm/security.js.map +0 -1
  186. package/dist/esm/status.d.ts +0 -19
  187. package/dist/esm/status.js +0 -34
  188. package/dist/esm/status.js.map +0 -1
  189. package/dist/esm/store/keyValueStore.d.ts +0 -17
  190. package/dist/esm/store/keyValueStore.js +0 -134
  191. package/dist/esm/store/keyValueStore.js.map +0 -1
  192. package/dist/esm/store/keyValueStoreClient.d.ts +0 -19
  193. package/dist/esm/store/keyValueStoreClient.js +0 -61
  194. package/dist/esm/store/keyValueStoreClient.js.map +0 -1
  195. package/dist/esm/triggerClient.d.ts +0 -288
  196. package/dist/esm/triggerClient.js +0 -1359
  197. package/dist/esm/triggerClient.js.map +0 -1
  198. package/dist/esm/triggers/dynamic.d.ts +0 -56
  199. package/dist/esm/triggers/dynamic.js +0 -93
  200. package/dist/esm/triggers/dynamic.js.map +0 -1
  201. package/dist/esm/triggers/eventTrigger.d.ts +0 -58
  202. package/dist/esm/triggers/eventTrigger.js +0 -64
  203. package/dist/esm/triggers/eventTrigger.js.map +0 -1
  204. package/dist/esm/triggers/externalSource.d.ts +0 -148
  205. package/dist/esm/triggers/externalSource.js +0 -100
  206. package/dist/esm/triggers/externalSource.js.map +0 -1
  207. package/dist/esm/triggers/invokeTrigger.d.ts +0 -39
  208. package/dist/esm/triggers/invokeTrigger.js +0 -53
  209. package/dist/esm/triggers/invokeTrigger.js.map +0 -1
  210. package/dist/esm/triggers/notifications.d.ts +0 -111
  211. package/dist/esm/triggers/notifications.js +0 -94
  212. package/dist/esm/triggers/notifications.js.map +0 -1
  213. package/dist/esm/triggers/scheduled.d.ts +0 -145
  214. package/dist/esm/triggers/scheduled.js +0 -197
  215. package/dist/esm/triggers/scheduled.js.map +0 -1
  216. package/dist/esm/triggers/webhook.d.ts +0 -143
  217. package/dist/esm/triggers/webhook.js +0 -128
  218. package/dist/esm/triggers/webhook.js.map +0 -1
  219. package/dist/esm/typed-emitter.d.ts +0 -37
  220. package/dist/esm/typed-emitter.js +0 -2
  221. package/dist/esm/typed-emitter.js.map +0 -1
  222. package/dist/esm/types.d.ts +0 -204
  223. package/dist/esm/types.js +0 -19
  224. package/dist/esm/types.js.map +0 -1
  225. package/dist/esm/utils/formatSchemaErrors.d.ts +0 -3
  226. package/dist/esm/utils/formatSchemaErrors.js +0 -7
  227. package/dist/esm/utils/formatSchemaErrors.js.map +0 -1
  228. package/dist/esm/utils/typedAsyncLocalStorage.d.ts +0 -6
  229. package/dist/esm/utils/typedAsyncLocalStorage.js +0 -14
  230. package/dist/esm/utils/typedAsyncLocalStorage.js.map +0 -1
  231. package/dist/esm/utils.d.ts +0 -1
  232. package/dist/esm/utils.js +0 -8
  233. package/dist/esm/utils.js.map +0 -1
@@ -1,17 +1,287 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.wait = void 0;
3
+ exports.wait = exports.WaitpointTimeoutError = void 0;
4
4
  const v3_1 = require("@trigger.dev/core/v3");
5
5
  const tracer_js_1 = require("./tracer.js");
6
+ const ioSerialization_1 = require("@trigger.dev/core/v3/utils/ioSerialization");
7
+ const api_1 = require("@opentelemetry/api");
8
+ /**
9
+ * This creates a waitpoint token.
10
+ * You can use this to pause a run until you complete the waitpoint (or it times out).
11
+ *
12
+ * @example
13
+ *
14
+ * ```ts
15
+ * const token = await wait.createToken({
16
+ * idempotencyKey: `approve-document-${documentId}`,
17
+ * timeout: "24h",
18
+ * tags: [`document-${documentId}`],
19
+ * });
20
+ *
21
+ * // Later, in a different part of your codebase, you can complete the waitpoint
22
+ * await wait.completeToken(token, {
23
+ * status: "approved",
24
+ * comment: "Looks good to me!",
25
+ * });
26
+ * ```
27
+ *
28
+ * @param options - The options for the waitpoint token.
29
+ * @param requestOptions - The request options for the waitpoint token.
30
+ * @returns The waitpoint token.
31
+ */
32
+ function createToken(options, requestOptions) {
33
+ const apiClient = v3_1.apiClientManager.clientOrThrow();
34
+ const $requestOptions = (0, v3_1.mergeRequestOptions)({
35
+ tracer: tracer_js_1.tracer,
36
+ name: "wait.createToken()",
37
+ icon: "wait-token",
38
+ attributes: {
39
+ idempotencyKey: options?.idempotencyKey,
40
+ idempotencyKeyTTL: options?.idempotencyKeyTTL,
41
+ timeout: options?.timeout
42
+ ? typeof options.timeout === "string"
43
+ ? options.timeout
44
+ : options.timeout.toISOString()
45
+ : undefined,
46
+ tags: options?.tags,
47
+ },
48
+ onResponseBody: (body, span) => {
49
+ span.setAttribute("id", body.id);
50
+ span.setAttribute("isCached", body.isCached);
51
+ },
52
+ }, requestOptions);
53
+ return apiClient.createWaitpointToken(options ?? {}, $requestOptions);
54
+ }
55
+ /**
56
+ * Lists waitpoint tokens with optional filtering and pagination.
57
+ * You can iterate over all the items in the result using a for-await-of loop (you don't need to think about pagination).
58
+ *
59
+ * @example
60
+ * Basic usage:
61
+ * ```ts
62
+ * // List all tokens
63
+ * for await (const token of wait.listTokens()) {
64
+ * console.log("Token ID:", token.id);
65
+ * }
66
+ * ```
67
+ *
68
+ * @example
69
+ * With filters:
70
+ * ```ts
71
+ * // List completed tokens from the last 24 hours with specific tags
72
+ * for await (const token of wait.listTokens({
73
+ * status: "COMPLETED",
74
+ * period: "24h",
75
+ * tags: ["important", "approval"],
76
+ * limit: 50
77
+ * })) {
78
+ * console.log("Token ID:", token.id);
79
+ * }
80
+ * ```
81
+ *
82
+ * @param params - Optional query parameters for filtering and pagination
83
+ * @param params.status - Filter by token status
84
+ * @param params.idempotencyKey - Filter by idempotency key
85
+ * @param params.tags - Filter by tags
86
+ * @param params.period - Filter by time period (e.g. "24h", "7d")
87
+ * @param params.from - Filter by start date
88
+ * @param params.to - Filter by end date
89
+ * @param params.limit - Number of items per page
90
+ * @param params.after - Cursor for next page
91
+ * @param params.before - Cursor for previous page
92
+ * @param requestOptions - Additional API request options
93
+ * @returns Waitpoint tokens that can easily be iterated over using a for-await-of loop
94
+ */
95
+ function listTokens(params, requestOptions) {
96
+ const apiClient = v3_1.apiClientManager.clientOrThrow();
97
+ const $requestOptions = (0, v3_1.mergeRequestOptions)({
98
+ tracer: tracer_js_1.tracer,
99
+ name: "wait.listTokens()",
100
+ icon: "wait-token",
101
+ attributes: {
102
+ ...(0, v3_1.flattenAttributes)(params),
103
+ },
104
+ }, requestOptions);
105
+ return apiClient.listWaitpointTokens(params, $requestOptions);
106
+ }
107
+ /**
108
+ * Retrieves a waitpoint token by its ID.
109
+ *
110
+ * @example
111
+ * ```ts
112
+ * const token = await wait.retrieveToken("waitpoint_12345678910");
113
+ * console.log("Token status:", token.status);
114
+ * console.log("Token tags:", token.tags);
115
+ * ```
116
+ *
117
+ * @param token - The token to retrieve.
118
+ * This can be a string token ID or an object with an `id` property.
119
+ * @param requestOptions - Optional API request options.
120
+ * @returns The waitpoint token details, including the output or error if the waitpoint is completed or timed out.
121
+ */
122
+ async function retrieveToken(token, requestOptions) {
123
+ const apiClient = v3_1.apiClientManager.clientOrThrow();
124
+ const $tokenId = typeof token === "string" ? token : token.id;
125
+ const $requestOptions = (0, v3_1.mergeRequestOptions)({
126
+ tracer: tracer_js_1.tracer,
127
+ name: "wait.retrieveToken()",
128
+ icon: "wait-token",
129
+ attributes: {
130
+ id: $tokenId,
131
+ ...(0, v3_1.accessoryAttributes)({
132
+ items: [
133
+ {
134
+ text: $tokenId,
135
+ variant: "normal",
136
+ },
137
+ ],
138
+ style: "codepath",
139
+ }),
140
+ },
141
+ onResponseBody: (body, span) => {
142
+ span.setAttribute("id", body.id);
143
+ span.setAttribute("status", body.status);
144
+ if (body.completedAt) {
145
+ span.setAttribute("completedAt", body.completedAt.toISOString());
146
+ }
147
+ if (body.timeoutAt) {
148
+ span.setAttribute("timeoutAt", body.timeoutAt.toISOString());
149
+ }
150
+ if (body.idempotencyKey) {
151
+ span.setAttribute("idempotencyKey", body.idempotencyKey);
152
+ }
153
+ if (body.idempotencyKeyExpiresAt) {
154
+ span.setAttribute("idempotencyKeyExpiresAt", body.idempotencyKeyExpiresAt.toISOString());
155
+ }
156
+ span.setAttribute("tags", body.tags);
157
+ span.setAttribute("createdAt", body.createdAt.toISOString());
158
+ },
159
+ }, requestOptions);
160
+ const result = await apiClient.retrieveWaitpointToken($tokenId, $requestOptions);
161
+ const data = result.output
162
+ ? await (0, ioSerialization_1.conditionallyImportAndParsePacket)({ data: result.output, dataType: result.outputType ?? "application/json" }, apiClient)
163
+ : undefined;
164
+ let error = undefined;
165
+ let output = undefined;
166
+ if (result.outputIsError) {
167
+ error = new WaitpointTimeoutError(data.message);
168
+ }
169
+ else {
170
+ output = data;
171
+ }
172
+ return {
173
+ id: result.id,
174
+ status: result.status,
175
+ completedAt: result.completedAt,
176
+ timeoutAt: result.timeoutAt,
177
+ idempotencyKey: result.idempotencyKey,
178
+ idempotencyKeyExpiresAt: result.idempotencyKeyExpiresAt,
179
+ tags: result.tags,
180
+ createdAt: result.createdAt,
181
+ output,
182
+ error,
183
+ };
184
+ }
185
+ /**
186
+ * This completes a waitpoint token.
187
+ * You can use this to complete a waitpoint token that you created earlier.
188
+ *
189
+ * @example
190
+ *
191
+ * ```ts
192
+ * await wait.completeToken(token, {
193
+ * status: "approved",
194
+ * comment: "Looks good to me!",
195
+ * });
196
+ * ```
197
+ *
198
+ * @param token - The token to complete.
199
+ * @param data - The data to complete the waitpoint with.
200
+ * @param requestOptions - The request options for the waitpoint token.
201
+ * @returns The waitpoint token.
202
+ */
203
+ async function completeToken(
204
+ /**
205
+ * The token to complete.
206
+ * This can be a string token ID or an object with an `id` property.
207
+ */
208
+ token,
209
+ /**
210
+ * The data to complete the waitpoint with.
211
+ * This will be returned when you wait for the token.
212
+ */
213
+ data, requestOptions) {
214
+ const apiClient = v3_1.apiClientManager.clientOrThrow();
215
+ const tokenId = typeof token === "string" ? token : token.id;
216
+ const $requestOptions = (0, v3_1.mergeRequestOptions)({
217
+ tracer: tracer_js_1.tracer,
218
+ name: "wait.completeToken()",
219
+ icon: "wait-token",
220
+ attributes: {
221
+ id: tokenId,
222
+ },
223
+ onResponseBody: (body, span) => {
224
+ span.setAttribute("success", body.success);
225
+ },
226
+ }, requestOptions);
227
+ return apiClient.completeWaitpointToken(tokenId, { data }, $requestOptions);
228
+ }
229
+ class WaitpointTimeoutError extends Error {
230
+ constructor(message) {
231
+ super(message);
232
+ this.name = "WaitpointTimeoutError";
233
+ }
234
+ }
235
+ exports.WaitpointTimeoutError = WaitpointTimeoutError;
236
+ const DURATION_WAIT_CHARGE_THRESHOLD_MS = 5000;
237
+ function printWaitBelowThreshold() {
238
+ console.warn(`Waits of ${DURATION_WAIT_CHARGE_THRESHOLD_MS / 1000}s or less count towards compute usage.`);
239
+ }
6
240
  exports.wait = {
7
241
  for: async (options) => {
242
+ const ctx = v3_1.taskContext.ctx;
243
+ if (!ctx) {
244
+ throw new Error("wait.forToken can only be used from inside a task.run()");
245
+ }
246
+ const apiClient = v3_1.apiClientManager.clientOrThrow();
247
+ const start = Date.now();
248
+ const durationInMs = calculateDurationInMs(options);
249
+ if (durationInMs <= DURATION_WAIT_CHARGE_THRESHOLD_MS) {
250
+ return tracer_js_1.tracer.startActiveSpan(`wait.for()`, async (span) => {
251
+ if (durationInMs <= 0) {
252
+ return;
253
+ }
254
+ printWaitBelowThreshold();
255
+ await new Promise((resolve) => setTimeout(resolve, durationInMs));
256
+ }, {
257
+ attributes: {
258
+ [v3_1.SemanticInternalAttributes.STYLE_ICON]: "wait",
259
+ ...(0, v3_1.accessoryAttributes)({
260
+ items: [
261
+ {
262
+ text: nameForWaitOptions(options),
263
+ variant: "normal",
264
+ },
265
+ ],
266
+ style: "codepath",
267
+ }),
268
+ },
269
+ });
270
+ }
271
+ const date = new Date(start + durationInMs);
272
+ const result = await apiClient.waitForDuration(ctx.run.id, {
273
+ date: date,
274
+ idempotencyKey: options.idempotencyKey,
275
+ idempotencyKeyTTL: options.idempotencyKeyTTL,
276
+ releaseConcurrency: options.releaseConcurrency,
277
+ });
8
278
  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);
279
+ await v3_1.runtime.waitUntil(result.waitpoint.id, date);
12
280
  }, {
13
281
  attributes: {
14
282
  [v3_1.SemanticInternalAttributes.STYLE_ICON]: "wait",
283
+ [v3_1.SemanticInternalAttributes.ENTITY_TYPE]: "waitpoint",
284
+ [v3_1.SemanticInternalAttributes.ENTITY_ID]: result.waitpoint.id,
15
285
  ...(0, v3_1.accessoryAttributes)({
16
286
  items: [
17
287
  {
@@ -25,16 +295,57 @@ exports.wait = {
25
295
  });
26
296
  },
27
297
  until: async (options) => {
298
+ const ctx = v3_1.taskContext.ctx;
299
+ if (!ctx) {
300
+ throw new Error("wait.forToken can only be used from inside a task.run()");
301
+ }
302
+ // Calculate duration in ms
303
+ const durationInMs = options.date.getTime() - Date.now();
304
+ if (durationInMs <= DURATION_WAIT_CHARGE_THRESHOLD_MS) {
305
+ return tracer_js_1.tracer.startActiveSpan(`wait.for()`, async (span) => {
306
+ if (durationInMs === 0) {
307
+ return;
308
+ }
309
+ if (durationInMs < 0) {
310
+ if (options.throwIfInThePast) {
311
+ throw new Error("Date is in the past");
312
+ }
313
+ return;
314
+ }
315
+ printWaitBelowThreshold();
316
+ await new Promise((resolve) => setTimeout(resolve, durationInMs));
317
+ }, {
318
+ attributes: {
319
+ [v3_1.SemanticInternalAttributes.STYLE_ICON]: "wait",
320
+ ...(0, v3_1.accessoryAttributes)({
321
+ items: [
322
+ {
323
+ text: options.date.toISOString(),
324
+ variant: "normal",
325
+ },
326
+ ],
327
+ style: "codepath",
328
+ }),
329
+ },
330
+ });
331
+ }
332
+ const apiClient = v3_1.apiClientManager.clientOrThrow();
333
+ const result = await apiClient.waitForDuration(ctx.run.id, {
334
+ date: options.date,
335
+ idempotencyKey: options.idempotencyKey,
336
+ idempotencyKeyTTL: options.idempotencyKeyTTL,
337
+ releaseConcurrency: options.releaseConcurrency,
338
+ });
28
339
  return tracer_js_1.tracer.startActiveSpan(`wait.until()`, async (span) => {
29
- const start = Date.now();
30
340
  if (options.throwIfInThePast && options.date < new Date()) {
31
341
  throw new Error("Date is in the past");
32
342
  }
33
- const durationInMs = options.date.getTime() - start;
34
- await v3_1.runtime.waitForDuration(durationInMs);
343
+ await v3_1.runtime.waitUntil(result.waitpoint.id, options.date);
35
344
  }, {
36
345
  attributes: {
37
346
  [v3_1.SemanticInternalAttributes.STYLE_ICON]: "wait",
347
+ [v3_1.SemanticInternalAttributes.ENTITY_TYPE]: "waitpoint",
348
+ [v3_1.SemanticInternalAttributes.ENTITY_ID]: result.waitpoint.id,
38
349
  ...(0, v3_1.accessoryAttributes)({
39
350
  items: [
40
351
  {
@@ -47,6 +358,95 @@ exports.wait = {
47
358
  },
48
359
  });
49
360
  },
361
+ createToken,
362
+ listTokens,
363
+ completeToken,
364
+ retrieveToken,
365
+ /**
366
+ * This waits for a waitpoint token to be completed.
367
+ * It can only be used inside a task.run() block.
368
+ *
369
+ * @example
370
+ *
371
+ * ```ts
372
+ * const result = await wait.forToken<typeof ApprovalData>(token);
373
+ * if (!result.ok) {
374
+ * // The waitpoint timed out
375
+ * throw result.error;
376
+ * }
377
+ *
378
+ * // This will be the type ApprovalData
379
+ * const approval = result.output;
380
+ * ```
381
+ *
382
+ * @param token - The token to wait for.
383
+ * @param options - The options for the waitpoint token.
384
+ * @returns The waitpoint token.
385
+ */
386
+ forToken: async (
387
+ /**
388
+ * The token to wait for.
389
+ * This can be a string token ID or an object with an `id` property.
390
+ */
391
+ token,
392
+ /**
393
+ * The options for the waitpoint token.
394
+ */
395
+ options) => {
396
+ const ctx = v3_1.taskContext.ctx;
397
+ if (!ctx) {
398
+ throw new Error("wait.forToken can only be used from inside a task.run()");
399
+ }
400
+ const apiClient = v3_1.apiClientManager.clientOrThrow();
401
+ const tokenId = typeof token === "string" ? token : token.id;
402
+ return tracer_js_1.tracer.startActiveSpan(`wait.forToken()`, async (span) => {
403
+ const response = await apiClient.waitForWaitpointToken({
404
+ runFriendlyId: ctx.run.id,
405
+ waitpointFriendlyId: tokenId,
406
+ releaseConcurrency: options?.releaseConcurrency,
407
+ });
408
+ if (!response.success) {
409
+ throw new Error(`Failed to wait for wait token ${tokenId}`);
410
+ }
411
+ const result = await v3_1.runtime.waitUntil(tokenId);
412
+ const data = result.output
413
+ ? await (0, ioSerialization_1.conditionallyImportAndParsePacket)({ data: result.output, dataType: result.outputType ?? "application/json" }, apiClient)
414
+ : undefined;
415
+ if (result.ok) {
416
+ return {
417
+ ok: result.ok,
418
+ output: data,
419
+ };
420
+ }
421
+ else {
422
+ const error = new WaitpointTimeoutError(data.message);
423
+ span.recordException(error);
424
+ span.setStatus({
425
+ code: api_1.SpanStatusCode.ERROR,
426
+ });
427
+ return {
428
+ ok: result.ok,
429
+ error,
430
+ };
431
+ }
432
+ }, {
433
+ attributes: {
434
+ [v3_1.SemanticInternalAttributes.STYLE_ICON]: "wait",
435
+ [v3_1.SemanticInternalAttributes.ENTITY_TYPE]: "waitpoint",
436
+ [v3_1.SemanticInternalAttributes.ENTITY_ID]: tokenId,
437
+ id: tokenId,
438
+ ...(0, v3_1.accessoryAttributes)({
439
+ items: [
440
+ {
441
+ text: tokenId,
442
+ variant: "normal",
443
+ },
444
+ ],
445
+ style: "codepath",
446
+ }),
447
+ },
448
+ });
449
+ },
50
450
  };
51
451
  function nameForWaitOptions(options) {
52
452
  if ("seconds" in options) {
@@ -1 +1 @@
1
- {"version":3,"file":"wait.js","sourceRoot":"","sources":["../../../src/v3/wait.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wait.js","sourceRoot":"","sources":["../../../src/v3/wait.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.VERSION = void 0;
4
- exports.VERSION = "3.3.17";
4
+ exports.VERSION = "4.0.0-v4-beta.1";
5
5
  //# sourceMappingURL=version.js.map
@@ -0,0 +1,23 @@
1
+ import { type inferSchemaIn, type TaskSchema, type TaskWithSchema } from "@trigger.dev/core/v3";
2
+ import { Schema, ToolExecutionOptions } from "ai";
3
+ export type ToolCallExecutionOptions = Omit<ToolExecutionOptions, "abortSignal">;
4
+ type ToolResultContent = Array<{
5
+ type: "text";
6
+ text: string;
7
+ } | {
8
+ type: "image";
9
+ data: string;
10
+ mimeType?: string;
11
+ }>;
12
+ export type ToolOptions<TResult> = {
13
+ experimental_toToolResultContent?: (result: TResult) => ToolResultContent;
14
+ };
15
+ declare function toolFromTask<TIdentifier extends string, TTaskSchema extends TaskSchema | undefined = undefined, TOutput = unknown>(task: TaskWithSchema<TIdentifier, TTaskSchema, TOutput>, options?: ToolOptions<TOutput>): import("ai").Tool<Schema<inferSchemaIn<NonNullable<TTaskSchema>, unknown>>, TOutput> & {
16
+ execute: (args: inferSchemaIn<NonNullable<TTaskSchema>, unknown>, options: ToolExecutionOptions) => PromiseLike<TOutput>;
17
+ };
18
+ declare function getToolOptionsFromMetadata(): ToolCallExecutionOptions | undefined;
19
+ export declare const ai: {
20
+ tool: typeof toolFromTask;
21
+ currentToolOptions: typeof getToolOptionsFromMetadata;
22
+ };
23
+ export {};
@@ -0,0 +1,47 @@
1
+ import { isSchemaZodEsque, } from "@trigger.dev/core/v3";
2
+ import { jsonSchema, tool, zodSchema } from "ai";
3
+ import { metadata } from "./metadata.js";
4
+ const METADATA_KEY = "tool.execute.options";
5
+ function toolFromTask(task, options) {
6
+ if (!task.schema) {
7
+ throw new Error("Cannot convert schemaTask to a tool because the task has no schema. Make sure the schema used in the task is either zod, arktype, or another supported schema.");
8
+ }
9
+ return tool({
10
+ description: task.description,
11
+ parameters: convertTaskSchemaToToolParameters(task.schema),
12
+ execute: async (args, options) => {
13
+ const serializedOptions = options ? JSON.parse(JSON.stringify(options)) : undefined;
14
+ return await task
15
+ .triggerAndWait(args, {
16
+ metadata: {
17
+ [METADATA_KEY]: serializedOptions,
18
+ },
19
+ })
20
+ .unwrap();
21
+ },
22
+ ...options,
23
+ });
24
+ }
25
+ function getToolOptionsFromMetadata() {
26
+ const tool = metadata.get(METADATA_KEY);
27
+ if (!tool) {
28
+ return undefined;
29
+ }
30
+ return tool;
31
+ }
32
+ function convertTaskSchemaToToolParameters(schema) {
33
+ // If TaskSchema is ZodEsque, use ai.zodSchema to convert it to a Schema
34
+ if (isSchemaZodEsque(schema)) {
35
+ return zodSchema(schema);
36
+ }
37
+ // If TaskSchema is ArkTypeEsque, use ai.jsonSchema to convert it to a Schema
38
+ if ("toJsonSchema" in schema && typeof schema.toJsonSchema === "function") {
39
+ return jsonSchema(schema.toJsonSchema());
40
+ }
41
+ throw new Error("Cannot convert schemaTask to a tool. Make sure the schema used in the task is either zod, arktype, or another supported schema.");
42
+ }
43
+ export const ai = {
44
+ tool: toolFromTask,
45
+ currentToolOptions: getToolOptionsFromMetadata,
46
+ };
47
+ //# sourceMappingURL=ai.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai.js","sourceRoot":"","sources":["../../../src/v3/ai.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,GAIjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,UAAU,EAAU,IAAI,EAAwB,SAAS,EAAE,MAAM,IAAI,CAAC;AAC/E,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,MAAM,YAAY,GAAG,sBAAsB,CAAC;AAoB5C,SAAS,YAAY,CAInB,IAAuD,EAAE,OAA8B;IACvF,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CACb,gKAAgK,CACjK,CAAC;IACJ,CAAC;IAED,OAAO,IAAI,CAAC;QACV,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,UAAU,EAAE,iCAAiC,CAAC,IAAI,CAAC,MAAM,CAAC;QAC1D,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;YAC/B,MAAM,iBAAiB,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAEpF,OAAO,MAAM,IAAI;iBACd,cAAc,CAAC,IAAI,EAAE;gBACpB,QAAQ,EAAE;oBACR,CAAC,YAAY,CAAC,EAAE,iBAAiB;iBAClC;aACF,CAAC;iBACD,MAAM,EAAE,CAAC;QACd,CAAC;QACD,GAAG,OAAO;KACX,CAAC,CAAC;AACL,CAAC;AAED,SAAS,0BAA0B;IACjC,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IACxC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,IAAgC,CAAC;AAC1C,CAAC;AAED,SAAS,iCAAiC,CACxC,MAAmB;IAEnB,wEAAwE;IACxE,IAAI,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7B,OAAO,SAAS,CAAC,MAAa,CAAC,CAAC;IAClC,CAAC;IAED,6EAA6E;IAC7E,IAAI,cAAc,IAAI,MAAM,IAAI,OAAO,MAAM,CAAC,YAAY,KAAK,UAAU,EAAE,CAAC;QAC1E,OAAO,UAAU,CAAE,MAAc,CAAC,YAAY,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,IAAI,KAAK,CACb,iIAAiI,CAClI,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,EAAE,GAAG;IAChB,IAAI,EAAE,YAAY;IAClB,kBAAkB,EAAE,0BAA0B;CAC/C,CAAC"}
@@ -44,12 +44,13 @@ type PublicTokenPermissionProperties = {
44
44
  * Grant access to specific batch runs
45
45
  */
46
46
  batch?: string | string[];
47
+ /**
48
+ * Grant access to specific waitpoints
49
+ */
50
+ waitpoints?: string | string[];
47
51
  };
48
52
  export type PublicTokenPermissions = {
49
53
  read?: PublicTokenPermissionProperties;
50
- /**
51
- * @deprecated use trigger instead
52
- */
53
54
  write?: PublicTokenPermissionProperties;
54
55
  /**
55
56
  * Use auth.createTriggerPublicToken
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/v3/auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/v3/auth.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import { type AnyOnStartHookFunction, type TaskStartHookParams, type OnStartHookFunction, type AnyOnFailureHookFunction, type AnyOnSuccessHookFunction, type AnyOnCompleteHookFunction, type TaskCompleteResult, type AnyOnWaitHookFunction, type AnyOnResumeHookFunction, type AnyOnCatchErrorHookFunction, type AnyOnMiddlewareHookFunction } from "@trigger.dev/core/v3";
2
+ export type { AnyOnStartHookFunction, TaskStartHookParams, OnStartHookFunction, AnyOnFailureHookFunction, AnyOnSuccessHookFunction, AnyOnCompleteHookFunction, TaskCompleteResult, AnyOnWaitHookFunction, AnyOnResumeHookFunction, AnyOnCatchErrorHookFunction, AnyOnMiddlewareHookFunction, };
3
+ export declare function onStart(name: string, fn: AnyOnStartHookFunction): void;
4
+ export declare function onStart(fn: AnyOnStartHookFunction): void;
5
+ export declare function onFailure(name: string, fn: AnyOnFailureHookFunction): void;
6
+ export declare function onFailure(fn: AnyOnFailureHookFunction): void;
7
+ export declare function onSuccess(name: string, fn: AnyOnSuccessHookFunction): void;
8
+ export declare function onSuccess(fn: AnyOnSuccessHookFunction): void;
9
+ export declare function onComplete(name: string, fn: AnyOnCompleteHookFunction): void;
10
+ export declare function onComplete(fn: AnyOnCompleteHookFunction): void;
11
+ export declare function onWait(name: string, fn: AnyOnWaitHookFunction): void;
12
+ export declare function onWait(fn: AnyOnWaitHookFunction): void;
13
+ export declare function onResume(name: string, fn: AnyOnResumeHookFunction): void;
14
+ export declare function onResume(fn: AnyOnResumeHookFunction): void;
15
+ /** @deprecated Use onCatchError instead */
16
+ export declare function onHandleError(name: string, fn: AnyOnCatchErrorHookFunction): void;
17
+ /** @deprecated Use onCatchError instead */
18
+ export declare function onHandleError(fn: AnyOnCatchErrorHookFunction): void;
19
+ export declare function onCatchError(name: string, fn: AnyOnCatchErrorHookFunction): void;
20
+ export declare function onCatchError(fn: AnyOnCatchErrorHookFunction): void;
21
+ export declare function middleware(name: string, fn: AnyOnMiddlewareHookFunction): void;
22
+ export declare function middleware(fn: AnyOnMiddlewareHookFunction): void;