32 lines
706 B
Python
32 lines
706 B
Python
import esphome.codegen as cg
|
|
import esphome.config_validation as cv
|
|
from esphome.components import fan, output
|
|
from esphome.const import CONF_OUTPUT_ID
|
|
from . import (
|
|
HAUSLANE_SCHEMA,
|
|
CONF_HAUSLANE_ID,
|
|
HauslaneChild,
|
|
hauslane_ns,
|
|
)
|
|
|
|
DEPENDENCIES = ["hauslane"]
|
|
|
|
HauslaneFan = hauslane_ns.class_(
|
|
"HauslaneFan", fan.Fan, HauslaneChild
|
|
)
|
|
|
|
CONFIG_SCHEMA = (
|
|
fan.fan_schema(Fan).extend({
|
|
cv.GenerateID(CONF_OUTPUT_ID): cv.declare_id(HauslaneFan),
|
|
})
|
|
.extend(HAUSLANE_SCHEMA)
|
|
)
|
|
|
|
async def to_code(config):
|
|
var = cg.new_Pvariable(config[CONF_OUTPUT_ID])
|
|
await fan.register_fan(var,config)
|
|
|
|
paren = await cg.get_variable(config[CONF_HAUSLANE_ID])
|
|
cg.add(var.set_parent(paren))
|
|
cg.add(var.setup())
|