UNPKG

iobroker.plenticore-g3

Version:

Adapter to communicate with a KOSTAL Plenticore Plus via local network (non-modbus)

2 lines 4.42 kB
"use strict";(self.webpackChunkplenticode_g3_admin=self.webpackChunkplenticode_g3_admin||[]).push([[621],{6621(e,t,s){s.r(t),s.d(t,{default:()=>b});var i=s(4473),a=s(8341),o=s(9379),l=s(5043),n=s(2987),p=s(4535),r=s(815),c=s(8662),h=s(4090),d=s(579);const u=(e,t,s)=>(0,o.A)({backgroundColor:(0,n.e$)(e,s)},t.applyStyles("light",{backgroundColor:(0,n.a)(e,s)})),v=(0,p.Ay)(c.z)(e=>{let t=e.theme;return{"& .super-app-theme--Preselected":(0,o.A)((0,o.A)({},u(t.palette.success.main,t,.7)),{},{"&:hover":(0,o.A)({},u(t.palette.success.main,t,.6)),"&.Mui-selected":(0,o.A)((0,o.A)({},u(t.palette.success.main,t,.5)),{},{"&:hover":(0,o.A)({},u(t.palette.success.main,t,.4))})}),"& .super-app-theme--Options":(0,o.A)((0,o.A)({},u(t.palette.background.default,t,.7)),{},{"&:hover":(0,o.A)({},u(t.palette.info.main,t,.6)),"&.Mui-selected":(0,o.A)((0,o.A)({},u(t.palette.info.main,t,.5)),{},{"&:hover":(0,o.A)({},u(t.palette.info.main,t,.4))})})}});var S=(0,a.A)("translateDescription");class m extends l.Component{constructor(e){super(e),this.onAliveChanged=(e,t)=>{e===this.aliveId&&this.setState({isInstanceAlive:t&&t.val})},this.onStateChanged=(e,t)=>{if(e===this.allAvailableId){let e;try{e=t&&t.val?JSON.parse(t.val):[],(0,i.A)(m,S)[S](e),this.updateDataWithOptionals(e)}catch(s){e=[]}this.setState({allavailable:e})}},this.onRowSelectionModelChange=e=>{this.setState({rowSelectionModel:e});let t=[];for(const s of e){let e=this.state.allavailable.find(e=>e.id===s);e&&t.push(e)}this.props.onChange("processdata"===this.props.type?"pdoptionals":"settingoptionals",JSON.stringify(t))},this.onProcessUpdateRow=e=>{if(this.state.rowSelectionModel.includes(e.id)){let s=[];try{s=JSON.parse(this.optionalsId)}catch(t){}let i=s.find(t=>t.id===e.id);i&&(i.description=e.description),this.props.onChange("processdata"===this.props.type?"pdoptionals":"settingoptionals",JSON.stringify(s))}return e},this.state={inAction:!1,toast:"",isInstanceAlive:!1,errorWithPercent:!1,availabledata:[],rowSelectionModel:[]},this.aliveId="system.adapter.".concat(this.props.adapterName,".").concat(this.props.instance,".alive"),this.allAvailableId="".concat(this.props.adapterName,".").concat(this.props.instance,".").concat(this.props.type,".all-available"),this.optionalsId="processdata"===this.props.type?this.props.native.pdoptionals:this.props.native.settingoptionals,this.columns=[{field:"id",headerName:"ID",minWidth:200,editable:!1,flex:1},{field:"description",headerName:h.F2.t("Description"),minWidth:150,editable:!0,flex:1}]}updateDataWithOptionals(e){let t=[],s=[];try{s=JSON.parse(this.optionalsId)}catch(i){}for(const a of s){let s=e.find(e=>e.id===a.id);s&&!s.preselected&&(s.description=a.description,t.push(s.id))}this.setState({rowSelectionModel:t})}readStatus(e){this.props.socket.getState(this.aliveId).then(t=>this.props.socket.getState(this.allAvailableId).then(s=>{let a;try{a=s&&s.val?JSON.parse(s.val):[],(0,i.A)(m,S)[S](a),this.updateDataWithOptionals(a)}catch(o){a=[]}this.setState({isInstanceAlive:t&&t.val,allavailable:a},()=>e&&e())}))}componentDidMount(){this.props.socket.getState(this.aliveId).then(e=>{this.setState({isInstanceAlive:e&&e.val}),this.readStatus(()=>{this.props.socket.subscribeState(this.aliveId,this.onAliveChanged),this.props.socket.subscribeState(this.allAvailableId,this.onStateChanged)})})}componentWillUnmount(){this.props.socket.unsubscribeState(this.aliveId,this.onAliveChanged),this.props.socket.unsubscribeState(this.allAvailableId,this.onStateChanged)}render(){return(0,d.jsxs)("form",{children:[(0,d.jsx)(h.gu,{instance:this.props.instance,common:this.props.common,native:this.props.native,onError:e=>this.setState({errorText:e}),onLoad:this.props.onLoad}),(0,d.jsx)(r.A,{sx:{height:"100%",width:"100%",pb:10},children:(0,d.jsx)(v,{rows:this.state.allavailable,columns:this.columns,checkboxSelection:!0,disableRowSelectionOnClick:!0,rowHeight:30,isRowSelectable:e=>!1===e.row.preselected,isCellEditable:e=>!1===e.row.preselected,getRowClassName:e=>e.row.preselected?"super-app-theme--Preselected":"super-app-theme--Options",processRowUpdate:(e,t)=>this.onProcessUpdateRow(e,t),rowSelectionModel:this.state.rowSelectionModel,onRowSelectionModelChange:e=>this.onRowSelectionModelChange(e)})})]})}}Object.defineProperty(m,S,{value:function(e){for(let t of e)t.description&&(t.description=t.description[h.F2.getLanguage()])}});const b=m}}]); //# sourceMappingURL=621.e37e1232.chunk.js.map