diff --git a/README.md b/README.md index 4cdbea8..9a4bef4 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,7 @@ - 🍩 **Why?** desktop software ( office direction , personal tools ), still Yes PC in the next ten years one of the requirements is to improve work efficiency - 🍉 **Simple:** just understand JavaScript - 🍑 **Vision:** all developers can learn how to develop desktop software -- 🍰 **Gitee:** https://gitee.com/dromara/electron-egg **2400+** +- 🍰 **Gitee:** https://gitee.com/dromara/electron-egg **2700+** - 🍨 **Github:** https://github.com/dromara/electron-egg **600+** - 🏆 most valuable open source project ![](https://wallace5303.gitee.io/ee/images/electron-egg/ee-zs.png) diff --git a/README.zh-CN.md b/README.zh-CN.md index ab59eb5..61181df 100644 --- a/README.zh-CN.md +++ b/README.zh-CN.md @@ -16,7 +16,7 @@ - 🍩 **为什么使用?** 桌面软件(办公方向、 个人工具),仍然是未来十几年PC端需求之一,提高工作效率 - 🍉 **简单:** 只需懂 JavaScript - 🍑 **愿景:** 所有开发者都能学会桌面软件研发 -- 🍰 **gitee:** https://gitee.com/dromara/electron-egg **2400+** +- 🍰 **gitee:** https://gitee.com/dromara/electron-egg **2700+** - 🍨 **github:** https://github.com/dromara/electron-egg **600+** - 🏆 码云最有价值开源项目 ![](https://wallace5303.gitee.io/ee/images/electron-egg/ee-zs.png) diff --git a/electron/controller/example.js b/electron/controller/example.js index afd8169..a365636 100644 --- a/electron/controller/example.js +++ b/electron/controller/example.js @@ -174,7 +174,13 @@ class ExampleController extends Controller { if (!args.id) { return false; } - const dir = electronApp.getPath(args.id); + let dir = ''; + if (path.isAbsolute(args.id)) { + dir = args.id; + } else { + dir = electronApp.getPath(args.id); + } + shell.openPath(dir); return true; } diff --git a/frontend/src/views/base/sqlitedb/Index.vue b/frontend/src/views/base/sqlitedb/Index.vue index c835305..1f2769e 100644 --- a/frontend/src/views/base/sqlitedb/Index.vue +++ b/frontend/src/views/base/sqlitedb/Index.vue @@ -28,11 +28,18 @@ - + + + 修改目录 + + + 打开目录 + +
@@ -197,6 +204,12 @@ export default { this.modifyDataDir(r); }) }, + openDir() { + console.log('dd:', this.data_dir); + this.$ipcInvoke(ipcApiRoute.openDirectory, {id: this.data_dir}).then(res => { + // + }) + }, modifyDataDir(dir) { const params = { action: 'setDataDir', diff --git a/package.json b/package.json index 158c5e4..8c89f34 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "ee", - "version": "2.4.0", + "version": "2.5.0", "description": "A fast, desktop software development framework", "main": "main.js", "scripts": { @@ -111,7 +111,7 @@ "dependencies": { "better-sqlite3": "^7.6.0", "dayjs": "^1.10.7", - "ee-core": "^1.4.1", + "ee-core": "^1.5.0", "electron-is": "^3.0.0", "electron-updater": "^5.3.0", "lodash": "^4.17.21" diff --git a/public/dist/css/chunk-4c09bacb.5556c59f.css b/public/dist/css/chunk-4c09bacb.5556c59f.css new file mode 100644 index 0000000..4494e7a --- /dev/null +++ b/public/dist/css/chunk-4c09bacb.5556c59f.css @@ -0,0 +1 @@ +#app-base-db[data-v-5e07180b]{padding:0 10px;text-align:left;width:100%}#app-base-db .one-block-1[data-v-5e07180b]{font-size:16px;padding-top:10px}#app-base-db .one-block-2[data-v-5e07180b]{padding-top:10px} \ No newline at end of file diff --git a/public/dist/css/chunk-e319cd5c.1ec378ff.css b/public/dist/css/chunk-e319cd5c.1ec378ff.css deleted file mode 100644 index 48e2091..0000000 --- a/public/dist/css/chunk-e319cd5c.1ec378ff.css +++ /dev/null @@ -1 +0,0 @@ -#app-base-db[data-v-e8ac4bca]{padding:0 10px;text-align:left;width:100%}#app-base-db .one-block-1[data-v-e8ac4bca]{font-size:16px;padding-top:10px}#app-base-db .one-block-2[data-v-e8ac4bca]{padding-top:10px} \ No newline at end of file diff --git a/public/dist/index.html b/public/dist/index.html index a8843d2..99cf837 100644 --- a/public/dist/index.html +++ b/public/dist/index.html @@ -4,4 +4,4 @@ ::-webkit-scrollbar-track{background:0 0} ::-webkit-scrollbar-thumb{background:#E6FFEE;-webkit-transition:.3s;transition:.3s} ::-webkit-scrollbar-thumb:hover{background-color:#07C160} - ::-webkit-scrollbar-thumb:active{background-color:#07C160}
\ No newline at end of file + ::-webkit-scrollbar-thumb:active{background-color:#07C160}
\ No newline at end of file diff --git a/public/dist/js/app.f34af124.js b/public/dist/js/app.63b3794d.js similarity index 92% rename from public/dist/js/app.f34af124.js rename to public/dist/js/app.63b3794d.js index 8b5f32b..c4f6569 100644 --- a/public/dist/js/app.f34af124.js +++ b/public/dist/js/app.63b3794d.js @@ -1,2 +1,2 @@ -(function(e){function n(n){for(var a,c,o=n[0],u=n[1],i=n[2],d=0,f=[];d\r\n
\r\n \r\n
\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--12-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-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--12-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-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=30547c66&\"\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&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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('a-layout',{attrs:{\"id\":\"app-layout-sider\"}},[_c('a-layout-sider',{staticClass:\"layout-sider\",attrs:{\"theme\":\"light\"},model:{value:(_vm.collapsed),callback:function ($$v) {_vm.collapsed=$$v},expression:\"collapsed\"}},[_c('div',{staticClass:\"logo\"},[_c('img',{staticClass:\"pic-logo\",attrs:{\"src\":require(\"@/assets/logo.png\")}})]),_c('a-menu',{staticClass:\"menu-item\",attrs:{\"theme\":\"light\",\"mode\":\"inline\",\"default-selected-keys\":[_vm.default_key]},on:{\"click\":_vm.menuHandle}},_vm._l((_vm.menu),function(menuInfo,index){return _c('a-menu-item',{key:index},[_c('a-icon',{attrs:{\"type\":menuInfo.icon}}),_vm._v(\" \"+_vm._s(menuInfo.title)+\" \")],1)}),1)],1),_c('a-layout',[_c('a-layout-content',{staticClass:\"layout-content\"},[_c('router-view')],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppSider.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppSider.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AppSider.vue?vue&type=template&id=b03bc458&scoped=true&\"\nimport script from \"./AppSider.vue?vue&type=script&lang=js&\"\nexport * from \"./AppSider.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AppSider.vue?vue&type=style&index=0&id=b03bc458&lang=less&scoped=true&\"\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 \"b03bc458\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('a-layout',{attrs:{\"id\":\"app-menu\"}},[_c('a-layout-sider',{staticClass:\"layout-sider\",attrs:{\"theme\":\"light\"}},[_c('a-menu',{attrs:{\"theme\":\"light\",\"mode\":\"inline\",\"default-selected-keys\":[_vm.default_key],\"selected-keys\":[_vm.current]},on:{\"click\":_vm.menuClick}},_vm._l((_vm.menu),function(menuInfo,subIndex){return _c('a-menu-item',{key:subIndex},[_c('router-link',{attrs:{\"to\":{ name: menuInfo.pageName, params: menuInfo.params}}},[_c('span',[_vm._v(_vm._s(menuInfo.title))])])],1)}),1)],1),_c('a-layout',[_c('a-layout-content',[_c('router-view')],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\r\n * 子菜单\r\n */\r\nexport default {\r\n\tbase: {\r\n\t\t'menu_100' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: '文件',\r\n\t\t\tpageName: 'BaseFileIndex',\r\n\t\t\tparams: {}\r\n\t\t},\r\n\t\t'menu_300' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: '通信',\r\n\t\t\tpageName: 'BaseSocketIpc',\r\n\t\t\tparams: {}\r\n\t\t},\r\n\t\t'menu_301' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: 'http服务',\r\n\t\t\tpageName: 'BaseSocketHttpServer',\r\n\t\t\tparams: {}\r\n\t\t},\r\n\t\t'menu_302' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: 'socket服务',\r\n\t\t\tpageName: 'BaseSocketSocketServer',\r\n\t\t\tparams: {}\r\n\t\t}, \r\n\t\t'menu_310' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: 'json数据库',\r\n\t\t\tpageName: 'BaseDBIndex',\r\n\t\t\tparams: {}\r\n\t\t},\r\n\t\t'menu_320' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: 'sqlite数据库',\r\n\t\t\tpageName: 'BaseSqliteDBIndex',\r\n\t\t\tparams: {}\r\n\t\t},\r\n\t\t'menu_400' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: '视图',\r\n\t\t\tpageName: 'BaseWindowViewIndex',\r\n\t\t\tparams: {}\r\n\t\t},\r\n\t\t'menu_401' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: '窗口',\r\n\t\t\tpageName: 'BaseWindowIndex',\r\n\t\t\tparams: {}\r\n\t\t},\r\n\t\t'menu_405' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: '桌面通知',\r\n\t\t\tpageName: 'BaseNotificationIndex',\r\n\t\t\tparams: {}\r\n\t\t},\r\n\t\t'menu_407' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: '电源监控',\r\n\t\t\tpageName: 'BasePowerMonitorIndex',\r\n\t\t\tparams: {}\r\n\t\t},\r\n\t\t'menu_409' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: '屏幕信息',\r\n\t\t\tpageName: 'BaseScreenIndex',\r\n\t\t\tparams: {}\r\n\t\t},\r\n\t\t'menu_411' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: '系统主题',\r\n\t\t\tpageName: 'BaseThemeIndex',\r\n\t\t\tparams: {}\r\n\t\t}, \r\n\t\t'menu_412' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: '自动更新',\r\n\t\t\tpageName: 'BaseUpdaterIndex',\r\n\t\t\tparams: {}\r\n\t\t}, \r\n\t\t'menu_500' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: '软件调用',\r\n\t\t\tpageName: 'BaseSoftwareIndex',\r\n\t\t\tparams: {}\r\n\t\t},\t\t\r\n\t\t'menu_900' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: '测试',\r\n\t\t\tpageName: 'BaseTestApiIndex',\r\n\t\t\tparams: {}\r\n\t\t} \r\n\t},\r\n\tother: {\r\n\t\t'menu_100' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: '测试',\r\n\t\t\tpageName: 'OtherTestIndex',\r\n\t\t\tparams: {}\r\n\t\t},\r\n\t\t'menu_200' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: 'java',\r\n\t\t\tpageName: 'OtherJavaIndex',\r\n\t\t\tparams: {}\r\n\t\t},\r\n\t}\r\n}\r\n","\r\n\r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Menu.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Menu.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Menu.vue?vue&type=template&id=4541d966&scoped=true&\"\nimport script from \"./Menu.vue?vue&type=script&lang=js&\"\nexport * from \"./Menu.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Menu.vue?vue&type=style&index=0&id=4541d966&lang=less&scoped=true&\"\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 \"4541d966\",\n null\n \n)\n\nexport default component.exports","/**\r\n * 基础路由\r\n * @type { *[] }\r\n */\r\nimport {AppSider, Menu} from '@/layouts'\r\n\r\nconst RouteView = {\r\n name: 'RouteView',\r\n render: h => h('router-view')\r\n}\r\n\r\nexport const constantRouterMap = [\r\n {\r\n path: '/',\r\n component: AppSider,\r\n children: [\r\n {\r\n path: '/base',\r\n name: 'Base',\r\n component: Menu,\r\n props: { id: 'base' },\r\n redirect: { name: 'BaseFileIndex' },\r\n children: [\r\n {\r\n path: '/base/file/index',\r\n name: 'BaseFileIndex',\r\n component: () => import('@/views/base/file/Index')\r\n },\r\n {\r\n path: '/base/socket/ipc',\r\n name: 'BaseSocketIpc',\r\n component: () => import('@/views/base/socket/Ipc')\r\n },\r\n {\r\n path: '/base/db/index',\r\n name: 'BaseDBIndex',\r\n component: () => import('@/views/base/db/Index')\r\n },\r\n {\r\n path: '/base/sqlitedb/index',\r\n name: 'BaseSqliteDBIndex',\r\n component: () => import('@/views/base/sqlitedb/Index')\r\n },\r\n {\r\n path: '/base/windowview/index',\r\n name: 'BaseWindowViewIndex',\r\n component: () => import('@/views/base/windowview/Index')\r\n },\r\n {\r\n path: '/base/window/index',\r\n name: 'BaseWindowIndex',\r\n component: () => import('@/views/base/window/Index')\r\n },\r\n {\r\n path: '/base/notification/index',\r\n name: 'BaseNotificationIndex',\r\n component: () => import('@/views/base/notification/Index')\r\n },\r\n {\r\n path: '/base/powermonitor/index',\r\n name: 'BasePowerMonitorIndex',\r\n component: () => import('@/views/base/powermonitor/Index')\r\n },\r\n {\r\n path: '/base/screen/index',\r\n name: 'BaseScreenIndex',\r\n component: () => import('@/views/base/screen/Index')\r\n },\r\n {\r\n path: '/base/theme/index',\r\n name: 'BaseThemeIndex',\r\n component: () => import('@/views/base/theme/Index')\r\n }, \r\n {\r\n path: '/base/software/index',\r\n name: 'BaseSoftwareIndex',\r\n component: () => import('@/views/base/software/Index')\r\n },\r\n {\r\n path: '/base/socket/httpserver',\r\n name: 'BaseSocketHttpServer',\r\n component: () => import('@/views/base/socket/HttpServer')\r\n },\r\n {\r\n path: '/base/socket/socketserver',\r\n name: 'BaseSocketSocketServer',\r\n component: () => import('@/views/base/socket/SocketServer')\r\n }, \r\n {\r\n path: '/base/system/index',\r\n name: 'BaseSystemIndex',\r\n component: () => import('@/views/base/system/Index')\r\n },\r\n {\r\n path: '/base/testapi/index',\r\n name: 'BaseTestApiIndex',\r\n component: () => import('@/views/base/testapi/Index')\r\n },\r\n {\r\n path: '/base/updater/index',\r\n name: 'BaseUpdaterIndex',\r\n component: () => import('@/views/base/updater/Index')\r\n }, \r\n ] \r\n },\r\n {\r\n path: '/other',\r\n name: 'Other',\r\n component: Menu,\r\n props: { id: 'other' },\r\n redirect: { name: 'OtherTestIndex' },\r\n children: [\r\n {\r\n path: '/other/test/index',\r\n name: 'OtherTestIndex',\r\n component: () => import('@/views/other/test/Index')\r\n },\r\n {\r\n path: '/other/java/index',\r\n name: 'OtherJavaIndex',\r\n component: () => import('@/views/other/java/Index')\r\n }\r\n ] \r\n }\r\n ]\r\n },\r\n {\r\n path: '/special',\r\n component: RouteView,\r\n //redirect: '/special/subwindow',\r\n children: [\r\n {\r\n path: 'subwindow',\r\n name: 'SpecialSubwindowIpc',\r\n component: () => import('@/views/base/subwindow/Ipc')\r\n }\r\n ]\r\n },\r\n]\r\n","import Vue from 'vue'\r\nimport Router from 'vue-router'\r\nimport { constantRouterMap } from '@/config/router.config'\r\n\r\n// hack router push callback\r\nconst originalPush = Router.prototype.push\r\nRouter.prototype.push = function push (location, onResolve, onReject) {\r\n if (onResolve || onReject) return originalPush.call(this, location, onResolve, onReject)\r\n return originalPush.call(this, location).catch(err => err)\r\n}\r\n\r\nVue.use(Router)\r\n\r\nexport default new Router({\r\n mode: 'hash',\r\n routes: constantRouterMap\r\n})\r\n","const { ipcRenderer: ipc } = (window.require && window.require('electron')) || window.electron || {}\r\n\r\n/**\r\n * 发送异步消息(invoke/handle 模型)\r\n * @param channel\r\n * @param param\r\n * @returns {Promise}\r\n */\r\nconst invoke = (channel, param) => {\r\n const message = ipc.invoke(channel, param);\r\n return message;\r\n}\r\n\r\n/**\r\n * 发送同步消息(send/on 模型)\r\n * @param channel\r\n * @param param\r\n * @returns {Any}\r\n */\r\nconst sendSync = (channel, param) => {\r\n const message = ipc.sendSync(channel, param);\r\n return message;\r\n}\r\n\r\nexport default {\r\n install(Vue) {\r\n Vue.prototype.$ipc = ipc // 全局注入ipc\r\n Vue.prototype.$ipcInvoke = invoke\r\n Vue.prototype.$ipcSendSync = sendSync\r\n }\r\n}\r\n","import Vue from 'vue'\r\nimport antd from 'ant-design-vue'\r\nimport 'ant-design-vue/dist/antd.less';\r\nimport App from './App'\r\nimport router from './router'\r\nimport { VueAxios } from './utils/request'\r\nimport IpcRenderer from '@/utils/ipcRenderer'\r\n\r\n// 使用antd\r\nVue.use(antd)\r\n\r\n// mount axios to `Vue.$http` and `this.$http`\r\nVue.use(VueAxios)\r\n\r\n// 全局注入IPC通信\r\nVue.use(IpcRenderer)\r\n\r\nVue.config.productionTip = false\r\n\r\nnew Vue({\r\n router,\r\n render: h => h(App)\r\n}).$mount('#app')\r\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Menu.vue?vue&type=style&index=0&id=4541d966&lang=less&scoped=true&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppSider.vue?vue&type=style&index=0&id=b03bc458&lang=less&scoped=true&\"","const VueAxios = {\r\n vm: {},\r\n // eslint-disable-next-line no-unused-vars\r\n install (Vue, instance) {\r\n if (this.installed) {\r\n return\r\n }\r\n this.installed = true\r\n\r\n if (!instance) {\r\n // eslint-disable-next-line no-console\r\n console.error('You have to install axios')\r\n return\r\n }\r\n\r\n Vue.axios = instance\r\n\r\n Object.defineProperties(Vue.prototype, {\r\n axios: {\r\n get: function get () {\r\n return instance\r\n }\r\n },\r\n $http: {\r\n get: function get () {\r\n return instance\r\n }\r\n }\r\n })\r\n }\r\n}\r\n\r\nexport {\r\n VueAxios\r\n}\r\n","import axios from 'axios'\r\nimport storage from 'store2'\r\nimport notification from 'ant-design-vue/es/notification'\r\nimport { VueAxios } from './axios'\r\n\r\n// 创建 axios 实例\r\nconst request = axios.create({\r\n // API 请求的默认前缀\r\n baseURL: process.env.VUE_APP_API_BASE_URL,\r\n timeout: 60000, // 请求超时时间\r\n //headers: {'Content-Type': 'multipart/form-data'}\r\n})\r\n\r\n// 异常拦截处理器\r\nconst errorHandler = (error) => {\r\n if (error.response) {\r\n const data = error.response.data\r\n if (error.response.status === 403) {\r\n notification.error({\r\n message: 'Forbidden',\r\n description: data.message\r\n })\r\n }\r\n if (error.response.status === 401 && !(data.result && data.result.isLogin)) {\r\n notification.error({\r\n message: 'Unauthorized',\r\n description: 'Authorization verification failed'\r\n })\r\n }\r\n }\r\n return Promise.reject(error)\r\n}\r\n\r\n// request interceptor\r\nrequest.interceptors.request.use(config => {\r\n const token = storage.get('token')\r\n // 如果 token 存在\r\n // 让每个请求携带自定义 token 请根据实际情况自行修改\r\n if (token) {\r\n config.headers['Access-Token'] = token\r\n }\r\n return config\r\n}, errorHandler)\r\n\r\n// response interceptor\r\nrequest.interceptors.response.use((response) => {\r\n return response.data\r\n}, errorHandler)\r\n\r\nconst installer = {\r\n vm: {},\r\n install (Vue) {\r\n Vue.use(VueAxios, request)\r\n }\r\n}\r\n\r\nexport default request\r\n\r\nexport {\r\n installer as VueAxios,\r\n request as axios\r\n}\r\n","module.exports = __webpack_public_path__ + \"img/logo.18776b4e.png\";"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/App.vue?7e02","webpack:///./node_modules/moment/locale sync ^\\.\\/.*$","webpack:///./src/App.vue?cd66","webpack:///src/App.vue","webpack:///./src/App.vue?1160","webpack:///./src/App.vue","webpack:///./src/layouts/AppSider.vue?866f","webpack:///src/layouts/AppSider.vue","webpack:///./src/layouts/AppSider.vue?417f","webpack:///./src/layouts/AppSider.vue","webpack:///./src/layouts/Menu.vue?4ff4","webpack:///./src/config/subMenu.js","webpack:///src/layouts/Menu.vue","webpack:///./src/layouts/Menu.vue?6012","webpack:///./src/layouts/Menu.vue","webpack:///./src/config/router.config.js","webpack:///./src/router/index.js","webpack:///./src/utils/ipcRenderer.js","webpack:///./src/main.js","webpack:///./src/layouts/Menu.vue?2cc1","webpack:///./src/layouts/AppSider.vue?0b04","webpack:///./src/utils/axios.js","webpack:///./src/utils/request.js","webpack:///./src/assets/logo.png"],"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","map","webpackContext","req","id","webpackContextResolve","keys","_vm","this","_h","$createElement","_c","_self","attrs","staticRenderFns","components","watch","methods","component","staticClass","model","callback","$$v","collapsed","expression","default_key","on","menuHandle","_l","menuInfo","index","icon","_v","_s","title","current","menu","pageName","params","created","mounted","log","linkInfo","$router","menuClick","subIndex","base","other","props","String","default","subMenu","RouteView","render","h","constantRouterMap","path","AppSider","children","Menu","redirect","originalPush","Router","location","onResolve","onReject","catch","Vue","use","routes","require","electron","ipc","ipcRenderer","invoke","channel","param","sendSync","install","$ipc","$ipcInvoke","$ipcSendSync","antd","VueAxios","IpcRenderer","config","productionTip","router","App","$mount","vm","instance","installed","axios","defineProperties","$http","baseURL","process","errorHandler","response","status","notification","description","isLogin","interceptors","token","storage","headers","installer"],"mappings":"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","file":"js/app.63b3794d.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-1af754fa\":\"55a34e0c\",\"chunk-3264b806\":\"44cd983f\",\"chunk-340486ec\":\"b471409f\",\"chunk-3e5d8082\":\"cc03b6c8\",\"chunk-4c09bacb\":\"5b30c54b\",\"chunk-4db20436\":\"34f9cd3c\",\"chunk-4becffd5\":\"06d63bca\",\"chunk-98f99a2c\":\"37a706b7\",\"chunk-4fd6d7f0\":\"8df2e44b\",\"chunk-57324832\":\"145f7aff\",\"chunk-5d990344\":\"8f1d8dd0\",\"chunk-6cddf9c4\":\"d61e8a4d\",\"chunk-7e1f652a\":\"c277dff9\",\"chunk-842aee10\":\"a4890172\",\"chunk-8583df3c\":\"6a847b20\",\"chunk-a9fbadf0\":\"09c9e937\",\"chunk-b4234658\":\"1403c33c\",\"chunk-d7b56b58\":\"a77a91d0\",\"chunk-d82e415e\":\"538c7348\",\"chunk-e2c4ac18\":\"ddf06e8b\"}[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-1af754fa\":1,\"chunk-3264b806\":1,\"chunk-340486ec\":1,\"chunk-3e5d8082\":1,\"chunk-4c09bacb\":1,\"chunk-4becffd5\":1,\"chunk-98f99a2c\":1,\"chunk-4fd6d7f0\":1,\"chunk-57324832\":1,\"chunk-5d990344\":1,\"chunk-6cddf9c4\":1,\"chunk-7e1f652a\":1,\"chunk-842aee10\":1,\"chunk-8583df3c\":1,\"chunk-a9fbadf0\":1,\"chunk-b4234658\":1,\"chunk-d7b56b58\":1,\"chunk-d82e415e\":1,\"chunk-e2c4ac18\":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-1af754fa\":\"e1e0247d\",\"chunk-3264b806\":\"ab0373ec\",\"chunk-340486ec\":\"d07903e2\",\"chunk-3e5d8082\":\"9bb68a1d\",\"chunk-4c09bacb\":\"5556c59f\",\"chunk-4db20436\":\"31d6cfe0\",\"chunk-4becffd5\":\"38774961\",\"chunk-98f99a2c\":\"e8a7c696\",\"chunk-4fd6d7f0\":\"83845a9b\",\"chunk-57324832\":\"80096fc0\",\"chunk-5d990344\":\"6bcfc99c\",\"chunk-6cddf9c4\":\"2f12db76\",\"chunk-7e1f652a\":\"286494f0\",\"chunk-842aee10\":\"0c43dff1\",\"chunk-8583df3c\":\"87d5fe76\",\"chunk-a9fbadf0\":\"baa718b4\",\"chunk-b4234658\":\"6a07402f\",\"chunk-d7b56b58\":\"d635b2f3\",\"chunk-d82e415e\":\"e6ab9c20\",\"chunk-e2c4ac18\":\"5cf6519b\"}[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","export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&lang=css&\"","var map = {\n\t\"./af\": \"2bfb\",\n\t\"./af.js\": \"2bfb\",\n\t\"./ar\": \"8e73\",\n\t\"./ar-dz\": \"a356\",\n\t\"./ar-dz.js\": \"a356\",\n\t\"./ar-kw\": \"423e\",\n\t\"./ar-kw.js\": \"423e\",\n\t\"./ar-ly\": \"1cfd\",\n\t\"./ar-ly.js\": \"1cfd\",\n\t\"./ar-ma\": \"0a84\",\n\t\"./ar-ma.js\": \"0a84\",\n\t\"./ar-sa\": \"8230\",\n\t\"./ar-sa.js\": \"8230\",\n\t\"./ar-tn\": \"6d83\",\n\t\"./ar-tn.js\": \"6d83\",\n\t\"./ar.js\": \"8e73\",\n\t\"./az\": \"485c\",\n\t\"./az.js\": \"485c\",\n\t\"./be\": \"1fc1\",\n\t\"./be.js\": \"1fc1\",\n\t\"./bg\": \"84aa\",\n\t\"./bg.js\": \"84aa\",\n\t\"./bm\": \"a7fa\",\n\t\"./bm.js\": \"a7fa\",\n\t\"./bn\": \"9043\",\n\t\"./bn-bd\": \"9686\",\n\t\"./bn-bd.js\": \"9686\",\n\t\"./bn.js\": \"9043\",\n\t\"./bo\": \"d26a\",\n\t\"./bo.js\": \"d26a\",\n\t\"./br\": \"6887\",\n\t\"./br.js\": \"6887\",\n\t\"./bs\": \"2554\",\n\t\"./bs.js\": \"2554\",\n\t\"./ca\": \"d716\",\n\t\"./ca.js\": \"d716\",\n\t\"./cs\": \"3c0d\",\n\t\"./cs.js\": \"3c0d\",\n\t\"./cv\": \"03ec\",\n\t\"./cv.js\": \"03ec\",\n\t\"./cy\": \"9797\",\n\t\"./cy.js\": \"9797\",\n\t\"./da\": \"0f14\",\n\t\"./da.js\": \"0f14\",\n\t\"./de\": \"b469\",\n\t\"./de-at\": \"b3eb\",\n\t\"./de-at.js\": \"b3eb\",\n\t\"./de-ch\": \"bb71\",\n\t\"./de-ch.js\": \"bb71\",\n\t\"./de.js\": \"b469\",\n\t\"./dv\": \"598a\",\n\t\"./dv.js\": \"598a\",\n\t\"./el\": \"8d47\",\n\t\"./el.js\": \"8d47\",\n\t\"./en-au\": \"0e6b\",\n\t\"./en-au.js\": \"0e6b\",\n\t\"./en-ca\": \"3886\",\n\t\"./en-ca.js\": \"3886\",\n\t\"./en-gb\": \"39a6\",\n\t\"./en-gb.js\": \"39a6\",\n\t\"./en-ie\": \"e1d3\",\n\t\"./en-ie.js\": \"e1d3\",\n\t\"./en-il\": \"7333\",\n\t\"./en-il.js\": \"7333\",\n\t\"./en-in\": \"ec2e\",\n\t\"./en-in.js\": \"ec2e\",\n\t\"./en-nz\": \"6f50\",\n\t\"./en-nz.js\": \"6f50\",\n\t\"./en-sg\": \"b7e9\",\n\t\"./en-sg.js\": \"b7e9\",\n\t\"./eo\": \"65db\",\n\t\"./eo.js\": \"65db\",\n\t\"./es\": \"898b\",\n\t\"./es-do\": \"0a3c\",\n\t\"./es-do.js\": \"0a3c\",\n\t\"./es-mx\": \"b5b7\",\n\t\"./es-mx.js\": \"b5b7\",\n\t\"./es-us\": \"55c9\",\n\t\"./es-us.js\": \"55c9\",\n\t\"./es.js\": \"898b\",\n\t\"./et\": \"ec18\",\n\t\"./et.js\": \"ec18\",\n\t\"./eu\": \"0ff2\",\n\t\"./eu.js\": \"0ff2\",\n\t\"./fa\": \"8df4\",\n\t\"./fa.js\": \"8df4\",\n\t\"./fi\": \"81e9\",\n\t\"./fi.js\": \"81e9\",\n\t\"./fil\": \"d69a\",\n\t\"./fil.js\": \"d69a\",\n\t\"./fo\": \"0721\",\n\t\"./fo.js\": \"0721\",\n\t\"./fr\": \"9f26\",\n\t\"./fr-ca\": \"d9f8\",\n\t\"./fr-ca.js\": \"d9f8\",\n\t\"./fr-ch\": \"0e49\",\n\t\"./fr-ch.js\": \"0e49\",\n\t\"./fr.js\": \"9f26\",\n\t\"./fy\": \"7118\",\n\t\"./fy.js\": \"7118\",\n\t\"./ga\": \"5120\",\n\t\"./ga.js\": \"5120\",\n\t\"./gd\": \"f6b4\",\n\t\"./gd.js\": \"f6b4\",\n\t\"./gl\": \"8840\",\n\t\"./gl.js\": \"8840\",\n\t\"./gom-deva\": \"aaf2\",\n\t\"./gom-deva.js\": \"aaf2\",\n\t\"./gom-latn\": \"0caa\",\n\t\"./gom-latn.js\": \"0caa\",\n\t\"./gu\": \"e0c5\",\n\t\"./gu.js\": \"e0c5\",\n\t\"./he\": \"c7aa\",\n\t\"./he.js\": \"c7aa\",\n\t\"./hi\": \"dc4d\",\n\t\"./hi.js\": \"dc4d\",\n\t\"./hr\": \"4ba9\",\n\t\"./hr.js\": \"4ba9\",\n\t\"./hu\": \"5b14\",\n\t\"./hu.js\": \"5b14\",\n\t\"./hy-am\": \"d6b6\",\n\t\"./hy-am.js\": \"d6b6\",\n\t\"./id\": \"5038\",\n\t\"./id.js\": \"5038\",\n\t\"./is\": \"0558\",\n\t\"./is.js\": \"0558\",\n\t\"./it\": \"6e98\",\n\t\"./it-ch\": \"6f12\",\n\t\"./it-ch.js\": \"6f12\",\n\t\"./it.js\": \"6e98\",\n\t\"./ja\": \"079e\",\n\t\"./ja.js\": \"079e\",\n\t\"./jv\": \"b540\",\n\t\"./jv.js\": \"b540\",\n\t\"./ka\": \"201b\",\n\t\"./ka.js\": \"201b\",\n\t\"./kk\": \"6d79\",\n\t\"./kk.js\": \"6d79\",\n\t\"./km\": \"e81d\",\n\t\"./km.js\": \"e81d\",\n\t\"./kn\": \"3e92\",\n\t\"./kn.js\": \"3e92\",\n\t\"./ko\": \"22f8\",\n\t\"./ko.js\": \"22f8\",\n\t\"./ku\": \"2421\",\n\t\"./ku.js\": \"2421\",\n\t\"./ky\": \"9609\",\n\t\"./ky.js\": \"9609\",\n\t\"./lb\": \"440c\",\n\t\"./lb.js\": \"440c\",\n\t\"./lo\": \"b29d\",\n\t\"./lo.js\": \"b29d\",\n\t\"./lt\": \"26f9\",\n\t\"./lt.js\": \"26f9\",\n\t\"./lv\": \"b97c\",\n\t\"./lv.js\": \"b97c\",\n\t\"./me\": \"293c\",\n\t\"./me.js\": \"293c\",\n\t\"./mi\": \"688b\",\n\t\"./mi.js\": \"688b\",\n\t\"./mk\": \"6909\",\n\t\"./mk.js\": \"6909\",\n\t\"./ml\": \"02fb\",\n\t\"./ml.js\": \"02fb\",\n\t\"./mn\": \"958b\",\n\t\"./mn.js\": \"958b\",\n\t\"./mr\": \"39bd\",\n\t\"./mr.js\": \"39bd\",\n\t\"./ms\": \"ebe4\",\n\t\"./ms-my\": \"6403\",\n\t\"./ms-my.js\": \"6403\",\n\t\"./ms.js\": \"ebe4\",\n\t\"./mt\": \"1b45\",\n\t\"./mt.js\": \"1b45\",\n\t\"./my\": \"8689\",\n\t\"./my.js\": \"8689\",\n\t\"./nb\": \"6ce3\",\n\t\"./nb.js\": \"6ce3\",\n\t\"./ne\": \"3a39\",\n\t\"./ne.js\": \"3a39\",\n\t\"./nl\": \"facd\",\n\t\"./nl-be\": \"db29\",\n\t\"./nl-be.js\": \"db29\",\n\t\"./nl.js\": \"facd\",\n\t\"./nn\": \"b84c\",\n\t\"./nn.js\": \"b84c\",\n\t\"./oc-lnc\": \"167b\",\n\t\"./oc-lnc.js\": \"167b\",\n\t\"./pa-in\": \"f3ff\",\n\t\"./pa-in.js\": \"f3ff\",\n\t\"./pl\": \"8d57\",\n\t\"./pl.js\": \"8d57\",\n\t\"./pt\": \"f260\",\n\t\"./pt-br\": \"d2d4\",\n\t\"./pt-br.js\": \"d2d4\",\n\t\"./pt.js\": \"f260\",\n\t\"./ro\": \"972c\",\n\t\"./ro.js\": \"972c\",\n\t\"./ru\": \"957c\",\n\t\"./ru.js\": \"957c\",\n\t\"./sd\": \"6784\",\n\t\"./sd.js\": \"6784\",\n\t\"./se\": \"ffff\",\n\t\"./se.js\": \"ffff\",\n\t\"./si\": \"eda5\",\n\t\"./si.js\": \"eda5\",\n\t\"./sk\": \"7be6\",\n\t\"./sk.js\": \"7be6\",\n\t\"./sl\": \"8155\",\n\t\"./sl.js\": \"8155\",\n\t\"./sq\": \"c8f3\",\n\t\"./sq.js\": \"c8f3\",\n\t\"./sr\": \"cf1e\",\n\t\"./sr-cyrl\": \"13e9\",\n\t\"./sr-cyrl.js\": \"13e9\",\n\t\"./sr.js\": \"cf1e\",\n\t\"./ss\": \"52bd\",\n\t\"./ss.js\": \"52bd\",\n\t\"./sv\": \"5fbd\",\n\t\"./sv.js\": \"5fbd\",\n\t\"./sw\": \"74dc\",\n\t\"./sw.js\": \"74dc\",\n\t\"./ta\": \"3de5\",\n\t\"./ta.js\": \"3de5\",\n\t\"./te\": \"5cbb\",\n\t\"./te.js\": \"5cbb\",\n\t\"./tet\": \"576c\",\n\t\"./tet.js\": \"576c\",\n\t\"./tg\": \"3b1b\",\n\t\"./tg.js\": \"3b1b\",\n\t\"./th\": \"10e8\",\n\t\"./th.js\": \"10e8\",\n\t\"./tk\": \"5aff\",\n\t\"./tk.js\": \"5aff\",\n\t\"./tl-ph\": \"0f38\",\n\t\"./tl-ph.js\": \"0f38\",\n\t\"./tlh\": \"cf75\",\n\t\"./tlh.js\": \"cf75\",\n\t\"./tr\": \"0e81\",\n\t\"./tr.js\": \"0e81\",\n\t\"./tzl\": \"cf51\",\n\t\"./tzl.js\": \"cf51\",\n\t\"./tzm\": \"c109\",\n\t\"./tzm-latn\": \"b53d\",\n\t\"./tzm-latn.js\": \"b53d\",\n\t\"./tzm.js\": \"c109\",\n\t\"./ug-cn\": \"6117\",\n\t\"./ug-cn.js\": \"6117\",\n\t\"./uk\": \"ada2\",\n\t\"./uk.js\": \"ada2\",\n\t\"./ur\": \"5294\",\n\t\"./ur.js\": \"5294\",\n\t\"./uz\": \"2e8c\",\n\t\"./uz-latn\": \"010e\",\n\t\"./uz-latn.js\": \"010e\",\n\t\"./uz.js\": \"2e8c\",\n\t\"./vi\": \"2921\",\n\t\"./vi.js\": \"2921\",\n\t\"./x-pseudo\": \"fd7e\",\n\t\"./x-pseudo.js\": \"fd7e\",\n\t\"./yo\": \"7f33\",\n\t\"./yo.js\": \"7f33\",\n\t\"./zh-cn\": \"5c3a\",\n\t\"./zh-cn.js\": \"5c3a\",\n\t\"./zh-hk\": \"49ab\",\n\t\"./zh-hk.js\": \"49ab\",\n\t\"./zh-mo\": \"3a6c\",\n\t\"./zh-mo.js\": \"3a6c\",\n\t\"./zh-tw\": \"90ea\",\n\t\"./zh-tw.js\": \"90ea\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"4678\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"app\"}},[_c('router-view')],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--12-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-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--12-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-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=30547c66&\"\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&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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('a-layout',{attrs:{\"id\":\"app-layout-sider\"}},[_c('a-layout-sider',{staticClass:\"layout-sider\",attrs:{\"theme\":\"light\"},model:{value:(_vm.collapsed),callback:function ($$v) {_vm.collapsed=$$v},expression:\"collapsed\"}},[_c('div',{staticClass:\"logo\"},[_c('img',{staticClass:\"pic-logo\",attrs:{\"src\":require(\"@/assets/logo.png\")}})]),_c('a-menu',{staticClass:\"menu-item\",attrs:{\"theme\":\"light\",\"mode\":\"inline\",\"default-selected-keys\":[_vm.default_key]},on:{\"click\":_vm.menuHandle}},_vm._l((_vm.menu),function(menuInfo,index){return _c('a-menu-item',{key:index},[_c('a-icon',{attrs:{\"type\":menuInfo.icon}}),_vm._v(\" \"+_vm._s(menuInfo.title)+\" \")],1)}),1)],1),_c('a-layout',[_c('a-layout-content',{staticClass:\"layout-content\"},[_c('router-view')],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppSider.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppSider.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AppSider.vue?vue&type=template&id=b03bc458&scoped=true&\"\nimport script from \"./AppSider.vue?vue&type=script&lang=js&\"\nexport * from \"./AppSider.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AppSider.vue?vue&type=style&index=0&id=b03bc458&lang=less&scoped=true&\"\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 \"b03bc458\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('a-layout',{attrs:{\"id\":\"app-menu\"}},[_c('a-layout-sider',{staticClass:\"layout-sider\",attrs:{\"theme\":\"light\"}},[_c('a-menu',{attrs:{\"theme\":\"light\",\"mode\":\"inline\",\"default-selected-keys\":[_vm.default_key],\"selected-keys\":[_vm.current]},on:{\"click\":_vm.menuClick}},_vm._l((_vm.menu),function(menuInfo,subIndex){return _c('a-menu-item',{key:subIndex},[_c('router-link',{attrs:{\"to\":{ name: menuInfo.pageName, params: menuInfo.params}}},[_c('span',[_vm._v(_vm._s(menuInfo.title))])])],1)}),1)],1),_c('a-layout',[_c('a-layout-content',[_c('router-view')],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\r\n * 子菜单\r\n */\r\nexport default {\r\n\tbase: {\r\n\t\t'menu_100' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: '文件',\r\n\t\t\tpageName: 'BaseFileIndex',\r\n\t\t\tparams: {}\r\n\t\t},\r\n\t\t'menu_300' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: '通信',\r\n\t\t\tpageName: 'BaseSocketIpc',\r\n\t\t\tparams: {}\r\n\t\t},\r\n\t\t'menu_301' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: 'http服务',\r\n\t\t\tpageName: 'BaseSocketHttpServer',\r\n\t\t\tparams: {}\r\n\t\t},\r\n\t\t'menu_302' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: 'socket服务',\r\n\t\t\tpageName: 'BaseSocketSocketServer',\r\n\t\t\tparams: {}\r\n\t\t}, \r\n\t\t'menu_310' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: 'json数据库',\r\n\t\t\tpageName: 'BaseDBIndex',\r\n\t\t\tparams: {}\r\n\t\t},\r\n\t\t'menu_320' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: 'sqlite数据库',\r\n\t\t\tpageName: 'BaseSqliteDBIndex',\r\n\t\t\tparams: {}\r\n\t\t},\r\n\t\t'menu_400' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: '视图',\r\n\t\t\tpageName: 'BaseWindowViewIndex',\r\n\t\t\tparams: {}\r\n\t\t},\r\n\t\t'menu_401' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: '窗口',\r\n\t\t\tpageName: 'BaseWindowIndex',\r\n\t\t\tparams: {}\r\n\t\t},\r\n\t\t'menu_405' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: '桌面通知',\r\n\t\t\tpageName: 'BaseNotificationIndex',\r\n\t\t\tparams: {}\r\n\t\t},\r\n\t\t'menu_407' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: '电源监控',\r\n\t\t\tpageName: 'BasePowerMonitorIndex',\r\n\t\t\tparams: {}\r\n\t\t},\r\n\t\t'menu_409' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: '屏幕信息',\r\n\t\t\tpageName: 'BaseScreenIndex',\r\n\t\t\tparams: {}\r\n\t\t},\r\n\t\t'menu_411' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: '系统主题',\r\n\t\t\tpageName: 'BaseThemeIndex',\r\n\t\t\tparams: {}\r\n\t\t}, \r\n\t\t'menu_412' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: '自动更新',\r\n\t\t\tpageName: 'BaseUpdaterIndex',\r\n\t\t\tparams: {}\r\n\t\t}, \r\n\t\t'menu_500' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: '软件调用',\r\n\t\t\tpageName: 'BaseSoftwareIndex',\r\n\t\t\tparams: {}\r\n\t\t},\t\t\r\n\t\t'menu_900' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: '测试',\r\n\t\t\tpageName: 'BaseTestApiIndex',\r\n\t\t\tparams: {}\r\n\t\t} \r\n\t},\r\n\tother: {\r\n\t\t'menu_100' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: '测试',\r\n\t\t\tpageName: 'OtherTestIndex',\r\n\t\t\tparams: {}\r\n\t\t},\r\n\t\t'menu_200' : {\r\n\t\t\ticon: 'profile',\r\n\t\t\ttitle: 'java',\r\n\t\t\tpageName: 'OtherJavaIndex',\r\n\t\t\tparams: {}\r\n\t\t},\r\n\t}\r\n}\r\n","\r\n\r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Menu.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Menu.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Menu.vue?vue&type=template&id=4541d966&scoped=true&\"\nimport script from \"./Menu.vue?vue&type=script&lang=js&\"\nexport * from \"./Menu.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Menu.vue?vue&type=style&index=0&id=4541d966&lang=less&scoped=true&\"\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 \"4541d966\",\n null\n \n)\n\nexport default component.exports","/**\r\n * 基础路由\r\n * @type { *[] }\r\n */\r\nimport {AppSider, Menu} from '@/layouts'\r\n\r\nconst RouteView = {\r\n name: 'RouteView',\r\n render: h => h('router-view')\r\n}\r\n\r\nexport const constantRouterMap = [\r\n {\r\n path: '/',\r\n component: AppSider,\r\n children: [\r\n {\r\n path: '/base',\r\n name: 'Base',\r\n component: Menu,\r\n props: { id: 'base' },\r\n redirect: { name: 'BaseFileIndex' },\r\n children: [\r\n {\r\n path: '/base/file/index',\r\n name: 'BaseFileIndex',\r\n component: () => import('@/views/base/file/Index')\r\n },\r\n {\r\n path: '/base/socket/ipc',\r\n name: 'BaseSocketIpc',\r\n component: () => import('@/views/base/socket/Ipc')\r\n },\r\n {\r\n path: '/base/db/index',\r\n name: 'BaseDBIndex',\r\n component: () => import('@/views/base/db/Index')\r\n },\r\n {\r\n path: '/base/sqlitedb/index',\r\n name: 'BaseSqliteDBIndex',\r\n component: () => import('@/views/base/sqlitedb/Index')\r\n },\r\n {\r\n path: '/base/windowview/index',\r\n name: 'BaseWindowViewIndex',\r\n component: () => import('@/views/base/windowview/Index')\r\n },\r\n {\r\n path: '/base/window/index',\r\n name: 'BaseWindowIndex',\r\n component: () => import('@/views/base/window/Index')\r\n },\r\n {\r\n path: '/base/notification/index',\r\n name: 'BaseNotificationIndex',\r\n component: () => import('@/views/base/notification/Index')\r\n },\r\n {\r\n path: '/base/powermonitor/index',\r\n name: 'BasePowerMonitorIndex',\r\n component: () => import('@/views/base/powermonitor/Index')\r\n },\r\n {\r\n path: '/base/screen/index',\r\n name: 'BaseScreenIndex',\r\n component: () => import('@/views/base/screen/Index')\r\n },\r\n {\r\n path: '/base/theme/index',\r\n name: 'BaseThemeIndex',\r\n component: () => import('@/views/base/theme/Index')\r\n }, \r\n {\r\n path: '/base/software/index',\r\n name: 'BaseSoftwareIndex',\r\n component: () => import('@/views/base/software/Index')\r\n },\r\n {\r\n path: '/base/socket/httpserver',\r\n name: 'BaseSocketHttpServer',\r\n component: () => import('@/views/base/socket/HttpServer')\r\n },\r\n {\r\n path: '/base/socket/socketserver',\r\n name: 'BaseSocketSocketServer',\r\n component: () => import('@/views/base/socket/SocketServer')\r\n }, \r\n {\r\n path: '/base/system/index',\r\n name: 'BaseSystemIndex',\r\n component: () => import('@/views/base/system/Index')\r\n },\r\n {\r\n path: '/base/testapi/index',\r\n name: 'BaseTestApiIndex',\r\n component: () => import('@/views/base/testapi/Index')\r\n },\r\n {\r\n path: '/base/updater/index',\r\n name: 'BaseUpdaterIndex',\r\n component: () => import('@/views/base/updater/Index')\r\n }, \r\n ] \r\n },\r\n {\r\n path: '/other',\r\n name: 'Other',\r\n component: Menu,\r\n props: { id: 'other' },\r\n redirect: { name: 'OtherTestIndex' },\r\n children: [\r\n {\r\n path: '/other/test/index',\r\n name: 'OtherTestIndex',\r\n component: () => import('@/views/other/test/Index')\r\n },\r\n {\r\n path: '/other/java/index',\r\n name: 'OtherJavaIndex',\r\n component: () => import('@/views/other/java/Index')\r\n }\r\n ] \r\n }\r\n ]\r\n },\r\n {\r\n path: '/special',\r\n component: RouteView,\r\n //redirect: '/special/subwindow',\r\n children: [\r\n {\r\n path: 'subwindow',\r\n name: 'SpecialSubwindowIpc',\r\n component: () => import('@/views/base/subwindow/Ipc')\r\n }\r\n ]\r\n },\r\n]\r\n","import Vue from 'vue'\r\nimport Router from 'vue-router'\r\nimport { constantRouterMap } from '@/config/router.config'\r\n\r\n// hack router push callback\r\nconst originalPush = Router.prototype.push\r\nRouter.prototype.push = function push (location, onResolve, onReject) {\r\n if (onResolve || onReject) return originalPush.call(this, location, onResolve, onReject)\r\n return originalPush.call(this, location).catch(err => err)\r\n}\r\n\r\nVue.use(Router)\r\n\r\nexport default new Router({\r\n mode: 'hash',\r\n routes: constantRouterMap\r\n})\r\n","const { ipcRenderer: ipc } = (window.require && window.require('electron')) || window.electron || {}\r\n\r\n/**\r\n * 发送异步消息(invoke/handle 模型)\r\n * @param channel\r\n * @param param\r\n * @returns {Promise}\r\n */\r\nconst invoke = (channel, param) => {\r\n const message = ipc.invoke(channel, param);\r\n return message;\r\n}\r\n\r\n/**\r\n * 发送同步消息(send/on 模型)\r\n * @param channel\r\n * @param param\r\n * @returns {Any}\r\n */\r\nconst sendSync = (channel, param) => {\r\n const message = ipc.sendSync(channel, param);\r\n return message;\r\n}\r\n\r\nexport default {\r\n install(Vue) {\r\n Vue.prototype.$ipc = ipc // 全局注入ipc\r\n Vue.prototype.$ipcInvoke = invoke\r\n Vue.prototype.$ipcSendSync = sendSync\r\n }\r\n}\r\n","import Vue from 'vue'\r\nimport antd from 'ant-design-vue'\r\nimport 'ant-design-vue/dist/antd.less';\r\nimport App from './App'\r\nimport router from './router'\r\nimport { VueAxios } from './utils/request'\r\nimport IpcRenderer from '@/utils/ipcRenderer'\r\n\r\n// 使用antd\r\nVue.use(antd)\r\n\r\n// mount axios to `Vue.$http` and `this.$http`\r\nVue.use(VueAxios)\r\n\r\n// 全局注入IPC通信\r\nVue.use(IpcRenderer)\r\n\r\nVue.config.productionTip = false\r\n\r\nnew Vue({\r\n router,\r\n render: h => h(App)\r\n}).$mount('#app')\r\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Menu.vue?vue&type=style&index=0&id=4541d966&lang=less&scoped=true&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppSider.vue?vue&type=style&index=0&id=b03bc458&lang=less&scoped=true&\"","const VueAxios = {\r\n vm: {},\r\n // eslint-disable-next-line no-unused-vars\r\n install (Vue, instance) {\r\n if (this.installed) {\r\n return\r\n }\r\n this.installed = true\r\n\r\n if (!instance) {\r\n // eslint-disable-next-line no-console\r\n console.error('You have to install axios')\r\n return\r\n }\r\n\r\n Vue.axios = instance\r\n\r\n Object.defineProperties(Vue.prototype, {\r\n axios: {\r\n get: function get () {\r\n return instance\r\n }\r\n },\r\n $http: {\r\n get: function get () {\r\n return instance\r\n }\r\n }\r\n })\r\n }\r\n}\r\n\r\nexport {\r\n VueAxios\r\n}\r\n","import axios from 'axios'\r\nimport storage from 'store2'\r\nimport notification from 'ant-design-vue/es/notification'\r\nimport { VueAxios } from './axios'\r\n\r\n// 创建 axios 实例\r\nconst request = axios.create({\r\n // API 请求的默认前缀\r\n baseURL: process.env.VUE_APP_API_BASE_URL,\r\n timeout: 60000, // 请求超时时间\r\n //headers: {'Content-Type': 'multipart/form-data'}\r\n})\r\n\r\n// 异常拦截处理器\r\nconst errorHandler = (error) => {\r\n if (error.response) {\r\n const data = error.response.data\r\n if (error.response.status === 403) {\r\n notification.error({\r\n message: 'Forbidden',\r\n description: data.message\r\n })\r\n }\r\n if (error.response.status === 401 && !(data.result && data.result.isLogin)) {\r\n notification.error({\r\n message: 'Unauthorized',\r\n description: 'Authorization verification failed'\r\n })\r\n }\r\n }\r\n return Promise.reject(error)\r\n}\r\n\r\n// request interceptor\r\nrequest.interceptors.request.use(config => {\r\n const token = storage.get('token')\r\n // 如果 token 存在\r\n // 让每个请求携带自定义 token 请根据实际情况自行修改\r\n if (token) {\r\n config.headers['Access-Token'] = token\r\n }\r\n return config\r\n}, errorHandler)\r\n\r\n// response interceptor\r\nrequest.interceptors.response.use((response) => {\r\n return response.data\r\n}, errorHandler)\r\n\r\nconst installer = {\r\n vm: {},\r\n install (Vue) {\r\n Vue.use(VueAxios, request)\r\n }\r\n}\r\n\r\nexport default request\r\n\r\nexport {\r\n installer as VueAxios,\r\n request as axios\r\n}\r\n","module.exports = __webpack_public_path__ + \"img/logo.18776b4e.png\";"],"sourceRoot":""} \ No newline at end of file diff --git a/public/dist/js/chunk-4c09bacb.5b30c54b.js b/public/dist/js/chunk-4c09bacb.5b30c54b.js new file mode 100644 index 0000000..c7371bd --- /dev/null +++ b/public/dist/js/chunk-4c09bacb.5b30c54b.js @@ -0,0 +1,2 @@ +(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-4c09bacb"],{"022e":function(e,t,n){"use strict";n.r(t);var a=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{attrs:{id:"app-base-db"}},[e._m(0),n("div",{staticClass:"one-block-2"},[n("a-row",[n("a-col",{attrs:{span:8}},[e._v(" • 大数据量: 0-1024GB(单库) ")]),n("a-col",{attrs:{span:8}},[e._v(" • 高性能 ")]),n("a-col",{attrs:{span:8}},[e._v(" • 类mysql语法 ")])],1)],1),e._m(1),n("div",{staticClass:"one-block-2"},[n("a-row",[n("a-col",{attrs:{span:12}},[n("a-input",{attrs:{value:e.data_dir,"addon-before":"数据目录"},model:{value:e.data_dir,callback:function(t){e.data_dir=t},expression:"data_dir"}})],1),n("a-col",{attrs:{span:2}}),n("a-col",{attrs:{span:5}},[n("a-button",{on:{click:e.selectDir}},[e._v(" 修改目录 ")])],1),n("a-col",{attrs:{span:5}},[n("a-button",{on:{click:e.openDir}},[e._v(" 打开目录 ")])],1)],1)],1),e._m(2),n("div",{staticClass:"one-block-2"},[n("a-row",[n("a-col",{attrs:{span:24}},[e._v(" "+e._s(e.all_list)+" ")])],1)],1),e._m(3),n("div",{staticClass:"one-block-2"},[n("a-row",[n("a-col",{attrs:{span:6}},[n("a-input",{attrs:{value:e.name,"addon-before":"姓名"},model:{value:e.name,callback:function(t){e.name=t},expression:"name"}})],1),n("a-col",{attrs:{span:3}}),n("a-col",{attrs:{span:6}},[n("a-input",{attrs:{value:e.age,"addon-before":"年龄"},model:{value:e.age,callback:function(t){e.age=t},expression:"age"}})],1),n("a-col",{attrs:{span:3}}),n("a-col",{attrs:{span:6}},[n("a-button",{on:{click:function(t){return e.sqlitedbOperation("add")}}},[e._v(" 添加 ")])],1)],1)],1),e._m(4),n("div",{staticClass:"one-block-2"},[n("a-row",[n("a-col",{attrs:{span:6}},[n("a-input",{attrs:{value:e.search_age,"addon-before":"年龄"},model:{value:e.search_age,callback:function(t){e.search_age=t},expression:"search_age"}})],1),n("a-col",{attrs:{span:3}}),n("a-col",{attrs:{span:6}}),n("a-col",{attrs:{span:3}}),n("a-col",{attrs:{span:6}},[n("a-button",{on:{click:function(t){return e.sqlitedbOperation("get")}}},[e._v(" 查找 ")])],1)],1),n("a-row",[n("a-col",{attrs:{span:24}},[e._v(" "+e._s(e.userList)+" ")])],1)],1),e._m(5),n("div",{staticClass:"one-block-2"},[n("a-row",[n("a-col",{attrs:{span:6}},[n("a-input",{attrs:{value:e.update_name,"addon-before":"姓名(条件)"},model:{value:e.update_name,callback:function(t){e.update_name=t},expression:"update_name"}})],1),n("a-col",{attrs:{span:3}}),n("a-col",{attrs:{span:6}},[n("a-input",{attrs:{value:e.update_age,"addon-before":"年龄"},model:{value:e.update_age,callback:function(t){e.update_age=t},expression:"update_age"}})],1),n("a-col",{attrs:{span:3}}),n("a-col",{attrs:{span:6}},[n("a-button",{on:{click:function(t){return e.sqlitedbOperation("update")}}},[e._v(" 更新 ")])],1)],1)],1),e._m(6),n("div",{staticClass:"one-block-2"},[n("a-row",[n("a-col",{attrs:{span:6}},[n("a-input",{attrs:{value:e.delete_name,"addon-before":"姓名"},model:{value:e.delete_name,callback:function(t){e.delete_name=t},expression:"delete_name"}})],1),n("a-col",{attrs:{span:3}}),n("a-col",{attrs:{span:6}}),n("a-col",{attrs:{span:3}}),n("a-col",{attrs:{span:6}},[n("a-button",{on:{click:function(t){return e.sqlitedbOperation("del")}}},[e._v(" 删除 ")])],1)],1)],1)])},r=[function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"one-block-1"},[n("span",[e._v(" 1. sqlite本地数据库 ")])])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"one-block-1"},[n("span",[e._v(" 2. 数据目录 ")])])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"one-block-1"},[n("span",[e._v(" 3. 测试数据 ")])])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"one-block-1"},[n("span",[e._v(" 4. 添加数据 ")])])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"one-block-1"},[n("span",[e._v(" 4. 获取数据 ")])])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"one-block-1"},[n("span",[e._v(" 5. 修改数据 ")])])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"one-block-1"},[n("span",[e._v(" 6. 删除数据 ")])])}],o=(n("b0c0"),n("a358")),l={data:function(){return{name:"李四",age:20,userList:["空"],search_age:20,update_name:"李四",update_age:31,delete_name:"李四",all_list:["空"],data_dir:""}},mounted:function(){this.init(),this.getAllTestData()},methods:{init:function(){var e=this,t={action:"getDataDir"};this.$ipcInvoke(o["a"].sqlitedbOperation,t).then((function(t){e.data_dir=t.result}))},getAllTestData:function(){var e=this,t={action:"all"};this.$ipcInvoke(o["a"].sqlitedbOperation,t).then((function(t){if(0==t.all_list.length)return!1;e.all_list=t.all_list}))},selectDir:function(){var e=this;this.$ipcInvoke(o["a"].selectFolder,"").then((function(t){e.data_dir=t,e.modifyDataDir(t)}))},openDir:function(){console.log("dd:",this.data_dir),this.$ipcInvoke(o["a"].openDirectory,{id:this.data_dir}).then((function(e){}))},modifyDataDir:function(e){var t=this,n={action:"setDataDir",data_dir:e};this.$ipcInvoke(o["a"].sqlitedbOperation,n).then((function(e){t.all_list=e.all_list}))},sqlitedbOperation:function(e){var t=this,n={action:e,info:{name:this.name,age:parseInt(this.age)},search_age:parseInt(this.search_age),update_name:this.update_name,update_age:parseInt(this.update_age),delete_name:this.delete_name};"add"==e&&0==this.name.length&&t.$message.error("请填写数据"),this.$ipcInvoke(o["a"].sqlitedbOperation,n).then((function(n){if(console.log("res:",n),"get"==e){if(0==n.result.length)return void t.$message.error("没有数据");t.userList=n.result}0!=n.all_list.length?(t.all_list=n.all_list,t.$message.success("success")):t.all_list=["空"]}))}}},i=l,c=(n("a750"),n("2877")),s=Object(c["a"])(i,a,r,!1,null,"5e07180b",null);t["default"]=s.exports},"107c":function(e,t,n){var a=n("d039");e.exports=a((function(){var e=RegExp("(?b)","string".charAt(5));return"b"!==e.exec("b").groups.a||"bc"!=="b".replace(e,"$c")}))},1276:function(e,t,n){"use strict";var a=n("d784"),r=n("44e7"),o=n("825a"),l=n("1d80"),i=n("4840"),c=n("8aa5"),s=n("50c4"),u=n("14c3"),p=n("9263"),d=n("9f7f"),f=n("d039"),v=d.UNSUPPORTED_Y,h=[].push,g=Math.min,m=4294967295,x=!f((function(){var e=/(?:)/,t=e.exec;e.exec=function(){return t.apply(this,arguments)};var n="ab".split(e);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));a("split",(function(e,t,n){var a;return a="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(e,n){var a=String(l(this)),o=void 0===n?m:n>>>0;if(0===o)return[];if(void 0===e)return[a];if(!r(e))return t.call(a,e,o);var i,c,s,u=[],d=(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")+(e.sticky?"y":""),f=0,v=new RegExp(e.source,d+"g");while(i=p.call(v,a)){if(c=v.lastIndex,c>f&&(u.push(a.slice(f,i.index)),i.length>1&&i.index=o))break;v.lastIndex===i.index&&v.lastIndex++}return f===a.length?!s&&v.test("")||u.push(""):u.push(a.slice(f)),u.length>o?u.slice(0,o):u}:"0".split(void 0,0).length?function(e,n){return void 0===e&&0===n?[]:t.call(this,e,n)}:t,[function(t,n){var r=l(this),o=void 0==t?void 0:t[e];return void 0!==o?o.call(t,r,n):a.call(String(r),t,n)},function(e,r){var l=n(a,this,e,r,a!==t);if(l.done)return l.value;var p=o(this),d=String(e),f=i(p,RegExp),h=p.unicode,x=(p.ignoreCase?"i":"")+(p.multiline?"m":"")+(p.unicode?"u":"")+(v?"g":"y"),_=new f(v?"^(?:"+p.source+")":p,x),b=void 0===r?m:r>>>0;if(0===b)return[];if(0===d.length)return null===u(_,d)?[d]:[];var w=0,k=0,S=[];while(k0&&(!m.multiline||m.multiline&&"\n"!==e[m.lastIndex-1])&&(S="(?: "+S+")",E=" "+E,I++),n=new RegExp("^(?:"+S+")",k)),h&&(n=new RegExp("^"+S+"$(?!\\s)",k)),f&&(r=m.lastIndex),o=u.call(w?n:m,E),w?o?(o.input=o.input.slice(I),o[0]=o[0].slice(I),o.index=m.lastIndex,m.lastIndex+=o[0].length):m.lastIndex=0:f&&o&&(m.lastIndex=m.global?o.index+o[0].length:r),h&&o&&o.length>1&&p.call(o[0],n,(function(){for(c=1;c\r\n
\r\n
\r\n \r\n 1. sqlite本地数据库\r\n \r\n
\r\n
\r\n \r\n \r\n • 大数据量: 0-1024GB(单库)\r\n \r\n \r\n • 高性能\r\n \r\n \r\n • 类mysql语法\r\n \r\n \r\n
\r\n
\r\n \r\n 2. 数据目录\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n 修改目录\r\n \r\n \r\n \r\n \r\n 打开目录\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n 3. 测试数据\r\n \r\n
\r\n
\r\n \r\n \r\n {{ all_list }}\r\n \r\n \r\n
\r\n
\r\n \r\n 4. 添加数据\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n 添加\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n 4. 获取数据\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n 查找\r\n \r\n \r\n \r\n \r\n \r\n {{ userList }}\r\n \r\n \r\n
\r\n
\r\n \r\n 5. 修改数据\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n 更新\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n 6. 删除数据\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n 删除\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Index.vue?vue&type=template&id=5e07180b&scoped=true&\"\nimport script from \"./Index.vue?vue&type=script&lang=js&\"\nexport * from \"./Index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Index.vue?vue&type=style&index=0&id=5e07180b&lang=less&scoped=true&\"\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 \"5e07180b\",\n null\n \n)\n\nexport default component.exports","var fails = require('./fails');\n\nmodule.exports = fails(function () {\n // babel-minify transpiles RegExp('.', 'g') -> /./g and it causes SyntaxError\n var re = RegExp('(?
b)', (typeof '').charAt(5));\n return re.exec('b').groups.a !== 'b' ||\n 'b'.replace(re, '$c') !== 'bc';\n});\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar isRegExp = require('../internals/is-regexp');\nvar anObject = require('../internals/an-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar speciesConstructor = require('../internals/species-constructor');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar toLength = require('../internals/to-length');\nvar callRegExpExec = require('../internals/regexp-exec-abstract');\nvar regexpExec = require('../internals/regexp-exec');\nvar stickyHelpers = require('../internals/regexp-sticky-helpers');\nvar fails = require('../internals/fails');\n\nvar UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y;\nvar arrayPush = [].push;\nvar min = Math.min;\nvar MAX_UINT32 = 0xFFFFFFFF;\n\n// Chrome 51 has a buggy \"split\" implementation when RegExp#exec !== nativeExec\n// Weex JS has frozen built-in prototypes, so use try / catch wrapper\nvar SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () {\n // eslint-disable-next-line regexp/no-empty-group -- required for testing\n var re = /(?:)/;\n var originalExec = re.exec;\n re.exec = function () { return originalExec.apply(this, arguments); };\n var result = 'ab'.split(re);\n return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b';\n});\n\n// @@split logic\nfixRegExpWellKnownSymbolLogic('split', function (SPLIT, nativeSplit, maybeCallNative) {\n var internalSplit;\n if (\n 'abbc'.split(/(b)*/)[1] == 'c' ||\n // eslint-disable-next-line regexp/no-empty-group -- required for testing\n 'test'.split(/(?:)/, -1).length != 4 ||\n 'ab'.split(/(?:ab)*/).length != 2 ||\n '.'.split(/(.?)(.?)/).length != 4 ||\n // eslint-disable-next-line regexp/no-assertion-capturing-group, regexp/no-empty-group -- required for testing\n '.'.split(/()()/).length > 1 ||\n ''.split(/.?/).length\n ) {\n // based on es5-shim implementation, need to rework it\n internalSplit = function (separator, limit) {\n var string = String(requireObjectCoercible(this));\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (separator === undefined) return [string];\n // If `separator` is not a regex, use native split\n if (!isRegExp(separator)) {\n return nativeSplit.call(string, separator, lim);\n }\n var output = [];\n var flags = (separator.ignoreCase ? 'i' : '') +\n (separator.multiline ? 'm' : '') +\n (separator.unicode ? 'u' : '') +\n (separator.sticky ? 'y' : '');\n var lastLastIndex = 0;\n // Make `global` and avoid `lastIndex` issues by working with a copy\n var separatorCopy = new RegExp(separator.source, flags + 'g');\n var match, lastIndex, lastLength;\n while (match = regexpExec.call(separatorCopy, string)) {\n lastIndex = separatorCopy.lastIndex;\n if (lastIndex > lastLastIndex) {\n output.push(string.slice(lastLastIndex, match.index));\n if (match.length > 1 && match.index < string.length) arrayPush.apply(output, match.slice(1));\n lastLength = match[0].length;\n lastLastIndex = lastIndex;\n if (output.length >= lim) break;\n }\n if (separatorCopy.lastIndex === match.index) separatorCopy.lastIndex++; // Avoid an infinite loop\n }\n if (lastLastIndex === string.length) {\n if (lastLength || !separatorCopy.test('')) output.push('');\n } else output.push(string.slice(lastLastIndex));\n return output.length > lim ? output.slice(0, lim) : output;\n };\n // Chakra, V8\n } else if ('0'.split(undefined, 0).length) {\n internalSplit = function (separator, limit) {\n return separator === undefined && limit === 0 ? [] : nativeSplit.call(this, separator, limit);\n };\n } else internalSplit = nativeSplit;\n\n return [\n // `String.prototype.split` method\n // https://tc39.es/ecma262/#sec-string.prototype.split\n function split(separator, limit) {\n var O = requireObjectCoercible(this);\n var splitter = separator == undefined ? undefined : separator[SPLIT];\n return splitter !== undefined\n ? splitter.call(separator, O, limit)\n : internalSplit.call(String(O), separator, limit);\n },\n // `RegExp.prototype[@@split]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@split\n //\n // NOTE: This cannot be properly polyfilled in engines that don't support\n // the 'y' flag.\n function (string, limit) {\n var res = maybeCallNative(internalSplit, this, string, limit, internalSplit !== nativeSplit);\n if (res.done) return res.value;\n\n var rx = anObject(this);\n var S = String(string);\n var C = speciesConstructor(rx, RegExp);\n\n var unicodeMatching = rx.unicode;\n var flags = (rx.ignoreCase ? 'i' : '') +\n (rx.multiline ? 'm' : '') +\n (rx.unicode ? 'u' : '') +\n (UNSUPPORTED_Y ? 'g' : 'y');\n\n // ^(? + rx + ) is needed, in combination with some S slicing, to\n // simulate the 'y' flag.\n var splitter = new C(UNSUPPORTED_Y ? '^(?:' + rx.source + ')' : rx, flags);\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];\n var p = 0;\n var q = 0;\n var A = [];\n while (q < S.length) {\n splitter.lastIndex = UNSUPPORTED_Y ? 0 : q;\n var z = callRegExpExec(splitter, UNSUPPORTED_Y ? S.slice(q) : S);\n var e;\n if (\n z === null ||\n (e = min(toLength(splitter.lastIndex + (UNSUPPORTED_Y ? q : 0)), S.length)) === p\n ) {\n q = advanceStringIndex(S, q, unicodeMatching);\n } else {\n A.push(S.slice(p, q));\n if (A.length === lim) return A;\n for (var i = 1; i <= z.length - 1; i++) {\n A.push(z[i]);\n if (A.length === lim) return A;\n }\n q = p = e;\n }\n }\n A.push(S.slice(p));\n return A;\n }\n ];\n}, !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC, UNSUPPORTED_Y);\n","var classof = require('./classof-raw');\nvar regexpExec = require('./regexp-exec');\n\n// `RegExpExec` abstract operation\n// https://tc39.es/ecma262/#sec-regexpexec\nmodule.exports = function (R, S) {\n var exec = R.exec;\n if (typeof exec === 'function') {\n var result = exec.call(R, S);\n if (typeof result !== 'object') {\n throw TypeError('RegExp exec method returned something other than an Object or null');\n }\n return result;\n }\n\n if (classof(R) !== 'RegExp') {\n throw TypeError('RegExp#exec called on incompatible receiver');\n }\n\n return regexpExec.call(R, S);\n};\n\n","var isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\n// `IsRegExp` abstract operation\n// https://tc39.es/ecma262/#sec-isregexp\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) == 'RegExp');\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\n\n// `AdvanceStringIndex` abstract operation\n// https://tc39.es/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? charAt(S, index).length : 1);\n};\n","'use strict';\n/* eslint-disable regexp/no-assertion-capturing-group, regexp/no-empty-group, regexp/no-lazy-ends -- testing */\n/* eslint-disable regexp/no-useless-quantifier -- testing */\nvar regexpFlags = require('../internals/regexp-flags');\nvar stickyHelpers = require('../internals/regexp-sticky-helpers');\nvar shared = require('../internals/shared');\nvar create = require('../internals/object-create');\nvar getInternalState = require('../internals/internal-state').get;\nvar UNSUPPORTED_DOT_ALL = require('../internals/regexp-unsupported-dot-all');\nvar UNSUPPORTED_NCG = require('../internals/regexp-unsupported-ncg');\n\nvar nativeExec = RegExp.prototype.exec;\nvar nativeReplace = shared('native-string-replace', String.prototype.replace);\n\nvar patchedExec = nativeExec;\n\nvar UPDATES_LAST_INDEX_WRONG = (function () {\n var re1 = /a/;\n var re2 = /b*/g;\n nativeExec.call(re1, 'a');\n nativeExec.call(re2, 'a');\n return re1.lastIndex !== 0 || re2.lastIndex !== 0;\n})();\n\nvar UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y || stickyHelpers.BROKEN_CARET;\n\n// nonparticipating capturing group, copied from es5-shim's String#split patch.\nvar NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;\n\nvar PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y || UNSUPPORTED_DOT_ALL || UNSUPPORTED_NCG;\n\nif (PATCH) {\n // eslint-disable-next-line max-statements -- TODO\n patchedExec = function exec(str) {\n var re = this;\n var state = getInternalState(re);\n var raw = state.raw;\n var result, reCopy, lastIndex, match, i, object, group;\n\n if (raw) {\n raw.lastIndex = re.lastIndex;\n result = patchedExec.call(raw, str);\n re.lastIndex = raw.lastIndex;\n return result;\n }\n\n var groups = state.groups;\n var sticky = UNSUPPORTED_Y && re.sticky;\n var flags = regexpFlags.call(re);\n var source = re.source;\n var charsAdded = 0;\n var strCopy = str;\n\n if (sticky) {\n flags = flags.replace('y', '');\n if (flags.indexOf('g') === -1) {\n flags += 'g';\n }\n\n strCopy = String(str).slice(re.lastIndex);\n // Support anchored sticky behavior.\n if (re.lastIndex > 0 && (!re.multiline || re.multiline && str[re.lastIndex - 1] !== '\\n')) {\n source = '(?: ' + source + ')';\n strCopy = ' ' + strCopy;\n charsAdded++;\n }\n // ^(? + rx + ) is needed, in combination with some str slicing, to\n // simulate the 'y' flag.\n reCopy = new RegExp('^(?:' + source + ')', flags);\n }\n\n if (NPCG_INCLUDED) {\n reCopy = new RegExp('^' + source + '$(?!\\\\s)', flags);\n }\n if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;\n\n match = nativeExec.call(sticky ? reCopy : re, strCopy);\n\n if (sticky) {\n if (match) {\n match.input = match.input.slice(charsAdded);\n match[0] = match[0].slice(charsAdded);\n match.index = re.lastIndex;\n re.lastIndex += match[0].length;\n } else re.lastIndex = 0;\n } else if (UPDATES_LAST_INDEX_WRONG && match) {\n re.lastIndex = re.global ? match.index + match[0].length : lastIndex;\n }\n if (NPCG_INCLUDED && match && match.length > 1) {\n // Fix browsers whose `exec` methods don't consistently return `undefined`\n // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/\n nativeReplace.call(match[0], reCopy, function () {\n for (i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === undefined) match[i] = undefined;\n }\n });\n }\n\n if (match && groups) {\n match.groups = object = create(null);\n for (i = 0; i < groups.length; i++) {\n group = groups[i];\n object[group[0]] = match[group[1]];\n }\n }\n\n return match;\n };\n}\n\nmodule.exports = patchedExec;\n","var fails = require('../internals/fails');\n\n// babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError,\nvar RE = function (s, f) {\n return RegExp(s, f);\n};\n\nexports.UNSUPPORTED_Y = fails(function () {\n var re = RE('a', 'y');\n re.lastIndex = 2;\n return re.exec('abcd') != null;\n});\n\nexports.BROKEN_CARET = fails(function () {\n // https://bugzilla.mozilla.org/show_bug.cgi?id=773687\n var re = RE('^r', 'gy');\n re.lastIndex = 2;\n return re.exec('str') != null;\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar IndexedObject = require('../internals/indexed-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar nativeJoin = [].join;\n\nvar ES3_STRINGS = IndexedObject != Object;\nvar STRICT_METHOD = arrayMethodIsStrict('join', ',');\n\n// `Array.prototype.join` method\n// https://tc39.es/ecma262/#sec-array.prototype.join\n$({ target: 'Array', proto: true, forced: ES3_STRINGS || !STRICT_METHOD }, {\n join: function join(separator) {\n return nativeJoin.call(toIndexedObject(this), separator === undefined ? ',' : separator);\n }\n});\n","import storage from 'store2'\r\nimport request from '@/utils/request'\r\n\r\n/**\r\n * 路由定义(主进程与渲染进程通信频道定义)\r\n */\r\nconst ipcApiRoute = {\r\n test: 'controller.example.test',\r\n messageShow: 'controller.example.messageShow',\r\n messageShowConfirm: 'controller.example.messageShowConfirm',\r\n selectFolder: 'controller.example.selectFolder',\r\n openDirectory: 'controller.example.openDirectory',\r\n loadViewContent: 'controller.example.loadViewContent',\r\n removeViewContent: 'controller.example.removeViewContent',\r\n createWindow: 'controller.example.createWindow',\r\n sendNotification: 'controller.example.sendNotification',\r\n initPowerMonitor: 'controller.example.initPowerMonitor',\r\n getScreen: 'controller.example.getScreen',\r\n openSoftware: 'controller.example.openSoftware', \r\n autoLaunch: 'controller.example.autoLaunch',\r\n setTheme: 'controller.example.setTheme',\r\n getTheme: 'controller.example.getTheme',\r\n checkForUpdater: 'controller.example.checkForUpdater',\r\n downloadApp: 'controller.example.downloadApp',\r\n dbOperation: 'controller.example.dbOperation',\r\n sqlitedbOperation: 'controller.example.sqlitedbOperation',\r\n uploadFile: 'controller.example.uploadFile',\r\n checkHttpServer: 'controller.example.checkHttpServer',\r\n doHttpRequest: 'controller.example.doHttpRequest',\r\n doSocketRequest: 'controller.example.doSocketRequest',\r\n ipcInvokeMsg: 'controller.example.ipcInvokeMsg',\r\n ipcSendSyncMsg: 'controller.example.ipcSendSyncMsg',\r\n ipcSendMsg: 'controller.example.ipcSendMsg',\r\n getWCid: 'controller.example.getWCid',\r\n startJavaServer: 'controller.example.startJavaServer',\r\n closeJavaServer: 'controller.example.closeJavaServer',\r\n hello: 'controller.example.hello',\r\n}\r\n\r\n/**\r\n * 特殊的路由(频道)定义\r\n */\r\nconst specialIpcRoute = {\r\n appUpdater: 'app.updater', // 此频道在后端也有相同定义\r\n window1ToWindow2: 'window1-to-window2', // 窗口之间通信\r\n window2ToWindow1: 'window2-to-window1', // 窗口之间通信\r\n}\r\n\r\n/**\r\n * 访问内置http服务\r\n */\r\nconst requestHttp = (uri, parameter) => {\r\n // url转换\r\n const config = storage.get('httpServiceConfig');\r\n const host = config.server || 'http://127.0.0.1:7071';\r\n let url = uri.split('.').join('/');\r\n url = host + '/' + url;\r\n console.log('url:', url);\r\n return request({\r\n url: url,\r\n method: 'post', \r\n data: parameter, // body\r\n params: {}, // URL 参数\r\n timeout: 60000,\r\n })\r\n}\r\n\r\nexport {\r\n ipcApiRoute,\r\n specialIpcRoute,\r\n requestHttp,\r\n}\r\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = function (METHOD_NAME, argument) {\n var method = [][METHOD_NAME];\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call,no-throw-literal -- required for testing\n method.call(null, argument || function () { throw 1; }, 1);\n });\n};\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Index.vue?vue&type=style&index=0&id=5e07180b&lang=less&scoped=true&\"","'use strict';\nvar $ = require('../internals/export');\nvar exec = require('../internals/regexp-exec');\n\n// `RegExp.prototype.exec` method\n// https://tc39.es/ecma262/#sec-regexp.prototype.exec\n$({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, {\n exec: exec\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\n\n// `RegExp.prototype.flags` getter implementation\n// https://tc39.es/ecma262/#sec-get-regexp.prototype.flags\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.dotAll) result += 's';\n if (that.unicode) result += 'u';\n if (that.sticky) result += 'y';\n return result;\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar FunctionPrototype = Function.prototype;\nvar FunctionPrototypeToString = FunctionPrototype.toString;\nvar nameRE = /^\\s*function ([^ (]*)/;\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.es/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !(NAME in FunctionPrototype)) {\n defineProperty(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return FunctionPrototypeToString.call(this).match(nameRE)[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","'use strict';\n// TODO: Remove from `core-js@4` since it's moved to entry points\nrequire('../modules/es.regexp.exec');\nvar redefine = require('../internals/redefine');\nvar regexpExec = require('../internals/regexp-exec');\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar SPECIES = wellKnownSymbol('species');\nvar RegExpPrototype = RegExp.prototype;\n\nmodule.exports = function (KEY, exec, FORCED, SHAM) {\n var SYMBOL = wellKnownSymbol(KEY);\n\n var DELEGATES_TO_SYMBOL = !fails(function () {\n // String methods call symbol-named RegEp methods\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) != 7;\n });\n\n var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {\n // Symbol-named RegExp methods call .exec\n var execCalled = false;\n var re = /a/;\n\n if (KEY === 'split') {\n // We can't use real regex here since it causes deoptimization\n // and serious performance degradation in V8\n // https://github.com/zloirock/core-js/issues/306\n re = {};\n // RegExp[@@split] doesn't call the regex's exec method, but first creates\n // a new one. We need to return the patched regex when creating the new one.\n re.constructor = {};\n re.constructor[SPECIES] = function () { return re; };\n re.flags = '';\n re[SYMBOL] = /./[SYMBOL];\n }\n\n re.exec = function () { execCalled = true; return null; };\n\n re[SYMBOL]('');\n return !execCalled;\n });\n\n if (\n !DELEGATES_TO_SYMBOL ||\n !DELEGATES_TO_EXEC ||\n FORCED\n ) {\n var nativeRegExpMethod = /./[SYMBOL];\n var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {\n var $exec = regexp.exec;\n if ($exec === regexpExec || $exec === RegExpPrototype.exec) {\n if (DELEGATES_TO_SYMBOL && !forceStringMethod) {\n // The native String method already delegates to @@method (this\n // polyfilled function), leasing to infinite recursion.\n // We avoid it by directly calling the native @@method method.\n return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };\n }\n return { done: true, value: nativeMethod.call(str, regexp, arg2) };\n }\n return { done: false };\n });\n\n redefine(String.prototype, KEY, methods[0]);\n redefine(RegExpPrototype, SYMBOL, methods[1]);\n }\n\n if (SHAM) createNonEnumerableProperty(RegExpPrototype[SYMBOL], 'sham', true);\n};\n","var fails = require('./fails');\n\nmodule.exports = fails(function () {\n // babel-minify transpiles RegExp('.', 's') -> /./s and it causes SyntaxError\n var re = RegExp('.', (typeof '').charAt(0));\n return !(re.dotAll && re.exec('\\n') && re.flags === 's');\n});\n"],"sourceRoot":""} \ No newline at end of file diff --git a/public/dist/js/chunk-e319cd5c.55da3258.js b/public/dist/js/chunk-e319cd5c.55da3258.js deleted file mode 100644 index c793785..0000000 --- a/public/dist/js/chunk-e319cd5c.55da3258.js +++ /dev/null @@ -1,2 +0,0 @@ -(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-e319cd5c"],{"022e":function(e,t,n){"use strict";n.r(t);var a=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{attrs:{id:"app-base-db"}},[e._m(0),n("div",{staticClass:"one-block-2"},[n("a-row",[n("a-col",{attrs:{span:8}},[e._v(" • 大数据量: 0-1024GB(单库) ")]),n("a-col",{attrs:{span:8}},[e._v(" • 高性能 ")]),n("a-col",{attrs:{span:8}},[e._v(" • 类mysql语法 ")])],1)],1),e._m(1),n("div",{staticClass:"one-block-2"},[n("a-row",[n("a-col",{attrs:{span:24}},[e._v(" "+e._s(e.all_list)+" ")])],1)],1),e._m(2),n("div",{staticClass:"one-block-2"},[n("a-row",[n("a-col",{attrs:{span:6}},[n("a-input",{attrs:{value:e.name,"addon-before":"姓名"},model:{value:e.name,callback:function(t){e.name=t},expression:"name"}})],1),n("a-col",{attrs:{span:3}}),n("a-col",{attrs:{span:6}},[n("a-input",{attrs:{value:e.age,"addon-before":"年龄"},model:{value:e.age,callback:function(t){e.age=t},expression:"age"}})],1),n("a-col",{attrs:{span:3}}),n("a-col",{attrs:{span:6}},[n("a-button",{on:{click:function(t){return e.sqlitedbOperation("add")}}},[e._v(" 添加 ")])],1)],1)],1),e._m(3),n("div",{staticClass:"one-block-2"},[n("a-row",[n("a-col",{attrs:{span:6}},[n("a-input",{attrs:{value:e.search_age,"addon-before":"年龄"},model:{value:e.search_age,callback:function(t){e.search_age=t},expression:"search_age"}})],1),n("a-col",{attrs:{span:3}}),n("a-col",{attrs:{span:6}}),n("a-col",{attrs:{span:3}}),n("a-col",{attrs:{span:6}},[n("a-button",{on:{click:function(t){return e.sqlitedbOperation("get")}}},[e._v(" 查找 ")])],1)],1),n("a-row",[n("a-col",{attrs:{span:24}},[e._v(" "+e._s(e.userList)+" ")])],1)],1),e._m(4),n("div",{staticClass:"one-block-2"},[n("a-row",[n("a-col",{attrs:{span:6}},[n("a-input",{attrs:{value:e.update_name,"addon-before":"姓名(条件)"},model:{value:e.update_name,callback:function(t){e.update_name=t},expression:"update_name"}})],1),n("a-col",{attrs:{span:3}}),n("a-col",{attrs:{span:6}},[n("a-input",{attrs:{value:e.update_age,"addon-before":"年龄"},model:{value:e.update_age,callback:function(t){e.update_age=t},expression:"update_age"}})],1),n("a-col",{attrs:{span:3}}),n("a-col",{attrs:{span:6}},[n("a-button",{on:{click:function(t){return e.sqlitedbOperation("update")}}},[e._v(" 更新 ")])],1)],1)],1),e._m(5),n("div",{staticClass:"one-block-2"},[n("a-row",[n("a-col",{attrs:{span:6}},[n("a-input",{attrs:{value:e.delete_name,"addon-before":"姓名"},model:{value:e.delete_name,callback:function(t){e.delete_name=t},expression:"delete_name"}})],1),n("a-col",{attrs:{span:3}}),n("a-col",{attrs:{span:6}}),n("a-col",{attrs:{span:3}}),n("a-col",{attrs:{span:6}},[n("a-button",{on:{click:function(t){return e.sqlitedbOperation("del")}}},[e._v(" 删除 ")])],1)],1)],1)])},r=[function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"one-block-1"},[n("span",[e._v(" 1. sqlite本地数据库 ")])])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"one-block-1"},[n("span",[e._v(" 2. 测试数据 ")])])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"one-block-1"},[n("span",[e._v(" 3. 添加数据 ")])])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"one-block-1"},[n("span",[e._v(" 4. 获取数据 ")])])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"one-block-1"},[n("span",[e._v(" 5. 修改数据 ")])])},function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"one-block-1"},[n("span",[e._v(" 6. 删除数据 ")])])}],l=(n("b0c0"),n("a358")),o={data:function(){return{name:"李四",age:20,userList:["空"],search_age:20,update_name:"李四",update_age:31,delete_name:"李四",all_list:["空"]}},mounted:function(){this.getAllTestData()},methods:{getAllTestData:function(){var e=this,t={action:"all"};this.$ipcInvoke(l["a"].sqlitedbOperation,t).then((function(t){if(console.log("res:",t),0==t.all_list.length)return!1;e.all_list=t.all_list}))},sqlitedbOperation:function(e){var t=this,n={action:e,info:{name:this.name,age:parseInt(this.age)},search_age:parseInt(this.search_age),update_name:this.update_name,update_age:parseInt(this.update_age),delete_name:this.delete_name};"add"==e&&0==this.name.length&&t.$message.error("请填写数据"),this.$ipcInvoke(l["a"].sqlitedbOperation,n).then((function(n){if(console.log("res:",n),"get"==e){if(0==n.result.length)return void t.$message.error("没有数据");t.userList=n.result}0!=n.all_list.length?(t.all_list=n.all_list,t.$message.success("success")):t.all_list=["空"]}))}}},c=o,s=(n("a0bc"),n("2877")),i=Object(s["a"])(c,a,r,!1,null,"e8ac4bca",null);t["default"]=i.exports},"107c":function(e,t,n){var a=n("d039");e.exports=a((function(){var e=RegExp("(?b)","string".charAt(5));return"b"!==e.exec("b").groups.a||"bc"!=="b".replace(e,"$c")}))},1276:function(e,t,n){"use strict";var a=n("d784"),r=n("44e7"),l=n("825a"),o=n("1d80"),c=n("4840"),s=n("8aa5"),i=n("50c4"),u=n("14c3"),p=n("9263"),d=n("9f7f"),f=n("d039"),v=d.UNSUPPORTED_Y,g=[].push,h=Math.min,m=4294967295,x=!f((function(){var e=/(?:)/,t=e.exec;e.exec=function(){return t.apply(this,arguments)};var n="ab".split(e);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));a("split",(function(e,t,n){var a;return a="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(e,n){var a=String(o(this)),l=void 0===n?m:n>>>0;if(0===l)return[];if(void 0===e)return[a];if(!r(e))return t.call(a,e,l);var c,s,i,u=[],d=(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")+(e.sticky?"y":""),f=0,v=new RegExp(e.source,d+"g");while(c=p.call(v,a)){if(s=v.lastIndex,s>f&&(u.push(a.slice(f,c.index)),c.length>1&&c.index=l))break;v.lastIndex===c.index&&v.lastIndex++}return f===a.length?!i&&v.test("")||u.push(""):u.push(a.slice(f)),u.length>l?u.slice(0,l):u}:"0".split(void 0,0).length?function(e,n){return void 0===e&&0===n?[]:t.call(this,e,n)}:t,[function(t,n){var r=o(this),l=void 0==t?void 0:t[e];return void 0!==l?l.call(t,r,n):a.call(String(r),t,n)},function(e,r){var o=n(a,this,e,r,a!==t);if(o.done)return o.value;var p=l(this),d=String(e),f=c(p,RegExp),g=p.unicode,x=(p.ignoreCase?"i":"")+(p.multiline?"m":"")+(p.unicode?"u":"")+(v?"g":"y"),b=new f(v?"^(?:"+p.source+")":p,x),_=void 0===r?m:r>>>0;if(0===_)return[];if(0===d.length)return null===u(b,d)?[d]:[];var w=0,k=0,S=[];while(k0&&(!m.multiline||m.multiline&&"\n"!==e[m.lastIndex-1])&&(S="(?: "+S+")",I=" "+I,E++),n=new RegExp("^(?:"+S+")",k)),g&&(n=new RegExp("^"+S+"$(?!\\s)",k)),f&&(r=m.lastIndex),l=u.call(w?n:m,I),w?l?(l.input=l.input.slice(E),l[0]=l[0].slice(E),l.index=m.lastIndex,m.lastIndex+=l[0].length):m.lastIndex=0:f&&l&&(m.lastIndex=m.global?l.index+l[0].length:r),g&&l&&l.length>1&&p.call(l[0],n,(function(){for(s=1;s\r\n
\r\n
\r\n \r\n 1. sqlite本地数据库\r\n \r\n
\r\n
\r\n \r\n \r\n • 大数据量: 0-1024GB(单库)\r\n \r\n \r\n • 高性能\r\n \r\n \r\n • 类mysql语法\r\n \r\n \r\n
\r\n
\r\n \r\n 2. 测试数据\r\n \r\n
\r\n
\r\n \r\n \r\n {{ all_list }}\r\n \r\n \r\n
\r\n
\r\n \r\n 3. 添加数据\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n 添加\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n 4. 获取数据\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n 查找\r\n \r\n \r\n \r\n \r\n \r\n {{ userList }}\r\n \r\n \r\n
\r\n
\r\n \r\n 5. 修改数据\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n 更新\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n 6. 删除数据\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n 删除\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Index.vue?vue&type=template&id=e8ac4bca&scoped=true&\"\nimport script from \"./Index.vue?vue&type=script&lang=js&\"\nexport * from \"./Index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Index.vue?vue&type=style&index=0&id=e8ac4bca&lang=less&scoped=true&\"\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 \"e8ac4bca\",\n null\n \n)\n\nexport default component.exports","var fails = require('./fails');\n\nmodule.exports = fails(function () {\n // babel-minify transpiles RegExp('.', 'g') -> /./g and it causes SyntaxError\n var re = RegExp('(?
b)', (typeof '').charAt(5));\n return re.exec('b').groups.a !== 'b' ||\n 'b'.replace(re, '$c') !== 'bc';\n});\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar isRegExp = require('../internals/is-regexp');\nvar anObject = require('../internals/an-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar speciesConstructor = require('../internals/species-constructor');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar toLength = require('../internals/to-length');\nvar callRegExpExec = require('../internals/regexp-exec-abstract');\nvar regexpExec = require('../internals/regexp-exec');\nvar stickyHelpers = require('../internals/regexp-sticky-helpers');\nvar fails = require('../internals/fails');\n\nvar UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y;\nvar arrayPush = [].push;\nvar min = Math.min;\nvar MAX_UINT32 = 0xFFFFFFFF;\n\n// Chrome 51 has a buggy \"split\" implementation when RegExp#exec !== nativeExec\n// Weex JS has frozen built-in prototypes, so use try / catch wrapper\nvar SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () {\n // eslint-disable-next-line regexp/no-empty-group -- required for testing\n var re = /(?:)/;\n var originalExec = re.exec;\n re.exec = function () { return originalExec.apply(this, arguments); };\n var result = 'ab'.split(re);\n return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b';\n});\n\n// @@split logic\nfixRegExpWellKnownSymbolLogic('split', function (SPLIT, nativeSplit, maybeCallNative) {\n var internalSplit;\n if (\n 'abbc'.split(/(b)*/)[1] == 'c' ||\n // eslint-disable-next-line regexp/no-empty-group -- required for testing\n 'test'.split(/(?:)/, -1).length != 4 ||\n 'ab'.split(/(?:ab)*/).length != 2 ||\n '.'.split(/(.?)(.?)/).length != 4 ||\n // eslint-disable-next-line regexp/no-assertion-capturing-group, regexp/no-empty-group -- required for testing\n '.'.split(/()()/).length > 1 ||\n ''.split(/.?/).length\n ) {\n // based on es5-shim implementation, need to rework it\n internalSplit = function (separator, limit) {\n var string = String(requireObjectCoercible(this));\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (separator === undefined) return [string];\n // If `separator` is not a regex, use native split\n if (!isRegExp(separator)) {\n return nativeSplit.call(string, separator, lim);\n }\n var output = [];\n var flags = (separator.ignoreCase ? 'i' : '') +\n (separator.multiline ? 'm' : '') +\n (separator.unicode ? 'u' : '') +\n (separator.sticky ? 'y' : '');\n var lastLastIndex = 0;\n // Make `global` and avoid `lastIndex` issues by working with a copy\n var separatorCopy = new RegExp(separator.source, flags + 'g');\n var match, lastIndex, lastLength;\n while (match = regexpExec.call(separatorCopy, string)) {\n lastIndex = separatorCopy.lastIndex;\n if (lastIndex > lastLastIndex) {\n output.push(string.slice(lastLastIndex, match.index));\n if (match.length > 1 && match.index < string.length) arrayPush.apply(output, match.slice(1));\n lastLength = match[0].length;\n lastLastIndex = lastIndex;\n if (output.length >= lim) break;\n }\n if (separatorCopy.lastIndex === match.index) separatorCopy.lastIndex++; // Avoid an infinite loop\n }\n if (lastLastIndex === string.length) {\n if (lastLength || !separatorCopy.test('')) output.push('');\n } else output.push(string.slice(lastLastIndex));\n return output.length > lim ? output.slice(0, lim) : output;\n };\n // Chakra, V8\n } else if ('0'.split(undefined, 0).length) {\n internalSplit = function (separator, limit) {\n return separator === undefined && limit === 0 ? [] : nativeSplit.call(this, separator, limit);\n };\n } else internalSplit = nativeSplit;\n\n return [\n // `String.prototype.split` method\n // https://tc39.es/ecma262/#sec-string.prototype.split\n function split(separator, limit) {\n var O = requireObjectCoercible(this);\n var splitter = separator == undefined ? undefined : separator[SPLIT];\n return splitter !== undefined\n ? splitter.call(separator, O, limit)\n : internalSplit.call(String(O), separator, limit);\n },\n // `RegExp.prototype[@@split]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@split\n //\n // NOTE: This cannot be properly polyfilled in engines that don't support\n // the 'y' flag.\n function (string, limit) {\n var res = maybeCallNative(internalSplit, this, string, limit, internalSplit !== nativeSplit);\n if (res.done) return res.value;\n\n var rx = anObject(this);\n var S = String(string);\n var C = speciesConstructor(rx, RegExp);\n\n var unicodeMatching = rx.unicode;\n var flags = (rx.ignoreCase ? 'i' : '') +\n (rx.multiline ? 'm' : '') +\n (rx.unicode ? 'u' : '') +\n (UNSUPPORTED_Y ? 'g' : 'y');\n\n // ^(? + rx + ) is needed, in combination with some S slicing, to\n // simulate the 'y' flag.\n var splitter = new C(UNSUPPORTED_Y ? '^(?:' + rx.source + ')' : rx, flags);\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];\n var p = 0;\n var q = 0;\n var A = [];\n while (q < S.length) {\n splitter.lastIndex = UNSUPPORTED_Y ? 0 : q;\n var z = callRegExpExec(splitter, UNSUPPORTED_Y ? S.slice(q) : S);\n var e;\n if (\n z === null ||\n (e = min(toLength(splitter.lastIndex + (UNSUPPORTED_Y ? q : 0)), S.length)) === p\n ) {\n q = advanceStringIndex(S, q, unicodeMatching);\n } else {\n A.push(S.slice(p, q));\n if (A.length === lim) return A;\n for (var i = 1; i <= z.length - 1; i++) {\n A.push(z[i]);\n if (A.length === lim) return A;\n }\n q = p = e;\n }\n }\n A.push(S.slice(p));\n return A;\n }\n ];\n}, !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC, UNSUPPORTED_Y);\n","var classof = require('./classof-raw');\nvar regexpExec = require('./regexp-exec');\n\n// `RegExpExec` abstract operation\n// https://tc39.es/ecma262/#sec-regexpexec\nmodule.exports = function (R, S) {\n var exec = R.exec;\n if (typeof exec === 'function') {\n var result = exec.call(R, S);\n if (typeof result !== 'object') {\n throw TypeError('RegExp exec method returned something other than an Object or null');\n }\n return result;\n }\n\n if (classof(R) !== 'RegExp') {\n throw TypeError('RegExp#exec called on incompatible receiver');\n }\n\n return regexpExec.call(R, S);\n};\n\n","var isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\n// `IsRegExp` abstract operation\n// https://tc39.es/ecma262/#sec-isregexp\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) == 'RegExp');\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\n\n// `AdvanceStringIndex` abstract operation\n// https://tc39.es/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? charAt(S, index).length : 1);\n};\n","'use strict';\n/* eslint-disable regexp/no-assertion-capturing-group, regexp/no-empty-group, regexp/no-lazy-ends -- testing */\n/* eslint-disable regexp/no-useless-quantifier -- testing */\nvar regexpFlags = require('../internals/regexp-flags');\nvar stickyHelpers = require('../internals/regexp-sticky-helpers');\nvar shared = require('../internals/shared');\nvar create = require('../internals/object-create');\nvar getInternalState = require('../internals/internal-state').get;\nvar UNSUPPORTED_DOT_ALL = require('../internals/regexp-unsupported-dot-all');\nvar UNSUPPORTED_NCG = require('../internals/regexp-unsupported-ncg');\n\nvar nativeExec = RegExp.prototype.exec;\nvar nativeReplace = shared('native-string-replace', String.prototype.replace);\n\nvar patchedExec = nativeExec;\n\nvar UPDATES_LAST_INDEX_WRONG = (function () {\n var re1 = /a/;\n var re2 = /b*/g;\n nativeExec.call(re1, 'a');\n nativeExec.call(re2, 'a');\n return re1.lastIndex !== 0 || re2.lastIndex !== 0;\n})();\n\nvar UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y || stickyHelpers.BROKEN_CARET;\n\n// nonparticipating capturing group, copied from es5-shim's String#split patch.\nvar NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;\n\nvar PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y || UNSUPPORTED_DOT_ALL || UNSUPPORTED_NCG;\n\nif (PATCH) {\n // eslint-disable-next-line max-statements -- TODO\n patchedExec = function exec(str) {\n var re = this;\n var state = getInternalState(re);\n var raw = state.raw;\n var result, reCopy, lastIndex, match, i, object, group;\n\n if (raw) {\n raw.lastIndex = re.lastIndex;\n result = patchedExec.call(raw, str);\n re.lastIndex = raw.lastIndex;\n return result;\n }\n\n var groups = state.groups;\n var sticky = UNSUPPORTED_Y && re.sticky;\n var flags = regexpFlags.call(re);\n var source = re.source;\n var charsAdded = 0;\n var strCopy = str;\n\n if (sticky) {\n flags = flags.replace('y', '');\n if (flags.indexOf('g') === -1) {\n flags += 'g';\n }\n\n strCopy = String(str).slice(re.lastIndex);\n // Support anchored sticky behavior.\n if (re.lastIndex > 0 && (!re.multiline || re.multiline && str[re.lastIndex - 1] !== '\\n')) {\n source = '(?: ' + source + ')';\n strCopy = ' ' + strCopy;\n charsAdded++;\n }\n // ^(? + rx + ) is needed, in combination with some str slicing, to\n // simulate the 'y' flag.\n reCopy = new RegExp('^(?:' + source + ')', flags);\n }\n\n if (NPCG_INCLUDED) {\n reCopy = new RegExp('^' + source + '$(?!\\\\s)', flags);\n }\n if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;\n\n match = nativeExec.call(sticky ? reCopy : re, strCopy);\n\n if (sticky) {\n if (match) {\n match.input = match.input.slice(charsAdded);\n match[0] = match[0].slice(charsAdded);\n match.index = re.lastIndex;\n re.lastIndex += match[0].length;\n } else re.lastIndex = 0;\n } else if (UPDATES_LAST_INDEX_WRONG && match) {\n re.lastIndex = re.global ? match.index + match[0].length : lastIndex;\n }\n if (NPCG_INCLUDED && match && match.length > 1) {\n // Fix browsers whose `exec` methods don't consistently return `undefined`\n // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/\n nativeReplace.call(match[0], reCopy, function () {\n for (i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === undefined) match[i] = undefined;\n }\n });\n }\n\n if (match && groups) {\n match.groups = object = create(null);\n for (i = 0; i < groups.length; i++) {\n group = groups[i];\n object[group[0]] = match[group[1]];\n }\n }\n\n return match;\n };\n}\n\nmodule.exports = patchedExec;\n","var fails = require('../internals/fails');\n\n// babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError,\nvar RE = function (s, f) {\n return RegExp(s, f);\n};\n\nexports.UNSUPPORTED_Y = fails(function () {\n var re = RE('a', 'y');\n re.lastIndex = 2;\n return re.exec('abcd') != null;\n});\n\nexports.BROKEN_CARET = fails(function () {\n // https://bugzilla.mozilla.org/show_bug.cgi?id=773687\n var re = RE('^r', 'gy');\n re.lastIndex = 2;\n return re.exec('str') != null;\n});\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Index.vue?vue&type=style&index=0&id=e8ac4bca&lang=less&scoped=true&\"","'use strict';\nvar $ = require('../internals/export');\nvar IndexedObject = require('../internals/indexed-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar nativeJoin = [].join;\n\nvar ES3_STRINGS = IndexedObject != Object;\nvar STRICT_METHOD = arrayMethodIsStrict('join', ',');\n\n// `Array.prototype.join` method\n// https://tc39.es/ecma262/#sec-array.prototype.join\n$({ target: 'Array', proto: true, forced: ES3_STRINGS || !STRICT_METHOD }, {\n join: function join(separator) {\n return nativeJoin.call(toIndexedObject(this), separator === undefined ? ',' : separator);\n }\n});\n","import storage from 'store2'\r\nimport request from '@/utils/request'\r\n\r\n/**\r\n * 路由定义(主进程与渲染进程通信频道定义)\r\n */\r\nconst ipcApiRoute = {\r\n test: 'controller.example.test',\r\n messageShow: 'controller.example.messageShow',\r\n messageShowConfirm: 'controller.example.messageShowConfirm',\r\n selectFolder: 'controller.example.selectFolder',\r\n openDirectory: 'controller.example.openDirectory',\r\n loadViewContent: 'controller.example.loadViewContent',\r\n removeViewContent: 'controller.example.removeViewContent',\r\n createWindow: 'controller.example.createWindow',\r\n sendNotification: 'controller.example.sendNotification',\r\n initPowerMonitor: 'controller.example.initPowerMonitor',\r\n getScreen: 'controller.example.getScreen',\r\n openSoftware: 'controller.example.openSoftware', \r\n autoLaunch: 'controller.example.autoLaunch',\r\n setTheme: 'controller.example.setTheme',\r\n getTheme: 'controller.example.getTheme',\r\n checkForUpdater: 'controller.example.checkForUpdater',\r\n downloadApp: 'controller.example.downloadApp',\r\n dbOperation: 'controller.example.dbOperation',\r\n sqlitedbOperation: 'controller.example.sqlitedbOperation',\r\n uploadFile: 'controller.example.uploadFile',\r\n checkHttpServer: 'controller.example.checkHttpServer',\r\n doHttpRequest: 'controller.example.doHttpRequest',\r\n doSocketRequest: 'controller.example.doSocketRequest',\r\n ipcInvokeMsg: 'controller.example.ipcInvokeMsg',\r\n ipcSendSyncMsg: 'controller.example.ipcSendSyncMsg',\r\n ipcSendMsg: 'controller.example.ipcSendMsg',\r\n getWCid: 'controller.example.getWCid',\r\n startJavaServer: 'controller.example.startJavaServer',\r\n closeJavaServer: 'controller.example.closeJavaServer',\r\n hello: 'controller.example.hello',\r\n}\r\n\r\n/**\r\n * 特殊的路由(频道)定义\r\n */\r\nconst specialIpcRoute = {\r\n appUpdater: 'app.updater', // 此频道在后端也有相同定义\r\n window1ToWindow2: 'window1-to-window2', // 窗口之间通信\r\n window2ToWindow1: 'window2-to-window1', // 窗口之间通信\r\n}\r\n\r\n/**\r\n * 访问内置http服务\r\n */\r\nconst requestHttp = (uri, parameter) => {\r\n // url转换\r\n const config = storage.get('httpServiceConfig');\r\n const host = config.server || 'http://127.0.0.1:7071';\r\n let url = uri.split('.').join('/');\r\n url = host + '/' + url;\r\n console.log('url:', url);\r\n return request({\r\n url: url,\r\n method: 'post', \r\n data: parameter, // body\r\n params: {}, // URL 参数\r\n timeout: 60000,\r\n })\r\n}\r\n\r\nexport {\r\n ipcApiRoute,\r\n specialIpcRoute,\r\n requestHttp,\r\n}\r\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = function (METHOD_NAME, argument) {\n var method = [][METHOD_NAME];\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call,no-throw-literal -- required for testing\n method.call(null, argument || function () { throw 1; }, 1);\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar exec = require('../internals/regexp-exec');\n\n// `RegExp.prototype.exec` method\n// https://tc39.es/ecma262/#sec-regexp.prototype.exec\n$({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, {\n exec: exec\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\n\n// `RegExp.prototype.flags` getter implementation\n// https://tc39.es/ecma262/#sec-get-regexp.prototype.flags\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.dotAll) result += 's';\n if (that.unicode) result += 'u';\n if (that.sticky) result += 'y';\n return result;\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar FunctionPrototype = Function.prototype;\nvar FunctionPrototypeToString = FunctionPrototype.toString;\nvar nameRE = /^\\s*function ([^ (]*)/;\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.es/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !(NAME in FunctionPrototype)) {\n defineProperty(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return FunctionPrototypeToString.call(this).match(nameRE)[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","'use strict';\n// TODO: Remove from `core-js@4` since it's moved to entry points\nrequire('../modules/es.regexp.exec');\nvar redefine = require('../internals/redefine');\nvar regexpExec = require('../internals/regexp-exec');\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar SPECIES = wellKnownSymbol('species');\nvar RegExpPrototype = RegExp.prototype;\n\nmodule.exports = function (KEY, exec, FORCED, SHAM) {\n var SYMBOL = wellKnownSymbol(KEY);\n\n var DELEGATES_TO_SYMBOL = !fails(function () {\n // String methods call symbol-named RegEp methods\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) != 7;\n });\n\n var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {\n // Symbol-named RegExp methods call .exec\n var execCalled = false;\n var re = /a/;\n\n if (KEY === 'split') {\n // We can't use real regex here since it causes deoptimization\n // and serious performance degradation in V8\n // https://github.com/zloirock/core-js/issues/306\n re = {};\n // RegExp[@@split] doesn't call the regex's exec method, but first creates\n // a new one. We need to return the patched regex when creating the new one.\n re.constructor = {};\n re.constructor[SPECIES] = function () { return re; };\n re.flags = '';\n re[SYMBOL] = /./[SYMBOL];\n }\n\n re.exec = function () { execCalled = true; return null; };\n\n re[SYMBOL]('');\n return !execCalled;\n });\n\n if (\n !DELEGATES_TO_SYMBOL ||\n !DELEGATES_TO_EXEC ||\n FORCED\n ) {\n var nativeRegExpMethod = /./[SYMBOL];\n var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {\n var $exec = regexp.exec;\n if ($exec === regexpExec || $exec === RegExpPrototype.exec) {\n if (DELEGATES_TO_SYMBOL && !forceStringMethod) {\n // The native String method already delegates to @@method (this\n // polyfilled function), leasing to infinite recursion.\n // We avoid it by directly calling the native @@method method.\n return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };\n }\n return { done: true, value: nativeMethod.call(str, regexp, arg2) };\n }\n return { done: false };\n });\n\n redefine(String.prototype, KEY, methods[0]);\n redefine(RegExpPrototype, SYMBOL, methods[1]);\n }\n\n if (SHAM) createNonEnumerableProperty(RegExpPrototype[SYMBOL], 'sham', true);\n};\n","var fails = require('./fails');\n\nmodule.exports = fails(function () {\n // babel-minify transpiles RegExp('.', 's') -> /./s and it causes SyntaxError\n var re = RegExp('.', (typeof '').charAt(0));\n return !(re.dotAll && re.exec('\\n') && re.flags === 's');\n});\n"],"sourceRoot":""} \ No newline at end of file diff --git a/update.md b/update.md index 55a0929..bcba036 100644 --- a/update.md +++ b/update.md @@ -1,3 +1,12 @@ +## 2.5.0 +1. 增加开发模式自定义协议头 +2. 增加sqlite数据库db文件自定义目录 +3. 增加sqlite数据库动态切库demo +4. 增加远程web使用教程及demo +5. 删除loading文件、ci/cd配置文件 +6. 删除ee-core中无用的constant +7. 升级ee-core到1.5.0 + ## 2.4.0 1. 增加混淆/bytecode加密配置opt,提升安全性 2. 增加插件的方式重写托盘、唤醒、升级、安全、扩展等功能