koishi-plugin-chat-patch 5.3.1 → 5.5.1

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.
Files changed (65) hide show
  1. package/client/web/dist/assets/Chat-B5Jdrz_2.js +28 -0
  2. package/client/web/dist/assets/{Chat-C-rmzMIw.css → Chat-DTEsebnY.css} +1 -1
  3. package/client/web/dist/assets/{MsgBody-h4C1nnBQ.js → MsgBody-tPnKSZOs.js} +1 -1
  4. package/client/web/dist/assets/{MsgBody.vue_vue_type_script_setup_true_lang-a902ps2r.js → MsgBody.vue_vue_type_script_setup_true_lang-ClDybRo_.js} +1 -1
  5. package/client/web/dist/assets/{append_darwin-CqBNU62J.css → append_darwin-Cql-dV6d.css} +1 -1
  6. package/client/web/dist/assets/{append_full_vibrancy-j0D2LM9m.css → append_full_vibrancy-ih3loy1O.css} +1 -1
  7. package/client/web/dist/assets/{append_linux-uhxeBqeC.css → append_linux-B3LvR8KB.css} +1 -1
  8. package/client/web/dist/assets/{append_new-407Lo5_V.css → append_new-DfhN_NX9.css} +1 -1
  9. package/client/web/dist/assets/{append_vibrancy-6FHctkOY.css → append_vibrancy-D3pVsmAa.css} +1 -1
  10. package/client/web/dist/assets/{append_win32-srmD-78y.css → append_win32-Dh9JlmlE.css} +1 -1
  11. package/client/web/dist/assets/index-B71pPwae.css +1 -0
  12. package/client/web/dist/assets/{index-CdTmWcO4.js → index-CSGfOsfr.js} +97 -76
  13. package/client/web/dist/index.html +2 -2
  14. package/client/web/src/App.vue +2 -2
  15. package/client/web/src/assets/css/append/append_darwin.css +2 -2
  16. package/client/web/src/assets/css/append/append_full_vibrancy.css +2 -2
  17. package/client/web/src/assets/css/append/append_linux.css +2 -2
  18. package/client/web/src/assets/css/append/append_new.css +2 -2
  19. package/client/web/src/assets/css/append/append_vibrancy.css +1 -1
  20. package/client/web/src/assets/css/append/append_win32.css +2 -2
  21. package/client/web/src/assets/css/append/mobile/append_mobile_horizontal.css +1 -1
  22. package/client/web/src/assets/css/chat.css +4 -3
  23. package/client/web/src/assets/css/msg.css +7 -3
  24. package/client/web/src/assets/css/options.css +2 -2
  25. package/client/web/src/assets/css/view.css +14 -3
  26. package/client/web/src/assets/l10n/zh-CN.po +21 -0
  27. package/client/web/src/components/AboutPan.vue +5 -3
  28. package/client/web/src/components/DepPan.vue +1 -1
  29. package/client/web/src/components/MsgBody.vue +0 -3
  30. package/client/web/src/components/ThemeColorPickerPan.vue +1 -1
  31. package/client/web/src/components/UmamiInfoPan.vue +1 -1
  32. package/client/web/src/components/WelPan.vue +1 -1
  33. package/client/web/src/function/connect.ts +232 -72
  34. package/client/web/src/function/elements/information.ts +1 -0
  35. package/client/web/src/function/msg.ts +43 -24
  36. package/client/web/src/function/satori-model.ts +47 -15
  37. package/client/web/src/function/satori.ts +2 -1
  38. package/client/web/src/function/utils/appUtil.ts +3 -11
  39. package/client/web/src/function/utils/localHistoryUtil.ts +36 -12
  40. package/client/web/src/function/utils/msgUtil.ts +32 -21
  41. package/client/web/src/function/utils/sessionUtil.ts +20 -18
  42. package/client/web/src/pages/Chat.vue +47 -43
  43. package/client/web/src/pages/Friends.vue +5 -7
  44. package/client/web/src/pages/Info.vue +2 -2
  45. package/client/web/src/pages/Messages.vue +37 -23
  46. package/client/web/src/pages/chat-view/ChatTerminal.vue +4 -1
  47. package/client/web/src/pages/options/OptDev.vue +45 -2
  48. package/lib/database.d.ts +58 -0
  49. package/lib/index.js +220 -68
  50. package/lib/media.d.ts +24 -0
  51. package/lib/recorder.d.ts +21 -0
  52. package/lib/self-message.d.ts +27 -0
  53. package/lib/types.d.ts +6 -0
  54. package/lib/web.d.ts +7 -0
  55. package/package.json +1 -1
  56. package/src/cache.ts +1 -5
  57. package/src/database.ts +52 -8
  58. package/src/index.ts +4 -4
  59. package/src/media.ts +97 -0
  60. package/src/recorder.ts +28 -19
  61. package/src/self-message.ts +68 -19
  62. package/src/types.ts +6 -0
  63. package/src/web.ts +49 -39
  64. package/client/web/dist/assets/Chat-Bo5JdcNg.js +0 -28
  65. package/client/web/dist/assets/index-wjp_A4n1.css +0 -1
