@segment/action-destinations 3.75.0 → 3.76.1-alpha.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 (28) hide show
  1. package/dist/destinations/google-sheets/constants.d.ts +3 -0
  2. package/dist/destinations/google-sheets/constants.js +7 -0
  3. package/dist/destinations/google-sheets/constants.js.map +1 -0
  4. package/dist/destinations/google-sheets/generated-types.d.ts +2 -0
  5. package/dist/destinations/google-sheets/generated-types.js +3 -0
  6. package/dist/destinations/google-sheets/generated-types.js.map +1 -0
  7. package/dist/destinations/google-sheets/googleapis/index.d.ts +17 -0
  8. package/dist/destinations/google-sheets/googleapis/index.js +34 -0
  9. package/dist/destinations/google-sheets/googleapis/index.js.map +1 -0
  10. package/dist/destinations/google-sheets/index.d.ts +4 -0
  11. package/dist/destinations/google-sheets/index.js +39 -0
  12. package/dist/destinations/google-sheets/index.js.map +1 -0
  13. package/dist/destinations/google-sheets/postSheet/generated-types.d.ts +10 -0
  14. package/dist/destinations/google-sheets/postSheet/generated-types.js +3 -0
  15. package/dist/destinations/google-sheets/postSheet/generated-types.js.map +1 -0
  16. package/dist/destinations/google-sheets/postSheet/index.d.ts +5 -0
  17. package/dist/destinations/google-sheets/postSheet/index.js +71 -0
  18. package/dist/destinations/google-sheets/postSheet/index.js.map +1 -0
  19. package/dist/destinations/google-sheets/postSheet/operations.d.ts +10 -0
  20. package/dist/destinations/google-sheets/postSheet/operations.js +96 -0
  21. package/dist/destinations/google-sheets/postSheet/operations.js.map +1 -0
  22. package/dist/destinations/index.js +1 -0
  23. package/dist/destinations/index.js.map +1 -1
  24. package/dist/destinations/personas-messaging-sendgrid/sendEmail/index.js +51 -30
  25. package/dist/destinations/personas-messaging-sendgrid/sendEmail/index.js.map +1 -1
  26. package/dist/destinations/salesforce/sf-properties.js +3 -3
  27. package/dist/destinations/salesforce/sf-properties.js.map +1 -1
  28. package/package.json +10 -5
