@segment/action-destinations 3.201.0-tapi-loop-back.1 → 3.205.1

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 (80) hide show
  1. package/dist/destinations/acoustic-s3tc/generated-types.d.ts +8 -0
  2. package/dist/destinations/acoustic-s3tc/generated-types.js +3 -0
  3. package/dist/destinations/acoustic-s3tc/generated-types.js.map +1 -0
  4. package/dist/destinations/acoustic-s3tc/index.d.ts +4 -0
  5. package/dist/destinations/acoustic-s3tc/index.js +97 -0
  6. package/dist/destinations/acoustic-s3tc/index.js.map +1 -0
  7. package/dist/destinations/acoustic-s3tc/receiveEvents/eventprocessing.d.ts +7 -0
  8. package/dist/destinations/acoustic-s3tc/receiveEvents/eventprocessing.js +109 -0
  9. package/dist/destinations/acoustic-s3tc/receiveEvents/eventprocessing.js.map +1 -0
  10. package/dist/destinations/acoustic-s3tc/receiveEvents/generated-types.d.ts +20 -0
  11. package/dist/destinations/acoustic-s3tc/receiveEvents/generated-types.js +3 -0
  12. package/dist/destinations/acoustic-s3tc/receiveEvents/generated-types.js.map +1 -0
  13. package/dist/destinations/acoustic-s3tc/receiveEvents/index.d.ts +5 -0
  14. package/dist/destinations/acoustic-s3tc/receiveEvents/index.js +98 -0
  15. package/dist/destinations/acoustic-s3tc/receiveEvents/index.js.map +1 -0
  16. package/dist/destinations/acoustic-s3tc/receiveEvents/preCheck.d.ts +3 -0
  17. package/dist/destinations/acoustic-s3tc/receiveEvents/preCheck.js +23 -0
  18. package/dist/destinations/acoustic-s3tc/receiveEvents/preCheck.js.map +1 -0
  19. package/dist/destinations/airship/index.js +7 -5
  20. package/dist/destinations/airship/index.js.map +1 -1
  21. package/dist/destinations/airship/registerAndAssociate/generated-types.d.ts +20 -0
  22. package/dist/destinations/airship/registerAndAssociate/generated-types.js +3 -0
  23. package/dist/destinations/airship/registerAndAssociate/generated-types.js.map +1 -0
  24. package/dist/destinations/airship/registerAndAssociate/index.d.ts +5 -0
  25. package/dist/destinations/airship/registerAndAssociate/index.js +169 -0
  26. package/dist/destinations/airship/registerAndAssociate/index.js.map +1 -0
  27. package/dist/destinations/airship/utilities.d.ts +10 -4
  28. package/dist/destinations/airship/utilities.js +94 -8
  29. package/dist/destinations/airship/utilities.js.map +1 -1
  30. package/dist/destinations/braze/index.js +1 -0
  31. package/dist/destinations/braze/index.js.map +1 -1
  32. package/dist/destinations/dynamic-yield-audiences/constants.d.ts +1 -0
  33. package/dist/destinations/dynamic-yield-audiences/constants.js +5 -0
  34. package/dist/destinations/dynamic-yield-audiences/constants.js.map +1 -0
  35. package/dist/destinations/dynamic-yield-audiences/generated-types.d.ts +7 -0
  36. package/dist/destinations/dynamic-yield-audiences/generated-types.js +3 -0
  37. package/dist/destinations/dynamic-yield-audiences/generated-types.js.map +1 -0
  38. package/dist/destinations/dynamic-yield-audiences/helpers.d.ts +4 -0
  39. package/dist/destinations/dynamic-yield-audiences/helpers.js +18 -0
  40. package/dist/destinations/dynamic-yield-audiences/helpers.js.map +1 -0
  41. package/dist/destinations/dynamic-yield-audiences/index.d.ts +4 -0
  42. package/dist/destinations/dynamic-yield-audiences/index.js +76 -0
  43. package/dist/destinations/dynamic-yield-audiences/index.js.map +1 -0
  44. package/dist/destinations/dynamic-yield-audiences/syncAudience/generated-types.d.ts +7 -0
  45. package/dist/destinations/dynamic-yield-audiences/syncAudience/generated-types.js +3 -0
  46. package/dist/destinations/dynamic-yield-audiences/syncAudience/generated-types.js.map +1 -0
  47. package/dist/destinations/dynamic-yield-audiences/syncAudience/index.d.ts +5 -0
  48. package/dist/destinations/dynamic-yield-audiences/syncAudience/index.js +78 -0
  49. package/dist/destinations/dynamic-yield-audiences/syncAudience/index.js.map +1 -0
  50. package/dist/destinations/dynamic-yield-audiences/syncAudience/types.d.ts +22 -0
  51. package/dist/destinations/dynamic-yield-audiences/syncAudience/types.js +3 -0
  52. package/dist/destinations/dynamic-yield-audiences/syncAudience/types.js.map +1 -0
  53. package/dist/destinations/dynamic-yield-audiences/types.d.ts +8 -0
  54. package/dist/destinations/dynamic-yield-audiences/types.js +12 -0
  55. package/dist/destinations/dynamic-yield-audiences/types.js.map +1 -0
  56. package/dist/destinations/index.js +3 -0
  57. package/dist/destinations/index.js.map +1 -1
  58. package/dist/destinations/optimizely-advanced-audience-targeting/generated-types.d.ts +4 -0
  59. package/dist/destinations/optimizely-advanced-audience-targeting/generated-types.js +3 -0
  60. package/dist/destinations/optimizely-advanced-audience-targeting/generated-types.js.map +1 -0
  61. package/dist/destinations/optimizely-advanced-audience-targeting/index.d.ts +4 -0
  62. package/dist/destinations/optimizely-advanced-audience-targeting/index.js +51 -0
  63. package/dist/destinations/optimizely-advanced-audience-targeting/index.js.map +1 -0
  64. package/dist/destinations/optimizely-advanced-audience-targeting/syncAudience/generated-types.d.ts +7 -0
  65. package/dist/destinations/optimizely-advanced-audience-targeting/syncAudience/generated-types.js +3 -0
  66. package/dist/destinations/optimizely-advanced-audience-targeting/syncAudience/generated-types.js.map +1 -0
  67. package/dist/destinations/optimizely-advanced-audience-targeting/syncAudience/index.d.ts +5 -0
  68. package/dist/destinations/optimizely-advanced-audience-targeting/syncAudience/index.js +80 -0
  69. package/dist/destinations/optimizely-advanced-audience-targeting/syncAudience/index.js.map +1 -0
  70. package/dist/destinations/optimizely-advanced-audience-targeting/utils.d.ts +2 -0
  71. package/dist/destinations/optimizely-advanced-audience-targeting/utils.js +23 -0
  72. package/dist/destinations/optimizely-advanced-audience-targeting/utils.js.map +1 -0
  73. package/dist/destinations/segment-profiles/sendGroup/index.js +1 -5
  74. package/dist/destinations/segment-profiles/sendGroup/index.js.map +1 -1
  75. package/dist/destinations/segment-profiles/sendIdentify/index.js +3 -7
  76. package/dist/destinations/segment-profiles/sendIdentify/index.js.map +1 -1
  77. package/dist/destinations/the-trade-desk-crm/properties.d.ts +0 -1
  78. package/dist/destinations/the-trade-desk-crm/properties.js +11 -24
  79. package/dist/destinations/the-trade-desk-crm/properties.js.map +1 -1
  80. package/package.json +4 -4
