@activepieces/piece-feedhive 0.0.3 → 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 (49) hide show
  1. package/package.json +7 -12
  2. package/src/index.js +40 -47
  3. package/src/index.d.ts +0 -4
  4. package/src/index.d.ts.map +0 -1
  5. package/src/index.js.map +0 -1
  6. package/src/lib/actions/create-label.d.ts +0 -4
  7. package/src/lib/actions/create-label.d.ts.map +0 -1
  8. package/src/lib/actions/create-label.js +0 -39
  9. package/src/lib/actions/create-label.js.map +0 -1
  10. package/src/lib/actions/create-post.d.ts +0 -10
  11. package/src/lib/actions/create-post.d.ts.map +0 -1
  12. package/src/lib/actions/create-post.js +0 -80
  13. package/src/lib/actions/create-post.js.map +0 -1
  14. package/src/lib/actions/delete-post.d.ts +0 -4
  15. package/src/lib/actions/delete-post.d.ts.map +0 -1
  16. package/src/lib/actions/delete-post.js +0 -30
  17. package/src/lib/actions/delete-post.js.map +0 -1
  18. package/src/lib/actions/fire-workflow-trigger.d.ts +0 -12
  19. package/src/lib/actions/fire-workflow-trigger.d.ts.map +0 -1
  20. package/src/lib/actions/fire-workflow-trigger.js +0 -95
  21. package/src/lib/actions/fire-workflow-trigger.js.map +0 -1
  22. package/src/lib/actions/get-post.d.ts +0 -4
  23. package/src/lib/actions/get-post.d.ts.map +0 -1
  24. package/src/lib/actions/get-post.js +0 -30
  25. package/src/lib/actions/get-post.js.map +0 -1
  26. package/src/lib/actions/list-posts.d.ts +0 -6
  27. package/src/lib/actions/list-posts.d.ts.map +0 -1
  28. package/src/lib/actions/list-posts.js +0 -60
  29. package/src/lib/actions/list-posts.js.map +0 -1
  30. package/src/lib/actions/update-post.d.ts +0 -11
  31. package/src/lib/actions/update-post.d.ts.map +0 -1
  32. package/src/lib/actions/update-post.js +0 -80
  33. package/src/lib/actions/update-post.js.map +0 -1
  34. package/src/lib/common/auth.d.ts +0 -2
  35. package/src/lib/common/auth.d.ts.map +0 -1
  36. package/src/lib/common/auth.js +0 -33
  37. package/src/lib/common/auth.js.map +0 -1
  38. package/src/lib/common/index.d.ts +0 -18
  39. package/src/lib/common/index.d.ts.map +0 -1
  40. package/src/lib/common/index.js +0 -144
  41. package/src/lib/common/index.js.map +0 -1
  42. package/src/lib/triggers/comment-notification.d.ts +0 -11
  43. package/src/lib/triggers/comment-notification.d.ts.map +0 -1
  44. package/src/lib/triggers/comment-notification.js +0 -96
  45. package/src/lib/triggers/comment-notification.js.map +0 -1
  46. package/src/lib/triggers/post-notification.d.ts +0 -15
  47. package/src/lib/triggers/post-notification.d.ts.map +0 -1
  48. package/src/lib/triggers/post-notification.js +0 -119
  49. package/src/lib/triggers/post-notification.js.map +0 -1