@@ -0,0 +1,3 @@
1
+ export declare const CONSTANTS: {
2
+ MAX_CELLS: number;
3
+ };
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CONSTANTS = void 0;
4
+ exports.CONSTANTS = {
5
+ MAX_CELLS: 300000
6
+ };
7
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/destinations/google-sheets/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,SAAS,GAAG;IAIvB,SAAS,EAAE,MAAM;CAClB,CAAA"}
@@ -0,0 +1,2 @@
1
+ export interface Settings {
2
+ }
@@ -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/google-sheets/generated-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,17 @@
1
+ import { ModifiedResponse, RequestClient } from '@segment/actions-core';
2
+ import type { MappingSettings } from '../postSheet/operations';
3
+ export declare type GetResponse = {
4
+ range: string;
5
+ majorDimension: string;
6
+ values: string[][];
7
+ };
8
+ export declare class GoogleSheets {
9
+ request: RequestClient;
10
+ constructor(request: RequestClient);
11
+ get: (mappingSettings: MappingSettings, range: string) => Promise<ModifiedResponse<GetResponse>>;
12
+ batchUpdate: (mappingSettings: MappingSettings, batchPayload: {
13
+ range: string;
14
+ values: string[][];
15
+ }[]) => Promise<ModifiedResponse<unknown>>;
16
+ append: (mappingSettings: MappingSettings, range: string, values: string[][]) => Promise<ModifiedResponse<unknown>>;
17
+ }
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GoogleSheets = void 0;
4
+ const API_VERSION = 'v4';
5
+ class GoogleSheets {
6
+ constructor(request) {
7
+ this.get = async (mappingSettings, range) => {
8
+ return this.request(`https://sheets.googleapis.com/${API_VERSION}/spreadsheets/${mappingSettings.spreadsheetId}/values/${mappingSettings.spreadsheetName}!${range}`, {
9
+ method: 'get',
10
+ skipResponseCloning: true
11
+ });
12
+ };
13
+ this.batchUpdate = async (mappingSettings, batchPayload) => {
14
+ return this.request(`https://sheets.googleapis.com/${API_VERSION}/spreadsheets/${mappingSettings.spreadsheetId}/values:batchUpdate`, {
15
+ method: 'post',
16
+ json: {
17
+ valueInputOption: mappingSettings.dataFormat,
18
+ data: batchPayload
19
+ }
20
+ });
21
+ };
22
+ this.append = async (mappingSettings, range, values) => {
23
+ return this.request(`https://sheets.googleapis.com/${API_VERSION}/spreadsheets/${mappingSettings.spreadsheetId}/values/${mappingSettings.spreadsheetName}!${range}:append?valueInputOption=${mappingSettings.dataFormat}`, {
24
+ method: 'post',
25
+ json: {
26
+ values: values
27
+ }
28
+ });
29
+ };
30
+ this.request = request;
31
+ }
32
+ }
33
+ exports.GoogleSheets = GoogleSheets;
34
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/google-sheets/googleapis/index.ts"],"names":[],"mappings":";;;AAGA,MAAM,WAAW,GAAG,IAAI,CAAA;AAOxB,MAAa,YAAY;IAGvB,YAAY,OAAsB;QAIlC,QAAG,GAAG,KAAK,EAAE,eAAgC,EAAE,KAAa,EAA0C,EAAE;YACtG,OAAO,IAAI,CAAC,OAAO,CACjB,iCAAiC,WAAW,iBAAiB,eAAe,CAAC,aAAa,WAAW,eAAe,CAAC,eAAe,IAAI,KAAK,EAAE,EAC/I;gBACE,MAAM,EAAE,KAAK;gBACb,mBAAmB,EAAE,IAAI;aAC1B,CACF,CAAA;QACH,CAAC,CAAA;QAED,gBAAW,GAAG,KAAK,EAAE,eAAgC,EAAE,YAAqD,EAAE,EAAE;YAC9G,OAAO,IAAI,CAAC,OAAO,CACjB,iCAAiC,WAAW,iBAAiB,eAAe,CAAC,aAAa,qBAAqB,EAC/G;gBACE,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE;oBACJ,gBAAgB,EAAE,eAAe,CAAC,UAAU;oBAC5C,IAAI,EAAE,YAAY;iBACnB;aACF,CACF,CAAA;QACH,CAAC,CAAA;QAeD,WAAM,GAAG,KAAK,EAAE,eAAgC,EAAE,KAAa,EAAE,MAAkB,EAAE,EAAE;YACrF,OAAO,IAAI,CAAC,OAAO,CACjB,iCAAiC,WAAW,iBAAiB,eAAe,CAAC,aAAa,WAAW,eAAe,CAAC,eAAe,IAAI,KAAK,4BAA4B,eAAe,CAAC,UAAU,EAAE,EACrM;gBACE,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE;oBACJ,MAAM,EAAE,MAAM;iBACf;aACF,CACF,CAAA;QACH,CAAC,CAAA;QAjDC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IACxB,CAAC;CAiDF;AAtDD,oCAsDC"}
@@ -0,0 +1,4 @@
1
+ import type { DestinationDefinition } from '@segment/actions-core';
2
+ import type { Settings } from './generated-types';
3
+ declare const destination: DestinationDefinition<Settings>;
4
+ export default destination;
@@ -0,0 +1,39 @@
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 postSheet_1 = __importDefault(require("./postSheet"));
7
+ const destination = {
8
+ name: 'Google Sheets',
9
+ slug: 'actions-google-sheets',
10
+ mode: 'cloud',
11
+ authentication: {
12
+ scheme: 'oauth2',
13
+ fields: {},
14
+ refreshAccessToken: async (request, { auth }) => {
15
+ const res = await request('https://www.googleapis.com/oauth2/v4/token', {
16
+ method: 'POST',
17
+ body: new URLSearchParams({
18
+ refresh_token: auth.refreshToken,
19
+ client_id: auth.clientId,
20
+ client_secret: auth.clientSecret,
21
+ grant_type: 'refresh_token'
22
+ })
23
+ });
24
+ return { accessToken: res.data.access_token };
25
+ }
26
+ },
27
+ extendRequest({ auth }) {
28
+ return {
29
+ headers: {
30
+ authorization: `Bearer ${auth?.accessToken}`
31
+ }
32
+ };
33
+ },
34
+ actions: {
35
+ postSheet: postSheet_1.default
36
+ }
37
+ };
38
+ exports.default = destination;
39
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/google-sheets/index.ts"],"names":[],"mappings":";;;;;AAGA,4DAAmC;AAQnC,MAAM,WAAW,GAAoC;IACnD,IAAI,EAAE,eAAe;IACrB,IAAI,EAAE,uBAAuB;IAC7B,IAAI,EAAE,OAAO;IAEb,cAAc,EAAE;QACd,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE,EAAE;QAMV,kBAAkB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;YAC9C,MAAM,GAAG,GAAG,MAAM,OAAO,CAAuB,4CAA4C,EAAE;gBAC5F,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;YAEF,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;IAQD,OAAO,EAAE;QACP,SAAS,EAAT,mBAAS;KACV;CACF,CAAA;AAED,kBAAe,WAAW,CAAA"}
@@ -0,0 +1,10 @@
1
+ export interface Payload {
2
+ record_identifier: string;
3
+ operation_type: string;
4
+ spreadsheet_id: string;
5
+ spreadsheet_name: string;
6
+ data_format: string;
7
+ fields: {
8
+ [k: string]: unknown;
9
+ };
10
+ }
@@ -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/google-sheets/postSheet/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,71 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const operations_1 = require("./operations");
4
+ const action = {
5
+ title: 'Post Sheet',
6
+ description: 'Write values to a Google Sheets spreadsheet.',
7
+ defaultSubscription: 'event = "updated" or event = "new"',
8
+ fields: {
9
+ record_identifier: {
10
+ label: 'Record Identifier',
11
+ description: 'Property which uniquely identifies each row in the spreadsheet.',
12
+ type: 'string',
13
+ required: true,
14
+ default: { '@path': '$.__segment_id' }
15
+ },
16
+ operation_type: {
17
+ label: 'Operation Type',
18
+ description: "Describes the nature of the operation being performed. Only supported values are 'new' and 'updated'.",
19
+ type: 'string',
20
+ required: true,
21
+ default: { '@path': '$.event' }
22
+ },
23
+ spreadsheet_id: {
24
+ label: 'Spreadsheet ID',
25
+ description: 'The identifier of the spreadsheet. You can find this value in the URL of the spreadsheet. e.g. https://docs.google.com/spreadsheets/d/{SPREADSHEET_ID}/edit',
26
+ type: 'string',
27
+ required: true,
28
+ default: ''
29
+ },
30
+ spreadsheet_name: {
31
+ label: 'Spreadsheet Name',
32
+ description: 'The name of the spreadsheet. You can find this value on the tab at the bottom of the spreadsheet. Please provide a valid name of a sheet that already exists.',
33
+ type: 'string',
34
+ required: true,
35
+ default: 'Sheet1'
36
+ },
37
+ data_format: {
38
+ label: 'Data Format',
39
+ description: 'The way Google will interpret values. If you select raw, values will not be parsed and will be stored as-is. If you select user entered, values will be parsed as if you typed them into the UI. Numbers will stay as numbers, but strings may be converted to numbers, dates, etc. following the same rules that are applied when entering text into a cell via the Google Sheets UI.',
40
+ type: 'string',
41
+ required: true,
42
+ default: 'RAW',
43
+ choices: [
44
+ { label: 'Raw', value: 'RAW' },
45
+ { label: 'User Entered', value: 'USER_ENTERED' }
46
+ ]
47
+ },
48
+ fields: {
49
+ label: 'Fields',
50
+ description: `
51
+ The fields to write to the spreadsheet.
52
+ On the left-hand side, input the name of the field as it will appear in the Google Sheet.
53
+ On the right-hand side, select the field from your data model that maps to the given field in your sheet.
54
+
55
+ ---
56
+
57
+ `,
58
+ type: 'object',
59
+ required: true,
60
+ defaultObjectUI: 'keyvalue:only'
61
+ }
62
+ },
63
+ perform: (request, { payload }) => {
64
+ return operations_1.processData(request, [payload]);
65
+ },
66
+ performBatch: (request, { payload }) => {
67
+ return operations_1.processData(request, payload);
68
+ }
69
+ };
70
+ exports.default = action;
71
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/google-sheets/postSheet/index.ts"],"names":[],"mappings":";;AAIA,6CAA0C;AAE1C,MAAM,MAAM,GAAwC;IAClD,KAAK,EAAE,YAAY;IACnB,WAAW,EAAE,8CAA8C;IAC3D,mBAAmB,EAAE,oCAAoC;IAEzD,MAAM,EAAE;QACN,iBAAiB,EAAE;YACjB,KAAK,EAAE,mBAAmB;YAC1B,WAAW,EAAE,iEAAiE;YAC9E,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE;SACvC;QACD,cAAc,EAAE;YACd,KAAK,EAAE,gBAAgB;YACvB,WAAW,EACT,uGAAuG;YACzG,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE;SAChC;QACD,cAAc,EAAE;YACd,KAAK,EAAE,gBAAgB;YACvB,WAAW,EACT,6JAA6J;YAC/J,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE,EAAE;SACZ;QACD,gBAAgB,EAAE;YAChB,KAAK,EAAE,kBAAkB;YACzB,WAAW,EACT,+JAA+J;YACjK,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE,QAAQ;SAClB;QACD,WAAW,EAAE;YACX,KAAK,EAAE,aAAa;YACpB,WAAW,EACT,wXAAwX;YAC1X,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE,KAAK;YACd,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;gBAC9B,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,cAAc,EAAE;aACjD;SACF;QACD,MAAM,EAAE;YACN,KAAK,EAAE,QAAQ;YACf,WAAW,EAAE;;;;;;;OAOZ;YACD,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,eAAe,EAAE,eAAe;SACjC;KACF;IACD,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QAChC,OAAO,wBAAW,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,CAAC,CAAA;IACxC,CAAC;IACD,YAAY,EAAE,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QACrC,OAAO,wBAAW,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IACtC,CAAC;CACF,CAAA;AAED,kBAAe,MAAM,CAAA"}
@@ -0,0 +1,10 @@
1
+ import type { Payload } from './generated-types';
2
+ import { RequestClient } from '@segment/actions-core';
3
+ export declare type MappingSettings = {
4
+ spreadsheetId: string;
5
+ spreadsheetName: string;
6
+ dataFormat: string;
7
+ columns: string[];
8
+ };
9
+ declare function processData(request: RequestClient, events: Payload[]): Promise<(import("@segment/actions-core").ModifiedResponse<unknown> | undefined)[]>;
10
+ export { processData };
@@ -0,0 +1,96 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.processData = void 0;
7
+ const actions_core_1 = require("@segment/actions-core");
8
+ const index_1 = require("../googleapis/index");
9
+ const constants_1 = require("../constants");
10
+ const a1_notation_1 = __importDefault(require("@segment/a1-notation"));
11
+ const DATA_ROW_OFFSET = 2;
12
+ const generateColumnValuesFromFields = (identifier, fields, columns) => {
13
+ const retVal = columns.map((col) => fields[col] ?? '');
14
+ retVal.unshift(identifier);
15
+ return retVal;
16
+ };
17
+ function processGetSpreadsheetResponse(response, events, mappingSettings) {
18
+ const numColumns = mappingSettings.columns.length;
19
+ const numRows = response.values?.length;
20
+ if (numRows * numColumns > constants_1.CONSTANTS.MAX_CELLS) {
21
+ throw new actions_core_1.IntegrationError('Sheet has reached maximum limit', 'INVALID_REQUEST_DATA', 400);
22
+ }
23
+ const updateBatch = [];
24
+ const appendBatch = [];
25
+ const eventMap = new Map(events.map((e) => [e.record_identifier, e]));
26
+ if (response.values && response.values.length > 0) {
27
+ for (let i = 0; i < response.values.length; i++) {
28
+ const targetIdentifier = response.values[i][0];
29
+ if (eventMap.has(targetIdentifier)) {
30
+ const targetEvent = eventMap.get(targetIdentifier);
31
+ if (targetEvent.operation_type != 'deleted') {
32
+ updateBatch.push({
33
+ identifier: targetIdentifier,
34
+ event: targetEvent.fields,
35
+ index: i
36
+ });
37
+ }
38
+ eventMap.delete(targetIdentifier);
39
+ }
40
+ }
41
+ }
42
+ eventMap.forEach((value, key) => {
43
+ if (value.operation_type != 'deleted') {
44
+ appendBatch.push({
45
+ identifier: key,
46
+ event: value.fields
47
+ });
48
+ }
49
+ });
50
+ return { appendBatch, updateBatch };
51
+ }
52
+ async function processUpdateBatch(mappingSettings, updateBatch, gs) {
53
+ const getRange = (targetIndex, columnCount) => {
54
+ const targetRange = new a1_notation_1.default(1, targetIndex);
55
+ targetRange.addX(columnCount);
56
+ return targetRange.toString();
57
+ };
58
+ const batchPayload = updateBatch.map(({ identifier, event, index }) => {
59
+ const values = generateColumnValuesFromFields(identifier, event, mappingSettings.columns);
60
+ return {
61
+ range: `${mappingSettings.spreadsheetName}!${getRange(index + DATA_ROW_OFFSET, values.length)}`,
62
+ values: [values]
63
+ };
64
+ });
65
+ const headerRowRange = new a1_notation_1.default(1, 1, 1, mappingSettings.columns.length + 1);
66
+ batchPayload.push({
67
+ range: `${mappingSettings.spreadsheetName}!${headerRowRange.toString()}`,
68
+ values: [['id', ...mappingSettings.columns]]
69
+ });
70
+ return gs.batchUpdate(mappingSettings, batchPayload);
71
+ }
72
+ async function processAppendBatch(mappingSettings, appendBatch, gs) {
73
+ if (appendBatch.length <= 0) {
74
+ return;
75
+ }
76
+ const values = appendBatch.map(({ identifier, event }) => generateColumnValuesFromFields(identifier, event, mappingSettings.columns));
77
+ return gs.append(mappingSettings, `A${DATA_ROW_OFFSET}`, values);
78
+ }
79
+ async function processData(request, events) {
80
+ const mappingSettings = {
81
+ spreadsheetId: events[0].spreadsheet_id,
82
+ spreadsheetName: events[0].spreadsheet_name,
83
+ dataFormat: events[0].data_format,
84
+ columns: Object.getOwnPropertyNames(events[0].fields)
85
+ };
86
+ const gs = new index_1.GoogleSheets(request);
87
+ const response = await gs.get(mappingSettings, `A${DATA_ROW_OFFSET}:A`);
88
+ const { appendBatch, updateBatch } = processGetSpreadsheetResponse(response.data, events, mappingSettings);
89
+ const promises = [
90
+ processUpdateBatch(mappingSettings, updateBatch, gs),
91
+ processAppendBatch(mappingSettings, appendBatch, gs)
92
+ ];
93
+ return await Promise.all(promises);
94
+ }
95
+ exports.processData = processData;
96
+ //# sourceMappingURL=operations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operations.js","sourceRoot":"","sources":["../../../../src/destinations/google-sheets/postSheet/operations.ts"],"names":[],"mappings":"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"}
@@ -41,6 +41,7 @@ register('61dde0dc77eb0db0392649d3', './friendbuy');
41
41
  register('61f83101210c42a28a88d240', './gainsight-px-cloud-action');