@@ -0,0 +1,8 @@
1
+ export interface Settings {
2
+ fileNamePrefix?: string;
3
+ s3_access_key?: string;
4
+ s3_secret?: string;
5
+ s3_bucket?: string;
6
+ s3_region?: string;
7
+ version?: string;
8
+ }
@@ -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/acoustic-s3tc/generated-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ import { DestinationDefinition } from '@segment/actions-core';
2
+ import { Settings } from './generated-types';
3
+ declare const destination: DestinationDefinition<Settings>;
4
+ export default destination;
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const actions_core_1 = require("@segment/actions-core");
7
+ const index_1 = __importDefault(require("./receiveEvents/index"));
8
+ const mod = `
9
+ Last-Modified: 08.22.2023 09.14.43
10
+ `;
11
+ const presets = [
12
+ {
13
+ name: 'Track Calls',
14
+ subscribe: 'type = "track"',
15
+ partnerAction: 'receiveEvents',
16
+ mapping: {
17
+ ...actions_core_1.defaultValues(index_1.default.fields),
18
+ email: {
19
+ '@if': {
20
+ exists: { '@path': '$.properties.email' },
21
+ then: { '@path': '$.properties.email' },
22
+ else: { '@path': '$.context.traits.email' }
23
+ }
24
+ }
25
+ },
26
+ type: 'automatic'
27
+ },
28
+ {
29
+ name: 'Identify Calls',
30
+ subscribe: 'type = "identify"',
31
+ partnerAction: 'receiveEvents',
32
+ mapping: {
33
+ ...actions_core_1.defaultValues(index_1.default.fields),
34
+ email: {
35
+ '@if': {
36
+ exists: { '@path': '$.traits.email' },
37
+ then: { '@path': '$.traits.email' },
38
+ else: { '@path': '$.context.traits.email' }
39
+ }
40
+ }
41
+ },
42
+ type: 'automatic'
43
+ }
44
+ ];
45
+ const destination = {
46
+ name: 'Acoustic (Actions)',
47
+ slug: 'actions-acoustic',
48
+ mode: 'cloud',
49
+ description: 'Send Segment Track and Identify Event Data to Acoustic Connect',
50
+ authentication: {
51
+ scheme: 'custom',
52
+ fields: {
53
+ fileNamePrefix: {
54
+ label: 'File Name Prefix',
55
+ description: `Prefix to all Stored File Names`,
56
+ type: 'string',
57
+ required: false,
58
+ default: 'customer_org_'
59
+ },
60
+ s3_access_key: {
61
+ label: 'S3 Access Key',
62
+ description: 'Write permission to the S3 bucket.',
63
+ type: 'string'
64
+ },
65
+ s3_secret: {
66
+ label: 'S3 Secret',
67
+ description: 'Write permission to the S3 bucket.',
68
+ type: 'password'
69
+ },
70
+ s3_bucket: {
71
+ label: 'S3 Bucket Access Point',
72
+ description: 'An Access Point created as access to the S3 bucket.',
73
+ default: 's3://arn:aws:s3:us-east-1:777957353822:accesspoint/tricklercache-access',
74
+ type: 'string'
75
+ },
76
+ s3_region: {
77
+ label: 'S3 Region',
78
+ description: 'See S3 definition, should be eg: us-east-1, us-east-2',
79
+ default: 'us-east-1',
80
+ type: 'string'
81
+ },
82
+ version: {
83
+ label: `Version:`,
84
+ description: `\n${mod}\n`,
85
+ default: 'Version 1.7',
86
+ type: 'string',
87
+ required: false
88
+ }
89
+ }
90
+ },
91
+ presets,
92
+ actions: {
93
+ receiveEvents: index_1.default
94
+ }
95
+ };
96
+ exports.default = destination;
97
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/acoustic-s3tc/index.ts"],"names":[],"mappings":";;;;;AAAA,wDAA4E;AAE5E,kEAAiD;AAEjD,MAAM,GAAG,GAAG;;CAEX,CAAA;AAID,MAAM,OAAO,GAAqC;IAChD;QACE,IAAI,EAAE,aAAa;QACnB,SAAS,EAAE,gBAAgB;QAC3B,aAAa,EAAE,eAAe;QAC9B,OAAO,EAAE;YACP,GAAG,4BAAa,CAAC,eAAa,CAAC,MAAM,CAAC;YACtC,KAAK,EAAE;gBACL,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;oBACzC,IAAI,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;oBACvC,IAAI,EAAE,EAAE,OAAO,EAAE,wBAAwB,EAAE;iBAC5C;aACF;SACF;QACD,IAAI,EAAE,WAAW;KAClB;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,SAAS,EAAE,mBAAmB;QAC9B,aAAa,EAAE,eAAe;QAC9B,OAAO,EAAE;YACP,GAAG,4BAAa,CAAC,eAAa,CAAC,MAAM,CAAC;YACtC,KAAK,EAAE;gBACL,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE;oBACrC,IAAI,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE;oBACnC,IAAI,EAAE,EAAE,OAAO,EAAE,wBAAwB,EAAE;iBAC5C;aACF;SACF;QACD,IAAI,EAAE,WAAW;KAClB;CACF,CAAA;AAED,MAAM,WAAW,GAAoC;IACnD,IAAI,EAAE,oBAAoB;IAC1B,IAAI,EAAE,kBAAkB;IACxB,IAAI,EAAE,OAAO;IACb,WAAW,EAAE,gEAAgE;IAC7E,cAAc,EAAE;QACd,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE;YACN,cAAc,EAAE;gBACd,KAAK,EAAE,kBAAkB;gBACzB,WAAW,EAAE,iCAAiC;gBAC9C,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,KAAK;gBACf,OAAO,EAAE,eAAe;aACzB;YACD,aAAa,EAAE;gBACb,KAAK,EAAE,eAAe;gBACtB,WAAW,EAAE,oCAAoC;gBACjD,IAAI,EAAE,QAAQ;aACf;YACD,SAAS,EAAE;gBACT,KAAK,EAAE,WAAW;gBAClB,WAAW,EAAE,oCAAoC;gBACjD,IAAI,EAAE,UAAU;aACjB;YACD,SAAS,EAAE;gBACT,KAAK,EAAE,wBAAwB;gBAC/B,WAAW,EAAE,qDAAqD;gBAClE,OAAO,EAAE,yEAAyE;gBAClF,IAAI,EAAE,QAAQ;aACf;YACD,SAAS,EAAE;gBACT,KAAK,EAAE,WAAW;gBAClB,WAAW,EAAE,uDAAuD;gBACpE,OAAO,EAAE,WAAW;gBACpB,IAAI,EAAE,QAAQ;aACf;YACD,OAAO,EAAE;gBACP,KAAK,EAAE,UAAU;gBACjB,WAAW,EAAE,KAAK,GAAG,IAAI;gBACzB,OAAO,EAAE,aAAa;gBACtB,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,KAAK;aAChB;SACF;KACF;IACD,OAAO;IACP,OAAO,EAAE;QACP,aAAa,EAAb,eAAa;KACd;CACF,CAAA;AACD,kBAAe,WAAW,CAAA"}
@@ -0,0 +1,7 @@
1
+ import type { Payload } from './generated-types';
2
+ export declare function parseSections(section: {
3
+ [key: string]: string;
4
+ }, nestDepth: number): {
5
+ [key: string]: string;
6
+ };
7
+ export declare function addUpdateEvents(payload: Payload, email: string): string;
@@ -0,0 +1,109 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.addUpdateEvents = exports.parseSections = void 0;
7
+ const actions_core_1 = require("@segment/actions-core");
8
+ const get_1 = __importDefault(require("lodash/get"));
9
+ function parseSections(section, nestDepth) {
10
+ const parseResults = {};
11
+ try {
12
+ if (nestDepth > 10)
13
+ throw new actions_core_1.IntegrationError('Event data exceeds nesting depth. Use Mapping to avoid nesting data attributes more than 10 levels deep', 'NESTING_DEPTH_EXCEEDED', 400);
14
+ for (const key of Object.keys(section)) {
15
+ if (typeof section[key] === 'object') {
16
+ nestDepth++;
17
+ const nested = parseSections(section[key], nestDepth);
18
+ for (const nestedKey of Object.keys(nested)) {
19
+ parseResults[`${key}.${nestedKey}`] = nested[nestedKey];
20
+ }
21
+ }
22
+ else {
23
+ parseResults[key] = section[key];
24
+ }
25
+ }
26
+ }
27
+ catch (e) {
28
+ throw new actions_core_1.IntegrationError(`Unexpected Exception while parsing Event payload.\n ${e}`, 'UNEXPECTED_EVENT_PARSING_EXCEPTION', 400);
29
+ }
30
+ return parseResults;
31
+ }
32
+ exports.parseSections = parseSections;
33
+ function addUpdateEvents(payload, email) {
34
+ let eventName = '';
35
+ let eventValue = '';
36
+ let csvRows = 'EMAIL, EventSource, EventName, EventValue, Event Timestamp\n';
37
+ const eventSource = get_1.default(payload, 'type', 'Null') + ' Event';
38
+ const timestamp = get_1.default(payload, 'timestamp', 'Null');
39
+ let propertiesTraitsKV = {};
40
+ try {
41
+ if (payload.key_value_pairs)
42
+ propertiesTraitsKV = {
43
+ ...propertiesTraitsKV,
44
+ ...parseSections(payload.key_value_pairs, 0)
45
+ };
46
+ if (payload.array_data)
47
+ propertiesTraitsKV = {
48
+ ...propertiesTraitsKV,
49
+ ...parseSections(payload.array_data, 0)
50
+ };
51
+ if (payload.traits)
52
+ propertiesTraitsKV = {
53
+ ...propertiesTraitsKV,
54
+ ...parseSections(payload.traits, 0)
55
+ };
56
+ if (payload.properties)
57
+ propertiesTraitsKV = {
58
+ ...propertiesTraitsKV,
59
+ ...parseSections(payload.properties, 0)
60
+ };
61
+ if (payload.context)
62
+ propertiesTraitsKV = {
63
+ ...propertiesTraitsKV,
64
+ ...parseSections(payload.context, 0)
65
+ };
66
+ }
67
+ catch (e) {
68
+ throw new actions_core_1.IntegrationError('Unexpected Exception processing payload \n ${e}', 'UNEXPECTED_EXCEPTION_PROCESSING_PAYLOAD', 400);
69
+ }
70
+ let ak = '';
71
+ let av = '';
72
+ const getValue = (o, part) => Object.entries(o).find(([k, _v]) => k.includes(part))?.[1];
73
+ const getKey = (o, part) => Object.entries(o).find(([k, _v]) => k.includes(part))?.[0];
74
+ if (getValue(propertiesTraitsKV, 'computation_class')?.toLowerCase() === 'audience') {
75
+ ak = getValue(propertiesTraitsKV, 'computation_key');
76
+ av = getValue(propertiesTraitsKV, `${ak}`);
77
+ let x = getKey(propertiesTraitsKV, 'computation_class');
78
+ delete propertiesTraitsKV[`${x}`];
79
+ x = getKey(propertiesTraitsKV, 'computation_key');
80
+ delete propertiesTraitsKV[`${x}`];
81
+ delete propertiesTraitsKV[`${ak}`];
82
+ }
83
+ if (getValue(propertiesTraitsKV, 'audience_key')) {
84
+ ak = getValue(propertiesTraitsKV, 'audience_key');
85
+ av = getValue(propertiesTraitsKV, `${ak}`);
86
+ const x = getKey(propertiesTraitsKV, 'audience_key');
87
+ delete propertiesTraitsKV[`${x}`];
88
+ delete propertiesTraitsKV[`${ak}`];
89
+ }
90
+ if (av !== '') {
91
+ let audiStatus = av;
92
+ eventValue = audiStatus;
93
+ audiStatus = audiStatus.toString().toLowerCase();
94
+ if (audiStatus === 'true')
95
+ eventValue = 'Audience Entered';
96
+ if (audiStatus === 'false')
97
+ eventValue = 'Audience Exited';
98
+ eventName = ak;
99
+ csvRows += `${email}, ${eventSource}, ${eventName}, ${eventValue}, ${timestamp}\n`;
100
+ }
101
+ for (const e in propertiesTraitsKV) {
102
+ const eventName = e;
103
+ const eventValue = propertiesTraitsKV[e];
104
+ csvRows += `${email}, ${eventSource}, ${eventName}, ${eventValue}, ${timestamp}\n`;
105
+ }
106
+ return csvRows;
107
+ }
108
+ exports.addUpdateEvents = addUpdateEvents;
109
+ //# sourceMappingURL=eventprocessing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eventprocessing.js","sourceRoot":"","sources":["../../../../src/destinations/acoustic-s3tc/receiveEvents/eventprocessing.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ export interface Payload {
2
+ key_value_pairs?: {
3
+ [k: string]: unknown;
4
+ };
5
+ array_data?: {
6
+ [k: string]: unknown;
7
+ }[];
8
+ context?: {
9
+ [k: string]: unknown;
10
+ };
11
+ properties?: {
12
+ [k: string]: unknown;
13
+ };
14
+ traits?: {
15
+ [k: string]: unknown;
16
+ };
17
+ email: string;
18
+ type: string;
19
+ timestamp: string | number;
20
+ }
@@ -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/acoustic-s3tc/receiveEvents/generated-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ import { ActionDefinition } from '@segment/actions-core';
2
+ import { Settings } from '../generated-types';
3
+ import { Payload } from '../receiveEvents/generated-types';
4
+ declare const action: ActionDefinition<Settings, Payload>;
5
+ export default action;
@@ -0,0 +1,98 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const actions_core_1 = require("@segment/actions-core");
7
+ const get_1 = __importDefault(require("lodash/get"));
8
+ const eventprocessing_1 = require("./eventprocessing");
9
+ const s3_1 = __importDefault(require("../../../lib/AWS/s3"));
10
+ const preCheck_1 = require("./preCheck");
11
+ const action = {
12
+ title: 'Send Events',
13
+ description: 'Send Segment identify() and track() events to Acoustic Connect. At least one of the following optional fields should be populated: Key-Value pairs, Arrays, Context, Properties, Traits.',
14
+ fields: {
15
+ key_value_pairs: {
16
+ label: 'Key-Value pairs',
17
+ description: '(optional) Map simple Key-Value pairs',
18
+ type: 'object'
19
+ },
20
+ array_data: {
21
+ label: 'Arrays',
22
+ description: '(optional) If the data needed is in an array, use this section to Map Array data into useable attributes',
23
+ type: 'object',
24
+ multiple: true,
25
+ additionalProperties: true
26
+ },
27
+ context: {
28
+ label: 'Context',
29
+ description: '(optional) If the data is present in a Context section, use this to map the attributes of a Context Section',
30
+ type: 'object'
31
+ },
32
+ properties: {
33
+ label: 'Properties',
34
+ description: '(optional) If the data is present in a Properties section, use this to map the attributes of a Properties Section',
35
+ type: 'object'
36
+ },
37
+ traits: {
38
+ label: 'Traits',
39
+ description: '(optional) If the data is present in a Traits section, use this to map the attributes of a Traits Section',
40
+ type: 'object'
41
+ },
42
+ email: {
43
+ label: 'Email',
44
+ description: 'Do Not Modify - Email is required',
45
+ type: 'string',
46
+ format: 'email',
47
+ required: true,
48
+ default: {
49
+ '@if': {
50
+ exists: { '@path': '$.properties.email' },
51
+ then: { '@path': '$.properties.email' },
52
+ else: { '@path': '$.traits.email' }
53
+ }
54
+ }
55
+ },
56
+ type: {
57
+ label: 'Type',
58
+ description: 'The type of event. e.g. track or identify. This field is required',
59
+ type: 'string',
60
+ required: true,
61
+ default: {
62
+ '@path': '$.type'
63
+ }
64
+ },
65
+ timestamp: {
66
+ label: 'Timestamp',
67
+ description: 'The timestamp for when the event took place. This field is required',
68
+ type: 'datetime',
69
+ required: true,
70
+ default: {
71
+ '@path': '$.timestamp'
72
+ }
73
+ }
74
+ },
75
+ perform: async (request, { settings, payload }) => {
76
+ const email = get_1.default(payload, 'email', '');
77
+ if (!email) {
78
+ throw new actions_core_1.IntegrationError('Email Not Found, invalid Event received.', 'INVALID_EVENT_HAS_NO_EMAIL', 400);
79
+ }
80
+ if (!payload.context && !payload.traits && !payload.properties)
81
+ throw new actions_core_1.IntegrationError('No mapped data provided, must use at least one of the mapping fields to define the data to be sent to Acoustic.', 'INVALID_NO_DATA_MAPPED', 400);
82
+ preCheck_1.validateSettings(settings);
83
+ const csvRows = eventprocessing_1.addUpdateEvents(payload, email);
84
+ const fileName = settings.fileNamePrefix + `${new Date().toISOString().replace(/(\.|-|:)/g, '_')}` + '.csv';
85
+ const method = 'PUT';
86
+ const opts = await s3_1.default(settings.s3_bucket, settings.s3_region, fileName, method, csvRows, settings.s3_access_key, settings.s3_secret);
87
+ if (!opts.headers || !opts.method || !opts.host || !opts.path) {
88
+ throw new actions_core_1.InvalidAuthenticationError('Unable to generate signature header for AWS S3 request.');
89
+ }
90
+ return await request(`https://${opts.host}/${opts.path}`, {
91
+ headers: opts.headers,
92
+ method,
93
+ body: opts.body
94
+ });
95
+ }
96
+ };
97
+ exports.default = action;
98
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/acoustic-s3tc/receiveEvents/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Settings } from '../generated-types';
2
+ declare function validateSettings(settings: Settings): void;
3
+ export { validateSettings };
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.validateSettings = void 0;
4
+ const actions_core_1 = require("@segment/actions-core");
5
+ function validateSettings(settings) {
6
+ if (!settings.s3_access_key) {
7
+ throw new actions_core_1.IntegrationError('Missing S3 Access Key', 'MISSING_S3_ACCESS_KEY', 400);
8
+ }
9
+ if (!settings.s3_secret) {
10
+ throw new actions_core_1.IntegrationError('Missing S3 Secret.', 'MISSING_S3_SECRET', 400);
11
+ }
12
+ if (!settings.s3_region) {
13
+ throw new actions_core_1.IntegrationError('Missing S3 Region', 'MISSING_S3_REGION', 400);
14
+ }
15
+ if (!settings.s3_bucket) {
16
+ throw new actions_core_1.IntegrationError('Missing S3 Bucket.', 'MISSING_S3_BUCKET', 400);
17
+ }
18
+ if (!settings.fileNamePrefix) {
19
+ throw new actions_core_1.IntegrationError('Missing File Name Prefix', 'MISSING_FILE_NAME_PREFIX', 400);
20
+ }
21
+ }
22
+ exports.validateSettings = validateSettings;
23
+ //# sourceMappingURL=preCheck.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preCheck.js","sourceRoot":"","sources":["../../../../src/destinations/acoustic-s3tc/receiveEvents/preCheck.ts"],"names":[],"mappings":";;;AAAA,wDAAwD;AAGxD,SAAS,gBAAgB,CAAC,QAAkB;IAC1C,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE;QAC3B,MAAM,IAAI,+BAAgB,CAAC,uBAAuB,EAAE,uBAAuB,EAAE,GAAG,CAAC,CAAA;KAClF;IAED,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE;QACvB,MAAM,IAAI,+BAAgB,CAAC,oBAAoB,EAAE,mBAAmB,EAAE,GAAG,CAAC,CAAA;KAC3E;IAED,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE;QACvB,MAAM,IAAI,+BAAgB,CAAC,mBAAmB,EAAE,mBAAmB,EAAE,GAAG,CAAC,CAAA;KAC1E;IAED,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE;QACvB,MAAM,IAAI,+BAAgB,CAAC,oBAAoB,EAAE,mBAAmB,EAAE,GAAG,CAAC,CAAA;KAC3E;IAED,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE;QAC5B,MAAM,IAAI,+BAAgB,CAAC,0BAA0B,EAAE,0BAA0B,EAAE,GAAG,CAAC,CAAA;KACxF;AACH,CAAC;AAEQ,4CAAgB"}
@@ -8,6 +8,7 @@ const customEvents_1 = __importDefault(require("./customEvents"));
8
8
  const setAttributes_1 = __importDefault(require("./setAttributes"));
