platypush/platypush/backend/http/webapp/dist/static/js/chunk-74fb6755.ac3b8fd6.js

2 lines
10 KiB
JavaScript

(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-74fb6755"],{"08b6":function(t,e,a){"use strict";a("4abf")},"1ed9":function(t,e,a){"use strict";a.r(e);var n=a("7a23"),r={class:"camera"},i={class:"camera-container"},s={class:"frame-container",ref:"frameContainer"},c={key:0,class:"no-frame"},o={class:"controls"},l={class:"left"},u=Object(n["h"])("i",{class:"fa fa-play"},null,-1),h=Object(n["h"])("i",{class:"fa fa-stop"},null,-1),p=Object(n["h"])("i",{class:"fas fa-camera"},null,-1),d={class:"right"},b=Object(n["h"])("i",{class:"fas fa-volume-mute"},null,-1),f=Object(n["h"])("i",{class:"fas fa-volume-up"},null,-1),m=Object(n["h"])("i",{class:"fas fa-cog"},null,-1),g={class:"audio-container"},O={key:0,autoplay:"",preload:"none",ref:"player"},j=Object(n["g"])(" Your browser does not support audio elements "),y={key:0,class:"url"},v={class:"row"},C=Object(n["h"])("span",{class:"name"},"Stream URL",-1),_={class:"params"},w={class:"row"},S=Object(n["h"])("span",{class:"name"},"Device",-1),x={class:"row"},z=Object(n["h"])("span",{class:"name"},"Width",-1),k={class:"row"},F=Object(n["h"])("span",{class:"name"},"Height",-1),U={class:"row"},I=Object(n["h"])("span",{class:"name"},"Horizontal Flip",-1),M={class:"row"},V=Object(n["h"])("span",{class:"name"},"Vertical Flip",-1),$={class:"row"},P=Object(n["h"])("span",{class:"name"},"Rotate",-1),L={class:"row"},R=Object(n["h"])("span",{class:"name"},"Scale-X",-1),D={class:"row"},A=Object(n["h"])("span",{class:"name"},"Scale-Y",-1),E={class:"row"},T=Object(n["h"])("span",{class:"name"},"Frames per second",-1),q={class:"row"},G=Object(n["h"])("span",{class:"name"},"Grayscale",-1);function H(t,e,a,H,J,Y){var W,X=Object(n["z"])("Slot"),B=Object(n["z"])("Modal");return Object(n["r"])(),Object(n["e"])("div",r,[Object(n["h"])("div",i,[Object(n["h"])("div",s,[t.streaming||t.capturing||t.captured?Object(n["f"])("",!0):(Object(n["r"])(),Object(n["e"])("div",c,"The camera is not active")),Object(n["h"])("img",{class:"frame",src:t.url,ref:"frame",alt:""},null,8,["src"])],512),Object(n["h"])("div",o,[Object(n["h"])("div",l,[t.streaming?(Object(n["r"])(),Object(n["e"])("button",{key:1,type:"button",onClick:e[2]||(e[2]=function(){return t.stopStreaming.apply(t,arguments)}),disabled:t.capturing,title:"Stop video"},[h],8,["disabled"])):(Object(n["r"])(),Object(n["e"])("button",{key:0,type:"button",onClick:e[1]||(e[1]=function(){return Y.startStreaming.apply(Y,arguments)}),disabled:t.capturing,title:"Start video"},[u],8,["disabled"])),t.streaming?Object(n["f"])("",!0):(Object(n["r"])(),Object(n["e"])("button",{key:2,type:"button",onClick:e[3]||(e[3]=function(){return Y.capture.apply(Y,arguments)}),disabled:t.streaming||t.capturing,title:"Take a picture"},[p],8,["disabled"]))]),Object(n["h"])("div",d,[t.audioOn?(Object(n["r"])(),Object(n["e"])("button",{key:1,type:"button",onClick:e[5]||(e[5]=function(){return t.stopAudio.apply(t,arguments)}),title:"Stop audio"},[f])):(Object(n["r"])(),Object(n["e"])("button",{key:0,type:"button",onClick:e[4]||(e[4]=function(){return t.startAudio.apply(t,arguments)}),title:"Start audio"},[b])),Object(n["h"])("button",{type:"button",onClick:e[6]||(e[6]=function(e){return t.$refs.paramsModal.show()}),title:"Settings"},[m])])])]),Object(n["h"])("div",g,[t.audioOn?(Object(n["r"])(),Object(n["e"])("audio",O,[Object(n["h"])("source",{src:"/sound/stream?t=".concat((new Date).getTime()),type:"audio/x-wav;codec=pcm"},null,8,["src"]),j],512)):Object(n["f"])("",!0)]),(null===(W=t.url)||void 0===W?void 0:W.length)?(Object(n["r"])(),Object(n["e"])("div",y,[Object(n["h"])("label",v,[C,Object(n["h"])("input",{name:"url",type:"text",value:Y.fullURL,disabled:"disabled"},null,8,["value"])])])):Object(n["f"])("",!0),Object(n["h"])(B,{ref:"paramsModal",title:"Camera Parameters"},{default:Object(n["H"])((function(){return[Object(n["h"])("div",_,[Object(n["h"])("label",w,[S,Object(n["I"])(Object(n["h"])("input",{name:"device",type:"text","onUpdate:modelValue":e[7]||(e[7]=function(e){return t.attrs.device=e}),onChange:e[8]||(e[8]=function(){return t.onDeviceChanged.apply(t,arguments)})},null,544),[[n["F"],t.attrs.device]])]),Object(n["h"])("label",x,[z,Object(n["I"])(Object(n["h"])("input",{name:"width",type:"text","onUpdate:modelValue":e[9]||(e[9]=function(e){return t.attrs.resolution[0]=e}),onChange:e[10]||(e[10]=function(){return t.onSizeChanged.apply(t,arguments)})},null,544),[[n["F"],t.attrs.resolution[0]]])]),Object(n["h"])("label",k,[F,Object(n["I"])(Object(n["h"])("input",{name:"height",type:"text","onUpdate:modelValue":e[11]||(e[11]=function(e){return t.attrs.resolution[1]=e}),onChange:e[12]||(e[12]=function(){return t.onSizeChanged.apply(t,arguments)})},null,544),[[n["F"],t.attrs.resolution[1]]])]),Object(n["h"])("label",U,[I,Object(n["I"])(Object(n["h"])("input",{name:"horizontal_flip",type:"checkbox","onUpdate:modelValue":e[13]||(e[13]=function(e){return t.attrs.horizontal_flip=e}),onChange:e[14]||(e[14]=function(){return t.onFlipChanged.apply(t,arguments)})},null,544),[[n["E"],t.attrs.horizontal_flip]])]),Object(n["h"])("label",M,[V,Object(n["I"])(Object(n["h"])("input",{name:"vertical_flip",type:"checkbox","onUpdate:modelValue":e[15]||(e[15]=function(e){return t.attrs.vertical_flip=e}),onChange:e[16]||(e[16]=function(){return t.onFlipChanged.apply(t,arguments)})},null,544),[[n["E"],t.attrs.vertical_flip]])]),Object(n["h"])("label",$,[P,Object(n["I"])(Object(n["h"])("input",{name:"rotate",type:"text","onUpdate:modelValue":e[17]||(e[17]=function(e){return t.attrs.rotate=e}),onChange:e[18]||(e[18]=function(){return t.onSizeChanged.apply(t,arguments)})},null,544),[[n["F"],t.attrs.rotate]])]),Object(n["h"])("label",L,[R,Object(n["I"])(Object(n["h"])("input",{name:"scale_x",type:"text","onUpdate:modelValue":e[19]||(e[19]=function(e){return t.attrs.scale_x=e}),onChange:e[20]||(e[20]=function(){return t.onSizeChanged.apply(t,arguments)})},null,544),[[n["F"],t.attrs.scale_x]])]),Object(n["h"])("label",D,[A,Object(n["I"])(Object(n["h"])("input",{name:"scale_y",type:"text","onUpdate:modelValue":e[21]||(e[21]=function(e){return t.attrs.scale_y=e}),onChange:e[22]||(e[22]=function(){return t.onSizeChanged.apply(t,arguments)})},null,544),[[n["F"],t.attrs.scale_y]])]),Object(n["h"])("label",E,[T,Object(n["I"])(Object(n["h"])("input",{name:"fps",type:"text","onUpdate:modelValue":e[23]||(e[23]=function(e){return t.attrs.fps=e}),onChange:e[24]||(e[24]=function(){return t.onFpsChanged.apply(t,arguments)})},null,544),[[n["F"],t.attrs.fps]])]),Object(n["h"])("label",q,[G,Object(n["I"])(Object(n["h"])("input",{name:"grayscale",type:"checkbox","onUpdate:modelValue":e[25]||(e[25]=function(e){return t.attrs.grayscale=e}),onChange:e[26]||(e[26]=function(){return t.onGrayscaleChanged.apply(t,arguments)})},null,544),[[n["E"],t.attrs.grayscale]])]),Object(n["h"])(X)])]})),_:1},512)])}a("99af"),a("4de4"),a("a15b"),a("d81d"),a("4fad"),a("96cf");var J=a("1da1"),Y=a("3835"),W=a("3e54"),X={name:"CameraMixin",mixins:[W["a"]],props:{cameraPlugin:{type:String,required:!0}},data:function(){return{streaming:!1,capturing:!1,captured:!1,audioOn:!1,url:null,attrs:{}}},computed:{params:function(){var t;return{resolution:this.attrs.resolution,device:(null===(t=this.attrs.device)||void 0===t?void 0:t.length)?this.attrs.device:null,horizontal_flip:parseInt(0+this.attrs.horizontal_flip),vertical_flip:parseInt(0+this.attrs.vertical_flip),rotate:parseFloat(this.attrs.rotate),scale_x:parseFloat(this.attrs.scale_x),scale_y:parseFloat(this.attrs.scale_y),fps:parseFloat(this.attrs.fps),grayscale:parseInt(0+this.attrs.grayscale)}}},methods:{getUrl:function(t,e){return"/camera/"+t+"/"+e+"?"+Object.entries(this.params).filter((function(t){return null!=t[1]&&(""+t[1]).length>0})).map((function(t){var e=Object(Y["a"])(t,2),a=e[0],n=e[1];return a+"="+n})).join("&")},_startStreaming:function(t){this.streaming||(this.streaming=!0,this.capturing=!1,this.captured=!1,this.url=this.getUrl(t,"video."+this.attrs.stream_format))},stopStreaming:function(){this.streaming&&(this.streaming=!1,this.capturing=!1,this.url=null)},_capture:function(t){this.capturing||(this.streaming=!1,this.capturing=!0,this.captured=!0,this.url=this.getUrl(t,"photo.jpg")+"&t="+(new Date).getTime())},onFrameLoaded:function(){this.capturing&&(this.capturing=!1)},onDeviceChanged:function(){},onFlipChanged:function(){},onSizeChanged:function(){var t=function(t){return t*Math.PI/180},e=t(this.params.rotate);this.$refs.frameContainer.style.width=Math.round(this.params.scale_x*Math.abs(this.params.resolution[0]*Math.cos(e)+this.params.resolution[1]*Math.sin(e)))+"px",this.$refs.frameContainer.style.height=Math.round(this.params.scale_y*Math.abs(this.params.resolution[0]*Math.sin(e)+this.params.resolution[1]*Math.cos(e)))+"px"},onFpsChanged:function(){},onGrayscaleChanged:function(){},startAudio:function(){this.audioOn=!0},stopAudio:function(){var t=this;return Object(J["a"])(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){while(1)switch(e.prev=e.next){case 0:return t.audioOn=!1,e.next=3,t.request("sound.stop_recording");case 3:case"end":return e.stop()}}),e)})))()}},created:function(){var t=this.$root.config["camera.".concat(this.cameraPlugin)]||{};this.attrs={resolution:t.resolution||[640,480],device:t.device,horizontal_flip:t.horizontal_flip||0,vertical_flip:t.vertical_flip||0,rotate:t.rotate||0,scale_x:t.scale_x||1,scale_y:t.scale_y||1,fps:t.fps||16,grayscale:t.grayscale||0,stream_format:t.stream_format||"mjpeg"}},mounted:function(){var t=this;this.$refs.frame.addEventListener("load",this.onFrameLoaded),this.onSizeChanged(),this.$watch((function(){return t.attrs.resolution}),this.onSizeChanged),this.$watch((function(){return t.attrs.horizontal_flip}),this.onSizeChanged),this.$watch((function(){return t.attrs.vertical_flip}),this.onSizeChanged),this.$watch((function(){return t.attrs.rotate}),this.onSizeChanged),this.$watch((function(){return t.attrs.scale_x}),this.onSizeChanged),this.$watch((function(){return t.attrs.scale_y}),this.onSizeChanged)}},B=X,K=a("714b"),N={name:"Camera",components:{Modal:K["a"]},mixins:[B],props:{cameraPlugin:{type:String,required:!0}},computed:{fullURL:function(){return"".concat(window.location.protocol,"//").concat(window.location.host).concat(this.url)}},methods:{startStreaming:function(){this._startStreaming(this.cameraPlugin)},capture:function(){this._capture(this.cameraPlugin)}}};a("08b6");N.render=H;e["default"]=N},"4abf":function(t,e,a){}}]);
//# sourceMappingURL=chunk-74fb6755.ac3b8fd6.js.map