@fiction/sdk 1.0.17 → 1.0.19

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/self.js CHANGED
@@ -1,12 +1,12 @@
1
1
  var Ct = Object.defineProperty;
2
- var io = (e, r, o) => r in e ? Ct(e, r, { enumerable: !0, configurable: !0, writable: !0, value: o }) : e[r] = o;
2
+ var ao = (e, r, o) => r in e ? Ct(e, r, { enumerable: !0, configurable: !0, writable: !0, value: o }) : e[r] = o;
3
3
  var s = (e, r) => Ct(e, "name", { value: r, configurable: !0 });
4
- var D = (e, r, o) => io(e, typeof r != "symbol" ? r + "" : r, o);
5
- import { ref as P, defineComponent as j, createElementBlock as b, openBlock as d, createElementVNode as l, normalizeClass as z, watch as se, createBlock as _, TransitionGroup as Pt, withCtx as ee, renderSlot as Ce, computed as F, createCommentVNode as E, onMounted as Ie, Fragment as Ae, renderList as rt, withDirectives as Ft, vModelText as Vt, toDisplayString as N, createVNode as B, withKeys as lo, createTextVNode as He, unref as Y, resolveDynamicComponent as co, nextTick as Xe, Transition as _e, withModifiers as et, normalizeStyle as st, onUnmounted as ft, shallowRef as uo, Teleport as ho, normalizeProps as fo, guardReactiveProps as go, mergeProps as St } from "vue";
6
- import { S as Dt } from "./base-CEr2lLFg.js";
7
- import { Conversation as Mt } from "@elevenlabs/client";
8
- import { objectId as mo } from "@fiction/utils";
9
- const bo = 256, vo = 0.8, po = 50, xo = {
4
+ var B = (e, r, o) => ao(e, typeof r != "symbol" ? r + "" : r, o);
5
+ import { ref as P, defineComponent as j, createElementBlock as b, openBlock as d, createElementVNode as l, normalizeClass as z, watch as se, createBlock as _, TransitionGroup as Tt, withCtx as ee, renderSlot as Ce, computed as F, createCommentVNode as E, onMounted as Ie, Fragment as Ae, renderList as rt, withDirectives as Pt, vModelText as Ft, toDisplayString as N, createVNode as D, withKeys as io, createTextVNode as He, unref as Y, resolveDynamicComponent as lo, nextTick as Xe, Transition as _e, withModifiers as et, normalizeStyle as st, onUnmounted as ft, shallowRef as co, Teleport as uo, normalizeProps as ho, guardReactiveProps as fo, mergeProps as go } from "vue";
6
+ import { S as Vt, F as mo } from "./sdkClient-C9BL_Op4.js";
7
+ import { Conversation as St } from "@elevenlabs/client";
8
+ import { objectId as bo } from "@fiction/utils";
9
+ const vo = 256, po = 0.8, xo = 50, yo = {
10
10
  bars: 64,
11
11
  barWidth: 3,
12
12
  barSpacing: 1,
@@ -93,17 +93,17 @@ const bo = 256, vo = 0.8, po = 50, xo = {
93
93
  7500,
94
94
  8e3,
95
95
  8500
96
- ], vt = class vt extends Dt {
96
+ ], vt = class vt extends Vt {
97
97
  constructor(o) {
98
98
  super("ClientAudio", o);
99
- D(this, "audioContext");
100
- D(this, "analyser");
101
- D(this, "microphone");
102
- D(this, "audioLevelInterval");
103
- D(this, "stream");
104
- D(this, "visibilityChangeHandler");
99
+ B(this, "audioContext");
100
+ B(this, "analyser");
101
+ B(this, "microphone");
102
+ B(this, "audioLevelInterval");
103
+ B(this, "stream");
104
+ B(this, "visibilityChangeHandler");
105
105
  // Public reactive state
106
- D(this, "audioLevels", P({ inputLevel: 0, outputLevel: 0 }));
106
+ B(this, "audioLevels", P({ inputLevel: 0, outputLevel: 0 }));
107
107
  this.setupVisibilityHandler();
108
108
  }
109
109
  /**
@@ -156,7 +156,7 @@ const bo = 256, vo = 0.8, po = 50, xo = {
156
156
  if (!this.stream)
157
157
  throw new Error("No audio stream available");
158
158
  try {
159
- this.audioContext = new AudioContext(), this.analyser = this.audioContext.createAnalyser(), this.microphone = this.audioContext.createMediaStreamSource(this.stream), this.analyser.fftSize = bo, this.analyser.smoothingTimeConstant = vo, this.microphone.connect(this.analyser), this.logger.info("Audio analysis setup complete");
159
+ this.audioContext = new AudioContext(), this.analyser = this.audioContext.createAnalyser(), this.microphone = this.audioContext.createMediaStreamSource(this.stream), this.analyser.fftSize = vo, this.analyser.smoothingTimeConstant = po, this.microphone.connect(this.analyser), this.logger.info("Audio analysis setup complete");
160
160
  } catch (o) {
161
161
  throw this.logger.error("Failed to setup audio analysis:", o), o;
162
162
  }
@@ -177,8 +177,8 @@ const bo = 256, vo = 0.8, po = 50, xo = {
177
177
  }
178
178
  try {
179
179
  this.analyser.getByteFrequencyData(t);
180
- const i = t.reduce((C, u) => C + u, 0) / t.length, f = Math.min(i / 128, 1), h = o?.() ? 0.3 : 0;
181
- this.audioLevels.value = { inputLevel: f, outputLevel: h };
180
+ const i = t.reduce((C, u) => C + u, 0) / t.length, h = Math.min(i / 128, 1), f = o?.() ? 0.3 : 0;
181
+ this.audioLevels.value = { inputLevel: h, outputLevel: f };
182
182
  } catch (i) {
183
183
  this.logger.error("Error in audio level monitoring:", i), this.stopAudioLevelMonitoring();
184
184
  }
@@ -187,7 +187,7 @@ const bo = 256, vo = 0.8, po = 50, xo = {
187
187
  this.logger.error("Async error in audio level monitoring:", i);
188
188
  });
189
189
  }, "intervalWrapper");
190
- this.audioLevelInterval = window.setInterval(a, po);
190
+ this.audioLevelInterval = window.setInterval(a, xo);
191
191
  }
192
192
  /**
193
193
  * Stop monitoring audio levels
@@ -257,58 +257,7 @@ const Bt = [
257
257
  label: "About",
258
258
  icon: "i-tabler-user-circle"
259
259
  }
260
- ];
261
- function At(e) {
262
- return e ? typeof e == "string" ? e : e.src || "" : "";
263
- }
264
- s(At, "getImageSrc");
265
- function tt(e) {
266
- return At(e.cover) || At(e.avatar) || "/img/placeholder-avatar.png";
267
- }
268
- s(tt, "getSelfAvatarUrl");
269
- function qe() {
270
- return "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iODAiIGhlaWdodD0iODAiIHZpZXdCb3g9IjAgMCA4MCA4MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHJlY3Qgd2lkdGg9IjgwIiBoZWlnaHQ9IjgwIiByeD0iNDAiIGZpbGw9IiM2MzY2RjEiLz4KPHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeD0iMjAiIHk9IjIwIj4KPHA0aCBkPSJNMTIgMTJjMi4yMSAwIDQtMS43OSA0LTRTNC4yMSA0IDIgNHMxLjc5IDQgNCA0em0wIDJjLTIuNjcgMC04IDEuMzQtOCA0djJoMTZ2LTJjMC0yLjY2LTUuMzMtNC04LTR6IiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4KPC9zdmc+";
271
- }
272
- s(qe, "getFallbackAvatarDataUrl");
273
- function ot(e) {
274
- const r = e.target;
275
- r.dataset.fallbackUsed || (r.dataset.fallbackUsed = "true", r.src = qe());
276
- }
277
- s(ot, "handleImageError");
278
- function yo(e) {
279
- const { message: r } = e;
280
- if (!r)
281
- return null;
282
- if (typeof r == "string")
283
- return r.trim() ? { text: r.trim(), sender: "agent" } : null;
284
- if (typeof r != "object")
285
- return null;
286
- const o = [
287
- (t) => {
288
- if (!("source" in t))
289
- return null;
290
- const a = {
291
- user: "user",
292
- ai: "agent",
293
- agent: "agent"
294
- }[t.source];
295
- return a ? { text: t.message || "", sender: a } : null;
296
- }
297
- ];
298
- for (const t of o) {
299
- const n = t(r);
300
- if (n && n.text.trim())
301
- return { text: n.text.trim(), sender: n.sender };
302
- }
303
- return null;
304
- }
305
- s(yo, "parseVoiceMessage");
306
- function an(e) {
307
- const { name: r, context: o } = e;
308
- return o === "welcome" ? `Welcome to Fiction! I'm ${r}, your digital self. I'm here to help you understand how I can represent you and assist with your daily tasks. What would you like to know about how I work?` : o === "onboarding" ? `Hi! I'm ${r}, your newly created digital self. I can handle conversations, answer questions about your expertise, and represent you professionally. Ready to see what I can do?` : `Hello! I'm ${r}. How can I help you today?`;
309
- }
310
- s(an, "generateFirstMessage");
311
- const ko = { class: "spinner max-w-sm" }, wo = {
260
+ ], ko = { class: "spinner max-w-sm" }, wo = {
312
261
  class: "ring-circular h-full w-full origin-center",
313
262
  viewBox: "25 25 50 50"
314
263
  }, gt = /* @__PURE__ */ j({
@@ -333,7 +282,7 @@ const ko = { class: "spinner max-w-sm" }, wo = {
333
282
  ]))
334
283
  ]));
335
284
  }
