@pagelines/sdk 1.0.757 → 1.0.759
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/AgentProvider.js +234 -232
- package/dist/AgentProvider.js.map +1 -1
- package/dist/AgentWidgetModal.js +184 -29
- package/dist/AgentWidgetModal.js.map +1 -1
- package/dist/AgentWrap.js +819 -611
- package/dist/AgentWrap.js.map +1 -1
- package/dist/agent/AgentController.d.ts +80 -22
- package/dist/agent/index.d.ts +4 -2
- package/dist/agent/schema.d.ts +2 -17
- package/dist/agent/ui/AgentAvatar.vue.d.ts +2 -0
- package/dist/agent/ui/AgentChat.vue.d.ts +3 -0
- package/dist/agent/ui/ElCreateAgent.vue.d.ts +2 -0
- package/dist/agent/ui/{AgentModal.vue.d.ts → VoiceMode.vue.d.ts} +7 -10
- package/dist/agent/utils.d.ts +0 -4
- package/dist/agent/voice/provider.d.ts +28 -0
- package/dist/agent/voice/providers/elevenlabs/provider.d.ts +30 -0
- package/dist/agent/voice/providers/livekit/provider.d.ts +55 -0
- package/dist/agent/voice/voice-session-client.d.ts +44 -0
- package/dist/agent.js +173 -74
- package/dist/agent.js.map +1 -1
- package/dist/clients/ChatClient.d.ts +1 -9
- package/dist/contract.js +564 -490
- package/dist/contract.js.map +1 -1
- package/dist/demo/index.d.ts +1 -0
- package/dist/provider.js +40 -0
- package/dist/provider.js.map +1 -0
- package/dist/provider2.js +16451 -0
- package/dist/provider2.js.map +1 -0
- package/dist/provider3.js +18439 -0
- package/dist/provider3.js.map +1 -0
- package/dist/sdk.css +1 -1
- package/dist/sdkClient.d.ts +8 -0
- package/dist/sdkClient.js +37 -47
- package/dist/sdkClient.js.map +1 -1
- package/dist/widget/composables/useWidgetState.d.ts +3 -0
- package/dist/widget.js +23 -23
- package/package.json +3 -1
- package/dist/FModal.js +0 -165
- package/dist/FModal.js.map +0 -1
package/dist/AgentProvider.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import "./rolldown-runtime.js";
|
|
2
2
|
import { SOCIAL_PLATFORMS as e } from "./constants.js";
|
|
3
|
-
import { a as t, c as n, d as r, f as i,
|
|
4
|
-
import { getColorSchemeOklch as
|
|
5
|
-
import { Fragment as
|
|
3
|
+
import { a as t, c as n, d as r, f as i, h as a, l as o, n as s, o as c, p as l, s as u, t as d, u as f } from "./AgentWrap.js";
|
|
4
|
+
import { getColorSchemeOklch as ee } from "@pagelines/core";
|
|
5
|
+
import { Fragment as p, Transition as m, TransitionGroup as h, computed as g, createBlock as _, createCommentVNode as v, createElementBlock as y, createElementVNode as b, createSlots as x, createTextVNode as S, createVNode as C, defineComponent as w, guardReactiveProps as T, mergeProps as E, normalizeClass as D, normalizeProps as O, normalizeStyle as k, onMounted as A, onUnmounted as te, openBlock as j, ref as M, renderList as N, renderSlot as P, shallowRef as ne, toDisplayString as F, unref as I, watch as L, withCtx as R, withKeys as z, withModifiers as B } from "vue";
|
|
6
6
|
//#endregion
|
|
7
7
|
//#region ui/EffectTransitionList.vue
|
|
8
|
-
var
|
|
8
|
+
var V = /* @__PURE__ */ w({
|
|
9
9
|
__name: "EffectTransitionList",
|
|
10
10
|
props: {
|
|
11
11
|
disabled: {
|
|
@@ -15,39 +15,39 @@ var B = /* @__PURE__ */ C({
|
|
|
15
15
|
mode: { default: "block" }
|
|
16
16
|
},
|
|
17
17
|
setup(e) {
|
|
18
|
-
return (t, n) => (
|
|
19
|
-
default:
|
|
18
|
+
return (t, n) => (j(), _(h, { name: e.disabled ? "" : "nlist" }, {
|
|
19
|
+
default: R(() => [P(t.$slots, "default")]),
|
|
20
20
|
_: 3
|
|
21
21
|
}, 8, ["name"]));
|
|
22
22
|
}
|
|
23
|
-
}),
|
|
23
|
+
}), H = ["data-test-mode"], U = { class: "w-full max-w-xs space-y-12" }, W = {
|
|
24
24
|
key: 0,
|
|
25
25
|
class: "text-xs text-theme-400 text-center"
|
|
26
|
-
},
|
|
26
|
+
}, G = { class: "text-base font-light text-white text-center" }, K = { class: "space-y-6 relative" }, q = {
|
|
27
27
|
key: "email-field",
|
|
28
28
|
class: "w-full"
|
|
29
|
-
},
|
|
29
|
+
}, J = {
|
|
30
30
|
key: "code-field",
|
|
31
31
|
class: "w-full"
|
|
32
|
-
},
|
|
32
|
+
}, Y = /* @__PURE__ */ w({
|
|
33
33
|
__name: "ElAuthGate",
|
|
34
34
|
props: { sdk: {} },
|
|
35
35
|
setup(e) {
|
|
36
|
-
let
|
|
36
|
+
let t = M({
|
|
37
37
|
email: "",
|
|
38
38
|
code: ""
|
|
39
|
-
}), r =
|
|
39
|
+
}), r = M("email"), i = M(!1), a = {
|
|
40
40
|
email: {
|
|
41
41
|
title: "Enter Your Email",
|
|
42
42
|
button: {
|
|
43
43
|
label: "Continue",
|
|
44
|
-
disabled: () => !
|
|
44
|
+
disabled: () => !t.value.email || i.value
|
|
45
45
|
},
|
|
46
46
|
action: async () => {
|
|
47
47
|
if (!i.value) {
|
|
48
48
|
i.value = !0;
|
|
49
49
|
try {
|
|
50
|
-
await e.sdk.auth.requestAuthCode({ email:
|
|
50
|
+
await e.sdk.auth.requestAuthCode({ email: t.value.email }) && (r.value = "code");
|
|
51
51
|
} finally {
|
|
52
52
|
i.value = !1;
|
|
53
53
|
}
|
|
@@ -58,15 +58,15 @@ var B = /* @__PURE__ */ C({
|
|
|
58
58
|
title: "Enter Verification Code",
|
|
59
59
|
button: {
|
|
60
60
|
label: "Verify",
|
|
61
|
-
disabled: () =>
|
|
61
|
+
disabled: () => t.value.code.length !== 6 || i.value
|
|
62
62
|
},
|
|
63
63
|
action: async () => {
|
|
64
64
|
if (!i.value) {
|
|
65
65
|
i.value = !0;
|
|
66
66
|
try {
|
|
67
67
|
await e.sdk.auth.loginWithCode({
|
|
68
|
-
email:
|
|
69
|
-
code:
|
|
68
|
+
email: t.value.email,
|
|
69
|
+
code: t.value.code
|
|
70
70
|
});
|
|
71
71
|
} finally {
|
|
72
72
|
i.value = !1;
|
|
@@ -74,33 +74,33 @@ var B = /* @__PURE__ */ C({
|
|
|
74
74
|
}
|
|
75
75
|
}
|
|
76
76
|
}
|
|
77
|
-
}, o =
|
|
78
|
-
return
|
|
77
|
+
}, o = g(() => a[r.value]);
|
|
78
|
+
return L(() => e.sdk.activeUser.value, (e) => {
|
|
79
79
|
e && r.value === "code" && console.log("[ElAuthGate] Authentication successful", { email: e.email });
|
|
80
|
-
}), (i, a) => (
|
|
80
|
+
}), (i, a) => (j(), y("div", {
|
|
81
81
|
"data-test": "auth-form",
|
|
82
82
|
"data-test-mode": r.value,
|
|
83
83
|
class: "flex flex-col items-center justify-center h-full p-6"
|
|
84
|
-
}, [
|
|
85
|
-
e.sdk.error.value ? (
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
default:
|
|
89
|
-
modelValue:
|
|
90
|
-
"onUpdate:modelValue": a[0] || (a[0] = (e) =>
|
|
84
|
+
}, [b("div", U, [
|
|
85
|
+
e.sdk.error.value ? (j(), y("p", W, F(e.sdk.error.value), 1)) : v("", !0),
|
|
86
|
+
b("h3", G, F(o.value.title), 1),
|
|
87
|
+
b("div", K, [C(V, null, {
|
|
88
|
+
default: R(() => [r.value === "email" ? (j(), y("div", q, [C(u, {
|
|
89
|
+
modelValue: t.value.email,
|
|
90
|
+
"onUpdate:modelValue": a[0] || (a[0] = (e) => t.value.email = e),
|
|
91
91
|
"data-test": "auth-email-input",
|
|
92
|
-
onKeyup:
|
|
93
|
-
}, null, 8, ["modelValue", "onKeyup"])])) : (
|
|
94
|
-
modelValue:
|
|
95
|
-
"onUpdate:modelValue": a[1] || (a[1] = (e) =>
|
|
92
|
+
onKeyup: z(o.value.action, ["enter"])
|
|
93
|
+
}, null, 8, ["modelValue", "onKeyup"])])) : (j(), y("div", J, [C(c, {
|
|
94
|
+
modelValue: t.value.code,
|
|
95
|
+
"onUpdate:modelValue": a[1] || (a[1] = (e) => t.value.code = e),
|
|
96
96
|
length: 6,
|
|
97
97
|
"focus-first": !0,
|
|
98
98
|
"data-test": "auth-code-input",
|
|
99
99
|
onAutoSubmit: o.value.action
|
|
100
|
-
}, null, 8, ["modelValue", "onAutoSubmit"])])), (
|
|
100
|
+
}, null, 8, ["modelValue", "onAutoSubmit"])])), (j(), y("div", {
|
|
101
101
|
key: o.value.button.label,
|
|
102
102
|
class: "space-y-4 w-full"
|
|
103
|
-
}, [
|
|
103
|
+
}, [C(n, {
|
|
104
104
|
theme: "primary",
|
|
105
105
|
size: "md",
|
|
106
106
|
class: "w-full",
|
|
@@ -109,22 +109,22 @@ var B = /* @__PURE__ */ C({
|
|
|
109
109
|
disabled: o.value.button.disabled() || e.sdk.loading.value,
|
|
110
110
|
onClick: o.value.action
|
|
111
111
|
}, {
|
|
112
|
-
default:
|
|
112
|
+
default: R(() => [S(F(o.value.button.label), 1)]),
|
|
113
113
|
_: 1
|
|
114
114
|
}, 8, [
|
|
115
115
|
"loading",
|
|
116
116
|
"disabled",
|
|
117
117
|
"onClick"
|
|
118
|
-
]), r.value === "code" ? (
|
|
118
|
+
]), r.value === "code" ? (j(), y("button", {
|
|
119
119
|
key: 0,
|
|
120
120
|
class: "w-full text-xs text-white/50 hover:text-white/70 transition-colors py-2",
|
|
121
121
|
onClick: a[2] || (a[2] = (e) => r.value = "email")
|
|
122
|
-
}, " Change Email ")) :
|
|
122
|
+
}, " Change Email ")) : v("", !0)]))]),
|
|
123
123
|
_: 1
|
|
124
124
|
})])
|
|
125
|
-
])], 8,
|
|
125
|
+
])], 8, H));
|
|
126
126
|
}
|
|
127
|
-
}),
|
|
127
|
+
}), re = { 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" }, X = { class: "flex-1 space-y-6 pb-12" }, ie = {
|
|
128
128
|
key: 0,
|
|
129
129
|
class: "text-sm bg-white/10 backdrop-blur-sm rounded-2xl p-4 border border-white/20 space-y-3"
|
|
130
130
|
}, ae = ["innerHTML"], oe = {
|
|
@@ -136,7 +136,7 @@ var B = /* @__PURE__ */ C({
|
|
|
136
136
|
}, le = ["href"], ue = {
|
|
137
137
|
key: 3,
|
|
138
138
|
class: "space-y-3"
|
|
139
|
-
}, de = { class: "grid grid-cols-2 gap-3" }, fe = ["href"], pe = /* @__PURE__ */
|
|
139
|
+
}, de = { class: "grid grid-cols-2 gap-3" }, fe = ["href"], pe = /* @__PURE__ */ w({
|
|
140
140
|
__name: "ElAgentAbout",
|
|
141
141
|
props: {
|
|
142
142
|
agent: {},
|
|
@@ -145,35 +145,35 @@ var B = /* @__PURE__ */ C({
|
|
|
145
145
|
default: !1
|
|
146
146
|
}
|
|
147
147
|
},
|
|
148
|
-
setup(
|
|
149
|
-
return (
|
|
150
|
-
agent:
|
|
151
|
-
"is-online":
|
|
152
|
-
}, null, 8, ["agent", "is-online"]),
|
|
153
|
-
|
|
148
|
+
setup(n) {
|
|
149
|
+
return (r, i) => (j(), y("div", re, [C(t, {
|
|
150
|
+
agent: n.agent,
|
|
151
|
+
"is-online": n.isOnline
|
|
152
|
+
}, null, 8, ["agent", "is-online"]), b("div", X, [
|
|
153
|
+
n.agent.summary.value ? (j(), y("div", ie, [i[0] || (i[0] = b("h3", { class: "font-medium text-white/50" }, " About ", -1)), b("div", {
|
|
154
154
|
class: "text-white/70 leading-relaxed",
|
|
155
|
-
innerHTML:
|
|
156
|
-
}, null, 8, ae)])) :
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
href: `mailto:${
|
|
155
|
+
innerHTML: n.agent.summary.value
|
|
156
|
+
}, null, 8, ae)])) : v("", !0),
|
|
157
|
+
n.agent.entityType.value === "company" ? (j(), y("div", oe, [i[1] || (i[1] = b("h3", { class: "text-sm font-medium text-white/90 mb-2" }, " Company Info ", -1)), b("p", se, " This is a company agent representing " + F(n.agent.name.value) + ". ", 1)])) : v("", !0),
|
|
158
|
+
n.agent.email.value ? (j(), y("div", ce, [i[3] || (i[3] = b("h3", { class: "text-sm font-medium text-white/90" }, " Contact ", -1)), b("a", {
|
|
159
|
+
href: `mailto:${n.agent.email.value}`,
|
|
160
160
|
target: "_blank",
|
|
161
161
|
rel: "noopener noreferrer",
|
|
162
162
|
class: "relative inline-flex items-center justify-center gap-2 rounded-full px-4 py-2 font-medium transition-colors duration-200 focus:outline-none active:opacity-80 cursor-pointer bg-white/5 hover:bg-white/10 border border-white/10 text-white/80 text-sm justify-start h-10 w-full"
|
|
163
|
-
}, [...
|
|
164
|
-
|
|
163
|
+
}, [...i[2] || (i[2] = [b("span", { class: "i-heroicons-envelope flex items-center size-[1.1em] mt-[-.07em]" }, null, -1), S(" Email ", -1)])], 8, le)])) : v("", !0),
|
|
164
|
+
n.agent.accounts.value && n.agent.accounts.value.length > 0 ? (j(), y("div", ue, [i[4] || (i[4] = b("h3", { class: "text-sm font-medium text-white/90" }, " Links ", -1)), b("div", de, [(j(!0), y(p, null, N(n.agent.accounts.value, (t) => (j(), y("a", {
|
|
165
165
|
key: `${t.platform}-${t.handle}`,
|
|
166
|
-
href:
|
|
166
|
+
href: I(e)[t.platform].getUrl(t.handle),
|
|
167
167
|
target: "_blank",
|
|
168
168
|
rel: "noopener noreferrer",
|
|
169
169
|
class: "relative inline-flex items-center justify-center gap-2 rounded-full px-4 py-2 font-medium transition-colors duration-200 focus:outline-none active:opacity-80 cursor-pointer bg-white/10 hover:bg-white/20 border border-white/20 text-white/80 text-sm"
|
|
170
|
-
}, [
|
|
170
|
+
}, [b("span", { class: D(["flex items-center size-[1.1em] mt-[-.07em]", I(e)[t.platform].icon]) }, null, 2), S(" " + F(I(e)[t.platform].label), 1)], 8, fe))), 128))])])) : v("", !0)
|
|
171
171
|
])]));
|
|
172
172
|
}
|
|
173
173
|
}), me = { class: "flex flex-col items-center text-center gap-4" }, he = { class: "relative flex-shrink-0" }, ge = { class: "w-20 h-20 sm:w-24 sm:h-24 rounded-full overflow-hidden border-4 border-white" }, _e = ["src", "alt"], ve = { class: "absolute top-1.5 right-1.5" }, ye = {
|
|
174
174
|
key: 1,
|
|
175
175
|
class: "size-4 bg-theme-400 rounded-full ring-2 ring-white"
|
|
176
|
-
}, be = { class: "min-w-0" }, xe = { class: "text-3xl font-light text-white mb-2 truncate" }, Se = { class: "text-base font-light text-white/60 line-clamp-1" }, Ce = /* @__PURE__ */
|
|
176
|
+
}, be = { class: "min-w-0" }, xe = { class: "text-3xl font-light text-white mb-2 truncate" }, Se = { class: "text-base font-light text-white/60 line-clamp-1" }, Ce = /* @__PURE__ */ w({
|
|
177
177
|
__name: "ElAgentHeader",
|
|
178
178
|
props: {
|
|
179
179
|
agent: {},
|
|
@@ -183,37 +183,37 @@ var B = /* @__PURE__ */ C({
|
|
|
183
183
|
}
|
|
184
184
|
},
|
|
185
185
|
setup(e) {
|
|
186
|
-
return (t, n) => (
|
|
186
|
+
return (t, n) => (j(), y("div", me, [b("div", he, [b("div", ge, [b("img", {
|
|
187
187
|
src: e.agent.avatarUrl.value,
|
|
188
188
|
alt: e.agent.displayName.value,
|
|
189
189
|
class: "w-full h-full object-cover",
|
|
190
|
-
onError: n[0] || (n[0] = (...e) =>
|
|
191
|
-
}, null, 40, _e)]),
|
|
190
|
+
onError: n[0] || (n[0] = (...e) => I(f) && I(f)(...e))
|
|
191
|
+
}, null, 40, _e)]), b("div", ve, [e.isOnline ? (j(), y(p, { key: 0 }, [n[1] || (n[1] = b("div", {
|
|
192
192
|
class: "size-4 bg-green-500 rounded-full ring-2 ring-white absolute animate-ping",
|
|
193
193
|
style: { "animation-duration": "3s" }
|
|
194
|
-
}, null, -1)), n[2] || (n[2] =
|
|
194
|
+
}, null, -1)), n[2] || (n[2] = b("div", { class: "size-4 bg-green-500 rounded-full ring-2 ring-white" }, null, -1))], 64)) : (j(), y("div", ye))])]), b("div", be, [b("h1", xe, F(e.agent.displayName.value), 1), b("p", Se, F(e.agent.title.value), 1)])]));
|
|
195
195
|
}
|
|
196
|
-
}), we = { class: "absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 w-[28px] h-[28px] overflow-hidden" }, Te = /* @__PURE__ */
|
|
196
|
+
}), we = { class: "absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 w-[28px] h-[28px] overflow-hidden" }, Te = /* @__PURE__ */ w({
|
|
197
197
|
name: "SelfSidebarClose",
|
|
198
198
|
__name: "AgentSidebarClose",
|
|
199
199
|
emits: ["click"],
|
|
200
200
|
setup(e) {
|
|
201
|
-
let t =
|
|
202
|
-
return
|
|
201
|
+
let t = M(!1);
|
|
202
|
+
return A(() => {
|
|
203
203
|
setTimeout(() => {
|
|
204
204
|
t.value = !0;
|
|
205
205
|
}, 100);
|
|
206
|
-
}), (e, n) => (
|
|
206
|
+
}), (e, n) => (j(), y("a", {
|
|
207
207
|
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",
|
|
208
208
|
onClick: n[0] || (n[0] = (t) => e.$emit("click", t))
|
|
209
|
-
}, [n[1] || (n[1] =
|
|
210
|
-
class:
|
|
209
|
+
}, [n[1] || (n[1] = b("span", { class: "absolute inset-0 rounded-full transition-all" }, null, -1)), b("span", we, [b("span", {
|
|
210
|
+
class: D(["absolute h-full w-[3px] rounded-[5px] left-[13px] transition-all duration-[400ms] ease-[cubic-bezier(0.52,0.01,0.16,1)]", t.value ? "translate-y-0 translate-x-0 rotate-45" : "translate-y-[30px] -translate-x-[30px] rotate-0"]),
|
|
211
211
|
style: {
|
|
212
212
|
"background-color": "currentColor",
|
|
213
213
|
"transition-delay": "0.15s"
|
|
214
214
|
}
|
|
215
|
-
}, null, 2),
|
|
216
|
-
class:
|
|
215
|
+
}, null, 2), b("span", {
|
|
216
|
+
class: D(["absolute h-full w-[3px] rounded-[5px] left-[13px] transition-all duration-[400ms] ease-[cubic-bezier(0.52,0.01,0.16,1)]", t.value ? "translate-y-0 translate-x-0 -rotate-45" : "-translate-y-[30px] -translate-x-[30px] rotate-0"]),
|
|
217
217
|
style: {
|
|
218
218
|
"background-color": "currentColor",
|
|
219
219
|
"transition-delay": "0.45s"
|
|
@@ -229,7 +229,7 @@ var B = /* @__PURE__ */ C({
|
|
|
229
229
|
}, ke = ["disabled", "onClick"], Ae = { class: "flex items-center gap-3" }, je = { class: "flex-1" }, Me = {
|
|
230
230
|
key: 0,
|
|
231
231
|
class: "text-xs text-white/50 mt-0.5"
|
|
232
|
-
}, Ne = { class: "p-6" }, Z = /* @__PURE__ */
|
|
232
|
+
}, Ne = { class: "p-6" }, Z = /* @__PURE__ */ w({
|
|
233
233
|
name: "ElSidebar",
|
|
234
234
|
inheritAttrs: !1,
|
|
235
235
|
__name: "ElSidebar",
|
|
@@ -242,17 +242,17 @@ var B = /* @__PURE__ */ C({
|
|
|
242
242
|
},
|
|
243
243
|
emits: ["update:modelValue"],
|
|
244
244
|
setup(e, { emit: t }) {
|
|
245
|
-
let n = e, r = t, i = n.position || "left", a = n.widthClasses || "w-[80%] max-w-[300px]", o =
|
|
245
|
+
let n = e, r = t, i = n.position || "left", a = n.widthClasses || "w-[80%] max-w-[300px]", o = g({
|
|
246
246
|
get: () => n.modelValue,
|
|
247
247
|
set: (e) => r("update:modelValue", e)
|
|
248
|
-
}), s =
|
|
248
|
+
}), s = g(() => n.items.filter((e) => !e.isHidden));
|
|
249
249
|
function handleItemClick(e) {
|
|
250
250
|
e.isDisabled || (e.onClick ? e.onClick({
|
|
251
251
|
item: e,
|
|
252
252
|
event: new MouseEvent("click")
|
|
253
253
|
}) : e.href && (e.href.includes("http") ? window.open(e.href, e.target || "_self")?.focus() : window.location.href = e.href), o.value = !1);
|
|
254
254
|
}
|
|
255
|
-
let c =
|
|
255
|
+
let c = g(() => i === "left" ? {
|
|
256
256
|
enter: "-translate-x-full",
|
|
257
257
|
leave: "-translate-x-full",
|
|
258
258
|
position: "justify-start",
|
|
@@ -263,7 +263,7 @@ var B = /* @__PURE__ */ C({
|
|
|
263
263
|
position: "justify-end",
|
|
264
264
|
closeButton: "-left-16"
|
|
265
265
|
});
|
|
266
|
-
return (t, n) => (
|
|
266
|
+
return (t, n) => (j(), y(p, null, [C(m, {
|
|
267
267
|
"enter-active-class": "transition-opacity duration-300 ease-out",
|
|
268
268
|
"leave-active-class": "transition-opacity duration-200 ease-in",
|
|
269
269
|
"enter-from-class": "opacity-0",
|
|
@@ -271,13 +271,13 @@ var B = /* @__PURE__ */ C({
|
|
|
271
271
|
"leave-from-class": "opacity-100",
|
|
272
272
|
"leave-to-class": "opacity-0"
|
|
273
273
|
}, {
|
|
274
|
-
default:
|
|
274
|
+
default: R(() => [o.value ? (j(), y("div", {
|
|
275
275
|
key: 0,
|
|
276
276
|
class: "absolute inset-0 z-40 bg-black/50 backdrop-blur-sm",
|
|
277
277
|
onClick: n[0] || (n[0] = (e) => o.value = !1)
|
|
278
|
-
})) :
|
|
278
|
+
})) : v("", !0)]),
|
|
279
279
|
_: 1
|
|
280
|
-
}),
|
|
280
|
+
}), C(m, {
|
|
281
281
|
"enter-active-class": "transition-all duration-500 ease-[cubic-bezier(0.25,1,0.33,1)]",
|
|
282
282
|
"leave-active-class": "transition-all duration-400 ease-[cubic-bezier(0.25,1,0.33,1)]",
|
|
283
283
|
"enter-from-class": c.value.enter,
|
|
@@ -285,49 +285,49 @@ var B = /* @__PURE__ */ C({
|
|
|
285
285
|
"leave-from-class": "translate-x-0",
|
|
286
286
|
"leave-to-class": c.value.leave
|
|
287
287
|
}, {
|
|
288
|
-
default:
|
|
288
|
+
default: R(() => [o.value ? (j(), y("div", {
|
|
289
289
|
key: 0,
|
|
290
|
-
class:
|
|
290
|
+
class: D(["absolute inset-0 z-50 flex", c.value.position]),
|
|
291
291
|
onClick: n[3] || (n[3] = (e) => o.value = !1)
|
|
292
|
-
}, [
|
|
293
|
-
class:
|
|
294
|
-
onClick: n[2] || (n[2] =
|
|
292
|
+
}, [b("div", {
|
|
293
|
+
class: D(["relative h-full shadow-2xl bg-black/30 backdrop-blur-xl flex flex-col justify-center", I(a)]),
|
|
294
|
+
onClick: n[2] || (n[2] = B(() => {}, ["stop"]))
|
|
295
295
|
}, [
|
|
296
|
-
|
|
297
|
-
class:
|
|
296
|
+
C(Te, {
|
|
297
|
+
class: D(["absolute top-4 z-10 text-white", c.value.closeButton]),
|
|
298
298
|
onClick: n[1] || (n[1] = (e) => o.value = !1)
|
|
299
299
|
}, null, 8, ["class"]),
|
|
300
|
-
e.title ? (
|
|
301
|
-
t.$slots.header ? (
|
|
302
|
-
|
|
300
|
+
e.title ? (j(), y("div", Ee, [b("h3", De, F(e.title), 1)])) : v("", !0),
|
|
301
|
+
t.$slots.header ? (j(), y("div", Oe, [P(t.$slots, "header")])) : v("", !0),
|
|
302
|
+
b("div", { class: D(["flex-1 p-6 space-y-2 overflow-y-auto", {
|
|
303
303
|
"pt-6": !e.title && !t.$slots.header,
|
|
304
304
|
"pt-4": e.title || t.$slots.header
|
|
305
|
-
}]) }, [
|
|
305
|
+
}]) }, [C(h, {
|
|
306
306
|
"enter-active-class": "transition-all duration-400 ease-[cubic-bezier(0.25,1,0.33,1)]",
|
|
307
307
|
"leave-active-class": "transition-all duration-200 ease-[cubic-bezier(0.25,1,0.33,1)]",
|
|
308
|
-
"enter-from-class":
|
|
308
|
+
"enter-from-class": I(i) === "left" ? "-translate-x-4 opacity-0" : "translate-x-4 opacity-0",
|
|
309
309
|
"enter-to-class": "translate-x-0 opacity-100",
|
|
310
310
|
"leave-from-class": "translate-x-0 opacity-100",
|
|
311
|
-
"leave-to-class":
|
|
311
|
+
"leave-to-class": I(i) === "left" ? "-translate-x-4 opacity-0" : "translate-x-4 opacity-0"
|
|
312
312
|
}, {
|
|
313
|
-
default:
|
|
313
|
+
default: R(() => [(j(!0), y(p, null, N(s.value, (e, t) => (j(), y("button", {
|
|
314
314
|
key: e.key || e.label || t,
|
|
315
|
-
style:
|
|
316
|
-
class:
|
|
315
|
+
style: k({ transitionDelay: `${t * 40}ms` }),
|
|
316
|
+
class: D(["cursor-pointer w-full text-left p-3 rounded-xl transition-all duration-200 ease-[cubic-bezier(0.25,1,0.33,1)] group", [e.isActive ? "bg-primary-500/20 border border-primary-500/40" : "hover:bg-white/10", e.isDisabled && "opacity-50 cursor-not-allowed"]]),
|
|
317
317
|
disabled: e.isDisabled,
|
|
318
318
|
onClick: (t) => handleItemClick(e)
|
|
319
|
-
}, [
|
|
319
|
+
}, [b("div", Ae, [e.icon?.src ? (j(), y("i", {
|
|
320
320
|
key: 0,
|
|
321
|
-
class:
|
|
322
|
-
}, null, 2)) :
|
|
321
|
+
class: D(["size-5 flex-shrink-0 transition-transform duration-200 ease-[cubic-bezier(0.25,1,0.33,1)] group-hover:scale-110", [e.icon.src, e.isActive ? "text-primary-400" : "text-white/70 group-hover:text-white"]])
|
|
322
|
+
}, null, 2)) : v("", !0), b("div", je, [b("div", { class: D(["font-medium text-sm", e.isActive ? "text-primary-300" : "text-white"]) }, F(e.label), 3), e.subLabel ? (j(), y("div", Me, F(e.subLabel), 1)) : v("", !0)])])], 14, ke))), 128))]),
|
|
323
323
|
_: 1
|
|
324
324
|
}, 8, ["enter-from-class", "leave-to-class"])], 2),
|
|
325
|
-
|
|
326
|
-
], 2)], 2)) :
|
|
325
|
+
b("div", Ne, [P(t.$slots, "footer")])
|
|
326
|
+
], 2)], 2)) : v("", !0)]),
|
|
327
327
|
_: 3
|
|
328
328
|
}, 8, ["enter-from-class", "leave-to-class"])], 64));
|
|
329
329
|
}
|
|
330
|
-
}), Pe = /* @__PURE__ */
|
|
330
|
+
}), Pe = /* @__PURE__ */ w({
|
|
331
331
|
name: "AgentModeSidebar",
|
|
332
332
|
__name: "ElAgentModeSidebar",
|
|
333
333
|
props: {
|
|
@@ -336,28 +336,28 @@ var B = /* @__PURE__ */ C({
|
|
|
336
336
|
},
|
|
337
337
|
emits: ["update:modelValue"],
|
|
338
338
|
setup(e, { emit: t }) {
|
|
339
|
-
let n = e, r = t,
|
|
339
|
+
let n = e, r = t, i = g({
|
|
340
340
|
get: () => n.modelValue,
|
|
341
341
|
set: (e) => r("update:modelValue", e)
|
|
342
|
-
}),
|
|
342
|
+
}), a = g(() => n.chatController?.agentMode?.value ?? "self"), o = g(() => l.map((e) => ({
|
|
343
343
|
key: e.mode,
|
|
344
344
|
icon: { src: e.icon },
|
|
345
345
|
label: e.label,
|
|
346
|
-
isActive:
|
|
346
|
+
isActive: a.value === e.mode,
|
|
347
347
|
onClick: () => {
|
|
348
348
|
n.chatController?.setMode(e.mode);
|
|
349
349
|
}
|
|
350
350
|
})));
|
|
351
|
-
return (e, t) => (
|
|
352
|
-
modelValue:
|
|
353
|
-
"onUpdate:modelValue": t[0] || (t[0] = (e) =>
|
|
354
|
-
items:
|
|
351
|
+
return (e, t) => (j(), _(Z, {
|
|
352
|
+
modelValue: i.value,
|
|
353
|
+
"onUpdate:modelValue": t[0] || (t[0] = (e) => i.value = e),
|
|
354
|
+
items: o.value,
|
|
355
355
|
position: "right",
|
|
356
356
|
title: "Mode",
|
|
357
357
|
"width-classes": "w-[80%] max-w-[255px]"
|
|
358
358
|
}, null, 8, ["modelValue", "items"]));
|
|
359
359
|
}
|
|
360
|
-
}), Fe = /* @__PURE__ */
|
|
360
|
+
}), Fe = /* @__PURE__ */ w({
|
|
361
361
|
name: "AgentSidebar",
|
|
362
362
|
__name: "ElAgentSidebar",
|
|
363
363
|
props: {
|
|
@@ -368,10 +368,10 @@ var B = /* @__PURE__ */ C({
|
|
|
368
368
|
},
|
|
369
369
|
emits: ["update:modelValue"],
|
|
370
370
|
setup(e, { emit: t }) {
|
|
371
|
-
let n = e, r = t, i =
|
|
371
|
+
let n = e, r = t, i = g({
|
|
372
372
|
get: () => n.modelValue,
|
|
373
373
|
set: (e) => r("update:modelValue", e)
|
|
374
|
-
}), a =
|
|
374
|
+
}), a = g(() => {
|
|
375
375
|
let e = [
|
|
376
376
|
{
|
|
377
377
|
key: "share",
|
|
@@ -410,7 +410,7 @@ var B = /* @__PURE__ */ C({
|
|
|
410
410
|
}
|
|
411
411
|
}), e;
|
|
412
412
|
});
|
|
413
|
-
return (t, n) => (
|
|
413
|
+
return (t, n) => (j(), _(Z, {
|
|
414
414
|
modelValue: i.value,
|
|
415
415
|
"onUpdate:modelValue": n[0] || (n[0] = (e) => i.value = e),
|
|
416
416
|
items: a.value,
|
|
@@ -452,7 +452,7 @@ var B = /* @__PURE__ */ C({
|
|
|
452
452
|
}, Qe = { class: "text-center max-w-md space-y-4" }, $e = { class: "text-sm text-white/70 leading-relaxed" }, et = {
|
|
453
453
|
key: 3,
|
|
454
454
|
class: "bg-white/10 backdrop-blur-sm text-white/70 flex items-center justify-center h-full"
|
|
455
|
-
}, $ = /* @__PURE__ */
|
|
455
|
+
}, $ = /* @__PURE__ */ w({
|
|
456
456
|
__name: "AgentChat",
|
|
457
457
|
props: {
|
|
458
458
|
sdk: {},
|
|
@@ -487,19 +487,21 @@ var B = /* @__PURE__ */ C({
|
|
|
487
487
|
default: !1
|
|
488
488
|
},
|
|
489
489
|
emptyStateMessage: {},
|
|
490
|
-
suggestedPrompts: { default: () => [] }
|
|
490
|
+
suggestedPrompts: { default: () => [] },
|
|
491
|
+
createVoiceClientFn: { type: Function }
|
|
491
492
|
},
|
|
492
493
|
emits: ["close", "error"],
|
|
493
|
-
setup(
|
|
494
|
-
let
|
|
494
|
+
setup(c, { emit: u }) {
|
|
495
|
+
let d = u, f = ne(), m = M(!1), h = M(!1), w = M(), E = M(), z = g(() => f.value?.agentMode?.value ?? "self"), V = g(() => f.value?.textState.value.isConnected ?? !1), H = g(() => c.sdk.activeUser.value !== void 0), U = g(() => l.find((e) => e.mode === z.value));
|
|
495
496
|
function createChatController() {
|
|
496
|
-
|
|
497
|
+
f.value && f.value.destroy();
|
|
497
498
|
try {
|
|
498
|
-
|
|
499
|
-
sdk:
|
|
500
|
-
agent:
|
|
501
|
-
context:
|
|
502
|
-
firstMessage:
|
|
499
|
+
f.value = new i({
|
|
500
|
+
sdk: c.sdk,
|
|
501
|
+
agent: c.agent,
|
|
502
|
+
context: c.context,
|
|
503
|
+
firstMessage: c.firstMessage,
|
|
504
|
+
...c.createVoiceClientFn ? { createVoiceClientFn: c.createVoiceClientFn } : {}
|
|
503
505
|
});
|
|
504
506
|
} catch (e) {
|
|
505
507
|
throw console.error("AgentChatController creation failed:", e), e;
|
|
@@ -509,105 +511,105 @@ var B = /* @__PURE__ */ C({
|
|
|
509
511
|
createChatController();
|
|
510
512
|
} catch (e) {
|
|
511
513
|
let t = e instanceof Error ? e.message : "Couldn't initialize your assistant";
|
|
512
|
-
|
|
514
|
+
w.value = t, d("error", t);
|
|
513
515
|
}
|
|
514
516
|
function applyTheme(e) {
|
|
515
|
-
if (!
|
|
516
|
-
let t =
|
|
517
|
+
if (!E.value) return;
|
|
518
|
+
let t = ee(e);
|
|
517
519
|
Object.entries(t).forEach(([e, t]) => {
|
|
518
|
-
|
|
520
|
+
E.value.style.setProperty(`--primary-${e}`, t);
|
|
519
521
|
});
|
|
520
522
|
}
|
|
521
|
-
|
|
523
|
+
A(() => {
|
|
522
524
|
try {
|
|
523
|
-
applyTheme(
|
|
525
|
+
applyTheme(c.theme), c.chatOnly && f.value && f.value.setMode("chat");
|
|
524
526
|
} catch (e) {
|
|
525
527
|
let t = e instanceof Error ? e.message : "Couldn't initialize your assistant";
|
|
526
|
-
|
|
528
|
+
w.value = t, d("error", t);
|
|
527
529
|
}
|
|
528
|
-
}),
|
|
529
|
-
|
|
530
|
-
}),
|
|
530
|
+
}), te(() => {
|
|
531
|
+
f.value && f.value.destroy();
|
|
532
|
+
}), L(() => c.theme, (e) => {
|
|
531
533
|
applyTheme(e);
|
|
532
|
-
}),
|
|
533
|
-
t && !e &&
|
|
534
|
+
}), L(() => c.sdk.activeUser.value, (e, t) => {
|
|
535
|
+
t && !e && f.value && f.value.setMode("self");
|
|
534
536
|
});
|
|
535
|
-
let
|
|
536
|
-
let e = [
|
|
537
|
-
return
|
|
538
|
-
}),
|
|
537
|
+
let W = g(() => !!(c.agent.cover.value?.src && c.agent.cover.value?.quality === "low") || !!(c.agent.avatar.value?.src && c.agent.avatar.value?.quality === "low")), G = g(() => {
|
|
538
|
+
let e = [W.value ? "backdrop-blur-sm" : ""];
|
|
539
|
+
return W.value && z.value === "self" ? e.push("from-black/80 via-black/60 to-black/80") : z.value === "self" ? e.push("from-black/70 via-black/50 to-black/80") : e.push("from-black/90 via-black/90 to-black/100"), e.join(" ");
|
|
540
|
+
}), K = {
|
|
539
541
|
phone: "i-heroicons-phone",
|
|
540
542
|
calendar: "i-heroicons-calendar",
|
|
541
543
|
question: "i-heroicons-question-mark-circle",
|
|
542
544
|
message: "i-heroicons-chat-bubble-left-right",
|
|
543
545
|
sparkles: "i-heroicons-sparkles"
|
|
544
|
-
},
|
|
545
|
-
template:
|
|
546
|
-
agent:
|
|
547
|
-
})),
|
|
548
|
-
return (r, i) => (
|
|
546
|
+
}, q = g(() => r({
|
|
547
|
+
template: c.buttonText || "Talk to {name}",
|
|
548
|
+
agent: c.agent.toConfig()
|
|
549
|
+
})), J = g(() => K[c.buttonIcon || "phone"] || K.phone);
|
|
550
|
+
return (r, i) => (j(), y("div", {
|
|
549
551
|
ref_key: "rootElement",
|
|
550
|
-
ref:
|
|
551
|
-
key:
|
|
552
|
+
ref: E,
|
|
553
|
+
key: I(o)(c.agent.toConfig()),
|
|
552
554
|
class: "pagelines-sdk @container/agent pagelines-agent w-full h-full overflow-hidden relative",
|
|
553
555
|
"data-test": "agent-chat"
|
|
554
556
|
}, [
|
|
555
|
-
|
|
557
|
+
c.loading ? (j(), y("div", Ie, [C(a, { class: "text-white size-8" })])) : c.agent && !w.value ? (j(), y("div", {
|
|
556
558
|
key: 1,
|
|
557
|
-
class:
|
|
558
|
-
style:
|
|
559
|
-
"data-quality":
|
|
560
|
-
}, [
|
|
559
|
+
class: D(["absolute inset-0", c.bare ? "bg-theme-0" : "bg-cover bg-center bg-no-repeat"]),
|
|
560
|
+
style: k(c.bare ? void 0 : { backgroundImage: `url(${I(o)(c.agent.toConfig())})` }),
|
|
561
|
+
"data-quality": c.agent.avatar.value?.quality || "none"
|
|
562
|
+
}, [c.bare ? v("", !0) : (j(), y("div", {
|
|
561
563
|
key: 0,
|
|
562
|
-
class:
|
|
563
|
-
}, null, 2)),
|
|
564
|
+
class: D(["absolute inset-0 bg-gradient-to-br z-0", G.value])
|
|
565
|
+
}, null, 2)), b("div", { class: D(["relative z-10 flex flex-col h-full transition-all duration-500 ease-[cubic-bezier(0.25,1,0.33,1)] will-change-transform", c.isActive ? "opacity-100 translate-y-0" : "opacity-0 translate-y-2"]) }, [!c.bare || c.hasClose ? (j(), y("div", {
|
|
564
566
|
key: 0,
|
|
565
|
-
class:
|
|
566
|
-
}, [
|
|
567
|
+
class: D(["relative z-30 p-2", !c.bare && z.value !== "self" ? "backdrop-blur-lg" : ""])
|
|
568
|
+
}, [c.chatOnly ? (j(), y("div", {
|
|
567
569
|
key: 0,
|
|
568
|
-
class:
|
|
569
|
-
}, [
|
|
570
|
-
src:
|
|
571
|
-
alt:
|
|
570
|
+
class: D(["flex items-center", c.bare ? "justify-end" : ""])
|
|
571
|
+
}, [c.bare ? v("", !0) : (j(), y("div", Re, [b("img", {
|
|
572
|
+
src: I(o)(c.agent.toConfig()),
|
|
573
|
+
alt: c.agent.displayName.value,
|
|
572
574
|
class: "size-8 rounded-full object-cover"
|
|
573
|
-
}, null, 8, ze),
|
|
574
|
-
class:
|
|
575
|
-
onClick: i[0] || (i[0] =
|
|
576
|
-
}, [...i[7] || (i[7] = [
|
|
575
|
+
}, null, 8, ze), b("span", Be, F(c.agent.displayName.value), 1)])), c.hasClose ? (j(), y("div", Ve, [b("button", {
|
|
576
|
+
class: D(["flex cursor-pointer items-center rounded-2xl p-3 transition-colors", c.bare ? "text-theme-500 hover:bg-theme-50" : "text-white/70 hover:bg-white/10"]),
|
|
577
|
+
onClick: i[0] || (i[0] = B((e) => d("close", "button"), ["stop"]))
|
|
578
|
+
}, [...i[7] || (i[7] = [b("i", { class: "size-6 i-tabler-x" }, null, -1)])], 2)])) : v("", !0)], 2)) : (j(), y("div", {
|
|
577
579
|
key: 1,
|
|
578
|
-
class:
|
|
580
|
+
class: D(["flex items-center", c.hasClose ? "" : "justify-between"])
|
|
579
581
|
}, [
|
|
580
|
-
|
|
582
|
+
b("div", { class: D(c.hasClose ? "flex-1 basis-0" : "") }, [b("button", {
|
|
581
583
|
class: "cursor-pointer p-2 flex items-center gap-2 rounded-2xl text-white/70 hover:bg-white/10 transition-all duration-300 ease-[cubic-bezier(0.25,1,0.33,1)] hover:scale-105 active:scale-95",
|
|
582
|
-
onClick: i[1] || (i[1] = (e) =>
|
|
583
|
-
}, [...i[8] || (i[8] = [
|
|
584
|
-
|
|
585
|
-
class:
|
|
586
|
-
onClick: i[2] || (i[2] = (e) =>
|
|
584
|
+
onClick: i[1] || (i[1] = (e) => m.value = !0)
|
|
585
|
+
}, [...i[8] || (i[8] = [b("i", { class: "i-tabler-menu size-7" }, null, -1)])])], 2),
|
|
586
|
+
b("button", {
|
|
587
|
+
class: D(["flex items-center gap-2 px-3.5 py-3 rounded-2xl text-white/90 hover:bg-white/10 transition-all cursor-pointer flex-grow-0", { "bg-white/10": h.value }]),
|
|
588
|
+
onClick: i[2] || (i[2] = (e) => h.value = !0)
|
|
587
589
|
}, [
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
i[9] || (i[9] =
|
|
590
|
+
b("i", { class: D([U.value?.icon, "size-4 opacity-60"]) }, null, 2),
|
|
591
|
+
b("span", He, F(U.value?.label), 1),
|
|
592
|
+
i[9] || (i[9] = b("i", { class: "i-tabler-chevron-down size-4" }, null, -1))
|
|
591
593
|
], 2),
|
|
592
|
-
|
|
594
|
+
c.hasClose ? (j(), y("div", Q, [b("button", {
|
|
593
595
|
class: "cursor-pointer flex items-center p-3 rounded-2xl text-white/70 hover:bg-white/10 transition-colors",
|
|
594
|
-
onClick: i[3] || (i[3] =
|
|
595
|
-
}, [...i[10] || (i[10] = [
|
|
596
|
-
], 2))], 2)) :
|
|
596
|
+
onClick: i[3] || (i[3] = B((e) => d("close", "button"), ["stop"]))
|
|
597
|
+
}, [...i[10] || (i[10] = [b("i", { class: "size-6 i-tabler-x" }, null, -1)])])])) : v("", !0)
|
|
598
|
+
], 2))], 2)) : v("", !0), c.chatOnly ? (j(), y("div", {
|
|
597
599
|
key: 1,
|
|
598
|
-
class:
|
|
599
|
-
}, [
|
|
600
|
-
"chat-controller":
|
|
601
|
-
agent:
|
|
602
|
-
scope:
|
|
603
|
-
"empty-state-message":
|
|
604
|
-
"suggested-prompts":
|
|
605
|
-
variant:
|
|
606
|
-
"show-header": !
|
|
607
|
-
centered:
|
|
608
|
-
},
|
|
600
|
+
class: D(["relative z-20 flex min-h-0 w-full flex-1 flex-col", c.bare ? "bg-theme-0" : "px-4"])
|
|
601
|
+
}, [b("div", { class: D(["min-h-0 w-full flex-1", c.bare ? "" : "mx-auto max-w-md"]) }, [C(s, {
|
|
602
|
+
"chat-controller": f.value,
|
|
603
|
+
agent: c.agent,
|
|
604
|
+
scope: H.value ? "private" : "public",
|
|
605
|
+
"empty-state-message": c.emptyStateMessage,
|
|
606
|
+
"suggested-prompts": c.suggestedPrompts,
|
|
607
|
+
variant: c.bare ? "light" : "dark",
|
|
608
|
+
"show-header": !c.bare,
|
|
609
|
+
centered: c.bare
|
|
610
|
+
}, x({ _: 2 }, [r.$slots["empty-heading"] ? {
|
|
609
611
|
name: "empty-heading",
|
|
610
|
-
fn:
|
|
612
|
+
fn: R((e) => [P(r.$slots, "empty-heading", O(T(e)))]),
|
|
611
613
|
key: "0"
|
|
612
614
|
} : void 0]), 1032, [
|
|
613
615
|
"chat-controller",
|
|
@@ -618,61 +620,61 @@ var B = /* @__PURE__ */ C({
|
|
|
618
620
|
"variant",
|
|
619
621
|
"show-header",
|
|
620
622
|
"centered"
|
|
621
|
-
])], 2)], 2)) : (
|
|
622
|
-
i[11] || (i[11] =
|
|
623
|
-
|
|
624
|
-
agent:
|
|
625
|
-
"is-online":
|
|
623
|
+
])], 2)], 2)) : (j(), y(p, { key: 2 }, [z.value === "self" ? (j(), y("div", Ue, [
|
|
624
|
+
i[11] || (i[11] = b("div", { class: "flex-1 basis-0 mb-12" }, null, -1)),
|
|
625
|
+
C(Ce, {
|
|
626
|
+
agent: c.agent,
|
|
627
|
+
"is-online": V.value
|
|
626
628
|
}, null, 8, ["agent", "is-online"]),
|
|
627
|
-
|
|
629
|
+
b("div", We, [C(n, {
|
|
628
630
|
theme: "primary",
|
|
629
631
|
size: "lg",
|
|
630
632
|
class: "w-full",
|
|
631
|
-
icon:
|
|
633
|
+
icon: J.value,
|
|
632
634
|
"data-test": "voice-button",
|
|
633
|
-
onClick: i[4] || (i[4] = (e) =>
|
|
635
|
+
onClick: i[4] || (i[4] = (e) => f.value?.setMode("talk"))
|
|
634
636
|
}, {
|
|
635
|
-
default:
|
|
637
|
+
default: R(() => [S(F(q.value), 1)]),
|
|
636
638
|
_: 1
|
|
637
|
-
}, 8, ["icon"]),
|
|
639
|
+
}, 8, ["icon"]), c.agent.accounts.value && c.agent.accounts.value.length > 0 ? (j(), y("div", Ge, [(j(!0), y(p, null, N((c.agent.accounts.value || []).filter((t) => I(e)[t.platform]), (t) => (j(), y("a", {
|
|
638
640
|
key: `${t.platform}-${t.handle}`,
|
|
639
|
-
href:
|
|
641
|
+
href: I(e)[t.platform].getUrl(t.handle),
|
|
640
642
|
target: "_blank",
|
|
641
643
|
class: "size-12 rounded-full text-white/60 hover:text-white hover:bg-white/5 border border-white/0 hover:border-white/10 flex items-center justify-center transition-all duration-200 hover:scale-105"
|
|
642
|
-
}, [
|
|
643
|
-
])) :
|
|
644
|
+
}, [b("i", { class: D([I(e)[t.platform].icon, "size-5"]) }, null, 2)], 8, Ke))), 128))])) : v("", !0)])
|
|
645
|
+
])) : z.value === "talk" ? (j(), y("div", qe, [c.requireAuth && !H.value ? (j(), _(Y, {
|
|
644
646
|
key: 0,
|
|
645
|
-
sdk:
|
|
646
|
-
}, null, 8, ["sdk"])) : (
|
|
647
|
-
agent:
|
|
648
|
-
"is-online":
|
|
649
|
-
}, null, 8, ["agent", "is-online"])])]),
|
|
650
|
-
"chat-controller":
|
|
651
|
-
agent:
|
|
652
|
-
}, null, 8, ["chat-controller", "agent"])], 64))])) : (
|
|
647
|
+
sdk: c.sdk
|
|
648
|
+
}, null, 8, ["sdk"])) : (j(), y(p, { key: 1 }, [b("div", null, [b("div", Je, [C(t, {
|
|
649
|
+
agent: c.agent,
|
|
650
|
+
"is-online": V.value
|
|
651
|
+
}, null, 8, ["agent", "is-online"])])]), C(s, {
|
|
652
|
+
"chat-controller": f.value,
|
|
653
|
+
agent: c.agent
|
|
654
|
+
}, null, 8, ["chat-controller", "agent"])], 64))])) : (j(), y("div", Ye, [b("div", Xe, [z.value === "chat" ? (j(), y(p, { key: 0 }, [c.requireAuth && !H.value ? (j(), _(Y, {
|
|
653
655
|
key: 0,
|
|
654
|
-
sdk:
|
|
655
|
-
}, null, 8, ["sdk"])) : (
|
|
656
|
+
sdk: c.sdk
|
|
657
|
+
}, null, 8, ["sdk"])) : (j(), _(s, {
|
|
656
658
|
key: 1,
|
|
657
|
-
"chat-controller":
|
|
658
|
-
agent:
|
|
659
|
+
"chat-controller": f.value,
|
|
660
|
+
agent: c.agent,
|
|
659
661
|
"show-header": ""
|
|
660
|
-
}, null, 8, ["chat-controller", "agent"]))], 64)) :
|
|
662
|
+
}, null, 8, ["chat-controller", "agent"]))], 64)) : z.value === "info" ? (j(), _(pe, {
|
|
661
663
|
key: 1,
|
|
662
|
-
agent:
|
|
663
|
-
"is-online":
|
|
664
|
-
}, null, 8, ["agent", "is-online"])) :
|
|
665
|
-
i[12] || (i[12] =
|
|
666
|
-
i[13] || (i[13] =
|
|
667
|
-
|
|
668
|
-
])])) : (
|
|
669
|
-
|
|
664
|
+
agent: c.agent,
|
|
665
|
+
"is-online": V.value
|
|
666
|
+
}, null, 8, ["agent", "is-online"])) : v("", !0)])]))], 64))], 2)], 14, Le)) : w.value ? (j(), y("div", Ze, [b("div", Qe, [
|
|
667
|
+
i[12] || (i[12] = b("div", { class: "flex justify-center" }, [b("div", { class: "rounded-full bg-red-500/20 flex items-center justify-center size-10" }, [b("i", { class: "i-tabler-alert-circle size-6 text-red-400" })])], -1)),
|
|
668
|
+
i[13] || (i[13] = b("h3", { class: "text-lg font-medium" }, " Agent Error ", -1)),
|
|
669
|
+
b("p", $e, F(w.value), 1)
|
|
670
|
+
])])) : (j(), y("div", et, " Couldn't load your assistant. Please try again later. ")),
|
|
671
|
+
c.chatOnly ? v("", !0) : (j(), _(Fe, {
|
|
670
672
|
key: 4,
|
|
671
|
-
modelValue:
|
|
672
|
-
"onUpdate:modelValue": i[5] || (i[5] = (e) =>
|
|
673
|
-
agent:
|
|
674
|
-
sdk:
|
|
675
|
-
title:
|
|
673
|
+
modelValue: m.value,
|
|
674
|
+
"onUpdate:modelValue": i[5] || (i[5] = (e) => m.value = e),
|
|
675
|
+
agent: c.agent,
|
|
676
|
+
sdk: c.sdk,
|
|
677
|
+
title: c.agent.displayName.value,
|
|
676
678
|
"data-test": "agent-sidebar"
|
|
677
679
|
}, null, 8, [
|
|
678
680
|
"modelValue",
|
|
@@ -680,16 +682,16 @@ var B = /* @__PURE__ */ C({
|
|
|
680
682
|
"sdk",
|
|
681
683
|
"title"
|
|
682
684
|
])),
|
|
683
|
-
|
|
685
|
+
c.chatOnly ? v("", !0) : (j(), _(Pe, {
|
|
684
686
|
key: 5,
|
|
685
|
-
modelValue:
|
|
686
|
-
"onUpdate:modelValue": i[6] || (i[6] = (e) =>
|
|
687
|
-
"chat-controller":
|
|
687
|
+
modelValue: h.value,
|
|
688
|
+
"onUpdate:modelValue": i[6] || (i[6] = (e) => h.value = e),
|
|
689
|
+
"chat-controller": f.value,
|
|
688
690
|
"data-test": "agent-mode-sidebar"
|
|
689
691
|
}, null, 8, ["modelValue", "chat-controller"]))
|
|
690
692
|
]));
|
|
691
693
|
}
|
|
692
|
-
}), tt = /* @__PURE__ */
|
|
694
|
+
}), tt = /* @__PURE__ */ w({
|
|
693
695
|
__name: "AgentProvider",
|
|
694
696
|
props: {
|
|
695
697
|
sdk: {},
|
|
@@ -710,8 +712,8 @@ var B = /* @__PURE__ */ C({
|
|
|
710
712
|
emits: ["close", "error"],
|
|
711
713
|
setup(e, { emit: t }) {
|
|
712
714
|
let n = e, r = t;
|
|
713
|
-
return (e, t) => (
|
|
714
|
-
default:
|
|
715
|
+
return (e, t) => (j(), _(d, E(n, { class: "agent-provider size-full relative" }), {
|
|
716
|
+
default: R((i) => [C($, {
|
|
715
717
|
sdk: i.sdk,
|
|
716
718
|
agent: i.agent,
|
|
717
719
|
context: i.context,
|
|
@@ -727,9 +729,9 @@ var B = /* @__PURE__ */ C({
|
|
|
727
729
|
class: "size-full",
|
|
728
730
|
onClose: t[0] || (t[0] = (e) => r("close", e)),
|
|
729
731
|
onError: t[1] || (t[1] = (e) => r("error", e))
|
|
730
|
-
},
|
|
732
|
+
}, x({ _: 2 }, [e.$slots["empty-heading"] ? {
|
|
731
733
|
name: "empty-heading",
|
|
732
|
-
fn:
|
|
734
|
+
fn: R((t) => [P(e.$slots, "empty-heading", O(T(t)))]),
|
|
733
735
|
key: "0"
|
|
734
736
|
} : void 0]), 1032, [
|
|
735
737
|
"sdk",
|