Compare commits

...

7 Commits

Author SHA1 Message Date
Eric Allam 2c328ba93d Fix pnmp lock file again 2024-01-17 14:50:04 +00:00
github-actions[bot] 68dbc07ee8 chore: Update version for release (#854)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-01-17 14:49:19 +00:00
Eric Allam 58448243af Fix pnpm i 2024-01-17 14:41:51 +00:00
Eric Allam 6c4047cf21 Fix an issue where runs were stuck executing when a child task failed and the parent task retried 2024-01-17 14:39:06 +00:00
github-actions[bot] 831860eace chore: Update version for release (#853)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-01-17 14:13:34 +00:00
Matt Aitken db46f2a69a Add explicit return type to deprecated sendEmail function because tsup was complaining 2024-01-17 14:07:45 +00:00
Kritik Jiyaviya 4dd6cf18dc feat: Add support for the new Resend audience API endpoints (#850)
* feat: Add support for the new Resend audience API endpoints

* update pnpm-lock.yaml

* update pnpm-lock.yaml

* Merge branch 'main' into feat/support-for-resend-audience-api

* latest pnpm-lock.yaml

* Create lovely-items-end.md

* Update pnpm-lock.yaml

---------

Co-authored-by: Matt Aitken <matt@mattaitken.com>
2024-01-17 14:06:45 +00:00
69 changed files with 1124 additions and 125 deletions
+16 -7
View File
@@ -26,13 +26,22 @@ Send an email to a recipient with a text payload. [Official Resend Docs](https:/
## Tasks
| Function Name | Description |
| --------------- | -------------------------------- |
| `emails.send` | Send an email |
| `emails.create` | Create an email |
| `emails.get` | Get an email |
| `batch.send` | Send a batch of emails at once |
| `batch.create` | Create a batch of emails at once |
| Function Name | Description |
| ------------------ | -------------------------------- |
| `emails.send` | Send an email |
| `emails.create` | Create an email |
| `emails.get` | Get an email |
| `batch.send` | Send a batch of emails at once |
| `batch.create` | Create a batch of emails at once |
| `audiences.create` | Create an audience |
| `audiences.get` | Get an audience |
| `audiences.remove` | Remove an audience |
| `audiences.list` | List audiences |
| `contacts.create` | Create a contact |
| `contacts.get` | Get a contact |
| `contacts.update` | Update a contact |
| `contacts.remove` | Remove a contact |
| `contacts.list` | List contacts |
## Example
+15
View File
@@ -1,5 +1,20 @@
# @trigger.dev/airtable
## 2.3.15
### Patch Changes
- Updated dependencies [6c4047cf]
- @trigger.dev/sdk@2.3.15
- @trigger.dev/integration-kit@2.3.15
## 2.3.14
### Patch Changes
- @trigger.dev/integration-kit@2.3.14
- @trigger.dev/sdk@2.3.14
## 2.3.13
### Patch Changes
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/airtable",
"version": "2.3.13",
"version": "2.3.15",
"description": "Trigger.dev integration for airtable",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
@@ -25,8 +25,8 @@
"typecheck": "tsc --noEmit"
},
"dependencies": {
"@trigger.dev/integration-kit": "workspace:^2.3.13",
"@trigger.dev/sdk": "workspace:^2.3.13",
"@trigger.dev/integration-kit": "workspace:^2.3.15",
"@trigger.dev/sdk": "workspace:^2.3.15",
"airtable": "^0.12.1",
"zod": "3.22.3"
},
+15
View File
@@ -1,5 +1,20 @@
# @trigger.dev/github
## 2.3.15
### Patch Changes
- Updated dependencies [6c4047cf]
- @trigger.dev/sdk@2.3.15
- @trigger.dev/integration-kit@2.3.15
## 2.3.14
### Patch Changes
- @trigger.dev/integration-kit@2.3.14
- @trigger.dev/sdk@2.3.14
## 2.3.13
### Patch Changes
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/github",
"version": "2.3.13",
"version": "2.3.15",
"description": "The official GitHub integration for Trigger.dev",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
@@ -30,8 +30,8 @@
"@octokit/request-error": "^5.0.1",
"@octokit/webhooks": "^12.0.10",
"octokit": "^3.1.2",
"@trigger.dev/integration-kit": "workspace:^2.3.13",
"@trigger.dev/sdk": "workspace:^2.3.13",
"@trigger.dev/integration-kit": "workspace:^2.3.15",
"@trigger.dev/sdk": "workspace:^2.3.15",
"zod": "3.22.3"
},
"engines": {
+15
View File
@@ -1,5 +1,20 @@
# @trigger.dev/linear
## 2.3.15
### Patch Changes
- Updated dependencies [6c4047cf]
- @trigger.dev/sdk@2.3.15
- @trigger.dev/integration-kit@2.3.15
## 2.3.14
### Patch Changes
- @trigger.dev/integration-kit@2.3.14
- @trigger.dev/sdk@2.3.14
## 2.3.13
### Patch Changes
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/linear",
"version": "2.3.13",
"version": "2.3.15",
"description": "Trigger.dev integration for @linear/sdk",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
@@ -26,8 +26,8 @@
},
"dependencies": {
"@linear/sdk": "^8.0.0",
"@trigger.dev/integration-kit": "workspace:^2.3.13",
"@trigger.dev/sdk": "workspace:^2.3.13",
"@trigger.dev/integration-kit": "workspace:^2.3.15",
"@trigger.dev/sdk": "workspace:^2.3.15",
"zod": "3.22.3"
},
"engines": {
+15
View File
@@ -1,5 +1,20 @@
# @trigger.dev/slack
## 2.3.15
### Patch Changes
- Updated dependencies [6c4047cf]
- @trigger.dev/sdk@2.3.15
- @trigger.dev/integration-kit@2.3.15
## 2.3.14
### Patch Changes
- @trigger.dev/integration-kit@2.3.14
- @trigger.dev/sdk@2.3.14
## 2.3.13
### Patch Changes
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/openai",
"version": "2.3.13",
"version": "2.3.15",
"description": "The official OpenAI integration for Trigger.dev",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
@@ -42,8 +42,8 @@
},
"dependencies": {
"openai": "^4.16.1",
"@trigger.dev/sdk": "workspace:^2.3.13",
"@trigger.dev/integration-kit": "workspace:^2.3.13"
"@trigger.dev/sdk": "workspace:^2.3.15",
"@trigger.dev/integration-kit": "workspace:^2.3.15"
},
"engines": {
"node": ">=18.0.0"
+15
View File
@@ -1,5 +1,20 @@
# @trigger.dev/plain
## 2.3.15
### Patch Changes
- Updated dependencies [6c4047cf]
- @trigger.dev/sdk@2.3.15
- @trigger.dev/integration-kit@2.3.15
## 2.3.14
### Patch Changes
- @trigger.dev/integration-kit@2.3.14
- @trigger.dev/sdk@2.3.14
## 2.3.13
### Patch Changes
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/plain",
"version": "2.3.13",
"version": "2.3.15",
"description": "The official Plain.com integration for Trigger.dev",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
@@ -24,8 +24,8 @@
"build:tsup": "tsup"
},
"dependencies": {
"@trigger.dev/integration-kit": "workspace:^2.3.13",
"@trigger.dev/sdk": "workspace:^2.3.13",
"@trigger.dev/integration-kit": "workspace:^2.3.15",
"@trigger.dev/sdk": "workspace:^2.3.15",
"@team-plain/typescript-sdk": "^2.7.0"
},
"engines": {
+15
View File
@@ -1,5 +1,20 @@
# @trigger.dev/replicate
## 2.3.15
### Patch Changes
- Updated dependencies [6c4047cf]
- @trigger.dev/sdk@2.3.15
- @trigger.dev/integration-kit@2.3.15
## 2.3.14
### Patch Changes
- @trigger.dev/integration-kit@2.3.14
- @trigger.dev/sdk@2.3.14
## 2.3.13
### Patch Changes
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/replicate",
"version": "2.3.13",
"version": "2.3.15",
"description": "Trigger.dev integration for replicate",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
@@ -25,8 +25,8 @@
"typecheck": "tsc --noEmit"
},
"dependencies": {
"@trigger.dev/integration-kit": "workspace:^2.3.13",
"@trigger.dev/sdk": "workspace:^2.3.13",
"@trigger.dev/integration-kit": "workspace:^2.3.15",
"@trigger.dev/sdk": "workspace:^2.3.15",
"replicate": "^0.18.1",
"zod": "3.22.3"
},
+16
View File
@@ -1,5 +1,21 @@
# @trigger.dev/resend
## 2.3.15
### Patch Changes
- Updated dependencies [6c4047cf]
- @trigger.dev/sdk@2.3.15
- @trigger.dev/integration-kit@2.3.15
## 2.3.14
### Patch Changes
- 4dd6cf18: Add support for the new Resend audience API endpoints
- @trigger.dev/integration-kit@2.3.14
- @trigger.dev/sdk@2.3.14
## 2.3.13
### Patch Changes
+4 -4
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/resend",
"version": "2.3.13",
"version": "2.3.15",
"description": "The official Resend.com integration for Trigger.dev",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
@@ -24,9 +24,9 @@
"build:tsup": "tsup"
},
"dependencies": {
"@trigger.dev/integration-kit": "workspace:^2.3.13",
"@trigger.dev/sdk": "workspace:^2.3.13",
"resend": "^2.0.0"
"@trigger.dev/integration-kit": "workspace:^2.3.15",
"@trigger.dev/sdk": "workspace:^2.3.15",
"resend": "^2.1.0"
},
"engines": {
"node": ">=18.0.0"
+134
View File
@@ -0,0 +1,134 @@
import { IntegrationTaskKey, retry } from "@trigger.dev/sdk";
import type { ResendRunTask } from "./index";
import { Resend } from "resend";
import { handleResendError } from "./utils";
type CreateAudienceResult = NonNullable<Awaited<ReturnType<Resend["audiences"]["create"]>>["data"]>;
type GetAudienceResult = NonNullable<Awaited<ReturnType<Resend["audiences"]["get"]>>["data"]>;
type DeleteAudienceResult = NonNullable<Awaited<ReturnType<Resend["audiences"]["remove"]>>["data"]>;
type ListAudiencesResult = NonNullable<Awaited<ReturnType<Resend["audiences"]["list"]>>["data"]>;
export class Audiences {
constructor(private runTask: ResendRunTask) {}
create(
key: IntegrationTaskKey,
payload: Parameters<Resend["audiences"]["create"]>[0],
options?: Parameters<Resend["audiences"]["create"]>[1]
): Promise<CreateAudienceResult> {
return this.runTask(
key,
async (client, task) => {
const { error, data } = await client.audiences.create(payload, options);
if (error) {
throw error;
}
if (!data) {
throw new Error("No data returned from Resend");
}
return data;
},
{
name: "Create Audience",
params: payload,
properties: [
{
label: "Name",
text: payload.name,
},
],
retry: retry.standardBackoff,
},
handleResendError
);
}
get(key: IntegrationTaskKey, payload: string): Promise<GetAudienceResult> {
return this.runTask(
key,
async (client, task) => {
const { error, data } = await client.audiences.get(payload);
if (error) {
throw error;
}
if (!data) {
throw new Error("No data returned from Resend");
}
return data;
},
{
name: "Get Audience",
params: payload,
properties: [
{
label: "ID",
text: payload,
},
],
retry: retry.standardBackoff,
},
handleResendError
);
}
remove(key: IntegrationTaskKey, payload: string): Promise<DeleteAudienceResult> {
return this.runTask(
key,
async (client, task) => {
const { error, data } = await client.audiences.remove(payload);
if (error) {
throw error;
}
if (!data) {
throw new Error("No data returned from Resend");
}
return data;
},
{
name: "Remove Audience",
params: payload,
properties: [
{
label: "ID",
text: payload,
},
],
retry: retry.standardBackoff,
},
handleResendError
);
}
list(key: IntegrationTaskKey): Promise<ListAudiencesResult> {
return this.runTask(
key,
async (client, task) => {
const { error, data } = await client.audiences.list();
if (error) {
throw error;
}
if (!data) {
throw new Error("No data returned from Resend");
}
return data;
},
{
name: "List Audiences",
retry: retry.standardBackoff,
},
handleResendError
);
}
}
+188
View File
@@ -0,0 +1,188 @@
import { IntegrationTaskKey, retry } from "@trigger.dev/sdk";
import type { ResendRunTask } from "./index";
import { Resend } from "resend";
import { handleResendError } from "./utils";
type CreateContactResult = NonNullable<Awaited<ReturnType<Resend["contacts"]["create"]>>["data"]>;
type GetContactResult = NonNullable<Awaited<ReturnType<Resend["contacts"]["get"]>>["data"]>;
type UpdateContactResult = NonNullable<Awaited<ReturnType<Resend["contacts"]["update"]>>["data"]>;
type DeleteContactResult = NonNullable<Awaited<ReturnType<Resend["contacts"]["remove"]>>["data"]>;
type ListContactsResult = NonNullable<Awaited<ReturnType<Resend["contacts"]["list"]>>["data"]>;
export class Contacts {
constructor(private runTask: ResendRunTask) {}
create(
key: IntegrationTaskKey,
payload: Parameters<Resend["contacts"]["create"]>[0],
options?: Parameters<Resend["contacts"]["create"]>[1]
): Promise<CreateContactResult> {
return this.runTask(
key,
async (client, task) => {
const { error, data } = await client.contacts.create(payload, options);
if (error) {
throw error;
}
if (!data) {
throw new Error("No data returned from Resend");
}
return data;
},
{
name: "Create Contact",
params: payload,
properties: [
{
label: "Email",
text: payload.email,
},
...(payload.first_name && payload.last_name
? [{ label: "Name", text: payload.first_name + " " + payload.last_name }]
: []),
],
retry: retry.standardBackoff,
},
handleResendError
);
}
get(
key: IntegrationTaskKey,
payload: Parameters<Resend["contacts"]["get"]>[0]
): Promise<GetContactResult> {
return this.runTask(
key,
async (client, task) => {
const { error, data } = await client.contacts.get(payload);
if (error) {
throw error;
}
if (!data) {
throw new Error("No data returned from Resend");
}
return data;
},
{
name: "Get Contact",
params: payload,
properties: [
{
label: "Id",
text: payload.id,
},
],
retry: retry.standardBackoff,
},
handleResendError
);
}
update(
key: IntegrationTaskKey,
payload: Parameters<Resend["contacts"]["update"]>[0]
): Promise<UpdateContactResult> {
return this.runTask(
key,
async (client, task) => {
const { error, data } = await client.contacts.update(payload);
if (error) {
throw error;
}
if (!data) {
throw new Error("No data returned from Resend");
}
return data;
},
{
name: "Update Contact",
params: payload,
properties: [
{
label: "Id",
text: payload.id,
},
],
retry: retry.standardBackoff,
},
handleResendError
);
}
remove(
key: IntegrationTaskKey,
payload: Parameters<Resend["contacts"]["remove"]>[0]
): Promise<DeleteContactResult> {
return this.runTask(
key,
async (client, task) => {
const { error, data } = await client.contacts.remove(payload);
if (error) {
throw error;
}
if (!data) {
throw new Error("No data returned from Resend");
}
return data;
},
{
name: "Remove Contact",
params: payload,
properties: [
{
label: "Id",
text: payload.id,
},
],
retry: retry.standardBackoff,
},
handleResendError
);
}
list(
key: IntegrationTaskKey,
payload: Parameters<Resend["contacts"]["list"]>[0]
): Promise<ListContactsResult> {
return this.runTask(
key,
async (client, task) => {
const { error, data } = await client.contacts.list(payload);
if (error) {
throw error;
}
if (!data) {
throw new Error("No data returned from Resend");
}
return data;
},
{
name: "List Contacts",
params: payload,
properties: [
{
label: "Audience Id",
text: payload.audience_id,
},
],
retry: retry.standardBackoff,
},
handleResendError
);
}
}
+5 -3
View File
@@ -3,9 +3,11 @@ import type { ResendRunTask } from "./index";
import { Resend } from "resend";
import { handleResendError } from "./utils";
type SendEmailResult = NonNullable<Awaited<ReturnType<Resend["emails"]["send"]>>["data"]>;
type CreateEmailResult = NonNullable<Awaited<ReturnType<Resend["emails"]["create"]>>["data"]>;
type GetEmailResult = NonNullable<Awaited<ReturnType<Resend["emails"]["get"]>>["data"]>;
export type SendEmailResult = NonNullable<Awaited<ReturnType<Resend["emails"]["send"]>>["data"]>;
export type CreateEmailResult = NonNullable<
Awaited<ReturnType<Resend["emails"]["create"]>>["data"]
>;
export type GetEmailResult = NonNullable<Awaited<ReturnType<Resend["emails"]["get"]>>["data"]>;
export class Emails {
constructor(private runTask: ResendRunTask) {}
+36 -2
View File
@@ -9,8 +9,10 @@ import {
type TriggerIntegration,
} from "@trigger.dev/sdk";
import { Resend as ResendClient } from "resend";
import { Emails } from "./emails";
import { Emails, SendEmailResult } from "./emails";
import { Batch } from "./batch";
import { Contacts } from "./contacts";
import { Audiences } from "./audiences";
type ErrorResponse = {
statusCode: number;
@@ -154,7 +156,39 @@ export class Resend implements TriggerIntegration {
/**
* @deprecated Please use resend.emails.send instead
*/
async sendEmail(...args: Parameters<typeof this.emails.send>) {
async sendEmail(...args: Parameters<typeof this.emails.send>): Promise<SendEmailResult> {
return this.emails.send(...args);
}
/**
* Access the Resend Audiences API
* @example
* ```ts
* const response = await io.resend.audiences.create("📧", {
* name: payload.name,
* });
* ```
*/
get audiences() {
return new Audiences(this.runTask.bind(this));
}
/**
* Access the Resend Contacts API
* @example
* ```ts
* const response = await io.resend.contacts.create("📧", {
* email: payload.email,
* first_name: payload.first_name,
* last_name: payload.last_name,
* unsubscribed: false
* audienceId: payload.audienceId
* });
* ```
*/
get contacts() {
return new Contacts(this.runTask.bind(this));
}
}
+15
View File
@@ -1,5 +1,20 @@
# @trigger.dev/sendgrid
## 2.3.15
### Patch Changes
- Updated dependencies [6c4047cf]
- @trigger.dev/sdk@2.3.15
- @trigger.dev/integration-kit@2.3.15
## 2.3.14
### Patch Changes
- @trigger.dev/integration-kit@2.3.14
- @trigger.dev/sdk@2.3.14
## 2.3.13
### Patch Changes
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/sendgrid",
"version": "2.3.13",
"version": "2.3.15",
"description": "Trigger.dev integration for @sendgrid/mail",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
@@ -26,8 +26,8 @@
},
"dependencies": {
"@sendgrid/mail": "^7.7.0",
"@trigger.dev/sdk": "workspace:^2.3.13",
"@trigger.dev/integration-kit": "workspace:^2.3.13"
"@trigger.dev/sdk": "workspace:^2.3.15",
"@trigger.dev/integration-kit": "workspace:^2.3.15"
},
"engines": {
"node": ">=16.8.0"
+15
View File
@@ -1,5 +1,20 @@
# @trigger.dev/shopify
## 2.3.15
### Patch Changes
- Updated dependencies [6c4047cf]
- @trigger.dev/sdk@2.3.15
- @trigger.dev/integration-kit@2.3.15
## 2.3.14
### Patch Changes
- @trigger.dev/integration-kit@2.3.14
- @trigger.dev/sdk@2.3.14
## 2.3.13
### Patch Changes
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/shopify",
"version": "2.3.13",
"version": "2.3.15",
"description": "Trigger.dev integration for @shopify/shopify-api",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
@@ -26,8 +26,8 @@
},
"dependencies": {
"@shopify/shopify-api": "^8.0.2",
"@trigger.dev/sdk": "workspace:^2.3.13",
"@trigger.dev/integration-kit": "workspace:^2.3.13",
"@trigger.dev/sdk": "workspace:^2.3.15",
"@trigger.dev/integration-kit": "workspace:^2.3.15",
"zod": "3.22.3"
},
"engines": {
+13
View File
@@ -1,5 +1,18 @@
# @trigger.dev/slack
## 2.3.15
### Patch Changes
- Updated dependencies [6c4047cf]
- @trigger.dev/sdk@2.3.15
## 2.3.14
### Patch Changes
- @trigger.dev/sdk@2.3.14
## 2.3.13
### Patch Changes
+2 -2
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/slack",
"version": "2.3.13",
"version": "2.3.15",
"description": "The official Slack integration for Trigger.dev",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
@@ -25,7 +25,7 @@
},
"dependencies": {
"@slack/web-api": "^6.8.1",
"@trigger.dev/sdk": "workspace:^2.3.13",
"@trigger.dev/sdk": "workspace:^2.3.15",
"zod": "3.22.3"
},
"engines": {
+15
View File
@@ -1,5 +1,20 @@
# @trigger.dev/stripe
## 2.3.15
### Patch Changes
- Updated dependencies [6c4047cf]
- @trigger.dev/sdk@2.3.15
- @trigger.dev/integration-kit@2.3.15
## 2.3.14
### Patch Changes
- @trigger.dev/integration-kit@2.3.14
- @trigger.dev/sdk@2.3.14
## 2.3.13
### Patch Changes
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/stripe",
"version": "2.3.13",
"version": "2.3.15",
"description": "Trigger.dev integration for stripe",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
@@ -25,8 +25,8 @@
"typecheck": "tsc --noEmit"
},
"dependencies": {
"@trigger.dev/integration-kit": "workspace:^2.3.13",
"@trigger.dev/sdk": "workspace:^2.3.13",
"@trigger.dev/integration-kit": "workspace:^2.3.15",
"@trigger.dev/sdk": "workspace:^2.3.15",
"stripe": "^12.14.0",
"zod": "3.22.3"
},
+15
View File
@@ -1,5 +1,20 @@
# @trigger.dev/supabase
## 2.3.15
### Patch Changes
- Updated dependencies [6c4047cf]
- @trigger.dev/sdk@2.3.15
- @trigger.dev/integration-kit@2.3.15
## 2.3.14
### Patch Changes
- @trigger.dev/integration-kit@2.3.14
- @trigger.dev/sdk@2.3.14
## 2.3.13
### Patch Changes
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/supabase",
"version": "2.3.13",
"version": "2.3.15",
"description": "Trigger.dev integration for @supabase/supabase-js",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
@@ -26,8 +26,8 @@
},
"dependencies": {
"@supabase/supabase-js": "^2.26.0",
"@trigger.dev/integration-kit": "workspace:^2.3.13",
"@trigger.dev/sdk": "workspace:^2.3.13",
"@trigger.dev/integration-kit": "workspace:^2.3.15",
"@trigger.dev/sdk": "workspace:^2.3.15",
"supabase-management-js": "^1.0.0",
"zod": "3.22.3"
},
+15
View File
@@ -1,5 +1,20 @@
# @trigger.dev/typeform
## 2.3.15
### Patch Changes
- Updated dependencies [6c4047cf]
- @trigger.dev/sdk@2.3.15
- @trigger.dev/integration-kit@2.3.15
## 2.3.14
### Patch Changes
- @trigger.dev/integration-kit@2.3.14
- @trigger.dev/sdk@2.3.14
## 2.3.13
### Patch Changes
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/typeform",
"version": "2.3.13",
"version": "2.3.15",
"description": "The official Typeform integration for Trigger.dev",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
@@ -24,8 +24,8 @@
"typecheck": "tsc --noEmit"
},
"dependencies": {
"@trigger.dev/integration-kit": "workspace:^2.3.13",
"@trigger.dev/sdk": "workspace:^2.3.13",
"@trigger.dev/integration-kit": "workspace:^2.3.15",
"@trigger.dev/sdk": "workspace:^2.3.15",
"@typeform/api-client": "^1.8.0",
"zod": "3.22.3"
},
+13
View File
@@ -1,5 +1,18 @@
# @trigger.dev/astro
## 2.3.15
### Patch Changes
- Updated dependencies [6c4047cf]
- @trigger.dev/sdk@2.3.15
## 2.3.14
### Patch Changes
- @trigger.dev/sdk@2.3.14
## 2.3.13
### Patch Changes
+2 -2
View File
@@ -1,7 +1,7 @@
{
"name": "@trigger.dev/astro",
"description": "An Astro-native integration for Trigger.dev background jobs platform",
"version": "2.3.13",
"version": "2.3.15",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
"files": [
@@ -20,7 +20,7 @@
"build:tsup": "tsup"
},
"peerDependencies": {
"@trigger.dev/sdk": "workspace:^2.3.13"
"@trigger.dev/sdk": "workspace:^2.3.15"
},
"devDependencies": {
"astro": "^3.0.12",
+12
View File
@@ -1,5 +1,17 @@
# trigger.dev
## 1.0.4
### Patch Changes
- @trigger.dev/core@2.3.15
## 1.0.3
### Patch Changes
- @trigger.dev/core@2.3.14
## 1.0.2
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "trigger.dev",
"version": "1.0.2",
"version": "1.0.4",
"description": "A Command-Line Interface for Trigger.dev (v3) projects",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
+14
View File
@@ -1,5 +1,19 @@
# create-trigger
## 2.3.15
### Patch Changes
- @trigger.dev/core@2.3.15
- @trigger.dev/yalt@2.3.15
## 2.3.14
### Patch Changes
- @trigger.dev/core@2.3.14
- @trigger.dev/yalt@2.3.14
## 2.3.13
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/cli",
"version": "2.3.13",
"version": "2.3.15",
"description": "The Trigger.dev CLI",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
+4
View File
@@ -1,5 +1,9 @@
# @trigger.dev/core-backend
## 2.3.15
## 2.3.14
## 2.3.13
## 2.3.12
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/core-backend",
"version": "2.3.13",
"version": "2.3.15",
"description": "Core code used across `@trigger.dev/sdk` and Trigger.dev server",
"license": "MIT",
"main": "./dist/index.js",
+4
View File
@@ -1,5 +1,9 @@
# internal-platform
## 2.3.15
## 2.3.14
## 2.3.13
## 2.3.12
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/core",
"version": "2.3.13",
"version": "2.3.15",
"description": "Core code used across the Trigger.dev SDK and platform",
"license": "MIT",
"main": "./dist/index.js",
+4
View File
@@ -1,5 +1,9 @@
# @trigger.dev/eslint-plugin
## 2.3.15
## 2.3.14
## 2.3.13
## 2.3.12
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/eslint-plugin",
"version": "2.3.13",
"version": "2.3.15",
"description": "ESLint plugin with trigger.dev best practices",
"keywords": [
"eslint",
+13
View File
@@ -1,5 +1,18 @@
# @trigger.dev/express
## 2.3.15
### Patch Changes
- Updated dependencies [6c4047cf]
- @trigger.dev/sdk@2.3.15
## 2.3.14
### Patch Changes
- @trigger.dev/sdk@2.3.14
## 2.3.13
### Patch Changes
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/express",
"version": "2.3.13",
"version": "2.3.15",
"description": "Official Express adapter for Trigger.dev",
"license": "MIT",
"main": "./dist/index.js",
@@ -23,7 +23,7 @@
"./package.json": "./package.json"
},
"devDependencies": {
"@trigger.dev/sdk": "workspace:^2.3.13",
"@trigger.dev/sdk": "workspace:^2.3.15",
"@trigger.dev/tsconfig": "workspace:*",
"@types/debug": "^4.1.7",
"@types/express": "^4.17.13",
@@ -39,7 +39,7 @@
"build:tsup": "tsup"
},
"peerDependencies": {
"@trigger.dev/sdk": "workspace:^2.3.13"
"@trigger.dev/sdk": "workspace:^2.3.15"
},
"dependencies": {
"debug": "^4.3.4",
+13
View File
@@ -1,5 +1,18 @@
# @trigger.dev/hono
## 2.3.15
### Patch Changes
- Updated dependencies [6c4047cf]
- @trigger.dev/sdk@2.3.15
## 2.3.14
### Patch Changes
- @trigger.dev/sdk@2.3.14
## 2.3.13
### Patch Changes
+2 -2
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/hono",
"version": "2.3.13",
"version": "2.3.15",
"description": "A Trigger.dev adapter for Hono.dev",
"license": "MIT",
"main": "./dist/index.js",
@@ -32,7 +32,7 @@
},
"peerDependencies": {
"hono": "3.x",
"@trigger.dev/sdk": "workspace:^2.3.13"
"@trigger.dev/sdk": "workspace:^2.3.15"
},
"devDependencies": {
"@trigger.dev/tsconfig": "workspace:*",
+12
View File
@@ -1,5 +1,17 @@
# @trigger.dev/integration-kit
## 2.3.15
### Patch Changes
- @trigger.dev/core@2.3.15
## 2.3.14
### Patch Changes
- @trigger.dev/core@2.3.14
## 2.3.13
### Patch Changes
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/integration-kit",
"version": "2.3.13",
"version": "2.3.15",
"description": "Trigger.dev Integration Kit has helpers to make creating integrations easier",
"license": "MIT",
"main": "./dist/index.js",
+13
View File
@@ -1,5 +1,18 @@
# @trigger.dev/nestjs
## 2.3.15
### Patch Changes
- Updated dependencies [6c4047cf]
- @trigger.dev/sdk@2.3.15
## 2.3.14
### Patch Changes
- @trigger.dev/sdk@2.3.14
## 2.3.13
### Patch Changes
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/nestjs",
"version": "2.3.13",
"version": "2.3.15",
"description": "Official NestJS adapter for Trigger.dev",
"license": "MIT",
"main": "./dist/index.js",
@@ -23,7 +23,7 @@
"./package.json": "./package.json"
},
"devDependencies": {
"@trigger.dev/sdk": "workspace:^2.3.13",
"@trigger.dev/sdk": "workspace:^2.3.15",
"@trigger.dev/tsconfig": "workspace:*",
"@types/debug": "^4.1.7",
"@types/express": "^4.17.13",
@@ -41,7 +41,7 @@
},
"peerDependencies": {
"@nestjs/common": ">=10.0.0",
"@trigger.dev/sdk": "workspace:^2.3.13"
"@trigger.dev/sdk": "workspace:^2.3.15"
},
"dependencies": {
"@nestjs/common": "^10.2.4",
+13
View File
@@ -1,5 +1,18 @@
# @trigger.dev/nextjs
## 2.3.15
### Patch Changes
- Updated dependencies [6c4047cf]
- @trigger.dev/sdk@2.3.15
## 2.3.14
### Patch Changes
- @trigger.dev/sdk@2.3.14
## 2.3.13
### Patch Changes
+2 -2
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/nextjs",
"version": "2.3.13",
"version": "2.3.15",
"description": "Trigger.dev Next.js integration",
"license": "MIT",
"main": "./dist/index.js",
@@ -41,7 +41,7 @@
"build:tsup": "tsup"
},
"peerDependencies": {
"@trigger.dev/sdk": "workspace:^2.3.13",
"@trigger.dev/sdk": "workspace:^2.3.15",
"next": ">=12.0.0"
},
"dependencies": {
+12
View File
@@ -1,5 +1,17 @@
# @trigger.dev/react
## 2.3.15
### Patch Changes
- @trigger.dev/core@2.3.15
## 2.3.14
### Patch Changes
- @trigger.dev/core@2.3.14
## 2.3.13
### Patch Changes
+2 -2
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/react",
"version": "2.3.13",
"version": "2.3.15",
"description": "Trigger.dev React SDK",
"license": "MIT",
"types": "dist/index.d.ts",
@@ -27,7 +27,7 @@
},
"dependencies": {
"@tanstack/react-query": "5.0.0-beta.2",
"@trigger.dev/core": "workspace:^2.3.13",
"@trigger.dev/core": "workspace:^2.3.15",
"debug": "^4.3.4",
"zod": "3.22.3"
},
+13
View File
@@ -1,5 +1,18 @@
# @trigger.dev/remix
## 2.3.15
### Patch Changes
- Updated dependencies [6c4047cf]
- @trigger.dev/sdk@2.3.15
## 2.3.14
### Patch Changes
- @trigger.dev/sdk@2.3.14
## 2.3.13
### Patch Changes
+2 -2
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/remix",
"version": "2.3.13",
"version": "2.3.15",
"description": "Trigger.dev Remix integration",
"license": "MIT",
"main": "./dist/index.js",
@@ -39,7 +39,7 @@
"build:tsup": "tsup"
},
"peerDependencies": {
"@trigger.dev/sdk": "workspace:^2.3.13",
"@trigger.dev/sdk": "workspace:^2.3.15",
"@remix-run/server-runtime": ">1.19.0"
},
"dependencies": {
+13
View File
@@ -1,5 +1,18 @@
# @trigger.dev/sveltekit
## 2.3.15
### Patch Changes
- Updated dependencies [6c4047cf]
- @trigger.dev/sdk@2.3.15
## 2.3.14
### Patch Changes
- @trigger.dev/sdk@2.3.14
## 2.3.13
### Patch Changes
+2 -2
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/sveltekit",
"version": "2.3.13",
"version": "2.3.15",
"description": "Trigger.dev svelteKit integration",
"license": "MIT",
"main": "./dist/index.js",
@@ -39,7 +39,7 @@
"build:tsup": "tsup"
},
"peerDependencies": {
"@trigger.dev/sdk": "workspace:^2.3.13"
"@trigger.dev/sdk": "workspace:^2.3.15"
},
"dependencies": {
"debug": "^4.3.4"
+15
View File
@@ -1,5 +1,20 @@
# @trigger.dev/testing
## 2.3.15
### Patch Changes
- Updated dependencies [6c4047cf]
- @trigger.dev/sdk@2.3.15
- @trigger.dev/core@2.3.15
## 2.3.14
### Patch Changes
- @trigger.dev/core@2.3.14
- @trigger.dev/sdk@2.3.14
## 2.3.13
### Patch Changes
+1 -1
View File
@@ -1,7 +1,7 @@
{
"name": "@trigger.dev/testing",
"description": "A collection of useful tools to write tests for Trigger.dev.",
"version": "2.3.13",
"version": "2.3.15",
"license": "MIT",
"main": "./dist/index.js",
"types": "./dist/index.d.ts",
+15
View File
@@ -1,5 +1,20 @@
# @trigger.dev/sdk
## 2.3.15
### Patch Changes
- 6c4047cf: Fix an issue where runs were stuck executing when a child task failed and the parent task retried
- @trigger.dev/core@2.3.15
- @trigger.dev/core-backend@2.3.15
## 2.3.14
### Patch Changes
- @trigger.dev/core@2.3.14
- @trigger.dev/core-backend@2.3.14
## 2.3.13
### Patch Changes
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/sdk",
"version": "2.3.13",
"version": "2.3.15",
"description": "trigger.dev Node.JS SDK",
"license": "MIT",
"main": "./dist/index.js",
@@ -30,8 +30,8 @@
"typecheck": "tsc --noEmit"
},
"dependencies": {
"@trigger.dev/core": "workspace:^2.3.13",
"@trigger.dev/core-backend": "workspace:^2.3.13",
"@trigger.dev/core": "workspace:^2.3.15",
"@trigger.dev/core-backend": "workspace:^2.3.15",
"chalk": "^5.2.0",
"cronstrue": "^2.21.0",
"debug": "^4.3.4",
+2
View File
@@ -1333,6 +1333,8 @@ export class IO {
await this._apiClient.failTask(this._id, task.id, {
error: error.cause.output as any,
});
throw error;
}
const parsedError = ErrorWithStackSchema.safeParse(error);
+4
View File
@@ -1,5 +1,9 @@
# @trigger.dev/yalt
## 2.3.15
## 2.3.14
## 2.3.13
## 2.3.12
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@trigger.dev/yalt",
"version": "2.3.13",
"version": "2.3.15",
"description": "yalt.dev client library",
"license": "MIT",
"main": "./dist/index.js",
+35 -44
View File
@@ -458,8 +458,8 @@ importers:
integrations/airtable:
specifiers:
'@trigger.dev/integration-kit': workspace:^2.3.13
'@trigger.dev/sdk': workspace:^2.3.13
'@trigger.dev/integration-kit': workspace:^2.3.15
'@trigger.dev/sdk': workspace:^2.3.15
'@trigger.dev/tsconfig': workspace:*
'@trigger.dev/tsup': workspace:*
'@types/node': 16.x
@@ -488,8 +488,8 @@ importers:
'@octokit/types': ^12.4.0
'@octokit/webhooks': ^12.0.10
'@octokit/webhooks-types': ^7.3.1
'@trigger.dev/integration-kit': workspace:^2.3.13
'@trigger.dev/sdk': workspace:^2.3.13
'@trigger.dev/integration-kit': workspace:^2.3.15
'@trigger.dev/sdk': workspace:^2.3.15
'@trigger.dev/tsconfig': workspace:*
'@trigger.dev/tsup': workspace:*
'@types/node': '18'
@@ -519,8 +519,8 @@ importers:
integrations/linear:
specifiers:
'@linear/sdk': ^8.0.0
'@trigger.dev/integration-kit': workspace:^2.3.13
'@trigger.dev/sdk': workspace:^2.3.13
'@trigger.dev/integration-kit': workspace:^2.3.15
'@trigger.dev/sdk': workspace:^2.3.15
'@trigger.dev/tsconfig': workspace:*
'@trigger.dev/tsup': workspace:*
'@types/node': 16.x
@@ -543,8 +543,8 @@ importers:
integrations/openai:
specifiers:
'@trigger.dev/integration-kit': workspace:^2.3.13
'@trigger.dev/sdk': workspace:^2.3.13
'@trigger.dev/integration-kit': workspace:^2.3.15
'@trigger.dev/sdk': workspace:^2.3.15
'@trigger.dev/tsconfig': workspace:*
'@trigger.dev/tsup': workspace:*
'@types/jest': ^29.5.3
@@ -573,8 +573,8 @@ importers:
integrations/plain:
specifiers:
'@team-plain/typescript-sdk': ^2.7.0
'@trigger.dev/integration-kit': workspace:^2.3.13
'@trigger.dev/sdk': workspace:^2.3.13
'@trigger.dev/integration-kit': workspace:^2.3.15
'@trigger.dev/sdk': workspace:^2.3.15
'@trigger.dev/tsconfig': workspace:*
'@trigger.dev/tsup': workspace:*
'@types/node': '18'
@@ -595,8 +595,8 @@ importers:
integrations/replicate:
specifiers:
'@trigger.dev/integration-kit': workspace:^2.3.13
'@trigger.dev/sdk': workspace:^2.3.13
'@trigger.dev/integration-kit': workspace:^2.3.15
'@trigger.dev/sdk': workspace:^2.3.15
'@trigger.dev/tsconfig': workspace:*
'@trigger.dev/tsup': workspace:*
'@types/node': 16.x
@@ -620,19 +620,19 @@ importers:
integrations/resend:
specifiers:
'@trigger.dev/integration-kit': workspace:^2.3.13
'@trigger.dev/sdk': workspace:^2.3.13
'@trigger.dev/integration-kit': workspace:^2.3.15
'@trigger.dev/sdk': workspace:^2.3.15
'@trigger.dev/tsconfig': workspace:*
'@trigger.dev/tsup': workspace:*
'@types/node': '18'
resend: ^2.0.0
resend: ^2.1.0
rimraf: ^3.0.2
tsup: 8.0.1
typescript: ^5.3.0
dependencies:
'@trigger.dev/integration-kit': link:../../packages/integration-kit
'@trigger.dev/sdk': link:../../packages/trigger-sdk
resend: 2.0.0
resend: 2.1.0
devDependencies:
'@trigger.dev/tsconfig': link:../../config-packages/tsconfig
'@trigger.dev/tsup': link:../../config-packages/tsup
@@ -644,8 +644,8 @@ importers:
integrations/sendgrid:
specifiers:
'@sendgrid/mail': ^7.7.0
'@trigger.dev/integration-kit': workspace:^2.3.13
'@trigger.dev/sdk': workspace:^2.3.13
'@trigger.dev/integration-kit': workspace:^2.3.15
'@trigger.dev/sdk': workspace:^2.3.15
'@trigger.dev/tsconfig': workspace:*
'@trigger.dev/tsup': workspace:*
'@types/node': 16.x
@@ -667,8 +667,8 @@ importers:
integrations/shopify:
specifiers:
'@shopify/shopify-api': ^8.0.2
'@trigger.dev/integration-kit': workspace:^2.3.13
'@trigger.dev/sdk': workspace:^2.3.13
'@trigger.dev/integration-kit': workspace:^2.3.15
'@trigger.dev/sdk': workspace:^2.3.15
'@trigger.dev/tsconfig': workspace:*
'@trigger.dev/tsup': workspace:*
'@types/node': 16.x
@@ -692,7 +692,7 @@ importers:
integrations/slack:
specifiers:
'@slack/web-api': ^6.8.1
'@trigger.dev/sdk': workspace:^2.3.13
'@trigger.dev/sdk': workspace:^2.3.15
'@trigger.dev/tsconfig': workspace:*
'@trigger.dev/tsup': workspace:*
'@types/node': '18'
@@ -714,8 +714,8 @@ importers:
integrations/stripe:
specifiers:
'@trigger.dev/integration-kit': workspace:^2.3.13
'@trigger.dev/sdk': workspace:^2.3.13
'@trigger.dev/integration-kit': workspace:^2.3.15
'@trigger.dev/sdk': workspace:^2.3.15
'@trigger.dev/tsup': workspace:*
'@types/node': 16.x
rimraf: ^3.0.2
@@ -740,8 +740,8 @@ importers:
integrations/supabase:
specifiers:
'@supabase/supabase-js': ^2.26.0
'@trigger.dev/integration-kit': workspace:^2.3.13
'@trigger.dev/sdk': workspace:^2.3.13
'@trigger.dev/integration-kit': workspace:^2.3.15
'@trigger.dev/sdk': workspace:^2.3.15
'@trigger.dev/tsconfig': workspace:*
'@trigger.dev/tsup': workspace:*
'@types/node': 18.x
@@ -766,8 +766,8 @@ importers:
integrations/typeform:
specifiers:
'@trigger.dev/integration-kit': workspace:^2.3.13
'@trigger.dev/sdk': workspace:^2.3.13
'@trigger.dev/integration-kit': workspace:^2.3.15
'@trigger.dev/sdk': workspace:^2.3.15
'@trigger.dev/tsup': workspace:*
'@typeform/api-client': ^1.8.0
'@types/node': 16.x
@@ -1112,7 +1112,7 @@ importers:
packages/express:
specifiers:
'@trigger.dev/sdk': workspace:^2.3.13
'@trigger.dev/sdk': workspace:^2.3.15
'@trigger.dev/tsconfig': workspace:*
'@trigger.dev/tsup': workspace:*
'@types/debug': ^4.1.7
@@ -1182,7 +1182,7 @@ importers:
specifiers:
'@nestjs/common': ^10.2.4
'@remix-run/web-fetch': ^4.3.5
'@trigger.dev/sdk': workspace:^2.3.13
'@trigger.dev/sdk': workspace:^2.3.15
'@trigger.dev/tsconfig': workspace:*
'@trigger.dev/tsup': workspace:*
'@types/debug': ^4.1.7
@@ -1241,7 +1241,7 @@ importers:
packages/react:
specifiers:
'@tanstack/react-query': 5.0.0-beta.2
'@trigger.dev/core': workspace:^2.3.13
'@trigger.dev/core': workspace:^2.3.15
'@trigger.dev/tsconfig': workspace:*
'@types/debug': ^4.1.7
'@types/react': 18.2.17
@@ -1344,8 +1344,8 @@ importers:
packages/trigger-sdk:
specifiers:
'@trigger.dev/core': workspace:^2.3.13
'@trigger.dev/core-backend': workspace:^2.3.13
'@trigger.dev/core': workspace:^2.3.15
'@trigger.dev/core-backend': workspace:^2.3.15
'@trigger.dev/tsconfig': workspace:*
'@trigger.dev/tsup': workspace:*
'@types/debug': ^4.1.7
@@ -23364,7 +23364,7 @@ packages:
'@selderee/plugin-htmlparser2': 0.10.0
deepmerge: 4.3.1
dom-serializer: 2.0.0
htmlparser2: 8.0.1
htmlparser2: 8.0.2
selderee: 0.10.0
dev: false
@@ -23405,15 +23405,6 @@ packages:
entities: 2.2.0
dev: true
/htmlparser2/8.0.1:
resolution: {integrity: sha512-4lVbmc1diZC7GUJQtRQ5yBAeUCL1exyMwmForWkRLnwyzWBFxN633SALPMGYaWZvKe9j1pRZJpauvmxENSp/EA==}
dependencies:
domelementtype: 2.3.0
domhandler: 5.0.3
domutils: 3.0.1
entities: 4.4.0
dev: false
/htmlparser2/8.0.2:
resolution: {integrity: sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==}
dependencies:
@@ -30388,8 +30379,8 @@ packages:
- debug
dev: false
/resend/2.0.0:
resolution: {integrity: sha512-jAh0DN84ZjjmzGM2vMjJ1hphPBg1mG98dzopF7kJzmin62v8ESg4og2iCKWdkAboGOT2SeO5exbr/8Xh8gLddw==}
/resend/2.1.0:
resolution: {integrity: sha512-s6LlaEReTUvlbo6w3Eg1M1TMuwK9OKJ1GVgyptIV8smLPHhFZVqnwBTFPZHID9rcsih72t3iuyrtkQ3IIGwnow==}
engines: {node: '>=18'}
dependencies:
'@react-email/render': 0.0.9
+49 -1
View File
@@ -1,5 +1,5 @@
import { createExpressServer } from "@trigger.dev/express";
import { TriggerClient, eventTrigger } from "@trigger.dev/sdk";
import { TriggerClient, eventTrigger, invokeTrigger } from "@trigger.dev/sdk";
import { z } from "zod";
export const client = new TriggerClient({
@@ -53,4 +53,52 @@ client.defineJob({
},
});
client.defineJob({
id: "test-background-fetch-rety-stuck-error",
name: "Reproduce stuck error",
version: "0.0.1",
trigger: invokeTrigger({
schema: z.object({
url: z.string(),
}),
}),
run: async (payload, io, ctx) => {
await io.runTask(
"test-background-fetch-retry",
async (task) => {
const response = await io.backgroundFetchResponse<any>(
payload.url,
payload.url,
{ method: "GET" },
{
timeout: {
durationInMs: 1000,
retry: {
limit: 2,
factor: 2,
minTimeoutInMs: 3000, // 3 secs
maxTimeoutInMs: 10000, // 10 secs
randomize: true,
},
},
}
);
console.log(`Got response`, response);
},
{
retry: {
limit: 4,
factor: 1.8,
minTimeoutInMs: 1500,
maxTimeoutInMs: 30000,
randomize: true,
},
}
);
await io.logger.info("Got here");
},
});
createExpressServer(client);
+210
View File
@@ -132,4 +132,214 @@ client.defineJob({
},
});
client.defineJob({
id: "create-resend-audience",
name: "Create Resend Audience",
version: "0.1.0",
trigger: eventTrigger({
name: "create.audience",
schema: z.object({
name: z.string(),
}),
}),
integrations: {
resend,
},
run: async (payload, io, ctx) => {
const response = await io.resend.audiences.create("📧", {
name: payload.name,
});
await io.logger.info("Created audience", { response });
},
});
client.defineJob({
id: "get-resend-audience",
name: "Get Resend Audience",
version: "0.1.0",
trigger: eventTrigger({
name: "get.audience",
schema: z.object({
id: z.string(),
}),
}),
integrations: {
resend,
},
run: async (payload, io, ctx) => {
const response = await io.resend.audiences.get("📧", payload.id);
await io.logger.info("Got audience", { response });
},
});
client.defineJob({
id: "remove-resend-audience",
name: "Remove Resend Audience",
version: "0.1.0",
trigger: eventTrigger({
name: "remove.audience",
schema: z.object({
id: z.string(),
}),
}),
integrations: {
resend,
},
run: async (payload, io, ctx) => {
const response = await io.resend.audiences.remove("📧", payload.id);
await io.logger.info("Removed audience", { response });
},
});
client.defineJob({
id: "list-resend-audiences",
name: "List Resend Audiences",
version: "0.1.0",
trigger: eventTrigger({
name: "list.audiences",
}),
integrations: {
resend,
},
run: async (payload, io, ctx) => {
const response = await io.resend.audiences.list("📧");
await io.logger.info("Listed audiences", { response });
},
});
client.defineJob({
id: "create resend contact",
name: "Create Resend Contact",
version: "0.1.0",
trigger: eventTrigger({
name: "create.contact",
schema: z.object({
audience_id: z.string(),
email: z.string(),
unsubscribed: z.boolean().optional(),
first_name: z.string().optional(),
last_name: z.string().optional(),
}),
}),
integrations: {
resend,
},
run: async (payload, io, ctx) => {
const response = await io.resend.contacts.create("📧", {
audience_id: payload.audience_id,
email: payload.email,
unsubscribed: payload.unsubscribed,
first_name: payload.first_name,
last_name: payload.last_name,
});
await io.logger.info("Created contact", { response });
},
});
client.defineJob({
id: "get resend contact",
name: "Get Resend Contact",
version: "0.1.0",
trigger: eventTrigger({
name: "get.contact",
schema: z.object({
audience_id: z.string(),
id: z.string(),
}),
}),
integrations: {
resend,
},
run: async (payload, io, ctx) => {
const response = await io.resend.contacts.get("📧", {
audience_id: payload.audience_id,
id: payload.id,
});
await io.logger.info("Got contact", { response });
},
});
client.defineJob({
id: "update resend contact",
name: "Update Resend Contact",
version: "0.1.0",
trigger: eventTrigger({
name: "update.contact",
schema: z.object({
audience_id: z.string(),
id: z.string(),
email: z.string().optional(),
unsubscribed: z.boolean().optional(),
first_name: z.string().optional(),
last_name: z.string().optional(),
}),
}),
integrations: {
resend,
},
run: async (payload, io, ctx) => {
const response = await io.resend.contacts.update("📧", {
audience_id: payload.audience_id,
id: payload.id,
unsubscribed: payload.unsubscribed,
first_name: payload.first_name,
last_name: payload.last_name,
});
await io.logger.info("Updated contact", { response });
},
});
client.defineJob({
id: "remove resend contact",
name: "Remove Resend Contact",
version: "0.1.0",
trigger: eventTrigger({
name: "remove.contact",
schema: z.object({
audience_id: z.string(),
id: z.string(),
}),
}),
integrations: {
resend,
},
run: async (payload, io, ctx) => {
const response = await io.resend.contacts.remove("📧", {
audience_id: payload.audience_id,
id: payload.id,
});
await io.logger.info("Removed contact", { response });
},
});
client.defineJob({
id: "list resend contacts",
name: "List Resend Contacts",
version: "0.1.0",
trigger: eventTrigger({
name: "list.contacts",
schema: z.object({
audience_id: z.string(),
}),
}),
integrations: {
resend,
},
run: async (payload, io, ctx) => {
const response = await io.resend.contacts.list("📧", {
audience_id: payload.audience_id,
});
await io.logger.info("Listed contacts", { response });
},
});
createExpressServer(client);