yx-web-sdk 0.0.9 → 0.0.10

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 (26) hide show
  1. package/dist/ait-person-popover/index.js +1 -1
  2. package/dist/chat-card/index.js +1 -1
  3. package/dist/chat-content/index.js +1 -1
  4. package/dist/chat-page/index.js +1 -1
  5. package/dist/chat-room/index.js +1 -1
  6. package/dist/common-avatar/index.js +1 -1
  7. package/dist/components/index-entry/index.vue.d.ts +2 -0
  8. package/dist/index/style7.css +67 -67
  9. package/dist/{index-RMlcmgP2.mjs → index-BdFjNvc-.mjs} +32 -9
  10. package/dist/{index-3-70F_FL.mjs → index-BirGmSAj.mjs} +1 -1
  11. package/dist/{index-BQ2E-JY7.mjs → index-DyFeZaGR.mjs} +1 -1
  12. package/dist/index-entry/index.js +24 -11
  13. package/dist/index-entry/index.vue.d.ts +2 -0
  14. package/dist/index-entry/style.css +19 -19
  15. package/dist/{index.vue_vue_type_script_setup_true_lang-B1LzMRY_.mjs → index.vue_vue_type_script_setup_true_lang-DpQUcXhM.mjs} +2 -2
  16. package/dist/{index.vue_vue_type_style_index_0_lang-BMnOivDF.mjs → index.vue_vue_type_style_index_0_lang-BQnM5kIy.mjs} +18 -11
  17. package/dist/{index.vue_vue_type_style_index_0_lang-B0ZWKYC1.mjs → index.vue_vue_type_style_index_0_lang-BUZbioTQ.mjs} +3 -3
  18. package/dist/{index.vue_vue_type_style_index_0_lang-C85oVzKt.mjs → index.vue_vue_type_style_index_0_lang-Bo1yOS7C.mjs} +1 -1
  19. package/dist/{index.vue_vue_type_style_index_0_lang-joKZypQp.mjs → index.vue_vue_type_style_index_0_lang-Bu1NmImh.mjs} +41 -28
  20. package/dist/members-sidebar/index.js +1 -1
  21. package/dist/server-channel-sidebar/index.js +1 -1
  22. package/dist/stores/server.d.ts +3 -0
  23. package/dist/style.css +86 -86
  24. package/dist/yx-web-sdk.es.js +105 -49
  25. package/dist/yx-web-sdk.umd.js +104 -48
  26. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- import { A as AitPersonPopover } from "../index-3-70F_FL.mjs";
