Browse Source

im-ui更名为im-web

master
xsx 2 years ago
parent
commit
cb8dbecb1a
  1. 8
      .gitignore
  2. 26
      im-ui/.gitignore
  3. 0
      im-web/.env.development
  4. 0
      im-web/.env.production
  5. 48
      im-web/README.md
  6. 10
      im-web/babel.config.js
  7. 126
      im-web/package.json
  8. 26
      im-web/public/index.html
  9. 0
      im-web/public/logo.png
  10. 226
      im-web/src/App.vue
  11. 0
      im-web/src/api/camera.js
  12. 0
      im-web/src/api/date.js
  13. 0
      im-web/src/api/element.js
  14. 0
      im-web/src/api/emotion.js
  15. 0
      im-web/src/api/enums.js
  16. 0
      im-web/src/api/eventBus.js
  17. 0
      im-web/src/api/httpRequest.js
  18. 0
      im-web/src/api/messageType.js
  19. 0
      im-web/src/api/rtcGroupApi.js
  20. 0
      im-web/src/api/rtcPrivateApi.js
  21. 0
      im-web/src/api/webrtc.js
  22. 290
      im-web/src/api/wssocket.js
  23. 0
      im-web/src/assets/audio/call.wav
  24. 0
      im-web/src/assets/audio/tip.wav
  25. 0
      im-web/src/assets/emoji/0.gif
  26. 0
      im-web/src/assets/emoji/1.gif
  27. 0
      im-web/src/assets/emoji/10.gif
  28. 0
      im-web/src/assets/emoji/11.gif
  29. 0
      im-web/src/assets/emoji/12.gif
  30. 0
      im-web/src/assets/emoji/13.gif
  31. 0
      im-web/src/assets/emoji/14.gif
  32. 0
      im-web/src/assets/emoji/15.gif
  33. 0
      im-web/src/assets/emoji/16.gif
  34. 0
      im-web/src/assets/emoji/17.gif
  35. 0
      im-web/src/assets/emoji/18.gif
  36. 0
      im-web/src/assets/emoji/19.gif
  37. 0
      im-web/src/assets/emoji/2.gif
  38. 0
      im-web/src/assets/emoji/20.gif
  39. 0
      im-web/src/assets/emoji/21.gif
  40. 0
      im-web/src/assets/emoji/22.gif
  41. 0
      im-web/src/assets/emoji/23.gif
  42. 0
      im-web/src/assets/emoji/24.gif
  43. 0
      im-web/src/assets/emoji/25.gif
  44. 0
      im-web/src/assets/emoji/26.gif
  45. 0
      im-web/src/assets/emoji/27.gif
  46. 0
      im-web/src/assets/emoji/28.gif
  47. 0
      im-web/src/assets/emoji/29.gif
  48. 0
      im-web/src/assets/emoji/3.gif
  49. 0
      im-web/src/assets/emoji/30.gif
  50. 0
      im-web/src/assets/emoji/31.gif
  51. 0
      im-web/src/assets/emoji/32.gif
  52. 0
      im-web/src/assets/emoji/33.gif
  53. 0
      im-web/src/assets/emoji/34.gif
  54. 0
      im-web/src/assets/emoji/35.gif
  55. 0
      im-web/src/assets/emoji/36.gif
  56. 0
      im-web/src/assets/emoji/37.gif
  57. 0
      im-web/src/assets/emoji/38.gif
  58. 0
      im-web/src/assets/emoji/39.gif
  59. 0
      im-web/src/assets/emoji/4.gif
  60. 0
      im-web/src/assets/emoji/40.gif
  61. 0
      im-web/src/assets/emoji/41.gif
  62. 0
      im-web/src/assets/emoji/42.gif
  63. 0
      im-web/src/assets/emoji/43.gif
  64. 0
      im-web/src/assets/emoji/44.gif
  65. 0
      im-web/src/assets/emoji/45.gif
  66. 0
      im-web/src/assets/emoji/46.gif
  67. 0
      im-web/src/assets/emoji/47.gif
  68. 0
      im-web/src/assets/emoji/48.gif
  69. 0
      im-web/src/assets/emoji/49.gif
  70. 0
      im-web/src/assets/emoji/5.gif
  71. 0
      im-web/src/assets/emoji/50.gif
  72. 0
      im-web/src/assets/emoji/51.gif
  73. 0
      im-web/src/assets/emoji/52.gif
  74. 0
      im-web/src/assets/emoji/53.gif
  75. 0
      im-web/src/assets/emoji/54.gif
  76. 0
      im-web/src/assets/emoji/55.gif
  77. 0
      im-web/src/assets/emoji/56.gif
  78. 0
      im-web/src/assets/emoji/6.gif
  79. 0
      im-web/src/assets/emoji/7.gif
  80. 0
      im-web/src/assets/emoji/8.gif
  81. 0
      im-web/src/assets/emoji/9.gif
  82. 0
      im-web/src/assets/iconfont/iconfont.css
  83. 0
      im-web/src/assets/iconfont/iconfont.ttf
  84. 0
      im-web/src/assets/image/icp_logo.png
  85. 0
      im-web/src/assets/image/online_app.png
  86. 0
      im-web/src/assets/image/online_web.png
  87. 86
      im-web/src/assets/style/global.css
  88. 0
      im-web/src/components/chat/ChatAtBox.vue
  89. 0
      im-web/src/components/chat/ChatBox.vue
  90. 0
      im-web/src/components/chat/ChatGroupMember.vue
  91. 0
      im-web/src/components/chat/ChatGroupReaded.vue
  92. 0
      im-web/src/components/chat/ChatGroupSide.vue
  93. 0
      im-web/src/components/chat/ChatHistory.vue
  94. 0
      im-web/src/components/chat/ChatItem.vue
  95. 0
      im-web/src/components/chat/ChatMessageItem.vue
  96. 0
      im-web/src/components/chat/ChatRecord.vue
  97. 0
      im-web/src/components/common/Emotion.vue
  98. 0
      im-web/src/components/common/FileUpload.vue
  99. 0
      im-web/src/components/common/FullImage.vue
  100. 0
      im-web/src/components/common/HeadImage.vue

