@segment/action-destinations 3.331.2-tiktok.1 → 3.331.4-staging

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 (153) hide show
  1. package/dist/destinations/blackbaud-raisers-edge-nxt/utils/index.d.ts +1 -1
  2. package/dist/destinations/criteo-audiences/addUserToAudience/index.js +8 -8
  3. package/dist/destinations/criteo-audiences/addUserToAudience/index.js.map +1 -1
  4. package/dist/destinations/criteo-audiences/criteo-audiences.d.ts +5 -6
  5. package/dist/destinations/criteo-audiences/criteo-audiences.js +66 -53
  6. package/dist/destinations/criteo-audiences/criteo-audiences.js.map +1 -1
  7. package/dist/destinations/criteo-audiences/removeUserFromAudience/index.js +8 -8
  8. package/dist/destinations/criteo-audiences/removeUserFromAudience/index.js.map +1 -1
  9. package/dist/destinations/devrev/createRevUser/index.js +1 -1
  10. package/dist/destinations/devrev/createRevUser/index.js.map +1 -1
  11. package/dist/destinations/devrev/mocks/index.d.ts +1 -1
  12. package/dist/destinations/devrev/mocks/index.js +1 -1
  13. package/dist/destinations/devrev/mocks/index.js.map +1 -1
  14. package/dist/destinations/display-video-360/addToAudience/generated-types.d.ts +5 -0
  15. package/dist/destinations/display-video-360/addToAudience/index.d.ts +2 -2
  16. package/dist/destinations/display-video-360/addToAudience/index.js +20 -4
  17. package/dist/destinations/display-video-360/addToAudience/index.js.map +1 -1
  18. package/dist/destinations/display-video-360/constants.d.ts +2 -0
  19. package/dist/destinations/display-video-360/constants.js +4 -2
  20. package/dist/destinations/display-video-360/constants.js.map +1 -1
  21. package/dist/destinations/display-video-360/errors.d.ts +2 -0
  22. package/dist/destinations/display-video-360/errors.js +40 -0
  23. package/dist/destinations/display-video-360/errors.js.map +1 -0
  24. package/dist/destinations/display-video-360/generated-types.d.ts +2 -1
  25. package/dist/destinations/display-video-360/index.js +57 -51
  26. package/dist/destinations/display-video-360/index.js.map +1 -1
  27. package/dist/destinations/display-video-360/listManagement.d.ts +9 -0
  28. package/dist/destinations/display-video-360/listManagement.js +16 -0
  29. package/dist/destinations/display-video-360/listManagement.js.map +1 -0
  30. package/dist/destinations/display-video-360/properties.d.ts +6 -0
  31. package/dist/destinations/display-video-360/properties.js +49 -0
  32. package/dist/destinations/display-video-360/properties.js.map +1 -0
  33. package/dist/destinations/display-video-360/proto/protofile.d.ts +104 -0
  34. package/dist/destinations/display-video-360/proto/protofile.js +251 -0
  35. package/dist/destinations/display-video-360/proto/protofile.js.map +1 -0
  36. package/dist/destinations/display-video-360/removeFromAudience/generated-types.d.ts +5 -0
  37. package/dist/destinations/display-video-360/removeFromAudience/index.d.ts +2 -2
  38. package/dist/destinations/display-video-360/removeFromAudience/index.js +19 -3
  39. package/dist/destinations/display-video-360/removeFromAudience/index.js.map +1 -1
  40. package/dist/destinations/display-video-360/shared.d.ts +16 -0
  41. package/dist/destinations/display-video-360/shared.js +138 -0
  42. package/dist/destinations/display-video-360/shared.js.map +1 -0
  43. package/dist/destinations/display-video-360/types.d.ts +27 -0
  44. package/dist/destinations/{yahoo-audiences/createCustomerNode/generated-types.js → display-video-360/types.js} +1 -1
  45. package/dist/destinations/display-video-360/types.js.map +1 -0
  46. package/dist/destinations/engage/sendgrid/sendEmail/actionDefinition.js +9 -0
  47. package/dist/destinations/engage/sendgrid/sendEmail/actionDefinition.js.map +1 -1
  48. package/dist/destinations/engage/twilio/sendMobilePush/PushSender.js +1 -1
  49. package/dist/destinations/engage/twilio/sendMobilePush/PushSender.js.map +1 -1
  50. package/dist/destinations/engage/twilio/sendMobilePush/actionDefinition.js +9 -0
  51. package/dist/destinations/engage/twilio/sendMobilePush/actionDefinition.js.map +1 -1
  52. package/dist/destinations/engage/twilio/sendSms/actionDefinition.js +9 -0
  53. package/dist/destinations/engage/twilio/sendSms/actionDefinition.js.map +1 -1
  54. package/dist/destinations/engage/twilio/sendWhatsApp/actionDefinition.js +9 -0
  55. package/dist/destinations/engage/twilio/sendWhatsApp/actionDefinition.js.map +1 -1
  56. package/dist/destinations/engage/twilio/utils/PhoneMessageSender.js +3 -1
  57. package/dist/destinations/engage/twilio/utils/PhoneMessageSender.js.map +1 -1
  58. package/dist/destinations/engage/utils/EngageStats.js +5 -1
  59. package/dist/destinations/engage/utils/EngageStats.js.map +1 -1
  60. package/dist/destinations/engage/utils/track.d.ts +10 -10
  61. package/dist/destinations/engage-messaging-sendgrid/sendEmail.types.d.ts +1 -0
  62. package/dist/destinations/engage-messaging-twilio/sendMobilePush.types.d.ts +1 -0
  63. package/dist/destinations/engage-messaging-twilio/sendSms.types.d.ts +1 -0
  64. package/dist/destinations/engage-messaging-twilio/sendWhatsApp.types.d.ts +1 -0
  65. package/dist/destinations/hyperengage/group/generated-types.d.ts +1 -0
  66. package/dist/destinations/hyperengage/group/index.js +20 -2
  67. package/dist/destinations/hyperengage/group/index.js.map +1 -1
  68. package/dist/destinations/hyperengage/identify/index.js +7 -1
  69. package/dist/destinations/hyperengage/identify/index.js.map +1 -1
  70. package/dist/destinations/hyperengage/track/generated-types.d.ts +1 -1
  71. package/dist/destinations/hyperengage/track/index.js +9 -9
  72. package/dist/destinations/hyperengage/track/index.js.map +1 -1
  73. package/dist/destinations/hyperengage/validateInput.js +5 -2
  74. package/dist/destinations/hyperengage/validateInput.js.map +1 -1
  75. package/dist/destinations/klaviyo/addProfileToList/generated-types.d.ts +1 -1
  76. package/dist/destinations/klaviyo/addProfileToList/index.js +9 -33
  77. package/dist/destinations/klaviyo/addProfileToList/index.js.map +1 -1
  78. package/dist/destinations/klaviyo/functions.d.ts +11 -3
  79. package/dist/destinations/klaviyo/functions.js +66 -14
  80. package/dist/destinations/klaviyo/functions.js.map +1 -1
  81. package/dist/destinations/klaviyo/index.d.ts +2 -2
  82. package/dist/destinations/klaviyo/index.js +53 -7
  83. package/dist/destinations/klaviyo/index.js.map +1 -1
  84. package/dist/destinations/klaviyo/properties.js +5 -3
  85. package/dist/destinations/klaviyo/properties.js.map +1 -1
  86. package/dist/destinations/klaviyo/{removeProfileToList → removeProfileFromList}/generated-types.d.ts +1 -1
  87. package/dist/destinations/klaviyo/removeProfileFromList/generated-types.js.map +1 -0
  88. package/dist/destinations/klaviyo/removeProfileFromList/index.js +27 -0
  89. package/dist/destinations/klaviyo/removeProfileFromList/index.js.map +1 -0
  90. package/dist/destinations/klaviyo/types.d.ts +51 -0
  91. package/dist/destinations/klaviyo/types.js.map +1 -1
  92. package/dist/destinations/klaviyo/upsertProfile/index.js +2 -2
  93. package/dist/destinations/klaviyo/upsertProfile/index.js.map +1 -1
  94. package/dist/destinations/linkedin-conversions/api/api.test.js +2 -2
  95. package/dist/destinations/linkedin-conversions/api/api.test.js.map +1 -1
  96. package/dist/destinations/linkedin-conversions/api/index.d.ts +10 -2
  97. package/dist/destinations/linkedin-conversions/api/index.js +198 -1
  98. package/dist/destinations/linkedin-conversions/api/index.js.map +1 -1
  99. package/dist/destinations/linkedin-conversions/constants.d.ts +1 -0
  100. package/dist/destinations/linkedin-conversions/constants.js +7 -1
  101. package/dist/destinations/linkedin-conversions/constants.js.map +1 -1
  102. package/dist/destinations/linkedin-conversions/index.js +2 -1
  103. package/dist/destinations/linkedin-conversions/index.js.map +1 -1
  104. package/dist/destinations/linkedin-conversions/streamConversion/generated-types.d.ts +18 -0
  105. package/dist/destinations/linkedin-conversions/streamConversion/index.js +181 -51
  106. package/dist/destinations/linkedin-conversions/streamConversion/index.js.map +1 -1
  107. package/dist/destinations/linkedin-conversions/types.d.ts +64 -0
  108. package/dist/destinations/liveramp-audiences/operations.js +13 -19
  109. package/dist/destinations/liveramp-audiences/operations.js.map +1 -1
  110. package/dist/destinations/moengage/index.js +4 -0
  111. package/dist/destinations/moengage/index.js.map +1 -1
  112. package/dist/destinations/snap-conversions-api/snap-capi-properties.js +8 -2
  113. package/dist/destinations/snap-conversions-api/snap-capi-properties.js.map +1 -1
  114. package/dist/destinations/tiktok-audiences/properties.js +4 -5
  115. package/dist/destinations/tiktok-audiences/properties.js.map +1 -1
  116. package/dist/destinations/webhook-audiences/index.js +3 -1
  117. package/dist/destinations/webhook-audiences/index.js.map +1 -1
  118. package/dist/destinations/yahoo-audiences/generated-types.d.ts +1 -2
  119. package/dist/destinations/yahoo-audiences/index.js +11 -21
  120. package/dist/destinations/yahoo-audiences/index.js.map +1 -1
  121. package/dist/destinations/yahoo-audiences/updateSegment/generated-types.d.ts +1 -1
  122. package/dist/destinations/yahoo-audiences/updateSegment/index.js +23 -23
  123. package/dist/destinations/yahoo-audiences/updateSegment/index.js.map +1 -1
  124. package/dist/destinations/yahoo-audiences/utils-rt.js +15 -5
  125. package/dist/destinations/yahoo-audiences/utils-rt.js.map +1 -1
  126. package/dist/destinations/yahoo-audiences/utils-tax.js +2 -2
  127. package/dist/destinations/yahoo-audiences/utils-tax.js.map +1 -1
  128. package/package.json +5 -2
  129. package/dist/destinations/braze/updateUserProfile/__snapshots__/snapshot.test.d.ts +0 -1
  130. package/dist/destinations/braze/updateUserProfile/__snapshots__/snapshot.test.js +0 -184
  131. package/dist/destinations/braze/updateUserProfile/__snapshots__/snapshot.test.js.map +0 -1
  132. package/dist/destinations/klaviyo/removeProfileToList/generated-types.js.map +0 -1
  133. package/dist/destinations/klaviyo/removeProfileToList/index.js +0 -43
  134. package/dist/destinations/klaviyo/removeProfileToList/index.js.map +0 -1
  135. package/dist/destinations/mixpanel/utils.d.ts +0 -13
  136. package/dist/destinations/mixpanel/utils.js +0 -117
  137. package/dist/destinations/mixpanel/utils.js.map +0 -1
  138. package/dist/destinations/yahoo-audiences/createCustomerNode/generated-types.d.ts +0 -4
  139. package/dist/destinations/yahoo-audiences/createCustomerNode/generated-types.js.map +0 -1
  140. package/dist/destinations/yahoo-audiences/createCustomerNode/index.d.ts +0 -5
  141. package/dist/destinations/yahoo-audiences/createCustomerNode/index.js +0 -33
  142. package/dist/destinations/yahoo-audiences/createCustomerNode/index.js.map +0 -1
  143. package/dist/destinations/yahoo-audiences/createSegment/generated-types.d.ts +0 -6
  144. package/dist/destinations/yahoo-audiences/createSegment/generated-types.js +0 -3
  145. package/dist/destinations/yahoo-audiences/createSegment/generated-types.js.map +0 -1
  146. package/dist/destinations/yahoo-audiences/createSegment/index.d.ts +0 -5
  147. package/dist/destinations/yahoo-audiences/createSegment/index.js +0 -45
  148. package/dist/destinations/yahoo-audiences/createSegment/index.js.map +0 -1
  149. package/dist/destinations/yahoo-audiences/utils.d.ts +0 -4
  150. package/dist/destinations/yahoo-audiences/utils.js +0 -30
  151. package/dist/destinations/yahoo-audiences/utils.js.map +0 -1
  152. /package/dist/destinations/klaviyo/{removeProfileToList → removeProfileFromList}/generated-types.js +0 -0
  153. /package/dist/destinations/klaviyo/{removeProfileToList → removeProfileFromList}/index.d.ts +0 -0
