@kotori-bot/kotori-plugin-webui 1.4.1 → 1.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{LICENSE → LICENSE.md} +674 -674
- package/dist/css/{307.17441c4b.css → 178.50389cc5.css} +1 -1
- package/dist/css/191.03157bbe.css +1 -0
- package/dist/css/373.0cce6c3e.css +1 -0
- package/dist/css/454.0d732bed.css +1 -0
- package/dist/css/47.49d67fd6.css +1 -0
- package/dist/css/5.b049cb20.css +1 -0
- package/dist/css/60.e08a7f71.css +1 -0
- package/dist/css/620.53b4f39d.css +1 -0
- package/dist/css/866.7bd164ea.css +1 -0
- package/dist/css/871.78adf960.css +1 -0
- package/dist/css/878.75469f9c.css +1 -0
- package/dist/css/974.14fe0cd3.css +1 -0
- package/dist/css/app.2339ed96.css +1 -0
- package/dist/css/chunk-vendors.9c1b0e0b.css +1 -0
- package/dist/fonts/iconfont.0785b652.eot +0 -0
- package/dist/fonts/iconfont.6cfc7ac2.woff +0 -0
- package/dist/fonts/iconfont.7f7c61f0.ttf +0 -0
- package/dist/fonts/iconfont.e5653996.woff2 +0 -0
- package/dist/img/addAvatar.5d18468f.svg +1 -0
- package/dist/img/favicon-gray.c2bacd13.svg +81 -0
- package/dist/img/iconfont.8017d8e3.svg +405 -0
- package/dist/img/removeAvatar.102a1309.svg +1 -0
- package/dist/index.html +1 -1
- package/dist/js/178.5506400e.js +2 -0
- package/dist/js/178.5506400e.js.map +1 -0
- package/dist/js/191.d1d8acb0.js +112 -0
- package/dist/js/191.d1d8acb0.js.map +1 -0
- package/dist/js/373.8f482efc.js +2 -0
- package/dist/js/373.8f482efc.js.map +1 -0
- package/dist/js/454.9fcb434d.js +2 -0
- package/dist/js/454.9fcb434d.js.map +1 -0
- package/dist/js/47.b880ff7d.js +2 -0
- package/dist/js/47.b880ff7d.js.map +1 -0
- package/dist/js/5.f818b113.js +2 -0
- package/dist/js/5.f818b113.js.map +1 -0
- package/dist/js/60.df7c62f1.js +2 -0
- package/dist/js/60.df7c62f1.js.map +1 -0
- package/dist/js/620.cc5f8280.js +2 -0
- package/dist/js/620.cc5f8280.js.map +1 -0
- package/dist/js/866.4506cf7d.js +2 -0
- package/dist/js/866.4506cf7d.js.map +1 -0
- package/dist/js/871.adcb95ca.js +2 -0
- package/dist/js/871.adcb95ca.js.map +1 -0
- package/dist/js/878.d5db5741.js +2 -0
- package/dist/js/878.d5db5741.js.map +1 -0
- package/dist/js/974.5d32785c.js +2 -0
- package/dist/js/974.5d32785c.js.map +1 -0
- package/dist/js/app.ff7f084b.js +2 -0
- package/dist/js/app.ff7f084b.js.map +1 -0
- package/dist/js/chunk-vendors.b2a9455e.js +77 -0
- package/dist/js/chunk-vendors.b2a9455e.js.map +1 -0
- package/lib/index.js +12 -14
- package/lib/plugin/index.js +8 -10
- package/lib/routers/api/accounts.d.ts +1 -1
- package/lib/routers/api/accounts.js +8 -10
- package/lib/routers/api/config.d.ts +1 -1
- package/lib/routers/api/config.js +8 -10
- package/lib/routers/api/data.d.ts +1 -1
- package/lib/routers/api/data.js +8 -10
- package/lib/routers/api/demo.d.ts +1 -1
- package/lib/routers/api/demo.js +8 -10
- package/lib/routers/index.d.ts +1 -1
- package/lib/routers/index.js +8 -10
- package/lib/routers/router.js +8 -10
- package/lib/service/index.d.ts +19 -30
- package/lib/service/index.js +8 -10
- package/lib/types/index.js +8 -10
- package/lib/utils/autoSave.js +8 -10
- package/lib/utils/common.js +8 -10
- package/lib/utils/observer.js +8 -10
- package/lib/utils/transport.js +8 -10
- package/lib/ws/index.js +8 -10
- package/package.json +2 -2
- package/dist/css/157.4f26d8f6.css +0 -1
- package/dist/css/398.68e1d5c0.css +0 -1
- package/dist/css/501.9015c7b8.css +0 -1
- package/dist/css/61.c4036428.css +0 -1
- package/dist/css/677.1f6dda12.css +0 -1
- package/dist/css/805.47c05599.css +0 -1
- package/dist/css/859.a4c60906.css +0 -1
- package/dist/css/879.594eeca0.css +0 -1
- package/dist/css/988.a57fcb7a.css +0 -1
- package/dist/css/app.8629041a.css +0 -1
- package/dist/css/chunk-vendors.8f724415.css +0 -1
- package/dist/js/157.b3b7776c.js +0 -112
- package/dist/js/157.b3b7776c.js.map +0 -1
- package/dist/js/307.5dcc1e5b.js +0 -2
- package/dist/js/307.5dcc1e5b.js.map +0 -1
- package/dist/js/398.5a1256fe.js +0 -2
- package/dist/js/398.5a1256fe.js.map +0 -1
- package/dist/js/501.2cce9c69.js +0 -2
- package/dist/js/501.2cce9c69.js.map +0 -1
- package/dist/js/61.b1925deb.js +0 -2
- package/dist/js/61.b1925deb.js.map +0 -1
- package/dist/js/677.17ed8bda.js +0 -2
- package/dist/js/677.17ed8bda.js.map +0 -1
- package/dist/js/805.635a82e6.js +0 -2
- package/dist/js/805.635a82e6.js.map +0 -1
- package/dist/js/859.740917f5.js +0 -2
- package/dist/js/859.740917f5.js.map +0 -1
- package/dist/js/879.c08f48f3.js +0 -2
- package/dist/js/879.c08f48f3.js.map +0 -1
- package/dist/js/988.6ab22bc8.js +0 -2
- package/dist/js/988.6ab22bc8.js.map +0 -1
- package/dist/js/app.4afe7ee6.js +0 -2
- package/dist/js/app.4afe7ee6.js.map +0 -1
- package/dist/js/chunk-vendors.74ce961b.js +0 -75
- package/dist/js/chunk-vendors.74ce961b.js.map +0 -1
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";(self["webpackChunkkams"]=self["webpackChunkkams"]||[]).push([[60],{1349:function(t,e,n){n.d(e,{A:function(){return c}});var i=function(){var t=this,e=t._self._c;return e("aside",{ref:"aside",staticClass:"k-sb-aside k-aside"},[e("div",{staticClass:"k-aside-default"},[t._t("default")],2),e("div",{staticClass:"k-aside-inner"},[t._t("inner")],2)])},s=[],o={name:"k-sb-aside"},r=o,a=n(1656),l=(0,a.A)(r,i,s,!1,null,null,null),c=l.exports},4844:function(t,e,n){n.d(e,{A:function(){return u}});var i=function(){var t=this,e=t._self._c;return e("ul",{staticClass:"k-menu",style:{flexDirection:this.mode}},[t._t("default")],2)},s=[],o=(n(4114),n(6848)),r={name:"k-menu",data(){return{activeIndex:this.defaultActive}},provide(){return{root:this}},props:{activeColor:{type:String},activeShape:{type:Array,default(){return[]}},backgroundColor:{type:String},textColor:{},mode:{type:String,default(){return"column"}},defaultActive:{type:String},router:{type:Boolean}},methods:{changeRouteFn(t){this.router&&this.$router.push(t),this.activeIndex=t}},computed:{rootMenu(){return{activeColor:this.activeColor,backgroundColor:this.backgroundColor,activeIndex:this.defaultActive}}},watch:{defaultActive(t){this.activeIndex=t}},beforeCreate(){this.$bus=new o["default"]},mounted(){this.$bus.$on("changeRoute",this.changeRouteFn)},beforeDestroy(){this.$bus.$off("changeRoute",this.changeRouteFn)}},a=r,l=n(1656),c=(0,l.A)(a,i,s,!1,null,"8321ac56",null),u=c.exports},2222:function(t,e,n){n.d(e,{A:function(){return c}});var i=function(){var t=this,e=t._self._c;return e("el-tooltip",{ref:"tooltip",staticClass:"item",attrs:{disabled:!t.tips,effect:"dark",content:t.title,placement:"right",manual:""}},[e("li",{staticClass:"k-menu-item",class:[{className:t.className},{active:t.active},t.direction],style:[t.itemStyle,{height:`${t.height}px`,minHeight:`${t.height}px`},{justifyContent:t.align}],on:{mouseenter:t.onmouseenterFn,mouseleave:t.onMouseLeaveFn,click:t.handleClickFn}},[t.activeShape.includes("line")?[e("transition",{attrs:{appear:"",name:"appear"}},[e("div",{directives:[{name:"show",rawName:"v-show",value:t.active,expression:"active"}],staticClass:"current-shape line",style:{background:t.root.activeColor}})])]:t._e(),t.activeShape.includes("circle")?[e("transition",{attrs:{appear:""}},[e("div",{directives:[{name:"show",rawName:"v-show",value:t.active,expression:"active"}],staticClass:"current-shape circle",style:t.circleStyle})])]:t._e(),t._t("default")],2)])},s=[],o={name:"k-menu-item",data(){return{activeColor:this.root.activeColor}},inject:["root"],methods:{onmouseenterFn(){this.$el.style.backgroundColor=this.root.backgroundColor,this.handleTooltipFn(!0)},onMouseLeaveFn(){this.activeShape.includes("background")&&this.active||(this.$el.style.backgroundColor="",this.handleTooltipFn(!1))},handleClickFn(){this.root.$bus.$emit("changeRoute",this.index),this.$emit("click",this),this.root.$emit("select",this)},handleTooltipFn(t){this.$refs.tooltip.showPopper=t}},computed:{active(){if(!this.root.router)return this.root.activeIndex===this.index;const t=this.root.activeIndex.split("/"),e=this.index.split("/");return t.includes(e[1])},itemStyle(){const t={color:this.active?this.root.activeColor:this.root.textColor,borderLeftColor:this.active?this.root.activeColor:this.root.textColor,backgroundColor:""};return this.activeShape.includes("background")&&(t.backgroundColor=this.active?this.root.backgroundColor:""),t},circleStyle(){return{border:`3px solid ${this.root.activeColor}`,filter:`drop-shadow(0 0 4px ${this.root.activeColor})`}},activeShape(){return this.root.activeShape},tips(){return!!this.title},direction(){return`k-menu-item-${this.root.mode}`}},beforeMount(){},mounted(){},props:{icon:{type:String,default(){return""}},index:{type:String},title:{type:String},width:{type:String,default(){return"70"}},height:{type:String,default(){return"70"}},className:{type:String,default(){return""}},align:{type:String,default(){return"center"}}}},r=o,a=n(1656),l=(0,a.A)(r,i,s,!1,null,"dbebb810",null),c=l.exports},9060:function(t,e,n){n.r(e),n.d(e,{default:function(){return M}});var i=function(){var t=this,e=t._self._c;return e("el-container",{directives:[{name:"resize-ob",rawName:"v-resize-ob",value:t.resizeFn,expression:"resizeFn"}],staticClass:"main-container"},[e("k-aside"),e("el-container",{staticClass:"kams-main-container",attrs:{direction:"vertical"}},[e("k-header"),e("el-main",{class:{isPadding:t.isPadding,lessPadding:t.getIsNarrowScreen}},[e("transition",{attrs:{name:"pps",mode:"out-in"}},[e("keep-alive",{attrs:{include:"kConsole"}},[e("router-view")],1)],1)],1),t.isFooter?e("k-footer"):t._e()],1)],1)},s=[],o=(n(4114),n(3518)),r=function(){var t=this,e=t._self._c;return e("transition",[e("el-aside",{directives:[{name:"show",rawName:"v-show",value:!t.$store.state.layoutOption.isFoldAside,expression:"!$store.state.layoutOption.isFoldAside"}],staticClass:"k-aside"},[e("div",{staticClass:"logo"},[e("img",{attrs:{src:n(3086),alt:""}})]),e("k-menu",{attrs:{"default-active":t.$route.path,"active-color":"#752bec","active-shape":["line"],"text-color":"#061e26","background-color":"#00000017",mode:"column",tips:!0,router:""}},t._l(t.menus,(function(t,n){return e("k-menu-item",{key:n,attrs:{index:t.indexPath,title:t.content,width:"60",height:"60"}},[e("i",{class:t.icon})])})),1),e("div",{staticClass:"empty"}),e("el-tooltip",{attrs:{effect:"dark",content:"退出登录",placement:"right"}},[e("div",{staticClass:"quit"},[e("i",{staticClass:"el-icon-switch-button",attrs:{slot:"reference"},on:{click:t.quitFn},slot:"reference"})])])],1)],1)},a=[],l=n(1552),c=n(1349),u=n(2222),d=n(4844),h={name:"k-aside",components:{kMenuItem:u.A,kMenu:d.A,kAside:c.A},data(){return{visible:!1,isShowDialog:!1,dialogData:{title:"提示",message:"确认退出登录?"},menus:[{icon:"el-icon-pie-chart",content:"数据中心",indexPath:"/dataCenter"},{icon:"el-icon-printer",content:"实例管理",indexPath:"/bots"},{icon:"el-icon-files",content:"模块管理",indexPath:"/modules"},{icon:"el-icon-shopping-bag-1",content:"模块中心",indexPath:"/modulesCenter"},{icon:"el-icon-set-up",content:"指令管理",indexPath:"/command"},{icon:"el-icon-setting",content:"配置查看",indexPath:"/config"},{icon:"el-icon-chat-line-square",content:"沙盒测试",indexPath:"/sandBox"},{icon:"el-icon-cpu",content:"控制台",indexPath:"/console"}]}},methods:{...(0,o.PY)("layoutOption",["updateToken"]),cancelFn(){this.isShowDialog=!1},quitFn(){this.$dialog({content:this.dialogData.message,title:this.dialogData.title}).then((()=>{(0,l.jd)()})).then((()=>{this.updateToken(""),this.$router.push("/login")})).catch((()=>{this.cancelFn()}))}},mounted(){}},p=h,m=n(1656),v=(0,m.A)(p,r,a,!1,null,"20b675e9",null),f=v.exports,g=function(){var t=this,e=t._self._c;return e("el-footer",{attrs:{height:"30px"}},[e("pps-context-menu",{attrs:{menus:t.menus,position:"top"}},[e("div",{staticClass:"version detail",attrs:{slot:"content"},slot:"content"},[e("div",{staticClass:"kotori"},["dev"===t.status?.mode?e("strong",{staticStyle:{padding:"1px","border-radius":"3px",border:"1px solid #ff9955",color:"#fff","background-color":"#ff9955"}},[t._v("Dev")]):t._e(),t._v(" kams v"+t._s(t.version)),t.screenWidth>440?e("span",[t._v(" kotori v"+t._s(t.status?.main))]):t._e(),t.screenWidth>570?e("span",[t._v(" loader v"+t._s(t.status?.loader))]):t._e()])])]),e("pps-context-menu",{attrs:{menus:[{label:"内存",rate:t.roundedRam.rate},{label:"CPU",rate:t.roundedCpu.rate}],position:"top"},scopedSlots:t._u([{key:"item",fn:function({menu:n}){return t._l(n,(function(n,i){return e("div",{key:i,staticClass:"menu-item"},[e("div",{staticClass:"rate"},[e("span",[t._v(t._s(n.label))]),e("el-progress",{attrs:{percentage:Number(n.rate)}})],1)])}))}}])},[e("div",{staticClass:"status detail",attrs:{slot:"content"},slot:"content"},[e("span",[t._v("内存:"+t._s(t.fixedFn(t.roundedRam.rate))+" %")]),t._v(" "),e("span",[t._v("CPU:"+t._s(t.fixedFn(t.roundedCpu.rate))+" %")])])])],1)},k=[],b={rE:"1.5.0"},C={name:"k-footer",data(){return{status:"",version:b.rE,screenWidth:window.innerWidth}},methods:{...(0,o.PY)("webSocketOption",["updateCpu","updateRam"]),contextMenuFn(){},fixedFn(t){return Number(t).toFixed(1)}},computed:{...(0,o.L8)("webSocketOption",["roundedRam","roundedCpu"]),menus(){return[{label:`主程序版本: v${this.status.main}`},{label:`核心版本: v${this.status.core}`},{label:`加载器版本: v${this.status.loader}`}]}},created(){(0,l.P8)().then((({data:t})=>{this.status=t}))},mounted(){this.$ws.bus.$on("wsMessage",(t=>{"stats"===t.type&&(this.updateCpu(t.data.cpu),this.updateRam(t.data.ram))}))},beforeDestroy(){this.$ws.bus.$off("wsMessage")}},F=C,x=(0,m.A)(F,g,k,!1,null,"fc9fc340",null),y=x.exports,w=function(){var t=this,e=t._self._c;return e("el-header",[e("span",{staticClass:"header-left"},[e("pps-button",{nativeOn:{click:function(e){return t.onFold()}}},[e("i",{class:t.arrowClass})]),e("pps-button",{on:{click:function(e){return t.toggleFullscreen()}}},[e("i",{staticClass:"el-icon-full-screen"})])],1),e("span",{staticClass:"title header-center"},[t._v(t._s(t.pathTitle))]),e("span",{staticClass:"header-right"},[e("pps-icon",{attrs:{icon:"pps-icon-github"},on:{click:t.linkGithubFn}}),e("pps-icon",{attrs:{icon:"pps-icon-qq"},on:{click:t.linkQQFn}}),e("pps-icon",{attrs:{icon:"pps-icon-help"},on:{click:t.linkDocsFn}})],1)])},$=[],_=n(9529),S={name:"kHeader",methods:{onFold(){this.$store.commit("layoutOption/updateIsFoldAside",!this.$store.state.layoutOption.isFoldAside)},clearvuexFn(){localStorage.removeItem("vuex")},linkGithubFn(){window.open("https://github.com/kotorijs","_blank")},linkQQFn(){window.open("https://qm.qq.com/q/Nb3lQPt7We","_blank")},linkDocsFn(){window.open("https://kotori.js.org/","_blank")}},computed:{...(0,o.L8)("layoutOption",["getIsFoldAside"]),pathTitle(){return this.$route.matched[1].meta.title},isPadding(){return"/console"===this.$route.path},arrowClass(){return this.getIsFoldAside?"el-icon-d-arrow-right":"el-icon-d-arrow-left"}},mixins:[_.U]},A=S,P=(0,m.A)(A,w,$,!1,null,null,null),I=P.exports;const q=["/console","/sandBox"];var R={name:"myLayout",components:{kAside:f,kFooter:y,kHeader:I},data(){return{}},methods:{...(0,o.i0)("modulesDetail",{getModules:"getData"}),...(0,o.i0)("command",["getCommands"]),handleAside(){q.includes(this.$route.path)||this.isSmall?this.$store.commit("layoutOption/updateIsFoldAside",!0):this.$store.commit("layoutOption/updateIsFoldAside",!1)},resizeFn(t,e){Math.floor(t)<=528?this.$store.commit("layoutOption/updateIsNarrowScreen",!0):this.$store.commit("layoutOption/updateIsNarrowScreen")},async isVersionLatest(){return new Promise(((t,e)=>{(0,l.nI)().then((({data:n})=>{const i=n["@kotori-bot/kotori-plugin-webui"].slice(1).split(".").join(""),s=b.rE.split(".").join("");s<i?(this.$message.error("当前版本过低,请更新webui插件"),this.$route.path.includes("/login")||(this.$store.commit("layoutOption/updateToken"),this.$router.push("/login")),e(new Error("版本过低"))):t()}))}))}},mounted(){},created(){this.getCommands(),this.getModules(),this.isVersionLatest().then((()=>{this.handleAside(),this.$ws.init()})).catch((()=>{}))},beforeDestroy(){console.log("layout beforeDestroy"),this.$ws.instance&&this.$ws.close()},updated(){this.isVersionLatest().then((()=>{this.handleAside()})).catch((()=>{}))},computed:{...(0,o.L8)("layoutOption",["getIsFoldAside","getIsNarrowScreen"]),isPadding(){return!!q.includes(this.$route.path)},isFooter(){return!q[0].includes(this.$route.path)}}},O=R,D=(0,m.A)(O,i,s,!1,null,"9f713dae",null),M=D.exports},9529:function(t,e,n){n.d(e,{B:function(){return s},U:function(){return i}});const i={methods:{toggleFullscreen(){this.isFullscreen()?this.exit():this.enter(document.documentElement)},isFullscreen(){return!!document.fullscreenElement||!!document.webkitFullscreenElement||!!document.mozFullScreenElement||!!document.msFullscreenElement||null},enter(t){t.requestFullscreen?t.requestFullscreen():t.webkitRequestFullscreen?t.webkitRequestFullscreen():t.mozRequestFullScreen?t.mozRequestFullScreen():t.msRequestFullscreen&&t.msRequestFullscreen()},exit(){document.exitFullscreen?document.exitFullscreen():document.webkitExitFullscreen?document.webkitExitFullscreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.msExitFullscreen&&document.msExitFullscreen()}}},s={props:{chatTarget:{type:Object,default(){return null}},memberList:{type:Array,default(){return[]}}},methods:{tranRoleFn(t){const e={lord:"群主",admin:"管理员","super-admin":"bot",expellee:"已退群"};return e[t]||""},avatarContextMenuFn(t){const{uid:e,task:n,key:i}=t;if(n){const t=this.admin.getUserById(e);this.$emit("handleMenuAction",{targetUser:t,actionType:i,groupId:this.chatTarget.id})}}}}},3086:function(t,e,n){t.exports=n.p+"img/favicon.b107f5c1.svg"}}]);
|
|
2
|
+
//# sourceMappingURL=60.df7c62f1.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"js/60.df7c62f1.js","mappings":"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","sources":["webpack://kams/./src/components/layout/aside.vue","webpack://kams/src/components/layout/aside.vue","webpack://kams/./src/components/layout/aside.vue?e6ba","webpack://kams/./src/components/layout/aside.vue?55c2","webpack://kams/./src/components/menus/index.vue","webpack://kams/src/components/menus/index.vue","webpack://kams/./src/components/menus/index.vue?1108","webpack://kams/./src/components/menus/index.vue?581e","webpack://kams/./src/components/menus/menu-item.vue","webpack://kams/src/components/menus/menu-item.vue","webpack://kams/./src/components/menus/menu-item.vue?3887","webpack://kams/./src/components/menus/menu-item.vue?866e","webpack://kams/./src/views/layout/index.vue","webpack://kams/./src/views/layout/aside.vue","webpack://kams/src/views/layout/aside.vue","webpack://kams/./src/views/layout/aside.vue?1719","webpack://kams/./src/views/layout/aside.vue?0508","webpack://kams/./src/views/layout/footer.vue","webpack://kams/src/views/layout/footer.vue","webpack://kams/./src/views/layout/footer.vue?47ef","webpack://kams/./src/views/layout/footer.vue?ed93","webpack://kams/./src/views/layout/header.vue","webpack://kams/src/views/layout/header.vue","webpack://kams/./src/views/layout/header.vue?ca3e","webpack://kams/./src/views/layout/header.vue?bcb3","webpack://kams/src/views/layout/index.vue","webpack://kams/./src/views/layout/index.vue?0396","webpack://kams/./src/views/layout/index.vue?b60b","webpack://kams/./src/mixin/index.js"],"sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c;return _c('aside',{ref:\"aside\",staticClass:\"k-sb-aside k-aside\"},[_c('div',{staticClass:\"k-aside-default\"},[_vm._t(\"default\")],2),_c('div',{staticClass:\"k-aside-inner\"},[_vm._t(\"inner\")],2)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <aside ref=\"aside\" class=\"k-sb-aside k-aside\">\r\n <div class=\"k-aside-default\">\r\n <slot></slot>\r\n </div>\r\n <div class=\"k-aside-inner\">\r\n <slot name=\"inner\"></slot>\r\n </div>\r\n </aside>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n name: 'k-sb-aside'\r\n};\r\n</script>\r\n\r\n<style lang=\"less\">\r\n.k-aside {\r\n display: flex;\r\n flex-direction: column;\r\n background: #fff;\r\n box-sizing: border-box;\r\n height: 100%;\r\n}\r\n.k-aside-inner {\r\n overflow: auto;\r\n box-sizing: border-box;\r\n\r\n &::-webkit-scrollbar {\r\n width: 5px; // 设置滚动条的宽度\r\n height: 0;\r\n }\r\n &::-webkit-scrollbar-track {\r\n background: transparent;\r\n width: 0px;\r\n height: 0;\r\n }\r\n &::-webkit-scrollbar-thumb {\r\n position: absolute;\r\n right: -10px;\r\n // width: 0px;\r\n border-radius: 6px;\r\n background-color: #8888881a;\r\n }\r\n &::-webkit-scrollbar-thumb:hover {\r\n background: #88888833; // 鼠标悬停时滚动条的颜色\r\n }\r\n}\r\n</style>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./aside.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./aside.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./aside.vue?vue&type=template&id=d3871a34\"\nimport script from \"./aside.vue?vue&type=script&lang=js\"\nexport * from \"./aside.vue?vue&type=script&lang=js\"\nimport style0 from \"./aside.vue?vue&type=style&index=0&id=d3871a34&prod&lang=less\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ul',{staticClass:\"k-menu\",style:({\n flexDirection: this.mode\n })},[_vm._t(\"default\")],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <ul\r\n class=\"k-menu\"\r\n :style=\"{\r\n flexDirection: this.mode\r\n }\"\r\n >\r\n <slot></slot>\r\n </ul>\r\n</template>\r\n\r\n<script>\r\nimport Vue from 'vue';\r\nexport default {\r\n name: 'k-menu',\r\n data() {\r\n return {\r\n activeIndex: this.defaultActive\r\n };\r\n },\r\n provide() {\r\n return {\r\n root: this\r\n };\r\n },\r\n props: {\r\n activeColor: {\r\n type: String\r\n },\r\n activeShape: {\r\n type: Array,\r\n default() {\r\n return [];\r\n }\r\n },\r\n backgroundColor: {\r\n type: String\r\n },\r\n textColor: {},\r\n mode: {\r\n type: String,\r\n default() {\r\n return 'column';\r\n }\r\n },\r\n defaultActive: {\r\n type: String\r\n },\r\n router: {\r\n type: Boolean\r\n }\r\n },\r\n methods: {\r\n changeRouteFn(path) {\r\n if (this.router) {\r\n this.$router.push(path);\r\n }\r\n this.activeIndex = path;\r\n }\r\n },\r\n computed: {\r\n rootMenu() {\r\n return {\r\n activeColor: this.activeColor,\r\n backgroundColor: this.backgroundColor,\r\n activeIndex: this.defaultActive\r\n };\r\n }\r\n },\r\n watch: {\r\n defaultActive(val) {\r\n this.activeIndex = val;\r\n }\r\n },\r\n beforeCreate() {\r\n this.$bus = new Vue();\r\n },\r\n mounted() {\r\n this.$bus.$on('changeRoute', this.changeRouteFn);\r\n },\r\n beforeDestroy() {\r\n this.$bus.$off('changeRoute', this.changeRouteFn);\r\n }\r\n};\r\n</script>\r\n\r\n<style lang=\"less\" scoped>\r\n.k-menu {\r\n display: flex;\r\n list-style: none;\r\n // overflow-x: auto;\r\n height: auto;\r\n\r\n &::-webkit-scrollbar {\r\n width: 0px; // 设置滚动条的宽度\r\n height: 0;\r\n }\r\n &::-webkit-scrollbar-track {\r\n background: transparent;\r\n width: 0px;\r\n height: 0;\r\n }\r\n &::-webkit-scrollbar-thumb {\r\n position: absolute;\r\n width: 0px;\r\n border-radius: 6px;\r\n background-color: #8888881a;\r\n }\r\n &::-webkit-scrollbar-thumb:hover {\r\n background: #88888829; // 鼠标悬停时滚动条的颜色\r\n }\r\n}\r\n</style>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=8321ac56&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=8321ac56&prod&lang=less&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"8321ac56\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('el-tooltip',{ref:\"tooltip\",staticClass:\"item\",attrs:{\"disabled\":!_vm.tips,\"effect\":\"dark\",\"content\":_vm.title,\"placement\":\"right\",\"manual\":\"\"}},[_c('li',{staticClass:\"k-menu-item\",class:[{ className: _vm.className }, { active: _vm.active }, _vm.direction],style:([\n _vm.itemStyle,\n { height: `${_vm.height}px`, minHeight: `${_vm.height}px` },\n { justifyContent: _vm.align }\n ]),on:{\"mouseenter\":_vm.onmouseenterFn,\"mouseleave\":_vm.onMouseLeaveFn,\"click\":_vm.handleClickFn}},[(_vm.activeShape.includes('line'))?[_c('transition',{attrs:{\"appear\":\"\",\"name\":\"appear\"}},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.active),expression:\"active\"}],staticClass:\"current-shape line\",style:({ background: _vm.root.activeColor })})])]:_vm._e(),(_vm.activeShape.includes('circle'))?[_c('transition',{attrs:{\"appear\":\"\"}},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.active),expression:\"active\"}],staticClass:\"current-shape circle\",style:(_vm.circleStyle)})])]:_vm._e(),_vm._t(\"default\")],2)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <el-tooltip\r\n :disabled=\"!tips\"\r\n ref=\"tooltip\"\r\n class=\"item\"\r\n effect=\"dark\"\r\n :content=\"title\"\r\n placement=\"right\"\r\n manual\r\n >\r\n <li\r\n class=\"k-menu-item\"\r\n :class=\"[{ className }, { active }, direction]\"\r\n :style=\"[\r\n itemStyle,\r\n { height: `${height}px`, minHeight: `${height}px` },\r\n { justifyContent: align }\r\n ]\"\r\n @mouseenter=\"onmouseenterFn\"\r\n @mouseleave=\"onMouseLeaveFn\"\r\n @click=\"handleClickFn\"\r\n >\r\n <template v-if=\"activeShape.includes('line')\">\r\n <transition appear name=\"appear\">\r\n <div\r\n v-show=\"active\"\r\n class=\"current-shape line\"\r\n :style=\"{ background: root.activeColor }\"\r\n ></div>\r\n </transition>\r\n </template>\r\n <template v-if=\"activeShape.includes('circle')\">\r\n <transition appear>\r\n <div v-show=\"active\" class=\"current-shape circle\" :style=\"circleStyle\"></div>\r\n </transition>\r\n </template>\r\n <slot></slot>\r\n </li>\r\n </el-tooltip>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n name: 'k-menu-item',\r\n data() {\r\n return {\r\n activeColor: this.root.activeColor\r\n };\r\n },\r\n inject: ['root'],\r\n methods: {\r\n onmouseenterFn() {\r\n this.$el.style.backgroundColor = this.root.backgroundColor;\r\n this.handleTooltipFn(true);\r\n },\r\n onMouseLeaveFn() {\r\n if (this.activeShape.includes('background') && this.active) return;\r\n this.$el.style.backgroundColor = '';\r\n this.handleTooltipFn(false);\r\n },\r\n handleClickFn() {\r\n this.root.$bus.$emit('changeRoute', this.index);\r\n this.$emit('click', this);\r\n this.root.$emit('select', this);\r\n },\r\n handleTooltipFn(isShow) {\r\n this.$refs.tooltip.showPopper = isShow;\r\n }\r\n },\r\n computed: {\r\n active() {\r\n if (!this.root.router) return this.root.activeIndex === this.index;\r\n const activeArr = this.root.activeIndex.split('/');\r\n const indexArr = this.index.split('/');\r\n return activeArr.includes(indexArr[1]);\r\n },\r\n itemStyle() {\r\n const style = {\r\n color: this.active ? this.root.activeColor : this.root.textColor,\r\n borderLeftColor: this.active ? this.root.activeColor : this.root.textColor,\r\n backgroundColor: ''\r\n };\r\n if (this.activeShape.includes('background')) {\r\n style.backgroundColor = this.active ? this.root.backgroundColor : '';\r\n }\r\n return style;\r\n },\r\n circleStyle() {\r\n return {\r\n border: `3px solid ${this.root.activeColor}`,\r\n filter: `drop-shadow(0 0 4px ${this.root.activeColor})`\r\n };\r\n },\r\n activeShape() {\r\n return this.root.activeShape;\r\n },\r\n tips() {\r\n if (this.title) return true;\r\n return false;\r\n },\r\n direction() {\r\n return `k-menu-item-${this.root.mode}`;\r\n }\r\n },\r\n beforeMount() {},\r\n mounted() {},\r\n props: {\r\n icon: {\r\n type: String,\r\n default() {\r\n return '';\r\n }\r\n },\r\n index: {\r\n type: String\r\n },\r\n title: {\r\n type: String\r\n },\r\n width: {\r\n type: String,\r\n default() {\r\n return '70';\r\n }\r\n },\r\n height: {\r\n type: String,\r\n default() {\r\n return '70';\r\n }\r\n },\r\n className: {\r\n type: String,\r\n default() {\r\n return '';\r\n }\r\n },\r\n align: {\r\n type: String,\r\n default() {\r\n return 'center';\r\n }\r\n }\r\n }\r\n};\r\n</script>\r\n\r\n<style lang=\"less\" scoped>\r\n.k-menu-item {\r\n display: flex;\r\n position: relative;\r\n flex-direction: row;\r\n align-items: center;\r\n justify-content: center;\r\n width: 100%;\r\n max-width: 500px;\r\n // text-align: center;\r\n list-style-type: none;\r\n border-radius: 5px;\r\n cursor: pointer;\r\n user-select: none;\r\n\r\n .line {\r\n position: absolute;\r\n left: 0;\r\n height: 70%;\r\n width: 4px;\r\n border-radius: 0 8px 8px 0;\r\n }\r\n\r\n .circle {\r\n position: absolute;\r\n margin: 0 auto;\r\n height: 77%;\r\n width: 77%;\r\n border-radius: 50%;\r\n z-index: 1;\r\n }\r\n}\r\n.k-menu-item-row + .k-menu-item-row {\r\n margin-inline-start: 10px;\r\n}\r\n\r\n.k-menu-item-column + .k-menu-item-column {\r\n margin-block-start: 10px;\r\n}\r\n\r\n.current-shape {\r\n pointer-events: none;\r\n}\r\n\r\n/* 进入的起点、离开的终点 */\r\n.appear-enter,\r\n.appear-leave-to {\r\n // transform: scaleY(0);\r\n transform: translateX(-100%);\r\n}\r\n.appear-enter-active,\r\n.appear-leave-active {\r\n transition: 0.2s ease;\r\n}\r\n/* 进入的终点、离开的起点 */\r\n.appear-enter-to,\r\n.appear-leave {\r\n // transform: scaleY(1);\r\n transform: translateX(0);\r\n}\r\n</style>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./menu-item.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./menu-item.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./menu-item.vue?vue&type=template&id=dbebb810&scoped=true\"\nimport script from \"./menu-item.vue?vue&type=script&lang=js\"\nexport * from \"./menu-item.vue?vue&type=script&lang=js\"\nimport style0 from \"./menu-item.vue?vue&type=style&index=0&id=dbebb810&prod&lang=less&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"dbebb810\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('el-container',{directives:[{name:\"resize-ob\",rawName:\"v-resize-ob\",value:(_vm.resizeFn),expression:\"resizeFn\"}],staticClass:\"main-container\"},[_c('k-aside'),_c('el-container',{staticClass:\"kams-main-container\",attrs:{\"direction\":\"vertical\"}},[_c('k-header'),_c('el-main',{class:{ isPadding: _vm.isPadding, lessPadding: _vm.getIsNarrowScreen }},[_c('transition',{attrs:{\"name\":\"pps\",\"mode\":\"out-in\"}},[_c('keep-alive',{attrs:{\"include\":\"kConsole\"}},[_c('router-view')],1)],1)],1),(_vm.isFooter)?_c('k-footer'):_vm._e()],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('transition',[_c('el-aside',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.$store.state.layoutOption.isFoldAside),expression:\"!$store.state.layoutOption.isFoldAside\"}],staticClass:\"k-aside\"},[_c('div',{staticClass:\"logo\"},[_c('img',{attrs:{\"src\":require(\"@/assets/favicon.svg\"),\"alt\":\"\"}})]),_c('k-menu',{attrs:{\"default-active\":_vm.$route.path,\"active-color\":\"#752bec\",\"active-shape\":['line'],\"text-color\":\"#061e26\",\"background-color\":\"#00000017\",\"mode\":\"column\",\"tips\":true,\"router\":\"\"}},_vm._l((_vm.menus),function(menuItem,index){return _c('k-menu-item',{key:index,attrs:{\"index\":menuItem.indexPath,\"title\":menuItem.content,\"width\":\"60\",\"height\":\"60\"}},[_c('i',{class:menuItem.icon})])}),1),_c('div',{staticClass:\"empty\"}),_c('el-tooltip',{attrs:{\"effect\":\"dark\",\"content\":\"退出登录\",\"placement\":\"right\"}},[_c('div',{staticClass:\"quit\"},[_c('i',{staticClass:\"el-icon-switch-button\",attrs:{\"slot\":\"reference\"},on:{\"click\":_vm.quitFn},slot:\"reference\"})])])],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <transition>\r\n <el-aside class=\"k-aside\" v-show=\"!$store.state.layoutOption.isFoldAside\">\r\n <div class=\"logo\">\r\n <img src=\"@/assets/favicon.svg\" alt=\"\" />\r\n </div>\r\n <k-menu\r\n :default-active=\"$route.path\"\r\n active-color=\"#752bec\"\r\n :active-shape=\"['line']\"\r\n text-color=\"#061e26\"\r\n background-color=\"#00000017\"\r\n mode=\"column\"\r\n :tips=\"true\"\r\n router\r\n >\r\n <k-menu-item\r\n v-for=\"(menuItem, index) in menus\"\r\n :key=\"index\"\r\n :index=\"menuItem.indexPath\"\r\n :title=\"menuItem.content\"\r\n width=\"60\"\r\n height=\"60\"\r\n >\r\n <i :class=\"menuItem.icon\" />\r\n <!-- <p>{{ menuItem.content }}</p> -->\r\n </k-menu-item>\r\n </k-menu>\r\n <div class=\"empty\"></div>\r\n <el-tooltip effect=\"dark\" content=\"退出登录\" placement=\"right\">\r\n <div class=\"quit\">\r\n <i @click=\"quitFn\" class=\"el-icon-switch-button\" slot=\"reference\"></i>\r\n </div>\r\n </el-tooltip>\r\n </el-aside>\r\n </transition>\r\n</template>\r\n\r\n<script>\r\nimport { logoutAPI } from '@/api';\r\nimport { mapMutations } from 'vuex';\r\nimport kAside from '@/components/layout/aside.vue';\r\nimport kMenuItem from '@/components/menus/menu-item.vue';\r\nimport kMenu from '@/components/menus/';\r\n\r\nexport default {\r\n name: 'k-aside',\r\n // eslint-disable-next-line vue/no-unused-components\r\n components: { kMenuItem, kMenu, kAside },\r\n data() {\r\n return {\r\n visible: false,\r\n isShowDialog: false,\r\n dialogData: { title: '提示', message: '确认退出登录?' },\r\n menus: [\r\n { icon: 'el-icon-pie-chart', content: '数据中心', indexPath: '/dataCenter' },\r\n { icon: 'el-icon-printer', content: '实例管理', indexPath: '/bots' },\r\n { icon: 'el-icon-files', content: '模块管理', indexPath: '/modules' },\r\n {\r\n icon: 'el-icon-shopping-bag-1',\r\n content: '模块中心',\r\n indexPath: '/modulesCenter'\r\n },\r\n { icon: 'el-icon-set-up', content: '指令管理', indexPath: '/command' },\r\n { icon: 'el-icon-setting', content: '配置查看', indexPath: '/config' },\r\n { icon: 'el-icon-chat-line-square', content: '沙盒测试', indexPath: '/sandBox' },\r\n { icon: 'el-icon-cpu', content: '控制台', indexPath: '/console' }\r\n ]\r\n };\r\n },\r\n methods: {\r\n ...mapMutations('layoutOption', ['updateToken']),\r\n cancelFn() {\r\n this.isShowDialog = false;\r\n },\r\n quitFn() {\r\n this.$dialog({ content: this.dialogData.message, title: this.dialogData.title })\r\n .then(() => {\r\n logoutAPI();\r\n })\r\n .then(() => {\r\n this.updateToken('');\r\n this.$router.push('/login');\r\n })\r\n .catch(() => {\r\n this.cancelFn();\r\n });\r\n }\r\n },\r\n mounted() {}\r\n};\r\n</script>\r\n\r\n<style lang=\"less\" scoped>\r\n.el-aside {\r\n display: flex;\r\n flex-direction: column;\r\n width: 60px !important;\r\n background: var(--bg-normal);\r\n user-select: none;\r\n box-shadow: 0 0 8px 0 var(--normal-shadow);\r\n overflow-x: hidden;\r\n z-index: 1;\r\n .logo {\r\n position: sticky;\r\n background: #fff;\r\n top: 0;\r\n width: 60px;\r\n height: 60px;\r\n line-height: 60px;\r\n text-align: center;\r\n z-index: 1;\r\n }\r\n img {\r\n max-width: 30px;\r\n cursor: pointer;\r\n transition: 0.1s linear;\r\n }\r\n .k-menu {\r\n margin-top: 10px;\r\n p {\r\n font-size: 13px;\r\n }\r\n i {\r\n font-size: 23px;\r\n }\r\n }\r\n .empty {\r\n height: 0;\r\n flex-grow: 1;\r\n }\r\n .quit {\r\n position: sticky;\r\n bottom: 0;\r\n background: #fff;\r\n width: 60px;\r\n height: 60px;\r\n line-height: 60px;\r\n font-size: 25px;\r\n text-align: center;\r\n box-sizing: border-box;\r\n cursor: pointer;\r\n\r\n &:hover {\r\n color: var(--theme-color);\r\n }\r\n }\r\n &::-webkit-scrollbar {\r\n width: 5px; // 设置滚动条的宽度\r\n }\r\n &::-webkit-scrollbar-track {\r\n background: transparent;\r\n width: 5px;\r\n }\r\n &::-webkit-scrollbar-thumb {\r\n position: absolute;\r\n right: -5px;\r\n width: 5px;\r\n background: #88888870;\r\n border-radius: 6px;\r\n }\r\n &::-webkit-scrollbar-thumb:hover {\r\n background: #888888; // 鼠标悬停时滚动条的颜色\r\n }\r\n}\r\n.v-enter,\r\n.v-leave-to {\r\n width: 0 !important;\r\n}\r\n.v-enter-active,\r\n.v-leave-active {\r\n transition: 0.2s ease-in-out;\r\n}\r\n.v-enter-to,\r\n.v-leave {\r\n width: 60px;\r\n}\r\n</style>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./aside.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./aside.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./aside.vue?vue&type=template&id=20b675e9&scoped=true\"\nimport script from \"./aside.vue?vue&type=script&lang=js\"\nexport * from \"./aside.vue?vue&type=script&lang=js\"\nimport style0 from \"./aside.vue?vue&type=style&index=0&id=20b675e9&prod&lang=less&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"20b675e9\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('el-footer',{attrs:{\"height\":\"30px\"}},[_c('pps-context-menu',{attrs:{\"menus\":_vm.menus,\"position\":\"top\"}},[_c('div',{staticClass:\"version detail\",attrs:{\"slot\":\"content\"},slot:\"content\"},[_c('div',{staticClass:\"kotori\"},[(_vm.status?.mode === 'dev')?_c('strong',{staticStyle:{\"padding\":\"1px\",\"border-radius\":\"3px\",\"border\":\"1px solid #ff9955\",\"color\":\"#fff\",\"background-color\":\"#ff9955\"}},[_vm._v(\"Dev\")]):_vm._e(),_vm._v(\" kams v\"+_vm._s(_vm.version)),(_vm.screenWidth > 440)?_c('span',[_vm._v(\" kotori v\"+_vm._s(_vm.status?.main))]):_vm._e(),(_vm.screenWidth > 570)?_c('span',[_vm._v(\" loader v\"+_vm._s(_vm.status?.loader))]):_vm._e()])])]),_c('pps-context-menu',{attrs:{\"menus\":[\n { label: '内存', rate: _vm.roundedRam.rate },\n { label: 'CPU', rate: _vm.roundedCpu.rate }\n ],\"position\":\"top\"},scopedSlots:_vm._u([{key:\"item\",fn:function({ menu }){return _vm._l((menu),function(item,index){return _c('div',{key:index,staticClass:\"menu-item\"},[_c('div',{staticClass:\"rate\"},[_c('span',[_vm._v(_vm._s(item.label))]),_c('el-progress',{attrs:{\"percentage\":Number(item.rate)}})],1)])})}}])},[_c('div',{staticClass:\"status detail\",attrs:{\"slot\":\"content\"},slot:\"content\"},[_c('span',[_vm._v(\"内存:\"+_vm._s(_vm.fixedFn(_vm.roundedRam.rate))+\" %\")]),_vm._v(\" \"),_c('span',[_vm._v(\"CPU:\"+_vm._s(_vm.fixedFn(_vm.roundedCpu.rate))+\" %\")])])])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <el-footer height=\"30px\">\r\n <pps-context-menu :menus=\"menus\" position=\"top\">\r\n <div slot=\"content\" class=\"version detail\">\r\n <div class=\"kotori\"><strong v-if=\"status?.mode === 'dev'\"\r\n style=\"padding: 1px;border-radius: 3px; border: 1px solid #ff9955; color: #fff; background-color: #ff9955\">Dev</strong>\r\n kams v{{ version }}<span v-if=\"screenWidth > 440\"> kotori v{{ status?.main }}</span><span\r\n v-if=\"screenWidth > 570\"> loader v{{ status?.loader }}</span></div>\r\n </div>\r\n </pps-context-menu>\r\n <pps-context-menu :menus=\"[\r\n { label: '内存', rate: roundedRam.rate },\r\n { label: 'CPU', rate: roundedCpu.rate }\r\n ]\" position=\"top\">\r\n <div slot=\"content\" class=\"status detail\">\r\n <span>内存:{{ fixedFn(roundedRam.rate) }} %</span>\r\n \r\n <span>CPU:{{ fixedFn(roundedCpu.rate) }} %</span>\r\n </div>\r\n <template v-slot:item=\"{ menu }\">\r\n <div class=\"menu-item\" v-for=\"(item, index) in menu\" :key=\"index\">\r\n <div class=\"rate\">\r\n <span>{{ item.label }}</span>\r\n <el-progress :percentage=\"Number(item.rate)\"></el-progress>\r\n </div>\r\n </div>\r\n </template>\r\n </pps-context-menu>\r\n </el-footer>\r\n</template>\r\n\r\n<script>\r\nimport { mapGetters, mapMutations } from 'vuex'\r\nimport { version } from '@/../package.json'\r\nimport { getStatusAPI } from '@/api/index'\r\nexport default {\r\n name: 'k-footer',\r\n data() {\r\n return {\r\n status: '',\r\n version,\r\n screenWidth: window.innerWidth\r\n }\r\n },\r\n methods: {\r\n ...mapMutations('webSocketOption', ['updateCpu', 'updateRam']),\r\n contextMenuFn() {},\r\n fixedFn(num) {\r\n return Number(num).toFixed(1)\r\n }\r\n },\r\n computed: {\r\n ...mapGetters('webSocketOption', ['roundedRam', 'roundedCpu']),\r\n menus() {\r\n return [\r\n { label: `主程序版本: v${this.status.main}` },\r\n { label: `核心版本: v${this.status.core}` },\r\n { label: `加载器版本: v${this.status.loader}` }\r\n ]\r\n }\r\n },\r\n created() {\r\n getStatusAPI().then(({ data: res }) => {\r\n this.status = res\r\n })\r\n },\r\n mounted() {\r\n this.$ws.bus.$on('wsMessage', (msg) => {\r\n if (msg.type === 'stats') {\r\n this.updateCpu(msg.data.cpu)\r\n this.updateRam(msg.data.ram)\r\n }\r\n })\r\n },\r\n beforeDestroy() {\r\n this.$ws.bus.$off('wsMessage')\r\n }\r\n}\r\n</script>\r\n\r\n<style scoped lang=\"scss\">\r\n.el-footer {\r\n height: var(--k-footer-height) !important;\r\n display: flex;\r\n justify-content: space-between !important;\r\n align-items: center;\r\n font-size: 12px;\r\n background-color: #eee;\r\n z-index: 5;\r\n\r\n .detail {\r\n height: 100%;\r\n display: inline-flex;\r\n align-items: center;\r\n user-select: none;\r\n\r\n &:hover {\r\n cursor: pointer;\r\n background: #ffffff;\r\n }\r\n }\r\n\r\n .menu-item {\r\n padding: 5px 10px;\r\n cursor: pointer;\r\n\r\n &:hover {\r\n background: #f5f5f5;\r\n }\r\n }\r\n\r\n & ::v-deep .rate {\r\n display: inline-flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n width: 160px;\r\n\r\n .el-progress {\r\n width: 80%;\r\n\r\n & ::v-deep .el-progress-bar {\r\n width: 90% !important;\r\n }\r\n }\r\n }\r\n\r\n .pps-context-menu-area {\r\n height: 100%;\r\n }\r\n}\r\n</style>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./footer.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./footer.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./footer.vue?vue&type=template&id=fc9fc340&scoped=true\"\nimport script from \"./footer.vue?vue&type=script&lang=js\"\nexport * from \"./footer.vue?vue&type=script&lang=js\"\nimport style0 from \"./footer.vue?vue&type=style&index=0&id=fc9fc340&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"fc9fc340\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('el-header',[_c('span',{staticClass:\"header-left\"},[_c('pps-button',{nativeOn:{\"click\":function($event){return _vm.onFold()}}},[_c('i',{class:_vm.arrowClass})]),_c('pps-button',{on:{\"click\":function($event){return _vm.toggleFullscreen()}}},[_c('i',{staticClass:\"el-icon-full-screen\"})])],1),_c('span',{staticClass:\"title header-center\"},[_vm._v(_vm._s(_vm.pathTitle))]),_c('span',{staticClass:\"header-right\"},[_c('pps-icon',{attrs:{\"icon\":\"pps-icon-github\"},on:{\"click\":_vm.linkGithubFn}}),_c('pps-icon',{attrs:{\"icon\":\"pps-icon-qq\"},on:{\"click\":_vm.linkQQFn}}),_c('pps-icon',{attrs:{\"icon\":\"pps-icon-help\"},on:{\"click\":_vm.linkDocsFn}})],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <el-header>\r\n <span class=\"header-left\">\r\n <pps-button @click.native=\"onFold()\">\r\n <i :class=\"arrowClass\"></i>\r\n </pps-button>\r\n <pps-button @click=\"toggleFullscreen()\">\r\n <i class=\"el-icon-full-screen\"></i>\r\n </pps-button>\r\n </span>\r\n <span class=\"title header-center\">{{ pathTitle }}</span>\r\n <span class=\"header-right\">\r\n <pps-icon icon=\"pps-icon-github\" @click=\"linkGithubFn\" />\r\n <pps-icon icon=\"pps-icon-qq\" @click=\"linkQQFn\" />\r\n <pps-icon icon=\"pps-icon-help\" @click=\"linkDocsFn\" />\r\n </span>\r\n </el-header>\r\n</template>\r\n\r\n<script>\r\nimport { userFullScreen } from '@/mixin/index';\r\nimport { mapGetters } from 'vuex';\r\nexport default {\r\n name: 'kHeader',\r\n methods: {\r\n onFold() {\r\n this.$store.commit(\r\n 'layoutOption/updateIsFoldAside',\r\n !this.$store.state.layoutOption.isFoldAside\r\n );\r\n },\r\n clearvuexFn() {\r\n localStorage.removeItem('vuex');\r\n },\r\n linkGithubFn() {\r\n window.open('https://github.com/kotorijs', '_blank');\r\n },\r\n linkQQFn() {\r\n window.open('https://qm.qq.com/q/Nb3lQPt7We', '_blank');\r\n },\r\n linkDocsFn() {\r\n window.open('https://kotori.js.org/', '_blank');\r\n }\r\n },\r\n computed: {\r\n ...mapGetters('layoutOption', ['getIsFoldAside']),\r\n pathTitle() {\r\n return this.$route.matched[1].meta.title;\r\n },\r\n isPadding() {\r\n if (this.$route.path === '/console') {\r\n return true;\r\n }\r\n return false;\r\n },\r\n arrowClass() {\r\n if (this.getIsFoldAside) return 'el-icon-d-arrow-right';\r\n return 'el-icon-d-arrow-left';\r\n }\r\n },\r\n mixins: [userFullScreen]\r\n};\r\n</script>\r\n\r\n<style lang=\"less\">\r\n.el-header {\r\n display: flex;\r\n position: relative;\r\n padding: 0;\r\n justify-content: space-between;\r\n align-items: center;\r\n font-size: 13px;\r\n border-bottom: 2px solid #e1e2e8;\r\n background-color: var(--bg-main);\r\n height: var(--k-header-height) !important;\r\n\r\n .title {\r\n color: var(--font-gray-color);\r\n font-size: 1.17em;\r\n font-weight: 600;\r\n letter-spacing: 1px;\r\n }\r\n\r\n .header-left {\r\n flex: 1;\r\n }\r\n .header-center {\r\n position: absolute;\r\n left: 50%;\r\n transform: translateX(-50%);\r\n }\r\n .header-right {\r\n flex: 1;\r\n text-align: right;\r\n\r\n .pps-icon {\r\n float: right;\r\n cursor: pointer;\r\n &:hover {\r\n transform: scale(1.1);\r\n }\r\n }\r\n }\r\n}\r\n</style>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./header.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./header.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./header.vue?vue&type=template&id=774e4cc2\"\nimport script from \"./header.vue?vue&type=script&lang=js\"\nexport * from \"./header.vue?vue&type=script&lang=js\"\nimport style0 from \"./header.vue?vue&type=style&index=0&id=774e4cc2&prod&lang=less\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","<template>\r\n <el-container class=\"main-container\" v-resize-ob=\"resizeFn\">\r\n <k-aside></k-aside>\r\n <el-container class=\"kams-main-container\" direction=\"vertical\">\r\n <k-header></k-header>\r\n <el-main :class=\"{ isPadding, lessPadding: getIsNarrowScreen }\">\r\n <transition name=\"pps\" mode=\"out-in\">\r\n <keep-alive include=\"kConsole\">\r\n <router-view></router-view>\r\n </keep-alive>\r\n </transition>\r\n </el-main>\r\n <k-footer v-if=\"isFooter\"></k-footer>\r\n </el-container>\r\n </el-container>\r\n</template>\r\n\r\n<script>\r\nimport { mapGetters, mapActions } from 'vuex';\r\nimport kAside from './aside.vue';\r\nimport kFooter from './footer.vue';\r\nimport kHeader from './header.vue';\r\nimport { version } from '@/../package.json';\r\nimport { getVersionAPI } from '@/api';\r\nconst uniqueRoutes = ['/console', '/sandBox'];\r\n\r\nexport default {\r\n name: 'myLayout',\r\n components: { kAside, kFooter, kHeader },\r\n data() {\r\n return {};\r\n },\r\n methods: {\r\n ...mapActions('modulesDetail', { getModules: 'getData' }),\r\n ...mapActions('command', ['getCommands']),\r\n handleAside() {\r\n if (uniqueRoutes.includes(this.$route.path) || this.isSmall) {\r\n this.$store.commit('layoutOption/updateIsFoldAside', true);\r\n } else {\r\n this.$store.commit('layoutOption/updateIsFoldAside', false);\r\n }\r\n },\r\n resizeFn(w, h) {\r\n if (Math.floor(w) <= 528) {\r\n this.$store.commit('layoutOption/updateIsNarrowScreen', true);\r\n } else {\r\n this.$store.commit('layoutOption/updateIsNarrowScreen');\r\n }\r\n },\r\n async isVersionLatest() {\r\n // 判断是否最新版本\r\n return new Promise((resolve, reject) => {\r\n getVersionAPI().then(({ data: res }) => {\r\n const lastVersion = res['@kotori-bot/kotori-plugin-webui'].slice(1).split('.').join('');\r\n const localVersion = version.split('.').join('');\r\n if (localVersion < lastVersion) {\r\n this.$message.error('当前版本过低,请更新webui插件');\r\n if (!this.$route.path.includes('/login')) {\r\n this.$store.commit('layoutOption/updateToken');\r\n this.$router.push('/login');\r\n }\r\n reject(new Error('版本过低'));\r\n } else {\r\n resolve();\r\n }\r\n });\r\n });\r\n }\r\n },\r\n mounted() {},\r\n created() {\r\n this.getCommands();\r\n this.getModules();\r\n this.isVersionLatest()\r\n .then(() => {\r\n this.handleAside();\r\n this.$ws.init();\r\n })\r\n .catch(() => {});\r\n },\r\n beforeDestroy() {\r\n console.log('layout beforeDestroy');\r\n if (this.$ws.instance) {\r\n this.$ws.close();\r\n }\r\n },\r\n updated() {\r\n this.isVersionLatest()\r\n .then(() => {\r\n this.handleAside();\r\n })\r\n .catch(() => {});\r\n },\r\n computed: {\r\n ...mapGetters('layoutOption', ['getIsFoldAside', 'getIsNarrowScreen']),\r\n isPadding() {\r\n if (uniqueRoutes.includes(this.$route.path)) {\r\n return true;\r\n }\r\n return false;\r\n },\r\n isFooter() {\r\n if (uniqueRoutes[0].includes(this.$route.path)) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n }\r\n};\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.isPadding {\r\n // padding-left: 0 !important;\r\n // padding-right: 0 !important\r\n padding: 0 !important;\r\n}\r\n.lessPadding {\r\n padding-left: 10px;\r\n padding-right: 10px;\r\n}\r\n.main-container {\r\n height: 100%;\r\n max-width: 100vw;\r\n\r\n .kams-main-container {\r\n flex-basis: 0;\r\n flex: 1;\r\n }\r\n\r\n .el-main {\r\n padding-top: 0;\r\n padding-bottom: 0;\r\n overflow-x: hidden;\r\n height: var(--k-main-height);\r\n background-color: var(--normal-color);\r\n &::-webkit-scrollbar {\r\n width: 5px; // 设置滚动条的宽度\r\n height: 5px;\r\n }\r\n &::-webkit-scrollbar-track {\r\n background: transparent;\r\n width: 5px;\r\n }\r\n &::-webkit-scrollbar-thumb {\r\n position: absolute;\r\n right: -5px;\r\n width: 5px;\r\n background: #88888870;\r\n border-radius: 6px;\r\n }\r\n &::-webkit-scrollbar-thumb:hover {\r\n background: #888888; // 鼠标悬停时滚动条的颜色\r\n }\r\n }\r\n}\r\n</style>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=9f713dae&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=9f713dae&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"9f713dae\",\n null\n \n)\n\nexport default component.exports","export const userFullScreen = {\r\n methods: {\r\n toggleFullscreen() {\r\n this.isFullscreen() ? this.exit() : this.enter(document.documentElement);\r\n },\r\n isFullscreen() {\r\n return (\r\n !!document.fullscreenElement ||\r\n !!document.webkitFullscreenElement ||\r\n !!document.mozFullScreenElement ||\r\n !!document.msFullscreenElement ||\r\n null\r\n );\r\n },\r\n enter(element) {\r\n if (element.requestFullscreen) {\r\n element.requestFullscreen();\r\n } else if (element.webkitRequestFullscreen) {\r\n // Safari\r\n element.webkitRequestFullscreen();\r\n } else if (element.mozRequestFullScreen) {\r\n // Firefox\r\n element.mozRequestFullScreen();\r\n } else if (element.msRequestFullscreen) {\r\n // IE/Edge\r\n element.msRequestFullscreen();\r\n }\r\n },\r\n exit() {\r\n if (document.exitFullscreen) {\r\n document.exitFullscreen();\r\n } else if (document.webkitExitFullscreen) {\r\n // Safari\r\n document.webkitExitFullscreen();\r\n } else if (document.mozCancelFullScreen) {\r\n // Firefox\r\n document.mozCancelFullScreen();\r\n } else if (document.msExitFullscreen) {\r\n // IE/Edge\r\n document.msExitFullscreen();\r\n }\r\n }\r\n }\r\n};\r\n\r\nexport const tranRoleMixin = {\r\n props: {\r\n chatTarget: {\r\n type: Object,\r\n default() {\r\n return null;\r\n }\r\n },\r\n memberList: {\r\n type: Array,\r\n default() {\r\n return [];\r\n }\r\n }\r\n },\r\n methods: {\r\n tranRoleFn(role) {\r\n const roleMap = {\r\n lord: '群主',\r\n admin: '管理员',\r\n 'super-admin': 'bot',\r\n expellee: '已退群'\r\n };\r\n return roleMap[role] || '';\r\n },\r\n avatarContextMenuFn(menu) {\r\n const { uid, task, key } = menu;\r\n if (task) {\r\n const user = this.admin.getUserById(uid);\r\n this.$emit('handleMenuAction', {\r\n targetUser: user,\r\n actionType: key,\r\n groupId: this.chatTarget.id\r\n });\r\n }\r\n }\r\n }\r\n};\r\n\r\n// const permissionList = {}\r\n"],"names":["render","_vm","this","_c","_self","ref","staticClass","_t","staticRenderFns","name","component","style","flexDirection","mode","data","activeIndex","defaultActive","provide","root","props","activeColor","type","String","activeShape","Array","default","backgroundColor","textColor","router","Boolean","methods","changeRouteFn","path","$router","push","computed","rootMenu","watch","val","beforeCreate","$bus","Vue","mounted","$on","beforeDestroy","$off","attrs","tips","title","class","className","active","direction","itemStyle","height","minHeight","justifyContent","align","on","onmouseenterFn","onMouseLeaveFn","handleClickFn","includes","directives","rawName","value","expression","background","_e","circleStyle","inject","$el","handleTooltipFn","$emit","index","isShow","$refs","tooltip","showPopper","activeArr","split","indexArr","color","borderLeftColor","border","filter","beforeMount","icon","width","resizeFn","isPadding","lessPadding","getIsNarrowScreen","isFooter","$store","state","layoutOption","isFoldAside","require","$route","_l","menus","menuItem","key","indexPath","content","quitFn","slot","components","kMenuItem","kMenu","kAside","visible","isShowDialog","dialogData","message","mapMutations","cancelFn","$dialog","then","logoutAPI","updateToken","catch","status","staticStyle","_v","_s","version","screenWidth","main","loader","label","rate","roundedRam","roundedCpu","scopedSlots","_u","fn","menu","item","Number","fixedFn","window","innerWidth","contextMenuFn","num","toFixed","mapGetters","core","created","getStatusAPI","res","$ws","bus","msg","updateCpu","cpu","updateRam","ram","nativeOn","$event","onFold","arrowClass","toggleFullscreen","pathTitle","linkGithubFn","linkQQFn","linkDocsFn","commit","clearvuexFn","localStorage","removeItem","open","matched","meta","getIsFoldAside","mixins","userFullScreen","uniqueRoutes","kFooter","kHeader","mapActions","getModules","handleAside","isSmall","w","h","Math","floor","isVersionLatest","Promise","resolve","reject","getVersionAPI","lastVersion","slice","join","localVersion","$message","error","Error","getCommands","init","console","log","instance","close","updated","isFullscreen","exit","enter","document","documentElement","fullscreenElement","webkitFullscreenElement","mozFullScreenElement","msFullscreenElement","element","requestFullscreen","webkitRequestFullscreen","mozRequestFullScreen","msRequestFullscreen","exitFullscreen","webkitExitFullscreen","mozCancelFullScreen","msExitFullscreen","tranRoleMixin","chatTarget","Object","memberList","tranRoleFn","role","roleMap","lord","admin","expellee","avatarContextMenuFn","uid","task","user","getUserById","targetUser","actionType","groupId","id"],"sourceRoot":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";(self["webpackChunkkams"]=self["webpackChunkkams"]||[]).push([[620],{7620:function(t,e,a){a.r(e),a.d(e,{default:function(){return m}});var n=function(){var t=this,e=t._self._c;return e("div",{staticClass:"create-user-modal"},[e("h3",{staticClass:"modal-title"},[t._v("创建用户")]),e("div",{staticClass:"form-group"},[e("label",[t._v("昵称:")]),e("b-input",{attrs:{type:"text",placeholder:"请输入昵称"},model:{value:t.value,callback:function(e){t.value=e},expression:"value"}}),e("span",[t._v(t._s(t.value))])],1),t._m(0),t._m(1),t._m(2),t._m(3),t._m(4),e("div",{staticClass:"modal-footer"},[e("button",{staticClass:"cancel-btn"},[t._v("取消")]),e("button",{staticClass:"confirm-btn",on:{click:function(e){return t.testAsync()}}},[t._v("确认")])])])},s=[function(){var t=this,e=t._self._c;return e("div",{staticClass:"form-group"},[e("label",[t._v("账号:")]),e("input",{attrs:{type:"text",placeholder:"请输入账号"}})])},function(){var t=this,e=t._self._c;return e("div",{staticClass:"form-group"},[e("label",[t._v("年龄:")]),e("input",{attrs:{type:"number",placeholder:"请输入年龄"}})])},function(){var t=this,e=t._self._c;return e("div",{staticClass:"form-group gender"},[e("label",[t._v("性别:")]),e("label",[e("input",{attrs:{type:"radio",name:"gender",value:"男",checked:""}}),t._v(" 男 ")]),e("label",[e("input",{attrs:{type:"radio",name:"gender",value:"女"}}),t._v(" 女 ")])])},function(){var t=this,e=t._self._c;return e("div",{staticClass:"form-group"},[e("label",[t._v("头像:")]),e("input",{attrs:{type:"text",placeholder:"请输入 https 地址"}})])},function(){var t=this,e=t._self._c;return e("div",{staticClass:"quick-create"},[e("span",[t._v("快速创建10个用户")]),e("button",{staticClass:"quick-btn"},[e("i",{staticClass:"icon"},[t._v("⚡")]),t._v(" 快速创建 ")])])}],l=function(){var t=this,e=t._self._c;return e("div",[e("input",t._b({ref:"input",attrs:{type:"text"},on:{input:t.handleInput,change:t.handleChange}},"input",t.$attrs,!1))])},u=[],r={data(){return{}},props:{value:{type:String,default:""}},methods:{handleInput(t){this.$emit("input",t.target.value)},handleChange(t){this.$emit("change",t.target.value)},setNativeInputValue(){const t=this.$refs.input,e=null===this.value||void 0===this.value?"":String(this.value);t.value!==e&&(t.value=e)}},mounted(){this.setNativeInputValue()}},i=r,c=a(1656),o=(0,c.A)(i,l,u,!1,null,null,null),v=o.exports,p=a(1552);const h=t=>{const e=new Map;return function(...a){const n=JSON.stringify(a);if(e.has(n))return e.get(n);try{const s=t(...a);return e.set(n,s),s}catch(s){throw s.then((t=>{e.set(n,t),h()})),s}}};var d={components:{bInput:v},data(){return{value:"abc"}},methods:{testAsync(){const t=h(p.nI);console.log("开始请求"),this.main(t),console.log("结束请求")},main(t){}}},_=d,f=(0,c.A)(_,n,s,!1,null,null,null),m=f.exports}}]);
|
|
2
|
+
//# sourceMappingURL=620.cc5f8280.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"js/620.cc5f8280.js","mappings":"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","sources":["webpack://kams/./src/views/404/index.vue","webpack://kams/./src/views/404/bindInput.vue","webpack://kams/src/views/404/bindInput.vue","webpack://kams/./src/views/404/bindInput.vue?fdbf","webpack://kams/./src/views/404/bindInput.vue?ef33","webpack://kams/src/views/404/index.vue","webpack://kams/./src/views/404/index.vue?f187","webpack://kams/./src/views/404/index.vue?1b40"],"sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"create-user-modal\"},[_c('h3',{staticClass:\"modal-title\"},[_vm._v(\"创建用户\")]),_c('div',{staticClass:\"form-group\"},[_c('label',[_vm._v(\"昵称:\")]),_c('b-input',{attrs:{\"type\":\"text\",\"placeholder\":\"请输入昵称\"},model:{value:(_vm.value),callback:function ($$v) {_vm.value=$$v},expression:\"value\"}}),_c('span',[_vm._v(_vm._s(_vm.value))])],1),_vm._m(0),_vm._m(1),_vm._m(2),_vm._m(3),_vm._m(4),_c('div',{staticClass:\"modal-footer\"},[_c('button',{staticClass:\"cancel-btn\"},[_vm._v(\"取消\")]),_c('button',{staticClass:\"confirm-btn\",on:{\"click\":function($event){return _vm.testAsync()}}},[_vm._v(\"确认\")])])])\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"form-group\"},[_c('label',[_vm._v(\"账号:\")]),_c('input',{attrs:{\"type\":\"text\",\"placeholder\":\"请输入账号\"}})])\n},function (){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"form-group\"},[_c('label',[_vm._v(\"年龄:\")]),_c('input',{attrs:{\"type\":\"number\",\"placeholder\":\"请输入年龄\"}})])\n},function (){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"form-group gender\"},[_c('label',[_vm._v(\"性别:\")]),_c('label',[_c('input',{attrs:{\"type\":\"radio\",\"name\":\"gender\",\"value\":\"男\",\"checked\":\"\"}}),_vm._v(\" 男 \")]),_c('label',[_c('input',{attrs:{\"type\":\"radio\",\"name\":\"gender\",\"value\":\"女\"}}),_vm._v(\" 女 \")])])\n},function (){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"form-group\"},[_c('label',[_vm._v(\"头像:\")]),_c('input',{attrs:{\"type\":\"text\",\"placeholder\":\"请输入 https 地址\"}})])\n},function (){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"quick-create\"},[_c('span',[_vm._v(\"快速创建10个用户\")]),_c('button',{staticClass:\"quick-btn\"},[_c('i',{staticClass:\"icon\"},[_vm._v(\"⚡\")]),_vm._v(\" 快速创建 \")])])\n}]\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('input',_vm._b({ref:\"input\",attrs:{\"type\":\"text\"},on:{\"input\":_vm.handleInput,\"change\":_vm.handleChange}},'input',_vm.$attrs,false))])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <div>\r\n <input ref=\"input\" type=\"text\" v-bind=\"$attrs\" @input=\"handleInput\" @change=\"handleChange\" />\r\n </div>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n data() {\r\n return {};\r\n },\r\n props: {\r\n value: {\r\n type: String,\r\n default: ''\r\n }\r\n },\r\n methods: {\r\n handleInput(e) {\r\n this.$emit('input', e.target.value);\r\n },\r\n handleChange(e) {\r\n this.$emit('change', e.target.value);\r\n },\r\n setNativeInputValue() {\r\n const input = this.$refs.input;\r\n const val = this.value === null || this.value === undefined ? '' : String(this.value);\r\n if (input.value === val) return;\r\n input.value = val;\r\n }\r\n },\r\n mounted() {\r\n this.setNativeInputValue();\r\n }\r\n};\r\n</script>\r\n\r\n<style></style>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./bindInput.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./bindInput.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./bindInput.vue?vue&type=template&id=bec2195a\"\nimport script from \"./bindInput.vue?vue&type=script&lang=js\"\nexport * from \"./bindInput.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","<template>\r\n <div class=\"create-user-modal\">\r\n <h3 class=\"modal-title\">创建用户</h3>\r\n <div class=\"form-group\">\r\n <label>昵称:</label>\r\n <b-input type=\"text\" placeholder=\"请输入昵称\" v-model=\"value\" />\r\n <span>{{ value }}</span>\r\n </div>\r\n <div class=\"form-group\">\r\n <label>账号:</label>\r\n <input type=\"text\" placeholder=\"请输入账号\" />\r\n </div>\r\n <div class=\"form-group\">\r\n <label>年龄:</label>\r\n <input type=\"number\" placeholder=\"请输入年龄\" />\r\n </div>\r\n <div class=\"form-group gender\">\r\n <label>性别:</label>\r\n <label>\r\n <input type=\"radio\" name=\"gender\" value=\"男\" checked />\r\n 男\r\n </label>\r\n <label>\r\n <input type=\"radio\" name=\"gender\" value=\"女\" />\r\n 女\r\n </label>\r\n </div>\r\n <div class=\"form-group\">\r\n <label>头像:</label>\r\n <input type=\"text\" placeholder=\"请输入 https 地址\" />\r\n </div>\r\n\r\n <!-- 快速创建 -->\r\n <div class=\"quick-create\">\r\n <span>快速创建10个用户</span>\r\n <button class=\"quick-btn\">\r\n <i class=\"icon\">⚡</i>\r\n 快速创建\r\n </button>\r\n </div>\r\n\r\n <!-- 底部按钮 -->\r\n <div class=\"modal-footer\">\r\n <button class=\"cancel-btn\">取消</button>\r\n <button @click=\"testAsync()\" class=\"confirm-btn\">确认</button>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport bInput from './bindInput.vue';\r\nimport { getVersionAPI } from '../../api/index';\r\n\r\nconst withAsyncCache = (fn) => {\r\n const cache = new Map();\r\n\r\n return function (...args) {\r\n const key = JSON.stringify(args);\r\n if (cache.has(key)) {\r\n return cache.get(key); // 返回缓存的值\r\n }\r\n try {\r\n const result = fn(...args);\r\n cache.set(key, result);\r\n return result;\r\n } catch (promise) {\r\n promise.then((value) => {\r\n cache.set(key, value); // 缓存异步结果\r\n // 重新执行函数(实际实现更复杂)\r\n withAsyncCache();\r\n });\r\n throw promise; // 继续向上传播异步\r\n }\r\n };\r\n};\r\n\r\nexport default {\r\n components: { bInput },\r\n data() {\r\n return {\r\n value: 'abc'\r\n };\r\n },\r\n methods: {\r\n testAsync() {\r\n const getAPIWithCache = withAsyncCache(getVersionAPI);\r\n console.log('开始请求');\r\n this.main(getAPIWithCache);\r\n console.log('结束请求');\r\n },\r\n main(fn) {}\r\n }\r\n};\r\n</script>\r\n\r\n<style>\r\n.create-user-modal {\r\n width: 360px;\r\n padding: 20px;\r\n background: #fff;\r\n border-radius: 12px;\r\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);\r\n font-family: 'Microsoft YaHei', sans-serif;\r\n}\r\n\r\n.modal-title {\r\n font-size: 18px;\r\n font-weight: bold;\r\n margin-bottom: 16px;\r\n text-align: center;\r\n}\r\n\r\n.form-group {\r\n display: flex;\r\n align-items: center;\r\n margin-bottom: 14px;\r\n}\r\n\r\n.form-group label {\r\n width: 70px;\r\n color: #333;\r\n font-size: 14px;\r\n}\r\n\r\n.form-group input[type='text'],\r\n.form-group input[type='number'] {\r\n flex: 1;\r\n padding: 8px 10px;\r\n border: 1px solid #ccc;\r\n border-radius: 6px;\r\n font-size: 14px;\r\n transition: all 0.3s;\r\n}\r\n\r\n.form-group input:focus {\r\n border-color: #409eff;\r\n box-shadow: 0 0 4px rgba(64, 158, 255, 0.4);\r\n}\r\n\r\n.gender label {\r\n margin-right: 10px;\r\n}\r\n\r\n.quick-create {\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n background: #f5f7fa;\r\n padding: 8px 10px;\r\n border-radius: 8px;\r\n margin: 12px 0 16px;\r\n}\r\n\r\n.quick-btn {\r\n background: #409eff;\r\n color: #fff;\r\n border: none;\r\n padding: 6px 12px;\r\n border-radius: 6px;\r\n cursor: pointer;\r\n font-size: 14px;\r\n display: flex;\r\n align-items: center;\r\n gap: 4px;\r\n transition: all 0.3s;\r\n}\r\n\r\n.quick-btn:hover {\r\n background: #66b1ff;\r\n}\r\n\r\n.modal-footer {\r\n display: flex;\r\n justify-content: flex-end;\r\n gap: 10px;\r\n}\r\n\r\n.cancel-btn,\r\n.confirm-btn {\r\n padding: 6px 14px;\r\n border-radius: 6px;\r\n border: none;\r\n cursor: pointer;\r\n font-size: 14px;\r\n transition: all 0.3s;\r\n}\r\n\r\n.cancel-btn {\r\n background: #f2f3f5;\r\n color: #606266;\r\n}\r\n\r\n.cancel-btn:hover {\r\n background: #e0e0e0;\r\n}\r\n\r\n.confirm-btn {\r\n background: #409eff;\r\n color: #fff;\r\n}\r\n\r\n.confirm-btn:hover {\r\n background: #66b1ff;\r\n}\r\n</style>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=3248e162\"\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=3248e162&prod&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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"],"names":["render","_vm","this","_c","_self","staticClass","_v","attrs","model","value","callback","$$v","expression","_s","_m","on","$event","testAsync","staticRenderFns","_b","ref","handleInput","handleChange","$attrs","data","props","type","String","default","methods","e","$emit","target","setNativeInputValue","input","$refs","val","undefined","mounted","component","withAsyncCache","fn","cache","Map","args","key","JSON","stringify","has","get","result","set","promise","then","components","bInput","getAPIWithCache","getVersionAPI","console","log","main"],"sourceRoot":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";(self["webpackChunkkams"]=self["webpackChunkkams"]||[]).push([[866],{7863:function(t,s,e){e.d(s,{A:function(){return c}});var i=function(){var t=this,s=t._self._c;return s("div",{staticClass:"dropdown-wrapper"},[s("div",{staticClass:"dropdown",on:{click:function(s){t.isShowSelect=!t.isShowSelect}}},[s("input",{staticClass:"select-label",attrs:{type:"text",readonly:""},domProps:{value:`${t.text}`}}),t._m(0)]),s("div",{directives:[{name:"show",rawName:"v-show",value:t.isShowSelect,expression:"isShowSelect"}],staticClass:"dropdown-menu"},t._l(t.menu,(function(e,i){return s("div",{key:i,staticClass:"select-item",on:{click:function(s){return t.selectSslFn(e)}}},[t._v(" "+t._s(`${e}`)+" ")])})),0)])},o=[function(){var t=this,s=t._self._c;return s("div",{staticClass:"icon"},[s("i",{staticClass:"el-icon-arrow-down"})])}],a={name:"dropdown",data(){return{isShowSelect:!1,text:""}},props:{menu:Array,current:String},methods:{selectSslFn(t){this.isShowSelect=!1,this.text=t,this.$emit("select",t)},close(t){this.$el.contains(t.target)||(this.isShowSelect=!1)}},watch:{current(t){this.text=t}},mounted(){this.text=this.current||this.menu[0],document.addEventListener("click",this.close)},beforeDestroy(){document.removeEventListener("click",this.close)}},n=a,l=e(1656),r=(0,l.A)(n,i,o,!1,null,null,null),c=r.exports},1349:function(t,s,e){e.d(s,{A:function(){return c}});var i=function(){var t=this,s=t._self._c;return s("aside",{ref:"aside",staticClass:"k-sb-aside k-aside"},[s("div",{staticClass:"k-aside-default"},[t._t("default")],2),s("div",{staticClass:"k-aside-inner"},[t._t("inner")],2)])},o=[],a={name:"k-sb-aside"},n=a,l=e(1656),r=(0,l.A)(n,i,o,!1,null,null,null),c=r.exports},5675:function(t,s,e){e.d(s,{A:function(){return c}});var i=function(){var t=this,s=t._self._c;return s("section",{staticClass:"k-container",class:`k-container-${t.direction}`},[t._t("default")],2)},o=[],a={name:"k-container",props:{direction:{type:String,default:"horizontal"}},computed:{}},n=a,l=e(1656),r=(0,l.A)(n,i,o,!1,null,null,null),c=r.exports},1866:function(t,s,e){e.r(s),e.d(s,{default:function(){return C}});var i=function(){var t=this,s=t._self._c;return s("el-card",{directives:[{name:"resize-ob",rawName:"v-resize-ob",value:t.cardResize,expression:"cardResize"}]},[s("k-container",[s("main",[s("pps-form",{on:{submit:t.submitFn,reset:t.resetFn}},[s("div",{staticClass:"k-list"},[s("h3",[t._v("全局配置")]),s("div",{staticClass:"k-list-item"},[s("div",{staticClass:"k-list-main"},[s("span",[t._v("端口:")]),s("el-input",{attrs:{placeholder:"请输入内容"},model:{value:t.form.port,callback:function(s){t.$set(t.form,"port",s)},expression:"form.port"}})],1)]),s("div",{staticClass:"k-list-item"},[s("div",{staticClass:"k-list-main"},[s("span",[t._v("命令前缀 :")]),s("el-input",{attrs:{placeholder:"请输入内容"},model:{value:t.form["command-prefix"],callback:function(s){t.$set(t.form,"command-prefix",s)},expression:"form['command-prefix']"}})],1)]),s("div",{staticClass:"k-list-item"},[s("div",{staticClass:"k-list-main"},[s("span",[t._v("自动加载模块目录 :")]),s("el-input",{attrs:{placeholder:"请输入内容"},model:{value:t.form.dirs[1],callback:function(s){t.$set(t.form.dirs,1,s)},expression:"form.dirs[1]"}})],1)]),s("div",{staticClass:"k-list-item"},[s("div",{staticClass:"k-list-main"},[s("span",[t._v("是否使用彩色日志输出 :")]),s("el-switch",{attrs:{"active-color":"#00aeed"},model:{value:t.form.noColor,callback:function(s){t.$set(t.form,"noColor",s)},expression:"form.noColor"}})],1)]),s("div",{staticClass:"k-list-item"},[s("div",{staticClass:"k-list-main"},[s("span",[t._v("日志等级 :")]),s("el-select",{attrs:{placeholder:"请选择"},model:{value:t.form.level,callback:function(s){t.$set(t.form,"level",s)},expression:"form.level"}},t._l(t.staticForm.level,(function(t,e){return s("el-option",{key:e,attrs:{label:t.label,value:t.value}})})),1)],1)]),s("div",{staticClass:"k-list-item"},[s("div",{staticClass:"k-list-main"},[s("span",[t._v("语言类型 :")]),s("el-select",{attrs:{placeholder:"请选择"},model:{value:t.form.lang,callback:function(s){t.$set(t.form,"lang",s)},expression:"form.lang"}},t._l(t.staticForm.lang,(function(t){return s("el-option",{key:t,attrs:{label:t,value:t}})})),1)],1)]),s("div",{staticClass:"k-list-item"},[s("div",{staticClass:"k-list-main"},[s("div"),s("div",{staticClass:"btn"},[s("pps-button",{attrs:{theme:"confirm"}},[t._v("提交")]),s("pps-button",{attrs:{theme:"default",type:"reset"}},[t._v("重置")])],1)])])])]),s("pps-form",{on:{submit:function(s){return t.submitBackendFn()},reset:function(s){return t.resetBackendFn()}}},[s("div",{staticClass:"k-list"},[s("div",[s("h3",[t._v("后端设置")]),s("p",{staticClass:"tip"},[t._v("警告!若无需分离前后端请谨慎修改!")])]),s("div",{staticClass:"k-list-item"},[s("div",{staticClass:"k-list-main"},[s("span",[t._v("后端IP地址")]),s("pps-input",{staticStyle:{position:"relative"},attrs:{content:t.hostForm.host,placeholder:"无前缀后端IP地址"},on:{"update:content":function(s){return t.$set(t.hostForm,"host",s)}},scopedSlots:t._u([{key:"prepend",fn:function(){return[s("dp",{attrs:{current:t.hostForm.protocol,menu:["https","http"]},on:{select:t.selectSslFn}})]},proxy:!0}])})],1)]),s("div",{staticClass:"k-list-item"},[s("div",{staticClass:"k-list-main"},[s("span",[t._v("后端端口号")]),s("pps-input",{attrs:{content:t.hostForm.port,placeholder:"后端端口号"},on:{"update:content":function(s){return t.$set(t.hostForm,"port",s)}}})],1)]),s("div",{staticClass:"k-list-item"},[s("div",{staticClass:"k-list-main"},[s("span",[t._v("沙盒ws是否长连")]),s("el-switch",{attrs:{"active-color":"#00aeed"},on:{change:t.setSandboxWsAliveFn},model:{value:t.isKeepSandboxWsAlive,callback:function(s){t.isKeepSandboxWsAlive=s},expression:"isKeepSandboxWsAlive"}})],1)]),s("div",{staticClass:"k-list-item"},[s("div",{staticClass:"k-list-main"},[s("div"),s("div",{staticClass:"btn"},[s("pps-button",{attrs:{theme:"confirm"}},[t._v("提交")]),s("pps-button",{attrs:{theme:"default",type:"reset"}},[t._v("重置")])],1)])])])])],1),s("k-aside")],1)],1)},o=[],a=e(1552),n=e(5675),l=e(3518),r=e(1349),c=e(7863),d=e(5563),u=e(6848);const m={data(){return{isKeepSandboxWsAlive:!1,form:{"command-prefix":"",port:null,lang:null,noColor:!0,level:10,dirs:[]},staticForm:{lang:["en_US","ja_JP","zh_TW","zh_CN"],level:[{label:"TRACE",value:10},{label:"DEBUG",value:20},{label:"RECORD",value:25},{label:"INFO",value:30},{label:"WARN",value:40},{label:"ERROR",value:50},{label:"FATAL",value:60},{label:"SILENT",value:70}],dirs:[]},hostForm:{host:"",port:"",protocol:"https"},isLoading:!1,isShowSelect:!1,listWidth:0,isPadding:1}},components:{kContainer:n.A,kAside:r.A,dp:c.A},methods:{...(0,l.PY)("sandBox",["SET_SANDBOX_WS_KEEPALIVE"]),async getConfig(){const{data:t}=await(0,a.gg)();this.form={...this.form,...t}},async submitFn(){(0,a.n6)(this.form).then((t=>{204===t.status?this.$message.success("修改成功!"):this.$message.error("修改失败!")}))},resetFn(){this.getConfig(),this.$message.info("已重置!")},submitBackendFn(){const t={host:this.hostForm.host,port:this.hostForm.port,protocol:this.hostForm.protocol};(0,d.Dh)({configData:t})},resetBackendFn(){this.hostForm.host=this.host,this.hostForm.port=this.port,this.hostForm.protocol=this.protocol,this.$message.info("已重置!")},selectSslFn(t){this.hostForm.protocol=t},cardResize(t,s){Math.floor(t)<=700?(this.listWidth=100,this.isPadding=0):(this.listWidth=90,this.isPadding=1)},initSandboxWsAliveFn(){this.isKeepSandboxWsAlive=this.store_keepSandboxWsAlive},setSandboxWsAliveFn(t){this.SET_SANDBOX_WS_KEEPALIVE(t)}},computed:{...(0,l.aH)("layoutOption",["host","port","protocol"]),...(0,l.aH)("sandBox",{store_keepSandboxWsAlive:"isKeepSandboxWsAlive"})},watch:{host:{handler(t,s){this.hostForm.host=t},immediate:!0},port:{handler(t,s){this.hostForm.port=t},immediate:!0},protocol:{handler(t,s){this.hostForm.protocol=t},immediate:!0}},mounted(){},created(){this.getConfig(),this.initSandboxWsAliveFn()}},p=()=>{(0,u.useCssVars)(((t,s)=>({bf633dd4:t.isPadding})))},h=m.setup;m.setup=h?(t,s)=>(p(),h(t,s)):p;var v=m,f=v,k=e(1656),b=(0,k.A)(f,i,o,!1,null,"5a6b2b2e",null),C=b.exports}}]);
|
|
2
|
+
//# sourceMappingURL=866.4506cf7d.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"js/866.4506cf7d.js","mappings":"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","sources":["webpack://kams/./src/components/dropdown.vue","webpack://kams/src/components/dropdown.vue","webpack://kams/./src/components/dropdown.vue?69a8","webpack://kams/./src/components/dropdown.vue?a046","webpack://kams/./src/components/layout/aside.vue","webpack://kams/src/components/layout/aside.vue","webpack://kams/./src/components/layout/aside.vue?e6ba","webpack://kams/./src/components/layout/aside.vue?55c2","webpack://kams/./src/components/layout/container.vue","webpack://kams/src/components/layout/container.vue","webpack://kams/./src/components/layout/container.vue?8825","webpack://kams/./src/components/layout/container.vue?497a","webpack://kams/./src/views/config/index.vue","webpack://kams/src/views/config/index.vue","webpack://kams/./src/views/config/index.vue?5560","webpack://kams/./src/views/config/index.vue?4fa1"],"sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"dropdown-wrapper\"},[_c('div',{staticClass:\"dropdown\",on:{\"click\":function($event){_vm.isShowSelect = !_vm.isShowSelect}}},[_c('input',{staticClass:\"select-label\",attrs:{\"type\":\"text\",\"readonly\":\"\"},domProps:{\"value\":`${_vm.text}`}}),_vm._m(0)]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.isShowSelect),expression:\"isShowSelect\"}],staticClass:\"dropdown-menu\"},_vm._l((_vm.menu),function(item,index){return _c('div',{key:index,staticClass:\"select-item\",on:{\"click\":function($event){return _vm.selectSslFn(item)}}},[_vm._v(\" \"+_vm._s(`${item}`)+\" \")])}),0)])\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"icon\"},[_c('i',{staticClass:\"el-icon-arrow-down\"})])\n}]\n\nexport { render, staticRenderFns }","<template>\r\n <div class=\"dropdown-wrapper\">\r\n <div class=\"dropdown\" @click=\"isShowSelect = !isShowSelect\">\r\n <input class=\"select-label\" type=\"text\" readonly :value=\"`${text}`\" />\r\n <div class=\"icon\">\r\n <i class=\"el-icon-arrow-down\"></i>\r\n </div>\r\n </div>\r\n <div class=\"dropdown-menu\" v-show=\"isShowSelect\">\r\n <div\r\n class=\"select-item\"\r\n v-for=\"(item, index) in menu\"\r\n :key=\"index\"\r\n @click=\"selectSslFn(item)\"\r\n >\r\n {{ `${item}` }}\r\n </div>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n name: 'dropdown',\r\n data() {\r\n return {\r\n isShowSelect: false,\r\n text: ''\r\n };\r\n },\r\n props: {\r\n menu: Array,\r\n current: String\r\n },\r\n methods: {\r\n selectSslFn(ssl) {\r\n this.isShowSelect = false;\r\n this.text = ssl;\r\n this.$emit('select', ssl);\r\n },\r\n close(e) {\r\n if (!this.$el.contains(e.target)) {\r\n this.isShowSelect = false;\r\n }\r\n }\r\n },\r\n watch: {\r\n current(val) {\r\n this.text = val;\r\n }\r\n },\r\n mounted() {\r\n this.text = this.current || this.menu[0];\r\n document.addEventListener('click', this.close);\r\n },\r\n beforeDestroy() {\r\n document.removeEventListener('click', this.close);\r\n }\r\n};\r\n</script>\r\n\r\n<style lang=\"scss\">\r\n.dropdown-wrapper {\r\n position: relative;\r\n height: 100%;\r\n border-radius: inherit;\r\n}\r\n.dropdown {\r\n position: relative;\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n height: 100%;\r\n padding: 0 5px;\r\n width: auto;\r\n border-radius: inherit;\r\n background: #f5f7fa;\r\n cursor: pointer;\r\n\r\n .select-label {\r\n width: 3.8rem;\r\n text-align: center;\r\n // padding: 0 10px;\r\n background: transparent;\r\n height: 100%;\r\n outline: none;\r\n border: none;\r\n box-sizing: border-box;\r\n cursor: pointer;\r\n }\r\n\r\n .icon {\r\n margin-left: -5px;\r\n }\r\n}\r\n.dropdown-menu {\r\n position: absolute;\r\n left: 0;\r\n top: calc(100% + 5px);\r\n padding: 10px 0;\r\n background: #fff;\r\n border-radius: 8px;\r\n border: 1px solid #e4e7ed;\r\n box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);\r\n z-index: 2;\r\n\r\n .select-item {\r\n min-width: fit-content;\r\n padding: 5px 15px;\r\n cursor: pointer;\r\n\r\n &:hover {\r\n background: #f0f0f0;\r\n }\r\n }\r\n}\r\n</style>\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./dropdown.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./dropdown.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./dropdown.vue?vue&type=template&id=4058cd88\"\nimport script from \"./dropdown.vue?vue&type=script&lang=js\"\nexport * from \"./dropdown.vue?vue&type=script&lang=js\"\nimport style0 from \"./dropdown.vue?vue&type=style&index=0&id=4058cd88&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('aside',{ref:\"aside\",staticClass:\"k-sb-aside k-aside\"},[_c('div',{staticClass:\"k-aside-default\"},[_vm._t(\"default\")],2),_c('div',{staticClass:\"k-aside-inner\"},[_vm._t(\"inner\")],2)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <aside ref=\"aside\" class=\"k-sb-aside k-aside\">\r\n <div class=\"k-aside-default\">\r\n <slot></slot>\r\n </div>\r\n <div class=\"k-aside-inner\">\r\n <slot name=\"inner\"></slot>\r\n </div>\r\n </aside>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n name: 'k-sb-aside'\r\n};\r\n</script>\r\n\r\n<style lang=\"less\">\r\n.k-aside {\r\n display: flex;\r\n flex-direction: column;\r\n background: #fff;\r\n box-sizing: border-box;\r\n height: 100%;\r\n}\r\n.k-aside-inner {\r\n overflow: auto;\r\n box-sizing: border-box;\r\n\r\n &::-webkit-scrollbar {\r\n width: 5px; // 设置滚动条的宽度\r\n height: 0;\r\n }\r\n &::-webkit-scrollbar-track {\r\n background: transparent;\r\n width: 0px;\r\n height: 0;\r\n }\r\n &::-webkit-scrollbar-thumb {\r\n position: absolute;\r\n right: -10px;\r\n // width: 0px;\r\n border-radius: 6px;\r\n background-color: #8888881a;\r\n }\r\n &::-webkit-scrollbar-thumb:hover {\r\n background: #88888833; // 鼠标悬停时滚动条的颜色\r\n }\r\n}\r\n</style>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./aside.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./aside.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./aside.vue?vue&type=template&id=d3871a34\"\nimport script from \"./aside.vue?vue&type=script&lang=js\"\nexport * from \"./aside.vue?vue&type=script&lang=js\"\nimport style0 from \"./aside.vue?vue&type=style&index=0&id=d3871a34&prod&lang=less\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('section',{staticClass:\"k-container\",class:`k-container-${_vm.direction}`},[_vm._t(\"default\")],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <section :class=\"`k-container-${direction}`\" class=\"k-container\">\r\n <slot></slot>\r\n </section>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n name: 'k-container',\r\n props: {\r\n direction: {\r\n type: String,\r\n default: 'horizontal'\r\n }\r\n },\r\n computed: {}\r\n};\r\n</script>\r\n\r\n<style>\r\n.k-container-horizontal {\r\n display: flex;\r\n flex-direction: row;\r\n}\r\n.k-container-vertical {\r\n display: flex;\r\n flex-direction: column;\r\n}\r\n</style>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./container.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./container.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./container.vue?vue&type=template&id=ab070982\"\nimport script from \"./container.vue?vue&type=script&lang=js\"\nexport * from \"./container.vue?vue&type=script&lang=js\"\nimport style0 from \"./container.vue?vue&type=style&index=0&id=ab070982&prod&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('el-card',{directives:[{name:\"resize-ob\",rawName:\"v-resize-ob\",value:(_vm.cardResize),expression:\"cardResize\"}]},[_c('k-container',[_c('main',[_c('pps-form',{on:{\"submit\":_vm.submitFn,\"reset\":_vm.resetFn}},[_c('div',{staticClass:\"k-list\"},[_c('h3',[_vm._v(\"全局配置\")]),_c('div',{staticClass:\"k-list-item\"},[_c('div',{staticClass:\"k-list-main\"},[_c('span',[_vm._v(\"端口:\")]),_c('el-input',{attrs:{\"placeholder\":\"请输入内容\"},model:{value:(_vm.form.port),callback:function ($$v) {_vm.$set(_vm.form, \"port\", $$v)},expression:\"form.port\"}})],1)]),_c('div',{staticClass:\"k-list-item\"},[_c('div',{staticClass:\"k-list-main\"},[_c('span',[_vm._v(\"命令前缀 :\")]),_c('el-input',{attrs:{\"placeholder\":\"请输入内容\"},model:{value:(_vm.form['command-prefix']),callback:function ($$v) {_vm.$set(_vm.form, 'command-prefix', $$v)},expression:\"form['command-prefix']\"}})],1)]),_c('div',{staticClass:\"k-list-item\"},[_c('div',{staticClass:\"k-list-main\"},[_c('span',[_vm._v(\"自动加载模块目录 :\")]),_c('el-input',{attrs:{\"placeholder\":\"请输入内容\"},model:{value:(_vm.form.dirs[1]),callback:function ($$v) {_vm.$set(_vm.form.dirs, 1, $$v)},expression:\"form.dirs[1]\"}})],1)]),_c('div',{staticClass:\"k-list-item\"},[_c('div',{staticClass:\"k-list-main\"},[_c('span',[_vm._v(\"是否使用彩色日志输出 :\")]),_c('el-switch',{attrs:{\"active-color\":\"#00aeed\"},model:{value:(_vm.form.noColor),callback:function ($$v) {_vm.$set(_vm.form, \"noColor\", $$v)},expression:\"form.noColor\"}})],1)]),_c('div',{staticClass:\"k-list-item\"},[_c('div',{staticClass:\"k-list-main\"},[_c('span',[_vm._v(\"日志等级 :\")]),_c('el-select',{attrs:{\"placeholder\":\"请选择\"},model:{value:(_vm.form.level),callback:function ($$v) {_vm.$set(_vm.form, \"level\", $$v)},expression:\"form.level\"}},_vm._l((_vm.staticForm.level),function(item,index){return _c('el-option',{key:index,attrs:{\"label\":item.label,\"value\":item.value}})}),1)],1)]),_c('div',{staticClass:\"k-list-item\"},[_c('div',{staticClass:\"k-list-main\"},[_c('span',[_vm._v(\"语言类型 :\")]),_c('el-select',{attrs:{\"placeholder\":\"请选择\"},model:{value:(_vm.form.lang),callback:function ($$v) {_vm.$set(_vm.form, \"lang\", $$v)},expression:\"form.lang\"}},_vm._l((_vm.staticForm.lang),function(item){return _c('el-option',{key:item,attrs:{\"label\":item,\"value\":item}})}),1)],1)]),_c('div',{staticClass:\"k-list-item\"},[_c('div',{staticClass:\"k-list-main\"},[_c('div'),_c('div',{staticClass:\"btn\"},[_c('pps-button',{attrs:{\"theme\":\"confirm\"}},[_vm._v(\"提交\")]),_c('pps-button',{attrs:{\"theme\":\"default\",\"type\":\"reset\"}},[_vm._v(\"重置\")])],1)])])])]),_c('pps-form',{on:{\"submit\":function($event){return _vm.submitBackendFn()},\"reset\":function($event){return _vm.resetBackendFn()}}},[_c('div',{staticClass:\"k-list\"},[_c('div',[_c('h3',[_vm._v(\"后端设置\")]),_c('p',{staticClass:\"tip\"},[_vm._v(\"警告!若无需分离前后端请谨慎修改!\")])]),_c('div',{staticClass:\"k-list-item\"},[_c('div',{staticClass:\"k-list-main\"},[_c('span',[_vm._v(\"后端IP地址\")]),_c('pps-input',{staticStyle:{\"position\":\"relative\"},attrs:{\"content\":_vm.hostForm.host,\"placeholder\":\"无前缀后端IP地址\"},on:{\"update:content\":function($event){return _vm.$set(_vm.hostForm, \"host\", $event)}},scopedSlots:_vm._u([{key:\"prepend\",fn:function(){return [_c('dp',{attrs:{\"current\":_vm.hostForm.protocol,\"menu\":['https', 'http']},on:{\"select\":_vm.selectSslFn}})]},proxy:true}])})],1)]),_c('div',{staticClass:\"k-list-item\"},[_c('div',{staticClass:\"k-list-main\"},[_c('span',[_vm._v(\"后端端口号\")]),_c('pps-input',{attrs:{\"content\":_vm.hostForm.port,\"placeholder\":\"后端端口号\"},on:{\"update:content\":function($event){return _vm.$set(_vm.hostForm, \"port\", $event)}}})],1)]),_c('div',{staticClass:\"k-list-item\"},[_c('div',{staticClass:\"k-list-main\"},[_c('span',[_vm._v(\"沙盒ws是否长连\")]),_c('el-switch',{attrs:{\"active-color\":\"#00aeed\"},on:{\"change\":_vm.setSandboxWsAliveFn},model:{value:(_vm.isKeepSandboxWsAlive),callback:function ($$v) {_vm.isKeepSandboxWsAlive=$$v},expression:\"isKeepSandboxWsAlive\"}})],1)]),_c('div',{staticClass:\"k-list-item\"},[_c('div',{staticClass:\"k-list-main\"},[_c('div'),_c('div',{staticClass:\"btn\"},[_c('pps-button',{attrs:{\"theme\":\"confirm\"}},[_vm._v(\"提交\")]),_c('pps-button',{attrs:{\"theme\":\"default\",\"type\":\"reset\"}},[_vm._v(\"重置\")])],1)])])])])],1),_c('k-aside')],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <el-card v-resize-ob=\"cardResize\">\r\n <k-container>\r\n <main>\r\n <pps-form @submit=\"submitFn\" @reset=\"resetFn\">\r\n <div class=\"k-list\">\r\n <h3>全局配置</h3>\r\n <div class=\"k-list-item\">\r\n <div class=\"k-list-main\">\r\n <span>端口:</span>\r\n <el-input v-model=\"form.port\" placeholder=\"请输入内容\"></el-input>\r\n </div>\r\n </div>\r\n <div class=\"k-list-item\">\r\n <div class=\"k-list-main\">\r\n <span>命令前缀 :</span>\r\n <el-input v-model=\"form['command-prefix']\" placeholder=\"请输入内容\"></el-input>\r\n </div>\r\n </div>\r\n <div class=\"k-list-item\">\r\n <div class=\"k-list-main\">\r\n <span>自动加载模块目录 :</span>\r\n <el-input v-model=\"form.dirs[1]\" placeholder=\"请输入内容\"></el-input>\r\n </div>\r\n </div>\r\n <div class=\"k-list-item\">\r\n <div class=\"k-list-main\">\r\n <span>是否使用彩色日志输出 :</span>\r\n <el-switch v-model=\"form.noColor\" active-color=\"#00aeed\"></el-switch>\r\n </div>\r\n </div>\r\n <div class=\"k-list-item\">\r\n <div class=\"k-list-main\">\r\n <span>日志等级 :</span>\r\n <el-select v-model=\"form.level\" placeholder=\"请选择\">\r\n <el-option\r\n v-for=\"(item, index) in staticForm.level\"\r\n :key=\"index\"\r\n :label=\"item.label\"\r\n :value=\"item.value\"\r\n ></el-option>\r\n </el-select>\r\n </div>\r\n </div>\r\n <div class=\"k-list-item\">\r\n <div class=\"k-list-main\">\r\n <span>语言类型 :</span>\r\n <el-select v-model=\"form.lang\" placeholder=\"请选择\">\r\n <el-option\r\n v-for=\"item in staticForm.lang\"\r\n :key=\"item\"\r\n :label=\"item\"\r\n :value=\"item\"\r\n ></el-option>\r\n </el-select>\r\n </div>\r\n </div>\r\n <div class=\"k-list-item\">\r\n <div class=\"k-list-main\">\r\n <div></div>\r\n <div class=\"btn\">\r\n <pps-button theme=\"confirm\">提交</pps-button>\r\n <pps-button theme=\"default\" type=\"reset\">重置</pps-button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </pps-form>\r\n <pps-form @submit=\"submitBackendFn()\" @reset=\"resetBackendFn()\">\r\n <div class=\"k-list\">\r\n <div>\r\n <h3>后端设置</h3>\r\n <p class=\"tip\">警告!若无需分离前后端请谨慎修改!</p>\r\n </div>\r\n <div class=\"k-list-item\">\r\n <div class=\"k-list-main\">\r\n <span>后端IP地址</span>\r\n <pps-input\r\n :content.sync=\"hostForm.host\"\r\n placeholder=\"无前缀后端IP地址\"\r\n style=\"position: relative\"\r\n >\r\n <template v-slot:prepend>\r\n <dp\r\n @select=\"selectSslFn\"\r\n :current=\"hostForm.protocol\"\r\n :menu=\"['https', 'http']\"\r\n ></dp>\r\n </template>\r\n </pps-input>\r\n </div>\r\n </div>\r\n <div class=\"k-list-item\">\r\n <div class=\"k-list-main\">\r\n <span>后端端口号</span>\r\n <pps-input :content.sync=\"hostForm.port\" placeholder=\"后端端口号\"></pps-input>\r\n </div>\r\n </div>\r\n <div class=\"k-list-item\">\r\n <div class=\"k-list-main\">\r\n <span>沙盒ws是否长连</span>\r\n <el-switch\r\n @change=\"setSandboxWsAliveFn\"\r\n v-model=\"isKeepSandboxWsAlive\"\r\n active-color=\"#00aeed\"\r\n ></el-switch>\r\n </div>\r\n </div>\r\n <div class=\"k-list-item\">\r\n <div class=\"k-list-main\">\r\n <div></div>\r\n <div class=\"btn\">\r\n <pps-button theme=\"confirm\">提交</pps-button>\r\n <pps-button theme=\"default\" type=\"reset\">重置</pps-button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </pps-form>\r\n </main>\r\n <k-aside></k-aside>\r\n </k-container>\r\n </el-card>\r\n</template>\r\n\r\n<script>\r\nimport { getGlobalConfigAPI, updateGlobalConfigAPI } from '@/api/index';\r\nimport kContainer from '@/components/layout/container.vue';\r\nimport { mapMutations, mapState } from 'vuex';\r\nimport kAside from '@/components/layout/aside.vue';\r\nimport dp from '@/components/dropdown';\r\nimport { submitBackendConfig } from '@/utils/backendConfig';\r\n\r\nexport default {\r\n data() {\r\n return {\r\n isKeepSandboxWsAlive: false,\r\n form: {\r\n 'command-prefix': '',\r\n port: null,\r\n lang: null,\r\n noColor: true,\r\n level: 10,\r\n dirs: []\r\n },\r\n staticForm: {\r\n lang: ['en_US', 'ja_JP', 'zh_TW', 'zh_CN'],\r\n level: [\r\n { label: 'TRACE', value: 10 },\r\n { label: 'DEBUG', value: 20 },\r\n { label: 'RECORD', value: 25 },\r\n { label: 'INFO', value: 30 },\r\n { label: 'WARN', value: 40 },\r\n { label: 'ERROR', value: 50 },\r\n { label: 'FATAL', value: 60 },\r\n { label: 'SILENT', value: 70 }\r\n ],\r\n dirs: []\r\n },\r\n hostForm: {\r\n host: '',\r\n port: '',\r\n protocol: 'https'\r\n },\r\n isLoading: false,\r\n isShowSelect: false,\r\n listWidth: 0,\r\n isPadding: 1\r\n };\r\n },\r\n components: { kContainer, kAside, dp },\r\n\r\n methods: {\r\n ...mapMutations('sandBox', ['SET_SANDBOX_WS_KEEPALIVE']),\r\n async getConfig() {\r\n const { data: res } = await getGlobalConfigAPI();\r\n this.form = { ...this.form, ...res };\r\n },\r\n async submitFn() {\r\n updateGlobalConfigAPI(this.form).then((res) => {\r\n if (res.status === 204) this.$message.success('修改成功!');\r\n else this.$message.error('修改失败!');\r\n });\r\n },\r\n resetFn() {\r\n this.getConfig();\r\n this.$message.info('已重置!');\r\n },\r\n submitBackendFn() {\r\n const configData = {\r\n host: this.hostForm.host,\r\n port: this.hostForm.port,\r\n protocol: this.hostForm.protocol\r\n };\r\n submitBackendConfig({ configData });\r\n },\r\n resetBackendFn() {\r\n this.hostForm.host = this.host;\r\n this.hostForm.port = this.port;\r\n this.hostForm.protocol = this.protocol;\r\n this.$message.info('已重置!');\r\n },\r\n selectSslFn(protocol) {\r\n this.hostForm.protocol = protocol;\r\n },\r\n cardResize(w, _) {\r\n if (Math.floor(w) <= 700) {\r\n this.listWidth = 100;\r\n this.isPadding = 0;\r\n } else {\r\n this.listWidth = 90;\r\n this.isPadding = 1;\r\n }\r\n },\r\n initSandboxWsAliveFn() {\r\n this.isKeepSandboxWsAlive = this.store_keepSandboxWsAlive;\r\n },\r\n setSandboxWsAliveFn(status) {\r\n this.SET_SANDBOX_WS_KEEPALIVE(status);\r\n }\r\n },\r\n computed: {\r\n ...mapState('layoutOption', ['host', 'port', 'protocol']),\r\n ...mapState('sandBox', {\r\n store_keepSandboxWsAlive: 'isKeepSandboxWsAlive'\r\n })\r\n },\r\n watch: {\r\n host: {\r\n handler(newVal, oldVal) {\r\n this.hostForm.host = newVal;\r\n },\r\n immediate: true\r\n },\r\n port: {\r\n handler(newVal, oldVal) {\r\n this.hostForm.port = newVal;\r\n },\r\n immediate: true\r\n },\r\n protocol: {\r\n handler(newVal, oldVal) {\r\n this.hostForm.protocol = newVal;\r\n },\r\n immediate: true\r\n }\r\n },\r\n mounted() {},\r\n created() {\r\n this.getConfig();\r\n this.initSandboxWsAliveFn();\r\n }\r\n};\r\n</script>\r\n\r\n<style scoped lang=\"less\">\r\n.el-card {\r\n margin-top: 10px;\r\n}\r\n.k-container {\r\n justify-content: center;\r\n main {\r\n width: 60%;\r\n\r\n @media screen and (max-width: 700px) {\r\n width: 100%;\r\n }\r\n }\r\n // 预留广告位\r\n aside {\r\n display: none;\r\n width: 30%;\r\n @media screen and (max-width: 900px) {\r\n display: none;\r\n }\r\n }\r\n & ::v-deep .pps-input--prepend {\r\n width: 130px;\r\n }\r\n}\r\n.k-list {\r\n margin: 0 auto;\r\n padding: calc(v-bind(isPadding) * 3rem) calc(v-bind(isPadding) * 2rem);\r\n box-sizing: border-box;\r\n\r\n & > :nth-child(2) {\r\n border-top: 1px solid var(--normal-shadow);\r\n }\r\n .k-list-item {\r\n width: 100%;\r\n padding: 0.5rem 1rem;\r\n border-bottom: 1px solid var(--normal-shadow);\r\n box-sizing: border-box;\r\n\r\n &:hover {\r\n background: var(--normal-color);\r\n }\r\n\r\n .k-list-main {\r\n display: flex;\r\n align-items: center;\r\n flex-direction: row;\r\n justify-content: space-between;\r\n flex-wrap: wrap;\r\n }\r\n }\r\n\r\n .tip {\r\n color: red;\r\n }\r\n\r\n h3 {\r\n margin: 1rem 0;\r\n }\r\n}\r\n.el-input {\r\n width: fit-content;\r\n}\r\n.pps-button {\r\n border-radius: 4px;\r\n max-width: 60px;\r\n}\r\n\r\n.cmd-search-select {\r\n position: relative;\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n height: 100%;\r\n padding: 0 5px;\r\n width: auto;\r\n border-radius: inherit;\r\n background: #f5f7fa;\r\n cursor: pointer;\r\n\r\n .select-label {\r\n width: 3.8rem;\r\n text-align: center;\r\n // padding: 0 10px;\r\n background: transparent;\r\n height: 100%;\r\n outline: none;\r\n border: none;\r\n box-sizing: border-box;\r\n cursor: pointer;\r\n }\r\n\r\n .icon {\r\n margin-left: -5px;\r\n }\r\n}\r\n.select-dropdown {\r\n position: absolute;\r\n left: 0;\r\n top: calc(100% + 5px);\r\n padding: 10px 0;\r\n background: #fff;\r\n border-radius: 8px;\r\n border: 1px solid #e4e7ed;\r\n box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);\r\n z-index: 2;\r\n\r\n .select-item {\r\n min-width: fit-content;\r\n padding: 5px 15px;\r\n cursor: pointer;\r\n\r\n &:hover {\r\n background: #f0f0f0;\r\n }\r\n }\r\n}\r\n</style>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=5a6b2b2e&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=5a6b2b2e&prod&scoped=true&lang=less\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5a6b2b2e\",\n null\n \n)\n\nexport default component.exports"],"names":["render","_vm","this","_c","_self","staticClass","on","$event","isShowSelect","attrs","domProps","text","_m","directives","name","rawName","value","expression","_l","menu","item","index","key","selectSslFn","_v","_s","staticRenderFns","data","props","Array","current","String","methods","ssl","$emit","close","e","$el","contains","target","watch","val","mounted","document","addEventListener","beforeDestroy","removeEventListener","component","ref","_t","class","direction","type","default","computed","cardResize","submitFn","resetFn","model","form","port","callback","$$v","$set","dirs","noColor","level","staticForm","label","lang","submitBackendFn","resetBackendFn","staticStyle","hostForm","host","scopedSlots","_u","fn","protocol","proxy","setSandboxWsAliveFn","isKeepSandboxWsAlive","__default__","isLoading","listWidth","isPadding","components","kContainer","kAside","dp","mapMutations","getConfig","res","getGlobalConfigAPI","updateGlobalConfigAPI","then","status","$message","success","error","info","configData","submitBackendConfig","w","_","Math","floor","initSandboxWsAliveFn","store_keepSandboxWsAlive","SET_SANDBOX_WS_KEEPALIVE","mapState","handler","newVal","oldVal","immediate","created"],"sourceRoot":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";(self["webpackChunkkams"]=self["webpackChunkkams"]||[]).push([[871],{5871:function(e,t,a){a.r(t),a.d(t,{default:function(){return d}});var i=function(){var e=this,t=e._self._c;return t("el-card",{directives:[{name:"resize-ob",rawName:"v-resize-ob",value:e.cardResize,expression:"cardResize"}]},[t("el-table",{directives:[{name:"loading",rawName:"v-loading",value:e.isLoading,expression:"isLoading"},{name:"resize-ob",rawName:"v-resize-ob",value:e.handleSizeChange,expression:"handleSizeChange"}],staticStyle:{width:"100%","font-size":"13px"},attrs:{fit:"",border:"",stripe:"",data:e.bots,height:e.tableHeight}},[t("el-table-column",{attrs:{prop:"identity",label:"ID",sortable:"",align:"center"}}),t("el-table-column",{attrs:{prop:"platform",label:"聊天平台",align:"center"}}),t("el-table-column",{attrs:{prop:"id",label:"平台ID",align:"center"}}),e.isChangeTable?e._e():[t("el-table-column",{attrs:{prop:"id",label:"连接时间","min-width":"90",align:"center"},scopedSlots:e._u([{key:"default",fn:function(e){return[t("span",{directives:[{name:"trans-time",rawName:"v-trans-time",value:e.row.status.createTime,expression:"scope.row.status.createTime"}]})]}}],null,!1,1676180278)}),t("el-table-column",{attrs:{prop:"id",label:"上次发送消息时间","min-width":"90",align:"center"},scopedSlots:e._u([{key:"default",fn:function(e){return[t("span",{directives:[{name:"trans-time",rawName:"v-trans-time",value:e.row.status.lastMsgTime,expression:"scope.row.status.lastMsgTime"}]})]}}],null,!1,13296118)}),t("el-table-column",{attrs:{prop:"status.receivedMsg",label:"接收信息数",align:"center",sortable:""}}),t("el-table-column",{attrs:{prop:"status.sentMsg",label:"发送信息数",align:"center",sortable:""}}),t("el-table-column",{attrs:{prop:"status.offlineTimes",label:"下线次数",align:"center"}}),t("el-table-column",{attrs:{label:"在线状态",align:"center"},scopedSlots:e._u([{key:"default",fn:function(e){return[t("pps-icon",{attrs:{icon:`pps-icon-${e.row.status.value}`}})]}}],null,!1,3960529212)}),t("el-table-column",{attrs:{prop:"lang",label:"使用语言",align:"center"}})],t("el-table-column",{attrs:{fixed:"right",label:"操作",align:"center"},scopedSlots:e._u([{key:"default",fn:function(a){return[t("pps-button",{attrs:{theme:"text"},on:{click:function(t){return e.handleViewDetails(a.row)}}},[e._v("详情")]),t("pps-button",{attrs:{theme:"text"},on:{click:function(t){return e.handleEdit(a.row)}}},[e._v("编辑")])]}}])})],2),t("pps-dialog",{attrs:{show:e.isShowDetailsDialog,title:e.viewDetailsData.title},on:{"update:show":function(t){e.isShowDetailsDialog=t}}},[t("template",{slot:"content"},[t("el-descriptions",{attrs:{direction:"vertical",column:4,border:""}},[t("el-descriptions-item",{attrs:{label:"上次发送消息时间"}},[t("span",{directives:[{name:"trans-time",rawName:"v-trans-time",value:e.viewDetailsData.content.status.lastMsgTime,expression:"viewDetailsData.content.status.lastMsgTime"}]})]),t("el-descriptions-item",{attrs:{label:"接收信息数",span:2}},[e._v(" "+e._s(e.viewDetailsData.content.status.receivedMsg)+" ")]),t("el-descriptions-item",{attrs:{label:"发送信息数"}},[e._v(" "+e._s(e.viewDetailsData.content.status.sentMsg)+" ")]),t("el-descriptions-item",{attrs:{label:"连接时间"}},[t("span",{directives:[{name:"trans-time",rawName:"v-trans-time",value:e.viewDetailsData.content.status.createTime,expression:"viewDetailsData.content.status.createTime"}]})]),t("el-descriptions-item",{attrs:{label:"在线状态"}},["online"===e.viewDetailsData.content.status.value?t("span",[t("pps-icon",{attrs:{icon:"pps-icon-online"}}),e._v(" 在线 ")],1):t("span",[t("pps-icon",{attrs:{icon:"pps-icon-offline"}}),e._v(" 离线 ")],1)]),t("el-descriptions-item",{attrs:{label:"下线次数"}},[e._v(" "+e._s(e.viewDetailsData.content.status.offlineTimes)+" ")])],1)],1)],2),t("pps-dialog",{attrs:{show:e.isShowEditDialog,title:e.editDialogData.id},on:{confirmed:e.updateConfigFn,"update:show":function(t){e.isShowEditDialog=t}}},[t("template",{slot:"content"},[t("vue-form",{attrs:{"ui-schema":e.uiSchema,schema:e.editDialogData.schema},model:{value:e.editDialogData.origin,callback:function(t){e.$set(e.editDialogData,"origin",t)},expression:"editDialogData.origin"}},[t("template",{slot:"default"},[t("span")])],2)],1),t("template",{slot:"footer"})],2)],1)},s=[],l=a(1552),n={name:"botsPage",data(){return{bots:[],isChangeTable:!1,isShowDetailsDialog:!1,isShowEditDialog:!1,isLoading:!1,tableHeight:0,viewDetailsData:{title:"提示",content:{identity:"",platform:"",id:"",lang:"",status:{createTime:"",lastMsgTime:"",receivedMsg:"",sentMsg:"",offlineTimes:"",value:""}}},editDialogData:{id:"",origin:{},schema:{}},schema:{type:"object",required:["userName","age"],properties:{userName:{type:"string",title:"用户名",default:"Liu.Jun"},age:{type:"number",title:"年龄"},bio:{type:"string",title:"签名",minLength:10,default:"知道的越多、就知道的越少"}}},uiSchema:{bio:{"ui:options":{placeholder:"请输入你的签名",type:"textarea",rows:1}}}}},methods:{handleViewDetails(e){this.handleDialogMask((()=>{this.viewDetailsData.content=e,this.viewDetailsData.title=e.identity}))},handleEdit(e){this.handleDialogMask((async()=>{const{data:t}=await(0,l.zr)(e.identity);this.editDialogData.id=t.id,this.editDialogData.origin=t.origin,this.editDialogData.schema=t.schema}),!0)},updateConfigFn(){const e=this.editDialogData.origin;(0,l.cH)(this.editDialogData.id,e).then((e=>204===e.status?this.$message({message:"更新成功!",type:"success"}):this.$message({message:"更新失败!",type:"error"}))).then((()=>{this.editDialogData.origin={},this.editDialogData.schema={}}))},async handleDialogMask(e,t=!1){this.isLoading=!0,await e(),this.isLoading=!1,t?this.isShowEditDialog=!0:this.isShowDetailsDialog=!0},handleSizeChange(e,t){this.isChangeTable=e<450},cardResize(e,t){this.tableHeight=Math.floor(t)-40}},computed:{},mounted(){this.isLoading=!0,(0,l.Nb)().then((e=>{this.isLoading=!1,this.bots=e.data}))}},o=n,r=a(1656),c=(0,r.A)(o,i,s,!1,null,"3729423f",null),d=c.exports}}]);
|
|
2
|
+
//# sourceMappingURL=871.adcb95ca.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"js/871.adcb95ca.js","mappings":"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","sources":["webpack://kams/./src/views/bots/index.vue","webpack://kams/src/views/bots/index.vue","webpack://kams/./src/views/bots/index.vue?9ccb","webpack://kams/./src/views/bots/index.vue?57c8"],"sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c;return _c('el-card',{directives:[{name:\"resize-ob\",rawName:\"v-resize-ob\",value:(_vm.cardResize),expression:\"cardResize\"}]},[_c('el-table',{directives:[{name:\"loading\",rawName:\"v-loading\",value:(_vm.isLoading),expression:\"isLoading\"},{name:\"resize-ob\",rawName:\"v-resize-ob\",value:(_vm.handleSizeChange),expression:\"handleSizeChange\"}],staticStyle:{\"width\":\"100%\",\"font-size\":\"13px\"},attrs:{\"fit\":\"\",\"border\":\"\",\"stripe\":\"\",\"data\":_vm.bots,\"height\":_vm.tableHeight}},[_c('el-table-column',{attrs:{\"prop\":\"identity\",\"label\":\"ID\",\"sortable\":\"\",\"align\":\"center\"}}),_c('el-table-column',{attrs:{\"prop\":\"platform\",\"label\":\"聊天平台\",\"align\":\"center\"}}),_c('el-table-column',{attrs:{\"prop\":\"id\",\"label\":\"平台ID\",\"align\":\"center\"}}),(!_vm.isChangeTable)?[_c('el-table-column',{attrs:{\"prop\":\"id\",\"label\":\"连接时间\",\"min-width\":\"90\",\"align\":\"center\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_c('span',{directives:[{name:\"trans-time\",rawName:\"v-trans-time\",value:(scope.row.status.createTime),expression:\"scope.row.status.createTime\"}]})]}}],null,false,1676180278)}),_c('el-table-column',{attrs:{\"prop\":\"id\",\"label\":\"上次发送消息时间\",\"min-width\":\"90\",\"align\":\"center\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_c('span',{directives:[{name:\"trans-time\",rawName:\"v-trans-time\",value:(scope.row.status.lastMsgTime),expression:\"scope.row.status.lastMsgTime\"}]})]}}],null,false,13296118)}),_c('el-table-column',{attrs:{\"prop\":\"status.receivedMsg\",\"label\":\"接收信息数\",\"align\":\"center\",\"sortable\":\"\"}}),_c('el-table-column',{attrs:{\"prop\":\"status.sentMsg\",\"label\":\"发送信息数\",\"align\":\"center\",\"sortable\":\"\"}}),_c('el-table-column',{attrs:{\"prop\":\"status.offlineTimes\",\"label\":\"下线次数\",\"align\":\"center\"}}),_c('el-table-column',{attrs:{\"label\":\"在线状态\",\"align\":\"center\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_c('pps-icon',{attrs:{\"icon\":`pps-icon-${scope.row.status.value}`}})]}}],null,false,3960529212)}),_c('el-table-column',{attrs:{\"prop\":\"lang\",\"label\":\"使用语言\",\"align\":\"center\"}})]:_vm._e(),_c('el-table-column',{attrs:{\"fixed\":\"right\",\"label\":\"操作\",\"align\":\"center\"},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_c('pps-button',{attrs:{\"theme\":\"text\"},on:{\"click\":function($event){return _vm.handleViewDetails(scope.row)}}},[_vm._v(\"详情\")]),_c('pps-button',{attrs:{\"theme\":\"text\"},on:{\"click\":function($event){return _vm.handleEdit(scope.row)}}},[_vm._v(\"编辑\")])]}}])})],2),_c('pps-dialog',{attrs:{\"show\":_vm.isShowDetailsDialog,\"title\":_vm.viewDetailsData.title},on:{\"update:show\":function($event){_vm.isShowDetailsDialog=$event}}},[_c('template',{slot:\"content\"},[_c('el-descriptions',{attrs:{\"direction\":\"vertical\",\"column\":4,\"border\":\"\"}},[_c('el-descriptions-item',{attrs:{\"label\":\"上次发送消息时间\"}},[_c('span',{directives:[{name:\"trans-time\",rawName:\"v-trans-time\",value:(_vm.viewDetailsData.content.status.lastMsgTime),expression:\"viewDetailsData.content.status.lastMsgTime\"}]})]),_c('el-descriptions-item',{attrs:{\"label\":\"接收信息数\",\"span\":2}},[_vm._v(\" \"+_vm._s(_vm.viewDetailsData.content.status.receivedMsg)+\" \")]),_c('el-descriptions-item',{attrs:{\"label\":\"发送信息数\"}},[_vm._v(\" \"+_vm._s(_vm.viewDetailsData.content.status.sentMsg)+\" \")]),_c('el-descriptions-item',{attrs:{\"label\":\"连接时间\"}},[_c('span',{directives:[{name:\"trans-time\",rawName:\"v-trans-time\",value:(_vm.viewDetailsData.content.status.createTime),expression:\"viewDetailsData.content.status.createTime\"}]})]),_c('el-descriptions-item',{attrs:{\"label\":\"在线状态\"}},[(_vm.viewDetailsData.content.status.value === 'online')?_c('span',[_c('pps-icon',{attrs:{\"icon\":\"pps-icon-online\"}}),_vm._v(\" 在线 \")],1):_c('span',[_c('pps-icon',{attrs:{\"icon\":\"pps-icon-offline\"}}),_vm._v(\" 离线 \")],1)]),_c('el-descriptions-item',{attrs:{\"label\":\"下线次数\"}},[_vm._v(\" \"+_vm._s(_vm.viewDetailsData.content.status.offlineTimes)+\" \")])],1)],1)],2),_c('pps-dialog',{attrs:{\"show\":_vm.isShowEditDialog,\"title\":_vm.editDialogData.id},on:{\"confirmed\":_vm.updateConfigFn,\"update:show\":function($event){_vm.isShowEditDialog=$event}}},[_c('template',{slot:\"content\"},[_c('vue-form',{attrs:{\"ui-schema\":_vm.uiSchema,\"schema\":_vm.editDialogData.schema},model:{value:(_vm.editDialogData.origin),callback:function ($$v) {_vm.$set(_vm.editDialogData, \"origin\", $$v)},expression:\"editDialogData.origin\"}},[_c('template',{slot:\"default\"},[_c('span')])],2)],1),_c('template',{slot:\"footer\"})],2)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <el-card v-resize-ob=\"cardResize\">\r\n <el-table\r\n fit\r\n border\r\n stripe\r\n :data=\"bots\"\r\n :height=\"tableHeight\"\r\n v-loading=\"isLoading\"\r\n style=\"width: 100%; font-size: 13px\"\r\n v-resize-ob=\"handleSizeChange\"\r\n >\r\n <el-table-column prop=\"identity\" label=\"ID\" sortable align=\"center\"></el-table-column>\r\n <el-table-column prop=\"platform\" label=\"聊天平台\" align=\"center\"></el-table-column>\r\n <el-table-column prop=\"id\" label=\"平台ID\" align=\"center\"></el-table-column>\r\n <template v-if=\"!isChangeTable\">\r\n <el-table-column prop=\"id\" label=\"连接时间\" min-width=\"90\" align=\"center\">\r\n <template slot-scope=\"scope\">\r\n <span v-trans-time=\"scope.row.status.createTime\"></span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"id\" label=\"上次发送消息时间\" min-width=\"90\" align=\"center\">\r\n <template slot-scope=\"scope\">\r\n <span v-trans-time=\"scope.row.status.lastMsgTime\"></span>\r\n </template>\r\n </el-table-column>\r\n <el-table-column\r\n prop=\"status.receivedMsg\"\r\n label=\"接收信息数\"\r\n align=\"center\"\r\n sortable\r\n ></el-table-column>\r\n <el-table-column\r\n prop=\"status.sentMsg\"\r\n label=\"发送信息数\"\r\n align=\"center\"\r\n sortable\r\n ></el-table-column>\r\n <el-table-column\r\n prop=\"status.offlineTimes\"\r\n label=\"下线次数\"\r\n align=\"center\"\r\n ></el-table-column>\r\n <el-table-column label=\"在线状态\" align=\"center\">\r\n <template slot-scope=\"scope\">\r\n <!-- <pps-icon icon=\"pps-icon-online\" v-if=\"scope.row.status.value === 'online'\" /> -->\r\n <pps-icon :icon=\"`pps-icon-${scope.row.status.value}`\" />\r\n </template>\r\n </el-table-column>\r\n <el-table-column prop=\"lang\" label=\"使用语言\" align=\"center\"></el-table-column>\r\n </template>\r\n <el-table-column fixed=\"right\" label=\"操作\" align=\"center\">\r\n <template slot-scope=\"scope\">\r\n <pps-button @click=\"handleViewDetails(scope.row)\" theme=\"text\">详情</pps-button>\r\n <pps-button theme=\"text\" @click=\"handleEdit(scope.row)\">编辑</pps-button>\r\n </template>\r\n </el-table-column>\r\n </el-table>\r\n <pps-dialog :show.sync=\"isShowDetailsDialog\" :title=\"viewDetailsData.title\">\r\n <template slot=\"content\">\r\n <el-descriptions direction=\"vertical\" :column=\"4\" border>\r\n <el-descriptions-item label=\"上次发送消息时间\">\r\n <span v-trans-time=\"viewDetailsData.content.status.lastMsgTime\"></span>\r\n </el-descriptions-item>\r\n <el-descriptions-item label=\"接收信息数\" :span=\"2\">\r\n {{ viewDetailsData.content.status.receivedMsg }}\r\n </el-descriptions-item>\r\n <el-descriptions-item label=\"发送信息数\">\r\n {{ viewDetailsData.content.status.sentMsg }}\r\n </el-descriptions-item>\r\n <el-descriptions-item label=\"连接时间\">\r\n <span v-trans-time=\"viewDetailsData.content.status.createTime\"></span>\r\n </el-descriptions-item>\r\n <el-descriptions-item label=\"在线状态\">\r\n <span v-if=\"viewDetailsData.content.status.value === 'online'\">\r\n <pps-icon icon=\"pps-icon-online\" />\r\n 在线\r\n </span>\r\n <span v-else>\r\n <pps-icon icon=\"pps-icon-offline\" />\r\n 离线\r\n </span>\r\n </el-descriptions-item>\r\n <el-descriptions-item label=\"下线次数\">\r\n {{ viewDetailsData.content.status.offlineTimes }}\r\n </el-descriptions-item>\r\n </el-descriptions>\r\n </template>\r\n </pps-dialog>\r\n <pps-dialog\r\n @confirmed=\"updateConfigFn\"\r\n :show.sync=\"isShowEditDialog\"\r\n :title=\"editDialogData.id\"\r\n >\r\n <template slot=\"content\">\r\n <vue-form\r\n v-model=\"editDialogData.origin\"\r\n :ui-schema=\"uiSchema\"\r\n :schema=\"editDialogData.schema\"\r\n >\r\n <template slot=\"\"><span></span></template>\r\n </vue-form>\r\n </template>\r\n <template slot=\"footer\"></template>\r\n </pps-dialog>\r\n </el-card>\r\n</template>\r\n\r\n<script>\r\nimport { getBotsDataAPI, getBotsConfigAPI, updateBotsConfigAPI } from '@/api/index';\r\nexport default {\r\n name: 'botsPage',\r\n data() {\r\n return {\r\n bots: [],\r\n isChangeTable: false,\r\n isShowDetailsDialog: false,\r\n isShowEditDialog: false,\r\n isLoading: false,\r\n tableHeight: 0,\r\n viewDetailsData: {\r\n title: '提示',\r\n content: {\r\n identity: '',\r\n platform: '',\r\n id: '',\r\n lang: '',\r\n status: {\r\n createTime: '',\r\n lastMsgTime: '',\r\n receivedMsg: '',\r\n sentMsg: '',\r\n offlineTimes: '',\r\n value: ''\r\n }\r\n }\r\n },\r\n editDialogData: {\r\n id: '',\r\n origin: {},\r\n schema: {}\r\n },\r\n schema: {\r\n type: 'object',\r\n required: ['userName', 'age'],\r\n properties: {\r\n userName: {\r\n type: 'string',\r\n title: '用户名',\r\n default: 'Liu.Jun'\r\n },\r\n age: {\r\n type: 'number',\r\n title: '年龄'\r\n },\r\n bio: {\r\n type: 'string',\r\n title: '签名',\r\n minLength: 10,\r\n default: '知道的越多、就知道的越少'\r\n }\r\n }\r\n },\r\n uiSchema: {\r\n bio: {\r\n 'ui:options': {\r\n placeholder: '请输入你的签名',\r\n type: 'textarea',\r\n rows: 1\r\n }\r\n }\r\n }\r\n };\r\n },\r\n methods: {\r\n handleViewDetails(row) {\r\n this.handleDialogMask(() => {\r\n // const { data: res } = await getBotsDataAPI(row.identity);\r\n this.viewDetailsData.content = row;\r\n this.viewDetailsData.title = row.identity;\r\n });\r\n },\r\n handleEdit(row) {\r\n this.handleDialogMask(async () => {\r\n const { data: res } = await getBotsConfigAPI(row.identity);\r\n this.editDialogData.id = res.id;\r\n this.editDialogData.origin = res.origin;\r\n this.editDialogData.schema = res.schema;\r\n }, true);\r\n },\r\n updateConfigFn() {\r\n const config = this.editDialogData.origin;\r\n updateBotsConfigAPI(this.editDialogData.id, config)\r\n .then((res) => {\r\n if (res.status === 204) {\r\n return this.$message({\r\n message: '更新成功!',\r\n type: 'success'\r\n });\r\n }\r\n return this.$message({\r\n message: '更新失败!',\r\n type: 'error'\r\n });\r\n })\r\n .then(() => {\r\n this.editDialogData.origin = {};\r\n this.editDialogData.schema = {};\r\n });\r\n },\r\n async handleDialogMask(task, isEdit = false) {\r\n this.isLoading = true;\r\n await task();\r\n this.isLoading = false;\r\n isEdit ? (this.isShowEditDialog = true) : (this.isShowDetailsDialog = true);\r\n },\r\n handleSizeChange(width, _) {\r\n if (width < 450) {\r\n this.isChangeTable = true;\r\n return;\r\n }\r\n this.isChangeTable = false;\r\n },\r\n cardResize(_, h) {\r\n this.tableHeight = Math.floor(h) - 40;\r\n }\r\n },\r\n computed: {},\r\n mounted() {\r\n this.isLoading = true;\r\n getBotsDataAPI().then((res) => {\r\n this.isLoading = false;\r\n this.bots = res.data;\r\n });\r\n }\r\n};\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.el-card {\r\n margin-top: 10px;\r\n height: var(--el-card-height);\r\n}\r\n</style>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=3729423f&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=3729423f&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3729423f\",\n null\n \n)\n\nexport default component.exports"],"names":["render","_vm","this","_c","_self","directives","name","rawName","value","cardResize","expression","isLoading","handleSizeChange","staticStyle","attrs","bots","tableHeight","isChangeTable","_e","scopedSlots","_u","key","fn","scope","row","status","createTime","lastMsgTime","on","$event","handleViewDetails","_v","handleEdit","isShowDetailsDialog","viewDetailsData","title","slot","content","_s","receivedMsg","sentMsg","offlineTimes","isShowEditDialog","editDialogData","id","updateConfigFn","uiSchema","schema","model","origin","callback","$$v","$set","staticRenderFns","data","identity","platform","lang","type","required","properties","userName","default","age","bio","minLength","placeholder","rows","methods","handleDialogMask","res","getBotsConfigAPI","config","updateBotsConfigAPI","then","$message","message","task","isEdit","width","_","h","Math","floor","computed","mounted","getBotsDataAPI","component"],"sourceRoot":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";(self["webpackChunkkams"]=self["webpackChunkkams"]||[]).push([[878],{1349:function(t,e,s){s.d(e,{A:function(){return l}});var i=function(){var t=this,e=t._self._c;return e("aside",{ref:"aside",staticClass:"k-sb-aside k-aside"},[e("div",{staticClass:"k-aside-default"},[t._t("default")],2),e("div",{staticClass:"k-aside-inner"},[t._t("inner")],2)])},n=[],a={name:"k-sb-aside"},o=a,r=s(1656),c=(0,r.A)(o,i,n,!1,null,null,null),l=c.exports},5675:function(t,e,s){s.d(e,{A:function(){return l}});var i=function(){var t=this,e=t._self._c;return e("section",{staticClass:"k-container",class:`k-container-${t.direction}`},[t._t("default")],2)},n=[],a={name:"k-container",props:{direction:{type:String,default:"horizontal"}},computed:{}},o=a,r=s(1656),c=(0,r.A)(o,i,n,!1,null,null,null),l=c.exports},4844:function(t,e,s){s.d(e,{A:function(){return u}});var i=function(){var t=this,e=t._self._c;return e("ul",{staticClass:"k-menu",style:{flexDirection:this.mode}},[t._t("default")],2)},n=[],a=(s(4114),s(6848)),o={name:"k-menu",data(){return{activeIndex:this.defaultActive}},provide(){return{root:this}},props:{activeColor:{type:String},activeShape:{type:Array,default(){return[]}},backgroundColor:{type:String},textColor:{},mode:{type:String,default(){return"column"}},defaultActive:{type:String},router:{type:Boolean}},methods:{changeRouteFn(t){this.router&&this.$router.push(t),this.activeIndex=t}},computed:{rootMenu(){return{activeColor:this.activeColor,backgroundColor:this.backgroundColor,activeIndex:this.defaultActive}}},watch:{defaultActive(t){this.activeIndex=t}},beforeCreate(){this.$bus=new a["default"]},mounted(){this.$bus.$on("changeRoute",this.changeRouteFn)},beforeDestroy(){this.$bus.$off("changeRoute",this.changeRouteFn)}},r=o,c=s(1656),l=(0,c.A)(r,i,n,!1,null,"8321ac56",null),u=l.exports},2222:function(t,e,s){s.d(e,{A:function(){return l}});var i=function(){var t=this,e=t._self._c;return e("el-tooltip",{ref:"tooltip",staticClass:"item",attrs:{disabled:!t.tips,effect:"dark",content:t.title,placement:"right",manual:""}},[e("li",{staticClass:"k-menu-item",class:[{className:t.className},{active:t.active},t.direction],style:[t.itemStyle,{height:`${t.height}px`,minHeight:`${t.height}px`},{justifyContent:t.align}],on:{mouseenter:t.onmouseenterFn,mouseleave:t.onMouseLeaveFn,click:t.handleClickFn}},[t.activeShape.includes("line")?[e("transition",{attrs:{appear:"",name:"appear"}},[e("div",{directives:[{name:"show",rawName:"v-show",value:t.active,expression:"active"}],staticClass:"current-shape line",style:{background:t.root.activeColor}})])]:t._e(),t.activeShape.includes("circle")?[e("transition",{attrs:{appear:""}},[e("div",{directives:[{name:"show",rawName:"v-show",value:t.active,expression:"active"}],staticClass:"current-shape circle",style:t.circleStyle})])]:t._e(),t._t("default")],2)])},n=[],a={name:"k-menu-item",data(){return{activeColor:this.root.activeColor}},inject:["root"],methods:{onmouseenterFn(){this.$el.style.backgroundColor=this.root.backgroundColor,this.handleTooltipFn(!0)},onMouseLeaveFn(){this.activeShape.includes("background")&&this.active||(this.$el.style.backgroundColor="",this.handleTooltipFn(!1))},handleClickFn(){this.root.$bus.$emit("changeRoute",this.index),this.$emit("click",this),this.root.$emit("select",this)},handleTooltipFn(t){this.$refs.tooltip.showPopper=t}},computed:{active(){if(!this.root.router)return this.root.activeIndex===this.index;const t=this.root.activeIndex.split("/"),e=this.index.split("/");return t.includes(e[1])},itemStyle(){const t={color:this.active?this.root.activeColor:this.root.textColor,borderLeftColor:this.active?this.root.activeColor:this.root.textColor,backgroundColor:""};return this.activeShape.includes("background")&&(t.backgroundColor=this.active?this.root.backgroundColor:""),t},circleStyle(){return{border:`3px solid ${this.root.activeColor}`,filter:`drop-shadow(0 0 4px ${this.root.activeColor})`}},activeShape(){return this.root.activeShape},tips(){return!!this.title},direction(){return`k-menu-item-${this.root.mode}`}},beforeMount(){},mounted(){},props:{icon:{type:String,default(){return""}},index:{type:String},title:{type:String},width:{type:String,default(){return"70"}},height:{type:String,default(){return"70"}},className:{type:String,default(){return""}},align:{type:String,default(){return"center"}}}},o=a,r=s(1656),c=(0,r.A)(o,i,n,!1,null,"dbebb810",null),l=c.exports},6878:function(t,e,s){s.r(e),s.d(e,{default:function(){return f}});var i=function(){var t=this,e=t._self._c;return e("k-container",{directives:[{name:"resize-ob",rawName:"v-resize-ob",value:t.screenResize,expression:"screenResize"}]},[e("k-aside",{directives:[{name:"show",rawName:"v-show",value:t.isShowAside,expression:"isShowAside"}],scopedSlots:t._u([{key:"inner",fn:function(){return[e("k-menu",{attrs:{"default-active":t.getCurrent?.name,"active-color":"#752bec","active-shape":["background"],"text-color":"#061e26","background-color":"#f0e8fd",mode:"column"}},t._l(t.getCmds,(function(s,i){return e("k-menu-item",{key:i,attrs:{index:s.name,width:"200",height:"40"},on:{click:function(e){return t.selectCmdFn(s)}}},[e("p",[t._v(t._s(s.name))])])})),1)]},proxy:!0}])},[e("header",{staticClass:"cmd-search"},[e("div",{staticClass:"cmd-search-input"},[t.isSmall?e("div",{staticClass:"cmd-search-icon icon-btn",on:{click:t.triggerPageFn}},[e("pps-icon",{attrs:{icon:"pps-icon-side-hide"}})],1):t._e(),e("pps-form",{on:{submit:function(e){return t.searchFn()}}},[e("pps-input",{staticStyle:{position:"relative"},attrs:{content:t.searchOption.searchWord,"after-clear":t.resetMenusFn},on:{"update:content":function(e){return t.$set(t.searchOption,"searchWord",e)}},scopedSlots:t._u([{key:"prepend",fn:function(){return[e("div",{staticClass:"cmd-search-select",on:{click:function(e){t.isShowSelect=!t.isShowSelect}}},[e("input",{staticClass:"select-label",attrs:{type:"text",readonly:""},domProps:{value:t.searchOption.category}}),e("div",{staticClass:"icon"},[e("i",{staticClass:"el-icon-arrow-down"})])]),e("div",{directives:[{name:"show",rawName:"v-show",value:t.isShowSelect,expression:"isShowSelect"}],staticClass:"select-dropdown"},t._l(["指令名称","快捷方式","指令别称","使用场景","权限等级"],(function(s,i){return e("div",{key:i,staticClass:"select-item",on:{click:function(e){return t.selectCategroyFn(s)}}},[t._v(" "+t._s(s)+" ")])})),0)]},proxy:!0},{key:"append",fn:function(){return[e("pps-button",{attrs:{type:"submit"}},[e("pps-icon",{attrs:{icon:"pps-icon-search"}})],1)]},proxy:!0}])})],1)],1)]),e("div",{staticClass:"fill-empty"})]),e("main",{directives:[{name:"show",rawName:"v-show",value:t.isShowMain,expression:"isShowMain"},{name:"loading",rawName:"v-loading",value:t.isLoading,expression:"isLoading"}]},[e("div",{staticClass:"cmd-config-wrapper"},[e("div",{staticClass:"cmd-config"},[e("div",{staticClass:"cmd-title"},[t.isSmall?e("span",{staticClass:"icon-btn",on:{click:t.triggerPageFn}},[e("i",{staticClass:"el-icon-back"}),e("span",[t._v(" 列表")])]):t._e(),t._v(" 指令:"+t._s(t.getCurrent?.name)+" ")]),e("div",{staticClass:"form-wrapper"},[e("div",[e("div",{staticClass:"config-item cmd-access",attrs:{inert:!1}},[e("div",{staticClass:"config-label"},[t._v("权限等级")]),e("el-radio",{attrs:{label:0},model:{value:t.config.access,callback:function(e){t.$set(t.config,"access",e)},expression:"config.access"}},[t._v("成员")]),e("el-radio",{attrs:{label:1},model:{value:t.config.access,callback:function(e){t.$set(t.config,"access",e)},expression:"config.access"}},[t._v("管理员")]),e("el-radio",{attrs:{label:2},model:{value:t.config.access,callback:function(e){t.$set(t.config,"access",e)},expression:"config.access"}},[t._v("最高管理员")])],1),e("div",{staticClass:"config-item cmd-scope",attrs:{inert:!1}},[e("div",{staticClass:"config-label"},[t._v("使用场景")]),e("el-radio",{attrs:{label:"all"},model:{value:t.config.scope,callback:function(e){t.$set(t.config,"scope",e)},expression:"config.scope"}},[t._v("所有场景")]),e("el-radio",{attrs:{label:0},model:{value:t.config.scope,callback:function(e){t.$set(t.config,"scope",e)},expression:"config.scope"}},[t._v("仅私聊")]),e("el-radio",{attrs:{label:1},model:{value:t.config.scope,callback:function(e){t.$set(t.config,"scope",e)},expression:"config.scope"}},[t._v("仅群聊")]),e("el-radio",{attrs:{label:2},model:{value:t.config.scope,callback:function(e){t.$set(t.config,"scope",e)},expression:"config.scope"}},[t._v("仅频道")])],1),e("div",{staticClass:"config-item cmd-hide"},[e("div",{staticClass:"config-label"},[t._v("是否隐藏")]),e("el-switch",{attrs:{"active-color":"#00aeed"},model:{value:t.config.hide,callback:function(e){t.$set(t.config,"hide",e)},expression:"config.hide"}})],1),e("div",{staticClass:"config-item cmd-shortcut"},[e("div",{staticClass:"config-label"},[t._v("快捷方式")]),e("div",{staticClass:"shortcut-wrapper"},t._l(t.config.shortcut,(function(s){return e("div",{key:s,staticClass:"tags-wrapper"},[e("el-tag",{attrs:{closable:"","disable-transitions":!1},on:{close:function(e){return t.deleteShortcutTagFn(s)}}},[t._v(" "+t._s(s)+" ")])],1)})),0),e("div",{staticClass:"shortcut-form"},[t.shortcutInputVisible?e("pps-form",{on:{submit:t.saveShortcutInputFn}},[e("pps-input",{ref:"shortcutInput",staticClass:"input-new-tag",attrs:{content:t.tagInput.shortcut},on:{"update:content":function(e){return t.$set(t.tagInput,"shortcut",e)},blur:t.saveShortcutInputFn},nativeOn:{keyup:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:t.saveShortcutInputFn.apply(null,arguments)}}}),e("input",{staticStyle:{width:"0px",height:"0px"},attrs:{type:"submit"}})],1):e("pps-button",{staticClass:"button-new-tag",staticStyle:{"boder-radius":"4px"},on:{click:t.showShortcutInputFn}},[t._v(" + 新增选项 ")])],1)]),e("div",{staticClass:"config-item cmd-shortcut"},[e("div",{staticClass:"config-label"},[t._v("别称")]),e("div",{staticClass:"shortcut-wrapper"},t._l(t.config.alias,(function(s){return e("div",{key:s,staticClass:"tags-wrapper"},[e("el-tag",{attrs:{closable:"","disable-transitions":!1},on:{close:function(e){return t.deleteAliasTagFn(s)}}},[t._v(" "+t._s(s)+" ")])],1)})),0),e("div",{staticClass:"shortcut-form"},[t.aliasInputVisible?e("pps-form",{on:{submit:t.saveAliasInputFn}},[e("pps-input",{ref:"aliasInput",staticClass:"input-new-tag",attrs:{content:t.tagInput.alias},on:{"update:content":function(e){return t.$set(t.tagInput,"alias",e)}}}),e("input",{staticStyle:{width:"0px",height:"0px"},attrs:{type:"submit"}})],1):e("pps-button",{staticClass:"button-new-tag",staticStyle:{"boder-radius":"4px"},on:{click:t.showAliasInputFn}},[t._v(" + 新增选项 ")])],1)]),e("pps-form",{staticClass:"cmd-config-submit",on:{submit:t.submitConfigFn,reset:t.updateCurrentFn}},[e("pps-button",{attrs:{theme:"confirm"}},[t._v("提交")]),e("pps-button",{attrs:{type:"reset"}},[t._v("重置")])],1)],1)],1)])])])],1)},n=[],a=(s(4114),s(5675)),o=s(1349),r=s(2222),c=s(4844),l=s(3518),u=s(901),h={name:"kCommand",components:{kContainer:a.A,kAside:o.A,kMenu:c.A,kMenuItem:r.A},data(){return{isShowSelect:!1,isShowAside:!0,isShowMain:!0,isSmall:!1,isLoading:!1,shortcutInputVisible:!1,aliasInputVisible:!1,menus:[],currentCommand:{},searchOption:{searchWord:"",category:"指令名称"},config:{},tagInput:{shortcut:"",alias:""}}},methods:{...(0,l.PY)("command",{updateCurrent:"UPDATE_CURRENT"}),...(0,l.i0)("command",["updateCommands"]),selectCmdFn(t){this.updateCurrent(t.name),this.updateCurrentFn()},searchFn(){const t=this.searchOption.searchWord,e=this.searchOption.category;if(!t)return this.resetMenus();"指令名称"===e?this.menus=this.getCmdByName(t):"快捷方式"===e?this.menus=this.getCmdByShortcut(t):"指令别称"===e?this.menus=this.getCmdByAlias(t):"使用场景"===e?this.menus=this.getCmdByScope(u.Ar[t]):"权限等级"===e&&(this.menus=this.getCmdByAccess(u.yz[t]))},resetMenusFn(){this.menus=this.getCmds,this.updateCurrent()},selectCategroyFn(t){this.isShowSelect=!1,this.searchOption.category=t},deleteShortcutTagFn(t){this.config.shortcut=this.config.shortcut.filter((e=>e!==t))},showShortcutInputFn(){this.shortcutInputVisible=!0,this.$nextTick((()=>{this.$refs.shortcutInput.$refs.input.focus()}))},saveShortcutInputFn(){console.log("emit");const t=this.tagInput.shortcut;t&&this.config.shortcut.push(t),this.shortcutInputVisible=!1,this.tagInput.shortcut=""},deleteAliasTagFn(t){this.config.alias=this.config.alias.filter((e=>e!==t))},showAliasInputFn(){this.aliasInputVisible=!0,this.$nextTick((()=>{this.$refs.aliasInput.$refs.input.focus()}))},saveAliasInputFn(){const t=this.tagInput.alias;t&&this.config.alias.push(t),this.aliasInputVisible=!1,this.tagInput.alias=""},submitConfigFn(){this.isLoading=!0,this.updateCommands({name:this.getCurrent.name,config:this.config}).then((t=>{this.isLoading=!1}))},resetConfigFn(){this.config=this.getCurrent.data},screenResize(t,e){const s=Math.floor(t);if(s>600)return this.isShowAside=!0,this.isShowMain=!0,void(this.isSmall=!1);this.isSmall||(this.isShowAside=!1,this.isShowMain=!0),this.isSmall=!0},triggerPageFn(){this.isShowAside=!this.isShowAside,this.isShowMain=!this.isShowMain},updateCurrentFn(){if(!this.getCurrent)return;const t={access:this.getCurrent.data.access,scope:this.getCurrent.data.scope,hide:this.getCurrent.data.hide,shortcut:this.getCurrent.data.shortcut,alias:this.getCurrent.data.alias};this.config=t}},computed:{...(0,l.L8)("command",["getCmds","getCmdByName","getCmdByShortcut","getCurrent","getCmdByAlias","getCmdByScope","getCmdByAccess"])},watch:{getCurrent(t){if(!t.name)return;const e={access:t.data.access,scope:t.data.scope,hide:t.data.hide,shortcut:t.data.shortcut,alias:t.data.alias};this.config=e}},created(){},mounted(){this.menus=this.getCmds,this.updateCurrentFn()}},d=h,p=s(1656),m=(0,p.A)(d,i,n,!1,null,"9ff8f24a",null),f=m.exports},901:function(t,e,s){s.d(e,{DX:function(){return h},yz:function(){return m},Ar:function(){return p},yY:function(){return d},qI:function(){return u}});const i=t=>e=>Object.keys(e).map((s=>({name:t[s],value:e[s]})));var n=i;const a={message:"累计消息收:发量",bots:"实例在线数/总数",login:"登录成功:失败次数",memory:"内存使用量"},o={type:"系统类型",arch:"CPU架构",uptime:"开机时间",hostname:"主机名称",homedir:"用户目录",node:"node版本"},r={midwares:"中间件",commands:"指令",regexps:"正则",bots:"实例",adapters:"适配器",modules:"模块"},c={"全部":"all","私聊":0,"群聊":1,"频道":2},l={"成员":0,"管理员":1,"最高管理员":2},u=n(o),h=n(a),d=n(r),p=c,m=l}}]);
|
|
2
|
+
//# sourceMappingURL=878.d5db5741.js.map
|