8
.gitignore

@ -9,10 +9,10 @@
/im-server/src/main/resources/logback-prod.xml
/im-commom/im-commom.iml
/im-uniapp/node_modules/
/im-ui/package-lock.json
/im-web/package-lock.json
/im-uniapp/unpackage/
/im-uniapp/hybrid/
/im-uniapp/package-lock.json
/im-ui/src/components/rtc/LocalVideo.vue
/im-ui/src/components/rtc/RemoteVideo.vue
/im-ui/src/components/rtc/RtcGroupAcceptor.vue
/im-web/src/components/rtc/LocalVideo.vue
/im-web/src/components/rtc/RemoteVideo.vue
/im-web/src/components/rtc/RtcGroupAcceptor.vue

26
im-ui/.gitignore

@ -1,26 +0,0 @@
.DS_Store
node_modules
/dist
# local env files
.env.local
.env.*.local
# Log files
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
# Editor directories and files
.idea
.vscode
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?
#
package-lock.json

0
im-ui/.env.development → im-web/.env.development

0
im-ui/.env.production → im-web/.env.production

48
im-ui/README.md → im-web/README.md

@ -1,24 +1,24 @@
# web
## Project setup
```
npm install
```
### Compiles and hot-reloads for development
```
npm run serve
```
### Compiles and minifies for production
```
npm run build
```
### Lints and fixes files
```
npm run lint
```
### Customize configuration
See [Configuration Reference](https://cli.vuejs.org/config/).
# web
## Project setup
```
npm install
```
### Compiles and hot-reloads for development
```
npm run serve
```
### Compiles and minifies for production
```
npm run build
```
### Lints and fixes files
```
npm run lint
```
### Customize configuration
See [Configuration Reference](https://cli.vuejs.org/config/).

10
im-ui/babel.config.js → im-web/babel.config.js

@ -1,5 +1,5 @@
module.exports = {
presets: [
'@vue/cli-plugin-babel/preset'
]
}
module.exports = {
presets: [
'@vue/cli-plugin-babel/preset'
]
}

126
im-ui/package.json → im-web/package.json

@ -1,63 +1,63 @@
{
"name": "boxim",
"version": "0.1.0",
"private": true,
"scripts": {
"serve": "vue-cli-service serve",
"build": "set NODE_OPTIONS=--openssl-legacy-provider & vue-cli-service build",
"lint": "vue-cli-service lint"
},
"dependencies": {
"axios": "^1.1.3",
"core-js": "^3.6.5",
"element-ui": "^2.15.10",
"js-audio-recorder": "^1.0.7",
"localforage": "^1.10.0",
"sass": "^1.47.0",
"sass-loader": "^10.1.1",
"vue": "^2.6.11",
"vue-axios": "^3.5.0",
"vue-router": "^3.3.3",
"vuex": "^3.6.2",
"vuex-persist": "^3.1.3"
},
"devDependencies": {
"@vue/cli-plugin-babel": "~4.5.12",
"@vue/cli-plugin-eslint": "~4.5.12",
"@vue/cli-service": "~4.5.12",
"babel-eslint": "^10.1.0",
"eslint": "^6.7.2",
"eslint-plugin-vue": "^6.2.2",
"vue-template-compiler": "^2.6.11"
},
"eslintConfig": {
"root": true,
"env": {
"node": true
},
"extends": [
"plugin:vue/essential",
"eslint:recommended"
],
"parserOptions": {
"parser": "babel-eslint"
},
"rules": {
"no-mixed-spaces-and-tabs": 0,
"generator-star-spacing": "off",
"no-tabs": "off",
"no-unused-vars": "off",
"no-unused-labels": "off",
"no-console": "off",
"vue/no-unused-components": "off",
"no-irregular-whitespace": "off",
"no-debugger": "off",
"no-useless-escape": "off"
}
},
"browserslist": [
"> 1%",
"last 2 versions",
"not dead"
]
}
{
"name": "boxim",
"version": "0.1.0",
"private": true,
"scripts": {
"serve": "vue-cli-service serve",
"build": "set NODE_OPTIONS=--openssl-legacy-provider & vue-cli-service build",
"lint": "vue-cli-service lint"
},
"dependencies": {
"axios": "^1.1.3",
"core-js": "^3.6.5",
"element-ui": "^2.15.10",
"js-audio-recorder": "^1.0.7",
"localforage": "^1.10.0",
"sass": "^1.47.0",
"sass-loader": "^10.1.1",
"vue": "^2.6.11",
"vue-axios": "^3.5.0",
"vue-router": "^3.3.3",
"vuex": "^3.6.2",
"vuex-persist": "^3.1.3"
},
"devDependencies": {
"@vue/cli-plugin-babel": "~4.5.12",
"@vue/cli-plugin-eslint": "~4.5.12",
"@vue/cli-service": "~4.5.12",
"babel-eslint": "^10.1.0",
"eslint": "^6.7.2",
"eslint-plugin-vue": "^6.2.2",
"vue-template-compiler": "^2.6.11"
},
"eslintConfig": {
"root": true,
"env": {
"node": true
},
"extends": [
"plugin:vue/essential",
"eslint:recommended"
],
"parserOptions": {
"parser": "babel-eslint"
},
"rules": {
"no-mixed-spaces-and-tabs": 0,
"generator-star-spacing": "off",
"no-tabs": "off",
"no-unused-vars": "off",
"no-unused-labels": "off",
"no-console": "off",
"vue/no-unused-components": "off",
"no-irregular-whitespace": "off",
"no-debugger": "off",
"no-useless-escape": "off"
}
},
"browserslist": [
"> 1%",
"last 2 versions",
"not dead"
]
}

26
im-ui/public/index.html → im-web/public/index.html

@ -1,13 +1,13 @@
<!DOCTYPE html>
<html lang="">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<link rel="icon" href="<%= BASE_URL %>logo.png">
<title>盒子IM</title>
</head>
<body>
<div id="app"></div>
</body>
</html>
<!DOCTYPE html>
<html lang="">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<link rel="icon" href="<%= BASE_URL %>logo.png">
<title>盒子IM</title>
</head>
<body>
<div id="app"></div>
</body>
</html>

0
im-ui/public/logo.png → im-web/public/logo.png

Before

Width:  |  Height:  |  Size: 62 KiB

After

Width:  |  Height:  |  Size: 62 KiB

226
im-ui/src/App.vue → im-web/src/App.vue

@ -1,115 +1,115 @@
<template>
<div id="app">
<router-view></router-view>
</div>
</template>
<script>
export default {
name: 'App',
components: {}
}
</script>
<style lang="scss">
@import './assets/style/global.css';
#app {
font-family: 'Avenir', Helvetica, Arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
position: absolute;
height: 100%;
width: 100%;
}
.el-message {
z-index: 99999999 !important;
}
.el-scrollbar__thumb {
background-color: #A0A8AF !important;
}
.el-dialog {
border-radius: 8px !important;
overflow: hidden !important;
}
.el-dialog__header {
background-color: #5870e6 !important;
}
.el-dialog__title {
color: #f8f8f8 !important;
}
.el-dialog__close {
color: white !important;
font-size: 20px;
}
.el-checkbox__inner {
border-radius: 50% !important;
}
.el-input__inner {
border-radius: 5px !important;
border: #587FF0 1px solid !important;
}
.el-textarea__inner{
border-radius: 5px !important;
border: #587FF0 1px solid !important;
}
.el-icon-search {
color:#587FF0 !important;
}
<template>
<div id="app">
<router-view></router-view>
</div>
</template>
<script>
export default {
name: 'App',
components: {}
}
</script>
<style lang="scss">
@import './assets/style/global.css';
#app {
font-family: 'Avenir', Helvetica, Arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
position: absolute;
height: 100%;
width: 100%;
}
.el-message {
z-index: 99999999 !important;
}
.el-scrollbar__thumb {
background-color: #A0A8AF !important;
}
.el-dialog {
border-radius: 8px !important;
overflow: hidden !important;
}
.el-dialog__header {
background-color: #5870e6 !important;
}
.el-dialog__title {
color: #f8f8f8 !important;
}
.el-dialog__close {
color: white !important;
font-size: 20px;
}
.el-checkbox__inner {
border-radius: 50% !important;
}
.el-input__inner {
border-radius: 5px !important;
border: #587FF0 1px solid !important;
}
.el-textarea__inner{
border-radius: 5px !important;
border: #587FF0 1px solid !important;
}
.el-icon-search {
color:#587FF0 !important;
}
.el-button--primary {
background-color: #687Ff0 !important;
border-color: #687Ff0 !important;
}
.el-button--success {
background-color: #4cae1b !important;
border-color: #4cae1b !important;
}
.el-button--danger {
background-color: #ea4949 !important;
border-color: #ea4949 !important;
}
.el-button {
padding: 8px 15px !important;
}
.el-checkbox {
display: flex;
align-items: center;
//
.el-checkbox__inner {
width: 20px;
height: 20px;
//
&::after {
height: 12px;
left: 7px;
}
}
//
.el-checkbox__input.is-checked+.el-checkbox__label {
color: #333333;
}
.el-checkbox__label {
line-height: 20px;
padding-left: 8px;
}
}
background-color: #687Ff0 !important;
border-color: #687Ff0 !important;
}
.el-button--success {
background-color: #4cae1b !important;
border-color: #4cae1b !important;
}
.el-button--danger {
background-color: #ea4949 !important;
border-color: #ea4949 !important;
}
.el-button {
padding: 8px 15px !important;
}
.el-checkbox {
display: flex;
align-items: center;
//
.el-checkbox__inner {
width: 20px;
height: 20px;
//
&::after {
height: 12px;
left: 7px;
}
}
//
.el-checkbox__input.is-checked+.el-checkbox__label {
color: #333333;
}
.el-checkbox__label {
line-height: 20px;
padding-left: 8px;
}
}
</style>

