@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 CHANGED
@@ -1,6 +1,6 @@
1
- import { jsx as e, jsxs as i, Fragment as ve } from "react/jsx-runtime";
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 D, useState as y, useRef as z, useEffect as G } from "react";
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), Ms = ({
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: c = !1
24
+ debug: i = !1
25
25
  }) => {
26
- const l = D(
26
+ const l = M(
27
27
  (u, ...b) => {
28
- c && console.log(`🔥 [MessagingProvider] ${u}`, ...b);
28
+ i && console.log(`🔥 [MessagingProvider] ${u}`, ...b);
29
29
  },
30
- [c]
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), [M, v] = y(!1), [d, N] = y(null), E = z(!1), I = z({
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: c
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, c, l]);
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 = D(async () => {
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]), o = U.useMemo(() => (l("💫 CONTEXT VALUE MEMOIZATION", {
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: M,
183
- hasError: !!d,
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: M,
190
- error: d,
189
+ isLoading: _,
190
+ error: c,
191
191
  capabilities: a,
192
192
  refreshConnection: R,
193
- debug: c
193
+ debug: i
194
194
  }), [
195
195
  m,
196
196
  g,
197
197
  f,
198
- M,
199
- d,
198
+ _,
199
+ c,
200
200
  a,
201
201
  R,
202
- c,
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: !!o
209
- }), /* @__PURE__ */ e(ye.Provider, { value: o, children: g && f ? /* @__PURE__ */ e(
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 c = is(t), m = n < 32 ? "text-xs" : n < 56 ? "text-sm" : "text-lg", h = a === "circle" ? { borderRadius: "50%" } : {
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: c
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 c = (s == null ? void 0 : s.id) === (t == null ? void 0 : t.id), l = () => {
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
- (o) => {
326
+ (d) => {
327
327
  var u, b;
328
- return ((u = o.user) == null ? void 0 : u.id) && o.user.id !== ((b = t == null ? void 0 : t._client) == null ? void 0 : b.userID);
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], M = (() => {
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 o = (u = f == null ? void 0 : f.attachments) == null ? void 0 : u[0];
334
- return o != null && o.asset_url ? o.asset_url : o != null && o.image_url ? o.image_url : o != null && o.og_scrape_url ? o.og_scrape_url : o != null && o.thumb_url ? o.thumb_url : "No messages yet";
335
- })(), v = f != null && f.created_at ? as(new Date(f.created_at)) : "", d = a ?? 0;
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: c,
338
+ isSelected: i,
339
339
  participantName: g,
340
- unreadCount: d,
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": c,
351
- "hover:bg-sand": !c
350
+ "bg-primary-alt/10 border-l-4 border-l-primary": i,
351
+ "hover:bg-sand": !i
352
352
  }
353
353
  ),
354
- children: /* @__PURE__ */ i("div", { className: "flex items-start gap-3", children: [
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__ */ i("div", { className: "flex-1 min-w-0 flex flex-col gap-1", children: [
366
- /* @__PURE__ */ i("div", { className: "flex items-center justify-between gap-2", children: [
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
- c ? "text-primary" : "text-charcoal"
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__ */ i("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: M }),
381
- d > 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: d > 99 ? "99+" : d })
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 c = U.useRef(0);
399
- c.current++;
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: c.current,
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__ */ i(
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__ */ i(
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__ */ i("div", { className: "p-2", children: [
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__ */ i(ve, { children: [
541
+ return /* @__PURE__ */ o(ve, { children: [
542
542
  /* @__PURE__ */ e("div", { className: "left-container", children: /* @__PURE__ */ e(We, {}) }),
543
- /* @__PURE__ */ i("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: [
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__ */ i("div", { className: "flex", children: [
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__ */ i("div", { className: "message-input flex items-center gap-2 p-4", children: [
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__ */ i("div", { className: "str-chat__message--system", "data-testid": "message-system", children: [
578
- /* @__PURE__ */ i("div", { className: "str-chat__message--system__text", children: [
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__ */ i(
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__ */ i("svg", { viewBox: "0 0 100 100", className: "size-8 fill-pebble", stroke: "none", children: [
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__ */ i("div", { className: "flex items-center", children: [
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(), c = U.useMemo(() => Object.values(a.state.members || {}).find(
635
+ const { channel: a } = we(), i = U.useMemo(() => Object.values(a.state.members || {}).find(
636
636
  (v) => {
637
- var d;
638
- return ((d = v.user) == null ? void 0 : d.id) && v.user.id !== a._client.userID;
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 = c == null ? void 0 : c.user) == null ? void 0 : h.name) || ((g = c == null ? void 0 : c.user) == null ? void 0 : g.id) || "Unknown member", m = (w = c == null ? void 0 : c.user) == null ? void 0 : w.image;
641
- return /* @__PURE__ */ i("div", { className: "@container", children: [
642
- /* @__PURE__ */ i("div", { className: "flex justify-between items-center @lg:hidden", children: [
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__ */ i("div", { className: "flex flex-col gap-1 items-center", children: [
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 = c == null ? void 0 : c.user) == null ? void 0 : f.id) || a.id || "unknown",
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__ */ i("div", { className: "hidden @lg:flex items-center justify-between gap-3 min-h-12", children: [
683
- /* @__PURE__ */ i("div", { className: "flex items-center gap-4 min-w-0", children: [
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 = c == null ? void 0 : c.user) == null ? void 0 : S.id) || a.id || "unknown",
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: c,
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(), [M, v] = y(!1), [d, N] = y(!1), [E, I] = y(!1), k = D(async () => {
732
- var _;
733
- if (!(!f || !((_ = n == null ? void 0 : n.user) != null && _.id)))
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 (!d) {
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 = ((_ = r._client) == null ? void 0 : _.userID) ?? null;
758
- await r.hide(T, !1), c && await c(r), s();
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 _, T, A;
766
+ var D, T, A;
767
767
  if (!(E || !f)) {
768
- g == null || g(), S && console.log("[ChannelInfoDialog] Block member", (_ = n == null ? void 0 : n.user) == null ? void 0 : _.id), I(!0);
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
- }, o = async () => {
778
- var _, T, A;
777
+ }, d = async () => {
778
+ var D, T, A;
779
779
  if (!(E || !f)) {
780
- g == null || g(), S && console.log("[ChannelInfoDialog] Unblock member", (_ = n == null ? void 0 : n.user) == null ? void 0 : _.id), I(!0);
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
- _.target === t.current && s();
806
+ onClick: (D) => {
807
+ D.target === t.current && s();
808
808
  },
809
- children: /* @__PURE__ */ i("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__ */ i("div", { className: "flex items-center justify-between border-b border-sand px-4 py-3", children: [
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__ */ i("div", { className: "flex-1 px-2 overflow-y-auto w-full", children: [
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__ */ i("div", { className: "flex items-center gap-3 w-full", children: [
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__ */ i("div", { className: "flex flex-col min-w-0 flex-1", children: [
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__ */ i("ul", { className: "flex flex-col gap-2 mt-2", children: [
853
- m && /* @__PURE__ */ e("li", { children: /* @__PURE__ */ i(
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: d,
858
- "aria-busy": d,
857
+ disabled: c,
858
+ "aria-busy": c,
859
859
  children: [
860
- d ? /* @__PURE__ */ e(re, { className: "h-5 w-5 animate-spin" }) : /* @__PURE__ */ e(ss, { className: "h-5 w-5" }),
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: M ? /* @__PURE__ */ i(
865
+ /* @__PURE__ */ e("li", { children: _ ? /* @__PURE__ */ o(
866
866
  ne,
867
867
  {
868
- onClick: o,
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__ */ i(
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__ */ i(ne, { variant: "danger", onClick: u, children: [
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: c = !0,
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 d = g.data ?? {};
916
- if (d.followerStatus)
917
- return String(d.followerStatus);
918
- if (d.isFollower !== void 0)
919
- return d.isFollower ? "Subscribed to you" : "Not subscribed";
920
- }, [g.data]), M = D(() => {
921
- var d;
922
- (d = w.current) == null || d.showModal();
923
- }, []), v = D(() => {
924
- var d;
925
- (d = w.current) == null || d.close();
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__ */ i(ve, { children: [
928
- /* @__PURE__ */ i(Xe, { children: [
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: M,
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: c,
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: c,
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: c,
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__ */ i("div", { className: "relative", children: [
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: c = "Search participants...",
1064
+ searchPlaceholder: i = "Search participants...",
1065
1065
  className: l
1066
1066
  }) => {
1067
- const { debug: m } = oe(), [h, g] = y(""), [w, f] = y([]), [S, M] = y(!1), [v, d] = y(null), [N, E] = y(
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..."), M(!0), d(null);
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
- d(b), console.error("[ParticipantPicker] Failed to load participants:", u);
1092
+ c(b), console.error("[ParticipantPicker] Failed to load participants:", u);
1093
1093
  } finally {
1094
- M(!1);
1094
+ _(!1);
1095
1095
  }
1096
1096
  })();
1097
1097
  }, [t.loading, m]);
1098
- const k = w.filter((o) => !r.has(o.id)).filter((o) => {
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 o.name.toLowerCase().includes(u) || ((b = o.email) == null ? void 0 : b.toLowerCase().includes(u)) || !1;
1103
- }), x = D(
1104
- async (o) => {
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(o.id);
1106
+ E(d.id);
1107
1107
  try {
1108
- await s(o);
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 = (o, u) => {
1116
- (o.key === "Enter" || o.key === " ") && (o.preventDefault(), x(u));
1115
+ ), R = (d, u) => {
1116
+ (d.key === "Enter" || d.key === " ") && (d.preventDefault(), x(u));
1117
1117
  };
1118
- return /* @__PURE__ */ i("div", { className: p("flex flex-col h-full", l), children: [
1119
- /* @__PURE__ */ i("div", { className: "px-4 py-4 border-b border-sand bg-chalk", children: [
1120
- /* @__PURE__ */ i("div", { className: "flex items-center justify-between mb-3", children: [
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__ */ i("p", { className: "text-xs text-stone mb-3", children: [
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: c
1137
+ placeholder: i
1138
1138
  }
1139
1139
  )
1140
1140
  ] }),
1141
- v && /* @__PURE__ */ i("div", { className: "p-4 text-sm text-danger bg-danger-alt", children: [
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__ */ i("div", { className: "flex items-center space-x-2", children: [
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__ */ i("span", { className: "text-sm text-stone", children: [
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__ */ i("div", { className: "p-6 text-center", children: [
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__ */ i("ul", { className: "space-y-0", children: [
1159
- k.map((o) => {
1160
- const u = o.name || o.email || o.id, b = o.email && o.name ? o.email : o.phone;
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(o),
1166
- onKeyDown: (B) => R(B, o),
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__ */ i("div", { className: "flex items-center justify-between", children: [
1169
- /* @__PURE__ */ i("div", { className: "flex items-center space-x-3 flex-1 min-w-0", children: [
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: o.id,
1173
+ id: d.id,
1174
1174
  name: u,
1175
- image: o.image,
1175
+ image: d.image,
1176
1176
  size: 40
1177
1177
  }
1178
1178
  ),
1179
- /* @__PURE__ */ i("div", { className: "flex-1 min-w-0", children: [
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 === o.id ? /* @__PURE__ */ e(re, { className: "h-5 w-5 text-primary animate-spin" }) : /* @__PURE__ */ e(Ne, { className: "h-5 w-5 text-stone" }) })
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
- ) }, o.id);
1187
+ ) }, d.id);
1188
1188
  }),
1189
- S && /* @__PURE__ */ e("li", { className: "p-4 flex justify-center", children: /* @__PURE__ */ i("div", { className: "flex items-center space-x-2", children: [
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__ */ i(
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__ */ i("g", { clipPath: "url(#clip0_empty_state)", children: [
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__ */ i("g", { filter: "url(#filter0_empty_state)", children: [
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__ */ i("defs", { children: [
1275
- /* @__PURE__ */ i(
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__ */ i("div", { className: "flex flex-col items-center max-w-sm text-center", children: [
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__ */ i("div", { className: "mt-8", children: [
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__ */ i("div", { className: "text-center max-w-sm", children: [
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: c,
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: M
1368
+ onReportParticipantClick: _
1369
1369
  }) => {
1370
1370
  const {
1371
1371
  service: v,
1372
- client: d,
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, o] = 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), _ = z(null), {
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 = d == null ? void 0 : d.userID;
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, d == null ? void 0 : d.userID]), ee = z(null), Z = D(async () => {
1396
- if (!d || !N) return;
1397
- const C = d.userID;
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 d.queryChannels(
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
- }, [d, N, x]);
1423
+ }, [c, N, x]);
1424
1424
  G(() => {
1425
- if (!d || !N) return;
1426
- const C = d.userID;
1425
+ if (!c || !N) return;
1426
+ const C = c.userID;
1427
1427
  C && ee.current !== C && Z();
1428
- }, [d, N, Z]), G(() => {
1429
- if (!c || !d || !N) return;
1428
+ }, [c, N, Z]), G(() => {
1429
+ if (!i || !c || !N) return;
1430
1430
  (async () => {
1431
- const P = d.userID;
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
- c
1436
+ i
1437
1437
  );
1438
- const F = await d.queryChannels(
1438
+ const F = await c.queryChannels(
1439
1439
  {
1440
1440
  type: "messaging",
1441
- members: { $eq: [P, c] }
1441
+ members: { $eq: [P, i] }
1442
1442
  },
1443
1443
  {},
1444
1444
  { limit: 1 }
1445
1445
  );
1446
1446
  if (F.length > 0)
1447
- o(F[0]), H(!0), $(null), r && r(F[0]), x && console.log(
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
- o(L), H(!0), $(null), r && r(L), x && console.log(
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
- c
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
- c,
1488
+ i,
1489
1489
  l,
1490
- d,
1490
+ c,
1491
1491
  N,
1492
1492
  v,
1493
1493
  x,
1494
1494
  r
1495
1495
  ]);
1496
- const _e = D(
1496
+ const De = M(
1497
1497
  (C) => {
1498
- o(C), r == null || r(C);
1498
+ d(C), r == null || r(C);
1499
1499
  },
1500
1500
  [r]
1501
- ), De = D(() => {
1502
- O || o(null);
1503
- }, [O]), Me = D(
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
- o(F), Y(!1), (P = _.current) == null || P.close(), a == null || a(C);
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 = D(() => {
1529
+ ), se = M(() => {
1530
1530
  var C;
1531
- Y(!1), (C = _.current) == null || C.close();
1532
- }, []), Fe = D(
1531
+ Y(!1), (C = D.current) == null || C.close();
1532
+ }, []), Fe = M(
1533
1533
  (C) => {
1534
- C.target === _.current && se();
1534
+ C.target === D.current && se();
1535
1535
  },
1536
1536
  [se]
1537
- ), Te = D(
1537
+ ), Te = M(
1538
1538
  async (C) => {
1539
- x && console.log("[MessagingShell] Leaving conversation:", C.id), o(null), H(!1), ee.current = null, await Z();
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 = D(
1542
+ ), Le = M(
1543
1543
  async (C) => {
1544
- x && console.log("[MessagingShell] Blocking participant:", C), o(null), H(!1), ee.current = null, await Z();
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 || !d ? /* @__PURE__ */ e("div", { className: p("h-full", s), children: /* @__PURE__ */ e(
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__ */ i(
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__ */ i("div", { className: "flex h-full min-h-0", children: [
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: _e,
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 || c,
1594
+ flex: O || te || i,
1595
1595
  // Normal mode: hide on mobile when no channel selected
1596
- "hidden lg:flex": !O && !te && !c
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: De,
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: M
1612
+ onReportParticipantClick: _
1613
1613
  },
1614
1614
  R.id
1615
- ) }) : c ? (
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: Me,
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: c,
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__ */ i("div", { className: "flex gap-3 items-end", children: [
1686
- (c || l) && /* @__PURE__ */ e("div", { className: "flex-none", children: /* @__PURE__ */ e(
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: c,
1691
+ image: i,
1692
1692
  size: 24,
1693
1693
  shape: "circle"
1694
1694
  }
1695
1695
  ) }),
1696
- /* @__PURE__ */ i(
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, c] = y([]), [l, m] = y(!1), [h, g] = y(null), [w, f] = y(n), [S, M] = y(!0), [v, d] = y(), N = D(async (x = !1, R) => {
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 o = R !== void 0 ? R : w;
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: o || void 0,
1723
+ search: d || void 0,
1724
1724
  limit: r,
1725
1725
  cursor: x ? void 0 : v
1726
1726
  });
1727
- c(
1727
+ i(
1728
1728
  (b) => x ? u.participants : [...b, ...u.participants]
1729
- ), M(u.hasMore), d(u.nextCursor);
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 = D(() => {
1736
+ }, [t, w, v, r, l]), E = M(() => {
1737
1737
  S && !l && N(!1);
1738
- }, [S, l, N]), I = D((x) => {
1739
- f(x), d(void 0), N(!0, x);
1740
- }, [N]), k = D(() => {
1741
- d(void 0), N(!0);
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
- Ms as MessagingProvider,
1764
+ _s as MessagingProvider,
1765
1765
  Fs as MessagingShell,
1766
1766
  ws as ParticipantPicker,
1767
1767
  as as formatRelativeTime,