@segment/actions-shared 1.92.0-staging-4cdde7a9f → 1.92.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 (82) hide show
  1. package/dist/index.d.ts +0 -1
  2. package/dist/index.js +0 -1
  3. package/dist/index.js.map +1 -1
  4. package/package.json +2 -2
  5. package/dist/engage/utils/AggregateError.d.ts +0 -14
  6. package/dist/engage/utils/AggregateError.js +0 -26
  7. package/dist/engage/utils/AggregateError.js.map +0 -1
  8. package/dist/engage/utils/EngageActionPerformer.d.ts +0 -42
  9. package/dist/engage/utils/EngageActionPerformer.js +0 -148
  10. package/dist/engage/utils/EngageActionPerformer.js.map +0 -1
  11. package/dist/engage/utils/EngageLogger.d.ts +0 -18
  12. package/dist/engage/utils/EngageLogger.js +0 -52
  13. package/dist/engage/utils/EngageLogger.js.map +0 -1
  14. package/dist/engage/utils/EngageStats.d.ts +0 -18
  15. package/dist/engage/utils/EngageStats.js +0 -95
  16. package/dist/engage/utils/EngageStats.js.map +0 -1
  17. package/dist/engage/utils/IntegrationErrorWrapper.d.ts +0 -12
  18. package/dist/engage/utils/IntegrationErrorWrapper.js +0 -31
  19. package/dist/engage/utils/IntegrationErrorWrapper.js.map +0 -1
  20. package/dist/engage/utils/MessageSendPerformer.d.ts +0 -65
  21. package/dist/engage/utils/MessageSendPerformer.js +0 -211
  22. package/dist/engage/utils/MessageSendPerformer.js.map +0 -1
  23. package/dist/engage/utils/Profile.d.ts +0 -6
  24. package/dist/engage/utils/Profile.js +0 -3
  25. package/dist/engage/utils/Profile.js.map +0 -1
  26. package/dist/engage/utils/ResponseError.d.ts +0 -25
  27. package/dist/engage/utils/ResponseError.js +0 -22
  28. package/dist/engage/utils/ResponseError.js.map +0 -1
  29. package/dist/engage/utils/getProfileApiEndpoint.d.ts +0 -2
  30. package/dist/engage/utils/getProfileApiEndpoint.js +0 -10
  31. package/dist/engage/utils/getProfileApiEndpoint.js.map +0 -1
  32. package/dist/engage/utils/index.d.ts +0 -14
  33. package/dist/engage/utils/index.js +0 -27
  34. package/dist/engage/utils/index.js.map +0 -1
  35. package/dist/engage/utils/isDestinationActionService.d.ts +0 -1
  36. package/dist/engage/utils/isDestinationActionService.js +0 -8
  37. package/dist/engage/utils/isDestinationActionService.js.map +0 -1
  38. package/dist/engage/utils/isRetryableError.d.ts +0 -2
  39. package/dist/engage/utils/isRetryableError.js +0 -33
  40. package/dist/engage/utils/isRetryableError.js.map +0 -1
  41. package/dist/engage/utils/operationTracking/GenericMethodDecorator.d.ts +0 -1
  42. package/dist/engage/utils/operationTracking/GenericMethodDecorator.js +0 -3
  43. package/dist/engage/utils/operationTracking/GenericMethodDecorator.js.map +0 -1
  44. package/dist/engage/utils/operationTracking/OperationDecorator.d.ts +0 -46
  45. package/dist/engage/utils/operationTracking/OperationDecorator.js +0 -46
  46. package/dist/engage/utils/operationTracking/OperationDecorator.js.map +0 -1
  47. package/dist/engage/utils/operationTracking/OperationDuration.d.ts +0 -12
  48. package/dist/engage/utils/operationTracking/OperationDuration.js +0 -23
  49. package/dist/engage/utils/operationTracking/OperationDuration.js.map +0 -1
  50. package/dist/engage/utils/operationTracking/OperationErrorHandler.d.ts +0 -12
  51. package/dist/engage/utils/operationTracking/OperationErrorHandler.js +0 -35
  52. package/dist/engage/utils/operationTracking/OperationErrorHandler.js.map +0 -1
  53. package/dist/engage/utils/operationTracking/OperationFinallyHooks.d.ts +0 -14
  54. package/dist/engage/utils/operationTracking/OperationFinallyHooks.js +0 -31
  55. package/dist/engage/utils/operationTracking/OperationFinallyHooks.js.map +0 -1
  56. package/dist/engage/utils/operationTracking/OperationLogger.d.ts +0 -31
  57. package/dist/engage/utils/operationTracking/OperationLogger.js +0 -104
  58. package/dist/engage/utils/operationTracking/OperationLogger.js.map +0 -1
  59. package/dist/engage/utils/operationTracking/OperationStats.d.ts +0 -39
  60. package/dist/engage/utils/operationTracking/OperationStats.js +0 -130
  61. package/dist/engage/utils/operationTracking/OperationStats.js.map +0 -1
  62. package/dist/engage/utils/operationTracking/OperationTracker.test.d.ts +0 -1
  63. package/dist/engage/utils/operationTracking/OperationTracker.test.js +0 -377
  64. package/dist/engage/utils/operationTracking/OperationTracker.test.js.map +0 -1
  65. package/dist/engage/utils/operationTracking/OperationTree.d.ts +0 -23
  66. package/dist/engage/utils/operationTracking/OperationTree.js +0 -49
  67. package/dist/engage/utils/operationTracking/OperationTree.js.map +0 -1
  68. package/dist/engage/utils/operationTracking/TrackedError.d.ts +0 -6
  69. package/dist/engage/utils/operationTracking/TrackedError.js +0 -3
  70. package/dist/engage/utils/operationTracking/TrackedError.js.map +0 -1
  71. package/dist/engage/utils/operationTracking/index.d.ts +0 -10
  72. package/dist/engage/utils/operationTracking/index.js +0 -23
  73. package/dist/engage/utils/operationTracking/index.js.map +0 -1
  74. package/dist/engage/utils/operationTracking/wrapTryCatchFinallyPromisable.d.ts +0 -21
  75. package/dist/engage/utils/operationTracking/wrapTryCatchFinallyPromisable.js +0 -99
  76. package/dist/engage/utils/operationTracking/wrapTryCatchFinallyPromisable.js.map +0 -1
  77. package/dist/engage/utils/testUtils.d.ts +0 -6
  78. package/dist/engage/utils/testUtils.js +0 -27
  79. package/dist/engage/utils/testUtils.js.map +0 -1
  80. package/dist/engage/utils/track.d.ts +0 -52
  81. package/dist/engage/utils/track.js +0 -9
  82. package/dist/engage/utils/track.js.map +0 -1
