@activepieces/piece-resend 0.4.1 → 0.4.3

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 (97) hide show
  1. package/package.json +7 -12
  2. package/src/index.js +14 -102
  3. package/src/index.d.ts +0 -3
  4. package/src/index.d.ts.map +0 -1
  5. package/src/index.js.map +0 -1
  6. package/src/lib/actions/cancel-scheduled-email.action.d.ts +0 -4
  7. package/src/lib/actions/cancel-scheduled-email.action.d.ts.map +0 -1
  8. package/src/lib/actions/cancel-scheduled-email.action.js +0 -31
  9. package/src/lib/actions/cancel-scheduled-email.action.js.map +0 -1
  10. package/src/lib/actions/create-audience.action.d.ts +0 -4
  11. package/src/lib/actions/create-audience.action.d.ts.map +0 -1
  12. package/src/lib/actions/create-audience.action.js +0 -32
  13. package/src/lib/actions/create-audience.action.js.map +0 -1
  14. package/src/lib/actions/create-broadcast.action.d.ts +0 -11
  15. package/src/lib/actions/create-broadcast.action.d.ts.map +0 -1
  16. package/src/lib/actions/create-broadcast.action.js +0 -82
  17. package/src/lib/actions/create-broadcast.action.js.map +0 -1
  18. package/src/lib/actions/create-contact.action.d.ts +0 -8
  19. package/src/lib/actions/create-contact.action.d.ts.map +0 -1
  20. package/src/lib/actions/create-contact.action.js +0 -45
  21. package/src/lib/actions/create-contact.action.js.map +0 -1
  22. package/src/lib/actions/create-domain.action.d.ts +0 -5
  23. package/src/lib/actions/create-domain.action.d.ts.map +0 -1
  24. package/src/lib/actions/create-domain.action.js +0 -59
  25. package/src/lib/actions/create-domain.action.js.map +0 -1
  26. package/src/lib/actions/delete-audience.action.d.ts +0 -4
  27. package/src/lib/actions/delete-audience.action.d.ts.map +0 -1
  28. package/src/lib/actions/delete-audience.action.js +0 -28
  29. package/src/lib/actions/delete-audience.action.js.map +0 -1
  30. package/src/lib/actions/delete-broadcast.action.d.ts +0 -4
  31. package/src/lib/actions/delete-broadcast.action.d.ts.map +0 -1
  32. package/src/lib/actions/delete-broadcast.action.js +0 -28
  33. package/src/lib/actions/delete-broadcast.action.js.map +0 -1
  34. package/src/lib/actions/delete-contact.action.d.ts +0 -5
  35. package/src/lib/actions/delete-contact.action.d.ts.map +0 -1
  36. package/src/lib/actions/delete-contact.action.js +0 -29
  37. package/src/lib/actions/delete-contact.action.js.map +0 -1
  38. package/src/lib/actions/delete-domain.action.d.ts +0 -4
  39. package/src/lib/actions/delete-domain.action.d.ts.map +0 -1
  40. package/src/lib/actions/delete-domain.action.js +0 -28
  41. package/src/lib/actions/delete-domain.action.js.map +0 -1
  42. package/src/lib/actions/get-email-status.action.d.ts +0 -4
  43. package/src/lib/actions/get-email-status.action.d.ts.map +0 -1
  44. package/src/lib/actions/get-email-status.action.js +0 -34
  45. package/src/lib/actions/get-email-status.action.js.map +0 -1
  46. package/src/lib/actions/list-audiences.action.d.ts +0 -2
  47. package/src/lib/actions/list-audiences.action.d.ts.map +0 -1
  48. package/src/lib/actions/list-audiences.action.js +0 -25
  49. package/src/lib/actions/list-audiences.action.js.map +0 -1
  50. package/src/lib/actions/list-broadcasts.action.d.ts +0 -2
  51. package/src/lib/actions/list-broadcasts.action.d.ts.map +0 -1
  52. package/src/lib/actions/list-broadcasts.action.js +0 -40
  53. package/src/lib/actions/list-broadcasts.action.js.map +0 -1
  54. package/src/lib/actions/list-contacts.action.d.ts +0 -4
  55. package/src/lib/actions/list-contacts.action.d.ts.map +0 -1
  56. package/src/lib/actions/list-contacts.action.js +0 -28
  57. package/src/lib/actions/list-contacts.action.js.map +0 -1
  58. package/src/lib/actions/list-domains.action.d.ts +0 -2
  59. package/src/lib/actions/list-domains.action.d.ts.map +0 -1
  60. package/src/lib/actions/list-domains.action.js +0 -36
  61. package/src/lib/actions/list-domains.action.js.map +0 -1
  62. package/src/lib/actions/list-emails.action.d.ts +0 -2
  63. package/src/lib/actions/list-emails.action.d.ts.map +0 -1
  64. package/src/lib/actions/list-emails.action.js +0 -39
  65. package/src/lib/actions/list-emails.action.js.map +0 -1
  66. package/src/lib/actions/reschedule-email.action.d.ts +0 -5
  67. package/src/lib/actions/reschedule-email.action.d.ts.map +0 -1
  68. package/src/lib/actions/reschedule-email.action.js +0 -37
  69. package/src/lib/actions/reschedule-email.action.js.map +0 -1
  70. package/src/lib/actions/send-batch-emails.action.d.ts +0 -5
  71. package/src/lib/actions/send-batch-emails.action.d.ts.map +0 -1
  72. package/src/lib/actions/send-batch-emails.action.js +0 -111
  73. package/src/lib/actions/send-batch-emails.action.js.map +0 -1
  74. package/src/lib/actions/send-broadcast.action.d.ts +0 -5
  75. package/src/lib/actions/send-broadcast.action.d.ts.map +0 -1
  76. package/src/lib/actions/send-broadcast.action.js +0 -37
  77. package/src/lib/actions/send-broadcast.action.js.map +0 -1
  78. package/src/lib/actions/send-email.d.ts +0 -12
  79. package/src/lib/actions/send-email.d.ts.map +0 -1
  80. package/src/lib/actions/send-email.js +0 -101
  81. package/src/lib/actions/send-email.js.map +0 -1
  82. package/src/lib/actions/update-contact.action.d.ts +0 -8
  83. package/src/lib/actions/update-contact.action.d.ts.map +0 -1
  84. package/src/lib/actions/update-contact.action.js +0 -52
  85. package/src/lib/actions/update-contact.action.js.map +0 -1
  86. package/src/lib/actions/verify-domain.action.d.ts +0 -4
  87. package/src/lib/actions/verify-domain.action.d.ts.map +0 -1
  88. package/src/lib/actions/verify-domain.action.js +0 -28
  89. package/src/lib/actions/verify-domain.action.js.map +0 -1
  90. package/src/lib/common/props.d.ts +0 -7
  91. package/src/lib/common/props.d.ts.map +0 -1
  92. package/src/lib/common/props.js +0 -93
  93. package/src/lib/common/props.js.map +0 -1
  94. package/src/lib/triggers/email-bounced.trigger.d.ts +0 -11
  95. package/src/lib/triggers/email-bounced.trigger.d.ts.map +0 -1
  96. package/src/lib/triggers/email-bounced.trigger.js +0 -135
  97. package/src/lib/triggers/email-bounced.trigger.js.map +0 -1
