@segment/action-destinations 3.116.0-alpha.4 → 3.116.0

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 (84) hide show
  1. package/dist/destinations/actions-pardot/generated-types.d.ts +1 -1
  2. package/dist/destinations/actions-pardot/index.js +1 -2
  3. package/dist/destinations/actions-pardot/index.js.map +1 -1
  4. package/dist/destinations/adobe-target/adobeTarget_operations.js +1 -1
  5. package/dist/destinations/adobe-target/adobeTarget_operations.js.map +1 -1
  6. package/dist/destinations/adobe-target/updateProfile/index.js +10 -2
  7. package/dist/destinations/adobe-target/updateProfile/index.js.map +1 -1
  8. package/dist/destinations/amplitude/event-schema.js +1 -5
  9. package/dist/destinations/amplitude/event-schema.js.map +1 -1
  10. package/dist/destinations/amplitude/identifyUser/index.js +1 -5
  11. package/dist/destinations/amplitude/identifyUser/index.js.map +1 -1
  12. package/dist/destinations/fullstory/vars.js +22 -13
  13. package/dist/destinations/fullstory/vars.js.map +1 -1
  14. package/dist/destinations/google-enhanced-conversions/uploadConversionAdjustment/index.js +3 -3
  15. package/dist/destinations/google-enhanced-conversions/uploadConversionAdjustment/index.js.map +1 -1
  16. package/dist/destinations/index.js +1 -0
  17. package/dist/destinations/index.js.map +1 -1
  18. package/dist/destinations/salesforce-marketing-cloud/contactDataExtension/index.js +1 -1
  19. package/dist/destinations/salesforce-marketing-cloud/contactDataExtension/index.js.map +1 -1
  20. package/dist/destinations/salesforce-marketing-cloud/sfmc-properties.js +3 -3
  21. package/dist/destinations/salesforce-marketing-cloud/sfmc-properties.js.map +1 -1
  22. package/dist/destinations/segment/errors.d.ts +3 -0
  23. package/dist/destinations/segment/errors.js +7 -0
  24. package/dist/destinations/segment/errors.js.map +1 -0
  25. package/dist/destinations/segment/generated-types.d.ts +4 -0
  26. package/dist/destinations/{1plusx-asset-api → segment}/generated-types.js +0 -0
  27. package/dist/destinations/segment/generated-types.js.map +1 -0
  28. package/dist/destinations/{1plusx-asset-api → segment}/index.d.ts +0 -0
  29. package/dist/destinations/segment/index.js +58 -0
  30. package/dist/destinations/segment/index.js.map +1 -0
  31. package/dist/destinations/segment/properties.d.ts +10 -0
  32. package/dist/destinations/segment/properties.js +17 -0
  33. package/dist/destinations/segment/properties.js.map +1 -0
  34. package/dist/destinations/segment/segment-properties.d.ts +23 -0
  35. package/dist/destinations/segment/segment-properties.js +322 -0
  36. package/dist/destinations/segment/segment-properties.js.map +1 -0
  37. package/dist/destinations/segment/sendGroup/generated-types.d.ts +65 -0
  38. package/dist/destinations/{1plusx-asset-api/sendAssetData → segment/sendGroup}/generated-types.js +0 -0
  39. package/dist/destinations/segment/sendGroup/generated-types.js.map +1 -0
  40. package/dist/destinations/{1plusx-asset-api/sendAssetData → segment/sendGroup}/index.d.ts +1 -1
  41. package/dist/destinations/segment/sendGroup/index.js +67 -0
  42. package/dist/destinations/segment/sendGroup/index.js.map +1 -0
  43. package/dist/destinations/segment/sendIdentify/generated-types.d.ts +65 -0
  44. package/dist/destinations/segment/sendIdentify/generated-types.js +3 -0
  45. package/dist/destinations/segment/sendIdentify/generated-types.js.map +1 -0
  46. package/dist/destinations/segment/sendIdentify/index.d.ts +5 -0
  47. package/dist/destinations/segment/sendIdentify/index.js +67 -0
  48. package/dist/destinations/segment/sendIdentify/index.js.map +1 -0
  49. package/dist/destinations/segment/sendPage/generated-types.d.ts +67 -0
  50. package/dist/destinations/segment/sendPage/generated-types.js +3 -0
  51. package/dist/destinations/segment/sendPage/generated-types.js.map +1 -0
  52. package/dist/destinations/segment/sendPage/index.d.ts +5 -0
  53. package/dist/destinations/segment/sendPage/index.js +77 -0
  54. package/dist/destinations/segment/sendPage/index.js.map +1 -0
  55. package/dist/destinations/segment/sendScreen/generated-types.d.ts +66 -0
  56. package/dist/destinations/segment/sendScreen/generated-types.js +3 -0
  57. package/dist/destinations/segment/sendScreen/generated-types.js.map +1 -0
  58. package/dist/destinations/segment/sendScreen/index.d.ts +5 -0
  59. package/dist/destinations/segment/sendScreen/index.js +69 -0
  60. package/dist/destinations/segment/sendScreen/index.js.map +1 -0
  61. package/dist/destinations/segment/sendTrack/generated-types.d.ts +66 -0
  62. package/dist/destinations/segment/sendTrack/generated-types.js +3 -0
  63. package/dist/destinations/segment/sendTrack/generated-types.js.map +1 -0
  64. package/dist/destinations/segment/sendTrack/index.d.ts +5 -0
  65. package/dist/destinations/segment/sendTrack/index.js +69 -0
  66. package/dist/destinations/segment/sendTrack/index.js.map +1 -0
  67. package/dist/destinations/sendgrid/sendgrid-properties.d.ts +1 -0
  68. package/dist/destinations/sendgrid/sendgrid-properties.js +23 -2
  69. package/dist/destinations/sendgrid/sendgrid-properties.js.map +1 -1
  70. package/dist/destinations/snap-conversions-api/_tests_/index.test.js +123 -0
  71. package/dist/destinations/snap-conversions-api/_tests_/index.test.js.map +1 -1
  72. package/dist/destinations/snap-conversions-api/reportConversionEvent/index.js +8 -2
  73. package/dist/destinations/snap-conversions-api/reportConversionEvent/index.js.map +1 -1
  74. package/dist/destinations/snap-conversions-api/snap-capi-properties.js +5 -5
  75. package/dist/destinations/snap-conversions-api/snap-capi-properties.js.map +1 -1
  76. package/package.json +4 -4
  77. package/dist/destinations/1plusx-asset-api/generated-types.d.ts +0 -5
  78. package/dist/destinations/1plusx-asset-api/generated-types.js.map +0 -1
  79. package/dist/destinations/1plusx-asset-api/index.js +0 -61
  80. package/dist/destinations/1plusx-asset-api/index.js.map +0 -1
  81. package/dist/destinations/1plusx-asset-api/sendAssetData/generated-types.d.ts +0 -8
  82. package/dist/destinations/1plusx-asset-api/sendAssetData/generated-types.js.map +0 -1
  83. package/dist/destinations/1plusx-asset-api/sendAssetData/index.js +0 -67
  84. package/dist/destinations/1plusx-asset-api/sendAssetData/index.js.map +0 -1