@@ -11,8 +11,8 @@
11
11
  <link rel="stylesheet" href="./bcui/css/style.css">
12
12
  <link rel="stylesheet" href="./bcui/css/color-light.css">
13
13
  <link rel="stylesheet" href="./css/append-light.css">
14
- <script type="module" crossorigin src="./assets/index-CdTmWcO4.js"></script>
15
- <link rel="stylesheet" crossorigin href="./assets/index-wjp_A4n1.css">
14
+ <script type="module" crossorigin src="./assets/index-CSGfOsfr.js"></script>
15
+ <link rel="stylesheet" crossorigin href="./assets/index-B71pPwae.css">
16
16
  </head>
17
17
 
18
18
  <body>
@@ -1069,7 +1069,7 @@ onUnmounted(() => {
1069
1069
  transform: translateY(12px);
1070
1070
  }
1071
1071
 
1072
- @media (max-width: 700px) {
1072
+ @media (max-width: 800px) {
1073
1073
  .global-music-player {
1074
1074
  left: 100px;
1075
1075
  bottom: 60px;
@@ -1078,7 +1078,7 @@ onUnmounted(() => {
1078
1078
  }
1079
1079
  }
1080
1080
 
1081
- @media (max-width: 500px) {
1081
+ @media (max-width: 800px) {
1082
1082
  .global-music-player {
1083
1083
  left: 20px !important;
1084
1084
  bottom: 60px;
@@ -18,7 +18,7 @@ body {
18
18
  padding-top: 20px;
19
19
  }
20
20
 
21
- @media (max-width: 700px) {
21
+ @media (max-width: 800px) {
22
22
  /* macOS 下忽略 500 档位,因为需要避开红绿灯按钮 */
23
23
  .pop-box-body {
24
24
  width: fit-content !important;
@@ -56,7 +56,7 @@ body {
56
56
  margin-left: 12px;
57
57
  }
58
58
  }
59
- @media (max-width: 500px) {
59
+ @media (max-width: 800px) {
60
60
  .chat-pan.open {
61
61
  transform: translateX(100%) !important;
62
62
  }
@@ -277,13 +277,13 @@
277
277
  backdrop-filter: blur(10px);
278
278
  }
279
279
 
280
- @media (max-width: 700px) {
280
+ @media (max-width: 800px) {
281
281
  .friend-list {
282
282
  background: transparent !important;
283
283
  }
284
284
  }
285
285
 
286
- @media (max-width: 500px) {
286
+ @media (max-width: 800px) {
287
287
  .chat-pan {
288
288
  backdrop-filter: blur(10px);
289
289
  }
@@ -87,7 +87,7 @@
87
87
  margin-top: 20px;
88
88
  }
89
89
 
90
- @media (max-width: 700px) {
90
+ @media (max-width: 800px) {
91
91
  .chat-pan.withBar {
92
92
  height: calc(100% - 105px) !important;
93
93
  left: 70px !important;
@@ -118,7 +118,7 @@
118
118
  }
119
119
  }
120
120
 
121
- @media (max-width: 500px) {
121
+ @media (max-width: 800px) {
122
122
  .friend-list > div:first-child {
123
123
  margin: 15px 15px 0 0 !important;
124
124
  }
@@ -783,7 +783,7 @@ body {
783
783
  font-size: 0.8rem;
784
784
  }
785
785
 
786
- @media (max-width: 700px) {
786
+ @media (max-width: 800px) {
787
787
  .main-body > ul {
788
788
  background: var(--color-card-2) !important;
789
789
  height: 60px !important;
@@ -824,7 +824,7 @@ body {
824
824
  height: 44px;
825
825
  }
826
826
  }
827
- @media (max-width: 500px) {
827
+ @media (max-width: 800px) {
828
828
  .pop-box-body {
829
829
  width: fit-content !important;
830
830
  }
@@ -106,7 +106,7 @@ body {
106
106
  backdrop-filter: blur(10px);
107
107
  }
108
108
 
109
- @media (max-width: 500px) {
109
+ @media (max-width: 800px) {
110
110
  .chat-pan > div.info {
111
111
  margin-top: 35px;
112
112
  }
@@ -48,7 +48,7 @@ input {
48
48
  height: calc(100% - 17px) !important;
49
49
  }
50
50
 
51
- @media (max-width: 700px) {
51
+ @media (max-width: 800px) {
52
52
  .friend-list {
53
53
  width: 60px !important;
54
54
  }
@@ -92,7 +92,7 @@ input {
92
92
  }
93
93
  }
94
94
 
95
- @media (max-width: 500px) {
95
+ @media (max-width: 800px) {
96
96
  .chat-pan.withBar {
97
97
  padding-top: 0;
98
98
  left: 0 !important;
@@ -339,7 +339,7 @@ html {
339
339
  max-width: 100vw;
340
340
  }
341
341
 
342
- @media (max-width: 500px) {
342
+ @media (max-width: 800px) {
343
343
  .global-music-player {
344
344
  bottom: calc(70px + var(--safe-area-bottom)) !important;
345
345
  }
@@ -625,7 +625,8 @@ input {
625
625
  transform: translate(-50%, -50%);
626
626
  flex-direction: column;
627
627
  position: absolute;
628
- min-width: 400px;
628
+ min-width: min(400px, calc(100% - 40px));
629
+ max-width: calc(100% - 40px);
629
630
  max-height: 80%;
630
631
  display: flex;
631
632
  width: 50%;
@@ -1973,7 +1974,7 @@ div.tiny-session-body > div:nth-child(3) > div > svg {
1973
1974
  display: none;
1974
1975
  }
1975
1976
 
1976
- @media (max-width: 700px) {
1977
+ @media (max-width: 800px) {
1977
1978
  /* 多选操作在窄屏下可横向滚动,避免操作项被裁切 */
1978
1979
  .select-tag.show {
1979
1980
  justify-content: flex-start;
@@ -2036,7 +2037,7 @@ div.tiny-session-body > div:nth-child(3) > div > svg {
2036
2037
  }
2037
2038
  }
2038
2039
 
2039
- @media (max-width: 500px) {
2040
+ @media (max-width: 800px) {
2040
2041
  /* 群信息面板 */
2041
2042
  .chat-info {
2042
2043
  height: calc(100% - 115px);
@@ -123,11 +123,15 @@
123
123
  max-width: calc(100% - 50px);
124
124
  }
125
125
  .message.revoke {
126
- display: none;
126
+ display: flex;
127
+ opacity: 1;
128
+ border: 2px solid var(--color-red);
129
+ border-radius: 7px;
130
+ background: rgba(255, 80, 80, 0.08);
127
131
  }
128
132
  .message.revoke.me {
129
133
  display: flex;
130
- opacity: 0.4;
134
+ opacity: 1;
131
135
  }
132
136
  .message.body-only > div.message-body {
133
137
  max-width: 100%;
@@ -928,7 +932,7 @@ span.user-title.robot {
928
932
  }
929
933
  }
930
934
 
931
- @media (max-width: 500px) {
935
+ @media (max-width: 800px) {
932
936
  .msg-img.face.lottie-face {
933
937
  max-width: 40vw;
934
938
  }
@@ -761,7 +761,7 @@
761
761
  color: var(--color-font-1);
762
762
  }
763
763
 
764
- @media (max-width: 700px) {
764
+ @media (max-width: 800px) {
765
765
  .option-title {
766
766
  display: none !important;
767
767
  }
@@ -803,7 +803,7 @@
803
803
  }
804
804
  }
805
805
 
806
- @media (max-width: 500px) {
806
+ @media (max-width: 800px) {
807
807
  .account-not-login {
808
808
  margin: 0 auto;
809
809
  width: calc(100% - 40px);
@@ -763,11 +763,14 @@ textarea:focus {
763
763
  opacity: 0;
764
764
  }
765
765
  .group-assist-message-list {
766
- transition: margin 0.3s, opacity 0.4s;
766
+ transition: opacity 0.15s;
767
767
  margin-right: -300px;
768
768
  opacity: 0;
769
769
  z-index: 1;
770
770
  }
771
+ .group-assist-message-list:not(.show) > div:first-child {
772
+ visibility: hidden;
773
+ }
771
774
  .group-assist-message-list.show {
772
775
  margin-left: -300px;
773
776
  margin-right: 0;
@@ -1747,7 +1750,7 @@ textarea:focus {
1747
1750
  }
1748
1751
 
1749
1752
 
1750
- @media (max-width: 700px) {
1753
+ @media (max-width: 800px) {
1751
1754
  /* 侧栏及主布局自适应 */
1752
1755
  .main-body {
1753
1756
  flex-direction: column-reverse;
@@ -1771,6 +1774,9 @@ textarea:focus {
1771
1774
  margin-top: 0;
1772
1775
  margin-bottom: 0 !important;
1773
1776
  }
1777
+ .main-body > ul > li#bar-msg > svg {
1778
+ transform: translateY(-4px);
1779
+ }
1774
1780
  .side-bar-space {
1775
1781
  display: none;
1776
1782
  }
@@ -1923,7 +1929,7 @@ textarea:focus {
1923
1929
  }
1924
1930
  }
1925
1931
 
1926
- @media (max-width: 500px) {
1932
+ @media (max-width: 800px) {
1927
1933
  /* 全局通用弹窗 */
1928
1934
  .pop-box-body {
1929
1935
  max-height: calc(100vh - 80px);
@@ -1941,6 +1947,11 @@ textarea:focus {
1941
1947
  display: none;
1942
1948
  }
1943
1949
  /* 二级侧栏 */
1950
+ .friend-list-container {
1951
+ flex: 1;
1952
+ min-width: 100%;
1953
+ width: 100%;
1954
+ }
1944
1955
  .friend-list {
1945
1956
  width: 100% !important;
1946
1957
  }
@@ -1939,3 +1939,24 @@ msgstr "还没有连接到 Satori 耶"
1939
1939
 
1940
1940
  msgid "这是当前 Satori 登录账号的相关信息"
1941
1941
  msgstr "这是当前 Satori 登录账号的相关信息"
1942
+
1943
+ msgid "删除数据库全部缓存"
1944
+ msgstr "删除数据库全部缓存"
1945
+
1946
+ msgid "清空媒体缓存、内容缓存和数据库历史记录"
1947
+ msgstr "清空媒体缓存、内容缓存和数据库历史记录"
1948
+
1949
+ msgid "删除"
1950
+ msgstr "删除"
1951
+
1952
+ msgid "确认要删除全部缓存吗?删除后媒体图片、消息内容和数据库历史记录都会被清空。"
1953
+ msgstr "确认要删除全部缓存吗?删除后媒体图片、消息内容和数据库历史记录都会被清空。"
1954
+
1955
+ msgid "缓存已全部删除"
1956
+ msgstr "缓存已全部删除"
1957
+
1958
+ msgid "删除缓存失败"
1959
+ msgstr "删除缓存失败"
1960
+
1961
+ msgid "撤回失败"
1962
+ msgstr "撤回失败"
@@ -13,9 +13,11 @@
13
13
  <span>{{ $t('Koishi Satori 聊天室') }}</span>
14
14
  </div>
15
15
  <div class="about-source">
16
- {{ $t('本页面魔改自') }}
17
- <a @click="openLink('https://github.com/Stapxs/Stapxs-QQ-Lite-2.0')">Stapxs QQ Lite 2.0</a>
18
- {{ $t(',感谢原项目的 UI 设计。') }}
16
+ {{ $t('本页面魔改自') }}
17
+ <a @click="openLink('https://github.com/Stapxs/Stapxs-QQ-Lite-2.0')">Stapxs QQ Lite 2.0</a>
18
+ </div>
19
+ <div class="about-source">
20
+ {{ $t('感谢原项目的 UI 设计。') }}
19
21
  </div>
20
22
  <div v-if="sponsorList.length > 0 && showUI" class="contributors-card">
21
23
  <div />
@@ -274,7 +274,7 @@
274
274
  margin-top: 10px;
275
275
  }
276
276
 
277
- @media (max-width: 700px) {
277
+ @media (max-width: 800px) {
278
278
  .main {
279
279
  flex-wrap: wrap;
280
280
  }
@@ -1318,9 +1318,6 @@ onMounted(() => {
1318
1318
  border-radius: 7px;
1319
1319
  background: rgba(255, 80, 80, 0.08);
1320
1320
  }
1321
- .message.revoke .message-body > div {
1322
- background: transparent;
1323
- }
1324
1321
  .revoked-tag {
1325
1322
  color: var(--color-red);
1326
1323
  font-size: 0.75rem;
@@ -398,7 +398,7 @@
398
398
  width: 100%;
399
399
  }
400
400
 
401
- @media (max-width: 500px) {
401
+ @media (max-width: 800px) {
402
402
  .theme-color-picker-pan {
403
403
  width: calc(100% - 20px);
404
404
  padding: 10px !important;
@@ -1474,7 +1474,7 @@
1474
1474
  color: var(--color-font-2);
1475
1475
  }
1476
1476
 
1477
- @media (max-width: 500px) {
1477
+ @media (max-width: 800px) {
1478
1478
  .umami-info-pan {
1479
1479
  flex-direction: column-reverse !important;
1480
1480
  margin: -46px -20px -20px -20px !important;
@@ -870,7 +870,7 @@
870
870
  flex: 1;
871
871
  }
872
872
 
873
- @media (max-width: 700px) {
873
+ @media (max-width: 800px) {
874
874
  .function {
875
875
  overflow-y: scroll;
876
876
  overflow-x: hidden;