@segment/action-destinations 3.301.0 → 3.301.1-staging-4bd526d90.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/account2/generated-types.d.ts +32 -0
- package/dist/destinations/salesforce/account2/generated-types.js +3 -0
- package/dist/destinations/salesforce/account2/generated-types.js.map +1 -0
- package/dist/destinations/salesforce/account2/index.d.ts +5 -0
- package/dist/destinations/salesforce/account2/index.js +248 -0
- package/dist/destinations/salesforce/account2/index.js.map +1 -0
- package/dist/destinations/salesforce/cases2/generated-types.d.ts +17 -0
- package/dist/destinations/salesforce/cases2/generated-types.js +3 -0
- package/dist/destinations/salesforce/cases2/generated-types.js.map +1 -0
- package/dist/destinations/salesforce/cases2/index.d.ts +5 -0
- package/dist/destinations/salesforce/cases2/index.js +76 -0
- package/dist/destinations/salesforce/cases2/index.js.map +1 -0
- package/dist/destinations/salesforce/contact2/generated-types.d.ts +25 -0
- package/dist/destinations/salesforce/contact2/generated-types.js +3 -0
- package/dist/destinations/salesforce/contact2/generated-types.js.map +1 -0
- package/dist/destinations/salesforce/contact2/index.d.ts +5 -0
- package/dist/destinations/salesforce/contact2/index.js +192 -0
- package/dist/destinations/salesforce/contact2/index.js.map +1 -0
- package/dist/destinations/salesforce/customObject2/generated-types.d.ts +17 -0
- package/dist/destinations/salesforce/customObject2/generated-types.js +3 -0
- package/dist/destinations/salesforce/customObject2/generated-types.js.map +1 -0
- package/dist/destinations/salesforce/customObject2/index.d.ts +5 -0
- package/dist/destinations/salesforce/customObject2/index.js +97 -0
- package/dist/destinations/salesforce/customObject2/index.js.map +1 -0
- package/dist/destinations/salesforce/index.js +13 -1
- package/dist/destinations/salesforce/index.js.map +1 -1
- package/dist/destinations/salesforce/lead2/generated-types.d.ts +25 -0
- package/dist/destinations/salesforce/lead2/generated-types.js +3 -0
- package/dist/destinations/salesforce/lead2/generated-types.js.map +1 -0
- package/dist/destinations/salesforce/lead2/index.d.ts +5 -0
- package/dist/destinations/salesforce/lead2/index.js +200 -0
- package/dist/destinations/salesforce/lead2/index.js.map +1 -0
- package/dist/destinations/salesforce/opportunity2/generated-types.d.ts +21 -0
- package/dist/destinations/salesforce/opportunity2/generated-types.js +3 -0
- package/dist/destinations/salesforce/opportunity2/generated-types.js.map +1 -0
- package/dist/destinations/salesforce/opportunity2/index.d.ts +5 -0
- package/dist/destinations/salesforce/opportunity2/index.js +112 -0
- package/dist/destinations/salesforce/opportunity2/index.js.map +1 -0
- package/dist/destinations/salesforce/sf-operations.d.ts +1 -0
- package/dist/destinations/salesforce/sf-operations.js +20 -0
- package/dist/destinations/salesforce/sf-operations.js.map +1 -1
- package/dist/destinations/segment-profiles/sendGroup/index.js +0 -3
- package/dist/destinations/segment-profiles/sendGroup/index.js.map +1 -1
- package/dist/destinations/segment-profiles/sendIdentify/index.js +0 -3
- package/dist/destinations/segment-profiles/sendIdentify/index.js.map +1 -1
- package/dist/destinations/segment-profiles/sendSubscription/index.js +0 -3
- package/dist/destinations/segment-profiles/sendSubscription/index.js.map +1 -1
- package/dist/destinations/segment-profiles/sendTrack/index.js +0 -3
- package/dist/destinations/segment-profiles/sendTrack/index.js.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/salesforce/contact2/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export interface Payload {
|
|
2
|
+
recordMatcherOperator?: string;
|
|
3
|
+
enable_batching?: boolean;
|
|
4
|
+
batch_size?: number;
|
|
5
|
+
traits?: {
|
|
6
|
+
[k: string]: unknown;
|
|
7
|
+
};
|
|
8
|
+
bulkUpsertExternalId?: {
|
|
9
|
+
externalIdName?: string;
|
|
10
|
+
externalIdValue?: string;
|
|
11
|
+
};
|
|
12
|
+
bulkUpdateRecordId?: string;
|
|
13
|
+
customObjectName: string;
|
|
14
|
+
customFields?: {
|
|
15
|
+
[k: string]: unknown;
|
|
16
|
+
};
|
|
17
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generated-types.js","sourceRoot":"","sources":["../../../../src/destinations/salesforce/customObject2/generated-types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
+
}) : function(o, v) {
|
|
12
|
+
o["default"] = v;
|
|
13
|
+
});
|
|
14
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
+
if (mod && mod.__esModule) return mod;
|
|
16
|
+
var result = {};
|
|
17
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
+
__setModuleDefault(result, mod);
|
|
19
|
+
return result;
|
|
20
|
+
};
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
const actions_core_1 = require("@segment/actions-core");
|
|
23
|
+
const sf_properties_1 = require("../sf-properties");
|
|
24
|
+
const sf_operations_1 = __importStar(require("../sf-operations"));
|
|
25
|
+
const actions_core_2 = require("@segment/actions-core");
|
|
26
|
+
const OPERATIONS_WITH_CUSTOM_FIELDS = ['add', 'update', 'upsert'];
|
|
27
|
+
const action = {
|
|
28
|
+
title: 'Custom Object',
|
|
29
|
+
description: 'Create, update, or upsert records in any custom or standard object in Salesforce.',
|
|
30
|
+
syncMode: {
|
|
31
|
+
description: 'Define how the records from your destination will be synced.',
|
|
32
|
+
label: 'How to sync records',
|
|
33
|
+
default: 'add',
|
|
34
|
+
choices: [
|
|
35
|
+
{ label: 'Insert Records', value: 'add' },
|
|
36
|
+
{ label: 'Update Records', value: 'update' },
|
|
37
|
+
{ label: 'Upsert Records', value: 'upsert' },
|
|
38
|
+
{ label: 'Delete Records. Not available when using batching. Requests will result in errors.', value: 'delete' }
|
|
39
|
+
]
|
|
40
|
+
},
|
|
41
|
+
fields: {
|
|
42
|
+
recordMatcherOperator: sf_properties_1.recordMatcherOperator,
|
|
43
|
+
enable_batching: sf_properties_1.enable_batching,
|
|
44
|
+
batch_size: sf_properties_1.batch_size,
|
|
45
|
+
traits: sf_properties_1.traits,
|
|
46
|
+
bulkUpsertExternalId: sf_properties_1.bulkUpsertExternalId,
|
|
47
|
+
bulkUpdateRecordId: sf_properties_1.bulkUpdateRecordId,
|
|
48
|
+
customObjectName: {
|
|
49
|
+
label: 'Salesforce Object',
|
|
50
|
+
description: 'The API name of the Salesforce object that records will be added or updated within. This can be a standard or custom object. Custom objects must be predefined in your Salesforce account and should end with "__c".',
|
|
51
|
+
type: 'string',
|
|
52
|
+
required: true,
|
|
53
|
+
dynamic: true
|
|
54
|
+
},
|
|
55
|
+
customFields: sf_properties_1.customFields
|
|
56
|
+
},
|
|
57
|
+
dynamicFields: {
|
|
58
|
+
customObjectName: async (request, data) => {
|
|
59
|
+
const sf = new sf_operations_1.default(data.settings.instanceUrl, await sf_operations_1.generateSalesforceRequest(data.settings, request));
|
|
60
|
+
return sf.customObjectName();
|
|
61
|
+
}
|
|
62
|
+
},
|
|
63
|
+
perform: async (request, { settings, payload, syncMode }) => {
|
|
64
|
+
if (!syncMode) {
|
|
65
|
+
throw new actions_core_2.PayloadValidationError('Sync mode is required for this operation.');
|
|
66
|
+
}
|
|
67
|
+
if (OPERATIONS_WITH_CUSTOM_FIELDS.includes(syncMode) && !payload.customFields) {
|
|
68
|
+
throw new actions_core_2.PayloadValidationError('Custom fields are required for this operation.');
|
|
69
|
+
}
|
|
70
|
+
const sf = new sf_operations_1.default(settings.instanceUrl, await sf_operations_1.generateSalesforceRequest(settings, request));
|
|
71
|
+
if (syncMode === 'add') {
|
|
72
|
+
return await sf.createRecord(payload, payload.customObjectName);
|
|
73
|
+
}
|
|
74
|
+
sf_properties_1.validateLookup(payload);
|
|
75
|
+
if (syncMode === 'update') {
|
|
76
|
+
return await sf.updateRecord(payload, payload.customObjectName);
|
|
77
|
+
}
|
|
78
|
+
if (syncMode === 'upsert') {
|
|
79
|
+
return await sf.upsertRecord(payload, payload.customObjectName);
|
|
80
|
+
}
|
|
81
|
+
if (syncMode === 'delete') {
|
|
82
|
+
return await sf.deleteRecord(payload, payload.customObjectName);
|
|
83
|
+
}
|
|
84
|
+
},
|
|
85
|
+
performBatch: async (request, { settings, payload, syncMode }) => {
|
|
86
|
+
if (!syncMode) {
|
|
87
|
+
throw new actions_core_1.IntegrationError('syncMode is required', 'Undefined syncMode', 400);
|
|
88
|
+
}
|
|
89
|
+
if (OPERATIONS_WITH_CUSTOM_FIELDS.includes(syncMode) && !payload[0].customFields) {
|
|
90
|
+
throw new actions_core_2.PayloadValidationError('Custom fields are required for this operation.');
|
|
91
|
+
}
|
|
92
|
+
const sf = new sf_operations_1.default(settings.instanceUrl, await sf_operations_1.generateSalesforceRequest(settings, request));
|
|
93
|
+
return sf.bulkHandlerWithSyncMode(payload, payload[0].customObjectName, syncMode);
|
|
94
|
+
}
|
|
95
|
+
};
|
|
96
|
+
exports.default = action;
|
|
97
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/salesforce/customObject2/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,6 +10,12 @@ const customObject_1 = __importDefault(require("./customObject"));
|
|
|
10
10
|
const contact_1 = __importDefault(require("./contact"));
|
|
11
11
|
const account_1 = __importDefault(require("./account"));
|
|
12
12
|
const sf_operations_1 = require("./sf-operations");
|
|
13
|
+
const lead2_1 = __importDefault(require("./lead2"));
|
|
14
|
+
const cases2_1 = __importDefault(require("./cases2"));
|
|
15
|
+
const customObject2_1 = __importDefault(require("./customObject2"));
|
|
16
|
+
const account2_1 = __importDefault(require("./account2"));
|
|
17
|
+
const opportunity2_1 = __importDefault(require("./opportunity2"));
|
|
18
|
+
const contact2_1 = __importDefault(require("./contact2"));
|
|
13
19
|
const destination = {
|
|
14
20
|
name: 'Salesforce (Actions)',
|
|
15
21
|
slug: 'actions-salesforce',
|
|
@@ -76,7 +82,13 @@ const destination = {
|
|
|
76
82
|
cases: cases_1.default,
|
|
77
83
|
contact: contact_1.default,
|
|
78
84
|
opportunity: opportunity_1.default,
|
|
79
|
-
account: account_1.default
|
|
85
|
+
account: account_1.default,
|
|
86
|
+
lead2: lead2_1.default,
|
|
87
|
+
cases2: cases2_1.default,
|
|
88
|
+
customObject2: customObject2_1.default,
|
|
89
|
+
account2: account2_1.default,
|
|
90
|
+
opportunity2: opportunity2_1.default,
|
|
91
|
+
contact2: contact2_1.default
|
|
80
92
|
}
|
|
81
93
|
};
|
|
82
94
|
exports.default = destination;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/salesforce/index.ts"],"names":[],"mappings":";;;;;AAGA,oDAA2B;AAC3B,kDAAyB;AACzB,gEAAuC;AACvC,kEAAyC;AACzC,wDAA+B;AAC/B,wDAA+B;AAC/B,mDAA0D;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/salesforce/index.ts"],"names":[],"mappings":";;;;;AAGA,oDAA2B;AAC3B,kDAAyB;AACzB,gEAAuC;AACvC,kEAAyC;AACzC,wDAA+B;AAC/B,wDAA+B;AAC/B,mDAA0D;AAE1D,oDAA2B;AAC3B,sDAA6B;AAC7B,oEAA2C;AAC3C,0DAAiC;AACjC,kEAAyC;AACzC,0DAAiC;AAMjC,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;YACD,SAAS,EAAE;gBACT,KAAK,EAAE,kBAAkB;gBACzB,WAAW,EACT,mYAAmY;gBACrY,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;aACf;YACD,QAAQ,EAAE;gBACR,KAAK,EAAE,UAAU;gBACjB,WAAW,EACT,yRAAyR;gBAC3R,IAAI,EAAE,QAAQ;aACf;YACD,aAAa,EAAE;gBAEb,KAAK,EAAE,UAAU;gBACjB,WAAW,EACT,yRAAyR;gBAC3R,IAAI,EAAE,QAAQ;aACf;YACD,cAAc,EAAE;gBACd,KAAK,EAAE,gBAAgB;gBACvB,WAAW,EACT,sYAAsY;gBACxY,IAAI,EAAE,QAAQ;aACf;SACF;QACD,kBAAkB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE;YACxD,IAAI,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,aAAa,EAAE;gBAC/C,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,wCAAwB,CACpD,QAAQ,CAAC,QAAQ,EACjB,QAAQ,CAAC,aAAa,EACtB,QAAQ,CAAC,cAAc,EACvB,QAAQ,CAAC,SAAS,CACnB,CAAA;gBAED,OAAO,EAAE,WAAW,EAAE,CAAA;aACvB;YAGD,MAAM,OAAO,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,8BAA8B,CAAA;YACnG,MAAM,GAAG,GAAG,MAAM,OAAO,CAAuB,GAAG,OAAO,wBAAwB,EAAE;gBAClF,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,YAAY,EAAZ,sBAAY;QACZ,KAAK,EAAL,eAAK;QACL,OAAO,EAAP,iBAAO;QACP,WAAW,EAAX,qBAAW;QACX,OAAO,EAAP,iBAAO;QACP,KAAK,EAAL,eAAK;QACL,MAAM,EAAN,gBAAM;QACN,aAAa,EAAb,uBAAa;QACb,QAAQ,EAAR,kBAAQ;QACR,YAAY,EAAZ,sBAAY;QACZ,QAAQ,EAAR,kBAAQ;KACT;CACF,CAAA;AAED,kBAAe,WAAW,CAAA"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export interface Payload {
|
|
2
|
+
recordMatcherOperator?: string;
|
|
3
|
+
enable_batching?: boolean;
|
|
4
|
+
batch_size?: number;
|
|
5
|
+
traits?: {
|
|
6
|
+
[k: string]: unknown;
|
|
7
|
+
};
|
|
8
|
+
bulkUpsertExternalId?: {
|
|
9
|
+
externalIdName?: string;
|
|
10
|
+
externalIdValue?: string;
|
|
11
|
+
};
|
|
12
|
+
bulkUpdateRecordId?: string;
|
|
13
|
+
company?: string;
|
|
14
|
+
last_name?: string;
|
|
15
|
+
first_name?: string;
|
|
16
|
+
email?: string;
|
|
17
|
+
city?: string;
|
|
18
|
+
postal_code?: string;
|
|
19
|
+
country?: string;
|
|
20
|
+
street?: string;
|
|
21
|
+
state?: string;
|
|
22
|
+
customFields?: {
|
|
23
|
+
[k: string]: unknown;
|
|
24
|
+
};
|
|
25
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generated-types.js","sourceRoot":"","sources":["../../../../src/destinations/salesforce/lead2/generated-types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
+
}) : function(o, v) {
|
|
12
|
+
o["default"] = v;
|
|
13
|
+
});
|
|
14
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
+
if (mod && mod.__esModule) return mod;
|
|
16
|
+
var result = {};
|
|
17
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
+
__setModuleDefault(result, mod);
|
|
19
|
+
return result;
|
|
20
|
+
};
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
const actions_core_1 = require("@segment/actions-core");
|
|
23
|
+
const sf_properties_1 = require("../sf-properties");
|
|
24
|
+
const sf_operations_1 = __importStar(require("../sf-operations"));
|
|
25
|
+
const OBJECT_NAME = 'Lead';
|
|
26
|
+
const action = {
|
|
27
|
+
title: 'Lead',
|
|
28
|
+
description: 'Create, update, or upsert leads in Salesforce.',
|
|
29
|
+
defaultSubscription: 'type = "identify"',
|
|
30
|
+
syncMode: {
|
|
31
|
+
description: 'Define how the records from your destination will be synced.',
|
|
32
|
+
label: 'How to sync records',
|
|
33
|
+
default: 'add',
|
|
34
|
+
choices: [
|
|
35
|
+
{ label: 'Insert Records', value: 'add' },
|
|
36
|
+
{ label: 'Update Records', value: 'update' },
|
|
37
|
+
{ label: 'Upsert Records', value: 'upsert' },
|
|
38
|
+
{ label: 'Delete Records. Not available when using batching. Requests will result in errors.', value: 'delete' }
|
|
39
|
+
]
|
|
40
|
+
},
|
|
41
|
+
fields: {
|
|
42
|
+
recordMatcherOperator: sf_properties_1.recordMatcherOperator,
|
|
43
|
+
enable_batching: sf_properties_1.enable_batching,
|
|
44
|
+
batch_size: sf_properties_1.batch_size,
|
|
45
|
+
traits: sf_properties_1.traits,
|
|
46
|
+
bulkUpsertExternalId: sf_properties_1.bulkUpsertExternalId,
|
|
47
|
+
bulkUpdateRecordId: sf_properties_1.bulkUpdateRecordId,
|
|
48
|
+
company: {
|
|
49
|
+
label: 'Company',
|
|
50
|
+
description: "The lead's company. **This is required to create a lead.**",
|
|
51
|
+
type: 'string',
|
|
52
|
+
default: {
|
|
53
|
+
'@if': {
|
|
54
|
+
exists: { '@path': '$.traits.company' },
|
|
55
|
+
then: { '@path': '$.traits.company' },
|
|
56
|
+
else: { '@path': '$.properties.company' }
|
|
57
|
+
}
|
|
58
|
+
},
|
|
59
|
+
depends_on: sf_properties_1.hideIfDeleteOperation
|
|
60
|
+
},
|
|
61
|
+
last_name: {
|
|
62
|
+
label: 'Last Name',
|
|
63
|
+
description: "The lead's last name. **This is required to create a lead.**",
|
|
64
|
+
type: 'string',
|
|
65
|
+
default: {
|
|
66
|
+
'@if': {
|
|
67
|
+
exists: { '@path': '$.traits.last_name' },
|
|
68
|
+
then: { '@path': '$.traits.last_name' },
|
|
69
|
+
else: { '@path': '$.properties.last_name' }
|
|
70
|
+
}
|
|
71
|
+
},
|
|
72
|
+
depends_on: sf_properties_1.hideIfDeleteOperation
|
|
73
|
+
},
|
|
74
|
+
first_name: {
|
|
75
|
+
label: 'First Name',
|
|
76
|
+
description: "The lead's first name.",
|
|
77
|
+
type: 'string',
|
|
78
|
+
default: {
|
|
79
|
+
'@if': {
|
|
80
|
+
exists: { '@path': '$.traits.first_name' },
|
|
81
|
+
then: { '@path': '$.traits.first_name' },
|
|
82
|
+
else: { '@path': '$.properties.first_name' }
|
|
83
|
+
}
|
|
84
|
+
},
|
|
85
|
+
depends_on: sf_properties_1.hideIfDeleteOperation
|
|
86
|
+
},
|
|
87
|
+
email: {
|
|
88
|
+
label: 'Email',
|
|
89
|
+
description: "The lead's email address.",
|
|
90
|
+
type: 'string',
|
|
91
|
+
default: {
|
|
92
|
+
'@if': {
|
|
93
|
+
exists: { '@path': '$.traits.email' },
|
|
94
|
+
then: { '@path': '$.traits.email' },
|
|
95
|
+
else: { '@path': '$.properties.email' }
|
|
96
|
+
}
|
|
97
|
+
},
|
|
98
|
+
depends_on: sf_properties_1.hideIfDeleteOperation
|
|
99
|
+
},
|
|
100
|
+
city: {
|
|
101
|
+
label: 'City',
|
|
102
|
+
description: "City for the lead's address.",
|
|
103
|
+
type: 'string',
|
|
104
|
+
default: {
|
|
105
|
+
'@if': {
|
|
106
|
+
exists: { '@path': '$.traits.address.city' },
|
|
107
|
+
then: { '@path': '$.traits.address.city' },
|
|
108
|
+
else: { '@path': '$.properties.address.city' }
|
|
109
|
+
}
|
|
110
|
+
},
|
|
111
|
+
depends_on: sf_properties_1.hideIfDeleteOperation
|
|
112
|
+
},
|
|
113
|
+
postal_code: {
|
|
114
|
+
label: 'Postal Code',
|
|
115
|
+
description: "Postal code for the lead's address.",
|
|
116
|
+
type: 'string',
|
|
117
|
+
default: {
|
|
118
|
+
'@if': {
|
|
119
|
+
exists: { '@path': '$.traits.address.postal_code' },
|
|
120
|
+
then: { '@path': '$.traits.address.postal_code' },
|
|
121
|
+
else: { '@path': '$.properties.address.postal_code' }
|
|
122
|
+
}
|
|
123
|
+
},
|
|
124
|
+
depends_on: sf_properties_1.hideIfDeleteOperation
|
|
125
|
+
},
|
|
126
|
+
country: {
|
|
127
|
+
label: 'Country',
|
|
128
|
+
description: "Country for the lead's address.",
|
|
129
|
+
type: 'string',
|
|
130
|
+
default: {
|
|
131
|
+
'@if': {
|
|
132
|
+
exists: { '@path': '$.traits.address.country' },
|
|
133
|
+
then: { '@path': '$.traits.address.country' },
|
|
134
|
+
else: { '@path': '$.properties.address.country' }
|
|
135
|
+
}
|
|
136
|
+
},
|
|
137
|
+
depends_on: sf_properties_1.hideIfDeleteOperation
|
|
138
|
+
},
|
|
139
|
+
street: {
|
|
140
|
+
label: 'Street',
|
|
141
|
+
description: "Street number and name for the lead's address.",
|
|
142
|
+
type: 'string',
|
|
143
|
+
default: {
|
|
144
|
+
'@if': {
|
|
145
|
+
exists: { '@path': '$.traits.address.street' },
|
|
146
|
+
then: { '@path': '$.traits.address.street' },
|
|
147
|
+
else: { '@path': '$.properties.address.street' }
|
|
148
|
+
}
|
|
149
|
+
},
|
|
150
|
+
depends_on: sf_properties_1.hideIfDeleteOperation
|
|
151
|
+
},
|
|
152
|
+
state: {
|
|
153
|
+
label: 'State',
|
|
154
|
+
description: "State for the lead's address.",
|
|
155
|
+
type: 'string',
|
|
156
|
+
default: {
|
|
157
|
+
'@if': {
|
|
158
|
+
exists: { '@path': '$.traits.address.state' },
|
|
159
|
+
then: { '@path': '$.traits.address.state' },
|
|
160
|
+
else: { '@path': '$.properties.address.state' }
|
|
161
|
+
}
|
|
162
|
+
},
|
|
163
|
+
depends_on: sf_properties_1.hideIfDeleteOperation
|
|
164
|
+
},
|
|
165
|
+
customFields: sf_properties_1.customFields
|
|
166
|
+
},
|
|
167
|
+
perform: async (request, { settings, payload, syncMode }) => {
|
|
168
|
+
const sf = new sf_operations_1.default(settings.instanceUrl, await sf_operations_1.generateSalesforceRequest(settings, request));
|
|
169
|
+
if (syncMode === 'add') {
|
|
170
|
+
if (!payload.last_name) {
|
|
171
|
+
throw new actions_core_1.IntegrationError('Missing last_name value', 'Misconfigured required field', 400);
|
|
172
|
+
}
|
|
173
|
+
return await sf.createRecord(payload, OBJECT_NAME);
|
|
174
|
+
}
|
|
175
|
+
sf_properties_1.validateLookup(payload);
|
|
176
|
+
if (syncMode === 'update') {
|
|
177
|
+
return await sf.updateRecord(payload, OBJECT_NAME);
|
|
178
|
+
}
|
|
179
|
+
if (syncMode === 'upsert') {
|
|
180
|
+
if (!payload.last_name) {
|
|
181
|
+
throw new actions_core_1.IntegrationError('Missing last_name value', 'Misconfigured required field', 400);
|
|
182
|
+
}
|
|
183
|
+
return await sf.upsertRecord(payload, OBJECT_NAME);
|
|
184
|
+
}
|
|
185
|
+
if (syncMode === 'delete') {
|
|
186
|
+
return await sf.deleteRecord(payload, OBJECT_NAME);
|
|
187
|
+
}
|
|
188
|
+
},
|
|
189
|
+
performBatch: async (request, { settings, payload, syncMode }) => {
|
|
190
|
+
const sf = new sf_operations_1.default(settings.instanceUrl, await sf_operations_1.generateSalesforceRequest(settings, request));
|
|
191
|
+
if (syncMode === 'upsert') {
|
|
192
|
+
if (!payload[0].last_name) {
|
|
193
|
+
throw new actions_core_1.IntegrationError('Missing last_name value', 'Misconfigured required field', 400);
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
return sf.bulkHandlerWithSyncMode(payload, OBJECT_NAME, syncMode);
|
|
197
|
+
}
|
|
198
|
+
};
|
|
199
|
+
exports.default = action;
|
|
200
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/salesforce/lead2/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export interface Payload {
|
|
2
|
+
recordMatcherOperator?: string;
|
|
3
|
+
enable_batching?: boolean;
|
|
4
|
+
batch_size?: number;
|
|
5
|
+
traits?: {
|
|
6
|
+
[k: string]: unknown;
|
|
7
|
+
};
|
|
8
|
+
bulkUpsertExternalId?: {
|
|
9
|
+
externalIdName?: string;
|
|
10
|
+
externalIdValue?: string;
|
|
11
|
+
};
|
|
12
|
+
bulkUpdateRecordId?: string;
|
|
13
|
+
close_date?: string;
|
|
14
|
+
name?: string;
|
|
15
|
+
stage_name?: string;
|
|
16
|
+
amount?: string;
|
|
17
|
+
description?: string;
|
|
18
|
+
customFields?: {
|
|
19
|
+
[k: string]: unknown;
|
|
20
|
+
};
|
|
21
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generated-types.js","sourceRoot":"","sources":["../../../../src/destinations/salesforce/opportunity2/generated-types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
+
}) : function(o, v) {
|
|
12
|
+
o["default"] = v;
|
|
13
|
+
});
|
|
14
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
+
if (mod && mod.__esModule) return mod;
|
|
16
|
+
var result = {};
|
|
17
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
+
__setModuleDefault(result, mod);
|
|
19
|
+
return result;
|
|
20
|
+
};
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
const actions_core_1 = require("@segment/actions-core");
|
|
23
|
+
const sf_operations_1 = __importStar(require("../sf-operations"));
|
|
24
|
+
const sf_properties_1 = require("../sf-properties");
|
|
25
|
+
const OBJECT_NAME = 'Opportunity';
|
|
26
|
+
const action = {
|
|
27
|
+
title: 'Opportunity',
|
|
28
|
+
description: 'Create, update, or upsert opportunities in Salesforce.',
|
|
29
|
+
syncMode: {
|
|
30
|
+
description: 'Define how the records from your destination will be synced.',
|
|
31
|
+
label: 'How to sync records',
|
|
32
|
+
default: 'add',
|
|
33
|
+
choices: [
|
|
34
|
+
{ label: 'Insert Records', value: 'add' },
|
|
35
|
+
{ label: 'Update Records', value: 'update' },
|
|
36
|
+
{ label: 'Upsert Records', value: 'upsert' },
|
|
37
|
+
{ label: 'Delete Records. Not available when using batching. Requests will result in errors.', value: 'delete' }
|
|
38
|
+
]
|
|
39
|
+
},
|
|
40
|
+
fields: {
|
|
41
|
+
recordMatcherOperator: sf_properties_1.recordMatcherOperator,
|
|
42
|
+
enable_batching: sf_properties_1.enable_batching,
|
|
43
|
+
batch_size: sf_properties_1.batch_size,
|
|
44
|
+
traits: sf_properties_1.traits,
|
|
45
|
+
bulkUpsertExternalId: sf_properties_1.bulkUpsertExternalId,
|
|
46
|
+
bulkUpdateRecordId: sf_properties_1.bulkUpdateRecordId,
|
|
47
|
+
close_date: {
|
|
48
|
+
label: 'Close Date',
|
|
49
|
+
description: 'Date when the opportunity is expected to close. Use yyyy-MM-dd format. **This is required to create an opportunity.**',
|
|
50
|
+
type: 'string',
|
|
51
|
+
depends_on: sf_properties_1.hideIfDeleteOperation
|
|
52
|
+
},
|
|
53
|
+
name: {
|
|
54
|
+
label: 'Name',
|
|
55
|
+
description: 'A name for the opportunity. **This is required to create an opportunity.**',
|
|
56
|
+
type: 'string',
|
|
57
|
+
depends_on: sf_properties_1.hideIfDeleteOperation
|
|
58
|
+
},
|
|
59
|
+
stage_name: {
|
|
60
|
+
label: 'Stage Name',
|
|
61
|
+
description: 'Current stage of the opportunity. **This is required to create an opportunity.**',
|
|
62
|
+
type: 'string',
|
|
63
|
+
depends_on: sf_properties_1.hideIfDeleteOperation
|
|
64
|
+
},
|
|
65
|
+
amount: {
|
|
66
|
+
label: 'Amount',
|
|
67
|
+
description: 'Estimated total sale amount.',
|
|
68
|
+
type: 'string',
|
|
69
|
+
depends_on: sf_properties_1.hideIfDeleteOperation
|
|
70
|
+
},
|
|
71
|
+
description: {
|
|
72
|
+
label: 'Description',
|
|
73
|
+
description: 'A text description of the opportunity.',
|
|
74
|
+
type: 'string',
|
|
75
|
+
depends_on: sf_properties_1.hideIfDeleteOperation
|
|
76
|
+
},
|
|
77
|
+
customFields: sf_properties_1.customFields
|
|
78
|
+
},
|
|
79
|
+
perform: async (request, { settings, payload, syncMode }) => {
|
|
80
|
+
const sf = new sf_operations_1.default(settings.instanceUrl, await sf_operations_1.generateSalesforceRequest(settings, request));
|
|
81
|
+
if (syncMode === 'add') {
|
|
82
|
+
if (!payload.close_date || !payload.name || !payload.stage_name) {
|
|
83
|
+
throw new actions_core_1.IntegrationError('Missing close_date, name or stage_name value', 'Misconfigured required field', 400);
|
|
84
|
+
}
|
|
85
|
+
return await sf.createRecord(payload, OBJECT_NAME);
|
|
86
|
+
}
|
|
87
|
+
sf_properties_1.validateLookup(payload);
|
|
88
|
+
if (syncMode === 'update') {
|
|
89
|
+
return await sf.updateRecord(payload, OBJECT_NAME);
|
|
90
|
+
}
|
|
91
|
+
if (syncMode === 'upsert') {
|
|
92
|
+
if (!payload.close_date || !payload.name || !payload.stage_name) {
|
|
93
|
+
throw new actions_core_1.IntegrationError('Missing close_date, name or stage_name value', 'Misconfigured required field', 400);
|
|
94
|
+
}
|
|
95
|
+
return await sf.upsertRecord(payload, OBJECT_NAME);
|
|
96
|
+
}
|
|
97
|
+
if (syncMode === 'delete') {
|
|
98
|
+
return await sf.deleteRecord(payload, OBJECT_NAME);
|
|
99
|
+
}
|
|
100
|
+
},
|
|
101
|
+
performBatch: async (request, { settings, payload, syncMode }) => {
|
|
102
|
+
const sf = new sf_operations_1.default(settings.instanceUrl, await sf_operations_1.generateSalesforceRequest(settings, request));
|
|
103
|
+
if (syncMode === 'upsert') {
|
|
104
|
+
if (!payload[0].close_date || !payload[0].name || !payload[0].stage_name) {
|
|
105
|
+
throw new actions_core_1.IntegrationError('Missing close_date, name or stage_name value', 'Misconfigured required field', 400);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
return sf.bulkHandlerWithSyncMode(payload, OBJECT_NAME, syncMode);
|
|
109
|
+
}
|
|
110
|
+
};
|
|
111
|
+
exports.default = action;
|
|
112
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/salesforce/opportunity2/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,7 @@ export default class Salesforce {
|
|
|
14
14
|
upsertRecord: (payload: GenericPayload, sobject: string) => Promise<ModifiedResponse<unknown>>;
|
|
15
15
|
deleteRecord: (payload: GenericPayload, sobject: string) => Promise<ModifiedResponse<unknown>>;
|
|
16
16
|
bulkHandler: (payloads: GenericPayload[], sobject: string) => Promise<ModifiedResponse<unknown> | undefined>;
|
|
17
|
+
bulkHandlerWithSyncMode: (payloads: GenericPayload[], sobject: string, syncMode: string | undefined) => Promise<ModifiedResponse<unknown> | undefined>;
|
|
17
18
|
customObjectName: () => Promise<DynamicFieldResponse>;
|
|
18
19
|
private bulkInsert;
|
|
19
20
|
private bulkUpsert;
|
|
@@ -132,6 +132,26 @@ class Salesforce {
|
|
|
132
132
|
throw new actions_core_1.IntegrationError(`Unsupported operation: Bulk API does not support the delete operation`, 'Unsupported operation', 400);
|
|
133
133
|
}
|
|
134
134
|
};
|
|
135
|
+
this.bulkHandlerWithSyncMode = async (payloads, sobject, syncMode) => {
|
|
136
|
+
if (!payloads[0].enable_batching) {
|
|
137
|
+
throwBulkMismatchError();
|
|
138
|
+
}
|
|
139
|
+
if (syncMode === undefined) {
|
|
140
|
+
throw new actions_core_1.IntegrationError('syncMode is required', 'Undefined syncMode', 400);
|
|
141
|
+
}
|
|
142
|
+
if (syncMode === 'delete') {
|
|
143
|
+
throw new actions_core_1.IntegrationError(`Unsupported operation: Bulk API does not support the delete operation`, 'Unsupported operation', 400);
|
|
144
|
+
}
|
|
145
|
+
if (syncMode === 'upsert') {
|
|
146
|
+
return await this.bulkUpsert(payloads, sobject);
|
|
147
|
+
}
|
|
148
|
+
else if (syncMode === 'update') {
|
|
149
|
+
return await this.bulkUpdate(payloads, sobject);
|
|
150
|
+
}
|
|
151
|
+
else if (syncMode === 'add') {
|
|
152
|
+
return await this.bulkInsert(payloads, sobject);
|
|
153
|
+
}
|
|
154
|
+
};
|
|
135
155
|
this.customObjectName = async () => {
|
|
136
156
|
try {
|
|
137
157
|
const result = await this.request(`${this.instanceUrl}services/data/${exports.API_VERSION}/sobjects`, {
|