@activepieces/piece-buttondown 0.0.2 → 0.0.4

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 (40) hide show
  1. package/package.json +7 -12
  2. package/src/index.js +13 -29
  3. package/src/index.d.ts +0 -1
  4. package/src/index.js.map +0 -1
  5. package/src/lib/actions/create-subscriber.d.ts +0 -16
  6. package/src/lib/actions/create-subscriber.js +0 -148
  7. package/src/lib/actions/create-subscriber.js.map +0 -1
  8. package/src/lib/actions/custom-api-call.d.ts +0 -12
  9. package/src/lib/actions/custom-api-call.js +0 -17
  10. package/src/lib/actions/custom-api-call.js.map +0 -1
  11. package/src/lib/actions/list-subscribers.d.ts +0 -10
  12. package/src/lib/actions/list-subscribers.js +0 -108
  13. package/src/lib/actions/list-subscribers.js.map +0 -1
  14. package/src/lib/actions/send-email.d.ts +0 -15
  15. package/src/lib/actions/send-email.js +0 -140
  16. package/src/lib/actions/send-email.js.map +0 -1
  17. package/src/lib/common/auth.d.ts +0 -1
  18. package/src/lib/common/auth.js +0 -44
  19. package/src/lib/common/auth.js.map +0 -1
  20. package/src/lib/common/client.d.ts +0 -19
  21. package/src/lib/common/client.js +0 -39
  22. package/src/lib/common/client.js.map +0 -1
  23. package/src/lib/common/options.d.ts +0 -21
  24. package/src/lib/common/options.js +0 -58
  25. package/src/lib/common/options.js.map +0 -1
  26. package/src/lib/common/types.d.ts +0 -80
  27. package/src/lib/common/types.js +0 -3
  28. package/src/lib/common/types.js.map +0 -1
  29. package/src/lib/common/webhook.d.ts +0 -32
  30. package/src/lib/common/webhook.js +0 -77
  31. package/src/lib/common/webhook.js.map +0 -1
  32. package/src/lib/triggers/email-sent.d.ts +0 -13
  33. package/src/lib/triggers/email-sent.js +0 -38
  34. package/src/lib/triggers/email-sent.js.map +0 -1
  35. package/src/lib/triggers/new-subscriber.d.ts +0 -13
  36. package/src/lib/triggers/new-subscriber.js +0 -38
  37. package/src/lib/triggers/new-subscriber.js.map +0 -1
  38. package/src/lib/triggers/subscriber-confirmed.d.ts +0 -13
  39. package/src/lib/triggers/subscriber-confirmed.js +0 -38
  40. package/src/lib/triggers/subscriber-confirmed.js.map +0 -1
