@segment/action-destinations 3.54.2 → 3.55.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/dist/destinations/facebook-conversions-api/addToCart/generated-types.d.ts +3 -0
  2. package/dist/destinations/facebook-conversions-api/addToCart/index.js +6 -10
  3. package/dist/destinations/facebook-conversions-api/addToCart/index.js.map +1 -1
  4. package/dist/destinations/facebook-conversions-api/custom/index.js +1 -5
  5. package/dist/destinations/facebook-conversions-api/custom/index.js.map +1 -1
  6. package/dist/destinations/facebook-conversions-api/fb-capi-properties.d.ts +8 -0
  7. package/dist/destinations/facebook-conversions-api/fb-capi-properties.js +26 -5
  8. package/dist/destinations/facebook-conversions-api/fb-capi-properties.js.map +1 -1
  9. package/dist/destinations/facebook-conversions-api/initiateCheckout/generated-types.d.ts +3 -0
  10. package/dist/destinations/facebook-conversions-api/initiateCheckout/index.js +6 -10
  11. package/dist/destinations/facebook-conversions-api/initiateCheckout/index.js.map +1 -1
  12. package/dist/destinations/facebook-conversions-api/pageView/generated-types.d.ts +3 -0
  13. package/dist/destinations/facebook-conversions-api/pageView/index.js +2 -1
  14. package/dist/destinations/facebook-conversions-api/pageView/index.js.map +1 -1
  15. package/dist/destinations/facebook-conversions-api/purchase/generated-types.d.ts +3 -0
  16. package/dist/destinations/facebook-conversions-api/purchase/index.js +6 -10
  17. package/dist/destinations/facebook-conversions-api/purchase/index.js.map +1 -1
  18. package/dist/destinations/facebook-conversions-api/search/generated-types.d.ts +3 -0
  19. package/dist/destinations/facebook-conversions-api/search/index.js +6 -10
  20. package/dist/destinations/facebook-conversions-api/search/index.js.map +1 -1
  21. package/dist/destinations/facebook-conversions-api/viewContent/generated-types.d.ts +3 -0
  22. package/dist/destinations/facebook-conversions-api/viewContent/index.js +6 -10
  23. package/dist/destinations/facebook-conversions-api/viewContent/index.js.map +1 -1
  24. package/dist/destinations/salesforce/contact/generated-types.d.ts +17 -0
  25. package/dist/destinations/salesforce/contact/generated-types.js +3 -0
  26. package/dist/destinations/salesforce/contact/generated-types.js.map +1 -0
  27. package/dist/destinations/salesforce/contact/index.d.ts +5 -0
  28. package/dist/destinations/salesforce/contact/index.js +134 -0
  29. package/dist/destinations/salesforce/contact/index.js.map +1 -0
  30. package/dist/destinations/salesforce/index.js +2 -0
  31. package/dist/destinations/salesforce/index.js.map +1 -1
  32. package/dist/destinations/salesforce/sf-object-to-shape.js +14 -1
  33. package/dist/destinations/salesforce/sf-object-to-shape.js.map +1 -1
  34. package/dist/destinations/salesforce/sf-properties.js +4 -2
  35. package/dist/destinations/salesforce/sf-properties.js.map +1 -1
  36. package/dist/destinations/salesforce/sf-types.d.ts +13 -2
  37. package/package.json +4 -4
@@ -34,4 +34,7 @@ export interface Payload {
34
34
  event_id?: string;
35
35
  event_source_url?: string;
36
36
  value?: number;
37
+ custom_data?: {
38
+ [k: string]: unknown;
39
+ };
37
40
  }
@@ -37,7 +37,8 @@ const action = {
37
37
  currency: fb_capi_properties_1.currency,
38
38
  event_id: fb_capi_properties_1.event_id,
39
39
  event_source_url: fb_capi_properties_1.event_source_url,
40
- value: { ...fb_capi_properties_1.value, default: { '@path': '$.properties.price' } }
40
+ value: { ...fb_capi_properties_1.value, default: { '@path': '$.properties.price' } },
41
+ custom_data: fb_capi_properties_1.custom_data
41
42
  },
