@firestitch/text-editor 12.4.1 → 12.4.3

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.
@@ -18,15 +18,15 @@ export class BaseEditor {
18
18
  else {
19
19
  loadedMonaco = true;
20
20
  loadPromise = new Promise((resolve) => {
21
- const baseUrl = (this.config.baseUrl || './assets') + '/monaco-editor/min/vs';
21
+ const baseUrl = `${this.config.baseUrl || './assets'}/monaco-editor/min/vs`;
22
22
  if (typeof (window.monaco) === 'object') {
23
23
  resolve();
24
24
  return;
25
25
  }
26
26
  const onGotAmdLoader = () => {
27
27
  // Load monaco
28
- window.require.config({ paths: { 'vs': `${baseUrl}` } });
29
- window.require([`vs/editor/editor.main`], () => {
28
+ window.require.config({ paths: { vs: `${baseUrl}` } });
29
+ window.require(['vs/editor/editor.main'], () => {
30
30
  if (typeof this.config.onMonacoLoad === 'function') {
31
31
  this.config.onMonacoLoad();
32
32
  }
@@ -63,7 +63,7 @@ BaseEditor.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "1
63
63
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: BaseEditor, decorators: [{
64
64
  type: Component,
65
65
  args: [{
66
- template: ''
66
+ template: '',
67
67
  }]
68
68
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
69
69
  type: Inject,
@@ -74,4 +74,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
74
74
  }], onInit: [{
75
75
  type: Output
76
76
  }] } });
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1lZGl0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvbmd4LW1vbmFjby1lZGl0b3IvYmFzZS1lZGl0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQWEsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6SCxPQUFPLEVBQUUsd0JBQXdCLEVBQXlCLE1BQU0sVUFBVSxDQUFDOztBQUUzRSxJQUFJLFlBQVksR0FBRyxLQUFLLENBQUM7QUFDekIsSUFBSSxXQUEwQixDQUFDO0FBSy9CLE1BQU0sT0FBZ0IsVUFBVTtJQU85QixZQUF3RCxNQUE2QjtRQUE3QixXQUFNLEdBQU4sTUFBTSxDQUF1QjtRQUwzRSxXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztJQUs2QyxDQUFDO0lBRXpGLGVBQWU7UUFDYixJQUFJLFlBQVksRUFBRTtZQUNoQix3Q0FBd0M7WUFDeEMsV0FBVyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7Z0JBQ3BCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ2pDLENBQUMsQ0FBQyxDQUFDO1NBQ0o7YUFBTTtZQUNMLFlBQVksR0FBRyxJQUFJLENBQUM7WUFDcEIsV0FBVyxHQUFHLElBQUksT0FBTyxDQUFPLENBQUMsT0FBWSxFQUFFLEVBQUU7Z0JBQy9DLE1BQU0sT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLElBQUksVUFBVSxDQUFDLEdBQUcsdUJBQXVCLENBQUM7Z0JBQzlFLElBQUksT0FBTyxDQUFPLE1BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxRQUFRLEVBQUU7b0JBQzlDLE9BQU8sRUFBRSxDQUFDO29CQUNWLE9BQU87aUJBQ1I7Z0JBQ0QsTUFBTSxjQUFjLEdBQVEsR0FBRyxFQUFFO29CQUMvQixjQUFjO29CQUNSLE1BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsSUFBSSxFQUFFLEdBQUcsT0FBTyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7b0JBQzFELE1BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyx1QkFBdUIsQ0FBQyxFQUFFLEdBQUcsRUFBRTt3QkFDcEQsSUFBSSxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxLQUFLLFVBQVUsRUFBRTs0QkFDbEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsQ0FBQzt5QkFDNUI7d0JBQ0QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7d0JBQy9CLE9BQU8sRUFBRSxDQUFDO29CQUNaLENBQUMsQ0FBQyxDQUFDO2dCQUNMLENBQUMsQ0FBQztnQkFFRiwrQkFBK0I7Z0JBQy9CLElBQUksQ0FBTyxNQUFPLENBQUMsT0FBTyxFQUFFO29CQUMxQixNQUFNLFlBQVksR0FBc0IsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztvQkFDekUsWUFBWSxDQUFDLElBQUksR0FBRyxpQkFBaUIsQ0FBQztvQkFDdEMsWUFBWSxDQUFDLEdBQUcsR0FBRyxHQUFHLE9BQU8sWUFBWSxDQUFDO29CQUMxQyxZQUFZLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLGNBQWMsQ0FBQyxDQUFDO29CQUN0RCxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsQ0FBQztpQkFDekM7cUJBQU07b0JBQ0wsY0FBYyxFQUFFLENBQUM7aUJBQ2xCO1lBQ0gsQ0FBQyxDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7SUFJRCxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMseUJBQXlCLEVBQUU7WUFDbEMsSUFBSSxDQUFDLHlCQUF5QixDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQzlDO1FBQ0QsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2hCLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDdkIsSUFBSSxDQUFDLE9BQU8sR0FBRyxTQUFTLENBQUM7U0FDMUI7SUFDSCxDQUFDOzt3R0EzRG1CLFVBQVUsa0JBT1Ysd0JBQXdCOzRGQVB4QixVQUFVLHNOQUZwQixFQUFFOzRGQUVRLFVBQVU7a0JBSC9CLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLEVBQUU7aUJBQ2I7OzBCQVFjLE1BQU07MkJBQUMsd0JBQXdCOzRDQU5JLGdCQUFnQjtzQkFBL0QsU0FBUzt1QkFBQyxpQkFBaUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBQ3BDLE1BQU07c0JBQWYsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbmplY3QsIE9uRGVzdHJveSwgT3V0cHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTkdYX01PTkFDT19FRElUT1JfQ09ORklHLCBOZ3hNb25hY29FZGl0b3JDb25maWcgfSBmcm9tICcuL2NvbmZpZyc7XG5cbmxldCBsb2FkZWRNb25hY28gPSBmYWxzZTtcbmxldCBsb2FkUHJvbWlzZTogUHJvbWlzZTx2b2lkPjtcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiAnJ1xufSlcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlRWRpdG9yIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgQFZpZXdDaGlsZCgnZWRpdG9yQ29udGFpbmVyJywgeyBzdGF0aWM6IHRydWUgfSkgX2VkaXRvckNvbnRhaW5lcjogRWxlbWVudFJlZjtcbiAgQE91dHB1dCgpIG9uSW5pdCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBwcm90ZWN0ZWQgX2VkaXRvcjogYW55O1xuICBwcm90ZWN0ZWQgX29wdGlvbnM6IGFueTtcbiAgcHJvdGVjdGVkIF93aW5kb3dSZXNpemVTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcblxuICBjb25zdHJ1Y3RvcihASW5qZWN0KE5HWF9NT05BQ09fRURJVE9SX0NPTkZJRykgcHJvdGVjdGVkIGNvbmZpZzogTmd4TW9uYWNvRWRpdG9yQ29uZmlnKSB7fVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBpZiAobG9hZGVkTW9uYWNvKSB7XG4gICAgICAvLyBXYWl0IHVudGlsIG1vbmFjbyBlZGl0b3IgaXMgYXZhaWxhYmxlXG4gICAgICBsb2FkUHJvbWlzZS50aGVuKCgpID0+IHtcbiAgICAgICAgdGhpcy5pbml0TW9uYWNvKHRoaXMuX29wdGlvbnMpO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGxvYWRlZE1vbmFjbyA9IHRydWU7XG4gICAgICBsb2FkUHJvbWlzZSA9IG5ldyBQcm9taXNlPHZvaWQ+KChyZXNvbHZlOiBhbnkpID0+IHtcbiAgICAgICAgY29uc3QgYmFzZVVybCA9ICh0aGlzLmNvbmZpZy5iYXNlVXJsIHx8ICcuL2Fzc2V0cycpICsgJy9tb25hY28tZWRpdG9yL21pbi92cyc7XG4gICAgICAgIGlmICh0eXBlb2YgKCg8YW55PndpbmRvdykubW9uYWNvKSA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgICByZXNvbHZlKCk7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG9uR290QW1kTG9hZGVyOiBhbnkgPSAoKSA9PiB7XG4gICAgICAgICAgLy8gTG9hZCBtb25hY29cbiAgICAgICAgICAoPGFueT53aW5kb3cpLnJlcXVpcmUuY29uZmlnKHsgcGF0aHM6IHsgJ3ZzJzogYCR7YmFzZVVybH1gIH0gfSk7XG4gICAgICAgICAgKDxhbnk+d2luZG93KS5yZXF1aXJlKFtgdnMvZWRpdG9yL2VkaXRvci5tYWluYF0sICgpID0+IHtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgdGhpcy5jb25maWcub25Nb25hY29Mb2FkID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgIHRoaXMuY29uZmlnLm9uTW9uYWNvTG9hZCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5pbml0TW9uYWNvKHRoaXMuX29wdGlvbnMpO1xuICAgICAgICAgICAgcmVzb2x2ZSgpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9O1xuXG4gICAgICAgIC8vIExvYWQgQU1EIGxvYWRlciBpZiBuZWNlc3NhcnlcbiAgICAgICAgaWYgKCEoPGFueT53aW5kb3cpLnJlcXVpcmUpIHtcbiAgICAgICAgICBjb25zdCBsb2FkZXJTY3JpcHQ6IEhUTUxTY3JpcHRFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XG4gICAgICAgICAgbG9hZGVyU2NyaXB0LnR5cGUgPSAndGV4dC9qYXZhc2NyaXB0JztcbiAgICAgICAgICBsb2FkZXJTY3JpcHQuc3JjID0gYCR7YmFzZVVybH0vbG9hZGVyLmpzYDtcbiAgICAgICAgICBsb2FkZXJTY3JpcHQuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIG9uR290QW1kTG9hZGVyKTtcbiAgICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGxvYWRlclNjcmlwdCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgb25Hb3RBbWRMb2FkZXIoKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGFic3RyYWN0IGluaXRNb25hY28ob3B0aW9uczogYW55KTogdm9pZDtcblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICBpZiAodGhpcy5fd2luZG93UmVzaXplU3Vic2NyaXB0aW9uKSB7XG4gICAgICB0aGlzLl93aW5kb3dSZXNpemVTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuX2VkaXRvcikge1xuICAgICAgdGhpcy5fZWRpdG9yLmRpc3Bvc2UoKTtcbiAgICAgIHRoaXMuX2VkaXRvciA9IHVuZGVmaW5lZDtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
77
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1lZGl0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvbmd4LW1vbmFjby1lZGl0b3IvYmFzZS1lZGl0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQWEsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQU16SCxPQUFPLEVBQUUsd0JBQXdCLEVBQXlCLE1BQU0sVUFBVSxDQUFDOztBQUUzRSxJQUFJLFlBQVksR0FBRyxLQUFLLENBQUM7QUFDekIsSUFBSSxXQUEwQixDQUFDO0FBSy9CLE1BQU0sT0FBZ0IsVUFBVTtJQVU5QixZQUF3RCxNQUE2QjtRQUE3QixXQUFNLEdBQU4sTUFBTSxDQUF1QjtRQU5wRSxXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztJQU1zQyxDQUFDO0lBRWxGLGVBQWU7UUFDcEIsSUFBSSxZQUFZLEVBQUU7WUFDaEIsd0NBQXdDO1lBQ3hDLFdBQVcsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUNwQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNqQyxDQUFDLENBQUMsQ0FBQztTQUNKO2FBQU07WUFDTCxZQUFZLEdBQUcsSUFBSSxDQUFDO1lBQ3BCLFdBQVcsR0FBRyxJQUFJLE9BQU8sQ0FBTyxDQUFDLE9BQVksRUFBRSxFQUFFO2dCQUMvQyxNQUFNLE9BQU8sR0FBRyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLFVBQVksdUJBQXVCLENBQUM7Z0JBQzlFLElBQUksT0FBTyxDQUFPLE1BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxRQUFRLEVBQUU7b0JBQzlDLE9BQU8sRUFBRSxDQUFDO29CQUVWLE9BQU87aUJBQ1I7Z0JBQ0QsTUFBTSxjQUFjLEdBQVEsR0FBRyxFQUFFO29CQUMvQixjQUFjO29CQUNSLE1BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxFQUFFLEdBQUcsT0FBTyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7b0JBQ3hELE1BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyx1QkFBdUIsQ0FBQyxFQUFFLEdBQUcsRUFBRTt3QkFDcEQsSUFBSSxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxLQUFLLFVBQVUsRUFBRTs0QkFDbEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsQ0FBQzt5QkFDNUI7d0JBQ0QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7d0JBQy9CLE9BQU8sRUFBRSxDQUFDO29CQUNaLENBQUMsQ0FBQyxDQUFDO2dCQUNMLENBQUMsQ0FBQztnQkFFRiwrQkFBK0I7Z0JBQy9CLElBQUksQ0FBTyxNQUFPLENBQUMsT0FBTyxFQUFFO29CQUMxQixNQUFNLFlBQVksR0FBc0IsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztvQkFDekUsWUFBWSxDQUFDLElBQUksR0FBRyxpQkFBaUIsQ0FBQztvQkFDdEMsWUFBWSxDQUFDLEdBQUcsR0FBRyxHQUFHLE9BQU8sWUFBWSxDQUFDO29CQUMxQyxZQUFZLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLGNBQWMsQ0FBQyxDQUFDO29CQUN0RCxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsQ0FBQztpQkFDekM7cUJBQU07b0JBQ0wsY0FBYyxFQUFFLENBQUM7aUJBQ2xCO1lBQ0gsQ0FBQyxDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksSUFBSSxDQUFDLHlCQUF5QixFQUFFO1lBQ2xDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUM5QztRQUNELElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNoQixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxPQUFPLEdBQUcsU0FBUyxDQUFDO1NBQzFCO0lBQ0gsQ0FBQzs7d0dBN0RtQixVQUFVLGtCQVVWLHdCQUF3Qjs0RkFWeEIsVUFBVSxzTkFGcEIsRUFBRTs0RkFFUSxVQUFVO2tCQUgvQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxFQUFFO2lCQUNiOzswQkFXYyxNQUFNOzJCQUFDLHdCQUF3Qjs0Q0FSVyxnQkFBZ0I7c0JBQXRFLFNBQVM7dUJBQUMsaUJBQWlCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUU3QixNQUFNO3NCQUF0QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEluamVjdCwgT25EZXN0cm95LCBPdXRwdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgZWRpdG9yIH0gZnJvbSAnbW9uYWNvLWVkaXRvcic7XG5cbmltcG9ydCB7IE5HWF9NT05BQ09fRURJVE9SX0NPTkZJRywgTmd4TW9uYWNvRWRpdG9yQ29uZmlnIH0gZnJvbSAnLi9jb25maWcnO1xuXG5sZXQgbG9hZGVkTW9uYWNvID0gZmFsc2U7XG5sZXQgbG9hZFByb21pc2U6IFByb21pc2U8dm9pZD47XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZTogJycsXG59KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VFZGl0b3IgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuXG4gIEBWaWV3Q2hpbGQoJ2VkaXRvckNvbnRhaW5lcicsIHsgc3RhdGljOiB0cnVlIH0pIHB1YmxpYyBfZWRpdG9yQ29udGFpbmVyOiBFbGVtZW50UmVmO1xuXG4gIEBPdXRwdXQoKSBwdWJsaWMgb25Jbml0ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgcHJvdGVjdGVkIF9lZGl0b3I6IGVkaXRvci5JQ29kZUVkaXRvcjtcbiAgcHJvdGVjdGVkIF9vcHRpb25zOiBhbnk7XG4gIHByb3RlY3RlZCBfd2luZG93UmVzaXplU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG5cbiAgY29uc3RydWN0b3IoQEluamVjdChOR1hfTU9OQUNPX0VESVRPUl9DT05GSUcpIHByb3RlY3RlZCBjb25maWc6IE5neE1vbmFjb0VkaXRvckNvbmZpZykge31cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGlmIChsb2FkZWRNb25hY28pIHtcbiAgICAgIC8vIFdhaXQgdW50aWwgbW9uYWNvIGVkaXRvciBpcyBhdmFpbGFibGVcbiAgICAgIGxvYWRQcm9taXNlLnRoZW4oKCkgPT4ge1xuICAgICAgICB0aGlzLmluaXRNb25hY28odGhpcy5fb3B0aW9ucyk7XG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgbG9hZGVkTW9uYWNvID0gdHJ1ZTtcbiAgICAgIGxvYWRQcm9taXNlID0gbmV3IFByb21pc2U8dm9pZD4oKHJlc29sdmU6IGFueSkgPT4ge1xuICAgICAgICBjb25zdCBiYXNlVXJsID0gYCR7dGhpcy5jb25maWcuYmFzZVVybCB8fCAnLi9hc3NldHMnICB9L21vbmFjby1lZGl0b3IvbWluL3ZzYDtcbiAgICAgICAgaWYgKHR5cGVvZiAoKDxhbnk+d2luZG93KS5tb25hY28pID09PSAnb2JqZWN0Jykge1xuICAgICAgICAgIHJlc29sdmUoKTtcblxuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBvbkdvdEFtZExvYWRlcjogYW55ID0gKCkgPT4ge1xuICAgICAgICAgIC8vIExvYWQgbW9uYWNvXG4gICAgICAgICAgKDxhbnk+d2luZG93KS5yZXF1aXJlLmNvbmZpZyh7IHBhdGhzOiB7IHZzOiBgJHtiYXNlVXJsfWAgfSB9KTtcbiAgICAgICAgICAoPGFueT53aW5kb3cpLnJlcXVpcmUoWyd2cy9lZGl0b3IvZWRpdG9yLm1haW4nXSwgKCkgPT4ge1xuICAgICAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmNvbmZpZy5vbk1vbmFjb0xvYWQgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgICAgdGhpcy5jb25maWcub25Nb25hY29Mb2FkKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLmluaXRNb25hY28odGhpcy5fb3B0aW9ucyk7XG4gICAgICAgICAgICByZXNvbHZlKCk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH07XG5cbiAgICAgICAgLy8gTG9hZCBBTUQgbG9hZGVyIGlmIG5lY2Vzc2FyeVxuICAgICAgICBpZiAoISg8YW55PndpbmRvdykucmVxdWlyZSkge1xuICAgICAgICAgIGNvbnN0IGxvYWRlclNjcmlwdDogSFRNTFNjcmlwdEVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTtcbiAgICAgICAgICBsb2FkZXJTY3JpcHQudHlwZSA9ICd0ZXh0L2phdmFzY3JpcHQnO1xuICAgICAgICAgIGxvYWRlclNjcmlwdC5zcmMgPSBgJHtiYXNlVXJsfS9sb2FkZXIuanNgO1xuICAgICAgICAgIGxvYWRlclNjcmlwdC5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgb25Hb3RBbWRMb2FkZXIpO1xuICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQobG9hZGVyU2NyaXB0KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBvbkdvdEFtZExvYWRlcigpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKSB7XG4gICAgaWYgKHRoaXMuX3dpbmRvd1Jlc2l6ZVN1YnNjcmlwdGlvbikge1xuICAgICAgdGhpcy5fd2luZG93UmVzaXplU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICAgIGlmICh0aGlzLl9lZGl0b3IpIHtcbiAgICAgIHRoaXMuX2VkaXRvci5kaXNwb3NlKCk7XG4gICAgICB0aGlzLl9lZGl0b3IgPSB1bmRlZmluZWQ7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGFic3RyYWN0IGluaXRNb25hY28ob3B0aW9uczogYW55KTogdm9pZDtcbn1cbiJdfQ==
@@ -9,7 +9,7 @@ export class DiffEditorComponent extends BaseEditor {
9
9
  this.editorConfig = editorConfig;
10
10
  }
11
11
  set options(options) {
12
- this._options = Object.assign({}, this.config.defaultOptions, options);
12
+ this._options = Object.assign(Object.assign({}, this.config.defaultOptions), options);
13
13
  if (this._editor) {
14
14
  this._editor.dispose();
15
15
  this.initMonaco(options);
@@ -38,15 +38,15 @@ export class DiffEditorComponent extends BaseEditor {
38
38
  }
39
39
  this._originalModel.language = this._originalModel.language || options.language;
40
40
  this._modifiedModel.language = this._modifiedModel.language || options.language;
41
- let originalModel = monaco.editor.createModel(this._originalModel.code, this._originalModel.language);
42
- let modifiedModel = monaco.editor.createModel(this._modifiedModel.code, this._modifiedModel.language);
41
+ const originalModel = monaco.editor.createModel(this._originalModel.code, this._originalModel.language);
42
+ const modifiedModel = monaco.editor.createModel(this._modifiedModel.code, this._modifiedModel.language);
43
43
  this._editorContainer.nativeElement.innerHTML = '';
44
44
  const theme = options.theme;
45
45
  this._editor = monaco.editor.createDiffEditor(this._editorContainer.nativeElement, options);
46
46
  options.theme = theme;
47
47
  this._editor.setModel({
48
48
  original: originalModel,
49
- modified: modifiedModel
49
+ modified: modifiedModel,
50
50
  });
51
51
  // refresh layout on resize event.
52
52
  if (this._windowResizeSubscription) {
@@ -73,7 +73,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
73
73
  width: 100%;
74
74
  height: 98%;
75
75
  }
76
- `]
76
+ `],
77
77
  }]
78
78
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
79
79
  type: Inject,
@@ -88,4 +88,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
88
88
  type: Input,
89
89
  args: ['modifiedModel']
90
90
  }] } });