0
im-ui/src/api/camera.js → im-web/src/api/camera.js

0
im-ui/src/api/date.js → im-web/src/api/date.js

0
im-ui/src/api/element.js → im-web/src/api/element.js

0
im-ui/src/api/emotion.js → im-web/src/api/emotion.js

0
im-ui/src/api/enums.js → im-web/src/api/enums.js

0
im-ui/src/api/eventBus.js → im-web/src/api/eventBus.js

0
im-ui/src/api/httpRequest.js → im-web/src/api/httpRequest.js

0
im-ui/src/api/messageType.js → im-web/src/api/messageType.js

0
im-ui/src/api/rtcGroupApi.js → im-web/src/api/rtcGroupApi.js

0
im-ui/src/api/rtcPrivateApi.js → im-web/src/api/rtcPrivateApi.js

0
im-ui/src/api/webrtc.js → im-web/src/api/webrtc.js

290
im-ui/src/api/wssocket.js → im-web/src/api/wssocket.js

@ -1,145 +1,145 @@
var websock = null;
let rec; //断线重连后,延迟5秒重新创建WebSocket连接 rec用来存储延迟请求的代码
let isConnect = false; //连接标识 避免重复连接
let connectCallBack= null;
let messageCallBack = null;
let closeCallBack = null
let connect = (wsurl,accessToken) => {
try {
if (isConnect) {
return;
}
console.log("连接WebSocket");
websock = new WebSocket(wsurl);
websock.onmessage = function(e) {
let sendInfo = JSON.parse(e.data)
if (sendInfo.cmd == 0) {
heartCheck.start()
// 登录成功才算真正完成连接
connectCallBack && connectCallBack();
console.log('WebSocket登录成功')
} else if (sendInfo.cmd == 1) {
// 重新开启心跳定时
heartCheck.reset();
} else {
// 其他消息转发出去
console.log("收到消息:",sendInfo);
messageCallBack && messageCallBack(sendInfo.cmd, sendInfo.data)
}
}
websock.onclose = function(e) {
console.log('WebSocket连接关闭')
isConnect = false; //断开后修改标识
closeCallBack && closeCallBack(e);
}
websock.onopen = function() {
console.log("WebSocket连接成功");
isConnect = true;
// 发送登录命令
let loginInfo = {
cmd: 0,
data: {
accessToken: accessToken
}
};
websock.send(JSON.stringify(loginInfo));
}
// 连接发生错误的回调方法
websock.onerror = function() {
console.log('WebSocket连接发生错误')
isConnect = false; //连接断开修改标识
reconnect(wsurl,accessToken);
}
} catch (e) {
console.log("尝试创建连接失败");
reconnect(wsurl,accessToken); //如果无法连接上webSocket 那么重新连接!可能会因为服务器重新部署,或者短暂断网等导致无法创建连接
}
};
//定义重连函数
let reconnect = (wsurl,accessToken) => {
console.log("尝试重新连接");
if (isConnect){
//如果已经连上就不在重连了
return;
}
rec && clearTimeout(rec);
rec = setTimeout(function() { // 延迟5秒重连 避免过多次过频繁请求重连
connect(wsurl,accessToken);
}, 15000);
};
//设置关闭连接
let close = (code) => {
websock && websock.close(code);
};
//心跳设置
let heartCheck = {
timeout: 5000, //每段时间发送一次心跳包 这里设置为20s
timeoutObj: null, //延时发送消息对象(启动心跳新建这个对象,收到消息后重置对象)
start: function() {
if (isConnect) {
console.log('发送WebSocket心跳')
let heartBeat = {
cmd: 1,
data: {}
};
websock.send(JSON.stringify(heartBeat))
}
},
reset: function() {
clearTimeout(this.timeoutObj);
this.timeoutObj = setTimeout(function() {
heartCheck.start();
}, this.timeout);
}
};
// 实际调用的方法
let sendMessage = (agentData) => {
if (websock.readyState === websock.OPEN) {
// 若是ws开启状态
websock.send(JSON.stringify(agentData))
} else if (websock.readyState === websock.CONNECTING) {
// 若是 正在开启状态,则等待1s后重新调用
setTimeout(function() {
sendMessage(agentData)
}, 1000)
} else {
// 若未开启 ,则等待1s后重新调用
setTimeout(function() {
sendMessage(agentData)
}, 1000)
}
}
let onConnect = (callback) => {
connectCallBack = callback;
}
let onMessage = (callback) => {
messageCallBack = callback;
}
let onClose = (callback) => {
closeCallBack = callback;
}
// 将方法暴露出去
export {
connect,
reconnect,
close,
sendMessage,
onConnect,
onMessage,
onClose,
}
var websock = null;
let rec; //断线重连后,延迟5秒重新创建WebSocket连接 rec用来存储延迟请求的代码
let isConnect = false; //连接标识 避免重复连接
let connectCallBack= null;
let messageCallBack = null;
let closeCallBack = null
let connect = (wsurl,accessToken) => {
try {
if (isConnect) {
return;
}
console.log("连接WebSocket");
websock = new WebSocket(wsurl);
websock.onmessage = function(e) {
let sendInfo = JSON.parse(e.data)
if (sendInfo.cmd == 0) {
heartCheck.start()
// 登录成功才算真正完成连接
connectCallBack && connectCallBack();
console.log('WebSocket登录成功')
} else if (sendInfo.cmd == 1) {
// 重新开启心跳定时
heartCheck.reset();
} else {
// 其他消息转发出去
console.log("收到消息:",sendInfo);
messageCallBack && messageCallBack(sendInfo.cmd, sendInfo.data)
}
}
websock.onclose = function(e) {
console.log('WebSocket连接关闭')
isConnect = false; //断开后修改标识
closeCallBack && closeCallBack(e);
}
websock.onopen = function() {
console.log("WebSocket连接成功");
isConnect = true;
// 发送登录命令
let loginInfo = {
cmd: 0,
data: {
accessToken: accessToken
}
};
websock.send(JSON.stringify(loginInfo));
}
// 连接发生错误的回调方法
websock.onerror = function() {
console.log('WebSocket连接发生错误')
isConnect = false; //连接断开修改标识
reconnect(wsurl,accessToken);
}
} catch (e) {
console.log("尝试创建连接失败");
reconnect(wsurl,accessToken); //如果无法连接上webSocket 那么重新连接!可能会因为服务器重新部署,或者短暂断网等导致无法创建连接
}
};
//定义重连函数
let reconnect = (wsurl,accessToken) => {
console.log("尝试重新连接");
if (isConnect){
//如果已经连上就不在重连了
return;
}
rec && clearTimeout(rec);
rec = setTimeout(function() { // 延迟5秒重连 避免过多次过频繁请求重连
connect(wsurl,accessToken);
}, 15000);
};
//设置关闭连接
let close = (code) => {
websock && websock.close(code);
};
//心跳设置
let heartCheck = {
timeout: 5000, //每段时间发送一次心跳包 这里设置为20s
timeoutObj: null, //延时发送消息对象(启动心跳新建这个对象,收到消息后重置对象)
start: function() {
if (isConnect) {
console.log('发送WebSocket心跳')
let heartBeat = {
cmd: 1,
data: {}
};
websock.send(JSON.stringify(heartBeat))
}
},
reset: function() {
clearTimeout(this.timeoutObj);
this.timeoutObj = setTimeout(function() {
heartCheck.start();
}, this.timeout);
}
};
// 实际调用的方法
let sendMessage = (agentData) => {
if (websock.readyState === websock.OPEN) {
// 若是ws开启状态
websock.send(JSON.stringify(agentData))
} else if (websock.readyState === websock.CONNECTING) {
// 若是 正在开启状态,则等待1s后重新调用
setTimeout(function() {
sendMessage(agentData)
}, 1000)
} else {
// 若未开启 ,则等待1s后重新调用
setTimeout(function() {
sendMessage(agentData)
}, 1000)
}
}
let onConnect = (callback) => {
connectCallBack = callback;
}
let onMessage = (callback) => {
messageCallBack = callback;
}
let onClose = (callback) => {
closeCallBack = callback;
}
// 将方法暴露出去
export {
connect,
reconnect,
close,
sendMessage,
onConnect,
onMessage,
onClose,
}

