@aiao/code-editor 0.0.2 → 0.0.5
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/LICENSE +21 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1 -0
- package/package.json +21 -23
- package/fesm2022/aiao-code-editor.mjs +0 -349
- package/fesm2022/aiao-code-editor.mjs.map +0 -1
- package/index.d.ts +0 -129
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 Aiao Team
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,MAAM,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
package/package.json
CHANGED
|
@@ -1,30 +1,28 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aiao/code-editor",
|
|
3
|
-
"version": "0.0.
|
|
4
|
-
"
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
"@angular/core": "~20.1.6",
|
|
9
|
-
"@angular/forms": "~20.1.6",
|
|
10
|
-
"@angular/common": "~20.1.6"
|
|
11
|
-
},
|
|
12
|
-
"sideEffects": false,
|
|
13
|
-
"publishConfig": {
|
|
14
|
-
"access": "public"
|
|
15
|
-
},
|
|
16
|
-
"module": "fesm2022/aiao-code-editor.mjs",
|
|
17
|
-
"typings": "index.d.ts",
|
|
3
|
+
"version": "0.0.5",
|
|
4
|
+
"type": "module",
|
|
5
|
+
"main": "./dist/index.js",
|
|
6
|
+
"module": "./dist/index.js",
|
|
7
|
+
"types": "./dist/index.d.ts",
|
|
18
8
|
"exports": {
|
|
19
|
-
"./package.json":
|
|
20
|
-
"default": "./package.json"
|
|
21
|
-
},
|
|
9
|
+
"./package.json": "./package.json",
|
|
22
10
|
".": {
|
|
23
|
-
"
|
|
24
|
-
"
|
|
11
|
+
"@aiao/source": "./src/index.ts",
|
|
12
|
+
"types": "./dist/index.d.ts",
|
|
13
|
+
"import": "./dist/index.js",
|
|
14
|
+
"default": "./dist/index.js"
|
|
25
15
|
}
|
|
26
16
|
},
|
|
27
|
-
"
|
|
28
|
-
"
|
|
29
|
-
|
|
17
|
+
"files": [
|
|
18
|
+
"dist",
|
|
19
|
+
"!**/*.tsbuildinfo"
|
|
20
|
+
],
|
|
21
|
+
"nx": {
|
|
22
|
+
"name": "code-editor",
|
|
23
|
+
"tags": [
|
|
24
|
+
"js-lib"
|
|
25
|
+
]
|
|
26
|
+
},
|
|
27
|
+
"dependencies": {}
|
|
30
28
|
}
|
|
@@ -1,349 +0,0 @@
|
|
|
1
|
-
import * as i0 from '@angular/core';
|
|
2
|
-
import { signal, inject, PLATFORM_ID, Injectable, ElementRef, DestroyRef, input, booleanAttribute, output, linkedSignal, Directive, forwardRef, ChangeDetectionStrategy, Component, makeEnvironmentProviders } from '@angular/core';
|
|
3
|
-
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
4
|
-
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
5
|
-
import { ResizeObserverService, WA_RESIZE_OPTION_BOX } from '@ng-web-apis/resize-observer';
|
|
6
|
-
import { BehaviorSubject, Subject, filter, skip } from 'rxjs';
|
|
7
|
-
import { isPlatformBrowser } from '@angular/common';
|
|
8
|
-
|
|
9
|
-
class CodeEditorOptions {
|
|
10
|
-
version;
|
|
11
|
-
baseUrl;
|
|
12
|
-
typingsWorkerUrl;
|
|
13
|
-
}
|
|
14
|
-
const CODE_EDIT_DEFAULT_OPTIONS = {
|
|
15
|
-
lineNumbers: 'on',
|
|
16
|
-
contextmenu: false,
|
|
17
|
-
minimap: {
|
|
18
|
-
enabled: false
|
|
19
|
-
}
|
|
20
|
-
};
|
|
21
|
-
|
|
22
|
-
class CodeEditorService {
|
|
23
|
-
#loadedSub = new BehaviorSubject({ monaco: null });
|
|
24
|
-
#loading = signal(false, ...(ngDevMode ? [{ debugName: "#loading" }] : []));
|
|
25
|
-
_monaco;
|
|
26
|
-
typingsWorker;
|
|
27
|
-
baseUrl;
|
|
28
|
-
typingsWorkerUrl;
|
|
29
|
-
isBrowser = isPlatformBrowser(inject(PLATFORM_ID));
|
|
30
|
-
loadingTypings = new BehaviorSubject(false);
|
|
31
|
-
typingsLoaded = new Subject();
|
|
32
|
-
monaco$ = this.#loadedSub.asObservable().pipe(filter(d => !!d.monaco));
|
|
33
|
-
get monaco() {
|
|
34
|
-
return this._monaco;
|
|
35
|
-
}
|
|
36
|
-
constructor() {
|
|
37
|
-
const options = inject(CodeEditorOptions, { optional: true });
|
|
38
|
-
const version = options?.version || '0.52.2';
|
|
39
|
-
let baseurl = `https://cdn.bootcdn.net/ajax/libs/monaco-editor/${version}/min`;
|
|
40
|
-
if (options?.baseUrl) {
|
|
41
|
-
baseurl = options?.baseUrl;
|
|
42
|
-
}
|
|
43
|
-
this.baseUrl = baseurl;
|
|
44
|
-
this.typingsWorkerUrl = options?.typingsWorkerUrl || ``;
|
|
45
|
-
}
|
|
46
|
-
loadTypings(dependencies) {
|
|
47
|
-
if (dependencies && dependencies.length > 0) {
|
|
48
|
-
const worker = this.loadTypingsWorker();
|
|
49
|
-
if (worker) {
|
|
50
|
-
this.loadingTypings.next(true);
|
|
51
|
-
worker.postMessage({
|
|
52
|
-
dependencies
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
loadEditor() {
|
|
58
|
-
if (!this.#loading()) {
|
|
59
|
-
this.#loadMonaco();
|
|
60
|
-
}
|
|
61
|
-
return this.monaco$;
|
|
62
|
-
}
|
|
63
|
-
setTheme(themeName) {
|
|
64
|
-
this.monaco.editor.setTheme(themeName);
|
|
65
|
-
}
|
|
66
|
-
createEditor(containerElement, options) {
|
|
67
|
-
return this.monaco.editor.create(containerElement, options);
|
|
68
|
-
}
|
|
69
|
-
createDiffEditor(domElement, options, override) {
|
|
70
|
-
return this.monaco.editor.createDiffEditor(domElement, options, override);
|
|
71
|
-
}
|
|
72
|
-
createModel(value, language, uri) {
|
|
73
|
-
return this.monaco.editor.createModel(value, language, uri ? undefined : this.monaco.Uri.file(uri));
|
|
74
|
-
}
|
|
75
|
-
setModelLanguage(model, mimeTypeOrLanguageId) {
|
|
76
|
-
if (this.monaco && model) {
|
|
77
|
-
this.monaco.editor.setModelLanguage(model, mimeTypeOrLanguageId);
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
loadTypingsWorker() {
|
|
81
|
-
if (!this.typingsWorker && window.Worker) {
|
|
82
|
-
if (this.typingsWorkerUrl.startsWith('http')) {
|
|
83
|
-
const proxyScript = `importScripts('${this.typingsWorkerUrl}');`;
|
|
84
|
-
const proxy = URL.createObjectURL(new Blob([proxyScript], { type: 'text/javascript' }));
|
|
85
|
-
this.typingsWorker = new Worker(proxy);
|
|
86
|
-
}
|
|
87
|
-
else {
|
|
88
|
-
this.typingsWorker = new Worker(this.typingsWorkerUrl);
|
|
89
|
-
}
|
|
90
|
-
this.typingsWorker.addEventListener('message', e => {
|
|
91
|
-
this.loadingTypings.next(false);
|
|
92
|
-
this.typingsLoaded.next(e.data);
|
|
93
|
-
});
|
|
94
|
-
}
|
|
95
|
-
return this.typingsWorker;
|
|
96
|
-
}
|
|
97
|
-
#loadMonaco() {
|
|
98
|
-
if (this.#loading() === true)
|
|
99
|
-
return;
|
|
100
|
-
this.#loading.set(true);
|
|
101
|
-
const onGotAmdLoader = () => {
|
|
102
|
-
window.require.config({
|
|
103
|
-
paths: { vs: `${this.baseUrl}/vs` },
|
|
104
|
-
'vs/nls': {
|
|
105
|
-
availableLanguages: {
|
|
106
|
-
'*': 'zh-cn'
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
});
|
|
110
|
-
if (this.baseUrl.startsWith('http')) {
|
|
111
|
-
const proxyScript = `
|
|
112
|
-
self.MonacoEnvironment = {
|
|
113
|
-
baseUrl: "${this.baseUrl}"
|
|
114
|
-
};
|
|
115
|
-
importScripts('${this.baseUrl}/vs/base/worker/workerMain.js');
|
|
116
|
-
`;
|
|
117
|
-
const proxy = URL.createObjectURL(new Blob([proxyScript], { type: 'text/javascript' }));
|
|
118
|
-
window['MonacoEnvironment'] = {
|
|
119
|
-
getWorkerUrl: function () {
|
|
120
|
-
return proxy;
|
|
121
|
-
}
|
|
122
|
-
};
|
|
123
|
-
}
|
|
124
|
-
window.require(['vs/editor/editor.main'], () => {
|
|
125
|
-
this._monaco = window['monaco'];
|
|
126
|
-
this.#loadedSub.next({ monaco: this._monaco });
|
|
127
|
-
});
|
|
128
|
-
};
|
|
129
|
-
if (!window.require) {
|
|
130
|
-
const loaderScript = document.createElement('script');
|
|
131
|
-
loaderScript.type = 'text/javascript';
|
|
132
|
-
loaderScript.src = `${this.baseUrl}/vs/loader.js`;
|
|
133
|
-
loaderScript.addEventListener('load', onGotAmdLoader);
|
|
134
|
-
document.body.appendChild(loaderScript);
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: CodeEditorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
138
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: CodeEditorService, providedIn: 'root' });
|
|
139
|
-
}
|
|
140
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: CodeEditorService, decorators: [{
|
|
141
|
-
type: Injectable,
|
|
142
|
-
args: [{ providedIn: 'root' }]
|
|
143
|
-
}], ctorParameters: () => [] });
|
|
144
|
-
|
|
145
|
-
class AbstractCodeEditor {
|
|
146
|
-
_elementRef = inject(ElementRef);
|
|
147
|
-
_codeEditorService = inject(CodeEditorService);
|
|
148
|
-
_isBrowser = isPlatformBrowser(inject(PLATFORM_ID));
|
|
149
|
-
_destroyRef = inject(DestroyRef);
|
|
150
|
-
_value;
|
|
151
|
-
_onChange;
|
|
152
|
-
_onTouched;
|
|
153
|
-
options = input({}, ...(ngDevMode ? [{ debugName: "options" }] : []));
|
|
154
|
-
theme = input('vs-dark', ...(ngDevMode ? [{ debugName: "theme" }] : []));
|
|
155
|
-
disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled", transform: booleanAttribute }] : [{ transform: booleanAttribute }]));
|
|
156
|
-
valueChange = output();
|
|
157
|
-
$disabled = linkedSignal(this.disabled);
|
|
158
|
-
formatDocument() {
|
|
159
|
-
this.runAction('editor.action.formatDocument');
|
|
160
|
-
}
|
|
161
|
-
writeValue(value) {
|
|
162
|
-
this._value = value;
|
|
163
|
-
}
|
|
164
|
-
registerOnChange(fn) {
|
|
165
|
-
this._onChange = fn;
|
|
166
|
-
}
|
|
167
|
-
registerOnTouched(fn) {
|
|
168
|
-
this._onTouched = fn;
|
|
169
|
-
}
|
|
170
|
-
setDisabledState(isDisabled) {
|
|
171
|
-
this.$disabled.set(isDisabled);
|
|
172
|
-
}
|
|
173
|
-
async ngAfterViewInit() {
|
|
174
|
-
if (!this._isBrowser)
|
|
175
|
-
return;
|
|
176
|
-
this._codeEditorService
|
|
177
|
-
.loadEditor()
|
|
178
|
-
.pipe(takeUntilDestroyed(this._destroyRef))
|
|
179
|
-
.subscribe(monaco => {
|
|
180
|
-
if (monaco) {
|
|
181
|
-
this.initMonaco();
|
|
182
|
-
}
|
|
183
|
-
});
|
|
184
|
-
}
|
|
185
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: AbstractCodeEditor, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
186
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.1.7", type: AbstractCodeEditor, isStandalone: true, inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, theme: { classPropertyName: "theme", publicName: "theme", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valueChange: "valueChange" }, ngImport: i0 });
|
|
187
|
-
}
|
|
188
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: AbstractCodeEditor, decorators: [{
|
|
189
|
-
type: Directive
|
|
190
|
-
}] });
|
|
191
|
-
|
|
192
|
-
class CodeDiffEditor extends AbstractCodeEditor {
|
|
193
|
-
entries$ = inject(ResizeObserverService);
|
|
194
|
-
_diffEditor;
|
|
195
|
-
model = input(...(ngDevMode ? [undefined, { debugName: "model" }] : []));
|
|
196
|
-
ngOnInit() {
|
|
197
|
-
this.entries$.pipe(skip(1), takeUntilDestroyed(this._destroyRef)).subscribe(() => {
|
|
198
|
-
this._diffEditor?.layout();
|
|
199
|
-
});
|
|
200
|
-
}
|
|
201
|
-
runAction(id, args) {
|
|
202
|
-
return this._diffEditor?.getModifiedEditor()?.getAction(id)?.run(args);
|
|
203
|
-
}
|
|
204
|
-
initMonaco() {
|
|
205
|
-
const model = this.model() || {};
|
|
206
|
-
const domElement = this._elementRef.nativeElement;
|
|
207
|
-
const language = model.language || 'text';
|
|
208
|
-
const modifiedModel = this._codeEditorService.createModel('', language, `code-modified-${Date.now()}`);
|
|
209
|
-
const originalModel = this._codeEditorService.createModel('', language, `code-original-${Date.now()}`);
|
|
210
|
-
const options = Object.assign({}, CODE_EDIT_DEFAULT_OPTIONS, this.options, {
|
|
211
|
-
theme: this.theme()
|
|
212
|
-
});
|
|
213
|
-
this._diffEditor = this._codeEditorService.createDiffEditor(domElement, options);
|
|
214
|
-
this._diffEditor.setModel({
|
|
215
|
-
original: originalModel,
|
|
216
|
-
modified: modifiedModel
|
|
217
|
-
});
|
|
218
|
-
}
|
|
219
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: CodeDiffEditor, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
220
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.7", type: CodeDiffEditor, isStandalone: true, selector: "ao-code-diff-editor", inputs: { model: { classPropertyName: "model", publicName: "model", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
|
|
221
|
-
ResizeObserverService,
|
|
222
|
-
{
|
|
223
|
-
provide: WA_RESIZE_OPTION_BOX,
|
|
224
|
-
useValue: 'border-box'
|
|
225
|
-
},
|
|
226
|
-
{
|
|
227
|
-
provide: NG_VALUE_ACCESSOR,
|
|
228
|
-
useExisting: forwardRef(() => CodeDiffEditor),
|
|
229
|
-
multi: true
|
|
230
|
-
}
|
|
231
|
-
], usesInheritance: true, ngImport: i0, template: '', isInline: true, styles: [":host{display:block;width:100%;height:100%}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
232
|
-
}
|
|
233
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: CodeDiffEditor, decorators: [{
|
|
234
|
-
type: Component,
|
|
235
|
-
args: [{ selector: 'ao-code-diff-editor', template: '', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
236
|
-
ResizeObserverService,
|
|
237
|
-
{
|
|
238
|
-
provide: WA_RESIZE_OPTION_BOX,
|
|
239
|
-
useValue: 'border-box'
|
|
240
|
-
},
|
|
241
|
-
{
|
|
242
|
-
provide: NG_VALUE_ACCESSOR,
|
|
243
|
-
useExisting: forwardRef(() => CodeDiffEditor),
|
|
244
|
-
multi: true
|
|
245
|
-
}
|
|
246
|
-
], styles: [":host{display:block;width:100%;height:100%}\n"] }]
|
|
247
|
-
}] });
|
|
248
|
-
|
|
249
|
-
class CodeEditor extends AbstractCodeEditor {
|
|
250
|
-
entries$ = inject(ResizeObserverService);
|
|
251
|
-
_editor;
|
|
252
|
-
_model;
|
|
253
|
-
model = input.required(...(ngDevMode ? [{ debugName: "model" }] : []));
|
|
254
|
-
get editor() {
|
|
255
|
-
return this._editor;
|
|
256
|
-
}
|
|
257
|
-
writeValue(value) {
|
|
258
|
-
super.writeValue(value);
|
|
259
|
-
this._model?.setValue(this._value || '');
|
|
260
|
-
}
|
|
261
|
-
ngOnInit() {
|
|
262
|
-
this.entries$.pipe(skip(1), takeUntilDestroyed(this._destroyRef)).subscribe(() => {
|
|
263
|
-
this._editor?.layout();
|
|
264
|
-
});
|
|
265
|
-
}
|
|
266
|
-
ngOnChanges(changes) {
|
|
267
|
-
if (!this._editor)
|
|
268
|
-
return;
|
|
269
|
-
if (changes['theme']) {
|
|
270
|
-
this._codeEditorService.setTheme(this.theme());
|
|
271
|
-
}
|
|
272
|
-
}
|
|
273
|
-
ngOnDestroy() {
|
|
274
|
-
if (this._editor) {
|
|
275
|
-
this._editor.dispose();
|
|
276
|
-
this._editor = undefined;
|
|
277
|
-
}
|
|
278
|
-
if (this._model) {
|
|
279
|
-
this._model.dispose();
|
|
280
|
-
this._model = undefined;
|
|
281
|
-
}
|
|
282
|
-
}
|
|
283
|
-
runAction(id, args) {
|
|
284
|
-
return this._editor?.getAction(id)?.run(args);
|
|
285
|
-
}
|
|
286
|
-
initMonaco() {
|
|
287
|
-
const domElement = this._elementRef.nativeElement;
|
|
288
|
-
const model = this.model();
|
|
289
|
-
const settings = {
|
|
290
|
-
value: '',
|
|
291
|
-
language: 'text',
|
|
292
|
-
uri: `demo.text`,
|
|
293
|
-
...model
|
|
294
|
-
};
|
|
295
|
-
const value = this._value ?? settings.value;
|
|
296
|
-
this._model = this._codeEditorService.createModel(value, settings.language, settings.uri);
|
|
297
|
-
const options = Object.assign({}, CODE_EDIT_DEFAULT_OPTIONS, this.options, {
|
|
298
|
-
readOnly: this.disabled(),
|
|
299
|
-
theme: this.theme(),
|
|
300
|
-
model: this._model,
|
|
301
|
-
scrollbar: { verticalScrollbarSize: 10, horizontalScrollbarSize: 10 }
|
|
302
|
-
});
|
|
303
|
-
this._editor = this._codeEditorService.createEditor(domElement, options);
|
|
304
|
-
this._model.onDidChangeContent((e) => {
|
|
305
|
-
const newValue = this._model.getValue();
|
|
306
|
-
this.valueChange.emit(newValue);
|
|
307
|
-
});
|
|
308
|
-
}
|
|
309
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: CodeEditor, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
310
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1.7", type: CodeEditor, isStandalone: true, selector: "ao-code-editor", inputs: { model: { classPropertyName: "model", publicName: "model", isSignal: true, isRequired: true, transformFunction: null } }, providers: [
|
|
311
|
-
ResizeObserverService,
|
|
312
|
-
{
|
|
313
|
-
provide: WA_RESIZE_OPTION_BOX,
|
|
314
|
-
useValue: 'border-box'
|
|
315
|
-
},
|
|
316
|
-
{
|
|
317
|
-
provide: NG_VALUE_ACCESSOR,
|
|
318
|
-
useExisting: forwardRef(() => CodeEditor),
|
|
319
|
-
multi: true
|
|
320
|
-
}
|
|
321
|
-
], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: '', isInline: true, styles: [":host{display:block;width:100%;height:100%}:is() .monaco-editor .scrollbar .slider{border-radius:10px}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
322
|
-
}
|
|
323
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.7", ngImport: i0, type: CodeEditor, decorators: [{
|
|
324
|
-
type: Component,
|
|
325
|
-
args: [{ selector: 'ao-code-editor', template: '', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
326
|
-
ResizeObserverService,
|
|
327
|
-
{
|
|
328
|
-
provide: WA_RESIZE_OPTION_BOX,
|
|
329
|
-
useValue: 'border-box'
|
|
330
|
-
},
|
|
331
|
-
{
|
|
332
|
-
provide: NG_VALUE_ACCESSOR,
|
|
333
|
-
useExisting: forwardRef(() => CodeEditor),
|
|
334
|
-
multi: true
|
|
335
|
-
}
|
|
336
|
-
], styles: [":host{display:block;width:100%;height:100%}:is() .monaco-editor .scrollbar .slider{border-radius:10px}\n"] }]
|
|
337
|
-
}] });
|
|
338
|
-
|
|
339
|
-
/**
|
|
340
|
-
* 提供 CodeEditor 服务
|
|
341
|
-
*/
|
|
342
|
-
const provideCodeEditor = (options) => makeEnvironmentProviders([{ provide: CodeEditorOptions, useValue: options }, CodeEditorService]);
|
|
343
|
-
|
|
344
|
-
/**
|
|
345
|
-
* Generated bundle index. Do not edit.
|
|
346
|
-
*/
|
|
347
|
-
|
|
348
|
-
export { CodeDiffEditor, CodeEditor, CodeEditorService, provideCodeEditor };
|
|
349
|
-
//# sourceMappingURL=aiao-code-editor.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"aiao-code-editor.mjs","sources":["../tmp-esm2022/code-editor.interface.js","../tmp-esm2022/code-editor.service.js","../tmp-esm2022/code-editor.base.js","../tmp-esm2022/code-diff-editor.js","../tmp-esm2022/code-editor.js","../tmp-esm2022/code-editor.utils.js","../tmp-esm2022/aiao-code-editor.js"],"sourcesContent":["export class CodeEditorOptions {\n version;\n baseUrl;\n typingsWorkerUrl;\n}\nexport const CODE_EDIT_DEFAULT_OPTIONS = {\n lineNumbers: 'on',\n contextmenu: false,\n minimap: {\n enabled: false\n }\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS1lZGl0b3IuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvY29kZS1lZGl0b3Ivc3JjL2NvZGUtZWRpdG9yLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEyQkEsTUFBTSxPQUFPLGlCQUFpQjtJQUM1QixPQUFPLENBQVU7SUFDakIsT0FBTyxDQUFVO0lBQ2pCLGdCQUFnQixDQUFVO0NBQzNCO0FBRUQsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQWdEO0lBQ3BGLFdBQVcsRUFBRSxJQUFJO0lBQ2pCLFdBQVcsRUFBRSxLQUFLO0lBQ2xCLE9BQU8sRUFBRTtRQUNQLE9BQU8sRUFBRSxLQUFLO0tBQ2Y7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBlZGl0b3IgfSBmcm9tICdtb25hY28tZWRpdG9yJztcblxuZXhwb3J0IGludGVyZmFjZSBDb2RlRWRpdE1vZGVsIHtcbiAgbGFuZ3VhZ2U/OiBzdHJpbmc7XG4gIHZhbHVlPzogc3RyaW5nO1xuICB1cmk/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29kZURpZmZFZGl0TW9kZWwge1xuICBsYW5ndWFnZT86IHN0cmluZztcbiAgdmFsdWU/OiBzdHJpbmc7XG4gIG9yaWdpbmFsPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFR5cGluZ3NJbmZvXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVHlwaW5nc0luZm8ge1xuICBlbnRyeVBvaW50czogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcbiAgZmlsZXM6IEFycmF5PHtcbiAgICBjb250ZW50OiBzdHJpbmc7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIHVybDogc3RyaW5nO1xuICAgIHBhdGg6IHN0cmluZztcbiAgfT47XG59XG5cbmV4cG9ydCBjbGFzcyBDb2RlRWRpdG9yT3B0aW9ucyB7XG4gIHZlcnNpb24/OiBzdHJpbmc7XG4gIGJhc2VVcmw/OiBzdHJpbmc7XG4gIHR5cGluZ3NXb3JrZXJVcmw/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjb25zdCBDT0RFX0VESVRfREVGQVVMVF9PUFRJT05TOiBlZGl0b3IuSVN0YW5kYWxvbmVFZGl0b3JDb25zdHJ1Y3Rpb25PcHRpb25zID0ge1xuICBsaW5lTnVtYmVyczogJ29uJyxcbiAgY29udGV4dG1lbnU6IGZhbHNlLFxuICBtaW5pbWFwOiB7XG4gICAgZW5hYmxlZDogZmFsc2VcbiAgfVxufTtcbiJdfQ==","import { isPlatformBrowser } from '@angular/common';\nimport { inject, Injectable, PLATFORM_ID, signal } from '@angular/core';\nimport { BehaviorSubject, filter, Subject } from 'rxjs';\nimport { CodeEditorOptions } from './code-editor.interface';\nimport * as i0 from \"@angular/core\";\nexport class CodeEditorService {\n #loadedSub = new BehaviorSubject({ monaco: null });\n #loading = signal(false, ...(ngDevMode ? [{ debugName: \"#loading\" }] : []));\n _monaco;\n typingsWorker;\n baseUrl;\n typingsWorkerUrl;\n isBrowser = isPlatformBrowser(inject(PLATFORM_ID));\n loadingTypings = new BehaviorSubject(false);\n typingsLoaded = new Subject();\n monaco$ = this.#loadedSub.asObservable().pipe(filter(d => !!d.monaco));\n get monaco() {\n return this._monaco;\n }\n constructor() {\n const options = inject(CodeEditorOptions, { optional: true });\n const version = options?.version || '0.52.2';\n let baseurl = `https://cdn.bootcdn.net/ajax/libs/monaco-editor/${version}/min`;\n if (options?.baseUrl) {\n baseurl = options?.baseUrl;\n }\n this.baseUrl = baseurl;\n this.typingsWorkerUrl = options?.typingsWorkerUrl || ``;\n }\n loadTypings(dependencies) {\n if (dependencies && dependencies.length > 0) {\n const worker = this.loadTypingsWorker();\n if (worker) {\n this.loadingTypings.next(true);\n worker.postMessage({\n dependencies\n });\n }\n }\n }\n loadEditor() {\n if (!this.#loading()) {\n this.#loadMonaco();\n }\n return this.monaco$;\n }\n setTheme(themeName) {\n this.monaco.editor.setTheme(themeName);\n }\n createEditor(containerElement, options) {\n return this.monaco.editor.create(containerElement, options);\n }\n createDiffEditor(domElement, options, override) {\n return this.monaco.editor.createDiffEditor(domElement, options, override);\n }\n createModel(value, language, uri) {\n return this.monaco.editor.createModel(value, language, uri ? undefined : this.monaco.Uri.file(uri));\n }\n setModelLanguage(model, mimeTypeOrLanguageId) {\n if (this.monaco && model) {\n this.monaco.editor.setModelLanguage(model, mimeTypeOrLanguageId);\n }\n }\n loadTypingsWorker() {\n if (!this.typingsWorker && window.Worker) {\n if (this.typingsWorkerUrl.startsWith('http')) {\n const proxyScript = `importScripts('${this.typingsWorkerUrl}');`;\n const proxy = URL.createObjectURL(new Blob([proxyScript], { type: 'text/javascript' }));\n this.typingsWorker = new Worker(proxy);\n }\n else {\n this.typingsWorker = new Worker(this.typingsWorkerUrl);\n }\n this.typingsWorker.addEventListener('message', e => {\n this.loadingTypings.next(false);\n this.typingsLoaded.next(e.data);\n });\n }\n return this.typingsWorker;\n }\n #loadMonaco() {\n if (this.#loading() === true)\n return;\n this.#loading.set(true);\n const onGotAmdLoader = () => {\n window.require.config({\n paths: { vs: `${this.baseUrl}/vs` },\n 'vs/nls': {\n availableLanguages: {\n '*': 'zh-cn'\n }\n }\n });\n if (this.baseUrl.startsWith('http')) {\n const proxyScript = `\n self.MonacoEnvironment = {\n baseUrl: \"${this.baseUrl}\"\n };\n importScripts('${this.baseUrl}/vs/base/worker/workerMain.js');\n `;\n const proxy = URL.createObjectURL(new Blob([proxyScript], { type: 'text/javascript' }));\n window['MonacoEnvironment'] = {\n getWorkerUrl: function () {\n return proxy;\n }\n };\n }\n window.require(['vs/editor/editor.main'], () => {\n this._monaco = window['monaco'];\n this.#loadedSub.next({ monaco: this._monaco });\n });\n };\n if (!window.require) {\n const loaderScript = document.createElement('script');\n loaderScript.type = 'text/javascript';\n loaderScript.src = `${this.baseUrl}/vs/loader.js`;\n loaderScript.addEventListener('load', onGotAmdLoader);\n document.body.appendChild(loaderScript);\n }\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.7\", ngImport: i0, type: CodeEditorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.1.7\", ngImport: i0, type: CodeEditorService, providedIn: 'root' });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.7\", ngImport: i0, type: CodeEditorService, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS1lZGl0b3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvZGUtZWRpdG9yL3NyYy9jb2RlLWVkaXRvci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFeEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3hELE9BQU8sRUFBRSxpQkFBaUIsRUFBZSxNQUFNLHlCQUF5QixDQUFDOztBQVN6RSxNQUFNLE9BQU8saUJBQWlCO0lBQzVCLFVBQVUsR0FBRyxJQUFJLGVBQWUsQ0FBNEIsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUM5RSxRQUFRLEdBQUcsTUFBTSxDQUFVLEtBQUssb0RBQUMsQ0FBQztJQUMxQixPQUFPLENBQVU7SUFDakIsYUFBYSxDQUFVO0lBQ3RCLE9BQU8sQ0FBUztJQUNoQixnQkFBZ0IsQ0FBUztJQUNsQyxTQUFTLEdBQUcsaUJBQWlCLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFFbkQsY0FBYyxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO0lBQ3JELGFBQWEsR0FBRyxJQUFJLE9BQU8sRUFBZSxDQUFDO0lBQzNDLE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLFlBQVksRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFFdkUsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsT0FBUSxDQUFDO0lBQ3ZC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cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlLCBQTEFURk9STV9JRCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgdHlwZSB7IGVkaXRvciwgbGFuZ3VhZ2VzLCBVcmkgfSBmcm9tICdtb25hY28tZWRpdG9yJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgZmlsdGVyLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDb2RlRWRpdG9yT3B0aW9ucywgVHlwaW5nc0luZm8gfSBmcm9tICcuL2NvZGUtZWRpdG9yLmludGVyZmFjZSc7XG5cbmludGVyZmFjZSBNb25hY28ge1xuICBlZGl0b3I6IHR5cGVvZiBlZGl0b3I7XG4gIGxhbmd1YWdlczogdHlwZW9mIGxhbmd1YWdlcztcbiAgVXJpOiB0eXBlb2YgVXJpO1xufVxuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIENvZGVFZGl0b3JTZXJ2aWNlIHtcbiAgI2xvYWRlZFN1YiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8eyBtb25hY286IE1vbmFjbyB8IG51bGwgfT4oeyBtb25hY286IG51bGwgfSk7XG4gICNsb2FkaW5nID0gc2lnbmFsPGJvb2xlYW4+KGZhbHNlKTtcbiAgcHJpdmF0ZSBfbW9uYWNvPzogTW9uYWNvO1xuICBwcml2YXRlIHR5cGluZ3NXb3JrZXI/OiBXb3JrZXI7XG4gIHJlYWRvbmx5IGJhc2VVcmw6IHN0cmluZztcbiAgcmVhZG9ubHkgdHlwaW5nc1dvcmtlclVybDogc3RyaW5nO1xuICBpc0Jyb3dzZXIgPSBpc1BsYXRmb3JtQnJvd3NlcihpbmplY3QoUExBVEZPUk1fSUQpKTtcblxuICBsb2FkaW5nVHlwaW5ncyA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICB0eXBpbmdzTG9hZGVkID0gbmV3IFN1YmplY3Q8VHlwaW5nc0luZm8+KCk7XG4gIG1vbmFjbyQgPSB0aGlzLiNsb2FkZWRTdWIuYXNPYnNlcnZhYmxlKCkucGlwZShmaWx0ZXIoZCA9PiAhIWQubW9uYWNvKSk7XG5cbiAgZ2V0IG1vbmFjbygpOiBNb25hY28ge1xuICAgIHJldHVybiB0aGlzLl9tb25hY28hO1xuICB9XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgY29uc3Qgb3B0aW9ucyA9IGluamVjdChDb2RlRWRpdG9yT3B0aW9ucywgeyBvcHRpb25hbDogdHJ1ZSB9KTtcbiAgICBjb25zdCB2ZXJzaW9uID0gb3B0aW9ucz8udmVyc2lvbiB8fCAnMC41Mi4yJztcbiAgICBsZXQgYmFzZXVybCA9IGBodHRwczovL2Nkbi5ib290Y2RuLm5ldC9hamF4L2xpYnMvbW9uYWNvLWVkaXRvci8ke3ZlcnNpb259L21pbmA7XG4gICAgaWYgKG9wdGlvbnM/LmJhc2VVcmwpIHtcbiAgICAgIGJhc2V1cmwgPSBvcHRpb25zPy5iYXNlVXJsO1xuICAgIH1cbiAgICB0aGlzLmJhc2VVcmwgPSBiYXNldXJsO1xuICAgIHRoaXMudHlwaW5nc1dvcmtlclVybCA9IG9wdGlvbnM/LnR5cGluZ3NXb3JrZXJVcmwgfHwgYGA7XG4gIH1cblxuICBsb2FkVHlwaW5ncyhkZXBlbmRlbmNpZXM6IHN0cmluZ1tdKSB7XG4gICAgaWYgKGRlcGVuZGVuY2llcyAmJiBkZXBlbmRlbmNpZXMubGVuZ3RoID4gMCkge1xuICAgICAgY29uc3Qgd29ya2VyID0gdGhpcy5sb2FkVHlwaW5nc1dvcmtlcigpO1xuICAgICAgaWYgKHdvcmtlcikge1xuICAgICAgICB0aGlzLmxvYWRpbmdUeXBpbmdzLm5leHQodHJ1ZSk7XG4gICAgICAgIHdvcmtlci5wb3N0TWVzc2FnZSh7XG4gICAgICAgICAgZGVwZW5kZW5jaWVzXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGxvYWRFZGl0b3IoKSB7XG4gICAgaWYgKCF0aGlzLiNsb2FkaW5nKCkpIHtcbiAgICAgIHRoaXMuI2xvYWRNb25hY28oKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMubW9uYWNvJDtcbiAgfVxuXG4gIHNldFRoZW1lKHRoZW1lTmFtZTogc3RyaW5nKSB7XG4gICAgdGhpcy5tb25hY28uZWRpdG9yLnNldFRoZW1lKHRoZW1lTmFtZSk7XG4gIH1cblxuICBjcmVhdGVFZGl0b3IoY29udGFpbmVyRWxlbWVudDogSFRNTEVsZW1lbnQsIG9wdGlvbnM/OiBlZGl0b3IuSUVkaXRvckNvbnN0cnVjdGlvbk9wdGlvbnMpOiBlZGl0b3IuSUNvZGVFZGl0b3Ige1xuICAgIHJldHVybiB0aGlzLm1vbmFjby5lZGl0b3IuY3JlYXRlKGNvbnRhaW5lckVsZW1lbnQsIG9wdGlvbnMpO1xuICB9XG5cbiAgY3JlYXRlRGlmZkVkaXRvcihcbiAgICBkb21FbGVtZW50OiBIVE1MRWxlbWVudCxcbiAgICBvcHRpb25zPzogZWRpdG9yLklTdGFuZGFsb25lRGlmZkVkaXRvckNvbnN0cnVjdGlvbk9wdGlvbnMsXG4gICAgb3ZlcnJpZGU/OiBlZGl0b3IuSUVkaXRvck92ZXJyaWRlU2VydmljZXNcbiAgKTogZWRpdG9yLklTdGFuZGFsb25lRGlmZkVkaXRvciB7XG4gICAgcmV0dXJuIHRoaXMubW9uYWNvLmVkaXRvci5jcmVhdGVEaWZmRWRpdG9yKGRvbUVsZW1lbnQsIG9wdGlvbnMsIG92ZXJyaWRlKTtcbiAgfVxuXG4gIGNyZWF0ZU1vZGVsKHZhbHVlOiBzdHJpbmcsIGxhbmd1YWdlPzogc3RyaW5nLCB1cmk/OiBzdHJpbmcpOiBlZGl0b3IuSVRleHRNb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMubW9uYWNvLmVkaXRvci5jcmVhdGVNb2RlbCh2YWx1ZSwgbGFuZ3VhZ2UsIHVyaSA/IHVuZGVmaW5lZCA6IHRoaXMubW9uYWNvLlVyaS5maWxlKHVyaSEpKTtcbiAgfVxuXG4gIHNldE1vZGVsTGFuZ3VhZ2UobW9kZWw6IGVkaXRvci5JVGV4dE1vZGVsLCBtaW1lVHlwZU9yTGFuZ3VhZ2VJZDogc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubW9uYWNvICYmIG1vZGVsKSB7XG4gICAgICB0aGlzLm1vbmFjby5lZGl0b3Iuc2V0TW9kZWxMYW5ndWFnZShtb2RlbCwgbWltZVR5cGVPckxhbmd1YWdlSWQpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgbG9hZFR5cGluZ3NXb3JrZXIoKTogV29ya2VyIHtcbiAgICBpZiAoIXRoaXMudHlwaW5nc1dvcmtlciAmJiAoPGFueT53aW5kb3cpLldvcmtlcikge1xuICAgICAgaWYgKHRoaXMudHlwaW5nc1dvcmtlclVybC5zdGFydHNXaXRoKCdodHRwJykpIHtcbiAgICAgICAgY29uc3QgcHJveHlTY3JpcHQgPSBgaW1wb3J0U2NyaXB0cygnJHt0aGlzLnR5cGluZ3NXb3JrZXJVcmx9Jyk7YDtcbiAgICAgICAgY29uc3QgcHJveHkgPSBVUkwuY3JlYXRlT2JqZWN0VVJMKG5ldyBCbG9iKFtwcm94eVNjcmlwdF0sIHsgdHlwZTogJ3RleHQvamF2YXNjcmlwdCcgfSkpO1xuICAgICAgICB0aGlzLnR5cGluZ3NXb3JrZXIgPSBuZXcgV29ya2VyKHByb3h5KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMudHlwaW5nc1dvcmtlciA9IG5ldyBXb3JrZXIodGhpcy50eXBpbmdzV29ya2VyVXJsKTtcbiAgICAgIH1cbiAgICAgIHRoaXMudHlwaW5nc1dvcmtlci5hZGRFdmVudExpc3RlbmVyKCdtZXNzYWdlJywgZSA9PiB7XG4gICAgICAgIHRoaXMubG9hZGluZ1R5cGluZ3MubmV4dChmYWxzZSk7XG4gICAgICAgIHRoaXMudHlwaW5nc0xvYWRlZC5uZXh0KGUuZGF0YSk7XG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMudHlwaW5nc1dvcmtlciE7XG4gIH1cblxuICAjbG9hZE1vbmFjbygpIHtcbiAgICBpZiAodGhpcy4jbG9hZGluZygpID09PSB0cnVlKSByZXR1cm47XG4gICAgdGhpcy4jbG9hZGluZy5zZXQodHJ1ZSk7XG5cbiAgICBjb25zdCBvbkdvdEFtZExvYWRlciA9ICgpID0+IHtcbiAgICAgICg8YW55PndpbmRvdykucmVxdWlyZS5jb25maWcoe1xuICAgICAgICBwYXRoczogeyB2czogYCR7dGhpcy5iYXNlVXJsfS92c2AgfSxcbiAgICAgICAgJ3ZzL25scyc6IHtcbiAgICAgICAgICBhdmFpbGFibGVMYW5ndWFnZXM6IHtcbiAgICAgICAgICAgICcqJzogJ3poLWNuJ1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIGlmICh0aGlzLmJhc2VVcmwuc3RhcnRzV2l0aCgnaHR0cCcpKSB7XG4gICAgICAgIGNvbnN0IHByb3h5U2NyaXB0ID0gYFxuICAgICAgICAgIHNlbGYuTW9uYWNvRW52aXJvbm1lbnQgPSB7XG4gICAgICAgICAgICBiYXNlVXJsOiBcIiR7dGhpcy5iYXNlVXJsfVwiXG4gICAgICAgICAgfTtcbiAgICAgICAgICBpbXBvcnRTY3JpcHRzKCcke3RoaXMuYmFzZVVybH0vdnMvYmFzZS93b3JrZXIvd29ya2VyTWFpbi5qcycpO1xuICAgICAgICBgO1xuICAgICAgICBjb25zdCBwcm94eSA9IFVSTC5jcmVhdGVPYmplY3RVUkwobmV3IEJsb2IoW3Byb3h5U2NyaXB0XSwgeyB0eXBlOiAndGV4dC9qYXZhc2NyaXB0JyB9KSk7XG4gICAgICAgIHdpbmRvd1snTW9uYWNvRW52aXJvbm1lbnQnXSA9IHtcbiAgICAgICAgICBnZXRXb3JrZXJVcmw6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHJldHVybiBwcm94eTtcbiAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgICB9XG5cbiAgICAgICg8YW55PndpbmRvdykucmVxdWlyZShbJ3ZzL2VkaXRvci9lZGl0b3IubWFpbiddLCAoKSA9PiB7XG4gICAgICAgIHRoaXMuX21vbmFjbyA9ICh3aW5kb3cgYXMgYW55KVsnbW9uYWNvJ10gYXMgYW55O1xuICAgICAgICB0aGlzLiNsb2FkZWRTdWIubmV4dCh7IG1vbmFjbzogdGhpcy5fbW9uYWNvISB9KTtcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBpZiAoISg8YW55PndpbmRvdykucmVxdWlyZSkge1xuICAgICAgY29uc3QgbG9hZGVyU2NyaXB0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XG4gICAgICBsb2FkZXJTY3JpcHQudHlwZSA9ICd0ZXh0L2phdmFzY3JpcHQnO1xuICAgICAgbG9hZGVyU2NyaXB0LnNyYyA9IGAke3RoaXMuYmFzZVVybH0vdnMvbG9hZGVyLmpzYDtcbiAgICAgIGxvYWRlclNjcmlwdC5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgb25Hb3RBbWRMb2FkZXIpO1xuICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChsb2FkZXJTY3JpcHQpO1xuICAgIH1cbiAgfVxufVxuIl19","import { isPlatformBrowser } from '@angular/common';\nimport { booleanAttribute, DestroyRef, Directive, ElementRef, inject, input, linkedSignal, output, PLATFORM_ID } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { CodeEditorService } from './code-editor.service';\nimport * as i0 from \"@angular/core\";\nexport class AbstractCodeEditor {\n _elementRef = inject(ElementRef);\n _codeEditorService = inject(CodeEditorService);\n _isBrowser = isPlatformBrowser(inject(PLATFORM_ID));\n _destroyRef = inject(DestroyRef);\n _value;\n _onChange;\n _onTouched;\n options = input({}, ...(ngDevMode ? [{ debugName: \"options\" }] : []));\n theme = input('vs-dark', ...(ngDevMode ? [{ debugName: \"theme\" }] : []));\n disabled = input(false, ...(ngDevMode ? [{ debugName: \"disabled\", transform: booleanAttribute }] : [{ transform: booleanAttribute }]));\n valueChange = output();\n $disabled = linkedSignal(this.disabled);\n formatDocument() {\n this.runAction('editor.action.formatDocument');\n }\n writeValue(value) {\n this._value = value;\n }\n registerOnChange(fn) {\n this._onChange = fn;\n }\n registerOnTouched(fn) {\n this._onTouched = fn;\n }\n setDisabledState(isDisabled) {\n this.$disabled.set(isDisabled);\n }\n async ngAfterViewInit() {\n if (!this._isBrowser)\n return;\n this._codeEditorService\n .loadEditor()\n .pipe(takeUntilDestroyed(this._destroyRef))\n .subscribe(monaco => {\n if (monaco) {\n this.initMonaco();\n }\n });\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.7\", ngImport: i0, type: AbstractCodeEditor, deps: [], target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.1.7\", type: AbstractCodeEditor, isStandalone: true, inputs: { options: { classPropertyName: \"options\", publicName: \"options\", isSignal: true, isRequired: false, transformFunction: null }, theme: { classPropertyName: \"theme\", publicName: \"theme\", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: \"disabled\", publicName: \"disabled\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valueChange: \"valueChange\" }, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.7\", ngImport: i0, type: AbstractCodeEditor, decorators: [{\n type: Directive\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS1lZGl0b3IuYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvZGUtZWRpdG9yL3NyYy9jb2RlLWVkaXRvci5iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BELE9BQU8sRUFFTCxnQkFBZ0IsRUFDaEIsVUFBVSxFQUNWLFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxZQUFZLEVBQ1osTUFBTSxFQUNOLFdBQVcsRUFDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUdoRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7QUFHMUQsTUFBTSxPQUFnQixrQkFBa0I7SUFDNUIsV0FBVyxHQUFHLE1BQU0sQ0FBMEIsVUFBVSxDQUFDLENBQUM7SUFDMUQsa0JBQWtCLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDL0MsVUFBVSxHQUFHLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQ3BELFdBQVcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDakMsTUFBTSxDQUFxQjtJQUMzQixTQUFTLENBQXdCO0lBQ2pDLFVBQVUsQ0FBYztJQUVsQyxPQUFPLEdBQUcsS0FBSyxDQUE4QyxFQUFFLG1EQUFDLENBQUM7SUFDakUsS0FBSyxHQUFHLEtBQUssQ0FBNEIsU0FBUyxpREFBQyxDQUFDO0lBQ3BELFFBQVEsR0FBRyxLQUFLLENBQUMsS0FBSyw0Q0FBSSxTQUFTLEVBQUUsZ0JBQWdCLE9BQTdCLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFLEdBQUMsQ0FBQztJQUN6RCxXQUFXLEdBQUcsTUFBTSxFQUFPLENBQUM7SUFFNUIsU0FBUyxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFLeEMsY0FBYztRQUNaLElBQUksQ0FBQyxTQUFTLENBQUMsOEJBQThCLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQWM7UUFDdkIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7SUFDdEIsQ0FBQztJQUNELGdCQUFnQixDQUFDLEVBQU87UUFDdEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUNELGlCQUFpQixDQUFDLEVBQU87UUFDdkIsSUFBSSxDQUFDLFVBQVUsR0FBRyxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVELGdCQUFnQixDQUFFLFVBQW1CO1FBQ25DLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxLQUFLLENBQUMsZUFBZTtRQUNuQixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVU7WUFBRSxPQUFPO1FBQzdCLElBQUksQ0FBQyxrQkFBa0I7YUFDcEIsVUFBVSxFQUFFO2FBQ1osSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQzthQUMxQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDbEIsSUFBSSxNQUFNLEVBQUUsQ0FBQztnQkFDWCxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDcEIsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzt1R0EvQ21CLGtCQUFrQjsyRkFBbEIsa0JBQWtCOzsyRkFBbEIsa0JBQWtCO2tCQUR2QyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgYm9vbGVhbkF0dHJpYnV0ZSxcbiAgRGVzdHJveVJlZixcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBpbmplY3QsXG4gIGlucHV0LFxuICBsaW5rZWRTaWduYWwsXG4gIG91dHB1dCxcbiAgUExBVEZPUk1fSURcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB0eXBlIHsgZWRpdG9yIH0gZnJvbSAnbW9uYWNvLWVkaXRvcic7XG5pbXBvcnQgeyBDb2RlRWRpdG9yU2VydmljZSB9IGZyb20gJy4vY29kZS1lZGl0b3Iuc2VydmljZSc7XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFic3RyYWN0Q29kZUVkaXRvciBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgcHJvdGVjdGVkIF9lbGVtZW50UmVmID0gaW5qZWN0PEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PihFbGVtZW50UmVmKTtcbiAgcHJvdGVjdGVkIF9jb2RlRWRpdG9yU2VydmljZSA9IGluamVjdChDb2RlRWRpdG9yU2VydmljZSk7XG4gIHByb3RlY3RlZCBfaXNCcm93c2VyID0gaXNQbGF0Zm9ybUJyb3dzZXIoaW5qZWN0KFBMQVRGT1JNX0lEKSk7XG4gIHByb3RlY3RlZCBfZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcbiAgcHJvdGVjdGVkIF92YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBwcm90ZWN0ZWQgX29uQ2hhbmdlPzogKHZhbHVlOiBhbnkpID0+IHZvaWQ7XG4gIHByb3RlY3RlZCBfb25Ub3VjaGVkPzogKCkgPT4gdm9pZDtcblxuICBvcHRpb25zID0gaW5wdXQ8ZWRpdG9yLklTdGFuZGFsb25lRWRpdG9yQ29uc3RydWN0aW9uT3B0aW9ucz4oe30pO1xuICB0aGVtZSA9IGlucHV0PHN0cmluZyB8ICd2cycgfCAndnMtZGFyayc+KCd2cy1kYXJrJyk7XG4gIGRpc2FibGVkID0gaW5wdXQoZmFsc2UsIHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pO1xuICB2YWx1ZUNoYW5nZSA9IG91dHB1dDxhbnk+KCk7XG5cbiAgJGRpc2FibGVkID0gbGlua2VkU2lnbmFsKHRoaXMuZGlzYWJsZWQpO1xuXG4gIGFic3RyYWN0IHJ1bkFjdGlvbihpZDogc3RyaW5nLCBhcmdzPzogdW5rbm93bik6IGFueTtcbiAgYWJzdHJhY3QgaW5pdE1vbmFjbygpOiB2b2lkO1xuXG4gIGZvcm1hdERvY3VtZW50KCkge1xuICAgIHRoaXMucnVuQWN0aW9uKCdlZGl0b3IuYWN0aW9uLmZvcm1hdERvY3VtZW50Jyk7XG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlPzogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5fdmFsdWUgPSB2YWx1ZTtcbiAgfVxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLl9vbkNoYW5nZSA9IGZuO1xuICB9XG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLl9vblRvdWNoZWQgPSBmbjtcbiAgfVxuXG4gIHNldERpc2FibGVkU3RhdGU/KGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLiRkaXNhYmxlZC5zZXQoaXNEaXNhYmxlZCk7XG4gIH1cblxuICBhc3luYyBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgaWYgKCF0aGlzLl9pc0Jyb3dzZXIpIHJldHVybjtcbiAgICB0aGlzLl9jb2RlRWRpdG9yU2VydmljZVxuICAgICAgLmxvYWRFZGl0b3IoKVxuICAgICAgLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuX2Rlc3Ryb3lSZWYpKVxuICAgICAgLnN1YnNjcmliZShtb25hY28gPT4ge1xuICAgICAgICBpZiAobW9uYWNvKSB7XG4gICAgICAgICAgdGhpcy5pbml0TW9uYWNvKCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG59XG4iXX0=","import { ChangeDetectionStrategy, Component, forwardRef, inject, input } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { ResizeObserverService, WA_RESIZE_OPTION_BOX } from '@ng-web-apis/resize-observer';\nimport { skip } from 'rxjs';\nimport { AbstractCodeEditor } from './code-editor.base';\nimport { CODE_EDIT_DEFAULT_OPTIONS } from './code-editor.interface';\nimport * as i0 from \"@angular/core\";\nexport class CodeDiffEditor extends AbstractCodeEditor {\n entries$ = inject(ResizeObserverService);\n _diffEditor;\n model = input(...(ngDevMode ? [undefined, { debugName: \"model\" }] : []));\n ngOnInit() {\n this.entries$.pipe(skip(1), takeUntilDestroyed(this._destroyRef)).subscribe(() => {\n this._diffEditor?.layout();\n });\n }\n runAction(id, args) {\n return this._diffEditor?.getModifiedEditor()?.getAction(id)?.run(args);\n }\n initMonaco() {\n const model = this.model() || {};\n const domElement = this._elementRef.nativeElement;\n const language = model.language || 'text';\n const modifiedModel = this._codeEditorService.createModel('', language, `code-modified-${Date.now()}`);\n const originalModel = this._codeEditorService.createModel('', language, `code-original-${Date.now()}`);\n const options = Object.assign({}, CODE_EDIT_DEFAULT_OPTIONS, this.options, {\n theme: this.theme()\n });\n this._diffEditor = this._codeEditorService.createDiffEditor(domElement, options);\n this._diffEditor.setModel({\n original: originalModel,\n modified: modifiedModel\n });\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.7\", ngImport: i0, type: CodeDiffEditor, deps: null, target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.1.0\", version: \"20.1.7\", type: CodeDiffEditor, isStandalone: true, selector: \"ao-code-diff-editor\", inputs: { model: { classPropertyName: \"model\", publicName: \"model\", isSignal: true, isRequired: false, transformFunction: null } }, providers: [\n ResizeObserverService,\n {\n provide: WA_RESIZE_OPTION_BOX,\n useValue: 'border-box'\n },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => CodeDiffEditor),\n multi: true\n }\n ], usesInheritance: true, ngImport: i0, template: '', isInline: true, styles: [\":host{display:block;width:100%;height:100%}\\n\"], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.7\", ngImport: i0, type: CodeDiffEditor, decorators: [{\n type: Component,\n args: [{ selector: 'ao-code-diff-editor', template: '', changeDetection: ChangeDetectionStrategy.OnPush, providers: [\n ResizeObserverService,\n {\n provide: WA_RESIZE_OPTION_BOX,\n useValue: 'border-box'\n },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => CodeDiffEditor),\n multi: true\n }\n ], styles: [\":host{display:block;width:100%;height:100%}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS1kaWZmLWVkaXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvZGUtZWRpdG9yL3NyYy9jb2RlLWRpZmYtZWRpdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDdEcsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFM0YsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM1QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUseUJBQXlCLEVBQXFCLE1BQU0seUJBQXlCLENBQUM7O0FBMEJ2RixNQUFNLE9BQU8sY0FBZSxTQUFRLGtCQUFrQjtJQUMxQyxRQUFRLEdBQUcsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFDekMsV0FBVyxDQUFnQztJQUVyRCxLQUFLLEdBQUcsS0FBSywyREFBcUIsQ0FBQztJQUVuQyxRQUFRO1FBQ04sSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLGtCQUFrQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDL0UsSUFBSSxDQUFDLFdBQVcsRUFBRSxNQUFNLEVBQUUsQ0FBQztRQUM3QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxTQUFTLENBQUMsRUFBVSxFQUFFLElBQWM7UUFDbEMsT0FBTyxJQUFJLENBQUMsV0FBVyxFQUFFLGlCQUFpQixFQUFFLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBRUQsVUFBVTtRQUNSLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUM7UUFDakMsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUM7UUFDbEQsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDLFFBQVEsSUFBSSxNQUFNLENBQUM7UUFDMUMsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxFQUFFLEVBQUUsUUFBUSxFQUFFLGlCQUFpQixJQUFJLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZHLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLENBQUMsRUFBRSxFQUFFLFFBQVEsRUFBRSxpQkFBaUIsSUFBSSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUN2RyxNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSx5QkFBeUIsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ3pFLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFO1NBQ3BCLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGdCQUFnQixDQUFDLFVBQVUsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUNqRixJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQztZQUN4QixRQUFRLEVBQUUsYUFBYTtZQUN2QixRQUFRLEVBQUUsYUFBYTtTQUNqQixDQUFDLENBQUM7SUFDWixDQUFDO3VHQTlCVSxjQUFjOzJGQUFkLGNBQWMsc01BYmQ7WUFDVCxxQkFBcUI7WUFDckI7Z0JBQ0UsT0FBTyxFQUFFLG9CQUFvQjtnQkFDN0IsUUFBUSxFQUFFLFlBQVk7YUFDdkI7WUFDRDtnQkFDRSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGNBQWMsQ0FBQztnQkFDN0MsS0FBSyxFQUFFLElBQUk7YUFDWjtTQUNGLGlEQXBCUyxFQUFFOzsyRkFzQkQsY0FBYztrQkF4QjFCLFNBQVM7K0JBQ0UscUJBQXFCLFlBQ3JCLEVBQUUsbUJBUUssdUJBQXVCLENBQUMsTUFBTSxhQUNwQzt3QkFDVCxxQkFBcUI7d0JBQ3JCOzRCQUNFLE9BQU8sRUFBRSxvQkFBb0I7NEJBQzdCLFFBQVEsRUFBRSxZQUFZO3lCQUN2Qjt3QkFDRDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxlQUFlLENBQUM7NEJBQzdDLEtBQUssRUFBRSxJQUFJO3lCQUNaO3FCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgZm9yd2FyZFJlZiwgaW5qZWN0LCBpbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFJlc2l6ZU9ic2VydmVyU2VydmljZSwgV0FfUkVTSVpFX09QVElPTl9CT1ggfSBmcm9tICdAbmctd2ViLWFwaXMvcmVzaXplLW9ic2VydmVyJztcbmltcG9ydCB7IGVkaXRvciB9IGZyb20gJ21vbmFjby1lZGl0b3InO1xuaW1wb3J0IHsgc2tpcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQWJzdHJhY3RDb2RlRWRpdG9yIH0gZnJvbSAnLi9jb2RlLWVkaXRvci5iYXNlJztcbmltcG9ydCB7IENPREVfRURJVF9ERUZBVUxUX09QVElPTlMsIENvZGVEaWZmRWRpdE1vZGVsIH0gZnJvbSAnLi9jb2RlLWVkaXRvci5pbnRlcmZhY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhby1jb2RlLWRpZmYtZWRpdG9yJyxcbiAgdGVtcGxhdGU6ICcnLFxuICBzdHlsZXM6IGBcbiAgICA6aG9zdCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbiAgYCxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogW1xuICAgIFJlc2l6ZU9ic2VydmVyU2VydmljZSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBXQV9SRVNJWkVfT1BUSU9OX0JPWCxcbiAgICAgIHVzZVZhbHVlOiAnYm9yZGVyLWJveCdcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQ29kZURpZmZFZGl0b3IpLFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgQ29kZURpZmZFZGl0b3IgZXh0ZW5kcyBBYnN0cmFjdENvZGVFZGl0b3IgaW1wbGVtZW50cyBPbkluaXQge1xuICBwcm90ZWN0ZWQgZW50cmllcyQgPSBpbmplY3QoUmVzaXplT2JzZXJ2ZXJTZXJ2aWNlKTtcbiAgcHJvdGVjdGVkIF9kaWZmRWRpdG9yPzogZWRpdG9yLklTdGFuZGFsb25lRGlmZkVkaXRvcjtcblxuICBtb2RlbCA9IGlucHV0PENvZGVEaWZmRWRpdE1vZGVsPigpO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZW50cmllcyQucGlwZShza2lwKDEpLCB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5fZGVzdHJveVJlZikpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLl9kaWZmRWRpdG9yPy5sYXlvdXQoKTtcbiAgICB9KTtcbiAgfVxuXG4gIHJ1bkFjdGlvbihpZDogc3RyaW5nLCBhcmdzPzogdW5rbm93bikge1xuICAgIHJldHVybiB0aGlzLl9kaWZmRWRpdG9yPy5nZXRNb2RpZmllZEVkaXRvcigpPy5nZXRBY3Rpb24oaWQpPy5ydW4oYXJncyk7XG4gIH1cblxuICBpbml0TW9uYWNvKCkge1xuICAgIGNvbnN0IG1vZGVsID0gdGhpcy5tb2RlbCgpIHx8IHt9O1xuICAgIGNvbnN0IGRvbUVsZW1lbnQgPSB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgY29uc3QgbGFuZ3VhZ2UgPSBtb2RlbC5sYW5ndWFnZSB8fCAndGV4dCc7XG4gICAgY29uc3QgbW9kaWZpZWRNb2RlbCA9IHRoaXMuX2NvZGVFZGl0b3JTZXJ2aWNlLmNyZWF0ZU1vZGVsKCcnLCBsYW5ndWFnZSwgYGNvZGUtbW9kaWZpZWQtJHtEYXRlLm5vdygpfWApO1xuICAgIGNvbnN0IG9yaWdpbmFsTW9kZWwgPSB0aGlzLl9jb2RlRWRpdG9yU2VydmljZS5jcmVhdGVNb2RlbCgnJywgbGFuZ3VhZ2UsIGBjb2RlLW9yaWdpbmFsLSR7RGF0ZS5ub3coKX1gKTtcbiAgICBjb25zdCBvcHRpb25zID0gT2JqZWN0LmFzc2lnbih7fSwgQ09ERV9FRElUX0RFRkFVTFRfT1BUSU9OUywgdGhpcy5vcHRpb25zLCB7XG4gICAgICB0aGVtZTogdGhpcy50aGVtZSgpXG4gICAgfSk7XG4gICAgdGhpcy5fZGlmZkVkaXRvciA9IHRoaXMuX2NvZGVFZGl0b3JTZXJ2aWNlLmNyZWF0ZURpZmZFZGl0b3IoZG9tRWxlbWVudCwgb3B0aW9ucyk7XG4gICAgdGhpcy5fZGlmZkVkaXRvci5zZXRNb2RlbCh7XG4gICAgICBvcmlnaW5hbDogb3JpZ2luYWxNb2RlbCxcbiAgICAgIG1vZGlmaWVkOiBtb2RpZmllZE1vZGVsXG4gICAgfSBhcyBhbnkpO1xuICB9XG59XG4iXX0=","import { ChangeDetectionStrategy, Component, forwardRef, inject, input } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { ResizeObserverService, WA_RESIZE_OPTION_BOX } from '@ng-web-apis/resize-observer';\nimport { skip } from 'rxjs';\nimport { AbstractCodeEditor } from './code-editor.base';\nimport { CODE_EDIT_DEFAULT_OPTIONS } from './code-editor.interface';\nimport * as i0 from \"@angular/core\";\nexport class CodeEditor extends AbstractCodeEditor {\n entries$ = inject(ResizeObserverService);\n _editor;\n _model;\n model = input.required(...(ngDevMode ? [{ debugName: \"model\" }] : []));\n get editor() {\n return this._editor;\n }\n writeValue(value) {\n super.writeValue(value);\n this._model?.setValue(this._value || '');\n }\n ngOnInit() {\n this.entries$.pipe(skip(1), takeUntilDestroyed(this._destroyRef)).subscribe(() => {\n this._editor?.layout();\n });\n }\n ngOnChanges(changes) {\n if (!this._editor)\n return;\n if (changes['theme']) {\n this._codeEditorService.setTheme(this.theme());\n }\n }\n ngOnDestroy() {\n if (this._editor) {\n this._editor.dispose();\n this._editor = undefined;\n }\n if (this._model) {\n this._model.dispose();\n this._model = undefined;\n }\n }\n runAction(id, args) {\n return this._editor?.getAction(id)?.run(args);\n }\n initMonaco() {\n const domElement = this._elementRef.nativeElement;\n const model = this.model();\n const settings = {\n value: '',\n language: 'text',\n uri: `demo.text`,\n ...model\n };\n const value = this._value ?? settings.value;\n this._model = this._codeEditorService.createModel(value, settings.language, settings.uri);\n const options = Object.assign({}, CODE_EDIT_DEFAULT_OPTIONS, this.options, {\n readOnly: this.disabled(),\n theme: this.theme(),\n model: this._model,\n scrollbar: { verticalScrollbarSize: 10, horizontalScrollbarSize: 10 }\n });\n this._editor = this._codeEditorService.createEditor(domElement, options);\n this._model.onDidChangeContent((e) => {\n const newValue = this._model.getValue();\n this.valueChange.emit(newValue);\n });\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.7\", ngImport: i0, type: CodeEditor, deps: null, target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.1.0\", version: \"20.1.7\", type: CodeEditor, isStandalone: true, selector: \"ao-code-editor\", inputs: { model: { classPropertyName: \"model\", publicName: \"model\", isSignal: true, isRequired: true, transformFunction: null } }, providers: [\n ResizeObserverService,\n {\n provide: WA_RESIZE_OPTION_BOX,\n useValue: 'border-box'\n },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => CodeEditor),\n multi: true\n }\n ], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: '', isInline: true, styles: [\":host{display:block;width:100%;height:100%}:is() .monaco-editor .scrollbar .slider{border-radius:10px}\\n\"], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.7\", ngImport: i0, type: CodeEditor, decorators: [{\n type: Component,\n args: [{ selector: 'ao-code-editor', template: '', changeDetection: ChangeDetectionStrategy.OnPush, providers: [\n ResizeObserverService,\n {\n provide: WA_RESIZE_OPTION_BOX,\n useValue: 'border-box'\n },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => CodeEditor),\n multi: true\n }\n ], styles: [\":host{display:block;width:100%;height:100%}:is() .monaco-editor .scrollbar .slider{border-radius:10px}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS1lZGl0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb2RlLWVkaXRvci9zcmMvY29kZS1lZGl0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLE1BQU0sRUFDTixLQUFLLEVBS04sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRTNGLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDNUIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDeEQsT0FBTyxFQUFFLHlCQUF5QixFQUFpQixNQUFNLHlCQUF5QixDQUFDOztBQStCbkYsTUFBTSxPQUFPLFVBQVcsU0FBUSxrQkFBa0I7SUFDdEMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQ3pDLE9BQU8sQ0FBc0I7SUFDN0IsTUFBTSxDQUFxQjtJQUVyQyxLQUFLLEdBQUcsS0FBSyxDQUFDLFFBQVEsZ0RBQWlCLENBQUM7SUFFeEMsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7SUFDUSxVQUFVLENBQUMsS0FBYztRQUNoQyxLQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUMvRSxJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxDQUFDO1FBQ3pCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU87WUFBRSxPQUFPO1FBQzFCLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDckIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUNqRCxDQUFDO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNqQixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxPQUFPLEdBQUcsU0FBUyxDQUFDO1FBQzNCLENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNoQixJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxNQUFNLEdBQUcsU0FBUyxDQUFDO1FBQzFCLENBQUM7SUFDSCxDQUFDO0lBRUQsU0FBUyxDQUFDLEVBQVUsRUFBRSxJQUFjO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLE9BQU8sRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRCxVQUFVO1FBQ1IsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUM7UUFDbEQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzNCLE1BQU0sUUFBUSxHQUFHO1lBQ2YsS0FBSyxFQUFFLEVBQUU7WUFDVCxRQUFRLEVBQUUsTUFBTTtZQUNoQixHQUFHLEVBQUUsV0FBVztZQUNoQixHQUFHLEtBQUs7U0FDVCxDQUFDO1FBRUYsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sSUFBSSxRQUFRLENBQUMsS0FBSyxDQUFDO1FBQzVDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDMUYsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUseUJBQXlCLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUN6RSxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUN6QixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNuQixLQUFLLEVBQUUsSUFBSSxDQUFDLE1BQU07WUFDbEIsU0FBUyxFQUFFLEVBQUUscUJBQXFCLEVBQUUsRUFBRSxFQUFFLHVCQUF1QixFQUFFLEVBQUUsRUFBRTtTQUN0RSxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRXpFLElBQUksQ0FBQyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFtQyxFQUFFLEVBQUU7WUFDckUsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLE1BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN6QyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNsQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7dUdBcEVVLFVBQVU7MkZBQVYsVUFBVSxnTUFiVjtZQUNULHFCQUFxQjtZQUNyQjtnQkFDRSxPQUFPLEVBQUUsb0JBQW9CO2dCQUM3QixRQUFRLEVBQUUsWUFBWTthQUN2QjtZQUNEO2dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsVUFBVSxDQUFDO2dCQUN6QyxLQUFLLEVBQUUsSUFBSTthQUNaO1NBQ0Ysc0VBekJTLEVBQUU7OzJGQTJCRCxVQUFVO2tCQTdCdEIsU0FBUzsrQkFDRSxnQkFBZ0IsWUFDaEIsRUFBRSxtQkFhSyx1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO3dCQUNULHFCQUFxQjt3QkFDckI7NEJBQ0UsT0FBTyxFQUFFLG9CQUFvQjs0QkFDN0IsUUFBUSxFQUFFLFlBQVk7eUJBQ3ZCO3dCQUNEOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLFdBQVcsQ0FBQzs0QkFDekMsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBmb3J3YXJkUmVmLFxuICBpbmplY3QsXG4gIGlucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBTaW1wbGVDaGFuZ2VzXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgUmVzaXplT2JzZXJ2ZXJTZXJ2aWNlLCBXQV9SRVNJWkVfT1BUSU9OX0JPWCB9IGZyb20gJ0BuZy13ZWItYXBpcy9yZXNpemUtb2JzZXJ2ZXInO1xuaW1wb3J0IHR5cGUgeyBlZGl0b3IgfSBmcm9tICdtb25hY28tZWRpdG9yJztcbmltcG9ydCB7IHNraXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFic3RyYWN0Q29kZUVkaXRvciB9IGZyb20gJy4vY29kZS1lZGl0b3IuYmFzZSc7XG5pbXBvcnQgeyBDT0RFX0VESVRfREVGQVVMVF9PUFRJT05TLCBDb2RlRWRpdE1vZGVsIH0gZnJvbSAnLi9jb2RlLWVkaXRvci5pbnRlcmZhY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhby1jb2RlLWVkaXRvcicsXG4gIHRlbXBsYXRlOiAnJyxcbiAgc3R5bGVzOiBgXG4gICAgOmhvc3Qge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG4gICAgOmhvc3QgOjpuZy1kZWVwIHtcbiAgICAgIC5tb25hY28tZWRpdG9yIC5zY3JvbGxiYXIgLnNsaWRlciB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICB9XG4gICAgfVxuICBgLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzOiBbXG4gICAgUmVzaXplT2JzZXJ2ZXJTZXJ2aWNlLFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IFdBX1JFU0laRV9PUFRJT05fQk9YLFxuICAgICAgdXNlVmFsdWU6ICdib3JkZXItYm94J1xuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBDb2RlRWRpdG9yKSxcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIENvZGVFZGl0b3IgZXh0ZW5kcyBBYnN0cmFjdENvZGVFZGl0b3IgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgT25Jbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XG4gIHByb3RlY3RlZCBlbnRyaWVzJCA9IGluamVjdChSZXNpemVPYnNlcnZlclNlcnZpY2UpO1xuICBwcm90ZWN0ZWQgX2VkaXRvcj86IGVkaXRvci5JQ29kZUVkaXRvcjtcbiAgcHJvdGVjdGVkIF9tb2RlbD86IGVkaXRvci5JVGV4dE1vZGVsO1xuXG4gIG1vZGVsID0gaW5wdXQucmVxdWlyZWQ8Q29kZUVkaXRNb2RlbD4oKTtcblxuICBnZXQgZWRpdG9yKCkge1xuICAgIHJldHVybiB0aGlzLl9lZGl0b3I7XG4gIH1cbiAgb3ZlcnJpZGUgd3JpdGVWYWx1ZSh2YWx1ZT86IHN0cmluZyk6IHZvaWQge1xuICAgIHN1cGVyLndyaXRlVmFsdWUodmFsdWUpO1xuICAgIHRoaXMuX21vZGVsPy5zZXRWYWx1ZSh0aGlzLl92YWx1ZSB8fCAnJyk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmVudHJpZXMkLnBpcGUoc2tpcCgxKSwgdGFrZVVudGlsRGVzdHJveWVkKHRoaXMuX2Rlc3Ryb3lSZWYpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5fZWRpdG9yPy5sYXlvdXQoKTtcbiAgICB9KTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoIXRoaXMuX2VkaXRvcikgcmV0dXJuO1xuICAgIGlmIChjaGFuZ2VzWyd0aGVtZSddKSB7XG4gICAgICB0aGlzLl9jb2RlRWRpdG9yU2VydmljZS5zZXRUaGVtZSh0aGlzLnRoZW1lKCkpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIGlmICh0aGlzLl9lZGl0b3IpIHtcbiAgICAgIHRoaXMuX2VkaXRvci5kaXNwb3NlKCk7XG4gICAgICB0aGlzLl9lZGl0b3IgPSB1bmRlZmluZWQ7XG4gICAgfVxuICAgIGlmICh0aGlzLl9tb2RlbCkge1xuICAgICAgdGhpcy5fbW9kZWwuZGlzcG9zZSgpO1xuICAgICAgdGhpcy5fbW9kZWwgPSB1bmRlZmluZWQ7XG4gICAgfVxuICB9XG5cbiAgcnVuQWN0aW9uKGlkOiBzdHJpbmcsIGFyZ3M/OiB1bmtub3duKSB7XG4gICAgcmV0dXJuIHRoaXMuX2VkaXRvcj8uZ2V0QWN0aW9uKGlkKT8ucnVuKGFyZ3MpO1xuICB9XG5cbiAgaW5pdE1vbmFjbygpIHtcbiAgICBjb25zdCBkb21FbGVtZW50ID0gdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgIGNvbnN0IG1vZGVsID0gdGhpcy5tb2RlbCgpO1xuICAgIGNvbnN0IHNldHRpbmdzID0ge1xuICAgICAgdmFsdWU6ICcnLFxuICAgICAgbGFuZ3VhZ2U6ICd0ZXh0JyxcbiAgICAgIHVyaTogYGRlbW8udGV4dGAsXG4gICAgICAuLi5tb2RlbFxuICAgIH07XG5cbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMuX3ZhbHVlID8/IHNldHRpbmdzLnZhbHVlO1xuICAgIHRoaXMuX21vZGVsID0gdGhpcy5fY29kZUVkaXRvclNlcnZpY2UuY3JlYXRlTW9kZWwodmFsdWUsIHNldHRpbmdzLmxhbmd1YWdlLCBzZXR0aW5ncy51cmkpO1xuICAgIGNvbnN0IG9wdGlvbnMgPSBPYmplY3QuYXNzaWduKHt9LCBDT0RFX0VESVRfREVGQVVMVF9PUFRJT05TLCB0aGlzLm9wdGlvbnMsIHtcbiAgICAgIHJlYWRPbmx5OiB0aGlzLmRpc2FibGVkKCksXG4gICAgICB0aGVtZTogdGhpcy50aGVtZSgpLFxuICAgICAgbW9kZWw6IHRoaXMuX21vZGVsLFxuICAgICAgc2Nyb2xsYmFyOiB7IHZlcnRpY2FsU2Nyb2xsYmFyU2l6ZTogMTAsIGhvcml6b250YWxTY3JvbGxiYXJTaXplOiAxMCB9XG4gICAgfSk7XG5cbiAgICB0aGlzLl9lZGl0b3IgPSB0aGlzLl9jb2RlRWRpdG9yU2VydmljZS5jcmVhdGVFZGl0b3IoZG9tRWxlbWVudCwgb3B0aW9ucyk7XG5cbiAgICB0aGlzLl9tb2RlbC5vbkRpZENoYW5nZUNvbnRlbnQoKGU6IGVkaXRvci5JTW9kZWxDb250ZW50Q2hhbmdlZEV2ZW50KSA9PiB7XG4gICAgICBjb25zdCBuZXdWYWx1ZSA9IHRoaXMuX21vZGVsIS5nZXRWYWx1ZSgpO1xuICAgICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KG5ld1ZhbHVlKTtcbiAgICB9KTtcbiAgfVxufVxuIl19","import { makeEnvironmentProviders } from '@angular/core';\nimport { CodeEditorOptions } from './code-editor.interface';\nimport { CodeEditorService } from './code-editor.service';\n/**\n * 提供 CodeEditor 服务\n */\nexport const provideCodeEditor = (options) => makeEnvironmentProviders([{ provide: CodeEditorOptions, useValue: options }, CodeEditorService]);\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS1lZGl0b3IudXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb2RlLWVkaXRvci9zcmMvY29kZS1lZGl0b3IudXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzVELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRTFEOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxPQUEyQixFQUFFLEVBQUUsQ0FDL0Qsd0JBQXdCLENBQUMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLEVBQUUsaUJBQWlCLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbWFrZUVudmlyb25tZW50UHJvdmlkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb2RlRWRpdG9yT3B0aW9ucyB9IGZyb20gJy4vY29kZS1lZGl0b3IuaW50ZXJmYWNlJztcbmltcG9ydCB7IENvZGVFZGl0b3JTZXJ2aWNlIH0gZnJvbSAnLi9jb2RlLWVkaXRvci5zZXJ2aWNlJztcblxuLyoqXG4gKiDmj5DkvpsgQ29kZUVkaXRvciDmnI3liqFcbiAqL1xuZXhwb3J0IGNvbnN0IHByb3ZpZGVDb2RlRWRpdG9yID0gKG9wdGlvbnM/OiBDb2RlRWRpdG9yT3B0aW9ucykgPT5cbiAgbWFrZUVudmlyb25tZW50UHJvdmlkZXJzKFt7IHByb3ZpZGU6IENvZGVFZGl0b3JPcHRpb25zLCB1c2VWYWx1ZTogb3B0aW9ucyB9LCBDb2RlRWRpdG9yU2VydmljZV0pO1xuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWlhby1jb2RlLWVkaXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvZGUtZWRpdG9yL3NyYy9haWFvLWNvZGUtZWRpdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19"],"names":[],"mappings":"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"}
|
package/index.d.ts
DELETED
|
@@ -1,129 +0,0 @@
|
|
|
1
|
-
import * as i0 from '@angular/core';
|
|
2
|
-
import { AfterViewInit, ElementRef, DestroyRef, OnInit, OnChanges, OnDestroy, SimpleChanges } from '@angular/core';
|
|
3
|
-
import { ResizeObserverService } from '@ng-web-apis/resize-observer';
|
|
4
|
-
import { editor, languages, Uri } from 'monaco-editor';
|
|
5
|
-
import { ControlValueAccessor } from '@angular/forms';
|
|
6
|
-
import * as rxjs from 'rxjs';
|
|
7
|
-
import { BehaviorSubject, Subject } from 'rxjs';
|
|
8
|
-
|
|
9
|
-
interface CodeEditModel {
|
|
10
|
-
language?: string;
|
|
11
|
-
value?: string;
|
|
12
|
-
uri?: string;
|
|
13
|
-
}
|
|
14
|
-
interface CodeDiffEditModel {
|
|
15
|
-
language?: string;
|
|
16
|
-
value?: string;
|
|
17
|
-
original?: string;
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* TypingsInfo
|
|
21
|
-
*/
|
|
22
|
-
interface TypingsInfo {
|
|
23
|
-
entryPoints: {
|
|
24
|
-
[key: string]: string;
|
|
25
|
-
};
|
|
26
|
-
files: Array<{
|
|
27
|
-
content: string;
|
|
28
|
-
name: string;
|
|
29
|
-
url: string;
|
|
30
|
-
path: string;
|
|
31
|
-
}>;
|
|
32
|
-
}
|
|
33
|
-
declare class CodeEditorOptions {
|
|
34
|
-
version?: string;
|
|
35
|
-
baseUrl?: string;
|
|
36
|
-
typingsWorkerUrl?: string;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
interface Monaco {
|
|
40
|
-
editor: typeof editor;
|
|
41
|
-
languages: typeof languages;
|
|
42
|
-
Uri: typeof Uri;
|
|
43
|
-
}
|
|
44
|
-
declare class CodeEditorService {
|
|
45
|
-
#private;
|
|
46
|
-
private _monaco?;
|
|
47
|
-
private typingsWorker?;
|
|
48
|
-
readonly baseUrl: string;
|
|
49
|
-
readonly typingsWorkerUrl: string;
|
|
50
|
-
isBrowser: boolean;
|
|
51
|
-
loadingTypings: BehaviorSubject<boolean>;
|
|
52
|
-
typingsLoaded: Subject<TypingsInfo>;
|
|
53
|
-
monaco$: rxjs.Observable<{
|
|
54
|
-
monaco: Monaco | null;
|
|
55
|
-
}>;
|
|
56
|
-
get monaco(): Monaco;
|
|
57
|
-
constructor();
|
|
58
|
-
loadTypings(dependencies: string[]): void;
|
|
59
|
-
loadEditor(): rxjs.Observable<{
|
|
60
|
-
monaco: Monaco | null;
|
|
61
|
-
}>;
|
|
62
|
-
setTheme(themeName: string): void;
|
|
63
|
-
createEditor(containerElement: HTMLElement, options?: editor.IEditorConstructionOptions): editor.ICodeEditor;
|
|
64
|
-
createDiffEditor(domElement: HTMLElement, options?: editor.IStandaloneDiffEditorConstructionOptions, override?: editor.IEditorOverrideServices): editor.IStandaloneDiffEditor;
|
|
65
|
-
createModel(value: string, language?: string, uri?: string): editor.ITextModel;
|
|
66
|
-
setModelLanguage(model: editor.ITextModel, mimeTypeOrLanguageId: string): void;
|
|
67
|
-
private loadTypingsWorker;
|
|
68
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<CodeEditorService, never>;
|
|
69
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<CodeEditorService>;
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
declare abstract class AbstractCodeEditor implements AfterViewInit, ControlValueAccessor {
|
|
73
|
-
protected _elementRef: ElementRef<HTMLElement>;
|
|
74
|
-
protected _codeEditorService: CodeEditorService;
|
|
75
|
-
protected _isBrowser: boolean;
|
|
76
|
-
protected _destroyRef: DestroyRef;
|
|
77
|
-
protected _value: string | undefined;
|
|
78
|
-
protected _onChange?: (value: any) => void;
|
|
79
|
-
protected _onTouched?: () => void;
|
|
80
|
-
options: i0.InputSignal<editor.IStandaloneEditorConstructionOptions>;
|
|
81
|
-
theme: i0.InputSignal<string>;
|
|
82
|
-
disabled: i0.InputSignalWithTransform<boolean, unknown>;
|
|
83
|
-
valueChange: i0.OutputEmitterRef<any>;
|
|
84
|
-
$disabled: i0.WritableSignal<boolean>;
|
|
85
|
-
abstract runAction(id: string, args?: unknown): any;
|
|
86
|
-
abstract initMonaco(): void;
|
|
87
|
-
formatDocument(): void;
|
|
88
|
-
writeValue(value?: string): void;
|
|
89
|
-
registerOnChange(fn: any): void;
|
|
90
|
-
registerOnTouched(fn: any): void;
|
|
91
|
-
setDisabledState?(isDisabled: boolean): void;
|
|
92
|
-
ngAfterViewInit(): Promise<void>;
|
|
93
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AbstractCodeEditor, never>;
|
|
94
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<AbstractCodeEditor, never, never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; "theme": { "alias": "theme"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; }, never, never, true, never>;
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
declare class CodeDiffEditor extends AbstractCodeEditor implements OnInit {
|
|
98
|
-
protected entries$: ResizeObserverService;
|
|
99
|
-
protected _diffEditor?: editor.IStandaloneDiffEditor;
|
|
100
|
-
model: i0.InputSignal<CodeDiffEditModel | undefined>;
|
|
101
|
-
ngOnInit(): void;
|
|
102
|
-
runAction(id: string, args?: unknown): Promise<void> | undefined;
|
|
103
|
-
initMonaco(): void;
|
|
104
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<CodeDiffEditor, never>;
|
|
105
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<CodeDiffEditor, "ao-code-diff-editor", never, { "model": { "alias": "model"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
declare class CodeEditor extends AbstractCodeEditor implements ControlValueAccessor, OnInit, OnChanges, OnDestroy {
|
|
109
|
-
protected entries$: ResizeObserverService;
|
|
110
|
-
protected _editor?: editor.ICodeEditor;
|
|
111
|
-
protected _model?: editor.ITextModel;
|
|
112
|
-
model: i0.InputSignal<CodeEditModel>;
|
|
113
|
-
get editor(): editor.ICodeEditor | undefined;
|
|
114
|
-
writeValue(value?: string): void;
|
|
115
|
-
ngOnInit(): void;
|
|
116
|
-
ngOnChanges(changes: SimpleChanges): void;
|
|
117
|
-
ngOnDestroy(): void;
|
|
118
|
-
runAction(id: string, args?: unknown): Promise<void> | undefined;
|
|
119
|
-
initMonaco(): void;
|
|
120
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<CodeEditor, never>;
|
|
121
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<CodeEditor, "ao-code-editor", never, { "model": { "alias": "model"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
/**
|
|
125
|
-
* 提供 CodeEditor 服务
|
|
126
|
-
*/
|
|
127
|
-
declare const provideCodeEditor: (options?: CodeEditorOptions) => i0.EnvironmentProviders;
|
|
128
|
-
|
|
129
|
-
export { CodeDiffEditor, CodeEditor, CodeEditorService, provideCodeEditor };
|