(window["webpackJsonpdelectrik-s3-webapp"]=window["webpackJsonpdelectrik-s3-webapp"]||[]).push([[0],{198:function(e,t,a){},199:function(e,t,a){},200:function(e,t,a){},201:function(e,t,a){},202:function(e,t,a){},203:function(e,t,a){},204:function(e,t,a){"use strict";a.r(t);var n=a(0),r=a.n(n),s=a(24),o=a.n(s),l=(a(91),a(3)),i=a(4),c=a(5),u=a(2),d=a(6),m=a(46),h=a(28),f=a(16),v=(a(92),{REACT_APP_STATIC_RESOURCE_ROOT_URL:"https://d2c5uncyaucn34.cloudfront.net",REACT_APP_API_ROOT_URL:"https://enfjo0vun8.execute-api.ap-south-1.amazonaws.com/dev",REACT_APP_SOCKET_URL:"",REACT_APP_TITLE:""}),p=a(7),b=a.n(p),E=function(e){function t(){return Object(l.a)(this,t),Object(c.a)(this,Object(u.a)(t).apply(this,arguments))}return Object(d.a)(t,e),Object(i.a)(t,[{key:"render",value:function(){return r.a.createElement("div",null,this.props.children)}},{key:"componentDidMount",value:function(){b()("body").addClass("gray-bg")}},{key:"componentWillUnmount",value:function(){b()("body").removeClass("gray-bg")}}]),t}(r.a.Component),g=a(38),y=function(e){function t(){return Object(l.a)(this,t),Object(c.a)(this,Object(u.a)(t).apply(this,arguments))}return Object(d.a)(t,e),Object(i.a)(t,[{key:"componentDidMount",value:function(){}},{key:"render",value:function(){return null}}]),t}(r.a.Component),C=a(9),k=a.n(C),w=null,N=function(){function e(){Object(l.a)(this,e),w||(w=this);var t=w.getToken(),a=w.getUser();return t&&a&&(w.user=a),w}return Object(i.a)(e,[{key:"isLoggedIn",value:function(){return!!this.getUser()}},{key:"getToken",value:function(){return sessionStorage.getItem("token")}},{key:"getUser",value:function(){return sessionStorage.getItem("user")?JSON.parse(sessionStorage.getItem("user")):null}},{key:"getCustomer",value:function(){return sessionStorage.getItem("customer")?JSON.parse(sessionStorage.getItem("customer")):null}},{key:"setCustomer",value:function(e){sessionStorage.setItem("customer",JSON.stringify(e))}},{key:"login",value:function(e,t){k.a.defaults.headers.common["Content-Type"]="application/json",k.a.defaults.headers.post["Content-Type"]="application/json";var a=v.REACT_APP_API_ROOT_URL+"/users/authenticate";return k()({method:"post",url:a,data:{username:e,password:t},headers:{Accept:"application/json","Content-Type":"application/json"}}).then(function(e){if(e&&e.data){sessionStorage.setItem("token",e.data.tmp.token);var t=e.data.tmp.user;sessionStorage.setItem("user",JSON.stringify(t));var a=t.customers.find(function(e){return e.c_id===t.default_customer});return sessionStorage.setItem("customer",JSON.stringify(a)),e}}).catch(function(e){throw new Error("Invalid credentials")})}},{key:"UIPermissions",value:function(e){var t=[{displayValue:"Dashboard",internalValue:"UI_DASHBOARD"},{displayValue:"Download Content",internalValue:"UI_DOWNLOAD"}];return"cust_admin"!==e&&"delectrik_admin"!==e||t.push({displayValue:"Users",internalValue:"UI_USERS"}),"delectrik_admin"===e&&t.push({displayValue:"Customers",internalValue:"UI_CUSTOMERS"}),t}},{key:"destroyToken",value:function(){sessionStorage.removeItem("token"),sessionStorage.removeItem("user"),sessionStorage.removeItem("devices"),sessionStorage.removeItem("state"),sessionStorage.removeItem("version"),this.user=null}},{key:"logout",value:function(){this.destroyToken()}},{key:"checkUserAccess",value:function(e,t){sessionStorage.getItem("user")&&(JSON.parse(sessionStorage.getItem("user"))||t("/login"))}}]),e}(),D=window.AuthStore=new N,O=function(e){function t(){return Object(l.a)(this,t),Object(c.a)(this,Object(u.a)(t).apply(this,arguments))}return Object(d.a)(t,e),Object(i.a)(t,[{key:"activeRoute",value:function(e){return console.log("activeRoute: ",this.props.activeRoute," routeName: ",e),this.props.activeRoute.indexOf(e)>-1?"active":""}},{key:"render",value:function(){var e=this.props.activeRoute,t=this.props.permission,a=this.props.linkTo,n=this.props.title,s=!1,o=this.props.className;if(null!=t){var l=D.getUser();if(l&&l.ui_permissions)l.ui_permissions.find(function(e){return e===t})&&(s=!0);else s=!1;return s?r.a.createElement("li",{className:this.props.activeRoute({activeRoute:e})},r.a.createElement(f.b,{to:a},r.a.createElement("i",{className:o})," ",r.a.createElement("span",{className:"nav-label"},n))):null}return r.a.createElement("li",{className:this.props.activeRoute({activeRoute:e})},r.a.createElement(f.b,{to:a},r.a.createElement("i",{className:o})," ",r.a.createElement("span",{className:"nav-label"},n)))}}]),t}(r.a.Component),_=function(e){function t(){return Object(l.a)(this,t),Object(c.a)(this,Object(u.a)(t).apply(this,arguments))}return Object(d.a)(t,e),Object(i.a)(t,[{key:"activeRoute",value:function(e){return this.props.currentLocation.indexOf(e)>-1?"active":""}},{key:"secondLevelActive",value:function(e){return this.props.location.pathname.indexOf(e)>-1?"nav nav-second-level collapse in":"nav nav-second-level collapse"}},{key:"render",value:function(){var e=D.getUser(),t=null==e.profilePic||""===e.profilePic?"/img/profiles/profile.jpg":"/img/profiles/"+e.profilePic,a="delectrik_admin"===e.type?"Admin":"User";return r.a.createElement("nav",{className:"navbar-default navbar-static-side"},r.a.createElement("ul",{className:"nav metismenu",id:"side-menu",ref:"menu"},r.a.createElement("li",{className:"nav-header"},r.a.createElement("div",{className:"dropdown profile-element"},r.a.createElement("span",null,r.a.createElement("img",{alt:"profile picture",className:"img-circle",src:t,style:{width:48}})),r.a.createElement("a",{"data-toggle":"dropdown",className:"dropdown-toggle",href:"/"},r.a.createElement("span",{className:"clear"}," ",r.a.createElement("span",{className:"block m-t-xs"}," ",r.a.createElement("strong",{className:"font-bold"},e.full_name)),r.a.createElement("span",null,"Role (",a,")")))),r.a.createElement("div",{className:"logo-element"},"DK+")),r.a.createElement(O,{linkTo:"/changeCustomer",activeRoute:this.activeRoute.bind(this,"/changeCustomer"),title:"Change Customer",className:"fa fa-exchange",permission:"UI_CUSTOMERS",location:this.props.location}),r.a.createElement(O,{linkTo:"/customers",activeRoute:this.activeRoute.bind(this,"/customers"),title:"Customers",className:"fa fa-user-circle",permission:"UI_CUSTOMERS",location:this.props.location}),r.a.createElement(O,{linkTo:"/users",activeRoute:this.activeRoute.bind(this,"/users"),title:"Users",className:"fa fa-user-circle",permission:"UI_USERS",location:this.props.location}),r.a.createElement(O,{linkTo:"/dashboard",activeRoute:this.activeRoute.bind(this,"/dashboard"),title:"Dashboard",className:"fa fa-th-large",permission:"UI_DASHBOARD",location:this.props.location}),r.a.createElement(O,{linkTo:"/download",activeRoute:this.activeRoute.bind(this,"/download"),title:"Download",className:"fa fa-cloud-download",permission:"UI_DOWNLOAD",location:this.props.location})))}}]),t}(r.a.Component),S=function(e){function t(){var e;return Object(l.a)(this,t),(e=Object(c.a)(this,Object(u.a)(t).call(this))).state={version:{major:1,minor:0,patch:0}},e}return Object(d.a)(t,e),Object(i.a)(t,[{key:"componentWillMount",value:function(){}},{key:"render",value:function(){return this.state.version?r.a.createElement("div",{className:"footer"},r.a.createElement("div",null,"Delectrik (",this.state.version.major+"."+this.state.version.minor+"."+this.state.version.patch,")")):r.a.createElement("div",{className:"footer"},r.a.createElement("div",null))}}]),t}(r.a.Component);function j(){var e=b()("#page-wrapper"),t=b()("nav.navbar-default").height(),a=e.height();t>a&&e.css("min-height",t+"px"),ta?e.css("min-height",t+"px"):e.css("min-height",b()(window).height()-60+"px"))}var P=a(20),T=a.n(P),U=function(e){function t(){var e;return Object(l.a)(this,t),(e=Object(c.a)(this,Object(u.a)(t).call(this))).subscriptionToken=null,e}return Object(d.a)(t,e),Object(i.a)(t,[{key:"componentWillMount",value:function(){var e=this;this.subscriptionToken=T.a.subscribe("CUSTOMER_CHANGED",function(t,a){e.forceUpdate()})}},{key:"componentWillUnmount",value:function(){T.a.unsubscribe(this.subscriptionToken)}},{key:"toggleNavigation",value:function(e){e.preventDefault(),b()("body").toggleClass("mini-navbar"),!b()("body").hasClass("mini-navbar")||b()("body").hasClass("body-small")?(b()("#side-menu").hide(),setTimeout(function(){b()("#side-menu").fadeIn(400)},200)):b()("body").hasClass("fixed-sidebar")?(b()("#side-menu").hide(),setTimeout(function(){b()("#side-menu").fadeIn(400)},100)):b()("#side-menu").removeAttr("style")}},{key:"onChange",value:function(e){T.a.publish("GLOBAL_SEARCH",e.target.value)}},{key:"renderChangeCustomer",value:function(){if("delectrik_admin"===D.getUser().type){var e=D.getCustomer();return r.a.createElement("li",null,r.a.createElement(f.b,{to:"/changeCustomer",className:"fa fa-at"}," ",e.c_name))}return null}},{key:"render",value:function(){return r.a.createElement("div",{className:"row border-bottom"},r.a.createElement("nav",{className:"navbar navbar-static-top white-bg",style:{marginBottom:0}},r.a.createElement("div",{className:"navbar-header"},r.a.createElement("a",{className:"navbar-minimalize minimalize-styl-2 btn btn-primary ",onClick:this.toggleNavigation},r.a.createElement("i",{className:"fa fa-bars"})," "),r.a.createElement("form",{className:"navbar-form-custom",action:"search_results.html"},r.a.createElement("div",{className:"form-group"},r.a.createElement("input",{type:"text",placeholder:"Search for something...",onChange:this.onChange.bind(this),className:"form-control",name:"top-search",id:"top-search"})))),r.a.createElement("ul",{className:"nav navbar-top-links navbar-right"},this.renderChangeCustomer(),r.a.createElement("li",null,r.a.createElement(f.b,{to:"/changePassword",className:"fa fa-sign-out"}," Change Password")),r.a.createElement("li",null,r.a.createElement(f.b,{to:"/login",className:"fa fa-sign-out"}," Log out")))))}}]),t}(r.a.Component),x=function(e){function t(){var e;Object(l.a)(this,t),e=Object(c.a)(this,Object(u.a)(t).call(this));var a=Object(g.a)(e);return T.a.subscribe("APPLICATION_EVENT",function(e,t){console.log(t),a.props.children.props.history.push("/"+t)}),e}return Object(d.a)(t,e),Object(i.a)(t,[{key:"render",value:function(){return r.a.createElement("div",{id:"wrapper"},r.a.createElement(y,null),r.a.createElement(_,{currentLocation:this.props.children.props.history.location.pathname}),r.a.createElement("div",{id:"page-wrapper",className:"gray-bg "},r.a.createElement(U,null),this.props.children,r.a.createElement(S,null)))}},{key:"componentDidMount",value:function(){b()(window).bind("load resize",function(){j(),b()(document).width()<769?b()("body").addClass("body-small"):b()("body").removeClass("body-small")}),b()(".metismenu a").click(function(){setTimeout(function(){j()},300)})}}]),t}(r.a.Component),R=function(e){function t(){var e;return Object(l.a)(this,t),(e=Object(c.a)(this,Object(u.a)(t).call(this))).state={error:null},e}return Object(d.a)(t,e),Object(i.a)(t,[{key:"componentDidMount",value:function(){T.a.publishSync("LOGOUT_EVENT",null),this.username.focus(),D.logout()}},{key:"componentWillUnmount",value:function(){this.setState({error:null})}},{key:"onClickHandler",value:function(e){e&&e.preventDefault(),this.login()}},{key:"login",value:function(){var e=this,t=this;this.disableLogin(!0),D.login(this.username.value,this.password.value).then(function(e){D.isLoggedIn()&&(T.a.publishSync("LOGIN_EVENT",null),"delectrik_admin"===D.getUser().type?t.props.history.push("/customers"):t.props.history.push("/dashboard"))}).catch(function(a){a&&a.response&&a.response.status&&401===a.response.status&&t.setState({error:a.response.data.message}),a&&a.message?t.setState({error:a.message}):t.setState({error:"Opps, the server is down..."}),e.disableLogin(!1)})}},{key:"disableLogin",value:function(e){this.LoginButton&&(this.LoginButton.disabled=e)}},{key:"onKeyDown",value:function(e){13===e.keyCode&&this.login()}},{key:"getErrorMessage",value:function(){return null!=this.state.error?r.a.createElement("div",{style:{color:"red"}},this.state.error):null}},{key:"render",value:function(){var e=this,t=this.getErrorMessage();return r.a.createElement("div",{className:"middle-box text-center loginscreen animated fadeInDown"},r.a.createElement("div",{className:"middle-box"},r.a.createElement("div",null,r.a.createElement("h1",{className:"logo-name"},"DE")),r.a.createElement("h3",null,"Welcome to Delectrik"),r.a.createElement("p",null,"Remote Customer Access"),r.a.createElement("form",{className:"m-t",action:"index.html"},r.a.createElement("div",{className:"form-group"},r.a.createElement("input",{type:"text",className:"form-control",placeholder:"Username",required:"",ref:function(t){e.username=t},onKeyDown:this.onKeyDown.bind(this),defaultValue:""})),r.a.createElement("div",{className:"form-group"},r.a.createElement("input",{type:"password",className:"form-control",placeholder:"Password",required:"",ref:function(t){e.password=t},onKeyDown:this.onKeyDown.bind(this),defaultValue:""})),r.a.createElement("button",{type:"button",className:"btn btn-primary block full-width m-b",onClick:this.onClickHandler.bind(this)},"Login")),t,r.a.createElement("p",{className:"m-t"}," ",r.a.createElement("small",null,"Delectrik \xa9 2019")," ")))}}]),t}(r.a.Component),H=function(e){function t(){return Object(l.a)(this,t),Object(c.a)(this,Object(u.a)(t).apply(this,arguments))}return Object(d.a)(t,e),Object(i.a)(t,[{key:"render",value:function(){return r.a.createElement("div",null,"Dashboard")}}]),t}(n.Component),I=function(){function e(){Object(l.a)(this,e)}return Object(i.a)(e,[{key:"checkFileStatus",value:function(e,t){var a="/batterylogs/cust/".concat(e,"/").concat(t),n=v.REACT_APP_API_ROOT_URL+a;return k()({method:"get",url:n}).then(function(e){return e.data}).catch(function(e){console.error(e)})}},{key:"createDownloadRequest",value:function(e,t,a,n,r,s){var o="/batterylogs/cust/".concat(e),l={tokenHash:s};t&&(l.st=t),a&&(l.et=a),n&&(l.dids=n),r&&(l.download_with_admin_access=r);var i=v.REACT_APP_API_ROOT_URL+o;return console.log(JSON.stringify(l)),k()({method:"post",data:l,url:i}).then(function(e){return e.data}).catch(function(e){console.error(e)})}},{key:"fetchLatestLogs",value:function(e,t){var a="/batterylogs/latest/".concat(e),n=v.REACT_APP_API_ROOT_URL+a;return k()({method:"post",url:n,data:t}).then(function(e){return e.data}).catch(function(e){console.error(e)})}}]),e}(),A=window.BatteryLogStore=new I,L=a(49),M=a.n(L),B=a(33),V=a.n(B),F=a(8),Y=function(e){function t(){var e;return Object(l.a)(this,t),(e=Object(c.a)(this,Object(u.a)(t).call(this))).state={startDate:new Date,endDate:new Date,devices:[],error:null,downloading:!1,overallStatus:[],queryServer:!1,setIntervalToken:null},e}return Object(d.a)(t,e),Object(i.a)(t,[{key:"componentDidMount",value:function(){var e=this.state.startDate;e.setHours(0,0,0);var t=this.state.endDate;t.setHours(23,59,59),this.setState({startDate:e,endDate:t}),this.fetchLogs(),this.checkFileStatus()}},{key:"componentWillUnmount",value:function(){if(this.state.setIntervalToken){var e=this.state.setIntervalToken;clearInterval(e)}}},{key:"fetchLogs",value:function(){var e=D.getCustomer().devices.map(function(e){return Object.assign(e,{checked:!1})});this.setState({error:null,devices:e})}},{key:"onStartDateChange",value:function(e){e&&(e.setHours(0,0,0,0),this.setState({startDate:e}))}},{key:"onEndDateChange",value:function(e){e&&(e.setHours(23,59,59),this.setState({endDate:e}))}},{key:"downloadHandler",value:function(e){var t=this;e&&e.preventDefault(),this.setState({downloading:!0});var a=D.getCustomer().c_id,n=this.state.devices.filter(function(e){return e.checked}).map(function(e){return e.id});n.forEach(function(e){[].push(e)});var r=D.getToken().split("."),s=r[r.length-1];A.createDownloadRequest(a,Number(this.state.startDate),Number(this.state.endDate),n,!0,s).then(function(e){e&&e.length>0&&(t.startPingingServer(),t.checkFileStatus()),t.setState({downloading:!1})}).catch(function(e){t.setState({downloading:!1})})}},{key:"startPingingServer",value:function(){if(console.log("staring - pinging server "),!this.state.setIntervalToken){var e=setInterval(this.checkFileStatus.bind(this),1e4);this.setState({setIntervalToken:e})}}},{key:"clearIntervalOnError",value:function(){if(console.log("stopping - pinging server"),this.state.setIntervalToken){console.log(" token interval cleared");var e=this.state.setIntervalToken;clearInterval(e),this.setState({setIntervalToken:null})}}},{key:"checkFileStatus",value:function(){var e=this;console.log("Status ".concat(new Date));var t=D.getCustomer().c_id,a=D.getToken().split("."),n=a[a.length-1],r=this;A.checkFileStatus(t,n).then(function(t){t&&t.length>0&&(t.filter(function(e){return"CREATION_IN_PROGRESS"===e.fileStatus}).length>0&&e.startPingingServer(),r.setState({overallStatus:t}));t&&0===t.length&&r.clearIntervalOnError()})}},{key:"onDeviceSelectionChange",value:function(e,t){var a=this.state.devices,n=a.find(function(t){return t.id===e.id});n&&(n.checked=!n.checked,this.setState({devices:a}))}},{key:"renderDownloadButton",value:function(){if(this.state.downloading){return r.a.createElement("div",null,"Preparing document... ",r.a.createElement("img",{src:"img/progress-bar-preloader.svg"}))}return r.a.createElement("button",{onClick:this.downloadHandler.bind(this)},"Download Logs")}},{key:"renderOverallStatus",value:function(){var e;return e=window.matchMedia("(max-width: 767px)").matches?{width:"100%",marginBottom:"15px",overflowY:"hidden",overflowX:"auto",border:0}:{minHeight:".01%",border:0},this.state.overallStatus&&this.state.overallStatus.length>0?r.a.createElement("div",null,r.a.createElement("h2",null,"Download Requests"),r.a.createElement(F.BootstrapTable,{containerStyle:e,data:this.state.overallStatus,striped:!0,hover:!0},r.a.createElement(F.TableHeaderColumn,{dataField:"r_id",isKey:!0,hidden:!0,dataSort:!0},"ID"),r.a.createElement(F.TableHeaderColumn,{dataField:"dids",width:"25%",dataSort:!0},"Device Id"),r.a.createElement(F.TableHeaderColumn,{dataField:"st",width:"25%",dataSort:!0,dataFormat:this.renderSDate.bind(this)},"Start Time"),r.a.createElement(F.TableHeaderColumn,{dataField:"et",width:"25%",dataSort:!0,dataFormat:this.renderEDate.bind(this)},"End Time "),r.a.createElement(F.TableHeaderColumn,{dataField:"fileStatus",width:"25%",dataSort:!0,dataFormat:this.renderStatus.bind(this)},"Status"))):null}},{key:"renderSDate",value:function(e,t){var a=t.st;return V.a.tz(a,"Asia/Kolkata").format("DD-MM-YYYY")}},{key:"renderEDate",value:function(e,t){var a=t.et;return V.a.tz(a,"Asia/Kolkata").format("DD-MM-YYYY")}},{key:"renderStatus",value:function(e,t){var a=t.fileStatus,n=t.fileUrl;if("CREATION_IN_PROGRESS"===a){return r.a.createElement("div",null,"Preparing document... ",r.a.createElement("img",{src:"img/progress-bar-preloader.svg",style:{height:"20px"}}))}if("SUCCESS"===a)return r.a.createElement("button",{className:"btn btn-primary fa fa-cloud-download",onClick:function(e){return window.open(n)}})}},{key:"render",value:function(){var e=this;if(this.state.error)return r.a.createElement("div",null,this.state.error);if(this.state.devices){var t=this.state.devices.map(function(t){return r.a.createElement("div",{key:t.id},r.a.createElement("div",{className:"checkbox"},r.a.createElement("label",null,r.a.createElement("input",{type:"checkbox",onChange:e.onDeviceSelectionChange.bind(e,t),checked:t.checked}),t.id)))});return r.a.createElement("div",null,r.a.createElement("div",null,r.a.createElement("div",{className:"row wrapper border-bottom white-bg page-heading"},r.a.createElement("div",{className:"col-lg-12"},r.a.createElement("h2",null,"Download Options")),r.a.createElement("div",{className:"ibox float-e-margins"},r.a.createElement("div",{className:"col-lg-6"},r.a.createElement("div",{className:"ibox-content"},r.a.createElement("form",{method:"get",className:"form-horizontal"},r.a.createElement("div",{className:"form-group"},r.a.createElement("label",{className:"col-sm-4 control-label"},"Start Date"),r.a.createElement("div",{className:"col-sm-8"},r.a.createElement(M.a,{onChange:this.onStartDateChange.bind(this),value:new Date(this.state.startDate)}))),r.a.createElement("div",{className:"form-group"},r.a.createElement("label",{className:"col-sm-4 control-label"},"End Date"),r.a.createElement("div",{className:"col-sm-8"},r.a.createElement(M.a,{onChange:this.onEndDateChange.bind(this),value:new Date(this.state.endDate)}))),r.a.createElement("div",{className:"form-group"},r.a.createElement("label",{className:"col-sm-4 control-label"},"Devices"),r.a.createElement("div",{className:"col-sm-8"},t)),r.a.createElement("div",{className:"form-group"},r.a.createElement("div",{className:"col-sm-8 col-sm-offset-4"},this.renderDownloadButton()))))),this.renderOverallStatus()))))}return null}}]),t}(n.Component),W=a(21),J=function(e){function t(e){var a;return Object(l.a)(this,t),(a=Object(c.a)(this,Object(u.a)(t).call(this,e))).state={value:null},a}return Object(d.a)(t,e),Object(i.a)(t,[{key:"UpdateJsonAppendToCollection",value:function(e,t,a){var n=t.split("."),r=e,s=b()(n).length,o=n[s-1];b()(n).each(function(e,t){if(e0){var a=this.state.customers.map(function(t){return r.a.createElement(Q,{id:t.c_id,key:t.c_id,display:t.c_name,renderDelete:"001"!==t.c_id,onClickHandler:e.onCustomerClickHandler.bind(e,t.c_id),onDeleteHandler:e.onCustomerDeleteClickHandler.bind(e,t.c_id)})});return r.a.createElement("div",null,this.showDeleteRender(),r.a.createElement("div",{className:"row wrapper border-bottom white-bg page-heading"},r.a.createElement("div",{className:"col-lg-10"},r.a.createElement("h2",null,"Customers")),r.a.createElement("div",{className:"col-lg-2"},r.a.createElement("h2",null,t))),r.a.createElement("div",{className:"wrapper wrapper-content animated fadeInRight"},r.a.createElement("div",{className:"row"},a)))}return null}}]),t}(n.Component),ae=function(e){function t(){var e;return Object(l.a)(this,t),(e=Object(c.a)(this,Object(u.a)(t).call(this))).state={customers:[]},e}return Object(d.a)(t,e),Object(i.a)(t,[{key:"componentWillMount",value:function(){var e=this,t=D.getUser();$.fetchAllCustomer(t).then(function(t){e.setState({customers:t})})}},{key:"onCustomerClickHandler",value:function(e,t){t&&t.preventDefault();var a=this.state.customers.find(function(t){return t.c_id===e});a&&(D.setCustomer(a),T.a.publishSync("CUSTOMER_CHANGED",a),this.props.history.push("/dashboard"))}},{key:"render",value:function(){var e=this;if(this.state.customers){var t=this.state.customers.map(function(t){return r.a.createElement(Q,{id:t.c_id,key:t.c_id,display:t.c_name,onClickHandler:e.onCustomerClickHandler.bind(e,t.c_id)})});return r.a.createElement("div",null,r.a.createElement("div",{className:"row wrapper border-bottom white-bg page-heading"},r.a.createElement("div",{className:"col-lg-10"},r.a.createElement("h2",null,"Change Customer Context"),r.a.createElement("label",null,"Selecting a customer here will change the dashboard and download view for the selected customer"))),r.a.createElement("div",{className:"wrapper wrapper-content animated fadeInRight"},r.a.createElement("div",{className:"row"},t)))}return null}}]),t}(n.Component),ne=function(e){function t(){var e;return Object(l.a)(this,t),(e=Object(c.a)(this,Object(u.a)(t).call(this))).state={logs:[],startDate:new Date,endDate:new Date,devices:[],error:null},e}return Object(d.a)(t,e),Object(i.a)(t,[{key:"componentWillMount",value:function(){var e=this.state.startDate;e.setHours(0,0,0);var t=this.state.endDate;t.setHours(23,59,59),this.setState({startDate:e,endDate:t}),this.fetchLogs()}},{key:"fetchLogs",value:function(){var e=this,t=D.getCustomer().c_id,a=D.getUser();A.fetchLatestLogs(t,a).then(function(t){if(t)if(t.data){var a=e.formatContent(t.data),n=D.getCustomer().devices.map(function(e){return Object.assign(e,{checked:!0})});e.setState({logs:a,error:null,devices:n})}else e.setState({error:t.Error})})}},{key:"onStartDateChange",value:function(e){console.log(e),e&&(e.setHours(0,0,0,0),this.setState({startDate:e}))}},{key:"onEndDateChange",value:function(e){console.log(e),e&&(e.setHours(23,59,59),this.setState({endDate:e}))}},{key:"downloadHandler",value:function(e){e&&e.preventDefault();var t=D.getCustomer().c_id,a=this.state.devices.filter(function(e){return e.checked}).map(function(e){return e.id});A.createDownloadRequest(t,Number(this.state.startDate),Number(this.state.endDate),a).then(function(e){e&&(console.log("download request successfully created"),window.open(e))})}},{key:"formatContent",value:function(e){return e.map(function(e){return Object.assign({r_id:e.r_id,site_id:e.siteId,state:e.STATE,site_name:e.siteName,dc_voltage:e.DB_DC_Voltage_mV,dc_current:e.DB_DC_Current_mA,soc_percent:e.SOC_SOC_PERCENT,power:e.CAP_POWER_W,energy:e.CAP_Energy_WH,temperature:e.DT_Positive_Tank_Temp_C,esr:e.SOC_ESR_Charge,leftPumpCurrent:e.PMPI_Negative_Pump_Current_mA,rightPumpCurrent:e.PMPI_Positive_Pump_Current_mA,error_code3:e.NERR_E_Code3,time:V.a.tz(e.sts,"Asia/Kolkata").format("DD-MM-YYYY HH:mm:ss")})})}},{key:"renderTable",value:function(){var e;return e=window.matchMedia("(max-width: 767px)").matches?{width:"100%",marginBottom:"15px",overflowY:"hidden",overflowX:"auto",border:0}:{minHeight:".01%",border:0},r.a.createElement(F.BootstrapTable,{containerStyle:e,data:this.state.logs,striped:!0,hover:!0},r.a.createElement(F.TableHeaderColumn,{dataField:"r_id",isKey:!0,hidden:!0,dataSort:!0},"ID"),r.a.createElement(F.TableHeaderColumn,{dataField:"site_id",width:"80",dataSort:!0},"Site Id "),r.a.createElement(F.TableHeaderColumn,{dataField:"site_name",width:"90",dataSort:!0},"Site Name "),r.a.createElement(F.TableHeaderColumn,{dataField:"state",width:"80",dataSort:!0},"State "),r.a.createElement(F.TableHeaderColumn,{dataField:"dc_voltage",width:"100",dataSort:!0},"DC Voltage (mV) "),r.a.createElement(F.TableHeaderColumn,{dataField:"dc_current",width:"100",dataSort:!0},"DC Current (mA)"),r.a.createElement(F.TableHeaderColumn,{dataField:"soc_percent",width:"50",dataSort:!0},"SOC(%)"),r.a.createElement(F.TableHeaderColumn,{dataField:"power",width:"80",dataSort:!0},"Power (W)"),r.a.createElement(F.TableHeaderColumn,{dataField:"energy",width:"80",dataSort:!0},"Energy (WH) "),r.a.createElement(F.TableHeaderColumn,{dataField:"temperature",width:"80",dataSort:!0},"Temperature (C)"),r.a.createElement(F.TableHeaderColumn,{dataField:"esr",width:"80",dataSort:!0},"ESR"),r.a.createElement(F.TableHeaderColumn,{dataField:"leftPumpCurrent",width:"100",dataSort:!0},"Left Pump Current (mA)"),r.a.createElement(F.TableHeaderColumn,{dataField:"rightPumpCurrent",width:"100",dataSort:!0},"Right Pump Current (mA)"),r.a.createElement(F.TableHeaderColumn,{dataField:"error_code3",width:"100",dataSort:!0},"Error Code 3 "),r.a.createElement(F.TableHeaderColumn,{dataField:"time",width:"180",dataSort:!0},"Time "))}},{key:"onDeviceSelectionChange",value:function(e,t){var a=this.state.devices,n=a.find(function(t){return t.id===e.id});n&&(n.checked=!n.checked,this.setState({devices:a}))}},{key:"renderCustomer",value:function(){return D.getCustomer().c_name}},{key:"render",value:function(){return this.state.error?r.a.createElement("div",null,this.state.error):this.state.logs?r.a.createElement("div",null,r.a.createElement("div",null,r.a.createElement("div",{className:"row wrapper border-bottom white-bg page-heading"},r.a.createElement("div",{className:"col-lg-8"},r.a.createElement("h2",null,this.renderCustomer()," : Latest Battery Logs")),r.a.createElement("div",{className:"ibox-content"},r.a.createElement("div",{className:"row"},this.renderTable()))))):null}}]),t}(n.Component),re=function(e){function t(){var e;return Object(l.a)(this,t),(e=Object(c.a)(this,Object(u.a)(t).call(this))).state={draftCustomer:{c_id:"",c_name:""},draftDevice:{},deviceMode:"create",mode:"create",error:"",showDelete:!1},e}return Object(d.a)(t,e),Object(i.a)(t,[{key:"componentWillMount",value:function(){var e=this,t=this.props.match.params.c_id;"create"!==t&&$.fetchCustomer(t).then(function(t){e.setState({draftCustomer:t})}).catch(function(t){e.setState({error:t.message})})}},{key:"onSaveHandler",value:function(e){var t=this;e&&e.preventDefault(),$.saveCustomer(this.state.draftCustomer,"add").then(function(e){t.setState({deviceMode:"create",draftDevice:{},error:null})}).catch(function(e){t.setState({error:e.message})})}},{key:"onCancelHandler",value:function(){this.props.history.push("/customers")}},{key:"onSaveDeviceHandler",value:function(e){e&&e.preventDefault(),console.log("saving device info"),$.saveCustomer(this.state.draftCustomer,"update"),this.setState({deviceMode:"create",draftDevice:{},error:null})}},{key:"onCancelDeviceHandler",value:function(e){e&&e.preventDefault(),this.setState({deviceMode:"create",draftDevice:{},error:null})}},{key:"onAddDeviceHandler",value:function(e){var t=this;e&&e.preventDefault();var a=this.state.draftCustomer;this.state.draftDevice.id&&12===this.state.draftDevice.id.length?a.devices?a.devices.find(function(e){return e.id===t.state.draftDevice.id})?this.setState({error:"Device already exists"}):(a.devices.push(this.state.draftDevice),$.saveCustomer(a),this.setState({draftCustomer:a,deviceMode:"create",draftDevice:{},error:null})):(a.devices=[],a.devices.push(this.state.draftDevice),$.saveCustomer(a),this.setState({draftCustomer:a,deviceMode:"create",draftDevice:{},error:null})):this.setState({error:"Invalid Device ID format"})}},{key:"renderError",value:function(){if(this.state.error)return r.a.createElement("div",{className:"error"},this.state.error)}},{key:"onDeleteHandler",value:function(e,t){t&&t.preventDefault(),this.setState({showDelete:!0,draftDevice:e})}},{key:"onEditHandler",value:function(e,t){t&&t.preventDefault(),this.setState({draftDevice:e,deviceMode:"edit"})}},{key:"renderEdit",value:function(e,t){return r.a.createElement("button",{className:"btn btn-info fa fa-edit",onClick:this.onEditHandler.bind(this,t)})}},{key:"renderDelete",value:function(e,t){return r.a.createElement("button",{className:"btn btn-danger fa fa-trash",onClick:this.onDeleteHandler.bind(this,t)})}},{key:"showDeleteRender",value:function(){if(this.state.showDelete){var e=this.state.draftDevice;return r.a.createElement(ee.a,{danger:!0,showCancel:!0,confirmBtnText:"Yes, delete it !",confirmBtnBsStyle:"danger",cancelBtnBsStyle:"default",title:"Delete device: "+e.id+" ?",onConfirm:this.deleteDeviceHandler.bind(this),onCancel:this.cancelDeleteDeviceHandler.bind(this)},"You will not be able to undo this action!")}}},{key:"deleteDeviceHandler",value:function(e){var t=this;console.log("delete handler");var a=this.state.draftCustomer,n=a.devices.findIndex(function(e){return e.id===t.state.draftDevice.id});-1!==n&&(a.devices.splice(n,1),$.saveCustomer(a).then(function(e){t.setState({draftCustomer:a,draftDevice:{},showDelete:!1,deviceMode:"create"})})),this.setState({showDelete:!1})}},{key:"cancelDeleteDeviceHandler",value:function(){this.setState({showDelete:!1})}},{key:"render",value:function(){var e;return e=window.matchMedia("(max-width: 767px)").matches?{width:"100%",marginBottom:"15px",overflowY:"hidden",overflowX:"auto",border:0}:{minHeight:".01%",border:0},r.a.createElement("div",{className:"row"},this.showDeleteRender(),r.a.createElement("div",{className:"col-lg-6"},r.a.createElement("div",{className:"ibox float-e-margins"},r.a.createElement("div",{className:"ibox-title"},r.a.createElement("h5",null,"Customer "),r.a.createElement("div",null,r.a.createElement("label",{className:"error"}," ",this.renderError()))),r.a.createElement("div",{className:"ibox-content"},r.a.createElement("form",{method:"get",className:"form-horizontal"},r.a.createElement("div",{className:"form-group"},r.a.createElement("label",{className:"col-sm-4 control-label"},"Id"),r.a.createElement("div",{className:"col-sm-8"},r.a.createElement(q,{type:"text",store:this.state.draftCustomer,mode:"edit",placeholder:"Id",jsonPath:"c_id"}))),r.a.createElement("div",{className:"form-group"},r.a.createElement("label",{className:"col-sm-4 control-label"},"Name"),r.a.createElement("div",{className:"col-sm-8"},r.a.createElement(q,{type:"text",store:this.state.draftCustomer,mode:"edit",placeholder:"Name",jsonPath:"c_name"}))),r.a.createElement("div",{className:"form-group"},r.a.createElement("div",{className:"col-sm-8 col-sm-offset-4"},r.a.createElement("button",{className:"btn btn-white",onClick:this.onCancelHandler.bind(this)},"Cancel"),r.a.createElement("button",{className:"btn btn-primary",onClick:this.onSaveHandler.bind(this)},"Save changes"))))))),r.a.createElement("div",{className:"col-lg-6"},r.a.createElement("div",{className:"ibox float-e-margins"},r.a.createElement("div",{className:"ibox-title"},r.a.createElement("h5",null,"Devices")),r.a.createElement("div",{className:"ibox-content"},r.a.createElement("form",{method:"get",className:"form-horizontal"},r.a.createElement("div",{className:"form-group"},r.a.createElement("label",{className:"col-sm-4 control-label"},"Device Id"),r.a.createElement("div",{className:"col-sm-8"},r.a.createElement(q,{type:"text",store:this.state.draftDevice,mode:"edit",placeholder:"Device Id",jsonPath:"id"})),r.a.createElement("div",{className:"form-group"},r.a.createElement("div",{className:"col-sm-8 col-sm-offset-4"},r.a.createElement("button",{className:"btn btn-white",onClick:this.onCancelDeviceHandler.bind(this)},"Cancel"),"create"===this.state.deviceMode?r.a.createElement("button",{className:"btn btn-primary",onClick:this.onAddDeviceHandler.bind(this)},"Add New"):r.a.createElement("button",{className:"btn btn-primary",onClick:this.onSaveDeviceHandler.bind(this)},"Update Device")))),r.a.createElement("div",{className:"form-group"},r.a.createElement("div",{className:"col-sm-12"},r.a.createElement(F.BootstrapTable,{containerStyle:e,data:this.state.draftCustomer.devices,striped:!0,hover:!0},r.a.createElement(F.TableHeaderColumn,{dataField:"id",width:"90%",isKey:!0,dataSort:!0},"ID"),r.a.createElement(F.TableHeaderColumn,{width:"20",dataAlign:"right",dataFormat:this.renderEdit.bind(this),editable:!1},"Edit"),r.a.createElement(F.TableHeaderColumn,{width:"20",dataAlign:"right",dataFormat:this.renderDelete.bind(this),editable:!1},"Delete")))))))))}}]),t}(n.Component),se=function(e){function t(){return Object(l.a)(this,t),Object(c.a)(this,Object(u.a)(t).apply(this,arguments))}return Object(d.a)(t,e),Object(i.a)(t,[{key:"onClickHandler",value:function(e){this.props.onClickHandler&&this.props.onClickHandler(e)}},{key:"onDeleteHandler",value:function(e){this.props.onDeleteHandler&&this.props.onDeleteHandler(e)}},{key:"renderDelete",value:function(){if(this.props.onDeleteHandler)return r.a.createElement("button",{onClick:this.onDeleteHandler.bind(this),className:"btn btn-danger pull-right"},r.a.createElement("i",{className:"fa fa-minus-square"}))}},{key:"render",value:function(){var e=this.props.display,t="/img/profiles/"+this.props.profilePic;return r.a.createElement("div",{className:"col-lg-4"},r.a.createElement("div",{className:"contact-box"},this.renderDelete(),r.a.createElement("a",{onClick:this.onClickHandler.bind(this),href:"/"},r.a.createElement("div",{className:"col-sm-4"},r.a.createElement("div",{className:"text-center"},r.a.createElement("img",{className:"img-circle m-t-xs img-responsive",src:t,alt:"device",style:{width:100}}),r.a.createElement("div",{className:"m-t-xs font-bold"},e))),r.a.createElement("div",{className:"col-sm-8"},r.a.createElement("h3",null,r.a.createElement("strong",null,e)),r.a.createElement("p",null,this.props.id," ")),r.a.createElement("div",{className:"clearfix"}))))}}]),t}(r.a.Component),oe=function(e){function t(){var e;return Object(l.a)(this,t),(e=Object(c.a)(this,Object(u.a)(t).call(this))).stateToken=null,e.socketToken=null,e.state={showDelete:!1,users:null},e}return Object(d.a)(t,e),Object(i.a)(t,[{key:"componentDidMount",value:function(){this.loadUsers()}},{key:"loadUsers",value:function(){var e=this,t=D.getCustomer();z.fetchUsers(t.c_id,D.getUser().type).then(function(t){t&&e.setState({users:t})})}},{key:"onUserClickHandler",value:function(e,t){t&&t.preventDefault(),this.props.history.push("/users/".concat(e))}},{key:"onUserDeleteClickHandler",value:function(e,t){t&&t.preventDefault(),this.setState({showDelete:!0,username:e})}},{key:"showDeleteRender",value:function(e){if(this.state.showDelete)return r.a.createElement(ee.a,{danger:!0,showCancel:!0,confirmBtnText:"Yes, delete it !",confirmBtnBsStyle:"danger",cancelBtnBsStyle:"default",title:"Delete user: "+this.state.username+" ?",onConfirm:this.deleteFile.bind(this),onCancel:this.cancelDelete.bind(this)},"You will not be able to undo this action!")}},{key:"deleteFile",value:function(e){var t=this;console.log("deleting user ".concat(this.state.username)),z.deleteUser(D.getCustomer().c_id,{username:this.state.username}).then(function(e){t.setState({showDelete:!1}),t.loadUsers()})}},{key:"cancelDelete",value:function(){this.setState({showDelete:!1})}},{key:"createUserLink",value:function(){return r.a.createElement(f.b,{to:"/users/create",className:"btn btn-primary pull-right"},r.a.createElement("i",{className:"fa fa-plus-square"}))}},{key:"render",value:function(){var e=this,t=this.createUserLink();if(this.state.users&&this.state.users.length>0){var a=this.state.users.map(function(t){return r.a.createElement(se,{id:t.username,key:t.username,display:t.full_name,profilePic:t.profilePic,onClickHandler:e.onUserClickHandler.bind(e,t.username),onDeleteHandler:e.onUserDeleteClickHandler.bind(e,t.username)})});return r.a.createElement("div",null,this.showDeleteRender(),r.a.createElement("div",{className:"row wrapper border-bottom white-bg page-heading"},r.a.createElement("div",{className:"col-lg-10"},r.a.createElement("h2",null,"Users")),r.a.createElement("div",{className:"col-lg-2"},r.a.createElement("h2",null,t))),r.a.createElement("div",{className:"wrapper wrapper-content animated fadeInRight"},r.a.createElement("div",{className:"row"},a)))}return r.a.createElement("div",null,this.showDeleteRender(),r.a.createElement("div",{className:"row wrapper border-bottom white-bg page-heading"},r.a.createElement("div",{className:"col-lg-10"},r.a.createElement("h2",null,"Users")),r.a.createElement("div",{className:"col-lg-2"},r.a.createElement("h2",null,t))),r.a.createElement("div",{className:"wrapper wrapper-content animated fadeInRight"},r.a.createElement("div",{className:"row"})))}}]),t}(n.Component),le=function(e){function t(){var e;return Object(l.a)(this,t),(e=Object(c.a)(this,Object(u.a)(t).call(this))).state={loaded:!1},e}return Object(d.a)(t,e),Object(i.a)(t,[{key:"componentDidMount",value:function(){this.setState({loaded:!0})}},{key:"onChange",value:function(e){if(this.state.loaded){var a=e.target.value;this.props.jsonPath&&(Object(W.a)(Object(u.a)(t.prototype),"UpdateJson",this).call(this,this.props.store,this.props.jsonPath,a),Object(W.a)(Object(u.a)(t.prototype),"setState",this).call(this,{value:a}),this.props.onChange&&this.props.onChange(a))}}},{key:"render",value:function(){var e=this.getValue(this.props.store,this.props.jsonPath);e||(e="");var a="";e&&(this.props.options&&this.props.options.find(function(t){return t.internalValue===e})&&(a=this.props.options.find(function(t){return t.internalValue===e}).displayValue));this.props.fId&&Object(W.a)(Object(u.a)(t.prototype),"getValue",this).call(this,this.props.store,this.props.fId);var n=this.props.options.map(function(e){return r.a.createElement("option",{key:e.internalValue,value:e.internalValue}," ",e.displayValue)});return"edit"===this.props.mode||"create"===this.props.mode?r.a.createElement("div",null,r.a.createElement("select",{className:"form-control",onChange:this.onChange.bind(this),value:e},n)):r.a.createElement("div",null,r.a.createElement("div",{className:"form-control-static"},a))}}]),t}(J),ie=function(e){function t(){return Object(l.a)(this,t),Object(c.a)(this,Object(u.a)(t).apply(this,arguments))}return Object(d.a)(t,e),Object(i.a)(t,[{key:"onChange",value:function(e,a){var n=a.target.checked;if(!0===n)this.props.store[this.props.jsonPath].push(e);else{var r=this.props.store[this.props.jsonPath].indexOf(e);this.props.store[this.props.jsonPath].splice(r,1)}Object(W.a)(Object(u.a)(t.prototype),"setState",this).call(this,{value:n})}},{key:"render",value:function(){var e=this,a=this.props.list,n=Object(W.a)(Object(u.a)(t.prototype),"getValue",this).call(this,this.props.store,this.props.jsonPath);if(a&&n){var s=a.map(function(t){return r.a.createElement("div",{key:t.internalValue},r.a.createElement("div",{className:"checkbox"},r.a.createElement("label",null,r.a.createElement("input",{type:"checkbox",onChange:e.onChange.bind(e,t.internalValue),checked:-1!==n.indexOf(t.internalValue)}),t.displayValue)))}),o=a.map(function(e){return r.a.createElement("div",{key:e.internalValue},r.a.createElement("label",null,e.displayValue," ,"))});return"edit"===this.props.mode||"create"===this.props.mode?r.a.createElement("div",null,s):r.a.createElement("div",null,o)}return null}}]),t}(J),ce=function(e){function t(){var e;return Object(l.a)(this,t),(e=Object(c.a)(this,Object(u.a)(t).call(this))).state={draftUser:{username:"",password:"",reenter_password:"",default_customer:null,customers:[],full_name:"",profilePic:"profile.jpg",type:"user",ui_permissions:[]},draftDevice:{},deviceMode:"create",mode:"create",error:"",showDelete:!1,userTypes:[],currentCustomer:D.getCustomer(),customers:[],uiPermissions:[],renderPasswordInEditMode:!1},e}return Object(d.a)(t,e),Object(i.a)(t,[{key:"getCustomerDevices",value:function(){return this.state.currentCustomer.devices.map(function(e){return Object.assign({internalValue:e.id,displayValue:e.id})})}},{key:"componentWillMount",value:function(){var e=this,t=D.UIPermissions(this.state.draftUser.type);this.setState({uiPermissions:t});var a=this.props.match.params.username;if(z.userTypes(D.getCustomer().c_id,D.getUser().type).then(function(t){e.setState({userTypes:t})}),$.fetchAllCustomer(D.getUser()).then(function(t){e.setState({customers:t})}),"create"!==a)z.fetchUserById(this.state.currentCustomer.c_id,a).then(function(t){console.log(t),e.setState({draftUser:t,mode:"edit"})}).catch(function(t){e.setState({error:t.message})});else{var n=this.state.draftUser;n.default_customer=D.getCustomer().c_id;var r=Object.assign({},D.getCustomer());r.devices=[],n.customers.push(r),this.setState({mode:"create",draftUser:n})}}},{key:"onSaveHandler",value:function(e){var t=this;e&&e.preventDefault();var a=!1;("create"===this.state.mode||this.state.renderPasswordInEditMode)&&this.state.draftUser.password!==this.state.draftUser.reenter_password&&(a=!0,this.setState({error:"Passwords don't match"})),a||z.updateUser(this.state.currentCustomer.c_id,this.state.draftUser,this.state.mode).then(function(e){t.setState({deviceMode:"create",draftDevice:{},error:null}),t.props.history.push("/users")}).catch(function(e){t.setState({error:e.message})})}},{key:"onCancelHandler",value:function(){this.props.history.push("/users")}},{key:"onSaveDeviceHandler",value:function(e){e&&e.preventDefault(),console.log("saving device info"),this.setState({deviceMode:"create",draftDevice:{},error:null})}},{key:"onCancelDeviceHandler",value:function(e){e&&e.preventDefault(),this.setState({deviceMode:"create",draftDevice:{},error:null})}},{key:"renderError",value:function(){if(this.state.error)return r.a.createElement("div",{className:"error"},this.state.error)}},{key:"onDeleteHandler",value:function(e,t){t&&t.preventDefault(),this.setState({showDelete:!0,draftDevice:e})}},{key:"onEditHandler",value:function(e,t){t&&t.preventDefault(),this.setState({draftDevice:e,deviceMode:"edit"})}},{key:"renderEdit",value:function(e,t){return r.a.createElement("button",{className:"btn btn-info fa fa-edit",onClick:this.onEditHandler.bind(this,t)})}},{key:"renderDelete",value:function(e,t){return r.a.createElement("button",{className:"btn btn-danger fa fa-trash",onClick:this.onDeleteHandler.bind(this,t)})}},{key:"showDeleteRender",value:function(){if(this.state.showDelete){var e=this.state.draftUser;return r.a.createElement(ee.a,{danger:!0,showCancel:!0,confirmBtnText:"Yes, delete it !",confirmBtnBsStyle:"danger",cancelBtnBsStyle:"default",title:"Delete user: "+e.username+" ?",onConfirm:this.deleteUserHandler.bind(this),onCancel:this.cancelDeleteDeviceHandler.bind(this)},"You will not be able to undo this action!")}}},{key:"deleteDeviceHandler",value:function(e){console.log("delete handler"),this.setState({showDelete:!1})}},{key:"cancelDeleteDeviceHandler",value:function(){this.setState({showDelete:!1})}},{key:"onDevicesChange",value:function(e,t,a){var n=a.target.checked,r=this.state.draftUser,s=r.customers.find(function(t){return t.c_id===e});if(s||r.customers.push({c_id:e,devices:[]}),s&&s.devices)if(n){s.devices.find(function(e){return e.id===t})||s.devices.push({id:t})}else{var o=s.devices.findIndex(function(e){return e.id===t});-1!==o&&s.devices.splice(o,1)}this.setState({draftUser:r})}},{key:"checkCustomerDevices",value:function(e,t){var a=this.state.draftUser.customers.find(function(t){return t.c_id===e});return!!(a&&a&&a.devices)&&void 0!==a.devices.find(function(e){return e.id===t})}},{key:"renderPassword",value:function(){return"create"===this.state.mode||this.state.renderPasswordInEditMode?r.a.createElement("div",null,r.a.createElement("div",{className:"form-group"},r.a.createElement("label",{className:"col-sm-4 control-label"},"Password"),r.a.createElement("div",{className:"col-sm-8"},r.a.createElement(q,{type:"password",store:this.state.draftUser,mode:"create",placeholder:"Password",jsonPath:"password"}))),r.a.createElement("div",{className:"form-group"},r.a.createElement("label",{className:"col-sm-4 control-label"},"Re Enter Password"),r.a.createElement("div",{className:"col-sm-8"},r.a.createElement(q,{type:"password",store:this.state.draftUser,mode:"create",placeholder:"Re-enter Password",jsonPath:"reenter_password"})))):"edit"===this.state.mode?r.a.createElement("div",{className:"form-group"},r.a.createElement("label",{className:"col-sm-4 control-label"},"Reset Password"),r.a.createElement("div",{className:"col-sm-8"},r.a.createElement("button",{className:"btn btn-info",onClick:this.resetPassword.bind(this)},"Reset Password"))):null}},{key:"resetPassword",value:function(){this.setState({renderPasswordInEditMode:!0})}},{key:"userTypeChanged",value:function(e){var t=this,a=D.UIPermissions(this.state.draftUser.type),n=this.state.draftUser,r=[];n.ui_permissions.forEach(function(e){-1===a.findIndex(function(t){return t.internalValue===e})&&r.push(e)}),r.forEach(function(e){var t=n.ui_permissions.findIndex(function(t){return t===e});n.ui_permissions.splice(t,1)});var s=[];if("001"!==this.state.currentCustomer.c_id||"delectrik_admin"!==this.state.draftUser.type){var o=[],l=n.customers.find(function(e){return e.c_id===t.state.currentCustomer.c_id});l&&(o=l.devices),n.customers=[];var i=Object.assign(this.state.currentCustomer);i.devices=o,n.customers.push(i)}else n.customers.forEach(function(e){-1===t.state.customers.findIndex(function(t){return t.c_id===e.c_id})&&s.push(e)});s.forEach(function(e){var t=n.customers.find(function(t){return t.c_id===e.c_id});n.customers.splice(t,1)}),this.setState({uiPermissions:a,draftUser:n}),this.forceUpdate()}},{key:"render",value:function(){var e=this,t="create"===this.state.mode?"Add User":"Update "+this.state.draftUser.username,a={};return"001"!==this.state.currentCustomer.c_id||"delectrik_admin"!==this.state.draftUser.type?a=this.state.currentCustomer.devices.map(function(t){return r.a.createElement("div",{key:t.id},r.a.createElement("div",{className:"checkbox"},r.a.createElement("label",null,r.a.createElement("input",{type:"checkbox",onChange:e.onDevicesChange.bind(e,e.state.currentCustomer.c_id,t.id),checked:e.checkCustomerDevices(e.state.currentCustomer.c_id,t.id)}),t.id)))}):"001"===this.state.currentCustomer.c_id&&"delectrik_admin"===this.state.draftUser.type&&this.state.customers&&this.state.customers.length>0&&(a=this.state.customers.map(function(t){return r.a.createElement("div",{key:t.c_id},r.a.createElement("label",null,"Customer: ",t.c_name," -- ",t.c_id),t.devices?t.devices.map(function(a){return r.a.createElement("div",{key:a.id},r.a.createElement("div",{className:"checkbox"},r.a.createElement("label",null,r.a.createElement("input",{type:"checkbox",onChange:e.onDevicesChange.bind(e,t.c_id,a.id),checked:e.checkCustomerDevices(t.c_id,a.id)}),a.id)))}):null,r.a.createElement("br",null))})),r.a.createElement("div",{className:"row"},this.showDeleteRender(),r.a.createElement("div",{className:"col-lg-6"},r.a.createElement("div",{className:"ibox float-e-margins"},r.a.createElement("div",{className:"ibox-title"},r.a.createElement("h5",null,t," ",r.a.createElement("label",{className:"text-danger"},this.state.error))),r.a.createElement("div",{className:"ibox-content"},r.a.createElement("form",{method:"get",className:"form-horizontal"},r.a.createElement("div",{className:"form-group"},r.a.createElement("label",{className:"col-sm-4 control-label"},"Username"),r.a.createElement("div",{className:"col-sm-8"},r.a.createElement(q,{type:"text",store:this.state.draftUser,mode:"edit"===this.state.mode?"readonly":this.state.mode,placeholder:"Username",jsonPath:"username"}))),this.renderPassword(),r.a.createElement("div",{className:"form-group"},r.a.createElement("label",{className:"col-sm-4 control-label"},"Full Name"),r.a.createElement("div",{className:"col-sm-8"},r.a.createElement(q,{type:"text",store:this.state.draftUser,mode:this.state.mode,placeholder:"Name",jsonPath:"full_name"}))),r.a.createElement("div",{className:"form-group"},r.a.createElement("label",{className:"col-sm-4 control-label"},"User Type"),r.a.createElement("div",{className:"col-sm-8"},r.a.createElement(le,{store:this.state.draftUser,options:this.state.userTypes,mode:this.state.mode,placeholder:"Type",jsonPath:"type",onChange:this.userTypeChanged.bind(this)}))),r.a.createElement("div",{className:"form-group"},r.a.createElement("label",{className:"col-sm-4 control-label"},"UI Permissions"),r.a.createElement("div",{className:"col-sm-8"},r.a.createElement(ie,{store:this.state.draftUser,list:this.state.uiPermissions,mode:this.state.mode,jsonPath:"ui_permissions"}))),r.a.createElement("div",{className:"form-group"},r.a.createElement("label",{className:"col-sm-4 control-label"},"Customer Devices"),r.a.createElement("div",{className:"col-sm-8"},a)),r.a.createElement("div",{className:"form-group"},r.a.createElement("div",{className:"col-sm-8 col-sm-offset-4"},r.a.createElement("button",{className:"btn btn-white",onClick:this.onCancelHandler.bind(this)},"Cancel"),r.a.createElement("button",{className:"btn btn-primary",onClick:this.onSaveHandler.bind(this)},"Save changes"))))))))}}]),t}(n.Component),ue=function(e){var t=e.component,a=Object(m.a)(e,["component"]);return r.a.createElement(h.b,Object.assign({},a,{render:function(e){return D.getToken()?r.a.createElement(x,null,r.a.createElement(t,e)):r.a.createElement(h.a,{to:{pathname:"/login",state:{from:e.location}}})}}))},de=function(e){var t=e.component,a=Object(m.a)(e,["component"]);return r.a.createElement(h.b,Object.assign({},a,{render:function(e){return r.a.createElement(E,null,r.a.createElement(t,e))}}))},me=function(e){function t(){return Object(l.a)(this,t),Object(c.a)(this,Object(u.a)(t).apply(this,arguments))}return Object(d.a)(t,e),Object(i.a)(t,[{key:"render",value:function(){return r.a.createElement(f.a,{basename:"/"+v.REACT_APP_TITLE},r.a.createElement(h.d,null,r.a.createElement(ue,{exact:!0,path:"/",component:H}),r.a.createElement(ue,{exact:!0,path:"/changePassword",component:G}),r.a.createElement(de,{exact:!0,path:"/login",component:R}),r.a.createElement(ue,{exact:!0,path:"/dashboard",component:ne}),r.a.createElement(ue,{exact:!0,path:"/download",component:Y}),r.a.createElement(ue,{exact:!0,path:"/changeCustomer",component:ae}),r.a.createElement(ue,{exact:!0,path:"/customers",component:te}),r.a.createElement(ue,{exact:!0,path:"/customers/:c_id",component:re}),r.a.createElement(ue,{exact:!0,path:"/users",component:oe}),r.a.createElement(ue,{exact:!0,path:"/users/:username",component:ce})))}}]),t}(n.Component);Boolean("localhost"===window.location.hostname||"[::1]"===window.location.hostname||window.location.hostname.match(/^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/));a(198),a(199),a(200),a(201),a(202),a(203);k.a.interceptors.request.use(function(e){return D.getToken()&&(e.headers["x-access-token"]=D.getToken()),e},function(e){return Promise.reject(e)}),k.a.interceptors.response.use(function(e){return 401===e.status&&D.logout(),e},function(e){return Promise.reject(e)}),o.a.render(r.a.createElement(me,null),document.getElementById("root")),"serviceWorker"in navigator&&navigator.serviceWorker.ready.then(function(e){e.unregister()})},86:function(e,t,a){e.exports=a(204)},91:function(e,t,a){},92:function(e,t,a){}},[[86,1,2]]]); //# sourceMappingURL=main.01856a9b.chunk.js.map