0
im-ui/src/assets/audio/call.wav → im-web/src/assets/audio/call.wav

0
im-ui/src/assets/audio/tip.wav → im-web/src/assets/audio/tip.wav

0
im-ui/src/assets/emoji/0.gif → im-web/src/assets/emoji/0.gif

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 25 KiB

0
im-ui/src/assets/emoji/1.gif → im-web/src/assets/emoji/1.gif

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

0
im-ui/src/assets/emoji/10.gif → im-web/src/assets/emoji/10.gif

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 26 KiB

0
im-ui/src/assets/emoji/11.gif → im-web/src/assets/emoji/11.gif

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 30 KiB

0
im-ui/src/assets/emoji/12.gif → im-web/src/assets/emoji/12.gif

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

0
im-ui/src/assets/emoji/13.gif → im-web/src/assets/emoji/13.gif

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 26 KiB

0
im-ui/src/assets/emoji/14.gif → im-web/src/assets/emoji/14.gif

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 18 KiB

0
im-ui/src/assets/emoji/15.gif → im-web/src/assets/emoji/15.gif

Before

Width:  |  Height:  |  Size: 6.7 KiB

After

Width:  |  Height:  |  Size: 6.7 KiB

0
im-ui/src/assets/emoji/16.gif → im-web/src/assets/emoji/16.gif

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 25 KiB

