@firestitch/text-editor 9.0.3 → 12.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,4 +2,4 @@
2
2
  * Generated bundle index. Do not edit.
3
3
  */
4
4
  export * from './public_api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlyZXN0aXRjaC10ZXh0LWVkaXRvci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BmaXJlc3RpdGNoL3RleHQtZWRpdG9yLyIsInNvdXJjZXMiOlsiZmlyZXN0aXRjaC10ZXh0LWVkaXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpY19hcGknO1xuIl19
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlyZXN0aXRjaC10ZXh0LWVkaXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9maXJlc3RpdGNoLXRleHQtZWRpdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljX2FwaSc7XG4iXX0=
@@ -3,4 +3,4 @@
3
3
  */
4
4
  export { FsTextEditorModule } from './app/fs-text-editor.module';
5
5
  export { FsTextEditorComponent } from './app/components/text-editor/text-editor.component';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BmaXJlc3RpdGNoL3RleHQtZWRpdG9yLyIsInNvdXJjZXMiOlsicHVibGljX2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUlILE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBS2pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBmcy1tZW51XG4gKi9cblxuaW1wb3J0IHsgZnJvbSB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgeyBGc1RleHRFZGl0b3JNb2R1bGUgfSBmcm9tICcuL2FwcC9mcy10ZXh0LWVkaXRvci5tb2R1bGUnO1xuXG5leHBvcnQgeyBGc1RleHRFZGl0b3JDb25maWcgfSBmcm9tICcuL2FwcC9pbnRlcmZhY2VzL2NvbmZpZy5pbnRlcmZhY2UnO1xuXG5cbmV4cG9ydCB7IEZzVGV4dEVkaXRvckNvbXBvbmVudCB9IGZyb20gJy4vYXBwL2NvbXBvbmVudHMvdGV4dC1lZGl0b3IvdGV4dC1lZGl0b3IuY29tcG9uZW50JztcbiJdfQ==
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBSUgsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFLakUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0RBQW9ELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIGZzLW1lbnVcbiAqL1xuXG5pbXBvcnQgeyBmcm9tIH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCB7IEZzVGV4dEVkaXRvck1vZHVsZSB9IGZyb20gJy4vYXBwL2ZzLXRleHQtZWRpdG9yLm1vZHVsZSc7XG5cbmV4cG9ydCB7IEZzVGV4dEVkaXRvckNvbmZpZyB9IGZyb20gJy4vYXBwL2ludGVyZmFjZXMvY29uZmlnLmludGVyZmFjZSc7XG5cblxuZXhwb3J0IHsgRnNUZXh0RWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9hcHAvY29tcG9uZW50cy90ZXh0LWVkaXRvci90ZXh0LWVkaXRvci5jb21wb25lbnQnO1xuIl19
@@ -1,11 +1,9 @@
1
- import { __decorate, __metadata } from 'tslib';
2
- import { EventEmitter, ElementRef, Input, Output, ViewChild, Component, forwardRef, NgModule } from '@angular/core';
1
+ import { EventEmitter, Component, forwardRef, ElementRef, Input, Output, ViewChild, NgModule } from '@angular/core';
3
2
  import { CommonModule } from '@angular/common';
4
3
  import { NG_VALUE_ACCESSOR, FormsModule } from '@angular/forms';
5
4
  import { EditorComponent, MonacoEditorModule } from 'ngx-monaco-editor';
6
5
 
7
- var FsTextEditorComponent_1;
8
- let FsTextEditorComponent = FsTextEditorComponent_1 = class FsTextEditorComponent {
6
+ class FsTextEditorComponent {
9
7
  constructor(_element) {
10
8
  this._element = _element;
11
9
  this.config = {};
@@ -107,62 +105,48 @@ let FsTextEditorComponent = FsTextEditorComponent_1 = class FsTextEditorComponen
107
105
  e.stopPropagation();
108
106
  }, true);
109
107
  }
110
- };
108
+ }
109
+ FsTextEditorComponent.decorators = [
110
+ { type: Component, args: [{
111
+ selector: 'fs-text-editor',
112
+ template: "<ngx-monaco-editor\n [ngModel]=\"value\"\n (ngModelChange)=\"changed($event)\"\n [options]=\"config\"\n (onInit)=\"onEditorInit($event)\">\n</ngx-monaco-editor>\n",
113
+ providers: [{
114
+ provide: NG_VALUE_ACCESSOR,
115
+ useExisting: forwardRef(() => FsTextEditorComponent),
116
+ multi: true
117
+ }],
118
+ 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"]
119
+ },] }
120
+ ];
111
121
  FsTextEditorComponent.ctorParameters = () => [
112
122
  { type: ElementRef }
113
123
  ];