9
9
  const manageTags_1 = __importDefault(require("./manageTags"));
10
10
  const utilities_1 = require("./utilities");
11
+ const registerAndAssociate_1 = __importDefault(require("./registerAndAssociate"));
11
12
  const destination = {
12
13
  name: 'Airship (Actions)',
13
14
  slug: 'actions-airship',
@@ -58,17 +59,17 @@ const destination = {
58
59
  presets: [
59
60
  {
60
61
  name: 'Custom Events',
62
+ type: 'automatic',
61
63
  subscribe: 'type = "track"',
62
64
  partnerAction: 'customEvents',
63
- mapping: actions_core_1.defaultValues(customEvents_1.default.fields),
64
- type: 'automatic'
65
+ mapping: actions_core_1.defaultValues(customEvents_1.default.fields)
65
66
  },
66
67
  {
67
68
  name: 'Set Attributes',
69
+ type: 'automatic',
68
70
  subscribe: 'type = "identify"',
69
71
  partnerAction: 'setAttributes',
70
- mapping: actions_core_1.defaultValues(setAttributes_1.default.fields),
71
- type: 'automatic'
72
+ mapping: actions_core_1.defaultValues(setAttributes_1.default.fields)
72
73
  }
73
74
  ],
74
75
  onDelete: async (request, { settings, payload }) => {
@@ -93,7 +94,8 @@ const destination = {
93
94
  actions: {
94
95
  customEvents: customEvents_1.default,
95
96
  setAttributes: setAttributes_1.default,
96
- manageTags: manageTags_1.default
97
+ manageTags: manageTags_1.default,
98
+ registerAndAssociate: registerAndAssociate_1.default
97
99
  }
98
100
  };
99
101
  exports.default = destination;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/airship/index.ts"],"names":[],"mappings":";;;;;AAAA,wDAA4E;AAG5E,kEAAyC;AAEzC,oEAA2C;AAE3C,8DAAqC;AAErC,2CAA0C;AAE1C,MAAM,WAAW,GAAoC;IACnD,IAAI,EAAE,mBAAmB;IACzB,IAAI,EAAE,iBAAiB;IACvB,IAAI,EAAE,OAAO;IACb,WAAW,EACT,iHAAiH;IACnH,cAAc,EAAE;QACd,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE;YACN,YAAY,EAAE;gBACZ,KAAK,EAAE,cAAc;gBACrB,WAAW,EAAE,+EAA+E;gBAC5F,IAAI,EAAE,UAAU;gBAEhB,QAAQ,EAAE,IAAI;aACf;YACD,OAAO,EAAE;gBACP,KAAK,EAAE,SAAS;gBAChB,WAAW,EAAE,4EAA4E;gBACzF,IAAI,EAAE,QAAQ;gBAEd,QAAQ,EAAE,IAAI;aACf;YACD,QAAQ,EAAE;gBACR,KAAK,EAAE,aAAa;gBACpB,WAAW,EAAE,UAAU;gBACvB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE;oBACP,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;oBAC5B,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;iBAC7B;gBACD,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,IAAI;aACf;SACF;QACD,kBAAkB,EAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE;YAC5C,MAAM,QAAQ,GAAG,wBAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;YAChD,OAAO,OAAO,CAAC,GAAG,QAAQ,qBAAqB,EAAE;gBAC/C,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE;oBACJ,IAAI,EAAE;wBACJ,IAAI,EAAE,mBAAmB;qBAC1B;oBACD,IAAI,EAAE;wBACJ,aAAa,EAAE,sCAAsC;qBACtD;iBACF;aACF,CAAC,CAAA;QACJ,CAAC;KACF;IACD,OAAO,EAAE;QACP;YACE,IAAI,EAAE,eAAe;YACrB,SAAS,EAAE,gBAAgB;YAC3B,aAAa,EAAE,cAAc;YAC7B,OAAO,EAAE,4BAAa,CAAC,sBAAY,CAAC,MAAM,CAAC;YAC3C,IAAI,EAAE,WAAW;SAClB;QACD;YACE,IAAI,EAAE,gBAAgB;YACtB,SAAS,EAAE,mBAAmB;YAC9B,aAAa,EAAE,eAAe;YAC9B,OAAO,EAAE,4BAAa,CAAC,uBAAa,CAAC,MAAM,CAAC;YAC5C,IAAI,EAAE,WAAW;SAClB;KACF;IACD,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE;QACjD,MAAM,QAAQ,GAAG,wBAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;QAChD,OAAO,OAAO,CAAC,GAAG,QAAQ,4BAA4B,EAAE;YACtD,MAAM,EAAE,MAAM;YACd,IAAI,EAAE;gBACJ,aAAa,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;aAChC;SACF,CAAC,CAAA;IACJ,CAAC;IACD,aAAa,CAAC,EAAE,QAAQ,EAAE;QACxB,OAAO;YACL,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,QAAQ,CAAC,YAAY,EAAE;gBAChD,aAAa,EAAE,GAAG,QAAQ,CAAC,OAAO,EAAE;gBACpC,MAAM,EAAE,8CAA8C;gBACtD,cAAc,EAAE,kBAAkB;aACnC;SACF,CAAA;IACH,CAAC;IACD,OAAO,EAAE;QACP,YAAY,EAAZ,sBAAY;QACZ,aAAa,EAAb,uBAAa;QACb,UAAU,EAAV,oBAAU;KACX;CACF,CAAA;AACD,kBAAe,WAAW,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/airship/index.ts"],"names":[],"mappings":";;;;;AAAA,wDAA4E;AAG5E,kEAAyC;AAEzC,oEAA2C;AAE3C,8DAAqC;AAErC,2CAA0C;AAE1C,kFAAyD;AAEzD,MAAM,WAAW,GAAoC;IACnD,IAAI,EAAE,mBAAmB;IACzB,IAAI,EAAE,iBAAiB;IACvB,IAAI,EAAE,OAAO;IACb,WAAW,EACT,iHAAiH;IACnH,cAAc,EAAE;QACd,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE;YACN,YAAY,EAAE;gBACZ,KAAK,EAAE,cAAc;gBACrB,WAAW,EAAE,+EAA+E;gBAC5F,IAAI,EAAE,UAAU;gBAEhB,QAAQ,EAAE,IAAI;aACf;YACD,OAAO,EAAE;gBACP,KAAK,EAAE,SAAS;gBAChB,WAAW,EAAE,4EAA4E;gBACzF,IAAI,EAAE,QAAQ;gBAEd,QAAQ,EAAE,IAAI;aACf;YACD,QAAQ,EAAE;gBACR,KAAK,EAAE,aAAa;gBACpB,WAAW,EAAE,UAAU;gBACvB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE;oBACP,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;oBAC5B,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;iBAC7B;gBACD,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,IAAI;aACf;SACF;QACD,kBAAkB,EAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE;YAC5C,MAAM,QAAQ,GAAG,wBAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;YAChD,OAAO,OAAO,CAAC,GAAG,QAAQ,qBAAqB,EAAE;gBAC/C,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE;oBACJ,IAAI,EAAE;wBACJ,IAAI,EAAE,mBAAmB;qBAC1B;oBACD,IAAI,EAAE;wBACJ,aAAa,EAAE,sCAAsC;qBACtD;iBACF;aACF,CAAC,CAAA;QACJ,CAAC;KACF;IACD,OAAO,EAAE;QACP;YACE,IAAI,EAAE,eAAe;YACrB,IAAI,EAAE,WAAW;YACjB,SAAS,EAAE,gBAAgB;YAC3B,aAAa,EAAE,cAAc;YAC7B,OAAO,EAAE,4BAAa,CAAC,sBAAY,CAAC,MAAM,CAAC;SAC5C;QACD;YACE,IAAI,EAAE,gBAAgB;YACtB,IAAI,EAAE,WAAW;YACjB,SAAS,EAAE,mBAAmB;YAC9B,aAAa,EAAE,eAAe;YAC9B,OAAO,EAAE,4BAAa,CAAC,uBAAa,CAAC,MAAM,CAAC;SAC7C;KACF;IACD,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE;QACjD,MAAM,QAAQ,GAAG,wBAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;QAChD,OAAO,OAAO,CAAC,GAAG,QAAQ,4BAA4B,EAAE;YACtD,MAAM,EAAE,MAAM;YACd,IAAI,EAAE;gBACJ,aAAa,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;aAChC;SACF,CAAC,CAAA;IACJ,CAAC;IACD,aAAa,CAAC,EAAE,QAAQ,EAAE;QACxB,OAAO;YACL,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,QAAQ,CAAC,YAAY,EAAE;gBAChD,aAAa,EAAE,GAAG,QAAQ,CAAC,OAAO,EAAE;gBACpC,MAAM,EAAE,8CAA8C;gBACtD,cAAc,EAAE,kBAAkB;aACnC;SACF,CAAA;IACH,CAAC;IACD,OAAO,EAAE;QACP,YAAY,EAAZ,sBAAY;QACZ,aAAa,EAAb,uBAAa;QACb,UAAU,EAAV,oBAAU;QACV,oBAAoB,EAApB,8BAAoB;KACrB;CACF,CAAA;AACD,kBAAe,WAAW,CAAA"}
@@ -0,0 +1,20 @@
1
+ export interface Payload {
2
+ named_user_id?: string;
3
+ locale?: string;
4
+ timezone?: string;
5
+ opt_in_choices?: string;
6
+ channel_object: {
7
+ address: string;
8
+ new_address?: string;
9
+ commercial_opted_in?: string;
10
+ commercial_opted_out?: string;
11
+ click_tracking_opted_in?: string;
12
+ click_tracking_opted_out?: string;
13
+ open_tracking_opted_in?: string;
14
+ open_tracking_opted_out?: string;
15
+ transactional_opted_in?: string;
16
+ transactional_opted_out?: string;
17
+ suppression_state?: string;
18
+ [k: string]: unknown;
19
+ };
20
+ }
@@ -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/airship/registerAndAssociate/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;