UNPKG

@hxui/angular

Version:

This README includes the steps that are necessary to import the HxUi-angular into a project or to contribute with development.

66 lines (65 loc) 4.32 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes} checked by tsc */ import { Directive, ElementRef, HostListener } from '@angular/core'; export class AutoGrowDirective { /** * @param {?} element */ constructor(element) { this.element = element; } /** * @return {?} */ onInput() { this.resize(); } /** * @return {?} */ ngAfterViewInit() { const /** @type {?} */ style = this.element.nativeElement.style; style.overflow = 'hidden'; style.height = 'auto'; } /** * @return {?} */ resize() { const /** @type {?} */ el = this.element.nativeElement; if (el.style.height === el.scrollHeight + 'px') { return; } el.style.overflow = 'hidden'; el.style.height = 'auto'; el.style.height = `${el.scrollHeight}px`; } } AutoGrowDirective.decorators = [ { type: Directive, args: [{ selector: 'textarea[autogrow]' },] }, ]; /** @nocollapse */ AutoGrowDirective.ctorParameters = () => [ { type: ElementRef, }, ]; AutoGrowDirective.propDecorators = { "onInput": [{ type: HostListener, args: ['input', ['$event.target'],] },], }; function AutoGrowDirective_tsickle_Closure_declarations() { /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */ AutoGrowDirective.decorators; /** * @nocollapse * @type {function(): !Array<(null|{type: ?, decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>)})>} */ AutoGrowDirective.ctorParameters; /** @type {!Object<string,!Array<{type: !Function, args: (undefined|!Array<?>)}>>} */ AutoGrowDirective.propDecorators; /** @type {?} */ AutoGrowDirective.prototype.element; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0by1ncm93LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BoeHVpL2FuZ3VsYXIvIiwic291cmNlcyI6WyJsaWIvYXV0by1ncm93L2F1dG8tZ3Jvdy5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFFYixNQUFNLGVBQWUsQ0FBQztBQUt2QixNQUFNOzs7O0lBUUosWUFBbUIsT0FBbUI7UUFBbkIsWUFBTyxHQUFQLE9BQU8sQ0FBWTtLQUFJOzs7O0lBSm5DLE9BQU87UUFDWixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7Ozs7O0lBS1QsZUFBZTtRQUNwQix1QkFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDO1FBQy9DLEtBQUssQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1FBQzFCLEtBQUssQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDOzs7OztJQUdqQixNQUFNO1FBQ1gsdUJBQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDO1FBRXRDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsTUFBTSxLQUFLLEVBQUUsQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQztZQUMvQyxNQUFNLENBQUM7U0FDUjtRQUVELEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUM3QixFQUFFLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDekIsRUFBRSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsR0FBRyxFQUFFLENBQUMsWUFBWSxJQUFJLENBQUM7Ozs7WUE1QjVDLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsb0JBQW9CO2FBQy9COzs7O1lBUEMsVUFBVTs7O3dCQVdULFlBQVksU0FBQyxPQUFPLEVBQUUsQ0FBQyxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIERpcmVjdGl2ZSxcclxuICBFbGVtZW50UmVmLFxyXG4gIEhvc3RMaXN0ZW5lcixcclxuICBBZnRlclZpZXdJbml0XHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ3RleHRhcmVhW2F1dG9ncm93XSdcclxufSlcclxuZXhwb3J0IGNsYXNzIEF1dG9Hcm93RGlyZWN0aXZlXHJcbiAgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignaW5wdXQnLCBbJyRldmVudC50YXJnZXQnXSlcclxuICBwdWJsaWMgb25JbnB1dCgpIHtcclxuICAgIHRoaXMucmVzaXplKCk7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgZWxlbWVudDogRWxlbWVudFJlZikge31cclxuXHJcbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIGNvbnN0IHN0eWxlID0gdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQuc3R5bGU7XHJcbiAgICBzdHlsZS5vdmVyZmxvdyA9ICdoaWRkZW4nO1xyXG4gICAgc3R5bGUuaGVpZ2h0ID0gJ2F1dG8nO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHJlc2l6ZSgpIHtcclxuICAgIGNvbnN0IGVsID0gdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQ7XHJcblxyXG4gICAgaWYgKGVsLnN0eWxlLmhlaWdodCA9PT0gZWwuc2Nyb2xsSGVpZ2h0ICsgJ3B4Jykge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgZWwuc3R5bGUub3ZlcmZsb3cgPSAnaGlkZGVuJztcclxuICAgIGVsLnN0eWxlLmhlaWdodCA9ICdhdXRvJztcclxuICAgIGVsLnN0eWxlLmhlaWdodCA9IGAke2VsLnNjcm9sbEhlaWdodH1weGA7XHJcbiAgfVxyXG59XHJcbiJdfQ==