@segment/action-destinations 3.319.0 → 3.320.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 (33) hide show
  1. package/dist/destinations/salesforce/account2/generated-types.d.ts +32 -0
  2. package/dist/destinations/salesforce/account2/generated-types.js +3 -0
  3. package/dist/destinations/salesforce/account2/generated-types.js.map +1 -0
  4. package/dist/destinations/salesforce/account2/index.d.ts +5 -0
  5. package/dist/destinations/salesforce/account2/index.js +248 -0
  6. package/dist/destinations/salesforce/account2/index.js.map +1 -0
  7. package/dist/destinations/salesforce/cases2/generated-types.d.ts +17 -0
  8. package/dist/destinations/salesforce/cases2/generated-types.js +3 -0
  9. package/dist/destinations/salesforce/cases2/generated-types.js.map +1 -0
  10. package/dist/destinations/salesforce/cases2/index.d.ts +5 -0
  11. package/dist/destinations/salesforce/cases2/index.js +76 -0
  12. package/dist/destinations/salesforce/cases2/index.js.map +1 -0
  13. package/dist/destinations/salesforce/contact2/generated-types.d.ts +25 -0
  14. package/dist/destinations/salesforce/contact2/generated-types.js +3 -0
  15. package/dist/destinations/salesforce/contact2/generated-types.js.map +1 -0
  16. package/dist/destinations/salesforce/contact2/index.d.ts +5 -0
  17. package/dist/destinations/salesforce/contact2/index.js +192 -0
  18. package/dist/destinations/salesforce/contact2/index.js.map +1 -0
  19. package/dist/destinations/salesforce/customObject2/generated-types.d.ts +17 -0
  20. package/dist/destinations/salesforce/customObject2/generated-types.js +3 -0
  21. package/dist/destinations/salesforce/customObject2/generated-types.js.map +1 -0
  22. package/dist/destinations/salesforce/customObject2/index.d.ts +5 -0
  23. package/dist/destinations/salesforce/customObject2/index.js +97 -0
  24. package/dist/destinations/salesforce/customObject2/index.js.map +1 -0
  25. package/dist/destinations/salesforce/index.js +11 -1
  26. package/dist/destinations/salesforce/index.js.map +1 -1
  27. package/dist/destinations/salesforce/opportunity2/generated-types.d.ts +21 -0
  28. package/dist/destinations/salesforce/opportunity2/generated-types.js +3 -0
  29. package/dist/destinations/salesforce/opportunity2/generated-types.js.map +1 -0
  30. package/dist/destinations/salesforce/opportunity2/index.d.ts +5 -0
  31. package/dist/destinations/salesforce/opportunity2/index.js +112 -0
  32. package/dist/destinations/salesforce/opportunity2/index.js.map +1 -0
  33. package/package.json +2 -2