package/dist/index.d.ts CHANGED
@@ -6,4 +6,3 @@ export * from './friendbuy/sharedCustomEvent';
6
6
  export * from './friendbuy/sharedPurchase';
7
7
  export * from './friendbuy/sharedSignUp';
8
8
  export * from './friendbuy/util';
9
- export * from './engage/utils';
package/dist/index.js CHANGED
@@ -18,5 +18,4 @@ __exportStar(require("./friendbuy/sharedCustomEvent"), exports);
18
18
  __exportStar(require("./friendbuy/sharedPurchase"), exports);
19
19
  __exportStar(require("./friendbuy/sharedSignUp"), exports);
20
20
  __exportStar(require("./friendbuy/util"), exports);
21
- __exportStar(require("./engage/utils"), exports);
22
21
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2DAAwC;AACxC,4DAAyC;AACzC,uDAAoC;AACpC,6DAA0C;AAC1C,gEAA6C;AAC7C,6DAA0C;AAC1C,2DAAwC;AACxC,mDAAgC;AAChC,iDAA8B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2DAAwC;AACxC,4DAAyC;AACzC,uDAAoC;AACpC,6DAA0C;AAC1C,gEAA6C;AAC7C,6DAA0C;AAC1C,2DAAwC;AACxC,mDAAgC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@segment/actions-shared",
3
3
  "description": "Shared destination action methods and definitions.",
4
- "version": "1.92.0-staging-4cdde7a9f",
4
+ "version": "1.92.0",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/segmentio/action-destinations",
@@ -64,5 +64,5 @@
64
64
  "<rootDir>/test/setup-after-env.ts"
65
65
  ]
66
66
  },
67
- "gitHead": "c259f0b3db91bb1667d15d3cc993372e4cbe7af6"
67
+ "gitHead": "3816f53f5d794dfd577e364a13da24f72096ae9e"
68
68
  }