114
- __decorate([
115
- Input(),
116
- __metadata("design:type", Object)
117
- ], FsTextEditorComponent.prototype, "config", void 0);
118
- __decorate([
119
- Input(),
120
- __metadata("design:type", Object)
121
- ], FsTextEditorComponent.prototype, "scrollable", void 0);
122
- __decorate([
123
- Output(),
124
- __metadata("design:type", Object)
125
- ], FsTextEditorComponent.prototype, "init", void 0);
126
- __decorate([
127
- Output(),
128
- __metadata("design:type", Object)
129
- ], FsTextEditorComponent.prototype, "blur", void 0);
130
- __decorate([
131
- ViewChild(EditorComponent, { static: true }),
132
- __metadata("design:type", EditorComponent)
133
- ], FsTextEditorComponent.prototype, "_editorContainer", void 0);
134
- FsTextEditorComponent = FsTextEditorComponent_1 = __decorate([
135
- Component({
136
- selector: 'fs-text-editor',
137
- template: "<ngx-monaco-editor\n [ngModel]=\"value\"\n (ngModelChange)=\"changed($event)\"\n [options]=\"config\"\n (onInit)=\"onEditorInit($event)\">\n</ngx-monaco-editor>\n",
138
- providers: [{
139
- provide: NG_VALUE_ACCESSOR,
140
- useExisting: forwardRef(() => FsTextEditorComponent_1),
141
- multi: true
142
- }],
143
- 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:0!important}"]
144
- }),
145
- __metadata("design:paramtypes", [ElementRef])
146
- ], FsTextEditorComponent);
147
-
148
- let FsTextEditorModule = class FsTextEditorModule {
124
+ FsTextEditorComponent.propDecorators = {
125
+ config: [{ type: Input }],
126
+ scrollable: [{ type: Input }],
127
+ init: [{ type: Output }],
128
+ blur: [{ type: Output }],
129
+ _editorContainer: [{ type: ViewChild, args: [EditorComponent, { static: true },] }]
149
130
  };
150
- FsTextEditorModule = __decorate([
151
- NgModule({
152
- imports: [
153
- CommonModule,
154
- MonacoEditorModule,
155
- FormsModule,
156
- ],
157
- exports: [
158
- FsTextEditorComponent,
159
- ],
160
- entryComponents: [],
161
- declarations: [
162
- FsTextEditorComponent,
163
- ]
164
- })
165
- ], FsTextEditorModule);
131
+
132
+ class FsTextEditorModule {
133
+ }
134
+ FsTextEditorModule.decorators = [
135
+ { type: NgModule, args: [{
136
+ imports: [
137
+ CommonModule,
138
+ MonacoEditorModule,
139
+ FormsModule,
140
+ ],
141
+ exports: [
142
+ FsTextEditorComponent,
143
+ ],
144
+ entryComponents: [],
145
+ declarations: [
146
+ FsTextEditorComponent,
147
+ ]
148
+ },] }
149
+ ];
166
150
 
167
151
  /*
168
152
  * Public API Surface of fs-menu
@@ -1 +1 @@
1
- {"version":3,"file":"firestitch-text-editor.js","sources":["ng://@firestitch/text-editor/app/components/text-editor/text-editor.component.ts","ng://@firestitch/text-editor/app/fs-text-editor.module.ts","ng://@firestitch/text-editor/public_api.ts","ng://@firestitch/text-editor/firestitch-text-editor.ts"],"sourcesContent":["import { Component, EventEmitter, forwardRef, Input, OnInit, Output, ViewChild, ElementRef } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { EditorComponent } from 'ngx-monaco-editor';\n\nimport ICodeEditor = monaco.editor.ICodeEditor;\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, 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 public get monaco() {\n return (<any>window).monaco;\n };\n\n constructor(private _element: ElementRef) {};\n\n public readonly LINE_HEIGHT = 18;\n\n private _editorRef: 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 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","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\n\nimport { MonacoEditorModule } from 'ngx-monaco-editor';\nimport { FsTextEditorComponent } from './components/text-editor/text-editor.component';\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\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":[],"mappings":";;;;;;;IAmBa,qBAAqB,6BAAlC,MAAa,qBAAqB;IA8BhC,YAAoB,QAAoB;QAApB,aAAQ,GAAR,QAAQ,CAAY;QA5BxB,WAAM,GAAuB,EAAE,CAAC;QAChC,eAAU,GAAG,KAAK,CAAC;QAElB,SAAI,GAAG,IAAI,YAAY,EAAE,CAAC;QAC1B,SAAI,GAAG,IAAI,YAAY,EAAE,CAAC;QAGpC,kBAAa,GAAuB;YACzC,OAAO,EAAE;gBACP,OAAO,EAAE,KAAK;aACf;YACD,KAAK,EAAE,SAAS;YAChB,eAAe,EAAE,KAAK;YACtB,oBAAoB,EAAE,KAAK;YAC3B,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE;gBACT,QAAQ,EAAE,QAAQ;aACnB;YACD,yBAAyB,EAAE,IAAI;SAChC,CAAC;QAEK,aAAQ,GAAG,CAAC,CAAM,QAAO,CAAC;QAC1B,cAAS,GAAG,SAAQ,CAAC;QAQZ,gBAAW,GAAG,EAAE,CAAC;QAGzB,WAAM,GAAG,EAAE,CAAC;KALwB;IAJ5C,IAAW,MAAM;QACf,OAAa,MAAO,CAAC,MAAM,CAAC;KAC7B;;;IASM,QAAQ;QAEb,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;SAClE;KACF;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;IAEM,YAAY,CAAC,KAAK;;QAEvB,UAAU,CAAC;YACT,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;YACxB,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAEtB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;gBACpB,IAAI,CAAC,cAAc,EAAE,CAAC;aACvB;SACF,CAAC,CAAC;KACJ;IAEM,UAAU,CAAC,KAAU;QAC1B,IAAI,CAAC,MAAM,GAAG,KAAK,IAAI,EAAE,CAAC;KAC3B;IAEM,OAAO,CAAC,CAAC;QACd,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;YACrB,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;YAChB,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;SAClB;KACF;IAEM,gBAAgB,CAAC,EAAO;QAC7B,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;KACpB;IAEM,iBAAiB,CAAC,EAAO;QAC9B,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;KACrB;IAEO,WAAW;QACjB,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE;YAC7C,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAE3B,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC,CAAC;gBACxC,IAAI,CAAC,mBAAmB,EAAE,CAAC;aAC5B,CAAC,CAAC;YAEH,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC;gBAClC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;aAClB,CAAC,CAAC;SACJ;KACF;IAEO,mBAAmB;QAEzB,MAAM,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;QAEnD,IAAI,CAAC,aAAa,EAAE;YAClB,OAAO;SACR;QAED,MAAM,SAAS,GAAG,aAAa,CAAC,sBAAsB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAgB,CAAC;QACvF,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU;cACpC,SAAS,CAAC,UAA0B,CAAC,YAAY;cAClD,IAAI,CAAC,WAAW,CAAC;QAEnB,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;QAE/C,IAAI,CAAC,WAAW,EAAE;YAChB,OAAO;SACR;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,YAAY,EAAE,GAAG,UAAU,CAAC;;QAG1E,aAAa,CAAC,KAAK,CAAC,MAAM,GAAG,UAAU,GAAG,IAAI,CAAC;QAC/C,IAAI,CAAC,YAAY,EAAE,CAAC;KACrB;IAEM,YAAY;QACjB,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;KAC1B;IAEO,cAAc;QACpB,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;QAE1C,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,CAAC;YAC/B,CAAC,CAAC,eAAe,EAAE,CAAC;SACrB,EAAE,IAAI,CAAC,CAAC;KACV;EACF;;YArG+B,UAAU;;AA5B/B;IAAR,KAAK,EAAE;;qDAAwC;AACvC;IAAR,KAAK,EAAE;;yDAA2B;AAEzB;IAAT,MAAM,EAAE;;mDAAkC;AACjC;IAAT,MAAM,EAAE;;mDAAkC;AACG;IAA7C,SAAS,CAAC,eAAe,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;8BAAmB,eAAe;+DAAC;AAPrE,qBAAqB;IAVjC,SAAS,CAAC;QACT,QAAQ,EAAE,gBAAgB;QAC1B,kLAAyC;QAEzC,SAAS,EAAE,CAAC;gBACV,OAAO,EAAE,iBAAiB;gBAC1B,WAAW,EAAE,UAAU,CAAC,MAAM,uBAAqB,CAAC;gBACpD,KAAK,EAAE,IAAI;aACZ,CAAC;;KACH,CAAC;qCA+B8B,UAAU;GA9B7B,qBAAqB,CAmIjC;;IChIY,kBAAkB,GAA/B,MAAa,kBAAkB;EAE9B;AAFY,kBAAkB;IAf9B,QAAQ,CAAC;QACR,OAAO,EAAE;YACP,YAAY;YACZ,kBAAkB;YAClB,WAAW;SACZ;QACD,OAAO,EAAE;YACP,qBAAqB;SACtB;QACD,eAAe,EAAE,EAChB;QACD,YAAY,EAAE;YACZ,qBAAqB;SACtB;KACF,CAAC;GACW,kBAAkB,CAE9B;;ACxBD;;;;ACAA;;;;;;"}
1
+ {"version":3,"file":"firestitch-text-editor.js","sources":["../../src/app/components/text-editor/text-editor.component.ts","../../src/app/fs-text-editor.module.ts","../../src/public_api.ts","../../src/firestitch-text-editor.ts"],"sourcesContent":["import { Component, EventEmitter, forwardRef, Input, OnInit, Output, ViewChild, ElementRef } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { EditorComponent } from 'ngx-monaco-editor';\n\nimport ICodeEditor = monaco.editor.ICodeEditor;\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, 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 public get monaco() {\n return (<any>window).monaco;\n };\n\n constructor(private _element: ElementRef) {};\n\n public readonly LINE_HEIGHT = 18;\n\n private _editorRef: 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 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","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\n\nimport { MonacoEditorModule } from 'ngx-monaco-editor';\nimport { FsTextEditorComponent } from './components/text-editor/text-editor.component';\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\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":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"__symbolic":"module","version":4,"metadata":{"FsTextEditorModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":7,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":9,"character":4},{"__symbolic":"reference","module":"ngx-monaco-editor","name":"MonacoEditorModule","line":10,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":11,"character":4}],"exports":[{"__symbolic":"reference","name":"FsTextEditorComponent"}],"entryComponents":[],"declarations":[{"__symbolic":"reference","name":"FsTextEditorComponent"}]}]}],"members":{}},"FsTextEditorConfig":{"__symbolic":"interface"},"FsTextEditorComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":9,"character":1},"arguments":[{"selector":"fs-text-editor","providers":[{"provide":{"__symbolic":"reference","module":"@angular/forms","name":"NG_VALUE_ACCESSOR","line":14,"character":13},"useExisting":{"__symbolic":"reference","name":"FsTextEditorComponent"},"multi":true}],"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:0!important}"]}]}],"members":{"config":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":21,"character":3}}]}],"scrollable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":22,"character":3}}]}],"init":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":24,"character":3}}]}],"blur":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":25,"character":3}}]}],"_editorContainer":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":26,"character":3},"arguments":[{"__symbolic":"reference","module":"ngx-monaco-editor","name":"EditorComponent","line":26,"character":13},{"static":true}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":49,"character":32}]}],"ngOnInit":[{"__symbolic":"method"}],"onEditorInit":[{"__symbolic":"method"}],"writeValue":[{"__symbolic":"method"}],"changed":[{"__symbolic":"method"}],"registerOnChange":[{"__symbolic":"method"}],"registerOnTouched":[{"__symbolic":"method"}],"_initEditor":[{"__symbolic":"method"}],"_updateEditorHeight":[{"__symbolic":"method"}],"updateLayout":[{"__symbolic":"method"}],"_disableScroll":[{"__symbolic":"method"}]}}},"origins":{"FsTextEditorModule":"./app/fs-text-editor.module","FsTextEditorConfig":"./app/interfaces/config.interface","FsTextEditorComponent":"./app/components/text-editor/text-editor.component"},"importAs":"@firestitch/text-editor"}
1
+ {"__symbolic":"module","version":4,"metadata":{"FsTextEditorModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":7,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":9,"character":4},{"__symbolic":"reference","module":"ngx-monaco-editor","name":"MonacoEditorModule","line":10,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":11,"character":4}],"exports":[{"__symbolic":"reference","name":"FsTextEditorComponent"}],"entryComponents":[],"declarations":[{"__symbolic":"reference","name":"FsTextEditorComponent"}]}]}],"members":{}},"FsTextEditorConfig":{"__symbolic":"interface"},"FsTextEditorComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":9,"character":1},"arguments":[{"selector":"fs-text-editor","providers":[{"provide":{"__symbolic":"reference","module":"@angular/forms","name":"NG_VALUE_ACCESSOR","line":14,"character":13},"useExisting":{"__symbolic":"reference","name":"FsTextEditorComponent"},"multi":true}],"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"]}]}],"members":{"config":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":21,"character":3}}]}],"scrollable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":22,"character":3}}]}],"init":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":24,"character":3}}]}],"blur":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":25,"character":3}}]}],"_editorContainer":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":26,"character":3},"arguments":[{"__symbolic":"reference","module":"ngx-monaco-editor","name":"EditorComponent","line":26,"character":13},{"static":true}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":49,"character":32}]}],"ngOnInit":[{"__symbolic":"method"}],"onEditorInit":[{"__symbolic":"method"}],"writeValue":[{"__symbolic":"method"}],"changed":[{"__symbolic":"method"}],"registerOnChange":[{"__symbolic":"method"}],"registerOnTouched":[{"__symbolic":"method"}],"_initEditor":[{"__symbolic":"method"}],"_updateEditorHeight":[{"__symbolic":"method"}],"updateLayout":[{"__symbolic":"method"}],"_disableScroll":[{"__symbolic":"method"}]}}},"origins":{"FsTextEditorModule":"./app/fs-text-editor.module","FsTextEditorConfig":"./app/interfaces/config.interface","FsTextEditorComponent":"./app/components/text-editor/text-editor.component"},"importAs":"@firestitch/text-editor"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@firestitch/text-editor",
3
- "version": "9.0.3",
3
+ "version": "12.0.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/Firestitch/ngx-text-editor"
@@ -17,17 +17,17 @@
17
17
  "url": "https://github.com/Firestitch/ngx-text-editor/issues"
18
18
  },
19
19
  "peerDependencies": {
20
- "ngx-monaco-editor": ">=7.0.0",
21
- "tslib": "^1.10.0"
20
+ "ngx-monaco-editor": ">=7.0.0"
22
21
  },
23
22
  "sideEffects": false,
24
23
  "main": "bundles/firestitch-text-editor.umd.js",
25
- "module": "fesm5/firestitch-text-editor.js",
24
+ "module": "fesm2015/firestitch-text-editor.js",
26
25
  "es2015": "fesm2015/firestitch-text-editor.js",
27
- "esm5": "esm5/firestitch-text-editor.js",
28
26
  "esm2015": "esm2015/firestitch-text-editor.js",
29
- "fesm5": "fesm5/firestitch-text-editor.js",
30
27
  "fesm2015": "fesm2015/firestitch-text-editor.js",
31
28
  "typings": "firestitch-text-editor.d.ts",
32
- "metadata": "firestitch-text-editor.metadata.json"
33
- }
29
+ "metadata": "firestitch-text-editor.metadata.json",
30
+ "dependencies": {
31
+ "tslib": "^2.2.0"
32
+ }
33
+ }
@@ -1,16 +0,0 @@
1
- !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@angular/common"),require("@angular/forms"),require("ngx-monaco-editor")):"function"==typeof define&&define.amd?define("@firestitch/text-editor",["exports","@angular/core","@angular/common","@angular/forms","ngx-monaco-editor"],e):e(((t=t||self).firestitch=t.firestitch||{},t.firestitch["text-editor"]={}),t.ng.core,t.ng.common,t.ng.forms,t.ngxMonacoEditor)}(this,(function(t,e,o,n,i){"use strict";
2
- /*! *****************************************************************************
3
- Copyright (c) Microsoft Corporation.
4
-
5
- Permission to use, copy, modify, and/or distribute this software for any
6
- purpose with or without fee is hereby granted.
7
-
8
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
9
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
10
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
11
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
12
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
13
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
14
- PERFORMANCE OF THIS SOFTWARE.
15
- ***************************************************************************** */function r(t,e,o,n){var i,r=arguments.length,d=r<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,o):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)d=Reflect.decorate(t,e,o,n);else for(var a=t.length-1;a>=0;a--)(i=t[a])&&(d=(r<3?i(d):r>3?i(e,o,d):i(e,o))||d);return r>3&&d&&Object.defineProperty(e,o,d),d}function d(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)}var a=function(){function t(t){this._element=t,this.config={},this.scrollable=!1,this.init=new e.EventEmitter,this.blur=new e.EventEmitter,this.defaultConfig={minimap:{enabled:!1},theme:"vs-dark",automaticLayout:!1,scrollBeyondLastLine:!1,autoHeight:!0,scrollbar:{vertical:"hidden"},hideCursorInOverviewRuler:!0},this.onChange=function(t){},this.onTouched=function(){},this.LINE_HEIGHT=18,this._value=""}var o;return o=t,Object.defineProperty(t.prototype,"monaco",{get:function(){return window.monaco},enumerable:!0,configurable:!0}),t.prototype.ngOnInit=function(){this.config&&(this.config=Object.assign({},this.defaultConfig,this.config))},Object.defineProperty(t.prototype,"value",{get:function(){return this._value},enumerable:!0,configurable:!0}),t.prototype.onEditorInit=function(t){var e=this;setTimeout((function(){e._editorRef=t,e._initEditor(),e.init.next(t),e.scrollable||e._disableScroll()}))},t.prototype.writeValue=function(t){this._value=t||""},t.prototype.changed=function(t){this._value!==t&&(this._value=t,this.onChange(t))},t.prototype.registerOnChange=function(t){this.onChange=t},t.prototype.registerOnTouched=function(t){this.onTouched=t},t.prototype._initEditor=function(){var t=this;this._editorRef&&this.config.autoHeight&&(this._updateEditorHeight(),this._editorRef.onDidChangeModelContent((function(e){t._updateEditorHeight()})),this._editorRef.onDidBlurEditorText((function(){t.blur.next()})))},t.prototype._updateEditorHeight=function(){var t=this._editorRef.getDomNode();if(t){var e=t.getElementsByClassName("view-lines")[0],o=e.firstChild?e.firstChild.offsetHeight:this.LINE_HEIGHT;if(this._editorRef.getModel()){var n=this._editorRef.getModel().getLineCount()*o;t.style.height=n+"px",this.updateLayout()}}},t.prototype.updateLayout=function(){this._editorRef.layout()},t.prototype._disableScroll=function(){this._editorRef.getDomNode().addEventListener("wheel",(function(t){t.stopPropagation()}),!0)},t.ctorParameters=function(){return[{type:e.ElementRef}]},r([e.Input(),d("design:type",Object)],t.prototype,"config",void 0),r([e.Input(),d("design:type",Object)],t.prototype,"scrollable",void 0),r([e.Output(),d("design:type",Object)],t.prototype,"init",void 0),r([e.Output(),d("design:type",Object)],t.prototype,"blur",void 0),r([e.ViewChild(i.EditorComponent,{static:!0}),d("design:type",i.EditorComponent)],t.prototype,"_editorContainer",void 0),t=o=r([e.Component({selector:"fs-text-editor",template:'<ngx-monaco-editor\n [ngModel]="value"\n (ngModelChange)="changed($event)"\n [options]="config"\n (onInit)="onEditorInit($event)">\n</ngx-monaco-editor>\n',providers:[{provide:n.NG_VALUE_ACCESSOR,useExisting:e.forwardRef((function(){return o})),multi:!0}],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:0!important}"]}),d("design:paramtypes",[e.ElementRef])],t)}(),s=function(){function t(){}return t=r([e.NgModule({imports:[o.CommonModule,i.MonacoEditorModule,n.FormsModule],exports:[a],entryComponents:[],declarations:[a]})],t)}();t.FsTextEditorComponent=a,t.FsTextEditorModule=s,Object.defineProperty(t,"__esModule",{value:!0})}));
16
- //# sourceMappingURL=firestitch-text-editor.umd.min.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../node_modules/tslib/tslib.es6.js","ng://@firestitch/text-editor/app/components/text-editor/text-editor.component.ts","ng://@firestitch/text-editor/app/fs-text-editor.module.ts"],"names":["__decorate","decorators","target","key","desc","d","c","arguments","length","r","Object","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","__metadata","metadataKey","metadataValue","metadata","FsTextEditorComponent","_element","this","config","scrollable","init","EventEmitter","blur","defaultConfig","minimap","enabled","theme","automaticLayout","scrollBeyondLastLine","autoHeight","scrollbar","vertical","hideCursorInOverviewRuler","onChange","_","onTouched","LINE_HEIGHT","_value","prototype","window","monaco","ngOnInit","assign","onEditorInit","event","_this","setTimeout","_editorRef","_initEditor","next","_disableScroll","writeValue","value","changed","e","registerOnChange","fn","registerOnTouched","_updateEditorHeight","onDidChangeModelContent","onDidBlurEditorText","editorDomNode","getDomNode","container","getElementsByClassName","lineHeight","firstChild","offsetHeight","getModel","nextHeight","getLineCount","style","height","updateLayout","layout","addEventListener","stopPropagation","ElementRef","Input","Output","ViewChild","EditorComponent","static","FsTextEditorComponent_1","Component","selector","template","providers","provide","NG_VALUE_ACCESSOR","useExisting","forwardRef","multi","FsTextEditorModule","NgModule","imports","CommonModule","MonacoEditorModule","FormsModule","exports","entryComponents","declarations"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import { Component, EventEmitter, forwardRef, Input, OnInit, Output, ViewChild, ElementRef } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { EditorComponent } from 'ngx-monaco-editor';\n\nimport ICodeEditor = monaco.editor.ICodeEditor;\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, 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 public get monaco() {\n return (<any>window).monaco;\n };\n\n constructor(private _element: ElementRef) {};\n\n public readonly LINE_HEIGHT = 18;\n\n private _editorRef: 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 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","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\n\nimport { MonacoEditorModule } from 'ngx-monaco-editor';\nimport { FsTextEditorComponent } from './components/text-editor/text-editor.component';\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\n}\n"]}
@@ -1,158 +0,0 @@
1
- import { __decorate, __metadata } from "tslib";
2
- import { Component, EventEmitter, forwardRef, Input, OnInit, Output, ViewChild, ElementRef } from '@angular/core';
3
- import { NG_VALUE_ACCESSOR } from '@angular/forms';
4
- import { EditorComponent } from 'ngx-monaco-editor';
5
- var FsTextEditorComponent = /** @class */ (function () {
6
- function FsTextEditorComponent(_element) {
7
- this._element = _element;
8
- this.config = {};
9
- this.scrollable = false;
10
- this.init = new EventEmitter();
11
- this.blur = new EventEmitter();
12
- this.defaultConfig = {
13
- minimap: {
14
- enabled: false
15
- },
16
- theme: 'vs-dark',
17
- automaticLayout: false,
18
- scrollBeyondLastLine: false,
19
- autoHeight: true,
20
- scrollbar: {
21
- vertical: 'hidden'
22
- },
23
- hideCursorInOverviewRuler: true
24
- };
25
- this.onChange = function (_) { };
26
- this.onTouched = function () { };
27
- this.LINE_HEIGHT = 18;
28
- this._value = '';
29
- }
30
- FsTextEditorComponent_1 = FsTextEditorComponent;
31
- Object.defineProperty(FsTextEditorComponent.prototype, "monaco", {
32
- get: function () {
33
- return window.monaco;
34
- },
35
- enumerable: true,
36
- configurable: true
37
- });
38
- ;
39
- ;
40
- FsTextEditorComponent.prototype.ngOnInit = function () {
41
- if (this.config) {
42
- this.config = Object.assign({}, this.defaultConfig, this.config);
43
- }
44
- };
45
- Object.defineProperty(FsTextEditorComponent.prototype, "value", {
46
- get: function () {
47
- return this._value;
48
- },
49
- enumerable: true,
50
- configurable: true
51
- });
52
- FsTextEditorComponent.prototype.onEditorInit = function (event) {
53
- var _this = this;
54
- // Timeout allows the content to fully load to and calculate height
55
- setTimeout(function () {
56
- _this._editorRef = event;
57
- _this._initEditor();
58
- _this.init.next(event);
59
- if (!_this.scrollable) {
60
- _this._disableScroll();
61
- }
62
- });
63
- };
64
- FsTextEditorComponent.prototype.writeValue = function (value) {
65
- this._value = value || '';
66
- };
67
- FsTextEditorComponent.prototype.changed = function (e) {
68
- if (this._value !== e) {
69
- this._value = e;
70
- this.onChange(e);
71
- }
72
- };
73
- FsTextEditorComponent.prototype.registerOnChange = function (fn) {
74
- this.onChange = fn;
75
- };
76
- FsTextEditorComponent.prototype.registerOnTouched = function (fn) {
77
- this.onTouched = fn;
78
- };
79
- FsTextEditorComponent.prototype._initEditor = function () {
80
- var _this = this;
81
- if (this._editorRef && this.config.autoHeight) {
82
- this._updateEditorHeight();
83
- this._editorRef.onDidChangeModelContent(function (e) {
84
- _this._updateEditorHeight();
85
- });
86
- this._editorRef.onDidBlurEditorText(function () {
87
- _this.blur.next();
88
- });
89
- }
90
- };
91
- FsTextEditorComponent.prototype._updateEditorHeight = function () {
92
- var editorDomNode = this._editorRef.getDomNode();
93
- if (!editorDomNode) {
94
- return;
95
- }
96
- var container = editorDomNode.getElementsByClassName('view-lines')[0];
97
- var lineHeight = container.firstChild
98
- ? container.firstChild.offsetHeight
99
- : this.LINE_HEIGHT;
100
- var editorModel = this._editorRef.getModel();
101
- if (!editorModel) {
102
- return;
103
- }
104
- var nextHeight = this._editorRef.getModel().getLineCount() * lineHeight;
105
- // set the height and redo layout
106
- editorDomNode.style.height = nextHeight + 'px';
107
- this.updateLayout();
108
- };
109
- FsTextEditorComponent.prototype.updateLayout = function () {
110
- this._editorRef.layout();
111
- };
112
- FsTextEditorComponent.prototype._disableScroll = function () {
113
- var node = this._editorRef.getDomNode();
114
- node.addEventListener('wheel', function (e) {
115
- e.stopPropagation();
116
- }, true);
117
- };
118
- var FsTextEditorComponent_1;
119
- FsTextEditorComponent.ctorParameters = function () { return [
120
- { type: ElementRef }
121
- ]; };
122
- __decorate([
123
- Input(),
124
- __metadata("design:type", Object)
125
- ], FsTextEditorComponent.prototype, "config", void 0);
126
- __decorate([
127
- Input(),
128
- __metadata("design:type", Object)
129
- ], FsTextEditorComponent.prototype, "scrollable", void 0);
130
- __decorate([
131
- Output(),
132
- __metadata("design:type", Object)
133
- ], FsTextEditorComponent.prototype, "init", void 0);
134
- __decorate([
135
- Output(),
136
- __metadata("design:type", Object)
137
- ], FsTextEditorComponent.prototype, "blur", void 0);
138
- __decorate([
139
- ViewChild(EditorComponent, { static: true }),
140
- __metadata("design:type", EditorComponent)
141
- ], FsTextEditorComponent.prototype, "_editorContainer", void 0);
142
- FsTextEditorComponent = FsTextEditorComponent_1 = __decorate([
143
- Component({
144
- selector: 'fs-text-editor',
145
- template: "<ngx-monaco-editor\n [ngModel]=\"value\"\n (ngModelChange)=\"changed($event)\"\n [options]=\"config\"\n (onInit)=\"onEditorInit($event)\">\n</ngx-monaco-editor>\n",
146
- providers: [{
147
- provide: NG_VALUE_ACCESSOR,
148
- useExisting: forwardRef(function () { return FsTextEditorComponent_1; }),
149
- multi: true
150
- }],
151
- 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:0!important}"]
152
- }),
153
- __metadata("design:paramtypes", [ElementRef])
154
- ], FsTextEditorComponent);
155
- return FsTextEditorComponent;
156
- }());
157
- export { FsTextEditorComponent };
158
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1lZGl0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGZpcmVzdGl0Y2gvdGV4dC1lZGl0b3IvIiwic291cmNlcyI6WyJhcHAvY29tcG9uZW50cy90ZXh0LWVkaXRvci90ZXh0LWVkaXRvci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xILE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFpQnBEO0lBOEJFLCtCQUFvQixRQUFvQjtRQUFwQixhQUFRLEdBQVIsUUFBUSxDQUFZO1FBNUJ4QixXQUFNLEdBQXVCLEVBQUUsQ0FBQztRQUNoQyxlQUFVLEdBQUcsS0FBSyxDQUFDO1FBRWxCLFNBQUksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzFCLFNBQUksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBR3BDLGtCQUFhLEdBQXVCO1lBQ3pDLE9BQU8sRUFBRTtnQkFDUCxPQUFPLEVBQUUsS0FBSzthQUNmO1lBQ0QsS0FBSyxFQUFFLFNBQVM7WUFDaEIsZUFBZSxFQUFFLEtBQUs7WUFDdEIsb0JBQW9CLEVBQUUsS0FBSztZQUMzQixVQUFVLEVBQUUsSUFBSTtZQUNoQixTQUFTLEVBQUU7Z0JBQ1QsUUFBUSxFQUFFLFFBQVE7YUFDbkI7WUFDRCx5QkFBeUIsRUFBRSxJQUFJO1NBQ2hDLENBQUM7UUFFSyxhQUFRLEdBQUcsVUFBQyxDQUFNLElBQU0sQ0FBQyxDQUFDO1FBQzFCLGNBQVMsR0FBRyxjQUFPLENBQUMsQ0FBQztRQVFaLGdCQUFXLEdBQUcsRUFBRSxDQUFDO1FBR3pCLFdBQU0sR0FBRyxFQUFFLENB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O0NBQUEsQUFuSUQsSUFtSUM7U0FuSVkscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIGZvcndhcmRSZWYsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkLCBFbGVtZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBFZGl0b3JDb21wb25lbnQgfSBmcm9tICduZ3gtbW9uYWNvLWVkaXRvcic7XG5cbmltcG9ydCBJQ29kZUVkaXRvciA9IG1vbmFjby5lZGl0b3IuSUNvZGVFZGl0b3I7XG5cbmltcG9ydCB7IEZzVGV4dEVkaXRvckNvbmZpZyB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvY29uZmlnLmludGVyZmFjZSc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZnMtdGV4dC1lZGl0b3InLFxuICB0ZW1wbGF0ZVVybDogJ3RleHQtZWRpdG9yLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbICd0ZXh0LWVkaXRvci5jb21wb25lbnQuc2NzcycgXSxcbiAgcHJvdmlkZXJzOiBbe1xuICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEZzVGV4dEVkaXRvckNvbXBvbmVudCksXG4gICAgbXVsdGk6IHRydWVcbiAgfV1cbn0pXG5leHBvcnQgY2xhc3MgRnNUZXh0RWRpdG9yQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG5cbiAgQElucHV0KCkgcHVibGljIGNvbmZpZzogRnNUZXh0RWRpdG9yQ29uZmlnID0ge307XG4gIEBJbnB1dCgpIHB1YmxpYyBzY3JvbGxhYmxlID0gZmFsc2U7XG5cbiAgQE91dHB1dCgpIHB1YmxpYyBpbml0ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgcHVibGljIGJsdXIgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBWaWV3Q2hpbGQoRWRpdG9yQ29tcG9uZW50LCB7IHN0YXRpYzogdHJ1ZSB9KSBfZWRpdG9yQ29udGFpbmVyOiBFZGl0b3JDb21wb25lbnQ7XG5cbiAgcHVibGljIGRlZmF1bHRDb25maWc6IEZzVGV4dEVkaXRvckNvbmZpZyA9IHtcbiAgICBtaW5pbWFwOiB7XG4gICAgICBlbmFibGVkOiBmYWxzZVxuICAgIH0sXG4gICAgdGhlbWU6ICd2cy1kYXJrJyxcbiAgICBhdXRvbWF0aWNMYXlvdXQ6IGZhbHNlLFxuICAgIHNjcm9sbEJleW9uZExhc3RMaW5lOiBmYWxzZSxcbiAgICBhdXRvSGVpZ2h0OiB0cnVlLFxuICAgIHNjcm9sbGJhcjoge1xuICAgICAgdmVydGljYWw6ICdoaWRkZW4nXG4gICAgfSxcbiAgICBoaWRlQ3Vyc29ySW5PdmVydmlld1J1bGVyOiB0cnVlXG4gIH07XG5cbiAgcHVibGljIG9uQ2hhbmdlID0gKF86IGFueSkgPT4ge307XG4gIHB1YmxpYyBvblRvdWNoZWQgPSAoKSA9PiB7fTtcblxuICBwdWJsaWMgZ2V0IG1vbmFjbygpIHtcbiAgICByZXR1cm4gKDxhbnk+d2luZG93KS5tb25hY287XG4gIH07XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfZWxlbWVudDogRWxlbWVudFJlZikge307XG5cbiAgcHVibGljIHJlYWRvbmx5IExJTkVfSEVJR0hUID0gMTg7XG5cbiAgcHJpdmF0ZSBfZWRpdG9yUmVmOiBJQ29kZUVkaXRvcjtcbiAgcHJpdmF0ZSBfdmFsdWUgPSAnJztcblxuICBwdWJsaWMgbmdPbkluaXQoKSB7XG5cbiAgICBpZiAodGhpcy5jb25maWcpIHtcbiAgICAgIHRoaXMuY29uZmlnID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5kZWZhdWx0Q29uZmlnLCB0aGlzLmNvbmZpZyk7XG4gICAgfVxuICB9XG5cbiAgZ2V0IHZhbHVlKCkge1xuICAgIHJldHVybiB0aGlzLl92YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBvbkVkaXRvckluaXQoZXZlbnQpIHtcbiAgICAvLyBUaW1lb3V0IGFsbG93cyB0aGUgY29udGVudCB0byBmdWxseSBsb2FkIHRvIGFuZCBjYWxjdWxhdGUgaGVpZ2h0XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLl9lZGl0b3JSZWYgPSBldmVudDtcbiAgICAgIHRoaXMuX2luaXRFZGl0b3IoKTtcbiAgICAgIHRoaXMuaW5pdC5uZXh0KGV2ZW50KTtcblxuICAgICAgaWYgKCF0aGlzLnNjcm9sbGFibGUpIHtcbiAgICAgICAgdGhpcy5fZGlzYWJsZVNjcm9sbCgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHdyaXRlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xuICAgIHRoaXMuX3ZhbHVlID0gdmFsdWUgfHwgJyc7XG4gIH1cblxuICBwdWJsaWMgY2hhbmdlZChlKSB7XG4gICAgaWYgKHRoaXMuX3ZhbHVlICE9PSBlKSB7XG4gICAgICB0aGlzLl92YWx1ZSA9IGU7XG4gICAgICB0aGlzLm9uQ2hhbmdlKGUpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gIH1cblxuICBwdWJsaWMgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gIH1cblxuICBwcml2YXRlIF9pbml0RWRpdG9yKCkge1xuICAgIGlmICh0aGlzLl9lZGl0b3JSZWYgJiYgdGhpcy5jb25maWcuYXV0b0hlaWdodCkge1xuICAgICAgdGhpcy5fdXBkYXRlRWRpdG9ySGVpZ2h0KCk7XG5cbiAgICAgIHRoaXMuX2VkaXRvclJlZi5vbkRpZENoYW5nZU1vZGVsQ29udGVudCgoZSkgPT4ge1xuICAgICAgICB0aGlzLl91cGRhdGVFZGl0b3JIZWlnaHQoKTtcbiAgICAgIH0pO1xuXG4gICAgICB0aGlzLl9lZGl0b3JSZWYub25EaWRCbHVyRWRpdG9yVGV4dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuYmx1ci5uZXh0KCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVFZGl0b3JIZWlnaHQoKSB7XG5cbiAgICBjb25zdCBlZGl0b3JEb21Ob2RlID0gdGhpcy5fZWRpdG9yUmVmLmdldERvbU5vZGUoKTtcblxuICAgIGlmICghZWRpdG9yRG9tTm9kZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGNvbnRhaW5lciA9IGVkaXRvckRvbU5vZGUuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgndmlldy1saW5lcycpWzBdIGFzIEhUTUxFbGVtZW50O1xuICAgIGNvbnN0IGxpbmVIZWlnaHQgPSBjb250YWluZXIuZmlyc3RDaGlsZFxuICAgID8gKGNvbnRhaW5lci5maXJzdENoaWxkIGFzIEhUTUxFbGVtZW50KS5vZmZzZXRIZWlnaHRcbiAgICA6IHRoaXMuTElORV9IRUlHSFQ7XG5cbiAgICBjb25zdCBlZGl0b3JNb2RlbCA9IHRoaXMuX2VkaXRvclJlZi5nZXRNb2RlbCgpO1xuXG4gICAgaWYgKCFlZGl0b3JNb2RlbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IG5leHRIZWlnaHQgPSB0aGlzLl9lZGl0b3JSZWYuZ2V0TW9kZWwoKS5nZXRMaW5lQ291bnQoKSAqIGxpbmVIZWlnaHQ7XG5cbiAgICAvLyBzZXQgdGhlIGhlaWdodCBhbmQgcmVkbyBsYXlvdXRcbiAgICBlZGl0b3JEb21Ob2RlLnN0eWxlLmhlaWdodCA9IG5leHRIZWlnaHQgKyAncHgnO1xuICAgIHRoaXMudXBkYXRlTGF5b3V0KCk7XG4gIH1cblxuICBwdWJsaWMgdXBkYXRlTGF5b3V0KCk6IHZvaWQge1xuICAgIHRoaXMuX2VkaXRvclJlZi5sYXlvdXQoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2Rpc2FibGVTY3JvbGwoKSB7XG4gICAgY29uc3Qgbm9kZSA9IHRoaXMuX2VkaXRvclJlZi5nZXREb21Ob2RlKCk7XG5cbiAgICBub2RlLmFkZEV2ZW50TGlzdGVuZXIoJ3doZWVsJywgKGUpID0+IHtcbiAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgfSwgdHJ1ZSk7XG4gIH1cbn1cbiJdfQ==
@@ -1,29 +0,0 @@
1
- import { __decorate } from "tslib";
2
- import { NgModule } from '@angular/core';
3
- import { CommonModule } from '@angular/common';
4
- import { FormsModule } from '@angular/forms';
5
- import { MonacoEditorModule } from 'ngx-monaco-editor';
6
- import { FsTextEditorComponent } from './components/text-editor/text-editor.component';
7
- var FsTextEditorModule = /** @class */ (function () {
8
- function FsTextEditorModule() {
9
- }
10
- FsTextEditorModule = __decorate([
11
- NgModule({
12
- imports: [
13
- CommonModule,
14
- MonacoEditorModule,
15
- FormsModule,
16
- ],
17
- exports: [
18
- FsTextEditorComponent,
19
- ],
20
- entryComponents: [],
21
- declarations: [
22
- FsTextEditorComponent,
23
- ]
24
- })
25
- ], FsTextEditorModule);
26
- return FsTextEditorModule;
27
- }());
28
- export { FsTextEditorModule };
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnMtdGV4dC1lZGl0b3IubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGZpcmVzdGl0Y2gvdGV4dC1lZGl0b3IvIiwic291cmNlcyI6WyJhcHAvZnMtdGV4dC1lZGl0b3IubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDdkQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFpQnZGO0lBQUE7SUFFQSxDQUFDO0lBRlksa0JBQWtCO1FBZjlCLFFBQVEsQ0FBQztZQUNSLE9BQU8sRUFBRTtnQkFDUCxZQUFZO2dCQUNaLGtCQUFrQjtnQkFDbEIsV0FBVzthQUNaO1lBQ0QsT0FBTyxFQUFFO2dCQUNQLHFCQUFxQjthQUN0QjtZQUNELGVBQWUsRUFBRSxFQUNoQjtZQUNELFlBQVksRUFBRTtnQkFDWixxQkFBcUI7YUFDdEI7U0FDRixDQUFDO09BQ1csa0JBQWtCLENBRTlCO0lBQUQseUJBQUM7Q0FBQSxBQUZELElBRUM7U0FGWSxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBNb25hY29FZGl0b3JNb2R1bGUgfSBmcm9tICduZ3gtbW9uYWNvLWVkaXRvcic7XG5pbXBvcnQgeyBGc1RleHRFZGl0b3JDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdGV4dC1lZGl0b3IvdGV4dC1lZGl0b3IuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBNb25hY29FZGl0b3JNb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBGc1RleHRFZGl0b3JDb21wb25lbnQsXG4gIF0sXG4gIGVudHJ5Q29tcG9uZW50czogW1xuICBdLFxuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBGc1RleHRFZGl0b3JDb21wb25lbnQsXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgRnNUZXh0RWRpdG9yTW9kdWxlIHtcblxufVxuIl19
@@ -1 +0,0 @@
1
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BmaXJlc3RpdGNoL3RleHQtZWRpdG9yLyIsInNvdXJjZXMiOlsiYXBwL2ludGVyZmFjZXMvY29uZmlnLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IElTdGFuZGFsb25lRWRpdG9yQ29uc3RydWN0aW9uT3B0aW9ucyA9IG1vbmFjby5lZGl0b3IuSVN0YW5kYWxvbmVFZGl0b3JDb25zdHJ1Y3Rpb25PcHRpb25zO1xuXG5cbmV4cG9ydCBpbnRlcmZhY2UgRnNUZXh0RWRpdG9yQ29uZmlnIGV4dGVuZHMgSVN0YW5kYWxvbmVFZGl0b3JDb25zdHJ1Y3Rpb25PcHRpb25zIHtcbiAgYXV0b0hlaWdodD86IGJvb2xlYW5cbn1cbiJdfQ==
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public_api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlyZXN0aXRjaC10ZXh0LWVkaXRvci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BmaXJlc3RpdGNoL3RleHQtZWRpdG9yLyIsInNvdXJjZXMiOlsiZmlyZXN0aXRjaC10ZXh0LWVkaXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpY19hcGknO1xuIl19
@@ -1,6 +0,0 @@
1
- /*
2
- * Public API Surface of fs-menu
3
- */
4
- export { FsTextEditorModule } from './app/fs-text-editor.module';
5
- export { FsTextEditorComponent } from './app/components/text-editor/text-editor.component';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BmaXJlc3RpdGNoL3RleHQtZWRpdG9yLyIsInNvdXJjZXMiOlsicHVibGljX2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUlILE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBS2pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBmcy1tZW51XG4gKi9cblxuaW1wb3J0IHsgZnJvbSB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgeyBGc1RleHRFZGl0b3JNb2R1bGUgfSBmcm9tICcuL2FwcC9mcy10ZXh0LWVkaXRvci5tb2R1bGUnO1xuXG5leHBvcnQgeyBGc1RleHRFZGl0b3JDb25maWcgfSBmcm9tICcuL2FwcC9pbnRlcmZhY2VzL2NvbmZpZy5pbnRlcmZhY2UnO1xuXG5cbmV4cG9ydCB7IEZzVGV4dEVkaXRvckNvbXBvbmVudCB9IGZyb20gJy4vYXBwL2NvbXBvbmVudHMvdGV4dC1lZGl0b3IvdGV4dC1lZGl0b3IuY29tcG9uZW50JztcbiJdfQ==