@eclipse-docks/extension-monaco-editor 0.8.12 → 0.8.13
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/dist/index.js +1 -1
- package/dist/{monaco-editor-Dq4CT90-.js → monaco-editor-Ba9ZMs5G.js} +2 -2
- package/dist/{monaco-editor-Dq4CT90-.js.map → monaco-editor-Ba9ZMs5G.js.map} +1 -1
- package/dist/{monaco-editor-extension-D3ofvJeE.js → monaco-editor-extension-DkYWNcUL.js} +2 -2
- package/dist/{monaco-editor-extension-D3ofvJeE.js.map → monaco-editor-extension-DkYWNcUL.js.map} +1 -1
- package/dist/{monaco-widget-vQSNeFxK.js → monaco-widget-cfbcKlgw.js} +19 -2
- package/dist/{monaco-widget-vQSNeFxK.js.map → monaco-widget-cfbcKlgw.js.map} +1 -1
- package/dist/monaco-widget.d.ts +3 -0
- package/dist/monaco-widget.d.ts.map +1 -1
- package/dist/widget.js +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -10,7 +10,7 @@ extensionRegistry.registerExtension({
|
|
|
10
10
|
id: pkg.name,
|
|
11
11
|
name: t.EXT_MONACO_NAME,
|
|
12
12
|
description: t.EXT_MONACO_DESC,
|
|
13
|
-
loader: () => import("./monaco-editor-extension-
|
|
13
|
+
loader: () => import("./monaco-editor-extension-DkYWNcUL.js"),
|
|
14
14
|
icon: "file-pen"
|
|
15
15
|
});
|
|
16
16
|
var MONACO_EDITOR_TOOLBAR_TARGET_PREFIX = "toolbar:system.monaco-editor";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "./monaco-widget-
|
|
1
|
+
import "./monaco-widget-cfbcKlgw.js";
|
|
2
2
|
import { DocksPart } from "@eclipse-docks/core";
|
|
3
3
|
import { customElement, property, state } from "lit/decorators.js";
|
|
4
4
|
import { css, html } from "lit";
|
|
@@ -91,4 +91,4 @@ _decorate([state()], DocksMonacoEditor.prototype, "initialLanguage", void 0);
|
|
|
91
91
|
DocksMonacoEditor = _decorate([customElement("docks-monaco-editor")], DocksMonacoEditor);
|
|
92
92
|
//#endregion
|
|
93
93
|
|
|
94
|
-
//# sourceMappingURL=monaco-editor-
|
|
94
|
+
//# sourceMappingURL=monaco-editor-Ba9ZMs5G.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monaco-editor-
|
|
1
|
+
{"version":3,"file":"monaco-editor-Ba9ZMs5G.js","names":[],"sources":["../src/monaco-editor.ts"],"sourcesContent":["import { customElement, property, state } from \"lit/decorators.js\";\nimport { DocksPart } from \"@eclipse-docks/core\";\nimport { css, html } from \"lit\";\nimport { createRef, ref } from \"lit/directives/ref.js\";\nimport { EditorInput, EditorContentProvider } from \"@eclipse-docks/core\";\nimport \"./monaco-widget\";\nimport type { DocksMonacoWidget } from \"./monaco-widget\";\n\n@customElement('docks-monaco-editor')\nexport class DocksMonacoEditor extends DocksPart implements EditorContentProvider {\n @property({ attribute: false })\n public input?: EditorInput;\n @property()\n public readOnly: boolean = false;\n\n @state()\n private initialContent: string | undefined = undefined;\n @state()\n private initialUri: string | undefined = undefined;\n @state()\n private initialLanguage: string | undefined = undefined;\n\n private widgetRef = createRef<DocksMonacoWidget>();\n\n protected async doInitUI() {\n const file = this.input!.data;\n const textContents = await file.getContents();\n this.initialContent = textContents;\n this.initialUri = file.getWorkspacePath();\n this.initialLanguage = undefined;\n this.requestUpdate();\n }\n\n private _onContentChange = () => {\n this.markDirty(true);\n };\n\n public getEditor() {\n return this.widgetRef.value?.getEditor() ?? undefined;\n }\n\n save(): void {\n const value = this.widgetRef.value?.getContent() ?? '';\n this.input?.data.saveContents(value);\n this.markDirty(false);\n }\n\n protected doClose() {\n this.widgetRef.value?.dispose();\n }\n\n public getLanguage(): string | null {\n return this.widgetRef.value?.getLanguage() ?? null;\n }\n\n public isLanguage(lang: string): boolean {\n return this.widgetRef.value?.isLanguage(lang) ?? false;\n }\n\n public getContent(): string | null {\n return this.widgetRef.value?.getContent() ?? null;\n }\n\n public getSelection(): string | null {\n return this.widgetRef.value?.getSelection() ?? null;\n }\n\n public getSnippet(lines: number = 5): { snippet: string; cursorLine: number } | null {\n return this.widgetRef.value?.getSnippet(lines) ?? null;\n }\n\n public getFilePath(): string | null {\n return this.input?.data?.getWorkspacePath() ?? null;\n }\n\n protected renderContent() {\n if (this.initialContent === undefined) {\n return html`<div class=\"monaco-editor-placeholder\"></div>`;\n }\n return html`\n <docks-monaco-widget\n .value=${this.initialContent}\n .uri=${this.initialUri}\n .language=${this.initialLanguage}\n .readOnly=${this.readOnly}\n @content-change=${this._onContentChange}\n ${ref(this.widgetRef)}\n ></docks-monaco-widget>\n `;\n }\n\n static styles = css`\n :host {\n display: flex;\n flex-direction: column;\n position: relative;\n width: 100%;\n height: 100%;\n }\n .monaco-editor-placeholder {\n flex: 1;\n min-height: 0;\n }\n `;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'docks-monaco-editor': DocksMonacoEditor;\n }\n}\n"],"mappings":";;;;;;;AASO,IAAM,oBAAN,MAAM,0BAA0B,UAA2C;;;EAInD,KAAA,WAAA;EAGkB,KAAA,iBAAA,KAAA;EAEJ,KAAA,aAAA,KAAA;EAEK,KAAA,kBAAA,KAAA;EAE1B,KAAA,YAAA,UAA6B;EAWhB,KAAA,yBAAA;GAC7B,KAAK,UAAU,IAAI;EACvB;;CAXA,MAAgB,WAAW;EACvB,MAAM,OAAO,KAAK,MAAO;EACzB,MAAM,eAAe,MAAM,KAAK,YAAY;EAC5C,KAAK,iBAAiB;EACtB,KAAK,aAAa,KAAK,iBAAiB;EACxC,KAAK,kBAAkB,KAAA;EACvB,KAAK,cAAc;CACvB;CAMA,YAAmB;EACf,OAAO,KAAK,UAAU,OAAO,UAAU,KAAK,KAAA;CAChD;CAEA,OAAa;EACT,MAAM,QAAQ,KAAK,UAAU,OAAO,WAAW,KAAK;EACpD,KAAK,OAAO,KAAK,aAAa,KAAK;EACnC,KAAK,UAAU,KAAK;CACxB;CAEA,UAAoB;EAChB,KAAK,UAAU,OAAO,QAAQ;CAClC;CAEA,cAAoC;EAChC,OAAO,KAAK,UAAU,OAAO,YAAY,KAAK;CAClD;CAEA,WAAkB,MAAuB;EACrC,OAAO,KAAK,UAAU,OAAO,WAAW,IAAI,KAAK;CACrD;CAEA,aAAmC;EAC/B,OAAO,KAAK,UAAU,OAAO,WAAW,KAAK;CACjD;CAEA,eAAqC;EACjC,OAAO,KAAK,UAAU,OAAO,aAAa,KAAK;CACnD;CAEA,WAAkB,QAAgB,GAAmD;EACjF,OAAO,KAAK,UAAU,OAAO,WAAW,KAAK,KAAK;CACtD;CAEA,cAAoC;EAChC,OAAO,KAAK,OAAO,MAAM,iBAAiB,KAAK;CACnD;CAEA,gBAA0B;EACtB,IAAI,KAAK,mBAAmB,KAAA,GACxB,OAAO,IAAI;EAEf,OAAO,IAAI;;yBAEM,KAAK,eAAe;uBACtB,KAAK,WAAW;4BACX,KAAK,gBAAgB;4BACrB,KAAK,SAAS;kCACR,KAAK,iBAAiB;kBACtC,IAAI,KAAK,SAAS,EAAE;;;CAGlC;;EAEgB,KAAA,SAAA,GAAG;;;;;;;;;;;;;;AAavB;AA9FK,UAAA,CAAA,SAAS,EAAE,WAAW,MAAM,CAAC,CAAA,GAAA,kBAAA,WAAA,SAAA,KAAA,CAAA;AAE7B,UAAA,CAAA,SAAS,CAAA,GAAA,kBAAA,WAAA,YAAA,KAAA,CAAA;AAGT,UAAA,CAAA,MAAM,CAAA,GAAA,kBAAA,WAAA,kBAAA,KAAA,CAAA;AAEN,UAAA,CAAA,MAAM,CAAA,GAAA,kBAAA,WAAA,cAAA,KAAA,CAAA;AAEN,UAAA,CAAA,MAAM,CAAA,GAAA,kBAAA,WAAA,mBAAA,KAAA,CAAA;AAXV,oBAAA,UAAA,CAAA,cAAc,qBAAqB,CAAA,GAAA,iBAAA"}
|
|
@@ -6,7 +6,7 @@ editorRegistry.registerEditorInputHandler({
|
|
|
6
6
|
label: "Code",
|
|
7
7
|
icon: "file-pen",
|
|
8
8
|
lazyInit: async () => {
|
|
9
|
-
await import("./monaco-editor-
|
|
9
|
+
await import("./monaco-editor-Ba9ZMs5G.js");
|
|
10
10
|
},
|
|
11
11
|
canHandle: (input) => input instanceof File,
|
|
12
12
|
handle: async (input) => {
|
|
@@ -24,4 +24,4 @@ editorRegistry.registerEditorInputHandler({
|
|
|
24
24
|
});
|
|
25
25
|
//#endregion
|
|
26
26
|
|
|
27
|
-
//# sourceMappingURL=monaco-editor-extension-
|
|
27
|
+
//# sourceMappingURL=monaco-editor-extension-DkYWNcUL.js.map
|
package/dist/{monaco-editor-extension-D3ofvJeE.js.map → monaco-editor-extension-DkYWNcUL.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"monaco-editor-extension-
|
|
1
|
+
{"version":3,"file":"monaco-editor-extension-DkYWNcUL.js","names":[],"sources":["../src/monaco-editor-extension.ts"],"sourcesContent":["import { html } from \"lit\";\nimport { EditorInput, editorRegistry, File } from \"@eclipse-docks/core\";\n\neditorRegistry.registerEditorInputHandler({\n editorId: \"system.monaco-editor\",\n label: \"Code\",\n icon: \"file-pen\",\n lazyInit: async () => {\n await import('./monaco-editor');\n },\n canHandle: (input: unknown) =>\n input instanceof File,\n handle: async (input: File) => {\n const editorInput = {\n title: input.getWorkspacePath(),\n data: input,\n key: input.getWorkspacePath(),\n icon: editorRegistry.getFileIcon(input.getName()),\n state: {},\n } as EditorInput\n editorInput.component = (id: string) => html`\n <docks-monaco-editor id=${id} .input=${editorInput}></docks-monaco-editor>`\n return editorInput;\n }\n})\n"],"mappings":";;;AAGA,eAAe,2BAA2B;CACtC,UAAU;CACV,OAAO;CACP,MAAM;CACN,UAAU,YAAY;EAClB,MAAM,OAAO;CACjB;CACA,YAAY,UACR,iBAAiB;CACrB,QAAQ,OAAO,UAAgB;EAC3B,MAAM,cAAc;GAChB,OAAO,MAAM,iBAAiB;GAC9B,MAAM;GACN,KAAK,MAAM,iBAAiB;GAC5B,MAAM,eAAe,YAAY,MAAM,QAAQ,CAAC;GAChD,OAAO,CAAC;EACZ;EACA,YAAY,aAAa,OAAe,IAAI;sCACd,GAAG,UAAU,YAAY;EACvD,OAAO;CACX;AACJ,CAAC"}
|
|
@@ -2616,6 +2616,7 @@ var DocksMonacoWidget = class DocksMonacoWidget extends LitElement {
|
|
|
2616
2616
|
this.theme = "vs-dark";
|
|
2617
2617
|
this.autoLayout = false;
|
|
2618
2618
|
this.containerRef = createRef();
|
|
2619
|
+
this.detachEpoch = 0;
|
|
2619
2620
|
}
|
|
2620
2621
|
getMonacoTheme() {
|
|
2621
2622
|
const root = document.documentElement;
|
|
@@ -2683,6 +2684,18 @@ var DocksMonacoWidget = class DocksMonacoWidget extends LitElement {
|
|
|
2683
2684
|
this.resizeObserver.observe(container);
|
|
2684
2685
|
this.setupThemeObserver();
|
|
2685
2686
|
}
|
|
2687
|
+
connectedCallback() {
|
|
2688
|
+
const moved = this.detachEpoch > 0;
|
|
2689
|
+
this.detachEpoch++;
|
|
2690
|
+
super.connectedCallback();
|
|
2691
|
+
if (!moved) return;
|
|
2692
|
+
if (this.editor) {
|
|
2693
|
+
this.layout();
|
|
2694
|
+
requestAnimationFrame(() => this.layout());
|
|
2695
|
+
return;
|
|
2696
|
+
}
|
|
2697
|
+
this.ensureEditor();
|
|
2698
|
+
}
|
|
2686
2699
|
firstUpdated(_changedProperties) {
|
|
2687
2700
|
super.firstUpdated(_changedProperties);
|
|
2688
2701
|
this.ensureEditor();
|
|
@@ -2692,8 +2705,12 @@ var DocksMonacoWidget = class DocksMonacoWidget extends LitElement {
|
|
|
2692
2705
|
if (changedProperties.has("value") || changedProperties.has("language") || changedProperties.has("uri")) this.ensureEditor();
|
|
2693
2706
|
}
|
|
2694
2707
|
disconnectedCallback() {
|
|
2695
|
-
this.dispose();
|
|
2696
2708
|
super.disconnectedCallback();
|
|
2709
|
+
const epoch = ++this.detachEpoch;
|
|
2710
|
+
queueMicrotask(() => {
|
|
2711
|
+
if (this.detachEpoch !== epoch || this.isConnected) return;
|
|
2712
|
+
this.dispose();
|
|
2713
|
+
});
|
|
2697
2714
|
}
|
|
2698
2715
|
dispose() {
|
|
2699
2716
|
this.resizeObserver?.disconnect();
|
|
@@ -2800,4 +2817,4 @@ DocksMonacoWidget = _decorate([customElement("docks-monaco-widget")], DocksMonac
|
|
|
2800
2817
|
//#endregion
|
|
2801
2818
|
export { DocksMonacoWidget as t };
|
|
2802
2819
|
|
|
2803
|
-
//# sourceMappingURL=monaco-widget-
|
|
2820
|
+
//# sourceMappingURL=monaco-widget-cfbcKlgw.js.map
|