@@ -0,0 +1,67 @@
1
+ export interface Payload {
2
+ user_id?: string;
3
+ anonymous_id?: string;
4
+ timestamp?: string;
5
+ page_name?: string;
6
+ page_category?: string;
7
+ application?: {
8
+ name?: string;
9
+ version?: string;
10
+ build?: string;
11
+ namespace?: string;
12
+ };
13
+ campaign_parameters?: {
14
+ name?: string;
15
+ source?: string;
16
+ medium?: string;
17
+ term?: string;
18
+ content?: string;
19
+ };
20
+ device?: {
21
+ id?: string;
22
+ advertising_id?: string;
23
+ adTracking_Enabled?: boolean;
24
+ manufacturer?: string;
25
+ model?: string;
26
+ name?: string;
27
+ type?: string;
28
+ token?: string;
29
+ };
30
+ ip_address?: string;
31
+ locale?: string;
32
+ location?: {
33
+ city?: string;
34
+ country?: string;
35
+ latitude?: number;
36
+ longitude?: number;
37
+ speed?: number;
38
+ };
39
+ network?: {
40
+ bluetooth?: boolean;
41
+ carrier?: string;
42
+ cellular?: boolean;
43
+ wifi?: boolean;
44
+ };
45
+ operating_system?: {
46
+ name?: string;
47
+ version?: string;
48
+ };
49
+ page?: {
50
+ path?: string;
51
+ referrer?: string;
52
+ search?: string;
53
+ title?: string;
54
+ url?: string;
55
+ };
56
+ screen?: {
57
+ density?: number;
58
+ height?: number;
59
+ width?: number;
60
+ };
61
+ user_agent?: string;
62
+ timezone?: string;
63
+ group_id?: string;
64
+ properties?: {
65
+ [k: string]: unknown;
66
+ };
67
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=generated-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generated-types.js","sourceRoot":"","sources":["../../../../src/destinations/segment/sendPage/generated-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ import { ActionDefinition } from '@segment/actions-core';
2
+ import type { Settings } from '../generated-types';
3
+ import type { Payload } from './generated-types';
4
+ declare const action: ActionDefinition<Settings, Payload>;
5
+ export default action;
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const segment_properties_1 = require("../segment-properties");
4
+ const properties_1 = require("../properties");
5
+ const errors_1 = require("../errors");
6
+ const action = {
7
+ title: 'Send Page',
8
+ description: 'Send a page call to Segment’s tracking API. This is used to track website page views.',
9
+ defaultSubscription: 'type = "page"',
10
+ fields: {
11
+ user_id: segment_properties_1.user_id,
12
+ anonymous_id: segment_properties_1.anonymous_id,
13
+ timestamp: segment_properties_1.timestamp,
14
+ page_name: segment_properties_1.page_name,
15
+ page_category: segment_properties_1.page_category,
16
+ application: segment_properties_1.application,
17
+ campaign_parameters: segment_properties_1.campaign_parameters,
18
+ device: segment_properties_1.device,
19
+ ip_address: segment_properties_1.ip_address,
20
+ locale: segment_properties_1.locale,
21
+ location: segment_properties_1.location,
22
+ network: segment_properties_1.network,
23
+ operating_system: segment_properties_1.operating_system,
24
+ page: segment_properties_1.page,
25
+ screen: segment_properties_1.screen,
26
+ user_agent: segment_properties_1.user_agent,
27
+ timezone: segment_properties_1.timezone,
28
+ group_id: segment_properties_1.group_id,
29
+ properties: segment_properties_1.properties
30
+ },
31
+ perform: (request, { payload, settings }) => {
32
+ if (!payload.anonymous_id && !payload.user_id) {
33
+ throw errors_1.MissingUserOrAnonymousIdThrowableError;
34
+ }
35
+ const pagePayload = {
36
+ userId: payload?.user_id,
37
+ anonymousId: payload?.anonymous_id,
38
+ timestamp: payload?.timestamp,
39
+ name: payload?.page_name,
40
+ context: {
41
+ app: payload?.application,
42
+ campaign: payload?.campaign_parameters,
43
+ device: payload?.device,
44
+ ip: payload?.ip_address,
45
+ locale: payload?.locale,
46
+ location: payload?.location,
47
+ network: payload?.network,
48
+ os: payload?.operating_system,
49
+ page: payload?.page,
50
+ screen: payload?.screen,
51
+ userAgent: payload?.user_agent,
52
+ timezone: payload?.timezone,
53
+ groupId: payload?.group_id
54
+ },
55
+ properties: {
56
+ name: payload?.page_name,
57
+ category: payload?.page_category,
58
+ path: payload?.page?.path,
59
+ referrer: payload?.page?.referrer,
60
+ search: payload?.page?.search,
61
+ title: payload?.page?.title,
62
+ url: payload?.page?.url,
63
+ ...payload?.properties
64
+ }
65
+ };
66
+ if (!settings.endpoint || !(settings.endpoint in properties_1.SEGMENT_ENDPOINTS)) {
67
+ throw errors_1.InvalidEndpointSelectedThrowableError;
68
+ }
69
+ const selectedSegmentEndpoint = properties_1.SEGMENT_ENDPOINTS[settings.endpoint].url;
70
+ return request(`${selectedSegmentEndpoint}/page`, {
71
+ method: 'POST',
72
+ json: pagePayload
73
+ });
74
+ }
75
+ };
76
+ exports.default = action;
77
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/segment/sendPage/index.ts"],"names":[],"mappings":";;AAGA,8DAoB8B;AAC9B,8CAAiD;AACjD,sCAAyG;AAEzG,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,WAAW;IAClB,WAAW,EAAE,uFAAuF;IACpG,mBAAmB,EAAE,eAAe;IACpC,MAAM,EAAE;QACN,OAAO,EAAP,4BAAO;QACP,YAAY,EAAZ,iCAAY;QACZ,SAAS,EAAT,8BAAS;QACT,SAAS,EAAT,8BAAS;QACT,aAAa,EAAb,kCAAa;QACb,WAAW,EAAX,gCAAW;QACX,mBAAmB,EAAnB,wCAAmB;QACnB,MAAM,EAAN,2BAAM;QACN,UAAU,EAAV,+BAAU;QACV,MAAM,EAAN,2BAAM;QACN,QAAQ,EAAR,6BAAQ;QACR,OAAO,EAAP,4BAAO;QACP,gBAAgB,EAAhB,qCAAgB;QAChB,IAAI,EAAJ,yBAAI;QACJ,MAAM,EAAN,2BAAM;QACN,UAAU,EAAV,+BAAU;QACV,QAAQ,EAAR,6BAAQ;QACR,QAAQ,EAAR,6BAAQ;QACR,UAAU,EAAV,+BAAU;KACX;IACD,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC1C,IAAI,CAAC,OAAO,CAAC,YAAY,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;YAC7C,MAAM,+CAAsC,CAAA;SAC7C;QAED,MAAM,WAAW,GAAW;YAC1B,MAAM,EAAE,OAAO,EAAE,OAAO;YACxB,WAAW,EAAE,OAAO,EAAE,YAAY;YAClC,SAAS,EAAE,OAAO,EAAE,SAAS;YAC7B,IAAI,EAAE,OAAO,EAAE,SAAS;YACxB,OAAO,EAAE;gBACP,GAAG,EAAE,OAAO,EAAE,WAAW;gBACzB,QAAQ,EAAE,OAAO,EAAE,mBAAmB;gBACtC,MAAM,EAAE,OAAO,EAAE,MAAM;gBACvB,EAAE,EAAE,OAAO,EAAE,UAAU;gBACvB,MAAM,EAAE,OAAO,EAAE,MAAM;gBACvB,QAAQ,EAAE,OAAO,EAAE,QAAQ;gBAC3B,OAAO,EAAE,OAAO,EAAE,OAAO;gBACzB,EAAE,EAAE,OAAO,EAAE,gBAAgB;gBAC7B,IAAI,EAAE,OAAO,EAAE,IAAI;gBACnB,MAAM,EAAE,OAAO,EAAE,MAAM;gBACvB,SAAS,EAAE,OAAO,EAAE,UAAU;gBAC9B,QAAQ,EAAE,OAAO,EAAE,QAAQ;gBAC3B,OAAO,EAAE,OAAO,EAAE,QAAQ;aAC3B;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,OAAO,EAAE,SAAS;gBACxB,QAAQ,EAAE,OAAO,EAAE,aAAa;gBAChC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI;gBACzB,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ;gBACjC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM;gBAC7B,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK;gBAC3B,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG;gBACvB,GAAG,OAAO,EAAE,UAAU;aACvB;SACF,CAAA;QAGD,IAAI,CAAC,QAAQ,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,IAAI,8BAAiB,CAAC,EAAE;YACnE,MAAM,8CAAqC,CAAA;SAC5C;QAED,MAAM,uBAAuB,GAAG,8BAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAA;QACxE,OAAO,OAAO,CAAC,GAAG,uBAAuB,OAAO,EAAE;YAChD,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,WAAW;SAClB,CAAC,CAAA;IACJ,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
@@ -0,0 +1,66 @@
1
+ export interface Payload {
2
+ user_id?: string;
3
+ anonymous_id?: string;
4
+ timestamp?: string;
5
+ screen_name?: string;
6
+ application?: {
7
+ name?: string;
8
+ version?: string;
9
+ build?: string;
10
+ namespace?: string;
11
+ };
12
+ campaign_parameters?: {
13
+ name?: string;
14
+ source?: string;
15
+ medium?: string;
16
+ term?: string;
17
+ content?: string;
18
+ };
19
+ device?: {
20
+ id?: string;
21
+ advertising_id?: string;
22
+ adTracking_Enabled?: boolean;
23
+ manufacturer?: string;
24
+ model?: string;
25
+ name?: string;
26
+ type?: string;
27
+ token?: string;
28
+ };
29
+ ip_address?: string;
30
+ locale?: string;
31
+ location?: {
32
+ city?: string;
33
+ country?: string;
34
+ latitude?: number;
35
+ longitude?: number;
36
+ speed?: number;
37
+ };
38
+ network?: {
39
+ bluetooth?: boolean;
40
+ carrier?: string;
41
+ cellular?: boolean;
42
+ wifi?: boolean;
43
+ };
44
+ operating_system?: {
45
+ name?: string;
46
+ version?: string;
47
+ };
48
+ page?: {
49
+ path?: string;
50
+ referrer?: string;
51
+ search?: string;
52
+ title?: string;
53
+ url?: string;
54
+ };
55
+ screen?: {
56
+ density?: number;
57
+ height?: number;
58
+ width?: number;
59
+ };
60
+ user_agent?: string;
61
+ timezone?: string;
62
+ group_id?: string;
63
+ properties?: {
64
+ [k: string]: unknown;
65
+ };
66
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=generated-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generated-types.js","sourceRoot":"","sources":["../../../../src/destinations/segment/sendScreen/generated-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ import { ActionDefinition } from '@segment/actions-core';
2
+ import type { Settings } from '../generated-types';
3
+ import type { Payload } from './generated-types';
4
+ declare const action: ActionDefinition<Settings, Payload>;
5
+ export default action;
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const segment_properties_1 = require("../segment-properties");
4
+ const properties_1 = require("../properties");
5
+ const errors_1 = require("../errors");
6
+ const action = {
7
+ title: 'Send Screen',
8
+ description: 'Send a screen call to Segment’s tracking API. This is used to track mobile app screen views.',
9
+ defaultSubscription: 'type = "screen"',
10
+ fields: {
11
+ user_id: segment_properties_1.user_id,
12
+ anonymous_id: segment_properties_1.anonymous_id,
13
+ timestamp: segment_properties_1.timestamp,
14
+ screen_name: segment_properties_1.screen_name,
15
+ application: segment_properties_1.application,
16
+ campaign_parameters: segment_properties_1.campaign_parameters,
17
+ device: segment_properties_1.device,
18
+ ip_address: segment_properties_1.ip_address,
19
+ locale: segment_properties_1.locale,
20
+ location: segment_properties_1.location,
21
+ network: segment_properties_1.network,
22
+ operating_system: segment_properties_1.operating_system,
23
+ page: segment_properties_1.page,
24
+ screen: segment_properties_1.screen,
25
+ user_agent: segment_properties_1.user_agent,
26
+ timezone: segment_properties_1.timezone,
27
+ group_id: segment_properties_1.group_id,
28
+ properties: segment_properties_1.properties
29
+ },
30
+ perform: (request, { payload, settings }) => {
31
+ if (!payload.anonymous_id && !payload.user_id) {
32
+ throw errors_1.MissingUserOrAnonymousIdThrowableError;
33
+ }
34
+ const screenPayload = {
35
+ userId: payload?.user_id,
36
+ anonymousId: payload?.anonymous_id,
37
+ timestamp: payload?.timestamp,
38
+ name: payload?.screen_name,
39
+ context: {
40
+ app: payload?.application,
41
+ campaign: payload?.campaign_parameters,
42
+ device: payload?.device,
43
+ ip: payload?.ip_address,
44
+ locale: payload?.locale,
45
+ location: payload?.location,
46
+ network: payload?.network,
47
+ os: payload?.operating_system,
48
+ page: payload?.page,
49
+ screen: payload?.screen,
50
+ userAgent: payload?.user_agent,
51
+ groupId: payload?.group_id
52
+ },
53
+ properties: {
54
+ name: payload?.screen_name,
55
+ ...payload?.properties
56
+ }
57
+ };
58
+ if (!settings.endpoint || !(settings.endpoint in properties_1.SEGMENT_ENDPOINTS)) {
59
+ throw errors_1.InvalidEndpointSelectedThrowableError;
60
+ }
61
+ const selectedSegmentEndpoint = properties_1.SEGMENT_ENDPOINTS[settings.endpoint].url;
62
+ return request(`${selectedSegmentEndpoint}/screen`, {
63
+ method: 'POST',
64
+ json: screenPayload
65
+ });
66
+ }
67
+ };
68
+ exports.default = action;
69
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/segment/sendScreen/index.ts"],"names":[],"mappings":";;AAGA,8DAmB8B;AAC9B,8CAAiD;AACjD,sCAAyG;AAEzG,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,aAAa;IACpB,WAAW,EAAE,8FAA8F;IAC3G,mBAAmB,EAAE,iBAAiB;IACtC,MAAM,EAAE;QACN,OAAO,EAAP,4BAAO;QACP,YAAY,EAAZ,iCAAY;QACZ,SAAS,EAAT,8BAAS;QACT,WAAW,EAAX,gCAAW;QACX,WAAW,EAAX,gCAAW;QACX,mBAAmB,EAAnB,wCAAmB;QACnB,MAAM,EAAN,2BAAM;QACN,UAAU,EAAV,+BAAU;QACV,MAAM,EAAN,2BAAM;QACN,QAAQ,EAAR,6BAAQ;QACR,OAAO,EAAP,4BAAO;QACP,gBAAgB,EAAhB,qCAAgB;QAChB,IAAI,EAAJ,yBAAI;QACJ,MAAM,EAAN,2BAAM;QACN,UAAU,EAAV,+BAAU;QACV,QAAQ,EAAR,6BAAQ;QACR,QAAQ,EAAR,6BAAQ;QACR,UAAU,EAAV,+BAAU;KACX;IACD,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC1C,IAAI,CAAC,OAAO,CAAC,YAAY,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;YAC7C,MAAM,+CAAsC,CAAA;SAC7C;QAED,MAAM,aAAa,GAAW;YAC5B,MAAM,EAAE,OAAO,EAAE,OAAO;YACxB,WAAW,EAAE,OAAO,EAAE,YAAY;YAClC,SAAS,EAAE,OAAO,EAAE,SAAS;YAC7B,IAAI,EAAE,OAAO,EAAE,WAAW;YAC1B,OAAO,EAAE;gBACP,GAAG,EAAE,OAAO,EAAE,WAAW;gBACzB,QAAQ,EAAE,OAAO,EAAE,mBAAmB;gBACtC,MAAM,EAAE,OAAO,EAAE,MAAM;gBACvB,EAAE,EAAE,OAAO,EAAE,UAAU;gBACvB,MAAM,EAAE,OAAO,EAAE,MAAM;gBACvB,QAAQ,EAAE,OAAO,EAAE,QAAQ;gBAC3B,OAAO,EAAE,OAAO,EAAE,OAAO;gBACzB,EAAE,EAAE,OAAO,EAAE,gBAAgB;gBAC7B,IAAI,EAAE,OAAO,EAAE,IAAI;gBACnB,MAAM,EAAE,OAAO,EAAE,MAAM;gBACvB,SAAS,EAAE,OAAO,EAAE,UAAU;gBAC9B,OAAO,EAAE,OAAO,EAAE,QAAQ;aAC3B;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,OAAO,EAAE,WAAW;gBAC1B,GAAG,OAAO,EAAE,UAAU;aACvB;SACF,CAAA;QAGD,IAAI,CAAC,QAAQ,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,IAAI,8BAAiB,CAAC,EAAE;YACnE,MAAM,8CAAqC,CAAA;SAC5C;QAED,MAAM,uBAAuB,GAAG,8BAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAA;QAExE,OAAO,OAAO,CAAC,GAAG,uBAAuB,SAAS,EAAE;YAClD,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,aAAa;SACpB,CAAC,CAAA;IACJ,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
@@ -0,0 +1,66 @@
1
+ export interface Payload {
2
+ user_id?: string;
3
+ anonymous_id?: string;
4
+ timestamp?: string;
5
+ event_name?: string;
6
+ application?: {
7
+ name?: string;
8
+ version?: string;
9
+ build?: string;
10
+ namespace?: string;
11
+ };
12
+ campaign_parameters?: {
13
+ name?: string;
14
+ source?: string;
15
+ medium?: string;
16
+ term?: string;
17
+ content?: string;
18
+ };
19
+ device?: {
20
+ id?: string;
21
+ advertising_id?: string;
22
+ adTracking_Enabled?: boolean;
23
+ manufacturer?: string;
24
+ model?: string;
25
+ name?: string;
26
+ type?: string;
27
+ token?: string;
28
+ };
29
+ ip_address?: string;
30
+ locale?: string;
31
+ location?: {
32
+ city?: string;
33
+ country?: string;
34
+ latitude?: number;
35
+ longitude?: number;
36
+ speed?: number;
37
+ };
38
+ network?: {
39
+ bluetooth?: boolean;
40
+ carrier?: string;
41
+ cellular?: boolean;
42
+ wifi?: boolean;
43
+ };
44
+ operating_system?: {
45
+ name?: string;
46
+ version?: string;
47
+ };
48
+ page?: {
49
+ path?: string;
50
+ referrer?: string;
51
+ search?: string;
52
+ title?: string;
53
+ url?: string;
54
+ };
55
+ screen?: {
56
+ density?: number;
57
+ height?: number;
58
+ width?: number;
59
+ };
60
+ user_agent?: string;
61
+ timezone?: string;
62
+ group_id?: string;
63
+ properties?: {
64
+ [k: string]: unknown;
65
+ };
66
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=generated-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generated-types.js","sourceRoot":"","sources":["../../../../src/destinations/segment/sendTrack/generated-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ import { ActionDefinition } from '@segment/actions-core';
2
+ import type { Settings } from '../generated-types';
3
+ import type { Payload } from './generated-types';
4
+ declare const action: ActionDefinition<Settings, Payload>;
5
+ export default action;
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const segment_properties_1 = require("../segment-properties");
4
+ const properties_1 = require("../properties");
5
+ const errors_1 = require("../errors");
6
+ const action = {
7
+ title: 'Send Track',
8
+ description: 'Send a track call to Segment’s tracking API. This is used to record actions your users perform.',
9
+ defaultSubscription: 'type = "track"',
10
+ fields: {
11
+ user_id: segment_properties_1.user_id,
12
+ anonymous_id: segment_properties_1.anonymous_id,
13
+ timestamp: segment_properties_1.timestamp,
14
+ event_name: segment_properties_1.event_name,
15
+ application: segment_properties_1.application,
16
+ campaign_parameters: segment_properties_1.campaign_parameters,
17
+ device: segment_properties_1.device,
18
+ ip_address: segment_properties_1.ip_address,
19
+ locale: segment_properties_1.locale,
20
+ location: segment_properties_1.location,
21
+ network: segment_properties_1.network,
22
+ operating_system: segment_properties_1.operating_system,
23
+ page: segment_properties_1.page,
24
+ screen: segment_properties_1.screen,
25
+ user_agent: segment_properties_1.user_agent,
26
+ timezone: segment_properties_1.timezone,
27
+ group_id: segment_properties_1.group_id,
28
+ properties: segment_properties_1.properties
29
+ },
30
+ perform: (request, { payload, settings }) => {
31
+ if (!payload.anonymous_id && !payload.user_id) {
32
+ throw errors_1.MissingUserOrAnonymousIdThrowableError;
33
+ }
34
+ const trackPayload = {
35
+ userId: payload?.user_id,
36
+ anonymousId: payload?.anonymous_id,
37
+ timestamp: payload?.timestamp,
38
+ event: payload?.event_name,
39
+ context: {
40
+ app: payload?.application,
41
+ campaign: payload?.campaign_parameters,
42
+ device: payload?.device,
43
+ ip: payload?.ip_address,
44
+ locale: payload?.locale,
45
+ location: payload?.location,
46
+ network: payload?.network,
47
+ os: payload?.operating_system,
48
+ page: payload?.page,
49
+ screen: payload?.screen,
50
+ userAgent: payload?.user_agent,
51
+ timezone: payload?.timezone,
52
+ groupId: payload?.group_id
53
+ },
54
+ properties: {
55
+ ...payload?.properties
56
+ }
57
+ };
58
+ if (!settings.endpoint || !(settings.endpoint in properties_1.SEGMENT_ENDPOINTS)) {
59
+ throw errors_1.InvalidEndpointSelectedThrowableError;
60
+ }
61
+ const selectedSegmentEndpoint = properties_1.SEGMENT_ENDPOINTS[settings.endpoint].url;
62
+ return request(`${selectedSegmentEndpoint}/track`, {
63
+ method: 'POST',
64
+ json: trackPayload
65
+ });
66
+ }
67
+ };
68
+ exports.default = action;
69
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/segment/sendTrack/index.ts"],"names":[],"mappings":";;AAGA,8DAmB8B;AAC9B,8CAAiD;AACjD,sCAAyG;AAEzG,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,YAAY;IACnB,WAAW,EAAE,iGAAiG;IAC9G,mBAAmB,EAAE,gBAAgB;IACrC,MAAM,EAAE;QACN,OAAO,EAAP,4BAAO;QACP,YAAY,EAAZ,iCAAY;QACZ,SAAS,EAAT,8BAAS;QACT,UAAU,EAAV,+BAAU;QACV,WAAW,EAAX,gCAAW;QACX,mBAAmB,EAAnB,wCAAmB;QACnB,MAAM,EAAN,2BAAM;QACN,UAAU,EAAV,+BAAU;QACV,MAAM,EAAN,2BAAM;QACN,QAAQ,EAAR,6BAAQ;QACR,OAAO,EAAP,4BAAO;QACP,gBAAgB,EAAhB,qCAAgB;QAChB,IAAI,EAAJ,yBAAI;QACJ,MAAM,EAAN,2BAAM;QACN,UAAU,EAAV,+BAAU;QACV,QAAQ,EAAR,6BAAQ;QACR,QAAQ,EAAR,6BAAQ;QACR,UAAU,EAAV,+BAAU;KACX;IACD,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC1C,IAAI,CAAC,OAAO,CAAC,YAAY,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;YAC7C,MAAM,+CAAsC,CAAA;SAC7C;QAED,MAAM,YAAY,GAAW;YAC3B,MAAM,EAAE,OAAO,EAAE,OAAO;YACxB,WAAW,EAAE,OAAO,EAAE,YAAY;YAClC,SAAS,EAAE,OAAO,EAAE,SAAS;YAC7B,KAAK,EAAE,OAAO,EAAE,UAAU;YAC1B,OAAO,EAAE;gBACP,GAAG,EAAE,OAAO,EAAE,WAAW;gBACzB,QAAQ,EAAE,OAAO,EAAE,mBAAmB;gBACtC,MAAM,EAAE,OAAO,EAAE,MAAM;gBACvB,EAAE,EAAE,OAAO,EAAE,UAAU;gBACvB,MAAM,EAAE,OAAO,EAAE,MAAM;gBACvB,QAAQ,EAAE,OAAO,EAAE,QAAQ;gBAC3B,OAAO,EAAE,OAAO,EAAE,OAAO;gBACzB,EAAE,EAAE,OAAO,EAAE,gBAAgB;gBAC7B,IAAI,EAAE,OAAO,EAAE,IAAI;gBACnB,MAAM,EAAE,OAAO,EAAE,MAAM;gBACvB,SAAS,EAAE,OAAO,EAAE,UAAU;gBAC9B,QAAQ,EAAE,OAAO,EAAE,QAAQ;gBAC3B,OAAO,EAAE,OAAO,EAAE,QAAQ;aAC3B;YACD,UAAU,EAAE;gBACV,GAAG,OAAO,EAAE,UAAU;aACvB;SACF,CAAA;QAGD,IAAI,CAAC,QAAQ,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,IAAI,8BAAiB,CAAC,EAAE;YACnE,MAAM,8CAAqC,CAAA;SAC5C;QAED,MAAM,uBAAuB,GAAG,8BAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAA;QACxE,OAAO,OAAO,CAAC,GAAG,uBAAuB,QAAQ,EAAE;YACjD,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,YAAY;SACnB,CAAC,CAAA;IACJ,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
@@ -6,6 +6,7 @@ export interface CustomField {
6
6
  name: string;
7
7
  }
8
8
  export declare const fetchAccountCustomFields: (request: RequestClient) => Promise<CustomField[]>;
9
+ export declare const tranformValueToAcceptedDataType: (value: any) => any;
9
10
  export declare const convertPayload: (payload: Payload, accountCustomFields: CustomField[]) => {
10
11
  state_province_region: string | null | undefined;
11
12
  email: string;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.convertPayload = exports.fetchAccountCustomFields = exports.customFields = void 0;
3
+ exports.convertPayload = exports.tranformValueToAcceptedDataType = exports.fetchAccountCustomFields = exports.customFields = void 0;
4
4
  const actions_core_1 = require("@segment/actions-core");
5
5
  exports.customFields = {
6
6
  label: 'Other Fields',
@@ -47,12 +47,33 @@ const convertCustomFieldNamesToIds = (customFields, accountCustomFields) => {
47
47
  return result;
48
48
  }, {});
49
49
  };
50
+ const tranformValueToAcceptedDataType = (value) => {
51
+ if (typeof value === 'boolean' || typeof value === 'object') {
52
+ return JSON.stringify(value);
53
+ }
54
+ else {
55
+ return value;
56
+ }
57
+ };
58
+ exports.tranformValueToAcceptedDataType = tranformValueToAcceptedDataType;
59
+ const transformValuesToAcceptedDataTypes = (data) => {
60
+ const tranformedData = {};
61
+ for (const property in data) {
62
+ tranformedData[property] = exports.tranformValueToAcceptedDataType(data[property]);
63
+ }
64
+ return tranformedData;
65
+ };
50
66
  const convertPayload = (payload, accountCustomFields) => {
51
67
  const { state, primary_email, enable_batching, customFields, ...rest } = payload;
52
68
  const updatedCustomFields = customFields
53
69
  ? convertCustomFieldNamesToIds(customFields, accountCustomFields)
54
70
  : customFields;
55
- return { ...rest, state_province_region: state, email: primary_email, custom_fields: updatedCustomFields };
71
+ return {
72
+ ...rest,
73
+ state_province_region: state,
74
+ email: primary_email,
75
+ custom_fields: transformValuesToAcceptedDataTypes(updatedCustomFields)
76
+ };
56
77
  };
57
78
  exports.convertPayload = convertPayload;
58
79
  //# sourceMappingURL=sendgrid-properties.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sendgrid-properties.js","sourceRoot":"","sources":["../../../src/destinations/sendgrid/sendgrid-properties.ts"],"names":[],"mappings":";;;AAAA,wDAAmF;AAGtE,QAAA,YAAY,GAAe;IACtC,KAAK,EAAE,cAAc;IACrB,WAAW,EAAE;;;;;;;;GAQZ;IACD,IAAI,EAAE,QAAQ;IACd,eAAe,EAAE,UAAU;CAC5B,CAAA;AAaM,MAAM,wBAAwB,GAAG,KAAK,EAAE,OAAsB,EAA0B,EAAE;IAC/F,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,yDAAyD,CAAC,CAAA;IACzF,MAAM,IAAI,GAAY,QAAQ,CAAC,IAAe,CAAA;IAC9C,MAAM,YAAY,GAAkB,IAAI,CAAC,aAA8B,CAAA;IAGvE,IAAI,YAAY,KAAK,SAAS,EAAE;QAC9B,OAAO,EAAE,CAAA;KACV;IAED,OAAO,YAAY,CAAC,GAAG,CAErB,CAAC,EAAE,EAAE,EAAE,IAAI,EAAe,EAAe,EAAE;QACzC,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAA;IACrB,CAAC,CACF,CAAA;AACH,CAAC,CAAA;AAhBY,QAAA,wBAAwB,4BAgBpC;AAKD,MAAM,4BAA4B,GAAG,CAAC,YAAiB,EAAE,mBAAkC,EAAO,EAAE;IAClG,MAAM,SAAS,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAC9D,MAAM,WAAW,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAA;IAEhF,OAAO,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,MAAW,EAAE,GAAW,EAAE,EAAE;QACnE,IAAI,SAAS,GAAW,GAAG,CAAA;QAC3B,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YAC3B,SAAS,GAAG,GAAG,CAAA;SAChB;aAAM,IAAI,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,EAAE;YAClD,MAAM,mBAAmB,GAAgB,mBAAmB,CAAC,MAAM,CACjE,CAAC,KAAkB,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC,WAAW,EAAE,CACvE,CAAC,CAAC,CAAC,CAAA;YACJ,SAAS,GAAG,mBAAmB,CAAC,EAAE,CAAA;SACnC;aAAM;YACL,MAAM,IAAI,+BAAgB,CACxB,yBAAyB,GAAG,mFAAmF,EAC/G,eAAe,EACf,GAAG,CACJ,CAAA;SACF;QACD,MAAM,CAAC,SAAS,CAAC,GAAG,YAAY,CAAC,GAAG,CAAC,CAAA;QACrC,OAAO,MAAM,CAAA;IACf,CAAC,EAAE,EAAE,CAAC,CAAA;AACR,CAAC,CAAA;AAEM,MAAM,cAAc,GAAG,CAAC,OAAgB,EAAE,mBAAkC,EAAE,EAAE;IACrF,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,YAAY,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,CAAA;IAGhF,MAAM,mBAAmB,GAAG,YAAY;QACtC,CAAC,CAAC,4BAA4B,CAAC,YAAY,EAAE,mBAAmB,CAAC;QACjE,CAAC,CAAC,YAAY,CAAA;IAEhB,OAAO,EAAE,GAAG,IAAI,EAAE,qBAAqB,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,mBAAmB,EAAE,CAAA;AAC5G,CAAC,CAAA;AATY,QAAA,cAAc,kBAS1B"}
1
+ {"version":3,"file":"sendgrid-properties.js","sourceRoot":"","sources":["../../../src/destinations/sendgrid/sendgrid-properties.ts"],"names":[],"mappings":"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"}