336
- }), It = {
285
+ }), Mt = {
337
286
  green: {
338
287
  50: "oklch(98.2% 0.018 155.826)",
339
288
  100: "oklch(96.2% 0.044 156.743)",
@@ -466,28 +415,78 @@ const ko = { class: "spinner max-w-sm" }, wo = {
466
415
  }
467
416
  };
468
417
  function Co(e) {
469
- return It[e] || It.blue;
418
+ return Mt[e] || Mt.blue;
470
419
  }
471
420
  s(Co, "getColorSchemeOklch");
472
- const pt = class pt extends Dt {
421
+ function At(e) {
422
+ return e ? typeof e == "string" ? e : e.src || "" : "";
423
+ }
424
+ s(At, "getImageSrc");
425
+ function tt(e) {
426
+ return At(e.cover) || At(e.avatar) || "/img/placeholder-avatar.png";
427
+ }
428
+ s(tt, "getSelfAvatarUrl");
429
+ function qe() {
430
+ return "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iODAiIGhlaWdodD0iODAiIHZpZXdCb3g9IjAgMCA4MCA4MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHJlY3Qgd2lkdGg9IjgwIiBoZWlnaHQ9IjgwIiByeD0iNDAiIGZpbGw9IiM2MzY2RjEiLz4KPHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeD0iMjAiIHk9IjIwIj4KPHA0aCBkPSJNMTIgMTJjMi4yMSAwIDQtMS43OSA0LTRTNC4yMSA0IDIgNHMxLjc5IDQgNCA0em0wIDJjLTIuNjcgMC04IDEuMzQtOCA0djJoMTZ2LTJjMC0yLjY2LTUuMzMtNC04LTR6IiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4KPC9zdmc+";
431
+ }
432
+ s(qe, "getFallbackAvatarDataUrl");
433
+ function ot(e) {
434
+ const r = e.target;
435
+ r.dataset.fallbackUsed || (r.dataset.fallbackUsed = "true", r.src = qe());
436
+ }
437
+ s(ot, "handleImageError");
438
+ function So(e) {
439
+ const { message: r } = e;
440
+ if (!r)
441
+ return null;
442
+ if (typeof r == "string")
443
+ return r.trim() ? { text: r.trim(), sender: "agent" } : null;
444
+ if (typeof r != "object")
445
+ return null;
446
+ const o = [
447
+ (t) => {
448
+ if (!("source" in t))
449
+ return null;
450
+ const a = {
451
+ user: "user",
452
+ ai: "agent",
453
+ agent: "agent"
454
+ }[t.source];
455
+ return a ? { text: t.message || "", sender: a } : null;
456
+ }
457
+ ];
458
+ for (const t of o) {
459
+ const n = t(r);
460
+ if (n && n.text.trim())
461
+ return { text: n.text.trim(), sender: n.sender };
462
+ }
463
+ return null;
464
+ }
465
+ s(So, "parseVoiceMessage");
466
+ function ln(e) {
467
+ const { name: r, context: o } = e;
468
+ return o === "welcome" ? `Welcome to Fiction! I'm ${r}, your digital self. I'm here to help you understand how I can represent you and assist with your daily tasks. What would you like to know about how I work?` : o === "onboarding" ? `Hi! I'm ${r}, your newly created digital self. I can handle conversations, answer questions about your expertise, and represent you professionally. Ready to see what I can do?` : `Hello! I'm ${r}. How can I help you today?`;
469
+ }
470
+ s(ln, "generateFirstMessage");
471
+ const pt = class pt extends Vt {
473
472
  constructor(o) {
474
473
  super("SelfController", o);
475
- D(this, "conversation");
476
- D(this, "isTextMode", !1);
477
- D(this, "lastMessage", { hash: "", time: 0 });
478
- D(this, "clientAudio");
479
- D(this, "unwatchAudio");
480
- D(this, "isConnecting", !1);
474
+ B(this, "conversation");
475
+ B(this, "isTextMode", !1);
476
+ B(this, "lastMessage", { hash: "", time: 0 });
477
+ B(this, "clientAudio");
478
+ B(this, "unwatchAudio");
479
+ B(this, "isConnecting", !1);
481
480
  // Simple usage tracking
482
- D(this, "sessionId");
483
- D(this, "conversationStartTime");
484
- D(this, "chatCharacterCount", 0);
481
+ B(this, "sessionId");
482
+ B(this, "conversationStartTime");
483
+ B(this, "chatCharacterCount", 0);
485
484
  // Participant IDs for message attribution
486
- D(this, "hostParticipantId");
485
+ B(this, "hostParticipantId");
487
486
  // The digital self
488
- D(this, "visitorParticipantId");
487
+ B(this, "visitorParticipantId");
489
488
  // The user/anon
490
- D(this, "voiceState", P({
489
+ B(this, "voiceState", P({
491
490
  isActive: !1,
492
491
  isConnected: !1,
493
492
  isSpeaking: !1,
@@ -495,14 +494,14 @@ const pt = class pt extends Dt {
495
494
  transcript: "Tap to begin voice conversation",
496
495
  connectionStatus: "disconnected"
497
496
  }));
498
- D(this, "textState", P({
497
+ B(this, "textState", P({
499
498
  isActive: !1,
500
499
  isConnected: !1,
501
500
  isThinking: !1,
502
501
  connectionStatus: "disconnected"
503
502
  }));
504
- D(this, "agentMode", P("self"));
505
- D(this, "sharedMessages", P([]));
503
+ B(this, "agentMode", P("self"));
504
+ B(this, "sharedMessages", P([]));
506
505
  if (!o.self.elevenlabsAgentId || o.self.elevenlabsAgentId.trim() === "")
507
506
  throw new Error(`Agent ID is required for SelfController. Self "${o.self.name}" (${o.self.selfId}) does not have a valid elevenlabsAgentId.`);
508
507
  this.clientAudio = new lt(o), this.setupModeWatcher();
@@ -519,7 +518,7 @@ const pt = class pt extends Dt {
519
518
  try {
520
519
  const o = this.conversation.getOutputByteFrequencyData();
521
520
  if (o && o.length > 0) {
522
- const t = Array.from(o).filter((i) => Number(i) > 0).length, n = Math.max(...Array.from(o)), a = Array.from(o).reduce((i, f) => i + Number(f), 0) / o.length;
521
+ const t = Array.from(o).filter((i) => Number(i) > 0).length, n = Math.max(...Array.from(o)), a = Array.from(o).reduce((i, h) => i + Number(h), 0) / o.length;
523
522
  return console.warn(`ElevenLabs frequency data: ${o.length} bins, ${t} with signal, max: ${n}, avg: ${a.toFixed(1)}`), new Uint8Array(o);
524
523
  } else
525
524
  return console.warn("ElevenLabs returned empty frequency data"), null;
@@ -574,7 +573,7 @@ const pt = class pt extends Dt {
574
573
  });
575
574
  }
576
575
  handleMessage(o, t) {
577
- const n = yo(o);
576
+ const n = So(o);
578
577
  if (n && (this.addMessage(n.text, n.sender), !t && n.sender === "agent" && this.updateState(this.textState, { isThinking: !1 }), this.sessionId && this.hostParticipantId && this.visitorParticipantId)) {
579
578
  const a = n.sender === "agent" ? this.hostParticipantId : this.visitorParticipantId, { sdk: i } = this.settings;
580
579
  i.saveMessage({
@@ -582,8 +581,8 @@ const pt = class pt extends Dt {
582
581
  participantId: a,
583
582
  content: n.text,
584
583
  role: n.sender === "agent" ? "agent" : "user"
585
- }).catch((f) => {
586
- this.logger.warn("Failed to save message", { error: f });
584
+ }).catch((h) => {
585
+ this.logger.warn("Failed to save message", { error: h });
587
586
  });
588
587
  }
589
588
  }
@@ -621,7 +620,7 @@ const pt = class pt extends Dt {
621
620
  const t = this.getDynamicSettings(), n = this.settings.self.elevenlabsAgentId;
622
621
  this.logger.info("Starting voice conversation...", { agentId: n, dynamicSettings: t });
623
622
  try {
624
- this.conversation = await Mt.startSession({
623
+ this.conversation = await St.startSession({
625
624
  agentId: n,
626
625
  connectionType: "websocket",
627
626
  ...t,
@@ -638,7 +637,7 @@ const pt = class pt extends Dt {
638
637
  }, "onDisconnect"),
639
638
  onError: /* @__PURE__ */ s((a) => {
640
639
  let i = a;
641
- a.includes("does not exist") ? i = `Agent not found: ${this.settings.self.elevenlabsAgentId}. Check ElevenLabs configuration.` : a.includes("limit") || a.includes("quota") ? i = "ElevenLabs account limit reached. Check your subscription and usage." : (a.includes("unauthorized") || a.includes("invalid")) && (i = "ElevenLabs API authentication failed. Check ELEVENLABS_API_KEY."), this.endSession().catch((f) => console.error("Failed to end session:", f)), this.handleError(new Error(i), !0), o.onError?.(new Error(i));
640
+ a.includes("does not exist") ? i = `Agent not found: ${this.settings.self.elevenlabsAgentId}. Check ElevenLabs configuration.` : a.includes("limit") || a.includes("quota") ? i = "ElevenLabs account limit reached. Check your subscription and usage." : (a.includes("unauthorized") || a.includes("invalid")) && (i = "ElevenLabs API authentication failed. Check ELEVENLABS_API_KEY."), this.endSession().catch((h) => console.error("Failed to end session:", h)), this.handleError(new Error(i), !0), o.onError?.(new Error(i));
642
641
  }, "onError"),
643
642
  onModeChange: /* @__PURE__ */ s((a) => {
644
643
  const i = a.mode === "speaking";
@@ -663,7 +662,7 @@ const pt = class pt extends Dt {
663
662
  }
664
663
  this.isConnecting = !0, this.isTextMode = !0, this.updateState(this.textState, { isActive: !0, connectionStatus: "connecting" }), await this.startSession("chat");
665
664
  try {
666
- this.conversation = await Mt.startSession({
665
+ this.conversation = await St.startSession({
667
666
  agentId: this.settings.self.elevenlabsAgentId,
668
667
  connectionType: "websocket",
669
668
  ...this.getDynamicSettings(),
@@ -743,7 +742,7 @@ const pt = class pt extends Dt {
743
742
  return;
744
743
  }
745
744
  }
746
- this.sessionId = mo(), this.logger.info("Started conversation session (fallback)", {
745
+ this.sessionId = bo(), this.logger.info("Started conversation session (fallback)", {
747
746
  sessionId: this.sessionId,
748
747
  type: o
749
748
  });
@@ -780,14 +779,14 @@ const pt = class pt extends Dt {
780
779
  };
781
780
  s(pt, "SelfController");
782
781
  let ct = pt;
783
- const So = /* @__PURE__ */ j({
782
+ const Mo = /* @__PURE__ */ j({
784
783
  __name: "EffectTransitionList",
785
784
  props: {
786
785
  disabled: { type: Boolean, default: !1 },
787
786
  mode: { default: "block" }
788
787
  },
789
788
  setup(e) {
790
- return (r, o) => (d(), _(Pt, {
789
+ return (r, o) => (d(), _(Tt, {
791
790
  name: e.disabled ? "" : "nlist"
792
791
  }, {
793
792
  default: ee(() => [
@@ -796,7 +795,7 @@ const So = /* @__PURE__ */ j({
796
795
  _: 3
797
796
  }, 8, ["name"]));
798
797
  }
799
- }), Mo = {
798
+ }), Ao = {
800
799
  key: 0,
801
800
  class: "absolute inset-0 flex items-center justify-center"
802
801
  }, mt = /* @__PURE__ */ j({
@@ -826,7 +825,7 @@ const So = /* @__PURE__ */ j({
826
825
  return (n, a) => (d(), b("button", {
827
826
  class: z(["relative inline-flex items-center justify-center gap-2 font-medium rounded-full backdrop-blur-sm border-2 text-white transition-all duration-200 focus:outline-none active:opacity-80 disabled:opacity-50 disabled:cursor-not-allowed cursor-pointer", [r.value, o.value]])
828
827
  }, [
829
- e.loading ? (d(), b("div", Mo, [...a[0] || (a[0] = [
828
+ e.loading ? (d(), b("div", Ao, [...a[0] || (a[0] = [
830
829
  l("i", { class: "i-svg-spinners-90-ring-with-bg size-5" }, null, -1)
831
830
  ])])) : E("", !0),
832
831
  l("span", {
@@ -844,7 +843,7 @@ const So = /* @__PURE__ */ j({
844
843
  ], 2)
845
844
  ], 2));
846
845
  }
847
- }), Ao = ["value"], Io = /* @__PURE__ */ j({
846
+ }), Io = ["value"], zo = /* @__PURE__ */ j({
848
847
  __name: "SelfInputEmail",
849
848
  props: {
850
849
  modelValue: { default: "" }
@@ -860,9 +859,9 @@ const So = /* @__PURE__ */ j({
860
859
  class: "w-full px-6 py-3 text-theme-900 placeholder-theme-500 bg-white border border-white rounded-full focus:outline-none transition-all",
861
860
  style: { "font-size": "16px" },
862
861
  onInput: n[0] || (n[0] = (a) => o("update:modelValue", a.target.value))
863
- }, null, 40, Ao));
862
+ }, null, 40, Io));
864
863
  }
865
- }), zo = { class: "flex gap-1.5 justify-center" }, $o = ["onUpdate:modelValue", "onInput", "onKeydown", "onPaste", "onFocus"], Eo = /* @__PURE__ */ j({
864
+ }), $o = { class: "flex gap-1.5 justify-center" }, Eo = ["onUpdate:modelValue", "onInput", "onKeydown", "onPaste", "onFocus"], Lo = /* @__PURE__ */ j({
866
865
  __name: "SelfInputOneTimeCode",
867
866
  props: {
868
867
  modelValue: {},
@@ -880,30 +879,30 @@ const So = /* @__PURE__ */ j({
880
879
  const c = a.value.filter(Boolean).join("");
881
880
  t("update:modelValue", c), c.length === o.length && t("autoSubmit", c);
882
881
  }, { deep: !0 });
883
- function f(c, m) {
882
+ function h(c, m) {
884
883
  m.preventDefault(), i.value = !0;
885
- const y = (m.clipboardData?.getData("text") || "").replace(/\D/g, "");
886
- if (y.length === o.length)
887
- a.value = y.split(""), setTimeout(() => {
884
+ const p = (m.clipboardData?.getData("text") || "").replace(/\D/g, "");
885
+ if (p.length === o.length)
886
+ a.value = p.split(""), setTimeout(() => {
888
887
  n.value[o.length - 1]?.focus(), i.value = !1;
889
888
  }, 10);
890
889
  else {
891
890
  const g = [...a.value];
892
- y.split("").slice(0, o.length - c).forEach((H, Q) => {
891
+ p.split("").slice(0, o.length - c).forEach((H, Q) => {
893
892
  g[c + Q] = H;
894
893
  }), a.value = g;
895
- const T = Math.min(c + y.length, o.length - 1);
894
+ const T = Math.min(c + p.length, o.length - 1);
896
895
  setTimeout(() => {
897
896
  n.value[T]?.focus(), i.value = !1;
898
897
  }, 10);
899
898
  }
900
899
  }
901
- s(f, "onPaste");
902
- function h(c, m) {
903
- const y = m.target.value.slice(-1).replace(/\D/g, "");
904
- a.value[c] = y, y && c < o.length - 1 && n.value[c + 1]?.focus();
900
+ s(h, "onPaste");
901
+ function f(c, m) {
902
+ const p = m.target.value.slice(-1).replace(/\D/g, "");
903
+ a.value[c] = p, p && c < o.length - 1 && n.value[c + 1]?.focus();
905
904
  }
906
- s(h, "onInput");
905
+ s(f, "onInput");
907
906
  function C(c, m) {
908
907
  m.key === "Backspace" ? (m.preventDefault(), a.value[c] = "", c > 0 && n.value[c - 1]?.focus()) : m.key === "ArrowLeft" && c > 0 ? n.value[c - 1]?.focus() : m.key === "ArrowRight" && c < o.length - 1 && n.value[c + 1]?.focus();
909
908
  }
@@ -913,37 +912,37 @@ const So = /* @__PURE__ */ j({
913
912
  for (let m = c; m < o.length; m++)
914
913
  a.value[m] = "";
915
914
  }
916
- return s(u, "onFocus"), (c, m) => (d(), b("div", zo, [
917
- (d(!0), b(Ae, null, rt(e.length, (y) => Ft((d(), b("input", {
918
- key: y,
915
+ return s(u, "onFocus"), (c, m) => (d(), b("div", $o, [
916
+ (d(!0), b(Ae, null, rt(e.length, (p) => Pt((d(), b("input", {
917
+ key: p,
919
918
  ref_for: !0,
920
- ref: /* @__PURE__ */ s((g) => n.value[y - 1] = g, "ref"),
921
- "onUpdate:modelValue": /* @__PURE__ */ s((g) => a.value[y - 1] = g, "onUpdate:modelValue"),
919
+ ref: /* @__PURE__ */ s((g) => n.value[p - 1] = g, "ref"),
920
+ "onUpdate:modelValue": /* @__PURE__ */ s((g) => a.value[p - 1] = g, "onUpdate:modelValue"),
922
921
  type: "text",
923
922
  inputmode: "numeric",
924
923
  autocomplete: "one-time-code",
925
924
  class: "size-11 text-center font-mono text-theme-900 bg-white border border-white rounded-lg focus:outline-none transition-all",
926
925
  style: { "font-size": "16px" },
927
926
  maxlength: "1",
928
- onInput: /* @__PURE__ */ s((g) => h(y - 1, g), "onInput"),
929
- onKeydown: /* @__PURE__ */ s((g) => C(y - 1, g), "onKeydown"),
930
- onPaste: /* @__PURE__ */ s((g) => f(y - 1, g), "onPaste"),
931
- onFocus: /* @__PURE__ */ s((g) => u(y - 1), "onFocus")
932
- }, null, 40, $o)), [
933
- [Vt, a.value[y - 1]]
927
+ onInput: /* @__PURE__ */ s((g) => f(p - 1, g), "onInput"),
928
+ onKeydown: /* @__PURE__ */ s((g) => C(p - 1, g), "onKeydown"),
929
+ onPaste: /* @__PURE__ */ s((g) => h(p - 1, g), "onPaste"),
930
+ onFocus: /* @__PURE__ */ s((g) => u(p - 1), "onFocus")
931
+ }, null, 40, Eo)), [
932
+ [Ft, a.value[p - 1]]
934
933
  ])), 128))
935
934
  ]));
936
935
  }
937
- }), Lo = { class: "flex flex-col items-center justify-center h-full p-6" }, To = { class: "w-full max-w-xs space-y-12" }, Po = {
936
+ }), To = { class: "flex flex-col items-center justify-center h-full p-6" }, Po = { class: "w-full max-w-xs space-y-12" }, Fo = {
938
937
  key: 0,
939
938
  class: "text-xs text-theme-400 text-center"
940
- }, Fo = { class: "text-base font-light text-white text-center" }, Vo = { class: "space-y-6 relative" }, Do = {
939
+ }, Vo = { class: "text-base font-light text-white text-center" }, Bo = { class: "space-y-6 relative" }, Do = {
941
940
  key: "email-field",
942
941
  class: "w-full"
943
- }, Bo = {
942
+ }, jo = {
944
943
  key: "code-field",
945
944
  class: "w-full"
946
- }, zt = /* @__PURE__ */ j({
945
+ }, It = /* @__PURE__ */ j({
947
946
  __name: "ElAuthGate",
948
947
  props: {
949
948
  sdk: {}
@@ -963,23 +962,23 @@ const So = /* @__PURE__ */ j({
963
962
  action: /* @__PURE__ */ s(() => e.sdk.loginWithCode({ email: r.value.email, code: r.value.code }), "action")
964
963
  }
965
964
  }, n = F(() => t[o.value]);
966
- return (a, i) => (d(), b("div", Lo, [
967
- l("div", To, [
968
- e.sdk.error.value ? (d(), b("p", Po, N(e.sdk.error.value), 1)) : E("", !0),
969
- l("h3", Fo, N(n.value.title), 1),
970
- l("div", Vo, [
971
- B(So, null, {
965
+ return (a, i) => (d(), b("div", To, [
966
+ l("div", Po, [
967
+ e.sdk.error.value ? (d(), b("p", Fo, N(e.sdk.error.value), 1)) : E("", !0),
968
+ l("h3", Vo, N(n.value.title), 1),
969
+ l("div", Bo, [
970
+ D(Mo, null, {
972
971
  default: ee(() => [
973
972
  o.value === "email" ? (d(), b("div", Do, [
974
- B(Io, {
973
+ D(zo, {
975
974
  modelValue: r.value.email,
976
- "onUpdate:modelValue": i[0] || (i[0] = (f) => r.value.email = f),
977
- onKeyup: lo(n.value.action, ["enter"])
975
+ "onUpdate:modelValue": i[0] || (i[0] = (h) => r.value.email = h),
976
+ onKeyup: io(n.value.action, ["enter"])
978
977
  }, null, 8, ["modelValue", "onKeyup"])
979
- ])) : (d(), b("div", Bo, [
980
- B(Eo, {
978
+ ])) : (d(), b("div", jo, [
979
+ D(Lo, {
981
980
  modelValue: r.value.code,
982
- "onUpdate:modelValue": i[1] || (i[1] = (f) => r.value.code = f),
981
+ "onUpdate:modelValue": i[1] || (i[1] = (h) => r.value.code = h),
983
982
  length: 6,
984
983
  "focus-first": !0,
985
984
  onAutoSubmit: n.value.action
@@ -989,7 +988,7 @@ const So = /* @__PURE__ */ j({
989
988
  key: n.value.button.label,
990
989
  class: "space-y-4 w-full"
991
990
  }, [
992
- B(mt, {
991
+ D(mt, {
993
992
  theme: "primary",
994
993
  size: "md",
995
994
  class: "w-full",
@@ -1005,7 +1004,7 @@ const So = /* @__PURE__ */ j({
1005
1004
  o.value === "code" ? (d(), b("button", {
1006
1005
  key: 0,
1007
1006
  class: "w-full text-xs text-white/50 hover:text-white/70 transition-colors py-2",
1008
- onClick: i[2] || (i[2] = (f) => o.value = "email")
1007
+ onClick: i[2] || (i[2] = (h) => o.value = "email")
1009
1008
  }, " Change Email ")) : E("", !0)
1010
1009
  ]))
1011
1010
  ]),
@@ -1015,10 +1014,10 @@ const So = /* @__PURE__ */ j({
1015
1014
  ])
1016
1015
  ]));
1017
1016
  }
1018
- }), jo = { class: "relative flex-shrink-0" }, Ro = ["src", "alt"], No = {
1017
+ }), Ro = { class: "relative flex-shrink-0" }, No = ["src", "alt"], Go = {
1019
1018
  key: 0,
1020
1019
  class: "absolute top-1 right-1"
1021
- }, Go = { class: "min-w-0" }, Oo = /* @__PURE__ */ j({
1020
+ }, Oo = { class: "min-w-0" }, Uo = /* @__PURE__ */ j({
1022
1021
  __name: "ElModeHeader",
1023
1022
  props: {
1024
1023
  self: {},
@@ -1035,7 +1034,7 @@ const So = /* @__PURE__ */ j({
1035
1034
  e.layout === "centered" ? "flex-col items-center text-center" : "flex-row items-center justify-center"
1036
1035
  ]])
1037
1036
  }, [
1038
- l("div", jo, [
1037
+ l("div", Ro, [
1039
1038
  l("div", {
1040
1039
  class: z(["rounded-full overflow-hidden border-white", e.size === "lg" ? "w-20 h-20 sm:w-24 sm:h-24 border-4" : "w-16 sm:size-16 border-2"])
1041
1040
  }, [
@@ -1045,9 +1044,9 @@ const So = /* @__PURE__ */ j({
1045
1044
  class: "w-full h-full object-cover",
1046
1045
  onError: t[0] || (t[0] = //@ts-ignore
1047
1046
  (...n) => Y(ot) && Y(ot)(...n))
1048
- }, null, 40, Ro)
1047
+ }, null, 40, No)
1049
1048
  ], 2),
1050
- e.showOnlineIndicator ? (d(), b("div", No, [...t[1] || (t[1] = [
1049
+ e.showOnlineIndicator ? (d(), b("div", Go, [...t[1] || (t[1] = [
1051
1050
  l("div", {
1052
1051
  class: "size-3 bg-green-500 rounded-full ring-2 ring-white absolute animate-ping",
1053
1052
  style: { "animation-duration": "3s" }
@@ -1055,7 +1054,7 @@ const So = /* @__PURE__ */ j({
1055
1054
  l("div", { class: "size-3 bg-green-500 rounded-full ring-2 ring-white" }, null, -1)
1056
1055
  ])])) : E("", !0)
1057
1056
  ]),
1058
- l("div", Go, [
1057
+ l("div", Oo, [
1059
1058
  l("h1", {
1060
1059
  class: z(["font-light text-white mb-1 truncate", [
1061
1060
  e.size === "lg" ? "text-3xl mb-2" : "text-xl sm:text-2xl tracking-wide leading-tight",
@@ -1071,25 +1070,25 @@ const So = /* @__PURE__ */ j({
1071
1070
  ])
1072
1071
  ], 2));
1073
1072
  }
1074
- }), bt = "-", Uo = /* @__PURE__ */ s((e) => {
1075
- const r = qo(e), {
1073
+ }), bt = "-", Ho = /* @__PURE__ */ s((e) => {
1074
+ const r = Wo(e), {
1076
1075
  conflictingClassGroups: o,
1077
1076
  conflictingClassGroupModifiers: t
1078
1077
  } = e;
1079
1078
  return {
1080
1079
  getClassGroupId: /* @__PURE__ */ s((i) => {
1081
- const f = i.split(bt);
1082
- return f[0] === "" && f.length !== 1 && f.shift(), jt(f, r) || Ho(i);
1080
+ const h = i.split(bt);
1081
+ return h[0] === "" && h.length !== 1 && h.shift(), Dt(h, r) || qo(i);
1083
1082
  }, "getClassGroupId"),
1084
- getConflictingClassGroupIds: /* @__PURE__ */ s((i, f) => {
1085
- const h = o[i] || [];
1086
- return f && t[i] ? [...h, ...t[i]] : h;
1083
+ getConflictingClassGroupIds: /* @__PURE__ */ s((i, h) => {
1084
+ const f = o[i] || [];
1085
+ return h && t[i] ? [...f, ...t[i]] : f;
1087
1086
  }, "getConflictingClassGroupIds")
1088
1087
  };
1089
- }, "createClassGroupUtils"), jt = /* @__PURE__ */ s((e, r) => {
1088
+ }, "createClassGroupUtils"), Dt = /* @__PURE__ */ s((e, r) => {
1090
1089
  if (e.length === 0)
1091
1090
  return r.classGroupId;
1092
- const o = e[0], t = r.nextPart.get(o), n = t ? jt(e.slice(1), t) : void 0;
1091
+ const o = e[0], t = r.nextPart.get(o), n = t ? Dt(e.slice(1), t) : void 0;
1093
1092
  if (n)
1094
1093
  return n;
1095
1094
  if (r.validators.length === 0)
@@ -1098,13 +1097,13 @@ const So = /* @__PURE__ */ j({
1098
1097
  return r.validators.find(({
1099
1098
  validator: i
1100
1099
  }) => i(a))?.classGroupId;
1101
- }, "getGroupRecursive"), $t = /^\[(.+)\]$/, Ho = /* @__PURE__ */ s((e) => {
1102
- if ($t.test(e)) {
1103
- const r = $t.exec(e)[1], o = r?.substring(0, r.indexOf(":"));
1100
+ }, "getGroupRecursive"), zt = /^\[(.+)\]$/, qo = /* @__PURE__ */ s((e) => {
1101
+ if (zt.test(e)) {
1102
+ const r = zt.exec(e)[1], o = r?.substring(0, r.indexOf(":"));
1104
1103
  if (o)
1105
1104
  return "arbitrary.." + o;
1106
1105
  }
1107
- }, "getGroupIdForArbitraryProperty"), qo = /* @__PURE__ */ s((e) => {
1106
+ }, "getGroupIdForArbitraryProperty"), Wo = /* @__PURE__ */ s((e) => {
1108
1107
  const {
1109
1108
  theme: r,
1110
1109
  classGroups: o
@@ -1118,12 +1117,12 @@ const So = /* @__PURE__ */ j({
1118
1117
  }, "createClassMap"), dt = /* @__PURE__ */ s((e, r, o, t) => {
1119
1118
  e.forEach((n) => {
1120
1119
  if (typeof n == "string") {
1121
- const a = n === "" ? r : Et(r, n);
1120
+ const a = n === "" ? r : $t(r, n);
1122
1121
  a.classGroupId = o;
1123
1122
  return;
1124
1123
  }
1125
1124
  if (typeof n == "function") {
1126
- if (Wo(n)) {
1125
+ if (Ko(n)) {
1127
1126
  dt(n(t), r, o, t);
1128
1127
  return;
1129
1128
  }
@@ -1134,10 +1133,10 @@ const So = /* @__PURE__ */ j({
1134
1133
  return;
1135
1134
  }
1136
1135
  Object.entries(n).forEach(([a, i]) => {
1137
- dt(i, Et(r, a), o, t);
1136
+ dt(i, $t(r, a), o, t);
1138
1137
  });
1139
1138
  });
1140
- }, "processClassesRecursively"), Et = /* @__PURE__ */ s((e, r) => {
1139
+ }, "processClassesRecursively"), $t = /* @__PURE__ */ s((e, r) => {
1141
1140
  let o = e;
1142
1141
  return r.split(bt).forEach((t) => {
1143
1142
  o.nextPart.has(t) || o.nextPart.set(t, {
@@ -1145,7 +1144,7 @@ const So = /* @__PURE__ */ j({
1145
1144
  validators: []
1146
1145
  }), o = o.nextPart.get(t);
1147
1146
  }), o;
1148
- }, "getPart"), Wo = /* @__PURE__ */ s((e) => e.isThemeGetter, "isThemeGetter"), Ko = /* @__PURE__ */ s((e) => {
1147
+ }, "getPart"), Ko = /* @__PURE__ */ s((e) => e.isThemeGetter, "isThemeGetter"), Zo = /* @__PURE__ */ s((e) => {
1149
1148
  if (e < 1)
1150
1149
  return {
1151
1150
  get: /* @__PURE__ */ s(() => {
@@ -1169,19 +1168,19 @@ const So = /* @__PURE__ */ j({
1169
1168
  o.has(a) ? o.set(a, i) : n(a, i);
1170
1169
  }
1171
1170
  };
1172
- }, "createLruCache"), ut = "!", ht = ":", Zo = ht.length, Yo = /* @__PURE__ */ s((e) => {
1171
+ }, "createLruCache"), ut = "!", ht = ":", Yo = ht.length, Jo = /* @__PURE__ */ s((e) => {
1173
1172
  const {
1174
1173
  prefix: r,
1175
1174
  experimentalParseClassName: o
1176
1175
  } = e;
1177
1176
  let t = /* @__PURE__ */ s((n) => {
1178
1177
  const a = [];
1179
- let i = 0, f = 0, h = 0, C;
1178
+ let i = 0, h = 0, f = 0, C;
1180
1179
  for (let g = 0; g < n.length; g++) {
1181
1180
  let T = n[g];
1182
- if (i === 0 && f === 0) {
1181
+ if (i === 0 && h === 0) {
1183
1182
  if (T === ht) {
1184
- a.push(n.slice(h, g)), h = g + Zo;
1183
+ a.push(n.slice(f, g)), f = g + Yo;
1185
1184
  continue;
1186
1185
  }
1187
1186
  if (T === "/") {
@@ -1189,14 +1188,14 @@ const So = /* @__PURE__ */ j({
1189
1188
  continue;
1190
1189
  }
1191
1190
  }
1192
- T === "[" ? i++ : T === "]" ? i-- : T === "(" ? f++ : T === ")" && f--;
1191
+ T === "[" ? i++ : T === "]" ? i-- : T === "(" ? h++ : T === ")" && h--;
1193
1192
  }
1194
- const u = a.length === 0 ? n : n.substring(h), c = Jo(u), m = c !== u, y = C && C > h ? C - h : void 0;
1193
+ const u = a.length === 0 ? n : n.substring(f), c = Qo(u), m = c !== u, p = C && C > f ? C - f : void 0;
1195
1194
  return {
1196
1195
  modifiers: a,
1197
1196
  hasImportantModifier: m,
1198
1197
  baseClassName: c,
1199
- maybePostfixModifierPosition: y
1198
+ maybePostfixModifierPosition: p
1200
1199
  };
1201
1200
  }, "parseClassName");
1202
1201
  if (r) {
@@ -1217,7 +1216,7 @@ const So = /* @__PURE__ */ j({
1217
1216
  }), "parseClassName");
1218
1217
  }
1219
1218
  return t;
1220
- }, "createParseClassName"), Jo = /* @__PURE__ */ s((e) => e.endsWith(ut) ? e.substring(0, e.length - 1) : e.startsWith(ut) ? e.substring(1) : e, "stripImportantModifier"), Qo = /* @__PURE__ */ s((e) => {
1219
+ }, "createParseClassName"), Qo = /* @__PURE__ */ s((e) => e.endsWith(ut) ? e.substring(0, e.length - 1) : e.startsWith(ut) ? e.substring(1) : e, "stripImportantModifier"), Xo = /* @__PURE__ */ s((e) => {
1221
1220
  const r = Object.fromEntries(e.orderSensitiveModifiers.map((t) => [t, !0]));
1222
1221
  return /* @__PURE__ */ s((t) => {
1223
1222
  if (t.length <= 1)
@@ -1228,44 +1227,44 @@ const So = /* @__PURE__ */ j({
1228
1227
  i[0] === "[" || r[i] ? (n.push(...a.sort(), i), a = []) : a.push(i);
1229
1228
  }), n.push(...a.sort()), n;
1230
1229
  }, "sortModifiers");
1231
- }, "createSortModifiers"), Xo = /* @__PURE__ */ s((e) => ({
1232
- cache: Ko(e.cacheSize),
1233
- parseClassName: Yo(e),
1234
- sortModifiers: Qo(e),
1235
- ...Uo(e)
1236
- }), "createConfigUtils"), _o = /\s+/, er = /* @__PURE__ */ s((e, r) => {
1230
+ }, "createSortModifiers"), _o = /* @__PURE__ */ s((e) => ({
1231
+ cache: Zo(e.cacheSize),
1232
+ parseClassName: Jo(e),
1233
+ sortModifiers: Xo(e),
1234
+ ...Ho(e)
1235
+ }), "createConfigUtils"), er = /\s+/, tr = /* @__PURE__ */ s((e, r) => {
1237
1236
  const {
1238
1237
  parseClassName: o,
1239
1238
  getClassGroupId: t,
1240
1239
  getConflictingClassGroupIds: n,
1241
1240
  sortModifiers: a
1242
- } = r, i = [], f = e.trim().split(_o);
1243
- let h = "";
1244
- for (let C = f.length - 1; C >= 0; C -= 1) {
1245
- const u = f[C], {
1241
+ } = r, i = [], h = e.trim().split(er);
1242
+ let f = "";
1243
+ for (let C = h.length - 1; C >= 0; C -= 1) {
1244
+ const u = h[C], {
1246
1245
  isExternal: c,
1247
1246
  modifiers: m,
1248
- hasImportantModifier: y,
1247
+ hasImportantModifier: p,
1249
1248
  baseClassName: g,
1250
1249
  maybePostfixModifierPosition: T
1251
1250
  } = o(u);
1252
1251
  if (c) {
1253
- h = u + (h.length > 0 ? " " + h : h);
1252
+ f = u + (f.length > 0 ? " " + f : f);
1254
1253
  continue;
1255
1254
  }
1256
1255
  let H = !!T, Q = t(H ? g.substring(0, T) : g);
1257
1256
  if (!Q) {
1258
1257
  if (!H) {
1259
- h = u + (h.length > 0 ? " " + h : h);
1258
+ f = u + (f.length > 0 ? " " + f : f);
1260
1259
  continue;
1261
1260
  }
1262
1261
  if (Q = t(g), !Q) {
1263
- h = u + (h.length > 0 ? " " + h : h);
1262
+ f = u + (f.length > 0 ? " " + f : f);
1264
1263
  continue;
1265
1264
  }
1266
1265
  H = !1;
1267
1266
  }
1268
- const ze = a(m).join(":"), Se = y ? ze + ut : ze, ue = Se + Q;
1267
+ const ze = a(m).join(":"), Se = p ? ze + ut : ze, ue = Se + Q;
1269
1268
  if (i.includes(ue))
1270
1269
  continue;
1271
1270
  i.push(ue);
@@ -1274,60 +1273,60 @@ const So = /* @__PURE__ */ j({
1274
1273
  const re = pe[he];
1275
1274
  i.push(Se + re);
1276
1275
  }
1277
- h = u + (h.length > 0 ? " " + h : h);
1276
+ f = u + (f.length > 0 ? " " + f : f);
1278
1277
  }
1279
- return h;
1278
+ return f;
1280
1279
  }, "mergeClassList");
1281
- function tr() {
1280
+ function or() {
1282
1281
  let e = 0, r, o, t = "";
1283
1282
  for (; e < arguments.length; )
1284
- (r = arguments[e++]) && (o = Rt(r)) && (t && (t += " "), t += o);
1283
+ (r = arguments[e++]) && (o = jt(r)) && (t && (t += " "), t += o);
1285
1284
  return t;
1286
1285
  }
1287
- s(tr, "twJoin");
1288
- const Rt = /* @__PURE__ */ s((e) => {
1286
+ s(or, "twJoin");
1287
+ const jt = /* @__PURE__ */ s((e) => {
1289
1288
  if (typeof e == "string")
1290
1289
  return e;
1291
1290
  let r, o = "";
1292
1291
  for (let t = 0; t < e.length; t++)
1293
- e[t] && (r = Rt(e[t])) && (o && (o += " "), o += r);
1292
+ e[t] && (r = jt(e[t])) && (o && (o += " "), o += r);
1294
1293
  return o;
1295
1294
  }, "toValue");
1296
- function or(e, ...r) {
1295
+ function rr(e, ...r) {
1297
1296
  let o, t, n, a = i;
1298
- function i(h) {
1297
+ function i(f) {
1299
1298
  const C = r.reduce((u, c) => c(u), e());
1300
- return o = Xo(C), t = o.cache.get, n = o.cache.set, a = f, f(h);
1299
+ return o = _o(C), t = o.cache.get, n = o.cache.set, a = h, h(f);
1301
1300
  }
1302
1301
  s(i, "initTailwindMerge");
1303
- function f(h) {
1304
- const C = t(h);
1302
+ function h(f) {
1303
+ const C = t(f);
1305
1304
  if (C)
1306
1305
  return C;
1307
- const u = er(h, o);
1308
- return n(h, u), u;
1306
+ const u = tr(f, o);
1307
+ return n(f, u), u;
1309
1308
  }
1310
- return s(f, "tailwindMerge"), /* @__PURE__ */ s(function() {
1311
- return a(tr.apply(null, arguments));
1309
+ return s(h, "tailwindMerge"), /* @__PURE__ */ s(function() {
1310
+ return a(or.apply(null, arguments));
1312
1311
  }, "callTailwindMerge");
1313
1312
  }
1314
- s(or, "createTailwindMerge");
1313
+ s(rr, "createTailwindMerge");
1315
1314
  const Z = /* @__PURE__ */ s((e) => {
1316
1315
  const r = /* @__PURE__ */ s((o) => o[e] || [], "themeGetter");
1317
1316
  return r.isThemeGetter = !0, r;
1318
- }, "fromTheme"), Nt = /^\[(?:(\w[\w-]*):)?(.+)\]$/i, Gt = /^\((?:(\w[\w-]*):)?(.+)\)$/i, rr = /^\d+\/\d+$/, sr = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, nr = /\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/, ar = /^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/, ir = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, lr = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, Ve = /* @__PURE__ */ s((e) => rr.test(e), "isFraction"), I = /* @__PURE__ */ s((e) => !!e && !Number.isNaN(Number(e)), "isNumber"), we = /* @__PURE__ */ s((e) => !!e && Number.isInteger(Number(e)), "isInteger"), at = /* @__PURE__ */ s((e) => e.endsWith("%") && I(e.slice(0, -1)), "isPercent"), ve = /* @__PURE__ */ s((e) => sr.test(e), "isTshirtSize"), cr = /* @__PURE__ */ s(() => !0, "isAny"), dr = /* @__PURE__ */ s((e) => (
1317
+ }, "fromTheme"), Rt = /^\[(?:(\w[\w-]*):)?(.+)\]$/i, Nt = /^\((?:(\w[\w-]*):)?(.+)\)$/i, sr = /^\d+\/\d+$/, nr = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, ar = /\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/, ir = /^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/, lr = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, cr = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, Ve = /* @__PURE__ */ s((e) => sr.test(e), "isFraction"), I = /* @__PURE__ */ s((e) => !!e && !Number.isNaN(Number(e)), "isNumber"), we = /* @__PURE__ */ s((e) => !!e && Number.isInteger(Number(e)), "isInteger"), at = /* @__PURE__ */ s((e) => e.endsWith("%") && I(e.slice(0, -1)), "isPercent"), ve = /* @__PURE__ */ s((e) => nr.test(e), "isTshirtSize"), dr = /* @__PURE__ */ s(() => !0, "isAny"), ur = /* @__PURE__ */ s((e) => (
1319
1318
  // `colorFunctionRegex` check is necessary because color functions can have percentages in them which which would be incorrectly classified as lengths.
1320
1319
  // For example, `hsl(0 0% 0%)` would be classified as a length without this check.
1321
1320
  // I could also use lookbehind assertion in `lengthUnitRegex` but that isn't supported widely enough.
1322
- nr.test(e) && !ar.test(e)
1323
- ), "isLengthOnly"), Ot = /* @__PURE__ */ s(() => !1, "isNever"), ur = /* @__PURE__ */ s((e) => ir.test(e), "isShadow"), hr = /* @__PURE__ */ s((e) => lr.test(e), "isImage"), fr = /* @__PURE__ */ s((e) => !p(e) && !x(e), "isAnyNonArbitrary"), gr = /* @__PURE__ */ s((e) => De(e, qt, Ot), "isArbitrarySize"), p = /* @__PURE__ */ s((e) => Nt.test(e), "isArbitraryValue"), Me = /* @__PURE__ */ s((e) => De(e, Wt, dr), "isArbitraryLength"), it = /* @__PURE__ */ s((e) => De(e, xr, I), "isArbitraryNumber"), Lt = /* @__PURE__ */ s((e) => De(e, Ut, Ot), "isArbitraryPosition"), mr = /* @__PURE__ */ s((e) => De(e, Ht, hr), "isArbitraryImage"), Ye = /* @__PURE__ */ s((e) => De(e, Kt, ur), "isArbitraryShadow"), x = /* @__PURE__ */ s((e) => Gt.test(e), "isArbitraryVariable"), Ue = /* @__PURE__ */ s((e) => Be(e, Wt), "isArbitraryVariableLength"), br = /* @__PURE__ */ s((e) => Be(e, yr), "isArbitraryVariableFamilyName"), Tt = /* @__PURE__ */ s((e) => Be(e, Ut), "isArbitraryVariablePosition"), vr = /* @__PURE__ */ s((e) => Be(e, qt), "isArbitraryVariableSize"), pr = /* @__PURE__ */ s((e) => Be(e, Ht), "isArbitraryVariableImage"), Je = /* @__PURE__ */ s((e) => Be(e, Kt, !0), "isArbitraryVariableShadow"), De = /* @__PURE__ */ s((e, r, o) => {
1324
- const t = Nt.exec(e);
1321
+ ar.test(e) && !ir.test(e)
1322
+ ), "isLengthOnly"), Gt = /* @__PURE__ */ s(() => !1, "isNever"), hr = /* @__PURE__ */ s((e) => lr.test(e), "isShadow"), fr = /* @__PURE__ */ s((e) => cr.test(e), "isImage"), gr = /* @__PURE__ */ s((e) => !x(e) && !y(e), "isAnyNonArbitrary"), mr = /* @__PURE__ */ s((e) => Be(e, Ht, Gt), "isArbitrarySize"), x = /* @__PURE__ */ s((e) => Rt.test(e), "isArbitraryValue"), Me = /* @__PURE__ */ s((e) => Be(e, qt, ur), "isArbitraryLength"), it = /* @__PURE__ */ s((e) => Be(e, yr, I), "isArbitraryNumber"), Et = /* @__PURE__ */ s((e) => Be(e, Ot, Gt), "isArbitraryPosition"), br = /* @__PURE__ */ s((e) => Be(e, Ut, fr), "isArbitraryImage"), Ye = /* @__PURE__ */ s((e) => Be(e, Wt, hr), "isArbitraryShadow"), y = /* @__PURE__ */ s((e) => Nt.test(e), "isArbitraryVariable"), Ue = /* @__PURE__ */ s((e) => De(e, qt), "isArbitraryVariableLength"), vr = /* @__PURE__ */ s((e) => De(e, kr), "isArbitraryVariableFamilyName"), Lt = /* @__PURE__ */ s((e) => De(e, Ot), "isArbitraryVariablePosition"), pr = /* @__PURE__ */ s((e) => De(e, Ht), "isArbitraryVariableSize"), xr = /* @__PURE__ */ s((e) => De(e, Ut), "isArbitraryVariableImage"), Je = /* @__PURE__ */ s((e) => De(e, Wt, !0), "isArbitraryVariableShadow"), Be = /* @__PURE__ */ s((e, r, o) => {
1323
+ const t = Rt.exec(e);
1325
1324
  return t ? t[1] ? r(t[1]) : o(t[2]) : !1;
1326
- }, "getIsArbitraryValue"), Be = /* @__PURE__ */ s((e, r, o = !1) => {
1327
- const t = Gt.exec(e);
1325
+ }, "getIsArbitraryValue"), De = /* @__PURE__ */ s((e, r, o = !1) => {
1326
+ const t = Nt.exec(e);
1328
1327
  return t ? t[1] ? r(t[1]) : o : !1;
1329
- }, "getIsArbitraryVariable"), Ut = /* @__PURE__ */ s((e) => e === "position" || e === "percentage", "isLabelPosition"), Ht = /* @__PURE__ */ s((e) => e === "image" || e === "url", "isLabelImage"), qt = /* @__PURE__ */ s((e) => e === "length" || e === "size" || e === "bg-size", "isLabelSize"), Wt = /* @__PURE__ */ s((e) => e === "length", "isLabelLength"), xr = /* @__PURE__ */ s((e) => e === "number", "isLabelNumber"), yr = /* @__PURE__ */ s((e) => e === "family-name", "isLabelFamilyName"), Kt = /* @__PURE__ */ s((e) => e === "shadow", "isLabelShadow"), kr = /* @__PURE__ */ s(() => {
1330
- const e = Z("color"), r = Z("font"), o = Z("text"), t = Z("font-weight"), n = Z("tracking"), a = Z("leading"), i = Z("breakpoint"), f = Z("container"), h = Z("spacing"), C = Z("radius"), u = Z("shadow"), c = Z("inset-shadow"), m = Z("text-shadow"), y = Z("drop-shadow"), g = Z("blur"), T = Z("perspective"), H = Z("aspect"), Q = Z("ease"), ze = Z("animate"), Se = /* @__PURE__ */ s(() => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"], "scaleBreak"), ue = /* @__PURE__ */ s(() => [
1328
+ }, "getIsArbitraryVariable"), Ot = /* @__PURE__ */ s((e) => e === "position" || e === "percentage", "isLabelPosition"), Ut = /* @__PURE__ */ s((e) => e === "image" || e === "url", "isLabelImage"), Ht = /* @__PURE__ */ s((e) => e === "length" || e === "size" || e === "bg-size", "isLabelSize"), qt = /* @__PURE__ */ s((e) => e === "length", "isLabelLength"), yr = /* @__PURE__ */ s((e) => e === "number", "isLabelNumber"), kr = /* @__PURE__ */ s((e) => e === "family-name", "isLabelFamilyName"), Wt = /* @__PURE__ */ s((e) => e === "shadow", "isLabelShadow"), wr = /* @__PURE__ */ s(() => {
1329
+ const e = Z("color"), r = Z("font"), o = Z("text"), t = Z("font-weight"), n = Z("tracking"), a = Z("leading"), i = Z("breakpoint"), h = Z("container"), f = Z("spacing"), C = Z("radius"), u = Z("shadow"), c = Z("inset-shadow"), m = Z("text-shadow"), p = Z("drop-shadow"), g = Z("blur"), T = Z("perspective"), H = Z("aspect"), Q = Z("ease"), ze = Z("animate"), Se = /* @__PURE__ */ s(() => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"], "scaleBreak"), ue = /* @__PURE__ */ s(() => [
1331
1330
  "center",
1332
1331
  "top",
1333
1332
  "bottom",
@@ -1345,30 +1344,30 @@ const Z = /* @__PURE__ */ s((e) => {
1345
1344
  "bottom-left",
1346
1345
  // Deprecated since Tailwind CSS v4.1.0, see https://github.com/tailwindlabs/tailwindcss/pull/17378
1347
1346
  "left-bottom"
1348
- ], "scalePosition"), pe = /* @__PURE__ */ s(() => [...ue(), x, p], "scalePositionWithArbitrary"), he = /* @__PURE__ */ s(() => ["auto", "hidden", "clip", "visible", "scroll"], "scaleOverflow"), re = /* @__PURE__ */ s(() => ["auto", "contain", "none"], "scaleOverscroll"), S = /* @__PURE__ */ s(() => [x, p, h], "scaleUnambiguousSpacing"), ne = /* @__PURE__ */ s(() => [Ve, "full", "auto", ...S()], "scaleInset"), ce = /* @__PURE__ */ s(() => [we, "none", "subgrid", x, p], "scaleGridTemplateColsRows"), fe = /* @__PURE__ */ s(() => ["auto", {
1349
- span: ["full", we, x, p]
1350
- }, we, x, p], "scaleGridColRowStartAndEnd"), ge = /* @__PURE__ */ s(() => [we, "auto", x, p], "scaleGridColRowStartOrEnd"), We = /* @__PURE__ */ s(() => ["auto", "min", "max", "fr", x, p], "scaleGridAutoColsRows"), $e = /* @__PURE__ */ s(() => ["start", "end", "center", "between", "around", "evenly", "stretch", "baseline", "center-safe", "end-safe"], "scaleAlignPrimaryAxis"), me = /* @__PURE__ */ s(() => ["start", "end", "center", "stretch", "center-safe", "end-safe"], "scaleAlignSecondaryAxis"), q = /* @__PURE__ */ s(() => ["auto", ...S()], "scaleMargin"), ie = /* @__PURE__ */ s(() => [Ve, "auto", "full", "dvw", "dvh", "lvw", "lvh", "svw", "svh", "min", "max", "fit", ...S()], "scaleSizing"), w = /* @__PURE__ */ s(() => [e, x, p], "scaleColor"), Ke = /* @__PURE__ */ s(() => [...ue(), Tt, Lt, {
1351
- position: [x, p]
1347
+ ], "scalePosition"), pe = /* @__PURE__ */ s(() => [...ue(), y, x], "scalePositionWithArbitrary"), he = /* @__PURE__ */ s(() => ["auto", "hidden", "clip", "visible", "scroll"], "scaleOverflow"), re = /* @__PURE__ */ s(() => ["auto", "contain", "none"], "scaleOverscroll"), S = /* @__PURE__ */ s(() => [y, x, f], "scaleUnambiguousSpacing"), ne = /* @__PURE__ */ s(() => [Ve, "full", "auto", ...S()], "scaleInset"), ce = /* @__PURE__ */ s(() => [we, "none", "subgrid", y, x], "scaleGridTemplateColsRows"), fe = /* @__PURE__ */ s(() => ["auto", {
1348
+ span: ["full", we, y, x]
1349
+ }, we, y, x], "scaleGridColRowStartAndEnd"), ge = /* @__PURE__ */ s(() => [we, "auto", y, x], "scaleGridColRowStartOrEnd"), We = /* @__PURE__ */ s(() => ["auto", "min", "max", "fr", y, x], "scaleGridAutoColsRows"), $e = /* @__PURE__ */ s(() => ["start", "end", "center", "between", "around", "evenly", "stretch", "baseline", "center-safe", "end-safe"], "scaleAlignPrimaryAxis"), me = /* @__PURE__ */ s(() => ["start", "end", "center", "stretch", "center-safe", "end-safe"], "scaleAlignSecondaryAxis"), q = /* @__PURE__ */ s(() => ["auto", ...S()], "scaleMargin"), ie = /* @__PURE__ */ s(() => [Ve, "auto", "full", "dvw", "dvh", "lvw", "lvh", "svw", "svh", "min", "max", "fit", ...S()], "scaleSizing"), w = /* @__PURE__ */ s(() => [e, y, x], "scaleColor"), Ke = /* @__PURE__ */ s(() => [...ue(), Lt, Et, {
1350
+ position: [y, x]
1352
1351
  }], "scaleBgPosition"), je = /* @__PURE__ */ s(() => ["no-repeat", {
1353
1352
  repeat: ["", "x", "y", "space", "round"]
1354
- }], "scaleBgRepeat"), xe = /* @__PURE__ */ s(() => ["auto", "cover", "contain", vr, gr, {
1355
- size: [x, p]
1353
+ }], "scaleBgRepeat"), xe = /* @__PURE__ */ s(() => ["auto", "cover", "contain", pr, mr, {
1354
+ size: [y, x]
1356
1355
  }], "scaleBgSize"), ye = /* @__PURE__ */ s(() => [at, Ue, Me], "scaleGradientStopPosition"), G = /* @__PURE__ */ s(() => [
1357
1356
  // Deprecated since Tailwind CSS v4.0.0
1358
1357
  "",
1359
1358
  "none",
1360
1359
  "full",
1361
1360
  C,
1362
- x,
1363
- p
1364
- ], "scaleRadius"), W = /* @__PURE__ */ s(() => ["", I, Ue, Me], "scaleBorderWidth"), Ee = /* @__PURE__ */ s(() => ["solid", "dashed", "dotted", "double"], "scaleLineStyle"), Le = /* @__PURE__ */ s(() => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"], "scaleBlendMode"), R = /* @__PURE__ */ s(() => [I, at, Tt, Lt], "scaleMaskImagePosition"), Re = /* @__PURE__ */ s(() => [
1361
+ y,
1362
+ x
1363
+ ], "scaleRadius"), W = /* @__PURE__ */ s(() => ["", I, Ue, Me], "scaleBorderWidth"), Ee = /* @__PURE__ */ s(() => ["solid", "dashed", "dotted", "double"], "scaleLineStyle"), Le = /* @__PURE__ */ s(() => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"], "scaleBlendMode"), R = /* @__PURE__ */ s(() => [I, at, Lt, Et], "scaleMaskImagePosition"), Re = /* @__PURE__ */ s(() => [
1365
1364
  // Deprecated since Tailwind CSS v4.0.0
1366
1365
  "",
1367
1366
  "none",
1368
1367
  g,
1369
- x,
1370
- p
1371
- ], "scaleBlur"), ke = /* @__PURE__ */ s(() => ["none", I, x, p], "scaleRotate"), Te = /* @__PURE__ */ s(() => ["none", I, x, p], "scaleScale"), Ne = /* @__PURE__ */ s(() => [I, x, p], "scaleSkew"), Pe = /* @__PURE__ */ s(() => [Ve, "full", ...S()], "scaleTranslate");
1368
+ y,
1369
+ x
1370
+ ], "scaleBlur"), ke = /* @__PURE__ */ s(() => ["none", I, y, x], "scaleRotate"), Te = /* @__PURE__ */ s(() => ["none", I, y, x], "scaleScale"), Ne = /* @__PURE__ */ s(() => [I, y, x], "scaleSkew"), Pe = /* @__PURE__ */ s(() => [Ve, "full", ...S()], "scaleTranslate");
1372
1371
  return {
1373
1372
  cacheSize: 500,
1374
1373
  theme: {
@@ -1376,11 +1375,11 @@ const Z = /* @__PURE__ */ s((e) => {
1376
1375
  aspect: ["video"],
1377
1376
  blur: [ve],
1378
1377
  breakpoint: [ve],
1379
- color: [cr],
1378
+ color: [dr],
1380
1379
  container: [ve],
1381
1380
  "drop-shadow": [ve],
1382
1381
  ease: ["in", "out", "in-out"],
1383
- font: [fr],
1382
+ font: [gr],
1384
1383
  "font-weight": ["thin", "extralight", "light", "normal", "medium", "semibold", "bold", "extrabold", "black"],
1385
1384
  "inset-shadow": [ve],
1386
1385
  leading: ["none", "tight", "snug", "normal", "relaxed", "loose"],
@@ -1401,7 +1400,7 @@ const Z = /* @__PURE__ */ s((e) => {
1401
1400
  * @see https://tailwindcss.com/docs/aspect-ratio
1402
1401
  */
1403
1402
  aspect: [{
1404
- aspect: ["auto", "square", Ve, p, x, H]
1403
+ aspect: ["auto", "square", Ve, x, y, H]
1405
1404
  }],
1406
1405
  /**
1407
1406
  * Container
@@ -1414,7 +1413,7 @@ const Z = /* @__PURE__ */ s((e) => {
1414
1413
  * @see https://tailwindcss.com/docs/columns
1415
1414
  */
1416
1415
  columns: [{
1417
- columns: [I, p, x, f]
1416
+ columns: [I, x, y, h]
1418
1417
  }],
1419
1418
  /**
1420
1419
  * Break After
@@ -1614,7 +1613,7 @@ const Z = /* @__PURE__ */ s((e) => {
1614
1613
  * @see https://tailwindcss.com/docs/z-index
1615
1614
  */
1616
1615
  z: [{
1617
- z: [we, "auto", x, p]
1616
+ z: [we, "auto", y, x]
1618
1617
  }],
1619
1618
  // ------------------------
1620
1619
  // --- Flexbox and Grid ---
@@ -1624,7 +1623,7 @@ const Z = /* @__PURE__ */ s((e) => {
1624
1623
  * @see https://tailwindcss.com/docs/flex-basis
1625
1624
  */
1626
1625
  basis: [{
1627
- basis: [Ve, "full", "auto", f, ...S()]
1626
+ basis: [Ve, "full", "auto", h, ...S()]
1628
1627
  }],
1629
1628
  /**
1630
1629
  * Flex Direction
@@ -1645,28 +1644,28 @@ const Z = /* @__PURE__ */ s((e) => {
1645
1644
  * @see https://tailwindcss.com/docs/flex
1646
1645
  */
1647
1646
  flex: [{
1648
- flex: [I, Ve, "auto", "initial", "none", p]
1647
+ flex: [I, Ve, "auto", "initial", "none", x]
1649
1648
  }],
1650
1649
  /**
1651
1650
  * Flex Grow
1652
1651
  * @see https://tailwindcss.com/docs/flex-grow
1653
1652
  */
1654
1653
  grow: [{
1655
- grow: ["", I, x, p]
1654
+ grow: ["", I, y, x]
1656
1655
  }],
1657
1656
  /**
1658
1657
  * Flex Shrink
1659
1658
  * @see https://tailwindcss.com/docs/flex-shrink
1660
1659
  */
1661
1660
  shrink: [{
1662
- shrink: ["", I, x, p]
1661
+ shrink: ["", I, y, x]
1663
1662
  }],
1664
1663
  /**
1665
1664
  * Order
1666
1665
  * @see https://tailwindcss.com/docs/order
1667
1666
  */
1668
1667
  order: [{
1669
- order: [we, "first", "last", "none", x, p]
1668
+ order: [we, "first", "last", "none", y, x]
1670
1669
  }],
1671
1670
  /**
1672
1671
  * Grid Template Columns
@@ -1999,7 +1998,7 @@ const Z = /* @__PURE__ */ s((e) => {
1999
1998
  * @see https://tailwindcss.com/docs/width
2000
1999
  */
2001
2000
  w: [{
2002
- w: [f, "screen", ...ie()]
2001
+ w: [h, "screen", ...ie()]
2003
2002
  }],
2004
2003
  /**
2005
2004
  * Min-Width
@@ -2007,7 +2006,7 @@ const Z = /* @__PURE__ */ s((e) => {
2007
2006
  */
2008
2007
  "min-w": [{
2009
2008
  "min-w": [
2010
- f,
2009
+ h,
2011
2010
  "screen",
2012
2011
  /** Deprecated. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
2013
2012
  "none",
@@ -2020,7 +2019,7 @@ const Z = /* @__PURE__ */ s((e) => {
2020
2019
  */
2021
2020
  "max-w": [{
2022
2021
  "max-w": [
2023
- f,
2022
+ h,
2024
2023
  "screen",
2025
2024
  "none",
2026
2025
  /** Deprecated since Tailwind CSS v4.0.0. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
@@ -2078,21 +2077,21 @@ const Z = /* @__PURE__ */ s((e) => {
2078
2077
  * @see https://tailwindcss.com/docs/font-weight
2079
2078
  */
2080
2079
  "font-weight": [{
2081
- font: [t, x, it]
2080
+ font: [t, y, it]
2082
2081
  }],
2083
2082
  /**
2084
2083
  * Font Stretch
2085
2084
  * @see https://tailwindcss.com/docs/font-stretch
2086
2085
  */
2087
2086
  "font-stretch": [{
2088
- "font-stretch": ["ultra-condensed", "extra-condensed", "condensed", "semi-condensed", "normal", "semi-expanded", "expanded", "extra-expanded", "ultra-expanded", at, p]
2087
+ "font-stretch": ["ultra-condensed", "extra-condensed", "condensed", "semi-condensed", "normal", "semi-expanded", "expanded", "extra-expanded", "ultra-expanded", at, x]
2089
2088
  }],
2090
2089
  /**
2091
2090
  * Font Family
2092
2091
  * @see https://tailwindcss.com/docs/font-family
2093
2092
  */
2094
2093
  "font-family": [{
2095
- font: [br, p, r]
2094
+ font: [vr, x, r]
2096
2095
  }],
2097
2096
  /**
2098
2097
  * Font Variant Numeric
@@ -2129,14 +2128,14 @@ const Z = /* @__PURE__ */ s((e) => {
2129
2128
  * @see https://tailwindcss.com/docs/letter-spacing
2130
2129
  */
2131
2130
  tracking: [{
2132
- tracking: [n, x, p]
2131
+ tracking: [n, y, x]
2133
2132
  }],
2134
2133
  /**
2135
2134
  * Line Clamp
2136
2135
  * @see https://tailwindcss.com/docs/line-clamp
2137
2136
  */
2138
2137
  "line-clamp": [{
2139
- "line-clamp": [I, "none", x, it]
2138
+ "line-clamp": [I, "none", y, it]
2140
2139
  }],
2141
2140
  /**
2142
2141
  * Line Height
@@ -2154,7 +2153,7 @@ const Z = /* @__PURE__ */ s((e) => {
2154
2153
  * @see https://tailwindcss.com/docs/list-style-image
2155
2154
  */
2156
2155
  "list-image": [{
2157
- "list-image": ["none", x, p]
2156
+ "list-image": ["none", y, x]
2158
2157
  }],
2159
2158
  /**
2160
2159
  * List Style Position
@@ -2168,7 +2167,7 @@ const Z = /* @__PURE__ */ s((e) => {
2168
2167
  * @see https://tailwindcss.com/docs/list-style-type
2169
2168
  */
2170
2169
  "list-style-type": [{
2171
- list: ["disc", "decimal", "none", x, p]
2170
+ list: ["disc", "decimal", "none", y, x]
2172
2171
  }],
2173
2172
  /**
2174
2173
  * Text Alignment
@@ -2209,7 +2208,7 @@ const Z = /* @__PURE__ */ s((e) => {
2209
2208
  * @see https://tailwindcss.com/docs/text-decoration-thickness
2210
2209
  */
2211
2210
  "text-decoration-thickness": [{
2212
- decoration: [I, "from-font", "auto", x, Me]
2211
+ decoration: [I, "from-font", "auto", y, Me]
2213
2212
  }],
2214
2213
  /**
2215
2214
  * Text Decoration Color
@@ -2223,7 +2222,7 @@ const Z = /* @__PURE__ */ s((e) => {
2223
2222
  * @see https://tailwindcss.com/docs/text-underline-offset
2224
2223
  */
2225
2224
  "underline-offset": [{
2226
- "underline-offset": [I, "auto", x, p]
2225
+ "underline-offset": [I, "auto", y, x]
2227
2226
  }],
2228
2227
  /**
2229
2228
  * Text Transform
@@ -2254,7 +2253,7 @@ const Z = /* @__PURE__ */ s((e) => {
2254
2253
  * @see https://tailwindcss.com/docs/vertical-align
2255
2254
  */
2256
2255
  "vertical-align": [{
2257
- align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", x, p]
2256
+ align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", y, x]
2258
2257
  }],
2259
2258
  /**
2260
2259
  * Whitespace
@@ -2289,7 +2288,7 @@ const Z = /* @__PURE__ */ s((e) => {
2289
2288
  * @see https://tailwindcss.com/docs/content
2290
2289
  */
2291
2290
  content: [{
2292
- content: ["none", x, p]
2291
+ content: ["none", y, x]
2293
2292
  }],
2294
2293
  // -------------------
2295
2294
  // --- Backgrounds ---
@@ -2344,10 +2343,10 @@ const Z = /* @__PURE__ */ s((e) => {
2344
2343
  bg: ["none", {
2345
2344
  linear: [{
2346
2345
  to: ["t", "tr", "r", "br", "b", "bl", "l", "tl"]
2347
- }, we, x, p],
2348
- radial: ["", x, p],
2349
- conic: [we, x, p]
2350
- }, pr, mr]
2346
+ }, we, y, x],
2347
+ radial: ["", y, x],
2348
+ conic: [we, y, x]
2349
+ }, xr, br]
2351
2350
  }],
2352
2351
  /**
2353
2352
  * Background Color
@@ -2689,7 +2688,7 @@ const Z = /* @__PURE__ */ s((e) => {
2689
2688
  * @see https://tailwindcss.com/docs/outline-offset
2690
2689
  */
2691
2690
  "outline-offset": [{
2692
- "outline-offset": [I, x, p]
2691
+ "outline-offset": [I, y, x]
2693
2692
  }],
2694
2693
  /**
2695
2694
  * Outline Width
@@ -2815,7 +2814,7 @@ const Z = /* @__PURE__ */ s((e) => {
2815
2814
  * @see https://tailwindcss.com/docs/opacity
2816
2815
  */
2817
2816
  opacity: [{
2818
- opacity: [I, x, p]
2817
+ opacity: [I, y, x]
2819
2818
  }],
2820
2819
  /**
2821
2820
  * Mix Blend Mode
@@ -2937,7 +2936,7 @@ const Z = /* @__PURE__ */ s((e) => {
2937
2936
  "mask-y-to": w()
2938
2937
  }],
2939
2938
  "mask-image-radial": [{
2940
- "mask-radial": [x, p]
2939
+ "mask-radial": [y, x]
2941
2940
  }],
2942
2941
  "mask-image-radial-from-pos": [{
2943
2942
  "mask-radial-from": R()
@@ -3025,7 +3024,7 @@ const Z = /* @__PURE__ */ s((e) => {
3025
3024
  * @see https://tailwindcss.com/docs/mask-image
3026
3025
  */
3027
3026
  "mask-image": [{
3028
- mask: ["none", x, p]
3027
+ mask: ["none", y, x]
3029
3028
  }],
3030
3029
  // ---------------
3031
3030
  // --- Filters ---
@@ -3039,8 +3038,8 @@ const Z = /* @__PURE__ */ s((e) => {
3039
3038
  // Deprecated since Tailwind CSS v3.0.0
3040
3039
  "",
3041
3040
  "none",
3042
- x,
3043
- p
3041
+ y,
3042
+ x
3044
3043
  ]
3045
3044
  }],
3046
3045
  /**
@@ -3055,14 +3054,14 @@ const Z = /* @__PURE__ */ s((e) => {
3055
3054
  * @see https://tailwindcss.com/docs/brightness
3056
3055
  */
3057
3056
  brightness: [{
3058
- brightness: [I, x, p]
3057
+ brightness: [I, y, x]
3059
3058
  }],
3060
3059
  /**
3061
3060
  * Contrast
3062
3061
  * @see https://tailwindcss.com/docs/contrast
3063
3062
  */
3064
3063
  contrast: [{
3065
- contrast: [I, x, p]
3064
+ contrast: [I, y, x]
3066
3065
  }],
3067
3066
  /**
3068
3067
  * Drop Shadow
@@ -3073,7 +3072,7 @@ const Z = /* @__PURE__ */ s((e) => {
3073
3072
  // Deprecated since Tailwind CSS v4.0.0
3074
3073
  "",
3075
3074
  "none",
3076
- y,
3075
+ p,
3077
3076
  Je,
3078
3077
  Ye
3079
3078
  ]
@@ -3090,35 +3089,35 @@ const Z = /* @__PURE__ */ s((e) => {
3090
3089
  * @see https://tailwindcss.com/docs/grayscale
3091
3090
  */
3092
3091
  grayscale: [{
3093
- grayscale: ["", I, x, p]
3092
+ grayscale: ["", I, y, x]
3094
3093
  }],
3095
3094
  /**
3096
3095
  * Hue Rotate
3097
3096
  * @see https://tailwindcss.com/docs/hue-rotate
3098
3097
  */
3099
3098
  "hue-rotate": [{
3100
- "hue-rotate": [I, x, p]
3099
+ "hue-rotate": [I, y, x]
3101
3100
  }],
3102
3101
  /**
3103
3102
  * Invert
3104
3103
  * @see https://tailwindcss.com/docs/invert
3105
3104
  */
3106
3105
  invert: [{
3107
- invert: ["", I, x, p]
3106
+ invert: ["", I, y, x]
3108
3107
  }],
3109
3108
  /**
3110
3109
  * Saturate
3111
3110
  * @see https://tailwindcss.com/docs/saturate
3112
3111
  */
3113
3112
  saturate: [{
3114
- saturate: [I, x, p]
3113
+ saturate: [I, y, x]
3115
3114
  }],
3116
3115
  /**
3117
3116
  * Sepia
3118
3117
  * @see https://tailwindcss.com/docs/sepia
3119
3118
  */
3120
3119
  sepia: [{
3121
- sepia: ["", I, x, p]
3120
+ sepia: ["", I, y, x]
3122
3121
  }],
3123
3122
  /**
3124
3123
  * Backdrop Filter
@@ -3129,8 +3128,8 @@ const Z = /* @__PURE__ */ s((e) => {
3129
3128
  // Deprecated since Tailwind CSS v3.0.0
3130
3129
  "",
3131
3130
  "none",
3132
- x,
3133
- p
3131
+ y,
3132
+ x
3134
3133
  ]
3135
3134
  }],
3136
3135
  /**
@@ -3145,56 +3144,56 @@ const Z = /* @__PURE__ */ s((e) => {
3145
3144
  * @see https://tailwindcss.com/docs/backdrop-brightness
3146
3145
  */
3147
3146
  "backdrop-brightness": [{
3148
- "backdrop-brightness": [I, x, p]
3147
+ "backdrop-brightness": [I, y, x]
3149
3148
  }],
3150
3149
  /**
3151
3150
  * Backdrop Contrast
3152
3151
  * @see https://tailwindcss.com/docs/backdrop-contrast
3153
3152
  */
3154
3153
  "backdrop-contrast": [{
3155
- "backdrop-contrast": [I, x, p]
3154
+ "backdrop-contrast": [I, y, x]
3156
3155
  }],
3157
3156
  /**
3158
3157
  * Backdrop Grayscale
3159
3158
  * @see https://tailwindcss.com/docs/backdrop-grayscale
3160
3159
  */
3161
3160
  "backdrop-grayscale": [{
3162
- "backdrop-grayscale": ["", I, x, p]
3161
+ "backdrop-grayscale": ["", I, y, x]
3163
3162
  }],
3164
3163
  /**
3165
3164
  * Backdrop Hue Rotate
3166
3165
  * @see https://tailwindcss.com/docs/backdrop-hue-rotate
3167
3166
  */
3168
3167
  "backdrop-hue-rotate": [{
3169
- "backdrop-hue-rotate": [I, x, p]
3168
+ "backdrop-hue-rotate": [I, y, x]
3170
3169
  }],
3171
3170
  /**
3172
3171
  * Backdrop Invert
3173
3172
  * @see https://tailwindcss.com/docs/backdrop-invert
3174
3173
  */
3175
3174
  "backdrop-invert": [{
3176
- "backdrop-invert": ["", I, x, p]
3175
+ "backdrop-invert": ["", I, y, x]
3177
3176
  }],
3178
3177
  /**
3179
3178
  * Backdrop Opacity
3180
3179
  * @see https://tailwindcss.com/docs/backdrop-opacity
3181
3180
  */
3182
3181
  "backdrop-opacity": [{
3183
- "backdrop-opacity": [I, x, p]
3182
+ "backdrop-opacity": [I, y, x]
3184
3183
  }],
3185
3184
  /**
3186
3185
  * Backdrop Saturate
3187
3186
  * @see https://tailwindcss.com/docs/backdrop-saturate
3188
3187
  */
3189
3188
  "backdrop-saturate": [{
3190
- "backdrop-saturate": [I, x, p]
3189
+ "backdrop-saturate": [I, y, x]
3191
3190
  }],
3192
3191
  /**
3193
3192
  * Backdrop Sepia
3194
3193
  * @see https://tailwindcss.com/docs/backdrop-sepia
3195
3194
  */
3196
3195
  "backdrop-sepia": [{
3197
- "backdrop-sepia": ["", I, x, p]
3196
+ "backdrop-sepia": ["", I, y, x]
3198
3197
  }],
3199
3198
  // --------------
3200
3199
  // --- Tables ---
@@ -3249,7 +3248,7 @@ const Z = /* @__PURE__ */ s((e) => {
3249
3248
  * @see https://tailwindcss.com/docs/transition-property
3250
3249
  */
3251
3250
  transition: [{
3252
- transition: ["", "all", "colors", "opacity", "shadow", "transform", "none", x, p]
3251
+ transition: ["", "all", "colors", "opacity", "shadow", "transform", "none", y, x]
3253
3252
  }],
3254
3253
  /**
3255
3254
  * Transition Behavior
@@ -3263,28 +3262,28 @@ const Z = /* @__PURE__ */ s((e) => {
3263
3262
  * @see https://tailwindcss.com/docs/transition-duration
3264
3263
  */
3265
3264
  duration: [{
3266
- duration: [I, "initial", x, p]
3265
+ duration: [I, "initial", y, x]
3267
3266
  }],
3268
3267
  /**
3269
3268
  * Transition Timing Function
3270
3269
  * @see https://tailwindcss.com/docs/transition-timing-function
3271
3270
  */
3272
3271
  ease: [{
3273
- ease: ["linear", "initial", Q, x, p]
3272
+ ease: ["linear", "initial", Q, y, x]
3274
3273
  }],
3275
3274
  /**
3276
3275
  * Transition Delay
3277
3276
  * @see https://tailwindcss.com/docs/transition-delay
3278
3277
  */
3279
3278
  delay: [{
3280
- delay: [I, x, p]
3279
+ delay: [I, y, x]
3281
3280
  }],
3282
3281
  /**
3283
3282
  * Animation
3284
3283
  * @see https://tailwindcss.com/docs/animation
3285
3284
  */
3286
3285
  animate: [{
3287
- animate: ["none", ze, x, p]
3286
+ animate: ["none", ze, y, x]
3288
3287
  }],
3289
3288
  // ------------------
3290
3289
  // --- Transforms ---
@@ -3301,7 +3300,7 @@ const Z = /* @__PURE__ */ s((e) => {
3301
3300
  * @see https://tailwindcss.com/docs/perspective
3302
3301
  */
3303
3302
  perspective: [{
3304
- perspective: [T, x, p]
3303
+ perspective: [T, y, x]
3305
3304
  }],
3306
3305
  /**
3307
3306
  * Perspective Origin
@@ -3397,7 +3396,7 @@ const Z = /* @__PURE__ */ s((e) => {
3397
3396
  * @see https://tailwindcss.com/docs/transform
3398
3397
  */
3399
3398
  transform: [{
3400
- transform: [x, p, "", "none", "gpu", "cpu"]
3399
+ transform: [y, x, "", "none", "gpu", "cpu"]
3401
3400
  }],
3402
3401
  /**
3403
3402
  * Transform Origin
@@ -3482,7 +3481,7 @@ const Z = /* @__PURE__ */ s((e) => {
3482
3481
  * @see https://tailwindcss.com/docs/cursor
3483
3482
  */
3484
3483
  cursor: [{
3485
- cursor: ["auto", "default", "pointer", "wait", "text", "move", "help", "not-allowed", "none", "context-menu", "progress", "cell", "crosshair", "vertical-text", "alias", "copy", "no-drop", "grab", "grabbing", "all-scroll", "col-resize", "row-resize", "n-resize", "e-resize", "s-resize", "w-resize", "ne-resize", "nw-resize", "se-resize", "sw-resize", "ew-resize", "ns-resize", "nesw-resize", "nwse-resize", "zoom-in", "zoom-out", x, p]
3484
+ cursor: ["auto", "default", "pointer", "wait", "text", "move", "help", "not-allowed", "none", "context-menu", "progress", "cell", "crosshair", "vertical-text", "alias", "copy", "no-drop", "grab", "grabbing", "all-scroll", "col-resize", "row-resize", "n-resize", "e-resize", "s-resize", "w-resize", "ne-resize", "nw-resize", "se-resize", "sw-resize", "ew-resize", "ns-resize", "nesw-resize", "nwse-resize", "zoom-in", "zoom-out", y, x]
3486
3485
  }],
3487
3486
  /**
3488
3487
  * Field Sizing
@@ -3704,7 +3703,7 @@ const Z = /* @__PURE__ */ s((e) => {
3704
3703
  * @see https://tailwindcss.com/docs/will-change
3705
3704
  */
3706
3705
  "will-change": [{
3707
- "will-change": ["auto", "scroll", "contents", "transform", x, p]
3706
+ "will-change": ["auto", "scroll", "contents", "transform", y, x]
3708
3707
  }],
3709
3708
  // -----------
3710
3709
  // --- SVG ---
@@ -3796,7 +3795,7 @@ const Z = /* @__PURE__ */ s((e) => {
3796
3795
  },
3797
3796
  orderSensitiveModifiers: ["*", "**", "after", "backdrop", "before", "details-content", "file", "first-letter", "first-line", "marker", "placeholder", "selection"]
3798
3797
  };
3799
- }, "getDefaultConfig"), wr = /* @__PURE__ */ or(kr), Qe = {
3798
+ }, "getDefaultConfig"), Cr = /* @__PURE__ */ rr(wr), Qe = {
3800
3799
  default: {
3801
3800
  solid: {
3802
3801
  base: "bg-theme-0 dark:bg-theme-700/40 text-theme-600 dark:text-theme-50",
@@ -4082,10 +4081,10 @@ const Z = /* @__PURE__ */ s((e) => {
4082
4081
  icon: "text-red-600 dark:text-red-400"
4083
4082
  }
4084
4083
  }
4085
- }, Cr = {
4084
+ }, Sr = {
4086
4085
  key: 0,
4087
4086
  class: "absolute inset-0 flex items-center justify-center"
4088
- }, Sr = /* @__PURE__ */ j({
4087
+ }, Mr = /* @__PURE__ */ j({
4089
4088
  __name: "FButton",
4090
4089
  props: {
4091
4090
  theme: { default: "default" },
@@ -4111,37 +4110,37 @@ const Z = /* @__PURE__ */ s((e) => {
4111
4110
  lg: "size-5",
4112
4111
  xl: "size-6"
4113
4112
  })[e.size]), n = F(() => {
4114
- const i = "relative inline-flex items-center justify-center gap-2 font-medium transition-all duration-200 focus:outline-none active:opacity-80 cursor-pointer", f = {
4113
+ const i = "relative inline-flex items-center justify-center gap-2 font-medium transition-all duration-200 focus:outline-none active:opacity-80 cursor-pointer", h = {
4115
4114
  xxs: "px-2 py-0.5 text-[10px]",
4116
4115
  xs: "px-3 py-1 text-[11px]",
4117
4116
  sm: "px-3 py-1.5 text-xs",
4118
4117
  md: "px-4 py-2 text-sm",
4119
4118
  lg: "px-6 py-3 text-base",
4120
4119
  xl: "px-8 py-4 text-base"
4121
- }, h = e.design === "link" ? "!px-1" : "", C = {
4120
+ }, f = e.design === "link" ? "!px-1" : "", C = {
4122
4121
  md: "rounded-md",
4123
4122
  lg: "rounded-lg",
4124
4123
  full: "rounded-full"
4125
4124
  }, u = Qe[e.theme]?.[e.design] || Qe.default[e.design], c = [
4126
4125
  i,
4127
- f[e.size],
4128
- h,
4126
+ h[e.size],
4127
+ f,
4129
4128
  C[e.rounding],
4130
4129
  u.base,
4131
4130
  `border ${u.border}`,
4132
4131
  u.hover
4133
4132
  ].filter(Boolean).join(" ");
4134
- return wr(c, e.class);
4133
+ return Cr(c, e.class);
4135
4134
  }), a = F(() => ({
4136
4135
  design: (Qe[e.theme]?.[e.design] || Qe.default[e.design]).icon || ""
4137
4136
  }));
4138
- return (i, f) => (d(), _(co(o.value), {
4137
+ return (i, h) => (d(), _(lo(o.value), {
4139
4138
  href: e.href,
4140
4139
  class: z(n.value)
4141
4140
  }, {
4142
4141
  default: ee(() => [
4143
- e.loading ? (d(), b("div", Cr, [
4144
- B(gt, {
4142
+ e.loading ? (d(), b("div", Sr, [
4143
+ D(gt, {
4145
4144
  class: z(t.value)
4146
4145
  }, null, 8, ["class"])
4147
4146
  ])) : E("", !0),
@@ -4162,19 +4161,19 @@ const Z = /* @__PURE__ */ s((e) => {
4162
4161
  _: 3
4163
4162
  }, 8, ["href", "class"]));
4164
4163
  }
4165
- }), Mr = { class: "flex-1 flex flex-col min-h-0 py-6 space-y-6 h-full overflow-scroll [scrollbar-width:none] [-ms-overflow-style:none] [&::-webkit-scrollbar]:hidden relative" }, Ar = { class: "flex-1 space-y-6" }, Ir = {
4164
+ }), Ar = { class: "flex-1 flex flex-col min-h-0 py-6 space-y-6 h-full overflow-scroll [scrollbar-width:none] [-ms-overflow-style:none] [&::-webkit-scrollbar]:hidden relative" }, Ir = { class: "flex-1 space-y-6" }, zr = {
4166
4165
  key: 0,
4167
4166
  class: "bg-white/5 backdrop-blur-sm rounded-2xl p-4 border border-white/10"
4168
- }, zr = { class: "text-sm text-white/70 leading-relaxed" }, $r = {
4167
+ }, $r = { class: "text-sm text-white/70 leading-relaxed" }, Er = {
4169
4168
  key: 1,
4170
4169
  class: "bg-white/5 backdrop-blur-sm rounded-2xl p-4 border border-white/10"
4171
- }, Er = ["innerHTML"], Lr = {
4170
+ }, Lr = ["innerHTML"], Tr = {
4172
4171
  key: 2,
4173
4172
  class: "bg-white/5 backdrop-blur-sm rounded-2xl p-4 border border-white/10"
4174
- }, Tr = { class: "text-sm text-white/70 leading-relaxed" }, Pr = {
4173
+ }, Pr = { class: "text-sm text-white/70 leading-relaxed" }, Fr = {
4175
4174
  key: 3,
4176
4175
  class: "space-y-3"
4177
- }, Fr = { class: "grid grid-cols-2 gap-3" }, Vr = /* @__PURE__ */ j({
4176
+ }, Vr = { class: "grid grid-cols-2 gap-3" }, Br = /* @__PURE__ */ j({
4178
4177
  __name: "ElSelfAbout",
4179
4178
  props: {
4180
4179
  self: {}
@@ -4227,27 +4226,27 @@ const Z = /* @__PURE__ */ s((e) => {
4227
4226
  }), "generate")
4228
4227
  }
4229
4228
  ].filter((t) => t.condition()).map((t) => t.generate()));
4230
- return (o, t) => (d(), b("div", Mr, [
4231
- l("div", Ar, [
4232
- e.self.headline ? (d(), b("div", Ir, [
4229
+ return (o, t) => (d(), b("div", Ar, [
4230
+ l("div", Ir, [
4231
+ e.self.headline ? (d(), b("div", zr, [
4233
4232
  t[0] || (t[0] = l("h3", { class: "text-sm font-medium text-white/90 mb-2" }, " Professional Tagline ", -1)),
4234
- l("div", zr, N(e.self.headline), 1)
4233
+ l("div", $r, N(e.self.headline), 1)
4235
4234
  ])) : E("", !0),
4236
- e.self.summary ? (d(), b("div", $r, [
4235
+ e.self.summary ? (d(), b("div", Er, [
4237
4236
  t[1] || (t[1] = l("h3", { class: "text-sm font-medium text-white/90 mb-2" }, " About ", -1)),
4238
4237
  l("div", {
4239
4238
  class: "text-sm text-white/70 leading-relaxed",
4240
4239
  innerHTML: e.self.summary
4241
- }, null, 8, Er)
4240
+ }, null, 8, Lr)
4242
4241
  ])) : E("", !0),
4243
- e.self.entityType === "company" ? (d(), b("div", Lr, [
4242
+ e.self.entityType === "company" ? (d(), b("div", Tr, [
4244
4243
  t[2] || (t[2] = l("h3", { class: "text-sm font-medium text-white/90 mb-2" }, " Company Info ", -1)),
4245
- l("p", Tr, " This is a company digital self representing " + N(e.self.name) + ". ", 1)
4244
+ l("p", Pr, " This is a company digital self representing " + N(e.self.name) + ". ", 1)
4246
4245
  ])) : E("", !0),
4247
- r.value.length > 0 ? (d(), b("div", Pr, [
4246
+ r.value.length > 0 ? (d(), b("div", Fr, [
4248
4247
  t[3] || (t[3] = l("h3", { class: "text-sm font-medium text-white/90" }, " Connect ", -1)),
4249
- l("div", Fr, [
4250
- (d(!0), b(Ae, null, rt(r.value, (n) => (d(), _(Sr, {
4248
+ l("div", Vr, [
4249
+ (d(!0), b(Ae, null, rt(r.value, (n) => (d(), _(Mr, {
4251
4250
  key: n.title,
4252
4251
  design: "ghost",
4253
4252
  theme: "default",
@@ -4269,16 +4268,16 @@ const Z = /* @__PURE__ */ s((e) => {
4269
4268
  ])
4270
4269
  ]));
4271
4270
  }
4272
- }), Dr = { class: "flex flex-col h-full relative" }, Br = {
4271
+ }), Dr = { class: "flex flex-col h-full relative" }, jr = {
4273
4272
  key: 0,
4274
4273
  class: "text-theme-600 py-16 flex flex-col items-center justify-center gap-2 text-sm"
4275
- }, jr = {
4274
+ }, Rr = {
4276
4275
  key: 0,
4277
4276
  class: "flex-shrink-0 size-8"
4278
- }, Rr = ["src", "alt"], Nr = { class: "max-w-[70%]" }, Gr = { class: "text-sm leading-[1.5] whitespace-pre-wrap break-words" }, Or = {
4277
+ }, Nr = ["src", "alt"], Gr = { class: "max-w-[70%]" }, Or = { class: "text-sm leading-[1.5] whitespace-pre-wrap break-words" }, Ur = {
4279
4278
  key: 0,
4280
4279
  class: "flex gap-2 justify-start items-end mb-4"
4281
- }, Ur = { class: "flex-shrink-0" }, Hr = ["src", "alt"], qr = { class: "flex-shrink-0 pt-6 pb-2" }, Wr = ["placeholder", "disabled"], Kr = /* @__PURE__ */ j({
4280
+ }, Hr = { class: "flex-shrink-0" }, qr = ["src", "alt"], Wr = { class: "flex-shrink-0 pt-6 pb-2" }, Kr = ["placeholder", "disabled"], Zr = /* @__PURE__ */ j({
4282
4281
  __name: "ElSelfChat",
4283
4282
  props: {
4284
4283
  selfController: {},
@@ -4287,8 +4286,8 @@ const Z = /* @__PURE__ */ s((e) => {
4287
4286
  setup(e) {
4288
4287
  const r = P(""), o = P(), t = P(), n = F(() => tt(e.self));
4289
4288
  function a(u, c) {
4290
- const m = u[c], y = u[c + 1];
4291
- return !y || y.sender !== m.sender;
4289
+ const m = u[c], p = u[c + 1];
4290
+ return !p || p.sender !== m.sender;
4292
4291
  }
4293
4292
  s(a, "shouldShowAvatar"), Ie(async () => {
4294
4293
  if (e.selfController && !e.selfController.textState.value.isConnected)
@@ -4304,23 +4303,23 @@ const Z = /* @__PURE__ */ s((e) => {
4304
4303
  const u = r.value;
4305
4304
  r.value = "", t.value && (t.value.style.height = "auto", t.value.focus());
4306
4305
  try {
4307
- await e.selfController.sendChatMessage(u), h();
4306
+ await e.selfController.sendChatMessage(u), f();
4308
4307
  } catch (c) {
4309
4308
  console.error("Error sending message:", c);
4310
4309
  }
4311
4310
  }
4312
4311
  s(i, "sendMessage");
4313
- function f(u) {
4312
+ function h(u) {
4314
4313
  u.key === "Enter" && !u.shiftKey && (u.preventDefault(), i());
4315
4314
  }
4316
- s(f, "handleKeydown");
4317
- function h() {
4315
+ s(h, "handleKeydown");
4316
+ function f() {
4318
4317
  o.value && Xe(() => {
4319
4318
  const u = o.value;
4320
4319
  u.scrollTop = u.scrollHeight;
4321
4320
  });
4322
4321
  }
4323
- s(h, "scrollToBottom");
4322
+ s(f, "scrollToBottom");
4324
4323
  function C() {
4325
4324
  if (!t.value)
4326
4325
  return;
@@ -4331,55 +4330,55 @@ const Z = /* @__PURE__ */ s((e) => {
4331
4330
  return s(C, "adjustTextareaHeight"), se(r, () => {
4332
4331
  Xe(() => C());
4333
4332
  }), se(() => e.selfController?.sharedMessages.value, (u) => {
4334
- u && u.length > 0 && Xe(() => h());
4333
+ u && u.length > 0 && Xe(() => f());
4335
4334
  }, { immediate: !0, deep: !0 }), (u, c) => (d(), b("div", Dr, [
4336
- e.selfController?.textState.value.connectionStatus !== "connected" ? (d(), b("div", Br, [
4337
- B(gt, { class: "size-4" })
4335
+ e.selfController?.textState.value.connectionStatus !== "connected" ? (d(), b("div", jr, [
4336
+ D(gt, { class: "size-4" })
4338
4337
  ])) : E("", !0),
4339
4338
  l("div", {
4340
4339
  ref_key: "messagesContainer",
4341
4340
  ref: o,
4342
4341
  class: "flex-1 overflow-y-auto overflow-x-hidden py-8 space-y-1 min-h-0 [scrollbar-width:none] [-ms-overflow-style:none] [&::-webkit-scrollbar]:hidden"
4343
4342
  }, [
4344
- (d(!0), b(Ae, null, rt(e.selfController?.sharedMessages.value.filter((m) => m.sender !== "system") ?? [], (m, y) => (d(), b("div", {
4343
+ (d(!0), b(Ae, null, rt(e.selfController?.sharedMessages.value.filter((m) => m.sender !== "system") ?? [], (m, p) => (d(), b("div", {
4345
4344
  key: m.id,
4346
4345
  class: z(["flex gap-2 items-end", {
4347
4346
  "justify-end": m.sender === "user",
4348
4347
  "justify-start": m.sender === "agent",
4349
- "mb-4": a(e.selfController?.sharedMessages.value.filter((g) => g.sender !== "system") ?? [], y)
4348
+ "mb-4": a(e.selfController?.sharedMessages.value.filter((g) => g.sender !== "system") ?? [], p)
4350
4349
  }])
4351
4350
  }, [
4352
- m.sender === "agent" ? (d(), b("div", jr, [
4353
- a(e.selfController?.sharedMessages.value.filter((g) => g.sender !== "system") ?? [], y) ? (d(), b("img", {
4351
+ m.sender === "agent" ? (d(), b("div", Rr, [
4352
+ a(e.selfController?.sharedMessages.value.filter((g) => g.sender !== "system") ?? [], p) ? (d(), b("img", {
4354
4353
  key: 0,
4355
4354
  src: n.value,
4356
4355
  alt: e.self.name,
4357
4356
  class: "size-7 rounded-full object-cover"
4358
- }, null, 8, Rr)) : E("", !0)
4357
+ }, null, 8, Nr)) : E("", !0)
4359
4358
  ])) : E("", !0),
4360
- l("div", Nr, [
4359
+ l("div", Gr, [
4361
4360
  l("div", {
4362
4361
  class: z(["rounded-2xl px-3.5 py-1.5 backdrop-blur-sm", m.sender === "user" ? "bg-primary-500/80 text-white" : "bg-white/15 text-white/95"])
4363
4362
  }, [
4364
- l("p", Gr, N(m.text), 1)
4363
+ l("p", Or, N(m.text), 1)
4365
4364
  ], 2)
4366
4365
  ])
4367
4366
  ], 2))), 128)),
4368
- e.selfController?.textState.value.isThinking ? (d(), b("div", Or, [
4369
- l("div", Ur, [
4367
+ e.selfController?.textState.value.isThinking ? (d(), b("div", Ur, [
4368
+ l("div", Hr, [
4370
4369
  l("img", {
4371
4370
  src: n.value,
4372
4371
  alt: e.self.name,
4373
4372
  class: "size-8 rounded-full object-cover"
4374
- }, null, 8, Hr)
4373
+ }, null, 8, qr)
4375
4374
  ]),
4376
4375
  c[1] || (c[1] = l("div", { class: "rounded-2xl px-4 py-2.5 bg-white/15 backdrop-blur-sm flex items-center" }, [
4377
4376
  l("i", { class: "i-svg-spinners-3-dots-fade size-6 text-white/70" })
4378
4377
  ], -1))
4379
4378
  ])) : E("", !0)
4380
4379
  ], 512),
4381
- l("div", qr, [
4382
- Ft(l("textarea", {
4380
+ l("div", Wr, [
4381
+ Pt(l("textarea", {
4383
4382
  ref_key: "textarea",
4384
4383
  ref: t,
4385
4384
  "onUpdate:modelValue": c[0] || (c[0] = (m) => r.value = m),
@@ -4388,15 +4387,15 @@ const Z = /* @__PURE__ */ s((e) => {
4388
4387
  disabled: !e.selfController?.textState.value.isConnected,
4389
4388
  style: { "font-size": "16px", resize: "none" },
4390
4389
  class: "w-full bg-white/10 backdrop-blur-sm border border-white/20 rounded-3xl px-5 py-3 text-white placeholder-white/50 focus:outline-none focus:border-white/40 disabled:opacity-50 overflow-y-auto [scrollbar-width:none] [-ms-overflow-style:none] [&::-webkit-scrollbar]:hidden",
4391
- onKeydown: f
4392
- }, null, 40, Wr), [
4393
- [Vt, r.value]
4390
+ onKeydown: h
4391
+ }, null, 40, Kr), [
4392
+ [Ft, r.value]
4394
4393
  ]),
4395
4394
  c[2] || (c[2] = l("div", { class: "text-[10px] text-white/40 text-center mt-2" }, " Press Enter to send, Shift+Enter for new line ", -1))
4396
4395
  ])
4397
4396
  ]));
4398
4397
  }
4399
- }), Zr = { class: "flex flex-col items-center text-center gap-4" }, Yr = { class: "relative flex-shrink-0" }, Jr = { class: "w-20 h-20 sm:w-24 sm:h-24 rounded-full overflow-hidden border-4 border-white" }, Qr = ["src", "alt"], Xr = { class: "min-w-0" }, _r = { class: "text-3xl font-light text-white mb-2 truncate" }, es = { class: "text-base font-light text-white/60 line-clamp-1" }, ts = /* @__PURE__ */ j({
4398
+ }), Yr = { class: "flex flex-col items-center text-center gap-4" }, Jr = { class: "relative flex-shrink-0" }, Qr = { class: "w-20 h-20 sm:w-24 sm:h-24 rounded-full overflow-hidden border-4 border-white" }, Xr = ["src", "alt"], _r = { class: "min-w-0" }, es = { class: "text-3xl font-light text-white mb-2 truncate" }, ts = { class: "text-base font-light text-white/60 line-clamp-1" }, os = /* @__PURE__ */ j({
4400
4399
  __name: "ElSelfHeader",
4401
4400
  props: {
4402
4401
  self: {}
@@ -4405,16 +4404,16 @@ const Z = /* @__PURE__ */ s((e) => {
4405
4404
  function r() {
4406
4405
  return e.self.avatar?.src ? e.self.avatar.src : qe();
4407
4406
  }
4408
- return s(r, "getAvatarSrc"), (o, t) => (d(), b("div", Zr, [
4409
- l("div", Yr, [
4410
- l("div", Jr, [
4407
+ return s(r, "getAvatarSrc"), (o, t) => (d(), b("div", Yr, [
4408
+ l("div", Jr, [
4409
+ l("div", Qr, [
4411
4410
  l("img", {
4412
4411
  src: r(),
4413
4412
  alt: e.self.name,
4414
4413
  class: "w-full h-full object-cover",
4415
4414
  onError: t[0] || (t[0] = //@ts-ignore
4416
4415
  (...n) => Y(ot) && Y(ot)(...n))
4417
- }, null, 40, Qr)
4416
+ }, null, 40, Xr)
4418
4417
  ]),
4419
4418
  t[1] || (t[1] = l("div", { class: "absolute top-1.5 right-1.5" }, [
4420
4419
  l("div", {
@@ -4424,13 +4423,13 @@ const Z = /* @__PURE__ */ s((e) => {
4424
4423
  l("div", { class: "size-4 bg-green-500 rounded-full ring-2 ring-white" })
4425
4424
  ], -1))
4426
4425
  ]),
4427
- l("div", Xr, [
4428
- l("h1", _r, N(e.self.name), 1),
4429
- l("p", es, N(e.self.title), 1)
4426
+ l("div", _r, [
4427
+ l("h1", es, N(e.self.name), 1),
4428
+ l("p", ts, N(e.self.title), 1)
4430
4429
  ])
4431
4430
  ]));
4432
4431
  }
4433
- }), os = { class: "absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 w-[28px] h-[28px] overflow-hidden" }, Zt = /* @__PURE__ */ j({
4432
+ }), rs = { class: "absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 w-[28px] h-[28px] overflow-hidden" }, Kt = /* @__PURE__ */ j({
4434
4433
  name: "FClose",
4435
4434
  __name: "FClose",
4436
4435
  emits: ["click"],
@@ -4445,7 +4444,7 @@ const Z = /* @__PURE__ */ s((e) => {
4445
4444
  onClick: t[0] || (t[0] = (n) => o.$emit("click", n))
4446
4445
  }, [
4447
4446
  t[1] || (t[1] = l("span", { class: "absolute inset-0 rounded-full transition-all" }, null, -1)),
4448
- l("span", os, [
4447
+ l("span", rs, [
4449
4448
  l("span", {
4450
4449
  class: z(["absolute h-full w-[3px] rounded-[5px] left-[13px] transition-all duration-[400ms] ease-[cubic-bezier(0.52,0.01,0.16,1)]", r.value ? "translate-y-0 translate-x-0 rotate-45" : "translate-y-[30px] -translate-x-[30px] rotate-0"]),
4451
4450
  style: { "background-color": "currentColor", "transition-delay": "0.15s" }
@@ -4457,16 +4456,16 @@ const Z = /* @__PURE__ */ s((e) => {
4457
4456
  ])
4458
4457
  ]));
4459
4458
  }
4460
- }), rs = {
4459
+ }), ss = {
4461
4460
  key: 0,
4462
4461
  class: "px-9 pt-12 pb-4"
4463
- }, ss = { class: "text-base font-medium text-theme-400" }, ns = {
4462
+ }, ns = { class: "text-base font-medium text-theme-400" }, as = {
4464
4463
  key: 1,
4465
4464
  class: "px-4 pb-8 border-b border-white/10"
4466
- }, as = ["disabled", "onClick"], is = { class: "flex items-center gap-3" }, ls = { class: "flex-1" }, cs = {
4465
+ }, is = ["disabled", "onClick"], ls = { class: "flex items-center gap-3" }, cs = { class: "flex-1" }, ds = {
4467
4466
  key: 0,
4468
4467
  class: "text-xs text-white/50 mt-0.5"
4469
- }, ds = { class: "p-6" }, Yt = /* @__PURE__ */ j({
4468
+ }, us = { class: "p-6" }, Zt = /* @__PURE__ */ j({
4470
4469
  name: "ElSidebar",
4471
4470
  __name: "ElSidebar",
4472
4471
  props: {
@@ -4481,11 +4480,11 @@ const Z = /* @__PURE__ */ s((e) => {
4481
4480
  const o = e, t = r, n = o.position || "left", a = o.widthClasses || "w-[80%] max-w-[300px]", i = F({
4482
4481
  get: /* @__PURE__ */ s(() => o.modelValue, "get"),
4483
4482
  set: /* @__PURE__ */ s((u) => t("update:modelValue", u), "set")
4484
- }), f = F(() => o.items.filter((u) => !u.isHidden));
4485
- function h(u) {
4483
+ }), h = F(() => o.items.filter((u) => !u.isHidden));
4484
+ function f(u) {
4486
4485
  u.isDisabled || (u.onClick ? u.onClick({ item: u, event: new MouseEvent("click") }) : u.href && (u.href.includes("http") ? window.open(u.href, u.target || "_self")?.focus() : window.location.href = u.href), i.value = !1);
4487
4486
  }
4488
- s(h, "handleItemClick");
4487
+ s(f, "handleItemClick");
4489
4488
  const C = F(() => n === "left" ? {
4490
4489
  enter: "-translate-x-full",
4491
4490
  leave: "-translate-x-full",
@@ -4498,7 +4497,7 @@ const Z = /* @__PURE__ */ s((e) => {
4498
4497
  closeButton: "-left-16"
4499
4498
  });
4500
4499
  return (u, c) => (d(), b(Ae, null, [
4501
- B(_e, {
4500
+ D(_e, {
4502
4501
  "enter-active-class": "transition-opacity duration-300 ease-out",
4503
4502
  "leave-active-class": "transition-opacity duration-200 ease-in",
4504
4503
  "enter-from-class": "opacity-0",
@@ -4515,7 +4514,7 @@ const Z = /* @__PURE__ */ s((e) => {
4515
4514
  ]),
4516
4515
  _: 1
4517
4516
  }),
4518
- B(_e, {
4517
+ D(_e, {
4519
4518
  "enter-active-class": "transition-all duration-500 ease-[cubic-bezier(0.25,1,0.33,1)]",
4520
4519
  "leave-active-class": "transition-all duration-400 ease-[cubic-bezier(0.25,1,0.33,1)]",
4521
4520
  "enter-from-class": C.value.enter,
@@ -4534,20 +4533,20 @@ const Z = /* @__PURE__ */ s((e) => {
4534
4533
  onClick: c[2] || (c[2] = et(() => {
4535
4534
  }, ["stop"]))
4536
4535
  }, [
4537
- B(Zt, {
4536
+ D(Kt, {
4538
4537
  class: z(["absolute top-4 z-10 text-white", C.value.closeButton]),
4539
4538
  onClick: c[1] || (c[1] = (m) => i.value = !1)
4540
4539
  }, null, 8, ["class"]),
4541
- e.title ? (d(), b("div", rs, [
4542
- l("h3", ss, N(e.title), 1)
4540
+ e.title ? (d(), b("div", ss, [
4541
+ l("h3", ns, N(e.title), 1)
4543
4542
  ])) : E("", !0),
4544
- u.$slots.header ? (d(), b("div", ns, [
4543
+ u.$slots.header ? (d(), b("div", as, [
4545
4544
  Ce(u.$slots, "header")
4546
4545
  ])) : E("", !0),
4547
4546
  l("div", {
4548
4547
  class: z(["flex-1 p-6 space-y-2 overflow-y-auto", { "pt-6": !e.title && !u.$slots.header, "pt-4": e.title || u.$slots.header }])
4549
4548
  }, [
4550
- B(Pt, {
4549
+ D(Tt, {
4551
4550
  "enter-active-class": "transition-all duration-400 ease-[cubic-bezier(0.25,1,0.33,1)]",
4552
4551
  "leave-active-class": "transition-all duration-200 ease-[cubic-bezier(0.25,1,0.33,1)]",
4553
4552
  "enter-from-class": Y(n) === "left" ? "-translate-x-4 opacity-0" : "translate-x-4 opacity-0",
@@ -4556,17 +4555,17 @@ const Z = /* @__PURE__ */ s((e) => {
4556
4555
  "leave-to-class": Y(n) === "left" ? "-translate-x-4 opacity-0" : "translate-x-4 opacity-0"
4557
4556
  }, {
4558
4557
  default: ee(() => [
4559
- (d(!0), b(Ae, null, rt(f.value, (m, y) => (d(), b("button", {
4560
- key: m.key || m.label || y,
4561
- style: st({ transitionDelay: `${y * 40}ms` }),
4558
+ (d(!0), b(Ae, null, rt(h.value, (m, p) => (d(), b("button", {
4559
+ key: m.key || m.label || p,
4560
+ style: st({ transitionDelay: `${p * 40}ms` }),
4562
4561
  class: z(["cursor-pointer w-full text-left p-3 rounded-xl transition-all duration-200 ease-[cubic-bezier(0.25,1,0.33,1)] group", [
4563
4562
  m.isActive ? "bg-primary-500/20 border border-primary-500/40" : "hover:bg-white/10",
4564
4563
  m.isDisabled && "opacity-50 cursor-not-allowed"
4565
4564
  ]]),
4566
4565
  disabled: m.isDisabled,
4567
- onClick: /* @__PURE__ */ s((g) => h(m), "onClick")
4566
+ onClick: /* @__PURE__ */ s((g) => f(m), "onClick")
4568
4567
  }, [
4569
- l("div", is, [
4568
+ l("div", ls, [
4570
4569
  m.icon?.src ? (d(), b("i", {
4571
4570
  key: 0,
4572
4571
  class: z(["size-5 flex-shrink-0 transition-transform duration-200 ease-[cubic-bezier(0.25,1,0.33,1)] group-hover:scale-110", [
@@ -4574,19 +4573,19 @@ const Z = /* @__PURE__ */ s((e) => {
4574
4573
  m.isActive ? "text-primary-400" : "text-white/70 group-hover:text-white"
4575
4574
  ]])
4576
4575
  }, null, 2)) : E("", !0),
4577
- l("div", ls, [
4576
+ l("div", cs, [
4578
4577
  l("div", {
4579
4578
  class: z(["font-medium text-sm", m.isActive ? "text-primary-300" : "text-white"])
4580
4579
  }, N(m.label), 3),
4581
- m.subLabel ? (d(), b("div", cs, N(m.subLabel), 1)) : E("", !0)
4580
+ m.subLabel ? (d(), b("div", ds, N(m.subLabel), 1)) : E("", !0)
4582
4581
  ])
4583
4582
  ])
4584
- ], 14, as))), 128))
4583
+ ], 14, is))), 128))
4585
4584
  ]),
4586
4585
  _: 1
4587
4586
  }, 8, ["enter-from-class", "leave-to-class"])
4588
4587
  ], 2),
4589
- l("div", ds, [
4588
+ l("div", us, [
4590
4589
  Ce(u.$slots, "footer", {}, () => [
4591
4590
  c[4] || (c[4] = l("div", { class: "text-center" }, [
4592
4591
  l("p", { class: "text-[10px] text-white/40 font-sans" }, [
@@ -4607,7 +4606,7 @@ const Z = /* @__PURE__ */ s((e) => {
4607
4606
  }, 8, ["enter-from-class", "leave-to-class"])
4608
4607
  ], 64));
4609
4608
  }
4610
- }), us = /* @__PURE__ */ j({
4609
+ }), hs = /* @__PURE__ */ j({
4611
4610
  name: "SelfModeSidebar",
4612
4611
  __name: "ElSelfModeSidebar",
4613
4612
  props: {
@@ -4618,26 +4617,26 @@ const Z = /* @__PURE__ */ s((e) => {
4618
4617
  setup(e, { emit: r }) {
4619
4618
  const o = e, t = r, n = F({
4620
4619
  get: /* @__PURE__ */ s(() => o.modelValue, "get"),
4621
- set: /* @__PURE__ */ s((f) => t("update:modelValue", f), "set")
4622
- }), a = F(() => o.selfController?.agentMode?.value ?? "self"), i = F(() => Bt.map((f) => ({
4623
- key: f.mode,
4624
- icon: { src: f.icon },
4625
- label: f.label,
4626
- isActive: a.value === f.mode,
4620
+ set: /* @__PURE__ */ s((h) => t("update:modelValue", h), "set")
4621
+ }), a = F(() => o.selfController?.agentMode?.value ?? "self"), i = F(() => Bt.map((h) => ({
4622
+ key: h.mode,
4623
+ icon: { src: h.icon },
4624
+ label: h.label,
4625
+ isActive: a.value === h.mode,
4627
4626
  onClick: /* @__PURE__ */ s(() => {
4628
- o.selfController?.setMode(f.mode);
4627
+ o.selfController?.setMode(h.mode);
4629
4628
  }, "onClick")
4630
4629
  })));
4631
- return (f, h) => (d(), _(Yt, {
4630
+ return (h, f) => (d(), _(Zt, {
4632
4631
  modelValue: n.value,
4633
- "onUpdate:modelValue": h[0] || (h[0] = (C) => n.value = C),
4632
+ "onUpdate:modelValue": f[0] || (f[0] = (C) => n.value = C),
4634
4633
  items: i.value,
4635
4634
  position: "right",
4636
4635
  title: "Mode",
4637
4636
  "width-classes": "w-[80%] max-w-[255px]"
4638
4637
  }, null, 8, ["modelValue", "items"]));
4639
4638
  }
4640
- }), hs = /* @__PURE__ */ j({
4639
+ }), fs = /* @__PURE__ */ j({
4641
4640
  name: "SelfSidebar",
4642
4641
  __name: "ElSelfSidebar",
4643
4642
  props: {
@@ -4658,8 +4657,8 @@ const Z = /* @__PURE__ */ s((e) => {
4658
4657
  icon: { src: "i-tabler-share" },
4659
4658
  label: "Share This Digital Self",
4660
4659
  onClick: /* @__PURE__ */ s(() => {
4661
- const f = `${window.location.origin}/@${o.self.handle || o.self.selfId}`;
4662
- navigator.clipboard.writeText(f);
4660
+ const h = `${window.location.origin}/@${o.self.handle || o.self.selfId}`;
4661
+ navigator.clipboard.writeText(h);
4663
4662
  }, "onClick")
4664
4663
  },
4665
4664
  {
@@ -4688,15 +4687,15 @@ const Z = /* @__PURE__ */ s((e) => {
4688
4687
  }, "onClick")
4689
4688
  }), i;
4690
4689
  });
4691
- return (i, f) => (d(), _(Yt, {
4690
+ return (i, h) => (d(), _(Zt, {
4692
4691
  modelValue: n.value,
4693
- "onUpdate:modelValue": f[0] || (f[0] = (h) => n.value = h),
4692
+ "onUpdate:modelValue": h[0] || (h[0] = (f) => n.value = f),
4694
4693
  items: a.value,
4695
4694
  position: "left",
4696
4695
  title: e.title || "Menu"
4697
4696
  }, null, 8, ["modelValue", "items", "title"]));
4698
4697
  }
4699
- }), fs = { class: "w-full max-w-full flex items-center justify-center" }, gs = ["width", "height"], ms = /* @__PURE__ */ j({
4698
+ }), gs = { class: "w-full max-w-full flex items-center justify-center" }, ms = ["width", "height"], bs = /* @__PURE__ */ j({
4700
4699
  __name: "ElAudioVisualizer",
4701
4700
  props: {
4702
4701
  rms: {},
@@ -4714,9 +4713,9 @@ const Z = /* @__PURE__ */ s((e) => {
4714
4713
  setup(e) {
4715
4714
  const r = e, o = P();
4716
4715
  let t = null, n = null;
4717
- const a = P(!1), i = P(!0), f = /* @__PURE__ */ new Map();
4718
- let h = null, C = null, u = null;
4719
- const c = P(!1), m = P(null), { bars: y, barWidth: g, barSpacing: T, minHeight: H, maxHeight: Q, STIFFNESS: ze, DAMPING: Se, PEAK_HOLD_TIME: ue, PEAK_DECAY_STIFFNESS: pe, PEAK_DECAY_DAMPING: he } = xo, re = new Float32Array(y).fill(H), S = new Float32Array(y).fill(0), ne = new Float32Array(y).fill(H), ce = new Float32Array(y).fill(H), fe = new Float32Array(y).fill(0), ge = new Float32Array(y).fill(0);
4716
+ const a = P(!1), i = P(!0), h = /* @__PURE__ */ new Map();
4717
+ let f = null, C = null, u = null;
4718
+ const c = P(!1), m = P(null), { bars: p, barWidth: g, barSpacing: T, minHeight: H, maxHeight: Q, STIFFNESS: ze, DAMPING: Se, PEAK_HOLD_TIME: ue, PEAK_DECAY_STIFFNESS: pe, PEAK_DECAY_DAMPING: he } = yo, re = new Float32Array(p).fill(H), S = new Float32Array(p).fill(0), ne = new Float32Array(p).fill(H), ce = new Float32Array(p).fill(H), fe = new Float32Array(p).fill(0), ge = new Float32Array(p).fill(0);
4720
4719
  function We(v) {
4721
4720
  return v < 200 ? { stiffnessMultiplier: 0.7, dampingMultiplier: 1.2 } : v < 1e3 ? { stiffnessMultiplier: 1, dampingMultiplier: 1 } : v < 4e3 ? { stiffnessMultiplier: 1.3, dampingMultiplier: 0.8 } : { stiffnessMultiplier: 1.5, dampingMultiplier: 0.6 };
4722
4721
  }
@@ -4749,8 +4748,8 @@ const Z = /* @__PURE__ */ s((e) => {
4749
4748
  if (!o.value)
4750
4749
  return;
4751
4750
  typeof window < "u" && (q = Math.max(1, Math.min(2, window.devicePixelRatio || 1)));
4752
- const v = (g + T) * y - T, M = Q;
4753
- o.value.width = Math.floor(v * q), o.value.height = Math.floor(M * q), o.value.style.width = `${v}px`, o.value.style.height = `${M}px`, t && t.setTransform(q, 0, 0, q, 0, 0), eo();
4751
+ const v = (g + T) * p - T, M = Q;
4752
+ o.value.width = Math.floor(v * q), o.value.height = Math.floor(M * q), o.value.style.width = `${v}px`, o.value.style.height = `${M}px`, t && t.setTransform(q, 0, 0, q, 0, 0), _t();
4754
4753
  }
4755
4754
  s(ie, "resizeCanvas");
4756
4755
  function w() {
@@ -4885,25 +4884,25 @@ const Z = /* @__PURE__ */ s((e) => {
4885
4884
  return M;
4886
4885
  }
4887
4886
  s(xt, "generateIntensityBasedBands");
4888
- function Xt() {
4887
+ function Qt() {
4889
4888
  if (typeof window > "u")
4890
4889
  return;
4891
4890
  const v = navigator.userAgent.toLowerCase(), M = /android|webos|iphone|ipad|ipod|blackberry|iemobile|opera mini/i.test(v);
4892
4891
  a.value = M;
4893
4892
  }
4894
- s(Xt, "detectMobile");
4895
- function _t(v, M) {
4896
- return f.has(v) || f.set(v, M()), f.get(v);
4893
+ s(Qt, "detectMobile");
4894
+ function Xt(v, M) {
4895
+ return h.has(v) || h.set(v, M()), h.get(v);
4897
4896
  }
4898
- s(_t, "getGradient");
4899
- function eo() {
4900
- f.clear(), h = null;
4897
+ s(Xt, "getGradient");
4898
+ function _t() {
4899
+ h.clear(), f = null;
4901
4900
  }
4902
- s(eo, "clearGradientCache");
4901
+ s(_t, "clearGradientCache");
4903
4902
  function nt() {
4904
4903
  if (typeof window > "u" || !t || !o.value)
4905
4904
  return;
4906
- Xt();
4905
+ Qt();
4907
4906
  const v = o.value, M = v.width / q, A = v.height / q;
4908
4907
  function L($) {
4909
4908
  if (!t)
@@ -4916,10 +4915,10 @@ const Z = /* @__PURE__ */ s((e) => {
4916
4915
  let O = 0;
4917
4916
  r.audioLevels ? r.isListening ? O = Math.min(r.audioLevels.inputLevel * 1.5, 1) : r.isSpeaking && (O = Math.min(r.audioLevels.outputLevel * 1.8, 1)) : r.rms !== void 0 && (O = Math.min(r.rms / 70, 1));
4918
4917
  const U = Ne(O);
4919
- for (let k = 0; k < y; k++)
4918
+ for (let k = 0; k < p; k++)
4920
4919
  ne[k] = H + U[k] * (Q - H);
4921
4920
  const be = 16.67;
4922
- for (let k = 0; k < y; k++) {
4921
+ for (let k = 0; k < p; k++) {
4923
4922
  const de = X[k], te = We(de), J = ne[k] - re[k], ae = ze * te.stiffnessMultiplier, Fe = Se * te.dampingMultiplier, le = J * ae - S[k] * Fe;
4924
4923
  if (S[k] += le, re[k] += S[k], re[k] > ce[k])
4925
4924
  ce[k] = re[k], fe[k] = ue, ge[k] = 0;
@@ -4928,42 +4927,42 @@ const Z = /* @__PURE__ */ s((e) => {
4928
4927
  ge[k] += Oe, ce[k] = Math.max(H, ce[k] + ge[k]);
4929
4928
  }
4930
4929
  }
4931
- const K = y * 0.15;
4930
+ const K = p * 0.15;
4932
4931
  function V() {
4933
- t && (h || (h = t.createRadialGradient(
4932
+ t && (f || (f = t.createRadialGradient(
4934
4933
  M * 0.5,
4935
4934
  A * 0.6,
4936
4935
  A * 0.1,
4937
4936
  M * 0.5,
4938
4937
  A * 0.6,
4939
4938
  A * 0.9
4940
- ), h.addColorStop(0, "rgba(255,255,255,0.02)"), h.addColorStop(1, "rgba(0,0,0,0.08)")), t.fillStyle = h, t.fillRect(0, 0, M, A));
4939
+ ), f.addColorStop(0, "rgba(255,255,255,0.02)"), f.addColorStop(1, "rgba(0,0,0,0.08)")), t.fillStyle = f, t.fillRect(0, 0, M, A));
4941
4940
  }
4942
4941
  if (s(V, "drawBackground"), V(), (r.isListening || r.isSpeaking) && !a.value) {
4943
4942
  const k = performance.now() * 1e-3, de = 0.1 + Math.sin(k * 2) * 0.05;
4944
4943
  t.save(), t.globalCompositeOperation = "lighter", t.globalAlpha = de;
4945
4944
  const te = r.isSpeaking ? "rgba(34,197,94,0.4)" : "rgba(59,130,246,0.4)";
4946
4945
  t.fillStyle = te;
4947
- for (let J = 0; J < y; J++) {
4946
+ for (let J = 0; J < p; J++) {
4948
4947
  const ae = J * (g + T), Fe = re[J], le = A - Fe;
4949
4948
  t.beginPath(), t.roundRect(ae - 1, le - 1, g + 2, Fe + 2, [2, 2, 0, 0]), t.fill();
4950
4949
  }
4951
4950
  t.restore();
4952
4951
  }
4953
- for (let k = 0; k < y; k++) {
4954
- const de = k * (g + T), te = re[k], J = A - te, ae = X[k], Fe = Math.min(k, y - 1 - k), le = Math.min(1, Fe / K), Ge = Math.min(1, te / Q), Oe = (0.8 + Ge * 0.2) * le, kt = (0.6 + Ge * 0.2) * le, wt = (0.3 + Ge * 0.1) * le, to = Math.round(Ge * 10) / 10, oo = Math.round(le * 10) / 10, ro = `${r.isSpeaking ? "speaking" : r.isListening ? "listening" : "idle"}-${to}-${oo}-${te}`, so = _t(ro, () => {
4952
+ for (let k = 0; k < p; k++) {
4953
+ const de = k * (g + T), te = re[k], J = A - te, ae = X[k], Fe = Math.min(k, p - 1 - k), le = Math.min(1, Fe / K), Ge = Math.min(1, te / Q), Oe = (0.8 + Ge * 0.2) * le, kt = (0.6 + Ge * 0.2) * le, wt = (0.3 + Ge * 0.1) * le, eo = Math.round(Ge * 10) / 10, to = Math.round(le * 10) / 10, oo = `${r.isSpeaking ? "speaking" : r.isListening ? "listening" : "idle"}-${eo}-${to}-${te}`, ro = Xt(oo, () => {
4955
4954
  const oe = t.createLinearGradient(0, J, 0, J + te);
4956
4955
  if (r.isSpeaking)
4957
4956
  oe.addColorStop(0, `rgba(34, 197, 94, ${Oe})`), oe.addColorStop(0.5, `rgba(34, 197, 94, ${kt})`), oe.addColorStop(1, `rgba(34, 197, 94, ${wt})`), (ae >= 400 && ae <= 600 || ae >= 1400 && ae <= 1600) && oe.addColorStop(0, `rgba(74, 222, 128, ${Math.min(1, Oe + 0.2)})`);
4958
4957
  else if (r.isListening)
4959
4958
  oe.addColorStop(0, `rgba(59, 130, 246, ${Oe})`), oe.addColorStop(0.5, `rgba(59, 130, 246, ${kt})`), oe.addColorStop(1, `rgba(59, 130, 246, ${wt})`);
4960
4959
  else {
4961
- const Ze = 0.6 * le, no = 0.4 * le, ao = 0.2 * le;
4962
- oe.addColorStop(0, `rgba(156, 163, 175, ${Ze})`), oe.addColorStop(0.6, `rgba(156, 163, 175, ${no})`), oe.addColorStop(1, `rgba(156, 163, 175, ${ao})`);
4960
+ const Ze = 0.6 * le, so = 0.4 * le, no = 0.2 * le;
4961
+ oe.addColorStop(0, `rgba(156, 163, 175, ${Ze})`), oe.addColorStop(0.6, `rgba(156, 163, 175, ${so})`), oe.addColorStop(1, `rgba(156, 163, 175, ${no})`);
4963
4962
  }
4964
4963
  return oe;
4965
4964
  });
4966
- if (t.fillStyle = so, t.beginPath(), t.roundRect(de, J, g, te, [1, 1, 0, 0]), t.fill(), ce[k] > H + 2) {
4965
+ if (t.fillStyle = ro, t.beginPath(), t.roundRect(de, J, g, te, [1, 1, 0, 0]), t.fill(), ce[k] > H + 2) {
4967
4966
  const oe = A - ce[k], Ze = fe[k] > 0 ? 0.9 : Math.max(0.3, fe[k] / ue);
4968
4967
  t.fillStyle = `rgba(255, 255, 255, ${Ze})`, t.fillRect(de, oe - 1, g, 2), Ze > 0.5 && !a.value && (t.shadowColor = r.isSpeaking ? "rgba(34, 197, 94, 0.5)" : "rgba(59, 130, 246, 0.5)", t.shadowBlur = 3, t.fillRect(de, oe - 1, g, 2), t.shadowBlur = 0);
4969
4968
  }
@@ -5012,51 +5011,51 @@ const Z = /* @__PURE__ */ s((e) => {
5012
5011
  { immediate: !1 }
5013
5012
  ), se(o, (v) => {
5014
5013
  v && !t && (t = v.getContext("2d"), ie(), nt());
5015
- }), (v, M) => (d(), b("div", fs, [
5014
+ }), (v, M) => (d(), b("div", gs, [
5016
5015
  l("canvas", {
5017
5016
  ref_key: "canvasRef",
5018
5017
  ref: o,
5019
- width: (Y(g) + Y(T)) * Y(y) - Y(T),
5018
+ width: (Y(g) + Y(T)) * Y(p) - Y(T),
5020
5019
  height: Y(Q),
5021
5020
  class: "w-full max-w-full [image-rendering:-webkit-optimize-contrast]",
5022
5021
  style: st({ height: `${Y(Q)}px` })
5023
- }, null, 12, gs)
5022
+ }, null, 12, ms)
5024
5023
  ]));
5025
5024
  }
5026
- }), bs = { class: "flex flex-col h-full items-center justify-center px-6 py-8" }, vs = { class: "flex-1 flex flex-col items-center justify-center space-y-8 py-4" }, ps = { class: "h-32 w-full max-w-md" }, xs = { class: "text-center flex gap-2 items-center text-xs" }, ys = { class: "flex items-center justify-center gap-2" }, ks = {
5025
+ }), vs = { class: "flex flex-col h-full items-center justify-center px-6 py-8" }, ps = { class: "flex-1 flex flex-col items-center justify-center space-y-8 py-4" }, xs = { class: "h-32 w-full max-w-md" }, ys = { class: "text-center flex gap-2 items-center text-xs" }, ks = { class: "flex items-center justify-center gap-2" }, ws = {
5027
5026
  key: 0,
5028
5027
  class: "size-2 bg-blue-500 rounded-full animate-pulse"
5029
- }, ws = {
5028
+ }, Cs = {
5030
5029
  key: 1,
5031
5030
  class: "size-2 bg-green-500 rounded-full animate-pulse"
5032
- }, Cs = {
5031
+ }, Ss = {
5033
5032
  key: 2,
5034
5033
  class: "size-2 bg-white/50 rounded-full"
5035
- }, Ss = {
5034
+ }, Ms = {
5036
5035
  key: 3,
5037
5036
  class: "size-2 bg-red-500 rounded-full"
5038
- }, Ms = { class: "text-white/70 text-sm max-w-xs leading-relaxed" }, As = { class: "flex flex-col items-center space-y-6" }, Is = /* @__PURE__ */ j({
5037
+ }, As = { class: "text-white/70 text-sm max-w-xs leading-relaxed" }, Is = { class: "flex flex-col items-center space-y-6" }, zs = /* @__PURE__ */ j({
5039
5038
  __name: "ElSelfVoice",
5040
5039
  props: {
5041
5040
  selfController: {}
5042
5041
  },
5043
5042
  setup(e) {
5044
5043
  const r = F(() => e.selfController?.voiceState.value), o = F(() => r.value?.isConnected ? "red" : "green"), t = F(() => r.value?.isConnected ? "i-heroicons-phone-x-mark" : "i-heroicons-phone"), n = F(() => r.value?.isConnected ? "End Call" : "Start a Call"), a = F(() => {
5045
- const h = e.selfController?.voiceState.value;
5046
- return !!h?.error || h?.connectionStatus === "connecting";
5044
+ const f = e.selfController?.voiceState.value;
5045
+ return !!f?.error || f?.connectionStatus === "connecting";
5047
5046
  }), i = F(() => r.value?.connectionStatus === "connecting");
5048
- async function f() {
5047
+ async function h() {
5049
5048
  if (e.selfController)
5050
5049
  try {
5051
5050
  e.selfController.voiceState.value.isConnected ? await e.selfController.endConversation() : (e.selfController.isConnected() && await e.selfController.endConversation(), await e.selfController.startVoiceConversation(), e.selfController.agentMode.value = "talk");
5052
- } catch (h) {
5053
- console.error("Error toggling call:", h);
5051
+ } catch (f) {
5052
+ console.error("Error toggling call:", f);
5054
5053
  }
5055
5054
  }
5056
- return s(f, "toggleCall"), (h, C) => (d(), b("div", bs, [
5057
- l("div", vs, [
5058
- l("div", ps, [
5059
- B(ms, {
5055
+ return s(h, "toggleCall"), (f, C) => (d(), b("div", vs, [
5056
+ l("div", ps, [
5057
+ l("div", xs, [
5058
+ D(bs, {
5060
5059
  "audio-levels": e.selfController?.audioLevels.value ?? { inputLevel: 0, outputLevel: 0 },
5061
5060
  "is-listening": e.selfController?.voiceState.value.isListening ?? !1,
5062
5061
  "is-speaking": e.selfController?.voiceState.value.isSpeaking ?? !1,
@@ -5067,21 +5066,21 @@ const Z = /* @__PURE__ */ s((e) => {
5067
5066
  "self-controller": e.selfController
5068
5067
  }, null, 8, ["audio-levels", "is-listening", "is-speaking", "is-connected", "self-controller"])
5069
5068
  ]),
5070
- l("div", xs, [
5071
- l("div", ys, [
5072
- e.selfController?.voiceState.value.isListening ? (d(), b("div", ks)) : e.selfController?.voiceState.value.isSpeaking ? (d(), b("div", ws)) : e.selfController?.voiceState.value.isConnected && !e.selfController?.voiceState.value.isListening && !e.selfController?.voiceState.value.isSpeaking ? (d(), b("div", Cs)) : e.selfController?.voiceState.value.error ? (d(), b("div", Ss)) : E("", !0)
5069
+ l("div", ys, [
5070
+ l("div", ks, [
5071
+ e.selfController?.voiceState.value.isListening ? (d(), b("div", ws)) : e.selfController?.voiceState.value.isSpeaking ? (d(), b("div", Cs)) : e.selfController?.voiceState.value.isConnected && !e.selfController?.voiceState.value.isListening && !e.selfController?.voiceState.value.isSpeaking ? (d(), b("div", Ss)) : e.selfController?.voiceState.value.error ? (d(), b("div", Ms)) : E("", !0)
5073
5072
  ]),
5074
- l("p", Ms, N(e.selfController?.voiceState.value.error ? `Error: ${e.selfController.voiceState.value.error}` : e.selfController?.voiceState.value.transcript || "Ready to start a call..."), 1)
5073
+ l("p", As, N(e.selfController?.voiceState.value.error ? `Error: ${e.selfController.voiceState.value.error}` : e.selfController?.voiceState.value.transcript || "Ready to start a call..."), 1)
5075
5074
  ])
5076
5075
  ]),
5077
- l("div", As, [
5078
- B(mt, {
5076
+ l("div", Is, [
5077
+ D(mt, {
5079
5078
  theme: o.value,
5080
5079
  icon: t.value,
5081
5080
  size: "lg",
5082
5081
  loading: i.value,
5083
5082
  disabled: a.value,
5084
- onClick: f
5083
+ onClick: h
5085
5084
  }, {
5086
5085
  default: ee(() => [
5087
5086
  He(N(n.value), 1)
@@ -5091,28 +5090,28 @@ const Z = /* @__PURE__ */ s((e) => {
5091
5090
  ])
5092
5091
  ]));
5093
5092
  }
5094
- }), zs = {
5093
+ }), $s = {
5095
5094
  key: 0,
5096
5095
  class: "absolute inset-0 flex items-center justify-center bg-gradient-to-br from-theme-800 to-theme-950 rounded-3xl z-10"
5097
- }, $s = { class: "text-sm" }, Es = {
5096
+ }, Es = { class: "text-sm" }, Ls = {
5098
5097
  key: 0,
5099
5098
  class: "flex-1 basis-0 flex justify-end"
5100
- }, Ls = {
5099
+ }, Ts = {
5101
5100
  key: 0,
5102
5101
  class: "h-full pb-12 flex-1 flex flex-col relative z-20 min-h-0 px-4 @[480px]/agent:px-6 max-w-md mx-auto w-full"
5103
- }, Ts = { class: "flex-1 basis-0 flex flex-col justify-start pt-6" }, Ps = {
5102
+ }, Ps = { class: "flex-1 basis-0 flex flex-col justify-start pt-6" }, Fs = {
5104
5103
  key: 1,
5105
5104
  class: "flex-1 flex flex-col relative z-20 min-h-0 w-full"
5106
- }, Fs = { class: "px-4 pt-4 pb-4 max-w-md mx-auto" }, Vs = {
5105
+ }, Vs = { class: "px-4 pt-4 pb-4 max-w-md mx-auto" }, Bs = {
5107
5106
  key: 2,
5108
5107
  class: "flex-1 flex flex-col relative z-20 min-h-0 w-full px-4 @[480px]/agent:px-6"
5109
- }, Ds = { class: "flex-1 min-h-0 max-w-md mx-auto w-full" }, Bs = {
5108
+ }, Ds = { class: "flex-1 min-h-0 max-w-md mx-auto w-full" }, js = {
5110
5109
  key: 2,
5111
5110
  class: "bg-gradient-to-br from-theme-800 to-theme-950 text-white flex items-center justify-center h-full p-8"
5112
- }, js = { class: "text-center max-w-md space-y-4" }, Rs = { class: "text-sm text-white/70 leading-relaxed" }, Ns = {
5111
+ }, Rs = { class: "text-center max-w-md space-y-4" }, Ns = { class: "text-sm text-white/70 leading-relaxed" }, Gs = {
5113
5112
  key: 3,
5114
5113
  class: "bg-white/10 backdrop-blur-sm text-white/70 flex items-center justify-center h-full"
5115
- }, Jt = /* @__PURE__ */ j({
5114
+ }, Yt = /* @__PURE__ */ j({
5116
5115
  __name: "SelfAgent",
5117
5116
  props: {
5118
5117
  sdk: {},
@@ -5126,7 +5125,7 @@ const Z = /* @__PURE__ */ s((e) => {
5126
5125
  },
5127
5126
  emits: ["close", "error"],
5128
5127
  setup(e, { emit: r }) {
5129
- const o = r, t = uo(), n = P(!1), a = P(!1), i = P(), f = P(), h = F(() => t.value?.agentMode?.value ?? "self"), C = F(() => e.sdk.activeUser.value !== void 0), u = F(() => Bt.find((g) => g.mode === h.value));
5128
+ const o = r, t = co(), n = P(!1), a = P(!1), i = P(), h = P(), f = F(() => t.value?.agentMode?.value ?? "self"), C = F(() => e.sdk.activeUser.value !== void 0), u = F(() => Bt.find((g) => g.mode === f.value));
5130
5129
  function c() {
5131
5130
  t.value && t.value.destroy();
5132
5131
  try {
@@ -5136,54 +5135,54 @@ const Z = /* @__PURE__ */ s((e) => {
5136
5135
  context: e.context,
5137
5136
  firstMessage: e.firstMessage
5138
5137
  });
5139
- } catch (y) {
5140
- throw console.error("SelfController creation failed:", y), y;
5138
+ } catch (p) {
5139
+ throw console.error("SelfController creation failed:", p), p;
5141
5140
  }
5142
5141
  }
5143
5142
  s(c, "createSelfController");
5144
- function m(y) {
5145
- if (!f.value)
5143
+ function m(p) {
5144
+ if (!h.value)
5146
5145
  return;
5147
- const g = Co(y);
5146
+ const g = Co(p);
5148
5147
  Object.entries(g).forEach(([T, H]) => {
5149
- f.value.style.setProperty(`--primary-${T}`, H);
5148
+ h.value.style.setProperty(`--primary-${T}`, H);
5150
5149
  });
5151
5150
  }
5152
5151
  return s(m, "applyTheme"), Ie(() => {
5153
5152
  try {
5154
5153
  c(), m(e.theme);
5155
- } catch (y) {
5156
- const g = y instanceof Error ? y.message : "Failed to initialize digital self";
5154
+ } catch (p) {
5155
+ const g = p instanceof Error ? p.message : "Failed to initialize digital self";
5157
5156
  i.value = g, o("error", g);
5158
5157
  }
5159
5158
  }), ft(() => {
5160
5159
  t.value && t.value.destroy();
5161
- }), se(() => e.theme, (y) => {
5162
- m(y);
5163
- }), se(() => e.sdk.activeUser.value, (y, g) => {
5164
- g && !y && t.value && t.value.setMode("self");
5165
- }), (y, g) => (d(), b("div", {
5160
+ }), se(() => e.theme, (p) => {
5161
+ m(p);
5162
+ }), se(() => e.sdk.activeUser.value, (p, g) => {
5163
+ g && !p && t.value && t.value.setMode("self");
5164
+ }), (p, g) => (d(), b("div", {
5166
5165
  ref_key: "rootElement",
5167
- ref: f,
5166
+ ref: h,
5168
5167
  key: Y(tt)(e.self),
5169
5168
  class: "@container/agent self-agent w-full h-full overflow-hidden relative",
5170
5169
  "data-test": "self-agent"
5171
5170
  }, [
5172
- e.loading ? (d(), b("div", zs, [
5173
- B(gt, { class: "text-white size-8" })
5171
+ e.loading ? (d(), b("div", $s, [
5172
+ D(gt, { class: "text-white size-8" })
5174
5173
  ])) : e.self && !i.value ? (d(), b("div", {
5175
5174
  key: 1,
5176
5175
  class: "absolute inset-0 bg-cover bg-center bg-no-repeat",
5177
5176
  style: st({ backgroundImage: `url(${Y(tt)(e.self) || Y(qe)()})` })
5178
5177
  }, [
5179
5178
  l("div", {
5180
- class: z(["absolute inset-0 bg-gradient-to-br z-0", h.value === "self" ? "from-black/70 via-black/50 to-black/80" : "from-black/90 via-black/90 to-black/100"])
5179
+ class: z(["absolute inset-0 bg-gradient-to-br z-0", f.value === "self" ? "from-black/70 via-black/50 to-black/80" : "from-black/90 via-black/90 to-black/100"])
5181
5180
  }, null, 2),
5182
5181
  l("div", {
5183
5182
  class: z(["relative z-10 flex flex-col h-full transition-all duration-500 ease-[cubic-bezier(0.25,1,0.33,1)] will-change-transform", e.isActive ? "opacity-100 translate-y-0" : "opacity-0 translate-y-2"])
5184
5183
  }, [
5185
5184
  l("div", {
5186
- class: z(["relative z-30 p-2", h.value !== "self" ? "backdrop-blur-lg" : ""])
5185
+ class: z(["relative z-30 p-2", f.value !== "self" ? "backdrop-blur-lg" : ""])
5187
5186
  }, [
5188
5187
  l("div", {
5189
5188
  class: z(["flex items-center", e.hasClose ? "" : "justify-between"])
@@ -5205,10 +5204,10 @@ const Z = /* @__PURE__ */ s((e) => {
5205
5204
  l("i", {
5206
5205
  class: z([u.value?.icon, "size-4 opacity-60"])
5207
5206
  }, null, 2),
5208
- l("span", $s, N(u.value?.label), 1),
5207
+ l("span", Es, N(u.value?.label), 1),
5209
5208
  g[7] || (g[7] = l("i", { class: "i-tabler-chevron-down size-4" }, null, -1))
5210
5209
  ], 2),
5211
- e.hasClose ? (d(), b("div", Es, [
5210
+ e.hasClose ? (d(), b("div", Ls, [
5212
5211
  l("button", {
5213
5212
  class: "cursor-pointer flex items-center p-3 rounded-2xl text-white/70 hover:bg-white/10 transition-colors",
5214
5213
  onClick: g[2] || (g[2] = et((T) => o("close", "button"), ["stop"]))
@@ -5218,11 +5217,11 @@ const Z = /* @__PURE__ */ s((e) => {
5218
5217
  ])) : E("", !0)
5219
5218
  ], 2)
5220
5219
  ], 2),
5221
- h.value === "self" ? (d(), b("div", Ls, [
5220
+ f.value === "self" ? (d(), b("div", Ts, [
5222
5221
  g[9] || (g[9] = l("div", { class: "flex-1 basis-0 mb-36" }, null, -1)),
5223
- B(ts, { self: e.self }, null, 8, ["self"]),
5224
- l("div", Ts, [
5225
- B(mt, {
5222
+ D(os, { self: e.self }, null, 8, ["self"]),
5223
+ l("div", Ps, [
5224
+ D(mt, {
5226
5225
  theme: "primary",
5227
5226
  size: "lg",
5228
5227
  class: "w-full",
@@ -5236,37 +5235,37 @@ const Z = /* @__PURE__ */ s((e) => {
5236
5235
  _: 1
5237
5236
  })
5238
5237
  ])
5239
- ])) : h.value === "talk" ? (d(), b("div", Ps, [
5238
+ ])) : f.value === "talk" ? (d(), b("div", Fs, [
5240
5239
  C.value ? (d(), b(Ae, { key: 1 }, [
5241
5240
  l("div", null, [
5242
- l("div", Fs, [
5243
- B(Oo, { self: e.self }, null, 8, ["self"])
5241
+ l("div", Vs, [
5242
+ D(Uo, { self: e.self }, null, 8, ["self"])
5244
5243
  ])
5245
5244
  ]),
5246
- B(Is, { "self-controller": t.value }, null, 8, ["self-controller"])
5247
- ], 64)) : (d(), _(zt, {
5245
+ D(zs, { "self-controller": t.value }, null, 8, ["self-controller"])
5246
+ ], 64)) : (d(), _(It, {
5248
5247
  key: 0,
5249
5248
  sdk: e.sdk
5250
5249
  }, null, 8, ["sdk"]))
5251
- ])) : (d(), b("div", Vs, [
5250
+ ])) : (d(), b("div", Bs, [
5252
5251
  l("div", Ds, [
5253
- h.value === "chat" ? (d(), b(Ae, { key: 0 }, [
5254
- C.value ? (d(), _(Kr, {
5252
+ f.value === "chat" ? (d(), b(Ae, { key: 0 }, [
5253
+ C.value ? (d(), _(Zr, {
5255
5254
  key: 1,
5256
5255
  "self-controller": t.value,
5257
5256
  self: e.self
5258
- }, null, 8, ["self-controller", "self"])) : (d(), _(zt, {
5257
+ }, null, 8, ["self-controller", "self"])) : (d(), _(It, {
5259
5258
  key: 0,
5260
5259
  sdk: e.sdk
5261
5260
  }, null, 8, ["sdk"]))
5262
- ], 64)) : h.value === "info" ? (d(), _(Vr, {
5261
+ ], 64)) : f.value === "info" ? (d(), _(Br, {
5263
5262
  key: 1,
5264
5263
  self: e.self
5265
5264
  }, null, 8, ["self"])) : E("", !0)
5266
5265
  ])
5267
5266
  ])),
5268
5267
  l("div", {
5269
- class: z(["relative z-20 text-center py-5 px-6", h.value === "info" ? "hidden" : ""])
5268
+ class: z(["relative z-20 text-center py-5 px-6", f.value === "info" ? "hidden" : ""])
5270
5269
  }, [...g[10] || (g[10] = [
5271
5270
  l("a", {
5272
5271
  href: "https://www.fiction.com",
@@ -5278,189 +5277,41 @@ const Z = /* @__PURE__ */ s((e) => {
5278
5277
  ], -1)
5279
5278
  ])], 2)
5280
5279
  ], 2)
5281
- ], 4)) : i.value ? (d(), b("div", Bs, [
5282
- l("div", js, [
5280
+ ], 4)) : i.value ? (d(), b("div", js, [
5281
+ l("div", Rs, [
5283
5282
  g[11] || (g[11] = l("div", { class: "flex justify-center" }, [
5284
5283
  l("div", { class: "rounded-full bg-red-500/20 flex items-center justify-center size-10" }, [
5285
5284
  l("i", { class: "i-tabler-alert-circle size-6 text-red-400" })
5286
5285
  ])
5287
5286
  ], -1)),
5288
5287
  g[12] || (g[12] = l("h3", { class: "text-lg font-medium" }, " Self Error ", -1)),
5289
- l("p", Rs, N(i.value), 1)
5288
+ l("p", Ns, N(i.value), 1)
5290
5289
  ])
5291
- ])) : (d(), b("div", Ns, " There was an error loading the digital self. Please try again later. ")),
5292
- B(hs, {
5290
+ ])) : (d(), b("div", Gs, " There was an error loading the digital self. Please try again later. ")),
5291
+ D(fs, {
5293
5292
  modelValue: n.value,
5294
5293
  "onUpdate:modelValue": g[4] || (g[4] = (T) => n.value = T),
5295
5294
  self: e.self,
5296
5295
  sdk: e.sdk,
5297
5296
  title: e.self.name
5298
5297
  }, null, 8, ["modelValue", "self", "sdk", "title"]),
5299
- B(us, {
5298
+ D(hs, {
5300
5299
  modelValue: a.value,
5301
5300
  "onUpdate:modelValue": g[5] || (g[5] = (T) => a.value = T),
5302
5301
  "self-controller": t.value
5303
5302
  }, null, 8, ["modelValue", "self-controller"])
5304
5303
  ]));
5305
5304
  }
5306
- }), Gs = { class: "self-wrap" }, Os = {
5307
- key: 0,
5308
- class: "flex items-center justify-center h-full"
5309
- }, Us = {
5310
- key: 2,
5311
- class: "flex items-center justify-center h-full text-theme-500 text-xs"
5312
- }, Hs = { class: "flex flex-col items-center gap-2" }, Qt = /* @__PURE__ */ j({
5313
- __name: "SelfWrap",
5314
- props: {
5315
- sdk: {},
5316
- self: {},
5317
- handle: {},
5318
- context: {},
5319
- firstMessage: {},
5320
- hasClose: { type: Boolean }
5321
- },
5322
- setup(e) {
5323
- const r = e, o = P(!r.self), t = P(r.self), n = P();
5324
- return Ie(async () => {
5325
- if (r.self) {
5326
- o.value = !1;
5327
- return;
5328
- }
5329
- if (!r.handle) {
5330
- n.value = "No handle or self provided", o.value = !1;
5331
- return;
5332
- }
5333
- try {
5334
- o.value = !0;
5335
- const a = await r.sdk.getPublicSelf({ handle: r.handle });
5336
- a ? t.value = a : (n.value = r.sdk.error.value || "Self not found", console.error("Failed to fetch digital self:", r.sdk.error.value));
5337
- } catch (a) {
5338
- n.value = a instanceof Error ? a.message : "Failed to fetch self", console.error("Error fetching digital self:", a);
5339
- } finally {
5340
- o.value = !1;
5341
- }
5342
- }), (a, i) => (d(), b("div", Gs, [
5343
- o.value ? (d(), b("div", Os, [...i[0] || (i[0] = [
5344
- l("div", { class: "animate-spin rounded-full size-6 border-b-2 border-white" }, null, -1)
5345
- ])])) : t.value ? Ce(a.$slots, "default", {
5346
- key: 1,
5347
- self: t.value,
5348
- context: e.context,
5349
- firstMessage: e.firstMessage,
5350
- loading: o.value
5351
- }) : n.value ? (d(), b("div", Us, [
5352
- l("div", Hs, [
5353
- i[1] || (i[1] = l("div", null, [
5354
- l("div", { class: "i-tabler-user-off size-8" })
5355
- ], -1)),
5356
- l("div", null, N(n.value), 1)
5357
- ])
5358
- ])) : E("", !0)
5359
- ]));
5360
- }
5361
- }), qs = {
5362
- key: 0,
5363
- class: "relative h-full w-full"
5364
- }, Ws = { class: "group relative h-full w-full rounded-3xl overflow-hidden shadow-lg transition-all duration-300 ease-[cubic-bezier(0.25,1,0.33,1)] hover:shadow-2xl hover:translate-y-[-1px] hover:brightness-110 active:scale-[1.06] active:-translate-y-0.5 active:duration-100" }, Ks = ["src", "alt"], ln = /* @__PURE__ */ j({
5365
- __name: "FictionWidget",
5366
- props: {
5367
- sdk: {},
5368
- handle: {},
5369
- context: {},
5370
- firstMessage: {},
5371
- position: {}
5372
- },
5373
- setup(e, { expose: r }) {
5374
- const o = e, t = P(!1), n = P(!1);
5375
- function a() {
5376
- t.value = !t.value;
5377
- }
5378
- s(a, "toggle"), se(t, async (C) => {
5379
- C ? (await Xe(), setTimeout(() => {
5380
- n.value = !0;
5381
- }, 400)) : n.value = !1;
5382
- });
5383
- function i() {
5384
- t.value = !0;
5385
- }
5386
- s(i, "open");
5387
- function f() {
5388
- t.value = !1;
5389
- }
5390
- s(f, "close");
5391
- function h() {
5392
- f();
5393
- }
5394
- return s(h, "handleClose"), r({
5395
- toggle: a,
5396
- open: i,
5397
- close: f
5398
- }), (C, u) => (d(), _(Qt, {
5399
- sdk: e.sdk,
5400
- handle: e.handle,
5401
- context: e.context,
5402
- "first-message": e.firstMessage
5403
- }, {
5404
- default: ee(({ self: c }) => [
5405
- c ? (d(), b("div", {
5406
- key: 0,
5407
- class: z(["fixed z-[999999] pointer-events-auto", [
5408
- o.position === "bottom-left" ? "bottom-6 left-6" : o.position === "top-right" ? "top-6 right-6" : o.position === "top-left" ? "top-6 left-6" : "bottom-6 right-6"
5409
- ]])
5410
- }, [
5411
- l("div", {
5412
- class: z(["transition-all duration-500 ease-[cubic-bezier(0.25,1,0.33,1)] transform-gpu", [
5413
- t.value ? "widget-expanded w-96 h-[600px] max-w-[calc(100vw-48px)] max-h-[calc(100vh-48px)] rounded-3xl opacity-100 scale-100" : "widget-button w-[80px] h-[80px] opacity-100 scale-100 flex items-center justify-center cursor-pointer"
5414
- ]]),
5415
- style: st({
5416
- "transform-origin": o.position === "bottom-left" ? "bottom left" : o.position === "top-right" ? "top right" : o.position === "top-left" ? "top left" : "bottom right"
5417
- }),
5418
- onClick: u[0] || (u[0] = (m) => t.value ? void 0 : a())
5419
- }, [
5420
- t.value ? E("", !0) : (d(), b("div", qs, [
5421
- l("div", Ws, [
5422
- l("img", {
5423
- src: Y(tt)(c) || Y(qe)(),
5424
- alt: `${c.name} avatar`,
5425
- class: "h-full w-full object-cover pointer-events-none"
5426
- }, null, 8, Ks),
5427
- u[1] || (u[1] = l("div", { class: "absolute inset-0 pointer-events-none bg-gradient-to-br from-transparent via-black/10 to-black/40 opacity-60 transition-opacity duration-300 group-hover:opacity-40" }, null, -1))
5428
- ]),
5429
- u[2] || (u[2] = l("div", { class: "absolute top-0.5 right-0.5" }, [
5430
- l("div", {
5431
- class: "size-3 bg-green-500 rounded-full ring-2 ring-white absolute animate-ping",
5432
- style: { "animation-duration": "3s" }
5433
- }),
5434
- l("div", { class: "size-3 bg-green-500 rounded-full ring-2 ring-white" })
5435
- ], -1))
5436
- ])),
5437
- t.value && c ? (d(), _(Jt, {
5438
- key: 1,
5439
- class: "rounded-3xl shadow-2xl border border-white/10",
5440
- sdk: e.sdk,
5441
- self: c,
5442
- context: e.context,
5443
- "first-message": e.firstMessage,
5444
- "has-close": !0,
5445
- "is-active": n.value,
5446
- onClose: h
5447
- }, null, 8, ["sdk", "self", "context", "first-message", "is-active"])) : E("", !0)
5448
- ], 6)
5449
- ], 2)) : E("", !0)
5450
- ]),
5451
- _: 1
5452
- }, 8, ["sdk", "handle", "context", "first-message"]));
5453
- }
5454
- }), Zs = { class: "flex min-h-full items-center justify-center text-center p-4 py-8" }, Ys = {
5305
+ }), Os = { class: "flex min-h-full items-center justify-center text-center p-4 py-8" }, Us = {
5455
5306
  key: 0,
5456
5307
  class: "text-base p-4 font-semibold"
5457
- }, Js = {
5308
+ }, Hs = {
5458
5309
  key: 1,
5459
5310
  class: "flex items-center gap-2 px-2"
5460
- }, Qs = {
5311
+ }, qs = {
5461
5312
  inheritAttrs: !1
5462
- }, Xs = /* @__PURE__ */ j({
5463
- ...Qs,
5313
+ }, Ws = /* @__PURE__ */ j({
5314
+ ...qs,
5464
5315
  name: "FModal",
5465
5316
  __name: "FModal",
5466
5317
  props: {
@@ -5483,7 +5334,7 @@ const Z = /* @__PURE__ */ s((e) => {
5483
5334
  s(n, "close");
5484
5335
  const a = e.modalClass ? [e.modalClass] : ["max-w-screen-md p-24"], i = e.styleClass ? [e.styleClass] : ["bg-theme-0 text-theme-900", "shadow-xl"];
5485
5336
  e.fullScreen ? a.push("fixed inset-0") : a.push("rounded-xl my-6 mx-3");
5486
- const f = [
5337
+ const h = [
5487
5338
  "relative",
5488
5339
  "text-left",
5489
5340
  "transform",
@@ -5491,13 +5342,13 @@ const Z = /* @__PURE__ */ s((e) => {
5491
5342
  "w-full",
5492
5343
  ...a,
5493
5344
  ...i
5494
- ], h = P(!1), C = [];
5345
+ ], f = P(!1), C = [];
5495
5346
  Ie(async () => {
5496
5347
  t.value = !0;
5497
5348
  const c = se(
5498
5349
  () => e.vis,
5499
5350
  (m) => {
5500
- m ? setTimeout(() => h.value = !0, 300) : h.value = !1;
5351
+ m ? setTimeout(() => f.value = !0, 300) : f.value = !1;
5501
5352
  },
5502
5353
  { immediate: !0 }
5503
5354
  );
@@ -5520,7 +5371,7 @@ const Z = /* @__PURE__ */ s((e) => {
5520
5371
  leaveFromClass: "opacity-100 translate-y-0 scale-100",
5521
5372
  leaveToClass: "opacity-0 scale-75"
5522
5373
  });
5523
- return (c, m) => t.value ? (d(), _(ho, {
5374
+ return (c, m) => t.value ? (d(), _(uo, {
5524
5375
  key: 0,
5525
5376
  to: e.teleportTo
5526
5377
  }, [
@@ -5530,7 +5381,7 @@ const Z = /* @__PURE__ */ s((e) => {
5530
5381
  role: "dialog",
5531
5382
  "aria-modal": "true"
5532
5383
  }, [
5533
- B(_e, {
5384
+ D(_e, {
5534
5385
  "enter-active-class": "ease-out duration-300",
5535
5386
  "enter-from-class": "opacity-0",
5536
5387
  "enter-to-class": "opacity-100",
@@ -5542,21 +5393,21 @@ const Z = /* @__PURE__ */ s((e) => {
5542
5393
  e.vis ? (d(), b("div", {
5543
5394
  key: 0,
5544
5395
  class: "fixed inset-0 bg-theme-800/60 active:bg-theme-800/80 cursor-pointer dark:bg-theme-600/90 backdrop-blur-sm transition-opacity",
5545
- onClick: m[0] || (m[0] = (y) => n({ reason: "escape" }))
5396
+ onClick: m[0] || (m[0] = (p) => n({ reason: "escape" }))
5546
5397
  })) : E("", !0)
5547
5398
  ]),
5548
5399
  _: 1
5549
5400
  }),
5550
5401
  l("div", {
5551
5402
  class: "fixed inset-0 z-40 overflow-y-auto",
5552
- onClick: m[3] || (m[3] = (y) => n({ reason: "escape" }))
5403
+ onClick: m[3] || (m[3] = (p) => n({ reason: "escape" }))
5553
5404
  }, [
5554
- l("div", Zs, [
5555
- B(_e, fo(go(u.value)), {
5405
+ l("div", Os, [
5406
+ D(_e, ho(fo(u.value)), {
5556
5407
  default: ee(() => [
5557
5408
  e.vis ? (d(), b("div", {
5558
5409
  key: 0,
5559
- class: z([f, "overflow-visible w-full"]),
5410
+ class: z([h, "overflow-visible w-full"]),
5560
5411
  onClick: m[2] || (m[2] = et(() => {
5561
5412
  }, ["stop"]))
5562
5413
  }, [
@@ -5564,14 +5415,14 @@ const Z = /* @__PURE__ */ s((e) => {
5564
5415
  key: 0,
5565
5416
  class: z(!e.title && (e.hasClose || c.$slots.actions) ? "absolute top-0 right-0 z-10" : "flex justify-between items-center")
5566
5417
  }, [
5567
- e.title ? (d(), b("h2", Ys, N(e.title), 1)) : E("", !0),
5568
- e.hasClose || c.$slots.actions ? (d(), b("div", Js, [
5418
+ e.title ? (d(), b("h2", Us, N(e.title), 1)) : E("", !0),
5419
+ e.hasClose || c.$slots.actions ? (d(), b("div", Hs, [
5569
5420
  Ce(c.$slots, "actions"),
5570
- e.hasClose ? (d(), _(Zt, {
5421
+ e.hasClose ? (d(), _(Kt, {
5571
5422
  key: 0,
5572
5423
  class: "relative",
5573
5424
  "data-test-id": "close-modal",
5574
- onClick: m[1] || (m[1] = et((y) => n({ reason: "escape" }), ["stop"]))
5425
+ onClick: m[1] || (m[1] = et((p) => n({ reason: "escape" }), ["stop"]))
5575
5426
  })) : E("", !0)
5576
5427
  ])) : E("", !0)
5577
5428
  ], 2)) : E("", !0),
@@ -5585,7 +5436,67 @@ const Z = /* @__PURE__ */ s((e) => {
5585
5436
  ], 2)
5586
5437
  ], 8, ["to"])) : E("", !0);
5587
5438
  }
5588
- }), _s = /* @__PURE__ */ j({
5439
+ }), Ks = { class: "self-wrap" }, Zs = {
5440
+ key: 0,
5441
+ class: "flex items-center justify-center h-full"
5442
+ }, Ys = {
5443
+ key: 2,
5444
+ class: "flex items-center justify-center h-full text-theme-500 text-xs"
5445
+ }, Js = { class: "flex flex-col items-center gap-2" }, Jt = /* @__PURE__ */ j({
5446
+ __name: "SelfWrap",
5447
+ props: {
5448
+ sdk: {},
5449
+ self: {},
5450
+ handle: {},
5451
+ context: {},
5452
+ firstMessage: {},
5453
+ hasClose: { type: Boolean },
5454
+ apiBase: {}
5455
+ },
5456
+ setup(e) {
5457
+ const r = e, o = r.sdk || new mo({
5458
+ isDev: typeof window < "u" ? window.location.hostname === "localhost" || window.location.hostname.includes("127.0.0.1") : !1,
5459
+ apiBase: r.apiBase
5460
+ }), t = P(!r.self), n = P(r.self), a = P();
5461
+ return Ie(async () => {
5462
+ if (r.self) {
5463
+ t.value = !1;
5464
+ return;
5465
+ }
5466
+ if (!r.handle) {
5467
+ a.value = "No handle or self provided", t.value = !1;
5468
+ return;
5469
+ }
5470
+ try {
5471
+ t.value = !0;
5472
+ const i = await o.getPublicSelf({ handle: r.handle });
5473
+ i ? n.value = i : (a.value = o.error.value || "Self not found", console.error("Failed to fetch digital self:", o.error.value));
5474
+ } catch (i) {
5475
+ a.value = i instanceof Error ? i.message : "Failed to fetch self", console.error("Error fetching digital self:", i);
5476
+ } finally {
5477
+ t.value = !1;
5478
+ }
5479
+ }), (i, h) => (d(), b("div", Ks, [
5480
+ t.value ? (d(), b("div", Zs, [...h[0] || (h[0] = [
5481
+ l("div", { class: "animate-spin rounded-full size-6 border-b-2 border-white" }, null, -1)
5482
+ ])])) : n.value ? Ce(i.$slots, "default", {
5483
+ key: 1,
5484
+ sdk: Y(o),
5485
+ self: n.value,
5486
+ context: e.context,
5487
+ firstMessage: e.firstMessage,
5488
+ loading: t.value
5489
+ }) : a.value ? (d(), b("div", Ys, [
5490
+ l("div", Js, [
5491
+ h[1] || (h[1] = l("div", null, [
5492
+ l("div", { class: "i-tabler-user-off size-8" })
5493
+ ], -1)),
5494
+ l("div", null, N(a.value), 1)
5495
+ ])
5496
+ ])) : E("", !0)
5497
+ ]));
5498
+ }
5499
+ }), Qs = /* @__PURE__ */ j({
5589
5500
  __name: "SelfProvider",
5590
5501
  props: {
5591
5502
  sdk: {},
@@ -5593,22 +5504,27 @@ const Z = /* @__PURE__ */ s((e) => {
5593
5504
  handle: {},
5594
5505
  context: {},
5595
5506
  firstMessage: {},
5596
- hasClose: { type: Boolean }
5507
+ hasClose: { type: Boolean },
5508
+ apiBase: {}
5597
5509
  },
5598
5510
  setup(e) {
5599
5511
  const r = e;
5600
- return (o, t) => (d(), _(Qt, St(r, { class: "self-provider size-full relative" }), {
5512
+ return (o, t) => (d(), _(Jt, go(r, { class: "self-provider size-full relative" }), {
5601
5513
  default: ee((n) => [
5602
- B(Jt, St(r, {
5514
+ D(Yt, {
5515
+ sdk: n.sdk,
5603
5516
  self: n.self,
5517
+ context: n.context,
5518
+ "first-message": n.firstMessage,
5519
+ "has-close": r.hasClose,
5604
5520
  "is-active": !0,
5605
5521
  class: "size-full"
5606
- }), null, 16, ["self"])
5522
+ }, null, 8, ["sdk", "self", "context", "first-message", "has-close"])
5607
5523
  ]),
5608
5524
  _: 1
5609
5525
  }, 16));
5610
5526
  }
5611
- }), en = { class: "relative w-full h-[80vh] md:h-[600px]" }, cn = /* @__PURE__ */ j({
5527
+ }), Xs = { class: "relative w-full h-[80vh] md:h-[600px]" }, cn = /* @__PURE__ */ j({
5612
5528
  name: "SelfModal",
5613
5529
  __name: "SelfModal",
5614
5530
  props: {
@@ -5622,7 +5538,7 @@ const Z = /* @__PURE__ */ s((e) => {
5622
5538
  emits: ["update:vis"],
5623
5539
  setup(e, { emit: r }) {
5624
5540
  const o = r;
5625
- return (t, n) => (d(), _(Xs, {
5541
+ return (t, n) => (d(), _(Ws, {
5626
5542
  vis: e.vis,
5627
5543
  "modal-class": "max-w-4xl p-0",
5628
5544
  "style-class": "bg-transparent shadow-2xl",
@@ -5630,8 +5546,8 @@ const Z = /* @__PURE__ */ s((e) => {
5630
5546
  "onUpdate:vis": n[1] || (n[1] = (a) => o("update:vis", a))
5631
5547
  }, {
5632
5548
  default: ee(() => [
5633
- l("div", en, [
5634
- B(_s, {
5549
+ l("div", Xs, [
5550
+ D(Qs, {
5635
5551
  sdk: e.sdk,
5636
5552
  self: e.self,
5637
5553
  handle: e.handle,
@@ -5645,25 +5561,118 @@ const Z = /* @__PURE__ */ s((e) => {
5645
5561
  _: 1
5646
5562
  }, 8, ["vis"]));
5647
5563
  }
5564
+ }), _s = {
5565
+ key: 0,
5566
+ class: "relative h-full w-full"
5567
+ }, en = { class: "group relative h-full w-full rounded-3xl overflow-hidden shadow-lg transition-all duration-300 ease-[cubic-bezier(0.25,1,0.33,1)] hover:shadow-2xl hover:translate-y-[-1px] hover:brightness-110 active:scale-[1.06] active:-translate-y-0.5 active:duration-100" }, tn = ["src", "alt"], dn = /* @__PURE__ */ j({
5568
+ __name: "SelfWidget",
5569
+ props: {
5570
+ sdk: {},
5571
+ handle: {},
5572
+ context: {},
5573
+ firstMessage: {},
5574
+ position: {}
5575
+ },
5576
+ setup(e, { expose: r }) {
5577
+ const o = e, t = P(!1), n = P(!1);
5578
+ function a() {
5579
+ t.value = !t.value;
5580
+ }
5581
+ s(a, "toggle"), se(t, async (C) => {
5582
+ C ? (await Xe(), setTimeout(() => {
5583
+ n.value = !0;
5584
+ }, 400)) : n.value = !1;
5585
+ });
5586
+ function i() {
5587
+ t.value = !0;
5588
+ }
5589
+ s(i, "open");
5590
+ function h() {
5591
+ t.value = !1;
5592
+ }
5593
+ s(h, "close");
5594
+ function f() {
5595
+ h();
5596
+ }
5597
+ return s(f, "handleClose"), r({
5598
+ toggle: a,
5599
+ open: i,
5600
+ close: h
5601
+ }), (C, u) => (d(), _(Jt, {
5602
+ sdk: e.sdk,
5603
+ handle: e.handle,
5604
+ context: e.context,
5605
+ "first-message": e.firstMessage
5606
+ }, {
5607
+ default: ee(({ self: c, sdk: m }) => [
5608
+ c ? (d(), b("div", {
5609
+ key: 0,
5610
+ class: z(["fixed z-[999999] pointer-events-auto", [
5611
+ o.position === "bottom-left" ? "bottom-6 left-6" : o.position === "top-right" ? "top-6 right-6" : o.position === "top-left" ? "top-6 left-6" : "bottom-6 right-6"
5612
+ ]])
5613
+ }, [
5614
+ l("div", {
5615
+ class: z(["transition-all duration-500 ease-[cubic-bezier(0.25,1,0.33,1)] transform-gpu", [
5616
+ t.value ? "widget-expanded w-96 h-[600px] max-w-[calc(100vw-48px)] max-h-[calc(100vh-48px)] rounded-3xl opacity-100 scale-100" : "widget-button w-[80px] h-[80px] opacity-100 scale-100 flex items-center justify-center cursor-pointer"
5617
+ ]]),
5618
+ style: st({
5619
+ "transform-origin": o.position === "bottom-left" ? "bottom left" : o.position === "top-right" ? "top right" : o.position === "top-left" ? "top left" : "bottom right"
5620
+ }),
5621
+ onClick: u[0] || (u[0] = (p) => t.value ? void 0 : a())
5622
+ }, [
5623
+ t.value ? E("", !0) : (d(), b("div", _s, [
5624
+ l("div", en, [
5625
+ l("img", {
5626
+ src: Y(tt)(c) || Y(qe)(),
5627
+ alt: `${c.name} avatar`,
5628
+ class: "h-full w-full object-cover pointer-events-none"
5629
+ }, null, 8, tn),
5630
+ u[1] || (u[1] = l("div", { class: "absolute inset-0 pointer-events-none bg-gradient-to-br from-transparent via-black/10 to-black/40 opacity-60 transition-opacity duration-300 group-hover:opacity-40" }, null, -1))
5631
+ ]),
5632
+ u[2] || (u[2] = l("div", { class: "absolute top-0.5 right-0.5" }, [
5633
+ l("div", {
5634
+ class: "size-3 bg-green-500 rounded-full ring-2 ring-white absolute animate-ping",
5635
+ style: { "animation-duration": "3s" }
5636
+ }),
5637
+ l("div", { class: "size-3 bg-green-500 rounded-full ring-2 ring-white" })
5638
+ ], -1))
5639
+ ])),
5640
+ t.value && c ? (d(), _(Yt, {
5641
+ key: 1,
5642
+ class: "rounded-3xl shadow-2xl border border-white/10",
5643
+ sdk: m,
5644
+ self: c,
5645
+ context: e.context,
5646
+ "first-message": e.firstMessage,
5647
+ "has-close": !0,
5648
+ "is-active": n.value,
5649
+ onClose: f
5650
+ }, null, 8, ["sdk", "self", "context", "first-message", "is-active"])) : E("", !0)
5651
+ ], 6)
5652
+ ], 2)) : E("", !0)
5653
+ ]),
5654
+ _: 1
5655
+ }, 8, ["sdk", "handle", "context", "first-message"]));
5656
+ }
5648
5657
  });
5649
5658
  export {
5650
5659
  Bt as AGENT_MODES,
5651
- bo as AUDIO_FFT_SIZE,
5652
- po as AUDIO_LEVEL_UPDATE_INTERVAL,
5653
- vo as AUDIO_SMOOTHING,
5660
+ vo as AUDIO_FFT_SIZE,
5661
+ xo as AUDIO_LEVEL_UPDATE_INTERVAL,
5662
+ po as AUDIO_SMOOTHING,
5654
5663
  lt as ClientAudio,
5655
- ln as FictionWidget,
5656
- Jt as SelfAgent,
5664
+ Yt as SelfAgent,
5657
5665
  cn as SelfModal,
5658
- _s as SelfProvider,
5659
- Qt as SelfWrap,
5660
- xo as VISUALIZER_CONFIG,
5666
+ Qs as SelfProvider,
5667
+ dn as SelfWidget,
5668
+ Jt as SelfWrap,
5669
+ yo as VISUALIZER_CONFIG,
5661
5670
  X as VOICE_FREQUENCIES,
5662
- an as generateFirstMessage,
5671
+ ln as generateFirstMessage,
5663
5672
  qe as getFallbackAvatarDataUrl,
5664
5673
  At as getImageSrc,
5665
5674
  tt as getSelfAvatarUrl,
5666
5675
  ot as handleImageError,
5667
- yo as parseVoiceMessage
5676
+ So as parseVoiceMessage
5668
5677
  };
5669
5678
  //# sourceMappingURL=self.js.map