@codingame/monaco-vscode-performance-service-override 11.1.2 → 12.0.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.
- package/index.d.ts +2 -1
- package/index.js +9 -1
- package/package.json +16 -7
- package/vscode/src/vs/workbench/contrib/performance/browser/inputLatencyContrib.d.ts +13 -0
- package/vscode/src/vs/workbench/contrib/performance/browser/inputLatencyContrib.js +2 -1
- package/vscode/src/vs/workbench/contrib/performance/browser/performance.contribution.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/performance/browser/performance.contribution.js +8 -6
- package/vscode/src/vs/workbench/contrib/performance/browser/performance.web.contribution.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/performance/browser/performance.web.contribution.js +4 -2
- package/vscode/src/vs/workbench/contrib/performance/browser/perfviewEditor.d.ts +27 -0
- package/vscode/src/vs/workbench/contrib/performance/browser/perfviewEditor.js +43 -42
- package/vscode/src/vs/workbench/contrib/performance/browser/startupTimings.d.ts +32 -0
- package/vscode/src/vs/workbench/contrib/performance/browser/startupTimings.js +9 -7
- package/performance.js +0 -8
package/index.d.ts
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
import type { IEditorOverrideServices } from "vscode/vscode/vs/editor/standalone/browser/standaloneServices";
|
|
2
|
+
export default function getServiceOverride(): IEditorOverrideServices;
|
package/index.js
CHANGED
|
@@ -1 +1,9 @@
|
|
|
1
|
-
|
|
1
|
+
|
|
2
|
+
import './vscode/src/vs/workbench/contrib/performance/browser/performance.contribution.js';
|
|
3
|
+
import './vscode/src/vs/workbench/contrib/performance/browser/performance.web.contribution.js';
|
|
4
|
+
|
|
5
|
+
function getServiceOverride() {
|
|
6
|
+
return {};
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export { getServiceOverride as default };
|
package/package.json
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@codingame/monaco-vscode-performance-service-override",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "12.0.1",
|
|
4
|
+
"private": false,
|
|
5
|
+
"description": "VSCode public API plugged on the monaco editor - performance service-override",
|
|
4
6
|
"keywords": [],
|
|
5
7
|
"author": {
|
|
6
8
|
"name": "CodinGame",
|
|
@@ -12,8 +14,13 @@
|
|
|
12
14
|
"url": "git+ssh://git@github.com/CodinGame/monaco-vscode-api.git"
|
|
13
15
|
},
|
|
14
16
|
"type": "module",
|
|
15
|
-
"
|
|
16
|
-
|
|
17
|
+
"dependencies": {
|
|
18
|
+
"@codingame/monaco-vscode-0139c6af-2375-559c-af57-b738f2fd6d8e-common": "12.0.1",
|
|
19
|
+
"@codingame/monaco-vscode-cc9ccbec-e2a1-599d-84ae-46f5efc666e3-common": "12.0.1",
|
|
20
|
+
"vscode": "npm:@codingame/monaco-vscode-api@12.0.1"
|
|
21
|
+
},
|
|
22
|
+
"peerDependencies": {},
|
|
23
|
+
"peerDependenciesMeta": {},
|
|
17
24
|
"main": "index.js",
|
|
18
25
|
"module": "index.js",
|
|
19
26
|
"types": "index.d.ts",
|
|
@@ -22,10 +29,12 @@
|
|
|
22
29
|
"default": "./index.js"
|
|
23
30
|
},
|
|
24
31
|
"./vscode/*": {
|
|
25
|
-
"default": "./vscode/src/*.js"
|
|
32
|
+
"default": "./vscode/src/*.js",
|
|
33
|
+
"types": "./vscode/src/*.d.ts"
|
|
34
|
+
},
|
|
35
|
+
"./*": {
|
|
36
|
+
"default": "./*.js",
|
|
37
|
+
"types": "./*.d.ts"
|
|
26
38
|
}
|
|
27
|
-
},
|
|
28
|
-
"dependencies": {
|
|
29
|
-
"vscode": "npm:@codingame/monaco-vscode-api@11.1.2"
|
|
30
39
|
}
|
|
31
40
|
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Disposable } from "vscode/vscode/vs/base/common/lifecycle";
|
|
2
|
+
import { ITelemetryService } from "vscode/vscode/vs/platform/telemetry/common/telemetry.service";
|
|
3
|
+
import { IWorkbenchContribution } from "vscode/vscode/vs/workbench/common/contributions";
|
|
4
|
+
import { IEditorService } from "vscode/vscode/vs/workbench/services/editor/common/editorService.service";
|
|
5
|
+
export declare class InputLatencyContrib extends Disposable implements IWorkbenchContribution {
|
|
6
|
+
private readonly _editorService;
|
|
7
|
+
private readonly _telemetryService;
|
|
8
|
+
private readonly _listener;
|
|
9
|
+
private readonly _scheduler;
|
|
10
|
+
constructor(_editorService: IEditorService, _telemetryService: ITelemetryService);
|
|
11
|
+
private _setupListener;
|
|
12
|
+
private _logSamples;
|
|
13
|
+
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
|
|
1
|
+
|
|
2
|
+
import { __decorate, __param } from 'vscode/external/tslib/tslib.es6';
|
|
2
3
|
import { inputLatency } from 'vscode/vscode/vs/base/browser/performance';
|
|
3
4
|
import { RunOnceScheduler } from 'vscode/vscode/vs/base/common/async';
|
|
4
5
|
import { Event } from 'vscode/vscode/vs/base/common/event';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
|
|
1
2
|
import { localize2 } from 'vscode/vscode/vs/nls';
|
|
2
3
|
import { registerAction2, Action2 } from 'vscode/vscode/vs/platform/actions/common/actions';
|
|
3
4
|
import { IInstantiationService } from 'vscode/vscode/vs/platform/instantiation/common/instantiation';
|
|
5
|
+
import { LifecyclePhase } from 'vscode/vscode/vs/workbench/services/lifecycle/common/lifecycle';
|
|
4
6
|
import { Registry } from 'vscode/vscode/vs/platform/registry/common/platform';
|
|
5
7
|
import { Categories } from 'vscode/vscode/vs/platform/action/common/actionCommonCategories';
|
|
6
8
|
import { registerWorkbenchContribution2, Extensions } from 'vscode/vscode/vs/workbench/common/contributions';
|
|
@@ -12,7 +14,7 @@ import { EventProfiling } from 'vscode/vscode/vs/base/common/event';
|
|
|
12
14
|
import { InputLatencyContrib } from './inputLatencyContrib.js';
|
|
13
15
|
|
|
14
16
|
registerWorkbenchContribution2(PerfviewContrib.ID, PerfviewContrib, { lazy: true });
|
|
15
|
-
(
|
|
17
|
+
( Registry.as(EditorExtensions.EditorFactory)).registerEditorSerializer(PerfviewInput.Id, class {
|
|
16
18
|
canSerialize() {
|
|
17
19
|
return true;
|
|
18
20
|
}
|
|
@@ -27,7 +29,7 @@ registerAction2(class extends Action2 {
|
|
|
27
29
|
constructor() {
|
|
28
30
|
super({
|
|
29
31
|
id: 'perfview.show',
|
|
30
|
-
title: ( localize2(
|
|
32
|
+
title: ( localize2(7870, 'Startup Performance')),
|
|
31
33
|
category: Categories.Developer,
|
|
32
34
|
f1: true
|
|
33
35
|
});
|
|
@@ -42,7 +44,7 @@ registerAction2(class PrintServiceCycles extends Action2 {
|
|
|
42
44
|
constructor() {
|
|
43
45
|
super({
|
|
44
46
|
id: 'perf.insta.printAsyncCycles',
|
|
45
|
-
title: ( localize2(
|
|
47
|
+
title: ( localize2(7871, 'Print Service Cycles')),
|
|
46
48
|
category: Categories.Developer,
|
|
47
49
|
f1: true
|
|
48
50
|
});
|
|
@@ -64,7 +66,7 @@ registerAction2(class PrintServiceTraces extends Action2 {
|
|
|
64
66
|
constructor() {
|
|
65
67
|
super({
|
|
66
68
|
id: 'perf.insta.printTraces',
|
|
67
|
-
title: ( localize2(
|
|
69
|
+
title: ( localize2(7872, 'Print Service Traces')),
|
|
68
70
|
category: Categories.Developer,
|
|
69
71
|
f1: true
|
|
70
72
|
});
|
|
@@ -83,7 +85,7 @@ registerAction2(class PrintEventProfiling extends Action2 {
|
|
|
83
85
|
constructor() {
|
|
84
86
|
super({
|
|
85
87
|
id: 'perf.event.profiling',
|
|
86
|
-
title: ( localize2(
|
|
88
|
+
title: ( localize2(7873, 'Print Emitter Profiles')),
|
|
87
89
|
category: Categories.Developer,
|
|
88
90
|
f1: true
|
|
89
91
|
});
|
|
@@ -98,4 +100,4 @@ registerAction2(class PrintEventProfiling extends Action2 {
|
|
|
98
100
|
}
|
|
99
101
|
}
|
|
100
102
|
});
|
|
101
|
-
(
|
|
103
|
+
( Registry.as(Extensions.Workbench)).registerWorkbenchContribution(InputLatencyContrib, LifecyclePhase.Eventually);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
|
|
2
|
+
import { LifecyclePhase } from 'vscode/vscode/vs/workbench/services/lifecycle/common/lifecycle';
|
|
1
3
|
import { Registry } from 'vscode/vscode/vs/platform/registry/common/platform';
|
|
2
4
|
import { Extensions } from 'vscode/vscode/vs/workbench/common/contributions';
|
|
3
5
|
import { BrowserResourcePerformanceMarks, BrowserStartupTimings } from './startupTimings.js';
|
|
4
6
|
|
|
5
|
-
( Registry.as(Extensions.Workbench)).registerWorkbenchContribution(BrowserResourcePerformanceMarks,
|
|
6
|
-
( Registry.as(Extensions.Workbench)).registerWorkbenchContribution(BrowserStartupTimings,
|
|
7
|
+
( Registry.as(Extensions.Workbench)).registerWorkbenchContribution(BrowserResourcePerformanceMarks, LifecyclePhase.Eventually);
|
|
8
|
+
( Registry.as(Extensions.Workbench)).registerWorkbenchContribution(BrowserStartupTimings, LifecyclePhase.Eventually);
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { URI } from "vscode/vscode/vs/base/common/uri";
|
|
2
|
+
import { TextResourceEditorInput } from "@codingame/monaco-vscode-0139c6af-2375-559c-af57-b738f2fd6d8e-common/vscode/vs/workbench/common/editor/textResourceEditorInput";
|
|
3
|
+
import { ITextModelService } from "vscode/vscode/vs/editor/common/services/resolverService";
|
|
4
|
+
import { IInstantiationService } from "vscode/vscode/vs/platform/instantiation/common/instantiation";
|
|
5
|
+
import { ITextFileService } from "vscode/vscode/vs/workbench/services/textfile/common/textfiles.service";
|
|
6
|
+
import { IEditorService } from "vscode/vscode/vs/workbench/services/editor/common/editorService.service";
|
|
7
|
+
import { IFileService } from "vscode/vscode/vs/platform/files/common/files.service";
|
|
8
|
+
import { ILabelService } from "vscode/vscode/vs/platform/label/common/label.service";
|
|
9
|
+
import { IFilesConfigurationService } from "vscode/vscode/vs/workbench/services/filesConfiguration/common/filesConfigurationService.service";
|
|
10
|
+
import { ITextResourceConfigurationService } from "vscode/vscode/vs/editor/common/services/textResourceConfiguration";
|
|
11
|
+
import { ICustomEditorLabelService } from "vscode/vscode/vs/workbench/services/editor/common/customEditorLabelService.service";
|
|
12
|
+
export declare class PerfviewContrib {
|
|
13
|
+
private readonly _instaService;
|
|
14
|
+
static get(): PerfviewContrib;
|
|
15
|
+
static readonly ID = "workbench.contrib.perfview";
|
|
16
|
+
private readonly _inputUri;
|
|
17
|
+
private readonly _registration;
|
|
18
|
+
constructor(_instaService: IInstantiationService, textModelResolverService: ITextModelService);
|
|
19
|
+
dispose(): void;
|
|
20
|
+
getInputUri(): URI;
|
|
21
|
+
getEditorInput(): PerfviewInput;
|
|
22
|
+
}
|
|
23
|
+
export declare class PerfviewInput extends TextResourceEditorInput {
|
|
24
|
+
static readonly Id = "PerfviewInput";
|
|
25
|
+
get typeId(): string;
|
|
26
|
+
constructor(textModelResolverService: ITextModelService, textFileService: ITextFileService, editorService: IEditorService, fileService: IFileService, labelService: ILabelService, filesConfigurationService: IFilesConfigurationService, textResourceConfigurationService: ITextResourceConfigurationService, customEditorLabelService: ICustomEditorLabelService);
|
|
27
|
+
}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
|
|
1
|
+
|
|
2
|
+
import { __decorate, __param } from 'vscode/external/tslib/tslib.es6';
|
|
2
3
|
import { localize } from 'vscode/vscode/vs/nls';
|
|
3
4
|
import { URI } from 'vscode/vscode/vs/base/common/uri';
|
|
4
|
-
import { TextResourceEditorInput } from 'vscode/vscode/vs/workbench/common/editor/textResourceEditorInput';
|
|
5
|
+
import { TextResourceEditorInput } from '@codingame/monaco-vscode-0139c6af-2375-559c-af57-b738f2fd6d8e-common/vscode/vs/workbench/common/editor/textResourceEditorInput';
|
|
5
6
|
import { ITextModelService } from 'vscode/vscode/vs/editor/common/services/resolverService';
|
|
6
|
-
import { StartupKindToString } from 'vscode/vscode/vs/workbench/services/lifecycle/common/lifecycle';
|
|
7
|
+
import { LifecyclePhase, StartupKindToString } from 'vscode/vscode/vs/workbench/services/lifecycle/common/lifecycle';
|
|
7
8
|
import { ILifecycleService } from 'vscode/vscode/vs/workbench/services/lifecycle/common/lifecycle.service';
|
|
8
9
|
import { ILanguageService } from 'vscode/vscode/vs/editor/common/languages/language';
|
|
9
10
|
import { IInstantiationService } from 'vscode/vscode/vs/platform/instantiation/common/instantiation';
|
|
@@ -37,7 +38,7 @@ let PerfviewContrib = class PerfviewContrib {
|
|
|
37
38
|
static { this.ID = 'workbench.contrib.perfview'; }
|
|
38
39
|
constructor(_instaService, textModelResolverService) {
|
|
39
40
|
this._instaService = _instaService;
|
|
40
|
-
this._inputUri = (
|
|
41
|
+
this._inputUri = ( URI.from({ scheme: 'perf', path: 'Startup Performance' }));
|
|
41
42
|
this._registration = textModelResolverService.registerTextModelContentProvider('perf', _instaService.createInstance(PerfModelContentProvider));
|
|
42
43
|
}
|
|
43
44
|
dispose() {
|
|
@@ -50,10 +51,10 @@ let PerfviewContrib = class PerfviewContrib {
|
|
|
50
51
|
return this._instaService.createInstance(PerfviewInput);
|
|
51
52
|
}
|
|
52
53
|
};
|
|
53
|
-
PerfviewContrib = PerfviewContrib_1 = (
|
|
54
|
-
(
|
|
55
|
-
(
|
|
56
|
-
], PerfviewContrib))
|
|
54
|
+
PerfviewContrib = PerfviewContrib_1 = ( __decorate([
|
|
55
|
+
( __param(0, IInstantiationService)),
|
|
56
|
+
( __param(1, ITextModelService))
|
|
57
|
+
], PerfviewContrib));
|
|
57
58
|
let PerfviewInput = class PerfviewInput extends TextResourceEditorInput {
|
|
58
59
|
static { PerfviewInput_1 = this; }
|
|
59
60
|
static { this.Id = 'PerfviewInput'; }
|
|
@@ -61,19 +62,19 @@ let PerfviewInput = class PerfviewInput extends TextResourceEditorInput {
|
|
|
61
62
|
return PerfviewInput_1.Id;
|
|
62
63
|
}
|
|
63
64
|
constructor(textModelResolverService, textFileService, editorService, fileService, labelService, filesConfigurationService, textResourceConfigurationService, customEditorLabelService) {
|
|
64
|
-
super(PerfviewContrib.get().getInputUri(), ( localize(
|
|
65
|
+
super(PerfviewContrib.get().getInputUri(), ( localize(7874, "Startup Performance")), undefined, undefined, undefined, textModelResolverService, textFileService, editorService, fileService, labelService, filesConfigurationService, textResourceConfigurationService, customEditorLabelService);
|
|
65
66
|
}
|
|
66
67
|
};
|
|
67
|
-
PerfviewInput = PerfviewInput_1 = (
|
|
68
|
-
(
|
|
69
|
-
(
|
|
70
|
-
(
|
|
71
|
-
(
|
|
72
|
-
(
|
|
73
|
-
(
|
|
74
|
-
(
|
|
75
|
-
(
|
|
76
|
-
], PerfviewInput))
|
|
68
|
+
PerfviewInput = PerfviewInput_1 = ( __decorate([
|
|
69
|
+
( __param(0, ITextModelService)),
|
|
70
|
+
( __param(1, ITextFileService)),
|
|
71
|
+
( __param(2, IEditorService)),
|
|
72
|
+
( __param(3, IFileService)),
|
|
73
|
+
( __param(4, ILabelService)),
|
|
74
|
+
( __param(5, IFilesConfigurationService)),
|
|
75
|
+
( __param(6, ITextResourceConfigurationService)),
|
|
76
|
+
( __param(7, ICustomEditorLabelService))
|
|
77
|
+
], PerfviewInput));
|
|
77
78
|
let PerfModelContentProvider = class PerfModelContentProvider {
|
|
78
79
|
constructor(_modelService, _languageService, _editorService, _lifecycleService, _timerService, _extensionService, _productService, _remoteAgentService, _terminalService) {
|
|
79
80
|
this._modelService = _modelService;
|
|
@@ -104,12 +105,12 @@ let PerfModelContentProvider = class PerfModelContentProvider {
|
|
|
104
105
|
_updateModel() {
|
|
105
106
|
Promise.all([
|
|
106
107
|
this._timerService.whenReady(),
|
|
107
|
-
this._lifecycleService.when(
|
|
108
|
+
this._lifecycleService.when(LifecyclePhase.Eventually),
|
|
108
109
|
this._extensionService.whenInstalledExtensionsRegistered(),
|
|
109
110
|
isWeb && !this._remoteAgentService.getConnection()?.remoteAuthority ? Promise.resolve() : this._terminalService.whenConnected
|
|
110
111
|
]).then(() => {
|
|
111
112
|
if (this._model && !this._model.isDisposed()) {
|
|
112
|
-
const md = (
|
|
113
|
+
const md = ( new MarkdownBuilder());
|
|
113
114
|
this._addSummary(md);
|
|
114
115
|
md.blank();
|
|
115
116
|
this._addSummaryTable(md);
|
|
@@ -149,7 +150,7 @@ let PerfModelContentProvider = class PerfModelContentProvider {
|
|
|
149
150
|
}
|
|
150
151
|
_addSummaryTable(md) {
|
|
151
152
|
const metrics = this._timerService.startupMetrics;
|
|
152
|
-
const contribTimings = (
|
|
153
|
+
const contribTimings = ( Registry.as(Extensions.Workbench)).timings;
|
|
153
154
|
const table = [];
|
|
154
155
|
table.push(['start => app.isReady', metrics.timers.ellapsedAppReady, '[main]', `initial startup: ${metrics.initialStartup}`]);
|
|
155
156
|
table.push(['nls:start => nls:end', metrics.timers.ellapsedNlsGeneration, '[main]', `initial startup: ${metrics.initialStartup}`]);
|
|
@@ -172,7 +173,7 @@ let PerfModelContentProvider = class PerfModelContentProvider {
|
|
|
172
173
|
table.push(['restore viewlet', metrics.timers.ellapsedViewletRestore, '[renderer]', metrics.viewletId]);
|
|
173
174
|
table.push(['restore panel', metrics.timers.ellapsedPanelRestore, '[renderer]', metrics.panelId]);
|
|
174
175
|
table.push(['restore & resolve visible editors', metrics.timers.ellapsedEditorRestore, '[renderer]', `${metrics.editorIds.length}: ${metrics.editorIds.join(', ')}`]);
|
|
175
|
-
table.push(['create workbench contributions', metrics.timers.ellapsedWorkbenchContributions, '[renderer]', `${(contribTimings.get(
|
|
176
|
+
table.push(['create workbench contributions', metrics.timers.ellapsedWorkbenchContributions, '[renderer]', `${(contribTimings.get(LifecyclePhase.Starting)?.length ?? 0) + (contribTimings.get(LifecyclePhase.Starting)?.length ?? 0)} blocking startup`]);
|
|
176
177
|
table.push(['overall workbench load', metrics.timers.ellapsedWorkbench, '[renderer]', undefined]);
|
|
177
178
|
table.push(['workbench ready', metrics.ellapsed, '[main->renderer]', undefined]);
|
|
178
179
|
table.push(['renderer ready', metrics.timers.ellapsedRenderer, '[renderer]', undefined]);
|
|
@@ -223,9 +224,9 @@ let PerfModelContentProvider = class PerfModelContentProvider {
|
|
|
223
224
|
}
|
|
224
225
|
_addWorkbenchContributionsPerfMarksTable(md) {
|
|
225
226
|
md.heading(2, 'Workbench Contributions Blocking Restore');
|
|
226
|
-
const timings = (
|
|
227
|
-
md.li(`Total (LifecyclePhase.Starting): ${timings.get(
|
|
228
|
-
md.li(`Total (LifecyclePhase.Ready): ${timings.get(
|
|
227
|
+
const timings = ( Registry.as(Extensions.Workbench)).timings;
|
|
228
|
+
md.li(`Total (LifecyclePhase.Starting): ${timings.get(LifecyclePhase.Starting)?.length} (${timings.get(LifecyclePhase.Starting)?.reduce((p, c) => p + c[1], 0)}ms)`);
|
|
229
|
+
md.li(`Total (LifecyclePhase.Ready): ${timings.get(LifecyclePhase.Ready)?.length} (${timings.get(LifecyclePhase.Ready)?.reduce((p, c) => p + c[1], 0)}ms)`);
|
|
229
230
|
md.blank();
|
|
230
231
|
const marks = this._timerService.getPerformanceMarks().find(e => e[0] === 'renderer')?.[1].filter(e => e.name.startsWith('code/willCreateWorkbenchContribution/1') ||
|
|
231
232
|
e.name.startsWith('code/didCreateWorkbenchContribution/1') ||
|
|
@@ -250,9 +251,9 @@ let PerfModelContentProvider = class PerfModelContentProvider {
|
|
|
250
251
|
}
|
|
251
252
|
}
|
|
252
253
|
_addResourceTimingStats(md) {
|
|
253
|
-
const stats = (
|
|
254
|
+
const stats = ( performance.getEntriesByType('resource').map(entry => {
|
|
254
255
|
return [entry.name, entry.duration];
|
|
255
|
-
}))
|
|
256
|
+
}));
|
|
256
257
|
if (!stats.length) {
|
|
257
258
|
return;
|
|
258
259
|
}
|
|
@@ -260,17 +261,17 @@ let PerfModelContentProvider = class PerfModelContentProvider {
|
|
|
260
261
|
md.table(['Name', 'Duration'], stats);
|
|
261
262
|
}
|
|
262
263
|
};
|
|
263
|
-
PerfModelContentProvider = (
|
|
264
|
-
(
|
|
265
|
-
(
|
|
266
|
-
(
|
|
267
|
-
(
|
|
268
|
-
(
|
|
269
|
-
(
|
|
270
|
-
(
|
|
271
|
-
(
|
|
272
|
-
(
|
|
273
|
-
], PerfModelContentProvider))
|
|
264
|
+
PerfModelContentProvider = ( __decorate([
|
|
265
|
+
( __param(0, IModelService)),
|
|
266
|
+
( __param(1, ILanguageService)),
|
|
267
|
+
( __param(2, ICodeEditorService)),
|
|
268
|
+
( __param(3, ILifecycleService)),
|
|
269
|
+
( __param(4, ITimerService)),
|
|
270
|
+
( __param(5, IExtensionService)),
|
|
271
|
+
( __param(6, IProductService)),
|
|
272
|
+
( __param(7, IRemoteAgentService)),
|
|
273
|
+
( __param(8, ITerminalService))
|
|
274
|
+
], PerfModelContentProvider));
|
|
274
275
|
class MarkdownBuilder {
|
|
275
276
|
constructor() {
|
|
276
277
|
this.value = '';
|
|
@@ -301,18 +302,18 @@ class MarkdownBuilder {
|
|
|
301
302
|
if (typeof cell === 'undefined') {
|
|
302
303
|
cell = row[ci] = '-';
|
|
303
304
|
}
|
|
304
|
-
const len = (
|
|
305
|
+
const len = ( cell.toString()).length;
|
|
305
306
|
lengths[ci] = Math.max(len, lengths[ci]);
|
|
306
307
|
});
|
|
307
308
|
});
|
|
308
|
-
header.forEach((cell, ci) => { result += `| ${cell + ' '.repeat(lengths[ci] - (
|
|
309
|
+
header.forEach((cell, ci) => { result += `| ${cell + ' '.repeat(lengths[ci] - ( cell.toString()).length)} `; });
|
|
309
310
|
result += '|\n';
|
|
310
311
|
header.forEach((_cell, ci) => { result += `| ${'-'.repeat(lengths[ci])} `; });
|
|
311
312
|
result += '|\n';
|
|
312
313
|
rows.forEach(row => {
|
|
313
314
|
row.forEach((cell, ci) => {
|
|
314
315
|
if (typeof cell !== 'undefined') {
|
|
315
|
-
result += `| ${cell + ' '.repeat(lengths[ci] - (
|
|
316
|
+
result += `| ${cell + ' '.repeat(lengths[ci] - ( cell.toString()).length)} `;
|
|
316
317
|
}
|
|
317
318
|
});
|
|
318
319
|
result += '|\n';
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { ILifecycleService } from "vscode/vscode/vs/workbench/services/lifecycle/common/lifecycle.service";
|
|
2
|
+
import { IUpdateService } from "vscode/vscode/vs/platform/update/common/update.service";
|
|
3
|
+
import { IEditorService } from "vscode/vscode/vs/workbench/services/editor/common/editorService.service";
|
|
4
|
+
import { IWorkspaceTrustManagementService } from "vscode/vscode/vs/platform/workspace/common/workspaceTrust.service";
|
|
5
|
+
import { IPaneCompositePartService } from "vscode/vscode/vs/workbench/services/panecomposite/browser/panecomposite.service";
|
|
6
|
+
import { ILogService } from "vscode/vscode/vs/platform/log/common/log.service";
|
|
7
|
+
import { IProductService } from "vscode/vscode/vs/platform/product/common/productService.service";
|
|
8
|
+
import { ITelemetryService } from "vscode/vscode/vs/platform/telemetry/common/telemetry.service";
|
|
9
|
+
import { IBrowserWorkbenchEnvironmentService } from "vscode/vscode/vs/workbench/services/environment/browser/environmentService.service";
|
|
10
|
+
import { ITimerService } from "vscode/vscode/vs/workbench/services/timer/browser/timerService.service";
|
|
11
|
+
import { IWorkbenchContribution } from "vscode/vscode/vs/workbench/common/contributions";
|
|
12
|
+
export declare abstract class StartupTimings {
|
|
13
|
+
private readonly _editorService;
|
|
14
|
+
private readonly _paneCompositeService;
|
|
15
|
+
private readonly _lifecycleService;
|
|
16
|
+
private readonly _updateService;
|
|
17
|
+
private readonly _workspaceTrustService;
|
|
18
|
+
constructor(_editorService: IEditorService, _paneCompositeService: IPaneCompositePartService, _lifecycleService: ILifecycleService, _updateService: IUpdateService, _workspaceTrustService: IWorkspaceTrustManagementService);
|
|
19
|
+
protected _isStandardStartup(): Promise<string | undefined>;
|
|
20
|
+
}
|
|
21
|
+
export declare class BrowserStartupTimings extends StartupTimings implements IWorkbenchContribution {
|
|
22
|
+
private readonly timerService;
|
|
23
|
+
private readonly logService;
|
|
24
|
+
private readonly environmentService;
|
|
25
|
+
private readonly telemetryService;
|
|
26
|
+
private readonly productService;
|
|
27
|
+
constructor(editorService: IEditorService, paneCompositeService: IPaneCompositePartService, lifecycleService: ILifecycleService, updateService: IUpdateService, workspaceTrustService: IWorkspaceTrustManagementService, timerService: ITimerService, logService: ILogService, environmentService: IBrowserWorkbenchEnvironmentService, telemetryService: ITelemetryService, productService: IProductService);
|
|
28
|
+
private logPerfMarks;
|
|
29
|
+
}
|
|
30
|
+
export declare class BrowserResourcePerformanceMarks {
|
|
31
|
+
constructor(telemetryService: ITelemetryService);
|
|
32
|
+
}
|
|
@@ -1,12 +1,14 @@
|
|
|
1
|
-
|
|
1
|
+
|
|
2
|
+
import { __decorate, __param } from 'vscode/external/tslib/tslib.es6';
|
|
2
3
|
import { isCodeEditor } from 'vscode/vscode/vs/editor/browser/editorBrowser';
|
|
3
|
-
import { StartupKindToString } from 'vscode/vscode/vs/workbench/services/lifecycle/common/lifecycle';
|
|
4
|
+
import { StartupKind, StartupKindToString } from 'vscode/vscode/vs/workbench/services/lifecycle/common/lifecycle';
|
|
4
5
|
import { ILifecycleService } from 'vscode/vscode/vs/workbench/services/lifecycle/common/lifecycle.service';
|
|
5
6
|
import { IUpdateService } from 'vscode/vscode/vs/platform/update/common/update.service';
|
|
6
|
-
import { VIEWLET_ID } from 'vscode/vscode/vs/workbench/contrib/files/common/files';
|
|
7
|
+
import { VIEWLET_ID } from '@codingame/monaco-vscode-cc9ccbec-e2a1-599d-84ae-46f5efc666e3-common/vscode/vs/workbench/contrib/files/common/files';
|
|
7
8
|
import { IEditorService } from 'vscode/vscode/vs/workbench/services/editor/common/editorService.service';
|
|
8
9
|
import { IWorkspaceTrustManagementService } from 'vscode/vscode/vs/platform/workspace/common/workspaceTrust.service';
|
|
9
10
|
import { IPaneCompositePartService } from 'vscode/vscode/vs/workbench/services/panecomposite/browser/panecomposite.service';
|
|
11
|
+
import { ViewContainerLocation } from 'vscode/vscode/vs/workbench/common/views';
|
|
10
12
|
import { ILogService } from 'vscode/vscode/vs/platform/log/common/log.service';
|
|
11
13
|
import { IProductService } from 'vscode/vscode/vs/platform/product/common/productService.service';
|
|
12
14
|
import { ITelemetryService } from 'vscode/vscode/vs/platform/telemetry/common/telemetry.service';
|
|
@@ -24,13 +26,13 @@ let StartupTimings = class StartupTimings {
|
|
|
24
26
|
this._workspaceTrustService = _workspaceTrustService;
|
|
25
27
|
}
|
|
26
28
|
async _isStandardStartup() {
|
|
27
|
-
if (this._lifecycleService.startupKind !==
|
|
29
|
+
if (this._lifecycleService.startupKind !== StartupKind.NewWindow) {
|
|
28
30
|
return StartupKindToString(this._lifecycleService.startupKind);
|
|
29
31
|
}
|
|
30
32
|
if (!this._workspaceTrustService.isWorkspaceTrusted()) {
|
|
31
33
|
return 'Workspace not trusted';
|
|
32
34
|
}
|
|
33
|
-
const activeViewlet = this._paneCompositeService.getActivePaneComposite(
|
|
35
|
+
const activeViewlet = this._paneCompositeService.getActivePaneComposite(ViewContainerLocation.Sidebar);
|
|
34
36
|
if (!activeViewlet || activeViewlet.getId() !== VIEWLET_ID) {
|
|
35
37
|
return 'Explorer viewlet not visible';
|
|
36
38
|
}
|
|
@@ -41,9 +43,9 @@ let StartupTimings = class StartupTimings {
|
|
|
41
43
|
if (!isCodeEditor(visibleEditorPanes[0].getControl())) {
|
|
42
44
|
return 'Active editor is not a text editor';
|
|
43
45
|
}
|
|
44
|
-
const activePanel = this._paneCompositeService.getActivePaneComposite(
|
|
46
|
+
const activePanel = this._paneCompositeService.getActivePaneComposite(ViewContainerLocation.Panel);
|
|
45
47
|
if (activePanel) {
|
|
46
|
-
return `Current active panel : ${this._paneCompositeService.getPaneComposite(activePanel.getId(),
|
|
48
|
+
return `Current active panel : ${this._paneCompositeService.getPaneComposite(activePanel.getId(), ViewContainerLocation.Panel)?.name}`;
|
|
47
49
|
}
|
|
48
50
|
const isLatestVersion = await this._updateService.isLatestVersion();
|
|
49
51
|
if (isLatestVersion === false) {
|
package/performance.js
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import './vscode/src/vs/workbench/contrib/performance/browser/performance.contribution.js';
|
|
2
|
-
import './vscode/src/vs/workbench/contrib/performance/browser/performance.web.contribution.js';
|
|
3
|
-
|
|
4
|
-
function getServiceOverride() {
|
|
5
|
-
return {};
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
export { getServiceOverride as default };
|