@opensumi/ide-monaco 3.8.3-next-1746629393.0 → 3.8.3-next-1746753590.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.
@@ -0,0 +1,10 @@
1
+ import { Uri } from '@opensumi/ide-core-browser';
2
+ import { IResourceLabelOptions } from '@opensumi/monaco-editor-core/esm/vs/editor/browser/widget/multiDiffEditor/workbenchUIElementFactory';
3
+ export declare class ResourceLabel {
4
+ private readonly element;
5
+ constructor(element: HTMLElement);
6
+ setUri(uri: Uri, options?: IResourceLabelOptions): void;
7
+ private renderFile;
8
+ clear(): void;
9
+ }
10
+ //# sourceMappingURL=resource-label.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource-label.d.ts","sourceRoot":"","sources":["../../../../src/browser/contrib/multi-diff-editor/resource-label.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,GAAG,EAAwB,MAAM,4BAA4B,CAAC;AAC5E,OAAO,EAAE,qBAAqB,EAAE,MAAM,qGAAqG,CAAC;AAI5I,qBAAa,aAAa;IACZ,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,WAAW;IAEjD,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,qBAAqB;IAIhD,OAAO,CAAC,UAAU;IAOlB,KAAK;CAGN"}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ResourceLabel = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const ide_core_browser_1 = require("@opensumi/ide-core-browser");
6
+ const resource_label_module_less_1 = tslib_1.__importDefault(require("./resource-label.module.less"));
7
+ class ResourceLabel {
8
+ constructor(element) {
9
+ this.element = element;
10
+ }
11
+ setUri(uri, options) {
12
+ this.renderFile(ide_core_browser_1.URI.from(uri), options);
13
+ }
14
+ renderFile(uri, options) {
15
+ const icon = (0, ide_core_browser_1.getResourceIconClass)(uri);
16
+ this.element.innerHTML = `<span class="${resource_label_module_less_1.default.resourceLabel}${(options === null || options === void 0 ? void 0 : options.strikethrough) ? ' strikethrough' : ''}"><span class="${icon.iconClass}"></span>${uri.displayName}</span>`;
17
+ }
18
+ clear() {
19
+ this.element.innerHTML = '';
20
+ }
21
+ }
22
+ exports.ResourceLabel = ResourceLabel;
23
+ //# sourceMappingURL=resource-label.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource-label.js","sourceRoot":"","sources":["../../../../src/browser/contrib/multi-diff-editor/resource-label.ts"],"names":[],"mappings":";;;;AAAA,iEAA4E;AAG5E,sGAAkD;AAElD,MAAa,aAAa;IACxB,YAA6B,OAAoB;QAApB,YAAO,GAAP,OAAO,CAAa;IAAG,CAAC;IAErD,MAAM,CAAC,GAAQ,EAAE,OAA+B;QAC9C,IAAI,CAAC,UAAU,CAAC,sBAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;IAC1C,CAAC;IAEO,UAAU,CAAC,GAAQ,EAAE,OAA+B;QAC1D,MAAM,IAAI,GAAG,IAAA,uCAAoB,EAAC,GAAG,CAAC,CAAC;QACvC,IAAI,CAAC,OAAO,CAAC,SAAS,GAAG,gBAAgB,oCAAM,CAAC,aAAa,GAC3D,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,aAAa,EAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAC9C,kBAAkB,IAAI,CAAC,SAAS,YAAY,GAAG,CAAC,WAAW,SAAS,CAAC;IACvE,CAAC;IAED,KAAK;QACH,IAAI,CAAC,OAAO,CAAC,SAAS,GAAG,EAAE,CAAC;IAC9B,CAAC;CACF;AAjBD,sCAiBC"}
@@ -0,0 +1,5 @@
1
+ .resourceLabel {
2
+ display: flex;
3
+ align-items: center;
4
+ gap: 4px;
5
+ }
@@ -5,7 +5,7 @@ import { BareFontInfo, FontInfo } from '@opensumi/monaco-editor-core/esm/vs/edit
5
5
  import { CursorChangeReason } from '@opensumi/monaco-editor-core/esm/vs/editor/common/cursorEvents';
6
6
  import { ScrollType } from '@opensumi/monaco-editor-core/esm/vs/editor/common/editorCommon';
7
7
  import { DefaultEndOfLine, EndOfLinePreference, EndOfLineSequence, FindMatch, ITextModelUpdateOptions, MinimapPosition, OverviewRulerLane, TextModelResolvedOptions, TrackedRangeStickiness } from '@opensumi/monaco-editor-core/esm/vs/editor/common/model';
8
- import { colorize, colorizeElement, colorizeModelLine, create, createDiffEditor, createModel, createWebWorker, defineTheme, getModel, getModelMarkers, getModels, onDidChangeModelLanguage, onDidCreateEditor, onDidCreateModel, onWillDisposeModel, remeasureFonts, setModelLanguage, setModelMarkers, setTheme, tokenize } from '@opensumi/monaco-editor-core/esm/vs/editor/standalone/browser/standaloneEditor';
8
+ import { colorize, colorizeElement, colorizeModelLine, create, createDiffEditor, createModel, createMultiFileDiffEditor, createWebWorker, defineTheme, getModel, getModelMarkers, getModels, onDidChangeModelLanguage, onDidCreateEditor, onDidCreateModel, onWillDisposeModel, remeasureFonts, setModelLanguage, setModelMarkers, setTheme, tokenize } from '@opensumi/monaco-editor-core/esm/vs/editor/standalone/browser/standaloneEditor';
9
9
  import { AccessibilitySupport } from '@opensumi/monaco-editor-core/esm/vs/platform/accessibility/common/accessibility';
10
10
  import { IMarkerData } from '@opensumi/monaco-editor-core/esm/vs/platform/markers/common/markers';
11
11
  import type { IDecorationOptions, IModelDecorationOptions, IModelDeltaDecoration } from '@opensumi/monaco-editor-core/esm/vs/editor/common/model';
