@theia/monaco 1.29.0-next.2 → 1.29.0-next.7
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/lib/browser/monaco-color-registry.js +1 -1
- package/lib/browser/monaco-color-registry.js.map +1 -1
- package/lib/browser/monaco-frontend-application-contribution.d.ts.map +1 -1
- package/lib/browser/monaco-frontend-application-contribution.js +10 -0
- package/lib/browser/monaco-frontend-application-contribution.js.map +1 -1
- package/lib/browser/monaco-indexed-db.d.ts +3 -0
- package/lib/browser/monaco-indexed-db.d.ts.map +1 -1
- package/lib/browser/monaco-indexed-db.js +18 -8
- package/lib/browser/monaco-indexed-db.js.map +1 -1
- package/lib/browser/monaco-theming-service.d.ts +2 -3
- package/lib/browser/monaco-theming-service.d.ts.map +1 -1
- package/lib/browser/monaco-theming-service.js +3 -3
- package/lib/browser/monaco-theming-service.js.map +1 -1
- package/package.json +7 -7
- package/src/browser/monaco-color-registry.ts +1 -1
- package/src/browser/monaco-frontend-application-contribution.ts +11 -0
- package/src/browser/monaco-indexed-db.ts +15 -8
- package/src/browser/monaco-theming-service.ts +3 -3
|
@@ -43,7 +43,7 @@ let MonacoColorRegistry = class MonacoColorRegistry extends color_registry_1.Col
|
|
|
43
43
|
}
|
|
44
44
|
getCurrentColor(id) {
|
|
45
45
|
const color = this.monacoThemeService.getColorTheme().getColor(id);
|
|
46
|
-
return color
|
|
46
|
+
return color === null || color === void 0 ? void 0 : color.toString();
|
|
47
47
|
}
|
|
48
48
|
doRegister(definition) {
|
|
49
49
|
var _a, _b, _c, _d, _e, _f;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monaco-color-registry.js","sourceRoot":"","sources":["../../src/browser/monaco-color-registry.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,2EAA2E;AAC3E,gFAAgF;;;;;;;;;AAEhF,4DAA0D;AAC1D,2EAAuE;AAEvE,kEAA+D;AAC/D,wGAAmI;AACnI,sHAAmH;AACnH,+GAAoH;AACpH,8EAAsG;AACtG,+FAA+F;AAG/F,IAAa,mBAAmB,GAAhC,MAAa,mBAAoB,SAAQ,8BAAa;IAAtD;;QAEuB,uBAAkB,GAAG,uCAAkB,CAAC,GAAG,CAAC,yCAAuB,CAAC,CAAC;QACrE,wBAAmB,GAAG,IAAA,gCAAgB,GAAE,CAAC;IAuChE,CAAC;IArCY,CAAC,SAAS;QACf,KAAK,MAAM,EAAE,EAAE,EAAE,IAAI,IAAI,CAAC,mBAAmB,CAAC,SAAS,EAAE,EAAE;YACvD,MAAM,EAAE,CAAC;SACZ;IACL,CAAC;IAEQ,eAAe,CAAC,EAAU;QAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,aAAa,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QACnE,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"monaco-color-registry.js","sourceRoot":"","sources":["../../src/browser/monaco-color-registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monaco-frontend-application-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/monaco-frontend-application-contribution.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,+BAA+B,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC5K,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AAIjF,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,iBAAiB,IAAI,uBAAuB,EAAE,MAAM,gFAAgF,CAAC;AAM9I,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"monaco-frontend-application-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/monaco-frontend-application-contribution.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,+BAA+B,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC5K,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AAIjF,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,iBAAiB,IAAI,uBAAuB,EAAE,MAAM,gFAAgF,CAAC;AAM9I,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAgBhE,qBACa,qCAAsC,YAAW,+BAA+B,EAAE,kBAAkB;IAG7G,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,mBAAmB,CAAC;IAG1D,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,sBAAsB,CAAC;IAG5D,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,uBAAuB,CAAC;IAG9D,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,4BAA4B,CAAC;IAGxE,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,wBAAwB,CAAC;IAG9D,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;IAG5D,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,CAAC;IAElC,SAAS,CAAC,QAAQ,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;IAG5F,SAAS,CAAC,IAAI,IAAI,IAAI;IAgCtB,UAAU,IAAI,IAAI;IAElB,kBAAkB,CAAC,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,iBAAiB,GAAG,IAAI;IA2CzE;;;;OAIG;IACH,SAAS,CAAC,kCAAkC,IAAI,IAAI;CA+BvD"}
|
|
@@ -44,10 +44,20 @@ const theme_1 = require("@theia/core/lib/common/theme");
|
|
|
44
44
|
const editorOptions_1 = require("@theia/monaco-editor-core/esm/vs/editor/common/config/editorOptions");
|
|
45
45
|
const core_1 = require("@theia/core");
|
|
46
46
|
const editor_generated_preference_schema_1 = require("@theia/editor/lib/browser/editor-generated-preference-schema");
|
|
47
|
+
let theiaDidInitialize = false;
|
|
48
|
+
const originalInitialize = standaloneServices_1.StandaloneServices.initialize;
|
|
49
|
+
standaloneServices_1.StandaloneServices.initialize = overrides => {
|
|
50
|
+
if (!theiaDidInitialize) {
|
|
51
|
+
console.warn('Monaco was initialized before overrides were installed by Theia\'s initialization.'
|
|
52
|
+
+ ' Please check the lifecycle of services that use Monaco and ensure that Monaco entities are not instantiated before Theia is initialized.', new Error());
|
|
53
|
+
}
|
|
54
|
+
return originalInitialize(overrides);
|
|
55
|
+
};
|
|
47
56
|
let MonacoFrontendApplicationContribution = class MonacoFrontendApplicationContribution {
|
|
48
57
|
init() {
|
|
49
58
|
this.addAdditionalPreferenceValidations();
|
|
50
59
|
const { codeEditorService, textModelService, contextKeyService, contextMenuService } = this;
|
|
60
|
+
theiaDidInitialize = true;
|
|
51
61
|
standaloneServices_1.StandaloneServices.initialize({
|
|
52
62
|
[codeEditorService_1.ICodeEditorService.toString()]: codeEditorService,
|
|
53
63
|
[resolverService_1.ITextModelService.toString()]: textModelService,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monaco-frontend-application-contribution.js","sourceRoot":"","sources":["../../src/browser/monaco-frontend-application-contribution.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,0CAA0C;AAC1C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,2EAA2E;AAC3E,gFAAgF;;;;;;;;;;;;AAEhF,4DAAiF;AACjF,qDAA4K;AAC5K,uFAAiF;AACjF,oDAAoD;AACpD,qGAAmH;AAEnH,mEAA8D;AAC9D,2EAAqE;AACrE,sHAA8I;AAC9I,sHAAmH;AACnH,kHAAgH;AAChH,6GAA4G;AAC5G,uGAA4G;AAC5G,2GAAgH;AAChH,+DAAiE;AACjE,qEAAgE;AAChE,wDAA8D;AAC9D,uGAA2H;AAC3H,sCAA+C;AAC/C,qHAAmH;
|
|
1
|
+
{"version":3,"file":"monaco-frontend-application-contribution.js","sourceRoot":"","sources":["../../src/browser/monaco-frontend-application-contribution.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ import { ThemeService } from '@theia/core/lib/browser/theming';
|
|
|
4
4
|
import * as monaco from '@theia/monaco-editor-core';
|
|
5
5
|
import type { ThemeMix } from './textmate/monaco-theme-types';
|
|
6
6
|
import { Theme } from '@theia/core/lib/common/theme';
|
|
7
|
+
import { Emitter, Event } from '@theia/core';
|
|
7
8
|
export declare const monacoDB: Promise<idb.IDBPDatabase<unknown>> | undefined;
|
|
8
9
|
export interface MonacoThemeState {
|
|
9
10
|
id: string;
|
|
@@ -20,6 +21,8 @@ export declare function putTheme(state: MonacoThemeState): Disposable;
|
|
|
20
21
|
export declare function deleteTheme(id: string): Promise<void>;
|
|
21
22
|
export declare function stateToTheme(state: MonacoThemeState): Theme;
|
|
22
23
|
export declare class ThemeServiceWithDB extends ThemeService {
|
|
24
|
+
protected onDidRetrieveThemeEmitter: Emitter<MonacoThemeState>;
|
|
25
|
+
get onDidRetrieveTheme(): Event<MonacoThemeState>;
|
|
23
26
|
loadUserTheme(): void;
|
|
24
27
|
protected loadUserThemeWithDB(): Promise<void>;
|
|
25
28
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monaco-indexed-db.d.ts","sourceRoot":"","sources":["../../src/browser/monaco-indexed-db.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAC3B,OAAO,EAAE,UAAU,EAAwB,MAAM,mCAAmC,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,KAAK,MAAM,MAAM,2BAA2B,CAAC;AAEpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"monaco-indexed-db.d.ts","sourceRoot":"","sources":["../../src/browser/monaco-indexed-db.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAC3B,OAAO,EAAE,UAAU,EAAwB,MAAM,mCAAmC,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,KAAK,MAAM,MAAM,2BAA2B,CAAC;AAEpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAa7C,eAAO,MAAM,QAAQ,gDAAY,CAAC;AAElC,MAAM,WAAW,gBAAgB;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAA;IACnC,IAAI,EAAE,QAAQ,CAAA;CACjB;AACD,yBAAiB,gBAAgB,CAAC;IAC9B,SAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,KAAK,IAAI,gBAAgB,CAEvE;CACJ;AAED,wBAAsB,SAAS,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAO7D;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,gBAAgB,GAAG,UAAU,CAI5D;AAkBD,wBAAsB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAM3D;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,gBAAgB,GAAG,KAAK,CAU3D;AAED,qBACa,kBAAmB,SAAQ,YAAY;IAChD,SAAS,CAAC,yBAAyB,4BAAmC;IACtE,IAAI,kBAAkB,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAEhD;IAEQ,aAAa,IAAI,IAAI;cAId,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;CAgBvD"}
|
|
@@ -26,6 +26,7 @@ const idb = require("idb");
|
|
|
26
26
|
const disposable_1 = require("@theia/core/lib/common/disposable");
|
|
27
27
|
const theming_1 = require("@theia/core/lib/browser/theming");
|
|
28
28
|
const inversify_1 = require("@theia/core/shared/inversify");
|
|
29
|
+
const core_1 = require("@theia/core");
|
|
29
30
|
let _monacoDB;
|
|
30
31
|
if ('indexedDB' in window) {
|
|
31
32
|
_monacoDB = idb.openDB('theia-monaco', 1, {
|
|
@@ -95,23 +96,32 @@ function stateToTheme(state) {
|
|
|
95
96
|
};
|
|
96
97
|
}
|
|
97
98
|
exports.stateToTheme = stateToTheme;
|
|
98
|
-
async function getThemeFromDB(id) {
|
|
99
|
-
const matchingState = (await getThemes()).find(theme => theme.id === id);
|
|
100
|
-
return matchingState && stateToTheme(matchingState);
|
|
101
|
-
}
|
|
102
99
|
let ThemeServiceWithDB = class ThemeServiceWithDB extends theming_1.ThemeService {
|
|
100
|
+
constructor() {
|
|
101
|
+
super(...arguments);
|
|
102
|
+
this.onDidRetrieveThemeEmitter = new core_1.Emitter();
|
|
103
|
+
}
|
|
104
|
+
get onDidRetrieveTheme() {
|
|
105
|
+
return this.onDidRetrieveThemeEmitter.event;
|
|
106
|
+
}
|
|
103
107
|
loadUserTheme() {
|
|
104
108
|
this.loadUserThemeWithDB();
|
|
105
109
|
}
|
|
106
110
|
async loadUserThemeWithDB() {
|
|
107
|
-
var _a, _b;
|
|
108
|
-
const themeId = window.localStorage.getItem(
|
|
109
|
-
const theme = (
|
|
111
|
+
var _a, _b, _c;
|
|
112
|
+
const themeId = (_a = window.localStorage.getItem(theming_1.ThemeService.STORAGE_KEY)) !== null && _a !== void 0 ? _a : this.defaultTheme.id;
|
|
113
|
+
const theme = (_c = (_b = this.themes[themeId]) !== null && _b !== void 0 ? _b : await getThemes().then(themes => {
|
|
114
|
+
const matchingTheme = themes.find(candidate => candidate.id === themeId);
|
|
115
|
+
if (matchingTheme) {
|
|
116
|
+
this.onDidRetrieveThemeEmitter.fire(matchingTheme);
|
|
117
|
+
return stateToTheme(matchingTheme);
|
|
118
|
+
}
|
|
119
|
+
})) !== null && _c !== void 0 ? _c : this.getTheme(themeId);
|
|
110
120
|
// In case the theme comes from the DB.
|
|
111
121
|
if (!this.themes[theme.id]) {
|
|
112
122
|
this.themes[theme.id] = theme;
|
|
113
123
|
}
|
|
114
|
-
this.setCurrentTheme(theme.id);
|
|
124
|
+
this.setCurrentTheme(theme.id, false);
|
|
115
125
|
this.deferredInitializer.resolve();
|
|
116
126
|
}
|
|
117
127
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monaco-indexed-db.js","sourceRoot":"","sources":["../../src/browser/monaco-indexed-db.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,2EAA2E;AAC3E,gFAAgF;;;;;;;;;AAEhF,2BAA2B;AAC3B,kEAAqF;AACrF,6DAA+D;AAE/D,4DAA0D;
|
|
1
|
+
{"version":3,"file":"monaco-indexed-db.js","sourceRoot":"","sources":["../../src/browser/monaco-indexed-db.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import { ThemeService } from '@theia/core/lib/browser/theming';
|
|
2
1
|
import URI from '@theia/core/lib/common/uri';
|
|
3
2
|
import { Disposable, DisposableCollection } from '@theia/core/lib/common/disposable';
|
|
4
3
|
import { MonacoThemeRegistry } from './textmate/monaco-theme-registry';
|
|
5
|
-
import { MonacoThemeState } from './monaco-indexed-db';
|
|
4
|
+
import { MonacoThemeState, ThemeServiceWithDB } from './monaco-indexed-db';
|
|
6
5
|
import { FileService } from '@theia/filesystem/lib/browser/file-service';
|
|
7
6
|
import * as monaco from '@theia/monaco-editor-core';
|
|
8
7
|
export interface MonacoTheme {
|
|
@@ -37,7 +36,7 @@ export interface MonacoThemeJson {
|
|
|
37
36
|
export declare class MonacoThemingService {
|
|
38
37
|
protected readonly fileService: FileService;
|
|
39
38
|
protected readonly monacoThemeRegistry: MonacoThemeRegistry;
|
|
40
|
-
protected readonly themeService:
|
|
39
|
+
protected readonly themeService: ThemeServiceWithDB;
|
|
41
40
|
/** Register themes whose configuration needs to be loaded */
|
|
42
41
|
register(theme: MonacoTheme, pending?: {
|
|
43
42
|
[uri: string]: Promise<any>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monaco-theming-service.d.ts","sourceRoot":"","sources":["../../src/browser/monaco-theming-service.ts"],"names":[],"mappings":"AAqBA,OAAO,
|
|
1
|
+
{"version":3,"file":"monaco-theming-service.d.ts","sourceRoot":"","sources":["../../src/browser/monaco-theming-service.ts"],"names":[],"mappings":"AAqBA,OAAO,GAAG,MAAM,4BAA4B,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACrF,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,EAAuB,gBAAgB,EAAgB,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC9G,OAAO,EAAE,WAAW,EAAE,MAAM,4CAA4C,CAAC;AACzE,OAAO,KAAK,MAAM,MAAM,2BAA2B,CAAC;AAEpD,MAAM,WAAW,WAAW;IACxB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,eAAe;IAC5B;;OAEG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,IAAI,EAAE,GAAG,CAAA;IACT;;OAEG;IACH,QAAQ,CAAC,EAAE;QAAE,CAAC,WAAW,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAA;CAC5C;AAED,qBACa,oBAAoB;IAER,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IACpC,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;IAC7D,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,kBAAkB,CAAC;IAEhF,6DAA6D;IAC7D,QAAQ,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,GAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;KAAO,GAAG,UAAU;cAMvE,UAAU,CAAC,KAAK,EAAE,WAAW,EACzC,OAAO,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;KAAE,EACxC,SAAS,EAAE,oBAAoB,GAChC,OAAO,CAAC,IAAI,CAAC;cAeA,SAAS,CACrB,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE;QAAE,CAAC,OAAO,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EACpC,OAAO,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;KAAE,EACxC,SAAS,EAAE,oBAAoB,GAChC,OAAO,CAAC,GAAG,CAAC;IAgCf,SAAS,CAAC,WAAW,CACjB,QAAQ,EAAE,GAAG,EACb,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE;QAAE,CAAC,OAAO,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EACpC,OAAO,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;KAAE,EACxC,SAAS,EAAE,oBAAoB,GAChC,OAAO,CAAC,GAAG,CAAC;IAQf,UAAU,IAAI,IAAI;IAQlB,mEAAmE;IACnE,mBAAmB,CAAC,KAAK,EAAE,eAAe,GAAG,UAAU;IASvD,SAAS,CAAC,eAAe,uBAA8B;IACvD,SAAS,CAAC,iBAAiB,IAAI,IAAI;IAQnC,SAAS,CAAC,qBAAqB,CAAC,KAAK,EAAE,gBAAgB,GAAG,UAAU;cAOpD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAaxC,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAQnD,OAAO,CAAC,UAAU;CAQrB"}
|
|
@@ -30,7 +30,6 @@ exports.MonacoThemingService = void 0;
|
|
|
30
30
|
const inversify_1 = require("@theia/core/shared/inversify");
|
|
31
31
|
const jsoncparser = require("jsonc-parser");
|
|
32
32
|
const plistparser = require("fast-plist");
|
|
33
|
-
const theming_1 = require("@theia/core/lib/browser/theming");
|
|
34
33
|
const uri_1 = require("@theia/core/lib/common/uri");
|
|
35
34
|
const disposable_1 = require("@theia/core/lib/common/disposable");
|
|
36
35
|
const monaco_theme_registry_1 = require("./textmate/monaco-theme-registry");
|
|
@@ -103,6 +102,7 @@ let MonacoThemingService = MonacoThemingService_1 = class MonacoThemingService {
|
|
|
103
102
|
this.monacoThemeRegistry.initializeDefaultThemes();
|
|
104
103
|
this.updateBodyUiTheme();
|
|
105
104
|
this.themeService.onDidColorThemeChange(() => this.updateBodyUiTheme());
|
|
105
|
+
this.themeService.onDidRetrieveTheme(theme => this.monacoThemeRegistry.setTheme(MonacoThemingService_1.toCssSelector(theme.id), theme.data));
|
|
106
106
|
this.restore();
|
|
107
107
|
}
|
|
108
108
|
/** register a theme whose configuration has already been loaded */
|
|
@@ -162,8 +162,8 @@ __decorate([
|
|
|
162
162
|
__metadata("design:type", monaco_theme_registry_1.MonacoThemeRegistry)
|
|
163
163
|
], MonacoThemingService.prototype, "monacoThemeRegistry", void 0);
|
|
164
164
|
__decorate([
|
|
165
|
-
(0, inversify_1.inject)(
|
|
166
|
-
__metadata("design:type",
|
|
165
|
+
(0, inversify_1.inject)(monaco_indexed_db_1.ThemeServiceWithDB),
|
|
166
|
+
__metadata("design:type", monaco_indexed_db_1.ThemeServiceWithDB)
|
|
167
167
|
], MonacoThemingService.prototype, "themeService", void 0);
|
|
168
168
|
MonacoThemingService = MonacoThemingService_1 = __decorate([
|
|
169
169
|
(0, inversify_1.injectable)()
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monaco-theming-service.js","sourceRoot":"","sources":["../../src/browser/monaco-theming-service.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,2EAA2E;AAC3E,gFAAgF;;;;;;;;;;;;;AAEhF,uDAAuD;AAEvD,4DAAkE;AAClE,4CAA4C;AAC5C,0CAA0C;AAC1C,
|
|
1
|
+
{"version":3,"file":"monaco-theming-service.js","sourceRoot":"","sources":["../../src/browser/monaco-theming-service.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@theia/monaco",
|
|
3
|
-
"version": "1.29.0-next.
|
|
3
|
+
"version": "1.29.0-next.7+5aeef6c0c68",
|
|
4
4
|
"description": "Theia - Monaco Extension",
|
|
5
5
|
"dependencies": {
|
|
6
|
-
"@theia/core": "1.29.0-next.
|
|
7
|
-
"@theia/editor": "1.29.0-next.
|
|
8
|
-
"@theia/filesystem": "1.29.0-next.
|
|
9
|
-
"@theia/markers": "1.29.0-next.
|
|
6
|
+
"@theia/core": "1.29.0-next.7+5aeef6c0c68",
|
|
7
|
+
"@theia/editor": "1.29.0-next.7+5aeef6c0c68",
|
|
8
|
+
"@theia/filesystem": "1.29.0-next.7+5aeef6c0c68",
|
|
9
|
+
"@theia/markers": "1.29.0-next.7+5aeef6c0c68",
|
|
10
10
|
"@theia/monaco-editor-core": "1.67.2",
|
|
11
|
-
"@theia/outline-view": "1.29.0-next.
|
|
11
|
+
"@theia/outline-view": "1.29.0-next.7+5aeef6c0c68",
|
|
12
12
|
"fast-plist": "^0.1.2",
|
|
13
13
|
"idb": "^4.0.5",
|
|
14
14
|
"jsonc-parser": "^2.2.0",
|
|
@@ -54,5 +54,5 @@
|
|
|
54
54
|
"nyc": {
|
|
55
55
|
"extends": "../../configs/nyc.json"
|
|
56
56
|
},
|
|
57
|
-
"gitHead": "
|
|
57
|
+
"gitHead": "5aeef6c0c683b4e91713ab736957e6655b486adc"
|
|
58
58
|
}
|
|
@@ -38,7 +38,7 @@ export class MonacoColorRegistry extends ColorRegistry {
|
|
|
38
38
|
|
|
39
39
|
override getCurrentColor(id: string): string | undefined {
|
|
40
40
|
const color = this.monacoThemeService.getColorTheme().getColor(id);
|
|
41
|
-
return color
|
|
41
|
+
return color?.toString();
|
|
42
42
|
}
|
|
43
43
|
|
|
44
44
|
protected override doRegister(definition: ColorDefinition): Disposable {
|
|
@@ -35,6 +35,16 @@ import { editorOptionsRegistry, IEditorOption } from '@theia/monaco-editor-core/
|
|
|
35
35
|
import { MAX_SAFE_INTEGER } from '@theia/core';
|
|
36
36
|
import { editorGeneratedPreferenceProperties } from '@theia/editor/lib/browser/editor-generated-preference-schema';
|
|
37
37
|
|
|
38
|
+
let theiaDidInitialize = false;
|
|
39
|
+
const originalInitialize = StandaloneServices.initialize;
|
|
40
|
+
StandaloneServices.initialize = overrides => {
|
|
41
|
+
if (!theiaDidInitialize) {
|
|
42
|
+
console.warn('Monaco was initialized before overrides were installed by Theia\'s initialization.'
|
|
43
|
+
+ ' Please check the lifecycle of services that use Monaco and ensure that Monaco entities are not instantiated before Theia is initialized.', new Error());
|
|
44
|
+
}
|
|
45
|
+
return originalInitialize(overrides);
|
|
46
|
+
};
|
|
47
|
+
|
|
38
48
|
@injectable()
|
|
39
49
|
export class MonacoFrontendApplicationContribution implements FrontendApplicationContribution, StylingParticipant {
|
|
40
50
|
|
|
@@ -65,6 +75,7 @@ export class MonacoFrontendApplicationContribution implements FrontendApplicatio
|
|
|
65
75
|
protected init(): void {
|
|
66
76
|
this.addAdditionalPreferenceValidations();
|
|
67
77
|
const { codeEditorService, textModelService, contextKeyService, contextMenuService } = this;
|
|
78
|
+
theiaDidInitialize = true;
|
|
68
79
|
StandaloneServices.initialize({
|
|
69
80
|
[ICodeEditorService.toString()]: codeEditorService,
|
|
70
81
|
[ITextModelService.toString()]: textModelService,
|
|
@@ -21,6 +21,7 @@ import * as monaco from '@theia/monaco-editor-core';
|
|
|
21
21
|
import { injectable } from '@theia/core/shared/inversify';
|
|
22
22
|
import type { ThemeMix } from './textmate/monaco-theme-types';
|
|
23
23
|
import { Theme } from '@theia/core/lib/common/theme';
|
|
24
|
+
import { Emitter, Event } from '@theia/core';
|
|
24
25
|
|
|
25
26
|
let _monacoDB: Promise<idb.IDBPDatabase> | undefined;
|
|
26
27
|
if ('indexedDB' in window) {
|
|
@@ -99,25 +100,31 @@ export function stateToTheme(state: MonacoThemeState): Theme {
|
|
|
99
100
|
};
|
|
100
101
|
}
|
|
101
102
|
|
|
102
|
-
async function getThemeFromDB(id: string): Promise<Theme | undefined> {
|
|
103
|
-
const matchingState = (await getThemes()).find(theme => theme.id === id);
|
|
104
|
-
return matchingState && stateToTheme(matchingState);
|
|
105
|
-
}
|
|
106
|
-
|
|
107
103
|
@injectable()
|
|
108
104
|
export class ThemeServiceWithDB extends ThemeService {
|
|
105
|
+
protected onDidRetrieveThemeEmitter = new Emitter<MonacoThemeState>();
|
|
106
|
+
get onDidRetrieveTheme(): Event<MonacoThemeState> {
|
|
107
|
+
return this.onDidRetrieveThemeEmitter.event;
|
|
108
|
+
}
|
|
109
|
+
|
|
109
110
|
override loadUserTheme(): void {
|
|
110
111
|
this.loadUserThemeWithDB();
|
|
111
112
|
}
|
|
112
113
|
|
|
113
114
|
protected async loadUserThemeWithDB(): Promise<void> {
|
|
114
|
-
const themeId = window.localStorage.getItem(
|
|
115
|
-
const theme = this.themes[themeId] ?? await
|
|
115
|
+
const themeId = window.localStorage.getItem(ThemeService.STORAGE_KEY) ?? this.defaultTheme.id;
|
|
116
|
+
const theme = this.themes[themeId] ?? await getThemes().then(themes => {
|
|
117
|
+
const matchingTheme = themes.find(candidate => candidate.id === themeId);
|
|
118
|
+
if (matchingTheme) {
|
|
119
|
+
this.onDidRetrieveThemeEmitter.fire(matchingTheme);
|
|
120
|
+
return stateToTheme(matchingTheme);
|
|
121
|
+
}
|
|
122
|
+
}) ?? this.getTheme(themeId);
|
|
116
123
|
// In case the theme comes from the DB.
|
|
117
124
|
if (!this.themes[theme.id]) {
|
|
118
125
|
this.themes[theme.id] = theme;
|
|
119
126
|
}
|
|
120
|
-
this.setCurrentTheme(theme.id);
|
|
127
|
+
this.setCurrentTheme(theme.id, false);
|
|
121
128
|
this.deferredInitializer.resolve();
|
|
122
129
|
}
|
|
123
130
|
}
|
|
@@ -19,11 +19,10 @@
|
|
|
19
19
|
import { injectable, inject } from '@theia/core/shared/inversify';
|
|
20
20
|
import * as jsoncparser from 'jsonc-parser';
|
|
21
21
|
import * as plistparser from 'fast-plist';
|
|
22
|
-
import { ThemeService } from '@theia/core/lib/browser/theming';
|
|
23
22
|
import URI from '@theia/core/lib/common/uri';
|
|
24
23
|
import { Disposable, DisposableCollection } from '@theia/core/lib/common/disposable';
|
|
25
24
|
import { MonacoThemeRegistry } from './textmate/monaco-theme-registry';
|
|
26
|
-
import { getThemes, putTheme, MonacoThemeState, stateToTheme } from './monaco-indexed-db';
|
|
25
|
+
import { getThemes, putTheme, MonacoThemeState, stateToTheme, ThemeServiceWithDB } from './monaco-indexed-db';
|
|
27
26
|
import { FileService } from '@theia/filesystem/lib/browser/file-service';
|
|
28
27
|
import * as monaco from '@theia/monaco-editor-core';
|
|
29
28
|
|
|
@@ -61,7 +60,7 @@ export class MonacoThemingService {
|
|
|
61
60
|
|
|
62
61
|
@inject(FileService) protected readonly fileService: FileService;
|
|
63
62
|
@inject(MonacoThemeRegistry) protected readonly monacoThemeRegistry: MonacoThemeRegistry;
|
|
64
|
-
@inject(
|
|
63
|
+
@inject(ThemeServiceWithDB) protected readonly themeService: ThemeServiceWithDB;
|
|
65
64
|
|
|
66
65
|
/** Register themes whose configuration needs to be loaded */
|
|
67
66
|
register(theme: MonacoTheme, pending: { [uri: string]: Promise<any> } = {}): Disposable {
|
|
@@ -143,6 +142,7 @@ export class MonacoThemingService {
|
|
|
143
142
|
this.monacoThemeRegistry.initializeDefaultThemes();
|
|
144
143
|
this.updateBodyUiTheme();
|
|
145
144
|
this.themeService.onDidColorThemeChange(() => this.updateBodyUiTheme());
|
|
145
|
+
this.themeService.onDidRetrieveTheme(theme => this.monacoThemeRegistry.setTheme(MonacoThemingService.toCssSelector(theme.id), theme.data));
|
|
146
146
|
this.restore();
|
|
147
147
|
}
|
|
148
148
|
|