@stratio/egeo
Version:
113 lines • 8.85 kB
JavaScript
/**
* @fileoverview added by tsickle
* Generated from: lib/directives/st-input-adjustable/st-input-adjustable.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/*
* © 2017 Stratio Big Data Inc., Sucursal en España.
*
* This software is licensed under the Apache License, Version 2.0.
* This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the terms of the License for more details.
*
* SPDX-License-Identifier: Apache-2.0.
*/
import { Directive, ElementRef, Input } from '@angular/core';
import { NgModel } from '@angular/forms';
var StInputAdjustable = /** @class */ (function () {
function StInputAdjustable(el, ngModel) {
this.el = el;
this.ngModel = ngModel;
}
/**
* @return {?}
*/
StInputAdjustable.prototype.ngAfterViewInit = /**
* @return {?}
*/
function () {
var _this = this;
this.createHiddenTitle();
this.ngModel.valueChanges.subscribe((/**
* @param {?} value
* @return {?}
*/
function (value) {
_this.text = value || _this.placeholder;
_this.hiddenTitle.innerText = _this.text;
setTimeout((/**
* @return {?}
*/
function () {
_this.el.nativeElement.parentNode.style.width = _this.hiddenTitle.clientWidth + 10 + 'px';
}));
}));
};
/**
* @private
* @return {?}
*/
StInputAdjustable.prototype.createHiddenTitle = /**
* @private
* @return {?}
*/
function () {
if (!this.ngModel.value) {
this.el.nativeElement.value = null;
this.el.nativeElement.placeholder = this.placeholder;
}
this.hiddenTitle = this.el.nativeElement.parentNode.querySelector('.hidden-text');
if (!this.hiddenTitle) {
this.hiddenTitle = document.createElement('span');
this.el.nativeElement.parentNode.appendChild(this.hiddenTitle);
}
this.hiddenTitle.className = 'hidden-text';
this.hiddenTitle.style.visibility = 'hidden';
this.hiddenTitle.style.position = 'absolute';
this.hiddenTitle.style.textTransform = 'none';
this.hiddenTitle.style.whiteSpace = 'nowrap';
this.hiddenTitle.style.width = 'auto';
this.hiddenTitle.style.height = 'auto';
};
StInputAdjustable.decorators = [
{ type: Directive, args: [{
selector: '[st-input-adjustable]'
},] }
];
/** @nocollapse */
StInputAdjustable.ctorParameters = function () { return [
{ type: ElementRef },
{ type: NgModel }
]; };
StInputAdjustable.propDecorators = {
placeholder: [{ type: Input }]
};
return StInputAdjustable;
}());
export { StInputAdjustable };
if (false) {
/** @type {?} */
StInputAdjustable.prototype.placeholder;
/**
* @type {?}
* @private
*/
StInputAdjustable.prototype.text;
/**
* @type {?}
* @private
*/
StInputAdjustable.prototype.hiddenTitle;
/**
* @type {?}
* @private
*/
StInputAdjustable.prototype.el;
/**
* @type {?}
* @private
*/
StInputAdjustable.prototype.ngModel;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3QtaW5wdXQtYWRqdXN0YWJsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzdHJhdGlvL2VnZW8vIiwic291cmNlcyI6WyJsaWIvZGlyZWN0aXZlcy9zdC1pbnB1dC1hZGp1c3RhYmxlL3N0LWlucHV0LWFkanVzdGFibGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBVUEsT0FBTyxFQUVKLFNBQVMsRUFDVCxVQUFVLEVBQ1YsS0FBSyxFQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6QztJQVNHLDJCQUFvQixFQUFjLEVBQ2QsT0FBZ0I7UUFEaEIsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUNkLFlBQU8sR0FBUCxPQUFPLENBQVM7SUFDcEMsQ0FBQzs7OztJQUVELDJDQUFlOzs7SUFBZjtRQUFBLGlCQVNDO1FBUkUsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsU0FBUzs7OztRQUFDLFVBQUEsS0FBSztZQUN0QyxLQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssSUFBSSxLQUFJLENBQUMsV0FBVyxDQUFDO1lBQ3RDLEtBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxHQUFHLEtBQUksQ0FBQyxJQUFJLENBQUM7WUFDdkMsVUFBVTs7O1lBQUM7Z0JBQ1IsS0FBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsS0FBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQztZQUMzRixDQUFDLEVBQUMsQ0FBQztRQUNOLENBQUMsRUFBQyxDQUFDO0lBQ04sQ0FBQzs7Ozs7SUFFTyw2Q0FBaUI7Ozs7SUFBekI7UUFDRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUU7WUFDdEIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztZQUNuQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztTQUN2RDtRQUNELElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNsRixJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNwQixJQUFJLENBQUMsV0FBVyxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDbEQsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7U0FDakU7UUFFRCxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsR0FBRyxhQUFhLENBQUM7UUFDM0MsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsVUFBVSxHQUFHLFFBQVEsQ0FBQztRQUM3QyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDO1FBQzdDLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLGFBQWEsR0FBRyxNQUFNLENBQUM7UUFDOUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsVUFBVSxHQUFHLFFBQVEsQ0FBQztRQUM3QyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO1FBQ3RDLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7SUFDMUMsQ0FBQzs7Z0JBMUNILFNBQVMsU0FBQztvQkFDUixRQUFRLEVBQUUsdUJBQXVCO2lCQUNuQzs7OztnQkFQRSxVQUFVO2dCQUdKLE9BQU87Ozs4QkFNWixLQUFLOztJQXdDVCx3QkFBQztDQUFBLEFBNUNELElBNENDO1NBekNZLGlCQUFpQjs7O0lBQzNCLHdDQUE2Qjs7Ozs7SUFFN0IsaUNBQXFCOzs7OztJQUNyQix3Q0FBcUM7Ozs7O0lBRXpCLCtCQUFzQjs7Ozs7SUFDdEIsb0NBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIMKpIDIwMTcgU3RyYXRpbyBCaWcgRGF0YSBJbmMuLCBTdWN1cnNhbCBlbiBFc3Bhw7FhLlxuICpcbiAqIFRoaXMgc29mdHdhcmUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMC5cbiAqIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLCBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7XG4gKiB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLlxuICogU2VlIHRoZSB0ZXJtcyBvZiB0aGUgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wLlxuICovXG5pbXBvcnQge1xuICAgQWZ0ZXJWaWV3SW5pdCxcbiAgIERpcmVjdGl2ZSxcbiAgIEVsZW1lbnRSZWYsXG4gICBJbnB1dFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5nTW9kZWwgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbkBEaXJlY3RpdmUoe1xuICAgc2VsZWN0b3I6ICdbc3QtaW5wdXQtYWRqdXN0YWJsZV0nXG59KVxuZXhwb3J0IGNsYXNzIFN0SW5wdXRBZGp1c3RhYmxlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gICBASW5wdXQoKSBwbGFjZWhvbGRlcjogc3RyaW5nO1xuXG4gICBwcml2YXRlIHRleHQ6IHN0cmluZztcbiAgIHByaXZhdGUgaGlkZGVuVGl0bGU6IEhUTUxTcGFuRWxlbWVudDtcblxuICAgY29uc3RydWN0b3IocHJpdmF0ZSBlbDogRWxlbWVudFJlZixcbiAgICAgICAgICAgICAgIHByaXZhdGUgbmdNb2RlbDogTmdNb2RlbCkge1xuICAgfVxuXG4gICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICB0aGlzLmNyZWF0ZUhpZGRlblRpdGxlKCk7XG4gICAgICB0aGlzLm5nTW9kZWwudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSh2YWx1ZSA9PiB7XG4gICAgICAgICB0aGlzLnRleHQgPSB2YWx1ZSB8fCB0aGlzLnBsYWNlaG9sZGVyO1xuICAgICAgICAgdGhpcy5oaWRkZW5UaXRsZS5pbm5lclRleHQgPSB0aGlzLnRleHQ7XG4gICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5wYXJlbnROb2RlLnN0eWxlLndpZHRoID0gdGhpcy5oaWRkZW5UaXRsZS5jbGllbnRXaWR0aCArIDEwICsgJ3B4JztcbiAgICAgICAgIH0pO1xuICAgICAgfSk7XG4gICB9XG5cbiAgIHByaXZhdGUgY3JlYXRlSGlkZGVuVGl0bGUoKTogdm9pZCB7XG4gICAgICBpZiAoIXRoaXMubmdNb2RlbC52YWx1ZSkge1xuICAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnZhbHVlID0gbnVsbDtcbiAgICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5wbGFjZWhvbGRlciA9IHRoaXMucGxhY2Vob2xkZXI7XG4gICAgICB9XG4gICAgICB0aGlzLmhpZGRlblRpdGxlID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50LnBhcmVudE5vZGUucXVlcnlTZWxlY3RvcignLmhpZGRlbi10ZXh0Jyk7XG4gICAgICBpZiAoIXRoaXMuaGlkZGVuVGl0bGUpIHtcbiAgICAgICAgIHRoaXMuaGlkZGVuVGl0bGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzcGFuJyk7XG4gICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucGFyZW50Tm9kZS5hcHBlbmRDaGlsZCh0aGlzLmhpZGRlblRpdGxlKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5oaWRkZW5UaXRsZS5jbGFzc05hbWUgPSAnaGlkZGVuLXRleHQnO1xuICAgICAgdGhpcy5oaWRkZW5UaXRsZS5zdHlsZS52aXNpYmlsaXR5ID0gJ2hpZGRlbic7XG4gICAgICB0aGlzLmhpZGRlblRpdGxlLnN0eWxlLnBvc2l0aW9uID0gJ2Fic29sdXRlJztcbiAgICAgIHRoaXMuaGlkZGVuVGl0bGUuc3R5bGUudGV4dFRyYW5zZm9ybSA9ICdub25lJztcbiAgICAgIHRoaXMuaGlkZGVuVGl0bGUuc3R5bGUud2hpdGVTcGFjZSA9ICdub3dyYXAnO1xuICAgICAgdGhpcy5oaWRkZW5UaXRsZS5zdHlsZS53aWR0aCA9ICdhdXRvJztcbiAgICAgIHRoaXMuaGlkZGVuVGl0bGUuc3R5bGUuaGVpZ2h0ID0gJ2F1dG8nO1xuICAgfVxuXG59XG4iXX0=