@ngstack/code-editor
Version:
Code editor component for Angular applications.
49 lines • 6.18 kB
JavaScript
import { NgModule, APP_INITIALIZER } from '@angular/core';
import { CommonModule } from '@angular/common';
import { CodeEditorComponent } from './code-editor/code-editor.component';
import { CodeEditorService, EDITOR_SETTINGS, } from './services/code-editor.service';
import { TypescriptDefaultsService } from './services/typescript-defaults.service';
import { JavascriptDefaultsService } from './services/javascript-defaults.service';
import { JsonDefaultsService } from './services/json-defaults.service';
import * as i0 from "@angular/core";
export function setupEditorService(service) {
const result = () => service.loadEditor();
return result;
}
export class CodeEditorModule {
static forRoot(settings) {
return {
ngModule: CodeEditorModule,
providers: [
{ provide: EDITOR_SETTINGS, useValue: settings },
CodeEditorService,
TypescriptDefaultsService,
JavascriptDefaultsService,
JsonDefaultsService,
{
provide: APP_INITIALIZER,
useFactory: setupEditorService,
deps: [CodeEditorService],
multi: true,
},
],
};
}
static forChild() {
return {
ngModule: CodeEditorModule,
};
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: CodeEditorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.1.3", ngImport: i0, type: CodeEditorModule, declarations: [CodeEditorComponent], imports: [CommonModule], exports: [CodeEditorComponent] }); }
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: CodeEditorModule, imports: [CommonModule] }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: CodeEditorModule, decorators: [{
type: NgModule,
args: [{
imports: [CommonModule],
declarations: [CodeEditorComponent],
exports: [CodeEditorComponent],
}]
}] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZS1lZGl0b3IubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29kZS1lZGl0b3Ivc3JjL2xpYi9jb2RlLWVkaXRvci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBdUIsZUFBZSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMxRSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLGVBQWUsR0FDaEIsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN4QyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUNuRixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUVuRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7QUFFdkUsTUFBTSxVQUFVLGtCQUFrQixDQUFDLE9BQTBCO0lBQzNELE1BQU0sTUFBTSxHQUFHLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUMxQyxPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDO0FBT0QsTUFBTSxPQUFPLGdCQUFnQjtJQUMzQixNQUFNLENBQUMsT0FBTyxDQUNaLFFBQTZCO1FBRTdCLE9BQU87WUFDTCxRQUFRLEVBQUUsZ0JBQWdCO1lBQzFCLFNBQVMsRUFBRTtnQkFDVCxFQUFFLE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRTtnQkFDaEQsaUJBQWlCO2dCQUNqQix5QkFBeUI7Z0JBQ3pCLHlCQUF5QjtnQkFDekIsbUJBQW1CO2dCQUNuQjtvQkFDRSxPQUFPLEVBQUUsZUFBZTtvQkFDeEIsVUFBVSxFQUFFLGtCQUFrQjtvQkFDOUIsSUFBSSxFQUFFLENBQUMsaUJBQWlCLENBQUM7b0JBQ3pCLEtBQUssRUFBRSxJQUFJO2lCQUNaO2FBQ0Y7U0FDRixDQUFDO0lBQ0osQ0FBQztJQUVELE1BQU0sQ0FBQyxRQUFRO1FBQ2IsT0FBTztZQUNMLFFBQVEsRUFBRSxnQkFBZ0I7U0FDM0IsQ0FBQztJQUNKLENBQUM7OEdBMUJVLGdCQUFnQjsrR0FBaEIsZ0JBQWdCLGlCQUhaLG1CQUFtQixhQUR4QixZQUFZLGFBRVosbUJBQW1COytHQUVsQixnQkFBZ0IsWUFKakIsWUFBWTs7MkZBSVgsZ0JBQWdCO2tCQUw1QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDdkIsWUFBWSxFQUFFLENBQUMsbUJBQW1CLENBQUM7b0JBQ25DLE9BQU8sRUFBRSxDQUFDLG1CQUFtQixDQUFDO2lCQUMvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlLCBNb2R1bGVXaXRoUHJvdmlkZXJzLCBBUFBfSU5JVElBTElaRVIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb2RlRWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9jb2RlLWVkaXRvci9jb2RlLWVkaXRvci5jb21wb25lbnQnO1xuaW1wb3J0IHtcbiAgQ29kZUVkaXRvclNlcnZpY2UsXG4gIEVESVRPUl9TRVRUSU5HUyxcbn0gZnJvbSAnLi9zZXJ2aWNlcy9jb2RlLWVkaXRvci5zZXJ2aWNlJztcbmltcG9ydCB7IFR5cGVzY3JpcHREZWZhdWx0c1NlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL3R5cGVzY3JpcHQtZGVmYXVsdHMuc2VydmljZSc7XG5pbXBvcnQgeyBKYXZhc2NyaXB0RGVmYXVsdHNTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9qYXZhc2NyaXB0LWRlZmF1bHRzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29kZUVkaXRvclNldHRpbmdzIH0gZnJvbSAnLi9lZGl0b3Itc2V0dGluZ3MnO1xuaW1wb3J0IHsgSnNvbkRlZmF1bHRzU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvanNvbi1kZWZhdWx0cy5zZXJ2aWNlJztcblxuZXhwb3J0IGZ1bmN0aW9uIHNldHVwRWRpdG9yU2VydmljZShzZXJ2aWNlOiBDb2RlRWRpdG9yU2VydmljZSkge1xuICBjb25zdCByZXN1bHQgPSAoKSA9PiBzZXJ2aWNlLmxvYWRFZGl0b3IoKTtcbiAgcmV0dXJuIHJlc3VsdDtcbn1cblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIGRlY2xhcmF0aW9uczogW0NvZGVFZGl0b3JDb21wb25lbnRdLFxuICBleHBvcnRzOiBbQ29kZUVkaXRvckNvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIENvZGVFZGl0b3JNb2R1bGUge1xuICBzdGF0aWMgZm9yUm9vdChcbiAgICBzZXR0aW5ncz86IENvZGVFZGl0b3JTZXR0aW5nc1xuICApOiBNb2R1bGVXaXRoUHJvdmlkZXJzPENvZGVFZGl0b3JNb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IENvZGVFZGl0b3JNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgeyBwcm92aWRlOiBFRElUT1JfU0VUVElOR1MsIHVzZVZhbHVlOiBzZXR0aW5ncyB9LFxuICAgICAgICBDb2RlRWRpdG9yU2VydmljZSxcbiAgICAgICAgVHlwZXNjcmlwdERlZmF1bHRzU2VydmljZSxcbiAgICAgICAgSmF2YXNjcmlwdERlZmF1bHRzU2VydmljZSxcbiAgICAgICAgSnNvbkRlZmF1bHRzU2VydmljZSxcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IEFQUF9JTklUSUFMSVpFUixcbiAgICAgICAgICB1c2VGYWN0b3J5OiBzZXR1cEVkaXRvclNlcnZpY2UsXG4gICAgICAgICAgZGVwczogW0NvZGVFZGl0b3JTZXJ2aWNlXSxcbiAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfTtcbiAgfVxuXG4gIHN0YXRpYyBmb3JDaGlsZCgpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPENvZGVFZGl0b3JNb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IENvZGVFZGl0b3JNb2R1bGUsXG4gICAgfTtcbiAgfVxufVxuIl19