0
im-ui/src/assets/emoji/17.gif → im-web/src/assets/emoji/17.gif

Before

Width:  |  Height:  |  Size: 3.8 KiB

After

Width:  |  Height:  |  Size: 3.8 KiB

0
im-ui/src/assets/emoji/18.gif → im-web/src/assets/emoji/18.gif

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 28 KiB

0
im-ui/src/assets/emoji/19.gif → im-web/src/assets/emoji/19.gif

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 19 KiB

0
im-ui/src/assets/emoji/2.gif → im-web/src/assets/emoji/2.gif

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 27 KiB

0
im-ui/src/assets/emoji/20.gif → im-web/src/assets/emoji/20.gif

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 28 KiB

0
im-ui/src/assets/emoji/21.gif → im-web/src/assets/emoji/21.gif

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 28 KiB

0
im-ui/src/assets/emoji/22.gif → im-web/src/assets/emoji/22.gif

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 30 KiB

0
im-ui/src/assets/emoji/23.gif → im-web/src/assets/emoji/23.gif

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB

0
im-ui/src/assets/emoji/24.gif → im-web/src/assets/emoji/24.gif

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 18 KiB

0
im-ui/src/assets/emoji/25.gif → im-web/src/assets/emoji/25.gif

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 27 KiB

0
im-ui/src/assets/emoji/26.gif → im-web/src/assets/emoji/26.gif