91
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlmZi1lZGl0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2R1bGVzL25neC1tb25hY28tZWRpdG9yL2RpZmYtZWRpdG9yLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVqQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSx3QkFBd0IsRUFBeUIsTUFBTSxVQUFVLENBQUM7O0FBb0IzRSxNQUFNLE9BQU8sbUJBQW9CLFNBQVEsVUFBVTtJQW9DakQsWUFBc0QsWUFBbUM7UUFDdkYsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBRGdDLGlCQUFZLEdBQVosWUFBWSxDQUF1QjtJQUV6RixDQUFDO0lBakNELElBQ0ksT0FBTyxDQUFDLE9BQVk7UUFDdEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUN2RSxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDaEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUN2QixJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQzFCO0lBQ0gsQ0FBQztJQUVELElBQUksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRUQsSUFDSSxhQUFhLENBQUMsS0FBc0I7UUFDdEMsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUM7UUFDNUIsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2hCLElBQUks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IENvbXBvbmVudCwgSW5qZWN0LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEJhc2VFZGl0b3IgfSBmcm9tICcuL2Jhc2UtZWRpdG9yJztcbmltcG9ydCB7IE5HWF9NT05BQ09fRURJVE9SX0NPTkZJRywgTmd4TW9uYWNvRWRpdG9yQ29uZmlnIH0gZnJvbSAnLi9jb25maWcnO1xuaW1wb3J0IHsgRGlmZkVkaXRvck1vZGVsIH0gZnJvbSAnLi90eXBlcyc7XG5cbmRlY2xhcmUgdmFyIG1vbmFjbzogYW55O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICduZ3gtbW9uYWNvLWRpZmYtZWRpdG9yJyxcbiAgdGVtcGxhdGU6ICc8ZGl2IGNsYXNzPVwiZWRpdG9yLWNvbnRhaW5lclwiICNlZGl0b3JDb250YWluZXI+PC9kaXY+JyxcbiAgc3R5bGVzOiBbYFxuICAgIDpob3N0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAyMDBweDtcbiAgICB9XG5cbiAgICAuZWRpdG9yLWNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogOTglO1xuICAgIH1cbiAgYF1cbn0pXG5leHBvcnQgY2xhc3MgRGlmZkVkaXRvckNvbXBvbmVudCBleHRlbmRzIEJhc2VFZGl0b3Ige1xuXG4gIF9vcmlnaW5hbE1vZGVsOiBEaWZmRWRpdG9yTW9kZWw7XG4gIF9tb2RpZmllZE1vZGVsOiBEaWZmRWRpdG9yTW9kZWw7XG5cbiAgQElucHV0KCdvcHRpb25zJylcbiAgc2V0IG9wdGlvbnMob3B0aW9uczogYW55KSB7XG4gICAgdGhpcy5fb3B0aW9ucyA9IE9iamVjdC5hc3NpZ24oe30sIHRoaXMuY29uZmlnLmRlZmF1bHRPcHRpb25zLCBvcHRpb25zKTtcbiAgICBpZiAodGhpcy5fZWRpdG9yKSB7XG4gICAgICB0aGlzLl9lZGl0b3IuZGlzcG9zZSgpO1xuICAgICAgdGhpcy5pbml0TW9uYWNvKG9wdGlvbnMpO1xuICAgIH1cbiAgfVxuXG4gIGdldCBvcHRpb25zKCk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMuX29wdGlvbnM7XG4gIH1cblxuICBASW5wdXQoJ29yaWdpbmFsTW9kZWwnKVxuICBzZXQgb3JpZ2luYWxNb2RlbChtb2RlbDogRGlmZkVkaXRvck1vZGVsKSB7XG4gICAgdGhpcy5fb3JpZ2luYWxNb2RlbCA9IG1vZGVsO1xuICAgIGlmICh0aGlzLl9lZGl0b3IpIHtcbiAgICAgIHRoaXMuX2VkaXRvci5kaXNwb3NlKCk7XG4gICAgICB0aGlzLmluaXRNb25hY28odGhpcy5vcHRpb25zKTtcbiAgICB9XG4gIH1cblxuICBASW5wdXQoJ21vZGlmaWVkTW9kZWwnKVxuICBzZXQgbW9kaWZpZWRNb2RlbChtb2RlbDogRGlmZkVkaXRvck1vZGVsKSB7XG4gICAgdGhpcy5fbW9kaWZpZWRNb2RlbCA9IG1vZGVsO1xuICAgIGlmICh0aGlzLl9lZGl0b3IpIHtcbiAgICAgIHRoaXMuX2VkaXRvci5kaXNwb3NlKCk7XG4gICAgICB0aGlzLmluaXRNb25hY28odGhpcy5vcHRpb25zKTtcbiAgICB9XG4gIH1cblxuICBjb25zdHJ1Y3RvcihASW5qZWN0KE5HWF9NT05BQ09fRURJVE9SX0NPTkZJRykgcHJpdmF0ZSBlZGl0b3JDb25maWc6IE5neE1vbmFjb0VkaXRvckNvbmZpZykge1xuICAgIHN1cGVyKGVkaXRvckNvbmZpZyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaW5pdE1vbmFjbyhvcHRpb25zOiBhbnkpOiB2b2lkIHtcblxuICAgIGlmICghdGhpcy5fb3JpZ2luYWxNb2RlbCB8fCAhdGhpcy5fbW9kaWZpZWRNb2RlbCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdvcmlnaW5hbE1vZGVsIG9yIG1vZGlmaWVkTW9kZWwgbm90IGZvdW5kIGZvciBuZ3gtbW9uYWNvLWRpZmYtZWRpdG9yJyk7XG4gICAgfVxuXG4gICAgdGhpcy5fb3JpZ2luYWxNb2RlbC5sYW5ndWFnZSA9IHRoaXMuX29yaWdpbmFsTW9kZWwubGFuZ3VhZ2UgfHwgb3B0aW9ucy5sYW5ndWFnZTtcbiAgICB0aGlzLl9tb2RpZmllZE1vZGVsLmxhbmd1YWdlID0gdGhpcy5fbW9kaWZpZWRNb2RlbC5sYW5ndWFnZSB8fCBvcHRpb25zLmxhbmd1YWdlO1xuXG4gICAgbGV0IG9yaWdpbmFsTW9kZWwgPSBtb25hY28uZWRpdG9yLmNyZWF0ZU1vZGVsKHRoaXMuX29yaWdpbmFsTW9kZWwuY29kZSwgdGhpcy5fb3JpZ2luYWxNb2RlbC5sYW5ndWFnZSk7XG4gICAgbGV0IG1vZGlmaWVkTW9kZWwgPSBtb25hY28uZWRpdG9yLmNyZWF0ZU1vZGVsKHRoaXMuX21vZGlmaWVkTW9kZWwuY29kZSwgdGhpcy5fbW9kaWZpZWRNb2RlbC5sYW5ndWFnZSk7XG5cbiAgICB0aGlzLl9lZGl0b3JDb250YWluZXIubmF0aXZlRWxlbWVudC5pbm5lckhUTUwgPSAnJztcbiAgICBjb25zdCB0aGVtZSA9IG9wdGlvbnMudGhlbWU7XG4gICAgdGhpcy5fZWRpdG9yID0gbW9uYWNvLmVkaXRvci5jcmVhdGVEaWZmRWRpdG9yKHRoaXMuX2VkaXRvckNvbnRhaW5lci5uYXRpdmVFbGVtZW50LCBvcHRpb25zKTtcbiAgICBvcHRpb25zLnRoZW1lID0gdGhlbWU7XG4gICAgdGhpcy5fZWRpdG9yLnNldE1vZGVsKHtcbiAgICAgIG9yaWdpbmFsOiBvcmlnaW5hbE1vZGVsLFxuICAgICAgbW9kaWZpZWQ6IG1vZGlmaWVkTW9kZWxcbiAgICB9KTtcblxuICAgIC8vIHJlZnJlc2ggbGF5b3V0IG9uIHJlc2l6ZSBldmVudC5cbiAgICBpZiAodGhpcy5fd2luZG93UmVzaXplU3Vic2NyaXB0aW9uKSB7XG4gICAgICB0aGlzLl93aW5kb3dSZXNpemVTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gICAgdGhpcy5fd2luZG93UmVzaXplU3Vic2NyaXB0aW9uID0gZnJvbUV2ZW50KHdpbmRvdywgJ3Jlc2l6ZScpLnN1YnNjcmliZSgoKSA9PiB0aGlzLl9lZGl0b3IubGF5b3V0KCkpO1xuICAgIHRoaXMub25Jbml0LmVtaXQodGhpcy5fZWRpdG9yKTtcbiAgfVxuXG59XG4iXX0=
91
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlmZi1lZGl0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2R1bGVzL25neC1tb25hY28tZWRpdG9yL2RpZmYtZWRpdG9yLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVqQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSx3QkFBd0IsRUFBeUIsTUFBTSxVQUFVLENBQUM7O0FBb0IzRSxNQUFNLE9BQU8sbUJBQW9CLFNBQVEsVUFBVTtJQW9DakQsWUFBc0QsWUFBbUM7UUFDdkYsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBRGdDLGlCQUFZLEdBQVosWUFBWSxDQUF1QjtJQUV6RixDQUFDO0lBakNELElBQ0ksT0FBTyxDQUFDLE9BQVk7UUFDdEIsSUFBSSxDQUFDLFFBQVEsbUNBQVEsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLEdBQUssT0FBTyxDQUFFLENBQUM7UUFDOUQsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2hCLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDdkIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUMxQjtJQUNILENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDdkIsQ0FBQztJQUVELElBQ0ksYUFBYSxDQUFDLEtBQXNCO1FBQ3RDLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDO1FBQzVCLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNoQixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFD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cm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEJhc2VFZGl0b3IgfSBmcm9tICcuL2Jhc2UtZWRpdG9yJztcbmltcG9ydCB7IE5HWF9NT05BQ09fRURJVE9SX0NPTkZJRywgTmd4TW9uYWNvRWRpdG9yQ29uZmlnIH0gZnJvbSAnLi9jb25maWcnO1xuaW1wb3J0IHsgRGlmZkVkaXRvck1vZGVsIH0gZnJvbSAnLi90eXBlcyc7XG5cbmRlY2xhcmUgbGV0IG1vbmFjbzogYW55O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICduZ3gtbW9uYWNvLWRpZmYtZWRpdG9yJyxcbiAgdGVtcGxhdGU6ICc8ZGl2IGNsYXNzPVwiZWRpdG9yLWNvbnRhaW5lclwiICNlZGl0b3JDb250YWluZXI+PC9kaXY+JyxcbiAgc3R5bGVzOiBbYFxuICAgIDpob3N0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAyMDBweDtcbiAgICB9XG5cbiAgICAuZWRpdG9yLWNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogOTglO1xuICAgIH1cbiAgYF0sXG59KVxuZXhwb3J0IGNsYXNzIERpZmZFZGl0b3JDb21wb25lbnQgZXh0ZW5kcyBCYXNlRWRpdG9yIHtcblxuICBfb3JpZ2luYWxNb2RlbDogRGlmZkVkaXRvck1vZGVsO1xuICBfbW9kaWZpZWRNb2RlbDogRGlmZkVkaXRvck1vZGVsO1xuXG4gIEBJbnB1dCgnb3B0aW9ucycpXG4gIHNldCBvcHRpb25zKG9wdGlvbnM6IGFueSkge1xuICAgIHRoaXMuX29wdGlvbnMgPSB7IC4uLnRoaXMuY29uZmlnLmRlZmF1bHRPcHRpb25zLCAuLi5vcHRpb25zIH07XG4gICAgaWYgKHRoaXMuX2VkaXRvcikge1xuICAgICAgdGhpcy5fZWRpdG9yLmRpc3Bvc2UoKTtcbiAgICAgIHRoaXMuaW5pdE1vbmFjbyhvcHRpb25zKTtcbiAgICB9XG4gIH1cblxuICBnZXQgb3B0aW9ucygpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLl9vcHRpb25zO1xuICB9XG5cbiAgQElucHV0KCdvcmlnaW5hbE1vZGVsJylcbiAgc2V0IG9yaWdpbmFsTW9kZWwobW9kZWw6IERpZmZFZGl0b3JNb2RlbCkge1xuICAgIHRoaXMuX29yaWdpbmFsTW9kZWwgPSBtb2RlbDtcbiAgICBpZiAodGhpcy5fZWRpdG9yKSB7XG4gICAgICB0aGlzLl9lZGl0b3IuZGlzcG9zZSgpO1xuICAgICAgdGhpcy5pbml0TW9uYWNvKHRoaXMub3B0aW9ucyk7XG4gICAgfVxuICB9XG5cbiAgQElucHV0KCdtb2RpZmllZE1vZGVsJylcbiAgc2V0IG1vZGlmaWVkTW9kZWwobW9kZWw6IERpZmZFZGl0b3JNb2RlbCkge1xuICAgIHRoaXMuX21vZGlmaWVkTW9kZWwgPSBtb2RlbDtcbiAgICBpZiAodGhpcy5fZWRpdG9yKSB7XG4gICAgICB0aGlzLl9lZGl0b3IuZGlzcG9zZSgpO1xuICAgICAgdGhpcy5pbml0TW9uYWNvKHRoaXMub3B0aW9ucyk7XG4gICAgfVxuICB9XG5cbiAgY29uc3RydWN0b3IoQEluamVjdChOR1hfTU9OQUNPX0VESVRPUl9DT05GSUcpIHByaXZhdGUgZWRpdG9yQ29uZmlnOiBOZ3hNb25hY29FZGl0b3JDb25maWcpIHtcbiAgICBzdXBlcihlZGl0b3JDb25maWcpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGluaXRNb25hY28ob3B0aW9uczogYW55KTogdm9pZCB7XG5cbiAgICBpZiAoIXRoaXMuX29yaWdpbmFsTW9kZWwgfHwgIXRoaXMuX21vZGlmaWVkTW9kZWwpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignb3JpZ2luYWxNb2RlbCBvciBtb2RpZmllZE1vZGVsIG5vdCBmb3VuZCBmb3Igbmd4LW1vbmFjby1kaWZmLWVkaXRvcicpO1xuICAgIH1cblxuICAgIHRoaXMuX29yaWdpbmFsTW9kZWwubGFuZ3VhZ2UgPSB0aGlzLl9vcmlnaW5hbE1vZGVsLmxhbmd1YWdlIHx8IG9wdGlvbnMubGFuZ3VhZ2U7XG4gICAgdGhpcy5fbW9kaWZpZWRNb2RlbC5sYW5ndWFnZSA9IHRoaXMuX21vZGlmaWVkTW9kZWwubGFuZ3VhZ2UgfHwgb3B0aW9ucy5sYW5ndWFnZTtcblxuICAgIGNvbnN0IG9yaWdpbmFsTW9kZWwgPSBtb25hY28uZWRpdG9yLmNyZWF0ZU1vZGVsKHRoaXMuX29yaWdpbmFsTW9kZWwuY29kZSwgdGhpcy5fb3JpZ2luYWxNb2RlbC5sYW5ndWFnZSk7XG4gICAgY29uc3QgbW9kaWZpZWRNb2RlbCA9IG1vbmFjby5lZGl0b3IuY3JlYXRlTW9kZWwodGhpcy5fbW9kaWZpZWRNb2RlbC5jb2RlLCB0aGlzLl9tb2RpZmllZE1vZGVsLmxhbmd1YWdlKTtcblxuICAgIHRoaXMuX2VkaXRvckNvbnRhaW5lci5uYXRpdmVFbGVtZW50LmlubmVySFRNTCA9ICcnO1xuICAgIGNvbnN0IHRoZW1lID0gb3B0aW9ucy50aGVtZTtcbiAgICB0aGlzLl9lZGl0b3IgPSBtb25hY28uZWRpdG9yLmNyZWF0ZURpZmZFZGl0b3IodGhpcy5fZWRpdG9yQ29udGFpbmVyLm5hdGl2ZUVsZW1lbnQsIG9wdGlvbnMpO1xuICAgIG9wdGlvbnMudGhlbWUgPSB0aGVtZTtcbiAgICB0aGlzLl9lZGl0b3Iuc2V0TW9kZWwoe1xuICAgICAgb3JpZ2luYWw6IG9yaWdpbmFsTW9kZWwsXG4gICAgICBtb2RpZmllZDogbW9kaWZpZWRNb2RlbCxcbiAgICB9IGFzIGFueSk7XG5cbiAgICAvLyByZWZyZXNoIGxheW91dCBvbiByZXNpemUgZXZlbnQuXG4gICAgaWYgKHRoaXMuX3dpbmRvd1Jlc2l6ZVN1YnNjcmlwdGlvbikge1xuICAgICAgdGhpcy5fd2luZG93UmVzaXplU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICAgIHRoaXMuX3dpbmRvd1Jlc2l6ZVN1YnNjcmlwdGlvbiA9IGZyb21FdmVudCh3aW5kb3csICdyZXNpemUnKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5fZWRpdG9yLmxheW91dCgpKTtcbiAgICB0aGlzLm9uSW5pdC5lbWl0KHRoaXMuX2VkaXRvcik7XG4gIH1cblxufVxuIl19
@@ -14,7 +14,7 @@ export class EditorComponent extends BaseEditor {
14
14
  this.onTouched = () => { };
15
15
  }
