UNPKG

homebridge-virtual-accessories

Version:
46 lines 1.57 kB
/* eslint-disable curly */ import { InputSourceConfiguration } from './configurationInputSource.js'; import { Utils } from '../../utils/utils.js'; /** * */ export class TelevisionConfiguration { inputs; errorFields = []; fieldNames = Utils.proxiedPropertiesOf(this); isValid(prefix) { const isValidInputsArray = (Utils.required(this.inputs) && (this.inputs.length > 0)); let isValidInputNames = true; const namesSet = new Set(); this.inputs.forEach(input => { isValidInputNames &&= input.length > 0 && !namesSet.has(input); namesSet.add(input); }); // Store fields failing validation if (!isValidInputsArray) this.errorFields.push(prefix + '.' + this.fieldNames.inputs); if (!isValidInputNames) this.errorFields.push(prefix + '.' + this.fieldNames.inputs); return [ (isValidInputsArray && isValidInputNames), this.errorFields, ]; } getInputSources() { const HDMI = 3; // Characteristic.InputSourceType.HDMI const inputSources = []; this.inputs.forEach((name, index) => { const inputSource = new InputSourceConfiguration(); inputSource.name = name; inputSource.inputSourceType = HDMI; inputSource.identifier = index; inputSources.push(inputSource); }); return inputSources; } } //# sourceMappingURL=configurationTelevision.js.map