@@ -13,6 +13,7 @@ export declare function createMonacoEditorApi(): Readonly<{
13
13
  create: typeof create;
14
14
  onDidCreateEditor: typeof onDidCreateEditor;
15
15
  createDiffEditor: typeof createDiffEditor;
16
+ createMultiFileDiffEditor: typeof createMultiFileDiffEditor;
16
17
  createModel: typeof createModel;
17
18
  setModelLanguage: typeof setModelLanguage;
18
19
  setModelMarkers: typeof setModelMarkers;
@@ -1 +1 @@
1
- {"version":3,"file":"editor.d.ts","sourceRoot":"","sources":["../../../src/browser/monaco-api/editor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,4DAA4D,CAAC;AACjG,OAAO,EACL,+BAA+B,EAC/B,WAAW,EACX,eAAe,EACf,+BAA+B,EAChC,MAAM,kEAAkE,CAAC;AAC1E,OAAO,EACL,yBAAyB,EACzB,wBAAwB,EACxB,YAAY,EAEZ,kBAAkB,EAClB,cAAc,EACd,qBAAqB,EACrB,aAAa,EACb,6BAA6B,EAC7B,qBAAqB,EACrB,cAAc,EACf,MAAM,wEAAwE,CAAC;AAChF,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,mEAAmE,CAAC;AAC3G,OAAO,EAAE,kBAAkB,EAAE,MAAM,gEAAgE,CAAC;AACpG,OAAO,EAAc,UAAU,EAAE,MAAM,gEAAgE,CAAC;AACxG,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,iBAAiB,EACjB,SAAS,EACT,uBAAuB,EACvB,eAAe,EACf,iBAAiB,EACjB,wBAAwB,EACxB,sBAAsB,EACvB,MAAM,yDAAyD,CAAC;AACjE,OAAO,EACL,QAAQ,EACR,eAAe,EACf,iBAAiB,EACjB,MAAM,EACN,gBAAgB,EAChB,WAAW,EACX,eAAe,EACf,WAAW,EACX,QAAQ,EACR,eAAe,EACf,SAAS,EACT,wBAAwB,EACxB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,QAAQ,EACR,QAAQ,EACT,MAAM,gFAAgF,CAAC;AACxF,OAAO,EAAE,oBAAoB,EAAE,MAAM,iFAAiF,CAAC;AACvH,OAAO,EAAE,WAAW,EAAE,MAAM,qEAAqE,CAAC;AAElG,OAAO,KAAK,EACV,kBAAkB,EAClB,uBAAuB,EACvB,qBAAqB,EACtB,MAAM,yDAAyD,CAAC;AAEjE,wBAAgB,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0IAuEsm9D,aAAa,iCAAiC;gIAAuD,aAAa,uBAAuB;6HAAmE,aAAa,oBAAoB;8HAAkE,aAAa,qBAAqB;kHAAwC,aAAa,SAAS;qHAA2C,aAAa,YAAY;6IAAoE,aAAa,oCAAoC;4HAAmD,aAAa,mBAAmB;4HAAuG,aAAa,mBAAmB;0HAAqG,aAAa,iBAAiB;4HAAuE,aAAa,mBAAmB;0HAAqE,aAAa,iBAAiB;mHAA8F,aAAa,UAAU;wHAAgE,aAAa,eAAe;qHAA4C,aAAa,YAAY;gIAAmG,aAAa,uBAAuB;0HAA6F,aAAa,MAAM;uHAAyE,aAAa,cAAc;iHAAwC,aAAa,QAAQ;2HAAkD,aAAa,kBAAkB;yHAA+C,aAAa,gBAAgB;wHAA8C,aAAa,eAAe;kIAAyD,aAAa,0BAA0B;6HAAgF,aAAa,oBAAoB;wHAA8C,aAAa,eAAe;iHAAwC,aAAa,QAAQ;oHAA8E,aAAa,WAAW;mIAA0D,aAAa,0BAA0B;uHAA8C,aAAa,cAAc;mIAAgF,aAAa,0BAA0B;oHAA6D,aAAa,WAAW;4HAAiE,aAAa,mBAAmB;+HAAoE,aAAa,sBAAsB;oIAA0D,aAAa,2BAA2B;oHAAqD,aAAa,WAAW;4HAAkD,aAAa,mBAAmB;sIAA6D,aAAa,6BAA6B;oHAA2C,aAAa,WAAW;oHAA2C,aAAa,WAAW;gIAAuD,aAAa,uBAAuB;uHAA8C,aAAa,cAAc;uIAAiG,aAAa,8BAA8B;qHAA4C,aAAa,YAAY;oIAAkG,aAAa,2BAA2B;wIAAoE,aAAa,+BAA+B;6HAAmE,aAAa,oBAAoB;8HAAoD,aAAa,qBAAqB;6GAAmC,aAAa,IAAI;6HAAmF,aAAa,oBAAoB;gHAAuC,aAAa,OAAO;wHAA+C,aAAa,eAAe;yHAA+D,aAAa,gBAAgB;gIAAuD,aAAa,uBAAuB;8HAAqD,aAAa,qBAAqB;oIAA0D,aAAa,2BAA2B;mHAA0C,aAAa,UAAU;iHAAuC,aAAa,QAAQ;uHAA+C,aAAa,aAAa;iHAAuC,aAAa,QAAQ;mHAAyC,aAAa,UAAU;uHAA6C,aAAa,cAAc;sHAA4C,aAAa,aAAa;qHAA4C,aAAa,YAAY;oHAA2C,aAAa,WAAW;qHAA4C,aAAa,YAAY;kIAA0F,aAAa,yBAAyB;8GAAqC,aAAa,KAAK;qHAA4E,aAAa,YAAY;sHAA6C,aAAa,aAAa;kHAAwC,aAAa,SAAS;6HAAwF,aAAa,oBAAoB;mHAAyC,aAAa,UAAU;oHAA0C,aAAa,WAAW;4HAAkF,aAAa,mBAAmB;sHAA4C,aAAa,aAAa;8GAAqC,aAAa,KAAK;sHAA6C,aAAa,aAAa;gHAA2D,aAAa,OAAO;mHAA4E,aAAa,UAAU;oIAA+E,aAAa,2BAA2B;uHAA6C,aAAa,cAAc;oIAA2D,aAAa,2BAA2B;4HAAmD,aAAa,mBAAmB;yHAAyE,aAAa,gBAAgB;yHAA0D,aAAa,gBAAgB;6HAAmD,aAAa,oBAAoB;kIAAoF,aAAa,yBAAyB;wHAA8C,aAAa,eAAe;4HAAmD,aAAa,mBAAmB;2HAAkD,aAAa,kBAAkB;gHAAsC,aAAa,OAAO;gHAAyE,aAAa,OAAO;uHAA0E,aAAa,cAAc;+HAA8F,aAAa,sBAAsB;oHAAqD,aAAa,WAAW;kIAAoE,aAAa,yBAAyB;yHAAgD,aAAa,gBAAgB;8HAA6E,aAAa,qBAAqB;iHAAuC,aAAa,QAAQ;wHAA+C,aAAa,eAAe;qHAAgE,aAAa,YAAY;gIAAuD,aAAa,uBAAuB;2HAAkD,aAAa,kBAAkB;4HAAmE,aAAa,mBAAmB;yIAA2F,aAAa,gCAAgC;oIAA2D,aAAa,2BAA2B;yHAAkE,aAAa,gBAAgB;qIAA2G,aAAa,4BAA4B;yHAA+C,aAAa,gBAAgB;+GAAsC,aAAa,MAAM;kHAAgD,aAAa,SAAS;+HAA6E,aAAa,sBAAsB;6HAAmD,aAAa,oBAAoB;8HAAqD,aAAa,qBAAqB;2HAAkD,aAAa,kBAAkB;2HAAkD,aAAa,kBAAkB;4HAAmD,aAAa,mBAAmB;4HAAmD,aAAa,mBAAmB;mHAAmE,aAAa,UAAU;uHAA8C,aAAa,cAAc;mHAA0C,aAAa,UAAU;2HAAuF,aAAa,kBAAkB;oHAAwE,aAAa,WAAW;wHAA+E,aAAa,eAAe;+HAAsD,aAAa,sBAAsB;gHAAsC,aAAa,OAAO;sHAAyE,aAAa,aAAa;;;;;;;;;;;;;;;;;;8IAAgH,aAAa,qCAAqC;wHAA+C,aAAa,eAAe;0HAAgD,aAAa,iBAAiB;mIAAyD,aAAa,0BAA0B;yHAAgD,aAAa,gBAAgB;sHAAuF,aAAa,aAAa;iHAA8D,aAAa,QAAQ;yHAA+C,aAAa,mBAAmB;+HAA2F,aAAa,sBAAsB;qHAA8D,aAAa,YAAY;oHAA2C,aAAa,WAAW;kHAAyC,aAAa,SAAS;6HAAiE,aAAa,oBAAoB;uHAA+C,aAAa,cAAc;iHAAuC,aAAa,QAAQ;qIAAgG,aAAa,4BAA4B;sIAA4D,aAAa,6BAA6B;uHAA6C,aAAa,cAAc;0HAAgD,aAAa,iBAAiB;0HAAkE,aAAa,iBAAiB;6HAAqE,aAAa,oBAAoB;wHAA6D,aAAa,eAAe;+HAAqD,aAAa,sBAAsB;mHAA8D,aAAa,UAAU;qHAA2C,aAAa,YAAY;mHAA0C,aAAa,UAAU;qHAAqD,aAAa,YAAY;uHAAyD,aAAa,cAAc;yHAAuD,aAAa,gBAAgB;;GAZ1l4E;AAED,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,WAAW,EACX,uBAAuB,EACvB,qBAAqB,EACrB,uBAAuB,GACxB,CAAC"}
1
+ {"version":3,"file":"editor.d.ts","sourceRoot":"","sources":["../../../src/browser/monaco-api/editor.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,7 @@ function createMonacoEditorApi() {
19
19
  create: standaloneEditor_1.create,
20
20
  onDidCreateEditor: standaloneEditor_1.onDidCreateEditor,
21
21
  createDiffEditor: standaloneEditor_1.createDiffEditor,
22
+ createMultiFileDiffEditor: standaloneEditor_1.createMultiFileDiffEditor,
22
23
  createModel: standaloneEditor_1.createModel,
23
24
  setModelLanguage: standaloneEditor_1.setModelLanguage,
24
25
  setModelMarkers: standaloneEditor_1.setModelMarkers,
@@ -1 +1 @@
1
- {"version":3,"file":"editor.js","sourceRoot":"","sources":["../../../src/browser/monaco-api/editor.ts"],"names":[],"mappings":";;;AAiEA,sDA2DC;AA5HD,2FAAiG;AACjG,oGAK0E;AAC1E,0GAYgF;AAChF,gGAA2G;AAC3G,iGAAoG;AACpG,iGAAwG;AACxG,mFAUiE;AACjE,qHAqBwF;AACxF,mHAAuH;AACvH,iGAAkG;AA0EhG,4FA1EO,qBAAW,OA0EP;AAlEb,SAAgB,qBAAqB;IACnC,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,qBAAqB;QACrB,MAAM,EAAN,yBAAM;QACN,iBAAiB,EAAjB,oCAAiB;QACjB,gBAAgB,EAAhB,mCAAgB;QAEhB,WAAW,EAAX,8BAAW;QACX,gBAAgB,EAAhB,mCAAgB;QAChB,eAAe,EAAf,kCAAe;QACf,eAAe,EAAf,kCAAe;QACf,SAAS,EAAT,4BAAS;QACT,QAAQ,EAAR,2BAAQ;QACR,gBAAgB,EAAhB,mCAAgB;QAChB,kBAAkB,EAAlB,qCAAkB;QAClB,wBAAwB,EAAxB,2CAAwB;QACxB,eAAe,EAAf,kCAAe;QAEf,eAAe,EAAf,kCAAe;QACf,QAAQ,EAAR,2BAAQ;QACR,iBAAiB,EAAjB,oCAAiB;QACjB,QAAQ,EAAR,2BAAQ;QACR,WAAW,EAAX,8BAAW;QACX,QAAQ,EAAR,2BAAQ;QACR,cAAc,EAAd,iCAAc;QAEd,QAAQ;QACR,oBAAoB,EAApB,oCAAoB;QACpB,+BAA+B,EAA/B,+CAA+B;QAC/B,kBAAkB,EAAlB,iCAAkB;QAClB,gBAAgB,EAAhB,wBAAgB;QAChB,wBAAwB,EAAxB,wCAAwB;QACxB,YAAY,EAAZ,4BAAY;QACZ,mBAAmB,EAAnB,2BAAmB;QACnB,iBAAiB,EAAjB,yBAAiB;QACjB,eAAe,EAAf,uBAAe;QACf,eAAe,EAAf,+BAAe;QACf,+BAA+B,EAA/B,+CAA+B;QAC/B,iBAAiB,EAAjB,yBAAiB;QACjB,qBAAqB,EAArB,qCAAqB;QACrB,aAAa,EAAb,6BAAa;QACb,mBAAmB,EAAnB,gCAAmB;QACnB,UAAU,EAAV,yBAAU;QACV,6BAA6B,EAA7B,6CAA6B;QAC7B,qBAAqB,EAArB,qCAAqB;QACrB,sBAAsB,EAAtB,8BAAsB;QACtB,cAAc,EAAd,8BAAc;QAEd,UAAU;QACV,yBAAyB,EAAzB,yCAAyB;QACzB,YAAY,EAAZ,uBAAY;QACZ,QAAQ,EAAR,mBAAQ;QACR,wBAAwB,EAAxB,gCAAwB;QACxB,SAAS,EAAT,iBAAS;QAET,OAAO;QACP,UAAU,EAAV,yBAAU;QACV,aAAa,EAAb,6BAAa;KACd,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"editor.js","sourceRoot":"","sources":["../../../src/browser/monaco-api/editor.ts"],"names":[],"mappings":";;;AAkEA,sDA2DC;AA7HD,2FAAiG;AACjG,oGAK0E;AAC1E,0GAYgF;AAChF,gGAA2G;AAC3G,iGAAoG;AACpG,iGAAwG;AACxG,mFAUiE;AACjE,qHAsBwF;AACxF,mHAAuH;AACvH,iGAAkG;AA0EhG,4FA1EO,qBAAW,OA0EP;AAlEb,SAAgB,qBAAqB;IACnC,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,qBAAqB;QACrB,MAAM,EAAN,yBAAM;QACN,iBAAiB,EAAjB,oCAAiB;QACjB,gBAAgB,EAAhB,mCAAgB;QAChB,yBAAyB,EAAzB,4CAAyB;QACzB,WAAW,EAAX,8BAAW;QACX,gBAAgB,EAAhB,mCAAgB;QAChB,eAAe,EAAf,kCAAe;QACf,eAAe,EAAf,kCAAe;QACf,SAAS,EAAT,4BAAS;QACT,QAAQ,EAAR,2BAAQ;QACR,gBAAgB,EAAhB,mCAAgB;QAChB,kBAAkB,EAAlB,qCAAkB;QAClB,wBAAwB,EAAxB,2CAAwB;QACxB,eAAe,EAAf,kCAAe;QAEf,eAAe,EAAf,kCAAe;QACf,QAAQ,EAAR,2BAAQ;QACR,iBAAiB,EAAjB,oCAAiB;QACjB,QAAQ,EAAR,2BAAQ;QACR,WAAW,EAAX,8BAAW;QACX,QAAQ,EAAR,2BAAQ;QACR,cAAc,EAAd,iCAAc;QAEd,QAAQ;QACR,oBAAoB,EAApB,oCAAoB;QACpB,+BAA+B,EAA/B,+CAA+B;QAC/B,kBAAkB,EAAlB,iCAAkB;QAClB,gBAAgB,EAAhB,wBAAgB;QAChB,wBAAwB,EAAxB,wCAAwB;QACxB,YAAY,EAAZ,4BAAY;QACZ,mBAAmB,EAAnB,2BAAmB;QACnB,iBAAiB,EAAjB,yBAAiB;QACjB,eAAe,EAAf,uBAAe;QACf,eAAe,EAAf,+BAAe;QACf,+BAA+B,EAA/B,+CAA+B;QAC/B,iBAAiB,EAAjB,yBAAiB;QACjB,qBAAqB,EAArB,qCAAqB;QACrB,aAAa,EAAb,6BAAa;QACb,mBAAmB,EAAnB,gCAAmB;QACnB,UAAU,EAAV,yBAAU;QACV,6BAA6B,EAA7B,6CAA6B;QAC7B,qBAAqB,EAArB,qCAAqB;QACrB,sBAAsB,EAAtB,8BAAsB;QACtB,cAAc,EAAd,8BAAc;QAEd,UAAU;QACV,yBAAyB,EAAzB,yCAAyB;QACzB,YAAY,EAAZ,uBAAY;QACZ,QAAQ,EAAR,mBAAQ;QACR,wBAAwB,EAAxB,gCAAwB;QACxB,SAAS,EAAT,iBAAS;QAET,OAAO;QACP,UAAU,EAAV,yBAAU;QACV,aAAa,EAAb,6BAAa;KACd,CAAC,CAAC;AACL,CAAC"}
@@ -4,6 +4,7 @@ export declare const monaco: Readonly<{
4
4
  create: typeof import("@opensumi/monaco-editor-core/esm/vs/editor/standalone/browser/standaloneEditor").create;
5
5
  onDidCreateEditor: typeof import("@opensumi/monaco-editor-core/esm/vs/editor/standalone/browser/standaloneEditor").onDidCreateEditor;
6
6
  createDiffEditor: typeof import("@opensumi/monaco-editor-core/esm/vs/editor/standalone/browser/standaloneEditor").createDiffEditor;
7
+ createMultiFileDiffEditor: typeof import("@opensumi/monaco-editor-core/esm/vs/editor/standalone/browser/standaloneEditor").createMultiFileDiffEditor;
7
8
  createModel: typeof import("@opensumi/monaco-editor-core/esm/vs/editor/standalone/browser/standaloneEditor").createModel;
8
9
  setModelLanguage: typeof import("@opensumi/monaco-editor-core/esm/vs/editor/standalone/browser/standaloneEditor").setModelLanguage;
9
10
  setModelMarkers: typeof import("@opensumi/monaco-editor-core/esm/vs/editor/standalone/browser/standaloneEditor").setModelMarkers;
@@ -272,6 +273,7 @@ export declare const monacoApi: Readonly<{
272
273
  create: typeof import("@opensumi/monaco-editor-core/esm/vs/editor/standalone/browser/standaloneEditor").create;
273
274
  onDidCreateEditor: typeof import("@opensumi/monaco-editor-core/esm/vs/editor/standalone/browser/standaloneEditor").onDidCreateEditor;
274
275
  createDiffEditor: typeof import("@opensumi/monaco-editor-core/esm/vs/editor/standalone/browser/standaloneEditor").createDiffEditor;
276
+ createMultiFileDiffEditor: typeof import("@opensumi/monaco-editor-core/esm/vs/editor/standalone/browser/standaloneEditor").createMultiFileDiffEditor;
275
277
  createModel: typeof import("@opensumi/monaco-editor-core/esm/vs/editor/standalone/browser/standaloneEditor").createModel;
276
278
  setModelLanguage: typeof import("@opensumi/monaco-editor-core/esm/vs/editor/standalone/browser/standaloneEditor").setModelLanguage;
277
279
  setModelMarkers: typeof import("@opensumi/monaco-editor-core/esm/vs/editor/standalone/browser/standaloneEditor").setModelMarkers;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/browser/monaco-api/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EAExB,cAAc,EACf,MAAM,wEAAwE,CAAC;AAUhF,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAGjB,CAAC;AAEH,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAS,CAAC;AAEhC,OAAO,EAAE,GAAG,EAAE,MAAM,qDAAqD,CAAC;AAC1E,OAAO,EACL,YAAY,EACZ,eAAe,GAChB,MAAM,6EAA6E,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/browser/monaco-api/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EAExB,cAAc,EACf,MAAM,wEAAwE,CAAC;AAUhF,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAGjB,CAAC;AAEH,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAS,CAAC;AAEhC,OAAO,EAAE,GAAG,EAAE,MAAM,qDAAqD,CAAC;AAC1E,OAAO,EACL,YAAY,EACZ,eAAe,GAChB,MAAM,6EAA6E,CAAC"}
@@ -3,6 +3,7 @@ import { Disposable, KeybindingService, ServiceNames } from '@opensumi/ide-core-
3
3
  import { IMergeEditorEditor } from '@opensumi/ide-core-browser/lib/monaco/merge-editor-widget';
4
4
  import { IEditorConstructionOptions } from '@opensumi/monaco-editor-core/esm/vs/editor/browser/config/editorConfiguration';
5
5
  import { IDiffEditorConstructionOptions } from '@opensumi/monaco-editor-core/esm/vs/editor/browser/editorBrowser';
6
+ import { MultiDiffEditorWidget } from '@opensumi/monaco-editor-core/esm/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorWidget';
6
7
  import { IStandaloneEditorConstructionOptions } from '@opensumi/monaco-editor-core/esm/vs/editor/standalone/browser/standaloneCodeEditor';
7
8
  import { MonacoService } from '../common';
8
9
  import { ICodeEditor, IDiffEditor } from './monaco-api/types';
@@ -23,6 +24,9 @@ export default class MonacoServiceImpl extends Disposable implements MonacoServi
23
24
  createDiffEditor(monacoContainer: HTMLElement, options?: IDiffEditorConstructionOptions, overrides?: {
24
25
  [key: string]: any;
25
26
  }): IDiffEditor;
27
+ createMultiDiffEditorWidget(monacoContainer: HTMLElement, options?: IDiffEditorConstructionOptions, overrides?: {
28
+ [key: string]: any;
29
+ }): MultiDiffEditorWidget;
26
30
  createMergeEditor(monacoContainer: HTMLElement, options?: IDiffEditorConstructionOptions, overrides?: {
27
31
  [key: string]: any;
28
32
  }): IMergeEditorEditor;
@@ -1 +1 @@
1
- {"version":3,"file":"monaco.service.d.ts","sourceRoot":"","sources":["../../src/browser/monaco.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyC,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC/E,OAAO,EACL,UAAU,EAGV,iBAAiB,EAEjB,YAAY,EACb,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,2DAA2D,CAAC;AAE/F,OAAO,EAAE,0BAA0B,EAAE,MAAM,+EAA+E,CAAC;AAC3H,OAAO,EACL,8BAA8B,EAG/B,MAAM,kEAAkE,CAAC;AAG1E,OAAO,EAAE,oCAAoC,EAAE,MAAM,oFAAoF,CAAC;AAG1I,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAK1C,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAO9D,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,UAAW,YAAW,aAAa;IAEhF,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAG7B,OAAO,CAAC,eAAe,CAA4B;IAGnD,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAgC;IAGxE,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAqB;IAGxD,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAGxD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAU;IAEjC,IAAI,iBAAiB,IAWd,oCAAoC,CAC1C;IAEM,gBAAgB,CACrB,eAAe,EAAE,WAAW,EAC5B,OAAO,CAAC,EAAE,0BAA0B,EACpC,SAAS,GAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAO,GACrC,WAAW;IAkBd,OAAO,CAAC,uBAAuB;IAsB/B,OAAO,CAAC,6BAA6B;IAarC,OAAO,CAAC,qBAAqB;IAatB,gBAAgB,CACrB,eAAe,EAAE,WAAW,EAC5B,OAAO,CAAC,EAAE,8BAA8B,EACxC,SAAS,GAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAO,GACrC,WAAW;IAcP,iBAAiB,CACtB,eAAe,EAAE,WAAW,EAC5B,OAAO,CAAC,EAAE,8BAA8B,EACxC,SAAS,GAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAO,GACrC,kBAAkB;IAQrB,OAAO,CAAC,+BAA+B;IAIvC;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IAoB3B,gBAAgB,CAAC,WAAW,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG;IAQxD,WAAW,CAAC,WAAW,EAAE,YAAY;IAQrC,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;CAGrD"}
1
+ {"version":3,"file":"monaco.service.d.ts","sourceRoot":"","sources":["../../src/browser/monaco.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyC,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC/E,OAAO,EACL,UAAU,EAGV,iBAAiB,EAEjB,YAAY,EAEb,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,2DAA2D,CAAC;AAE/F,OAAO,EAAE,0BAA0B,EAAE,MAAM,+EAA+E,CAAC;AAC3H,OAAO,EACL,8BAA8B,EAG/B,MAAM,kEAAkE,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,iGAAiG,CAAC;AAGxI,OAAO,EAAE,oCAAoC,EAAE,MAAM,oFAAoF,CAAC;AAM1I,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAM1C,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAM9D,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,UAAW,YAAW,aAAa;IAEhF,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAG7B,OAAO,CAAC,eAAe,CAA4B;IAGnD,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAgC;IAGxE,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAqB;IAGxD,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAGxD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAU;IAEjC,IAAI,iBAAiB,IAWd,oCAAoC,CAC1C;IAEM,gBAAgB,CACrB,eAAe,EAAE,WAAW,EAC5B,OAAO,CAAC,EAAE,0BAA0B,EACpC,SAAS,GAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAO,GACrC,WAAW;IAkBd,OAAO,CAAC,uBAAuB;IAsB/B,OAAO,CAAC,6BAA6B;IAarC,OAAO,CAAC,qBAAqB;IAatB,gBAAgB,CACrB,eAAe,EAAE,WAAW,EAC5B,OAAO,CAAC,EAAE,8BAA8B,EACxC,SAAS,GAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAO,GACrC,WAAW;IAcd,2BAA2B,CACzB,eAAe,EAAE,WAAW,EAC5B,OAAO,CAAC,EAAE,8BAA8B,EACxC,SAAS,GAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAO,GACrC,qBAAqB;IA6BjB,iBAAiB,CACtB,eAAe,EAAE,WAAW,EAC5B,OAAO,CAAC,EAAE,8BAA8B,EACxC,SAAS,GAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAO,GACrC,kBAAkB;IAQrB,OAAO,CAAC,+BAA+B;IAIvC;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IAoB3B,gBAAgB,CAAC,WAAW,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG;IAQxD,WAAW,CAAC,WAAW,EAAE,YAAY;IAQrC,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;CAGrD"}
@@ -5,9 +5,12 @@ const di_1 = require("@opensumi/di");
5
5
  const ide_core_browser_1 = require("@opensumi/ide-core-browser");
6
6
  const keybindings_1 = require("@opensumi/monaco-editor-core/esm/vs/base/common/keybindings");
7
7
  const editorBrowser_1 = require("@opensumi/monaco-editor-core/esm/vs/editor/browser/editorBrowser");
8
+ const multiDiffEditorWidget_1 = require("@opensumi/monaco-editor-core/esm/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorWidget");
8
9
  const editorOptions_1 = require("@opensumi/monaco-editor-core/esm/vs/editor/common/config/editorOptions");
9
10
  const editor_main_1 = require("@opensumi/monaco-editor-core/esm/vs/editor/editor.main");
11
+ const standaloneServices_1 = require("@opensumi/monaco-editor-core/esm/vs/editor/standalone/browser/standaloneServices");
10
12
  const merge_editor_widget_1 = require("./contrib/merge-editor/merge-editor-widget");
13
+ const resource_label_1 = require("./contrib/multi-diff-editor/resource-label");
11
14
  const tokenizer_1 = require("./contrib/tokenizer");
12
15
  const monaco_api_1 = require("./monaco-api");
13
16
  const monaco_resolved_keybinding_1 = require("./monaco.resolved-keybinding");
@@ -80,6 +83,31 @@ let MonacoServiceImpl = class MonacoServiceImpl extends ide_core_browser_1.Dispo
80
83
  this.addClickEventListener(editor);
81
84
  return editor;
82
85
  }
86
+ createMultiDiffEditorWidget(monacoContainer, options, overrides = {}) {
87
+ const instantiationService = standaloneServices_1.StandaloneServices.initialize({
88
+ ...this.overrideServiceRegistry.all(),
89
+ ...overrides,
90
+ });
91
+ const editorWidget = new multiDiffEditorWidget_1.MultiDiffEditorWidget(monacoContainer, {
92
+ createResourceLabel: (element) => {
93
+ const resourceLabel = new resource_label_1.ResourceLabel(element);
94
+ return {
95
+ setUri: (uri) => {
96
+ if (!uri) {
97
+ resourceLabel.clear();
98
+ }
99
+ else {
100
+ resourceLabel.setUri(uri);
101
+ }
102
+ },
103
+ dispose: () => { },
104
+ };
105
+ },
106
+ }, instantiationService);
107
+ // this.overrideMonacoKeybindingService(editor);
108
+ // this.addClickEventListener(editor);
109
+ return editorWidget;
110
+ }
83
111
  createMergeEditor(monacoContainer, options, overrides = {}) {
84
112
  return this.injector.get(merge_editor_widget_1.MergeEditorWidget, [
85
113
  monacoContainer,
@@ -1 +1 @@
1
- {"version":3,"file":"monaco.service.js","sourceRoot":"","sources":["../../src/browser/monaco.service.ts"],"names":[],"mappings":";;;AAAA,qCAA+E;AAC/E,iEAOoC;AAEpC,6FAA2F;AAE3F,oGAI0E;AAC1E,0GAA+G;AAC/G,wFAA+E;AAM/E,oFAA+E;AAC/E,mDAAoF;AACpF,6CAAsC;AAEtC,6EAAwE;AAMzD,IAAM,iBAAiB,GAAvB,MAAM,iBAAkB,SAAQ,6BAAU;IAmBvD,IAAI,iBAAiB;QACnB,OAAO;YACL,WAAW,EAAE,IAAI;YACjB,SAAS,EAAE;gBACT,OAAO,EAAE,qCAAqB,CAAC,MAAM;aACtC;YACD,KAAK,EAAE,SAAS;YAChB,oBAAoB,EAAE,KAAK;YAC3B,mBAAmB,EAAE,MAAM;YAC3B,eAAe,EAAE,IAAI;YACrB,oBAAoB,EAAE,KAAK;SACY,CAAC;IAC5C,CAAC;IAEM,gBAAgB,CACrB,eAA4B,EAC5B,OAAoC,EACpC,YAAoC,EAAE;QAEtC,MAAM,MAAM,GAAG,mBAAM,CAAC,MAAM,CAAC,MAAM,CACjC,eAAe,EACf;YACE,GAAG,IAAI,CAAC,iBAAiB;YACzB,GAAG,OAAO;SACX,EACD;YACE,GAAG,IAAI,CAAC,uBAAuB,CAAC,GAAG,EAAE;YACrC,GAAG,SAAS;SACb,CACF,CAAC;QACF,IAAI,CAAC,+BAA+B,CAAC,MAAM,CAAC,CAAC;QAE7C,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;QACnC,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,uBAAuB,CAAC,MAAmB;QACjD,IAAI,CAAC,UAAU,CACb,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE;;YACvB,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,+BAAe,CAAC,mBAAmB,EAAE,CAAC;gBAC1D,MAAM,UAAU,GAAG,CAAA,MAAA,CAAC,CAAC,MAAM,CAAC,QAAQ,0CAAE,UAAU,MAAI,MAAA,CAAC,CAAC,MAAM,CAAC,KAAK,0CAAE,eAAe,CAAA,CAAC;gBACpF,IAAI,CAAC,UAAU,EAAE,CAAC;oBAChB,OAAO;gBACT,CAAC;gBAED,MAAM,CAAC,YAAY,CACjB,IAAI,mBAAK,CACP,UAAU,EACV,CAAA,MAAA,CAAC,CAAC,MAAM,CAAC,KAAK,0CAAE,WAAW,MAAI,MAAA,CAAC,CAAC,MAAM,CAAC,QAAQ,0CAAE,MAAM,CAAA,IAAI,CAAC,EAC7D,UAAU,GAAG,CAAC,EACd,CAAA,MAAA,CAAC,CAAC,MAAM,CAAC,KAAK,0CAAE,WAAW,MAAI,MAAA,CAAC,CAAC,MAAM,CAAC,QAAQ,0CAAE,MAAM,CAAA,IAAI,CAAC,CAC9D,CACF,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAEO,6BAA6B,CAAC,MAAmB;QACvD,IAAI,CAAC,UAAU,CACb,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,EAAE;;YACjC,MAAA,IAAI,CAAC,iBAAiB,0CAAE,sBAAsB,EAAE,CAAC;QACnD,CAAC,CAAC,CACH,CAAC;QACF,IAAI,CAAC,UAAU,CACb,MAAM,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,EAAE;;YAC/B,MAAA,IAAI,CAAC,iBAAiB,0CAAE,oBAAoB,EAAE,CAAC;QACjD,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAEO,qBAAqB,CAAC,MAAmB;QAC/C,IAAI,IAAA,4BAAY,EAAC,MAAM,CAAC,EAAE,CAAC;YACzB,MAAM,cAAc,GAAG,MAAM,CAAC,iBAAiB,EAAE,CAAC;YAClD,MAAM,cAAc,GAAG,MAAM,CAAC,iBAAiB,EAAE,CAAC;YAElD,IAAI,CAAC,uBAAuB,CAAC,cAAc,CAAC,CAAC;YAC7C,IAAI,CAAC,uBAAuB,CAAC,cAAc,CAAC,CAAC;QAC/C,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,uBAAuB,CAAC,MAAqB,CAAC,CAAC;YACpD,IAAI,CAAC,6BAA6B,CAAC,MAAqB,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IAEM,gBAAgB,CACrB,eAA4B,EAC5B,OAAwC,EACxC,YAAoC,EAAE;QAEtC,MAAM,MAAM,GAAG,mBAAM,CAAC,MAAM,CAAC,gBAAgB,CAC3C,eAAe,EACf;YACE,GAAG,IAAI,CAAC,iBAAiB;YACzB,GAAG,OAAO;SACJ,EACR,EAAE,GAAG,IAAI,CAAC,uBAAuB,CAAC,GAAG,EAAE,EAAE,GAAG,SAAS,EAAE,CACxD,CAAC;QACF,IAAI,CAAC,+BAA+B,CAAC,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;QACnC,OAAO,MAAM,CAAC;IAChB,CAAC;IAEM,iBAAiB,CACtB,eAA4B,EAC5B,OAAwC,EACxC,YAAoC,EAAE;QAEtC,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,uCAAiB,EAAE;YAC1C,eAAe;YACf,OAAO;YACP,EAAE,GAAG,IAAI,CAAC,uBAAuB,CAAC,GAAG,EAAE,EAAE,GAAG,SAAS,EAAE;SACxD,CAAC,CAAC;IACL,CAAC;IAEO,+BAA+B,CAAC,MAAmB;QACzD,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC;IAC1C,CAAC;IAED;;;OAGG;IACK,0BAA0B,CAAC,MAAmB;QACpD,MAAM,iBAAiB,GAAG,MAAM,CAAC,8BAA8B,CAAgC,CAAC;QAChG,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,OAAO;QACT,CAAC;QACD,iBAAiB,CAAC,iBAAiB,GAAG,CAAC,UAAU,EAAE,EAAE,CAAC;YACpD,IAAI,qDAAwB,CAAC,qDAAwB,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,kBAAkB,CAAC;SACxG,CAAC;QACF,iBAAiB,CAAC,oBAAoB,GAAG,CAAC,aAAa,EAAE,EAAE;YACzD,MAAM,UAAU,GAAG,IAAI,0BAAY,CACjC,aAAa,CAAC,OAAO,EACrB,aAAa,CAAC,QAAQ,EACtB,aAAa,CAAC,MAAM,EACpB,aAAa,CAAC,OAAO,EACrB,aAAa,CAAC,OAAO,CACtB,CAAC,YAAY,EAAE,CAAC;YACjB,OAAO,IAAI,qDAAwB,CAAC,qDAAwB,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACjH,CAAC,CAAC;IACJ,CAAC;IAEM,gBAAgB,CAAC,WAAyB,EAAE,OAAY;QAC7D,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,IAAI,EACJ,sHAAsH,CACvH,CAAC;QACF,IAAI,CAAC,uBAAuB,CAAC,uBAAuB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAC7E,CAAC;IAEM,WAAW,CAAC,WAAyB;QAC1C,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,IAAI,EACJ,sHAAsH,CACvH,CAAC;QACF,OAAO,IAAI,CAAC,uBAAuB,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;IACxE,CAAC;IAEM,YAAY,CAAC,IAAY,EAAE,UAAkB;QAClD,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACtD,CAAC;CACF,CAAA;AAlLW;IADT,IAAA,cAAS,EAAC,mBAAc,CAAC;sCACN,aAAQ;mDAAC;AAGrB;IADP,IAAA,cAAS,EAAC,8BAAkB,CAAC;;0DACqB;AAGlC;IADhB,IAAA,cAAS,EAAC,gDAA6B,CAAC;sCACC,gDAA6B;kEAAC;AAGvD;IADhB,IAAA,cAAS,EAAC,qCAAkB,CAAC;;6DAC0B;AAGrC;IADlB,IAAA,cAAS,EAAC,oCAAiB,CAAC;;4DAC2B;AAGvC;IADhB,IAAA,cAAS,EAAC,0BAAO,CAAC;;iDACc;AAjBd,iBAAiB;IADrC,IAAA,eAAU,GAAE;GACQ,iBAAiB,CAoLrC;kBApLoB,iBAAiB"}
1
+ {"version":3,"file":"monaco.service.js","sourceRoot":"","sources":["../../src/browser/monaco.service.ts"],"names":[],"mappings":"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"}
@@ -12,4 +12,77 @@ export declare function autorunDelta<T>(observable: IObservable<T>, handler: (ar
12
12
  }, reader: IReader) => void): IDisposable;
13
13
  export declare function debouncedObservable2<T>(observable: IObservable<T>, debounceMs: number): IObservable<T>;
14
14
  export declare function onObservableChange<T>(observable: IObservable<unknown, T>, callback: (value: T) => void): IDisposable;
15
+ export declare class ObservableLazy<T> {
16
+ private readonly _computeValue;
17
+ private readonly _value;
18
+ /**
19
+ * The cached value.
20
+ * Does not force a computation of the value.
21
+ */
22
+ get cachedValue(): IObservable<T | undefined>;
23
+ constructor(_computeValue: () => T);
24
+ /**
25
+ * Returns the cached value.
26
+ * Computes the value if the value has not been cached yet.
27
+ */
28
+ getValue(): T;
29
+ }
30
+ /**
31
+ * A promise whose state is observable.
32
+ */
33
+ export declare class ObservablePromise<T> {
34
+ static fromFn<T>(fn: () => Promise<T>): ObservablePromise<T>;
35
+ private readonly _value;
36
+ /**
37
+ * The promise that this object wraps.
38
+ */
39
+ readonly promise: Promise<T>;
40
+ /**
41
+ * The current state of the promise.
42
+ * Is `undefined` if the promise didn't resolve yet.
43
+ */
44
+ readonly promiseResult: IObservable<PromiseResult<T> | undefined>;
45
+ constructor(promise: Promise<T>);
46
+ }
47
+ export declare class PromiseResult<T> {
48
+ /**
49
+ * The value of the resolved promise.
50
+ * Undefined if the promise rejected.
51
+ */
52
+ readonly data: T | undefined;
53
+ /**
54
+ * The error in case of a rejected promise.
55
+ * Undefined if the promise resolved.
56
+ */
57
+ readonly error: unknown | undefined;
58
+ constructor(
59
+ /**
60
+ * The value of the resolved promise.
61
+ * Undefined if the promise rejected.
62
+ */
63
+ data: T | undefined,
64
+ /**
65
+ * The error in case of a rejected promise.
66
+ * Undefined if the promise resolved.
67
+ */
68
+ error: unknown | undefined);
69
+ /**
70
+ * Returns the value if the promise resolved, otherwise throws the error.
71
+ */
72
+ getDataOrThrow(): T;
73
+ }
74
+ /**
75
+ * A lazy promise whose state is observable.
76
+ */
77
+ export declare class ObservableLazyPromise<T> {
78
+ private readonly _computePromise;
79
+ private readonly _lazyValue;
80
+ /**
81
+ * Does not enforce evaluation of the promise compute function.
82
+ * Is undefined if the promise has not been computed yet.
83
+ */
84
+ readonly cachedPromiseResult: IObservable<PromiseResult<T> | undefined>;
85
+ constructor(_computePromise: () => Promise<T>);
86
+ getPromise(): Promise<T>;
87
+ }
15
88
  //# sourceMappingURL=observable.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"observable.d.ts","sourceRoot":"","sources":["../../src/common/observable.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,WAAW,EAEX,OAAO,EACR,MAAM,yEAAyE,CAAC;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,sFAAsF,CAAC;AAGnH,cAAc,4EAA4E,CAAC;AAC3F,cAAc,yEAAyE,CAAC;AACxF,cAAc,8EAA8E,CAAC;AAC7F,cAAc,4EAA4E,CAAC;AAC3F,cAAc,4EAA4E,CAAC;AAC3F,cAAc,0EAA0E,CAAC;AAEzF,wBAAgB,YAAY,CAAC,CAAC,EAC5B,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC,EAC1B,OAAO,EAAE,CAAC,IAAI,EAAE;IAAE,SAAS,EAAE,CAAC,GAAG,SAAS,CAAC;IAAC,QAAQ,EAAE,CAAC,CAAA;CAAE,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,GAClF,WAAW,CAQb;AAED,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,CAwCtG;AAED,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,UAAU,EAAE,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,GAAG,WAAW,CAkBpH"}
1
+ {"version":3,"file":"observable.d.ts","sourceRoot":"","sources":["../../src/common/observable.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,WAAW,EAEX,OAAO,EAGR,MAAM,yEAAyE,CAAC;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,sFAAsF,CAAC;AAInH,cAAc,4EAA4E,CAAC;AAC3F,cAAc,yEAAyE,CAAC;AACxF,cAAc,8EAA8E,CAAC;AAC7F,cAAc,4EAA4E,CAAC;AAC3F,cAAc,4EAA4E,CAAC;AAC3F,cAAc,0EAA0E,CAAC;AAEzF,wBAAgB,YAAY,CAAC,CAAC,EAC5B,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC,EAC1B,OAAO,EAAE,CAAC,IAAI,EAAE;IAAE,SAAS,EAAE,CAAC,GAAG,SAAS,CAAC;IAAC,QAAQ,EAAE,CAAC,CAAA;CAAE,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,GAClF,WAAW,CAQb;AAED,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,CAwCtG;AAED,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,UAAU,EAAE,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,GAAG,WAAW,CAkBpH;AAED,qBAAa,cAAc,CAAC,CAAC;IAWf,OAAO,CAAC,QAAQ,CAAC,aAAa;IAV1C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmD;IAE1E;;;OAGG;IACH,IAAW,WAAW,IAAI,WAAW,CAAC,CAAC,GAAG,SAAS,CAAC,CAEnD;gBAE4B,aAAa,EAAE,MAAM,CAAC;IAEnD;;;OAGG;IACI,QAAQ;CAQhB;AAED;;GAEG;AACH,qBAAa,iBAAiB,CAAC,CAAC;WAChB,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC;IAInE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkE;IAEzF;;OAEG;IACH,SAAgB,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IAEpC;;;OAGG;IACH,SAAgB,aAAa,EAAE,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAe;gBAE3E,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;CAmBhC;AAED,qBAAa,aAAa,CAAC,CAAC;IAExB;;;OAGG;aACa,IAAI,EAAE,CAAC,GAAG,SAAS;IAEnC;;;OAGG;aACa,KAAK,EAAE,OAAO,GAAG,SAAS;;IAV1C;;;OAGG;IACa,IAAI,EAAE,CAAC,GAAG,SAAS;IAEnC;;;OAGG;IACa,KAAK,EAAE,OAAO,GAAG,SAAS;IAG5C;;OAEG;IACI,cAAc,IAAI,CAAC;CAM3B;AAED;;GAEG;AACH,qBAAa,qBAAqB,CAAC,CAAC;IAWtB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAV5C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA2E;IAEtG;;;OAGG;IACH,SAAgB,mBAAmB,4CAEjC;gBAE2B,eAAe,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC;IAEvD,UAAU,IAAI,OAAO,CAAC,CAAC,CAAC;CAGhC"}
@@ -1,11 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ObservableLazyPromise = exports.PromiseResult = exports.ObservablePromise = exports.ObservableLazy = void 0;
3
4
  exports.autorunDelta = autorunDelta;
4
5
  exports.debouncedObservable2 = debouncedObservable2;
5
6
  exports.onObservableChange = onObservableChange;
6
7
  const tslib_1 = require("tslib");
7
8
  // @ts-nocheck
8
9
  const autorun_1 = require("@opensumi/monaco-editor-core/esm/vs/base/common/observableInternal/autorun");
10
+ const base_1 = require("@opensumi/monaco-editor-core/esm/vs/base/common/observableInternal/base");
11
+ const derived_1 = require("@opensumi/monaco-editor-core/esm/vs/base/common/observableInternal/derived");
9
12
  const utils_1 = require("@opensumi/monaco-editor-core/esm/vs/base/common/observableInternal/utils");
10
13
  tslib_1.__exportStar(require("@opensumi/monaco-editor-core/esm/vs/base/common/observableInternal/autorun"), exports);
11
14
  tslib_1.__exportStar(require("@opensumi/monaco-editor-core/esm/vs/base/common/observableInternal/base"), exports);
@@ -77,4 +80,105 @@ function onObservableChange(observable, callback) {
77
80
  },
78
81
  };
79
82
  }
83
+ class ObservableLazy {
84
+ /**
85
+ * The cached value.
86
+ * Does not force a computation of the value.
87
+ */
88
+ get cachedValue() {
89
+ return this._value;
90
+ }
91
+ constructor(_computeValue) {
92
+ this._computeValue = _computeValue;
93
+ this._value = (0, base_1.observableValue)(this, undefined);
94
+ }
95
+ /**
96
+ * Returns the cached value.
97
+ * Computes the value if the value has not been cached yet.
98
+ */
99
+ getValue() {
100
+ let v = this._value.get();
101
+ if (!v) {
102
+ v = this._computeValue();
103
+ this._value.set(v, undefined);
104
+ }
105
+ return v;
106
+ }
107
+ }
108
+ exports.ObservableLazy = ObservableLazy;
109
+ /**
110
+ * A promise whose state is observable.
111
+ */
112
+ class ObservablePromise {
113
+ static fromFn(fn) {
114
+ return new ObservablePromise(fn());
115
+ }
116
+ constructor(promise) {
117
+ this._value = (0, base_1.observableValue)(this, undefined);
118
+ /**
119
+ * The current state of the promise.
120
+ * Is `undefined` if the promise didn't resolve yet.
121
+ */
122
+ this.promiseResult = this._value;
123
+ this.promise = promise.then((value) => {
124
+ // TODO: 只有一次更新,有必要上tx吗?
125
+ (0, base_1.transaction)((tx) => {
126
+ /** @description onPromiseResolved */
127
+ this._value.set(new PromiseResult(value, undefined), tx);
128
+ });
129
+ return value;
130
+ }, (error) => {
131
+ (0, base_1.transaction)((tx) => {
132
+ /** @description onPromiseRejected */
133
+ this._value.set(new PromiseResult(undefined, error), tx);
134
+ });
135
+ throw error;
136
+ });
137
+ }
138
+ }
139
+ exports.ObservablePromise = ObservablePromise;
140
+ class PromiseResult {
141
+ constructor(
142
+ /**
143
+ * The value of the resolved promise.
144
+ * Undefined if the promise rejected.
145
+ */
146
+ data,
147
+ /**
148
+ * The error in case of a rejected promise.
149
+ * Undefined if the promise resolved.
150
+ */
151
+ error) {
152
+ this.data = data;
153
+ this.error = error;
154
+ }
155
+ /**
156
+ * Returns the value if the promise resolved, otherwise throws the error.
157
+ */
158
+ getDataOrThrow() {
159
+ if (this.error) {
160
+ throw this.error;
161
+ }
162
+ return this.data;
163
+ }
164
+ }
165
+ exports.PromiseResult = PromiseResult;
166
+ /**
167
+ * A lazy promise whose state is observable.
168
+ */
169
+ class ObservableLazyPromise {
170
+ constructor(_computePromise) {
171
+ this._computePromise = _computePromise;
172
+ this._lazyValue = new ObservableLazy(() => new ObservablePromise(this._computePromise()));
173
+ /**
174
+ * Does not enforce evaluation of the promise compute function.
175
+ * Is undefined if the promise has not been computed yet.
176
+ */
177
+ this.cachedPromiseResult = (0, derived_1.derived)(this, (reader) => { var _a; return (_a = this._lazyValue.cachedValue.read(reader)) === null || _a === void 0 ? void 0 : _a.promiseResult.read(reader); });
178
+ }
179
+ getPromise() {
180
+ return this._lazyValue.getValue().promise;
181
+ }
182
+ }
183
+ exports.ObservableLazyPromise = ObservableLazyPromise;
80
184
  //# sourceMappingURL=observable.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"observable.js","sourceRoot":"","sources":["../../src/common/observable.ts"],"names":[],"mappings":";;AAiBA,oCAWC;AAED,oDAwCC;AAED,gDAkBC;;AA1FD,cAAc;AACd,wGAAkH;AAOlH,oGAA+G;AAE/G,qHAA2F;AAC3F,kHAAwF;AACxF,uHAA6F;AAC7F,qHAA2F;AAC3F,qHAA2F;AAC3F,mHAAyF;AAEzF,SAAgB,YAAY,CAC1B,UAA0B,EAC1B,OAAmF;IAEnF,IAAI,UAAyB,CAAC;IAC9B,OAAO,IAAA,qBAAW,EAAC,EAAE,gBAAgB,EAAE,OAAO,EAAE,EAAE,CAAC,MAAM,EAAE,EAAE;QAC3D,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzC,MAAM,SAAS,GAAG,UAAU,CAAC;QAC7B,UAAU,GAAG,QAAQ,CAAC;QACtB,OAAO,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,MAAM,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAgB,oBAAoB,CAAI,UAA0B,EAAE,UAAkB;IACpF,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,IAAI,SAAwB,CAAC;IAE7B,IAAI,OAAY,CAAC;IAEjB,OAAO,IAAA,2BAAmB,EACxB,CAAC,EAAE,EAAE,EAAE;QACL,MAAM,CAAC,GAAG,IAAA,iBAAO,EAAC,CAAC,MAAM,EAAE,EAAE;YAC3B,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAEtC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,QAAQ,GAAG,IAAI,CAAC;gBAChB,SAAS,GAAG,KAAK,CAAC;YACpB,CAAC;iBAAM,CAAC;gBACN,IAAI,OAAO,EAAE,CAAC;oBACZ,YAAY,CAAC,OAAO,CAAC,CAAC;gBACxB,CAAC;gBACD,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;oBACxB,SAAS,GAAG,KAAK,CAAC;oBAClB,EAAE,EAAE,CAAC;gBACP,CAAC,EAAE,UAAU,CAAC,CAAC;YACjB,CAAC;QACH,CAAC,CAAC,CAAC;QACH,OAAO;YACL,OAAO;gBACL,CAAC,CAAC,OAAO,EAAE,CAAC;gBACZ,QAAQ,GAAG,KAAK,CAAC;gBACjB,SAAS,GAAG,SAAS,CAAC;YACxB,CAAC;SACF,CAAC;IACJ,CAAC,EACD,GAAG,EAAE;QACH,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,SAAU,CAAC;QACpB,CAAC;aAAM,CAAC;YACN,OAAO,UAAU,CAAC,GAAG,EAAE,CAAC;QAC1B,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC;AAED,SAAgB,kBAAkB,CAAI,UAAmC,EAAE,QAA4B;IACrG,MAAM,CAAC,GAAc;QACnB,WAAW,KAAI,CAAC;QAChB,SAAS,KAAI,CAAC;QACd,oBAAoB,CAAC,UAAU;YAC7B,UAAU,CAAC,aAAa,EAAE,CAAC;QAC7B,CAAC;QACD,YAAY,CAAc,WAAqC;YAC7D,QAAQ,CAAC,WAAW,CAAC,GAAG,EAAkB,CAAC,CAAC;QAC9C,CAAC;KACF,CAAC;IAEF,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAC1B,OAAO;QACL,OAAO;YACL,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"observable.js","sourceRoot":"","sources":["../../src/common/observable.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opensumi/ide-monaco",
3
- "version": "3.8.3-next-1746629393.0",
3
+ "version": "3.8.3-next-1746753590.0",
4
4
  "files": [
5
5
  "lib",
6
6
  "src",
@@ -15,18 +15,18 @@
15
15
  "build:worker": "../../node_modules/.bin/webpack --config webpack.config.js"
16
16
  },
17
17
  "dependencies": {
18
- "@opensumi/ide-components": "3.8.3-next-1746629393.0",
19
- "@opensumi/ide-core-browser": "3.8.3-next-1746629393.0",
20
- "@opensumi/ide-core-common": "3.8.3-next-1746629393.0",
21
- "@opensumi/ide-overlay": "3.8.3-next-1746629393.0",
22
- "@opensumi/ide-theme": "3.8.3-next-1746629393.0",
23
- "@opensumi/ide-utils": "3.8.3-next-1746629393.0",
18
+ "@opensumi/ide-components": "3.8.3-next-1746753590.0",
19
+ "@opensumi/ide-core-browser": "3.8.3-next-1746753590.0",
20
+ "@opensumi/ide-core-common": "3.8.3-next-1746753590.0",
21
+ "@opensumi/ide-overlay": "3.8.3-next-1746753590.0",
22
+ "@opensumi/ide-theme": "3.8.3-next-1746753590.0",
23
+ "@opensumi/ide-utils": "3.8.3-next-1746753590.0",
24
24
  "@opensumi/monaco-editor-core": "0.54.0-patch.2"
25
25
  },
26
26
  "devDependencies": {
27
- "@opensumi/ide-dev-tool": "3.8.3-next-1746629393.0",
28
- "@opensumi/ide-file-service": "3.8.3-next-1746629393.0",
29
- "@opensumi/ide-workspace": "3.8.3-next-1746629393.0"
27
+ "@opensumi/ide-dev-tool": "3.8.3-next-1746753590.0",
28
+ "@opensumi/ide-file-service": "3.8.3-next-1746753590.0",
29
+ "@opensumi/ide-workspace": "3.8.3-next-1746753590.0"
30
30
  },
31
- "gitHead": "22e2db2161e066257170956b449ccef8b1c8909b"
31
+ "gitHead": "a728f8b5762537285653a9e868c754362eef40b8"
32
32
  }
@@ -0,0 +1,5 @@
1
+ .resourceLabel {
2
+ display: flex;
3
+ align-items: center;
4
+ gap: 4px;
5
+ }
@@ -0,0 +1,23 @@
1
+ import { URI, Uri, getResourceIconClass } from '@opensumi/ide-core-browser';
2
+ import { IResourceLabelOptions } from '@opensumi/monaco-editor-core/esm/vs/editor/browser/widget/multiDiffEditor/workbenchUIElementFactory';
3
+
4
+ import styles from './resource-label.module.less';
5
+
6
+ export class ResourceLabel {
7
+ constructor(private readonly element: HTMLElement) {}
8
+
9
+ setUri(uri: Uri, options?: IResourceLabelOptions) {
10
+ this.renderFile(URI.from(uri), options);
11
+ }
12
+
13
+ private renderFile(uri: URI, options?: IResourceLabelOptions) {
14
+ const icon = getResourceIconClass(uri);
15
+ this.element.innerHTML = `<span class="${styles.resourceLabel}${
16
+ options?.strikethrough ? ' strikethrough' : ''
17
+ }"><span class="${icon.iconClass}"></span>${uri.displayName}</span>`;
18
+ }
19
+
20
+ clear() {
21
+ this.element.innerHTML = '';
22
+ }
23
+ }
@@ -39,6 +39,7 @@ import {
39
39
  create,
40
40
  createDiffEditor,
41
41
  createModel,
42
+ createMultiFileDiffEditor,
42
43
  createWebWorker,
43
44
  defineTheme,
44
45
  getModel,
@@ -69,7 +70,7 @@ export function createMonacoEditorApi() {
69
70
  create,
70
71
  onDidCreateEditor,
71
72
  createDiffEditor,
72
-
73
+ createMultiFileDiffEditor,
73
74
  createModel,
74
75
  setModelLanguage,
75
76
  setModelMarkers,
@@ -6,6 +6,7 @@ import {
6
6
  KeybindingService,
7
7
  MonacoOverrideServiceRegistry,
8
8
  ServiceNames,
9
+ Uri,
9
10
  } from '@opensumi/ide-core-browser';
10
11
  import { IMergeEditorEditor } from '@opensumi/ide-core-browser/lib/monaco/merge-editor-widget';
11
12
  import { KeyCodeChord } from '@opensumi/monaco-editor-core/esm/vs/base/common/keybindings';
@@ -15,19 +16,23 @@ import {
15
16
  MouseTargetType,
16
17
  isDiffEditor,
17
18
  } from '@opensumi/monaco-editor-core/esm/vs/editor/browser/editorBrowser';
19
+ import { MultiDiffEditorWidget } from '@opensumi/monaco-editor-core/esm/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorWidget';
18
20
  import { ShowLightbulbIconMode } from '@opensumi/monaco-editor-core/esm/vs/editor/common/config/editorOptions';
19
21
  import { Range } from '@opensumi/monaco-editor-core/esm/vs/editor/editor.main';
20
22
  import { IStandaloneEditorConstructionOptions } from '@opensumi/monaco-editor-core/esm/vs/editor/standalone/browser/standaloneCodeEditor';
21
- import { StandaloneKeybindingService } from '@opensumi/monaco-editor-core/esm/vs/editor/standalone/browser/standaloneServices';
23
+ import {
24
+ StandaloneKeybindingService,
25
+ StandaloneServices,
26
+ } from '@opensumi/monaco-editor-core/esm/vs/editor/standalone/browser/standaloneServices';
22
27
 
23
28
  import { MonacoService } from '../common';
24
29
 
25
30
  import { MergeEditorWidget } from './contrib/merge-editor/merge-editor-widget';
31
+ import { ResourceLabel } from './contrib/multi-diff-editor/resource-label';
26
32
  import { ITextmateTokenizer, ITextmateTokenizerService } from './contrib/tokenizer';
27
33
  import { monaco } from './monaco-api';
28
34
  import { ICodeEditor, IDiffEditor } from './monaco-api/types';
29
35
  import { MonacoResolvedKeybinding } from './monaco.resolved-keybinding';
30
-
31
36
  // const SUMI_OVERFLOW_WIDGETS_CONTAINER_ID = 'sumi-overflow-widgets-container';
32
37
  type IEditorType = IDiffEditor | ICodeEditor | IMergeEditorEditor;
33
38
 
@@ -153,6 +158,39 @@ export default class MonacoServiceImpl extends Disposable implements MonacoServi
153
158
  return editor;
154
159
  }
155
160
 
161
+ createMultiDiffEditorWidget(
162
+ monacoContainer: HTMLElement,
163
+ options?: IDiffEditorConstructionOptions,
164
+ overrides: { [key: string]: any } = {},
165
+ ): MultiDiffEditorWidget {
166
+ const instantiationService = StandaloneServices.initialize({
167
+ ...this.overrideServiceRegistry.all(),
168
+ ...overrides,
169
+ });
170
+ const editorWidget = new MultiDiffEditorWidget(
171
+ monacoContainer,
172
+ {
173
+ createResourceLabel: (element: HTMLElement) => {
174
+ const resourceLabel = new ResourceLabel(element);
175
+ return {
176
+ setUri: (uri: Uri) => {
177
+ if (!uri) {
178
+ resourceLabel.clear();
179
+ } else {
180
+ resourceLabel.setUri(uri);
181
+ }
182
+ },
183
+ dispose: () => {},
184
+ };
185
+ },
186
+ },
187
+ instantiationService,
188
+ );
189
+ // this.overrideMonacoKeybindingService(editor);
190
+ // this.addClickEventListener(editor);
191
+ return editorWidget;
192
+ }
193
+
156
194
  public createMergeEditor(
157
195
  monacoContainer: HTMLElement,
158
196
  options?: IDiffEditorConstructionOptions,
@@ -4,8 +4,11 @@ import {
4
4
  IObservable,
5
5
  IObserver,
6
6
  IReader,
7
+ observableValue,
8
+ transaction,
7
9
  } from '@opensumi/monaco-editor-core/esm/vs/base/common/observableInternal/base';
8
10
  import { IDisposable } from '@opensumi/monaco-editor-core/esm/vs/base/common/observableInternal/commonFacade/deps';
11
+ import { derived } from '@opensumi/monaco-editor-core/esm/vs/base/common/observableInternal/derived';
9
12
  import { observableFromEvent } from '@opensumi/monaco-editor-core/esm/vs/base/common/observableInternal/utils';
10
13
 
11
14
  export * from '@opensumi/monaco-editor-core/esm/vs/base/common/observableInternal/autorun';
@@ -89,3 +92,119 @@ export function onObservableChange<T>(observable: IObservable<unknown, T>, callb
89
92
  },
90
93
  };
91
94
  }
95
+
96
+ export class ObservableLazy<T> {
97
+ private readonly _value = observableValue<T | undefined>(this, undefined);
98
+
99
+ /**
100
+ * The cached value.
101
+ * Does not force a computation of the value.
102
+ */
103
+ public get cachedValue(): IObservable<T | undefined> {
104
+ return this._value;
105
+ }
106
+
107
+ constructor(private readonly _computeValue: () => T) {}
108
+
109
+ /**
110
+ * Returns the cached value.
111
+ * Computes the value if the value has not been cached yet.
112
+ */
113
+ public getValue() {
114
+ let v = this._value.get();
115
+ if (!v) {
116
+ v = this._computeValue();
117
+ this._value.set(v, undefined);
118
+ }
119
+ return v;
120
+ }
121
+ }
122
+
123
+ /**
124
+ * A promise whose state is observable.
125
+ */
126
+ export class ObservablePromise<T> {
127
+ public static fromFn<T>(fn: () => Promise<T>): ObservablePromise<T> {
128
+ return new ObservablePromise(fn());
129
+ }
130
+
131
+ private readonly _value = observableValue<PromiseResult<T> | undefined>(this, undefined);
132
+
133
+ /**
134
+ * The promise that this object wraps.
135
+ */
136
+ public readonly promise: Promise<T>;
137
+
138
+ /**
139
+ * The current state of the promise.
140
+ * Is `undefined` if the promise didn't resolve yet.
141
+ */
142
+ public readonly promiseResult: IObservable<PromiseResult<T> | undefined> = this._value;
143
+
144
+ constructor(promise: Promise<T>) {
145
+ this.promise = promise.then(
146
+ (value) => {
147
+ // TODO: 只有一次更新,有必要上tx吗?
148
+ transaction((tx) => {
149
+ /** @description onPromiseResolved */
150
+ this._value.set(new PromiseResult(value, undefined), tx);
151
+ });
152
+ return value;
153
+ },
154
+ (error) => {
155
+ transaction((tx) => {
156
+ /** @description onPromiseRejected */
157
+ this._value.set(new PromiseResult<T>(undefined, error), tx);
158
+ });
159
+ throw error;
160
+ },
161
+ );
162
+ }
163
+ }
164
+
165
+ export class PromiseResult<T> {
166
+ constructor(
167
+ /**
168
+ * The value of the resolved promise.
169
+ * Undefined if the promise rejected.
170
+ */
171
+ public readonly data: T | undefined,
172
+
173
+ /**
174
+ * The error in case of a rejected promise.
175
+ * Undefined if the promise resolved.
176
+ */
177
+ public readonly error: unknown | undefined,
178
+ ) {}
179
+
180
+ /**
181
+ * Returns the value if the promise resolved, otherwise throws the error.
182
+ */
183
+ public getDataOrThrow(): T {
184
+ if (this.error) {
185
+ throw this.error;
186
+ }
187
+ return this.data!;
188
+ }
189
+ }
190
+
191
+ /**
192
+ * A lazy promise whose state is observable.
193
+ */
194
+ export class ObservableLazyPromise<T> {
195
+ private readonly _lazyValue = new ObservableLazy(() => new ObservablePromise(this._computePromise()));
196
+
197
+ /**
198
+ * Does not enforce evaluation of the promise compute function.
199
+ * Is undefined if the promise has not been computed yet.
200
+ */
201
+ public readonly cachedPromiseResult = derived(this, (reader) =>
202
+ this._lazyValue.cachedValue.read(reader)?.promiseResult.read(reader),
203
+ );
204
+
205
+ constructor(private readonly _computePromise: () => Promise<T>) {}
206
+
207
+ public getPromise(): Promise<T> {
208
+ return this._lazyValue.getValue().promise;
209
+ }
210
+ }