@coasy/piece-coasy 0.1.5 → 0.1.6

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 (30) hide show
  1. package/.eslintrc.json +5 -1
  2. package/package.json +1 -1
  3. package/src/index.ts +57 -8
  4. package/src/lib/actions/create-event-participant.ts +25 -0
  5. package/src/lib/actions/create-funnel-participant.ts +10 -17
  6. package/src/lib/actions/create-voucher.ts +46 -0
  7. package/src/lib/actions/enroll-user-course.ts +30 -0
  8. package/src/lib/actions/find-event.ts +20 -0
  9. package/src/lib/common/actions.ts +24 -0
  10. package/src/lib/common/coasyClient.ts +11 -9
  11. package/src/lib/common/triggers.ts +40 -25
  12. package/src/lib/triggers/cancelled-membership.ts +51 -0
  13. package/src/lib/triggers/cancelled-order-item.ts +61 -0
  14. package/src/lib/triggers/cancelled-order.ts +61 -0
  15. package/src/lib/triggers/cancelled-orderprocess.ts +52 -0
  16. package/src/lib/triggers/cancelled-subscription.ts +51 -0
  17. package/src/lib/triggers/get-events.ts +41 -0
  18. package/src/lib/triggers/new-app-user-sign-up.ts +34 -0
  19. package/src/lib/triggers/new-auth-event.ts +49 -37
  20. package/src/lib/triggers/new-customer.ts +46 -0
  21. package/src/lib/triggers/new-event-participant.ts +56 -0
  22. package/src/lib/triggers/new-funnel-participant.ts +33 -22
  23. package/src/lib/triggers/new-lead.ts +51 -0
  24. package/src/lib/triggers/new-membership.ts +51 -0
  25. package/src/lib/triggers/new-order-item.ts +62 -0
  26. package/src/lib/triggers/new-order.ts +61 -0
  27. package/src/lib/triggers/new-subscription.ts +51 -0
  28. package/src/lib/triggers/new-webinar-participant.ts +48 -30
  29. package/src/lib/triggers/webinar-participant-attend.ts +73 -0
  30. package/src/lib/triggers/webinar-participant-reminder.ts +72 -0
@@ -0,0 +1,51 @@
1
+ import {
2
+ createTrigger,
3
+ Property,
4
+ TriggerStrategy,
5
+ } from '@activepieces/pieces-framework';
6
+ import { coasyAuth } from '../..';
7
+ import {
8
+ createCoasyTrigger,
9
+ destroyCoasyTrigger,
10
+ testCoasyTrigger,
11
+ } from '../common/triggers';
12
+
13
+ const triggerName = 'NEW_SUBSCRIPTION';
14
+
15
+ export const newSubscription = createTrigger({
16
+ auth: coasyAuth,
17
+ name: 'newSubscription',
18
+ displayName: 'New Subscription',
19
+ description: 'Triggers when a new subscription is created.',
20
+ props: {
21
+ membershipTypeIds: Property.Array({
22
+ displayName: 'Membership Type IDs',
23
+ description: 'IDs of membership types to react to',
24
+ required: false,
25
+ }),
26
+ },
27
+ sampleData: {},
28
+ type: TriggerStrategy.WEBHOOK,
29
+ onEnable: (context) =>
30
+ createCoasyTrigger({
31
+ triggerName,
32
+ webhookUrl: context.webhookUrl,
33
+ auth: context.auth,
34
+ filter: context.propsValue,
35
+ store: context.store,
36
+ }),
37
+ onDisable: (context) =>
38
+ destroyCoasyTrigger({
39
+ triggerName,
40
+ auth: context.auth,
41
+ store: context.store,
42
+ }),
43
+ test: (context) =>
44
+ testCoasyTrigger({
45
+ triggerName,
46
+ auth: context.auth,
47
+ }),
48
+ async run(context) {
49
+ return [context.payload.body];
50
+ },
51
+ });
@@ -1,8 +1,16 @@
1
- import { createTrigger, Property, TriggerStrategy } from '@activepieces/pieces-framework';
1
+ import {
2
+ createTrigger,
3
+ Property,
4
+ TriggerStrategy,
5
+ } from '@activepieces/pieces-framework';
2
6
  import { coasyAuth } from '../..';