Before

Width:  |  Height:  |  Size: 23 KiB

After

Width:  |  Height:  |  Size: 23 KiB

0
im-ui/src/assets/emoji/27.gif → im-web/src/assets/emoji/27.gif

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 18 KiB

0
im-ui/src/assets/emoji/28.gif → im-web/src/assets/emoji/28.gif

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 24 KiB

0
im-ui/src/assets/emoji/29.gif → im-web/src/assets/emoji/29.gif

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

0
im-ui/src/assets/emoji/3.gif → im-web/src/assets/emoji/3.gif

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 29 KiB

0
im-ui/src/assets/emoji/30.gif → im-web/src/assets/emoji/30.gif

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 29 KiB

0
im-ui/src/assets/emoji/31.gif → im-web/src/assets/emoji/31.gif

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

0
im-ui/src/assets/emoji/32.gif → im-web/src/assets/emoji/32.gif

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

0
im-ui/src/assets/emoji/33.gif → im-web/src/assets/emoji/33.gif

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

0
im-ui/src/assets/emoji/34.gif → im-web/src/assets/emoji/34.gif

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

0
im-ui/src/assets/emoji/35.gif → im-web/src/assets/emoji/35.gif

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

0
im-ui/src/assets/emoji/36.gif → im-web/src/assets/emoji/36.gif

