diff --git a/platypush/backend/http/webapp/dist/index.html b/platypush/backend/http/webapp/dist/index.html index d53deccb9..f450cd0fb 100644 --- a/platypush/backend/http/webapp/dist/index.html +++ b/platypush/backend/http/webapp/dist/index.html @@ -1 +1 @@ -
/g,"").replace(/<\/pre>\s*/g,""),t.next=3,navigator.clipboard.writeText(n);case 3:case"end":return t.stop()}}),t)})))()},executeAction:function(){if((this.action.name||this.rawRequest)&&!this.running)if(this.running=!0,this.structuredInput){var e=(0,Ee.Z)((0,Ee.Z)({},Object.entries(this.action.args).reduce((function(e,t){if(null!=t[1].value){var n=t[1].value;try{n=JSON.parse(n)}catch(r){console.debug("Not a valid JSON value"),console.debug(n)}e[t[0]]=n}return e}),{})),this.action.extraArgs.reduce((function(e,t){var n=e[t.value];try{n=JSON.parse(n)}catch(r){console.debug("Not a valid JSON value"),console.debug(n)}return e[t.name]=n,e}),{}));this.request(this.action.name,e).then(this.onResponse).catch(this.onError).finally(this.onDone)}else try{var t=JSON.parse(this.rawRequest);this.execute(t).then(this.onResponse).catch(this.onError).finally(this.onDone)}catch(n){this.notify({error:!0,title:"Invalid JSON request",text:n.toString()})}},executeProcedure:function(e){if(this.selectedProcedure.name&&!this.running){e.stopPropagation(),this.running=!0;var t=(0,Ee.Z)({},Object.entries(this.selectedProcedure.args).reduce((function(e,t){if(null!=t[1]){var n=t[1];try{n=JSON.parse(n)}catch(r){console.debug("Not a valid JSON value"),console.debug(n)}e[t[0]]=n}return e}),{}));this.request("procedure."+this.selectedProcedure.name,t).then(this.onResponse).catch(this.onError).finally(this.onDone)}}},mounted:function(){var e=this;this.$nextTick((function(){e.$refs.actionName.focus()})),this.refresh()}},je=n(3744);const Ie=(0,je.Z)($e,[["render",Pe]]);var Ue=Ie}}]); +//# sourceMappingURL=3956-legacy.489057d5.js.map \ No newline at end of file diff --git a/platypush/backend/http/webapp/dist/static/js/3956-legacy.489057d5.js.map b/platypush/backend/http/webapp/dist/static/js/3956-legacy.489057d5.js.map new file mode 100644 index 000000000..6d700ba80 --- /dev/null +++ b/platypush/backend/http/webapp/dist/static/js/3956-legacy.489057d5.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/3956-legacy.489057d5.js","mappings":"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","sources":["webpack://platypush/./node_modules/core-js/internals/get-substitution.js","webpack://platypush/./node_modules/core-js/modules/es.string.replace.js","webpack://platypush/./src/components/panels/Execute/Index.vue","webpack://platypush/./src/components/elements/Autocomplete.js","webpack://platypush/./src/components/panels/Execute/Index.vue?99e5"],"sourcesContent":["var uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar floor = Math.floor;\nvar charAt = uncurryThis(''.charAt);\nvar replace = uncurryThis(''.replace);\nvar stringSlice = uncurryThis(''.slice);\nvar SUBSTITUTION_SYMBOLS = /\\$([$&'`]|\\d{1,2}|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&'`]|\\d{1,2})/g;\n\n// `GetSubstitution` abstract operation\n// https://tc39.es/ecma262/#sec-getsubstitution\nmodule.exports = function (matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return replace(replacement, symbols, function (match, ch) {\n var capture;\n switch (charAt(ch, 0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return stringSlice(str, 0, position);\n case \"'\": return stringSlice(str, tailPos);\n case '<':\n capture = namedCaptures[stringSlice(ch, 1, -1)];\n break;\n default: // \\d\\d?\n var n = +ch;\n if (n === 0) return match;\n if (n > m) {\n var f = floor(n / 10);\n if (f === 0) return match;\n if (f <= m) return captures[f - 1] === undefined ? charAt(ch, 1) : captures[f - 1] + charAt(ch, 1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n};\n","'use strict';\nvar apply = require('../internals/function-apply');\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar fails = require('../internals/fails');\nvar anObject = require('../internals/an-object');\nvar isCallable = require('../internals/is-callable');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar getMethod = require('../internals/get-method');\nvar getSubstitution = require('../internals/get-substitution');\nvar regExpExec = require('../internals/regexp-exec-abstract');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar REPLACE = wellKnownSymbol('replace');\nvar max = Math.max;\nvar min = Math.min;\nvar concat = uncurryThis([].concat);\nvar push = uncurryThis([].push);\nvar stringIndexOf = uncurryThis(''.indexOf);\nvar stringSlice = uncurryThis(''.slice);\n\nvar maybeToString = function (it) {\n return it === undefined ? it : String(it);\n};\n\n// IE <= 11 replaces $0 with the whole match, as if it was $&\n// https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0\nvar REPLACE_KEEPS_$0 = (function () {\n // eslint-disable-next-line regexp/prefer-escape-replacement-dollar-char -- required for testing\n return 'a'.replace(/./, '$0') === '$0';\n})();\n\n// Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string\nvar REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () {\n if (/./[REPLACE]) {\n return /./[REPLACE]('a', '$0') === '';\n }\n return false;\n})();\n\nvar REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {\n var re = /./;\n re.exec = function () {\n var result = [];\n result.groups = { a: '7' };\n return result;\n };\n // eslint-disable-next-line regexp/no-useless-dollar-replacements -- false positive\n return ''.replace(re, '$') !== '7';\n});\n\n// @@replace logic\nfixRegExpWellKnownSymbolLogic('replace', function (_, nativeReplace, maybeCallNative) {\n var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0';\n\n return [\n // `String.prototype.replace` method\n // https://tc39.es/ecma262/#sec-string.prototype.replace\n function replace(searchValue, replaceValue) {\n var O = requireObjectCoercible(this);\n var replacer = searchValue == undefined ? undefined : getMethod(searchValue, REPLACE);\n return replacer\n ? call(replacer, searchValue, O, replaceValue)\n : call(nativeReplace, toString(O), searchValue, replaceValue);\n },\n // `RegExp.prototype[@@replace]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@replace\n function (string, replaceValue) {\n var rx = anObject(this);\n var S = toString(string);\n\n if (\n typeof replaceValue == 'string' &&\n stringIndexOf(replaceValue, UNSAFE_SUBSTITUTE) === -1 &&\n stringIndexOf(replaceValue, '$<') === -1\n ) {\n var res = maybeCallNative(nativeReplace, rx, S, replaceValue);\n if (res.done) return res.value;\n }\n\n var functionalReplace = isCallable(replaceValue);\n if (!functionalReplace) replaceValue = toString(replaceValue);\n\n var global = rx.global;\n if (global) {\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n }\n var results = [];\n while (true) {\n var result = regExpExec(rx, S);\n if (result === null) break;\n\n push(results, result);\n if (!global) break;\n\n var matchStr = toString(result[0]);\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n }\n\n var accumulatedResult = '';\n var nextSourcePosition = 0;\n for (var i = 0; i < results.length; i++) {\n result = results[i];\n\n var matched = toString(result[0]);\n var position = max(min(toIntegerOrInfinity(result.index), S.length), 0);\n var captures = [];\n // NOTE: This is equivalent to\n // captures = result.slice(1).map(maybeToString)\n // but for some reason `nativeSlice.call(result, 1, result.length)` (called in\n // the slice polyfill when slicing native arrays) \"doesn't work\" in safari 9 and\n // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.\n for (var j = 1; j < result.length; j++) push(captures, maybeToString(result[j]));\n var namedCaptures = result.groups;\n if (functionalReplace) {\n var replacerArgs = concat([matched], captures, position, S);\n if (namedCaptures !== undefined) push(replacerArgs, namedCaptures);\n var replacement = toString(apply(replaceValue, undefined, replacerArgs));\n } else {\n replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);\n }\n if (position >= nextSourcePosition) {\n accumulatedResult += stringSlice(S, nextSourcePosition, position) + replacement;\n nextSourcePosition = position + matched.length;\n }\n }\n return accumulatedResult + stringSlice(S, nextSourcePosition);\n }\n ];\n}, !REPLACE_SUPPORTS_NAMED_GROUPS || !REPLACE_KEEPS_$0 || REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE);\n","\n\n\n\n\n\n\n\n","function autocomplete(inp, arr, listener) {\n /*the autocomplete function takes two arguments,\n the text field element and an array of possible autocompleted values:*/\n let currentFocus;\n\n /*execute a function when someone writes in the text field:*/\n inp.addEventListener(\"input\", function() {\n let a, b, i, val = this.value;\n /*close any already open lists of autocompleted values*/\n closeAllLists();\n if (!val) {\n return false;\n }\n\n currentFocus = -1;\n\n /*create a DIV element that will contain the items (values):*/\n a = document.createElement(\"DIV\");\n a.setAttribute(\"id\", this.id + \"autocomplete-list\");\n a.setAttribute(\"class\", \"autocomplete-items\");\n\n /*append the DIV element as a child of the autocomplete container:*/\n this.parentNode.appendChild(a);\n\n /*for each item in the array...*/\n for (i = 0; i < arr.length; i++) {\n /*check if the item starts with the same letters as the text field value:*/\n if (arr[i].substr(0, val.length).toUpperCase() === val.toUpperCase()) {\n /*create a DIV element for each matching element:*/\n b = document.createElement(\"DIV\");\n /*make the matching letters bold:*/\n b.innerHTML = \"\" + arr[i].substr(0, val.length) + \"\";\n b.innerHTML += arr[i].substr(val.length);\n /*insert a input field that will hold the current array item's value:*/\n b.innerHTML += \"\";\n /*execute a function when someone clicks on the item value (DIV element):*/\n b.addEventListener(\"click\", function(e) {\n /*insert the value for the autocomplete text field:*/\n inp.value = this.getElementsByTagName(\"input\")[0].value;\n /*trigger event listener if any:*/\n if (listener) {\n listener(e, inp.value);\n }\n /*close the list of autocompleted values,\n (or any other open lists of autocompleted values:*/\n closeAllLists();\n });\n a.appendChild(b);\n }\n }\n });\n\n inp.addEventListener(\"keyup\", function(e) {\n if ([\"ArrowUp\", \"ArrowDown\", \"Tab\", \"Enter\"].indexOf(e.key) >= 0) {\n e.stopPropagation();\n }\n\n if (e.key === \"Enter\") {\n this.blur();\n }\n });\n\n /*execute a function presses a key on the keyboard:*/\n inp.addEventListener(\"keydown\", function(e) {\n let x = document.getElementById(this.id + \"autocomplete-list\");\n if (x) x = x.getElementsByTagName(\"div\");\n if (e.key === 'ArrowDown' || (e.key === 'Tab' && !e.shiftKey)) {\n /*If the arrow DOWN key is pressed,\n increase the currentFocus variable:*/\n currentFocus++;\n /*and and make the current item more visible:*/\n addActive(x);\n e.preventDefault();\n } else if (e.key === 'ArrowUp' || (e.key === 'Tab' && e.shiftKey)) { //up\n /*If the arrow UP key is pressed,\n decrease the currentFocus variable:*/\n currentFocus--;\n /*and and make the current item more visible:*/\n addActive(x);\n e.preventDefault();\n } else if (e.key === 'Enter') {\n /*If the ENTER key is pressed, prevent the form from being submitted,*/\n if (currentFocus > -1 && x && x.length) {\n e.preventDefault();\n /*and simulate a click on the \"active\" item:*/\n x[currentFocus].click();\n /*and restore the focus on the input element:*/\n this.focus();\n }\n }\n });\n\n function addActive(x) {\n /*a function to classify an item as \"active\":*/\n if (!x) return false;\n /*start by removing the \"active\" class on all items:*/\n removeActive(x);\n if (currentFocus >= x.length) currentFocus = 0;\n if (currentFocus < 0) currentFocus = (x.length - 1);\n /*add class \"autocomplete-active\":*/\n x[currentFocus].classList.add(\"autocomplete-active\");\n }\n\n function removeActive(x) {\n /*a function to remove the \"active\" class from all autocomplete items:*/\n for (let i = 0; i < x.length; i++) {\n x[i].classList.remove(\"autocomplete-active\");\n }\n }\n\n function closeAllLists(elmnt) {\n /*close all autocomplete lists in the document,\n except the one passed as an argument:*/\n const x = document.getElementsByClassName(\"autocomplete-items\");\n for (let i = 0; i < x.length; i++) {\n if (elmnt !== x[i] && elmnt !== inp) {\n x[i].parentNode.removeChild(x[i]);\n }\n }\n }\n\n /*execute a function when someone clicks in the document:*/\n document.addEventListener(\"click\", function (e) {\n closeAllLists(e.target);\n });\n}\n\nexport default autocomplete;\n","import { render } from \"./Index.vue?vue&type=template&id=448d1682\"\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=448d1682&lang=scss\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__"],"names":["uncurryThis","toObject","floor","Math","charAt","replace","stringSlice","slice","SUBSTITUTION_SYMBOLS","SUBSTITUTION_SYMBOLS_NO_NAMED","module","exports","matched","str","position","captures","namedCaptures","replacement","tailPos","length","m","symbols","undefined","match","ch","capture","n","f","apply","call","fixRegExpWellKnownSymbolLogic","fails","anObject","isCallable","toIntegerOrInfinity","toLength","toString","requireObjectCoercible","advanceStringIndex","getMethod","getSubstitution","regExpExec","wellKnownSymbol","REPLACE","max","min","concat","push","stringIndexOf","indexOf","maybeToString","it","String","REPLACE_KEEPS_$0","REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE","REPLACE_SUPPORTS_NAMED_GROUPS","re","exec","result","groups","a","_","nativeReplace","maybeCallNative","UNSAFE_SUBSTITUTE","searchValue","replaceValue","O","this","replacer","string","rx","S","res","done","value","functionalReplace","global","fullUnicode","unicode","lastIndex","results","matchStr","accumulatedResult","nextSourcePosition","i","index","j","replacerArgs","class","for","ref","loading","autocomplete","executeAction","type","id","checked","structuredInput","onInputTypeChange","placeholder","disabled","running","action","name","actionChanged","updateAction","title","selectedDoc","docLoading","actions","Object","keys","args","supportsExtraArgs","key","selectAttrDoc","resetAttrDoc","selectedAttrDoc","selectedAttr","extraArgs","removeParameter","addParameter","error","response","copyToClipboard","rawRequest","rawRequestPlaceholder","procedures","sort","selectedProcedure","updateProcedure","$event","executeProcedure","$emit","argname","stopPropagation","inp","arr","listener","currentFocus","addActive","x","removeActive","classList","add","remove","closeAllLists","elmnt","document","getElementsByClassName","parentNode","removeChild","addEventListener","b","val","createElement","setAttribute","appendChild","substr","toUpperCase","innerHTML","e","getElementsByTagName","blur","getElementById","shiftKey","preventDefault","click","focus","target","components","Loading","mixins","Utils","data","plugins","actionDocsCache","methods","refresh","request","values","plugin","has_kwargs","self","$refs","actionName","entries","reduce","entry","default","html","parseDoc","doc","docString","text","event","getAttribute","arg","console","warn","pop","$nextTick","rawAction","onResponse","JSON","stringify","onError","onDone","output","navigator","clipboard","writeText","param","parse","debug","then","catch","finally","execute","notify","mounted","__exports__","render"],"sourceRoot":""} \ No newline at end of file diff --git a/platypush/backend/http/webapp/dist/static/js/3956.7c792927.js b/platypush/backend/http/webapp/dist/static/js/3956.7c792927.js new file mode 100644 index 000000000..fb0f78f93 --- /dev/null +++ b/platypush/backend/http/webapp/dist/static/js/3956.7c792927.js @@ -0,0 +1,2 @@ +"use strict";(self["webpackChunkplatypush"]=self["webpackChunkplatypush"]||[]).push([[3956],{3956:function(e,t,n){n.r(t),n.d(t,{default:function(){return Ue}});var s=n(6252),a=n(9963),i=n(3577);const r={class:"row plugin execute-container"},o={class:"section command-container"},c=(0,s._)("div",{class:"section-title"},"Execute Action",-1),l={class:"request-type-container"},u=["checked"],d=(0,s._)("label",{for:"action-structured-input"},"Structured request",-1),p=["checked"],h=(0,s._)("label",{for:"action-raw-input"},"Raw request",-1),g={class:"request-header"},m={class:"autocomplete"},v=["disabled"],y={class:"buttons"},b=["disabled"],f=(0,s._)("i",{class:"fas fa-play"},null,-1),k=[f],w={key:0,class:"doc-container"},D=(0,s._)("div",{class:"title"}," Action documentation ",-1),_={class:"doc html"},x=["innerHTML"],A={key:1,class:"options"},C={key:0,class:"params",ref:"params"},q=["disabled","placeholder","onUpdate:modelValue","onFocus"],T={key:0,class:"attr-doc-container mobile"},L={class:"title"},P=(0,s.Uk)(" Attribute: "),E=["textContent"],O={class:"doc html"},N=["innerHTML"],H={key:0,class:"extra-params",ref:"extraParams"},M={class:"col-5"},j=["disabled","onUpdate:modelValue"],R={class:"col-6"},U=["disabled","onUpdate:modelValue"],I={class:"col-1 buttons"},S=["onClick"],V=(0,s._)("i",{class:"fas fa-trash"},null,-1),J=[V],$={key:1,class:"add-param"},B=(0,s._)("i",{class:"fas fa-plus"},null,-1),K=[B],z={key:1,class:"attr-doc-container widescreen"},F={class:"title"},Y=(0,s.Uk)(" Attribute: "),Z=["textContent"],G={class:"doc html"},Q=["innerHTML"],W={class:"output-container"},X={key:0,class:"header"},ee=["textContent"],te={class:"buttons"},ne=(0,s._)("i",{class:"fas fa-clipboard"},null,-1),se=[ne],ae=["innerHTML"],ie=["innerHTML"],re={class:"first-row"},oe=["placeholder"],ce=["disabled"],le=(0,s._)("i",{class:"fas fa-play"},null,-1),ue=[le],de={key:0,class:"output-container"},pe={key:0,class:"header"},he=["textContent"],ge={class:"buttons"},me=(0,s._)("i",{class:"fas fa-clipboard"},null,-1),ve=[me],ye=["innerHTML"],be=["innerHTML"],fe={class:"section procedures-container"},ke=(0,s._)("div",{class:"section-title"},"Execute Procedure",-1),we=["onClick"],De={class:"head"},_e=["textContent"],xe={class:"btn-container col-no-margin-1"},Ae=["disabled"],Ce=(0,s._)("i",{class:"fas fa-play"},null,-1),qe=[Ce],Te={key:0,class:"params"},Le=["disabled","placeholder","onUpdate:modelValue"];function Pe(e,t,n,f,V,B){const ne=(0,s.up)("Loading");return(0,s.wg)(),(0,s.iD)("div",r,[V.loading?((0,s.wg)(),(0,s.j4)(ne,{key:0})):(0,s.kq)("",!0),(0,s._)("div",o,[c,(0,s._)("form",{class:"action-form",ref:"actionForm",autocomplete:"off",onSubmit:t[10]||(t[10]=(0,a.iM)(((...e)=>B.executeAction&&B.executeAction(...e)),["prevent"]))},[(0,s._)("div",l,[(0,s._)("input",{type:"radio",id:"action-structured-input",checked:V.structuredInput,onChange:t[0]||(t[0]=e=>B.onInputTypeChange(!0))},null,40,u),d,(0,s._)("input",{type:"radio",id:"action-raw-input",checked:!V.structuredInput,onChange:t[1]||(t[1]=e=>B.onInputTypeChange(!1))},null,40,p),h]),(0,s._)("div",{class:(0,i.C_)(["request structured-request",V.structuredInput?"":"hidden"])},[(0,s._)("div",g,[(0,s._)("div",m,[(0,s._)("label",null,[(0,s.wy)((0,s._)("input",{ref:"actionName",type:"text",class:"action-name",placeholder:"Action Name",disabled:V.running,"onUpdate:modelValue":t[2]||(t[2]=e=>V.action.name=e),onChange:t[3]||(t[3]=e=>V.actionChanged=!0),onBlur:t[4]||(t[4]=(...e)=>B.updateAction&&B.updateAction(...e))},null,40,v),[[a.nr,V.action.name]])])]),(0,s._)("div",y,[(0,s._)("button",{type:"submit",class:"run-btn btn-primary",disabled:V.running||!V.action?.name?.length,title:"Run"},k,8,b)])]),V.selectedDoc?((0,s.wg)(),(0,s.iD)("div",w,[D,(0,s._)("div",_,[V.docLoading?((0,s.wg)(),(0,s.j4)(ne,{key:0})):((0,s.wg)(),(0,s.iD)("span",{key:1,innerHTML:V.selectedDoc},null,8,x))])])):(0,s.kq)("",!0),V.action.name in V.actions&&(Object.keys(V.action.args).length||V.action.supportsExtraArgs)?((0,s.wg)(),(0,s.iD)("div",A,[Object.keys(V.action.args).length||V.action.supportsExtraArgs?((0,s.wg)(),(0,s.iD)("div",C,[((0,s.wg)(!0),(0,s.iD)(s.HY,null,(0,s.Ko)(Object.keys(V.action.args),(e=>((0,s.wg)(),(0,s.iD)("div",{class:"param",key:e},[(0,s._)("label",null,[(0,s.wy)((0,s._)("input",{type:"text",class:"action-param-value",disabled:V.running,placeholder:e,"onUpdate:modelValue":t=>V.action.args[e].value=t,onFocus:t=>B.selectAttrDoc(e),onBlur:t[5]||(t[5]=(...e)=>B.resetAttrDoc&&B.resetAttrDoc(...e))},null,40,q),[[a.nr,V.action.args[e].value]])]),V.selectedAttrDoc&&V.selectedAttr===e?((0,s.wg)(),(0,s.iD)("div",T,[(0,s._)("div",L,[P,(0,s._)("div",{class:"attr-name",textContent:(0,i.zw)(V.selectedAttr)},null,8,E)]),(0,s._)("div",O,[V.docLoading?((0,s.wg)(),(0,s.j4)(ne,{key:0})):((0,s.wg)(),(0,s.iD)("span",{key:1,innerHTML:V.selectedAttrDoc},null,8,N))])])):(0,s.kq)("",!0)])))),128)),Object.keys(V.action.extraArgs).length?((0,s.wg)(),(0,s.iD)("div",H,[((0,s.wg)(!0),(0,s.iD)(s.HY,null,(0,s.Ko)(Object.keys(V.action.extraArgs),(e=>((0,s.wg)(),(0,s.iD)("div",{class:"param extra-param",key:e},[(0,s._)("label",M,[(0,s.wy)((0,s._)("input",{type:"text",class:"action-extra-param-name",disabled:V.running,placeholder:"Name","onUpdate:modelValue":t=>V.action.extraArgs[e].name=t},null,8,j),[[a.nr,V.action.extraArgs[e].name]])]),(0,s._)("label",R,[(0,s.wy)((0,s._)("input",{type:"text",class:"action-extra-param-value",disabled:V.running,placeholder:"Value","onUpdate:modelValue":t=>V.action.extraArgs[e].value=t},null,8,U),[[a.nr,V.action.extraArgs[e].value]])]),(0,s._)("label",I,[(0,s._)("button",{type:"button",class:"action-extra-param-del",title:"Remove parameter",onClick:t=>B.removeParameter(e)},J,8,S)])])))),128))],512)):(0,s.kq)("",!0),V.action.supportsExtraArgs?((0,s.wg)(),(0,s.iD)("div",$,[(0,s._)("button",{type:"button",title:"Add a parameter",onClick:t[6]||(t[6]=(...e)=>B.addParameter&&B.addParameter(...e))},K)])):(0,s.kq)("",!0)],512)):(0,s.kq)("",!0),V.selectedAttrDoc?((0,s.wg)(),(0,s.iD)("div",z,[(0,s._)("div",F,[Y,(0,s._)("div",{class:"attr-name",textContent:(0,i.zw)(V.selectedAttr)},null,8,Z)]),(0,s._)("div",G,[V.docLoading?((0,s.wg)(),(0,s.j4)(ne,{key:0})):((0,s.wg)(),(0,s.iD)("span",{key:1,innerHTML:V.selectedAttrDoc},null,8,Q))])])):(0,s.kq)("",!0)])):(0,s.kq)("",!0),(0,s._)("div",W,[null!=V.error||null!=V.response?((0,s.wg)(),(0,s.iD)("div",X,[(0,s._)("div",{class:"title",textContent:(0,i.zw)(null!=V.error?"Error":"Output")},null,8,ee),(0,s._)("div",te,[(0,s._)("button",{type:"button",title:"Copy to clipboard",onClick:t[7]||(t[7]=(...e)=>B.copyToClipboard&&B.copyToClipboard(...e))},se)])])):(0,s.kq)("",!0),null!=V.response?((0,s.wg)(),(0,s.iD)("div",{key:1,class:"response",innerHTML:V.response},null,8,ae)):null!=V.error?((0,s.wg)(),(0,s.iD)("div",{key:2,class:"error",innerHTML:V.error},null,8,ie)):(0,s.kq)("",!0)])],2),(0,s._)("div",{class:(0,i.C_)(["request raw-request",V.structuredInput?"hidden":""])},[(0,s._)("div",re,[(0,s._)("label",null,[(0,s.wy)((0,s._)("textarea",{"onUpdate:modelValue":t[8]||(t[8]=e=>V.rawRequest=e),ref:"rawAction",placeholder:V.rawRequestPlaceholder},null,8,oe),[[a.nr,V.rawRequest]])]),(0,s._)("button",{type:"submit",disabled:V.running,class:"run-btn btn-primary",title:"Run"},ue,8,ce)]),null!=V.response||null!=V.error?((0,s.wg)(),(0,s.iD)("div",de,[null!=V.error||null!=V.response?((0,s.wg)(),(0,s.iD)("div",pe,[(0,s._)("div",{class:"title",textContent:(0,i.zw)(null!=V.error?"Error":"Output")},null,8,he),(0,s._)("div",ge,[(0,s._)("button",{type:"button",title:"Copy to clipboard",onClick:t[9]||(t[9]=(...e)=>B.copyToClipboard&&B.copyToClipboard(...e))},ve)])])):(0,s.kq)("",!0),null!=V.error?((0,s.wg)(),(0,s.iD)("div",{key:1,class:"error",innerHTML:V.error},null,8,ye)):null!=V.response?((0,s.wg)(),(0,s.iD)("div",{key:2,class:"response",innerHTML:V.response},null,8,be)):(0,s.kq)("",!0)])):(0,s.kq)("",!0)],2)],544)]),(0,s._)("div",fe,[ke,((0,s.wg)(!0),(0,s.iD)(s.HY,null,(0,s.Ko)(Object.keys(V.procedures).sort(),(n=>((0,s.wg)(),(0,s.iD)("div",{class:(0,i.C_)(["procedure",V.selectedProcedure.name===n?"selected":""]),key:n,onClick:e=>B.updateProcedure(n,e)},[(0,s._)("form",{ref_for:!0,ref:"procedureForm",autocomplete:"off",onSubmit:t[13]||(t[13]=(0,a.iM)(((...e)=>B.executeProcedure&&B.executeProcedure(...e)),["prevent"]))},[(0,s._)("div",De,[(0,s._)("div",{class:"name col-no-margin-11",textContent:(0,i.zw)(n)},null,8,_e),(0,s._)("div",xe,[V.selectedProcedure.name===n?((0,s.wg)(),(0,s.iD)("button",{key:0,type:"submit",class:"run-btn btn-default",disabled:V.running,title:"Run",onClick:t[11]||(t[11]=(0,a.iM)((t=>e.$emit("submit")),["stop"]))},qe,8,Ae)):(0,s.kq)("",!0)])]),V.selectedProcedure.name===n?((0,s.wg)(),(0,s.iD)("div",Te,[((0,s.wg)(!0),(0,s.iD)(s.HY,null,(0,s.Ko)(Object.keys(V.selectedProcedure.args),(e=>((0,s.wg)(),(0,s.iD)("div",{class:"param",key:e},[(0,s._)("label",null,[(0,s.wy)((0,s._)("input",{type:"text",class:"action-param-value",onClick:t[12]||(t[12]=e=>e.stopPropagation()),disabled:V.running,placeholder:e,"onUpdate:modelValue":t=>V.selectedProcedure.args[e]=t},null,8,Le),[[a.nr,V.selectedProcedure.args[e]]])])])))),128))])):(0,s.kq)("",!0)],544)],10,we)))),128))])])}function Ee(e,t,n){let s;function a(e){if(!e)return!1;i(e),s>=e.length&&(s=0),s<0&&(s=e.length-1),e[s].classList.add("autocomplete-active")}function i(e){for(let t=0;t\n \n\n\nExecute Action\n \n\n\nExecute Procedure\n\n \n\n"+t[o].substr(0,c.length)+"",i.innerHTML+=t[o].substr(c.length),i.innerHTML+="",i.addEventListener("click",(function(t){e.value=this.getElementsByTagName("input")[0].value,n&&n(t,e.value),r()})),a.appendChild(i))})),e.addEventListener("keyup",(function(e){["ArrowUp","ArrowDown","Tab","Enter"].indexOf(e.key)>=0&&e.stopPropagation(),"Enter"===e.key&&this.blur()})),e.addEventListener("keydown",(function(e){let t=document.getElementById(this.id+"autocomplete-list");t&&(t=t.getElementsByTagName("div")),"ArrowDown"===e.key||"Tab"===e.key&&!e.shiftKey?(s++,a(t),e.preventDefault()):"ArrowUp"===e.key||"Tab"===e.key&&e.shiftKey?(s--,a(t),e.preventDefault()):"Enter"===e.key&&s>-1&&t&&t.length&&(e.preventDefault(),t[s].click(),this.focus())})),document.addEventListener("click",(function(e){r(e.target)}))}var Oe=Ee,Ne=n(6813),He=n(1232),Me={name:"Execute",components:{Loading:He.Z},mixins:[Ne.Z],data(){return{loading:!1,running:!1,docLoading:!1,structuredInput:!0,actionChanged:!1,selectedDoc:void 0,selectedAttr:void 0,selectedAttrDoc:void 0,selectedProcedure:{name:void 0,args:{}},response:void 0,error:void 0,rawRequest:void 0,rawRequestPlaceholder:'Raw JSON request. Example:\n\n{"type": "request", "action": "file.list", "args": {"path": "/"}}',actions:{},plugins:{},procedures:{},actionDocsCache:{},action:{name:void 0,args:{},extraArgs:[],supportsExtraArgs:!1}}},methods:{async refresh(){this.loading=!0;try{this.procedures=await this.request("inspect.get_procedures"),this.plugins=await this.request("inspect.get_all_plugins")}finally{this.loading=!1}for(const t of Object.values(this.plugins))for(const e of Object.values(t.actions))e.name=t.name+"."+e.name,e.supportsExtraArgs=!!e.has_kwargs,delete e.has_kwargs,this.actions[e.name]=e;const e=this;Oe(this.$refs.actionName,Object.keys(this.actions).sort(),((t,n)=>{this.action.name=n,e.updateAction()}))},async updateAction(){if(this.action.name in this.actions||(this.selectedDoc=void 0),this.actionChanged&&this.action.name in this.actions){this.docLoading=!0;try{this.action={...this.actions[this.action.name],args:Object.entries(this.actions[this.action.name].args).reduce(((e,t)=>(e[t[0]]={...t[1],value:t[1].default},e)),{}),extraArgs:[]}}finally{this.docLoading=!1}this.selectedDoc=this.actionDocsCache[this.action.name]?.html||await this.parseDoc(this.action.doc),this.actionDocsCache[this.action.name]||(this.actionDocsCache[this.action.name]={}),this.actionDocsCache[this.action.name].html=this.selectedDoc,this.actionChanged=!1,this.response=void 0,this.error=void 0}},async parseDoc(e){return e?.length?await this.request("utils.rst_to_html",{text:e}):e},updateProcedure(e,t){"submit"!==t.target.getAttribute("type")&&(this.selectedProcedure.name!==e?e in this.procedures?this.selectedProcedure={name:e,args:(this.procedures[e].args||[]).reduce(((e,t)=>(e[t]=void 0,e)),{})}:console.warn("Procedure not found: "+e):this.selectedProcedure={name:void 0,args:{}})},addParameter(){this.action.extraArgs.push({name:void 0,value:void 0})},removeParameter(e){this.action.extraArgs.pop(e)},async selectAttrDoc(e){this.selectedAttr=e,this.selectedAttrDoc=this.actionDocsCache[this.action.name]?.[e]?.html||await this.parseDoc(this.action.args[e].doc),this.actionDocsCache[this.action.name]||(this.actionDocsCache[this.action.name]={}),this.actionDocsCache[this.action.name][e]={html:this.selectedAttrDoc}},resetAttrDoc(){this.selectedAttr=void 0,this.selectedAttrDoc=void 0},onInputTypeChange(e){this.structuredInput=e,this.response=void 0,this.error=void 0,this.$nextTick((()=>{e?this.$refs.actionName.focus():this.$refs.rawAction.focus()}))},onResponse(e){this.response=" "+JSON.stringify(e,null,2)+"",this.error=void 0},onError(e){this.response=void 0,this.error=e},onDone(){this.running=!1},async copyToClipboard(){const e=(null!=this.error?this.error:this.response).replace(/^\s*/g,"").replace(/<\/pre>\s*/g,"");await navigator.clipboard.writeText(e)},executeAction(){if((this.action.name||this.rawRequest)&&!this.running)if(this.running=!0,this.structuredInput){const e={...Object.entries(this.action.args).reduce(((e,t)=>{if(null!=t[1].value){let s=t[1].value;try{s=JSON.parse(s)}catch(n){console.debug("Not a valid JSON value"),console.debug(s)}e[t[0]]=s}return e}),{}),...this.action.extraArgs.reduce(((e,t)=>{let n=e[t.value];try{n=JSON.parse(n)}catch(s){console.debug("Not a valid JSON value"),console.debug(n)}return e[t.name]=n,e}),{})};this.request(this.action.name,e).then(this.onResponse).catch(this.onError).finally(this.onDone)}else try{const e=JSON.parse(this.rawRequest);this.execute(e).then(this.onResponse).catch(this.onError).finally(this.onDone)}catch(e){this.notify({error:!0,title:"Invalid JSON request",text:e.toString()})}},executeProcedure(e){if(!this.selectedProcedure.name||this.running)return;e.stopPropagation(),this.running=!0;const t={...Object.entries(this.selectedProcedure.args).reduce(((e,t)=>{if(null!=t[1]){let s=t[1];try{s=JSON.parse(s)}catch(n){console.debug("Not a valid JSON value"),console.debug(s)}e[t[0]]=s}return e}),{})};this.request("procedure."+this.selectedProcedure.name,t).then(this.onResponse).catch(this.onError).finally(this.onDone)}},mounted(){this.$nextTick((()=>{this.$refs.actionName.focus()})),this.refresh()}},je=n(3744);const Re=(0,je.Z)(Me,[["render",Pe]]);var Ue=Re}}]); +//# sourceMappingURL=3956.7c792927.js.map \ No newline at end of file diff --git a/platypush/backend/http/webapp/dist/static/js/3956.7c792927.js.map b/platypush/backend/http/webapp/dist/static/js/3956.7c792927.js.map new file mode 100644 index 000000000..be9605ff8 --- /dev/null +++ b/platypush/backend/http/webapp/dist/static/js/3956.7c792927.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/3956.7c792927.js","mappings":"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","sources":["webpack://platypush/./src/components/panels/Execute/Index.vue","webpack://platypush/./src/components/elements/Autocomplete.js","webpack://platypush/./src/components/panels/Execute/Index.vue?99e5"],"sourcesContent":["\n",this.error=void 0},onError:function(e){this.response=void 0,this.error=e},onDone:function(){this.running=!1},executeAction:function(){if((this.action.name||this.rawRequest)&&!this.running)if(this.running=!0,this.structuredInput){var e=(0,we.Z)((0,we.Z)({},Object.entries(this.action.args).reduce((function(e,t){if(null!=t[1].value){var n=t[1].value;try{n=JSON.parse(n)}catch(r){console.debug("Not a valid JSON value"),console.debug(n)}e[t[0]]=n}return e}),{})),this.action.extraArgs.reduce((function(e,t){var n=e[t.value];try{n=JSON.parse(n)}catch(r){console.debug("Not a valid JSON value"),console.debug(n)}return e[t.name]=n,e}),{}));this.request(this.action.name,e).then(this.onResponse).catch(this.onError).finally(this.onDone)}else try{var t=JSON.parse(this.rawRequest);this.execute(t).then(this.onResponse).catch(this.onError).finally(this.onDone)}catch(n){this.notify({error:!0,title:"Invalid JSON request",text:n.toString()})}},executeProcedure:function(e){if(this.selectedProcedure.name&&!this.running){e.stopPropagation(),this.running=!0;var t=(0,we.Z)({},Object.entries(this.selectedProcedure.args).reduce((function(e,t){if(null!=t[1]){var n=t[1];try{n=JSON.parse(n)}catch(r){console.debug("Not a valid JSON value"),console.debug(n)}e[t[0]]=n}return e}),{}));this.request("procedure."+this.selectedProcedure.name,t).then(this.onResponse).catch(this.onError).finally(this.onDone)}}},mounted:function(){var e=this;this.$nextTick((function(){e.$refs.actionName.focus()})),this.refresh()}},Le=n(3744);const Pe=(0,Le.Z)(qe,[["render",be]]);var Ee=Pe}}]); -//# sourceMappingURL=9539-legacy.651585ad.js.map \ No newline at end of file diff --git a/platypush/backend/http/webapp/dist/static/js/9539-legacy.651585ad.js.map b/platypush/backend/http/webapp/dist/static/js/9539-legacy.651585ad.js.map deleted file mode 100644 index 17a544ac2..000000000 --- a/platypush/backend/http/webapp/dist/static/js/9539-legacy.651585ad.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/9539-legacy.651585ad.js","mappings":"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","sources":["webpack://platypush/./src/components/panels/Execute/Index.vue","webpack://platypush/./src/components/elements/Autocomplete.js","webpack://platypush/./src/components/panels/Execute/Index.vue?99e5"],"sourcesContent":["\n\n\n\n\n\n\n\n","function autocomplete(inp, arr, listener) {\n /*the autocomplete function takes two arguments,\n the text field element and an array of possible autocompleted values:*/\n let currentFocus;\n\n /*execute a function when someone writes in the text field:*/\n inp.addEventListener(\"input\", function() {\n let a, b, i, val = this.value;\n /*close any already open lists of autocompleted values*/\n closeAllLists();\n if (!val) {\n return false;\n }\n\n currentFocus = -1;\n\n /*create a DIV element that will contain the items (values):*/\n a = document.createElement(\"DIV\");\n a.setAttribute(\"id\", this.id + \"autocomplete-list\");\n a.setAttribute(\"class\", \"autocomplete-items\");\n\n /*append the DIV element as a child of the autocomplete container:*/\n this.parentNode.appendChild(a);\n\n /*for each item in the array...*/\n for (i = 0; i < arr.length; i++) {\n /*check if the item starts with the same letters as the text field value:*/\n if (arr[i].substr(0, val.length).toUpperCase() === val.toUpperCase()) {\n /*create a DIV element for each matching element:*/\n b = document.createElement(\"DIV\");\n /*make the matching letters bold:*/\n b.innerHTML = \"\" + arr[i].substr(0, val.length) + \"\";\n b.innerHTML += arr[i].substr(val.length);\n /*insert a input field that will hold the current array item's value:*/\n b.innerHTML += \"\";\n /*execute a function when someone clicks on the item value (DIV element):*/\n b.addEventListener(\"click\", function(e) {\n /*insert the value for the autocomplete text field:*/\n inp.value = this.getElementsByTagName(\"input\")[0].value;\n /*trigger event listener if any:*/\n if (listener) {\n listener(e, inp.value);\n }\n /*close the list of autocompleted values,\n (or any other open lists of autocompleted values:*/\n closeAllLists();\n });\n a.appendChild(b);\n }\n }\n });\n\n inp.addEventListener(\"keyup\", function(e) {\n if ([\"ArrowUp\", \"ArrowDown\", \"Tab\", \"Enter\"].indexOf(e.key) >= 0) {\n e.stopPropagation();\n }\n\n if (e.key === \"Enter\") {\n this.blur();\n }\n });\n\n /*execute a function presses a key on the keyboard:*/\n inp.addEventListener(\"keydown\", function(e) {\n let x = document.getElementById(this.id + \"autocomplete-list\");\n if (x) x = x.getElementsByTagName(\"div\");\n if (e.key === 'ArrowDown' || (e.key === 'Tab' && !e.shiftKey)) {\n /*If the arrow DOWN key is pressed,\n increase the currentFocus variable:*/\n currentFocus++;\n /*and and make the current item more visible:*/\n addActive(x);\n e.preventDefault();\n } else if (e.key === 'ArrowUp' || (e.key === 'Tab' && e.shiftKey)) { //up\n /*If the arrow UP key is pressed,\n decrease the currentFocus variable:*/\n currentFocus--;\n /*and and make the current item more visible:*/\n addActive(x);\n e.preventDefault();\n } else if (e.key === 'Enter') {\n /*If the ENTER key is pressed, prevent the form from being submitted,*/\n if (currentFocus > -1 && x && x.length) {\n e.preventDefault();\n /*and simulate a click on the \"active\" item:*/\n x[currentFocus].click();\n /*and restore the focus on the input element:*/\n this.focus();\n }\n }\n });\n\n function addActive(x) {\n /*a function to classify an item as \"active\":*/\n if (!x) return false;\n /*start by removing the \"active\" class on all items:*/\n removeActive(x);\n if (currentFocus >= x.length) currentFocus = 0;\n if (currentFocus < 0) currentFocus = (x.length - 1);\n /*add class \"autocomplete-active\":*/\n x[currentFocus].classList.add(\"autocomplete-active\");\n }\n\n function removeActive(x) {\n /*a function to remove the \"active\" class from all autocomplete items:*/\n for (let i = 0; i < x.length; i++) {\n x[i].classList.remove(\"autocomplete-active\");\n }\n }\n\n function closeAllLists(elmnt) {\n /*close all autocomplete lists in the document,\n except the one passed as an argument:*/\n const x = document.getElementsByClassName(\"autocomplete-items\");\n for (let i = 0; i < x.length; i++) {\n if (elmnt !== x[i] && elmnt !== inp) {\n x[i].parentNode.removeChild(x[i]);\n }\n }\n }\n\n /*execute a function when someone clicks in the document:*/\n document.addEventListener(\"click\", function (e) {\n closeAllLists(e.target);\n });\n}\n\nexport default autocomplete;\n","import { render } from \"./Index.vue?vue&type=template&id=448d1682\"\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=448d1682&lang=scss\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__"],"names":["class","for","ref","loading","autocomplete","executeAction","type","id","checked","structuredInput","onInputTypeChange","placeholder","disabled","running","action","name","actionChanged","updateAction","length","title","selectedDoc","docLoading","actions","Object","keys","args","supportsExtraArgs","key","value","selectAttrDoc","resetAttrDoc","selectedAttrDoc","selectedAttr","extraArgs","i","removeParameter","addParameter","error","response","copyToClipboard","rawRequest","rawRequestPlaceholder","procedures","sort","selectedProcedure","updateProcedure","$event","executeProcedure","$emit","argname","stopPropagation","inp","arr","listener","currentFocus","addActive","x","removeActive","classList","add","remove","closeAllLists","elmnt","document","getElementsByClassName","parentNode","removeChild","addEventListener","a","b","val","this","createElement","setAttribute","appendChild","substr","toUpperCase","innerHTML","e","getElementsByTagName","indexOf","blur","getElementById","shiftKey","preventDefault","click","focus","target","components","Loading","mixins","Utils","data","undefined","plugins","actionDocsCache","methods","async","request","plugin","values","has_kwargs","self","$refs","actionName","_","entries","reduce","entry","default","html","parseDoc","doc","docString","text","event","getAttribute","arg","console","warn","push","pop","$nextTick","rawAction","onResponse","JSON","stringify","onError","onDone","output","replace","navigator","clipboard","writeText","param","parse","debug","then","catch","finally","execute","notify","toString","mounted","refresh","__exports__","render"],"sourceRoot":""} \ No newline at end of file diff --git a/platypush/backend/http/webapp/dist/static/js/9539-legacy.651585ad.js b/platypush/backend/http/webapp/dist/static/js/9539-legacy.651585ad.js deleted file mode 100644 index 17d1a7053..000000000 --- a/platypush/backend/http/webapp/dist/static/js/9539-legacy.651585ad.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self["webpackChunkplatypush"]=self["webpackChunkplatypush"]||[]).push([[9539],{9539:function(e,t,n){n.r(t),n.d(t,{default:function(){return Ee}});n(8309),n(7941),n(2707);var r=n(6252),a=n(9963),o=n(3577),i={class:"row plugin execute-container"},s={class:"command-container"},c=(0,r._)("div",{class:"title"},"Execute Action",-1),u={class:"request-type-container"},l=["checked"],d=(0,r._)("label",{for:"action-structured-input"},"Structured request",-1),p=["checked"],h=(0,r._)("label",{for:"action-raw-input"},"Raw request",-1),g={class:"autocomplete"},m=["disabled"],v=["disabled"],f=(0,r._)("i",{class:"fas fa-play"},null,-1),y=[f],k={key:0,class:"doc-container"},b=(0,r._)("div",{class:"title"}," Action documentation ",-1),w={class:"doc html"},x=["innerHTML"],D={key:1,class:"options"},_={key:0,class:"params",ref:"params"},A=["disabled","placeholder","onUpdate:modelValue","onFocus"],C={key:0,class:"attr-doc-container mobile"},q={class:"title"},L=(0,r.Uk)(" Attribute: "),P=["textContent"],E={class:"doc html"},T=["innerHTML"],O={key:0,class:"extra-params",ref:"extraParams"},R={class:"col-5"},N=["disabled","onUpdate:modelValue"],H={class:"col-6"},M=["disabled","onUpdate:modelValue"],j={class:"col-1 buttons"},U=["onClick"],I=(0,r._)("i",{class:"fas fa-trash"},null,-1),S=[I],Z={key:1,class:"add-param"},V=(0,r._)("i",{class:"fas fa-plus"},null,-1),J=[V],$={key:1,class:"attr-doc-container widescreen"},B={class:"title"},K=(0,r.Uk)(" Attribute: "),z=["textContent"],F={class:"doc html"},Y=["innerHTML"],G={class:"output-container"},Q=["textContent"],W=["innerHTML"],X=["innerHTML"],ee={class:"first-row"},te=["placeholder"],ne=["disabled"],re=(0,r._)("i",{class:"fas fa-play"},null,-1),ae=[re],oe={key:0,class:"output-container"},ie=["textContent"],se=["innerHTML"],ce=["innerHTML"],ue={class:"procedures-container"},le=(0,r._)("div",{class:"title"},"Execute Procedure",-1),de=["onClick"],pe={class:"head"},he=["textContent"],ge={class:"btn-container col-no-margin-1"},me=["disabled"],ve=(0,r._)("i",{class:"fas fa-play"},null,-1),fe=[ve],ye={key:0,class:"params"},ke=["disabled","placeholder","onUpdate:modelValue"];function be(e,t,n,f,I,V){var re,ve,be=(0,r.up)("Loading");return(0,r.wg)(),(0,r.iD)("div",i,[I.loading?((0,r.wg)(),(0,r.j4)(be,{key:0})):(0,r.kq)("",!0),(0,r._)("div",s,[c,(0,r._)("form",{class:"action-form",ref:"actionForm",autocomplete:"off",onSubmit:t[8]||(t[8]=(0,a.iM)((function(){return V.executeAction&&V.executeAction.apply(V,arguments)}),["prevent"]))},[(0,r._)("div",u,[(0,r._)("input",{type:"radio",id:"action-structured-input",checked:I.structuredInput,onChange:t[0]||(t[0]=function(e){return V.onInputTypeChange(!0)})},null,40,l),d,(0,r._)("input",{type:"radio",id:"action-raw-input",checked:!I.structuredInput,onChange:t[1]||(t[1]=function(e){return V.onInputTypeChange(!1)})},null,40,p),h]),(0,r._)("div",{class:(0,o.C_)(["request structured-request",I.structuredInput?"":"hidden"])},[(0,r._)("div",g,[(0,r._)("label",null,[(0,r.wy)((0,r._)("input",{ref:"actionName",type:"text",class:"action-name",placeholder:"Action Name",disabled:I.running,"onUpdate:modelValue":t[2]||(t[2]=function(e){return I.action.name=e}),onChange:t[3]||(t[3]=function(e){return I.actionChanged=!0}),onBlur:t[4]||(t[4]=function(){return V.updateAction&&V.updateAction.apply(V,arguments)})},null,40,m),[[a.nr,I.action.name]])])]),(0,r._)("button",{type:"submit",class:"run-btn btn-primary",disabled:I.running||!(null!==(re=I.action)&&void 0!==re&&null!==(ve=re.name)&&void 0!==ve&&ve.length),title:"Run"},y,8,v),I.selectedDoc?((0,r.wg)(),(0,r.iD)("div",k,[b,(0,r._)("div",w,[I.docLoading?((0,r.wg)(),(0,r.j4)(be,{key:0})):((0,r.wg)(),(0,r.iD)("span",{key:1,innerHTML:I.selectedDoc},null,8,x))])])):(0,r.kq)("",!0),I.action.name in I.actions&&(Object.keys(I.action.args).length||I.action.supportsExtraArgs)?((0,r.wg)(),(0,r.iD)("div",D,[Object.keys(I.action.args).length||I.action.supportsExtraArgs?((0,r.wg)(),(0,r.iD)("div",_,[((0,r.wg)(!0),(0,r.iD)(r.HY,null,(0,r.Ko)(Object.keys(I.action.args),(function(e){return(0,r.wg)(),(0,r.iD)("div",{class:"param",key:e},[(0,r._)("label",null,[(0,r.wy)((0,r._)("input",{type:"text",class:"action-param-value",disabled:I.running,placeholder:e,"onUpdate:modelValue":function(t){return I.action.args[e].value=t},onFocus:function(t){return V.selectAttrDoc(e)},onBlur:t[5]||(t[5]=function(){return V.resetAttrDoc&&V.resetAttrDoc.apply(V,arguments)})},null,40,A),[[a.nr,I.action.args[e].value]])]),I.selectedAttrDoc&&I.selectedAttr===e?((0,r.wg)(),(0,r.iD)("div",C,[(0,r._)("div",q,[L,(0,r._)("div",{class:"attr-name",textContent:(0,o.zw)(I.selectedAttr)},null,8,P)]),(0,r._)("div",E,[I.docLoading?((0,r.wg)(),(0,r.j4)(be,{key:0})):((0,r.wg)(),(0,r.iD)("span",{key:1,innerHTML:I.selectedAttrDoc},null,8,T))])])):(0,r.kq)("",!0)])})),128)),Object.keys(I.action.extraArgs).length?((0,r.wg)(),(0,r.iD)("div",O,[((0,r.wg)(!0),(0,r.iD)(r.HY,null,(0,r.Ko)(Object.keys(I.action.extraArgs),(function(e){return(0,r.wg)(),(0,r.iD)("div",{class:"param extra-param",key:e},[(0,r._)("label",R,[(0,r.wy)((0,r._)("input",{type:"text",class:"action-extra-param-name",disabled:I.running,placeholder:"Name","onUpdate:modelValue":function(t){return I.action.extraArgs[e].name=t}},null,8,N),[[a.nr,I.action.extraArgs[e].name]])]),(0,r._)("label",H,[(0,r.wy)((0,r._)("input",{type:"text",class:"action-extra-param-value",disabled:I.running,placeholder:"Value","onUpdate:modelValue":function(t){return I.action.extraArgs[e].value=t}},null,8,M),[[a.nr,I.action.extraArgs[e].value]])]),(0,r._)("label",j,[(0,r._)("button",{type:"button",class:"action-extra-param-del",title:"Remove parameter",onClick:function(t){return V.removeParameter(e)}},S,8,U)])])})),128))],512)):(0,r.kq)("",!0),I.action.supportsExtraArgs?((0,r.wg)(),(0,r.iD)("div",Z,[(0,r._)("button",{type:"button",title:"Add a parameter",onClick:t[6]||(t[6]=function(){return V.addParameter&&V.addParameter.apply(V,arguments)})},J)])):(0,r.kq)("",!0)],512)):(0,r.kq)("",!0),I.selectedAttrDoc?((0,r.wg)(),(0,r.iD)("div",$,[(0,r._)("div",B,[K,(0,r._)("div",{class:"attr-name",textContent:(0,o.zw)(I.selectedAttr)},null,8,z)]),(0,r._)("div",F,[I.docLoading?((0,r.wg)(),(0,r.j4)(be,{key:0})):((0,r.wg)(),(0,r.iD)("span",{key:1,innerHTML:I.selectedAttrDoc},null,8,Y))])])):(0,r.kq)("",!0)])):(0,r.kq)("",!0),(0,r._)("div",G,[null!=I.error||null!=I.response?((0,r.wg)(),(0,r.iD)("div",{key:0,class:"title",textContent:(0,o.zw)(null!=I.error?"Error":"Output")},null,8,Q)):(0,r.kq)("",!0),null!=I.response?((0,r.wg)(),(0,r.iD)("div",{key:1,class:"response",innerHTML:I.response},null,8,W)):null!=I.error?((0,r.wg)(),(0,r.iD)("div",{key:2,class:"error",innerHTML:I.error},null,8,X)):(0,r.kq)("",!0)])],2),(0,r._)("div",{class:(0,o.C_)(["request raw-request",I.structuredInput?"hidden":""])},[(0,r._)("div",ee,[(0,r._)("label",null,[(0,r.wy)((0,r._)("textarea",{"onUpdate:modelValue":t[7]||(t[7]=function(e){return I.rawRequest=e}),ref:"rawAction",placeholder:I.rawRequestPlaceholder},null,8,te),[[a.nr,I.rawRequest]])]),(0,r._)("button",{type:"submit",disabled:I.running,class:"run-btn btn-primary",title:"Run"},ae,8,ne)]),null!=I.response||null!=I.error?((0,r.wg)(),(0,r.iD)("div",oe,[(0,r._)("div",{class:"title",textContent:(0,o.zw)(null!=I.error?"Error":"Output")},null,8,ie),null!=I.error?((0,r.wg)(),(0,r.iD)("div",{key:0,class:"error",innerHTML:I.error},null,8,se)):null!=I.response?((0,r.wg)(),(0,r.iD)("div",{key:1,class:"response",innerHTML:I.response},null,8,ce)):(0,r.kq)("",!0)])):(0,r.kq)("",!0)],2)],544)]),(0,r._)("div",ue,[le,((0,r.wg)(!0),(0,r.iD)(r.HY,null,(0,r.Ko)(Object.keys(I.procedures).sort(),(function(n){return(0,r.wg)(),(0,r.iD)("div",{class:(0,o.C_)(["procedure",I.selectedProcedure.name===n?"selected":""]),key:n,onClick:function(e){return V.updateProcedure(n,e)}},[(0,r._)("form",{ref_for:!0,ref:"procedureForm",autocomplete:"off",onSubmit:t[11]||(t[11]=(0,a.iM)((function(){return V.executeProcedure&&V.executeProcedure.apply(V,arguments)}),["prevent"]))},[(0,r._)("div",pe,[(0,r._)("div",{class:"name col-no-margin-11",textContent:(0,o.zw)(n)},null,8,he),(0,r._)("div",ge,[I.selectedProcedure.name===n?((0,r.wg)(),(0,r.iD)("button",{key:0,type:"submit",class:"run-btn btn-default",disabled:I.running,title:"Run",onClick:t[9]||(t[9]=(0,a.iM)((function(t){return e.$emit("submit")}),["stop"]))},fe,8,me)):(0,r.kq)("",!0)])]),I.selectedProcedure.name===n?((0,r.wg)(),(0,r.iD)("div",ye,[((0,r.wg)(!0),(0,r.iD)(r.HY,null,(0,r.Ko)(Object.keys(I.selectedProcedure.args),(function(e){return(0,r.wg)(),(0,r.iD)("div",{class:"param",key:e},[(0,r._)("label",null,[(0,r.wy)((0,r._)("input",{type:"text",class:"action-param-value",onClick:t[10]||(t[10]=function(e){return e.stopPropagation()}),disabled:I.running,placeholder:e,"onUpdate:modelValue":function(t){return I.selectedProcedure.args[e]=t}},null,8,ke),[[a.nr,I.selectedProcedure.args[e]]])])])})),128))])):(0,r.kq)("",!0)],544)],10,de)})),128))])])}var we=n(4648),xe=n(8534);n(5666),n(2479),n(1539),n(9720),n(8862),n(9714);function De(e,t,n){var r;function a(e){if(!e)return!1;o(e),r>=e.length&&(r=0),r<0&&(r=e.length-1),e[r].classList.add("autocomplete-active")}function o(e){for(var t=0;t\n \n\n\nExecute Action\n \n\n\nExecute Procedure\n\n \n\n"+t[s].substr(0,c.length)+"",o.innerHTML+=t[s].substr(c.length),o.innerHTML+="",o.addEventListener("click",(function(t){e.value=this.getElementsByTagName("input")[0].value,n&&n(t,e.value),i()})),a.appendChild(o))})),e.addEventListener("keyup",(function(e){["ArrowUp","ArrowDown","Tab","Enter"].indexOf(e.key)>=0&&e.stopPropagation(),"Enter"===e.key&&this.blur()})),e.addEventListener("keydown",(function(e){var t=document.getElementById(this.id+"autocomplete-list");t&&(t=t.getElementsByTagName("div")),"ArrowDown"===e.key||"Tab"===e.key&&!e.shiftKey?(r++,a(t),e.preventDefault()):"ArrowUp"===e.key||"Tab"===e.key&&e.shiftKey?(r--,a(t),e.preventDefault()):"Enter"===e.key&&r>-1&&t&&t.length&&(e.preventDefault(),t[r].click(),this.focus())})),document.addEventListener("click",(function(e){i(e.target)}))}var _e=De,Ae=n(6813),Ce=n(1232),qe={name:"Execute",components:{Loading:Ce.Z},mixins:[Ae.Z],data:function(){return{loading:!1,running:!1,docLoading:!1,structuredInput:!0,actionChanged:!1,selectedDoc:void 0,selectedAttr:void 0,selectedAttrDoc:void 0,selectedProcedure:{name:void 0,args:{}},response:void 0,error:void 0,rawRequest:void 0,rawRequestPlaceholder:'Raw JSON request. Example:\n\n{"type": "request", "action": "file.list", "args": {"path": "/"}}',actions:{},plugins:{},procedures:{},actionDocsCache:{},action:{name:void 0,args:{},extraArgs:[],supportsExtraArgs:!1}}},methods:{refresh:function(){var e=this;return(0,xe.Z)(regeneratorRuntime.mark((function t(){var n,r,a,o,i,s,c;return regeneratorRuntime.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return e.loading=!0,t.prev=1,t.next=4,e.request("inspect.get_procedures");case 4:return e.procedures=t.sent,t.next=7,e.request("inspect.get_all_plugins");case 7:e.plugins=t.sent;case 8:return t.prev=8,e.loading=!1,t.finish(8);case 11:for(n=0,r=Object.values(e.plugins);n "+JSON.stringify(e,null,2)+" \n\n\n\n\n\n\n","function autocomplete(inp, arr, listener) {\n /*the autocomplete function takes two arguments,\n the text field element and an array of possible autocompleted values:*/\n let currentFocus;\n\n /*execute a function when someone writes in the text field:*/\n inp.addEventListener(\"input\", function() {\n let a, b, i, val = this.value;\n /*close any already open lists of autocompleted values*/\n closeAllLists();\n if (!val) {\n return false;\n }\n\n currentFocus = -1;\n\n /*create a DIV element that will contain the items (values):*/\n a = document.createElement(\"DIV\");\n a.setAttribute(\"id\", this.id + \"autocomplete-list\");\n a.setAttribute(\"class\", \"autocomplete-items\");\n\n /*append the DIV element as a child of the autocomplete container:*/\n this.parentNode.appendChild(a);\n\n /*for each item in the array...*/\n for (i = 0; i < arr.length; i++) {\n /*check if the item starts with the same letters as the text field value:*/\n if (arr[i].substr(0, val.length).toUpperCase() === val.toUpperCase()) {\n /*create a DIV element for each matching element:*/\n b = document.createElement(\"DIV\");\n /*make the matching letters bold:*/\n b.innerHTML = \"\" + arr[i].substr(0, val.length) + \"\";\n b.innerHTML += arr[i].substr(val.length);\n /*insert a input field that will hold the current array item's value:*/\n b.innerHTML += \"\";\n /*execute a function when someone clicks on the item value (DIV element):*/\n b.addEventListener(\"click\", function(e) {\n /*insert the value for the autocomplete text field:*/\n inp.value = this.getElementsByTagName(\"input\")[0].value;\n /*trigger event listener if any:*/\n if (listener) {\n listener(e, inp.value);\n }\n /*close the list of autocompleted values,\n (or any other open lists of autocompleted values:*/\n closeAllLists();\n });\n a.appendChild(b);\n }\n }\n });\n\n inp.addEventListener(\"keyup\", function(e) {\n if ([\"ArrowUp\", \"ArrowDown\", \"Tab\", \"Enter\"].indexOf(e.key) >= 0) {\n e.stopPropagation();\n }\n\n if (e.key === \"Enter\") {\n this.blur();\n }\n });\n\n /*execute a function presses a key on the keyboard:*/\n inp.addEventListener(\"keydown\", function(e) {\n let x = document.getElementById(this.id + \"autocomplete-list\");\n if (x) x = x.getElementsByTagName(\"div\");\n if (e.key === 'ArrowDown' || (e.key === 'Tab' && !e.shiftKey)) {\n /*If the arrow DOWN key is pressed,\n increase the currentFocus variable:*/\n currentFocus++;\n /*and and make the current item more visible:*/\n addActive(x);\n e.preventDefault();\n } else if (e.key === 'ArrowUp' || (e.key === 'Tab' && e.shiftKey)) { //up\n /*If the arrow UP key is pressed,\n decrease the currentFocus variable:*/\n currentFocus--;\n /*and and make the current item more visible:*/\n addActive(x);\n e.preventDefault();\n } else if (e.key === 'Enter') {\n /*If the ENTER key is pressed, prevent the form from being submitted,*/\n if (currentFocus > -1 && x && x.length) {\n e.preventDefault();\n /*and simulate a click on the \"active\" item:*/\n x[currentFocus].click();\n /*and restore the focus on the input element:*/\n this.focus();\n }\n }\n });\n\n function addActive(x) {\n /*a function to classify an item as \"active\":*/\n if (!x) return false;\n /*start by removing the \"active\" class on all items:*/\n removeActive(x);\n if (currentFocus >= x.length) currentFocus = 0;\n if (currentFocus < 0) currentFocus = (x.length - 1);\n /*add class \"autocomplete-active\":*/\n x[currentFocus].classList.add(\"autocomplete-active\");\n }\n\n function removeActive(x) {\n /*a function to remove the \"active\" class from all autocomplete items:*/\n for (let i = 0; i < x.length; i++) {\n x[i].classList.remove(\"autocomplete-active\");\n }\n }\n\n function closeAllLists(elmnt) {\n /*close all autocomplete lists in the document,\n except the one passed as an argument:*/\n const x = document.getElementsByClassName(\"autocomplete-items\");\n for (let i = 0; i < x.length; i++) {\n if (elmnt !== x[i] && elmnt !== inp) {\n x[i].parentNode.removeChild(x[i]);\n }\n }\n }\n\n /*execute a function when someone clicks in the document:*/\n document.addEventListener(\"click\", function (e) {\n closeAllLists(e.target);\n });\n}\n\nexport default autocomplete;\n","import { render } from \"./Index.vue?vue&type=template&id=0834968c\"\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=0834968c&lang=scss\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__"],"names":["class","for","ref","loading","autocomplete","executeAction","type","id","checked","structuredInput","onInputTypeChange","placeholder","disabled","running","action","name","actionChanged","updateAction","length","title","selectedDoc","docLoading","actions","Object","keys","args","supportsExtraArgs","key","value","selectAttrDoc","resetAttrDoc","selectedAttrDoc","selectedAttr","extraArgs","i","removeParameter","addParameter","error","response","rawRequest","rawRequestPlaceholder","procedures","sort","selectedProcedure","updateProcedure","$event","executeProcedure","$emit","argname","stopPropagation","inp","arr","listener","currentFocus","addActive","x","removeActive","classList","add","remove","closeAllLists","elmnt","document","getElementsByClassName","parentNode","removeChild","addEventListener","a","b","val","this","createElement","setAttribute","appendChild","substr","toUpperCase","innerHTML","e","getElementsByTagName","indexOf","blur","getElementById","shiftKey","preventDefault","click","focus","target","components","Loading","mixins","Utils","data","undefined","plugins","actionDocsCache","methods","refresh","request","values","plugin","has_kwargs","self","$refs","actionName","_","entries","reduce","entry","default","html","parseDoc","doc","docString","text","event","getAttribute","arg","console","warn","push","pop","$nextTick","rawAction","onResponse","JSON","stringify","onError","onDone","param","parse","debug","then","catch","finally","execute","notify","toString","mounted","__exports__","render"],"sourceRoot":""} \ No newline at end of file diff --git a/platypush/backend/http/webapp/dist/static/js/9539.7a062356.js b/platypush/backend/http/webapp/dist/static/js/9539.7a062356.js deleted file mode 100644 index dcac7ac33..000000000 --- a/platypush/backend/http/webapp/dist/static/js/9539.7a062356.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self["webpackChunkplatypush"]=self["webpackChunkplatypush"]||[]).push([[9539],{9539:function(e,t,n){n.r(t),n.d(t,{default:function(){return Le}});var s=n(6252),a=n(9963),i=n(3577);const r={class:"row plugin execute-container"},o={class:"command-container"},c=(0,s._)("div",{class:"title"},"Execute Action",-1),l={class:"request-type-container"},u=["checked"],d=(0,s._)("label",{for:"action-structured-input"},"Structured request",-1),h=["checked"],p=(0,s._)("label",{for:"action-raw-input"},"Raw request",-1),g={class:"autocomplete"},m=["disabled"],v=["disabled"],y=(0,s._)("i",{class:"fas fa-play"},null,-1),f=[y],b={key:0,class:"doc-container"},k=(0,s._)("div",{class:"title"}," Action documentation ",-1),w={class:"doc html"},D=["innerHTML"],_={key:1,class:"options"},A={key:0,class:"params",ref:"params"},x=["disabled","placeholder","onUpdate:modelValue","onFocus"],C={key:0,class:"attr-doc-container mobile"},q={class:"title"},L=(0,s.Uk)(" Attribute: "),P=["textContent"],E={class:"doc html"},T=["innerHTML"],O={key:0,class:"extra-params",ref:"extraParams"},N={class:"col-5"},H=["disabled","onUpdate:modelValue"],M={class:"col-6"},j=["disabled","onUpdate:modelValue"],R={class:"col-1 buttons"},U=["onClick"],I=(0,s._)("i",{class:"fas fa-trash"},null,-1),S=[I],V={key:1,class:"add-param"},J=(0,s._)("i",{class:"fas fa-plus"},null,-1),$=[J],B={key:1,class:"attr-doc-container widescreen"},K={class:"title"},z=(0,s.Uk)(" Attribute: "),F=["textContent"],Y={class:"doc html"},Z=["innerHTML"],G={class:"output-container"},Q=["textContent"],W=["innerHTML"],X=["innerHTML"],ee={class:"first-row"},te=["placeholder"],ne=["disabled"],se=(0,s._)("i",{class:"fas fa-play"},null,-1),ae=[se],ie={key:0,class:"output-container"},re=["textContent"],oe=["innerHTML"],ce=["innerHTML"],le={class:"procedures-container"},ue=(0,s._)("div",{class:"title"},"Execute Procedure",-1),de=["onClick"],he={class:"head"},pe=["textContent"],ge={class:"btn-container col-no-margin-1"},me=["disabled"],ve=(0,s._)("i",{class:"fas fa-play"},null,-1),ye=[ve],fe={key:0,class:"params"},be=["disabled","placeholder","onUpdate:modelValue"];function ke(e,t,n,y,I,J){const se=(0,s.up)("Loading");return(0,s.wg)(),(0,s.iD)("div",r,[I.loading?((0,s.wg)(),(0,s.j4)(se,{key:0})):(0,s.kq)("",!0),(0,s._)("div",o,[c,(0,s._)("form",{class:"action-form",ref:"actionForm",autocomplete:"off",onSubmit:t[8]||(t[8]=(0,a.iM)(((...e)=>J.executeAction&&J.executeAction(...e)),["prevent"]))},[(0,s._)("div",l,[(0,s._)("input",{type:"radio",id:"action-structured-input",checked:I.structuredInput,onChange:t[0]||(t[0]=e=>J.onInputTypeChange(!0))},null,40,u),d,(0,s._)("input",{type:"radio",id:"action-raw-input",checked:!I.structuredInput,onChange:t[1]||(t[1]=e=>J.onInputTypeChange(!1))},null,40,h),p]),(0,s._)("div",{class:(0,i.C_)(["request structured-request",I.structuredInput?"":"hidden"])},[(0,s._)("div",g,[(0,s._)("label",null,[(0,s.wy)((0,s._)("input",{ref:"actionName",type:"text",class:"action-name",placeholder:"Action Name",disabled:I.running,"onUpdate:modelValue":t[2]||(t[2]=e=>I.action.name=e),onChange:t[3]||(t[3]=e=>I.actionChanged=!0),onBlur:t[4]||(t[4]=(...e)=>J.updateAction&&J.updateAction(...e))},null,40,m),[[a.nr,I.action.name]])])]),(0,s._)("button",{type:"submit",class:"run-btn btn-primary",disabled:I.running||!I.action?.name?.length,title:"Run"},f,8,v),I.selectedDoc?((0,s.wg)(),(0,s.iD)("div",b,[k,(0,s._)("div",w,[I.docLoading?((0,s.wg)(),(0,s.j4)(se,{key:0})):((0,s.wg)(),(0,s.iD)("span",{key:1,innerHTML:I.selectedDoc},null,8,D))])])):(0,s.kq)("",!0),I.action.name in I.actions&&(Object.keys(I.action.args).length||I.action.supportsExtraArgs)?((0,s.wg)(),(0,s.iD)("div",_,[Object.keys(I.action.args).length||I.action.supportsExtraArgs?((0,s.wg)(),(0,s.iD)("div",A,[((0,s.wg)(!0),(0,s.iD)(s.HY,null,(0,s.Ko)(Object.keys(I.action.args),(e=>((0,s.wg)(),(0,s.iD)("div",{class:"param",key:e},[(0,s._)("label",null,[(0,s.wy)((0,s._)("input",{type:"text",class:"action-param-value",disabled:I.running,placeholder:e,"onUpdate:modelValue":t=>I.action.args[e].value=t,onFocus:t=>J.selectAttrDoc(e),onBlur:t[5]||(t[5]=(...e)=>J.resetAttrDoc&&J.resetAttrDoc(...e))},null,40,x),[[a.nr,I.action.args[e].value]])]),I.selectedAttrDoc&&I.selectedAttr===e?((0,s.wg)(),(0,s.iD)("div",C,[(0,s._)("div",q,[L,(0,s._)("div",{class:"attr-name",textContent:(0,i.zw)(I.selectedAttr)},null,8,P)]),(0,s._)("div",E,[I.docLoading?((0,s.wg)(),(0,s.j4)(se,{key:0})):((0,s.wg)(),(0,s.iD)("span",{key:1,innerHTML:I.selectedAttrDoc},null,8,T))])])):(0,s.kq)("",!0)])))),128)),Object.keys(I.action.extraArgs).length?((0,s.wg)(),(0,s.iD)("div",O,[((0,s.wg)(!0),(0,s.iD)(s.HY,null,(0,s.Ko)(Object.keys(I.action.extraArgs),(e=>((0,s.wg)(),(0,s.iD)("div",{class:"param extra-param",key:e},[(0,s._)("label",N,[(0,s.wy)((0,s._)("input",{type:"text",class:"action-extra-param-name",disabled:I.running,placeholder:"Name","onUpdate:modelValue":t=>I.action.extraArgs[e].name=t},null,8,H),[[a.nr,I.action.extraArgs[e].name]])]),(0,s._)("label",M,[(0,s.wy)((0,s._)("input",{type:"text",class:"action-extra-param-value",disabled:I.running,placeholder:"Value","onUpdate:modelValue":t=>I.action.extraArgs[e].value=t},null,8,j),[[a.nr,I.action.extraArgs[e].value]])]),(0,s._)("label",R,[(0,s._)("button",{type:"button",class:"action-extra-param-del",title:"Remove parameter",onClick:t=>J.removeParameter(e)},S,8,U)])])))),128))],512)):(0,s.kq)("",!0),I.action.supportsExtraArgs?((0,s.wg)(),(0,s.iD)("div",V,[(0,s._)("button",{type:"button",title:"Add a parameter",onClick:t[6]||(t[6]=(...e)=>J.addParameter&&J.addParameter(...e))},$)])):(0,s.kq)("",!0)],512)):(0,s.kq)("",!0),I.selectedAttrDoc?((0,s.wg)(),(0,s.iD)("div",B,[(0,s._)("div",K,[z,(0,s._)("div",{class:"attr-name",textContent:(0,i.zw)(I.selectedAttr)},null,8,F)]),(0,s._)("div",Y,[I.docLoading?((0,s.wg)(),(0,s.j4)(se,{key:0})):((0,s.wg)(),(0,s.iD)("span",{key:1,innerHTML:I.selectedAttrDoc},null,8,Z))])])):(0,s.kq)("",!0)])):(0,s.kq)("",!0),(0,s._)("div",G,[null!=I.error||null!=I.response?((0,s.wg)(),(0,s.iD)("div",{key:0,class:"title",textContent:(0,i.zw)(null!=I.error?"Error":"Output")},null,8,Q)):(0,s.kq)("",!0),null!=I.response?((0,s.wg)(),(0,s.iD)("div",{key:1,class:"response",innerHTML:I.response},null,8,W)):null!=I.error?((0,s.wg)(),(0,s.iD)("div",{key:2,class:"error",innerHTML:I.error},null,8,X)):(0,s.kq)("",!0)])],2),(0,s._)("div",{class:(0,i.C_)(["request raw-request",I.structuredInput?"hidden":""])},[(0,s._)("div",ee,[(0,s._)("label",null,[(0,s.wy)((0,s._)("textarea",{"onUpdate:modelValue":t[7]||(t[7]=e=>I.rawRequest=e),ref:"rawAction",placeholder:I.rawRequestPlaceholder},null,8,te),[[a.nr,I.rawRequest]])]),(0,s._)("button",{type:"submit",disabled:I.running,class:"run-btn btn-primary",title:"Run"},ae,8,ne)]),null!=I.response||null!=I.error?((0,s.wg)(),(0,s.iD)("div",ie,[(0,s._)("div",{class:"title",textContent:(0,i.zw)(null!=I.error?"Error":"Output")},null,8,re),null!=I.error?((0,s.wg)(),(0,s.iD)("div",{key:0,class:"error",innerHTML:I.error},null,8,oe)):null!=I.response?((0,s.wg)(),(0,s.iD)("div",{key:1,class:"response",innerHTML:I.response},null,8,ce)):(0,s.kq)("",!0)])):(0,s.kq)("",!0)],2)],544)]),(0,s._)("div",le,[ue,((0,s.wg)(!0),(0,s.iD)(s.HY,null,(0,s.Ko)(Object.keys(I.procedures).sort(),(n=>((0,s.wg)(),(0,s.iD)("div",{class:(0,i.C_)(["procedure",I.selectedProcedure.name===n?"selected":""]),key:n,onClick:e=>J.updateProcedure(n,e)},[(0,s._)("form",{ref_for:!0,ref:"procedureForm",autocomplete:"off",onSubmit:t[11]||(t[11]=(0,a.iM)(((...e)=>J.executeProcedure&&J.executeProcedure(...e)),["prevent"]))},[(0,s._)("div",he,[(0,s._)("div",{class:"name col-no-margin-11",textContent:(0,i.zw)(n)},null,8,pe),(0,s._)("div",ge,[I.selectedProcedure.name===n?((0,s.wg)(),(0,s.iD)("button",{key:0,type:"submit",class:"run-btn btn-default",disabled:I.running,title:"Run",onClick:t[9]||(t[9]=(0,a.iM)((t=>e.$emit("submit")),["stop"]))},ye,8,me)):(0,s.kq)("",!0)])]),I.selectedProcedure.name===n?((0,s.wg)(),(0,s.iD)("div",fe,[((0,s.wg)(!0),(0,s.iD)(s.HY,null,(0,s.Ko)(Object.keys(I.selectedProcedure.args),(e=>((0,s.wg)(),(0,s.iD)("div",{class:"param",key:e},[(0,s._)("label",null,[(0,s.wy)((0,s._)("input",{type:"text",class:"action-param-value",onClick:t[10]||(t[10]=e=>e.stopPropagation()),disabled:I.running,placeholder:e,"onUpdate:modelValue":t=>I.selectedProcedure.args[e]=t},null,8,be),[[a.nr,I.selectedProcedure.args[e]]])])])))),128))])):(0,s.kq)("",!0)],544)],10,de)))),128))])])}function we(e,t,n){let s;function a(e){if(!e)return!1;i(e),s>=e.length&&(s=0),s<0&&(s=e.length-1),e[s].classList.add("autocomplete-active")}function i(e){for(let t=0;t\n \n\n\nExecute Action\n \n\n\nExecute Procedure\n\n \n\n"+t[o].substr(0,c.length)+"",i.innerHTML+=t[o].substr(c.length),i.innerHTML+="",i.addEventListener("click",(function(t){e.value=this.getElementsByTagName("input")[0].value,n&&n(t,e.value),r()})),a.appendChild(i))})),e.addEventListener("keyup",(function(e){["ArrowUp","ArrowDown","Tab","Enter"].indexOf(e.key)>=0&&e.stopPropagation(),"Enter"===e.key&&this.blur()})),e.addEventListener("keydown",(function(e){let t=document.getElementById(this.id+"autocomplete-list");t&&(t=t.getElementsByTagName("div")),"ArrowDown"===e.key||"Tab"===e.key&&!e.shiftKey?(s++,a(t),e.preventDefault()):"ArrowUp"===e.key||"Tab"===e.key&&e.shiftKey?(s--,a(t),e.preventDefault()):"Enter"===e.key&&s>-1&&t&&t.length&&(e.preventDefault(),t[s].click(),this.focus())})),document.addEventListener("click",(function(e){r(e.target)}))}var De=we,_e=n(6813),Ae=n(1232),xe={name:"Execute",components:{Loading:Ae.Z},mixins:[_e.Z],data(){return{loading:!1,running:!1,docLoading:!1,structuredInput:!0,actionChanged:!1,selectedDoc:void 0,selectedAttr:void 0,selectedAttrDoc:void 0,selectedProcedure:{name:void 0,args:{}},response:void 0,error:void 0,rawRequest:void 0,rawRequestPlaceholder:'Raw JSON request. Example:\n\n{"type": "request", "action": "file.list", "args": {"path": "/"}}',actions:{},plugins:{},procedures:{},actionDocsCache:{},action:{name:void 0,args:{},extraArgs:[],supportsExtraArgs:!1}}},methods:{async refresh(){this.loading=!0;try{this.procedures=await this.request("inspect.get_procedures"),this.plugins=await this.request("inspect.get_all_plugins")}finally{this.loading=!1}for(const t of Object.values(this.plugins))for(const e of Object.values(t.actions))e.name=t.name+"."+e.name,e.supportsExtraArgs=!!e.has_kwargs,delete e.has_kwargs,this.actions[e.name]=e;const e=this;De(this.$refs.actionName,Object.keys(this.actions).sort(),((t,n)=>{this.action.name=n,e.updateAction()}))},async updateAction(){if(this.action.name in this.actions||(this.selectedDoc=void 0),this.actionChanged&&this.action.name in this.actions){this.docLoading=!0;try{this.action={...this.actions[this.action.name],args:Object.entries(this.actions[this.action.name].args).reduce(((e,t)=>(e[t[0]]={...t[1],value:t[1].default},e)),{}),extraArgs:[]}}finally{this.docLoading=!1}this.selectedDoc=this.actionDocsCache[this.action.name]?.html||await this.parseDoc(this.action.doc),this.actionDocsCache[this.action.name]||(this.actionDocsCache[this.action.name]={}),this.actionDocsCache[this.action.name].html=this.selectedDoc,this.actionChanged=!1,this.response=void 0,this.error=void 0}},async parseDoc(e){return e?.length?await this.request("utils.rst_to_html",{text:e}):e},updateProcedure(e,t){"submit"!==t.target.getAttribute("type")&&(this.selectedProcedure.name!==e?e in this.procedures?this.selectedProcedure={name:e,args:(this.procedures[e].args||[]).reduce(((e,t)=>(e[t]=void 0,e)),{})}:console.warn("Procedure not found: "+e):this.selectedProcedure={name:void 0,args:{}})},addParameter(){this.action.extraArgs.push({name:void 0,value:void 0})},removeParameter(e){this.action.extraArgs.pop(e)},async selectAttrDoc(e){this.selectedAttr=e,this.selectedAttrDoc=this.actionDocsCache[this.action.name]?.[e]?.html||await this.parseDoc(this.action.args[e].doc),this.actionDocsCache[this.action.name]||(this.actionDocsCache[this.action.name]={}),this.actionDocsCache[this.action.name][e]={html:this.selectedAttrDoc}},resetAttrDoc(){this.response=void 0,this.error=void 0,this.selectedAttr=void 0,this.selectedAttrDoc=void 0},onInputTypeChange(e){this.structuredInput=e,this.response=void 0,this.error=void 0,this.$nextTick((()=>{e?this.$refs.actionName.focus():this.$refs.rawAction.focus()}))},onResponse(e){this.response=" "+JSON.stringify(e,null,2)+"",this.error=void 0},onError(e){this.response=void 0,this.error=e},onDone(){this.running=!1},executeAction(){if((this.action.name||this.rawRequest)&&!this.running)if(this.running=!0,this.structuredInput){const e={...Object.entries(this.action.args).reduce(((e,t)=>{if(null!=t[1].value){let s=t[1].value;try{s=JSON.parse(s)}catch(n){console.debug("Not a valid JSON value"),console.debug(s)}e[t[0]]=s}return e}),{}),...this.action.extraArgs.reduce(((e,t)=>{let n=e[t.value];try{n=JSON.parse(n)}catch(s){console.debug("Not a valid JSON value"),console.debug(n)}return e[t.name]=n,e}),{})};this.request(this.action.name,e).then(this.onResponse).catch(this.onError).finally(this.onDone)}else try{const e=JSON.parse(this.rawRequest);this.execute(e).then(this.onResponse).catch(this.onError).finally(this.onDone)}catch(e){this.notify({error:!0,title:"Invalid JSON request",text:e.toString()})}},executeProcedure(e){if(!this.selectedProcedure.name||this.running)return;e.stopPropagation(),this.running=!0;const t={...Object.entries(this.selectedProcedure.args).reduce(((e,t)=>{if(null!=t[1]){let s=t[1];try{s=JSON.parse(s)}catch(n){console.debug("Not a valid JSON value"),console.debug(s)}e[t[0]]=s}return e}),{})};this.request("procedure."+this.selectedProcedure.name,t).then(this.onResponse).catch(this.onError).finally(this.onDone)}},mounted(){this.$nextTick((()=>{this.$refs.actionName.focus()})),this.refresh()}},Ce=n(3744);const qe=(0,Ce.Z)(xe,[["render",ke]]);var Le=qe}}]); -//# sourceMappingURL=9539.7a062356.js.map \ No newline at end of file diff --git a/platypush/backend/http/webapp/dist/static/js/9539.7a062356.js.map b/platypush/backend/http/webapp/dist/static/js/9539.7a062356.js.map deleted file mode 100644 index e31570667..000000000 --- a/platypush/backend/http/webapp/dist/static/js/9539.7a062356.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/9539.7a062356.js","mappings":"2MACOA,MAAM,gC,GAEJA,MAAM,qB,GACT,OAAuC,OAAlCA,MAAM,SAAQ,kBAAc,G,GAE1BA,MAAM,0B,iBAGT,OAA+D,SAAxDC,IAAI,2BAA0B,sBAAkB,G,iBAGvD,OAAiD,SAA1CA,IAAI,oBAAmB,eAAW,G,GAIpCD,MAAM,gB,iCAST,OAAyB,KAAtBA,MAAM,eAAa,S,GAAtB,G,SAGGA,MAAM,iB,GACT,OAEM,OAFDA,MAAM,SAAQ,0BAEnB,G,GAEKA,MAAM,Y,yBAMRA,MAAM,W,SAEJA,MAAM,SAASE,IAAI,U,sEAUfF,MAAM,6B,GACJA,MAAM,S,WAAQ,gB,qBAIdA,MAAM,Y,yBAOVA,MAAM,eAAeE,IAAI,e,GAEnBF,MAAM,S,wCAINA,MAAM,S,wCAINA,MAAM,iB,iBAGT,OAA0B,KAAvBA,MAAM,gBAAc,S,GAAvB,G,SAMHA,MAAM,a,GAEP,OAAyB,KAAtBA,MAAM,eAAa,S,GAAtB,G,SAKDA,MAAM,iC,GACJA,MAAM,S,WAAQ,gB,qBAIdA,MAAM,Y,mBAOVA,MAAM,oB,sDAQNA,MAAM,a,uCAKP,OAAyB,KAAtBA,MAAM,eAAa,S,IAAtB,I,UAICA,MAAM,oB,yDASZA,MAAM,wB,IACT,OAA0C,OAArCA,MAAM,SAAQ,qBAAiB,G,mBAI3BA,MAAM,Q,uBAEJA,MAAM,iC,oBAGP,OAAyB,KAAtBA,MAAM,eAAa,S,IAAtB,I,UAKDA,MAAM,U,4HA7InB,QA0JM,MA1JN,EA0JM,CAzJW,EAAAG,UAAA,WAAf,QAA0B,cAA1B,gBACA,OA0HM,MA1HN,EA0HM,CAzHJ,GACA,OAuHO,QAvHDH,MAAM,cAAcE,IAAI,aAAaE,aAAa,MAAO,SAAM,8BAAU,EAAAC,eAAA,EAAAA,iBAAA,IAAa,eAA5F,EACE,OAOM,MAPN,EAOM,EANJ,OACoE,SAD7DC,KAAK,QAAQC,GAAG,0BACfC,QAAS,EAAAC,gBAAkB,SAAM,eAAE,EAAAC,mBAAiB,KAD5D,WAEA,GACA,OACsE,SAD/DJ,KAAK,QAAQC,GAAG,mBACfC,SAAU,EAAAC,gBAAkB,SAAM,eAAE,EAAAC,mBAAiB,KAD7D,WAEA,KAGF,OA2FM,OA3FDV,OAAK,SAAC,6BAAqC,EAAAS,gBAAe,eAA/D,EACE,OAMM,MANN,EAMM,EALJ,OAIQ,wBAHN,OAEyD,SAFlDP,IAAI,aAAaI,KAAK,OAAON,MAAM,cACnCW,YAAY,cAAeC,SAAU,EAAAC,Q,qCAAkB,EAAAC,OAAOC,KAAI,GACjE,SAAM,eAAE,EAAAC,eAAa,GAAQ,OAAI,oBAAE,EAAAC,cAAA,EAAAA,gBAAA,KAF3C,kBAC8D,EAAAH,OAAOC,aAIzE,OAGS,UAHDT,KAAK,SAASN,MAAM,sBACzBY,SAAU,EAAAC,UAAY,EAAAC,QAAQC,MAAMG,OAAQC,MAAM,OADrD,OAKiC,EAAAC,cAAA,WAAjC,QASM,MATN,EASM,CARJ,GAIA,OAGM,MAHN,EAGM,CAFW,EAAAC,aAAA,WAAf,QAA6B,eAA7B,WACA,QAAoC,Q,MAA9B,UAAQ,EAAAD,aAAd,iBAPJ,eAW2B,EAAAN,OAAOC,QAAQ,EAAAO,UAAYC,OAAOC,KAAK,EAAAV,OAAOW,MAAMP,QAAwB,SAAO,qBAAnF,WAA3B,QA4DM,MA5DN,EA4DM,CAzDOK,OAAOC,KAAK,EAAAV,OAAOW,MAAMP,QAAU,EAAAJ,OAAOY,oBAAA,WADrD,QA8CM,MA9CN,EA8CM,gBA5CJ,QAkBM,mBAlBwCH,OAAOC,KAAK,EAAAV,OAAOW,OAA3BV,K,WAAtC,QAkBM,OAlBDf,MAAM,QAAS2B,IAAKZ,GAAzB,EACE,OAKQ,wBAJN,OAG4B,SAHrBT,KAAK,OAAON,MAAM,qBAAsBY,SAAU,EAAAC,QACjDF,YAAaI,E,yBAAe,EAAAD,OAAOW,KAAKV,GAAMa,MAAK,EACnD,QAAK,GAAE,EAAAC,cAAcd,GACrB,OAAI,oBAAE,EAAAe,cAAA,EAAAA,gBAAA,KAHd,kBACoC,EAAAhB,OAAOW,KAAKV,GAAMa,WAKX,EAAAG,iBAAmB,EAAAC,eAAiBjB,IAAA,WAAjF,QASM,MATN,EASM,EARJ,OAEM,MAFN,EAEM,IADO,OAA+C,OAA1Cf,MAAM,Y,aAAY,QAAqB,EAAD,eAA3C,aAGb,OAGM,MAHN,EAGM,CAFW,EAAAqB,aAAA,WAAf,QAA6B,eAA7B,WACA,QAAwC,Q,MAAlC,UAAQ,EAAAU,iBAAd,iBAPJ,oBARF,MAoBkDR,OAAOC,KAAK,EAAAV,OAAOmB,WAAWf,SAAA,WAAhF,QAiBM,MAjBN,EAiBM,gBAhBJ,QAeM,mBAf8CK,OAAOC,KAAK,EAAAV,OAAOmB,YAAxBC,K,WAA/C,QAeM,OAfDlC,MAAM,oBAAqB2B,IAAKO,GAArC,EACE,OAGQ,QAHR,EAGQ,WAFN,OAC6D,SADtD5B,KAAK,OAAON,MAAM,0BAA2BY,SAAU,EAAAC,QACvDF,YAAY,O,yBAAgB,EAAAG,OAAOmB,UAAUC,GAAGnB,KAAI,GAD3D,iBACmC,EAAAD,OAAOmB,UAAUC,GAAGnB,WAEzD,OAGQ,QAHR,EAGQ,WAFN,OAC+D,SADxDT,KAAK,OAAON,MAAM,2BAA4BY,SAAU,EAAAC,QACxDF,YAAY,Q,yBAAiB,EAAAG,OAAOmB,UAAUC,GAAGN,MAAK,GAD7D,iBACoC,EAAAd,OAAOmB,UAAUC,GAAGN,YAE1D,OAKQ,QALR,EAKQ,EAJN,OAGS,UAHDtB,KAAK,SAASN,MAAM,yBAAyBmB,MAAM,mBAClD,QAAK,GAAE,EAAAgB,gBAAgBD,IADhC,cAVJ,OADF,sBAmB6B,EAAApB,OAAOY,oBAAA,WAApC,QAIM,MAJN,EAIM,EAHJ,OAES,UAFDpB,KAAK,SAASa,MAAM,kBAAmB,QAAK,oBAAE,EAAAiB,cAAA,EAAAA,gBAAA,KAAtD,OADF,gBAzCF,sBAgDiD,EAAAL,kBAAA,WAAjD,QASM,MATN,EASM,EARJ,OAEM,MAFN,EAEM,IADO,OAA+C,OAA1C/B,MAAM,Y,aAAY,QAAqB,EAAD,eAA3C,aAGb,OAGM,MAHN,EAGM,CAFW,EAAAqB,aAAA,WAAf,QAA6B,eAA7B,WACA,QAAwC,Q,MAAlC,UAAQ,EAAAU,iBAAd,iBAPJ,mBAlDF,gBA8DA,OAIM,MAJN,EAIM,CAHsE,MAAL,EAAAM,OAAyB,MAAR,EAAAC,WAAQ,WAA9F,QAA0G,O,MAArGtC,MAAM,Q,aAAQ,QAAa,MAA8B,EAA9B,yBAAhC,2BACsD,MAAR,EAAAsC,WAAQ,WAAtD,QAAkE,O,MAA7DtC,MAAM,WAAW,UAAQ,EAAAsC,UAA9B,WACkD,MAAL,EAAAD,QAAK,WAAlD,QAA8D,O,MAAzDrC,MAAM,QAAQ,UAAQ,EAAAqC,OAA3B,8BAzFJ,IA6FA,OAeM,OAfDrC,OAAK,SAAC,sBAA8B,EAAAS,gBAAe,eAAxD,EACE,OAOM,MAPN,GAOM,EANJ,OAEQ,wBADN,OAAsF,Y,qCAAnE,EAAA8B,WAAU,GAAErC,IAAI,YAAaS,YAAa,EAAA6B,uBAA7D,kBAAmB,EAAAD,iBAErB,OAES,UAFDjC,KAAK,SAAUM,SAAU,EAAAC,QAASb,MAAM,sBAAsBmB,MAAM,OAA5E,WAK0C,MAAR,EAAAmB,UAAyB,MAAL,EAAAD,QAAK,WAA7D,QAIM,MAJN,GAIM,EAHJ,OAAiE,OAA5DrC,MAAM,Q,aAAQ,QAAa,MAA8B,EAA9B,yBAAhC,WAC6C,MAAL,EAAAqC,QAAK,WAA7C,QAAyD,O,MAApDrC,MAAM,QAAQ,UAAQ,EAAAqC,OAA3B,YAC2D,MAAR,EAAAC,WAAQ,WAA3D,QAAuE,O,MAAlEtC,MAAM,WAAW,UAAQ,EAAAsC,UAA9B,gCAHF,gBAVF,IAvGF,QA0HF,OA2BM,MA3BN,GA2BM,CA1BJ,KA0BI,aAzBJ,QAwBM,mBAvBcf,OAAOC,KAAK,EAAAiB,YAAYC,QAAhC3B,K,WADZ,QAwBM,OAxBDf,OAAK,SAAC,YAAoB,EAAA2C,kBAAkB5B,OAASA,EAAI,gBACTY,IAAKZ,EAAO,QAAK,GAAE,EAAA6B,gBAAgB7B,EAAM8B,IAD9F,EAEE,OAqBO,Q,WArBD3C,IAAI,gBAAgBE,aAAa,MAAO,SAAM,gCAAU,EAAA0C,kBAAA,EAAAA,oBAAA,IAAgB,eAA9E,EACE,OAQM,MARN,GAQM,EAPJ,OAAmD,OAA9C9C,MAAM,wB,aAAwB,QAAY,IAA/C,YACA,OAKM,MALN,GAKM,CAHwC,EAAA2C,kBAAkB5B,OAASA,IAAA,WADvE,QAGS,U,MAHDT,KAAK,SAASN,MAAM,sBAAuBY,SAAU,EAAAC,QAASM,MAAM,MACnE,QAAK,yBAAO,EAAA4B,MAAK,uBAD1B,8BAOsB,EAAAJ,kBAAkB5B,OAASA,IAAA,WAArD,QASM,MATN,GASM,gBARJ,QAOM,mBANiBQ,OAAOC,KAAK,EAAAmB,kBAAkBlB,OAAzCuB,K,WADZ,QAOM,OAPDhD,MAAM,QAEL2B,IAAKqB,GAFX,EAGE,OAGQ,wBAFN,OACwE,SADjE1C,KAAK,OAAON,MAAM,qBAAsB,QAAK,iBAAE6C,EAAOI,mBAAoBrC,SAAU,EAAAC,QACnFF,YAAaqC,E,yBAAkB,EAAAL,kBAAkBlB,KAAKuB,GAAO,GADrE,kBACuC,EAAAL,kBAAkBlB,KAAKuB,aALlE,UADF,gBAXF,MAFF,mB,CCjIN,SAAS5C,GAAa8C,EAAKC,EAAKC,GAG5B,IAAIC,EAyFJ,SAASC,EAAUC,GAEf,IAAKA,EAAG,OAAO,EAEfC,EAAaD,GACTF,GAAgBE,EAAErC,SAAQmC,EAAe,GACzCA,EAAe,IAAGA,EAAgBE,EAAErC,OAAS,GAEjDqC,EAAEF,GAAcI,UAAUC,IAAI,sBACjC,CAED,SAASF,EAAaD,GAElB,IAAK,IAAIrB,EAAI,EAAGA,EAAIqB,EAAErC,OAAQgB,IAC1BqB,EAAErB,GAAGuB,UAAUE,OAAO,sBAE7B,CAED,SAASC,EAAcC,GAGnB,MAAMN,EAAIO,SAASC,uBAAuB,sBAC1C,IAAK,IAAI7B,EAAI,EAAGA,EAAIqB,EAAErC,OAAQgB,IACtB2B,IAAUN,EAAErB,IAAM2B,IAAUX,GAC5BK,EAAErB,GAAG8B,WAAWC,YAAYV,EAAErB,GAGzC,CAjHDgB,EAAIgB,iBAAiB,SAAS,WAC1B,IAAIC,EAAGC,EAAGlC,EAAGmC,EAAMC,KAAK1C,MAGxB,GADAgC,KACKS,EACH,OAAO,EAcT,IAXAhB,GAAgB,EAGhBc,EAAIL,SAASS,cAAc,OAC3BJ,EAAEK,aAAa,KAAMF,KAAK/D,GAAK,qBAC/B4D,EAAEK,aAAa,QAAS,sBAGxBF,KAAKN,WAAWS,YAAYN,GAGvBjC,EAAI,EAAGA,EAAIiB,EAAIjC,OAAQgB,IAEpBiB,EAAIjB,GAAGwC,OAAO,EAAGL,EAAInD,QAAQyD,gBAAkBN,EAAIM,gBAEnDP,EAAIN,SAASS,cAAc,OAE3BH,EAAEQ,UAAY,WAAazB,EAAIjB,GAAGwC,OAAO,EAAGL,EAAInD,QAAU,YAC1DkD,EAAEQ,WAAazB,EAAIjB,GAAGwC,OAAOL,EAAInD,QAEjCkD,EAAEQ,WAAa,+BAAiCzB,EAAIjB,GAAK,KAEzDkC,EAAEF,iBAAiB,SAAS,SAASW,GAEjC3B,EAAItB,MAAQ0C,KAAKQ,qBAAqB,SAAS,GAAGlD,MAE9CwB,GACAA,EAASyB,EAAG3B,EAAItB,OAIpBgC,GACH,IACDO,EAAEM,YAAYL,GAGzB,IAEDlB,EAAIgB,iBAAiB,SAAS,SAASW,GAC/B,CAAC,UAAW,YAAa,MAAO,SAASE,QAAQF,EAAElD,MAAQ,GAC3DkD,EAAE5B,kBAGQ,UAAV4B,EAAElD,KACF2C,KAAKU,MAEZ,IAGD9B,EAAIgB,iBAAiB,WAAW,SAASW,GACrC,IAAItB,EAAIO,SAASmB,eAAeX,KAAK/D,GAAK,qBACtCgD,IAAGA,EAAIA,EAAEuB,qBAAqB,QACpB,cAAVD,EAAElD,KAAkC,QAAVkD,EAAElD,MAAkBkD,EAAEK,UAGhD7B,IAEAC,EAAUC,GACVsB,EAAEM,kBACe,YAAVN,EAAElD,KAAgC,QAAVkD,EAAElD,KAAiBkD,EAAEK,UAGpD7B,IAEAC,EAAUC,GACVsB,EAAEM,kBACe,UAAVN,EAAElD,KAEL0B,GAAgB,GAAKE,GAAKA,EAAErC,SAC5B2D,EAAEM,iBAEF5B,EAAEF,GAAc+B,QAEhBd,KAAKe,QAGhB,IAgCDvB,SAASI,iBAAiB,SAAS,SAAUW,GACzCjB,EAAciB,EAAES,OACnB,GACJ,CAED,U,sBDoCA,IACEvE,KAAM,UACNwE,WAAY,CAACC,QAAO,MACpBC,OAAQ,CAACC,GAAA,GAETC,OACE,MAAO,CACLxF,SAAS,EACTU,SAAS,EACTQ,YAAY,EACZZ,iBAAiB,EACjBO,eAAe,EACfI,iBAAawE,EACb5D,kBAAc4D,EACd7D,qBAAiB6D,EACjBjD,kBAAmB,CACjB5B,UAAM6E,EACNnE,KAAM,CAAC,GAGTa,cAAUsD,EACVvD,WAAOuD,EACPrD,gBAAYqD,EACZpD,sBAAuB,kGAEvBlB,QAAS,CAAC,EACVuE,QAAS,CAAC,EACVpD,WAAY,CAAC,EACbqD,gBAAiB,CAAC,EAClBhF,OAAQ,CACNC,UAAM6E,EACNnE,KAAM,CAAC,EACPQ,UAAW,GACXP,mBAAmB,GAGxB,EAEDqE,QAAS,CACPC,gBACE1B,KAAKnE,SAAU,EAEf,IACEmE,KAAK7B,iBAAmB6B,KAAK2B,QAAQ,0BACrC3B,KAAKuB,cAAgBvB,KAAK2B,QAAQ,0BAGpC,CALA,QAIE3B,KAAKnE,SAAU,CACjB,CAEA,IAAK,MAAM+F,KAAU3E,OAAO4E,OAAO7B,KAAKuB,SACtC,IAAK,MAAM/E,KAAUS,OAAO4E,OAAOD,EAAO5E,SACxCR,EAAOC,KAAOmF,EAAOnF,KAAO,IAAMD,EAAOC,KACzCD,EAAOY,oBAAsBZ,EAAOsF,kBAC7BtF,EAAOsF,WACd9B,KAAKhD,QAAQR,EAAOC,MAAQD,EAIhC,MAAMuF,EAAO/B,KACb,GAAaA,KAAKgC,MAAMC,WAAYhF,OAAOC,KAAK8C,KAAKhD,SAASoB,QAAQ,CAAC8D,EAAG5E,KACxE0C,KAAKxD,OAAOC,KAAOa,EACnByE,EAAKpF,cAAL,GAEH,EAED+E,qBAIE,GAHM1B,KAAKxD,OAAOC,QAAQuD,KAAKhD,UAC7BgD,KAAKlD,iBAAcwE,GAEhBtB,KAAKtD,eAAmBsD,KAAKxD,OAAOC,QAAQuD,KAAKhD,QAAtD,CAGAgD,KAAKjD,YAAa,EAClB,IACEiD,KAAKxD,OAAS,IACTwD,KAAKhD,QAAQgD,KAAKxD,OAAOC,MAC5BU,KAAMF,OAAOkF,QAAQnC,KAAKhD,QAAQgD,KAAKxD,OAAOC,MAAMU,MAAMiF,QAAO,CAACjF,EAAMkF,KACtElF,EAAKkF,EAAM,IAAM,IACZA,EAAM,GACT/E,MAAO+E,EAAM,GAAGC,SAGXnF,IACN,CAAC,GACJQ,UAAW,GAIf,CAfA,QAcEqC,KAAKjD,YAAa,CACpB,CAEAiD,KAAKlD,YACHkD,KAAKwB,gBAAgBxB,KAAKxD,OAAOC,OAAO8F,YAClCvC,KAAKwC,SAASxC,KAAKxD,OAAOiG,KAE7BzC,KAAKwB,gBAAgBxB,KAAKxD,OAAOC,QACpCuD,KAAKwB,gBAAgBxB,KAAKxD,OAAOC,MAAQ,CAAC,GAC5CuD,KAAKwB,gBAAgBxB,KAAKxD,OAAOC,MAAM8F,KAAOvC,KAAKlD,YAEnDkD,KAAKtD,eAAgB,EACrBsD,KAAKhC,cAAWsD,EAChBtB,KAAKjC,WAAQuD,CA9BL,CA+BT,EAEDI,eAAegB,GACb,OAAKA,GAAW9F,aAGHoD,KAAK2B,QAAQ,oBAAqB,CAACgB,KAAMD,IAF7CA,CAGV,EAEDpE,gBAAgB7B,EAAMmG,GACsB,WAAtCA,EAAM5B,OAAO6B,aAAa,UAI1B7C,KAAK3B,kBAAkB5B,OAASA,EAS9BA,KAAQuD,KAAK7B,WAKnB6B,KAAK3B,kBAAoB,CACvB5B,KAAMA,EACNU,MAAO6C,KAAK7B,WAAW1B,GAAMU,MAAQ,IAAIiF,QAAO,CAACjF,EAAM2F,KACrD3F,EAAK2F,QAAOxB,EACLnE,IACN,CAAC,IATJ4F,QAAQC,KAAK,wBAA0BvG,GATvCuD,KAAK3B,kBAAoB,CACvB5B,UAAM6E,EACNnE,KAAM,CAAC,GAkBZ,EAEDW,eACEkC,KAAKxD,OAAOmB,UAAUsF,KAAK,CACzBxG,UAAM6E,EACNhE,WAAOgE,GAEV,EAEDzD,gBAAgBD,GACdoC,KAAKxD,OAAOmB,UAAUuF,IAAItF,EAC3B,EAED8D,oBAAoBjF,GAClBuD,KAAKtC,aAAejB,EACpBuD,KAAKvC,gBACHuC,KAAKwB,gBAAgBxB,KAAKxD,OAAOC,QAAQA,IAAO8F,YAC1CvC,KAAKwC,SAASxC,KAAKxD,OAAOW,KAAKV,GAAMgG,KAExCzC,KAAKwB,gBAAgBxB,KAAKxD,OAAOC,QACpCuD,KAAKwB,gBAAgBxB,KAAKxD,OAAOC,MAAQ,CAAC,GAE5CuD,KAAKwB,gBAAgBxB,KAAKxD,OAAOC,MAAMA,GAAQ,CAAC8F,KAAMvC,KAAKvC,gBAC5D,EAEDD,eACEwC,KAAKhC,cAAWsD,EAChBtB,KAAKjC,WAAQuD,EACbtB,KAAKtC,kBAAe4D,EACpBtB,KAAKvC,qBAAkB6D,CACxB,EAEDlF,kBAAkBD,GAChB6D,KAAK7D,gBAAkBA,EACvB6D,KAAKhC,cAAWsD,EAChBtB,KAAKjC,WAAQuD,EACbtB,KAAKmD,WAAU,KACThH,EACF6D,KAAKgC,MAAMC,WAAWlB,QAEtBf,KAAKgC,MAAMoB,UAAUrC,OACvB,GAEH,EAEDsC,WAAWrF,GACTgC,KAAKhC,SAAW,QAAUsF,KAAKC,UAAUvF,EAAU,KAAM,GAAK,SAC9DgC,KAAKjC,WAAQuD,CACd,EAEDkC,QAAQzF,GACNiC,KAAKhC,cAAWsD,EAChBtB,KAAKjC,MAAQA,CACd,EAED0F,SACEzD,KAAKzD,SAAU,CAChB,EAEDR,gBACE,IAAKiE,KAAKxD,OAAOC,MAASuD,KAAK/B,cAAc+B,KAAKzD,QAIlD,GADAyD,KAAKzD,SAAU,EACXyD,KAAK7D,gBAAiB,CACxB,MAAMgB,EAAO,IACRF,OAAOkF,QAAQnC,KAAKxD,OAAOW,MAAMiF,QAAO,CAACjF,EAAMuG,KAChD,GAAsB,MAAlBA,EAAM,GAAGpG,MAAe,CAC1B,IAAIA,EAAQoG,EAAM,GAAGpG,MACrB,IACEA,EAAQgG,KAAKK,MAAMrG,EAIrB,CAHE,MAAOiD,GACPwC,QAAQa,MAAM,0BACdb,QAAQa,MAAMtG,EAChB,CAEAH,EAAKuG,EAAM,IAAMpG,CACnB,CACA,OAAOH,CAAP,GACC,CAAC,MAED6C,KAAKxD,OAAOmB,UAAUyE,QAAO,CAACjF,EAAMuG,KACrC,IAAIpG,EAAQH,EAAKuG,EAAMpG,OACvB,IACEA,EAAQgG,KAAKK,MAAMrG,EAIrB,CAHE,MAAOiD,GACPwC,QAAQa,MAAM,0BACdb,QAAQa,MAAMtG,EAChB,CAGA,OADAH,EAAKuG,EAAMjH,MAAQa,EACZH,CAAP,GACC,CAAC,IAGN6C,KAAK2B,QAAQ3B,KAAKxD,OAAOC,KAAMU,GAAM0G,KAAK7D,KAAKqD,YAAYS,MAAM9D,KAAKwD,SAASO,QAAQ/D,KAAKyD,OAC9F,MACE,IACE,MAAM9B,EAAU2B,KAAKK,MAAM3D,KAAK/B,YAChC+B,KAAKgE,QAAQrC,GAASkC,KAAK7D,KAAKqD,YAAYS,MAAM9D,KAAKwD,SAASO,QAAQ/D,KAAKyD,OAO/E,CANE,MAAOlD,GACPP,KAAKiE,OAAO,CACVlG,OAAO,EACPlB,MAAO,uBACP8F,KAAMpC,EAAE2D,YAEZ,CAEH,EAED1F,iBAAiBoE,GACf,IAAK5C,KAAK3B,kBAAkB5B,MAAQuD,KAAKzD,QACvC,OAEFqG,EAAMjE,kBACNqB,KAAKzD,SAAU,EACf,MAAMY,EAAO,IACRF,OAAOkF,QAAQnC,KAAK3B,kBAAkBlB,MAAMiF,QAAO,CAACjF,EAAMuG,KAC3D,GAAgB,MAAZA,EAAM,GAAY,CACpB,IAAIpG,EAAQoG,EAAM,GAClB,IACEpG,EAAQgG,KAAKK,MAAMrG,EAIrB,CAHE,MAAOiD,GACPwC,QAAQa,MAAM,0BACdb,QAAQa,MAAMtG,EAChB,CAEAH,EAAKuG,EAAM,IAAMpG,CACnB,CACA,OAAOH,CAAP,GACC,CAAC,IAGN6C,KAAK2B,QAAQ,aAAe3B,KAAK3B,kBAAkB5B,KAAMU,GACpD0G,KAAK7D,KAAKqD,YAAYS,MAAM9D,KAAKwD,SAASO,QAAQ/D,KAAKyD,OAC7D,GAGHU,UACEnE,KAAKmD,WAAU,KACbnD,KAAKgC,MAAMC,WAAWlB,OAAtB,IAGFf,KAAKoE,SACN,G,WEpbH,MAAMC,IAA2B,QAAgB,GAAQ,CAAC,CAAC,SAASC,MAEpE,S","sources":["webpack://platypush/./src/components/panels/Execute/Index.vue","webpack://platypush/./src/components/elements/Autocomplete.js","webpack://platypush/./src/components/panels/Execute/Index.vue?99e5"],"sourcesContent":["\n\n\n\n\n\n\n\n","function autocomplete(inp, arr, listener) {\n /*the autocomplete function takes two arguments,\n the text field element and an array of possible autocompleted values:*/\n let currentFocus;\n\n /*execute a function when someone writes in the text field:*/\n inp.addEventListener(\"input\", function() {\n let a, b, i, val = this.value;\n /*close any already open lists of autocompleted values*/\n closeAllLists();\n if (!val) {\n return false;\n }\n\n currentFocus = -1;\n\n /*create a DIV element that will contain the items (values):*/\n a = document.createElement(\"DIV\");\n a.setAttribute(\"id\", this.id + \"autocomplete-list\");\n a.setAttribute(\"class\", \"autocomplete-items\");\n\n /*append the DIV element as a child of the autocomplete container:*/\n this.parentNode.appendChild(a);\n\n /*for each item in the array...*/\n for (i = 0; i < arr.length; i++) {\n /*check if the item starts with the same letters as the text field value:*/\n if (arr[i].substr(0, val.length).toUpperCase() === val.toUpperCase()) {\n /*create a DIV element for each matching element:*/\n b = document.createElement(\"DIV\");\n /*make the matching letters bold:*/\n b.innerHTML = \"\" + arr[i].substr(0, val.length) + \"\";\n b.innerHTML += arr[i].substr(val.length);\n /*insert a input field that will hold the current array item's value:*/\n b.innerHTML += \"\";\n /*execute a function when someone clicks on the item value (DIV element):*/\n b.addEventListener(\"click\", function(e) {\n /*insert the value for the autocomplete text field:*/\n inp.value = this.getElementsByTagName(\"input\")[0].value;\n /*trigger event listener if any:*/\n if (listener) {\n listener(e, inp.value);\n }\n /*close the list of autocompleted values,\n (or any other open lists of autocompleted values:*/\n closeAllLists();\n });\n a.appendChild(b);\n }\n }\n });\n\n inp.addEventListener(\"keyup\", function(e) {\n if ([\"ArrowUp\", \"ArrowDown\", \"Tab\", \"Enter\"].indexOf(e.key) >= 0) {\n e.stopPropagation();\n }\n\n if (e.key === \"Enter\") {\n this.blur();\n }\n });\n\n /*execute a function presses a key on the keyboard:*/\n inp.addEventListener(\"keydown\", function(e) {\n let x = document.getElementById(this.id + \"autocomplete-list\");\n if (x) x = x.getElementsByTagName(\"div\");\n if (e.key === 'ArrowDown' || (e.key === 'Tab' && !e.shiftKey)) {\n /*If the arrow DOWN key is pressed,\n increase the currentFocus variable:*/\n currentFocus++;\n /*and and make the current item more visible:*/\n addActive(x);\n e.preventDefault();\n } else if (e.key === 'ArrowUp' || (e.key === 'Tab' && e.shiftKey)) { //up\n /*If the arrow UP key is pressed,\n decrease the currentFocus variable:*/\n currentFocus--;\n /*and and make the current item more visible:*/\n addActive(x);\n e.preventDefault();\n } else if (e.key === 'Enter') {\n /*If the ENTER key is pressed, prevent the form from being submitted,*/\n if (currentFocus > -1 && x && x.length) {\n e.preventDefault();\n /*and simulate a click on the \"active\" item:*/\n x[currentFocus].click();\n /*and restore the focus on the input element:*/\n this.focus();\n }\n }\n });\n\n function addActive(x) {\n /*a function to classify an item as \"active\":*/\n if (!x) return false;\n /*start by removing the \"active\" class on all items:*/\n removeActive(x);\n if (currentFocus >= x.length) currentFocus = 0;\n if (currentFocus < 0) currentFocus = (x.length - 1);\n /*add class \"autocomplete-active\":*/\n x[currentFocus].classList.add(\"autocomplete-active\");\n }\n\n function removeActive(x) {\n /*a function to remove the \"active\" class from all autocomplete items:*/\n for (let i = 0; i < x.length; i++) {\n x[i].classList.remove(\"autocomplete-active\");\n }\n }\n\n function closeAllLists(elmnt) {\n /*close all autocomplete lists in the document,\n except the one passed as an argument:*/\n const x = document.getElementsByClassName(\"autocomplete-items\");\n for (let i = 0; i < x.length; i++) {\n if (elmnt !== x[i] && elmnt !== inp) {\n x[i].parentNode.removeChild(x[i]);\n }\n }\n }\n\n /*execute a function when someone clicks in the document:*/\n document.addEventListener(\"click\", function (e) {\n closeAllLists(e.target);\n });\n}\n\nexport default autocomplete;\n","import { render } from \"./Index.vue?vue&type=template&id=0834968c\"\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=0834968c&lang=scss\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__"],"names":["class","for","ref","loading","autocomplete","executeAction","type","id","checked","structuredInput","onInputTypeChange","placeholder","disabled","running","action","name","actionChanged","updateAction","length","title","selectedDoc","docLoading","actions","Object","keys","args","supportsExtraArgs","key","value","selectAttrDoc","resetAttrDoc","selectedAttrDoc","selectedAttr","extraArgs","i","removeParameter","addParameter","error","response","rawRequest","rawRequestPlaceholder","procedures","sort","selectedProcedure","updateProcedure","$event","executeProcedure","$emit","argname","stopPropagation","inp","arr","listener","currentFocus","addActive","x","removeActive","classList","add","remove","closeAllLists","elmnt","document","getElementsByClassName","parentNode","removeChild","addEventListener","a","b","val","this","createElement","setAttribute","appendChild","substr","toUpperCase","innerHTML","e","getElementsByTagName","indexOf","blur","getElementById","shiftKey","preventDefault","click","focus","target","components","Loading","mixins","Utils","data","undefined","plugins","actionDocsCache","methods","async","request","plugin","values","has_kwargs","self","$refs","actionName","_","entries","reduce","entry","default","html","parseDoc","doc","docString","text","event","getAttribute","arg","console","warn","push","pop","$nextTick","rawAction","onResponse","JSON","stringify","onError","onDone","param","parse","debug","then","catch","finally","execute","notify","toString","mounted","refresh","__exports__","render"],"sourceRoot":""} \ No newline at end of file diff --git a/platypush/backend/http/webapp/dist/static/js/app-legacy.c5f79599.js b/platypush/backend/http/webapp/dist/static/js/app-legacy.9462d538.js similarity index 97% rename from platypush/backend/http/webapp/dist/static/js/app-legacy.c5f79599.js rename to platypush/backend/http/webapp/dist/static/js/app-legacy.9462d538.js index f94c1d190..a1b1f0e5a 100644 --- a/platypush/backend/http/webapp/dist/static/js/app-legacy.c5f79599.js +++ b/platypush/backend/http/webapp/dist/static/js/app-legacy.9462d538.js @@ -1,2 +1,2 @@ -(function(){var e={5250:function(e,t,n){"use strict";n.d(t,{$:function(){return i}});var s=n(9652),i=(0,s.Z)();i.publishEntity=function(e){i.emit("entity-update",e)},i.onEntity=function(e){i.on("entity-update",e)},i.publishNotification=function(e){i.emit("notification-create",e)},i.onNotification=function(e){i.on("notification-create",e)}},5360:function(e,t,n){"use strict";n(6992),n(8674),n(9601),n(7727);var s=n(9963),i=n(6252),r=(0,i.Uk)(" Would you like to install this application locally? ");function a(e,t,n,s,a,o){var l=(0,i.up)("Events"),c=(0,i.up)("Notifications"),u=(0,i.up)("VoiceAssistant"),d=(0,i.up)("Pushbullet"),f=(0,i.up)("Ntfy"),p=(0,i.up)("ConfirmDialog"),m=(0,i.up)("router-view");return(0,i.wg)(),(0,i.iD)(i.HY,null,[o.hasWebsocket?((0,i.wg)(),(0,i.j4)(l,{key:0,ref:"events"},null,512)):(0,i.kq)("",!0),(0,i.Wm)(c,{ref:"notifications"},null,512),o.hasAssistant?((0,i.wg)(),(0,i.j4)(u,{key:1,ref:"voice-assistant"},null,512)):(0,i.kq)("",!0),o.hasPushbullet?((0,i.wg)(),(0,i.j4)(d,{key:2,ref:"pushbullet"},null,512)):(0,i.kq)("",!0),o.hasNtfy?((0,i.wg)(),(0,i.j4)(f,{key:3,ref:"ntfy"},null,512)):(0,i.kq)("",!0),(0,i.Wm)(p,{ref:"pwaDialog",onInput:o.installPWA},{default:(0,i.w5)((function(){return[r]})),_:1},8,["onInput"]),(0,i.Wm)(m)],64)}var o=n(8534),l=(n(5666),n(6960)),c=(n(9254),{class:"notifications"});function u(e,t,n,s,r,a){var o=(0,i.up)("Notification");return(0,i.wg)(),(0,i.iD)("div",c,[((0,i.wg)(!0),(0,i.iD)(i.HY,null,(0,i.Ko)(e.notifications,(function(e,t,n){return(0,i.wg)(),(0,i.j4)(o,{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))])}n(9653);var d=n(3577),f=["textContent"],p={class:"body"},m={key:0,class:"image col-3"},h={class:"row"},g=["src"],v={key:3,class:"fa fa-exclamation"},b={key:4,class:"fa fa-times"},w=["textContent"],y=["innerHTML"],k=["textContent"],x=["innerHTML"];function _(e,t,n,s,r,a){return(0,i.wg)(),(0,i.iD)("div",{class:(0,d.C_)(["notification fade-in",{warning:n.warning,error:n.error}]),onClick:t[0]||(t[0]=function(){return a.clicked&&a.clicked.apply(a,arguments)})},[n.title?((0,i.wg)(),(0,i.iD)("div",{key:0,class:"title",textContent:(0,d.zw)(n.title)},null,8,f)):(0,i.kq)("",!0),(0,i._)("div",p,[n.image||n.warning||n.error?((0,i.wg)(),(0,i.iD)("div",m,[(0,i._)("div",h,[n.image&&n.image.src?((0,i.wg)(),(0,i.iD)("img",{key:0,src:n.image.src,alt:""},null,8,g)):n.image&&n.image.icon?((0,i.wg)(),(0,i.iD)("i",{key:1,class:(0,d.C_)(["fa","fa-"+n.image.icon]),style:(0,d.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,d.C_)(n.image.iconClass),style:(0,d.j5)(n.image.color?"--color: "+n.image.color:"")},null,6)):n.warning?((0,i.wg)(),(0,i.iD)("i",v)):n.error?((0,i.wg)(),(0,i.iD)("i",b)):(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,d.zw)(n.text)},null,8,w)):(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,d.zw)(n.text)},null,8,k)):(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,x)):(0,i.kq)("",!0)])],2)}var C={name:"Notification",props:["id","text","html","title","image","link","error","warning"],methods:{clicked:function(){this.link&&window.open(this.link,"_blank"),this.$emit("clicked",this.id)}}},D=n(3744);const I=(0,D.Z)(C,[["render",_],["__scopeId","data-v-7646705e"]]);var T=I,Z={name:"Notifications",components:{Notification:T},props:{duration:{type:Number,default:1e4}},data:function(){return{index:0,notifications:{},timeouts:{}}},methods:{create:function(e){var t=this.index++;this.notifications[t]=e,null==e.duration&&(e.duration=this.duration);var 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 S=(0,D.Z)(Z,[["render",u],["__scopeId","data-v-6dc8bebc"]]);var U=S,M=n(6813);function R(e,t,n,s,r,a){return(0,i.wg)(),(0,i.iD)("div")}var N=n(6347),P=n(9584),j=(n(2479),n(2222),n(7941),n(5250)),q={name:"Events",data:function(){return{ws:null,initialized:!1,pending:!1,opened:!1,timeout:null,reconnectMsecs:1e3,minReconnectMsecs:1e3,maxReconnectMsecs:3e4,handlers:{},handlerNameToEventTypes:{}}},methods:{onWebsocketTimeout:function(){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:function(e){var t=[];if(e=e.data,"string"===typeof e)try{e=JSON.parse(e)}catch(r){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.apply(t,(0,P.Z)(Object.values(this.handlers[e.args.type])));for(var n=0,s=t;n\n \n\n\nExecute Action\n \n\n\nExecute Procedure\n\n \n\nPlatypush',3),$e={key:0,class:"row"},We=je((function(){return(0,i._)("label",null,[(0,i._)("input",{type:"password",name:"confirm_password",placeholder:"Confirm password"})],-1)})),ze=[We],Le={class:"row buttons"},Ae=["value"],Ve=je((function(){return(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 Fe(e,t,n,s,r,a){return(0,i.wg)(),(0,i.iD)("div",qe,[(0,i._)("form",Oe,[Ee,a._register?((0,i.wg)(),(0,i.iD)("div",$e,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)]),Ve])])}var He={name:"Login",mixins:[M.Z],props:{register:{type:Boolean,required:!1,default:!1}},computed:{_register:function(){return this.parseBoolean(this.register)}}};const Be=(0,D.Z)(He,[["render",Fe],["__scopeId","data-v-af0b14d0"]]);var Ke=Be;function Ye(e,t,n,s,r,a){var o=(0,i.up)("Login");return(0,i.wg)(),(0,i.j4)(o,{register:!0})}var Ge={name:"Register",mixins:[Ke],components:{Login:Ke},props:{register:{type:Boolean,required:!1,default:!0}}};const Je=(0,D.Z)(Ge,[["render",Ye]]);var Xe=Je,Qe={key:2,class:"canvas"},et={class:"panel"},tt={key:3,class:"canvas"};function nt(e,t,n,s,r,a){var o=(0,i.up)("Loading"),l=(0,i.up)("Nav"),c=(0,i.up)("Settings");return(0,i.wg)(),(0,i.iD)("main",null,[r.loading?((0,i.wg)(),(0,i.j4)(o,{key:0})):((0,i.wg)(),(0,i.j4)(l,{key:1,panels:r.components,"selected-panel":r.selectedPanel,hostname:r.hostname,onSelect:t[0]||(t[0]=function(e){return r.selectedPanel=e})},null,8,["panels","selected-panel","hostname"])),"settings"===r.selectedPanel?((0,i.wg)(),(0,i.iD)("div",Qe,[(0,i._)("div",et,[(0,i.Wm)(c)])])):((0,i.wg)(),(0,i.iD)("div",tt,[((0,i.wg)(!0),(0,i.iD)(i.HY,null,(0,i.Ko)(r.components,(function(e,t){return(0,i.wg)(),(0,i.iD)("div",{class:(0,d.C_)(["panel",{hidden:t!==r.selectedPanel}]),key:t},[t===r.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))]))])}var st=n(6084),it=(n(4723),n(4747),n(9720),n(9600),n(7042),function(e){return(0,i.dD)("data-v-d9ea25f0"),e=e(),(0,i.Cn)(),e}),rt=it((function(){return(0,i._)("i",{class:"fas fa-bars"},null,-1)})),at=["textContent"],ot={class:"plugins"},lt=["title","onClick"],ct=["href"],ut={class:"icon"},dt=["src"],ft={key:2,class:"fas fa-puzzle-piece"},pt=["textContent"],mt={class:"footer"},ht={href:"/#settings"},gt=it((function(){return(0,i._)("span",{class:"icon"},[(0,i._)("i",{class:"fa fa-cog"})],-1)})),vt={key:0,class:"name"},bt={href:"/logout"},wt=it((function(){return(0,i._)("span",{class:"icon"},[(0,i._)("i",{class:"fas fa-sign-out-alt"})],-1)})),yt={key:0,class:"name"};function kt(e,t,n,s,r,a){return(0,i.wg)(),(0,i.iD)("nav",{class:(0,d.C_)({collapsed:r.collapsed})},[(0,i._)("div",{class:"toggler",onClick:t[0]||(t[0]=function(e){return r.collapsed=!r.collapsed})},[rt,n.hostname?((0,i.wg)(),(0,i.iD)("span",{key:0,class:"hostname",textContent:(0,d.zw)(n.hostname)},null,8,at)):(0,i.kq)("",!0)]),(0,i._)("ul",ot,[((0,i.wg)(!0),(0,i.iD)(i.HY,null,(0,i.Ko)(a.panelNames,(function(e){var t,s;return(0,i.wg)(),(0,i.iD)("li",{key:e,class:(0,d.C_)(["entry",{selected:e===n.selectedPanel}]),title:e,onClick:function(t){return a.onItemClick(e)}},[(0,i._)("a",{href:"/#".concat(e)},[(0,i._)("span",ut,[null!==(t=r.icons[e])&&void 0!==t&&t.class?((0,i.wg)(),(0,i.iD)("i",{key:0,class:(0,d.C_)(r.icons[e].class)},null,2)):null!==(s=r.icons[e])&&void 0!==s&&s.imgUrl?((0,i.wg)(),(0,i.iD)("img",{key:1,src:r.icons[e].imgUrl,alt:"name"},null,8,dt)):((0,i.wg)(),(0,i.iD)("i",ft))]),r.collapsed?(0,i.kq)("",!0):((0,i.wg)(),(0,i.iD)("span",{key:0,class:"name",textContent:(0,d.zw)("entities"==e?"Home":e)},null,8,pt))],8,ct)],10,lt)})),128))]),(0,i._)("ul",mt,[(0,i._)("li",{class:(0,d.C_)({selected:"settings"===n.selectedPanel}),title:"Settings",onClick:t[1]||(t[1]=function(e){return a.onItemClick("settings")})},[(0,i._)("a",ht,[gt,r.collapsed?(0,i.kq)("",!0):((0,i.wg)(),(0,i.iD)("span",vt,"Settings"))])],2),(0,i._)("li",{title:"Logout",onClick:t[2]||(t[2]=function(e){return a.onItemClick("logout")})},[(0,i._)("a",bt,[wt,r.collapsed?(0,i.kq)("",!0):((0,i.wg)(),(0,i.iD)("span",yt,"Logout"))])])])],2)}n(2707);var xt=n(1359),_t={name:"Nav",emits:["select"],mixins:[M.Z],props:{panels:{type:Object,required:!0},selectedPanel:{type:String},hostname:{type:String}},computed:{panelNames:function(){var e=Object.keys(this.panels),t=e.indexOf("entities");return t>=0?["entities"].concat(e.slice(0,t).concat(e.slice(t+1)).sort()):e.sort()},collapsedDefault:function(){return!(!this.isMobile()&&!this.isTablet())}},methods:{onItemClick:function(e){this.$emit("select",e),this.collapsed=!!this.isMobile()||this.collapsedDefault}},data:function(){return{collapsed:!0,icons:xt,host:null}},mounted:function(){this.collapsed=this.collapsedDefault}};const Ct=(0,D.Z)(_t,[["render",kt],["__scopeId","data-v-d9ea25f0"]]);var Dt=Ct,It=n(2715),Tt={name:"Panel",mixins:[M.Z],components:{Settings:It["default"],Nav:Dt,Loading:we.Z},data:function(){return{loading:!1,plugins:{},backends:{},procedures:{},components:{},hostname:void 0,selectedPanel:void 0}},methods:{initSelectedPanel:function(){var e=this.$route.hash.match("#?([a-zA-Z0-9.]+)[?]?(.*)"),t=e?e[1]:"entities";null!==t&&void 0!==t&&t.length&&(this.selectedPanel=t)},initPanels:function(){var e=this;this.components={},Object.entries(this.plugins).forEach(function(){var t=(0,o.Z)(regeneratorRuntime.mark((function t(s){var r,a,l,c,u,d;return regeneratorRuntime.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return r=(0,st.Z)(s,2),a=r[0],l=r[1],c=a.split(".").map((function(e){return e[0].toUpperCase()+e.slice(1)})).join(""),u=null,t.prev=3,t.next=6,n(3379)("./".concat(c,"/Index"));case 6:u=t.sent,t.next=12;break;case 9:return t.prev=9,t.t0=t["catch"](3),t.abrupt("return");case 12:d=(0,be.XI)((0,i.RC)((0,o.Z)(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){while(1)switch(e.prev=e.next){case 0:return e.abrupt("return",u);case 1:case"end":return e.stop()}}),e)}))))),e.$options.components[a]=d,e.components[a]={component:d,pluginName:a,config:l};case 15:case"end":return t.stop()}}),t,null,[[3,9]])})));return function(e){return t.apply(this,arguments)}}())},parseConfig:function(){var e=this;return(0,o.Z)(regeneratorRuntime.mark((function t(){var n,s;return regeneratorRuntime.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return t.next=2,Promise.all([e.request("config.get_plugins"),e.request("config.get_backends"),e.request("config.get_procedures"),e.request("config.get_device_id")]);case 2:n=t.sent,s=(0,st.Z)(n,4),e.plugins=s[0],e.backends=s[1],e.procedures=s[2],e.hostname=s[3],e.initializeDefaultViews();case 9:case"end":return t.stop()}}),t)})))()},initializeDefaultViews:function(){this.plugins.execute={},this.plugins.entities={}}},mounted:function(){var e=this;return(0,o.Z)(regeneratorRuntime.mark((function t(){return regeneratorRuntime.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return e.loading=!0,t.prev=1,t.next=4,e.parseConfig();case 4:e.initPanels(),e.initSelectedPanel();case 6:return t.prev=6,e.loading=!1,t.finish(6);case 9:case"end":return t.stop()}}),t,null,[[1,,6,9]])})))()}};const Zt=(0,D.Z)(Tt,[["render",nt],["__scopeId","data-v-fbc09254"]]);var St=Zt,Ut={key:1,class:"canvas"};function Mt(e,t,n,s,r,a){var o=(0,i.up)("Loading");return(0,i.wg)(),(0,i.iD)("main",null,[r.loading?((0,i.wg)(),(0,i.j4)(o,{key:0})):((0,i.wg)(),(0,i.iD)("div",Ut,[((0,i.wg)(),(0,i.j4)((0,i.LL)(r.component),{config:r.config,"plugin-name":a.pluginName},null,8,["config","plugin-name"]))]))])}n(9714);var Rt={name:"Panel",mixins:[M.Z],components:{Settings:It["default"],Nav:Dt,Loading:we.Z},data:function(){return{loading:!1,config:{},plugins:{},backends:{},procedures:{},component:void 0,hostname:void 0,selectedPanel:void 0}},computed:{pluginName:function(){return this.$route.params.plugin}},methods:{initPanel:function(){var e=this;return(0,o.Z)(regeneratorRuntime.mark((function t(){var s,r;return regeneratorRuntime.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return s=e.pluginName.split(".").map((function(e){return e[0].toUpperCase()+e.slice(1)})).join(""),r=null,t.prev=2,t.next=5,n(3379)("./".concat(s,"/Index"));case 5:r=t.sent,t.next=13;break;case 8:return t.prev=8,t.t0=t["catch"](2),console.error(t.t0),e.notify({error:!0,title:"Cannot load plugin ".concat(e.pluginName),text:t.t0.toString()}),t.abrupt("return");case 13:e.component=(0,be.XI)((0,i.RC)((0,o.Z)(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){while(1)switch(e.prev=e.next){case 0:return e.abrupt("return",r);case 1:case"end":return e.stop()}}),e)}))))),e.$options.components[s]=e.component;case 15:case"end":return t.stop()}}),t,null,[[2,8]])})))()},initConfig:function(){var e=this;return(0,o.Z)(regeneratorRuntime.mark((function t(){var n;return regeneratorRuntime.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return t.next=2,e.request("config.get");case 2:return n=t.sent,e.config=n[e.pluginName]||{},t.next=6,e.request("config.get_device_id");case 6:e.hostname=t.sent;case 7:case"end":return t.stop()}}),t)})))()}},mounted:function(){var e=this;return(0,o.Z)(regeneratorRuntime.mark((function t(){return regeneratorRuntime.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return e.loading=!0,t.prev=1,t.next=4,e.initConfig();case 4:return t.next=6,e.initPanel();case 6:return t.prev=6,e.loading=!1,t.finish(6);case 9:case"end":return t.stop()}}),t,null,[[1,,6,9]])})))()}};const Nt=(0,D.Z)(Rt,[["render",Mt],["__scopeId","data-v-e339182c"]]);var Pt=Nt,jt=[{path:"/",name:"Panel",component:St},{path:"/dashboard/:name",name:"Dashboard",component:Ue},{path:"/plugin/:plugin",name:"Plugin",component:Pt},{path:"/login",name:"Login",component:Ke},{path:"/register",name:"Register",component:Xe},{path:"/:catchAll(.*)",component:Pe}],qt=(0,he.p7)({history:(0,he.PO)(),routes:jt}),Ot=qt,Et=n(5205);(0,Et.z)("".concat("/","service-worker.js"),{ready:function(){console.log("App is being served from cache by a service worker.\nFor more details, visit https://goo.gl/AFskqB")},registered:function(){console.log("Service worker has been registered.")},cached:function(){console.log("Content has been cached for offline use.")},updatefound:function(){console.log("New content is downloading.")},updated:function(){console.log("New content is available; please refresh.")},offline:function(){console.log("No internet connection found. App is running in offline mode.")},error:function(e){console.error("Error during service worker registration:",e)}});var $t=(0,s.ri)(me);$t.config.globalProperties._config=window.config,$t.use(Ot).mount("#app")},6813:function(e,t,n){"use strict";n.d(t,{Z:function(){return j}});n(1539);var s=n(9669),i=n.n(s),r={name:"Api",methods:{execute:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:6e4,s=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],r={};return"target"in e&&e["target"]||(e["target"]="localhost"),"type"in e&&e["type"]||(e["type"]="request"),n&&(r.timeout=n),new Promise((function(n,a){i().post("/execute",e,r).then((function(e){var s;if(e=e.data.response,null!==(s=e.errors)&&void 0!==s&&s.length){var i,r=(null===(i=e.errors)||void 0===i?void 0:i[0])||e;t.notify({text:r,error:!0}),a(r)}else n(e.output)})).catch((function(e){var n,i,r,o;412===(null===e||void 0===e||null===(n=e.response)||void 0===n||null===(i=n.data)||void 0===i?void 0:i.code)&&window.location.href.indexOf("/register")<0?window.location.href="/register?redirect="+window.location.href:401===(null===e||void 0===e||null===(r=e.response)||void 0===r||null===(o=r.data)||void 0===o?void 0:o.code)&&window.location.href.indexOf("/login")<0?window.location.href="/login?redirect="+window.location.href:(console.log(e),s&&t.notify({text:e,error:!0}),a(e))}))}))},request:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:6e4,s=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];return this.execute({type:"request",action:e,args:t},n,s)}}};const a=r;var o=a,l=n(6084),c=(n(4916),n(3123),{name:"Cookies",methods:{getCookies:function(){return document.cookie.split(/;\s*/).reduce((function(e,t){var n=t.split("="),s=(0,l.Z)(n,2),i=s[0],r=s[1];return e[i]=r,e}),{})}}});const u=c;var d=u,f=(n(2222),{name:"DateTime",methods:{formatDate:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return"string"===typeof e&&(e=new Date(Date.parse(e))),e.toDateString().substring(0,t?15:10)},formatTime:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return"string"===typeof e&&(e=new Date(Date.parse(e))),e.toTimeString().substring(0,t?8:5)},formatDateTime:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];return"string"===typeof e&&(e=new Date(Date.parse(e))),"".concat(this.formatDate(e,t),", ").concat(this.formatTime(e,n))}}});const p=f;var m=p,h=n(9584),g=(n(7714),n(2801),n(1174),n(1249),n(3948),n(5250)),v={name:"Events",computed:{_eventsReady:function(){var e;return null===(e=this.$root.$refs.events)||void 0===e?void 0:e.initialized}},methods:{subscribe:function(e,t){for(var n=this,s=arguments.length,i=new Array(s>2?s-2:0),r=2;r 1024&&(i===n.length-1?t=s:e/=1024)})),"".concat(e.toFixed(2)," ").concat(t)},convertTime:function(e){var 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)){var s=t.d+" day";t.d>1&&(s+="s"),n.push(s)}if(parseInt(t.h)){var i=t.h+" hour";t.h>1&&(i+="s"),n.push(i)}if(parseInt(t.m)){var r=t.m+" minute";t.m>1&&(r+="s"),n.push(r)}var a=t.s+" second";return t.s>1&&(a+="s"),n.push(a),n.join(" ")},objectsEqual:function(e,t){var n;if("object"!==(0,S.Z)(e)||"object"!==(0,S.Z)(t))return!1;if(null==e||null==t)return null==e&&null==t;for(var s=0,i=Object.keys(e||{});st?(t=r,n=[i]):r===t&&n.push(i)}}catch(o){s.e(o)}finally{s.f()}(n.indexOf(this.$el)<0||n.length>1)&&(this.$el.style.zIndex=t+1)}if(this.isVisible&&this.timeout&&!this.timeoutId){var a=function(e){return function(){e.close(),e.timeoutId=void 0}};this.timeoutId=setTimeout(a(this),0+this.timeout)}}}),h=n(3744);const g=(0,h.Z)(m,[["render",f],["__scopeId","data-v-18f9fdba"]]);var v=g},6960:function(e,t,n){"use strict";n.d(t,{Z:function(){return h}});var s=n(6252),i=n(9963),r=n(3577),a=function(e){return(0,s.dD)("data-v-682db704"),e=e(),(0,s.Cn)(),e},o={class:"dialog-content"},l=a((function(){return(0,s._)("i",{class:"fas fa-check"},null,-1)})),c=a((function(){return(0,s._)("i",{class:"fas fa-xmark"},null,-1)}));function u(e,t,n,a,u,d){var f=(0,s.up)("Modal");return(0,s.wg)(),(0,s.j4)(f,{ref:"modal",title:n.title},{default:(0,s.w5)((function(){return[(0,s._)("div",o,[(0,s.WI)(e.$slots,"default",{},void 0,!0)]),(0,s._)("form",{class:"buttons",onSubmit:t[4]||(t[4]=(0,i.iM)((function(){return d.onConfirm&&d.onConfirm.apply(d,arguments)}),["prevent"]))},[(0,s._)("button",{type:"submit",class:"ok-btn",onClick:t[0]||(t[0]=function(){return d.onConfirm&&d.onConfirm.apply(d,arguments)}),onTouch:t[1]||(t[1]=function(){return d.onConfirm&&d.onConfirm.apply(d,arguments)})},[l,(0,s.Uk)(" "+(0,r.zw)(n.confirmText),1)],32),(0,s._)("button",{type:"button",class:"cancel-btn",onClick:t[2]||(t[2]=function(){return d.close&&d.close.apply(d,arguments)}),onTouch:t[3]||(t[3]=function(){return d.close&&d.close.apply(d,arguments)})},[c,(0,s.Uk)(" "+(0,r.zw)(n.cancelText),1)],32)],32)]})),_:3},8,["title"])}var d=n(1794),f={emits:["input","click","touch"],components:{Modal:d.Z},props:{title:{type:String},confirmText:{type:String,default:"OK"},cancelText:{type:String,default:"Cancel"}},methods:{onConfirm:function(){this.$emit("input"),this.close()},show:function(){this.$refs.modal.show()},close:function(){this.$refs.modal.hide()}}},p=n(3744);const m=(0,p.Z)(f,[["render",u],["__scopeId","data-v-682db704"]]);var h=m},2856:function(e,t,n){"use strict";n.d(t,{Z:function(){return m}});var s=n(6252),i=n(9963),r=n(3577),a={class:"dropdown-container",ref:"container"},o=["title"],l=["textContent"],c=["id"];function u(e,t,n,u,d,f){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)((function(e){return f.toggle(e)}),["stop"]))},[n.iconClass?((0,s.wg)(),(0,s.iD)("i",{key:0,class:(0,r.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,r.zw)(n.text)},null,8,l)):(0,s.kq)("",!0)],8,o),(0,s._)("div",{class:(0,r.C_)(["dropdown fade-in",{hidden:!d.visible}]),id:n.id,ref:"dropdown"},[(0,s.WI)(e.$slots,"default",{},void 0,!0)],10,c)],512)}var d={name:"Dropdown",emits:["click"],props:{id:{type:String},items:{type:Array,default:function(){return[]}},iconClass:{default:"fa fa-ellipsis-h"},text:{type:String},title:{type:String},keepOpenOnItemClick:{type:Boolean,default:!1}},data:function(){return{visible:!1}},methods:{documentClickHndl:function(e){if(this.visible){var t=e.target;while(t){if(!this.$refs.dropdown)break;if(t===this.$refs.dropdown.element)return;t=t.parentElement}this.close()}},close:function(){this.visible=!1,document.removeEventListener("click",this.documentClickHndl)},open:function(){var e=this;document.addEventListener("click",this.documentClickHndl),this.visible=!0,setTimeout((function(){var t=e.$refs.dropdown;t.style.left=0,t.style.top=parseFloat(getComputedStyle(e.$refs.button).height)+"px",t.getBoundingClientRect().left>window.innerWidth/2&&(t.style.left=-t.clientWidth+parseFloat(getComputedStyle(e.$refs.button).width)+"px"),t.getBoundingClientRect().top>window.innerHeight/2&&(t.style.top=-t.clientHeight+parseFloat(getComputedStyle(e.$refs.button).height)+"px")}),10)},toggle:function(e){e.stopPropagation(),this.$emit("click"),this.visible?this.close():this.open()},onKeyUp:function(e){e.stopPropagation(),"Escape"===e.key&&this.close()}},mounted:function(){document.body.addEventListener("keyup",this.onKeyUp)},unmounted:function(){document.body.removeEventListener("keyup",this.onKeyUp)}},f=n(3744);const p=(0,f.Z)(d,[["render",u],["__scopeId","data-v-5b964c03"]]);var m=p},2588:function(e,t,n){"use strict";n.d(t,{Z:function(){return f}});var s=n(6252),i=n(3577),r={key:0,class:"col-2 icon"},a=["textContent"];function o(e,t,n,o,l,c){var u,d,f=(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]=function(){return c.clicked&&c.clicked.apply(c,arguments)})},[null!==(u=n.iconClass)&&void 0!==u&&u.length||null!==(d=n.iconUrl)&&void 0!==d&&d.length?((0,s.wg)(),(0,s.iD)("div",r,[(0,s.Wm)(f,{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 l=n(1478),c={name:"DropdownItem",components:{Icon:l.Z},props:{iconClass:{type:String},iconUrl:{type:String},text:{type:String},disabled:{type:Boolean,default:!1},itemClass:{}},methods:{clicked:function(e){if(this.disabled)return!1;this.$parent.$emit("click",e),this.$parent.keepOpenOnItemClick||(this.$parent.visible=!1)}}},u=n(3744);const d=(0,u.Z)(c,[["render",o],["__scopeId","data-v-282d16b4"]]);var f=d},1478:function(e,t,n){"use strict";n.d(t,{Z:function(){return d}});var s=n(6252),i=n(3577),r={class:"icon-container"},a=["src","alt"];function o(e,t,n,o,l,c){var u,d;return(0,s.wg)(),(0,s.iD)("div",r,[null!==(u=n.url)&&void 0!==u&&u.length?((0,s.wg)(),(0,s.iD)("img",{key:0,class:"icon",src:n.url,alt:n.alt},null,8,a)):null!==(d=c.className)&&void 0!==d&&d.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 l={props:{class:{type:String},url:{type:String},color:{type:String,default:""},alt:{type:String,default:""}},computed:{className:function(){return this.class}}},c=n(3744);const u=(0,c.Z)(l,[["render",o],["__scopeId","data-v-706a3bd1"]]);var d=u},2715:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return Ce}});var s=n(6252),i={class:"settings-container"},r={class:"col-8"},a={class:"col-4 pull-right"},o=(0,s._)("i",{class:"fa fa-plus"},null,-1),l=[o];function c(e,t,n,o,c,u){var d=(0,s.up)("DropdownItem"),f=(0,s.up)("Dropdown"),p=(0,s.up)("Users"),m=(0,s.up)("Token");return(0,s.wg)(),(0,s.iD)("div",i,[(0,s._)("header",null,[(0,s._)("div",r,[(0,s.Wm)(f,{title:"Select a category","icon-class":"fa fa-ellipsis-h"},{default:(0,s.w5)((function(){return[(0,s.Wm)(d,{text:"Users","icon-class":"fa fa-user","item-class":{selected:"users"===c.selectedView},onClick:t[0]||(t[0]=function(e){return c.selectedView="users"})},null,8,["item-class"]),(0,s.Wm)(d,{text:"Generate a token","icon-class":"fa fa-key","item-class":{selected:"token"===c.selectedView},onClick:t[1]||(t[1]=function(e){return c.selectedView="token"})},null,8,["item-class"])]})),_:1})]),(0,s._)("div",a,["users"===c.selectedView?((0,s.wg)(),(0,s.iD)("button",{key:0,title:"Add User",onClick:t[2]||(t[2]=function(t){return e.$refs.usersView.$refs.addUserModal.show()})},l)):(0,s.kq)("",!0)])]),(0,s._)("main",null,["users"===c.selectedView?((0,s.wg)(),(0,s.j4)(p,{key:0,"session-token":c.sessionToken,"current-user":c.currentUser,ref:"usersView"},null,8,["session-token","current-user"])):"token"===c.selectedView?((0,s.wg)(),(0,s.j4)(m,{key:1,"session-token":c.sessionToken,"current-user":c.currentUser,ref:"tokenView"},null,8,["session-token","current-user"])):(0,s.kq)("",!0)])])}var u=n(8534),d=(n(5666),n(2856)),f=n(2588),p=n(3577),m=n(9963),h={class:"token-container"},g={class:"token-container"},v=(0,s.Uk)(" This is your generated token. Treat it carefully and do not share it with untrusted parties."),b=(0,s._)("br",null,null,-1),w=(0,s.Uk)(" Also, make sure to save it - it WILL NOT be displayed again. "),y=["textContent"],k={class:"body"},x={class:"description"},_=(0,s.Uk)("Generate a JWT authentication token that can be used for API calls to the "),C=(0,s.Uk)("/execute"),D=(0,s.Uk)(" endpoint."),I=(0,s._)("br",null,null,-1),T=(0,s._)("p",null,"You can include the token in your requests in any of the following ways:",-1),Z=(0,s.Uk)("Specify it on the "),S=(0,s.Uk)("Authorization: Bearer"),U=(0,s.Uk)(" header;"),M=(0,s.Uk)("Specify it on the "),R=(0,s.Uk)("X-Token"),N=(0,s.Uk)(" header;"),P=(0,s.Uk)("Specify it as a URL parameter: "),j=(0,s.Uk)("http://site:8008/execute?token=..."),q=(0,s.Uk)(";"),O=(0,s.Uk)("Specify it on the body of your JSON request: "),E=(0,s.Uk)('{"type":"request", "action", "...", "token":"..."}'),$=(0,s.Uk)("."),W=(0,s.Uk)(" Confirm your credentials in order to generate a new token. "),z={class:"form-container"},L=(0,s._)("span",null,"Username",-1),A=["value"],V=(0,s._)("label",null,[(0,s._)("span",null,"Confirm password"),(0,s._)("span",null,[(0,s._)("input",{type:"password",name:"password"})])],-1),F=(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)(" to identify 6 hours). An empty or zero value means that the token has no expiry date. ")])],-1),H=(0,s._)("label",null,[(0,s._)("input",{type:"submit",class:"btn btn-primary",value:"Generate token"})],-1);function B(e,t,n,i,r,a){var o=(0,s.up)("Loading"),l=(0,s.up)("Modal"),c=(0,s.up)("tt");return(0,s.wg)(),(0,s.iD)("div",h,[r.loading?((0,s.wg)(),(0,s.j4)(o,{key:0})):(0,s.kq)("",!0),(0,s.Wm)(l,{ref:"tokenModal"},{default:(0,s.w5)((function(){return[(0,s._)("div",g,[(0,s._)("label",null,[v,b,w,(0,s._)("textarea",{class:"token",textContent:(0,p.zw)(r.token),onFocus:t[0]||(t[0]=function(){return a.onTokenSelect&&a.onTokenSelect.apply(a,arguments)})},null,40,y)])])]})),_:1},512),(0,s._)("div",k,[(0,s._)("div",x,[(0,s._)("p",null,[_,(0,s.Wm)(c,null,{default:(0,s.w5)((function(){return[C]})),_:1}),D]),I,T,(0,s._)("ul",null,[(0,s._)("li",null,[Z,(0,s.Wm)(c,null,{default:(0,s.w5)((function(){return[S]})),_:1}),U]),(0,s._)("li",null,[M,(0,s.Wm)(c,null,{default:(0,s.w5)((function(){return[R]})),_:1}),N]),(0,s._)("li",null,[P,(0,s.Wm)(c,null,{default:(0,s.w5)((function(){return[j]})),_:1}),q]),(0,s._)("li",null,[O,(0,s.Wm)(c,null,{default:(0,s.w5)((function(){return[E]})),_:1}),$])]),W]),(0,s._)("div",z,[(0,s._)("form",{onSubmit:t[1]||(t[1]=(0,m.iM)((function(){return a.generateToken&&a.generateToken.apply(a,arguments)}),["prevent"])),ref:"generateTokenForm"},[(0,s._)("label",null,[L,(0,s._)("span",null,[(0,s._)("input",{type:"text",name:"username",value:n.currentUser.username,disabled:""},null,8,A)])]),V,F,H],544)])])])}n(1539),n(9714);var K=n(9669),Y=n.n(K),G=n(1232),J=n(6813),X=n(1794),Q={name:"Token",components:{Modal:X.Z,Loading:G.Z},mixins:[J.Z],props:{currentUser:{type:Object,required:!0}},data:function(){return{loading:!1,token:null}},methods:{generateToken:function(e){var t=this;return(0,u.Z)(regeneratorRuntime.mark((function n(){var s,i,r,a,o;return regeneratorRuntime.wrap((function(n){while(1)switch(n.prev=n.next){case 0:return i=t.currentUser.username,r=e.target.password.value,a=null!==(s=e.target.validityDays)&&void 0!==s&&s.length?parseInt(e.target.validityDays.value):0,a||(a=null),t.loading=!0,n.prev=5,n.next=8,Y().post("/auth",{username:i,password:r,expiry_days:a});case 8:t.token=n.sent.data.token,null!==(o=t.token)&&void 0!==o&&o.length&&t.$refs.tokenModal.show(),n.next=16;break;case 12:n.prev=12,n.t0=n["catch"](5),console.error(n.t0.toString()),t.notify({text:n.t0.toString(),error:!0});case 16:return n.prev=16,t.loading=!1,n.finish(16);case 19:case"end":return n.stop()}}),n,null,[[5,12,16,19]])})))()},onTokenSelect:function(e){e.target.select(),document.execCommand("copy"),this.notify({text:"Token copied to clipboard",image:{iconClass:"fa fa-check"}})}}},ee=n(3744);const te=(0,ee.Z)(Q,[["render",B]]);var ne=te,se=["disabled"],ie=["disabled"],re=["disabled"],ae=["disabled"],oe=["value"],le=["disabled"],ce=["disabled"],ue=["disabled"],de=["disabled"],fe={class:"body"},pe={class:"users-list"},me=["onClick"],he=["textContent"],ge={class:"actions pull-right col-4"};function ve(e,t,n,i,r,a){var o=(0,s.up)("Loading"),l=(0,s.up)("Modal"),c=(0,s.up)("DropdownItem"),u=(0,s.up)("Dropdown");return(0,s.wg)(),(0,s.iD)(s.HY,null,[r.loading?((0,s.wg)(),(0,s.j4)(o,{key:0})):(0,s.kq)("",!0),(0,s.Wm)(l,{ref:"addUserModal",title:"Add User"},{default:(0,s.w5)((function(){return[(0,s._)("form",{action:"#",method:"POST",ref:"addUserForm",onSubmit:t[0]||(t[0]=function(){return a.createUser&&a.createUser.apply(a,arguments)})},[(0,s._)("label",null,[(0,s._)("input",{type:"text",name:"username",placeholder:"Username",disabled:r.commandRunning},null,8,se)]),(0,s._)("label",null,[(0,s._)("input",{type:"password",name:"password",placeholder:"Password",disabled:r.commandRunning},null,8,ie)]),(0,s._)("label",null,[(0,s._)("input",{type:"password",name:"confirm_password",placeholder:"Confirm password",disabled:r.commandRunning},null,8,re)]),(0,s._)("label",null,[(0,s._)("input",{type:"submit",class:"btn btn-primary",value:"Create User",disabled:r.commandRunning},null,8,ae)])],544)]})),_:1},512),(0,s.Wm)(l,{ref:"changePasswordModal",title:"Change Password"},{default:(0,s.w5)((function(){return[(0,s._)("form",{action:"#",method:"POST",ref:"changePasswordForm",onSubmit:t[1]||(t[1]=function(){return a.changePassword&&a.changePassword.apply(a,arguments)})},[(0,s._)("label",null,[(0,s._)("input",{type:"text",name:"username",placeholder:"Username",value:r.selectedUser,disabled:"disabled"},null,8,oe)]),(0,s._)("label",null,[(0,s._)("input",{type:"password",name:"password",placeholder:"Current password",disabled:r.commandRunning},null,8,le)]),(0,s._)("label",null,[(0,s._)("input",{type:"password",name:"new_password",placeholder:"New password",disabled:r.commandRunning},null,8,ce)]),(0,s._)("label",null,[(0,s._)("input",{type:"password",name:"confirm_new_password",placeholder:"Confirm new password",disabled:r.commandRunning},null,8,ue)]),(0,s._)("label",null,[(0,s._)("input",{type:"submit",class:"btn btn-primary",value:"Change Password",disabled:r.commandRunning},null,8,de)])],544)]})),_:1},512),(0,s._)("div",fe,[(0,s._)("ul",pe,[((0,s.wg)(!0),(0,s.iD)(s.HY,null,(0,s.Ko)(r.users,(function(t){return(0,s.wg)(),(0,s.iD)("li",{key:t.user_id,class:"item user",onClick:function(e){return r.selectedUser=t.username}},[(0,s._)("div",{class:"name col-8",textContent:(0,p.zw)(t.username)},null,8,he),(0,s._)("div",ge,[(0,s.Wm)(u,{title:"User Actions","icon-class":"fa fa-cog"},{default:(0,s.w5)((function(){return[(0,s.Wm)(c,{text:"Change Password",disabled:r.commandRunning,"icon-class":"fa fa-key",onClick:function(n){r.selectedUser=t.username,e.$refs.changePasswordModal.show()}},null,8,["disabled","onClick"]),(0,s.Wm)(c,{text:"Delete User",disabled:r.commandRunning,"icon-class":"fa fa-trash",onClick:function(e){return a.deleteUser(t)}},null,8,["disabled","onClick"])]})),_:2},1024)])],8,me)})),128))])])],64)}var be=n(9584),we=(n(8309),{name:"Users",components:{DropdownItem:f.Z,Loading:G.Z,Modal:X.Z,Dropdown:d.Z},mixins:[J.Z],props:{sessionToken:{type:String,required:!0},currentUser:{type:Object,required:!0}},data:function(){return{users:[],commandRunning:!1,loading:!1,selectedUser:null}},methods:{refresh:function(){var e=this;return(0,u.Z)(regeneratorRuntime.mark((function t(){return regeneratorRuntime.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return e.loading=!0,t.prev=1,t.next=4,e.request("user.get_users");case 4:e.users=t.sent;case 5:return t.prev=5,e.loading=!1,t.finish(5);case 8:case"end":return t.stop()}}),t,null,[[1,,5,8]])})))()},createUser:function(e){var t=this;return(0,u.Z)(regeneratorRuntime.mark((function n(){var s;return regeneratorRuntime.wrap((function(n){while(1)switch(n.prev=n.next){case 0:if(e.preventDefault(),s=(0,be.Z)(t.$refs.addUserForm.querySelectorAll("input[name]")).reduce((function(e,t){return e[t.name]=t.value,e}),{}),s.password===s.confirm_password){n.next=5;break}return t.notify({title:"Unable to create user",text:"Please check that the passwords match",error:!0,image:{iconClass:"fas fa-times"}}),n.abrupt("return");case 5:return t.commandRunning=!0,n.prev=6,n.next=9,t.request("user.create_user",{username:s.username,password:s.password,session_token:t.sessionToken});case 9:return n.prev=9,t.commandRunning=!1,n.finish(9);case 12:return t.notify({text:"User "+s.username+" created",image:{iconClass:"fas fa-check"}}),t.$refs.addUserModal.close(),n.next=16,t.refresh();case 16:case"end":return n.stop()}}),n,null,[[6,,9,12]])})))()},changePassword:function(e){var t=this;return(0,u.Z)(regeneratorRuntime.mark((function n(){var s,i;return regeneratorRuntime.wrap((function(n){while(1)switch(n.prev=n.next){case 0:if(e.preventDefault(),s=(0,be.Z)(t.$refs.changePasswordForm.querySelectorAll("input[name]")).reduce((function(e,t){return e[t.name]=t.value,e}),{}),s.new_password===s.confirm_new_password){n.next=5;break}return t.notify({title:"Unable to update password",text:"Please check that the passwords match",error:!0,image:{iconClass:"fas fa-times"}}),n.abrupt("return");case 5:return t.commandRunning=!0,i=!1,n.prev=7,n.next=10,t.request("user.update_password",{username:s.username,old_password:s.password,new_password:s.new_password});case 10:i=n.sent;case 11:return n.prev=11,t.commandRunning=!1,n.finish(11);case 14:i?(t.$refs.changePasswordModal.close(),t.notify({text:"Password successfully updated",image:{iconClass:"fas fa-check"}})):t.notify({title:"Unable to update password",text:"The current password is incorrect",error:!0,image:{iconClass:"fas fa-times"}});case 15:case"end":return n.stop()}}),n,null,[[7,,11,14]])})))()},deleteUser:function(e){var t=this;return(0,u.Z)(regeneratorRuntime.mark((function n(){return regeneratorRuntime.wrap((function(n){while(1)switch(n.prev=n.next){case 0:if(confirm("Are you sure that you want to remove the user "+e.username+"?")){n.next=2;break}return n.abrupt("return");case 2:return t.commandRunning=!0,n.prev=3,n.next=6,t.request("user.delete_user",{username:e.username,session_token:t.sessionToken});case 6:return n.prev=6,t.commandRunning=!1,n.finish(6);case 9:return t.notify({text:"User "+e.username+" removed",image:{iconClass:"fas fa-check"}}),n.next=12,t.refresh();case 12:case"end":return n.stop()}}),n,null,[[3,,6,9]])})))()}},mounted:function(){this.refresh()}});const ye=(0,ee.Z)(we,[["render",ve]]);var ke=ye,xe={name:"Settings",components:{Dropdown:d.Z,DropdownItem:f.Z,Users:ke,Token:ne},mixins:[J.Z],data:function(){return{selectedView:"users",currentUser:null,sessionToken:null}},methods:{refresh:function(){var e=this;return(0,u.Z)(regeneratorRuntime.mark((function t(){return regeneratorRuntime.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return e.sessionToken=e.getCookies()["session_token"],t.next=3,e.request("user.get_user_by_session",{session_token:e.sessionToken});case 3:e.currentUser=t.sent;case 4:case"end":return t.stop()}}),t)})))()}},mounted:function(){this.refresh()}};const _e=(0,ee.Z)(xe,[["render",c]]);var Ce=_e},3379:function(e,t,n){var s={"./Camera/Index":[5528,5528],"./CameraAndroidIpcam/Index":[6739,6739],"./CameraCv/Index":[8184,5528,8184],"./CameraFfmpeg/Index":[5111,5528,5111],"./CameraGstreamer/Index":[699,5528,699],"./CameraIrMlx90640/Index":[9895,5528,9895],"./CameraPi/Index":[4548,5528,4548],"./Entities/Index":[8725,201],"./Execute/Index":[9539,9539],"./Light/Index":[8448,7782,3490,8448],"./LightHue/Index":[3724,7782,3490,8448,3724],"./Media/Index":[4196,7782,8337,7029,779,4196],"./MediaMplayer/Index":[6509,7782,8337,7029,779,4196,6509],"./MediaMpv/Index":[5895,7782,8337,7029,779,4196,5895],"./MediaOmxplayer/Index":[9633,7782,8337,7029,779,4196,9633],"./MediaVlc/Index":[767,7782,8337,7029,779,4196,767],"./Music/Index":[5781,7782,8337,7029,6833],"./MusicMpd/Index":[2957,7782,8337,7029,6833,2957],"./MusicSnapcast/Index":[2790,7782,3490,2790],"./MusicSpotify/Index":[7196,7782,8337,7029,6833,7196],"./Rtorrent/Index":[2820,8337,779,6162,2820],"./Settings/Index":[2715],"./Sound/Index":[5193,5193],"./Torrent/Index":[9299,8337,779,6162,9299],"./Tts/Index":[2466,4021,2466],"./TtsGoogle/Index":[1938,4021,1938],"./TvSamsungWs/Index":[615,615],"./ZigbeeMqtt/Index":[4848,7782,3490,4848],"./Zwave/Index":[8586,7782,3490,906,6027],"./ZwaveMqtt/Index":[2362,7782,3490,906,2362]};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":[345,345],"./Camera/Index":[2346,2346],"./Component/Index":[5824,7782,3490,5824],"./DateTime/Index":[1595,9575,1595],"./DateTimeWeather/Index":[346,1798,9575,346],"./ImageCarousel/Index":[6003,1798,9575,6003],"./Music/Index":[6013,6013],"./Plugin/Index":[1818,1818],"./RssNews/Index":[7420,7420],"./Weather/Index":[1798,1798]};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"},"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"},"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 r=t[s]={exports:{}};return e[s](r,r.exports,n),r.exports}n.m=e,function(){var e=[];n.O=function(t,s,i,r){if(!s){var a=1/0;for(u=0;u =r)&&Object.keys(n.O).every((function(e){return n.O[e](s[l])}))?s.splice(l--,1):(o=!1,r0&&e[u-1][2]>r;u--)e[u]=e[u-1];e[u]=[s,i,r]}}(),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 r=Object.create(null);n.r(r);var a={};e=e||[null,t({}),t([]),t(t)];for(var o=2&i&&s;"object"==typeof o&&!~e.indexOf(o);o=t(o))Object.getOwnPropertyNames(o).forEach((function(e){a[e]=function(){return s[e]}}));return a["default"]=function(){return s},n.d(r,a),r}}(),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+"-legacy."+{65:"a4e6662a",201:"9cd42d3b",345:"dcb6e74e",346:"f3cfa402",615:"fba0e1b5",675:"6f3d0433",699:"cb1ccfbb",767:"f33d812b",779:"4b8d600b",906:"23975966",1196:"9aa73c4d",1300:"526f4cf3",1595:"69aea4ae",1767:"0d72ab23",1798:"b42f39d9",1818:"03a52113",1938:"e350f72d",2346:"4845c2ae",2362:"034c153c",2466:"b6981a49",2790:"4cad67a6",2806:"a4faf9ad",2820:"869be689",2957:"a0d5f651",3194:"8b9635f4",3303:"337cf4d7",3490:"d482e29b",3724:"b00820ce",4021:"a3380d38",4196:"7ab38e3c",4548:"e2883bdd",4848:"0b09aeb3",4981:"c4835180",5111:"262ea3c5",5157:"090db2a1",5193:"d8c2e027",5207:"b6625280",5498:"8c82ec84",5528:"c6626d00",5824:"6527ca08",5895:"e1ce8e90",5924:"7c59be4f",6003:"f3446996",6013:"b02eb716",6027:"15704eec",6162:"bf13f6e2",6164:"73de3e0f",6358:"e74bed57",6509:"ab6d64c3",6739:"c665b953",6815:"7ba5187b",6833:"78ead800",7029:"85f01cbd",7141:"d485cb27",7196:"a47a2493",7420:"a57de4be",7503:"ad9a73d9",7782:"724314a6",8135:"e2055fdf",8184:"702db0b7",8337:"fcf13df8",8444:"b113ba12",8448:"fd3bc403",9276:"c3089257",9299:"adb4a75b",9387:"a7ab196d",9418:"06c89318",9450:"ba028d4c",9539:"651585ad",9575:"fb8eab70",9633:"8a00fadb",9895:"acee9428"}[e]+".js"}}(),function(){n.miniCssF=function(e){return"static/css/"+e+"."+{65:"45022021",201:"11f5843f",345:"19cf9d0d",346:"1706fbde",615:"8b95243c",675:"4cafd794",779:"e7924cac",906:"cb3bce26",1196:"7b6fd66b",1300:"96309a62",1767:"3f0d1aca",1798:"d0061372",1818:"8baa291c",2346:"d171e8f5",2790:"19201b3b",2806:"4f590a38",3194:"3df38d58",3303:"8fdecbd9",3490:"a327ba57",3724:"0fc70dd7",4021:"fff19b0b",4196:"ea56d2c9",4848:"c9eab7f4",4981:"94bc04e2",5193:"37da0a16",5207:"2b89418c",5498:"9a543237",5528:"0f93a679",5824:"c1f06cf8",5924:"99a5e5ce",6003:"986b3ae1",6013:"d0054b15",6162:"748a42fd",6164:"72aca991",6358:"ebcb5dfd",6739:"11bad71d",6815:"5eeaa8c8",6833:"b5d8115c",7029:"b34577f7",7141:"8ae8ce03",7420:"f8b46177",7503:"42ed5848",7782:"a9f0ac90",8135:"59c68eb5",8444:"f8d1e9c7",8448:"fe9cee1a",9276:"d21e868a",9387:"317149bb",9418:"55ebc1ed",9450:"ef02fb64",9539:"17613a3b",9575:"21327597"}[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,r,a){if(e[s])e[s].push(i);else{var o,l;if(void 0!==r)for(var c=document.getElementsByTagName("script"),u=0;u Platypush',3),$e={key:0,class:"row"},We=je((function(){return(0,i._)("label",null,[(0,i._)("input",{type:"password",name:"confirm_password",placeholder:"Confirm password"})],-1)})),ze=[We],Le={class:"row buttons"},Ae=["value"],Ve=je((function(){return(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 Fe(e,t,n,s,r,a){return(0,i.wg)(),(0,i.iD)("div",qe,[(0,i._)("form",Oe,[Ee,a._register?((0,i.wg)(),(0,i.iD)("div",$e,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)]),Ve])])}var He={name:"Login",mixins:[M.Z],props:{register:{type:Boolean,required:!1,default:!1}},computed:{_register:function(){return this.parseBoolean(this.register)}}};const Be=(0,D.Z)(He,[["render",Fe],["__scopeId","data-v-af0b14d0"]]);var Ke=Be;function Ye(e,t,n,s,r,a){var o=(0,i.up)("Login");return(0,i.wg)(),(0,i.j4)(o,{register:!0})}var Ge={name:"Register",mixins:[Ke],components:{Login:Ke},props:{register:{type:Boolean,required:!1,default:!0}}};const Je=(0,D.Z)(Ge,[["render",Ye]]);var Xe=Je,Qe={key:2,class:"canvas"},et={class:"panel"},tt={key:3,class:"canvas"};function nt(e,t,n,s,r,a){var o=(0,i.up)("Loading"),l=(0,i.up)("Nav"),c=(0,i.up)("Settings");return(0,i.wg)(),(0,i.iD)("main",null,[r.loading?((0,i.wg)(),(0,i.j4)(o,{key:0})):((0,i.wg)(),(0,i.j4)(l,{key:1,panels:r.components,"selected-panel":r.selectedPanel,hostname:r.hostname,onSelect:t[0]||(t[0]=function(e){return r.selectedPanel=e})},null,8,["panels","selected-panel","hostname"])),"settings"===r.selectedPanel?((0,i.wg)(),(0,i.iD)("div",Qe,[(0,i._)("div",et,[(0,i.Wm)(c)])])):((0,i.wg)(),(0,i.iD)("div",tt,[((0,i.wg)(!0),(0,i.iD)(i.HY,null,(0,i.Ko)(r.components,(function(e,t){return(0,i.wg)(),(0,i.iD)("div",{class:(0,d.C_)(["panel",{hidden:t!==r.selectedPanel}]),key:t},[t===r.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))]))])}var st=n(6084),it=(n(4723),n(4747),n(9720),n(9600),n(7042),function(e){return(0,i.dD)("data-v-d9ea25f0"),e=e(),(0,i.Cn)(),e}),rt=it((function(){return(0,i._)("i",{class:"fas fa-bars"},null,-1)})),at=["textContent"],ot={class:"plugins"},lt=["title","onClick"],ct=["href"],ut={class:"icon"},dt=["src"],ft={key:2,class:"fas fa-puzzle-piece"},pt=["textContent"],mt={class:"footer"},ht={href:"/#settings"},gt=it((function(){return(0,i._)("span",{class:"icon"},[(0,i._)("i",{class:"fa fa-cog"})],-1)})),vt={key:0,class:"name"},bt={href:"/logout"},wt=it((function(){return(0,i._)("span",{class:"icon"},[(0,i._)("i",{class:"fas fa-sign-out-alt"})],-1)})),yt={key:0,class:"name"};function kt(e,t,n,s,r,a){return(0,i.wg)(),(0,i.iD)("nav",{class:(0,d.C_)({collapsed:r.collapsed})},[(0,i._)("div",{class:"toggler",onClick:t[0]||(t[0]=function(e){return r.collapsed=!r.collapsed})},[rt,n.hostname?((0,i.wg)(),(0,i.iD)("span",{key:0,class:"hostname",textContent:(0,d.zw)(n.hostname)},null,8,at)):(0,i.kq)("",!0)]),(0,i._)("ul",ot,[((0,i.wg)(!0),(0,i.iD)(i.HY,null,(0,i.Ko)(a.panelNames,(function(e){var t,s;return(0,i.wg)(),(0,i.iD)("li",{key:e,class:(0,d.C_)(["entry",{selected:e===n.selectedPanel}]),title:e,onClick:function(t){return a.onItemClick(e)}},[(0,i._)("a",{href:"/#".concat(e)},[(0,i._)("span",ut,[null!==(t=r.icons[e])&&void 0!==t&&t.class?((0,i.wg)(),(0,i.iD)("i",{key:0,class:(0,d.C_)(r.icons[e].class)},null,2)):null!==(s=r.icons[e])&&void 0!==s&&s.imgUrl?((0,i.wg)(),(0,i.iD)("img",{key:1,src:r.icons[e].imgUrl,alt:"name"},null,8,dt)):((0,i.wg)(),(0,i.iD)("i",ft))]),r.collapsed?(0,i.kq)("",!0):((0,i.wg)(),(0,i.iD)("span",{key:0,class:"name",textContent:(0,d.zw)("entities"==e?"Home":e)},null,8,pt))],8,ct)],10,lt)})),128))]),(0,i._)("ul",mt,[(0,i._)("li",{class:(0,d.C_)({selected:"settings"===n.selectedPanel}),title:"Settings",onClick:t[1]||(t[1]=function(e){return a.onItemClick("settings")})},[(0,i._)("a",ht,[gt,r.collapsed?(0,i.kq)("",!0):((0,i.wg)(),(0,i.iD)("span",vt,"Settings"))])],2),(0,i._)("li",{title:"Logout",onClick:t[2]||(t[2]=function(e){return a.onItemClick("logout")})},[(0,i._)("a",bt,[wt,r.collapsed?(0,i.kq)("",!0):((0,i.wg)(),(0,i.iD)("span",yt,"Logout"))])])])],2)}n(2707);var xt=n(1359),_t={name:"Nav",emits:["select"],mixins:[M.Z],props:{panels:{type:Object,required:!0},selectedPanel:{type:String},hostname:{type:String}},computed:{panelNames:function(){var e=Object.keys(this.panels),t=e.indexOf("entities");return t>=0?["entities"].concat(e.slice(0,t).concat(e.slice(t+1)).sort()):e.sort()},collapsedDefault:function(){return!(!this.isMobile()&&!this.isTablet())}},methods:{onItemClick:function(e){this.$emit("select",e),this.collapsed=!!this.isMobile()||this.collapsedDefault}},data:function(){return{collapsed:!0,icons:xt,host:null}},mounted:function(){this.collapsed=this.collapsedDefault}};const Ct=(0,D.Z)(_t,[["render",kt],["__scopeId","data-v-d9ea25f0"]]);var Dt=Ct,It=n(2715),Tt={name:"Panel",mixins:[M.Z],components:{Settings:It["default"],Nav:Dt,Loading:we.Z},data:function(){return{loading:!1,plugins:{},backends:{},procedures:{},components:{},hostname:void 0,selectedPanel:void 0}},methods:{initSelectedPanel:function(){var e=this.$route.hash.match("#?([a-zA-Z0-9.]+)[?]?(.*)"),t=e?e[1]:"entities";null!==t&&void 0!==t&&t.length&&(this.selectedPanel=t)},initPanels:function(){var e=this;this.components={},Object.entries(this.plugins).forEach(function(){var t=(0,o.Z)(regeneratorRuntime.mark((function t(s){var r,a,l,c,u,d;return regeneratorRuntime.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return r=(0,st.Z)(s,2),a=r[0],l=r[1],c=a.split(".").map((function(e){return e[0].toUpperCase()+e.slice(1)})).join(""),u=null,t.prev=3,t.next=6,n(3379)("./".concat(c,"/Index"));case 6:u=t.sent,t.next=12;break;case 9:return t.prev=9,t.t0=t["catch"](3),t.abrupt("return");case 12:d=(0,be.XI)((0,i.RC)((0,o.Z)(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){while(1)switch(e.prev=e.next){case 0:return e.abrupt("return",u);case 1:case"end":return e.stop()}}),e)}))))),e.$options.components[a]=d,e.components[a]={component:d,pluginName:a,config:l};case 15:case"end":return t.stop()}}),t,null,[[3,9]])})));return function(e){return t.apply(this,arguments)}}())},parseConfig:function(){var e=this;return(0,o.Z)(regeneratorRuntime.mark((function t(){var n,s;return regeneratorRuntime.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return t.next=2,Promise.all([e.request("config.get_plugins"),e.request("config.get_backends"),e.request("config.get_procedures"),e.request("config.get_device_id")]);case 2:n=t.sent,s=(0,st.Z)(n,4),e.plugins=s[0],e.backends=s[1],e.procedures=s[2],e.hostname=s[3],e.initializeDefaultViews();case 9:case"end":return t.stop()}}),t)})))()},initializeDefaultViews:function(){this.plugins.execute={},this.plugins.entities={}}},mounted:function(){var e=this;return(0,o.Z)(regeneratorRuntime.mark((function t(){return regeneratorRuntime.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return e.loading=!0,t.prev=1,t.next=4,e.parseConfig();case 4:e.initPanels(),e.initSelectedPanel();case 6:return t.prev=6,e.loading=!1,t.finish(6);case 9:case"end":return t.stop()}}),t,null,[[1,,6,9]])})))()}};const Zt=(0,D.Z)(Tt,[["render",nt],["__scopeId","data-v-fbc09254"]]);var St=Zt,Ut={key:1,class:"canvas"};function Mt(e,t,n,s,r,a){var o=(0,i.up)("Loading");return(0,i.wg)(),(0,i.iD)("main",null,[r.loading?((0,i.wg)(),(0,i.j4)(o,{key:0})):((0,i.wg)(),(0,i.iD)("div",Ut,[((0,i.wg)(),(0,i.j4)((0,i.LL)(r.component),{config:r.config,"plugin-name":a.pluginName},null,8,["config","plugin-name"]))]))])}n(9714);var Rt={name:"Panel",mixins:[M.Z],components:{Settings:It["default"],Nav:Dt,Loading:we.Z},data:function(){return{loading:!1,config:{},plugins:{},backends:{},procedures:{},component:void 0,hostname:void 0,selectedPanel:void 0}},computed:{pluginName:function(){return this.$route.params.plugin}},methods:{initPanel:function(){var e=this;return(0,o.Z)(regeneratorRuntime.mark((function t(){var s,r;return regeneratorRuntime.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return s=e.pluginName.split(".").map((function(e){return e[0].toUpperCase()+e.slice(1)})).join(""),r=null,t.prev=2,t.next=5,n(3379)("./".concat(s,"/Index"));case 5:r=t.sent,t.next=13;break;case 8:return t.prev=8,t.t0=t["catch"](2),console.error(t.t0),e.notify({error:!0,title:"Cannot load plugin ".concat(e.pluginName),text:t.t0.toString()}),t.abrupt("return");case 13:e.component=(0,be.XI)((0,i.RC)((0,o.Z)(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){while(1)switch(e.prev=e.next){case 0:return e.abrupt("return",r);case 1:case"end":return e.stop()}}),e)}))))),e.$options.components[s]=e.component;case 15:case"end":return t.stop()}}),t,null,[[2,8]])})))()},initConfig:function(){var e=this;return(0,o.Z)(regeneratorRuntime.mark((function t(){var n;return regeneratorRuntime.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return t.next=2,e.request("config.get");case 2:return n=t.sent,e.config=n[e.pluginName]||{},t.next=6,e.request("config.get_device_id");case 6:e.hostname=t.sent;case 7:case"end":return t.stop()}}),t)})))()}},mounted:function(){var e=this;return(0,o.Z)(regeneratorRuntime.mark((function t(){return regeneratorRuntime.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return e.loading=!0,t.prev=1,t.next=4,e.initConfig();case 4:return t.next=6,e.initPanel();case 6:return t.prev=6,e.loading=!1,t.finish(6);case 9:case"end":return t.stop()}}),t,null,[[1,,6,9]])})))()}};const Nt=(0,D.Z)(Rt,[["render",Mt],["__scopeId","data-v-e339182c"]]);var Pt=Nt,jt=[{path:"/",name:"Panel",component:St},{path:"/dashboard/:name",name:"Dashboard",component:Ue},{path:"/plugin/:plugin",name:"Plugin",component:Pt},{path:"/login",name:"Login",component:Ke},{path:"/register",name:"Register",component:Xe},{path:"/:catchAll(.*)",component:Pe}],qt=(0,he.p7)({history:(0,he.PO)(),routes:jt}),Ot=qt,Et=n(5205);(0,Et.z)("".concat("/","service-worker.js"),{ready:function(){console.log("App is being served from cache by a service worker.\nFor more details, visit https://goo.gl/AFskqB")},registered:function(){console.log("Service worker has been registered.")},cached:function(){console.log("Content has been cached for offline use.")},updatefound:function(){console.log("New content is downloading.")},updated:function(){console.log("New content is available; please refresh.")},offline:function(){console.log("No internet connection found. App is running in offline mode.")},error:function(e){console.error("Error during service worker registration:",e)}});var $t=(0,s.ri)(me);$t.config.globalProperties._config=window.config,$t.use(Ot).mount("#app")},6813:function(e,t,n){"use strict";n.d(t,{Z:function(){return j}});n(1539);var s=n(9669),i=n.n(s),r={name:"Api",methods:{execute:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:6e4,s=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],r={};return"target"in e&&e["target"]||(e["target"]="localhost"),"type"in e&&e["type"]||(e["type"]="request"),n&&(r.timeout=n),new Promise((function(n,a){i().post("/execute",e,r).then((function(e){var s;if(e=e.data.response,null!==(s=e.errors)&&void 0!==s&&s.length){var i,r=(null===(i=e.errors)||void 0===i?void 0:i[0])||e;t.notify({text:r,error:!0}),a(r)}else n(e.output)})).catch((function(e){var n,i,r,o;412===(null===e||void 0===e||null===(n=e.response)||void 0===n||null===(i=n.data)||void 0===i?void 0:i.code)&&window.location.href.indexOf("/register")<0?window.location.href="/register?redirect="+window.location.href:401===(null===e||void 0===e||null===(r=e.response)||void 0===r||null===(o=r.data)||void 0===o?void 0:o.code)&&window.location.href.indexOf("/login")<0?window.location.href="/login?redirect="+window.location.href:(console.log(e),s&&t.notify({text:e,error:!0}),a(e))}))}))},request:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:6e4,s=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];return this.execute({type:"request",action:e,args:t},n,s)}}};const a=r;var o=a,l=n(6084),c=(n(4916),n(3123),{name:"Cookies",methods:{getCookies:function(){return document.cookie.split(/;\s*/).reduce((function(e,t){var n=t.split("="),s=(0,l.Z)(n,2),i=s[0],r=s[1];return e[i]=r,e}),{})}}});const u=c;var d=u,f=(n(2222),{name:"DateTime",methods:{formatDate:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return"string"===typeof e&&(e=new Date(Date.parse(e))),e.toDateString().substring(0,t?15:10)},formatTime:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return"string"===typeof e&&(e=new Date(Date.parse(e))),e.toTimeString().substring(0,t?8:5)},formatDateTime:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];return"string"===typeof e&&(e=new Date(Date.parse(e))),"".concat(this.formatDate(e,t),", ").concat(this.formatTime(e,n))}}});const p=f;var m=p,h=n(9584),g=(n(7714),n(2801),n(1174),n(1249),n(3948),n(5250)),v={name:"Events",computed:{_eventsReady:function(){var e;return null===(e=this.$root.$refs.events)||void 0===e?void 0:e.initialized}},methods:{subscribe:function(e,t){for(var n=this,s=arguments.length,i=new Array(s>2?s-2:0),r=2;r 1024&&(i===n.length-1?t=s:e/=1024)})),"".concat(e.toFixed(2)," ").concat(t)},convertTime:function(e){var 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)){var s=t.d+" day";t.d>1&&(s+="s"),n.push(s)}if(parseInt(t.h)){var i=t.h+" hour";t.h>1&&(i+="s"),n.push(i)}if(parseInt(t.m)){var r=t.m+" minute";t.m>1&&(r+="s"),n.push(r)}var a=t.s+" second";return t.s>1&&(a+="s"),n.push(a),n.join(" ")},objectsEqual:function(e,t){var n;if("object"!==(0,S.Z)(e)||"object"!==(0,S.Z)(t))return!1;if(null==e||null==t)return null==e&&null==t;for(var s=0,i=Object.keys(e||{});st?(t=r,n=[i]):r===t&&n.push(i)}}catch(o){s.e(o)}finally{s.f()}(n.indexOf(this.$el)<0||n.length>1)&&(this.$el.style.zIndex=t+1)}if(this.isVisible&&this.timeout&&!this.timeoutId){var a=function(e){return function(){e.close(),e.timeoutId=void 0}};this.timeoutId=setTimeout(a(this),0+this.timeout)}}}),h=n(3744);const g=(0,h.Z)(m,[["render",f],["__scopeId","data-v-18f9fdba"]]);var v=g},6960:function(e,t,n){"use strict";n.d(t,{Z:function(){return h}});var s=n(6252),i=n(9963),r=n(3577),a=function(e){return(0,s.dD)("data-v-682db704"),e=e(),(0,s.Cn)(),e},o={class:"dialog-content"},l=a((function(){return(0,s._)("i",{class:"fas fa-check"},null,-1)})),c=a((function(){return(0,s._)("i",{class:"fas fa-xmark"},null,-1)}));function u(e,t,n,a,u,d){var f=(0,s.up)("Modal");return(0,s.wg)(),(0,s.j4)(f,{ref:"modal",title:n.title},{default:(0,s.w5)((function(){return[(0,s._)("div",o,[(0,s.WI)(e.$slots,"default",{},void 0,!0)]),(0,s._)("form",{class:"buttons",onSubmit:t[4]||(t[4]=(0,i.iM)((function(){return d.onConfirm&&d.onConfirm.apply(d,arguments)}),["prevent"]))},[(0,s._)("button",{type:"submit",class:"ok-btn",onClick:t[0]||(t[0]=function(){return d.onConfirm&&d.onConfirm.apply(d,arguments)}),onTouch:t[1]||(t[1]=function(){return d.onConfirm&&d.onConfirm.apply(d,arguments)})},[l,(0,s.Uk)(" "+(0,r.zw)(n.confirmText),1)],32),(0,s._)("button",{type:"button",class:"cancel-btn",onClick:t[2]||(t[2]=function(){return d.close&&d.close.apply(d,arguments)}),onTouch:t[3]||(t[3]=function(){return d.close&&d.close.apply(d,arguments)})},[c,(0,s.Uk)(" "+(0,r.zw)(n.cancelText),1)],32)],32)]})),_:3},8,["title"])}var d=n(1794),f={emits:["input","click","touch"],components:{Modal:d.Z},props:{title:{type:String},confirmText:{type:String,default:"OK"},cancelText:{type:String,default:"Cancel"}},methods:{onConfirm:function(){this.$emit("input"),this.close()},show:function(){this.$refs.modal.show()},close:function(){this.$refs.modal.hide()}}},p=n(3744);const m=(0,p.Z)(f,[["render",u],["__scopeId","data-v-682db704"]]);var h=m},2856:function(e,t,n){"use strict";n.d(t,{Z:function(){return m}});var s=n(6252),i=n(9963),r=n(3577),a={class:"dropdown-container",ref:"container"},o=["title"],l=["textContent"],c=["id"];function u(e,t,n,u,d,f){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)((function(e){return f.toggle(e)}),["stop"]))},[n.iconClass?((0,s.wg)(),(0,s.iD)("i",{key:0,class:(0,r.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,r.zw)(n.text)},null,8,l)):(0,s.kq)("",!0)],8,o),(0,s._)("div",{class:(0,r.C_)(["dropdown fade-in",{hidden:!d.visible}]),id:n.id,ref:"dropdown"},[(0,s.WI)(e.$slots,"default",{},void 0,!0)],10,c)],512)}var d={name:"Dropdown",emits:["click"],props:{id:{type:String},items:{type:Array,default:function(){return[]}},iconClass:{default:"fa fa-ellipsis-h"},text:{type:String},title:{type:String},keepOpenOnItemClick:{type:Boolean,default:!1}},data:function(){return{visible:!1}},methods:{documentClickHndl:function(e){if(this.visible){var t=e.target;while(t){if(!this.$refs.dropdown)break;if(t===this.$refs.dropdown.element)return;t=t.parentElement}this.close()}},close:function(){this.visible=!1,document.removeEventListener("click",this.documentClickHndl)},open:function(){var e=this;document.addEventListener("click",this.documentClickHndl),this.visible=!0,setTimeout((function(){var t=e.$refs.dropdown;t.style.left=0,t.style.top=parseFloat(getComputedStyle(e.$refs.button).height)+"px",t.getBoundingClientRect().left>window.innerWidth/2&&(t.style.left=-t.clientWidth+parseFloat(getComputedStyle(e.$refs.button).width)+"px"),t.getBoundingClientRect().top>window.innerHeight/2&&(t.style.top=-t.clientHeight+parseFloat(getComputedStyle(e.$refs.button).height)+"px")}),10)},toggle:function(e){e.stopPropagation(),this.$emit("click"),this.visible?this.close():this.open()},onKeyUp:function(e){e.stopPropagation(),"Escape"===e.key&&this.close()}},mounted:function(){document.body.addEventListener("keyup",this.onKeyUp)},unmounted:function(){document.body.removeEventListener("keyup",this.onKeyUp)}},f=n(3744);const p=(0,f.Z)(d,[["render",u],["__scopeId","data-v-5b964c03"]]);var m=p},2588:function(e,t,n){"use strict";n.d(t,{Z:function(){return f}});var s=n(6252),i=n(3577),r={key:0,class:"col-2 icon"},a=["textContent"];function o(e,t,n,o,l,c){var u,d,f=(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]=function(){return c.clicked&&c.clicked.apply(c,arguments)})},[null!==(u=n.iconClass)&&void 0!==u&&u.length||null!==(d=n.iconUrl)&&void 0!==d&&d.length?((0,s.wg)(),(0,s.iD)("div",r,[(0,s.Wm)(f,{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 l=n(1478),c={name:"DropdownItem",components:{Icon:l.Z},props:{iconClass:{type:String},iconUrl:{type:String},text:{type:String},disabled:{type:Boolean,default:!1},itemClass:{}},methods:{clicked:function(e){if(this.disabled)return!1;this.$parent.$emit("click",e),this.$parent.keepOpenOnItemClick||(this.$parent.visible=!1)}}},u=n(3744);const d=(0,u.Z)(c,[["render",o],["__scopeId","data-v-282d16b4"]]);var f=d},1478:function(e,t,n){"use strict";n.d(t,{Z:function(){return d}});var s=n(6252),i=n(3577),r={class:"icon-container"},a=["src","alt"];function o(e,t,n,o,l,c){var u,d;return(0,s.wg)(),(0,s.iD)("div",r,[null!==(u=n.url)&&void 0!==u&&u.length?((0,s.wg)(),(0,s.iD)("img",{key:0,class:"icon",src:n.url,alt:n.alt},null,8,a)):null!==(d=c.className)&&void 0!==d&&d.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 l={props:{class:{type:String},url:{type:String},color:{type:String,default:""},alt:{type:String,default:""}},computed:{className:function(){return this.class}}},c=n(3744);const u=(0,c.Z)(l,[["render",o],["__scopeId","data-v-706a3bd1"]]);var d=u},2715:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return Ce}});var s=n(6252),i={class:"settings-container"},r={class:"col-8"},a={class:"col-4 pull-right"},o=(0,s._)("i",{class:"fa fa-plus"},null,-1),l=[o];function c(e,t,n,o,c,u){var d=(0,s.up)("DropdownItem"),f=(0,s.up)("Dropdown"),p=(0,s.up)("Users"),m=(0,s.up)("Token");return(0,s.wg)(),(0,s.iD)("div",i,[(0,s._)("header",null,[(0,s._)("div",r,[(0,s.Wm)(f,{title:"Select a category","icon-class":"fa fa-ellipsis-h"},{default:(0,s.w5)((function(){return[(0,s.Wm)(d,{text:"Users","icon-class":"fa fa-user","item-class":{selected:"users"===c.selectedView},onClick:t[0]||(t[0]=function(e){return c.selectedView="users"})},null,8,["item-class"]),(0,s.Wm)(d,{text:"Generate a token","icon-class":"fa fa-key","item-class":{selected:"token"===c.selectedView},onClick:t[1]||(t[1]=function(e){return c.selectedView="token"})},null,8,["item-class"])]})),_:1})]),(0,s._)("div",a,["users"===c.selectedView?((0,s.wg)(),(0,s.iD)("button",{key:0,title:"Add User",onClick:t[2]||(t[2]=function(t){return e.$refs.usersView.$refs.addUserModal.show()})},l)):(0,s.kq)("",!0)])]),(0,s._)("main",null,["users"===c.selectedView?((0,s.wg)(),(0,s.j4)(p,{key:0,"session-token":c.sessionToken,"current-user":c.currentUser,ref:"usersView"},null,8,["session-token","current-user"])):"token"===c.selectedView?((0,s.wg)(),(0,s.j4)(m,{key:1,"session-token":c.sessionToken,"current-user":c.currentUser,ref:"tokenView"},null,8,["session-token","current-user"])):(0,s.kq)("",!0)])])}var u=n(8534),d=(n(5666),n(2856)),f=n(2588),p=n(3577),m=n(9963),h={class:"token-container"},g={class:"token-container"},v=(0,s.Uk)(" This is your generated token. Treat it carefully and do not share it with untrusted parties."),b=(0,s._)("br",null,null,-1),w=(0,s.Uk)(" Also, make sure to save it - it WILL NOT be displayed again. "),y=["textContent"],k={class:"body"},x={class:"description"},_=(0,s.Uk)("Generate a JWT authentication token that can be used for API calls to the "),C=(0,s.Uk)("/execute"),D=(0,s.Uk)(" endpoint."),I=(0,s._)("br",null,null,-1),T=(0,s._)("p",null,"You can include the token in your requests in any of the following ways:",-1),Z=(0,s.Uk)("Specify it on the "),S=(0,s.Uk)("Authorization: Bearer"),U=(0,s.Uk)(" header;"),M=(0,s.Uk)("Specify it on the "),R=(0,s.Uk)("X-Token"),N=(0,s.Uk)(" header;"),P=(0,s.Uk)("Specify it as a URL parameter: "),j=(0,s.Uk)("http://site:8008/execute?token=..."),q=(0,s.Uk)(";"),O=(0,s.Uk)("Specify it on the body of your JSON request: "),E=(0,s.Uk)('{"type":"request", "action", "...", "token":"..."}'),$=(0,s.Uk)("."),W=(0,s.Uk)(" Confirm your credentials in order to generate a new token. "),z={class:"form-container"},L=(0,s._)("span",null,"Username",-1),A=["value"],V=(0,s._)("label",null,[(0,s._)("span",null,"Confirm password"),(0,s._)("span",null,[(0,s._)("input",{type:"password",name:"password"})])],-1),F=(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)(" to identify 6 hours). An empty or zero value means that the token has no expiry date. ")])],-1),H=(0,s._)("label",null,[(0,s._)("input",{type:"submit",class:"btn btn-primary",value:"Generate token"})],-1);function B(e,t,n,i,r,a){var o=(0,s.up)("Loading"),l=(0,s.up)("Modal"),c=(0,s.up)("tt");return(0,s.wg)(),(0,s.iD)("div",h,[r.loading?((0,s.wg)(),(0,s.j4)(o,{key:0})):(0,s.kq)("",!0),(0,s.Wm)(l,{ref:"tokenModal"},{default:(0,s.w5)((function(){return[(0,s._)("div",g,[(0,s._)("label",null,[v,b,w,(0,s._)("textarea",{class:"token",textContent:(0,p.zw)(r.token),onFocus:t[0]||(t[0]=function(){return a.onTokenSelect&&a.onTokenSelect.apply(a,arguments)})},null,40,y)])])]})),_:1},512),(0,s._)("div",k,[(0,s._)("div",x,[(0,s._)("p",null,[_,(0,s.Wm)(c,null,{default:(0,s.w5)((function(){return[C]})),_:1}),D]),I,T,(0,s._)("ul",null,[(0,s._)("li",null,[Z,(0,s.Wm)(c,null,{default:(0,s.w5)((function(){return[S]})),_:1}),U]),(0,s._)("li",null,[M,(0,s.Wm)(c,null,{default:(0,s.w5)((function(){return[R]})),_:1}),N]),(0,s._)("li",null,[P,(0,s.Wm)(c,null,{default:(0,s.w5)((function(){return[j]})),_:1}),q]),(0,s._)("li",null,[O,(0,s.Wm)(c,null,{default:(0,s.w5)((function(){return[E]})),_:1}),$])]),W]),(0,s._)("div",z,[(0,s._)("form",{onSubmit:t[1]||(t[1]=(0,m.iM)((function(){return a.generateToken&&a.generateToken.apply(a,arguments)}),["prevent"])),ref:"generateTokenForm"},[(0,s._)("label",null,[L,(0,s._)("span",null,[(0,s._)("input",{type:"text",name:"username",value:n.currentUser.username,disabled:""},null,8,A)])]),V,F,H],544)])])])}n(1539),n(9714);var K=n(9669),Y=n.n(K),G=n(1232),J=n(6813),X=n(1794),Q={name:"Token",components:{Modal:X.Z,Loading:G.Z},mixins:[J.Z],props:{currentUser:{type:Object,required:!0}},data:function(){return{loading:!1,token:null}},methods:{generateToken:function(e){var t=this;return(0,u.Z)(regeneratorRuntime.mark((function n(){var s,i,r,a,o;return regeneratorRuntime.wrap((function(n){while(1)switch(n.prev=n.next){case 0:return i=t.currentUser.username,r=e.target.password.value,a=null!==(s=e.target.validityDays)&&void 0!==s&&s.length?parseInt(e.target.validityDays.value):0,a||(a=null),t.loading=!0,n.prev=5,n.next=8,Y().post("/auth",{username:i,password:r,expiry_days:a});case 8:t.token=n.sent.data.token,null!==(o=t.token)&&void 0!==o&&o.length&&t.$refs.tokenModal.show(),n.next=16;break;case 12:n.prev=12,n.t0=n["catch"](5),console.error(n.t0.toString()),t.notify({text:n.t0.toString(),error:!0});case 16:return n.prev=16,t.loading=!1,n.finish(16);case 19:case"end":return n.stop()}}),n,null,[[5,12,16,19]])})))()},onTokenSelect:function(e){e.target.select(),document.execCommand("copy"),this.notify({text:"Token copied to clipboard",image:{iconClass:"fa fa-check"}})}}},ee=n(3744);const te=(0,ee.Z)(Q,[["render",B]]);var ne=te,se=["disabled"],ie=["disabled"],re=["disabled"],ae=["disabled"],oe=["value"],le=["disabled"],ce=["disabled"],ue=["disabled"],de=["disabled"],fe={class:"body"},pe={class:"users-list"},me=["onClick"],he=["textContent"],ge={class:"actions pull-right col-4"};function ve(e,t,n,i,r,a){var o=(0,s.up)("Loading"),l=(0,s.up)("Modal"),c=(0,s.up)("DropdownItem"),u=(0,s.up)("Dropdown");return(0,s.wg)(),(0,s.iD)(s.HY,null,[r.loading?((0,s.wg)(),(0,s.j4)(o,{key:0})):(0,s.kq)("",!0),(0,s.Wm)(l,{ref:"addUserModal",title:"Add User"},{default:(0,s.w5)((function(){return[(0,s._)("form",{action:"#",method:"POST",ref:"addUserForm",onSubmit:t[0]||(t[0]=function(){return a.createUser&&a.createUser.apply(a,arguments)})},[(0,s._)("label",null,[(0,s._)("input",{type:"text",name:"username",placeholder:"Username",disabled:r.commandRunning},null,8,se)]),(0,s._)("label",null,[(0,s._)("input",{type:"password",name:"password",placeholder:"Password",disabled:r.commandRunning},null,8,ie)]),(0,s._)("label",null,[(0,s._)("input",{type:"password",name:"confirm_password",placeholder:"Confirm password",disabled:r.commandRunning},null,8,re)]),(0,s._)("label",null,[(0,s._)("input",{type:"submit",class:"btn btn-primary",value:"Create User",disabled:r.commandRunning},null,8,ae)])],544)]})),_:1},512),(0,s.Wm)(l,{ref:"changePasswordModal",title:"Change Password"},{default:(0,s.w5)((function(){return[(0,s._)("form",{action:"#",method:"POST",ref:"changePasswordForm",onSubmit:t[1]||(t[1]=function(){return a.changePassword&&a.changePassword.apply(a,arguments)})},[(0,s._)("label",null,[(0,s._)("input",{type:"text",name:"username",placeholder:"Username",value:r.selectedUser,disabled:"disabled"},null,8,oe)]),(0,s._)("label",null,[(0,s._)("input",{type:"password",name:"password",placeholder:"Current password",disabled:r.commandRunning},null,8,le)]),(0,s._)("label",null,[(0,s._)("input",{type:"password",name:"new_password",placeholder:"New password",disabled:r.commandRunning},null,8,ce)]),(0,s._)("label",null,[(0,s._)("input",{type:"password",name:"confirm_new_password",placeholder:"Confirm new password",disabled:r.commandRunning},null,8,ue)]),(0,s._)("label",null,[(0,s._)("input",{type:"submit",class:"btn btn-primary",value:"Change Password",disabled:r.commandRunning},null,8,de)])],544)]})),_:1},512),(0,s._)("div",fe,[(0,s._)("ul",pe,[((0,s.wg)(!0),(0,s.iD)(s.HY,null,(0,s.Ko)(r.users,(function(t){return(0,s.wg)(),(0,s.iD)("li",{key:t.user_id,class:"item user",onClick:function(e){return r.selectedUser=t.username}},[(0,s._)("div",{class:"name col-8",textContent:(0,p.zw)(t.username)},null,8,he),(0,s._)("div",ge,[(0,s.Wm)(u,{title:"User Actions","icon-class":"fa fa-cog"},{default:(0,s.w5)((function(){return[(0,s.Wm)(c,{text:"Change Password",disabled:r.commandRunning,"icon-class":"fa fa-key",onClick:function(n){r.selectedUser=t.username,e.$refs.changePasswordModal.show()}},null,8,["disabled","onClick"]),(0,s.Wm)(c,{text:"Delete User",disabled:r.commandRunning,"icon-class":"fa fa-trash",onClick:function(e){return a.deleteUser(t)}},null,8,["disabled","onClick"])]})),_:2},1024)])],8,me)})),128))])])],64)}var be=n(9584),we=(n(8309),{name:"Users",components:{DropdownItem:f.Z,Loading:G.Z,Modal:X.Z,Dropdown:d.Z},mixins:[J.Z],props:{sessionToken:{type:String,required:!0},currentUser:{type:Object,required:!0}},data:function(){return{users:[],commandRunning:!1,loading:!1,selectedUser:null}},methods:{refresh:function(){var e=this;return(0,u.Z)(regeneratorRuntime.mark((function t(){return regeneratorRuntime.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return e.loading=!0,t.prev=1,t.next=4,e.request("user.get_users");case 4:e.users=t.sent;case 5:return t.prev=5,e.loading=!1,t.finish(5);case 8:case"end":return t.stop()}}),t,null,[[1,,5,8]])})))()},createUser:function(e){var t=this;return(0,u.Z)(regeneratorRuntime.mark((function n(){var s;return regeneratorRuntime.wrap((function(n){while(1)switch(n.prev=n.next){case 0:if(e.preventDefault(),s=(0,be.Z)(t.$refs.addUserForm.querySelectorAll("input[name]")).reduce((function(e,t){return e[t.name]=t.value,e}),{}),s.password===s.confirm_password){n.next=5;break}return t.notify({title:"Unable to create user",text:"Please check that the passwords match",error:!0,image:{iconClass:"fas fa-times"}}),n.abrupt("return");case 5:return t.commandRunning=!0,n.prev=6,n.next=9,t.request("user.create_user",{username:s.username,password:s.password,session_token:t.sessionToken});case 9:return n.prev=9,t.commandRunning=!1,n.finish(9);case 12:return t.notify({text:"User "+s.username+" created",image:{iconClass:"fas fa-check"}}),t.$refs.addUserModal.close(),n.next=16,t.refresh();case 16:case"end":return n.stop()}}),n,null,[[6,,9,12]])})))()},changePassword:function(e){var t=this;return(0,u.Z)(regeneratorRuntime.mark((function n(){var s,i;return regeneratorRuntime.wrap((function(n){while(1)switch(n.prev=n.next){case 0:if(e.preventDefault(),s=(0,be.Z)(t.$refs.changePasswordForm.querySelectorAll("input[name]")).reduce((function(e,t){return e[t.name]=t.value,e}),{}),s.new_password===s.confirm_new_password){n.next=5;break}return t.notify({title:"Unable to update password",text:"Please check that the passwords match",error:!0,image:{iconClass:"fas fa-times"}}),n.abrupt("return");case 5:return t.commandRunning=!0,i=!1,n.prev=7,n.next=10,t.request("user.update_password",{username:s.username,old_password:s.password,new_password:s.new_password});case 10:i=n.sent;case 11:return n.prev=11,t.commandRunning=!1,n.finish(11);case 14:i?(t.$refs.changePasswordModal.close(),t.notify({text:"Password successfully updated",image:{iconClass:"fas fa-check"}})):t.notify({title:"Unable to update password",text:"The current password is incorrect",error:!0,image:{iconClass:"fas fa-times"}});case 15:case"end":return n.stop()}}),n,null,[[7,,11,14]])})))()},deleteUser:function(e){var t=this;return(0,u.Z)(regeneratorRuntime.mark((function n(){return regeneratorRuntime.wrap((function(n){while(1)switch(n.prev=n.next){case 0:if(confirm("Are you sure that you want to remove the user "+e.username+"?")){n.next=2;break}return n.abrupt("return");case 2:return t.commandRunning=!0,n.prev=3,n.next=6,t.request("user.delete_user",{username:e.username,session_token:t.sessionToken});case 6:return n.prev=6,t.commandRunning=!1,n.finish(6);case 9:return t.notify({text:"User "+e.username+" removed",image:{iconClass:"fas fa-check"}}),n.next=12,t.refresh();case 12:case"end":return n.stop()}}),n,null,[[3,,6,9]])})))()}},mounted:function(){this.refresh()}});const ye=(0,ee.Z)(we,[["render",ve]]);var ke=ye,xe={name:"Settings",components:{Dropdown:d.Z,DropdownItem:f.Z,Users:ke,Token:ne},mixins:[J.Z],data:function(){return{selectedView:"users",currentUser:null,sessionToken:null}},methods:{refresh:function(){var e=this;return(0,u.Z)(regeneratorRuntime.mark((function t(){return regeneratorRuntime.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return e.sessionToken=e.getCookies()["session_token"],t.next=3,e.request("user.get_user_by_session",{session_token:e.sessionToken});case 3:e.currentUser=t.sent;case 4:case"end":return t.stop()}}),t)})))()}},mounted:function(){this.refresh()}};const _e=(0,ee.Z)(xe,[["render",c]]);var Ce=_e},3379:function(e,t,n){var s={"./Camera/Index":[5528,5528],"./CameraAndroidIpcam/Index":[6739,6739],"./CameraCv/Index":[8184,5528,8184],"./CameraFfmpeg/Index":[5111,5528,5111],"./CameraGstreamer/Index":[699,5528,699],"./CameraIrMlx90640/Index":[9895,5528,9895],"./CameraPi/Index":[4548,5528,4548],"./Entities/Index":[8725,201],"./Execute/Index":[3956,3956],"./Light/Index":[8448,7782,3490,8448],"./LightHue/Index":[3724,7782,3490,8448,3724],"./Media/Index":[4196,7782,8337,7029,779,4196],"./MediaMplayer/Index":[6509,7782,8337,7029,779,4196,6509],"./MediaMpv/Index":[5895,7782,8337,7029,779,4196,5895],"./MediaOmxplayer/Index":[9633,7782,8337,7029,779,4196,9633],"./MediaVlc/Index":[767,7782,8337,7029,779,4196,767],"./Music/Index":[5781,7782,8337,7029,6833],"./MusicMpd/Index":[2957,7782,8337,7029,6833,2957],"./MusicSnapcast/Index":[2790,7782,3490,2790],"./MusicSpotify/Index":[7196,7782,8337,7029,6833,7196],"./Rtorrent/Index":[2820,8337,779,6162,2820],"./Settings/Index":[2715],"./Sound/Index":[5193,5193],"./Torrent/Index":[9299,8337,779,6162,9299],"./Tts/Index":[2466,4021,2466],"./TtsGoogle/Index":[1938,4021,1938],"./TvSamsungWs/Index":[615,615],"./ZigbeeMqtt/Index":[4848,7782,3490,4848],"./Zwave/Index":[8586,7782,3490,906,6027],"./ZwaveMqtt/Index":[2362,7782,3490,906,2362]};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":[345,345],"./Camera/Index":[2346,2346],"./Component/Index":[5824,7782,3490,5824],"./DateTime/Index":[1595,9575,1595],"./DateTimeWeather/Index":[346,1798,9575,346],"./ImageCarousel/Index":[6003,1798,9575,6003],"./Music/Index":[6013,6013],"./Plugin/Index":[1818,1818],"./RssNews/Index":[7420,7420],"./Weather/Index":[1798,1798]};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"},"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"},"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 r=t[s]={exports:{}};return e[s](r,r.exports,n),r.exports}n.m=e,function(){var e=[];n.O=function(t,s,i,r){if(!s){var a=1/0;for(u=0;u =r)&&Object.keys(n.O).every((function(e){return n.O[e](s[l])}))?s.splice(l--,1):(o=!1,r0&&e[u-1][2]>r;u--)e[u]=e[u-1];e[u]=[s,i,r]}}(),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 r=Object.create(null);n.r(r);var a={};e=e||[null,t({}),t([]),t(t)];for(var o=2&i&&s;"object"==typeof o&&!~e.indexOf(o);o=t(o))Object.getOwnPropertyNames(o).forEach((function(e){a[e]=function(){return s[e]}}));return a["default"]=function(){return s},n.d(r,a),r}}(),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+"-legacy."+{65:"a4e6662a",201:"9cd42d3b",345:"dcb6e74e",346:"f3cfa402",615:"fba0e1b5",675:"6f3d0433",699:"cb1ccfbb",767:"f33d812b",779:"4b8d600b",906:"23975966",1196:"9aa73c4d",1300:"526f4cf3",1595:"69aea4ae",1767:"0d72ab23",1798:"b42f39d9",1818:"03a52113",1938:"e350f72d",2346:"4845c2ae",2362:"034c153c",2466:"b6981a49",2790:"4cad67a6",2806:"a4faf9ad",2820:"869be689",2957:"a0d5f651",3194:"8b9635f4",3303:"337cf4d7",3490:"d482e29b",3724:"b00820ce",3956:"489057d5",4021:"a3380d38",4196:"7ab38e3c",4548:"e2883bdd",4848:"0b09aeb3",4981:"c4835180",5111:"262ea3c5",5157:"090db2a1",5193:"d8c2e027",5207:"b6625280",5498:"8c82ec84",5528:"c6626d00",5824:"6527ca08",5895:"e1ce8e90",5924:"7c59be4f",6003:"f3446996",6013:"b02eb716",6027:"15704eec",6162:"bf13f6e2",6164:"73de3e0f",6358:"e74bed57",6509:"ab6d64c3",6739:"c665b953",6815:"7ba5187b",6833:"78ead800",7029:"85f01cbd",7141:"d485cb27",7196:"a47a2493",7420:"a57de4be",7503:"ad9a73d9",7782:"724314a6",8135:"e2055fdf",8184:"702db0b7",8337:"fcf13df8",8444:"b113ba12",8448:"fd3bc403",9276:"c3089257",9299:"adb4a75b",9387:"a7ab196d",9418:"06c89318",9450:"ba028d4c",9575:"fb8eab70",9633:"8a00fadb",9895:"acee9428"}[e]+".js"}}(),function(){n.miniCssF=function(e){return"static/css/"+e+"."+{65:"45022021",201:"11f5843f",345:"19cf9d0d",346:"1706fbde",615:"8b95243c",675:"4cafd794",779:"e7924cac",906:"cb3bce26",1196:"7b6fd66b",1300:"96309a62",1767:"3f0d1aca",1798:"d0061372",1818:"8baa291c",2346:"d171e8f5",2790:"19201b3b",2806:"4f590a38",3194:"3df38d58",3303:"8fdecbd9",3490:"a327ba57",3724:"0fc70dd7",3956:"e39dd77e",4021:"fff19b0b",4196:"ea56d2c9",4848:"c9eab7f4",4981:"94bc04e2",5193:"37da0a16",5207:"2b89418c",5498:"9a543237",5528:"0f93a679",5824:"c1f06cf8",5924:"99a5e5ce",6003:"986b3ae1",6013:"d0054b15",6162:"748a42fd",6164:"72aca991",6358:"ebcb5dfd",6739:"11bad71d",6815:"5eeaa8c8",6833:"b5d8115c",7029:"b34577f7",7141:"8ae8ce03",7420:"f8b46177",7503:"42ed5848",7782:"a9f0ac90",8135:"59c68eb5",8444:"f8d1e9c7",8448:"fe9cee1a",9276:"d21e868a",9387:"317149bb",9418:"55ebc1ed",9450:"ef02fb64",9575:"21327597"}[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,r,a){if(e[s])e[s].push(i);else{var o,l;if(void 0!==r)for(var c=document.getElementsByTagName("script"),u=0;u {\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 \n\n \n\n\n\n\n\n","import { render } from \"./Notification.vue?vue&type=template&id=7646705e&scoped=true\"\nimport script from \"./Notification.vue?vue&type=script&lang=js\"\nexport * from \"./Notification.vue?vue&type=script&lang=js\"\n\nimport \"./Notification.vue?vue&type=style&index=0&id=7646705e&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-7646705e\"]])\n\nexport default __exports__","import { render } from \"./Notifications.vue?vue&type=template&id=6dc8bebc&scoped=true\"\nimport script from \"./Notifications.vue?vue&type=script&lang=js\"\nexport * from \"./Notifications.vue?vue&type=script&lang=js\"\n\nimport \"./Notifications.vue?vue&type=style&index=0&id=6dc8bebc&scoped=true&lang=css\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-6dc8bebc\"]])\n\nexport default __exports__","\n \n\n\n\n","import { render } from \"./Events.vue?vue&type=template&id=6a0e6afd\"\nimport script from \"./Events.vue?vue&type=script&lang=js\"\nexport * from \"./Events.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/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","import { render } from \"./VoiceAssistant.vue?vue&type=template&id=3f009270\"\nimport script from \"./VoiceAssistant.vue?vue&type=script&lang=js\"\nexport * from \"./VoiceAssistant.vue?vue&type=script&lang=js\"\n\nimport \"./VoiceAssistant.vue?vue&type=style&index=0&id=3f009270&lang=scss\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n \n\n\n\n","import { render } from \"./Ntfy.vue?vue&type=template&id=1c4a4708\"\nimport script from \"./Ntfy.vue?vue&type=script&lang=js\"\nexport * from \"./Ntfy.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n \n\n\n\n","import { render } from \"./Pushbullet.vue?vue&type=template&id=bf9869d4\"\nimport script from \"./Pushbullet.vue?vue&type=script&lang=js\"\nexport * from \"./Pushbullet.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./App.vue?vue&type=template&id=b2717a78\"\nimport script from \"./App.vue?vue&type=script&lang=js\"\nexport * from \"./App.vue?vue&type=script&lang=js\"\n\nimport \"./App.vue?vue&type=style&index=0&id=b2717a78&lang=scss\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/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 Assistant listening\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 \"./Row.vue?vue&type=template&id=1b4663f2&scoped=true\"\nimport script from \"./Row.vue?vue&type=script&lang=js\"\nexport * from \"./Row.vue?vue&type=script&lang=js\"\n\nimport \"./Row.vue?vue&type=style&index=0&id=1b4663f2&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-1b4663f2\"]])\n\nexport default __exports__","\n\n \n\n\n\n\n\n\n","import { render } from \"./Widget.vue?vue&type=template&id=5df52982&scoped=true\"\nimport script from \"./Widget.vue?vue&type=script&lang=js\"\nexport * from \"./Widget.vue?vue&type=script&lang=js\"\n\nimport \"./Widget.vue?vue&type=style&index=0&id=5df52982&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-5df52982\"]])\n\nexport default __exports__","import { render } from \"./Dashboard.vue?vue&type=template&id=54e0248a&scoped=true\"\nimport script from \"./Dashboard.vue?vue&type=script&lang=js\"\nexport * from \"./Dashboard.vue?vue&type=script&lang=js\"\n\nimport \"./Dashboard.vue?vue&type=style&index=0&id=54e0248a&lang=scss&scoped=true\"\nimport \"./Dashboard.vue?vue&type=style&index=1&id=54e0248a&lang=css\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-54e0248a\"]])\n\nexport default __exports__","\n\n Object not found
\n\n\n\n\n","import { render } from \"./NotFound.vue?vue&type=template&id=49501f4d\"\nimport script from \"./NotFound.vue?vue&type=script&lang=js\"\nexport * from \"./NotFound.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/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","import { render } from \"./Login.vue?vue&type=template&id=af0b14d0&scoped=true\"\nimport script from \"./Login.vue?vue&type=script&lang=js\"\nexport * from \"./Login.vue?vue&type=script&lang=js\"\n\nimport \"./Login.vue?vue&type=style&index=0&id=af0b14d0&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-af0b14d0\"]])\n\nexport default __exports__","\n\n\n\n\n","import { render } from \"./Register.vue?vue&type=template&id=1244b238\"\nimport script from \"./Register.vue?vue&type=script&lang=js\"\nexport * from \"./Register.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/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","import { render } from \"./Nav.vue?vue&type=template&id=d9ea25f0&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=d9ea25f0&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-d9ea25f0\"]])\n\nexport default __exports__","import { render } from \"./Panel.vue?vue&type=template&id=fbc09254&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=fbc09254&lang=scss&scoped=true\"\nimport \"./Panel.vue?vue&type=style&index=1&id=fbc09254&lang=css\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-fbc09254\"]])\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","import { render } from \"./Plugin.vue?vue&type=template&id=e339182c&scoped=true\"\nimport script from \"./Plugin.vue?vue&type=script&lang=js\"\nexport * from \"./Plugin.vue?vue&type=script&lang=js\"\n\nimport \"./Plugin.vue?vue&type=style&index=0&id=e339182c&lang=scss&scoped=true\"\nimport \"./Plugin.vue?vue&type=style&index=1&id=e339182c&lang=css\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-e339182c\"]])\n\nexport default __exports__","import { createWebHistory, createRouter } from \"vue-router\";\nimport Dashboard from \"@/views/Dashboard.vue\";\nimport NotFound from \"@/views/NotFound\";\nimport Login from \"@/views/Login\";\nimport Register from \"@/views/Register\";\nimport Panel from \"@/views/Panel\";\nimport Plugin from \"@/views/Plugin\";\n\nconst routes = [\n {\n path: \"/\",\n name: \"Panel\",\n component: Panel,\n },\n\n {\n path: \"/dashboard/:name\",\n name: \"Dashboard\",\n component: Dashboard,\n },\n\n {\n path: \"/plugin/:plugin\",\n name: \"Plugin\",\n component: Plugin,\n },\n\n {\n path: \"/login\",\n name: \"Login\",\n component: Login,\n },\n\n {\n path: \"/register\",\n name: \"Register\",\n component: Register,\n },\n\n {\n path: \"/:catchAll(.*)\",\n component: NotFound,\n },\n];\n\nconst router = createRouter({\n history: createWebHistory(),\n routes,\n});\n\nexport default router;\n","/* eslint-disable no-console */\n\nimport { register } from 'register-service-worker'\n\nif (process.env.NODE_ENV === 'production') {\n register(`${process.env.BASE_URL}service-worker.js`, {\n ready () {\n console.log(\n 'App is being served from cache by a service worker.\\n' +\n 'For more details, visit https://goo.gl/AFskqB'\n )\n },\n registered () {\n console.log('Service worker has been registered.')\n },\n cached () {\n console.log('Content has been cached for offline use.')\n },\n updatefound () {\n console.log('New content is downloading.')\n },\n updated () {\n console.log('New content is available; please refresh.')\n },\n offline () {\n console.log('No internet connection found. App is running in offline mode.')\n },\n error (error) {\n console.error('Error during service worker registration:', error)\n }\n })\n}\n","import { createApp } from 'vue'\nimport App from '@/App.vue'\nimport router from '@/router'\nimport './registerServiceWorker'\n\nconst app = createApp(App)\napp.config.globalProperties._config = window.config\napp.use(router).mount('#app')\n","\n\n","import script from \"./Api.vue?vue&type=script&lang=js\"\nexport * from \"./Api.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n","import script from \"./Cookies.vue?vue&type=script&lang=js\"\nexport * from \"./Cookies.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n","import script from \"./DateTime.vue?vue&type=script&lang=js\"\nexport * from \"./DateTime.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n","import script from \"./Events.vue?vue&type=script&lang=js\"\nexport * from \"./Events.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n","import script from \"./Notification.vue?vue&type=script&lang=js\"\nexport * from \"./Notification.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n","import script from \"./Screen.vue?vue&type=script&lang=js\"\nexport * from \"./Screen.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n","import script from \"./Text.vue?vue&type=script&lang=js\"\nexport * from \"./Text.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n","import script from \"./Types.vue?vue&type=script&lang=js\"\nexport * from \"./Types.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\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","import { render } from \"./Loading.vue?vue&type=template&id=4d9c871b&scoped=true\"\nconst script = {}\n\nimport \"./Loading.vue?vue&type=style&index=0&id=4d9c871b&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-4d9c871b\"]])\n\nexport default __exports__","\n\n \n\n\n\n\n\n\n\n\n","import { render } from \"./Modal.vue?vue&type=template&id=18f9fdba&scoped=true\"\nimport script from \"./Modal.vue?vue&type=script&lang=js\"\nexport * from \"./Modal.vue?vue&type=script&lang=js\"\n\nimport \"./Modal.vue?vue&type=style&index=0&id=18f9fdba&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-18f9fdba\"]])\n\nexport default __exports__","\n\n\n\n\n\n \n \n\n\n\n\n \n \n\n\n\n\n\n","import { render } from \"./ConfirmDialog.vue?vue&type=template&id=682db704&scoped=true\"\nimport script from \"./ConfirmDialog.vue?vue&type=script&lang=js\"\nexport * from \"./ConfirmDialog.vue?vue&type=script&lang=js\"\n\nimport \"./ConfirmDialog.vue?vue&type=style&index=0&id=682db704&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-682db704\"]])\n\nexport default __exports__","\n\n\n\n \n\n \n \n\n\n\n\n\n\n\n","import { render } from \"./Dropdown.vue?vue&type=template&id=5b964c03&scoped=true\"\nimport script from \"./Dropdown.vue?vue&type=script&lang=js\"\nexport * from \"./Dropdown.vue?vue&type=script&lang=js\"\n\nimport \"./Dropdown.vue?vue&type=style&index=0&id=5b964c03&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-5b964c03\"]])\n\nexport default __exports__","\n\n\n\n \n\n\n\n\n\n\n","import { render } from \"./DropdownItem.vue?vue&type=template&id=282d16b4&scoped=true\"\nimport script from \"./DropdownItem.vue?vue&type=script&lang=js\"\nexport * from \"./DropdownItem.vue?vue&type=script&lang=js\"\n\nimport \"./DropdownItem.vue?vue&type=style&index=0&id=282d16b4&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-282d16b4\"]])\n\nexport default __exports__","\n\n\n \n\n \n \n \n\n\n\n\n\n\n","import { render } from \"./Icon.vue?vue&type=template&id=706a3bd1&scoped=true\"\nimport script from \"./Icon.vue?vue&type=script&lang=js\"\nexport * from \"./Icon.vue?vue&type=script&lang=js\"\n\nimport \"./Icon.vue?vue&type=style&index=0&id=706a3bd1&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-706a3bd1\"]])\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","import { render } from \"./Token.vue?vue&type=template&id=2a4d58dc\"\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=2a4d58dc&lang=scss\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/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\nGenerate a JWT authentication token that can be used for API calls to the /execute endpoint.
\nYou can include the token in your requests in any of the following ways:
\n\n\n
\n\n Confirm your credentials in order to generate a new token.\n- Specify it on the Authorization: Bearer header;
\n- Specify it on the X-Token header;
\n- Specify it as a URL parameter: http://site:8008/execute?token=...;
\n- Specify it on the body of your JSON request: {\"type\":\"request\", \"action\", \"...\", \"token\":\"...\"}.
\n\n \n\n\n\n \n \n \n\n\n \n \n\n\n\n\n\n\n\n\n","import { render } from \"./Users.vue?vue&type=template&id=8de4f27c\"\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=8de4f27c&lang=scss\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./Index.vue?vue&type=template&id=37be3587\"\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=37be3587&lang=scss\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/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\t5528,\n\t\t5528\n\t],\n\t\"./CameraAndroidIpcam/Index\": [\n\t\t6739,\n\t\t6739\n\t],\n\t\"./CameraCv/Index\": [\n\t\t8184,\n\t\t5528,\n\t\t8184\n\t],\n\t\"./CameraFfmpeg/Index\": [\n\t\t5111,\n\t\t5528,\n\t\t5111\n\t],\n\t\"./CameraGstreamer/Index\": [\n\t\t699,\n\t\t5528,\n\t\t699\n\t],\n\t\"./CameraIrMlx90640/Index\": [\n\t\t9895,\n\t\t5528,\n\t\t9895\n\t],\n\t\"./CameraPi/Index\": [\n\t\t4548,\n\t\t5528,\n\t\t4548\n\t],\n\t\"./Entities/Index\": [\n\t\t8725,\n\t\t201\n\t],\n\t\"./Execute/Index\": [\n\t\t9539,\n\t\t9539\n\t],\n\t\"./Light/Index\": [\n\t\t8448,\n\t\t7782,\n\t\t3490,\n\t\t8448\n\t],\n\t\"./LightHue/Index\": [\n\t\t3724,\n\t\t7782,\n\t\t3490,\n\t\t8448,\n\t\t3724\n\t],\n\t\"./Media/Index\": [\n\t\t4196,\n\t\t7782,\n\t\t8337,\n\t\t7029,\n\t\t779,\n\t\t4196\n\t],\n\t\"./MediaMplayer/Index\": [\n\t\t6509,\n\t\t7782,\n\t\t8337,\n\t\t7029,\n\t\t779,\n\t\t4196,\n\t\t6509\n\t],\n\t\"./MediaMpv/Index\": [\n\t\t5895,\n\t\t7782,\n\t\t8337,\n\t\t7029,\n\t\t779,\n\t\t4196,\n\t\t5895\n\t],\n\t\"./MediaOmxplayer/Index\": [\n\t\t9633,\n\t\t7782,\n\t\t8337,\n\t\t7029,\n\t\t779,\n\t\t4196,\n\t\t9633\n\t],\n\t\"./MediaVlc/Index\": [\n\t\t767,\n\t\t7782,\n\t\t8337,\n\t\t7029,\n\t\t779,\n\t\t4196,\n\t\t767\n\t],\n\t\"./Music/Index\": [\n\t\t5781,\n\t\t7782,\n\t\t8337,\n\t\t7029,\n\t\t6833\n\t],\n\t\"./MusicMpd/Index\": [\n\t\t2957,\n\t\t7782,\n\t\t8337,\n\t\t7029,\n\t\t6833,\n\t\t2957\n\t],\n\t\"./MusicSnapcast/Index\": [\n\t\t2790,\n\t\t7782,\n\t\t3490,\n\t\t2790\n\t],\n\t\"./MusicSpotify/Index\": [\n\t\t7196,\n\t\t7782,\n\t\t8337,\n\t\t7029,\n\t\t6833,\n\t\t7196\n\t],\n\t\"./Rtorrent/Index\": [\n\t\t2820,\n\t\t8337,\n\t\t779,\n\t\t6162,\n\t\t2820\n\t],\n\t\"./Settings/Index\": [\n\t\t2715\n\t],\n\t\"./Sound/Index\": [\n\t\t5193,\n\t\t5193\n\t],\n\t\"./Torrent/Index\": [\n\t\t9299,\n\t\t8337,\n\t\t779,\n\t\t6162,\n\t\t9299\n\t],\n\t\"./Tts/Index\": [\n\t\t2466,\n\t\t4021,\n\t\t2466\n\t],\n\t\"./TtsGoogle/Index\": [\n\t\t1938,\n\t\t4021,\n\t\t1938\n\t],\n\t\"./TvSamsungWs/Index\": [\n\t\t615,\n\t\t615\n\t],\n\t\"./ZigbeeMqtt/Index\": [\n\t\t4848,\n\t\t7782,\n\t\t3490,\n\t\t4848\n\t],\n\t\"./Zwave/Index\": [\n\t\t8586,\n\t\t7782,\n\t\t3490,\n\t\t906,\n\t\t6027\n\t],\n\t\"./ZwaveMqtt/Index\": [\n\t\t2362,\n\t\t7782,\n\t\t3490,\n\t\t906,\n\t\t2362\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\t345,\n\t\t345\n\t],\n\t\"./Camera/Index\": [\n\t\t2346,\n\t\t2346\n\t],\n\t\"./Component/Index\": [\n\t\t5824,\n\t\t7782,\n\t\t3490,\n\t\t5824\n\t],\n\t\"./DateTime/Index\": [\n\t\t1595,\n\t\t9575,\n\t\t1595\n\t],\n\t\"./DateTimeWeather/Index\": [\n\t\t346,\n\t\t1798,\n\t\t9575,\n\t\t346\n\t],\n\t\"./ImageCarousel/Index\": [\n\t\t6003,\n\t\t1798,\n\t\t9575,\n\t\t6003\n\t],\n\t\"./Music/Index\": [\n\t\t6013,\n\t\t6013\n\t],\n\t\"./Plugin/Index\": [\n\t\t1818,\n\t\t1818\n\t],\n\t\"./RssNews/Index\": [\n\t\t7420,\n\t\t7420\n\t],\n\t\"./Weather/Index\": [\n\t\t1798,\n\t\t1798\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](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 + \"-legacy.\" + {\"65\":\"a4e6662a\",\"201\":\"9cd42d3b\",\"345\":\"dcb6e74e\",\"346\":\"f3cfa402\",\"615\":\"fba0e1b5\",\"675\":\"6f3d0433\",\"699\":\"cb1ccfbb\",\"767\":\"f33d812b\",\"779\":\"4b8d600b\",\"906\":\"23975966\",\"1196\":\"9aa73c4d\",\"1300\":\"526f4cf3\",\"1595\":\"69aea4ae\",\"1767\":\"0d72ab23\",\"1798\":\"b42f39d9\",\"1818\":\"03a52113\",\"1938\":\"e350f72d\",\"2346\":\"4845c2ae\",\"2362\":\"034c153c\",\"2466\":\"b6981a49\",\"2790\":\"4cad67a6\",\"2806\":\"a4faf9ad\",\"2820\":\"869be689\",\"2957\":\"a0d5f651\",\"3194\":\"8b9635f4\",\"3303\":\"337cf4d7\",\"3490\":\"d482e29b\",\"3724\":\"b00820ce\",\"4021\":\"a3380d38\",\"4196\":\"7ab38e3c\",\"4548\":\"e2883bdd\",\"4848\":\"0b09aeb3\",\"4981\":\"c4835180\",\"5111\":\"262ea3c5\",\"5157\":\"090db2a1\",\"5193\":\"d8c2e027\",\"5207\":\"b6625280\",\"5498\":\"8c82ec84\",\"5528\":\"c6626d00\",\"5824\":\"6527ca08\",\"5895\":\"e1ce8e90\",\"5924\":\"7c59be4f\",\"6003\":\"f3446996\",\"6013\":\"b02eb716\",\"6027\":\"15704eec\",\"6162\":\"bf13f6e2\",\"6164\":\"73de3e0f\",\"6358\":\"e74bed57\",\"6509\":\"ab6d64c3\",\"6739\":\"c665b953\",\"6815\":\"7ba5187b\",\"6833\":\"78ead800\",\"7029\":\"85f01cbd\",\"7141\":\"d485cb27\",\"7196\":\"a47a2493\",\"7420\":\"a57de4be\",\"7503\":\"ad9a73d9\",\"7782\":\"724314a6\",\"8135\":\"e2055fdf\",\"8184\":\"702db0b7\",\"8337\":\"fcf13df8\",\"8444\":\"b113ba12\",\"8448\":\"fd3bc403\",\"9276\":\"c3089257\",\"9299\":\"adb4a75b\",\"9387\":\"a7ab196d\",\"9418\":\"06c89318\",\"9450\":\"ba028d4c\",\"9539\":\"651585ad\",\"9575\":\"fb8eab70\",\"9633\":\"8a00fadb\",\"9895\":\"acee9428\"}[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\":\"45022021\",\"201\":\"11f5843f\",\"345\":\"19cf9d0d\",\"346\":\"1706fbde\",\"615\":\"8b95243c\",\"675\":\"4cafd794\",\"779\":\"e7924cac\",\"906\":\"cb3bce26\",\"1196\":\"7b6fd66b\",\"1300\":\"96309a62\",\"1767\":\"3f0d1aca\",\"1798\":\"d0061372\",\"1818\":\"8baa291c\",\"2346\":\"d171e8f5\",\"2790\":\"19201b3b\",\"2806\":\"4f590a38\",\"3194\":\"3df38d58\",\"3303\":\"8fdecbd9\",\"3490\":\"a327ba57\",\"3724\":\"0fc70dd7\",\"4021\":\"fff19b0b\",\"4196\":\"ea56d2c9\",\"4848\":\"c9eab7f4\",\"4981\":\"94bc04e2\",\"5193\":\"37da0a16\",\"5207\":\"2b89418c\",\"5498\":\"9a543237\",\"5528\":\"0f93a679\",\"5824\":\"c1f06cf8\",\"5924\":\"99a5e5ce\",\"6003\":\"986b3ae1\",\"6013\":\"d0054b15\",\"6162\":\"748a42fd\",\"6164\":\"72aca991\",\"6358\":\"ebcb5dfd\",\"6739\":\"11bad71d\",\"6815\":\"5eeaa8c8\",\"6833\":\"b5d8115c\",\"7029\":\"b34577f7\",\"7141\":\"8ae8ce03\",\"7420\":\"f8b46177\",\"7503\":\"42ed5848\",\"7782\":\"a9f0ac90\",\"8135\":\"59c68eb5\",\"8444\":\"f8d1e9c7\",\"8448\":\"fe9cee1a\",\"9276\":\"d21e868a\",\"9387\":\"317149bb\",\"9418\":\"55ebc1ed\",\"9450\":\"ef02fb64\",\"9539\":\"17613a3b\",\"9575\":\"21327597\"}[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\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\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 = \"/\";","var createStylesheet = function(chunkId, fullhref, 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\tlinkTag.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\tdocument.head.appendChild(linkTag);\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, 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,\"201\":1,\"345\":1,\"346\":1,\"615\":1,\"675\":1,\"779\":1,\"906\":1,\"1196\":1,\"1300\":1,\"1767\":1,\"1798\":1,\"1818\":1,\"2346\":1,\"2790\":1,\"2806\":1,\"3194\":1,\"3303\":1,\"3490\":1,\"3724\":1,\"4021\":1,\"4196\":1,\"4848\":1,\"4981\":1,\"5193\":1,\"5207\":1,\"5498\":1,\"5528\":1,\"5824\":1,\"5924\":1,\"6003\":1,\"6013\":1,\"6162\":1,\"6164\":1,\"6358\":1,\"6739\":1,\"6815\":1,\"6833\":1,\"7029\":1,\"7141\":1,\"7420\":1,\"7503\":1,\"7782\":1,\"8135\":1,\"8444\":1,\"8448\":1,\"9276\":1,\"9387\":1,\"9418\":1,\"9450\":1,\"9539\":1,\"9575\":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(!/^(1300|3490|4021|4981|6162|7782|9575)$/.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__(5360); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["bus","mitt","publishEntity","entity","emit","onEntity","callback","on","publishNotification","notification","onNotification","hasWebsocket","ref","hasAssistant","hasPushbullet","hasNtfy","installPWA","class","notifications","id","index","key","text","html","title","link","image","warning","error","destroy","clicked","src","alt","icon","style","color","iconClass","name","props","methods","this","window","open","$emit","__exports__","components","Notification","duration","type","Number","default","data","timeouts","create","args","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","state","alerting","responding","speechRecognized","listening","Modal","mixins","Utils","responseText","phrase","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","pwaInstallEvent","computed","initConfig","request","prompt","pwaDialog","beforeMount","addEventListener","preventDefault","render","loading","classes","rows","row","i","widgets","widget","j","component","getWidgetProps","String","required","split","concat","Widget","Loading","Row","refreshSeconds","parseTemplate","tmpl","node","DOMParser","parseFromString","childNodes","attributes","nodeValue","getElementsByTagName","map","children","el","nodeName","attrs","reduce","obj","content","innerHTML","$options","refreshDashboard","$route","params","template","notifyError","setInterval","toFixed","method","placeholder","_register","value","register","Boolean","parseBoolean","Login","panels","selectedPanel","hostname","$event","panel","href","collapsed","panelNames","onItemClick","icons","imgUrl","emits","homeIdx","indexOf","slice","sort","collapsedDefault","isMobile","isTablet","Settings","Nav","plugins","backends","procedures","initSelectedPanel","match","hash","plugin","initPanels","entries","forEach","componentName","token","toUpperCase","join","comp","pluginName","parseConfig","Promise","all","initializeDefaultViews","execute","entities","initPanel","toString","routes","path","Panel","Dashboard","Plugin","Register","NotFound","router","createRouter","history","createWebHistory","process","ready","registered","cached","updatefound","updated","offline","app","createApp","App","globalProperties","_config","use","mount","showError","opts","resolve","reject","then","errors","output","catch","action","getCookies","document","cookie","item","k","v","formatDate","date","year","Date","toDateString","substring","formatTime","seconds","toTimeString","formatDateTime","_eventsReady","$root","subFunc","generateId","unwatch","$watch","newVal","btoa","fromCharCode","round","random","notifyWarning","matchMedia","matches","isDesktop","capitalize","charAt","prettify","t","toLowerCase","convertSize","unit","units","u","convertTime","time","ret","parseFloat","d","h","m","s","objectsEqual","a","b","p","Api","Cookies","DateTime","Screen","Text","Types","n","script","isVisible","zIndex","$attrs","width","height","stopPropagation","visible","level","timeoutId","prevVisible","hide","toggle","onKeyUp","visibleHndl","unmounted","removeEventListener","maxZIndex","getComputedStyle","$el","outermostModals","querySelectorAll","modal","onConfirm","confirmText","cancelText","items","keepOpenOnItemClick","documentClickHndl","element","target","dropdown","parentElement","left","top","button","getBoundingClientRect","innerWidth","clientWidth","innerHeight","clientHeight","itemClass","iconUrl","Icon","disabled","$parent","className","selectedView","usersView","addUserModal","sessionToken","currentUser","onTokenSelect","generateToken","username","password","validityDays","expiry_days","tokenModal","select","execCommand","createUser","commandRunning","changePassword","selectedUser","users","user","user_id","changePasswordModal","deleteUser","DropdownItem","Dropdown","refresh","form","addUserForm","input","confirm_password","session_token","changePasswordForm","new_password","confirm_new_password","success","old_password","confirm","Users","Token","webpackAsyncContext","req","__webpack_require__","o","Error","ids","module","exports","__webpack_module_cache__","moduleId","cachedModule","__webpack_modules__","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","call","inProgress","dataWebpackPrefix","l","done","needAttach","scripts","getAttribute","createElement","charset","nc","setAttribute","onScriptComplete","prev","onload","doneFns","parentNode","removeChild","head","appendChild","Symbol","toStringTag","createStylesheet","fullhref","linkTag","rel","onLinkComplete","errorType","realHref","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 +{"version":3,"file":"static/js/app-legacy.9462d538.js","mappings":"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,uBAAwB,CACvB,KACA,KACA,KACA,KACA,IACA,KACA,MAED,mBAAoB,CACnB,KACA,KACA,KACA,KACA,IACA,KACA,MAED,yBAA0B,CACzB,KACA,KACA,KACA,KACA,IACA,KACA,MAED,mBAAoB,CACnB,IACA,KACA,KACA,KACA,IACA,KACA,KAED,gBAAiB,CAChB,KACA,KACA,KACA,KACA,MAED,mBAAoB,CACnB,KACA,KACA,KACA,KACA,KACA,MAED,wBAAyB,CACxB,KACA,KACA,KACA,MAED,uBAAwB,CACvB,KACA,KACA,KACA,KACA,KACA,MAED,mBAAoB,CACnB,KACA,KACA,IACA,KACA,MAED,mBAAoB,CACnB,MAED,gBAAiB,CAChB,KACA,MAED,kBAAmB,CAClB,KACA,KACA,IACA,KACA,MAED,cAAe,CACd,KACA,KACA,MAED,oBAAqB,CACpB,KACA,KACA,MAED,sBAAuB,CACtB,IACA,KAED,qBAAsB,CACrB,KACA,KACA,KACA,MAED,gBAAiB,CAChB,KACA,KACA,KACA,IACA,MAED,oBAAqB,CACpB,KACA,KACA,KACA,IACA,OAGF,SAASyP,EAAoBC,GAC5B,IAAIC,EAAoBC,EAAE5P,EAAK0P,GAC9B,OAAO3L,QAAQkC,UAAUE,MAAK,WAC7B,IAAI9M,EAAI,IAAIwW,MAAM,uBAAyBH,EAAM,KAEjD,MADArW,EAAEc,KAAO,mBACHd,CACP,IAGD,IAAIyW,EAAM9P,EAAI0P,GAAMja,EAAKqa,EAAI,GAC7B,OAAO/L,QAAQC,IAAI8L,EAAIvN,MAAM,GAAGvC,IAAI2P,EAAoBtW,IAAI8M,MAAK,WAChE,OAAOwJ,EAAoBla,EAC5B,GACD,CACAga,EAAoBpU,KAAO,WAAa,OAAO5B,OAAO4B,KAAK2E,EAAM,EACjEyP,EAAoBha,GAAK,KACzBsa,EAAOC,QAAUP,C,uBCxMjB,IAAIzP,EAAM,CACT,mBAAoB,CACnB,IACA,KAED,iBAAkB,CACjB,KACA,MAED,oBAAqB,CACpB,KACA,KACA,KACA,MAED,mBAAoB,CACnB,KACA,KACA,MAED,0BAA2B,CAC1B,IAC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","sources":["webpack://platypush/./src/bus.js","webpack://platypush/./src/App.vue","webpack://platypush/./src/components/Notifications.vue","webpack://platypush/./src/components/Notification.vue","webpack://platypush/./src/components/Notification.vue?deb2","webpack://platypush/./src/components/Notifications.vue?e79f","webpack://platypush/./src/Events.vue","webpack://platypush/./src/Events.vue?0562","webpack://platypush/./src/components/VoiceAssistant.vue","webpack://platypush/./src/components/VoiceAssistant.vue?e102","webpack://platypush/./src/components/Ntfy.vue","webpack://platypush/./src/components/Ntfy.vue?4660","webpack://platypush/./src/components/Pushbullet.vue","webpack://platypush/./src/components/Pushbullet.vue?a5f8","webpack://platypush/./src/App.vue?7ccd","webpack://platypush/./src/views/Dashboard.vue","webpack://platypush/./src/components/widgets/Row.vue","webpack://platypush/./src/components/widgets/Row.vue?bc29","webpack://platypush/./src/components/widgets/Widget.vue","webpack://platypush/./src/components/widgets/Widget.vue?043c","webpack://platypush/./src/views/Dashboard.vue?040e","webpack://platypush/./src/views/NotFound.vue","webpack://platypush/./src/views/NotFound.vue?0aab","webpack://platypush/./src/views/Login.vue","webpack://platypush/./src/views/Login.vue?240b","webpack://platypush/./src/views/Register.vue","webpack://platypush/./src/views/Register.vue?157d","webpack://platypush/./src/views/Panel.vue","webpack://platypush/./src/components/Nav.vue","webpack://platypush/./src/components/Nav.vue?1f44","webpack://platypush/./src/views/Panel.vue?792f","webpack://platypush/./src/views/Plugin.vue","webpack://platypush/./src/views/Plugin.vue?41f6","webpack://platypush/./src/router/index.js","webpack://platypush/./src/registerServiceWorker.js","webpack://platypush/./src/main.js","webpack://platypush/./src/utils/Api.vue","webpack://platypush/./src/utils/Api.vue?331a","webpack://platypush/./src/utils/Cookies.vue","webpack://platypush/./src/utils/Cookies.vue?0832","webpack://platypush/./src/utils/DateTime.vue","webpack://platypush/./src/utils/DateTime.vue?3df3","webpack://platypush/./src/utils/Events.vue","webpack://platypush/./src/utils/Events.vue?ad6c","webpack://platypush/./src/utils/Notification.vue","webpack://platypush/./src/utils/Notification.vue?b668","webpack://platypush/./src/utils/Screen.vue","webpack://platypush/./src/utils/Screen.vue?714e","webpack://platypush/./src/utils/Text.vue","webpack://platypush/./src/utils/Text.vue?61b3","webpack://platypush/./src/utils/Types.vue","webpack://platypush/./src/utils/Types.vue?2b41","webpack://platypush/./src/Utils.vue","webpack://platypush/./src/Utils.vue?83c2","webpack://platypush/./src/components/Loading.vue","webpack://platypush/./src/components/Loading.vue?1ccf","webpack://platypush/./src/components/Modal.vue","webpack://platypush/./src/components/Modal.vue?db1b","webpack://platypush/./src/components/elements/ConfirmDialog.vue","webpack://platypush/./src/components/elements/ConfirmDialog.vue?f384","webpack://platypush/./src/components/elements/Dropdown.vue","webpack://platypush/./src/components/elements/Dropdown.vue?e934","webpack://platypush/./src/components/elements/DropdownItem.vue","webpack://platypush/./src/components/elements/DropdownItem.vue?d591","webpack://platypush/./src/components/elements/Icon.vue","webpack://platypush/./src/components/elements/Icon.vue?fdba","webpack://platypush/./src/components/panels/Settings/Index.vue","webpack://platypush/./src/components/panels/Settings/Token.vue","webpack://platypush/./src/components/panels/Settings/Token.vue?4a12","webpack://platypush/./src/components/panels/Settings/Users.vue","webpack://platypush/./src/components/panels/Settings/Users.vue?407b","webpack://platypush/./src/components/panels/Settings/Index.vue?0df9","webpack://platypush/./src/components/panels|lazy|/^\\.\\/.*\\/Index$/|groupOptions: {}|namespace object","webpack://platypush/./src/components/widgets|lazy|/^\\.\\/.*\\/Index$/|groupOptions: {}|namespace object","webpack://platypush/webpack/bootstrap","webpack://platypush/webpack/runtime/chunk loaded","webpack://platypush/webpack/runtime/compat get default export","webpack://platypush/webpack/runtime/create fake namespace object","webpack://platypush/webpack/runtime/define property getters","webpack://platypush/webpack/runtime/ensure chunk","webpack://platypush/webpack/runtime/get javascript chunk filename","webpack://platypush/webpack/runtime/get mini-css chunk filename","webpack://platypush/webpack/runtime/global","webpack://platypush/webpack/runtime/hasOwnProperty shorthand","webpack://platypush/webpack/runtime/load script","webpack://platypush/webpack/runtime/make namespace object","webpack://platypush/webpack/runtime/publicPath","webpack://platypush/webpack/runtime/css loading","webpack://platypush/webpack/runtime/jsonp chunk loading","webpack://platypush/webpack/startup"],"sourcesContent":["import mitt from 'mitt'\n\nconst bus = mitt()\n\nbus.publishEntity = (entity) => {\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\n\n \n\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 \n\n \n\n\n\n\n\n","import { render } from \"./Notification.vue?vue&type=template&id=7646705e&scoped=true\"\nimport script from \"./Notification.vue?vue&type=script&lang=js\"\nexport * from \"./Notification.vue?vue&type=script&lang=js\"\n\nimport \"./Notification.vue?vue&type=style&index=0&id=7646705e&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-7646705e\"]])\n\nexport default __exports__","import { render } from \"./Notifications.vue?vue&type=template&id=6dc8bebc&scoped=true\"\nimport script from \"./Notifications.vue?vue&type=script&lang=js\"\nexport * from \"./Notifications.vue?vue&type=script&lang=js\"\n\nimport \"./Notifications.vue?vue&type=style&index=0&id=6dc8bebc&scoped=true&lang=css\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-6dc8bebc\"]])\n\nexport default __exports__","\n \n\n\n\n","import { render } from \"./Events.vue?vue&type=template&id=6a0e6afd\"\nimport script from \"./Events.vue?vue&type=script&lang=js\"\nexport * from \"./Events.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/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","import { render } from \"./VoiceAssistant.vue?vue&type=template&id=3f009270\"\nimport script from \"./VoiceAssistant.vue?vue&type=script&lang=js\"\nexport * from \"./VoiceAssistant.vue?vue&type=script&lang=js\"\n\nimport \"./VoiceAssistant.vue?vue&type=style&index=0&id=3f009270&lang=scss\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n \n\n\n\n","import { render } from \"./Ntfy.vue?vue&type=template&id=1c4a4708\"\nimport script from \"./Ntfy.vue?vue&type=script&lang=js\"\nexport * from \"./Ntfy.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n \n\n\n\n","import { render } from \"./Pushbullet.vue?vue&type=template&id=bf9869d4\"\nimport script from \"./Pushbullet.vue?vue&type=script&lang=js\"\nexport * from \"./Pushbullet.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./App.vue?vue&type=template&id=b2717a78\"\nimport script from \"./App.vue?vue&type=script&lang=js\"\nexport * from \"./App.vue?vue&type=script&lang=js\"\n\nimport \"./App.vue?vue&type=style&index=0&id=b2717a78&lang=scss\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/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 Assistant listening\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 \"./Row.vue?vue&type=template&id=1b4663f2&scoped=true\"\nimport script from \"./Row.vue?vue&type=script&lang=js\"\nexport * from \"./Row.vue?vue&type=script&lang=js\"\n\nimport \"./Row.vue?vue&type=style&index=0&id=1b4663f2&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-1b4663f2\"]])\n\nexport default __exports__","\n\n \n\n\n\n\n\n\n","import { render } from \"./Widget.vue?vue&type=template&id=5df52982&scoped=true\"\nimport script from \"./Widget.vue?vue&type=script&lang=js\"\nexport * from \"./Widget.vue?vue&type=script&lang=js\"\n\nimport \"./Widget.vue?vue&type=style&index=0&id=5df52982&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-5df52982\"]])\n\nexport default __exports__","import { render } from \"./Dashboard.vue?vue&type=template&id=54e0248a&scoped=true\"\nimport script from \"./Dashboard.vue?vue&type=script&lang=js\"\nexport * from \"./Dashboard.vue?vue&type=script&lang=js\"\n\nimport \"./Dashboard.vue?vue&type=style&index=0&id=54e0248a&lang=scss&scoped=true\"\nimport \"./Dashboard.vue?vue&type=style&index=1&id=54e0248a&lang=css\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-54e0248a\"]])\n\nexport default __exports__","\n\n Object not found
\n\n\n\n\n","import { render } from \"./NotFound.vue?vue&type=template&id=49501f4d\"\nimport script from \"./NotFound.vue?vue&type=script&lang=js\"\nexport * from \"./NotFound.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/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","import { render } from \"./Login.vue?vue&type=template&id=af0b14d0&scoped=true\"\nimport script from \"./Login.vue?vue&type=script&lang=js\"\nexport * from \"./Login.vue?vue&type=script&lang=js\"\n\nimport \"./Login.vue?vue&type=style&index=0&id=af0b14d0&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-af0b14d0\"]])\n\nexport default __exports__","\n\n\n\n\n","import { render } from \"./Register.vue?vue&type=template&id=1244b238\"\nimport script from \"./Register.vue?vue&type=script&lang=js\"\nexport * from \"./Register.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/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","import { render } from \"./Nav.vue?vue&type=template&id=d9ea25f0&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=d9ea25f0&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-d9ea25f0\"]])\n\nexport default __exports__","import { render } from \"./Panel.vue?vue&type=template&id=fbc09254&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=fbc09254&lang=scss&scoped=true\"\nimport \"./Panel.vue?vue&type=style&index=1&id=fbc09254&lang=css\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-fbc09254\"]])\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","import { render } from \"./Plugin.vue?vue&type=template&id=e339182c&scoped=true\"\nimport script from \"./Plugin.vue?vue&type=script&lang=js\"\nexport * from \"./Plugin.vue?vue&type=script&lang=js\"\n\nimport \"./Plugin.vue?vue&type=style&index=0&id=e339182c&lang=scss&scoped=true\"\nimport \"./Plugin.vue?vue&type=style&index=1&id=e339182c&lang=css\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-e339182c\"]])\n\nexport default __exports__","import { createWebHistory, createRouter } from \"vue-router\";\nimport Dashboard from \"@/views/Dashboard.vue\";\nimport NotFound from \"@/views/NotFound\";\nimport Login from \"@/views/Login\";\nimport Register from \"@/views/Register\";\nimport Panel from \"@/views/Panel\";\nimport Plugin from \"@/views/Plugin\";\n\nconst routes = [\n {\n path: \"/\",\n name: \"Panel\",\n component: Panel,\n },\n\n {\n path: \"/dashboard/:name\",\n name: \"Dashboard\",\n component: Dashboard,\n },\n\n {\n path: \"/plugin/:plugin\",\n name: \"Plugin\",\n component: Plugin,\n },\n\n {\n path: \"/login\",\n name: \"Login\",\n component: Login,\n },\n\n {\n path: \"/register\",\n name: \"Register\",\n component: Register,\n },\n\n {\n path: \"/:catchAll(.*)\",\n component: NotFound,\n },\n];\n\nconst router = createRouter({\n history: createWebHistory(),\n routes,\n});\n\nexport default router;\n","/* eslint-disable no-console */\n\nimport { register } from 'register-service-worker'\n\nif (process.env.NODE_ENV === 'production') {\n register(`${process.env.BASE_URL}service-worker.js`, {\n ready () {\n console.log(\n 'App is being served from cache by a service worker.\\n' +\n 'For more details, visit https://goo.gl/AFskqB'\n )\n },\n registered () {\n console.log('Service worker has been registered.')\n },\n cached () {\n console.log('Content has been cached for offline use.')\n },\n updatefound () {\n console.log('New content is downloading.')\n },\n updated () {\n console.log('New content is available; please refresh.')\n },\n offline () {\n console.log('No internet connection found. App is running in offline mode.')\n },\n error (error) {\n console.error('Error during service worker registration:', error)\n }\n })\n}\n","import { createApp } from 'vue'\nimport App from '@/App.vue'\nimport router from '@/router'\nimport './registerServiceWorker'\n\nconst app = createApp(App)\napp.config.globalProperties._config = window.config\napp.use(router).mount('#app')\n","\n\n","import script from \"./Api.vue?vue&type=script&lang=js\"\nexport * from \"./Api.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n","import script from \"./Cookies.vue?vue&type=script&lang=js\"\nexport * from \"./Cookies.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n","import script from \"./DateTime.vue?vue&type=script&lang=js\"\nexport * from \"./DateTime.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n","import script from \"./Events.vue?vue&type=script&lang=js\"\nexport * from \"./Events.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n","import script from \"./Notification.vue?vue&type=script&lang=js\"\nexport * from \"./Notification.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n","import script from \"./Screen.vue?vue&type=script&lang=js\"\nexport * from \"./Screen.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n","import script from \"./Text.vue?vue&type=script&lang=js\"\nexport * from \"./Text.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n","import script from \"./Types.vue?vue&type=script&lang=js\"\nexport * from \"./Types.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\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","import { render } from \"./Loading.vue?vue&type=template&id=4d9c871b&scoped=true\"\nconst script = {}\n\nimport \"./Loading.vue?vue&type=style&index=0&id=4d9c871b&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-4d9c871b\"]])\n\nexport default __exports__","\n\n \n\n\n\n\n\n\n\n\n","import { render } from \"./Modal.vue?vue&type=template&id=18f9fdba&scoped=true\"\nimport script from \"./Modal.vue?vue&type=script&lang=js\"\nexport * from \"./Modal.vue?vue&type=script&lang=js\"\n\nimport \"./Modal.vue?vue&type=style&index=0&id=18f9fdba&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-18f9fdba\"]])\n\nexport default __exports__","\n\n\n\n\n\n \n \n\n\n\n\n \n \n\n\n\n\n\n","import { render } from \"./ConfirmDialog.vue?vue&type=template&id=682db704&scoped=true\"\nimport script from \"./ConfirmDialog.vue?vue&type=script&lang=js\"\nexport * from \"./ConfirmDialog.vue?vue&type=script&lang=js\"\n\nimport \"./ConfirmDialog.vue?vue&type=style&index=0&id=682db704&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-682db704\"]])\n\nexport default __exports__","\n\n\n\n \n\n \n \n\n\n\n\n\n\n\n","import { render } from \"./Dropdown.vue?vue&type=template&id=5b964c03&scoped=true\"\nimport script from \"./Dropdown.vue?vue&type=script&lang=js\"\nexport * from \"./Dropdown.vue?vue&type=script&lang=js\"\n\nimport \"./Dropdown.vue?vue&type=style&index=0&id=5b964c03&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-5b964c03\"]])\n\nexport default __exports__","\n\n\n\n \n\n\n\n\n\n\n","import { render } from \"./DropdownItem.vue?vue&type=template&id=282d16b4&scoped=true\"\nimport script from \"./DropdownItem.vue?vue&type=script&lang=js\"\nexport * from \"./DropdownItem.vue?vue&type=script&lang=js\"\n\nimport \"./DropdownItem.vue?vue&type=style&index=0&id=282d16b4&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-282d16b4\"]])\n\nexport default __exports__","\n\n\n \n\n \n \n \n\n\n\n\n\n\n","import { render } from \"./Icon.vue?vue&type=template&id=706a3bd1&scoped=true\"\nimport script from \"./Icon.vue?vue&type=script&lang=js\"\nexport * from \"./Icon.vue?vue&type=script&lang=js\"\n\nimport \"./Icon.vue?vue&type=style&index=0&id=706a3bd1&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-706a3bd1\"]])\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","import { render } from \"./Token.vue?vue&type=template&id=2a4d58dc\"\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=2a4d58dc&lang=scss\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/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\nGenerate a JWT authentication token that can be used for API calls to the /execute endpoint.
\nYou can include the token in your requests in any of the following ways:
\n\n\n
\n\n Confirm your credentials in order to generate a new token.\n- Specify it on the Authorization: Bearer header;
\n- Specify it on the X-Token header;
\n- Specify it as a URL parameter: http://site:8008/execute?token=...;
\n- Specify it on the body of your JSON request: {\"type\":\"request\", \"action\", \"...\", \"token\":\"...\"}.
\n\n \n\n\n\n \n \n \n\n\n \n \n\n\n\n\n\n\n\n\n","import { render } from \"./Users.vue?vue&type=template&id=8de4f27c\"\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=8de4f27c&lang=scss\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./Index.vue?vue&type=template&id=37be3587\"\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=37be3587&lang=scss\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/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\t5528,\n\t\t5528\n\t],\n\t\"./CameraAndroidIpcam/Index\": [\n\t\t6739,\n\t\t6739\n\t],\n\t\"./CameraCv/Index\": [\n\t\t8184,\n\t\t5528,\n\t\t8184\n\t],\n\t\"./CameraFfmpeg/Index\": [\n\t\t5111,\n\t\t5528,\n\t\t5111\n\t],\n\t\"./CameraGstreamer/Index\": [\n\t\t699,\n\t\t5528,\n\t\t699\n\t],\n\t\"./CameraIrMlx90640/Index\": [\n\t\t9895,\n\t\t5528,\n\t\t9895\n\t],\n\t\"./CameraPi/Index\": [\n\t\t4548,\n\t\t5528,\n\t\t4548\n\t],\n\t\"./Entities/Index\": [\n\t\t8725,\n\t\t201\n\t],\n\t\"./Execute/Index\": [\n\t\t3956,\n\t\t3956\n\t],\n\t\"./Light/Index\": [\n\t\t8448,\n\t\t7782,\n\t\t3490,\n\t\t8448\n\t],\n\t\"./LightHue/Index\": [\n\t\t3724,\n\t\t7782,\n\t\t3490,\n\t\t8448,\n\t\t3724\n\t],\n\t\"./Media/Index\": [\n\t\t4196,\n\t\t7782,\n\t\t8337,\n\t\t7029,\n\t\t779,\n\t\t4196\n\t],\n\t\"./MediaMplayer/Index\": [\n\t\t6509,\n\t\t7782,\n\t\t8337,\n\t\t7029,\n\t\t779,\n\t\t4196,\n\t\t6509\n\t],\n\t\"./MediaMpv/Index\": [\n\t\t5895,\n\t\t7782,\n\t\t8337,\n\t\t7029,\n\t\t779,\n\t\t4196,\n\t\t5895\n\t],\n\t\"./MediaOmxplayer/Index\": [\n\t\t9633,\n\t\t7782,\n\t\t8337,\n\t\t7029,\n\t\t779,\n\t\t4196,\n\t\t9633\n\t],\n\t\"./MediaVlc/Index\": [\n\t\t767,\n\t\t7782,\n\t\t8337,\n\t\t7029,\n\t\t779,\n\t\t4196,\n\t\t767\n\t],\n\t\"./Music/Index\": [\n\t\t5781,\n\t\t7782,\n\t\t8337,\n\t\t7029,\n\t\t6833\n\t],\n\t\"./MusicMpd/Index\": [\n\t\t2957,\n\t\t7782,\n\t\t8337,\n\t\t7029,\n\t\t6833,\n\t\t2957\n\t],\n\t\"./MusicSnapcast/Index\": [\n\t\t2790,\n\t\t7782,\n\t\t3490,\n\t\t2790\n\t],\n\t\"./MusicSpotify/Index\": [\n\t\t7196,\n\t\t7782,\n\t\t8337,\n\t\t7029,\n\t\t6833,\n\t\t7196\n\t],\n\t\"./Rtorrent/Index\": [\n\t\t2820,\n\t\t8337,\n\t\t779,\n\t\t6162,\n\t\t2820\n\t],\n\t\"./Settings/Index\": [\n\t\t2715\n\t],\n\t\"./Sound/Index\": [\n\t\t5193,\n\t\t5193\n\t],\n\t\"./Torrent/Index\": [\n\t\t9299,\n\t\t8337,\n\t\t779,\n\t\t6162,\n\t\t9299\n\t],\n\t\"./Tts/Index\": [\n\t\t2466,\n\t\t4021,\n\t\t2466\n\t],\n\t\"./TtsGoogle/Index\": [\n\t\t1938,\n\t\t4021,\n\t\t1938\n\t],\n\t\"./TvSamsungWs/Index\": [\n\t\t615,\n\t\t615\n\t],\n\t\"./ZigbeeMqtt/Index\": [\n\t\t4848,\n\t\t7782,\n\t\t3490,\n\t\t4848\n\t],\n\t\"./Zwave/Index\": [\n\t\t8586,\n\t\t7782,\n\t\t3490,\n\t\t906,\n\t\t6027\n\t],\n\t\"./ZwaveMqtt/Index\": [\n\t\t2362,\n\t\t7782,\n\t\t3490,\n\t\t906,\n\t\t2362\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\t345,\n\t\t345\n\t],\n\t\"./Camera/Index\": [\n\t\t2346,\n\t\t2346\n\t],\n\t\"./Component/Index\": [\n\t\t5824,\n\t\t7782,\n\t\t3490,\n\t\t5824\n\t],\n\t\"./DateTime/Index\": [\n\t\t1595,\n\t\t9575,\n\t\t1595\n\t],\n\t\"./DateTimeWeather/Index\": [\n\t\t346,\n\t\t1798,\n\t\t9575,\n\t\t346\n\t],\n\t\"./ImageCarousel/Index\": [\n\t\t6003,\n\t\t1798,\n\t\t9575,\n\t\t6003\n\t],\n\t\"./Music/Index\": [\n\t\t6013,\n\t\t6013\n\t],\n\t\"./Plugin/Index\": [\n\t\t1818,\n\t\t1818\n\t],\n\t\"./RssNews/Index\": [\n\t\t7420,\n\t\t7420\n\t],\n\t\"./Weather/Index\": [\n\t\t1798,\n\t\t1798\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](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 + \"-legacy.\" + {\"65\":\"a4e6662a\",\"201\":\"9cd42d3b\",\"345\":\"dcb6e74e\",\"346\":\"f3cfa402\",\"615\":\"fba0e1b5\",\"675\":\"6f3d0433\",\"699\":\"cb1ccfbb\",\"767\":\"f33d812b\",\"779\":\"4b8d600b\",\"906\":\"23975966\",\"1196\":\"9aa73c4d\",\"1300\":\"526f4cf3\",\"1595\":\"69aea4ae\",\"1767\":\"0d72ab23\",\"1798\":\"b42f39d9\",\"1818\":\"03a52113\",\"1938\":\"e350f72d\",\"2346\":\"4845c2ae\",\"2362\":\"034c153c\",\"2466\":\"b6981a49\",\"2790\":\"4cad67a6\",\"2806\":\"a4faf9ad\",\"2820\":\"869be689\",\"2957\":\"a0d5f651\",\"3194\":\"8b9635f4\",\"3303\":\"337cf4d7\",\"3490\":\"d482e29b\",\"3724\":\"b00820ce\",\"3956\":\"489057d5\",\"4021\":\"a3380d38\",\"4196\":\"7ab38e3c\",\"4548\":\"e2883bdd\",\"4848\":\"0b09aeb3\",\"4981\":\"c4835180\",\"5111\":\"262ea3c5\",\"5157\":\"090db2a1\",\"5193\":\"d8c2e027\",\"5207\":\"b6625280\",\"5498\":\"8c82ec84\",\"5528\":\"c6626d00\",\"5824\":\"6527ca08\",\"5895\":\"e1ce8e90\",\"5924\":\"7c59be4f\",\"6003\":\"f3446996\",\"6013\":\"b02eb716\",\"6027\":\"15704eec\",\"6162\":\"bf13f6e2\",\"6164\":\"73de3e0f\",\"6358\":\"e74bed57\",\"6509\":\"ab6d64c3\",\"6739\":\"c665b953\",\"6815\":\"7ba5187b\",\"6833\":\"78ead800\",\"7029\":\"85f01cbd\",\"7141\":\"d485cb27\",\"7196\":\"a47a2493\",\"7420\":\"a57de4be\",\"7503\":\"ad9a73d9\",\"7782\":\"724314a6\",\"8135\":\"e2055fdf\",\"8184\":\"702db0b7\",\"8337\":\"fcf13df8\",\"8444\":\"b113ba12\",\"8448\":\"fd3bc403\",\"9276\":\"c3089257\",\"9299\":\"adb4a75b\",\"9387\":\"a7ab196d\",\"9418\":\"06c89318\",\"9450\":\"ba028d4c\",\"9575\":\"fb8eab70\",\"9633\":\"8a00fadb\",\"9895\":\"acee9428\"}[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\":\"45022021\",\"201\":\"11f5843f\",\"345\":\"19cf9d0d\",\"346\":\"1706fbde\",\"615\":\"8b95243c\",\"675\":\"4cafd794\",\"779\":\"e7924cac\",\"906\":\"cb3bce26\",\"1196\":\"7b6fd66b\",\"1300\":\"96309a62\",\"1767\":\"3f0d1aca\",\"1798\":\"d0061372\",\"1818\":\"8baa291c\",\"2346\":\"d171e8f5\",\"2790\":\"19201b3b\",\"2806\":\"4f590a38\",\"3194\":\"3df38d58\",\"3303\":\"8fdecbd9\",\"3490\":\"a327ba57\",\"3724\":\"0fc70dd7\",\"3956\":\"e39dd77e\",\"4021\":\"fff19b0b\",\"4196\":\"ea56d2c9\",\"4848\":\"c9eab7f4\",\"4981\":\"94bc04e2\",\"5193\":\"37da0a16\",\"5207\":\"2b89418c\",\"5498\":\"9a543237\",\"5528\":\"0f93a679\",\"5824\":\"c1f06cf8\",\"5924\":\"99a5e5ce\",\"6003\":\"986b3ae1\",\"6013\":\"d0054b15\",\"6162\":\"748a42fd\",\"6164\":\"72aca991\",\"6358\":\"ebcb5dfd\",\"6739\":\"11bad71d\",\"6815\":\"5eeaa8c8\",\"6833\":\"b5d8115c\",\"7029\":\"b34577f7\",\"7141\":\"8ae8ce03\",\"7420\":\"f8b46177\",\"7503\":\"42ed5848\",\"7782\":\"a9f0ac90\",\"8135\":\"59c68eb5\",\"8444\":\"f8d1e9c7\",\"8448\":\"fe9cee1a\",\"9276\":\"d21e868a\",\"9387\":\"317149bb\",\"9418\":\"55ebc1ed\",\"9450\":\"ef02fb64\",\"9575\":\"21327597\"}[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\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\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 = \"/\";","var createStylesheet = function(chunkId, fullhref, 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\tlinkTag.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\tdocument.head.appendChild(linkTag);\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, 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,\"201\":1,\"345\":1,\"346\":1,\"615\":1,\"675\":1,\"779\":1,\"906\":1,\"1196\":1,\"1300\":1,\"1767\":1,\"1798\":1,\"1818\":1,\"2346\":1,\"2790\":1,\"2806\":1,\"3194\":1,\"3303\":1,\"3490\":1,\"3724\":1,\"3956\":1,\"4021\":1,\"4196\":1,\"4848\":1,\"4981\":1,\"5193\":1,\"5207\":1,\"5498\":1,\"5528\":1,\"5824\":1,\"5924\":1,\"6003\":1,\"6013\":1,\"6162\":1,\"6164\":1,\"6358\":1,\"6739\":1,\"6815\":1,\"6833\":1,\"7029\":1,\"7141\":1,\"7420\":1,\"7503\":1,\"7782\":1,\"8135\":1,\"8444\":1,\"8448\":1,\"9276\":1,\"9387\":1,\"9418\":1,\"9450\":1,\"9575\":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(!/^(1300|3490|4021|4981|6162|7782|9575)$/.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__(5360); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["bus","mitt","publishEntity","entity","emit","onEntity","callback","on","publishNotification","notification","onNotification","hasWebsocket","ref","hasAssistant","hasPushbullet","hasNtfy","installPWA","class","notifications","id","index","key","text","html","title","link","image","warning","error","destroy","clicked","src","alt","icon","style","color","iconClass","name","props","methods","this","window","open","$emit","__exports__","components","Notification","duration","type","Number","default","data","timeouts","create","args","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","state","alerting","responding","speechRecognized","listening","Modal","mixins","Utils","responseText","phrase","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","pwaInstallEvent","computed","initConfig","request","prompt","pwaDialog","beforeMount","addEventListener","preventDefault","render","loading","classes","rows","row","i","widgets","widget","j","component","getWidgetProps","String","required","split","concat","Widget","Loading","Row","refreshSeconds","parseTemplate","tmpl","node","DOMParser","parseFromString","childNodes","attributes","nodeValue","getElementsByTagName","map","children","el","nodeName","attrs","reduce","obj","content","innerHTML","$options","refreshDashboard","$route","params","template","notifyError","setInterval","toFixed","method","placeholder","_register","value","register","Boolean","parseBoolean","Login","panels","selectedPanel","hostname","$event","panel","href","collapsed","panelNames","onItemClick","icons","imgUrl","emits","homeIdx","indexOf","slice","sort","collapsedDefault","isMobile","isTablet","Settings","Nav","plugins","backends","procedures","initSelectedPanel","match","hash","plugin","initPanels","entries","forEach","componentName","token","toUpperCase","join","comp","pluginName","parseConfig","Promise","all","initializeDefaultViews","execute","entities","initPanel","toString","routes","path","Panel","Dashboard","Plugin","Register","NotFound","router","createRouter","history","createWebHistory","process","ready","registered","cached","updatefound","updated","offline","app","createApp","App","globalProperties","_config","use","mount","showError","opts","resolve","reject","then","errors","output","catch","action","getCookies","document","cookie","item","k","v","formatDate","date","year","Date","toDateString","substring","formatTime","seconds","toTimeString","formatDateTime","_eventsReady","$root","subFunc","generateId","unwatch","$watch","newVal","btoa","fromCharCode","round","random","notifyWarning","matchMedia","matches","isDesktop","capitalize","charAt","prettify","t","toLowerCase","convertSize","unit","units","u","convertTime","time","ret","parseFloat","d","h","m","s","objectsEqual","a","b","p","Api","Cookies","DateTime","Screen","Text","Types","n","script","isVisible","zIndex","$attrs","width","height","stopPropagation","visible","level","timeoutId","prevVisible","hide","toggle","onKeyUp","visibleHndl","unmounted","removeEventListener","maxZIndex","getComputedStyle","$el","outermostModals","querySelectorAll","modal","onConfirm","confirmText","cancelText","items","keepOpenOnItemClick","documentClickHndl","element","target","dropdown","parentElement","left","top","button","getBoundingClientRect","innerWidth","clientWidth","innerHeight","clientHeight","itemClass","iconUrl","Icon","disabled","$parent","className","selectedView","usersView","addUserModal","sessionToken","currentUser","onTokenSelect","generateToken","username","password","validityDays","expiry_days","tokenModal","select","execCommand","createUser","commandRunning","changePassword","selectedUser","users","user","user_id","changePasswordModal","deleteUser","DropdownItem","Dropdown","refresh","form","addUserForm","input","confirm_password","session_token","changePasswordForm","new_password","confirm_new_password","success","old_password","confirm","Users","Token","webpackAsyncContext","req","__webpack_require__","o","Error","ids","module","exports","__webpack_module_cache__","moduleId","cachedModule","__webpack_modules__","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","call","inProgress","dataWebpackPrefix","l","done","needAttach","scripts","getAttribute","createElement","charset","nc","setAttribute","onScriptComplete","prev","onload","doneFns","parentNode","removeChild","head","appendChild","Symbol","toStringTag","createStylesheet","fullhref","linkTag","rel","onLinkComplete","errorType","realHref","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.0f4f9a12.js b/platypush/backend/http/webapp/dist/static/js/app.a6e85f1f.js similarity index 97% rename from platypush/backend/http/webapp/dist/static/js/app.0f4f9a12.js rename to platypush/backend/http/webapp/dist/static/js/app.a6e85f1f.js index a88ead2f3..fa4be0f48 100644 --- a/platypush/backend/http/webapp/dist/static/js/app.0f4f9a12.js +++ b/platypush/backend/http/webapp/dist/static/js/app.a6e85f1f.js @@ -1,2 +1,2 @@ -(function(){var e={5250:function(e,t,s){"use strict";s.d(t,{$:function(){return i}});var n=s(9652);const i=(0,n.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)}},5360:function(e,t,s){"use strict";var n=s(9963),i=s(6252);const a=(0,i.Uk)(" Would you like to install this application locally? ");function o(e,t,s,n,o,r){const l=(0,i.up)("Events"),c=(0,i.up)("Notifications"),d=(0,i.up)("VoiceAssistant"),u=(0,i.up)("Pushbullet"),h=(0,i.up)("Ntfy"),p=(0,i.up)("ConfirmDialog"),f=(0,i.up)("router-view");return(0,i.wg)(),(0,i.iD)(i.HY,null,[r.hasWebsocket?((0,i.wg)(),(0,i.j4)(l,{key:0,ref:"events"},null,512)):(0,i.kq)("",!0),(0,i.Wm)(c,{ref:"notifications"},null,512),r.hasAssistant?((0,i.wg)(),(0,i.j4)(d,{key:1,ref:"voice-assistant"},null,512)):(0,i.kq)("",!0),r.hasPushbullet?((0,i.wg)(),(0,i.j4)(u,{key:2,ref:"pushbullet"},null,512)):(0,i.kq)("",!0),r.hasNtfy?((0,i.wg)(),(0,i.j4)(h,{key:3,ref:"ntfy"},null,512)):(0,i.kq)("",!0),(0,i.Wm)(p,{ref:"pwaDialog",onInput:r.installPWA},{default:(0,i.w5)((()=>[a])),_:1},8,["onInput"]),(0,i.Wm)(f)],64)}var r=s(6960);const l={class:"notifications"};function c(e,t,s,n,a,o){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,s)=>((0,i.wg)(),(0,i.j4)(r,{key:s,id:t,text:e.text,html:e.html,title:e.title,link:e.link,image:e.image,warning:e.warning,error:e.error,onClicked:o.destroy},null,8,["id","text","html","title","link","image","warning","error","onClicked"])))),128))])}var d=s(3577);const u=["textContent"],h={class:"body"},p={key:0,class:"image col-3"},f={class:"row"},m=["src"],g={key:3,class:"fa fa-exclamation"},b={key:4,class:"fa fa-times"},v=["textContent"],y=["innerHTML"],w=["textContent"],k=["innerHTML"];function _(e,t,s,n,a,o){return(0,i.wg)(),(0,i.iD)("div",{class:(0,d.C_)(["notification fade-in",{warning:s.warning,error:s.error}]),onClick:t[0]||(t[0]=(...e)=>o.clicked&&o.clicked(...e))},[s.title?((0,i.wg)(),(0,i.iD)("div",{key:0,class:"title",textContent:(0,d.zw)(s.title)},null,8,u)):(0,i.kq)("",!0),(0,i._)("div",h,[s.image||s.warning||s.error?((0,i.wg)(),(0,i.iD)("div",p,[(0,i._)("div",f,[s.image&&s.image.src?((0,i.wg)(),(0,i.iD)("img",{key:0,src:s.image.src,alt:""},null,8,m)):s.image&&s.image.icon?((0,i.wg)(),(0,i.iD)("i",{key:1,class:(0,d.C_)(["fa","fa-"+s.image.icon]),style:(0,d.j5)(s.image.color?"--color: "+s.image.color:"")},null,6)):s.image&&s.image.iconClass?((0,i.wg)(),(0,i.iD)("i",{key:2,class:(0,d.C_)(s.image.iconClass),style:(0,d.j5)(s.image.color?"--color: "+s.image.color:"")},null,6)):s.warning?((0,i.wg)(),(0,i.iD)("i",g)):s.error?((0,i.wg)(),(0,i.iD)("i",b)):(0,i.kq)("",!0)])])):(0,i.kq)("",!0),s.text&&s.image?((0,i.wg)(),(0,i.iD)("div",{key:1,class:"text col-9",textContent:(0,d.zw)(s.text)},null,8,v)):(0,i.kq)("",!0),s.html&&s.image?((0,i.wg)(),(0,i.iD)("div",{key:2,class:"text col-9",innerHTML:s.html},null,8,y)):(0,i.kq)("",!0),s.text&&!s.image?((0,i.wg)(),(0,i.iD)("div",{key:3,class:"text row horizontal-center",textContent:(0,d.zw)(s.text)},null,8,w)):(0,i.kq)("",!0),s.html&&!s.image?((0,i.wg)(),(0,i.iD)("div",{key:4,class:"text row horizontal-center",innerHTML:s.html},null,8,k)):(0,i.kq)("",!0)])],2)}var x={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)}}},C=s(3744);const D=(0,C.Z)(x,[["render",_],["__scopeId","data-v-7646705e"]]);var I=D,T={name:"Notifications",components:{Notification:I},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 s=e.duration?parseInt(e.duration):0;s&&(this.timeouts[t]=setTimeout(this.destroy.bind(null,t),s))},destroy:function(e){delete this.notifications[e],delete this.timeouts[e]}}};const S=(0,C.Z)(T,[["render",c],["__scopeId","data-v-6dc8bebc"]]);var U=S,M=s(6813);function $(e,t,s,n,a,o){return(0,i.wg)(),(0,i.iD)("div")}var N=s(5250),P={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(s){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 s of t)s&&(s instanceof Array?s=s[0]:s instanceof Object&&!(s instanceof Function)&&(s=Object.values(s)[0]),s(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,s=e.events.length?e.events:[null],n=e.handlerName;for(const i of s)i in this.handlers||(this.handlers[i]={}),n in this.handlerNameToEventTypes||(this.handlerNameToEventTypes[n]=s),this.handlers[i][n]=t;return()=>{this.unsubscribe(n)}},unsubscribe(e){const t=this.handlerNameToEventTypes[e];if(t){for(const s of t)this.handlers[s]?.[e]&&(delete this.handlers[s][e],Object.keys(this.handlers[s]).length||delete this.handlers[s]);delete this.handlerNameToEventTypes[e]}}},created(){N.$.on("subscribe",this.subscribe),N.$.on("unsubscribe",this.unsubscribe),this.init()}};const j=(0,C.Z)(P,[["render",$]]);var q=j;const O={class:"assistant-modal"},E={class:"icon"},Z={key:0,class:"fa fa-bell"},W={key:1,class:"fa fa-volume-up"},z={key:2,class:"fa fa-comment-dots"},R={key:3,class:"fa fa-microphone"},L={class:"text"},A={key:0,class:"listening"},V=(0,i._)("span",null,"Assistant listening",-1),F=[V],H={key:1,class:"speech-recognized"},B=["textContent"],K={key:2,class:"responding"},Y=["textContent"];function G(e,t,s,n,a,o){const r=(0,i.up)("Modal");return(0,i.wg)(),(0,i.iD)("div",O,[(0,i.Wm)(r,{ref:"assistantModal"},{default:(0,i.w5)((()=>[(0,i._)("div",E,[a.state.alerting?((0,i.wg)(),(0,i.iD)("i",Z)):a.state.responding?((0,i.wg)(),(0,i.iD)("i",W)):a.state.speechRecognized?((0,i.wg)(),(0,i.iD)("i",z)):((0,i.wg)(),(0,i.iD)("i",R))]),(0,i._)("div",L,[a.state.listening?((0,i.wg)(),(0,i.iD)("div",A,F)):a.state.speechRecognized?((0,i.wg)(),(0,i.iD)("div",H,[(0,i._)("span",{textContent:(0,d.zw)(a.phrase)},null,8,B)])):a.state.responding?((0,i.wg)(),(0,i.iD)("div",K,[(0,i._)("span",{textContent:(0,d.zw)(a.responseText)},null,8,Y)])):(0,i.kq)("",!0)])])),_:1},512)])}var J=s(1794),X={name:"VoiceAssistant",components:{Modal:J.Z},mixins:[M.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 Q=(0,C.Z)(X,[["render",G]]);var ee=Q;function te(e,t,s,n,a,o){return(0,i.wg)(),(0,i.iD)("div")}var se={name:"Ntfy",mixins:[M.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,C.Z)(se,[["render",te]]);var ie=ne;function ae(e,t,s,n,a,o){return(0,i.wg)(),(0,i.iD)("div")}var oe={name:"Pushbullet",mixins:[M.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 re=(0,C.Z)(oe,[["render",ae]]);var le=re,ce={name:"App",mixins:[M.Z],components:{ConfirmDialog:r.Z,Pushbullet:le,Ntfy:ie,Notifications:U,Events:q,VoiceAssistant:ee},data(){return{config:{},userAuthenticated:!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(){window.addEventListener("beforeinstallprompt",(e=>{e.preventDefault(),this.pwaInstallEvent=e,this.$refs.pwaDialog.show()}))},mounted(){N.$.onNotification(this.onNotification)}};const de=(0,C.Z)(ce,[["render",o]]);var ue=de,he=s(2201);function pe(e,t,s,n,a,o){const r=(0,i.up)("Loading"),l=(0,i.up)("Widget"),c=(0,i.up)("Row");return(0,i.wg)(),(0,i.iD)(i.HY,null,[a.loading?((0,i.wg)(),(0,i.j4)(r,{key:0})):(0,i.kq)("",!0),(0,i._)("div",{id:"dashboard",class:(0,d.C_)(["col-12",o.classes]),style:(0,d.j5)(a.style)},[((0,i.wg)(!0),(0,i.iD)(i.HY,null,(0,i.Ko)(a.rows,((e,t)=>((0,i.wg)(),(0,i.j4)(c,{key:t,class:(0,d.C_)(e.class),style:(0,d.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)(l,{style:(0,d.j5)(e.style),class:(0,d.C_)(e.class)},{default:(0,i.w5)((()=>[((0,i.wg)(),(0,i.j4)((0,i.LL)(e.component),(0,d.vs)((0,i.F4)(o.getWidgetProps(e))),null,16))])),_:2},1032,["style","class"])],1024)))),128))])),_:2},1032,["class","style"])))),128))],6)],64)}var fe=s(2262),me=s(1232);function ge(e,t,s,n,a,o){return(0,i.wg)(),(0,i.iD)("div",{class:(0,d.C_)(["row",o.classes]),style:(0,d.j5)(s.style)},[(0,i.WI)(e.$slots,"default",{},void 0,!0)],6)}var be={name:"Row",props:{class:{type:String,required:!1,default:""},style:{type:String,required:!1,default:""}},computed:{classes(){return this.class}}};const ve=(0,C.Z)(be,[["render",ge],["__scopeId","data-v-1b4663f2"]]);var ye=ve;function we(e,t,s,n,a,o){return(0,i.wg)(),(0,i.iD)("div",{style:(0,d.j5)(s.style),class:(0,d.C_)(o.classes)},[(0,i.WI)(e.$slots,"default",{},void 0,!0)],6)}var ke={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 _e=(0,C.Z)(ke,[["render",we],["__scopeId","data-v-5df52982"]]);var xe=_e,Ce={name:"Dashboard",mixins:[M.Z],components:{Widget:xe,Loading:me.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 n=(new DOMParser).parseFromString(t,"text/xml").childNodes[0],a=this;this.style=n.attributes.style?.nodeValue,this.class=n.attributes.class?.nodeValue,this.rows=[...n.getElementsByTagName("Row")].map((e=>({style:e.attributes.style?.nodeValue,class:e.attributes.class?.nodeValue,widgets:[...e.children].map((e=>{const t=(0,fe.XI)((0,i.RC)((()=>s(6725)(`./${e.nodeName}/Index`)))),n=e.attributes.style?.nodeValue,o=e.attributes.class?.nodeValue,r=[...e.attributes].reduce(((e,t)=>("style"!==t.nodeName&&(e[t.nodeName]=t.nodeValue),e)),{content:e.innerHTML}),l={component:t,style:n,class:o,props:r||{}};return a.$options.components[e.nodeName]=t,l}))}))),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 De=(0,C.Z)(Ce,[["render",pe],["__scopeId","data-v-54e0248a"]]);var Ie=De;function Te(e,t,s,n,a,o){return(0,i.wg)(),(0,i.iD)("h1",null,"Object not found")}var Se={name:"NotFound"};const Ue=(0,C.Z)(Se,[["render",Te]]);var Me=Ue;const $e=e=>((0,i.dD)("data-v-af0b14d0"),e=e(),(0,i.Cn)(),e),Ne={class:"login-container"},Pe={class:"login",method:"POST"},je=(0,i.uE)('\n
\n- \n \n
\n\n\n\n \n\n \n Platypush',3),qe={key:0,class:"row"},Oe=$e((()=>(0,i._)("label",null,[(0,i._)("input",{type:"password",name:"confirm_password",placeholder:"Confirm password"})],-1))),Ee=[Oe],Ze={class:"row buttons"},We=["value"],ze=$e((()=>(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,s,n,a,o){return(0,i.wg)(),(0,i.iD)("div",Ne,[(0,i._)("form",Pe,[je,o._register?((0,i.wg)(),(0,i.iD)("div",qe,Ee)):(0,i.kq)("",!0),(0,i._)("div",Ze,[(0,i._)("input",{type:"submit",class:"btn btn-primary",value:o._register?"Register":"Login"},null,8,We)]),ze])])}var Le={name:"Login",mixins:[M.Z],props:{register:{type:Boolean,required:!1,default:!1}},computed:{_register(){return this.parseBoolean(this.register)}}};const Ae=(0,C.Z)(Le,[["render",Re],["__scopeId","data-v-af0b14d0"]]);var Ve=Ae;function Fe(e,t,s,n,a,o){const r=(0,i.up)("Login");return(0,i.wg)(),(0,i.j4)(r,{register:!0})}var He={name:"Register",mixins:[Ve],components:{Login:Ve},props:{register:{type:Boolean,required:!1,default:!0}}};const Be=(0,C.Z)(He,[["render",Fe]]);var Ke=Be;const Ye={key:2,class:"canvas"},Ge={class:"panel"},Je={key:3,class:"canvas"};function Xe(e,t,s,n,a,o){const r=(0,i.up)("Loading"),l=(0,i.up)("Nav"),c=(0,i.up)("Settings");return(0,i.wg)(),(0,i.iD)("main",null,[a.loading?((0,i.wg)(),(0,i.j4)(r,{key:0})):((0,i.wg)(),(0,i.j4)(l,{key:1,panels:a.components,"selected-panel":a.selectedPanel,hostname:a.hostname,onSelect:t[0]||(t[0]=e=>a.selectedPanel=e)},null,8,["panels","selected-panel","hostname"])),"settings"===a.selectedPanel?((0,i.wg)(),(0,i.iD)("div",Ye,[(0,i._)("div",Ge,[(0,i.Wm)(c)])])):((0,i.wg)(),(0,i.iD)("div",Je,[((0,i.wg)(!0),(0,i.iD)(i.HY,null,(0,i.Ko)(a.components,((e,t)=>((0,i.wg)(),(0,i.iD)("div",{class:(0,d.C_)(["panel",{hidden:t!==a.selectedPanel}]),key:t},[t===a.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 Qe=e=>((0,i.dD)("data-v-d9ea25f0"),e=e(),(0,i.Cn)(),e),et=Qe((()=>(0,i._)("i",{class:"fas fa-bars"},null,-1))),tt=["textContent"],st={class:"plugins"},nt=["title","onClick"],it=["href"],at={class:"icon"},ot=["src"],rt={key:2,class:"fas fa-puzzle-piece"},lt=["textContent"],ct={class:"footer"},dt={href:"/#settings"},ut=Qe((()=>(0,i._)("span",{class:"icon"},[(0,i._)("i",{class:"fa fa-cog"})],-1))),ht={key:0,class:"name"},pt={href:"/logout"},ft=Qe((()=>(0,i._)("span",{class:"icon"},[(0,i._)("i",{class:"fas fa-sign-out-alt"})],-1))),mt={key:0,class:"name"};function gt(e,t,s,n,a,o){return(0,i.wg)(),(0,i.iD)("nav",{class:(0,d.C_)({collapsed:a.collapsed})},[(0,i._)("div",{class:"toggler",onClick:t[0]||(t[0]=e=>a.collapsed=!a.collapsed)},[et,s.hostname?((0,i.wg)(),(0,i.iD)("span",{key:0,class:"hostname",textContent:(0,d.zw)(s.hostname)},null,8,tt)):(0,i.kq)("",!0)]),(0,i._)("ul",st,[((0,i.wg)(!0),(0,i.iD)(i.HY,null,(0,i.Ko)(o.panelNames,(e=>((0,i.wg)(),(0,i.iD)("li",{key:e,class:(0,d.C_)(["entry",{selected:e===s.selectedPanel}]),title:e,onClick:t=>o.onItemClick(e)},[(0,i._)("a",{href:`/#${e}`},[(0,i._)("span",at,[a.icons[e]?.class?((0,i.wg)(),(0,i.iD)("i",{key:0,class:(0,d.C_)(a.icons[e].class)},null,2)):a.icons[e]?.imgUrl?((0,i.wg)(),(0,i.iD)("img",{key:1,src:a.icons[e].imgUrl,alt:"name"},null,8,ot)):((0,i.wg)(),(0,i.iD)("i",rt))]),a.collapsed?(0,i.kq)("",!0):((0,i.wg)(),(0,i.iD)("span",{key:0,class:"name",textContent:(0,d.zw)("entities"==e?"Home":e)},null,8,lt))],8,it)],10,nt)))),128))]),(0,i._)("ul",ct,[(0,i._)("li",{class:(0,d.C_)({selected:"settings"===s.selectedPanel}),title:"Settings",onClick:t[1]||(t[1]=e=>o.onItemClick("settings"))},[(0,i._)("a",dt,[ut,a.collapsed?(0,i.kq)("",!0):((0,i.wg)(),(0,i.iD)("span",ht,"Settings"))])],2),(0,i._)("li",{title:"Logout",onClick:t[2]||(t[2]=e=>o.onItemClick("logout"))},[(0,i._)("a",pt,[ft,a.collapsed?(0,i.kq)("",!0):((0,i.wg)(),(0,i.iD)("span",mt,"Logout"))])])])],2)}var bt=s(1359),vt={name:"Nav",emits:["select"],mixins:[M.Z],props:{panels:{type:Object,required:!0},selectedPanel:{type:String},hostname:{type:String}},computed:{panelNames(){let e=Object.keys(this.panels);const t=e.indexOf("entities");return t>=0?["entities"].concat(e.slice(0,t).concat(e.slice(t+1)).sort()):e.sort()},collapsedDefault(){return!(!this.isMobile()&&!this.isTablet())}},methods:{onItemClick(e){this.$emit("select",e),this.collapsed=!!this.isMobile()||this.collapsedDefault}},data(){return{collapsed:!0,icons:bt,host:null}},mounted(){this.collapsed=this.collapsedDefault}};const yt=(0,C.Z)(vt,[["render",gt],["__scopeId","data-v-d9ea25f0"]]);var wt=yt,kt=s(2715),_t={name:"Panel",mixins:[M.Z],components:{Settings:kt["default"],Nav:wt,Loading:me.Z},data(){return{loading:!1,plugins:{},backends:{},procedures:{},components:{},hostname:void 0,selectedPanel:void 0}},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,n])=>{const a=t.split(".").map((e=>e[0].toUpperCase()+e.slice(1))).join("");let o=null;try{o=await s(3379)(`./${a}/Index`)}catch(l){return}const r=(0,fe.XI)((0,i.RC)((async()=>o)));e.$options.components[t]=r,e.components[t]={component:r,pluginName:t,config:n}}))},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.execute={},this.plugins.entities={}}},async mounted(){this.loading=!0;try{await this.parseConfig(),this.initPanels(),this.initSelectedPanel()}finally{this.loading=!1}}};const xt=(0,C.Z)(_t,[["render",Xe],["__scopeId","data-v-fbc09254"]]);var Ct=xt;const Dt={key:1,class:"canvas"};function It(e,t,s,n,a,o){const r=(0,i.up)("Loading");return(0,i.wg)(),(0,i.iD)("main",null,[a.loading?((0,i.wg)(),(0,i.j4)(r,{key:0})):((0,i.wg)(),(0,i.iD)("div",Dt,[((0,i.wg)(),(0,i.j4)((0,i.LL)(a.component),{config:a.config,"plugin-name":o.pluginName},null,8,["config","plugin-name"]))]))])}var Tt={name:"Panel",mixins:[M.Z],components:{Settings:kt["default"],Nav:wt,Loading:me.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 s(3379)(`./${e}/Index`)}catch(n){return console.error(n),void this.notify({error:!0,title:`Cannot load plugin ${this.pluginName}`,text:n.toString()})}this.component=(0,fe.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 St=(0,C.Z)(Tt,[["render",It],["__scopeId","data-v-e339182c"]]);var Ut=St;const Mt=[{path:"/",name:"Panel",component:Ct},{path:"/dashboard/:name",name:"Dashboard",component:Ie},{path:"/plugin/:plugin",name:"Plugin",component:Ut},{path:"/login",name:"Login",component:Ve},{path:"/register",name:"Register",component:Ke},{path:"/:catchAll(.*)",component:Me}],$t=(0,he.p7)({history:(0,he.PO)(),routes:Mt});var Nt=$t,Pt=s(5205);(0,Pt.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 jt=(0,n.ri)(ue);jt.config.globalProperties._config=window.config,jt.use(Nt).mount("#app")},6813:function(e,t,s){"use strict";s.d(t,{Z:function(){return N}});var n=s(9669),i=s.n(n),a={name:"Api",methods:{execute(e,t=6e4,s=!0){const n={};return"target"in e&&e["target"]||(e["target"]="localhost"),"type"in e&&e["type"]||(e["type"]="request"),t&&(n.timeout=t),new Promise(((t,a)=>{i().post("/execute",e,n).then((e=>{if(e=e.data.response,e.errors?.length){const t=e.errors?.[0]||e;this.notify({text:t,error:!0}),a(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),s&&this.notify({text:e,error:!0}),a(e))}))}))},request(e,t={},s=6e4,n=!0){return this.execute({type:"request",action:e,args:t},s,n)}}};const o=a;var r=o,l={name:"Cookies",methods:{getCookies(){return document.cookie.split(/;\s*/).reduce(((e,t)=>{const[s,n]=t.split("=");return e[s]=n,e}),{})}}};const c=l;var d=c,u={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,s=!0){return"string"===typeof e&&(e=new Date(Date.parse(e))),`${this.formatDate(e,t)}, ${this.formatTime(e,s)}`}}};const h=u;var p=h,f=(s(2801),s(5250)),m={name:"Events",computed:{_eventsReady(){return this.$root.$refs.events?.initialized}},methods:{subscribe(e,t,...s){const n=()=>{f.$.emit("subscribe",{events:s,handler:e,handlerName:t||this.generateId()})};if(this._eventsReady)return void n();const i=this,a=this.$watch((()=>i._eventsReady),(e=>{e&&(n(),a())}));return a},unsubscribe(e){f.$.emit("unsubscribe",e)},generateId(){return btoa([...Array(11).keys()].map((()=>String.fromCharCode(Math.round(255*Math.random())))))}}};const g=m;var b=g,v={name:"Notification",methods:{notify(e){f.$.publishNotification(e)},notifyWarning(e){this.notify({text:e,warning:!0})},notifyError(e){throw this.notify({text:e,error:!0}),e}}};const y=v;var w=y,k={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 _=k;var x=_,C={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(" ")}}};const D=C;var I=D,T={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 s=["B","KB","MB","GB","TB"];return s.forEach(((n,i)=>{e<=1024&&null==t?t=n:e>1024&&(i===s.length-1?t=n:e/=1024)})),`${e.toFixed(2)} ${t}`},convertTime(e){const t={},s=[];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"),s.push(e)}if(parseInt(t.h)){let e=t.h+" hour";t.h>1&&(e+="s"),s.push(e)}if(parseInt(t.m)){let e=t.m+" minute";t.m>1&&(e+="s"),s.push(e)}let n=t.s+" second";return t.s>1&&(n+="s"),s.push(n),s.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 s of Object.keys(e||{}))switch(typeof e[s]){case"object":if(!this.objectsEqual(e[s],t[s]))return!1;break;case"function":if(e[s].toString()!=t[s]?.toString())return!1;break;default:if(e[s]!=t[s])return!1;break}for(const s of Object.keys(t||{}))if(null==e[s]&&null!=t[s])return!1;return!0}}};const S=T;var U=S,M={name:"Utils",mixins:[r,d,w,b,p,x,I,U]};const $=M;var N=$},1232:function(e,t,s){"use strict";s.d(t,{Z:function(){return d}});var n=s(6252);const i={class:"loading"},a={class:"icon"};function o(e,t){return(0,n.wg)(),(0,n.iD)("div",i,[(0,n._)("div",a,[((0,n.wg)(),(0,n.iD)(n.HY,null,(0,n.Ko)(4,(e=>(0,n._)("div",{key:e}))),64))])])}var r=s(3744);const l={},c=(0,r.Z)(l,[["render",o],["__scopeId","data-v-4d9c871b"]]);var d=c},1794:function(e,t,s){"use strict";s.d(t,{Z:function(){return g}});var n=s(6252),i=s(3577);const a=e=>((0,n.dD)("data-v-18f9fdba"),e=e(),(0,n.Cn)(),e),o=["id"],r={key:0,class:"header"},l=["textContent"],c=a((()=>(0,n._)("i",{class:"fas fa-xmark"},null,-1))),d=[c],u={class:"body"};function h(e,t,s,a,c,h){return(0,n.wg)(),(0,n.iD)("div",{class:(0,i.C_)(["modal-container fade-in",{hidden:!c.isVisible}]),id:s.id,style:(0,i.j5)({"--z-index":h.zIndex}),onClick:t[3]||(t[3]=(...e)=>h.close&&h.close(...e))},[(0,n._)("div",{class:(0,i.C_)(["modal",e.$attrs.class])},[(0,n._)("div",{class:"content",style:(0,i.j5)({"--width":s.width,"--height":s.height}),onClick:t[2]||(t[2]=e=>e.stopPropagation())},[s.title?((0,n.wg)(),(0,n.iD)("div",r,[s.title?((0,n.wg)(),(0,n.iD)("div",{key:0,class:"title",textContent:(0,i.zw)(s.title)},null,8,l)):(0,n.kq)("",!0),(0,n._)("button",{title:"Close",alt:"Close",onClick:t[0]||(t[0]=(...e)=>h.close&&h.close(...e))},d)])):(0,n.kq)("",!0),(0,n._)("div",u,[(0,n.WI)(e.$slots,"default",{onModalClose:t[1]||(t[1]=(...e)=>h.close&&h.close(...e))},void 0,!0)])],4)],2)],14,o)}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 s of document.querySelectorAll(".modal-container:not(.hidden)")){const n=parseInt(getComputedStyle(s).zIndex);n>e?(e=n,t=[s]):n===e&&t.push(s)}(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=s(3744);const m=(0,f.Z)(p,[["render",h],["__scopeId","data-v-18f9fdba"]]);var g=m},6960:function(e,t,s){"use strict";s.d(t,{Z:function(){return m}});var n=s(6252),i=s(9963),a=s(3577);const o=e=>((0,n.dD)("data-v-682db704"),e=e(),(0,n.Cn)(),e),r={class:"dialog-content"},l=o((()=>(0,n._)("i",{class:"fas fa-check"},null,-1))),c=o((()=>(0,n._)("i",{class:"fas fa-xmark"},null,-1)));function d(e,t,s,o,d,u){const h=(0,n.up)("Modal");return(0,n.wg)(),(0,n.j4)(h,{ref:"modal",title:s.title},{default:(0,n.w5)((()=>[(0,n._)("div",r,[(0,n.WI)(e.$slots,"default",{},void 0,!0)]),(0,n._)("form",{class:"buttons",onSubmit:t[4]||(t[4]=(0,i.iM)(((...e)=>u.onConfirm&&u.onConfirm(...e)),["prevent"]))},[(0,n._)("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))},[l,(0,n.Uk)(" "+(0,a.zw)(s.confirmText),1)],32),(0,n._)("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,n.Uk)(" "+(0,a.zw)(s.cancelText),1)],32)],32)])),_:3},8,["title"])}var u=s(1794),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=s(3744);const f=(0,p.Z)(h,[["render",d],["__scopeId","data-v-682db704"]]);var m=f},2856:function(e,t,s){"use strict";s.d(t,{Z:function(){return f}});var n=s(6252),i=s(9963),a=s(3577);const o={class:"dropdown-container",ref:"container"},r=["title"],l=["textContent"],c=["id"];function d(e,t,s,d,u,h){return(0,n.wg)(),(0,n.iD)("div",o,[(0,n._)("button",{title:s.title,ref:"button",onClick:t[0]||(t[0]=(0,i.iM)((e=>h.toggle(e)),["stop"]))},[s.iconClass?((0,n.wg)(),(0,n.iD)("i",{key:0,class:(0,a.C_)(["icon",s.iconClass])},null,2)):(0,n.kq)("",!0),s.text?((0,n.wg)(),(0,n.iD)("span",{key:1,class:"text",textContent:(0,a.zw)(s.text)},null,8,l)):(0,n.kq)("",!0)],8,r),(0,n._)("div",{class:(0,a.C_)(["dropdown fade-in",{hidden:!u.visible}]),id:s.id,ref:"dropdown"},[(0,n.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=s(3744);const p=(0,h.Z)(u,[["render",d],["__scopeId","data-v-5b964c03"]]);var f=p},2588:function(e,t,s){"use strict";s.d(t,{Z:function(){return h}});var n=s(6252),i=s(3577);const a={key:0,class:"col-2 icon"},o=["textContent"];function r(e,t,s,r,l,c){const d=(0,n.up)("Icon");return(0,n.wg)(),(0,n.iD)("div",{class:(0,i.C_)(["row item",s.itemClass]),onClick:t[0]||(t[0]=(...e)=>c.clicked&&c.clicked(...e))},[s.iconClass?.length||s.iconUrl?.length?((0,n.wg)(),(0,n.iD)("div",a,[(0,n.Wm)(d,{class:(0,i.C_)(s.iconClass),url:s.iconUrl},null,8,["class","url"])])):(0,n.kq)("",!0),(0,n._)("div",{class:(0,i.C_)(["text",{"col-10":null!=s.iconClass}]),textContent:(0,i.zw)(s.text)},null,10,o)],2)}var l=s(1478),c={name:"DropdownItem",components:{Icon:l.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=s(3744);const u=(0,d.Z)(c,[["render",r],["__scopeId","data-v-282d16b4"]]);var h=u},1478:function(e,t,s){"use strict";s.d(t,{Z:function(){return u}});var n=s(6252),i=s(3577);const a={class:"icon-container"},o=["src","alt"];function r(e,t,s,r,l,c){return(0,n.wg)(),(0,n.iD)("div",a,[s.url?.length?((0,n.wg)(),(0,n.iD)("img",{key:0,class:"icon",src:s.url,alt:s.alt},null,8,o)):c.className?.length?((0,n.wg)(),(0,n.iD)("i",{key:1,class:(0,i.C_)(["icon",c.className]),style:(0,i.j5)({color:s.color})},null,6)):(0,n.kq)("",!0)])}var l={props:{class:{type:String},url:{type:String},color:{type:String,default:""},alt:{type:String,default:""}},computed:{className(){return this.class}}},c=s(3744);const d=(0,c.Z)(l,[["render",r],["__scopeId","data-v-706a3bd1"]]);var u=d},2715:function(e,t,s){"use strict";s.r(t),s.d(t,{default:function(){return _e}});var n=s(6252);const i={class:"settings-container"},a={class:"col-8"},o={class:"col-4 pull-right"},r=(0,n._)("i",{class:"fa fa-plus"},null,-1),l=[r];function c(e,t,s,r,c,d){const u=(0,n.up)("DropdownItem"),h=(0,n.up)("Dropdown"),p=(0,n.up)("Users"),f=(0,n.up)("Token");return(0,n.wg)(),(0,n.iD)("div",i,[(0,n._)("header",null,[(0,n._)("div",a,[(0,n.Wm)(h,{title:"Select a category","icon-class":"fa fa-ellipsis-h"},{default:(0,n.w5)((()=>[(0,n.Wm)(u,{text:"Users","icon-class":"fa fa-user","item-class":{selected:"users"===c.selectedView},onClick:t[0]||(t[0]=e=>c.selectedView="users")},null,8,["item-class"]),(0,n.Wm)(u,{text:"Generate a token","icon-class":"fa fa-key","item-class":{selected:"token"===c.selectedView},onClick:t[1]||(t[1]=e=>c.selectedView="token")},null,8,["item-class"])])),_:1})]),(0,n._)("div",o,["users"===c.selectedView?((0,n.wg)(),(0,n.iD)("button",{key:0,title:"Add User",onClick:t[2]||(t[2]=t=>e.$refs.usersView.$refs.addUserModal.show())},l)):(0,n.kq)("",!0)])]),(0,n._)("main",null,["users"===c.selectedView?((0,n.wg)(),(0,n.j4)(p,{key:0,"session-token":c.sessionToken,"current-user":c.currentUser,ref:"usersView"},null,8,["session-token","current-user"])):"token"===c.selectedView?((0,n.wg)(),(0,n.j4)(f,{key:1,"session-token":c.sessionToken,"current-user":c.currentUser,ref:"tokenView"},null,8,["session-token","current-user"])):(0,n.kq)("",!0)])])}var d=s(2856),u=s(2588),h=s(3577),p=s(9963);const f={class:"token-container"},m={class:"token-container"},g=(0,n.Uk)(" This is your generated token. Treat it carefully and do not share it with untrusted parties."),b=(0,n._)("br",null,null,-1),v=(0,n.Uk)(" Also, make sure to save it - it WILL NOT be displayed again. "),y=["textContent"],w={class:"body"},k={class:"description"},_=(0,n.Uk)("Generate a JWT authentication token that can be used for API calls to the "),x=(0,n.Uk)("/execute"),C=(0,n.Uk)(" endpoint."),D=(0,n._)("br",null,null,-1),I=(0,n._)("p",null,"You can include the token in your requests in any of the following ways:",-1),T=(0,n.Uk)("Specify it on the "),S=(0,n.Uk)("Authorization: Bearer"),U=(0,n.Uk)(" header;"),M=(0,n.Uk)("Specify it on the "),$=(0,n.Uk)("X-Token"),N=(0,n.Uk)(" header;"),P=(0,n.Uk)("Specify it as a URL parameter: "),j=(0,n.Uk)("http://site:8008/execute?token=..."),q=(0,n.Uk)(";"),O=(0,n.Uk)("Specify it on the body of your JSON request: "),E=(0,n.Uk)('{"type":"request", "action", "...", "token":"..."}'),Z=(0,n.Uk)("."),W=(0,n.Uk)(" Confirm your credentials in order to generate a new token. "),z={class:"form-container"},R=(0,n._)("span",null,"Username",-1),L=["value"],A=(0,n._)("label",null,[(0,n._)("span",null,"Confirm password"),(0,n._)("span",null,[(0,n._)("input",{type:"password",name:"password"})])],-1),V=(0,n._)("label",null,[(0,n._)("span",null,"Token validity in days"),(0,n._)("span",null,[(0,n._)("input",{type:"text",name:"validityDays"})]),(0,n._)("span",{class:"note"},[(0,n.Uk)(" Decimal values are also supported (e.g. "),(0,n._)("i",null,"0.5"),(0,n.Uk)(" to identify 6 hours). An empty or zero value means that the token has no expiry date. ")])],-1),F=(0,n._)("label",null,[(0,n._)("input",{type:"submit",class:"btn btn-primary",value:"Generate token"})],-1);function H(e,t,s,i,a,o){const r=(0,n.up)("Loading"),l=(0,n.up)("Modal"),c=(0,n.up)("tt");return(0,n.wg)(),(0,n.iD)("div",f,[a.loading?((0,n.wg)(),(0,n.j4)(r,{key:0})):(0,n.kq)("",!0),(0,n.Wm)(l,{ref:"tokenModal"},{default:(0,n.w5)((()=>[(0,n._)("div",m,[(0,n._)("label",null,[g,b,v,(0,n._)("textarea",{class:"token",textContent:(0,h.zw)(a.token),onFocus:t[0]||(t[0]=(...e)=>o.onTokenSelect&&o.onTokenSelect(...e))},null,40,y)])])])),_:1},512),(0,n._)("div",w,[(0,n._)("div",k,[(0,n._)("p",null,[_,(0,n.Wm)(c,null,{default:(0,n.w5)((()=>[x])),_:1}),C]),D,I,(0,n._)("ul",null,[(0,n._)("li",null,[T,(0,n.Wm)(c,null,{default:(0,n.w5)((()=>[S])),_:1}),U]),(0,n._)("li",null,[M,(0,n.Wm)(c,null,{default:(0,n.w5)((()=>[$])),_:1}),N]),(0,n._)("li",null,[P,(0,n.Wm)(c,null,{default:(0,n.w5)((()=>[j])),_:1}),q]),(0,n._)("li",null,[O,(0,n.Wm)(c,null,{default:(0,n.w5)((()=>[E])),_:1}),Z])]),W]),(0,n._)("div",z,[(0,n._)("form",{onSubmit:t[1]||(t[1]=(0,p.iM)(((...e)=>o.generateToken&&o.generateToken(...e)),["prevent"])),ref:"generateTokenForm"},[(0,n._)("label",null,[R,(0,n._)("span",null,[(0,n._)("input",{type:"text",name:"username",value:s.currentUser.username,disabled:""},null,8,L)])]),A,V,F],544)])])])}var B=s(9669),K=s.n(B),Y=s(1232),G=s(6813),J=s(1794),X={name:"Token",components:{Modal:J.Z,Loading:Y.Z},mixins:[G.Z],props:{currentUser:{type:Object,required:!0}},data(){return{loading:!1,token:null}},methods:{async generateToken(e){const t=this.currentUser.username,s=e.target.password.value;let n=e.target.validityDays?.length?parseInt(e.target.validityDays.value):0;n||(n=null),this.loading=!0;try{this.token=(await K().post("/auth",{username:t,password:s,expiry_days:n})).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"}})}}},Q=s(3744);const ee=(0,Q.Z)(X,[["render",H]]);var te=ee;const se=["disabled"],ne=["disabled"],ie=["disabled"],ae=["disabled"],oe=["value"],re=["disabled"],le=["disabled"],ce=["disabled"],de=["disabled"],ue={class:"body"},he={class:"users-list"},pe=["onClick"],fe=["textContent"],me={class:"actions pull-right col-4"};function ge(e,t,s,i,a,o){const r=(0,n.up)("Loading"),l=(0,n.up)("Modal"),c=(0,n.up)("DropdownItem"),d=(0,n.up)("Dropdown");return(0,n.wg)(),(0,n.iD)(n.HY,null,[a.loading?((0,n.wg)(),(0,n.j4)(r,{key:0})):(0,n.kq)("",!0),(0,n.Wm)(l,{ref:"addUserModal",title:"Add User"},{default:(0,n.w5)((()=>[(0,n._)("form",{action:"#",method:"POST",ref:"addUserForm",onSubmit:t[0]||(t[0]=(...e)=>o.createUser&&o.createUser(...e))},[(0,n._)("label",null,[(0,n._)("input",{type:"text",name:"username",placeholder:"Username",disabled:a.commandRunning},null,8,se)]),(0,n._)("label",null,[(0,n._)("input",{type:"password",name:"password",placeholder:"Password",disabled:a.commandRunning},null,8,ne)]),(0,n._)("label",null,[(0,n._)("input",{type:"password",name:"confirm_password",placeholder:"Confirm password",disabled:a.commandRunning},null,8,ie)]),(0,n._)("label",null,[(0,n._)("input",{type:"submit",class:"btn btn-primary",value:"Create User",disabled:a.commandRunning},null,8,ae)])],544)])),_:1},512),(0,n.Wm)(l,{ref:"changePasswordModal",title:"Change Password"},{default:(0,n.w5)((()=>[(0,n._)("form",{action:"#",method:"POST",ref:"changePasswordForm",onSubmit:t[1]||(t[1]=(...e)=>o.changePassword&&o.changePassword(...e))},[(0,n._)("label",null,[(0,n._)("input",{type:"text",name:"username",placeholder:"Username",value:a.selectedUser,disabled:"disabled"},null,8,oe)]),(0,n._)("label",null,[(0,n._)("input",{type:"password",name:"password",placeholder:"Current password",disabled:a.commandRunning},null,8,re)]),(0,n._)("label",null,[(0,n._)("input",{type:"password",name:"new_password",placeholder:"New password",disabled:a.commandRunning},null,8,le)]),(0,n._)("label",null,[(0,n._)("input",{type:"password",name:"confirm_new_password",placeholder:"Confirm new password",disabled:a.commandRunning},null,8,ce)]),(0,n._)("label",null,[(0,n._)("input",{type:"submit",class:"btn btn-primary",value:"Change Password",disabled:a.commandRunning},null,8,de)])],544)])),_:1},512),(0,n._)("div",ue,[(0,n._)("ul",he,[((0,n.wg)(!0),(0,n.iD)(n.HY,null,(0,n.Ko)(a.users,(t=>((0,n.wg)(),(0,n.iD)("li",{key:t.user_id,class:"item user",onClick:e=>a.selectedUser=t.username},[(0,n._)("div",{class:"name col-8",textContent:(0,h.zw)(t.username)},null,8,fe),(0,n._)("div",me,[(0,n.Wm)(d,{title:"User Actions","icon-class":"fa fa-cog"},{default:(0,n.w5)((()=>[(0,n.Wm)(c,{text:"Change Password",disabled:a.commandRunning,"icon-class":"fa fa-key",onClick:s=>{a.selectedUser=t.username,e.$refs.changePasswordModal.show()}},null,8,["disabled","onClick"]),(0,n.Wm)(c,{text:"Delete User",disabled:a.commandRunning,"icon-class":"fa fa-trash",onClick:e=>o.deleteUser(t)},null,8,["disabled","onClick"])])),_:2},1024)])],8,pe)))),128))])])],64)}var be={name:"Users",components:{DropdownItem:u.Z,Loading:Y.Z,Modal:J.Z,Dropdown:d.Z},mixins:[G.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 s=!1;try{s=await this.request("user.update_password",{username:t.username,old_password:t.password,new_password:t.new_password})}finally{this.commandRunning=!1}s?(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){if(confirm("Are you sure that you want to remove the user "+e.username+"?")){this.commandRunning=!0;try{await this.request("user.delete_user",{username:e.username,session_token:this.sessionToken})}finally{this.commandRunning=!1}this.notify({text:"User "+e.username+" removed",image:{iconClass:"fas fa-check"}}),await this.refresh()}}},mounted(){this.refresh()}};const ve=(0,Q.Z)(be,[["render",ge]]);var ye=ve,we={name:"Settings",components:{Dropdown:d.Z,DropdownItem:u.Z,Users:ye,Token:te},mixins:[G.Z],data(){return{selectedView:"users",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 ke=(0,Q.Z)(we,[["render",c]]);var _e=ke},3379:function(e,t,s){var n={"./Camera/Index":[5528,2989,5528],"./CameraAndroidIpcam/Index":[6739,6739],"./CameraCv/Index":[8184,2989,8184],"./CameraFfmpeg/Index":[5111,2989,5111],"./CameraGstreamer/Index":[699,2989,699],"./CameraIrMlx90640/Index":[9895,2989,9895],"./CameraPi/Index":[4548,2989,4548],"./Entities/Index":[8725,201],"./Execute/Index":[9539,9539],"./Light/Index":[5199,7782,3490,5199],"./LightHue/Index":[3724,7782,3490,5199,3724],"./Media/Index":[4196,7782,9978,8589,4196],"./MediaMplayer/Index":[6509,7782,9978,8589,4196,6509],"./MediaMpv/Index":[5895,7782,9978,8589,4196,5895],"./MediaOmxplayer/Index":[9633,7782,9978,8589,4196,9633],"./MediaVlc/Index":[767,7782,9978,8589,4196,767],"./Music/Index":[6833,7782,9978,6833],"./MusicMpd/Index":[3249,7782,9978,6833,3249],"./MusicSnapcast/Index":[2790,7782,3490,2790],"./MusicSpotify/Index":[9369,7782,9978,6833,9369],"./Rtorrent/Index":[2820,8589,6899,2820],"./Settings/Index":[2715],"./Sound/Index":[5193,5193],"./Torrent/Index":[9299,8589,6899,9299],"./Tts/Index":[2466,4021,2466],"./TtsGoogle/Index":[1938,4021,1938],"./TvSamsungWs/Index":[615,615],"./ZigbeeMqtt/Index":[4848,7782,3490,4848],"./Zwave/Index":[6027,7782,3490,906,6027],"./ZwaveMqtt/Index":[2362,7782,3490,906,2362]};function i(e){if(!s.o(n,e))return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}));var t=n[e],i=t[0];return Promise.all(t.slice(1).map(s.e)).then((function(){return s(i)}))}i.keys=function(){return Object.keys(n)},i.id=3379,e.exports=i},6725:function(e,t,s){var n={"./Calendar/Index":[345,345],"./Camera/Index":[2346,2346],"./Component/Index":[5824,7782,3490,5824],"./DateTime/Index":[1595,9575,1595],"./DateTimeWeather/Index":[346,1798,9575,346],"./ImageCarousel/Index":[6003,1798,9575,6003],"./Music/Index":[6013,6013],"./Plugin/Index":[1818,1818],"./RssNews/Index":[7420,7420],"./Weather/Index":[1798,1798]};function i(e){if(!s.o(n,e))return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}));var t=n[e],i=t[0];return Promise.all(t.slice(1).map(s.e)).then((function(){return s(i)}))}i.keys=function(){return Object.keys(n)},i.id=6725,e.exports=i},1359:function(e){"use strict";e.exports=JSON.parse('{"arduino":{"class":"fas fa-microchip"},"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"},"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 s(n){var i=t[n];if(void 0!==i)return i.exports;var a=t[n]={exports:{}};return e[n](a,a.exports,s),a.exports}s.m=e,function(){var e=[];s.O=function(t,n,i,a){if(!n){var o=1/0;for(d=0;d=a)&&Object.keys(s.O).every((function(e){return s.O[e](n[l])}))?n.splice(l--,1):(r=!1,a 0&&e[d-1][2]>a;d--)e[d]=e[d-1];e[d]=[n,i,a]}}(),function(){s.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return s.d(t,{a:t}),t}}(),function(){var e,t=Object.getPrototypeOf?function(e){return Object.getPrototypeOf(e)}:function(e){return e.__proto__};s.t=function(n,i){if(1&i&&(n=this(n)),8&i)return n;if("object"===typeof n&&n){if(4&i&&n.__esModule)return n;if(16&i&&"function"===typeof n.then)return n}var a=Object.create(null);s.r(a);var o={};e=e||[null,t({}),t([]),t(t)];for(var r=2&i&&n;"object"==typeof r&&!~e.indexOf(r);r=t(r))Object.getOwnPropertyNames(r).forEach((function(e){o[e]=function(){return n[e]}}));return o["default"]=function(){return n},s.d(a,o),a}}(),function(){s.d=function(e,t){for(var n in t)s.o(t,n)&&!s.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})}}(),function(){s.f={},s.e=function(e){return Promise.all(Object.keys(s.f).reduce((function(t,n){return s.f[n](e,t),t}),[]))}}(),function(){s.u=function(e){return"static/js/"+e+"."+{65:"a4e6662a",201:"60aa8be6",345:"8d14f37b",346:"647c3d99",615:"25a0ebcb",675:"496d097f",699:"b7975861",767:"32c26b46",906:"12e72134",1196:"f4c25ec1",1300:"526f4cf3",1595:"cf573de8",1767:"25bd60ff",1798:"2ea76630",1818:"d8f79120",1938:"1dc95872",2346:"9a487752",2362:"620095dd",2466:"633bb83f",2790:"4b108fb8",2806:"e32037e8",2820:"07ee3664",2989:"fa06c8b8",3194:"256c2da8",3249:"a2010c2d",3303:"028580a6",3490:"d482e29b",3724:"a557791e",4021:"a3380d38",4196:"f85ff63e",4548:"c7642733",4848:"ca77e67b",4981:"c4835180",5111:"f606018d",5157:"f2273a80",5193:"1de6bb98",5199:"03545ba6",5207:"b6625280",5498:"ddfaadb5",5528:"10b051ba",5824:"d14935bb",5895:"bc039cca",5924:"a2919fe4",6003:"c76e25e0",6013:"5c85c65a",6027:"e3b113ee",6164:"2c2c3fba",6358:"46615b4c",6509:"9ca36429",6739:"14f222c1",6815:"a11912ee",6833:"65afb884",6899:"8c784f84",7141:"e4e94ba3",7420:"e53d9d48",7503:"2c161f6d",7782:"724314a6",8135:"bb2ac7e3",8184:"c4135de2",8444:"d0d1fdb2",8589:"21ae83d2",9276:"74343d50",9299:"710819a1",9369:"f7907b71",9387:"194bcb15",9418:"dfb3427c",9450:"0b6d3902",9539:"7a062356",9575:"fb8eab70",9633:"23b95cb0",9895:"16e6387b",9978:"f8ee0318"}[e]+".js"}}(),function(){s.miniCssF=function(e){return"static/css/"+e+"."+{65:"45022021",201:"11f5843f",345:"19cf9d0d",346:"1706fbde",615:"8b95243c",675:"4cafd794",906:"cb3bce26",1196:"7b6fd66b",1300:"96309a62",1767:"3f0d1aca",1798:"d0061372",1818:"8baa291c",2346:"d171e8f5",2790:"19201b3b",2806:"4f590a38",2989:"0f93a679",3194:"3df38d58",3303:"8fdecbd9",3490:"a327ba57",3724:"0fc70dd7",4021:"fff19b0b",4196:"ea56d2c9",4848:"c9eab7f4",4981:"94bc04e2",5193:"37da0a16",5199:"fe9cee1a",5207:"2b89418c",5498:"9a543237",5824:"c1f06cf8",5924:"99a5e5ce",6003:"986b3ae1",6013:"d0054b15",6164:"72aca991",6358:"ebcb5dfd",6739:"11bad71d",6815:"5eeaa8c8",6833:"b5d8115c",6899:"748a42fd",7141:"8ae8ce03",7420:"f8b46177",7503:"42ed5848",7782:"a9f0ac90",8135:"59c68eb5",8444:"f8d1e9c7",8589:"e7924cac",9276:"d21e868a",9387:"317149bb",9418:"55ebc1ed",9450:"ef02fb64",9539:"17613a3b",9575:"21327597",9978:"b34577f7"}[e]+".css"}}(),function(){s.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"===typeof window)return window}}()}(),function(){s.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}}(),function(){var e={},t="platypush:";s.l=function(n,i,a,o){if(e[n])e[n].push(i);else{var r,l;if(void 0!==a)for(var c=document.getElementsByTagName("script"),d=0;d {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)}},5360:function(e,t,s){"use strict";var n=s(9963),i=s(6252);const a=(0,i.Uk)(" Would you like to install this application locally? ");function o(e,t,s,n,o,r){const l=(0,i.up)("Events"),c=(0,i.up)("Notifications"),d=(0,i.up)("VoiceAssistant"),u=(0,i.up)("Pushbullet"),h=(0,i.up)("Ntfy"),p=(0,i.up)("ConfirmDialog"),f=(0,i.up)("router-view");return(0,i.wg)(),(0,i.iD)(i.HY,null,[r.hasWebsocket?((0,i.wg)(),(0,i.j4)(l,{key:0,ref:"events"},null,512)):(0,i.kq)("",!0),(0,i.Wm)(c,{ref:"notifications"},null,512),r.hasAssistant?((0,i.wg)(),(0,i.j4)(d,{key:1,ref:"voice-assistant"},null,512)):(0,i.kq)("",!0),r.hasPushbullet?((0,i.wg)(),(0,i.j4)(u,{key:2,ref:"pushbullet"},null,512)):(0,i.kq)("",!0),r.hasNtfy?((0,i.wg)(),(0,i.j4)(h,{key:3,ref:"ntfy"},null,512)):(0,i.kq)("",!0),(0,i.Wm)(p,{ref:"pwaDialog",onInput:r.installPWA},{default:(0,i.w5)((()=>[a])),_:1},8,["onInput"]),(0,i.Wm)(f)],64)}var r=s(6960);const l={class:"notifications"};function c(e,t,s,n,a,o){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,s)=>((0,i.wg)(),(0,i.j4)(r,{key:s,id:t,text:e.text,html:e.html,title:e.title,link:e.link,image:e.image,warning:e.warning,error:e.error,onClicked:o.destroy},null,8,["id","text","html","title","link","image","warning","error","onClicked"])))),128))])}var d=s(3577);const u=["textContent"],h={class:"body"},p={key:0,class:"image col-3"},f={class:"row"},m=["src"],g={key:3,class:"fa fa-exclamation"},b={key:4,class:"fa fa-times"},v=["textContent"],y=["innerHTML"],w=["textContent"],k=["innerHTML"];function _(e,t,s,n,a,o){return(0,i.wg)(),(0,i.iD)("div",{class:(0,d.C_)(["notification fade-in",{warning:s.warning,error:s.error}]),onClick:t[0]||(t[0]=(...e)=>o.clicked&&o.clicked(...e))},[s.title?((0,i.wg)(),(0,i.iD)("div",{key:0,class:"title",textContent:(0,d.zw)(s.title)},null,8,u)):(0,i.kq)("",!0),(0,i._)("div",h,[s.image||s.warning||s.error?((0,i.wg)(),(0,i.iD)("div",p,[(0,i._)("div",f,[s.image&&s.image.src?((0,i.wg)(),(0,i.iD)("img",{key:0,src:s.image.src,alt:""},null,8,m)):s.image&&s.image.icon?((0,i.wg)(),(0,i.iD)("i",{key:1,class:(0,d.C_)(["fa","fa-"+s.image.icon]),style:(0,d.j5)(s.image.color?"--color: "+s.image.color:"")},null,6)):s.image&&s.image.iconClass?((0,i.wg)(),(0,i.iD)("i",{key:2,class:(0,d.C_)(s.image.iconClass),style:(0,d.j5)(s.image.color?"--color: "+s.image.color:"")},null,6)):s.warning?((0,i.wg)(),(0,i.iD)("i",g)):s.error?((0,i.wg)(),(0,i.iD)("i",b)):(0,i.kq)("",!0)])])):(0,i.kq)("",!0),s.text&&s.image?((0,i.wg)(),(0,i.iD)("div",{key:1,class:"text col-9",textContent:(0,d.zw)(s.text)},null,8,v)):(0,i.kq)("",!0),s.html&&s.image?((0,i.wg)(),(0,i.iD)("div",{key:2,class:"text col-9",innerHTML:s.html},null,8,y)):(0,i.kq)("",!0),s.text&&!s.image?((0,i.wg)(),(0,i.iD)("div",{key:3,class:"text row horizontal-center",textContent:(0,d.zw)(s.text)},null,8,w)):(0,i.kq)("",!0),s.html&&!s.image?((0,i.wg)(),(0,i.iD)("div",{key:4,class:"text row horizontal-center",innerHTML:s.html},null,8,k)):(0,i.kq)("",!0)])],2)}var x={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)}}},C=s(3744);const D=(0,C.Z)(x,[["render",_],["__scopeId","data-v-7646705e"]]);var I=D,T={name:"Notifications",components:{Notification:I},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 s=e.duration?parseInt(e.duration):0;s&&(this.timeouts[t]=setTimeout(this.destroy.bind(null,t),s))},destroy:function(e){delete this.notifications[e],delete this.timeouts[e]}}};const S=(0,C.Z)(T,[["render",c],["__scopeId","data-v-6dc8bebc"]]);var U=S,M=s(6813);function $(e,t,s,n,a,o){return(0,i.wg)(),(0,i.iD)("div")}var N=s(5250),P={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(s){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 s of t)s&&(s instanceof Array?s=s[0]:s instanceof Object&&!(s instanceof Function)&&(s=Object.values(s)[0]),s(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,s=e.events.length?e.events:[null],n=e.handlerName;for(const i of s)i in this.handlers||(this.handlers[i]={}),n in this.handlerNameToEventTypes||(this.handlerNameToEventTypes[n]=s),this.handlers[i][n]=t;return()=>{this.unsubscribe(n)}},unsubscribe(e){const t=this.handlerNameToEventTypes[e];if(t){for(const s of t)this.handlers[s]?.[e]&&(delete this.handlers[s][e],Object.keys(this.handlers[s]).length||delete this.handlers[s]);delete this.handlerNameToEventTypes[e]}}},created(){N.$.on("subscribe",this.subscribe),N.$.on("unsubscribe",this.unsubscribe),this.init()}};const j=(0,C.Z)(P,[["render",$]]);var q=j;const O={class:"assistant-modal"},E={class:"icon"},Z={key:0,class:"fa fa-bell"},W={key:1,class:"fa fa-volume-up"},z={key:2,class:"fa fa-comment-dots"},R={key:3,class:"fa fa-microphone"},L={class:"text"},A={key:0,class:"listening"},V=(0,i._)("span",null,"Assistant listening",-1),F=[V],H={key:1,class:"speech-recognized"},B=["textContent"],K={key:2,class:"responding"},Y=["textContent"];function G(e,t,s,n,a,o){const r=(0,i.up)("Modal");return(0,i.wg)(),(0,i.iD)("div",O,[(0,i.Wm)(r,{ref:"assistantModal"},{default:(0,i.w5)((()=>[(0,i._)("div",E,[a.state.alerting?((0,i.wg)(),(0,i.iD)("i",Z)):a.state.responding?((0,i.wg)(),(0,i.iD)("i",W)):a.state.speechRecognized?((0,i.wg)(),(0,i.iD)("i",z)):((0,i.wg)(),(0,i.iD)("i",R))]),(0,i._)("div",L,[a.state.listening?((0,i.wg)(),(0,i.iD)("div",A,F)):a.state.speechRecognized?((0,i.wg)(),(0,i.iD)("div",H,[(0,i._)("span",{textContent:(0,d.zw)(a.phrase)},null,8,B)])):a.state.responding?((0,i.wg)(),(0,i.iD)("div",K,[(0,i._)("span",{textContent:(0,d.zw)(a.responseText)},null,8,Y)])):(0,i.kq)("",!0)])])),_:1},512)])}var J=s(1794),X={name:"VoiceAssistant",components:{Modal:J.Z},mixins:[M.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 Q=(0,C.Z)(X,[["render",G]]);var ee=Q;function te(e,t,s,n,a,o){return(0,i.wg)(),(0,i.iD)("div")}var se={name:"Ntfy",mixins:[M.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,C.Z)(se,[["render",te]]);var ie=ne;function ae(e,t,s,n,a,o){return(0,i.wg)(),(0,i.iD)("div")}var oe={name:"Pushbullet",mixins:[M.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 re=(0,C.Z)(oe,[["render",ae]]);var le=re,ce={name:"App",mixins:[M.Z],components:{ConfirmDialog:r.Z,Pushbullet:le,Ntfy:ie,Notifications:U,Events:q,VoiceAssistant:ee},data(){return{config:{},userAuthenticated:!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(){window.addEventListener("beforeinstallprompt",(e=>{e.preventDefault(),this.pwaInstallEvent=e,this.$refs.pwaDialog.show()}))},mounted(){N.$.onNotification(this.onNotification)}};const de=(0,C.Z)(ce,[["render",o]]);var ue=de,he=s(2201);function pe(e,t,s,n,a,o){const r=(0,i.up)("Loading"),l=(0,i.up)("Widget"),c=(0,i.up)("Row");return(0,i.wg)(),(0,i.iD)(i.HY,null,[a.loading?((0,i.wg)(),(0,i.j4)(r,{key:0})):(0,i.kq)("",!0),(0,i._)("div",{id:"dashboard",class:(0,d.C_)(["col-12",o.classes]),style:(0,d.j5)(a.style)},[((0,i.wg)(!0),(0,i.iD)(i.HY,null,(0,i.Ko)(a.rows,((e,t)=>((0,i.wg)(),(0,i.j4)(c,{key:t,class:(0,d.C_)(e.class),style:(0,d.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)(l,{style:(0,d.j5)(e.style),class:(0,d.C_)(e.class)},{default:(0,i.w5)((()=>[((0,i.wg)(),(0,i.j4)((0,i.LL)(e.component),(0,d.vs)((0,i.F4)(o.getWidgetProps(e))),null,16))])),_:2},1032,["style","class"])],1024)))),128))])),_:2},1032,["class","style"])))),128))],6)],64)}var fe=s(2262),me=s(1232);function ge(e,t,s,n,a,o){return(0,i.wg)(),(0,i.iD)("div",{class:(0,d.C_)(["row",o.classes]),style:(0,d.j5)(s.style)},[(0,i.WI)(e.$slots,"default",{},void 0,!0)],6)}var be={name:"Row",props:{class:{type:String,required:!1,default:""},style:{type:String,required:!1,default:""}},computed:{classes(){return this.class}}};const ve=(0,C.Z)(be,[["render",ge],["__scopeId","data-v-1b4663f2"]]);var ye=ve;function we(e,t,s,n,a,o){return(0,i.wg)(),(0,i.iD)("div",{style:(0,d.j5)(s.style),class:(0,d.C_)(o.classes)},[(0,i.WI)(e.$slots,"default",{},void 0,!0)],6)}var ke={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 _e=(0,C.Z)(ke,[["render",we],["__scopeId","data-v-5df52982"]]);var xe=_e,Ce={name:"Dashboard",mixins:[M.Z],components:{Widget:xe,Loading:me.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 n=(new DOMParser).parseFromString(t,"text/xml").childNodes[0],a=this;this.style=n.attributes.style?.nodeValue,this.class=n.attributes.class?.nodeValue,this.rows=[...n.getElementsByTagName("Row")].map((e=>({style:e.attributes.style?.nodeValue,class:e.attributes.class?.nodeValue,widgets:[...e.children].map((e=>{const t=(0,fe.XI)((0,i.RC)((()=>s(6725)(`./${e.nodeName}/Index`)))),n=e.attributes.style?.nodeValue,o=e.attributes.class?.nodeValue,r=[...e.attributes].reduce(((e,t)=>("style"!==t.nodeName&&(e[t.nodeName]=t.nodeValue),e)),{content:e.innerHTML}),l={component:t,style:n,class:o,props:r||{}};return a.$options.components[e.nodeName]=t,l}))}))),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 De=(0,C.Z)(Ce,[["render",pe],["__scopeId","data-v-54e0248a"]]);var Ie=De;function Te(e,t,s,n,a,o){return(0,i.wg)(),(0,i.iD)("h1",null,"Object not found")}var Se={name:"NotFound"};const Ue=(0,C.Z)(Se,[["render",Te]]);var Me=Ue;const $e=e=>((0,i.dD)("data-v-af0b14d0"),e=e(),(0,i.Cn)(),e),Ne={class:"login-container"},Pe={class:"login",method:"POST"},je=(0,i.uE)(' Platypush',3),qe={key:0,class:"row"},Oe=$e((()=>(0,i._)("label",null,[(0,i._)("input",{type:"password",name:"confirm_password",placeholder:"Confirm password"})],-1))),Ee=[Oe],Ze={class:"row buttons"},We=["value"],ze=$e((()=>(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,s,n,a,o){return(0,i.wg)(),(0,i.iD)("div",Ne,[(0,i._)("form",Pe,[je,o._register?((0,i.wg)(),(0,i.iD)("div",qe,Ee)):(0,i.kq)("",!0),(0,i._)("div",Ze,[(0,i._)("input",{type:"submit",class:"btn btn-primary",value:o._register?"Register":"Login"},null,8,We)]),ze])])}var Le={name:"Login",mixins:[M.Z],props:{register:{type:Boolean,required:!1,default:!1}},computed:{_register(){return this.parseBoolean(this.register)}}};const Ae=(0,C.Z)(Le,[["render",Re],["__scopeId","data-v-af0b14d0"]]);var Ve=Ae;function Fe(e,t,s,n,a,o){const r=(0,i.up)("Login");return(0,i.wg)(),(0,i.j4)(r,{register:!0})}var He={name:"Register",mixins:[Ve],components:{Login:Ve},props:{register:{type:Boolean,required:!1,default:!0}}};const Be=(0,C.Z)(He,[["render",Fe]]);var Ke=Be;const Ye={key:2,class:"canvas"},Ge={class:"panel"},Je={key:3,class:"canvas"};function Xe(e,t,s,n,a,o){const r=(0,i.up)("Loading"),l=(0,i.up)("Nav"),c=(0,i.up)("Settings");return(0,i.wg)(),(0,i.iD)("main",null,[a.loading?((0,i.wg)(),(0,i.j4)(r,{key:0})):((0,i.wg)(),(0,i.j4)(l,{key:1,panels:a.components,"selected-panel":a.selectedPanel,hostname:a.hostname,onSelect:t[0]||(t[0]=e=>a.selectedPanel=e)},null,8,["panels","selected-panel","hostname"])),"settings"===a.selectedPanel?((0,i.wg)(),(0,i.iD)("div",Ye,[(0,i._)("div",Ge,[(0,i.Wm)(c)])])):((0,i.wg)(),(0,i.iD)("div",Je,[((0,i.wg)(!0),(0,i.iD)(i.HY,null,(0,i.Ko)(a.components,((e,t)=>((0,i.wg)(),(0,i.iD)("div",{class:(0,d.C_)(["panel",{hidden:t!==a.selectedPanel}]),key:t},[t===a.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 Qe=e=>((0,i.dD)("data-v-d9ea25f0"),e=e(),(0,i.Cn)(),e),et=Qe((()=>(0,i._)("i",{class:"fas fa-bars"},null,-1))),tt=["textContent"],st={class:"plugins"},nt=["title","onClick"],it=["href"],at={class:"icon"},ot=["src"],rt={key:2,class:"fas fa-puzzle-piece"},lt=["textContent"],ct={class:"footer"},dt={href:"/#settings"},ut=Qe((()=>(0,i._)("span",{class:"icon"},[(0,i._)("i",{class:"fa fa-cog"})],-1))),ht={key:0,class:"name"},pt={href:"/logout"},ft=Qe((()=>(0,i._)("span",{class:"icon"},[(0,i._)("i",{class:"fas fa-sign-out-alt"})],-1))),mt={key:0,class:"name"};function gt(e,t,s,n,a,o){return(0,i.wg)(),(0,i.iD)("nav",{class:(0,d.C_)({collapsed:a.collapsed})},[(0,i._)("div",{class:"toggler",onClick:t[0]||(t[0]=e=>a.collapsed=!a.collapsed)},[et,s.hostname?((0,i.wg)(),(0,i.iD)("span",{key:0,class:"hostname",textContent:(0,d.zw)(s.hostname)},null,8,tt)):(0,i.kq)("",!0)]),(0,i._)("ul",st,[((0,i.wg)(!0),(0,i.iD)(i.HY,null,(0,i.Ko)(o.panelNames,(e=>((0,i.wg)(),(0,i.iD)("li",{key:e,class:(0,d.C_)(["entry",{selected:e===s.selectedPanel}]),title:e,onClick:t=>o.onItemClick(e)},[(0,i._)("a",{href:`/#${e}`},[(0,i._)("span",at,[a.icons[e]?.class?((0,i.wg)(),(0,i.iD)("i",{key:0,class:(0,d.C_)(a.icons[e].class)},null,2)):a.icons[e]?.imgUrl?((0,i.wg)(),(0,i.iD)("img",{key:1,src:a.icons[e].imgUrl,alt:"name"},null,8,ot)):((0,i.wg)(),(0,i.iD)("i",rt))]),a.collapsed?(0,i.kq)("",!0):((0,i.wg)(),(0,i.iD)("span",{key:0,class:"name",textContent:(0,d.zw)("entities"==e?"Home":e)},null,8,lt))],8,it)],10,nt)))),128))]),(0,i._)("ul",ct,[(0,i._)("li",{class:(0,d.C_)({selected:"settings"===s.selectedPanel}),title:"Settings",onClick:t[1]||(t[1]=e=>o.onItemClick("settings"))},[(0,i._)("a",dt,[ut,a.collapsed?(0,i.kq)("",!0):((0,i.wg)(),(0,i.iD)("span",ht,"Settings"))])],2),(0,i._)("li",{title:"Logout",onClick:t[2]||(t[2]=e=>o.onItemClick("logout"))},[(0,i._)("a",pt,[ft,a.collapsed?(0,i.kq)("",!0):((0,i.wg)(),(0,i.iD)("span",mt,"Logout"))])])])],2)}var bt=s(1359),vt={name:"Nav",emits:["select"],mixins:[M.Z],props:{panels:{type:Object,required:!0},selectedPanel:{type:String},hostname:{type:String}},computed:{panelNames(){let e=Object.keys(this.panels);const t=e.indexOf("entities");return t>=0?["entities"].concat(e.slice(0,t).concat(e.slice(t+1)).sort()):e.sort()},collapsedDefault(){return!(!this.isMobile()&&!this.isTablet())}},methods:{onItemClick(e){this.$emit("select",e),this.collapsed=!!this.isMobile()||this.collapsedDefault}},data(){return{collapsed:!0,icons:bt,host:null}},mounted(){this.collapsed=this.collapsedDefault}};const yt=(0,C.Z)(vt,[["render",gt],["__scopeId","data-v-d9ea25f0"]]);var wt=yt,kt=s(2715),_t={name:"Panel",mixins:[M.Z],components:{Settings:kt["default"],Nav:wt,Loading:me.Z},data(){return{loading:!1,plugins:{},backends:{},procedures:{},components:{},hostname:void 0,selectedPanel:void 0}},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,n])=>{const a=t.split(".").map((e=>e[0].toUpperCase()+e.slice(1))).join("");let o=null;try{o=await s(3379)(`./${a}/Index`)}catch(l){return}const r=(0,fe.XI)((0,i.RC)((async()=>o)));e.$options.components[t]=r,e.components[t]={component:r,pluginName:t,config:n}}))},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.execute={},this.plugins.entities={}}},async mounted(){this.loading=!0;try{await this.parseConfig(),this.initPanels(),this.initSelectedPanel()}finally{this.loading=!1}}};const xt=(0,C.Z)(_t,[["render",Xe],["__scopeId","data-v-fbc09254"]]);var Ct=xt;const Dt={key:1,class:"canvas"};function It(e,t,s,n,a,o){const r=(0,i.up)("Loading");return(0,i.wg)(),(0,i.iD)("main",null,[a.loading?((0,i.wg)(),(0,i.j4)(r,{key:0})):((0,i.wg)(),(0,i.iD)("div",Dt,[((0,i.wg)(),(0,i.j4)((0,i.LL)(a.component),{config:a.config,"plugin-name":o.pluginName},null,8,["config","plugin-name"]))]))])}var Tt={name:"Panel",mixins:[M.Z],components:{Settings:kt["default"],Nav:wt,Loading:me.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 s(3379)(`./${e}/Index`)}catch(n){return console.error(n),void this.notify({error:!0,title:`Cannot load plugin ${this.pluginName}`,text:n.toString()})}this.component=(0,fe.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 St=(0,C.Z)(Tt,[["render",It],["__scopeId","data-v-e339182c"]]);var Ut=St;const Mt=[{path:"/",name:"Panel",component:Ct},{path:"/dashboard/:name",name:"Dashboard",component:Ie},{path:"/plugin/:plugin",name:"Plugin",component:Ut},{path:"/login",name:"Login",component:Ve},{path:"/register",name:"Register",component:Ke},{path:"/:catchAll(.*)",component:Me}],$t=(0,he.p7)({history:(0,he.PO)(),routes:Mt});var Nt=$t,Pt=s(5205);(0,Pt.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 jt=(0,n.ri)(ue);jt.config.globalProperties._config=window.config,jt.use(Nt).mount("#app")},6813:function(e,t,s){"use strict";s.d(t,{Z:function(){return N}});var n=s(9669),i=s.n(n),a={name:"Api",methods:{execute(e,t=6e4,s=!0){const n={};return"target"in e&&e["target"]||(e["target"]="localhost"),"type"in e&&e["type"]||(e["type"]="request"),t&&(n.timeout=t),new Promise(((t,a)=>{i().post("/execute",e,n).then((e=>{if(e=e.data.response,e.errors?.length){const t=e.errors?.[0]||e;this.notify({text:t,error:!0}),a(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),s&&this.notify({text:e,error:!0}),a(e))}))}))},request(e,t={},s=6e4,n=!0){return this.execute({type:"request",action:e,args:t},s,n)}}};const o=a;var r=o,l={name:"Cookies",methods:{getCookies(){return document.cookie.split(/;\s*/).reduce(((e,t)=>{const[s,n]=t.split("=");return e[s]=n,e}),{})}}};const c=l;var d=c,u={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,s=!0){return"string"===typeof e&&(e=new Date(Date.parse(e))),`${this.formatDate(e,t)}, ${this.formatTime(e,s)}`}}};const h=u;var p=h,f=(s(2801),s(5250)),m={name:"Events",computed:{_eventsReady(){return this.$root.$refs.events?.initialized}},methods:{subscribe(e,t,...s){const n=()=>{f.$.emit("subscribe",{events:s,handler:e,handlerName:t||this.generateId()})};if(this._eventsReady)return void n();const i=this,a=this.$watch((()=>i._eventsReady),(e=>{e&&(n(),a())}));return a},unsubscribe(e){f.$.emit("unsubscribe",e)},generateId(){return btoa([...Array(11).keys()].map((()=>String.fromCharCode(Math.round(255*Math.random())))))}}};const g=m;var b=g,v={name:"Notification",methods:{notify(e){f.$.publishNotification(e)},notifyWarning(e){this.notify({text:e,warning:!0})},notifyError(e){throw this.notify({text:e,error:!0}),e}}};const y=v;var w=y,k={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 _=k;var x=_,C={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(" ")}}};const D=C;var I=D,T={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 s=["B","KB","MB","GB","TB"];return s.forEach(((n,i)=>{e<=1024&&null==t?t=n:e>1024&&(i===s.length-1?t=n:e/=1024)})),`${e.toFixed(2)} ${t}`},convertTime(e){const t={},s=[];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"),s.push(e)}if(parseInt(t.h)){let e=t.h+" hour";t.h>1&&(e+="s"),s.push(e)}if(parseInt(t.m)){let e=t.m+" minute";t.m>1&&(e+="s"),s.push(e)}let n=t.s+" second";return t.s>1&&(n+="s"),s.push(n),s.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 s of Object.keys(e||{}))switch(typeof e[s]){case"object":if(!this.objectsEqual(e[s],t[s]))return!1;break;case"function":if(e[s].toString()!=t[s]?.toString())return!1;break;default:if(e[s]!=t[s])return!1;break}for(const s of Object.keys(t||{}))if(null==e[s]&&null!=t[s])return!1;return!0}}};const S=T;var U=S,M={name:"Utils",mixins:[r,d,w,b,p,x,I,U]};const $=M;var N=$},1232:function(e,t,s){"use strict";s.d(t,{Z:function(){return d}});var n=s(6252);const i={class:"loading"},a={class:"icon"};function o(e,t){return(0,n.wg)(),(0,n.iD)("div",i,[(0,n._)("div",a,[((0,n.wg)(),(0,n.iD)(n.HY,null,(0,n.Ko)(4,(e=>(0,n._)("div",{key:e}))),64))])])}var r=s(3744);const l={},c=(0,r.Z)(l,[["render",o],["__scopeId","data-v-4d9c871b"]]);var d=c},1794:function(e,t,s){"use strict";s.d(t,{Z:function(){return g}});var n=s(6252),i=s(3577);const a=e=>((0,n.dD)("data-v-18f9fdba"),e=e(),(0,n.Cn)(),e),o=["id"],r={key:0,class:"header"},l=["textContent"],c=a((()=>(0,n._)("i",{class:"fas fa-xmark"},null,-1))),d=[c],u={class:"body"};function h(e,t,s,a,c,h){return(0,n.wg)(),(0,n.iD)("div",{class:(0,i.C_)(["modal-container fade-in",{hidden:!c.isVisible}]),id:s.id,style:(0,i.j5)({"--z-index":h.zIndex}),onClick:t[3]||(t[3]=(...e)=>h.close&&h.close(...e))},[(0,n._)("div",{class:(0,i.C_)(["modal",e.$attrs.class])},[(0,n._)("div",{class:"content",style:(0,i.j5)({"--width":s.width,"--height":s.height}),onClick:t[2]||(t[2]=e=>e.stopPropagation())},[s.title?((0,n.wg)(),(0,n.iD)("div",r,[s.title?((0,n.wg)(),(0,n.iD)("div",{key:0,class:"title",textContent:(0,i.zw)(s.title)},null,8,l)):(0,n.kq)("",!0),(0,n._)("button",{title:"Close",alt:"Close",onClick:t[0]||(t[0]=(...e)=>h.close&&h.close(...e))},d)])):(0,n.kq)("",!0),(0,n._)("div",u,[(0,n.WI)(e.$slots,"default",{onModalClose:t[1]||(t[1]=(...e)=>h.close&&h.close(...e))},void 0,!0)])],4)],2)],14,o)}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 s of document.querySelectorAll(".modal-container:not(.hidden)")){const n=parseInt(getComputedStyle(s).zIndex);n>e?(e=n,t=[s]):n===e&&t.push(s)}(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=s(3744);const m=(0,f.Z)(p,[["render",h],["__scopeId","data-v-18f9fdba"]]);var g=m},6960:function(e,t,s){"use strict";s.d(t,{Z:function(){return m}});var n=s(6252),i=s(9963),a=s(3577);const o=e=>((0,n.dD)("data-v-682db704"),e=e(),(0,n.Cn)(),e),r={class:"dialog-content"},l=o((()=>(0,n._)("i",{class:"fas fa-check"},null,-1))),c=o((()=>(0,n._)("i",{class:"fas fa-xmark"},null,-1)));function d(e,t,s,o,d,u){const h=(0,n.up)("Modal");return(0,n.wg)(),(0,n.j4)(h,{ref:"modal",title:s.title},{default:(0,n.w5)((()=>[(0,n._)("div",r,[(0,n.WI)(e.$slots,"default",{},void 0,!0)]),(0,n._)("form",{class:"buttons",onSubmit:t[4]||(t[4]=(0,i.iM)(((...e)=>u.onConfirm&&u.onConfirm(...e)),["prevent"]))},[(0,n._)("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))},[l,(0,n.Uk)(" "+(0,a.zw)(s.confirmText),1)],32),(0,n._)("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,n.Uk)(" "+(0,a.zw)(s.cancelText),1)],32)],32)])),_:3},8,["title"])}var u=s(1794),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=s(3744);const f=(0,p.Z)(h,[["render",d],["__scopeId","data-v-682db704"]]);var m=f},2856:function(e,t,s){"use strict";s.d(t,{Z:function(){return f}});var n=s(6252),i=s(9963),a=s(3577);const o={class:"dropdown-container",ref:"container"},r=["title"],l=["textContent"],c=["id"];function d(e,t,s,d,u,h){return(0,n.wg)(),(0,n.iD)("div",o,[(0,n._)("button",{title:s.title,ref:"button",onClick:t[0]||(t[0]=(0,i.iM)((e=>h.toggle(e)),["stop"]))},[s.iconClass?((0,n.wg)(),(0,n.iD)("i",{key:0,class:(0,a.C_)(["icon",s.iconClass])},null,2)):(0,n.kq)("",!0),s.text?((0,n.wg)(),(0,n.iD)("span",{key:1,class:"text",textContent:(0,a.zw)(s.text)},null,8,l)):(0,n.kq)("",!0)],8,r),(0,n._)("div",{class:(0,a.C_)(["dropdown fade-in",{hidden:!u.visible}]),id:s.id,ref:"dropdown"},[(0,n.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=s(3744);const p=(0,h.Z)(u,[["render",d],["__scopeId","data-v-5b964c03"]]);var f=p},2588:function(e,t,s){"use strict";s.d(t,{Z:function(){return h}});var n=s(6252),i=s(3577);const a={key:0,class:"col-2 icon"},o=["textContent"];function r(e,t,s,r,l,c){const d=(0,n.up)("Icon");return(0,n.wg)(),(0,n.iD)("div",{class:(0,i.C_)(["row item",s.itemClass]),onClick:t[0]||(t[0]=(...e)=>c.clicked&&c.clicked(...e))},[s.iconClass?.length||s.iconUrl?.length?((0,n.wg)(),(0,n.iD)("div",a,[(0,n.Wm)(d,{class:(0,i.C_)(s.iconClass),url:s.iconUrl},null,8,["class","url"])])):(0,n.kq)("",!0),(0,n._)("div",{class:(0,i.C_)(["text",{"col-10":null!=s.iconClass}]),textContent:(0,i.zw)(s.text)},null,10,o)],2)}var l=s(1478),c={name:"DropdownItem",components:{Icon:l.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=s(3744);const u=(0,d.Z)(c,[["render",r],["__scopeId","data-v-282d16b4"]]);var h=u},1478:function(e,t,s){"use strict";s.d(t,{Z:function(){return u}});var n=s(6252),i=s(3577);const a={class:"icon-container"},o=["src","alt"];function r(e,t,s,r,l,c){return(0,n.wg)(),(0,n.iD)("div",a,[s.url?.length?((0,n.wg)(),(0,n.iD)("img",{key:0,class:"icon",src:s.url,alt:s.alt},null,8,o)):c.className?.length?((0,n.wg)(),(0,n.iD)("i",{key:1,class:(0,i.C_)(["icon",c.className]),style:(0,i.j5)({color:s.color})},null,6)):(0,n.kq)("",!0)])}var l={props:{class:{type:String},url:{type:String},color:{type:String,default:""},alt:{type:String,default:""}},computed:{className(){return this.class}}},c=s(3744);const d=(0,c.Z)(l,[["render",r],["__scopeId","data-v-706a3bd1"]]);var u=d},2715:function(e,t,s){"use strict";s.r(t),s.d(t,{default:function(){return _e}});var n=s(6252);const i={class:"settings-container"},a={class:"col-8"},o={class:"col-4 pull-right"},r=(0,n._)("i",{class:"fa fa-plus"},null,-1),l=[r];function c(e,t,s,r,c,d){const u=(0,n.up)("DropdownItem"),h=(0,n.up)("Dropdown"),p=(0,n.up)("Users"),f=(0,n.up)("Token");return(0,n.wg)(),(0,n.iD)("div",i,[(0,n._)("header",null,[(0,n._)("div",a,[(0,n.Wm)(h,{title:"Select a category","icon-class":"fa fa-ellipsis-h"},{default:(0,n.w5)((()=>[(0,n.Wm)(u,{text:"Users","icon-class":"fa fa-user","item-class":{selected:"users"===c.selectedView},onClick:t[0]||(t[0]=e=>c.selectedView="users")},null,8,["item-class"]),(0,n.Wm)(u,{text:"Generate a token","icon-class":"fa fa-key","item-class":{selected:"token"===c.selectedView},onClick:t[1]||(t[1]=e=>c.selectedView="token")},null,8,["item-class"])])),_:1})]),(0,n._)("div",o,["users"===c.selectedView?((0,n.wg)(),(0,n.iD)("button",{key:0,title:"Add User",onClick:t[2]||(t[2]=t=>e.$refs.usersView.$refs.addUserModal.show())},l)):(0,n.kq)("",!0)])]),(0,n._)("main",null,["users"===c.selectedView?((0,n.wg)(),(0,n.j4)(p,{key:0,"session-token":c.sessionToken,"current-user":c.currentUser,ref:"usersView"},null,8,["session-token","current-user"])):"token"===c.selectedView?((0,n.wg)(),(0,n.j4)(f,{key:1,"session-token":c.sessionToken,"current-user":c.currentUser,ref:"tokenView"},null,8,["session-token","current-user"])):(0,n.kq)("",!0)])])}var d=s(2856),u=s(2588),h=s(3577),p=s(9963);const f={class:"token-container"},m={class:"token-container"},g=(0,n.Uk)(" This is your generated token. Treat it carefully and do not share it with untrusted parties."),b=(0,n._)("br",null,null,-1),v=(0,n.Uk)(" Also, make sure to save it - it WILL NOT be displayed again. "),y=["textContent"],w={class:"body"},k={class:"description"},_=(0,n.Uk)("Generate a JWT authentication token that can be used for API calls to the "),x=(0,n.Uk)("/execute"),C=(0,n.Uk)(" endpoint."),D=(0,n._)("br",null,null,-1),I=(0,n._)("p",null,"You can include the token in your requests in any of the following ways:",-1),T=(0,n.Uk)("Specify it on the "),S=(0,n.Uk)("Authorization: Bearer"),U=(0,n.Uk)(" header;"),M=(0,n.Uk)("Specify it on the "),$=(0,n.Uk)("X-Token"),N=(0,n.Uk)(" header;"),P=(0,n.Uk)("Specify it as a URL parameter: "),j=(0,n.Uk)("http://site:8008/execute?token=..."),q=(0,n.Uk)(";"),O=(0,n.Uk)("Specify it on the body of your JSON request: "),E=(0,n.Uk)('{"type":"request", "action", "...", "token":"..."}'),Z=(0,n.Uk)("."),W=(0,n.Uk)(" Confirm your credentials in order to generate a new token. "),z={class:"form-container"},R=(0,n._)("span",null,"Username",-1),L=["value"],A=(0,n._)("label",null,[(0,n._)("span",null,"Confirm password"),(0,n._)("span",null,[(0,n._)("input",{type:"password",name:"password"})])],-1),V=(0,n._)("label",null,[(0,n._)("span",null,"Token validity in days"),(0,n._)("span",null,[(0,n._)("input",{type:"text",name:"validityDays"})]),(0,n._)("span",{class:"note"},[(0,n.Uk)(" Decimal values are also supported (e.g. "),(0,n._)("i",null,"0.5"),(0,n.Uk)(" to identify 6 hours). An empty or zero value means that the token has no expiry date. ")])],-1),F=(0,n._)("label",null,[(0,n._)("input",{type:"submit",class:"btn btn-primary",value:"Generate token"})],-1);function H(e,t,s,i,a,o){const r=(0,n.up)("Loading"),l=(0,n.up)("Modal"),c=(0,n.up)("tt");return(0,n.wg)(),(0,n.iD)("div",f,[a.loading?((0,n.wg)(),(0,n.j4)(r,{key:0})):(0,n.kq)("",!0),(0,n.Wm)(l,{ref:"tokenModal"},{default:(0,n.w5)((()=>[(0,n._)("div",m,[(0,n._)("label",null,[g,b,v,(0,n._)("textarea",{class:"token",textContent:(0,h.zw)(a.token),onFocus:t[0]||(t[0]=(...e)=>o.onTokenSelect&&o.onTokenSelect(...e))},null,40,y)])])])),_:1},512),(0,n._)("div",w,[(0,n._)("div",k,[(0,n._)("p",null,[_,(0,n.Wm)(c,null,{default:(0,n.w5)((()=>[x])),_:1}),C]),D,I,(0,n._)("ul",null,[(0,n._)("li",null,[T,(0,n.Wm)(c,null,{default:(0,n.w5)((()=>[S])),_:1}),U]),(0,n._)("li",null,[M,(0,n.Wm)(c,null,{default:(0,n.w5)((()=>[$])),_:1}),N]),(0,n._)("li",null,[P,(0,n.Wm)(c,null,{default:(0,n.w5)((()=>[j])),_:1}),q]),(0,n._)("li",null,[O,(0,n.Wm)(c,null,{default:(0,n.w5)((()=>[E])),_:1}),Z])]),W]),(0,n._)("div",z,[(0,n._)("form",{onSubmit:t[1]||(t[1]=(0,p.iM)(((...e)=>o.generateToken&&o.generateToken(...e)),["prevent"])),ref:"generateTokenForm"},[(0,n._)("label",null,[R,(0,n._)("span",null,[(0,n._)("input",{type:"text",name:"username",value:s.currentUser.username,disabled:""},null,8,L)])]),A,V,F],544)])])])}var B=s(9669),K=s.n(B),Y=s(1232),G=s(6813),J=s(1794),X={name:"Token",components:{Modal:J.Z,Loading:Y.Z},mixins:[G.Z],props:{currentUser:{type:Object,required:!0}},data(){return{loading:!1,token:null}},methods:{async generateToken(e){const t=this.currentUser.username,s=e.target.password.value;let n=e.target.validityDays?.length?parseInt(e.target.validityDays.value):0;n||(n=null),this.loading=!0;try{this.token=(await K().post("/auth",{username:t,password:s,expiry_days:n})).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"}})}}},Q=s(3744);const ee=(0,Q.Z)(X,[["render",H]]);var te=ee;const se=["disabled"],ne=["disabled"],ie=["disabled"],ae=["disabled"],oe=["value"],re=["disabled"],le=["disabled"],ce=["disabled"],de=["disabled"],ue={class:"body"},he={class:"users-list"},pe=["onClick"],fe=["textContent"],me={class:"actions pull-right col-4"};function ge(e,t,s,i,a,o){const r=(0,n.up)("Loading"),l=(0,n.up)("Modal"),c=(0,n.up)("DropdownItem"),d=(0,n.up)("Dropdown");return(0,n.wg)(),(0,n.iD)(n.HY,null,[a.loading?((0,n.wg)(),(0,n.j4)(r,{key:0})):(0,n.kq)("",!0),(0,n.Wm)(l,{ref:"addUserModal",title:"Add User"},{default:(0,n.w5)((()=>[(0,n._)("form",{action:"#",method:"POST",ref:"addUserForm",onSubmit:t[0]||(t[0]=(...e)=>o.createUser&&o.createUser(...e))},[(0,n._)("label",null,[(0,n._)("input",{type:"text",name:"username",placeholder:"Username",disabled:a.commandRunning},null,8,se)]),(0,n._)("label",null,[(0,n._)("input",{type:"password",name:"password",placeholder:"Password",disabled:a.commandRunning},null,8,ne)]),(0,n._)("label",null,[(0,n._)("input",{type:"password",name:"confirm_password",placeholder:"Confirm password",disabled:a.commandRunning},null,8,ie)]),(0,n._)("label",null,[(0,n._)("input",{type:"submit",class:"btn btn-primary",value:"Create User",disabled:a.commandRunning},null,8,ae)])],544)])),_:1},512),(0,n.Wm)(l,{ref:"changePasswordModal",title:"Change Password"},{default:(0,n.w5)((()=>[(0,n._)("form",{action:"#",method:"POST",ref:"changePasswordForm",onSubmit:t[1]||(t[1]=(...e)=>o.changePassword&&o.changePassword(...e))},[(0,n._)("label",null,[(0,n._)("input",{type:"text",name:"username",placeholder:"Username",value:a.selectedUser,disabled:"disabled"},null,8,oe)]),(0,n._)("label",null,[(0,n._)("input",{type:"password",name:"password",placeholder:"Current password",disabled:a.commandRunning},null,8,re)]),(0,n._)("label",null,[(0,n._)("input",{type:"password",name:"new_password",placeholder:"New password",disabled:a.commandRunning},null,8,le)]),(0,n._)("label",null,[(0,n._)("input",{type:"password",name:"confirm_new_password",placeholder:"Confirm new password",disabled:a.commandRunning},null,8,ce)]),(0,n._)("label",null,[(0,n._)("input",{type:"submit",class:"btn btn-primary",value:"Change Password",disabled:a.commandRunning},null,8,de)])],544)])),_:1},512),(0,n._)("div",ue,[(0,n._)("ul",he,[((0,n.wg)(!0),(0,n.iD)(n.HY,null,(0,n.Ko)(a.users,(t=>((0,n.wg)(),(0,n.iD)("li",{key:t.user_id,class:"item user",onClick:e=>a.selectedUser=t.username},[(0,n._)("div",{class:"name col-8",textContent:(0,h.zw)(t.username)},null,8,fe),(0,n._)("div",me,[(0,n.Wm)(d,{title:"User Actions","icon-class":"fa fa-cog"},{default:(0,n.w5)((()=>[(0,n.Wm)(c,{text:"Change Password",disabled:a.commandRunning,"icon-class":"fa fa-key",onClick:s=>{a.selectedUser=t.username,e.$refs.changePasswordModal.show()}},null,8,["disabled","onClick"]),(0,n.Wm)(c,{text:"Delete User",disabled:a.commandRunning,"icon-class":"fa fa-trash",onClick:e=>o.deleteUser(t)},null,8,["disabled","onClick"])])),_:2},1024)])],8,pe)))),128))])])],64)}var be={name:"Users",components:{DropdownItem:u.Z,Loading:Y.Z,Modal:J.Z,Dropdown:d.Z},mixins:[G.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 s=!1;try{s=await this.request("user.update_password",{username:t.username,old_password:t.password,new_password:t.new_password})}finally{this.commandRunning=!1}s?(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){if(confirm("Are you sure that you want to remove the user "+e.username+"?")){this.commandRunning=!0;try{await this.request("user.delete_user",{username:e.username,session_token:this.sessionToken})}finally{this.commandRunning=!1}this.notify({text:"User "+e.username+" removed",image:{iconClass:"fas fa-check"}}),await this.refresh()}}},mounted(){this.refresh()}};const ve=(0,Q.Z)(be,[["render",ge]]);var ye=ve,we={name:"Settings",components:{Dropdown:d.Z,DropdownItem:u.Z,Users:ye,Token:te},mixins:[G.Z],data(){return{selectedView:"users",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 ke=(0,Q.Z)(we,[["render",c]]);var _e=ke},3379:function(e,t,s){var n={"./Camera/Index":[5528,2989,5528],"./CameraAndroidIpcam/Index":[6739,6739],"./CameraCv/Index":[8184,2989,8184],"./CameraFfmpeg/Index":[5111,2989,5111],"./CameraGstreamer/Index":[699,2989,699],"./CameraIrMlx90640/Index":[9895,2989,9895],"./CameraPi/Index":[4548,2989,4548],"./Entities/Index":[8725,201],"./Execute/Index":[3956,3956],"./Light/Index":[5199,7782,3490,5199],"./LightHue/Index":[3724,7782,3490,5199,3724],"./Media/Index":[4196,7782,9978,8589,4196],"./MediaMplayer/Index":[6509,7782,9978,8589,4196,6509],"./MediaMpv/Index":[5895,7782,9978,8589,4196,5895],"./MediaOmxplayer/Index":[9633,7782,9978,8589,4196,9633],"./MediaVlc/Index":[767,7782,9978,8589,4196,767],"./Music/Index":[6833,7782,9978,6833],"./MusicMpd/Index":[3249,7782,9978,6833,3249],"./MusicSnapcast/Index":[2790,7782,3490,2790],"./MusicSpotify/Index":[9369,7782,9978,6833,9369],"./Rtorrent/Index":[2820,8589,6899,2820],"./Settings/Index":[2715],"./Sound/Index":[5193,5193],"./Torrent/Index":[9299,8589,6899,9299],"./Tts/Index":[2466,4021,2466],"./TtsGoogle/Index":[1938,4021,1938],"./TvSamsungWs/Index":[615,615],"./ZigbeeMqtt/Index":[4848,7782,3490,4848],"./Zwave/Index":[6027,7782,3490,906,6027],"./ZwaveMqtt/Index":[2362,7782,3490,906,2362]};function i(e){if(!s.o(n,e))return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}));var t=n[e],i=t[0];return Promise.all(t.slice(1).map(s.e)).then((function(){return s(i)}))}i.keys=function(){return Object.keys(n)},i.id=3379,e.exports=i},6725:function(e,t,s){var n={"./Calendar/Index":[345,345],"./Camera/Index":[2346,2346],"./Component/Index":[5824,7782,3490,5824],"./DateTime/Index":[1595,9575,1595],"./DateTimeWeather/Index":[346,1798,9575,346],"./ImageCarousel/Index":[6003,1798,9575,6003],"./Music/Index":[6013,6013],"./Plugin/Index":[1818,1818],"./RssNews/Index":[7420,7420],"./Weather/Index":[1798,1798]};function i(e){if(!s.o(n,e))return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}));var t=n[e],i=t[0];return Promise.all(t.slice(1).map(s.e)).then((function(){return s(i)}))}i.keys=function(){return Object.keys(n)},i.id=6725,e.exports=i},1359:function(e){"use strict";e.exports=JSON.parse('{"arduino":{"class":"fas fa-microchip"},"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"},"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 s(n){var i=t[n];if(void 0!==i)return i.exports;var a=t[n]={exports:{}};return e[n](a,a.exports,s),a.exports}s.m=e,function(){var e=[];s.O=function(t,n,i,a){if(!n){var o=1/0;for(d=0;d=a)&&Object.keys(s.O).every((function(e){return s.O[e](n[l])}))?n.splice(l--,1):(r=!1,a 0&&e[d-1][2]>a;d--)e[d]=e[d-1];e[d]=[n,i,a]}}(),function(){s.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return s.d(t,{a:t}),t}}(),function(){var e,t=Object.getPrototypeOf?function(e){return Object.getPrototypeOf(e)}:function(e){return e.__proto__};s.t=function(n,i){if(1&i&&(n=this(n)),8&i)return n;if("object"===typeof n&&n){if(4&i&&n.__esModule)return n;if(16&i&&"function"===typeof n.then)return n}var a=Object.create(null);s.r(a);var o={};e=e||[null,t({}),t([]),t(t)];for(var r=2&i&&n;"object"==typeof r&&!~e.indexOf(r);r=t(r))Object.getOwnPropertyNames(r).forEach((function(e){o[e]=function(){return n[e]}}));return o["default"]=function(){return n},s.d(a,o),a}}(),function(){s.d=function(e,t){for(var n in t)s.o(t,n)&&!s.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})}}(),function(){s.f={},s.e=function(e){return Promise.all(Object.keys(s.f).reduce((function(t,n){return s.f[n](e,t),t}),[]))}}(),function(){s.u=function(e){return"static/js/"+e+"."+{65:"a4e6662a",201:"60aa8be6",345:"8d14f37b",346:"647c3d99",615:"25a0ebcb",675:"496d097f",699:"b7975861",767:"32c26b46",906:"12e72134",1196:"f4c25ec1",1300:"526f4cf3",1595:"cf573de8",1767:"25bd60ff",1798:"2ea76630",1818:"d8f79120",1938:"1dc95872",2346:"9a487752",2362:"620095dd",2466:"633bb83f",2790:"4b108fb8",2806:"e32037e8",2820:"07ee3664",2989:"fa06c8b8",3194:"256c2da8",3249:"a2010c2d",3303:"028580a6",3490:"d482e29b",3724:"a557791e",3956:"7c792927",4021:"a3380d38",4196:"f85ff63e",4548:"c7642733",4848:"ca77e67b",4981:"c4835180",5111:"f606018d",5157:"f2273a80",5193:"1de6bb98",5199:"03545ba6",5207:"b6625280",5498:"ddfaadb5",5528:"10b051ba",5824:"d14935bb",5895:"bc039cca",5924:"a2919fe4",6003:"c76e25e0",6013:"5c85c65a",6027:"e3b113ee",6164:"2c2c3fba",6358:"46615b4c",6509:"9ca36429",6739:"14f222c1",6815:"a11912ee",6833:"65afb884",6899:"8c784f84",7141:"e4e94ba3",7420:"e53d9d48",7503:"2c161f6d",7782:"724314a6",8135:"bb2ac7e3",8184:"c4135de2",8444:"d0d1fdb2",8589:"21ae83d2",9276:"74343d50",9299:"710819a1",9369:"f7907b71",9387:"194bcb15",9418:"dfb3427c",9450:"0b6d3902",9575:"fb8eab70",9633:"23b95cb0",9895:"16e6387b",9978:"f8ee0318"}[e]+".js"}}(),function(){s.miniCssF=function(e){return"static/css/"+e+"."+{65:"45022021",201:"11f5843f",345:"19cf9d0d",346:"1706fbde",615:"8b95243c",675:"4cafd794",906:"cb3bce26",1196:"7b6fd66b",1300:"96309a62",1767:"3f0d1aca",1798:"d0061372",1818:"8baa291c",2346:"d171e8f5",2790:"19201b3b",2806:"4f590a38",2989:"0f93a679",3194:"3df38d58",3303:"8fdecbd9",3490:"a327ba57",3724:"0fc70dd7",3956:"e39dd77e",4021:"fff19b0b",4196:"ea56d2c9",4848:"c9eab7f4",4981:"94bc04e2",5193:"37da0a16",5199:"fe9cee1a",5207:"2b89418c",5498:"9a543237",5824:"c1f06cf8",5924:"99a5e5ce",6003:"986b3ae1",6013:"d0054b15",6164:"72aca991",6358:"ebcb5dfd",6739:"11bad71d",6815:"5eeaa8c8",6833:"b5d8115c",6899:"748a42fd",7141:"8ae8ce03",7420:"f8b46177",7503:"42ed5848",7782:"a9f0ac90",8135:"59c68eb5",8444:"f8d1e9c7",8589:"e7924cac",9276:"d21e868a",9387:"317149bb",9418:"55ebc1ed",9450:"ef02fb64",9575:"21327597",9978:"b34577f7"}[e]+".css"}}(),function(){s.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"===typeof window)return window}}()}(),function(){s.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}}(),function(){var e={},t="platypush:";s.l=function(n,i,a,o){if(e[n])e[n].push(i);else{var r,l;if(void 0!==a)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 \n\n \n\n\n\n\n\n","import { render } from \"./Notification.vue?vue&type=template&id=7646705e&scoped=true\"\nimport script from \"./Notification.vue?vue&type=script&lang=js\"\nexport * from \"./Notification.vue?vue&type=script&lang=js\"\n\nimport \"./Notification.vue?vue&type=style&index=0&id=7646705e&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-7646705e\"]])\n\nexport default __exports__","import { render } from \"./Notifications.vue?vue&type=template&id=6dc8bebc&scoped=true\"\nimport script from \"./Notifications.vue?vue&type=script&lang=js\"\nexport * from \"./Notifications.vue?vue&type=script&lang=js\"\n\nimport \"./Notifications.vue?vue&type=style&index=0&id=6dc8bebc&scoped=true&lang=css\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-6dc8bebc\"]])\n\nexport default __exports__","\n \n\n\n\n","import { render } from \"./Events.vue?vue&type=template&id=6a0e6afd\"\nimport script from \"./Events.vue?vue&type=script&lang=js\"\nexport * from \"./Events.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/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","import { render } from \"./VoiceAssistant.vue?vue&type=template&id=3f009270\"\nimport script from \"./VoiceAssistant.vue?vue&type=script&lang=js\"\nexport * from \"./VoiceAssistant.vue?vue&type=script&lang=js\"\n\nimport \"./VoiceAssistant.vue?vue&type=style&index=0&id=3f009270&lang=scss\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n \n\n\n\n","import { render } from \"./Ntfy.vue?vue&type=template&id=1c4a4708\"\nimport script from \"./Ntfy.vue?vue&type=script&lang=js\"\nexport * from \"./Ntfy.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n \n\n\n\n","import { render } from \"./Pushbullet.vue?vue&type=template&id=bf9869d4\"\nimport script from \"./Pushbullet.vue?vue&type=script&lang=js\"\nexport * from \"./Pushbullet.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./App.vue?vue&type=template&id=b2717a78\"\nimport script from \"./App.vue?vue&type=script&lang=js\"\nexport * from \"./App.vue?vue&type=script&lang=js\"\n\nimport \"./App.vue?vue&type=style&index=0&id=b2717a78&lang=scss\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/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 Assistant listening\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 \"./Row.vue?vue&type=template&id=1b4663f2&scoped=true\"\nimport script from \"./Row.vue?vue&type=script&lang=js\"\nexport * from \"./Row.vue?vue&type=script&lang=js\"\n\nimport \"./Row.vue?vue&type=style&index=0&id=1b4663f2&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-1b4663f2\"]])\n\nexport default __exports__","\n\n \n\n\n\n\n\n\n","import { render } from \"./Widget.vue?vue&type=template&id=5df52982&scoped=true\"\nimport script from \"./Widget.vue?vue&type=script&lang=js\"\nexport * from \"./Widget.vue?vue&type=script&lang=js\"\n\nimport \"./Widget.vue?vue&type=style&index=0&id=5df52982&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-5df52982\"]])\n\nexport default __exports__","import { render } from \"./Dashboard.vue?vue&type=template&id=54e0248a&scoped=true\"\nimport script from \"./Dashboard.vue?vue&type=script&lang=js\"\nexport * from \"./Dashboard.vue?vue&type=script&lang=js\"\n\nimport \"./Dashboard.vue?vue&type=style&index=0&id=54e0248a&lang=scss&scoped=true\"\nimport \"./Dashboard.vue?vue&type=style&index=1&id=54e0248a&lang=css\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-54e0248a\"]])\n\nexport default __exports__","\n\n Object not found
\n\n\n\n\n","import { render } from \"./NotFound.vue?vue&type=template&id=49501f4d\"\nimport script from \"./NotFound.vue?vue&type=script&lang=js\"\nexport * from \"./NotFound.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/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","import { render } from \"./Login.vue?vue&type=template&id=af0b14d0&scoped=true\"\nimport script from \"./Login.vue?vue&type=script&lang=js\"\nexport * from \"./Login.vue?vue&type=script&lang=js\"\n\nimport \"./Login.vue?vue&type=style&index=0&id=af0b14d0&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-af0b14d0\"]])\n\nexport default __exports__","\n\n\n\n\n","import { render } from \"./Register.vue?vue&type=template&id=1244b238\"\nimport script from \"./Register.vue?vue&type=script&lang=js\"\nexport * from \"./Register.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/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","import { render } from \"./Nav.vue?vue&type=template&id=d9ea25f0&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=d9ea25f0&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-d9ea25f0\"]])\n\nexport default __exports__","import { render } from \"./Panel.vue?vue&type=template&id=fbc09254&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=fbc09254&lang=scss&scoped=true\"\nimport \"./Panel.vue?vue&type=style&index=1&id=fbc09254&lang=css\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-fbc09254\"]])\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","import { render } from \"./Plugin.vue?vue&type=template&id=e339182c&scoped=true\"\nimport script from \"./Plugin.vue?vue&type=script&lang=js\"\nexport * from \"./Plugin.vue?vue&type=script&lang=js\"\n\nimport \"./Plugin.vue?vue&type=style&index=0&id=e339182c&lang=scss&scoped=true\"\nimport \"./Plugin.vue?vue&type=style&index=1&id=e339182c&lang=css\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-e339182c\"]])\n\nexport default __exports__","import { createWebHistory, createRouter } from \"vue-router\";\nimport Dashboard from \"@/views/Dashboard.vue\";\nimport NotFound from \"@/views/NotFound\";\nimport Login from \"@/views/Login\";\nimport Register from \"@/views/Register\";\nimport Panel from \"@/views/Panel\";\nimport Plugin from \"@/views/Plugin\";\n\nconst routes = [\n {\n path: \"/\",\n name: \"Panel\",\n component: Panel,\n },\n\n {\n path: \"/dashboard/:name\",\n name: \"Dashboard\",\n component: Dashboard,\n },\n\n {\n path: \"/plugin/:plugin\",\n name: \"Plugin\",\n component: Plugin,\n },\n\n {\n path: \"/login\",\n name: \"Login\",\n component: Login,\n },\n\n {\n path: \"/register\",\n name: \"Register\",\n component: Register,\n },\n\n {\n path: \"/:catchAll(.*)\",\n component: NotFound,\n },\n];\n\nconst router = createRouter({\n history: createWebHistory(),\n routes,\n});\n\nexport default router;\n","/* eslint-disable no-console */\n\nimport { register } from 'register-service-worker'\n\nif (process.env.NODE_ENV === 'production') {\n register(`${process.env.BASE_URL}service-worker.js`, {\n ready () {\n console.log(\n 'App is being served from cache by a service worker.\\n' +\n 'For more details, visit https://goo.gl/AFskqB'\n )\n },\n registered () {\n console.log('Service worker has been registered.')\n },\n cached () {\n console.log('Content has been cached for offline use.')\n },\n updatefound () {\n console.log('New content is downloading.')\n },\n updated () {\n console.log('New content is available; please refresh.')\n },\n offline () {\n console.log('No internet connection found. App is running in offline mode.')\n },\n error (error) {\n console.error('Error during service worker registration:', error)\n }\n })\n}\n","import { createApp } from 'vue'\nimport App from '@/App.vue'\nimport router from '@/router'\nimport './registerServiceWorker'\n\nconst app = createApp(App)\napp.config.globalProperties._config = window.config\napp.use(router).mount('#app')\n","\n\n","import script from \"./Api.vue?vue&type=script&lang=js\"\nexport * from \"./Api.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n","import script from \"./Cookies.vue?vue&type=script&lang=js\"\nexport * from \"./Cookies.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n","import script from \"./DateTime.vue?vue&type=script&lang=js\"\nexport * from \"./DateTime.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n","import script from \"./Events.vue?vue&type=script&lang=js\"\nexport * from \"./Events.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n","import script from \"./Notification.vue?vue&type=script&lang=js\"\nexport * from \"./Notification.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n","import script from \"./Screen.vue?vue&type=script&lang=js\"\nexport * from \"./Screen.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n","import script from \"./Text.vue?vue&type=script&lang=js\"\nexport * from \"./Text.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n","import script from \"./Types.vue?vue&type=script&lang=js\"\nexport * from \"./Types.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\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","import { render } from \"./Loading.vue?vue&type=template&id=4d9c871b&scoped=true\"\nconst script = {}\n\nimport \"./Loading.vue?vue&type=style&index=0&id=4d9c871b&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-4d9c871b\"]])\n\nexport default __exports__","\n\n \n\n\n\n\n\n\n\n\n","import { render } from \"./Modal.vue?vue&type=template&id=18f9fdba&scoped=true\"\nimport script from \"./Modal.vue?vue&type=script&lang=js\"\nexport * from \"./Modal.vue?vue&type=script&lang=js\"\n\nimport \"./Modal.vue?vue&type=style&index=0&id=18f9fdba&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-18f9fdba\"]])\n\nexport default __exports__","\n\n\n\n\n\n \n \n\n\n\n\n \n \n\n\n\n\n\n","import { render } from \"./ConfirmDialog.vue?vue&type=template&id=682db704&scoped=true\"\nimport script from \"./ConfirmDialog.vue?vue&type=script&lang=js\"\nexport * from \"./ConfirmDialog.vue?vue&type=script&lang=js\"\n\nimport \"./ConfirmDialog.vue?vue&type=style&index=0&id=682db704&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-682db704\"]])\n\nexport default __exports__","\n\n\n\n \n\n \n \n\n\n\n\n\n\n\n","import { render } from \"./Dropdown.vue?vue&type=template&id=5b964c03&scoped=true\"\nimport script from \"./Dropdown.vue?vue&type=script&lang=js\"\nexport * from \"./Dropdown.vue?vue&type=script&lang=js\"\n\nimport \"./Dropdown.vue?vue&type=style&index=0&id=5b964c03&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-5b964c03\"]])\n\nexport default __exports__","\n\n\n\n \n\n\n\n\n\n\n","import { render } from \"./DropdownItem.vue?vue&type=template&id=282d16b4&scoped=true\"\nimport script from \"./DropdownItem.vue?vue&type=script&lang=js\"\nexport * from \"./DropdownItem.vue?vue&type=script&lang=js\"\n\nimport \"./DropdownItem.vue?vue&type=style&index=0&id=282d16b4&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-282d16b4\"]])\n\nexport default __exports__","\n\n\n \n\n \n \n \n\n\n\n\n\n\n","import { render } from \"./Icon.vue?vue&type=template&id=706a3bd1&scoped=true\"\nimport script from \"./Icon.vue?vue&type=script&lang=js\"\nexport * from \"./Icon.vue?vue&type=script&lang=js\"\n\nimport \"./Icon.vue?vue&type=style&index=0&id=706a3bd1&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-706a3bd1\"]])\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","import { render } from \"./Token.vue?vue&type=template&id=2a4d58dc\"\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=2a4d58dc&lang=scss\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/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\nGenerate a JWT authentication token that can be used for API calls to the /execute endpoint.
\nYou can include the token in your requests in any of the following ways:
\n\n\n
\n\n Confirm your credentials in order to generate a new token.\n- Specify it on the Authorization: Bearer header;
\n- Specify it on the X-Token header;
\n- Specify it as a URL parameter: http://site:8008/execute?token=...;
\n- Specify it on the body of your JSON request: {\"type\":\"request\", \"action\", \"...\", \"token\":\"...\"}.
\n\n \n\n\n\n \n \n \n\n\n \n \n\n\n\n\n\n\n\n\n","import { render } from \"./Users.vue?vue&type=template&id=8de4f27c\"\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=8de4f27c&lang=scss\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./Index.vue?vue&type=template&id=37be3587\"\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=37be3587&lang=scss\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/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\t5528,\n\t\t2989,\n\t\t5528\n\t],\n\t\"./CameraAndroidIpcam/Index\": [\n\t\t6739,\n\t\t6739\n\t],\n\t\"./CameraCv/Index\": [\n\t\t8184,\n\t\t2989,\n\t\t8184\n\t],\n\t\"./CameraFfmpeg/Index\": [\n\t\t5111,\n\t\t2989,\n\t\t5111\n\t],\n\t\"./CameraGstreamer/Index\": [\n\t\t699,\n\t\t2989,\n\t\t699\n\t],\n\t\"./CameraIrMlx90640/Index\": [\n\t\t9895,\n\t\t2989,\n\t\t9895\n\t],\n\t\"./CameraPi/Index\": [\n\t\t4548,\n\t\t2989,\n\t\t4548\n\t],\n\t\"./Entities/Index\": [\n\t\t8725,\n\t\t201\n\t],\n\t\"./Execute/Index\": [\n\t\t9539,\n\t\t9539\n\t],\n\t\"./Light/Index\": [\n\t\t5199,\n\t\t7782,\n\t\t3490,\n\t\t5199\n\t],\n\t\"./LightHue/Index\": [\n\t\t3724,\n\t\t7782,\n\t\t3490,\n\t\t5199,\n\t\t3724\n\t],\n\t\"./Media/Index\": [\n\t\t4196,\n\t\t7782,\n\t\t9978,\n\t\t8589,\n\t\t4196\n\t],\n\t\"./MediaMplayer/Index\": [\n\t\t6509,\n\t\t7782,\n\t\t9978,\n\t\t8589,\n\t\t4196,\n\t\t6509\n\t],\n\t\"./MediaMpv/Index\": [\n\t\t5895,\n\t\t7782,\n\t\t9978,\n\t\t8589,\n\t\t4196,\n\t\t5895\n\t],\n\t\"./MediaOmxplayer/Index\": [\n\t\t9633,\n\t\t7782,\n\t\t9978,\n\t\t8589,\n\t\t4196,\n\t\t9633\n\t],\n\t\"./MediaVlc/Index\": [\n\t\t767,\n\t\t7782,\n\t\t9978,\n\t\t8589,\n\t\t4196,\n\t\t767\n\t],\n\t\"./Music/Index\": [\n\t\t6833,\n\t\t7782,\n\t\t9978,\n\t\t6833\n\t],\n\t\"./MusicMpd/Index\": [\n\t\t3249,\n\t\t7782,\n\t\t9978,\n\t\t6833,\n\t\t3249\n\t],\n\t\"./MusicSnapcast/Index\": [\n\t\t2790,\n\t\t7782,\n\t\t3490,\n\t\t2790\n\t],\n\t\"./MusicSpotify/Index\": [\n\t\t9369,\n\t\t7782,\n\t\t9978,\n\t\t6833,\n\t\t9369\n\t],\n\t\"./Rtorrent/Index\": [\n\t\t2820,\n\t\t8589,\n\t\t6899,\n\t\t2820\n\t],\n\t\"./Settings/Index\": [\n\t\t2715\n\t],\n\t\"./Sound/Index\": [\n\t\t5193,\n\t\t5193\n\t],\n\t\"./Torrent/Index\": [\n\t\t9299,\n\t\t8589,\n\t\t6899,\n\t\t9299\n\t],\n\t\"./Tts/Index\": [\n\t\t2466,\n\t\t4021,\n\t\t2466\n\t],\n\t\"./TtsGoogle/Index\": [\n\t\t1938,\n\t\t4021,\n\t\t1938\n\t],\n\t\"./TvSamsungWs/Index\": [\n\t\t615,\n\t\t615\n\t],\n\t\"./ZigbeeMqtt/Index\": [\n\t\t4848,\n\t\t7782,\n\t\t3490,\n\t\t4848\n\t],\n\t\"./Zwave/Index\": [\n\t\t6027,\n\t\t7782,\n\t\t3490,\n\t\t906,\n\t\t6027\n\t],\n\t\"./ZwaveMqtt/Index\": [\n\t\t2362,\n\t\t7782,\n\t\t3490,\n\t\t906,\n\t\t2362\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\t345,\n\t\t345\n\t],\n\t\"./Camera/Index\": [\n\t\t2346,\n\t\t2346\n\t],\n\t\"./Component/Index\": [\n\t\t5824,\n\t\t7782,\n\t\t3490,\n\t\t5824\n\t],\n\t\"./DateTime/Index\": [\n\t\t1595,\n\t\t9575,\n\t\t1595\n\t],\n\t\"./DateTimeWeather/Index\": [\n\t\t346,\n\t\t1798,\n\t\t9575,\n\t\t346\n\t],\n\t\"./ImageCarousel/Index\": [\n\t\t6003,\n\t\t1798,\n\t\t9575,\n\t\t6003\n\t],\n\t\"./Music/Index\": [\n\t\t6013,\n\t\t6013\n\t],\n\t\"./Plugin/Index\": [\n\t\t1818,\n\t\t1818\n\t],\n\t\"./RssNews/Index\": [\n\t\t7420,\n\t\t7420\n\t],\n\t\"./Weather/Index\": [\n\t\t1798,\n\t\t1798\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](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\":\"a4e6662a\",\"201\":\"60aa8be6\",\"345\":\"8d14f37b\",\"346\":\"647c3d99\",\"615\":\"25a0ebcb\",\"675\":\"496d097f\",\"699\":\"b7975861\",\"767\":\"32c26b46\",\"906\":\"12e72134\",\"1196\":\"f4c25ec1\",\"1300\":\"526f4cf3\",\"1595\":\"cf573de8\",\"1767\":\"25bd60ff\",\"1798\":\"2ea76630\",\"1818\":\"d8f79120\",\"1938\":\"1dc95872\",\"2346\":\"9a487752\",\"2362\":\"620095dd\",\"2466\":\"633bb83f\",\"2790\":\"4b108fb8\",\"2806\":\"e32037e8\",\"2820\":\"07ee3664\",\"2989\":\"fa06c8b8\",\"3194\":\"256c2da8\",\"3249\":\"a2010c2d\",\"3303\":\"028580a6\",\"3490\":\"d482e29b\",\"3724\":\"a557791e\",\"4021\":\"a3380d38\",\"4196\":\"f85ff63e\",\"4548\":\"c7642733\",\"4848\":\"ca77e67b\",\"4981\":\"c4835180\",\"5111\":\"f606018d\",\"5157\":\"f2273a80\",\"5193\":\"1de6bb98\",\"5199\":\"03545ba6\",\"5207\":\"b6625280\",\"5498\":\"ddfaadb5\",\"5528\":\"10b051ba\",\"5824\":\"d14935bb\",\"5895\":\"bc039cca\",\"5924\":\"a2919fe4\",\"6003\":\"c76e25e0\",\"6013\":\"5c85c65a\",\"6027\":\"e3b113ee\",\"6164\":\"2c2c3fba\",\"6358\":\"46615b4c\",\"6509\":\"9ca36429\",\"6739\":\"14f222c1\",\"6815\":\"a11912ee\",\"6833\":\"65afb884\",\"6899\":\"8c784f84\",\"7141\":\"e4e94ba3\",\"7420\":\"e53d9d48\",\"7503\":\"2c161f6d\",\"7782\":\"724314a6\",\"8135\":\"bb2ac7e3\",\"8184\":\"c4135de2\",\"8444\":\"d0d1fdb2\",\"8589\":\"21ae83d2\",\"9276\":\"74343d50\",\"9299\":\"710819a1\",\"9369\":\"f7907b71\",\"9387\":\"194bcb15\",\"9418\":\"dfb3427c\",\"9450\":\"0b6d3902\",\"9539\":\"7a062356\",\"9575\":\"fb8eab70\",\"9633\":\"23b95cb0\",\"9895\":\"16e6387b\",\"9978\":\"f8ee0318\"}[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\":\"45022021\",\"201\":\"11f5843f\",\"345\":\"19cf9d0d\",\"346\":\"1706fbde\",\"615\":\"8b95243c\",\"675\":\"4cafd794\",\"906\":\"cb3bce26\",\"1196\":\"7b6fd66b\",\"1300\":\"96309a62\",\"1767\":\"3f0d1aca\",\"1798\":\"d0061372\",\"1818\":\"8baa291c\",\"2346\":\"d171e8f5\",\"2790\":\"19201b3b\",\"2806\":\"4f590a38\",\"2989\":\"0f93a679\",\"3194\":\"3df38d58\",\"3303\":\"8fdecbd9\",\"3490\":\"a327ba57\",\"3724\":\"0fc70dd7\",\"4021\":\"fff19b0b\",\"4196\":\"ea56d2c9\",\"4848\":\"c9eab7f4\",\"4981\":\"94bc04e2\",\"5193\":\"37da0a16\",\"5199\":\"fe9cee1a\",\"5207\":\"2b89418c\",\"5498\":\"9a543237\",\"5824\":\"c1f06cf8\",\"5924\":\"99a5e5ce\",\"6003\":\"986b3ae1\",\"6013\":\"d0054b15\",\"6164\":\"72aca991\",\"6358\":\"ebcb5dfd\",\"6739\":\"11bad71d\",\"6815\":\"5eeaa8c8\",\"6833\":\"b5d8115c\",\"6899\":\"748a42fd\",\"7141\":\"8ae8ce03\",\"7420\":\"f8b46177\",\"7503\":\"42ed5848\",\"7782\":\"a9f0ac90\",\"8135\":\"59c68eb5\",\"8444\":\"f8d1e9c7\",\"8589\":\"e7924cac\",\"9276\":\"d21e868a\",\"9387\":\"317149bb\",\"9418\":\"55ebc1ed\",\"9450\":\"ef02fb64\",\"9539\":\"17613a3b\",\"9575\":\"21327597\",\"9978\":\"b34577f7\"}[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\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\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 = \"/\";","var createStylesheet = function(chunkId, fullhref, 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\tlinkTag.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\tdocument.head.appendChild(linkTag);\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, 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,\"201\":1,\"345\":1,\"346\":1,\"615\":1,\"675\":1,\"906\":1,\"1196\":1,\"1300\":1,\"1767\":1,\"1798\":1,\"1818\":1,\"2346\":1,\"2790\":1,\"2806\":1,\"2989\":1,\"3194\":1,\"3303\":1,\"3490\":1,\"3724\":1,\"4021\":1,\"4196\":1,\"4848\":1,\"4981\":1,\"5193\":1,\"5199\":1,\"5207\":1,\"5498\":1,\"5824\":1,\"5924\":1,\"6003\":1,\"6013\":1,\"6164\":1,\"6358\":1,\"6739\":1,\"6815\":1,\"6833\":1,\"6899\":1,\"7141\":1,\"7420\":1,\"7503\":1,\"7782\":1,\"8135\":1,\"8444\":1,\"8589\":1,\"9276\":1,\"9387\":1,\"9418\":1,\"9450\":1,\"9539\":1,\"9575\":1,\"9978\":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(!/^((29|85)89|1300|3490|4021|4981|7782|9575)$/.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__(5360); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["bus","mitt","publishEntity","entity","emit","onEntity","callback","on","publishNotification","notification","onNotification","hasWebsocket","ref","hasAssistant","hasPushbullet","hasNtfy","installPWA","class","notifications","id","index","key","text","html","title","link","image","warning","error","destroy","clicked","src","alt","icon","style","color","iconClass","name","props","methods","this","window","open","$emit","__exports__","components","Notification","duration","type","Number","default","data","timeouts","create","args","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","state","alerting","responding","speechRecognized","listening","Modal","mixins","Utils","responseText","phrase","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","pwaInstallEvent","computed","async","request","prompt","pwaDialog","initConfig","beforeMount","addEventListener","preventDefault","render","loading","classes","rows","row","i","widgets","widget","j","component","getWidgetProps","String","required","split","concat","Widget","Loading","Row","refreshSeconds","parseTemplate","tmpl","node","DOMParser","parseFromString","childNodes","attributes","nodeValue","getElementsByTagName","map","children","el","nodeName","attrs","reduce","obj","content","innerHTML","$options","$route","params","template","notifyError","refreshDashboard","setInterval","toFixed","method","placeholder","_register","value","register","Boolean","parseBoolean","Login","panels","selectedPanel","hostname","$event","panel","href","collapsed","panelNames","onItemClick","icons","imgUrl","emits","homeIdx","indexOf","slice","sort","collapsedDefault","isMobile","isTablet","Settings","Nav","plugins","backends","procedures","initSelectedPanel","match","hash","plugin","initPanels","entries","forEach","componentName","token","toUpperCase","join","comp","pluginName","Promise","all","initializeDefaultViews","execute","entities","parseConfig","toString","initPanel","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","then","errors","output","catch","action","getCookies","document","cookie","item","k","v","formatDate","date","year","Date","toDateString","substring","formatTime","seconds","toTimeString","formatDateTime","_eventsReady","$root","subFunc","generateId","unwatch","$watch","newVal","btoa","fromCharCode","round","random","notifyWarning","matchMedia","matches","isDesktop","capitalize","charAt","prettify","t","toLowerCase","convertSize","unit","units","u","convertTime","time","ret","parseFloat","d","h","m","s","objectsEqual","a","b","p","Api","Cookies","DateTime","Screen","Text","Types","n","script","isVisible","zIndex","$attrs","width","height","stopPropagation","visible","level","timeoutId","prevVisible","hide","toggle","onKeyUp","visibleHndl","unmounted","removeEventListener","maxZIndex","getComputedStyle","$el","outermostModals","modal","querySelectorAll","onConfirm","confirmText","cancelText","items","keepOpenOnItemClick","documentClickHndl","element","target","dropdown","parentElement","left","top","button","getBoundingClientRect","innerWidth","clientWidth","innerHeight","clientHeight","itemClass","iconUrl","Icon","disabled","$parent","className","selectedView","usersView","addUserModal","sessionToken","currentUser","onTokenSelect","generateToken","username","password","validityDays","expiry_days","tokenModal","select","execCommand","createUser","commandRunning","changePassword","selectedUser","users","user","user_id","changePasswordModal","deleteUser","DropdownItem","Dropdown","form","addUserForm","input","confirm_password","session_token","refresh","changePasswordForm","new_password","confirm_new_password","success","old_password","confirm","Users","Token","webpackAsyncContext","req","__webpack_require__","o","Error","ids","module","exports","__webpack_module_cache__","moduleId","cachedModule","__webpack_modules__","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","call","inProgress","dataWebpackPrefix","l","done","needAttach","scripts","getAttribute","createElement","charset","nc","setAttribute","onScriptComplete","prev","onload","doneFns","parentNode","removeChild","head","appendChild","Symbol","toStringTag","createStylesheet","fullhref","linkTag","rel","onLinkComplete","errorType","realHref","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 +{"version":3,"file":"static/js/app.a6e85f1f.js","mappings":"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KACA,KACA,MAED,mBAAoB,CACnB,KACA,KAED,kBAAmB,CAClB,KACA,MAED,gBAAiB,CAChB,KACA,KACA,KACA,MAED,mBAAoB,CACnB,KACA,KACA,KACA,KACA,MAED,gBAAiB,CAChB,KACA,KACA,KACA,KACA,MAED,uBAAwB,CACvB,KACA,KACA,KACA,KACA,KACA,MAED,mBAAoB,CACnB,KACA,KACA,KACA,KACA,KACA,MAED,yBAA0B,CACzB,KACA,KACA,KACA,KACA,KACA,MAED,mBAAoB,CACnB,IACA,KACA,KACA,KACA,KACA,KAED,gBAAiB,CAChB,KACA,KACA,KACA,MAED,mBAAoB,CACnB,KACA,KACA,KACA,KACA,MAED,wBAAyB,CACxB,KACA,KACA,KACA,MAED,uBAAwB,CACvB,KACA,KACA,KACA,KACA,MAED,mBAAoB,CACnB,KACA,KACA,KACA,MAED,mBAAoB,CACnB,MAED,gBAAiB,CAChB,KACA,MAED,kBAAmB,CAClB,KACA,KACA,KACA,MAED,cAAe,CACd,KACA,KACA,MAED,oBAAqB,CACpB,KACA,KACA,MAED,sBAAuB,CACtB,IACA,KAED,qBAAsB,CACrB,KACA,KACA,KACA,MAED,gBAAiB,CAChB,KACA,KACA,KACA,IACA,MAED,oBAAqB,CACpB,KACA,KACA,KACA,IACA,OAGF,SAASwP,EAAoBC,GAC5B,IAAIC,EAAoBC,EAAE3P,EAAKyP,GAC9B,OAAO3L,QAAQkC,UAAUE,MAAK,WAC7B,IAAI9M,EAAI,IAAIwW,MAAM,uBAAyBH,EAAM,KAEjD,MADArW,EAAEc,KAAO,mBACHd,CACP,IAGD,IAAIyW,EAAM7P,EAAIyP,GAAMja,EAAKqa,EAAI,GAC7B,OAAO/L,QAAQC,IAAI8L,EAAItN,MAAM,GAAGvC,IAAI0P,EAAoBtW,IAAI8M,MAAK,WAChE,OAAOwJ,EAAoBla,EAC5B,GACD,CACAga,EAAoBpU,KAAO,WAAa,OAAO5B,OAAO4B,KAAK4E,EAAM,EACjEwP,EAAoBha,GAAK,KACzBsa,EAAOC,QAAUP,C,uBC/LjB,IAAIxP,EAAM,CACT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","sources":["webpack://platypush/./src/bus.js","webpack://platypush/./src/App.vue","webpack://platypush/./src/components/Notifications.vue","webpack://platypush/./src/components/Notification.vue","webpack://platypush/./src/components/Notification.vue?deb2","webpack://platypush/./src/components/Notifications.vue?e79f","webpack://platypush/./src/Events.vue","webpack://platypush/./src/Events.vue?0562","webpack://platypush/./src/components/VoiceAssistant.vue","webpack://platypush/./src/components/VoiceAssistant.vue?e102","webpack://platypush/./src/components/Ntfy.vue","webpack://platypush/./src/components/Ntfy.vue?4660","webpack://platypush/./src/components/Pushbullet.vue","webpack://platypush/./src/components/Pushbullet.vue?a5f8","webpack://platypush/./src/App.vue?7ccd","webpack://platypush/./src/views/Dashboard.vue","webpack://platypush/./src/components/widgets/Row.vue","webpack://platypush/./src/components/widgets/Row.vue?bc29","webpack://platypush/./src/components/widgets/Widget.vue","webpack://platypush/./src/components/widgets/Widget.vue?043c","webpack://platypush/./src/views/Dashboard.vue?040e","webpack://platypush/./src/views/NotFound.vue","webpack://platypush/./src/views/NotFound.vue?0aab","webpack://platypush/./src/views/Login.vue","webpack://platypush/./src/views/Login.vue?240b","webpack://platypush/./src/views/Register.vue","webpack://platypush/./src/views/Register.vue?157d","webpack://platypush/./src/views/Panel.vue","webpack://platypush/./src/components/Nav.vue","webpack://platypush/./src/components/Nav.vue?1f44","webpack://platypush/./src/views/Panel.vue?792f","webpack://platypush/./src/views/Plugin.vue","webpack://platypush/./src/views/Plugin.vue?41f6","webpack://platypush/./src/router/index.js","webpack://platypush/./src/registerServiceWorker.js","webpack://platypush/./src/main.js","webpack://platypush/./src/utils/Api.vue","webpack://platypush/./src/utils/Api.vue?331a","webpack://platypush/./src/utils/Cookies.vue","webpack://platypush/./src/utils/Cookies.vue?0832","webpack://platypush/./src/utils/DateTime.vue","webpack://platypush/./src/utils/DateTime.vue?3df3","webpack://platypush/./src/utils/Events.vue","webpack://platypush/./src/utils/Events.vue?ad6c","webpack://platypush/./src/utils/Notification.vue","webpack://platypush/./src/utils/Notification.vue?b668","webpack://platypush/./src/utils/Screen.vue","webpack://platypush/./src/utils/Screen.vue?714e","webpack://platypush/./src/utils/Text.vue","webpack://platypush/./src/utils/Text.vue?61b3","webpack://platypush/./src/utils/Types.vue","webpack://platypush/./src/utils/Types.vue?2b41","webpack://platypush/./src/Utils.vue","webpack://platypush/./src/Utils.vue?83c2","webpack://platypush/./src/components/Loading.vue","webpack://platypush/./src/components/Loading.vue?1ccf","webpack://platypush/./src/components/Modal.vue","webpack://platypush/./src/components/Modal.vue?db1b","webpack://platypush/./src/components/elements/ConfirmDialog.vue","webpack://platypush/./src/components/elements/ConfirmDialog.vue?f384","webpack://platypush/./src/components/elements/Dropdown.vue","webpack://platypush/./src/components/elements/Dropdown.vue?e934","webpack://platypush/./src/components/elements/DropdownItem.vue","webpack://platypush/./src/components/elements/DropdownItem.vue?d591","webpack://platypush/./src/components/elements/Icon.vue","webpack://platypush/./src/components/elements/Icon.vue?fdba","webpack://platypush/./src/components/panels/Settings/Index.vue","webpack://platypush/./src/components/panels/Settings/Token.vue","webpack://platypush/./src/components/panels/Settings/Token.vue?4a12","webpack://platypush/./src/components/panels/Settings/Users.vue","webpack://platypush/./src/components/panels/Settings/Users.vue?407b","webpack://platypush/./src/components/panels/Settings/Index.vue?0df9","webpack://platypush/./src/components/panels|lazy|/^\\.\\/.*\\/Index$/|groupOptions: {}|namespace object","webpack://platypush/./src/components/widgets|lazy|/^\\.\\/.*\\/Index$/|groupOptions: {}|namespace object","webpack://platypush/webpack/bootstrap","webpack://platypush/webpack/runtime/chunk loaded","webpack://platypush/webpack/runtime/compat get default export","webpack://platypush/webpack/runtime/create fake namespace object","webpack://platypush/webpack/runtime/define property getters","webpack://platypush/webpack/runtime/ensure chunk","webpack://platypush/webpack/runtime/get javascript chunk filename","webpack://platypush/webpack/runtime/get mini-css chunk filename","webpack://platypush/webpack/runtime/global","webpack://platypush/webpack/runtime/hasOwnProperty shorthand","webpack://platypush/webpack/runtime/load script","webpack://platypush/webpack/runtime/make namespace object","webpack://platypush/webpack/runtime/publicPath","webpack://platypush/webpack/runtime/css loading","webpack://platypush/webpack/runtime/jsonp chunk loading","webpack://platypush/webpack/startup"],"sourcesContent":["import mitt from 'mitt'\n\nconst bus = mitt()\n\nbus.publishEntity = (entity) => {\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\n\n \n\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 \n\n \n\n\n\n\n\n","import { render } from \"./Notification.vue?vue&type=template&id=7646705e&scoped=true\"\nimport script from \"./Notification.vue?vue&type=script&lang=js\"\nexport * from \"./Notification.vue?vue&type=script&lang=js\"\n\nimport \"./Notification.vue?vue&type=style&index=0&id=7646705e&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-7646705e\"]])\n\nexport default __exports__","import { render } from \"./Notifications.vue?vue&type=template&id=6dc8bebc&scoped=true\"\nimport script from \"./Notifications.vue?vue&type=script&lang=js\"\nexport * from \"./Notifications.vue?vue&type=script&lang=js\"\n\nimport \"./Notifications.vue?vue&type=style&index=0&id=6dc8bebc&scoped=true&lang=css\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-6dc8bebc\"]])\n\nexport default __exports__","\n \n\n\n\n","import { render } from \"./Events.vue?vue&type=template&id=6a0e6afd\"\nimport script from \"./Events.vue?vue&type=script&lang=js\"\nexport * from \"./Events.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/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","import { render } from \"./VoiceAssistant.vue?vue&type=template&id=3f009270\"\nimport script from \"./VoiceAssistant.vue?vue&type=script&lang=js\"\nexport * from \"./VoiceAssistant.vue?vue&type=script&lang=js\"\n\nimport \"./VoiceAssistant.vue?vue&type=style&index=0&id=3f009270&lang=scss\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n \n\n\n\n","import { render } from \"./Ntfy.vue?vue&type=template&id=1c4a4708\"\nimport script from \"./Ntfy.vue?vue&type=script&lang=js\"\nexport * from \"./Ntfy.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\n \n\n\n\n","import { render } from \"./Pushbullet.vue?vue&type=template&id=bf9869d4\"\nimport script from \"./Pushbullet.vue?vue&type=script&lang=js\"\nexport * from \"./Pushbullet.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./App.vue?vue&type=template&id=b2717a78\"\nimport script from \"./App.vue?vue&type=script&lang=js\"\nexport * from \"./App.vue?vue&type=script&lang=js\"\n\nimport \"./App.vue?vue&type=style&index=0&id=b2717a78&lang=scss\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/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 Assistant listening\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 \"./Row.vue?vue&type=template&id=1b4663f2&scoped=true\"\nimport script from \"./Row.vue?vue&type=script&lang=js\"\nexport * from \"./Row.vue?vue&type=script&lang=js\"\n\nimport \"./Row.vue?vue&type=style&index=0&id=1b4663f2&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-1b4663f2\"]])\n\nexport default __exports__","\n\n \n\n\n\n\n\n\n","import { render } from \"./Widget.vue?vue&type=template&id=5df52982&scoped=true\"\nimport script from \"./Widget.vue?vue&type=script&lang=js\"\nexport * from \"./Widget.vue?vue&type=script&lang=js\"\n\nimport \"./Widget.vue?vue&type=style&index=0&id=5df52982&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-5df52982\"]])\n\nexport default __exports__","import { render } from \"./Dashboard.vue?vue&type=template&id=54e0248a&scoped=true\"\nimport script from \"./Dashboard.vue?vue&type=script&lang=js\"\nexport * from \"./Dashboard.vue?vue&type=script&lang=js\"\n\nimport \"./Dashboard.vue?vue&type=style&index=0&id=54e0248a&lang=scss&scoped=true\"\nimport \"./Dashboard.vue?vue&type=style&index=1&id=54e0248a&lang=css\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-54e0248a\"]])\n\nexport default __exports__","\n\n Object not found
\n\n\n\n\n","import { render } from \"./NotFound.vue?vue&type=template&id=49501f4d\"\nimport script from \"./NotFound.vue?vue&type=script&lang=js\"\nexport * from \"./NotFound.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/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","import { render } from \"./Login.vue?vue&type=template&id=af0b14d0&scoped=true\"\nimport script from \"./Login.vue?vue&type=script&lang=js\"\nexport * from \"./Login.vue?vue&type=script&lang=js\"\n\nimport \"./Login.vue?vue&type=style&index=0&id=af0b14d0&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-af0b14d0\"]])\n\nexport default __exports__","\n\n\n\n\n","import { render } from \"./Register.vue?vue&type=template&id=1244b238\"\nimport script from \"./Register.vue?vue&type=script&lang=js\"\nexport * from \"./Register.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/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","import { render } from \"./Nav.vue?vue&type=template&id=d9ea25f0&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=d9ea25f0&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-d9ea25f0\"]])\n\nexport default __exports__","import { render } from \"./Panel.vue?vue&type=template&id=fbc09254&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=fbc09254&lang=scss&scoped=true\"\nimport \"./Panel.vue?vue&type=style&index=1&id=fbc09254&lang=css\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-fbc09254\"]])\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","import { render } from \"./Plugin.vue?vue&type=template&id=e339182c&scoped=true\"\nimport script from \"./Plugin.vue?vue&type=script&lang=js\"\nexport * from \"./Plugin.vue?vue&type=script&lang=js\"\n\nimport \"./Plugin.vue?vue&type=style&index=0&id=e339182c&lang=scss&scoped=true\"\nimport \"./Plugin.vue?vue&type=style&index=1&id=e339182c&lang=css\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-e339182c\"]])\n\nexport default __exports__","import { createWebHistory, createRouter } from \"vue-router\";\nimport Dashboard from \"@/views/Dashboard.vue\";\nimport NotFound from \"@/views/NotFound\";\nimport Login from \"@/views/Login\";\nimport Register from \"@/views/Register\";\nimport Panel from \"@/views/Panel\";\nimport Plugin from \"@/views/Plugin\";\n\nconst routes = [\n {\n path: \"/\",\n name: \"Panel\",\n component: Panel,\n },\n\n {\n path: \"/dashboard/:name\",\n name: \"Dashboard\",\n component: Dashboard,\n },\n\n {\n path: \"/plugin/:plugin\",\n name: \"Plugin\",\n component: Plugin,\n },\n\n {\n path: \"/login\",\n name: \"Login\",\n component: Login,\n },\n\n {\n path: \"/register\",\n name: \"Register\",\n component: Register,\n },\n\n {\n path: \"/:catchAll(.*)\",\n component: NotFound,\n },\n];\n\nconst router = createRouter({\n history: createWebHistory(),\n routes,\n});\n\nexport default router;\n","/* eslint-disable no-console */\n\nimport { register } from 'register-service-worker'\n\nif (process.env.NODE_ENV === 'production') {\n register(`${process.env.BASE_URL}service-worker.js`, {\n ready () {\n console.log(\n 'App is being served from cache by a service worker.\\n' +\n 'For more details, visit https://goo.gl/AFskqB'\n )\n },\n registered () {\n console.log('Service worker has been registered.')\n },\n cached () {\n console.log('Content has been cached for offline use.')\n },\n updatefound () {\n console.log('New content is downloading.')\n },\n updated () {\n console.log('New content is available; please refresh.')\n },\n offline () {\n console.log('No internet connection found. App is running in offline mode.')\n },\n error (error) {\n console.error('Error during service worker registration:', error)\n }\n })\n}\n","import { createApp } from 'vue'\nimport App from '@/App.vue'\nimport router from '@/router'\nimport './registerServiceWorker'\n\nconst app = createApp(App)\napp.config.globalProperties._config = window.config\napp.use(router).mount('#app')\n","\n\n","import script from \"./Api.vue?vue&type=script&lang=js\"\nexport * from \"./Api.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n","import script from \"./Cookies.vue?vue&type=script&lang=js\"\nexport * from \"./Cookies.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n","import script from \"./DateTime.vue?vue&type=script&lang=js\"\nexport * from \"./DateTime.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n","import script from \"./Events.vue?vue&type=script&lang=js\"\nexport * from \"./Events.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n","import script from \"./Notification.vue?vue&type=script&lang=js\"\nexport * from \"./Notification.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n","import script from \"./Screen.vue?vue&type=script&lang=js\"\nexport * from \"./Screen.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n","import script from \"./Text.vue?vue&type=script&lang=js\"\nexport * from \"./Text.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n","import script from \"./Types.vue?vue&type=script&lang=js\"\nexport * from \"./Types.vue?vue&type=script&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\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","import { render } from \"./Loading.vue?vue&type=template&id=4d9c871b&scoped=true\"\nconst script = {}\n\nimport \"./Loading.vue?vue&type=style&index=0&id=4d9c871b&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-4d9c871b\"]])\n\nexport default __exports__","\n\n \n\n\n\n\n\n\n\n\n","import { render } from \"./Modal.vue?vue&type=template&id=18f9fdba&scoped=true\"\nimport script from \"./Modal.vue?vue&type=script&lang=js\"\nexport * from \"./Modal.vue?vue&type=script&lang=js\"\n\nimport \"./Modal.vue?vue&type=style&index=0&id=18f9fdba&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-18f9fdba\"]])\n\nexport default __exports__","\n\n\n\n\n\n \n \n\n\n\n\n \n \n\n\n\n\n\n","import { render } from \"./ConfirmDialog.vue?vue&type=template&id=682db704&scoped=true\"\nimport script from \"./ConfirmDialog.vue?vue&type=script&lang=js\"\nexport * from \"./ConfirmDialog.vue?vue&type=script&lang=js\"\n\nimport \"./ConfirmDialog.vue?vue&type=style&index=0&id=682db704&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-682db704\"]])\n\nexport default __exports__","\n\n\n\n \n\n \n \n\n\n\n\n\n\n\n","import { render } from \"./Dropdown.vue?vue&type=template&id=5b964c03&scoped=true\"\nimport script from \"./Dropdown.vue?vue&type=script&lang=js\"\nexport * from \"./Dropdown.vue?vue&type=script&lang=js\"\n\nimport \"./Dropdown.vue?vue&type=style&index=0&id=5b964c03&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-5b964c03\"]])\n\nexport default __exports__","\n\n\n\n \n\n\n\n\n\n\n","import { render } from \"./DropdownItem.vue?vue&type=template&id=282d16b4&scoped=true\"\nimport script from \"./DropdownItem.vue?vue&type=script&lang=js\"\nexport * from \"./DropdownItem.vue?vue&type=script&lang=js\"\n\nimport \"./DropdownItem.vue?vue&type=style&index=0&id=282d16b4&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-282d16b4\"]])\n\nexport default __exports__","\n\n\n \n\n \n \n \n\n\n\n\n\n\n","import { render } from \"./Icon.vue?vue&type=template&id=706a3bd1&scoped=true\"\nimport script from \"./Icon.vue?vue&type=script&lang=js\"\nexport * from \"./Icon.vue?vue&type=script&lang=js\"\n\nimport \"./Icon.vue?vue&type=style&index=0&id=706a3bd1&lang=scss&scoped=true\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-706a3bd1\"]])\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","import { render } from \"./Token.vue?vue&type=template&id=2a4d58dc\"\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=2a4d58dc&lang=scss\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/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\nGenerate a JWT authentication token that can be used for API calls to the /execute endpoint.
\nYou can include the token in your requests in any of the following ways:
\n\n\n
\n\n Confirm your credentials in order to generate a new token.\n- Specify it on the Authorization: Bearer header;
\n- Specify it on the X-Token header;
\n- Specify it as a URL parameter: http://site:8008/execute?token=...;
\n- Specify it on the body of your JSON request: {\"type\":\"request\", \"action\", \"...\", \"token\":\"...\"}.
\n\n \n\n\n\n \n \n \n\n\n \n \n\n\n\n\n\n\n\n\n","import { render } from \"./Users.vue?vue&type=template&id=8de4f27c\"\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=8de4f27c&lang=scss\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/node_modules/vue-loader/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./Index.vue?vue&type=template&id=37be3587\"\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=37be3587&lang=scss\"\n\nimport exportComponent from \"/home/blacklight/git_tree/platypush/platypush/backend/http/webapp/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\t5528,\n\t\t2989,\n\t\t5528\n\t],\n\t\"./CameraAndroidIpcam/Index\": [\n\t\t6739,\n\t\t6739\n\t],\n\t\"./CameraCv/Index\": [\n\t\t8184,\n\t\t2989,\n\t\t8184\n\t],\n\t\"./CameraFfmpeg/Index\": [\n\t\t5111,\n\t\t2989,\n\t\t5111\n\t],\n\t\"./CameraGstreamer/Index\": [\n\t\t699,\n\t\t2989,\n\t\t699\n\t],\n\t\"./CameraIrMlx90640/Index\": [\n\t\t9895,\n\t\t2989,\n\t\t9895\n\t],\n\t\"./CameraPi/Index\": [\n\t\t4548,\n\t\t2989,\n\t\t4548\n\t],\n\t\"./Entities/Index\": [\n\t\t8725,\n\t\t201\n\t],\n\t\"./Execute/Index\": [\n\t\t3956,\n\t\t3956\n\t],\n\t\"./Light/Index\": [\n\t\t5199,\n\t\t7782,\n\t\t3490,\n\t\t5199\n\t],\n\t\"./LightHue/Index\": [\n\t\t3724,\n\t\t7782,\n\t\t3490,\n\t\t5199,\n\t\t3724\n\t],\n\t\"./Media/Index\": [\n\t\t4196,\n\t\t7782,\n\t\t9978,\n\t\t8589,\n\t\t4196\n\t],\n\t\"./MediaMplayer/Index\": [\n\t\t6509,\n\t\t7782,\n\t\t9978,\n\t\t8589,\n\t\t4196,\n\t\t6509\n\t],\n\t\"./MediaMpv/Index\": [\n\t\t5895,\n\t\t7782,\n\t\t9978,\n\t\t8589,\n\t\t4196,\n\t\t5895\n\t],\n\t\"./MediaOmxplayer/Index\": [\n\t\t9633,\n\t\t7782,\n\t\t9978,\n\t\t8589,\n\t\t4196,\n\t\t9633\n\t],\n\t\"./MediaVlc/Index\": [\n\t\t767,\n\t\t7782,\n\t\t9978,\n\t\t8589,\n\t\t4196,\n\t\t767\n\t],\n\t\"./Music/Index\": [\n\t\t6833,\n\t\t7782,\n\t\t9978,\n\t\t6833\n\t],\n\t\"./MusicMpd/Index\": [\n\t\t3249,\n\t\t7782,\n\t\t9978,\n\t\t6833,\n\t\t3249\n\t],\n\t\"./MusicSnapcast/Index\": [\n\t\t2790,\n\t\t7782,\n\t\t3490,\n\t\t2790\n\t],\n\t\"./MusicSpotify/Index\": [\n\t\t9369,\n\t\t7782,\n\t\t9978,\n\t\t6833,\n\t\t9369\n\t],\n\t\"./Rtorrent/Index\": [\n\t\t2820,\n\t\t8589,\n\t\t6899,\n\t\t2820\n\t],\n\t\"./Settings/Index\": [\n\t\t2715\n\t],\n\t\"./Sound/Index\": [\n\t\t5193,\n\t\t5193\n\t],\n\t\"./Torrent/Index\": [\n\t\t9299,\n\t\t8589,\n\t\t6899,\n\t\t9299\n\t],\n\t\"./Tts/Index\": [\n\t\t2466,\n\t\t4021,\n\t\t2466\n\t],\n\t\"./TtsGoogle/Index\": [\n\t\t1938,\n\t\t4021,\n\t\t1938\n\t],\n\t\"./TvSamsungWs/Index\": [\n\t\t615,\n\t\t615\n\t],\n\t\"./ZigbeeMqtt/Index\": [\n\t\t4848,\n\t\t7782,\n\t\t3490,\n\t\t4848\n\t],\n\t\"./Zwave/Index\": [\n\t\t6027,\n\t\t7782,\n\t\t3490,\n\t\t906,\n\t\t6027\n\t],\n\t\"./ZwaveMqtt/Index\": [\n\t\t2362,\n\t\t7782,\n\t\t3490,\n\t\t906,\n\t\t2362\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\t345,\n\t\t345\n\t],\n\t\"./Camera/Index\": [\n\t\t2346,\n\t\t2346\n\t],\n\t\"./Component/Index\": [\n\t\t5824,\n\t\t7782,\n\t\t3490,\n\t\t5824\n\t],\n\t\"./DateTime/Index\": [\n\t\t1595,\n\t\t9575,\n\t\t1595\n\t],\n\t\"./DateTimeWeather/Index\": [\n\t\t346,\n\t\t1798,\n\t\t9575,\n\t\t346\n\t],\n\t\"./ImageCarousel/Index\": [\n\t\t6003,\n\t\t1798,\n\t\t9575,\n\t\t6003\n\t],\n\t\"./Music/Index\": [\n\t\t6013,\n\t\t6013\n\t],\n\t\"./Plugin/Index\": [\n\t\t1818,\n\t\t1818\n\t],\n\t\"./RssNews/Index\": [\n\t\t7420,\n\t\t7420\n\t],\n\t\"./Weather/Index\": [\n\t\t1798,\n\t\t1798\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](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\":\"a4e6662a\",\"201\":\"60aa8be6\",\"345\":\"8d14f37b\",\"346\":\"647c3d99\",\"615\":\"25a0ebcb\",\"675\":\"496d097f\",\"699\":\"b7975861\",\"767\":\"32c26b46\",\"906\":\"12e72134\",\"1196\":\"f4c25ec1\",\"1300\":\"526f4cf3\",\"1595\":\"cf573de8\",\"1767\":\"25bd60ff\",\"1798\":\"2ea76630\",\"1818\":\"d8f79120\",\"1938\":\"1dc95872\",\"2346\":\"9a487752\",\"2362\":\"620095dd\",\"2466\":\"633bb83f\",\"2790\":\"4b108fb8\",\"2806\":\"e32037e8\",\"2820\":\"07ee3664\",\"2989\":\"fa06c8b8\",\"3194\":\"256c2da8\",\"3249\":\"a2010c2d\",\"3303\":\"028580a6\",\"3490\":\"d482e29b\",\"3724\":\"a557791e\",\"3956\":\"7c792927\",\"4021\":\"a3380d38\",\"4196\":\"f85ff63e\",\"4548\":\"c7642733\",\"4848\":\"ca77e67b\",\"4981\":\"c4835180\",\"5111\":\"f606018d\",\"5157\":\"f2273a80\",\"5193\":\"1de6bb98\",\"5199\":\"03545ba6\",\"5207\":\"b6625280\",\"5498\":\"ddfaadb5\",\"5528\":\"10b051ba\",\"5824\":\"d14935bb\",\"5895\":\"bc039cca\",\"5924\":\"a2919fe4\",\"6003\":\"c76e25e0\",\"6013\":\"5c85c65a\",\"6027\":\"e3b113ee\",\"6164\":\"2c2c3fba\",\"6358\":\"46615b4c\",\"6509\":\"9ca36429\",\"6739\":\"14f222c1\",\"6815\":\"a11912ee\",\"6833\":\"65afb884\",\"6899\":\"8c784f84\",\"7141\":\"e4e94ba3\",\"7420\":\"e53d9d48\",\"7503\":\"2c161f6d\",\"7782\":\"724314a6\",\"8135\":\"bb2ac7e3\",\"8184\":\"c4135de2\",\"8444\":\"d0d1fdb2\",\"8589\":\"21ae83d2\",\"9276\":\"74343d50\",\"9299\":\"710819a1\",\"9369\":\"f7907b71\",\"9387\":\"194bcb15\",\"9418\":\"dfb3427c\",\"9450\":\"0b6d3902\",\"9575\":\"fb8eab70\",\"9633\":\"23b95cb0\",\"9895\":\"16e6387b\",\"9978\":\"f8ee0318\"}[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\":\"45022021\",\"201\":\"11f5843f\",\"345\":\"19cf9d0d\",\"346\":\"1706fbde\",\"615\":\"8b95243c\",\"675\":\"4cafd794\",\"906\":\"cb3bce26\",\"1196\":\"7b6fd66b\",\"1300\":\"96309a62\",\"1767\":\"3f0d1aca\",\"1798\":\"d0061372\",\"1818\":\"8baa291c\",\"2346\":\"d171e8f5\",\"2790\":\"19201b3b\",\"2806\":\"4f590a38\",\"2989\":\"0f93a679\",\"3194\":\"3df38d58\",\"3303\":\"8fdecbd9\",\"3490\":\"a327ba57\",\"3724\":\"0fc70dd7\",\"3956\":\"e39dd77e\",\"4021\":\"fff19b0b\",\"4196\":\"ea56d2c9\",\"4848\":\"c9eab7f4\",\"4981\":\"94bc04e2\",\"5193\":\"37da0a16\",\"5199\":\"fe9cee1a\",\"5207\":\"2b89418c\",\"5498\":\"9a543237\",\"5824\":\"c1f06cf8\",\"5924\":\"99a5e5ce\",\"6003\":\"986b3ae1\",\"6013\":\"d0054b15\",\"6164\":\"72aca991\",\"6358\":\"ebcb5dfd\",\"6739\":\"11bad71d\",\"6815\":\"5eeaa8c8\",\"6833\":\"b5d8115c\",\"6899\":\"748a42fd\",\"7141\":\"8ae8ce03\",\"7420\":\"f8b46177\",\"7503\":\"42ed5848\",\"7782\":\"a9f0ac90\",\"8135\":\"59c68eb5\",\"8444\":\"f8d1e9c7\",\"8589\":\"e7924cac\",\"9276\":\"d21e868a\",\"9387\":\"317149bb\",\"9418\":\"55ebc1ed\",\"9450\":\"ef02fb64\",\"9575\":\"21327597\",\"9978\":\"b34577f7\"}[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\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\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 = \"/\";","var createStylesheet = function(chunkId, fullhref, 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\tlinkTag.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\tdocument.head.appendChild(linkTag);\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, 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,\"201\":1,\"345\":1,\"346\":1,\"615\":1,\"675\":1,\"906\":1,\"1196\":1,\"1300\":1,\"1767\":1,\"1798\":1,\"1818\":1,\"2346\":1,\"2790\":1,\"2806\":1,\"2989\":1,\"3194\":1,\"3303\":1,\"3490\":1,\"3724\":1,\"3956\":1,\"4021\":1,\"4196\":1,\"4848\":1,\"4981\":1,\"5193\":1,\"5199\":1,\"5207\":1,\"5498\":1,\"5824\":1,\"5924\":1,\"6003\":1,\"6013\":1,\"6164\":1,\"6358\":1,\"6739\":1,\"6815\":1,\"6833\":1,\"6899\":1,\"7141\":1,\"7420\":1,\"7503\":1,\"7782\":1,\"8135\":1,\"8444\":1,\"8589\":1,\"9276\":1,\"9387\":1,\"9418\":1,\"9450\":1,\"9575\":1,\"9978\":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(!/^((29|85)89|1300|3490|4021|4981|7782|9575)$/.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__(5360); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["bus","mitt","publishEntity","entity","emit","onEntity","callback","on","publishNotification","notification","onNotification","hasWebsocket","ref","hasAssistant","hasPushbullet","hasNtfy","installPWA","class","notifications","id","index","key","text","html","title","link","image","warning","error","destroy","clicked","src","alt","icon","style","color","iconClass","name","props","methods","this","window","open","$emit","__exports__","components","Notification","duration","type","Number","default","data","timeouts","create","args","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","state","alerting","responding","speechRecognized","listening","Modal","mixins","Utils","responseText","phrase","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","pwaInstallEvent","computed","async","request","prompt","pwaDialog","initConfig","beforeMount","addEventListener","preventDefault","render","loading","classes","rows","row","i","widgets","widget","j","component","getWidgetProps","String","required","split","concat","Widget","Loading","Row","refreshSeconds","parseTemplate","tmpl","node","DOMParser","parseFromString","childNodes","attributes","nodeValue","getElementsByTagName","map","children","el","nodeName","attrs","reduce","obj","content","innerHTML","$options","$route","params","template","notifyError","refreshDashboard","setInterval","toFixed","method","placeholder","_register","value","register","Boolean","parseBoolean","Login","panels","selectedPanel","hostname","$event","panel","href","collapsed","panelNames","onItemClick","icons","imgUrl","emits","homeIdx","indexOf","slice","sort","collapsedDefault","isMobile","isTablet","Settings","Nav","plugins","backends","procedures","initSelectedPanel","match","hash","plugin","initPanels","entries","forEach","componentName","token","toUpperCase","join","comp","pluginName","Promise","all","initializeDefaultViews","execute","entities","parseConfig","toString","initPanel","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","then","errors","output","catch","action","getCookies","document","cookie","item","k","v","formatDate","date","year","Date","toDateString","substring","formatTime","seconds","toTimeString","formatDateTime","_eventsReady","$root","subFunc","generateId","unwatch","$watch","newVal","btoa","fromCharCode","round","random","notifyWarning","matchMedia","matches","isDesktop","capitalize","charAt","prettify","t","toLowerCase","convertSize","unit","units","u","convertTime","time","ret","parseFloat","d","h","m","s","objectsEqual","a","b","p","Api","Cookies","DateTime","Screen","Text","Types","n","script","isVisible","zIndex","$attrs","width","height","stopPropagation","visible","level","timeoutId","prevVisible","hide","toggle","onKeyUp","visibleHndl","unmounted","removeEventListener","maxZIndex","getComputedStyle","$el","outermostModals","modal","querySelectorAll","onConfirm","confirmText","cancelText","items","keepOpenOnItemClick","documentClickHndl","element","target","dropdown","parentElement","left","top","button","getBoundingClientRect","innerWidth","clientWidth","innerHeight","clientHeight","itemClass","iconUrl","Icon","disabled","$parent","className","selectedView","usersView","addUserModal","sessionToken","currentUser","onTokenSelect","generateToken","username","password","validityDays","expiry_days","tokenModal","select","execCommand","createUser","commandRunning","changePassword","selectedUser","users","user","user_id","changePasswordModal","deleteUser","DropdownItem","Dropdown","form","addUserForm","input","confirm_password","session_token","refresh","changePasswordForm","new_password","confirm_new_password","success","old_password","confirm","Users","Token","webpackAsyncContext","req","__webpack_require__","o","Error","ids","module","exports","__webpack_module_cache__","moduleId","cachedModule","__webpack_modules__","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","call","inProgress","dataWebpackPrefix","l","done","needAttach","scripts","getAttribute","createElement","charset","nc","setAttribute","onScriptComplete","prev","onload","doneFns","parentNode","removeChild","head","appendChild","Symbol","toStringTag","createStylesheet","fullhref","linkTag","rel","onLinkComplete","errorType","realHref","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\n
\n- \n \n
\n\n\n\n \n\n \n