3
- import { createCoasyTrigger, destroyCoasyTrigger, testCoasyTrigger } from '../common/triggers';
7
+ import {
8
+ createCoasyTrigger,
9
+ destroyCoasyTrigger,
10
+ testCoasyTrigger,
11
+ } from '../common/triggers';
4
12
 
5
- const triggerName = "NEW_WEBINAR_PARTICIPANT";
13
+ const triggerName = 'NEW_WEBINAR_PARTICIPANT';
6
14
 
7
15
  export const newWebinarParticipant = createTrigger({
8
16
  auth: coasyAuth,
@@ -13,42 +21,52 @@ export const newWebinarParticipant = createTrigger({
13
21
  webinarIds: Property.Array({
14
22
  displayName: 'Webinar IDs',
15
23
  description: 'IDs of webinar to react to',
16
- required: false
24
+ required: false,
17
25
  }),
18
26
  selectedStartType: Property.StaticDropdown({
19
27
  displayName: 'Selected start type',
20
28
  description: 'filter only those participants',
21
29
  required: false,
22
30
  options: {
23
- options: [{
24
- label: "Instantly",
25
- value: "INSTANTLY"
26
- }, {
27
- label: "Later",
28
- value: "LATER"
29
- }]
30
- }
31
- })
31
+ options: [
32
+ {
33
+ label: 'Upcoming',
34
+ value: 'UPCOMING',
35
+ },
36
+ {
37
+ label: 'Attended',
38
+ value: 'ATTENDED',
39
+ },
40
+ {
41
+ label: 'Not Attended',
42
+ value: 'NOT_ATTENDED',
43
+ },
44
+ ],
45
+ },
46
+ }),
32
47
  },
33
48
  sampleData: {},
34
49
  type: TriggerStrategy.WEBHOOK,
35
- onEnable : (context) => createCoasyTrigger({
36
- triggerName,
37
- webhookUrl: context.webhookUrl,
38
- auth: context.auth,
39
- filter: context.propsValue,
40
- store: context.store
41
- }),
42
- onDisable : (context) => destroyCoasyTrigger({
43
- triggerName,
44
- auth: context.auth,
45
- store: context.store
46
- }),
47
- test: (context) => testCoasyTrigger({
48
- triggerName,
49
- auth: context.auth
50
- }),
50
+ onEnable: (context) =>
51
+ createCoasyTrigger({
52
+ triggerName,
53
+ webhookUrl: context.webhookUrl,
54
+ auth: context.auth,
55
+ filter: context.propsValue,
56
+ store: context.store,
57
+ }),
58
+ onDisable: (context) =>
59
+ destroyCoasyTrigger({
60
+ triggerName,
61
+ auth: context.auth,
62
+ store: context.store,
63
+ }),
64
+ test: (context) =>
65
+ testCoasyTrigger({
66
+ triggerName,
67
+ auth: context.auth,
68
+ }),
51
69
  async run(context) {
52
70
  return [context.payload.body];
53
- }
71
+ },
54
72
  });
