push neon reactor
This commit is contained in:
Generated
Vendored
+8
@@ -0,0 +1,8 @@
|
||||
/*!
|
||||
* Copyright (C) Microsoft Corporation. All rights reserved.
|
||||
*/
|
||||
import type { Metric } from './Metrics.types';
|
||||
export interface ILogger {
|
||||
logMetric?: (value: Metric) => void;
|
||||
}
|
||||
//# sourceMappingURL=Logger.types.d.ts.map
|
||||
Generated
Vendored
+1
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"Logger.types.d.ts","sourceRoot":"","sources":["../../src/telemetry/Logger.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAE9C,MAAM,WAAW,OAAO;IACtB,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACrC"}
|
||||
Generated
Vendored
+5
@@ -0,0 +1,5 @@
|
||||
/*!
|
||||
* Copyright (C) Microsoft Corporation. All rights reserved.
|
||||
*/
|
||||
export {};
|
||||
//# sourceMappingURL=Logger.types.js.map
|
||||
Generated
Vendored
+1
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"Logger.types.js","sourceRoot":"","sources":["../../src/telemetry/Logger.types.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|
||||
Generated
Vendored
+6
@@ -0,0 +1,6 @@
|
||||
/*!
|
||||
* Copyright (C) Microsoft Corporation. All rights reserved.
|
||||
*/
|
||||
import type { ILogger } from './Logger.types';
|
||||
export declare function initializeLogger(logger: ILogger): Promise<void>;
|
||||
//# sourceMappingURL=LoggerManager.d.ts.map
|
||||
Generated
Vendored
+1
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"LoggerManager.d.ts","sourceRoot":"","sources":["../../src/telemetry/LoggerManager.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAI9C,wBAAsB,gBAAgB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CA0BrE"}
|
||||
Generated
Vendored
+28
@@ -0,0 +1,28 @@
|
||||
/*!
|
||||
* Copyright (C) Microsoft Corporation. All rights reserved.
|
||||
*/
|
||||
import { SendMessage } from '../internal/plugins/SendMessage';
|
||||
let loggerInstance;
|
||||
export async function initializeLogger(logger) {
|
||||
loggerInstance = logger;
|
||||
const sendMessagePlugin = await SendMessage.createInstanceAsync();
|
||||
const receiver = await sendMessagePlugin.getMessageReceiverAsync('PowerApps.AppMonitorReceiver', (versionInfo) => {
|
||||
let isCompatible = false;
|
||||
if (versionInfo === '1.0.0') {
|
||||
isCompatible = true;
|
||||
}
|
||||
return { isCompatible };
|
||||
});
|
||||
if (receiver.isCompatible) {
|
||||
await receiver.sendMessage('initialize', (message) => {
|
||||
const parsedMessage = JSON.parse(message);
|
||||
if (parsedMessage.metrics) {
|
||||
for (const metric of parsedMessage.metrics) {
|
||||
// Log the metric
|
||||
loggerInstance.logMetric?.(metric);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
//# sourceMappingURL=LoggerManager.js.map
|
||||
Generated
Vendored
+1
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"LoggerManager.js","sourceRoot":"","sources":["../../src/telemetry/LoggerManager.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAG9D,IAAI,cAAuB,CAAC;AAE5B,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,MAAe;IACpD,cAAc,GAAG,MAAM,CAAC;IAExB,MAAM,iBAAiB,GAAsB,MAAM,WAAW,CAAC,mBAAmB,EAAE,CAAC;IAErF,MAAM,QAAQ,GAAoB,MAAM,iBAAiB,CAAC,uBAAuB,CAC/E,8BAA8B,EAC9B,CAAC,WAAmB,EAAE,EAAE;QACtB,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,IAAI,WAAW,KAAK,OAAO,EAAE,CAAC;YAC5B,YAAY,GAAG,IAAI,CAAC;QACtB,CAAC;QACD,OAAO,EAAE,YAAY,EAAE,CAAC;IAC1B,CAAC,CACF,CAAC;IACF,IAAI,QAAQ,CAAC,YAAY,EAAE,CAAC;QAC1B,MAAM,QAAQ,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC,OAAe,EAAE,EAAE;YAC3D,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC1C,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;gBAC1B,KAAK,MAAM,MAAM,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;oBAC3C,iBAAiB;oBACjB,cAAc,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,CAAC;gBACrC,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
|
||||
Generated
Vendored
+39
@@ -0,0 +1,39 @@
|
||||
/*!
|
||||
* Copyright (C) Microsoft Corporation. All rights reserved.
|
||||
*/
|
||||
export type AppLoadClientState = 'healthy' | 'unhealthy' | 'throttled' | 'unknown';
|
||||
export type AppLoadResult = 'optimal' | 'other';
|
||||
export type AppLoadNonOptimalReason = 'interactionRequired' | 'throttled' | 'screenNavigatedAway' | 'other';
|
||||
export type AppLoadUnsuccessfulReason = 'AppConnectionsFailed' | 'AppForbidden' | 'AppForbiddenAppIsInQuarantine' | 'AppForbiddenPlansIssue' | 'AppIsPackaging' | 'AppLoadFailed' | 'AppNotFound' | 'CookiesBlocked' | 'InvokeScriptBlocked' | 'NetworkError' | 'PlatformError' | 'PopupError' | 'ProxyError' | 'StorageBlocked' | 'Unknown' | 'UserCancelAppConnections' | 'UserCancelled' | 'UserNotLoggedIn' | 'UserUnauthorized' | 'UserUnsupportedAppVersion' | 'UserUnsupportedBrowser';
|
||||
export type SessionLoadSummaryMetricData = {
|
||||
/** The reason the app load was not considered optimal */
|
||||
appLoadNonOptimalReason?: AppLoadNonOptimalReason;
|
||||
/** The type of app load */
|
||||
appLoadResult: AppLoadResult;
|
||||
/** Whether this app launch was successful */
|
||||
successfulAppLaunch: boolean;
|
||||
/** Time in milliseconds for the app to become interactive */
|
||||
timeToAppInteractive?: number;
|
||||
};
|
||||
export type SessionLoadSummaryMetric = {
|
||||
data: SessionLoadSummaryMetricData;
|
||||
type: 'sessionLoadSummary';
|
||||
};
|
||||
export type NetworkRequestMetricData = {
|
||||
/** The URL of the network request */
|
||||
url: string;
|
||||
/** The HTTP method of the request */
|
||||
method: string;
|
||||
/** The status code of the response */
|
||||
statusCode: number;
|
||||
/** The time taken for the request in milliseconds */
|
||||
duration: number;
|
||||
/** The size of the response in bytes */
|
||||
responseSize?: number;
|
||||
};
|
||||
export type NetworkRequestMetric = {
|
||||
data: NetworkRequestMetricData;
|
||||
type: 'networkRequest';
|
||||
};
|
||||
export type Metric = SessionLoadSummaryMetric | NetworkRequestMetric;
|
||||
//# sourceMappingURL=Metrics.types.d.ts.map
|
||||
Generated
Vendored
+1
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"Metrics.types.d.ts","sourceRoot":"","sources":["../../src/telemetry/Metrics.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,MAAM,kBAAkB,GAAG,SAAS,GAAG,WAAW,GAAG,WAAW,GAAG,SAAS,CAAC;AACnF,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,OAAO,CAAC;AAChD,MAAM,MAAM,uBAAuB,GAC/B,qBAAqB,GACrB,WAAW,GACX,qBAAqB,GACrB,OAAO,CAAC;AACZ,MAAM,MAAM,yBAAyB,GACjC,sBAAsB,GACtB,cAAc,GACd,+BAA+B,GAC/B,wBAAwB,GACxB,gBAAgB,GAChB,eAAe,GACf,aAAa,GACb,gBAAgB,GAChB,qBAAqB,GACrB,cAAc,GACd,eAAe,GACf,YAAY,GACZ,YAAY,GACZ,gBAAgB,GAChB,SAAS,GACT,0BAA0B,GAC1B,eAAe,GACf,iBAAiB,GACjB,kBAAkB,GAClB,2BAA2B,GAC3B,wBAAwB,CAAC;AAE7B,MAAM,MAAM,4BAA4B,GAAG;IACzC,yDAAyD;IACzD,uBAAuB,CAAC,EAAE,uBAAuB,CAAC;IAClD,2BAA2B;IAC3B,aAAa,EAAE,aAAa,CAAC;IAC7B,6CAA6C;IAC7C,mBAAmB,EAAE,OAAO,CAAC;IAC7B,6DAA6D;IAC7D,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,IAAI,EAAE,4BAA4B,CAAC;IACnC,IAAI,EAAE,oBAAoB,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,qCAAqC;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,qCAAqC;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,sCAAsC;IACtC,UAAU,EAAE,MAAM,CAAC;IACnB,qDAAqD;IACrD,QAAQ,EAAE,MAAM,CAAC;IACjB,wCAAwC;IACxC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,wBAAwB,CAAC;IAC/B,IAAI,EAAE,gBAAgB,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,MAAM,GAAG,wBAAwB,GAAG,oBAAoB,CAAC"}
|
||||
Generated
Vendored
+5
@@ -0,0 +1,5 @@
|
||||
/*!
|
||||
* Copyright (C) Microsoft Corporation. All rights reserved.
|
||||
*/
|
||||
export {};
|
||||
//# sourceMappingURL=Metrics.types.js.map
|
||||
Generated
Vendored
+1
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"Metrics.types.js","sourceRoot":"","sources":["../../src/telemetry/Metrics.types.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|
||||
Generated
Vendored
+5
@@ -0,0 +1,5 @@
|
||||
/*!
|
||||
* Copyright (C) Microsoft Corporation. All rights reserved.
|
||||
*/
|
||||
export declare function getAppLoadedPerformanceData(): object;
|
||||
//# sourceMappingURL=Performance.d.ts.map
|
||||
Generated
Vendored
+1
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"Performance.d.ts","sourceRoot":"","sources":["../../src/telemetry/Performance.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,wBAAgB,2BAA2B,IAAI,MAAM,CA6BpD"}
|
||||
Generated
Vendored
+47
@@ -0,0 +1,47 @@
|
||||
/*!
|
||||
* Copyright (C) Microsoft Corporation. All rights reserved.
|
||||
*/
|
||||
export function getAppLoadedPerformanceData() {
|
||||
const performanceApi = new PerformanceApi();
|
||||
const perfData = {
|
||||
appTimeOrigin: performanceApi.timeOrigin,
|
||||
};
|
||||
const navigationTimingEntries = performanceApi.getEntriesByType('navigation');
|
||||
const navigationTiming = navigationTimingEntries[0];
|
||||
if (navigationTiming) {
|
||||
perfData.appNavigateType = navigationTiming.type;
|
||||
perfData.appNavigationStart = navigationTiming.startTime;
|
||||
perfData.appNavigationDuration = navigationTiming.duration;
|
||||
perfData.appEncodedBodySize = navigationTiming.encodedBodySize;
|
||||
perfData.appNextHopProtocol = navigationTiming.nextHopProtocol;
|
||||
perfData.appDomainLookupStart = navigationTiming.domainLookupStart;
|
||||
perfData.appDomainLookupEnd = navigationTiming.domainLookupEnd;
|
||||
perfData.appConnectStart = navigationTiming.connectStart;
|
||||
perfData.appConnectEnd = navigationTiming.connectEnd;
|
||||
perfData.appSecureConnectionStart = navigationTiming.secureConnectionStart;
|
||||
perfData.appFetchStart = navigationTiming.fetchStart;
|
||||
perfData.appRequestStart = navigationTiming.requestStart;
|
||||
perfData.appResponseStart = navigationTiming.responseStart;
|
||||
perfData.appResponseEnd = navigationTiming.responseEnd;
|
||||
perfData.appLoadEventEnd = navigationTiming.loadEventEnd;
|
||||
perfData.appDomInteractive = navigationTiming.domInteractive;
|
||||
perfData.appDomContentLoadedEventStart = navigationTiming.domContentLoadedEventStart;
|
||||
}
|
||||
return perfData;
|
||||
}
|
||||
class PerformanceApi {
|
||||
_performance;
|
||||
constructor(targetWindow = window) {
|
||||
this._performance = targetWindow.performance;
|
||||
}
|
||||
get timeOrigin() {
|
||||
return this._performance?.timeOrigin;
|
||||
}
|
||||
getEntriesByType(type) {
|
||||
if (!this._performance?.getEntriesByType) {
|
||||
return [];
|
||||
}
|
||||
return this._performance.getEntriesByType(type);
|
||||
}
|
||||
}
|
||||
//# sourceMappingURL=Performance.js.map
|
||||
Generated
Vendored
+1
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"Performance.js","sourceRoot":"","sources":["../../src/telemetry/Performance.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,UAAU,2BAA2B;IACzC,MAAM,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC;IAC5C,MAAM,QAAQ,GAA4B;QACxC,aAAa,EAAE,cAAc,CAAC,UAAU;KACzC,CAAC;IAEF,MAAM,uBAAuB,GAAG,cAAc,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;IAC9E,MAAM,gBAAgB,GAAG,uBAAuB,CAAC,CAAC,CAA4C,CAAC;IAC/F,IAAI,gBAAgB,EAAE,CAAC;QACrB,QAAQ,CAAC,eAAe,GAAG,gBAAgB,CAAC,IAAI,CAAC;QACjD,QAAQ,CAAC,kBAAkB,GAAG,gBAAgB,CAAC,SAAS,CAAC;QACzD,QAAQ,CAAC,qBAAqB,GAAG,gBAAgB,CAAC,QAAQ,CAAC;QAC3D,QAAQ,CAAC,kBAAkB,GAAG,gBAAgB,CAAC,eAAe,CAAC;QAC/D,QAAQ,CAAC,kBAAkB,GAAG,gBAAgB,CAAC,eAAe,CAAC;QAC/D,QAAQ,CAAC,oBAAoB,GAAG,gBAAgB,CAAC,iBAAiB,CAAC;QACnE,QAAQ,CAAC,kBAAkB,GAAG,gBAAgB,CAAC,eAAe,CAAC;QAC/D,QAAQ,CAAC,eAAe,GAAG,gBAAgB,CAAC,YAAY,CAAC;QACzD,QAAQ,CAAC,aAAa,GAAG,gBAAgB,CAAC,UAAU,CAAC;QACrD,QAAQ,CAAC,wBAAwB,GAAG,gBAAgB,CAAC,qBAAqB,CAAC;QAC3E,QAAQ,CAAC,aAAa,GAAG,gBAAgB,CAAC,UAAU,CAAC;QACrD,QAAQ,CAAC,eAAe,GAAG,gBAAgB,CAAC,YAAY,CAAC;QACzD,QAAQ,CAAC,gBAAgB,GAAG,gBAAgB,CAAC,aAAa,CAAC;QAC3D,QAAQ,CAAC,cAAc,GAAG,gBAAgB,CAAC,WAAW,CAAC;QACvD,QAAQ,CAAC,eAAe,GAAG,gBAAgB,CAAC,YAAY,CAAC;QACzD,QAAQ,CAAC,iBAAiB,GAAG,gBAAgB,CAAC,cAAc,CAAC;QAC7D,QAAQ,CAAC,6BAA6B,GAAG,gBAAgB,CAAC,0BAA0B,CAAC;IACvF,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,cAAc;IACV,YAAY,CAAc;IAClC,YAAY,eAAuB,MAAM;QACvC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC,WAAW,CAAC;IAC/C,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC;IACvC,CAAC;IAEM,gBAAgB,CAAC,IAAY;QAClC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,gBAAgB,EAAE,CAAC;YACzC,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,OAAO,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAClD,CAAC;CACF"}
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
/*!
|
||||
* Copyright (C) Microsoft Corporation. All rights reserved.
|
||||
*/
|
||||
export type { ILogger } from './Logger.types';
|
||||
export { initializeLogger } from './LoggerManager';
|
||||
export type { AppLoadNonOptimalReason, AppLoadResult, Metric, NetworkRequestMetric, NetworkRequestMetricData, SessionLoadSummaryMetric, SessionLoadSummaryMetricData, } from './Metrics.types';
|
||||
//# sourceMappingURL=index.d.ts.map
|
||||
Generated
Vendored
+1
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/telemetry/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,YAAY,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,YAAY,EACV,uBAAuB,EACvB,aAAa,EACb,MAAM,EACN,oBAAoB,EACpB,wBAAwB,EACxB,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,iBAAiB,CAAC"}
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
/*!
|
||||
* Copyright (C) Microsoft Corporation. All rights reserved.
|
||||
*/
|
||||
export { initializeLogger } from './LoggerManager';
|
||||
import { executePluginAsync } from '../internal/plugins';
|
||||
import { getAppLoadedPerformanceData } from './Performance';
|
||||
executePluginAsync('AppLifecycle', 'notifyAppSdkLoaded', [getAppLoadedPerformanceData()]);
|
||||
//# sourceMappingURL=index.js.map
|
||||
Generated
Vendored
+1
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/telemetry/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAWnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,2BAA2B,EAAE,MAAM,eAAe,CAAC;AAE5D,kBAAkB,CAAC,cAAc,EAAE,oBAAoB,EAAE,CAAC,2BAA2B,EAAE,CAAC,CAAC,CAAC"}
|
||||
Reference in New Issue
Block a user