@trigger.dev/sdk 3.3.17 → 4.0.0-v4-beta.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 (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,39 +0,0 @@
1
- import { TriggerMetadata } from "@trigger.dev/core";
2
- import { TypeOf, ZodType, z } from "zod";
3
- import { Job } from "../job.js";
4
- import { TriggerClient } from "../triggerClient.js";
5
- import { EventSpecification, EventSpecificationExample, Trigger } from "../types.js";
6
- /** Configuration options for an InvokeTrigger */
7
- type InvokeTriggerOptions<TSchema extends ZodType = z.ZodTypeAny> = {
8
- /** A [Zod](https://trigger.dev/docs/documentation/guides/zod) schema that defines the shape of the event payload.
9
- * The default is `z.any()` which is `any`.
10
- * */
11
- schema?: TSchema;
12
- examples?: EventSpecificationExample[];
13
- };
14
- export declare class InvokeTrigger<TSchema extends ZodType = z.ZodTypeAny> implements Trigger<EventSpecification<TypeOf<TSchema>, z.input<TSchema>>> {
15
- #private;
16
- constructor(options: InvokeTriggerOptions<TSchema>);
17
- toJSON(): TriggerMetadata;
18
- get event(): {
19
- name: string;
20
- title: string;
21
- source: string;
22
- examples: {
23
- name: string;
24
- id: string;
25
- payload?: any;
26
- icon?: string | undefined;
27
- }[];
28
- icon: string;
29
- parsePayload: (rawPayload: unknown) => any;
30
- parseInvokePayload: (rawPayload: unknown) => any;
31
- };
32
- attachToJob(triggerClient: TriggerClient, job: Job<Trigger<EventSpecification<ZodType<TSchema>>>, any>): void;
33
- get preprocessRuns(): boolean;
34
- verifyPayload(): Promise<{
35
- success: true;
36
- }>;
37
- }
38
- export declare function invokeTrigger<TSchema extends ZodType = z.ZodTypeAny>(options?: InvokeTriggerOptions<TSchema>): Trigger<EventSpecification<TypeOf<TSchema>, z.input<TSchema>>>;
39
- export {};
@@ -1,53 +0,0 @@
1
- import { ParsedPayloadSchemaError } from "../errors.js";
2
- import { formatSchemaErrors } from "../utils/formatSchemaErrors.js";
3
- export class InvokeTrigger {
4
- #options;
5
- constructor(options) {
6
- this.#options = options;
7
- }
8
- toJSON() {
9
- return {
10
- type: "invoke",
11
- };
12
- }
13
- get event() {
14
- return {
15
- name: "invoke",
16
- title: "Manual Invoke",
17
- source: "trigger.dev",
18
- examples: this.#options.examples ?? [],
19
- icon: "trigger",
20
- parsePayload: (rawPayload) => {
21
- if (this.#options.schema) {
22
- const results = this.#options.schema.safeParse(rawPayload);
23
- if (!results.success) {
24
- throw new ParsedPayloadSchemaError(formatSchemaErrors(results.error.issues));
25
- }
26
- return results.data;
27
- }
28
- return rawPayload;
29
- },
30
- parseInvokePayload: (rawPayload) => {
31
- if (this.#options.schema) {
32
- const results = this.#options.schema.safeParse(rawPayload);
33
- if (!results.success) {
34
- throw new ParsedPayloadSchemaError(formatSchemaErrors(results.error.issues));
35
- }
36
- return results.data;
37
- }
38
- return rawPayload;
39
- },
40
- };
41
- }
42
- attachToJob(triggerClient, job) { }
43
- get preprocessRuns() {
44
- return false;
45
- }
46
- async verifyPayload() {
47
- return { success: true };
48
- }
49
- }
50
- export function invokeTrigger(options) {
51
- return new InvokeTrigger(options ?? {});
52
- }
53
- //# sourceMappingURL=invokeTrigger.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"invokeTrigger.js","sourceRoot":"","sources":["../../../src/triggers/invokeTrigger.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAC;AAIxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAWpE,MAAM,OAAO,aAAa;IAGxB,QAAQ,CAAgC;IAExC,YAAY,OAAsC;QAChD,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,CAAC;IAED,MAAM;QACJ,OAAO;YACL,IAAI,EAAE,QAAQ;SACf,CAAC;IACJ,CAAC;IAED,IAAI,KAAK;QACP,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,eAAe;YACtB,MAAM,EAAE,aAAa;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,IAAI,EAAE;YACtC,IAAI,EAAE,SAAS;YACf,YAAY,EAAE,CAAC,UAAmB,EAAE,EAAE;gBACpC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;oBACzB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;oBAE3D,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;wBACrB,MAAM,IAAI,wBAAwB,CAAC,kBAAkB,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;oBAC/E,CAAC;oBAED,OAAO,OAAO,CAAC,IAAI,CAAC;gBACtB,CAAC;gBAED,OAAO,UAAiB,CAAC;YAC3B,CAAC;YACD,kBAAkB,EAAE,CAAC,UAAmB,EAAE,EAAE;gBAC1C,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;oBACzB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;oBAE3D,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;wBACrB,MAAM,IAAI,wBAAwB,CAAC,kBAAkB,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;oBAC/E,CAAC;oBAED,OAAO,OAAO,CAAC,IAAI,CAAC;gBACtB,CAAC;gBAED,OAAO,UAAiB,CAAC;YAC3B,CAAC;SACF,CAAC;IACJ,CAAC;IAED,WAAW,CACT,aAA4B,EAC5B,GAA4D,IACrD,CAAC;IAEV,IAAI,cAAc;QAChB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,OAAO,EAAE,OAAO,EAAE,IAAa,EAAE,CAAC;IACpC,CAAC;CACF;AAED,MAAM,UAAU,aAAa,CAC3B,OAAuC;IAEvC,OAAO,IAAI,aAAa,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;AAC1C,CAAC"}
@@ -1,111 +0,0 @@
1
- import { MissingConnectionNotificationPayload, MissingConnectionResolvedNotificationPayload, TriggerMetadata } from "@trigger.dev/core";
2
- import { TriggerIntegration } from "../integrations.js";
3
- import { Job } from "../job.js";
4
- import { TriggerClient } from "../triggerClient.js";
5
- import { EventSpecification, Trigger } from "../types.js";
6
- export declare function missingConnectionNotification(integrations: Array<TriggerIntegration>): MissingConnectionNotification;
7
- export declare function missingConnectionResolvedNotification(integrations: Array<TriggerIntegration>): MissingConnectionResolvedNotification;
8
- type MissingConnectionNotificationSpecification = EventSpecification<MissingConnectionNotificationPayload>;
9
- type MissingConnectionNotificationOptions = {
10
- integrations: Array<TriggerIntegration>;
11
- };
12
- export declare class MissingConnectionNotification implements Trigger<MissingConnectionNotificationSpecification> {
13
- private options;
14
- constructor(options: MissingConnectionNotificationOptions);
15
- get event(): {
16
- name: string;
17
- title: string;
18
- source: string;
19
- icon: string;
20
- parsePayload: (data: unknown, params?: Partial<import("zod").ParseParams>) => {
21
- type: "DEVELOPER";
22
- id: string;
23
- client: {
24
- scopes: string[];
25
- id: string;
26
- title: string;
27
- updatedAt: Date;
28
- createdAt: Date;
29
- };
30
- authorizationUrl: string;
31
- } | {
32
- type: "EXTERNAL";
33
- id: string;
34
- account: {
35
- id: string;
36
- metadata?: any;
37
- };
38
- client: {
39
- scopes: string[];
40
- id: string;
41
- title: string;
42
- updatedAt: Date;
43
- createdAt: Date;
44
- };
45
- authorizationUrl: string;
46
- };
47
- properties: {
48
- label: string;
49
- text: string;
50
- }[];
51
- };
52
- attachToJob(triggerClient: TriggerClient, job: Job<Trigger<MissingConnectionNotificationSpecification>, any>): void;
53
- get preprocessRuns(): boolean;
54
- verifyPayload(payload: ReturnType<MissingConnectionNotificationSpecification["parsePayload"]>): Promise<{
55
- success: true;
56
- }>;
57
- toJSON(): TriggerMetadata;
58
- }
59
- type MissingConnectionResolvedNotificationSpecification = EventSpecification<MissingConnectionResolvedNotificationPayload>;
60
- export declare class MissingConnectionResolvedNotification implements Trigger<MissingConnectionResolvedNotificationSpecification> {
61
- private options;
62
- constructor(options: MissingConnectionNotificationOptions);
63
- get event(): {
64
- name: string;
65
- title: string;
66
- source: string;
67
- icon: string;
68
- parsePayload: (data: unknown, params?: Partial<import("zod").ParseParams>) => {
69
- type: "DEVELOPER";
70
- id: string;
71
- client: {
72
- scopes: string[];
73
- id: string;
74
- title: string;
75
- updatedAt: Date;
76
- createdAt: Date;
77
- integrationIdentifier: string;
78
- integrationAuthMethod: string;
79
- };
80
- expiresAt: Date;
81
- } | {
82
- type: "EXTERNAL";
83
- id: string;
84
- account: {
85
- id: string;
86
- metadata?: any;
87
- };
88
- client: {
89
- scopes: string[];
90
- id: string;
91
- title: string;
92
- updatedAt: Date;
93
- createdAt: Date;
94
- integrationIdentifier: string;
95
- integrationAuthMethod: string;
96
- };
97
- expiresAt: Date;
98
- };
99
- properties: {
100
- label: string;
101
- text: string;
102
- }[];
103
- };
104
- attachToJob(triggerClient: TriggerClient, job: Job<Trigger<MissingConnectionResolvedNotificationSpecification>, any>): void;
105
- get preprocessRuns(): boolean;
106
- verifyPayload(payload: ReturnType<MissingConnectionResolvedNotificationSpecification["parsePayload"]>): Promise<{
107
- success: true;
108
- }>;
109
- toJSON(): TriggerMetadata;
110
- }
111
- export {};
@@ -1,94 +0,0 @@
1
- import { MISSING_CONNECTION_NOTIFICATION, MISSING_CONNECTION_RESOLVED_NOTIFICATION, MissingConnectionNotificationPayloadSchema, MissingConnectionResolvedNotificationPayloadSchema, } from "@trigger.dev/core";
2
- export function missingConnectionNotification(integrations) {
3
- return new MissingConnectionNotification({ integrations });
4
- }
5
- export function missingConnectionResolvedNotification(integrations) {
6
- return new MissingConnectionResolvedNotification({ integrations });
7
- }
8
- export class MissingConnectionNotification {
9
- options;
10
- constructor(options) {
11
- this.options = options;
12
- }
13
- get event() {
14
- return {
15
- name: MISSING_CONNECTION_NOTIFICATION,
16
- title: "Missing Connection Notification",
17
- source: "trigger.dev",
18
- icon: "connection-alert",
19
- parsePayload: MissingConnectionNotificationPayloadSchema.parse,
20
- properties: [
21
- {
22
- label: "Integrations",
23
- text: this.options.integrations.map((i) => i.id).join(", "),
24
- },
25
- ],
26
- };
27
- }
28
- attachToJob(triggerClient, job) { }
29
- get preprocessRuns() {
30
- return false;
31
- }
32
- async verifyPayload(payload) {
33
- return { success: true };
34
- }
35
- toJSON() {
36
- return {
37
- type: "static",
38
- title: this.event.title,
39
- rule: {
40
- event: this.event.name,
41
- source: "trigger.dev",
42
- payload: {
43
- client: {
44
- id: this.options.integrations.map((i) => i.id),
45
- },
46
- },
47
- },
48
- };
49
- }
50
- }
51
- export class MissingConnectionResolvedNotification {
52
- options;
53
- constructor(options) {
54
- this.options = options;
55
- }
56
- get event() {
57
- return {
58
- name: MISSING_CONNECTION_RESOLVED_NOTIFICATION,
59
- title: "Missing Connection Resolved Notification",
60
- source: "trigger.dev",
61
- icon: "connection-alert",
62
- parsePayload: MissingConnectionResolvedNotificationPayloadSchema.parse,
63
- properties: [
64
- {
65
- label: "Integrations",
66
- text: this.options.integrations.map((i) => i.id).join(", "),
67
- },
68
- ],
69
- };
70
- }
71
- attachToJob(triggerClient, job) { }
72
- get preprocessRuns() {
73
- return false;
74
- }
75
- async verifyPayload(payload) {
76
- return { success: true };
77
- }
78
- toJSON() {
79
- return {
80
- type: "static",
81
- title: this.event.title,
82
- rule: {
83
- event: this.event.name,
84
- source: "trigger.dev",
85
- payload: {
86
- client: {
87
- id: this.options.integrations.map((i) => i.id),
88
- },
89
- },
90
- },
91
- };
92
- }
93
- }
94
- //# sourceMappingURL=notifications.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"notifications.js","sourceRoot":"","sources":["../../../src/triggers/notifications.ts"],"names":[],"mappings":"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"}
@@ -1,145 +0,0 @@
1
- import { CronOptions, IntervalOptions, ScheduleMetadata, ScheduledPayload, TriggerMetadata } from "@trigger.dev/core";
2
- import { Job } from "../job.js";
3
- import { TriggerClient } from "../triggerClient.js";
4
- import { EventSpecification, Trigger } from "../types.js";
5
- type ScheduledEventSpecification = EventSpecification<ScheduledPayload>;
6
- export declare class IntervalTrigger implements Trigger<ScheduledEventSpecification> {
7
- private options;
8
- constructor(options: IntervalOptions);
9
- get event(): {
10
- name: string;
11
- title: string;
12
- source: string;
13
- icon: string;
14
- examples: {
15
- id: string;
16
- name: string;
17
- icon: string;
18
- payload: {
19
- ts: string;
20
- lastTimestamp: string;
21
- };
22
- }[];
23
- parsePayload: (data: unknown, params?: Partial<import("zod").ParseParams>) => {
24
- ts: Date;
25
- lastTimestamp?: Date | undefined;
26
- };
27
- properties: {
28
- label: string;
29
- text: string;
30
- }[];
31
- };
32
- attachToJob(triggerClient: TriggerClient, job: Job<Trigger<ScheduledEventSpecification>, any>): void;
33
- get preprocessRuns(): boolean;
34
- verifyPayload(payload: ReturnType<ScheduledEventSpecification["parsePayload"]>): Promise<{
35
- success: true;
36
- }>;
37
- toJSON(): TriggerMetadata;
38
- }
39
- /** `intervalTrigger()` is set as a [Job's trigger](/sdk/job) to trigger a Job at a recurring interval.
40
- * @param options An object containing options about the interval.
41
- */
42
- export declare function intervalTrigger(options: IntervalOptions): IntervalTrigger;
43
- export declare class CronTrigger implements Trigger<ScheduledEventSpecification> {
44
- private options;
45
- constructor(options: CronOptions);
46
- get event(): {
47
- name: string;
48
- title: string;
49
- source: string;
50
- icon: string;
51
- examples: {
52
- id: string;
53
- name: string;
54
- icon: string;
55
- payload: {
56
- ts: string;
57
- lastTimestamp: string;
58
- };
59
- }[];
60
- parsePayload: (data: unknown, params?: Partial<import("zod").ParseParams>) => {
61
- ts: Date;
62
- lastTimestamp?: Date | undefined;
63
- };
64
- properties: {
65
- label: string;
66
- text: string;
67
- }[];
68
- };
69
- attachToJob(triggerClient: TriggerClient, job: Job<Trigger<ScheduledEventSpecification>, any>): void;
70
- get preprocessRuns(): boolean;
71
- verifyPayload(payload: ReturnType<ScheduledEventSpecification["parsePayload"]>): Promise<{
72
- success: true;
73
- }>;
74
- toJSON(): TriggerMetadata;
75
- }
76
- /** `cronTrigger()` is set as a [Job's trigger](https://trigger.dev/docs/sdk/job) to trigger a Job on a recurring schedule using a CRON expression.
77
- * @param options An object containing options about the CRON schedule.
78
- */
79
- export declare function cronTrigger(options: CronOptions): CronTrigger;
80
- /** DynamicSchedule options
81
- * @param id Used to uniquely identify a DynamicSchedule
82
- */
83
- export type DynamicIntervalOptions = {
84
- id: string;
85
- };
86
- /** DynamicSchedule` allows you to define a scheduled trigger that can be configured dynamically at runtime. */
87
- export declare class DynamicSchedule implements Trigger<ScheduledEventSpecification> {
88
- private client;
89
- private options;
90
- /**
91
- * @param client The `TriggerClient` instance to use for registering the trigger.
92
- * @param options The options for the schedule.
93
- */
94
- constructor(client: TriggerClient, options: DynamicIntervalOptions);
95
- get id(): string;
96
- get event(): {
97
- name: string;
98
- title: string;
99
- source: string;
100
- icon: string;
101
- examples: {
102
- id: string;
103
- name: string;
104
- icon: string;
105
- payload: {
106
- ts: string;
107
- lastTimestamp: string;
108
- };
109
- }[];
110
- parsePayload: (data: unknown, params?: Partial<import("zod").ParseParams>) => {
111
- ts: Date;
112
- lastTimestamp?: Date | undefined;
113
- };
114
- };
115
- register(key: string, metadata: ScheduleMetadata): Promise<{
116
- id: string;
117
- schedule: {
118
- options: {
119
- cron: string;
120
- };
121
- type: "cron";
122
- metadata?: any;
123
- accountId?: string | undefined;
124
- } | {
125
- options: {
126
- seconds: number;
127
- };
128
- type: "interval";
129
- metadata?: any;
130
- accountId?: string | undefined;
131
- };
132
- active: boolean;
133
- metadata?: any;
134
- }>;
135
- unregister(key: string): Promise<{
136
- ok: boolean;
137
- }>;
138
- attachToJob(triggerClient: TriggerClient, job: Job<Trigger<ScheduledEventSpecification>, any>): void;
139
- get preprocessRuns(): boolean;
140
- verifyPayload(payload: ReturnType<ScheduledEventSpecification["parsePayload"]>): Promise<{
141
- success: true;
142
- }>;
143
- toJSON(): TriggerMetadata;
144
- }
145
- export {};
@@ -1,197 +0,0 @@
1
- import { ScheduledPayloadSchema, currentDate, } from "@trigger.dev/core";
2
- import cronstrue from "cronstrue";
3
- import { runLocalStorage } from "../runLocalStorage.js";
4
- const examples = [
5
- {
6
- id: "now",
7
- name: "Now",
8
- icon: "clock",
9
- payload: {
10
- ts: currentDate.marker,
11
- lastTimestamp: currentDate.marker,
12
- },
13
- },
14
- ];
15
- export class IntervalTrigger {
16
- options;
17
- constructor(options) {
18
- this.options = options;
19
- }
20
- get event() {
21
- return {
22
- name: "trigger.scheduled",
23
- title: "Schedule",
24
- source: "trigger.dev",
25
- icon: "schedule-interval",
26
- examples,
27
- parsePayload: ScheduledPayloadSchema.parse,
28
- properties: [
29
- {
30
- label: "Interval",
31
- text: `${this.options.seconds}s`,
32
- },
33
- ],
34
- };
35
- }
36
- attachToJob(triggerClient, job) { }
37
- get preprocessRuns() {
38
- return false;
39
- }
40
- async verifyPayload(payload) {
41
- return { success: true };
42
- }
43
- toJSON() {
44
- return {
45
- type: "scheduled",
46
- schedule: {
47
- type: "interval",
48
- options: {
49
- seconds: this.options.seconds,
50
- },
51
- },
52
- };
53
- }
54
- }
55
- /** `intervalTrigger()` is set as a [Job's trigger](/sdk/job) to trigger a Job at a recurring interval.
56
- * @param options An object containing options about the interval.
57
- */
58
- export function intervalTrigger(options) {
59
- return new IntervalTrigger(options);
60
- }
61
- export class CronTrigger {
62
- options;
63
- constructor(options) {
64
- this.options = options;
65
- }
66
- get event() {
67
- /**
68
- * We need to concat `(UTC)` string at the end of the human readable string to avoid confusion
69
- * with execution time/last run of a job in the UI dashboard which is displayed in local time.
70
- */
71
- const humanReadable = cronstrue
72
- .toString(this.options.cron, {
73
- throwExceptionOnParseError: false,
74
- })
75
- .concat(" (UTC)");
76
- return {
77
- name: "trigger.scheduled",
78
- title: "Cron Schedule",
79
- source: "trigger.dev",
80
- icon: "schedule-cron",
81
- examples,
82
- parsePayload: ScheduledPayloadSchema.parse,
83
- properties: [
84
- {
85
- label: "cron",
86
- text: this.options.cron,
87
- },
88
- {
89
- label: "Schedule",
90
- text: humanReadable,
91
- },
92
- ],
93
- };
94
- }
95
- attachToJob(triggerClient, job) { }
96
- get preprocessRuns() {
97
- return false;
98
- }
99
- async verifyPayload(payload) {
100
- return { success: true };
101
- }
102
- toJSON() {
103
- return {
104
- type: "scheduled",
105
- schedule: {
106
- type: "cron",
107
- options: {
108
- cron: this.options.cron,
109
- },
110
- },
111
- };
112
- }
113
- }
114
- /** `cronTrigger()` is set as a [Job's trigger](https://trigger.dev/docs/sdk/job) to trigger a Job on a recurring schedule using a CRON expression.
115
- * @param options An object containing options about the CRON schedule.
116
- */
117
- export function cronTrigger(options) {
118
- return new CronTrigger(options);
119
- }
120
- /** DynamicSchedule` allows you to define a scheduled trigger that can be configured dynamically at runtime. */
121
- export class DynamicSchedule {
122
- client;
123
- options;
124
- /**
125
- * @param client The `TriggerClient` instance to use for registering the trigger.
126
- * @param options The options for the schedule.
127
- */
128
- constructor(client, options) {
129
- this.client = client;
130
- this.options = options;
131
- client.attachDynamicSchedule(this.options.id);
132
- }
133
- get id() {
134
- return this.options.id;
135
- }
136
- get event() {
137
- return {
138
- name: "trigger.scheduled",
139
- title: "Dynamic Schedule",
140
- source: "trigger.dev",
141
- icon: "schedule-dynamic",
142
- examples,
143
- parsePayload: ScheduledPayloadSchema.parse,
144
- };
145
- }
146
- async register(key, metadata) {
147
- const runStore = runLocalStorage.getStore();
148
- if (!runStore) {
149
- return this.client.registerSchedule(this.id, key, metadata);
150
- }
151
- const { io } = runStore;
152
- return await io.runTask([key, "register"], async (task) => {
153
- return this.client.registerSchedule(this.id, key, metadata);
154
- }, {
155
- name: "Register Schedule",
156
- icon: metadata.type === "cron" ? "schedule-cron" : "schedule-interval",
157
- properties: [
158
- { label: "Dynamic Schedule", text: this.id },
159
- { label: "Schedule ID", text: key },
160
- ],
161
- params: metadata,
162
- });
163
- }
164
- async unregister(key) {
165
- const runStore = runLocalStorage.getStore();
166
- if (!runStore) {
167
- return this.client.unregisterSchedule(this.id, key);
168
- }
169
- const { io } = runStore;
170
- return await io.runTask([key, "unregister"], async (task) => {
171
- return this.client.unregisterSchedule(this.id, key);
172
- }, {
173
- name: "Unregister Schedule",
174
- icon: "schedule",
175
- properties: [
176
- { label: "Dynamic Schedule", text: this.id },
177
- { label: "Schedule ID", text: key },
178
- ],
179
- });
180
- }
181
- attachToJob(triggerClient, job) {
182
- triggerClient.attachDynamicScheduleToJob(this.options.id, job);
183
- }
184
- get preprocessRuns() {
185
- return false;
186
- }
187
- async verifyPayload(payload) {
188
- return { success: true };
189
- }
190
- toJSON() {
191
- return {
192
- type: "dynamic",
193
- id: this.options.id,
194
- };
195
- }
196
- }
197
- //# sourceMappingURL=scheduled.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scheduled.js","sourceRoot":"","sources":["../../../src/triggers/scheduled.ts"],"names":[],"mappings":"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"}