@@ -11,6 +11,7 @@ export interface Payload {
11
11
  connectionOverrides?: string;
12
12
  send?: boolean;
13
13
  traitEnrichment?: boolean;
14
+ segmentComputationId?: string;
14
15
  externalIds?: {
15
16
  id?: string;
16
17
  type?: string;
@@ -1,5 +1,6 @@
1
1
  export interface Payload {
2
2
  account_id: string;
3
+ user_id?: string;
3
4
  name: string;
4
5
  created_at?: string;
5
6
  traits?: {
@@ -20,6 +20,12 @@ const action = {
20
20
  }
21
21
  }
22
22
  },
23
+ user_id: {
24
+ type: 'string',
25
+ description: 'The ID associated with the user',
26
+ label: 'User ID',
27
+ default: { '@path': '$.userId' }
28
+ },
23
29
  name: {
24
30
  type: 'string',
25
31
  required: true,
@@ -38,7 +44,13 @@ const action = {
38
44
  required: false,
39
45
  description: 'The timestamp when the account was created, represented in the ISO-8601 date format. For instance, "2023-09-26T15:30:00Z".',
40
46
  label: 'Account created at',
41
- default: { '@path': '$.traits.created_at' }
47
+ default: {
48
+ '@if': {
49
+ exists: { '@path': '$.traits.created_at' },
50
+ then: { '@path': '$.traits.created_at' },
51
+ else: { '@path': '$.traits.createdAt' }
52
+ }
53
+ }
42
54
  },
43
55
  traits: {
44
56
  type: 'object',
@@ -52,7 +64,13 @@ const action = {
52
64
  required: false,
53
65
  description: 'Subscription plan the account is associated with',
54
66
  label: 'Account subscription plan',
55
- default: { '@path': '$.traits.plan' }
67
+ default: {
68
+ '@if': {
69
+ exists: { '@path': '$.traits.plan' },
70
+ then: { '@path': '$.traits.plan' },
71
+ else: { '@path': '$.traits.plan_name' }
72
+ }
73
+ }
56
74
  },
57
75
  industry: {
58
76
  type: 'string',
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/hyperengage/group/index.ts"],"names":[],"mappings":";;AAGA,oDAAgD;AAChD,kDAA8C;AAE9C,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,OAAO;IACd,WAAW,EAAE,kCAAkC;IAC/C,mBAAmB,EAAE,gBAAgB;IACrC,MAAM,EAAE;QACN,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,uDAAuD;YACpE,KAAK,EAAE,YAAY;YACnB,OAAO,EAAE;gBACP,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;oBACzC,IAAI,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;oBACvC,IAAI,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE;iBAC/B;aACF;SACF;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,kBAAkB;YAC/B,KAAK,EAAE,cAAc;YACrB,OAAO,EAAE;gBACP,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,eAAe,EAAE;oBACpC,IAAI,EAAE,EAAE,OAAO,EAAE,eAAe,EAAE;oBAClC,IAAI,EAAE,EAAE,OAAO,EAAE,mBAAmB,EAAE;iBACvC;aACF;SACF;QACD,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,KAAK;YACf,WAAW,EACT,4HAA4H;YAC9H,KAAK,EAAE,oBAAoB;YAC3B,OAAO,EAAE,EAAE,OAAO,EAAE,qBAAqB,EAAE;SAC5C;QACD,MAAM,EAAE;YACN,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,+BAA+B;YAC5C,KAAK,EAAE,oBAAoB;YAC3B,OAAO,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE;SACjC;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,kDAAkD;YAC/D,KAAK,EAAE,2BAA2B;YAClC,OAAO,EAAE,EAAE,OAAO,EAAE,eAAe,EAAE;SACtC;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,sBAAsB;YACnC,KAAK,EAAE,kBAAkB;YACzB,OAAO,EAAE,EAAE,OAAO,EAAE,mBAAmB,EAAE;SAC1C;QACD,OAAO,EAAE;YACP,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,qBAAqB;YAClC,KAAK,EAAE,iBAAiB;YACxB,OAAO,EAAE,EAAE,OAAO,EAAE,kBAAkB,EAAE;SACzC;QACD,GAAG,2BAAY;KAChB;IACD,OAAO,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE;QACzB,OAAO,OAAO,CAAC,wDAAwD,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE;YAC7F,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,6BAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,kBAAkB,CAAC;SACrE,CAAC,CAAA;IACJ,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/hyperengage/group/index.ts"],"names":[],"mappings":"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"}
@@ -88,7 +88,13 @@ const action = {
88
88
  required: false,
89
89
  description: 'The timestamp when the user was created, represented in the ISO-8601 date format. For instance, "2023-09-26T15:30:00Z".',
90
90
  label: 'Created at',
91
- default: { '@path': '$.traits.created_at' }
91
+ default: {
92
+ '@if': {
93
+ exists: { '@path': '$.traits.created_at' },
94
+ then: { '@path': '$.traits.created_at' },
95
+ else: { '@path': '$.traits.createdAt' }
96
+ }
97
+ }
92
98
  },
93
99
  traits: {
94
100
  type: 'object',
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/hyperengage/identify/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/hyperengage/identify/index.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
1
  export interface Payload {
2
2
  event_name: string;
3
3
  user_id: string;
4
+ account_id?: string;
4
5
  properties?: {
5
6
  [k: string]: unknown;
6
7
  };
7
- account_id?: string;
8
8
  anonymous_id?: string | null;
9
9
  event_id?: string;
10
10
  doc_path?: string;
@@ -21,13 +21,6 @@ const action = {
21
21
  label: 'User id',
22
22
  default: { '@path': '$.userId' }
23
23
  },
24
- properties: {
25
- type: 'object',
26
- required: false,
27
- description: 'The properties of the track call',
28
- label: 'Event properties',
29
- default: { '@path': '$.properties' }
30
- },
31
24
  account_id: {
32
25
  type: 'string',
33
26
  required: false,
@@ -35,12 +28,19 @@ const action = {
35
28
  label: 'Account id',
36
29
  default: {
37
30
  '@if': {
38
- exists: { '@path': '$.context.group_id' },
39
- then: { '@path': '$.context.group_id' },
31
+ exists: { '@path': '$.context.groupId' },
32
+ then: { '@path': '$.context.groupId' },
40
33
  else: { '@path': '$.groupId' }
41
34
  }
42
35
  }
43
36
  },
37
+ properties: {
38
+ type: 'object',
39
+ required: false,
40
+ description: 'The properties of the track call',
41
+ label: 'Event properties',
42
+ default: { '@path': '$.properties' }
43
+ },
44
44
  ...commonFields_1.commonFields
45
45
  },
46
46
  perform: (request, data) => {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/hyperengage/track/index.ts"],"names":[],"mappings":";;AAGA,oDAAgD;AAChD,kDAA8C;AAE9C,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,OAAO;IACd,WAAW,EAAE,kCAAkC;IAC/C,mBAAmB,EAAE,gBAAgB;IACrC,MAAM,EAAE;QACN,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,uBAAuB;YACpC,KAAK,EAAE,YAAY;YACnB,OAAO,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE;SAChC;QACD,OAAO,EAAE;YACP,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,sEAAsE;YACnF,KAAK,EAAE,SAAS;YAChB,OAAO,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE;SACjC;QACD,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,kCAAkC;YAC/C,KAAK,EAAE,kBAAkB;YACzB,OAAO,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE;SACrC;QACD,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,2EAA2E;YACxF,KAAK,EAAE,YAAY;YACnB,OAAO,EAAE;gBACP,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;oBACzC,IAAI,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;oBACvC,IAAI,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE;iBAC/B;aACF;SACF;QACD,GAAG,2BAAY;KAChB;IACD,OAAO,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE;QACzB,OAAO,OAAO,CAAC,wDAAwD,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE;YAC7F,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,6BAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC;SAC1D,CAAC,CAAA;IACJ,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/hyperengage/track/index.ts"],"names":[],"mappings":";;AAGA,oDAAgD;AAChD,kDAA8C;AAE9C,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,OAAO;IACd,WAAW,EAAE,kCAAkC;IAC/C,mBAAmB,EAAE,gBAAgB;IACrC,MAAM,EAAE;QACN,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,uBAAuB;YACpC,KAAK,EAAE,YAAY;YACnB,OAAO,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE;SAChC;QACD,OAAO,EAAE;YACP,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,sEAAsE;YACnF,KAAK,EAAE,SAAS;YAChB,OAAO,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE;SACjC;QACD,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,2EAA2E;YACxF,KAAK,EAAE,YAAY;YACnB,OAAO,EAAE;gBACP,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,mBAAmB,EAAE;oBACxC,IAAI,EAAE,EAAE,OAAO,EAAE,mBAAmB,EAAE;oBACtC,IAAI,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE;iBAC/B;aACF;SACF;QACD,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,kCAAkC;YAC/C,KAAK,EAAE,kBAAkB;YACzB,OAAO,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE;SACrC;QACD,GAAG,2BAAY;KAChB;IACD,OAAO,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE;QACzB,OAAO,OAAO,CAAC,wDAAwD,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE;YAC7F,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,6BAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC;SAC1D,CAAC,CAAA;IACJ,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
@@ -22,8 +22,11 @@ const validateInput = (settings, input, event_type) => {
22
22
  delete properties.screen;
23
23
  }
24
24
  if (input?.timezone) {
25
- const offset = new Date().toLocaleString('en-US', { timeZone: input.timezone, timeZoneName: 'short' }).split(' ')[2];
26
- properties.local_tz_offset = offset;
25
+ const offset = new Date()
26
+ .toLocaleString('en-US', { timeZone: input.timezone, timeZoneName: 'short' })
27
+ .split(' ')[3]
28
+ .slice(3);
29
+ properties.local_tz_offset = parseInt(offset) * 60;
27
30
  delete properties.timezone;
28
31
  }
29
32
  if (input?.event_name && event_type === 'track') {
@@ -1 +1 @@
1
- {"version":3,"file":"validateInput.js","sourceRoot":"","sources":["../../../src/destinations/hyperengage/validateInput.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validateInput.js","sourceRoot":"","sources":["../../../src/destinations/hyperengage/validateInput.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  export interface Payload {
2
2
  email?: string;
3
- list_id?: string;
3
+ external_id: string;
4
4
  }
@@ -4,44 +4,20 @@ const actions_core_1 = require("@segment/actions-core");
4
4
  const functions_1 = require("../functions");
5
5
  const properties_1 = require("../properties");
6
6
  const action = {
7
- title: 'Add To List',
8
- description: 'Add to list',
7
+ title: 'Add Profile To List',
8
+ description: 'Add Profile To List',
9
+ defaultSubscription: 'event = "Audience Entered"',
9
10
  fields: {
10
11
  email: { ...properties_1.email },
11
- list_id: { ...properties_1.external_id }
12
+ external_id: { ...properties_1.external_id }
12
13
  },
13
14
  perform: async (request, { payload }) => {
14
- const { email, list_id } = payload;
15
- if (!list_id || !email) {
16
- throw new actions_core_1.IntegrationError("Insert the ID of the default list that you'd like to subscribe users", 'Missing required fields', 400);
17
- }
18
- const listData = {
19
- data: [
20
- {
21
- type: 'profile'
22
- }
23
- ]
24
- };
25
- try {
26
- const profileData = await functions_1.createProfile(request, email);
27
- const id = JSON.parse(profileData?.content)?.data?.id;
28
- if (id) {
29
- listData.data[0].id = id;
30
- return await functions_1.executeProfileList(request, 'POST', listData, list_id);
31
- }
32
- }
33
- catch (error) {
34
- const { response } = error;
35
- if (response?.status === 409) {
36
- const content = JSON.parse(response?.content);
37
- const id = content?.errors[0]?.meta?.duplicate_profile_id;
38
- if (id) {
39
- listData.data[0].id = id;
40
- return await functions_1.executeProfileList(request, 'POST', listData, list_id);
41
- }
42
- }
43
- throw new Error('An error occurred while processing the request');
15
+ const { email, external_id } = payload;
16
+ if (!email) {
17
+ throw new actions_core_1.PayloadValidationError('Missing Email');
44
18
  }
19
+ const profileId = await functions_1.createProfile(request, email);
20
+ return await functions_1.addProfileToList(request, profileId, external_id);
45
21
  }
46
22
  };
47
23
  exports.default = action;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/klaviyo/addProfileToList/index.ts"],"names":[],"mappings":";;AAAA,wDAA0E;AAI1E,4CAAgE;AAChE,8CAAkD;AAElD,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,aAAa;IACpB,WAAW,EAAE,aAAa;IAC1B,MAAM,EAAE;QACN,KAAK,EAAE,EAAE,GAAG,kBAAK,EAAE;QACnB,OAAO,EAAE,EAAE,GAAG,wBAAW,EAAE;KAC5B;IACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QACtC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,CAAA;QAClC,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK,EAAE;YACtB,MAAM,IAAI,+BAAgB,CACxB,sEAAsE,EACtE,yBAAyB,EACzB,GAAG,CACJ,CAAA;SACF;QACD,MAAM,QAAQ,GAAa;YACzB,IAAI,EAAE;gBACJ;oBACE,IAAI,EAAE,SAAS;iBAChB;aACF;SACF,CAAA;QAED,IAAI;YACF,MAAM,WAAW,GAA2B,MAAM,yBAAa,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;YAC/E,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE,CAAA;YAErD,IAAI,EAAE,EAAE;gBACN,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAA;gBACxB,OAAO,MAAM,8BAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAA;aACpE;SACF;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAwB,CAAA;YAE7C,IAAI,QAAQ,EAAE,MAAM,KAAK,GAAG,EAAE;gBAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;gBAC7C,MAAM,EAAE,GAAG,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,oBAAoB,CAAA;gBAEzD,IAAI,EAAE,EAAE;oBACN,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAA;oBAExB,OAAO,MAAM,8BAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAA;iBACpE;aACF;YAED,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAA;SAClE;IACH,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/klaviyo/addProfileToList/index.ts"],"names":[],"mappings":";;AAAA,wDAAgF;AAGhF,4CAA8D;AAC9D,8CAAkD;AAElD,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,qBAAqB;IAC5B,WAAW,EAAE,qBAAqB;IAClC,mBAAmB,EAAE,4BAA4B;IACjD,MAAM,EAAE;QACN,KAAK,EAAE,EAAE,GAAG,kBAAK,EAAE;QACnB,WAAW,EAAE,EAAE,GAAG,wBAAW,EAAE;KAChC;IACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QACtC,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,OAAO,CAAA;QACtC,IAAI,CAAC,KAAK,EAAE;YACV,MAAM,IAAI,qCAAsB,CAAC,eAAe,CAAC,CAAA;SAClD;QACD,MAAM,SAAS,GAAG,MAAM,yBAAa,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;QACrD,OAAO,MAAM,4BAAgB,CAAC,OAAO,EAAE,SAAS,EAAE,WAAW,CAAC,CAAA;IAChE,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
@@ -1,4 +1,12 @@
1
1
  import { RequestClient, DynamicFieldResponse } from '@segment/actions-core';
2
- import { Settings } from './generated-types';
3
- export declare function getListIdDynamicData(request: RequestClient, settings: Settings): Promise<DynamicFieldResponse>;
4
- export declare function addProfileToList(request: RequestClient, profileId: string, listId: string): Promise<void>;
2
+ export declare function getListIdDynamicData(request: RequestClient): Promise<DynamicFieldResponse>;
3
+ export declare function addProfileToList(request: RequestClient, id: string, list_id: string | undefined): Promise<import("@segment/actions-core").ModifiedResponse<unknown>>;
4
+ export declare function removeProfileFromList(request: RequestClient, id: string, list_id: string | undefined): Promise<import("@segment/actions-core").ModifiedResponse<unknown>>;
5
+ export declare function getProfile(request: RequestClient, email: string): Promise<any>;
6
+ export declare function createProfile(request: RequestClient, email: string): Promise<any>;
7
+ export declare function buildHeaders(authKey: string): {
8
+ Authorization: string;
9
+ Accept: string;
10
+ revision: string;
11
+ 'Content-Type': string;
12
+ };
@@ -1,20 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.addProfileToList = exports.getListIdDynamicData = void 0;
3
+ exports.buildHeaders = exports.createProfile = exports.getProfile = exports.removeProfileFromList = exports.addProfileToList = exports.getListIdDynamicData = void 0;
4
4
  const config_1 = require("./config");
5
- async function getListIdDynamicData(request, settings) {
5
+ async function getListIdDynamicData(request) {
6
6
  try {
7
7
  const result = await request(`${config_1.API_URL}/lists/`, {
8
- method: 'get',
9
- headers: {
10
- Authorization: `Klaviyo-API-Key ${settings.api_key}`,
11
- Accept: 'application/json',
12
- revision: config_1.REVISION_DATE
13
- },
14
- skipResponseCloning: true
8
+ method: 'get'
15
9
  });
16
- const parsedContent = JSON.parse(result.content);
17
- const choices = parsedContent.data.map((list) => {
10
+ const choices = JSON.parse(result.content).data.map((list) => {
18
11
  return { value: list.id, label: list.attributes.name };
19
12
  });
20
13
  return {
@@ -33,19 +26,78 @@ async function getListIdDynamicData(request, settings) {
33
26
  }
34
27
  }
35
28
  exports.getListIdDynamicData = getListIdDynamicData;
36
- async function addProfileToList(request, profileId, listId) {
29
+ async function addProfileToList(request, id, list_id) {
37
30
  const listData = {
38
31
  data: [
39
32
  {
40
33
  type: 'profile',
41
- id: profileId
34
+ id: id
42
35
  }
43
36
  ]
44
37
  };
45
- await request(`${config_1.API_URL}/lists/${listId}/relationships/profiles/`, {
38
+ const list = await request(`${config_1.API_URL}/lists/${list_id}/relationships/profiles/`, {
46
39
  method: 'POST',
47
40
  json: listData
48
41
  });
42
+ return list;
49
43
  }
50
44
  exports.addProfileToList = addProfileToList;
45
+ async function removeProfileFromList(request, id, list_id) {
46
+ const listData = {
47
+ data: [
48
+ {
49
+ type: 'profile',
50
+ id: id
51
+ }
52
+ ]
53
+ };
54
+ const list = await request(`${config_1.API_URL}/lists/${list_id}/relationships/profiles/`, {
55
+ method: 'DELETE',
56
+ json: listData
57
+ });
58
+ return list;
59
+ }
60
+ exports.removeProfileFromList = removeProfileFromList;
61
+ async function getProfile(request, email) {
62
+ const profile = await request(`${config_1.API_URL}/profiles/?filter=equals(email,"${email}")`, {
63
+ method: 'GET'
64
+ });
65
+ return profile.json();
66
+ }
67
+ exports.getProfile = getProfile;
68
+ async function createProfile(request, email) {
69
+ try {
70
+ const profileData = {
71
+ data: {
72
+ type: 'profile',
73
+ attributes: {
74
+ email
75
+ }
76
+ }
77
+ };
78
+ const profile = await request(`${config_1.API_URL}/profiles/`, {
79
+ method: 'POST',
80
+ json: profileData
81
+ });
82
+ const rs = await profile.json();
83
+ return rs.data.id;
84
+ }
85
+ catch (error) {
86
+ const { response } = error;
87
+ if (response.status == 409) {
88
+ const rs = await response.json();
89
+ return rs.errors[0].meta.duplicate_profile_id;
90
+ }
91
+ }
92
+ }
93
+ exports.createProfile = createProfile;
94
+ function buildHeaders(authKey) {
95
+ return {
96
+ Authorization: `Klaviyo-API-Key ${authKey}`,
97
+ Accept: 'application/json',
98
+ revision: config_1.REVISION_DATE,
99
+ 'Content-Type': 'application/json'
100
+ };
101
+ }
102
+ exports.buildHeaders = buildHeaders;
51
103
  //# sourceMappingURL=functions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"functions.js","sourceRoot":"","sources":["../../../src/destinations/klaviyo/functions.ts"],"names":[],"mappings":";;;AACA,qCAAiD;AAI1C,KAAK,UAAU,oBAAoB,CAAC,OAAsB,EAAE,QAAkB;IACnF,IAAI;QACF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,gBAAO,SAAS,EAAE;YAChD,MAAM,EAAE,KAAK;YACb,OAAO,EAAE;gBACP,aAAa,EAAE,mBAAmB,QAAQ,CAAC,OAAO,EAAE;gBACpD,MAAM,EAAE,kBAAkB;gBAC1B,QAAQ,EAAE,sBAAa;aACxB;YACD,mBAAmB,EAAE,IAAI;SAC1B,CAAC,CAAA;QACF,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAyB,CAAA;QACxE,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAkD,EAAE,EAAE;YAC5F,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAA;QACxD,CAAC,CAAC,CAAA;QACF,OAAO;YACL,OAAO;SACR,CAAA;KACF;IAAC,OAAO,GAAG,EAAE;QACZ,OAAO;YACL,OAAO,EAAE,EAAE;YACX,QAAQ,EAAE,EAAE;YACZ,KAAK,EAAE;gBACL,OAAO,EAAG,GAAgB,CAAC,OAAO,IAAI,eAAe;gBACrD,IAAI,EAAG,GAAgB,CAAC,MAAM,GAAG,EAAE,IAAI,eAAe;aACvD;SACF,CAAA;KACF;AACH,CAAC;AA5BD,oDA4BC;AAEM,KAAK,UAAU,gBAAgB,CAAC,OAAsB,EAAE,SAAiB,EAAE,MAAc;IAC9F,MAAM,QAAQ,GAAG;QACf,IAAI,EAAE;YACJ;gBACE,IAAI,EAAE,SAAS;gBACf,EAAE,EAAE,SAAS;aACd;SACF;KACF,CAAA;IAED,MAAM,OAAO,CAAC,GAAG,gBAAO,UAAU,MAAM,0BAA0B,EAAE;QAClE,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,QAAQ;KACf,CAAC,CAAA;AACJ,CAAC;AAdD,4CAcC"}
1
+ {"version":3,"file":"functions.js","sourceRoot":"","sources":["../../../src/destinations/klaviyo/functions.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { DestinationDefinition } from '@segment/actions-core';
1
+ import { AudienceDestinationDefinition } from '@segment/actions-core';
2
2
  import type { Settings } from './generated-types';
3
- declare const destination: DestinationDefinition<Settings>;
3
+ declare const destination: AudienceDestinationDefinition<Settings>;
4
4
  export default destination;
@@ -3,10 +3,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- const upsertProfile_1 = __importDefault(require("./upsertProfile"));
6
+ const actions_core_1 = require("@segment/actions-core");
7
7
  const config_1 = require("./config");
8
+ const upsertProfile_1 = __importDefault(require("./upsertProfile"));
9
+ const addProfileToList_1 = __importDefault(require("./addProfileToList"));
10
+ const removeProfileFromList_1 = __importDefault(require("./removeProfileFromList"));
8
11
  const trackEvent_1 = __importDefault(require("./trackEvent"));
9
12
  const orderCompleted_1 = __importDefault(require("./orderCompleted"));
13
+ const functions_1 = require("./functions");
10
14
  const destination = {
11
15
  name: 'Klaviyo (Actions)',
12
16
  slug: 'actions-klaviyo',
@@ -15,7 +19,7 @@ const destination = {
15
19
  scheme: 'custom',
16
20
  fields: {
17
21
  api_key: {
18
- type: 'string',
22
+ type: 'password',
19
23
  label: 'API Key',
20
24
  description: `You can find this by going to Klaviyo's UI and clicking Account > Settings > API Keys > Create API Key`,
21
25
  required: true
@@ -47,15 +51,57 @@ const destination = {
47
51
  },
48
52
  extendRequest({ settings }) {
49
53
  return {
50
- headers: {
51
- Authorization: `Klaviyo-API-Key ${settings.api_key}`,
52
- Accept: 'application/json',
53
- revision: config_1.REVISION_DATE
54
- }
54
+ headers: functions_1.buildHeaders(settings.api_key)
55
55
  };
56
56
  },
57
+ audienceFields: {},
58
+ audienceConfig: {
59
+ mode: {
60
+ type: 'synced',
61
+ full_audience_sync: false
62
+ },
63
+ async createAudience(request, createAudienceInput) {
64
+ const audienceName = createAudienceInput.audienceName;
65
+ const apiKey = createAudienceInput.settings.api_key;
66
+ if (!audienceName) {
67
+ throw new actions_core_1.PayloadValidationError('Missing audience name value');
68
+ }
69
+ if (!apiKey) {
70
+ throw new actions_core_1.PayloadValidationError('Missing Api Key value');
71
+ }
72
+ const response = await request(`${config_1.API_URL}/lists`, {
73
+ method: 'POST',
74
+ headers: functions_1.buildHeaders(apiKey),
75
+ json: {
76
+ data: { type: 'list', attributes: { name: audienceName } }
77
+ }
78
+ });
79
+ const r = await response.json();
80
+ return {
81
+ externalId: r.data.id
82
+ };
83
+ },
84
+ async getAudience(request, getAudienceInput) {
85
+ const listId = getAudienceInput.externalId;
86
+ const apiKey = getAudienceInput.settings.api_key;
87
+ const response = await request(`${config_1.API_URL}/lists/${listId}`, {
88
+ method: 'GET',
89
+ headers: functions_1.buildHeaders(apiKey)
90
+ });
91
+ const r = await response.json();
92
+ const externalId = r.data.id;
93
+ if (externalId !== getAudienceInput.externalId) {
94
+ throw new actions_core_1.IntegrationError("Unable to verify ownership over audience. Segment Audience ID doesn't match The Klaviyo List Id.", 'INVALID_REQUEST_DATA', 400);
95
+ }
96
+ return {
97
+ externalId
98
+ };
99
+ }
100
+ },
57
101
  actions: {
58
102
  upsertProfile: upsertProfile_1.default,
103
+ addProfileToList: addProfileToList_1.default,
104
+ removeProfileFromList: removeProfileFromList_1.default,
59
105
  trackEvent: trackEvent_1.default,
60
106
  orderCompleted: orderCompleted_1.default
61
107
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/klaviyo/index.ts"],"names":[],"mappings":";;;;;AAGA,oEAA2C;AAC3C,qCAAiD;AAEjD,8DAAqC;AAErC,sEAA6C;AAE7C,MAAM,WAAW,GAAoC;IACnD,IAAI,EAAE,mBAAmB;IACzB,IAAI,EAAE,iBAAiB;IACvB,IAAI,EAAE,OAAO;IAEb,cAAc,EAAE;QACd,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE;YACN,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,SAAS;gBAChB,WAAW,EAAE,wGAAwG;gBACrH,QAAQ,EAAE,IAAI;aACf;SACF;QACD,kBAAkB,EAAE,CAAC,OAAO,EAAE,EAAE;YAC9B,OAAO,OAAO,CAAC,GAAG,gBAAO,YAAY,EAAE;gBACrC,MAAM,EAAE,KAAK;aACd,CAAC,CAAA;QACJ,CAAC;KACF;IAED,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QACvC,OAAO,OAAO,CAAC,GAAG,gBAAO,8BAA8B,EAAE;YACvD,MAAM,EAAE,MAAM;YACd,IAAI,EAAE;gBACJ,IAAI,EAAE;oBACJ,IAAI,EAAE,2BAA2B;oBACjC,UAAU,EAAE;wBACV,OAAO,EAAE;4BACP,IAAI,EAAE;gCACJ,IAAI,EAAE,SAAS;gCACf,EAAE,EAAE,OAAO,CAAC,MAAM;6BACnB;yBACF;qBACF;iBACF;aACF;SACF,CAAC,CAAA;IACJ,CAAC;IAED,aAAa,CAAC,EAAE,QAAQ,EAAE;QACxB,OAAO;YACL,OAAO,EAAE;gBACP,aAAa,EAAE,mBAAmB,QAAQ,CAAC,OAAO,EAAE;gBACpD,MAAM,EAAE,kBAAkB;gBAC1B,QAAQ,EAAE,sBAAa;aACxB;SACF,CAAA;IACH,CAAC;IAED,OAAO,EAAE;QACP,aAAa,EAAb,uBAAa;QACb,UAAU,EAAV,oBAAU;QACV,cAAc,EAAd,wBAAc;KACf;CACF,CAAA;AAED,kBAAe,WAAW,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/klaviyo/index.ts"],"names":[],"mappings":"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"}
@@ -8,14 +8,16 @@ exports.external_id = {
8
8
  default: {
9
9
  '@path': '$.context.personas.external_audience_id'
10
10
  },
11
- unsafe_hidden: true
11
+ unsafe_hidden: true,
12
+ required: true
12
13
  };
13
14
  exports.email = {
14
15
  label: 'Email',
15
- description: 'Email of User',
16
+ description: `The user's email to send to Klavio.`,
16
17
  type: 'string',
17
18
  default: {
18
19
  '@path': '$.context.traits.email'
19
- }
20
+ },
21
+ readOnly: true
20
22
  };
21
23
  //# sourceMappingURL=properties.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"properties.js","sourceRoot":"","sources":["../../../src/destinations/klaviyo/properties.ts"],"names":[],"mappings":";;;AAEa,QAAA,WAAW,GAAe;IACrC,KAAK,EAAE,aAAa;IACpB,WAAW,EAAE,sGAAsG;IACnH,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,OAAO,EAAE,yCAAyC;KACnD;IACD,aAAa,EAAE,IAAI;CACpB,CAAA;AAEY,QAAA,KAAK,GAAe;IAC/B,KAAK,EAAE,OAAO;IACd,WAAW,EAAE,eAAe;IAC5B,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,OAAO,EAAE,wBAAwB;KAClC;CACF,CAAA"}
1
+ {"version":3,"file":"properties.js","sourceRoot":"","sources":["../../../src/destinations/klaviyo/properties.ts"],"names":[],"mappings":";;;AAEa,QAAA,WAAW,GAAe;IACrC,KAAK,EAAE,aAAa;IACpB,WAAW,EAAE,sGAAsG;IACnH,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,OAAO,EAAE,yCAAyC;KACnD;IACD,aAAa,EAAE,IAAI;IACnB,QAAQ,EAAE,IAAI;CACf,CAAA;AAEY,QAAA,KAAK,GAAe;IAC/B,KAAK,EAAE,OAAO;IACd,WAAW,EAAE,qCAAqC;IAClD,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,OAAO,EAAE,wBAAwB;KAClC;IACD,QAAQ,EAAE,IAAI;CACf,CAAA"}
@@ -1,4 +1,4 @@
1
1
  export interface Payload {
2
2
  email?: string;
3
- list_id?: string;
3
+ external_id: string;
4
4
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generated-types.js","sourceRoot":"","sources":["../../../../src/destinations/klaviyo/removeProfileFromList/generated-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const actions_core_1 = require("@segment/actions-core");
4
+ const functions_1 = require("../functions");
5
+ const properties_1 = require("../properties");
6
+ const action = {
7
+ title: 'Remove profile from list',
8
+ description: 'Remove profile from list',
9
+ defaultSubscription: 'event = "Audience Exited"',
10
+ fields: {
11
+ email: { ...properties_1.email },
12
+ external_id: { ...properties_1.external_id }
13
+ },
14
+ perform: async (request, { payload }) => {
15
+ const { email, external_id } = payload;
16
+ if (!email) {
17
+ throw new actions_core_1.PayloadValidationError('Missing Email');
18
+ }
19
+ const profileData = await functions_1.getProfile(request, email);
20
+ const v = profileData.data;
21
+ if (v && v.length !== 0) {
22
+ return await functions_1.removeProfileFromList(request, v[0].id, external_id);
23
+ }
24
+ }
25
+ };
26
+ exports.default = action;
27
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/klaviyo/removeProfileFromList/index.ts"],"names":[],"mappings":";;AAAA,wDAAgF;AAIhF,4CAAgE;AAChE,8CAAkD;AAElD,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,0BAA0B;IACjC,WAAW,EAAE,0BAA0B;IACvC,mBAAmB,EAAE,2BAA2B;IAChD,MAAM,EAAE;QACN,KAAK,EAAE,EAAE,GAAG,kBAAK,EAAE;QACnB,WAAW,EAAE,EAAE,GAAG,wBAAW,EAAE;KAChC;IACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QACtC,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,OAAO,CAAA;QACtC,IAAI,CAAC,KAAK,EAAE;YACV,MAAM,IAAI,qCAAsB,CAAC,eAAe,CAAC,CAAA;SAClD;QACD,MAAM,WAAW,GAAG,MAAM,sBAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;QACpD,MAAM,CAAC,GAAG,WAAW,CAAC,IAAI,CAAA;QAC1B,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;YACvB,OAAO,MAAM,iCAAqB,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,WAAW,CAAC,CAAA;SAClE;IACH,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}