@tramvai/cli 4.10.1 → 4.11.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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"AAqDA,wBAAsB,cAAc,CAAC,OAAO,WAAe,sDAyD1D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"AAqDA,wBAAsB,cAAc,CAAC,OAAO,WAAe,sDA0D1D"}
package/lib/cli/index.js CHANGED
@@ -67,6 +67,7 @@ function cliInitialized(cliArgs = process.argv) {
67
67
  const analytic = new analytics_1.Analytics({
68
68
  packageInfo,
69
69
  trackingCode: 'UA-122261674-1',
70
+ enabled: process.env.TRAMVAI_ENABLE_ANALYTICS === 'true',
70
71
  });
71
72
  const configManager = new config_1.ConfigManager({ config, syncConfigFile: syncJsonFile_1.syncJsonFile });
72
73
  const packageManager = (0, package_manager_wrapper_1.resolvePackageManager)({ rootDir: process.cwd() });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
@@ -7,24 +7,22 @@ interface ActionEvent extends Event {
7
7
  label?: string;
8
8
  parameters?: any;
9
9
  }
10
- interface ErrorEvent extends Event {
11
- errorMessage?: string;
12
- errorStatus?: number;
13
- }
14
10
  export declare class Analytics {
11
+ private readonly enabled;
15
12
  private visitor;
16
13
  private trackErrorInternal;
17
14
  private trackCommandInternal;
18
15
  private trackTimingInternal;
19
- trackError: (event: ErrorEvent, ...args: any[]) => Promise<void>;
20
- track: (event: ActionEvent, ...args: any[]) => Promise<void>;
21
- trackTiming: (event: ActionEvent, ...args: any[]) => Promise<void>;
22
- constructor({ trackingCode, packageInfo: { name, version } }: {
16
+ private readonly trackError;
17
+ private readonly track;
18
+ private readonly trackTiming;
19
+ constructor({ trackingCode, packageInfo: { name, version }, enabled }: {
23
20
  trackingCode: any;
24
21
  packageInfo: {
25
22
  name: any;
26
23
  version: any;
27
24
  };
25
+ enabled: any;
28
26
  });
29
27
  trackAfter(actionEvent: ActionEvent): <TResult>(promise: Promise<TResult>) => Promise<TResult>;
30
28
  private promisify;
@@ -1 +1 @@
1
- {"version":3,"file":"analytics.d.ts","sourceRoot":"","sources":["../../src/models/analytics.ts"],"names":[],"mappings":"AAKA,UAAU,KAAK;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,UAAU,WAAY,SAAQ,KAAK;IACjC,QAAQ,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,GAAG,CAAC;CAClB;AAED,UAAU,UAAW,SAAQ,KAAK;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,OAAO,CAAU;IAEzB,OAAO,CAAC,kBAAkB,CAExB;IAEF,OAAO,CAAC,oBAAoB,CAa1B;IAEF,OAAO,CAAC,mBAAmB,CAEzB;IAEF,UAAU,yCAwC4C,QAAQ,IAAI,CAAC,CAxCd;IAGrD,KAAK,0CAqCiD,QAAQ,IAAI,CAAC,CArCjB;IAGlD,WAAW,0CAkC2C,QAAQ,IAAI,CAAC,CAlCZ;gBAE3C,EAAE,YAAY,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;;;;;;KAAA;IAS5D,UAAU,CAAC,WAAW,EAAE,WAAW;IAsBnC,OAAO,CAAC,SAAS;CAOlB"}
1
+ {"version":3,"file":"analytics.d.ts","sourceRoot":"","sources":["../../src/models/analytics.ts"],"names":[],"mappings":"AAKA,UAAU,KAAK;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,UAAU,WAAY,SAAQ,KAAK;IACjC,QAAQ,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,GAAG,CAAC;CAClB;AAOD,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAElC,OAAO,CAAC,OAAO,CAAU;IAEzB,OAAO,CAAC,kBAAkB,CAMxB;IAEF,OAAO,CAAC,oBAAoB,CAiB1B;IAEF,OAAO,CAAC,mBAAmB,CAMzB;IAEF,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA2C;IAEtE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA6C;IAEnE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA4C;gBAE5D,EAAE,YAAY,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE;;;;;;;KAAA;IAarE,UAAU,CAAC,WAAW,EAAE,WAAW;IAsBnC,OAAO,CAAC,SAAS;CAOlB"}
@@ -6,11 +6,17 @@ const universal_analytics_1 = tslib_1.__importDefault(require("universal-analyti
6
6
  const string_1 = tslib_1.__importDefault(require("@tinkoff/utils/is/string"));
7
7
  const perf_hooks_1 = require("perf_hooks");
8
8
  class Analytics {
9
- constructor({ trackingCode, packageInfo: { name, version } }) {
9
+ constructor({ trackingCode, packageInfo: { name, version }, enabled }) {
10
10
  this.trackErrorInternal = ({ name, errorMessage, errorStatus }, resolve) => {
11
+ if (!this.enabled) {
12
+ return;
13
+ }
11
14
  this.visitor.event('error', name, errorMessage, errorStatus).send(resolve);
12
15
  };
13
16
  this.trackCommandInternal = ({ name, executionTime, label, parameters, category }, resolve) => {
17
+ if (!this.enabled) {
18
+ return;
19
+ }
14
20
  const path = [category, name, label].join('/');
15
21
  const event = this.visitor
16
22
  .screenview({ cd: path })
@@ -21,18 +27,22 @@ class Analytics {
21
27
  event.send(resolve);
22
28
  };
23
29
  this.trackTimingInternal = ({ name, executionTime, category }, resolve) => {
30
+ if (!this.enabled) {
31
+ return;
32
+ }
24
33
  this.visitor.timing(category, name, Math.floor(executionTime)).send(resolve);
25
34
  };
26
35
  this.trackError = this.promisify(this.trackErrorInternal);
27
- // tslint:disable-line member-ordering
28
36
  this.track = this.promisify(this.trackCommandInternal);
29
- // tslint:disable-line member-ordering
30
37
  this.trackTiming = this.promisify(this.trackTimingInternal);
31
- this.visitor = (0, universal_analytics_1.default)(trackingCode);
32
- this.visitor.set('ds', 'app');
33
- this.visitor.set('an', name);
34
- this.visitor.set('av', version);
35
- this.visitor.set('aid', 'tramvai-cli');
38
+ this.enabled = enabled !== null && enabled !== void 0 ? enabled : false;
39
+ if (this.enabled) {
40
+ this.visitor = (0, universal_analytics_1.default)(trackingCode);
41
+ this.visitor.set('ds', 'app');
42
+ this.visitor.set('an', name);
43
+ this.visitor.set('av', version);
44
+ this.visitor.set('aid', 'tramvai-cli');
45
+ }
36
46
  }
37
47
  trackAfter(actionEvent) {
38
48
  const startedAt = perf_hooks_1.performance.now();
@@ -57,7 +67,7 @@ class Analytics {
57
67
  });
58
68
  }
59
69
  promisify(func) {
60
- return function promisifed(event, ...args) {
70
+ return function promisified(event, ...args) {
61
71
  return new Promise((resolve) => func(event, resolve, ...args));
62
72
  };
63
73
  }
@@ -1 +1 @@
1
- {"version":3,"file":"analytics.js","sourceRoot":"","sources":["../../src/models/analytics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"analytics.js","sourceRoot":"","sources":["../../src/models/analytics.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tramvai/cli",
3
- "version": "4.10.1",
3
+ "version": "4.11.1",
4
4
  "description": "Cli инструмент для сборки и запуска приложений",
5
5
  "files": [
6
6
  "src",
@@ -72,7 +72,7 @@
72
72
  "@tinkoff/utils": "^2.1.3",
73
73
  "@tinkoff/webpack-dedupe-plugin": "3.0.1",
74
74
  "@tramvai/build": "5.0.3",
75
- "@tramvai/react": "4.10.1",
75
+ "@tramvai/react": "4.11.1",
76
76
  "@tramvai/tools-check-versions": "0.6.1",
77
77
  "@tramvai/tools-migrate": "0.8.1",
78
78
  "ajv": "^8.12.0",
package/src/cli/index.ts CHANGED
@@ -73,6 +73,7 @@ export async function cliInitialized(cliArgs = process.argv) {
73
73
  const analytic = new Analytics({
74
74
  packageInfo,
75
75
  trackingCode: 'UA-122261674-1',
76
+ enabled: process.env.TRAMVAI_ENABLE_ANALYTICS === 'true',
76
77
  });
77
78
 
78
79
  const configManager = new ConfigManager({ config, syncConfigFile: syncJsonFile });
@@ -20,9 +20,15 @@ interface ErrorEvent extends Event {
20
20
  }
21
21
 
22
22
  export class Analytics {
23
+ private readonly enabled: boolean;
24
+
23
25
  private visitor: Visitor;
24
26
 
25
27
  private trackErrorInternal = ({ name, errorMessage, errorStatus }: ErrorEvent, resolve) => {
28
+ if (!this.enabled) {
29
+ return;
30
+ }
31
+
26
32
  this.visitor.event('error', name, errorMessage, errorStatus).send(resolve);
27
33
  };
28
34
 
@@ -30,6 +36,10 @@ export class Analytics {
30
36
  { name, executionTime, label, parameters, category }: ActionEvent,
31
37
  resolve
32
38
  ) => {
39
+ if (!this.enabled) {
40
+ return;
41
+ }
42
+
33
43
  const path = [category, name, label].join('/');
34
44
  const event = this.visitor
35
45
  .screenview({ cd: path })
@@ -42,24 +52,30 @@ export class Analytics {
42
52
  };
43
53
 
44
54
  private trackTimingInternal = ({ name, executionTime, category }: ActionEvent, resolve) => {
55
+ if (!this.enabled) {
56
+ return;
57
+ }
58
+
45
59
  this.visitor.timing(category, name, Math.floor(executionTime)).send(resolve);
46
60
  };
47
61
 
48
- trackError = this.promisify(this.trackErrorInternal);
62
+ private readonly trackError = this.promisify(this.trackErrorInternal);
49
63
 
50
- // tslint:disable-line member-ordering
51
- track = this.promisify(this.trackCommandInternal);
64
+ private readonly track = this.promisify(this.trackCommandInternal);
52
65
 
53
- // tslint:disable-line member-ordering
54
- trackTiming = this.promisify(this.trackTimingInternal);
66
+ private readonly trackTiming = this.promisify(this.trackTimingInternal);
55
67
 
56
- constructor({ trackingCode, packageInfo: { name, version } }) {
57
- this.visitor = ua(trackingCode);
68
+ constructor({ trackingCode, packageInfo: { name, version }, enabled }) {
69
+ this.enabled = enabled ?? false;
58
70
 
59
- this.visitor.set('ds', 'app');
60
- this.visitor.set('an', name);
61
- this.visitor.set('av', version);
62
- this.visitor.set('aid', 'tramvai-cli');
71
+ if (this.enabled) {
72
+ this.visitor = ua(trackingCode);
73
+
74
+ this.visitor.set('ds', 'app');
75
+ this.visitor.set('an', name);
76
+ this.visitor.set('av', version);
77
+ this.visitor.set('aid', 'tramvai-cli');
78
+ }
63
79
  }
64
80
 
65
81
  trackAfter(actionEvent: ActionEvent) {
@@ -85,7 +101,7 @@ export class Analytics {
85
101
  }
86
102
 
87
103
  private promisify<TEvent>(func: (event: TEvent, resolve: any, ...args) => void) {
88
- return function promisifed(event: TEvent, ...args): Promise<void> {
104
+ return function promisified(event: TEvent, ...args): Promise<void> {
89
105
  return new Promise((resolve) => func(event, resolve, ...args));
90
106
  };
91
107
  }