UNPKG

@duoduo-oba/ng-devui

Version:

DevUI components based on Angular

203 lines 14 kB
/** * @fileoverview added by tsickle * Generated from: toggle.component.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Component, EventEmitter, forwardRef, HostListener, Input, Output } from '@angular/core'; import { NG_VALUE_ACCESSOR } from '@angular/forms'; var ToggleComponent = /** @class */ (function () { function ToggleComponent() { this.size = 'small'; this.change = new EventEmitter(); this.onTouchedCallback = (/** * @param {?} v * @return {?} */ function (v) { }); this.onChangeCallback = (/** * @param {?} v * @return {?} */ function (v) { }); } Object.defineProperty(ToggleComponent.prototype, "checked", { get: /** * @return {?} */ function () { return this._checked; }, set: /** * @param {?} v * @return {?} */ function (v) { this._checked = v !== false; }, enumerable: true, configurable: true }); Object.defineProperty(ToggleComponent.prototype, "disabled", { get: /** * @return {?} */ function () { return this._disabled; }, set: /** * @param {?} v * @return {?} */ function (v) { this._disabled = v !== false; }, enumerable: true, configurable: true }); /** * @return {?} */ ToggleComponent.prototype.onToggle = /** * @return {?} */ function () { var _this = this; if (this.disabled) { return; } this.canChange().then((/** * @param {?} change * @return {?} */ function (change) { if (!change) { return; } _this.checked = !_this.checked; _this.change.emit(_this.checked); _this.onChangeCallback(_this.checked); _this.onTouchedCallback(_this.checked); })); }; /** * @return {?} */ ToggleComponent.prototype.canChange = /** * @return {?} */ function () { /** @type {?} */ var changeResult = Promise.resolve(true); if (this.beforeChange) { /** @type {?} */ var result = this.beforeChange(this.checked); if (typeof result !== 'undefined') { if (result.then) { changeResult = result; } else if (result.subscribe) { changeResult = ((/** @type {?} */ (result))).toPromise(); } else { changeResult = Promise.resolve(result); } } } return changeResult; }; /** * @param {?} obj * @return {?} */ ToggleComponent.prototype.writeValue = /** * @param {?} obj * @return {?} */ function (obj) { if (obj !== this.checked) { this.checked = !!obj; } }; /** * @param {?} fn * @return {?} */ ToggleComponent.prototype.registerOnChange = /** * @param {?} fn * @return {?} */ function (fn) { this.onChangeCallback = fn; }; /** * @param {?} fn * @return {?} */ ToggleComponent.prototype.registerOnTouched = /** * @param {?} fn * @return {?} */ function (fn) { this.onTouchedCallback = fn; }; ToggleComponent.decorators = [ { type: Component, args: [{ selector: 'd-toggle', template: "<span\r\n class=\"devui-toggle\"\r\n [class.devui-checked]=\"checked\"\r\n [class.devui-disabled]=\"disabled\"\r\n [class.devui-toggle-large]=\"size === 'large'\"\r\n [class.devui-toggle-medium]=\"size === 'medium'\"\r\n [class.devui-toggle-small]=\"size === 'small'\"\r\n [style.background]=\"checked ? color : ''\"\r\n [style.border-color]=\"checked ? color : ''\"\r\n>\r\n <small></small>\r\n</span>\r\n", exportAs: 'toggle', providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: forwardRef((/** * @return {?} */ function () { return ToggleComponent; })), multi: true }], styles: [":host{display:inline-block}.devui-toggle{background:#fff;border:1px solid #adb0b8;position:relative;display:inline-block;box-sizing:content-box;overflow:visible;padding:0;margin:0;cursor:pointer;-webkit-transition:.3s ease-out;transition:.3s ease-out}.devui-toggle:active,.devui-toggle:hover{border-color:#344899}.devui-toggle small{background:#adb0b8;border-radius:100%;position:absolute;top:0;left:2px;-webkit-transition:.3s ease-out;transition:.3s ease-out}.devui-toggle.devui-toggle-large{width:66px;height:40px;border-radius:40px}.devui-toggle.devui-toggle-large small{width:40px;height:40px}.devui-toggle.devui-toggle-large.devui-checked small{background:#fff;left:26px}.devui-toggle.devui-toggle-medium{width:50px;height:30px;border-radius:30px}.devui-toggle.devui-toggle-medium small{width:30px;height:30px}.devui-toggle.devui-toggle-medium.devui-checked small{background:#fff;left:20px}.devui-toggle.devui-toggle-small{width:30px;height:14px;border-radius:14px}.devui-toggle.devui-toggle-small small{width:10px;height:10px;position:absolute;top:2px}.devui-toggle.devui-toggle-small.devui-checked small{background:#fff;left:18px}.devui-toggle.devui-checked{background:#5e7ce0;border-color:#5e7ce0}.devui-toggle.devui-checked:active,.devui-toggle.devui-checked:hover{background:#344899;border-color:#344899}.devui-toggle.devui-disabled{opacity:.3;cursor:not-allowed}"] }] } ]; ToggleComponent.propDecorators = { size: [{ type: Input }], color: [{ type: Input }], beforeChange: [{ type: Input }], checked: [{ type: Input }], disabled: [{ type: Input }], change: [{ type: Output }], onToggle: [{ type: HostListener, args: ['click',] }] }; return ToggleComponent; }()); export { ToggleComponent }; if (false) { /** * @type {?} * @private */ ToggleComponent.prototype._checked; /** * @type {?} * @private */ ToggleComponent.prototype._disabled; /** @type {?} */ ToggleComponent.prototype.size; /** @type {?} */ ToggleComponent.prototype.color; /** @type {?} */ ToggleComponent.prototype.beforeChange; /** @type {?} */ ToggleComponent.prototype.change; /** * @type {?} * @private */ ToggleComponent.prototype.onTouchedCallback; /** * @type {?} * @private */ ToggleComponent.prototype.onChangeCallback; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9nZ2xlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25nLWRldnVpL3RvZ2dsZS8iLCJzb3VyY2VzIjpbInRvZ2dsZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakcsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR3pFO0lBQUE7UUFnQlcsU0FBSSxHQUFpQyxPQUFPLENBQUM7UUFtQjVDLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRXZDLHNCQUFpQjs7OztRQUFHLFVBQUMsQ0FBTTtRQUNuQyxDQUFDLEVBQUE7UUFDTyxxQkFBZ0I7Ozs7UUFBRyxVQUFDLENBQU07UUFDbEMsQ0FBQyxFQUFBO0lBa0RILENBQUM7SUF2RUMsc0JBQWEsb0NBQU87Ozs7UUFJcEI7WUFDRSxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDdkIsQ0FBQzs7Ozs7UUFORCxVQUFxQixDQUFVO1lBQzdCLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxLQUFLLEtBQUssQ0FBQztRQUM5QixDQUFDOzs7T0FBQTtJQU1ELHNCQUFhLHFDQUFROzs7O1FBSXJCO1lBQ0UsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ3hCLENBQUM7Ozs7O1FBTkQsVUFBc0IsQ0FBVTtZQUM5QixJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsS0FBSyxLQUFLLENBQUM7UUFDL0IsQ0FBQzs7O09BQUE7Ozs7SUFjRCxrQ0FBUTs7O0lBRFI7UUFBQSxpQkFjQztRQVpDLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNqQixPQUFPO1NBQ1I7UUFDRCxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsSUFBSTs7OztRQUFDLFVBQUMsTUFBTTtZQUMzQixJQUFJLENBQUMsTUFBTSxFQUFFO2dCQUNYLE9BQU87YUFDUjtZQUNELEtBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxLQUFJLENBQUMsT0FBTyxDQUFDO1lBQzdCLEtBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUMvQixLQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3BDLEtBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDdkMsQ0FBQyxFQUFDLENBQUM7SUFDTCxDQUFDOzs7O0lBRUQsbUNBQVM7OztJQUFUOztZQUNNLFlBQVksR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQztRQUV4QyxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7O2dCQUNmLE1BQU0sR0FBUSxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7WUFDbkQsSUFBSSxPQUFPLE1BQU0sS0FBSyxXQUFXLEVBQUU7Z0JBQ2pDLElBQUksTUFBTSxDQUFDLElBQUksRUFBRTtvQkFDZixZQUFZLEdBQUcsTUFBTSxDQUFDO2lCQUN2QjtxQkFBTSxJQUFJLE1BQU0sQ0FBQyxTQUFTLEVBQUU7b0JBQzNCLFlBQVksR0FBRyxDQUFDLG1CQUFBLE1BQU0sRUFBdUIsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDO2lCQUM1RDtxQkFBTTtvQkFDTCxZQUFZLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztpQkFDeEM7YUFDRjtTQUNGO1FBRUQsT0FBTyxZQUFZLENBQUM7SUFDdEIsQ0FBQzs7Ozs7SUFFRCxvQ0FBVTs7OztJQUFWLFVBQVcsR0FBUTtRQUNqQixJQUFJLEdBQUcsS0FBSyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ3hCLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQztTQUN0QjtJQUNILENBQUM7Ozs7O0lBRUQsMENBQWdCOzs7O0lBQWhCLFVBQWlCLEVBQU87UUFDdEIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztJQUM3QixDQUFDOzs7OztJQUVELDJDQUFpQjs7OztJQUFqQixVQUFrQixFQUFPO1FBQ3ZCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxFQUFFLENBQUM7SUFDOUIsQ0FBQzs7Z0JBekZGLFNBQVMsU0FBQztvQkFDVCxRQUFRLEVBQUUsVUFBVTtvQkFDcEIsMmFBQXNDO29CQUV0QyxRQUFRLEVBQUUsUUFBUTtvQkFDbEIsU0FBUyxFQUFFLENBQUM7NEJBQ1YsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVU7Ozs0QkFBQyxjQUFNLE9BQUEsZUFBZSxFQUFmLENBQWUsRUFBQzs0QkFDOUMsS0FBSyxFQUFFLElBQUk7eUJBQ1osQ0FBQzs7aUJBQ0g7Ozt1QkFNRSxLQUFLO3dCQUNMLEtBQUs7K0JBQ0wsS0FBSzswQkFDTCxLQUFLOzJCQVFMLEtBQUs7eUJBUUwsTUFBTTsyQkFPTixZQUFZLFNBQUMsT0FBTzs7SUFnRHZCLHNCQUFDO0NBQUEsQUExRkQsSUEwRkM7U0E5RVksZUFBZTs7Ozs7O0lBQzFCLG1DQUEwQjs7Ozs7SUFDMUIsb0NBQTJCOztJQUUzQiwrQkFBc0Q7O0lBQ3RELGdDQUF1Qjs7SUFDdkIsdUNBQW1GOztJQWlCbkYsaUNBQStDOzs7OztJQUUvQyw0Q0FDQzs7Ozs7SUFDRCwyQ0FDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBmb3J3YXJkUmVmLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2QtdG9nZ2xlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdG9nZ2xlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFtgLi90b2dnbGUuY29tcG9uZW50LnNjc3NgXSxcclxuICBleHBvcnRBczogJ3RvZ2dsZScsXHJcbiAgcHJvdmlkZXJzOiBbe1xyXG4gICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUb2dnbGVDb21wb25lbnQpLFxyXG4gICAgbXVsdGk6IHRydWVcclxuICB9XVxyXG59KVxyXG5cclxuZXhwb3J0IGNsYXNzIFRvZ2dsZUNvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcclxuICBwcml2YXRlIF9jaGVja2VkOiBib29sZWFuO1xyXG4gIHByaXZhdGUgX2Rpc2FibGVkOiBib29sZWFuO1xyXG5cclxuICBASW5wdXQoKSBzaXplOiAnc21hbGwnIHwgJ21lZGl1bScgfCAnbGFyZ2UnID0gJ3NtYWxsJztcclxuICBASW5wdXQoKSBjb2xvcjogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGJlZm9yZUNoYW5nZTogKHZhbHVlKSA9PiBib29sZWFuIHwgUHJvbWlzZTxib29sZWFuPiB8IE9ic2VydmFibGU8Ym9vbGVhbj47XHJcbiAgQElucHV0KCkgc2V0IGNoZWNrZWQodjogYm9vbGVhbikge1xyXG4gICAgdGhpcy5fY2hlY2tlZCA9IHYgIT09IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGNoZWNrZWQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5fY2hlY2tlZDtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpIHNldCBkaXNhYmxlZCh2OiBib29sZWFuKSB7XHJcbiAgICB0aGlzLl9kaXNhYmxlZCA9IHYgIT09IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGRpc2FibGVkKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkO1xyXG4gIH1cclxuXHJcbiAgQE91dHB1dCgpIGNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcclxuXHJcbiAgcHJpdmF0ZSBvblRvdWNoZWRDYWxsYmFjayA9ICh2OiBhbnkpID0+IHtcclxuICB9XHJcbiAgcHJpdmF0ZSBvbkNoYW5nZUNhbGxiYWNrID0gKHY6IGFueSkgPT4ge1xyXG4gIH1cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snKVxyXG4gIG9uVG9nZ2xlKCkge1xyXG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy5jYW5DaGFuZ2UoKS50aGVuKChjaGFuZ2UpID0+IHtcclxuICAgICAgaWYgKCFjaGFuZ2UpIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5jaGVja2VkID0gIXRoaXMuY2hlY2tlZDtcclxuICAgICAgdGhpcy5jaGFuZ2UuZW1pdCh0aGlzLmNoZWNrZWQpO1xyXG4gICAgICB0aGlzLm9uQ2hhbmdlQ2FsbGJhY2sodGhpcy5jaGVja2VkKTtcclxuICAgICAgdGhpcy5vblRvdWNoZWRDYWxsYmFjayh0aGlzLmNoZWNrZWQpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBjYW5DaGFuZ2UoKSB7XHJcbiAgICBsZXQgY2hhbmdlUmVzdWx0ID0gUHJvbWlzZS5yZXNvbHZlKHRydWUpO1xyXG5cclxuICAgIGlmICh0aGlzLmJlZm9yZUNoYW5nZSkge1xyXG4gICAgICBjb25zdCByZXN1bHQ6IGFueSA9IHRoaXMuYmVmb3JlQ2hhbmdlKHRoaXMuY2hlY2tlZCk7XHJcbiAgICAgIGlmICh0eXBlb2YgcmVzdWx0ICE9PSAndW5kZWZpbmVkJykge1xyXG4gICAgICAgIGlmIChyZXN1bHQudGhlbikge1xyXG4gICAgICAgICAgY2hhbmdlUmVzdWx0ID0gcmVzdWx0O1xyXG4gICAgICAgIH0gZWxzZSBpZiAocmVzdWx0LnN1YnNjcmliZSkge1xyXG4gICAgICAgICAgY2hhbmdlUmVzdWx0ID0gKHJlc3VsdCBhcyBPYnNlcnZhYmxlPGJvb2xlYW4+KS50b1Byb21pc2UoKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgY2hhbmdlUmVzdWx0ID0gUHJvbWlzZS5yZXNvbHZlKHJlc3VsdCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGNoYW5nZVJlc3VsdDtcclxuICB9XHJcblxyXG4gIHdyaXRlVmFsdWUob2JqOiBhbnkpOiB2b2lkIHtcclxuICAgIGlmIChvYmogIT09IHRoaXMuY2hlY2tlZCkge1xyXG4gICAgICB0aGlzLmNoZWNrZWQgPSAhIW9iajtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSkge1xyXG4gICAgdGhpcy5vbkNoYW5nZUNhbGxiYWNrID0gZm47XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KSB7XHJcbiAgICB0aGlzLm9uVG91Y2hlZENhbGxiYWNrID0gZm47XHJcbiAgfVxyXG59XHJcbiJdfQ==