node-red-contrib-home-assistant-websocket
Version:
Node-RED integration with Home Assistant through websocket and REST API
2 lines (1 loc) • 1.73 kB
JavaScript
;var P=Object.create;var s=Object.defineProperty;var E=Object.getOwnPropertyDescriptor;var T=Object.getOwnPropertyNames;var S=Object.getPrototypeOf,F=Object.prototype.hasOwnProperty;var x=(e,t)=>{for(var o in t)s(e,o,{get:t[o],enumerable:!0})},d=(e,t,o,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of T(t))!F.call(e,r)&&r!==o&&s(e,r,{get:()=>t[r],enumerable:!(n=E(t,r))||n.enumerable});return e};var a=(e,t,o)=>(o=e!=null?P(S(e)):{},d(t||!e||!e.__esModule?s(o,"default",{value:e,enumerable:!0}):o,e)),C=e=>d(s({},"__esModule",{value:!0}),e);var B={};x(B,{default:()=>h});module.exports=C(B);var i=a(require("joi")),m=require("../../common/controllers/helpers"),c=a(require("../../common/services/InputService")),f=a(require("../../common/status/Status")),p=require("../../const"),g=require("../../globals"),v=require("../../helpers/migrate"),N=require("../../helpers/node"),y=require("../../homeAssistant"),u=a(require("./FireEventController"));const I={event:{messageProp:"payload.event",configProp:"event"},data:{messageProp:"payload.data",configProp:"data"},dataType:{messageProp:"payload.dataType",configProp:"dataType"}},b=i.default.object({event:i.default.string(),data:i.default.alternatives().try(i.default.string().empty(""),i.default.object()),dataType:i.default.string().valid(p.TypedInputTypes.JSON,p.TypedInputTypes.JSONata)});function h(e){g.RED.nodes.createNode(this,e),this.config=(0,v.migrate)(e);const t=(0,N.getServerConfigNode)(this.config.server),o=(0,y.getHomeAssistant)(t),n=new f.default({config:t.config,node:this}),r=new c.default({inputs:I,nodeConfig:this.config,schema:b}),l=(0,m.createControllerDependencies)(this,o);new u.default({inputService:r,node:this,status:n,...l})}