yx-web-sdk 0.0.4

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 (100) hide show
  1. package/README.md +424 -0
  2. package/dist/AntdIcon-B0sjNvGu.mjs +307 -0
  3. package/dist/CloseOutlined-DDb89ei3.mjs +37 -0
  4. package/dist/_plugin-vue_export-helper-1tPrXgE0.mjs +10 -0
  5. package/dist/ait-person-popover/index.d.ts +3 -0
  6. package/dist/ait-person-popover/index.js +5 -0
  7. package/dist/ait-person-popover/index.vue.d.ts +39 -0
  8. package/dist/chat-card/index.d.ts +3 -0
  9. package/dist/chat-card/index.js +5 -0
  10. package/dist/chat-card/index.vue.d.ts +25 -0
  11. package/dist/chat-content/index.d.ts +3 -0
  12. package/dist/chat-content/index.js +5 -0
  13. package/dist/chat-content/index.vue.d.ts +51 -0
  14. package/dist/chat-page/index.d.ts +3 -0
  15. package/dist/chat-page/index.js +5 -0
  16. package/dist/chat-page/index.vue.d.ts +6 -0
  17. package/dist/chat-room/index.d.ts +3 -0
  18. package/dist/chat-room/index.js +5 -0
  19. package/dist/chat-room/index.vue.d.ts +9 -0
  20. package/dist/common-avatar/index.d.ts +3 -0
  21. package/dist/common-avatar/index.js +5 -0
  22. package/dist/common-avatar/index.vue.d.ts +17 -0
  23. package/dist/components/ait-person-popover/index.d.ts +3 -0
  24. package/dist/components/ait-person-popover/index.vue.d.ts +39 -0
  25. package/dist/components/chat-card/index.d.ts +3 -0
  26. package/dist/components/chat-card/index.vue.d.ts +25 -0
  27. package/dist/components/chat-content/composables/ait-person.d.ts +86 -0
  28. package/dist/components/chat-content/index.d.ts +3 -0
  29. package/dist/components/chat-content/index.vue.d.ts +51 -0
  30. package/dist/components/chat-page/index.d.ts +3 -0
  31. package/dist/components/chat-page/index.vue.d.ts +6 -0
  32. package/dist/components/chat-room/index.d.ts +3 -0
  33. package/dist/components/chat-room/index.vue.d.ts +9 -0
  34. package/dist/components/common-avatar/index.d.ts +3 -0
  35. package/dist/components/common-avatar/index.vue.d.ts +17 -0
  36. package/dist/components/icon-font/index.d.ts +47 -0
  37. package/dist/components/index-entry/index.d.ts +2 -0
  38. package/dist/components/index-entry/index.vue.d.ts +25 -0
  39. package/dist/components/index.d.ts +12 -0
  40. package/dist/components/list.d.ts +2 -0
  41. package/dist/components/members-sidebar/index.d.ts +3 -0
  42. package/dist/components/members-sidebar/index.vue.d.ts +4 -0
  43. package/dist/components/notice-box/index.d.ts +3 -0
  44. package/dist/components/notice-box/index.vue.d.ts +13 -0
  45. package/dist/components/server-channel-sidebar/index.d.ts +3 -0
  46. package/dist/components/server-channel-sidebar/index.vue.d.ts +18 -0
  47. package/dist/global.css +39 -0
  48. package/dist/icon-font/index.d.ts +47 -0
  49. package/dist/icon-font/index.js +7 -0
  50. package/dist/index/style.css +199 -0
  51. package/dist/index/style2.css +175 -0
  52. package/dist/index/style3.css +36 -0
  53. package/dist/index/style4.css +168 -0
  54. package/dist/index/style5.css +147 -0
  55. package/dist/index/style6.css +43 -0
  56. package/dist/index/style7.css +491 -0
  57. package/dist/index/style8.css +19 -0
  58. package/dist/index-3sSWCzxu.mjs +225 -0
  59. package/dist/index-4m4OVlx8.mjs +611 -0
  60. package/dist/index-CFI0URc5.mjs +135 -0
  61. package/dist/index-Dg8Q3cli.mjs +1092 -0
  62. package/dist/index-entry/index.d.ts +2 -0
  63. package/dist/index-entry/index.js +271 -0
  64. package/dist/index-entry/index.vue.d.ts +25 -0
  65. package/dist/index-entry/style.css +51 -0
  66. package/dist/index.d.ts +8 -0
  67. package/dist/index.vue_vue_type_script_setup_true_lang-DkMXpHkt.mjs +158 -0
  68. package/dist/index.vue_vue_type_style_index_0_lang-CfLKcYM9.mjs +102 -0
  69. package/dist/index.vue_vue_type_style_index_0_lang-CibeOmhP.mjs +407 -0
  70. package/dist/index.vue_vue_type_style_index_0_lang-CmfE8EVU.mjs +288 -0
  71. package/dist/index.vue_vue_type_style_index_0_lang-XiDTgYoZ.mjs +1012 -0
  72. package/dist/index.vue_vue_type_style_index_0_lang-Y-vyKHWz.mjs +36985 -0
  73. package/dist/members-sidebar/index.d.ts +3 -0
  74. package/dist/members-sidebar/index.js +5 -0
  75. package/dist/members-sidebar/index.vue.d.ts +4 -0
  76. package/dist/notice-box/index.d.ts +3 -0
  77. package/dist/notice-box/index.js +5 -0
  78. package/dist/notice-box/index.vue.d.ts +13 -0
  79. package/dist/plugin/index.d.ts +22 -0
  80. package/dist/resolver/index.d.ts +22 -0
  81. package/dist/resolver/index.es.js +36 -0
  82. package/dist/resolver/index.umd.js +40 -0
  83. package/dist/server-channel-sidebar/index.d.ts +3 -0
  84. package/dist/server-channel-sidebar/index.js +5 -0
  85. package/dist/server-channel-sidebar/index.vue.d.ts +18 -0
  86. package/dist/stores/channel.d.ts +114 -0
  87. package/dist/stores/global.d.ts +15 -0
  88. package/dist/stores/index.d.ts +7 -0
  89. package/dist/stores/qchat.d.ts +397 -0
  90. package/dist/stores/sdk.d.ts +48 -0
  91. package/dist/stores/server.d.ts +58 -0
  92. package/dist/stores/user.d.ts +9 -0
  93. package/dist/style.css +1359 -0
  94. package/dist/types/missing.d.ts +14 -0
  95. package/dist/utils/events.d.ts +7 -0
  96. package/dist/utils/index.d.ts +26 -0
  97. package/dist/utils/storage.d.ts +15 -0
  98. package/dist/yx-web-sdk.es.js +41593 -0
  99. package/dist/yx-web-sdk.umd.js +41590 -0
  100. package/package.json +191 -0
