UNPKG

@asi-ngtools/lib

Version:

This project is a little components library, simple to use, which will help you to simplify your project.

78 lines (77 loc) 5.15 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,uselessCode} checked by tsc */ import { AsiFileService } from './../../services/asi-file.service'; import { Component, Input, Renderer, ElementRef, HostBinding } from '@angular/core'; export class AsiBindHtml { /** * @param {?} renderer * @param {?} elementRef * @param {?} fileService */ constructor(renderer, elementRef, fileService) { this.renderer = renderer; this.elementRef = elementRef; this.fileService = fileService; this.class = 'asi-component asi-bind-html'; } /** * @return {?} */ ngOnChanges() { this.initContent(); } /** * @return {?} */ initContent() { if (this.fromUrl != null) { this.fileService.getFileAsText(this.fromUrl).subscribe((result) => { this.value = result; this.renderer.setElementProperty(this.elementRef.nativeElement, 'innerHTML', this.value); }); } else { this.renderer.setElementProperty(this.elementRef.nativeElement, 'innerHTML', this.value); } } } AsiBindHtml.decorators = [ { type: Component, args: [{ selector: 'asi-bind-html', template: '<div><div>' }] } ]; /** @nocollapse */ AsiBindHtml.ctorParameters = () => [ { type: Renderer }, { type: ElementRef }, { type: AsiFileService } ]; AsiBindHtml.propDecorators = { class: [{ type: HostBinding, args: ['class',] }], value: [{ type: Input }], fromUrl: [{ type: Input }] }; if (false) { /** @type {?} */ AsiBindHtml.prototype.class; /** * Bind html from string value * @type {?} */ AsiBindHtml.prototype.value; /** * Load html from an url * @type {?} */ AsiBindHtml.prototype.fromUrl; /** @type {?} */ AsiBindHtml.prototype.renderer; /** @type {?} */ AsiBindHtml.prototype.elementRef; /** @type {?} */ AsiBindHtml.prototype.fileService; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNpLWJpbmQtaHRtbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYXNpLW5ndG9vbHMvbGliLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvYXNpLWJpbmQtaHRtbC9hc2ktYmluZC1odG1sLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBTS9GLE1BQU07Ozs7OztJQVVKLFlBQW9CLFFBQWtCLEVBQVUsVUFBc0IsRUFBVSxXQUEyQjtRQUF2RixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQVUsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUFVLGdCQUFXLEdBQVgsV0FBVyxDQUFnQjtxQkFSN0UsNkJBQTZCO0tBUzFEOzs7O0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztLQUNwQjs7OztJQUVELFdBQVc7UUFDVCxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUM7WUFDekIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO2dCQUNoRSxJQUFJLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQztnQkFDcEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxXQUFXLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQzFGLENBQUMsQ0FBQztTQUNKO1FBQUMsSUFBSSxDQUFDLENBQUM7WUFDTixJQUFJLENBQUMsUUFBUSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLFdBQVcsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDMUY7S0FDRjs7O1lBOUJGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsZUFBZTtnQkFDekIsUUFBUSxFQUFFLFlBQVk7YUFDdkI7Ozs7WUFMMEIsUUFBUTtZQUFFLFVBQVU7WUFEdEMsY0FBYzs7O29CQVNwQixXQUFXLFNBQUMsT0FBTztvQkFHbkIsS0FBSztzQkFHTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXNpRmlsZVNlcnZpY2UgfSBmcm9tICcuLy4uLy4uL3NlcnZpY2VzL2FzaS1maWxlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBSZW5kZXJlciwgRWxlbWVudFJlZiwgSG9zdEJpbmRpbmcsIE9uQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhc2ktYmluZC1odG1sJyxcclxuICB0ZW1wbGF0ZTogJzxkaXY+PGRpdj4nLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQXNpQmluZEh0bWwgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xyXG5cclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJykgY2xhc3MgPSAnYXNpLWNvbXBvbmVudCBhc2ktYmluZC1odG1sJztcclxuXHJcbiAgLyoqIEJpbmQgaHRtbCBmcm9tIHN0cmluZyB2YWx1ZSAqL1xyXG4gIEBJbnB1dCgpIHZhbHVlOiBzdHJpbmc7XHJcblxyXG4gIC8qKiBMb2FkIGh0bWwgZnJvbSBhbiB1cmwgKi9cclxuICBASW5wdXQoKSBmcm9tVXJsOiBzdHJpbmc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyLCBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsIHByaXZhdGUgZmlsZVNlcnZpY2U6IEFzaUZpbGVTZXJ2aWNlKSB7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcygpIHtcclxuICAgIHRoaXMuaW5pdENvbnRlbnQoKTtcclxuICB9XHJcblxyXG4gIGluaXRDb250ZW50KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuZnJvbVVybCAhPSBudWxsKSB7XHJcbiAgICAgIHRoaXMuZmlsZVNlcnZpY2UuZ2V0RmlsZUFzVGV4dCh0aGlzLmZyb21VcmwpLnN1YnNjcmliZSgocmVzdWx0KSA9PiB7XHJcbiAgICAgICAgdGhpcy52YWx1ZSA9IHJlc3VsdDtcclxuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldEVsZW1lbnRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2lubmVySFRNTCcsIHRoaXMudmFsdWUpO1xyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0RWxlbWVudFByb3BlcnR5KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnaW5uZXJIVE1MJywgdGhpcy52YWx1ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==