16
16
  set options(options) {
17
- this._options = Object.assign({}, this.config.defaultOptions, options);
17
+ this._options = Object.assign(Object.assign({}, this.config.defaultOptions), options);
18
18
  if (this._editor) {
19
19
  this._editor.dispose();
20
20
  this.initMonaco(options);
@@ -84,18 +84,15 @@ EditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version:
84
84
  EditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: EditorComponent, selector: "ngx-monaco-editor", inputs: { options: "options", model: "model" }, providers: [{
85
85
  provide: NG_VALUE_ACCESSOR,
86
86
  useExisting: forwardRef(() => EditorComponent),
87
- multi: true
88
- }], usesInheritance: true, ngImport: i0, template: '<div class="editor-container" #editorContainer></div>', isInline: true, styles: ["\n :host {\n display: block;\n height: 200px;\n }\n\n .editor-container {\n width: 100%;\n height: 98%;\n }\n "] });
87
+ multi: true,
88
+ }], usesInheritance: true, ngImport: i0, template: '<div class="editor-container" #editorContainer></div>', isInline: true, styles: ["\n\n\n .editor-container {\n width: 100%;\n height: 98%;\n }\n "] });
89
89
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: EditorComponent, decorators: [{
90
90
  type: Component,
91
91
  args: [{
92
92
  selector: 'ngx-monaco-editor',
93
93
  template: '<div class="editor-container" #editorContainer></div>',
94
94
  styles: [`
95
- :host {
96
- display: block;
97
- height: 200px;
98
- }
95
+
99
96
 
100
97
  .editor-container {
101
98
  width: 100%;
@@ -105,8 +102,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
105
102
  providers: [{
106
103
  provide: NG_VALUE_ACCESSOR,
107
104
  useExisting: forwardRef(() => EditorComponent),
108
- multi: true
109
- }]
105
+ multi: true,
106
+ }],
110
107
  }]
111
108
  }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: undefined, decorators: [{
112
109
  type: Inject,
@@ -118,4 +115,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
118
115
  type: Input,
119
116
  args: ['model']
120
117
  }] } });
121
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9uZ3gtbW9uYWNvLWVkaXRvci9lZGl0b3IuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdFLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRWpDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLHdCQUF3QixFQUF5QixNQUFNLFVBQVUsQ0FBQzs7QUF5QjNFLE1BQU0sT0FBTyxlQUFnQixTQUFRLFVBQVU7SUE0QjdDLFlBQW9CLElBQVksRUFBNEMsWUFBbUM7UUFDN0csS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBREYsU0FBSSxHQUFKLElBQUksQ0FBUTtRQUE0QyxpQkFBWSxHQUFaLFlBQVksQ0FBdUI7UUEzQnZHLFdBQU0sR0FBVyxFQUFFLENBQUM7UUFFNUIsb0JBQWUsR0FBRyxDQUFDLENBQU0sRUFBRSxFQUFFLEdBQUUsQ0FBQyxDQUFDO1FBQ2pDLGNBQVMsR0FBRyxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7SUEwQnJCLENBQUM7SUF4QkQsSUFDSSxPQUFPLENBQUMsT0FBWTtRQUN0QixJQUFJLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZFLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNoQixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3ZC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QztRQUNsQyxJQUFJLElBQUksQ0FBQyx5QkFBeUIsRUFBRTtZQUNsQyxJQUFJLENBQUMseUJBQXlCLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDOUM7UUFDRCxJQUFJLENBQUMseUJBQXlCLEdBQUcsU0FBUyxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO1FBQ3BHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNqQyxDQUFDOzs2R0ExRlUsZUFBZSx3Q0E0QmdCLHdCQUF3QjtpR0E1QnZELGVBQWUsNEZBTmYsQ0FBQztZQUNWLE9BQU8sRUFBRSxpQkFBaUI7WUFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxlQUFlLENBQUM7WUFDOUMsS0FBSyxFQUFFLElBQUk7U0FDWixDQUFDLGlEQWhCUSx1REFBdUQ7NEZBa0J0RCxlQUFlO2tCQXBCM0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixRQUFRLEVBQUUsdURBQXVEO29CQUNqRSxNQUFNLEVBQUUsQ0FBQzs7Ozs7Ozs7OztHQVVSLENBQUM7b0JBQ0YsU0FBUyxFQUFFLENBQUM7NEJBQ1YsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsZ0JBQWdCLENBQUM7NEJBQzlDLEtBQUssRUFBRSxJQUFJO3lCQUNaLENBQUM7aUJBQ0g7OzBCQTZCb0MsTUFBTTsyQkFBQyx3QkFBd0I7NENBckI5RCxPQUFPO3NCQURWLEtBQUs7dUJBQUMsU0FBUztnQkFjWixLQUFLO3NCQURSLEtBQUs7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgZm9yd2FyZFJlZiwgSW5qZWN0LCBJbnB1dCwgTmdab25lIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBmcm9tRXZlbnQgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQmFzZUVkaXRvciB9IGZyb20gJy4vYmFzZS1lZGl0b3InO1xuaW1wb3J0IHsgTkdYX01PTkFDT19FRElUT1JfQ09ORklHLCBOZ3hNb25hY29FZGl0b3JDb25maWcgfSBmcm9tICcuL2NvbmZpZyc7XG5pbXBvcnQgeyBOZ3hFZGl0b3JNb2RlbCB9IGZyb20gJy4vdHlwZXMnO1xuXG5kZWNsYXJlIHZhciBtb25hY286IGFueTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmd4LW1vbmFjby1lZGl0b3InLFxuICB0ZW1wbGF0ZTogJzxkaXYgY2xhc3M9XCJlZGl0b3ItY29udGFpbmVyXCIgI2VkaXRvckNvbnRhaW5lcj48L2Rpdj4nLFxuICBzdHlsZXM6IFtgXG4gICAgICA6aG9zdCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgaGVpZ2h0OiAyMDBweDtcbiAgICAgIH1cblxuICAgICAgLmVkaXRvci1jb250YWluZXIge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogOTglO1xuICAgICAgfVxuICBgXSxcbiAgcHJvdmlkZXJzOiBbe1xuICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEVkaXRvckNvbXBvbmVudCksXG4gICAgbXVsdGk6IHRydWVcbiAgfV1cbn0pXG5leHBvcnQgY2xhc3MgRWRpdG9yQ29tcG9uZW50IGV4dGVuZHMgQmFzZUVkaXRvciBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgcHJpdmF0ZSBfdmFsdWU6IHN0cmluZyA9ICcnO1xuXG4gIHByb3BhZ2F0ZUNoYW5nZSA9IChfOiBhbnkpID0+IHt9O1xuICBvblRvdWNoZWQgPSAoKSA9PiB7fTtcblxuICBASW5wdXQoJ29wdGlvbnMnKVxuICBzZXQgb3B0aW9ucyhvcHRpb25zOiBhbnkpIHtcbiAgICB0aGlzLl9vcHRpb25zID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5jb25maWcuZGVmYXVsdE9wdGlvbnMsIG9wdGlvbnMpO1xuICAgIGlmICh0aGlzLl9lZGl0b3IpIHtcbiAgICAgIHRoaXMuX2VkaXRvci5kaXNwb3NlKCk7XG4gICAgICB0aGlzLmluaXRNb25hY28ob3B0aW9ucyk7XG4gICAgfVxuICB9XG5cbiAgZ2V0IG9wdGlvbnMoKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5fb3B0aW9ucztcbiAgfVxuXG4gIEBJbnB1dCgnbW9kZWwnKVxuICBzZXQgbW9kZWwobW9kZWw6IE5neEVkaXRvck1vZGVsKSB7XG4gICAgdGhpcy5vcHRpb25zLm1vZGVsID0gbW9kZWw7XG4gICAgaWYgKHRoaXMuX2VkaXRvcikge1xuICAgICAgdGhpcy5fZWRpdG9yLmRpc3Bvc2UoKTtcbiAgICAgIHRoaXMuaW5pdE1vbmFjbyh0aGlzLm9wdGlvbnMpO1xuICAgIH1cbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgem9uZTogTmdab25lLCBASW5qZWN0KE5HWF9NT05BQ09fRURJVE9SX0NPTkZJRykgcHJpdmF0ZSBlZGl0b3JDb25maWc6IE5neE1vbmFjb0VkaXRvckNvbmZpZykge1xuICAgIHN1cGVyKGVkaXRvckNvbmZpZyk7XG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLl92YWx1ZSA9IHZhbHVlIHx8ICcnO1xuICAgIC8vIEZpeCBmb3IgdmFsdWUgY2hhbmdlIHdoaWxlIGRpc3Bvc2UgaW4gcHJvY2Vzcy5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGlmICh0aGlzLl9lZGl0b3IgJiYgIXRoaXMub3B0aW9ucy5tb2RlbCkge1xuICAgICAgICB0aGlzLl9lZGl0b3Iuc2V0VmFsdWUodGhpcy5fdmFsdWUpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgcHJvdGVjdGVkIGluaXRNb25hY28ob3B0aW9uczogYW55KTogdm9pZCB7XG5cbiAgICBjb25zdCBoYXNNb2RlbCA9ICEhb3B0aW9ucy5tb2RlbDtcblxuICAgIGlmIChoYXNNb2RlbCkge1xuICAgICAgY29uc3QgbW9kZWwgPSBtb25hY28uZWRpdG9yLmdldE1vZGVsKG9wdGlvbnMubW9kZWwudXJpIHx8ICcnKTtcbiAgICAgIGlmIChtb2RlbCkge1xuICAgICAgICBvcHRpb25zLm1vZGVsID0gbW9kZWw7XG4gICAgICAgIG9wdGlvbnMubW9kZWwuc2V0VmFsdWUodGhpcy5fdmFsdWUpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgb3B0aW9ucy5tb2RlbCA9IG1vbmFjby5lZGl0b3IuY3JlYXRlTW9kZWwob3B0aW9ucy5tb2RlbC52YWx1ZSwgb3B0aW9ucy5tb2RlbC5sYW5ndWFnZSwgb3B0aW9ucy5tb2RlbC51cmkpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuX2VkaXRvciA9IG1vbmFjby5lZGl0b3IuY3JlYXRlKHRoaXMuX2VkaXRvckNvbnRhaW5lci5uYXRpdmVFbGVtZW50LCBvcHRpb25zKTtcblxuICAgIGlmICghaGFzTW9kZWwpIHtcbiAgICAgIHRoaXMuX2VkaXRvci5zZXRWYWx1ZSh0aGlzLl92YWx1ZSk7XG4gICAgfVxuXG4gICAgdGhpcy5fZWRpdG9yLm9uRGlkQ2hhbmdlTW9kZWxDb250ZW50KChlOiBhbnkpID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlID0gdGhpcy5fZWRpdG9yLmdldFZhbHVlKCk7XG5cbiAgICAgIC8vIHZhbHVlIGlzIG5vdCBwcm9wYWdhdGVkIHRvIHBhcmVudCB3aGVuIGV4ZWN1dGluZyBvdXRzaWRlIHpvbmUuXG4gICAgICB0aGlzLnpvbmUucnVuKCgpID0+IHtcbiAgICAgICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UodmFsdWUpO1xuICAgICAgICB0aGlzLl92YWx1ZSA9IHZhbHVlO1xuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICB0aGlzLl9lZGl0b3Iub25EaWRCbHVyRWRpdG9yV2lkZ2V0KCgpID0+IHtcbiAgICAgIHRoaXMub25Ub3VjaGVkKCk7XG4gICAgfSk7XG5cbiAgICAvLyByZWZyZXNoIGxheW91dCBvbiByZXNpemUgZXZlbnQuXG4gICAgaWYgKHRoaXMuX3dpbmRvd1Jlc2l6ZVN1YnNjcmlwdGlvbikge1xuICAgICAgdGhpcy5fd2luZG93UmVzaXplU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICAgIHRoaXMuX3dpbmRvd1Jlc2l6ZVN1YnNjcmlwdGlvbiA9IGZyb21FdmVudCh3aW5kb3csICdyZXNpemUnKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5fZWRpdG9yLmxheW91dCgpKTtcbiAgICB0aGlzLm9uSW5pdC5lbWl0KHRoaXMuX2VkaXRvcik7XG4gIH1cblxufVxuIl19
118
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvbW9kdWxlcy9uZ3gtbW9uYWNvLWVkaXRvci9lZGl0b3IuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdFLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRWpDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLHdCQUF3QixFQUF5QixNQUFNLFVBQVUsQ0FBQzs7QUFzQjNFLE1BQU0sT0FBTyxlQUFnQixTQUFRLFVBQVU7SUE0QjdDLFlBQW9CLElBQVksRUFBNEMsWUFBbUM7UUFDN0csS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBREYsU0FBSSxHQUFKLElBQUksQ0FBUTtRQUE0QyxpQkFBWSxHQUFaLFlBQVksQ0FBdUI7UUEzQnZHLFdBQU0sR0FBVyxFQUFFLENBQUM7UUFFckIsb0JBQWUsR0FBRyxDQUFDLENBQU0sRUFBRSxFQUFFLEdBQUUsQ0FBQyxDQUFDO1FBQ2pDLGNBQVMsR0FBRyxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7SUEwQjVCLENBQUM7SUF4QkQsSUFDVyxPQUFPLENBQUMsT0FBWTtRQUM3QixJQUFJLENBQUMsUUFBUSxtQ0FBUSxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsR0FBSyxPQUFPLENBQUUsQ0FBQztRQUM5RCxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDaEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUN2QixJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FB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QixFQUFFO1lBQ2xDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUM5QztRQUNELElBQUksQ0FBQyx5QkFBeUIsR0FBRyxTQUFTLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFDcEcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2pDLENBQUM7OzZHQTFGVSxlQUFlLHdDQTRCZ0Isd0JBQXdCO2lHQTVCdkQsZUFBZSw0RkFOZixDQUFDO1lBQ1YsT0FBTyxFQUFFLGlCQUFpQjtZQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGVBQWUsQ0FBQztZQUM5QyxLQUFLLEVBQUUsSUFBSTtTQUNaLENBQUMsaURBYlEsdURBQXVEOzRGQWV0RCxlQUFlO2tCQWpCM0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixRQUFRLEVBQUUsdURBQXVEO29CQUNqRSxNQUFNLEVBQUUsQ0FBQzs7Ozs7OztHQU9SLENBQUM7b0JBQ0YsU0FBUyxFQUFFLENBQUM7NEJBQ1YsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsZ0JBQWdCLENBQUM7NEJBQzlDLEtBQUssRUFBRSxJQUFJO3lCQUNaLENBQUM7aUJBQ0g7OzBCQTZCb0MsTUFBTTsyQkFBQyx3QkFBd0I7NENBckJ2RCxPQUFPO3NCQURqQixLQUFLO3VCQUFDLFNBQVM7Z0JBY1osS0FBSztzQkFEUixLQUFLO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGZvcndhcmRSZWYsIEluamVjdCwgSW5wdXQsIE5nWm9uZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBmcm9tRXZlbnQgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQmFzZUVkaXRvciB9IGZyb20gJy4vYmFzZS1lZGl0b3InO1xuaW1wb3J0IHsgTkdYX01PTkFDT19FRElUT1JfQ09ORklHLCBOZ3hNb25hY29FZGl0b3JDb25maWcgfSBmcm9tICcuL2NvbmZpZyc7XG5pbXBvcnQgeyBOZ3hFZGl0b3JNb2RlbCB9IGZyb20gJy4vdHlwZXMnO1xuXG5kZWNsYXJlIGxldCBtb25hY286IGFueTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmd4LW1vbmFjby1lZGl0b3InLFxuICB0ZW1wbGF0ZTogJzxkaXYgY2xhc3M9XCJlZGl0b3ItY29udGFpbmVyXCIgI2VkaXRvckNvbnRhaW5lcj48L2Rpdj4nLFxuICBzdHlsZXM6IFtgXG5cblxuICAgICAgLmVkaXRvci1jb250YWluZXIge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogOTglO1xuICAgICAgfVxuICBgXSxcbiAgcHJvdmlkZXJzOiBbe1xuICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEVkaXRvckNvbXBvbmVudCksXG4gICAgbXVsdGk6IHRydWUsXG4gIH1dLFxufSlcbmV4cG9ydCBjbGFzcyBFZGl0b3JDb21wb25lbnQgZXh0ZW5kcyBCYXNlRWRpdG9yIGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuICBwcml2YXRlIF92YWx1ZTogc3RyaW5nID0gJyc7XG5cbiAgcHVibGljIHByb3BhZ2F0ZUNoYW5nZSA9IChfOiBhbnkpID0+IHt9O1xuICBwdWJsaWMgb25Ub3VjaGVkID0gKCkgPT4ge307XG5cbiAgQElucHV0KCdvcHRpb25zJylcbiAgcHVibGljIHNldCBvcHRpb25zKG9wdGlvbnM6IGFueSkge1xuICAgIHRoaXMuX29wdGlvbnMgPSB7IC4uLnRoaXMuY29uZmlnLmRlZmF1bHRPcHRpb25zLCAuLi5vcHRpb25zIH07XG4gICAgaWYgKHRoaXMuX2VkaXRvcikge1xuICAgICAgdGhpcy5fZWRpdG9yLmRpc3Bvc2UoKTtcbiAgICAgIHRoaXMuaW5pdE1vbmFjbyhvcHRpb25zKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0IG9wdGlvbnMoKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5fb3B0aW9ucztcbiAgfVxuXG4gIEBJbnB1dCgnbW9kZWwnKVxuICBzZXQgbW9kZWwobW9kZWw6IE5neEVkaXRvck1vZGVsKSB7XG4gICAgdGhpcy5vcHRpb25zLm1vZGVsID0gbW9kZWw7XG4gICAgaWYgKHRoaXMuX2VkaXRvcikge1xuICAgICAgdGhpcy5fZWRpdG9yLmRpc3Bvc2UoKTtcbiAgICAgIHRoaXMuaW5pdE1vbmFjbyh0aGlzLm9wdGlvbnMpO1xuICAgIH1cbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgem9uZTogTmdab25lLCBASW5qZWN0KE5HWF9NT05BQ09fRURJVE9SX0NPTkZJRykgcHJpdmF0ZSBlZGl0b3JDb25maWc6IE5neE1vbmFjb0VkaXRvckNvbmZpZykge1xuICAgIHN1cGVyKGVkaXRvckNvbmZpZyk7XG4gIH1cblxuICBwdWJsaWMgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgdGhpcy5fdmFsdWUgPSB2YWx1ZSB8fCAnJztcbiAgICAvLyBGaXggZm9yIHZhbHVlIGNoYW5nZSB3aGlsZSBkaXNwb3NlIGluIHByb2Nlc3MuXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBpZiAodGhpcy5fZWRpdG9yICYmICF0aGlzLm9wdGlvbnMubW9kZWwpIHtcbiAgICAgICAgdGhpcy5fZWRpdG9yLnNldFZhbHVlKHRoaXMuX3ZhbHVlKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgcHJvdGVjdGVkIGluaXRNb25hY28ob3B0aW9uczogYW55KTogdm9pZCB7XG5cbiAgICBjb25zdCBoYXNNb2RlbCA9ICEhb3B0aW9ucy5tb2RlbDtcblxuICAgIGlmIChoYXNNb2RlbCkge1xuICAgICAgY29uc3QgbW9kZWwgPSBtb25hY28uZWRpdG9yLmdldE1vZGVsKG9wdGlvbnMubW9kZWwudXJpIHx8ICcnKTtcbiAgICAgIGlmIChtb2RlbCkge1xuICAgICAgICBvcHRpb25zLm1vZGVsID0gbW9kZWw7XG4gICAgICAgIG9wdGlvbnMubW9kZWwuc2V0VmFsdWUodGhpcy5fdmFsdWUpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgb3B0aW9ucy5tb2RlbCA9IG1vbmFjby5lZGl0b3IuY3JlYXRlTW9kZWwob3B0aW9ucy5tb2RlbC52YWx1ZSwgb3B0aW9ucy5tb2RlbC5sYW5ndWFnZSwgb3B0aW9ucy5tb2RlbC51cmkpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuX2VkaXRvciA9IG1vbmFjby5lZGl0b3IuY3JlYXRlKHRoaXMuX2VkaXRvckNvbnRhaW5lci5uYXRpdmVFbGVtZW50LCBvcHRpb25zKTtcblxuICAgIGlmICghaGFzTW9kZWwpIHtcbiAgICAgIHRoaXMuX2VkaXRvci5zZXRWYWx1ZSh0aGlzLl92YWx1ZSk7XG4gICAgfVxuXG4gICAgdGhpcy5fZWRpdG9yLm9uRGlkQ2hhbmdlTW9kZWxDb250ZW50KChlOiBhbnkpID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlID0gdGhpcy5fZWRpdG9yLmdldFZhbHVlKCk7XG5cbiAgICAgIC8vIHZhbHVlIGlzIG5vdCBwcm9wYWdhdGVkIHRvIHBhcmVudCB3aGVuIGV4ZWN1dGluZyBvdXRzaWRlIHpvbmUuXG4gICAgICB0aGlzLnpvbmUucnVuKCgpID0+IHtcbiAgICAgICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UodmFsdWUpO1xuICAgICAgICB0aGlzLl92YWx1ZSA9IHZhbHVlO1xuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICB0aGlzLl9lZGl0b3Iub25EaWRCbHVyRWRpdG9yV2lkZ2V0KCgpID0+IHtcbiAgICAgIHRoaXMub25Ub3VjaGVkKCk7XG4gICAgfSk7XG5cbiAgICAvLyByZWZyZXNoIGxheW91dCBvbiByZXNpemUgZXZlbnQuXG4gICAgaWYgKHRoaXMuX3dpbmRvd1Jlc2l6ZVN1YnNjcmlwdGlvbikge1xuICAgICAgdGhpcy5fd2luZG93UmVzaXplU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICAgIHRoaXMuX3dpbmRvd1Jlc2l6ZVN1YnNjcmlwdGlvbiA9IGZyb21FdmVudCh3aW5kb3csICdyZXNpemUnKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5fZWRpdG9yLmxheW91dCgpKTtcbiAgICB0aGlzLm9uSW5pdC5lbWl0KHRoaXMuX2VkaXRvcik7XG4gIH1cblxufVxuIl19
@@ -24,15 +24,15 @@ class BaseEditor {
24
24
  else {
25
25
  loadedMonaco = true;
26
26
  loadPromise = new Promise((resolve) => {
27
- const baseUrl = (this.config.baseUrl || './assets') + '/monaco-editor/min/vs';
27
+ const baseUrl = `${this.config.baseUrl || './assets'}/monaco-editor/min/vs`;
28
28
  if (typeof (window.monaco) === 'object') {
29
29
  resolve();
30
30
  return;
31
31
  }
32
32
  const onGotAmdLoader = () => {
33
33
  // Load monaco
34
- window.require.config({ paths: { 'vs': `${baseUrl}` } });
35
- window.require([`vs/editor/editor.main`], () => {
34
+ window.require.config({ paths: { vs: `${baseUrl}` } });
35
+ window.require(['vs/editor/editor.main'], () => {
36
36
  if (typeof this.config.onMonacoLoad === 'function') {
37
37
  this.config.onMonacoLoad();
38
38
  }
@@ -69,7 +69,7 @@ BaseEditor.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "1
69
69
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: BaseEditor, decorators: [{
70
70
  type: Component,
71
71
  args: [{
72
- template: ''
72
+ template: '',
73
73
  }]
74
74
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
75
75
  type: Inject,
@@ -91,7 +91,7 @@ class EditorComponent extends BaseEditor {
91
91
  this.onTouched = () => { };
92
92
  }
93
93
  set options(options) {
94
- this._options = Object.assign({}, this.config.defaultOptions, options);
94
+ this._options = Object.assign(Object.assign({}, this.config.defaultOptions), options);
95
95
  if (this._editor) {
96
96
  this._editor.dispose();
97
97
  this.initMonaco(options);
@@ -161,18 +161,15 @@ EditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version:
161
161
  EditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: EditorComponent, selector: "ngx-monaco-editor", inputs: { options: "options", model: "model" }, providers: [{
162
162
  provide: NG_VALUE_ACCESSOR,
163
163
  useExisting: forwardRef(() => EditorComponent),
164
- multi: true
165
- }], usesInheritance: true, ngImport: i0, template: '<div class="editor-container" #editorContainer></div>', isInline: true, styles: ["\n :host {\n display: block;\n height: 200px;\n }\n\n .editor-container {\n width: 100%;\n height: 98%;\n }\n "] });
164
+ multi: true,
165
+ }], usesInheritance: true, ngImport: i0, template: '<div class="editor-container" #editorContainer></div>', isInline: true, styles: ["\n\n\n .editor-container {\n width: 100%;\n height: 98%;\n }\n "] });
166
166
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: EditorComponent, decorators: [{
167
167
  type: Component,
168
168
  args: [{
169
169
  selector: 'ngx-monaco-editor',
170
170
  template: '<div class="editor-container" #editorContainer></div>',
171
171
  styles: [`
172
- :host {
173
- display: block;
174
- height: 200px;
175
- }
172
+
176
173
 
177
174
  .editor-container {
178
175
  width: 100%;
@@ -182,8 +179,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
182
179
  providers: [{
183
180
  provide: NG_VALUE_ACCESSOR,
184
181
  useExisting: forwardRef(() => EditorComponent),
185
- multi: true
186
- }]
182
+ multi: true,
183
+ }],
187
184
  }]
188
185
  }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: undefined, decorators: [{
189
186
  type: Inject,
@@ -197,40 +194,26 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
197
194
  }] } });