@@ -1,10 +0,0 @@
1
- export declare const listSubscribers: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").SecretTextProperty<true>, {
2
- limit: import("@activepieces/pieces-framework").NumberProperty<false>;
3
- cursor: import("@activepieces/pieces-framework").ShortTextProperty<false>;
4
- type: import("@activepieces/pieces-framework").StaticDropdownProperty<import("../common/types").ButtondownSubscriberType, false>;
5
- source: import("@activepieces/pieces-framework").StaticDropdownProperty<import("../common/types").ButtondownSubscriberSource, false>;
6
- tags: import("@activepieces/pieces-framework").ArrayProperty<true> | import("@activepieces/pieces-framework").ArrayProperty<false>;
7
- emailAddress: import("@activepieces/pieces-framework").ShortTextProperty<false>;
8
- referrerUrl: import("@activepieces/pieces-framework").ShortTextProperty<false>;
9
- ordering: import("@activepieces/pieces-framework").StaticDropdownProperty<string, false>;
10
- }>;
@@ -1,108 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.listSubscribers = void 0;
4
- const tslib_1 = require("tslib");
5
- const pieces_common_1 = require("@activepieces/pieces-common");
6
- const pieces_framework_1 = require("@activepieces/pieces-framework");
7
- const auth_1 = require("../common/auth");
8
- const client_1 = require("../common/client");
9
- const options_1 = require("../common/options");
10
- exports.listSubscribers = (0, pieces_framework_1.createAction)({
11
- auth: auth_1.buttondownAuth,
12
- name: 'listSubscribers',
13
- displayName: 'List Subscribers',
14
- description: 'Retrieve subscribers from Buttondown.',
15
- props: {
16
- limit: pieces_framework_1.Property.Number({
17
- displayName: 'Page Size',
18
- description: 'Maximum number of subscribers to return (1-1000).',
19
- required: false,
20
- defaultValue: 100,
21
- }),
22
- cursor: pieces_framework_1.Property.ShortText({
23
- displayName: 'Cursor',
24
- description: 'Provide the cursor value from a previous response to fetch the next page.',
25
- required: false,
26
- }),
27
- type: pieces_framework_1.Property.StaticDropdown({
28
- displayName: 'Subscriber Type',
29
- required: false,
30
- options: {
31
- options: options_1.subscriberTypeOptions,
32
- },
33
- }),
34
- source: pieces_framework_1.Property.StaticDropdown({
35
- displayName: 'Source',
36
- required: false,
37
- options: {
38
- options: options_1.subscriberSourceOptions,
39
- },
40
- }),
41
- tags: pieces_framework_1.Property.Array({
42
- displayName: 'Tags',
43
- description: 'Filter by subscribers who have at least one of these tags.',
44
- required: false,
45
- properties: {
46
- tag: pieces_framework_1.Property.ShortText({
47
- displayName: 'Tag',
48
- required: true,
49
- }),
50
- },
51
- }),
52
- emailAddress: pieces_framework_1.Property.ShortText({
53
- displayName: 'Email Contains',
54
- description: 'Return subscribers whose email address contains this value.',
55
- required: false,
56
- }),
57
- referrerUrl: pieces_framework_1.Property.ShortText({
58
- displayName: 'Referrer URL Contains',
59
- required: false,
60
- }),
61
- ordering: pieces_framework_1.Property.StaticDropdown({
62
- displayName: 'Ordering',
63
- required: false,
64
- options: {
65
- options: options_1.subscriberOrderingOptions,
66
- },
67
- }),
68
- },
69
- run(_a) {
70
- return tslib_1.__awaiter(this, arguments, void 0, function* ({ auth, propsValue }) {
71
- var _b;
72
- const query = {};
73
- if (propsValue.limit) {
74
- query['page_size'] = propsValue.limit;
75
- }
76
- if (propsValue.cursor) {
77
- query['cursor'] = propsValue.cursor;
78
- }
79
- if (propsValue.type) {
80
- query['type'] = [propsValue.type];
81
- }
82
- if (propsValue.source) {
83
- query['source'] = [propsValue.source];
84
- }
85
- const tags = (_b = propsValue.tags) === null || _b === void 0 ? void 0 : _b.map((entry) => { var _a; return (_a = entry.tag) === null || _a === void 0 ? void 0 : _a.trim(); }).filter((tag) => !!tag);
86
- if (tags && tags.length > 0) {
87
- query['tag'] = tags;
88
- }
89
- if (propsValue.emailAddress) {
90
- query['email_address'] = propsValue.emailAddress;
91
- }
92
- if (propsValue.referrerUrl) {
93
- query['referrer_url'] = propsValue.referrerUrl;
94
- }
95
- if (propsValue.ordering) {
96
- query['ordering'] = propsValue.ordering;
97
- }
98
- const response = yield (0, client_1.buttondownRequest)({
99
- auth: auth.secret_text,
100
- method: pieces_common_1.HttpMethod.GET,
101
- path: '/subscribers',
102
- query,
103
- });
104
- return response;
105
- });
106
- },
107
- });
108
- //# sourceMappingURL=list-subscribers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"list-subscribers.js","sourceRoot":"","sources":["../../../../src/lib/actions/list-subscribers.ts"],"names":[],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- import { ButtondownEmailStatus, ButtondownEmailType } from '../common/types';
2
- export declare const sendEmail: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").SecretTextProperty<true>, {
3
- subject: import("@activepieces/pieces-framework").ShortTextProperty<true>;
4
- body: import("@activepieces/pieces-framework").LongTextProperty<true>;
5
- status: import("@activepieces/pieces-framework").StaticDropdownProperty<ButtondownEmailStatus, false>;
6
- publishDate: import("@activepieces/pieces-framework").DateTimeProperty<false>;
7
- emailType: import("@activepieces/pieces-framework").StaticDropdownProperty<ButtondownEmailType, false>;
8
- description: import("@activepieces/pieces-framework").LongTextProperty<false>;
9
- canonicalUrl: import("@activepieces/pieces-framework").ShortTextProperty<false>;
10
- image: import("@activepieces/pieces-framework").ShortTextProperty<false>;
11
- slug: import("@activepieces/pieces-framework").ShortTextProperty<false>;
12
- metadata: import("@activepieces/pieces-framework").JsonProperty<false>;
13
- attachments: import("@activepieces/pieces-framework").ArrayProperty<true> | import("@activepieces/pieces-framework").ArrayProperty<false>;
14
- triggerBilling: import("@activepieces/pieces-framework").CheckboxProperty<false>;
15
- }>;
@@ -1,140 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.sendEmail = void 0;
4
- const tslib_1 = require("tslib");
5
- const pieces_common_1 = require("@activepieces/pieces-common");
6
- const pieces_framework_1 = require("@activepieces/pieces-framework");
7
- const auth_1 = require("../common/auth");
8
- const client_1 = require("../common/client");
9
- const options_1 = require("../common/options");
10
- exports.sendEmail = (0, pieces_framework_1.createAction)({
11
- auth: auth_1.buttondownAuth,
12
- name: 'sendEmail',
13
- displayName: 'Send Email',
14
- description: 'Send an email to your Buttondown subscribers.',
15
- props: {
16
- subject: pieces_framework_1.Property.ShortText({
17
- displayName: 'Subject',
18
- required: true,
19
- }),
20
- body: pieces_framework_1.Property.LongText({
21
- displayName: 'Body',
22
- description: 'Write your email content in Markdown or HTML. Buttondown will detect the format automatically.',
23
- required: true,
24
- }),
25
- status: pieces_framework_1.Property.StaticDropdown({
26
- displayName: 'Delivery Status',
27
- description: 'Choose how Buttondown should treat this email after creation.',
28
- required: false,
29
- defaultValue: 'about_to_send',
30
- options: {
31
- options: options_1.emailStatusOptions,
32
- },
33
- }),
34
- publishDate: pieces_framework_1.Property.DateTime({
35
- displayName: 'Publish Date',
36
- description: 'Required when scheduling an email. Use ISO 8601 format.',
37
- required: false,
38
- }),
39
- emailType: pieces_framework_1.Property.StaticDropdown({
40
- displayName: 'Email Type',
41
- required: false,
42
- defaultValue: 'public',
43
- options: {
44
- options: options_1.emailTypeOptions,
45
- },
46
- }),
47
- description: pieces_framework_1.Property.LongText({
48
- displayName: 'Description',
49
- required: false,
50
- }),
51
- canonicalUrl: pieces_framework_1.Property.ShortText({
52
- displayName: 'Canonical URL',
53
- required: false,
54
- }),
55
- image: pieces_framework_1.Property.ShortText({
56
- displayName: 'Primary Image URL',
57
- required: false,
58
- }),
59
- slug: pieces_framework_1.Property.ShortText({
60
- displayName: 'Slug',
61
- description: 'Override the automatic slug used for the archive URL.',
62
- required: false,
63
- }),
64
- metadata: pieces_framework_1.Property.Json({
65
- displayName: 'Metadata',
66
- description: 'Custom metadata to attach to the email (JSON object).',
67
- required: false,
68
- }),
69
- attachments: pieces_framework_1.Property.Array({
70
- displayName: 'Attachment IDs',
71
- description: 'IDs of attachments uploaded via the Buttondown API.',
72
- required: false,
73
- properties: {
74
- id: pieces_framework_1.Property.ShortText({
75
- displayName: 'Attachment ID',
76
- required: true,
77
- }),
78
- },
79
- }),
80
- triggerBilling: pieces_framework_1.Property.Checkbox({
81
- displayName: 'Trigger Pay-per-email Billing',
82
- description: 'Enable when this email should count against pay-per-email billing for paid subscribers.',
83
- required: false,
84
- defaultValue: false,
85
- }),
86
- },
87
- run(_a) {
88
- return tslib_1.__awaiter(this, arguments, void 0, function* ({ auth, propsValue }) {
89
- var _b, _c;
90
- const status = (_b = propsValue.status) !== null && _b !== void 0 ? _b : 'about_to_send';
91
- if (status === 'scheduled' && !propsValue.publishDate) {
92
- throw new Error('Publish date is required when scheduling an email.');
93
- }
94
- const payload = {
95
- subject: propsValue.subject,
96
- body: propsValue.body,
97
- status,
98
- };
99
- if (propsValue.publishDate) {
100
- payload.publish_date = propsValue.publishDate;
101
- }
102
- if (propsValue.emailType) {
103
- payload.email_type = propsValue.emailType;
104
- }
105
- if (propsValue.description) {
106
- payload.description = propsValue.description;
107
- }
108
- if (propsValue.canonicalUrl) {
109
- payload.canonical_url = propsValue.canonicalUrl;
110
- }
111
- if (propsValue.image) {
112
- payload.image = propsValue.image;
113
- }
114
- if (propsValue.slug) {
115
- payload.slug = propsValue.slug;
116
- }
117
- if (propsValue.metadata) {
118
- if (typeof propsValue.metadata !== 'object' || Array.isArray(propsValue.metadata)) {
119
- throw new Error('Metadata must be provided as a JSON object.');
120
- }
121
- payload.metadata = propsValue.metadata;
122
- }
123
- const attachments = (_c = propsValue.attachments) === null || _c === void 0 ? void 0 : _c.map((entry) => { var _a; return (_a = entry.id) === null || _a === void 0 ? void 0 : _a.trim(); }).filter((id) => !!id);
124
- if (attachments && attachments.length > 0) {
125
- payload.attachments = attachments;
126
- }
127
- if (propsValue.triggerBilling) {
128
- payload.should_trigger_pay_per_email_billing = true;
129
- }
130
- const email = yield (0, client_1.buttondownRequest)({
131
- auth: auth.secret_text,
132
- method: pieces_common_1.HttpMethod.POST,
133
- path: '/emails',
134
- body: payload,
135
- });
136
- return email;
137
- });
138
- },
139
- });
140
- //# sourceMappingURL=send-email.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"send-email.js","sourceRoot":"","sources":["../../../../src/lib/actions/send-email.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export declare const buttondownAuth: import("@activepieces/pieces-framework").SecretTextProperty<true>;
@@ -1,44 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.buttondownAuth = void 0;
4
- const tslib_1 = require("tslib");
5
- const pieces_common_1 = require("@activepieces/pieces-common");
6
- const pieces_framework_1 = require("@activepieces/pieces-framework");
7
- const client_1 = require("./client");
8
- exports.buttondownAuth = pieces_framework_1.PieceAuth.SecretText({
9
- displayName: 'API Key',
10
- description: 'Create an API key from https://buttondown.com/keys and paste it here.',
11
- required: true,
12
- validate: (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function* ({ auth }) {
13
- var _b, _c, _d, _e, _f, _g;
14
- if (!auth) {
15
- return {
16
- valid: false,
17
- error: 'API key is required.',
18
- };
19
- }
20
- try {
21
- yield pieces_common_1.httpClient.sendRequest({
22
- method: pieces_common_1.HttpMethod.GET,
23
- url: `${client_1.BUTTONDOWN_BASE_URL}/newsletters`,
24
- headers: {
25
- Authorization: `Token ${auth}`,
26
- },
27
- });
28
- return {
29
- valid: true,
30
- };
31
- }
32
- catch (unknownError) {
33
- const error = unknownError;
34
- const status = (_b = error.response) === null || _b === void 0 ? void 0 : _b.status;
35
- const body = (_d = (_c = error.response) === null || _c === void 0 ? void 0 : _c.body) !== null && _d !== void 0 ? _d : {};
36
- const message = (_g = (_f = (_e = body.detail) !== null && _e !== void 0 ? _e : body.error) !== null && _f !== void 0 ? _f : body.message) !== null && _g !== void 0 ? _g : (status === 401 ? 'Invalid API key.' : 'Failed to verify the API key.');
37
- return {
38
- valid: false,
39
- error: message,
40
- };
41
- }
42
- }),
43
- });
44
- //# sourceMappingURL=auth.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../src/lib/common/auth.ts"],"names":[],"mappings":";;;;AAAA,+DAAqE;AACrE,qEAA2D;AAC3D,qCAA+C;AAYlC,QAAA,cAAc,GAAG,4BAAS,CAAC,UAAU,CAAC;IACjD,WAAW,EAAE,SAAS;IACtB,WAAW,EACT,uEAAuE;IACzE,QAAQ,EAAE,IAAI;IACd,QAAQ,EAAE,KAAiB,EAAE,oDAAZ,EAAE,IAAI,EAAE;;QACvB,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,KAAK,EAAE,sBAAsB;aAC9B,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,MAAM,0BAAU,CAAC,WAAW,CAAyB;gBACnD,MAAM,EAAE,0BAAU,CAAC,GAAG;gBACtB,GAAG,EAAE,GAAG,4BAAmB,cAAc;gBACzC,OAAO,EAAE;oBACP,aAAa,EAAE,SAAS,IAAI,EAAE;iBAC/B;aACF,CAAC,CAAC;YACH,OAAO;gBACL,KAAK,EAAE,IAAI;aACZ,CAAC;QACJ,CAAC;QAAC,OAAO,YAAqB,EAAE,CAAC;YAC/B,MAAM,KAAK,GAAG,YAGb,CAAC;YACF,MAAM,MAAM,GAAG,MAAA,KAAK,CAAC,QAAQ,0CAAE,MAAM,CAAC;YACtC,MAAM,IAAI,GAAG,MAAA,MAAA,KAAK,CAAC,QAAQ,0CAAE,IAAI,mCAAI,EAAE,CAAC;YACxC,MAAM,OAAO,GACX,MAAA,MAAA,MAAA,IAAI,CAAC,MAAM,mCACX,IAAI,CAAC,KAAK,mCACV,IAAI,CAAC,OAAO,mCACZ,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,+BAA+B,CAAC,CAAC;YAE1E,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,KAAK,EAAE,OAAO;aACf,CAAC;QACJ,CAAC;IACH,CAAC,CAAA;CACF,CAAC,CAAC"}
@@ -1,19 +0,0 @@
1
- import { HttpMethod } from '@activepieces/pieces-common';
2
- export declare const BUTTONDOWN_BASE_URL = "https://api.buttondown.com/v1";
3
- type QueryValue = string | number | boolean | Array<string | number | boolean> | undefined;
4
- export interface ButtondownRequest {
5
- auth: string;
6
- method: HttpMethod;
7
- path: string;
8
- query?: Record<string, QueryValue>;
9
- body?: unknown;
10
- headers?: Record<string, string | undefined>;
11
- }
12
- export interface ButtondownPagedResponse<T> {
13
- results: T[];
14
- count: number;
15
- next?: string | null;
16
- previous?: string | null;
17
- }
18
- export declare const buttondownRequest: <TResponse>({ auth, method, path, query, body, headers, }: ButtondownRequest) => Promise<TResponse>;
19
- export {};
@@ -1,39 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.buttondownRequest = exports.BUTTONDOWN_BASE_URL = void 0;
4
- const tslib_1 = require("tslib");
5
- const pieces_common_1 = require("@activepieces/pieces-common");
6
- exports.BUTTONDOWN_BASE_URL = 'https://api.buttondown.com/v1';
7
- const sanitizeHeaders = (headers = {}) => Object.fromEntries(Object.entries(headers).filter(([, value]) => value !== undefined));
8
- const serializeQueryParams = (query) => {
9
- if (!query) {
10
- return undefined;
11
- }
12
- const result = {};
13
- for (const [key, value] of Object.entries(query)) {
14
- if (value === undefined) {
15
- continue;
16
- }
17
- if (Array.isArray(value)) {
18
- if (value.length === 0) {
19
- continue;
20
- }
21
- result[key] = value.map((item) => String(item)).join(',');
22
- continue;
23
- }
24
- result[key] = String(value);
25
- }
26
- return Object.keys(result).length > 0 ? result : undefined;
27
- };
28
- const buttondownRequest = (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function* ({ auth, method, path, query, body, headers, }) {
29
- const response = yield pieces_common_1.httpClient.sendRequest({
30
- method,
31
- url: `${exports.BUTTONDOWN_BASE_URL}${path}`,
32
- headers: Object.assign({ Authorization: `Token ${auth}`, Accept: 'application/json', 'Content-Type': 'application/json' }, sanitizeHeaders(headers)),
33
- queryParams: serializeQueryParams(query),
34
- body,
35
- });
36
- return response.body;
37
- });
38
- exports.buttondownRequest = buttondownRequest;
39
- //# sourceMappingURL=client.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../src/lib/common/client.ts"],"names":[],"mappings":";;;;AAAA,+DAAqE;AAExD,QAAA,mBAAmB,GAAG,+BAA+B,CAAC;AAyBnE,MAAM,eAAe,GAAG,CAAC,UAA8C,EAAE,EAAE,EAAE,CAC3E,MAAM,CAAC,WAAW,CAChB,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CACnE,CAAC;AAEJ,MAAM,oBAAoB,GAAG,CAC3B,KAAkC,EACE,EAAE;IACtC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,MAAM,GAA2B,EAAE,CAAC;IAE1C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,SAAS;QACX,CAAC;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvB,SAAS;YACX,CAAC;YACD,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC1D,SAAS;QACX,CAAC;QAED,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AAC7D,CAAC,CAAC;AAEK,MAAM,iBAAiB,GAAG,KAOS,EAAE,oDAPO,EACjD,IAAI,EACJ,MAAM,EACN,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,OAAO,GACW;IAClB,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAAY;QACvD,MAAM;QACN,GAAG,EAAE,GAAG,2BAAmB,GAAG,IAAI,EAAE;QACpC,OAAO,kBACL,aAAa,EAAE,SAAS,IAAI,EAAE,EAC9B,MAAM,EAAE,kBAAkB,EAC1B,cAAc,EAAE,kBAAkB,IAC/B,eAAe,CAAC,OAAO,CAAC,CAC5B;QACD,WAAW,EAAE,oBAAoB,CAAC,KAAK,CAAC;QACxC,IAAI;KACL,CAAC,CAAC;IAEH,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC,CAAA,CAAC;AAtBW,QAAA,iBAAiB,qBAsB5B"}
@@ -1,21 +0,0 @@
1
- import { ButtondownSubscriberType, ButtondownSubscriberSource, ButtondownEmailStatus, ButtondownEmailType } from './types';
2
- export declare const subscriberTypeOptions: {
3
- label: string;
4
- value: ButtondownSubscriberType;
5
- }[];
6
- export declare const subscriberSourceOptions: {
7
- label: string;
8
- value: ButtondownSubscriberSource;
9
- }[];
10
- export declare const subscriberOrderingOptions: {
11
- label: string;
12
- value: string;
13
- }[];
14
- export declare const emailStatusOptions: {
15
- label: string;
16
- value: ButtondownEmailStatus;
17
- }[];
18
- export declare const emailTypeOptions: {
19
- label: string;
20
- value: ButtondownEmailType;
21
- }[];
@@ -1,58 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.emailTypeOptions = exports.emailStatusOptions = exports.subscriberOrderingOptions = exports.subscriberSourceOptions = exports.subscriberTypeOptions = void 0;
4
- exports.subscriberTypeOptions = [
5
- { label: 'Regular', value: 'regular' },
6
- { label: 'Premium', value: 'premium' },
7
- { label: 'Unactivated', value: 'unactivated' },
8
- { label: 'Paused', value: 'paused' },
9
- { label: 'Trialed', value: 'trialed' },
10
- { label: 'Upcoming', value: 'upcoming' },
11
- { label: 'Churning', value: 'churning' },
12
- { label: 'Churned', value: 'churned' },
13
- { label: 'Unsubscribed', value: 'unsubscribed' },
14
- { label: 'Undeliverable', value: 'undeliverable' },
15
- { label: 'Blocked', value: 'blocked' },
16
- { label: 'Complained', value: 'complained' },
17
- { label: 'Gifted', value: 'gifted' },
18
- { label: 'Past Due', value: 'past_due' },
19
- { label: 'Removed', value: 'removed' },
20
- { label: 'Unpaid', value: 'unpaid' },
21
- ];
22
- exports.subscriberSourceOptions = [
23
- { label: 'Admin', value: 'admin' },
24
- { label: 'API', value: 'api' },
25
- { label: 'Carrd', value: 'carrd' },
26
- { label: 'Comment', value: 'comment' },
27
- { label: 'Embedded form', value: 'embedded_form' },
28
- { label: 'Hosted form', value: 'form' },
29
- { label: 'Import', value: 'import' },
30
- { label: 'Memberful', value: 'memberful' },
31
- { label: 'Organic', value: 'organic' },
32
- { label: 'Patreon', value: 'patreon' },
33
- { label: 'Stripe', value: 'stripe' },
34
- { label: 'User portal', value: 'user' },
35
- { label: 'Zapier', value: 'zapier' },
36
- ];
37
- exports.subscriberOrderingOptions = [
38
- { label: 'Newest first', value: '-creation_date' },
39
- { label: 'Oldest first', value: 'creation_date' },
40
- { label: 'Email address (A-Z)', value: 'email_address' },
41
- { label: 'Email address (Z-A)', value: '-email_address' },
42
- { label: 'Last opened (recent first)', value: '-last_open_date' },
43
- { label: 'Last opened (oldest first)', value: 'last_open_date' },
44
- ];
45
- exports.emailStatusOptions = [
46
- { label: 'Send immediately (about_to_send)', value: 'about_to_send' },
47
- { label: 'Draft', value: 'draft' },
48
- { label: 'Scheduled', value: 'scheduled' },
49
- ];
50
- exports.emailTypeOptions = [
51
- { label: 'Public', value: 'public' },
52
- { label: 'Private', value: 'private' },
53
- { label: 'Premium', value: 'premium' },
54
- { label: 'Free', value: 'free' },
55
- { label: 'Churned', value: 'churned' },
56
- { label: 'Archival', value: 'archival' },
57
- ];
58
- //# sourceMappingURL=options.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"options.js","sourceRoot":"","sources":["../../../../src/lib/common/options.ts"],"names":[],"mappings":"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"}
@@ -1,80 +0,0 @@
1
- export type ButtondownSubscriberType = 'blocked' | 'complained' | 'churning' | 'churned' | 'gifted' | 'unactivated' | 'unpaid' | 'undeliverable' | 'premium' | 'past_due' | 'paused' | 'regular' | 'removed' | 'trialed' | 'unsubscribed' | 'upcoming';
2
- export type ButtondownSubscriberSource = 'admin' | 'api' | 'carrd' | 'comment' | 'embedded_form' | 'form' | 'import' | 'memberful' | 'organic' | 'patreon' | 'stripe' | 'user' | 'zapier';
3
- export interface ButtondownSubscriber {
4
- id: string;
5
- creation_date: string;
6
- email_address: string;
7
- type: ButtondownSubscriberType;
8
- tags: string[];
9
- metadata: Record<string, unknown>;
10
- notes?: string;
11
- referrer_url?: string;
12
- utm_campaign?: string;
13
- utm_medium?: string;
14
- utm_source?: string;
15
- ip_address?: string;
16
- source: ButtondownSubscriberSource;
17
- last_open_date?: string | null;
18
- last_click_date?: string | null;
19
- click_rate?: number | null;
20
- open_rate?: number | null;
21
- churn_date?: string | null;
22
- unsubscription_date?: string | null;
23
- undeliverability_date?: string | null;
24
- [key: string]: unknown;
25
- }
26
- export interface ButtondownSubscriberInput {
27
- email_address: string;
28
- notes?: string;
29
- metadata?: Record<string, unknown>;
30
- tags?: string[];
31
- referrer_url?: string;
32
- utm_campaign?: string;
33
- utm_medium?: string;
34
- utm_source?: string;
35
- referring_subscriber_id?: string;
36
- type?: ButtondownSubscriberType;
37
- ip_address?: string;
38
- }
39
- export type ButtondownEmailType = 'public' | 'private' | 'premium' | 'free' | 'churned' | 'archival';
40
- export type ButtondownEmailStatus = 'draft' | 'managed_by_rss' | 'about_to_send' | 'scheduled' | 'in_flight' | 'paused' | 'deleted' | 'errored' | 'sent' | 'imported' | 'throttled' | 'resending' | 'transactional' | 'suppressed';
41
- export interface ButtondownEmail {
42
- id: string;
43
- creation_date: string;
44
- modification_date: string;
45
- subject: string;
46
- body: string;
47
- status: ButtondownEmailStatus;
48
- email_type: ButtondownEmailType;
49
- publish_date?: string | null;
50
- description?: string;
51
- canonical_url?: string;
52
- image?: string;
53
- metadata?: Record<string, unknown>;
54
- attachments?: string[];
55
- [key: string]: unknown;
56
- }
57
- export interface ButtondownEmailInput {
58
- subject: string;
59
- body?: string;
60
- status?: ButtondownEmailStatus;
61
- email_type?: ButtondownEmailType;
62
- publish_date?: string;
63
- description?: string;
64
- canonical_url?: string;
65
- image?: string;
66
- metadata?: Record<string, unknown>;
67
- slug?: string;
68
- attachments?: string[];
69
- should_trigger_pay_per_email_billing?: boolean;
70
- }
71
- export type ButtondownWebhookEvent = 'subscriber.created' | 'subscriber.confirmed' | 'email.sent';
72
- export interface ButtondownWebhook {
73
- id: string;
74
- creation_date: string;
75
- url: string;
76
- event_types: ButtondownWebhookEvent[];
77
- status?: 'enabled' | 'disabled';
78
- description?: string;
79
- signing_key?: string;
80
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/lib/common/types.ts"],"names":[],"mappings":""}
@@ -1,32 +0,0 @@
1
- import { TriggerStrategy } from '@activepieces/pieces-framework';
2
- import { ButtondownWebhookEvent } from './types';
3
- export interface ButtondownWebhookPayload {
4
- event_type?: string;
5
- data?: Record<string, unknown>;
6
- [key: string]: unknown;
7
- }
8
- interface CreateButtondownWebhookTriggerParams {
9
- name: string;
10
- displayName: string;
11
- description: string;
12
- eventType: ButtondownWebhookEvent;
13
- sampleData: unknown;
14
- enrich?: (params: {
15
- apiKey: string;
16
- payload: ButtondownWebhookPayload;
17
- }) => Promise<Record<string, unknown>>;
18
- }
19
- export declare const createButtondownWebhookTrigger: ({ name, displayName, description, eventType, sampleData, enrich, }: CreateButtondownWebhookTriggerParams) => import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.WEBHOOK, import("@activepieces/pieces-framework").SecretTextProperty<true>, {
20
- webhookDescription: import("@activepieces/pieces-framework").ShortTextProperty<false>;
21
- signingKey: import("@activepieces/pieces-framework").ShortTextProperty<false>;
22
- }> | import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.POLLING, import("@activepieces/pieces-framework").SecretTextProperty<true>, {
23
- webhookDescription: import("@activepieces/pieces-framework").ShortTextProperty<false>;
24
- signingKey: import("@activepieces/pieces-framework").ShortTextProperty<false>;
25
- }> | import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.MANUAL, import("@activepieces/pieces-framework").SecretTextProperty<true>, {
26
- webhookDescription: import("@activepieces/pieces-framework").ShortTextProperty<false>;
27
- signingKey: import("@activepieces/pieces-framework").ShortTextProperty<false>;
28
- }> | import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.APP_WEBHOOK, import("@activepieces/pieces-framework").SecretTextProperty<true>, {
29
- webhookDescription: import("@activepieces/pieces-framework").ShortTextProperty<false>;
30
- signingKey: import("@activepieces/pieces-framework").ShortTextProperty<false>;
31
- }>;
32
- export {};