ng-zorro-antd-mobile
Version:
An enterprise-class mobile UI components based on Ant Design and Angular
97 lines (96 loc) • 8.13 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
*/
import { Injectable, ApplicationRef, ComponentFactoryResolver } from '@angular/core';
import { CustomKeyboard } from '../custom-keyboard/custom-keyboard.component';
export class CustomInputService {
/**
* @param {?} _appRef
* @param {?} _cfr
*/
constructor(_appRef, _cfr) {
this._appRef = _appRef;
this._cfr = _cfr;
CustomInputService.appRef = this._appRef;
CustomInputService._inputCompFactory = this._cfr.resolveComponentFactory(CustomKeyboard);
}
/**
* @return {?}
*/
static getShowStatus() {
return CustomInputService.isShow;
}
/**
* @return {?}
*/
static showKeyboard() {
if (!this.isShow) {
if (this.compRef) {
this.compRef.instance.wrapperCls = {
[`am-number-keyboard-wrapper`]: true
};
}
else {
/** @type {?} */
let container = document.querySelector(`#${this._keyboardPrefixCls}-container`);
if (!container) {
container = document.createElement('div');
container.setAttribute('id', `${this._keyboardPrefixCls}-container`);
document.body.appendChild(container);
container.appendChild(document.createElement(CustomInputService._inputCompFactory.selector));
this.compRef = this.appRef.bootstrap(CustomInputService._inputCompFactory);
this.compRef.instance.onClick.subscribe(e => {
this.clickValue = e;
});
}
}
this.isShow = true;
}
}
/**
* @return {?}
*/
static hideKeyboard() {
if (this.compRef && this.isShow) {
this.isShow = false;
this.compRef.instance.wrapperCls = {
[`am-number-keyboard-wrapper`]: true,
[`am-number-keyboard-wrapper-hide`]: true
};
}
}
}
CustomInputService.compRef = null;
CustomInputService.appRef = null;
CustomInputService.isShow = false;
CustomInputService.clickValue = null;
CustomInputService._inputCompFactory = null;
CustomInputService._keyboardPrefixCls = 'am-number-keyboard';
CustomInputService.decorators = [
{ type: Injectable }
];
/** @nocollapse */
CustomInputService.ctorParameters = () => [
{ type: ApplicationRef },
{ type: ComponentFactoryResolver }
];
if (false) {
/** @type {?} */
CustomInputService.compRef;
/** @type {?} */
CustomInputService.appRef;
/** @type {?} */
CustomInputService.isShow;
/** @type {?} */
CustomInputService.clickValue;
/** @type {?} */
CustomInputService._inputCompFactory;
/** @type {?} */
CustomInputService._keyboardPrefixCls;
/** @type {?} */
CustomInputService.prototype._appRef;
/** @type {?} */
CustomInputService.prototype._cfr;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLWlucHV0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZy16b3Jyby1hbnRkLW1vYmlsZS8iLCJzb3VyY2VzIjpbImlucHV0LWl0ZW0vY3VzdG9tLWlucHV0L2N1c3RvbS1pbnB1dC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQ0wsVUFBVSxFQUdWLGNBQWMsRUFDZCx3QkFBd0IsRUFDekIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBRzlFLE1BQU07Ozs7O0lBUUosWUFBb0IsT0FBdUIsRUFBVSxJQUE4QjtRQUEvRCxZQUFPLEdBQVAsT0FBTyxDQUFnQjtRQUFVLFNBQUksR0FBSixJQUFJLENBQTBCO1FBQ2pGLGtCQUFrQixDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQ3pDLGtCQUFrQixDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsY0FBYyxDQUFDLENBQUM7S0FDMUY7Ozs7SUFFRCxNQUFNLENBQUMsYUFBYTtRQUNsQixPQUFPLGtCQUFrQixDQUFDLE1BQU0sQ0FBQztLQUNsQzs7OztJQUVELE1BQU0sQ0FBQyxZQUFZO1FBQ2pCLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2hCLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtnQkFDaEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsVUFBVSxHQUFHO29CQUNqQyxDQUFDLDRCQUE0QixDQUFDLEVBQUUsSUFBSTtpQkFDckMsQ0FBQzthQUNIO2lCQUFNOztnQkFDTCxJQUFJLFNBQVMsR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLElBQUksSUFBSSxDQUFDLGtCQUFrQixZQUFZLENBQUMsQ0FBQztnQkFDaEYsSUFBSSxDQUFDLFNBQVMsRUFBRTtvQkFDZCxTQUFTLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFDMUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsa0JBQWtCLFlBQVksQ0FBQyxDQUFDO29CQUNyRSxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQztvQkFDckMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLGtCQUFrQixDQUFDLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7b0JBQzdGLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsa0JBQWtCLENBQUMsaUJBQWlCLENBQUMsQ0FBQztvQkFDM0UsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRTt3QkFDMUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLENBQUM7cUJBQ3JCLENBQUMsQ0FBQztpQkFDSjthQUNGO1lBQ0QsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7U0FDcEI7S0FDRjs7OztJQUVELE1BQU0sQ0FBQyxZQUFZO1FBQ2pCLElBQUksSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQy9CLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1lBQ3BCLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLFVBQVUsR0FBRztnQkFDakMsQ0FBQyw0QkFBNEIsQ0FBQyxFQUFFLElBQUk7Z0JBQ3BDLENBQUMsaUNBQWlDLENBQUMsRUFBRSxJQUFJO2FBQzFDLENBQUM7U0FDSDtLQUNGOzs2QkEvQ21DLElBQUk7NEJBQ1IsSUFBSTs0QkFDcEIsS0FBSztnQ0FDRCxJQUFJO3VDQUNxQyxJQUFJO3dDQUNyQyxvQkFBb0I7O1lBUGpELFVBQVU7Ozs7WUFMVCxjQUFjO1lBQ2Qsd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgSW5qZWN0YWJsZSxcbiAgQ29tcG9uZW50UmVmLFxuICBDb21wb25lbnRGYWN0b3J5LFxuICBBcHBsaWNhdGlvblJlZixcbiAgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ3VzdG9tS2V5Ym9hcmQgfSBmcm9tICcuLi9jdXN0b20ta2V5Ym9hcmQvY3VzdG9tLWtleWJvYXJkLmNvbXBvbmVudCc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBDdXN0b21JbnB1dFNlcnZpY2Uge1xuICBzdGF0aWMgY29tcFJlZjogQ29tcG9uZW50UmVmPGFueT4gPSBudWxsO1xuICBzdGF0aWMgYXBwUmVmOiBBcHBsaWNhdGlvblJlZiA9IG51bGw7XG4gIHN0YXRpYyBpc1Nob3cgPSBmYWxzZTtcbiAgc3RhdGljIGNsaWNrVmFsdWUgPSBudWxsO1xuICBzdGF0aWMgX2lucHV0Q29tcEZhY3Rvcnk6IENvbXBvbmVudEZhY3Rvcnk8Q3VzdG9tS2V5Ym9hcmQ+ID0gbnVsbDtcbiAgc3RhdGljIF9rZXlib2FyZFByZWZpeENscyA9ICdhbS1udW1iZXIta2V5Ym9hcmQnO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2FwcFJlZjogQXBwbGljYXRpb25SZWYsIHByaXZhdGUgX2NmcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyKSB7XG4gICAgQ3VzdG9tSW5wdXRTZXJ2aWNlLmFwcFJlZiA9IHRoaXMuX2FwcFJlZjtcbiAgICBDdXN0b21JbnB1dFNlcnZpY2UuX2lucHV0Q29tcEZhY3RvcnkgPSB0aGlzLl9jZnIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkoQ3VzdG9tS2V5Ym9hcmQpO1xuICB9XG5cbiAgc3RhdGljIGdldFNob3dTdGF0dXMoKSB7XG4gICAgcmV0dXJuIEN1c3RvbUlucHV0U2VydmljZS5pc1Nob3c7XG4gIH1cblxuICBzdGF0aWMgc2hvd0tleWJvYXJkKCkge1xuICAgIGlmICghdGhpcy5pc1Nob3cpIHtcbiAgICAgIGlmICh0aGlzLmNvbXBSZWYpIHtcbiAgICAgICAgdGhpcy5jb21wUmVmLmluc3RhbmNlLndyYXBwZXJDbHMgPSB7XG4gICAgICAgICAgW2BhbS1udW1iZXIta2V5Ym9hcmQtd3JhcHBlcmBdOiB0cnVlXG4gICAgICAgIH07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBsZXQgY29udGFpbmVyID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihgIyR7dGhpcy5fa2V5Ym9hcmRQcmVmaXhDbHN9LWNvbnRhaW5lcmApO1xuICAgICAgICBpZiAoIWNvbnRhaW5lcikge1xuICAgICAgICAgIGNvbnRhaW5lciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgICAgIGNvbnRhaW5lci5zZXRBdHRyaWJ1dGUoJ2lkJywgYCR7dGhpcy5fa2V5Ym9hcmRQcmVmaXhDbHN9LWNvbnRhaW5lcmApO1xuICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoY29udGFpbmVyKTtcbiAgICAgICAgICBjb250YWluZXIuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudChDdXN0b21JbnB1dFNlcnZpY2UuX2lucHV0Q29tcEZhY3Rvcnkuc2VsZWN0b3IpKTtcbiAgICAgICAgICB0aGlzLmNvbXBSZWYgPSB0aGlzLmFwcFJlZi5ib290c3RyYXAoQ3VzdG9tSW5wdXRTZXJ2aWNlLl9pbnB1dENvbXBGYWN0b3J5KTtcbiAgICAgICAgICB0aGlzLmNvbXBSZWYuaW5zdGFuY2Uub25DbGljay5zdWJzY3JpYmUoZSA9PiB7XG4gICAgICAgICAgICB0aGlzLmNsaWNrVmFsdWUgPSBlO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICB0aGlzLmlzU2hvdyA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgc3RhdGljIGhpZGVLZXlib2FyZCgpIHtcbiAgICBpZiAodGhpcy5jb21wUmVmICYmIHRoaXMuaXNTaG93KSB7XG4gICAgICB0aGlzLmlzU2hvdyA9IGZhbHNlO1xuICAgICAgdGhpcy5jb21wUmVmLmluc3RhbmNlLndyYXBwZXJDbHMgPSB7XG4gICAgICAgIFtgYW0tbnVtYmVyLWtleWJvYXJkLXdyYXBwZXJgXTogdHJ1ZSxcbiAgICAgICAgW2BhbS1udW1iZXIta2V5Ym9hcmQtd3JhcHBlci1oaWRlYF06IHRydWVcbiAgICAgIH07XG4gICAgfVxuICB9XG59XG4iXX0=