198
195
 
199
196
  class FsTextEditorComponent {
200
- constructor(_element, _document) {
201
- this._element = _element;
197
+ constructor(_document) {
202
198
  this._document = _document;
199
+ this.LINE_HEIGHT = 18;
203
200
  this.config = {};
204
201
  this.scrollable = false;
205
- this.init = new EventEmitter();
202
+ this.ready = new EventEmitter();
206
203
  this.blur = new EventEmitter();
207
- this.defaultConfig = {
208
- minimap: {
209
- enabled: false
210
- },
211
- theme: 'vs-dark',
212
- automaticLayout: false,
213
- scrollBeyondLastLine: false,
214
- autoHeight: true,
215
- scrollbar: {
216
- vertical: 'hidden'
217
- },
218
- hideCursorInOverviewRuler: true
219
- };
220
- this.onChange = (_) => { };
221
- this.onTouched = () => { };
222
- this._window = this._document.defaultView;
223
- this.LINE_HEIGHT = 18;
224
204
  this._value = '';
205
+ this._window = this._document.defaultView;
225
206
  }
226
207
  get monaco() {
227
208
  return this._window.monaco;
228
209
  }
229
- ;
230
- ;
231
210
  ngOnInit() {
232
211
  if (this.config) {
233
- this.config = Object.assign({}, this.defaultConfig, this.config);
212
+ this.config = Object.assign({ minimap: {
213
+ enabled: false,
214
+ }, theme: 'vs-dark', automaticLayout: !!this.config.height, scrollBeyondLastLine: false, autoHeight: !this.config.height, scrollbar: {
215
+ vertical: this.config.height ? 'auto' : 'hidden',
216
+ }, hideCursorInOverviewRuler: true }, this.config);
234
217
  }
235
218
  }
236
219
  ngOnDestroy() {
@@ -245,10 +228,13 @@ class FsTextEditorComponent {
245
228
  setTimeout(() => {
246
229
  this._editorRef = event;
247
230
  this._initEditor();
248
- this.init.next(event);
249
- if (!this.scrollable) {
231
+ this.ready.next(event);
232
+ if (!this.scrollable && !this.config.height) {
250
233
  this._disableScroll();
251
234
  }
235
+ if (this.config.ready) {
236
+ this.config.ready(this._editorRef);
237
+ }
252
238
  });
253
239
  }
254
240
  writeValue(value) {
@@ -260,6 +246,9 @@ class FsTextEditorComponent {
260
246
  this.onChange(e);
261
247
  }
262
248
  }
249
+ updateLayout() {
250
+ this._editorRef.layout();
251
+ }
263
252
  registerOnChange(fn) {
264
253
  this.onChange = fn;
265
254
  }
@@ -292,12 +281,9 @@ class FsTextEditorComponent {
292
281
  }
293
282
  const nextHeight = this._editorRef.getModel().getLineCount() * lineHeight;
294
283
  // set the height and redo layout
295
- editorDomNode.style.height = nextHeight + 'px';
284
+ editorDomNode.style.height = `${nextHeight}px`;
296
285
  this.updateLayout();
297
286
  }
298
- updateLayout() {
299
- this._editorRef.layout();
300
- }
301
287
  _disableScroll() {
302
288
  const node = this._editorRef.getDomNode();
303
289
  node.addEventListener('wheel', (e) => {
@@ -305,38 +291,35 @@ class FsTextEditorComponent {
305
291
  }, true);
306
292
  }
307
293
  }
308
- FsTextEditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: FsTextEditorComponent, deps: [{ token: i0.ElementRef }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component });
309
- FsTextEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: FsTextEditorComponent, selector: "fs-text-editor", inputs: { config: "config", scrollable: "scrollable" }, outputs: { init: "init", blur: "blur" }, providers: [{
294
+ FsTextEditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: FsTextEditorComponent, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component });
295
+ FsTextEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: FsTextEditorComponent, selector: "fs-text-editor", inputs: { config: "config", scrollable: "scrollable" }, outputs: { ready: "ready", blur: "blur" }, providers: [{
310
296
  provide: NG_VALUE_ACCESSOR,
311
297
  useExisting: forwardRef(() => FsTextEditorComponent),
312
- multi: true
313
- }], viewQueries: [{ propertyName: "_editorContainer", first: true, predicate: EditorComponent, descendants: true, static: true }], ngImport: i0, template: "<ngx-monaco-editor\n [ngModel]=\"value\"\n (ngModelChange)=\"changed($event)\"\n [options]=\"config\"\n (onInit)=\"onEditorInit($event)\">\n</ngx-monaco-editor>\n", styles: [":host ngx-monaco-editor{height:100%!important}:host ::ng-deep .decorationsOverviewRuler{display:none}:host ::ng-deep .margin,:host ::ng-deep .monaco-editor-background{top:0px!important}\n"], components: [{ type: EditorComponent, selector: "ngx-monaco-editor", inputs: ["options", "model"] }], directives: [{ type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
298
+ multi: true,
299
+ }], ngImport: i0, template: "<ngx-monaco-editor\n [style.height]=\"config.height\"\n [ngModel]=\"value\"\n (ngModelChange)=\"changed($event)\"\n [options]=\"config\"\n (onInit)=\"onEditorInit($event)\">\n</ngx-monaco-editor>\n", styles: ["ngx-monaco-editor{display:block}\n"], components: [{ type: EditorComponent, selector: "ngx-monaco-editor", inputs: ["options", "model"] }], directives: [{ type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
314
300
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: FsTextEditorComponent, decorators: [{
315
301
  type: Component,
316
302
  args: [{
317
303
  selector: 'fs-text-editor',
318
- templateUrl: 'text-editor.component.html',
319
- styleUrls: ['text-editor.component.scss'],
304
+ templateUrl: './text-editor.component.html',
305
+ styleUrls: ['./text-editor.component.scss'],
320
306
  providers: [{
321
307
  provide: NG_VALUE_ACCESSOR,
322
308
  useExisting: forwardRef(() => FsTextEditorComponent),
323
- multi: true
324
- }]
309
+ multi: true,
310
+ }],
325
311
  }]
326
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: Document, decorators: [{
312
+ }], ctorParameters: function () { return [{ type: Document, decorators: [{
327
313
  type: Inject,
328
314
  args: [DOCUMENT]
329
315
  }] }]; }, propDecorators: { config: [{
330
316
  type: Input
331
317
  }], scrollable: [{
332
318
  type: Input
333
- }], init: [{
319
+ }], ready: [{
334
320
  type: Output
335
321
  }], blur: [{
336
322
  type: Output
337
- }], _editorContainer: [{
338
- type: ViewChild,
339
- args: [EditorComponent, { static: true }]
340
323
  }] } });
341
324
 
342
325
  class DiffEditorComponent extends BaseEditor {
@@ -345,7 +328,7 @@ class DiffEditorComponent extends BaseEditor {
345
328
  this.editorConfig = editorConfig;
346
329
  }
347
330
  set options(options) {
348
- this._options = Object.assign({}, this.config.defaultOptions, options);
331
+ this._options = Object.assign(Object.assign({}, this.config.defaultOptions), options);
349
332
  if (this._editor) {
350
333
  this._editor.dispose();
351
334
  this.initMonaco(options);
@@ -374,15 +357,15 @@ class DiffEditorComponent extends BaseEditor {
374
357
  }
375
358
  this._originalModel.language = this._originalModel.language || options.language;
376
359
  this._modifiedModel.language = this._modifiedModel.language || options.language;
377
- let originalModel = monaco.editor.createModel(this._originalModel.code, this._originalModel.language);
378
- let modifiedModel = monaco.editor.createModel(this._modifiedModel.code, this._modifiedModel.language);
360
+ const originalModel = monaco.editor.createModel(this._originalModel.code, this._originalModel.language);
361
+ const modifiedModel = monaco.editor.createModel(this._modifiedModel.code, this._modifiedModel.language);
379
362
  this._editorContainer.nativeElement.innerHTML = '';
380
363
  const theme = options.theme;
381
364
  this._editor = monaco.editor.createDiffEditor(this._editorContainer.nativeElement, options);
382
365
  options.theme = theme;
383
366
  this._editor.setModel({
384
367
  original: originalModel,
385
- modified: modifiedModel
368
+ modified: modifiedModel,
386
369
  });
387
370
  // refresh layout on resize event.
388
371
  if (this._windowResizeSubscription) {
@@ -409,7 +392,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
409
392
  width: 100%;
410
393
  height: 98%;
411
394
  }
412
- `]
395
+ `],
413
396
  }]
414
397
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
415
398
  type: Inject,
@@ -1 +1 @@
1
- {"version":3,"file":"firestitch-text-editor.js","sources":["../../src/app/modules/ngx-monaco-editor/config.ts","../../src/app/modules/ngx-monaco-editor/base-editor.ts","../../src/app/modules/ngx-monaco-editor/editor.component.ts","../../src/app/components/text-editor/text-editor.component.ts","../../src/app/components/text-editor/text-editor.component.html","../../src/app/modules/ngx-monaco-editor/diff-editor.component.ts","../../src/app/modules/ngx-monaco-editor/editor.module.ts","../../src/app/fs-text-editor.module.ts","../../src/public_api.ts","../../src/firestitch-text-editor.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\nexport const NGX_MONACO_EDITOR_CONFIG = new InjectionToken('NGX_MONACO_EDITOR_CONFIG');\n\nexport interface NgxMonacoEditorConfig {\n baseUrl?: string;\n defaultOptions?: { [key: string]: any; };\n onMonacoLoad?: Function;\n}\n","import { AfterViewInit, Component, ElementRef, EventEmitter, Inject, OnDestroy, Output, ViewChild } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { NGX_MONACO_EDITOR_CONFIG, NgxMonacoEditorConfig } from './config';\n\nlet loadedMonaco = false;\nlet loadPromise: Promise<void>;\n\n@Component({\n template: ''\n})\nexport abstract class BaseEditor implements AfterViewInit, OnDestroy {\n @ViewChild('editorContainer', { static: true }) _editorContainer: ElementRef;\n @Output() onInit = new EventEmitter<any>();\n protected _editor: any;\n protected _options: any;\n protected _windowResizeSubscription: Subscription;\n\n constructor(@Inject(NGX_MONACO_EDITOR_CONFIG) protected config: NgxMonacoEditorConfig) {}\n\n ngAfterViewInit(): void {\n if (loadedMonaco) {\n // Wait until monaco editor is available\n loadPromise.then(() => {\n this.initMonaco(this._options);\n });\n } else {\n loadedMonaco = true;\n loadPromise = new Promise<void>((resolve: any) => {\n const baseUrl = (this.config.baseUrl || './assets') + '/monaco-editor/min/vs';\n if (typeof ((<any>window).monaco) === 'object') {\n resolve();\n return;\n }\n const onGotAmdLoader: any = () => {\n // Load monaco\n (<any>window).require.config({ paths: { 'vs': `${baseUrl}` } });\n (<any>window).require([`vs/editor/editor.main`], () => {\n if (typeof this.config.onMonacoLoad === 'function') {\n this.config.onMonacoLoad();\n }\n this.initMonaco(this._options);\n resolve();\n });\n };\n\n // Load AMD loader if necessary\n if (!(<any>window).require) {\n const loaderScript: HTMLScriptElement = document.createElement('script');\n loaderScript.type = 'text/javascript';\n loaderScript.src = `${baseUrl}/loader.js`;\n loaderScript.addEventListener('load', onGotAmdLoader);\n document.body.appendChild(loaderScript);\n } else {\n onGotAmdLoader();\n }\n });\n }\n }\n\n protected abstract initMonaco(options: any): void;\n\n ngOnDestroy() {\n if (this._windowResizeSubscription) {\n this._windowResizeSubscription.unsubscribe();\n }\n if (this._editor) {\n this._editor.dispose();\n this._editor = undefined;\n }\n }\n}\n","import { Component, forwardRef, Inject, Input, NgZone } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { fromEvent } from 'rxjs';\n\nimport { BaseEditor } from './base-editor';\nimport { NGX_MONACO_EDITOR_CONFIG, NgxMonacoEditorConfig } from './config';\nimport { NgxEditorModel } from './types';\n\ndeclare var monaco: any;\n\n@Component({\n selector: 'ngx-monaco-editor',\n template: '<div class=\"editor-container\" #editorContainer></div>',\n styles: [`\n :host {\n display: block;\n height: 200px;\n }\n\n .editor-container {\n width: 100%;\n height: 98%;\n }\n `],\n providers: [{\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => EditorComponent),\n multi: true\n }]\n})\nexport class EditorComponent extends BaseEditor implements ControlValueAccessor {\n private _value: string = '';\n\n propagateChange = (_: any) => {};\n onTouched = () => {};\n\n @Input('options')\n set options(options: any) {\n this._options = Object.assign({}, this.config.defaultOptions, options);\n if (this._editor) {\n this._editor.dispose();\n this.initMonaco(options);\n }\n }\n\n get options(): any {\n return this._options;\n }\n\n @Input('model')\n set model(model: NgxEditorModel) {\n this.options.model = model;\n if (this._editor) {\n this._editor.dispose();\n this.initMonaco(this.options);\n }\n }\n\n constructor(private zone: NgZone, @Inject(NGX_MONACO_EDITOR_CONFIG) private editorConfig: NgxMonacoEditorConfig) {\n super(editorConfig);\n }\n\n writeValue(value: any): void {\n this._value = value || '';\n // Fix for value change while dispose in process.\n setTimeout(() => {\n if (this._editor && !this.options.model) {\n this._editor.setValue(this._value);\n }\n });\n }\n\n registerOnChange(fn: any): void {\n this.propagateChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this.onTouched = fn;\n }\n\n protected initMonaco(options: any): void {\n\n const hasModel = !!options.model;\n\n if (hasModel) {\n const model = monaco.editor.getModel(options.model.uri || '');\n if (model) {\n options.model = model;\n options.model.setValue(this._value);\n } else {\n options.model = monaco.editor.createModel(options.model.value, options.model.language, options.model.uri);\n }\n }\n\n this._editor = monaco.editor.create(this._editorContainer.nativeElement, options);\n\n if (!hasModel) {\n this._editor.setValue(this._value);\n }\n\n this._editor.onDidChangeModelContent((e: any) => {\n const value = this._editor.getValue();\n\n // value is not propagated to parent when executing outside zone.\n this.zone.run(() => {\n this.propagateChange(value);\n this._value = value;\n });\n });\n\n this._editor.onDidBlurEditorWidget(() => {\n this.onTouched();\n });\n\n // refresh layout on resize event.\n if (this._windowResizeSubscription) {\n this._windowResizeSubscription.unsubscribe();\n }\n this._windowResizeSubscription = fromEvent(window, 'resize').subscribe(() => this._editor.layout());\n this.onInit.emit(this._editor);\n }\n\n}\n","import { DOCUMENT } from '@angular/common';\nimport {\n Component,\n ElementRef,\n EventEmitter,\n Inject,\n Input,\n OnDestroy,\n OnInit,\n Output,\n ViewChild,\n forwardRef,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { editor } from 'monaco-editor';\n\nimport { FsTextEditorConfig } from '../../interfaces/config.interface';\nimport { EditorComponent } from '../../modules/ngx-monaco-editor/editor.component';\n\n\n@Component({\n selector: 'fs-text-editor',\n templateUrl: 'text-editor.component.html',\n styleUrls: [ 'text-editor.component.scss' ],\n providers: [{\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => FsTextEditorComponent),\n multi: true\n }]\n})\nexport class FsTextEditorComponent implements OnInit, OnDestroy, ControlValueAccessor {\n\n @Input() public config: FsTextEditorConfig = {};\n @Input() public scrollable = false;\n\n @Output() public init = new EventEmitter();\n @Output() public blur = new EventEmitter();\n @ViewChild(EditorComponent, { static: true }) _editorContainer: EditorComponent;\n\n public defaultConfig: FsTextEditorConfig = {\n minimap: {\n enabled: false\n },\n theme: 'vs-dark',\n automaticLayout: false,\n scrollBeyondLastLine: false,\n autoHeight: true,\n scrollbar: {\n vertical: 'hidden'\n },\n hideCursorInOverviewRuler: true\n };\n\n public onChange = (_: any) => {};\n public onTouched = () => {};\n\n private _window: any = this._document.defaultView;\n\n public get monaco() {\n return this._window.monaco;\n };\n\n constructor(\n private _element: ElementRef,\n @Inject(DOCUMENT)\n private _document: Document,\n ) {};\n\n public readonly LINE_HEIGHT = 18;\n\n private _editorRef: editor.ICodeEditor;\n private _value = '';\n\n public ngOnInit() {\n\n if (this.config) {\n this.config = Object.assign({}, this.defaultConfig, this.config);\n }\n }\n\n public ngOnDestroy() {\n // must be there to cleanup https://github.com/microsoft/monaco-editor/issues/827\n this._window.define = null;\n }\n\n get value() {\n return this._value;\n }\n\n public onEditorInit(event) {\n // Timeout allows the content to fully load to and calculate height\n setTimeout(() => {\n this._editorRef = event;\n this._initEditor();\n this.init.next(event);\n\n if (!this.scrollable) {\n this._disableScroll();\n }\n });\n }\n\n public writeValue(value: any): void {\n this._value = value || '';\n }\n\n public changed(e) {\n if (this._value !== e) {\n this._value = e;\n this.onChange(e);\n }\n }\n\n public registerOnChange(fn: any): void {\n this.onChange = fn;\n }\n\n public registerOnTouched(fn: any): void {\n this.onTouched = fn;\n }\n\n private _initEditor() {\n if (this._editorRef && this.config.autoHeight) {\n this._updateEditorHeight();\n\n this._editorRef.onDidChangeModelContent((e) => {\n this._updateEditorHeight();\n });\n\n this._editorRef.onDidBlurEditorText(() => {\n this.blur.next();\n });\n }\n }\n\n private _updateEditorHeight() {\n\n const editorDomNode = this._editorRef.getDomNode();\n\n if (!editorDomNode) {\n return;\n }\n\n const container = editorDomNode.getElementsByClassName('view-lines')[0] as HTMLElement;\n const lineHeight = container.firstChild\n ? (container.firstChild as HTMLElement).offsetHeight\n : this.LINE_HEIGHT;\n\n const editorModel = this._editorRef.getModel();\n\n if (!editorModel) {\n return;\n }\n\n const nextHeight = this._editorRef.getModel().getLineCount() * lineHeight;\n\n // set the height and redo layout\n editorDomNode.style.height = nextHeight + 'px';\n this.updateLayout();\n }\n\n public updateLayout(): void {\n this._editorRef.layout();\n }\n\n private _disableScroll() {\n const node = this._editorRef.getDomNode();\n\n node.addEventListener('wheel', (e) => {\n e.stopPropagation();\n }, true);\n }\n}\n","<ngx-monaco-editor\n [ngModel]=\"value\"\n (ngModelChange)=\"changed($event)\"\n [options]=\"config\"\n (onInit)=\"onEditorInit($event)\">\n</ngx-monaco-editor>\n","import { Component, Inject, Input } from '@angular/core';\nimport { fromEvent } from 'rxjs';\n\nimport { BaseEditor } from './base-editor';\nimport { NGX_MONACO_EDITOR_CONFIG, NgxMonacoEditorConfig } from './config';\nimport { DiffEditorModel } from './types';\n\ndeclare var monaco: any;\n\n@Component({\n selector: 'ngx-monaco-diff-editor',\n template: '<div class=\"editor-container\" #editorContainer></div>',\n styles: [`\n :host {\n display: block;\n height: 200px;\n }\n\n .editor-container {\n width: 100%;\n height: 98%;\n }\n `]\n})\nexport class DiffEditorComponent extends BaseEditor {\n\n _originalModel: DiffEditorModel;\n _modifiedModel: DiffEditorModel;\n\n @Input('options')\n set options(options: any) {\n this._options = Object.assign({}, this.config.defaultOptions, options);\n if (this._editor) {\n this._editor.dispose();\n this.initMonaco(options);\n }\n }\n\n get options(): any {\n return this._options;\n }\n\n @Input('originalModel')\n set originalModel(model: DiffEditorModel) {\n this._originalModel = model;\n if (this._editor) {\n this._editor.dispose();\n this.initMonaco(this.options);\n }\n }\n\n @Input('modifiedModel')\n set modifiedModel(model: DiffEditorModel) {\n this._modifiedModel = model;\n if (this._editor) {\n this._editor.dispose();\n this.initMonaco(this.options);\n }\n }\n\n constructor(@Inject(NGX_MONACO_EDITOR_CONFIG) private editorConfig: NgxMonacoEditorConfig) {\n super(editorConfig);\n }\n\n protected initMonaco(options: any): void {\n\n if (!this._originalModel || !this._modifiedModel) {\n throw new Error('originalModel or modifiedModel not found for ngx-monaco-diff-editor');\n }\n\n this._originalModel.language = this._originalModel.language || options.language;\n this._modifiedModel.language = this._modifiedModel.language || options.language;\n\n let originalModel = monaco.editor.createModel(this._originalModel.code, this._originalModel.language);\n let modifiedModel = monaco.editor.createModel(this._modifiedModel.code, this._modifiedModel.language);\n\n this._editorContainer.nativeElement.innerHTML = '';\n const theme = options.theme;\n this._editor = monaco.editor.createDiffEditor(this._editorContainer.nativeElement, options);\n options.theme = theme;\n this._editor.setModel({\n original: originalModel,\n modified: modifiedModel\n });\n\n // refresh layout on resize event.\n if (this._windowResizeSubscription) {\n this._windowResizeSubscription.unsubscribe();\n }\n this._windowResizeSubscription = fromEvent(window, 'resize').subscribe(() => this._editor.layout());\n this.onInit.emit(this._editor);\n }\n\n}\n","import { CommonModule } from '@angular/common';\nimport { ModuleWithProviders, NgModule } from '@angular/core';\n\nimport { NGX_MONACO_EDITOR_CONFIG, NgxMonacoEditorConfig } from './config';\nimport { DiffEditorComponent } from './diff-editor.component';\nimport { EditorComponent } from './editor.component';\n\n@NgModule({\n imports: [\n CommonModule\n ],\n declarations: [\n EditorComponent,\n DiffEditorComponent\n ],\n exports: [\n EditorComponent,\n DiffEditorComponent\n ]\n})\nexport class MonacoEditorModule {\n public static forRoot(config: NgxMonacoEditorConfig = {}): ModuleWithProviders<MonacoEditorModule> {\n return {\n ngModule: MonacoEditorModule,\n providers: [\n { provide: NGX_MONACO_EDITOR_CONFIG, useValue: config }\n ]\n };\n }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\n\nimport { FsTextEditorComponent } from './components/text-editor/text-editor.component';\nimport { MonacoEditorModule } from './modules/ngx-monaco-editor/editor.module';\nimport { NgxMonacoEditorConfig } from './modules/ngx-monaco-editor/config';\n\n\n@NgModule({\n imports: [\n CommonModule,\n MonacoEditorModule,\n FormsModule,\n ],\n exports: [\n FsTextEditorComponent,\n ],\n entryComponents: [\n ],\n declarations: [\n FsTextEditorComponent,\n ]\n})\nexport class FsTextEditorModule {\n static forRoot(config?: NgxMonacoEditorConfig): ModuleWithProviders<FsTextEditorModule> {\n return {\n ngModule: FsTextEditorModule,\n providers: [\n MonacoEditorModule.forRoot(config).providers,\n ],\n };\n }\n}\n","/*\n * Public API Surface of fs-menu\n */\n\nimport { from } from 'rxjs';\n\nexport { FsTextEditorModule } from './app/fs-text-editor.module';\n\nexport { FsTextEditorConfig } from './app/interfaces/config.interface';\n\n\nexport { FsTextEditorComponent } from './app/components/text-editor/text-editor.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1.EditorComponent"],"mappings":"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"}
1
+ {"version":3,"file":"firestitch-text-editor.js","sources":["../../src/app/modules/ngx-monaco-editor/config.ts","../../src/app/modules/ngx-monaco-editor/base-editor.ts","../../src/app/modules/ngx-monaco-editor/editor.component.ts","../../src/app/components/text-editor/text-editor.component.ts","../../src/app/components/text-editor/text-editor.component.html","../../src/app/modules/ngx-monaco-editor/diff-editor.component.ts","../../src/app/modules/ngx-monaco-editor/editor.module.ts","../../src/app/fs-text-editor.module.ts","../../src/public_api.ts","../../src/firestitch-text-editor.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\nexport const NGX_MONACO_EDITOR_CONFIG = new InjectionToken('NGX_MONACO_EDITOR_CONFIG');\n\nexport interface NgxMonacoEditorConfig {\n baseUrl?: string;\n defaultOptions?: { [key: string]: any; };\n onMonacoLoad?: Function;\n}\n","import { AfterViewInit, Component, ElementRef, EventEmitter, Inject, OnDestroy, Output, ViewChild } from '@angular/core';\n\nimport { Subscription } from 'rxjs';\n\nimport { editor } from 'monaco-editor';\n\nimport { NGX_MONACO_EDITOR_CONFIG, NgxMonacoEditorConfig } from './config';\n\nlet loadedMonaco = false;\nlet loadPromise: Promise<void>;\n\n@Component({\n template: '',\n})\nexport abstract class BaseEditor implements AfterViewInit, OnDestroy {\n\n @ViewChild('editorContainer', { static: true }) public _editorContainer: ElementRef;\n\n @Output() public onInit = new EventEmitter<any>();\n\n protected _editor: editor.ICodeEditor;\n protected _options: any;\n protected _windowResizeSubscription: Subscription;\n\n constructor(@Inject(NGX_MONACO_EDITOR_CONFIG) protected config: NgxMonacoEditorConfig) {}\n\n public ngAfterViewInit(): void {\n if (loadedMonaco) {\n // Wait until monaco editor is available\n loadPromise.then(() => {\n this.initMonaco(this._options);\n });\n } else {\n loadedMonaco = true;\n loadPromise = new Promise<void>((resolve: any) => {\n const baseUrl = `${this.config.baseUrl || './assets' }/monaco-editor/min/vs`;\n if (typeof ((<any>window).monaco) === 'object') {\n resolve();\n\n return;\n }\n const onGotAmdLoader: any = () => {\n // Load monaco\n (<any>window).require.config({ paths: { vs: `${baseUrl}` } });\n (<any>window).require(['vs/editor/editor.main'], () => {\n if (typeof this.config.onMonacoLoad === 'function') {\n this.config.onMonacoLoad();\n }\n this.initMonaco(this._options);\n resolve();\n });\n };\n\n // Load AMD loader if necessary\n if (!(<any>window).require) {\n const loaderScript: HTMLScriptElement = document.createElement('script');\n loaderScript.type = 'text/javascript';\n loaderScript.src = `${baseUrl}/loader.js`;\n loaderScript.addEventListener('load', onGotAmdLoader);\n document.body.appendChild(loaderScript);\n } else {\n onGotAmdLoader();\n }\n });\n }\n }\n\n public ngOnDestroy() {\n if (this._windowResizeSubscription) {\n this._windowResizeSubscription.unsubscribe();\n }\n if (this._editor) {\n this._editor.dispose();\n this._editor = undefined;\n }\n }\n\n protected abstract initMonaco(options: any): void;\n}\n","import { Component, forwardRef, Inject, Input, NgZone } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { fromEvent } from 'rxjs';\n\nimport { BaseEditor } from './base-editor';\nimport { NGX_MONACO_EDITOR_CONFIG, NgxMonacoEditorConfig } from './config';\nimport { NgxEditorModel } from './types';\n\ndeclare let monaco: any;\n\n@Component({\n selector: 'ngx-monaco-editor',\n template: '<div class=\"editor-container\" #editorContainer></div>',\n styles: [`\n\n\n .editor-container {\n width: 100%;\n height: 98%;\n }\n `],\n providers: [{\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => EditorComponent),\n multi: true,\n }],\n})\nexport class EditorComponent extends BaseEditor implements ControlValueAccessor {\n private _value: string = '';\n\n public propagateChange = (_: any) => {};\n public onTouched = () => {};\n\n @Input('options')\n public set options(options: any) {\n this._options = { ...this.config.defaultOptions, ...options };\n if (this._editor) {\n this._editor.dispose();\n this.initMonaco(options);\n }\n }\n\n public get options(): any {\n return this._options;\n }\n\n @Input('model')\n set model(model: NgxEditorModel) {\n this.options.model = model;\n if (this._editor) {\n this._editor.dispose();\n this.initMonaco(this.options);\n }\n }\n\n constructor(private zone: NgZone, @Inject(NGX_MONACO_EDITOR_CONFIG) private editorConfig: NgxMonacoEditorConfig) {\n super(editorConfig);\n }\n\n public writeValue(value: any): void {\n this._value = value || '';\n // Fix for value change while dispose in process.\n setTimeout(() => {\n if (this._editor && !this.options.model) {\n this._editor.setValue(this._value);\n }\n });\n }\n\n public registerOnChange(fn: any): void {\n this.propagateChange = fn;\n }\n\n public registerOnTouched(fn: any): void {\n this.onTouched = fn;\n }\n\n protected initMonaco(options: any): void {\n\n const hasModel = !!options.model;\n\n if (hasModel) {\n const model = monaco.editor.getModel(options.model.uri || '');\n if (model) {\n options.model = model;\n options.model.setValue(this._value);\n } else {\n options.model = monaco.editor.createModel(options.model.value, options.model.language, options.model.uri);\n }\n }\n\n this._editor = monaco.editor.create(this._editorContainer.nativeElement, options);\n\n if (!hasModel) {\n this._editor.setValue(this._value);\n }\n\n this._editor.onDidChangeModelContent((e: any) => {\n const value = this._editor.getValue();\n\n // value is not propagated to parent when executing outside zone.\n this.zone.run(() => {\n this.propagateChange(value);\n this._value = value;\n });\n });\n\n this._editor.onDidBlurEditorWidget(() => {\n this.onTouched();\n });\n\n // refresh layout on resize event.\n if (this._windowResizeSubscription) {\n this._windowResizeSubscription.unsubscribe();\n }\n this._windowResizeSubscription = fromEvent(window, 'resize').subscribe(() => this._editor.layout());\n this.onInit.emit(this._editor);\n }\n\n}\n","import { DOCUMENT } from '@angular/common';\nimport {\n Component,\n EventEmitter,\n Inject,\n Input,\n OnDestroy,\n OnInit,\n Output,\n forwardRef,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { editor } from 'monaco-editor';\n\nimport { FsTextEditorConfig } from '../../interfaces/config.interface';\n\n\n@Component({\n selector: 'fs-text-editor',\n templateUrl: './text-editor.component.html',\n styleUrls: ['./text-editor.component.scss'],\n providers: [{\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => FsTextEditorComponent),\n multi: true,\n }],\n})\nexport class FsTextEditorComponent implements OnInit, OnDestroy, ControlValueAccessor {\n\n public readonly LINE_HEIGHT = 18;\n\n @Input() public config: FsTextEditorConfig = {};\n @Input() public scrollable = false;\n\n @Output() public ready = new EventEmitter();\n @Output() public blur = new EventEmitter();\n\n public onChange: (_: any) => void;\n public onTouched: () => void;\n\n private _editorRef: editor.ICodeEditor;\n private _value = '';\n private _window: any = this._document.defaultView;\n\n constructor(\n @Inject(DOCUMENT) private _document: Document,\n ) {}\n\n public get monaco() {\n return this._window.monaco;\n }\n\n public ngOnInit() {\n if (this.config) {\n\n this.config = {\n minimap: {\n enabled: false,\n },\n theme: 'vs-dark',\n automaticLayout: !!this.config.height,\n scrollBeyondLastLine: false,\n autoHeight: !this.config.height,\n scrollbar: {\n vertical: this.config.height ? 'auto' : 'hidden',\n },\n hideCursorInOverviewRuler: true,\n ...this.config,\n };\n }\n }\n\n public ngOnDestroy() {\n // must be there to cleanup https://github.com/microsoft/monaco-editor/issues/827\n this._window.define = null;\n }\n\n public get value() {\n return this._value;\n }\n\n public onEditorInit(event) {\n // Timeout allows the content to fully load to and calculate height\n setTimeout(() => {\n this._editorRef = event;\n this._initEditor();\n this.ready.next(event);\n\n if (!this.scrollable && !this.config.height) {\n this._disableScroll();\n }\n\n if(this.config.ready) {\n this.config.ready(this._editorRef);\n }\n });\n }\n\n public writeValue(value: any): void {\n this._value = value || '';\n }\n\n public changed(e) {\n if (this._value !== e) {\n this._value = e;\n this.onChange(e);\n }\n }\n\n public updateLayout(): void {\n this._editorRef.layout();\n }\n\n public registerOnChange(fn: any): void {\n this.onChange = fn;\n }\n\n public registerOnTouched(fn: any): void {\n this.onTouched = fn;\n }\n\n private _initEditor() {\n if (this._editorRef && this.config.autoHeight) {\n this._updateEditorHeight();\n\n this._editorRef.onDidChangeModelContent((e) => {\n this._updateEditorHeight();\n });\n\n this._editorRef.onDidBlurEditorText(() => {\n this.blur.next();\n });\n }\n }\n\n private _updateEditorHeight() {\n const editorDomNode = this._editorRef.getDomNode();\n\n if (!editorDomNode) {\n return;\n }\n\n const container = editorDomNode.getElementsByClassName('view-lines')[0] as HTMLElement;\n const lineHeight = container.firstChild\n ? (container.firstChild as HTMLElement).offsetHeight\n : this.LINE_HEIGHT;\n\n const editorModel = this._editorRef.getModel();\n\n if (!editorModel) {\n return;\n }\n\n const nextHeight = this._editorRef.getModel().getLineCount() * lineHeight;\n\n // set the height and redo layout\n editorDomNode.style.height = `${nextHeight }px`;\n this.updateLayout();\n }\n\n private _disableScroll() {\n const node = this._editorRef.getDomNode();\n\n node.addEventListener('wheel', (e) => {\n e.stopPropagation();\n }, true);\n }\n}\n","<ngx-monaco-editor\n [style.height]=\"config.height\"\n [ngModel]=\"value\"\n (ngModelChange)=\"changed($event)\"\n [options]=\"config\"\n (onInit)=\"onEditorInit($event)\">\n</ngx-monaco-editor>\n","import { Component, Inject, Input } from '@angular/core';\n\nimport { fromEvent } from 'rxjs';\n\nimport { BaseEditor } from './base-editor';\nimport { NGX_MONACO_EDITOR_CONFIG, NgxMonacoEditorConfig } from './config';\nimport { DiffEditorModel } from './types';\n\ndeclare let monaco: any;\n\n@Component({\n selector: 'ngx-monaco-diff-editor',\n template: '<div class=\"editor-container\" #editorContainer></div>',\n styles: [`\n :host {\n display: block;\n height: 200px;\n }\n\n .editor-container {\n width: 100%;\n height: 98%;\n }\n `],\n})\nexport class DiffEditorComponent extends BaseEditor {\n\n _originalModel: DiffEditorModel;\n _modifiedModel: DiffEditorModel;\n\n @Input('options')\n set options(options: any) {\n this._options = { ...this.config.defaultOptions, ...options };\n if (this._editor) {\n this._editor.dispose();\n this.initMonaco(options);\n }\n }\n\n get options(): any {\n return this._options;\n }\n\n @Input('originalModel')\n set originalModel(model: DiffEditorModel) {\n this._originalModel = model;\n if (this._editor) {\n this._editor.dispose();\n this.initMonaco(this.options);\n }\n }\n\n @Input('modifiedModel')\n set modifiedModel(model: DiffEditorModel) {\n this._modifiedModel = model;\n if (this._editor) {\n this._editor.dispose();\n this.initMonaco(this.options);\n }\n }\n\n constructor(@Inject(NGX_MONACO_EDITOR_CONFIG) private editorConfig: NgxMonacoEditorConfig) {\n super(editorConfig);\n }\n\n protected initMonaco(options: any): void {\n\n if (!this._originalModel || !this._modifiedModel) {\n throw new Error('originalModel or modifiedModel not found for ngx-monaco-diff-editor');\n }\n\n this._originalModel.language = this._originalModel.language || options.language;\n this._modifiedModel.language = this._modifiedModel.language || options.language;\n\n const originalModel = monaco.editor.createModel(this._originalModel.code, this._originalModel.language);\n const modifiedModel = monaco.editor.createModel(this._modifiedModel.code, this._modifiedModel.language);\n\n this._editorContainer.nativeElement.innerHTML = '';\n const theme = options.theme;\n this._editor = monaco.editor.createDiffEditor(this._editorContainer.nativeElement, options);\n options.theme = theme;\n this._editor.setModel({\n original: originalModel,\n modified: modifiedModel,\n } as any);\n\n // refresh layout on resize event.\n if (this._windowResizeSubscription) {\n this._windowResizeSubscription.unsubscribe();\n }\n this._windowResizeSubscription = fromEvent(window, 'resize').subscribe(() => this._editor.layout());\n this.onInit.emit(this._editor);\n }\n\n}\n","import { CommonModule } from '@angular/common';\nimport { ModuleWithProviders, NgModule } from '@angular/core';\n\nimport { NGX_MONACO_EDITOR_CONFIG, NgxMonacoEditorConfig } from './config';\nimport { DiffEditorComponent } from './diff-editor.component';\nimport { EditorComponent } from './editor.component';\n\n@NgModule({\n imports: [\n CommonModule\n ],\n declarations: [\n EditorComponent,\n DiffEditorComponent\n ],\n exports: [\n EditorComponent,\n DiffEditorComponent\n ]\n})\nexport class MonacoEditorModule {\n public static forRoot(config: NgxMonacoEditorConfig = {}): ModuleWithProviders<MonacoEditorModule> {\n return {\n ngModule: MonacoEditorModule,\n providers: [\n { provide: NGX_MONACO_EDITOR_CONFIG, useValue: config }\n ]\n };\n }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\n\nimport { FsTextEditorComponent } from './components/text-editor/text-editor.component';\nimport { MonacoEditorModule } from './modules/ngx-monaco-editor/editor.module';\nimport { NgxMonacoEditorConfig } from './modules/ngx-monaco-editor/config';\n\n\n@NgModule({\n imports: [\n CommonModule,\n MonacoEditorModule,\n FormsModule,\n ],\n exports: [\n FsTextEditorComponent,\n ],\n entryComponents: [\n ],\n declarations: [\n FsTextEditorComponent,\n ]\n})\nexport class FsTextEditorModule {\n static forRoot(config?: NgxMonacoEditorConfig): ModuleWithProviders<FsTextEditorModule> {\n return {\n ngModule: FsTextEditorModule,\n providers: [\n MonacoEditorModule.forRoot(config).providers,\n ],\n };\n }\n}\n","/*\n * Public API Surface of fs-menu\n */\n\nimport { from } from 'rxjs';\n\nexport { FsTextEditorModule } from './app/fs-text-editor.module';\n\nexport { FsTextEditorConfig } from './app/interfaces/config.interface';\n\n\nexport { FsTextEditorComponent } from './app/components/text-editor/text-editor.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1.EditorComponent"],"mappings":"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"}