1 line
54 KiB
Plaintext
1 line
54 KiB
Plaintext
{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/App.vue","webpack:///./src/components/Controls.vue","webpack:///src/components/Controls.vue","webpack:///./src/components/Controls.vue?a1ee","webpack:///./src/components/Controls.vue?8e44","webpack:///./src/components/Modals.vue","webpack:///./src/components/SimpleKeyboard.vue","webpack:///src/components/SimpleKeyboard.vue","webpack:///./src/components/SimpleKeyboard.vue?fbca","webpack:///./src/components/SimpleKeyboard.vue?8b25","webpack:///src/components/Modals.vue","webpack:///./src/components/Modals.vue?d015","webpack:///./src/components/Modals.vue?486e","webpack:///src/App.vue","webpack:///./src/App.vue?60d0","webpack:///./src/App.vue?315a","webpack:///./src/plugins/i18n.js","webpack:///./src/main.js","webpack:///./src/App.vue?d371","webpack:///./src/router/index.js"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","jsonpScriptSrc","p","exports","module","l","e","promises","cssChunks","Promise","resolve","reject","href","fullhref","existingLinkTags","document","getElementsByTagName","tag","dataHref","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","code","parentNode","removeChild","head","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","error","clearTimeout","chunk","errorType","realSrc","message","name","undefined","setTimeout","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice","render","_vm","this","_c","_self","attrs","staticRenderFns","display","staticClass","class","battery_icon","iface_out","startsWith","wifi_icon","_l","wifi_networks","network","on","$event","show_modal_wifi","get_wifi_icon","signal","_v","_s","_e","iocs_number","ip_address","internet","goto_home","backend_option","goto_backend","shutdown_option","show_modal_shutdown","update_available","update_possible","remote_backend","methods","check_update","axios","catch","load_config","setInterval","get_battery_icon","EventBus","get_wifi_networks","response","check_internet","watch","$route","created","component","hide_modal","display_shudown","$t","shutdown","display_whitelist","domProps","replace","host","add_whitelist","display_wifi","wifi_network","password_class","show_password","directives","rawName","password","expression","Array","isArray","_i","show_keyboard","$$a","$$el","$$c","checked","$$v","$$i","concat","_q","composing","wifi_connecting","wifi_success","wifi_setup","btn_wifi_val","input","onChange","onKeyPress","keyboardClass","props","default","keyboard","mounted","handleShift","layoutName","capture_token","components","SimpleKeyboard","onInputChange","ssid","router","Controls","Modals","splash","set_lang","get_config","Vue","use","VueI18n","i18n","locale","fallbackLocale","messages","require","config","productionTip","devtools","h","App","$mount","VueRouter","routes","path","base","process"],"mappings":"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","file":"js/app.13d7f657.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"app\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"js/\" + ({}[chunkId]||chunkId) + \".\" + {\"chunk-0d175fb6\":\"56d23ddc\",\"chunk-2d0b23b3\":\"3d66404f\",\"chunk-2d0b6d35\":\"9c950e8a\",\"chunk-2d0baeaa\":\"9d6eca74\",\"chunk-2d0cfa15\":\"805b5619\",\"chunk-2e6079ad\":\"3b1ceaed\",\"chunk-7cb613d5\":\"35dd63f5\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"chunk-0d175fb6\":1,\"chunk-7cb613d5\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"css/\" + ({}[chunkId]||chunkId) + \".\" + {\"chunk-0d175fb6\":\"3b87afd9\",\"chunk-2d0b23b3\":\"31d6cfe0\",\"chunk-2d0b6d35\":\"31d6cfe0\",\"chunk-2d0baeaa\":\"31d6cfe0\",\"chunk-2d0cfa15\":\"31d6cfe0\",\"chunk-2e6079ad\":\"31d6cfe0\",\"chunk-7cb613d5\":\"030f6319\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\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\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{attrs:{\"id\":\"app\"}},[_c('Modals'),_c('router-view'),_c('Controls')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.display)?_c('div',{staticClass:\"controls\"},[_c('i',{staticClass:\"battery\",class:[_vm.battery_icon]}),(_vm.iface_out.startsWith('wl'))?_c('div',{staticClass:\"dropup\"},[_c('i',{staticClass:\"wifi\",class:[_vm.wifi_icon]}),_c('div',{staticClass:\"dropup-content\"},[_c('ul',_vm._l((_vm.wifi_networks),function(network){return _c('li',{key:network,on:{\"click\":function($event){return _vm.show_modal_wifi(network.name)}}},[_c('i',{staticClass:\"wifi_mini\",class:[_vm.get_wifi_icon(network.signal)]}),_vm._v(_vm._s(network.name)+\" \")])}),0)])]):_vm._e(),_c('i',{staticClass:\"iocs-number\",class:{ 'border-green': _vm.iocs_number }},[_vm._v(_vm._s(_vm.iocs_number)+\" IOCs\")]),(_vm.ip_address)?_c('i',{staticClass:\"ip_addr\",class:{ 'border-green': _vm.internet }},[_vm._v(_vm._s(_vm.ip_address)+\" \")]):_c('i',{staticClass:\"ip_addr\"},[_vm._v(\"Not connected\")]),_c('i',{staticClass:\"home-icon\",on:{\"click\":function($event){return _vm.goto_home()}}}),(_vm.backend_option)?_c('i',{staticClass:\"config-icon\",on:{\"click\":function($event){return _vm.goto_backend()}}}):_vm._e(),(_vm.shutdown_option)?_c('i',{staticClass:\"shutdown-icon\",on:{\"click\":function($event){return _vm.show_modal_shutdown()}}}):_vm._e()]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"controls\" v-if=\"display\">\n <i class=\"battery\" :class=\"[battery_icon]\"></i>\n <div v-if=\"iface_out.startsWith('wl')\" class=\"dropup\">\n <i :class=\"[wifi_icon]\" class=\"wifi\"></i>\n <div class=\"dropup-content\">\n <ul>\n <li v-for=\"network in wifi_networks\" v-on:click=\"show_modal_wifi(network.name)\" v-bind:key=\"network\">\n <i :class=\"[get_wifi_icon(network.signal)]\" class=\"wifi_mini\"> </i>{{ network.name }}\n </li>\n </ul> \n </div>\n </div>\n \n <i class=\"iocs-number\" v-bind:class=\"{ 'border-green': iocs_number }\">{{ iocs_number }} IOCs</i>\n <i v-if=\"ip_address\" class=\"ip_addr\" v-bind:class=\"{ 'border-green': internet }\">{{ ip_address }} </i>\n <i v-else class=\"ip_addr\">Not connected</i>\n <i class=\"home-icon\" v-on:click=\"goto_home()\"></i>\n <i class=\"config-icon\" v-on:click=\"goto_backend()\" v-if=\"backend_option\"></i>\n <i class=\"shutdown-icon\" v-on:click=\"show_modal_shutdown()\" v-if=\"shutdown_option\"></i>\n </div>\n</template>\n\n<script>\nimport axios from 'axios'\nimport { EventBus } from \"../main.js\"\n\nexport default {\n name: 'Controls',\n data: function (){\n return {\n display: true,\n update_available: false,\n update_possible: false,\n shutdown_option: false,\n backend_option: false,\n remote_backend: false,\n iface_out: \"\",\n battery_icon: \"\",\n wifi_icon: \"\",\n wifi_networks: [],\n iocs_number: 0,\n internet: false\n }\n },\n methods: {\n check_update: function() {\n axios.get('/api/update/check', { timeout: 60000 })\n .then(response => { \n if(response.data.status) {\n if(response.data.message == \"A new version is available\"){\n\n // Allow to show the warning chip.\n this.update_available = true\n this.update_possible = true\n\n // Pass the versions as \"global vars\" through window variable.\n window.current_version = response.data.current_version\n window.next_version = response.data.next_version\n }\n } else { \n this.update_possible = false\n }\n })\n .catch(error => { console.log(error) });\n },\n goto_backend: function() {\n if(this.remote_backend){\n window.location.href= `https://${location.hostname}:8443`\n }\n else {\n window.location.href= `http://${location.hostname}:8443`\n }\n },\n goto_home: function() {\n window.location.href = \"/\"\n },\n load_config: function() {\n setInterval(() => {\n axios.get(`/api/misc/config`, { timeout: 60000 })\n .then(response => {\n this.shutdown_option = response.data.shutdown_option\n this.backend_option = response.data.backend_option\n this.remote_backend = response.data.remote_backend\n this.battery_icon = this.get_battery_icon(response.data.battery_level)\n this.wifi_icon = this.get_wifi_icon(response.data.wifi_level)\n this.iocs_number = response.data.iocs_number\n this.iface_out = response.data.iface_out\n })\n .catch(error => { console.log(error) });\n }, 1000);\n },\n get_battery_icon: function(level){\n if (level == 101){\n return \"battery_charging\"\n } else if (level >= 90) {\n return \"battery_full\"\n } else if (level >= 80) {\n return \"battery_80\"\n } else if (level >= 60) {\n return \"battery_60\"\n } else if (level >= 40) {\n return \"battery_40\"\n } else if (level >= 25) {\n return \"battery_25\"\n } else if (level < 25) {\n return \"battery_15\"\n } else {\n return \"battery_critical\"\n }\n },\n get_wifi_icon: function(level){\n if (level >= 80) {\n return \"wifi_5\"\n } else if (level >= 60) {\n return \"wifi_4\"\n } else if (level >= 40) {\n return \"wifi_3\"\n } else if (level >= 20) {\n return \"wifi_2\"\n } else if (level >= 1) {\n return \"wifi_1\"\n } else {\n return \"wifi_0\"\n }\n }, \n show_modal_shutdown: function(){\n EventBus.$emit(\"showModal\", {\"action\" : \"shutdown\"})\n },\n show_modal_wifi: function(network_name){\n EventBus.$emit(\"showModal\", {\"action\" : \"wifi\", \"network_name\" : network_name})\n },\n get_wifi_networks: function(){\n setInterval(() => {\n axios.get('/api/network/wifi/list', { timeout: 10000 })\n .then(response => { \n this.wifi_networks = []\n response.data.networks.forEach( network => {\n if(network.name != window.access_point){\n this.wifi_networks.push(network);\n }\n })\n }).catch(error => {\n console.log(error)\n });\n }, 1000);\n },\n check_internet: function() {\n setInterval(() => {\n axios.get('/api/network/status', { timeout: 30000 })\n .then(response => {\n if (response.data.internet){\n this.internet = true\n this.ip_address = response.data.ip_out\n } else {\n this.internet = false\n this.ip_address = false\n }\n })\n .catch(err => (console.log(err)))\n }, 1000);\n },\n },\n watch: {\n $route (){\n if ( [\"loader\"].includes(this.$router.currentRoute.name)){\n this.display = false;\n } else {\n this.display = true;\n }\n }\n },\n created: function() {\n this.load_config();\n this.check_internet();\n this.get_wifi_networks();\n }\n}\n</script>","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Controls.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Controls.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Controls.vue?vue&type=template&id=08d0a0d1&\"\nimport script from \"./Controls.vue?vue&type=script&lang=js&\"\nexport * from \"./Controls.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.display)?_c('div',[_c('div',{staticClass:\"blurred-wrapper\",on:{\"click\":function($event){return _vm.hide_modal()}}}),(_vm.display_shudown)?_c('div',{staticClass:\"modal-window\"},[_c('div',{staticClass:\"modal-content\"},[_c('p',[_vm._v(_vm._s(_vm.$t(\"modals.want_to_quit\")))]),_c('button',{staticClass:\"btn btn-primary\",on:{\"click\":function($event){return _vm.hide_modal()}}},[_vm._v(_vm._s(_vm.$t(\"modals.no_go_back\")))]),_vm._v(\" \"),_c('button',{staticClass:\"btn btn-primary\",on:{\"click\":function($event){return _vm.shutdown()}}},[_vm._v(_vm._s(_vm.$t(\"modals.yes_continue\")))])])]):_vm._e(),(_vm.display_whitelist)?_c('div',{staticClass:\"modal-window\"},[_c('div',{staticClass:\"modal-content\"},[_c('p',{domProps:{\"innerHTML\":_vm._s(_vm.$t('modals.want_to_whitelist').replace('{host}', _vm.host))}}),_c('button',{staticClass:\"btn btn-primary\",on:{\"click\":function($event){return _vm.hide_modal()}}},[_vm._v(_vm._s(_vm.$t(\"modals.no_go_back\")))]),_vm._v(\" \"),_c('button',{staticClass:\"btn btn-primary\",on:{\"click\":function($event){return _vm.add_whitelist()}}},[_vm._v(_vm._s(_vm.$t(\"modals.yes_continue\")))])])]):_vm._e(),(_vm.display_wifi)?_c('div',{staticClass:\"modal-window\"},[_c('div',{staticClass:\"modal-content\"},[_c('p',[_vm._v(_vm._s(_vm.$t(\"modals.please_give_the_password\"))+\" \"),_c('strong',[_vm._v(_vm._s(_vm.wifi_network))])]),_c('div',{staticClass:\"form-group\"},[_c('div',{class:_vm.password_class,on:{\"click\":_vm.show_password}}),((_vm.type)==='checkbox')?_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.password),expression:\"password\"}],staticClass:\"form-input\",attrs:{\"id\":\"password\",\"placeholder\":_vm.$t('wifi-select.wifi_password'),\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.password)?_vm._i(_vm.password,null)>-1:(_vm.password)},on:{\"click\":function($event){_vm.show_keyboard = true;},\"change\":function($event){var $$a=_vm.password,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.password=$$a.concat([$$v]))}else{$$i>-1&&(_vm.password=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.password=$$c}}}}):((_vm.type)==='radio')?_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.password),expression:\"password\"}],staticClass:\"form-input\",attrs:{\"id\":\"password\",\"placeholder\":_vm.$t('wifi-select.wifi_password'),\"type\":\"radio\"},domProps:{\"checked\":_vm._q(_vm.password,null)},on:{\"click\":function($event){_vm.show_keyboard = true;},\"change\":function($event){_vm.password=null}}}):_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.password),expression:\"password\"}],staticClass:\"form-input\",attrs:{\"id\":\"password\",\"placeholder\":_vm.$t('wifi-select.wifi_password'),\"type\":_vm.type},domProps:{\"value\":(_vm.password)},on:{\"click\":function($event){_vm.show_keyboard = true;},\"input\":function($event){if($event.target.composing)return;_vm.password=$event.target.value}}})]),_c('div',{staticClass:\"form-group\"},[_c('button',{staticClass:\"btn width-100\",class:[ _vm.wifi_connecting ? 'loading' : '', _vm.wifi_success ? 'btn-success' : 'btn-primary', ],on:{\"click\":function($event){return _vm.wifi_setup()}}},[_vm._v(_vm._s(_vm.btn_wifi_val))])])])]):_vm._e(),(_vm.show_keyboard)?_c('div',{staticClass:\"keyboard_wrapper\"},[_c('SimpleKeyboard',{attrs:{\"input\":_vm.input},on:{\"onChange\":_vm.onChange,\"onKeyPress\":_vm.onKeyPress}})],1):_vm._e()]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{class:_vm.keyboardClass})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <div :class=\"keyboardClass\"></div>\r\n</template>\r\n\r\n<script>\r\nimport Keyboard from \"simple-keyboard\";\r\nimport \"simple-keyboard/build/css/index.css\";\r\nimport layout from \"simple-keyboard-layouts/build/layouts/french\";\r\n\r\nexport default {\r\n name: \"SimpleKeyboard\",\r\n props: {\r\n keyboardClass: {\r\n default: \"simple-keyboard\",\r\n type: String\r\n },\r\n input: {\r\n type: String\r\n }\r\n },\r\n data: () => ({\r\n keyboard: null\r\n }),\r\n mounted() {\r\n if(window.config.user_lang == \"fr\"){\r\n this.keyboard = new Keyboard({\r\n onChange: this.onChange,\r\n onKeyPress: this.onKeyPress,\r\n ...layout\r\n });\r\n } else {\r\n this.keyboard = new Keyboard({\r\n onChange: this.onChange,\r\n onKeyPress: this.onKeyPress\r\n });\r\n }\r\n \r\n },\r\n methods: {\r\n onChange(input) {\r\n this.$emit(\"onChange\", input);\r\n },\r\n onKeyPress(button) {\r\n this.$emit(\"onKeyPress\", button);\r\n\r\n /**\r\n * If you want to handle the shift and caps lock buttons\r\n */\r\n if (button === \"{shift}\" || button === \"{lock}\") this.handleShift();\r\n },\r\n handleShift() {\r\n let currentLayout = this.keyboard.options.layoutName;\r\n let shiftToggle = currentLayout === \"default\" ? \"shift\" : \"default\";\r\n\r\n this.keyboard.setOptions({\r\n layoutName: shiftToggle\r\n });\r\n }\r\n },\r\n watch: {\r\n input(input) {\r\n this.keyboard.setInput(input);\r\n }\r\n }\r\n};\r\n</script>\r\n\r\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\r\n<style scoped>\r\n</style>","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SimpleKeyboard.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SimpleKeyboard.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SimpleKeyboard.vue?vue&type=template&id=24d38e56&scoped=true&\"\nimport script from \"./SimpleKeyboard.vue?vue&type=script&lang=js&\"\nexport * from \"./SimpleKeyboard.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"24d38e56\",\n null\n \n)\n\nexport default component.exports","<template>\n <div v-if=\"display\">\n <div class=\"blurred-wrapper\" v-on:click=\"hide_modal()\"></div>\n <div class=\"modal-window\" v-if=\"display_shudown\">\n <div class=\"modal-content\">\n <p>{{ $t(\"modals.want_to_quit\") }}</p>\n <button class=\"btn btn-primary\" v-on:click=\"hide_modal()\">{{ $t(\"modals.no_go_back\") }}</button> <button class=\"btn btn-primary\" v-on:click=\"shutdown()\">{{ $t(\"modals.yes_continue\") }}</button>\n </div>\n </div>\n <div class=\"modal-window\" v-if=\"display_whitelist\">\n <div class=\"modal-content\">\n <p v-html=\"$t('modals.want_to_whitelist').replace('{host}', host)\"></p>\n <button class=\"btn btn-primary\" v-on:click=\"hide_modal()\">{{ $t(\"modals.no_go_back\") }}</button> <button class=\"btn btn-primary\" v-on:click=\"add_whitelist()\">{{ $t(\"modals.yes_continue\") }}</button>\n </div>\n </div>\n <div class=\"modal-window\" v-if=\"display_wifi\">\n <div class=\"modal-content\">\n <p>{{ $t(\"modals.please_give_the_password\") }} <strong>{{ wifi_network }}</strong> </p>\n \n <div class=\"form-group\">\n <div @click=\"show_password\" :class=\"password_class\"></div>\n <input :type=\"type\" class=\"form-input\" id=\"password\" v-model=\"password\" :placeholder=\"$t('wifi-select.wifi_password')\" v-on:click=\"show_keyboard = true;\">\n </div>\n <div class=\"form-group\">\n <button class=\"btn width-100\" :class=\"[ wifi_connecting ? 'loading' : '', wifi_success ? 'btn-success' : 'btn-primary', ]\" v-on:click=\"wifi_setup()\">{{ btn_wifi_val }}</button>\n </div>\n </div>\n </div>\n <div class=\"keyboard_wrapper\" v-if=\"show_keyboard\">\n <SimpleKeyboard @onChange=\"onChange\" @onKeyPress=\"onKeyPress\" :input=\"input\" />\n </div>\n </div>\n</template>\n\n<script>\nimport axios from 'axios'\nimport router from '../router'\nimport SimpleKeyboard from \"./SimpleKeyboard\";\nimport { EventBus } from \"../main.js\"\n\nexport default {\n name: 'Modals',\n data: function (){\n return {\n btn_wifi_val: this.$t(\"wifi-select.connect_to_it\"),\n wifi_connecting: false,\n error: false,\n wifi_success: false,\n password: \"\",\n capture_token: \"\",\n display_whitelist: false,\n display_shudown: false,\n display_wifi: false,\n display: false,\n wifi_network: \"\",\n show_keyboard: false,\n input: \"\",\n type:\"password\",\n password_class:\"password-show\"\n }\n },\n components: {\n SimpleKeyboard\n },\n methods: {\n hide_modal: function(){\n this.display = false;\n },\n shutdown: function(){\n axios.get(`/api/misc/shutdown`, { timeout: 30000 })\n },\n add_whitelist: function(){\n axios.get(`/api/misc/whitelist/${this.host}`, { timeout: 30000 })\n this.display = false\n },\n onChange(input) {\n this.input = input\n this.password = this.input;\n },\n onKeyPress(button) {\n if (button == \"{enter}\") this.show_keyboard = false\n },\n onInputChange(input) {\n this.input = input.target.value;\n },\n show_password() {\n if(this.type === 'password') {\n this.type = 'text'\n this.password_class = \"password-hide\"\n } else {\n this.type = 'password'\n this.password_class = \"password-show\"\n }\n },\n wifi_setup: function() {\n if (this.password.length >= 8 ){\n this.wifi_connecting = true\n axios.post('/api/network/wifi/setup', { ssid: this.wifi_network, password: this.password }, { timeout: 60000 })\n .then(response => {\n if(response.data.status) {\n this.wifi_success = true\n this.wifi_connecting = false\n this.btn_wifi_val = this.$t('wifi-select.wifi_connected')\n setTimeout(() => {\n this.display = false\n this.btn_wifi_val = this.$t(\"wifi-select.connect_to_it\")\n router.push('generate-ap'); \n }, 1000);\n } else {\n this.btn_wifi_val = this.$t('wifi-select.wifi_not_connected')\n this.wifi_connecting = false\n setTimeout(() => {\n this.btn_wifi_val = this.$t(\"wifi-select.connect_to_it\")\n }, 1000);\n }\n });\n }\n }\n },\n created: function() {\n EventBus.$on(\"showModal\", args => {\n this.input = \"\"\n if(args.action == \"shutdown\"){\n this.show_keyboard = false\n this.display_wifi = false\n this.display_shudown = true\n this.display_whitelist = false\n this.display = true\n } else if(args.action == \"wifi\"){\n this.wifi_connecting = false\n this.wifi_success = false\n this.password = \"\"\n this.btnval = this.$t(\"wifi-select.connect_to_it\");\n this.display_shudown = false\n this.display_wifi = true\n this.display_whitelist = false\n this.wifi_network = args.network_name\n this.display = true\n } else if(args.action == \"whitelist\"){\n this.show_keyboard = false\n this.display_wifi = false\n this.display_shudown = false\n this.display_whitelist = true\n this.host = args.host\n this.display = true\n }\n });\n }\n}\n</script>\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Modals.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Modals.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Modals.vue?vue&type=template&id=73ca2b7b&\"\nimport script from \"./Modals.vue?vue&type=script&lang=js&\"\nexport * from \"./Modals.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","<template>\r\n <div id=\"app\">\r\n <Modals />\r\n <router-view />\r\n <Controls />\r\n </div>\r\n</template>\r\n\r\n<style>\r\n @import './assets/spectre.min.css';\r\n @import './assets/custom.css';\r\n</style>\r\n\r\n<script>\r\n import axios from 'axios'\r\n import Controls from \"@/components/Controls.vue\"\r\n import Modals from \"@/components/Modals.vue\"\r\n\r\n document.title = 'SPYGUARD'\r\n\r\n export default {\r\n name: 'app',\r\n components: {\r\n Controls,\r\n Modals\r\n }, data() {\r\n return {\r\n splash: false\r\n }\r\n },\r\n methods: {\r\n set_lang: function() {\r\n if (window.config.user_lang) {\r\n var lang = window.config.user_lang\r\n if (Object.keys(this.$i18n.messages).includes(lang)) {\r\n this.$i18n.locale = lang\r\n document.querySelector('html').setAttribute('lang', lang)\r\n }\r\n }\r\n },\r\n get_config: function() {\r\n axios.get('/api/misc/config', { timeout: 60000 })\r\n .then(response => { \r\n window.config = response.data \r\n this.set_lang();\r\n })\r\n .catch(error => { console.log(error) });\r\n }\r\n },\r\n watch: {\r\n $route (){\r\n if ( [\"loader\"].includes(this.$router.currentRoute.name)){\r\n this.splash = true;\r\n } else {\r\n this.splash = false;\r\n }\r\n }\r\n },\r\n created: function() {\r\n window.config = {}\r\n this.get_config();\r\n }\r\n }\r\n</script>\r\n\r\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--13-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--13-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=4e2caeba&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&id=4e2caeba&prod&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Vue from 'vue'\nimport VueI18n from 'vue-i18n'\n\nVue.use(VueI18n)\n\nexport const i18n = new VueI18n({\n locale: 'en',\n fallbackLocale: 'en',\n messages: {\n 'en': require('@/locales/en.json'),\n 'fr': require('@/locales/fr.json'),\n 'es': require('@/locales/es.json'),\n 'ru': require('@/locales/ru.json'),\n 'pt': require('@/locales/pt.json'),\n 'it': require('@/locales/it.json'),\n 'de': require('@/locales/de.json')\n }\n})","import Vue from 'vue'\r\nimport App from './App.vue'\r\nimport router from './router'\r\nimport { i18n } from '@/plugins/i18n'\r\n\r\nVue.config.productionTip = true\r\nVue.config.devtools = true\r\n\r\nexport const EventBus = new Vue();\r\n\r\nnew Vue({\r\n router,\r\n i18n,\r\n render: h => h(App)\r\n}).$mount('#app')","export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&id=4e2caeba&prod&lang=css&\"","import Vue from 'vue'\r\nimport VueRouter from 'vue-router'\r\n\r\n\r\nVue.use(VueRouter)\r\n\r\nconst routes = [\r\n {\r\n path: '/',\r\n name: 'loader',\r\n component: () => import('../views/splash-screen.vue'),\r\n props: true\r\n },\r\n {\r\n path: '/home',\r\n name: 'home',\r\n component: () => import('../views/home.vue'),\r\n props: true\r\n },\r\n {\r\n path: '/generate-ap',\r\n name: 'generate-ap',\r\n component: () => import('../views/generate-ap.vue'),\r\n props: true\r\n },\r\n {\r\n path: '/capture',\r\n name: 'capture',\r\n component: () => import('../views/capture.vue'),\r\n props: true\r\n },\r\n {\r\n path: '/save-capture',\r\n name: 'save-capture',\r\n component: () => import('../views/save-capture.vue'),\r\n props: true\r\n },\r\n {\r\n path: '/analysis',\r\n name: 'analysis',\r\n component: () => import('../views/analysis.vue'),\r\n props: true\r\n },\r\n {\r\n path: '/report',\r\n name: 'report',\r\n component: () => import('../views/report.vue'),\r\n props: true\r\n }\r\n]\r\n\r\nconst router = new VueRouter({\r\n mode: 'history',\r\n base: process.env.BASE_URL,\r\n routes\r\n})\r\n\r\nexport default router\r\n"],"sourceRoot":""} |