\n\n\n\n\n\n","import { render } from \"./Device.vue?vue&type=template&id=6437b841&scoped=true\"\nimport script from \"./Device.vue?vue&type=script&lang=js\"\nexport * from \"./Device.vue?vue&type=script&lang=js\"\n\nimport \"./Device.vue?vue&type=style&index=0&id=6437b841&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-6437b841\"]])\n\nexport default __exports__","\n
\n \n \n\n
\n
\n
\n
Devices
\n
\n\n
\n \n
\n
\n\n
\n
\n
Actions
\n
\n\n
\n
\n
Rename Group
\n
\n \n
\n
\n\n
\n
Remove Group
\n
\n \n
\n
\n
\n
\n
\n
\n\n\n\n\n\n","import { render } from \"./Group.vue?vue&type=template&id=7667f7ba&scoped=true\"\nimport script from \"./Group.vue?vue&type=script&lang=js\"\nexport * from \"./Group.vue?vue&type=script&lang=js\"\n\nimport \"./Group.vue?vue&type=style&index=0&id=7667f7ba&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-7667f7ba\"]])\n\nexport default __exports__","import { render } from \"./Index.vue?vue&type=template&id=b15233ac\"\nimport script from \"./Index.vue?vue&type=script&lang=js\"\nexport * from \"./Index.vue?vue&type=script&lang=js\"\n\nimport \"./Index.vue?vue&type=style&index=0&id=b15233ac&lang=scss\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__"],"names":["ColorConverter","constructor","ranges","this","hue","sat","bri","ct","attr","Object","keys","normalize","x","xRange","yRange","hslToRgb","h","s","l","a","Math","min","f","n","k","color","max","round","rgbToHsl","r","g","b","d","parseInt","xyToRgb","y","brightness","z","Y","toFixed","X","Z","red","green","blue","pow","isNaN","map","c","rgbToXY","parseFloat","rgbToBri","getRGB","rgb","getXY","xy","toRGB","console","debug","toXY","toHSL","hexToRgb","hex","slice","_","rgbToHex","toString","length","join","class","ref","_createElementBlock","_hoisted_1","$props","withRange","_normalizeClass","withLabel","_toDisplayString","range","_createElementVNode","_hoisted_4","type","step","disabled","value","onInput","_cache","_withModifiers","args","$options","onUpdate","onChange","_hoisted_6","_hoisted_7","name","emits","props","Number","Boolean","default","Array","methods","event","update","target","$emit","$refs","sliderWidth","clientWidth","percent","innerWidth","thumb","style","left","transform","track","width","mounted","$watch","newValue","__exports__","render","onClick","checked","_hoisted_2","_hoisted_3","_renderSlot","_ctx","$slots","undefined","_hoisted_36","_hoisted_39","$data","loading","_createBlock","_component_Loading","key","_createVNode","_component_Modal","title","status","info","state","permit_join","network","_hoisted_9","_hoisted_10","channel","_hoisted_12","_hoisted_13","version","config","mqtt","_hoisted_15","_hoisted_16","server","serial","_hoisted_18","_hoisted_19","port","coordinator","_hoisted_21","_hoisted_22","meta","_hoisted_24","_hoisted_25","_hoisted_26","maintrel","majorrel","minorrel","_hoisted_27","_hoisted_28","revision","_hoisted_30","_hoisted_31","selected","view","$event","_Fragment","_renderList","views","enabled","toUpperCase","replace","_hoisted_34","addGroup","_component_Dropdown","_component_DropdownItem","text","infoModal","show","permitJoin","factoryReset","refresh","_hoisted_41","_hoisted_42","devices","_hoisted_43","_hoisted_44","_hoisted_45","device","id","_component_Device","groups","deviceId","onSelect","onRename","refreshDevices","onRemove","onGroupsEdit","refreshGroups","_hoisted_46","_hoisted_47","_hoisted_48","_hoisted_49","group","_component_Group","groupId","onEdit","_hoisted_17","_hoisted_70","_hoisted_71","_hoisted_76","_hoisted_77","_hoisted_79","_hoisted_80","onSubmit","manageGroups","associatedGroups","has","friendly_name","ieee_address","_hoisted_8","hidden","editName","rename","_hoisted_11","_hoisted_14","_hoisted_20","network_address","_hoisted_23","definition","vendor","_hoisted_29","model","_hoisted_32","_hoisted_33","model_id","_hoisted_35","description","_hoisted_37","_hoisted_38","software_build_id","_hoisted_40","date_code","power_source","displayedValues","_hoisted_50","_hoisted_51","property","_hoisted_52","rgbColor","saturation","_hoisted_53","unit","_hoisted_56","_component_ToggleSwitch","value_on","writable","setValue","value_min","value_max","_component_Slider","_hoisted_59","readable","_hoisted_61","values","option","_hoisted_63","i","_hoisted_65","_hoisted_57","_hoisted_67","_hoisted_68","_hoisted_69","groupsModal","otaUpdatesAvailable","installOtaUpdates","checkOtaUpdates","_hoisted_74","_hoisted_73","_hoisted_75","remove","components","Modal","ToggleSwitch","Slider","Loading","mixins","Utils","required","data","computed","exposes","extractValues","extractValue","root","features","feature","ret","mergeValues","obj","access","entries","filter","v","reduce","converter","satAttr","Set","members","member","request","trim","newName","force","confirm","value_toggle","value_off","split","hsl","querySelectorAll","element","add","editGroups","async","Promise","all","action","update_available","notify","image","iconClass","subscribe","properties","unmounted","unsubscribe","_hoisted_5","toggleDevice","devicesByAddress","entry","prompt","ieeeAddress","method","Dropdown","DropdownItem","Device","Group","modal","visible","refreshInfo","updateProperties","permit","seconds","setTimeout","addToGroup","self","created","error"],"sourceRoot":""}
\ No newline at end of file
+{"version":3,"file":"static/js/1259.810bfb69.js","mappings":"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","sources":["webpack://platypush/./src/components/panels/Light/color.js","webpack://platypush/./src/components/elements/Slider.vue","webpack://platypush/./src/components/elements/Slider.vue?787f","webpack://platypush/./src/components/elements/ToggleSwitch.vue","webpack://platypush/./src/components/elements/ToggleSwitch.vue?94aa","webpack://platypush/./src/components/panels/ZigbeeMqtt/Index.vue","webpack://platypush/./src/components/panels/ZigbeeMqtt/Device.vue","webpack://platypush/./src/components/panels/ZigbeeMqtt/Device.vue?8b6d","webpack://platypush/./src/components/panels/ZigbeeMqtt/Group.vue","webpack://platypush/./src/components/panels/ZigbeeMqtt/Group.vue?46cd","webpack://platypush/./src/components/panels/ZigbeeMqtt/Index.vue?dac0"],"sourcesContent":["export class ColorConverter {\n constructor(ranges) {\n this.ranges = {\n hue: [0, 360],\n sat: [0, 100],\n bri: [0, 100],\n ct: [154, 500],\n }\n\n if (ranges)\n for (const attr of Object.keys(this.ranges))\n if (ranges[attr])\n this.ranges[attr] = ranges[attr]\n }\n\n normalize(x, xRange, yRange) {\n return yRange[0] + (((x-xRange[0]) * (yRange[1]-yRange[0])) / (xRange[1]-xRange[0]))\n }\n\n hslToRgb(h, s, l) {\n [h, s, l] = [\n this.normalize(h, this.ranges.hue, [0, 360]),\n this.normalize(s, this.ranges.sat, [0, 100]),\n this.normalize(l, this.ranges.bri, [0, 100]),\n ]\n\n l /= 100\n const a = s * Math.min(l, 1 - l) / 100\n const f = n => {\n const k = (n + h / 30) % 12\n const color = l - a * Math.max(Math.min(k - 3, 9 - k, 1), -1)\n return Math.round(255 * color)\n }\n\n return [f(0), f(8), f(4)]\n }\n\n rgbToHsl(r, g, b){\n r /= 255\n g /= 255\n b /= 255;\n const max = Math.max(r, g, b), min = Math.min(r, g, b);\n let h, s, l = (max + min) / 2;\n\n if(max === min){\n h = s = 0; // achromatic\n } else {\n const d = max - min;\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n\n switch(max){\n case r: h = (g - b) / d + (g < b ? 6 : 0); break;\n case g: h = (b - r) / d + 2; break;\n case b: h = (r - g) / d + 4; break;\n }\n h /= 6;\n }\n\n return [\n parseInt(this.normalize(h, [0, 1], this.ranges.hue)),\n parseInt(this.normalize(s, [0, 1], this.ranges.sat)),\n parseInt(this.normalize(l, [0, 1], this.ranges.bri)),\n ]\n }\n\n xyToRgb(x, y, brightness) {\n // Set to maximum brightness if no custom value was given (Not the slick ECMAScript 6 way for compatibility reasons)\n if (brightness == null)\n brightness = this.ranges.bri[1];\n\n const z = 1.0 - x - y;\n const Y = (brightness / (this.ranges.bri[1]-1)).toFixed(2);\n const X = (Y / y) * x;\n const Z = (Y / y) * z;\n\n //Convert to RGB using Wide RGB D65 conversion\n let red \t= X * 1.656492 - Y * 0.354851 - Z * 0.255038;\n let green = -X * 0.707196 + Y * 1.655397 + Z * 0.036152;\n let blue \t= X * 0.051713 - Y * 0.121364 + Z * 1.011530;\n\n //If red, green or blue is larger than 1.0 set it back to the maximum of 1.0\n if (red > blue && red > green && red > 1.0) {\n green = green / red;\n blue = blue / red;\n red = 1.0;\n } else if (green > blue && green > red && green > 1.0) {\n red = red / green;\n blue = blue / green;\n green = 1.0;\n } else if (blue > red && blue > green && blue > 1.0) {\n red = red / blue;\n green = green / blue;\n blue = 1.0;\n }\n\n //Reverse gamma correction\n red \t= red <= 0.0031308 ? 12.92 * red : (1.0 + 0.055) * Math.pow(red, (1.0 / 2.4)) - 0.055;\n green \t= green <= 0.0031308 ? 12.92 * green : (1.0 + 0.055) * Math.pow(green, (1.0 / 2.4)) - 0.055;\n blue \t= blue <= 0.0031308 ? 12.92 * blue : (1.0 + 0.055) * Math.pow(blue, (1.0 / 2.4)) - 0.055;\n\n //Convert normalized decimal to decimal\n red \t= Math.round(red * 255);\n green \t= Math.round(green * 255);\n blue \t= Math.round(blue * 255);\n\n if (isNaN(red))\n red = 0;\n if (isNaN(green))\n green = 0;\n if (isNaN(blue))\n blue = 0;\n\n return [red, green, blue].map(\n (c) => Math.min(Math.max(0, c), 255)) // lgtm [js/automatic-semicolon-insertion]\n }\n\n rgbToXY(red, green, blue) {\n if (red > 1) { red /= 255; }\n if (green > 1) { green /= 255; }\n if (blue > 1) { blue /= 255; }\n\n //Apply a gamma correction to the RGB values, which makes the color more vivid and more the like the color displayed on the screen of your device\n red \t= (red > 0.04045) ? Math.pow((red + 0.055) / (1.0 + 0.055), 2.4) : (red / 12.92);\n green \t= (green > 0.04045) ? Math.pow((green + 0.055) / (1.0 + 0.055), 2.4) : (green / 12.92);\n blue \t= (blue > 0.04045) ? Math.pow((blue + 0.055) / (1.0 + 0.055), 2.4) : (blue / 12.92);\n\n //RGB values to XYZ using the Wide RGB D65 conversion formula\n const X \t\t= red * 0.664511 + green * 0.154324 + blue * 0.162028;\n const Y \t\t= red * 0.283881 + green * 0.668433 + blue * 0.047685;\n const Z \t\t= red * 0.000088 + green * 0.072310 + blue * 0.986039;\n\n //Calculate the xy values from the XYZ values\n let x \t\t= parseFloat((X / (X + Y + Z)).toFixed(4));\n let y \t\t= parseFloat((Y / (X + Y + Z)).toFixed(4));\n\n if (isNaN(x))\n x = 0;\n if (isNaN(y))\n y = 0;\n\n return [x, y];\n }\n\n rgbToBri(red, green, blue) {\n return Math.min(2 * this.rgbToHsl(red, green, blue)[2], this.ranges.bri[1])\n }\n\n getRGB(color) {\n if (color.red != null && color.green != null && color.blue != null)\n return [color.red, color.green, color.blue]\n if (color.r != null && color.g != null && color.b != null)\n return [color.r, color.g, color.b]\n if (color.rgb)\n return color.rgb\n }\n\n getXY(color) {\n if (color.x != null && color.y != null)\n return [color.x, color.y]\n if (color.xy)\n return color.xy\n }\n\n toRGB(color) {\n const rgb = this.getRGB(color)\n if (rgb)\n return rgb\n\n const xy = this.getXY(color)\n if (xy && color.bri)\n return this.xyToRgb(...xy, color.bri)\n if (color.hue && color.sat && color.bri)\n return this.hslToRgb(color.hue, color.sat, color.bri)\n\n console.debug('Could not determine color space')\n console.debug(color)\n }\n\n toXY(color) {\n const xy = this.getXY(color)\n if (xy && color.bri)\n return [xy[0], xy[1], color.bri]\n\n const rgb = this.getRGB(color)\n if (rgb)\n return this.rgbToXY(...rgb)\n\n if (color.hue && color.sat && color.bri) {\n const rgb = this.hslToRgb(color.hue, color.sat, color.bri)\n return this.rgbToXY(...rgb)\n }\n\n console.debug('Could not determine color space')\n console.debug(color)\n }\n\n toHSL(color) {\n if (color.hue && color.sat && color.bri)\n return [color.hue, color.sat, color.bri]\n\n const rgb = this.getRGB(color)\n if (rgb)\n return this.rgbToHsl(...rgb)\n\n const xy = this.getXY(color)\n if (xy && color.bri) {\n const rgb = this.xyToRgb(...xy, color.bri)\n return this.rgbToHsl(...rgb)\n }\n\n console.debug('Could not determine color space')\n console.debug(color)\n }\n\n hexToRgb(hex) {\n return [\n hex.slice(1, 3),\n hex.slice(3, 5),\n hex.slice(5, 7),\n ].map(_ => parseInt(_, 16))\n }\n\n rgbToHex(rgb) {\n return '#' + rgb.map((x) => {\n let hex = x.toString(16)\n if (hex.length < 2)\n hex = '0' + hex\n return hex\n }).join('')\n }\n}\n","\n \n\n\n\n\n\n","import { render } from \"./Slider.vue?vue&type=template&id=4b38623f&scoped=true\"\nimport script from \"./Slider.vue?vue&type=script&lang=js\"\nexport * from \"./Slider.vue?vue&type=script&lang=js\"\n\nimport \"./Slider.vue?vue&type=style&index=0&id=4b38623f&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-4b38623f\"]])\n\nexport default __exports__","\n
\n \n \n \n
\n\n\n\n\n\n","import { render } from \"./ToggleSwitch.vue?vue&type=template&id=a6396ae8&scoped=true\"\nimport script from \"./ToggleSwitch.vue?vue&type=script&lang=js\"\nexport * from \"./ToggleSwitch.vue?vue&type=script&lang=js\"\n\nimport \"./ToggleSwitch.vue?vue&type=style&index=0&id=a6396ae8&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-a6396ae8\"]])\n\nexport default __exports__","\n
\n\n\n\n\n\n","import { render } from \"./Header.vue?vue&type=template&id=7e4bd102&scoped=true\"\nimport script from \"./Header.vue?vue&type=script&lang=js\"\nexport * from \"./Header.vue?vue&type=script&lang=js\"\n\nimport \"./Header.vue?vue&type=style&index=0&id=7e4bd102&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-7e4bd102\"]])\n\nexport default __exports__","import { render } from \"./Playlist.vue?vue&type=template&id=05e23a52&scoped=true\"\nimport script from \"./Playlist.vue?vue&type=script&lang=js\"\nexport * from \"./Playlist.vue?vue&type=script&lang=js\"\n\nimport \"./Playlist.vue?vue&type=style&index=0&id=05e23a52&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-05e23a52\"]])\n\nexport default __exports__","\n \n\n
\n
\n \n
\n \n\n \n
\n\n
\n \n \n \n\n \n\n \n
\n \n
\n\n
\n
\n No tracks found\n
\n\n
\n
\n
\n {{ track.title || '[No Title]' }}\n
\n\n
\n \n
\n\n
\n \n
\n
\n\n
\n \n\n \n \n \n \n \n \n \n \n \n
\n
\n
\n
\n\n
\n
\n \n
\n \n
\n\n
\n \n \n \n\n \n
\n \n
\n\n
\n
\n No playlists found\n
\n\n
\n
\n \n
\n\n
\n \n \n \n \n \n \n \n \n
\n
\n
\n
\n\n\n\n\n\n","import { render } from \"./Playlists.vue?vue&type=template&id=614005f4&scoped=true\"\nimport script from \"./Playlists.vue?vue&type=script&lang=js\"\nexport * from \"./Playlists.vue?vue&type=script&lang=js\"\n\nimport \"./Playlists.vue?vue&type=style&index=0&id=614005f4&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-614005f4\"]])\n\nexport default __exports__","\n
\n
\n \n
\n\n \n \n\n \n \n \n \n\n
\n
\n
\n
\n {{ result.title || '[No Title]' }}\n
\n\n \n \n
\n\n
\n \n\n \n \n \n \n \n \n \n \n
\n
\n
\n
\n\n\n\n\n\n","import { render } from \"./Search.vue?vue&type=template&id=6dd57d0b&scoped=true\"\nimport script from \"./Search.vue?vue&type=script&lang=js\"\nexport * from \"./Search.vue?vue&type=script&lang=js\"\n\nimport \"./Search.vue?vue&type=style&index=0&id=6dd57d0b&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-6dd57d0b\"]])\n\nexport default __exports__","\n
\n \n\n \n \n \n\n
\n
\n
\n \n
\n
\n
..
\n
\n
\n\n
\n
\n
\n \n \n
\n\n
\n
\n \n \n
\n\n
\n \n \n
\n
\n
\n\n
\n \n\n \n \n \n \n \n \n \n \n
\n
\n
\n
\n\n\n\n\n\n","import { render } from \"./Library.vue?vue&type=template&id=74e2a8c9&scoped=true\"\nimport script from \"./Library.vue?vue&type=script&lang=js\"\nexport * from \"./Library.vue?vue&type=script&lang=js\"\n\nimport \"./Library.vue?vue&type=style&index=0&id=74e2a8c9&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-74e2a8c9\"]])\n\nexport default __exports__","import { render } from \"./Index.vue?vue&type=template&id=32bb6da2&scoped=true\"\nimport script from \"./Index.vue?vue&type=script&lang=js\"\nexport * from \"./Index.vue?vue&type=script&lang=js\"\n\nimport \"./Index.vue?vue&type=style&index=0&id=32bb6da2&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-32bb6da2\"]])\n\nexport default __exports__"],"names":["class","_createElementVNode","$props","loading","_createBlock","_component_Loading","key","_component_MediaView","pluginName","status","track","$options","onPlay","_cache","$event","_ctx","$emit","onPause","onStop","onPrevious","onNext","onSetVolume","onSeek","onConsume","onRepeat","onRandom","onSearch","search","_hoisted_1","_createVNode","_component_Nav","$data","selectedView","onInput","_hoisted_2","_component_Playlist","tracks","devices","selectedDevice","activeDevice","onClear","onSwap","onAdd","onRemove","onMove","onSave","onInfo","onAddToPlaylist","openAddToPlaylist","onRefreshStatus","refreshStatus","onSelectDevice","selectDevice","_component_Playlists","playlists","editedPlaylist","editedPlaylistTracks","onLoad","onPlaylistEdit","onLoadTrack","onRemoveTrack","onPlaylistAdd","onTrackMove","_component_Search","results","searchResults","_component_Library","libraryResults","path","onCd","_hoisted_3","_component_Modal","title","ref","trackInfo","_createElementBlock","_hoisted_4","file","_hoisted_5","_hoisted_6","_toDisplayString","artist","_hoisted_8","_hoisted_9","_hoisted_10","href","$route","fullPath","onClick","_withModifiers","_hoisted_12","_hoisted_13","album","_hoisted_15","_hoisted_16","_hoisted_17","date","_hoisted_19","_hoisted_20","time","_hoisted_22","_hoisted_23","convertTime","_hoisted_25","_hoisted_26","disc","_hoisted_28","_hoisted_29","url","_hoisted_31","_hoisted_32","_hoisted_33","uri","target","_hoisted_35","onClose","addToPlaylistTrack","onOpen","selectedPlaylists","Array","length","keys","map","_hoisted_36","type","placeholder","playlistFilter","_hoisted_37","_Fragment","_renderList","playlist","i","_normalizeClass","hidden","name","toLowerCase","indexOf","checked","onChange","_component_FormFooter","args","addToPlaylist","_hoisted_40","_renderSlot","$slots","undefined","__exports__","views","view","displayName","selected","iconClass","emits","props","String","collapsed","Boolean","default","Object","playing","library","_hoisted_7","_component_MusicHeader","filter","_component_Dropdown","_component_DropdownItem","text","disabled","playlistSave","selectedTracks","selectionMode","Set","addTrack","device","id","active","selectedTracksSet","has","playingPos","displayedTracks","onDragstart","onTrackDragStart","onDragend","onTrackDragEnd","onDragover","onTrackDragOver","draggable","onTrackClick","onDblclick","pos","state","paused","_hoisted_14","_hoisted_18","mixins","MediaUtils","components","DropdownItem","Dropdown","MusicHeader","Loading","data","infoTrack","sourcePos","targetPos","computed","this","positions","self","methods","event","shiftKey","sort","idx","ctrlKey","splice","push","prompt","$refs","body","querySelectorAll","forEach","classList","remove","from","to","add","mounted","$watch","trackElement","offset","offsetTop","parseFloat","getComputedStyle","header","$el","height","scrollTo","trackFilter","play","_hoisted_21","_hoisted_24","_hoisted_27","_hoisted_30","displayedPlaylists","Number","editor","formCollapsed","_hoisted_11","clear","onSubmit","filteredQuery","query","any","result","selectedResults","resultClick","parseInt","load","FormFooter","entries","o","reduce","obj","k","v","size","min","Math","max","delete","back","displayedResults","directory","split","pop","slice","join","Utils","Modal","Nav","MediaView","Playlist","Playlists","Search","Library","required","config","onStatusEvent","plugin_name","onPlaylistEvent","onNewPlayingTrack","notify","html","image","playlistsModal","isVisible","subscribe","info","unmounted","unsubscribe","render"],"sourceRoot":""}
\ No newline at end of file
+{"version":3,"file":"static/js/2986.e98b3f37.js","mappings":"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","sources":["webpack://platypush/./src/components/panels/Music/Index.vue","webpack://platypush/./src/components/elements/FormFooter.vue","webpack://platypush/./src/components/elements/FormFooter.vue?94ab","webpack://platypush/./src/components/panels/Music/Nav.vue","webpack://platypush/./src/components/panels/Music/Nav.vue?b815","webpack://platypush/./src/components/panels/Music/Playlist.vue","webpack://platypush/./src/components/panels/Music/Header.vue","webpack://platypush/./src/components/panels/Music/Header.vue?7826","webpack://platypush/./src/components/panels/Music/Playlist.vue?b3da","webpack://platypush/./src/components/panels/Music/Playlists.vue","webpack://platypush/./src/components/panels/Music/Playlists.vue?6fa1","webpack://platypush/./src/components/panels/Music/Search.vue","webpack://platypush/./src/components/panels/Music/Search.vue?7e62","webpack://platypush/./src/components/panels/Music/Library.vue","webpack://platypush/./src/components/panels/Music/Library.vue?ee0e","webpack://platypush/./src/components/panels/Music/Index.vue?aab7"],"sourcesContent":["\n \n\n \n \n
\n \n
\n\n
\n \n\n \n\n \n\n \n
\n \n \n\n
\n \n
\n
\n
File
\n \n
\n\n
\n
Artist
\n
\n \n
\n
\n\n
\n
Title
\n \n
\n\n
\n
Album
\n
\n \n
\n
\n\n
\n
Date
\n \n
\n\n
\n
Duration
\n \n
\n\n
\n
Track
\n \n
\n\n
\n
Disc
\n \n
\n\n
\n
URL
\n
\n \n
\n
\n
\n \n
\n\n
\n false)\">\n
\n \n
\n\n
\n \n
\n\n \n \n \n \n
\n\n\n\n\n\n","\n \n\n\n\n\n\n","import { render } from \"./FormFooter.vue?vue&type=template&id=2495ce8a&scoped=true\"\nimport script from \"./FormFooter.vue?vue&type=script&lang=js\"\nexport * from \"./FormFooter.vue?vue&type=script&lang=js\"\n\nimport \"./FormFooter.vue?vue&type=style&index=0&id=2495ce8a&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-2495ce8a\"]])\n\nexport default __exports__","\n \n\n\n\n\n\n","import { render } from \"./Nav.vue?vue&type=template&id=edee6494&scoped=true\"\nimport script from \"./Nav.vue?vue&type=script&lang=js\"\nexport * from \"./Nav.vue?vue&type=script&lang=js\"\n\nimport \"./Nav.vue?vue&type=style&index=0&id=edee6494&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-edee6494\"]])\n\nexport default __exports__","\n \n\n
\n\n\n\n\n\n","import { render } from \"./Index.vue?vue&type=template&id=5fa5e0e4&scoped=true\"\nimport script from \"./Index.vue?vue&type=script&lang=js\"\nexport * from \"./Index.vue?vue&type=script&lang=js\"\n\nimport \"./Index.vue?vue&type=style&index=0&id=5fa5e0e4&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-5fa5e0e4\"]])\n\nexport default __exports__","\n \n \n Are you sure that you want to delete this entity?
\n Note: you should only delete an entity if its plugin has been disabled\n or the entity is no longer reachable.
\n Otherwise, the entity will simply be created again upon the next scan.\n \n\n
\n\n\n\n\n\n","import { render } from \"./NoItems.vue?vue&type=template&id=6fec32b5&scoped=true\"\nimport script from \"./NoItems.vue?vue&type=script&lang=js\"\nexport * from \"./NoItems.vue?vue&type=script&lang=js\"\n\nimport \"./NoItems.vue?vue&type=style&index=0&id=6fec32b5&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-6fec32b5\"]])\n\nexport default __exports__","import { render } from \"./Index.vue?vue&type=template&id=5fa5e0e4&scoped=true\"\nimport script from \"./Index.vue?vue&type=script&lang=js\"\nexport * from \"./Index.vue?vue&type=script&lang=js\"\n\nimport \"./Index.vue?vue&type=style&index=0&id=5fa5e0e4&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-5fa5e0e4\"]])\n\nexport default __exports__","\n \n \n Are you sure that you want to delete this entity?
\n Note: you should only delete an entity if its plugin has been disabled\n or the entity is no longer reachable.
\n Otherwise, the entity will simply be created again upon the next scan.\n \n\n
\n\n\n\n\n\n","import { render } from \"./Node.vue?vue&type=template&id=3da196a6&scoped=true\"\nimport script from \"./Node.vue?vue&type=script&lang=js\"\nexport * from \"./Node.vue?vue&type=script&lang=js\"\n\nimport \"./Node.vue?vue&type=style&index=0&id=3da196a6&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-3da196a6\"]])\n\nexport default __exports__","\n \n
\n \n
\n\n
\n \n
\n \n\n\n\n\n\n","import { render } from \"./Alert.vue?vue&type=template&id=c1863a74&scoped=true\"\nimport script from \"./Alert.vue?vue&type=script&lang=js\"\nexport * from \"./Alert.vue?vue&type=script&lang=js\"\n\nimport \"./Alert.vue?vue&type=style&index=0&id=c1863a74&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-c1863a74\"]])\n\nexport default __exports__","\n
\n
\n
\n \n {{ value.label }}\n
\n
\n\n
\n
\n
Value
\n
\n
\n \n \n
\n\n
\n
\n
\n \n
\n\n
= 0\">\n
\n
\n \n \n
\n
\n \n
\n
\n
\n \n
\n
\n\n
= 0\">\n \n
\n\n
\n \n
\n
\n\n \n
\n
\n
\n\n
\n
Remove From Scene
\n
\n \n
\n
\n\n
\n
Add To Scene
\n
\n \n \n \n
\n
\n\n
\n
Help
\n \n
\n\n
\n
Value ID
\n \n
\n\n
\n
ID on Network
\n \n
\n\n
\n
Command Class
\n \n
\n\n
\n
Last Update
\n \n
\n
\n
\n\n\n\n\n\n","import { render } from \"./Value.vue?vue&type=template&id=0021cd76&scoped=true\"\nimport script from \"./Value.vue?vue&type=script&lang=js\"\nexport * from \"./Value.vue?vue&type=script&lang=js\"\n\nimport \"./Value.vue?vue&type=style&index=0&id=0021cd76&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-0021cd76\"]])\n\nexport default __exports__","import { render } from \"./Zwave.vue?vue&type=template&id=2a026312\"\nimport script from \"./Zwave.vue?vue&type=script&lang=js\"\nexport * from \"./Zwave.vue?vue&type=script&lang=js\"\n\nimport \"./Zwave.vue?vue&type=style&index=0&id=2a026312&lang=scss\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__"],"names":["class","ref","_createElementBlock","_hoisted_1","$props","withRange","_normalizeClass","withLabel","_toDisplayString","range","_createElementVNode","_hoisted_4","type","min","max","step","disabled","value","onInput","_cache","_withModifiers","args","$options","onUpdate","onChange","_hoisted_6","_hoisted_7","name","emits","props","Number","Boolean","default","Array","methods","event","this","update","target","$emit","$refs","sliderWidth","clientWidth","percent","innerWidth","thumb","style","left","transform","track","width","mounted","$watch","newValue","__exports__","render","onClick","checked","_hoisted_2","_hoisted_3","_renderSlot","_ctx","$slots","undefined","placeholder","_hoisted_31","_hoisted_33","_hoisted_38","_hoisted_42","_hoisted_46","_hoisted_64","_hoisted_70","_hoisted_71","_hoisted_74","_hoisted_75","_hoisted_79","_createVNode","_component_Modal","title","$data","loading","status","_createBlock","_component_Loading","key","_hoisted_5","state","_hoisted_8","device","_hoisted_10","_hoisted_11","_hoisted_12","_Fragment","_renderList","stats","_hoisted_15","_hoisted_16","_hoisted_17","_hoisted_18","selected","groupId","_hoisted_19","Object","values","nodes","filter","n","groups","associations","indexOf","node_id","node","$event","addToGroup","_component_Alert","_hoisted_22","_hoisted_23","onSubmit","addNode","_hoisted_24","_hoisted_25","commandRunning","closeAddNodeModal","_hoisted_27","_hoisted_28","view","views","id","toUpperCase","slice","replace","_hoisted_30","addScene","_component_Dropdown","_component_DropdownItem","text","networkInfoModalOpen","startNetwork","stopNetwork","openAddNodeModal","removeNode","switchAll","cancelCommand","killCommand","receiveConfiguration","createNewPrimary","transferPrimaryRole","healNetwork","softReset","hardReset","refresh","_hoisted_35","_hoisted_36","keys","length","_hoisted_37","_hoisted_39","nodeId","_component_Node","pluginName","onSelect","onNodeClick","_hoisted_40","_hoisted_41","_hoisted_43","group","_component_Group","map","reduce","owner","onOpenAddNodesToGroup","addNodesToGroupModal","show","_hoisted_44","scenes","_hoisted_45","_hoisted_47","scene","sceneId","label","_hoisted_49","_hoisted_50","_hoisted_51","_hoisted_53","_hoisted_54","_hoisted_55","_component_ToggleSwitch","activateScene","_hoisted_56","_hoisted_57","_hoisted_58","id_on_network","_hoisted_59","valuesMap","_hoisted_60","data","_hoisted_62","removeValueFromScene","valueId","_hoisted_66","_hoisted_67","_hoisted_68","removeScene","renameScene","_hoisted_77","_hoisted_78","_hoisted_80","_hoisted_82","_hoisted_83","_component_Value","onAddToScene","addValueToScene","onRemoveFromScene","onRefresh","refreshNodes","index","_hoisted_9","max_associations","_hoisted_13","i","removeFromGroup","_hoisted_20","_hoisted_21","_hoisted_26","mixins","Utils","String","required","zrequest","method","request","mixin","confirm","group_id","group_index","_hoisted_97","_hoisted_98","_hoisted_100","_hoisted_101","_hoisted_103","_hoisted_104","_hoisted_106","_hoisted_107","_hoisted_109","_hoisted_110","_hoisted_112","_hoisted_113","hidden","editMode","editName","_hoisted_14","onEditMode","location","editLocation","_hoisted_29","_hoisted_34","role","neighbours","neighbour","is_ready","is_failed","_hoisted_52","manufacturer_id","product_type","product_name","_hoisted_61","manufacturer_name","_hoisted_65","capabilities","join","command_classes","_hoisted_73","g","home_id","_hoisted_76","toString","is_awake","is_locked","last_update","_hoisted_85","_hoisted_86","formatDateTime","baud_rate","_hoisted_88","_hoisted_89","max_baud_rate","_hoisted_91","_hoisted_92","_hoisted_94","_hoisted_95","_hoisted_96","removeFailedNode","replaceFailedNode","heal","replicationSend","requestNetworkUpdate","requestNeighbourUpdate","notify","mode","form","input","querySelector","setTimeout","focus","select","new_name","console","log","close","onTouch","components","Modal","modal","hide","is_read_only","units","onValueChange","data_items","_component_Slider","addValueToSceneItems","_hoisted_32","scene_id","help","value_id","command_class_name","command_class","_hoisted_48","Slider","Dropdown","DropdownItem","ToggleSwitch","computed","prompt","trim","new_label","image","iconClass","parentElement","parseInt","parseFloat","Alert","Group","Loading","Node","Value","switches","dimmers","sensors","battery_levels","power_levels","bulbs","doorlocks","usercodes","thermostats","protections","refreshGroups","refreshScenes","refreshValues","item","refreshStatus","onNodeUpdate","networkInfoModal","onCommandEvent","error","state_description","error_description","resetAddNodeModal","addNodeModal","$el","querySelectorAll","forEach","el","attributes","addNodeForm","timeout","noNodeNameModal","subscribe","unmounted","eventType","unsubscribe"],"sourceRoot":""}
\ No newline at end of file
+{"version":3,"file":"static/js/7880.1141a7d1.js","mappings":"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","sources":["webpack://platypush/./src/components/elements/Slider.vue","webpack://platypush/./src/components/elements/Slider.vue?787f","webpack://platypush/./src/components/elements/ToggleSwitch.vue","webpack://platypush/./src/components/elements/ToggleSwitch.vue?94aa","webpack://platypush/./src/components/panels/Zwave/Zwave.vue","webpack://platypush/./src/components/panels/Zwave/Group.vue","webpack://platypush/./src/components/panels/Zwave/mixin.js","webpack://platypush/./src/components/panels/Zwave/Group.vue?d37f","webpack://platypush/./src/components/panels/Zwave/Node.vue","webpack://platypush/./src/components/panels/Zwave/Node.vue?4a32","webpack://platypush/./src/components/elements/Alert.vue","webpack://platypush/./src/components/elements/Alert.vue?2ca5","webpack://platypush/./src/components/panels/Zwave/Value.vue","webpack://platypush/./src/components/panels/Zwave/Value.vue?c87f","webpack://platypush/./src/components/panels/Zwave/Zwave.vue?dac2"],"sourcesContent":["\n \n\n\n\n\n\n","import { render } from \"./Slider.vue?vue&type=template&id=4b38623f&scoped=true\"\nimport script from \"./Slider.vue?vue&type=script&lang=js\"\nexport * from \"./Slider.vue?vue&type=script&lang=js\"\n\nimport \"./Slider.vue?vue&type=style&index=0&id=4b38623f&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-4b38623f\"]])\n\nexport default __exports__","\n
\n \n \n \n
\n\n\n\n\n\n","import { render } from \"./ToggleSwitch.vue?vue&type=template&id=a6396ae8&scoped=true\"\nimport script from \"./ToggleSwitch.vue?vue&type=script&lang=js\"\nexport * from \"./ToggleSwitch.vue?vue&type=script&lang=js\"\n\nimport \"./ToggleSwitch.vue?vue&type=style&index=0&id=a6396ae8&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-a6396ae8\"]])\n\nexport default __exports__","\n
\n\n\n\n\n\n","import { render } from \"./Node.vue?vue&type=template&id=3da196a6&scoped=true\"\nimport script from \"./Node.vue?vue&type=script&lang=js\"\nexport * from \"./Node.vue?vue&type=script&lang=js\"\n\nimport \"./Node.vue?vue&type=style&index=0&id=3da196a6&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-3da196a6\"]])\n\nexport default __exports__","\n \n
\n \n
\n\n
\n \n
\n \n\n\n\n\n\n","import { render } from \"./Alert.vue?vue&type=template&id=c1863a74&scoped=true\"\nimport script from \"./Alert.vue?vue&type=script&lang=js\"\nexport * from \"./Alert.vue?vue&type=script&lang=js\"\n\nimport \"./Alert.vue?vue&type=style&index=0&id=c1863a74&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-c1863a74\"]])\n\nexport default __exports__","\n
\n
\n
\n \n {{ value.label }}\n
\n
\n\n
\n
\n
Value
\n
\n
\n \n \n
\n\n
\n
\n
\n \n
\n\n
= 0\">\n
\n
\n \n \n
\n
\n \n
\n
\n
\n \n
\n
\n\n
= 0\">\n \n
\n\n
\n \n
\n
\n\n \n
\n
\n
\n\n
\n
Remove From Scene
\n
\n \n
\n
\n\n
\n
Add To Scene
\n
\n \n \n \n
\n
\n\n
\n
Help
\n \n
\n\n
\n
Value ID
\n \n
\n\n
\n
ID on Network
\n \n
\n\n
\n
Command Class
\n \n
\n\n
\n
Last Update
\n \n
\n
\n
\n\n\n\n\n\n","import { render } from \"./Value.vue?vue&type=template&id=0021cd76&scoped=true\"\nimport script from \"./Value.vue?vue&type=script&lang=js\"\nexport * from \"./Value.vue?vue&type=script&lang=js\"\n\nimport \"./Value.vue?vue&type=style&index=0&id=0021cd76&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-0021cd76\"]])\n\nexport default __exports__","import { render } from \"./Zwave.vue?vue&type=template&id=2a026312\"\nimport script from \"./Zwave.vue?vue&type=script&lang=js\"\nexport * from \"./Zwave.vue?vue&type=script&lang=js\"\n\nimport \"./Zwave.vue?vue&type=style&index=0&id=2a026312&lang=scss\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__"],"names":["class","ref","_createElementBlock","_hoisted_1","$props","withRange","_normalizeClass","withLabel","_toDisplayString","range","_createElementVNode","_hoisted_4","type","min","max","step","disabled","value","onInput","_cache","_withModifiers","args","$options","onUpdate","onChange","_hoisted_6","_hoisted_7","name","emits","props","Number","Boolean","default","Array","methods","event","this","update","target","$emit","$refs","sliderWidth","clientWidth","percent","innerWidth","thumb","style","left","transform","track","width","mounted","$watch","newValue","__exports__","render","onClick","checked","_hoisted_2","_hoisted_3","_renderSlot","_ctx","$slots","undefined","placeholder","_hoisted_31","_hoisted_33","_hoisted_38","_hoisted_42","_hoisted_46","_hoisted_64","_hoisted_70","_hoisted_71","_hoisted_74","_hoisted_75","_hoisted_79","_createVNode","_component_Modal","title","$data","loading","status","_createBlock","_component_Loading","key","_hoisted_5","state","_hoisted_8","device","_hoisted_10","_hoisted_11","_hoisted_12","_Fragment","_renderList","stats","_hoisted_15","_hoisted_16","_hoisted_17","_hoisted_18","selected","groupId","_hoisted_19","Object","values","nodes","filter","n","groups","associations","indexOf","node_id","node","$event","addToGroup","_component_Alert","_hoisted_22","_hoisted_23","onSubmit","addNode","_hoisted_24","_hoisted_25","commandRunning","closeAddNodeModal","_hoisted_27","_hoisted_28","view","views","id","toUpperCase","slice","replace","_hoisted_30","addScene","_component_Dropdown","_component_DropdownItem","text","networkInfoModalOpen","startNetwork","stopNetwork","openAddNodeModal","removeNode","switchAll","cancelCommand","killCommand","receiveConfiguration","createNewPrimary","transferPrimaryRole","healNetwork","softReset","hardReset","refresh","_hoisted_35","_hoisted_36","keys","length","_hoisted_37","_hoisted_39","nodeId","_component_Node","pluginName","onSelect","onNodeClick","_hoisted_40","_hoisted_41","_hoisted_43","group","_component_Group","map","reduce","owner","onOpenAddNodesToGroup","addNodesToGroupModal","show","_hoisted_44","scenes","_hoisted_45","_hoisted_47","scene","sceneId","label","_hoisted_49","_hoisted_50","_hoisted_51","_hoisted_53","_hoisted_54","_hoisted_55","_component_ToggleSwitch","activateScene","_hoisted_56","_hoisted_57","_hoisted_58","id_on_network","_hoisted_59","valuesMap","_hoisted_60","data","_hoisted_62","removeValueFromScene","valueId","_hoisted_66","_hoisted_67","_hoisted_68","removeScene","renameScene","_hoisted_77","_hoisted_78","_hoisted_80","_hoisted_82","_hoisted_83","_component_Value","onAddToScene","addValueToScene","onRemoveFromScene","onRefresh","refreshNodes","index","_hoisted_9","max_associations","_hoisted_13","i","removeFromGroup","_hoisted_20","_hoisted_21","_hoisted_26","mixins","Utils","String","required","zrequest","method","request","mixin","confirm","group_id","group_index","_hoisted_97","_hoisted_98","_hoisted_100","_hoisted_101","_hoisted_103","_hoisted_104","_hoisted_106","_hoisted_107","_hoisted_109","_hoisted_110","_hoisted_112","_hoisted_113","hidden","editMode","editName","_hoisted_14","onEditMode","location","editLocation","_hoisted_29","_hoisted_34","role","neighbours","neighbour","is_ready","is_failed","_hoisted_52","manufacturer_id","product_type","product_name","_hoisted_61","manufacturer_name","_hoisted_65","capabilities","join","command_classes","_hoisted_73","g","home_id","_hoisted_76","toString","is_awake","is_locked","last_update","_hoisted_85","_hoisted_86","formatDateTime","baud_rate","_hoisted_88","_hoisted_89","max_baud_rate","_hoisted_91","_hoisted_92","_hoisted_94","_hoisted_95","_hoisted_96","removeFailedNode","replaceFailedNode","heal","replicationSend","requestNetworkUpdate","requestNeighbourUpdate","notify","mode","form","input","querySelector","setTimeout","focus","select","new_name","console","log","close","onTouch","components","Modal","modal","hide","is_read_only","units","onValueChange","data_items","_component_Slider","addValueToSceneItems","_hoisted_32","scene_id","help","value_id","command_class_name","command_class","_hoisted_48","Slider","Dropdown","DropdownItem","ToggleSwitch","computed","prompt","trim","new_label","image","iconClass","parentElement","parseInt","parseFloat","Alert","Group","Loading","Node","Value","switches","dimmers","sensors","battery_levels","power_levels","bulbs","doorlocks","usercodes","thermostats","protections","refreshGroups","refreshScenes","refreshValues","item","refreshStatus","onNodeUpdate","networkInfoModal","onCommandEvent","error","state_description","error_description","resetAddNodeModal","addNodeModal","$el","querySelectorAll","forEach","el","attributes","addNodeForm","timeout","noNodeNameModal","subscribe","unmounted","eventType","unsubscribe"],"sourceRoot":""}
\ No newline at end of file
diff --git a/platypush/backend/http/webapp/dist/static/js/7968.8d53b4c3.js b/platypush/backend/http/webapp/dist/static/js/7968.d5185bfd.js
similarity index 81%
rename from platypush/backend/http/webapp/dist/static/js/7968.8d53b4c3.js
rename to platypush/backend/http/webapp/dist/static/js/7968.d5185bfd.js
index e7a866e6..410a6a7f 100644
--- a/platypush/backend/http/webapp/dist/static/js/7968.8d53b4c3.js
+++ b/platypush/backend/http/webapp/dist/static/js/7968.d5185bfd.js
@@ -1,2 +1,2 @@
-"use strict";(self["webpackChunkplatypush"]=self["webpackChunkplatypush"]||[]).push([[7968],{1065:function(e,t,s){s.d(t,{Z:function(){return i}});s(7658);var n=s(8637),a={name:"Utils",mixins:[n.Z],computed:{audioExtensions(){return new Set(["3gp","aa","aac","aax","act","aiff","amr","ape","au","awb","dct","dss","dvf","flac","gsm","iklax","ivs","m4a","m4b","m4p","mmf","mp3","mpc","msv","nmf","nsf","ogg,","opus","ra,","raw","sln","tta","vox","wav","wma","wv","webm","8svx"])},videoExtensions(){return new Set(["webm","mkv","flv","flv","vob","ogv","ogg","drc","gif","gifv","mng","avi","mts","m2ts","mov","qt","wmv","yuv","rm","rmvb","asf","amv","mp4","m4p","m4v","mpg","mp2","mpeg","mpe","mpv","mpg","mpeg","m2v","m4v","svi","3gp","3g2","mxf","roq","nsv","flv","f4v","f4p","f4a","f4b"])},mediaExtensions(){return new Set([...this.videoExtensions,...this.audioExtensions])}},methods:{convertTime(e){e=parseFloat(e);const t={};t.h=""+parseInt(e/3600),t.m=""+parseInt(e/60-60*t.h),t.s=""+parseInt(e-(3600*t.h+60*t.m));for(const n of["m","s"])parseInt(t[n])<10&&(t[n]="0"+t[n]);const s=[];return parseInt(t.h)&&s.push(t.h),s.push(t.m,t.s),s.join(":")},async startStreaming(e,t,s=!1){let n=e,a=null;e instanceof Object?(n=e.url,a=e.subtitles):e={url:n};const r=await this.request(`${t}.start_streaming`,{media:n,subtitles:a,download:s});return{...e,...r}},async stopStreaming(e,t){await this.request(`${t}.stop_streaming`,{media_id:e})}}};const r=a;var i=r},7968:function(e,t,s){s.d(t,{Z:function(){return k}});var n=s(6252);const a={class:"torrent-container"},r={class:"header-container"},i={class:"view-container"};function l(e,t,s,l,o,d){const c=(0,n.up)("Header"),m=(0,n.up)("TorrentView");return(0,n.wg)(),(0,n.iD)("div",a,[(0,n._)("div",r,[(0,n.Wm)(c,{onTorrentAdd:t[0]||(t[0]=e=>d.download(e))})]),(0,n._)("div",i,[(0,n.Wm)(m,{"plugin-name":s.pluginName},null,8,["plugin-name"])])])}var o=s(3577),d=s(9963);const c={class:"row"},m={class:"col-s-12 col-m-9 col-l-7 left side"},u={class:"search-box"};function v(e,t,s,a,r,i){return(0,n.wg)(),(0,n.iD)("div",{class:(0,o.C_)(["header",{"with-filter":e.filterVisible}])},[(0,n._)("div",c,[(0,n._)("div",m,[(0,n._)("form",{onSubmit:t[1]||(t[1]=(0,d.iM)((t=>e.$emit("torrent-add",r.torrentURL)),["prevent"]))},[(0,n._)("label",u,[(0,n.wy)((0,n._)("input",{type:"search",placeholder:"Add torrent URL","onUpdate:modelValue":t[0]||(t[0]=e=>r.torrentURL=e)},null,512),[[d.nr,r.torrentURL]])])],32)])])],2)}var f={name:"Header",emits:["torrent-add"],data(){return{torrentURL:""}}},p=s(3744);const h=(0,p.Z)(f,[["render",v],["__scopeId","data-v-33115af0"]]);var w=h,g=s(562),_=s(8637),y={name:"Panel",components:{TorrentView:g.Z,Header:w},mixins:[_.Z],props:{pluginName:{type:String,required:!0}},methods:{async download(e){await this.request(`${this.pluginName}.download`,{torrent:e})}}};const C=(0,p.Z)(y,[["render",l],["__scopeId","data-v-1502d8a8"]]);var k=C},562:function(e,t,s){s.d(t,{Z:function(){return ue}});var n=s(6252),a=s(3577);const r=e=>((0,n.dD)("data-v-7351a8a4"),e=e(),(0,n.Cn)(),e),i={key:1,class:"torrent-transfers fade-in"},l={key:0,class:"no-content"},o=["onClick"],d={class:"col-8 left side"},c=["textContent"],m={class:"col-2 right side"},u=["textContent"],v={class:"col-2 right side"},f={key:0,class:"modal-body torrent-info"},p={key:0,class:"row"},h=r((()=>(0,n._)("div",{class:"attr"},"Name",-1))),w=["textContent"],g={key:1,class:"row"},_=r((()=>(0,n._)("div",{class:"attr"},"State",-1))),y=["textContent"],C={class:"row"},k=r((()=>(0,n._)("div",{class:"attr"},"Progress",-1))),x=["textContent"],I={class:"row"},b=r((()=>(0,n._)("div",{class:"attr"},"DL rate",-1))),D=["textContent"],T={class:"row"},q=r((()=>(0,n._)("div",{class:"attr"},"UL rate",-1))),z=["textContent"],S={class:"row"},E=r((()=>(0,n._)("div",{class:"attr"},"Size",-1))),$=["textContent"],Z={key:2,class:"row"},R=r((()=>(0,n._)("div",{class:"attr"},"Remaining",-1))),U=["textContent"],L={class:"row"},N=r((()=>(0,n._)("div",{class:"attr"},"URL",-1))),W={class:"value nowrap"},j=["href","textContent"],V={class:"row"},P=r((()=>(0,n._)("div",{class:"attr"},"Peers",-1))),F=["textContent"],M={key:3,class:"row"},H=r((()=>(0,n._)("div",{class:"attr"},"Started",-1))),A=["textContent"],O={key:4,class:"row"},K=r((()=>(0,n._)("div",{class:"attr"},"Finished",-1))),Y=["textContent"],B={key:5,class:"row"},Q=r((()=>(0,n._)("div",{class:"attr"},"Save path",-1))),G=["textContent"],J={key:0,class:"modal-body torrent-files"},X={class:"col-1 icon"},ee={key:1,class:"fa fa-file"},te=["textContent"];function se(e,t,s,r,se,ne){const ae=(0,n.up)("Loading"),re=(0,n.up)("DropdownItem"),ie=(0,n.up)("Dropdown"),le=(0,n.up)("Modal");return se.loading?((0,n.wg)(),(0,n.j4)(ae,{key:0})):((0,n.wg)(),(0,n.iD)("div",i,[Object.keys(se.transfers).length?(0,n.kq)("",!0):((0,n.wg)(),(0,n.iD)("div",l,"No torrent transfers in progress")),((0,n.wg)(!0),(0,n.iD)(n.HY,null,(0,n.Ko)(se.transfers,((s,r)=>((0,n.wg)(),(0,n.iD)("div",{class:(0,a.C_)(["row item",{selected:se.selectedItem===r}]),key:r,onClick:e=>se.selectedItem=r},[(0,n._)("div",d,[(0,n._)("i",{class:(0,a.C_)(["icon fa",{"fa-check":null!=s.finish_date,"fa-play":!s.finish_date&&"downloading"===s.state,"fa-pause":!s.finish_date&&"paused"===s.state,"fa-stop":!s.finish_date&&"stopped"===s.state}])},null,2),(0,n._)("div",{class:"title",textContent:(0,a.zw)(s.name||s.hash||s.url)},null,8,c)]),(0,n._)("div",m,[(0,n._)("span",{textContent:(0,a.zw)(`${s.progress}%`)},null,8,u)]),(0,n._)("div",v,[(0,n.Wm)(ie,{title:"Actions","icon-class":"fa fa-ellipsis-h",onClick:e=>se.selectedItem=r},{default:(0,n.w5)((()=>["downloading"===s.state?((0,n.wg)(),(0,n.j4)(re,{key:0,"icon-class":"fa fa-pause",text:"Pause transfer",onClick:e=>ne.pause(ne.torrentId(s))},null,8,["onClick"])):(0,n.kq)("",!0),"paused"===s.state?((0,n.wg)(),(0,n.j4)(re,{key:1,"icon-class":"fa fa-play",text:"Resume transfer",onClick:e=>ne.resume(ne.torrentId(s))},null,8,["onClick"])):(0,n.kq)("",!0),(0,n.Wm)(re,{"icon-class":"fa fa-trash",text:"Remove transfer",onClick:e=>ne.remove(ne.torrentId(s))},null,8,["onClick"]),(0,n.Wm)(re,{"icon-class":"fa fa-folder",text:"View files",onClick:t[0]||(t[0]=t=>e.$refs.torrentFiles.isVisible=!0)}),(0,n.Wm)(re,{"icon-class":"fa fa-info",text:"Torrent info",onClick:t[1]||(t[1]=t=>e.$refs.torrentInfo.isVisible=!0)})])),_:2},1032,["onClick"])])],10,o)))),128)),(0,n.Wm)(le,{ref:"torrentInfo",title:"Torrent info",width:"80%"},{default:(0,n.w5)((()=>[null!=se.selectedItem&&se.transfers[se.selectedItem]?((0,n.wg)(),(0,n.iD)("div",f,[se.transfers[se.selectedItem].name?((0,n.wg)(),(0,n.iD)("div",p,[h,(0,n._)("div",{class:"value",textContent:(0,a.zw)(se.transfers[se.selectedItem].name)},null,8,w)])):(0,n.kq)("",!0),se.transfers[se.selectedItem].state?((0,n.wg)(),(0,n.iD)("div",g,[_,(0,n._)("div",{class:"value",textContent:(0,a.zw)(se.transfers[se.selectedItem].state)},null,8,y)])):(0,n.kq)("",!0),(0,n._)("div",C,[k,(0,n._)("div",{class:"value",textContent:(0,a.zw)(`${se.transfers[se.selectedItem].progress||0}%`)},null,8,x)]),(0,n._)("div",I,[b,(0,n._)("div",{class:"value",textContent:(0,a.zw)(`${e.convertSize(se.transfers[se.selectedItem].download_rate||0)}/s`)},null,8,D)]),(0,n._)("div",T,[q,(0,n._)("div",{class:"value",textContent:(0,a.zw)(`${e.convertSize(se.transfers[se.selectedItem].upload_rate||0)}/s`)},null,8,z)]),(0,n._)("div",S,[E,(0,n._)("div",{class:"value",textContent:(0,a.zw)(e.convertSize(se.transfers[se.selectedItem].size||0))},null,8,$)]),se.transfers[se.selectedItem].remaining_bytes?((0,n.wg)(),(0,n.iD)("div",Z,[R,(0,n._)("div",{class:"value",textContent:(0,a.zw)(e.convertSize(se.transfers[se.selectedItem].remaining_bytes))},null,8,U)])):(0,n.kq)("",!0),(0,n._)("div",L,[N,(0,n._)("div",W,[(0,n._)("a",{href:se.transfers[se.selectedItem].url,target:"_blank",textContent:(0,a.zw)(se.transfers[se.selectedItem].url)},null,8,j)])]),(0,n._)("div",V,[P,(0,n._)("div",{class:"value",textContent:(0,a.zw)(se.transfers[se.selectedItem].peers||0)},null,8,F)]),se.transfers[se.selectedItem].start_date?((0,n.wg)(),(0,n.iD)("div",M,[H,(0,n._)("div",{class:"value",textContent:(0,a.zw)(e.formatDateTime(se.transfers[se.selectedItem].start_date))},null,8,A)])):(0,n.kq)("",!0),se.transfers[se.selectedItem].finish_date?((0,n.wg)(),(0,n.iD)("div",O,[K,(0,n._)("div",{class:"value",textContent:(0,a.zw)(e.formatDateTime(se.transfers[se.selectedItem].finish_date))},null,8,Y)])):(0,n.kq)("",!0),se.transfers[se.selectedItem].save_path?((0,n.wg)(),(0,n.iD)("div",B,[Q,(0,n._)("div",{class:"value",textContent:(0,a.zw)(se.transfers[se.selectedItem].save_path)},null,8,G)])):(0,n.kq)("",!0)])):(0,n.kq)("",!0)])),_:1},512),(0,n.Wm)(le,{ref:"torrentFiles",title:"Torrent files",width:"80%"},{default:(0,n.w5)((()=>[null!=se.selectedItem&&se.transfers[se.selectedItem]?((0,n.wg)(),(0,n.iD)("div",J,[((0,n.wg)(!0),(0,n.iD)(n.HY,null,(0,n.Ko)(ne.relativeFiles,((t,r)=>((0,n.wg)(),(0,n.iD)("div",{class:"row",key:t},[(0,n._)("div",X,[s.isMedia&&e.mediaExtensions.has(t.split(".").pop())?((0,n.wg)(),(0,n.j4)(ie,{key:0},{default:(0,n.w5)((()=>[(0,n.Wm)(re,{"icon-class":"fa fa-play",text:"Play",onClick:t=>e.$emit("play",{url:`file://${se.transfers[se.selectedItem].files[r]}`,type:"file"})},null,8,["onClick"])])),_:2},1024)):((0,n.wg)(),(0,n.iD)("i",ee))]),(0,n._)("div",{class:"col-11 name",textContent:(0,a.zw)(t)},null,8,te)])))),128))])):(0,n.kq)("",!0)])),_:1},512)]))}var ne=s(6791),ae=s(8637),re=s(1065),ie=s(3493),le=s(8832),oe=s(1693),de={name:"View",emits:["play","play-with-captions"],components:{Dropdown:le.Z,DropdownItem:oe.Z,Loading:ne.Z,Modal:ie.Z},mixins:[ae.Z,re.Z],props:{pluginName:{type:String,required:!0},isMedia:{type:Boolean,default:!1}},data(){return{loading:!1,transfers:{},selectedItem:null}},computed:{relativeFiles(){return null!=this.selectedItem&&this.transfers[this.selectedItem]?.files?.length?this.transfers[this.selectedItem].files.map((e=>e.split("/").pop())):[]}},methods:{torrentId(e){return e?.hash&&e.hash.length?e.hash:e.url},async refresh(){this.loading=!0;try{this.transfers=Object.values(await this.request(`${this.pluginName}.status`)||{}).reduce(((e,t)=>(e[this.torrentId(t)]=t,e)),{})}finally{this.loading=!1}},async pause(e){await this.request(`${this.pluginName}.pause`,{torrent:e}),await this.refresh()},async resume(e){await this.request(`${this.pluginName}.resume`,{torrent:e}),await this.refresh()},async remove(e){await this.request(`${this.pluginName}.remove`,{torrent:e}),await this.refresh()},onTorrentUpdate(e){this.transfers[this.torrentId(e)]=e},onTorrentRemove(e){const t=this.torrentId(e);t in this.transfers&&delete this.transfers[t]}},mounted(){this.refresh(),this.subscribe(this.onTorrentUpdate,"on-torrent-update","platypush.message.event.torrent.TorrentQueuedEvent","platypush.message.event.torrent.TorrentDownloadedMetadataEvent","platypush.message.event.torrent.TorrentDownloadStartEvent","platypush.message.event.torrent.TorrentDownloadProgressEvent","platypush.message.event.torrent.TorrentResumedEvent","platypush.message.event.torrent.TorrentPausedEvent","platypush.message.event.torrent.TorrentSeedingStartEvent","platypush.message.event.torrent.TorrentStateChangeEvent","platypush.message.event.torrent.TorrentDownloadStopEvent","platypush.message.event.torrent.TorrentDownloadCompletedEvent"),this.subscribe(this.onTorrentRemove,"on-torrent-remove","platypush.message.event.torrent.TorrentRemovedEvent")},destroy(){this.unsubscribe("on-torrent-update"),this.unsubscribe("on-torrent-remove")}},ce=s(3744);const me=(0,ce.Z)(de,[["render",se],["__scopeId","data-v-7351a8a4"]]);var ue=me}}]);
-//# sourceMappingURL=7968.8d53b4c3.js.map
\ No newline at end of file
+"use strict";(self["webpackChunkplatypush"]=self["webpackChunkplatypush"]||[]).push([[7968],{1065:function(e,t,s){s.d(t,{Z:function(){return i}});s(7658);var n=s(8637),a={name:"Utils",mixins:[n.Z],computed:{audioExtensions(){return new Set(["3gp","aa","aac","aax","act","aiff","amr","ape","au","awb","dct","dss","dvf","flac","gsm","iklax","ivs","m4a","m4b","m4p","mmf","mp3","mpc","msv","nmf","nsf","ogg,","opus","ra,","raw","sln","tta","vox","wav","wma","wv","webm","8svx"])},videoExtensions(){return new Set(["webm","mkv","flv","flv","vob","ogv","ogg","drc","gif","gifv","mng","avi","mts","m2ts","mov","qt","wmv","yuv","rm","rmvb","asf","amv","mp4","m4p","m4v","mpg","mp2","mpeg","mpe","mpv","mpg","mpeg","m2v","m4v","svi","3gp","3g2","mxf","roq","nsv","flv","f4v","f4p","f4a","f4b"])},mediaExtensions(){return new Set([...this.videoExtensions,...this.audioExtensions])}},methods:{convertTime(e){e=parseFloat(e);const t={};t.h=""+parseInt(e/3600),t.m=""+parseInt(e/60-60*t.h),t.s=""+parseInt(e-(3600*t.h+60*t.m));for(const n of["m","s"])parseInt(t[n])<10&&(t[n]="0"+t[n]);const s=[];return parseInt(t.h)&&s.push(t.h),s.push(t.m,t.s),s.join(":")},async startStreaming(e,t,s=!1){let n=e,a=null;e instanceof Object?(n=e.url,a=e.subtitles):e={url:n};const r=await this.request(`${t}.start_streaming`,{media:n,subtitles:a,download:s});return{...e,...r}},async stopStreaming(e,t){await this.request(`${t}.stop_streaming`,{media_id:e})}}};const r=a;var i=r},7968:function(e,t,s){s.d(t,{Z:function(){return k}});var n=s(6252);const a={class:"torrent-container"},r={class:"header-container"},i={class:"view-container"};function l(e,t,s,l,o,d){const c=(0,n.up)("Header"),m=(0,n.up)("TorrentView");return(0,n.wg)(),(0,n.iD)("div",a,[(0,n._)("div",r,[(0,n.Wm)(c,{onTorrentAdd:t[0]||(t[0]=e=>d.download(e))})]),(0,n._)("div",i,[(0,n.Wm)(m,{"plugin-name":s.pluginName},null,8,["plugin-name"])])])}var o=s(3577),d=s(9963);const c={class:"row"},m={class:"col-s-12 col-m-9 col-l-7 left side"},u={class:"search-box"};function v(e,t,s,a,r,i){return(0,n.wg)(),(0,n.iD)("div",{class:(0,o.C_)(["header",{"with-filter":e.filterVisible}])},[(0,n._)("div",c,[(0,n._)("div",m,[(0,n._)("form",{onSubmit:t[1]||(t[1]=(0,d.iM)((t=>e.$emit("torrent-add",r.torrentURL)),["prevent"]))},[(0,n._)("label",u,[(0,n.wy)((0,n._)("input",{type:"search",placeholder:"Add torrent URL","onUpdate:modelValue":t[0]||(t[0]=e=>r.torrentURL=e)},null,512),[[d.nr,r.torrentURL]])])],32)])])],2)}var f={name:"Header",emits:["torrent-add"],data(){return{torrentURL:""}}},p=s(3744);const h=(0,p.Z)(f,[["render",v],["__scopeId","data-v-33115af0"]]);var w=h,g=s(562),_=s(8637),y={name:"Panel",components:{TorrentView:g.Z,Header:w},mixins:[_.Z],props:{pluginName:{type:String,required:!0}},methods:{async download(e){await this.request(`${this.pluginName}.download`,{torrent:e})}}};const C=(0,p.Z)(y,[["render",l],["__scopeId","data-v-1502d8a8"]]);var k=C},562:function(e,t,s){s.d(t,{Z:function(){return ue}});var n=s(6252),a=s(3577);const r=e=>((0,n.dD)("data-v-7351a8a4"),e=e(),(0,n.Cn)(),e),i={key:1,class:"torrent-transfers fade-in"},l={key:0,class:"no-content"},o=["onClick"],d={class:"col-8 left side"},c=["textContent"],m={class:"col-2 right side"},u=["textContent"],v={class:"col-2 right side"},f={key:0,class:"modal-body torrent-info"},p={key:0,class:"row"},h=r((()=>(0,n._)("div",{class:"attr"},"Name",-1))),w=["textContent"],g={key:1,class:"row"},_=r((()=>(0,n._)("div",{class:"attr"},"State",-1))),y=["textContent"],C={class:"row"},k=r((()=>(0,n._)("div",{class:"attr"},"Progress",-1))),x=["textContent"],I={class:"row"},b=r((()=>(0,n._)("div",{class:"attr"},"DL rate",-1))),D=["textContent"],T={class:"row"},q=r((()=>(0,n._)("div",{class:"attr"},"UL rate",-1))),z=["textContent"],S={class:"row"},E=r((()=>(0,n._)("div",{class:"attr"},"Size",-1))),$=["textContent"],Z={key:2,class:"row"},R=r((()=>(0,n._)("div",{class:"attr"},"Remaining",-1))),U=["textContent"],L={class:"row"},N=r((()=>(0,n._)("div",{class:"attr"},"URL",-1))),W={class:"value nowrap"},j=["href","textContent"],V={class:"row"},P=r((()=>(0,n._)("div",{class:"attr"},"Peers",-1))),F=["textContent"],M={key:3,class:"row"},H=r((()=>(0,n._)("div",{class:"attr"},"Started",-1))),A=["textContent"],O={key:4,class:"row"},K=r((()=>(0,n._)("div",{class:"attr"},"Finished",-1))),Y=["textContent"],B={key:5,class:"row"},Q=r((()=>(0,n._)("div",{class:"attr"},"Save path",-1))),G=["textContent"],J={key:0,class:"modal-body torrent-files"},X={class:"col-1 icon"},ee={key:1,class:"fa fa-file"},te=["textContent"];function se(e,t,s,r,se,ne){const ae=(0,n.up)("Loading"),re=(0,n.up)("DropdownItem"),ie=(0,n.up)("Dropdown"),le=(0,n.up)("Modal");return se.loading?((0,n.wg)(),(0,n.j4)(ae,{key:0})):((0,n.wg)(),(0,n.iD)("div",i,[Object.keys(se.transfers).length?(0,n.kq)("",!0):((0,n.wg)(),(0,n.iD)("div",l,"No torrent transfers in progress")),((0,n.wg)(!0),(0,n.iD)(n.HY,null,(0,n.Ko)(se.transfers,((s,r)=>((0,n.wg)(),(0,n.iD)("div",{class:(0,a.C_)(["row item",{selected:se.selectedItem===r}]),key:r,onClick:e=>se.selectedItem=r},[(0,n._)("div",d,[(0,n._)("i",{class:(0,a.C_)(["icon fa",{"fa-check":null!=s.finish_date,"fa-play":!s.finish_date&&"downloading"===s.state,"fa-pause":!s.finish_date&&"paused"===s.state,"fa-stop":!s.finish_date&&"stopped"===s.state}])},null,2),(0,n._)("div",{class:"title",textContent:(0,a.zw)(s.name||s.hash||s.url)},null,8,c)]),(0,n._)("div",m,[(0,n._)("span",{textContent:(0,a.zw)(`${s.progress}%`)},null,8,u)]),(0,n._)("div",v,[(0,n.Wm)(ie,{title:"Actions","icon-class":"fa fa-ellipsis-h",onClick:e=>se.selectedItem=r},{default:(0,n.w5)((()=>["downloading"===s.state?((0,n.wg)(),(0,n.j4)(re,{key:0,"icon-class":"fa fa-pause",text:"Pause transfer",onClick:e=>ne.pause(ne.torrentId(s))},null,8,["onClick"])):(0,n.kq)("",!0),"paused"===s.state?((0,n.wg)(),(0,n.j4)(re,{key:1,"icon-class":"fa fa-play",text:"Resume transfer",onClick:e=>ne.resume(ne.torrentId(s))},null,8,["onClick"])):(0,n.kq)("",!0),(0,n.Wm)(re,{"icon-class":"fa fa-trash",text:"Remove transfer",onClick:e=>ne.remove(ne.torrentId(s))},null,8,["onClick"]),(0,n.Wm)(re,{"icon-class":"fa fa-folder",text:"View files",onClick:t[0]||(t[0]=t=>e.$refs.torrentFiles.isVisible=!0)}),(0,n.Wm)(re,{"icon-class":"fa fa-info",text:"Torrent info",onClick:t[1]||(t[1]=t=>e.$refs.torrentInfo.isVisible=!0)})])),_:2},1032,["onClick"])])],10,o)))),128)),(0,n.Wm)(le,{ref:"torrentInfo",title:"Torrent info",width:"80%"},{default:(0,n.w5)((()=>[null!=se.selectedItem&&se.transfers[se.selectedItem]?((0,n.wg)(),(0,n.iD)("div",f,[se.transfers[se.selectedItem].name?((0,n.wg)(),(0,n.iD)("div",p,[h,(0,n._)("div",{class:"value",textContent:(0,a.zw)(se.transfers[se.selectedItem].name)},null,8,w)])):(0,n.kq)("",!0),se.transfers[se.selectedItem].state?((0,n.wg)(),(0,n.iD)("div",g,[_,(0,n._)("div",{class:"value",textContent:(0,a.zw)(se.transfers[se.selectedItem].state)},null,8,y)])):(0,n.kq)("",!0),(0,n._)("div",C,[k,(0,n._)("div",{class:"value",textContent:(0,a.zw)(`${se.transfers[se.selectedItem].progress||0}%`)},null,8,x)]),(0,n._)("div",I,[b,(0,n._)("div",{class:"value",textContent:(0,a.zw)(`${e.convertSize(se.transfers[se.selectedItem].download_rate||0)}/s`)},null,8,D)]),(0,n._)("div",T,[q,(0,n._)("div",{class:"value",textContent:(0,a.zw)(`${e.convertSize(se.transfers[se.selectedItem].upload_rate||0)}/s`)},null,8,z)]),(0,n._)("div",S,[E,(0,n._)("div",{class:"value",textContent:(0,a.zw)(e.convertSize(se.transfers[se.selectedItem].size||0))},null,8,$)]),se.transfers[se.selectedItem].remaining_bytes?((0,n.wg)(),(0,n.iD)("div",Z,[R,(0,n._)("div",{class:"value",textContent:(0,a.zw)(e.convertSize(se.transfers[se.selectedItem].remaining_bytes))},null,8,U)])):(0,n.kq)("",!0),(0,n._)("div",L,[N,(0,n._)("div",W,[(0,n._)("a",{href:se.transfers[se.selectedItem].url,target:"_blank",textContent:(0,a.zw)(se.transfers[se.selectedItem].url)},null,8,j)])]),(0,n._)("div",V,[P,(0,n._)("div",{class:"value",textContent:(0,a.zw)(se.transfers[se.selectedItem].peers||0)},null,8,F)]),se.transfers[se.selectedItem].start_date?((0,n.wg)(),(0,n.iD)("div",M,[H,(0,n._)("div",{class:"value",textContent:(0,a.zw)(e.formatDateTime(se.transfers[se.selectedItem].start_date))},null,8,A)])):(0,n.kq)("",!0),se.transfers[se.selectedItem].finish_date?((0,n.wg)(),(0,n.iD)("div",O,[K,(0,n._)("div",{class:"value",textContent:(0,a.zw)(e.formatDateTime(se.transfers[se.selectedItem].finish_date))},null,8,Y)])):(0,n.kq)("",!0),se.transfers[se.selectedItem].save_path?((0,n.wg)(),(0,n.iD)("div",B,[Q,(0,n._)("div",{class:"value",textContent:(0,a.zw)(se.transfers[se.selectedItem].save_path)},null,8,G)])):(0,n.kq)("",!0)])):(0,n.kq)("",!0)])),_:1},512),(0,n.Wm)(le,{ref:"torrentFiles",title:"Torrent files",width:"80%"},{default:(0,n.w5)((()=>[null!=se.selectedItem&&se.transfers[se.selectedItem]?((0,n.wg)(),(0,n.iD)("div",J,[((0,n.wg)(!0),(0,n.iD)(n.HY,null,(0,n.Ko)(ne.relativeFiles,((t,r)=>((0,n.wg)(),(0,n.iD)("div",{class:"row",key:t},[(0,n._)("div",X,[s.isMedia&&e.mediaExtensions.has(t.split(".").pop())?((0,n.wg)(),(0,n.j4)(ie,{key:0},{default:(0,n.w5)((()=>[(0,n.Wm)(re,{"icon-class":"fa fa-play",text:"Play",onClick:t=>e.$emit("play",{url:`file://${se.transfers[se.selectedItem].files[r]}`,type:"file"})},null,8,["onClick"])])),_:2},1024)):((0,n.wg)(),(0,n.iD)("i",ee))]),(0,n._)("div",{class:"col-11 name",textContent:(0,a.zw)(t)},null,8,te)])))),128))])):(0,n.kq)("",!0)])),_:1},512)]))}var ne=s(6791),ae=s(8637),re=s(1065),ie=s(3493),le=s(6896),oe=s(815),de={name:"View",emits:["play","play-with-captions"],components:{Dropdown:le.Z,DropdownItem:oe.Z,Loading:ne.Z,Modal:ie.Z},mixins:[ae.Z,re.Z],props:{pluginName:{type:String,required:!0},isMedia:{type:Boolean,default:!1}},data(){return{loading:!1,transfers:{},selectedItem:null}},computed:{relativeFiles(){return null!=this.selectedItem&&this.transfers[this.selectedItem]?.files?.length?this.transfers[this.selectedItem].files.map((e=>e.split("/").pop())):[]}},methods:{torrentId(e){return e?.hash&&e.hash.length?e.hash:e.url},async refresh(){this.loading=!0;try{this.transfers=Object.values(await this.request(`${this.pluginName}.status`)||{}).reduce(((e,t)=>(e[this.torrentId(t)]=t,e)),{})}finally{this.loading=!1}},async pause(e){await this.request(`${this.pluginName}.pause`,{torrent:e}),await this.refresh()},async resume(e){await this.request(`${this.pluginName}.resume`,{torrent:e}),await this.refresh()},async remove(e){await this.request(`${this.pluginName}.remove`,{torrent:e}),await this.refresh()},onTorrentUpdate(e){this.transfers[this.torrentId(e)]=e},onTorrentRemove(e){const t=this.torrentId(e);t in this.transfers&&delete this.transfers[t]}},mounted(){this.refresh(),this.subscribe(this.onTorrentUpdate,"on-torrent-update","platypush.message.event.torrent.TorrentQueuedEvent","platypush.message.event.torrent.TorrentDownloadedMetadataEvent","platypush.message.event.torrent.TorrentDownloadStartEvent","platypush.message.event.torrent.TorrentDownloadProgressEvent","platypush.message.event.torrent.TorrentResumedEvent","platypush.message.event.torrent.TorrentPausedEvent","platypush.message.event.torrent.TorrentSeedingStartEvent","platypush.message.event.torrent.TorrentStateChangeEvent","platypush.message.event.torrent.TorrentDownloadStopEvent","platypush.message.event.torrent.TorrentDownloadCompletedEvent"),this.subscribe(this.onTorrentRemove,"on-torrent-remove","platypush.message.event.torrent.TorrentRemovedEvent")},destroy(){this.unsubscribe("on-torrent-update"),this.unsubscribe("on-torrent-remove")}},ce=s(3744);const me=(0,ce.Z)(de,[["render",se],["__scopeId","data-v-7351a8a4"]]);var ue=me}}]);
+//# sourceMappingURL=7968.d5185bfd.js.map
\ No newline at end of file
diff --git a/platypush/backend/http/webapp/dist/static/js/7968.8d53b4c3.js.map b/platypush/backend/http/webapp/dist/static/js/7968.d5185bfd.js.map
similarity index 99%
rename from platypush/backend/http/webapp/dist/static/js/7968.8d53b4c3.js.map
rename to platypush/backend/http/webapp/dist/static/js/7968.d5185bfd.js.map
index 0a242822..b127c467 100644
--- a/platypush/backend/http/webapp/dist/static/js/7968.8d53b4c3.js.map
+++ b/platypush/backend/http/webapp/dist/static/js/7968.d5185bfd.js.map
@@ -1 +1 @@
-{"version":3,"file":"static/js/7968.8d53b4c3.js","mappings":"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","sources":["webpack://platypush/./src/components/Media/Utils.vue","webpack://platypush/./src/components/Media/Utils.vue?af63","webpack://platypush/./src/components/panels/Torrent/Panel.vue","webpack://platypush/./src/components/panels/Torrent/Header.vue","webpack://platypush/./src/components/panels/Torrent/Header.vue?da39","webpack://platypush/./src/components/panels/Torrent/Panel.vue?046c","webpack://platypush/./src/components/panels/Torrent/View.vue","webpack://platypush/./src/components/panels/Torrent/View.vue?80df"],"sourcesContent":["\n","import script from \"./Utils.vue?vue&type=script&lang=js\"\nexport * from \"./Utils.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n
\n
\n \n
\n\n
\n \n
\n
\n\n\n\n\n\n","\n
\n
\n
\n \n
\n
\n
\n\n\n\n\n\n","import { render } from \"./Header.vue?vue&type=template&id=33115af0&scoped=true\"\nimport script from \"./Header.vue?vue&type=script&lang=js\"\nexport * from \"./Header.vue?vue&type=script&lang=js\"\n\nimport \"./Header.vue?vue&type=style&index=0&id=33115af0&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-33115af0\"]])\n\nexport default __exports__","import { render } from \"./Panel.vue?vue&type=template&id=1502d8a8&scoped=true\"\nimport script from \"./Panel.vue?vue&type=script&lang=js\"\nexport * from \"./Panel.vue?vue&type=script&lang=js\"\n\nimport \"./Panel.vue?vue&type=style&index=0&id=1502d8a8&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-1502d8a8\"]])\n\nexport default __exports__","\n \n\n
\n
No torrent transfers in progress
\n\n
\n
\n \n \n
\n\n
\n \n
\n\n
\n \n \n \n \n \n \n \n
\n
\n\n \n
\n
\n
Name
\n \n
\n\n
\n
State
\n \n
\n\n
\n
Progress
\n \n
\n\n
\n
DL rate
\n \n
\n\n
\n
UL rate
\n \n
\n\n
\n
Size
\n \n
\n\n
\n
Remaining
\n \n
\n\n
\n
URL
\n
\n \n
\n
\n\n
\n
Peers
\n \n
\n\n
\n
Started
\n \n
\n\n
\n
Finished
\n \n
\n\n
\n
Save path
\n \n
\n
\n \n\n \n
\n
\n
\n \n \n \n\n \n
\n \n
\n
\n \n
\n\n\n\n\n\n","import { render } from \"./View.vue?vue&type=template&id=7351a8a4&scoped=true\"\nimport script from \"./View.vue?vue&type=script&lang=js\"\nexport * from \"./View.vue?vue&type=script&lang=js\"\n\nimport \"./View.vue?vue&type=style&index=0&id=7351a8a4&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-7351a8a4\"]])\n\nexport default __exports__"],"names":["name","mixins","Utils","computed","audioExtensions","Set","videoExtensions","mediaExtensions","this","methods","convertTime","time","parseFloat","t","h","parseInt","m","s","attr","ret","push","join","startStreaming","resource","pluginName","download","url","subtitles","Object","request","media","stopStreaming","mediaId","media_id","__exports__","class","_createElementBlock","_hoisted_1","_createElementVNode","_hoisted_2","_createVNode","_component_Header","onTorrentAdd","_cache","$event","$options","_hoisted_3","_component_TorrentView","$props","_normalizeClass","_ctx","filterVisible","onSubmit","_withModifiers","$emit","$data","torrentURL","type","placeholder","emits","data","components","TorrentView","Header","props","String","required","torrent","render","loading","_createBlock","_component_Loading","key","keys","transfers","length","_Fragment","_renderList","i","selected","selectedItem","onClick","_hoisted_4","finish_date","state","_toDisplayString","hash","_hoisted_6","progress","_hoisted_8","_component_Dropdown","title","_component_DropdownItem","text","pause","torrentId","resume","remove","$refs","torrentFiles","isVisible","torrentInfo","_component_Modal","ref","width","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_13","_hoisted_14","_hoisted_16","_hoisted_17","_hoisted_19","_hoisted_20","convertSize","download_rate","_hoisted_22","_hoisted_23","upload_rate","_hoisted_25","_hoisted_26","size","remaining_bytes","_hoisted_28","_hoisted_29","_hoisted_31","_hoisted_32","_hoisted_33","href","target","_hoisted_35","_hoisted_36","peers","start_date","_hoisted_38","_hoisted_39","formatDateTime","_hoisted_41","_hoisted_42","save_path","_hoisted_44","_hoisted_45","_hoisted_47","relativeFiles","file","_hoisted_48","isMedia","has","split","pop","files","_hoisted_49","Dropdown","DropdownItem","Loading","Modal","MediaUtils","Boolean","default","map","refresh","values","reduce","obj","onTorrentUpdate","onTorrentRemove","mounted","subscribe","destroy","unsubscribe"],"sourceRoot":""}
\ No newline at end of file
+{"version":3,"file":"static/js/7968.d5185bfd.js","mappings":"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","sources":["webpack://platypush/./src/components/Media/Utils.vue","webpack://platypush/./src/components/Media/Utils.vue?af63","webpack://platypush/./src/components/panels/Torrent/Panel.vue","webpack://platypush/./src/components/panels/Torrent/Header.vue","webpack://platypush/./src/components/panels/Torrent/Header.vue?da39","webpack://platypush/./src/components/panels/Torrent/Panel.vue?046c","webpack://platypush/./src/components/panels/Torrent/View.vue","webpack://platypush/./src/components/panels/Torrent/View.vue?80df"],"sourcesContent":["\n","import script from \"./Utils.vue?vue&type=script&lang=js\"\nexport * from \"./Utils.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n
\n
\n \n
\n\n
\n \n
\n
\n\n\n\n\n\n","\n
\n
\n
\n \n
\n
\n
\n\n\n\n\n\n","import { render } from \"./Header.vue?vue&type=template&id=33115af0&scoped=true\"\nimport script from \"./Header.vue?vue&type=script&lang=js\"\nexport * from \"./Header.vue?vue&type=script&lang=js\"\n\nimport \"./Header.vue?vue&type=style&index=0&id=33115af0&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-33115af0\"]])\n\nexport default __exports__","import { render } from \"./Panel.vue?vue&type=template&id=1502d8a8&scoped=true\"\nimport script from \"./Panel.vue?vue&type=script&lang=js\"\nexport * from \"./Panel.vue?vue&type=script&lang=js\"\n\nimport \"./Panel.vue?vue&type=style&index=0&id=1502d8a8&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-1502d8a8\"]])\n\nexport default __exports__","\n \n\n
\n
No torrent transfers in progress
\n\n
\n
\n \n \n
\n\n
\n \n
\n\n
\n \n \n \n \n \n \n \n
\n
\n\n \n
\n
\n
Name
\n \n
\n\n
\n
State
\n \n
\n\n
\n
Progress
\n \n
\n\n
\n
DL rate
\n \n
\n\n
\n
UL rate
\n \n
\n\n
\n
Size
\n \n
\n\n
\n
Remaining
\n \n
\n\n
\n
URL
\n
\n \n
\n
\n\n
\n
Peers
\n \n
\n\n
\n
Started
\n \n
\n\n
\n
Finished
\n \n
\n\n
\n
Save path
\n \n
\n
\n \n\n \n
\n
\n
\n \n \n \n\n \n
\n \n
\n
\n \n
\n\n\n\n\n\n","import { render } from \"./View.vue?vue&type=template&id=7351a8a4&scoped=true\"\nimport script from \"./View.vue?vue&type=script&lang=js\"\nexport * from \"./View.vue?vue&type=script&lang=js\"\n\nimport \"./View.vue?vue&type=style&index=0&id=7351a8a4&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-7351a8a4\"]])\n\nexport default __exports__"],"names":["name","mixins","Utils","computed","audioExtensions","Set","videoExtensions","mediaExtensions","this","methods","convertTime","time","parseFloat","t","h","parseInt","m","s","attr","ret","push","join","startStreaming","resource","pluginName","download","url","subtitles","Object","request","media","stopStreaming","mediaId","media_id","__exports__","class","_createElementBlock","_hoisted_1","_createElementVNode","_hoisted_2","_createVNode","_component_Header","onTorrentAdd","_cache","$event","$options","_hoisted_3","_component_TorrentView","$props","_normalizeClass","_ctx","filterVisible","onSubmit","_withModifiers","$emit","$data","torrentURL","type","placeholder","emits","data","components","TorrentView","Header","props","String","required","torrent","render","loading","_createBlock","_component_Loading","key","keys","transfers","length","_Fragment","_renderList","i","selected","selectedItem","onClick","_hoisted_4","finish_date","state","_toDisplayString","hash","_hoisted_6","progress","_hoisted_8","_component_Dropdown","title","_component_DropdownItem","text","pause","torrentId","resume","remove","$refs","torrentFiles","isVisible","torrentInfo","_component_Modal","ref","width","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_13","_hoisted_14","_hoisted_16","_hoisted_17","_hoisted_19","_hoisted_20","convertSize","download_rate","_hoisted_22","_hoisted_23","upload_rate","_hoisted_25","_hoisted_26","size","remaining_bytes","_hoisted_28","_hoisted_29","_hoisted_31","_hoisted_32","_hoisted_33","href","target","_hoisted_35","_hoisted_36","peers","start_date","_hoisted_38","_hoisted_39","formatDateTime","_hoisted_41","_hoisted_42","save_path","_hoisted_44","_hoisted_45","_hoisted_47","relativeFiles","file","_hoisted_48","isMedia","has","split","pop","files","_hoisted_49","Dropdown","DropdownItem","Loading","Modal","MediaUtils","Boolean","default","map","refresh","values","reduce","obj","onTorrentUpdate","onTorrentRemove","mounted","subscribe","destroy","unsubscribe"],"sourceRoot":""}
\ No newline at end of file
diff --git a/platypush/backend/http/webapp/dist/static/js/app.055d3f73.js b/platypush/backend/http/webapp/dist/static/js/app.055d3f73.js
new file mode 100644
index 00000000..45229425
--- /dev/null
+++ b/platypush/backend/http/webapp/dist/static/js/app.055d3f73.js
@@ -0,0 +1,2 @@
+(function(){var e={5250:function(e,t,n){"use strict";n.d(t,{$:function(){return i}});var s=n(9652);const i=(0,s.Z)();i.publishEntity=e=>{i.emit("entity-update",e)},i.onEntity=e=>{i.on("entity-update",e)},i.publishNotification=e=>{i.emit("notification-create",e)},i.onNotification=e=>{i.on("notification-create",e)}},3244:function(e,t,n){"use strict";var s=n(9963),i=n(6252);function o(e,t,n,s,o,a){const l=(0,i.up)("Events"),r=(0,i.up)("Notifications"),c=(0,i.up)("VoiceAssistant"),d=(0,i.up)("Pushbullet"),u=(0,i.up)("Ntfy"),p=(0,i.up)("ConfirmDialog"),h=(0,i.up)("DropdownContainer"),f=(0,i.up)("router-view");return(0,i.wg)(),(0,i.iD)(i.HY,null,[a.hasWebsocket?((0,i.wg)(),(0,i.j4)(l,{key:0,ref:"events"},null,512)):(0,i.kq)("",!0),(0,i.Wm)(r,{ref:"notifications"},null,512),a.hasAssistant?((0,i.wg)(),(0,i.j4)(c,{key:1,ref:"voice-assistant"},null,512)):(0,i.kq)("",!0),a.hasPushbullet?((0,i.wg)(),(0,i.j4)(d,{key:2,ref:"pushbullet"},null,512)):(0,i.kq)("",!0),a.hasNtfy?((0,i.wg)(),(0,i.j4)(u,{key:3,ref:"ntfy"},null,512)):(0,i.kq)("",!0),(0,i.Wm)(p,{ref:"pwaDialog",onInput:a.installPWA},{default:(0,i.w5)((()=>[(0,i.Uk)(" Would you like to install this application locally? ")])),_:1},8,["onInput"]),(0,i.Wm)(h),(0,i.Wm)(f)],64)}var a=n(6936);const l={class:"dropdown-container"};function r(e,t,n,s,o,a){return(0,i.wg)(),(0,i.iD)("div",l)}var c=n(5250),d={methods:{onOpen(e){e?.$el&&(e.keepOpenOnItemClick||this.onClose(),this.$el.appendChild(e.$el))},onClose(){this.$el.innerHTML=""}},mounted(){c.$.on("dropdown-open",this.onOpen),c.$.on("dropdown-close",this.onClose)}},u=n(3744);const p=(0,u.Z)(d,[["render",r],["__scopeId","data-v-c190f656"]]);var h=p;const f={class:"notifications"};function m(e,t,n,s,o,a){const l=(0,i.up)("Notification");return(0,i.wg)(),(0,i.iD)("div",f,[((0,i.wg)(!0),(0,i.iD)(i.HY,null,(0,i.Ko)(e.notifications,((e,t,n)=>((0,i.wg)(),(0,i.j4)(l,{key:n,id:t,text:e.text,html:e.html,title:e.title,link:e.link,image:e.image,warning:e.warning,error:e.error,onClicked:a.destroy},null,8,["id","text","html","title","link","image","warning","error","onClicked"])))),128))])}var g=n(3577);const b=["textContent"],w={class:"body"},y={key:0,class:"image col-3"},v={class:"row"},k=["src"],_={key:3,class:"fa fa-exclamation"},x={key:4,class:"fa fa-times"},C=["textContent"],D=["innerHTML"],I=["textContent"],$=["innerHTML"];function T(e,t,n,s,o,a){return(0,i.wg)(),(0,i.iD)("div",{class:(0,g.C_)(["notification fade-in",{warning:n.warning,error:n.error}]),onClick:t[0]||(t[0]=(...e)=>a.clicked&&a.clicked(...e))},[n.title?((0,i.wg)(),(0,i.iD)("div",{key:0,class:"title",textContent:(0,g.zw)(n.title)},null,8,b)):(0,i.kq)("",!0),(0,i._)("div",w,[n.image||n.warning||n.error?((0,i.wg)(),(0,i.iD)("div",y,[(0,i._)("div",v,[n.image&&n.image.src?((0,i.wg)(),(0,i.iD)("img",{key:0,src:n.image.src,alt:""},null,8,k)):n.image&&n.image.icon?((0,i.wg)(),(0,i.iD)("i",{key:1,class:(0,g.C_)(["fa","fa-"+n.image.icon]),style:(0,g.j5)(n.image.color?"--color: "+n.image.color:"")},null,6)):n.image&&n.image.iconClass?((0,i.wg)(),(0,i.iD)("i",{key:2,class:(0,g.C_)(n.image.iconClass),style:(0,g.j5)(n.image.color?"--color: "+n.image.color:"")},null,6)):n.warning?((0,i.wg)(),(0,i.iD)("i",_)):n.error?((0,i.wg)(),(0,i.iD)("i",x)):(0,i.kq)("",!0)])])):(0,i.kq)("",!0),n.text&&n.image?((0,i.wg)(),(0,i.iD)("div",{key:1,class:"text col-9",textContent:(0,g.zw)(n.text)},null,8,C)):(0,i.kq)("",!0),n.html&&n.image?((0,i.wg)(),(0,i.iD)("div",{key:2,class:"text col-9",innerHTML:n.html},null,8,D)):(0,i.kq)("",!0),n.text&&!n.image?((0,i.wg)(),(0,i.iD)("div",{key:3,class:"text row horizontal-center",textContent:(0,g.zw)(n.text)},null,8,I)):(0,i.kq)("",!0),n.html&&!n.image?((0,i.wg)(),(0,i.iD)("div",{key:4,class:"text row horizontal-center",innerHTML:n.html},null,8,$)):(0,i.kq)("",!0)])],2)}var S={name:"Notification",props:["id","text","html","title","image","link","error","warning"],methods:{clicked(){this.link&&window.open(this.link,"_blank"),this.$emit("clicked",this.id)}}};const q=(0,u.Z)(S,[["render",T],["__scopeId","data-v-7646705e"]]);var U=q,E={name:"Notifications",components:{Notification:U},props:{duration:{type:Number,default:1e4}},data:function(){return{index:0,notifications:{},timeouts:{}}},methods:{create:function(e){const t=this.index++;this.notifications[t]=e,null==e.duration&&(e.duration=this.duration);const n=e.duration?parseInt(e.duration):0;n&&(this.timeouts[t]=setTimeout(this.destroy.bind(null,t),n))},destroy:function(e){delete this.notifications[e],delete this.timeouts[e]}}};const O=(0,u.Z)(E,[["render",m],["__scopeId","data-v-6dc8bebc"]]);var M=O,P=n(8637);function Z(e,t,n,s,o,a){return(0,i.wg)(),(0,i.iD)("div")}n(7658);var j={name:"Events",data(){return{ws:null,initialized:!1,pending:!1,opened:!1,timeout:null,reconnectMsecs:1e3,minReconnectMsecs:1e3,maxReconnectMsecs:3e4,handlers:{},handlerNameToEventTypes:{}}},methods:{onWebsocketTimeout(){console.log("Websocket reconnection timed out, retrying"),this.reconnectMsecs=Math.min(2*this.reconnectMsecs,this.maxReconnectMsecs),this.pending=!1,this.ws&&this.ws.close(),this.onClose()},onMessage(e){const t=[];if(e=e.data,"string"===typeof e)try{e=JSON.parse(e)}catch(n){console.warn("Received invalid non-JSON event"),console.warn(e)}if(console.debug(e),"event"===e.type){null in this.handlers&&t.push(this.handlers[null]),e.args.type in this.handlers&&t.push(...Object.values(this.handlers[e.args.type]));for(let n of t)n&&(n instanceof Array?n=n[0]:n instanceof Object&&!(n instanceof Function)&&(n=Object.values(n)[0]),n(e.args))}},onOpen(){this.opened&&(console.log("There's already an opened websocket connection, closing the newly opened one"),this.ws&&(this.ws.onclose=()=>{},this.ws.close())),console.log("Websocket connection successful"),this.opened=!0,this.reconnectMsecs=this.minReconnectMsecs,this.pending&&(this.pending=!1),this.timeout&&(clearTimeout(this.timeout),this.timeout=void 0)},onError(e){console.error("Websocket error"),console.error(e)},onClose(e){e&&console.log(`Websocket closed - code: ${e.code} - reason: ${e.reason}. Retrying in ${this.reconnectMsecs/1e3}s`),this.opened=!1,this.pending||(this.pending=!0,this.init())},init(){try{const e="https:"===location.protocol?"wss":"ws",t=`${e}://${location.host}/ws/events`;this.ws=new WebSocket(t)}catch(e){return console.error("Websocket initialization error"),void console.error(e)}this.pending=!0,this.timeout=setTimeout(this.onWebsocketTimeout,this.reconnectMsecs),this.ws.onmessage=this.onMessage,this.ws.onopen=this.onOpen,this.ws.onerror=this.onError,this.ws.onclose=this.onClose,this.initialized=!0},subscribe(e){const t=e.handler,n=e.events.length?e.events:[null],s=e.handlerName;for(const i of n)i in this.handlers||(this.handlers[i]={}),s in this.handlerNameToEventTypes||(this.handlerNameToEventTypes[s]=n),this.handlers[i][s]=t;return()=>{this.unsubscribe(s)}},unsubscribe(e){const t=this.handlerNameToEventTypes[e];if(t){for(const n of t)this.handlers[n]?.[e]&&(delete this.handlers[n][e],Object.keys(this.handlers[n]).length||delete this.handlers[n]);delete this.handlerNameToEventTypes[e]}}},created(){c.$.on("subscribe",this.subscribe),c.$.on("unsubscribe",this.unsubscribe),this.$watch("opened",(e=>{c.$.emit(e?"connect":"disconnect")})),this.init()}};const N=(0,u.Z)(j,[["render",Z]]);var W=N;const R={class:"assistant-modal"},z={class:"icon"},L={key:0,class:"fa fa-bell"},A={key:1,class:"fa fa-volume-up"},F={key:2,class:"fa fa-comment-dots"},H={key:3,class:"fa fa-microphone"},B={class:"text"},V={key:0,class:"listening"},Y=(0,i._)("span",null,"Assistant listening",-1),K=[Y],J={key:1,class:"speech-recognized"},X=["textContent"],G={key:2,class:"responding"},Q=["textContent"];function ee(e,t,n,s,o,a){const l=(0,i.up)("Modal");return(0,i.wg)(),(0,i.iD)("div",R,[(0,i.Wm)(l,{ref:"assistantModal"},{default:(0,i.w5)((()=>[(0,i._)("div",z,[o.state.alerting?((0,i.wg)(),(0,i.iD)("i",L)):o.state.responding?((0,i.wg)(),(0,i.iD)("i",A)):o.state.speechRecognized?((0,i.wg)(),(0,i.iD)("i",F)):((0,i.wg)(),(0,i.iD)("i",H))]),(0,i._)("div",B,[o.state.listening?((0,i.wg)(),(0,i.iD)("div",V,K)):o.state.speechRecognized?((0,i.wg)(),(0,i.iD)("div",J,[(0,i._)("span",{textContent:(0,g.zw)(o.phrase)},null,8,X)])):o.state.responding?((0,i.wg)(),(0,i.iD)("div",G,[(0,i._)("span",{textContent:(0,g.zw)(o.responseText)},null,8,Q)])):(0,i.kq)("",!0)])])),_:1},512)])}var te=n(3493),ne={name:"VoiceAssistant",components:{Modal:te.Z},mixins:[P.Z],data(){return{responseText:"",phrase:"",hideTimeout:void 0,state:{listening:!1,speechRecognized:!1,responding:!1,alerting:!1}}},methods:{reset(){this.state.listening=!1,this.state.speechRecognized=!1,this.state.responding=!1,this.state.alerting=!1,this.phrase="",this.responseText=""},conversationStart(){this.reset(),this.state.listening=!0,this.$refs.assistantModal.show(),this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=void 0)},conversationEnd(){const e=this;this.hideTimeout=setTimeout((()=>{this.reset(),e.$refs.assistantModal.close(),e.hideTimeout=void 0}),4e3)},speechRecognized(e){this.reset(),this.state.speechRecognized=!0,this.phrase=e.phrase,this.$refs.assistantModal.show()},response(e){this.reset(),this.state.responding=!0,this.responseText=e.response_text,this.$refs.assistantModal.show()},alertOn(){this.reset(),this.state.alerting=!0,this.$refs.assistantModal.show()},alertOff(){this.reset(),this.state.alerting=!1,this.$refs.assistantModal.close()},registerHandlers(){this.subscribe(this.conversationStart,null,"platypush.message.event.assistant.ConversationStartEvent"),this.subscribe(this.alertOn,null,"platypush.message.event.assistant.AlertStartedEvent"),this.subscribe(this.alertOff,null,"platypush.message.event.assistant.AlertEndEvent"),this.subscribe(this.speechRecognized,null,"platypush.message.event.assistant.SpeechRecognizedEvent"),this.subscribe(this.response,null,"platypush.message.event.assistant.ResponseEvent"),this.subscribe(this.conversationEnd,null,"platypush.message.event.assistant.ConversationEndEvent","platypush.message.event.assistant.NoResponseEvent","platypush.message.event.assistant.ConversationTimeoutEvent")}},mounted(){this.registerHandlers()}};const se=(0,u.Z)(ne,[["render",ee]]);var ie=se;function oe(e,t,n,s,o,a){return(0,i.wg)(),(0,i.iD)("div")}var ae={name:"Ntfy",mixins:[P.Z],methods:{onMessage(e){this.notify({title:e.title,text:e.message,image:{icon:"bell"}})}},mounted(){this.subscribe(this.onMessage,null,"platypush.message.event.ntfy.NotificationEvent")}};const le=(0,u.Z)(ae,[["render",oe]]);var re=le;function ce(e,t,n,s,o,a){return(0,i.wg)(),(0,i.iD)("div")}var de={name:"Pushbullet",mixins:[P.Z],methods:{onMessage(e){"mirror"===e.push_type&&this.notify({title:e.title,text:e.body,image:{src:e.icon?"data:image/png;base64, "+e.icon:void 0,icon:e.icon?void 0:"bell"}})}},mounted(){this.subscribe(this.onMessage,null,"platypush.message.event.pushbullet.PushbulletEvent")}};const ue=(0,u.Z)(de,[["render",ce]]);var pe=ue,he={mixins:[P.Z],components:{ConfirmDialog:a.Z,DropdownContainer:h,Events:W,Notifications:M,Ntfy:re,Pushbullet:pe,VoiceAssistant:ie},data(){return{config:{},userAuthenticated:!1,connected:!1,pwaInstallEvent:null}},computed:{hasWebsocket(){return this.userAuthenticated&&"backend.http"in this.config},hasAssistant(){return this.hasWebsocket},hasPushbullet(){return this.hasWebsocket&&("pushbullet"in this.config||"backend.pushbullet"in this.config)},hasNtfy(){return this.hasWebsocket&&"ntfy"in this.config}},methods:{onNotification(e){this.$refs.notifications.create(e)},async initConfig(){this.config=await this.request("config.get",{},6e4,!1),this.userAuthenticated=!0},installPWA(){this.pwaInstallEvent&&this.pwaInstallEvent.prompt(),this.$refs.pwaDialog.close()}},created(){this.initConfig()},beforeMount(){this.getCookie("pwa-dialog-shown")?.length||window.addEventListener("beforeinstallprompt",(e=>{e.preventDefault(),this.pwaInstallEvent=e,this.$refs.pwaDialog.show(),this.setCookie("pwa-dialog-shown","1",{expires:new Date((new Date).getTime()+31536e6)})}))},mounted(){c.$.onNotification(this.onNotification),c.$.on("connect",(()=>this.connected=!0)),c.$.on("disconnect",(()=>this.connected=!1))}};const fe=(0,u.Z)(he,[["render",o]]);var me=fe,ge=n(2201);function be(e,t,n,s,o,a){const l=(0,i.up)("Loading"),r=(0,i.up)("Widget"),c=(0,i.up)("Row");return(0,i.wg)(),(0,i.iD)(i.HY,null,[o.loading?((0,i.wg)(),(0,i.j4)(l,{key:0})):(0,i.kq)("",!0),(0,i._)("div",{id:"dashboard",class:(0,g.C_)(["col-12",a.classes]),style:(0,g.j5)(o.style)},[((0,i.wg)(!0),(0,i.iD)(i.HY,null,(0,i.Ko)(o.rows,((e,t)=>((0,i.wg)(),(0,i.j4)(c,{key:t,class:(0,g.C_)(e.class),style:(0,g.j5)(e.style)},{default:(0,i.w5)((()=>[((0,i.wg)(!0),(0,i.iD)(i.HY,null,(0,i.Ko)(e.widgets,((e,t)=>((0,i.wg)(),(0,i.j4)(i.Ob,{key:t},[(0,i.Wm)(r,{style:(0,g.j5)(e.style),class:(0,g.C_)(e.class)},{default:(0,i.w5)((()=>[((0,i.wg)(),(0,i.j4)((0,i.LL)(e.component),(0,g.vs)((0,i.F4)(a.getWidgetProps(e))),null,16))])),_:2},1032,["style","class"])],1024)))),128))])),_:2},1032,["class","style"])))),128))],6)],64)}var we=n(2262),ye=n(6791);function ve(e,t,n,s,o,a){return(0,i.wg)(),(0,i.iD)("div",{class:(0,g.C_)(["row",a.classes]),style:(0,g.j5)(n.style)},[(0,i.WI)(e.$slots,"default",{},void 0,!0)],6)}var ke={name:"Row",props:{class:{type:String,required:!1,default:""},style:{type:String,required:!1,default:""}},computed:{classes(){return this.class}}};const _e=(0,u.Z)(ke,[["render",ve],["__scopeId","data-v-1b4663f2"]]);var xe=_e;function Ce(e,t,n,s,o,a){return(0,i.wg)(),(0,i.iD)("div",{style:(0,g.j5)(n.style),class:(0,g.C_)(a.classes)},[(0,i.WI)(e.$slots,"default",{},void 0,!0)],6)}var De={name:"Widget",props:{style:{type:String,required:!1,default:""},class:{type:String,required:!1,default:""}},computed:{classes(){return(this.class?.length?this.class.split(" "):["col-3"]).concat(["widget","column"])}}};const Ie=(0,u.Z)(De,[["render",Ce],["__scopeId","data-v-5df52982"]]);var $e=Ie,Te={name:"Dashboard",mixins:[P.Z],components:{Widget:$e,Loading:ye.Z,Row:xe},props:{refreshSeconds:{type:Number,required:!1,default:0}},data(){return{rows:[],loading:!1,style:void 0,class:void 0}},computed:{classes(){return this.class}},methods:{getWidgetProps(e){const t={...e.props};return t.class&&delete t.class,t},parseTemplate(e,t){const s=(new DOMParser).parseFromString(t,"text/xml").childNodes[0],o=this;this.style=s.attributes.style?.nodeValue,this.class=s.attributes.class?.nodeValue,this.rows=[...s.getElementsByTagName("Row")].map((e=>({style:e.attributes.style?.nodeValue,class:e.attributes.class?.nodeValue,widgets:[...e.children].map((e=>{const t=(0,we.XI)((0,i.RC)((()=>n(6725)(`./${e.nodeName}/Index`)))),s=e.attributes.style?.nodeValue,a=e.attributes.class?.nodeValue,l=[...e.attributes].reduce(((e,t)=>("style"!==t.nodeName&&(e[t.nodeName]=t.nodeValue),e)),{content:e.innerHTML}),r={component:t,style:s,class:a,props:l||{}};return o.$options.components[e.nodeName]=t,r}))}))),this.loading=!1},async refreshDashboard(){this.loading=!0,this.widgets=[];const e=this.$route.params.name,t=await this.request("config.get_dashboard",{name:e});t||this.notifyError(`Dashboard ${e} not found`),this.parseTemplate(e,t)}},mounted(){if(this.refreshDashboard(),this.refreshSeconds){const e=this;setInterval((()=>{e.refreshDashboard()}),parseInt((1e3*this.refreshSeconds).toFixed(0)))}}};const Se=(0,u.Z)(Te,[["render",be],["__scopeId","data-v-54e0248a"]]);var qe=Se;function Ue(e,t,n,s,o,a){return(0,i.wg)(),(0,i.iD)("h1",null,"Object not found")}var Ee={name:"NotFound"};const Oe=(0,u.Z)(Ee,[["render",Ue]]);var Me=Oe;const Pe=e=>((0,i.dD)("data-v-af0b14d0"),e=e(),(0,i.Cn)(),e),Ze={class:"login-container"},je={class:"login",method:"POST"},Ne=(0,i.uE)('
Platypush
',3),We={key:0,class:"row"},Re=Pe((()=>(0,i._)("label",null,[(0,i._)("input",{type:"password",name:"confirm_password",placeholder:"Confirm password"})],-1))),ze=[Re],Le={class:"row buttons"},Ae=["value"],Fe=Pe((()=>(0,i._)("div",{class:"row pull-right"},[(0,i._)("label",{class:"checkbox"},[(0,i._)("input",{type:"checkbox",name:"remember"}),(0,i.Uk)(" Keep me logged in on this device ")])],-1)));function He(e,t,n,s,o,a){return(0,i.wg)(),(0,i.iD)("div",Ze,[(0,i._)("form",je,[Ne,a._register?((0,i.wg)(),(0,i.iD)("div",We,ze)):(0,i.kq)("",!0),(0,i._)("div",Le,[(0,i._)("input",{type:"submit",class:"btn btn-primary",value:a._register?"Register":"Login"},null,8,Ae)]),Fe])])}var Be={name:"Login",mixins:[P.Z],props:{register:{type:Boolean,required:!1,default:!1}},computed:{_register(){return this.parseBoolean(this.register)}}};const Ve=(0,u.Z)(Be,[["render",He],["__scopeId","data-v-af0b14d0"]]);var Ye=Ve;function Ke(e,t,n,s,o,a){const l=(0,i.up)("Login");return(0,i.wg)(),(0,i.j4)(l,{register:!0})}var Je={name:"Register",mixins:[Ye],components:{Login:Ye},props:{register:{type:Boolean,required:!1,default:!0}}};const Xe=(0,u.Z)(Je,[["render",Ke]]);var Ge=Xe;const Qe={key:2,class:"canvas"},et={class:"panel"},tt={key:3,class:"canvas"},nt={class:"panel"},st={key:4,class:"canvas"};function it(e,t,n,s,o,a){const l=(0,i.up)("Loading"),r=(0,i.up)("Nav"),c=(0,i.up)("Settings"),d=(0,i.up)("Extensions");return(0,i.wg)(),(0,i.iD)("main",null,[o.loading?((0,i.wg)(),(0,i.j4)(l,{key:0})):((0,i.wg)(),(0,i.j4)(r,{key:1,panels:o.components,"selected-panel":o.selectedPanel,"selected-config-panel":o.selectedConfigPanel,hostname:o.hostname,onSelect:t[0]||(t[0]=e=>o.selectedPanel=e),onSelectConfig:t[1]||(t[1]=e=>o.selectedConfigPanel=e)},null,8,["panels","selected-panel","selected-config-panel","hostname"])),"settings"===o.selectedPanel?((0,i.wg)(),(0,i.iD)("div",Qe,[(0,i._)("div",et,[(0,i.Wm)(c,{"selected-panel":o.selectedConfigPanel},null,8,["selected-panel"])])])):"extensions"===o.selectedPanel?((0,i.wg)(),(0,i.iD)("div",tt,[(0,i._)("div",nt,[(0,i.Wm)(d)])])):((0,i.wg)(),(0,i.iD)("div",st,[((0,i.wg)(!0),(0,i.iD)(i.HY,null,(0,i.Ko)(o.components,((e,t)=>((0,i.wg)(),(0,i.iD)("div",{class:(0,g.C_)(["panel",{hidden:t!==o.selectedPanel}]),key:t},[t===o.selectedPanel?((0,i.wg)(),(0,i.j4)((0,i.LL)(e.component),{key:0,config:e.config,"plugin-name":t},null,8,["config","plugin-name"])):(0,i.kq)("",!0)],2)))),128))]))])}const ot=e=>((0,i.dD)("data-v-029bae2f"),e=e(),(0,i.Cn)(),e),at=ot((()=>(0,i._)("i",{class:"fas fa-bars"},null,-1))),lt=["textContent"],rt=["title"],ct={key:0,class:"plugins"},dt={href:"/#"},ut=ot((()=>(0,i._)("i",{class:"fas fa-home"},null,-1))),pt={key:0,class:"name"},ht=["title","onClick"],ft={href:"/#settings"},mt={class:"icon"},gt=["src"],bt={key:2,class:"fas fa-puzzle-piece"},wt=["textContent"],yt={key:1,class:"plugins"},vt=["title","onClick"],kt=["href"],_t={class:"icon"},xt=["src"],Ct={key:2,class:"fas fa-puzzle-piece"},Dt=["textContent"],It={class:"footer"},$t={href:"/#extensions"},Tt=ot((()=>(0,i._)("span",{class:"icon"},[(0,i._)("i",{class:"fa fa-puzzle-piece"})],-1))),St={key:0,class:"name"},qt={href:"/#settings"},Ut=ot((()=>(0,i._)("span",{class:"icon"},[(0,i._)("i",{class:"fa fa-cog"})],-1))),Et={key:0,class:"name"},Ot={href:"/logout"},Mt=ot((()=>(0,i._)("span",{class:"icon"},[(0,i._)("i",{class:"fas fa-sign-out-alt"})],-1))),Pt={key:0,class:"name"};function Zt(e,t,n,s,o,a){return(0,i.wg)(),(0,i.iD)("nav",{class:(0,g.C_)({collapsed:o.collapsed})},[(0,i._)("div",{class:"toggler",onClick:t[0]||(t[0]=e=>o.collapsed=!o.collapsed)},[at,n.hostname?((0,i.wg)(),(0,i.iD)("span",{key:0,class:"hostname",textContent:(0,g.zw)(n.hostname)},null,8,lt)):(0,i.kq)("",!0),(0,i._)("i",{class:(0,g.C_)(["icon status fas fa-circle",{ok:o.connected,error:!o.connected}]),title:o.connected?"Connected":"Disconnected"},null,10,rt)]),"settings"===n.selectedPanel?((0,i.wg)(),(0,i.iD)("ul",ct,[(0,i._)("li",{class:"entry",title:"Home",onClick:t[1]||(t[1]=e=>a.onItemClick("entities"))},[(0,i._)("a",dt,[ut,o.collapsed?(0,i.kq)("",!0):((0,i.wg)(),(0,i.iD)("span",pt,"Home"))])]),((0,i.wg)(!0),(0,i.iD)(i.HY,null,(0,i.Ko)(o.configSections,((t,s)=>((0,i.wg)(),(0,i.iD)("li",{key:s,class:(0,g.C_)(["entry",{selected:s===n.selectedConfigPanel}]),title:t.name,onClick:t=>e.$emit("select-config",s)},[(0,i._)("a",ft,[(0,i._)("span",mt,[t.icon?.["class"]?((0,i.wg)(),(0,i.iD)("i",{key:0,class:(0,g.C_)(t.icon["class"])},null,2)):t.icon?.imgUrl?((0,i.wg)(),(0,i.iD)("img",{key:1,src:t.icon?.imgUrl,alt:"name"},null,8,gt)):((0,i.wg)(),(0,i.iD)("i",bt))]),o.collapsed?(0,i.kq)("",!0):((0,i.wg)(),(0,i.iD)("span",{key:0,class:"name",textContent:(0,g.zw)(t.name)},null,8,wt))])],10,ht)))),128))])):((0,i.wg)(),(0,i.iD)("ul",yt,[((0,i.wg)(!0),(0,i.iD)(i.HY,null,(0,i.Ko)(a.panelNames,(e=>((0,i.wg)(),(0,i.iD)("li",{key:e,class:(0,g.C_)(["entry",{selected:e===n.selectedPanel}]),title:e,onClick:t=>a.onItemClick(e)},[(0,i._)("a",{href:`/#${e}`},[(0,i._)("span",_t,[o.icons[e]?.class?((0,i.wg)(),(0,i.iD)("i",{key:0,class:(0,g.C_)(o.icons[e].class)},null,2)):o.icons[e]?.imgUrl?((0,i.wg)(),(0,i.iD)("img",{key:1,src:o.icons[e].imgUrl,alt:"name"},null,8,xt)):((0,i.wg)(),(0,i.iD)("i",Ct))]),o.collapsed?(0,i.kq)("",!0):((0,i.wg)(),(0,i.iD)("span",{key:0,class:"name",textContent:(0,g.zw)(a.displayName(e))},null,8,Dt))],8,kt)],10,vt)))),128))])),(0,i._)("ul",It,[(0,i._)("li",{class:(0,g.C_)({selected:"extensions"===n.selectedPanel}),title:"Extensions",onClick:t[2]||(t[2]=e=>a.onItemClick("extensions"))},[(0,i._)("a",$t,[Tt,o.collapsed?(0,i.kq)("",!0):((0,i.wg)(),(0,i.iD)("span",St,"Extensions"))])],2),(0,i._)("li",{class:(0,g.C_)({selected:"settings"===n.selectedPanel}),title:"Settings",onClick:t[3]||(t[3]=e=>a.onItemClick("settings"))},[(0,i._)("a",qt,[Ut,o.collapsed?(0,i.kq)("",!0):((0,i.wg)(),(0,i.iD)("span",Et,"Settings"))])],2),(0,i._)("li",{title:"Logout",onClick:t[4]||(t[4]=e=>a.onItemClick("logout"))},[(0,i._)("a",Ot,[Mt,o.collapsed?(0,i.kq)("",!0):((0,i.wg)(),(0,i.iD)("span",Pt,"Logout"))])])])],2)}var jt=n(1359),Nt=JSON.parse('{"users":{"name":"Users","icon":{"class":"fas fa-user"}},"tokens":{"name":"Tokens","icon":{"class":"fas fa-key"}},"application":{"name":"Application","icon":{"class":"fas fa-gears"}}}'),Wt={name:"Nav",emits:["select","select-config"],mixins:[P.Z],props:{panels:{type:Object,required:!0},selectedPanel:{type:String},selectedConfigPanel:{type:String},hostname:{type:String}},computed:{panelNames(){const e=(e,n)=>{const s=t.indexOf(n);return s>=0&&(e=[n].concat(e.slice(0,s).concat(e.slice(s+1)))),e};let t=Object.keys(this.panels).sort();return t=e(t,"execute"),t=e(t,"entities"),t},collapsedDefault(){return!(!this.isMobile()&&!this.isTablet())}},methods:{onItemClick(e){this.$emit("select",e),this.collapsed=!!this.isMobile()||this.collapsedDefault},displayName(e){return"entities"===e?"Home":"execute"===e?"Execute":e},setConnected(e){return()=>{this.connected=e}}},data(){return{collapsed:!0,connected:!1,icons:jt,host:null,configSections:Nt}},mounted(){this.collapsed=this.collapsedDefault,c.$.on("connect",this.setConnected(!0)),c.$.on("disconnect",this.setConnected(!1)),this.setConnected(this.$root.connected)}};const Rt=(0,u.Z)(Wt,[["render",Zt],["__scopeId","data-v-029bae2f"]]);var zt=Rt,Lt=n(7092),At=n(3136),Ft={name:"Panel",mixins:[P.Z],components:{Extensions:Lt["default"],Settings:At["default"],Nav:zt,Loading:ye.Z},data(){return{loading:!1,plugins:{},backends:{},procedures:{},components:{},hostname:void 0,selectedPanel:void 0,selectedConfigPanel:"users"}},methods:{initSelectedPanel(){const e=this.$route.hash.match("#?([a-zA-Z0-9.]+)[?]?(.*)"),t=e?e[1]:"entities";t?.length&&(this.selectedPanel=t)},initPanels(){const e=this;this.components={},Object.entries(this.plugins).forEach((async([t,s])=>{const o=t.split(".").map((e=>e[0].toUpperCase()+e.slice(1))).join("");let a=null;try{a=await n(3379)(`./${o}/Index`)}catch(r){return}const l=(0,we.XI)((0,i.RC)((async()=>a)));e.$options.components[t]=l,e.components[t]={component:l,pluginName:t,config:s}}))},async parseConfig(){[this.plugins,this.backends,this.procedures,this.hostname]=await Promise.all([this.request("config.get_plugins"),this.request("config.get_backends"),this.request("config.get_procedures"),this.request("config.get_device_id")]),this.initializeDefaultViews()},initializeDefaultViews(){this.plugins.entities={},this.plugins.execute={}}},async mounted(){this.loading=!0;try{await this.parseConfig(),this.initPanels(),this.initSelectedPanel(),this.$watch("$route.hash",this.initSelectedPanel)}finally{this.loading=!1}}};const Ht=(0,u.Z)(Ft,[["render",it],["__scopeId","data-v-bec58c5c"]]);var Bt=Ht;const Vt={key:1,class:"canvas"};function Yt(e,t,n,s,o,a){const l=(0,i.up)("Loading");return(0,i.wg)(),(0,i.iD)("main",null,[o.loading?((0,i.wg)(),(0,i.j4)(l,{key:0})):((0,i.wg)(),(0,i.iD)("div",Vt,[((0,i.wg)(),(0,i.j4)((0,i.LL)(o.component),{config:o.config,"plugin-name":a.pluginName},null,8,["config","plugin-name"]))]))])}var Kt={name:"Panel",mixins:[P.Z],components:{Settings:At["default"],Nav:zt,Loading:ye.Z},data(){return{loading:!1,config:{},plugins:{},backends:{},procedures:{},component:void 0,hostname:void 0,selectedPanel:void 0}},computed:{pluginName(){return this.$route.params.plugin}},methods:{async initPanel(){const e=this.pluginName.split(".").map((e=>e[0].toUpperCase()+e.slice(1))).join("");let t=null;try{t=await n(3379)(`./${e}/Index`)}catch(s){return console.error(s),void this.notify({error:!0,title:`Cannot load plugin ${this.pluginName}`,text:s.toString()})}this.component=(0,we.XI)((0,i.RC)((async()=>t))),this.$options.components[e]=this.component},async initConfig(){const e=await this.request("config.get");this.config=e[this.pluginName]||{},this.hostname=await this.request("config.get_device_id")}},async mounted(){this.loading=!0;try{await this.initConfig(),await this.initPanel()}finally{this.loading=!1}}};const Jt=(0,u.Z)(Kt,[["render",Yt],["__scopeId","data-v-e339182c"]]);var Xt=Jt;const Gt=[{path:"/",name:"Panel",component:Bt},{path:"/dashboard/:name",name:"Dashboard",component:qe},{path:"/plugin/:plugin",name:"Plugin",component:Xt},{path:"/login",name:"Login",component:Ye},{path:"/register",name:"Register",component:Ge},{path:"/:catchAll(.*)",component:Me}],Qt=(0,ge.p7)({history:(0,ge.PO)(),routes:Gt});var en=Qt,tn=n(5205);(0,tn.z)("/service-worker.js",{ready(){console.log("App is being served from cache by a service worker.\nFor more details, visit https://goo.gl/AFskqB")},registered(){console.log("Service worker has been registered.")},cached(){console.log("Content has been cached for offline use.")},updatefound(){console.log("New content is downloading.")},updated(){console.log("New content is available; please refresh.")},offline(){console.log("No internet connection found. App is running in offline mode.")},error(e){console.error("Error during service worker registration:",e)}});const nn=(0,s.ri)(me);nn.config.globalProperties._config=window.config,nn.use(en).mount("#app")},8637:function(e,t,n){"use strict";n.d(t,{Z:function(){return R}});var s=n(6154),i={name:"Api",methods:{execute(e,t=6e4,n=!0){const i={};return"target"in e&&e["target"]||(e["target"]="localhost"),"type"in e&&e["type"]||(e["type"]="request"),t&&(i.timeout=t),new Promise(((t,o)=>{s.Z.post("/execute",e,i).then((e=>{if(e=e.data.response,e.errors?.length){const t=e.errors?.[0]||e;this.notify({text:t,error:!0}),o(t)}else t(e.output)})).catch((e=>{412===e?.response?.data?.code&&window.location.href.indexOf("/register")<0?window.location.href="/register?redirect="+window.location.href:401===e?.response?.data?.code&&window.location.href.indexOf("/login")<0?window.location.href="/login?redirect="+window.location.href:(console.log(e),n&&this.notify({text:e,error:!0}),o(e))}))}))},request(e,t={},n=6e4,s=!0){return this.execute({type:"request",action:e,args:t},n,s)}}};const o=i;var a=o,l={name:"Clipboard",methods:{async copyToClipboard(e){await navigator.clipboard.writeText(e),this.notify({text:"Copied to the clipboard",image:{icon:"clipboard"}})}}};const r=l;var c=r,d={name:"Cookies",methods:{getCookies(){return document.cookie.split(/;\s*/).reduce(((e,t)=>{const[n,s]=t.split("=");return e[n]=s,e}),{})},getCookie(e){return this.getCookies()[e]},setCookie(e,t,n){document.cookie=`${e}=${t}; path=${n?.path||"/"}`+(n?.expires?`; expires=${n?.expires.toISOString()}`:"")},deleteCookie(e){document.cookie=`${e}=; expires=1970-01-01T00:00:00Z`}}};const u=d;var p=u,h={name:"DateTime",methods:{formatDate(e,t=!1){return"string"===typeof e&&(e=new Date(Date.parse(e))),e.toDateString().substring(0,t?15:10)},formatTime(e,t=!0){return"string"===typeof e&&(e=new Date(Date.parse(e))),e.toTimeString().substring(0,t?8:5)},formatDateTime(e,t=!1,n=!0){return"string"===typeof e&&(e=new Date(Date.parse(e))),`${this.formatDate(e,t)}, ${this.formatTime(e,n)}`}}};const f=h;var m=f,g=(n(2801),n(5250)),b={name:"Events",computed:{_eventsReady(){return this.$root.$refs.events?.initialized}},methods:{subscribe(e,t,...n){const s=()=>{g.$.emit("subscribe",{events:n,handler:e,handlerName:t||this.generateId()})};if(this._eventsReady)return void s();const i=this,o=this.$watch((()=>i._eventsReady),(e=>{e&&(s(),o())}));return o},unsubscribe(e){g.$.emit("unsubscribe",e)},generateId(){return btoa([...Array(11).keys()].map((()=>String.fromCharCode(Math.round(255*Math.random())))))}}};const w=b;var y=w,v={name:"Extensions",methods:{pluginDisplayName(e){const t=e.split(".");return t.forEach(((e,n)=>{t[n]=e.charAt(0).toUpperCase()+e.slice(1)})),t.length>1&&(t[0]=`[${t[0]}]`),t.join(" ")}}};const k=v;var _=k,x={name:"Notification",methods:{notify(e){g.$.publishNotification(e)},notifyWarning(e){this.notify({text:e,warning:!0})},notifyError(e){throw this.notify({text:e,error:!0}),e}}};const C=x;var D=C,I={name:"Screen",methods:{isMobile(){return window.matchMedia("only screen and (max-width: 768px)").matches},isTablet(){return!this.isMobile()&&window.matchMedia("only screen and (max-width: 1023px)").matches},isDesktop(){return window.matchMedia("only screen and (min-width: 1024px)").matches}}};const $=I;var T=$,S={name:"Text",methods:{capitalize(e){return e?.length?e.charAt(0).toUpperCase()+e.slice(1):e},prettify(e){return e.split("_").map((e=>this.capitalize(e))).join(" ")},indent(e,t=2){return e.split("\n").map((e=>`${" ".repeat(t)}${e}`)).join("\n")}}};const q=S;var U=q,E=(n(7658),{name:"Types",methods:{parseBoolean(e){return"string"===typeof e?(e=e.toLowerCase(),"true"===e||"false"!==e&&!!parseInt(e)):!!e},convertSize(e){"string"===typeof e&&(e=parseInt(e));let t=null;const n=["B","KB","MB","GB","TB"];return n.forEach(((s,i)=>{e<=1024&&null==t?t=s:e>1024&&(i===n.length-1?t=s:e/=1024)})),`${e.toFixed(2)} ${t}`},convertTime(e){const t={},n=[];if(e=parseFloat(e),t.d=Math.round(e/86400),t.h=Math.round(e/3600-24*t.d),t.m=Math.round(e/60-(24*t.d+60*t.h)),t.s=Math.round(e-(24*t.d+3600*t.h+60*t.m),1),parseInt(t.d)){let e=t.d+" day";t.d>1&&(e+="s"),n.push(e)}if(parseInt(t.h)){let e=t.h+" hour";t.h>1&&(e+="s"),n.push(e)}if(parseInt(t.m)){let e=t.m+" minute";t.m>1&&(e+="s"),n.push(e)}let s=t.s+" second";return t.s>1&&(s+="s"),n.push(s),n.join(" ")},objectsEqual(e,t){if("object"!==typeof e||"object"!==typeof t)return!1;if(null==e||null==t)return null==e&&null==t;for(const n of Object.keys(e||{}))switch(typeof e[n]){case"object":if(!this.objectsEqual(e[n],t[n]))return!1;break;case"function":if(e[n].toString()!=t[n]?.toString())return!1;break;default:if(e[n]!=t[n])return!1;break}for(const n of Object.keys(t||{}))if(null==e[n]&&null!=t[n])return!1;return!0}}});const O=E;var M=O,P={name:"Url",methods:{parseUrlFragment(){return window.location.href.replace(/.*#(\w+)[?;]?.*/,"$1")},getUrlArgs(){return window.location.href.replace(/.*#/,"").replace(/.*\?/,"").split(/[&;]/).reduce(((e,t)=>{const n=t.split("=");return e[n[0]]=n[1],e}),{})},setUrlArgs(e){window.location.href=`/#${this.parseUrlFragment()}?${this.fragmentFromArgs(e)}`},fragmentFromArgs(e){return Object.entries(e).map((([e,t])=>`${encodeURIComponent(e)}=${encodeURIComponent(t)}`)).join("&")}}};const Z=P;var j=Z,N={name:"Utils",mixins:[a,c,p,m,y,D,_,T,U,M,j]};const W=N;var R=W},6791:function(e,t,n){"use strict";n.d(t,{Z:function(){return d}});var s=n(6252);const i={class:"loading"},o={class:"icon"};function a(e,t){return(0,s.wg)(),(0,s.iD)("div",i,[(0,s._)("div",o,[((0,s.wg)(),(0,s.iD)(s.HY,null,(0,s.Ko)(4,(e=>(0,s._)("div",{key:e}))),64))])])}var l=n(3744);const r={},c=(0,l.Z)(r,[["render",a],["__scopeId","data-v-4d9c871b"]]);var d=c},3493:function(e,t,n){"use strict";n.d(t,{Z:function(){return g}});var s=n(6252),i=n(3577);const o=e=>((0,s.dD)("data-v-09bd997a"),e=e(),(0,s.Cn)(),e),a=["id"],l={key:0,class:"header"},r=["textContent"],c=o((()=>(0,s._)("i",{class:"fas fa-xmark"},null,-1))),d=[c],u={class:"body"};function p(e,t,n,o,c,p){return(0,s.wg)(),(0,s.iD)("div",{class:(0,i.C_)(["modal-container fade-in",{hidden:!c.isVisible}]),id:n.id,style:(0,i.j5)({"--z-index":p.zIndex}),onClick:t[3]||(t[3]=(...e)=>p.close&&p.close(...e))},[(0,s._)("div",{class:(0,i.C_)(["modal",e.$attrs.class])},[(0,s._)("div",{class:"content",style:(0,i.j5)({"--width":n.width,"--height":n.height}),onClick:t[2]||(t[2]=e=>e.stopPropagation())},[n.title?((0,s.wg)(),(0,s.iD)("div",l,[n.title?((0,s.wg)(),(0,s.iD)("div",{key:0,class:"title",textContent:(0,i.zw)(n.title)},null,8,r)):(0,s.kq)("",!0),(0,s._)("button",{title:"Close",alt:"Close",onClick:t[0]||(t[0]=(...e)=>p.close&&p.close(...e))},d)])):(0,s.kq)("",!0),(0,s._)("div",u,[(0,s.WI)(e.$slots,"default",{onModalClose:t[1]||(t[1]=(...e)=>p.close&&p.close(...e))},void 0,!0)])],4)],2)],14,a)}n(7658);var h={name:"Modal",emits:["close","open"],props:{id:{type:String},title:{type:String},width:{type:[Number,String]},height:{type:[Number,String]},visible:{type:Boolean,default:!1},timeout:{type:[Number,String]},level:{type:Number,default:1}},data(){return{timeoutId:void 0,prevVisible:this.visible,isVisible:this.visible}},computed:{zIndex(){return 500+this.level}},methods:{close(){this.prevVisible=this.isVisible,this.isVisible=!1},hide(){this.close()},show(){this.prevVisible=this.isVisible,this.isVisible=!0},toggle(){this.isVisible?this.close():this.show()},onKeyUp(e){e.stopPropagation(),"Escape"===e.key&&this.close()}},mounted(){const e=this,t=t=>{t?e.$emit("open"):e.$emit("close"),e.isVisible=t};document.body.addEventListener("keyup",this.onKeyUp),this.$watch((()=>this.visible),t),this.$watch((()=>this.isVisible),t)},unmounted(){document.body.removeEventListener("keyup",this.onKeyUp)},updated(){if(this.prevVisible=this.isVisible,this.isVisible){let e=parseInt(getComputedStyle(this.$el).zIndex),t=[];for(const n of document.querySelectorAll(".modal-container:not(.hidden)")){const s=parseInt(getComputedStyle(n).zIndex);s>e?(e=s,t=[n]):s===e&&t.push(n)}(t.indexOf(this.$el)<0||t.length>1)&&(this.$el.style.zIndex=e+1)}if(this.isVisible&&this.timeout&&!this.timeoutId){const e=e=>()=>{e.close(),e.timeoutId=void 0};this.timeoutId=setTimeout(e(this),0+this.timeout)}}},f=n(3744);const m=(0,f.Z)(h,[["render",p],["__scopeId","data-v-09bd997a"]]);var g=m},6936:function(e,t,n){"use strict";n.d(t,{Z:function(){return m}});var s=n(6252),i=n(9963),o=n(3577);const a=e=>((0,s.dD)("data-v-db648f4c"),e=e(),(0,s.Cn)(),e),l={class:"dialog-content"},r=a((()=>(0,s._)("i",{class:"fas fa-check"},null,-1))),c=a((()=>(0,s._)("i",{class:"fas fa-xmark"},null,-1)));function d(e,t,n,a,d,u){const p=(0,s.up)("Modal");return(0,s.wg)(),(0,s.j4)(p,{ref:"modal",title:n.title},{default:(0,s.w5)((()=>[(0,s._)("div",l,[(0,s.WI)(e.$slots,"default",{},void 0,!0)]),(0,s._)("form",{class:"buttons",onSubmit:t[4]||(t[4]=(0,i.iM)(((...e)=>u.onConfirm&&u.onConfirm(...e)),["prevent"]))},[(0,s._)("button",{type:"submit",class:"ok-btn",onClick:t[0]||(t[0]=(...e)=>u.onConfirm&&u.onConfirm(...e)),onTouch:t[1]||(t[1]=(...e)=>u.onConfirm&&u.onConfirm(...e))},[r,(0,s.Uk)(" "+(0,o.zw)(n.confirmText),1)],32),(0,s._)("button",{type:"button",class:"cancel-btn",onClick:t[2]||(t[2]=(...e)=>u.close&&u.close(...e)),onTouch:t[3]||(t[3]=(...e)=>u.close&&u.close(...e))},[c,(0,s.Uk)(" "+(0,o.zw)(n.cancelText),1)],32)],32)])),_:3},8,["title"])}var u=n(3493),p={emits:["input","click","touch"],components:{Modal:u.Z},props:{title:{type:String},confirmText:{type:String,default:"OK"},cancelText:{type:String,default:"Cancel"}},methods:{onConfirm(){this.$emit("input"),this.close()},show(){this.$refs.modal.show()},close(){this.$refs.modal.hide()}}},h=n(3744);const f=(0,h.Z)(p,[["render",d],["__scopeId","data-v-db648f4c"]]);var m=f},6896:function(e,t,n){"use strict";n.d(t,{Z:function(){return v}});var s=n(6252),i=n(9963),o=n(3577);const a={class:"dropdown-container"},l=["title"],r=["textContent"],c={class:"body-container hidden",ref:"dropdownContainer"};function d(e,t,n,d,u,p){const h=(0,s.up)("DropdownBody");return(0,s.wg)(),(0,s.iD)("div",a,[(0,s._)("button",{title:n.title,ref:"button",onClick:t[0]||(t[0]=(0,i.iM)((e=>p.toggle(e)),["stop"]))},[n.iconClass?((0,s.wg)(),(0,s.iD)("i",{key:0,class:(0,o.C_)(["icon",n.iconClass])},null,2)):(0,s.kq)("",!0),n.text?((0,s.wg)(),(0,s.iD)("span",{key:1,class:"text",textContent:(0,o.zw)(n.text)},null,8,r)):(0,s.kq)("",!0)],8,l),(0,s._)("div",c,[(0,s.Wm)(h,{id:n.id,keepOpenOnItemClick:n.keepOpenOnItemClick,ref:"dropdown"},{default:(0,s.w5)((()=>[(0,s.WI)(e.$slots,"default",{},void 0,!0)])),_:3},8,["id","keepOpenOnItemClick"])],512)])}const u=["id"];function p(e,t,n,i,o,a){return(0,s.wg)(),(0,s.iD)("div",{class:"dropdown",id:n.id},[(0,s.WI)(e.$slots,"default",{},void 0,!0)],8,u)}var h={emits:["click"],props:{id:{type:String},keepOpenOnItemClick:{type:Boolean,default:!1}}},f=n(3744);const m=(0,f.Z)(h,[["render",p],["__scopeId","data-v-0d07f0e4"]]);var g=m,b=n(5250),w={components:{DropdownBody:g},emits:["click"],props:{id:{type:String},iconClass:{default:"fa fa-ellipsis-h"},text:{type:String},title:{type:String},keepOpenOnItemClick:{type:Boolean,default:!1}},data(){return{visible:!1}},computed:{dropdownWidth(){const e=this.$refs.dropdown?.$el;return e?parseFloat(getComputedStyle(e).width):0},dropdownHeight(){const e=this.$refs.dropdown?.$el;return e?parseFloat(getComputedStyle(e).height):0},buttonStyle(){return this.$refs.button?getComputedStyle(this.$refs.button):{}},buttonWidth(){return parseFloat(this.buttonStyle.width||0)},buttonHeight(){return parseFloat(this.buttonStyle.height||0)}},methods:{documentClickHndl(e){if(!this.visible)return;let t=e.target;while(t){if(t.classList.contains("dropdown"))return;t=t.parentElement}this.close()},close(){this.visible=!1,document.removeEventListener("click",this.documentClickHndl),b.$.emit("dropdown-close")},open(){document.addEventListener("click",this.documentClickHndl),this.visible=!0,this.$refs.dropdownContainer.classList.remove("hidden"),this.$nextTick((()=>{const e=this.$refs.button.getBoundingClientRect(),t={left:e.left+window.scrollX,top:e.top+window.scrollY},n={left:t.left,top:t.top+this.buttonHeight};n.left+this.dropdownWidth>(window.innerWidth+window.scrollX)/2&&(n.left-=this.dropdownWidth-this.buttonWidth),n.top+this.dropdownHeight>(window.innerHeight+window.scrollY)/2&&(n.top-=this.dropdownHeight+this.buttonHeight-10);const s=this.$refs.dropdown.$el;s.classList.add("fade-in"),s.style.top=`${n.top}px`,s.style.left=`${n.left}px`,b.$.emit("dropdown-open",this.$refs.dropdown),this.$refs.dropdownContainer.classList.add("hidden")}))},toggle(e){e.stopPropagation(),this.$emit("click"),this.visible?this.close():this.open()},onKeyUp(e){e.stopPropagation(),"Escape"===e.key&&this.close()}},mounted(){document.body.addEventListener("keyup",this.onKeyUp)},unmounted(){document.body.removeEventListener("keyup",this.onKeyUp)}};const y=(0,f.Z)(w,[["render",d],["__scopeId","data-v-6643395e"]]);var v=y},815:function(e,t,n){"use strict";n.d(t,{Z:function(){return h}});var s=n(6252),i=n(3577);const o={key:0,class:"col-2 icon"},a=["textContent"];function l(e,t,n,l,r,c){const d=(0,s.up)("Icon");return(0,s.wg)(),(0,s.iD)("div",{class:(0,i.C_)(["row item",n.itemClass]),onClick:t[0]||(t[0]=(...e)=>c.clicked&&c.clicked(...e))},[n.iconClass?.length||n.iconUrl?.length?((0,s.wg)(),(0,s.iD)("div",o,[(0,s.Wm)(d,{class:(0,i.C_)(n.iconClass),url:n.iconUrl},null,8,["class","url"])])):(0,s.kq)("",!0),(0,s._)("div",{class:(0,i.C_)(["text",{"col-10":null!=n.iconClass}]),textContent:(0,i.zw)(n.text)},null,10,a)],2)}var r=n(657),c=n(5250),d={components:{Icon:r.Z},props:{iconClass:{type:String},iconUrl:{type:String},text:{type:String},disabled:{type:Boolean,default:!1},itemClass:{}},methods:{clicked(){if(this.disabled)return!1;this.$parent.keepOpenOnItemClick||c.$.emit("dropdown-close")}}},u=n(3744);const p=(0,u.Z)(d,[["render",l],["__scopeId","data-v-1311e9ab"]]);var h=p},657:function(e,t,n){"use strict";n.d(t,{Z:function(){return u}});var s=n(6252),i=n(3577);const o={class:"icon-container"},a=["src","alt"];function l(e,t,n,l,r,c){return(0,s.wg)(),(0,s.iD)("div",o,[n.url?.length?((0,s.wg)(),(0,s.iD)("img",{key:0,class:"icon",src:n.url,alt:n.alt},null,8,a)):c.className?.length?((0,s.wg)(),(0,s.iD)("i",{key:1,class:(0,i.C_)(["icon",c.className]),style:(0,i.j5)({color:n.color})},null,6)):(0,s.kq)("",!0)])}var r={props:{class:{type:String},url:{type:String},color:{type:String,default:""},alt:{type:String,default:""}},computed:{className(){return this.class}}},c=n(3744);const d=(0,c.Z)(r,[["render",l],["__scopeId","data-v-706a3bd1"]]);var u=d},2717:function(e,t,n){"use strict";n.d(t,{Z:function(){return h}});var s=n(6252);const i=e=>((0,s.dD)("data-v-2edff8b7"),e=e(),(0,s.Cn)(),e),o={class:"restart-btn-container"},a=i((()=>(0,s._)("i",{class:"fas fa-redo-alt"},null,-1)));function l(e,t,n,i,l,r){const c=(0,s.up)("ConfirmDialog");return(0,s.wg)(),(0,s.iD)("div",o,[(0,s.Wm)(c,{ref:"modal",onInput:r.restart},{default:(0,s.w5)((()=>[(0,s.Uk)(" Are you sure that you want to restart the application? ")])),_:1},8,["onInput"]),(0,s._)("button",{class:"btn btn-default restart-btn",onClick:t[0]||(t[0]=(...e)=>r.showDialog&&r.showDialog(...e)),onTouch:t[1]||(t[1]=(...e)=>r.showDialog&&r.showDialog(...e))},[a,(0,s.Uk)(" Restart Application ")],32)])}var r=n(6936),c=n(8637),d={name:"RestartButton",components:{ConfirmDialog:r.Z},mixins:[c.Z],methods:{showDialog(){this.$refs.modal.show()},async restart(){await this.request("application.restart")}}},u=n(3744);const p=(0,u.Z)(d,[["render",l],["__scopeId","data-v-2edff8b7"]]);var h=p},8615:function(e,t,n){"use strict";n.d(t,{Z:function(){return u}});var s=n(6252),i=n(3577);const o={key:0,class:"icon"};function a(e,t,n,a,l,r){const c=(0,s.up)("Icon");return(0,s.wg)(),(0,s.iD)("div",{class:(0,i.C_)(["tab",n.selected?"selected":""]),onClick:t[0]||(t[0]=t=>e.$emit("input"))},[n.iconClass?.length||n.iconUrl?.length?((0,s.wg)(),(0,s.iD)("span",o,[(0,s.Wm)(c,{class:(0,i.C_)(n.iconClass),url:n.iconUrl},null,8,["class","url"])])):(0,s.kq)("",!0),(0,s.Uk)(" "),(0,s.WI)(e.$slots,"default",{},void 0,!0)],2)}var l=n(657),r={name:"Tab",components:{Icon:l.Z},emits:["input"],props:{selected:{type:Boolean,default:!1},iconClass:{type:String},iconUrl:{type:String}}},c=n(3744);const d=(0,c.Z)(r,[["render",a],["__scopeId","data-v-9dc3b3b6"]]);var u=d},3176:function(e,t,n){"use strict";n.d(t,{Z:function(){return c}});var s=n(6252);const i={class:"tabs"};function o(e,t,n,o,a,l){return(0,s.wg)(),(0,s.iD)("div",i,[(0,s.WI)(e.$slots,"default",{},void 0,!0)])}var a={name:"Tabs"},l=n(3744);const r=(0,l.Z)(a,[["render",o],["__scopeId","data-v-f4300bb0"]]);var c=r},7092:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return Oe}});var s=n(6252),i=n(9963),o=n(3577);const a={class:"row plugin extensions-container"},l={class:"filter-container"},r=["disabled"],c={class:"items"},d={key:0,class:"extension"},u=["data-name","onClick"],p={class:"name"},h={key:0,class:"enabled icon",title:"Enabled"},f={key:0,class:"enabled icon fas fa-circle-check"},m={key:0,class:"extension-body-container until tablet"},g={key:0,class:"extension-body-container from desktop"};function b(e,t,n,b,w,y){const v=(0,s.up)("Loading"),k=(0,s.up)("Extension");return(0,s.wg)(),(0,s.iD)("div",a,[w.loading?((0,s.wg)(),(0,s.j4)(v,{key:0})):(0,s.kq)("",!0),(0,s._)("header",null,[(0,s._)("div",l,[(0,s.wy)((0,s._)("input",{type:"text",ref:"filter",placeholder:"Extension name","onUpdate:modelValue":t[0]||(t[0]=e=>w.filter=e),disabled:w.loading},null,8,r),[[i.nr,w.filter]])])]),(0,s._)("main",null,[(0,s._)("div",c,[((0,s.wg)(!0),(0,s.iD)(s.HY,null,(0,s.Ko)(y.extensionNames,(e=>((0,s.wg)(),(0,s.iD)("div",{class:"extension-container",key:e},[y.matchesFilter(e)?((0,s.wg)(),(0,s.iD)("div",d,[(0,s._)("div",{class:(0,o.C_)(["item",{selected:e===w.selectedExtension}]),"data-name":e,onClick:t=>y.onClick(e,!1)},[(0,s._)("span",p,(0,o.zw)(y.extensions[e].name),1),y.enabledExtensions[e]?((0,s.wg)(),(0,s.iD)("span",h,[y.enabledExtensions[e]?((0,s.wg)(),(0,s.iD)("i",f)):(0,s.kq)("",!0)])):(0,s.kq)("",!0)],10,u),w.selectedExtension&&e===w.selectedExtension?((0,s.wg)(),(0,s.iD)("div",m,[(0,s.Wm)(k,{extension:y.extensions[w.selectedExtension],config:y.enabledExtensions[w.selectedExtension],"config-file":w.configFile},null,8,["extension","config","config-file"])])):(0,s.kq)("",!0)])):(0,s.kq)("",!0)])))),128))]),w.selectedExtension?((0,s.wg)(),(0,s.iD)("div",g,[(0,s.Wm)(k,{extension:y.extensions[w.selectedExtension],config:y.enabledExtensions[w.selectedExtension],"config-file":w.configFile},null,8,["extension","config","config-file"])])):(0,s.kq)("",!0)])])}var w=n(6791),y=n(8637);const v=e=>((0,s.dD)("data-v-3fa6b036"),e=e(),(0,s.Cn)(),e),k={class:"extension"},_=v((()=>(0,s._)("span",{class:"from tablet"},"Documentation",-1))),x=v((()=>(0,s._)("span",{class:"from tablet"},"Install",-1))),C=v((()=>(0,s._)("span",{class:"from tablet"},"Configuration",-1))),D={class:"extension-body"};function I(e,t,n,i,o,a){const l=(0,s.up)("Tab"),r=(0,s.up)("Tabs"),c=(0,s.up)("Doc"),d=(0,s.up)("Config"),u=(0,s.up)("Install");return(0,s.wg)(),(0,s.iD)("div",k,[(0,s._)("header",null,[(0,s.Wm)(r,null,{default:(0,s.w5)((()=>[(0,s.Wm)(l,{selected:"doc"===o.selectedTab,"icon-class":"fas fa-book",onInput:t[0]||(t[0]=e=>o.selectedTab="doc")},{default:(0,s.w5)((()=>[_])),_:1},8,["selected"]),(0,s.Wm)(l,{selected:"install"===o.selectedTab,"icon-class":"fas fa-download",onInput:t[1]||(t[1]=e=>o.selectedTab="install")},{default:(0,s.w5)((()=>[x])),_:1},8,["selected"]),(0,s.Wm)(l,{selected:"config"===o.selectedTab,"icon-class":"fas fa-square-check",onInput:t[2]||(t[2]=e=>o.selectedTab="config")},{default:(0,s.w5)((()=>[C])),_:1},8,["selected"])])),_:1})]),(0,s._)("div",D,["doc"===o.selectedTab?((0,s.wg)(),(0,s.j4)(c,{key:0,extension:n.extension},null,8,["extension"])):"config"===o.selectedTab?((0,s.wg)(),(0,s.j4)(d,{key:1,extension:n.extension,config:n.config,"config-file":n.configFile},null,8,["extension","config","config-file"])):"install"===o.selectedTab?((0,s.wg)(),(0,s.j4)(u,{key:2,extension:n.extension},null,8,["extension"])):(0,s.kq)("",!0)])])}var $=n(8615),T=n(3176);const S={key:0,class:"config-container current"},q=["innerHTML"],U=["innerHTML"];function E(e,t,n,i,a,l){const r=(0,s.up)("CopyButton");return(0,s.wg)(),(0,s.iD)(s.HY,null,[l.highlightedCurrentConfig?((0,s.wg)(),(0,s.iD)("div",S,[(0,s.Wm)(r,{text:a.curYamlConfig},null,8,["text"]),(0,s._)("pre",null,[(0,s._)("code",{class:"config-snippet",innerHTML:l.highlightedCurrentConfig},null,8,q)])])):(0,s.kq)("",!0),(0,s._)("div",{class:(0,o.C_)(["config-container snippet",{fullscreen:!l.highlightedCurrentConfig}])},[(0,s.Wm)(r,{text:n.extension.config_snippet},null,8,["text"]),(0,s._)("pre",null,[(0,s._)("code",{class:"config-snippet",innerHTML:l.highlightedConfigSnippet},null,8,U)])],2)],64)}n(8783),n(3465);var O=n(637);const M=e=>((0,s.dD)("data-v-6be1edc1"),e=e(),(0,s.Cn)(),e),P=M((()=>(0,s._)("i",{class:"fas fa-clipboard"},null,-1))),Z=[P];function j(e,t,n,i,o,a){return(0,s.wg)(),(0,s.iD)("button",{class:"copy-button",ref:"copyButton",title:"Copy to clipboard",onClick:t[0]||(t[0]=(...e)=>a.copy&&a.copy(...e)),onInput:t[1]||(t[1]=(...e)=>a.copy&&a.copy(...e))},Z,544)}var N={name:"CopyButton",emits:["input","click"],mixins:[y.Z],props:{text:{type:String}},methods:{async copy(e){this.text?.length&&await this.copyToClipboard(this.text),this.$emit(e.type,e)}}},W=n(3744);const R=(0,W.Z)(N,[["render",j],["__scopeId","data-v-6be1edc1"]]);var z=R,L={name:"Extension",mixins:[y.Z],components:{CopyButton:z},props:{extension:{type:Object,required:!0},config:{type:Object},configFile:{type:String}},data(){return{curYamlConfig:null}},computed:{highlightedConfigSnippet(){return O.Z.highlight("yaml",`# Configuration template. You can add it to ${this.configFile}\n`+this.extension.config_snippet).value.trim()},highlightedCurrentConfig(){return this.curYamlConfig?O.Z.highlight("yaml","# Currently loaded configuration\n"+this.curYamlConfig).value.trim():null}},methods:{async loadCurrentConfig(){this.config?this.curYamlConfig=await this.request("utils.to_yaml",{obj:{[this.extension.name]:this.config}}):this.curYamlConfig=null}},mounted(){this.loadCurrentConfig(),this.$watch("config",this.loadCurrentConfig)}};const A=(0,W.Z)(L,[["render",E],["__scopeId","data-v-f988670a"]]);var F=A;const H=e=>((0,s.dD)("data-v-5aac2322"),e=e(),(0,s.Cn)(),e),B={class:"doc"},V=["href"],Y=H((()=>(0,s._)("i",{class:"icon fas fa-book"},null,-1))),K=["innerHTML"],J={key:0,class:"actions"},X=H((()=>(0,s._)("h3",null,[(0,s._)("i",{class:"icon fas fa-play"}),(0,s.Uk)(" Actions ")],-1))),G=["href"],Q={key:1,class:"events"},ee=H((()=>(0,s._)("h3",null,[(0,s._)("i",{class:"icon fas fa-flag"}),(0,s.Uk)(" Events ")],-1))),te=["href"];function ne(e,t,n,i,a,l){return(0,s.wg)(),(0,s.iD)("section",B,[(0,s._)("header",null,[(0,s._)("h2",null,[(0,s._)("a",{class:"title",href:n.extension.doc_url,target:"_blank"},[Y,(0,s.Uk)(" "+(0,o.zw)(n.extension.name),1)],8,V)])]),a.doc?((0,s.wg)(),(0,s.iD)("article",{key:0,onClick:t[0]||(t[0]=(...e)=>l.onDocClick&&l.onDocClick(...e))},[(0,s._)("div",{class:"doc-content",innerHTML:a.doc},null,8,K),Object.keys(n.extension.actions||{}).length>0?((0,s.wg)(),(0,s.iD)("div",J,[X,(0,s._)("ul",null,[((0,s.wg)(!0),(0,s.iD)(s.HY,null,(0,s.Ko)(l.actionNames,(e=>((0,s.wg)(),(0,s.iD)("li",{class:"action",key:e},[(0,s._)("a",{href:`/#execute?action=${n.extension.name}.${e}`},(0,o.zw)(n.extension.name)+"."+(0,o.zw)(e),9,G)])))),128))])])):(0,s.kq)("",!0),Object.keys(n.extension.events||{}).length>0?((0,s.wg)(),(0,s.iD)("div",Q,[ee,(0,s._)("ul",null,[((0,s.wg)(!0),(0,s.iD)(s.HY,null,(0,s.Ko)(l.eventNames,(e=>((0,s.wg)(),(0,s.iD)("li",{class:"event",key:e},[(0,s._)("a",{href:n.extension.events[e].doc_url,target:"_blank"},(0,o.zw)(e),9,te)])))),128))])])):(0,s.kq)("",!0)])):(0,s.kq)("",!0)])}var se=n(5250),ie={name:"Doc",mixins:[y.Z],props:{extension:{type:Object,required:!0}},data(){return{doc:null,localPageRegex:new RegExp("^/?#.*$")}},computed:{actionNames(){return Object.keys(this.extension.actions).sort()},eventNames(){return Object.keys(this.extension.events).sort()}},methods:{async parseDoc(){return this.extension.doc?.length?await this.request("utils.rst_to_html",{text:this.extension.doc}):null},refreshDoc(){this.parseDoc().then((e=>this.doc=e))},onDocClick(e){if("a"!==e.target.tagName.toLowerCase())return!0;e.preventDefault();const t=e.target.getAttribute("href");if(!t)return!0;if(t.match(this.localPageRegex))return window.location.href=t,!0;const n=t.match(/^https:\/\/docs\.platypush\.tech\/platypush\/(plugins|backend)\/([\w.]+)\.html#?.*$/);if(!n)return e.preventDefault(),window.open(t,"_blank"),!0;let[s,i]=n.slice(1);"backend"===s&&(i=`backend.${i}`),se.$.emit("update:extension",i),e.preventDefault()}},mounted(){this.refreshDoc(),this.$watch("extension.doc",this.refreshDoc)}};const oe=(0,W.Z)(ie,[["render",ne],["__scopeId","data-v-5aac2322"]]);var ae=oe;const le=e=>((0,s.dD)("data-v-7e5a8bae"),e=e(),(0,s.Cn)(),e),re={class:"install-container"},ce={class:"top"},de=le((()=>(0,s._)("header",null,[(0,s._)("h2",null,"Dependencies")],-1))),ue={class:"body"},pe={class:"container install-cmd-container"},he=["innerHTML"],fe={key:0,class:"buttons install-btn"},me=["disabled"],ge=le((()=>(0,s._)("i",{class:"fas fa-download"},null,-1))),be={key:0,class:"bottom"},we=le((()=>(0,s._)("header",null,[(0,s._)("h2",null,"Output")],-1))),ye={class:"body"},ve={class:"container install-output",ref:"installOutput"},ke=["textContent"],_e={key:0,class:"loading-container"};function xe(e,t,n,i,a,l){const r=(0,s.up)("CopyButton"),c=(0,s.up)("RestartButton"),d=(0,s.up)("Loading");return(0,s.wg)(),(0,s.iD)("div",re,[(0,s._)("section",ce,[de,(0,s._)("div",ue,[(0,s._)("div",pe,[(0,s.Wm)(r,{text:l.installCmd},null,8,["text"]),(0,s._)("pre",null,[(0,s._)("code",{innerHTML:l.highlightedInstallCmd},null,8,he)])]),l.installCmd?.length?((0,s.wg)(),(0,s.iD)("div",fe,[a.installDone?((0,s.wg)(),(0,s.j4)(c,{key:0})):(0,s.kq)("",!0),(0,s._)("button",{type:"button",class:"btn btn-default",disabled:a.installRunning,onClick:t[0]||(t[0]=(...e)=>l.installExtension&&l.installExtension(...e))},[ge,(0,s.Uk)(" Install ")],8,me)])):(0,s.kq)("",!0)])]),a.installRunning||a.installOutput?((0,s.wg)(),(0,s.iD)("section",be,[we,(0,s._)("div",ye,[(0,s._)("div",ve,[(0,s.Wm)(r,{text:a.installOutput},null,8,["text"]),(0,s._)("pre",null,[(0,s._)("code",{textContent:(0,o.zw)(a.installOutput)},null,8,ke),a.installRunning?((0,s.wg)(),(0,s.iD)("div",_e,[(0,s.Uk)("\n "),(0,s.Wm)(d),(0,s.Uk)("\n ")])):(0,s.kq)("",!0)])],512)])])):(0,s.kq)("",!0)])}var Ce=n(2717),De={name:"Install",mixins:[y.Z],emit:["install-start","install-end"],components:{CopyButton:z,Loading:w.Z,RestartButton:Ce.Z},props:{extension:{type:Object,required:!0}},data(){return{installRunning:!1,installDone:!1,installOutput:null,pendingCommands:0,error:null}},computed:{installCmd(){const e=this.extension.deps.install_cmd.join("\n").trim();return e?.length?e:null},highlightedInstallCmd(){return this.installCmd?O.Z.highlight("bash",this.extension.deps.install_cmd.map((e=>`$ ${e}`)).join("\n").trim()).value:"# No extra installation steps required"}},methods:{wsProcess(e){try{const t="https:"===window.location.protocol?"wss":"ws",n=`${t}://${location.host}${e}`,s=new WebSocket(n);s.onmessage=this.onMessage,s.onerror=this.onError,s.onclose=this.onClose}catch(t){this.notify({error:!0,title:"Websocket initialization error",text:t.toString()}),console.error("Websocket initialization error"),console.error(t),this.error=t,this.installRunning=!1}},onMessage(e){this.installOutput||(this.installOutput=""),this.installOutput+=e.data},onClose(){this.installRunning=!1,this.$emit("install-end",this.extension),this.error||(this.installDone=!0),this.notify({title:"Extension installed",html:`Extension ${this.extension.name} installed successfully`,image:{iconClass:"fas fa-check"}})},onError(e){this.notify({error:!0,title:"Websocket error",text:e.toString()}),console.error("Websocket error"),console.error(e),this.error=e,this.installRunning=!1},installExtension(){this.error=null,this.installRunning=!0,this.installOutput="",this.$emit("install-start",this.extension);const e=(this.extension.deps.install_cmd||[]).join(";\n");this.request("shell.exec",{cmd:e,ws:!0}).then((e=>{this.wsProcess(e.ws_path)})).catch((e=>{this.error=e,this.installRunning=!1,this.$emit("install-end",this.extension)}))}},mounted(){this.$watch("installOutput",(()=>{this.$nextTick((()=>{this.$refs.installOutput.focus(),this.$refs.installOutput.scrollTop=this.$refs.installOutput.scrollHeight}))}))}};const Ie=(0,W.Z)(De,[["render",xe],["__scopeId","data-v-7e5a8bae"]]);var $e=Ie,Te={name:"Extension",components:{Config:F,Doc:ae,Install:$e,Tab:$.Z,Tabs:T.Z},props:{extension:{type:Object,required:!0},config:{type:Object},configFile:{type:String}},data(){return{selectedTab:"doc"}}};const Se=(0,W.Z)(Te,[["render",I],["__scopeId","data-v-3fa6b036"]]);var qe=Se,Ue={name:"Extensions",mixins:[y.Z],components:{Extension:qe,Loading:w.Z},data(){return{loading:!1,plugins:{},backends:{},enabledPlugins:{},enabledBackends:{},filter:"",selectedExtension:null,configFile:null,config:{}}},computed:{extensions(){const e={};return Object.entries(this.plugins).forEach((([t,n])=>{e[t]={...n,name:t}})),Object.entries(this.backends).forEach((([t,n])=>{t=`backend.${t}`,e[t]={...n,name:t}})),e},enabledExtensions(){return[this.enabledPlugins,this.enabledBackends].reduce(((e,t)=>(Object.entries(t).forEach((([t,n])=>{e[t]=n})),e)),{})},extensionNames(){return Object.keys(this.extensions).sort()}},methods:{onClick(e,t=!0,n=!0){this.selectedExtension===e?this.selectedExtension=null:this.onInput(e,t,n)},onInput(e,t=!0,n=!0){t&&(this.filter=e);const s=e?.toLowerCase()?.trim();if(s?.length&&this.extensions[s]){this.selectedExtension=s,n&&this.setUrlArgs({extension:s});const e=this.$el.querySelector(`.extensions-container .item[data-name="${s}"]`);e&&e.scrollIntoView({behavior:"smooth"})}else this.selectedExtension=null,n&&this.setUrlArgs({})},matchesFilter(e){return!this.filter||e.includes(this.filter.toLowerCase())},async loadExtensions(){this.loading=!0;let[e,t]=[[],[]];try{[this.plugins,this.backends,e,t,this.config]=await Promise.all([this.request("inspect.get_all_plugins"),this.request("inspect.get_all_backends"),this.request("inspect.get_enabled_plugins"),this.request("inspect.get_enabled_backends"),this.request("inspect.get_config")])}finally{this.loading=!1}this.enabledPlugins=e.reduce(((e,t)=>(e[t]=this.config[t]||{},e)),{}),this.enabledBackends=t.reduce(((e,t)=>(t=`backend.${t}`,e[t]=this.config[t]||{},e)),{}),this.loadExtensionFromUrl(),this.$watch("$route.hash",(()=>this.loadExtensionFromUrl()))},async loadConfigFile(){this.configFile=await this.request("config.get_config_file")},loadExtensionFromUrl(){const e=this.getUrlArgs().extension;e&&this.$nextTick((()=>this.onInput(e,!1,!1)))}},mounted(){this.loadConfigFile(),this.loadExtensions(),se.$.on("update:extension",(e=>this.onInput(e,!1))),this.$nextTick((()=>this.$refs.filter.focus()))}};const Ee=(0,W.Z)(Ue,[["render",b],["__scopeId","data-v-456a0caf"]]);var Oe=Ee},3136:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return De}});var s=n(6252);const i={class:"settings-container"};function o(e,t,n,o,a,l){const r=(0,s.up)("Application"),c=(0,s.up)("Users"),d=(0,s.up)("Token");return(0,s.wg)(),(0,s.iD)("div",i,[(0,s._)("main",null,["application"===n.selectedPanel?((0,s.wg)(),(0,s.j4)(r,{key:0})):(0,s.kq)("",!0),"users"===n.selectedPanel&&a.currentUser?((0,s.wg)(),(0,s.j4)(c,{key:1,"session-token":a.sessionToken,"current-user":a.currentUser},null,8,["session-token","current-user"])):"tokens"===n.selectedPanel&&a.currentUser?((0,s.wg)(),(0,s.j4)(d,{key:2,"session-token":a.sessionToken,"current-user":a.currentUser},null,8,["session-token","current-user"])):(0,s.kq)("",!0)])])}const a={class:"app-container"},l={class:"btn-container"},r={class:"btn-container"};function c(e,t,n,i,o,c){const d=(0,s.up)("RestartButton"),u=(0,s.up)("StopButton");return(0,s.wg)(),(0,s.iD)("div",a,[(0,s._)("div",l,[(0,s.Wm)(d)]),(0,s._)("div",r,[(0,s.Wm)(u)])])}var d=n(2717);const u=e=>((0,s.dD)("data-v-1eab04fa"),e=e(),(0,s.Cn)(),e),p={class:"stop-btn-container"},h=u((()=>(0,s._)("br",null,null,-1))),f=u((()=>(0,s._)("br",null,null,-1))),m=u((()=>(0,s._)("span",{class:"text-danger"}," This will stop the application and you will not be able to restart it through the Web interface! ",-1))),g=u((()=>(0,s._)("i",{class:"fas fa-stop"},null,-1)));function b(e,t,n,i,o,a){const l=(0,s.up)("ConfirmDialog");return(0,s.wg)(),(0,s.iD)("div",p,[(0,s.Wm)(l,{ref:"modal",onInput:a.stop},{default:(0,s.w5)((()=>[(0,s.Uk)(" Are you sure that you want to stop the application? "),h,f,m])),_:1},8,["onInput"]),(0,s._)("button",{class:"btn btn-default stop-btn",onClick:t[0]||(t[0]=(...e)=>a.showDialog&&a.showDialog(...e)),onTouch:t[1]||(t[1]=(...e)=>a.showDialog&&a.showDialog(...e))},[g,(0,s.Uk)(" Stop Application ")],32)])}var w=n(6936),y=n(8637),v={name:"StopButton",components:{ConfirmDialog:w.Z},mixins:[y.Z],methods:{showDialog(){this.$refs.modal.show()},async stop(){await this.request("application.stop")}}},k=n(3744);const _=(0,k.Z)(v,[["render",b],["__scopeId","data-v-1eab04fa"]]);var x=_,C={name:"Application",components:{RestartButton:d.Z,StopButton:x}};const D=(0,k.Z)(C,[["render",c],["__scopeId","data-v-40365cea"]]);var I=D,$=n(3577),T=n(9963);const S={class:"token-container"},q={class:"token-container"},U=(0,s._)("label",null,[(0,s.Uk)(" This is your generated token. Treat it carefully and do not share it with untrusted parties."),(0,s._)("br"),(0,s.Uk)(" Also, make sure to save it - it WILL NOT be displayed again. ")],-1),E=["textContent"],O={class:"token-container"},M=(0,s._)("label",null," This is your current session token. It will be invalidated once you log out of the current session. ",-1),P=["textContent"],Z={class:"body"},j=(0,s.uE)('
Platypush provides two types of tokens:
JWT tokens are bearer-only, and they contain encrypted authentication information. They can be used as permanent or time-based tokens to authenticate with the Platypush API.
Session tokens are randomly generated tokens stored on the application database. A session token generated in this session will expire when you log out of it.
Generate a JWT authentication token that can be used for API calls to the /execute endpoint.
You can include the token in your requests in any of the following ways:
Specify it on the Authorization: Bearer header;
Specify it on the X-Token header;
Specify it as a URL parameter: http://site:8008/execute?token=... for a JWT token and ...?session_token=... for a session token;
Specify it on the body of your JSON request: {"type":"request", "action", "...", "token":"..."} for a JWT token, or "session_token" for a session token.
Confirm your credentials in order to generate a new JWT token.
Show session token will instead show the token cookie associated to the current session.
',1),N={class:"form-container"},W=(0,s._)("span",null,"Username",-1),R=["value"],z=(0,s._)("label",null,[(0,s._)("span",null,"Confirm password"),(0,s._)("span",null,[(0,s._)("input",{type:"password",name:"password"})])],-1),L=(0,s._)("label",null,[(0,s._)("span",null,"Token validity in days"),(0,s._)("span",null,[(0,s._)("input",{type:"text",name:"validityDays"})]),(0,s._)("span",{class:"note"},[(0,s.Uk)(" Decimal values are also supported - e.g. "),(0,s._)("i",null,"0.5"),(0,s.Uk)(" means half a day (12 hours). An empty or zero value means that the token has no expiry date. ")])],-1),A=(0,s._)("label",null,[(0,s._)("input",{type:"submit",class:"btn btn-primary",value:"Generate JWT token"})],-1);function F(e,t,n,i,o,a){const l=(0,s.up)("Loading"),r=(0,s.up)("Modal");return(0,s.wg)(),(0,s.iD)("div",S,[o.loading?((0,s.wg)(),(0,s.j4)(l,{key:0})):(0,s.kq)("",!0),(0,s.Wm)(r,{ref:"tokenModal"},{default:(0,s.w5)((()=>[(0,s._)("div",q,[U,(0,s._)("textarea",{class:"token",textContent:(0,$.zw)(o.token),onFocus:t[0]||(t[0]=(...e)=>a.onTokenSelect&&a.onTokenSelect(...e))},null,40,E)])])),_:1},512),(0,s.Wm)(r,{ref:"sessionTokenModal"},{default:(0,s.w5)((()=>[(0,s._)("div",O,[M,(0,s._)("textarea",{class:"token",textContent:(0,$.zw)(n.sessionToken),onFocus:t[1]||(t[1]=(...e)=>a.onTokenSelect&&a.onTokenSelect(...e))},null,40,P)])])),_:1},512),(0,s._)("div",Z,[j,(0,s._)("div",N,[(0,s._)("form",{onSubmit:t[3]||(t[3]=(0,T.iM)(((...e)=>a.generateToken&&a.generateToken(...e)),["prevent"])),ref:"generateTokenForm"},[(0,s._)("label",null,[W,(0,s._)("span",null,[(0,s._)("input",{type:"text",name:"username",value:n.currentUser.username,disabled:""},null,8,R)])]),z,L,A,(0,s._)("label",null,[(0,s._)("input",{type:"button",class:"btn btn-default",value:"Show session token",onClick:t[2]||(t[2]=(0,T.iM)((t=>e.$refs.sessionTokenModal.show()),["stop"]))})])],544)])])])}var H=n(6154),B=n(6791),V=n(3493),Y={name:"Token",components:{Modal:V.Z,Loading:B.Z},mixins:[y.Z],props:{currentUser:{type:Object,required:!0},sessionToken:{type:String,required:!0}},data(){return{loading:!1,token:null}},methods:{async generateToken(e){const t=this.currentUser.username,n=e.target.password.value;let s=e.target.validityDays?.length?parseInt(e.target.validityDays.value):0;s||(s=null),this.loading=!0;try{this.token=(await H.Z.post("/auth",{username:t,password:n,expiry_days:s})).data.token,this.token?.length&&this.$refs.tokenModal.show()}catch(i){console.error(i.toString()),this.notify({text:i.toString(),error:!0})}finally{this.loading=!1}},onTokenSelect(e){e.target.select(),document.execCommand("copy"),this.notify({text:"Token copied to clipboard",image:{iconClass:"fa fa-check"}})}}};const K=(0,k.Z)(Y,[["render",F]]);var J=K;const X=["disabled"],G=["disabled"],Q=["disabled"],ee=["disabled"],te=["value"],ne=["disabled"],se=["disabled"],ie=["disabled"],oe=["disabled"],ae={class:"body"},le={class:"users-list"},re=["onClick"],ce=["textContent"],de={class:"actions pull-right col-4"};function ue(e,t,n,i,o,a){const l=(0,s.up)("Loading"),r=(0,s.up)("Modal"),c=(0,s.up)("DropdownItem"),d=(0,s.up)("Dropdown"),u=(0,s.up)("FloatingButton"),p=(0,s.up)("ConfirmDialog");return(0,s.wg)(),(0,s.iD)(s.HY,null,[o.loading?((0,s.wg)(),(0,s.j4)(l,{key:0})):(0,s.kq)("",!0),(0,s.Wm)(r,{ref:"addUserModal",title:"Add User"},{default:(0,s.w5)((()=>[(0,s._)("form",{action:"#",method:"POST",ref:"addUserForm",onSubmit:t[0]||(t[0]=(...e)=>a.createUser&&a.createUser(...e))},[(0,s._)("label",null,[(0,s._)("input",{type:"text",name:"username",placeholder:"Username",disabled:o.commandRunning},null,8,X)]),(0,s._)("label",null,[(0,s._)("input",{type:"password",name:"password",placeholder:"Password",disabled:o.commandRunning},null,8,G)]),(0,s._)("label",null,[(0,s._)("input",{type:"password",name:"confirm_password",placeholder:"Confirm password",disabled:o.commandRunning},null,8,Q)]),(0,s._)("label",null,[(0,s._)("input",{type:"submit",class:"btn btn-primary",value:"Create User",disabled:o.commandRunning},null,8,ee)])],544)])),_:1},512),(0,s.Wm)(r,{ref:"changePasswordModal",title:"Change Password"},{default:(0,s.w5)((()=>[(0,s._)("form",{action:"#",method:"POST",ref:"changePasswordForm",onSubmit:t[1]||(t[1]=(...e)=>a.changePassword&&a.changePassword(...e))},[(0,s._)("label",null,[(0,s._)("input",{type:"text",name:"username",placeholder:"Username",value:o.selectedUser,disabled:"disabled"},null,8,te)]),(0,s._)("label",null,[(0,s._)("input",{type:"password",name:"password",placeholder:"Current password",disabled:o.commandRunning},null,8,ne)]),(0,s._)("label",null,[(0,s._)("input",{type:"password",name:"new_password",placeholder:"New password",disabled:o.commandRunning},null,8,se)]),(0,s._)("label",null,[(0,s._)("input",{type:"password",name:"confirm_new_password",placeholder:"Confirm new password",disabled:o.commandRunning},null,8,ie)]),(0,s._)("label",null,[(0,s._)("input",{type:"submit",class:"btn btn-primary",value:"Change Password",disabled:o.commandRunning},null,8,oe)])],544)])),_:1},512),(0,s._)("div",ae,[(0,s._)("ul",le,[((0,s.wg)(!0),(0,s.iD)(s.HY,null,(0,s.Ko)(o.users,(n=>((0,s.wg)(),(0,s.iD)("li",{key:n.user_id,class:"item user",onClick:e=>o.selectedUser=n.username},[(0,s._)("div",{class:"name col-8",textContent:(0,$.zw)(n.username)},null,8,ce),(0,s._)("div",de,[(0,s.Wm)(d,{title:"User Actions","icon-class":"fa fa-ellipsis"},{default:(0,s.w5)((()=>[(0,s.Wm)(c,{text:"Change Password",disabled:o.commandRunning,"icon-class":"fa fa-key",onClick:e=>a.showChangePasswordModal(n)},null,8,["disabled","onClick"]),(0,s.Wm)(c,{text:"Delete User",disabled:o.commandRunning,"icon-class":"fa fa-trash",onClick:t[2]||(t[2]=t=>e.$refs.deleteUserDialog.show())},null,8,["disabled"])])),_:2},1024)])],8,re)))),128))]),(0,s.Wm)(u,{"icon-class":"fa fa-plus",text:"Add User",onClick:a.showAddUserModal},null,8,["onClick"]),(0,s.Wm)(p,{ref:"deleteUserDialog",onInput:t[3]||(t[3]=e=>a.deleteUser(o.selectedUser))},{default:(0,s.w5)((()=>[(0,s.Uk)(" Are you sure that you want to remove the user "+(0,$.zw)(o.selectedUser)+"? ",1)])),_:1},512)])],64)}var pe=n(6896),he=n(815);const fe=["title"];function me(e,t,n,i,o,a){const l=(0,s.up)("Icon");return(0,s.wg)(),(0,s.iD)("div",{class:(0,$.C_)(["floating-btn",a.className])},[(0,s._)("button",{type:"button",class:"btn btn-primary",title:n.title,onClick:t[0]||(t[0]=t=>e.$emit("click",t))},[(0,s.Wm)(l,{class:(0,$.C_)(n.iconClass),url:n.iconUrl},null,8,["class","url"])],8,fe)],2)}var ge=n(657),be={name:"FloatingButton",components:{Icon:ge.Z},emits:["click"],props:{iconClass:{type:String},iconUrl:{type:String},class:{type:String},title:{type:String}},computed:{className(){return this.class}}};const we=(0,k.Z)(be,[["render",me],["__scopeId","data-v-133e57f8"]]);var ye=we,ve={name:"Users",components:{ConfirmDialog:w.Z,Dropdown:pe.Z,DropdownItem:he.Z,FloatingButton:ye,Loading:B.Z,Modal:V.Z},mixins:[y.Z],props:{sessionToken:{type:String,required:!0},currentUser:{type:Object,required:!0}},data(){return{users:[],commandRunning:!1,loading:!1,selectedUser:null}},methods:{async refresh(){this.loading=!0;try{this.users=await this.request("user.get_users")}finally{this.loading=!1}},async createUser(e){e.preventDefault();const t=[...this.$refs.addUserForm.querySelectorAll("input[name]")].reduce(((e,t)=>(e[t.name]=t.value,e)),{});if(t.password===t.confirm_password){this.commandRunning=!0;try{await this.request("user.create_user",{username:t.username,password:t.password,session_token:this.sessionToken})}finally{this.commandRunning=!1}this.notify({text:"User "+t.username+" created",image:{iconClass:"fas fa-check"}}),this.$refs.addUserModal.close(),await this.refresh()}else this.notify({title:"Unable to create user",text:"Please check that the passwords match",error:!0,image:{iconClass:"fas fa-times"}})},async changePassword(e){e.preventDefault();const t=[...this.$refs.changePasswordForm.querySelectorAll("input[name]")].reduce(((e,t)=>(e[t.name]=t.value,e)),{});if(t.new_password!==t.confirm_new_password)return void this.notify({title:"Unable to update password",text:"Please check that the passwords match",error:!0,image:{iconClass:"fas fa-times"}});this.commandRunning=!0;let n=!1;try{n=await this.request("user.update_password",{username:t.username,old_password:t.password,new_password:t.new_password})}finally{this.commandRunning=!1}n?(this.$refs.changePasswordModal.close(),this.notify({text:"Password successfully updated",image:{iconClass:"fas fa-check"}})):this.notify({title:"Unable to update password",text:"The current password is incorrect",error:!0,image:{iconClass:"fas fa-times"}})},async deleteUser(e){this.commandRunning=!0;try{await this.request("user.delete_user",{username:e,session_token:this.sessionToken})}finally{this.commandRunning=!1}this.notify({text:`User ${e} removed`,image:{iconClass:"fas fa-check"}}),this.selectedUser=null,await this.refresh()},showAddUserModal(){this.$refs.addUserModal.show(),this.$nextTick((()=>{this.$refs.addUserForm.reset(),this.$refs.addUserForm.username.focus()}))},showChangePasswordModal(e){this.$refs.changePasswordModal.show(),this.$nextTick((()=>{this.$refs.changePasswordForm.password.focus(),this.selectedUser=e.username}))}},mounted(){this.refresh()}};const ke=(0,k.Z)(ve,[["render",ue],["__scopeId","data-v-510035f2"]]);var _e=ke,xe={name:"Settings",components:{Application:I,Users:_e,Token:J},mixins:[y.Z],props:{selectedPanel:{type:String}},data(){return{currentUser:null,sessionToken:null}},methods:{async refresh(){this.sessionToken=this.getCookies()["session_token"],this.currentUser=await this.request("user.get_user_by_session",{session_token:this.sessionToken})}},mounted(){this.refresh()}};const Ce=(0,k.Z)(xe,[["render",o]]);var De=Ce},3379:function(e,t,n){var s={"./Camera/Index":[5324,8039,5324],"./CameraAndroidIpcam/Index":[5794,5794],"./CameraCv/Index":[6148,8039,6148],"./CameraFfmpeg/Index":[9334,8039,9334],"./CameraGstreamer/Index":[813,8039,813],"./CameraIrMlx90640/Index":[7381,8039,7381],"./CameraPi/Index":[5214,8039,8895],"./Entities/Index":[3174,2992,4558],"./Execute/Index":[7673,7673],"./Extensions/Index":[7092],"./Light/Index":[7184,2471,5040,7184],"./LightHue/Index":[2976,2471,5040,7184,2976],"./Media/Index":[2265,2471,7562,6079,2992,2265],"./MediaMplayer/Index":[3518,2471,7562,6079,2992,2265,3518],"./MediaMpv/Index":[4765,2471,7562,6079,2992,2265,4765],"./MediaOmxplayer/Index":[7819,2471,7562,6079,2992,2265,7819],"./MediaVlc/Index":[2614,2471,7562,6079,2992,2265,2614],"./Music/Index":[2986,2471,7562,2986],"./MusicMpd/Index":[1309,2471,7562,2986,1309],"./MusicSnapcast/Index":[6215,2471,5040,6215],"./MusicSpotify/Index":[2068,2471,7562,2986,2068],"./Rtorrent/Index":[2183,6079,7968,2183],"./Settings/Index":[3136],"./Sound/Index":[746,746],"./Torrent/Index":[8784,6079,7968,8784],"./Tts/Index":[3732,8069,3732],"./TtsGoogle/Index":[7605,8069,2853],"./TvSamsungWs/Index":[4589,4589],"./ZigbeeMqtt/Index":[1259,2471,5040,1259],"./Zwave/Index":[2732,2471,5040,7880,2732],"./ZwaveMqtt/Index":[1088,2471,5040,7880,1088]};function i(e){if(!n.o(s,e))return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}));var t=s[e],i=t[0];return Promise.all(t.slice(1).map(n.e)).then((function(){return n(i)}))}i.keys=function(){return Object.keys(s)},i.id=3379,e.exports=i},6725:function(e,t,n){var s={"./Calendar/Index":[5638,5638],"./Camera/Index":[446,446],"./Component/Index":[1449,2471,5040,1449],"./DateTime/Index":[4619,1391,4619],"./DateTimeWeather/Index":[9962,3594,1391,9962],"./ImageCarousel/Index":[306,3594,1391,306],"./Music/Index":[311,311],"./Plugin/Index":[8179,8179],"./RssNews/Index":[6523,6523],"./Weather/Index":[3594,3594]};function i(e){if(!n.o(s,e))return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}));var t=s[e],i=t[0];return Promise.all(t.slice(1).map(n.e)).then((function(){return n(i)}))}i.keys=function(){return Object.keys(s)},i.id=6725,e.exports=i},1359:function(e){"use strict";e.exports=JSON.parse('{"arduino":{"class":"fas fa-microchip"},"assistant.google":{"class":"fas fa-microphone-lines"},"bluetooth":{"class":"fab fa-bluetooth"},"camera.android.ipcam":{"class":"fab fa-android"},"camera.cv":{"class":"fas fa-camera"},"camera.ffmpeg":{"class":"fas fa-camera"},"camera.gstreamer":{"class":"fas fa-camera"},"camera.ir.mlx90640":{"class":"fas fa-sun"},"camera.pi":{"class":"fas fa-camera"},"entities":{"class":"fa fa-home"},"execute":{"class":"fa fa-play"},"extensions":{"class":"fas fa-puzzle-piece"},"light.hue":{"class":"fas fa-lightbulb"},"linode":{"class":"fas fa-cloud"},"media.jellyfin":{"imgUrl":"/icons/jellyfin.svg"},"media.kodi":{"imgUrl":"/icons/kodi.svg"},"media.omxplayer":{"class":"fa fa-film"},"media.mplayer":{"class":"fa fa-film"},"media.mpv":{"class":"fa fa-film"},"media.plex":{"imgUrl":"/icons/plex.svg"},"media.vlc":{"class":"fa fa-film"},"music.mpd":{"class":"fas fa-music"},"music.snapcast":{"class":"fa fa-volume-up"},"music.spotify":{"class":"fab fa-spotify"},"torrent":{"class":"fa fa-magnet"},"rtorrent":{"class":"fa fa-magnet"},"sensor.bme280":{"class":"fas fa-microchip"},"sensor.dht":{"class":"fas fa-microchip"},"sensor.envirophat":{"class":"fas fa-microchip"},"sensor.ltr559":{"class":"fas fa-microchip"},"sensor.mcp3008":{"class":"fas fa-microchip"},"sensor.pmw3901":{"class":"fas fa-microchip"},"sensor.vl53l1x":{"class":"fas fa-microchip"},"serial":{"class":"fab fa-usb"},"smartthings":{"imgUrl":"/icons/smartthings.png"},"switches":{"class":"fas fa-toggle-on"},"switch.switchbot":{"class":"fas fa-toggle-on"},"switch.tplink":{"class":"fas fa-toggle-on"},"switchbot":{"class":"fas fa-toggle-on"},"sound":{"class":"fa fa-microphone"},"system":{"class":"fas fa-microchip"},"tts":{"class":"far fa-comment"},"tts.google":{"class":"fas fa-comment"},"tv.samsung.ws":{"class":"fas fa-tv"},"variable":{"class":"fas fa-square-root-variable"},"zigbee.mqtt":{"imgUrl":"/icons/zigbee.svg"},"zwave":{"imgUrl":"/icons/z-wave.png"},"zwave.mqtt":{"imgUrl":"/icons/z-wave.png"}}')}},t={};function n(s){var i=t[s];if(void 0!==i)return i.exports;var o=t[s]={exports:{}};return e[s].call(o.exports,o,o.exports,n),o.exports}n.m=e,function(){var e=[];n.O=function(t,s,i,o){if(!s){var a=1/0;for(d=0;d=o)&&Object.keys(n.O).every((function(e){return n.O[e](s[r])}))?s.splice(r--,1):(l=!1,o0&&e[d-1][2]>o;d--)e[d]=e[d-1];e[d]=[s,i,o]}}(),function(){n.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return n.d(t,{a:t}),t}}(),function(){var e,t=Object.getPrototypeOf?function(e){return Object.getPrototypeOf(e)}:function(e){return e.__proto__};n.t=function(s,i){if(1&i&&(s=this(s)),8&i)return s;if("object"===typeof s&&s){if(4&i&&s.__esModule)return s;if(16&i&&"function"===typeof s.then)return s}var o=Object.create(null);n.r(o);var a={};e=e||[null,t({}),t([]),t(t)];for(var l=2&i&&s;"object"==typeof l&&!~e.indexOf(l);l=t(l))Object.getOwnPropertyNames(l).forEach((function(e){a[e]=function(){return s[e]}}));return a["default"]=function(){return s},n.d(o,a),o}}(),function(){n.d=function(e,t){for(var s in t)n.o(t,s)&&!n.o(e,s)&&Object.defineProperty(e,s,{enumerable:!0,get:t[s]})}}(),function(){n.f={},n.e=function(e){return Promise.all(Object.keys(n.f).reduce((function(t,s){return n.f[s](e,t),t}),[]))}}(),function(){n.u=function(e){return"static/js/"+e+"."+{65:"ae7df477",169:"ebdd7044",306:"f28688c3",311:"94122a15",446:"0c670830",729:"1b92c9f7",746:"299cb064",813:"a9315e05",984:"ae424e7e",1088:"22c3f8aa",1259:"810bfb69",1309:"f9dfe73a",1391:"a76844c2",1449:"b77b365f",2068:"103aab15",2183:"1facc63d",2217:"6b927594",2265:"db7acdf6",2460:"567e73f6",2471:"da49c64a",2614:"eb302448",2732:"34e0816d",2853:"f2b8a639",2893:"519a1554",2976:"3591f8ac",2986:"e98b3f37",2992:"efd583f8",3368:"cb04738a",3369:"c099f8d0",3518:"728e8775",3559:"df95d103",3594:"2468b76d",3732:"a2ca739b",3798:"1f9f57bb",3826:"cc264dd1",3835:"11129165",4558:"c7233d4d",4589:"2afa8954",4619:"e56bced8",4765:"436fedd6",5040:"f02b705d",5207:"7f241e21",5324:"f95717d2",5329:"444a9cf1",5638:"0225db95",5794:"af63f759",5795:"9204ced6",6079:"b020e16c",6148:"56cfaad0",6215:"efbe8b7c",6324:"c3f621ef",6362:"95da0eb4",6523:"9cf8a633",6561:"fc5ef77b",7184:"6b2673b2",7381:"e54c0e2a",7523:"367c2045",7562:"1a5ba875",7590:"6cda174b",7673:"5e709bc1",7819:"a3f72427",7880:"1141a7d1",7968:"d5185bfd",8039:"951792f1",8069:"51c1e8b1",8179:"cb99e492",8391:"119357c7",8621:"0aa03df1",8769:"5ea5c0cb",8784:"9c2c1b4c",8825:"b660e217",8895:"6f35c5a1",9334:"4d443b49",9962:"8f08a8f6"}[e]+".js"}}(),function(){n.miniCssF=function(e){return"static/css/"+e+"."+{65:"65241e3d",169:"a3499ff9",306:"278434cd",311:"514d112e",446:"0c30b65c",729:"723d17f1",746:"3ae6f3dd",984:"c3141d52",1259:"10e37678",1391:"d0baa089",1449:"e40f9359",2217:"70db3639",2265:"189082f0",2460:"7f0aacc2",2471:"44928321",2893:"68b72457",2976:"74bfbbe4",2986:"ea426a4d",2992:"73c4cc04",3368:"6386838c",3369:"1053bd2c",3559:"4c032ef8",3594:"1650c3fe",3798:"746795d9",3826:"a3e42da2",3835:"1555d926",4558:"83ab80cc",4589:"3d5dbc16",5040:"aee547a6",5207:"59178f85",5329:"80053a03",5638:"1d62f268",5794:"a7d1981c",5795:"897d70a6",6079:"259571cf",6215:"5e096684",6324:"7c27aec2",6523:"c14e8400",6561:"62bf9ffb",7184:"07510c3f",7523:"16c84980",7562:"43d253ad",7590:"aa86312c",7673:"c478328c",7880:"8169652f",7968:"a3849659",8039:"d2b0d70f",8069:"150cd85e",8179:"9e9299a0",8391:"b2a77b3d",8621:"3221d30f",8769:"81824ba8",8825:"008e80b6",9962:"9588c17a"}[e]+".css"}}(),function(){n.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"===typeof window)return window}}()}(),function(){n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}}(),function(){var e={},t="platypush:";n.l=function(s,i,o,a){if(e[s])e[s].push(i);else{var l,r;if(void 0!==o)for(var c=document.getElementsByTagName("script"),d=0;d {\n bus.emit('entity-update', entity)\n}\n\nbus.onEntity = (callback) => {\n bus.on('entity-update', callback)\n}\n\nbus.publishNotification = (notification) => {\n bus.emit('notification-create', notification)\n}\n\nbus.onNotification = (callback) => {\n bus.on('notification-create', callback)\n}\n\nexport { bus }\n","\n \n \n \n \n \n \n Would you like to install this application locally?\n \n\n \n \n\n\n\n\n\n","\n \n\n\n\n\n\n","import { render } from \"./DropdownContainer.vue?vue&type=template&id=c190f656&scoped=true\"\nimport script from \"./DropdownContainer.vue?vue&type=script&lang=js\"\nexport * from \"./DropdownContainer.vue?vue&type=script&lang=js\"\n\nimport \"./DropdownContainer.vue?vue&type=style&index=0&id=c190f656&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-c190f656\"]])\n\nexport default __exports__","\n
\n \n \n\n\n\n\n\n","import { render } from \"./Doc.vue?vue&type=template&id=5aac2322&scoped=true\"\nimport script from \"./Doc.vue?vue&type=script&lang=js\"\nexport * from \"./Doc.vue?vue&type=script&lang=js\"\n\nimport \"./Doc.vue?vue&type=style&index=0&id=5aac2322&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-5aac2322\"]])\n\nexport default __exports__","\n
\n \n \n
Dependencies
\n \n\n
\n
\n \n
\n
\n\n
\n \n \n
\n
\n \n\n \n \n
Output
\n \n\n
\n
\n \n
\n \n
\n
\n
\n \n
\n\n\n\n\n\n","import { render } from \"./Install.vue?vue&type=template&id=7e5a8bae&scoped=true\"\nimport script from \"./Install.vue?vue&type=script&lang=js\"\nexport * from \"./Install.vue?vue&type=script&lang=js\"\n\nimport \"./Install.vue?vue&type=style&index=0&id=7e5a8bae&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-7e5a8bae\"]])\n\nexport default __exports__","import { render } from \"./Extension.vue?vue&type=template&id=3fa6b036&scoped=true\"\nimport script from \"./Extension.vue?vue&type=script&lang=js\"\nexport * from \"./Extension.vue?vue&type=script&lang=js\"\n\nimport \"./Extension.vue?vue&type=style&index=0&id=3fa6b036&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-3fa6b036\"]])\n\nexport default __exports__","import { render } from \"./Index.vue?vue&type=template&id=456a0caf&scoped=true\"\nimport script from \"./Index.vue?vue&type=script&lang=js\"\nexport * from \"./Index.vue?vue&type=script&lang=js\"\n\nimport \"./Index.vue?vue&type=style&index=0&id=456a0caf&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-456a0caf\"]])\n\nexport default __exports__","\n
\n \n \n \n \n \n
\n\n\n\n\n\n","\n
\n
\n \n
\n\n
\n \n
\n
\n\n\n\n\n\n","\n
\n \n Are you sure that you want to stop the application?\n
\n \n This will stop the application and you will not be able to restart it\n through the Web interface!\n \n \n\n \n
\n\n\n\n\n\n","import { render } from \"./StopButton.vue?vue&type=template&id=1eab04fa&scoped=true\"\nimport script from \"./StopButton.vue?vue&type=script&lang=js\"\nexport * from \"./StopButton.vue?vue&type=script&lang=js\"\n\nimport \"./StopButton.vue?vue&type=style&index=0&id=1eab04fa&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-1eab04fa\"]])\n\nexport default __exports__","import { render } from \"./Application.vue?vue&type=template&id=40365cea&scoped=true\"\nimport script from \"./Application.vue?vue&type=script&lang=js\"\nexport * from \"./Application.vue?vue&type=script&lang=js\"\n\nimport \"./Application.vue?vue&type=style&index=0&id=40365cea&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-40365cea\"]])\n\nexport default __exports__","\n
\n \n\n \n
\n \n\n \n
\n \n\n \n
\n \n\n \n
\n \n\n
\n
\n
\n Platypush provides two types of tokens:\n\n
\n
\n JWT tokens are bearer-only, and they contain encrypted\n authentication information. \n They can be used as permanent or time-based tokens to\n authenticate with the Platypush API.\n
\n\n
\n Session tokens are randomly generated tokens stored on the\n application database. A session token generated in this session\n will expire when you log out of it.\n
\n
\n \n\n
Generate a JWT authentication token that can be used for API calls to the /execute endpoint.
\n
You can include the token in your requests in any of the following ways:
\n\n
\n
Specify it on the Authorization: Bearer header;
\n
Specify it on the X-Token header;
\n
\n Specify it as a URL parameter: http://site:8008/execute?token=...\n for a JWT token and ...?session_token=... for a\n session token;\n
\n
Specify it on the body of your JSON request:\n {\"type\":\"request\", \"action\", \"...\", \"token\":\"...\"} for\n a JWT token, or \"session_token\" for a session token.\n
\n
\n\n
Confirm your credentials in order to generate a new JWT token.
\n
\n Show session token will instead show the token cookie associated\n to the current session.\n
\n
\n\n
\n \n
\n
\n
\n\n\n\n\n\n","import { render } from \"./Token.vue?vue&type=template&id=2d3c7d78\"\nimport script from \"./Token.vue?vue&type=script&lang=js\"\nexport * from \"./Token.vue?vue&type=script&lang=js\"\n\nimport \"./Token.vue?vue&type=style&index=0&id=2d3c7d78&lang=scss\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n \n\n \n \n \n\n \n \n \n\n
\n
\n
\n \n
\n \n \n \n \n
\n
\n
\n\n \n\n \n Are you sure that you want to remove the user {{ selectedUser }}?\n \n
\n\n\n\n\n\n","\n
\n \n
\n\n\n\n\n\n","import { render } from \"./FloatingButton.vue?vue&type=template&id=133e57f8&scoped=true\"\nimport script from \"./FloatingButton.vue?vue&type=script&lang=js\"\nexport * from \"./FloatingButton.vue?vue&type=script&lang=js\"\n\nimport \"./FloatingButton.vue?vue&type=style&index=0&id=133e57f8&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-133e57f8\"]])\n\nexport default __exports__","import { render } from \"./Users.vue?vue&type=template&id=510035f2&scoped=true\"\nimport script from \"./Users.vue?vue&type=script&lang=js\"\nexport * from \"./Users.vue?vue&type=script&lang=js\"\n\nimport \"./Users.vue?vue&type=style&index=0&id=510035f2&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-510035f2\"]])\n\nexport default __exports__","import { render } from \"./Index.vue?vue&type=template&id=2e111192\"\nimport script from \"./Index.vue?vue&type=script&lang=js\"\nexport * from \"./Index.vue?vue&type=script&lang=js\"\n\nimport \"./Index.vue?vue&type=style&index=0&id=2e111192&lang=scss\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","var map = {\n\t\"./Camera/Index\": [\n\t\t5324,\n\t\t8039,\n\t\t5324\n\t],\n\t\"./CameraAndroidIpcam/Index\": [\n\t\t5794,\n\t\t5794\n\t],\n\t\"./CameraCv/Index\": [\n\t\t6148,\n\t\t8039,\n\t\t6148\n\t],\n\t\"./CameraFfmpeg/Index\": [\n\t\t9334,\n\t\t8039,\n\t\t9334\n\t],\n\t\"./CameraGstreamer/Index\": [\n\t\t813,\n\t\t8039,\n\t\t813\n\t],\n\t\"./CameraIrMlx90640/Index\": [\n\t\t7381,\n\t\t8039,\n\t\t7381\n\t],\n\t\"./CameraPi/Index\": [\n\t\t5214,\n\t\t8039,\n\t\t8895\n\t],\n\t\"./Entities/Index\": [\n\t\t3174,\n\t\t2992,\n\t\t4558\n\t],\n\t\"./Execute/Index\": [\n\t\t7673,\n\t\t7673\n\t],\n\t\"./Extensions/Index\": [\n\t\t7092\n\t],\n\t\"./Light/Index\": [\n\t\t7184,\n\t\t2471,\n\t\t5040,\n\t\t7184\n\t],\n\t\"./LightHue/Index\": [\n\t\t2976,\n\t\t2471,\n\t\t5040,\n\t\t7184,\n\t\t2976\n\t],\n\t\"./Media/Index\": [\n\t\t2265,\n\t\t2471,\n\t\t7562,\n\t\t6079,\n\t\t2992,\n\t\t2265\n\t],\n\t\"./MediaMplayer/Index\": [\n\t\t3518,\n\t\t2471,\n\t\t7562,\n\t\t6079,\n\t\t2992,\n\t\t2265,\n\t\t3518\n\t],\n\t\"./MediaMpv/Index\": [\n\t\t4765,\n\t\t2471,\n\t\t7562,\n\t\t6079,\n\t\t2992,\n\t\t2265,\n\t\t4765\n\t],\n\t\"./MediaOmxplayer/Index\": [\n\t\t7819,\n\t\t2471,\n\t\t7562,\n\t\t6079,\n\t\t2992,\n\t\t2265,\n\t\t7819\n\t],\n\t\"./MediaVlc/Index\": [\n\t\t2614,\n\t\t2471,\n\t\t7562,\n\t\t6079,\n\t\t2992,\n\t\t2265,\n\t\t2614\n\t],\n\t\"./Music/Index\": [\n\t\t2986,\n\t\t2471,\n\t\t7562,\n\t\t2986\n\t],\n\t\"./MusicMpd/Index\": [\n\t\t1309,\n\t\t2471,\n\t\t7562,\n\t\t2986,\n\t\t1309\n\t],\n\t\"./MusicSnapcast/Index\": [\n\t\t6215,\n\t\t2471,\n\t\t5040,\n\t\t6215\n\t],\n\t\"./MusicSpotify/Index\": [\n\t\t2068,\n\t\t2471,\n\t\t7562,\n\t\t2986,\n\t\t2068\n\t],\n\t\"./Rtorrent/Index\": [\n\t\t2183,\n\t\t6079,\n\t\t7968,\n\t\t2183\n\t],\n\t\"./Settings/Index\": [\n\t\t3136\n\t],\n\t\"./Sound/Index\": [\n\t\t746,\n\t\t746\n\t],\n\t\"./Torrent/Index\": [\n\t\t8784,\n\t\t6079,\n\t\t7968,\n\t\t8784\n\t],\n\t\"./Tts/Index\": [\n\t\t3732,\n\t\t8069,\n\t\t3732\n\t],\n\t\"./TtsGoogle/Index\": [\n\t\t7605,\n\t\t8069,\n\t\t2853\n\t],\n\t\"./TvSamsungWs/Index\": [\n\t\t4589,\n\t\t4589\n\t],\n\t\"./ZigbeeMqtt/Index\": [\n\t\t1259,\n\t\t2471,\n\t\t5040,\n\t\t1259\n\t],\n\t\"./Zwave/Index\": [\n\t\t2732,\n\t\t2471,\n\t\t5040,\n\t\t7880,\n\t\t2732\n\t],\n\t\"./ZwaveMqtt/Index\": [\n\t\t1088,\n\t\t2471,\n\t\t5040,\n\t\t7880,\n\t\t1088\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn Promise.all(ids.slice(1).map(__webpack_require__.e)).then(function() {\n\t\treturn __webpack_require__(id);\n\t});\n}\nwebpackAsyncContext.keys = function() { return Object.keys(map); };\nwebpackAsyncContext.id = 3379;\nmodule.exports = webpackAsyncContext;","var map = {\n\t\"./Calendar/Index\": [\n\t\t5638,\n\t\t5638\n\t],\n\t\"./Camera/Index\": [\n\t\t446,\n\t\t446\n\t],\n\t\"./Component/Index\": [\n\t\t1449,\n\t\t2471,\n\t\t5040,\n\t\t1449\n\t],\n\t\"./DateTime/Index\": [\n\t\t4619,\n\t\t1391,\n\t\t4619\n\t],\n\t\"./DateTimeWeather/Index\": [\n\t\t9962,\n\t\t3594,\n\t\t1391,\n\t\t9962\n\t],\n\t\"./ImageCarousel/Index\": [\n\t\t306,\n\t\t3594,\n\t\t1391,\n\t\t306\n\t],\n\t\"./Music/Index\": [\n\t\t311,\n\t\t311\n\t],\n\t\"./Plugin/Index\": [\n\t\t8179,\n\t\t8179\n\t],\n\t\"./RssNews/Index\": [\n\t\t6523,\n\t\t6523\n\t],\n\t\"./Weather/Index\": [\n\t\t3594,\n\t\t3594\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn Promise.all(ids.slice(1).map(__webpack_require__.e)).then(function() {\n\t\treturn __webpack_require__(id);\n\t});\n}\nwebpackAsyncContext.keys = function() { return Object.keys(map); };\nwebpackAsyncContext.id = 6725;\nmodule.exports = webpackAsyncContext;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","var getProto = Object.getPrototypeOf ? function(obj) { return Object.getPrototypeOf(obj); } : function(obj) { return obj.__proto__; };\nvar leafPrototypes;\n// create a fake namespace object\n// mode & 1: value is a module id, require it\n// mode & 2: merge all properties of value into the ns\n// mode & 4: return value when already ns object\n// mode & 16: return value when it's Promise-like\n// mode & 8|1: behave like require\n__webpack_require__.t = function(value, mode) {\n\tif(mode & 1) value = this(value);\n\tif(mode & 8) return value;\n\tif(typeof value === 'object' && value) {\n\t\tif((mode & 4) && value.__esModule) return value;\n\t\tif((mode & 16) && typeof value.then === 'function') return value;\n\t}\n\tvar ns = Object.create(null);\n\t__webpack_require__.r(ns);\n\tvar def = {};\n\tleafPrototypes = leafPrototypes || [null, getProto({}), getProto([]), getProto(getProto)];\n\tfor(var current = mode & 2 && value; typeof current == 'object' && !~leafPrototypes.indexOf(current); current = getProto(current)) {\n\t\tObject.getOwnPropertyNames(current).forEach(function(key) { def[key] = function() { return value[key]; }; });\n\t}\n\tdef['default'] = function() { return value; };\n\t__webpack_require__.d(ns, def);\n\treturn ns;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = function(chunkId) {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce(function(promises, key) {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"static/js/\" + chunkId + \".\" + {\"65\":\"ae7df477\",\"169\":\"ebdd7044\",\"306\":\"f28688c3\",\"311\":\"94122a15\",\"446\":\"0c670830\",\"729\":\"1b92c9f7\",\"746\":\"299cb064\",\"813\":\"a9315e05\",\"984\":\"ae424e7e\",\"1088\":\"22c3f8aa\",\"1259\":\"810bfb69\",\"1309\":\"f9dfe73a\",\"1391\":\"a76844c2\",\"1449\":\"b77b365f\",\"2068\":\"103aab15\",\"2183\":\"1facc63d\",\"2217\":\"6b927594\",\"2265\":\"db7acdf6\",\"2460\":\"567e73f6\",\"2471\":\"da49c64a\",\"2614\":\"eb302448\",\"2732\":\"34e0816d\",\"2853\":\"f2b8a639\",\"2893\":\"519a1554\",\"2976\":\"3591f8ac\",\"2986\":\"e98b3f37\",\"2992\":\"efd583f8\",\"3368\":\"cb04738a\",\"3369\":\"c099f8d0\",\"3518\":\"728e8775\",\"3559\":\"df95d103\",\"3594\":\"2468b76d\",\"3732\":\"a2ca739b\",\"3798\":\"1f9f57bb\",\"3826\":\"cc264dd1\",\"3835\":\"11129165\",\"4558\":\"c7233d4d\",\"4589\":\"2afa8954\",\"4619\":\"e56bced8\",\"4765\":\"436fedd6\",\"5040\":\"f02b705d\",\"5207\":\"7f241e21\",\"5324\":\"f95717d2\",\"5329\":\"444a9cf1\",\"5638\":\"0225db95\",\"5794\":\"af63f759\",\"5795\":\"9204ced6\",\"6079\":\"b020e16c\",\"6148\":\"56cfaad0\",\"6215\":\"efbe8b7c\",\"6324\":\"c3f621ef\",\"6362\":\"95da0eb4\",\"6523\":\"9cf8a633\",\"6561\":\"fc5ef77b\",\"7184\":\"6b2673b2\",\"7381\":\"e54c0e2a\",\"7523\":\"367c2045\",\"7562\":\"1a5ba875\",\"7590\":\"6cda174b\",\"7673\":\"5e709bc1\",\"7819\":\"a3f72427\",\"7880\":\"1141a7d1\",\"7968\":\"d5185bfd\",\"8039\":\"951792f1\",\"8069\":\"51c1e8b1\",\"8179\":\"cb99e492\",\"8391\":\"119357c7\",\"8621\":\"0aa03df1\",\"8769\":\"5ea5c0cb\",\"8784\":\"9c2c1b4c\",\"8825\":\"b660e217\",\"8895\":\"6f35c5a1\",\"9334\":\"4d443b49\",\"9962\":\"8f08a8f6\"}[chunkId] + \".js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"static/css/\" + chunkId + \".\" + {\"65\":\"65241e3d\",\"169\":\"a3499ff9\",\"306\":\"278434cd\",\"311\":\"514d112e\",\"446\":\"0c30b65c\",\"729\":\"723d17f1\",\"746\":\"3ae6f3dd\",\"984\":\"c3141d52\",\"1259\":\"10e37678\",\"1391\":\"d0baa089\",\"1449\":\"e40f9359\",\"2217\":\"70db3639\",\"2265\":\"189082f0\",\"2460\":\"7f0aacc2\",\"2471\":\"44928321\",\"2893\":\"68b72457\",\"2976\":\"74bfbbe4\",\"2986\":\"ea426a4d\",\"2992\":\"73c4cc04\",\"3368\":\"6386838c\",\"3369\":\"1053bd2c\",\"3559\":\"4c032ef8\",\"3594\":\"1650c3fe\",\"3798\":\"746795d9\",\"3826\":\"a3e42da2\",\"3835\":\"1555d926\",\"4558\":\"83ab80cc\",\"4589\":\"3d5dbc16\",\"5040\":\"aee547a6\",\"5207\":\"59178f85\",\"5329\":\"80053a03\",\"5638\":\"1d62f268\",\"5794\":\"a7d1981c\",\"5795\":\"897d70a6\",\"6079\":\"259571cf\",\"6215\":\"5e096684\",\"6324\":\"7c27aec2\",\"6523\":\"c14e8400\",\"6561\":\"62bf9ffb\",\"7184\":\"07510c3f\",\"7523\":\"16c84980\",\"7562\":\"43d253ad\",\"7590\":\"aa86312c\",\"7673\":\"c478328c\",\"7880\":\"8169652f\",\"7968\":\"a3849659\",\"8039\":\"d2b0d70f\",\"8069\":\"150cd85e\",\"8179\":\"9e9299a0\",\"8391\":\"b2a77b3d\",\"8621\":\"3221d30f\",\"8769\":\"81824ba8\",\"8825\":\"008e80b6\",\"9962\":\"9588c17a\"}[chunkId] + \".css\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","var inProgress = {};\nvar dataWebpackPrefix = \"platypush:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = function(url, done, key, chunkId) {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = function(prev, event) {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach(function(fn) { return fn(event); });\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.p = \"/\";","if (typeof document === \"undefined\") return;\nvar createStylesheet = function(chunkId, fullhref, oldTag, resolve, reject) {\n\tvar linkTag = document.createElement(\"link\");\n\n\tlinkTag.rel = \"stylesheet\";\n\tlinkTag.type = \"text/css\";\n\tvar onLinkComplete = function(event) {\n\t\t// avoid mem leaks.\n\t\tlinkTag.onerror = linkTag.onload = null;\n\t\tif (event.type === 'load') {\n\t\t\tresolve();\n\t\t} else {\n\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\tvar realHref = event && event.target && event.target.href || fullhref;\n\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + realHref + \")\");\n\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n\t\t\terr.type = errorType;\n\t\t\terr.request = realHref;\n\t\t\tif (linkTag.parentNode) linkTag.parentNode.removeChild(linkTag)\n\t\t\treject(err);\n\t\t}\n\t}\n\tlinkTag.onerror = linkTag.onload = onLinkComplete;\n\tlinkTag.href = fullhref;\n\n\tif (oldTag) {\n\t\toldTag.parentNode.insertBefore(linkTag, oldTag.nextSibling);\n\t} else {\n\t\tdocument.head.appendChild(linkTag);\n\t}\n\treturn linkTag;\n};\nvar findStylesheet = function(href, fullhref) {\n\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n\tfor(var i = 0; i < existingLinkTags.length; i++) {\n\t\tvar tag = existingLinkTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return tag;\n\t}\n\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n\tfor(var i = 0; i < existingStyleTags.length; i++) {\n\t\tvar tag = existingStyleTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\");\n\t\tif(dataHref === href || dataHref === fullhref) return tag;\n\t}\n};\nvar loadStylesheet = function(chunkId) {\n\treturn new Promise(function(resolve, reject) {\n\t\tvar href = __webpack_require__.miniCssF(chunkId);\n\t\tvar fullhref = __webpack_require__.p + href;\n\t\tif(findStylesheet(href, fullhref)) return resolve();\n\t\tcreateStylesheet(chunkId, fullhref, null, resolve, reject);\n\t});\n}\n// object to store loaded CSS chunks\nvar installedCssChunks = {\n\t2143: 0\n};\n\n__webpack_require__.f.miniCss = function(chunkId, promises) {\n\tvar cssChunks = {\"65\":1,\"169\":1,\"306\":1,\"311\":1,\"446\":1,\"729\":1,\"746\":1,\"984\":1,\"1259\":1,\"1391\":1,\"1449\":1,\"2217\":1,\"2265\":1,\"2460\":1,\"2471\":1,\"2893\":1,\"2976\":1,\"2986\":1,\"2992\":1,\"3368\":1,\"3369\":1,\"3559\":1,\"3594\":1,\"3798\":1,\"3826\":1,\"3835\":1,\"4558\":1,\"4589\":1,\"5040\":1,\"5207\":1,\"5329\":1,\"5638\":1,\"5794\":1,\"5795\":1,\"6079\":1,\"6215\":1,\"6324\":1,\"6523\":1,\"6561\":1,\"7184\":1,\"7523\":1,\"7562\":1,\"7590\":1,\"7673\":1,\"7880\":1,\"7968\":1,\"8039\":1,\"8069\":1,\"8179\":1,\"8391\":1,\"8621\":1,\"8769\":1,\"8825\":1,\"9962\":1};\n\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n\t\tpromises.push(installedCssChunks[chunkId] = loadStylesheet(chunkId).then(function() {\n\t\t\tinstalledCssChunks[chunkId] = 0;\n\t\t}, function(e) {\n\t\t\tdelete installedCssChunks[chunkId];\n\t\t\tthrow e;\n\t\t}));\n\t}\n};\n\n// no hmr","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t2143: 0\n};\n\n__webpack_require__.f.j = function(chunkId, promises) {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(!/^(80[36]9|(139|247|656)1|2992|3826|5040|6079)$/.test(chunkId)) {\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise(function(resolve, reject) { installedChunkData = installedChunks[chunkId] = [resolve, reject]; });\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = function(event) {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t} else installedChunks[chunkId] = 0;\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkplatypush\"] = self[\"webpackChunkplatypush\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [4998], function() { return __webpack_require__(3244); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["bus","mitt","publishEntity","entity","emit","onEntity","callback","on","publishNotification","notification","onNotification","$options","hasWebsocket","_createBlock","_component_Events","ref","_createVNode","_component_Notifications","hasAssistant","_component_VoiceAssistant","hasPushbullet","_component_Pushbullet","hasNtfy","_component_Ntfy","_component_ConfirmDialog","onInput","installPWA","_component_DropdownContainer","_component_router_view","class","_createElementBlock","_hoisted_1","methods","onOpen","component","$el","keepOpenOnItemClick","this","onClose","appendChild","innerHTML","mounted","__exports__","_Fragment","_renderList","_ctx","notifications","id","index","_component_Notification","key","text","html","title","link","image","warning","error","onClicked","destroy","_normalizeClass","$props","onClick","_cache","args","clicked","_toDisplayString","_createElementVNode","_hoisted_2","_hoisted_3","_hoisted_4","src","alt","icon","style","_normalizeStyle","color","iconClass","_hoisted_6","_hoisted_7","name","props","window","open","$emit","components","Notification","duration","type","Number","default","data","timeouts","create","parseInt","setTimeout","bind","ws","initialized","pending","opened","timeout","reconnectMsecs","minReconnectMsecs","maxReconnectMsecs","handlers","handlerNameToEventTypes","onWebsocketTimeout","console","log","Math","min","close","onMessage","event","JSON","parse","e","warn","debug","push","Object","values","handler","Array","Function","onclose","clearTimeout","undefined","onError","code","reason","init","protocol","location","url","host","WebSocket","err","onmessage","onopen","onerror","subscribe","msg","events","length","handlerName","unsubscribe","keys","created","$watch","_hoisted_9","_component_Modal","$data","state","alerting","responding","speechRecognized","_hoisted_5","listening","_hoisted_8","_hoisted_10","_hoisted_11","phrase","_hoisted_13","responseText","Modal","mixins","Utils","hideTimeout","reset","conversationStart","$refs","assistantModal","show","conversationEnd","self","response","response_text","alertOn","alertOff","registerHandlers","notify","message","push_type","body","ConfirmDialog","DropdownContainer","Events","Notifications","Ntfy","Pushbullet","VoiceAssistant","config","userAuthenticated","connected","pwaInstallEvent","computed","initConfig","request","prompt","pwaDialog","beforeMount","getCookie","addEventListener","preventDefault","setCookie","expires","Date","getTime","render","loading","_component_Loading","classes","rows","row","i","_component_Row","widgets","widget","j","_KeepAlive","_component_Widget","_resolveDynamicComponent","_normalizeProps","_guardReactiveProps","getWidgetProps","_renderSlot","$slots","String","required","split","concat","Widget","Loading","Row","refreshSeconds","parseTemplate","tmpl","node","DOMParser","parseFromString","childNodes","attributes","nodeValue","getElementsByTagName","map","children","el","shallowRef","defineAsyncComponent","nodeName","attrs","reduce","obj","content","refreshDashboard","$route","params","template","notifyError","setInterval","toFixed","method","placeholder","_register","value","register","Boolean","parseBoolean","_component_Login","Login","_component_Nav","panels","selectedPanel","selectedConfigPanel","hostname","onSelect","$event","onSelectConfig","_component_Settings","_component_Extensions","panel","hidden","href","collapsed","ok","onItemClick","configSections","selected","imgUrl","_hoisted_12","_hoisted_14","panelNames","_hoisted_17","icons","_hoisted_19","displayName","_hoisted_21","_hoisted_22","_hoisted_23","_hoisted_24","_hoisted_25","_hoisted_26","_hoisted_27","_hoisted_28","_hoisted_29","_hoisted_30","emits","prepend","names","idx","indexOf","slice","sort","collapsedDefault","isMobile","isTablet","setConnected","$root","Extensions","Settings","Nav","plugins","backends","procedures","initSelectedPanel","match","hash","plugin","initPanels","entries","forEach","async","componentName","token","toUpperCase","join","comp","pluginName","parseConfig","Promise","all","initializeDefaultViews","entities","execute","initPanel","toString","routes","path","Panel","Dashboard","Plugin","Register","NotFound","router","createRouter","history","createWebHistory","ready","registered","cached","updatefound","updated","offline","app","createApp","App","globalProperties","_config","use","mount","showError","opts","resolve","reject","axios","post","then","errors","output","catch","action","copyToClipboard","navigator","clipboard","writeText","getCookies","document","cookie","item","k","v","toISOString","deleteCookie","formatDate","date","year","toDateString","substring","formatTime","seconds","toTimeString","formatDateTime","_eventsReady","subFunc","generateId","unwatch","newVal","btoa","fromCharCode","round","random","pluginDisplayName","words","word","charAt","notifyWarning","matchMedia","matches","isDesktop","capitalize","prettify","t","indent","spaces","repeat","toLowerCase","convertSize","unit","units","u","convertTime","time","ret","parseFloat","d","h","m","s","objectsEqual","a","b","p","parseUrlFragment","replace","getUrlArgs","acc","tokens","setUrlArgs","fragmentFromArgs","encodeURIComponent","Api","Clipboard","Cookies","DateTime","Screen","Text","Types","Url","n","script","isVisible","zIndex","$attrs","width","height","stopPropagation","onModalClose","visible","level","timeoutId","prevVisible","hide","toggle","onKeyUp","visibleHndl","unmounted","removeEventListener","maxZIndex","getComputedStyle","outermostModals","modal","querySelectorAll","onSubmit","_withModifiers","onConfirm","onTouch","confirmText","cancelText","_component_DropdownBody","DropdownBody","dropdownWidth","dropdown","dropdownHeight","buttonStyle","button","buttonWidth","buttonHeight","documentClickHndl","element","target","classList","contains","parentElement","dropdownContainer","remove","$nextTick","buttonRect","getBoundingClientRect","buttonPos","left","scrollX","top","scrollY","pos","innerWidth","innerHeight","add","itemClass","iconUrl","_component_Icon","Icon","disabled","$parent","className","restart","showDialog","filter","extensionNames","matchesFilter","selectedExtension","extensions","enabledExtensions","_component_Extension","extension","configFile","_component_Tabs","_component_Tab","selectedTab","_component_Doc","_component_Config","_component_Install","highlightedCurrentConfig","_component_CopyButton","curYamlConfig","config_snippet","highlightedConfigSnippet","copy","CopyButton","hljs","highlight","trim","loadCurrentConfig","doc_url","doc","onDocClick","actions","actionNames","actionName","eventNames","eventName","localPageRegex","RegExp","parseDoc","refreshDoc","tagName","getAttribute","installCmd","highlightedInstallCmd","installDone","_component_RestartButton","installRunning","installExtension","installOutput","_hoisted_15","RestartButton","pendingCommands","cmd","deps","install_cmd","wsProcess","ws_path","focus","scrollTop","scrollHeight","Config","Doc","Install","Tab","Tabs","Extension","enabledPlugins","enabledBackends","backend","input","setFilter","querySelector","scrollIntoView","behavior","includes","loadExtensions","loadExtensionFromUrl","loadConfigFile","ext","_component_Application","currentUser","_component_Users","sessionToken","_component_Token","_component_StopButton","stop","StopButton","onFocus","onTokenSelect","generateToken","username","sessionTokenModal","password","validityDays","expiry_days","tokenModal","select","execCommand","createUser","commandRunning","changePassword","selectedUser","users","user","user_id","_component_Dropdown","_component_DropdownItem","showChangePasswordModal","deleteUserDialog","_component_FloatingButton","showAddUserModal","deleteUser","Dropdown","DropdownItem","FloatingButton","refresh","form","addUserForm","confirm_password","session_token","addUserModal","changePasswordForm","new_password","confirm_new_password","success","old_password","changePasswordModal","Application","Users","Token","webpackAsyncContext","req","__webpack_require__","o","Error","ids","module","exports","__webpack_module_cache__","moduleId","cachedModule","__webpack_modules__","call","deferred","O","result","chunkIds","fn","priority","notFulfilled","Infinity","fulfilled","every","splice","r","getter","__esModule","leafPrototypes","getProto","getPrototypeOf","__proto__","mode","ns","def","current","getOwnPropertyNames","definition","defineProperty","enumerable","get","f","chunkId","promises","miniCssF","g","globalThis","prop","prototype","hasOwnProperty","inProgress","dataWebpackPrefix","l","done","needAttach","scripts","createElement","charset","nc","setAttribute","onScriptComplete","prev","onload","doneFns","parentNode","removeChild","head","Symbol","toStringTag","createStylesheet","fullhref","oldTag","linkTag","rel","onLinkComplete","errorType","realHref","insertBefore","nextSibling","findStylesheet","existingLinkTags","tag","dataHref","existingStyleTags","loadStylesheet","installedCssChunks","miniCss","cssChunks","installedChunks","installedChunkData","test","promise","loadingEnded","realSrc","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""}
\ No newline at end of file
diff --git a/platypush/backend/http/webapp/dist/static/js/app.bb926ce8.js b/platypush/backend/http/webapp/dist/static/js/app.bb926ce8.js
deleted file mode 100644
index dbb9a06b..00000000
--- a/platypush/backend/http/webapp/dist/static/js/app.bb926ce8.js
+++ /dev/null
@@ -1,2 +0,0 @@
-(function(){var e={5250:function(e,t,n){"use strict";n.d(t,{$:function(){return i}});var s=n(9652);const i=(0,s.Z)();i.publishEntity=e=>{i.emit("entity-update",e)},i.onEntity=e=>{i.on("entity-update",e)},i.publishNotification=e=>{i.emit("notification-create",e)},i.onNotification=e=>{i.on("notification-create",e)}},9391:function(e,t,n){"use strict";var s=n(9963),i=n(6252);function o(e,t,n,s,o,a){const l=(0,i.up)("Events"),r=(0,i.up)("Notifications"),c=(0,i.up)("VoiceAssistant"),d=(0,i.up)("Pushbullet"),u=(0,i.up)("Ntfy"),h=(0,i.up)("ConfirmDialog"),p=(0,i.up)("router-view");return(0,i.wg)(),(0,i.iD)(i.HY,null,[a.hasWebsocket?((0,i.wg)(),(0,i.j4)(l,{key:0,ref:"events"},null,512)):(0,i.kq)("",!0),(0,i.Wm)(r,{ref:"notifications"},null,512),a.hasAssistant?((0,i.wg)(),(0,i.j4)(c,{key:1,ref:"voice-assistant"},null,512)):(0,i.kq)("",!0),a.hasPushbullet?((0,i.wg)(),(0,i.j4)(d,{key:2,ref:"pushbullet"},null,512)):(0,i.kq)("",!0),a.hasNtfy?((0,i.wg)(),(0,i.j4)(u,{key:3,ref:"ntfy"},null,512)):(0,i.kq)("",!0),(0,i.Wm)(h,{ref:"pwaDialog",onInput:a.installPWA},{default:(0,i.w5)((()=>[(0,i.Uk)(" Would you like to install this application locally? ")])),_:1},8,["onInput"]),(0,i.Wm)(p)],64)}var a=n(6936);const l={class:"notifications"};function r(e,t,n,s,o,a){const r=(0,i.up)("Notification");return(0,i.wg)(),(0,i.iD)("div",l,[((0,i.wg)(!0),(0,i.iD)(i.HY,null,(0,i.Ko)(e.notifications,((e,t,n)=>((0,i.wg)(),(0,i.j4)(r,{key:n,id:t,text:e.text,html:e.html,title:e.title,link:e.link,image:e.image,warning:e.warning,error:e.error,onClicked:a.destroy},null,8,["id","text","html","title","link","image","warning","error","onClicked"])))),128))])}var c=n(3577);const d=["textContent"],u={class:"body"},h={key:0,class:"image col-3"},p={class:"row"},f=["src"],m={key:3,class:"fa fa-exclamation"},g={key:4,class:"fa fa-times"},b=["textContent"],y=["innerHTML"],w=["textContent"],v=["innerHTML"];function k(e,t,n,s,o,a){return(0,i.wg)(),(0,i.iD)("div",{class:(0,c.C_)(["notification fade-in",{warning:n.warning,error:n.error}]),onClick:t[0]||(t[0]=(...e)=>a.clicked&&a.clicked(...e))},[n.title?((0,i.wg)(),(0,i.iD)("div",{key:0,class:"title",textContent:(0,c.zw)(n.title)},null,8,d)):(0,i.kq)("",!0),(0,i._)("div",u,[n.image||n.warning||n.error?((0,i.wg)(),(0,i.iD)("div",h,[(0,i._)("div",p,[n.image&&n.image.src?((0,i.wg)(),(0,i.iD)("img",{key:0,src:n.image.src,alt:""},null,8,f)):n.image&&n.image.icon?((0,i.wg)(),(0,i.iD)("i",{key:1,class:(0,c.C_)(["fa","fa-"+n.image.icon]),style:(0,c.j5)(n.image.color?"--color: "+n.image.color:"")},null,6)):n.image&&n.image.iconClass?((0,i.wg)(),(0,i.iD)("i",{key:2,class:(0,c.C_)(n.image.iconClass),style:(0,c.j5)(n.image.color?"--color: "+n.image.color:"")},null,6)):n.warning?((0,i.wg)(),(0,i.iD)("i",m)):n.error?((0,i.wg)(),(0,i.iD)("i",g)):(0,i.kq)("",!0)])])):(0,i.kq)("",!0),n.text&&n.image?((0,i.wg)(),(0,i.iD)("div",{key:1,class:"text col-9",textContent:(0,c.zw)(n.text)},null,8,b)):(0,i.kq)("",!0),n.html&&n.image?((0,i.wg)(),(0,i.iD)("div",{key:2,class:"text col-9",innerHTML:n.html},null,8,y)):(0,i.kq)("",!0),n.text&&!n.image?((0,i.wg)(),(0,i.iD)("div",{key:3,class:"text row horizontal-center",textContent:(0,c.zw)(n.text)},null,8,w)):(0,i.kq)("",!0),n.html&&!n.image?((0,i.wg)(),(0,i.iD)("div",{key:4,class:"text row horizontal-center",innerHTML:n.html},null,8,v)):(0,i.kq)("",!0)])],2)}var _={name:"Notification",props:["id","text","html","title","image","link","error","warning"],methods:{clicked(){this.link&&window.open(this.link,"_blank"),this.$emit("clicked",this.id)}}},x=n(3744);const C=(0,x.Z)(_,[["render",k],["__scopeId","data-v-7646705e"]]);var D=C,I={name:"Notifications",components:{Notification:D},props:{duration:{type:Number,default:1e4}},data:function(){return{index:0,notifications:{},timeouts:{}}},methods:{create:function(e){const t=this.index++;this.notifications[t]=e,null==e.duration&&(e.duration=this.duration);const n=e.duration?parseInt(e.duration):0;n&&(this.timeouts[t]=setTimeout(this.destroy.bind(null,t),n))},destroy:function(e){delete this.notifications[e],delete this.timeouts[e]}}};const T=(0,x.Z)(I,[["render",r],["__scopeId","data-v-6dc8bebc"]]);var $=T,S=n(8637);function q(e,t,n,s,o,a){return(0,i.wg)(),(0,i.iD)("div")}n(7658);var U=n(5250),E={name:"Events",data(){return{ws:null,initialized:!1,pending:!1,opened:!1,timeout:null,reconnectMsecs:1e3,minReconnectMsecs:1e3,maxReconnectMsecs:3e4,handlers:{},handlerNameToEventTypes:{}}},methods:{onWebsocketTimeout(){console.log("Websocket reconnection timed out, retrying"),this.reconnectMsecs=Math.min(2*this.reconnectMsecs,this.maxReconnectMsecs),this.pending=!1,this.ws&&this.ws.close(),this.onClose()},onMessage(e){const t=[];if(e=e.data,"string"===typeof e)try{e=JSON.parse(e)}catch(n){console.warn("Received invalid non-JSON event"),console.warn(e)}if(console.debug(e),"event"===e.type){null in this.handlers&&t.push(this.handlers[null]),e.args.type in this.handlers&&t.push(...Object.values(this.handlers[e.args.type]));for(let n of t)n&&(n instanceof Array?n=n[0]:n instanceof Object&&!(n instanceof Function)&&(n=Object.values(n)[0]),n(e.args))}},onOpen(){this.opened&&(console.log("There's already an opened websocket connection, closing the newly opened one"),this.ws&&(this.ws.onclose=()=>{},this.ws.close())),console.log("Websocket connection successful"),this.opened=!0,this.reconnectMsecs=this.minReconnectMsecs,this.pending&&(this.pending=!1),this.timeout&&(clearTimeout(this.timeout),this.timeout=void 0)},onError(e){console.error("Websocket error"),console.error(e)},onClose(e){e&&console.log(`Websocket closed - code: ${e.code} - reason: ${e.reason}. Retrying in ${this.reconnectMsecs/1e3}s`),this.opened=!1,this.pending||(this.pending=!0,this.init())},init(){try{const e="https:"===location.protocol?"wss":"ws",t=`${e}://${location.host}/ws/events`;this.ws=new WebSocket(t)}catch(e){return console.error("Websocket initialization error"),void console.error(e)}this.pending=!0,this.timeout=setTimeout(this.onWebsocketTimeout,this.reconnectMsecs),this.ws.onmessage=this.onMessage,this.ws.onopen=this.onOpen,this.ws.onerror=this.onError,this.ws.onclose=this.onClose,this.initialized=!0},subscribe(e){const t=e.handler,n=e.events.length?e.events:[null],s=e.handlerName;for(const i of n)i in this.handlers||(this.handlers[i]={}),s in this.handlerNameToEventTypes||(this.handlerNameToEventTypes[s]=n),this.handlers[i][s]=t;return()=>{this.unsubscribe(s)}},unsubscribe(e){const t=this.handlerNameToEventTypes[e];if(t){for(const n of t)this.handlers[n]?.[e]&&(delete this.handlers[n][e],Object.keys(this.handlers[n]).length||delete this.handlers[n]);delete this.handlerNameToEventTypes[e]}}},created(){U.$.on("subscribe",this.subscribe),U.$.on("unsubscribe",this.unsubscribe),this.$watch("opened",(e=>{U.$.emit(e?"connect":"disconnect")})),this.init()}};const M=(0,x.Z)(E,[["render",q]]);var P=M;const j={class:"assistant-modal"},O={class:"icon"},Z={key:0,class:"fa fa-bell"},N={key:1,class:"fa fa-volume-up"},W={key:2,class:"fa fa-comment-dots"},R={key:3,class:"fa fa-microphone"},z={class:"text"},A={key:0,class:"listening"},L=(0,i._)("span",null,"Assistant listening",-1),F=[L],B={key:1,class:"speech-recognized"},H=["textContent"],V={key:2,class:"responding"},Y=["textContent"];function K(e,t,n,s,o,a){const l=(0,i.up)("Modal");return(0,i.wg)(),(0,i.iD)("div",j,[(0,i.Wm)(l,{ref:"assistantModal"},{default:(0,i.w5)((()=>[(0,i._)("div",O,[o.state.alerting?((0,i.wg)(),(0,i.iD)("i",Z)):o.state.responding?((0,i.wg)(),(0,i.iD)("i",N)):o.state.speechRecognized?((0,i.wg)(),(0,i.iD)("i",W)):((0,i.wg)(),(0,i.iD)("i",R))]),(0,i._)("div",z,[o.state.listening?((0,i.wg)(),(0,i.iD)("div",A,F)):o.state.speechRecognized?((0,i.wg)(),(0,i.iD)("div",B,[(0,i._)("span",{textContent:(0,c.zw)(o.phrase)},null,8,H)])):o.state.responding?((0,i.wg)(),(0,i.iD)("div",V,[(0,i._)("span",{textContent:(0,c.zw)(o.responseText)},null,8,Y)])):(0,i.kq)("",!0)])])),_:1},512)])}var J=n(3493),G={name:"VoiceAssistant",components:{Modal:J.Z},mixins:[S.Z],data(){return{responseText:"",phrase:"",hideTimeout:void 0,state:{listening:!1,speechRecognized:!1,responding:!1,alerting:!1}}},methods:{reset(){this.state.listening=!1,this.state.speechRecognized=!1,this.state.responding=!1,this.state.alerting=!1,this.phrase="",this.responseText=""},conversationStart(){this.reset(),this.state.listening=!0,this.$refs.assistantModal.show(),this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=void 0)},conversationEnd(){const e=this;this.hideTimeout=setTimeout((()=>{this.reset(),e.$refs.assistantModal.close(),e.hideTimeout=void 0}),4e3)},speechRecognized(e){this.reset(),this.state.speechRecognized=!0,this.phrase=e.phrase,this.$refs.assistantModal.show()},response(e){this.reset(),this.state.responding=!0,this.responseText=e.response_text,this.$refs.assistantModal.show()},alertOn(){this.reset(),this.state.alerting=!0,this.$refs.assistantModal.show()},alertOff(){this.reset(),this.state.alerting=!1,this.$refs.assistantModal.close()},registerHandlers(){this.subscribe(this.conversationStart,null,"platypush.message.event.assistant.ConversationStartEvent"),this.subscribe(this.alertOn,null,"platypush.message.event.assistant.AlertStartedEvent"),this.subscribe(this.alertOff,null,"platypush.message.event.assistant.AlertEndEvent"),this.subscribe(this.speechRecognized,null,"platypush.message.event.assistant.SpeechRecognizedEvent"),this.subscribe(this.response,null,"platypush.message.event.assistant.ResponseEvent"),this.subscribe(this.conversationEnd,null,"platypush.message.event.assistant.ConversationEndEvent","platypush.message.event.assistant.NoResponseEvent","platypush.message.event.assistant.ConversationTimeoutEvent")}},mounted(){this.registerHandlers()}};const X=(0,x.Z)(G,[["render",K]]);var Q=X;function ee(e,t,n,s,o,a){return(0,i.wg)(),(0,i.iD)("div")}var te={name:"Ntfy",mixins:[S.Z],methods:{onMessage(e){this.notify({title:e.title,text:e.message,image:{icon:"bell"}})}},mounted(){this.subscribe(this.onMessage,null,"platypush.message.event.ntfy.NotificationEvent")}};const ne=(0,x.Z)(te,[["render",ee]]);var se=ne;function ie(e,t,n,s,o,a){return(0,i.wg)(),(0,i.iD)("div")}var oe={name:"Pushbullet",mixins:[S.Z],methods:{onMessage(e){"mirror"===e.push_type&&this.notify({title:e.title,text:e.body,image:{src:e.icon?"data:image/png;base64, "+e.icon:void 0,icon:e.icon?void 0:"bell"}})}},mounted(){this.subscribe(this.onMessage,null,"platypush.message.event.pushbullet.PushbulletEvent")}};const ae=(0,x.Z)(oe,[["render",ie]]);var le=ae,re={name:"App",mixins:[S.Z],components:{ConfirmDialog:a.Z,Pushbullet:le,Ntfy:se,Notifications:$,Events:P,VoiceAssistant:Q},data(){return{config:{},userAuthenticated:!1,connected:!1,pwaInstallEvent:null}},computed:{hasWebsocket(){return this.userAuthenticated&&"backend.http"in this.config},hasAssistant(){return this.hasWebsocket},hasPushbullet(){return this.hasWebsocket&&("pushbullet"in this.config||"backend.pushbullet"in this.config)},hasNtfy(){return this.hasWebsocket&&"ntfy"in this.config}},methods:{onNotification(e){this.$refs.notifications.create(e)},async initConfig(){this.config=await this.request("config.get",{},6e4,!1),this.userAuthenticated=!0},installPWA(){this.pwaInstallEvent&&this.pwaInstallEvent.prompt(),this.$refs.pwaDialog.close()}},created(){this.initConfig()},beforeMount(){this.getCookie("pwa-dialog-shown")?.length||window.addEventListener("beforeinstallprompt",(e=>{e.preventDefault(),this.pwaInstallEvent=e,this.$refs.pwaDialog.show(),this.setCookie("pwa-dialog-shown","1",{expires:new Date((new Date).getTime()+31536e6)})}))},mounted(){U.$.onNotification(this.onNotification),U.$.on("connect",(()=>this.connected=!0)),U.$.on("disconnect",(()=>this.connected=!1))}};const ce=(0,x.Z)(re,[["render",o]]);var de=ce,ue=n(2201);function he(e,t,n,s,o,a){const l=(0,i.up)("Loading"),r=(0,i.up)("Widget"),d=(0,i.up)("Row");return(0,i.wg)(),(0,i.iD)(i.HY,null,[o.loading?((0,i.wg)(),(0,i.j4)(l,{key:0})):(0,i.kq)("",!0),(0,i._)("div",{id:"dashboard",class:(0,c.C_)(["col-12",a.classes]),style:(0,c.j5)(o.style)},[((0,i.wg)(!0),(0,i.iD)(i.HY,null,(0,i.Ko)(o.rows,((e,t)=>((0,i.wg)(),(0,i.j4)(d,{key:t,class:(0,c.C_)(e.class),style:(0,c.j5)(e.style)},{default:(0,i.w5)((()=>[((0,i.wg)(!0),(0,i.iD)(i.HY,null,(0,i.Ko)(e.widgets,((e,t)=>((0,i.wg)(),(0,i.j4)(i.Ob,{key:t},[(0,i.Wm)(r,{style:(0,c.j5)(e.style),class:(0,c.C_)(e.class)},{default:(0,i.w5)((()=>[((0,i.wg)(),(0,i.j4)((0,i.LL)(e.component),(0,c.vs)((0,i.F4)(a.getWidgetProps(e))),null,16))])),_:2},1032,["style","class"])],1024)))),128))])),_:2},1032,["class","style"])))),128))],6)],64)}var pe=n(2262),fe=n(6791);function me(e,t,n,s,o,a){return(0,i.wg)(),(0,i.iD)("div",{class:(0,c.C_)(["row",a.classes]),style:(0,c.j5)(n.style)},[(0,i.WI)(e.$slots,"default",{},void 0,!0)],6)}var ge={name:"Row",props:{class:{type:String,required:!1,default:""},style:{type:String,required:!1,default:""}},computed:{classes(){return this.class}}};const be=(0,x.Z)(ge,[["render",me],["__scopeId","data-v-1b4663f2"]]);var ye=be;function we(e,t,n,s,o,a){return(0,i.wg)(),(0,i.iD)("div",{style:(0,c.j5)(n.style),class:(0,c.C_)(a.classes)},[(0,i.WI)(e.$slots,"default",{},void 0,!0)],6)}var ve={name:"Widget",props:{style:{type:String,required:!1,default:""},class:{type:String,required:!1,default:""}},computed:{classes(){return(this.class?.length?this.class.split(" "):["col-3"]).concat(["widget","column"])}}};const ke=(0,x.Z)(ve,[["render",we],["__scopeId","data-v-5df52982"]]);var _e=ke,xe={name:"Dashboard",mixins:[S.Z],components:{Widget:_e,Loading:fe.Z,Row:ye},props:{refreshSeconds:{type:Number,required:!1,default:0}},data(){return{rows:[],loading:!1,style:void 0,class:void 0}},computed:{classes(){return this.class}},methods:{getWidgetProps(e){const t={...e.props};return t.class&&delete t.class,t},parseTemplate(e,t){const s=(new DOMParser).parseFromString(t,"text/xml").childNodes[0],o=this;this.style=s.attributes.style?.nodeValue,this.class=s.attributes.class?.nodeValue,this.rows=[...s.getElementsByTagName("Row")].map((e=>({style:e.attributes.style?.nodeValue,class:e.attributes.class?.nodeValue,widgets:[...e.children].map((e=>{const t=(0,pe.XI)((0,i.RC)((()=>n(6725)(`./${e.nodeName}/Index`)))),s=e.attributes.style?.nodeValue,a=e.attributes.class?.nodeValue,l=[...e.attributes].reduce(((e,t)=>("style"!==t.nodeName&&(e[t.nodeName]=t.nodeValue),e)),{content:e.innerHTML}),r={component:t,style:s,class:a,props:l||{}};return o.$options.components[e.nodeName]=t,r}))}))),this.loading=!1},async refreshDashboard(){this.loading=!0,this.widgets=[];const e=this.$route.params.name,t=await this.request("config.get_dashboard",{name:e});t||this.notifyError(`Dashboard ${e} not found`),this.parseTemplate(e,t)}},mounted(){if(this.refreshDashboard(),this.refreshSeconds){const e=this;setInterval((()=>{e.refreshDashboard()}),parseInt((1e3*this.refreshSeconds).toFixed(0)))}}};const Ce=(0,x.Z)(xe,[["render",he],["__scopeId","data-v-54e0248a"]]);var De=Ce;function Ie(e,t,n,s,o,a){return(0,i.wg)(),(0,i.iD)("h1",null,"Object not found")}var Te={name:"NotFound"};const $e=(0,x.Z)(Te,[["render",Ie]]);var Se=$e;const qe=e=>((0,i.dD)("data-v-af0b14d0"),e=e(),(0,i.Cn)(),e),Ue={class:"login-container"},Ee={class:"login",method:"POST"},Me=(0,i.uE)('
Platypush
',3),Pe={key:0,class:"row"},je=qe((()=>(0,i._)("label",null,[(0,i._)("input",{type:"password",name:"confirm_password",placeholder:"Confirm password"})],-1))),Oe=[je],Ze={class:"row buttons"},Ne=["value"],We=qe((()=>(0,i._)("div",{class:"row pull-right"},[(0,i._)("label",{class:"checkbox"},[(0,i._)("input",{type:"checkbox",name:"remember"}),(0,i.Uk)(" Keep me logged in on this device ")])],-1)));function Re(e,t,n,s,o,a){return(0,i.wg)(),(0,i.iD)("div",Ue,[(0,i._)("form",Ee,[Me,a._register?((0,i.wg)(),(0,i.iD)("div",Pe,Oe)):(0,i.kq)("",!0),(0,i._)("div",Ze,[(0,i._)("input",{type:"submit",class:"btn btn-primary",value:a._register?"Register":"Login"},null,8,Ne)]),We])])}var ze={name:"Login",mixins:[S.Z],props:{register:{type:Boolean,required:!1,default:!1}},computed:{_register(){return this.parseBoolean(this.register)}}};const Ae=(0,x.Z)(ze,[["render",Re],["__scopeId","data-v-af0b14d0"]]);var Le=Ae;function Fe(e,t,n,s,o,a){const l=(0,i.up)("Login");return(0,i.wg)(),(0,i.j4)(l,{register:!0})}var Be={name:"Register",mixins:[Le],components:{Login:Le},props:{register:{type:Boolean,required:!1,default:!0}}};const He=(0,x.Z)(Be,[["render",Fe]]);var Ve=He;const Ye={key:2,class:"canvas"},Ke={class:"panel"},Je={key:3,class:"canvas"},Ge={class:"panel"},Xe={key:4,class:"canvas"};function Qe(e,t,n,s,o,a){const l=(0,i.up)("Loading"),r=(0,i.up)("Nav"),d=(0,i.up)("Settings"),u=(0,i.up)("Extensions");return(0,i.wg)(),(0,i.iD)("main",null,[o.loading?((0,i.wg)(),(0,i.j4)(l,{key:0})):((0,i.wg)(),(0,i.j4)(r,{key:1,panels:o.components,"selected-panel":o.selectedPanel,"selected-config-panel":o.selectedConfigPanel,hostname:o.hostname,onSelect:t[0]||(t[0]=e=>o.selectedPanel=e),onSelectConfig:t[1]||(t[1]=e=>o.selectedConfigPanel=e)},null,8,["panels","selected-panel","selected-config-panel","hostname"])),"settings"===o.selectedPanel?((0,i.wg)(),(0,i.iD)("div",Ye,[(0,i._)("div",Ke,[(0,i.Wm)(d,{"selected-panel":o.selectedConfigPanel},null,8,["selected-panel"])])])):"extensions"===o.selectedPanel?((0,i.wg)(),(0,i.iD)("div",Je,[(0,i._)("div",Ge,[(0,i.Wm)(u)])])):((0,i.wg)(),(0,i.iD)("div",Xe,[((0,i.wg)(!0),(0,i.iD)(i.HY,null,(0,i.Ko)(o.components,((e,t)=>((0,i.wg)(),(0,i.iD)("div",{class:(0,c.C_)(["panel",{hidden:t!==o.selectedPanel}]),key:t},[t===o.selectedPanel?((0,i.wg)(),(0,i.j4)((0,i.LL)(e.component),{key:0,config:e.config,"plugin-name":t},null,8,["config","plugin-name"])):(0,i.kq)("",!0)],2)))),128))]))])}const et=e=>((0,i.dD)("data-v-029bae2f"),e=e(),(0,i.Cn)(),e),tt=et((()=>(0,i._)("i",{class:"fas fa-bars"},null,-1))),nt=["textContent"],st=["title"],it={key:0,class:"plugins"},ot={href:"/#"},at=et((()=>(0,i._)("i",{class:"fas fa-home"},null,-1))),lt={key:0,class:"name"},rt=["title","onClick"],ct={href:"/#settings"},dt={class:"icon"},ut=["src"],ht={key:2,class:"fas fa-puzzle-piece"},pt=["textContent"],ft={key:1,class:"plugins"},mt=["title","onClick"],gt=["href"],bt={class:"icon"},yt=["src"],wt={key:2,class:"fas fa-puzzle-piece"},vt=["textContent"],kt={class:"footer"},_t={href:"/#extensions"},xt=et((()=>(0,i._)("span",{class:"icon"},[(0,i._)("i",{class:"fa fa-puzzle-piece"})],-1))),Ct={key:0,class:"name"},Dt={href:"/#settings"},It=et((()=>(0,i._)("span",{class:"icon"},[(0,i._)("i",{class:"fa fa-cog"})],-1))),Tt={key:0,class:"name"},$t={href:"/logout"},St=et((()=>(0,i._)("span",{class:"icon"},[(0,i._)("i",{class:"fas fa-sign-out-alt"})],-1))),qt={key:0,class:"name"};function Ut(e,t,n,s,o,a){return(0,i.wg)(),(0,i.iD)("nav",{class:(0,c.C_)({collapsed:o.collapsed})},[(0,i._)("div",{class:"toggler",onClick:t[0]||(t[0]=e=>o.collapsed=!o.collapsed)},[tt,n.hostname?((0,i.wg)(),(0,i.iD)("span",{key:0,class:"hostname",textContent:(0,c.zw)(n.hostname)},null,8,nt)):(0,i.kq)("",!0),(0,i._)("i",{class:(0,c.C_)(["icon status fas fa-circle",{ok:o.connected,error:!o.connected}]),title:o.connected?"Connected":"Disconnected"},null,10,st)]),"settings"===n.selectedPanel?((0,i.wg)(),(0,i.iD)("ul",it,[(0,i._)("li",{class:"entry",title:"Home",onClick:t[1]||(t[1]=e=>a.onItemClick("entities"))},[(0,i._)("a",ot,[at,o.collapsed?(0,i.kq)("",!0):((0,i.wg)(),(0,i.iD)("span",lt,"Home"))])]),((0,i.wg)(!0),(0,i.iD)(i.HY,null,(0,i.Ko)(o.configSections,((t,s)=>((0,i.wg)(),(0,i.iD)("li",{key:s,class:(0,c.C_)(["entry",{selected:s===n.selectedConfigPanel}]),title:t.name,onClick:t=>e.$emit("select-config",s)},[(0,i._)("a",ct,[(0,i._)("span",dt,[t.icon?.["class"]?((0,i.wg)(),(0,i.iD)("i",{key:0,class:(0,c.C_)(t.icon["class"])},null,2)):t.icon?.imgUrl?((0,i.wg)(),(0,i.iD)("img",{key:1,src:t.icon?.imgUrl,alt:"name"},null,8,ut)):((0,i.wg)(),(0,i.iD)("i",ht))]),o.collapsed?(0,i.kq)("",!0):((0,i.wg)(),(0,i.iD)("span",{key:0,class:"name",textContent:(0,c.zw)(t.name)},null,8,pt))])],10,rt)))),128))])):((0,i.wg)(),(0,i.iD)("ul",ft,[((0,i.wg)(!0),(0,i.iD)(i.HY,null,(0,i.Ko)(a.panelNames,(e=>((0,i.wg)(),(0,i.iD)("li",{key:e,class:(0,c.C_)(["entry",{selected:e===n.selectedPanel}]),title:e,onClick:t=>a.onItemClick(e)},[(0,i._)("a",{href:`/#${e}`},[(0,i._)("span",bt,[o.icons[e]?.class?((0,i.wg)(),(0,i.iD)("i",{key:0,class:(0,c.C_)(o.icons[e].class)},null,2)):o.icons[e]?.imgUrl?((0,i.wg)(),(0,i.iD)("img",{key:1,src:o.icons[e].imgUrl,alt:"name"},null,8,yt)):((0,i.wg)(),(0,i.iD)("i",wt))]),o.collapsed?(0,i.kq)("",!0):((0,i.wg)(),(0,i.iD)("span",{key:0,class:"name",textContent:(0,c.zw)(a.displayName(e))},null,8,vt))],8,gt)],10,mt)))),128))])),(0,i._)("ul",kt,[(0,i._)("li",{class:(0,c.C_)({selected:"extensions"===n.selectedPanel}),title:"Extensions",onClick:t[2]||(t[2]=e=>a.onItemClick("extensions"))},[(0,i._)("a",_t,[xt,o.collapsed?(0,i.kq)("",!0):((0,i.wg)(),(0,i.iD)("span",Ct,"Extensions"))])],2),(0,i._)("li",{class:(0,c.C_)({selected:"settings"===n.selectedPanel}),title:"Settings",onClick:t[3]||(t[3]=e=>a.onItemClick("settings"))},[(0,i._)("a",Dt,[It,o.collapsed?(0,i.kq)("",!0):((0,i.wg)(),(0,i.iD)("span",Tt,"Settings"))])],2),(0,i._)("li",{title:"Logout",onClick:t[4]||(t[4]=e=>a.onItemClick("logout"))},[(0,i._)("a",$t,[St,o.collapsed?(0,i.kq)("",!0):((0,i.wg)(),(0,i.iD)("span",qt,"Logout"))])])])],2)}var Et=n(1359),Mt=JSON.parse('{"users":{"name":"Users","icon":{"class":"fas fa-user"}},"tokens":{"name":"Tokens","icon":{"class":"fas fa-key"}},"application":{"name":"Application","icon":{"class":"fas fa-gears"}}}'),Pt={name:"Nav",emits:["select","select-config"],mixins:[S.Z],props:{panels:{type:Object,required:!0},selectedPanel:{type:String},selectedConfigPanel:{type:String},hostname:{type:String}},computed:{panelNames(){const e=(e,n)=>{const s=t.indexOf(n);return s>=0&&(e=[n].concat(e.slice(0,s).concat(e.slice(s+1)))),e};let t=Object.keys(this.panels).sort();return t=e(t,"execute"),t=e(t,"entities"),t},collapsedDefault(){return!(!this.isMobile()&&!this.isTablet())}},methods:{onItemClick(e){this.$emit("select",e),this.collapsed=!!this.isMobile()||this.collapsedDefault},displayName(e){return"entities"===e?"Home":"execute"===e?"Execute":e},setConnected(e){return()=>{this.connected=e}}},data(){return{collapsed:!0,connected:!1,icons:Et,host:null,configSections:Mt}},mounted(){this.collapsed=this.collapsedDefault,U.$.on("connect",this.setConnected(!0)),U.$.on("disconnect",this.setConnected(!1)),this.setConnected(this.$root.connected)}};const jt=(0,x.Z)(Pt,[["render",Ut],["__scopeId","data-v-029bae2f"]]);var Ot=jt,Zt=n(7092),Nt=n(3136),Wt={name:"Panel",mixins:[S.Z],components:{Extensions:Zt["default"],Settings:Nt["default"],Nav:Ot,Loading:fe.Z},data(){return{loading:!1,plugins:{},backends:{},procedures:{},components:{},hostname:void 0,selectedPanel:void 0,selectedConfigPanel:"users"}},methods:{initSelectedPanel(){const e=this.$route.hash.match("#?([a-zA-Z0-9.]+)[?]?(.*)"),t=e?e[1]:"entities";t?.length&&(this.selectedPanel=t)},initPanels(){const e=this;this.components={},Object.entries(this.plugins).forEach((async([t,s])=>{const o=t.split(".").map((e=>e[0].toUpperCase()+e.slice(1))).join("");let a=null;try{a=await n(3379)(`./${o}/Index`)}catch(r){return}const l=(0,pe.XI)((0,i.RC)((async()=>a)));e.$options.components[t]=l,e.components[t]={component:l,pluginName:t,config:s}}))},async parseConfig(){[this.plugins,this.backends,this.procedures,this.hostname]=await Promise.all([this.request("config.get_plugins"),this.request("config.get_backends"),this.request("config.get_procedures"),this.request("config.get_device_id")]),this.initializeDefaultViews()},initializeDefaultViews(){this.plugins.entities={},this.plugins.execute={}}},async mounted(){this.loading=!0;try{await this.parseConfig(),this.initPanels(),this.initSelectedPanel(),this.$watch("$route.hash",this.initSelectedPanel)}finally{this.loading=!1}}};const Rt=(0,x.Z)(Wt,[["render",Qe],["__scopeId","data-v-bec58c5c"]]);var zt=Rt;const At={key:1,class:"canvas"};function Lt(e,t,n,s,o,a){const l=(0,i.up)("Loading");return(0,i.wg)(),(0,i.iD)("main",null,[o.loading?((0,i.wg)(),(0,i.j4)(l,{key:0})):((0,i.wg)(),(0,i.iD)("div",At,[((0,i.wg)(),(0,i.j4)((0,i.LL)(o.component),{config:o.config,"plugin-name":a.pluginName},null,8,["config","plugin-name"]))]))])}var Ft={name:"Panel",mixins:[S.Z],components:{Settings:Nt["default"],Nav:Ot,Loading:fe.Z},data(){return{loading:!1,config:{},plugins:{},backends:{},procedures:{},component:void 0,hostname:void 0,selectedPanel:void 0}},computed:{pluginName(){return this.$route.params.plugin}},methods:{async initPanel(){const e=this.pluginName.split(".").map((e=>e[0].toUpperCase()+e.slice(1))).join("");let t=null;try{t=await n(3379)(`./${e}/Index`)}catch(s){return console.error(s),void this.notify({error:!0,title:`Cannot load plugin ${this.pluginName}`,text:s.toString()})}this.component=(0,pe.XI)((0,i.RC)((async()=>t))),this.$options.components[e]=this.component},async initConfig(){const e=await this.request("config.get");this.config=e[this.pluginName]||{},this.hostname=await this.request("config.get_device_id")}},async mounted(){this.loading=!0;try{await this.initConfig(),await this.initPanel()}finally{this.loading=!1}}};const Bt=(0,x.Z)(Ft,[["render",Lt],["__scopeId","data-v-e339182c"]]);var Ht=Bt;const Vt=[{path:"/",name:"Panel",component:zt},{path:"/dashboard/:name",name:"Dashboard",component:De},{path:"/plugin/:plugin",name:"Plugin",component:Ht},{path:"/login",name:"Login",component:Le},{path:"/register",name:"Register",component:Ve},{path:"/:catchAll(.*)",component:Se}],Yt=(0,ue.p7)({history:(0,ue.PO)(),routes:Vt});var Kt=Yt,Jt=n(5205);(0,Jt.z)("/service-worker.js",{ready(){console.log("App is being served from cache by a service worker.\nFor more details, visit https://goo.gl/AFskqB")},registered(){console.log("Service worker has been registered.")},cached(){console.log("Content has been cached for offline use.")},updatefound(){console.log("New content is downloading.")},updated(){console.log("New content is available; please refresh.")},offline(){console.log("No internet connection found. App is running in offline mode.")},error(e){console.error("Error during service worker registration:",e)}});const Gt=(0,s.ri)(de);Gt.config.globalProperties._config=window.config,Gt.use(Kt).mount("#app")},8637:function(e,t,n){"use strict";n.d(t,{Z:function(){return R}});var s=n(6154),i={name:"Api",methods:{execute(e,t=6e4,n=!0){const i={};return"target"in e&&e["target"]||(e["target"]="localhost"),"type"in e&&e["type"]||(e["type"]="request"),t&&(i.timeout=t),new Promise(((t,o)=>{s.Z.post("/execute",e,i).then((e=>{if(e=e.data.response,e.errors?.length){const t=e.errors?.[0]||e;this.notify({text:t,error:!0}),o(t)}else t(e.output)})).catch((e=>{412===e?.response?.data?.code&&window.location.href.indexOf("/register")<0?window.location.href="/register?redirect="+window.location.href:401===e?.response?.data?.code&&window.location.href.indexOf("/login")<0?window.location.href="/login?redirect="+window.location.href:(console.log(e),n&&this.notify({text:e,error:!0}),o(e))}))}))},request(e,t={},n=6e4,s=!0){return this.execute({type:"request",action:e,args:t},n,s)}}};const o=i;var a=o,l={name:"Clipboard",methods:{async copyToClipboard(e){await navigator.clipboard.writeText(e),this.notify({text:"Copied to the clipboard",image:{icon:"clipboard"}})}}};const r=l;var c=r,d={name:"Cookies",methods:{getCookies(){return document.cookie.split(/;\s*/).reduce(((e,t)=>{const[n,s]=t.split("=");return e[n]=s,e}),{})},getCookie(e){return this.getCookies()[e]},setCookie(e,t,n){document.cookie=`${e}=${t}; path=${n?.path||"/"}`+(n?.expires?`; expires=${n?.expires.toISOString()}`:"")},deleteCookie(e){document.cookie=`${e}=; expires=1970-01-01T00:00:00Z`}}};const u=d;var h=u,p={name:"DateTime",methods:{formatDate(e,t=!1){return"string"===typeof e&&(e=new Date(Date.parse(e))),e.toDateString().substring(0,t?15:10)},formatTime(e,t=!0){return"string"===typeof e&&(e=new Date(Date.parse(e))),e.toTimeString().substring(0,t?8:5)},formatDateTime(e,t=!1,n=!0){return"string"===typeof e&&(e=new Date(Date.parse(e))),`${this.formatDate(e,t)}, ${this.formatTime(e,n)}`}}};const f=p;var m=f,g=(n(2801),n(5250)),b={name:"Events",computed:{_eventsReady(){return this.$root.$refs.events?.initialized}},methods:{subscribe(e,t,...n){const s=()=>{g.$.emit("subscribe",{events:n,handler:e,handlerName:t||this.generateId()})};if(this._eventsReady)return void s();const i=this,o=this.$watch((()=>i._eventsReady),(e=>{e&&(s(),o())}));return o},unsubscribe(e){g.$.emit("unsubscribe",e)},generateId(){return btoa([...Array(11).keys()].map((()=>String.fromCharCode(Math.round(255*Math.random())))))}}};const y=b;var w=y,v={name:"Extensions",methods:{pluginDisplayName(e){const t=e.split(".");return t.forEach(((e,n)=>{t[n]=e.charAt(0).toUpperCase()+e.slice(1)})),t.length>1&&(t[0]=`[${t[0]}]`),t.join(" ")}}};const k=v;var _=k,x={name:"Notification",methods:{notify(e){g.$.publishNotification(e)},notifyWarning(e){this.notify({text:e,warning:!0})},notifyError(e){throw this.notify({text:e,error:!0}),e}}};const C=x;var D=C,I={name:"Screen",methods:{isMobile(){return window.matchMedia("only screen and (max-width: 768px)").matches},isTablet(){return!this.isMobile()&&window.matchMedia("only screen and (max-width: 1023px)").matches},isDesktop(){return window.matchMedia("only screen and (min-width: 1024px)").matches}}};const T=I;var $=T,S={name:"Text",methods:{capitalize(e){return e?.length?e.charAt(0).toUpperCase()+e.slice(1):e},prettify(e){return e.split("_").map((e=>this.capitalize(e))).join(" ")},indent(e,t=2){return e.split("\n").map((e=>`${" ".repeat(t)}${e}`)).join("\n")}}};const q=S;var U=q,E=(n(7658),{name:"Types",methods:{parseBoolean(e){return"string"===typeof e?(e=e.toLowerCase(),"true"===e||"false"!==e&&!!parseInt(e)):!!e},convertSize(e){"string"===typeof e&&(e=parseInt(e));let t=null;const n=["B","KB","MB","GB","TB"];return n.forEach(((s,i)=>{e<=1024&&null==t?t=s:e>1024&&(i===n.length-1?t=s:e/=1024)})),`${e.toFixed(2)} ${t}`},convertTime(e){const t={},n=[];if(e=parseFloat(e),t.d=Math.round(e/86400),t.h=Math.round(e/3600-24*t.d),t.m=Math.round(e/60-(24*t.d+60*t.h)),t.s=Math.round(e-(24*t.d+3600*t.h+60*t.m),1),parseInt(t.d)){let e=t.d+" day";t.d>1&&(e+="s"),n.push(e)}if(parseInt(t.h)){let e=t.h+" hour";t.h>1&&(e+="s"),n.push(e)}if(parseInt(t.m)){let e=t.m+" minute";t.m>1&&(e+="s"),n.push(e)}let s=t.s+" second";return t.s>1&&(s+="s"),n.push(s),n.join(" ")},objectsEqual(e,t){if("object"!==typeof e||"object"!==typeof t)return!1;if(null==e||null==t)return null==e&&null==t;for(const n of Object.keys(e||{}))switch(typeof e[n]){case"object":if(!this.objectsEqual(e[n],t[n]))return!1;break;case"function":if(e[n].toString()!=t[n]?.toString())return!1;break;default:if(e[n]!=t[n])return!1;break}for(const n of Object.keys(t||{}))if(null==e[n]&&null!=t[n])return!1;return!0}}});const M=E;var P=M,j={name:"Url",methods:{parseUrlFragment(){return window.location.href.replace(/.*#(\w+)[?;]?.*/,"$1")},getUrlArgs(){return window.location.href.replace(/.*#/,"").replace(/.*\?/,"").split(/[&;]/).reduce(((e,t)=>{const n=t.split("=");return e[n[0]]=n[1],e}),{})},setUrlArgs(e){window.location.href=`/#${this.parseUrlFragment()}?${this.fragmentFromArgs(e)}`},fragmentFromArgs(e){return Object.entries(e).map((([e,t])=>`${encodeURIComponent(e)}=${encodeURIComponent(t)}`)).join("&")}}};const O=j;var Z=O,N={name:"Utils",mixins:[a,c,h,m,w,D,_,$,U,P,Z]};const W=N;var R=W},6791:function(e,t,n){"use strict";n.d(t,{Z:function(){return d}});var s=n(6252);const i={class:"loading"},o={class:"icon"};function a(e,t){return(0,s.wg)(),(0,s.iD)("div",i,[(0,s._)("div",o,[((0,s.wg)(),(0,s.iD)(s.HY,null,(0,s.Ko)(4,(e=>(0,s._)("div",{key:e}))),64))])])}var l=n(3744);const r={},c=(0,l.Z)(r,[["render",a],["__scopeId","data-v-4d9c871b"]]);var d=c},3493:function(e,t,n){"use strict";n.d(t,{Z:function(){return g}});var s=n(6252),i=n(3577);const o=e=>((0,s.dD)("data-v-09bd997a"),e=e(),(0,s.Cn)(),e),a=["id"],l={key:0,class:"header"},r=["textContent"],c=o((()=>(0,s._)("i",{class:"fas fa-xmark"},null,-1))),d=[c],u={class:"body"};function h(e,t,n,o,c,h){return(0,s.wg)(),(0,s.iD)("div",{class:(0,i.C_)(["modal-container fade-in",{hidden:!c.isVisible}]),id:n.id,style:(0,i.j5)({"--z-index":h.zIndex}),onClick:t[3]||(t[3]=(...e)=>h.close&&h.close(...e))},[(0,s._)("div",{class:(0,i.C_)(["modal",e.$attrs.class])},[(0,s._)("div",{class:"content",style:(0,i.j5)({"--width":n.width,"--height":n.height}),onClick:t[2]||(t[2]=e=>e.stopPropagation())},[n.title?((0,s.wg)(),(0,s.iD)("div",l,[n.title?((0,s.wg)(),(0,s.iD)("div",{key:0,class:"title",textContent:(0,i.zw)(n.title)},null,8,r)):(0,s.kq)("",!0),(0,s._)("button",{title:"Close",alt:"Close",onClick:t[0]||(t[0]=(...e)=>h.close&&h.close(...e))},d)])):(0,s.kq)("",!0),(0,s._)("div",u,[(0,s.WI)(e.$slots,"default",{onModalClose:t[1]||(t[1]=(...e)=>h.close&&h.close(...e))},void 0,!0)])],4)],2)],14,a)}n(7658);var p={name:"Modal",emits:["close","open"],props:{id:{type:String},title:{type:String},width:{type:[Number,String]},height:{type:[Number,String]},visible:{type:Boolean,default:!1},timeout:{type:[Number,String]},level:{type:Number,default:1}},data(){return{timeoutId:void 0,prevVisible:this.visible,isVisible:this.visible}},computed:{zIndex(){return 500+this.level}},methods:{close(){this.prevVisible=this.isVisible,this.isVisible=!1},hide(){this.close()},show(){this.prevVisible=this.isVisible,this.isVisible=!0},toggle(){this.isVisible?this.close():this.show()},onKeyUp(e){e.stopPropagation(),"Escape"===e.key&&this.close()}},mounted(){const e=this,t=t=>{t?e.$emit("open"):e.$emit("close"),e.isVisible=t};document.body.addEventListener("keyup",this.onKeyUp),this.$watch((()=>this.visible),t),this.$watch((()=>this.isVisible),t)},unmounted(){document.body.removeEventListener("keyup",this.onKeyUp)},updated(){if(this.prevVisible=this.isVisible,this.isVisible){let e=parseInt(getComputedStyle(this.$el).zIndex),t=[];for(const n of document.querySelectorAll(".modal-container:not(.hidden)")){const s=parseInt(getComputedStyle(n).zIndex);s>e?(e=s,t=[n]):s===e&&t.push(n)}(t.indexOf(this.$el)<0||t.length>1)&&(this.$el.style.zIndex=e+1)}if(this.isVisible&&this.timeout&&!this.timeoutId){const e=e=>()=>{e.close(),e.timeoutId=void 0};this.timeoutId=setTimeout(e(this),0+this.timeout)}}},f=n(3744);const m=(0,f.Z)(p,[["render",h],["__scopeId","data-v-09bd997a"]]);var g=m},6936:function(e,t,n){"use strict";n.d(t,{Z:function(){return m}});var s=n(6252),i=n(9963),o=n(3577);const a=e=>((0,s.dD)("data-v-db648f4c"),e=e(),(0,s.Cn)(),e),l={class:"dialog-content"},r=a((()=>(0,s._)("i",{class:"fas fa-check"},null,-1))),c=a((()=>(0,s._)("i",{class:"fas fa-xmark"},null,-1)));function d(e,t,n,a,d,u){const h=(0,s.up)("Modal");return(0,s.wg)(),(0,s.j4)(h,{ref:"modal",title:n.title},{default:(0,s.w5)((()=>[(0,s._)("div",l,[(0,s.WI)(e.$slots,"default",{},void 0,!0)]),(0,s._)("form",{class:"buttons",onSubmit:t[4]||(t[4]=(0,i.iM)(((...e)=>u.onConfirm&&u.onConfirm(...e)),["prevent"]))},[(0,s._)("button",{type:"submit",class:"ok-btn",onClick:t[0]||(t[0]=(...e)=>u.onConfirm&&u.onConfirm(...e)),onTouch:t[1]||(t[1]=(...e)=>u.onConfirm&&u.onConfirm(...e))},[r,(0,s.Uk)(" "+(0,o.zw)(n.confirmText),1)],32),(0,s._)("button",{type:"button",class:"cancel-btn",onClick:t[2]||(t[2]=(...e)=>u.close&&u.close(...e)),onTouch:t[3]||(t[3]=(...e)=>u.close&&u.close(...e))},[c,(0,s.Uk)(" "+(0,o.zw)(n.cancelText),1)],32)],32)])),_:3},8,["title"])}var u=n(3493),h={emits:["input","click","touch"],components:{Modal:u.Z},props:{title:{type:String},confirmText:{type:String,default:"OK"},cancelText:{type:String,default:"Cancel"}},methods:{onConfirm(){this.$emit("input"),this.close()},show(){this.$refs.modal.show()},close(){this.$refs.modal.hide()}}},p=n(3744);const f=(0,p.Z)(h,[["render",d],["__scopeId","data-v-db648f4c"]]);var m=f},8832:function(e,t,n){"use strict";n.d(t,{Z:function(){return f}});var s=n(6252),i=n(9963),o=n(3577);const a={class:"dropdown-container",ref:"container"},l=["title"],r=["textContent"],c=["id"];function d(e,t,n,d,u,h){return(0,s.wg)(),(0,s.iD)("div",a,[(0,s._)("button",{title:n.title,ref:"button",onClick:t[0]||(t[0]=(0,i.iM)((e=>h.toggle(e)),["stop"]))},[n.iconClass?((0,s.wg)(),(0,s.iD)("i",{key:0,class:(0,o.C_)(["icon",n.iconClass])},null,2)):(0,s.kq)("",!0),n.text?((0,s.wg)(),(0,s.iD)("span",{key:1,class:"text",textContent:(0,o.zw)(n.text)},null,8,r)):(0,s.kq)("",!0)],8,l),(0,s._)("div",{class:(0,o.C_)(["dropdown fade-in",{hidden:!u.visible}]),id:n.id,ref:"dropdown"},[(0,s.WI)(e.$slots,"default",{},void 0,!0)],10,c)],512)}var u={name:"Dropdown",emits:["click"],props:{id:{type:String},items:{type:Array,default:()=>[]},iconClass:{default:"fa fa-ellipsis-h"},text:{type:String},title:{type:String},keepOpenOnItemClick:{type:Boolean,default:!1}},data(){return{visible:!1}},methods:{documentClickHndl(e){if(!this.visible)return;let t=e.target;while(t){if(!this.$refs.dropdown)break;if(t===this.$refs.dropdown.element)return;t=t.parentElement}this.close()},close(){this.visible=!1,document.removeEventListener("click",this.documentClickHndl)},open(){document.addEventListener("click",this.documentClickHndl),this.visible=!0,setTimeout((()=>{const e=this.$refs.dropdown;e.style.left=0,e.style.top=parseFloat(getComputedStyle(this.$refs.button).height)+"px",e.getBoundingClientRect().left>window.innerWidth/2&&(e.style.left=-e.clientWidth+parseFloat(getComputedStyle(this.$refs.button).width)+"px"),e.getBoundingClientRect().top>window.innerHeight/2&&(e.style.top=-e.clientHeight+parseFloat(getComputedStyle(this.$refs.button).height)+"px")}),10)},toggle(e){e.stopPropagation(),this.$emit("click"),this.visible?this.close():this.open()},onKeyUp(e){e.stopPropagation(),"Escape"===e.key&&this.close()}},mounted(){document.body.addEventListener("keyup",this.onKeyUp)},unmounted(){document.body.removeEventListener("keyup",this.onKeyUp)}},h=n(3744);const p=(0,h.Z)(u,[["render",d],["__scopeId","data-v-74666001"]]);var f=p},1693:function(e,t,n){"use strict";n.d(t,{Z:function(){return h}});var s=n(6252),i=n(3577);const o={key:0,class:"col-2 icon"},a=["textContent"];function l(e,t,n,l,r,c){const d=(0,s.up)("Icon");return(0,s.wg)(),(0,s.iD)("div",{class:(0,i.C_)(["row item",n.itemClass]),onClick:t[0]||(t[0]=(...e)=>c.clicked&&c.clicked(...e))},[n.iconClass?.length||n.iconUrl?.length?((0,s.wg)(),(0,s.iD)("div",o,[(0,s.Wm)(d,{class:(0,i.C_)(n.iconClass),url:n.iconUrl},null,8,["class","url"])])):(0,s.kq)("",!0),(0,s._)("div",{class:(0,i.C_)(["text",{"col-10":null!=n.iconClass}]),textContent:(0,i.zw)(n.text)},null,10,a)],2)}var r=n(657),c={name:"DropdownItem",components:{Icon:r.Z},props:{iconClass:{type:String},iconUrl:{type:String},text:{type:String},disabled:{type:Boolean,default:!1},itemClass:{}},methods:{clicked(e){if(this.disabled)return!1;this.$parent.$emit("click",e),this.$parent.keepOpenOnItemClick||(this.$parent.visible=!1)}}},d=n(3744);const u=(0,d.Z)(c,[["render",l],["__scopeId","data-v-ca319ae0"]]);var h=u},657:function(e,t,n){"use strict";n.d(t,{Z:function(){return u}});var s=n(6252),i=n(3577);const o={class:"icon-container"},a=["src","alt"];function l(e,t,n,l,r,c){return(0,s.wg)(),(0,s.iD)("div",o,[n.url?.length?((0,s.wg)(),(0,s.iD)("img",{key:0,class:"icon",src:n.url,alt:n.alt},null,8,a)):c.className?.length?((0,s.wg)(),(0,s.iD)("i",{key:1,class:(0,i.C_)(["icon",c.className]),style:(0,i.j5)({color:n.color})},null,6)):(0,s.kq)("",!0)])}var r={props:{class:{type:String},url:{type:String},color:{type:String,default:""},alt:{type:String,default:""}},computed:{className(){return this.class}}},c=n(3744);const d=(0,c.Z)(r,[["render",l],["__scopeId","data-v-706a3bd1"]]);var u=d},2717:function(e,t,n){"use strict";n.d(t,{Z:function(){return p}});var s=n(6252);const i=e=>((0,s.dD)("data-v-2edff8b7"),e=e(),(0,s.Cn)(),e),o={class:"restart-btn-container"},a=i((()=>(0,s._)("i",{class:"fas fa-redo-alt"},null,-1)));function l(e,t,n,i,l,r){const c=(0,s.up)("ConfirmDialog");return(0,s.wg)(),(0,s.iD)("div",o,[(0,s.Wm)(c,{ref:"modal",onInput:r.restart},{default:(0,s.w5)((()=>[(0,s.Uk)(" Are you sure that you want to restart the application? ")])),_:1},8,["onInput"]),(0,s._)("button",{class:"btn btn-default restart-btn",onClick:t[0]||(t[0]=(...e)=>r.showDialog&&r.showDialog(...e)),onTouch:t[1]||(t[1]=(...e)=>r.showDialog&&r.showDialog(...e))},[a,(0,s.Uk)(" Restart Application ")],32)])}var r=n(6936),c=n(8637),d={name:"RestartButton",components:{ConfirmDialog:r.Z},mixins:[c.Z],methods:{showDialog(){this.$refs.modal.show()},async restart(){await this.request("application.restart")}}},u=n(3744);const h=(0,u.Z)(d,[["render",l],["__scopeId","data-v-2edff8b7"]]);var p=h},8615:function(e,t,n){"use strict";n.d(t,{Z:function(){return u}});var s=n(6252),i=n(3577);const o={key:0,class:"icon"};function a(e,t,n,a,l,r){const c=(0,s.up)("Icon");return(0,s.wg)(),(0,s.iD)("div",{class:(0,i.C_)(["tab",n.selected?"selected":""]),onClick:t[0]||(t[0]=t=>e.$emit("input"))},[n.iconClass?.length||n.iconUrl?.length?((0,s.wg)(),(0,s.iD)("span",o,[(0,s.Wm)(c,{class:(0,i.C_)(n.iconClass),url:n.iconUrl},null,8,["class","url"])])):(0,s.kq)("",!0),(0,s.Uk)(" "),(0,s.WI)(e.$slots,"default",{},void 0,!0)],2)}var l=n(657),r={name:"Tab",components:{Icon:l.Z},emits:["input"],props:{selected:{type:Boolean,default:!1},iconClass:{type:String},iconUrl:{type:String}}},c=n(3744);const d=(0,c.Z)(r,[["render",a],["__scopeId","data-v-9dc3b3b6"]]);var u=d},3176:function(e,t,n){"use strict";n.d(t,{Z:function(){return c}});var s=n(6252);const i={class:"tabs"};function o(e,t,n,o,a,l){return(0,s.wg)(),(0,s.iD)("div",i,[(0,s.WI)(e.$slots,"default",{},void 0,!0)])}var a={name:"Tabs"},l=n(3744);const r=(0,l.Z)(a,[["render",o],["__scopeId","data-v-f4300bb0"]]);var c=r},7092:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return Me}});var s=n(6252),i=n(9963),o=n(3577);const a={class:"row plugin extensions-container"},l={class:"filter-container"},r=["disabled"],c={class:"items"},d={key:0,class:"extension"},u=["data-name","onClick"],h={class:"name"},p={key:0,class:"enabled icon",title:"Enabled"},f={key:0,class:"enabled icon fas fa-circle-check"},m={key:0,class:"extension-body-container until tablet"},g={key:0,class:"extension-body-container from desktop"};function b(e,t,n,b,y,w){const v=(0,s.up)("Loading"),k=(0,s.up)("Extension");return(0,s.wg)(),(0,s.iD)("div",a,[y.loading?((0,s.wg)(),(0,s.j4)(v,{key:0})):(0,s.kq)("",!0),(0,s._)("header",null,[(0,s._)("div",l,[(0,s.wy)((0,s._)("input",{type:"text",ref:"filter",placeholder:"Extension name","onUpdate:modelValue":t[0]||(t[0]=e=>y.filter=e),disabled:y.loading},null,8,r),[[i.nr,y.filter]])])]),(0,s._)("main",null,[(0,s._)("div",c,[((0,s.wg)(!0),(0,s.iD)(s.HY,null,(0,s.Ko)(w.extensionNames,(e=>((0,s.wg)(),(0,s.iD)("div",{class:"extension-container",key:e},[w.matchesFilter(e)?((0,s.wg)(),(0,s.iD)("div",d,[(0,s._)("div",{class:(0,o.C_)(["item",{selected:e===y.selectedExtension}]),"data-name":e,onClick:t=>w.onClick(e,!1)},[(0,s._)("span",h,(0,o.zw)(w.extensions[e].name),1),w.enabledExtensions[e]?((0,s.wg)(),(0,s.iD)("span",p,[w.enabledExtensions[e]?((0,s.wg)(),(0,s.iD)("i",f)):(0,s.kq)("",!0)])):(0,s.kq)("",!0)],10,u),y.selectedExtension&&e===y.selectedExtension?((0,s.wg)(),(0,s.iD)("div",m,[(0,s.Wm)(k,{extension:w.extensions[y.selectedExtension],config:w.enabledExtensions[y.selectedExtension],"config-file":y.configFile},null,8,["extension","config","config-file"])])):(0,s.kq)("",!0)])):(0,s.kq)("",!0)])))),128))]),y.selectedExtension?((0,s.wg)(),(0,s.iD)("div",g,[(0,s.Wm)(k,{extension:w.extensions[y.selectedExtension],config:w.enabledExtensions[y.selectedExtension],"config-file":y.configFile},null,8,["extension","config","config-file"])])):(0,s.kq)("",!0)])])}var y=n(6791),w=n(8637);const v=e=>((0,s.dD)("data-v-3fa6b036"),e=e(),(0,s.Cn)(),e),k={class:"extension"},_=v((()=>(0,s._)("span",{class:"from tablet"},"Documentation",-1))),x=v((()=>(0,s._)("span",{class:"from tablet"},"Install",-1))),C=v((()=>(0,s._)("span",{class:"from tablet"},"Configuration",-1))),D={class:"extension-body"};function I(e,t,n,i,o,a){const l=(0,s.up)("Tab"),r=(0,s.up)("Tabs"),c=(0,s.up)("Doc"),d=(0,s.up)("Config"),u=(0,s.up)("Install");return(0,s.wg)(),(0,s.iD)("div",k,[(0,s._)("header",null,[(0,s.Wm)(r,null,{default:(0,s.w5)((()=>[(0,s.Wm)(l,{selected:"doc"===o.selectedTab,"icon-class":"fas fa-book",onInput:t[0]||(t[0]=e=>o.selectedTab="doc")},{default:(0,s.w5)((()=>[_])),_:1},8,["selected"]),(0,s.Wm)(l,{selected:"install"===o.selectedTab,"icon-class":"fas fa-download",onInput:t[1]||(t[1]=e=>o.selectedTab="install")},{default:(0,s.w5)((()=>[x])),_:1},8,["selected"]),(0,s.Wm)(l,{selected:"config"===o.selectedTab,"icon-class":"fas fa-square-check",onInput:t[2]||(t[2]=e=>o.selectedTab="config")},{default:(0,s.w5)((()=>[C])),_:1},8,["selected"])])),_:1})]),(0,s._)("div",D,["doc"===o.selectedTab?((0,s.wg)(),(0,s.j4)(c,{key:0,extension:n.extension},null,8,["extension"])):"config"===o.selectedTab?((0,s.wg)(),(0,s.j4)(d,{key:1,extension:n.extension,config:n.config,"config-file":n.configFile},null,8,["extension","config","config-file"])):"install"===o.selectedTab?((0,s.wg)(),(0,s.j4)(u,{key:2,extension:n.extension},null,8,["extension"])):(0,s.kq)("",!0)])])}var T=n(8615),$=n(3176);const S={key:0,class:"config-container current"},q=["innerHTML"],U=["innerHTML"];function E(e,t,n,i,a,l){const r=(0,s.up)("CopyButton");return(0,s.wg)(),(0,s.iD)(s.HY,null,[l.highlightedCurrentConfig?((0,s.wg)(),(0,s.iD)("div",S,[(0,s.Wm)(r,{text:a.curYamlConfig},null,8,["text"]),(0,s._)("pre",null,[(0,s._)("code",{class:"config-snippet",innerHTML:l.highlightedCurrentConfig},null,8,q)])])):(0,s.kq)("",!0),(0,s._)("div",{class:(0,o.C_)(["config-container snippet",{fullscreen:!l.highlightedCurrentConfig}])},[(0,s.Wm)(r,{text:n.extension.config_snippet},null,8,["text"]),(0,s._)("pre",null,[(0,s._)("code",{class:"config-snippet",innerHTML:l.highlightedConfigSnippet},null,8,U)])],2)],64)}n(8783),n(3465);var M=n(637);const P=e=>((0,s.dD)("data-v-6be1edc1"),e=e(),(0,s.Cn)(),e),j=P((()=>(0,s._)("i",{class:"fas fa-clipboard"},null,-1))),O=[j];function Z(e,t,n,i,o,a){return(0,s.wg)(),(0,s.iD)("button",{class:"copy-button",ref:"copyButton",title:"Copy to clipboard",onClick:t[0]||(t[0]=(...e)=>a.copy&&a.copy(...e)),onInput:t[1]||(t[1]=(...e)=>a.copy&&a.copy(...e))},O,544)}var N={name:"CopyButton",emits:["input","click"],mixins:[w.Z],props:{text:{type:String}},methods:{async copy(e){this.text?.length&&await this.copyToClipboard(this.text),this.$emit(e.type,e)}}},W=n(3744);const R=(0,W.Z)(N,[["render",Z],["__scopeId","data-v-6be1edc1"]]);var z=R,A={name:"Extension",mixins:[w.Z],components:{CopyButton:z},props:{extension:{type:Object,required:!0},config:{type:Object},configFile:{type:String}},data(){return{curYamlConfig:null}},computed:{highlightedConfigSnippet(){return M.Z.highlight("yaml",`# Configuration template. You can add it to ${this.configFile}\n`+this.extension.config_snippet).value.trim()},highlightedCurrentConfig(){return this.curYamlConfig?M.Z.highlight("yaml","# Currently loaded configuration\n"+this.curYamlConfig).value.trim():null}},methods:{async loadCurrentConfig(){this.config?this.curYamlConfig=await this.request("utils.to_yaml",{obj:{[this.extension.name]:this.config}}):this.curYamlConfig=null}},mounted(){this.loadCurrentConfig(),this.$watch("config",this.loadCurrentConfig)}};const L=(0,W.Z)(A,[["render",E],["__scopeId","data-v-f988670a"]]);var F=L;const B=e=>((0,s.dD)("data-v-5aac2322"),e=e(),(0,s.Cn)(),e),H={class:"doc"},V=["href"],Y=B((()=>(0,s._)("i",{class:"icon fas fa-book"},null,-1))),K=["innerHTML"],J={key:0,class:"actions"},G=B((()=>(0,s._)("h3",null,[(0,s._)("i",{class:"icon fas fa-play"}),(0,s.Uk)(" Actions ")],-1))),X=["href"],Q={key:1,class:"events"},ee=B((()=>(0,s._)("h3",null,[(0,s._)("i",{class:"icon fas fa-flag"}),(0,s.Uk)(" Events ")],-1))),te=["href"];function ne(e,t,n,i,a,l){return(0,s.wg)(),(0,s.iD)("section",H,[(0,s._)("header",null,[(0,s._)("h2",null,[(0,s._)("a",{class:"title",href:n.extension.doc_url,target:"_blank"},[Y,(0,s.Uk)(" "+(0,o.zw)(n.extension.name),1)],8,V)])]),a.doc?((0,s.wg)(),(0,s.iD)("article",{key:0,onClick:t[0]||(t[0]=(...e)=>l.onDocClick&&l.onDocClick(...e))},[(0,s._)("div",{class:"doc-content",innerHTML:a.doc},null,8,K),Object.keys(n.extension.actions||{}).length>0?((0,s.wg)(),(0,s.iD)("div",J,[G,(0,s._)("ul",null,[((0,s.wg)(!0),(0,s.iD)(s.HY,null,(0,s.Ko)(l.actionNames,(e=>((0,s.wg)(),(0,s.iD)("li",{class:"action",key:e},[(0,s._)("a",{href:`/#execute?action=${n.extension.name}.${e}`},(0,o.zw)(n.extension.name)+"."+(0,o.zw)(e),9,X)])))),128))])])):(0,s.kq)("",!0),Object.keys(n.extension.events||{}).length>0?((0,s.wg)(),(0,s.iD)("div",Q,[ee,(0,s._)("ul",null,[((0,s.wg)(!0),(0,s.iD)(s.HY,null,(0,s.Ko)(l.eventNames,(e=>((0,s.wg)(),(0,s.iD)("li",{class:"event",key:e},[(0,s._)("a",{href:n.extension.events[e].doc_url,target:"_blank"},(0,o.zw)(e),9,te)])))),128))])])):(0,s.kq)("",!0)])):(0,s.kq)("",!0)])}var se=n(5250),ie={name:"Doc",mixins:[w.Z],props:{extension:{type:Object,required:!0}},data(){return{doc:null,localPageRegex:new RegExp("^/?#.*$")}},computed:{actionNames(){return Object.keys(this.extension.actions).sort()},eventNames(){return Object.keys(this.extension.events).sort()}},methods:{async parseDoc(){return this.extension.doc?.length?await this.request("utils.rst_to_html",{text:this.extension.doc}):null},refreshDoc(){this.parseDoc().then((e=>this.doc=e))},onDocClick(e){if("a"!==e.target.tagName.toLowerCase())return!0;e.preventDefault();const t=e.target.getAttribute("href");if(!t)return!0;if(t.match(this.localPageRegex))return window.location.href=t,!0;const n=t.match(/^https:\/\/docs\.platypush\.tech\/platypush\/(plugins|backend)\/([\w.]+)\.html#?.*$/);if(!n)return e.preventDefault(),window.open(t,"_blank"),!0;let[s,i]=n.slice(1);"backend"===s&&(i=`backend.${i}`),se.$.emit("update:extension",i),e.preventDefault()}},mounted(){this.refreshDoc(),this.$watch("extension.doc",this.refreshDoc)}};const oe=(0,W.Z)(ie,[["render",ne],["__scopeId","data-v-5aac2322"]]);var ae=oe;const le=e=>((0,s.dD)("data-v-7e5a8bae"),e=e(),(0,s.Cn)(),e),re={class:"install-container"},ce={class:"top"},de=le((()=>(0,s._)("header",null,[(0,s._)("h2",null,"Dependencies")],-1))),ue={class:"body"},he={class:"container install-cmd-container"},pe=["innerHTML"],fe={key:0,class:"buttons install-btn"},me=["disabled"],ge=le((()=>(0,s._)("i",{class:"fas fa-download"},null,-1))),be={key:0,class:"bottom"},ye=le((()=>(0,s._)("header",null,[(0,s._)("h2",null,"Output")],-1))),we={class:"body"},ve={class:"container install-output",ref:"installOutput"},ke=["textContent"],_e={key:0,class:"loading-container"};function xe(e,t,n,i,a,l){const r=(0,s.up)("CopyButton"),c=(0,s.up)("RestartButton"),d=(0,s.up)("Loading");return(0,s.wg)(),(0,s.iD)("div",re,[(0,s._)("section",ce,[de,(0,s._)("div",ue,[(0,s._)("div",he,[(0,s.Wm)(r,{text:l.installCmd},null,8,["text"]),(0,s._)("pre",null,[(0,s._)("code",{innerHTML:l.highlightedInstallCmd},null,8,pe)])]),l.installCmd?.length?((0,s.wg)(),(0,s.iD)("div",fe,[a.installDone?((0,s.wg)(),(0,s.j4)(c,{key:0})):(0,s.kq)("",!0),(0,s._)("button",{type:"button",class:"btn btn-default",disabled:a.installRunning,onClick:t[0]||(t[0]=(...e)=>l.installExtension&&l.installExtension(...e))},[ge,(0,s.Uk)(" Install ")],8,me)])):(0,s.kq)("",!0)])]),a.installRunning||a.installOutput?((0,s.wg)(),(0,s.iD)("section",be,[ye,(0,s._)("div",we,[(0,s._)("div",ve,[(0,s.Wm)(r,{text:a.installOutput},null,8,["text"]),(0,s._)("pre",null,[(0,s._)("code",{textContent:(0,o.zw)(a.installOutput)},null,8,ke),a.installRunning?((0,s.wg)(),(0,s.iD)("div",_e,[(0,s.Uk)("\n "),(0,s.Wm)(d),(0,s.Uk)("\n ")])):(0,s.kq)("",!0)])],512)])])):(0,s.kq)("",!0)])}var Ce=n(2717),De={name:"Install",mixins:[w.Z],emit:["install-start","install-end"],components:{CopyButton:z,Loading:y.Z,RestartButton:Ce.Z},props:{extension:{type:Object,required:!0}},data(){return{installRunning:!1,installDone:!1,installOutput:null,pendingCommands:0,error:null}},computed:{installCmd(){const e=this.extension.deps.install_cmd.join("\n").trim();return e?.length?e:null},highlightedInstallCmd(){return this.installCmd?M.Z.highlight("bash",this.extension.deps.install_cmd.map((e=>`$ ${e}`)).join("\n").trim()).value:"# No extra installation steps required"}},methods:{wsProcess(e){try{const t="https:"===window.location.protocol?"wss":"ws",n=`${t}://${location.host}${e}`,s=new WebSocket(n);s.onmessage=this.onMessage,s.onerror=this.onError,s.onclose=this.onClose}catch(t){this.notify({error:!0,title:"Websocket initialization error",text:t.toString()}),console.error("Websocket initialization error"),console.error(t),this.error=t,this.installRunning=!1}},onMessage(e){this.installOutput||(this.installOutput=""),this.installOutput+=e.data},onClose(){this.installRunning=!1,this.$emit("install-end",this.extension),this.error||(this.installDone=!0),this.notify({title:"Extension installed",html:`Extension ${this.extension.name} installed successfully`,image:{iconClass:"fas fa-check"}})},onError(e){this.notify({error:!0,title:"Websocket error",text:e.toString()}),console.error("Websocket error"),console.error(e),this.error=e,this.installRunning=!1},installExtension(){this.error=null,this.installRunning=!0,this.installOutput="",this.$emit("install-start",this.extension);const e=(this.extension.deps.install_cmd||[]).join(";\n");this.request("shell.exec",{cmd:e,ws:!0}).then((e=>{this.wsProcess(e.ws_path)})).catch((e=>{this.error=e,this.installRunning=!1,this.$emit("install-end",this.extension)}))}},mounted(){this.$watch("installOutput",(()=>{this.$nextTick((()=>{this.$refs.installOutput.focus(),this.$refs.installOutput.scrollTop=this.$refs.installOutput.scrollHeight}))}))}};const Ie=(0,W.Z)(De,[["render",xe],["__scopeId","data-v-7e5a8bae"]]);var Te=Ie,$e={name:"Extension",components:{Config:F,Doc:ae,Install:Te,Tab:T.Z,Tabs:$.Z},props:{extension:{type:Object,required:!0},config:{type:Object},configFile:{type:String}},data(){return{selectedTab:"doc"}}};const Se=(0,W.Z)($e,[["render",I],["__scopeId","data-v-3fa6b036"]]);var qe=Se,Ue={name:"Extensions",mixins:[w.Z],components:{Extension:qe,Loading:y.Z},data(){return{loading:!1,plugins:{},backends:{},enabledPlugins:{},enabledBackends:{},filter:"",selectedExtension:null,configFile:null,config:{}}},computed:{extensions(){const e={};return Object.entries(this.plugins).forEach((([t,n])=>{e[t]={...n,name:t}})),Object.entries(this.backends).forEach((([t,n])=>{t=`backend.${t}`,e[t]={...n,name:t}})),e},enabledExtensions(){return[this.enabledPlugins,this.enabledBackends].reduce(((e,t)=>(Object.entries(t).forEach((([t,n])=>{e[t]=n})),e)),{})},extensionNames(){return Object.keys(this.extensions).sort()}},methods:{onClick(e,t=!0,n=!0){this.selectedExtension===e?this.selectedExtension=null:this.onInput(e,t,n)},onInput(e,t=!0,n=!0){t&&(this.filter=e);const s=e?.toLowerCase()?.trim();if(s?.length&&this.extensions[s]){this.selectedExtension=s,n&&this.setUrlArgs({extension:s});const e=this.$el.querySelector(`.extensions-container .item[data-name="${s}"]`);e&&e.scrollIntoView({behavior:"smooth"})}else this.selectedExtension=null,n&&this.setUrlArgs({})},matchesFilter(e){return!this.filter||e.includes(this.filter.toLowerCase())},async loadExtensions(){this.loading=!0;let[e,t]=[[],[]];try{[this.plugins,this.backends,e,t,this.config]=await Promise.all([this.request("inspect.get_all_plugins"),this.request("inspect.get_all_backends"),this.request("inspect.get_enabled_plugins"),this.request("inspect.get_enabled_backends"),this.request("inspect.get_config")])}finally{this.loading=!1}this.enabledPlugins=e.reduce(((e,t)=>(e[t]=this.config[t]||{},e)),{}),this.enabledBackends=t.reduce(((e,t)=>(t=`backend.${t}`,e[t]=this.config[t]||{},e)),{}),this.loadExtensionFromUrl(),this.$watch("$route.hash",(()=>this.loadExtensionFromUrl()))},async loadConfigFile(){this.configFile=await this.request("config.get_config_file")},loadExtensionFromUrl(){const e=this.getUrlArgs().extension;e&&this.$nextTick((()=>this.onInput(e,!1,!1)))}},mounted(){this.loadConfigFile(),this.loadExtensions(),se.$.on("update:extension",(e=>this.onInput(e,!1))),this.$nextTick((()=>this.$refs.filter.focus()))}};const Ee=(0,W.Z)(Ue,[["render",b],["__scopeId","data-v-456a0caf"]]);var Me=Ee},3136:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return De}});var s=n(6252);const i={class:"settings-container"};function o(e,t,n,o,a,l){const r=(0,s.up)("Application"),c=(0,s.up)("Users"),d=(0,s.up)("Token");return(0,s.wg)(),(0,s.iD)("div",i,[(0,s._)("main",null,["application"===n.selectedPanel?((0,s.wg)(),(0,s.j4)(r,{key:0})):(0,s.kq)("",!0),"users"===n.selectedPanel&&a.currentUser?((0,s.wg)(),(0,s.j4)(c,{key:1,"session-token":a.sessionToken,"current-user":a.currentUser},null,8,["session-token","current-user"])):"tokens"===n.selectedPanel&&a.currentUser?((0,s.wg)(),(0,s.j4)(d,{key:2,"session-token":a.sessionToken,"current-user":a.currentUser},null,8,["session-token","current-user"])):(0,s.kq)("",!0)])])}const a={class:"app-container"},l={class:"btn-container"},r={class:"btn-container"};function c(e,t,n,i,o,c){const d=(0,s.up)("RestartButton"),u=(0,s.up)("StopButton");return(0,s.wg)(),(0,s.iD)("div",a,[(0,s._)("div",l,[(0,s.Wm)(d)]),(0,s._)("div",r,[(0,s.Wm)(u)])])}var d=n(2717);const u=e=>((0,s.dD)("data-v-1eab04fa"),e=e(),(0,s.Cn)(),e),h={class:"stop-btn-container"},p=u((()=>(0,s._)("br",null,null,-1))),f=u((()=>(0,s._)("br",null,null,-1))),m=u((()=>(0,s._)("span",{class:"text-danger"}," This will stop the application and you will not be able to restart it through the Web interface! ",-1))),g=u((()=>(0,s._)("i",{class:"fas fa-stop"},null,-1)));function b(e,t,n,i,o,a){const l=(0,s.up)("ConfirmDialog");return(0,s.wg)(),(0,s.iD)("div",h,[(0,s.Wm)(l,{ref:"modal",onInput:a.stop},{default:(0,s.w5)((()=>[(0,s.Uk)(" Are you sure that you want to stop the application? "),p,f,m])),_:1},8,["onInput"]),(0,s._)("button",{class:"btn btn-default stop-btn",onClick:t[0]||(t[0]=(...e)=>a.showDialog&&a.showDialog(...e)),onTouch:t[1]||(t[1]=(...e)=>a.showDialog&&a.showDialog(...e))},[g,(0,s.Uk)(" Stop Application ")],32)])}var y=n(6936),w=n(8637),v={name:"StopButton",components:{ConfirmDialog:y.Z},mixins:[w.Z],methods:{showDialog(){this.$refs.modal.show()},async stop(){await this.request("application.stop")}}},k=n(3744);const _=(0,k.Z)(v,[["render",b],["__scopeId","data-v-1eab04fa"]]);var x=_,C={name:"Application",components:{RestartButton:d.Z,StopButton:x}};const D=(0,k.Z)(C,[["render",c],["__scopeId","data-v-40365cea"]]);var I=D,T=n(3577),$=n(9963);const S={class:"token-container"},q={class:"token-container"},U=(0,s._)("label",null,[(0,s.Uk)(" This is your generated token. Treat it carefully and do not share it with untrusted parties."),(0,s._)("br"),(0,s.Uk)(" Also, make sure to save it - it WILL NOT be displayed again. ")],-1),E=["textContent"],M={class:"token-container"},P=(0,s._)("label",null," This is your current session token. It will be invalidated once you log out of the current session. ",-1),j=["textContent"],O={class:"body"},Z=(0,s.uE)('
Platypush provides two types of tokens:
JWT tokens are bearer-only, and they contain encrypted authentication information. They can be used as permanent or time-based tokens to authenticate with the Platypush API.
Session tokens are randomly generated tokens stored on the application database. A session token generated in this session will expire when you log out of it.
Generate a JWT authentication token that can be used for API calls to the /execute endpoint.
You can include the token in your requests in any of the following ways:
Specify it on the Authorization: Bearer header;
Specify it on the X-Token header;
Specify it as a URL parameter: http://site:8008/execute?token=... for a JWT token and ...?session_token=... for a session token;
Specify it on the body of your JSON request: {"type":"request", "action", "...", "token":"..."} for a JWT token, or "session_token" for a session token.
Confirm your credentials in order to generate a new JWT token.
Show session token will instead show the token cookie associated to the current session.
',1),N={class:"form-container"},W=(0,s._)("span",null,"Username",-1),R=["value"],z=(0,s._)("label",null,[(0,s._)("span",null,"Confirm password"),(0,s._)("span",null,[(0,s._)("input",{type:"password",name:"password"})])],-1),A=(0,s._)("label",null,[(0,s._)("span",null,"Token validity in days"),(0,s._)("span",null,[(0,s._)("input",{type:"text",name:"validityDays"})]),(0,s._)("span",{class:"note"},[(0,s.Uk)(" Decimal values are also supported - e.g. "),(0,s._)("i",null,"0.5"),(0,s.Uk)(" means half a day (12 hours). An empty or zero value means that the token has no expiry date. ")])],-1),L=(0,s._)("label",null,[(0,s._)("input",{type:"submit",class:"btn btn-primary",value:"Generate JWT token"})],-1);function F(e,t,n,i,o,a){const l=(0,s.up)("Loading"),r=(0,s.up)("Modal");return(0,s.wg)(),(0,s.iD)("div",S,[o.loading?((0,s.wg)(),(0,s.j4)(l,{key:0})):(0,s.kq)("",!0),(0,s.Wm)(r,{ref:"tokenModal"},{default:(0,s.w5)((()=>[(0,s._)("div",q,[U,(0,s._)("textarea",{class:"token",textContent:(0,T.zw)(o.token),onFocus:t[0]||(t[0]=(...e)=>a.onTokenSelect&&a.onTokenSelect(...e))},null,40,E)])])),_:1},512),(0,s.Wm)(r,{ref:"sessionTokenModal"},{default:(0,s.w5)((()=>[(0,s._)("div",M,[P,(0,s._)("textarea",{class:"token",textContent:(0,T.zw)(n.sessionToken),onFocus:t[1]||(t[1]=(...e)=>a.onTokenSelect&&a.onTokenSelect(...e))},null,40,j)])])),_:1},512),(0,s._)("div",O,[Z,(0,s._)("div",N,[(0,s._)("form",{onSubmit:t[3]||(t[3]=(0,$.iM)(((...e)=>a.generateToken&&a.generateToken(...e)),["prevent"])),ref:"generateTokenForm"},[(0,s._)("label",null,[W,(0,s._)("span",null,[(0,s._)("input",{type:"text",name:"username",value:n.currentUser.username,disabled:""},null,8,R)])]),z,A,L,(0,s._)("label",null,[(0,s._)("input",{type:"button",class:"btn btn-default",value:"Show session token",onClick:t[2]||(t[2]=(0,$.iM)((t=>e.$refs.sessionTokenModal.show()),["stop"]))})])],544)])])])}var B=n(6154),H=n(6791),V=n(3493),Y={name:"Token",components:{Modal:V.Z,Loading:H.Z},mixins:[w.Z],props:{currentUser:{type:Object,required:!0},sessionToken:{type:String,required:!0}},data(){return{loading:!1,token:null}},methods:{async generateToken(e){const t=this.currentUser.username,n=e.target.password.value;let s=e.target.validityDays?.length?parseInt(e.target.validityDays.value):0;s||(s=null),this.loading=!0;try{this.token=(await B.Z.post("/auth",{username:t,password:n,expiry_days:s})).data.token,this.token?.length&&this.$refs.tokenModal.show()}catch(i){console.error(i.toString()),this.notify({text:i.toString(),error:!0})}finally{this.loading=!1}},onTokenSelect(e){e.target.select(),document.execCommand("copy"),this.notify({text:"Token copied to clipboard",image:{iconClass:"fa fa-check"}})}}};const K=(0,k.Z)(Y,[["render",F]]);var J=K;const G=["disabled"],X=["disabled"],Q=["disabled"],ee=["disabled"],te=["value"],ne=["disabled"],se=["disabled"],ie=["disabled"],oe=["disabled"],ae={class:"body"},le={class:"users-list"},re=["onClick"],ce=["textContent"],de={class:"actions pull-right col-4"};function ue(e,t,n,i,o,a){const l=(0,s.up)("Loading"),r=(0,s.up)("Modal"),c=(0,s.up)("DropdownItem"),d=(0,s.up)("Dropdown"),u=(0,s.up)("FloatingButton"),h=(0,s.up)("ConfirmDialog");return(0,s.wg)(),(0,s.iD)(s.HY,null,[o.loading?((0,s.wg)(),(0,s.j4)(l,{key:0})):(0,s.kq)("",!0),(0,s.Wm)(r,{ref:"addUserModal",title:"Add User"},{default:(0,s.w5)((()=>[(0,s._)("form",{action:"#",method:"POST",ref:"addUserForm",onSubmit:t[0]||(t[0]=(...e)=>a.createUser&&a.createUser(...e))},[(0,s._)("label",null,[(0,s._)("input",{type:"text",name:"username",placeholder:"Username",disabled:o.commandRunning},null,8,G)]),(0,s._)("label",null,[(0,s._)("input",{type:"password",name:"password",placeholder:"Password",disabled:o.commandRunning},null,8,X)]),(0,s._)("label",null,[(0,s._)("input",{type:"password",name:"confirm_password",placeholder:"Confirm password",disabled:o.commandRunning},null,8,Q)]),(0,s._)("label",null,[(0,s._)("input",{type:"submit",class:"btn btn-primary",value:"Create User",disabled:o.commandRunning},null,8,ee)])],544)])),_:1},512),(0,s.Wm)(r,{ref:"changePasswordModal",title:"Change Password"},{default:(0,s.w5)((()=>[(0,s._)("form",{action:"#",method:"POST",ref:"changePasswordForm",onSubmit:t[1]||(t[1]=(...e)=>a.changePassword&&a.changePassword(...e))},[(0,s._)("label",null,[(0,s._)("input",{type:"text",name:"username",placeholder:"Username",value:o.selectedUser,disabled:"disabled"},null,8,te)]),(0,s._)("label",null,[(0,s._)("input",{type:"password",name:"password",placeholder:"Current password",disabled:o.commandRunning},null,8,ne)]),(0,s._)("label",null,[(0,s._)("input",{type:"password",name:"new_password",placeholder:"New password",disabled:o.commandRunning},null,8,se)]),(0,s._)("label",null,[(0,s._)("input",{type:"password",name:"confirm_new_password",placeholder:"Confirm new password",disabled:o.commandRunning},null,8,ie)]),(0,s._)("label",null,[(0,s._)("input",{type:"submit",class:"btn btn-primary",value:"Change Password",disabled:o.commandRunning},null,8,oe)])],544)])),_:1},512),(0,s._)("div",ae,[(0,s._)("ul",le,[((0,s.wg)(!0),(0,s.iD)(s.HY,null,(0,s.Ko)(o.users,(n=>((0,s.wg)(),(0,s.iD)("li",{key:n.user_id,class:"item user",onClick:e=>o.selectedUser=n.username},[(0,s._)("div",{class:"name col-8",textContent:(0,T.zw)(n.username)},null,8,ce),(0,s._)("div",de,[(0,s.Wm)(d,{title:"User Actions","icon-class":"fa fa-ellipsis"},{default:(0,s.w5)((()=>[(0,s.Wm)(c,{text:"Change Password",disabled:o.commandRunning,"icon-class":"fa fa-key",onClick:e=>a.showChangePasswordModal(n)},null,8,["disabled","onClick"]),(0,s.Wm)(c,{text:"Delete User",disabled:o.commandRunning,"icon-class":"fa fa-trash",onClick:t[2]||(t[2]=t=>e.$refs.deleteUserDialog.show())},null,8,["disabled"])])),_:2},1024)])],8,re)))),128))]),(0,s.Wm)(u,{"icon-class":"fa fa-plus",text:"Add User",onClick:a.showAddUserModal},null,8,["onClick"]),(0,s.Wm)(h,{ref:"deleteUserDialog",onInput:t[3]||(t[3]=e=>a.deleteUser(o.selectedUser))},{default:(0,s.w5)((()=>[(0,s.Uk)(" Are you sure that you want to remove the user "+(0,T.zw)(o.selectedUser)+"? ",1)])),_:1},512)])],64)}var he=n(8832),pe=n(1693);const fe=["title"];function me(e,t,n,i,o,a){const l=(0,s.up)("Icon");return(0,s.wg)(),(0,s.iD)("div",{class:(0,T.C_)(["floating-btn",a.className])},[(0,s._)("button",{type:"button",class:"btn btn-primary",title:n.title,onClick:t[0]||(t[0]=t=>e.$emit("click",t))},[(0,s.Wm)(l,{class:(0,T.C_)(n.iconClass),url:n.iconUrl},null,8,["class","url"])],8,fe)],2)}var ge=n(657),be={name:"FloatingButton",components:{Icon:ge.Z},emits:["click"],props:{iconClass:{type:String},iconUrl:{type:String},class:{type:String},title:{type:String}},computed:{className(){return this.class}}};const ye=(0,k.Z)(be,[["render",me],["__scopeId","data-v-133e57f8"]]);var we=ye,ve={name:"Users",components:{ConfirmDialog:y.Z,Dropdown:he.Z,DropdownItem:pe.Z,FloatingButton:we,Loading:H.Z,Modal:V.Z},mixins:[w.Z],props:{sessionToken:{type:String,required:!0},currentUser:{type:Object,required:!0}},data(){return{users:[],commandRunning:!1,loading:!1,selectedUser:null}},methods:{async refresh(){this.loading=!0;try{this.users=await this.request("user.get_users")}finally{this.loading=!1}},async createUser(e){e.preventDefault();const t=[...this.$refs.addUserForm.querySelectorAll("input[name]")].reduce(((e,t)=>(e[t.name]=t.value,e)),{});if(t.password===t.confirm_password){this.commandRunning=!0;try{await this.request("user.create_user",{username:t.username,password:t.password,session_token:this.sessionToken})}finally{this.commandRunning=!1}this.notify({text:"User "+t.username+" created",image:{iconClass:"fas fa-check"}}),this.$refs.addUserModal.close(),await this.refresh()}else this.notify({title:"Unable to create user",text:"Please check that the passwords match",error:!0,image:{iconClass:"fas fa-times"}})},async changePassword(e){e.preventDefault();const t=[...this.$refs.changePasswordForm.querySelectorAll("input[name]")].reduce(((e,t)=>(e[t.name]=t.value,e)),{});if(t.new_password!==t.confirm_new_password)return void this.notify({title:"Unable to update password",text:"Please check that the passwords match",error:!0,image:{iconClass:"fas fa-times"}});this.commandRunning=!0;let n=!1;try{n=await this.request("user.update_password",{username:t.username,old_password:t.password,new_password:t.new_password})}finally{this.commandRunning=!1}n?(this.$refs.changePasswordModal.close(),this.notify({text:"Password successfully updated",image:{iconClass:"fas fa-check"}})):this.notify({title:"Unable to update password",text:"The current password is incorrect",error:!0,image:{iconClass:"fas fa-times"}})},async deleteUser(e){this.commandRunning=!0;try{await this.request("user.delete_user",{username:e,session_token:this.sessionToken})}finally{this.commandRunning=!1}this.notify({text:`User ${e} removed`,image:{iconClass:"fas fa-check"}}),this.selectedUser=null,await this.refresh()},showAddUserModal(){this.$refs.addUserModal.show(),this.$nextTick((()=>{this.$refs.addUserForm.reset(),this.$refs.addUserForm.username.focus()}))},showChangePasswordModal(e){this.$refs.changePasswordModal.show(),this.$nextTick((()=>{this.$refs.changePasswordForm.password.focus(),this.selectedUser=e.username}))}},mounted(){this.refresh()}};const ke=(0,k.Z)(ve,[["render",ue],["__scopeId","data-v-510035f2"]]);var _e=ke,xe={name:"Settings",components:{Application:I,Users:_e,Token:J},mixins:[w.Z],props:{selectedPanel:{type:String}},data(){return{currentUser:null,sessionToken:null}},methods:{async refresh(){this.sessionToken=this.getCookies()["session_token"],this.currentUser=await this.request("user.get_user_by_session",{session_token:this.sessionToken})}},mounted(){this.refresh()}};const Ce=(0,k.Z)(xe,[["render",o]]);var De=Ce},3379:function(e,t,n){var s={"./Camera/Index":[5324,8039,5324],"./CameraAndroidIpcam/Index":[5794,5794],"./CameraCv/Index":[6148,8039,6148],"./CameraFfmpeg/Index":[9334,8039,9334],"./CameraGstreamer/Index":[813,8039,813],"./CameraIrMlx90640/Index":[7381,8039,7381],"./CameraPi/Index":[5214,8039,8895],"./Entities/Index":[377,4558],"./Execute/Index":[7673,7673],"./Extensions/Index":[7092],"./Light/Index":[7184,2471,5040,7184],"./LightHue/Index":[2976,2471,5040,7184,2976],"./Media/Index":[7816,2471,7562,6079,7816],"./MediaMplayer/Index":[3518,2471,7562,6079,7816,3518],"./MediaMpv/Index":[4765,2471,7562,6079,7816,4765],"./MediaOmxplayer/Index":[7819,2471,7562,6079,7816,7819],"./MediaVlc/Index":[2614,2471,7562,6079,7816,2614],"./Music/Index":[2986,2471,7562,2986],"./MusicMpd/Index":[1309,2471,7562,2986,1309],"./MusicSnapcast/Index":[6215,2471,5040,6215],"./MusicSpotify/Index":[2068,2471,7562,2986,2068],"./Rtorrent/Index":[2183,6079,7968,2183],"./Settings/Index":[3136],"./Sound/Index":[746,746],"./Torrent/Index":[8784,6079,7968,8784],"./Tts/Index":[3732,8069,3732],"./TtsGoogle/Index":[7605,8069,2853],"./TvSamsungWs/Index":[4589,4589],"./ZigbeeMqtt/Index":[1259,2471,5040,1259],"./Zwave/Index":[2732,2471,5040,7880,2732],"./ZwaveMqtt/Index":[1088,2471,5040,7880,1088]};function i(e){if(!n.o(s,e))return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}));var t=s[e],i=t[0];return Promise.all(t.slice(1).map(n.e)).then((function(){return n(i)}))}i.keys=function(){return Object.keys(s)},i.id=3379,e.exports=i},6725:function(e,t,n){var s={"./Calendar/Index":[5638,5638],"./Camera/Index":[446,446],"./Component/Index":[1449,2471,5040,1449],"./DateTime/Index":[4619,1391,4619],"./DateTimeWeather/Index":[9962,3594,1391,9962],"./ImageCarousel/Index":[306,3594,1391,306],"./Music/Index":[311,311],"./Plugin/Index":[8179,8179],"./RssNews/Index":[6523,6523],"./Weather/Index":[3594,3594]};function i(e){if(!n.o(s,e))return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}));var t=s[e],i=t[0];return Promise.all(t.slice(1).map(n.e)).then((function(){return n(i)}))}i.keys=function(){return Object.keys(s)},i.id=6725,e.exports=i},1359:function(e){"use strict";e.exports=JSON.parse('{"arduino":{"class":"fas fa-microchip"},"assistant.google":{"class":"fas fa-microphone-lines"},"bluetooth":{"class":"fab fa-bluetooth"},"camera.android.ipcam":{"class":"fab fa-android"},"camera.cv":{"class":"fas fa-camera"},"camera.ffmpeg":{"class":"fas fa-camera"},"camera.gstreamer":{"class":"fas fa-camera"},"camera.ir.mlx90640":{"class":"fas fa-sun"},"camera.pi":{"class":"fas fa-camera"},"entities":{"class":"fa fa-home"},"execute":{"class":"fa fa-play"},"extensions":{"class":"fas fa-puzzle-piece"},"light.hue":{"class":"fas fa-lightbulb"},"linode":{"class":"fas fa-cloud"},"media.jellyfin":{"imgUrl":"/icons/jellyfin.svg"},"media.kodi":{"imgUrl":"/icons/kodi.svg"},"media.omxplayer":{"class":"fa fa-film"},"media.mplayer":{"class":"fa fa-film"},"media.mpv":{"class":"fa fa-film"},"media.plex":{"imgUrl":"/icons/plex.svg"},"media.vlc":{"class":"fa fa-film"},"music.mpd":{"class":"fas fa-music"},"music.snapcast":{"class":"fa fa-volume-up"},"music.spotify":{"class":"fab fa-spotify"},"torrent":{"class":"fa fa-magnet"},"rtorrent":{"class":"fa fa-magnet"},"sensor.bme280":{"class":"fas fa-microchip"},"sensor.dht":{"class":"fas fa-microchip"},"sensor.envirophat":{"class":"fas fa-microchip"},"sensor.ltr559":{"class":"fas fa-microchip"},"sensor.mcp3008":{"class":"fas fa-microchip"},"sensor.pmw3901":{"class":"fas fa-microchip"},"sensor.vl53l1x":{"class":"fas fa-microchip"},"serial":{"class":"fab fa-usb"},"smartthings":{"imgUrl":"/icons/smartthings.png"},"switches":{"class":"fas fa-toggle-on"},"switch.switchbot":{"class":"fas fa-toggle-on"},"switch.tplink":{"class":"fas fa-toggle-on"},"switchbot":{"class":"fas fa-toggle-on"},"sound":{"class":"fa fa-microphone"},"system":{"class":"fas fa-microchip"},"tts":{"class":"far fa-comment"},"tts.google":{"class":"fas fa-comment"},"tv.samsung.ws":{"class":"fas fa-tv"},"variable":{"class":"fas fa-square-root-variable"},"zigbee.mqtt":{"imgUrl":"/icons/zigbee.svg"},"zwave":{"imgUrl":"/icons/z-wave.png"},"zwave.mqtt":{"imgUrl":"/icons/z-wave.png"}}')}},t={};function n(s){var i=t[s];if(void 0!==i)return i.exports;var o=t[s]={exports:{}};return e[s].call(o.exports,o,o.exports,n),o.exports}n.m=e,function(){var e=[];n.O=function(t,s,i,o){if(!s){var a=1/0;for(d=0;d=o)&&Object.keys(n.O).every((function(e){return n.O[e](s[r])}))?s.splice(r--,1):(l=!1,o0&&e[d-1][2]>o;d--)e[d]=e[d-1];e[d]=[s,i,o]}}(),function(){n.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return n.d(t,{a:t}),t}}(),function(){var e,t=Object.getPrototypeOf?function(e){return Object.getPrototypeOf(e)}:function(e){return e.__proto__};n.t=function(s,i){if(1&i&&(s=this(s)),8&i)return s;if("object"===typeof s&&s){if(4&i&&s.__esModule)return s;if(16&i&&"function"===typeof s.then)return s}var o=Object.create(null);n.r(o);var a={};e=e||[null,t({}),t([]),t(t)];for(var l=2&i&&s;"object"==typeof l&&!~e.indexOf(l);l=t(l))Object.getOwnPropertyNames(l).forEach((function(e){a[e]=function(){return s[e]}}));return a["default"]=function(){return s},n.d(o,a),o}}(),function(){n.d=function(e,t){for(var s in t)n.o(t,s)&&!n.o(e,s)&&Object.defineProperty(e,s,{enumerable:!0,get:t[s]})}}(),function(){n.f={},n.e=function(e){return Promise.all(Object.keys(n.f).reduce((function(t,s){return n.f[s](e,t),t}),[]))}}(),function(){n.u=function(e){return"static/js/"+e+"."+{65:"ae7df477",169:"ebdd7044",306:"f28688c3",311:"94122a15",446:"0c670830",729:"1b92c9f7",746:"299cb064",813:"a9315e05",984:"ae424e7e",1088:"22c3f8aa",1259:"34898870",1309:"f9dfe73a",1391:"a76844c2",1449:"b77b365f",2068:"103aab15",2183:"1facc63d",2217:"6b927594",2460:"567e73f6",2471:"da49c64a",2614:"b5deba5c",2732:"34e0816d",2853:"f2b8a639",2893:"519a1554",2976:"3591f8ac",2986:"70df763a",3368:"cb04738a",3369:"c099f8d0",3518:"1a3df65f",3559:"df95d103",3594:"2468b76d",3732:"a2ca739b",3798:"1f9f57bb",3826:"cc264dd1",3835:"11129165",4558:"d351e1c6",4589:"2afa8954",4619:"e56bced8",4765:"79a90f1f",5040:"f02b705d",5207:"7f241e21",5324:"f95717d2",5329:"444a9cf1",5638:"0225db95",5794:"af63f759",5795:"9204ced6",6079:"b020e16c",6148:"56cfaad0",6215:"efbe8b7c",6324:"c3f621ef",6362:"95da0eb4",6523:"9cf8a633",6561:"fc5ef77b",7184:"6b2673b2",7381:"e54c0e2a",7523:"367c2045",7562:"1a5ba875",7590:"6cda174b",7673:"5e709bc1",7816:"72e88390",7819:"d885293a",7880:"d9ea9910",7968:"8d53b4c3",8039:"951792f1",8069:"51c1e8b1",8179:"cb99e492",8391:"119357c7",8621:"0aa03df1",8769:"5ea5c0cb",8784:"9c2c1b4c",8825:"b660e217",8895:"6f35c5a1",9334:"4d443b49",9962:"8f08a8f6"}[e]+".js"}}(),function(){n.miniCssF=function(e){return"static/css/"+e+"."+{65:"ec2e200b",169:"4250027a",306:"637c1965",311:"e8c2b7ad",446:"ea4d86c8",729:"bdf3c534",746:"3bc88d84",984:"3237f436",1259:"0836c021",1391:"6ece0d9a",1449:"9918dbbf",2217:"0e89d034",2460:"414fdbdf",2471:"44ba7b08",2893:"06978179",2976:"e67490a0",2986:"f2010d62",3368:"c504cf84",3369:"ace0cb36",3559:"af253cad",3594:"d25f6d29",3798:"5c1c2a0d",3826:"5efa7b3a",3835:"558d43ff",4558:"585ffce8",4589:"16cf04c4",5040:"a4054aba",5207:"073c68f2",5329:"c6e4a24e",5638:"18214005",5794:"d9e6e741",5795:"ad0a8ef7",6079:"53a07001",6215:"e2707879",6324:"6a1fc89c",6523:"f8759346",6561:"f820f27b",7184:"58df5369",7523:"57e751f8",7562:"685c4fa7",7590:"c26dd0da",7673:"b7630ec8",7816:"1d5b3f4d",7880:"17b840ec",7968:"7b0a62d6",8039:"539d71fb",8069:"30712643",8179:"26fcc535",8391:"b714c8f0",8621:"1655ca21",8769:"77490b1a",8825:"6b8266fa",9962:"35ada6b6"}[e]+".css"}}(),function(){n.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"===typeof window)return window}}()}(),function(){n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}}(),function(){var e={},t="platypush:";n.l=function(s,i,o,a){if(e[s])e[s].push(i);else{var l,r;if(void 0!==o)for(var c=document.getElementsByTagName("script"),d=0;d {\n bus.emit('entity-update', entity)\n}\n\nbus.onEntity = (callback) => {\n bus.on('entity-update', callback)\n}\n\nbus.publishNotification = (notification) => {\n bus.emit('notification-create', notification)\n}\n\nbus.onNotification = (callback) => {\n bus.on('notification-create', callback)\n}\n\nexport { bus }\n","\n \n \n \n \n \n \n Would you like to install this application locally?\n \n\n \n\n\n\n\n\n\n","\n
\n \n \n\n\n\n\n\n","import { render } from \"./Doc.vue?vue&type=template&id=5aac2322&scoped=true\"\nimport script from \"./Doc.vue?vue&type=script&lang=js\"\nexport * from \"./Doc.vue?vue&type=script&lang=js\"\n\nimport \"./Doc.vue?vue&type=style&index=0&id=5aac2322&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-5aac2322\"]])\n\nexport default __exports__","\n
\n \n \n
Dependencies
\n \n\n
\n
\n \n
\n
\n\n
\n \n \n
\n
\n \n\n \n \n
Output
\n \n\n
\n
\n \n
\n \n
\n
\n
\n \n
\n\n\n\n\n\n","import { render } from \"./Install.vue?vue&type=template&id=7e5a8bae&scoped=true\"\nimport script from \"./Install.vue?vue&type=script&lang=js\"\nexport * from \"./Install.vue?vue&type=script&lang=js\"\n\nimport \"./Install.vue?vue&type=style&index=0&id=7e5a8bae&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-7e5a8bae\"]])\n\nexport default __exports__","import { render } from \"./Extension.vue?vue&type=template&id=3fa6b036&scoped=true\"\nimport script from \"./Extension.vue?vue&type=script&lang=js\"\nexport * from \"./Extension.vue?vue&type=script&lang=js\"\n\nimport \"./Extension.vue?vue&type=style&index=0&id=3fa6b036&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-3fa6b036\"]])\n\nexport default __exports__","import { render } from \"./Index.vue?vue&type=template&id=456a0caf&scoped=true\"\nimport script from \"./Index.vue?vue&type=script&lang=js\"\nexport * from \"./Index.vue?vue&type=script&lang=js\"\n\nimport \"./Index.vue?vue&type=style&index=0&id=456a0caf&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-456a0caf\"]])\n\nexport default __exports__","\n
\n \n \n \n \n \n
\n\n\n\n\n\n","\n
\n
\n \n
\n\n
\n \n
\n
\n\n\n\n\n\n","\n
\n \n Are you sure that you want to stop the application?\n
\n \n This will stop the application and you will not be able to restart it\n through the Web interface!\n \n \n\n \n
\n\n\n\n\n\n","import { render } from \"./StopButton.vue?vue&type=template&id=1eab04fa&scoped=true\"\nimport script from \"./StopButton.vue?vue&type=script&lang=js\"\nexport * from \"./StopButton.vue?vue&type=script&lang=js\"\n\nimport \"./StopButton.vue?vue&type=style&index=0&id=1eab04fa&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-1eab04fa\"]])\n\nexport default __exports__","import { render } from \"./Application.vue?vue&type=template&id=40365cea&scoped=true\"\nimport script from \"./Application.vue?vue&type=script&lang=js\"\nexport * from \"./Application.vue?vue&type=script&lang=js\"\n\nimport \"./Application.vue?vue&type=style&index=0&id=40365cea&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-40365cea\"]])\n\nexport default __exports__","\n
\n \n\n \n
\n \n\n \n
\n \n\n \n
\n \n\n \n
\n \n\n
\n
\n
\n Platypush provides two types of tokens:\n\n
\n
\n JWT tokens are bearer-only, and they contain encrypted\n authentication information. \n They can be used as permanent or time-based tokens to\n authenticate with the Platypush API.\n
\n\n
\n Session tokens are randomly generated tokens stored on the\n application database. A session token generated in this session\n will expire when you log out of it.\n
\n
\n \n\n
Generate a JWT authentication token that can be used for API calls to the /execute endpoint.
\n
You can include the token in your requests in any of the following ways:
\n\n
\n
Specify it on the Authorization: Bearer header;
\n
Specify it on the X-Token header;
\n
\n Specify it as a URL parameter: http://site:8008/execute?token=...\n for a JWT token and ...?session_token=... for a\n session token;\n
\n
Specify it on the body of your JSON request:\n {\"type\":\"request\", \"action\", \"...\", \"token\":\"...\"} for\n a JWT token, or \"session_token\" for a session token.\n
\n
\n\n
Confirm your credentials in order to generate a new JWT token.
\n
\n Show session token will instead show the token cookie associated\n to the current session.\n
\n
\n\n
\n \n
\n
\n
\n\n\n\n\n\n","import { render } from \"./Token.vue?vue&type=template&id=2d3c7d78\"\nimport script from \"./Token.vue?vue&type=script&lang=js\"\nexport * from \"./Token.vue?vue&type=script&lang=js\"\n\nimport \"./Token.vue?vue&type=style&index=0&id=2d3c7d78&lang=scss\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n \n\n \n \n \n\n \n \n \n\n
\n
\n
\n \n
\n \n \n \n \n
\n
\n
\n\n \n\n \n Are you sure that you want to remove the user {{ selectedUser }}?\n \n
\n\n\n\n\n\n","\n
\n \n
\n\n\n\n\n\n","import { render } from \"./FloatingButton.vue?vue&type=template&id=133e57f8&scoped=true\"\nimport script from \"./FloatingButton.vue?vue&type=script&lang=js\"\nexport * from \"./FloatingButton.vue?vue&type=script&lang=js\"\n\nimport \"./FloatingButton.vue?vue&type=style&index=0&id=133e57f8&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-133e57f8\"]])\n\nexport default __exports__","import { render } from \"./Users.vue?vue&type=template&id=510035f2&scoped=true\"\nimport script from \"./Users.vue?vue&type=script&lang=js\"\nexport * from \"./Users.vue?vue&type=script&lang=js\"\n\nimport \"./Users.vue?vue&type=style&index=0&id=510035f2&lang=scss&scoped=true\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-510035f2\"]])\n\nexport default __exports__","import { render } from \"./Index.vue?vue&type=template&id=2e111192\"\nimport script from \"./Index.vue?vue&type=script&lang=js\"\nexport * from \"./Index.vue?vue&type=script&lang=js\"\n\nimport \"./Index.vue?vue&type=style&index=0&id=2e111192&lang=scss\"\n\nimport exportComponent from \"../../../../node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","var map = {\n\t\"./Camera/Index\": [\n\t\t5324,\n\t\t8039,\n\t\t5324\n\t],\n\t\"./CameraAndroidIpcam/Index\": [\n\t\t5794,\n\t\t5794\n\t],\n\t\"./CameraCv/Index\": [\n\t\t6148,\n\t\t8039,\n\t\t6148\n\t],\n\t\"./CameraFfmpeg/Index\": [\n\t\t9334,\n\t\t8039,\n\t\t9334\n\t],\n\t\"./CameraGstreamer/Index\": [\n\t\t813,\n\t\t8039,\n\t\t813\n\t],\n\t\"./CameraIrMlx90640/Index\": [\n\t\t7381,\n\t\t8039,\n\t\t7381\n\t],\n\t\"./CameraPi/Index\": [\n\t\t5214,\n\t\t8039,\n\t\t8895\n\t],\n\t\"./Entities/Index\": [\n\t\t377,\n\t\t4558\n\t],\n\t\"./Execute/Index\": [\n\t\t7673,\n\t\t7673\n\t],\n\t\"./Extensions/Index\": [\n\t\t7092\n\t],\n\t\"./Light/Index\": [\n\t\t7184,\n\t\t2471,\n\t\t5040,\n\t\t7184\n\t],\n\t\"./LightHue/Index\": [\n\t\t2976,\n\t\t2471,\n\t\t5040,\n\t\t7184,\n\t\t2976\n\t],\n\t\"./Media/Index\": [\n\t\t7816,\n\t\t2471,\n\t\t7562,\n\t\t6079,\n\t\t7816\n\t],\n\t\"./MediaMplayer/Index\": [\n\t\t3518,\n\t\t2471,\n\t\t7562,\n\t\t6079,\n\t\t7816,\n\t\t3518\n\t],\n\t\"./MediaMpv/Index\": [\n\t\t4765,\n\t\t2471,\n\t\t7562,\n\t\t6079,\n\t\t7816,\n\t\t4765\n\t],\n\t\"./MediaOmxplayer/Index\": [\n\t\t7819,\n\t\t2471,\n\t\t7562,\n\t\t6079,\n\t\t7816,\n\t\t7819\n\t],\n\t\"./MediaVlc/Index\": [\n\t\t2614,\n\t\t2471,\n\t\t7562,\n\t\t6079,\n\t\t7816,\n\t\t2614\n\t],\n\t\"./Music/Index\": [\n\t\t2986,\n\t\t2471,\n\t\t7562,\n\t\t2986\n\t],\n\t\"./MusicMpd/Index\": [\n\t\t1309,\n\t\t2471,\n\t\t7562,\n\t\t2986,\n\t\t1309\n\t],\n\t\"./MusicSnapcast/Index\": [\n\t\t6215,\n\t\t2471,\n\t\t5040,\n\t\t6215\n\t],\n\t\"./MusicSpotify/Index\": [\n\t\t2068,\n\t\t2471,\n\t\t7562,\n\t\t2986,\n\t\t2068\n\t],\n\t\"./Rtorrent/Index\": [\n\t\t2183,\n\t\t6079,\n\t\t7968,\n\t\t2183\n\t],\n\t\"./Settings/Index\": [\n\t\t3136\n\t],\n\t\"./Sound/Index\": [\n\t\t746,\n\t\t746\n\t],\n\t\"./Torrent/Index\": [\n\t\t8784,\n\t\t6079,\n\t\t7968,\n\t\t8784\n\t],\n\t\"./Tts/Index\": [\n\t\t3732,\n\t\t8069,\n\t\t3732\n\t],\n\t\"./TtsGoogle/Index\": [\n\t\t7605,\n\t\t8069,\n\t\t2853\n\t],\n\t\"./TvSamsungWs/Index\": [\n\t\t4589,\n\t\t4589\n\t],\n\t\"./ZigbeeMqtt/Index\": [\n\t\t1259,\n\t\t2471,\n\t\t5040,\n\t\t1259\n\t],\n\t\"./Zwave/Index\": [\n\t\t2732,\n\t\t2471,\n\t\t5040,\n\t\t7880,\n\t\t2732\n\t],\n\t\"./ZwaveMqtt/Index\": [\n\t\t1088,\n\t\t2471,\n\t\t5040,\n\t\t7880,\n\t\t1088\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn Promise.all(ids.slice(1).map(__webpack_require__.e)).then(function() {\n\t\treturn __webpack_require__(id);\n\t});\n}\nwebpackAsyncContext.keys = function() { return Object.keys(map); };\nwebpackAsyncContext.id = 3379;\nmodule.exports = webpackAsyncContext;","var map = {\n\t\"./Calendar/Index\": [\n\t\t5638,\n\t\t5638\n\t],\n\t\"./Camera/Index\": [\n\t\t446,\n\t\t446\n\t],\n\t\"./Component/Index\": [\n\t\t1449,\n\t\t2471,\n\t\t5040,\n\t\t1449\n\t],\n\t\"./DateTime/Index\": [\n\t\t4619,\n\t\t1391,\n\t\t4619\n\t],\n\t\"./DateTimeWeather/Index\": [\n\t\t9962,\n\t\t3594,\n\t\t1391,\n\t\t9962\n\t],\n\t\"./ImageCarousel/Index\": [\n\t\t306,\n\t\t3594,\n\t\t1391,\n\t\t306\n\t],\n\t\"./Music/Index\": [\n\t\t311,\n\t\t311\n\t],\n\t\"./Plugin/Index\": [\n\t\t8179,\n\t\t8179\n\t],\n\t\"./RssNews/Index\": [\n\t\t6523,\n\t\t6523\n\t],\n\t\"./Weather/Index\": [\n\t\t3594,\n\t\t3594\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn Promise.all(ids.slice(1).map(__webpack_require__.e)).then(function() {\n\t\treturn __webpack_require__(id);\n\t});\n}\nwebpackAsyncContext.keys = function() { return Object.keys(map); };\nwebpackAsyncContext.id = 6725;\nmodule.exports = webpackAsyncContext;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","var getProto = Object.getPrototypeOf ? function(obj) { return Object.getPrototypeOf(obj); } : function(obj) { return obj.__proto__; };\nvar leafPrototypes;\n// create a fake namespace object\n// mode & 1: value is a module id, require it\n// mode & 2: merge all properties of value into the ns\n// mode & 4: return value when already ns object\n// mode & 16: return value when it's Promise-like\n// mode & 8|1: behave like require\n__webpack_require__.t = function(value, mode) {\n\tif(mode & 1) value = this(value);\n\tif(mode & 8) return value;\n\tif(typeof value === 'object' && value) {\n\t\tif((mode & 4) && value.__esModule) return value;\n\t\tif((mode & 16) && typeof value.then === 'function') return value;\n\t}\n\tvar ns = Object.create(null);\n\t__webpack_require__.r(ns);\n\tvar def = {};\n\tleafPrototypes = leafPrototypes || [null, getProto({}), getProto([]), getProto(getProto)];\n\tfor(var current = mode & 2 && value; typeof current == 'object' && !~leafPrototypes.indexOf(current); current = getProto(current)) {\n\t\tObject.getOwnPropertyNames(current).forEach(function(key) { def[key] = function() { return value[key]; }; });\n\t}\n\tdef['default'] = function() { return value; };\n\t__webpack_require__.d(ns, def);\n\treturn ns;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = function(chunkId) {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce(function(promises, key) {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"static/js/\" + chunkId + \".\" + {\"65\":\"ae7df477\",\"169\":\"ebdd7044\",\"306\":\"f28688c3\",\"311\":\"94122a15\",\"446\":\"0c670830\",\"729\":\"1b92c9f7\",\"746\":\"299cb064\",\"813\":\"a9315e05\",\"984\":\"ae424e7e\",\"1088\":\"22c3f8aa\",\"1259\":\"34898870\",\"1309\":\"f9dfe73a\",\"1391\":\"a76844c2\",\"1449\":\"b77b365f\",\"2068\":\"103aab15\",\"2183\":\"1facc63d\",\"2217\":\"6b927594\",\"2460\":\"567e73f6\",\"2471\":\"da49c64a\",\"2614\":\"b5deba5c\",\"2732\":\"34e0816d\",\"2853\":\"f2b8a639\",\"2893\":\"519a1554\",\"2976\":\"3591f8ac\",\"2986\":\"70df763a\",\"3368\":\"cb04738a\",\"3369\":\"c099f8d0\",\"3518\":\"1a3df65f\",\"3559\":\"df95d103\",\"3594\":\"2468b76d\",\"3732\":\"a2ca739b\",\"3798\":\"1f9f57bb\",\"3826\":\"cc264dd1\",\"3835\":\"11129165\",\"4558\":\"d351e1c6\",\"4589\":\"2afa8954\",\"4619\":\"e56bced8\",\"4765\":\"79a90f1f\",\"5040\":\"f02b705d\",\"5207\":\"7f241e21\",\"5324\":\"f95717d2\",\"5329\":\"444a9cf1\",\"5638\":\"0225db95\",\"5794\":\"af63f759\",\"5795\":\"9204ced6\",\"6079\":\"b020e16c\",\"6148\":\"56cfaad0\",\"6215\":\"efbe8b7c\",\"6324\":\"c3f621ef\",\"6362\":\"95da0eb4\",\"6523\":\"9cf8a633\",\"6561\":\"fc5ef77b\",\"7184\":\"6b2673b2\",\"7381\":\"e54c0e2a\",\"7523\":\"367c2045\",\"7562\":\"1a5ba875\",\"7590\":\"6cda174b\",\"7673\":\"5e709bc1\",\"7816\":\"72e88390\",\"7819\":\"d885293a\",\"7880\":\"d9ea9910\",\"7968\":\"8d53b4c3\",\"8039\":\"951792f1\",\"8069\":\"51c1e8b1\",\"8179\":\"cb99e492\",\"8391\":\"119357c7\",\"8621\":\"0aa03df1\",\"8769\":\"5ea5c0cb\",\"8784\":\"9c2c1b4c\",\"8825\":\"b660e217\",\"8895\":\"6f35c5a1\",\"9334\":\"4d443b49\",\"9962\":\"8f08a8f6\"}[chunkId] + \".js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"static/css/\" + chunkId + \".\" + {\"65\":\"ec2e200b\",\"169\":\"4250027a\",\"306\":\"637c1965\",\"311\":\"e8c2b7ad\",\"446\":\"ea4d86c8\",\"729\":\"bdf3c534\",\"746\":\"3bc88d84\",\"984\":\"3237f436\",\"1259\":\"0836c021\",\"1391\":\"6ece0d9a\",\"1449\":\"9918dbbf\",\"2217\":\"0e89d034\",\"2460\":\"414fdbdf\",\"2471\":\"44ba7b08\",\"2893\":\"06978179\",\"2976\":\"e67490a0\",\"2986\":\"f2010d62\",\"3368\":\"c504cf84\",\"3369\":\"ace0cb36\",\"3559\":\"af253cad\",\"3594\":\"d25f6d29\",\"3798\":\"5c1c2a0d\",\"3826\":\"5efa7b3a\",\"3835\":\"558d43ff\",\"4558\":\"585ffce8\",\"4589\":\"16cf04c4\",\"5040\":\"a4054aba\",\"5207\":\"073c68f2\",\"5329\":\"c6e4a24e\",\"5638\":\"18214005\",\"5794\":\"d9e6e741\",\"5795\":\"ad0a8ef7\",\"6079\":\"53a07001\",\"6215\":\"e2707879\",\"6324\":\"6a1fc89c\",\"6523\":\"f8759346\",\"6561\":\"f820f27b\",\"7184\":\"58df5369\",\"7523\":\"57e751f8\",\"7562\":\"685c4fa7\",\"7590\":\"c26dd0da\",\"7673\":\"b7630ec8\",\"7816\":\"1d5b3f4d\",\"7880\":\"17b840ec\",\"7968\":\"7b0a62d6\",\"8039\":\"539d71fb\",\"8069\":\"30712643\",\"8179\":\"26fcc535\",\"8391\":\"b714c8f0\",\"8621\":\"1655ca21\",\"8769\":\"77490b1a\",\"8825\":\"6b8266fa\",\"9962\":\"35ada6b6\"}[chunkId] + \".css\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","var inProgress = {};\nvar dataWebpackPrefix = \"platypush:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = function(url, done, key, chunkId) {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = function(prev, event) {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach(function(fn) { return fn(event); });\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.p = \"/\";","if (typeof document === \"undefined\") return;\nvar createStylesheet = function(chunkId, fullhref, oldTag, resolve, reject) {\n\tvar linkTag = document.createElement(\"link\");\n\n\tlinkTag.rel = \"stylesheet\";\n\tlinkTag.type = \"text/css\";\n\tvar onLinkComplete = function(event) {\n\t\t// avoid mem leaks.\n\t\tlinkTag.onerror = linkTag.onload = null;\n\t\tif (event.type === 'load') {\n\t\t\tresolve();\n\t\t} else {\n\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\tvar realHref = event && event.target && event.target.href || fullhref;\n\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + realHref + \")\");\n\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n\t\t\terr.type = errorType;\n\t\t\terr.request = realHref;\n\t\t\tif (linkTag.parentNode) linkTag.parentNode.removeChild(linkTag)\n\t\t\treject(err);\n\t\t}\n\t}\n\tlinkTag.onerror = linkTag.onload = onLinkComplete;\n\tlinkTag.href = fullhref;\n\n\tif (oldTag) {\n\t\toldTag.parentNode.insertBefore(linkTag, oldTag.nextSibling);\n\t} else {\n\t\tdocument.head.appendChild(linkTag);\n\t}\n\treturn linkTag;\n};\nvar findStylesheet = function(href, fullhref) {\n\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n\tfor(var i = 0; i < existingLinkTags.length; i++) {\n\t\tvar tag = existingLinkTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return tag;\n\t}\n\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n\tfor(var i = 0; i < existingStyleTags.length; i++) {\n\t\tvar tag = existingStyleTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\");\n\t\tif(dataHref === href || dataHref === fullhref) return tag;\n\t}\n};\nvar loadStylesheet = function(chunkId) {\n\treturn new Promise(function(resolve, reject) {\n\t\tvar href = __webpack_require__.miniCssF(chunkId);\n\t\tvar fullhref = __webpack_require__.p + href;\n\t\tif(findStylesheet(href, fullhref)) return resolve();\n\t\tcreateStylesheet(chunkId, fullhref, null, resolve, reject);\n\t});\n}\n// object to store loaded CSS chunks\nvar installedCssChunks = {\n\t2143: 0\n};\n\n__webpack_require__.f.miniCss = function(chunkId, promises) {\n\tvar cssChunks = {\"65\":1,\"169\":1,\"306\":1,\"311\":1,\"446\":1,\"729\":1,\"746\":1,\"984\":1,\"1259\":1,\"1391\":1,\"1449\":1,\"2217\":1,\"2460\":1,\"2471\":1,\"2893\":1,\"2976\":1,\"2986\":1,\"3368\":1,\"3369\":1,\"3559\":1,\"3594\":1,\"3798\":1,\"3826\":1,\"3835\":1,\"4558\":1,\"4589\":1,\"5040\":1,\"5207\":1,\"5329\":1,\"5638\":1,\"5794\":1,\"5795\":1,\"6079\":1,\"6215\":1,\"6324\":1,\"6523\":1,\"6561\":1,\"7184\":1,\"7523\":1,\"7562\":1,\"7590\":1,\"7673\":1,\"7816\":1,\"7880\":1,\"7968\":1,\"8039\":1,\"8069\":1,\"8179\":1,\"8391\":1,\"8621\":1,\"8769\":1,\"8825\":1,\"9962\":1};\n\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n\t\tpromises.push(installedCssChunks[chunkId] = loadStylesheet(chunkId).then(function() {\n\t\t\tinstalledCssChunks[chunkId] = 0;\n\t\t}, function(e) {\n\t\t\tdelete installedCssChunks[chunkId];\n\t\t\tthrow e;\n\t\t}));\n\t}\n};\n\n// no hmr","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t2143: 0\n};\n\n__webpack_require__.f.j = function(chunkId, promises) {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(!/^(80[36]9|(139|247|656)1|3826|5040|6079)$/.test(chunkId)) {\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise(function(resolve, reject) { installedChunkData = installedChunks[chunkId] = [resolve, reject]; });\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = function(event) {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t} else installedChunks[chunkId] = 0;\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkplatypush\"] = self[\"webpackChunkplatypush\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [4998], function() { return __webpack_require__(9391); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["bus","mitt","publishEntity","entity","emit","onEntity","callback","on","publishNotification","notification","onNotification","$options","hasWebsocket","_createBlock","_component_Events","ref","_createVNode","_component_Notifications","hasAssistant","_component_VoiceAssistant","hasPushbullet","_component_Pushbullet","hasNtfy","_component_Ntfy","_component_ConfirmDialog","onInput","installPWA","_component_router_view","class","_createElementBlock","_hoisted_1","_Fragment","_renderList","_ctx","notifications","id","index","_component_Notification","key","text","html","title","link","image","warning","error","onClicked","destroy","_normalizeClass","$props","onClick","_cache","args","clicked","_toDisplayString","_createElementVNode","_hoisted_2","_hoisted_3","_hoisted_4","src","alt","icon","style","_normalizeStyle","color","iconClass","_hoisted_6","_hoisted_7","innerHTML","name","props","methods","this","window","open","$emit","__exports__","components","Notification","duration","type","Number","default","data","timeouts","create","parseInt","setTimeout","bind","ws","initialized","pending","opened","timeout","reconnectMsecs","minReconnectMsecs","maxReconnectMsecs","handlers","handlerNameToEventTypes","onWebsocketTimeout","console","log","Math","min","close","onClose","onMessage","event","JSON","parse","e","warn","debug","push","Object","values","handler","Array","Function","onOpen","onclose","clearTimeout","undefined","onError","code","reason","init","protocol","location","url","host","WebSocket","err","onmessage","onopen","onerror","subscribe","msg","events","length","handlerName","unsubscribe","keys","created","$watch","_hoisted_9","_component_Modal","$data","state","alerting","responding","speechRecognized","_hoisted_5","listening","_hoisted_8","_hoisted_10","_hoisted_11","phrase","_hoisted_13","responseText","Modal","mixins","Utils","hideTimeout","reset","conversationStart","$refs","assistantModal","show","conversationEnd","self","response","response_text","alertOn","alertOff","registerHandlers","mounted","notify","message","push_type","body","ConfirmDialog","Pushbullet","Ntfy","Notifications","Events","VoiceAssistant","config","userAuthenticated","connected","pwaInstallEvent","computed","initConfig","request","prompt","pwaDialog","beforeMount","getCookie","addEventListener","preventDefault","setCookie","expires","Date","getTime","render","loading","_component_Loading","classes","rows","row","i","_component_Row","widgets","widget","j","_KeepAlive","_component_Widget","_resolveDynamicComponent","component","_normalizeProps","_guardReactiveProps","getWidgetProps","_renderSlot","$slots","String","required","split","concat","Widget","Loading","Row","refreshSeconds","parseTemplate","tmpl","node","DOMParser","parseFromString","childNodes","attributes","nodeValue","getElementsByTagName","map","children","el","shallowRef","defineAsyncComponent","nodeName","attrs","reduce","obj","content","refreshDashboard","$route","params","template","notifyError","setInterval","toFixed","method","placeholder","_register","value","register","Boolean","parseBoolean","_component_Login","Login","_component_Nav","panels","selectedPanel","selectedConfigPanel","hostname","onSelect","$event","onSelectConfig","_component_Settings","_component_Extensions","panel","hidden","href","collapsed","ok","onItemClick","configSections","selected","imgUrl","_hoisted_12","_hoisted_14","panelNames","_hoisted_17","icons","_hoisted_19","displayName","_hoisted_21","_hoisted_22","_hoisted_23","_hoisted_24","_hoisted_25","_hoisted_26","_hoisted_27","_hoisted_28","_hoisted_29","_hoisted_30","emits","prepend","names","idx","indexOf","slice","sort","collapsedDefault","isMobile","isTablet","setConnected","$root","Extensions","Settings","Nav","plugins","backends","procedures","initSelectedPanel","match","hash","plugin","initPanels","entries","forEach","async","componentName","token","toUpperCase","join","comp","pluginName","parseConfig","Promise","all","initializeDefaultViews","entities","execute","initPanel","toString","routes","path","Panel","Dashboard","Plugin","Register","NotFound","router","createRouter","history","createWebHistory","ready","registered","cached","updatefound","updated","offline","app","createApp","App","globalProperties","_config","use","mount","showError","opts","resolve","reject","axios","post","then","errors","output","catch","action","copyToClipboard","navigator","clipboard","writeText","getCookies","document","cookie","item","k","v","toISOString","deleteCookie","formatDate","date","year","toDateString","substring","formatTime","seconds","toTimeString","formatDateTime","_eventsReady","subFunc","generateId","unwatch","newVal","btoa","fromCharCode","round","random","pluginDisplayName","words","word","charAt","notifyWarning","matchMedia","matches","isDesktop","capitalize","prettify","t","indent","spaces","repeat","toLowerCase","convertSize","unit","units","u","convertTime","time","ret","parseFloat","d","h","m","s","objectsEqual","a","b","p","parseUrlFragment","replace","getUrlArgs","acc","tokens","setUrlArgs","fragmentFromArgs","encodeURIComponent","Api","Clipboard","Cookies","DateTime","Screen","Text","Types","Url","n","script","isVisible","zIndex","$attrs","width","height","stopPropagation","onModalClose","visible","level","timeoutId","prevVisible","hide","toggle","onKeyUp","visibleHndl","unmounted","removeEventListener","maxZIndex","getComputedStyle","$el","outermostModals","modal","querySelectorAll","onSubmit","_withModifiers","onConfirm","onTouch","confirmText","cancelText","items","keepOpenOnItemClick","documentClickHndl","element","target","dropdown","parentElement","left","top","button","getBoundingClientRect","innerWidth","clientWidth","innerHeight","clientHeight","itemClass","iconUrl","_component_Icon","Icon","disabled","$parent","className","restart","showDialog","filter","extensionNames","matchesFilter","selectedExtension","extensions","enabledExtensions","_component_Extension","extension","configFile","_component_Tabs","_component_Tab","selectedTab","_component_Doc","_component_Config","_component_Install","highlightedCurrentConfig","_component_CopyButton","curYamlConfig","config_snippet","highlightedConfigSnippet","copy","CopyButton","hljs","highlight","trim","loadCurrentConfig","doc_url","doc","onDocClick","actions","actionNames","actionName","eventNames","eventName","localPageRegex","RegExp","parseDoc","refreshDoc","tagName","getAttribute","installCmd","highlightedInstallCmd","installDone","_component_RestartButton","installRunning","installExtension","installOutput","_hoisted_15","RestartButton","pendingCommands","cmd","deps","install_cmd","wsProcess","ws_path","$nextTick","focus","scrollTop","scrollHeight","Config","Doc","Install","Tab","Tabs","Extension","enabledPlugins","enabledBackends","backend","input","setFilter","querySelector","scrollIntoView","behavior","includes","loadExtensions","loadExtensionFromUrl","loadConfigFile","ext","_component_Application","currentUser","_component_Users","sessionToken","_component_Token","_component_StopButton","stop","StopButton","onFocus","onTokenSelect","generateToken","username","sessionTokenModal","password","validityDays","expiry_days","tokenModal","select","execCommand","createUser","commandRunning","changePassword","selectedUser","users","user","user_id","_component_Dropdown","_component_DropdownItem","showChangePasswordModal","deleteUserDialog","_component_FloatingButton","showAddUserModal","deleteUser","Dropdown","DropdownItem","FloatingButton","refresh","form","addUserForm","confirm_password","session_token","addUserModal","changePasswordForm","new_password","confirm_new_password","success","old_password","changePasswordModal","Application","Users","Token","webpackAsyncContext","req","__webpack_require__","o","Error","ids","module","exports","__webpack_module_cache__","moduleId","cachedModule","__webpack_modules__","call","deferred","O","result","chunkIds","fn","priority","notFulfilled","Infinity","fulfilled","every","splice","r","getter","__esModule","leafPrototypes","getProto","getPrototypeOf","__proto__","mode","ns","def","current","getOwnPropertyNames","definition","defineProperty","enumerable","get","f","chunkId","promises","miniCssF","g","globalThis","prop","prototype","hasOwnProperty","inProgress","dataWebpackPrefix","l","done","needAttach","scripts","createElement","charset","nc","setAttribute","onScriptComplete","prev","onload","doneFns","parentNode","removeChild","head","appendChild","Symbol","toStringTag","createStylesheet","fullhref","oldTag","linkTag","rel","onLinkComplete","errorType","realHref","insertBefore","nextSibling","findStylesheet","existingLinkTags","tag","dataHref","existingStyleTags","loadStylesheet","installedCssChunks","miniCss","cssChunks","installedChunks","installedChunkData","test","promise","loadingEnded","realSrc","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""}
\ No newline at end of file