c6edfdcba16177e0b8630b6586f88be2.json 14 KB

1
  1. {"remainingRequest":"D:\\front\\item\\zyAdmin\\node_modules\\babel-loader\\lib\\index.js!D:\\front\\item\\zyAdmin\\src\\libs\\socket.js","dependencies":[{"path":"D:\\front\\item\\zyAdmin\\src\\libs\\socket.js","mtime":1761614939002},{"path":"D:\\front\\item\\zyAdmin\\babel.config.js","mtime":1761614925168},{"path":"D:\\front\\item\\zyAdmin\\.babelrc","mtime":1761614925165},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1761614927801},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\babel-loader\\lib\\index.js","mtime":1761614927320}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0IF9jbGFzc0NhbGxDaGVjayBmcm9tICJEOi9mcm9udC9pdGVtL3p5QWRtaW4vbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL2NsYXNzQ2FsbENoZWNrLmpzIjsKaW1wb3J0IF9jcmVhdGVDbGFzcyBmcm9tICJEOi9mcm9udC9pdGVtL3p5QWRtaW4vbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL2NyZWF0ZUNsYXNzLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuanNvbi5zdHJpbmdpZnkuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5vYmplY3Qua2V5cy5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLm9iamVjdC50by1zdHJpbmcuanMiOwovLyArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi8vIHwgQ1JNRUIgWyBDUk1FQui1i+iDveW8gOWPkeiAhe+8jOWKqeWKm+S8geS4muWPkeWxlSBdCi8vICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLy8gfCBDb3B5cmlnaHQgKGMpIDIwMTZ+MjAyMyBodHRwczovL3d3dy5jcm1lYi5jb20gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLy8gKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQovLyB8IExpY2Vuc2VkIENSTUVC5bm25LiN5piv6Ieq55Sx6L2v5Lu277yM5pyq57uP6K645Y+v5LiN6IO95Y675o6JQ1JNRULnm7jlhbPniYjmnYMKLy8gKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQovLyB8IEF1dGhvcjogQ1JNRUIgVGVhbSA8YWRtaW5AY3JtZWIuY29tPgovLyArLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgppbXBvcnQgeyB3c3MsIGdldENvb2tpZXMsIHNldENvb2tpZXMgfSBmcm9tICdAL2xpYnMvdXRpbCc7CmltcG9ydCBTZXR0aW5nIGZyb20gJ0Avc2V0dGluZyc7CmltcG9ydCB7IGdldFdvcmtlcm1hblVybCB9IGZyb20gJ0AvYXBpL2tlZnUnOwppbXBvcnQgVnVlIGZyb20gJ3Z1ZSc7CnZhciB2bSA9IG5ldyBWdWUoKTsKdmFyIHdzQWRtaW5Tb2NrZXRVcmwgPSBnZXRDb29raWVzKCdXU19BRE1JTl9VUkwnKSB8fCAnJzsKdmFyIHdzS2VmdVNvY2tldFVybCA9IGdldENvb2tpZXMoJ1dTX0NIQVRfVVJMJykgfHwgJyc7CnZhciB3c1NvY2tldCA9IC8qI19fUFVSRV9fKi9mdW5jdGlvbiAoKSB7CiAgZnVuY3Rpb24gd3NTb2NrZXQob3B0KSB7CiAgICBfY2xhc3NDYWxsQ2hlY2sodGhpcywgd3NTb2NrZXQpOwogICAgdGhpcy53cyA9IG51bGw7CiAgICB0aGlzLm9wdCA9IG9wdCB8fCB7fTsKICAgIHRoaXMuaW5pdChvcHQua2V5KTsKICB9CiAgcmV0dXJuIF9jcmVhdGVDbGFzcyh3c1NvY2tldCwgW3sKICAgIGtleTogIm9uT3BlbiIsCiAgICB2YWx1ZTogZnVuY3Rpb24gb25PcGVuKCkgewogICAgICB2YXIga2V5ID0gYXJndW1lbnRzLmxlbmd0aCA+IDAgJiYgYXJndW1lbnRzWzBdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMF0gOiBmYWxzZTsKICAgICAgdGhpcy5vcHQub3BlbiAmJiB0aGlzLm9wdC5vcGVuKCk7CiAgICAgIHZhciB0aGF0ID0gdGhpczsKICAgICAgLy8gdGhpcy5zZW5kKHsKICAgICAgLy8gICAgIHR5cGU6ICdsb2dpbicsCiAgICAgIC8vICAgICBkYXRhOiB1dGlsLmNvb2tpZXMuZ2V0KCd0b2tlbicpCiAgICAgIC8vIH0pLnRoZW4oKCkgPT4gewogICAgICAvLyAgICAgdGhhdC5waW5nKCk7CiAgICAgIC8vIH0pOwogICAgICB0aGF0LnBpbmcoKTsKICAgICAgdGhpcy5zb2NrZXRTdGF0dXMgPSB0cnVlOwogICAgfQogIH0sIHsKICAgIGtleTogImluaXQiLAogICAgdmFsdWU6IGZ1bmN0aW9uIGluaXQoa2V5KSB7CiAgICAgIHZhciB3c1VybCA9ICcnOwogICAgICBpZiAoa2V5ID09IDEpIHsKICAgICAgICB3c1VybCA9IHdzQWRtaW5Tb2NrZXRVcmw7CiAgICAgIH0KICAgICAgaWYgKGtleSA9PSAyKSB7CiAgICAgICAgd3NVcmwgPSB3c0tlZnVTb2NrZXRVcmw7CiAgICAgIH0KICAgICAgaWYgKHdzVXJsKSB7CiAgICAgICAgdGhpcy53cyA9IG5ldyBXZWJTb2NrZXQod3NVcmwpOwogICAgICAgIHRoaXMud3Mub25vcGVuID0gdGhpcy5vbk9wZW4uYmluZCh0aGlzKTsKICAgICAgICB0aGlzLndzLm9uZXJyb3IgPSB0aGlzLm9uRXJyb3IuYmluZCh0aGlzKTsKICAgICAgICB0aGlzLndzLm9ubWVzc2FnZSA9IHRoaXMub25NZXNzYWdlLmJpbmQodGhpcyk7CiAgICAgICAgdGhpcy53cy5vbmNsb3NlID0gdGhpcy5vbkNsb3NlLmJpbmQodGhpcyk7CiAgICAgIH0KICAgIH0KICB9LCB7CiAgICBrZXk6ICJwaW5nIiwKICAgIHZhbHVlOiBmdW5jdGlvbiBwaW5nKCkgewogICAgICB2YXIgdGhhdCA9IHRoaXM7CiAgICAgIHRoaXMudGltZXIgPSBzZXRJbnRlcnZhbChmdW5jdGlvbiAoKSB7CiAgICAgICAgdGhhdC5zZW5kKHsKICAgICAgICAgIHR5cGU6ICdwaW5nJwogICAgICAgIH0pOwogICAgICB9LCAxMDAwMCk7CiAgICB9CiAgfSwgewogICAga2V5OiAic2VuZCIsCiAgICB2YWx1ZTogZnVuY3Rpb24gc2VuZChkYXRhKSB7CiAgICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICAgIHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgIF90aGlzLndzLnNlbmQoSlNPTi5zdHJpbmdpZnkoZGF0YSkpOwogICAgICAgICAgcmVzb2x2ZSh7CiAgICAgICAgICAgIHN0YXR1czogdHJ1ZQogICAgICAgICAgfSk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgcmVqZWN0KHsKICAgICAgICAgICAgc3RhdHVzOiBmYWxzZQogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICB9KTsKICAgIH0KICB9LCB7CiAgICBrZXk6ICJvbk1lc3NhZ2UiLAogICAgdmFsdWU6IGZ1bmN0aW9uIG9uTWVzc2FnZShyZXMpIHsKICAgICAgdGhpcy5vcHQubWVzc2FnZSAmJiB0aGlzLm9wdC5tZXNzYWdlKHJlcyk7CiAgICB9CiAgfSwgewogICAga2V5OiAib25DbG9zZSIsCiAgICB2YWx1ZTogZnVuY3Rpb24gb25DbG9zZSgpIHsKICAgICAgdGhpcy50aW1lciAmJiBjbGVhckludGVydmFsKHRoaXMudGltZXIpOwogICAgICB0aGlzLm9wdC5jbG9zZSAmJiB0aGlzLm9wdC5jbG9zZSgpOwogICAgfQogIH0sIHsKICAgIGtleTogIm9uRXJyb3IiLAogICAgdmFsdWU6IGZ1bmN0aW9uIG9uRXJyb3IoZSkgewogICAgICB0aGlzLm9wdC5lcnJvciAmJiB0aGlzLm9wdC5lcnJvcihlKTsKICAgIH0KICB9LCB7CiAgICBrZXk6ICIkb24iLAogICAgdmFsdWU6IGZ1bmN0aW9uICRvbigpIHsKICAgICAgdm0uJG9uLmFwcGx5KHZtLCBhcmd1bWVudHMpOwogICAgfQogIH1dKTsKfSgpOwpmdW5jdGlvbiBjcmVhdGVTb2NrZXQoa2V5KSB7CiAgZ2V0V29ya2VybWFuVXJsKCkudGhlbihmdW5jdGlvbiAocmVzKSB7CiAgICB3c0FkbWluU29ja2V0VXJsID0gcmVzLmRhdGEuYWRtaW47CiAgICB3c0tlZnVTb2NrZXRVcmwgPSByZXMuZGF0YS5jaGF0OwogICAgc2V0Q29va2llcygnV1NfQURNSU5fVVJMJywgcmVzLmRhdGEuYWRtaW4pOwogICAgc2V0Q29va2llcygnV1NfQ0hBVF9VUkwnLCByZXMuZGF0YS5jaGF0KTsKICB9KTsKICByZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24gKHJlc29sdmUsIHJlamVjdCkgewogICAgdmFyIHdzID0gbmV3IHdzU29ja2V0KHsKICAgICAga2V5OiBrZXksCiAgICAgIG9wZW46IGZ1bmN0aW9uIG9wZW4oKSB7CiAgICAgICAgcmVzb2x2ZSh3cyk7CiAgICAgIH0sCiAgICAgIGVycm9yOiBmdW5jdGlvbiBlcnJvcihlKSB7CiAgICAgICAgcmVqZWN0KGUpOwogICAgICB9LAogICAgICBtZXNzYWdlOiBmdW5jdGlvbiBtZXNzYWdlKHJlcykgewogICAgICAgIHZhciBfSlNPTiRwYXJzZSA9IEpTT04ucGFyc2UocmVzLmRhdGEpLAogICAgICAgICAgdHlwZSA9IF9KU09OJHBhcnNlLnR5cGUsCiAgICAgICAgICBfSlNPTiRwYXJzZSRkYXRhID0gX0pTT04kcGFyc2UuZGF0YSwKICAgICAgICAgIGRhdGEgPSBfSlNPTiRwYXJzZSRkYXRhID09PSB2b2lkIDAgPyB7fSA6IF9KU09OJHBhcnNlJGRhdGE7CiAgICAgICAgdm0uJGVtaXQodHlwZSwgZGF0YSk7CiAgICAgIH0sCiAgICAgIGNsb3NlOiBmdW5jdGlvbiBjbG9zZShlKSB7CiAgICAgICAgdm0uJGVtaXQoJ2Nsb3NlJywgZSk7CiAgICAgIH0KICAgIH0pOwogIH0pOwp9CmV4cG9ydCB2YXIgYWRtaW5Tb2NrZXQgPSBjcmVhdGVTb2NrZXQoMSk7CmV4cG9ydCB2YXIgU29ja2V0ID0gY3JlYXRlU29ja2V0KDIpOw=="},{"version":3,"names":["wss","getCookies","setCookies","Setting","getWorkermanUrl","Vue","vm","wsAdminSocketUrl","wsKefuSocketUrl","wsSocket","opt","_classCallCheck","ws","init","key","_createClass","value","onOpen","arguments","length","undefined","open","that","ping","socketStatus","wsUrl","WebSocket","onopen","bind","onerror","onError","onmessage","onMessage","onclose","onClose","timer","setInterval","send","type","data","_this","Promise","resolve","reject","JSON","stringify","status","e","res","message","clearInterval","close","error","$on","apply","createSocket","then","admin","chat","_JSON$parse","parse","_JSON$parse$data","$emit","adminSocket","Socket"],"sources":["D:/front/item/zyAdmin/src/libs/socket.js"],"sourcesContent":["// +---------------------------------------------------------------------\r\n// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]\r\n// +---------------------------------------------------------------------\r\n// | Copyright (c) 2016~2023 https://www.crmeb.com All rights reserved.\r\n// +---------------------------------------------------------------------\r\n// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权\r\n// +---------------------------------------------------------------------\r\n// | Author: CRMEB Team <admin@crmeb.com>\r\n// +---------------------------------------------------------------------\r\n\r\nimport { wss, getCookies, setCookies } from '@/libs/util';\r\nimport Setting from '@/setting';\r\nimport { getWorkermanUrl } from '@/api/kefu';\r\nimport Vue from 'vue';\r\nconst vm = new Vue();\r\nlet wsAdminSocketUrl = getCookies('WS_ADMIN_URL') || '';\r\nlet wsKefuSocketUrl = getCookies('WS_CHAT_URL') || '';\r\n\r\nclass wsSocket {\r\n constructor(opt) {\r\n this.ws = null;\r\n this.opt = opt || {};\r\n this.init(opt.key);\r\n }\r\n\r\n onOpen(key = false) {\r\n this.opt.open && this.opt.open();\r\n let that = this;\r\n // this.send({\r\n // type: 'login',\r\n // data: util.cookies.get('token')\r\n // }).then(() => {\r\n // that.ping();\r\n // });\r\n that.ping();\r\n this.socketStatus = true;\r\n }\r\n\r\n init(key) {\r\n let wsUrl = '';\r\n if (key == 1) {\r\n wsUrl = wsAdminSocketUrl;\r\n }\r\n if (key == 2) {\r\n wsUrl = wsKefuSocketUrl;\r\n }\r\n if (wsUrl) {\r\n this.ws = new WebSocket(wsUrl);\r\n this.ws.onopen = this.onOpen.bind(this);\r\n this.ws.onerror = this.onError.bind(this);\r\n this.ws.onmessage = this.onMessage.bind(this);\r\n this.ws.onclose = this.onClose.bind(this);\r\n }\r\n }\r\n\r\n ping() {\r\n var that = this;\r\n this.timer = setInterval(function () {\r\n that.send({ type: 'ping' });\r\n }, 10000);\r\n }\r\n\r\n send(data) {\r\n return new Promise((resolve, reject) => {\r\n try {\r\n this.ws.send(JSON.stringify(data));\r\n resolve({ status: true });\r\n } catch (e) {\r\n reject({ status: false });\r\n }\r\n });\r\n }\r\n\r\n onMessage(res) {\r\n this.opt.message && this.opt.message(res);\r\n }\r\n\r\n onClose() {\r\n this.timer && clearInterval(this.timer);\r\n this.opt.close && this.opt.close();\r\n }\r\n\r\n onError(e) {\r\n this.opt.error && this.opt.error(e);\r\n }\r\n\r\n $on(...args) {\r\n vm.$on(...args);\r\n }\r\n}\r\n\r\nfunction createSocket(key) {\r\n getWorkermanUrl().then((res) => {\r\n wsAdminSocketUrl = res.data.admin;\r\n wsKefuSocketUrl = res.data.chat;\r\n setCookies('WS_ADMIN_URL', res.data.admin);\r\n setCookies('WS_CHAT_URL', res.data.chat);\r\n });\r\n return new Promise((resolve, reject) => {\r\n const ws = new wsSocket({\r\n key,\r\n open() {\r\n resolve(ws);\r\n },\r\n error(e) {\r\n reject(e);\r\n },\r\n message(res) {\r\n const { type, data = {} } = JSON.parse(res.data);\r\n vm.$emit(type, data);\r\n },\r\n close(e) {\r\n vm.$emit('close', e);\r\n },\r\n });\r\n });\r\n}\r\n\r\nexport const adminSocket = createSocket(1);\r\nexport const Socket = createSocket(2);\r\n"],"mappings":"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","ignoreList":[]}]}