@twilio/flex-dev-utils 6.3.3-alpha.202403191011 → 6.3.3-alpha.202403191236
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/telemetry/lib/telemetry.d.ts +11 -1
- package/dist/telemetry/lib/telemetry.js +30 -6
- package/dist/telemetry/lib/telemetry.js.map +1 -1
- package/dist/telemetry/lib/track.d.ts +4 -0
- package/dist/telemetry/lib/track.js +6 -21
- package/dist/telemetry/lib/track.js.map +1 -1
- package/package.json +4 -4
|
@@ -1,10 +1,19 @@
|
|
|
1
|
+
import { TrackParams } from '@segment/analytics-node';
|
|
2
|
+
export declare const track: (payload: TrackParams) => void;
|
|
3
|
+
declare type TelemetryOpts = {
|
|
4
|
+
/**
|
|
5
|
+
* If set to `true` calls Segment APIs in a daemon process asynchronously
|
|
6
|
+
*/
|
|
7
|
+
runAsync?: boolean;
|
|
8
|
+
};
|
|
1
9
|
export default class Telemetry {
|
|
2
10
|
private commonProperties;
|
|
11
|
+
private runAsync;
|
|
3
12
|
/**
|
|
4
13
|
* Creates an analytics instance
|
|
5
14
|
*
|
|
6
15
|
*/
|
|
7
|
-
constructor();
|
|
16
|
+
constructor({ runAsync }?: TelemetryOpts);
|
|
8
17
|
/**
|
|
9
18
|
* Records any event or actions that users perform.
|
|
10
19
|
* @param event Event name
|
|
@@ -14,3 +23,4 @@ export default class Telemetry {
|
|
|
14
23
|
private getOsDetails;
|
|
15
24
|
private getRealm;
|
|
16
25
|
}
|
|
26
|
+
export {};
|
|
@@ -33,18 +33,37 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
33
33
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
34
34
|
};
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.track = void 0;
|
|
36
37
|
var os = __importStar(require("os"));
|
|
37
38
|
var path_1 = require("path");
|
|
38
39
|
var daemonize_process_1 = __importDefault(require("daemonize-process"));
|
|
40
|
+
var analytics_node_1 = __importDefault(require("@segment/analytics-node"));
|
|
39
41
|
var constants_1 = require("./constants");
|
|
40
42
|
var fs = __importStar(require("../../fs"));
|
|
41
43
|
var env_1 = require("../../env");
|
|
44
|
+
var getKey = function () {
|
|
45
|
+
var region = env_1.env.getRegion();
|
|
46
|
+
if (region === 'stage') {
|
|
47
|
+
return constants_1.STAGE_VALUE;
|
|
48
|
+
}
|
|
49
|
+
else if (region === 'dev') {
|
|
50
|
+
return constants_1.DEV_VALUE;
|
|
51
|
+
}
|
|
52
|
+
return constants_1.PROD_VALUE;
|
|
53
|
+
};
|
|
54
|
+
var track = function (payload) {
|
|
55
|
+
var analytics = new analytics_node_1.default({ writeKey: getKey() });
|
|
56
|
+
analytics.track(payload);
|
|
57
|
+
};
|
|
58
|
+
exports.track = track;
|
|
42
59
|
var Telemetry = /** @class */ (function () {
|
|
43
60
|
/**
|
|
44
61
|
* Creates an analytics instance
|
|
45
62
|
*
|
|
46
63
|
*/
|
|
47
|
-
function Telemetry() {
|
|
64
|
+
function Telemetry(_a) {
|
|
65
|
+
var _b = _a === void 0 ? {} : _a, _c = _b.runAsync, runAsync = _c === void 0 ? true : _c;
|
|
66
|
+
this.runAsync = runAsync;
|
|
48
67
|
var env = process.env;
|
|
49
68
|
var language = env.LANG || env.LANGUAGE || env.LC_ALL || env.LC_MESSAGES;
|
|
50
69
|
var pluginName = 'n/a';
|
|
@@ -78,17 +97,22 @@ var Telemetry = /** @class */ (function () {
|
|
|
78
97
|
* @param properties Event properties
|
|
79
98
|
*/
|
|
80
99
|
Telemetry.prototype.track = function (event, accountSid, properties) {
|
|
81
|
-
var
|
|
100
|
+
var payload = {
|
|
82
101
|
userId: accountSid,
|
|
83
102
|
event: event,
|
|
84
103
|
properties: __assign(__assign(__assign({}, this.commonProperties), { accountSid: accountSid }), properties),
|
|
85
104
|
};
|
|
86
105
|
if (!env_1.env.isCI()) {
|
|
87
106
|
// Fork a new process for the daemon
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
107
|
+
if (this.runAsync) {
|
|
108
|
+
daemonize_process_1.default({
|
|
109
|
+
script: path_1.join(__dirname, 'track.js'),
|
|
110
|
+
arguments: [JSON.stringify(payload)],
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
else {
|
|
114
|
+
exports.track(payload);
|
|
115
|
+
}
|
|
92
116
|
}
|
|
93
117
|
};
|
|
94
118
|
Telemetry.prototype.getOsDetails = function () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telemetry.js","sourceRoot":"","sources":["../../../src/telemetry/lib/telemetry.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"telemetry.js","sourceRoot":"","sources":["../../../src/telemetry/lib/telemetry.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,24 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
/**
|
|
3
|
+
* Script to call Segment Track method with the track payload
|
|
4
|
+
* This is used when Segment APIs need to be called in a daemon process asynchronously
|
|
5
|
+
*/
|
|
5
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
var
|
|
7
|
-
|
|
8
|
-
var constants_1 = require("./constants");
|
|
9
|
-
function getKey() {
|
|
10
|
-
var region = flex_plugins_utils_env_1.env.getRegion();
|
|
11
|
-
if (region === 'stage') {
|
|
12
|
-
return constants_1.STAGE_VALUE;
|
|
13
|
-
}
|
|
14
|
-
else if (region === 'dev') {
|
|
15
|
-
return constants_1.DEV_VALUE;
|
|
16
|
-
}
|
|
17
|
-
return constants_1.PROD_VALUE;
|
|
18
|
-
}
|
|
19
|
-
function send(traceData) {
|
|
20
|
-
var analytics = new analytics_node_1.default({ writeKey: getKey() });
|
|
21
|
-
analytics.track(traceData);
|
|
22
|
-
}
|
|
23
|
-
send(JSON.parse(process.argv[2]));
|
|
7
|
+
var telemetry_1 = require("./telemetry");
|
|
8
|
+
telemetry_1.track(JSON.parse(process.argv[2]));
|
|
24
9
|
//# sourceMappingURL=track.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"track.js","sourceRoot":"","sources":["../../../src/telemetry/lib/track.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"track.js","sourceRoot":"","sources":["../../../src/telemetry/lib/track.ts"],"names":[],"mappings":";AAAA;;;GAGG;;AAEH,yCAAoC;AAEpC,iBAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@twilio/flex-dev-utils",
|
|
3
|
-
"version": "6.3.3-alpha.
|
|
3
|
+
"version": "6.3.3-alpha.202403191236",
|
|
4
4
|
"description": "Common development utility for creating a Flex plugin",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"flex",
|
|
@@ -35,8 +35,8 @@
|
|
|
35
35
|
"dependencies": {
|
|
36
36
|
"@k88/pipe-compose": "^2.5.0",
|
|
37
37
|
"@segment/analytics-node": "^2.0.0",
|
|
38
|
-
"@twilio/flex-plugins-utils-env": "6.3.3-alpha.
|
|
39
|
-
"@twilio/flex-plugins-utils-exception": "6.3.3-alpha.
|
|
38
|
+
"@twilio/flex-plugins-utils-env": "6.3.3-alpha.202403191236",
|
|
39
|
+
"@twilio/flex-plugins-utils-exception": "6.3.3-alpha.202403191236",
|
|
40
40
|
"address": "^1.1.2",
|
|
41
41
|
"adm-zip": "0.5.10",
|
|
42
42
|
"app-module-path": "^2.2.0",
|
|
@@ -99,5 +99,5 @@
|
|
|
99
99
|
"publishConfig": {
|
|
100
100
|
"access": "public"
|
|
101
101
|
},
|
|
102
|
-
"gitHead": "
|
|
102
|
+
"gitHead": "837fd9fe9c60fac9de3d2b05dc5e39f895af794e"
|
|
103
103
|
}
|