@@ -0,0 +1,288 @@
1
+ import { defineComponent, ref, h, watch, computed, openBlock, createElementBlock, createElementVNode, toDisplayString, createCommentVNode, createVNode } from "vue";
2
+ import { List, Typography } from "ant-design-vue";
3
+ import { _ as _sfc_main$1 } from "./index.vue_vue_type_script_setup_true_lang-DkMXpHkt.mjs";
4
+ import { a as useServerStore, b as useChannelStore } from "./index.vue_vue_type_style_index_0_lang-Y-vyKHWz.mjs";
5
+ import "./index-Dg8Q3cli.mjs";
6
+ import { useLocalStorage } from "@vueuse/core";
7
+ import { L as LoadingOutlined } from "./index.vue_vue_type_style_index_0_lang-CibeOmhP.mjs";
8
+ const _hoisted_1 = { class: "yx-chat-page-container" };
9
+ const _hoisted_2 = { class: "header-wrap" };
10
+ const _hoisted_3 = { class: "left" };
11
+ const _hoisted_4 = { class: "name" };
12
+ const _hoisted_5 = { class: "title" };
13
+ const _hoisted_6 = { class: "main" };
14
+ const _hoisted_7 = {
15
+ key: 0,
16
+ class: "members-wrap"
17
+ };
18
+ const _hoisted_8 = ["onClick"];
19
+ const _hoisted_9 = { class: "avatar" };
20
+ const _hoisted_10 = { class: "nick-name" };
21
+ const _hoisted_11 = {
22
+ key: 0,
23
+ class: "owner"
24
+ };
25
+ const _hoisted_12 = { class: "body-wrap" };
26
+ const _hoisted_13 = {
27
+ key: 0,
28
+ class: "name-wrap"
29
+ };
30
+ const _hoisted_14 = { class: "accid-wrap" };
31
+ const _hoisted_15 = { class: "roles-wrap" };
32
+ const _sfc_main = /* @__PURE__ */ defineComponent({
33
+ ...{
34
+ name: "ChatPage"
35
+ },
36
+ __name: "index",
37
+ props: {
38
+ myAccid: {},
39
+ myAvatar: {}
40
+ },
41
+ setup(__props) {
42
+ const serverStore = useServerStore();
43
+ const channelStore = useChannelStore();
44
+ const ListItem = List.Item;
45
+ const Text = Typography.Text;
46
+ const Paragraph = Typography.Paragraph;
47
+ const props = __props;
48
+ const contentRef = ref();
49
+ const membersVisibleRef = ref(false);
50
+ const loadingMoreRef = ref(false);
51
+ const channelNoticeVisible = ref(false);
52
+ const channelNoticeStorage = useLocalStorage("im-n-record", {});
53
+ const indicator = h(LoadingOutlined, {
54
+ style: {
55
+ fontSize: "20px",
56
+ marginBottom: "10px"
57
+ },
58
+ spin: true
59
+ });
60
+ watch(
61
+ () => serverStore.curServer,
62
+ (server) => {
63
+ var _a;
64
+ console.log("server", server);
65
+ if (server == null ? void 0 : server.serverId) {
66
+ (_a = serverStore.getSeverMembers) == null ? void 0 : _a.call(serverStore, {
67
+ serverId: server.serverId,
68
+ timetag: 0
69
+ });
70
+ }
71
+ },
72
+ {
73
+ immediate: true
74
+ }
75
+ );
76
+ watch(
77
+ [() => serverStore.curMember, () => serverStore.curServer],
78
+ ([member, server]) => {
79
+ if ((member == null ? void 0 : member.accid) && (server == null ? void 0 : server.serverId)) {
80
+ serverStore.getCurMemberRoles({
81
+ serverId: server.serverId,
82
+ accid: member.accid,
83
+ timetag: 0,
84
+ limit: 100
85
+ });
86
+ }
87
+ },
88
+ {
89
+ immediate: true
90
+ }
91
+ );
92
+ watch(
93
+ () => serverStore.serverMembers,
94
+ () => {
95
+ loadingMoreRef.value = false;
96
+ },
97
+ {
98
+ immediate: true
99
+ }
100
+ );
101
+ watch(
102
+ () => channelStore.currentChannel,
103
+ async (value) => {
104
+ if (value == null ? void 0 : value.ext) {
105
+ const text = combinationKey(value.ext);
106
+ const key = await getUniqueKey(text);
107
+ if (channelNoticeStorage.value[key]) {
108
+ channelNoticeVisible.value = false;
109
+ } else {
110
+ channelNoticeVisible.value = true;
111
+ }
112
+ }
113
+ },
114
+ { flush: "post" }
115
+ );
116
+ const curChannel = computed(() => channelStore.currentChannel);
117
+ const serverMembers = computed(() => {
118
+ var _a;
119
+ return ((_a = channelStore.ChannelMembers) == null ? void 0 : _a.datas) || [];
120
+ });
121
+ const curMember = computed(() => serverStore.curMember);
122
+ const curMemberRoles = computed(() => serverStore.curMemberRoles || []);
123
+ const visible = computed(() => !!serverStore.curMember);
124
+ const membersVisible = computed(() => !!membersVisibleRef.value);
125
+ const loadingMore = computed(() => !!loadingMoreRef.value);
126
+ const handleSetCurMember = (member) => {
127
+ serverStore.setCurMember(member);
128
+ };
129
+ const handleUnSetCurMember = () => {
130
+ serverStore.setCurMember(null);
131
+ };
132
+ const handleScroll = (e) => {
133
+ var _a, _b, _c, _d, _e, _f, _g;
134
+ if (loadingMoreRef.value || !((_b = (_a = serverStore.serverMembers) == null ? void 0 : _a.listQueryTag) == null ? void 0 : _b.hasMore)) {
135
+ return;
136
+ }
137
+ const target = e.target;
138
+ const hiddenHeight = (((_d = (_c = serverStore.serverMembers) == null ? void 0 : _c.datas) == null ? void 0 : _d.length) || 0) * 48 - target.clientHeight - target.scrollTop;
139
+ if (hiddenHeight >= 100) {
140
+ return;
141
+ }
142
+ loadingMoreRef.value = true;
143
+ serverStore.appendSeverMembers({
144
+ serverId: ((_e = serverStore.curServer) == null ? void 0 : _e.serverId) || "",
145
+ timetag: ((_g = (_f = serverStore.serverMembers) == null ? void 0 : _f.listQueryTag) == null ? void 0 : _g.nextTimetag) || 0
146
+ });
147
+ };
148
+ const combinationKey = (text) => {
149
+ var _a;
150
+ return text || "" + ((_a = curChannel.value) == null ? void 0 : _a.channelId) + props.myAccid || "";
151
+ };
152
+ async function getUniqueKey(str) {
153
+ const encoder = new TextEncoder();
154
+ const data = encoder.encode(str);
155
+ const hashBuffer = await crypto.subtle.digest("SHA-256", data);
156
+ const hashArray = Array.from(new Uint8Array(hashBuffer));
157
+ const uniqueKey = hashArray.map((b) => b.toString(16).padStart(2, "0")).join("");
158
+ return uniqueKey;
159
+ }
160
+ return (_ctx, _cache) => {
161
+ var _a, _b;
162
+ return openBlock(), createElementBlock("div", _hoisted_1, [
163
+ createElementVNode("div", _hoisted_2, [
164
+ createElementVNode("div", _hoisted_3, [
165
+ _cache[1] || (_cache[1] = createElementVNode("span", { class: "symbol" }, "#", -1)),
166
+ createElementVNode("span", _hoisted_4, toDisplayString((_a = curChannel.value) == null ? void 0 : _a.name), 1),
167
+ createElementVNode("span", _hoisted_5, toDisplayString((_b = curChannel.value) == null ? void 0 : _b.topic), 1)
168
+ ]),
169
+ createCommentVNode("", true)
170
+ ]),
171
+ createElementVNode("div", {
172
+ ref_key: "contentRef",
173
+ ref: contentRef,
174
+ class: "content-wrap"
175
+ }, [
176
+ createElementVNode("div", _hoisted_6, [
177
+ createVNode(_sfc_main$1, {
178
+ "my-accid": props.myAccid,
179
+ "my-avatar": props.myAvatar
180
+ }, null, 8, ["my-accid", "my-avatar"])
181
+ ]),
182
+ membersVisible.value && false ? (openBlock(), createElementBlock("div", _hoisted_7, [
183
+ createElementVNode("div", {
184
+ class: _normalizeClass(["mask", { expand: visible.value }]),
185
+ onClick: _cache[0] || (_cache[0] = ($event) => handleUnSetCurMember())
186
+ }, [
187
+ createElementVNode("div", {
188
+ class: "mask-content",
189
+ onScroll: handleScroll
190
+ }, [
191
+ createVNode(_unref(List), {
192
+ "item-layout": "horizontal",
193
+ "data-source": serverMembers.value,
194
+ split: false
195
+ }, {
196
+ loadMore: _withCtx(() => [
197
+ loadingMore.value ? (openBlock(), _createBlock(_unref(Spin), {
198
+ key: 0,
199
+ indicator: _unref(indicator)
200
+ }, null, 8, ["indicator"])) : createCommentVNode("", true)
201
+ ]),
202
+ renderItem: _withCtx(({ item }) => [
203
+ createVNode(_unref(ListItem), null, {
204
+ default: _withCtx(() => [
205
+ (openBlock(), createElementBlock("div", {
206
+ key: item.accid,
207
+ class: _normalizeClass(["member-item", { selected: item.accid === ((_a2 = curMember.value) == null ? void 0 : _a2.accid) }]),
208
+ onClick: [
209
+ ($event) => handleSetCurMember(item),
210
+ _withModifiers(($event) => true, ["stop"])
211
+ ]
212
+ }, [
213
+ createElementVNode("div", _hoisted_9, [
214
+ createVNode(CommonAvatar, {
215
+ avatar: item.avatar,
216
+ nick: item.nick,
217
+ accid: item.accid,
218
+ width: 36,
219
+ border: 0
220
+ }, null, 8, ["avatar", "nick", "accid"])
221
+ ]),
222
+ createElementVNode("div", _hoisted_10, [
223
+ createVNode(_unref(Text), {
224
+ style: { maxWidth: "120px" },
225
+ content: item.nick || item.accid,
226
+ ellipsis: { tooltip: item.nick || item.accid }
227
+ }, null, 8, ["content", "ellipsis"])
228
+ ]),
229
+ !!item.type ? (openBlock(), createElementBlock("div", _hoisted_11, [
230
+ createVNode(_unref(IconFont), { type: "icon-chuangjianzhe" })
231
+ ])) : createCommentVNode("", true)
232
+ ], 10, _hoisted_8))
233
+ ]),
234
+ _: 2
235
+ }, 1024)
236
+ ]),
237
+ _: 1
238
+ }, 8, ["data-source"]),
239
+ curMember.value ? (openBlock(), createElementBlock("div", {
240
+ key: 0,
241
+ class: "member-detail-wrap",
242
+ onClick: _withModifiers(($event) => true, ["stop"])
243
+ }, [
244
+ createElementVNode("div", _hoisted_12, [
245
+ createVNode(CommonAvatar, {
246
+ avatar: (_c = curMember.value) == null ? void 0 : _c.avatar,
247
+ nick: (_d = curMember.value) == null ? void 0 : _d.nick,
248
+ accid: (_e = curMember.value) == null ? void 0 : _e.accid,
249
+ width: 70,
250
+ border: 4
251
+ }, null, 8, ["avatar", "nick", "accid"]),
252
+ ((_f = curMember.value) == null ? void 0 : _f.nick) ? (openBlock(), createElementBlock("div", _hoisted_13, [
253
+ createVNode(_unref(Paragraph), {
254
+ style: { maxWidth: "260px", color: "#fff" },
255
+ content: (_g = curMember.value) == null ? void 0 : _g.nick,
256
+ ellipsis: { tooltip: (_h = curMember.value) == null ? void 0 : _h.nick, rows: 2 }
257
+ }, null, 8, ["content", "ellipsis"])
258
+ ])) : createCommentVNode("", true),
259
+ createElementVNode("div", _hoisted_14, [
260
+ createVNode(_unref(Text), {
261
+ style: { maxWidth: "260px", color: "#a3a4a9" },
262
+ content: "#" + ((_i = curMember.value) == null ? void 0 : _i.accid),
263
+ ellipsis: { tooltip: "#" + ((_j = curMember.value) == null ? void 0 : _j.accid) }
264
+ }, null, 8, ["content", "ellipsis"])
265
+ ]),
266
+ _cache[2] || (_cache[2] = createElementVNode("div", { class: "divider" }, null, -1)),
267
+ _cache[3] || (_cache[3] = createElementVNode("div", { class: "roles-title" }, "身份组", -1)),
268
+ createElementVNode("div", _hoisted_15, [
269
+ (openBlock(true), createElementBlock(_Fragment, null, _renderList(curMemberRoles.value || [], (role) => {
270
+ return openBlock(), createElementBlock("div", {
271
+ key: role.roleId,
272
+ class: "role-item"
273
+ }, toDisplayString(role.name), 1);
274
+ }), 128))
275
+ ])
276
+ ])
277
+ ])) : createCommentVNode("", true)
278
+ ], 32)
279
+ ], 2)
280
+ ])) : createCommentVNode("", true)
281
+ ], 512)
282
+ ]);
283
+ };
284
+ }
285
+ });
286
+ export {
287
+ _sfc_main as _
288
+ };