@asi-ngtools/lib
Version:
This project is a little components library, simple to use, which will help you to simplify your project.
122 lines (121 loc) • 9.27 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
*/
import * as tslib_1 from "tslib";
import { NG_VALUE_ACCESSOR } from '@angular/forms';
import { DefaultControlValueAccessor } from './../common/default-control-value-accessor';
import { Component, Input, forwardRef, NgZone, HostBinding } from '@angular/core';
var AsiTinyMCE = /** @class */ (function (_super) {
tslib_1.__extends(AsiTinyMCE, _super);
function AsiTinyMCE(zone) {
var _this = _super.call(this) || this;
_this.zone = zone;
_this.class = 'asi-component asi-tinymce';
_this.labelPosition = 'top';
return _this;
}
/**
* @return {?}
*/
AsiTinyMCE.prototype.ngOnInit = /**
* @return {?}
*/
function () {
this.class += ' label-' + this.labelPosition;
};
/**
* @return {?}
*/
AsiTinyMCE.prototype.ngAfterViewInit = /**
* @return {?}
*/
function () {
var _this = this;
tinymce.init({
selector: '#' + this.elementId,
plugins: ['link', 'paste', 'table', 'textcolor', 'colorpicker'],
// tslint:disable-next-line:max-line-length
toolbar: 'fontselect fontsizeselect | bold italic underline strikethrough | alignleft aligncenter alignright alignjustify | outdent indent blockquote | forecolor backcolor',
skin_url: '../assets/tinymce/skin',
setup: function (editor) {
_this.editor = editor;
editor.on('keyup', function () {
_this.onModelChange();
});
editor.on('Change', function () {
_this.onModelChange();
});
},
init_instance_callback: function (editor) {
if (_this.value != null) {
editor.setContent(_this.value);
}
}
});
};
/**
* @return {?}
*/
AsiTinyMCE.prototype.onModelChange = /**
* @return {?}
*/
function () {
var _this = this;
this.zone.run(function () {
/** @type {?} */
var content = _this.editor.getContent();
_this.value = content;
_this.onValueChange.emit(content);
});
};
/**
* @return {?}
*/
AsiTinyMCE.prototype.ngOnDestroy = /**
* @return {?}
*/
function () {
tinymce.remove(this.editor);
};
AsiTinyMCE.decorators = [
{ type: Component, args: [{
selector: 'asi-tinymce',
template: "<textarea id=\"{{elementId}}\"></textarea>",
providers: [
{
provide: NG_VALUE_ACCESSOR,
useExisting: forwardRef(function () { return AsiTinyMCE; }),
multi: true
}
]
}] }
];
/** @nocollapse */
AsiTinyMCE.ctorParameters = function () { return [
{ type: NgZone }
]; };
AsiTinyMCE.propDecorators = {
class: [{ type: HostBinding, args: ['class',] }],
label: [{ type: Input }],
labelPosition: [{ type: Input }],
elementId: [{ type: Input }]
};
return AsiTinyMCE;
}(DefaultControlValueAccessor));
export { AsiTinyMCE };
if (false) {
/** @type {?} */
AsiTinyMCE.prototype.class;
/** @type {?} */
AsiTinyMCE.prototype.label;
/** @type {?} */
AsiTinyMCE.prototype.labelPosition;
/** @type {?} */
AsiTinyMCE.prototype.elementId;
/** @type {?} */
AsiTinyMCE.prototype.editor;
/** @type {?} */
AsiTinyMCE.prototype.zone;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNpLXRpbnltY2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFzaS1uZ3Rvb2xzL2xpYi8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2FzaS10aW55bWNlL2FzaS10aW55bWNlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQW9DLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7SUFlcEYsc0NBQTJCO0lBV3pELG9CQUFvQixJQUFZO1FBQWhDLFlBQ0UsaUJBQU8sU0FDUjtRQUZtQixVQUFJLEdBQUosSUFBSSxDQUFRO3NCQVRGLDJCQUEyQjs4QkFHc0MsS0FBSzs7S0FRbkc7Ozs7SUFFRCw2QkFBUTs7O0lBQVI7UUFDRSxJQUFJLENBQUMsS0FBSyxJQUFJLFNBQVMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDO0tBQzlDOzs7O0lBRUQsb0NBQWU7OztJQUFmO1FBQUEsaUJBc0JDO1FBckJDLE9BQU8sQ0FBQyxJQUFJLENBQUM7WUFDWCxRQUFRLEVBQUUsR0FBRyxHQUFHLElBQUksQ0FBQyxTQUFTO1lBQzlCLE9BQU8sRUFBRSxDQUFDLE1BQU0sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxhQUFhLENBQUM7O1lBRS9ELE9BQU8sRUFBRSxtS0FBbUs7WUFDNUssUUFBUSxFQUFFLHdCQUF3QjtZQUNsQyxLQUFLLEVBQUUsVUFBQyxNQUFXO2dCQUNqQixLQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztnQkFDckIsTUFBTSxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUU7b0JBQ2pCLEtBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztpQkFDdEIsQ0FBQyxDQUFDO2dCQUNILE1BQU0sQ0FBQyxFQUFFLENBQUMsUUFBUSxFQUFFO29CQUNsQixLQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7aUJBQ3RCLENBQUMsQ0FBQzthQUNKO1lBQ0Qsc0JBQXNCLEVBQUUsVUFBQyxNQUFXO2dCQUNsQyxFQUFFLENBQUMsQ0FBQyxLQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUM7b0JBQ3ZCLE1BQU0sQ0FBQyxVQUFVLENBQUMsS0FBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2lCQUMvQjthQUNGO1NBQ0YsQ0FBQyxDQUFDO0tBQ0o7Ozs7SUFFRCxrQ0FBYTs7O0lBQWI7UUFBQSxpQkFNQztRQUxDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDOztZQUNaLElBQU0sT0FBTyxHQUFHLEtBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDekMsS0FBSSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUM7WUFDckIsS0FBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDbEMsQ0FBQyxDQUFDO0tBQ0o7Ozs7SUFFRCxnQ0FBVzs7O0lBQVg7UUFDRSxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztLQUM3Qjs7Z0JBaEVGLFNBQVMsU0FBQztvQkFDVCxRQUFRLEVBQUUsYUFBYTtvQkFDdkIsc0RBQXlDO29CQUN6QyxTQUFTLEVBQUU7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxjQUFNLE9BQUEsVUFBVSxFQUFWLENBQVUsQ0FBQzs0QkFDekMsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7aUJBQ0Y7Ozs7Z0JBZHNDLE1BQU07Ozt3QkFpQjFDLFdBQVcsU0FBQyxPQUFPO3dCQUVuQixLQUFLO2dDQUNMLEtBQUs7NEJBQ0wsS0FBSzs7cUJBdkJSO0VBaUJnQywyQkFBMkI7U0FBOUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBEZWZhdWx0Q29udHJvbFZhbHVlQWNjZXNzb3IgfSBmcm9tICcuLy4uL2NvbW1vbi9kZWZhdWx0LWNvbnRyb2wtdmFsdWUtYWNjZXNzb3InO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBmb3J3YXJkUmVmLCBOZ1pvbmUsIE9uSW5pdCwgT25EZXN0cm95LCBBZnRlclZpZXdJbml0LCBIb3N0QmluZGluZyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuZGVjbGFyZSB2YXIgdGlueW1jZTogYW55O1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhc2ktdGlueW1jZScsXHJcbiAgdGVtcGxhdGVVcmw6ICdhc2ktdGlueW1jZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBBc2lUaW55TUNFKSxcclxuICAgICAgbXVsdGk6IHRydWVcclxuICAgIH1cclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBc2lUaW55TUNFIGV4dGVuZHMgRGVmYXVsdENvbnRyb2xWYWx1ZUFjY2Vzc29yIGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xyXG5cclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJykgY2xhc3MgPSAnYXNpLWNvbXBvbmVudCBhc2ktdGlueW1jZSc7XHJcblxyXG4gIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgbGFiZWxQb3NpdGlvbjogJ3RvcCcgfCAnbGVmdCcgfCAncmlnaHQnIHwgJ2JvdHRvbScgfCAnYm90dG9tLWNlbnRlcicgfCAndG9wLWNlbnRlcicgPSAndG9wJztcclxuICBASW5wdXQoKSBlbGVtZW50SWQ6IHN0cmluZztcclxuXHJcbiAgLy8gcmVmZXJlbmNlIGRlIGwnaW5zdGFuY2UgZHUgdGlueW1jZVxyXG4gIGVkaXRvcjogYW55O1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHpvbmU6IE5nWm9uZSkge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5jbGFzcyArPSAnIGxhYmVsLScgKyB0aGlzLmxhYmVsUG9zaXRpb247XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICB0aW55bWNlLmluaXQoe1xyXG4gICAgICBzZWxlY3RvcjogJyMnICsgdGhpcy5lbGVtZW50SWQsXHJcbiAgICAgIHBsdWdpbnM6IFsnbGluaycsICdwYXN0ZScsICd0YWJsZScsICd0ZXh0Y29sb3InLCAnY29sb3JwaWNrZXInXSxcclxuICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm1heC1saW5lLWxlbmd0aFxyXG4gICAgICB0b29sYmFyOiAnZm9udHNlbGVjdCBmb250c2l6ZXNlbGVjdCB8IGJvbGQgaXRhbGljIHVuZGVybGluZSBzdHJpa2V0aHJvdWdoIHwgYWxpZ25sZWZ0IGFsaWduY2VudGVyIGFsaWducmlnaHQgYWxpZ25qdXN0aWZ5IHwgb3V0ZGVudCBpbmRlbnQgYmxvY2txdW90ZSB8IGZvcmVjb2xvciBiYWNrY29sb3InLFxyXG4gICAgICBza2luX3VybDogJy4uL2Fzc2V0cy90aW55bWNlL3NraW4nLFxyXG4gICAgICBzZXR1cDogKGVkaXRvcjogYW55KSA9PiB7XHJcbiAgICAgICAgdGhpcy5lZGl0b3IgPSBlZGl0b3I7XHJcbiAgICAgICAgZWRpdG9yLm9uKCdrZXl1cCcsICgpID0+IHtcclxuICAgICAgICAgIHRoaXMub25Nb2RlbENoYW5nZSgpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIGVkaXRvci5vbignQ2hhbmdlJywgKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5vbk1vZGVsQ2hhbmdlKCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0sXHJcbiAgICAgIGluaXRfaW5zdGFuY2VfY2FsbGJhY2s6IChlZGl0b3I6IGFueSkgPT4ge1xyXG4gICAgICAgIGlmICh0aGlzLnZhbHVlICE9IG51bGwpIHtcclxuICAgICAgICAgIGVkaXRvci5zZXRDb250ZW50KHRoaXMudmFsdWUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBvbk1vZGVsQ2hhbmdlKCkge1xyXG4gICAgdGhpcy56b25lLnJ1bigoKSA9PiB7XHJcbiAgICAgIGNvbnN0IGNvbnRlbnQgPSB0aGlzLmVkaXRvci5nZXRDb250ZW50KCk7XHJcbiAgICAgIHRoaXMudmFsdWUgPSBjb250ZW50O1xyXG4gICAgICB0aGlzLm9uVmFsdWVDaGFuZ2UuZW1pdChjb250ZW50KTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aW55bWNlLnJlbW92ZSh0aGlzLmVkaXRvcik7XHJcbiAgfVxyXG59XHJcbiJdfQ==