@nordicsemiconductor/pc-nrfconnect-shared 150.0.0 → 151.0.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.
- package/Changelog.md +24 -1
- package/nrfutil/sandbox.ts +6 -6
- package/package.json +2 -2
- package/src/App/App.test.tsx +11 -2
- package/src/App/App.tsx +3 -3
- package/src/Device/DeviceSelector/DeviceSelector.test.tsx +13 -0
- package/src/Device/DeviceSelector/DeviceSelector.tsx +6 -6
- package/src/Device/deviceLister.ts +4 -4
- package/src/ErrorBoundary/ErrorBoundary.test.tsx +5 -5
- package/src/ErrorBoundary/ErrorBoundary.tsx +14 -13
- package/src/Parsers/shellParser.ts +3 -3
- package/src/index.ts +2 -2
- package/src/telemetry/TelemetryMetadata.ts +9 -0
- package/src/telemetry/TelemetrySender.ts +80 -0
- package/src/telemetry/TelemetrySenderInMain.ts +80 -0
- package/src/telemetry/TelemetrySenderInRenderer.ts +86 -0
- package/src/telemetry/flatObject.test.ts +37 -0
- package/src/telemetry/flatObject.ts +19 -0
- package/src/telemetry/simplifyDevice.ts +20 -0
- package/src/telemetry/telemetry.ts +97 -0
- package/src/utils/persistentStore.ts +7 -7
- package/src/utils/systemReport.ts +1 -1
- package/src/utils/useHotKey.ts +2 -2
- package/typings/generated/src/ErrorBoundary/ErrorBoundary.d.ts +1 -1
- package/typings/generated/src/ErrorBoundary/ErrorBoundary.d.ts.map +1 -1
- package/typings/generated/src/index.d.ts +2 -2
- package/typings/generated/src/index.d.ts.map +1 -1
- package/typings/generated/src/telemetry/TelemetryMetadata.d.ts +4 -0
- package/typings/generated/src/telemetry/TelemetryMetadata.d.ts.map +1 -0
- package/typings/generated/src/telemetry/TelemetrySender.d.ts +24 -0
- package/typings/generated/src/telemetry/TelemetrySender.d.ts.map +1 -0
- package/typings/generated/src/telemetry/TelemetrySenderInMain.d.ts +15 -0
- package/typings/generated/src/telemetry/TelemetrySenderInMain.d.ts.map +1 -0
- package/typings/generated/src/telemetry/TelemetrySenderInRenderer.d.ts +15 -0
- package/typings/generated/src/telemetry/TelemetrySenderInRenderer.d.ts.map +1 -0
- package/typings/generated/src/telemetry/flatObject.d.ts +4 -0
- package/typings/generated/src/telemetry/flatObject.d.ts.map +1 -0
- package/typings/generated/src/telemetry/flatObject.test.d.ts +2 -0
- package/typings/generated/src/telemetry/flatObject.test.d.ts.map +1 -0
- package/typings/generated/src/{utils/usageDataCommon.d.ts → telemetry/simplifyDevice.d.ts} +2 -14
- package/typings/generated/src/telemetry/simplifyDevice.d.ts.map +1 -0
- package/typings/generated/src/telemetry/telemetry.d.ts +16 -0
- package/typings/generated/src/telemetry/telemetry.d.ts.map +1 -0
- package/typings/generated/src/utils/persistentStore.d.ts +4 -4
- package/typings/generated/src/utils/persistentStore.d.ts.map +1 -1
- package/src/utils/usageData.ts +0 -117
- package/src/utils/usageDataCommon.ts +0 -59
- package/src/utils/usageDataMain.ts +0 -119
- package/src/utils/usageDataRenderer.ts +0 -137
- package/typings/generated/src/utils/usageData.d.ts +0 -16
- package/typings/generated/src/utils/usageData.d.ts.map +0 -1
- package/typings/generated/src/utils/usageDataCommon.d.ts.map +0 -1
- package/typings/generated/src/utils/usageDataMain.d.ts +0 -10
- package/typings/generated/src/utils/usageDataMain.d.ts.map +0 -1
- package/typings/generated/src/utils/usageDataRenderer.d.ts +0 -10
- package/typings/generated/src/utils/usageDataRenderer.d.ts.map +0 -1
|
@@ -1,119 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Copyright (c) 2105 Nordic Semiconductor ASA
|
|
3
|
-
*
|
|
4
|
-
* SPDX-License-Identifier: LicenseRef-Nordic-4-Clause
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
import { TelemetryClient } from 'applicationinsights';
|
|
8
|
-
|
|
9
|
-
import { isDevelopment } from './environment';
|
|
10
|
-
import { packageJson } from './packageJson';
|
|
11
|
-
import usageDataCommon, {
|
|
12
|
-
INSTRUMENTATION_KEY,
|
|
13
|
-
Metadata,
|
|
14
|
-
} from './usageDataCommon';
|
|
15
|
-
|
|
16
|
-
let cachedInsights: TelemetryClient | undefined;
|
|
17
|
-
|
|
18
|
-
const getInsights = (forceSend?: boolean) => {
|
|
19
|
-
if (!usageDataCommon.getShouldSendTelemetry(forceSend)) return;
|
|
20
|
-
|
|
21
|
-
if (cachedInsights) {
|
|
22
|
-
return cachedInsights;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
if (!cachedInsights) {
|
|
26
|
-
cachedInsights = init();
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
return cachedInsights;
|
|
30
|
-
};
|
|
31
|
-
|
|
32
|
-
const init = () => {
|
|
33
|
-
const appPackageJson = packageJson();
|
|
34
|
-
const applicationName = appPackageJson.name;
|
|
35
|
-
const applicationVersion = appPackageJson.version;
|
|
36
|
-
|
|
37
|
-
const out = new TelemetryClient(INSTRUMENTATION_KEY);
|
|
38
|
-
out.config.enableAutoCollectConsole = false;
|
|
39
|
-
out.config.enableAutoCollectDependencies = false;
|
|
40
|
-
out.config.enableAutoCollectExceptions = false;
|
|
41
|
-
out.config.enableAutoCollectIncomingRequestAzureFunctions = false;
|
|
42
|
-
out.config.enableAutoCollectHeartbeat = false;
|
|
43
|
-
out.config.enableAutoCollectPerformance = false;
|
|
44
|
-
out.config.enableAutoCollectPreAggregatedMetrics = false;
|
|
45
|
-
out.config.enableAutoCollectRequests = false;
|
|
46
|
-
out.config.enableAutoDependencyCorrelation = false;
|
|
47
|
-
|
|
48
|
-
// Add app name and version to every event
|
|
49
|
-
out.addTelemetryProcessor(envelope => {
|
|
50
|
-
if (envelope.data.baseData?.properties.removeAllMetadata) {
|
|
51
|
-
envelope.tags = [];
|
|
52
|
-
envelope.data.baseData = { name: envelope.data?.baseData.name };
|
|
53
|
-
} else {
|
|
54
|
-
envelope.tags['ai.cloud.roleInstance'] = undefined; // remove PC name
|
|
55
|
-
if (envelope.data.baseData) {
|
|
56
|
-
envelope.data.baseData.properties = {
|
|
57
|
-
applicationName,
|
|
58
|
-
applicationVersion,
|
|
59
|
-
isDevelopment,
|
|
60
|
-
...envelope.data.baseData.properties,
|
|
61
|
-
};
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
return true;
|
|
66
|
-
});
|
|
67
|
-
|
|
68
|
-
return out;
|
|
69
|
-
};
|
|
70
|
-
|
|
71
|
-
const sendUsageData = (
|
|
72
|
-
action: string,
|
|
73
|
-
metadata?: Metadata,
|
|
74
|
-
forceSend?: boolean
|
|
75
|
-
) => {
|
|
76
|
-
const result = getInsights(forceSend);
|
|
77
|
-
if (result !== undefined) {
|
|
78
|
-
result.trackEvent({
|
|
79
|
-
name: action,
|
|
80
|
-
properties: forceSend ? { removeAllMetadata: true } : metadata,
|
|
81
|
-
});
|
|
82
|
-
return true;
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
return false;
|
|
86
|
-
};
|
|
87
|
-
|
|
88
|
-
const sendPageView = (pageName: string) => {
|
|
89
|
-
getInsights()?.trackPageView({
|
|
90
|
-
name: pageName,
|
|
91
|
-
});
|
|
92
|
-
};
|
|
93
|
-
|
|
94
|
-
const sendMetric = (name: string, value: number) => {
|
|
95
|
-
getInsights()?.trackMetric({
|
|
96
|
-
name,
|
|
97
|
-
value,
|
|
98
|
-
});
|
|
99
|
-
};
|
|
100
|
-
|
|
101
|
-
const sendTrace = (message: string) => {
|
|
102
|
-
getInsights()?.trackTrace({
|
|
103
|
-
message,
|
|
104
|
-
});
|
|
105
|
-
};
|
|
106
|
-
|
|
107
|
-
const sendErrorReport = (error: Error) => {
|
|
108
|
-
getInsights()?.trackException({
|
|
109
|
-
exception: error,
|
|
110
|
-
});
|
|
111
|
-
};
|
|
112
|
-
|
|
113
|
-
export default {
|
|
114
|
-
sendErrorReport,
|
|
115
|
-
sendUsageData,
|
|
116
|
-
sendPageView,
|
|
117
|
-
sendMetric,
|
|
118
|
-
sendTrace,
|
|
119
|
-
};
|
|
@@ -1,137 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Copyright (c) 2105 Nordic Semiconductor ASA
|
|
3
|
-
*
|
|
4
|
-
* SPDX-License-Identifier: LicenseRef-Nordic-4-Clause
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
import { ApplicationInsights } from '@microsoft/applicationinsights-web';
|
|
8
|
-
|
|
9
|
-
import appDetails from './appDetails';
|
|
10
|
-
import { isDevelopment } from './environment';
|
|
11
|
-
import { isLauncher, packageJson } from './packageJson';
|
|
12
|
-
import { getUsageDataClientId } from './persistentStore';
|
|
13
|
-
import usageDataCommon, {
|
|
14
|
-
INSTRUMENTATION_KEY,
|
|
15
|
-
Metadata,
|
|
16
|
-
} from './usageDataCommon';
|
|
17
|
-
|
|
18
|
-
let cachedInsights: ApplicationInsights | undefined;
|
|
19
|
-
|
|
20
|
-
const getInsights = async (forceSend?: boolean) => {
|
|
21
|
-
if (!usageDataCommon.getShouldSendTelemetry(forceSend)) return;
|
|
22
|
-
|
|
23
|
-
if (cachedInsights) {
|
|
24
|
-
return cachedInsights;
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
if (!cachedInsights) {
|
|
28
|
-
cachedInsights = await init();
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
return cachedInsights;
|
|
32
|
-
};
|
|
33
|
-
|
|
34
|
-
// We experienced that apps sometimes freeze when closing the window
|
|
35
|
-
// until the telemetry events are sent.
|
|
36
|
-
const isRenderer = process && process.type === 'renderer';
|
|
37
|
-
if (isRenderer) {
|
|
38
|
-
window.addEventListener('beforeunload', async () => {
|
|
39
|
-
(await getInsights())?.flush();
|
|
40
|
-
});
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
const init = async () => {
|
|
44
|
-
const applicationName = packageJson().name;
|
|
45
|
-
const applicationVersion = packageJson().version;
|
|
46
|
-
const source = isLauncher() ? undefined : (await appDetails()).source;
|
|
47
|
-
|
|
48
|
-
const accountId = getUsageDataClientId();
|
|
49
|
-
|
|
50
|
-
const out = new ApplicationInsights({
|
|
51
|
-
config: {
|
|
52
|
-
instrumentationKey: INSTRUMENTATION_KEY,
|
|
53
|
-
accountId, // to hide with removeAllMetadata
|
|
54
|
-
isStorageUseDisabled: true, // fix issue with duplicate events being sent https://github.com/microsoft/ApplicationInsights-JS/issues/796
|
|
55
|
-
namePrefix: applicationName, // fix issue with duplicate events being sent https://github.com/microsoft/ApplicationInsights-JS/issues/796
|
|
56
|
-
},
|
|
57
|
-
});
|
|
58
|
-
|
|
59
|
-
out.loadAppInsights();
|
|
60
|
-
|
|
61
|
-
// Add app name and version to every event
|
|
62
|
-
out.addTelemetryInitializer(envelope => {
|
|
63
|
-
if (envelope.data?.removeAllMetadata) {
|
|
64
|
-
envelope.data = {};
|
|
65
|
-
envelope.baseData = { name: envelope.baseData?.name };
|
|
66
|
-
envelope.ext = {};
|
|
67
|
-
envelope.tags = [];
|
|
68
|
-
} else {
|
|
69
|
-
const trace = {
|
|
70
|
-
...(envelope.ext?.trace ?? {}),
|
|
71
|
-
name: applicationName,
|
|
72
|
-
};
|
|
73
|
-
envelope.ext = { ...envelope.ext, trace };
|
|
74
|
-
envelope.data = {
|
|
75
|
-
...envelope.data,
|
|
76
|
-
applicationName,
|
|
77
|
-
applicationVersion,
|
|
78
|
-
isDevelopment,
|
|
79
|
-
source,
|
|
80
|
-
};
|
|
81
|
-
}
|
|
82
|
-
});
|
|
83
|
-
|
|
84
|
-
return out;
|
|
85
|
-
};
|
|
86
|
-
|
|
87
|
-
const sendUsageData = async (
|
|
88
|
-
action: string,
|
|
89
|
-
metadata?: Metadata,
|
|
90
|
-
forceSend?: boolean
|
|
91
|
-
) => {
|
|
92
|
-
const result = await getInsights(forceSend);
|
|
93
|
-
if (result !== undefined) {
|
|
94
|
-
result.trackEvent(
|
|
95
|
-
{
|
|
96
|
-
name: action,
|
|
97
|
-
},
|
|
98
|
-
forceSend ? { removeAllMetadata: true } : metadata
|
|
99
|
-
);
|
|
100
|
-
return true;
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
return false;
|
|
104
|
-
};
|
|
105
|
-
|
|
106
|
-
const sendPageView = async (pageName: string) => {
|
|
107
|
-
(await getInsights())?.trackPageView({
|
|
108
|
-
name: pageName,
|
|
109
|
-
});
|
|
110
|
-
};
|
|
111
|
-
|
|
112
|
-
const sendMetric = async (name: string, average: number) => {
|
|
113
|
-
(await getInsights())?.trackMetric({
|
|
114
|
-
name,
|
|
115
|
-
average,
|
|
116
|
-
});
|
|
117
|
-
};
|
|
118
|
-
|
|
119
|
-
const sendTrace = async (message: string) => {
|
|
120
|
-
(await getInsights())?.trackTrace({
|
|
121
|
-
message,
|
|
122
|
-
});
|
|
123
|
-
};
|
|
124
|
-
|
|
125
|
-
const sendErrorReport = async (error: Error) => {
|
|
126
|
-
(await getInsights())?.trackException({
|
|
127
|
-
exception: error,
|
|
128
|
-
});
|
|
129
|
-
};
|
|
130
|
-
|
|
131
|
-
export default {
|
|
132
|
-
sendErrorReport,
|
|
133
|
-
sendUsageData,
|
|
134
|
-
sendPageView,
|
|
135
|
-
sendMetric,
|
|
136
|
-
sendTrace,
|
|
137
|
-
};
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { Metadata } from './usageDataCommon';
|
|
2
|
-
declare const _default: {
|
|
3
|
-
setLogger: (log: import("winston").Logger) => void;
|
|
4
|
-
disable: () => void;
|
|
5
|
-
enable: () => void;
|
|
6
|
-
isEnabled: () => boolean | undefined;
|
|
7
|
-
reset: () => void;
|
|
8
|
-
sendErrorReport: (error: string | Error) => void | Promise<void>;
|
|
9
|
-
sendUsageData: (action: string, metadata?: Metadata | undefined, forceSend?: boolean | undefined) => Promise<void>;
|
|
10
|
-
sendPageView: (pageName: string) => void | Promise<void>;
|
|
11
|
-
sendMetric: (name: string, average: number) => void | Promise<void>;
|
|
12
|
-
sendTrace: (message: string) => void | Promise<void>;
|
|
13
|
-
enableTelemetry: () => void;
|
|
14
|
-
};
|
|
15
|
-
export default _default;
|
|
16
|
-
//# sourceMappingURL=usageData.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"usageData.d.ts","sourceRoot":"","sources":["../../../../src/utils/usageData.ts"],"names":[],"mappings":"AAaA,OAAwB,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;;;;;;;;;;;;;;AA2F9D,wBAYE"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"usageDataCommon.d.ts","sourceRoot":"","sources":["../../../../src/utils/usageDataCommon.ts"],"names":[],"mappings":"AAMA,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAGpD,eAAO,MAAM,mBAAmB,yCAAyC,CAAC;AAe1E,MAAM,WAAW,QAAQ;IACrB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1B;AAED,eAAO,MAAM,wBAAwB,WAAY,MAAM;;;;;;;;;;;CAWrD,CAAC;;;;;;;;AAWH,wBAME"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { Metadata } from './usageDataCommon';
|
|
2
|
-
declare const _default: {
|
|
3
|
-
sendErrorReport: (error: Error) => void;
|
|
4
|
-
sendUsageData: (action: string, metadata?: Metadata | undefined, forceSend?: boolean | undefined) => boolean;
|
|
5
|
-
sendPageView: (pageName: string) => void;
|
|
6
|
-
sendMetric: (name: string, value: number) => void;
|
|
7
|
-
sendTrace: (message: string) => void;
|
|
8
|
-
};
|
|
9
|
-
export default _default;
|
|
10
|
-
//# sourceMappingURL=usageDataMain.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"usageDataMain.d.ts","sourceRoot":"","sources":["../../../../src/utils/usageDataMain.ts"],"names":[],"mappings":"AAUA,OAAwB,EAEpB,QAAQ,EACX,MAAM,mBAAmB,CAAC;;;;;;;;AAmG3B,wBAME"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { Metadata } from './usageDataCommon';
|
|
2
|
-
declare const _default: {
|
|
3
|
-
sendErrorReport: (error: Error) => Promise<void>;
|
|
4
|
-
sendUsageData: (action: string, metadata?: Metadata | undefined, forceSend?: boolean | undefined) => Promise<boolean>;
|
|
5
|
-
sendPageView: (pageName: string) => Promise<void>;
|
|
6
|
-
sendMetric: (name: string, average: number) => Promise<void>;
|
|
7
|
-
sendTrace: (message: string) => Promise<void>;
|
|
8
|
-
};
|
|
9
|
-
export default _default;
|
|
10
|
-
//# sourceMappingURL=usageDataRenderer.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"usageDataRenderer.d.ts","sourceRoot":"","sources":["../../../../src/utils/usageDataRenderer.ts"],"names":[],"mappings":"AAYA,OAAwB,EAEpB,QAAQ,EACX,MAAM,mBAAmB,CAAC;;;;;;;;AAmH3B,wBAME"}
|