@segment/action-destinations 3.265.0 → 3.266.0-staging-20542aec8
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.
- package/dist/destinations/amazon-ads/utils.d.ts +25 -0
- package/dist/destinations/amazon-ads/utils.js +8 -0
- package/dist/destinations/amazon-ads/utils.js.map +1 -0
- package/dist/destinations/customerio/utils.d.ts +1 -1
- package/dist/destinations/dynamic-yield-audiences/syncAudience/types.d.ts +22 -0
- package/dist/destinations/dynamic-yield-audiences/syncAudience/types.js +3 -0
- package/dist/destinations/dynamic-yield-audiences/syncAudience/types.js.map +1 -0
- package/dist/destinations/dynamic-yield-audiences/types.d.ts +8 -0
- package/dist/destinations/dynamic-yield-audiences/types.js +12 -0
- package/dist/destinations/dynamic-yield-audiences/types.js.map +1 -0
- package/dist/destinations/engage/utils/track.d.ts +9 -9
- package/dist/destinations/engage-messaging-sendgrid/sendEmail/generated-types.d.ts +36 -0
- package/dist/destinations/engage-messaging-sendgrid/sendEmail/generated-types.js +3 -0
- package/dist/destinations/engage-messaging-sendgrid/sendEmail/generated-types.js.map +1 -0
- package/dist/destinations/engage-messaging-sendgrid/sendEmail/index.d.ts +5 -0
- package/dist/destinations/engage-messaging-sendgrid/sendEmail/index.js +452 -0
- package/dist/destinations/engage-messaging-sendgrid/sendEmail/index.js.map +1 -0
- package/dist/destinations/engage-messaging-twilio/sendSms/generated-types.d.ts +22 -0
- package/dist/destinations/engage-messaging-twilio/sendSms/generated-types.js +3 -0
- package/dist/destinations/engage-messaging-twilio/sendSms/generated-types.js.map +1 -0
- package/dist/destinations/engage-messaging-twilio/sendSms/index.d.ts +5 -0
- package/dist/destinations/engage-messaging-twilio/sendSms/index.js +131 -0
- package/dist/destinations/engage-messaging-twilio/sendSms/index.js.map +1 -0
- package/dist/destinations/engage-messaging-twilio/sendSms/sms-sender.d.ts +23 -0
- package/dist/destinations/engage-messaging-twilio/sendSms/sms-sender.js +131 -0
- package/dist/destinations/engage-messaging-twilio/sendSms/sms-sender.js.map +1 -0
- package/dist/destinations/engage-messaging-twilio/sendWhatsApp/generated-types.d.ts +24 -0
- package/dist/destinations/engage-messaging-twilio/sendWhatsApp/generated-types.js +3 -0
- package/dist/destinations/engage-messaging-twilio/sendWhatsApp/generated-types.js.map +1 -0
- package/dist/destinations/engage-messaging-twilio/sendWhatsApp/index.d.ts +5 -0
- package/dist/destinations/engage-messaging-twilio/sendWhatsApp/index.js +133 -0
- package/dist/destinations/engage-messaging-twilio/sendWhatsApp/index.js.map +1 -0
- package/dist/destinations/engage-messaging-twilio/sendWhatsApp/whatsapp-sender.d.ts +21 -0
- package/dist/destinations/engage-messaging-twilio/sendWhatsApp/whatsapp-sender.js +75 -0
- package/dist/destinations/engage-messaging-twilio/sendWhatsApp/whatsapp-sender.js.map +1 -0
- package/dist/destinations/engage-messaging-twilio/utils/message-sender.d.ts +24 -0
- package/dist/destinations/engage-messaging-twilio/utils/message-sender.js +111 -0
- package/dist/destinations/engage-messaging-twilio/utils/message-sender.js.map +1 -0
- package/dist/destinations/facebook-conversions-api/fb-capi-user-data.js +5 -4
- package/dist/destinations/facebook-conversions-api/fb-capi-user-data.js.map +1 -1
- package/dist/destinations/hubspot/helperFunctions.d.ts +7 -0
- package/dist/destinations/hubspot/helperFunctions.js +27 -0
- package/dist/destinations/hubspot/helperFunctions.js.map +1 -0
- package/dist/destinations/mixpanel/utils.d.ts +13 -0
- package/dist/destinations/mixpanel/utils.js +117 -0
- package/dist/destinations/mixpanel/utils.js.map +1 -0
- package/dist/destinations/snap-conversions-api/snap-capi-properties.d.ts +30 -0
- package/dist/destinations/snap-conversions-api/snap-capi-properties.js +316 -0
- package/dist/destinations/snap-conversions-api/snap-capi-properties.js.map +1 -0
- package/dist/destinations/tiktok-audiences/functions.js +7 -3
- package/dist/destinations/tiktok-audiences/functions.js.map +1 -1
- package/dist/destinations/tiktok-conversions/reportWebEvent/formatter.d.ts +3 -0
- package/dist/destinations/tiktok-conversions/reportWebEvent/formatter.js +34 -0
- package/dist/destinations/tiktok-conversions/reportWebEvent/formatter.js.map +1 -0
- package/dist/destinations/vernst-test/generated-types.d.ts +2 -0
- package/dist/destinations/vernst-test/generated-types.js +3 -0
- package/dist/destinations/vernst-test/generated-types.js.map +1 -0
- package/dist/destinations/vernst-test/index.d.ts +4 -0
- package/dist/destinations/vernst-test/index.js +20 -0
- package/dist/destinations/vernst-test/index.js.map +1 -0
- package/dist/destinations/vernst-test/pingWebhook/generated-types.d.ts +3 -0
- package/dist/destinations/vernst-test/pingWebhook/generated-types.js +3 -0
- package/dist/destinations/vernst-test/pingWebhook/generated-types.js.map +1 -0
- package/dist/destinations/vernst-test/pingWebhook/index.d.ts +5 -0
- package/dist/destinations/vernst-test/pingWebhook/index.js +21 -0
- package/dist/destinations/vernst-test/pingWebhook/index.js.map +1 -0
- package/package.json +5 -5
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WhatsAppMessageSender = void 0;
|
|
4
|
+
const liquidjs_1 = require("liquidjs");
|
|
5
|
+
const actions_core_1 = require("@segment/actions-core");
|
|
6
|
+
const message_sender_1 = require("../utils/message-sender");
|
|
7
|
+
const google_libphonenumber_1 = require("google-libphonenumber");
|
|
8
|
+
const phoneUtil = google_libphonenumber_1.PhoneNumberUtil.getInstance();
|
|
9
|
+
const Liquid = new liquidjs_1.Liquid();
|
|
10
|
+
class WhatsAppMessageSender extends message_sender_1.MessageSender {
|
|
11
|
+
constructor(request, payload, settings, statsClient, tags, logger) {
|
|
12
|
+
super(request, payload, settings, statsClient, tags, logger);
|
|
13
|
+
this.request = request;
|
|
14
|
+
this.payload = payload;
|
|
15
|
+
this.settings = settings;
|
|
16
|
+
this.statsClient = statsClient;
|
|
17
|
+
this.tags = tags;
|
|
18
|
+
this.logger = logger;
|
|
19
|
+
this.getExternalId = () => this.payload.externalIds?.find(({ type, channelType }) => channelType?.toLowerCase() === 'whatsapp' && type === 'phone');
|
|
20
|
+
this.getBody = async (phone) => {
|
|
21
|
+
let parsedPhone;
|
|
22
|
+
try {
|
|
23
|
+
parsedPhone = phoneUtil.parse(phone, 'US');
|
|
24
|
+
parsedPhone = phoneUtil.format(parsedPhone, google_libphonenumber_1.PhoneNumberFormat.E164);
|
|
25
|
+
parsedPhone = `whatsapp:${parsedPhone}`;
|
|
26
|
+
}
|
|
27
|
+
catch (error) {
|
|
28
|
+
this.tags.push('type:invalid_phone_e164');
|
|
29
|
+
this.logger?.error(`TE Messaging: WhatsApp invalid phone number - ${this.settings.spaceId} - [${error}]`);
|
|
30
|
+
this.statsClient?.incr('actions-personas-messaging-twilio.error', 1, this.tags);
|
|
31
|
+
throw new actions_core_1.IntegrationError('The string supplied did not seem to be a phone number. Phone number must be able to be formatted to e164 for whatsapp.', `INVALID_PHONE`, 400);
|
|
32
|
+
}
|
|
33
|
+
if (!this.payload.contentSid) {
|
|
34
|
+
this.logger?.error(`TE Messaging: A valid WhatsApp Content SID was not provided - ${this.settings.spaceId}`);
|
|
35
|
+
throw new actions_core_1.IntegrationError('A valid whatsApp Content SID was not provided.', `INVALID_CONTENT_SID`, 400);
|
|
36
|
+
}
|
|
37
|
+
const params = {
|
|
38
|
+
ContentSid: this.payload.contentSid,
|
|
39
|
+
From: this.payload.from,
|
|
40
|
+
To: parsedPhone
|
|
41
|
+
};
|
|
42
|
+
const contentVariables = await this.getVariables();
|
|
43
|
+
if (contentVariables)
|
|
44
|
+
params['ContentVariables'] = contentVariables;
|
|
45
|
+
return new URLSearchParams(params);
|
|
46
|
+
};
|
|
47
|
+
this.getVariables = async () => {
|
|
48
|
+
try {
|
|
49
|
+
if (!this.payload.traitEnrichment && this.payload.contentVariables)
|
|
50
|
+
return JSON.stringify(this.payload.contentVariables) ?? null;
|
|
51
|
+
if (!this.payload.contentVariables || !this.payload.traits)
|
|
52
|
+
return null;
|
|
53
|
+
const profile = {
|
|
54
|
+
profile: {
|
|
55
|
+
traits: this.payload.traits
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
const mapping = {};
|
|
59
|
+
for (const [key, val] of Object.entries(this.payload.contentVariables)) {
|
|
60
|
+
const parsed = await Liquid.parseAndRender(val, profile);
|
|
61
|
+
if (parsed?.length) {
|
|
62
|
+
mapping[key] = parsed;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
return JSON.stringify(mapping);
|
|
66
|
+
}
|
|
67
|
+
catch (error) {
|
|
68
|
+
this.logger?.error(`TE Messaging: Failed to parse WhatsApp template with content variables - ${this.settings.spaceId} - [${error}]`);
|
|
69
|
+
throw new actions_core_1.IntegrationError(`Unable to parse templating in content variables`, `Content variables templating parse failure`, 400);
|
|
70
|
+
}
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
exports.WhatsAppMessageSender = WhatsAppMessageSender;
|
|
75
|
+
//# sourceMappingURL=whatsapp-sender.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"whatsapp-sender.js","sourceRoot":"","sources":["../../../../src/destinations/engage-messaging-twilio/sendWhatsApp/whatsapp-sender.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { RequestOptions } from '@segment/actions-core';
|
|
2
|
+
import type { Settings } from '../generated-types';
|
|
3
|
+
import type { Payload } from '../sendSms/generated-types';
|
|
4
|
+
import { Logger, StatsClient, StatsContext } from '@segment/actions-core/src/destination-kit';
|
|
5
|
+
export declare type RequestFn = (url: string, options?: RequestOptions) => Promise<Response>;
|
|
6
|
+
declare type MinimalPayload = Pick<Payload, 'from' | 'toNumber' | 'customArgs' | 'externalIds' | 'traits' | 'send' | 'eventOccurredTS'>;
|
|
7
|
+
export declare abstract class MessageSender<SmsPayload extends MinimalPayload> {
|
|
8
|
+
readonly request: RequestFn;
|
|
9
|
+
readonly payload: SmsPayload;
|
|
10
|
+
readonly settings: Settings;
|
|
11
|
+
readonly statsClient: StatsClient | undefined;
|
|
12
|
+
readonly tags: StatsContext['tags'];
|
|
13
|
+
readonly logger: Logger | undefined;
|
|
14
|
+
private readonly EXTERNAL_ID_KEY;
|
|
15
|
+
private readonly DEFAULT_HOSTNAME;
|
|
16
|
+
private readonly DEFAULT_CONNECTION_OVERRIDES;
|
|
17
|
+
constructor(request: RequestFn, payload: SmsPayload, settings: Settings, statsClient: StatsClient | undefined, tags: StatsContext['tags'], logger: Logger | undefined);
|
|
18
|
+
abstract getBody: (phone: string) => Promise<URLSearchParams>;
|
|
19
|
+
abstract getExternalId: () => NonNullable<MinimalPayload['externalIds']>[number] | undefined;
|
|
20
|
+
send: () => Promise<Response | undefined>;
|
|
21
|
+
private getSendabilityPayload;
|
|
22
|
+
private getWebhookUrlWithParams;
|
|
23
|
+
}
|
|
24
|
+
export {};
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MessageSender = void 0;
|
|
4
|
+
const actions_core_1 = require("@segment/actions-core");
|
|
5
|
+
var SendabilityStatus;
|
|
6
|
+
(function (SendabilityStatus) {
|
|
7
|
+
SendabilityStatus["NoSenderPhone"] = "no_sender_phone";
|
|
8
|
+
SendabilityStatus["ShouldSend"] = "should_send";
|
|
9
|
+
SendabilityStatus["DoNotSend"] = "do_not_send";
|
|
10
|
+
SendabilityStatus["SendDisabled"] = "send_disabled";
|
|
11
|
+
SendabilityStatus["InvalidSubscriptionStatus"] = "invalid_subscription_status";
|
|
12
|
+
})(SendabilityStatus || (SendabilityStatus = {}));
|
|
13
|
+
class MessageSender {
|
|
14
|
+
constructor(request, payload, settings, statsClient, tags, logger) {
|
|
15
|
+
this.request = request;
|
|
16
|
+
this.payload = payload;
|
|
17
|
+
this.settings = settings;
|
|
18
|
+
this.statsClient = statsClient;
|
|
19
|
+
this.tags = tags;
|
|
20
|
+
this.logger = logger;
|
|
21
|
+
this.EXTERNAL_ID_KEY = 'phone';
|
|
22
|
+
this.DEFAULT_HOSTNAME = 'api.twilio.com';
|
|
23
|
+
this.DEFAULT_CONNECTION_OVERRIDES = 'rp=all&rc=5';
|
|
24
|
+
this.send = async () => {
|
|
25
|
+
const { phone, sendabilityStatus } = this.getSendabilityPayload();
|
|
26
|
+
if (sendabilityStatus !== SendabilityStatus.ShouldSend || !phone) {
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
const body = await this.getBody(phone);
|
|
30
|
+
const webhookUrlWithParams = this.getWebhookUrlWithParams(phone);
|
|
31
|
+
if (webhookUrlWithParams)
|
|
32
|
+
body.append('StatusCallback', webhookUrlWithParams);
|
|
33
|
+
const twilioHostname = this.settings.twilioHostname ?? this.DEFAULT_HOSTNAME;
|
|
34
|
+
const twilioToken = Buffer.from(`${this.settings.twilioApiKeySID}:${this.settings.twilioApiKeySecret}`).toString('base64');
|
|
35
|
+
try {
|
|
36
|
+
const response = await this.request(`https://${twilioHostname}/2010-04-01/Accounts/${this.settings.twilioAccountSID}/Messages.json`, {
|
|
37
|
+
method: 'POST',
|
|
38
|
+
headers: {
|
|
39
|
+
authorization: `Basic ${twilioToken}`
|
|
40
|
+
},
|
|
41
|
+
body
|
|
42
|
+
});
|
|
43
|
+
this.tags.push(`twilio_status_code:${response.status}`);
|
|
44
|
+
this.statsClient?.incr('actions-personas-messaging-twilio.response', 1, this.tags);
|
|
45
|
+
if (this.payload.eventOccurredTS != undefined) {
|
|
46
|
+
this.statsClient?.histogram('actions-personas-messaging-twilio.eventDeliveryTS', Date.now() - new Date(this.payload.eventOccurredTS).getTime(), this.tags);
|
|
47
|
+
}
|
|
48
|
+
return response;
|
|
49
|
+
}
|
|
50
|
+
catch (error) {
|
|
51
|
+
if (error instanceof Object) {
|
|
52
|
+
const twilioApiError = error;
|
|
53
|
+
this.logger?.error(`TE Messaging: Twilio Programmable API error - ${this.settings.spaceId} - [${JSON.stringify(twilioApiError.response.data)}]`);
|
|
54
|
+
const errorCode = twilioApiError.response.data.code;
|
|
55
|
+
if (errorCode === 63018) {
|
|
56
|
+
this.statsClient?.incr('actions-personas-messaging-twilio.rate-limited', 1, this.tags);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
throw error;
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
this.getSendabilityPayload = () => {
|
|
63
|
+
const nonSendableStatuses = ['unsubscribed', 'did not subscribed', 'false'];
|
|
64
|
+
const sendableStatuses = ['subscribed', 'true'];
|
|
65
|
+
const externalId = this.getExternalId();
|
|
66
|
+
let status;
|
|
67
|
+
if (!this.payload.send) {
|
|
68
|
+
this.statsClient?.incr('actions-personas-messaging-twilio.send-disabled', 1, this.tags);
|
|
69
|
+
return { sendabilityStatus: SendabilityStatus.SendDisabled, phone: undefined };
|
|
70
|
+
}
|
|
71
|
+
if (!externalId?.subscriptionStatus || nonSendableStatuses.includes(externalId.subscriptionStatus)) {
|
|
72
|
+
this.statsClient?.incr('actions-personas-messaging-twilio.notsubscribed', 1, this.tags);
|
|
73
|
+
status = SendabilityStatus.DoNotSend;
|
|
74
|
+
}
|
|
75
|
+
else if (sendableStatuses.includes(externalId.subscriptionStatus)) {
|
|
76
|
+
this.statsClient?.incr('actions-personas-messaging-twilio.subscribed', 1, this.tags);
|
|
77
|
+
status = SendabilityStatus.ShouldSend;
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
this.statsClient?.incr('actions-personas-messaging-twilio.twilio-error', 1, this.tags);
|
|
81
|
+
throw new actions_core_1.IntegrationError(`Failed to recognize the subscriptionStatus in the payload: "${externalId.subscriptionStatus}".`, 'Invalid subscriptionStatus value', 400);
|
|
82
|
+
}
|
|
83
|
+
const phone = this.payload.toNumber || externalId?.id;
|
|
84
|
+
if (!phone) {
|
|
85
|
+
status = SendabilityStatus.NoSenderPhone;
|
|
86
|
+
}
|
|
87
|
+
return { sendabilityStatus: status, phone };
|
|
88
|
+
};
|
|
89
|
+
this.getWebhookUrlWithParams = (phone) => {
|
|
90
|
+
const webhookUrl = this.settings.webhookUrl;
|
|
91
|
+
const connectionOverrides = this.settings.connectionOverrides;
|
|
92
|
+
const customArgs = {
|
|
93
|
+
...this.payload.customArgs,
|
|
94
|
+
space_id: this.settings.spaceId,
|
|
95
|
+
__segment_internal_external_id_key__: this.EXTERNAL_ID_KEY,
|
|
96
|
+
__segment_internal_external_id_value__: phone
|
|
97
|
+
};
|
|
98
|
+
if (webhookUrl && customArgs) {
|
|
99
|
+
const webhookUrlWithParams = new URL(webhookUrl);
|
|
100
|
+
for (const key of Object.keys(customArgs)) {
|
|
101
|
+
webhookUrlWithParams.searchParams.append(key, String(customArgs[key]));
|
|
102
|
+
}
|
|
103
|
+
webhookUrlWithParams.hash = connectionOverrides || this.DEFAULT_CONNECTION_OVERRIDES;
|
|
104
|
+
return webhookUrlWithParams.toString();
|
|
105
|
+
}
|
|
106
|
+
return null;
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
exports.MessageSender = MessageSender;
|
|
111
|
+
//# sourceMappingURL=message-sender.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"message-sender.js","sourceRoot":"","sources":["../../../../src/destinations/engage-messaging-twilio/utils/message-sender.ts"],"names":[],"mappings":"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"}
|
|
@@ -161,15 +161,16 @@ exports.user_data_field = {
|
|
|
161
161
|
}
|
|
162
162
|
}
|
|
163
163
|
};
|
|
164
|
+
const isHashedInformation = (information) => new RegExp(/[0-9abcdef]{64}/gi).test(information);
|
|
164
165
|
const hash = (value) => {
|
|
165
166
|
if (value === undefined || !value.length)
|
|
166
167
|
return;
|
|
167
168
|
if (typeof value == 'string') {
|
|
169
|
+
if (isHashedInformation(value))
|
|
170
|
+
return value;
|
|
168
171
|
return hashValue(value);
|
|
169
172
|
}
|
|
170
|
-
|
|
171
|
-
return value.map((el) => hashValue(el));
|
|
172
|
-
}
|
|
173
|
+
return value.map((el) => (isHashedInformation(el) ? el : hashValue(el)));
|
|
173
174
|
};
|
|
174
175
|
const hashValue = (val) => {
|
|
175
176
|
const hash = crypto_1.createHash('sha256');
|
|
@@ -180,7 +181,7 @@ const normalize_user_data = (payload) => {
|
|
|
180
181
|
if (payload.user_data.email) {
|
|
181
182
|
payload.user_data.email = payload.user_data.email.replace(/\s/g, '').toLowerCase();
|
|
182
183
|
}
|
|
183
|
-
if (payload.user_data.phone) {
|
|
184
|
+
if (payload.user_data.phone && !isHashedInformation(payload.user_data.phone)) {
|
|
184
185
|
payload.user_data.phone = payload.user_data.phone.replace(/\D/g, '');
|
|
185
186
|
}
|
|
186
187
|
if (payload.user_data.gender) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fb-capi-user-data.js","sourceRoot":"","sources":["../../../src/destinations/facebook-conversions-api/fb-capi-user-data.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"fb-capi-user-data.js","sourceRoot":"","sources":["../../../src/destinations/facebook-conversions-api/fb-capi-user-data.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.flattenObject = void 0;
|
|
4
|
+
function flattenObject(obj) {
|
|
5
|
+
if (typeof obj === 'undefined' || obj === null)
|
|
6
|
+
return obj;
|
|
7
|
+
const flattened = {};
|
|
8
|
+
Object.keys(obj).forEach((key) => {
|
|
9
|
+
if (typeof obj[key] === 'undefined' || obj[key] == null || !Object.prototype.hasOwnProperty.call(obj, key)) {
|
|
10
|
+
return;
|
|
11
|
+
}
|
|
12
|
+
if (obj[key] instanceof Array) {
|
|
13
|
+
flattened[key] = obj[key]
|
|
14
|
+
.map((item) => (typeof item === 'object' ? JSON.stringify(item) : item))
|
|
15
|
+
.join(';');
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
if (typeof obj[key] === 'object') {
|
|
19
|
+
flattened[key] = JSON.stringify(obj[key]);
|
|
20
|
+
return;
|
|
21
|
+
}
|
|
22
|
+
flattened[key] = obj[key];
|
|
23
|
+
});
|
|
24
|
+
return flattened;
|
|
25
|
+
}
|
|
26
|
+
exports.flattenObject = flattenObject;
|
|
27
|
+
//# sourceMappingURL=helperFunctions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helperFunctions.js","sourceRoot":"","sources":["../../../src/destinations/hubspot/helperFunctions.ts"],"names":[],"mappings":";;;AAKA,SAAgB,aAAa,CAAC,GAAe;IAC3C,IAAI,OAAO,GAAG,KAAK,WAAW,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,GAAG,CAAA;IAE1D,MAAM,SAAS,GAAe,EAAE,CAAA;IAEhC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,GAAW,EAAE,EAAE;QAGvC,IAAI,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,WAAW,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE;YAC1G,OAAM;SACP;QAGD,IAAI,GAAG,CAAC,GAAG,CAAC,YAAY,KAAK,EAAE;YAC7B,SAAS,CAAC,GAAG,CAAC,GAAI,GAAG,CAAC,GAAG,CAAoB;iBAC1C,GAAG,CAAC,CAAC,IAAa,EAAE,EAAE,CAAC,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;iBAChF,IAAI,CAAC,GAAG,CAAC,CAAA;YACZ,OAAM;SACP;QAGD,IAAI,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE;YAChC,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;YACzC,OAAM;SACP;QAED,SAAS,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAA;IAC3B,CAAC,CAAC,CAAA;IAEF,OAAO,SAAS,CAAA;AAClB,CAAC;AA9BD,sCA8BC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export declare enum ApiRegions {
|
|
2
|
+
US = "US \uD83C\uDDFA\uD83C\uDDF8",
|
|
3
|
+
EU = "EU \uD83C\uDDEA\uD83C\uDDFA"
|
|
4
|
+
}
|
|
5
|
+
export declare enum StrictMode {
|
|
6
|
+
ON = "1",
|
|
7
|
+
OFF = "0"
|
|
8
|
+
}
|
|
9
|
+
export declare function getConcatenatedName(firstName: unknown, lastName: unknown, name: unknown): unknown;
|
|
10
|
+
export declare function getApiServerUrl(apiRegion: string | undefined): "https://api-eu.mixpanel.com" | "https://api.mixpanel.com";
|
|
11
|
+
export declare function getBrowser(userAgent: string): string;
|
|
12
|
+
export declare function getBrowserVersion(userAgent: string): string | undefined;
|
|
13
|
+
export declare function cheapGuid(maxlen?: number): string;
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.cheapGuid = exports.getBrowserVersion = exports.getBrowser = exports.getApiServerUrl = exports.getConcatenatedName = exports.StrictMode = exports.ApiRegions = void 0;
|
|
4
|
+
var ApiRegions;
|
|
5
|
+
(function (ApiRegions) {
|
|
6
|
+
ApiRegions["US"] = "US \uD83C\uDDFA\uD83C\uDDF8";
|
|
7
|
+
ApiRegions["EU"] = "EU \uD83C\uDDEA\uD83C\uDDFA";
|
|
8
|
+
})(ApiRegions = exports.ApiRegions || (exports.ApiRegions = {}));
|
|
9
|
+
var StrictMode;
|
|
10
|
+
(function (StrictMode) {
|
|
11
|
+
StrictMode["ON"] = "1";
|
|
12
|
+
StrictMode["OFF"] = "0";
|
|
13
|
+
})(StrictMode = exports.StrictMode || (exports.StrictMode = {}));
|
|
14
|
+
function getConcatenatedName(firstName, lastName, name) {
|
|
15
|
+
return name ?? (firstName && lastName ? `${firstName} ${lastName}` : undefined);
|
|
16
|
+
}
|
|
17
|
+
exports.getConcatenatedName = getConcatenatedName;
|
|
18
|
+
function getApiServerUrl(apiRegion) {
|
|
19
|
+
if (apiRegion == ApiRegions.EU) {
|
|
20
|
+
return 'https://api-eu.mixpanel.com';
|
|
21
|
+
}
|
|
22
|
+
return 'https://api.mixpanel.com';
|
|
23
|
+
}
|
|
24
|
+
exports.getApiServerUrl = getApiServerUrl;
|
|
25
|
+
function getBrowser(userAgent) {
|
|
26
|
+
if (userAgent.includes(' OPR/')) {
|
|
27
|
+
if (userAgent.includes('Mini')) {
|
|
28
|
+
return 'Opera Mini';
|
|
29
|
+
}
|
|
30
|
+
return 'Opera';
|
|
31
|
+
}
|
|
32
|
+
else if (/(BlackBerry|PlayBook|BB10)/i.test(userAgent)) {
|
|
33
|
+
return 'BlackBerry';
|
|
34
|
+
}
|
|
35
|
+
else if (userAgent.includes('IEMobile') || userAgent.includes('WPDesktop')) {
|
|
36
|
+
return 'Internet Explorer Mobile';
|
|
37
|
+
}
|
|
38
|
+
else if (userAgent.includes('SamsungBrowser/')) {
|
|
39
|
+
return 'Samsung Internet';
|
|
40
|
+
}
|
|
41
|
+
else if (userAgent.includes('Edge') || userAgent.includes('Edg/')) {
|
|
42
|
+
return 'Microsoft Edge';
|
|
43
|
+
}
|
|
44
|
+
else if (userAgent.includes('FBIOS')) {
|
|
45
|
+
return 'Facebook Mobile';
|
|
46
|
+
}
|
|
47
|
+
else if (userAgent.includes('Chrome')) {
|
|
48
|
+
return 'Chrome';
|
|
49
|
+
}
|
|
50
|
+
else if (userAgent.includes('CriOS')) {
|
|
51
|
+
return 'Chrome iOS';
|
|
52
|
+
}
|
|
53
|
+
else if (userAgent.includes('UCWEB') || userAgent.includes('UCBrowser')) {
|
|
54
|
+
return 'UC Browser';
|
|
55
|
+
}
|
|
56
|
+
else if (userAgent.includes('FxiOS')) {
|
|
57
|
+
return 'Firefox iOS';
|
|
58
|
+
}
|
|
59
|
+
else if (userAgent.includes('Safari')) {
|
|
60
|
+
return 'Safari';
|
|
61
|
+
}
|
|
62
|
+
else if (userAgent.includes('Android')) {
|
|
63
|
+
return 'Android Mobile';
|
|
64
|
+
}
|
|
65
|
+
else if (userAgent.includes('Konqueror')) {
|
|
66
|
+
return 'Konqueror';
|
|
67
|
+
}
|
|
68
|
+
else if (userAgent.includes('Firefox')) {
|
|
69
|
+
return 'Firefox';
|
|
70
|
+
}
|
|
71
|
+
else if (userAgent.includes('MSIE') || userAgent.includes('Trident/')) {
|
|
72
|
+
return 'Internet Explorer';
|
|
73
|
+
}
|
|
74
|
+
else if (userAgent.includes('Gecko')) {
|
|
75
|
+
return 'Mozilla';
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
return '';
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
exports.getBrowser = getBrowser;
|
|
82
|
+
function getBrowserVersion(userAgent) {
|
|
83
|
+
const browser = getBrowser(userAgent);
|
|
84
|
+
const versionRegexs = {
|
|
85
|
+
'Internet Explorer Mobile': /rv:(\d+(\.\d+)?)/,
|
|
86
|
+
'Microsoft Edge': /Edge?\/(\d+(\.\d+)?)/,
|
|
87
|
+
Chrome: /Chrome\/(\d+(\.\d+)?)/,
|
|
88
|
+
'Chrome iOS': /CriOS\/(\d+(\.\d+)?)/,
|
|
89
|
+
'UC Browser': /(UCBrowser|UCWEB)\/(\d+(\.\d+)?)/,
|
|
90
|
+
Safari: /Version\/(\d+(\.\d+)?)/,
|
|
91
|
+
'Mobile Safari': /Version\/(\d+(\.\d+)?)/,
|
|
92
|
+
Opera: /(Opera|OPR)\/(\d+(\.\d+)?)/,
|
|
93
|
+
Firefox: /Firefox\/(\d+(\.\d+)?)/,
|
|
94
|
+
'Firefox iOS': /FxiOS\/(\d+(\.\d+)?)/,
|
|
95
|
+
Konqueror: /Konqueror:(\d+(\.\d+)?)/,
|
|
96
|
+
BlackBerry: /BlackBerry (\d+(\.\d+)?)/,
|
|
97
|
+
'Android Mobile': /android\s(\d+(\.\d+)?)/,
|
|
98
|
+
'Samsung Internet': /SamsungBrowser\/(\d+(\.\d+)?)/,
|
|
99
|
+
'Internet Explorer': /(rv:|MSIE )(\d+(\.\d+)?)/,
|
|
100
|
+
Mozilla: /rv:(\d+(\.\d+)?)/
|
|
101
|
+
};
|
|
102
|
+
const regex = versionRegexs[browser];
|
|
103
|
+
if (!regex)
|
|
104
|
+
return regex;
|
|
105
|
+
const matches = regex.exec(userAgent);
|
|
106
|
+
if (!matches) {
|
|
107
|
+
return undefined;
|
|
108
|
+
}
|
|
109
|
+
return matches[matches.length - 2];
|
|
110
|
+
}
|
|
111
|
+
exports.getBrowserVersion = getBrowserVersion;
|
|
112
|
+
function cheapGuid(maxlen) {
|
|
113
|
+
const guid = Math.random().toString(36).substring(2, 10) + Math.random().toString(36).substring(2, 10);
|
|
114
|
+
return maxlen ? guid.substring(0, maxlen) : guid;
|
|
115
|
+
}
|
|
116
|
+
exports.cheapGuid = cheapGuid;
|
|
117
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/destinations/mixpanel/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { InputField } from '@segment/actions-core/destination-kit/types';
|
|
2
|
+
export declare const CURRENCY_ISO_4217_CODES: Set<string>;
|
|
3
|
+
export declare const products: InputField;
|
|
4
|
+
export declare const event_type: InputField;
|
|
5
|
+
export declare const event_conversion_type: InputField;
|
|
6
|
+
export declare const event_tag: InputField;
|
|
7
|
+
export declare const timestamp: InputField;
|
|
8
|
+
export declare const email: InputField;
|
|
9
|
+
export declare const mobile_ad_id: InputField;
|
|
10
|
+
export declare const uuid_c1: InputField;
|
|
11
|
+
export declare const idfv: InputField;
|
|
12
|
+
export declare const phone_number: InputField;
|
|
13
|
+
export declare const user_agent: InputField;
|
|
14
|
+
export declare const ip_address: InputField;
|
|
15
|
+
export declare const item_category: InputField;
|
|
16
|
+
export declare const brands: InputField;
|
|
17
|
+
export declare const item_ids: InputField;
|
|
18
|
+
export declare const description: InputField;
|
|
19
|
+
export declare const number_items: InputField;
|
|
20
|
+
export declare const price: InputField;
|
|
21
|
+
export declare const currency: InputField;
|
|
22
|
+
export declare const transaction_id: InputField;
|
|
23
|
+
export declare const level: InputField;
|
|
24
|
+
export declare const client_dedup_id: InputField;
|
|
25
|
+
export declare const search_string: InputField;
|
|
26
|
+
export declare const page_url: InputField;
|
|
27
|
+
export declare const sign_up_method: InputField;
|
|
28
|
+
export declare const device_model: InputField;
|
|
29
|
+
export declare const os_version: InputField;
|
|
30
|
+
export declare const click_id: InputField;
|