@segment/action-destinations 3.47.0 → 3.47.1-alpha.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.
- package/dist/destinations/salesforce/custom/generated-types.d.ts +10 -0
- package/dist/destinations/salesforce/custom/generated-types.js +3 -0
- package/dist/destinations/salesforce/custom/generated-types.js.map +1 -0
- package/dist/destinations/salesforce/custom/index.d.ts +5 -0
- package/dist/destinations/salesforce/custom/index.js +40 -0
- package/dist/destinations/salesforce/custom/index.js.map +1 -0
- package/dist/destinations/salesforce/index.js +3 -1
- package/dist/destinations/salesforce/index.js.map +1 -1
- package/dist/destinations/salesforce/lead/generated-types.d.ts +3 -0
- package/dist/destinations/salesforce/lead/index.js +2 -1
- package/dist/destinations/salesforce/lead/index.js.map +1 -1
- package/dist/destinations/salesforce/sf-object-to-shape.d.ts +12 -0
- package/dist/destinations/salesforce/sf-object-to-shape.js +26 -0
- package/dist/destinations/salesforce/sf-object-to-shape.js.map +1 -0
- package/dist/destinations/salesforce/sf-operations.d.ts +1 -0
- package/dist/destinations/salesforce/sf-operations.js +18 -22
- package/dist/destinations/salesforce/sf-operations.js.map +1 -1
- package/dist/destinations/salesforce/sf-properties.d.ts +1 -0
- package/dist/destinations/salesforce/sf-properties.js +10 -1
- package/dist/destinations/salesforce/sf-properties.js.map +1 -1
- package/dist/destinations/salesforce/sf-types.d.ts +2 -1
- package/package.json +2 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generated-types.js","sourceRoot":"","sources":["../../../../src/destinations/salesforce/custom/generated-types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,40 @@
|
|
|
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 sf_properties_1 = require("../sf-properties");
|
|
7
|
+
const sf_operations_1 = __importDefault(require("../sf-operations"));
|
|
8
|
+
const action = {
|
|
9
|
+
title: 'Custom Object',
|
|
10
|
+
description: 'Custom Object',
|
|
11
|
+
fields: {
|
|
12
|
+
operation: sf_properties_1.operation,
|
|
13
|
+
traits: sf_properties_1.traits,
|
|
14
|
+
sobject: {
|
|
15
|
+
label: 'Salesforce Object',
|
|
16
|
+
description: 'The name of the Salesforce object that records will be added or updated within. The object must be predefined in your Salesforce account. Values should end with "__c".',
|
|
17
|
+
type: 'string',
|
|
18
|
+
required: true
|
|
19
|
+
},
|
|
20
|
+
custom_fields: sf_properties_1.custom_fields
|
|
21
|
+
},
|
|
22
|
+
perform: async (request, { settings, payload }) => {
|
|
23
|
+
const sf = new sf_operations_1.default(settings.instanceUrl, request);
|
|
24
|
+
if (!payload.sobject.endsWith('__c')) {
|
|
25
|
+
payload.sobject += '__c';
|
|
26
|
+
}
|
|
27
|
+
if (payload.operation === 'create') {
|
|
28
|
+
return await sf.createRecord(payload, payload.sobject);
|
|
29
|
+
}
|
|
30
|
+
sf_properties_1.validateLookup(payload);
|
|
31
|
+
if (payload.operation === 'update') {
|
|
32
|
+
return await sf.updateRecord(payload, payload.sobject);
|
|
33
|
+
}
|
|
34
|
+
if (payload.operation === 'upsert') {
|
|
35
|
+
return await sf.upsertRecord(payload, payload.sobject);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
exports.default = action;
|
|
40
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/salesforce/custom/index.ts"],"names":[],"mappings":";;;;;AAGA,oDAAmF;AACnF,qEAAyC;AAEzC,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,eAAe;IACtB,WAAW,EAAE,eAAe;IAC5B,MAAM,EAAE;QACN,SAAS,EAAE,yBAAS;QACpB,MAAM,EAAE,sBAAM;QACd,OAAO,EAAE;YACP,KAAK,EAAE,mBAAmB;YAC1B,WAAW,EACT,yKAAyK;YAC3K,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;SACf;QACD,aAAa,EAAE,6BAAa;KAC7B;IACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE;QAChD,MAAM,EAAE,GAAe,IAAI,uBAAU,CAAC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;QAEpE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YACpC,OAAO,CAAC,OAAO,IAAI,KAAK,CAAA;SACzB;QAED,IAAI,OAAO,CAAC,SAAS,KAAK,QAAQ,EAAE;YAClC,OAAO,MAAM,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;SACvD;QAED,8BAAc,CAAC,OAAO,CAAC,CAAA;QAEvB,IAAI,OAAO,CAAC,SAAS,KAAK,QAAQ,EAAE;YAClC,OAAO,MAAM,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;SACvD;QAED,IAAI,OAAO,CAAC,SAAS,KAAK,QAAQ,EAAE;YAClC,OAAO,MAAM,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;SACvD;IACH,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
|
|
@@ -4,6 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const lead_1 = __importDefault(require("./lead"));
|
|
7
|
+
const custom_1 = __importDefault(require("./custom"));
|
|
7
8
|
const destination = {
|
|
8
9
|
name: 'Salesforce (Actions)',
|
|
9
10
|
slug: 'actions-salesforce',
|
|
@@ -39,7 +40,8 @@ const destination = {
|
|
|
39
40
|
};
|
|
40
41
|
},
|
|
41
42
|
actions: {
|
|
42
|
-
lead: lead_1.default
|
|
43
|
+
lead: lead_1.default,
|
|
44
|
+
custom: custom_1.default
|
|
43
45
|
}
|
|
44
46
|
};
|
|
45
47
|
exports.default = destination;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/salesforce/index.ts"],"names":[],"mappings":";;;;;AAEA,kDAAyB;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/salesforce/index.ts"],"names":[],"mappings":";;;;;AAEA,kDAAyB;AAEzB,sDAA6B;AAM7B,MAAM,WAAW,GAAoC;IACnD,IAAI,EAAE,sBAAsB;IAC5B,IAAI,EAAE,oBAAoB;IAC1B,IAAI,EAAE,OAAO;IAEb,cAAc,EAAE;QACd,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE;YACN,WAAW,EAAE;gBACX,KAAK,EAAE,cAAc;gBACrB,WAAW,EACT,2HAA2H;gBAC7H,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,IAAI;aACf;SACF;QACD,kBAAkB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;YAE9C,MAAM,GAAG,GAAG,MAAM,OAAO,CAAuB,oDAAoD,EAAE;gBACpG,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,IAAI,eAAe,CAAC;oBACxB,aAAa,EAAE,IAAI,CAAC,YAAY;oBAChC,SAAS,EAAE,IAAI,CAAC,QAAQ;oBACxB,aAAa,EAAE,IAAI,CAAC,YAAY;oBAChC,UAAU,EAAE,eAAe;iBAC5B,CAAC;aACH,CAAC,CAAA;YACF,OAAO,EAAE,WAAW,EAAE,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,CAAA;QAC/C,CAAC;KACF;IACD,aAAa,CAAC,EAAE,IAAI,EAAE;QACpB,OAAO;YACL,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,IAAI,EAAE,WAAW,EAAE;aAC7C;SACF,CAAA;IACH,CAAC;IAED,OAAO,EAAE;QACP,IAAI,EAAJ,cAAI;QACJ,MAAM,EAAN,gBAAM;KACP;CACF,CAAA;AAED,kBAAe,WAAW,CAAA"}
|
|
@@ -119,7 +119,8 @@ const action = {
|
|
|
119
119
|
else: { '@path': '$.properties.address.state' }
|
|
120
120
|
}
|
|
121
121
|
}
|
|
122
|
-
}
|
|
122
|
+
},
|
|
123
|
+
custom_fields: sf_properties_1.custom_fields
|
|
123
124
|
},
|
|
124
125
|
perform: async (request, { settings, payload }) => {
|
|
125
126
|
const sf = new sf_operations_1.default(settings.instanceUrl, request);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/salesforce/lead/index.ts"],"names":[],"mappings":";;;;;AAAA,wDAA0E;AAG1E,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/salesforce/lead/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { GenericPayload } from './sf-types';
|
|
2
|
+
export declare const mapObjectToShape: (payload: GenericPayload, sobject: string) => {
|
|
3
|
+
LastName: string | undefined;
|
|
4
|
+
Company: string | undefined;
|
|
5
|
+
FirstName: string | undefined;
|
|
6
|
+
State: string | undefined;
|
|
7
|
+
Street: string | undefined;
|
|
8
|
+
Country: string | undefined;
|
|
9
|
+
PostalCode: string | undefined;
|
|
10
|
+
City: string | undefined;
|
|
11
|
+
Email: string | undefined;
|
|
12
|
+
};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.mapObjectToShape = void 0;
|
|
4
|
+
const mapObjectToShape = (payload, sobject) => {
|
|
5
|
+
const shapeFunction = object_to_shape.get(sobject.toLowerCase());
|
|
6
|
+
if (!shapeFunction) {
|
|
7
|
+
throw new Error(`Undefined Object Shape: ${sobject}`);
|
|
8
|
+
}
|
|
9
|
+
return shapeFunction(payload);
|
|
10
|
+
};
|
|
11
|
+
exports.mapObjectToShape = mapObjectToShape;
|
|
12
|
+
const LeadShape = (payload) => {
|
|
13
|
+
return {
|
|
14
|
+
LastName: payload.last_name,
|
|
15
|
+
Company: payload.company,
|
|
16
|
+
FirstName: payload.first_name,
|
|
17
|
+
State: payload.state,
|
|
18
|
+
Street: payload.street,
|
|
19
|
+
Country: payload.country,
|
|
20
|
+
PostalCode: payload.postal_code,
|
|
21
|
+
City: payload.city,
|
|
22
|
+
Email: payload.email
|
|
23
|
+
};
|
|
24
|
+
};
|
|
25
|
+
const object_to_shape = new Map([['lead', LeadShape]]);
|
|
26
|
+
//# sourceMappingURL=sf-object-to-shape.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sf-object-to-shape.js","sourceRoot":"","sources":["../../../src/destinations/salesforce/sf-object-to-shape.ts"],"names":[],"mappings":";;;AAEO,MAAM,gBAAgB,GAAG,CAAC,OAAuB,EAAE,OAAe,EAAE,EAAE;IAC3E,MAAM,aAAa,GAAG,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAA;IAEhE,IAAI,CAAC,aAAa,EAAE;QAClB,MAAM,IAAI,KAAK,CAAC,2BAA2B,OAAO,EAAE,CAAC,CAAA;KACtD;IAED,OAAO,aAAa,CAAC,OAAO,CAAC,CAAA;AAC/B,CAAC,CAAA;AARY,QAAA,gBAAgB,oBAQ5B;AAED,MAAM,SAAS,GAAG,CAAC,OAAuB,EAAE,EAAE;IAC5C,OAAO;QACL,QAAQ,EAAE,OAAO,CAAC,SAAS;QAC3B,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,SAAS,EAAE,OAAO,CAAC,UAAU;QAC7B,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,UAAU,EAAE,OAAO,CAAC,WAAW;QAC/B,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,KAAK,EAAE,OAAO,CAAC,KAAK;KACrB,CAAA;AACH,CAAC,CAAA;AAED,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,CAAA"}
|
|
@@ -9,6 +9,7 @@ export default class Salesforce {
|
|
|
9
9
|
updateRecord: (payload: GenericPayload, sobject: string) => Promise<import("@segment/actions-core").ModifiedResponse<unknown>>;
|
|
10
10
|
upsertRecord: (payload: GenericPayload, sobject: string) => Promise<import("@segment/actions-core").ModifiedResponse<unknown>>;
|
|
11
11
|
private baseUpdate;
|
|
12
|
+
private buildJSONData;
|
|
12
13
|
private buildQuery;
|
|
13
14
|
private lookupTraits;
|
|
14
15
|
}
|
|
@@ -2,23 +2,15 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.API_VERSION = void 0;
|
|
4
4
|
const actions_core_1 = require("@segment/actions-core");
|
|
5
|
+
const sf_object_to_shape_1 = require("./sf-object-to-shape");
|
|
5
6
|
exports.API_VERSION = 'v53.0';
|
|
6
7
|
class Salesforce {
|
|
7
8
|
constructor(instanceUrl, request) {
|
|
8
9
|
this.createRecord = async (payload, sobject) => {
|
|
10
|
+
const JSON_data = this.buildJSONData(payload, sobject);
|
|
9
11
|
return this.request(`${this.instanceUrl}/services/data/${exports.API_VERSION}/sobjects/${sobject}`, {
|
|
10
12
|
method: 'post',
|
|
11
|
-
json:
|
|
12
|
-
LastName: payload.last_name,
|
|
13
|
-
Company: payload.company,
|
|
14
|
-
FirstName: payload.first_name,
|
|
15
|
-
State: payload.state,
|
|
16
|
-
Street: payload.street,
|
|
17
|
-
Country: payload.country,
|
|
18
|
-
PostalCode: payload.postal_code,
|
|
19
|
-
City: payload.city,
|
|
20
|
-
Email: payload.email
|
|
21
|
-
}
|
|
13
|
+
json: JSON_data
|
|
22
14
|
});
|
|
23
15
|
};
|
|
24
16
|
this.updateRecord = async (payload, sobject) => {
|
|
@@ -48,21 +40,25 @@ class Salesforce {
|
|
|
48
40
|
return await this.baseUpdate(recordId, sobject, payload);
|
|
49
41
|
};
|
|
50
42
|
this.baseUpdate = async (recordId, sobject, payload) => {
|
|
43
|
+
const JSON_data = this.buildJSONData(payload, sobject);
|
|
51
44
|
return this.request(`${this.instanceUrl}/services/data/${exports.API_VERSION}/sobjects/${sobject}/${recordId}`, {
|
|
52
45
|
method: 'patch',
|
|
53
|
-
json:
|
|
54
|
-
LastName: payload.last_name,
|
|
55
|
-
Company: payload.company,
|
|
56
|
-
FirstName: payload.first_name,
|
|
57
|
-
State: payload.state,
|
|
58
|
-
Street: payload.street,
|
|
59
|
-
Country: payload.country,
|
|
60
|
-
PostalCode: payload.postal_code,
|
|
61
|
-
City: payload.city,
|
|
62
|
-
Email: payload.email
|
|
63
|
-
}
|
|
46
|
+
json: JSON_data
|
|
64
47
|
});
|
|
65
48
|
};
|
|
49
|
+
this.buildJSONData = (payload, sobject) => {
|
|
50
|
+
let baseShape;
|
|
51
|
+
if (payload.sobject) {
|
|
52
|
+
baseShape = {};
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
baseShape = sf_object_to_shape_1.mapObjectToShape(payload, sobject);
|
|
56
|
+
}
|
|
57
|
+
if (payload.custom_fields) {
|
|
58
|
+
baseShape = { ...baseShape, ...payload.custom_fields };
|
|
59
|
+
}
|
|
60
|
+
return baseShape;
|
|
61
|
+
};
|
|
66
62
|
this.buildQuery = (traits, sobject) => {
|
|
67
63
|
let soql = `?q=SELECT Id FROM ${sobject} WHERE `;
|
|
68
64
|
const entries = Object.entries(traits);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sf-operations.js","sourceRoot":"","sources":["../../../src/destinations/salesforce/sf-operations.ts"],"names":[],"mappings":";;;AAAA,wDAAuE;
|
|
1
|
+
{"version":3,"file":"sf-operations.js","sourceRoot":"","sources":["../../../src/destinations/salesforce/sf-operations.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { InputField } from '@segment/actions-core/src/destination-kit/types';
|
|
2
2
|
export declare const operation: InputField;
|
|
3
3
|
export declare const traits: InputField;
|
|
4
|
+
export declare const custom_fields: InputField;
|
|
4
5
|
interface Payload {
|
|
5
6
|
operation?: string;
|
|
6
7
|
traits?: object;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.validateLookup = exports.traits = exports.operation = void 0;
|
|
3
|
+
exports.validateLookup = exports.custom_fields = exports.traits = exports.operation = void 0;
|
|
4
4
|
const actions_core_1 = require("@segment/actions-core");
|
|
5
5
|
exports.operation = {
|
|
6
6
|
label: 'Operation',
|
|
@@ -22,6 +22,15 @@ exports.traits = {
|
|
|
22
22
|
If multiple records are found, no updates will be made. Please use fields that result in unique records.`,
|
|
23
23
|
type: 'object'
|
|
24
24
|
};
|
|
25
|
+
exports.custom_fields = {
|
|
26
|
+
label: 'Other Fields',
|
|
27
|
+
description: `
|
|
28
|
+
Additional fields to send to Salesforce. On the left-hand side, input the Salesforce field API name. On the right-hand side, map the Segment field that contains the value.
|
|
29
|
+
|
|
30
|
+
This can include standard or custom fields. Custom fields must be predefined in your Salesforce account and the API field name should have __c appended.
|
|
31
|
+
`,
|
|
32
|
+
type: 'object'
|
|
33
|
+
};
|
|
25
34
|
const validateLookup = (payload) => {
|
|
26
35
|
if (payload.operation === 'update' || payload.operation === 'upsert') {
|
|
27
36
|
if (!payload.traits) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sf-properties.js","sourceRoot":"","sources":["../../../src/destinations/salesforce/sf-properties.ts"],"names":[],"mappings":";;;AACA,wDAAwD;AAE3C,QAAA,SAAS,GAAe;IACnC,KAAK,EAAE,WAAW;IAClB,WAAW,EACT,uHAAuH;IACzH,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,IAAI;IACd,OAAO,EAAE;QACP,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;QACpC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;QACpC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;KACrC;CACF,CAAA;AAEY,QAAA,MAAM,GAAe;IAChC,KAAK,EAAE,iBAAiB;IACxB,WAAW,EAAE;;;;2GAI4F;IACzG,IAAI,EAAE,QAAQ;CACf,CAAA;AAOM,MAAM,cAAc,GAAG,CAAC,OAAgB,EAAE,EAAE;IACjD,IAAI,OAAO,CAAC,SAAS,KAAK,QAAQ,IAAI,OAAO,CAAC,SAAS,KAAK,QAAQ,EAAE;QACpE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;YACnB,MAAM,IAAI,+BAAgB,CACxB,wDAAwD,EACxD,8BAA8B,EAC9B,GAAG,CACJ,CAAA;SACF;KACF;AACH,CAAC,CAAA;AAVY,QAAA,cAAc,kBAU1B"}
|
|
1
|
+
{"version":3,"file":"sf-properties.js","sourceRoot":"","sources":["../../../src/destinations/salesforce/sf-properties.ts"],"names":[],"mappings":";;;AACA,wDAAwD;AAE3C,QAAA,SAAS,GAAe;IACnC,KAAK,EAAE,WAAW;IAClB,WAAW,EACT,uHAAuH;IACzH,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,IAAI;IACd,OAAO,EAAE;QACP,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;QACpC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;QACpC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;KACrC;CACF,CAAA;AAEY,QAAA,MAAM,GAAe;IAChC,KAAK,EAAE,iBAAiB;IACxB,WAAW,EAAE;;;;2GAI4F;IACzG,IAAI,EAAE,QAAQ;CACf,CAAA;AAEY,QAAA,aAAa,GAAe;IACvC,KAAK,EAAE,cAAc;IACrB,WAAW,EAAE;;;;GAIZ;IACD,IAAI,EAAE,QAAQ;CACf,CAAA;AAOM,MAAM,cAAc,GAAG,CAAC,OAAgB,EAAE,EAAE;IACjD,IAAI,OAAO,CAAC,SAAS,KAAK,QAAQ,IAAI,OAAO,CAAC,SAAS,KAAK,QAAQ,EAAE;QACpE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;YACnB,MAAM,IAAI,+BAAgB,CACxB,wDAAwD,EACxD,8BAA8B,EAC9B,GAAG,CACJ,CAAA;SACF;KACF;AACH,CAAC,CAAA;AAVY,QAAA,cAAc,kBAU1B"}
|
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
import type { Payload as LeadPayload } from './lead/generated-types';
|
|
2
|
-
|
|
2
|
+
import type { Payload as CustomPayload } from './custom/generated-types';
|
|
3
|
+
export declare type GenericPayload = Partial<LeadPayload & CustomPayload>;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@segment/action-destinations",
|
|
3
3
|
"description": "Destination Actions engine and definitions.",
|
|
4
|
-
"version": "3.47.0",
|
|
4
|
+
"version": "3.47.1-alpha.0",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
7
7
|
"url": "https://github.com/segmentio/action-destinations",
|
|
@@ -62,5 +62,5 @@
|
|
|
62
62
|
"<rootDir>/test/setup-after-env.ts"
|
|
63
63
|
]
|
|
64
64
|
},
|
|
65
|
-
"gitHead": "
|
|
65
|
+
"gitHead": "14455a4bf387e2e2f1341c4dd70bd8410f01f292"
|
|
66
66
|
}
|