@fiction/sdk 1.0.24 → 1.0.26
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/api.d.ts +1 -0
- package/dist/api.d.ts.map +1 -0
- package/dist/demo/index.d.ts +1 -0
- package/dist/demo/index.d.ts.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/sdk.css +1 -1
- package/dist/sdk.css.d.ts +5 -0
- package/dist/sdk.js +1 -1
- package/dist/{sdkClient-C9BL_Op4.js → sdkClient-D6iGykUc.js} +3 -2
- package/dist/{sdkClient-C9BL_Op4.js.map → sdkClient-D6iGykUc.js.map} +1 -1
- package/dist/sdkClient.d.ts +1 -0
- package/dist/sdkClient.d.ts.map +1 -0
- package/dist/sdkStorage.d.ts +1 -0
- package/dist/sdkStorage.d.ts.map +1 -0
- package/dist/self/ClientAudio.d.ts +1 -0
- package/dist/self/ClientAudio.d.ts.map +1 -0
- package/dist/self/SelfController.d.ts +1 -0
- package/dist/self/SelfController.d.ts.map +1 -0
- package/dist/self/constants.d.ts +1 -0
- package/dist/self/constants.d.ts.map +1 -0
- package/dist/self/index.d.ts +7 -5
- package/dist/self/index.d.ts.map +1 -0
- package/dist/self/schema.d.ts +1 -0
- package/dist/self/schema.d.ts.map +1 -0
- package/dist/self/ui/ElAudioVisualizer.vue.d.ts +1 -0
- package/dist/self/ui/ElAudioVisualizer.vue.d.ts.map +1 -0
- package/dist/self/ui/ElAuthGate.vue.d.ts +1 -0
- package/dist/self/ui/ElAuthGate.vue.d.ts.map +1 -0
- package/dist/self/ui/ElModeHeader.vue.d.ts +1 -0
- package/dist/self/ui/ElModeHeader.vue.d.ts.map +1 -0
- package/dist/self/ui/ElSelfAbout.vue.d.ts +1 -0
- package/dist/self/ui/ElSelfAbout.vue.d.ts.map +1 -0
- package/dist/self/ui/ElSelfButton.vue.d.ts +1 -0
- package/dist/self/ui/ElSelfButton.vue.d.ts.map +1 -0
- package/dist/self/ui/ElSelfChat.vue.d.ts +1 -0
- package/dist/self/ui/ElSelfChat.vue.d.ts.map +1 -0
- package/dist/self/ui/ElSelfHeader.vue.d.ts +1 -0
- package/dist/self/ui/ElSelfHeader.vue.d.ts.map +1 -0
- package/dist/self/ui/ElSelfModeSidebar.vue.d.ts +1 -0
- package/dist/self/ui/ElSelfModeSidebar.vue.d.ts.map +1 -0
- package/dist/self/ui/ElSelfSidebar.vue.d.ts +1 -0
- package/dist/self/ui/ElSelfSidebar.vue.d.ts.map +1 -0
- package/dist/self/ui/ElSelfVoice.vue.d.ts +1 -0
- package/dist/self/ui/ElSelfVoice.vue.d.ts.map +1 -0
- package/dist/self/ui/ElSidebar.vue.d.ts +1 -0
- package/dist/self/ui/ElSidebar.vue.d.ts.map +1 -0
- package/dist/self/ui/SelfAgent.vue.d.ts +1 -0
- package/dist/self/ui/SelfAgent.vue.d.ts.map +1 -0
- package/dist/self/ui/SelfInputEmail.vue.d.ts +1 -0
- package/dist/self/ui/SelfInputEmail.vue.d.ts.map +1 -0
- package/dist/self/ui/SelfInputOneTimeCode.vue.d.ts +1 -0
- package/dist/self/ui/SelfInputOneTimeCode.vue.d.ts.map +1 -0
- package/dist/self/ui/SelfModal.vue.d.ts +1 -0
- package/dist/self/ui/SelfModal.vue.d.ts.map +1 -0
- package/dist/self/ui/SelfProvider.vue.d.ts +8 -1
- package/dist/self/ui/SelfProvider.vue.d.ts.map +1 -0
- package/dist/self/ui/SelfWidget.vue.d.ts +1 -0
- package/dist/self/ui/SelfWidget.vue.d.ts.map +1 -0
- package/dist/self/ui/SelfWrap.vue.d.ts +1 -0
- package/dist/self/ui/SelfWrap.vue.d.ts.map +1 -0
- package/dist/self/utils.d.ts +1 -0
- package/dist/self/utils.d.ts.map +1 -0
- package/dist/self.js +792 -736
- package/dist/self.js.map +1 -1
- package/dist/test/api.test.d.ts +2 -0
- package/dist/test/api.test.d.ts.map +1 -0
- package/dist/test/build.test.d.ts +2 -0
- package/dist/test/build.test.d.ts.map +1 -0
- package/dist/types/SDKAppType.stub.d.ts +7 -0
- package/dist/types/SDKAppType.stub.d.ts.map +1 -0
- package/dist/vite.config.sdk.d.ts +3 -0
- package/dist/vite.config.sdk.d.ts.map +1 -0
- package/dist/vitest.config.d.ts +3 -0
- package/dist/vitest.config.d.ts.map +1 -0
- package/package.json +8 -8
- package/dist/modules/self/schema.ts +0 -6
- package/dist/modules/user/schema.ts +0 -30
- package/dist/types/media.ts +0 -30
package/dist/self.js
CHANGED
|
@@ -1,12 +1,194 @@
|
|
|
1
1
|
var Ct = Object.defineProperty;
|
|
2
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
|
|
5
|
-
import {
|
|
6
|
-
import { S as Vt, F as mo } from "./sdkClient-C9BL_Op4.js";
|
|
4
|
+
var D = (e, r, o) => ao(e, typeof r != "symbol" ? r + "" : r, o);
|
|
5
|
+
import { defineComponent as j, createElementBlock as b, openBlock as u, createElementVNode as l, normalizeClass as z, ref as P, watch as se, createBlock as _, TransitionGroup as Tt, withCtx as ee, renderSlot as Ce, computed as B, createCommentVNode as E, onMounted as Ie, Fragment as Ae, renderList as rt, withDirectives as Pt, vModelText as Bt, toDisplayString as U, createVNode as V, withKeys as io, createTextVNode as We, 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";
|
|
7
6
|
import { Conversation as St } from "@elevenlabs/client";
|
|
8
|
-
import { objectId as
|
|
9
|
-
|
|
7
|
+
import { objectId as mo } from "@fiction/utils";
|
|
8
|
+
import { S as Ft, c as bo, F as vo } from "./sdkClient-D6iGykUc.js";
|
|
9
|
+
const po = { class: "spinner max-w-sm" }, xo = {
|
|
10
|
+
class: "ring-circular h-full w-full origin-center",
|
|
11
|
+
viewBox: "25 25 50 50"
|
|
12
|
+
}, gt = /* @__PURE__ */ j({
|
|
13
|
+
__name: "FSpinner",
|
|
14
|
+
props: {
|
|
15
|
+
width: { type: String, default: "" },
|
|
16
|
+
colorMode: { type: String, default: "primary" }
|
|
17
|
+
},
|
|
18
|
+
setup(e) {
|
|
19
|
+
return (r, o) => (u(), b("div", po, [
|
|
20
|
+
(u(), b("svg", xo, [
|
|
21
|
+
l("circle", {
|
|
22
|
+
class: z([e.colorMode, "ring-path"]),
|
|
23
|
+
cx: "50",
|
|
24
|
+
cy: "50",
|
|
25
|
+
r: "20",
|
|
26
|
+
fill: "none",
|
|
27
|
+
stroke: "currentColor",
|
|
28
|
+
"stroke-width": "5",
|
|
29
|
+
"stroke-miterlimit": "30"
|
|
30
|
+
}, null, 2)
|
|
31
|
+
]))
|
|
32
|
+
]));
|
|
33
|
+
}
|
|
34
|
+
}), Mt = {
|
|
35
|
+
green: {
|
|
36
|
+
50: "oklch(98.2% 0.018 155.826)",
|
|
37
|
+
100: "oklch(96.2% 0.044 156.743)",
|
|
38
|
+
200: "oklch(92.5% 0.084 155.995)",
|
|
39
|
+
300: "oklch(87.1% 0.15 154.449)",
|
|
40
|
+
400: "oklch(79.2% 0.209 151.711)",
|
|
41
|
+
500: "oklch(72.3% 0.219 149.579)",
|
|
42
|
+
600: "oklch(62.7% 0.194 149.214)",
|
|
43
|
+
700: "oklch(52.7% 0.154 150.069)",
|
|
44
|
+
800: "oklch(44.8% 0.119 151.328)",
|
|
45
|
+
900: "oklch(39.3% 0.095 152.535)",
|
|
46
|
+
950: "oklch(26.6% 0.065 152.934)"
|
|
47
|
+
},
|
|
48
|
+
blue: {
|
|
49
|
+
50: "oklch(97% 0.014 254.604)",
|
|
50
|
+
100: "oklch(93.2% 0.032 255.585)",
|
|
51
|
+
200: "oklch(88.2% 0.059 254.128)",
|
|
52
|
+
300: "oklch(80.9% 0.105 251.813)",
|
|
53
|
+
400: "oklch(70.7% 0.165 254.624)",
|
|
54
|
+
500: "oklch(62.3% 0.214 259.815)",
|
|
55
|
+
600: "oklch(54.6% 0.245 262.881)",
|
|
56
|
+
700: "oklch(48.8% 0.243 264.376)",
|
|
57
|
+
800: "oklch(42.4% 0.199 265.638)",
|
|
58
|
+
900: "oklch(37.9% 0.146 265.522)",
|
|
59
|
+
950: "oklch(28.2% 0.091 267.935)"
|
|
60
|
+
},
|
|
61
|
+
rose: {
|
|
62
|
+
50: "oklch(96.9% 0.015 12.422)",
|
|
63
|
+
100: "oklch(94.1% 0.03 12.58)",
|
|
64
|
+
200: "oklch(89.2% 0.058 10.001)",
|
|
65
|
+
300: "oklch(81% 0.117 11.638)",
|
|
66
|
+
400: "oklch(71.2% 0.194 13.428)",
|
|
67
|
+
500: "oklch(64.5% 0.246 16.439)",
|
|
68
|
+
600: "oklch(58.6% 0.253 17.585)",
|
|
69
|
+
700: "oklch(51.4% 0.222 16.935)",
|
|
70
|
+
800: "oklch(45.5% 0.188 13.697)",
|
|
71
|
+
900: "oklch(41% 0.159 10.272)",
|
|
72
|
+
950: "oklch(27.1% 0.105 12.094)"
|
|
73
|
+
},
|
|
74
|
+
cyan: {
|
|
75
|
+
50: "oklch(98.4% 0.019 200.873)",
|
|
76
|
+
100: "oklch(95.6% 0.045 203.388)",
|
|
77
|
+
200: "oklch(91.7% 0.08 205.041)",
|
|
78
|
+
300: "oklch(86.5% 0.127 207.078)",
|
|
79
|
+
400: "oklch(78.9% 0.154 211.53)",
|
|
80
|
+
500: "oklch(71.5% 0.143 215.221)",
|
|
81
|
+
600: "oklch(60.9% 0.126 221.723)",
|
|
82
|
+
700: "oklch(52% 0.105 223.128)",
|
|
83
|
+
800: "oklch(45% 0.085 224.283)",
|
|
84
|
+
900: "oklch(39.8% 0.07 227.392)",
|
|
85
|
+
950: "oklch(30.2% 0.056 229.695)"
|
|
86
|
+
},
|
|
87
|
+
purple: {
|
|
88
|
+
50: "oklch(97.7% 0.014 308.299)",
|
|
89
|
+
100: "oklch(94.6% 0.033 307.174)",
|
|
90
|
+
200: "oklch(90.2% 0.063 306.703)",
|
|
91
|
+
300: "oklch(82.7% 0.119 306.383)",
|
|
92
|
+
400: "oklch(71.4% 0.203 305.504)",
|
|
93
|
+
500: "oklch(62.7% 0.265 303.9)",
|
|
94
|
+
600: "oklch(55.8% 0.288 302.321)",
|
|
95
|
+
700: "oklch(49.6% 0.265 301.924)",
|
|
96
|
+
800: "oklch(43.8% 0.218 303.724)",
|
|
97
|
+
900: "oklch(38.1% 0.176 304.987)",
|
|
98
|
+
950: "oklch(29.1% 0.149 302.717)"
|
|
99
|
+
},
|
|
100
|
+
amber: {
|
|
101
|
+
50: "oklch(98.7% 0.022 95.277)",
|
|
102
|
+
100: "oklch(96.2% 0.059 95.617)",
|
|
103
|
+
200: "oklch(92.4% 0.12 95.746)",
|
|
104
|
+
300: "oklch(87.9% 0.169 91.605)",
|
|
105
|
+
400: "oklch(82.8% 0.189 84.429)",
|
|
106
|
+
500: "oklch(76.9% 0.188 70.08)",
|
|
107
|
+
600: "oklch(66.6% 0.179 58.318)",
|
|
108
|
+
700: "oklch(55.5% 0.163 48.998)",
|
|
109
|
+
800: "oklch(47.3% 0.137 46.201)",
|
|
110
|
+
900: "oklch(41.4% 0.112 45.904)",
|
|
111
|
+
950: "oklch(27.9% 0.077 45.635)"
|
|
112
|
+
},
|
|
113
|
+
indigo: {
|
|
114
|
+
50: "oklch(96.2% 0.018 272.314)",
|
|
115
|
+
100: "oklch(93% 0.034 272.788)",
|
|
116
|
+
200: "oklch(87% 0.065 274.039)",
|
|
117
|
+
300: "oklch(78.5% 0.115 274.713)",
|
|
118
|
+
400: "oklch(67.3% 0.182 276.935)",
|
|
119
|
+
500: "oklch(58.5% 0.233 277.117)",
|
|
120
|
+
600: "oklch(51.1% 0.262 276.966)",
|
|
121
|
+
700: "oklch(45.7% 0.24 277.023)",
|
|
122
|
+
800: "oklch(39.8% 0.195 277.366)",
|
|
123
|
+
900: "oklch(35.9% 0.144 278.697)",
|
|
124
|
+
950: "oklch(25.7% 0.09 281.288)"
|
|
125
|
+
},
|
|
126
|
+
pink: {
|
|
127
|
+
50: "oklch(97.1% 0.014 343.198)",
|
|
128
|
+
100: "oklch(94.8% 0.028 342.258)",
|
|
129
|
+
200: "oklch(89.9% 0.061 343.231)",
|
|
130
|
+
300: "oklch(82.3% 0.12 346.018)",
|
|
131
|
+
400: "oklch(71.8% 0.202 349.761)",
|
|
132
|
+
500: "oklch(65.6% 0.241 354.308)",
|
|
133
|
+
600: "oklch(59.2% 0.249 0.584)",
|
|
134
|
+
700: "oklch(52.5% 0.223 3.958)",
|
|
135
|
+
800: "oklch(45.9% 0.187 3.815)",
|
|
136
|
+
900: "oklch(40.8% 0.153 2.432)",
|
|
137
|
+
950: "oklch(28.4% 0.109 3.907)"
|
|
138
|
+
},
|
|
139
|
+
teal: {
|
|
140
|
+
50: "oklch(98.4% 0.014 180.72)",
|
|
141
|
+
100: "oklch(95.3% 0.051 180.801)",
|
|
142
|
+
200: "oklch(91% 0.096 180.426)",
|
|
143
|
+
300: "oklch(85.5% 0.138 181.071)",
|
|
144
|
+
400: "oklch(77.7% 0.152 181.912)",
|
|
145
|
+
500: "oklch(70.4% 0.14 182.503)",
|
|
146
|
+
600: "oklch(60% 0.118 184.704)",
|
|
147
|
+
700: "oklch(51.1% 0.096 186.391)",
|
|
148
|
+
800: "oklch(43.7% 0.078 188.216)",
|
|
149
|
+
900: "oklch(38.6% 0.063 188.416)",
|
|
150
|
+
950: "oklch(27.7% 0.046 192.524)"
|
|
151
|
+
},
|
|
152
|
+
sky: {
|
|
153
|
+
50: "oklch(97.7% 0.013 236.62)",
|
|
154
|
+
100: "oklch(95.1% 0.026 236.824)",
|
|
155
|
+
200: "oklch(90.1% 0.058 230.902)",
|
|
156
|
+
300: "oklch(82.8% 0.111 230.318)",
|
|
157
|
+
400: "oklch(74.6% 0.16 232.661)",
|
|
158
|
+
500: "oklch(68.5% 0.169 237.323)",
|
|
159
|
+
600: "oklch(58.8% 0.158 241.966)",
|
|
160
|
+
700: "oklch(50% 0.134 242.749)",
|
|
161
|
+
800: "oklch(44.3% 0.11 240.79)",
|
|
162
|
+
900: "oklch(39.1% 0.09 240.876)",
|
|
163
|
+
950: "oklch(29.3% 0.066 243.157)"
|
|
164
|
+
}
|
|
165
|
+
};
|
|
166
|
+
function yo(e) {
|
|
167
|
+
return Mt[e] || Mt.blue;
|
|
168
|
+
}
|
|
169
|
+
s(yo, "getColorSchemeOklch");
|
|
170
|
+
const Dt = [
|
|
171
|
+
{
|
|
172
|
+
mode: "self",
|
|
173
|
+
label: "Mode",
|
|
174
|
+
icon: "i-tabler-north-star"
|
|
175
|
+
},
|
|
176
|
+
{
|
|
177
|
+
mode: "talk",
|
|
178
|
+
label: "Talk",
|
|
179
|
+
icon: "i-tabler-phone"
|
|
180
|
+
},
|
|
181
|
+
{
|
|
182
|
+
mode: "chat",
|
|
183
|
+
label: "Chat",
|
|
184
|
+
icon: "i-tabler-message-circle"
|
|
185
|
+
},
|
|
186
|
+
{
|
|
187
|
+
mode: "info",
|
|
188
|
+
label: "About",
|
|
189
|
+
icon: "i-tabler-user-circle"
|
|
190
|
+
}
|
|
191
|
+
], ko = 256, wo = 0.8, Co = 50, So = {
|
|
10
192
|
bars: 64,
|
|
11
193
|
barWidth: 3,
|
|
12
194
|
barSpacing: 1,
|
|
@@ -93,17 +275,17 @@ const vo = 256, po = 0.8, xo = 50, yo = {
|
|
|
93
275
|
7500,
|
|
94
276
|
8e3,
|
|
95
277
|
8500
|
|
96
|
-
], vt = class vt extends
|
|
278
|
+
], vt = class vt extends Ft {
|
|
97
279
|
constructor(o) {
|
|
98
280
|
super("ClientAudio", o);
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
281
|
+
D(this, "audioContext");
|
|
282
|
+
D(this, "analyser");
|
|
283
|
+
D(this, "microphone");
|
|
284
|
+
D(this, "audioLevelInterval");
|
|
285
|
+
D(this, "stream");
|
|
286
|
+
D(this, "visibilityChangeHandler");
|
|
105
287
|
// Public reactive state
|
|
106
|
-
|
|
288
|
+
D(this, "audioLevels", P({ inputLevel: 0, outputLevel: 0 }));
|
|
107
289
|
this.setupVisibilityHandler();
|
|
108
290
|
}
|
|
109
291
|
/**
|
|
@@ -156,7 +338,7 @@ const vo = 256, po = 0.8, xo = 50, yo = {
|
|
|
156
338
|
if (!this.stream)
|
|
157
339
|
throw new Error("No audio stream available");
|
|
158
340
|
try {
|
|
159
|
-
this.audioContext = new AudioContext(), this.analyser = this.audioContext.createAnalyser(), this.microphone = this.audioContext.createMediaStreamSource(this.stream), this.analyser.fftSize =
|
|
341
|
+
this.audioContext = new AudioContext(), this.analyser = this.audioContext.createAnalyser(), this.microphone = this.audioContext.createMediaStreamSource(this.stream), this.analyser.fftSize = ko, this.analyser.smoothingTimeConstant = wo, this.microphone.connect(this.analyser), this.logger.info("Audio analysis setup complete");
|
|
160
342
|
} catch (o) {
|
|
161
343
|
throw this.logger.error("Failed to setup audio analysis:", o), o;
|
|
162
344
|
}
|
|
@@ -177,8 +359,8 @@ const vo = 256, po = 0.8, xo = 50, yo = {
|
|
|
177
359
|
}
|
|
178
360
|
try {
|
|
179
361
|
this.analyser.getByteFrequencyData(t);
|
|
180
|
-
const i = t.reduce((C,
|
|
181
|
-
this.audioLevels.value = { inputLevel:
|
|
362
|
+
const i = t.reduce((C, h) => C + h, 0) / t.length, c = Math.min(i / 128, 1), f = o?.() ? 0.3 : 0;
|
|
363
|
+
this.audioLevels.value = { inputLevel: c, outputLevel: f };
|
|
182
364
|
} catch (i) {
|
|
183
365
|
this.logger.error("Error in audio level monitoring:", i), this.stopAudioLevelMonitoring();
|
|
184
366
|
}
|
|
@@ -187,7 +369,7 @@ const vo = 256, po = 0.8, xo = 50, yo = {
|
|
|
187
369
|
this.logger.error("Async error in audio level monitoring:", i);
|
|
188
370
|
});
|
|
189
371
|
}, "intervalWrapper");
|
|
190
|
-
this.audioLevelInterval = window.setInterval(a,
|
|
372
|
+
this.audioLevelInterval = window.setInterval(a, Co);
|
|
191
373
|
}
|
|
192
374
|
/**
|
|
193
375
|
* Stop monitoring audio levels
|
|
@@ -236,188 +418,6 @@ const vo = 256, po = 0.8, xo = 50, yo = {
|
|
|
236
418
|
};
|
|
237
419
|
s(vt, "ClientAudio");
|
|
238
420
|
let lt = vt;
|
|
239
|
-
const Bt = [
|
|
240
|
-
{
|
|
241
|
-
mode: "self",
|
|
242
|
-
label: "Mode",
|
|
243
|
-
icon: "i-tabler-north-star"
|
|
244
|
-
},
|
|
245
|
-
{
|
|
246
|
-
mode: "talk",
|
|
247
|
-
label: "Talk",
|
|
248
|
-
icon: "i-tabler-phone"
|
|
249
|
-
},
|
|
250
|
-
{
|
|
251
|
-
mode: "chat",
|
|
252
|
-
label: "Chat",
|
|
253
|
-
icon: "i-tabler-message-circle"
|
|
254
|
-
},
|
|
255
|
-
{
|
|
256
|
-
mode: "info",
|
|
257
|
-
label: "About",
|
|
258
|
-
icon: "i-tabler-user-circle"
|
|
259
|
-
}
|
|
260
|
-
], ko = { class: "spinner max-w-sm" }, wo = {
|
|
261
|
-
class: "ring-circular h-full w-full origin-center",
|
|
262
|
-
viewBox: "25 25 50 50"
|
|
263
|
-
}, gt = /* @__PURE__ */ j({
|
|
264
|
-
__name: "FSpinner",
|
|
265
|
-
props: {
|
|
266
|
-
width: { type: String, default: "" },
|
|
267
|
-
colorMode: { type: String, default: "primary" }
|
|
268
|
-
},
|
|
269
|
-
setup(e) {
|
|
270
|
-
return (r, o) => (d(), b("div", ko, [
|
|
271
|
-
(d(), b("svg", wo, [
|
|
272
|
-
l("circle", {
|
|
273
|
-
class: z([e.colorMode, "ring-path"]),
|
|
274
|
-
cx: "50",
|
|
275
|
-
cy: "50",
|
|
276
|
-
r: "20",
|
|
277
|
-
fill: "none",
|
|
278
|
-
stroke: "currentColor",
|
|
279
|
-
"stroke-width": "5",
|
|
280
|
-
"stroke-miterlimit": "30"
|
|
281
|
-
}, null, 2)
|
|
282
|
-
]))
|
|
283
|
-
]));
|
|
284
|
-
}
|
|
285
|
-
}), Mt = {
|
|
286
|
-
green: {
|
|
287
|
-
50: "oklch(98.2% 0.018 155.826)",
|
|
288
|
-
100: "oklch(96.2% 0.044 156.743)",
|
|
289
|
-
200: "oklch(92.5% 0.084 155.995)",
|
|
290
|
-
300: "oklch(87.1% 0.15 154.449)",
|
|
291
|
-
400: "oklch(79.2% 0.209 151.711)",
|
|
292
|
-
500: "oklch(72.3% 0.219 149.579)",
|
|
293
|
-
600: "oklch(62.7% 0.194 149.214)",
|
|
294
|
-
700: "oklch(52.7% 0.154 150.069)",
|
|
295
|
-
800: "oklch(44.8% 0.119 151.328)",
|
|
296
|
-
900: "oklch(39.3% 0.095 152.535)",
|
|
297
|
-
950: "oklch(26.6% 0.065 152.934)"
|
|
298
|
-
},
|
|
299
|
-
blue: {
|
|
300
|
-
50: "oklch(97% 0.014 254.604)",
|
|
301
|
-
100: "oklch(93.2% 0.032 255.585)",
|
|
302
|
-
200: "oklch(88.2% 0.059 254.128)",
|
|
303
|
-
300: "oklch(80.9% 0.105 251.813)",
|
|
304
|
-
400: "oklch(70.7% 0.165 254.624)",
|
|
305
|
-
500: "oklch(62.3% 0.214 259.815)",
|
|
306
|
-
600: "oklch(54.6% 0.245 262.881)",
|
|
307
|
-
700: "oklch(48.8% 0.243 264.376)",
|
|
308
|
-
800: "oklch(42.4% 0.199 265.638)",
|
|
309
|
-
900: "oklch(37.9% 0.146 265.522)",
|
|
310
|
-
950: "oklch(28.2% 0.091 267.935)"
|
|
311
|
-
},
|
|
312
|
-
rose: {
|
|
313
|
-
50: "oklch(96.9% 0.015 12.422)",
|
|
314
|
-
100: "oklch(94.1% 0.03 12.58)",
|
|
315
|
-
200: "oklch(89.2% 0.058 10.001)",
|
|
316
|
-
300: "oklch(81% 0.117 11.638)",
|
|
317
|
-
400: "oklch(71.2% 0.194 13.428)",
|
|
318
|
-
500: "oklch(64.5% 0.246 16.439)",
|
|
319
|
-
600: "oklch(58.6% 0.253 17.585)",
|
|
320
|
-
700: "oklch(51.4% 0.222 16.935)",
|
|
321
|
-
800: "oklch(45.5% 0.188 13.697)",
|
|
322
|
-
900: "oklch(41% 0.159 10.272)",
|
|
323
|
-
950: "oklch(27.1% 0.105 12.094)"
|
|
324
|
-
},
|
|
325
|
-
cyan: {
|
|
326
|
-
50: "oklch(98.4% 0.019 200.873)",
|
|
327
|
-
100: "oklch(95.6% 0.045 203.388)",
|
|
328
|
-
200: "oklch(91.7% 0.08 205.041)",
|
|
329
|
-
300: "oklch(86.5% 0.127 207.078)",
|
|
330
|
-
400: "oklch(78.9% 0.154 211.53)",
|
|
331
|
-
500: "oklch(71.5% 0.143 215.221)",
|
|
332
|
-
600: "oklch(60.9% 0.126 221.723)",
|
|
333
|
-
700: "oklch(52% 0.105 223.128)",
|
|
334
|
-
800: "oklch(45% 0.085 224.283)",
|
|
335
|
-
900: "oklch(39.8% 0.07 227.392)",
|
|
336
|
-
950: "oklch(30.2% 0.056 229.695)"
|
|
337
|
-
},
|
|
338
|
-
purple: {
|
|
339
|
-
50: "oklch(97.7% 0.014 308.299)",
|
|
340
|
-
100: "oklch(94.6% 0.033 307.174)",
|
|
341
|
-
200: "oklch(90.2% 0.063 306.703)",
|
|
342
|
-
300: "oklch(82.7% 0.119 306.383)",
|
|
343
|
-
400: "oklch(71.4% 0.203 305.504)",
|
|
344
|
-
500: "oklch(62.7% 0.265 303.9)",
|
|
345
|
-
600: "oklch(55.8% 0.288 302.321)",
|
|
346
|
-
700: "oklch(49.6% 0.265 301.924)",
|
|
347
|
-
800: "oklch(43.8% 0.218 303.724)",
|
|
348
|
-
900: "oklch(38.1% 0.176 304.987)",
|
|
349
|
-
950: "oklch(29.1% 0.149 302.717)"
|
|
350
|
-
},
|
|
351
|
-
amber: {
|
|
352
|
-
50: "oklch(98.7% 0.022 95.277)",
|
|
353
|
-
100: "oklch(96.2% 0.059 95.617)",
|
|
354
|
-
200: "oklch(92.4% 0.12 95.746)",
|
|
355
|
-
300: "oklch(87.9% 0.169 91.605)",
|
|
356
|
-
400: "oklch(82.8% 0.189 84.429)",
|
|
357
|
-
500: "oklch(76.9% 0.188 70.08)",
|
|
358
|
-
600: "oklch(66.6% 0.179 58.318)",
|
|
359
|
-
700: "oklch(55.5% 0.163 48.998)",
|
|
360
|
-
800: "oklch(47.3% 0.137 46.201)",
|
|
361
|
-
900: "oklch(41.4% 0.112 45.904)",
|
|
362
|
-
950: "oklch(27.9% 0.077 45.635)"
|
|
363
|
-
},
|
|
364
|
-
indigo: {
|
|
365
|
-
50: "oklch(96.2% 0.018 272.314)",
|
|
366
|
-
100: "oklch(93% 0.034 272.788)",
|
|
367
|
-
200: "oklch(87% 0.065 274.039)",
|
|
368
|
-
300: "oklch(78.5% 0.115 274.713)",
|
|
369
|
-
400: "oklch(67.3% 0.182 276.935)",
|
|
370
|
-
500: "oklch(58.5% 0.233 277.117)",
|
|
371
|
-
600: "oklch(51.1% 0.262 276.966)",
|
|
372
|
-
700: "oklch(45.7% 0.24 277.023)",
|
|
373
|
-
800: "oklch(39.8% 0.195 277.366)",
|
|
374
|
-
900: "oklch(35.9% 0.144 278.697)",
|
|
375
|
-
950: "oklch(25.7% 0.09 281.288)"
|
|
376
|
-
},
|
|
377
|
-
pink: {
|
|
378
|
-
50: "oklch(97.1% 0.014 343.198)",
|
|
379
|
-
100: "oklch(94.8% 0.028 342.258)",
|
|
380
|
-
200: "oklch(89.9% 0.061 343.231)",
|
|
381
|
-
300: "oklch(82.3% 0.12 346.018)",
|
|
382
|
-
400: "oklch(71.8% 0.202 349.761)",
|
|
383
|
-
500: "oklch(65.6% 0.241 354.308)",
|
|
384
|
-
600: "oklch(59.2% 0.249 0.584)",
|
|
385
|
-
700: "oklch(52.5% 0.223 3.958)",
|
|
386
|
-
800: "oklch(45.9% 0.187 3.815)",
|
|
387
|
-
900: "oklch(40.8% 0.153 2.432)",
|
|
388
|
-
950: "oklch(28.4% 0.109 3.907)"
|
|
389
|
-
},
|
|
390
|
-
teal: {
|
|
391
|
-
50: "oklch(98.4% 0.014 180.72)",
|
|
392
|
-
100: "oklch(95.3% 0.051 180.801)",
|
|
393
|
-
200: "oklch(91% 0.096 180.426)",
|
|
394
|
-
300: "oklch(85.5% 0.138 181.071)",
|
|
395
|
-
400: "oklch(77.7% 0.152 181.912)",
|
|
396
|
-
500: "oklch(70.4% 0.14 182.503)",
|
|
397
|
-
600: "oklch(60% 0.118 184.704)",
|
|
398
|
-
700: "oklch(51.1% 0.096 186.391)",
|
|
399
|
-
800: "oklch(43.7% 0.078 188.216)",
|
|
400
|
-
900: "oklch(38.6% 0.063 188.416)",
|
|
401
|
-
950: "oklch(27.7% 0.046 192.524)"
|
|
402
|
-
},
|
|
403
|
-
sky: {
|
|
404
|
-
50: "oklch(97.7% 0.013 236.62)",
|
|
405
|
-
100: "oklch(95.1% 0.026 236.824)",
|
|
406
|
-
200: "oklch(90.1% 0.058 230.902)",
|
|
407
|
-
300: "oklch(82.8% 0.111 230.318)",
|
|
408
|
-
400: "oklch(74.6% 0.16 232.661)",
|
|
409
|
-
500: "oklch(68.5% 0.169 237.323)",
|
|
410
|
-
600: "oklch(58.8% 0.158 241.966)",
|
|
411
|
-
700: "oklch(50% 0.134 242.749)",
|
|
412
|
-
800: "oklch(44.3% 0.11 240.79)",
|
|
413
|
-
900: "oklch(39.1% 0.09 240.876)",
|
|
414
|
-
950: "oklch(29.3% 0.066 243.157)"
|
|
415
|
-
}
|
|
416
|
-
};
|
|
417
|
-
function Co(e) {
|
|
418
|
-
return Mt[e] || Mt.blue;
|
|
419
|
-
}
|
|
420
|
-
s(Co, "getColorSchemeOklch");
|
|
421
421
|
function At(e) {
|
|
422
422
|
return e ? typeof e == "string" ? e : e.src || "" : "";
|
|
423
423
|
}
|
|
@@ -426,16 +426,16 @@ function tt(e) {
|
|
|
426
426
|
return At(e.cover) || At(e.avatar) || "/img/placeholder-avatar.png";
|
|
427
427
|
}
|
|
428
428
|
s(tt, "getSelfAvatarUrl");
|
|
429
|
-
function
|
|
429
|
+
function He() {
|
|
430
430
|
return "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iODAiIGhlaWdodD0iODAiIHZpZXdCb3g9IjAgMCA4MCA4MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHJlY3Qgd2lkdGg9IjgwIiBoZWlnaHQ9IjgwIiByeD0iNDAiIGZpbGw9IiM2MzY2RjEiLz4KPHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeD0iMjAiIHk9IjIwIj4KPHA0aCBkPSJNMTIgMTJjMi4yMSAwIDQtMS43OSA0LTRTNC4yMSA0IDIgNHMxLjc5IDQgNCA0em0wIDJjLTIuNjcgMC04IDEuMzQtOCA0djJoMTZ2LTJjMC0yLjY2LTUuMzMtNC04LTR6IiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4KPC9zdmc+";
|
|
431
431
|
}
|
|
432
|
-
s(
|
|
432
|
+
s(He, "getFallbackAvatarDataUrl");
|
|
433
433
|
function ot(e) {
|
|
434
434
|
const r = e.target;
|
|
435
|
-
r.dataset.fallbackUsed || (r.dataset.fallbackUsed = "true", r.src =
|
|
435
|
+
r.dataset.fallbackUsed || (r.dataset.fallbackUsed = "true", r.src = He());
|
|
436
436
|
}
|
|
437
437
|
s(ot, "handleImageError");
|
|
438
|
-
function
|
|
438
|
+
function Mo(e) {
|
|
439
439
|
const { message: r } = e;
|
|
440
440
|
if (!r)
|
|
441
441
|
return null;
|
|
@@ -462,31 +462,31 @@ function So(e) {
|
|
|
462
462
|
}
|
|
463
463
|
return null;
|
|
464
464
|
}
|
|
465
|
-
s(
|
|
466
|
-
function
|
|
465
|
+
s(Mo, "parseVoiceMessage");
|
|
466
|
+
function an(e) {
|
|
467
467
|
const { name: r, context: o } = e;
|
|
468
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
469
|
}
|
|
470
|
-
s(
|
|
471
|
-
const pt = class pt extends
|
|
470
|
+
s(an, "generateFirstMessage");
|
|
471
|
+
const pt = class pt extends Ft {
|
|
472
472
|
constructor(o) {
|
|
473
473
|
super("SelfController", o);
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
474
|
+
D(this, "conversation");
|
|
475
|
+
D(this, "isTextMode", !1);
|
|
476
|
+
D(this, "lastMessage", { hash: "", time: 0 });
|
|
477
|
+
D(this, "clientAudio");
|
|
478
|
+
D(this, "unwatchAudio");
|
|
479
|
+
D(this, "isConnecting", !1);
|
|
480
480
|
// Simple usage tracking
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
481
|
+
D(this, "sessionId");
|
|
482
|
+
D(this, "conversationStartTime");
|
|
483
|
+
D(this, "chatCharacterCount", 0);
|
|
484
484
|
// Participant IDs for message attribution
|
|
485
|
-
|
|
485
|
+
D(this, "hostParticipantId");
|
|
486
486
|
// The digital self
|
|
487
|
-
|
|
487
|
+
D(this, "visitorParticipantId");
|
|
488
488
|
// The user/anon
|
|
489
|
-
|
|
489
|
+
D(this, "voiceState", P({
|
|
490
490
|
isActive: !1,
|
|
491
491
|
isConnected: !1,
|
|
492
492
|
isSpeaking: !1,
|
|
@@ -494,14 +494,14 @@ const pt = class pt extends Vt {
|
|
|
494
494
|
transcript: "Tap to begin voice conversation",
|
|
495
495
|
connectionStatus: "disconnected"
|
|
496
496
|
}));
|
|
497
|
-
|
|
497
|
+
D(this, "textState", P({
|
|
498
498
|
isActive: !1,
|
|
499
499
|
isConnected: !1,
|
|
500
500
|
isThinking: !1,
|
|
501
501
|
connectionStatus: "disconnected"
|
|
502
502
|
}));
|
|
503
|
-
|
|
504
|
-
|
|
503
|
+
D(this, "agentMode", P("self"));
|
|
504
|
+
D(this, "sharedMessages", P([]));
|
|
505
505
|
if (!o.self.elevenlabsAgentId || o.self.elevenlabsAgentId.trim() === "")
|
|
506
506
|
throw new Error(`Agent ID is required for SelfController. Self "${o.self.name}" (${o.self.selfId}) does not have a valid elevenlabsAgentId.`);
|
|
507
507
|
this.clientAudio = new lt(o), this.setupModeWatcher();
|
|
@@ -518,7 +518,7 @@ const pt = class pt extends Vt {
|
|
|
518
518
|
try {
|
|
519
519
|
const o = this.conversation.getOutputByteFrequencyData();
|
|
520
520
|
if (o && o.length > 0) {
|
|
521
|
-
const t = Array.from(o).filter((i) => Number(i) > 0).length, n = Math.max(...Array.from(o)), a = Array.from(o).reduce((i,
|
|
521
|
+
const t = Array.from(o).filter((i) => Number(i) > 0).length, n = Math.max(...Array.from(o)), a = Array.from(o).reduce((i, c) => i + Number(c), 0) / o.length;
|
|
522
522
|
return console.warn(`ElevenLabs frequency data: ${o.length} bins, ${t} with signal, max: ${n}, avg: ${a.toFixed(1)}`), new Uint8Array(o);
|
|
523
523
|
} else
|
|
524
524
|
return console.warn("ElevenLabs returned empty frequency data"), null;
|
|
@@ -573,7 +573,7 @@ const pt = class pt extends Vt {
|
|
|
573
573
|
});
|
|
574
574
|
}
|
|
575
575
|
handleMessage(o, t) {
|
|
576
|
-
const n =
|
|
576
|
+
const n = Mo(o);
|
|
577
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)) {
|
|
578
578
|
const a = n.sender === "agent" ? this.hostParticipantId : this.visitorParticipantId, { sdk: i } = this.settings;
|
|
579
579
|
i.saveMessage({
|
|
@@ -581,8 +581,8 @@ const pt = class pt extends Vt {
|
|
|
581
581
|
participantId: a,
|
|
582
582
|
content: n.text,
|
|
583
583
|
role: n.sender === "agent" ? "agent" : "user"
|
|
584
|
-
}).catch((
|
|
585
|
-
this.logger.warn("Failed to save message", { error:
|
|
584
|
+
}).catch((c) => {
|
|
585
|
+
this.logger.warn("Failed to save message", { error: c });
|
|
586
586
|
});
|
|
587
587
|
}
|
|
588
588
|
}
|
|
@@ -637,7 +637,7 @@ const pt = class pt extends Vt {
|
|
|
637
637
|
}, "onDisconnect"),
|
|
638
638
|
onError: /* @__PURE__ */ s((a) => {
|
|
639
639
|
let i = a;
|
|
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((
|
|
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((c) => console.error("Failed to end session:", c)), this.handleError(new Error(i), !0), o.onError?.(new Error(i));
|
|
641
641
|
}, "onError"),
|
|
642
642
|
onModeChange: /* @__PURE__ */ s((a) => {
|
|
643
643
|
const i = a.mode === "speaking";
|
|
@@ -742,7 +742,7 @@ const pt = class pt extends Vt {
|
|
|
742
742
|
return;
|
|
743
743
|
}
|
|
744
744
|
}
|
|
745
|
-
this.sessionId =
|
|
745
|
+
this.sessionId = mo(), this.logger.info("Started conversation session (fallback)", {
|
|
746
746
|
sessionId: this.sessionId,
|
|
747
747
|
type: o
|
|
748
748
|
});
|
|
@@ -779,14 +779,14 @@ const pt = class pt extends Vt {
|
|
|
779
779
|
};
|
|
780
780
|
s(pt, "SelfController");
|
|
781
781
|
let ct = pt;
|
|
782
|
-
const
|
|
782
|
+
const Ao = /* @__PURE__ */ j({
|
|
783
783
|
__name: "EffectTransitionList",
|
|
784
784
|
props: {
|
|
785
785
|
disabled: { type: Boolean, default: !1 },
|
|
786
786
|
mode: { default: "block" }
|
|
787
787
|
},
|
|
788
788
|
setup(e) {
|
|
789
|
-
return (r, o) => (
|
|
789
|
+
return (r, o) => (u(), _(Tt, {
|
|
790
790
|
name: e.disabled ? "" : "nlist"
|
|
791
791
|
}, {
|
|
792
792
|
default: ee(() => [
|
|
@@ -795,7 +795,7 @@ const Mo = /* @__PURE__ */ j({
|
|
|
795
795
|
_: 3
|
|
796
796
|
}, 8, ["name"]));
|
|
797
797
|
}
|
|
798
|
-
}),
|
|
798
|
+
}), Io = {
|
|
799
799
|
key: 0,
|
|
800
800
|
class: "absolute inset-0 flex items-center justify-center"
|
|
801
801
|
}, mt = /* @__PURE__ */ j({
|
|
@@ -808,42 +808,42 @@ const Mo = /* @__PURE__ */ j({
|
|
|
808
808
|
iconAfter: {}
|
|
809
809
|
},
|
|
810
810
|
setup(e) {
|
|
811
|
-
const r =
|
|
811
|
+
const r = B(() => ({
|
|
812
812
|
primary: "bg-primary-600 border-primary-400 hover:border-primary-300 hover:bg-primary-500",
|
|
813
813
|
green: "bg-green-600 border-green-400 hover:border-green-300 hover:bg-green-500",
|
|
814
814
|
red: "bg-red-600 border-red-400 hover:border-red-300 hover:bg-red-500",
|
|
815
815
|
default: "bg-white/10 border-white/20 hover:border-white/40 hover:bg-white/20"
|
|
816
|
-
})[e.theme]), o =
|
|
816
|
+
})[e.theme]), o = B(() => ({
|
|
817
817
|
sm: "px-4 py-2 text-sm",
|
|
818
818
|
md: "px-6 py-3 text-base",
|
|
819
819
|
lg: "px-8 py-4 text-base"
|
|
820
|
-
})[e.size]), t =
|
|
820
|
+
})[e.size]), t = B(() => ({
|
|
821
821
|
sm: "size-4",
|
|
822
822
|
md: "size-4",
|
|
823
823
|
lg: "size-5"
|
|
824
824
|
})[e.size]);
|
|
825
|
-
return (n, a) => (
|
|
825
|
+
return (n, a) => (u(), b("button", {
|
|
826
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]])
|
|
827
827
|
}, [
|
|
828
|
-
e.loading ? (
|
|
828
|
+
e.loading ? (u(), b("div", Io, [...a[0] || (a[0] = [
|
|
829
829
|
l("i", { class: "i-svg-spinners-90-ring-with-bg size-5" }, null, -1)
|
|
830
830
|
])])) : E("", !0),
|
|
831
831
|
l("span", {
|
|
832
832
|
class: z(["flex items-center gap-2 transition-opacity duration-200", e.loading ? "opacity-0" : "opacity-100"])
|
|
833
833
|
}, [
|
|
834
|
-
e.icon ? (
|
|
834
|
+
e.icon ? (u(), b("i", {
|
|
835
835
|
key: 0,
|
|
836
836
|
class: z([e.icon, t.value])
|
|
837
837
|
}, null, 2)) : E("", !0),
|
|
838
838
|
Ce(n.$slots, "default"),
|
|
839
|
-
e.iconAfter ? (
|
|
839
|
+
e.iconAfter ? (u(), b("i", {
|
|
840
840
|
key: 1,
|
|
841
841
|
class: z([e.iconAfter, t.value])
|
|
842
842
|
}, null, 2)) : E("", !0)
|
|
843
843
|
], 2)
|
|
844
844
|
], 2));
|
|
845
845
|
}
|
|
846
|
-
}),
|
|
846
|
+
}), zo = ["value"], $o = /* @__PURE__ */ j({
|
|
847
847
|
__name: "SelfInputEmail",
|
|
848
848
|
props: {
|
|
849
849
|
modelValue: { default: "" }
|
|
@@ -851,7 +851,7 @@ const Mo = /* @__PURE__ */ j({
|
|
|
851
851
|
emits: ["update:modelValue"],
|
|
852
852
|
setup(e, { emit: r }) {
|
|
853
853
|
const o = r;
|
|
854
|
-
return (t, n) => (
|
|
854
|
+
return (t, n) => (u(), b("input", {
|
|
855
855
|
type: "email",
|
|
856
856
|
autocomplete: "email",
|
|
857
857
|
placeholder: "Enter Your Email",
|
|
@@ -859,9 +859,9 @@ const Mo = /* @__PURE__ */ j({
|
|
|
859
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",
|
|
860
860
|
style: { "font-size": "16px" },
|
|
861
861
|
onInput: n[0] || (n[0] = (a) => o("update:modelValue", a.target.value))
|
|
862
|
-
}, null, 40,
|
|
862
|
+
}, null, 40, zo));
|
|
863
863
|
}
|
|
864
|
-
}),
|
|
864
|
+
}), Eo = { class: "flex gap-1.5 justify-center" }, Lo = ["onUpdate:modelValue", "onInput", "onKeydown", "onPaste", "onFocus"], To = /* @__PURE__ */ j({
|
|
865
865
|
__name: "SelfInputOneTimeCode",
|
|
866
866
|
props: {
|
|
867
867
|
modelValue: {},
|
|
@@ -873,13 +873,13 @@ const Mo = /* @__PURE__ */ j({
|
|
|
873
873
|
const o = e, t = r, n = P([]), a = P(Array.from({ length: o.length }).fill("")), i = P(!1);
|
|
874
874
|
Ie(() => {
|
|
875
875
|
o.modelValue && (a.value = o.modelValue.split("").slice(0, o.length)), o.focusFirst && !("ontouchstart" in window) && n.value[0]?.focus();
|
|
876
|
-
}), se(() => o.modelValue, (
|
|
877
|
-
a.value =
|
|
876
|
+
}), se(() => o.modelValue, (d) => {
|
|
877
|
+
a.value = d ? d.split("").slice(0, o.length) : Array.from({ length: o.length }).fill("");
|
|
878
878
|
}), se(a, () => {
|
|
879
|
-
const
|
|
880
|
-
t("update:modelValue",
|
|
879
|
+
const d = a.value.filter(Boolean).join("");
|
|
880
|
+
t("update:modelValue", d), d.length === o.length && t("autoSubmit", d);
|
|
881
881
|
}, { deep: !0 });
|
|
882
|
-
function
|
|
882
|
+
function c(d, m) {
|
|
883
883
|
m.preventDefault(), i.value = !0;
|
|
884
884
|
const p = (m.clipboardData?.getData("text") || "").replace(/\D/g, "");
|
|
885
885
|
if (p.length === o.length)
|
|
@@ -888,32 +888,32 @@ const Mo = /* @__PURE__ */ j({
|
|
|
888
888
|
}, 10);
|
|
889
889
|
else {
|
|
890
890
|
const g = [...a.value];
|
|
891
|
-
p.split("").slice(0, o.length -
|
|
892
|
-
g[
|
|
891
|
+
p.split("").slice(0, o.length - d).forEach((W, Q) => {
|
|
892
|
+
g[d + Q] = W;
|
|
893
893
|
}), a.value = g;
|
|
894
|
-
const T = Math.min(
|
|
894
|
+
const T = Math.min(d + p.length, o.length - 1);
|
|
895
895
|
setTimeout(() => {
|
|
896
896
|
n.value[T]?.focus(), i.value = !1;
|
|
897
897
|
}, 10);
|
|
898
898
|
}
|
|
899
899
|
}
|
|
900
|
-
s(
|
|
901
|
-
function f(
|
|
900
|
+
s(c, "onPaste");
|
|
901
|
+
function f(d, m) {
|
|
902
902
|
const p = m.target.value.slice(-1).replace(/\D/g, "");
|
|
903
|
-
a.value[
|
|
903
|
+
a.value[d] = p, p && d < o.length - 1 && n.value[d + 1]?.focus();
|
|
904
904
|
}
|
|
905
905
|
s(f, "onInput");
|
|
906
|
-
function C(
|
|
907
|
-
m.key === "Backspace" ? (m.preventDefault(), a.value[
|
|
906
|
+
function C(d, m) {
|
|
907
|
+
m.key === "Backspace" ? (m.preventDefault(), a.value[d] = "", d > 0 && n.value[d - 1]?.focus()) : m.key === "ArrowLeft" && d > 0 ? n.value[d - 1]?.focus() : m.key === "ArrowRight" && d < o.length - 1 && n.value[d + 1]?.focus();
|
|
908
908
|
}
|
|
909
909
|
s(C, "onKeydown");
|
|
910
|
-
function
|
|
911
|
-
if (n.value[
|
|
912
|
-
for (let m =
|
|
910
|
+
function h(d) {
|
|
911
|
+
if (n.value[d]?.select(), !i.value && a.value[d])
|
|
912
|
+
for (let m = d; m < o.length; m++)
|
|
913
913
|
a.value[m] = "";
|
|
914
914
|
}
|
|
915
|
-
return s(
|
|
916
|
-
(
|
|
915
|
+
return s(h, "onFocus"), (d, m) => (u(), b("div", Eo, [
|
|
916
|
+
(u(!0), b(Ae, null, rt(e.length, (p) => Pt((u(), b("input", {
|
|
917
917
|
key: p,
|
|
918
918
|
ref_for: !0,
|
|
919
919
|
ref: /* @__PURE__ */ s((g) => n.value[p - 1] = g, "ref"),
|
|
@@ -926,20 +926,20 @@ const Mo = /* @__PURE__ */ j({
|
|
|
926
926
|
maxlength: "1",
|
|
927
927
|
onInput: /* @__PURE__ */ s((g) => f(p - 1, g), "onInput"),
|
|
928
928
|
onKeydown: /* @__PURE__ */ s((g) => C(p - 1, g), "onKeydown"),
|
|
929
|
-
onPaste: /* @__PURE__ */ s((g) =>
|
|
930
|
-
onFocus: /* @__PURE__ */ s((g) =>
|
|
931
|
-
}, null, 40,
|
|
932
|
-
[
|
|
929
|
+
onPaste: /* @__PURE__ */ s((g) => c(p - 1, g), "onPaste"),
|
|
930
|
+
onFocus: /* @__PURE__ */ s((g) => h(p - 1), "onFocus")
|
|
931
|
+
}, null, 40, Lo)), [
|
|
932
|
+
[Bt, a.value[p - 1]]
|
|
933
933
|
])), 128))
|
|
934
934
|
]));
|
|
935
935
|
}
|
|
936
|
-
}),
|
|
936
|
+
}), Po = { class: "flex flex-col items-center justify-center h-full p-6" }, Bo = { class: "w-full max-w-xs space-y-12" }, Fo = {
|
|
937
937
|
key: 0,
|
|
938
938
|
class: "text-xs text-theme-400 text-center"
|
|
939
|
-
},
|
|
939
|
+
}, Do = { class: "text-base font-light text-white text-center" }, Vo = { class: "space-y-6 relative" }, jo = {
|
|
940
940
|
key: "email-field",
|
|
941
941
|
class: "w-full"
|
|
942
|
-
},
|
|
942
|
+
}, Ro = {
|
|
943
943
|
key: "code-field",
|
|
944
944
|
class: "w-full"
|
|
945
945
|
}, It = /* @__PURE__ */ j({
|
|
@@ -961,34 +961,34 @@ const Mo = /* @__PURE__ */ j({
|
|
|
961
961
|
button: { label: "Verify", disabled: /* @__PURE__ */ s(() => r.value.code.length !== 6, "disabled") },
|
|
962
962
|
action: /* @__PURE__ */ s(() => e.sdk.loginWithCode({ email: r.value.email, code: r.value.code }), "action")
|
|
963
963
|
}
|
|
964
|
-
}, n =
|
|
965
|
-
return (a, i) => (
|
|
966
|
-
l("div",
|
|
967
|
-
e.sdk.error.value ? (
|
|
968
|
-
l("h3",
|
|
969
|
-
l("div",
|
|
970
|
-
|
|
964
|
+
}, n = B(() => t[o.value]);
|
|
965
|
+
return (a, i) => (u(), b("div", Po, [
|
|
966
|
+
l("div", Bo, [
|
|
967
|
+
e.sdk.error.value ? (u(), b("p", Fo, U(e.sdk.error.value), 1)) : E("", !0),
|
|
968
|
+
l("h3", Do, U(n.value.title), 1),
|
|
969
|
+
l("div", Vo, [
|
|
970
|
+
V(Ao, null, {
|
|
971
971
|
default: ee(() => [
|
|
972
|
-
o.value === "email" ? (
|
|
973
|
-
|
|
972
|
+
o.value === "email" ? (u(), b("div", jo, [
|
|
973
|
+
V($o, {
|
|
974
974
|
modelValue: r.value.email,
|
|
975
|
-
"onUpdate:modelValue": i[0] || (i[0] = (
|
|
975
|
+
"onUpdate:modelValue": i[0] || (i[0] = (c) => r.value.email = c),
|
|
976
976
|
onKeyup: io(n.value.action, ["enter"])
|
|
977
977
|
}, null, 8, ["modelValue", "onKeyup"])
|
|
978
|
-
])) : (
|
|
979
|
-
|
|
978
|
+
])) : (u(), b("div", Ro, [
|
|
979
|
+
V(To, {
|
|
980
980
|
modelValue: r.value.code,
|
|
981
|
-
"onUpdate:modelValue": i[1] || (i[1] = (
|
|
981
|
+
"onUpdate:modelValue": i[1] || (i[1] = (c) => r.value.code = c),
|
|
982
982
|
length: 6,
|
|
983
983
|
"focus-first": !0,
|
|
984
984
|
onAutoSubmit: n.value.action
|
|
985
985
|
}, null, 8, ["modelValue", "onAutoSubmit"])
|
|
986
986
|
])),
|
|
987
|
-
(
|
|
987
|
+
(u(), b("div", {
|
|
988
988
|
key: n.value.button.label,
|
|
989
989
|
class: "space-y-4 w-full"
|
|
990
990
|
}, [
|
|
991
|
-
|
|
991
|
+
V(mt, {
|
|
992
992
|
theme: "primary",
|
|
993
993
|
size: "md",
|
|
994
994
|
class: "w-full",
|
|
@@ -997,14 +997,14 @@ const Mo = /* @__PURE__ */ j({
|
|
|
997
997
|
onClick: n.value.action
|
|
998
998
|
}, {
|
|
999
999
|
default: ee(() => [
|
|
1000
|
-
|
|
1000
|
+
We(U(n.value.button.label), 1)
|
|
1001
1001
|
]),
|
|
1002
1002
|
_: 1
|
|
1003
1003
|
}, 8, ["loading", "disabled", "onClick"]),
|
|
1004
|
-
o.value === "code" ? (
|
|
1004
|
+
o.value === "code" ? (u(), b("button", {
|
|
1005
1005
|
key: 0,
|
|
1006
1006
|
class: "w-full text-xs text-white/50 hover:text-white/70 transition-colors py-2",
|
|
1007
|
-
onClick: i[2] || (i[2] = (
|
|
1007
|
+
onClick: i[2] || (i[2] = (c) => o.value = "email")
|
|
1008
1008
|
}, " Change Email ")) : E("", !0)
|
|
1009
1009
|
]))
|
|
1010
1010
|
]),
|
|
@@ -1014,10 +1014,10 @@ const Mo = /* @__PURE__ */ j({
|
|
|
1014
1014
|
])
|
|
1015
1015
|
]));
|
|
1016
1016
|
}
|
|
1017
|
-
}),
|
|
1017
|
+
}), No = { class: "relative flex-shrink-0" }, Go = ["src", "alt"], Oo = {
|
|
1018
1018
|
key: 0,
|
|
1019
1019
|
class: "absolute top-1 right-1"
|
|
1020
|
-
},
|
|
1020
|
+
}, Uo = { class: "min-w-0" }, Wo = /* @__PURE__ */ j({
|
|
1021
1021
|
__name: "ElModeHeader",
|
|
1022
1022
|
props: {
|
|
1023
1023
|
self: {},
|
|
@@ -1027,14 +1027,14 @@ const Mo = /* @__PURE__ */ j({
|
|
|
1027
1027
|
},
|
|
1028
1028
|
setup(e) {
|
|
1029
1029
|
function r() {
|
|
1030
|
-
return e.self.avatar?.src ? e.self.avatar.src :
|
|
1030
|
+
return e.self.avatar?.src ? e.self.avatar.src : He();
|
|
1031
1031
|
}
|
|
1032
|
-
return s(r, "getAvatarSrc"), (o, t) => (
|
|
1032
|
+
return s(r, "getAvatarSrc"), (o, t) => (u(), b("div", {
|
|
1033
1033
|
class: z(["flex gap-4", [
|
|
1034
1034
|
e.layout === "centered" ? "flex-col items-center text-center" : "flex-row items-center justify-center"
|
|
1035
1035
|
]])
|
|
1036
1036
|
}, [
|
|
1037
|
-
l("div",
|
|
1037
|
+
l("div", No, [
|
|
1038
1038
|
l("div", {
|
|
1039
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"])
|
|
1040
1040
|
}, [
|
|
@@ -1044,9 +1044,9 @@ const Mo = /* @__PURE__ */ j({
|
|
|
1044
1044
|
class: "w-full h-full object-cover",
|
|
1045
1045
|
onError: t[0] || (t[0] = //@ts-ignore
|
|
1046
1046
|
(...n) => Y(ot) && Y(ot)(...n))
|
|
1047
|
-
}, null, 40,
|
|
1047
|
+
}, null, 40, Go)
|
|
1048
1048
|
], 2),
|
|
1049
|
-
e.showOnlineIndicator ? (
|
|
1049
|
+
e.showOnlineIndicator ? (u(), b("div", Oo, [...t[1] || (t[1] = [
|
|
1050
1050
|
l("div", {
|
|
1051
1051
|
class: "size-3 bg-green-500 rounded-full ring-2 ring-white absolute animate-ping",
|
|
1052
1052
|
style: { "animation-duration": "3s" }
|
|
@@ -1054,7 +1054,7 @@ const Mo = /* @__PURE__ */ j({
|
|
|
1054
1054
|
l("div", { class: "size-3 bg-green-500 rounded-full ring-2 ring-white" }, null, -1)
|
|
1055
1055
|
])])) : E("", !0)
|
|
1056
1056
|
]),
|
|
1057
|
-
l("div",
|
|
1057
|
+
l("div", Uo, [
|
|
1058
1058
|
l("h1", {
|
|
1059
1059
|
class: z(["font-light text-white mb-1 truncate", [
|
|
1060
1060
|
e.size === "lg" ? "text-3xl mb-2" : "text-xl sm:text-2xl tracking-wide leading-tight",
|
|
@@ -1071,24 +1071,24 @@ const Mo = /* @__PURE__ */ j({
|
|
|
1071
1071
|
], 2));
|
|
1072
1072
|
}
|
|
1073
1073
|
}), bt = "-", Ho = /* @__PURE__ */ s((e) => {
|
|
1074
|
-
const r =
|
|
1074
|
+
const r = Ko(e), {
|
|
1075
1075
|
conflictingClassGroups: o,
|
|
1076
1076
|
conflictingClassGroupModifiers: t
|
|
1077
1077
|
} = e;
|
|
1078
1078
|
return {
|
|
1079
1079
|
getClassGroupId: /* @__PURE__ */ s((i) => {
|
|
1080
|
-
const
|
|
1081
|
-
return
|
|
1080
|
+
const c = i.split(bt);
|
|
1081
|
+
return c[0] === "" && c.length !== 1 && c.shift(), Vt(c, r) || qo(i);
|
|
1082
1082
|
}, "getClassGroupId"),
|
|
1083
|
-
getConflictingClassGroupIds: /* @__PURE__ */ s((i,
|
|
1083
|
+
getConflictingClassGroupIds: /* @__PURE__ */ s((i, c) => {
|
|
1084
1084
|
const f = o[i] || [];
|
|
1085
|
-
return
|
|
1085
|
+
return c && t[i] ? [...f, ...t[i]] : f;
|
|
1086
1086
|
}, "getConflictingClassGroupIds")
|
|
1087
1087
|
};
|
|
1088
|
-
}, "createClassGroupUtils"),
|
|
1088
|
+
}, "createClassGroupUtils"), Vt = /* @__PURE__ */ s((e, r) => {
|
|
1089
1089
|
if (e.length === 0)
|
|
1090
1090
|
return r.classGroupId;
|
|
1091
|
-
const o = e[0], t = r.nextPart.get(o), n = t ?
|
|
1091
|
+
const o = e[0], t = r.nextPart.get(o), n = t ? Vt(e.slice(1), t) : void 0;
|
|
1092
1092
|
if (n)
|
|
1093
1093
|
return n;
|
|
1094
1094
|
if (r.validators.length === 0)
|
|
@@ -1103,7 +1103,7 @@ const Mo = /* @__PURE__ */ j({
|
|
|
1103
1103
|
if (o)
|
|
1104
1104
|
return "arbitrary.." + o;
|
|
1105
1105
|
}
|
|
1106
|
-
}, "getGroupIdForArbitraryProperty"),
|
|
1106
|
+
}, "getGroupIdForArbitraryProperty"), Ko = /* @__PURE__ */ s((e) => {
|
|
1107
1107
|
const {
|
|
1108
1108
|
theme: r,
|
|
1109
1109
|
classGroups: o
|
|
@@ -1122,7 +1122,7 @@ const Mo = /* @__PURE__ */ j({
|
|
|
1122
1122
|
return;
|
|
1123
1123
|
}
|
|
1124
1124
|
if (typeof n == "function") {
|
|
1125
|
-
if (
|
|
1125
|
+
if (Zo(n)) {
|
|
1126
1126
|
dt(n(t), r, o, t);
|
|
1127
1127
|
return;
|
|
1128
1128
|
}
|
|
@@ -1144,7 +1144,7 @@ const Mo = /* @__PURE__ */ j({
|
|
|
1144
1144
|
validators: []
|
|
1145
1145
|
}), o = o.nextPart.get(t);
|
|
1146
1146
|
}), o;
|
|
1147
|
-
}, "getPart"),
|
|
1147
|
+
}, "getPart"), Zo = /* @__PURE__ */ s((e) => e.isThemeGetter, "isThemeGetter"), Yo = /* @__PURE__ */ s((e) => {
|
|
1148
1148
|
if (e < 1)
|
|
1149
1149
|
return {
|
|
1150
1150
|
get: /* @__PURE__ */ s(() => {
|
|
@@ -1168,19 +1168,19 @@ const Mo = /* @__PURE__ */ j({
|
|
|
1168
1168
|
o.has(a) ? o.set(a, i) : n(a, i);
|
|
1169
1169
|
}
|
|
1170
1170
|
};
|
|
1171
|
-
}, "createLruCache"), ut = "!", ht = ":",
|
|
1171
|
+
}, "createLruCache"), ut = "!", ht = ":", Jo = ht.length, Qo = /* @__PURE__ */ s((e) => {
|
|
1172
1172
|
const {
|
|
1173
1173
|
prefix: r,
|
|
1174
1174
|
experimentalParseClassName: o
|
|
1175
1175
|
} = e;
|
|
1176
1176
|
let t = /* @__PURE__ */ s((n) => {
|
|
1177
1177
|
const a = [];
|
|
1178
|
-
let i = 0,
|
|
1178
|
+
let i = 0, c = 0, f = 0, C;
|
|
1179
1179
|
for (let g = 0; g < n.length; g++) {
|
|
1180
1180
|
let T = n[g];
|
|
1181
|
-
if (i === 0 &&
|
|
1181
|
+
if (i === 0 && c === 0) {
|
|
1182
1182
|
if (T === ht) {
|
|
1183
|
-
a.push(n.slice(f, g)), f = g +
|
|
1183
|
+
a.push(n.slice(f, g)), f = g + Jo;
|
|
1184
1184
|
continue;
|
|
1185
1185
|
}
|
|
1186
1186
|
if (T === "/") {
|
|
@@ -1188,13 +1188,13 @@ const Mo = /* @__PURE__ */ j({
|
|
|
1188
1188
|
continue;
|
|
1189
1189
|
}
|
|
1190
1190
|
}
|
|
1191
|
-
T === "[" ? i++ : T === "]" ? i-- : T === "(" ?
|
|
1191
|
+
T === "[" ? i++ : T === "]" ? i-- : T === "(" ? c++ : T === ")" && c--;
|
|
1192
1192
|
}
|
|
1193
|
-
const
|
|
1193
|
+
const h = a.length === 0 ? n : n.substring(f), d = Xo(h), m = d !== h, p = C && C > f ? C - f : void 0;
|
|
1194
1194
|
return {
|
|
1195
1195
|
modifiers: a,
|
|
1196
1196
|
hasImportantModifier: m,
|
|
1197
|
-
baseClassName:
|
|
1197
|
+
baseClassName: d,
|
|
1198
1198
|
maybePostfixModifierPosition: p
|
|
1199
1199
|
};
|
|
1200
1200
|
}, "parseClassName");
|
|
@@ -1216,7 +1216,7 @@ const Mo = /* @__PURE__ */ j({
|
|
|
1216
1216
|
}), "parseClassName");
|
|
1217
1217
|
}
|
|
1218
1218
|
return t;
|
|
1219
|
-
}, "createParseClassName"),
|
|
1219
|
+
}, "createParseClassName"), Xo = /* @__PURE__ */ s((e) => e.endsWith(ut) ? e.substring(0, e.length - 1) : e.startsWith(ut) ? e.substring(1) : e, "stripImportantModifier"), _o = /* @__PURE__ */ s((e) => {
|
|
1220
1220
|
const r = Object.fromEntries(e.orderSensitiveModifiers.map((t) => [t, !0]));
|
|
1221
1221
|
return /* @__PURE__ */ s((t) => {
|
|
1222
1222
|
if (t.length <= 1)
|
|
@@ -1227,63 +1227,63 @@ const Mo = /* @__PURE__ */ j({
|
|
|
1227
1227
|
i[0] === "[" || r[i] ? (n.push(...a.sort(), i), a = []) : a.push(i);
|
|
1228
1228
|
}), n.push(...a.sort()), n;
|
|
1229
1229
|
}, "sortModifiers");
|
|
1230
|
-
}, "createSortModifiers"),
|
|
1231
|
-
cache:
|
|
1232
|
-
parseClassName:
|
|
1233
|
-
sortModifiers:
|
|
1230
|
+
}, "createSortModifiers"), er = /* @__PURE__ */ s((e) => ({
|
|
1231
|
+
cache: Yo(e.cacheSize),
|
|
1232
|
+
parseClassName: Qo(e),
|
|
1233
|
+
sortModifiers: _o(e),
|
|
1234
1234
|
...Ho(e)
|
|
1235
|
-
}), "createConfigUtils"),
|
|
1235
|
+
}), "createConfigUtils"), tr = /\s+/, or = /* @__PURE__ */ s((e, r) => {
|
|
1236
1236
|
const {
|
|
1237
1237
|
parseClassName: o,
|
|
1238
1238
|
getClassGroupId: t,
|
|
1239
1239
|
getConflictingClassGroupIds: n,
|
|
1240
1240
|
sortModifiers: a
|
|
1241
|
-
} = r, i = [],
|
|
1241
|
+
} = r, i = [], c = e.trim().split(tr);
|
|
1242
1242
|
let f = "";
|
|
1243
|
-
for (let C =
|
|
1244
|
-
const
|
|
1245
|
-
isExternal:
|
|
1243
|
+
for (let C = c.length - 1; C >= 0; C -= 1) {
|
|
1244
|
+
const h = c[C], {
|
|
1245
|
+
isExternal: d,
|
|
1246
1246
|
modifiers: m,
|
|
1247
1247
|
hasImportantModifier: p,
|
|
1248
1248
|
baseClassName: g,
|
|
1249
1249
|
maybePostfixModifierPosition: T
|
|
1250
|
-
} = o(
|
|
1251
|
-
if (
|
|
1252
|
-
f =
|
|
1250
|
+
} = o(h);
|
|
1251
|
+
if (d) {
|
|
1252
|
+
f = h + (f.length > 0 ? " " + f : f);
|
|
1253
1253
|
continue;
|
|
1254
1254
|
}
|
|
1255
|
-
let
|
|
1255
|
+
let W = !!T, Q = t(W ? g.substring(0, T) : g);
|
|
1256
1256
|
if (!Q) {
|
|
1257
|
-
if (!
|
|
1258
|
-
f =
|
|
1257
|
+
if (!W) {
|
|
1258
|
+
f = h + (f.length > 0 ? " " + f : f);
|
|
1259
1259
|
continue;
|
|
1260
1260
|
}
|
|
1261
1261
|
if (Q = t(g), !Q) {
|
|
1262
|
-
f =
|
|
1262
|
+
f = h + (f.length > 0 ? " " + f : f);
|
|
1263
1263
|
continue;
|
|
1264
1264
|
}
|
|
1265
|
-
|
|
1265
|
+
W = !1;
|
|
1266
1266
|
}
|
|
1267
1267
|
const ze = a(m).join(":"), Se = p ? ze + ut : ze, ue = Se + Q;
|
|
1268
1268
|
if (i.includes(ue))
|
|
1269
1269
|
continue;
|
|
1270
1270
|
i.push(ue);
|
|
1271
|
-
const pe = n(Q,
|
|
1271
|
+
const pe = n(Q, W);
|
|
1272
1272
|
for (let he = 0; he < pe.length; ++he) {
|
|
1273
1273
|
const re = pe[he];
|
|
1274
1274
|
i.push(Se + re);
|
|
1275
1275
|
}
|
|
1276
|
-
f =
|
|
1276
|
+
f = h + (f.length > 0 ? " " + f : f);
|
|
1277
1277
|
}
|
|
1278
1278
|
return f;
|
|
1279
1279
|
}, "mergeClassList");
|
|
1280
|
-
function
|
|
1280
|
+
function rr() {
|
|
1281
1281
|
let e = 0, r, o, t = "";
|
|
1282
1282
|
for (; e < arguments.length; )
|
|
1283
1283
|
(r = arguments[e++]) && (o = jt(r)) && (t && (t += " "), t += o);
|
|
1284
1284
|
return t;
|
|
1285
1285
|
}
|
|
1286
|
-
s(
|
|
1286
|
+
s(rr, "twJoin");
|
|
1287
1287
|
const jt = /* @__PURE__ */ s((e) => {
|
|
1288
1288
|
if (typeof e == "string")
|
|
1289
1289
|
return e;
|
|
@@ -1292,41 +1292,41 @@ const jt = /* @__PURE__ */ s((e) => {
|
|
|
1292
1292
|
e[t] && (r = jt(e[t])) && (o && (o += " "), o += r);
|
|
1293
1293
|
return o;
|
|
1294
1294
|
}, "toValue");
|
|
1295
|
-
function
|
|
1295
|
+
function sr(e, ...r) {
|
|
1296
1296
|
let o, t, n, a = i;
|
|
1297
1297
|
function i(f) {
|
|
1298
|
-
const C = r.reduce((
|
|
1299
|
-
return o =
|
|
1298
|
+
const C = r.reduce((h, d) => d(h), e());
|
|
1299
|
+
return o = er(C), t = o.cache.get, n = o.cache.set, a = c, c(f);
|
|
1300
1300
|
}
|
|
1301
1301
|
s(i, "initTailwindMerge");
|
|
1302
|
-
function
|
|
1302
|
+
function c(f) {
|
|
1303
1303
|
const C = t(f);
|
|
1304
1304
|
if (C)
|
|
1305
1305
|
return C;
|
|
1306
|
-
const
|
|
1307
|
-
return n(f,
|
|
1306
|
+
const h = or(f, o);
|
|
1307
|
+
return n(f, h), h;
|
|
1308
1308
|
}
|
|
1309
|
-
return s(
|
|
1310
|
-
return a(
|
|
1309
|
+
return s(c, "tailwindMerge"), /* @__PURE__ */ s(function() {
|
|
1310
|
+
return a(rr.apply(null, arguments));
|
|
1311
1311
|
}, "callTailwindMerge");
|
|
1312
1312
|
}
|
|
1313
|
-
s(
|
|
1313
|
+
s(sr, "createTailwindMerge");
|
|
1314
1314
|
const Z = /* @__PURE__ */ s((e) => {
|
|
1315
1315
|
const r = /* @__PURE__ */ s((o) => o[e] || [], "themeGetter");
|
|
1316
1316
|
return r.isThemeGetter = !0, r;
|
|
1317
|
-
}, "fromTheme"), Rt = /^\[(?:(\w[\w-]*):)?(.+)\]$/i, Nt = /^\((?:(\w[\w-]*):)?(.+)\)$/i,
|
|
1317
|
+
}, "fromTheme"), Rt = /^\[(?:(\w[\w-]*):)?(.+)\]$/i, Nt = /^\((?:(\w[\w-]*):)?(.+)\)$/i, nr = /^\d+\/\d+$/, ar = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, ir = /\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$/, lr = /^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/, cr = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, dr = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, Fe = /* @__PURE__ */ s((e) => nr.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) => ar.test(e), "isTshirtSize"), ur = /* @__PURE__ */ s(() => !0, "isAny"), hr = /* @__PURE__ */ s((e) => (
|
|
1318
1318
|
// `colorFunctionRegex` check is necessary because color functions can have percentages in them which which would be incorrectly classified as lengths.
|
|
1319
1319
|
// For example, `hsl(0 0% 0%)` would be classified as a length without this check.
|
|
1320
1320
|
// I could also use lookbehind assertion in `lengthUnitRegex` but that isn't supported widely enough.
|
|
1321
|
-
|
|
1322
|
-
), "isLengthOnly"), Gt = /* @__PURE__ */ s(() => !1, "isNever"),
|
|
1321
|
+
ir.test(e) && !lr.test(e)
|
|
1322
|
+
), "isLengthOnly"), Gt = /* @__PURE__ */ s(() => !1, "isNever"), fr = /* @__PURE__ */ s((e) => cr.test(e), "isShadow"), gr = /* @__PURE__ */ s((e) => dr.test(e), "isImage"), mr = /* @__PURE__ */ s((e) => !x(e) && !y(e), "isAnyNonArbitrary"), br = /* @__PURE__ */ s((e) => De(e, Wt, Gt), "isArbitrarySize"), x = /* @__PURE__ */ s((e) => Rt.test(e), "isArbitraryValue"), Me = /* @__PURE__ */ s((e) => De(e, Ht, hr), "isArbitraryLength"), it = /* @__PURE__ */ s((e) => De(e, kr, I), "isArbitraryNumber"), Et = /* @__PURE__ */ s((e) => De(e, Ot, Gt), "isArbitraryPosition"), vr = /* @__PURE__ */ s((e) => De(e, Ut, gr), "isArbitraryImage"), Ye = /* @__PURE__ */ s((e) => De(e, qt, fr), "isArbitraryShadow"), y = /* @__PURE__ */ s((e) => Nt.test(e), "isArbitraryVariable"), Ue = /* @__PURE__ */ s((e) => Ve(e, Ht), "isArbitraryVariableLength"), pr = /* @__PURE__ */ s((e) => Ve(e, wr), "isArbitraryVariableFamilyName"), Lt = /* @__PURE__ */ s((e) => Ve(e, Ot), "isArbitraryVariablePosition"), xr = /* @__PURE__ */ s((e) => Ve(e, Wt), "isArbitraryVariableSize"), yr = /* @__PURE__ */ s((e) => Ve(e, Ut), "isArbitraryVariableImage"), Je = /* @__PURE__ */ s((e) => Ve(e, qt, !0), "isArbitraryVariableShadow"), De = /* @__PURE__ */ s((e, r, o) => {
|
|
1323
1323
|
const t = Rt.exec(e);
|
|
1324
1324
|
return t ? t[1] ? r(t[1]) : o(t[2]) : !1;
|
|
1325
|
-
}, "getIsArbitraryValue"),
|
|
1325
|
+
}, "getIsArbitraryValue"), Ve = /* @__PURE__ */ s((e, r, o = !1) => {
|
|
1326
1326
|
const t = Nt.exec(e);
|
|
1327
1327
|
return t ? t[1] ? r(t[1]) : o : !1;
|
|
1328
|
-
}, "getIsArbitraryVariable"), Ot = /* @__PURE__ */ s((e) => e === "position" || e === "percentage", "isLabelPosition"), Ut = /* @__PURE__ */ s((e) => e === "image" || e === "url", "isLabelImage"),
|
|
1329
|
-
const e = Z("color"), r = Z("font"), o = Z("text"), t = Z("font-weight"), n = Z("tracking"), a = Z("leading"), i = Z("breakpoint"),
|
|
1328
|
+
}, "getIsArbitraryVariable"), Ot = /* @__PURE__ */ s((e) => e === "position" || e === "percentage", "isLabelPosition"), Ut = /* @__PURE__ */ s((e) => e === "image" || e === "url", "isLabelImage"), Wt = /* @__PURE__ */ s((e) => e === "length" || e === "size" || e === "bg-size", "isLabelSize"), Ht = /* @__PURE__ */ s((e) => e === "length", "isLabelLength"), kr = /* @__PURE__ */ s((e) => e === "number", "isLabelNumber"), wr = /* @__PURE__ */ s((e) => e === "family-name", "isLabelFamilyName"), qt = /* @__PURE__ */ s((e) => e === "shadow", "isLabelShadow"), Cr = /* @__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"), c = Z("container"), f = Z("spacing"), C = Z("radius"), h = Z("shadow"), d = Z("inset-shadow"), m = Z("text-shadow"), p = Z("drop-shadow"), g = Z("blur"), T = Z("perspective"), W = Z("aspect"), Q = Z("ease"), ze = Z("animate"), Se = /* @__PURE__ */ s(() => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"], "scaleBreak"), ue = /* @__PURE__ */ s(() => [
|
|
1330
1330
|
"center",
|
|
1331
1331
|
"top",
|
|
1332
1332
|
"bottom",
|
|
@@ -1344,13 +1344,13 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
1344
1344
|
"bottom-left",
|
|
1345
1345
|
// Deprecated since Tailwind CSS v4.1.0, see https://github.com/tailwindlabs/tailwindcss/pull/17378
|
|
1346
1346
|
"left-bottom"
|
|
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(() => [
|
|
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(() => [Fe, "full", "auto", ...S()], "scaleInset"), ce = /* @__PURE__ */ s(() => [we, "none", "subgrid", y, x], "scaleGridTemplateColsRows"), fe = /* @__PURE__ */ s(() => ["auto", {
|
|
1348
1348
|
span: ["full", we, y, x]
|
|
1349
|
-
}, we, y, x], "scaleGridColRowStartAndEnd"), ge = /* @__PURE__ */ s(() => [we, "auto", y, x], "scaleGridColRowStartOrEnd"),
|
|
1349
|
+
}, we, y, x], "scaleGridColRowStartAndEnd"), ge = /* @__PURE__ */ s(() => [we, "auto", y, x], "scaleGridColRowStartOrEnd"), qe = /* @__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"), H = /* @__PURE__ */ s(() => ["auto", ...S()], "scaleMargin"), ie = /* @__PURE__ */ s(() => [Fe, "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
1350
|
position: [y, x]
|
|
1351
1351
|
}], "scaleBgPosition"), je = /* @__PURE__ */ s(() => ["no-repeat", {
|
|
1352
1352
|
repeat: ["", "x", "y", "space", "round"]
|
|
1353
|
-
}], "scaleBgRepeat"), xe = /* @__PURE__ */ s(() => ["auto", "cover", "contain",
|
|
1353
|
+
}], "scaleBgRepeat"), xe = /* @__PURE__ */ s(() => ["auto", "cover", "contain", xr, br, {
|
|
1354
1354
|
size: [y, x]
|
|
1355
1355
|
}], "scaleBgSize"), ye = /* @__PURE__ */ s(() => [at, Ue, Me], "scaleGradientStopPosition"), N = /* @__PURE__ */ s(() => [
|
|
1356
1356
|
// Deprecated since Tailwind CSS v4.0.0
|
|
@@ -1360,14 +1360,14 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
1360
1360
|
C,
|
|
1361
1361
|
y,
|
|
1362
1362
|
x
|
|
1363
|
-
], "scaleRadius"),
|
|
1363
|
+
], "scaleRadius"), q = /* @__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(() => [
|
|
1364
1364
|
// Deprecated since Tailwind CSS v4.0.0
|
|
1365
1365
|
"",
|
|
1366
1366
|
"none",
|
|
1367
1367
|
g,
|
|
1368
1368
|
y,
|
|
1369
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(() => [
|
|
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(() => [Fe, "full", ...S()], "scaleTranslate");
|
|
1371
1371
|
return {
|
|
1372
1372
|
cacheSize: 500,
|
|
1373
1373
|
theme: {
|
|
@@ -1375,11 +1375,11 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
1375
1375
|
aspect: ["video"],
|
|
1376
1376
|
blur: [ve],
|
|
1377
1377
|
breakpoint: [ve],
|
|
1378
|
-
color: [
|
|
1378
|
+
color: [ur],
|
|
1379
1379
|
container: [ve],
|
|
1380
1380
|
"drop-shadow": [ve],
|
|
1381
1381
|
ease: ["in", "out", "in-out"],
|
|
1382
|
-
font: [
|
|
1382
|
+
font: [mr],
|
|
1383
1383
|
"font-weight": ["thin", "extralight", "light", "normal", "medium", "semibold", "bold", "extrabold", "black"],
|
|
1384
1384
|
"inset-shadow": [ve],
|
|
1385
1385
|
leading: ["none", "tight", "snug", "normal", "relaxed", "loose"],
|
|
@@ -1400,7 +1400,7 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
1400
1400
|
* @see https://tailwindcss.com/docs/aspect-ratio
|
|
1401
1401
|
*/
|
|
1402
1402
|
aspect: [{
|
|
1403
|
-
aspect: ["auto", "square",
|
|
1403
|
+
aspect: ["auto", "square", Fe, x, y, W]
|
|
1404
1404
|
}],
|
|
1405
1405
|
/**
|
|
1406
1406
|
* Container
|
|
@@ -1413,7 +1413,7 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
1413
1413
|
* @see https://tailwindcss.com/docs/columns
|
|
1414
1414
|
*/
|
|
1415
1415
|
columns: [{
|
|
1416
|
-
columns: [I, x, y,
|
|
1416
|
+
columns: [I, x, y, c]
|
|
1417
1417
|
}],
|
|
1418
1418
|
/**
|
|
1419
1419
|
* Break After
|
|
@@ -1623,7 +1623,7 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
1623
1623
|
* @see https://tailwindcss.com/docs/flex-basis
|
|
1624
1624
|
*/
|
|
1625
1625
|
basis: [{
|
|
1626
|
-
basis: [
|
|
1626
|
+
basis: [Fe, "full", "auto", c, ...S()]
|
|
1627
1627
|
}],
|
|
1628
1628
|
/**
|
|
1629
1629
|
* Flex Direction
|
|
@@ -1644,7 +1644,7 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
1644
1644
|
* @see https://tailwindcss.com/docs/flex
|
|
1645
1645
|
*/
|
|
1646
1646
|
flex: [{
|
|
1647
|
-
flex: [I,
|
|
1647
|
+
flex: [I, Fe, "auto", "initial", "none", x]
|
|
1648
1648
|
}],
|
|
1649
1649
|
/**
|
|
1650
1650
|
* Flex Grow
|
|
@@ -1735,14 +1735,14 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
1735
1735
|
* @see https://tailwindcss.com/docs/grid-auto-columns
|
|
1736
1736
|
*/
|
|
1737
1737
|
"auto-cols": [{
|
|
1738
|
-
"auto-cols":
|
|
1738
|
+
"auto-cols": qe()
|
|
1739
1739
|
}],
|
|
1740
1740
|
/**
|
|
1741
1741
|
* Grid Auto Rows
|
|
1742
1742
|
* @see https://tailwindcss.com/docs/grid-auto-rows
|
|
1743
1743
|
*/
|
|
1744
1744
|
"auto-rows": [{
|
|
1745
|
-
"auto-rows":
|
|
1745
|
+
"auto-rows": qe()
|
|
1746
1746
|
}],
|
|
1747
1747
|
/**
|
|
1748
1748
|
* Gap
|
|
@@ -1901,63 +1901,63 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
1901
1901
|
* @see https://tailwindcss.com/docs/margin
|
|
1902
1902
|
*/
|
|
1903
1903
|
m: [{
|
|
1904
|
-
m:
|
|
1904
|
+
m: H()
|
|
1905
1905
|
}],
|
|
1906
1906
|
/**
|
|
1907
1907
|
* Margin X
|
|
1908
1908
|
* @see https://tailwindcss.com/docs/margin
|
|
1909
1909
|
*/
|
|
1910
1910
|
mx: [{
|
|
1911
|
-
mx:
|
|
1911
|
+
mx: H()
|
|
1912
1912
|
}],
|
|
1913
1913
|
/**
|
|
1914
1914
|
* Margin Y
|
|
1915
1915
|
* @see https://tailwindcss.com/docs/margin
|
|
1916
1916
|
*/
|
|
1917
1917
|
my: [{
|
|
1918
|
-
my:
|
|
1918
|
+
my: H()
|
|
1919
1919
|
}],
|
|
1920
1920
|
/**
|
|
1921
1921
|
* Margin Start
|
|
1922
1922
|
* @see https://tailwindcss.com/docs/margin
|
|
1923
1923
|
*/
|
|
1924
1924
|
ms: [{
|
|
1925
|
-
ms:
|
|
1925
|
+
ms: H()
|
|
1926
1926
|
}],
|
|
1927
1927
|
/**
|
|
1928
1928
|
* Margin End
|
|
1929
1929
|
* @see https://tailwindcss.com/docs/margin
|
|
1930
1930
|
*/
|
|
1931
1931
|
me: [{
|
|
1932
|
-
me:
|
|
1932
|
+
me: H()
|
|
1933
1933
|
}],
|
|
1934
1934
|
/**
|
|
1935
1935
|
* Margin Top
|
|
1936
1936
|
* @see https://tailwindcss.com/docs/margin
|
|
1937
1937
|
*/
|
|
1938
1938
|
mt: [{
|
|
1939
|
-
mt:
|
|
1939
|
+
mt: H()
|
|
1940
1940
|
}],
|
|
1941
1941
|
/**
|
|
1942
1942
|
* Margin Right
|
|
1943
1943
|
* @see https://tailwindcss.com/docs/margin
|
|
1944
1944
|
*/
|
|
1945
1945
|
mr: [{
|
|
1946
|
-
mr:
|
|
1946
|
+
mr: H()
|
|
1947
1947
|
}],
|
|
1948
1948
|
/**
|
|
1949
1949
|
* Margin Bottom
|
|
1950
1950
|
* @see https://tailwindcss.com/docs/margin
|
|
1951
1951
|
*/
|
|
1952
1952
|
mb: [{
|
|
1953
|
-
mb:
|
|
1953
|
+
mb: H()
|
|
1954
1954
|
}],
|
|
1955
1955
|
/**
|
|
1956
1956
|
* Margin Left
|
|
1957
1957
|
* @see https://tailwindcss.com/docs/margin
|
|
1958
1958
|
*/
|
|
1959
1959
|
ml: [{
|
|
1960
|
-
ml:
|
|
1960
|
+
ml: H()
|
|
1961
1961
|
}],
|
|
1962
1962
|
/**
|
|
1963
1963
|
* Space Between X
|
|
@@ -1998,7 +1998,7 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
1998
1998
|
* @see https://tailwindcss.com/docs/width
|
|
1999
1999
|
*/
|
|
2000
2000
|
w: [{
|
|
2001
|
-
w: [
|
|
2001
|
+
w: [c, "screen", ...ie()]
|
|
2002
2002
|
}],
|
|
2003
2003
|
/**
|
|
2004
2004
|
* Min-Width
|
|
@@ -2006,7 +2006,7 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
2006
2006
|
*/
|
|
2007
2007
|
"min-w": [{
|
|
2008
2008
|
"min-w": [
|
|
2009
|
-
|
|
2009
|
+
c,
|
|
2010
2010
|
"screen",
|
|
2011
2011
|
/** Deprecated. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
|
|
2012
2012
|
"none",
|
|
@@ -2019,7 +2019,7 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
2019
2019
|
*/
|
|
2020
2020
|
"max-w": [{
|
|
2021
2021
|
"max-w": [
|
|
2022
|
-
|
|
2022
|
+
c,
|
|
2023
2023
|
"screen",
|
|
2024
2024
|
"none",
|
|
2025
2025
|
/** Deprecated since Tailwind CSS v4.0.0. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
|
|
@@ -2091,7 +2091,7 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
2091
2091
|
* @see https://tailwindcss.com/docs/font-family
|
|
2092
2092
|
*/
|
|
2093
2093
|
"font-family": [{
|
|
2094
|
-
font: [
|
|
2094
|
+
font: [pr, x, r]
|
|
2095
2095
|
}],
|
|
2096
2096
|
/**
|
|
2097
2097
|
* Font Variant Numeric
|
|
@@ -2346,7 +2346,7 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
2346
2346
|
}, we, y, x],
|
|
2347
2347
|
radial: ["", y, x],
|
|
2348
2348
|
conic: [we, y, x]
|
|
2349
|
-
},
|
|
2349
|
+
}, yr, vr]
|
|
2350
2350
|
}],
|
|
2351
2351
|
/**
|
|
2352
2352
|
* Background Color
|
|
@@ -2510,70 +2510,70 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
2510
2510
|
* @see https://tailwindcss.com/docs/border-width
|
|
2511
2511
|
*/
|
|
2512
2512
|
"border-w": [{
|
|
2513
|
-
border:
|
|
2513
|
+
border: q()
|
|
2514
2514
|
}],
|
|
2515
2515
|
/**
|
|
2516
2516
|
* Border Width X
|
|
2517
2517
|
* @see https://tailwindcss.com/docs/border-width
|
|
2518
2518
|
*/
|
|
2519
2519
|
"border-w-x": [{
|
|
2520
|
-
"border-x":
|
|
2520
|
+
"border-x": q()
|
|
2521
2521
|
}],
|
|
2522
2522
|
/**
|
|
2523
2523
|
* Border Width Y
|
|
2524
2524
|
* @see https://tailwindcss.com/docs/border-width
|
|
2525
2525
|
*/
|
|
2526
2526
|
"border-w-y": [{
|
|
2527
|
-
"border-y":
|
|
2527
|
+
"border-y": q()
|
|
2528
2528
|
}],
|
|
2529
2529
|
/**
|
|
2530
2530
|
* Border Width Start
|
|
2531
2531
|
* @see https://tailwindcss.com/docs/border-width
|
|
2532
2532
|
*/
|
|
2533
2533
|
"border-w-s": [{
|
|
2534
|
-
"border-s":
|
|
2534
|
+
"border-s": q()
|
|
2535
2535
|
}],
|
|
2536
2536
|
/**
|
|
2537
2537
|
* Border Width End
|
|
2538
2538
|
* @see https://tailwindcss.com/docs/border-width
|
|
2539
2539
|
*/
|
|
2540
2540
|
"border-w-e": [{
|
|
2541
|
-
"border-e":
|
|
2541
|
+
"border-e": q()
|
|
2542
2542
|
}],
|
|
2543
2543
|
/**
|
|
2544
2544
|
* Border Width Top
|
|
2545
2545
|
* @see https://tailwindcss.com/docs/border-width
|
|
2546
2546
|
*/
|
|
2547
2547
|
"border-w-t": [{
|
|
2548
|
-
"border-t":
|
|
2548
|
+
"border-t": q()
|
|
2549
2549
|
}],
|
|
2550
2550
|
/**
|
|
2551
2551
|
* Border Width Right
|
|
2552
2552
|
* @see https://tailwindcss.com/docs/border-width
|
|
2553
2553
|
*/
|
|
2554
2554
|
"border-w-r": [{
|
|
2555
|
-
"border-r":
|
|
2555
|
+
"border-r": q()
|
|
2556
2556
|
}],
|
|
2557
2557
|
/**
|
|
2558
2558
|
* Border Width Bottom
|
|
2559
2559
|
* @see https://tailwindcss.com/docs/border-width
|
|
2560
2560
|
*/
|
|
2561
2561
|
"border-w-b": [{
|
|
2562
|
-
"border-b":
|
|
2562
|
+
"border-b": q()
|
|
2563
2563
|
}],
|
|
2564
2564
|
/**
|
|
2565
2565
|
* Border Width Left
|
|
2566
2566
|
* @see https://tailwindcss.com/docs/border-width
|
|
2567
2567
|
*/
|
|
2568
2568
|
"border-w-l": [{
|
|
2569
|
-
"border-l":
|
|
2569
|
+
"border-l": q()
|
|
2570
2570
|
}],
|
|
2571
2571
|
/**
|
|
2572
2572
|
* Divide Width X
|
|
2573
2573
|
* @see https://tailwindcss.com/docs/border-width#between-children
|
|
2574
2574
|
*/
|
|
2575
2575
|
"divide-x": [{
|
|
2576
|
-
"divide-x":
|
|
2576
|
+
"divide-x": q()
|
|
2577
2577
|
}],
|
|
2578
2578
|
/**
|
|
2579
2579
|
* Divide Width X Reverse
|
|
@@ -2585,7 +2585,7 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
2585
2585
|
* @see https://tailwindcss.com/docs/border-width#between-children
|
|
2586
2586
|
*/
|
|
2587
2587
|
"divide-y": [{
|
|
2588
|
-
"divide-y":
|
|
2588
|
+
"divide-y": q()
|
|
2589
2589
|
}],
|
|
2590
2590
|
/**
|
|
2591
2591
|
* Divide Width Y Reverse
|
|
@@ -2716,7 +2716,7 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
2716
2716
|
// Deprecated since Tailwind CSS v4.0.0
|
|
2717
2717
|
"",
|
|
2718
2718
|
"none",
|
|
2719
|
-
|
|
2719
|
+
h,
|
|
2720
2720
|
Je,
|
|
2721
2721
|
Ye
|
|
2722
2722
|
]
|
|
@@ -2733,7 +2733,7 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
2733
2733
|
* @see https://tailwindcss.com/docs/box-shadow#adding-an-inset-shadow
|
|
2734
2734
|
*/
|
|
2735
2735
|
"inset-shadow": [{
|
|
2736
|
-
"inset-shadow": ["none",
|
|
2736
|
+
"inset-shadow": ["none", d, Je, Ye]
|
|
2737
2737
|
}],
|
|
2738
2738
|
/**
|
|
2739
2739
|
* Inset Box Shadow Color
|
|
@@ -2747,7 +2747,7 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
2747
2747
|
* @see https://tailwindcss.com/docs/box-shadow#adding-a-ring
|
|
2748
2748
|
*/
|
|
2749
2749
|
"ring-w": [{
|
|
2750
|
-
ring:
|
|
2750
|
+
ring: q()
|
|
2751
2751
|
}],
|
|
2752
2752
|
/**
|
|
2753
2753
|
* Ring Width Inset
|
|
@@ -2786,7 +2786,7 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
2786
2786
|
* @see https://tailwindcss.com/docs/box-shadow#adding-an-inset-ring
|
|
2787
2787
|
*/
|
|
2788
2788
|
"inset-ring-w": [{
|
|
2789
|
-
"inset-ring":
|
|
2789
|
+
"inset-ring": q()
|
|
2790
2790
|
}],
|
|
2791
2791
|
/**
|
|
2792
2792
|
* Inset Ring Color
|
|
@@ -3795,7 +3795,7 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
3795
3795
|
},
|
|
3796
3796
|
orderSensitiveModifiers: ["*", "**", "after", "backdrop", "before", "details-content", "file", "first-letter", "first-line", "marker", "placeholder", "selection"]
|
|
3797
3797
|
};
|
|
3798
|
-
}, "getDefaultConfig"),
|
|
3798
|
+
}, "getDefaultConfig"), Sr = /* @__PURE__ */ sr(Cr), Qe = {
|
|
3799
3799
|
default: {
|
|
3800
3800
|
solid: {
|
|
3801
3801
|
base: "bg-theme-0 dark:bg-theme-700/40 text-theme-600 dark:text-theme-50",
|
|
@@ -4081,10 +4081,10 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4081
4081
|
icon: "text-red-600 dark:text-red-400"
|
|
4082
4082
|
}
|
|
4083
4083
|
}
|
|
4084
|
-
},
|
|
4084
|
+
}, Mr = {
|
|
4085
4085
|
key: 0,
|
|
4086
4086
|
class: "absolute inset-0 flex items-center justify-center"
|
|
4087
|
-
},
|
|
4087
|
+
}, Ar = /* @__PURE__ */ j({
|
|
4088
4088
|
__name: "FButton",
|
|
4089
4089
|
props: {
|
|
4090
4090
|
theme: { default: "default" },
|
|
@@ -4099,18 +4099,18 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4099
4099
|
class: { default: "" }
|
|
4100
4100
|
},
|
|
4101
4101
|
setup(e) {
|
|
4102
|
-
const r =
|
|
4102
|
+
const r = B(() => ({
|
|
4103
4103
|
icon: typeof e.icon == "string" ? e.icon : e.icon?.className,
|
|
4104
4104
|
iconAfter: typeof e.iconAfter == "string" ? e.iconAfter : e.iconAfter?.className
|
|
4105
|
-
})), o =
|
|
4105
|
+
})), o = B(() => e.href ? "a" : e.tag), t = B(() => ({
|
|
4106
4106
|
xxs: "size-2.5",
|
|
4107
4107
|
xs: "size-3",
|
|
4108
4108
|
sm: "size-3.5",
|
|
4109
4109
|
md: "size-4",
|
|
4110
4110
|
lg: "size-5",
|
|
4111
4111
|
xl: "size-6"
|
|
4112
|
-
})[e.size]), n =
|
|
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",
|
|
4112
|
+
})[e.size]), n = B(() => {
|
|
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", c = {
|
|
4114
4114
|
xxs: "px-2 py-0.5 text-[10px]",
|
|
4115
4115
|
xs: "px-3 py-1 text-[11px]",
|
|
4116
4116
|
sm: "px-3 py-1.5 text-xs",
|
|
@@ -4121,38 +4121,38 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4121
4121
|
md: "rounded-md",
|
|
4122
4122
|
lg: "rounded-lg",
|
|
4123
4123
|
full: "rounded-full"
|
|
4124
|
-
},
|
|
4124
|
+
}, h = Qe[e.theme]?.[e.design] || Qe.default[e.design], d = [
|
|
4125
4125
|
i,
|
|
4126
|
-
|
|
4126
|
+
c[e.size],
|
|
4127
4127
|
f,
|
|
4128
4128
|
C[e.rounding],
|
|
4129
|
-
|
|
4130
|
-
`border ${
|
|
4131
|
-
|
|
4129
|
+
h.base,
|
|
4130
|
+
`border ${h.border}`,
|
|
4131
|
+
h.hover
|
|
4132
4132
|
].filter(Boolean).join(" ");
|
|
4133
|
-
return
|
|
4134
|
-
}), a =
|
|
4133
|
+
return Sr(d, e.class);
|
|
4134
|
+
}), a = B(() => ({
|
|
4135
4135
|
design: (Qe[e.theme]?.[e.design] || Qe.default[e.design]).icon || ""
|
|
4136
4136
|
}));
|
|
4137
|
-
return (i,
|
|
4137
|
+
return (i, c) => (u(), _(lo(o.value), {
|
|
4138
4138
|
href: e.href,
|
|
4139
4139
|
class: z(n.value)
|
|
4140
4140
|
}, {
|
|
4141
4141
|
default: ee(() => [
|
|
4142
|
-
e.loading ? (
|
|
4143
|
-
|
|
4142
|
+
e.loading ? (u(), b("div", Mr, [
|
|
4143
|
+
V(gt, {
|
|
4144
4144
|
class: z(t.value)
|
|
4145
4145
|
}, null, 8, ["class"])
|
|
4146
4146
|
])) : E("", !0),
|
|
4147
4147
|
l("span", {
|
|
4148
4148
|
class: z(["flex items-center gap-2 transition-opacity duration-200 whitespace-nowrap", e.loading ? "opacity-0" : "opacity-100"])
|
|
4149
4149
|
}, [
|
|
4150
|
-
r.value.icon ? (
|
|
4150
|
+
r.value.icon ? (u(), b("span", {
|
|
4151
4151
|
key: 0,
|
|
4152
4152
|
class: z(["flex items-center size-[1.1em] mt-[-.07em]", [r.value.icon, a.value]])
|
|
4153
4153
|
}, null, 2)) : E("", !0),
|
|
4154
4154
|
Ce(i.$slots, "default"),
|
|
4155
|
-
r.value.iconAfter ? (
|
|
4155
|
+
r.value.iconAfter ? (u(), b("span", {
|
|
4156
4156
|
key: 1,
|
|
4157
4157
|
class: z(["flex items-center size-[1.1em] mt-[-.07em]", [r.value.iconAfter, a.value]])
|
|
4158
4158
|
}, null, 2)) : E("", !0)
|
|
@@ -4161,25 +4161,25 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4161
4161
|
_: 3
|
|
4162
4162
|
}, 8, ["href", "class"]));
|
|
4163
4163
|
}
|
|
4164
|
-
}),
|
|
4164
|
+
}), Ir = { 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" }, zr = { class: "flex-1 space-y-6" }, $r = {
|
|
4165
4165
|
key: 0,
|
|
4166
4166
|
class: "bg-white/5 backdrop-blur-sm rounded-2xl p-4 border border-white/10"
|
|
4167
|
-
},
|
|
4167
|
+
}, Er = { class: "text-sm text-white/70 leading-relaxed" }, Lr = {
|
|
4168
4168
|
key: 1,
|
|
4169
4169
|
class: "bg-white/5 backdrop-blur-sm rounded-2xl p-4 border border-white/10"
|
|
4170
|
-
},
|
|
4170
|
+
}, Tr = ["innerHTML"], Pr = {
|
|
4171
4171
|
key: 2,
|
|
4172
4172
|
class: "bg-white/5 backdrop-blur-sm rounded-2xl p-4 border border-white/10"
|
|
4173
|
-
},
|
|
4173
|
+
}, Br = { class: "text-sm text-white/70 leading-relaxed" }, Fr = {
|
|
4174
4174
|
key: 3,
|
|
4175
4175
|
class: "space-y-3"
|
|
4176
|
-
},
|
|
4176
|
+
}, Dr = { class: "grid grid-cols-2 gap-3" }, Vr = /* @__PURE__ */ j({
|
|
4177
4177
|
__name: "ElSelfAbout",
|
|
4178
4178
|
props: {
|
|
4179
4179
|
self: {}
|
|
4180
4180
|
},
|
|
4181
4181
|
setup(e) {
|
|
4182
|
-
const r =
|
|
4182
|
+
const r = B(() => [
|
|
4183
4183
|
{
|
|
4184
4184
|
key: "email",
|
|
4185
4185
|
condition: /* @__PURE__ */ s(() => !!e.self.email, "condition"),
|
|
@@ -4226,27 +4226,27 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4226
4226
|
}), "generate")
|
|
4227
4227
|
}
|
|
4228
4228
|
].filter((t) => t.condition()).map((t) => t.generate()));
|
|
4229
|
-
return (o, t) => (
|
|
4230
|
-
l("div",
|
|
4231
|
-
e.self.headline ? (
|
|
4229
|
+
return (o, t) => (u(), b("div", Ir, [
|
|
4230
|
+
l("div", zr, [
|
|
4231
|
+
e.self.headline ? (u(), b("div", $r, [
|
|
4232
4232
|
t[0] || (t[0] = l("h3", { class: "text-sm font-medium text-white/90 mb-2" }, " Professional Tagline ", -1)),
|
|
4233
|
-
l("div",
|
|
4233
|
+
l("div", Er, U(e.self.headline), 1)
|
|
4234
4234
|
])) : E("", !0),
|
|
4235
|
-
e.self.summary ? (
|
|
4235
|
+
e.self.summary ? (u(), b("div", Lr, [
|
|
4236
4236
|
t[1] || (t[1] = l("h3", { class: "text-sm font-medium text-white/90 mb-2" }, " About ", -1)),
|
|
4237
4237
|
l("div", {
|
|
4238
4238
|
class: "text-sm text-white/70 leading-relaxed",
|
|
4239
4239
|
innerHTML: e.self.summary
|
|
4240
|
-
}, null, 8,
|
|
4240
|
+
}, null, 8, Tr)
|
|
4241
4241
|
])) : E("", !0),
|
|
4242
|
-
e.self.entityType === "company" ? (
|
|
4242
|
+
e.self.entityType === "company" ? (u(), b("div", Pr, [
|
|
4243
4243
|
t[2] || (t[2] = l("h3", { class: "text-sm font-medium text-white/90 mb-2" }, " Company Info ", -1)),
|
|
4244
|
-
l("p",
|
|
4244
|
+
l("p", Br, " This is a company digital self representing " + U(e.self.name) + ". ", 1)
|
|
4245
4245
|
])) : E("", !0),
|
|
4246
|
-
r.value.length > 0 ? (
|
|
4246
|
+
r.value.length > 0 ? (u(), b("div", Fr, [
|
|
4247
4247
|
t[3] || (t[3] = l("h3", { class: "text-sm font-medium text-white/90" }, " Connect ", -1)),
|
|
4248
|
-
l("div",
|
|
4249
|
-
(
|
|
4248
|
+
l("div", Dr, [
|
|
4249
|
+
(u(!0), b(Ae, null, rt(r.value, (n) => (u(), _(Ar, {
|
|
4250
4250
|
key: n.title,
|
|
4251
4251
|
design: "ghost",
|
|
4252
4252
|
theme: "default",
|
|
@@ -4259,7 +4259,7 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4259
4259
|
l("i", {
|
|
4260
4260
|
class: z([n.icon, "size-4 mr-2"])
|
|
4261
4261
|
}, null, 2),
|
|
4262
|
-
|
|
4262
|
+
We(" " + U(n.title), 1)
|
|
4263
4263
|
]),
|
|
4264
4264
|
_: 2
|
|
4265
4265
|
}, 1032, ["href"]))), 128))
|
|
@@ -4268,55 +4268,55 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4268
4268
|
])
|
|
4269
4269
|
]));
|
|
4270
4270
|
}
|
|
4271
|
-
}),
|
|
4271
|
+
}), jr = { class: "flex flex-col h-full relative" }, Rr = {
|
|
4272
4272
|
key: 0,
|
|
4273
4273
|
class: "text-theme-600 py-16 flex flex-col items-center justify-center gap-2 text-sm"
|
|
4274
|
-
},
|
|
4274
|
+
}, Nr = {
|
|
4275
4275
|
key: 0,
|
|
4276
4276
|
class: "flex-shrink-0 size-8"
|
|
4277
|
-
},
|
|
4277
|
+
}, Gr = ["src", "alt"], Or = { class: "max-w-[70%]" }, Ur = { class: "text-sm leading-[1.5] whitespace-pre-wrap break-words" }, Wr = {
|
|
4278
4278
|
key: 0,
|
|
4279
4279
|
class: "flex gap-2 justify-start items-end mb-4"
|
|
4280
|
-
}, Hr = { class: "flex-shrink-0" }, qr = ["src", "alt"],
|
|
4280
|
+
}, Hr = { class: "flex-shrink-0" }, qr = ["src", "alt"], Kr = { class: "flex-shrink-0 pt-6 pb-2" }, Zr = ["placeholder", "disabled"], Yr = /* @__PURE__ */ j({
|
|
4281
4281
|
__name: "ElSelfChat",
|
|
4282
4282
|
props: {
|
|
4283
4283
|
selfController: {},
|
|
4284
4284
|
self: {}
|
|
4285
4285
|
},
|
|
4286
4286
|
setup(e) {
|
|
4287
|
-
const r = P(""), o = P(), t = P(), n =
|
|
4288
|
-
function a(
|
|
4289
|
-
const m =
|
|
4287
|
+
const r = P(""), o = P(), t = P(), n = B(() => tt(e.self));
|
|
4288
|
+
function a(h, d) {
|
|
4289
|
+
const m = h[d], p = h[d + 1];
|
|
4290
4290
|
return !p || p.sender !== m.sender;
|
|
4291
4291
|
}
|
|
4292
4292
|
s(a, "shouldShowAvatar"), Ie(async () => {
|
|
4293
4293
|
if (e.selfController && !e.selfController.textState.value.isConnected)
|
|
4294
4294
|
try {
|
|
4295
4295
|
await e.selfController.startTextConversation();
|
|
4296
|
-
} catch (
|
|
4297
|
-
console.error("Failed to start text conversation:",
|
|
4296
|
+
} catch (h) {
|
|
4297
|
+
console.error("Failed to start text conversation:", h);
|
|
4298
4298
|
}
|
|
4299
4299
|
});
|
|
4300
4300
|
async function i() {
|
|
4301
4301
|
if (!r.value.trim() || !e.selfController || !e.selfController.textState.value.isConnected)
|
|
4302
4302
|
return;
|
|
4303
|
-
const
|
|
4303
|
+
const h = r.value;
|
|
4304
4304
|
r.value = "", t.value && (t.value.style.height = "auto", t.value.focus());
|
|
4305
4305
|
try {
|
|
4306
|
-
await e.selfController.sendChatMessage(
|
|
4307
|
-
} catch (
|
|
4308
|
-
console.error("Error sending message:",
|
|
4306
|
+
await e.selfController.sendChatMessage(h), f();
|
|
4307
|
+
} catch (d) {
|
|
4308
|
+
console.error("Error sending message:", d);
|
|
4309
4309
|
}
|
|
4310
4310
|
}
|
|
4311
4311
|
s(i, "sendMessage");
|
|
4312
|
-
function h
|
|
4313
|
-
|
|
4312
|
+
function c(h) {
|
|
4313
|
+
h.key === "Enter" && !h.shiftKey && (h.preventDefault(), i());
|
|
4314
4314
|
}
|
|
4315
|
-
s(
|
|
4315
|
+
s(c, "handleKeydown");
|
|
4316
4316
|
function f() {
|
|
4317
4317
|
o.value && Xe(() => {
|
|
4318
|
-
const
|
|
4319
|
-
|
|
4318
|
+
const h = o.value;
|
|
4319
|
+
h.scrollTop = h.scrollHeight;
|
|
4320
4320
|
});
|
|
4321
4321
|
}
|
|
4322
4322
|
s(f, "scrollToBottom");
|
|
@@ -4324,23 +4324,23 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4324
4324
|
if (!t.value)
|
|
4325
4325
|
return;
|
|
4326
4326
|
t.value.style.height = "auto";
|
|
4327
|
-
const
|
|
4328
|
-
t.value.style.height = `${
|
|
4327
|
+
const h = Math.min(t.value.scrollHeight, 150);
|
|
4328
|
+
t.value.style.height = `${h}px`;
|
|
4329
4329
|
}
|
|
4330
4330
|
return s(C, "adjustTextareaHeight"), se(r, () => {
|
|
4331
4331
|
Xe(() => C());
|
|
4332
|
-
}), se(() => e.selfController?.sharedMessages.value, (
|
|
4333
|
-
|
|
4334
|
-
}, { immediate: !0, deep: !0 }), (
|
|
4335
|
-
e.selfController?.textState.value.connectionStatus !== "connected" ? (
|
|
4336
|
-
|
|
4332
|
+
}), se(() => e.selfController?.sharedMessages.value, (h) => {
|
|
4333
|
+
h && h.length > 0 && Xe(() => f());
|
|
4334
|
+
}, { immediate: !0, deep: !0 }), (h, d) => (u(), b("div", jr, [
|
|
4335
|
+
e.selfController?.textState.value.connectionStatus !== "connected" ? (u(), b("div", Rr, [
|
|
4336
|
+
V(gt, { class: "size-4" })
|
|
4337
4337
|
])) : E("", !0),
|
|
4338
4338
|
l("div", {
|
|
4339
4339
|
ref_key: "messagesContainer",
|
|
4340
4340
|
ref: o,
|
|
4341
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"
|
|
4342
4342
|
}, [
|
|
4343
|
-
(
|
|
4343
|
+
(u(!0), b(Ae, null, rt(e.selfController?.sharedMessages.value.filter((m) => m.sender !== "system") ?? [], (m, p) => (u(), b("div", {
|
|
4344
4344
|
key: m.id,
|
|
4345
4345
|
class: z(["flex gap-2 items-end", {
|
|
4346
4346
|
"justify-end": m.sender === "user",
|
|
@@ -4348,23 +4348,23 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4348
4348
|
"mb-4": a(e.selfController?.sharedMessages.value.filter((g) => g.sender !== "system") ?? [], p)
|
|
4349
4349
|
}])
|
|
4350
4350
|
}, [
|
|
4351
|
-
m.sender === "agent" ? (
|
|
4352
|
-
a(e.selfController?.sharedMessages.value.filter((g) => g.sender !== "system") ?? [], p) ? (
|
|
4351
|
+
m.sender === "agent" ? (u(), b("div", Nr, [
|
|
4352
|
+
a(e.selfController?.sharedMessages.value.filter((g) => g.sender !== "system") ?? [], p) ? (u(), b("img", {
|
|
4353
4353
|
key: 0,
|
|
4354
4354
|
src: n.value,
|
|
4355
4355
|
alt: e.self.name,
|
|
4356
4356
|
class: "size-7 rounded-full object-cover"
|
|
4357
|
-
}, null, 8,
|
|
4357
|
+
}, null, 8, Gr)) : E("", !0)
|
|
4358
4358
|
])) : E("", !0),
|
|
4359
|
-
l("div",
|
|
4359
|
+
l("div", Or, [
|
|
4360
4360
|
l("div", {
|
|
4361
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"])
|
|
4362
4362
|
}, [
|
|
4363
|
-
l("p",
|
|
4363
|
+
l("p", Ur, U(m.text), 1)
|
|
4364
4364
|
], 2)
|
|
4365
4365
|
])
|
|
4366
4366
|
], 2))), 128)),
|
|
4367
|
-
e.selfController?.textState.value.isThinking ? (
|
|
4367
|
+
e.selfController?.textState.value.isThinking ? (u(), b("div", Wr, [
|
|
4368
4368
|
l("div", Hr, [
|
|
4369
4369
|
l("img", {
|
|
4370
4370
|
src: n.value,
|
|
@@ -4372,48 +4372,48 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4372
4372
|
class: "size-8 rounded-full object-cover"
|
|
4373
4373
|
}, null, 8, qr)
|
|
4374
4374
|
]),
|
|
4375
|
-
|
|
4375
|
+
d[1] || (d[1] = l("div", { class: "rounded-2xl px-4 py-2.5 bg-white/15 backdrop-blur-sm flex items-center" }, [
|
|
4376
4376
|
l("i", { class: "i-svg-spinners-3-dots-fade size-6 text-white/70" })
|
|
4377
4377
|
], -1))
|
|
4378
4378
|
])) : E("", !0)
|
|
4379
4379
|
], 512),
|
|
4380
|
-
l("div",
|
|
4380
|
+
l("div", Kr, [
|
|
4381
4381
|
Pt(l("textarea", {
|
|
4382
4382
|
ref_key: "textarea",
|
|
4383
4383
|
ref: t,
|
|
4384
|
-
"onUpdate:modelValue":
|
|
4384
|
+
"onUpdate:modelValue": d[0] || (d[0] = (m) => r.value = m),
|
|
4385
4385
|
rows: "1",
|
|
4386
4386
|
placeholder: e.selfController?.textState.value.isConnected ? "Message" : "Connecting...",
|
|
4387
4387
|
disabled: !e.selfController?.textState.value.isConnected,
|
|
4388
4388
|
style: { "font-size": "16px", resize: "none" },
|
|
4389
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",
|
|
4390
|
-
onKeydown:
|
|
4391
|
-
}, null, 40,
|
|
4392
|
-
[
|
|
4390
|
+
onKeydown: c
|
|
4391
|
+
}, null, 40, Zr), [
|
|
4392
|
+
[Bt, r.value]
|
|
4393
4393
|
]),
|
|
4394
|
-
|
|
4394
|
+
d[2] || (d[2] = l("div", { class: "text-[10px] text-white/40 text-center mt-2" }, " Press Enter to send, Shift+Enter for new line ", -1))
|
|
4395
4395
|
])
|
|
4396
4396
|
]));
|
|
4397
4397
|
}
|
|
4398
|
-
}),
|
|
4398
|
+
}), Jr = { class: "flex flex-col items-center text-center gap-4" }, Qr = { class: "relative flex-shrink-0" }, Xr = { class: "w-20 h-20 sm:w-24 sm:h-24 rounded-full overflow-hidden border-4 border-white" }, _r = ["src", "alt"], es = { class: "min-w-0" }, ts = { class: "text-3xl font-light text-white mb-2 truncate" }, os = { class: "text-base font-light text-white/60 line-clamp-1" }, rs = /* @__PURE__ */ j({
|
|
4399
4399
|
__name: "ElSelfHeader",
|
|
4400
4400
|
props: {
|
|
4401
4401
|
self: {}
|
|
4402
4402
|
},
|
|
4403
4403
|
setup(e) {
|
|
4404
4404
|
function r() {
|
|
4405
|
-
return e.self.avatar?.src ? e.self.avatar.src :
|
|
4405
|
+
return e.self.avatar?.src ? e.self.avatar.src : He();
|
|
4406
4406
|
}
|
|
4407
|
-
return s(r, "getAvatarSrc"), (o, t) => (
|
|
4408
|
-
l("div",
|
|
4409
|
-
l("div",
|
|
4407
|
+
return s(r, "getAvatarSrc"), (o, t) => (u(), b("div", Jr, [
|
|
4408
|
+
l("div", Qr, [
|
|
4409
|
+
l("div", Xr, [
|
|
4410
4410
|
l("img", {
|
|
4411
4411
|
src: r(),
|
|
4412
4412
|
alt: e.self.name,
|
|
4413
4413
|
class: "w-full h-full object-cover",
|
|
4414
4414
|
onError: t[0] || (t[0] = //@ts-ignore
|
|
4415
4415
|
(...n) => Y(ot) && Y(ot)(...n))
|
|
4416
|
-
}, null, 40,
|
|
4416
|
+
}, null, 40, _r)
|
|
4417
4417
|
]),
|
|
4418
4418
|
t[1] || (t[1] = l("div", { class: "absolute top-1.5 right-1.5" }, [
|
|
4419
4419
|
l("div", {
|
|
@@ -4423,13 +4423,13 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4423
4423
|
l("div", { class: "size-4 bg-green-500 rounded-full ring-2 ring-white" })
|
|
4424
4424
|
], -1))
|
|
4425
4425
|
]),
|
|
4426
|
-
l("div",
|
|
4427
|
-
l("h1",
|
|
4428
|
-
l("p",
|
|
4426
|
+
l("div", es, [
|
|
4427
|
+
l("h1", ts, U(e.self.name), 1),
|
|
4428
|
+
l("p", os, U(e.self.title), 1)
|
|
4429
4429
|
])
|
|
4430
4430
|
]));
|
|
4431
4431
|
}
|
|
4432
|
-
}),
|
|
4432
|
+
}), ss = { 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({
|
|
4433
4433
|
name: "FClose",
|
|
4434
4434
|
__name: "FClose",
|
|
4435
4435
|
emits: ["click"],
|
|
@@ -4439,12 +4439,12 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4439
4439
|
setTimeout(() => {
|
|
4440
4440
|
r.value = !0;
|
|
4441
4441
|
}, 100);
|
|
4442
|
-
}), (o, t) => (
|
|
4442
|
+
}), (o, t) => (u(), b("a", {
|
|
4443
4443
|
class: "close block cursor-pointer w-[60px] h-[60px] rounded-full transition-all duration-1000 ease-[cubic-bezier(0.25,1,0.33,1)] hover:scale-110 active:scale-90 hover:rotate-90",
|
|
4444
4444
|
onClick: t[0] || (t[0] = (n) => o.$emit("click", n))
|
|
4445
4445
|
}, [
|
|
4446
4446
|
t[1] || (t[1] = l("span", { class: "absolute inset-0 rounded-full transition-all" }, null, -1)),
|
|
4447
|
-
l("span",
|
|
4447
|
+
l("span", ss, [
|
|
4448
4448
|
l("span", {
|
|
4449
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"]),
|
|
4450
4450
|
style: { "background-color": "currentColor", "transition-delay": "0.15s" }
|
|
@@ -4456,16 +4456,16 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4456
4456
|
])
|
|
4457
4457
|
]));
|
|
4458
4458
|
}
|
|
4459
|
-
}),
|
|
4459
|
+
}), ns = {
|
|
4460
4460
|
key: 0,
|
|
4461
4461
|
class: "px-9 pt-12 pb-4"
|
|
4462
|
-
},
|
|
4462
|
+
}, as = { class: "text-base font-medium text-theme-400" }, is = {
|
|
4463
4463
|
key: 1,
|
|
4464
4464
|
class: "px-4 pb-8 border-b border-white/10"
|
|
4465
|
-
},
|
|
4465
|
+
}, ls = ["disabled", "onClick"], cs = { class: "flex items-center gap-3" }, ds = { class: "flex-1" }, us = {
|
|
4466
4466
|
key: 0,
|
|
4467
4467
|
class: "text-xs text-white/50 mt-0.5"
|
|
4468
|
-
},
|
|
4468
|
+
}, hs = { class: "p-6" }, Zt = /* @__PURE__ */ j({
|
|
4469
4469
|
name: "ElSidebar",
|
|
4470
4470
|
__name: "ElSidebar",
|
|
4471
4471
|
props: {
|
|
@@ -4477,15 +4477,15 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4477
4477
|
},
|
|
4478
4478
|
emits: ["update:modelValue"],
|
|
4479
4479
|
setup(e, { emit: r }) {
|
|
4480
|
-
const o = e, t = r, n = o.position || "left", a = o.widthClasses || "w-[80%] max-w-[300px]", i =
|
|
4480
|
+
const o = e, t = r, n = o.position || "left", a = o.widthClasses || "w-[80%] max-w-[300px]", i = B({
|
|
4481
4481
|
get: /* @__PURE__ */ s(() => o.modelValue, "get"),
|
|
4482
|
-
set: /* @__PURE__ */ s((
|
|
4483
|
-
}),
|
|
4484
|
-
function f(
|
|
4485
|
-
|
|
4482
|
+
set: /* @__PURE__ */ s((h) => t("update:modelValue", h), "set")
|
|
4483
|
+
}), c = B(() => o.items.filter((h) => !h.isHidden));
|
|
4484
|
+
function f(h) {
|
|
4485
|
+
h.isDisabled || (h.onClick ? h.onClick({ item: h, event: new MouseEvent("click") }) : h.href && (h.href.includes("http") ? window.open(h.href, h.target || "_self")?.focus() : window.location.href = h.href), i.value = !1);
|
|
4486
4486
|
}
|
|
4487
4487
|
s(f, "handleItemClick");
|
|
4488
|
-
const C =
|
|
4488
|
+
const C = B(() => n === "left" ? {
|
|
4489
4489
|
enter: "-translate-x-full",
|
|
4490
4490
|
leave: "-translate-x-full",
|
|
4491
4491
|
position: "justify-start",
|
|
@@ -4496,8 +4496,8 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4496
4496
|
position: "justify-end",
|
|
4497
4497
|
closeButton: "-left-16"
|
|
4498
4498
|
});
|
|
4499
|
-
return (
|
|
4500
|
-
|
|
4499
|
+
return (h, d) => (u(), b(Ae, null, [
|
|
4500
|
+
V(_e, {
|
|
4501
4501
|
"enter-active-class": "transition-opacity duration-300 ease-out",
|
|
4502
4502
|
"leave-active-class": "transition-opacity duration-200 ease-in",
|
|
4503
4503
|
"enter-from-class": "opacity-0",
|
|
@@ -4506,15 +4506,15 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4506
4506
|
"leave-to-class": "opacity-0"
|
|
4507
4507
|
}, {
|
|
4508
4508
|
default: ee(() => [
|
|
4509
|
-
i.value ? (
|
|
4509
|
+
i.value ? (u(), b("div", {
|
|
4510
4510
|
key: 0,
|
|
4511
4511
|
class: "absolute inset-0 z-40 bg-black/50 backdrop-blur-sm",
|
|
4512
|
-
onClick:
|
|
4512
|
+
onClick: d[0] || (d[0] = (m) => i.value = !1)
|
|
4513
4513
|
})) : E("", !0)
|
|
4514
4514
|
]),
|
|
4515
4515
|
_: 1
|
|
4516
4516
|
}),
|
|
4517
|
-
|
|
4517
|
+
V(_e, {
|
|
4518
4518
|
"enter-active-class": "transition-all duration-500 ease-[cubic-bezier(0.25,1,0.33,1)]",
|
|
4519
4519
|
"leave-active-class": "transition-all duration-400 ease-[cubic-bezier(0.25,1,0.33,1)]",
|
|
4520
4520
|
"enter-from-class": C.value.enter,
|
|
@@ -4523,30 +4523,30 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4523
4523
|
"leave-to-class": C.value.leave
|
|
4524
4524
|
}, {
|
|
4525
4525
|
default: ee(() => [
|
|
4526
|
-
i.value ? (
|
|
4526
|
+
i.value ? (u(), b("div", {
|
|
4527
4527
|
key: 0,
|
|
4528
4528
|
class: z(["absolute inset-0 z-50 flex", C.value.position]),
|
|
4529
|
-
onClick:
|
|
4529
|
+
onClick: d[3] || (d[3] = (m) => i.value = !1)
|
|
4530
4530
|
}, [
|
|
4531
4531
|
l("div", {
|
|
4532
4532
|
class: z(["relative h-full shadow-2xl bg-black/30 backdrop-blur-xl flex flex-col justify-center", Y(a)]),
|
|
4533
|
-
onClick:
|
|
4533
|
+
onClick: d[2] || (d[2] = et(() => {
|
|
4534
4534
|
}, ["stop"]))
|
|
4535
4535
|
}, [
|
|
4536
|
-
|
|
4536
|
+
V(Kt, {
|
|
4537
4537
|
class: z(["absolute top-4 z-10 text-white", C.value.closeButton]),
|
|
4538
|
-
onClick:
|
|
4538
|
+
onClick: d[1] || (d[1] = (m) => i.value = !1)
|
|
4539
4539
|
}, null, 8, ["class"]),
|
|
4540
|
-
e.title ? (
|
|
4541
|
-
l("h3",
|
|
4540
|
+
e.title ? (u(), b("div", ns, [
|
|
4541
|
+
l("h3", as, U(e.title), 1)
|
|
4542
4542
|
])) : E("", !0),
|
|
4543
|
-
|
|
4544
|
-
Ce(
|
|
4543
|
+
h.$slots.header ? (u(), b("div", is, [
|
|
4544
|
+
Ce(h.$slots, "header")
|
|
4545
4545
|
])) : E("", !0),
|
|
4546
4546
|
l("div", {
|
|
4547
|
-
class: z(["flex-1 p-6 space-y-2 overflow-y-auto", { "pt-6": !e.title && !
|
|
4547
|
+
class: z(["flex-1 p-6 space-y-2 overflow-y-auto", { "pt-6": !e.title && !h.$slots.header, "pt-4": e.title || h.$slots.header }])
|
|
4548
4548
|
}, [
|
|
4549
|
-
|
|
4549
|
+
V(Tt, {
|
|
4550
4550
|
"enter-active-class": "transition-all duration-400 ease-[cubic-bezier(0.25,1,0.33,1)]",
|
|
4551
4551
|
"leave-active-class": "transition-all duration-200 ease-[cubic-bezier(0.25,1,0.33,1)]",
|
|
4552
4552
|
"enter-from-class": Y(n) === "left" ? "-translate-x-4 opacity-0" : "translate-x-4 opacity-0",
|
|
@@ -4555,7 +4555,7 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4555
4555
|
"leave-to-class": Y(n) === "left" ? "-translate-x-4 opacity-0" : "translate-x-4 opacity-0"
|
|
4556
4556
|
}, {
|
|
4557
4557
|
default: ee(() => [
|
|
4558
|
-
(
|
|
4558
|
+
(u(!0), b(Ae, null, rt(c.value, (m, p) => (u(), b("button", {
|
|
4559
4559
|
key: m.key || m.label || p,
|
|
4560
4560
|
style: st({ transitionDelay: `${p * 40}ms` }),
|
|
4561
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", [
|
|
@@ -4565,31 +4565,31 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4565
4565
|
disabled: m.isDisabled,
|
|
4566
4566
|
onClick: /* @__PURE__ */ s((g) => f(m), "onClick")
|
|
4567
4567
|
}, [
|
|
4568
|
-
l("div",
|
|
4569
|
-
m.icon?.src ? (
|
|
4568
|
+
l("div", cs, [
|
|
4569
|
+
m.icon?.src ? (u(), b("i", {
|
|
4570
4570
|
key: 0,
|
|
4571
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", [
|
|
4572
4572
|
m.icon.src,
|
|
4573
4573
|
m.isActive ? "text-primary-400" : "text-white/70 group-hover:text-white"
|
|
4574
4574
|
]])
|
|
4575
4575
|
}, null, 2)) : E("", !0),
|
|
4576
|
-
l("div",
|
|
4576
|
+
l("div", ds, [
|
|
4577
4577
|
l("div", {
|
|
4578
4578
|
class: z(["font-medium text-sm", m.isActive ? "text-primary-300" : "text-white"])
|
|
4579
4579
|
}, U(m.label), 3),
|
|
4580
|
-
m.subLabel ? (
|
|
4580
|
+
m.subLabel ? (u(), b("div", us, U(m.subLabel), 1)) : E("", !0)
|
|
4581
4581
|
])
|
|
4582
4582
|
])
|
|
4583
|
-
], 14,
|
|
4583
|
+
], 14, ls))), 128))
|
|
4584
4584
|
]),
|
|
4585
4585
|
_: 1
|
|
4586
4586
|
}, 8, ["enter-from-class", "leave-to-class"])
|
|
4587
4587
|
], 2),
|
|
4588
|
-
l("div",
|
|
4589
|
-
Ce(
|
|
4590
|
-
|
|
4588
|
+
l("div", hs, [
|
|
4589
|
+
Ce(h.$slots, "footer", {}, () => [
|
|
4590
|
+
d[4] || (d[4] = l("div", { class: "text-center" }, [
|
|
4591
4591
|
l("p", { class: "text-[10px] text-white/40 font-sans" }, [
|
|
4592
|
-
|
|
4592
|
+
We(" Digital Self by "),
|
|
4593
4593
|
l("a", {
|
|
4594
4594
|
href: "https://www.fiction.com",
|
|
4595
4595
|
target: "_blank",
|
|
@@ -4606,7 +4606,7 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4606
4606
|
}, 8, ["enter-from-class", "leave-to-class"])
|
|
4607
4607
|
], 64));
|
|
4608
4608
|
}
|
|
4609
|
-
}),
|
|
4609
|
+
}), fs = /* @__PURE__ */ j({
|
|
4610
4610
|
name: "SelfModeSidebar",
|
|
4611
4611
|
__name: "ElSelfModeSidebar",
|
|
4612
4612
|
props: {
|
|
@@ -4615,19 +4615,19 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4615
4615
|
},
|
|
4616
4616
|
emits: ["update:modelValue"],
|
|
4617
4617
|
setup(e, { emit: r }) {
|
|
4618
|
-
const o = e, t = r, n =
|
|
4618
|
+
const o = e, t = r, n = B({
|
|
4619
4619
|
get: /* @__PURE__ */ s(() => o.modelValue, "get"),
|
|
4620
|
-
set: /* @__PURE__ */ s((
|
|
4621
|
-
}), a =
|
|
4622
|
-
key:
|
|
4623
|
-
icon: { src:
|
|
4624
|
-
label:
|
|
4625
|
-
isActive: a.value ===
|
|
4620
|
+
set: /* @__PURE__ */ s((c) => t("update:modelValue", c), "set")
|
|
4621
|
+
}), a = B(() => o.selfController?.agentMode?.value ?? "self"), i = B(() => Dt.map((c) => ({
|
|
4622
|
+
key: c.mode,
|
|
4623
|
+
icon: { src: c.icon },
|
|
4624
|
+
label: c.label,
|
|
4625
|
+
isActive: a.value === c.mode,
|
|
4626
4626
|
onClick: /* @__PURE__ */ s(() => {
|
|
4627
|
-
o.selfController?.setMode(
|
|
4627
|
+
o.selfController?.setMode(c.mode);
|
|
4628
4628
|
}, "onClick")
|
|
4629
4629
|
})));
|
|
4630
|
-
return (
|
|
4630
|
+
return (c, f) => (u(), _(Zt, {
|
|
4631
4631
|
modelValue: n.value,
|
|
4632
4632
|
"onUpdate:modelValue": f[0] || (f[0] = (C) => n.value = C),
|
|
4633
4633
|
items: i.value,
|
|
@@ -4636,7 +4636,7 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4636
4636
|
"width-classes": "w-[80%] max-w-[255px]"
|
|
4637
4637
|
}, null, 8, ["modelValue", "items"]));
|
|
4638
4638
|
}
|
|
4639
|
-
}),
|
|
4639
|
+
}), gs = /* @__PURE__ */ j({
|
|
4640
4640
|
name: "SelfSidebar",
|
|
4641
4641
|
__name: "ElSelfSidebar",
|
|
4642
4642
|
props: {
|
|
@@ -4647,18 +4647,18 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4647
4647
|
},
|
|
4648
4648
|
emits: ["update:modelValue"],
|
|
4649
4649
|
setup(e, { emit: r }) {
|
|
4650
|
-
const o = e, t = r, n =
|
|
4650
|
+
const o = e, t = r, n = B({
|
|
4651
4651
|
get: /* @__PURE__ */ s(() => o.modelValue, "get"),
|
|
4652
4652
|
set: /* @__PURE__ */ s((i) => t("update:modelValue", i), "set")
|
|
4653
|
-
}), a =
|
|
4653
|
+
}), a = B(() => {
|
|
4654
4654
|
const i = [
|
|
4655
4655
|
{
|
|
4656
4656
|
key: "share",
|
|
4657
4657
|
icon: { src: "i-tabler-share" },
|
|
4658
4658
|
label: "Share This Digital Self",
|
|
4659
4659
|
onClick: /* @__PURE__ */ s(() => {
|
|
4660
|
-
const
|
|
4661
|
-
navigator.clipboard.writeText(
|
|
4660
|
+
const c = `${window.location.origin}/@${o.self.handle || o.self.selfId}`;
|
|
4661
|
+
navigator.clipboard.writeText(c);
|
|
4662
4662
|
}, "onClick")
|
|
4663
4663
|
},
|
|
4664
4664
|
{
|
|
@@ -4687,15 +4687,15 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4687
4687
|
}, "onClick")
|
|
4688
4688
|
}), i;
|
|
4689
4689
|
});
|
|
4690
|
-
return (i,
|
|
4690
|
+
return (i, c) => (u(), _(Zt, {
|
|
4691
4691
|
modelValue: n.value,
|
|
4692
|
-
"onUpdate:modelValue":
|
|
4692
|
+
"onUpdate:modelValue": c[0] || (c[0] = (f) => n.value = f),
|
|
4693
4693
|
items: a.value,
|
|
4694
4694
|
position: "left",
|
|
4695
4695
|
title: e.title || "Menu"
|
|
4696
4696
|
}, null, 8, ["modelValue", "items", "title"]));
|
|
4697
4697
|
}
|
|
4698
|
-
}),
|
|
4698
|
+
}), ms = { class: "w-full max-w-full flex items-center justify-center" }, bs = ["width", "height"], vs = /* @__PURE__ */ j({
|
|
4699
4699
|
__name: "ElAudioVisualizer",
|
|
4700
4700
|
props: {
|
|
4701
4701
|
rms: {},
|
|
@@ -4713,13 +4713,13 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4713
4713
|
setup(e) {
|
|
4714
4714
|
const r = e, o = P();
|
|
4715
4715
|
let t = null, n = null;
|
|
4716
|
-
const a = P(!1), i = P(!0),
|
|
4717
|
-
let f = null, C = null,
|
|
4718
|
-
const
|
|
4719
|
-
function
|
|
4716
|
+
const a = P(!1), i = P(!0), c = /* @__PURE__ */ new Map();
|
|
4717
|
+
let f = null, C = null, h = null;
|
|
4718
|
+
const d = P(!1), m = P(null), { bars: p, barWidth: g, barSpacing: T, minHeight: W, maxHeight: Q, STIFFNESS: ze, DAMPING: Se, PEAK_HOLD_TIME: ue, PEAK_DECAY_STIFFNESS: pe, PEAK_DECAY_DAMPING: he } = So, re = new Float32Array(p).fill(W), S = new Float32Array(p).fill(0), ne = new Float32Array(p).fill(W), ce = new Float32Array(p).fill(W), fe = new Float32Array(p).fill(0), ge = new Float32Array(p).fill(0);
|
|
4719
|
+
function qe(v) {
|
|
4720
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 };
|
|
4721
4721
|
}
|
|
4722
|
-
s(
|
|
4722
|
+
s(qe, "getFrequencyPhysics");
|
|
4723
4723
|
async function $e() {
|
|
4724
4724
|
if (!(typeof window > "u" || !r.enableRealAudio || !r.selfController))
|
|
4725
4725
|
try {
|
|
@@ -4729,31 +4729,31 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4729
4729
|
if (M) {
|
|
4730
4730
|
C = M;
|
|
4731
4731
|
const A = new ArrayBuffer(M.frequencyBinCount);
|
|
4732
|
-
|
|
4732
|
+
h = new Uint8Array(A), d.value = !0, m.value = null, console.warn("AudioVisualizer: Using shared audio context from ClientAudio");
|
|
4733
4733
|
return;
|
|
4734
4734
|
}
|
|
4735
4735
|
}
|
|
4736
|
-
console.warn("AudioVisualizer: Could not use shared context, creating independent audio analysis"),
|
|
4736
|
+
console.warn("AudioVisualizer: Could not use shared context, creating independent audio analysis"), d.value = !1, m.value = "Shared audio context not available";
|
|
4737
4737
|
} catch (v) {
|
|
4738
|
-
m.value = v instanceof Error ? v.message : "Failed to setup shared audio",
|
|
4738
|
+
m.value = v instanceof Error ? v.message : "Failed to setup shared audio", d.value = !1, console.error("Shared audio setup failed:", v);
|
|
4739
4739
|
}
|
|
4740
4740
|
}
|
|
4741
4741
|
s($e, "setupAudio");
|
|
4742
4742
|
function me() {
|
|
4743
|
-
C = null,
|
|
4743
|
+
C = null, h = null, d.value = !1, m.value = null;
|
|
4744
4744
|
}
|
|
4745
4745
|
s(me, "cleanupAudio");
|
|
4746
|
-
let
|
|
4746
|
+
let H = 1;
|
|
4747
4747
|
function ie() {
|
|
4748
4748
|
if (!o.value)
|
|
4749
4749
|
return;
|
|
4750
|
-
typeof window < "u" && (
|
|
4750
|
+
typeof window < "u" && (H = Math.max(1, Math.min(2, window.devicePixelRatio || 1)));
|
|
4751
4751
|
const v = (g + T) * p - T, M = Q;
|
|
4752
|
-
o.value.width = Math.floor(v *
|
|
4752
|
+
o.value.width = Math.floor(v * H), o.value.height = Math.floor(M * H), o.value.style.width = `${v}px`, o.value.style.height = `${M}px`, t && t.setTransform(H, 0, 0, H, 0, 0), _t();
|
|
4753
4753
|
}
|
|
4754
4754
|
s(ie, "resizeCanvas");
|
|
4755
4755
|
function w() {
|
|
4756
|
-
return !C || !
|
|
4756
|
+
return !C || !h || !d.value ? Array.from({ length: X.length }, () => 0) : (C.getByteFrequencyData(h), je(h));
|
|
4757
4757
|
}
|
|
4758
4758
|
s(w, "generateRealInputFrequencyBands");
|
|
4759
4759
|
function Ke() {
|
|
@@ -4776,15 +4776,15 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4776
4776
|
for (let J = 0; J < be && O + J < v.length; J++)
|
|
4777
4777
|
K += v[O + J];
|
|
4778
4778
|
K = K / be / 255;
|
|
4779
|
-
let
|
|
4780
|
-
$ < 150 ?
|
|
4781
|
-
const te = K ** 0.5 * 0.6 *
|
|
4779
|
+
let F = 1;
|
|
4780
|
+
$ < 150 ? F = 0.1 : $ < 200 ? F = 0.3 : $ >= 400 && $ <= 600 ? F = 1.4 : $ >= 1400 && $ <= 1600 ? F = 1.3 : $ >= 2400 && $ <= 2600 ? F = 1.2 : $ >= 200 && $ <= 2e3 ? F = 1.1 : $ >= 2e3 && $ <= 4e3 ? F = 0.9 : $ > 6e3 ? F = 0.4 : F = 0.7;
|
|
4781
|
+
const te = K ** 0.5 * 0.6 * F;
|
|
4782
4782
|
return Math.min(0.85, te);
|
|
4783
4783
|
});
|
|
4784
4784
|
}
|
|
4785
4785
|
s(je, "mapFrequencyDataToBands");
|
|
4786
4786
|
let xe = 0, ye = 0, N = 0;
|
|
4787
|
-
const
|
|
4787
|
+
const q = [
|
|
4788
4788
|
{ name: "a", f1: 730, f2: 1090, f3: 2440, duration: 120, energy: 0.9 },
|
|
4789
4789
|
{ name: "e", f1: 530, f2: 1840, f3: 2480, duration: 100, energy: 0.8 },
|
|
4790
4790
|
{ name: "i", f1: 270, f2: 2290, f3: 3010, duration: 110, energy: 0.85 },
|
|
@@ -4800,15 +4800,15 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4800
4800
|
const M = Array.from({ length: X.length }, () => 0);
|
|
4801
4801
|
if (v <= 0)
|
|
4802
4802
|
return M;
|
|
4803
|
-
ye += 16.67, N += 0.02, ye >
|
|
4804
|
-
const A =
|
|
4803
|
+
ye += 16.67, N += 0.02, ye > q[xe].duration && (xe = (xe + 1) % q.length, ye = 0);
|
|
4804
|
+
const A = q[xe], L = q[(xe + 1) % q.length], $ = ye / A.duration, G = 0.5 * (1 + Math.cos(Math.PI + $ * Math.PI)), O = 0.7 + 0.3 * Math.sin(N * 0.5), be = 0.9 + 0.1 * Math.sin(N * 8);
|
|
4805
4805
|
for (let K = 0; K < X.length; K++) {
|
|
4806
|
-
const
|
|
4806
|
+
const F = X[K];
|
|
4807
4807
|
let k = 0;
|
|
4808
|
-
const de = Le(
|
|
4808
|
+
const de = Le(F, A.f1, L.f1, G, 200), te = Le(F, A.f2, L.f2, G, 300), J = Le(F, A.f3, L.f3, G, 400);
|
|
4809
4809
|
k = (de * 0.4 + te * 0.35 + J * 0.25) * (A.energy * (1 - G) + L.energy * G);
|
|
4810
4810
|
const ae = 150 + 50 * Math.sin(N * 0.3);
|
|
4811
|
-
(Math.abs(
|
|
4811
|
+
(Math.abs(F - ae) < 20 || Math.abs(F - ae * 2) < 30 || Math.abs(F - ae * 3) < 40) && (k += 0.3 * A.energy), k *= v * O * be, k *= 0.85 + Math.random() * 0.3, M[K] = Math.max(0, Math.min(1, k));
|
|
4812
4812
|
}
|
|
4813
4813
|
return M;
|
|
4814
4814
|
}
|
|
@@ -4831,7 +4831,7 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4831
4831
|
s(Te, "getApiThrottleInterval");
|
|
4832
4832
|
function Ne(v) {
|
|
4833
4833
|
let M = [];
|
|
4834
|
-
if (r.enableRealAudio && r.isListening &&
|
|
4834
|
+
if (r.enableRealAudio && r.isListening && d.value && C && h) {
|
|
4835
4835
|
const A = w();
|
|
4836
4836
|
A.some(($) => $ > 0.05) && (M = A);
|
|
4837
4837
|
}
|
|
@@ -4857,14 +4857,14 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4857
4857
|
const G = $ * (2 * Math.PI) / v.length;
|
|
4858
4858
|
let O = 0;
|
|
4859
4859
|
if (r.isListening || r.isSpeaking) {
|
|
4860
|
-
const K = Math.sin(A * 4.2 + G * 0.6 - (r.enableScrollingWave ? A * 2 : 0)) * 0.15,
|
|
4861
|
-
O = K +
|
|
4860
|
+
const K = Math.sin(A * 4.2 + G * 0.6 - (r.enableScrollingWave ? A * 2 : 0)) * 0.15, F = Math.sin(A * 6.8 + G * 1.2 - (r.enableScrollingWave ? A * 1.5 : 0)) * 0.08, k = Math.sin(A * 0.8) * 0.05;
|
|
4861
|
+
O = K + F + k;
|
|
4862
4862
|
} else if (r.isConnected) {
|
|
4863
|
-
const K = Math.sin(A * 0.6) * 0.1,
|
|
4864
|
-
O = K +
|
|
4863
|
+
const K = Math.sin(A * 0.6) * 0.1, F = Math.sin(A * 2 + G * 0.3) * 0.05;
|
|
4864
|
+
O = K + F;
|
|
4865
4865
|
} else {
|
|
4866
|
-
const K = Math.sin(A * 1.5 + G) * 0.12,
|
|
4867
|
-
O = K +
|
|
4866
|
+
const K = Math.sin(A * 1.5 + G) * 0.12, F = Math.sin(A * 0.4) * 0.05;
|
|
4867
|
+
O = K + F;
|
|
4868
4868
|
}
|
|
4869
4869
|
const be = Math.max(0.3, M);
|
|
4870
4870
|
L[$] = Math.max(0, Math.min(0.9, v[$] + O * be));
|
|
@@ -4892,18 +4892,18 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4892
4892
|
}
|
|
4893
4893
|
s(Qt, "detectMobile");
|
|
4894
4894
|
function Xt(v, M) {
|
|
4895
|
-
return
|
|
4895
|
+
return c.has(v) || c.set(v, M()), c.get(v);
|
|
4896
4896
|
}
|
|
4897
4897
|
s(Xt, "getGradient");
|
|
4898
4898
|
function _t() {
|
|
4899
|
-
|
|
4899
|
+
c.clear(), f = null;
|
|
4900
4900
|
}
|
|
4901
4901
|
s(_t, "clearGradientCache");
|
|
4902
4902
|
function nt() {
|
|
4903
4903
|
if (typeof window > "u" || !t || !o.value)
|
|
4904
4904
|
return;
|
|
4905
4905
|
Qt();
|
|
4906
|
-
const v = o.value, M = v.width /
|
|
4906
|
+
const v = o.value, M = v.width / H, A = v.height / H;
|
|
4907
4907
|
function L($) {
|
|
4908
4908
|
if (!t)
|
|
4909
4909
|
return;
|
|
@@ -4916,19 +4916,19 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4916
4916
|
r.audioLevels ? r.isListening ? G = Math.min(r.audioLevels.inputLevel * 1.5, 1) : r.isSpeaking && (G = Math.min(r.audioLevels.outputLevel * 1.8, 1)) : r.rms !== void 0 && (G = Math.min(r.rms / 70, 1));
|
|
4917
4917
|
const O = Ne(G);
|
|
4918
4918
|
for (let k = 0; k < p; k++)
|
|
4919
|
-
ne[k] =
|
|
4919
|
+
ne[k] = W + O[k] * (Q - W);
|
|
4920
4920
|
const be = 16.67;
|
|
4921
4921
|
for (let k = 0; k < p; k++) {
|
|
4922
|
-
const de = X[k], te =
|
|
4922
|
+
const de = X[k], te = qe(de), J = ne[k] - re[k], ae = ze * te.stiffnessMultiplier, Be = Se * te.dampingMultiplier, le = J * ae - S[k] * Be;
|
|
4923
4923
|
if (S[k] += le, re[k] += S[k], re[k] > ce[k])
|
|
4924
4924
|
ce[k] = re[k], fe[k] = ue, ge[k] = 0;
|
|
4925
4925
|
else if (fe[k] = Math.max(0, fe[k] - be), fe[k] <= 0) {
|
|
4926
|
-
const Oe = (Math.max(
|
|
4927
|
-
ge[k] += Oe, ce[k] = Math.max(
|
|
4926
|
+
const Oe = (Math.max(W, re[k] * 1.1) - ce[k]) * pe - ge[k] * he;
|
|
4927
|
+
ge[k] += Oe, ce[k] = Math.max(W, ce[k] + ge[k]);
|
|
4928
4928
|
}
|
|
4929
4929
|
}
|
|
4930
4930
|
const K = p * 0.15;
|
|
4931
|
-
function
|
|
4931
|
+
function F() {
|
|
4932
4932
|
t && (f || (f = t.createRadialGradient(
|
|
4933
4933
|
M * 0.5,
|
|
4934
4934
|
A * 0.6,
|
|
@@ -4938,19 +4938,19 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4938
4938
|
A * 0.9
|
|
4939
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));
|
|
4940
4940
|
}
|
|
4941
|
-
if (s(
|
|
4941
|
+
if (s(F, "drawBackground"), F(), (r.isListening || r.isSpeaking) && !a.value) {
|
|
4942
4942
|
const k = performance.now() * 1e-3, de = 0.1 + Math.sin(k * 2) * 0.05;
|
|
4943
4943
|
t.save(), t.globalCompositeOperation = "lighter", t.globalAlpha = de;
|
|
4944
4944
|
const te = r.isSpeaking ? "rgba(34,197,94,0.4)" : "rgba(59,130,246,0.4)";
|
|
4945
4945
|
t.fillStyle = te;
|
|
4946
4946
|
for (let J = 0; J < p; J++) {
|
|
4947
|
-
const ae = J * (g + T),
|
|
4948
|
-
t.beginPath(), t.roundRect(ae - 1, le - 1, g + 2,
|
|
4947
|
+
const ae = J * (g + T), Be = re[J], le = A - Be;
|
|
4948
|
+
t.beginPath(), t.roundRect(ae - 1, le - 1, g + 2, Be + 2, [2, 2, 0, 0]), t.fill();
|
|
4949
4949
|
}
|
|
4950
4950
|
t.restore();
|
|
4951
4951
|
}
|
|
4952
4952
|
for (let k = 0; k < p; k++) {
|
|
4953
|
-
const de = k * (g + T), te = re[k], J = A - te, ae = X[k],
|
|
4953
|
+
const de = k * (g + T), te = re[k], J = A - te, ae = X[k], Be = Math.min(k, p - 1 - k), le = Math.min(1, Be / 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, () => {
|
|
4954
4954
|
const oe = t.createLinearGradient(0, J, 0, J + te);
|
|
4955
4955
|
if (r.isSpeaking)
|
|
4956
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)})`);
|
|
@@ -4962,7 +4962,7 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4962
4962
|
}
|
|
4963
4963
|
return oe;
|
|
4964
4964
|
});
|
|
4965
|
-
if (t.fillStyle = ro, t.beginPath(), t.roundRect(de, J, g, te, [1, 1, 0, 0]), t.fill(), ce[k] >
|
|
4965
|
+
if (t.fillStyle = ro, t.beginPath(), t.roundRect(de, J, g, te, [1, 1, 0, 0]), t.fill(), ce[k] > W + 2) {
|
|
4966
4966
|
const oe = A - ce[k], Ze = fe[k] > 0 ? 0.9 : Math.max(0.3, fe[k] / ue);
|
|
4967
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);
|
|
4968
4968
|
}
|
|
@@ -4989,7 +4989,7 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
4989
4989
|
function yt() {
|
|
4990
4990
|
if (typeof window < "u") {
|
|
4991
4991
|
const v = Math.max(1, Math.min(2, window.devicePixelRatio || 1));
|
|
4992
|
-
v !==
|
|
4992
|
+
v !== H && (H = v);
|
|
4993
4993
|
}
|
|
4994
4994
|
ie();
|
|
4995
4995
|
}
|
|
@@ -5006,12 +5006,12 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
5006
5006
|
), se(
|
|
5007
5007
|
[() => r.enableRealAudio, () => r.isListening],
|
|
5008
5008
|
async ([v, M], [A, L]) => {
|
|
5009
|
-
v && M && (!A || !L) && (
|
|
5009
|
+
v && M && (!A || !L) && (d.value || await $e().catch(console.error)), (!v || !M) && A && L && me();
|
|
5010
5010
|
},
|
|
5011
5011
|
{ immediate: !1 }
|
|
5012
5012
|
), se(o, (v) => {
|
|
5013
5013
|
v && !t && (t = v.getContext("2d"), ie(), nt());
|
|
5014
|
-
}), (v, M) => (
|
|
5014
|
+
}), (v, M) => (u(), b("div", ms, [
|
|
5015
5015
|
l("canvas", {
|
|
5016
5016
|
ref_key: "canvasRef",
|
|
5017
5017
|
ref: o,
|
|
@@ -5019,32 +5019,32 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
5019
5019
|
height: Y(Q),
|
|
5020
5020
|
class: "w-full max-w-full [image-rendering:-webkit-optimize-contrast]",
|
|
5021
5021
|
style: st({ height: `${Y(Q)}px` })
|
|
5022
|
-
}, null, 12,
|
|
5022
|
+
}, null, 12, bs)
|
|
5023
5023
|
]));
|
|
5024
5024
|
}
|
|
5025
|
-
}),
|
|
5025
|
+
}), ps = { class: "flex flex-col h-full items-center justify-center px-6 py-8" }, xs = { class: "flex-1 flex flex-col items-center justify-center space-y-8 py-4" }, ys = { class: "h-32 w-full max-w-md" }, ks = { class: "text-center flex gap-2 items-center text-xs" }, ws = { class: "flex items-center justify-center gap-2" }, Cs = {
|
|
5026
5026
|
key: 0,
|
|
5027
5027
|
class: "size-2 bg-blue-500 rounded-full animate-pulse"
|
|
5028
|
-
},
|
|
5028
|
+
}, Ss = {
|
|
5029
5029
|
key: 1,
|
|
5030
5030
|
class: "size-2 bg-green-500 rounded-full animate-pulse"
|
|
5031
|
-
},
|
|
5031
|
+
}, Ms = {
|
|
5032
5032
|
key: 2,
|
|
5033
5033
|
class: "size-2 bg-white/50 rounded-full"
|
|
5034
|
-
},
|
|
5034
|
+
}, As = {
|
|
5035
5035
|
key: 3,
|
|
5036
5036
|
class: "size-2 bg-red-500 rounded-full"
|
|
5037
|
-
},
|
|
5037
|
+
}, Is = { class: "text-white/70 text-sm max-w-xs leading-relaxed" }, zs = { class: "flex flex-col items-center space-y-6" }, $s = /* @__PURE__ */ j({
|
|
5038
5038
|
__name: "ElSelfVoice",
|
|
5039
5039
|
props: {
|
|
5040
5040
|
selfController: {}
|
|
5041
5041
|
},
|
|
5042
5042
|
setup(e) {
|
|
5043
|
-
const r =
|
|
5043
|
+
const r = B(() => e.selfController?.voiceState.value), o = B(() => r.value?.isConnected ? "red" : "green"), t = B(() => r.value?.isConnected ? "i-heroicons-phone-x-mark" : "i-heroicons-phone"), n = B(() => r.value?.isConnected ? "End Call" : "Start a Call"), a = B(() => {
|
|
5044
5044
|
const f = e.selfController?.voiceState.value;
|
|
5045
5045
|
return !!f?.error || f?.connectionStatus === "connecting";
|
|
5046
|
-
}), i =
|
|
5047
|
-
async function
|
|
5046
|
+
}), i = B(() => r.value?.connectionStatus === "connecting");
|
|
5047
|
+
async function c() {
|
|
5048
5048
|
if (e.selfController)
|
|
5049
5049
|
try {
|
|
5050
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,10 +5052,10 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
5052
5052
|
console.error("Error toggling call:", f);
|
|
5053
5053
|
}
|
|
5054
5054
|
}
|
|
5055
|
-
return s(
|
|
5056
|
-
l("div",
|
|
5057
|
-
l("div",
|
|
5058
|
-
|
|
5055
|
+
return s(c, "toggleCall"), (f, C) => (u(), b("div", ps, [
|
|
5056
|
+
l("div", xs, [
|
|
5057
|
+
l("div", ys, [
|
|
5058
|
+
V(vs, {
|
|
5059
5059
|
"audio-levels": e.selfController?.audioLevels.value ?? { inputLevel: 0, outputLevel: 0 },
|
|
5060
5060
|
"is-listening": e.selfController?.voiceState.value.isListening ?? !1,
|
|
5061
5061
|
"is-speaking": e.selfController?.voiceState.value.isSpeaking ?? !1,
|
|
@@ -5066,49 +5066,49 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
5066
5066
|
"self-controller": e.selfController
|
|
5067
5067
|
}, null, 8, ["audio-levels", "is-listening", "is-speaking", "is-connected", "self-controller"])
|
|
5068
5068
|
]),
|
|
5069
|
-
l("div",
|
|
5070
|
-
l("div",
|
|
5071
|
-
e.selfController?.voiceState.value.isListening ? (
|
|
5069
|
+
l("div", ks, [
|
|
5070
|
+
l("div", ws, [
|
|
5071
|
+
e.selfController?.voiceState.value.isListening ? (u(), b("div", Cs)) : e.selfController?.voiceState.value.isSpeaking ? (u(), b("div", Ss)) : e.selfController?.voiceState.value.isConnected && !e.selfController?.voiceState.value.isListening && !e.selfController?.voiceState.value.isSpeaking ? (u(), b("div", Ms)) : e.selfController?.voiceState.value.error ? (u(), b("div", As)) : E("", !0)
|
|
5072
5072
|
]),
|
|
5073
|
-
l("p",
|
|
5073
|
+
l("p", Is, U(e.selfController?.voiceState.value.error ? `Error: ${e.selfController.voiceState.value.error}` : e.selfController?.voiceState.value.transcript || "Ready to start a call..."), 1)
|
|
5074
5074
|
])
|
|
5075
5075
|
]),
|
|
5076
|
-
l("div",
|
|
5077
|
-
|
|
5076
|
+
l("div", zs, [
|
|
5077
|
+
V(mt, {
|
|
5078
5078
|
theme: o.value,
|
|
5079
5079
|
icon: t.value,
|
|
5080
5080
|
size: "lg",
|
|
5081
5081
|
loading: i.value,
|
|
5082
5082
|
disabled: a.value,
|
|
5083
|
-
onClick:
|
|
5083
|
+
onClick: c
|
|
5084
5084
|
}, {
|
|
5085
5085
|
default: ee(() => [
|
|
5086
|
-
|
|
5086
|
+
We(U(n.value), 1)
|
|
5087
5087
|
]),
|
|
5088
5088
|
_: 1
|
|
5089
5089
|
}, 8, ["theme", "icon", "loading", "disabled"])
|
|
5090
5090
|
])
|
|
5091
5091
|
]));
|
|
5092
5092
|
}
|
|
5093
|
-
}),
|
|
5093
|
+
}), Es = {
|
|
5094
5094
|
key: 0,
|
|
5095
5095
|
class: "absolute inset-0 flex items-center justify-center bg-gradient-to-br from-theme-800 to-theme-950 rounded-3xl z-10"
|
|
5096
|
-
},
|
|
5096
|
+
}, Ls = { class: "text-sm" }, Ts = {
|
|
5097
5097
|
key: 0,
|
|
5098
5098
|
class: "flex-1 basis-0 flex justify-end"
|
|
5099
|
-
},
|
|
5099
|
+
}, Ps = {
|
|
5100
5100
|
key: 0,
|
|
5101
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"
|
|
5102
|
-
},
|
|
5102
|
+
}, Bs = { class: "flex-1 basis-0 flex flex-col justify-start pt-6" }, Fs = {
|
|
5103
5103
|
key: 1,
|
|
5104
5104
|
class: "flex-1 flex flex-col relative z-20 min-h-0 w-full"
|
|
5105
|
-
},
|
|
5105
|
+
}, Ds = { class: "px-4 pt-4 pb-4 max-w-md mx-auto" }, Vs = {
|
|
5106
5106
|
key: 2,
|
|
5107
5107
|
class: "flex-1 flex flex-col relative z-20 min-h-0 w-full px-4 @[480px]/agent:px-6"
|
|
5108
|
-
},
|
|
5108
|
+
}, js = { class: "flex-1 min-h-0 max-w-md mx-auto w-full" }, Rs = {
|
|
5109
5109
|
key: 2,
|
|
5110
5110
|
class: "bg-gradient-to-br from-theme-800 to-theme-950 text-white flex items-center justify-center h-full p-8"
|
|
5111
|
-
},
|
|
5111
|
+
}, Ns = { class: "text-center max-w-md space-y-4" }, Gs = { class: "text-sm text-white/70 leading-relaxed" }, Os = {
|
|
5112
5112
|
key: 3,
|
|
5113
5113
|
class: "bg-white/10 backdrop-blur-sm text-white/70 flex items-center justify-center h-full"
|
|
5114
5114
|
}, Yt = /* @__PURE__ */ j({
|
|
@@ -5125,8 +5125,8 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
5125
5125
|
},
|
|
5126
5126
|
emits: ["close", "error"],
|
|
5127
5127
|
setup(e, { emit: r }) {
|
|
5128
|
-
const o = r, t = co(), n = P(!1), a = P(!1), i = P(),
|
|
5129
|
-
function
|
|
5128
|
+
const o = r, t = co(), n = P(!1), a = P(!1), i = P(), c = P(), f = B(() => t.value?.agentMode?.value ?? "self"), C = B(() => e.sdk.activeUser.value !== void 0), h = B(() => Dt.find((g) => g.mode === f.value));
|
|
5129
|
+
function d() {
|
|
5130
5130
|
t.value && t.value.destroy();
|
|
5131
5131
|
try {
|
|
5132
5132
|
t.value = new ct({
|
|
@@ -5139,18 +5139,18 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
5139
5139
|
throw console.error("SelfController creation failed:", p), p;
|
|
5140
5140
|
}
|
|
5141
5141
|
}
|
|
5142
|
-
s(
|
|
5142
|
+
s(d, "createSelfController");
|
|
5143
5143
|
function m(p) {
|
|
5144
|
-
if (!
|
|
5144
|
+
if (!c.value)
|
|
5145
5145
|
return;
|
|
5146
|
-
const g =
|
|
5147
|
-
Object.entries(g).forEach(([T,
|
|
5148
|
-
|
|
5146
|
+
const g = yo(p);
|
|
5147
|
+
Object.entries(g).forEach(([T, W]) => {
|
|
5148
|
+
c.value.style.setProperty(`--primary-${T}`, W);
|
|
5149
5149
|
});
|
|
5150
5150
|
}
|
|
5151
5151
|
return s(m, "applyTheme"), Ie(() => {
|
|
5152
5152
|
try {
|
|
5153
|
-
|
|
5153
|
+
d(), m(e.theme);
|
|
5154
5154
|
} catch (p) {
|
|
5155
5155
|
const g = p instanceof Error ? p.message : "Failed to initialize digital self";
|
|
5156
5156
|
i.value = g, o("error", g);
|
|
@@ -5161,19 +5161,19 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
5161
5161
|
m(p);
|
|
5162
5162
|
}), se(() => e.sdk.activeUser.value, (p, g) => {
|
|
5163
5163
|
g && !p && t.value && t.value.setMode("self");
|
|
5164
|
-
}), (p, g) => (
|
|
5164
|
+
}), (p, g) => (u(), b("div", {
|
|
5165
5165
|
ref_key: "rootElement",
|
|
5166
|
-
ref:
|
|
5166
|
+
ref: c,
|
|
5167
5167
|
key: Y(tt)(e.self),
|
|
5168
|
-
class: "@container/agent self-agent w-full h-full overflow-hidden relative",
|
|
5168
|
+
class: "fiction-sdk @container/agent self-agent w-full h-full overflow-hidden relative",
|
|
5169
5169
|
"data-test": "self-agent"
|
|
5170
5170
|
}, [
|
|
5171
|
-
e.loading ? (
|
|
5172
|
-
|
|
5173
|
-
])) : e.self && !i.value ? (
|
|
5171
|
+
e.loading ? (u(), b("div", Es, [
|
|
5172
|
+
V(gt, { class: "text-white size-8" })
|
|
5173
|
+
])) : e.self && !i.value ? (u(), b("div", {
|
|
5174
5174
|
key: 1,
|
|
5175
5175
|
class: "absolute inset-0 bg-cover bg-center bg-no-repeat",
|
|
5176
|
-
style: st({ backgroundImage: `url(${Y(tt)(e.self) || Y(
|
|
5176
|
+
style: st({ backgroundImage: `url(${Y(tt)(e.self) || Y(He)()})` })
|
|
5177
5177
|
}, [
|
|
5178
5178
|
l("div", {
|
|
5179
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"])
|
|
@@ -5202,12 +5202,12 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
5202
5202
|
onClick: g[1] || (g[1] = (T) => a.value = !0)
|
|
5203
5203
|
}, [
|
|
5204
5204
|
l("i", {
|
|
5205
|
-
class: z([
|
|
5205
|
+
class: z([h.value?.icon, "size-4 opacity-60"])
|
|
5206
5206
|
}, null, 2),
|
|
5207
|
-
l("span",
|
|
5207
|
+
l("span", Ls, U(h.value?.label), 1),
|
|
5208
5208
|
g[7] || (g[7] = l("i", { class: "i-tabler-chevron-down size-4" }, null, -1))
|
|
5209
5209
|
], 2),
|
|
5210
|
-
e.hasClose ? (
|
|
5210
|
+
e.hasClose ? (u(), b("div", Ts, [
|
|
5211
5211
|
l("button", {
|
|
5212
5212
|
class: "cursor-pointer flex items-center p-3 rounded-2xl text-white/70 hover:bg-white/10 transition-colors",
|
|
5213
5213
|
onClick: g[2] || (g[2] = et((T) => o("close", "button"), ["stop"]))
|
|
@@ -5217,11 +5217,11 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
5217
5217
|
])) : E("", !0)
|
|
5218
5218
|
], 2)
|
|
5219
5219
|
], 2),
|
|
5220
|
-
f.value === "self" ? (
|
|
5220
|
+
f.value === "self" ? (u(), b("div", Ps, [
|
|
5221
5221
|
g[9] || (g[9] = l("div", { class: "flex-1 basis-0 mb-36" }, null, -1)),
|
|
5222
|
-
|
|
5223
|
-
l("div",
|
|
5224
|
-
|
|
5222
|
+
V(rs, { self: e.self }, null, 8, ["self"]),
|
|
5223
|
+
l("div", Bs, [
|
|
5224
|
+
V(mt, {
|
|
5225
5225
|
theme: "primary",
|
|
5226
5226
|
size: "lg",
|
|
5227
5227
|
class: "w-full",
|
|
@@ -5230,35 +5230,35 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
5230
5230
|
onClick: g[3] || (g[3] = (T) => t.value?.setMode("talk"))
|
|
5231
5231
|
}, {
|
|
5232
5232
|
default: ee(() => [
|
|
5233
|
-
|
|
5233
|
+
We(" Talk to " + U(e.self.name), 1)
|
|
5234
5234
|
]),
|
|
5235
5235
|
_: 1
|
|
5236
5236
|
})
|
|
5237
5237
|
])
|
|
5238
|
-
])) : f.value === "talk" ? (
|
|
5239
|
-
C.value ? (
|
|
5238
|
+
])) : f.value === "talk" ? (u(), b("div", Fs, [
|
|
5239
|
+
C.value ? (u(), b(Ae, { key: 1 }, [
|
|
5240
5240
|
l("div", null, [
|
|
5241
|
-
l("div",
|
|
5242
|
-
|
|
5241
|
+
l("div", Ds, [
|
|
5242
|
+
V(Wo, { self: e.self }, null, 8, ["self"])
|
|
5243
5243
|
])
|
|
5244
5244
|
]),
|
|
5245
|
-
|
|
5246
|
-
], 64)) : (
|
|
5245
|
+
V($s, { "self-controller": t.value }, null, 8, ["self-controller"])
|
|
5246
|
+
], 64)) : (u(), _(It, {
|
|
5247
5247
|
key: 0,
|
|
5248
5248
|
sdk: e.sdk
|
|
5249
5249
|
}, null, 8, ["sdk"]))
|
|
5250
|
-
])) : (
|
|
5251
|
-
l("div",
|
|
5252
|
-
f.value === "chat" ? (
|
|
5253
|
-
C.value ? (
|
|
5250
|
+
])) : (u(), b("div", Vs, [
|
|
5251
|
+
l("div", js, [
|
|
5252
|
+
f.value === "chat" ? (u(), b(Ae, { key: 0 }, [
|
|
5253
|
+
C.value ? (u(), _(Yr, {
|
|
5254
5254
|
key: 1,
|
|
5255
5255
|
"self-controller": t.value,
|
|
5256
5256
|
self: e.self
|
|
5257
|
-
}, null, 8, ["self-controller", "self"])) : (
|
|
5257
|
+
}, null, 8, ["self-controller", "self"])) : (u(), _(It, {
|
|
5258
5258
|
key: 0,
|
|
5259
5259
|
sdk: e.sdk
|
|
5260
5260
|
}, null, 8, ["sdk"]))
|
|
5261
|
-
], 64)) : f.value === "info" ? (
|
|
5261
|
+
], 64)) : f.value === "info" ? (u(), _(Vr, {
|
|
5262
5262
|
key: 1,
|
|
5263
5263
|
self: e.self
|
|
5264
5264
|
}, null, 8, ["self"])) : E("", !0)
|
|
@@ -5277,32 +5277,32 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
5277
5277
|
], -1)
|
|
5278
5278
|
])], 2)
|
|
5279
5279
|
], 2)
|
|
5280
|
-
], 4)) : i.value ? (
|
|
5281
|
-
l("div",
|
|
5280
|
+
], 4)) : i.value ? (u(), b("div", Rs, [
|
|
5281
|
+
l("div", Ns, [
|
|
5282
5282
|
g[11] || (g[11] = l("div", { class: "flex justify-center" }, [
|
|
5283
5283
|
l("div", { class: "rounded-full bg-red-500/20 flex items-center justify-center size-10" }, [
|
|
5284
5284
|
l("i", { class: "i-tabler-alert-circle size-6 text-red-400" })
|
|
5285
5285
|
])
|
|
5286
5286
|
], -1)),
|
|
5287
5287
|
g[12] || (g[12] = l("h3", { class: "text-lg font-medium" }, " Self Error ", -1)),
|
|
5288
|
-
l("p",
|
|
5288
|
+
l("p", Gs, U(i.value), 1)
|
|
5289
5289
|
])
|
|
5290
|
-
])) : (
|
|
5291
|
-
|
|
5290
|
+
])) : (u(), b("div", Os, " There was an error loading the digital self. Please try again later. ")),
|
|
5291
|
+
V(gs, {
|
|
5292
5292
|
modelValue: n.value,
|
|
5293
5293
|
"onUpdate:modelValue": g[4] || (g[4] = (T) => n.value = T),
|
|
5294
5294
|
self: e.self,
|
|
5295
5295
|
sdk: e.sdk,
|
|
5296
5296
|
title: e.self.name
|
|
5297
5297
|
}, null, 8, ["modelValue", "self", "sdk", "title"]),
|
|
5298
|
-
|
|
5298
|
+
V(fs, {
|
|
5299
5299
|
modelValue: a.value,
|
|
5300
5300
|
"onUpdate:modelValue": g[5] || (g[5] = (T) => a.value = T),
|
|
5301
5301
|
"self-controller": t.value
|
|
5302
5302
|
}, null, 8, ["modelValue", "self-controller"])
|
|
5303
5303
|
]));
|
|
5304
5304
|
}
|
|
5305
|
-
}),
|
|
5305
|
+
}), Us = { class: "flex min-h-full items-center justify-center text-center p-4 py-8" }, Ws = {
|
|
5306
5306
|
key: 0,
|
|
5307
5307
|
class: "text-base p-4 font-semibold"
|
|
5308
5308
|
}, Hs = {
|
|
@@ -5310,7 +5310,7 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
5310
5310
|
class: "flex items-center gap-2 px-2"
|
|
5311
5311
|
}, qs = {
|
|
5312
5312
|
inheritAttrs: !1
|
|
5313
|
-
},
|
|
5313
|
+
}, Ks = /* @__PURE__ */ j({
|
|
5314
5314
|
...qs,
|
|
5315
5315
|
name: "FModal",
|
|
5316
5316
|
__name: "FModal",
|
|
@@ -5327,36 +5327,37 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
5327
5327
|
emits: ["update:vis", "close", "escape"],
|
|
5328
5328
|
setup(e, { emit: r }) {
|
|
5329
5329
|
const o = r, t = P(!1);
|
|
5330
|
-
function n(
|
|
5331
|
-
const { reason: m } =
|
|
5330
|
+
function n(d) {
|
|
5331
|
+
const { reason: m } = d;
|
|
5332
5332
|
o("update:vis", !1), o("close", !0), m === "escape" && o("escape", !0);
|
|
5333
5333
|
}
|
|
5334
5334
|
s(n, "close");
|
|
5335
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"];
|
|
5336
|
-
e.fullScreen ? a.push("fixed inset-0") : a.push("rounded-
|
|
5337
|
-
const
|
|
5336
|
+
e.fullScreen ? a.push("fixed inset-0") : a.push("rounded-2xl my-6 mx-3");
|
|
5337
|
+
const c = [
|
|
5338
5338
|
"relative",
|
|
5339
5339
|
"text-left",
|
|
5340
5340
|
"transform",
|
|
5341
5341
|
"transition-all",
|
|
5342
5342
|
"w-full",
|
|
5343
|
+
"overflow-hidden",
|
|
5343
5344
|
...a,
|
|
5344
5345
|
...i
|
|
5345
5346
|
], f = P(!1), C = [];
|
|
5346
5347
|
Ie(async () => {
|
|
5347
5348
|
t.value = !0;
|
|
5348
|
-
const
|
|
5349
|
+
const d = se(
|
|
5349
5350
|
() => e.vis,
|
|
5350
5351
|
(m) => {
|
|
5351
5352
|
m ? setTimeout(() => f.value = !0, 300) : f.value = !1;
|
|
5352
5353
|
},
|
|
5353
5354
|
{ immediate: !0 }
|
|
5354
5355
|
);
|
|
5355
|
-
C.push(
|
|
5356
|
+
C.push(d);
|
|
5356
5357
|
}), ft(() => {
|
|
5357
|
-
C.forEach((
|
|
5358
|
+
C.forEach((d) => d());
|
|
5358
5359
|
});
|
|
5359
|
-
const
|
|
5360
|
+
const h = B(() => e.transitionMode === "slideUp" ? {
|
|
5360
5361
|
enterActiveClass: "ease-[cubic-bezier(0.25,1,0.33,1)] duration-500",
|
|
5361
5362
|
enterFromClass: "opacity-0 translate-y-full scale-95",
|
|
5362
5363
|
enterToClass: "opacity-100 translate-y-0 scale-100",
|
|
@@ -5371,7 +5372,7 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
5371
5372
|
leaveFromClass: "opacity-100 translate-y-0 scale-100",
|
|
5372
5373
|
leaveToClass: "opacity-0 scale-75"
|
|
5373
5374
|
});
|
|
5374
|
-
return (
|
|
5375
|
+
return (d, m) => t.value ? (u(), _(uo, {
|
|
5375
5376
|
key: 0,
|
|
5376
5377
|
to: e.teleportTo
|
|
5377
5378
|
}, [
|
|
@@ -5381,7 +5382,7 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
5381
5382
|
role: "dialog",
|
|
5382
5383
|
"aria-modal": "true"
|
|
5383
5384
|
}, [
|
|
5384
|
-
|
|
5385
|
+
V(_e, {
|
|
5385
5386
|
"enter-active-class": "ease-out duration-300",
|
|
5386
5387
|
"enter-from-class": "opacity-0",
|
|
5387
5388
|
"enter-to-class": "opacity-100",
|
|
@@ -5390,7 +5391,7 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
5390
5391
|
"leave-to-class": "opacity-0"
|
|
5391
5392
|
}, {
|
|
5392
5393
|
default: ee(() => [
|
|
5393
|
-
e.vis ? (
|
|
5394
|
+
e.vis ? (u(), b("div", {
|
|
5394
5395
|
key: 0,
|
|
5395
5396
|
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",
|
|
5396
5397
|
onClick: m[0] || (m[0] = (p) => n({ reason: "escape" }))
|
|
@@ -5402,23 +5403,23 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
5402
5403
|
class: "fixed inset-0 z-40 overflow-y-auto",
|
|
5403
5404
|
onClick: m[3] || (m[3] = (p) => n({ reason: "escape" }))
|
|
5404
5405
|
}, [
|
|
5405
|
-
l("div",
|
|
5406
|
-
|
|
5406
|
+
l("div", Us, [
|
|
5407
|
+
V(_e, ho(fo(h.value)), {
|
|
5407
5408
|
default: ee(() => [
|
|
5408
|
-
e.vis ? (
|
|
5409
|
+
e.vis ? (u(), b("div", {
|
|
5409
5410
|
key: 0,
|
|
5410
|
-
class: z([
|
|
5411
|
+
class: z([c, "w-full"]),
|
|
5411
5412
|
onClick: m[2] || (m[2] = et(() => {
|
|
5412
5413
|
}, ["stop"]))
|
|
5413
5414
|
}, [
|
|
5414
|
-
e.hasClose || e.title ||
|
|
5415
|
+
e.hasClose || e.title || d.$slots.actions ? (u(), b("div", {
|
|
5415
5416
|
key: 0,
|
|
5416
|
-
class: z(!e.title && (e.hasClose ||
|
|
5417
|
+
class: z(!e.title && (e.hasClose || d.$slots.actions) ? "absolute top-0 right-0 z-10" : "flex justify-between items-center")
|
|
5417
5418
|
}, [
|
|
5418
|
-
e.title ? (
|
|
5419
|
-
e.hasClose ||
|
|
5420
|
-
Ce(
|
|
5421
|
-
e.hasClose ? (
|
|
5419
|
+
e.title ? (u(), b("h2", Ws, U(e.title), 1)) : E("", !0),
|
|
5420
|
+
e.hasClose || d.$slots.actions ? (u(), b("div", Hs, [
|
|
5421
|
+
Ce(d.$slots, "actions"),
|
|
5422
|
+
e.hasClose ? (u(), _(Kt, {
|
|
5422
5423
|
key: 0,
|
|
5423
5424
|
class: "relative",
|
|
5424
5425
|
"data-test-id": "close-modal",
|
|
@@ -5426,7 +5427,7 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
5426
5427
|
})) : E("", !0)
|
|
5427
5428
|
])) : E("", !0)
|
|
5428
5429
|
], 2)) : E("", !0),
|
|
5429
|
-
Ce(
|
|
5430
|
+
Ce(d.$slots, "default")
|
|
5430
5431
|
])) : E("", !0)
|
|
5431
5432
|
]),
|
|
5432
5433
|
_: 3
|
|
@@ -5436,7 +5437,7 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
5436
5437
|
], 2)
|
|
5437
5438
|
], 8, ["to"])) : E("", !0);
|
|
5438
5439
|
}
|
|
5439
|
-
}),
|
|
5440
|
+
}), Zs = { class: "self-wrap" }, Ys = {
|
|
5440
5441
|
key: 0,
|
|
5441
5442
|
class: "flex items-center justify-center h-full"
|
|
5442
5443
|
}, Jt = /* @__PURE__ */ j({
|
|
@@ -5451,42 +5452,94 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
5451
5452
|
apiBase: {}
|
|
5452
5453
|
},
|
|
5453
5454
|
setup(e) {
|
|
5454
|
-
const r =
|
|
5455
|
+
const r = bo("SelfWrap"), o = e, t = o.sdk || new vo({
|
|
5455
5456
|
isDev: typeof window < "u" ? window.location.hostname === "localhost" || window.location.hostname.includes("127.0.0.1") : !1,
|
|
5456
|
-
apiBase:
|
|
5457
|
-
}),
|
|
5457
|
+
apiBase: o.apiBase
|
|
5458
|
+
}), n = P(!o.self), a = P(o.self), i = P();
|
|
5458
5459
|
return Ie(async () => {
|
|
5459
|
-
if (
|
|
5460
|
-
|
|
5460
|
+
if (o.self) {
|
|
5461
|
+
r.debug("Self provided via props, skipping fetch", {
|
|
5462
|
+
selfId: o.self.selfId,
|
|
5463
|
+
handle: o.self.handle
|
|
5464
|
+
}), n.value = !1;
|
|
5461
5465
|
return;
|
|
5462
5466
|
}
|
|
5463
|
-
if (!
|
|
5464
|
-
|
|
5467
|
+
if (!o.handle) {
|
|
5468
|
+
i.value = "No handle or self provided", r.warn("SelfWrap mounted without handle or self", {
|
|
5469
|
+
propsReceived: {
|
|
5470
|
+
handle: o.handle,
|
|
5471
|
+
self: o.self,
|
|
5472
|
+
context: o.context,
|
|
5473
|
+
apiBase: o.apiBase
|
|
5474
|
+
},
|
|
5475
|
+
sdkState: {
|
|
5476
|
+
isDev: t.isDev,
|
|
5477
|
+
apiBase: t.apiBase
|
|
5478
|
+
}
|
|
5479
|
+
}), n.value = !1;
|
|
5465
5480
|
return;
|
|
5466
5481
|
}
|
|
5467
5482
|
try {
|
|
5468
|
-
|
|
5469
|
-
const
|
|
5470
|
-
|
|
5471
|
-
|
|
5472
|
-
|
|
5483
|
+
n.value = !0, r.debug("Fetching public self", { handle: o.handle });
|
|
5484
|
+
const c = await t.getPublicSelf({ handle: o.handle });
|
|
5485
|
+
c ? (a.value = c, r.debug("Successfully fetched public self", {
|
|
5486
|
+
selfId: c.selfId,
|
|
5487
|
+
handle: c.handle
|
|
5488
|
+
})) : (i.value = t.error.value || "Self not found", r.error("Failed to fetch public self - no data returned", {
|
|
5489
|
+
handle: o.handle,
|
|
5490
|
+
sdkError: t.error.value,
|
|
5491
|
+
sdkState: {
|
|
5492
|
+
isDev: t.isDev,
|
|
5493
|
+
apiBase: t.apiBase,
|
|
5494
|
+
loading: t.loading.value
|
|
5495
|
+
}
|
|
5496
|
+
}));
|
|
5497
|
+
} catch (c) {
|
|
5498
|
+
i.value = c instanceof Error ? c.message : "Failed to fetch self", r.error("Exception while fetching public self", {
|
|
5499
|
+
handle: o.handle,
|
|
5500
|
+
error: c instanceof Error ? {
|
|
5501
|
+
message: c.message,
|
|
5502
|
+
stack: c.stack
|
|
5503
|
+
} : c,
|
|
5504
|
+
sdkState: {
|
|
5505
|
+
isDev: t.isDev,
|
|
5506
|
+
apiBase: t.apiBase,
|
|
5507
|
+
error: t.error.value
|
|
5508
|
+
}
|
|
5509
|
+
});
|
|
5473
5510
|
} finally {
|
|
5474
|
-
|
|
5511
|
+
n.value = !1, a.value || r.debug("SelfWrap component will render empty (silent failure)", {
|
|
5512
|
+
state: {
|
|
5513
|
+
loading: n.value,
|
|
5514
|
+
hasSelf: !!a.value,
|
|
5515
|
+
error: i.value
|
|
5516
|
+
},
|
|
5517
|
+
props: {
|
|
5518
|
+
handle: o.handle,
|
|
5519
|
+
context: o.context,
|
|
5520
|
+
apiBase: o.apiBase
|
|
5521
|
+
},
|
|
5522
|
+
sdkState: {
|
|
5523
|
+
isDev: t.isDev,
|
|
5524
|
+
apiBase: t.apiBase,
|
|
5525
|
+
error: t.error.value
|
|
5526
|
+
}
|
|
5527
|
+
});
|
|
5475
5528
|
}
|
|
5476
|
-
}), (
|
|
5477
|
-
|
|
5529
|
+
}), (c, f) => (u(), b("div", Zs, [
|
|
5530
|
+
n.value ? (u(), b("div", Ys, [...f[0] || (f[0] = [
|
|
5478
5531
|
l("div", { class: "animate-spin rounded-full size-6 border-b-2 border-white" }, null, -1)
|
|
5479
|
-
])])) :
|
|
5532
|
+
])])) : a.value ? Ce(c.$slots, "default", {
|
|
5480
5533
|
key: 1,
|
|
5481
|
-
sdk: Y(
|
|
5482
|
-
self:
|
|
5534
|
+
sdk: Y(t),
|
|
5535
|
+
self: a.value,
|
|
5483
5536
|
context: e.context,
|
|
5484
5537
|
firstMessage: e.firstMessage,
|
|
5485
|
-
loading:
|
|
5538
|
+
loading: n.value
|
|
5486
5539
|
}) : E("", !0)
|
|
5487
5540
|
]));
|
|
5488
5541
|
}
|
|
5489
|
-
}),
|
|
5542
|
+
}), Js = /* @__PURE__ */ j({
|
|
5490
5543
|
__name: "SelfProvider",
|
|
5491
5544
|
props: {
|
|
5492
5545
|
sdk: {},
|
|
@@ -5497,24 +5550,27 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
5497
5550
|
hasClose: { type: Boolean },
|
|
5498
5551
|
apiBase: {}
|
|
5499
5552
|
},
|
|
5500
|
-
|
|
5501
|
-
|
|
5502
|
-
|
|
5503
|
-
|
|
5504
|
-
|
|
5505
|
-
|
|
5506
|
-
|
|
5507
|
-
|
|
5508
|
-
|
|
5509
|
-
"
|
|
5553
|
+
emits: ["close", "error"],
|
|
5554
|
+
setup(e, { emit: r }) {
|
|
5555
|
+
const o = e, t = r;
|
|
5556
|
+
return (n, a) => (u(), _(Jt, go(o, { class: "self-provider size-full relative" }), {
|
|
5557
|
+
default: ee((i) => [
|
|
5558
|
+
V(Yt, {
|
|
5559
|
+
sdk: i.sdk,
|
|
5560
|
+
self: i.self,
|
|
5561
|
+
context: i.context,
|
|
5562
|
+
"first-message": i.firstMessage,
|
|
5563
|
+
"has-close": o.hasClose,
|
|
5510
5564
|
"is-active": !0,
|
|
5511
|
-
class: "size-full"
|
|
5565
|
+
class: "size-full",
|
|
5566
|
+
onClose: a[0] || (a[0] = (c) => t("close", c)),
|
|
5567
|
+
onError: a[1] || (a[1] = (c) => t("error", c))
|
|
5512
5568
|
}, null, 8, ["sdk", "self", "context", "first-message", "has-close"])
|
|
5513
5569
|
]),
|
|
5514
5570
|
_: 1
|
|
5515
5571
|
}, 16));
|
|
5516
5572
|
}
|
|
5517
|
-
}),
|
|
5573
|
+
}), Qs = { class: "relative w-full h-[80vh] md:h-[600px]" }, ln = /* @__PURE__ */ j({
|
|
5518
5574
|
name: "SelfModal",
|
|
5519
5575
|
__name: "SelfModal",
|
|
5520
5576
|
props: {
|
|
@@ -5528,16 +5584,16 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
5528
5584
|
emits: ["update:vis"],
|
|
5529
5585
|
setup(e, { emit: r }) {
|
|
5530
5586
|
const o = r;
|
|
5531
|
-
return (t, n) => (
|
|
5587
|
+
return (t, n) => (u(), _(Ks, {
|
|
5532
5588
|
vis: e.vis,
|
|
5533
5589
|
"modal-class": "max-w-4xl p-0",
|
|
5534
|
-
"style-class": "bg-transparent shadow-2xl",
|
|
5590
|
+
"style-class": "bg-transparent shadow-2xl rounded-2xl",
|
|
5535
5591
|
"has-close": !1,
|
|
5536
5592
|
"onUpdate:vis": n[1] || (n[1] = (a) => o("update:vis", a))
|
|
5537
5593
|
}, {
|
|
5538
5594
|
default: ee(() => [
|
|
5539
|
-
l("div",
|
|
5540
|
-
|
|
5595
|
+
l("div", Qs, [
|
|
5596
|
+
V(Js, {
|
|
5541
5597
|
sdk: e.sdk,
|
|
5542
5598
|
self: e.self,
|
|
5543
5599
|
handle: e.handle,
|
|
@@ -5551,10 +5607,10 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
5551
5607
|
_: 1
|
|
5552
5608
|
}, 8, ["vis"]));
|
|
5553
5609
|
}
|
|
5554
|
-
}),
|
|
5610
|
+
}), Xs = {
|
|
5555
5611
|
key: 0,
|
|
5556
5612
|
class: "relative h-full w-full"
|
|
5557
|
-
},
|
|
5613
|
+
}, _s = { 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" }, en = ["src", "alt"], cn = /* @__PURE__ */ j({
|
|
5558
5614
|
__name: "SelfWidget",
|
|
5559
5615
|
props: {
|
|
5560
5616
|
sdk: {},
|
|
@@ -5577,25 +5633,25 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
5577
5633
|
t.value = !0;
|
|
5578
5634
|
}
|
|
5579
5635
|
s(i, "open");
|
|
5580
|
-
function
|
|
5636
|
+
function c() {
|
|
5581
5637
|
t.value = !1;
|
|
5582
5638
|
}
|
|
5583
|
-
s(
|
|
5639
|
+
s(c, "close");
|
|
5584
5640
|
function f() {
|
|
5585
|
-
|
|
5641
|
+
c();
|
|
5586
5642
|
}
|
|
5587
5643
|
return s(f, "handleClose"), r({
|
|
5588
5644
|
toggle: a,
|
|
5589
5645
|
open: i,
|
|
5590
|
-
close:
|
|
5591
|
-
}), (C,
|
|
5646
|
+
close: c
|
|
5647
|
+
}), (C, h) => (u(), _(Jt, {
|
|
5592
5648
|
sdk: e.sdk,
|
|
5593
5649
|
handle: e.handle,
|
|
5594
5650
|
context: e.context,
|
|
5595
5651
|
"first-message": e.firstMessage
|
|
5596
5652
|
}, {
|
|
5597
|
-
default: ee(({ self:
|
|
5598
|
-
|
|
5653
|
+
default: ee(({ self: d, sdk: m }) => [
|
|
5654
|
+
d ? (u(), b("div", {
|
|
5599
5655
|
key: 0,
|
|
5600
5656
|
class: z(["fixed z-[999999] pointer-events-auto", [
|
|
5601
5657
|
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"
|
|
@@ -5608,18 +5664,18 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
5608
5664
|
style: st({
|
|
5609
5665
|
"transform-origin": o.position === "bottom-left" ? "bottom left" : o.position === "top-right" ? "top right" : o.position === "top-left" ? "top left" : "bottom right"
|
|
5610
5666
|
}),
|
|
5611
|
-
onClick:
|
|
5667
|
+
onClick: h[0] || (h[0] = (p) => t.value ? void 0 : a())
|
|
5612
5668
|
}, [
|
|
5613
|
-
t.value ? E("", !0) : (
|
|
5614
|
-
l("div",
|
|
5669
|
+
t.value ? E("", !0) : (u(), b("div", Xs, [
|
|
5670
|
+
l("div", _s, [
|
|
5615
5671
|
l("img", {
|
|
5616
|
-
src: Y(tt)(
|
|
5617
|
-
alt: `${
|
|
5672
|
+
src: Y(tt)(d) || Y(He)(),
|
|
5673
|
+
alt: `${d.name} avatar`,
|
|
5618
5674
|
class: "h-full w-full object-cover pointer-events-none"
|
|
5619
|
-
}, null, 8,
|
|
5620
|
-
|
|
5675
|
+
}, null, 8, en),
|
|
5676
|
+
h[1] || (h[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))
|
|
5621
5677
|
]),
|
|
5622
|
-
|
|
5678
|
+
h[2] || (h[2] = l("div", { class: "absolute top-0.5 right-0.5" }, [
|
|
5623
5679
|
l("div", {
|
|
5624
5680
|
class: "size-3 bg-green-500 rounded-full ring-2 ring-white absolute animate-ping",
|
|
5625
5681
|
style: { "animation-duration": "3s" }
|
|
@@ -5627,11 +5683,11 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
5627
5683
|
l("div", { class: "size-3 bg-green-500 rounded-full ring-2 ring-white" })
|
|
5628
5684
|
], -1))
|
|
5629
5685
|
])),
|
|
5630
|
-
t.value &&
|
|
5686
|
+
t.value && d ? (u(), _(Yt, {
|
|
5631
5687
|
key: 1,
|
|
5632
5688
|
class: "rounded-3xl shadow-2xl border border-white/10",
|
|
5633
5689
|
sdk: m,
|
|
5634
|
-
self:
|
|
5690
|
+
self: d,
|
|
5635
5691
|
context: e.context,
|
|
5636
5692
|
"first-message": e.firstMessage,
|
|
5637
5693
|
"has-close": !0,
|
|
@@ -5646,23 +5702,23 @@ const Z = /* @__PURE__ */ s((e) => {
|
|
|
5646
5702
|
}
|
|
5647
5703
|
});
|
|
5648
5704
|
export {
|
|
5649
|
-
|
|
5650
|
-
|
|
5651
|
-
|
|
5652
|
-
|
|
5705
|
+
Dt as AGENT_MODES,
|
|
5706
|
+
ko as AUDIO_FFT_SIZE,
|
|
5707
|
+
Co as AUDIO_LEVEL_UPDATE_INTERVAL,
|
|
5708
|
+
wo as AUDIO_SMOOTHING,
|
|
5653
5709
|
lt as ClientAudio,
|
|
5654
5710
|
Yt as SelfAgent,
|
|
5655
|
-
|
|
5656
|
-
|
|
5657
|
-
|
|
5711
|
+
ln as SelfModal,
|
|
5712
|
+
Js as SelfProvider,
|
|
5713
|
+
cn as SelfWidget,
|
|
5658
5714
|
Jt as SelfWrap,
|
|
5659
|
-
|
|
5715
|
+
So as VISUALIZER_CONFIG,
|
|
5660
5716
|
X as VOICE_FREQUENCIES,
|
|
5661
|
-
|
|
5662
|
-
|
|
5717
|
+
an as generateFirstMessage,
|
|
5718
|
+
He as getFallbackAvatarDataUrl,
|
|
5663
5719
|
At as getImageSrc,
|
|
5664
5720
|
tt as getSelfAvatarUrl,
|
|
5665
5721
|
ot as handleImageError,
|
|
5666
|
-
|
|
5722
|
+
Mo as parseVoiceMessage
|
|
5667
5723
|
};
|
|
5668
5724
|
//# sourceMappingURL=self.js.map
|