42
42
  register('60ad61f9ff47a16b8fb7b5d9', './google-analytics-4');
43
43
  register('60ae8b97dcb6cc52d5d0d5ab', './google-enhanced-conversions');
44
+ register('627ea052118e3cd530d28963', './google-sheets');
44
45
  register('624dddd054ced46facfdb9c0', './launchdarkly');
45
46
  register('615c7438d93d9b61b1e9e192', './mixpanel');
46
47
  register('61a8032ea5f157ee37a720be', './metronome');
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/destinations/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/destinations/index.ts"],"names":[],"mappings":"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"}
@@ -25,15 +25,20 @@ const getProfileApiEndpoint = (environment) => {
25
25
  return `https://profiles.segment.${environment === 'production' ? 'com' : 'build'}`;
26
26
  };
27
27
  const fetchProfileTraits = async (request, settings, profileId) => {
28
- const endpoint = getProfileApiEndpoint(settings.profileApiEnvironment);
29
- const response = await request(`${endpoint}/v1/spaces/${settings.spaceId}/collections/users/profiles/user_id:${profileId}/traits?limit=200`, {
30
- headers: {
31
- authorization: `Basic ${Buffer.from(settings.profileApiAccessToken + ':').toString('base64')}`,
32
- 'content-type': 'application/json'
33
- }
34
- });
35
- const body = await response.json();
36
- return body.traits;
28
+ try {
29
+ const endpoint = getProfileApiEndpoint(settings.profileApiEnvironment);
30
+ const response = await request(`${endpoint}/v1/spaces/${settings.spaceId}/collections/users/profiles/user_id:${profileId}/traits?limit=200`, {
31
+ headers: {
32
+ authorization: `Basic ${Buffer.from(settings.profileApiAccessToken + ':').toString('base64')}`,
33
+ 'content-type': 'application/json'
34
+ }
35
+ });
36
+ const body = await response.json();
37
+ return body.traits;
38
+ }
39
+ catch (error) {
40
+ throw new actions_core_1.IntegrationError('Unable to get profile traits', 'Trait fetch failure', 500);
41
+ }
37
42
  };