42
43
  perform: (request, { payload, settings }) => {
43
44
  if (payload.currency && !constants_1.CURRENCY_ISO_CODES.has(payload.currency)) {
@@ -49,16 +50,10 @@ const action = {
49
50
  if (payload.action_source === 'website' && payload.user_data.client_user_agent === undefined) {
50
51
  throw new actions_core_1.IntegrationError('If action source is "Website" then client_user_agent must be defined', 'Misconfigured required field', 400);
51
52
  }
52
- const valid_delivery_categories = ['in_store', 'curbside', 'home_delivery'];
53
53
  if (payload.contents) {
54
- payload.contents.forEach((obj, index) => {
55
- if (!obj.id) {
56
- throw new actions_core_1.IntegrationError("Contents objects must include an 'id' parameter.", 'Misconfigured required field', 400);
57
- }
58
- if (obj.delivery_category && !valid_delivery_categories.includes(obj.delivery_category)) {
59
- throw new actions_core_1.IntegrationError(`contents[${index}].delivery_category must be one of {in_store, home_delivery, curbside}.`, 'Misconfigured field', 400);
60
- }
61
- });
54
+ const err = fb_capi_properties_1.validateContents(payload.contents);
55
+ if (err)
56
+ throw err;
62
57
  }
63
58
  return request(`https://graph.facebook.com/v${constants_1.API_VERSION}/${settings.pixelId}/events`, {
64
59
  method: 'POST',
@@ -72,6 +67,7 @@ const action = {
72
67
  action_source: payload.action_source,
73
68
  user_data: fb_capi_user_data_1.hash_user_data({ user_data: payload.user_data }),
74
69
  custom_data: {
70
+ ...payload.custom_data,
75
71
  currency: payload.currency,
76
72
  value: payload.value,
77
73
  content_ids: payload.content_ids,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/facebook-conversions-api/addToCart/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/facebook-conversions-api/addToCart/index.ts"],"names":[],"mappings":"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"}
@@ -20,11 +20,7 @@ const action = {
20
20
  },
21
21
  event_time: { ...fb_capi_properties_1.event_time, required: true },
22
22
  user_data: fb_capi_user_data_1.user_data_field,
23
- custom_data: {
24
- label: 'Custom Data',
25
- description: 'The custom data object which can be used to pass custom properties. See [here](https://developers.facebook.com/docs/marketing-api/conversions-api/parameters/custom-data) for more information',
26
- type: 'object'
27
- },
23
+ custom_data: fb_capi_properties_1.custom_data,
28
24
  event_id: fb_capi_properties_1.event_id,
29
25
  event_source_url: fb_capi_properties_1.event_source_url
30
26
  },
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/facebook-conversions-api/custom/index.ts"],"names":[],"mappings":";;AAAA,wDAA0E;AAC1E,8DAA6F;AAC7F,4DAAsE;AAGtE,4CAA0C;AAC1C,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,cAAc;IACrB,WAAW,EAAE,+BAA+B;IAC5C,MAAM,EAAE;QACN,aAAa,EAAE,EAAE,GAAG,kCAAa,EAAE,QAAQ,EAAE,IAAI,EAAE;QACnD,UAAU,EAAE;YACV,KAAK,EAAE,YAAY;YACnB,WAAW,EAAE,uBAAuB;YACpC,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE;gBACP,OAAO,EAAE,SAAS;aACnB;SACF;QACD,UAAU,EAAE,EAAE,GAAG,+BAAU,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC7C,SAAS,EAAE,mCAAe;QAC1B,WAAW,EAAE;YACX,KAAK,EAAE,aAAa;YACpB,WAAW,EACT,gMAAgM;YAClM,IAAI,EAAE,QAAQ;SACf;QACD,QAAQ,EAAE,6BAAQ;QAClB,gBAAgB,EAAE,qCAAgB;KACnC;IACD,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC1C,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;YACtB,MAAM,IAAI,+BAAgB,CAAC,8CAA8C,EAAE,8BAA8B,EAAE,GAAG,CAAC,CAAA;SAChH;QAED,IACE,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,OAAO,CAAC,CAAC,QAAQ,CACjG,OAAO,CAAC,aAAa,CACtB,EACD;YACA,MAAM,IAAI,+BAAgB,CACxB,0EAA0E,EAC1E,8BAA8B,EAC9B,GAAG,CACJ,CAAA;SACF;QAED,OAAO,OAAO,CAAC,+BAA+B,uBAAW,IAAI,QAAQ,CAAC,OAAO,SAAS,EAAE;YACtF,MAAM,EAAE,MAAM;YACd,IAAI,EAAE;gBACJ,IAAI,EAAE;oBACJ;wBACE,UAAU,EAAE,OAAO,CAAC,UAAU;wBAC9B,UAAU,EAAE,OAAO,CAAC,UAAU;wBAC9B,aAAa,EAAE,OAAO,CAAC,aAAa;wBACpC,QAAQ,EAAE,OAAO,CAAC,QAAQ;wBAC1B,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;wBAC1C,SAAS,EAAE,kCAAc,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC;wBAC3D,WAAW,EAAE,OAAO,CAAC,WAAW;qBACjC;iBACF;aACF;SACF,CAAC,CAAA;IACJ,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/facebook-conversions-api/custom/index.ts"],"names":[],"mappings":";;AAAA,wDAA0E;AAC1E,8DAA0G;AAC1G,4DAAsE;AAGtE,4CAA0C;AAC1C,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,cAAc;IACrB,WAAW,EAAE,+BAA+B;IAC5C,MAAM,EAAE;QACN,aAAa,EAAE,EAAE,GAAG,kCAAa,EAAE,QAAQ,EAAE,IAAI,EAAE;QACnD,UAAU,EAAE;YACV,KAAK,EAAE,YAAY;YACnB,WAAW,EAAE,uBAAuB;YACpC,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE;gBACP,OAAO,EAAE,SAAS;aACnB;SACF;QACD,UAAU,EAAE,EAAE,GAAG,+BAAU,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC7C,SAAS,EAAE,mCAAe;QAC1B,WAAW,EAAE,gCAAW;QACxB,QAAQ,EAAE,6BAAQ;QAClB,gBAAgB,EAAE,qCAAgB;KACnC;IACD,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC1C,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;YACtB,MAAM,IAAI,+BAAgB,CAAC,8CAA8C,EAAE,8BAA8B,EAAE,GAAG,CAAC,CAAA;SAChH;QAED,IACE,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,OAAO,CAAC,CAAC,QAAQ,CACjG,OAAO,CAAC,aAAa,CACtB,EACD;YACA,MAAM,IAAI,+BAAgB,CACxB,0EAA0E,EAC1E,8BAA8B,EAC9B,GAAG,CACJ,CAAA;SACF;QAED,OAAO,OAAO,CAAC,+BAA+B,uBAAW,IAAI,QAAQ,CAAC,OAAO,SAAS,EAAE;YACtF,MAAM,EAAE,MAAM;YACd,IAAI,EAAE;gBACJ,IAAI,EAAE;oBACJ;wBACE,UAAU,EAAE,OAAO,CAAC,UAAU;wBAC9B,UAAU,EAAE,OAAO,CAAC,UAAU;wBAC9B,aAAa,EAAE,OAAO,CAAC,aAAa;wBACpC,QAAQ,EAAE,OAAO,CAAC,QAAQ;wBAC1B,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;wBAC1C,SAAS,EAAE,kCAAc,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC;wBAC3D,WAAW,EAAE,OAAO,CAAC,WAAW;qBACjC;iBACF;aACF;SACF,CAAC,CAAA;IACJ,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
@@ -1,4 +1,10 @@
1
1
  import { InputField } from '@segment/actions-core/src/destination-kit/types';
2
+ import { IntegrationError } from '@segment/actions-core';
3
+ declare type Content = {
4
+ id?: string;
5
+ delivery_category?: string;
6
+ };
7
+ export declare const custom_data: InputField;
2
8
  export declare const currency: InputField;
3
9
  export declare const value: InputField;
4
10
  export declare const content_category: InputField;
@@ -6,8 +12,10 @@ export declare const content_ids: InputField;
6
12
  export declare const content_name: InputField;
7
13
  export declare const content_type: InputField;
8
14
  export declare const contents: InputField;
15
+ export declare const validateContents: (contents: Content[]) => IntegrationError | false;
9
16
  export declare const num_items: InputField;
10
17
  export declare const event_time: InputField;
11
18
  export declare const action_source: InputField;
12
19
  export declare const event_source_url: InputField;
13
20
  export declare const event_id: InputField;
21
+ export {};
@@ -1,6 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.event_id = exports.event_source_url = exports.action_source = exports.event_time = exports.num_items = exports.contents = exports.content_type = exports.content_name = exports.content_ids = exports.content_category = exports.value = exports.currency = void 0;
3
+ exports.event_id = exports.event_source_url = exports.action_source = exports.event_time = exports.num_items = exports.validateContents = exports.contents = exports.content_type = exports.content_name = exports.content_ids = exports.content_category = exports.value = exports.currency = exports.custom_data = void 0;
4
+ const actions_core_1 = require("@segment/actions-core");
5
+ exports.custom_data = {
6
+ label: 'Custom Data',
7
+ description: 'The custom data object which can be used to pass custom properties. See [here](https://developers.facebook.com/docs/marketing-api/conversions-api/parameters/custom-data) for more information',
8
+ type: 'object',
9
+ defaultObjectUI: 'keyvalue'
10
+ };
4
11
  exports.currency = {
5
12
  label: 'Currency',
6
13
  description: 'The currency for the value specified.',
@@ -12,7 +19,7 @@ exports.currency = {
12
19
  exports.value = {
13
20
  label: 'Value',
14
21
  description: 'The value of a user performing this event to the business.',
15
- type: 'number',
22
+ type: 'number'
16
23
  };
17
24
  exports.content_category = {
18
25
  label: 'Content Category',
@@ -23,7 +30,7 @@ exports.content_ids = {
23
30
  label: 'Content IDs',
24
31
  description: 'Product IDs associated with the event, such as SKUs (e.g. ["ABC123", "XYZ789"]).',
25
32
  type: 'string',
26
- multiple: true,
33
+ multiple: true
27
34
  };
28
35
  exports.content_name = {
29
36
  label: 'Content Name',
@@ -44,12 +51,12 @@ exports.contents = {
44
51
  id: {
45
52
  label: 'ID',
46
53
  description: 'ID of the purchased item.',
47
- type: 'string',
54
+ type: 'string'
48
55
  },
49
56
  quantity: {
50
57
  label: 'Quantity',
51
58
  description: 'The number of items purchased.',
52
- type: 'integer',
59
+ type: 'integer'
53
60
  },
54
61
  item_price: {
55
62
  label: 'Item Price',
@@ -63,6 +70,20 @@ exports.contents = {
63
70
  }
64
71
  }
65
72
  };
73
+ const validateContents = (contents) => {
74
+ const valid_delivery_categories = ['in_store', 'curbside', 'home_delivery'];
75
+ for (let i = 0; i < contents.length; i++) {
76
+ const item = contents[i];
77
+ if (!item.id) {
78
+ return new actions_core_1.IntegrationError(`contents[${i}] must include an 'id' parameter.`, 'Misconfigured required field', 400);
79
+ }
80
+ if (item.delivery_category && !valid_delivery_categories.includes(item.delivery_category)) {
81
+ return new actions_core_1.IntegrationError(`contents[${i}].delivery_category must be one of {in_store, home_delivery, curbside}.`, 'Misconfigured field', 400);
82
+ }
83
+ }
84
+ return false;
85
+ };
86
+ exports.validateContents = validateContents;
66
87
  exports.num_items = {
67
88
  label: 'Number of Items',
68
89
  description: 'The number of items when checkout was initiated.',
@@ -1 +1 @@
1
- {"version":3,"file":"fb-capi-properties.js","sourceRoot":"","sources":["../../../src/destinations/facebook-conversions-api/fb-capi-properties.ts"],"names":[],"mappings":";;;AAMa,QAAA,QAAQ,GAAe;IAClC,KAAK,EAAE,UAAU;IACjB,WAAW,EAAE,uCAAuC;IACpD,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,OAAO,EAAE,uBAAuB;KACjC;CACF,CAAA;AAEY,QAAA,KAAK,GAAe;IAC/B,KAAK,EAAE,OAAO;IACd,WAAW,EAAE,4DAA4D;IACzE,IAAI,EAAE,QAAQ;CACf,CAAA;AAEY,QAAA,gBAAgB,GAAe;IAC1C,KAAK,EAAE,kBAAkB;IACzB,WAAW,EAAE,+BAA+B;IAC5C,IAAI,EAAE,QAAQ;CACf,CAAA;AAEY,QAAA,WAAW,GAAe;IACrC,KAAK,EAAE,aAAa;IACpB,WAAW,EAAE,kFAAkF;IAC/F,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,IAAI;CACf,CAAA;AAEY,QAAA,YAAY,GAAe;IACtC,KAAK,EAAE,cAAc;IACrB,WAAW,EAAE,2BAA2B;IACxC,IAAI,EAAE,QAAQ;CACf,CAAA;AAEY,QAAA,YAAY,GAAe;IACtC,KAAK,EAAE,cAAc;IACrB,WAAW,EAAE,oFAAoF;IACjG,IAAI,EAAE,QAAQ;CACf,CAAA;AAEY,QAAA,QAAQ,GAAe;IAClC,KAAK,EAAE,UAAU;IACjB,WAAW,EAAE,qMAAqM;IAClN,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,IAAI;IACd,UAAU,EAAE;QACV,EAAE,EAAE;YACF,KAAK,EAAE,IAAI;YACX,WAAW,EAAE,2BAA2B;YACxC,IAAI,EAAE,QAAQ;SACf;QACD,QAAQ,EAAE;YACR,KAAK,EAAE,UAAU;YACjB,WAAW,EAAE,gCAAgC;YAC7C,IAAI,EAAE,SAAS;SAChB;QACD,UAAU,EAAE;YACV,KAAK,EAAE,YAAY;YACnB,WAAW,EAAE,wBAAwB;YACrC,IAAI,EAAE,QAAQ;SACf;QACD,iBAAiB,EAAE;YACjB,KAAK,EAAE,mBAAmB;YAC1B,WAAW,EAAE,sGAAsG;YACnH,IAAI,EAAE,QAAQ;SACf;KACF;CACF,CAAA;AAEY,QAAA,SAAS,GAAe;IACnC,KAAK,EAAE,iBAAiB;IACxB,WAAW,EAAE,kDAAkD;IAC/D,IAAI,EAAE,SAAS;CAChB,CAAA;AAKY,QAAA,UAAU,GAAe;IACpC,KAAK,EAAE,YAAY;IACnB,WAAW,EAAE,wEAAwE;IACrF,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,OAAO,EAAE,aAAa;KACvB;CACF,CAAA;AAEY,QAAA,aAAa,GAAe;IACvC,KAAK,EAAE,eAAe;IACtB,WAAW,EAAE,mEAAmE;IAChF,IAAI,EAAE,QAAQ;CACf,CAAA;AAEY,QAAA,gBAAgB,GAAe;IAC1C,KAAK,EAAE,kBAAkB;IACzB,WAAW,EAAE,sQAAsQ;IACnR,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,OAAO,EAAE,oBAAoB;KAC9B;CACF,CAAA;AAEY,QAAA,QAAQ,GAAe;IAClC,KAAK,EAAE,UAAU;IACjB,WAAW,EAAE,oJAAoJ;IACjK,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,OAAO,EAAE,aAAa;KACvB;CACF,CAAA"}
1
+ {"version":3,"file":"fb-capi-properties.js","sourceRoot":"","sources":["../../../src/destinations/facebook-conversions-api/fb-capi-properties.ts"],"names":[],"mappings":";;;AACA,wDAAwD;AAW3C,QAAA,WAAW,GAAe;IACrC,KAAK,EAAE,aAAa;IACpB,WAAW,EACT,gMAAgM;IAClM,IAAI,EAAE,QAAQ;IACd,eAAe,EAAE,UAAU;CAC5B,CAAA;AAEY,QAAA,QAAQ,GAAe;IAClC,KAAK,EAAE,UAAU;IACjB,WAAW,EAAE,uCAAuC;IACpD,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,OAAO,EAAE,uBAAuB;KACjC;CACF,CAAA;AAEY,QAAA,KAAK,GAAe;IAC/B,KAAK,EAAE,OAAO;IACd,WAAW,EAAE,4DAA4D;IACzE,IAAI,EAAE,QAAQ;CACf,CAAA;AAEY,QAAA,gBAAgB,GAAe;IAC1C,KAAK,EAAE,kBAAkB;IACzB,WAAW,EAAE,+BAA+B;IAC5C,IAAI,EAAE,QAAQ;CACf,CAAA;AAEY,QAAA,WAAW,GAAe;IACrC,KAAK,EAAE,aAAa;IACpB,WAAW,EAAE,kFAAkF;IAC/F,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,IAAI;CACf,CAAA;AAEY,QAAA,YAAY,GAAe;IACtC,KAAK,EAAE,cAAc;IACrB,WAAW,EAAE,2BAA2B;IACxC,IAAI,EAAE,QAAQ;CACf,CAAA;AAEY,QAAA,YAAY,GAAe;IACtC,KAAK,EAAE,cAAc;IACrB,WAAW,EAAE,oFAAoF;IACjG,IAAI,EAAE,QAAQ;CACf,CAAA;AAEY,QAAA,QAAQ,GAAe;IAClC,KAAK,EAAE,UAAU;IACjB,WAAW,EACT,qMAAqM;IACvM,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,IAAI;IACd,UAAU,EAAE;QACV,EAAE,EAAE;YACF,KAAK,EAAE,IAAI;YACX,WAAW,EAAE,2BAA2B;YACxC,IAAI,EAAE,QAAQ;SACf;QACD,QAAQ,EAAE;YACR,KAAK,EAAE,UAAU;YACjB,WAAW,EAAE,gCAAgC;YAC7C,IAAI,EAAE,SAAS;SAChB;QACD,UAAU,EAAE;YACV,KAAK,EAAE,YAAY;YACnB,WAAW,EAAE,wBAAwB;YACrC,IAAI,EAAE,QAAQ;SACf;QACD,iBAAiB,EAAE;YACjB,KAAK,EAAE,mBAAmB;YAC1B,WAAW,EACT,sGAAsG;YACxG,IAAI,EAAE,QAAQ;SACf;KACF;CACF,CAAA;AAEM,MAAM,gBAAgB,GAAG,CAAC,QAAmB,EAA4B,EAAE;IAChF,MAAM,yBAAyB,GAAG,CAAC,UAAU,EAAE,UAAU,EAAE,eAAe,CAAC,CAAA;IAE3E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACxC,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;QAExB,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;YACZ,OAAO,IAAI,+BAAgB,CAAC,YAAY,CAAC,mCAAmC,EAAE,8BAA8B,EAAE,GAAG,CAAC,CAAA;SACnH;QAED,IAAI,IAAI,CAAC,iBAAiB,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE;YACzF,OAAO,IAAI,+BAAgB,CACzB,YAAY,CAAC,yEAAyE,EACtF,qBAAqB,EACrB,GAAG,CACJ,CAAA;SACF;KACF;IAED,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AApBY,QAAA,gBAAgB,oBAoB5B;AAEY,QAAA,SAAS,GAAe;IACnC,KAAK,EAAE,iBAAiB;IACxB,WAAW,EAAE,kDAAkD;IAC/D,IAAI,EAAE,SAAS;CAChB,CAAA;AAKY,QAAA,UAAU,GAAe;IACpC,KAAK,EAAE,YAAY;IACnB,WAAW,EAAE,wEAAwE;IACrF,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,OAAO,EAAE,aAAa;KACvB;CACF,CAAA;AAEY,QAAA,aAAa,GAAe;IACvC,KAAK,EAAE,eAAe;IACtB,WAAW,EAAE,mEAAmE;IAChF,IAAI,EAAE,QAAQ;CACf,CAAA;AAEY,QAAA,gBAAgB,GAAe;IAC1C,KAAK,EAAE,kBAAkB;IACzB,WAAW,EACT,sQAAsQ;IACxQ,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,OAAO,EAAE,oBAAoB;KAC9B;CACF,CAAA;AAEY,QAAA,QAAQ,GAAe;IAClC,KAAK,EAAE,UAAU;IACjB,WAAW,EACT,oJAAoJ;IACtJ,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE;QACP,OAAO,EAAE,aAAa;KACvB;CACF,CAAA"}
@@ -34,4 +34,7 @@ export interface Payload {
34
34
  event_source_url?: string;
35
35
  num_items?: number;
36
36
  value?: number;
37
+ custom_data?: {
38
+ [k: string]: unknown;
39
+ };
37
40
  }
@@ -40,7 +40,8 @@ const action = {
40
40
  value: {
41
41
  ...fb_capi_properties_1.value,
42
42
  default: { '@path': '$.properties.revenue' }
43
- }
43
+ },
44
+ custom_data: fb_capi_properties_1.custom_data
44
45
  },
45
46
  perform: (request, { payload, settings }) => {
46
47
  if (payload.currency && !constants_1.CURRENCY_ISO_CODES.has(payload.currency)) {
@@ -52,16 +53,10 @@ const action = {
52
53
  if (payload.action_source === 'website' && payload.user_data.client_user_agent === undefined) {
53
54
  throw new actions_core_1.IntegrationError('If action source is "Website" then client_user_agent must be defined', 'Misconfigured required field', 400);
54
55
  }
55
- const valid_delivery_categories = ['in_store', 'curbside', 'home_delivery'];
56
56
  if (payload.contents) {
57
- payload.contents.forEach((obj, index) => {
58
- if (!obj.id) {
59
- throw new actions_core_1.IntegrationError("Contents objects must include an 'id' parameter.", 'Misconfigured required field', 400);
60
- }
61
- if (obj.delivery_category && !valid_delivery_categories.includes(obj.delivery_category)) {
62
- throw new actions_core_1.IntegrationError(`contents[${index}].delivery_category must be one of {in_store, home_delivery, curbside}.`, 'Misconfigured field', 400);
63
- }
64
- });
57
+ const err = fb_capi_properties_1.validateContents(payload.contents);
58
+ if (err)
59
+ throw err;
65
60
  }
66
61
  return request(`https://graph.facebook.com/v${constants_1.API_VERSION}/${settings.pixelId}/events`, {
67
62
  method: 'POST',
@@ -75,6 +70,7 @@ const action = {
75
70
  event_id: payload.event_id,
76
71
  user_data: fb_capi_user_data_1.hash_user_data({ user_data: payload.user_data }),
77
72
  custom_data: {
73
+ ...payload.custom_data,
78
74
  currency: payload.currency,
79
75
  value: payload.value,
80
76
  content_ids: payload.content_ids,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/facebook-conversions-api/initiateCheckout/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/facebook-conversions-api/initiateCheckout/index.ts"],"names":[],"mappings":"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"}
@@ -23,4 +23,7 @@ export interface Payload {
23
23
  };
24
24
  event_id?: string;
25
25
  event_source_url?: string;
26
+ custom_data?: {
27
+ [k: string]: unknown;
28
+ };
26
29
  }
@@ -13,7 +13,8 @@ const action = {
13
13
  event_time: { ...fb_capi_properties_1.event_time, required: true },
14
14
  user_data: fb_capi_user_data_1.user_data_field,
15
15
  event_id: fb_capi_properties_1.event_id,
16
- event_source_url: fb_capi_properties_1.event_source_url
16
+ event_source_url: fb_capi_properties_1.event_source_url,
17
+ custom_data: fb_capi_properties_1.custom_data
17
18
  },
18
19
  perform: (request, { payload, settings }) => {
19
20
  if (!payload.user_data) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/facebook-conversions-api/pageView/index.ts"],"names":[],"mappings":";;AAAA,wDAA2E;AAC3E,8DAA6F;AAC7F,4DAAsE;AAGtE,4CAA0C;AAC1C,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,WAAW;IAClB,WAAW,EAAE,oDAAoD;IACjE,mBAAmB,EAAE,eAAe;IACpC,MAAM,EAAE;QACN,aAAa,EAAE,EAAE,GAAG,kCAAa,EAAE,QAAQ,EAAE,IAAI,EAAE;QACnD,UAAU,EAAE,EAAE,GAAG,+BAAU,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC7C,SAAS,EAAE,mCAAe;QAC1B,QAAQ,EAAE,6BAAQ;QAClB,gBAAgB,EAAE,qCAAgB;KACnC;IACD,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC1C,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;YACtB,MAAM,IAAI,+BAAgB,CAAC,8CAA8C,EAAE,8BAA8B,EAAE,GAAG,CAAC,CAAA;SAChH;QAED,IAAI,OAAO,CAAC,aAAa,KAAK,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,iBAAiB,KAAK,SAAS,EAAE;YAC5F,MAAM,IAAI,+BAAgB,CACxB,sEAAsE,EACtE,8BAA8B,EAC9B,GAAG,CACJ,CAAA;SACF;QACD,OAAO,OAAO,CAAC,+BAA+B,uBAAW,IAAI,QAAQ,CAAC,OAAO,SAAS,EAAE;YACtF,MAAM,EAAE,MAAM;YACd,IAAI,EAAE;gBACJ,IAAI,EAAE;oBACJ;wBACE,UAAU,EAAE,UAAU;wBACtB,UAAU,EAAE,OAAO,CAAC,UAAU;wBAC9B,aAAa,EAAE,OAAO,CAAC,aAAa;wBACpC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;wBAC1C,QAAQ,EAAE,OAAO,CAAC,QAAQ;wBAC1B,SAAS,EAAE,kCAAc,CAAC,EAAC,SAAS,EAAE,OAAO,CAAC,SAAS,EAAC,CAAC;qBAC1D;iBACF;aACF;SACF,CAAC,CAAA;IACJ,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/facebook-conversions-api/pageView/index.ts"],"names":[],"mappings":";;AAAA,wDAA0E;AAC1E,8DAA0G;AAC1G,4DAAsE;AAGtE,4CAA0C;AAC1C,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,WAAW;IAClB,WAAW,EAAE,oDAAoD;IACjE,mBAAmB,EAAE,eAAe;IACpC,MAAM,EAAE;QACN,aAAa,EAAE,EAAE,GAAG,kCAAa,EAAE,QAAQ,EAAE,IAAI,EAAE;QACnD,UAAU,EAAE,EAAE,GAAG,+BAAU,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC7C,SAAS,EAAE,mCAAe;QAC1B,QAAQ,EAAE,6BAAQ;QAClB,gBAAgB,EAAE,qCAAgB;QAClC,WAAW,EAAE,gCAAW;KACzB;IACD,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC1C,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;YACtB,MAAM,IAAI,+BAAgB,CAAC,8CAA8C,EAAE,8BAA8B,EAAE,GAAG,CAAC,CAAA;SAChH;QAED,IAAI,OAAO,CAAC,aAAa,KAAK,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,iBAAiB,KAAK,SAAS,EAAE;YAC5F,MAAM,IAAI,+BAAgB,CACxB,sEAAsE,EACtE,8BAA8B,EAC9B,GAAG,CACJ,CAAA;SACF;QACD,OAAO,OAAO,CAAC,+BAA+B,uBAAW,IAAI,QAAQ,CAAC,OAAO,SAAS,EAAE;YACtF,MAAM,EAAE,MAAM;YACd,IAAI,EAAE;gBACJ,IAAI,EAAE;oBACJ;wBACE,UAAU,EAAE,UAAU;wBACtB,UAAU,EAAE,OAAO,CAAC,UAAU;wBAC9B,aAAa,EAAE,OAAO,CAAC,aAAa;wBACpC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;wBAC1C,QAAQ,EAAE,OAAO,CAAC,QAAQ;wBAC1B,SAAS,EAAE,kCAAc,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC;qBAC5D;iBACF;aACF;SACF,CAAC,CAAA;IACJ,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
@@ -35,4 +35,7 @@ export interface Payload {
35
35
  event_id?: string;
36
36
  event_source_url?: string;
37
37
  num_items?: number;
38
+ custom_data?: {
39
+ [k: string]: unknown;
40
+ };
38
41
  }
@@ -42,7 +42,8 @@ const action = {
42
42
  },
43
43
  event_id: fb_capi_properties_1.event_id,
44
44
  event_source_url: fb_capi_properties_1.event_source_url,
45
- num_items: fb_capi_properties_1.num_items
45
+ num_items: fb_capi_properties_1.num_items,
46
+ custom_data: fb_capi_properties_1.custom_data
46
47
  },
47
48
  perform: (request, { payload, settings }) => {
48
49
  if (!constants_1.CURRENCY_ISO_CODES.has(payload.currency)) {
@@ -54,16 +55,10 @@ const action = {
54
55
  if (payload.action_source === 'website' && payload.user_data.client_user_agent === undefined) {
55
56
  throw new actions_core_1.IntegrationError('If action source is "Website" then client_user_agent must be defined', 'Misconfigured required field', 400);
56
57
  }
57
- const valid_delivery_categories = ['in_store', 'curbside', 'home_delivery'];
58
58
  if (payload.contents) {
59
- payload.contents.forEach((obj, index) => {
60
- if (!obj.id) {
61
- throw new actions_core_1.IntegrationError("Contents objects must include an 'id' parameter.", 'Misconfigured required field', 400);
62
- }
63
- if (obj.delivery_category && !valid_delivery_categories.includes(obj.delivery_category)) {
64
- throw new actions_core_1.IntegrationError(`contents[${index}].delivery_category must be one of {in_store, home_delivery, curbside}.`, 'Misconfigured field', 400);
65
- }
66
- });
59
+ const err = fb_capi_properties_1.validateContents(payload.contents);
60
+ if (err)
61
+ throw err;
67
62
  }
68
63
  return request(`https://graph.facebook.com/v${constants_1.API_VERSION}/${settings.pixelId}/events`, {
69
64
  method: 'POST',
@@ -77,6 +72,7 @@ const action = {
77
72
  event_id: payload.event_id,
78
73
  user_data: fb_capi_user_data_1.hash_user_data({ user_data: payload.user_data }),
79
74
  custom_data: {
75
+ ...payload.custom_data,
80
76
  currency: payload.currency,
81
77
  value: payload.value,
82
78
  content_ids: payload.content_ids,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/facebook-conversions-api/purchase/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/facebook-conversions-api/purchase/index.ts"],"names":[],"mappings":"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"}
@@ -34,4 +34,7 @@ export interface Payload {
34
34
  event_source_url?: string;
35
35
  search_string?: string;
36
36
  value?: number;
37
+ custom_data?: {
38
+ [k: string]: unknown;
39
+ };
37
40
  }
@@ -44,7 +44,8 @@ const action = {
44
44
  '@path': '$.properties.query'
45
45
  }
46
46
  },
47
- value: fb_capi_properties_1.value
47
+ value: fb_capi_properties_1.value,
48
+ custom_data: fb_capi_properties_1.custom_data
48
49
  },
49
50
  perform: (request, { payload, settings }) => {
50
51
  if (payload.currency && !constants_1.CURRENCY_ISO_CODES.has(payload.currency)) {
@@ -56,16 +57,10 @@ const action = {
56
57
  if (payload.action_source === 'website' && payload.user_data.client_user_agent === undefined) {
57
58
  throw new actions_core_1.IntegrationError('If action source is "Website" then client_user_agent must be defined', 'Misconfigured required field', 400);
58
59
  }
59
- const valid_delivery_categories = ['in_store', 'curbside', 'home_delivery'];
60
60
  if (payload.contents) {
61
- payload.contents.forEach((obj, index) => {
62
- if (!obj.id) {
63
- throw new actions_core_1.IntegrationError("Contents objects must include an 'id' parameter.", 'Misconfigured required field', 400);
64
- }
65
- if (obj.delivery_category && !valid_delivery_categories.includes(obj.delivery_category)) {
66
- throw new actions_core_1.IntegrationError(`contents[${index}].delivery_category must be one of {in_store, home_delivery, curbside}.`, 'Misconfigured field', 400);
67
- }
68
- });
61
+ const err = fb_capi_properties_1.validateContents(payload.contents);
62
+ if (err)
63
+ throw err;
69
64
  }
70
65
  return request(`https://graph.facebook.com/v${constants_1.API_VERSION}/${settings.pixelId}/events`, {
71
66
  method: 'POST',
@@ -79,6 +74,7 @@ const action = {
79
74
  event_source_url: payload.event_source_url,
80
75
  user_data: fb_capi_user_data_1.hash_user_data({ user_data: payload.user_data }),
81
76
  custom_data: {
77
+ ...payload.custom_data,
82
78
  currency: payload.currency,
83
79
  content_ids: payload.content_ids,
84
80
  contents: payload.contents,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/facebook-conversions-api/search/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/facebook-conversions-api/search/index.ts"],"names":[],"mappings":"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"}
@@ -35,4 +35,7 @@ export interface Payload {
35
35
  event_id?: string;
36
36
  event_source_url?: string;
37
37
  value?: number;
38
+ custom_data?: {
39
+ [k: string]: unknown;
40
+ };
38
41
  }
@@ -38,7 +38,8 @@ const action = {
38
38
  currency: fb_capi_properties_1.currency,
39
39
  event_id: fb_capi_properties_1.event_id,
40
40
  event_source_url: fb_capi_properties_1.event_source_url,
41
- value: { ...fb_capi_properties_1.value, default: { '@path': '$.properties.price' } }
41
+ value: { ...fb_capi_properties_1.value, default: { '@path': '$.properties.price' } },
42
+ custom_data: fb_capi_properties_1.custom_data
42
43
  },
43
44
  perform: (request, { payload, settings }) => {
44
45
  if (payload.currency && !constants_1.CURRENCY_ISO_CODES.has(payload.currency)) {
@@ -50,16 +51,10 @@ const action = {
50
51
  if (payload.action_source === 'website' && payload.user_data.client_user_agent === undefined) {
51
52
  throw new actions_core_1.IntegrationError('If action source is "Website" then client_user_agent must be defined', 'Misconfigured required field', 400);
52
53
  }
53
- const valid_delivery_categories = ['in_store', 'curbside', 'home_delivery'];
54
54
  if (payload.contents) {
55
- payload.contents.forEach((obj, index) => {
56
- if (!obj.id) {
57
- throw new actions_core_1.IntegrationError("Contents objects must include an 'id' parameter.", 'Misconfigured required field', 400);
58
- }
59
- if (obj.delivery_category && !valid_delivery_categories.includes(obj.delivery_category)) {
60
- throw new actions_core_1.IntegrationError(`contents[${index}].delivery_category must be one of {in_store, home_delivery, curbside}.`, 'Misconfigured field', 400);
61
- }
62
- });
55
+ const err = fb_capi_properties_1.validateContents(payload.contents);
56
+ if (err)
57
+ throw err;
63
58
  }
64
59
  return request(`https://graph.facebook.com/v${constants_1.API_VERSION}/${settings.pixelId}/events`, {
65
60
  method: 'POST',
@@ -73,6 +68,7 @@ const action = {
73
68
  event_source_url: payload.event_source_url,
74
69
  user_data: fb_capi_user_data_1.hash_user_data({ user_data: payload.user_data }),
75
70
  custom_data: {
71
+ ...payload.custom_data,
76
72
  currency: payload.currency,
77
73
  value: payload.value,
78
74
  content_ids: payload.content_ids,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/facebook-conversions-api/viewContent/index.ts"],"names":[],"mappings":";;AAAA,wDAA0E;AAC1E,8DAY8B;AAC9B,4DAAsE;AAGtE,4CAA8D;AAE9D,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,cAAc;IACrB,WAAW,EAAE,mDAAmD;IAChE,mBAAmB,EAAE,6CAA6C;IAClE,MAAM,EAAE;QACN,aAAa,EAAE,EAAE,GAAG,kCAAa,EAAE,QAAQ,EAAE,IAAI,EAAE;QACnD,UAAU,EAAE,EAAE,GAAG,+BAAU,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC7C,SAAS,EAAE,mCAAe;QAC1B,gBAAgB,EAAE,qCAAgB;QAClC,WAAW,EAAE,EAAE,GAAG,gCAAW,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,yBAAyB,EAAE,EAAE;QAChF,YAAY,EAAE,iCAAY;QAC1B,YAAY,EAAE,iCAAY;QAC1B,QAAQ,EAAE;YACR,GAAG,6BAAQ;YACX,OAAO,EAAE;gBAEP,YAAY,EAAE;oBACZ,cAAc;oBACd;wBACE,EAAE,EAAE;4BACF,OAAO,EAAE,cAAc;yBACxB;wBACD,QAAQ,EAAE;4BACR,OAAO,EAAE,YAAY;yBACtB;wBACD,UAAU,EAAE;4BACV,OAAO,EAAE,SAAS;yBACnB;qBACF;iBACF;aACF;SACF;QACD,QAAQ,EAAE,6BAAQ;QAClB,QAAQ,EAAE,6BAAQ;QAClB,gBAAgB,EAAE,qCAAgB;QAClC,KAAK,EAAE,EAAE,GAAG,0BAAK,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE,EAAE;KAChE;IACD,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC1C,IAAI,OAAO,CAAC,QAAQ,IAAI,CAAC,8BAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YACjE,MAAM,IAAI,+BAAgB,CACxB,GAAG,OAAO,CAAC,QAAQ,gCAAgC,EACnD,8BAA8B,EAC9B,GAAG,CACJ,CAAA;SACF;QAED,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;YACtB,MAAM,IAAI,+BAAgB,CAAC,8CAA8C,EAAE,8BAA8B,EAAE,GAAG,CAAC,CAAA;SAChH;QAED,IAAI,OAAO,CAAC,aAAa,KAAK,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,iBAAiB,KAAK,SAAS,EAAE;YAC5F,MAAM,IAAI,+BAAgB,CACxB,sEAAsE,EACtE,8BAA8B,EAC9B,GAAG,CACJ,CAAA;SACF;QAED,MAAM,yBAAyB,GAAG,CAAC,UAAU,EAAE,UAAU,EAAE,eAAe,CAAC,CAAA;QAC3E,IAAI,OAAO,CAAC,QAAQ,EAAE;YACpB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;gBACtC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE;oBACX,MAAM,IAAI,+BAAgB,CACxB,kDAAkD,EAClD,8BAA8B,EAC9B,GAAG,CACJ,CAAA;iBACF;gBAED,IAAI,GAAG,CAAC,iBAAiB,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE;oBACvF,MAAM,IAAI,+BAAgB,CACxB,YAAY,KAAK,yEAAyE,EAC1F,qBAAqB,EACrB,GAAG,CACJ,CAAA;iBACF;YACH,CAAC,CAAC,CAAA;SACH;QAED,OAAO,OAAO,CAAC,+BAA+B,uBAAW,IAAI,QAAQ,CAAC,OAAO,SAAS,EAAE;YACtF,MAAM,EAAE,MAAM;YACd,IAAI,EAAE;gBACJ,IAAI,EAAE;oBACJ;wBACE,UAAU,EAAE,aAAa;wBACzB,UAAU,EAAE,OAAO,CAAC,UAAU;wBAC9B,aAAa,EAAE,OAAO,CAAC,aAAa;wBACpC,QAAQ,EAAE,OAAO,CAAC,QAAQ;wBAC1B,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;wBAC1C,SAAS,EAAE,kCAAc,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC;wBAC3D,WAAW,EAAE;4BACX,QAAQ,EAAE,OAAO,CAAC,QAAQ;4BAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;4BACpB,WAAW,EAAE,OAAO,CAAC,WAAW;4BAChC,YAAY,EAAE,OAAO,CAAC,YAAY;4BAClC,YAAY,EAAE,OAAO,CAAC,YAAY;4BAClC,QAAQ,EAAE,OAAO,CAAC,QAAQ;yBAC3B;qBACF;iBACF;aACF;SACF,CAAC,CAAA;IACJ,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/facebook-conversions-api/viewContent/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ export interface Payload {
2
+ operation: string;
3
+ traits?: {
4
+ [k: string]: unknown;
5
+ };
6
+ last_name?: string;
7
+ first_name?: string;
8
+ email?: string;
9
+ mailing_city?: string;
10
+ mailing_postal_code?: string;
11
+ mailing_country?: string;
12
+ mailing_street?: string;
13
+ mailing_state?: 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/contact/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,134 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const actions_core_1 = require("@segment/actions-core");
7
+ const sf_properties_1 = require("../sf-properties");
8
+ const sf_operations_1 = __importDefault(require("../sf-operations"));
9
+ const action = {
10
+ title: 'Contact',
11
+ description: 'Contact action',
12
+ fields: {
13
+ operation: sf_properties_1.operation,
14
+ traits: sf_properties_1.traits,
15
+ last_name: {
16
+ label: 'Last Name',
17
+ description: "The contact's last name up to 80 characters. This is required to create a contact.",
18
+ type: 'string',
19
+ default: {
20
+ '@if': {
21
+ exists: { '@path': '$.traits.last_name' },
22
+ then: { '@path': '$.traits.last_name' },
23
+ else: { '@path': '$.properties.last_name' }
24
+ }
25
+ }
26
+ },
27
+ first_name: {
28
+ label: 'First Name',
29
+ description: "The contact's first name up to 40 characters.",
30
+ type: 'string',
31
+ default: {
32
+ '@if': {
33
+ exists: { '@path': '$.traits.first_name' },
34
+ then: { '@path': '$.traits.first_name' },
35
+ else: { '@path': '$.properties.first_name' }
36
+ }
37
+ }
38
+ },
39
+ email: {
40
+ label: 'Email',
41
+ description: "The contact's email address.",
42
+ type: 'string',
43
+ default: {
44
+ '@if': {
45
+ exists: { '@path': '$.traits.email' },
46
+ then: { '@path': '$.traits.email' },
47
+ else: { '@path': '$.properties.email' }
48
+ }
49
+ }
50
+ },
51
+ mailing_city: {
52
+ label: 'Mailing City',
53
+ description: "City for the contact's mailing address.",
54
+ type: 'string',
55
+ default: {
56
+ '@if': {
57
+ exists: { '@path': '$.traits.address.city' },
58
+ then: { '@path': '$.traits.address.city' },
59
+ else: { '@path': '$.properties.address.city' }
60
+ }
61
+ }
62
+ },
63
+ mailing_postal_code: {
64
+ label: 'Mailing Postal Code',
65
+ description: "Postal Code for the contact's mailing address.",
66
+ type: 'string',
67
+ default: {
68
+ '@if': {
69
+ exists: { '@path': '$.traits.address.postal_code' },
70
+ then: { '@path': '$.traits.address.postal_code' },
71
+ else: { '@path': '$.properties.address.postal_code' }
72
+ }
73
+ }
74
+ },
75
+ mailing_country: {
76
+ label: 'Mailing Country',
77
+ description: "Country for the contact's mailing address.",
78
+ type: 'string',
79
+ default: {
80
+ '@if': {
81
+ exists: { '@path': '$.traits.address.country' },
82
+ then: { '@path': '$.traits.address.country' },
83
+ else: { '@path': '$.properties.address.country' }
84
+ }
85
+ }
86
+ },
87
+ mailing_street: {
88
+ label: 'Mailing Street',
89
+ description: "Street number and name for the contact's mailing address.",
90
+ type: 'string',
91
+ default: {
92
+ '@if': {
93
+ exists: { '@path': '$.traits.address.street' },
94
+ then: { '@path': '$.traits.address.street' },
95
+ else: { '@path': '$.properties.address.street' }
96
+ }
97
+ }
98
+ },
99
+ mailing_state: {
100
+ label: 'Mailing State',
101
+ description: "State for the contact's mailing address.",
102
+ type: 'string',
103
+ default: {
104
+ '@if': {
105
+ exists: { '@path': '$.traits.address.state' },
106
+ then: { '@path': '$.traits.address.state' },
107
+ else: { '@path': '$.properties.address.state' }
108
+ }
109
+ }
110
+ },
111
+ customFields: sf_properties_1.customFields
112
+ },
113
+ perform: async (request, { settings, payload }) => {
114
+ const sf = new sf_operations_1.default(settings.instanceUrl, request);
115
+ if (payload.operation === 'create') {
116
+ if (!payload.last_name) {
117
+ throw new actions_core_1.IntegrationError('Missing last_name value', 'Misconfigured required field', 400);
118
+ }
119
+ return await sf.createRecord(payload, 'Contact');
120
+ }
121
+ sf_properties_1.validateLookup(payload);
122
+ if (payload.operation === 'update') {
123
+ return await sf.updateRecord(payload, 'Contact');
124
+ }
125
+ if (payload.operation === 'upsert') {
126
+ if (!payload.last_name) {
127
+ throw new actions_core_1.IntegrationError('Missing last_name value', 'Misconfigured required field', 400);
128
+ }
129
+ return await sf.upsertRecord(payload, 'Contact');
130
+ }
131
+ }
132
+ };
133
+ exports.default = action;
134
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/salesforce/contact/index.ts"],"names":[],"mappings":";;;;;AAAA,wDAA0E;AAG1E,oDAAkF;AAClF,qEAAyC;AAEzC,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,SAAS;IAChB,WAAW,EAAE,gBAAgB;IAC7B,MAAM,EAAE;QACN,SAAS,EAAE,yBAAS;QACpB,MAAM,EAAE,sBAAM;QACd,SAAS,EAAE;YACT,KAAK,EAAE,WAAW;YAClB,WAAW,EAAE,oFAAoF;YACjG,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;oBACzC,IAAI,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;oBACvC,IAAI,EAAE,EAAE,OAAO,EAAE,wBAAwB,EAAE;iBAC5C;aACF;SACF;QACD,UAAU,EAAE;YACV,KAAK,EAAE,YAAY;YACnB,WAAW,EAAE,+CAA+C;YAC5D,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,qBAAqB,EAAE;oBAC1C,IAAI,EAAE,EAAE,OAAO,EAAE,qBAAqB,EAAE;oBACxC,IAAI,EAAE,EAAE,OAAO,EAAE,yBAAyB,EAAE;iBAC7C;aACF;SACF;QACD,KAAK,EAAE;YACL,KAAK,EAAE,OAAO;YACd,WAAW,EAAE,8BAA8B;YAC3C,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE;oBACrC,IAAI,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE;oBACnC,IAAI,EAAE,EAAE,OAAO,EAAE,oBAAoB,EAAE;iBACxC;aACF;SACF;QACD,YAAY,EAAE;YACZ,KAAK,EAAE,cAAc;YACrB,WAAW,EAAE,yCAAyC;YACtD,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,uBAAuB,EAAE;oBAC5C,IAAI,EAAE,EAAE,OAAO,EAAE,uBAAuB,EAAE;oBAC1C,IAAI,EAAE,EAAE,OAAO,EAAE,2BAA2B,EAAE;iBAC/C;aACF;SACF;QACD,mBAAmB,EAAE;YACnB,KAAK,EAAE,qBAAqB;YAC5B,WAAW,EAAE,gDAAgD;YAC7D,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,8BAA8B,EAAE;oBACnD,IAAI,EAAE,EAAE,OAAO,EAAE,8BAA8B,EAAE;oBACjD,IAAI,EAAE,EAAE,OAAO,EAAE,kCAAkC,EAAE;iBACtD;aACF;SACF;QACD,eAAe,EAAE;YACf,KAAK,EAAE,iBAAiB;YACxB,WAAW,EAAE,4CAA4C;YACzD,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,0BAA0B,EAAE;oBAC/C,IAAI,EAAE,EAAE,OAAO,EAAE,0BAA0B,EAAE;oBAC7C,IAAI,EAAE,EAAE,OAAO,EAAE,8BAA8B,EAAE;iBAClD;aACF;SACF;QACD,cAAc,EAAE;YACd,KAAK,EAAE,gBAAgB;YACvB,WAAW,EAAE,2DAA2D;YACxE,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,yBAAyB,EAAE;oBAC9C,IAAI,EAAE,EAAE,OAAO,EAAE,yBAAyB,EAAE;oBAC5C,IAAI,EAAE,EAAE,OAAO,EAAE,6BAA6B,EAAE;iBACjD;aACF;SACF;QACD,aAAa,EAAE;YACb,KAAK,EAAE,eAAe;YACtB,WAAW,EAAE,0CAA0C;YACvD,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,KAAK,EAAE;oBACL,MAAM,EAAE,EAAE,OAAO,EAAE,wBAAwB,EAAE;oBAC7C,IAAI,EAAE,EAAE,OAAO,EAAE,wBAAwB,EAAE;oBAC3C,IAAI,EAAE,EAAE,OAAO,EAAE,4BAA4B,EAAE;iBAChD;aACF;SACF;QACD,YAAY,EAAE,4BAAY;KAC3B;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,OAAO,CAAC,SAAS,KAAK,QAAQ,EAAE;YAClC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;gBACtB,MAAM,IAAI,+BAAgB,CAAC,yBAAyB,EAAE,8BAA8B,EAAE,GAAG,CAAC,CAAA;aAC3F;YACD,OAAO,MAAM,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;SACjD;QAED,8BAAc,CAAC,OAAO,CAAC,CAAA;QAEvB,IAAI,OAAO,CAAC,SAAS,KAAK,QAAQ,EAAE;YAClC,OAAO,MAAM,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;SACjD;QAED,IAAI,OAAO,CAAC,SAAS,KAAK,QAAQ,EAAE;YAClC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;gBACtB,MAAM,IAAI,+BAAgB,CAAC,yBAAyB,EAAE,8BAA8B,EAAE,GAAG,CAAC,CAAA;aAC3F;YACD,OAAO,MAAM,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;SACjD;IACH,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
@@ -7,6 +7,7 @@ const cases_1 = __importDefault(require("./cases"));
7
7
  const lead_1 = __importDefault(require("./lead"));
8
8
  const opportunity_1 = __importDefault(require("./opportunity"));
9
9
  const customObject_1 = __importDefault(require("./customObject"));
10
+ const contact_1 = __importDefault(require("./contact"));
10
11
  const account_1 = __importDefault(require("./account"));
11
12
  const destination = {
12
13
  name: 'Salesforce (Actions)',
@@ -46,6 +47,7 @@ const destination = {
46
47
  lead: lead_1.default,
47
48
  customObject: customObject_1.default,
48
49
  cases: cases_1.default,
50
+ contact: contact_1.default,
49
51
  opportunity: opportunity_1.default,
50
52
  account: account_1.default
51
53
  }
@@ -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;AAEzC,wDAA+B;AAM/B,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,YAAY,EAAZ,sBAAY;QACZ,KAAK,EAAL,eAAK;QACL,WAAW,EAAX,qBAAW;QACX,OAAO,EAAP,iBAAO;KACR;CACF,CAAA;AAED,kBAAe,WAAW,CAAA"}
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;AAM/B,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,YAAY,EAAZ,sBAAY;QACZ,KAAK,EAAL,eAAK;QACL,OAAO,EAAP,iBAAO;QACP,WAAW,EAAX,qBAAW;QACX,OAAO,EAAP,iBAAO;KACR;CACF,CAAA;AAED,kBAAe,WAAW,CAAA"}
@@ -48,11 +48,24 @@ const AccountShape = (payload) => {
48
48
  Website: payload.website
49
49
  };
50
50
  };
51
+ const ContactShape = (payload) => {
52
+ return {
53
+ LastName: payload.last_name,
54
+ FirstName: payload.first_name,
55
+ Email: payload.email,
56
+ MailingState: payload.mailing_state,
57
+ MailingStreet: payload.mailing_street,
58
+ MailingCountry: payload.mailing_country,
59
+ MailingPostalCode: payload.mailing_postal_code,
60
+ MailingCity: payload.mailing_city
61
+ };
62
+ };
51
63
  const objectToShape = new Map([
52
64
  ['lead', LeadShape],
53
65
  ['case', CaseShape],
54
66
  ['opportunity', OpportunityShape],
55
- ['account', AccountShape]
67
+ ['account', AccountShape],
68
+ ['contact', ContactShape]
56
69
  ]);
57
70
  const mapObjectToShape = (payload, sobject) => {
58
71
  const shapeFunction = objectToShape.get(sobject.toLowerCase());
@@ -1 +1 @@
1
- {"version":3,"file":"sf-object-to-shape.js","sourceRoot":"","sources":["../../../src/destinations/salesforce/sf-object-to-shape.ts"],"names":[],"mappings":";;;AASA,MAAM,SAAS,GAAG,CAAC,OAAuB,EAAqB,EAAE;IAC/D,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,SAAS,GAAG,CAAC,OAAuB,EAAqB,EAAE;IAC/D,OAAO;QACL,WAAW,EAAE,OAAO,CAAC,WAAW;KACjC,CAAA;AACH,CAAC,CAAA;AAED,MAAM,gBAAgB,GAAG,CAAC,OAAuB,EAA4B,EAAE;IAC7E,OAAO;QACL,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,SAAS,EAAE,OAAO,CAAC,UAAU;QAC7B,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,SAAS,EAAE,OAAO,CAAC,UAAU;KAC9B,CAAA;AACH,CAAC,CAAA;AAED,MAAM,YAAY,GAAG,CAAC,OAAuB,EAAwB,EAAE;IACrE,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,aAAa,EAAE,OAAO,CAAC,cAAc;QACrC,iBAAiB,EAAE,OAAO,CAAC,mBAAmB;QAC9C,WAAW,EAAE,OAAO,CAAC,YAAY;QACjC,iBAAiB,EAAE,OAAO,CAAC,mBAAmB;QAC9C,cAAc,EAAE,OAAO,CAAC,eAAe;QACvC,aAAa,EAAE,OAAO,CAAC,cAAc;QACrC,YAAY,EAAE,OAAO,CAAC,aAAa;QACnC,YAAY,EAAE,OAAO,CAAC,aAAa;QACnC,kBAAkB,EAAE,OAAO,CAAC,oBAAoB;QAChD,eAAe,EAAE,OAAO,CAAC,gBAAgB;QACzC,cAAc,EAAE,OAAO,CAAC,eAAe;QACvC,aAAa,EAAE,OAAO,CAAC,cAAc;QACrC,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,OAAO,EAAE,OAAO,CAAC,OAAO;KACzB,CAAA;AACH,CAAC,CAAA;AAED,MAAM,aAAa,GAAG,IAAI,GAAG,CAG3B;IACA,CAAC,MAAM,EAAE,SAAS,CAAC;IACnB,CAAC,MAAM,EAAE,SAAS,CAAC;IACnB,CAAC,aAAa,EAAE,gBAAgB,CAAC;IACjC,CAAC,SAAS,EAAE,YAAY,CAAC;CAC1B,CAAC,CAAA;AAEK,MAAM,gBAAgB,GAAG,CAAC,OAAuB,EAAE,OAAe,EAAoB,EAAE;IAC7F,MAAM,aAAa,GAAG,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAA;IAE9D,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"}
1
+ {"version":3,"file":"sf-object-to-shape.js","sourceRoot":"","sources":["../../../src/destinations/salesforce/sf-object-to-shape.ts"],"names":[],"mappings":";;;AAUA,MAAM,SAAS,GAAG,CAAC,OAAuB,EAAqB,EAAE;IAC/D,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,SAAS,GAAG,CAAC,OAAuB,EAAqB,EAAE;IAC/D,OAAO;QACL,WAAW,EAAE,OAAO,CAAC,WAAW;KACjC,CAAA;AACH,CAAC,CAAA;AAED,MAAM,gBAAgB,GAAG,CAAC,OAAuB,EAA4B,EAAE;IAC7E,OAAO;QACL,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,SAAS,EAAE,OAAO,CAAC,UAAU;QAC7B,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,SAAS,EAAE,OAAO,CAAC,UAAU;KAC9B,CAAA;AACH,CAAC,CAAA;AAED,MAAM,YAAY,GAAG,CAAC,OAAuB,EAAwB,EAAE;IACrE,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,aAAa,EAAE,OAAO,CAAC,cAAc;QACrC,iBAAiB,EAAE,OAAO,CAAC,mBAAmB;QAC9C,WAAW,EAAE,OAAO,CAAC,YAAY;QACjC,iBAAiB,EAAE,OAAO,CAAC,mBAAmB;QAC9C,cAAc,EAAE,OAAO,CAAC,eAAe;QACvC,aAAa,EAAE,OAAO,CAAC,cAAc;QACrC,YAAY,EAAE,OAAO,CAAC,aAAa;QACnC,YAAY,EAAE,OAAO,CAAC,aAAa;QACnC,kBAAkB,EAAE,OAAO,CAAC,oBAAoB;QAChD,eAAe,EAAE,OAAO,CAAC,gBAAgB;QACzC,cAAc,EAAE,OAAO,CAAC,eAAe;QACvC,aAAa,EAAE,OAAO,CAAC,cAAc;QACrC,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,OAAO,EAAE,OAAO,CAAC,OAAO;KACzB,CAAA;AACH,CAAC,CAAA;AAED,MAAM,YAAY,GAAG,CAAC,OAAuB,EAAwB,EAAE;IACrE,OAAO;QACL,QAAQ,EAAE,OAAO,CAAC,SAAS;QAC3B,SAAS,EAAE,OAAO,CAAC,UAAU;QAC7B,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,YAAY,EAAE,OAAO,CAAC,aAAa;QACnC,aAAa,EAAE,OAAO,CAAC,cAAc;QACrC,cAAc,EAAE,OAAO,CAAC,eAAe;QACvC,iBAAiB,EAAE,OAAO,CAAC,mBAAmB;QAC9C,WAAW,EAAE,OAAO,CAAC,YAAY;KAClC,CAAA;AACH,CAAC,CAAA;AAED,MAAM,aAAa,GAAG,IAAI,GAAG,CAK3B;IACA,CAAC,MAAM,EAAE,SAAS,CAAC;IACnB,CAAC,MAAM,EAAE,SAAS,CAAC;IACnB,CAAC,aAAa,EAAE,gBAAgB,CAAC;IACjC,CAAC,SAAS,EAAE,YAAY,CAAC;IACzB,CAAC,SAAS,EAAE,YAAY,CAAC;CAC1B,CAAC,CAAA;AAEK,MAAM,gBAAgB,GAAG,CAAC,OAAuB,EAAE,OAAe,EAAoB,EAAE;IAC7F,MAAM,aAAa,GAAG,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAA;IAE9D,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"}
@@ -20,7 +20,8 @@ exports.traits = {
20
20
  Any field can function as a matcher, including Record ID, External IDs, standard fields and custom fields. On the left-hand side, input the Salesforce field API name. On the right-hand side, map the Segment field that contains the value.
21
21
 
22
22
  If multiple records are found, no updates will be made. Please use fields that result in unique records.`,
23
- type: 'object'
23
+ type: 'object',
24
+ defaultObjectUI: 'keyvalue:only'
24
25
  };
25
26
  exports.customFields = {
26
27
  label: 'Other Fields',
@@ -29,7 +30,8 @@ exports.customFields = {
29
30
 
30
31
  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
  `,
32
- type: 'object'
33
+ type: 'object',
34
+ defaultObjectUI: 'keyvalue'
33
35
  };
34
36
  const validateLookup = (payload) => {
35
37
  if (payload.operation === 'update' || payload.operation === 'upsert') {
@@ -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;AAEY,QAAA,YAAY,GAAe;IACtC,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
+ {"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;IACd,eAAe,EAAE,eAAe;CACjC,CAAA;AAEY,QAAA,YAAY,GAAe;IACtC,KAAK,EAAE,cAAc;IACrB,WAAW,EAAE;;;;GAIZ;IACD,IAAI,EAAE,QAAQ;IACd,eAAe,EAAE,UAAU;CAC5B,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,9 +1,10 @@
1
1
  import type { Payload as LeadPayload } from './lead/generated-types';
2
2
  import type { Payload as CustomPayload } from './customObject/generated-types';
3
3
  import type { Payload as CasePayload } from './cases/generated-types';
4
+ import type { Payload as ContactPayload } from './contact/generated-types';
4
5
  import type { Payload as OpportunityPayload } from './opportunity/generated-types';
5
6
  import type { Payload as AccountPayload } from './account/generated-types';
6
- export declare type GenericPayload = Partial<LeadPayload & CustomPayload & CasePayload & AccountPayload & OpportunityPayload>;
7
+ export declare type GenericPayload = Partial<LeadPayload & CustomPayload & CasePayload & AccountPayload & OpportunityPayload & ContactPayload>;
7
8
  export declare type LeadBaseShapeType = {
8
9
  LastName?: string;
9
10
  Company?: string;
@@ -18,6 +19,16 @@ export declare type LeadBaseShapeType = {
18
19
  export declare type CaseBaseShapeType = {
19
20
  Description?: string;
20
21
  };
22
+ export declare type ContactBaseShapeType = {
23
+ LastName?: string;
24
+ FirstName?: string;
25
+ MailingState?: string;
26
+ MailingStreet?: string;
27
+ MailingCountry?: string;
28
+ MailingPostalCode?: string;
29
+ MailingCity?: string;
30
+ Email?: string;
31
+ };
21
32
  export declare type OpportunityBaseShapeType = {
22
33
  Amount?: string;
23
34
  CloseDate?: string;
@@ -43,4 +54,4 @@ export declare type AccountBaseShapeType = {
43
54
  Description?: string;
44
55
  Website?: string;
45
56
  };
46
- export declare type GenericBaseShape = Partial<LeadBaseShapeType & CaseBaseShapeType & AccountBaseShapeType & OpportunityBaseShapeType>;
57
+ export declare type GenericBaseShape = Partial<LeadBaseShapeType & CaseBaseShapeType & AccountBaseShapeType & OpportunityBaseShapeType & ContactBaseShapeType>;
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.54.2",
4
+ "version": "3.55.1",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/segmentio/action-destinations",
@@ -38,8 +38,8 @@
38
38
  },
39
39
  "dependencies": {
40
40
  "@amplitude/ua-parser-js": "^0.7.25",
41
- "@segment/actions-core": "^3.22.0",
42
- "@segment/actions-shared": "^1.3.0",
41
+ "@segment/actions-core": "^3.22.1",
42
+ "@segment/actions-shared": "^1.3.1",
43
43
  "cheerio": "^1.0.0-rc.10",
44
44
  "dayjs": "^1.10.7",
45
45
  "escape-goat": "^3",
@@ -62,5 +62,5 @@
62
62
  "<rootDir>/test/setup-after-env.ts"
63
63
  ]
64
64
  },
65
- "gitHead": "5bb27d09a361af1bd08db9c057bbb9c6040760a7"
65
+ "gitHead": "b92ba5074d40885ed8ac6cb5d8ea12eb99ddefe3"
66
66
  }