@linktr.ee/messaging-react 1.12.6 → 1.12.7
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/index.js +223 -223
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/components/ChannelList/CustomChannelPreview.tsx +13 -5
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { jsx as e, jsxs as
|
|
1
|
+
import { jsx as e, jsxs as o, Fragment as ve } from "react/jsx-runtime";
|
|
2
2
|
import p from "classnames";
|
|
3
|
-
import U, { createContext as Pe, useContext as Oe, useCallback as
|
|
3
|
+
import U, { createContext as Pe, useContext as Oe, useCallback as M, useState as y, useRef as z, useEffect as G } from "react";
|
|
4
4
|
import { StreamChatService as je } from "@linktr.ee/messaging-core";
|
|
5
5
|
import { Chat as Ae, ChannelList as ze, useMessageComposer as Be, useStateStore as $e, MessageInput as Ge, useMessageInputContext as He, useMessageComposerHasSendableData as Ve, SimpleAttachmentSelector as We, QuotedMessagePreview as Ze, AttachmentPreviewList as qe, TextareaComposer as Ye, MessageTimestamp as Je, Channel as Qe, useChannelStateContext as we, Window as Xe, MessageList as Ke } from "stream-chat-react";
|
|
6
6
|
import { XIcon as me, ArrowUpIcon as es, ArrowLeftIcon as fe, DotsThreeIcon as ge, SpinnerGapIcon as re, SignOutIcon as ss, ProhibitInsetIcon as xe, FlagIcon as ts, MagnifyingGlassIcon as ns, ChatCircleDotsIcon as Ne } from "@phosphor-icons/react";
|
|
@@ -15,19 +15,19 @@ const ye = Pe({
|
|
|
15
15
|
refreshConnection: async () => {
|
|
16
16
|
},
|
|
17
17
|
debug: !1
|
|
18
|
-
}), oe = () => Oe(ye),
|
|
18
|
+
}), oe = () => Oe(ye), _s = ({
|
|
19
19
|
children: t,
|
|
20
20
|
user: s,
|
|
21
21
|
serviceConfig: n,
|
|
22
22
|
apiKey: r,
|
|
23
23
|
capabilities: a = {},
|
|
24
|
-
debug:
|
|
24
|
+
debug: i = !1
|
|
25
25
|
}) => {
|
|
26
|
-
const l =
|
|
26
|
+
const l = M(
|
|
27
27
|
(u, ...b) => {
|
|
28
|
-
|
|
28
|
+
i && console.log(`🔥 [MessagingProvider] ${u}`, ...b);
|
|
29
29
|
},
|
|
30
|
-
[
|
|
30
|
+
[i]
|
|
31
31
|
);
|
|
32
32
|
l("🔄 RENDER START", {
|
|
33
33
|
userId: s == null ? void 0 : s.id,
|
|
@@ -35,7 +35,7 @@ const ye = Pe({
|
|
|
35
35
|
serviceConfig: !!n,
|
|
36
36
|
capabilities: Object.keys(a)
|
|
37
37
|
});
|
|
38
|
-
const [m, h] = y(null), [g, w] = y(null), [f, S] = y(!1), [
|
|
38
|
+
const [m, h] = y(null), [g, w] = y(null), [f, S] = y(!1), [_, v] = y(!1), [c, N] = y(null), E = z(!1), I = z({
|
|
39
39
|
userId: s == null ? void 0 : s.id,
|
|
40
40
|
apiKey: r,
|
|
41
41
|
serviceConfig: n,
|
|
@@ -82,7 +82,7 @@ const ye = Pe({
|
|
|
82
82
|
const b = new je({
|
|
83
83
|
...n,
|
|
84
84
|
apiKey: r,
|
|
85
|
-
debug:
|
|
85
|
+
debug: i
|
|
86
86
|
});
|
|
87
87
|
return h(b), l("✅ SERVICE SET", {
|
|
88
88
|
renderCount: u,
|
|
@@ -93,7 +93,7 @@ const ye = Pe({
|
|
|
93
93
|
reason: "Effect cleanup"
|
|
94
94
|
}), b.disconnectUser().catch(console.error);
|
|
95
95
|
};
|
|
96
|
-
}, [r, n,
|
|
96
|
+
}, [r, n, i, l]);
|
|
97
97
|
const x = z(null);
|
|
98
98
|
G(() => {
|
|
99
99
|
var b, B;
|
|
@@ -153,7 +153,7 @@ const ye = Pe({
|
|
|
153
153
|
isConnected: f
|
|
154
154
|
});
|
|
155
155
|
}), [m, f, l]);
|
|
156
|
-
const R =
|
|
156
|
+
const R = M(async () => {
|
|
157
157
|
if (l("🔄 REFRESH CONNECTION CALLED", {
|
|
158
158
|
hasService: !!m,
|
|
159
159
|
hasUser: !!s
|
|
@@ -175,38 +175,38 @@ const ye = Pe({
|
|
|
175
175
|
} finally {
|
|
176
176
|
v(!1), l("🔄 CONNECTION REFRESH FINISHED", { userId: s.id });
|
|
177
177
|
}
|
|
178
|
-
}, [m, s, l]),
|
|
178
|
+
}, [m, s, l]), d = U.useMemo(() => (l("💫 CONTEXT VALUE MEMOIZATION", {
|
|
179
179
|
hasService: !!m,
|
|
180
180
|
hasClient: !!g,
|
|
181
181
|
isConnected: f,
|
|
182
|
-
isLoading:
|
|
183
|
-
hasError: !!
|
|
182
|
+
isLoading: _,
|
|
183
|
+
hasError: !!c,
|
|
184
184
|
capabilitiesKeys: Object.keys(a)
|
|
185
185
|
}), {
|
|
186
186
|
service: m,
|
|
187
187
|
client: g,
|
|
188
188
|
isConnected: f,
|
|
189
|
-
isLoading:
|
|
190
|
-
error:
|
|
189
|
+
isLoading: _,
|
|
190
|
+
error: c,
|
|
191
191
|
capabilities: a,
|
|
192
192
|
refreshConnection: R,
|
|
193
|
-
debug:
|
|
193
|
+
debug: i
|
|
194
194
|
}), [
|
|
195
195
|
m,
|
|
196
196
|
g,
|
|
197
197
|
f,
|
|
198
|
-
|
|
199
|
-
|
|
198
|
+
_,
|
|
199
|
+
c,
|
|
200
200
|
a,
|
|
201
201
|
R,
|
|
202
|
-
|
|
202
|
+
i,
|
|
203
203
|
l
|
|
204
204
|
]);
|
|
205
205
|
return l("🔄 RENDER END", {
|
|
206
206
|
renderCount: k.current,
|
|
207
207
|
willRenderChat: !!(g && f),
|
|
208
|
-
contextValueReady: !!
|
|
209
|
-
}), /* @__PURE__ */ e(ye.Provider, { value:
|
|
208
|
+
contextValueReady: !!d
|
|
209
|
+
}), /* @__PURE__ */ e(ye.Provider, { value: d, children: g && f ? /* @__PURE__ */ e(
|
|
210
210
|
Ae,
|
|
211
211
|
{
|
|
212
212
|
client: g,
|
|
@@ -284,7 +284,7 @@ const q = ({
|
|
|
284
284
|
className: r,
|
|
285
285
|
shape: a = "squircle"
|
|
286
286
|
}) => {
|
|
287
|
-
const
|
|
287
|
+
const i = is(t), m = n < 32 ? "text-xs" : n < 56 ? "text-sm" : "text-lg", h = a === "circle" ? { borderRadius: "50%" } : {
|
|
288
288
|
borderRadius: "33%",
|
|
289
289
|
"corner-shape": "superellipse(1.3)"
|
|
290
290
|
};
|
|
@@ -312,7 +312,7 @@ const q = ({
|
|
|
312
312
|
"avatar-fallback flex h-full w-full items-center justify-center font-semibold bg-[#E6E5E3] select-none transition-colors",
|
|
313
313
|
m
|
|
314
314
|
),
|
|
315
|
-
children:
|
|
315
|
+
children: i
|
|
316
316
|
}
|
|
317
317
|
)
|
|
318
318
|
}
|
|
@@ -320,24 +320,24 @@ const q = ({
|
|
|
320
320
|
}, Ee = U.memo(
|
|
321
321
|
({ channel: t, selectedChannel: s, onChannelSelect: n, debug: r = !1, unread: a }) => {
|
|
322
322
|
var N, E, I, k, x, R;
|
|
323
|
-
const
|
|
323
|
+
const i = (s == null ? void 0 : s.id) === (t == null ? void 0 : t.id), l = () => {
|
|
324
324
|
t && n(t);
|
|
325
325
|
}, h = Object.values(((N = t == null ? void 0 : t.state) == null ? void 0 : N.members) || {}).find(
|
|
326
|
-
(
|
|
326
|
+
(d) => {
|
|
327
327
|
var u, b;
|
|
328
|
-
return ((u =
|
|
328
|
+
return ((u = d.user) == null ? void 0 : u.id) && d.user.id !== ((b = t == null ? void 0 : t._client) == null ? void 0 : b.userID);
|
|
329
329
|
}
|
|
330
|
-
), g = ((E = h == null ? void 0 : h.user) == null ? void 0 : E.name) || "Conversation", w = (I = h == null ? void 0 : h.user) == null ? void 0 : I.image, f = (x = (k = t == null ? void 0 : t.state) == null ? void 0 : k.messages) == null ? void 0 : x[t.state.messages.length - 1],
|
|
330
|
+
), g = ((E = h == null ? void 0 : h.user) == null ? void 0 : E.name) || "Conversation", w = (I = h == null ? void 0 : h.user) == null ? void 0 : I.image, f = (x = (k = t == null ? void 0 : t.state) == null ? void 0 : k.messages) == null ? void 0 : x[t.state.messages.length - 1], _ = (() => {
|
|
331
331
|
var u;
|
|
332
332
|
if (f != null && f.text) return f.text;
|
|
333
|
-
const
|
|
334
|
-
return
|
|
335
|
-
})(), v = f != null && f.created_at ? as(new Date(f.created_at)) : "",
|
|
333
|
+
const d = (u = f == null ? void 0 : f.attachments) == null ? void 0 : u[0];
|
|
334
|
+
return d ? d.og_scrape_url ? d.og_scrape_url : d.type === "image" ? "📷 Sent an image" : d.type === "video" ? "🎥 Sent a video" : d.type === "audio" ? "🎵 Sent audio" : d.type === "file" ? "📎 Sent a file" : "📎 Sent an attachment" : "No messages yet";
|
|
335
|
+
})(), v = f != null && f.created_at ? as(new Date(f.created_at)) : "", c = a ?? 0;
|
|
336
336
|
return r && console.log("📺 [ChannelList] 📋 CHANNEL PREVIEW RENDER", {
|
|
337
337
|
channelId: t == null ? void 0 : t.id,
|
|
338
|
-
isSelected:
|
|
338
|
+
isSelected: i,
|
|
339
339
|
participantName: g,
|
|
340
|
-
unreadCount:
|
|
340
|
+
unreadCount: c,
|
|
341
341
|
hasTimestamp: !!v
|
|
342
342
|
}), /* @__PURE__ */ e(
|
|
343
343
|
"button",
|
|
@@ -347,11 +347,11 @@ const q = ({
|
|
|
347
347
|
className: p(
|
|
348
348
|
"group w-full px-4 py-3 transition-colors text-left max-w-full overflow-hidden focus-ring",
|
|
349
349
|
{
|
|
350
|
-
"bg-primary-alt/10 border-l-4 border-l-primary":
|
|
351
|
-
"hover:bg-sand": !
|
|
350
|
+
"bg-primary-alt/10 border-l-4 border-l-primary": i,
|
|
351
|
+
"hover:bg-sand": !i
|
|
352
352
|
}
|
|
353
353
|
),
|
|
354
|
-
children: /* @__PURE__ */
|
|
354
|
+
children: /* @__PURE__ */ o("div", { className: "flex items-start gap-3", children: [
|
|
355
355
|
/* @__PURE__ */ e(
|
|
356
356
|
q,
|
|
357
357
|
{
|
|
@@ -362,23 +362,23 @@ const q = ({
|
|
|
362
362
|
className: "[&_.avatar-fallback]:group-hover:bg-[#eeeeee]"
|
|
363
363
|
}
|
|
364
364
|
),
|
|
365
|
-
/* @__PURE__ */
|
|
366
|
-
/* @__PURE__ */
|
|
365
|
+
/* @__PURE__ */ o("div", { className: "flex-1 min-w-0 flex flex-col gap-1", children: [
|
|
366
|
+
/* @__PURE__ */ o("div", { className: "flex items-center justify-between gap-2", children: [
|
|
367
367
|
/* @__PURE__ */ e(
|
|
368
368
|
"h3",
|
|
369
369
|
{
|
|
370
370
|
className: p(
|
|
371
371
|
"text-sm font-medium truncate",
|
|
372
|
-
|
|
372
|
+
i ? "text-primary" : "text-charcoal"
|
|
373
373
|
),
|
|
374
374
|
children: g
|
|
375
375
|
}
|
|
376
376
|
),
|
|
377
377
|
v && /* @__PURE__ */ e("span", { className: "text-xs text-stone flex-shrink-0", children: v })
|
|
378
378
|
] }),
|
|
379
|
-
/* @__PURE__ */
|
|
380
|
-
/* @__PURE__ */ e("p", { className: "text-xs text-stone mr-2 flex-1 line-clamp-2", children:
|
|
381
|
-
|
|
379
|
+
/* @__PURE__ */ o("div", { className: "flex items-center justify-between gap-2 min-w-0", children: [
|
|
380
|
+
/* @__PURE__ */ e("p", { className: "text-xs text-stone mr-2 flex-1 line-clamp-2", children: _ }),
|
|
381
|
+
c > 0 && /* @__PURE__ */ e("span", { className: "bg-[#7f22fe] text-white text-xs px-2 py-0.5 rounded-full min-w-[20px] text-center flex-shrink-0", children: c > 99 ? "99+" : c })
|
|
382
382
|
] })
|
|
383
383
|
] })
|
|
384
384
|
] })
|
|
@@ -395,11 +395,11 @@ const Ie = U.memo(
|
|
|
395
395
|
className: r,
|
|
396
396
|
customEmptyStateIndicator: a
|
|
397
397
|
}) => {
|
|
398
|
-
const
|
|
399
|
-
|
|
398
|
+
const i = U.useRef(0);
|
|
399
|
+
i.current++;
|
|
400
400
|
const { debug: l = !1 } = oe();
|
|
401
401
|
l && console.log("📺 [ChannelList] 🔄 RENDER START", {
|
|
402
|
-
renderCount:
|
|
402
|
+
renderCount: i.current,
|
|
403
403
|
selectedChannelId: s == null ? void 0 : s.id,
|
|
404
404
|
filters: n
|
|
405
405
|
});
|
|
@@ -454,7 +454,7 @@ const ne = ({
|
|
|
454
454
|
}
|
|
455
455
|
);
|
|
456
456
|
function Se({ label: t, className: s, children: n, ...r }) {
|
|
457
|
-
return /* @__PURE__ */
|
|
457
|
+
return /* @__PURE__ */ o(
|
|
458
458
|
"button",
|
|
459
459
|
{
|
|
460
460
|
type: "button",
|
|
@@ -486,7 +486,7 @@ const cs = (t) => ({
|
|
|
486
486
|
onDismiss: s
|
|
487
487
|
}) => {
|
|
488
488
|
const { og_scrape_url: n, title: r, image_url: a } = t;
|
|
489
|
-
return /* @__PURE__ */
|
|
489
|
+
return /* @__PURE__ */ o(
|
|
490
490
|
"a",
|
|
491
491
|
{
|
|
492
492
|
href: n,
|
|
@@ -514,7 +514,7 @@ const cs = (t) => ({
|
|
|
514
514
|
children: /* @__PURE__ */ e(me, { className: "size-4 text-black/90" })
|
|
515
515
|
}
|
|
516
516
|
),
|
|
517
|
-
/* @__PURE__ */
|
|
517
|
+
/* @__PURE__ */ o("div", { className: "p-2", children: [
|
|
518
518
|
r && /* @__PURE__ */ e("div", { className: "text-[14px] font-medium leading-5 text-white", children: r }),
|
|
519
519
|
/* @__PURE__ */ e("div", { className: "text-[12px] leading-4 text-white/55", children: n })
|
|
520
520
|
] })
|
|
@@ -538,13 +538,13 @@ const cs = (t) => ({
|
|
|
538
538
|
)) }) : null;
|
|
539
539
|
}, ms = () => {
|
|
540
540
|
const { handleSubmit: t } = He(), s = Ve();
|
|
541
|
-
return /* @__PURE__ */
|
|
541
|
+
return /* @__PURE__ */ o(ve, { children: [
|
|
542
542
|
/* @__PURE__ */ e("div", { className: "left-container", children: /* @__PURE__ */ e(We, {}) }),
|
|
543
|
-
/* @__PURE__ */
|
|
543
|
+
/* @__PURE__ */ o("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: [
|
|
544
544
|
/* @__PURE__ */ e(Ze, {}),
|
|
545
545
|
/* @__PURE__ */ e(us, {}),
|
|
546
546
|
/* @__PURE__ */ e(qe, {}),
|
|
547
|
-
/* @__PURE__ */
|
|
547
|
+
/* @__PURE__ */ o("div", { className: "flex", children: [
|
|
548
548
|
/* @__PURE__ */ e("div", { className: "w-full ml-2 mr-4 self-center leading-[0]", children: /* @__PURE__ */ e(
|
|
549
549
|
Ye,
|
|
550
550
|
{
|
|
@@ -569,25 +569,25 @@ const cs = (t) => ({
|
|
|
569
569
|
] });
|
|
570
570
|
}, hs = ({
|
|
571
571
|
renderActions: t
|
|
572
|
-
}) => /* @__PURE__ */
|
|
572
|
+
}) => /* @__PURE__ */ o("div", { className: "message-input flex items-center gap-2 p-4", children: [
|
|
573
573
|
t && (t == null ? void 0 : t()),
|
|
574
574
|
/* @__PURE__ */ e(Ge, { Input: ms })
|
|
575
575
|
] }), fs = (t) => {
|
|
576
576
|
const s = t.message.hide_date === !0;
|
|
577
|
-
return /* @__PURE__ */
|
|
578
|
-
/* @__PURE__ */
|
|
577
|
+
return /* @__PURE__ */ o("div", { className: "str-chat__message--system", "data-testid": "message-system", children: [
|
|
578
|
+
/* @__PURE__ */ o("div", { className: "str-chat__message--system__text", children: [
|
|
579
579
|
/* @__PURE__ */ e("div", { className: "str-chat__message--system__line" }),
|
|
580
580
|
/* @__PURE__ */ e("p", { children: t.message.text }),
|
|
581
581
|
/* @__PURE__ */ e("div", { className: "str-chat__message--system__line" })
|
|
582
582
|
] }),
|
|
583
583
|
!s && /* @__PURE__ */ e(Je, { message: t.message })
|
|
584
584
|
] });
|
|
585
|
-
}, gs = () => null, xs = ({ className: t, message: s }) => /* @__PURE__ */
|
|
585
|
+
}, gs = () => null, xs = ({ className: t, message: s }) => /* @__PURE__ */ o(
|
|
586
586
|
"div",
|
|
587
587
|
{
|
|
588
588
|
className: p("flex items-center justify-center h-full", t),
|
|
589
589
|
children: [
|
|
590
|
-
/* @__PURE__ */
|
|
590
|
+
/* @__PURE__ */ o("svg", { viewBox: "0 0 100 100", className: "size-8 fill-pebble", stroke: "none", children: [
|
|
591
591
|
/* @__PURE__ */ e("circle", { cx: "6", cy: "50", r: "6", children: /* @__PURE__ */ e(
|
|
592
592
|
"animateTransform",
|
|
593
593
|
{
|
|
@@ -625,21 +625,21 @@ const cs = (t) => ({
|
|
|
625
625
|
s && /* @__PURE__ */ e("span", { className: "text-stone", children: s })
|
|
626
626
|
]
|
|
627
627
|
}
|
|
628
|
-
), ae = U.memo(() => /* @__PURE__ */ e("div", { className: "messaging-loading-state flex items-center justify-center h-full", children: /* @__PURE__ */
|
|
628
|
+
), ae = U.memo(() => /* @__PURE__ */ e("div", { className: "messaging-loading-state flex items-center justify-center h-full", children: /* @__PURE__ */ o("div", { className: "flex items-center", children: [
|
|
629
629
|
/* @__PURE__ */ e(xs, { className: "w-6 h-6" }),
|
|
630
630
|
/* @__PURE__ */ e("span", { className: "text-sm text-stone", children: "Loading messages" })
|
|
631
631
|
] }) }));
|
|
632
632
|
ae.displayName = "LoadingState";
|
|
633
633
|
const Ns = ({ onBack: t, showBackButton: s, onShowInfo: n, canShowInfo: r }) => {
|
|
634
634
|
var h, g, w, f, S;
|
|
635
|
-
const { channel: a } = we(),
|
|
635
|
+
const { channel: a } = we(), i = U.useMemo(() => Object.values(a.state.members || {}).find(
|
|
636
636
|
(v) => {
|
|
637
|
-
var
|
|
638
|
-
return ((
|
|
637
|
+
var c;
|
|
638
|
+
return ((c = v.user) == null ? void 0 : c.id) && v.user.id !== a._client.userID;
|
|
639
639
|
}
|
|
640
|
-
), [a._client.userID, a.state.members]), l = ((h =
|
|
641
|
-
return /* @__PURE__ */
|
|
642
|
-
/* @__PURE__ */
|
|
640
|
+
), [a._client.userID, a.state.members]), l = ((h = i == null ? void 0 : i.user) == null ? void 0 : h.name) || ((g = i == null ? void 0 : i.user) == null ? void 0 : g.id) || "Unknown member", m = (w = i == null ? void 0 : i.user) == null ? void 0 : w.image;
|
|
641
|
+
return /* @__PURE__ */ o("div", { className: "@container", children: [
|
|
642
|
+
/* @__PURE__ */ o("div", { className: "flex justify-between items-center @lg:hidden", children: [
|
|
643
643
|
/* @__PURE__ */ e(
|
|
644
644
|
"button",
|
|
645
645
|
{
|
|
@@ -654,11 +654,11 @@ const Ns = ({ onBack: t, showBackButton: s, onShowInfo: n, canShowInfo: r }) =>
|
|
|
654
654
|
children: /* @__PURE__ */ e(fe, { className: "size-5 text-black/90" })
|
|
655
655
|
}
|
|
656
656
|
),
|
|
657
|
-
/* @__PURE__ */
|
|
657
|
+
/* @__PURE__ */ o("div", { className: "flex flex-col gap-1 items-center", children: [
|
|
658
658
|
/* @__PURE__ */ e(
|
|
659
659
|
q,
|
|
660
660
|
{
|
|
661
|
-
id: ((f =
|
|
661
|
+
id: ((f = i == null ? void 0 : i.user) == null ? void 0 : f.id) || a.id || "unknown",
|
|
662
662
|
name: l,
|
|
663
663
|
image: m,
|
|
664
664
|
size: 40
|
|
@@ -679,8 +679,8 @@ const Ns = ({ onBack: t, showBackButton: s, onShowInfo: n, canShowInfo: r }) =>
|
|
|
679
679
|
}
|
|
680
680
|
)
|
|
681
681
|
] }),
|
|
682
|
-
/* @__PURE__ */
|
|
683
|
-
/* @__PURE__ */
|
|
682
|
+
/* @__PURE__ */ o("div", { className: "hidden @lg:flex items-center justify-between gap-3 min-h-12", children: [
|
|
683
|
+
/* @__PURE__ */ o("div", { className: "flex items-center gap-4 min-w-0", children: [
|
|
684
684
|
s && t && /* @__PURE__ */ e(
|
|
685
685
|
"button",
|
|
686
686
|
{
|
|
@@ -694,7 +694,7 @@ const Ns = ({ onBack: t, showBackButton: s, onShowInfo: n, canShowInfo: r }) =>
|
|
|
694
694
|
/* @__PURE__ */ e(
|
|
695
695
|
q,
|
|
696
696
|
{
|
|
697
|
-
id: ((S =
|
|
697
|
+
id: ((S = i == null ? void 0 : i.user) == null ? void 0 : S.id) || a.id || "unknown",
|
|
698
698
|
name: l,
|
|
699
699
|
image: m,
|
|
700
700
|
size: 40
|
|
@@ -720,7 +720,7 @@ const Ns = ({ onBack: t, showBackButton: s, onShowInfo: n, canShowInfo: r }) =>
|
|
|
720
720
|
participant: n,
|
|
721
721
|
channel: r,
|
|
722
722
|
followerStatusLabel: a,
|
|
723
|
-
onLeaveConversation:
|
|
723
|
+
onLeaveConversation: i,
|
|
724
724
|
onBlockParticipant: l,
|
|
725
725
|
showDeleteConversation: m = !0,
|
|
726
726
|
onDeleteConversationClick: h,
|
|
@@ -728,9 +728,9 @@ const Ns = ({ onBack: t, showBackButton: s, onShowInfo: n, canShowInfo: r }) =>
|
|
|
728
728
|
onReportParticipantClick: w
|
|
729
729
|
}) => {
|
|
730
730
|
var Q, X, ce, O, H, J, $;
|
|
731
|
-
const { service: f, debug: S } = oe(), [
|
|
732
|
-
var
|
|
733
|
-
if (!(!f || !((
|
|
731
|
+
const { service: f, debug: S } = oe(), [_, v] = y(!1), [c, N] = y(!1), [E, I] = y(!1), k = M(async () => {
|
|
732
|
+
var D;
|
|
733
|
+
if (!(!f || !((D = n == null ? void 0 : n.user) != null && D.id)))
|
|
734
734
|
try {
|
|
735
735
|
const A = (await f.getBlockedUsers()).some(
|
|
736
736
|
(V) => {
|
|
@@ -750,12 +750,12 @@ const Ns = ({ onBack: t, showBackButton: s, onShowInfo: n, canShowInfo: r }) =>
|
|
|
750
750
|
k();
|
|
751
751
|
}, [k]);
|
|
752
752
|
const x = async () => {
|
|
753
|
-
var
|
|
754
|
-
if (!
|
|
753
|
+
var D;
|
|
754
|
+
if (!c) {
|
|
755
755
|
h == null || h(), S && console.log("[ChannelInfoDialog] Leave conversation", r.cid), N(!0);
|
|
756
756
|
try {
|
|
757
|
-
const T = ((
|
|
758
|
-
await r.hide(T, !1),
|
|
757
|
+
const T = ((D = r._client) == null ? void 0 : D.userID) ?? null;
|
|
758
|
+
await r.hide(T, !1), i && await i(r), s();
|
|
759
759
|
} catch (T) {
|
|
760
760
|
console.error("[ChannelInfoDialog] Failed to leave conversation", T);
|
|
761
761
|
} finally {
|
|
@@ -763,9 +763,9 @@ const Ns = ({ onBack: t, showBackButton: s, onShowInfo: n, canShowInfo: r }) =>
|
|
|
763
763
|
}
|
|
764
764
|
}
|
|
765
765
|
}, R = async () => {
|
|
766
|
-
var
|
|
766
|
+
var D, T, A;
|
|
767
767
|
if (!(E || !f)) {
|
|
768
|
-
g == null || g(), S && console.log("[ChannelInfoDialog] Block member", (
|
|
768
|
+
g == null || g(), S && console.log("[ChannelInfoDialog] Block member", (D = n == null ? void 0 : n.user) == null ? void 0 : D.id), I(!0);
|
|
769
769
|
try {
|
|
770
770
|
await f.blockUser((T = n == null ? void 0 : n.user) == null ? void 0 : T.id), l && await l((A = n == null ? void 0 : n.user) == null ? void 0 : A.id), s();
|
|
771
771
|
} catch (V) {
|
|
@@ -774,10 +774,10 @@ const Ns = ({ onBack: t, showBackButton: s, onShowInfo: n, canShowInfo: r }) =>
|
|
|
774
774
|
I(!1);
|
|
775
775
|
}
|
|
776
776
|
}
|
|
777
|
-
},
|
|
778
|
-
var
|
|
777
|
+
}, d = async () => {
|
|
778
|
+
var D, T, A;
|
|
779
779
|
if (!(E || !f)) {
|
|
780
|
-
g == null || g(), S && console.log("[ChannelInfoDialog] Unblock member", (
|
|
780
|
+
g == null || g(), S && console.log("[ChannelInfoDialog] Unblock member", (D = n == null ? void 0 : n.user) == null ? void 0 : D.id), I(!0);
|
|
781
781
|
try {
|
|
782
782
|
await f.unBlockUser((T = n == null ? void 0 : n.user) == null ? void 0 : T.id), l && await l((A = n == null ? void 0 : n.user) == null ? void 0 : A.id), s();
|
|
783
783
|
} catch (V) {
|
|
@@ -803,21 +803,21 @@ const Ns = ({ onBack: t, showBackButton: s, onShowInfo: n, canShowInfo: r }) =>
|
|
|
803
803
|
ref: t,
|
|
804
804
|
className: "mes-dialog group",
|
|
805
805
|
onClose: s,
|
|
806
|
-
onClick: (
|
|
807
|
-
|
|
806
|
+
onClick: (D) => {
|
|
807
|
+
D.target === t.current && s();
|
|
808
808
|
},
|
|
809
|
-
children: /* @__PURE__ */
|
|
810
|
-
/* @__PURE__ */
|
|
809
|
+
children: /* @__PURE__ */ o("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: [
|
|
810
|
+
/* @__PURE__ */ o("div", { className: "flex items-center justify-between border-b border-sand px-4 py-3", children: [
|
|
811
811
|
/* @__PURE__ */ e("h2", { className: "text-base font-semibold text-charcoal", children: "Chat info" }),
|
|
812
812
|
/* @__PURE__ */ e(pe, { onClick: s })
|
|
813
813
|
] }),
|
|
814
|
-
/* @__PURE__ */
|
|
814
|
+
/* @__PURE__ */ o("div", { className: "flex-1 px-2 overflow-y-auto w-full", children: [
|
|
815
815
|
/* @__PURE__ */ e(
|
|
816
816
|
"div",
|
|
817
817
|
{
|
|
818
818
|
className: "flex flex-col items-center gap-3 self-stretch px-4 py-2 mt-6 rounded-lg border border-black/[0.04]",
|
|
819
819
|
style: { backgroundColor: "#FBFAF9" },
|
|
820
|
-
children: /* @__PURE__ */
|
|
820
|
+
children: /* @__PURE__ */ o("div", { className: "flex items-center gap-3 w-full", children: [
|
|
821
821
|
/* @__PURE__ */ e(
|
|
822
822
|
q,
|
|
823
823
|
{
|
|
@@ -828,7 +828,7 @@ const Ns = ({ onBack: t, showBackButton: s, onShowInfo: n, canShowInfo: r }) =>
|
|
|
828
828
|
shape: "circle"
|
|
829
829
|
}
|
|
830
830
|
),
|
|
831
|
-
/* @__PURE__ */
|
|
831
|
+
/* @__PURE__ */ o("div", { className: "flex flex-col min-w-0 flex-1", children: [
|
|
832
832
|
/* @__PURE__ */ e("p", { className: "truncate text-base font-semibold text-charcoal", children: b }),
|
|
833
833
|
Y && /* @__PURE__ */ e("p", { className: "truncate text-sm text-[#00000055]", children: Y }),
|
|
834
834
|
a && /* @__PURE__ */ e(
|
|
@@ -849,23 +849,23 @@ const Ns = ({ onBack: t, showBackButton: s, onShowInfo: n, canShowInfo: r }) =>
|
|
|
849
849
|
] })
|
|
850
850
|
}
|
|
851
851
|
),
|
|
852
|
-
/* @__PURE__ */
|
|
853
|
-
m && /* @__PURE__ */ e("li", { children: /* @__PURE__ */
|
|
852
|
+
/* @__PURE__ */ o("ul", { className: "flex flex-col gap-2 mt-2", children: [
|
|
853
|
+
m && /* @__PURE__ */ e("li", { children: /* @__PURE__ */ o(
|
|
854
854
|
ne,
|
|
855
855
|
{
|
|
856
856
|
onClick: x,
|
|
857
|
-
disabled:
|
|
858
|
-
"aria-busy":
|
|
857
|
+
disabled: c,
|
|
858
|
+
"aria-busy": c,
|
|
859
859
|
children: [
|
|
860
|
-
|
|
860
|
+
c ? /* @__PURE__ */ e(re, { className: "h-5 w-5 animate-spin" }) : /* @__PURE__ */ e(ss, { className: "h-5 w-5" }),
|
|
861
861
|
/* @__PURE__ */ e("span", { children: "Delete Conversation" })
|
|
862
862
|
]
|
|
863
863
|
}
|
|
864
864
|
) }),
|
|
865
|
-
/* @__PURE__ */ e("li", { children:
|
|
865
|
+
/* @__PURE__ */ e("li", { children: _ ? /* @__PURE__ */ o(
|
|
866
866
|
ne,
|
|
867
867
|
{
|
|
868
|
-
onClick:
|
|
868
|
+
onClick: d,
|
|
869
869
|
disabled: E,
|
|
870
870
|
"aria-busy": E,
|
|
871
871
|
children: [
|
|
@@ -873,7 +873,7 @@ const Ns = ({ onBack: t, showBackButton: s, onShowInfo: n, canShowInfo: r }) =>
|
|
|
873
873
|
/* @__PURE__ */ e("span", { children: "Unblock" })
|
|
874
874
|
]
|
|
875
875
|
}
|
|
876
|
-
) : /* @__PURE__ */
|
|
876
|
+
) : /* @__PURE__ */ o(
|
|
877
877
|
ne,
|
|
878
878
|
{
|
|
879
879
|
onClick: R,
|
|
@@ -885,7 +885,7 @@ const Ns = ({ onBack: t, showBackButton: s, onShowInfo: n, canShowInfo: r }) =>
|
|
|
885
885
|
]
|
|
886
886
|
}
|
|
887
887
|
) }),
|
|
888
|
-
/* @__PURE__ */ e("li", { children: /* @__PURE__ */
|
|
888
|
+
/* @__PURE__ */ e("li", { children: /* @__PURE__ */ o(ne, { variant: "danger", onClick: u, children: [
|
|
889
889
|
/* @__PURE__ */ e(ts, { className: "h-5 w-5" }),
|
|
890
890
|
/* @__PURE__ */ e("span", { children: "Report" })
|
|
891
891
|
] }) })
|
|
@@ -901,7 +901,7 @@ const Ns = ({ onBack: t, showBackButton: s, onShowInfo: n, canShowInfo: r }) =>
|
|
|
901
901
|
renderMessageInputActions: n,
|
|
902
902
|
onLeaveConversation: r,
|
|
903
903
|
onBlockParticipant: a,
|
|
904
|
-
showDeleteConversation:
|
|
904
|
+
showDeleteConversation: i = !0,
|
|
905
905
|
onDeleteConversationClick: l,
|
|
906
906
|
onBlockParticipantClick: m,
|
|
907
907
|
onReportParticipantClick: h
|
|
@@ -912,26 +912,26 @@ const Ns = ({ onBack: t, showBackButton: s, onShowInfo: n, canShowInfo: r }) =>
|
|
|
912
912
|
return ((E = N.user) == null ? void 0 : E.id) && N.user.id !== g._client.userID;
|
|
913
913
|
}
|
|
914
914
|
), [g._client.userID, g.state.members]), S = U.useMemo(() => {
|
|
915
|
-
const
|
|
916
|
-
if (
|
|
917
|
-
return String(
|
|
918
|
-
if (
|
|
919
|
-
return
|
|
920
|
-
}, [g.data]),
|
|
921
|
-
var
|
|
922
|
-
(
|
|
923
|
-
}, []), v =
|
|
924
|
-
var
|
|
925
|
-
(
|
|
915
|
+
const c = g.data ?? {};
|
|
916
|
+
if (c.followerStatus)
|
|
917
|
+
return String(c.followerStatus);
|
|
918
|
+
if (c.isFollower !== void 0)
|
|
919
|
+
return c.isFollower ? "Subscribed to you" : "Not subscribed";
|
|
920
|
+
}, [g.data]), _ = M(() => {
|
|
921
|
+
var c;
|
|
922
|
+
(c = w.current) == null || c.showModal();
|
|
923
|
+
}, []), v = M(() => {
|
|
924
|
+
var c;
|
|
925
|
+
(c = w.current) == null || c.close();
|
|
926
926
|
}, []);
|
|
927
|
-
return /* @__PURE__ */
|
|
928
|
-
/* @__PURE__ */
|
|
927
|
+
return /* @__PURE__ */ o(ve, { children: [
|
|
928
|
+
/* @__PURE__ */ o(Xe, { children: [
|
|
929
929
|
/* @__PURE__ */ e("div", { className: "p-4", children: /* @__PURE__ */ e(
|
|
930
930
|
Ns,
|
|
931
931
|
{
|
|
932
932
|
onBack: t,
|
|
933
933
|
showBackButton: s,
|
|
934
|
-
onShowInfo:
|
|
934
|
+
onShowInfo: _,
|
|
935
935
|
canShowInfo: !!f
|
|
936
936
|
}
|
|
937
937
|
) }),
|
|
@@ -960,7 +960,7 @@ const Ns = ({ onBack: t, showBackButton: s, onShowInfo: n, canShowInfo: r }) =>
|
|
|
960
960
|
followerStatusLabel: S,
|
|
961
961
|
onLeaveConversation: r,
|
|
962
962
|
onBlockParticipant: a,
|
|
963
|
-
showDeleteConversation:
|
|
963
|
+
showDeleteConversation: i,
|
|
964
964
|
onDeleteConversationClick: l,
|
|
965
965
|
onBlockParticipantClick: m,
|
|
966
966
|
onReportParticipantClick: h
|
|
@@ -974,7 +974,7 @@ const Ns = ({ onBack: t, showBackButton: s, onShowInfo: n, canShowInfo: r }) =>
|
|
|
974
974
|
showBackButton: n = !1,
|
|
975
975
|
renderMessageInputActions: r,
|
|
976
976
|
onLeaveConversation: a,
|
|
977
|
-
onBlockParticipant:
|
|
977
|
+
onBlockParticipant: i,
|
|
978
978
|
className: l,
|
|
979
979
|
CustomChannelEmptyState: m = gs,
|
|
980
980
|
showDeleteConversation: h = !0,
|
|
@@ -1002,7 +1002,7 @@ const Ns = ({ onBack: t, showBackButton: s, onShowInfo: n, canShowInfo: r }) =>
|
|
|
1002
1002
|
showBackButton: n,
|
|
1003
1003
|
renderMessageInputActions: r,
|
|
1004
1004
|
onLeaveConversation: a,
|
|
1005
|
-
onBlockParticipant:
|
|
1005
|
+
onBlockParticipant: i,
|
|
1006
1006
|
CustomChannelEmptyState: m,
|
|
1007
1007
|
showDeleteConversation: h,
|
|
1008
1008
|
onDeleteConversationClick: g,
|
|
@@ -1022,7 +1022,7 @@ function vs({
|
|
|
1022
1022
|
placeholder: n
|
|
1023
1023
|
}) {
|
|
1024
1024
|
const r = z(null);
|
|
1025
|
-
return /* @__PURE__ */
|
|
1025
|
+
return /* @__PURE__ */ o("div", { className: "relative", children: [
|
|
1026
1026
|
/* @__PURE__ */ e(
|
|
1027
1027
|
ns,
|
|
1028
1028
|
{
|
|
@@ -1061,10 +1061,10 @@ const ws = ({
|
|
|
1061
1061
|
onClose: n,
|
|
1062
1062
|
existingParticipantIds: r = /* @__PURE__ */ new Set(),
|
|
1063
1063
|
participantLabel: a = "participants",
|
|
1064
|
-
searchPlaceholder:
|
|
1064
|
+
searchPlaceholder: i = "Search participants...",
|
|
1065
1065
|
className: l
|
|
1066
1066
|
}) => {
|
|
1067
|
-
const { debug: m } = oe(), [h, g] = y(""), [w, f] = y([]), [S,
|
|
1067
|
+
const { debug: m } = oe(), [h, g] = y(""), [w, f] = y([]), [S, _] = y(!1), [v, c] = y(null), [N, E] = y(
|
|
1068
1068
|
null
|
|
1069
1069
|
), I = z(!1);
|
|
1070
1070
|
G(() => {
|
|
@@ -1076,7 +1076,7 @@ const ws = ({
|
|
|
1076
1076
|
}
|
|
1077
1077
|
if (I.current) return;
|
|
1078
1078
|
(async () => {
|
|
1079
|
-
m && console.log("[ParticipantPicker] Loading initial participants..."),
|
|
1079
|
+
m && console.log("[ParticipantPicker] Loading initial participants..."), _(!0), c(null);
|
|
1080
1080
|
try {
|
|
1081
1081
|
const u = await t.loadParticipants({
|
|
1082
1082
|
search: "",
|
|
@@ -1089,39 +1089,39 @@ const ws = ({
|
|
|
1089
1089
|
);
|
|
1090
1090
|
} catch (u) {
|
|
1091
1091
|
const b = u instanceof Error ? u.message : "Failed to load participants";
|
|
1092
|
-
|
|
1092
|
+
c(b), console.error("[ParticipantPicker] Failed to load participants:", u);
|
|
1093
1093
|
} finally {
|
|
1094
|
-
|
|
1094
|
+
_(!1);
|
|
1095
1095
|
}
|
|
1096
1096
|
})();
|
|
1097
1097
|
}, [t.loading, m]);
|
|
1098
|
-
const k = w.filter((
|
|
1098
|
+
const k = w.filter((d) => !r.has(d.id)).filter((d) => {
|
|
1099
1099
|
var b;
|
|
1100
1100
|
if (!h) return !0;
|
|
1101
1101
|
const u = h.toLowerCase();
|
|
1102
|
-
return
|
|
1103
|
-
}), x =
|
|
1104
|
-
async (
|
|
1102
|
+
return d.name.toLowerCase().includes(u) || ((b = d.email) == null ? void 0 : b.toLowerCase().includes(u)) || !1;
|
|
1103
|
+
}), x = M(
|
|
1104
|
+
async (d) => {
|
|
1105
1105
|
if (!N) {
|
|
1106
|
-
E(
|
|
1106
|
+
E(d.id);
|
|
1107
1107
|
try {
|
|
1108
|
-
await s(
|
|
1108
|
+
await s(d);
|
|
1109
1109
|
} catch (u) {
|
|
1110
1110
|
console.error("[ParticipantPicker] Failed to start chat:", u), E(null);
|
|
1111
1111
|
}
|
|
1112
1112
|
}
|
|
1113
1113
|
},
|
|
1114
1114
|
[s, N]
|
|
1115
|
-
), R = (
|
|
1116
|
-
(
|
|
1115
|
+
), R = (d, u) => {
|
|
1116
|
+
(d.key === "Enter" || d.key === " ") && (d.preventDefault(), x(u));
|
|
1117
1117
|
};
|
|
1118
|
-
return /* @__PURE__ */
|
|
1119
|
-
/* @__PURE__ */
|
|
1120
|
-
/* @__PURE__ */
|
|
1118
|
+
return /* @__PURE__ */ o("div", { className: p("flex flex-col h-full", l), children: [
|
|
1119
|
+
/* @__PURE__ */ o("div", { className: "px-4 py-4 border-b border-sand bg-chalk", children: [
|
|
1120
|
+
/* @__PURE__ */ o("div", { className: "flex items-center justify-between mb-3", children: [
|
|
1121
1121
|
/* @__PURE__ */ e("h2", { className: "text-lg font-semibold text-charcoal", children: "Start a new Conversation" }),
|
|
1122
1122
|
/* @__PURE__ */ e(pe, { onClick: n })
|
|
1123
1123
|
] }),
|
|
1124
|
-
/* @__PURE__ */
|
|
1124
|
+
/* @__PURE__ */ o("p", { className: "text-xs text-stone mb-3", children: [
|
|
1125
1125
|
"Select a ",
|
|
1126
1126
|
a.slice(0, -1),
|
|
1127
1127
|
" to start messaging (",
|
|
@@ -1134,65 +1134,65 @@ const ws = ({
|
|
|
1134
1134
|
{
|
|
1135
1135
|
searchQuery: h,
|
|
1136
1136
|
setSearchQuery: g,
|
|
1137
|
-
placeholder:
|
|
1137
|
+
placeholder: i
|
|
1138
1138
|
}
|
|
1139
1139
|
)
|
|
1140
1140
|
] }),
|
|
1141
|
-
v && /* @__PURE__ */
|
|
1141
|
+
v && /* @__PURE__ */ o("div", { className: "p-4 text-sm text-danger bg-danger-alt", children: [
|
|
1142
1142
|
"Error loading ",
|
|
1143
1143
|
a,
|
|
1144
1144
|
": ",
|
|
1145
1145
|
v
|
|
1146
1146
|
] }),
|
|
1147
|
-
/* @__PURE__ */ e("div", { className: "flex-1 overflow-auto", children: S && k.length === 0 ? /* @__PURE__ */ e("div", { className: "h-32 flex items-center justify-center", children: /* @__PURE__ */
|
|
1147
|
+
/* @__PURE__ */ e("div", { className: "flex-1 overflow-auto", children: S && k.length === 0 ? /* @__PURE__ */ e("div", { className: "h-32 flex items-center justify-center", children: /* @__PURE__ */ o("div", { className: "flex items-center space-x-2", children: [
|
|
1148
1148
|
/* @__PURE__ */ e("div", { className: "w-4 h-4 animate-spin rounded-full border-2 border-primary border-t-transparent" }),
|
|
1149
|
-
/* @__PURE__ */
|
|
1149
|
+
/* @__PURE__ */ o("span", { className: "text-sm text-stone", children: [
|
|
1150
1150
|
"Loading ",
|
|
1151
1151
|
a,
|
|
1152
1152
|
"..."
|
|
1153
1153
|
] })
|
|
1154
|
-
] }) }) : k.length === 0 ? /* @__PURE__ */
|
|
1154
|
+
] }) }) : k.length === 0 ? /* @__PURE__ */ o("div", { className: "p-6 text-center", children: [
|
|
1155
1155
|
/* @__PURE__ */ e("div", { className: "mx-auto mb-4 flex h-16 w-16 items-center justify-center rounded-full bg-sand", children: /* @__PURE__ */ e(Ne, { className: "h-8 w-8 text-charcoal" }) }),
|
|
1156
1156
|
/* @__PURE__ */ e("h3", { className: "text-sm font-semibold text-charcoal mb-2", children: h ? `No ${a} found` : w.length > 0 ? `Already chatting with all ${a}` : `No ${a} yet` }),
|
|
1157
1157
|
/* @__PURE__ */ e("p", { className: "text-xs text-stone", children: h ? "Try a different search term" : w.length > 0 ? `You have existing conversations with all your ${a}` : `${a.charAt(0).toUpperCase() + a.slice(1)} will appear here` })
|
|
1158
|
-
] }) : /* @__PURE__ */
|
|
1159
|
-
k.map((
|
|
1160
|
-
const u =
|
|
1158
|
+
] }) : /* @__PURE__ */ o("ul", { className: "space-y-0", children: [
|
|
1159
|
+
k.map((d) => {
|
|
1160
|
+
const u = d.name || d.email || d.id, b = d.email && d.name ? d.email : d.phone;
|
|
1161
1161
|
return /* @__PURE__ */ e("li", { children: /* @__PURE__ */ e(
|
|
1162
1162
|
"button",
|
|
1163
1163
|
{
|
|
1164
1164
|
type: "button",
|
|
1165
|
-
onClick: () => x(
|
|
1166
|
-
onKeyDown: (B) => R(B,
|
|
1165
|
+
onClick: () => x(d),
|
|
1166
|
+
onKeyDown: (B) => R(B, d),
|
|
1167
1167
|
className: "w-full px-4 py-3 hover:bg-sand transition-colors border-b border-sand text-left focus:outline-none focus:ring-2 focus:ring-black",
|
|
1168
|
-
children: /* @__PURE__ */
|
|
1169
|
-
/* @__PURE__ */
|
|
1168
|
+
children: /* @__PURE__ */ o("div", { className: "flex items-center justify-between", children: [
|
|
1169
|
+
/* @__PURE__ */ o("div", { className: "flex items-center space-x-3 flex-1 min-w-0", children: [
|
|
1170
1170
|
/* @__PURE__ */ e(
|
|
1171
1171
|
q,
|
|
1172
1172
|
{
|
|
1173
|
-
id:
|
|
1173
|
+
id: d.id,
|
|
1174
1174
|
name: u,
|
|
1175
|
-
image:
|
|
1175
|
+
image: d.image,
|
|
1176
1176
|
size: 40
|
|
1177
1177
|
}
|
|
1178
1178
|
),
|
|
1179
|
-
/* @__PURE__ */
|
|
1179
|
+
/* @__PURE__ */ o("div", { className: "flex-1 min-w-0", children: [
|
|
1180
1180
|
/* @__PURE__ */ e("h4", { className: "text-sm font-medium text-charcoal truncate", children: u }),
|
|
1181
1181
|
b && /* @__PURE__ */ e("p", { className: "text-xs text-stone truncate", children: b })
|
|
1182
1182
|
] })
|
|
1183
1183
|
] }),
|
|
1184
|
-
/* @__PURE__ */ e("div", { className: "flex-shrink-0", children: N ===
|
|
1184
|
+
/* @__PURE__ */ e("div", { className: "flex-shrink-0", children: N === d.id ? /* @__PURE__ */ e(re, { className: "h-5 w-5 text-primary animate-spin" }) : /* @__PURE__ */ e(Ne, { className: "h-5 w-5 text-stone" }) })
|
|
1185
1185
|
] })
|
|
1186
1186
|
}
|
|
1187
|
-
) },
|
|
1187
|
+
) }, d.id);
|
|
1188
1188
|
}),
|
|
1189
|
-
S && /* @__PURE__ */ e("li", { className: "p-4 flex justify-center", children: /* @__PURE__ */
|
|
1189
|
+
S && /* @__PURE__ */ e("li", { className: "p-4 flex justify-center", children: /* @__PURE__ */ o("div", { className: "flex items-center space-x-2", children: [
|
|
1190
1190
|
/* @__PURE__ */ e("div", { className: "w-4 h-4 animate-spin rounded-full border-2 border-primary border-t-transparent" }),
|
|
1191
1191
|
/* @__PURE__ */ e("span", { className: "text-sm text-stone", children: "Loading more..." })
|
|
1192
1192
|
] }) })
|
|
1193
1193
|
] }) })
|
|
1194
1194
|
] });
|
|
1195
|
-
}, ys = ({ className: t }) => /* @__PURE__ */
|
|
1195
|
+
}, ys = ({ className: t }) => /* @__PURE__ */ o(
|
|
1196
1196
|
"svg",
|
|
1197
1197
|
{
|
|
1198
1198
|
width: "140",
|
|
@@ -1202,7 +1202,7 @@ const ws = ({
|
|
|
1202
1202
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1203
1203
|
className: t,
|
|
1204
1204
|
children: [
|
|
1205
|
-
/* @__PURE__ */
|
|
1205
|
+
/* @__PURE__ */ o("g", { clipPath: "url(#clip0_empty_state)", children: [
|
|
1206
1206
|
/* @__PURE__ */ e(
|
|
1207
1207
|
"path",
|
|
1208
1208
|
{
|
|
@@ -1231,7 +1231,7 @@ const ws = ({
|
|
|
1231
1231
|
fill: "white"
|
|
1232
1232
|
}
|
|
1233
1233
|
),
|
|
1234
|
-
/* @__PURE__ */
|
|
1234
|
+
/* @__PURE__ */ o("g", { filter: "url(#filter0_empty_state)", children: [
|
|
1235
1235
|
/* @__PURE__ */ e(
|
|
1236
1236
|
"path",
|
|
1237
1237
|
{
|
|
@@ -1271,8 +1271,8 @@ const ws = ({
|
|
|
1271
1271
|
}
|
|
1272
1272
|
)
|
|
1273
1273
|
] }),
|
|
1274
|
-
/* @__PURE__ */
|
|
1275
|
-
/* @__PURE__ */
|
|
1274
|
+
/* @__PURE__ */ o("defs", { children: [
|
|
1275
|
+
/* @__PURE__ */ o(
|
|
1276
1276
|
"filter",
|
|
1277
1277
|
{
|
|
1278
1278
|
id: "filter0_empty_state",
|
|
@@ -1327,16 +1327,16 @@ const ws = ({
|
|
|
1327
1327
|
]
|
|
1328
1328
|
}
|
|
1329
1329
|
), Re = U.memo(
|
|
1330
|
-
({ hasChannels: t, channelsLoaded: s }) => /* @__PURE__ */ e("div", { className: "messaging-empty-state flex items-center justify-center h-full p-8 text-balance", children: /* @__PURE__ */
|
|
1330
|
+
({ hasChannels: t, channelsLoaded: s }) => /* @__PURE__ */ e("div", { className: "messaging-empty-state flex items-center justify-center h-full p-8 text-balance", children: /* @__PURE__ */ o("div", { className: "flex flex-col items-center max-w-sm text-center", children: [
|
|
1331
1331
|
/* @__PURE__ */ e(ys, {}),
|
|
1332
|
-
s && !t && /* @__PURE__ */
|
|
1332
|
+
s && !t && /* @__PURE__ */ o("div", { className: "mt-8", children: [
|
|
1333
1333
|
/* @__PURE__ */ e("h2", { className: "font-medium text-black text-[18px] mb-2", children: "Your inbox is empty" }),
|
|
1334
1334
|
/* @__PURE__ */ e("p", { className: "text-[#676B5F] text-sm mb-6", children: "Share with your followers to start receiving messages" })
|
|
1335
1335
|
] })
|
|
1336
1336
|
] }) })
|
|
1337
1337
|
);
|
|
1338
1338
|
Re.displayName = "EmptyState";
|
|
1339
|
-
const le = U.memo(({ message: t, onBack: s }) => /* @__PURE__ */ e("div", { className: "messaging-error-state flex items-center justify-center h-full p-8", children: /* @__PURE__ */
|
|
1339
|
+
const le = U.memo(({ message: t, onBack: s }) => /* @__PURE__ */ e("div", { className: "messaging-error-state flex items-center justify-center h-full p-8", children: /* @__PURE__ */ o("div", { className: "text-center max-w-sm", children: [
|
|
1340
1340
|
/* @__PURE__ */ e("div", { className: "w-24 h-24 bg-danger-alt/20 rounded-full flex items-center justify-center mx-auto mb-6", children: /* @__PURE__ */ e("span", { className: "text-4xl", children: "⚠️" }) }),
|
|
1341
1341
|
/* @__PURE__ */ e("h2", { className: "font-semibold text-charcoal mb-2", children: "Oops!" }),
|
|
1342
1342
|
/* @__PURE__ */ e("p", { className: "text-stone text-sm mb-6", children: t }),
|
|
@@ -1357,7 +1357,7 @@ const Fs = ({
|
|
|
1357
1357
|
renderMessageInputActions: n,
|
|
1358
1358
|
onChannelSelect: r,
|
|
1359
1359
|
onParticipantSelect: a,
|
|
1360
|
-
initialParticipantFilter:
|
|
1360
|
+
initialParticipantFilter: i,
|
|
1361
1361
|
initialParticipantData: l,
|
|
1362
1362
|
CustomChannelEmptyState: m,
|
|
1363
1363
|
showChannelList: h = !0,
|
|
@@ -1365,22 +1365,22 @@ const Fs = ({
|
|
|
1365
1365
|
channelListCustomEmptyStateIndicator: w,
|
|
1366
1366
|
onDeleteConversationClick: f,
|
|
1367
1367
|
onBlockParticipantClick: S,
|
|
1368
|
-
onReportParticipantClick:
|
|
1368
|
+
onReportParticipantClick: _
|
|
1369
1369
|
}) => {
|
|
1370
1370
|
const {
|
|
1371
1371
|
service: v,
|
|
1372
|
-
client:
|
|
1372
|
+
client: c,
|
|
1373
1373
|
isConnected: N,
|
|
1374
1374
|
isLoading: E,
|
|
1375
1375
|
error: I,
|
|
1376
1376
|
refreshConnection: k,
|
|
1377
1377
|
debug: x
|
|
1378
|
-
} = rs(), [R,
|
|
1378
|
+
} = rs(), [R, d] = y(null), [u, b] = y(!1), [B, j] = y(!1), [W, Y] = y(!1), [ie, Q] = y(/* @__PURE__ */ new Set()), [X, ce] = y(0), [O, H] = y(!1), [J, $] = y(null), D = z(null), {
|
|
1379
1379
|
participantSource: T,
|
|
1380
1380
|
participantLabel: A = "participants",
|
|
1381
1381
|
showDeleteConversation: V = !0
|
|
1382
1382
|
} = t, K = U.useMemo(() => {
|
|
1383
|
-
const C =
|
|
1383
|
+
const C = c == null ? void 0 : c.userID;
|
|
1384
1384
|
return {
|
|
1385
1385
|
...{
|
|
1386
1386
|
type: "messaging",
|
|
@@ -1392,13 +1392,13 @@ const Fs = ({
|
|
|
1392
1392
|
},
|
|
1393
1393
|
...g
|
|
1394
1394
|
};
|
|
1395
|
-
}, [g,
|
|
1396
|
-
if (!
|
|
1397
|
-
const C =
|
|
1395
|
+
}, [g, c == null ? void 0 : c.userID]), ee = z(null), Z = M(async () => {
|
|
1396
|
+
if (!c || !N) return;
|
|
1397
|
+
const C = c.userID;
|
|
1398
1398
|
if (C)
|
|
1399
1399
|
try {
|
|
1400
1400
|
x && console.log("[MessagingShell] Syncing channels for user:", C);
|
|
1401
|
-
const P = await
|
|
1401
|
+
const P = await c.queryChannels(
|
|
1402
1402
|
{
|
|
1403
1403
|
type: "messaging",
|
|
1404
1404
|
members: { $in: [C] }
|
|
@@ -1420,31 +1420,31 @@ const Fs = ({
|
|
|
1420
1420
|
} catch (P) {
|
|
1421
1421
|
console.error("[MessagingShell] Failed to sync channels:", P);
|
|
1422
1422
|
}
|
|
1423
|
-
}, [
|
|
1423
|
+
}, [c, N, x]);
|
|
1424
1424
|
G(() => {
|
|
1425
|
-
if (!
|
|
1426
|
-
const C =
|
|
1425
|
+
if (!c || !N) return;
|
|
1426
|
+
const C = c.userID;
|
|
1427
1427
|
C && ee.current !== C && Z();
|
|
1428
|
-
}, [
|
|
1429
|
-
if (!
|
|
1428
|
+
}, [c, N, Z]), G(() => {
|
|
1429
|
+
if (!i || !c || !N) return;
|
|
1430
1430
|
(async () => {
|
|
1431
|
-
const P =
|
|
1431
|
+
const P = c.userID;
|
|
1432
1432
|
if (P)
|
|
1433
1433
|
try {
|
|
1434
1434
|
x && console.log(
|
|
1435
1435
|
"[MessagingShell] Loading initial conversation with:",
|
|
1436
|
-
|
|
1436
|
+
i
|
|
1437
1437
|
);
|
|
1438
|
-
const F = await
|
|
1438
|
+
const F = await c.queryChannels(
|
|
1439
1439
|
{
|
|
1440
1440
|
type: "messaging",
|
|
1441
|
-
members: { $eq: [P,
|
|
1441
|
+
members: { $eq: [P, i] }
|
|
1442
1442
|
},
|
|
1443
1443
|
{},
|
|
1444
1444
|
{ limit: 1 }
|
|
1445
1445
|
);
|
|
1446
1446
|
if (F.length > 0)
|
|
1447
|
-
|
|
1447
|
+
d(F[0]), H(!0), $(null), r && r(F[0]), x && console.log(
|
|
1448
1448
|
"[MessagingShell] Initial conversation loaded:",
|
|
1449
1449
|
F[0].id
|
|
1450
1450
|
);
|
|
@@ -1460,7 +1460,7 @@ const Fs = ({
|
|
|
1460
1460
|
email: l.email,
|
|
1461
1461
|
phone: l.phone
|
|
1462
1462
|
});
|
|
1463
|
-
|
|
1463
|
+
d(L), H(!0), $(null), r && r(L), x && console.log(
|
|
1464
1464
|
"[MessagingShell] Channel created and loaded:",
|
|
1465
1465
|
L.id
|
|
1466
1466
|
);
|
|
@@ -1475,7 +1475,7 @@ const Fs = ({
|
|
|
1475
1475
|
"No conversation found with this account"
|
|
1476
1476
|
), x && console.log(
|
|
1477
1477
|
"[MessagingShell] No conversation found for:",
|
|
1478
|
-
|
|
1478
|
+
i
|
|
1479
1479
|
);
|
|
1480
1480
|
} catch (F) {
|
|
1481
1481
|
console.error(
|
|
@@ -1485,22 +1485,22 @@ const Fs = ({
|
|
|
1485
1485
|
}
|
|
1486
1486
|
})();
|
|
1487
1487
|
}, [
|
|
1488
|
-
|
|
1488
|
+
i,
|
|
1489
1489
|
l,
|
|
1490
|
-
|
|
1490
|
+
c,
|
|
1491
1491
|
N,
|
|
1492
1492
|
v,
|
|
1493
1493
|
x,
|
|
1494
1494
|
r
|
|
1495
1495
|
]);
|
|
1496
|
-
const
|
|
1496
|
+
const De = M(
|
|
1497
1497
|
(C) => {
|
|
1498
|
-
|
|
1498
|
+
d(C), r == null || r(C);
|
|
1499
1499
|
},
|
|
1500
1500
|
[r]
|
|
1501
|
-
),
|
|
1502
|
-
O ||
|
|
1503
|
-
}, [O]),
|
|
1501
|
+
), Me = M(() => {
|
|
1502
|
+
O || d(null);
|
|
1503
|
+
}, [O]), _e = M(
|
|
1504
1504
|
async (C) => {
|
|
1505
1505
|
var P;
|
|
1506
1506
|
if (v)
|
|
@@ -1520,38 +1520,38 @@ const Fs = ({
|
|
|
1520
1520
|
} catch (L) {
|
|
1521
1521
|
console.warn("[MessagingShell] Failed to unhide channel:", L);
|
|
1522
1522
|
}
|
|
1523
|
-
|
|
1523
|
+
d(F), Y(!1), (P = D.current) == null || P.close(), a == null || a(C);
|
|
1524
1524
|
} catch (F) {
|
|
1525
1525
|
console.error("[MessagingShell] Failed to start conversation:", F);
|
|
1526
1526
|
}
|
|
1527
1527
|
},
|
|
1528
1528
|
[v, a, x]
|
|
1529
|
-
), se =
|
|
1529
|
+
), se = M(() => {
|
|
1530
1530
|
var C;
|
|
1531
|
-
Y(!1), (C =
|
|
1532
|
-
}, []), Fe =
|
|
1531
|
+
Y(!1), (C = D.current) == null || C.close();
|
|
1532
|
+
}, []), Fe = M(
|
|
1533
1533
|
(C) => {
|
|
1534
|
-
C.target ===
|
|
1534
|
+
C.target === D.current && se();
|
|
1535
1535
|
},
|
|
1536
1536
|
[se]
|
|
1537
|
-
), Te =
|
|
1537
|
+
), Te = M(
|
|
1538
1538
|
async (C) => {
|
|
1539
|
-
x && console.log("[MessagingShell] Leaving conversation:", C.id),
|
|
1539
|
+
x && console.log("[MessagingShell] Leaving conversation:", C.id), d(null), H(!1), ee.current = null, await Z();
|
|
1540
1540
|
},
|
|
1541
1541
|
[Z, x]
|
|
1542
|
-
), Le =
|
|
1542
|
+
), Le = M(
|
|
1543
1543
|
async (C) => {
|
|
1544
|
-
x && console.log("[MessagingShell] Blocking participant:", C),
|
|
1544
|
+
x && console.log("[MessagingShell] Blocking participant:", C), d(null), H(!1), ee.current = null, await Z();
|
|
1545
1545
|
},
|
|
1546
1546
|
[Z, x]
|
|
1547
1547
|
), te = !!R;
|
|
1548
|
-
return E ? /* @__PURE__ */ e("div", { className: p("h-full", s), children: /* @__PURE__ */ e(ae, {}) }) : I ? /* @__PURE__ */ e("div", { className: p("h-full", s), children: /* @__PURE__ */ e(le, { message: I, onBack: k }) }) : !N || !
|
|
1548
|
+
return E ? /* @__PURE__ */ e("div", { className: p("h-full", s), children: /* @__PURE__ */ e(ae, {}) }) : I ? /* @__PURE__ */ e("div", { className: p("h-full", s), children: /* @__PURE__ */ e(le, { message: I, onBack: k }) }) : !N || !c ? /* @__PURE__ */ e("div", { className: p("h-full", s), children: /* @__PURE__ */ e(
|
|
1549
1549
|
le,
|
|
1550
1550
|
{
|
|
1551
1551
|
message: "Not connected to messaging service",
|
|
1552
1552
|
onBack: k
|
|
1553
1553
|
}
|
|
1554
|
-
) }) : J ? /* @__PURE__ */ e("div", { className: p("h-full", s), children: /* @__PURE__ */ e(le, { message: J }) }) : /* @__PURE__ */
|
|
1554
|
+
) }) : J ? /* @__PURE__ */ e("div", { className: p("h-full", s), children: /* @__PURE__ */ e(le, { message: J }) }) : /* @__PURE__ */ o(
|
|
1555
1555
|
"div",
|
|
1556
1556
|
{
|
|
1557
1557
|
className: p(
|
|
@@ -1559,7 +1559,7 @@ const Fs = ({
|
|
|
1559
1559
|
s
|
|
1560
1560
|
),
|
|
1561
1561
|
children: [
|
|
1562
|
-
/* @__PURE__ */
|
|
1562
|
+
/* @__PURE__ */ o("div", { className: "flex h-full min-h-0", children: [
|
|
1563
1563
|
/* @__PURE__ */ e(
|
|
1564
1564
|
"div",
|
|
1565
1565
|
{
|
|
@@ -1576,7 +1576,7 @@ const Fs = ({
|
|
|
1576
1576
|
children: /* @__PURE__ */ e(
|
|
1577
1577
|
Ie,
|
|
1578
1578
|
{
|
|
1579
|
-
onChannelSelect:
|
|
1579
|
+
onChannelSelect: De,
|
|
1580
1580
|
selectedChannel: R || void 0,
|
|
1581
1581
|
filters: K,
|
|
1582
1582
|
customEmptyStateIndicator: w
|
|
@@ -1591,16 +1591,16 @@ const Fs = ({
|
|
|
1591
1591
|
"messaging-conversation-view flex-1 flex-col min-w-0 min-h-0",
|
|
1592
1592
|
{
|
|
1593
1593
|
// In direct conversation mode (or waiting for it), always show (full width)
|
|
1594
|
-
flex: O || te ||
|
|
1594
|
+
flex: O || te || i,
|
|
1595
1595
|
// Normal mode: hide on mobile when no channel selected
|
|
1596
|
-
"hidden lg:flex": !O && !te && !
|
|
1596
|
+
"hidden lg:flex": !O && !te && !i
|
|
1597
1597
|
}
|
|
1598
1598
|
),
|
|
1599
1599
|
children: R ? /* @__PURE__ */ e("div", { className: "flex-1 min-h-0 flex flex-col", children: /* @__PURE__ */ e(
|
|
1600
1600
|
ke,
|
|
1601
1601
|
{
|
|
1602
1602
|
channel: R,
|
|
1603
|
-
onBack:
|
|
1603
|
+
onBack: Me,
|
|
1604
1604
|
showBackButton: !O,
|
|
1605
1605
|
renderMessageInputActions: n,
|
|
1606
1606
|
onLeaveConversation: Te,
|
|
@@ -1609,10 +1609,10 @@ const Fs = ({
|
|
|
1609
1609
|
showDeleteConversation: V,
|
|
1610
1610
|
onDeleteConversationClick: f,
|
|
1611
1611
|
onBlockParticipantClick: S,
|
|
1612
|
-
onReportParticipantClick:
|
|
1612
|
+
onReportParticipantClick: _
|
|
1613
1613
|
},
|
|
1614
1614
|
R.id
|
|
1615
|
-
) }) :
|
|
1615
|
+
) }) : i ? (
|
|
1616
1616
|
// Show loading while creating/loading direct conversation channel
|
|
1617
1617
|
/* @__PURE__ */ e(ae, {})
|
|
1618
1618
|
) : /* @__PURE__ */ e(
|
|
@@ -1629,7 +1629,7 @@ const Fs = ({
|
|
|
1629
1629
|
/* @__PURE__ */ e(
|
|
1630
1630
|
"dialog",
|
|
1631
1631
|
{
|
|
1632
|
-
ref:
|
|
1632
|
+
ref: D,
|
|
1633
1633
|
className: "mes-dialog",
|
|
1634
1634
|
onClick: Fe,
|
|
1635
1635
|
onClose: se,
|
|
@@ -1637,7 +1637,7 @@ const Fs = ({
|
|
|
1637
1637
|
ws,
|
|
1638
1638
|
{
|
|
1639
1639
|
participantSource: T,
|
|
1640
|
-
onSelectParticipant:
|
|
1640
|
+
onSelectParticipant: _e,
|
|
1641
1641
|
onClose: se,
|
|
1642
1642
|
existingParticipantIds: ie,
|
|
1643
1643
|
participantLabel: A,
|
|
@@ -1678,22 +1678,22 @@ const Fs = ({
|
|
|
1678
1678
|
loadingFaqId: n,
|
|
1679
1679
|
headerText: r,
|
|
1680
1680
|
className: a,
|
|
1681
|
-
avatarImage:
|
|
1681
|
+
avatarImage: i,
|
|
1682
1682
|
avatarName: l
|
|
1683
1683
|
}) => {
|
|
1684
1684
|
const m = t.filter((h) => h.enabled).sort((h, g) => (h.order ?? 0) - (g.order ?? 0));
|
|
1685
|
-
return m.length === 0 ? null : /* @__PURE__ */ e("div", { className: a, children: /* @__PURE__ */
|
|
1686
|
-
(
|
|
1685
|
+
return m.length === 0 ? null : /* @__PURE__ */ e("div", { className: a, children: /* @__PURE__ */ o("div", { className: "flex gap-3 items-end", children: [
|
|
1686
|
+
(i || l) && /* @__PURE__ */ e("div", { className: "flex-none", children: /* @__PURE__ */ e(
|
|
1687
1687
|
q,
|
|
1688
1688
|
{
|
|
1689
1689
|
id: l || "account",
|
|
1690
1690
|
name: l || "Account",
|
|
1691
|
-
image:
|
|
1691
|
+
image: i,
|
|
1692
1692
|
size: 24,
|
|
1693
1693
|
shape: "circle"
|
|
1694
1694
|
}
|
|
1695
1695
|
) }),
|
|
1696
|
-
/* @__PURE__ */
|
|
1696
|
+
/* @__PURE__ */ o(
|
|
1697
1697
|
"div",
|
|
1698
1698
|
{
|
|
1699
1699
|
className: "flex-1 flex flex-col gap-3 rounded-lg p-4",
|
|
@@ -1714,31 +1714,31 @@ const Fs = ({
|
|
|
1714
1714
|
)
|
|
1715
1715
|
] }) });
|
|
1716
1716
|
}, Ls = (t, s = {}) => {
|
|
1717
|
-
const { initialSearch: n = "", pageSize: r = 20 } = s, [a,
|
|
1717
|
+
const { initialSearch: n = "", pageSize: r = 20 } = s, [a, i] = y([]), [l, m] = y(!1), [h, g] = y(null), [w, f] = y(n), [S, _] = y(!0), [v, c] = y(), N = M(async (x = !1, R) => {
|
|
1718
1718
|
if (l) return;
|
|
1719
|
-
const
|
|
1719
|
+
const d = R !== void 0 ? R : w;
|
|
1720
1720
|
m(!0), g(null);
|
|
1721
1721
|
try {
|
|
1722
1722
|
const u = await t.loadParticipants({
|
|
1723
|
-
search:
|
|
1723
|
+
search: d || void 0,
|
|
1724
1724
|
limit: r,
|
|
1725
1725
|
cursor: x ? void 0 : v
|
|
1726
1726
|
});
|
|
1727
|
-
|
|
1727
|
+
i(
|
|
1728
1728
|
(b) => x ? u.participants : [...b, ...u.participants]
|
|
1729
|
-
),
|
|
1729
|
+
), _(u.hasMore), c(u.nextCursor);
|
|
1730
1730
|
} catch (u) {
|
|
1731
1731
|
const b = u instanceof Error ? u.message : "Failed to load participants";
|
|
1732
1732
|
g(b), console.error("[useParticipants] Load error:", u);
|
|
1733
1733
|
} finally {
|
|
1734
1734
|
m(!1);
|
|
1735
1735
|
}
|
|
1736
|
-
}, [t, w, v, r, l]), E =
|
|
1736
|
+
}, [t, w, v, r, l]), E = M(() => {
|
|
1737
1737
|
S && !l && N(!1);
|
|
1738
|
-
}, [S, l, N]), I =
|
|
1739
|
-
f(x),
|
|
1740
|
-
}, [N]), k =
|
|
1741
|
-
|
|
1738
|
+
}, [S, l, N]), I = M((x) => {
|
|
1739
|
+
f(x), c(void 0), N(!0, x);
|
|
1740
|
+
}, [N]), k = M(() => {
|
|
1741
|
+
c(void 0), N(!0);
|
|
1742
1742
|
}, [N]);
|
|
1743
1743
|
return G(() => {
|
|
1744
1744
|
N(!0);
|
|
@@ -1761,7 +1761,7 @@ export {
|
|
|
1761
1761
|
ke as ChannelView,
|
|
1762
1762
|
Ts as FaqList,
|
|
1763
1763
|
Es as FaqListItem,
|
|
1764
|
-
|
|
1764
|
+
_s as MessagingProvider,
|
|
1765
1765
|
Fs as MessagingShell,
|
|
1766
1766
|
ws as ParticipantPicker,
|
|
1767
1767
|
as as formatRelativeTime,
|