materialize-angular
Version:
Material UI Angular library
181 lines • 12.2 kB
JavaScript
/**
* @fileoverview added by tsickle
* Generated from: app/completed-components/switch/switch.component.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/**
* @license
* Copyright Workylab. All Rights Reserved.
*
* Use of this source code is governed by an MIT-style license that can be
* found in the LICENSE file at https://raw.githubusercontent.com/workylab/materialize-angular/master/LICENSE
*/
import { Component, EventEmitter, forwardRef, Input, Output } from '@angular/core';
import { NG_VALUE_ACCESSOR } from '@angular/forms';
import { config } from '../../config';
var SwitchComponent = /** @class */ (function () {
function SwitchComponent() {
this.className = SwitchComponent.defaultProps.className;
this.disabled = SwitchComponent.defaultProps.disabled;
this.id = SwitchComponent.defaultProps.id;
this.name = SwitchComponent.defaultProps.name;
this.required = SwitchComponent.defaultProps.required;
this.value = SwitchComponent.defaultProps.value;
this.prefix = config.components.prefix;
this.isFocused = false;
this.onChangeEmitter = new EventEmitter();
}
/**
* @return {?}
*/
SwitchComponent.prototype.toggleValue = /**
* @return {?}
*/
function () {
if (!this.disabled) {
this.isFocused = false;
this.value = !this.value;
this.onChange(this.value);
this.onChangeEmitter.emit(this.value);
}
};
/**
* @return {?}
*/
SwitchComponent.prototype.onBlur = /**
* @return {?}
*/
function () {
this.isFocused = false;
};
/**
* @return {?}
*/
SwitchComponent.prototype.onFocus = /**
* @return {?}
*/
function () {
if (!this.disabled) {
this.isFocused = true;
this.onTouched();
}
};
/**
* @param {?} isDisabled
* @return {?}
*/
SwitchComponent.prototype.setDisabledState = /**
* @param {?} isDisabled
* @return {?}
*/
function (isDisabled) {
this.disabled = isDisabled;
};
/**
* @param {?} value
* @return {?}
*/
SwitchComponent.prototype.writeValue = /**
* @param {?} value
* @return {?}
*/
function (value) {
this.value = value;
};
/**
* @param {?} fn
* @return {?}
*/
SwitchComponent.prototype.registerOnChange = /**
* @param {?} fn
* @return {?}
*/
function (fn) {
this.onChange = fn;
};
/**
* @param {?} fn
* @return {?}
*/
SwitchComponent.prototype.registerOnTouched = /**
* @param {?} fn
* @return {?}
*/
function (fn) {
this.onTouched = fn;
};
/**
* @param {?} value
* @return {?}
*/
SwitchComponent.prototype.onChange = /**
* @param {?} value
* @return {?}
*/
function (value) { };
/**
* @return {?}
*/
SwitchComponent.prototype.onTouched = /**
* @return {?}
*/
function () { };
SwitchComponent.defaultProps = {
className: '',
disabled: false,
id: null,
name: '',
required: false,
value: false
};
SwitchComponent.decorators = [
{ type: Component, args: [{
providers: [{
multi: true,
provide: NG_VALUE_ACCESSOR,
useExisting: forwardRef((/**
* @return {?}
*/
function () { return SwitchComponent; }))
}],
selector: config.components.prefix + "-switch }",
template: "<div [ngClass]=\"[prefix + '-switch', className]\"\n\n (click)=\"toggleValue()\"\n (focus)=\"onFocus()\"\n (blur)=\"onBlur()\"\n\n [class.active]=\"value\"\n [class.disabled]=\"disabled\"\n [class.focused]=\"isFocused\"\n [tabindex]=\"disabled ? '-1': '0'\"\n>\n <div [ngClass]=\"prefix + '-switch-label'\">\n <ng-content></ng-content>\n </div>\n\n <div [ngClass]=\"prefix + '-switch-track'\">\n <div [ngClass]=\"prefix + '-switch-indicator'\">\n <div [ngClass]=\"prefix + '-switch-indicator-ripple'\" materializeRipple [isRippleActive]=\"!disabled\" [rippleDuration]=\"200\"></div>\n </div>\n </div>\n\n <input type=\"checkbox\" [disabled]=\"disabled\" [attr.id]=\"id\" [name]=\"name\" [required]=\"required\" [value]=\"value\" />\n</div>\n"
}] }
];
/** @nocollapse */
SwitchComponent.ctorParameters = function () { return []; };
SwitchComponent.propDecorators = {
className: [{ type: Input }],
disabled: [{ type: Input }],
id: [{ type: Input }],
name: [{ type: Input }],
required: [{ type: Input }],
value: [{ type: Input }],
onChangeEmitter: [{ type: Output, args: ['onChange',] }]
};
return SwitchComponent;
}());
export { SwitchComponent };
if (false) {
/** @type {?} */
SwitchComponent.defaultProps;
/** @type {?} */
SwitchComponent.prototype.className;
/** @type {?} */
SwitchComponent.prototype.disabled;
/** @type {?} */
SwitchComponent.prototype.id;
/** @type {?} */
SwitchComponent.prototype.name;
/** @type {?} */
SwitchComponent.prototype.required;
/** @type {?} */
SwitchComponent.prototype.value;
/** @type {?} */
SwitchComponent.prototype.onChangeEmitter;
/** @type {?} */
SwitchComponent.prototype.prefix;
/** @type {?} */
SwitchComponent.prototype.isFocused;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3dpdGNoLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL21hdGVyaWFsaXplLWFuZ3VsYXIvIiwic291cmNlcyI6WyJhcHAvY29tcGxldGVkLWNvbXBvbmVudHMvc3dpdGNoL3N3aXRjaC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBUUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkYsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFHdEM7SUFnQ0U7UUFiUyxjQUFTLEdBQVcsZUFBZSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUM7UUFDM0QsYUFBUSxHQUFZLGVBQWUsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDO1FBQzFELE9BQUUsR0FBa0IsZUFBZSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUM7UUFDcEQsU0FBSSxHQUFXLGVBQWUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDO1FBQ2pELGFBQVEsR0FBWSxlQUFlLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQztRQUMxRCxVQUFLLEdBQVksZUFBZSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUM7UUFJdEQsV0FBTSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDO1FBS3ZDLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1FBRXZCLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUM1QyxDQUFDOzs7O0lBRUQscUNBQVc7OztJQUFYO1FBQ0UsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDbEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7WUFDdkIsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7WUFFekIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDMUIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3ZDO0lBQ0gsQ0FBQzs7OztJQUVELGdDQUFNOzs7SUFBTjtRQUNFLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO0lBQ3pCLENBQUM7Ozs7SUFFRCxpQ0FBTzs7O0lBQVA7UUFDRSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNsQixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztZQUV0QixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7U0FDbEI7SUFDSCxDQUFDOzs7OztJQUVELDBDQUFnQjs7OztJQUFoQixVQUFpQixVQUFtQjtRQUNsQyxJQUFJLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztJQUM3QixDQUFDOzs7OztJQUVELG9DQUFVOzs7O0lBQVYsVUFBVyxLQUFjO1FBQ3ZCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3JCLENBQUM7Ozs7O0lBRUQsMENBQWdCOzs7O0lBQWhCLFVBQWlCLEVBQTRCO1FBQzNDLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO0lBQ3JCLENBQUM7Ozs7O0lBRUQsMkNBQWlCOzs7O0lBQWpCLFVBQWtCLEVBQWM7UUFDOUIsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7SUFDdEIsQ0FBQzs7Ozs7SUFFRCxrQ0FBUTs7OztJQUFSLFVBQVMsS0FBYyxJQUFTLENBQUM7Ozs7SUFFakMsbUNBQVM7OztJQUFULGNBQW1CLENBQUM7SUFwRUosNEJBQVksR0FBZ0I7UUFDMUMsU0FBUyxFQUFFLEVBQUU7UUFDYixRQUFRLEVBQUUsS0FBSztRQUNmLEVBQUUsRUFBRSxJQUFJO1FBQ1IsSUFBSSxFQUFFLEVBQUU7UUFDUixRQUFRLEVBQUUsS0FBSztRQUNmLEtBQUssRUFBRSxLQUFLO0tBQ2IsQ0FBQzs7Z0JBakJILFNBQVMsU0FBQztvQkFDVCxTQUFTLEVBQUUsQ0FBQzs0QkFDVixLQUFLLEVBQUUsSUFBSTs0QkFDWCxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVTs7OzRCQUFDLGNBQU0sT0FBQSxlQUFlLEVBQWYsQ0FBZSxFQUFDO3lCQUMvQyxDQUFDO29CQUNGLFFBQVEsRUFBTSxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sY0FBWTtvQkFDbEQsMndCQUFzQztpQkFDdkM7Ozs7OzRCQVdFLEtBQUs7MkJBQ0wsS0FBSztxQkFDTCxLQUFLO3VCQUNMLEtBQUs7MkJBQ0wsS0FBSzt3QkFDTCxLQUFLO2tDQUVMLE1BQU0sU0FBQyxVQUFVOztJQXFEcEIsc0JBQUM7Q0FBQSxBQS9FRCxJQStFQztTQXRFWSxlQUFlOzs7SUFDMUIsNkJBT0U7O0lBRUYsb0NBQW9FOztJQUNwRSxtQ0FBbUU7O0lBQ25FLDZCQUE2RDs7SUFDN0QsK0JBQTBEOztJQUMxRCxtQ0FBbUU7O0lBQ25FLGdDQUE2RDs7SUFFN0QsMENBQTJEOztJQUUzRCxpQ0FBeUM7O0lBRXpDLG9DQUEwQiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBXb3JreWxhYi4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vd29ya3lsYWIvbWF0ZXJpYWxpemUtYW5ndWxhci9tYXN0ZXIvTElDRU5TRVxuICovXG5cbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBmb3J3YXJkUmVmLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBjb25maWcgfSBmcm9tICcuLi8uLi9jb25maWcnO1xuaW1wb3J0IHsgU3dpdGNoTW9kZWwgfSBmcm9tICcuL3N3aXRjaC5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICBwcm92aWRlcnM6IFt7XG4gICAgbXVsdGk6IHRydWUsXG4gICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU3dpdGNoQ29tcG9uZW50KVxuICB9XSxcbiAgc2VsZWN0b3I6IGAkeyBjb25maWcuY29tcG9uZW50cy5wcmVmaXggfS1zd2l0Y2ggfWAsXG4gIHRlbXBsYXRlVXJsOiAnLi9zd2l0Y2guY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIFN3aXRjaENvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBTd2l0Y2hNb2RlbCB7XG4gIHN0YXRpYyByZWFkb25seSBkZWZhdWx0UHJvcHM6IFN3aXRjaE1vZGVsID0ge1xuICAgIGNsYXNzTmFtZTogJycsXG4gICAgZGlzYWJsZWQ6IGZhbHNlLFxuICAgIGlkOiBudWxsLFxuICAgIG5hbWU6ICcnLFxuICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICB2YWx1ZTogZmFsc2VcbiAgfTtcblxuICBASW5wdXQoKSBjbGFzc05hbWU6IHN0cmluZyA9IFN3aXRjaENvbXBvbmVudC5kZWZhdWx0UHJvcHMuY2xhc3NOYW1lO1xuICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbiA9IFN3aXRjaENvbXBvbmVudC5kZWZhdWx0UHJvcHMuZGlzYWJsZWQ7XG4gIEBJbnB1dCgpIGlkOiBzdHJpbmcgfCBudWxsID0gU3dpdGNoQ29tcG9uZW50LmRlZmF1bHRQcm9wcy5pZDtcbiAgQElucHV0KCkgbmFtZTogc3RyaW5nID0gU3dpdGNoQ29tcG9uZW50LmRlZmF1bHRQcm9wcy5uYW1lO1xuICBASW5wdXQoKSByZXF1aXJlZDogYm9vbGVhbiA9IFN3aXRjaENvbXBvbmVudC5kZWZhdWx0UHJvcHMucmVxdWlyZWQ7XG4gIEBJbnB1dCgpIHZhbHVlOiBib29sZWFuID0gU3dpdGNoQ29tcG9uZW50LmRlZmF1bHRQcm9wcy52YWx1ZTtcblxuICBAT3V0cHV0KCdvbkNoYW5nZScpIG9uQ2hhbmdlRW1pdHRlcjogRXZlbnRFbWl0dGVyPGJvb2xlYW4+O1xuXG4gIHB1YmxpYyBwcmVmaXggPSBjb25maWcuY29tcG9uZW50cy5wcmVmaXg7XG5cbiAgcHVibGljIGlzRm9jdXNlZDogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmlzRm9jdXNlZCA9IGZhbHNlO1xuXG4gICAgdGhpcy5vbkNoYW5nZUVtaXR0ZXIgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIH1cblxuICB0b2dnbGVWYWx1ZSgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuaXNGb2N1c2VkID0gZmFsc2U7XG4gICAgICB0aGlzLnZhbHVlID0gIXRoaXMudmFsdWU7XG5cbiAgICAgIHRoaXMub25DaGFuZ2UodGhpcy52YWx1ZSk7XG4gICAgICB0aGlzLm9uQ2hhbmdlRW1pdHRlci5lbWl0KHRoaXMudmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIG9uQmx1cigpOiB2b2lkIHtcbiAgICB0aGlzLmlzRm9jdXNlZCA9IGZhbHNlO1xuICB9XG5cbiAgb25Gb2N1cygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuaXNGb2N1c2VkID0gdHJ1ZTtcblxuICAgICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICB9XG4gIH1cblxuICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgfVxuXG4gIHdyaXRlVmFsdWUodmFsdWU6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAodmFsdWU6IGJvb2xlYW4pID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gIH1cblxuICBvbkNoYW5nZSh2YWx1ZTogYm9vbGVhbik6IHZvaWQge31cblxuICBvblRvdWNoZWQoKTogdm9pZCB7fVxufVxuIl19