@@ -0,0 +1,73 @@
1
+ import {
2
+ createTrigger,
3
+ Property,
4
+ TriggerStrategy,
5
+ } from '@activepieces/pieces-framework';
6
+ import { coasyAuth } from '../..';
7
+ import {
8
+ createCoasyTrigger,
9
+ destroyCoasyTrigger,
10
+ testCoasyTrigger,
11
+ } from '../common/triggers';
12
+
13
+ const triggerName = 'WEBINAR_PARTICIPANT_ATTEND';
14
+
15
+ export const webinarParticipantAttend = createTrigger({
16
+ auth: coasyAuth,
17
+ name: 'webinarParticipantAttend',
18
+ displayName: 'Webinar Participant Attend',
19
+ description:
20
+ 'Triggers when a webinar participant has attended or not attended',
21
+ props: {
22
+ selectedStartType: Property.StaticDropdown({
23
+ displayName: 'Selected start type',
24
+ description: 'filter only those participants',
25
+ required: false,
26
+ options: {
27
+ options: [
28
+ {
29
+ label: 'Upcoming',
30
+ value: 'UPCOMING',
31
+ },
32
+ {
33
+ label: 'Attended',
34
+ value: 'ATTENDED',
35
+ },
36
+ {
37
+ label: 'Not Attended',
38
+ value: 'NOT_ATTENDED',
39
+ },
40
+ ],
41
+ },
42
+ }),
43
+ webinarIds: Property.Array({
44
+ displayName: 'Webinar IDs',
45
+ description: 'IDs of webinar to react to',
46
+ required: false,
47
+ }),
48
+ },
49
+ sampleData: {},
50
+ type: TriggerStrategy.WEBHOOK,
51
+ onEnable: (context) =>
52
+ createCoasyTrigger({
53
+ triggerName,
54
+ webhookUrl: context.webhookUrl,
55
+ auth: context.auth,
56
+ filter: context.propsValue,
57
+ store: context.store,
58
+ }),
59
+ onDisable: (context) =>
60
+ destroyCoasyTrigger({
61
+ triggerName,
62
+ auth: context.auth,
63
+ store: context.store,
64
+ }),
65
+ test: (context) =>
66
+ testCoasyTrigger({
67
+ triggerName,
68
+ auth: context.auth,
69
+ }),
70
+ async run(context) {
71
+ return [context.payload.body];
72
+ },
73
+ });
@@ -0,0 +1,72 @@
1
+ import {
2
+ createTrigger,
3
+ Property,
4
+ TriggerStrategy,
5
+ } from '@activepieces/pieces-framework';
6
+ import { coasyAuth } from '../..';
7
+ import {
8
+ createCoasyTrigger,
9
+ destroyCoasyTrigger,
10
+ testCoasyTrigger,
11
+ } from '../common/triggers';
12
+
13
+ const triggerName = 'WEBINAR_PARTICIPANT_REMINDER';
14
+
15
+ export const webinarParticipantReminder = createTrigger({
16
+ auth: coasyAuth,
17
+ name: 'webinarParticipantReminder',
18
+ displayName: 'Webinar Participant Reminder',
19
+ description: 'Triggers when a webinar participant is reminded',
20
+ props: {
21
+ selectedStartType: Property.StaticDropdown({
22
+ displayName: 'Selected start type',
23
+ description: 'filter only those participants',
24
+ required: false,
25
+ options: {
26
+ options: [
27
+ {
28
+ label: 'Upcoming',
29
+ value: 'UPCOMING',
30
+ },
31
+ {
32
+ label: 'Attended',
33
+ value: 'ATTENDED',
34
+ },
35
+ {
36
+ label: 'Not Attended',
37
+ value: 'NOT_ATTENDED',
38
+ },
39
+ ],
40
+ },
41
+ }),
42
+ webinarIds: Property.Array({
43
+ displayName: 'Webinar IDs',
44
+ description: 'IDs of webinar to react to',
45
+ required: false,
46
+ }),
47
+ },
48
+ sampleData: {},
49
+ type: TriggerStrategy.WEBHOOK,
50
+ onEnable: (context) =>
51
+ createCoasyTrigger({
52
+ triggerName,
53
+ webhookUrl: context.webhookUrl,
54
+ auth: context.auth,
55
+ filter: context.propsValue,
56
+ store: context.store,
57
+ }),
58
+ onDisable: (context) =>
59
+ destroyCoasyTrigger({
60
+ triggerName,
61
+ auth: context.auth,
62
+ store: context.store,
63
+ }),
64
+ test: (context) =>
65
+ testCoasyTrigger({
66
+ triggerName,
67
+ auth: context.auth,
68
+ }),
69
+ async run(context) {
70
+ return [context.payload.body];
71
+ },
72
+ });