Before

Width:  |  Height:  |  Size: 5.1 KiB

After

Width:  |  Height:  |  Size: 5.1 KiB

0
im-ui/src/assets/emoji/37.gif → im-web/src/assets/emoji/37.gif

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 25 KiB

0
im-ui/src/assets/emoji/38.gif → im-web/src/assets/emoji/38.gif

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

0
im-ui/src/assets/emoji/39.gif → im-web/src/assets/emoji/39.gif

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB

0
im-ui/src/assets/emoji/4.gif → im-web/src/assets/emoji/4.gif

Before

Width:  |  Height:  |  Size: 8.3 KiB

After

Width:  |  Height:  |  Size: 8.3 KiB

0
im-ui/src/assets/emoji/40.gif → im-web/src/assets/emoji/40.gif

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 26 KiB

0
im-ui/src/assets/emoji/41.gif → im-web/src/assets/emoji/41.gif

Before

Width:  |  Height:  |  Size: 7.4 KiB

After

Width:  |  Height:  |  Size: 7.4 KiB

0
im-ui/src/assets/emoji/42.gif → im-web/src/assets/emoji/42.gif

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 26 KiB

0
im-ui/src/assets/emoji/43.gif → im-web/src/assets/emoji/43.gif

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 13 KiB

0
im-ui/src/assets/emoji/44.gif → im-web/src/assets/emoji/44.gif

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 10 KiB

0
im-ui/src/assets/emoji/45.gif → im-web/src/assets/emoji/45.gif

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

0
im-ui/src/assets/emoji/46.gif → im-web/src/assets/emoji/46.gif

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 19 KiB

0
im-ui/src/assets/emoji/47.gif → im-web/src/assets/emoji/47.gif

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 19 KiB

0
im-ui/src/assets/emoji/48.gif → im-web/src/assets/emoji/48.gif

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

0
im-ui/src/assets/emoji/49.gif → im-web/src/assets/emoji/49.gif

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

0
im-ui/src/assets/emoji/5.gif → im-web/src/assets/emoji/5.gif

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 30 KiB

0
im-ui/src/assets/emoji/50.gif → im-web/src/assets/emoji/50.gif

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 18 KiB

0
im-ui/src/assets/emoji/51.gif → im-web/src/assets/emoji/51.gif

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 18 KiB

0
im-ui/src/assets/emoji/52.gif → im-web/src/assets/emoji/52.gif

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 24 KiB