38
43
  const isRestrictedDomain = (email) => {
39
44
  const restricted = ['gmailx.com', 'yahoox.com', 'aolx.com', 'hotmailx.com'];
@@ -45,19 +50,33 @@ const isRestrictedDomain = (email) => {
45
50
  return restricted.includes(domain);
46
51
  };
47
52
  const generateEmailHtml = async (request, apiKey, design) => {
48
- const response = await request('https://api.unlayer.com/v2/export/html', {
49
- method: 'POST',
50
- headers: {
51
- authorization: `Basic ${Buffer.from(`${apiKey}:`).toString('base64')}`,
52
- 'content-type': 'application/json'
53
- },
54
- body: JSON.stringify({
55
- displayMode: 'email',
56
- design: JSON.parse(design)
57
- })
58
- });
59
- const body = await response.json();
60
- return body.data.html;
53
+ try {
54
+ const response = await request('https://api.unlayer.com/v2/export/html', {
55
+ method: 'POST',
56
+ headers: {
57
+ authorization: `Basic ${Buffer.from(`${apiKey}:`).toString('base64')}`,
58
+ 'content-type': 'application/json'
59
+ },
60
+ body: JSON.stringify({
61
+ displayMode: 'email',
62
+ design: JSON.parse(design)
63
+ })
64
+ });
65
+ const body = await response.json();
66
+ return body.data.html;
67
+ }
68
+ catch (error) {
69
+ throw new actions_core_1.IntegrationError('Unable to export email as HTML', 'Export HTML failure', 400);
70
+ }
71
+ };
72
+ const parseTemplating = async (content, profile, contentType) => {
73
+ try {
74
+ const parsedContent = await Liquid.parseAndRender(content, { profile });
75
+ return parsedContent;
76
+ }
77
+ catch (error) {
78
+ throw new actions_core_1.IntegrationError(`Unable to parse templating in email ${contentType}`, `${contentType} templating parse failure`, 400);
79
+ }
61
80
  };
62
81
  const EXTERNAL_ID_KEY = 'email';
63
82
  const action = {
@@ -239,19 +258,21 @@ const action = {
239
258
  name = traits.first_name || traits.last_name || traits.firstName || traits.lastName || 'User';
240
259
  }
241
260
  const bcc = JSON.parse(payload.bcc ?? '[]');
242
- let bodyHtml = payload.bodyHtml ?? '';
261
+ const parsedSubject = await parseTemplating(payload.subject, profile, 'Subject');
262
+ let parsedBodyHtml;
243
263
  if (payload.bodyUrl && settings.unlayerApiKey) {
244
264
  const response = await request(payload.bodyUrl);
245
265
  const body = await response.text();
246
- bodyHtml = payload.bodyType === 'html' ? body : await generateEmailHtml(request, settings.unlayerApiKey, body);
266
+ const bodyHtml = payload.bodyType === 'html' ? body : await generateEmailHtml(request, settings.unlayerApiKey, body);
267
+ parsedBodyHtml = await parseTemplating(bodyHtml, profile, 'Body');
247
268
  if (payload.previewText) {
248
- bodyHtml = insertEmailPreviewText(bodyHtml, payload.previewText);
269
+ const parsedPreviewText = await parseTemplating(payload.previewText, profile, 'Preview text');
270
+ parsedBodyHtml = insertEmailPreviewText(parsedBodyHtml, parsedPreviewText);
249
271
  }
250
272
  }
251
- const [parsedSubject, parsedBody] = await Promise.all([
252
- Liquid.parseAndRender(payload.subject, { profile }),
253
- Liquid.parseAndRender(bodyHtml, { profile })
254
- ]);
273
+ else {
274
+ parsedBodyHtml = await parseTemplating(payload.bodyHtml ?? '', profile, 'Body HTML');
275
+ }
255
276
  return request('https://api.sendgrid.com/v3/mail/send', {
256
277
  method: 'post',
257
278
  headers: {
@@ -289,7 +310,7 @@ const action = {
289
310
  content: [
290
311
  {
291
312
  type: 'text/html',
292
- value: parsedBody
313
+ value: parsedBodyHtml
293
314
  }
294
315
  ],
295
316
  tracking_settings: {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/personas-messaging-sendgrid/sendEmail/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/personas-messaging-sendgrid/sendEmail/index.ts"],"names":[],"mappings":"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"}
@@ -8,9 +8,9 @@ exports.operation = {
8
8
  type: 'string',
9
9
  required: true,
10
10
  choices: [
11
- { label: 'Create', value: 'create' },
12
- { label: 'Update', value: 'update' },
13
- { label: 'Upsert', value: 'upsert' },
11
+ { label: 'Create new record', value: 'create' },
12
+ { label: 'Update existing record', value: 'update' },
13
+ { label: `Update or create a record if one doesn't exist`, value: 'upsert' },
14
14
  { label: 'Bulk Upsert', value: 'bulkUpsert' },
15
15
  { label: 'Bulk Update', value: 'bulkUpdate' }
16
16
  ]
@@ -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,kHAAkH;IACpH,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;QACpC,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,YAAY,EAAE;QAC7C,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,YAAY,EAAE;KAC9C;CACF,CAAA;AAEY,QAAA,oBAAoB,GAAe;IAC9C,KAAK,EAAE,yBAAyB;IAChC,WAAW,EAAE,gEAAgE;IAC7E,IAAI,EAAE,QAAQ;IACd,eAAe,EAAE,eAAe;IAChC,oBAAoB,EAAE,KAAK;IAC3B,UAAU,EAAE;QACV,cAAc,EAAE;YACd,KAAK,EAAE,kBAAkB;YACzB,WAAW,EAAE,sDAAsD;YACnE,IAAI,EAAE,QAAQ;SACf;QACD,eAAe,EAAE;YACf,KAAK,EAAE,mBAAmB;YAC1B,WAAW,EAAE,qDAAqD;YAClE,IAAI,EAAE,QAAQ;SACf;KACF;CACF,CAAA;AAEY,QAAA,kBAAkB,GAAe;IAC5C,KAAK,EAAE,uBAAuB;IAC9B,WAAW,EAAE,6CAA6C;IAC1D,IAAI,EAAE,QAAQ;CACf,CAAA;AAEY,QAAA,MAAM,GAAe;IAChC,KAAK,EAAE,iBAAiB;IACxB,WAAW,EAAE;;;;;;;;GAQZ;IACD,IAAI,EAAE,QAAQ;IACd,eAAe,EAAE,eAAe;CACjC,CAAA;AAEY,QAAA,YAAY,GAAe;IACtC,KAAK,EAAE,cAAc;IACrB,WAAW,EAAE;;;;;;;GAOZ;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
+ {"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,kHAAkH;IACpH,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,IAAI;IACd,OAAO,EAAE;QACP,EAAE,KAAK,EAAE,mBAAmB,EAAE,KAAK,EAAE,QAAQ,EAAE;QAC/C,EAAE,KAAK,EAAE,wBAAwB,EAAE,KAAK,EAAE,QAAQ,EAAE;QACpD,EAAE,KAAK,EAAE,gDAAgD,EAAE,KAAK,EAAE,QAAQ,EAAE;QAC5E,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,YAAY,EAAE;QAC7C,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,YAAY,EAAE;KAC9C;CACF,CAAA;AAEY,QAAA,oBAAoB,GAAe;IAC9C,KAAK,EAAE,yBAAyB;IAChC,WAAW,EAAE,gEAAgE;IAC7E,IAAI,EAAE,QAAQ;IACd,eAAe,EAAE,eAAe;IAChC,oBAAoB,EAAE,KAAK;IAC3B,UAAU,EAAE;QACV,cAAc,EAAE;YACd,KAAK,EAAE,kBAAkB;YACzB,WAAW,EAAE,sDAAsD;YACnE,IAAI,EAAE,QAAQ;SACf;QACD,eAAe,EAAE;YACf,KAAK,EAAE,mBAAmB;YAC1B,WAAW,EAAE,qDAAqD;YAClE,IAAI,EAAE,QAAQ;SACf;KACF;CACF,CAAA;AAEY,QAAA,kBAAkB,GAAe;IAC5C,KAAK,EAAE,uBAAuB;IAC9B,WAAW,EAAE,6CAA6C;IAC1D,IAAI,EAAE,QAAQ;CACf,CAAA;AAEY,QAAA,MAAM,GAAe;IAChC,KAAK,EAAE,iBAAiB;IACxB,WAAW,EAAE;;;;;;;;GAQZ;IACD,IAAI,EAAE,QAAQ;IACd,eAAe,EAAE,eAAe;CACjC,CAAA;AAEY,QAAA,YAAY,GAAe;IACtC,KAAK,EAAE,cAAc;IACrB,WAAW,EAAE;;;;;;;GAOZ;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"}
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.75.0",
4
+ "version": "3.76.1-alpha.1",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/segmentio/action-destinations",
@@ -27,7 +27,7 @@
27
27
  "clean": "tsc -b tsconfig.build.json --clean",
28
28
  "postclean": "rm -rf dist",
29
29
  "prepublishOnly": "yarn build",
30
- "test": "jest",
30
+ "test": "jest --coverage",
31
31
  "typecheck": "tsc -p tsconfig.build.json --noEmit"
32
32
  },
33
33
  "devDependencies": {
@@ -37,8 +37,9 @@
37
37
  },
38
38
  "dependencies": {
39
39
  "@amplitude/ua-parser-js": "^0.7.25",
40
- "@segment/actions-core": "^3.24.2",
41
- "@segment/actions-shared": "^1.7.2",
40
+ "@segment/a1-notation": "^2.1.4",
41
+ "@segment/actions-core": "^3.25.0",
42
+ "@segment/actions-shared": "^1.8.0",
42
43
  "cheerio": "^1.0.0-rc.10",
43
44
  "dayjs": "^1.10.7",
44
45
  "escape-goat": "^3",
@@ -59,7 +60,11 @@
59
60
  },
60
61
  "setupFilesAfterEnv": [
61
62
  "<rootDir>/test/setup-after-env.ts"
63
+ ],
64
+ "coverageReporters": [
65
+ "html",
66
+ "lcov"
62
67
  ]
63
68
  },
64
- "gitHead": "f9e7bfedf5d5b81da0a8abc58b1def100c5f80f6"
69
+ "gitHead": "ec1f8f2e0ac66e8c2b35da64f18c2fd1f79cc148"
65
70
  }