@@ -1,93 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.resendProps = void 0;
4
- const tslib_1 = require("tslib");
5
- const pieces_framework_1 = require("@activepieces/pieces-framework");
6
- const pieces_common_1 = require("@activepieces/pieces-common");
7
- const __1 = require("../..");
8
- const BASE_URL = 'https://api.resend.com';
9
- const audienceIdProp = pieces_framework_1.Property.Dropdown({
10
- displayName: 'Audience',
11
- required: true,
12
- auth: __1.resendAuth,
13
- refreshers: [],
14
- options: (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function* ({ auth }) {
15
- if (!auth) {
16
- return { disabled: true, placeholder: 'Connect your Resend account first', options: [] };
17
- }
18
- const response = yield pieces_common_1.httpClient.sendRequest({
19
- method: pieces_common_1.HttpMethod.GET,
20
- url: `${BASE_URL}/audiences`,
21
- authentication: { type: pieces_common_1.AuthenticationType.BEARER_TOKEN, token: auth.secret_text },
22
- });
23
- return { options: response.body.data.map((a) => ({ label: a.name, value: a.id })) };
24
- }),
25
- });
26
- const domainIdProp = pieces_framework_1.Property.Dropdown({
27
- displayName: 'Domain',
28
- required: true,
29
- auth: __1.resendAuth,
30
- refreshers: [],
31
- options: (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function* ({ auth }) {
32
- if (!auth) {
33
- return { disabled: true, placeholder: 'Connect your Resend account first', options: [] };
34
- }
35
- const response = yield pieces_common_1.httpClient.sendRequest({
36
- method: pieces_common_1.HttpMethod.GET,
37
- url: `${BASE_URL}/domains`,
38
- authentication: { type: pieces_common_1.AuthenticationType.BEARER_TOKEN, token: auth.secret_text },
39
- });
40
- return { options: response.body.data.map((d) => ({ label: d.name, value: d.id })) };
41
- }),
42
- });
43
- const broadcastIdProp = pieces_framework_1.Property.Dropdown({
44
- displayName: 'Broadcast',
45
- required: true,
46
- auth: __1.resendAuth,
47
- refreshers: [],
48
- options: (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function* ({ auth }) {
49
- if (!auth) {
50
- return { disabled: true, placeholder: 'Connect your Resend account first', options: [] };
51
- }
52
- const response = yield pieces_common_1.httpClient.sendRequest({
53
- method: pieces_common_1.HttpMethod.GET,
54
- url: `${BASE_URL}/broadcasts`,
55
- authentication: { type: pieces_common_1.AuthenticationType.BEARER_TOKEN, token: auth.secret_text },
56
- });
57
- return {
58
- options: response.body.data.map((b) => ({
59
- label: b.name ? `${b.name} — ${b.subject}` : b.subject,
60
- value: b.id,
61
- })),
62
- };
63
- }),
64
- });
65
- const contactIdProp = pieces_framework_1.Property.Dropdown({
66
- displayName: 'Contact',
67
- required: true,
68
- auth: __1.resendAuth,
69
- refreshers: ['audience_id'],
70
- options: (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function* ({ auth, audience_id }) {
71
- if (!auth || !audience_id) {
72
- return { disabled: true, placeholder: 'Select an audience first', options: [] };
73
- }
74
- const response = yield pieces_common_1.httpClient.sendRequest({
75
- method: pieces_common_1.HttpMethod.GET,
76
- url: `${BASE_URL}/audiences/${String(audience_id)}/contacts`,
77
- authentication: { type: pieces_common_1.AuthenticationType.BEARER_TOKEN, token: auth.secret_text },
78
- });
79
- return {
80
- options: response.body.data.map((c) => {
81
- const name = [c.first_name, c.last_name].filter(Boolean).join(' ');
82
- return { label: name ? `${name} <${c.email}>` : c.email, value: c.id };
83
- }),
84
- };
85
- }),
86
- });
87
- exports.resendProps = {
88
- audienceId: audienceIdProp,
89
- domainId: domainIdProp,
90
- broadcastId: broadcastIdProp,
91
- contactId: contactIdProp,
92
- };
93
- //# sourceMappingURL=props.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"props.js","sourceRoot":"","sources":["../../../../src/lib/common/props.ts"],"names":[],"mappings":";;;;AAAA,qEAA0D;AAC1D,+DAAyF;AACzF,6BAAmC;AAEnC,MAAM,QAAQ,GAAG,wBAAwB,CAAC;AAE1C,MAAM,cAAc,GAAG,2BAAQ,CAAC,QAAQ,CAAC;IACvC,WAAW,EAAE,UAAU;IACvB,QAAQ,EAAE,IAAI;IACd,IAAI,EAAE,cAAU;IAChB,UAAU,EAAE,EAAE;IACd,OAAO,EAAE,KAAiB,EAAE,oDAAZ,EAAE,IAAI,EAAE;QACtB,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,mCAAmC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;QAC3F,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAA2C;YACtF,MAAM,EAAE,0BAAU,CAAC,GAAG;YACtB,GAAG,EAAE,GAAG,QAAQ,YAAY;YAC5B,cAAc,EAAE,EAAE,IAAI,EAAE,kCAAkB,CAAC,YAAY,EAAE,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE;SACnF,CAAC,CAAC;QACH,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC;IACtF,CAAC,CAAA;CACF,CAAC,CAAC;AAEH,MAAM,YAAY,GAAG,2BAAQ,CAAC,QAAQ,CAAC;IACrC,WAAW,EAAE,QAAQ;IACrB,QAAQ,EAAE,IAAI;IACd,IAAI,EAAE,cAAU;IAChB,UAAU,EAAE,EAAE;IACd,OAAO,EAAE,KAAiB,EAAE,oDAAZ,EAAE,IAAI,EAAE;QACtB,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,mCAAmC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;QAC3F,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAA2C;YACtF,MAAM,EAAE,0BAAU,CAAC,GAAG;YACtB,GAAG,EAAE,GAAG,QAAQ,UAAU;YAC1B,cAAc,EAAE,EAAE,IAAI,EAAE,kCAAkB,CAAC,YAAY,EAAE,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE;SACnF,CAAC,CAAC;QACH,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC;IACtF,CAAC,CAAA;CACF,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG,2BAAQ,CAAC,QAAQ,CAAC;IACxC,WAAW,EAAE,WAAW;IACxB,QAAQ,EAAE,IAAI;IACd,IAAI,EAAE,cAAU;IAChB,UAAU,EAAE,EAAE;IACd,OAAO,EAAE,KAAiB,EAAE,oDAAZ,EAAE,IAAI,EAAE;QACtB,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,mCAAmC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;QAC3F,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAE1C;YACD,MAAM,EAAE,0BAAU,CAAC,GAAG;YACtB,GAAG,EAAE,GAAG,QAAQ,aAAa;YAC7B,cAAc,EAAE,EAAE,IAAI,EAAE,kCAAkB,CAAC,YAAY,EAAE,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE;SACnF,CAAC,CAAC;QACH,OAAO;YACL,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACtC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO;gBACtD,KAAK,EAAE,CAAC,CAAC,EAAE;aACZ,CAAC,CAAC;SACJ,CAAC;IACJ,CAAC,CAAA;CACF,CAAC,CAAC;AAEH,MAAM,aAAa,GAAG,2BAAQ,CAAC,QAAQ,CAAC;IACtC,WAAW,EAAE,SAAS;IACtB,QAAQ,EAAE,IAAI;IACd,IAAI,EAAE,cAAU;IAChB,UAAU,EAAE,CAAC,aAAa,CAAC;IAC3B,OAAO,EAAE,KAA8B,EAAE,oDAAzB,EAAE,IAAI,EAAE,WAAW,EAAE;QACnC,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YAC1B,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,0BAA0B,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;QAClF,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAE1C;YACD,MAAM,EAAE,0BAAU,CAAC,GAAG;YACtB,GAAG,EAAE,GAAG,QAAQ,cAAc,MAAM,CAAC,WAAW,CAAC,WAAW;YAC5D,cAAc,EAAE,EAAE,IAAI,EAAE,kCAAkB,CAAC,YAAY,EAAE,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE;SACnF,CAAC,CAAC;QACH,OAAO;YACL,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBACpC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACnE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;YACzE,CAAC,CAAC;SACH,CAAC;IACJ,CAAC,CAAA;CACF,CAAC,CAAC;AAEU,QAAA,WAAW,GAAG;IACzB,UAAU,EAAE,cAAc;IAC1B,QAAQ,EAAE,YAAY;IACtB,WAAW,EAAE,eAAe;IAC5B,SAAS,EAAE,aAAa;CACzB,CAAC"}
@@ -1,11 +0,0 @@
1
- import { TriggerStrategy } from '@activepieces/pieces-framework';
2
- export declare const emailBounced: import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.WEBHOOK, import("@activepieces/pieces-framework").SecretTextProperty<true>, {
3
- events: import("@activepieces/pieces-framework").StaticMultiSelectDropdownProperty<string, true>;
4
- }> | import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.POLLING, import("@activepieces/pieces-framework").SecretTextProperty<true>, {
5
- events: import("@activepieces/pieces-framework").StaticMultiSelectDropdownProperty<string, true>;
6
- }> | import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.MANUAL, import("@activepieces/pieces-framework").SecretTextProperty<true>, {
7
- events: import("@activepieces/pieces-framework").StaticMultiSelectDropdownProperty<string, true>;
8
- }> | import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.APP_WEBHOOK, import("@activepieces/pieces-framework").SecretTextProperty<true>, {
9
- events: import("@activepieces/pieces-framework").StaticMultiSelectDropdownProperty<string, true>;
10
- }>;
11
- //# sourceMappingURL=email-bounced.trigger.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"email-bounced.trigger.d.ts","sourceRoot":"","sources":["../../../../src/lib/triggers/email-bounced.trigger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,eAAe,EAAY,MAAM,gCAAgC,CAAC;AA0E1F,eAAO,MAAM,YAAY;;;;;;;;EA4EvB,CAAC"}
@@ -1,135 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.emailBounced = void 0;
4
- const tslib_1 = require("tslib");
5
- const pieces_framework_1 = require("@activepieces/pieces-framework");
6
- const pieces_common_1 = require("@activepieces/pieces-common");
7
- const crypto_1 = tslib_1.__importDefault(require("crypto"));
8
- const __1 = require("../..");
9
- const BASE_URL = 'https://api.resend.com';
10
- const STORE_KEY = 'webhookData';
11
- const TIMESTAMP_TOLERANCE_SECONDS = 300;
12
- const EVENT_OPTIONS = [
13
- { label: 'Email Sent', value: 'email.sent' },
14
- { label: 'Email Delivered', value: 'email.delivered' },
15
- { label: 'Email Delivery Delayed', value: 'email.delivery_delayed' },
16
- { label: 'Email Complained', value: 'email.complained' },
17
- { label: 'Email Bounced', value: 'email.bounced' },
18
- { label: 'Email Opened', value: 'email.opened' },
19
- { label: 'Email Clicked', value: 'email.clicked' },
20
- { label: 'Email Failed', value: 'email.failed' },
21
- { label: 'Email Received', value: 'email.received' },
22
- { label: 'Email Scheduled', value: 'email.scheduled' },
23
- { label: 'Email Suppressed', value: 'email.suppressed' },
24
- { label: 'Domain Created', value: 'domain.created' },
25
- { label: 'Domain Updated', value: 'domain.updated' },
26
- { label: 'Domain Deleted', value: 'domain.deleted' },
27
- { label: 'Contact Created', value: 'contact.created' },
28
- { label: 'Contact Updated', value: 'contact.updated' },
29
- { label: 'Contact Deleted', value: 'contact.deleted' },
30
- ];
31
- function verifyResendWebhook({ rawBody, headers, signingSecret, }) {
32
- const svixId = headers['svix-id'];
33
- const svixTimestamp = headers['svix-timestamp'];
34
- const svixSignature = headers['svix-signature'];
35
- if (!svixId || !svixTimestamp || !svixSignature) {
36
- return false;
37
- }
38
- const now = Math.floor(Date.now() / 1000);
39
- if (Math.abs(now - parseInt(svixTimestamp, 10)) > TIMESTAMP_TOLERANCE_SECONDS) {
40
- return false;
41
- }
42
- const bodyString = Buffer.isBuffer(rawBody) ? rawBody.toString('utf8') : String(rawBody);
43
- const secretBytes = Buffer.from(signingSecret.replace('whsec_', ''), 'base64');
44
- const toSign = `${svixId}.${svixTimestamp}.${bodyString}`;
45
- const computed = crypto_1.default.createHmac('sha256', secretBytes).update(toSign).digest('base64');
46
- return svixSignature.split(' ').some((sig) => {
47
- const [version, sigValue] = sig.split(',');
48
- if (version !== 'v1' || !sigValue)
49
- return false;
50
- try {
51
- return crypto_1.default.timingSafeEqual(Buffer.from(sigValue, 'base64'), Buffer.from(computed, 'base64'));
52
- }
53
- catch (_a) {
54
- return false;
55
- }
56
- });
57
- }
58
- exports.emailBounced = (0, pieces_framework_1.createTrigger)({
59
- name: 'email_bounced',
60
- auth: __1.resendAuth,
61
- displayName: 'Email Event',
62
- description: 'Triggers when a selected email or contact event occurs in Resend',
63
- type: pieces_framework_1.TriggerStrategy.WEBHOOK,
64
- props: {
65
- events: pieces_framework_1.Property.StaticMultiSelectDropdown({
66
- displayName: 'Events',
67
- description: 'Select one or more event types to subscribe to',
68
- required: true,
69
- options: {
70
- options: EVENT_OPTIONS,
71
- },
72
- }),
73
- },
74
- onEnable(context) {
75
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
76
- const response = yield pieces_common_1.httpClient.sendRequest({
77
- method: pieces_common_1.HttpMethod.POST,
78
- url: `${BASE_URL}/webhooks`,
79
- authentication: {
80
- type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
81
- token: context.auth.secret_text,
82
- },
83
- body: {
84
- endpoint: context.webhookUrl,
85
- events: context.propsValue.events,
86
- },
87
- });
88
- yield context.store.put(STORE_KEY, {
89
- id: response.body.id,
90
- signingSecret: response.body.signing_secret,
91
- });
92
- });
93
- },
94
- onDisable(context) {
95
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
96
- const data = yield context.store.get(STORE_KEY);
97
- if (data === null || data === void 0 ? void 0 : data.id) {
98
- yield pieces_common_1.httpClient.sendRequest({
99
- method: pieces_common_1.HttpMethod.DELETE,
100
- url: `${BASE_URL}/webhooks/${data.id}`,
101
- authentication: {
102
- type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
103
- token: context.auth.secret_text,
104
- },
105
- });
106
- }
107
- });
108
- },
109
- run(context) {
110
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
111
- var _a;
112
- const data = yield context.store.get(STORE_KEY);
113
- if (!verifyResendWebhook({
114
- rawBody: context.payload.rawBody,
115
- headers: context.payload.headers,
116
- signingSecret: (_a = data === null || data === void 0 ? void 0 : data.signingSecret) !== null && _a !== void 0 ? _a : '',
117
- })) {
118
- return [];
119
- }
120
- return [context.payload.body];
121
- });
122
- },
123
- sampleData: {
124
- type: 'email.bounced',
125
- created_at: '2024-03-08T09:37:40.912Z',
126
- data: {
127
- created_at: '2024-03-08T09:37:40.911Z',
128
- email_id: '562e3f00-6bad-4910-b1e3-38c2fca1e2ff',
129
- from: 'onboarding@resend.dev',
130
- to: ['john@example.com'],
131
- subject: 'Re: Follow up',
132
- },
133
- },
134
- });
135
- //# sourceMappingURL=email-bounced.trigger.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"email-bounced.trigger.js","sourceRoot":"","sources":["../../../../src/lib/triggers/email-bounced.trigger.ts"],"names":[],"mappings":"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"}