@@ -0,0 +1,32 @@
1
+ export interface Payload {
2
+ enable_batching?: boolean;
3
+ batch_size?: number;
4
+ recordMatcherOperator?: string;
5
+ traits?: {
6
+ [k: string]: unknown;
7
+ };
8
+ bulkUpsertExternalId?: {
9
+ externalIdName?: string;
10
+ externalIdValue?: string;
11
+ };
12
+ bulkUpdateRecordId?: string;
13
+ name?: string;
14
+ account_number?: string;
15
+ number_of_employees?: number;
16
+ billing_city?: string;
17
+ billing_postal_code?: string;
18
+ billing_country?: string;
19
+ billing_street?: string;
20
+ billing_state?: string;
21
+ shipping_city?: string;
22
+ shipping_postal_code?: string;
23
+ shipping_country?: string;
24
+ shipping_street?: string;
25
+ shipping_state?: string;
26
+ phone?: string;
27
+ description?: string;
28
+ website?: string;
29
+ customFields?: {
30
+ [k: string]: unknown;
31
+ };
32
+ }
@@ -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/salesforce/account2/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,248 @@
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 = 'Account';
26
+ const action = {
27
+ title: 'Account V2',
28
+ description: 'Create, update, or upsert accounts in Salesforce.',
29
+ defaultSubscription: 'type = "group"',
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
+ enable_batching: sf_properties_1.enable_batching2,
43
+ batch_size: sf_properties_1.batch_size2,
44
+ recordMatcherOperator: sf_properties_1.recordMatcherOperator2,
45
+ traits: sf_properties_1.traits2,
46
+ bulkUpsertExternalId: sf_properties_1.bulkUpsertExternalId2,
47
+ bulkUpdateRecordId: sf_properties_1.bulkUpdateRecordId2,
48
+ name: {
49
+ label: 'Name',
50
+ description: 'Name of the account. **This is required to create an account.**',
51
+ type: 'string',
52
+ default: {
53
+ '@path': '$.traits.name'
54
+ },
55
+ depends_on: sf_properties_1.hideIfDeleteSyncMode
56
+ },
57
+ account_number: {
58
+ label: 'Account Number',
59
+ description: 'Account number assigned to the account. This is not the unique, Salesforce-generated ID assigned during creation.',
60
+ type: 'string',
61
+ default: {
62
+ '@path': '$.groupId'
63
+ },
64
+ depends_on: sf_properties_1.hideIfDeleteSyncMode
65
+ },
66
+ number_of_employees: {
67
+ label: 'Number of employees',
68
+ description: 'Number of employees working at the company represented by the account.',
69
+ type: 'integer',
70
+ default: {
71
+ '@if': {
72
+ exists: { '@path': '$.traits.employees' },
73
+ then: { '@path': '$.traits.employees' },
74
+ else: { '@path': '$.properties.employees' }
75
+ }
76
+ },
77
+ depends_on: sf_properties_1.hideIfDeleteSyncMode
78
+ },
79
+ billing_city: {
80
+ label: 'Billing City',
81
+ description: 'City for the billing address of the account.',
82
+ type: 'string',
83
+ default: {
84
+ '@if': {
85
+ exists: { '@path': '$.traits.address.city' },
86
+ then: { '@path': '$.traits.address.city' },
87
+ else: { '@path': '$.properties.address.city' }
88
+ }
89
+ },
90
+ depends_on: sf_properties_1.hideIfDeleteSyncMode
91
+ },
92
+ billing_postal_code: {
93
+ label: 'Billing Postal Code',
94
+ description: 'Postal code for the billing address of the account.',
95
+ type: 'string',
96
+ default: {
97
+ '@if': {
98
+ exists: { '@path': '$.traits.address.postal_code' },
99
+ then: { '@path': '$.traits.address.postal_code' },
100
+ else: { '@path': '$.properties.address.postal_code' }
101
+ }
102
+ },
103
+ depends_on: sf_properties_1.hideIfDeleteSyncMode
104
+ },
105
+ billing_country: {
106
+ label: 'Billing Country',
107
+ description: 'Country for the billing address of the account.',
108
+ type: 'string',
109
+ default: {
110
+ '@if': {
111
+ exists: { '@path': '$.traits.address.country' },
112
+ then: { '@path': '$.traits.address.country' },
113
+ else: { '@path': '$.properties.address.country' }
114
+ }
115
+ },
116
+ depends_on: sf_properties_1.hideIfDeleteSyncMode
117
+ },
118
+ billing_street: {
119
+ label: 'Billing Street',
120
+ description: 'Street address for the billing address of the account.',
121
+ type: 'string',
122
+ default: {
123
+ '@if': {
124
+ exists: { '@path': '$.traits.address.street' },
125
+ then: { '@path': '$.traits.address.street' },
126
+ else: { '@path': '$.properties.address.street' }
127
+ }
128
+ },
129
+ depends_on: sf_properties_1.hideIfDeleteSyncMode
130
+ },
131
+ billing_state: {
132
+ label: 'Billing State',
133
+ description: 'State for the billing address of the account.',
134
+ type: 'string',
135
+ default: {
136
+ '@if': {
137
+ exists: { '@path': '$.traits.address.state' },
138
+ then: { '@path': '$.traits.address.state' },
139
+ else: { '@path': '$.properties.address.state' }
140
+ }
141
+ },
142
+ depends_on: sf_properties_1.hideIfDeleteSyncMode
143
+ },
144
+ shipping_city: {
145
+ label: 'Shipping City',
146
+ description: 'City for the shipping address of the account.',
147
+ type: 'string',
148
+ depends_on: sf_properties_1.hideIfDeleteSyncMode
149
+ },
150
+ shipping_postal_code: {
151
+ label: 'Shipping Postal Code',
152
+ description: 'Postal code for the shipping address of the account.',
153
+ type: 'string',
154
+ depends_on: sf_properties_1.hideIfDeleteSyncMode
155
+ },
156
+ shipping_country: {
157
+ label: 'Shipping Country',
158
+ description: 'Country for the shipping address of the account.',
159
+ type: 'string',
160
+ depends_on: sf_properties_1.hideIfDeleteSyncMode
161
+ },
162
+ shipping_street: {
163
+ label: 'Shipping Street',
164
+ description: 'Street address for the shipping address of the account.',
165
+ type: 'string',
166
+ depends_on: sf_properties_1.hideIfDeleteSyncMode
167
+ },
168
+ shipping_state: {
169
+ label: 'Shipping State',
170
+ description: 'State for the shipping address of the account.',
171
+ type: 'string',
172
+ depends_on: sf_properties_1.hideIfDeleteSyncMode
173
+ },
174
+ phone: {
175
+ label: 'Phone',
176
+ description: 'Phone number for the account.',
177
+ type: 'string',
178
+ default: {
179
+ '@if': {
180
+ exists: { '@path': '$.traits.phone' },
181
+ then: { '@path': '$.traits.phone' },
182
+ else: { '@path': '$.properties.phone' }
183
+ }
184
+ },
185
+ depends_on: sf_properties_1.hideIfDeleteSyncMode
186
+ },
187
+ description: {
188
+ label: 'Description',
189
+ description: 'Text description of the account.',
190
+ type: 'string',
191
+ default: {
192
+ '@if': {
193
+ exists: { '@path': '$.traits.description' },
194
+ then: { '@path': '$.traits.description' },
195
+ else: { '@path': '$.properties.description' }
196
+ }
197
+ },
198
+ depends_on: sf_properties_1.hideIfDeleteSyncMode
199
+ },
200
+ website: {
201
+ label: 'Website',
202
+ description: 'The website of the account.',
203
+ type: 'string',
204
+ default: {
205
+ '@if': {
206
+ exists: { '@path': '$.traits.website' },
207
+ then: { '@path': '$.traits.website' },
208
+ else: { '@path': '$.properties.website' }
209
+ }
210
+ },
211
+ depends_on: sf_properties_1.hideIfDeleteSyncMode
212
+ },
213
+ customFields: sf_properties_1.customFields2
214
+ },
215
+ perform: async (request, { settings, payload, syncMode }) => {
216
+ const sf = new sf_operations_1.default(settings.instanceUrl, await sf_operations_1.generateSalesforceRequest(settings, request));
217
+ if (syncMode === 'add') {
218
+ if (!payload.name) {
219
+ throw new actions_core_1.IntegrationError('Missing name value', 'Misconfigured required field', 400);
220
+ }
221
+ return await sf.createRecord(payload, OBJECT_NAME);
222
+ }
223
+ sf_properties_1.validateLookup2(syncMode, payload);
224
+ if (syncMode === 'update') {
225
+ return await sf.updateRecord(payload, OBJECT_NAME);
226
+ }
227
+ if (syncMode === 'upsert') {
228
+ if (!payload.name) {
229
+ throw new actions_core_1.IntegrationError('Missing name value', 'Misconfigured required field', 400);
230
+ }
231
+ return await sf.upsertRecord(payload, OBJECT_NAME);
232
+ }
233
+ if (syncMode === 'delete') {
234
+ return await sf.deleteRecord(payload, OBJECT_NAME);
235
+ }
236
+ },
237
+ performBatch: async (request, { settings, payload, syncMode }) => {
238
+ const sf = new sf_operations_1.default(settings.instanceUrl, await sf_operations_1.generateSalesforceRequest(settings, request));
239
+ if (syncMode === 'upsert') {
240
+ if (!payload[0].name) {
241
+ throw new actions_core_1.IntegrationError('Missing name value', 'Misconfigured required field', 400);
242
+ }
243
+ }
244
+ return sf.bulkHandlerWithSyncMode(payload, OBJECT_NAME, syncMode);
245
+ }
246
+ };
247
+ exports.default = action;
248
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/salesforce/account2/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
+ description?: string;
14
+ customFields?: {
15
+ [k: string]: unknown;
16
+ };
17
+ }
@@ -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/salesforce/cases2/generated-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ import type { 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,76 @@
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 sf_properties_1 = require("../sf-properties");
23
+ const sf_operations_1 = __importStar(require("../sf-operations"));
24
+ const OBJECT_NAME = 'Case';
25
+ const action = {
26
+ title: 'Case V2',
27
+ description: 'Create, update, or upsert cases in Salesforce.',
28
+ syncMode: {
29
+ description: 'Define how the records from your destination will be synced.',
30
+ label: 'How to sync records',
31
+ default: 'add',
32
+ choices: [
33
+ { label: 'Insert Records', value: 'add' },
34
+ { label: 'Update Records', value: 'update' },
35
+ { label: 'Upsert Records', value: 'upsert' },
36
+ { label: 'Delete Records. Not available when using batching. Requests will result in errors.', value: 'delete' }
37
+ ]
38
+ },
39
+ fields: {
40
+ recordMatcherOperator: sf_properties_1.recordMatcherOperator2,
41
+ enable_batching: sf_properties_1.enable_batching2,
42
+ batch_size: sf_properties_1.batch_size2,
43
+ traits: sf_properties_1.traits2,
44
+ bulkUpsertExternalId: sf_properties_1.bulkUpsertExternalId2,
45
+ bulkUpdateRecordId: sf_properties_1.bulkUpdateRecordId2,
46
+ description: {
47
+ label: 'Description',
48
+ description: 'A text description of the case.',
49
+ type: 'string',
50
+ depends_on: sf_properties_1.hideIfDeleteSyncMode
51
+ },
52
+ customFields: sf_properties_1.customFields2
53
+ },
54
+ perform: async (request, { settings, payload, syncMode }) => {
55
+ const sf = new sf_operations_1.default(settings.instanceUrl, await sf_operations_1.generateSalesforceRequest(settings, request));
56
+ if (syncMode === 'add') {
57
+ return await sf.createRecord(payload, OBJECT_NAME);
58
+ }
59
+ sf_properties_1.validateLookup2(syncMode, payload);
60
+ if (syncMode === 'update') {
61
+ return await sf.updateRecord(payload, OBJECT_NAME);
62
+ }
63
+ if (syncMode === 'upsert') {
64
+ return await sf.upsertRecord(payload, OBJECT_NAME);
65
+ }
66
+ if (syncMode === 'delete') {
67
+ return await sf.deleteRecord(payload, OBJECT_NAME);
68
+ }
69
+ },
70
+ performBatch: async (request, { settings, payload, syncMode }) => {
71
+ const sf = new sf_operations_1.default(settings.instanceUrl, await sf_operations_1.generateSalesforceRequest(settings, request));
72
+ return sf.bulkHandlerWithSyncMode(payload, OBJECT_NAME, syncMode);
73
+ }
74
+ };
75
+ exports.default = action;
76
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/salesforce/cases2/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAGA,oDAUyB;AACzB,kEAAwE;AAExE,MAAM,WAAW,GAAG,MAAM,CAAA;AAE1B,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,SAAS;IAChB,WAAW,EAAE,gDAAgD;IAC7D,QAAQ,EAAE;QACR,WAAW,EAAE,8DAA8D;QAC3E,KAAK,EAAE,qBAAqB;QAC5B,OAAO,EAAE,KAAK;QACd,OAAO,EAAE;YACP,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,KAAK,EAAE;YACzC,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,QAAQ,EAAE;YAC5C,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,QAAQ,EAAE;YAC5C,EAAE,KAAK,EAAE,oFAAoF,EAAE,KAAK,EAAE,QAAQ,EAAE;SACjH;KACF;IACD,MAAM,EAAE;QACN,qBAAqB,EAAE,sCAAsB;QAC7C,eAAe,EAAE,gCAAgB;QACjC,UAAU,EAAE,2BAAW;QACvB,MAAM,EAAE,uBAAO;QACf,oBAAoB,EAAE,qCAAqB;QAC3C,kBAAkB,EAAE,mCAAmB;QACvC,WAAW,EAAE;YACX,KAAK,EAAE,aAAa;YACpB,WAAW,EAAE,iCAAiC;YAC9C,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,oCAAoB;SACjC;QACD,YAAY,EAAE,6BAAa;KAC5B;IACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC1D,MAAM,EAAE,GAAe,IAAI,uBAAU,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,yCAAyB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAA;QAE/G,IAAI,QAAQ,KAAK,KAAK,EAAE;YACtB,OAAO,MAAM,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;SACnD;QAED,+BAAe,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QAElC,IAAI,QAAQ,KAAK,QAAQ,EAAE;YACzB,OAAO,MAAM,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;SACnD;QAED,IAAI,QAAQ,KAAK,QAAQ,EAAE;YACzB,OAAO,MAAM,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;SACnD;QAED,IAAI,QAAQ,KAAK,QAAQ,EAAE;YACzB,OAAO,MAAM,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;SACnD;IACH,CAAC;IACD,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC/D,MAAM,EAAE,GAAe,IAAI,uBAAU,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,yCAAyB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAA;QAE/G,OAAO,EAAE,CAAC,uBAAuB,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAA;IACnE,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,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
+ last_name?: string;
14
+ first_name?: string;
15
+ account_id?: string;
16
+ email?: string;
17
+ mailing_city?: string;
18
+ mailing_postal_code?: string;
19
+ mailing_country?: string;
20
+ mailing_street?: string;
21
+ mailing_state?: string;
22
+ customFields?: {
23
+ [k: string]: unknown;
24
+ };
25
+ }
@@ -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/salesforce/contact2/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,192 @@
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 = 'Contact';
26
+ const action = {
27
+ title: 'Contact V2',
28
+ description: 'Create, update, or upsert contacts 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.recordMatcherOperator2,
42
+ enable_batching: sf_properties_1.enable_batching2,
43
+ batch_size: sf_properties_1.batch_size2,
44
+ traits: sf_properties_1.traits2,
45
+ bulkUpsertExternalId: sf_properties_1.bulkUpsertExternalId2,
46
+ bulkUpdateRecordId: sf_properties_1.bulkUpdateRecordId2,
47
+ last_name: {
48
+ label: 'Last Name',
49
+ description: "The contact's last name up to 80 characters. **This is required to create a contact.**",
50
+ type: 'string',
51
+ default: {
52
+ '@if': {
53
+ exists: { '@path': '$.traits.last_name' },
54
+ then: { '@path': '$.traits.last_name' },
55
+ else: { '@path': '$.properties.last_name' }
56
+ }
57
+ },
58
+ depends_on: sf_properties_1.hideIfDeleteSyncMode
59
+ },
60
+ first_name: {
61
+ label: 'First Name',
62
+ description: "The contact's first name up to 40 characters.",
63
+ type: 'string',
64
+ default: {
65
+ '@if': {
66
+ exists: { '@path': '$.traits.first_name' },
67
+ then: { '@path': '$.traits.first_name' },
68
+ else: { '@path': '$.properties.first_name' }
69
+ }
70
+ },
71
+ depends_on: sf_properties_1.hideIfDeleteSyncMode
72
+ },
73
+ account_id: {
74
+ label: 'Account ID',
75
+ description: 'The ID of the account that this contact is associated with. This is the Salesforce-generated ID assigned to the account during creation (i.e. 0018c00002CDThnAAH).',
76
+ type: 'string',
77
+ depends_on: sf_properties_1.hideIfDeleteSyncMode
78
+ },
79
+ email: {
80
+ label: 'Email',
81
+ description: "The contact's email address.",
82
+ type: 'string',
83
+ default: {
84
+ '@if': {
85
+ exists: { '@path': '$.traits.email' },
86
+ then: { '@path': '$.traits.email' },
87
+ else: { '@path': '$.properties.email' }
88
+ }
89
+ },
90
+ depends_on: sf_properties_1.hideIfDeleteSyncMode
91
+ },
92
+ mailing_city: {
93
+ label: 'Mailing City',
94
+ description: "City for the contact's mailing address.",
95
+ type: 'string',
96
+ default: {
97
+ '@if': {
98
+ exists: { '@path': '$.traits.address.city' },
99
+ then: { '@path': '$.traits.address.city' },
100
+ else: { '@path': '$.properties.address.city' }
101
+ }
102
+ },
103
+ depends_on: sf_properties_1.hideIfDeleteSyncMode
104
+ },
105
+ mailing_postal_code: {
106
+ label: 'Mailing Postal Code',
107
+ description: "Postal Code for the contact's mailing address.",
108
+ type: 'string',
109
+ default: {
110
+ '@if': {
111
+ exists: { '@path': '$.traits.address.postal_code' },
112
+ then: { '@path': '$.traits.address.postal_code' },
113
+ else: { '@path': '$.properties.address.postal_code' }
114
+ }
115
+ },
116
+ depends_on: sf_properties_1.hideIfDeleteSyncMode
117
+ },
118
+ mailing_country: {
119
+ label: 'Mailing Country',
120
+ description: "Country for the contact's mailing address.",
121
+ type: 'string',
122
+ default: {
123
+ '@if': {
124
+ exists: { '@path': '$.traits.address.country' },
125
+ then: { '@path': '$.traits.address.country' },
126
+ else: { '@path': '$.properties.address.country' }
127
+ }
128
+ },
129
+ depends_on: sf_properties_1.hideIfDeleteSyncMode
130
+ },
131
+ mailing_street: {
132
+ label: 'Mailing Street',
133
+ description: "Street number and name for the contact's mailing address.",
134
+ type: 'string',
135
+ default: {
136
+ '@if': {
137
+ exists: { '@path': '$.traits.address.street' },
138
+ then: { '@path': '$.traits.address.street' },
139
+ else: { '@path': '$.properties.address.street' }
140
+ }
141
+ },
142
+ depends_on: sf_properties_1.hideIfDeleteSyncMode
143
+ },
144
+ mailing_state: {
145
+ label: 'Mailing State',
146
+ description: "State for the contact's mailing address.",
147
+ type: 'string',
148
+ default: {
149
+ '@if': {
150
+ exists: { '@path': '$.traits.address.state' },
151
+ then: { '@path': '$.traits.address.state' },
152
+ else: { '@path': '$.properties.address.state' }
153
+ }
154
+ },
155
+ depends_on: sf_properties_1.hideIfDeleteSyncMode
156
+ },
157
+ customFields: sf_properties_1.customFields2
158
+ },
159
+ perform: async (request, { settings, payload, syncMode }) => {
160
+ const sf = new sf_operations_1.default(settings.instanceUrl, await sf_operations_1.generateSalesforceRequest(settings, request));
161
+ if (syncMode === 'add') {
162
+ if (!payload.last_name) {
163
+ throw new actions_core_1.IntegrationError('Missing last_name value', 'Misconfigured required field', 400);
164
+ }
165
+ return await sf.createRecord(payload, OBJECT_NAME);
166
+ }
167
+ sf_properties_1.validateLookup2(syncMode, payload);
168
+ if (syncMode === 'update') {
169
+ return await sf.updateRecord(payload, OBJECT_NAME);
170
+ }
171
+ if (syncMode === 'upsert') {
172
+ if (!payload.last_name) {
173
+ throw new actions_core_1.IntegrationError('Missing last_name value', 'Misconfigured required field', 400);
174
+ }
175
+ return await sf.upsertRecord(payload, OBJECT_NAME);
176
+ }
177
+ if (syncMode === 'delete') {
178
+ return await sf.deleteRecord(payload, OBJECT_NAME);
179
+ }
180
+ },
181
+ performBatch: async (request, { settings, payload, syncMode }) => {
182
+ const sf = new sf_operations_1.default(settings.instanceUrl, await sf_operations_1.generateSalesforceRequest(settings, request));
183
+ if (syncMode === 'upsert') {
184
+ if (!payload[0].last_name) {
185
+ throw new actions_core_1.IntegrationError('Missing last_name value', 'Misconfigured required field', 400);
186
+ }
187
+ }
188
+ return sf.bulkHandlerWithSyncMode(payload, OBJECT_NAME, syncMode);
189
+ }
190
+ };
191
+ exports.default = action;
192
+ //# sourceMappingURL=index.js.map
@@ -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,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/salesforce/customObject2/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,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 V2',
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.recordMatcherOperator2,
43
+ enable_batching: sf_properties_1.enable_batching2,
44
+ batch_size: sf_properties_1.batch_size2,
45
+ traits: sf_properties_1.traits2,
46
+ bulkUpsertExternalId: sf_properties_1.bulkUpsertExternalId2,
47
+ bulkUpdateRecordId: sf_properties_1.bulkUpdateRecordId2,
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.customFields2
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.validateLookup2(syncMode, 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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"}
@@ -12,6 +12,11 @@ const contact_1 = __importDefault(require("./contact"));
12
12
  const account_1 = __importDefault(require("./account"));
13
13
  const sf_operations_1 = require("./sf-operations");
14
14
  const lead2_1 = __importDefault(require("./lead2"));
15
+ const contact2_1 = __importDefault(require("./contact2"));
16
+ const cases2_1 = __importDefault(require("./cases2"));
17
+ const opportunity2_1 = __importDefault(require("./opportunity2"));
18
+ const account2_1 = __importDefault(require("./account2"));
19
+ const customObject2_1 = __importDefault(require("./customObject2"));
15
20
  const destination = {
16
21
  name: 'Salesforce (Actions)',
17
22
  slug: 'actions-salesforce',
@@ -89,7 +94,12 @@ const destination = {
89
94
  contact: contact_1.default,
90
95
  opportunity: opportunity_1.default,
91
96
  account: account_1.default,
92
- lead2: lead2_1.default
97
+ lead2: lead2_1.default,
98
+ customObject2: customObject2_1.default,
99
+ account2: account2_1.default,
100
+ opportunity2: opportunity2_1.default,
101
+ contact2: contact2_1.default,
102
+ cases2: cases2_1.default
93
103
  }
94
104
  };
95
105
  exports.default = destination;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/salesforce/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/salesforce/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,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/salesforce/opportunity2/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,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 V2',
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.recordMatcherOperator2,
42
+ enable_batching: sf_properties_1.enable_batching2,
43
+ batch_size: sf_properties_1.batch_size2,
44
+ traits: sf_properties_1.traits2,
45
+ bulkUpsertExternalId: sf_properties_1.bulkUpsertExternalId2,
46
+ bulkUpdateRecordId: sf_properties_1.bulkUpdateRecordId2,
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.hideIfDeleteSyncMode
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.hideIfDeleteSyncMode
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.hideIfDeleteSyncMode
64
+ },
65
+ amount: {
66
+ label: 'Amount',
67
+ description: 'Estimated total sale amount.',
68
+ type: 'string',
69
+ depends_on: sf_properties_1.hideIfDeleteSyncMode
70
+ },
71
+ description: {
72
+ label: 'Description',
73
+ description: 'A text description of the opportunity.',
74
+ type: 'string',
75
+ depends_on: sf_properties_1.hideIfDeleteSyncMode
76
+ },
77
+ customFields: sf_properties_1.customFields2
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.validateLookup2(syncMode, 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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"}
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.319.0",
4
+ "version": "3.320.0",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/segmentio/action-destinations",
@@ -87,5 +87,5 @@
87
87
  "__tests__/__helpers__/"
88
88
  ]
89
89
  },
90
- "gitHead": "d0f41280cc37c938c66e403006e93c70cc1f0818"
90
+ "gitHead": "3d4f1679221f52ca88d686202ac8e65f333393e7"
91
91
  }