1
+ import { A as AitPersonPopover } from "../index-BirGmSAj.mjs";
2
2
  export {
3
3
  AitPersonPopover,
4
4
  AitPersonPopover as default
@@ -1,4 +1,4 @@
1
- import { _ as _sfc_main } from "../index.vue_vue_type_style_index_0_lang-C85oVzKt.mjs";
1
+ import { _ as _sfc_main } from "../index.vue_vue_type_style_index_0_lang-Bo1yOS7C.mjs";
2
2
  export {
3
3
  _sfc_main as ChatCard,
4
4
  _sfc_main as default
@@ -1,4 +1,4 @@
1
- import { _ as _sfc_main } from "../index.vue_vue_type_style_index_0_lang-joKZypQp.mjs";
1
+ import { _ as _sfc_main } from "../index.vue_vue_type_style_index_0_lang-Bu1NmImh.mjs";
2
2
  export {
3
3
  _sfc_main as ChatContent,
4
4
  _sfc_main as default
@@ -1,4 +1,4 @@
1
- import { _ as _sfc_main } from "../index.vue_vue_type_style_index_0_lang-B0ZWKYC1.mjs";
1
+ import { _ as _sfc_main } from "../index.vue_vue_type_style_index_0_lang-BUZbioTQ.mjs";
2
2
  export {
3
3
  _sfc_main as ChatPage,
4
4
  _sfc_main as default
@@ -1,4 +1,4 @@
1
- import { _ as _sfc_main } from "../index.vue_vue_type_script_setup_true_lang-B1LzMRY_.mjs";
1
+ import { _ as _sfc_main } from "../index.vue_vue_type_script_setup_true_lang-DpQUcXhM.mjs";
2
2
  export {
3
3
  _sfc_main as ChatRoom,
4
4
  _sfc_main as default
@@ -1,4 +1,4 @@
1
- import { _ as _sfc_main } from "../index.vue_vue_type_style_index_0_lang-BMnOivDF.mjs";
1
+ import { _ as _sfc_main } from "../index.vue_vue_type_style_index_0_lang-BQnM5kIy.mjs";
2
2
  export {
3
3
  _sfc_main as CommonAvatar,
4
4
  _sfc_main as default
@@ -14,9 +14,11 @@ declare const _default: import("vue").DefineComponent<__VLS_Props, {
14
14
  message: (msg: QChatMessage) => any;
15
15
  error: (error: string) => any;
16
16
  ready: () => any;
17
+ reconnect: () => any;
17
18
  }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
18
19
  onMessage?: ((msg: QChatMessage) => any) | undefined;
19
20
  onError?: ((error: string) => any) | undefined;
20
21
  onReady?: (() => any) | undefined;
22
+ onReconnect?: (() => any) | undefined;
21
23
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
22
24
  export default _default;
@@ -1,15 +1,15 @@
1
- .sidebar-container[data-v-7731f1d8] {
1
+ .sidebar-container[data-v-77ecb4c2] {
2
2
  display: flex;
3
3
  height: 100%;
4
4
  position: relative;
5
5
  }
6
- .sidebar-container.is-switching .server-item[data-v-7731f1d8],
7
- .sidebar-container.is-switching .channel-item[data-v-7731f1d8] {
6
+ .sidebar-container.is-switching .server-item[data-v-77ecb4c2],
7
+ .sidebar-container.is-switching .channel-item[data-v-77ecb4c2] {
8
8
  cursor: not-allowed;
9
9
  opacity: 0.6;
10
10
  pointer-events: none;
11
11
  }
12
- .user-panel-float[data-v-7731f1d8] {
12
+ .user-panel-float[data-v-77ecb4c2] {
13
13
  position: absolute;
14
14
  bottom: 12px;
15
15
  left: 12px;
@@ -23,11 +23,11 @@
23
23
  border-radius: 8px;
24
24
  box-shadow: 0px 1px 3px 0px rgba(29, 31, 58, 0.0196078431);
25
25
  }
26
- .user-panel-float .user-avatar[data-v-7731f1d8] {
26
+ .user-panel-float .user-avatar[data-v-77ecb4c2] {
27
27
  position: relative;
28
28
  flex-shrink: 0;
29
29
  }
30
- .user-panel-float .user-avatar .online-indicator[data-v-7731f1d8] {
30
+ .user-panel-float .user-avatar .online-indicator[data-v-77ecb4c2] {
31
31
  position: absolute;
32
32
  bottom: 0;
33
33
  right: 0;
@@ -37,12 +37,12 @@
37
37
  border: 3px solid #1a1b1e;
38
38
  border-radius: 50%;
39
39
  }
40
- .user-panel-float .user-info[data-v-7731f1d8] {
40
+ .user-panel-float .user-info[data-v-77ecb4c2] {
41
41
  flex: 1;
42
42
  overflow: hidden;
43
43
  min-width: 0;
44
44
  }
45
- .user-panel-float .user-info .user-name[data-v-7731f1d8] {
45
+ .user-panel-float .user-info .user-name[data-v-77ecb4c2] {
46
46
  font-size: 14px;
47
47
  font-weight: 600;
48
48
  color: var(--theme-text);
@@ -50,25 +50,25 @@
50
50
  text-overflow: ellipsis;
51
51
  white-space: nowrap;
52
52
  }
53
- .user-panel-float .user-info .user-status[data-v-7731f1d8] {
53
+ .user-panel-float .user-info .user-status[data-v-77ecb4c2] {
54
54
  display: flex;
55
55
  align-items: center;
56
56
  gap: 4px;
57
57
  font-size: 12px;
58
58
  color: var(--theme-success-text);
59
59
  }
60
- .user-panel-float .user-info .user-status .status-dot[data-v-7731f1d8] {
60
+ .user-panel-float .user-info .user-status .status-dot[data-v-77ecb4c2] {
61
61
  width: 8px;
62
62
  height: 8px;
63
63
  background-color: var(--theme-success-text);
64
64
  border-radius: 50%;
65
65
  }
66
- .user-panel-float .user-actions[data-v-7731f1d8] {
66
+ .user-panel-float .user-actions[data-v-77ecb4c2] {
67
67
  display: flex;
68
68
  align-items: center;
69
69
  gap: 8px;
70
70
  }
71
- .user-panel-float .user-actions .action-btn[data-v-7731f1d8] {
71
+ .user-panel-float .user-actions .action-btn[data-v-77ecb4c2] {
72
72
  width: 20px;
73
73
  height: 20px;
74
74
  display: flex;
@@ -81,14 +81,14 @@
81
81
  font-size: 16px;
82
82
  outline: none;
83
83
  }
84
- .user-panel-float .user-actions .action-btn[data-v-7731f1d8]:hover {
84
+ .user-panel-float .user-actions .action-btn[data-v-77ecb4c2]:hover {
85
85
  background-color: var(--theme-icon-hover);
86
86
  color: var(--theme-text);
87
87
  }
88
- .user-panel-float .user-actions .action-btn[data-v-7731f1d8]:focus {
88
+ .user-panel-float .user-actions .action-btn[data-v-77ecb4c2]:focus {
89
89
  outline: none;
90
90
  }
91
- .server-sidebar[data-v-7731f1d8] {
91
+ .server-sidebar[data-v-77ecb4c2] {
92
92
  display: flex;
93
93
  flex-direction: column;
94
94
  width: 72px;
@@ -96,22 +96,22 @@
96
96
  padding: 16px 0;
97
97
  padding-bottom: 60px;
98
98
  }
99
- .server-sidebar .server-list[data-v-7731f1d8] {
99
+ .server-sidebar .server-list[data-v-77ecb4c2] {
100
100
  flex: 1;
101
101
  overflow-y: auto;
102
102
  overflow-x: hidden;
103
103
  border-right: 1px solid var(--theme-line);
104
104
  }
105
- .server-sidebar .server-list[data-v-7731f1d8]::-webkit-scrollbar {
105
+ .server-sidebar .server-list[data-v-77ecb4c2]::-webkit-scrollbar {
106
106
  width: 0;
107
107
  }
108
- .server-sidebar .logo-wrap[data-v-7731f1d8] {
108
+ .server-sidebar .logo-wrap[data-v-77ecb4c2] {
109
109
  margin: 0 16px;
110
110
  border-bottom: 1px solid var(--theme-line-split);
111
111
  padding-bottom: 12px;
112
112
  margin-bottom: 12px;
113
113
  }
114
- .server-sidebar .logo-wrap .logo[data-v-7731f1d8] {
114
+ .server-sidebar .logo-wrap .logo[data-v-77ecb4c2] {
115
115
  width: 40px;
116
116
  height: 40px;
117
117
  border-radius: 8px;
@@ -122,7 +122,7 @@
122
122
  overflow: hidden;
123
123
  transition: border-radius 0.15s ease-out, background-color 0.15s ease-out;
124
124
  }
125
- .server-sidebar .server-item[data-v-7731f1d8] {
125
+ .server-sidebar .server-item[data-v-77ecb4c2] {
126
126
  position: relative;
127
127
  display: flex;
128
128
  align-items: center;
@@ -130,7 +130,7 @@
130
130
  margin: 0 16px 16px;
131
131
  cursor: pointer;
132
132
  }
133
- .server-sidebar .server-item .server-icon[data-v-7731f1d8] {
133
+ .server-sidebar .server-item .server-icon[data-v-77ecb4c2] {
134
134
  width: 40px;
135
135
  height: 40px;
136
136
  border-radius: 8px;
@@ -141,35 +141,35 @@
141
141
  overflow: hidden;
142
142
  transition: border-radius 0.15s ease-out, background-color 0.15s ease-out;
143
143
  }
144
- .server-sidebar .server-item .server-icon img[data-v-7731f1d8] {
144
+ .server-sidebar .server-item .server-icon img[data-v-77ecb4c2] {
145
145
  width: 100%;
146
146
  height: 100%;
147
147
  -o-object-fit: cover;
148
148
  object-fit: cover;
149
149
  }
150
- .server-sidebar .server-item .server-icon .server-initial[data-v-7731f1d8] {
150
+ .server-sidebar .server-item .server-icon .server-initial[data-v-77ecb4c2] {
151
151
  font-size: 18px;
152
152
  font-weight: 500;
153
153
  color: var(--theme-text);
154
154
  }
155
- .server-sidebar .server-item:hover .server-icon[data-v-7731f1d8], .server-sidebar .server-item.active .server-icon[data-v-7731f1d8] {
155
+ .server-sidebar .server-item:hover .server-icon[data-v-77ecb4c2], .server-sidebar .server-item.active .server-icon[data-v-77ecb4c2] {
156
156
  border-radius: 16px;
157
157
  background-color: var(--theme-form-control-line-active);
158
158
  }
159
- .server-sidebar .server-item:hover .server-icon .server-initial[data-v-7731f1d8], .server-sidebar .server-item.active .server-icon .server-initial[data-v-7731f1d8] {
159
+ .server-sidebar .server-item:hover .server-icon .server-initial[data-v-77ecb4c2], .server-sidebar .server-item.active .server-icon .server-initial[data-v-77ecb4c2] {
160
160
  color: var(--theme-light-text);
161
161
  }
162
- .server-sidebar .server-item .unread-badge[data-v-7731f1d8] {
162
+ .server-sidebar .server-item .unread-badge[data-v-77ecb4c2] {
163
163
  position: absolute;
164
164
  bottom: -4px;
165
165
  right: 4px;
166
166
  }
167
- .server-sidebar .server-item.add-server[data-v-7731f1d8] {
167
+ .server-sidebar .server-item.add-server[data-v-77ecb4c2] {
168
168
  margin-top: 8px;
169
169
  padding-top: 8px;
170
170
  border-top: 2px solid var(--theme-global-bg);
171
171
  }
172
- .server-sidebar .server-item.add-server .add-server-btn[data-v-7731f1d8] {
172
+ .server-sidebar .server-item.add-server .add-server-btn[data-v-77ecb4c2] {
173
173
  width: 48px;
174
174
  height: 48px;
175
175
  border-radius: 50%;
@@ -182,12 +182,12 @@
182
182
  color: var(--theme-success-text);
183
183
  font-size: 20px;
184
184
  }
185
- .server-sidebar .server-item.add-server .add-server-btn[data-v-7731f1d8]:hover {
185
+ .server-sidebar .server-item.add-server .add-server-btn[data-v-77ecb4c2]:hover {
186
186
  border-radius: 16px;
187
187
  background-color: var(--theme-success-text);
188
188
  color: var(--theme-text);
189
189
  }
190
- .channel-sidebar[data-v-7731f1d8] {
190
+ .channel-sidebar[data-v-77ecb4c2] {
191
191
  display: flex;
192
192
  flex-direction: column;
193
193
  width: 294px;
@@ -199,7 +199,7 @@
199
199
  padding-bottom: 60px;
200
200
  position: relative;
201
201
  }
202
- .channel-sidebar .resize-handle[data-v-7731f1d8] {
202
+ .channel-sidebar .resize-handle[data-v-77ecb4c2] {
203
203
  position: absolute;
204
204
  top: 0;
205
205
  right: -3px;
@@ -209,17 +209,17 @@
209
209
  z-index: 20;
210
210
  transition: background-color 0.15s ease;
211
211
  }
212
- .channel-sidebar .resize-handle[data-v-7731f1d8]:hover, .channel-sidebar .resize-handle[data-v-7731f1d8]:active {
212
+ .channel-sidebar .resize-handle[data-v-77ecb4c2]:hover, .channel-sidebar .resize-handle[data-v-77ecb4c2]:active {
213
213
  background-color: var(--theme-form-control-line-active);
214
214
  }
215
- .channel-sidebar .server-header[data-v-7731f1d8] {
215
+ .channel-sidebar .server-header[data-v-77ecb4c2] {
216
216
  display: flex;
217
217
  align-items: center;
218
218
  justify-content: space-between;
219
219
  padding: 22px 20px;
220
220
  border-bottom: 1px solid var(--theme-line);
221
221
  }
222
- .channel-sidebar .server-header .server-name[data-v-7731f1d8] {
222
+ .channel-sidebar .server-header .server-name[data-v-77ecb4c2] {
223
223
  font-size: 15px;
224
224
  font-weight: 600;
225
225
  color: var(--theme-stress-text);
@@ -227,26 +227,26 @@
227
227
  text-overflow: ellipsis;
228
228
  white-space: nowrap;
229
229
  }
230
- .channel-sidebar .server-header .server-setting[data-v-7731f1d8] {
230
+ .channel-sidebar .server-header .server-setting[data-v-77ecb4c2] {
231
231
  color: #b9bbbe;
232
232
  cursor: pointer;
233
233
  font-size: 16px;
234
234
  }
235
- .channel-sidebar .server-header .server-setting[data-v-7731f1d8]:hover {
235
+ .channel-sidebar .server-header .server-setting[data-v-77ecb4c2]:hover {
236
236
  color: #dcddde;
237
237
  }
238
- .channel-sidebar .channel-list[data-v-7731f1d8] {
238
+ .channel-sidebar .channel-list[data-v-77ecb4c2] {
239
239
  flex: 1;
240
240
  overflow-y: auto;
241
241
  }
242
- .channel-sidebar .channel-list[data-v-7731f1d8]::-webkit-scrollbar {
242
+ .channel-sidebar .channel-list[data-v-77ecb4c2]::-webkit-scrollbar {
243
243
  width: 4px;
244
244
  }
245
- .channel-sidebar .channel-list[data-v-7731f1d8]::-webkit-scrollbar-thumb {
245
+ .channel-sidebar .channel-list[data-v-77ecb4c2]::-webkit-scrollbar-thumb {
246
246
  background-color: var(--theme-line);
247
247
  border-radius: 2px;
248
248
  }
249
- .channel-sidebar .channel-item[data-v-7731f1d8] {
249
+ .channel-sidebar .channel-item[data-v-77ecb4c2] {
250
250
  display: flex;
251
251
  align-items: center;
252
252
  padding: 16px 22px;
@@ -255,36 +255,36 @@
255
255
  margin-bottom: 2px;
256
256
  color: var(--theme-icon-fill-weak);
257
257
  }
258
- .channel-sidebar .channel-item[data-v-7731f1d8]:hover {
258
+ .channel-sidebar .channel-item[data-v-77ecb4c2]:hover {
259
259
  background-color: var(--theme-select-bg);
260
260
  color: var(--theme-text);
261
261
  }
262
- .channel-sidebar .channel-item:hover .channel-setting[data-v-7731f1d8] {
262
+ .channel-sidebar .channel-item:hover .channel-setting[data-v-77ecb4c2] {
263
263
  opacity: 1;
264
264
  }
265
- .channel-sidebar .channel-item.active[data-v-7731f1d8] {
265
+ .channel-sidebar .channel-item.active[data-v-77ecb4c2] {
266
266
  background-color: var(--theme-select-bg);
267
267
  color: var(--theme-text);
268
268
  font-weight: 500;
269
269
  font-size: 16px;
270
270
  }
271
- .channel-sidebar .channel-item .channel-icon[data-v-7731f1d8] {
271
+ .channel-sidebar .channel-item .channel-icon[data-v-77ecb4c2] {
272
272
  margin-right: 6px;
273
273
  font-size: 20px;
274
274
  font-weight: 400;
275
275
  color: #8e9297;
276
276
  }
277
- .channel-sidebar .channel-item .channel-name[data-v-7731f1d8] {
277
+ .channel-sidebar .channel-item .channel-name[data-v-77ecb4c2] {
278
278
  flex: 1;
279
279
  overflow: hidden;
280
280
  text-overflow: ellipsis;
281
281
  white-space: nowrap;
282
282
  font-size: 14px;
283
283
  }
284
- .channel-sidebar .channel-item .channel-unread[data-v-7731f1d8] {
284
+ .channel-sidebar .channel-item .channel-unread[data-v-77ecb4c2] {
285
285
  margin-left: 4px;
286
286
  }
287
- .channel-sidebar .channel-item .channel-setting[data-v-7731f1d8] {
287
+ .channel-sidebar .channel-item .channel-setting[data-v-77ecb4c2] {
288
288
  opacity: 0;
289
289
  margin-left: 8px;
290
290
  font-size: 14px;
@@ -293,10 +293,10 @@
293
293
  transition: opacity 0.15s ease, color 0.15s ease;
294
294
  flex-shrink: 0;
295
295
  }
296
- .channel-sidebar .channel-item .channel-setting[data-v-7731f1d8]:hover {
296
+ .channel-sidebar .channel-item .channel-setting[data-v-77ecb4c2]:hover {
297
297
  color: var(--theme-text);
298
298
  }
299
- .channel-sidebar .add-channel-item[data-v-7731f1d8] {
299
+ .channel-sidebar .add-channel-item[data-v-77ecb4c2] {
300
300
  display: flex;
301
301
  align-items: center;
302
302
  padding: 12px 22px;
@@ -305,7 +305,7 @@
305
305
  margin-top: 4px;
306
306
  color: var(--theme-link);
307
307
  }
308
- .channel-sidebar .add-channel-item .channel-icon[data-v-7731f1d8] {
308
+ .channel-sidebar .add-channel-item .channel-icon[data-v-77ecb4c2] {
309
309
  margin-right: 6px;
310
310
  font-size: 16px;
311
311
  color: var(--theme-link);
@@ -314,64 +314,64 @@
314
314
  align-items: center;
315
315
  justify-content: center;
316
316
  }
317
- .channel-sidebar .add-channel-item .channel-name[data-v-7731f1d8] {
317
+ .channel-sidebar .add-channel-item .channel-name[data-v-77ecb4c2] {
318
318
  font-size: 14px;
319
319
  }
320
- [data-v-7731f1d8] .ant-modal .ant-modal-content {
320
+ [data-v-77ecb4c2] .ant-modal .ant-modal-content {
321
321
  background-color: var(--theme-global-bg);
322
322
  border-radius: 8px;
323
323
  }
324
- [data-v-7731f1d8] .ant-modal .ant-modal-header {
324
+ [data-v-77ecb4c2] .ant-modal .ant-modal-header {
325
325
  background-color: var(--theme-global-bg);
326
326
  border-bottom: none;
327
327
  }
328
- [data-v-7731f1d8] .ant-modal .ant-modal-title {
328
+ [data-v-77ecb4c2] .ant-modal .ant-modal-title {
329
329
  color: var(--theme-text);
330
330
  }
331
- [data-v-7731f1d8] .ant-modal .ant-modal-close-x {
331
+ [data-v-77ecb4c2] .ant-modal .ant-modal-close-x {
332
332
  color: #b9bbbe;
333
333
  }
334
- [data-v-7731f1d8] .ant-modal .ant-form-item-label > label {
334
+ [data-v-77ecb4c2] .ant-modal .ant-form-item-label > label {
335
335
  color: #b9bbbe;
336
336
  }
337
- [data-v-7731f1d8] .ant-modal .ant-input {
337
+ [data-v-77ecb4c2] .ant-modal .ant-input {
338
338
  background-color: var(--theme-line);
339
339
  border-color: #040405;
340
340
  color: #dcddde;
341
341
  }
342
- [data-v-7731f1d8] .ant-modal .ant-input::-moz-placeholder {
342
+ [data-v-77ecb4c2] .ant-modal .ant-input::-moz-placeholder {
343
343
  color: #72767d;
344
344
  }
345
- [data-v-7731f1d8] .ant-modal .ant-input:-ms-input-placeholder {
345
+ [data-v-77ecb4c2] .ant-modal .ant-input:-ms-input-placeholder {
346
346
  color: #72767d;
347
347
  }
348
- [data-v-7731f1d8] .ant-modal .ant-input::placeholder {
348
+ [data-v-77ecb4c2] .ant-modal .ant-input::placeholder {
349
349
  color: #72767d;
350
350
  }
351
- [data-v-7731f1d8] .ant-modal .ant-input:hover,[data-v-7731f1d8] .ant-modal .ant-input:focus {
351
+ [data-v-77ecb4c2] .ant-modal .ant-input:hover,[data-v-77ecb4c2] .ant-modal .ant-input:focus {
352
352
  border-color: #5865f2;
353
353
  }
354
- [data-v-7731f1d8] .ant-modal .ant-tabs-tab {
354
+ [data-v-77ecb4c2] .ant-modal .ant-tabs-tab {
355
355
  color: #b9bbbe;
356
356
  }
357
- [data-v-7731f1d8] .ant-modal .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn {
357
+ [data-v-77ecb4c2] .ant-modal .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn {
358
358
  color: var(--theme-text);
359
359
  }
360
- [data-v-7731f1d8] .ant-modal .ant-tabs-ink-bar {
360
+ [data-v-77ecb4c2] .ant-modal .ant-tabs-ink-bar {
361
361
  background-color: #5865f2;
362
362
  }
363
- .footer-container[data-v-7731f1d8] {
363
+ .footer-container[data-v-77ecb4c2] {
364
364
  display: flex;
365
365
  align-items: center;
366
366
  justify-content: space-between;
367
367
  gap: 10px;
368
368
  }
369
- .invite-btn[data-v-7731f1d8] {
369
+ .invite-btn[data-v-77ecb4c2] {
370
370
  cursor: pointer;
371
371
  color: var(--theme-icon-fill-weak);
372
372
  transition: color 0.15s ease;
373
373
  }
374
- .invite-btn[data-v-7731f1d8]:hover {
374
+ .invite-btn[data-v-77ecb4c2]:hover {
375
375
  color: var(--theme-text);
376
376
  }.channel-modal .ant-modal-header {
377
377
  background-color: var(--theme-table-header-bg);
@@ -1,6 +1,6 @@
1
- import { createVNode, defineComponent, ref, computed, onUnmounted, openBlock, createElementBlock, normalizeClass, createElementVNode, unref, Fragment, renderList, withCtx, toDisplayString, createBlock, createCommentVNode, normalizeStyle, withModifiers, createTextVNode } from "vue";
1
+ import { createVNode, defineComponent, ref, computed, watch, onUnmounted, openBlock, createElementBlock, normalizeClass, createElementVNode, unref, Fragment, renderList, withCtx, toDisplayString, createBlock, createCommentVNode, normalizeStyle, withModifiers, createTextVNode } from "vue";
2
2
  import { Form, Tooltip, Badge, Modal, Input, Button, Checkbox, message } from "ant-design-vue";
3
- import { u as useImSdkStore, a as useServerStore, b as useChannelStore, c as useUserStore, _ as _sfc_main$1 } from "./index.vue_vue_type_style_index_0_lang-BMnOivDF.mjs";
3
+ import { u as useImSdkStore, a as useServerStore, b as useChannelStore, c as useUserStore, _ as _sfc_main$1 } from "./index.vue_vue_type_style_index_0_lang-BQnM5kIy.mjs";
4
4
  import { I as IconFont } from "./index-L_drmZir.mjs";
5
5
  import { I as Icon } from "./AntdIcon-DdvEPKFJ.mjs";
6
6
  import { C as CloseOutlined } from "./CloseOutlined-BEcmJaCc.mjs";
@@ -133,6 +133,26 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
133
133
  const inviteModalVisible = ref(false);
134
134
  const channelForm = ref({ channelId: "", name: "", topic: "", viewMode: 0, ext: "" });
135
135
  const savingChannel = ref(false);
136
+ const hasManageChannelPermission = ref(false);
137
+ const checkManageChannelPermission = async () => {
138
+ if (!curServer.value) {
139
+ hasManageChannelPermission.value = false;
140
+ return;
141
+ }
142
+ if (curServer.value.owner === userProfile.value.account) {
143
+ hasManageChannelPermission.value = true;
144
+ return;
145
+ }
146
+ try {
147
+ const result = await serverStore.checkPermissionMessage({
148
+ serverId: curServer.value.serverId,
149
+ auth: "manageChannel"
150
+ });
151
+ hasManageChannelPermission.value = !!result;
152
+ } catch {
153
+ hasManageChannelPermission.value = false;
154
+ }
155
+ };
136
156
  const channelSidebarWidth = ref(CHANNEL_SIDEBAR_DEFAULT_WIDTH);
137
157
  const isResizing = ref(false);
138
158
  const userPanelWidth = computed(() => {
@@ -146,6 +166,9 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
146
166
  const userProfile = computed(() => {
147
167
  return userStore.userProfile;
148
168
  });
169
+ watch(curServer, () => {
170
+ checkManageChannelPermission();
171
+ }, { immediate: true });
149
172
  const inviteLink = computed(() => {
150
173
  if (!curServer.value) return "";
151
174
  const baseUrl = window.location.origin;
@@ -163,9 +186,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
163
186
  const channel = channelList.value.find((c) => c.channelId === channelId);
164
187
  return (channel == null ? void 0 : channel.unreadCount) || 0;
165
188
  };
166
- const handleSelectServer = (server) => {
189
+ const handleSelectServer = async (server) => {
167
190
  if (props.disabled) return;
168
191
  emit("selectServer", server);
192
+ await checkManageChannelPermission();
169
193
  };
170
194
  const handleSelectChannel = (channel) => {
171
195
  if (props.disabled) return;
@@ -401,13 +425,12 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
401
425
  }, [
402
426
  curServer.value ? (openBlock(), createElementBlock("div", _hoisted_9, [
403
427
  createElementVNode("div", _hoisted_10, toDisplayString(curServer.value.name), 1),
404
- userProfile.value.type === 1 ? (openBlock(), createBlock(unref(IconFont), {
405
- key: 0,
428
+ createVNode(unref(IconFont), {
406
429
  type: "gt-a-line-2",
407
430
  size: 20,
408
431
  class: "invite-btn",
409
432
  onClick: handleShowInviteModal
410
- })) : createCommentVNode("", true)
433
+ })
411
434
  ])) : createCommentVNode("", true),
412
435
  createElementVNode("div", _hoisted_11, [
413
436
  (openBlock(true), createElementBlock(Fragment, null, renderList(channelList.value, (channel) => {
@@ -425,14 +448,14 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
425
448
  "overflow-count": 99,
426
449
  class: "channel-unread"
427
450
  }, null, 8, ["count"])) : createCommentVNode("", true),
428
- userProfile.value.type === 1 ? (openBlock(), createBlock(unref(SettingOutlined), {
451
+ hasManageChannelPermission.value ? (openBlock(), createBlock(unref(SettingOutlined), {
429
452
  key: 1,
430
453
  class: "channel-setting",
431
454
  onClick: withModifiers(($event) => handleShowEditChannelModal(channel), ["stop"])
432
455
  }, null, 8, ["onClick"])) : createCommentVNode("", true)
433
456
  ], 10, _hoisted_12);
434
457
  }), 128)),
435
- curServer.value && userProfile.value.type === 1 ? (openBlock(), createElementBlock("div", {
458
+ curServer.value && hasManageChannelPermission.value ? (openBlock(), createElementBlock("div", {
436
459
  key: 0,
437
460
  class: "add-channel-item",
438
461
  onClick: handleShowChannelModal
@@ -657,7 +680,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
657
680
  };
658
681
  }
659
682
  });
660
- const ServerChannelSidebar = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-7731f1d8"]]);
683
+ const ServerChannelSidebar = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-77ecb4c2"]]);
661
684
  export {
662
685
  ServerChannelSidebar as S
663
686
  };
@@ -1,6 +1,6 @@
1
1
  import { defineComponent, ref, watch, onBeforeUnmount, computed, openBlock, createBlock, Teleport, withDirectives, createElementVNode, normalizeStyle, createElementBlock, withModifiers, normalizeClass, toDisplayString, createCommentVNode, Fragment, renderList, createVNode, vShow } from "vue";
2
2
  import { autoUpdate, computePosition, offset, flip, shift } from "@floating-ui/dom";
3
- import { _ as _sfc_main$1 } from "./index.vue_vue_type_style_index_0_lang-BMnOivDF.mjs";
3
+ import { _ as _sfc_main$1 } from "./index.vue_vue_type_style_index_0_lang-BQnM5kIy.mjs";
4
4
  import { _ as _export_sfc } from "./_plugin-vue_export-helper-1tPrXgE0.mjs";
5
5
  const _hoisted_1 = { class: "ait-person-popover-content" };
6
6
  const _hoisted_2 = ["onMousedown"];
@@ -1,6 +1,6 @@
1
1
  import { createVNode, defineComponent, ref, computed, openBlock, createElementBlock, normalizeClass, createElementVNode, createTextVNode, toDisplayString, createCommentVNode, unref, withCtx, createBlock, Fragment, renderList } from "vue";
2
2
  import { Tooltip, Spin } from "ant-design-vue";
3
- import { b as useChannelStore, a as useServerStore, u as useImSdkStore, _ as _sfc_main$1 } from "./index.vue_vue_type_style_index_0_lang-BMnOivDF.mjs";
3
+ import { b as useChannelStore, a as useServerStore, u as useImSdkStore, _ as _sfc_main$1 } from "./index.vue_vue_type_style_index_0_lang-BQnM5kIy.mjs";
4
4
  import { I as IconFont } from "./index-L_drmZir.mjs";
5
5
  import { I as Icon } from "./AntdIcon-DdvEPKFJ.mjs";
6
6
  import { _ as _export_sfc } from "./_plugin-vue_export-helper-1tPrXgE0.mjs";