@linktr.ee/messaging-react 2.0.0 → 2.0.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.
- package/dist/{Card-BHknCeHw.js → Card-BKP9ml9O.js} +2 -2
- package/dist/{Card-BHknCeHw.js.map → Card-BKP9ml9O.js.map} +1 -1
- package/dist/{Card-DT7_ms2p.js → Card-Bk_4lVzP.js} +2 -2
- package/dist/{Card-DT7_ms2p.js.map → Card-Bk_4lVzP.js.map} +1 -1
- package/dist/assets/index.css +1 -1
- package/dist/{index-Brz9orsI.js → index-Bex7eg3v.js} +760 -721
- package/dist/index-Bex7eg3v.js.map +1 -0
- package/dist/index.js +1 -1
- package/package.json +1 -1
- package/src/components/ChannelView.test.tsx +11 -0
- package/src/components/ChannelView.tsx +35 -32
- package/src/components/CustomTypingIndicator/CustomTypingIndicator.stories.tsx +57 -17
- package/src/components/CustomTypingIndicator/CustomTypingIndicator.test.tsx +187 -0
- package/src/components/CustomTypingIndicator/DmAgentContext.ts +3 -0
- package/src/components/CustomTypingIndicator/index.tsx +101 -37
- package/src/styles.css +7 -0
- package/dist/index-Brz9orsI.js.map +0 -1
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { jsx as t, jsxs as d, Fragment as de } from "react/jsx-runtime";
|
|
2
2
|
import D from "classnames";
|
|
3
|
-
import B, { createContext as
|
|
4
|
-
import { StreamChatService as
|
|
5
|
-
import { Chat as
|
|
6
|
-
import { StarIcon as Me, GiftIcon as
|
|
7
|
-
import { LinkPreviewsManager as
|
|
8
|
-
const
|
|
3
|
+
import B, { createContext as Ae, useContext as Fe, useCallback as G, useState as O, useRef as J, useEffect as q, useMemo as pe, Suspense as pt } from "react";
|
|
4
|
+
import { StreamChatService as $t } from "@linktr.ee/messaging-core";
|
|
5
|
+
import { Chat as jt, ChannelList as Gt, DateSeparator as Vt, useChannelStateContext as oe, useChatContext as Oe, areMessageUIPropsEqual as Ht, useMessageReminder as Yt, useComponentContext as xt, Attachment as qt, EditMessageModal as Wt, MessageBlocked as Xt, MessageBouncePrompt as Zt, MessageDeleted as Jt, MessageIsThreadReplyInChannelButtonIndicator as Kt, MessageRepliesCountButton as Qt, ReminderNotification as es, StreamedMessageText as ts, messageHasAttachments as ss, messageHasReactions as ns, isDateSeparatorMessage as as, isMessageBlocked as rs, isMessageBounced as is, MessageBounceModal as os, MessageText as at, Poll as ls, MessageErrorIcon as cs, useMessageContext as vt, useMessageComposer as ds, useStateStore as us, MessageInput as ms, useMessageInputContext as hs, useMessageComposerHasSendableData as fs, SimpleAttachmentSelector as gs, QuotedMessagePreview as bs, AttachmentPreviewList as ps, TextareaComposer as xs, MessageTimestamp as Ce, AIStates as Ee, useTypingContext as vs, useAIState as ws, Channel as ys, WithComponents as _s, Window as Ns, MessageList as Cs } from "stream-chat-react";
|
|
6
|
+
import { StarIcon as Me, GiftIcon as Es, XIcon as wt, SpinnerGapIcon as Se, SignOutIcon as Ss, ProhibitInsetIcon as rt, FlagIcon as Is, FileIcon as yt, ImageIcon as ks, SpeakerHighIcon as Ts, VideoCameraIcon as Ms, FileMdIcon as Ds, FileTextIcon as Rs, FileZipIcon as Ls, FilePptIcon as As, FileCsvIcon as Fs, FileXlsIcon as Os, FileDocIcon as Ps, FilePdfIcon as zs, CircleNotchIcon as _t, PlayIcon as it, PauseIcon as Us, LinkIcon as Bs, DownloadSimpleIcon as $s, ThumbsUpIcon as js, ThumbsDownIcon as Gs, ArrowUpIcon as Vs, SparkleIcon as De, ProhibitIcon as Hs, ArrowLeftIcon as ot, CaretRightIcon as lt, DotsThreeIcon as ct } from "@phosphor-icons/react";
|
|
7
|
+
import { LinkPreviewsManager as dt } from "stream-chat";
|
|
8
|
+
const Nt = Ae({
|
|
9
9
|
service: null,
|
|
10
10
|
client: null,
|
|
11
11
|
isConnected: !1,
|
|
@@ -15,7 +15,7 @@ const yt = ht({
|
|
|
15
15
|
refreshConnection: async () => {
|
|
16
16
|
},
|
|
17
17
|
debug: !1
|
|
18
|
-
}),
|
|
18
|
+
}), Pe = () => Fe(Nt), wa = ({
|
|
19
19
|
children: e,
|
|
20
20
|
user: s,
|
|
21
21
|
serviceConfig: n,
|
|
@@ -24,8 +24,8 @@ const yt = ht({
|
|
|
24
24
|
debug: l = !1
|
|
25
25
|
}) => {
|
|
26
26
|
const i = G(
|
|
27
|
-
(k, ...
|
|
28
|
-
l && console.log(`🔥 [MessagingProvider] ${k}`, ...
|
|
27
|
+
(k, ...M) => {
|
|
28
|
+
l && console.log(`🔥 [MessagingProvider] ${k}`, ...M);
|
|
29
29
|
},
|
|
30
30
|
[l]
|
|
31
31
|
);
|
|
@@ -35,7 +35,7 @@ const yt = ht({
|
|
|
35
35
|
serviceConfig: !!n,
|
|
36
36
|
capabilities: Object.keys(o)
|
|
37
37
|
});
|
|
38
|
-
const [c, f] = O(null), [
|
|
38
|
+
const [c, f] = O(null), [g, y] = O(null), [m, h] = O(!1), [r, b] = O(!1), [w, x] = O(null), N = J(!1), p = J({
|
|
39
39
|
userId: s == null ? void 0 : s.id,
|
|
40
40
|
apiKey: a,
|
|
41
41
|
serviceConfig: n,
|
|
@@ -45,12 +45,12 @@ const yt = ht({
|
|
|
45
45
|
renderCount: S.current,
|
|
46
46
|
currentProps: { userId: s == null ? void 0 : s.id, apiKey: (a == null ? void 0 : a.substring(0, 8)) + "..." },
|
|
47
47
|
propChanges: {
|
|
48
|
-
userChanged:
|
|
49
|
-
apiKeyChanged:
|
|
50
|
-
serviceConfigChanged:
|
|
51
|
-
capabilitiesChanged:
|
|
48
|
+
userChanged: p.current.userId !== (s == null ? void 0 : s.id),
|
|
49
|
+
apiKeyChanged: p.current.apiKey !== a,
|
|
50
|
+
serviceConfigChanged: p.current.serviceConfig !== n,
|
|
51
|
+
capabilitiesChanged: p.current.capabilities !== o
|
|
52
52
|
}
|
|
53
|
-
}),
|
|
53
|
+
}), p.current = {
|
|
54
54
|
userId: s == null ? void 0 : s.id,
|
|
55
55
|
apiKey: a,
|
|
56
56
|
serviceConfig: n,
|
|
@@ -64,8 +64,8 @@ const yt = ht({
|
|
|
64
64
|
dependencies: {
|
|
65
65
|
apiKey: (a == null ? void 0 : a.substring(0, 8)) + "...",
|
|
66
66
|
serviceConfigRef: n,
|
|
67
|
-
serviceConfigStable:
|
|
68
|
-
apiKeyStable:
|
|
67
|
+
serviceConfigStable: p.current.serviceConfig === n,
|
|
68
|
+
apiKeyStable: p.current.apiKey === a
|
|
69
69
|
}
|
|
70
70
|
}), !a || !n) {
|
|
71
71
|
i("⚠️ SERVICE INIT SKIPPED", {
|
|
@@ -77,32 +77,32 @@ const yt = ht({
|
|
|
77
77
|
i("🚀 CREATING NEW SERVICE", {
|
|
78
78
|
renderCount: k,
|
|
79
79
|
apiKey: (a == null ? void 0 : a.substring(0, 8)) + "...",
|
|
80
|
-
serviceConfigChanged:
|
|
80
|
+
serviceConfigChanged: p.current.serviceConfig !== n
|
|
81
81
|
});
|
|
82
|
-
const
|
|
82
|
+
const M = new $t({
|
|
83
83
|
...n,
|
|
84
84
|
apiKey: a,
|
|
85
85
|
debug: l
|
|
86
86
|
});
|
|
87
|
-
return f(
|
|
87
|
+
return f(M), i("✅ SERVICE SET", {
|
|
88
88
|
renderCount: k,
|
|
89
|
-
serviceInstance: !!
|
|
89
|
+
serviceInstance: !!M
|
|
90
90
|
}), () => {
|
|
91
91
|
i("🧹 SERVICE CLEANUP", {
|
|
92
92
|
renderCount: k,
|
|
93
93
|
reason: "Effect cleanup"
|
|
94
|
-
}),
|
|
94
|
+
}), M.disconnectUser().catch(console.error);
|
|
95
95
|
};
|
|
96
96
|
}, [a, n, l, i]);
|
|
97
97
|
const I = J(null);
|
|
98
98
|
q(() => {
|
|
99
|
-
var
|
|
99
|
+
var M, j;
|
|
100
100
|
if (i("🔗 USER CONNECTION EFFECT TRIGGERED", {
|
|
101
101
|
hasService: !!c,
|
|
102
102
|
hasUser: !!s,
|
|
103
103
|
userId: s == null ? void 0 : s.id,
|
|
104
104
|
isConnecting: N.current,
|
|
105
|
-
isConnected:
|
|
105
|
+
isConnected: m,
|
|
106
106
|
dependencies: { service: !!c, userId: s == null ? void 0 : s.id }
|
|
107
107
|
}), !c || !s) {
|
|
108
108
|
i("⚠️ USER CONNECTION SKIPPED", "Missing service or user");
|
|
@@ -112,7 +112,7 @@ const yt = ht({
|
|
|
112
112
|
i("⚠️ USER CONNECTION SKIPPED", "Already connecting");
|
|
113
113
|
return;
|
|
114
114
|
}
|
|
115
|
-
if (((
|
|
115
|
+
if (((M = I.current) == null ? void 0 : M.serviceId) === c && ((j = I.current) == null ? void 0 : j.userId) === s.id) {
|
|
116
116
|
i(
|
|
117
117
|
"⚠️ USER CONNECTION SKIPPED",
|
|
118
118
|
"Already connected this user with this service"
|
|
@@ -120,40 +120,40 @@ const yt = ht({
|
|
|
120
120
|
return;
|
|
121
121
|
}
|
|
122
122
|
(async () => {
|
|
123
|
-
i("🚀 STARTING USER CONNECTION", { userId: s.id }), N.current = !0,
|
|
123
|
+
i("🚀 STARTING USER CONNECTION", { userId: s.id }), N.current = !0, b(!0), x(null);
|
|
124
124
|
try {
|
|
125
125
|
i("📞 CALLING SERVICE.CONNECTUSER", { userId: s.id });
|
|
126
126
|
const _ = await c.connectUser(s);
|
|
127
|
-
|
|
127
|
+
y(_), h(!0), I.current = { serviceId: c, userId: s.id }, i("✅ USER CONNECTION SUCCESS", {
|
|
128
128
|
userId: s.id,
|
|
129
129
|
clientId: _.userID
|
|
130
130
|
});
|
|
131
131
|
} catch (_) {
|
|
132
132
|
const L = _ instanceof Error ? _.message : "Connection failed";
|
|
133
|
-
|
|
133
|
+
x(L), i("❌ USER CONNECTION ERROR", {
|
|
134
134
|
userId: s.id,
|
|
135
135
|
error: L
|
|
136
136
|
});
|
|
137
137
|
} finally {
|
|
138
|
-
|
|
138
|
+
b(!1), N.current = !1, i("🔄 USER CONNECTION FINISHED", {
|
|
139
139
|
userId: s.id,
|
|
140
|
-
isConnected:
|
|
140
|
+
isConnected: m
|
|
141
141
|
});
|
|
142
142
|
}
|
|
143
143
|
})();
|
|
144
|
-
}, [c, s, i,
|
|
144
|
+
}, [c, s, i, m]), q(() => (i("🔌 CLEANUP EFFECT REGISTERED", {
|
|
145
145
|
hasService: !!c,
|
|
146
|
-
isConnected:
|
|
146
|
+
isConnected: m
|
|
147
147
|
}), () => {
|
|
148
|
-
c &&
|
|
148
|
+
c && m ? (i(
|
|
149
149
|
"🧹 CLEANUP EFFECT TRIGGERED",
|
|
150
150
|
"Cleaning up connection on unmount"
|
|
151
151
|
), I.current = null, c.disconnectUser().catch(console.error)) : i("🔇 CLEANUP EFFECT SKIPPED", {
|
|
152
152
|
hasService: !!c,
|
|
153
|
-
isConnected:
|
|
153
|
+
isConnected: m
|
|
154
154
|
});
|
|
155
|
-
}), [c,
|
|
156
|
-
const
|
|
155
|
+
}), [c, m, i]);
|
|
156
|
+
const T = G(async () => {
|
|
157
157
|
if (i("🔄 REFRESH CONNECTION CALLED", {
|
|
158
158
|
hasService: !!c,
|
|
159
159
|
hasUser: !!s
|
|
@@ -161,76 +161,76 @@ const yt = ht({
|
|
|
161
161
|
i("⚠️ REFRESH CONNECTION SKIPPED", "Missing service or user");
|
|
162
162
|
return;
|
|
163
163
|
}
|
|
164
|
-
i("🚀 STARTING CONNECTION REFRESH", { userId: s.id }),
|
|
164
|
+
i("🚀 STARTING CONNECTION REFRESH", { userId: s.id }), b(!0);
|
|
165
165
|
try {
|
|
166
166
|
i("🔌 DISCONNECTING FOR REFRESH"), await c.disconnectUser(), i("📞 RECONNECTING FOR REFRESH");
|
|
167
167
|
const k = await c.connectUser(s);
|
|
168
|
-
|
|
168
|
+
y(k), h(!0), x(null), i("✅ CONNECTION REFRESH SUCCESS", { userId: s.id });
|
|
169
169
|
} catch (k) {
|
|
170
|
-
const
|
|
171
|
-
|
|
170
|
+
const M = k instanceof Error ? k.message : "Refresh failed";
|
|
171
|
+
x(M), i("❌ CONNECTION REFRESH ERROR", {
|
|
172
172
|
userId: s.id,
|
|
173
|
-
error:
|
|
173
|
+
error: M
|
|
174
174
|
});
|
|
175
175
|
} finally {
|
|
176
|
-
|
|
176
|
+
b(!1), i("🔄 CONNECTION REFRESH FINISHED", { userId: s.id });
|
|
177
177
|
}
|
|
178
178
|
}, [c, s, i]), $ = B.useMemo(() => (i("💫 CONTEXT VALUE MEMOIZATION", {
|
|
179
179
|
hasService: !!c,
|
|
180
|
-
hasClient: !!
|
|
181
|
-
isConnected:
|
|
180
|
+
hasClient: !!g,
|
|
181
|
+
isConnected: m,
|
|
182
182
|
isLoading: r,
|
|
183
|
-
hasError: !!
|
|
183
|
+
hasError: !!w,
|
|
184
184
|
capabilitiesKeys: Object.keys(o)
|
|
185
185
|
}), {
|
|
186
186
|
service: c,
|
|
187
|
-
client:
|
|
188
|
-
isConnected:
|
|
187
|
+
client: g,
|
|
188
|
+
isConnected: m,
|
|
189
189
|
isLoading: r,
|
|
190
|
-
error:
|
|
190
|
+
error: w,
|
|
191
191
|
capabilities: o,
|
|
192
|
-
refreshConnection:
|
|
192
|
+
refreshConnection: T,
|
|
193
193
|
debug: l
|
|
194
194
|
}), [
|
|
195
195
|
c,
|
|
196
|
-
|
|
197
|
-
|
|
196
|
+
g,
|
|
197
|
+
m,
|
|
198
198
|
r,
|
|
199
|
-
|
|
199
|
+
w,
|
|
200
200
|
o,
|
|
201
|
-
|
|
201
|
+
T,
|
|
202
202
|
l,
|
|
203
203
|
i
|
|
204
204
|
]);
|
|
205
205
|
return i("🔄 RENDER END", {
|
|
206
206
|
renderCount: S.current,
|
|
207
|
-
willRenderChat: !!(
|
|
207
|
+
willRenderChat: !!(g && m),
|
|
208
208
|
contextValueReady: !!$
|
|
209
|
-
}), /* @__PURE__ */ t(
|
|
210
|
-
|
|
209
|
+
}), /* @__PURE__ */ t(Nt.Provider, { value: $, children: g && m ? /* @__PURE__ */ t(
|
|
210
|
+
jt,
|
|
211
211
|
{
|
|
212
|
-
client:
|
|
212
|
+
client: g,
|
|
213
213
|
customClasses: {
|
|
214
214
|
channelList: "str-chat__channel-list str-chat__channel-list-react bg-transparent lg:border-r-2 border-r-0 border-[#0000000A]"
|
|
215
215
|
},
|
|
216
216
|
children: e
|
|
217
217
|
}
|
|
218
218
|
) : e });
|
|
219
|
-
},
|
|
220
|
-
function
|
|
219
|
+
}, Ys = () => Pe();
|
|
220
|
+
function qs(e) {
|
|
221
221
|
const s = e.state.pending_messages;
|
|
222
222
|
if (s != null && s.length)
|
|
223
223
|
for (const n of s)
|
|
224
224
|
e.state.addMessageSorted(n.message);
|
|
225
225
|
}
|
|
226
|
-
const
|
|
226
|
+
const Ct = B.createContext({
|
|
227
227
|
selectedChannel: void 0,
|
|
228
228
|
onChannelSelect: () => {
|
|
229
229
|
},
|
|
230
230
|
debug: !1,
|
|
231
231
|
renderMessagePreview: void 0,
|
|
232
232
|
viewerLanguage: void 0
|
|
233
|
-
}),
|
|
233
|
+
}), Ws = Ct.Provider, Xs = () => B.useContext(Ct), Et = (e) => {
|
|
234
234
|
var a, o;
|
|
235
235
|
const [s, n] = O(
|
|
236
236
|
!!((o = (a = e == null ? void 0 : e.state) == null ? void 0 : a.membership) != null && o.pinned_at)
|
|
@@ -252,18 +252,18 @@ const _t = B.createContext({
|
|
|
252
252
|
e.off("member.updated", l);
|
|
253
253
|
};
|
|
254
254
|
}, [e]), s;
|
|
255
|
-
},
|
|
255
|
+
}, Zs = (e, s) => {
|
|
256
256
|
const n = new Date(
|
|
257
257
|
Date.UTC(e.getUTCFullYear(), e.getUTCMonth(), e.getUTCDate())
|
|
258
258
|
), o = new Date(
|
|
259
259
|
Date.UTC(s.getUTCFullYear(), s.getUTCMonth(), s.getUTCDate())
|
|
260
260
|
).getTime() - n.getTime();
|
|
261
261
|
return Math.floor(o / (1e3 * 60 * 60 * 24));
|
|
262
|
-
},
|
|
262
|
+
}, Js = (e) => {
|
|
263
263
|
const s = /* @__PURE__ */ new Date();
|
|
264
264
|
if (Math.floor((s.getTime() - e.getTime()) / 1e3) < 60)
|
|
265
265
|
return "Just now";
|
|
266
|
-
const a =
|
|
266
|
+
const a = Zs(e, s);
|
|
267
267
|
return a === 0 ? e.toLocaleTimeString([], {
|
|
268
268
|
hour: "numeric",
|
|
269
269
|
minute: "2-digit",
|
|
@@ -274,18 +274,18 @@ const _t = B.createContext({
|
|
|
274
274
|
year: "2-digit"
|
|
275
275
|
});
|
|
276
276
|
};
|
|
277
|
-
function
|
|
277
|
+
function Ks(e) {
|
|
278
278
|
return (e == null ? void 0 : e.trim().toLowerCase().split(/[-_]/)[0]) || void 0;
|
|
279
279
|
}
|
|
280
|
-
function
|
|
280
|
+
function St({
|
|
281
281
|
message: e,
|
|
282
282
|
viewerLanguage: s
|
|
283
283
|
}) {
|
|
284
284
|
var o;
|
|
285
|
-
const n = e == null ? void 0 : e.text, a =
|
|
285
|
+
const n = e == null ? void 0 : e.text, a = Ks(s);
|
|
286
286
|
return a ? ((o = e == null ? void 0 : e.i18n) == null ? void 0 : o[`${a}_text`]) ?? n : n;
|
|
287
287
|
}
|
|
288
|
-
const
|
|
288
|
+
const ut = [
|
|
289
289
|
"🍎",
|
|
290
290
|
// Apple
|
|
291
291
|
"🍌",
|
|
@@ -313,7 +313,7 @@ const lt = [
|
|
|
313
313
|
"🍈"
|
|
314
314
|
// Melon
|
|
315
315
|
];
|
|
316
|
-
function
|
|
316
|
+
function Qs(e) {
|
|
317
317
|
let s = 0;
|
|
318
318
|
for (let n = 0; n < e.length; n++) {
|
|
319
319
|
const a = e.charCodeAt(n);
|
|
@@ -321,9 +321,9 @@ function Xs(e) {
|
|
|
321
321
|
}
|
|
322
322
|
return Math.abs(s);
|
|
323
323
|
}
|
|
324
|
-
function
|
|
325
|
-
const n =
|
|
326
|
-
return
|
|
324
|
+
function en(e) {
|
|
325
|
+
const n = Qs(e) % ut.length;
|
|
326
|
+
return ut[n];
|
|
327
327
|
}
|
|
328
328
|
const ae = ({
|
|
329
329
|
id: e,
|
|
@@ -334,10 +334,10 @@ const ae = ({
|
|
|
334
334
|
shape: l = "squircle",
|
|
335
335
|
dmAgentEnabled: i = !1
|
|
336
336
|
}) => {
|
|
337
|
-
const c =
|
|
337
|
+
const c = en(e), g = n < 32 ? "text-xs" : n < 56 ? "text-sm" : n < 120 ? "text-lg" : "text-4xl", y = n >= 40 ? 2 : 1, m = l === "circle" ? { borderRadius: "50%" } : {
|
|
338
338
|
borderRadius: "33%",
|
|
339
339
|
cornerShape: "superellipse(1.3)"
|
|
340
|
-
},
|
|
340
|
+
}, h = /* @__PURE__ */ t("div", { className: "h-full w-full overflow-hidden", style: m, children: s ? /* @__PURE__ */ t(
|
|
341
341
|
"img",
|
|
342
342
|
{
|
|
343
343
|
src: s,
|
|
@@ -350,7 +350,7 @@ const ae = ({
|
|
|
350
350
|
"aria-hidden": "true",
|
|
351
351
|
className: D(
|
|
352
352
|
"avatar-fallback flex h-full w-full items-center justify-center bg-[#E6E5E3] font-semibold select-none transition-colors",
|
|
353
|
-
|
|
353
|
+
g
|
|
354
354
|
),
|
|
355
355
|
children: c
|
|
356
356
|
}
|
|
@@ -385,21 +385,21 @@ const ae = ({
|
|
|
385
385
|
"bg-transparent"
|
|
386
386
|
),
|
|
387
387
|
style: {
|
|
388
|
-
...
|
|
388
|
+
...m,
|
|
389
389
|
...i && {
|
|
390
|
-
borderWidth: `${
|
|
390
|
+
borderWidth: `${y}px`,
|
|
391
391
|
borderStyle: "solid",
|
|
392
392
|
borderColor: "var(--AI-Gradient, #7F22FE)",
|
|
393
393
|
boxShadow: "inset 0 1px 2px 0 rgba(255, 255, 255, 0.5)"
|
|
394
394
|
}
|
|
395
395
|
},
|
|
396
|
-
children:
|
|
396
|
+
children: h
|
|
397
397
|
}
|
|
398
398
|
)
|
|
399
399
|
]
|
|
400
400
|
}
|
|
401
401
|
);
|
|
402
|
-
},
|
|
402
|
+
}, tn = ({ size: e = 15 }) => /* @__PURE__ */ t(
|
|
403
403
|
"svg",
|
|
404
404
|
{
|
|
405
405
|
width: e,
|
|
@@ -416,94 +416,94 @@ const ae = ({
|
|
|
416
416
|
}
|
|
417
417
|
)
|
|
418
418
|
}
|
|
419
|
-
),
|
|
419
|
+
), sn = (e) => {
|
|
420
420
|
var s;
|
|
421
421
|
return ((s = e.metadata) == null ? void 0 : s.custom_type) === "MESSAGE_TIP";
|
|
422
|
-
},
|
|
422
|
+
}, nn = (e) => {
|
|
423
423
|
var s;
|
|
424
424
|
return ((s = e.metadata) == null ? void 0 : s.custom_type) === "MESSAGE_PAID";
|
|
425
425
|
}, ve = (e) => {
|
|
426
426
|
var s;
|
|
427
427
|
return ((s = e.metadata) == null ? void 0 : s.custom_type) === "MESSAGE_CHATBOT";
|
|
428
|
-
},
|
|
428
|
+
}, an = (e) => {
|
|
429
429
|
var s;
|
|
430
430
|
return ((s = e.metadata) == null ? void 0 : s.custom_type) === "MESSAGE_ATTACHMENT";
|
|
431
|
-
},
|
|
431
|
+
}, It = (e) => sn(e) || nn(e), rn = (e) => {
|
|
432
432
|
var s;
|
|
433
|
-
return
|
|
434
|
-
},
|
|
433
|
+
return It(e) && !((s = e.text) != null && s.trim());
|
|
434
|
+
}, Ie = ({
|
|
435
435
|
message: e,
|
|
436
436
|
standalone: s = !1,
|
|
437
437
|
isMyMessage: n = !1,
|
|
438
438
|
hasAttachment: a = !1
|
|
439
439
|
}) => {
|
|
440
|
-
var
|
|
441
|
-
const o =
|
|
440
|
+
var m;
|
|
441
|
+
const o = It(e), l = ve(e);
|
|
442
442
|
if (!o && !l)
|
|
443
443
|
return null;
|
|
444
444
|
if (o) {
|
|
445
|
-
const
|
|
446
|
-
if (!
|
|
447
|
-
const r = s ? "message-tip-standalone" : "message-tag message-tag--tip",
|
|
445
|
+
const h = (m = e.metadata) == null ? void 0 : m.amount_text;
|
|
446
|
+
if (!h) return null;
|
|
447
|
+
const r = s ? "message-tip-standalone" : "message-tag message-tag--tip", b = s ? `${h} tip` : `Delivered with ${h} tip`;
|
|
448
448
|
return /* @__PURE__ */ d("div", { className: r, children: [
|
|
449
|
-
/* @__PURE__ */ t(
|
|
450
|
-
/* @__PURE__ */ t("span", { children:
|
|
449
|
+
/* @__PURE__ */ t(Es, { size: s ? 14 : 12 }),
|
|
450
|
+
/* @__PURE__ */ t("span", { children: b })
|
|
451
451
|
] });
|
|
452
452
|
}
|
|
453
453
|
const i = n && a, c = i ? "Sent with AI" : "Sent with DM Agent", f = [
|
|
454
454
|
"message-chatbot-indicator",
|
|
455
455
|
n ? "message-chatbot-indicator--sender" : "message-chatbot-indicator--receiver",
|
|
456
456
|
i ? "message-chatbot-indicator--attachment" : "message-chatbot-indicator--text"
|
|
457
|
-
].join(" "),
|
|
457
|
+
].join(" "), g = /* @__PURE__ */ t("span", { className: "message-chatbot-indicator__label", children: c }), y = /* @__PURE__ */ t("span", { className: "message-chatbot-indicator__icon", children: /* @__PURE__ */ t(tn, { size: i ? 12 : 15 }) });
|
|
458
458
|
return /* @__PURE__ */ t("div", { className: f, "data-testid": "message-chatbot-indicator", children: n && !i ? /* @__PURE__ */ d(de, { children: [
|
|
459
|
-
|
|
460
|
-
|
|
459
|
+
g,
|
|
460
|
+
y
|
|
461
461
|
] }) : /* @__PURE__ */ d(de, { children: [
|
|
462
|
-
|
|
463
|
-
|
|
462
|
+
y,
|
|
463
|
+
g
|
|
464
464
|
] }) });
|
|
465
|
-
},
|
|
465
|
+
}, kt = B.memo(
|
|
466
466
|
({ channel: e, unread: s }) => {
|
|
467
|
-
var $, k,
|
|
467
|
+
var $, k, M, j;
|
|
468
468
|
const {
|
|
469
469
|
selectedChannel: n,
|
|
470
470
|
onChannelSelect: a,
|
|
471
471
|
debug: o,
|
|
472
472
|
renderMessagePreview: l,
|
|
473
473
|
viewerLanguage: i
|
|
474
|
-
} =
|
|
474
|
+
} = Xs(), c = (n == null ? void 0 : n.id) === (e == null ? void 0 : e.id), f = () => {
|
|
475
475
|
e && a(e);
|
|
476
|
-
},
|
|
476
|
+
}, g = (_) => {
|
|
477
477
|
const L = _.key === "Enter" || _.key === " ", v = _.repeat;
|
|
478
478
|
!L || v || (_.preventDefault(), f());
|
|
479
|
-
},
|
|
479
|
+
}, m = Object.values((($ = e == null ? void 0 : e.state) == null ? void 0 : $.members) || {}).find(
|
|
480
480
|
(_) => {
|
|
481
481
|
var L, v;
|
|
482
482
|
return ((L = _.user) == null ? void 0 : L.id) && _.user.id !== ((v = e == null ? void 0 : e._client) == null ? void 0 : v.userID);
|
|
483
483
|
}
|
|
484
|
-
),
|
|
484
|
+
), h = ((k = m == null ? void 0 : m.user) == null ? void 0 : k.name) || "Conversation", r = (M = m == null ? void 0 : m.user) == null ? void 0 : M.image, b = (() => {
|
|
485
485
|
var L;
|
|
486
486
|
const _ = (L = e == null ? void 0 : e.state) == null ? void 0 : L.messages;
|
|
487
487
|
if (_ != null && _.length) {
|
|
488
488
|
for (let v = _.length - 1; v >= 0; v--)
|
|
489
489
|
if (_[v].type !== "system") return _[v];
|
|
490
490
|
}
|
|
491
|
-
})(),
|
|
491
|
+
})(), x = (() => {
|
|
492
492
|
var A, V;
|
|
493
|
-
const _ =
|
|
494
|
-
message:
|
|
493
|
+
const _ = St({
|
|
494
|
+
message: b,
|
|
495
495
|
viewerLanguage: i
|
|
496
496
|
});
|
|
497
497
|
if (_) return _;
|
|
498
|
-
if (((A =
|
|
499
|
-
const v = (V =
|
|
498
|
+
if (((A = b == null ? void 0 : b.metadata) == null ? void 0 : A.custom_type) === "MESSAGE_TIP") return "💵 Sent a tip";
|
|
499
|
+
const v = (V = b == null ? void 0 : b.attachments) == null ? void 0 : V[0];
|
|
500
500
|
return v ? v.og_scrape_url ? v.og_scrape_url : v.type === "image" ? "📷 Sent an image" : v.type === "video" ? "🎥 Sent a video" : v.type === "audio" ? "🎵 Sent audio" : v.type === "file" ? "📎 Sent a file" : "📎 Sent an attachment" : "No messages yet";
|
|
501
|
-
})(), N =
|
|
501
|
+
})(), N = b != null && b.created_at ? Js(new Date(b.created_at)) : "", p = b ? ve(b) : !1, S = l ? l(b, x) : `${p ? "✨ " : ""}${x}`, I = Et(e), T = s ?? 0;
|
|
502
502
|
return o && console.log("📺 [ChannelList] 📋 CHANNEL PREVIEW RENDER", {
|
|
503
503
|
channelId: e == null ? void 0 : e.id,
|
|
504
504
|
isSelected: c,
|
|
505
|
-
participantName:
|
|
506
|
-
unreadCount:
|
|
505
|
+
participantName: h,
|
|
506
|
+
unreadCount: T,
|
|
507
507
|
hasTimestamp: !!N
|
|
508
508
|
}), /* @__PURE__ */ t(
|
|
509
509
|
"div",
|
|
@@ -511,7 +511,7 @@ const ae = ({
|
|
|
511
511
|
role: "button",
|
|
512
512
|
tabIndex: 0,
|
|
513
513
|
onClick: f,
|
|
514
|
-
onKeyDown:
|
|
514
|
+
onKeyDown: g,
|
|
515
515
|
className: D(
|
|
516
516
|
"group w-full px-4 py-3 transition-colors text-left max-w-full overflow-hidden focus-ring",
|
|
517
517
|
{
|
|
@@ -523,8 +523,8 @@ const ae = ({
|
|
|
523
523
|
/* @__PURE__ */ t(
|
|
524
524
|
ae,
|
|
525
525
|
{
|
|
526
|
-
id: ((j =
|
|
527
|
-
name:
|
|
526
|
+
id: ((j = m == null ? void 0 : m.user) == null ? void 0 : j.id) || e.id || "unknown",
|
|
527
|
+
name: h,
|
|
528
528
|
image: r,
|
|
529
529
|
size: 44,
|
|
530
530
|
starred: I,
|
|
@@ -542,7 +542,7 @@ const ae = ({
|
|
|
542
542
|
),
|
|
543
543
|
children: [
|
|
544
544
|
I && /* @__PURE__ */ t("span", { className: "sr-only", children: "Starred conversation. " }),
|
|
545
|
-
|
|
545
|
+
h
|
|
546
546
|
]
|
|
547
547
|
}
|
|
548
548
|
),
|
|
@@ -550,7 +550,7 @@ const ae = ({
|
|
|
550
550
|
] }),
|
|
551
551
|
/* @__PURE__ */ d("div", { className: "flex items-center justify-between gap-2 min-w-0", children: [
|
|
552
552
|
/* @__PURE__ */ t("p", { className: "text-xs text-stone flex-1 line-clamp-1", children: S }),
|
|
553
|
-
|
|
553
|
+
T > 0 && /* @__PURE__ */ t("span", { className: "bg-[#7f22fe] text-white text-xs px-2 py-0.5 rounded-full min-w-[20px] text-center flex-shrink-0", children: T > 99 ? "99+" : T })
|
|
554
554
|
] })
|
|
555
555
|
] })
|
|
556
556
|
] })
|
|
@@ -558,8 +558,8 @@ const ae = ({
|
|
|
558
558
|
);
|
|
559
559
|
}
|
|
560
560
|
);
|
|
561
|
-
|
|
562
|
-
const
|
|
561
|
+
kt.displayName = "CustomChannelPreview";
|
|
562
|
+
const on = { last_message_at: -1 }, Tt = B.memo(
|
|
563
563
|
({
|
|
564
564
|
onChannelSelect: e,
|
|
565
565
|
selectedChannel: s,
|
|
@@ -568,41 +568,41 @@ const sn = { last_message_at: -1 }, It = B.memo(
|
|
|
568
568
|
onMessageNew: o,
|
|
569
569
|
onAddedToChannel: l,
|
|
570
570
|
channelRenderFilterFn: i,
|
|
571
|
-
sort: c =
|
|
571
|
+
sort: c = on,
|
|
572
572
|
className: f,
|
|
573
|
-
customEmptyStateIndicator:
|
|
574
|
-
renderMessagePreview:
|
|
575
|
-
viewerLanguage:
|
|
573
|
+
customEmptyStateIndicator: g,
|
|
574
|
+
renderMessagePreview: y,
|
|
575
|
+
viewerLanguage: m
|
|
576
576
|
}) => {
|
|
577
|
-
const
|
|
578
|
-
|
|
579
|
-
const { debug: r = !1 } =
|
|
580
|
-
(
|
|
581
|
-
for (const N of
|
|
582
|
-
|
|
583
|
-
return i ? i(
|
|
577
|
+
const h = B.useRef(0);
|
|
578
|
+
h.current++;
|
|
579
|
+
const { debug: r = !1 } = Pe(), b = B.useCallback(
|
|
580
|
+
(x) => {
|
|
581
|
+
for (const N of x)
|
|
582
|
+
qs(N);
|
|
583
|
+
return i ? i(x) : x;
|
|
584
584
|
},
|
|
585
585
|
[i]
|
|
586
586
|
);
|
|
587
587
|
r && console.log("📺 [ChannelList] 🔄 RENDER START", {
|
|
588
|
-
renderCount:
|
|
588
|
+
renderCount: h.current,
|
|
589
589
|
selectedChannelId: s == null ? void 0 : s.id,
|
|
590
590
|
filters: n
|
|
591
591
|
});
|
|
592
|
-
const
|
|
592
|
+
const w = B.useMemo(
|
|
593
593
|
() => ({
|
|
594
594
|
selectedChannel: s,
|
|
595
595
|
onChannelSelect: e,
|
|
596
596
|
debug: r,
|
|
597
|
-
renderMessagePreview:
|
|
598
|
-
viewerLanguage:
|
|
597
|
+
renderMessagePreview: y,
|
|
598
|
+
viewerLanguage: m
|
|
599
599
|
}),
|
|
600
600
|
[
|
|
601
601
|
s,
|
|
602
602
|
e,
|
|
603
603
|
r,
|
|
604
|
-
|
|
605
|
-
|
|
604
|
+
y,
|
|
605
|
+
m
|
|
606
606
|
]
|
|
607
607
|
);
|
|
608
608
|
return /* @__PURE__ */ t(
|
|
@@ -612,8 +612,8 @@ const sn = { last_message_at: -1 }, It = B.memo(
|
|
|
612
612
|
"messaging-channel-list h-full flex flex-col min-w-0 overflow-hidden",
|
|
613
613
|
f
|
|
614
614
|
),
|
|
615
|
-
children: /* @__PURE__ */ t("div", { className: "flex-1 overflow-hidden min-w-0", children: /* @__PURE__ */ t(
|
|
616
|
-
|
|
615
|
+
children: /* @__PURE__ */ t("div", { className: "flex-1 overflow-hidden min-w-0", children: /* @__PURE__ */ t(Ws, { value: w, children: /* @__PURE__ */ t(
|
|
616
|
+
Gt,
|
|
617
617
|
{
|
|
618
618
|
filters: n,
|
|
619
619
|
sort: c,
|
|
@@ -621,9 +621,9 @@ const sn = { last_message_at: -1 }, It = B.memo(
|
|
|
621
621
|
allowNewMessagesFromUnfilteredChannels: a,
|
|
622
622
|
onMessageNew: o,
|
|
623
623
|
onAddedToChannel: l,
|
|
624
|
-
channelRenderFilterFn:
|
|
625
|
-
Preview:
|
|
626
|
-
EmptyStateIndicator:
|
|
624
|
+
channelRenderFilterFn: b,
|
|
625
|
+
Preview: kt,
|
|
626
|
+
EmptyStateIndicator: g
|
|
627
627
|
},
|
|
628
628
|
`${JSON.stringify(n)}:${JSON.stringify(c)}`
|
|
629
629
|
) }) })
|
|
@@ -631,7 +631,7 @@ const sn = { last_message_at: -1 }, It = B.memo(
|
|
|
631
631
|
);
|
|
632
632
|
}
|
|
633
633
|
);
|
|
634
|
-
|
|
634
|
+
Tt.displayName = "ChannelList";
|
|
635
635
|
const be = ({
|
|
636
636
|
variant: e = "default",
|
|
637
637
|
className: s,
|
|
@@ -650,7 +650,7 @@ const be = ({
|
|
|
650
650
|
children: n
|
|
651
651
|
}
|
|
652
652
|
);
|
|
653
|
-
function
|
|
653
|
+
function ln({ label: e, className: s, children: n, ...a }) {
|
|
654
654
|
return /* @__PURE__ */ d(
|
|
655
655
|
"button",
|
|
656
656
|
{
|
|
@@ -671,10 +671,10 @@ function nn({ label: e, className: s, children: n, ...a }) {
|
|
|
671
671
|
}
|
|
672
672
|
);
|
|
673
673
|
}
|
|
674
|
-
function
|
|
675
|
-
return /* @__PURE__ */ t(
|
|
674
|
+
function cn({ onClick: e }) {
|
|
675
|
+
return /* @__PURE__ */ t(ln, { label: "Close", onClick: e, className: "p-1", children: /* @__PURE__ */ t(wt, { className: "h-5 w-5 text-stone", weight: "bold" }) });
|
|
676
676
|
}
|
|
677
|
-
const
|
|
677
|
+
const dn = ({
|
|
678
678
|
dialogRef: e,
|
|
679
679
|
onClose: s,
|
|
680
680
|
participant: n,
|
|
@@ -684,72 +684,72 @@ const rn = ({
|
|
|
684
684
|
onBlockParticipant: i,
|
|
685
685
|
showDeleteConversation: c = !0,
|
|
686
686
|
onDeleteConversationClick: f,
|
|
687
|
-
onBlockParticipantClick:
|
|
688
|
-
onReportParticipantClick:
|
|
689
|
-
customProfileContent:
|
|
690
|
-
customChannelActions:
|
|
687
|
+
onBlockParticipantClick: g,
|
|
688
|
+
onReportParticipantClick: y,
|
|
689
|
+
customProfileContent: m,
|
|
690
|
+
customChannelActions: h
|
|
691
691
|
}) => {
|
|
692
692
|
var R, P, E, H, Y, te;
|
|
693
|
-
const { service: r, debug:
|
|
694
|
-
var
|
|
695
|
-
if (!(!r || !((
|
|
693
|
+
const { service: r, debug: b } = Pe(), [w, x] = O(!1), [N, p] = O(!1), [S, I] = O(!1), T = G(async () => {
|
|
694
|
+
var z;
|
|
695
|
+
if (!(!r || !((z = n == null ? void 0 : n.user) != null && z.id)))
|
|
696
696
|
try {
|
|
697
697
|
const C = (await r.getBlockedUsers()).some(
|
|
698
|
-
(
|
|
698
|
+
(U) => {
|
|
699
699
|
var K;
|
|
700
|
-
return
|
|
700
|
+
return U.blocked_user_id === ((K = n == null ? void 0 : n.user) == null ? void 0 : K.id);
|
|
701
701
|
}
|
|
702
702
|
);
|
|
703
|
-
|
|
704
|
-
} catch (
|
|
703
|
+
x(C);
|
|
704
|
+
} catch (u) {
|
|
705
705
|
console.error(
|
|
706
706
|
"[ChannelInfoDialog] Failed to check blocked status:",
|
|
707
|
-
|
|
707
|
+
u
|
|
708
708
|
);
|
|
709
709
|
}
|
|
710
710
|
}, [r, (R = n == null ? void 0 : n.user) == null ? void 0 : R.id]);
|
|
711
711
|
q(() => {
|
|
712
|
-
|
|
713
|
-
}, [
|
|
712
|
+
T();
|
|
713
|
+
}, [T]);
|
|
714
714
|
const $ = async () => {
|
|
715
|
-
var
|
|
715
|
+
var z;
|
|
716
716
|
if (!N) {
|
|
717
|
-
f == null || f(),
|
|
717
|
+
f == null || f(), b && console.log("[ChannelInfoDialog] Leave conversation", a.cid), p(!0);
|
|
718
718
|
try {
|
|
719
|
-
const
|
|
720
|
-
await a.hide(
|
|
721
|
-
} catch (
|
|
722
|
-
console.error("[ChannelInfoDialog] Failed to leave conversation",
|
|
719
|
+
const u = ((z = a._client) == null ? void 0 : z.userID) ?? null;
|
|
720
|
+
await a.hide(u, !1), l && await l(a), s();
|
|
721
|
+
} catch (u) {
|
|
722
|
+
console.error("[ChannelInfoDialog] Failed to leave conversation", u);
|
|
723
723
|
} finally {
|
|
724
|
-
|
|
724
|
+
p(!1);
|
|
725
725
|
}
|
|
726
726
|
}
|
|
727
727
|
}, k = async () => {
|
|
728
|
-
var
|
|
728
|
+
var z, u, C;
|
|
729
729
|
if (!(S || !r)) {
|
|
730
|
-
|
|
730
|
+
g == null || g(), b && console.log("[ChannelInfoDialog] Block member", (z = n == null ? void 0 : n.user) == null ? void 0 : z.id), I(!0);
|
|
731
731
|
try {
|
|
732
|
-
await r.blockUser((
|
|
733
|
-
} catch (
|
|
734
|
-
console.error("[ChannelInfoDialog] Failed to block member",
|
|
732
|
+
await r.blockUser((u = n == null ? void 0 : n.user) == null ? void 0 : u.id), i && await i((C = n == null ? void 0 : n.user) == null ? void 0 : C.id), s();
|
|
733
|
+
} catch (U) {
|
|
734
|
+
console.error("[ChannelInfoDialog] Failed to block member", U);
|
|
735
735
|
} finally {
|
|
736
736
|
I(!1);
|
|
737
737
|
}
|
|
738
738
|
}
|
|
739
|
-
},
|
|
740
|
-
var
|
|
739
|
+
}, M = async () => {
|
|
740
|
+
var z, u, C;
|
|
741
741
|
if (!(S || !r)) {
|
|
742
|
-
|
|
742
|
+
g == null || g(), b && console.log("[ChannelInfoDialog] Unblock member", (z = n == null ? void 0 : n.user) == null ? void 0 : z.id), I(!0);
|
|
743
743
|
try {
|
|
744
|
-
await r.unBlockUser((
|
|
745
|
-
} catch (
|
|
746
|
-
console.error("[ChannelInfoDialog] Failed to unblock member",
|
|
744
|
+
await r.unBlockUser((u = n == null ? void 0 : n.user) == null ? void 0 : u.id), i && await i((C = n == null ? void 0 : n.user) == null ? void 0 : C.id), s();
|
|
745
|
+
} catch (U) {
|
|
746
|
+
console.error("[ChannelInfoDialog] Failed to unblock member", U);
|
|
747
747
|
} finally {
|
|
748
748
|
I(!1);
|
|
749
749
|
}
|
|
750
750
|
}
|
|
751
751
|
}, j = () => {
|
|
752
|
-
|
|
752
|
+
y == null || y(), s(), window.open(
|
|
753
753
|
"https://linktr.ee/s/about/trust-center/report",
|
|
754
754
|
"_blank",
|
|
755
755
|
"noopener,noreferrer"
|
|
@@ -765,13 +765,13 @@ const rn = ({
|
|
|
765
765
|
ref: e,
|
|
766
766
|
className: "mes-dialog group",
|
|
767
767
|
onClose: s,
|
|
768
|
-
onClick: (
|
|
769
|
-
|
|
768
|
+
onClick: (z) => {
|
|
769
|
+
z.target === e.current && s();
|
|
770
770
|
},
|
|
771
771
|
children: /* @__PURE__ */ d("div", { className: "ml-auto flex h-full w-full flex-col bg-white shadow-none transition-shadow duration-200 group-open:shadow-max-elevation-light", children: [
|
|
772
772
|
/* @__PURE__ */ d("div", { className: "flex items-center justify-between border-b border-sand px-4 py-3", children: [
|
|
773
773
|
/* @__PURE__ */ t("h2", { className: "text-base font-semibold text-charcoal", children: "Chat info" }),
|
|
774
|
-
/* @__PURE__ */ t(
|
|
774
|
+
/* @__PURE__ */ t(cn, { onClick: s })
|
|
775
775
|
] }),
|
|
776
776
|
/* @__PURE__ */ d("div", { className: "flex-1 px-2 overflow-y-auto w-full", children: [
|
|
777
777
|
/* @__PURE__ */ d(
|
|
@@ -794,7 +794,7 @@ const rn = ({
|
|
|
794
794
|
/* @__PURE__ */ d("div", { className: "flex flex-col min-w-0 flex-1", children: [
|
|
795
795
|
/* @__PURE__ */ t("p", { className: "truncate text-base font-semibold text-charcoal", children: _ }),
|
|
796
796
|
A && /* @__PURE__ */ t("p", { className: "truncate text-sm text-[#00000055]", children: A }),
|
|
797
|
-
o && !
|
|
797
|
+
o && !m && /* @__PURE__ */ t(
|
|
798
798
|
"span",
|
|
799
799
|
{
|
|
800
800
|
className: "mt-1 rounded-full text-xs font-normal w-fit",
|
|
@@ -810,7 +810,7 @@ const rn = ({
|
|
|
810
810
|
)
|
|
811
811
|
] })
|
|
812
812
|
] }),
|
|
813
|
-
|
|
813
|
+
m && /* @__PURE__ */ t("div", { className: "w-full", children: m })
|
|
814
814
|
]
|
|
815
815
|
}
|
|
816
816
|
),
|
|
@@ -822,19 +822,19 @@ const rn = ({
|
|
|
822
822
|
disabled: N,
|
|
823
823
|
"aria-busy": N,
|
|
824
824
|
children: [
|
|
825
|
-
N ? /* @__PURE__ */ t(
|
|
825
|
+
N ? /* @__PURE__ */ t(Se, { className: "h-5 w-5 animate-spin" }) : /* @__PURE__ */ t(Ss, { className: "h-5 w-5" }),
|
|
826
826
|
/* @__PURE__ */ t("span", { children: "Delete Conversation" })
|
|
827
827
|
]
|
|
828
828
|
}
|
|
829
829
|
) }),
|
|
830
|
-
/* @__PURE__ */ t("li", { children:
|
|
830
|
+
/* @__PURE__ */ t("li", { children: w ? /* @__PURE__ */ d(
|
|
831
831
|
be,
|
|
832
832
|
{
|
|
833
|
-
onClick:
|
|
833
|
+
onClick: M,
|
|
834
834
|
disabled: S,
|
|
835
835
|
"aria-busy": S,
|
|
836
836
|
children: [
|
|
837
|
-
S ? /* @__PURE__ */ t(
|
|
837
|
+
S ? /* @__PURE__ */ t(Se, { className: "h-5 w-5 animate-spin" }) : /* @__PURE__ */ t(rt, { className: "h-5 w-5" }),
|
|
838
838
|
/* @__PURE__ */ t("span", { children: "Unblock" })
|
|
839
839
|
]
|
|
840
840
|
}
|
|
@@ -845,36 +845,36 @@ const rn = ({
|
|
|
845
845
|
disabled: S,
|
|
846
846
|
"aria-busy": S,
|
|
847
847
|
children: [
|
|
848
|
-
S ? /* @__PURE__ */ t(
|
|
848
|
+
S ? /* @__PURE__ */ t(Se, { className: "h-5 w-5 animate-spin" }) : /* @__PURE__ */ t(rt, { className: "h-5 w-5" }),
|
|
849
849
|
/* @__PURE__ */ t("span", { children: "Block" })
|
|
850
850
|
]
|
|
851
851
|
}
|
|
852
852
|
) }),
|
|
853
853
|
/* @__PURE__ */ t("li", { children: /* @__PURE__ */ d(be, { variant: "danger", onClick: j, children: [
|
|
854
|
-
/* @__PURE__ */ t(
|
|
854
|
+
/* @__PURE__ */ t(Is, { className: "h-5 w-5" }),
|
|
855
855
|
/* @__PURE__ */ t("span", { children: "Report" })
|
|
856
856
|
] }) }),
|
|
857
|
-
|
|
857
|
+
h
|
|
858
858
|
] })
|
|
859
859
|
] })
|
|
860
860
|
] })
|
|
861
861
|
}
|
|
862
862
|
)
|
|
863
863
|
);
|
|
864
|
-
},
|
|
865
|
-
function
|
|
866
|
-
return e != null && e.length ? e.some((s) => s.type ===
|
|
864
|
+
}, un = (e) => /* @__PURE__ */ t(Vt, { ...e, position: "center" }), Re = "vote_up", Le = "vote_down";
|
|
865
|
+
function mn(e) {
|
|
866
|
+
return e != null && e.length ? e.some((s) => s.type === Le) ? "down" : e.some((s) => s.type === Re) ? "up" : null : null;
|
|
867
867
|
}
|
|
868
|
-
function
|
|
869
|
-
const { channel: s } = oe(), { client: n } =
|
|
870
|
-
() =>
|
|
868
|
+
function hn(e) {
|
|
869
|
+
const { channel: s } = oe(), { client: n } = Oe("useMessageVote"), a = pe(
|
|
870
|
+
() => mn(e.own_reactions),
|
|
871
871
|
[e.own_reactions]
|
|
872
872
|
), o = G(async () => {
|
|
873
873
|
if (n != null && n.userID)
|
|
874
874
|
try {
|
|
875
|
-
a === "up" ? await s.deleteReaction(e.id,
|
|
875
|
+
a === "up" ? await s.deleteReaction(e.id, Re) : await s.sendReaction(
|
|
876
876
|
e.id,
|
|
877
|
-
{ type:
|
|
877
|
+
{ type: Re },
|
|
878
878
|
{ enforce_unique: !0, skip_push: !0 }
|
|
879
879
|
);
|
|
880
880
|
} catch {
|
|
@@ -882,9 +882,9 @@ function cn(e) {
|
|
|
882
882
|
}, [s, n == null ? void 0 : n.userID, e.id, a]), l = G(async () => {
|
|
883
883
|
if (n != null && n.userID)
|
|
884
884
|
try {
|
|
885
|
-
a === "down" ? await s.deleteReaction(e.id,
|
|
885
|
+
a === "down" ? await s.deleteReaction(e.id, Le) : await s.sendReaction(
|
|
886
886
|
e.id,
|
|
887
|
-
{ type:
|
|
887
|
+
{ type: Le },
|
|
888
888
|
{ enforce_unique: !0, skip_push: !0 }
|
|
889
889
|
);
|
|
890
890
|
} catch {
|
|
@@ -892,13 +892,13 @@ function cn(e) {
|
|
|
892
892
|
}, [s, n == null ? void 0 : n.userID, e.id, a]);
|
|
893
893
|
return { selected: a, voteUp: o, voteDown: l };
|
|
894
894
|
}
|
|
895
|
-
const
|
|
895
|
+
const fn = B.lazy(() => import("./Card-BKP9ml9O.js")), gn = B.lazy(() => import("./Card-Bk_4lVzP.js")), Mt = () => /* @__PURE__ */ t(
|
|
896
896
|
"div",
|
|
897
897
|
{
|
|
898
898
|
className: "w-[280px] min-h-[200px] animate-pulse rounded-[24px] bg-black/[0.06] shadow-[0_0_0_1px_rgba(0,0,0,0.04),0_4px_8px_rgba(0,0,0,0.06)]",
|
|
899
899
|
"aria-hidden": !0
|
|
900
900
|
}
|
|
901
|
-
),
|
|
901
|
+
), bn = (e) => /* @__PURE__ */ t(pt, { fallback: /* @__PURE__ */ t(Mt, {}), children: /* @__PURE__ */ t(fn, { ...e }) }), pn = (e) => /* @__PURE__ */ t(pt, { fallback: /* @__PURE__ */ t(Mt, {}), children: /* @__PURE__ */ t(gn, { ...e }) }), mt = { Creator: bn, Visitor: pn }, xn = [
|
|
902
902
|
[/pdf/, "pdf"],
|
|
903
903
|
[/wordprocessingml|msword|\.doc/, "doc"],
|
|
904
904
|
[/spreadsheetml|ms-excel|\.xls/, "xls"],
|
|
@@ -911,39 +911,39 @@ const dn = B.lazy(() => import("./Card-BHknCeHw.js")), un = B.lazy(() => import(
|
|
|
911
911
|
function _e(e) {
|
|
912
912
|
return e.startsWith("video/") ? "video" : e.startsWith("audio/") ? "audio" : e.startsWith("image/") ? "image" : "document";
|
|
913
913
|
}
|
|
914
|
-
function
|
|
915
|
-
const s =
|
|
914
|
+
function vn(e) {
|
|
915
|
+
const s = xn.find(
|
|
916
916
|
([n]) => n.test(e)
|
|
917
917
|
);
|
|
918
918
|
return s ? s[1] : "generic";
|
|
919
919
|
}
|
|
920
|
-
const
|
|
921
|
-
video:
|
|
922
|
-
audio:
|
|
923
|
-
image:
|
|
924
|
-
document:
|
|
925
|
-
},
|
|
926
|
-
pdf:
|
|
927
|
-
doc:
|
|
928
|
-
xls:
|
|
929
|
-
csv:
|
|
930
|
-
ppt:
|
|
931
|
-
zip:
|
|
932
|
-
text:
|
|
933
|
-
markdown:
|
|
934
|
-
generic:
|
|
920
|
+
const wn = {
|
|
921
|
+
video: Ms,
|
|
922
|
+
audio: Ts,
|
|
923
|
+
image: ks,
|
|
924
|
+
document: yt
|
|
925
|
+
}, yn = {
|
|
926
|
+
pdf: zs,
|
|
927
|
+
doc: Ps,
|
|
928
|
+
xls: Os,
|
|
929
|
+
csv: Fs,
|
|
930
|
+
ppt: As,
|
|
931
|
+
zip: Ls,
|
|
932
|
+
text: Rs,
|
|
933
|
+
markdown: Ds,
|
|
934
|
+
generic: yt
|
|
935
935
|
};
|
|
936
|
-
function
|
|
936
|
+
function _n(e) {
|
|
937
937
|
const s = _e(e);
|
|
938
|
-
return s !== "document" ?
|
|
938
|
+
return s !== "document" ? wn[s] : yn[vn(e)];
|
|
939
939
|
}
|
|
940
940
|
function we(e, s) {
|
|
941
|
-
return B.createElement(
|
|
941
|
+
return B.createElement(_n(e), s);
|
|
942
942
|
}
|
|
943
|
-
const
|
|
943
|
+
const Nn = (e) => {
|
|
944
944
|
var s, n;
|
|
945
945
|
return "touches" in e ? ((s = e.touches[0]) == null ? void 0 : s.clientX) ?? ((n = e.changedTouches[0]) == null ? void 0 : n.clientX) ?? 0 : e.clientX;
|
|
946
|
-
},
|
|
946
|
+
}, Cn = ({
|
|
947
947
|
source: e,
|
|
948
948
|
mimeType: s,
|
|
949
949
|
poster: n,
|
|
@@ -953,55 +953,55 @@ const vn = (e) => {
|
|
|
953
953
|
controls: i = !0,
|
|
954
954
|
showProgress: c = !1,
|
|
955
955
|
muted: f = !1,
|
|
956
|
-
onContainerClick:
|
|
956
|
+
onContainerClick: g
|
|
957
957
|
}) => {
|
|
958
|
-
const
|
|
959
|
-
|
|
960
|
-
}, []), P = G((
|
|
961
|
-
const C =
|
|
958
|
+
const y = _e(s), m = J(null), h = J(null), r = J(null), b = J(o), [w, x] = O(a), [N, p] = O(0), [S, I] = O(!1), [T, $] = O(!1), [k, M] = O(!1), [j, _] = O(!1), [L, v] = O(!0), [A, V] = O(null), R = G(() => {
|
|
959
|
+
M(!1), x(!0);
|
|
960
|
+
}, []), P = G((u) => {
|
|
961
|
+
const C = h.current;
|
|
962
962
|
if (!C) return 0;
|
|
963
|
-
const
|
|
963
|
+
const U = C.getBoundingClientRect();
|
|
964
964
|
return Math.max(
|
|
965
965
|
0,
|
|
966
|
-
Math.min(1, (
|
|
966
|
+
Math.min(1, (Nn(u) - U.left) / U.width)
|
|
967
967
|
);
|
|
968
|
-
}, []), E = G((
|
|
969
|
-
const C =
|
|
970
|
-
C && C.duration && (C.currentTime =
|
|
971
|
-
}, []), H = (
|
|
972
|
-
|
|
973
|
-
const C = P(
|
|
974
|
-
|
|
968
|
+
}, []), E = G((u) => {
|
|
969
|
+
const C = m.current;
|
|
970
|
+
C && C.duration && (C.currentTime = u * C.duration);
|
|
971
|
+
}, []), H = (u) => {
|
|
972
|
+
u.stopPropagation(), I(!0);
|
|
973
|
+
const C = P(u);
|
|
974
|
+
p(C), E(C);
|
|
975
975
|
};
|
|
976
976
|
q(() => {
|
|
977
|
-
o !== void 0 && o !==
|
|
977
|
+
o !== void 0 && o !== b.current && (b.current = o, x(o));
|
|
978
978
|
}, [o]), q(() => {
|
|
979
|
-
if (!
|
|
979
|
+
if (!w) {
|
|
980
980
|
r.current !== null && (cancelAnimationFrame(r.current), r.current = null);
|
|
981
981
|
return;
|
|
982
982
|
}
|
|
983
|
-
const
|
|
984
|
-
const C =
|
|
985
|
-
C && C.duration && !S &&
|
|
983
|
+
const u = () => {
|
|
984
|
+
const C = m.current;
|
|
985
|
+
C && C.duration && !S && p(C.currentTime / C.duration), r.current = requestAnimationFrame(u);
|
|
986
986
|
};
|
|
987
|
-
return r.current = requestAnimationFrame(
|
|
987
|
+
return r.current = requestAnimationFrame(u), () => {
|
|
988
988
|
r.current !== null && cancelAnimationFrame(r.current);
|
|
989
989
|
};
|
|
990
|
-
}, [
|
|
991
|
-
const
|
|
992
|
-
|
|
993
|
-
|
|
994
|
-
}) :
|
|
995
|
-
}, [
|
|
990
|
+
}, [w, S]), q(() => {
|
|
991
|
+
const u = m.current;
|
|
992
|
+
u && (w ? u.play().catch((C) => {
|
|
993
|
+
x(!1), M(!0);
|
|
994
|
+
}) : u.pause());
|
|
995
|
+
}, [w]), q(() => {
|
|
996
996
|
if (!S) return;
|
|
997
|
-
const
|
|
998
|
-
I(!1), E(P(
|
|
997
|
+
const u = (U) => p(P(U)), C = (U) => {
|
|
998
|
+
I(!1), E(P(U));
|
|
999
999
|
};
|
|
1000
|
-
return window.addEventListener("mousemove",
|
|
1001
|
-
window.removeEventListener("mousemove",
|
|
1000
|
+
return window.addEventListener("mousemove", u), window.addEventListener("mouseup", C), window.addEventListener("touchmove", u, { passive: !0 }), window.addEventListener("touchend", C), () => {
|
|
1001
|
+
window.removeEventListener("mousemove", u), window.removeEventListener("mouseup", C), window.removeEventListener("touchmove", u), window.removeEventListener("touchend", C);
|
|
1002
1002
|
};
|
|
1003
1003
|
}, [S, P, E]);
|
|
1004
|
-
const Y = A ? { aspectRatio: String(A) } : void 0, te = A ? "" : " aspect-video",
|
|
1004
|
+
const Y = A ? { aspectRatio: String(A) } : void 0, te = A ? "" : " aspect-video", z = Math.round(N * 100);
|
|
1005
1005
|
return /* @__PURE__ */ d(
|
|
1006
1006
|
"div",
|
|
1007
1007
|
{
|
|
@@ -1009,24 +1009,24 @@ const vn = (e) => {
|
|
|
1009
1009
|
tabIndex: 0,
|
|
1010
1010
|
className: `relative cursor-pointer overflow-hidden bg-black ${te}`,
|
|
1011
1011
|
style: Y,
|
|
1012
|
-
onClick: (
|
|
1013
|
-
if (
|
|
1014
|
-
u
|
|
1012
|
+
onClick: (u) => {
|
|
1013
|
+
if (g) {
|
|
1014
|
+
g(u);
|
|
1015
1015
|
return;
|
|
1016
1016
|
}
|
|
1017
|
-
k || i &&
|
|
1017
|
+
k || i && x((C) => !C);
|
|
1018
1018
|
},
|
|
1019
|
-
onKeyDown: (
|
|
1020
|
-
if (!(
|
|
1021
|
-
if (
|
|
1022
|
-
u
|
|
1019
|
+
onKeyDown: (u) => {
|
|
1020
|
+
if (!(u.key !== "Enter" && u.key !== " ")) {
|
|
1021
|
+
if (u.preventDefault(), g) {
|
|
1022
|
+
g(u);
|
|
1023
1023
|
return;
|
|
1024
1024
|
}
|
|
1025
|
-
k || i &&
|
|
1025
|
+
k || i && x((C) => !C);
|
|
1026
1026
|
}
|
|
1027
1027
|
},
|
|
1028
1028
|
children: [
|
|
1029
|
-
n && (
|
|
1029
|
+
n && (y === "audio" || L) && /* @__PURE__ */ t(
|
|
1030
1030
|
"img",
|
|
1031
1031
|
{
|
|
1032
1032
|
src: n,
|
|
@@ -1034,14 +1034,14 @@ const vn = (e) => {
|
|
|
1034
1034
|
className: "absolute inset-0 h-full w-full object-cover"
|
|
1035
1035
|
}
|
|
1036
1036
|
),
|
|
1037
|
-
!n && (
|
|
1037
|
+
!n && (y === "audio" || L) && /* @__PURE__ */ t("div", { className: "absolute inset-0 flex items-center justify-center", children: we(s, {
|
|
1038
1038
|
className: "size-12 text-black/20",
|
|
1039
1039
|
weight: "regular"
|
|
1040
1040
|
}) }),
|
|
1041
|
-
/* @__PURE__ */ t("div", { className: "absolute inset-0", children:
|
|
1041
|
+
/* @__PURE__ */ t("div", { className: "absolute inset-0", children: y === "audio" ? /* @__PURE__ */ t(
|
|
1042
1042
|
"audio",
|
|
1043
1043
|
{
|
|
1044
|
-
ref:
|
|
1044
|
+
ref: m,
|
|
1045
1045
|
src: e,
|
|
1046
1046
|
loop: l,
|
|
1047
1047
|
muted: f,
|
|
@@ -1051,16 +1051,16 @@ const vn = (e) => {
|
|
|
1051
1051
|
_(!1), v(!1);
|
|
1052
1052
|
},
|
|
1053
1053
|
onWaiting: () => _(!0),
|
|
1054
|
-
onPlay: () =>
|
|
1054
|
+
onPlay: () => M(!1),
|
|
1055
1055
|
onEnded: () => {
|
|
1056
|
-
l || (
|
|
1056
|
+
l || (x(!1), p(0));
|
|
1057
1057
|
},
|
|
1058
1058
|
children: /* @__PURE__ */ t("track", { kind: "captions" })
|
|
1059
1059
|
}
|
|
1060
1060
|
) : /* @__PURE__ */ t(
|
|
1061
1061
|
"video",
|
|
1062
1062
|
{
|
|
1063
|
-
ref:
|
|
1063
|
+
ref: m,
|
|
1064
1064
|
src: e,
|
|
1065
1065
|
loop: l,
|
|
1066
1066
|
muted: f,
|
|
@@ -1071,19 +1071,19 @@ const vn = (e) => {
|
|
|
1071
1071
|
_(!1), v(!1);
|
|
1072
1072
|
},
|
|
1073
1073
|
onWaiting: () => _(!0),
|
|
1074
|
-
onPlay: () =>
|
|
1074
|
+
onPlay: () => M(!1),
|
|
1075
1075
|
onLoadedMetadata: () => {
|
|
1076
|
-
const
|
|
1077
|
-
|
|
1076
|
+
const u = m.current;
|
|
1077
|
+
u instanceof HTMLVideoElement && u.videoWidth && u.videoHeight && V(u.videoWidth / u.videoHeight);
|
|
1078
1078
|
},
|
|
1079
1079
|
onEnded: () => {
|
|
1080
|
-
l || (
|
|
1080
|
+
l || (x(!1), p(0));
|
|
1081
1081
|
},
|
|
1082
1082
|
children: /* @__PURE__ */ t("track", { kind: "captions" })
|
|
1083
1083
|
}
|
|
1084
1084
|
) }),
|
|
1085
1085
|
j && !k && /* @__PURE__ */ t("div", { className: "absolute inset-0 z-10 flex items-center justify-center", children: /* @__PURE__ */ t(
|
|
1086
|
-
|
|
1086
|
+
_t,
|
|
1087
1087
|
{
|
|
1088
1088
|
className: "size-8 animate-spin text-white/80",
|
|
1089
1089
|
weight: "bold"
|
|
@@ -1096,13 +1096,13 @@ const vn = (e) => {
|
|
|
1096
1096
|
role: "button",
|
|
1097
1097
|
tabIndex: 0,
|
|
1098
1098
|
"aria-label": "Play preview",
|
|
1099
|
-
onClick: (
|
|
1100
|
-
|
|
1099
|
+
onClick: (u) => {
|
|
1100
|
+
u.stopPropagation(), R();
|
|
1101
1101
|
},
|
|
1102
|
-
onKeyDown: (
|
|
1103
|
-
|
|
1102
|
+
onKeyDown: (u) => {
|
|
1103
|
+
u.key !== "Enter" && u.key !== " " || (u.preventDefault(), u.stopPropagation(), R());
|
|
1104
1104
|
},
|
|
1105
|
-
children: /* @__PURE__ */ t("span", { className: "flex size-16 items-center justify-center rounded-full bg-white/20 text-white backdrop-blur-sm", children: /* @__PURE__ */ t(
|
|
1105
|
+
children: /* @__PURE__ */ t("span", { className: "flex size-16 items-center justify-center rounded-full bg-white/20 text-white backdrop-blur-sm", children: /* @__PURE__ */ t(it, { className: "size-9 translate-x-0.5", weight: "fill" }) })
|
|
1106
1106
|
}
|
|
1107
1107
|
),
|
|
1108
1108
|
c && !i && /* @__PURE__ */ t("div", { className: "absolute inset-x-0 bottom-0 px-3 pb-2.5 pt-6 bg-gradient-to-t from-black/40 to-transparent", children: /* @__PURE__ */ t(
|
|
@@ -1110,23 +1110,23 @@ const vn = (e) => {
|
|
|
1110
1110
|
{
|
|
1111
1111
|
role: "slider",
|
|
1112
1112
|
"aria-label": "Playback position",
|
|
1113
|
-
"aria-valuenow":
|
|
1113
|
+
"aria-valuenow": z,
|
|
1114
1114
|
"aria-valuemin": 0,
|
|
1115
1115
|
"aria-valuemax": 100,
|
|
1116
1116
|
tabIndex: 0,
|
|
1117
|
-
ref:
|
|
1117
|
+
ref: h,
|
|
1118
1118
|
className: "relative flex h-4 w-full cursor-pointer items-center",
|
|
1119
1119
|
onMouseDown: H,
|
|
1120
1120
|
onTouchStart: H,
|
|
1121
|
-
onClick: (
|
|
1122
|
-
onKeyDown: (
|
|
1123
|
-
|
|
1121
|
+
onClick: (u) => u.stopPropagation(),
|
|
1122
|
+
onKeyDown: (u) => {
|
|
1123
|
+
u.key === "ArrowRight" && E(Math.min(1, N + 0.05)), u.key === "ArrowLeft" && E(Math.max(0, N - 0.05));
|
|
1124
1124
|
},
|
|
1125
1125
|
children: /* @__PURE__ */ t("div", { className: "w-full overflow-hidden rounded-full bg-white/30 h-1", children: /* @__PURE__ */ t(
|
|
1126
1126
|
"div",
|
|
1127
1127
|
{
|
|
1128
1128
|
className: "h-full rounded-full bg-white",
|
|
1129
|
-
style: { width: `${
|
|
1129
|
+
style: { width: `${z}%` }
|
|
1130
1130
|
}
|
|
1131
1131
|
) })
|
|
1132
1132
|
}
|
|
@@ -1136,12 +1136,12 @@ const vn = (e) => {
|
|
|
1136
1136
|
"button",
|
|
1137
1137
|
{
|
|
1138
1138
|
type: "button",
|
|
1139
|
-
onClick: (
|
|
1140
|
-
|
|
1139
|
+
onClick: (u) => {
|
|
1140
|
+
u.stopPropagation(), x((C) => !C);
|
|
1141
1141
|
},
|
|
1142
1142
|
className: "shrink-0 text-white",
|
|
1143
|
-
"aria-label":
|
|
1144
|
-
children:
|
|
1143
|
+
"aria-label": w ? "Pause" : "Play",
|
|
1144
|
+
children: w ? /* @__PURE__ */ t(Us, { className: "size-5", weight: "fill" }) : /* @__PURE__ */ t(it, { className: "size-5 translate-x-px", weight: "fill" })
|
|
1145
1145
|
}
|
|
1146
1146
|
),
|
|
1147
1147
|
/* @__PURE__ */ d(
|
|
@@ -1149,30 +1149,30 @@ const vn = (e) => {
|
|
|
1149
1149
|
{
|
|
1150
1150
|
role: "slider",
|
|
1151
1151
|
"aria-label": "Playback position",
|
|
1152
|
-
"aria-valuenow":
|
|
1152
|
+
"aria-valuenow": z,
|
|
1153
1153
|
"aria-valuemin": 0,
|
|
1154
1154
|
"aria-valuemax": 100,
|
|
1155
1155
|
tabIndex: 0,
|
|
1156
|
-
ref:
|
|
1156
|
+
ref: h,
|
|
1157
1157
|
className: "relative flex h-4 w-full cursor-pointer items-center",
|
|
1158
1158
|
onMouseDown: H,
|
|
1159
1159
|
onTouchStart: H,
|
|
1160
|
-
onClick: (
|
|
1160
|
+
onClick: (u) => u.stopPropagation(),
|
|
1161
1161
|
onMouseEnter: () => $(!0),
|
|
1162
1162
|
onMouseLeave: () => $(!1),
|
|
1163
|
-
onKeyDown: (
|
|
1164
|
-
|
|
1163
|
+
onKeyDown: (u) => {
|
|
1164
|
+
u.key === "ArrowRight" && E(Math.min(1, N + 0.05)), u.key === "ArrowLeft" && E(Math.max(0, N - 0.05));
|
|
1165
1165
|
},
|
|
1166
1166
|
children: [
|
|
1167
1167
|
/* @__PURE__ */ t(
|
|
1168
1168
|
"div",
|
|
1169
1169
|
{
|
|
1170
|
-
className: `w-full overflow-hidden rounded-full bg-white/30 transition-all duration-200 ${
|
|
1170
|
+
className: `w-full overflow-hidden rounded-full bg-white/30 transition-all duration-200 ${T || S ? "h-1.5" : "h-1"}`,
|
|
1171
1171
|
children: /* @__PURE__ */ t(
|
|
1172
1172
|
"div",
|
|
1173
1173
|
{
|
|
1174
1174
|
className: "h-full rounded-full bg-white",
|
|
1175
|
-
style: { width: `${
|
|
1175
|
+
style: { width: `${z}%` }
|
|
1176
1176
|
}
|
|
1177
1177
|
)
|
|
1178
1178
|
}
|
|
@@ -1180,8 +1180,8 @@ const vn = (e) => {
|
|
|
1180
1180
|
/* @__PURE__ */ t(
|
|
1181
1181
|
"div",
|
|
1182
1182
|
{
|
|
1183
|
-
className: `absolute size-3 -translate-x-1/2 rounded-full bg-white shadow transition-[opacity,transform] duration-200 ${
|
|
1184
|
-
style: { left: `${
|
|
1183
|
+
className: `absolute size-3 -translate-x-1/2 rounded-full bg-white shadow transition-[opacity,transform] duration-200 ${T || S ? "scale-100 opacity-100" : "scale-0 opacity-0"}`,
|
|
1184
|
+
style: { left: `${z}%` }
|
|
1185
1185
|
}
|
|
1186
1186
|
)
|
|
1187
1187
|
]
|
|
@@ -1191,7 +1191,7 @@ const vn = (e) => {
|
|
|
1191
1191
|
]
|
|
1192
1192
|
}
|
|
1193
1193
|
);
|
|
1194
|
-
},
|
|
1194
|
+
}, ht = (e) => e === "dark" ? "size-12 text-white/20" : "size-12 text-black/20", En = (e) => e === "dark" ? "aspect-video overflow-hidden bg-white/10" : "aspect-video overflow-hidden bg-black/5", Dt = ({
|
|
1195
1195
|
mimeType: e,
|
|
1196
1196
|
sourceUrl: s,
|
|
1197
1197
|
thumbnailUrl: n,
|
|
@@ -1200,9 +1200,9 @@ const vn = (e) => {
|
|
|
1200
1200
|
mediaPlayerProps: l,
|
|
1201
1201
|
containedImage: i = !1
|
|
1202
1202
|
}) => {
|
|
1203
|
-
const c = _e(e), [f,
|
|
1203
|
+
const c = _e(e), [f, g] = O(!1);
|
|
1204
1204
|
return s && (c === "video" || c === "audio") ? /* @__PURE__ */ t(
|
|
1205
|
-
|
|
1205
|
+
Cn,
|
|
1206
1206
|
{
|
|
1207
1207
|
source: s,
|
|
1208
1208
|
mimeType: e,
|
|
@@ -1217,7 +1217,7 @@ const vn = (e) => {
|
|
|
1217
1217
|
alt: a ?? "",
|
|
1218
1218
|
className: `absolute inset-0 h-full w-full object-contain transition-opacity duration-300 ${f ? "opacity-100" : "opacity-0"}`,
|
|
1219
1219
|
draggable: !1,
|
|
1220
|
-
onLoad: () =>
|
|
1220
|
+
onLoad: () => g(!0)
|
|
1221
1221
|
}
|
|
1222
1222
|
) }) : /* @__PURE__ */ t(
|
|
1223
1223
|
"img",
|
|
@@ -1234,7 +1234,7 @@ const vn = (e) => {
|
|
|
1234
1234
|
alt: a ?? "",
|
|
1235
1235
|
className: `absolute inset-0 h-full w-full object-contain transition-opacity duration-300 ${f ? "opacity-100" : "opacity-0"}`,
|
|
1236
1236
|
draggable: !1,
|
|
1237
|
-
onLoad: () =>
|
|
1237
|
+
onLoad: () => g(!0)
|
|
1238
1238
|
}
|
|
1239
1239
|
) }) : /* @__PURE__ */ t(
|
|
1240
1240
|
"img",
|
|
@@ -1249,11 +1249,11 @@ const vn = (e) => {
|
|
|
1249
1249
|
{
|
|
1250
1250
|
className: `flex aspect-video w-full items-center justify-center ${o === "dark" ? "bg-white/10" : "bg-black/5"}`,
|
|
1251
1251
|
children: we(e, {
|
|
1252
|
-
className:
|
|
1252
|
+
className: ht(o),
|
|
1253
1253
|
weight: "regular"
|
|
1254
1254
|
})
|
|
1255
1255
|
}
|
|
1256
|
-
) : n ? /* @__PURE__ */ t("div", { className: `relative ${
|
|
1256
|
+
) : n ? /* @__PURE__ */ t("div", { className: `relative ${En(o)}`, children: /* @__PURE__ */ t(
|
|
1257
1257
|
"img",
|
|
1258
1258
|
{
|
|
1259
1259
|
src: n,
|
|
@@ -1266,12 +1266,12 @@ const vn = (e) => {
|
|
|
1266
1266
|
{
|
|
1267
1267
|
className: `flex aspect-video w-full items-center justify-center ${o === "dark" ? "bg-white/10" : "bg-black/5"}`,
|
|
1268
1268
|
children: we(e, {
|
|
1269
|
-
className:
|
|
1269
|
+
className: ht(o),
|
|
1270
1270
|
weight: "regular"
|
|
1271
1271
|
})
|
|
1272
1272
|
}
|
|
1273
1273
|
);
|
|
1274
|
-
},
|
|
1274
|
+
}, Rt = ({
|
|
1275
1275
|
variant: e,
|
|
1276
1276
|
thumbnail: s,
|
|
1277
1277
|
title: n,
|
|
@@ -1281,32 +1281,32 @@ const vn = (e) => {
|
|
|
1281
1281
|
statusBadge: i,
|
|
1282
1282
|
action: c,
|
|
1283
1283
|
topLeft: f,
|
|
1284
|
-
topRight:
|
|
1285
|
-
rootRef:
|
|
1286
|
-
"data-testid":
|
|
1284
|
+
topRight: g,
|
|
1285
|
+
rootRef: y,
|
|
1286
|
+
"data-testid": m
|
|
1287
1287
|
}) => {
|
|
1288
|
-
const
|
|
1288
|
+
const h = e === "dark", r = h ? n ?? a : n ?? "", b = h && !n;
|
|
1289
1289
|
return /* @__PURE__ */ d(
|
|
1290
1290
|
"div",
|
|
1291
1291
|
{
|
|
1292
|
-
ref:
|
|
1293
|
-
"data-testid":
|
|
1292
|
+
ref: y,
|
|
1293
|
+
"data-testid": m,
|
|
1294
1294
|
className: D(
|
|
1295
1295
|
"relative w-[280px] select-none overflow-hidden rounded-[24px] shadow-[0_0_0_1px_rgba(0,0,0,0.04),0_4px_8px_rgba(0,0,0,0.06)]",
|
|
1296
|
-
|
|
1296
|
+
h ? "bg-[#121110]" : "bg-white"
|
|
1297
1297
|
),
|
|
1298
1298
|
children: [
|
|
1299
1299
|
f ? /* @__PURE__ */ t("div", { className: "pointer-events-auto absolute left-3 top-3 z-50", children: f }) : null,
|
|
1300
|
-
|
|
1300
|
+
g ? /* @__PURE__ */ t("div", { className: "pointer-events-auto absolute right-3 top-3 z-50", children: g }) : null,
|
|
1301
1301
|
s,
|
|
1302
1302
|
/* @__PURE__ */ d("div", { className: "px-4 pb-3 pt-3", children: [
|
|
1303
1303
|
r.trim() !== "" && /* @__PURE__ */ t(
|
|
1304
1304
|
"p",
|
|
1305
1305
|
{
|
|
1306
1306
|
className: D("mb-0.5 truncate text-base font-medium", {
|
|
1307
|
-
"text-black": !
|
|
1308
|
-
"text-white/30":
|
|
1309
|
-
"text-white":
|
|
1307
|
+
"text-black": !h,
|
|
1308
|
+
"text-white/30": h && b,
|
|
1309
|
+
"text-white": h && !b
|
|
1310
1310
|
}),
|
|
1311
1311
|
children: r
|
|
1312
1312
|
}
|
|
@@ -1315,7 +1315,7 @@ const vn = (e) => {
|
|
|
1315
1315
|
we(o, {
|
|
1316
1316
|
className: D(
|
|
1317
1317
|
"size-5 shrink-0",
|
|
1318
|
-
|
|
1318
|
+
h ? "text-white/55" : "text-black/55"
|
|
1319
1319
|
),
|
|
1320
1320
|
weight: "regular"
|
|
1321
1321
|
}),
|
|
@@ -1324,7 +1324,7 @@ const vn = (e) => {
|
|
|
1324
1324
|
{
|
|
1325
1325
|
className: D(
|
|
1326
1326
|
"text-xs font-medium",
|
|
1327
|
-
|
|
1327
|
+
h ? "text-white/55" : "text-black/55"
|
|
1328
1328
|
),
|
|
1329
1329
|
children: l
|
|
1330
1330
|
}
|
|
@@ -1337,29 +1337,29 @@ const vn = (e) => {
|
|
|
1337
1337
|
}
|
|
1338
1338
|
);
|
|
1339
1339
|
};
|
|
1340
|
-
function
|
|
1340
|
+
function Lt(e) {
|
|
1341
1341
|
return e < 1024 ? `${e} B` : e < 1024 * 1024 ? `${(e / 1024).toFixed(1)} KB` : `${(e / (1024 * 1024)).toFixed(1)} MB`;
|
|
1342
1342
|
}
|
|
1343
|
-
function
|
|
1343
|
+
function ze(e) {
|
|
1344
1344
|
return `w-[280px] select-none overflow-hidden rounded-[24px] ${e ? "bg-[#121110]" : "bg-[#F3F3F1]"} shadow-[0_0_0_1px_rgba(0,0,0,0.04),0_4px_8px_rgba(0,0,0,0.06)]`;
|
|
1345
1345
|
}
|
|
1346
|
-
function
|
|
1346
|
+
function Sn(e) {
|
|
1347
1347
|
return e ? "bg-white/10" : "bg-black/5";
|
|
1348
1348
|
}
|
|
1349
|
-
function
|
|
1349
|
+
function In(e) {
|
|
1350
1350
|
return e ? "text-white" : "text-black";
|
|
1351
1351
|
}
|
|
1352
|
-
function
|
|
1352
|
+
function kn(e) {
|
|
1353
1353
|
return e ? "text-white/55" : "text-black/55";
|
|
1354
1354
|
}
|
|
1355
|
-
function
|
|
1355
|
+
function Tn(e) {
|
|
1356
1356
|
return e ? "text-white/40" : "text-black/40";
|
|
1357
1357
|
}
|
|
1358
|
-
function
|
|
1358
|
+
function Mn(e) {
|
|
1359
1359
|
return e ? "text-white/20" : "text-black/20";
|
|
1360
1360
|
}
|
|
1361
|
-
const
|
|
1362
|
-
const { title: n, text: a, image_url: o, og_scrape_url: l, title_link: i } = e, c = l ?? i, f = typeof c == "string" && c.trim() !== "" ? c : void 0,
|
|
1361
|
+
const Ue = ({ attachment: e, isMyMessage: s }) => {
|
|
1362
|
+
const { title: n, text: a, image_url: o, og_scrape_url: l, title_link: i } = e, c = l ?? i, f = typeof c == "string" && c.trim() !== "" ? c : void 0, g = /* @__PURE__ */ d(B.Fragment, { children: [
|
|
1363
1363
|
/* @__PURE__ */ t("div", { className: "p-2", children: o ? /* @__PURE__ */ t(
|
|
1364
1364
|
"img",
|
|
1365
1365
|
{
|
|
@@ -1370,26 +1370,26 @@ const Oe = ({ attachment: e, isMyMessage: s }) => {
|
|
|
1370
1370
|
) : /* @__PURE__ */ t(
|
|
1371
1371
|
"div",
|
|
1372
1372
|
{
|
|
1373
|
-
className: `aspect-video w-full rounded-[20px] ${
|
|
1374
|
-
children: /* @__PURE__ */ t(
|
|
1373
|
+
className: `aspect-video w-full rounded-[20px] ${Sn(s)} flex items-center justify-center`,
|
|
1374
|
+
children: /* @__PURE__ */ t(Bs, { className: `size-12 ${Mn(s)}` })
|
|
1375
1375
|
}
|
|
1376
1376
|
) }),
|
|
1377
1377
|
/* @__PURE__ */ d("div", { className: "px-3 pb-3", children: [
|
|
1378
|
-
n && /* @__PURE__ */ t("p", { className: `truncate text-[14px] font-medium leading-5 ${
|
|
1379
|
-
a && /* @__PURE__ */ t("p", { className: `truncate text-[12px] leading-4 ${
|
|
1380
|
-
f && /* @__PURE__ */ t("p", { className: `mt-1 truncate text-[12px] leading-4 ${
|
|
1378
|
+
n && /* @__PURE__ */ t("p", { className: `truncate text-[14px] font-medium leading-5 ${In(s)}`, children: n }),
|
|
1379
|
+
a && /* @__PURE__ */ t("p", { className: `truncate text-[12px] leading-4 ${kn(s)}`, children: a }),
|
|
1380
|
+
f && /* @__PURE__ */ t("p", { className: `mt-1 truncate text-[12px] leading-4 ${Tn(s)}`, children: f })
|
|
1381
1381
|
] })
|
|
1382
1382
|
] });
|
|
1383
|
-
return f ? /* @__PURE__ */ t("a", { href: f, target: "_blank", rel: "noopener noreferrer", className: "block no-underline", children:
|
|
1383
|
+
return f ? /* @__PURE__ */ t("a", { href: f, target: "_blank", rel: "noopener noreferrer", className: "block no-underline", children: g }) : /* @__PURE__ */ t("div", { className: "block", children: g });
|
|
1384
1384
|
};
|
|
1385
|
-
function
|
|
1385
|
+
function At(e) {
|
|
1386
1386
|
return e.type === "link" || !!e.og_scrape_url && !e.asset_url;
|
|
1387
1387
|
}
|
|
1388
|
-
function
|
|
1388
|
+
function Be(e) {
|
|
1389
1389
|
var s;
|
|
1390
|
-
return (s = e.attachments) == null ? void 0 : s.find(
|
|
1390
|
+
return (s = e.attachments) == null ? void 0 : s.find(At);
|
|
1391
1391
|
}
|
|
1392
|
-
async function
|
|
1392
|
+
async function Dn(e, s) {
|
|
1393
1393
|
let n;
|
|
1394
1394
|
try {
|
|
1395
1395
|
n = s ?? new URL(e).pathname.split("/").pop() ?? "download";
|
|
@@ -1401,7 +1401,7 @@ async function In(e, s) {
|
|
|
1401
1401
|
const o = await a.blob(), l = URL.createObjectURL(o), i = document.createElement("a");
|
|
1402
1402
|
i.href = l, i.download = n, i.style.display = "none", document.body.appendChild(i), i.click(), document.body.removeChild(i), URL.revokeObjectURL(l);
|
|
1403
1403
|
}
|
|
1404
|
-
const
|
|
1404
|
+
const Rn = ({
|
|
1405
1405
|
url: e,
|
|
1406
1406
|
filename: s
|
|
1407
1407
|
}) => {
|
|
@@ -1413,7 +1413,7 @@ const kn = ({
|
|
|
1413
1413
|
onClick: (l) => {
|
|
1414
1414
|
l.stopPropagation();
|
|
1415
1415
|
const i = window.open("", "_blank", "noopener,noreferrer");
|
|
1416
|
-
a(!0),
|
|
1416
|
+
a(!0), Dn(e, s).then(() => {
|
|
1417
1417
|
i == null || i.close();
|
|
1418
1418
|
}).catch(() => {
|
|
1419
1419
|
i && (i.location.href = e);
|
|
@@ -1421,44 +1421,44 @@ const kn = ({
|
|
|
1421
1421
|
},
|
|
1422
1422
|
disabled: n,
|
|
1423
1423
|
className: "mt-3 inline-flex h-10 w-full items-center justify-center gap-2 rounded-full bg-[#121110] px-4 text-sm font-medium leading-none text-white hover:bg-[#2a2928] disabled:opacity-70",
|
|
1424
|
-
children: n ? /* @__PURE__ */ t(
|
|
1425
|
-
/* @__PURE__ */ t(
|
|
1424
|
+
children: n ? /* @__PURE__ */ t(_t, { className: "size-4 animate-spin text-white", weight: "bold" }) : /* @__PURE__ */ d(B.Fragment, { children: [
|
|
1425
|
+
/* @__PURE__ */ t($s, { className: "size-4 text-white", weight: "bold" }),
|
|
1426
1426
|
"Download"
|
|
1427
1427
|
] })
|
|
1428
1428
|
}
|
|
1429
1429
|
);
|
|
1430
1430
|
};
|
|
1431
|
-
function
|
|
1432
|
-
var
|
|
1433
|
-
const s = (
|
|
1434
|
-
(
|
|
1435
|
-
), n = (
|
|
1436
|
-
(
|
|
1431
|
+
function $e(e) {
|
|
1432
|
+
var m, h, r, b;
|
|
1433
|
+
const s = (m = e.attachments) == null ? void 0 : m.find(
|
|
1434
|
+
(w) => w.type === "video" && w.asset_url
|
|
1435
|
+
), n = (h = e.attachments) == null ? void 0 : h.find(
|
|
1436
|
+
(w) => w.type === "image" && w.image_url
|
|
1437
1437
|
), a = (r = e.attachments) == null ? void 0 : r.find(
|
|
1438
|
-
(
|
|
1439
|
-
), o = (
|
|
1440
|
-
(
|
|
1438
|
+
(w) => w.type === "audio" && w.asset_url
|
|
1439
|
+
), o = (b = e.attachments) == null ? void 0 : b.find(
|
|
1440
|
+
(w) => w.type === "file" && w.asset_url
|
|
1441
1441
|
), l = s ?? n ?? a ?? o, i = (s == null ? void 0 : s.asset_url) ?? (n == null ? void 0 : n.image_url) ?? (a == null ? void 0 : a.asset_url) ?? (o == null ? void 0 : o.asset_url);
|
|
1442
1442
|
if (!i) return null;
|
|
1443
|
-
const c = (l == null ? void 0 : l.mime_type) ?? ((l == null ? void 0 : l.type) === "image" ? "image/jpeg" : (l == null ? void 0 : l.type) === "video" ? "video/mp4" : (l == null ? void 0 : l.type) === "audio" ? "audio/mpeg" : "application/octet-stream"), f = l == null ? void 0 : l.title,
|
|
1443
|
+
const c = (l == null ? void 0 : l.mime_type) ?? ((l == null ? void 0 : l.type) === "image" ? "image/jpeg" : (l == null ? void 0 : l.type) === "video" ? "video/mp4" : (l == null ? void 0 : l.type) === "audio" ? "audio/mpeg" : "application/octet-stream"), f = l == null ? void 0 : l.title, g = l == null ? void 0 : l.file_size, y = s == null ? void 0 : s.thumb_url;
|
|
1444
1444
|
return {
|
|
1445
1445
|
resolvedUrl: i,
|
|
1446
1446
|
resolvedType: c,
|
|
1447
1447
|
title: f,
|
|
1448
|
-
fileSize:
|
|
1449
|
-
thumbnailUrl:
|
|
1448
|
+
fileSize: g,
|
|
1449
|
+
thumbnailUrl: y
|
|
1450
1450
|
};
|
|
1451
1451
|
}
|
|
1452
|
-
const
|
|
1452
|
+
const Ft = ({
|
|
1453
1453
|
resolvedUrl: e,
|
|
1454
1454
|
resolvedType: s,
|
|
1455
1455
|
title: n,
|
|
1456
1456
|
fileSize: a,
|
|
1457
1457
|
thumbnailUrl: o
|
|
1458
1458
|
}) => {
|
|
1459
|
-
const l = a !== void 0 ?
|
|
1459
|
+
const l = a !== void 0 ? Lt(a) : void 0;
|
|
1460
1460
|
return /* @__PURE__ */ t(
|
|
1461
|
-
|
|
1461
|
+
Rt,
|
|
1462
1462
|
{
|
|
1463
1463
|
variant: "dark",
|
|
1464
1464
|
title: n,
|
|
@@ -1466,7 +1466,7 @@ const Lt = ({
|
|
|
1466
1466
|
mimeType: s,
|
|
1467
1467
|
detail: l,
|
|
1468
1468
|
thumbnail: /* @__PURE__ */ t(
|
|
1469
|
-
|
|
1469
|
+
Dt,
|
|
1470
1470
|
{
|
|
1471
1471
|
mimeType: s,
|
|
1472
1472
|
sourceUrl: e,
|
|
@@ -1477,23 +1477,23 @@ const Lt = ({
|
|
|
1477
1477
|
)
|
|
1478
1478
|
}
|
|
1479
1479
|
);
|
|
1480
|
-
},
|
|
1480
|
+
}, Ot = ({
|
|
1481
1481
|
resolvedUrl: e,
|
|
1482
1482
|
resolvedType: s,
|
|
1483
1483
|
title: n,
|
|
1484
1484
|
fileSize: a,
|
|
1485
1485
|
thumbnailUrl: o
|
|
1486
1486
|
}) => {
|
|
1487
|
-
const l = _e(s), i = a !== void 0 ?
|
|
1487
|
+
const l = _e(s), i = a !== void 0 ? Lt(a) : void 0;
|
|
1488
1488
|
return /* @__PURE__ */ t(
|
|
1489
|
-
|
|
1489
|
+
Rt,
|
|
1490
1490
|
{
|
|
1491
1491
|
variant: "light",
|
|
1492
1492
|
title: n,
|
|
1493
1493
|
mimeType: s,
|
|
1494
1494
|
detail: i,
|
|
1495
1495
|
thumbnail: /* @__PURE__ */ t(
|
|
1496
|
-
|
|
1496
|
+
Dt,
|
|
1497
1497
|
{
|
|
1498
1498
|
mimeType: s,
|
|
1499
1499
|
sourceUrl: e,
|
|
@@ -1503,14 +1503,14 @@ const Lt = ({
|
|
|
1503
1503
|
containedImage: l === "image" || l === "document"
|
|
1504
1504
|
}
|
|
1505
1505
|
),
|
|
1506
|
-
action: /* @__PURE__ */ t(
|
|
1506
|
+
action: /* @__PURE__ */ t(Rn, { url: e, filename: n })
|
|
1507
1507
|
}
|
|
1508
1508
|
);
|
|
1509
|
-
},
|
|
1509
|
+
}, Ln = ({
|
|
1510
1510
|
message: e,
|
|
1511
1511
|
isMyMessage: s = !1
|
|
1512
1512
|
}) => {
|
|
1513
|
-
const n =
|
|
1513
|
+
const n = Be(e), a = $e(e);
|
|
1514
1514
|
return !n && !a ? null : /* @__PURE__ */ d("div", { className: s ? "str-chat__message str-chat__message-simple str-chat__message--me str-chat__message-simple--me" : "str-chat__message str-chat__message-simple str-chat__message--other", children: [
|
|
1515
1515
|
!s && e.user && /* @__PURE__ */ t(
|
|
1516
1516
|
ae,
|
|
@@ -1531,40 +1531,40 @@ const Lt = ({
|
|
|
1531
1531
|
{
|
|
1532
1532
|
className: "str-chat__message-bubble",
|
|
1533
1533
|
style: { padding: 0, borderRadius: 0, overflow: "visible", background: "transparent" },
|
|
1534
|
-
children: n ? /* @__PURE__ */ t("div", { className:
|
|
1534
|
+
children: n ? /* @__PURE__ */ t("div", { className: ze(s), children: /* @__PURE__ */ t(Ue, { attachment: n, isMyMessage: s }) }) : s ? /* @__PURE__ */ t(Ft, { ...a }) : /* @__PURE__ */ t(Ot, { ...a })
|
|
1535
1535
|
}
|
|
1536
1536
|
) })
|
|
1537
1537
|
}
|
|
1538
1538
|
)
|
|
1539
1539
|
] });
|
|
1540
|
-
},
|
|
1540
|
+
}, An = ({
|
|
1541
1541
|
message: e
|
|
1542
1542
|
}) => {
|
|
1543
|
-
const s =
|
|
1543
|
+
const s = Be(e);
|
|
1544
1544
|
if (s)
|
|
1545
|
-
return /* @__PURE__ */ t("div", { className:
|
|
1546
|
-
const n =
|
|
1547
|
-
return n ? /* @__PURE__ */ t(
|
|
1548
|
-
},
|
|
1545
|
+
return /* @__PURE__ */ t("div", { className: ze(!0), children: /* @__PURE__ */ t(Ue, { attachment: s, isMyMessage: !0 }) });
|
|
1546
|
+
const n = $e(e);
|
|
1547
|
+
return n ? /* @__PURE__ */ t(Ft, { ...n }) : null;
|
|
1548
|
+
}, Fn = ({
|
|
1549
1549
|
message: e
|
|
1550
1550
|
}) => {
|
|
1551
|
-
const s =
|
|
1551
|
+
const s = Be(e);
|
|
1552
1552
|
if (s)
|
|
1553
|
-
return /* @__PURE__ */ t("div", { className:
|
|
1554
|
-
const n =
|
|
1555
|
-
return n ? /* @__PURE__ */ t(
|
|
1556
|
-
},
|
|
1557
|
-
Creator:
|
|
1558
|
-
Visitor:
|
|
1559
|
-
}),
|
|
1553
|
+
return /* @__PURE__ */ t("div", { className: ze(!1), children: /* @__PURE__ */ t(Ue, { attachment: s, isMyMessage: !1 }) });
|
|
1554
|
+
const n = $e(e);
|
|
1555
|
+
return n ? /* @__PURE__ */ t(Ot, { ...n }) : null;
|
|
1556
|
+
}, ya = Object.assign(Ln, {
|
|
1557
|
+
Creator: An,
|
|
1558
|
+
Visitor: Fn
|
|
1559
|
+
}), On = {
|
|
1560
1560
|
isUnlocking: () => !1
|
|
1561
|
-
},
|
|
1562
|
-
LockedAttachment:
|
|
1563
|
-
},
|
|
1564
|
-
function
|
|
1565
|
-
return
|
|
1561
|
+
}, Pn = {
|
|
1562
|
+
LockedAttachment: On
|
|
1563
|
+
}, Pt = Ae({}), _a = Pt.Provider;
|
|
1564
|
+
function zn(e) {
|
|
1565
|
+
return Fe(Pt)[e] ?? Pn[e];
|
|
1566
1566
|
}
|
|
1567
|
-
const
|
|
1567
|
+
const Un = ({
|
|
1568
1568
|
selected: e,
|
|
1569
1569
|
onVoteUp: s,
|
|
1570
1570
|
onVoteDown: n
|
|
@@ -1580,7 +1580,7 @@ const Fn = ({
|
|
|
1580
1580
|
"aria-label": "Good response",
|
|
1581
1581
|
"aria-pressed": e === "up",
|
|
1582
1582
|
"data-tooltip": "Good response",
|
|
1583
|
-
children: /* @__PURE__ */ t(
|
|
1583
|
+
children: /* @__PURE__ */ t(js, { size: 16, weight: e === "up" ? "fill" : "regular" })
|
|
1584
1584
|
}
|
|
1585
1585
|
),
|
|
1586
1586
|
/* @__PURE__ */ t(
|
|
@@ -1594,11 +1594,11 @@ const Fn = ({
|
|
|
1594
1594
|
"aria-label": "Bad response",
|
|
1595
1595
|
"aria-pressed": e === "down",
|
|
1596
1596
|
"data-tooltip": "Bad response",
|
|
1597
|
-
children: /* @__PURE__ */ t(
|
|
1597
|
+
children: /* @__PURE__ */ t(Gs, { size: 16, weight: e === "down" ? "fill" : "regular" })
|
|
1598
1598
|
}
|
|
1599
1599
|
)
|
|
1600
|
-
] }),
|
|
1601
|
-
var
|
|
1600
|
+
] }), Bn = (e) => {
|
|
1601
|
+
var je, Ge, Ve, He, Ye, qe, We, Xe, Ze, Je, Ke, Qe, et, tt;
|
|
1602
1602
|
const {
|
|
1603
1603
|
additionalMessageInputProps: s,
|
|
1604
1604
|
chatbotVotingEnabled: n,
|
|
@@ -1608,47 +1608,47 @@ const Fn = ({
|
|
|
1608
1608
|
groupedByUser: i,
|
|
1609
1609
|
handleAction: c,
|
|
1610
1610
|
handleOpenThread: f,
|
|
1611
|
-
handleRetry:
|
|
1612
|
-
highlighted:
|
|
1613
|
-
isMessageAIGenerated:
|
|
1614
|
-
isMyMessage:
|
|
1611
|
+
handleRetry: g,
|
|
1612
|
+
highlighted: y,
|
|
1613
|
+
isMessageAIGenerated: m,
|
|
1614
|
+
isMyMessage: h,
|
|
1615
1615
|
message: r,
|
|
1616
|
-
renderText:
|
|
1617
|
-
threadList:
|
|
1618
|
-
viewerLanguage:
|
|
1619
|
-
} = e, { client: N } =
|
|
1620
|
-
Attachment: A =
|
|
1621
|
-
EditMessageModal: V =
|
|
1622
|
-
MessageBlocked: R =
|
|
1623
|
-
MessageBouncePrompt: P =
|
|
1624
|
-
MessageDeleted: E =
|
|
1625
|
-
MessageIsThreadReplyInChannelButtonIndicator: H =
|
|
1626
|
-
MessageRepliesCountButton: Y =
|
|
1627
|
-
ReminderNotification: te =
|
|
1628
|
-
StreamedMessageText:
|
|
1629
|
-
PinIndicator:
|
|
1630
|
-
} =
|
|
1631
|
-
() =>
|
|
1632
|
-
[
|
|
1616
|
+
renderText: b,
|
|
1617
|
+
threadList: w,
|
|
1618
|
+
viewerLanguage: x
|
|
1619
|
+
} = e, { client: N } = Oe("CustomMessage"), { channel: p } = oe("CustomMessage"), { isUnlocking: S, onUnlockClick: I, onFetchSource: T, onDownloadClick: $ } = zn("LockedAttachment"), [k, M] = O(!1), j = Yt(r.id), { selected: _, voteUp: L, voteDown: v } = hn(r), {
|
|
1620
|
+
Attachment: A = qt,
|
|
1621
|
+
EditMessageModal: V = Wt,
|
|
1622
|
+
MessageBlocked: R = Xt,
|
|
1623
|
+
MessageBouncePrompt: P = Zt,
|
|
1624
|
+
MessageDeleted: E = Jt,
|
|
1625
|
+
MessageIsThreadReplyInChannelButtonIndicator: H = Kt,
|
|
1626
|
+
MessageRepliesCountButton: Y = Qt,
|
|
1627
|
+
ReminderNotification: te = es,
|
|
1628
|
+
StreamedMessageText: z = ts,
|
|
1629
|
+
PinIndicator: u
|
|
1630
|
+
} = xt("CustomMessage"), C = ss(r), U = ns(r), K = pe(
|
|
1631
|
+
() => m == null ? void 0 : m(r),
|
|
1632
|
+
[m, r]
|
|
1633
1633
|
), W = pe(() => {
|
|
1634
1634
|
const ue = r.attachments ?? [], ge = r.shared_location ? [r.shared_location, ...ue] : ue;
|
|
1635
1635
|
if (!ve(r)) return ge;
|
|
1636
|
-
const
|
|
1637
|
-
return
|
|
1636
|
+
const st = ge.filter((nt) => !("type" in nt) || !At(nt));
|
|
1637
|
+
return st.length === ge.length ? ge : st;
|
|
1638
1638
|
}, [r]), Q = pe(() => {
|
|
1639
|
-
const ue =
|
|
1639
|
+
const ue = St({ message: r, viewerLanguage: x });
|
|
1640
1640
|
return ue === r.text ? r : { ...r, text: ue };
|
|
1641
|
-
}, [r,
|
|
1642
|
-
if (
|
|
1641
|
+
}, [r, x]);
|
|
1642
|
+
if (as(r))
|
|
1643
1643
|
return null;
|
|
1644
1644
|
if (r.deleted_at || r.type === "deleted")
|
|
1645
1645
|
return /* @__PURE__ */ t(E, { message: r });
|
|
1646
|
-
if (
|
|
1646
|
+
if (rs(r))
|
|
1647
1647
|
return /* @__PURE__ */ t(R, {});
|
|
1648
|
-
const me = !
|
|
1648
|
+
const me = !w && !!r.reply_count, he = !w && r.show_in_channel && r.parent_id, re = r.status === "failed" && ((je = r.error) == null ? void 0 : je.status) !== 403, ee = is(r);
|
|
1649
1649
|
let se;
|
|
1650
|
-
re ? se = () =>
|
|
1651
|
-
const ie =
|
|
1650
|
+
re ? se = () => g(r) : ee && (se = () => M(!0));
|
|
1651
|
+
const ie = h(), Ne = D(
|
|
1652
1652
|
"str-chat__message str-chat__message-simple",
|
|
1653
1653
|
`str-chat__message--${r.type}`,
|
|
1654
1654
|
`str-chat__message--${r.status}`,
|
|
@@ -1656,16 +1656,16 @@ const Fn = ({
|
|
|
1656
1656
|
r.text ? "str-chat__message--has-text" : "has-no-text",
|
|
1657
1657
|
{
|
|
1658
1658
|
"str-chat__message--has-attachment": C,
|
|
1659
|
-
"str-chat__message--highlighted":
|
|
1659
|
+
"str-chat__message--highlighted": y,
|
|
1660
1660
|
"str-chat__message--pinned pinned-message": r.pinned,
|
|
1661
|
-
"str-chat__message--with-reactions":
|
|
1662
|
-
"str-chat__message-send-can-be-retried": (r == null ? void 0 : r.status) === "failed" && ((
|
|
1661
|
+
"str-chat__message--with-reactions": U,
|
|
1662
|
+
"str-chat__message-send-can-be-retried": (r == null ? void 0 : r.status) === "failed" && ((Ge = r == null ? void 0 : r.error) == null ? void 0 : Ge.status) !== 403,
|
|
1663
1663
|
"str-chat__message-with-thread-link": me || he,
|
|
1664
1664
|
"str-chat__virtual-message__wrapper--end": o,
|
|
1665
1665
|
"str-chat__virtual-message__wrapper--first": l,
|
|
1666
1666
|
"str-chat__virtual-message__wrapper--group": i
|
|
1667
1667
|
}
|
|
1668
|
-
), fe = r.poll_id && N.polls.fromState(r.poll_id), le =
|
|
1668
|
+
), fe = r.poll_id && N.polls.fromState(r.poll_id), le = rn(r), F = ve(r), X = an(r), Z = !!(W != null && W.length && !r.quoted_message), ne = F && ie && Z;
|
|
1669
1669
|
return /* @__PURE__ */ d(de, { children: [
|
|
1670
1670
|
a && /* @__PURE__ */ t(
|
|
1671
1671
|
V,
|
|
@@ -1674,15 +1674,15 @@ const Fn = ({
|
|
|
1674
1674
|
}
|
|
1675
1675
|
),
|
|
1676
1676
|
k && /* @__PURE__ */ t(
|
|
1677
|
-
|
|
1677
|
+
os,
|
|
1678
1678
|
{
|
|
1679
1679
|
MessageBouncePrompt: P,
|
|
1680
|
-
onClose: () =>
|
|
1680
|
+
onClose: () => M(!1),
|
|
1681
1681
|
open: k
|
|
1682
1682
|
}
|
|
1683
1683
|
),
|
|
1684
1684
|
/* @__PURE__ */ d("div", { className: Ne, children: [
|
|
1685
|
-
|
|
1685
|
+
u && /* @__PURE__ */ t(u, {}),
|
|
1686
1686
|
!!j && /* @__PURE__ */ t(te, { reminder: j }),
|
|
1687
1687
|
r.user && /* @__PURE__ */ t(
|
|
1688
1688
|
ae,
|
|
@@ -1715,54 +1715,54 @@ const Fn = ({
|
|
|
1715
1715
|
},
|
|
1716
1716
|
children: X ? /* @__PURE__ */ d("div", { className: "str-chat__message-bubble-wrapper", children: [
|
|
1717
1717
|
ie ? /* @__PURE__ */ t(
|
|
1718
|
-
|
|
1718
|
+
mt.Creator,
|
|
1719
1719
|
{
|
|
1720
|
-
title: (
|
|
1721
|
-
mimeType: (
|
|
1722
|
-
thumbnailUrl: (
|
|
1723
|
-
amountText: (
|
|
1724
|
-
detail: (
|
|
1725
|
-
paymentStatus: (
|
|
1720
|
+
title: (Ve = r.metadata) == null ? void 0 : Ve.attachment_title,
|
|
1721
|
+
mimeType: (He = r.metadata) == null ? void 0 : He.attachment_mime_type,
|
|
1722
|
+
thumbnailUrl: (Ye = r.metadata) == null ? void 0 : Ye.attachment_thumbnail,
|
|
1723
|
+
amountText: (qe = r.metadata) == null ? void 0 : qe.amount_text,
|
|
1724
|
+
detail: (We = r.metadata) == null ? void 0 : We.attachment_detail,
|
|
1725
|
+
paymentStatus: (Xe = r.metadata) == null ? void 0 : Xe.payment_status,
|
|
1726
1726
|
isUnlocking: S(r.id),
|
|
1727
|
-
onPreviewClick: () => I == null ? void 0 : I(r,
|
|
1728
|
-
onFetchSource: async () => await (
|
|
1727
|
+
onPreviewClick: () => I == null ? void 0 : I(r, p),
|
|
1728
|
+
onFetchSource: async () => await (T == null ? void 0 : T(r, p))
|
|
1729
1729
|
}
|
|
1730
1730
|
) : /* @__PURE__ */ t(
|
|
1731
|
-
|
|
1731
|
+
mt.Visitor,
|
|
1732
1732
|
{
|
|
1733
|
-
title: (
|
|
1734
|
-
mimeType: (
|
|
1735
|
-
thumbnailUrl: (
|
|
1736
|
-
amountText: (
|
|
1737
|
-
detail: (
|
|
1738
|
-
paymentStatus: (
|
|
1733
|
+
title: (Ze = r.metadata) == null ? void 0 : Ze.attachment_title,
|
|
1734
|
+
mimeType: (Je = r.metadata) == null ? void 0 : Je.attachment_mime_type,
|
|
1735
|
+
thumbnailUrl: (Ke = r.metadata) == null ? void 0 : Ke.attachment_thumbnail,
|
|
1736
|
+
amountText: (Qe = r.metadata) == null ? void 0 : Qe.amount_text,
|
|
1737
|
+
detail: (et = r.metadata) == null ? void 0 : et.attachment_detail,
|
|
1738
|
+
paymentStatus: (tt = r.metadata) == null ? void 0 : tt.payment_status,
|
|
1739
1739
|
isUnlocking: S(r.id),
|
|
1740
|
-
onUnlockClick: () => I == null ? void 0 : I(r,
|
|
1741
|
-
onFetchSource: async () => await (
|
|
1742
|
-
onDownloadClick: () => $ == null ? void 0 : $(r,
|
|
1740
|
+
onUnlockClick: () => I == null ? void 0 : I(r, p),
|
|
1741
|
+
onFetchSource: async () => await (T == null ? void 0 : T(r, p)),
|
|
1742
|
+
onDownloadClick: () => $ == null ? void 0 : $(r, p)
|
|
1743
1743
|
}
|
|
1744
1744
|
),
|
|
1745
1745
|
r.text && /* @__PURE__ */ t("div", { className: "str-chat__message-bubble", children: /* @__PURE__ */ t(
|
|
1746
|
-
|
|
1746
|
+
at,
|
|
1747
1747
|
{
|
|
1748
1748
|
message: Q,
|
|
1749
|
-
renderText:
|
|
1749
|
+
renderText: b
|
|
1750
1750
|
}
|
|
1751
1751
|
) })
|
|
1752
1752
|
] }) : le ? (
|
|
1753
1753
|
/* Tip-only messages render as a standalone bubble */
|
|
1754
|
-
/* @__PURE__ */ t(
|
|
1754
|
+
/* @__PURE__ */ t(Ie, { message: r, standalone: !0 })
|
|
1755
1755
|
) : /* @__PURE__ */ d("div", { className: "str-chat__message-bubble-wrapper", children: [
|
|
1756
1756
|
/* @__PURE__ */ d("div", { className: "str-chat__message-bubble", children: [
|
|
1757
1757
|
F && !ne && /* @__PURE__ */ t(
|
|
1758
|
-
|
|
1758
|
+
Ie,
|
|
1759
1759
|
{
|
|
1760
1760
|
message: r,
|
|
1761
1761
|
hasAttachment: Z,
|
|
1762
1762
|
isMyMessage: ie
|
|
1763
1763
|
}
|
|
1764
1764
|
),
|
|
1765
|
-
fe && /* @__PURE__ */ t(
|
|
1765
|
+
fe && /* @__PURE__ */ t(ls, { poll: fe }),
|
|
1766
1766
|
W != null && W.length && !r.quoted_message ? /* @__PURE__ */ t(
|
|
1767
1767
|
A,
|
|
1768
1768
|
{
|
|
@@ -1771,22 +1771,22 @@ const Fn = ({
|
|
|
1771
1771
|
}
|
|
1772
1772
|
) : null,
|
|
1773
1773
|
K ? /* @__PURE__ */ t(
|
|
1774
|
-
|
|
1774
|
+
z,
|
|
1775
1775
|
{
|
|
1776
1776
|
message: Q,
|
|
1777
|
-
renderText:
|
|
1777
|
+
renderText: b
|
|
1778
1778
|
}
|
|
1779
1779
|
) : /* @__PURE__ */ t(
|
|
1780
|
-
|
|
1780
|
+
at,
|
|
1781
1781
|
{
|
|
1782
1782
|
message: Q,
|
|
1783
|
-
renderText:
|
|
1783
|
+
renderText: b
|
|
1784
1784
|
}
|
|
1785
1785
|
),
|
|
1786
|
-
/* @__PURE__ */ t(
|
|
1786
|
+
/* @__PURE__ */ t(cs, {})
|
|
1787
1787
|
] }),
|
|
1788
1788
|
(!F || ne) && /* @__PURE__ */ t(
|
|
1789
|
-
|
|
1789
|
+
Ie,
|
|
1790
1790
|
{
|
|
1791
1791
|
message: r,
|
|
1792
1792
|
hasAttachment: Z,
|
|
@@ -1794,7 +1794,7 @@ const Fn = ({
|
|
|
1794
1794
|
}
|
|
1795
1795
|
),
|
|
1796
1796
|
n && F && /* @__PURE__ */ t(
|
|
1797
|
-
|
|
1797
|
+
Un,
|
|
1798
1798
|
{
|
|
1799
1799
|
selected: _,
|
|
1800
1800
|
onVoteUp: L,
|
|
@@ -1814,17 +1814,17 @@ const Fn = ({
|
|
|
1814
1814
|
he && /* @__PURE__ */ t(H, {})
|
|
1815
1815
|
] }, r.id)
|
|
1816
1816
|
] });
|
|
1817
|
-
},
|
|
1818
|
-
|
|
1819
|
-
(e, s) => e.chatbotVotingEnabled !== s.chatbotVotingEnabled || e.viewerLanguage !== s.viewerLanguage ? !1 :
|
|
1820
|
-
),
|
|
1821
|
-
const s =
|
|
1822
|
-
return /* @__PURE__ */ t(
|
|
1823
|
-
},
|
|
1817
|
+
}, $n = B.memo(
|
|
1818
|
+
Bn,
|
|
1819
|
+
(e, s) => e.chatbotVotingEnabled !== s.chatbotVotingEnabled || e.viewerLanguage !== s.viewerLanguage ? !1 : Ht(e, s)
|
|
1820
|
+
), jn = (e) => {
|
|
1821
|
+
const s = vt("CustomMessage");
|
|
1822
|
+
return /* @__PURE__ */ t($n, { ...s, ...e });
|
|
1823
|
+
}, Gn = (e) => ({
|
|
1824
1824
|
linkPreviews: Array.from(e.previews.values()).filter(
|
|
1825
|
-
(s) =>
|
|
1825
|
+
(s) => dt.previewIsLoaded(s) || dt.previewIsLoading(s)
|
|
1826
1826
|
)
|
|
1827
|
-
}),
|
|
1827
|
+
}), Vn = ({
|
|
1828
1828
|
link: e,
|
|
1829
1829
|
onDismiss: s
|
|
1830
1830
|
}) => {
|
|
@@ -1854,7 +1854,7 @@ const Fn = ({
|
|
|
1854
1854
|
},
|
|
1855
1855
|
className: "absolute right-4 top-4 flex size-6 items-center justify-center rounded-full border border-white/40 bg-white/70 backdrop-blur-2xl focus-ring",
|
|
1856
1856
|
"aria-label": "Close link preview",
|
|
1857
|
-
children: /* @__PURE__ */ t(
|
|
1857
|
+
children: /* @__PURE__ */ t(wt, { className: "size-4 text-black/90" })
|
|
1858
1858
|
}
|
|
1859
1859
|
),
|
|
1860
1860
|
/* @__PURE__ */ d("div", { className: "p-2", children: [
|
|
@@ -1864,22 +1864,22 @@ const Fn = ({
|
|
|
1864
1864
|
]
|
|
1865
1865
|
}
|
|
1866
1866
|
);
|
|
1867
|
-
},
|
|
1868
|
-
const { linkPreviewsManager: e } =
|
|
1867
|
+
}, Hn = () => {
|
|
1868
|
+
const { linkPreviewsManager: e } = ds(), { linkPreviews: s } = us(
|
|
1869
1869
|
e.state,
|
|
1870
|
-
|
|
1870
|
+
Gn
|
|
1871
1871
|
), n = (o) => {
|
|
1872
1872
|
e.dismissPreview(o);
|
|
1873
1873
|
};
|
|
1874
1874
|
return s.length > 0 ? /* @__PURE__ */ t("div", { className: "flex flex-col items-center w-full gap-2 mb-4", children: s.map((o) => /* @__PURE__ */ t(
|
|
1875
|
-
|
|
1875
|
+
Vn,
|
|
1876
1876
|
{
|
|
1877
1877
|
link: o,
|
|
1878
1878
|
onDismiss: n
|
|
1879
1879
|
},
|
|
1880
1880
|
o.og_scrape_url
|
|
1881
1881
|
)) }) : null;
|
|
1882
|
-
},
|
|
1882
|
+
}, Yn = ({ sendMessage: e, disabled: s, ...n }) => /* @__PURE__ */ t(
|
|
1883
1883
|
"button",
|
|
1884
1884
|
{
|
|
1885
1885
|
...n,
|
|
@@ -1887,22 +1887,22 @@ const Fn = ({
|
|
|
1887
1887
|
"aria-label": "Send",
|
|
1888
1888
|
disabled: s,
|
|
1889
1889
|
onClick: e,
|
|
1890
|
-
children: /* @__PURE__ */ t(
|
|
1890
|
+
children: /* @__PURE__ */ t(Vs, { weight: "bold", className: "size-4" })
|
|
1891
1891
|
}
|
|
1892
|
-
),
|
|
1892
|
+
), qn = () => {
|
|
1893
1893
|
var c;
|
|
1894
|
-
const { channel: e } = oe(), s = ((c = e == null ? void 0 : e.data) == null ? void 0 : c.frozen) === !0, { handleSubmit: n } =
|
|
1894
|
+
const { channel: e } = oe(), s = ((c = e == null ? void 0 : e.data) == null ? void 0 : c.frozen) === !0, { handleSubmit: n } = hs(), { SendButton: a } = xt(
|
|
1895
1895
|
"CustomMessageInput"
|
|
1896
|
-
), o = a ??
|
|
1896
|
+
), o = a ?? Yn, l = fs();
|
|
1897
1897
|
return /* @__PURE__ */ d(de, { children: [
|
|
1898
|
-
/* @__PURE__ */ t("div", { className: "left-container", children: /* @__PURE__ */ t(
|
|
1898
|
+
/* @__PURE__ */ t("div", { className: "left-container", children: /* @__PURE__ */ t(gs, {}) }),
|
|
1899
1899
|
/* @__PURE__ */ d("div", { className: "central-container min-w-0 w-full p-2 bg-white rounded-[1.5rem] shadow-[0_4px_16px_0_rgba(0,0,0,0.08),0_1px_2px_0_rgba(0,0,0,0.04),0_0_0_1px_rgba(0,0,0,0.04)]", children: [
|
|
1900
|
-
/* @__PURE__ */ t(
|
|
1901
|
-
/* @__PURE__ */ t(
|
|
1902
|
-
/* @__PURE__ */ t(
|
|
1900
|
+
/* @__PURE__ */ t(bs, {}),
|
|
1901
|
+
/* @__PURE__ */ t(Hn, {}),
|
|
1902
|
+
/* @__PURE__ */ t(ps, {}),
|
|
1903
1903
|
/* @__PURE__ */ d("div", { className: "flex", children: [
|
|
1904
1904
|
/* @__PURE__ */ t("div", { className: "w-full ml-2 mr-4 self-center leading-[0]", children: /* @__PURE__ */ t(
|
|
1905
|
-
|
|
1905
|
+
xs,
|
|
1906
1906
|
{
|
|
1907
1907
|
"aria-disabled": s || void 0,
|
|
1908
1908
|
className: "w-full resize-none outline-none leading-6",
|
|
@@ -1926,7 +1926,7 @@ const Fn = ({
|
|
|
1926
1926
|
] })
|
|
1927
1927
|
] })
|
|
1928
1928
|
] });
|
|
1929
|
-
},
|
|
1929
|
+
}, Wn = ({
|
|
1930
1930
|
renderActions: e
|
|
1931
1931
|
}) => {
|
|
1932
1932
|
var a;
|
|
@@ -1939,65 +1939,65 @@ const Fn = ({
|
|
|
1939
1939
|
className: "message-input flex items-center gap-2 p-4 aria-disabled:opacity-40",
|
|
1940
1940
|
children: [
|
|
1941
1941
|
e == null ? void 0 : e(),
|
|
1942
|
-
/* @__PURE__ */ t(
|
|
1942
|
+
/* @__PURE__ */ t(ms, { Input: qn })
|
|
1943
1943
|
]
|
|
1944
1944
|
}
|
|
1945
1945
|
);
|
|
1946
|
-
},
|
|
1946
|
+
}, Xn = [
|
|
1947
1947
|
"SYSTEM_DM_AGENT_PAUSED",
|
|
1948
1948
|
"SYSTEM_DM_AGENT_RESUMED"
|
|
1949
|
-
],
|
|
1949
|
+
], Zn = {
|
|
1950
1950
|
SYSTEM_DM_AGENT_PAUSED: "DM Agent has left the conversation",
|
|
1951
1951
|
SYSTEM_DM_AGENT_RESUMED: "DM Agent has rejoined the conversation"
|
|
1952
|
-
},
|
|
1952
|
+
}, Jn = [
|
|
1953
1953
|
"SYSTEM_AGE_SAFETY_BLOCKED"
|
|
1954
|
-
],
|
|
1954
|
+
], Kn = {
|
|
1955
1955
|
SYSTEM_AGE_SAFETY_BLOCKED: "This user isn’t able to reply because they don’t meet our age safety guidelines."
|
|
1956
|
-
},
|
|
1956
|
+
}, ke = "age safety guidelines.", Qn = "https://linktr.ee/s/about/contact", ft = (e) => Xn.includes(e), ea = (e) => Jn.includes(e), ta = (e) => {
|
|
1957
1957
|
var a;
|
|
1958
1958
|
const s = (a = e.metadata) == null ? void 0 : a.custom_type;
|
|
1959
|
-
if (
|
|
1959
|
+
if (ft(s))
|
|
1960
1960
|
return {
|
|
1961
1961
|
kind: "dm-agent",
|
|
1962
1962
|
type: s
|
|
1963
1963
|
};
|
|
1964
|
-
if (
|
|
1964
|
+
if (ea(s))
|
|
1965
1965
|
return {
|
|
1966
1966
|
kind: "age-safety",
|
|
1967
1967
|
type: s
|
|
1968
1968
|
};
|
|
1969
1969
|
const n = e.dm_agent_system_type;
|
|
1970
|
-
if (
|
|
1970
|
+
if (ft(n))
|
|
1971
1971
|
return {
|
|
1972
1972
|
kind: "dm-agent",
|
|
1973
1973
|
type: n
|
|
1974
1974
|
};
|
|
1975
|
-
},
|
|
1976
|
-
const s = e.indexOf(
|
|
1975
|
+
}, sa = (e) => {
|
|
1976
|
+
const s = e.indexOf(ke);
|
|
1977
1977
|
if (s === -1)
|
|
1978
1978
|
return e;
|
|
1979
|
-
const n = s +
|
|
1979
|
+
const n = s + ke.length;
|
|
1980
1980
|
return /* @__PURE__ */ d(de, { children: [
|
|
1981
1981
|
e.slice(0, s),
|
|
1982
1982
|
/* @__PURE__ */ t(
|
|
1983
1983
|
"a",
|
|
1984
1984
|
{
|
|
1985
|
-
href:
|
|
1985
|
+
href: Qn,
|
|
1986
1986
|
target: "_blank",
|
|
1987
1987
|
rel: "noopener noreferrer",
|
|
1988
1988
|
className: "mes-age-safety-system-message__emphasis font-medium text-inherit underline",
|
|
1989
|
-
children:
|
|
1989
|
+
children: ke
|
|
1990
1990
|
}
|
|
1991
1991
|
),
|
|
1992
1992
|
e.slice(n)
|
|
1993
1993
|
] });
|
|
1994
|
-
},
|
|
1994
|
+
}, na = (e) => {
|
|
1995
1995
|
var a, o;
|
|
1996
|
-
const s = e.message.hide_date === !0, n =
|
|
1996
|
+
const s = e.message.hide_date === !0, n = ta(
|
|
1997
1997
|
e.message
|
|
1998
1998
|
);
|
|
1999
1999
|
if ((n == null ? void 0 : n.kind) === "dm-agent") {
|
|
2000
|
-
const l = ((a = e.message.text) == null ? void 0 : a.trim()) ||
|
|
2000
|
+
const l = ((a = e.message.text) == null ? void 0 : a.trim()) || Zn[n.type];
|
|
2001
2001
|
return /* @__PURE__ */ d("div", { className: "str-chat__message--system", "data-testid": "message-system", children: [
|
|
2002
2002
|
/* @__PURE__ */ d(
|
|
2003
2003
|
"div",
|
|
@@ -2007,7 +2007,7 @@ const Fn = ({
|
|
|
2007
2007
|
"data-dm-agent-system-type": n.type,
|
|
2008
2008
|
children: [
|
|
2009
2009
|
/* @__PURE__ */ t(
|
|
2010
|
-
|
|
2010
|
+
De,
|
|
2011
2011
|
{
|
|
2012
2012
|
size: 16,
|
|
2013
2013
|
weight: "regular",
|
|
@@ -2023,7 +2023,7 @@ const Fn = ({
|
|
|
2023
2023
|
] });
|
|
2024
2024
|
}
|
|
2025
2025
|
if ((n == null ? void 0 : n.kind) === "age-safety") {
|
|
2026
|
-
const l = ((o = e.message.text) == null ? void 0 : o.trim()) ||
|
|
2026
|
+
const l = ((o = e.message.text) == null ? void 0 : o.trim()) || Kn[n.type];
|
|
2027
2027
|
return /* @__PURE__ */ d("div", { className: "str-chat__message--system", "data-testid": "message-system", children: [
|
|
2028
2028
|
/* @__PURE__ */ d(
|
|
2029
2029
|
"div",
|
|
@@ -2033,7 +2033,7 @@ const Fn = ({
|
|
|
2033
2033
|
"data-age-safety-system-type": n.type,
|
|
2034
2034
|
children: [
|
|
2035
2035
|
/* @__PURE__ */ t(
|
|
2036
|
-
|
|
2036
|
+
Hs,
|
|
2037
2037
|
{
|
|
2038
2038
|
size: 24,
|
|
2039
2039
|
weight: "duotone",
|
|
@@ -2042,7 +2042,7 @@ const Fn = ({
|
|
|
2042
2042
|
"data-testid": "age-safety-system-message-icon"
|
|
2043
2043
|
}
|
|
2044
2044
|
),
|
|
2045
|
-
/* @__PURE__ */ t("div", { className: "mes-age-safety-system-message__content min-w-0 flex-[1_0_0]", children: /* @__PURE__ */ t("p", { className: "m-0 text-balance text-left text-[12px] font-normal leading-4 tracking-[0.21px] text-[color:var(--text-warning-on-warning,#894b00)]", children:
|
|
2045
|
+
/* @__PURE__ */ t("div", { className: "mes-age-safety-system-message__content min-w-0 flex-[1_0_0]", children: /* @__PURE__ */ t("p", { className: "m-0 text-balance text-left text-[12px] font-normal leading-4 tracking-[0.21px] text-[color:var(--text-warning-on-warning,#894b00)]", children: sa(l) }) })
|
|
2046
2046
|
]
|
|
2047
2047
|
}
|
|
2048
2048
|
),
|
|
@@ -2057,7 +2057,7 @@ const Fn = ({
|
|
|
2057
2057
|
] }),
|
|
2058
2058
|
!s && /* @__PURE__ */ t(Ce, { message: e.message })
|
|
2059
2059
|
] });
|
|
2060
|
-
},
|
|
2060
|
+
}, zt = Ae(!1), Te = ({ cx: e, index: s }) => /* @__PURE__ */ t("circle", { cx: e, cy: "4", r: "3.9", fill: "#A0A0A0", children: /* @__PURE__ */ t(
|
|
2061
2061
|
"animateTransform",
|
|
2062
2062
|
{
|
|
2063
2063
|
attributeName: "transform",
|
|
@@ -2067,62 +2067,101 @@ const Fn = ({
|
|
|
2067
2067
|
begin: `${120 * s}ms`,
|
|
2068
2068
|
repeatCount: "indefinite"
|
|
2069
2069
|
}
|
|
2070
|
-
) }),
|
|
2071
|
-
|
|
2072
|
-
|
|
2070
|
+
) }), aa = /* @__PURE__ */ new Set([
|
|
2071
|
+
Ee.Thinking,
|
|
2072
|
+
Ee.Generating,
|
|
2073
|
+
Ee.ExternalSources
|
|
2074
|
+
]), ra = ({ threadList: e }) => {
|
|
2075
|
+
var b, w;
|
|
2076
|
+
const { channel: s, channelConfig: n, thread: a } = oe(), { client: o } = Oe(), { typing: l = {} } = vs(), { aiState: i } = ws(s), c = Fe(zt);
|
|
2077
|
+
if (!e && c && aa.has(i)) {
|
|
2078
|
+
const x = ia(s, (b = o.user) == null ? void 0 : b.id);
|
|
2079
|
+
return /* @__PURE__ */ t(
|
|
2080
|
+
gt,
|
|
2081
|
+
{
|
|
2082
|
+
avatarId: (x == null ? void 0 : x.id) ?? "ai-agent",
|
|
2083
|
+
avatarName: (x == null ? void 0 : x.name) ?? (x == null ? void 0 : x.id) ?? "Agent",
|
|
2084
|
+
avatarImage: x == null ? void 0 : x.image,
|
|
2085
|
+
testId: "typing-indicator-ai"
|
|
2086
|
+
}
|
|
2087
|
+
);
|
|
2088
|
+
}
|
|
2073
2089
|
if ((n == null ? void 0 : n.typing_events) === !1)
|
|
2074
2090
|
return null;
|
|
2075
|
-
const
|
|
2076
|
-
({ parent_id: x, user:
|
|
2077
|
-
var
|
|
2078
|
-
return (
|
|
2091
|
+
const g = e ? [] : Object.values(l).filter(
|
|
2092
|
+
({ parent_id: x, user: N }) => {
|
|
2093
|
+
var p;
|
|
2094
|
+
return (N == null ? void 0 : N.id) !== ((p = o.user) == null ? void 0 : p.id) && !x;
|
|
2079
2095
|
}
|
|
2080
|
-
),
|
|
2081
|
-
({ parent_id: x, user:
|
|
2082
|
-
var
|
|
2083
|
-
return (
|
|
2096
|
+
), y = e ? Object.values(l).filter(
|
|
2097
|
+
({ parent_id: x, user: N }) => {
|
|
2098
|
+
var p;
|
|
2099
|
+
return (N == null ? void 0 : N.id) !== ((p = o.user) == null ? void 0 : p.id) && x === (a == null ? void 0 : a.id);
|
|
2084
2100
|
}
|
|
2085
|
-
) : [],
|
|
2086
|
-
if (!
|
|
2101
|
+
) : [], m = e ? y : g;
|
|
2102
|
+
if (!m.length)
|
|
2087
2103
|
return null;
|
|
2088
|
-
const
|
|
2089
|
-
return /* @__PURE__ */
|
|
2090
|
-
|
|
2104
|
+
const h = (w = m[0]) == null ? void 0 : w.user, r = h != null && h.id && s.state.members[h.id] ? s.state.members[h.id].user : void 0;
|
|
2105
|
+
return /* @__PURE__ */ t(
|
|
2106
|
+
gt,
|
|
2091
2107
|
{
|
|
2092
|
-
|
|
2093
|
-
|
|
2094
|
-
|
|
2095
|
-
|
|
2096
|
-
/* @__PURE__ */ t("div", { className: "shrink-0", "aria-hidden": "true", children: /* @__PURE__ */ t(
|
|
2097
|
-
ae,
|
|
2098
|
-
{
|
|
2099
|
-
id: h,
|
|
2100
|
-
name: p,
|
|
2101
|
-
image: r,
|
|
2102
|
-
size: 24,
|
|
2103
|
-
shape: "circle"
|
|
2104
|
-
}
|
|
2105
|
-
) }),
|
|
2106
|
-
/* @__PURE__ */ t("div", { className: "px-4 py-3 rounded-lg bg-[#E9EAED] h-12 flex flex-col justify-end", children: /* @__PURE__ */ d(
|
|
2107
|
-
"svg",
|
|
2108
|
-
{
|
|
2109
|
-
"aria-hidden": "true",
|
|
2110
|
-
className: "block overflow-visible mb-[0.2rem]",
|
|
2111
|
-
viewBox: "0 0 32 8",
|
|
2112
|
-
width: "32",
|
|
2113
|
-
height: "8",
|
|
2114
|
-
overflow: "visible",
|
|
2115
|
-
children: [
|
|
2116
|
-
/* @__PURE__ */ t(ke, { cx: "4", index: 0 }),
|
|
2117
|
-
/* @__PURE__ */ t(ke, { cx: "16", index: 1 }),
|
|
2118
|
-
/* @__PURE__ */ t(ke, { cx: "28", index: 2 })
|
|
2119
|
-
]
|
|
2120
|
-
}
|
|
2121
|
-
) })
|
|
2122
|
-
]
|
|
2108
|
+
avatarId: (h == null ? void 0 : h.id) ?? (r == null ? void 0 : r.id) ?? "typing-user",
|
|
2109
|
+
avatarName: (h == null ? void 0 : h.name) ?? (r == null ? void 0 : r.name) ?? (h == null ? void 0 : h.id) ?? "Typing user",
|
|
2110
|
+
avatarImage: (h == null ? void 0 : h.image) ?? (r == null ? void 0 : r.image),
|
|
2111
|
+
testId: "typing-indicator"
|
|
2123
2112
|
}
|
|
2124
2113
|
);
|
|
2125
|
-
},
|
|
2114
|
+
}, gt = ({
|
|
2115
|
+
avatarId: e,
|
|
2116
|
+
avatarName: s,
|
|
2117
|
+
avatarImage: n,
|
|
2118
|
+
testId: a
|
|
2119
|
+
}) => /* @__PURE__ */ d(
|
|
2120
|
+
"div",
|
|
2121
|
+
{
|
|
2122
|
+
className: "str-chat__typing-indicator !items-end !bg-transparent",
|
|
2123
|
+
"data-testid": a,
|
|
2124
|
+
style: { insetInlineStart: 0, insetInlineEnd: "auto" },
|
|
2125
|
+
children: [
|
|
2126
|
+
/* @__PURE__ */ t("div", { className: "shrink-0", "aria-hidden": "true", children: /* @__PURE__ */ t(
|
|
2127
|
+
ae,
|
|
2128
|
+
{
|
|
2129
|
+
id: e,
|
|
2130
|
+
name: s,
|
|
2131
|
+
image: n ?? void 0,
|
|
2132
|
+
size: 24,
|
|
2133
|
+
shape: "circle"
|
|
2134
|
+
}
|
|
2135
|
+
) }),
|
|
2136
|
+
/* @__PURE__ */ t("div", { className: "px-4 py-3 rounded-lg bg-[#E9EAED] h-12 flex flex-col justify-end", children: /* @__PURE__ */ d(
|
|
2137
|
+
"svg",
|
|
2138
|
+
{
|
|
2139
|
+
"aria-hidden": "true",
|
|
2140
|
+
className: "block overflow-visible mb-[0.2rem]",
|
|
2141
|
+
viewBox: "0 0 32 8",
|
|
2142
|
+
width: "32",
|
|
2143
|
+
height: "8",
|
|
2144
|
+
overflow: "visible",
|
|
2145
|
+
children: [
|
|
2146
|
+
/* @__PURE__ */ t(Te, { cx: "4", index: 0 }),
|
|
2147
|
+
/* @__PURE__ */ t(Te, { cx: "16", index: 1 }),
|
|
2148
|
+
/* @__PURE__ */ t(Te, { cx: "28", index: 2 })
|
|
2149
|
+
]
|
|
2150
|
+
}
|
|
2151
|
+
) })
|
|
2152
|
+
]
|
|
2153
|
+
}
|
|
2154
|
+
);
|
|
2155
|
+
function ia(e, s) {
|
|
2156
|
+
var a;
|
|
2157
|
+
const n = ((a = e == null ? void 0 : e.state) == null ? void 0 : a.members) ?? {};
|
|
2158
|
+
for (const o of Object.values(n)) {
|
|
2159
|
+
const l = o == null ? void 0 : o.user;
|
|
2160
|
+
if (l && l.id !== s)
|
|
2161
|
+
return l;
|
|
2162
|
+
}
|
|
2163
|
+
}
|
|
2164
|
+
const oa = () => null, la = ({ className: e, message: s }) => /* @__PURE__ */ d(
|
|
2126
2165
|
"div",
|
|
2127
2166
|
{
|
|
2128
2167
|
className: D("flex items-center justify-center h-full", e),
|
|
@@ -2166,11 +2205,11 @@ const Fn = ({
|
|
|
2166
2205
|
]
|
|
2167
2206
|
}
|
|
2168
2207
|
), ye = B.memo(() => /* @__PURE__ */ t("div", { className: "messaging-loading-state flex items-center justify-center h-full", children: /* @__PURE__ */ d("div", { className: "flex items-center", children: [
|
|
2169
|
-
/* @__PURE__ */ t(
|
|
2208
|
+
/* @__PURE__ */ t(la, { className: "w-6 h-6" }),
|
|
2170
2209
|
/* @__PURE__ */ t("span", { className: "text-sm text-stone", children: "Loading messages" })
|
|
2171
2210
|
] }) }));
|
|
2172
2211
|
ye.displayName = "LoadingState";
|
|
2173
|
-
const ce = "size-10 rounded-full bg-[#F1F0EE] hover:bg-[#E5E4E1] flex items-center justify-center transition-colors duration-150 focus-ring",
|
|
2212
|
+
const ce = "size-10 rounded-full bg-[#F1F0EE] hover:bg-[#E5E4E1] flex items-center justify-center transition-colors duration-150 focus-ring", bt = "Replies instantly with AI assistant", ca = ({
|
|
2174
2213
|
onBack: e,
|
|
2175
2214
|
showBackButton: s,
|
|
2176
2215
|
onShowInfo: n,
|
|
@@ -2178,15 +2217,15 @@ const ce = "size-10 rounded-full bg-[#F1F0EE] hover:bg-[#E5E4E1] flex items-cent
|
|
|
2178
2217
|
showStarButton: o = !1,
|
|
2179
2218
|
dmAgentEnabled: l = !1
|
|
2180
2219
|
}) => {
|
|
2181
|
-
var
|
|
2220
|
+
var h, r, b, w, x;
|
|
2182
2221
|
const { channel: i } = oe(), c = B.useMemo(() => Object.values(i.state.members || {}).find(
|
|
2183
|
-
(
|
|
2222
|
+
(p) => {
|
|
2184
2223
|
var S;
|
|
2185
|
-
return ((S =
|
|
2224
|
+
return ((S = p.user) == null ? void 0 : S.id) && p.user.id !== i._client.userID;
|
|
2186
2225
|
}
|
|
2187
|
-
), [i._client.userID, i.state.members]), f = ((
|
|
2226
|
+
), [i._client.userID, i.state.members]), f = ((h = c == null ? void 0 : c.user) == null ? void 0 : h.name) || ((r = c == null ? void 0 : c.user) == null ? void 0 : r.id) || "Unknown member", g = (b = c == null ? void 0 : c.user) == null ? void 0 : b.image, y = Et(i), m = async () => {
|
|
2188
2227
|
try {
|
|
2189
|
-
|
|
2228
|
+
y ? await i.unpin() : await i.pin();
|
|
2190
2229
|
} catch (N) {
|
|
2191
2230
|
console.error(
|
|
2192
2231
|
"[CustomChannelHeader] Failed to update pinned status:",
|
|
@@ -2204,17 +2243,17 @@ const ce = "size-10 rounded-full bg-[#F1F0EE] hover:bg-[#E5E4E1] flex items-cent
|
|
|
2204
2243
|
}),
|
|
2205
2244
|
type: "button",
|
|
2206
2245
|
"aria-label": "Back to conversations",
|
|
2207
|
-
children: /* @__PURE__ */ t(
|
|
2246
|
+
children: /* @__PURE__ */ t(ot, { className: "size-5 text-black/90" })
|
|
2208
2247
|
}
|
|
2209
2248
|
) }),
|
|
2210
2249
|
/* @__PURE__ */ d("div", { className: "flex flex-col gap-1 items-center", children: [
|
|
2211
2250
|
/* @__PURE__ */ t(
|
|
2212
2251
|
ae,
|
|
2213
2252
|
{
|
|
2214
|
-
id: ((
|
|
2253
|
+
id: ((w = c == null ? void 0 : c.user) == null ? void 0 : w.id) || i.id || "unknown",
|
|
2215
2254
|
name: f,
|
|
2216
|
-
image:
|
|
2217
|
-
starred: o &&
|
|
2255
|
+
image: g,
|
|
2256
|
+
starred: o && y,
|
|
2218
2257
|
dmAgentEnabled: l,
|
|
2219
2258
|
size: 40
|
|
2220
2259
|
}
|
|
@@ -2228,13 +2267,13 @@ const ce = "size-10 rounded-full bg-[#F1F0EE] hover:bg-[#E5E4E1] flex items-cent
|
|
|
2228
2267
|
"aria-label": `View info for ${f}`,
|
|
2229
2268
|
children: [
|
|
2230
2269
|
f,
|
|
2231
|
-
/* @__PURE__ */ t(
|
|
2270
|
+
/* @__PURE__ */ t(lt, { className: "size-3 shrink-0" })
|
|
2232
2271
|
]
|
|
2233
2272
|
}
|
|
2234
2273
|
),
|
|
2235
2274
|
l && /* @__PURE__ */ d("div", { className: "flex items-center gap-1 text-[10px] leading-3 text-black/55", children: [
|
|
2236
|
-
/* @__PURE__ */ t(
|
|
2237
|
-
/* @__PURE__ */ t("span", { children:
|
|
2275
|
+
/* @__PURE__ */ t(De, { className: "size-3 shrink-0 text-black/55" }),
|
|
2276
|
+
/* @__PURE__ */ t("span", { children: bt })
|
|
2238
2277
|
] })
|
|
2239
2278
|
] }),
|
|
2240
2279
|
/* @__PURE__ */ d("div", { className: "flex justify-end items-center gap-2", children: [
|
|
@@ -2242,17 +2281,17 @@ const ce = "size-10 rounded-full bg-[#F1F0EE] hover:bg-[#E5E4E1] flex items-cent
|
|
|
2242
2281
|
"button",
|
|
2243
2282
|
{
|
|
2244
2283
|
className: ce,
|
|
2245
|
-
onClick:
|
|
2284
|
+
onClick: m,
|
|
2246
2285
|
type: "button",
|
|
2247
|
-
"aria-label":
|
|
2286
|
+
"aria-label": y ? "Unstar conversation" : "Star conversation",
|
|
2248
2287
|
children: /* @__PURE__ */ t(
|
|
2249
2288
|
Me,
|
|
2250
2289
|
{
|
|
2251
2290
|
className: D("size-5", {
|
|
2252
|
-
"text-yellow-600":
|
|
2253
|
-
"text-black/90": !
|
|
2291
|
+
"text-yellow-600": y,
|
|
2292
|
+
"text-black/90": !y
|
|
2254
2293
|
}),
|
|
2255
|
-
weight:
|
|
2294
|
+
weight: y ? "duotone" : "regular"
|
|
2256
2295
|
}
|
|
2257
2296
|
)
|
|
2258
2297
|
}
|
|
@@ -2264,7 +2303,7 @@ const ce = "size-10 rounded-full bg-[#F1F0EE] hover:bg-[#E5E4E1] flex items-cent
|
|
|
2264
2303
|
onClick: n,
|
|
2265
2304
|
type: "button",
|
|
2266
2305
|
"aria-label": "Show info",
|
|
2267
|
-
children: /* @__PURE__ */ t(
|
|
2306
|
+
children: /* @__PURE__ */ t(ct, { className: "size-5 text-black/90" })
|
|
2268
2307
|
}
|
|
2269
2308
|
)
|
|
2270
2309
|
] })
|
|
@@ -2278,16 +2317,16 @@ const ce = "size-10 rounded-full bg-[#F1F0EE] hover:bg-[#E5E4E1] flex items-cent
|
|
|
2278
2317
|
onClick: e,
|
|
2279
2318
|
className: ce,
|
|
2280
2319
|
"aria-label": "Back to conversations",
|
|
2281
|
-
children: /* @__PURE__ */ t(
|
|
2320
|
+
children: /* @__PURE__ */ t(ot, { className: "size-5 text-black/90" })
|
|
2282
2321
|
}
|
|
2283
2322
|
),
|
|
2284
2323
|
/* @__PURE__ */ t(
|
|
2285
2324
|
ae,
|
|
2286
2325
|
{
|
|
2287
|
-
id: ((
|
|
2326
|
+
id: ((x = c == null ? void 0 : c.user) == null ? void 0 : x.id) || i.id || "unknown",
|
|
2288
2327
|
name: f,
|
|
2289
|
-
image:
|
|
2290
|
-
starred: o &&
|
|
2328
|
+
image: g,
|
|
2329
|
+
starred: o && y,
|
|
2291
2330
|
dmAgentEnabled: l,
|
|
2292
2331
|
size: 40
|
|
2293
2332
|
}
|
|
@@ -2302,13 +2341,13 @@ const ce = "size-10 rounded-full bg-[#F1F0EE] hover:bg-[#E5E4E1] flex items-cent
|
|
|
2302
2341
|
"aria-label": `View info for ${f}`,
|
|
2303
2342
|
children: [
|
|
2304
2343
|
/* @__PURE__ */ t("span", { className: "truncate", children: f }),
|
|
2305
|
-
/* @__PURE__ */ t(
|
|
2344
|
+
/* @__PURE__ */ t(lt, { className: "size-4 shrink-0" })
|
|
2306
2345
|
]
|
|
2307
2346
|
}
|
|
2308
2347
|
) : /* @__PURE__ */ t("h1", { className: "font-medium text-black/90 truncate", children: f }),
|
|
2309
2348
|
l && /* @__PURE__ */ d("div", { className: "mt-0.5 flex items-center gap-1 text-[10px] leading-3 text-black/55", children: [
|
|
2310
|
-
/* @__PURE__ */ t(
|
|
2311
|
-
/* @__PURE__ */ t("span", { className: "truncate", children:
|
|
2349
|
+
/* @__PURE__ */ t(De, { className: "size-3 shrink-0 text-black/55" }),
|
|
2350
|
+
/* @__PURE__ */ t("span", { className: "truncate", children: bt })
|
|
2312
2351
|
] })
|
|
2313
2352
|
] })
|
|
2314
2353
|
] }),
|
|
@@ -2317,17 +2356,17 @@ const ce = "size-10 rounded-full bg-[#F1F0EE] hover:bg-[#E5E4E1] flex items-cent
|
|
|
2317
2356
|
"button",
|
|
2318
2357
|
{
|
|
2319
2358
|
className: ce,
|
|
2320
|
-
onClick:
|
|
2359
|
+
onClick: m,
|
|
2321
2360
|
type: "button",
|
|
2322
|
-
"aria-label":
|
|
2361
|
+
"aria-label": y ? "Unstar conversation" : "Star conversation",
|
|
2323
2362
|
children: /* @__PURE__ */ t(
|
|
2324
2363
|
Me,
|
|
2325
2364
|
{
|
|
2326
2365
|
className: D("size-5", {
|
|
2327
|
-
"text-yellow-600":
|
|
2328
|
-
"text-black/90": !
|
|
2366
|
+
"text-yellow-600": y,
|
|
2367
|
+
"text-black/90": !y
|
|
2329
2368
|
}),
|
|
2330
|
-
weight:
|
|
2369
|
+
weight: y ? "duotone" : "regular"
|
|
2331
2370
|
}
|
|
2332
2371
|
)
|
|
2333
2372
|
}
|
|
@@ -2339,13 +2378,13 @@ const ce = "size-10 rounded-full bg-[#F1F0EE] hover:bg-[#E5E4E1] flex items-cent
|
|
|
2339
2378
|
onClick: n,
|
|
2340
2379
|
type: "button",
|
|
2341
2380
|
"aria-label": "Show info",
|
|
2342
|
-
children: /* @__PURE__ */ t(
|
|
2381
|
+
children: /* @__PURE__ */ t(ct, { className: "size-5 text-black/90" })
|
|
2343
2382
|
}
|
|
2344
2383
|
)
|
|
2345
2384
|
] })
|
|
2346
2385
|
] })
|
|
2347
2386
|
] });
|
|
2348
|
-
},
|
|
2387
|
+
}, da = ({
|
|
2349
2388
|
onBack: e,
|
|
2350
2389
|
showBackButton: s,
|
|
2351
2390
|
renderMessageInputActions: n,
|
|
@@ -2355,32 +2394,32 @@ const ce = "size-10 rounded-full bg-[#F1F0EE] hover:bg-[#E5E4E1] flex items-cent
|
|
|
2355
2394
|
showDeleteConversation: i = !0,
|
|
2356
2395
|
onDeleteConversationClick: c,
|
|
2357
2396
|
onBlockParticipantClick: f,
|
|
2358
|
-
onReportParticipantClick:
|
|
2359
|
-
showStarButton:
|
|
2360
|
-
chatbotVotingEnabled:
|
|
2361
|
-
renderChannelBanner:
|
|
2397
|
+
onReportParticipantClick: g,
|
|
2398
|
+
showStarButton: y = !1,
|
|
2399
|
+
chatbotVotingEnabled: m = !1,
|
|
2400
|
+
renderChannelBanner: h,
|
|
2362
2401
|
customProfileContent: r,
|
|
2363
|
-
customChannelActions:
|
|
2364
|
-
renderMessage:
|
|
2365
|
-
dmAgentEnabled:
|
|
2402
|
+
customChannelActions: b,
|
|
2403
|
+
renderMessage: w,
|
|
2404
|
+
dmAgentEnabled: x = !1,
|
|
2366
2405
|
viewerLanguage: N
|
|
2367
2406
|
}) => {
|
|
2368
2407
|
var A, V;
|
|
2369
|
-
const { channel:
|
|
2408
|
+
const { channel: p } = oe(), S = J(null), I = B.useMemo(() => Object.values(p.state.members || {}).find(
|
|
2370
2409
|
(P) => {
|
|
2371
2410
|
var E;
|
|
2372
|
-
return ((E = P.user) == null ? void 0 : E.id) && P.user.id !==
|
|
2411
|
+
return ((E = P.user) == null ? void 0 : E.id) && P.user.id !== p._client.userID;
|
|
2373
2412
|
}
|
|
2374
|
-
), [
|
|
2413
|
+
), [p._client.userID, p.state.members]), T = B.useMemo(() => Object.values(p.state.members || {}).find((P) => {
|
|
2375
2414
|
var E;
|
|
2376
|
-
return ((E = P.user) == null ? void 0 : E.id) ===
|
|
2377
|
-
}), [
|
|
2378
|
-
const R =
|
|
2415
|
+
return ((E = P.user) == null ? void 0 : E.id) === p._client.userID;
|
|
2416
|
+
}), [p._client.userID, p.state.members]), $ = ((A = T == null ? void 0 : T.user) == null ? void 0 : A.is_account) ?? (T == null ? void 0 : T.is_account), k = ((V = I == null ? void 0 : I.user) == null ? void 0 : V.is_account) ?? (I == null ? void 0 : I.is_account), M = x && $ === !1 && k === !0, j = B.useMemo(() => {
|
|
2417
|
+
const R = p.data ?? {};
|
|
2379
2418
|
if (R.followerStatus)
|
|
2380
2419
|
return String(R.followerStatus);
|
|
2381
2420
|
if (R.isFollower !== void 0)
|
|
2382
2421
|
return R.isFollower ? "Subscribed to you" : "Not subscribed";
|
|
2383
|
-
}, [
|
|
2422
|
+
}, [p.data]), _ = G(() => {
|
|
2384
2423
|
var R;
|
|
2385
2424
|
(R = S.current) == null || R.showModal();
|
|
2386
2425
|
}, []), L = G(() => {
|
|
@@ -2388,68 +2427,68 @@ const ce = "size-10 rounded-full bg-[#F1F0EE] hover:bg-[#E5E4E1] flex items-cent
|
|
|
2388
2427
|
(R = S.current) == null || R.close();
|
|
2389
2428
|
}, []), v = G(
|
|
2390
2429
|
(R) => {
|
|
2391
|
-
const { message: P } =
|
|
2392
|
-
|
|
2430
|
+
const { message: P } = vt("ChannelView"), E = /* @__PURE__ */ t(
|
|
2431
|
+
jn,
|
|
2393
2432
|
{
|
|
2394
2433
|
...R,
|
|
2395
|
-
chatbotVotingEnabled:
|
|
2434
|
+
chatbotVotingEnabled: m,
|
|
2396
2435
|
viewerLanguage: N
|
|
2397
2436
|
}
|
|
2398
2437
|
);
|
|
2399
|
-
return !
|
|
2438
|
+
return !w || !P ? E : w(E, P);
|
|
2400
2439
|
},
|
|
2401
|
-
[
|
|
2440
|
+
[m, w, N]
|
|
2402
2441
|
);
|
|
2403
2442
|
return /* @__PURE__ */ d(de, { children: [
|
|
2404
|
-
/* @__PURE__ */ t(
|
|
2443
|
+
/* @__PURE__ */ t(_s, { overrides: { Message: v }, children: /* @__PURE__ */ d(Ns, { children: [
|
|
2405
2444
|
/* @__PURE__ */ t("div", { className: "p-4", children: /* @__PURE__ */ t(
|
|
2406
|
-
|
|
2445
|
+
ca,
|
|
2407
2446
|
{
|
|
2408
2447
|
onBack: e,
|
|
2409
2448
|
showBackButton: s,
|
|
2410
2449
|
onShowInfo: _,
|
|
2411
2450
|
canShowInfo: !!I,
|
|
2412
|
-
showStarButton:
|
|
2413
|
-
dmAgentEnabled:
|
|
2451
|
+
showStarButton: y,
|
|
2452
|
+
dmAgentEnabled: M
|
|
2414
2453
|
}
|
|
2415
2454
|
) }),
|
|
2416
|
-
|
|
2455
|
+
h == null ? void 0 : h(),
|
|
2417
2456
|
/* @__PURE__ */ t("div", { className: "flex-1 overflow-hidden relative", children: /* @__PURE__ */ t(
|
|
2418
|
-
|
|
2457
|
+
Cs,
|
|
2419
2458
|
{
|
|
2420
2459
|
hideDeletedMessages: !0,
|
|
2421
2460
|
hideNewMessageSeparator: !1,
|
|
2422
2461
|
messageActions: void 0
|
|
2423
2462
|
}
|
|
2424
2463
|
) }),
|
|
2425
|
-
a == null ? void 0 : a(
|
|
2464
|
+
a == null ? void 0 : a(p),
|
|
2426
2465
|
/* @__PURE__ */ t(
|
|
2427
|
-
|
|
2466
|
+
Wn,
|
|
2428
2467
|
{
|
|
2429
|
-
renderActions: () => n == null ? void 0 : n(
|
|
2468
|
+
renderActions: () => n == null ? void 0 : n(p)
|
|
2430
2469
|
}
|
|
2431
2470
|
)
|
|
2432
2471
|
] }) }),
|
|
2433
2472
|
/* @__PURE__ */ t(
|
|
2434
|
-
|
|
2473
|
+
dn,
|
|
2435
2474
|
{
|
|
2436
2475
|
dialogRef: S,
|
|
2437
2476
|
onClose: L,
|
|
2438
2477
|
participant: I,
|
|
2439
|
-
channel:
|
|
2478
|
+
channel: p,
|
|
2440
2479
|
followerStatusLabel: j,
|
|
2441
2480
|
onLeaveConversation: o,
|
|
2442
2481
|
onBlockParticipant: l,
|
|
2443
2482
|
showDeleteConversation: i,
|
|
2444
2483
|
onDeleteConversationClick: c,
|
|
2445
2484
|
onBlockParticipantClick: f,
|
|
2446
|
-
onReportParticipantClick:
|
|
2485
|
+
onReportParticipantClick: g,
|
|
2447
2486
|
customProfileContent: r,
|
|
2448
|
-
customChannelActions:
|
|
2487
|
+
customChannelActions: b
|
|
2449
2488
|
}
|
|
2450
2489
|
)
|
|
2451
2490
|
] });
|
|
2452
|
-
},
|
|
2491
|
+
}, Ut = B.memo(
|
|
2453
2492
|
({
|
|
2454
2493
|
channel: e,
|
|
2455
2494
|
onBack: s,
|
|
@@ -2459,42 +2498,42 @@ const ce = "size-10 rounded-full bg-[#F1F0EE] hover:bg-[#E5E4E1] flex items-cent
|
|
|
2459
2498
|
onLeaveConversation: l,
|
|
2460
2499
|
onBlockParticipant: i,
|
|
2461
2500
|
className: c,
|
|
2462
|
-
CustomChannelEmptyState: f =
|
|
2463
|
-
showDeleteConversation:
|
|
2464
|
-
onDeleteConversationClick:
|
|
2465
|
-
onBlockParticipantClick:
|
|
2466
|
-
onReportParticipantClick:
|
|
2501
|
+
CustomChannelEmptyState: f = oa,
|
|
2502
|
+
showDeleteConversation: g = !0,
|
|
2503
|
+
onDeleteConversationClick: y,
|
|
2504
|
+
onBlockParticipantClick: m,
|
|
2505
|
+
onReportParticipantClick: h,
|
|
2467
2506
|
dmAgentEnabled: r,
|
|
2468
|
-
messageMetadata:
|
|
2469
|
-
onMessageSent:
|
|
2470
|
-
showStarButton:
|
|
2507
|
+
messageMetadata: b,
|
|
2508
|
+
onMessageSent: w,
|
|
2509
|
+
showStarButton: x = !1,
|
|
2471
2510
|
chatbotVotingEnabled: N = !1,
|
|
2472
|
-
renderChannelBanner:
|
|
2511
|
+
renderChannelBanner: p,
|
|
2473
2512
|
customProfileContent: S,
|
|
2474
2513
|
customChannelActions: I,
|
|
2475
|
-
renderMessage:
|
|
2514
|
+
renderMessage: T,
|
|
2476
2515
|
sendButton: $,
|
|
2477
2516
|
viewerLanguage: k
|
|
2478
2517
|
}) => {
|
|
2479
|
-
const
|
|
2518
|
+
const M = G(
|
|
2480
2519
|
async (j, _, L) => {
|
|
2481
2520
|
var E;
|
|
2482
2521
|
const v = ((E = e.data) == null ? void 0 : E.chatbot_paused) === !0, A = r && !v, V = {
|
|
2483
2522
|
..._,
|
|
2484
2523
|
...A && { silent: !0 },
|
|
2485
|
-
...
|
|
2524
|
+
...b && {
|
|
2486
2525
|
metadata: {
|
|
2487
2526
|
..._.metadata ?? {},
|
|
2488
|
-
...
|
|
2527
|
+
...b
|
|
2489
2528
|
}
|
|
2490
2529
|
}
|
|
2491
2530
|
}, R = {
|
|
2492
2531
|
...L,
|
|
2493
2532
|
...A && { skip_push: !0 }
|
|
2494
2533
|
}, P = await e.sendMessage(V, R);
|
|
2495
|
-
return
|
|
2534
|
+
return w == null || w(P), P;
|
|
2496
2535
|
},
|
|
2497
|
-
[e, r,
|
|
2536
|
+
[e, r, b, w]
|
|
2498
2537
|
);
|
|
2499
2538
|
return /* @__PURE__ */ t(
|
|
2500
2539
|
"div",
|
|
@@ -2503,19 +2542,19 @@ const ce = "size-10 rounded-full bg-[#F1F0EE] hover:bg-[#E5E4E1] flex items-cent
|
|
|
2503
2542
|
"messaging-channel-view h-full flex flex-col",
|
|
2504
2543
|
c
|
|
2505
2544
|
),
|
|
2506
|
-
children: /* @__PURE__ */ t(
|
|
2507
|
-
|
|
2545
|
+
children: /* @__PURE__ */ t(zt.Provider, { value: r ?? !1, children: /* @__PURE__ */ t(
|
|
2546
|
+
ys,
|
|
2508
2547
|
{
|
|
2509
2548
|
channel: e,
|
|
2510
|
-
MessageSystem:
|
|
2549
|
+
MessageSystem: na,
|
|
2511
2550
|
EmptyStateIndicator: f,
|
|
2512
2551
|
LoadingIndicator: ye,
|
|
2513
|
-
DateSeparator:
|
|
2514
|
-
TypingIndicator:
|
|
2515
|
-
doSendMessageRequest:
|
|
2552
|
+
DateSeparator: un,
|
|
2553
|
+
TypingIndicator: ra,
|
|
2554
|
+
doSendMessageRequest: M,
|
|
2516
2555
|
...$ ? { SendButton: $ } : {},
|
|
2517
2556
|
children: /* @__PURE__ */ t(
|
|
2518
|
-
|
|
2557
|
+
da,
|
|
2519
2558
|
{
|
|
2520
2559
|
onBack: s,
|
|
2521
2560
|
showBackButton: n,
|
|
@@ -2524,28 +2563,28 @@ const ce = "size-10 rounded-full bg-[#F1F0EE] hover:bg-[#E5E4E1] flex items-cent
|
|
|
2524
2563
|
onLeaveConversation: l,
|
|
2525
2564
|
onBlockParticipant: i,
|
|
2526
2565
|
CustomChannelEmptyState: f,
|
|
2527
|
-
showDeleteConversation:
|
|
2528
|
-
onDeleteConversationClick:
|
|
2529
|
-
onBlockParticipantClick:
|
|
2530
|
-
onReportParticipantClick:
|
|
2531
|
-
showStarButton:
|
|
2566
|
+
showDeleteConversation: g,
|
|
2567
|
+
onDeleteConversationClick: y,
|
|
2568
|
+
onBlockParticipantClick: m,
|
|
2569
|
+
onReportParticipantClick: h,
|
|
2570
|
+
showStarButton: x,
|
|
2532
2571
|
dmAgentEnabled: r,
|
|
2533
2572
|
chatbotVotingEnabled: N,
|
|
2534
|
-
renderChannelBanner:
|
|
2573
|
+
renderChannelBanner: p,
|
|
2535
2574
|
customProfileContent: S,
|
|
2536
2575
|
customChannelActions: I,
|
|
2537
|
-
renderMessage:
|
|
2576
|
+
renderMessage: T,
|
|
2538
2577
|
viewerLanguage: k
|
|
2539
2578
|
}
|
|
2540
2579
|
)
|
|
2541
2580
|
}
|
|
2542
|
-
)
|
|
2581
|
+
) })
|
|
2543
2582
|
}
|
|
2544
2583
|
);
|
|
2545
2584
|
}
|
|
2546
2585
|
);
|
|
2547
|
-
|
|
2548
|
-
const
|
|
2586
|
+
Ut.displayName = "ChannelView";
|
|
2587
|
+
const ua = ({ className: e }) => /* @__PURE__ */ d(
|
|
2549
2588
|
"svg",
|
|
2550
2589
|
{
|
|
2551
2590
|
width: "140",
|
|
@@ -2679,16 +2718,16 @@ const ra = ({ className: e }) => /* @__PURE__ */ d(
|
|
|
2679
2718
|
] })
|
|
2680
2719
|
]
|
|
2681
2720
|
}
|
|
2682
|
-
),
|
|
2721
|
+
), Bt = B.memo(
|
|
2683
2722
|
({ hasChannels: e, channelsLoaded: s }) => /* @__PURE__ */ t("div", { className: "messaging-empty-state flex items-center justify-center h-full p-8 text-balance", children: /* @__PURE__ */ d("div", { className: "flex flex-col items-center max-w-sm text-center", children: [
|
|
2684
|
-
/* @__PURE__ */ t(
|
|
2723
|
+
/* @__PURE__ */ t(ua, {}),
|
|
2685
2724
|
s && !e && /* @__PURE__ */ d("div", { className: "mt-8", children: [
|
|
2686
2725
|
/* @__PURE__ */ t("h2", { className: "font-medium text-black text-[18px] mb-2", children: "Your inbox is empty" }),
|
|
2687
2726
|
/* @__PURE__ */ t("p", { className: "text-[#676B5F] text-sm mb-6", children: "Share with your followers to start receiving messages" })
|
|
2688
2727
|
] })
|
|
2689
2728
|
] }) })
|
|
2690
2729
|
);
|
|
2691
|
-
|
|
2730
|
+
Bt.displayName = "EmptyState";
|
|
2692
2731
|
const xe = B.memo(({ message: e, onBack: s }) => /* @__PURE__ */ t("div", { className: "messaging-error-state flex items-center justify-center h-full p-8", children: /* @__PURE__ */ d("div", { className: "text-center max-w-sm", children: [
|
|
2693
2732
|
/* @__PURE__ */ t("div", { className: "w-24 h-24 bg-danger-alt/20 rounded-full flex items-center justify-center mx-auto mb-6", children: /* @__PURE__ */ t("span", { className: "text-4xl", children: "⚠️" }) }),
|
|
2694
2733
|
/* @__PURE__ */ t("h2", { className: "font-semibold text-charcoal mb-2", children: "Oops!" }),
|
|
@@ -2704,7 +2743,7 @@ const xe = B.memo(({ message: e, onBack: s }) => /* @__PURE__ */ t("div", { clas
|
|
|
2704
2743
|
)
|
|
2705
2744
|
] }) }));
|
|
2706
2745
|
xe.displayName = "ErrorState";
|
|
2707
|
-
const
|
|
2746
|
+
const Na = ({
|
|
2708
2747
|
capabilities: e = {},
|
|
2709
2748
|
className: s,
|
|
2710
2749
|
renderMessageInputActions: n,
|
|
@@ -2714,22 +2753,22 @@ const pa = ({
|
|
|
2714
2753
|
initialParticipantData: i,
|
|
2715
2754
|
CustomChannelEmptyState: c,
|
|
2716
2755
|
showChannelList: f = !0,
|
|
2717
|
-
filters:
|
|
2718
|
-
channelRenderFilterFn:
|
|
2719
|
-
channelListCustomEmptyStateIndicator:
|
|
2720
|
-
onDeleteConversationClick:
|
|
2756
|
+
filters: g,
|
|
2757
|
+
channelRenderFilterFn: y,
|
|
2758
|
+
channelListCustomEmptyStateIndicator: m,
|
|
2759
|
+
onDeleteConversationClick: h,
|
|
2721
2760
|
onBlockParticipantClick: r,
|
|
2722
|
-
onReportParticipantClick:
|
|
2723
|
-
dmAgentEnabled:
|
|
2724
|
-
messageMetadata:
|
|
2761
|
+
onReportParticipantClick: b,
|
|
2762
|
+
dmAgentEnabled: w,
|
|
2763
|
+
messageMetadata: x,
|
|
2725
2764
|
onMessageSent: N,
|
|
2726
|
-
showStarButton:
|
|
2765
|
+
showStarButton: p = !1,
|
|
2727
2766
|
chatbotVotingEnabled: S = !1,
|
|
2728
2767
|
viewerLanguage: I,
|
|
2729
|
-
renderMessagePreview:
|
|
2768
|
+
renderMessagePreview: T,
|
|
2730
2769
|
renderChannelBanner: $,
|
|
2731
2770
|
customProfileContent: k,
|
|
2732
|
-
customChannelActions:
|
|
2771
|
+
customChannelActions: M,
|
|
2733
2772
|
renderMessage: j,
|
|
2734
2773
|
sendButton: _
|
|
2735
2774
|
}) => {
|
|
@@ -2741,7 +2780,7 @@ const pa = ({
|
|
|
2741
2780
|
error: R,
|
|
2742
2781
|
refreshConnection: P,
|
|
2743
2782
|
debug: E
|
|
2744
|
-
} =
|
|
2783
|
+
} = Ys(), [H, Y] = O(null), [te, z] = O(!1), [u, C] = O(!1), [U, K] = O(!1), [W, Q] = O(null), { showDeleteConversation: me = !0 } = e, he = B.useMemo(() => {
|
|
2745
2784
|
const F = v == null ? void 0 : v.userID;
|
|
2746
2785
|
return {
|
|
2747
2786
|
...{
|
|
@@ -2752,9 +2791,9 @@ const pa = ({
|
|
|
2752
2791
|
hidden: !1
|
|
2753
2792
|
}
|
|
2754
2793
|
},
|
|
2755
|
-
...
|
|
2794
|
+
...g
|
|
2756
2795
|
};
|
|
2757
|
-
}, [
|
|
2796
|
+
}, [g, v == null ? void 0 : v.userID]), re = J(null), ee = G(async () => {
|
|
2758
2797
|
if (!v || !A) return;
|
|
2759
2798
|
const F = v.userID;
|
|
2760
2799
|
if (F)
|
|
@@ -2768,7 +2807,7 @@ const pa = ({
|
|
|
2768
2807
|
{},
|
|
2769
2808
|
{ limit: 100 }
|
|
2770
2809
|
);
|
|
2771
|
-
|
|
2810
|
+
z(X.length > 0), C(!0), re.current = F, E && console.log("[MessagingShell] Channels synced successfully:", {
|
|
2772
2811
|
channelCount: X.length
|
|
2773
2812
|
});
|
|
2774
2813
|
} catch (X) {
|
|
@@ -2852,8 +2891,8 @@ const pa = ({
|
|
|
2852
2891
|
},
|
|
2853
2892
|
[o]
|
|
2854
2893
|
), ie = G(() => {
|
|
2855
|
-
|
|
2856
|
-
}, [
|
|
2894
|
+
U || Y(null);
|
|
2895
|
+
}, [U]), Ne = G(
|
|
2857
2896
|
async (F) => {
|
|
2858
2897
|
E && console.log("[MessagingShell] Leaving conversation:", F.id), Y(null), K(!1), re.current = null, await ee();
|
|
2859
2898
|
},
|
|
@@ -2884,22 +2923,22 @@ const pa = ({
|
|
|
2884
2923
|
className: D(
|
|
2885
2924
|
"messaging-channel-list-sidebar min-h-0 min-w-0 lg:flex lg:flex-col",
|
|
2886
2925
|
{
|
|
2887
|
-
"!hidden": f === !1 ||
|
|
2926
|
+
"!hidden": f === !1 || U,
|
|
2888
2927
|
// Hide on mobile when channel selected, show on desktop with consistent wide width
|
|
2889
|
-
"hidden lg:flex lg:flex-1 lg:max-w-2xl": f !== !1 && !
|
|
2928
|
+
"hidden lg:flex lg:flex-1 lg:max-w-2xl": f !== !1 && !U && le,
|
|
2890
2929
|
// Show on mobile when no channel selected, use same wide width on desktop
|
|
2891
|
-
"flex flex-col w-full lg:flex-1 lg:max-w-2xl": f !== !1 && !
|
|
2930
|
+
"flex flex-col w-full lg:flex-1 lg:max-w-2xl": f !== !1 && !U && !le
|
|
2892
2931
|
}
|
|
2893
2932
|
),
|
|
2894
2933
|
children: /* @__PURE__ */ t(
|
|
2895
|
-
|
|
2934
|
+
Tt,
|
|
2896
2935
|
{
|
|
2897
2936
|
onChannelSelect: se,
|
|
2898
2937
|
selectedChannel: H || void 0,
|
|
2899
2938
|
filters: he,
|
|
2900
|
-
channelRenderFilterFn:
|
|
2901
|
-
customEmptyStateIndicator:
|
|
2902
|
-
renderMessagePreview:
|
|
2939
|
+
channelRenderFilterFn: y,
|
|
2940
|
+
customEmptyStateIndicator: m,
|
|
2941
|
+
renderMessagePreview: T,
|
|
2903
2942
|
viewerLanguage: I
|
|
2904
2943
|
}
|
|
2905
2944
|
)
|
|
@@ -2912,17 +2951,17 @@ const pa = ({
|
|
|
2912
2951
|
"messaging-conversation-view flex-1 flex-col min-w-0 min-h-0",
|
|
2913
2952
|
{
|
|
2914
2953
|
// In direct conversation mode (or waiting for it), always show (full width)
|
|
2915
|
-
flex:
|
|
2954
|
+
flex: U || le || l,
|
|
2916
2955
|
// Normal mode: hide on mobile when no channel selected
|
|
2917
|
-
"hidden lg:flex": !
|
|
2956
|
+
"hidden lg:flex": !U && !le && !l
|
|
2918
2957
|
}
|
|
2919
2958
|
),
|
|
2920
2959
|
children: H ? /* @__PURE__ */ t("div", { className: "flex-1 min-h-0 flex flex-col", children: /* @__PURE__ */ t(
|
|
2921
|
-
|
|
2960
|
+
Ut,
|
|
2922
2961
|
{
|
|
2923
2962
|
channel: H,
|
|
2924
2963
|
onBack: ie,
|
|
2925
|
-
showBackButton: !
|
|
2964
|
+
showBackButton: !U,
|
|
2926
2965
|
renderMessageInputActions: n,
|
|
2927
2966
|
renderConversationFooter: a,
|
|
2928
2967
|
renderChannelBanner: $,
|
|
@@ -2930,17 +2969,17 @@ const pa = ({
|
|
|
2930
2969
|
onBlockParticipant: fe,
|
|
2931
2970
|
CustomChannelEmptyState: c,
|
|
2932
2971
|
showDeleteConversation: me,
|
|
2933
|
-
onDeleteConversationClick:
|
|
2972
|
+
onDeleteConversationClick: h,
|
|
2934
2973
|
onBlockParticipantClick: r,
|
|
2935
|
-
onReportParticipantClick:
|
|
2936
|
-
dmAgentEnabled:
|
|
2937
|
-
messageMetadata:
|
|
2974
|
+
onReportParticipantClick: b,
|
|
2975
|
+
dmAgentEnabled: w,
|
|
2976
|
+
messageMetadata: x,
|
|
2938
2977
|
onMessageSent: N,
|
|
2939
|
-
showStarButton:
|
|
2978
|
+
showStarButton: p,
|
|
2940
2979
|
chatbotVotingEnabled: S,
|
|
2941
2980
|
viewerLanguage: I,
|
|
2942
2981
|
customProfileContent: k,
|
|
2943
|
-
customChannelActions:
|
|
2982
|
+
customChannelActions: M,
|
|
2944
2983
|
renderMessage: j,
|
|
2945
2984
|
sendButton: _
|
|
2946
2985
|
},
|
|
@@ -2949,10 +2988,10 @@ const pa = ({
|
|
|
2949
2988
|
// Show loading while creating/loading direct conversation channel
|
|
2950
2989
|
/* @__PURE__ */ t(ye, {})
|
|
2951
2990
|
) : /* @__PURE__ */ t(
|
|
2952
|
-
|
|
2991
|
+
Bt,
|
|
2953
2992
|
{
|
|
2954
2993
|
hasChannels: te,
|
|
2955
|
-
channelsLoaded:
|
|
2994
|
+
channelsLoaded: u
|
|
2956
2995
|
}
|
|
2957
2996
|
)
|
|
2958
2997
|
}
|
|
@@ -2960,7 +2999,7 @@ const pa = ({
|
|
|
2960
2999
|
] })
|
|
2961
3000
|
}
|
|
2962
3001
|
);
|
|
2963
|
-
},
|
|
3002
|
+
}, ma = ({
|
|
2964
3003
|
question: e,
|
|
2965
3004
|
onClick: s,
|
|
2966
3005
|
loading: n = !1,
|
|
@@ -2982,7 +3021,7 @@ const pa = ({
|
|
|
2982
3021
|
),
|
|
2983
3022
|
children: e
|
|
2984
3023
|
}
|
|
2985
|
-
),
|
|
3024
|
+
), Ca = ({
|
|
2986
3025
|
faqs: e,
|
|
2987
3026
|
onFaqClick: s,
|
|
2988
3027
|
loadingFaqId: n,
|
|
@@ -2991,7 +3030,7 @@ const pa = ({
|
|
|
2991
3030
|
avatarImage: l,
|
|
2992
3031
|
avatarName: i
|
|
2993
3032
|
}) => {
|
|
2994
|
-
const c = e.filter((f) => f.enabled).sort((f,
|
|
3033
|
+
const c = e.filter((f) => f.enabled).sort((f, g) => (f.order ?? 0) - (g.order ?? 0));
|
|
2995
3034
|
return c.length === 0 ? null : /* @__PURE__ */ t("div", { className: o, children: /* @__PURE__ */ d("div", { className: "flex gap-3 items-end", children: [
|
|
2996
3035
|
(l || i) && /* @__PURE__ */ t("div", { className: "flex-none", children: /* @__PURE__ */ t(
|
|
2997
3036
|
ae,
|
|
@@ -3011,7 +3050,7 @@ const pa = ({
|
|
|
3011
3050
|
children: [
|
|
3012
3051
|
a && /* @__PURE__ */ t("p", { className: "text-md text-charcoal mb-4", children: a }),
|
|
3013
3052
|
c.map((f) => /* @__PURE__ */ t(
|
|
3014
|
-
|
|
3053
|
+
ma,
|
|
3015
3054
|
{
|
|
3016
3055
|
question: f.question,
|
|
3017
3056
|
onClick: () => s(f.id),
|
|
@@ -3025,29 +3064,29 @@ const pa = ({
|
|
|
3025
3064
|
] }) });
|
|
3026
3065
|
};
|
|
3027
3066
|
export {
|
|
3028
|
-
|
|
3029
|
-
|
|
3030
|
-
|
|
3031
|
-
|
|
3032
|
-
|
|
3033
|
-
|
|
3067
|
+
Rt as A,
|
|
3068
|
+
oa as C,
|
|
3069
|
+
Ca as F,
|
|
3070
|
+
mt as L,
|
|
3071
|
+
ya as M,
|
|
3072
|
+
Dt as a,
|
|
3034
3073
|
be as b,
|
|
3035
3074
|
ae as c,
|
|
3036
|
-
|
|
3037
|
-
|
|
3038
|
-
|
|
3039
|
-
|
|
3040
|
-
|
|
3041
|
-
|
|
3042
|
-
|
|
3043
|
-
|
|
3044
|
-
|
|
3045
|
-
|
|
3046
|
-
|
|
3047
|
-
|
|
3048
|
-
|
|
3049
|
-
|
|
3050
|
-
|
|
3051
|
-
|
|
3075
|
+
Tt as d,
|
|
3076
|
+
Ut as e,
|
|
3077
|
+
_a as f,
|
|
3078
|
+
ma as g,
|
|
3079
|
+
Un as h,
|
|
3080
|
+
wa as i,
|
|
3081
|
+
Na as j,
|
|
3082
|
+
Js as k,
|
|
3083
|
+
St as l,
|
|
3084
|
+
At as m,
|
|
3085
|
+
Ks as n,
|
|
3086
|
+
$e as o,
|
|
3087
|
+
hn as p,
|
|
3088
|
+
Ys as q,
|
|
3089
|
+
Be as r,
|
|
3090
|
+
zn as u
|
|
3052
3091
|
};
|
|
3053
|
-
//# sourceMappingURL=index-
|
|
3092
|
+
//# sourceMappingURL=index-Bex7eg3v.js.map
|