@@ -1,14 +0,0 @@
1
- import { IntegrationError } from '@segment/actions-core';
2
- export declare class AggregateError extends IntegrationError {
3
- errors: any[];
4
- data?: any;
5
- static create(args: {
6
- errors: any[];
7
- code?: string;
8
- status?: number;
9
- takeCodeAndStatusFromError?: any;
10
- message?: (msg: string) => string;
11
- }): AggregateError;
12
- constructor(errors: any[], code?: string, status?: number, data?: any, message?: string);
13
- [key: string]: any;
14
- }
@@ -1,26 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AggregateError = void 0;
4
- const actions_core_1 = require("@segment/actions-core");
5
- const ResponseError_1 = require("./ResponseError");
6
- class AggregateError extends actions_core_1.IntegrationError {
7
- constructor(errors, code, status, data, message) {
8
- super(message || 'Multiple errors', code, status);
9
- this.errors = errors;
10
- this.data = data;
11
- }
12
- static create(args) {
13
- const firstErrorInfo = ResponseError_1.getErrorDetails(args.takeCodeAndStatusFromError ? args.takeCodeAndStatusFromError : args.errors[0]);
14
- if (!args.code)
15
- args.code = firstErrorInfo.code;
16
- if (!args.status)
17
- args.status = firstErrorInfo.status;
18
- let message = `Multiple errors (${args.errors.length}): ${args.errors
19
- .map((e) => ResponseError_1.getErrorDetails(e).message)
20
- .join(', ')}`;
21
- message = args.message?.(message) || message;
22
- return new AggregateError(args.errors, args.code, args.status, undefined, message);
23
- }
24
- }
25
- exports.AggregateError = AggregateError;
26
- //# sourceMappingURL=AggregateError.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AggregateError.js","sourceRoot":"","sources":["../../../src/engage/utils/AggregateError.ts"],"names":[],"mappings":";;;AAAA,wDAAwD;AACxD,mDAAiD;AAEjD,MAAa,cAAe,SAAQ,+BAAgB;IAqBlD,YAAmB,MAAa,EAAE,IAAa,EAAE,MAAe,EAAS,IAAU,EAAE,OAAgB;QACnG,KAAK,CAAC,OAAO,IAAI,iBAAiB,EAAE,IAAK,EAAE,MAAO,CAAC,CAAA;QADlC,WAAM,GAAN,MAAM,CAAO;QAAyC,SAAI,GAAJ,IAAI,CAAM;IAEnF,CAAC;IAtBD,MAAM,CAAC,MAAM,CAAC,IAMb;QACC,MAAM,cAAc,GAAG,+BAAe,CACpC,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CACnF,CAAA;QAED,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC,IAAI,CAAA;QAC/C,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC,MAAM,CAAA;QACrD,IAAI,OAAO,GAAG,oBAAoB,IAAI,CAAC,MAAM,CAAC,MAAM,MAAM,IAAI,CAAC,MAAM;aAClE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,+BAAe,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;aACtC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAA;QACf,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,OAAO,CAAA;QAC5C,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAA;IACpF,CAAC;CAOF;AA1BD,wCA0BC"}
@@ -1,42 +0,0 @@
1
- import { RequestClient } from '@segment/actions-core/create-request-client';
2
- import { ExecuteInput } from '@segment/actions-core/destination-kit';
3
- import { MaybePromise } from '@segment/actions-core/destination-kit/types';
4
- import { EngageLogger } from './EngageLogger';
5
- import { EngageStats } from './EngageStats';
6
- import { OperationContext } from './track';
7
- import { RequestOptions } from '@segment/actions-core/request-client';
8
- import { IntegrationError } from '@segment/actions-core';
9
- import { Awaited } from './operationTracking';
10
- export declare abstract class EngageActionPerformer<TSettings = any, TPayload = any, TReturn = any> {
11
- readonly requestClient: RequestClient;
12
- readonly executeInput: ExecuteInput<TSettings, TPayload>;
13
- readonly logger: EngageLogger;
14
- readonly statsClient: EngageStats;
15
- readonly dataFeedCache: import("@segment/actions-core/destination-kit").DataFeedCache | undefined;
16
- readonly currentOperation: OperationContext | undefined;
17
- readonly payload: TPayload;
18
- readonly settings: TSettings;
19
- constructor(requestClient: RequestClient, executeInput: ExecuteInput<TSettings, TPayload>);
20
- beforePerform?(): void | Promise<void>;
21
- perform(): Promise<TReturn>;
22
- abstract doPerform(): MaybePromise<TReturn>;
23
- abstract getIntegrationStatsName(): string;
24
- abstract getChannelType(): string;
25
- request<Data = unknown>(url: string, options?: RequestOptions): Promise<import("@segment/actions-core/create-request-client").ModifiedResponse<Data>>;
26
- onResponse?(args: {
27
- response?: Awaited<ReturnType<RequestClient>>;
28
- error?: any;
29
- operation: OperationContext;
30
- }): void;
31
- redactPii(pii: string | undefined): string | undefined;
32
- isFeatureActive(featureName: string, getDefault?: () => boolean): boolean | undefined;
33
- logInfo(msg: string, metadata?: object): void;
34
- logError(msg: string, metadata?: object): void;
35
- logOnError(logMessage: string | ((ctx: OperationContext) => string)): void;
36
- statsIncr(metric: string, value?: number, tags?: string[]): void;
37
- statsHistogram(metric: string, value: number, tags?: string[]): void;
38
- statsSet(metric: string, value: number, tags?: string[]): void;
39
- get logDetails(): Record<string, unknown>;
40
- get tags(): string[];
41
- rethrowIntegrationError(error: unknown, getWrapper: () => IntegrationError | ConstructorParameters<typeof IntegrationError>): never;
42
- }
@@ -1,148 +0,0 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- var __importDefault = (this && this.__importDefault) || function (mod) {
9
- return (mod && mod.__esModule) ? mod : { "default": mod };
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.EngageActionPerformer = void 0;
13
- const EngageLogger_1 = require("./EngageLogger");
14
- const EngageStats_1 = require("./EngageStats");
15
- const track_1 = require("./track");
16
- const isDestinationActionService_1 = require("./isDestinationActionService");
17
- const ResponseError_1 = require("./ResponseError");
18
- const IntegrationErrorWrapper_1 = require("./IntegrationErrorWrapper");
19
- const truncate_1 = __importDefault(require("lodash/truncate"));
20
- class EngageActionPerformer {
21
- constructor(requestClient, executeInput) {
22
- this.requestClient = requestClient;
23
- this.executeInput = executeInput;
24
- this.logger = new EngageLogger_1.EngageLogger(this);
25
- this.statsClient = new EngageStats_1.EngageStats(this);
26
- this.dataFeedCache = this.executeInput.dataFeedCache;
27
- this.payload = executeInput.payload;
28
- this.settings = executeInput.settings;
29
- }
30
- async perform() {
31
- await this.beforePerform?.();
32
- return this.doPerform();
33
- }
34
- async request(url, options) {
35
- const op = this.currentOperation;
36
- op?.onFinally.push(() => {
37
- const respError = op?.error;
38
- if (respError) {
39
- const errorDetails = ResponseError_1.getErrorDetails(respError);
40
- const msgLowercare = errorDetails?.message?.toLowerCase();
41
- const isTimeoutError = msgLowercare?.includes('timeout') ||
42
- msgLowercare?.includes('timedout') ||
43
- msgLowercare?.includes('exceeded the deadline') ||
44
- errorDetails.code?.toLowerCase().includes('etimedout');
45
- if (isTimeoutError) {
46
- const status = errorDetails.status ?? respError.status ?? 408;
47
- respError.status = status;
48
- errorDetails.status = status;
49
- const errorCode = errorDetails.code ?? respError.code ?? 'etimedout';
50
- respError.code = errorCode;
51
- errorDetails.code = errorCode;
52
- respError.retry = true;
53
- }
54
- if (errorDetails.code)
55
- op.tags.push(`response_code:${errorDetails.code}`);
56
- if (errorDetails.status)
57
- op.tags.push(`response_status:${errorDetails.status}`);
58
- if (this.onResponse)
59
- try {
60
- this.onResponse({ error: respError, operation: op });
61
- }
62
- catch (e) {
63
- op.logs.push(`Error in onResponse: ${e}`);
64
- }
65
- }
66
- else {
67
- const resp = op?.result;
68
- if (resp && resp.status)
69
- op.tags.push(`response_status:${resp.status}`);
70
- if (this.onResponse)
71
- try {
72
- this.onResponse({ response: resp, operation: op });
73
- }
74
- catch (e) {
75
- op.logs.push(`Error in onResponse: ${e}`);
76
- }
77
- }
78
- });
79
- return await this.requestClient(url, options);
80
- }
81
- redactPii(pii) {
82
- if (!pii) {
83
- return pii;
84
- }
85
- if (pii.length <= 8) {
86
- return '***';
87
- }
88
- return pii.substring(0, 3) + '***' + pii.substring(pii.length - 3);
89
- }
90
- isFeatureActive(featureName, getDefault) {
91
- if (isDestinationActionService_1.isDestinationActionService())
92
- return true;
93
- if (!this.executeInput.features || !(featureName in this.executeInput.features))
94
- return getDefault?.();
95
- return this.executeInput.features[featureName];
96
- }
97
- logInfo(msg, metadata) {
98
- this.logger.logInfo(msg, metadata);
99
- }
100
- logError(msg, metadata) {
101
- this.logger.logError(msg, metadata);
102
- }
103
- logOnError(logMessage) {
104
- const op = this.currentOperation;
105
- op?.onFinally.push(() => {
106
- if (op.error) {
107
- const msg = typeof logMessage === 'function' ? logMessage(op) : logMessage;
108
- op.logs.push(msg);
109
- }
110
- });
111
- }
112
- statsIncr(metric, value, tags) {
113
- this.statsClient.stats({ method: 'incr', metric, value, tags });
114
- }
115
- statsHistogram(metric, value, tags) {
116
- this.statsClient.stats({ method: 'histogram', metric, value, tags });
117
- }
118
- statsSet(metric, value, tags) {
119
- this.statsClient.stats({ method: 'set', metric, value, tags });
120
- }
121
- get logDetails() {
122
- return this.logger.logDetails;
123
- }
124
- get tags() {
125
- return this.statsClient.tags;
126
- }
127
- rethrowIntegrationError(error, getWrapper) {
128
- throw IntegrationErrorWrapper_1.IntegrationErrorWrapper.wrap(error, getWrapper, this.currentOperation);
129
- }
130
- }
131
- __decorate([
132
- track_1.track()
133
- ], EngageActionPerformer.prototype, "perform", null);
134
- __decorate([
135
- track_1.track({
136
- onTry: addUrlToLog,
137
- onFinally: addUrlToLog
138
- })
139
- ], EngageActionPerformer.prototype, "request", null);
140
- exports.EngageActionPerformer = EngageActionPerformer;
141
- function addUrlToLog(ctx) {
142
- const ctxFull = ctx;
143
- const argUrl = ctx.funcArgs?.[0];
144
- if (ctxFull.logs && argUrl) {
145
- ctxFull.logs.push(truncate_1.default(argUrl, { length: 70 }));
146
- }
147
- }
148
- //# sourceMappingURL=EngageActionPerformer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EngageActionPerformer.js","sourceRoot":"","sources":["../../../src/engage/utils/EngageActionPerformer.ts"],"names":[],"mappings":"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"}
@@ -1,18 +0,0 @@
1
- import { Logger } from '@segment/actions-core/destination-kit';
2
- import { OperationLogger, OperationLoggerContext, TryCatchFinallyHook } from './operationTracking';
3
- import { EngageActionPerformer } from './EngageActionPerformer';
4
- export declare const FLAGON_NAME_LOG_INFO = "engage-messaging-log-info";
5
- export declare const FLAGON_NAME_LOG_ERROR = "engage-messaging-log-error";
6
- export declare class EngageLogger extends OperationLogger {
7
- actionPerformer: EngageActionPerformer;
8
- static getTryCatchFinallyHook(_ctx: OperationLoggerContext): TryCatchFinallyHook<OperationLoggerContext>;
9
- constructor(actionPerformer: EngageActionPerformer);
10
- readonly channelType: string;
11
- get loggerClient(): Logger | undefined;
12
- readonly logDetails: Record<string, unknown>;
13
- logInfo(msg: string, metadata?: object): void;
14
- logError(msg: string, metadata?: object): void;
15
- error(msg: string, metadata?: object): void;
16
- info(msg: string, metadata?: object): void;
17
- getErrorMessage(error: unknown): string;
18
- }
@@ -1,52 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EngageLogger = exports.FLAGON_NAME_LOG_ERROR = exports.FLAGON_NAME_LOG_INFO = void 0;
4
- const operationTracking_1 = require("./operationTracking");
5
- const ResponseError_1 = require("./ResponseError");
6
- exports.FLAGON_NAME_LOG_INFO = 'engage-messaging-log-info';
7
- exports.FLAGON_NAME_LOG_ERROR = 'engage-messaging-log-error';
8
- class EngageLogger extends operationTracking_1.OperationLogger {
9
- constructor(actionPerformer) {
10
- super();
11
- this.actionPerformer = actionPerformer;
12
- this.logDetails = {};
13
- this.channelType = this.actionPerformer.getChannelType().toUpperCase();
14
- }
15
- static getTryCatchFinallyHook(_ctx) {
16
- const msgSender = _ctx.funcThis;
17
- return msgSender?.logger;
18
- }
19
- get loggerClient() {
20
- return this.actionPerformer.executeInput.logger;
21
- }
22
- logInfo(msg, metadata) {
23
- const msgs = [msg, ...(metadata ? [JSON.stringify(metadata)] : [])];
24
- if (!this.actionPerformer.isFeatureActive(exports.FLAGON_NAME_LOG_INFO, () => false))
25
- return;
26
- const [firstMsg, ...rest] = msgs;
27
- this.loggerClient?.info(`TE Messaging: ${this.channelType} ${firstMsg}`, ...rest, JSON.stringify({ ...this.logDetails, ...metadata }));
28
- }
29
- logError(msg, metadata) {
30
- if (!this.actionPerformer.isFeatureActive(exports.FLAGON_NAME_LOG_ERROR, () => false))
31
- return;
32
- const msgPrefix = `⛔ TE Messaging: ${this.channelType}`;
33
- this.loggerClient?.error(`${msgPrefix} ${msg}`, JSON.stringify({ ...this.logDetails, ...metadata }));
34
- }
35
- error(msg, metadata) {
36
- return this.logError(msg, metadata);
37
- }
38
- info(msg, metadata) {
39
- return this.logInfo(msg, metadata);
40
- }
41
- getErrorMessage(error) {
42
- const errorDetails = ResponseError_1.getErrorDetails(error);
43
- let res = `${errorDetails.message}`;
44
- if (errorDetails.code)
45
- res += `. Code: ${errorDetails.code}`;
46
- if (errorDetails.status)
47
- res += `. Status: ${errorDetails.status}`;
48
- return res;
49
- }
50
- }
51
- exports.EngageLogger = EngageLogger;
52
- //# sourceMappingURL=EngageLogger.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EngageLogger.js","sourceRoot":"","sources":["../../../src/engage/utils/EngageLogger.ts"],"names":[],"mappings":";;;AAGA,2DAAkG;AAElG,mDAAiD;AAEpC,QAAA,oBAAoB,GAAG,2BAA2B,CAAA;AAClD,QAAA,qBAAqB,GAAG,4BAA4B,CAAA;AAEjE,MAAa,YAAa,SAAQ,mCAAe;IAM/C,YAAmB,eAAsC;QACvD,KAAK,EAAE,CAAA;QADU,oBAAe,GAAf,eAAe,CAAuB;QAQhD,eAAU,GAA4B,EAAE,CAAA;QAN/C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,cAAc,EAAE,CAAC,WAAW,EAAE,CAAA;IACxE,CAAC;IARD,MAAM,CAAC,sBAAsB,CAAC,IAA4B;QACxD,MAAM,SAAS,GAAG,IAAI,CAAC,QAAiC,CAAA;QACxD,OAAO,SAAS,EAAE,MAAM,CAAA;IAC1B,CAAC;IAOD,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,MAAM,CAAA;IACjD,CAAC;IAGD,OAAO,CAAC,GAAW,EAAE,QAAiB;QACpC,MAAM,IAAI,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QACnE,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,4BAAoB,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC;YAAE,OAAM;QACpF,MAAM,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAA;QAChC,IAAI,CAAC,YAAY,EAAE,IAAI,CACrB,iBAAiB,IAAI,CAAC,WAAW,IAAI,QAAQ,EAAE,EAC/C,GAAG,IAAI,EACP,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,IAAI,CAAC,UAAU,EAAE,GAAG,QAAQ,EAAE,CAAC,CACpD,CAAA;IACH,CAAC;IAED,QAAQ,CAAC,GAAW,EAAE,QAAiB;QACrC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,6BAAqB,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC;YAAE,OAAM;QACrF,MAAM,SAAS,GAAG,mBAAmB,IAAI,CAAC,WAAW,EAAE,CAAA;QACvD,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,GAAG,SAAS,IAAI,GAAG,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,IAAI,CAAC,UAAU,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAA;IACtG,CAAC;IACD,KAAK,CAAC,GAAW,EAAE,QAAiB;QAClC,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAA;IACrC,CAAC;IACD,IAAI,CAAC,GAAW,EAAE,QAAiB;QACjC,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAA;IACpC,CAAC;IAED,eAAe,CAAC,KAAc;QAC5B,MAAM,YAAY,GAAG,+BAAe,CAAC,KAAK,CAAC,CAAA;QAC3C,IAAI,GAAG,GAAG,GAAG,YAAY,CAAC,OAAO,EAAE,CAAA;QACnC,IAAI,YAAY,CAAC,IAAI;YAAE,GAAG,IAAI,WAAW,YAAY,CAAC,IAAI,EAAE,CAAA;QAC5D,IAAI,YAAY,CAAC,MAAM;YAAE,GAAG,IAAI,aAAa,YAAY,CAAC,MAAM,EAAE,CAAA;QAClE,OAAO,GAAG,CAAA;IACZ,CAAC;CACF;AA9CD,oCA8CC"}
@@ -1,18 +0,0 @@
1
- import { StatsClient } from '@segment/actions-core/destination-kit';
2
- import { StatsArgs, OperationStats, OperationStatsContext, TryCatchFinallyHook, TrackedError } from './operationTracking';
3
- import { EngageActionPerformer } from './EngageActionPerformer';
4
- export declare class EngageStats extends OperationStats {
5
- actionPerformer: EngageActionPerformer;
6
- static getTryCatchFinallyHook(_ctx: OperationStatsContext): TryCatchFinallyHook<OperationStatsContext>;
7
- constructor(actionPerformer: EngageActionPerformer);
8
- onTry(ctx: OperationStatsContext): () => void;
9
- get statsClient(): StatsClient | undefined;
10
- get tags(): string[];
11
- _tags: string[];
12
- stats(statsArgs: StatsArgs): void;
13
- incr(metric: string, value?: number, tags?: string[]): void;
14
- histogram(metric: string, value?: number, tags?: string[]): void;
15
- set(metric: string, value?: number, tags?: string[]): void;
16
- extractTagsFromError(error: TrackedError, ctx: OperationStatsContext): string[];
17
- getOperationNameTag(ctx: OperationStatsContext): string | undefined;
18
- }
@@ -1,95 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EngageStats = void 0;
4
- const operationTracking_1 = require("./operationTracking");
5
- const ResponseError_1 = require("./ResponseError");
6
- class EngageStats extends operationTracking_1.OperationStats {
7
- constructor(actionPerformer) {
8
- super();
9
- this.actionPerformer = actionPerformer;
10
- this._tags = [];
11
- }
12
- static getTryCatchFinallyHook(_ctx) {
13
- const msgSender = _ctx.funcThis;
14
- return msgSender?.statsClient;
15
- }
16
- onTry(ctx) {
17
- const res = super.onTry(ctx);
18
- ctx.sharedContext.tags.push(`space_id:${this.actionPerformer.settings.spaceId}`, `projectid:${this.actionPerformer.settings.sourceId}`, `computation_id:${this.actionPerformer.payload.segmentComputationId}`, `settings_region:${this.actionPerformer.settings.region}`, `channel:${this.actionPerformer.getChannelType()}`);
19
- const correlation_id = this.actionPerformer.payload.customArgs?.correlation_id ||
20
- this.actionPerformer.payload.customArgs?.__segment_internal_correlation_id__;
21
- if (correlation_id)
22
- ctx.sharedContext.tags.push(`correlation_id:${correlation_id}`);
23
- const parentOperation = ctx.parent;
24
- if (parentOperation) {
25
- const operation_path = this.getOperationNameTag(parentOperation);
26
- if (operation_path)
27
- ctx.tags.push('operation_path:' + operation_path);
28
- }
29
- return res;
30
- }
31
- get statsClient() {
32
- return this.actionPerformer.executeInput.statsContext?.statsClient;
33
- }
34
- get tags() {
35
- if (this.actionPerformer.currentOperation?.tags)
36
- return this.actionPerformer.currentOperation.tags;
37
- if (this.actionPerformer.executeInput.statsContext?.tags)
38
- return this.actionPerformer.executeInput.statsContext?.tags;
39
- return this._tags;
40
- }
41
- stats(statsArgs) {
42
- if (!this.statsClient)
43
- return;
44
- const { method: statsMethod, metric, value, tags } = statsArgs;
45
- let statsFunc = this.statsClient?.[statsMethod || 'incr'].bind(this.statsClient);
46
- if (!statsFunc)
47
- switch (statsMethod ||
48
- 'incr') {
49
- case 'incr':
50
- statsFunc = this.statsClient?.incr.bind(this.statsClient);
51
- break;
52
- break;
53
- case 'histogram':
54
- statsFunc = this.statsClient?.histogram.bind(this.statsClient);
55
- break;
56
- break;
57
- case 'set':
58
- statsFunc = this.statsClient?.set.bind(this.statsClient);
59
- break;
60
- break;
61
- default:
62
- break;
63
- }
64
- statsFunc?.(`${this.actionPerformer.getIntegrationStatsName()}.${metric}`, typeof value === 'undefined' ? 1 : value, [...(this.actionPerformer.executeInput.statsContext?.tags || []), ...(tags ?? [])]);
65
- }
66
- incr(metric, value, tags) {
67
- this.stats({ metric, value, tags, method: 'incr' });
68
- }
69
- histogram(metric, value, tags) {
70
- this.stats({ metric, value, tags, method: 'histogram' });
71
- }
72
- set(metric, value, tags) {
73
- this.stats({ metric, value, tags, method: 'set' });
74
- }
75
- extractTagsFromError(error, ctx) {
76
- const res = super.extractTagsFromError(error, ctx);
77
- const errDetails = ResponseError_1.getErrorDetails(error);
78
- if (errDetails?.code)
79
- res.push(`error_code:${errDetails.code}`);
80
- if (errDetails?.status)
81
- res.push(`error_status:${errDetails.status}`);
82
- if (error.underlyingError) {
83
- const underlyingErrorTags = this.extractTagsFromError(error.underlyingError, ctx);
84
- res.push(...underlyingErrorTags.map((t) => `underlying_${t}`));
85
- }
86
- return res;
87
- }
88
- getOperationNameTag(ctx) {
89
- if (!ctx)
90
- return undefined;
91
- return this.actionPerformer.logger.getOperationName(ctx, true, '::');
92
- }
93
- }
94
- exports.EngageStats = EngageStats;
95
- //# sourceMappingURL=EngageStats.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EngageStats.js","sourceRoot":"","sources":["../../../src/engage/utils/EngageStats.ts"],"names":[],"mappings":"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"}
@@ -1,12 +0,0 @@
1
- import { IntegrationError } from '@segment/actions-core';
2
- import { TryCatchFinallyContext, TryCatchFinallyHook } from './operationTracking';
3
- export declare type IntegrationErrorWrapperContext<TContext extends TryCatchFinallyContext = TryCatchFinallyContext> = TContext & {
4
- decoratorArgs?: {
5
- wrapIntegrationError?: (ctx: TContext) => IntegrationError | ConstructorParameters<typeof IntegrationError>;
6
- };
7
- };
8
- export declare class IntegrationErrorWrapper {
9
- static getTryCatchFinallyHook(_ctx: IntegrationErrorWrapperContext): TryCatchFinallyHook<IntegrationErrorWrapperContext>;
10
- static onCatch(ctx: IntegrationErrorWrapperContext): void;
11
- static wrap<TContext extends TryCatchFinallyContext>(error: unknown, getWrapper: () => IntegrationError | ConstructorParameters<typeof IntegrationError>, ctx?: TContext): import("./operationTracking").TrackedError<TryCatchFinallyContext<(this: any, ...args: any[]) => any>> | undefined;
12
- }
@@ -1,31 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.IntegrationErrorWrapper = void 0;
4
- const actions_core_1 = require("@segment/actions-core");
5
- const operationTracking_1 = require("./operationTracking");
6
- class IntegrationErrorWrapper {
7
- static getTryCatchFinallyHook(_ctx) {
8
- return this;
9
- }
10
- static onCatch(ctx) {
11
- const getWrapper = ctx.decoratorArgs?.wrapIntegrationError;
12
- if (!getWrapper)
13
- return;
14
- ctx.error = this.wrap(ctx.error, () => getWrapper(ctx), ctx);
15
- }
16
- static wrap(error, getWrapper, ctx) {
17
- return operationTracking_1.OperationErrorHandler.wrap(error, () => {
18
- if (error instanceof actions_core_1.IntegrationError)
19
- return error;
20
- const wrapper = getWrapper();
21
- const resultError = (Array.isArray(wrapper) ? new actions_core_1.IntegrationError(...wrapper) : wrapper);
22
- const responseErrorStatus = resultError.response?.data?.status;
23
- if (responseErrorStatus) {
24
- resultError.status = responseErrorStatus;
25
- }
26
- return resultError;
27
- }, ctx);
28
- }
29
- }
30
- exports.IntegrationErrorWrapper = IntegrationErrorWrapper;
31
- //# sourceMappingURL=IntegrationErrorWrapper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IntegrationErrorWrapper.js","sourceRoot":"","sources":["../../../src/engage/utils/IntegrationErrorWrapper.ts"],"names":[],"mappings":";;;AAAA,wDAAwD;AACxD,2DAAwG;AAcxG,MAAa,uBAAuB;IAClC,MAAM,CAAC,sBAAsB,CAC3B,IAAoC;QAEpC,OAAO,IAAI,CAAA;IACb,CAAC;IACD,MAAM,CAAC,OAAO,CAAC,GAAmC;QAChD,MAAM,UAAU,GAAG,GAAG,CAAC,aAAa,EAAE,oBAAoB,CAAA;QAC1D,IAAI,CAAC,UAAU;YAAE,OAAM;QACvB,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAA;IAC9D,CAAC;IAED,MAAM,CAAC,IAAI,CACT,KAAc,EACd,UAAmF,EACnF,GAAc;QAEd,OAAO,yCAAqB,CAAC,IAAI,CAC/B,KAAK,EACL,GAAG,EAAE;YACH,IAAI,KAAK,YAAY,+BAAgB;gBAAE,OAAO,KAAK,CAAA;YACnD,MAAM,OAAO,GAAG,UAAU,EAAE,CAAA;YAC5B,MAAM,WAAW,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,+BAAgB,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAkB,CAAA;YAG1G,MAAM,mBAAmB,GAAG,WAAW,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAA;YAC9D,IAAI,mBAAmB,EAAE;gBACvB,WAAW,CAAC,MAAM,GAAG,mBAAmB,CAAA;aACzC;YACD,OAAO,WAAW,CAAA;QACpB,CAAC,EACD,GAAG,CACJ,CAAA;IACH,CAAC;CACF;AAlCD,0DAkCC"}
@@ -1,65 +0,0 @@
1
- import { EngageActionPerformer } from './EngageActionPerformer';
2
- import { MaybePromise } from '@segment/actions-core/destination-kit/types';
3
- export declare enum SendabilityStatus {
4
- ShouldSend = "should_send",
5
- NotSubscribed = "not_subscribed",
6
- NoSupportedExternalIds = "no_supported_ids",
7
- InvalidSubscriptionStatus = "invalid_subscription_status",
8
- SendDisabled = "send_disabled"
9
- }
10
- export interface MessagePayloadBase {
11
- sendBasedOnOptOut?: boolean;
12
- send?: boolean;
13
- userId?: string;
14
- customArgs?: {
15
- [k: string]: unknown;
16
- };
17
- externalIds?: {
18
- id?: string;
19
- type?: string;
20
- channelType?: string;
21
- subscriptionStatus?: string;
22
- }[];
23
- traitEnrichment?: boolean;
24
- traits?: {
25
- [k: string]: unknown;
26
- };
27
- }
28
- export interface MessageSettingsBase {
29
- region?: string;
30
- sourceId?: string;
31
- spaceId?: string;
32
- profileApiEnvironment: string;
33
- profileApiAccessToken: string;
34
- }
35
- export declare type ExtId<TPayload extends MessagePayloadBase> = NonNullable<TPayload['externalIds']>[number];
36
- export interface SendabilityPayload<TPayload extends MessagePayloadBase> {
37
- sendabilityStatus: SendabilityStatus | string;
38
- recepients?: ExtId<TPayload>[];
39
- invalid?: ExtId<TPayload>[];
40
- }
41
- export declare type RecepientSendResult<TPayload extends MessagePayloadBase, TResult = any> = {
42
- recepient: ExtId<TPayload>;
43
- status: 'fulfilled' | 'rejected';
44
- result?: TResult;
45
- error?: any;
46
- };
47
- export declare abstract class MessageSendPerformer<TSettings extends MessageSettingsBase, TPayload extends MessagePayloadBase> extends EngageActionPerformer<TSettings, TPayload> {
48
- doPerform(): Promise<RecepientSendResult<TPayload, any>[]>;
49
- abstract isSupportedExternalId(externalId: NonNullable<TPayload['externalIds']>[number]): boolean;
50
- static readonly nonSendableStatuses: string[];
51
- static readonly sendableStatuses: string[];
52
- getStaticMembersOfThisClass<ThisStaticClass extends typeof MessageSendPerformer = typeof MessageSendPerformer>(): ThisStaticClass;
53
- isExternalIdSubscribed(extId: ExtId<TPayload>): boolean | undefined;
54
- convertSubscriptionStatusText(subVal: string | undefined): string;
55
- getSendabilityPayload(): SendabilityPayload<TPayload>;
56
- getRecepients(): ExtId<TPayload>[];
57
- abstract sendToRecepient(recepient: ExtId<TPayload>): any;
58
- beforePerform(): void;
59
- getDefaultSettingsRegion?(): string;
60
- statsEventDeliveryTs(): void;
61
- beforeSend?(recepients: ExtId<TPayload>[]): MaybePromise<void>;
62
- forAllRecepients<TResult = any>(sendToRecepient: (recepient: ExtId<TPayload>) => TResult): Promise<RecepientSendResult<TPayload, TResult>[]>;
63
- aggregateSendResults(sendResults: RecepientSendResult<TPayload>[]): any;
64
- getProfileTraits(): Promise<Record<string, string>>;
65
- }