UNPKG

ngx-quill

Version:

An angular (>= v2) component for the easy use of the QuillJS richt text editor.

55 lines 5.74 kB
import * as tslib_1 from "tslib"; import { DomSanitizer } from '@angular/platform-browser'; import { QUILL_CONFIG_TOKEN } from './quill-editor.interfaces'; import { Component, Inject, Input, ViewEncapsulation } from '@angular/core'; let QuillViewHTMLComponent = class QuillViewHTMLComponent { constructor(sanitizer, config) { this.sanitizer = sanitizer; this.config = config; this.innerHTML = ''; this.themeClass = 'ql-snow'; this.content = ''; } ngOnChanges(changes) { if (changes.theme) { const theme = changes.theme.currentValue || (this.config.theme ? this.config.theme : 'snow'); this.themeClass = `ql-${theme} ngx-quill-view-html`; } else if (!this.theme) { const theme = this.config.theme ? this.config.theme : 'snow'; this.themeClass = `ql-${theme} ngx-quill-view-html`; } if (changes.content) { this.innerHTML = this.sanitizer.bypassSecurityTrustHtml(changes.content.currentValue); } } }; tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", String) ], QuillViewHTMLComponent.prototype, "content", void 0); tslib_1.__decorate([ Input(), tslib_1.__metadata("design:type", String) ], QuillViewHTMLComponent.prototype, "theme", void 0); QuillViewHTMLComponent = tslib_1.__decorate([ Component({ encapsulation: ViewEncapsulation.None, selector: 'quill-view-html', template: ` <div class="ql-container" [ngClass]="themeClass"> <div class="ql-editor" [innerHTML]="innerHTML"> </div> </div> `, styles: [` .ql-container.ngx-quill-view-html { border: 0; } `] }), tslib_1.__param(1, Inject(QUILL_CONFIG_TOKEN)), tslib_1.__metadata("design:paramtypes", [DomSanitizer, Object]) ], QuillViewHTMLComponent); export { QuillViewHTMLComponent }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVpbGwtdmlldy1odG1sLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1xdWlsbC8iLCJzb3VyY2VzIjpbInNyYy9xdWlsbC12aWV3LWh0bWwuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFZLE1BQU0sMkJBQTJCLENBQUE7QUFFbEUsT0FBTyxFQUFFLGtCQUFrQixFQUFlLE1BQU0sMkJBQTJCLENBQUE7QUFFM0UsT0FBTyxFQUNMLFNBQVMsRUFDVCxNQUFNLEVBQ04sS0FBSyxFQUdMLGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQTtBQWlCdEIsSUFBYSxzQkFBc0IsR0FBbkMsTUFBYSxzQkFBc0I7SUFPakMsWUFDVSxTQUF1QixFQUNLLE1BQW1CO1FBRC9DLGNBQVMsR0FBVCxTQUFTLENBQWM7UUFDSyxXQUFNLEdBQU4sTUFBTSxDQUFhO1FBUnpELGNBQVMsR0FBYSxFQUFFLENBQUE7UUFDeEIsZUFBVSxHQUFXLFNBQVMsQ0FBQTtRQUVyQixZQUFPLEdBQVcsRUFBRSxDQUFBO0lBTTFCLENBQUM7SUFFSixXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxPQUFPLENBQUMsS0FBSyxFQUFFO1lBQ2pCLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsWUFBWSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQTtZQUM1RixJQUFJLENBQUMsVUFBVSxHQUFHLE1BQU0sS0FBSyxzQkFBc0IsQ0FBQTtTQUNwRDthQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ3RCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFBO1lBQzVELElBQUksQ0FBQyxVQUFVLEdBQUcsTUFBTSxLQUFLLHNCQUFzQixDQUFBO1NBQ3BEO1FBQ0QsSUFBSSxPQUFPLENBQUMsT0FBTyxFQUFFO1lBQ25CLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyx1QkFBdUIsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFBO1NBQ3RGO0lBQ0gsQ0FBQztDQUNGLENBQUE7QUFwQlU7SUFBUixLQUFLLEVBQUU7O3VEQUFxQjtBQUNwQjtJQUFSLEtBQUssRUFBRTs7cURBQWU7QUFMWixzQkFBc0I7SUFmbEMsU0FBUyxDQUFDO1FBQ1QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7UUFDckMsUUFBUSxFQUFFLGlCQUFpQjtRQU0zQixRQUFRLEVBQUU7Ozs7O0NBS1g7aUJBVlU7Ozs7Q0FJVjtLQU9BLENBQUM7SUFVRyxtQkFBQSxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQTs2Q0FEUixZQUFZO0dBUnRCLHNCQUFzQixDQXdCbEM7U0F4Qlksc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRG9tU2FuaXRpemVyLCBTYWZlSHRtbCB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInXG5cbmltcG9ydCB7IFFVSUxMX0NPTkZJR19UT0tFTiwgUXVpbGxDb25maWcgfSBmcm9tICcuL3F1aWxsLWVkaXRvci5pbnRlcmZhY2VzJ1xuXG5pbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcblxuQENvbXBvbmVudCh7XG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIHNlbGVjdG9yOiAncXVpbGwtdmlldy1odG1sJyxcbiAgc3R5bGVzOiBbYFxuLnFsLWNvbnRhaW5lci5uZ3gtcXVpbGwtdmlldy1odG1sIHtcbiAgYm9yZGVyOiAwO1xufVxuYF0sXG4gIHRlbXBsYXRlOiBgXG4gIDxkaXYgY2xhc3M9XCJxbC1jb250YWluZXJcIiBbbmdDbGFzc109XCJ0aGVtZUNsYXNzXCI+XG4gICAgPGRpdiBjbGFzcz1cInFsLWVkaXRvclwiIFtpbm5lckhUTUxdPVwiaW5uZXJIVE1MXCI+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuYFxufSlcbmV4cG9ydCBjbGFzcyBRdWlsbFZpZXdIVE1MQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgaW5uZXJIVE1MOiBTYWZlSHRtbCA9ICcnXG4gIHRoZW1lQ2xhc3M6IHN0cmluZyA9ICdxbC1zbm93J1xuXG4gIEBJbnB1dCgpIGNvbnRlbnQ6IHN0cmluZyA9ICcnXG4gIEBJbnB1dCgpIHRoZW1lPzogc3RyaW5nXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcixcbiAgICBASW5qZWN0KFFVSUxMX0NPTkZJR19UT0tFTikgcHJpdmF0ZSBjb25maWc6IFF1aWxsQ29uZmlnXG4gICkge31cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKGNoYW5nZXMudGhlbWUpIHtcbiAgICAgIGNvbnN0IHRoZW1lID0gY2hhbmdlcy50aGVtZS5jdXJyZW50VmFsdWUgfHwgKHRoaXMuY29uZmlnLnRoZW1lID8gdGhpcy5jb25maWcudGhlbWUgOiAnc25vdycpXG4gICAgICB0aGlzLnRoZW1lQ2xhc3MgPSBgcWwtJHt0aGVtZX0gbmd4LXF1aWxsLXZpZXctaHRtbGBcbiAgICB9IGVsc2UgaWYgKCF0aGlzLnRoZW1lKSB7XG4gICAgICBjb25zdCB0aGVtZSA9IHRoaXMuY29uZmlnLnRoZW1lID8gdGhpcy5jb25maWcudGhlbWUgOiAnc25vdydcbiAgICAgIHRoaXMudGhlbWVDbGFzcyA9IGBxbC0ke3RoZW1lfSBuZ3gtcXVpbGwtdmlldy1odG1sYFxuICAgIH1cbiAgICBpZiAoY2hhbmdlcy5jb250ZW50KSB7XG4gICAgICB0aGlzLmlubmVySFRNTCA9IHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RIdG1sKGNoYW5nZXMuY29udGVudC5jdXJyZW50VmFsdWUpXG4gICAgfVxuICB9XG59XG4iXX0=