0
im-ui/src/assets/emoji/53.gif → im-web/src/assets/emoji/53.gif

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

0
im-ui/src/assets/emoji/54.gif → im-web/src/assets/emoji/54.gif

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

0
im-ui/src/assets/emoji/55.gif → im-web/src/assets/emoji/55.gif

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

0
im-ui/src/assets/emoji/56.gif → im-web/src/assets/emoji/56.gif

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

0
im-ui/src/assets/emoji/6.gif → im-web/src/assets/emoji/6.gif

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 24 KiB

0
im-ui/src/assets/emoji/7.gif → im-web/src/assets/emoji/7.gif

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 30 KiB

0
im-ui/src/assets/emoji/8.gif → im-web/src/assets/emoji/8.gif

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

0
im-ui/src/assets/emoji/9.gif → im-web/src/assets/emoji/9.gif

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 31 KiB

0
im-ui/src/assets/iconfont/iconfont.css → im-web/src/assets/iconfont/iconfont.css

0
im-ui/src/assets/iconfont/iconfont.ttf → im-web/src/assets/iconfont/iconfont.ttf

0
im-ui/src/assets/image/icp_logo.png → im-web/src/assets/image/icp_logo.png

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

0
im-ui/src/assets/image/online_app.png → im-web/src/assets/image/online_app.png

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 2.7 KiB

0
im-ui/src/assets/image/online_web.png → im-web/src/assets/image/online_web.png

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

86
im-ui/src/assets/style/global.css → im-web/src/assets/style/global.css

@ -1,43 +1,43 @@
@charset "UTF-8";
html {
height: 100%;
overflow: hidden;
}
body {
height: 100%;
margin: 0;
overflow: hidden;
}
section {
height: 100%;
}
.el-dialog__body{
padding: 10px 15px !important;
}
::-webkit-scrollbar {
width: 6px;
height: 1px;
}
::-webkit-scrollbar-thumb {
/*滚动条里面小方块*/
border-radius: 2px;
-webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2);
background: #535353;
}
::-webkit-scrollbar-track {
/*滚动条里面轨道*/
-webkit-box-shadow: inset 0 0 5px transparent;
border-radius: 2px;
background: #ededed;
}
/*# sourceMappingURL=v-im.cssss.map */
@charset "UTF-8";
html {
height: 100%;
overflow: hidden;
}
body {
height: 100%;
margin: 0;
overflow: hidden;
}
section {
height: 100%;
}
.el-dialog__body{
padding: 10px 15px !important;
}
::-webkit-scrollbar {
width: 6px;
height: 1px;
}
::-webkit-scrollbar-thumb {
/*滚动条里面小方块*/
border-radius: 2px;
-webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2);
background: #535353;
}
::-webkit-scrollbar-track {
/*滚动条里面轨道*/
-webkit-box-shadow: inset 0 0 5px transparent;
border-radius: 2px;
background: #ededed;
}
/*# sourceMappingURL=v-im.cssss.map */

0
im-ui/src/components/chat/ChatAtBox.vue → im-web/src/components/chat/ChatAtBox.vue

0
im-ui/src/components/chat/ChatBox.vue → im-web/src/components/chat/ChatBox.vue

0
im-ui/src/components/chat/ChatGroupMember.vue → im-web/src/components/chat/ChatGroupMember.vue

0
im-ui/src/components/chat/ChatGroupReaded.vue → im-web/src/components/chat/ChatGroupReaded.vue

0
im-ui/src/components/chat/ChatGroupSide.vue → im-web/src/components/chat/ChatGroupSide.vue

0
im-ui/src/components/chat/ChatHistory.vue → im-web/src/components/chat/ChatHistory.vue

0
im-ui/src/components/chat/ChatItem.vue → im-web/src/components/chat/ChatItem.vue

0
im-ui/src/components/chat/ChatMessageItem.vue → im-web/src/components/chat/ChatMessageItem.vue

0
im-ui/src/components/chat/ChatRecord.vue → im-web/src/components/chat/ChatRecord.vue

0
im-ui/src/components/common/Emotion.vue → im-web/src/components/common/Emotion.vue

0
im-ui/src/components/common/FileUpload.vue → im-web/src/components/common/FileUpload.vue

0
im-ui/src/components/common/FullImage.vue → im-web/src/components/common/FullImage.vue

0
im-ui/src/components/common/HeadImage.vue → im-web/src/components/common/HeadImage.vue

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save