UNPKG

matterbridge-roborock-vacuum-plugin

Version:
22 lines 1.06 kB
import { baseCleanModeConfigs } from '../behaviors/roborock.vacuum/core/cleanModeConfig.js'; import { getAllModesForDevice, hasSmartPlan } from '../behaviors/roborock.vacuum/core/deviceCapabilityRegistry.js'; import { createDefaultModeResolver, createSmartModeResolver, } from '../behaviors/roborock.vacuum/core/modeResolver.js'; const defaultModeResolver = createDefaultModeResolver(baseCleanModeConfigs); const resolverCache = new Map(); /** * Get the appropriate clean mode resolver based on device model capabilities. * Resolvers are cached per model for efficiency. */ export function getCleanModeResolver(model, forceRunAtDefault) { if (forceRunAtDefault) { return defaultModeResolver; } const key = model; if (!resolverCache.has(key)) { const modes = getAllModesForDevice(key); const resolver = hasSmartPlan(key) ? createSmartModeResolver(modes) : createDefaultModeResolver(modes); resolverCache.set(key, resolver); } return resolverCache.get(key); } //# sourceMappingURL=runtimeHelper.js.map