UNPKG

homebridge-virtual-accessories

Version:
35 lines 1.38 kB
/* eslint-disable curly */ import { PowerState, RotationDirection } from '../schema.js'; import { Utils } from '../../utils/utils.js'; /** * */ export class FanConfiguration { defaultState; rotationDirection; rotationSpeed; errorFields = []; fieldNames = Utils.proxiedPropertiesOf(this); isValid(prefix) { const isValidDefaultState = (Utils.required(this.defaultState) && PowerState.States.includes(this.defaultState)); const isValidRotationDirection = (Utils.required(this.rotationDirection) && RotationDirection.Directions.includes(this.rotationDirection)); const isValidRotationSpeed = (Utils.required(this.rotationSpeed) && Utils.isPercentage(this.rotationSpeed)); // Store fields failing validation if (!isValidDefaultState) this.errorFields.push(prefix + '.' + this.fieldNames.defaultState); if (!isValidRotationDirection) this.errorFields.push(prefix + '.' + this.fieldNames.rotationDirection); if (!isValidRotationSpeed) this.errorFields.push(prefix + '.' + this.fieldNames.rotationSpeed); return [ (isValidDefaultState && isValidRotationDirection && isValidRotationSpeed), this.errorFields, ]; } } //# sourceMappingURL=configurationFan.js.map