@opensumi/ide-monaco 3.0.3 → 3.0.4-next-1716367246.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.
@@ -1,10 +1,22 @@
1
- import { ClientAppContribution, CommandContribution, ISchemaStore, KeyCode, KeybindingContribution, KeybindingRegistry } from '@opensumi/ide-core-browser';
1
+ import { ClientAppContribution, CommandContribution, ISchemaStore, KeyCode, KeybindingContribution, KeybindingRegistry, StaticResourceContribution, StaticResourceService } from '@opensumi/ide-core-browser';
2
2
  import { IMenuRegistry, MenuContribution } from '@opensumi/ide-core-browser/lib/menu/next';
3
3
  import { URI } from '@opensumi/ide-core-common';
4
4
  import { ISemanticTokenRegistry } from '@opensumi/ide-theme/lib/common/semantic-tokens-registry';
5
5
  import { EditorExtensionsRegistry } from './contrib/command';
6
6
  import { MonacoSnippetSuggestProvider } from './monaco-snippet-suggest-provider';
7
- export declare class MonacoClientContribution implements ClientAppContribution, CommandContribution, MenuContribution, KeybindingContribution {
7
+ export interface Environment {
8
+ /**
9
+ * A web worker factory.
10
+ * NOTE: If `getWorker` is defined, `getWorkerUrl` is not invoked.
11
+ */
12
+ getWorker?(workerId: string, label: string): Promise<Worker> | Worker;
13
+ /**
14
+ * Return the location for web worker scripts.
15
+ * NOTE: If `getWorker` is defined, `getWorkerUrl` is not invoked.
16
+ */
17
+ getWorkerUrl?(workerId: string, label: string): string;
18
+ }
19
+ export declare class MonacoClientContribution implements ClientAppContribution, CommandContribution, MenuContribution, KeybindingContribution, StaticResourceContribution {
8
20
  private readonly monacoContributionProvider;
9
21
  private readonly schemaContributionProvider;
10
22
  private readonly monacoCommandService;
@@ -24,9 +36,12 @@ export declare class MonacoClientContribution implements ClientAppContribution,
24
36
  private readonly logger;
25
37
  private readonly overrideServicesRegistry;
26
38
  private readonly keybindings;
39
+ private readonly staticResourceService;
40
+ private readonly appConfig;
27
41
  get editorExtensionsRegistry(): typeof EditorExtensionsRegistry;
28
42
  private toDisposeOnKeybindingChange;
29
43
  initialize(): Promise<void>;
44
+ registerMonacoEnvironment(): void;
30
45
  private registerOverrideServices;
31
46
  private patchMonacoInternalServices;
32
47
  private patchMonacoInternalMenus;
@@ -42,5 +57,6 @@ export declare class MonacoClientContribution implements ClientAppContribution,
42
57
  registerMenus(menuRegistry: IMenuRegistry): void;
43
58
  registerKeybindings(keybindings: KeybindingRegistry): void;
44
59
  protected interceptOpen(uri: URI): Promise<boolean>;
60
+ registerStaticResolver(service: StaticResourceService): void;
45
61
  }
46
62
  //# sourceMappingURL=monaco.contribution.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"monaco.contribution.d.ts","sourceRoot":"","sources":["../../src/browser/monaco.contribution.ts"],"names":[],"mappings":"AACA,OAAO,EACL,qBAAqB,EACrB,mBAAmB,EAQnB,YAAY,EAEZ,OAAO,EAEP,sBAAsB,EACtB,kBAAkB,EAOnB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAEL,aAAa,EAEb,gBAAgB,EAEjB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAIL,GAAG,EAIJ,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EACL,sBAAsB,EAGvB,MAAM,yDAAyD,CAAC;AA+BjE,OAAO,EACL,wBAAwB,EAKzB,MAAM,mBAAmB,CAAC;AAI3B,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AAKjF,qBACa,wBACX,YAAW,qBAAqB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,sBAAsB;IAG/F,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAA2C;IAGtF,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAA+C;IAG1F,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAwB;IAG7D,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAA0B;IAGhE,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAiB;IAGhD,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAwB;IAG7D,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA6B;IAG7D,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;IAG1C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAoB;IAGtD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAe;IAG3C,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAsB;IAG/D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAW;IAGpC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkB;IAGlD,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAE,sBAAsB,CAAC;IAGjE,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,4BAA4B,CAAC;IAGxE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAiB;IAG/C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAU;IAGjC,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAgC;IAGzE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqB;IAEjD,IAAI,wBAAwB,IAAI,OAAO,wBAAwB,CAE9D;IAED,OAAO,CAAC,2BAA2B,CAA8B;IAE3D,UAAU;IAuEhB,OAAO,CAAC,wBAAwB;IAyBhC,OAAO,CAAC,2BAA2B;IAWnC,OAAO,CAAC,wBAAwB;IAsChC,OAAO,CAAC,mBAAmB;IAK3B,OAAO,CAAC,iCAAiC;IAIzC,SAAS,CAAC,uBAAuB;IAsBjC,SAAS,CAAC,wBAAwB,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM;IAU5D,SAAS,CAAC,8BAA8B,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM;IAkB/D,SAAS,CAAC,4BAA4B;IAgBtC,SAAS,CAAC,2BAA2B,CAAC,QAAQ,EAAE,YAAY;IAO5D,OAAO,CAAC,uBAAuB;IAmD/B,gBAAgB;IAKhB,aAAa,CAAC,YAAY,EAAE,aAAa;IA0BzC,mBAAmB,CAAC,WAAW,EAAE,kBAAkB,GAAG,IAAI;cAwD1C,aAAa,CAAC,GAAG,EAAE,GAAG;CASvC"}
1
+ {"version":3,"file":"monaco.contribution.d.ts","sourceRoot":"","sources":["../../src/browser/monaco.contribution.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,9 @@ const monaco_snippet_suggest_provider_1 = require("./monaco-snippet-suggest-prov
29
29
  const monaco_keycode_map_1 = require("./monaco.keycode-map");
30
30
  const monaco_resolved_keybinding_1 = require("./monaco.resolved-keybinding");
31
31
  const telemetry_service_1 = require("./telemetry.service");
32
+ const pkgJson = require('../../package.json');
33
+ const packageName = pkgJson.name;
34
+ const packageVersion = pkgJson.version;
32
35
  let MonacoClientContribution = class MonacoClientContribution {
33
36
  constructor() {
34
37
  this.toDisposeOnKeybindingChange = new ide_core_common_1.DisposableCollection();
@@ -81,6 +84,8 @@ let MonacoClientContribution = class MonacoClientContribution {
81
84
  this.setSchemaPreferenceListener(this.schemaStore);
82
85
  // 监听 preferences 更新事件,同步更新 mime
83
86
  this.setPreferencesChangeListener();
87
+ // 注册 monaco environment
88
+ this.registerMonacoEnvironment();
84
89
  // 修改一些 Monaco 内置 Services 的行为
85
90
  this.patchMonacoInternalServices();
86
91
  // 注册/拦截 Monaco 内置的菜单
@@ -90,6 +95,20 @@ let MonacoClientContribution = class MonacoClientContribution {
90
95
  // 在快捷键被用户修改时,同步更新编辑器内的快捷键展示
91
96
  this.keybindings.onKeybindingsChanged(() => this.updateMonacoKeybindings());
92
97
  }
98
+ registerMonacoEnvironment() {
99
+ const defaultEnvironment = window.MonacoEnvironment || {};
100
+ window.MonacoEnvironment = Object.assign({ getWorkerUrl: (moduleId, label) => {
101
+ const result = this.staticResourceService.resolveStaticResource(ide_core_common_1.URI.from({
102
+ scheme: ide_core_common_1.Schemes.monaco,
103
+ path: 'worker',
104
+ query: JSON.stringify({ moduleId, label }),
105
+ }));
106
+ if (result.scheme === ide_core_common_1.Schemes.monaco) {
107
+ throw new Error(`Unsupported monaco worker: ${moduleId}:${label}`);
108
+ }
109
+ return (0, ide_core_browser_1.getWorkerBootstrapUrl)(result.toString(), `${moduleId}:${label}`);
110
+ } }, defaultEnvironment);
111
+ }
93
112
  registerOverrideServices() {
94
113
  const codeEditorService = this.overrideServicesRegistry.getRegisteredService(ide_core_browser_1.ServiceNames.CODE_EDITOR_SERVICE);
95
114
  // Monaco CommandService
@@ -348,6 +367,27 @@ let MonacoClientContribution = class MonacoClientContribution {
348
367
  return false;
349
368
  }
350
369
  }
370
+ registerStaticResolver(service) {
371
+ service.registerStaticResourceProvider({
372
+ scheme: ide_core_common_1.Schemes.monaco,
373
+ resolveStaticResource: (uri) => {
374
+ const path = uri.codeUri.path;
375
+ switch (path) {
376
+ case 'worker': {
377
+ const query = uri.query;
378
+ if (query) {
379
+ const { moduleId } = JSON.parse(query);
380
+ if (moduleId === 'workerMain.js') {
381
+ return ide_core_common_1.URI.parse((0, ide_core_browser_1.getCdnHref)(packageName, 'worker/editor.worker.bundle.js', packageVersion, this.appConfig.componentCDNType));
382
+ }
383
+ }
384
+ break;
385
+ }
386
+ }
387
+ return uri;
388
+ },
389
+ });
390
+ }
351
391
  };
352
392
  tslib_1.__decorate([
353
393
  (0, di_1.Autowired)(ide_core_browser_1.MonacoContribution),
@@ -425,8 +465,16 @@ tslib_1.__decorate([
425
465
  (0, di_1.Autowired)(ide_core_browser_1.KeybindingRegistry),
426
466
  tslib_1.__metadata("design:type", Object)
427
467
  ], MonacoClientContribution.prototype, "keybindings", void 0);
468
+ tslib_1.__decorate([
469
+ (0, di_1.Autowired)(ide_core_browser_1.StaticResourceService),
470
+ tslib_1.__metadata("design:type", ide_core_browser_1.StaticResourceService)
471
+ ], MonacoClientContribution.prototype, "staticResourceService", void 0);
472
+ tslib_1.__decorate([
473
+ (0, di_1.Autowired)(ide_core_browser_1.AppConfig),
474
+ tslib_1.__metadata("design:type", Object)
475
+ ], MonacoClientContribution.prototype, "appConfig", void 0);
428
476
  MonacoClientContribution = tslib_1.__decorate([
429
- (0, ide_core_browser_1.Domain)(ide_core_browser_1.ClientAppContribution, ide_core_browser_1.CommandContribution, next_1.MenuContribution, ide_core_browser_1.KeybindingContribution)
477
+ (0, ide_core_browser_1.Domain)(ide_core_browser_1.ClientAppContribution, ide_core_browser_1.CommandContribution, next_1.MenuContribution, ide_core_browser_1.KeybindingContribution, ide_core_browser_1.StaticResourceContribution)
430
478
  ], MonacoClientContribution);
431
479
  exports.MonacoClientContribution = MonacoClientContribution;
432
480
  function transformMonacoMenuItem(item) {
@@ -1 +1 @@
1
- {"version":3,"file":"monaco.contribution.js","sourceRoot":"","sources":["../../src/browser/monaco.contribution.ts"],"names":[],"mappings":";;;;AAAA,qCAAmE;AACnE,iEAsBoC;AACpC,mEAMkD;AAClD,+DAQmC;AACnC,mDAAmD;AACnD,+EAA2E;AAC3E,sGAIiE;AACjE,0GAG6E;AAE7E,6GAA0G;AAE1G,2GAAwG;AACxG,4HAAuI;AACvI,qGAGkF;AAClF,yHAI0F;AAC1F,kHAAuH;AACvH,2HAAqG;AACrG,0GAGmF;AACnF,mHAAwH;AACxH,8IAAwH;AAExH,sCAAmC;AACnC,+CAAsD;AAEtD,+CAM2B;AAC3B,mDAAoF;AAEpF,+CAA4C;AAC5C,uFAAiF;AACjF,6DAAoD;AACpD,6EAAwE;AACxE,2DAA6D;AAGtD,IAAM,wBAAwB,GAA9B,MAAM,wBAAwB;IAA9B;QAgEG,gCAA2B,GAAG,IAAI,sCAAoB,EAAE,CAAC;IAwXnE,CAAC;IA5XC,IAAI,wBAAwB;QAC1B,OAAO,kCAAwB,CAAC;IAClC,CAAC;IAID,KAAK,CAAC,UAAU;QACd,oCAAoC;QACpC,2CAA2C;QAC3C,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAEhC,0BAA0B;QAC1B,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,0BAA0B,CAAC,gBAAgB,EAAE,EAAE;YACxE,4EAA4E;YAC5E,IAAI,OAAO,CAAC,uBAAuB,EAAE;gBACnC,OAAO,CAAC,uBAAuB,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;aAChE;YAED,wDAAwD;YACxD,IAAI,OAAO,CAAC,uCAAuC,EAAE;gBACnD,OAAO,CAAC,uCAAuC,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;aACzF;YAED,gEAAgE;YAChE,IAAI,OAAO,CAAC,mCAAmC,EAAE;gBAC/C,OAAO,CAAC,mCAAmC,CACzC,CACE,EAAU,EACV,WAA+E,EAC/E,aAA+C,EAC/C,EAAE;oBACF,MAAM,YAAY,GAAG,IAAI,CAAC,wBAAwB,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBACpF,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;wBAC7B,IAAA,6CAA0B,EAAC,EAAE,EAAE,WAAW,EAAE,aAAa,IAAI,kDAA+B,CAAC,KAAK,CAAC,CAAC;qBACrG;yBAAM;wBACL,MAAM,OAAO,GAAG,IAAA,gCAAc,EAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;wBAChD,OAAO,CAAC,IAAI,GAAG,WAAW,CAAC;wBAC3B,OAAO,CAAC,aAAa,GAAG,aAAa,IAAI,kDAA+B,CAAC,KAAK,CAAC;qBAChF;gBACH,CAAC,CACF,CAAC;aACH;YAED,UAAU;YACV,IAAI,OAAO,CAAC,oCAAoC,EAAE;gBAChD,OAAO,CAAC,oCAAoC,CAAC,CAAC,YAAY,EAAE,EAAE;oBAC5D,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE;wBACtC,IAAA,2DAAmC,EAAC,WAAW,EAAE,IAAI,CAAC,CAAC;qBACxD;gBACH,CAAC,CAAC,CAAC;aACJ;SACF;QAED,0BAA0B;QAC1B,KAAK,MAAM,YAAY,IAAI,IAAI,CAAC,0BAA0B,CAAC,gBAAgB,EAAE,EAAE;YAC7E,YAAY,CAAC,cAAc,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;SAC5D;QAED,kBAAkB;QAClB,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAEnD,gCAAgC;QAChC,IAAI,CAAC,4BAA4B,EAAE,CAAC;QAEpC,8BAA8B;QAC9B,IAAI,CAAC,2BAA2B,EAAE,CAAC;QAEnC,qBAAqB;QACrB,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAEhC,+BAA+B;QAC/B,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAE3B,4BAA4B;QAC5B,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAC,CAAC;IAC9E,CAAC;IAEO,wBAAwB;QAC9B,MAAM,iBAAiB,GAAG,IAAI,CAAC,wBAAwB,CAAC,oBAAoB,CAC1E,+BAAY,CAAC,mBAAmB,CACjC,CAAC;QAEF,wBAAwB;QACxB,MAAM,wBAAwB,GAAG,IAAI,6CAAwB,CAAC,uCAAkB,CAAC,GAAG,CAAC,qCAAqB,CAAC,CAAC,CAAC;QAC7G,yEAAyE;QACzE,IAAI,CAAC,oBAAoB,CAAC,WAAW,CAAC,wBAAwB,CAAC,CAAC;QAChE,+BAA+B;QAC/B,IAAI,CAAC,wBAAwB,CAAC,uBAAuB,CAAC,+BAAY,CAAC,eAAe,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAE/G,uBAAuB;QACvB,MAAM,mBAAmB,GAAG,IAAI,6BAAa,CAAC,iBAAkB,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC7F,mBAAmB,CAAC,cAAc,CAAC;YACjC,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,qBAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;SAC3D,CAAC,CAAC;QACH,IAAI,CAAC,wBAAwB,CAAC,uBAAuB,CAAC,+BAAY,CAAC,cAAc,EAAE,mBAAmB,CAAC,CAAC;QAExG,IAAI,CAAC,wBAAwB,CAAC,uBAAuB,CACnD,+BAAY,CAAC,iBAAiB,EAC9B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,0CAAsB,CAAC,CAC1C,CAAC;IACJ,CAAC;IAEO,2BAA2B;QACjC,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAE/B,MAAM,iBAAiB,GAAG,IAAI,CAAC,wBAAwB,CAAC,oBAAoB,CAAC,+BAAY,CAAC,mBAAmB,CAAC,CAAC;QAC/G,8CAA8C;QAC9C,0DAA0D;QACzD,uCAAqC,CAAC,iBAAiB,GAAG;YACzD,GAAG,EAAE,GAAG,EAAE,CAAC,iBAAiB;SAC7B,CAAC;IACJ,CAAC;IAEO,wBAAwB;QAC9B,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,oBAAa,CAAkB,CAAC;QACvE,MAAM,kBAAkB,GAAG,aAAa,CAAC,YAAY,CAAC;QACtD,iBAAiB;QACjB,kBAAkB,CAAC,YAAY,CAAC,aAAa,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YACnF,MAAM,QAAQ,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC;YAC/C;;;;eAIG;YACH,YAAY,CAAC,gBAAgB,CAAC,aAAM,CAAC,aAAkC,EAAE,QAAQ,CAAC,CAAC;QACrF,CAAC,CAAC,CAAC;QAEH,qCAAqC;QACrC,kBAAkB,CAAC,YAAY,CAAC,aAAa,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YACvF,MAAM,QAAQ,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC;YAC/C,YAAY,CAAC,gBAAgB,CAAC,aAAa,CAAC,MAAM,CAAC,iBAAsC,EAAE,QAAQ,CAAC,CAAC;QACvG,CAAC,CAAC,CAAC;QAEH,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,cAAc,CAAC;QAC7D,kBAAkB,CAAC,cAAc,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;YACnD,MAAM,QAAQ,GAAG,IAAI,6BAAU,EAAE,CAAC;YAClC,QAAQ,CAAC,UAAU,CAAC,kBAAkB,CAAC,KAAK,CAAC,kBAAkB,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;YAClF;;;;eAIG;YACH,IAAI,MAAM,KAAK,aAAa,CAAC,MAAM,CAAC,aAAa,EAAE;gBACjD,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,gBAAgB,CAAC,aAAM,CAAC,aAAa,EAAE,uBAAuB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aACzG;iBAAM;gBACL,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,gBAAgB,CAAC,MAA2B,EAAE,uBAAuB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aAChH;YACD,OAAO,QAAQ,CAAC;QAClB,CAAC,CAAC;IACJ,CAAC;IAEO,mBAAmB;QACzB,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,eAAe,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1C,CAAC;IAEO,iCAAiC,CAAC,QAAyC;QACjF,OAAO,4BAAmB,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IAC5D,CAAC;IAES,uBAAuB;QAC/B,MAAM,yBAAyB,GAAG,iBAAiB,CAAC,mBAAmB,CAAC;QACxE,IAAI,yBAAyB,YAAY,gDAA2B,EAAE;YACpE,4DAA4D;YAC5D,MAAM,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,kCAAe,CAAC,IAAI,CAAC,CAAC;YACpF,IAAI,CAAC,2BAA2B,CAAC,OAAO,EAAE,CAAC;YAC3C,KAAK,MAAM,OAAO,IAAI,eAAe,EAAE;gBACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;gBAC7D,MAAM,IAAI,GAAG,IAAA,0BAAQ,EAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,2BAAc,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;gBAC9F,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;gBAChC,IAAI,CAAC,2BAA2B,CAAC,IAAI,CACnC,yBAAyB,CAAC,oBAAoB,CAC5C,OAAO,EACP,IAAI,CAAC,wBAAwB,CAAC,QAAQ,CAAC,EACvC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,EACpE,IAAI,CACL,CACF,CAAC;aACH;SACF;IACH,CAAC;IAES,wBAAwB,CAAC,KAAgB;QACjD,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,GAAG,KAAK,CAAC;QACtC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;YACpB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,4DAA4D,EAAE,KAAK,CAAC,CAAC;SACvF;QACD,MAAM,gBAAgB,GAAG,IAAI,CAAC,8BAA8B,CAAC,SAAS,CAAC,CAAC;QACxE,MAAM,iBAAiB,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,8BAA8B,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACjG,OAAO,eAAM,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAAC;IAClE,CAAC;IAES,8BAA8B,CAAC,IAAa;;QACpD,MAAM,OAAO,GAAG,CAAA,MAAA,IAAI,CAAC,GAAG,0CAAE,OAAO,MAAK,SAAS,CAAC,CAAC,CAAC,iCAAY,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACrF,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,CAAC,CAAC,GAAG,UAAU,CAAC;QAC3C,IAAI,IAAI,CAAC,GAAG,EAAE;YACZ,OAAO,IAAI,eAAM,CAAC,MAAM,CAAC,GAAG,CAAC;SAC9B;QACD,IAAI,IAAI,CAAC,KAAK,EAAE;YACd,OAAO,IAAI,eAAM,CAAC,MAAM,CAAC,KAAK,CAAC;SAChC;QACD,IAAI,IAAI,CAAC,IAAI,EAAE;YACb,OAAO,IAAI,eAAM,CAAC,MAAM,CAAC,OAAO,CAAC;SAClC;QACD,IAAI,IAAI,CAAC,IAAI,IAAI,uBAAK,EAAE;YACtB,OAAO,IAAI,eAAM,CAAC,MAAM,CAAC,OAAO,CAAC;SAClC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAES,4BAA4B;QACpC,IAAI,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,EAAE;YAC7C,IAAI,CAAC,CAAC,cAAc,KAAK,oBAAoB,EAAE;gBAC7C,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,0BAA0B,CAAC,gBAAgB,EAAE,EAAE;oBACxE,IAAI,OAAO,CAAC,oCAAoC,EAAE;wBAChD,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,oCAAoC,CAAC,CAAC,YAAY,EAAE,EAAE;4BAC7D,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE;gCACtC,IAAA,2DAAmC,EAAC,WAAW,EAAE,IAAI,CAAC,CAAC;6BACxD;wBACH,CAAC,CAAC,CAAC;qBACJ;iBACF;aACF;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAES,2BAA2B,CAAC,QAAsB;QAC1D,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,GAAG,EAAE;YACrC,MAAM,OAAO,GAAG,QAAQ,CAAC,iBAAiB,EAAE,CAAC;YAC7C,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,cAAc,EAAE,OAAO,EAAE,kCAAe,CAAC,OAAO,CAAC,CAAC;QAC/E,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,uBAAuB;QAC7B,MAAM,sBAAsB,GAAG,uCAAkB,CAAC,GAAG,CAAC,yCAAuB,CAAC,CAAC;QAC/E,MAAM,qBAAqB,GACzB,sBAAsB,CAAC,aAAa,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QACpE,MAAM,gCAAgC,GAAG,iCAAiC,CAAC;QAE3E,sBAAsB,CAAC,aAAa,GAAG,GAAG,EAAE;YAC1C,MAAM,KAAK,GAAG,qBAAqB,EAAE,CAAC;YACtC,IAAI,CAAC,CAAC,gCAAgC,IAAI,KAAK,CAAC,EAAE;gBAChD,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,gCAAgC,EAAE;oBAC7D,UAAU,EAAE,KAAK;oBACjB,YAAY,EAAE,KAAK;oBACnB,QAAQ,EAAE,KAAK;oBACf,KAAK,EAAE,IAAI;iBACZ,CAAC,CAAC;gBAEH,iGAAiG;gBACjG,+FAA+F;gBAC/F,KAAK,CAAC,qBAAqB,GAAG,CAC5B,gBAAwB,EACxB,SAAmB,EACnB,eAAuB,EACvB,UAAU,GAAG,IAAI,EACjB,cAAmB,EAAE,EACrB,EAAE;oBACF,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,IAAA,gDAAqB,EAAC,gBAAgB,EAAE,eAAe,CAAC,CAAC;oBACpF,MAAM,KAAK,GAA2B,KAAK,CAAC,WAAW,CAAC,CAAC,aAAa,CACpE,IAAI,EACJ,SAAS,EACT,QAAQ,EACR,UAAU,EACV,WAAW,CACZ,CAAC;oBACF,IAAI,CAAC,KAAK,EAAE;wBACV,OAAO,SAAS,CAAC;qBAClB;oBACD,OAAO;wBACL,UAAU,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,kBAAkB,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC;wBACzE,IAAI,EAAE,KAAK,CAAC,IAAI;wBAChB,SAAS,EAAE,KAAK,CAAC,SAAS;wBAC1B,MAAM,EAAE,KAAK,CAAC,MAAM;wBACpB,aAAa,EAAE,SAAS;qBACzB,CAAC;gBACJ,CAAC,CAAC;aACH;YACD,OAAO,KAAK,CAAC;QACf,CAAC,CAAC;QAEF,sBAAsB,CAAC,gBAAgB,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC;IAChF,CAAC;IAED,gBAAgB;QACd,uBAAuB;QACvB,IAAI,CAAC,oBAAoB,CAAC,qBAAqB,EAAE,CAAC;IACpD,CAAC;IAED,aAAa,CAAC,YAA2B;QACvC,kBAAkB;QAClB,KAAK,MAAM,KAAK,IAAI,yBAAW,CAAC,gBAAgB,EAAE;YAChD,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;gBACtC,MAAM,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBAC9D,IAAI,SAAS,EAAE;oBACb,YAAY,CAAC,gBAAgB,CAAC,aAAM,CAAC,oBAAoB,EAAE;wBACzD,OAAO,EAAE,SAAS;wBAClB,KAAK,EAAE,KAAK,CAAC,EAAE;wBACf,KAAK,EAAE,KAAK;qBACb,CAAC,CAAC;iBACJ;YACH,CAAC,CAAC,CAAC;SACJ;QAED,YAAY,CAAC,iBAAiB,CAAC,aAAM,CAAC,6BAA6B,EAAE;YACnE;gBACE,OAAO,EAAE;oBACP,EAAE,EAAE,kCAAe,CAAC,iBAAiB,CAAC,EAAE;oBACxC,KAAK,EAAE,kCAAe,CAAC,iBAAiB,CAAC,KAAM;iBAChD;gBACD,KAAK,EAAE,YAAY;aACpB;SACF,CAAC,CAAC;IACL,CAAC;IAED,mBAAmB,CAAC,WAA+B;;QACjD,MAAM,yBAAyB,GAAG,iBAAiB,CAAC,mBAAmB,CAAC;QACxE,MAAM,WAAW,GAAG,qCAAiB,CAAC,KAAK,CAAC;QAC5C,MAAM,YAAY,GAAG,yBAAyB,CAAC,qBAAqB,EAAE,CAAC;QACvE,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE;YAC/B,IACE,IAAI,CAAC,OAAO,KAAK,2BAAiB,CAAC,IAAI;gBACvC,IAAI,CAAC,OAAO,KAAK,2BAAiB,CAAC,IAAI;gBACvC,IAAI,CAAC,OAAO,KAAK,2BAAiB,CAAC,UAAU,EAC7C;gBACA,oBAAoB;gBACpB,SAAS;aACV;YACD,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAClE,IAAI,OAAO,IAAI,IAAI,CAAC,UAAU,EAAE;gBAC9B,MAAM,aAAa,GAAG,qDAAwB,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBAC7E,qDAAqD;gBACrD,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;gBACrB,IAAI,CAAC,IAAI,EAAE;oBACT,IAAI,GAAG,WAAW,CAAC;iBACpB;qBAAM;oBACL,2CAA2C;oBAC3C,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE;wBAC1C,mCAAmC;wBACnC,mCAAmC;wBACnC,qCAAqC;wBACrC,8CAA8C;wBAC9C,IAAI,IAAI,CAAC,IAAI,KAAK,+BAAkB,CAAC,EAAE,EAAE;4BACvC,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC;4BACxB,IAAI,GAAG,2BAAc,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,2BAAc,CAAC,GAAG,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;yBACzF;6BAAM;4BACL,IAAI,GAAG,2BAAc,CAAC,GAAG,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;yBAC9C;qBACF;iBACF;gBACD,MAAM,UAAU,GAAG;oBACjB,OAAO;oBACP,IAAI,EAAE,IAAI,CAAC,WAAW;oBACtB,UAAU,EAAE,aAAa;oBACzB,IAAI,EAAE,MAAA,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC,mCAAI,SAAS;oBAC7C,qCAAqC;oBACrC,QAAQ,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC;iBACxE,CAAC;gBACF,+BAA+B;gBAC/B,yBAAyB,CAAC,sBAAsB,CAAC;oBAC/C,EAAE,EAAE,IAAI,OAAO,EAAE;oBACjB,MAAM,EAAE,IAAI,CAAC,OAAO;oBACpB,OAAO,EAAE,IAAI,CAAC,wBAAwB,CAAC,8BAAW,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;oBACxE,IAAI;iBACL,CAAC,CAAC;gBACH,gCAAgC;gBAChC,WAAW,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;aAC5C;SACF;IACH,CAAC;IAES,KAAK,CAAC,aAAa,CAAC,GAAQ;QACpC,IAAI;YACF,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACnC,OAAO,IAAI,CAAC;SACb;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACrB,OAAO,KAAK,CAAC;SACd;IACH,CAAC;CACF,CAAA;AArbC;IAAC,IAAA,cAAS,EAAC,qCAAkB,CAAC;;4EACwD;AAEtF;IAAC,IAAA,cAAS,EAAC,yCAAsB,CAAC;;4EACwD;AAE1F;IAAC,IAAA,cAAS,EAAC,8BAAoB,CAAC;;sEAC6B;AAE7D;IAAC,IAAA,cAAS,EAAC,iCAAuB,CAAC;;uEAC6B;AAEhE;IAAC,IAAA,cAAS,EAAC,gCAAc,CAAC;;gEACsB;AAEhD;IAAC,IAAA,cAAS,EAAC,+BAAqB,CAAC;;sEAC4B;AAE7D;IAAC,IAAA,cAAS,EAAC,8BAAkB,CAAC;;iEAC+B;AAE7D;IAAC,IAAA,cAAS,EAAC,wBAAY,CAAC;sCACM,0BAAW;6DAAC;AAE1C;IAAC,IAAA,cAAS,EAAC,oCAAiB,CAAC;;mEACyB;AAEtD;IAAC,IAAA,cAAS,EAAC,+BAAY,CAAC;;6DACmB;AAE3C;IAAC,IAAA,cAAS,EAAC,sCAAmB,CAAC;;0EACgC;AAE/D;IAAC,IAAA,cAAS,EAAC,mBAAc,CAAC;sCACC,aAAQ;0DAAC;AAEpC;IAAC,IAAA,cAAS,EAAC,kCAAe,CAAC;;iEACuB;AAElD;IAAC,IAAA,cAAS,EAAC,iDAAsB,CAAC;;uEAC+B;AAEjE;IAAC,IAAA,cAAS,EAAC,8DAA4B,CAAC;sCACG,8DAA4B;wEAAC;AAExE;IAAC,IAAA,cAAS,EAAC,iCAAc,CAAC;;+DACqB;AAE/C;IAAC,IAAA,cAAS,EAAC,yBAAO,CAAC;;wDACc;AAEjC;IAAC,IAAA,cAAS,EAAC,gDAA6B,CAAC;sCACE,gDAA6B;0EAAC;AAEzE;IAAC,IAAA,cAAS,EAAC,qCAAkB,CAAC;;6DACmB;AA1DtC,wBAAwB;IADpC,IAAA,yBAAM,EAAC,wCAAqB,EAAE,sCAAmB,EAAE,uBAAgB,EAAE,yCAAsB,CAAC;GAChF,wBAAwB,CAwbpC;AAxbY,4DAAwB;AA0brC,SAAS,uBAAuB,CAAC,IAA0D;IACzF,IAAI,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE;QACnC,OAAO;YACL,OAAO,EAAE;gBACP,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE;gBACnB,KAAK,EAAE,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK;aAC9F;YACD,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,CAAC;KACH;IAED,OAAO;QACL,OAAO,EAAE,IAAI,CAAC,OAA4B;QAC1C,KAAK,EAAE,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK;QACrE,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,KAAK,EAAE,IAAI,CAAC,KAAK;KAClB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"monaco.contribution.js","sourceRoot":"","sources":["../../src/browser/monaco.contribution.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,27 +1,30 @@
1
1
  {
2
2
  "name": "@opensumi/ide-monaco",
3
- "version": "3.0.3",
3
+ "version": "3.0.4-next-1716367246.0",
4
4
  "files": [
5
5
  "lib",
6
- "src"
6
+ "src",
7
+ "worker"
7
8
  ],
8
9
  "license": "MIT",
9
10
  "main": "lib/index.js",
10
11
  "typings": "lib/index.d.ts",
11
12
  "scripts": {
12
- "prepublishOnly": "yarn run build",
13
- "build": "tsc --build ../../configs/ts/references/tsconfig.monaco.json"
13
+ "prepublishOnly": "yarn build",
14
+ "build": "tsc --build ../../configs/ts/references/tsconfig.monaco.json && yarn build:worker",
15
+ "build:worker": "../../node_modules/.bin/webpack --config webpack.config.js",
16
+ "clean": "rimraf worker"
14
17
  },
15
18
  "dependencies": {
16
- "@opensumi/ide-core-browser": "3.0.3",
17
- "@opensumi/ide-core-common": "3.0.3",
18
- "@opensumi/ide-theme": "3.0.3",
19
+ "@opensumi/ide-core-browser": "3.0.4-next-1716367246.0",
20
+ "@opensumi/ide-core-common": "3.0.4-next-1716367246.0",
21
+ "@opensumi/ide-theme": "3.0.4-next-1716367246.0",
19
22
  "@opensumi/monaco-editor-core": "0.47.0-patch.15"
20
23
  },
21
24
  "devDependencies": {
22
- "@opensumi/ide-dev-tool": "3.0.3",
23
- "@opensumi/ide-file-service": "3.0.3",
24
- "@opensumi/ide-workspace": "3.0.3"
25
+ "@opensumi/ide-dev-tool": "3.0.4-next-1716367246.0",
26
+ "@opensumi/ide-file-service": "3.0.4-next-1716367246.0",
27
+ "@opensumi/ide-workspace": "3.0.4-next-1716367246.0"
25
28
  },
26
- "gitHead": "f6c5bd20bf82f28fb3e226eff23fbc772dcae5d2"
29
+ "gitHead": "60062ab4a570c223a849d6a85faafebea0313abb"
27
30
  }
@@ -1,5 +1,6 @@
1
1
  import { Autowired, INJECTOR_TOKEN, Injector } from '@opensumi/di';
2
2
  import {
3
+ AppConfig,
3
4
  ClientAppContribution,
4
5
  CommandContribution,
5
6
  ContributionProvider,
@@ -21,6 +22,10 @@ import {
21
22
  PreferenceScope,
22
23
  PreferenceService,
23
24
  ServiceNames,
25
+ StaticResourceContribution,
26
+ StaticResourceService,
27
+ getCdnHref,
28
+ getWorkerBootstrapUrl,
24
29
  } from '@opensumi/ide-core-browser';
25
30
  import {
26
31
  IMenuItem,
@@ -33,6 +38,7 @@ import {
33
38
  CommandService,
34
39
  DisposableCollection,
35
40
  ILogger,
41
+ Schemes,
36
42
  URI,
37
43
  isOSX,
38
44
  isString,
@@ -90,9 +96,42 @@ import { KEY_CODE_MAP } from './monaco.keycode-map';
90
96
  import { MonacoResolvedKeybinding } from './monaco.resolved-keybinding';
91
97
  import { MonacoTelemetryService } from './telemetry.service';
92
98
 
93
- @Domain(ClientAppContribution, CommandContribution, MenuContribution, KeybindingContribution)
99
+ const pkgJson = require('../../package.json');
100
+
101
+ export interface Environment {
102
+ /**
103
+ * A web worker factory.
104
+ * NOTE: If `getWorker` is defined, `getWorkerUrl` is not invoked.
105
+ */
106
+ getWorker?(workerId: string, label: string): Promise<Worker> | Worker;
107
+ /**
108
+ * Return the location for web worker scripts.
109
+ * NOTE: If `getWorker` is defined, `getWorkerUrl` is not invoked.
110
+ */
111
+ getWorkerUrl?(workerId: string, label: string): string;
112
+ }
113
+
114
+ interface Window {
115
+ MonacoEnvironment?: Environment | undefined;
116
+ }
117
+
118
+ const packageName = pkgJson.name;
119
+ const packageVersion = pkgJson.version;
120
+
121
+ @Domain(
122
+ ClientAppContribution,
123
+ CommandContribution,
124
+ MenuContribution,
125
+ KeybindingContribution,
126
+ StaticResourceContribution,
127
+ )
94
128
  export class MonacoClientContribution
95
- implements ClientAppContribution, CommandContribution, MenuContribution, KeybindingContribution
129
+ implements
130
+ ClientAppContribution,
131
+ CommandContribution,
132
+ MenuContribution,
133
+ KeybindingContribution,
134
+ StaticResourceContribution
96
135
  {
97
136
  @Autowired(MonacoContribution)
98
137
  private readonly monacoContributionProvider: ContributionProvider<MonacoContribution>;
@@ -151,6 +190,12 @@ export class MonacoClientContribution
151
190
  @Autowired(KeybindingRegistry)
152
191
  private readonly keybindings: KeybindingRegistry;
153
192
 
193
+ @Autowired(StaticResourceService)
194
+ private readonly staticResourceService: StaticResourceService;
195
+
196
+ @Autowired(AppConfig)
197
+ private readonly appConfig: AppConfig;
198
+
154
199
  get editorExtensionsRegistry(): typeof EditorExtensionsRegistry {
155
200
  return EditorExtensionsRegistry;
156
201
  }
@@ -215,6 +260,9 @@ export class MonacoClientContribution
215
260
  // 监听 preferences 更新事件,同步更新 mime
216
261
  this.setPreferencesChangeListener();
217
262
 
263
+ // 注册 monaco environment
264
+ this.registerMonacoEnvironment();
265
+
218
266
  // 修改一些 Monaco 内置 Services 的行为
219
267
  this.patchMonacoInternalServices();
220
268
 
@@ -228,6 +276,28 @@ export class MonacoClientContribution
228
276
  this.keybindings.onKeybindingsChanged(() => this.updateMonacoKeybindings());
229
277
  }
230
278
 
279
+ registerMonacoEnvironment() {
280
+ const defaultEnvironment = (window as Window).MonacoEnvironment || ({} as Environment);
281
+ (window as Window).MonacoEnvironment = {
282
+ getWorkerUrl: (moduleId, label) => {
283
+ const result = this.staticResourceService.resolveStaticResource(
284
+ URI.from({
285
+ scheme: Schemes.monaco,
286
+ path: 'worker',
287
+ query: JSON.stringify({ moduleId, label }),
288
+ }),
289
+ );
290
+
291
+ if (result.scheme === Schemes.monaco) {
292
+ throw new Error(`Unsupported monaco worker: ${moduleId}:${label}`);
293
+ }
294
+
295
+ return getWorkerBootstrapUrl(result.toString(), `${moduleId}:${label}`);
296
+ },
297
+ ...defaultEnvironment,
298
+ };
299
+ }
300
+
231
301
  private registerOverrideServices() {
232
302
  const codeEditorService = this.overrideServicesRegistry.getRegisteredService<AbstractCodeEditorService>(
233
303
  ServiceNames.CODE_EDITOR_SERVICE,
@@ -531,6 +601,37 @@ export class MonacoClientContribution
531
601
  return false;
532
602
  }
533
603
  }
604
+
605
+ registerStaticResolver(service: StaticResourceService): void {
606
+ service.registerStaticResourceProvider({
607
+ scheme: Schemes.monaco,
608
+ resolveStaticResource: (uri) => {
609
+ const path = uri.codeUri.path;
610
+
611
+ switch (path) {
612
+ case 'worker': {
613
+ const query = uri.query;
614
+ if (query) {
615
+ const { moduleId } = JSON.parse(query);
616
+ if (moduleId === 'workerMain.js') {
617
+ return URI.parse(
618
+ getCdnHref(
619
+ packageName,
620
+ 'worker/editor.worker.bundle.js',
621
+ packageVersion,
622
+ this.appConfig.componentCDNType,
623
+ ),
624
+ );
625
+ }
626
+ }
627
+ break;
628
+ }
629
+ }
630
+
631
+ return uri;
632
+ },
633
+ });
634
+ }
534
635
  }
535
636
 
536
637
  function transformMonacoMenuItem(item: monacoActions.IMenuItem | monacoActions.ISubmenuItem): IMenuItem | ISubmenuItem {