@@ -1,11 +0,0 @@
1
- import { TriggerStrategy } from '@activepieces/pieces-framework';
2
- export declare const commentNotificationTrigger: import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.WEBHOOK, import("@activepieces/pieces-framework").SecretTextProperty<true>, {
3
- instructions: import("@activepieces/pieces-framework/dist/src/lib/property/input/markdown-property").MarkDownProperty;
4
- }> | import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.POLLING, import("@activepieces/pieces-framework").SecretTextProperty<true>, {
5
- instructions: import("@activepieces/pieces-framework/dist/src/lib/property/input/markdown-property").MarkDownProperty;
6
- }> | import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.MANUAL, import("@activepieces/pieces-framework").SecretTextProperty<true>, {
7
- instructions: import("@activepieces/pieces-framework/dist/src/lib/property/input/markdown-property").MarkDownProperty;
8
- }> | import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.APP_WEBHOOK, import("@activepieces/pieces-framework").SecretTextProperty<true>, {
9
- instructions: import("@activepieces/pieces-framework/dist/src/lib/property/input/markdown-property").MarkDownProperty;
10
- }>;
11
- //# sourceMappingURL=comment-notification.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"comment-notification.d.ts","sourceRoot":"","sources":["../../../../src/lib/triggers/comment-notification.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,eAAe,EAAY,MAAM,gCAAgC,CAAC;AAK1F,eAAO,MAAM,0BAA0B;;;;;;;;EAsFrC,CAAC"}
@@ -1,96 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.commentNotificationTrigger = 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 auth_1 = require("../common/auth");
8
- const common_1 = require("../common");
9
- exports.commentNotificationTrigger = (0, pieces_framework_1.createTrigger)({
10
- auth: auth_1.feedhiveAuth,
11
- name: 'comment_notification',
12
- displayName: 'Comment Notification',
13
- description: 'Triggers when a comment is added to one of your posts.',
14
- aiMetadata: {
15
- description: 'Fires via webhook when a new comment is added to one of your FeedHive posts. Represents a single incoming comment, carrying the comment text and author details along with the related post.',
16
- },
17
- props: {
18
- instructions: pieces_framework_1.Property.MarkDown({
19
- value: `### Setup Instructions
20
-
21
- 1. Enable this flow and copy the **Webhook URL** shown below.
22
- \`\`\`text
23
- {{webhookUrl}}
24
- \`\`\`
25
- 2. In FeedHive, go to **Settings → Automation → Notifications**.
26
- 3. Click **Create New Notification**.
27
- 4. Choose **Comment Added** and paste the Webhook URL, then click **Save**.`,
28
- }),
29
- },
30
- sampleData: {
31
- post_id: 'xxxx-abcd-1234',
32
- comment_id: 'yyyy-zxyw-4321',
33
- commented_at: '2024-08-01T12:00:00.000Z',
34
- commented_by: 'zzzz-efgh-5678',
35
- commented_by_name: 'John Doe',
36
- commented_by_email: 'johndoe@gmail.com',
37
- comment_text: 'Great post. Perhaps add another image?',
38
- post_excerpt: 'This is the first part of the post caption...',
39
- post: {
40
- content: [{ text: 'Full post caption.', media: [] }],
41
- labels: ['Marketing'],
42
- postNotes: 'Internal notes',
43
- },
44
- },
45
- type: pieces_framework_1.TriggerStrategy.WEBHOOK,
46
- onEnable(_context) {
47
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
48
- // Webhook URL must be configured manually in FeedHive: Settings → Automation → Notifications
49
- });
50
- },
51
- onDisable(_context) {
52
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
53
- // Nothing to unregister
54
- });
55
- },
56
- run(context) {
57
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
58
- return [context.payload.body];
59
- });
60
- },
61
- test(context) {
62
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
63
- var _a, _b;
64
- // No dedicated comments endpoint — fetch recent published posts and approximate the payload shape
65
- const response = yield common_1.feedhiveCommon.apiCall({
66
- token: context.auth.secret_text,
67
- method: pieces_common_1.HttpMethod.GET,
68
- path: '/posts',
69
- queryParams: { limit: '5', status: 'published' },
70
- });
71
- const posts = (_b = (_a = response.body.data) === null || _a === void 0 ? void 0 : _a.items) !== null && _b !== void 0 ? _b : [];
72
- return posts.map((post) => {
73
- var _a, _b, _c, _d, _e;
74
- const postExcerpt = typeof post['text'] === 'string'
75
- ? post['text'].slice(0, 100) + (post['text'].length > 100 ? '...' : '')
76
- : '(no text)';
77
- return {
78
- post_id: (_a = post['id']) !== null && _a !== void 0 ? _a : null,
79
- comment_id: null,
80
- commented_at: null,
81
- commented_by: null,
82
- commented_by_name: '(see FeedHive notification)',
83
- commented_by_email: '(see FeedHive notification)',
84
- comment_text: '(see FeedHive notification)',
85
- post_excerpt: postExcerpt,
86
- post: {
87
- content: [{ text: (_b = post['text']) !== null && _b !== void 0 ? _b : '', media: (_c = post['media']) !== null && _c !== void 0 ? _c : [] }],
88
- labels: (_d = post['labels']) !== null && _d !== void 0 ? _d : [],
89
- postNotes: (_e = post['notes']) !== null && _e !== void 0 ? _e : '',
90
- },
91
- };
92
- });
93
- });
94
- },
95
- });
96
- //# sourceMappingURL=comment-notification.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"comment-notification.js","sourceRoot":"","sources":["../../../../src/lib/triggers/comment-notification.ts"],"names":[],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- import { TriggerStrategy } from '@activepieces/pieces-framework';
2
- export declare const postNotificationTrigger: import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.WEBHOOK, import("@activepieces/pieces-framework").SecretTextProperty<true>, {
3
- event_type: import("@activepieces/pieces-framework").StaticDropdownProperty<string, true>;
4
- instructions: import("@activepieces/pieces-framework/dist/src/lib/property/input/markdown-property").MarkDownProperty;
5
- }> | import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.POLLING, import("@activepieces/pieces-framework").SecretTextProperty<true>, {
6
- event_type: import("@activepieces/pieces-framework").StaticDropdownProperty<string, true>;
7
- instructions: import("@activepieces/pieces-framework/dist/src/lib/property/input/markdown-property").MarkDownProperty;
8
- }> | import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.MANUAL, import("@activepieces/pieces-framework").SecretTextProperty<true>, {
9
- event_type: import("@activepieces/pieces-framework").StaticDropdownProperty<string, true>;
10
- instructions: import("@activepieces/pieces-framework/dist/src/lib/property/input/markdown-property").MarkDownProperty;
11
- }> | import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.APP_WEBHOOK, import("@activepieces/pieces-framework").SecretTextProperty<true>, {
12
- event_type: import("@activepieces/pieces-framework").StaticDropdownProperty<string, true>;
13
- instructions: import("@activepieces/pieces-framework/dist/src/lib/property/input/markdown-property").MarkDownProperty;
14
- }>;
15
- //# sourceMappingURL=post-notification.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"post-notification.d.ts","sourceRoot":"","sources":["../../../../src/lib/triggers/post-notification.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,eAAe,EAAY,MAAM,gCAAgC,CAAC;AAW1F,eAAO,MAAM,uBAAuB;;;;;;;;;;;;EA+ElC,CAAC"}
@@ -1,119 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.postNotificationTrigger = 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 auth_1 = require("../common/auth");
8
- const common_1 = require("../common");
9
- const EVENT_TYPE_STATUS_MAP = {
10
- post_published: 'published',
11
- post_scheduled: 'scheduled',
12
- post_failed: 'failed',
13
- };
14
- exports.postNotificationTrigger = (0, pieces_framework_1.createTrigger)({
15
- auth: auth_1.feedhiveAuth,
16
- name: 'post_notification',
17
- displayName: 'Post Notification',
18
- description: 'Triggers when a post is published, scheduled, or fails.',
19
- aiMetadata: {
20
- description: 'Fires via webhook when a FeedHive post changes state — published, scheduled, or failed — depending on which notification event type is configured in FeedHive. Represents a lifecycle event for a single post, carrying its ID, excerpt, and target social account.',
21
- },
22
- props: {
23
- event_type: pieces_framework_1.Property.StaticDropdown({
24
- displayName: 'Event Type',
25
- description: 'Choose the event type you will configure in FeedHive. This is used to load sample data when testing the trigger — it does not filter incoming webhooks.',
26
- required: true,
27
- defaultValue: 'post_published',
28
- options: {
29
- options: [
30
- { label: 'Post Published', value: 'post_published' },
31
- { label: 'Post Scheduled', value: 'post_scheduled' },
32
- { label: 'Post Failed', value: 'post_failed' },
33
- ],
34
- },
35
- }),
36
- instructions: pieces_framework_1.Property.MarkDown({
37
- value: `### Setup Instructions
38
-
39
- 1. Enable this flow and copy the **Webhook URL** shown below.
40
- \`\`\`text
41
- {{webhookUrl}}
42
- \`\`\`
43
- 2. In FeedHive, go to **Settings → Automation → Notifications**.
44
- 3. Click **Create New Notification**.
45
- 4. Choose the matching event type and paste the Webhook URL, then click **Save**.`,
46
- }),
47
- },
48
- sampleData: {
49
- post_id: 'xxxx-abcd-1234',
50
- post_excerpt: 'This is the first part of the post caption...',
51
- social_type: 'Facebook',
52
- social_name: 'My Facebook Page',
53
- public_id: '123456789101112_1314151617181920',
54
- public_url: 'https://www.facebook.com/xxxx/posts/yyyy',
55
- post: {
56
- content: [{ text: 'Full post caption.', media: [] }],
57
- labels: ['Marketing'],
58
- postNotes: 'Internal notes',
59
- },
60
- },
61
- type: pieces_framework_1.TriggerStrategy.WEBHOOK,
62
- onEnable(_context) {
63
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
64
- // Webhook URL must be configured manually in FeedHive: Settings → Automation → Notifications
65
- });
66
- },
67
- onDisable(_context) {
68
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
69
- // Nothing to unregister
70
- });
71
- },
72
- run(context) {
73
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
74
- return [context.payload.body];
75
- });
76
- },
77
- test(context) {
78
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
79
- var _a, _b, _c, _d;
80
- const eventType = (_a = context.propsValue.event_type) !== null && _a !== void 0 ? _a : 'post_published';
81
- const status = (_b = EVENT_TYPE_STATUS_MAP[eventType]) !== null && _b !== void 0 ? _b : 'published';
82
- const response = yield common_1.feedhiveCommon.apiCall({
83
- token: context.auth.secret_text,
84
- method: pieces_common_1.HttpMethod.GET,
85
- path: '/posts',
86
- queryParams: { limit: '5', status },
87
- });
88
- const posts = (_d = (_c = response.body.data) === null || _c === void 0 ? void 0 : _c.items) !== null && _d !== void 0 ? _d : [];
89
- return posts.map((post) => buildSamplePayload(eventType, post));
90
- });
91
- },
92
- });
93
- function buildSamplePayload(eventType, post) {
94
- var _a, _b, _c, _d, _e, _f, _g;
95
- const postExcerpt = typeof post['text'] === 'string'
96
- ? post['text'].slice(0, 100) + (post['text'].length > 100 ? '...' : '')
97
- : '(no text)';
98
- const notificationPost = {
99
- content: [{ text: (_a = post['text']) !== null && _a !== void 0 ? _a : '', media: (_b = post['media']) !== null && _b !== void 0 ? _b : [] }],
100
- labels: (_c = post['labels']) !== null && _c !== void 0 ? _c : [],
101
- postNotes: (_d = post['notes']) !== null && _d !== void 0 ? _d : '',
102
- };
103
- const base = {
104
- post_id: (_e = post['id']) !== null && _e !== void 0 ? _e : null,
105
- post_excerpt: postExcerpt,
106
- post: notificationPost,
107
- };
108
- switch (eventType) {
109
- case 'post_published':
110
- return Object.assign(Object.assign({}, base), { social_type: '(see FeedHive notification)', social_name: '(see FeedHive notification)', public_id: null, public_url: null });
111
- case 'post_scheduled':
112
- return Object.assign(Object.assign({}, base), { schedule_at: (_f = post['scheduled_at']) !== null && _f !== void 0 ? _f : null, pending_approval: false, social_types: '(see FeedHive notification)' });
113
- case 'post_failed':
114
- return Object.assign(Object.assign({}, base), { failed_at: (_g = post['updated_at']) !== null && _g !== void 0 ? _g : null, message: '(see FeedHive notification)', social_type: '(see FeedHive notification)', social_name: '(see FeedHive notification)' });
115
- default:
116
- return base;
117
- }
118
- }
119
- //# sourceMappingURL=post-notification.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"post-notification.js","sourceRoot":"","sources":["../../../../src/lib/triggers/post-notification.ts"],"names":[],"mappings":"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"}