@pagelines/sdk 1.0.758 → 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.
Files changed (39) hide show
  1. package/dist/AgentProvider.js +234 -232
  2. package/dist/AgentProvider.js.map +1 -1
  3. package/dist/AgentWidgetModal.js +184 -29
  4. package/dist/AgentWidgetModal.js.map +1 -1
  5. package/dist/AgentWrap.js +819 -611
  6. package/dist/AgentWrap.js.map +1 -1
  7. package/dist/agent/AgentController.d.ts +80 -22
  8. package/dist/agent/index.d.ts +4 -2
  9. package/dist/agent/schema.d.ts +2 -17
  10. package/dist/agent/ui/AgentAvatar.vue.d.ts +2 -0
  11. package/dist/agent/ui/AgentChat.vue.d.ts +3 -0
  12. package/dist/agent/ui/ElCreateAgent.vue.d.ts +2 -0
  13. package/dist/agent/ui/{AgentModal.vue.d.ts → VoiceMode.vue.d.ts} +7 -10
  14. package/dist/agent/utils.d.ts +0 -4
  15. package/dist/agent/voice/provider.d.ts +28 -0
  16. package/dist/agent/voice/providers/elevenlabs/provider.d.ts +30 -0
  17. package/dist/agent/voice/providers/livekit/provider.d.ts +55 -0
  18. package/dist/agent/voice/voice-session-client.d.ts +44 -0
  19. package/dist/agent.js +173 -74
  20. package/dist/agent.js.map +1 -1
  21. package/dist/clients/ChatClient.d.ts +1 -9
  22. package/dist/contract.js +564 -490
  23. package/dist/contract.js.map +1 -1
  24. package/dist/demo/index.d.ts +1 -0
  25. package/dist/provider.js +40 -0
  26. package/dist/provider.js.map +1 -0
  27. package/dist/provider2.js +16451 -0
  28. package/dist/provider2.js.map +1 -0
  29. package/dist/provider3.js +18439 -0
  30. package/dist/provider3.js.map +1 -0
  31. package/dist/sdk.css +1 -1
  32. package/dist/sdkClient.d.ts +8 -0
  33. package/dist/sdkClient.js +37 -47
  34. package/dist/sdkClient.js.map +1 -1
  35. package/dist/widget/composables/useWidgetState.d.ts +3 -0
  36. package/dist/widget.js +23 -23
  37. package/package.json +3 -1
  38. package/dist/FModal.js +0 -165
  39. package/dist/FModal.js.map +0 -1
@@ -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, i as a, l as o, m as s, n as c, o as l, s as u, t as d, u as ee } from "./AgentWrap.js";
4
- import { getColorSchemeOklch as te } from "@pagelines/core";
5
- import { Fragment as f, Transition as p, TransitionGroup as m, computed as h, createBlock as g, createCommentVNode as _, createElementBlock as v, createElementVNode as y, createSlots as b, createTextVNode as x, createVNode as S, defineComponent as C, guardReactiveProps as w, mergeProps as T, normalizeClass as E, normalizeProps as D, normalizeStyle as O, onMounted as k, onUnmounted as ne, openBlock as A, ref as j, renderList as M, renderSlot as N, shallowRef as re, toDisplayString as P, unref as F, watch as I, withCtx as L, withKeys as R, withModifiers as z } from "vue";
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 B = /* @__PURE__ */ C({
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) => (A(), g(m, { name: e.disabled ? "" : "nlist" }, {
19
- default: L(() => [N(t.$slots, "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
- }), V = ["data-test-mode"], H = { class: "w-full max-w-xs space-y-12" }, U = {
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
- }, W = { class: "text-base font-light text-white text-center" }, G = { class: "space-y-6 relative" }, K = {
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
- }, q = {
29
+ }, J = {
30
30
  key: "code-field",
31
31
  class: "w-full"
32
- }, J = /* @__PURE__ */ C({
32
+ }, Y = /* @__PURE__ */ w({
33
33
  __name: "ElAuthGate",
34
34
  props: { sdk: {} },
35
35
  setup(e) {
36
- let n = j({
36
+ let t = M({
37
37
  email: "",
38
38
  code: ""
39
- }), r = j("email"), i = j(!1), a = {
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: () => !n.value.email || i.value
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: n.value.email }) && (r.value = "code");
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: () => n.value.code.length !== 6 || i.value
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: n.value.email,
69
- code: n.value.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 = h(() => a[r.value]);
78
- return I(() => e.sdk.activeUser.value, (e) => {
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) => (A(), v("div", {
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
- }, [y("div", H, [
85
- e.sdk.error.value ? (A(), v("p", U, P(e.sdk.error.value), 1)) : _("", !0),
86
- y("h3", W, P(o.value.title), 1),
87
- y("div", G, [S(B, null, {
88
- default: L(() => [r.value === "email" ? (A(), v("div", K, [S(l, {
89
- modelValue: n.value.email,
90
- "onUpdate:modelValue": a[0] || (a[0] = (e) => n.value.email = 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: R(o.value.action, ["enter"])
93
- }, null, 8, ["modelValue", "onKeyup"])])) : (A(), v("div", q, [S(t, {
94
- modelValue: n.value.code,
95
- "onUpdate:modelValue": a[1] || (a[1] = (e) => n.value.code = 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"])])), (A(), v("div", {
100
+ }, null, 8, ["modelValue", "onAutoSubmit"])])), (j(), y("div", {
101
101
  key: o.value.button.label,
102
102
  class: "space-y-4 w-full"
103
- }, [S(u, {
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: L(() => [x(P(o.value.button.label), 1)]),
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" ? (A(), v("button", {
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 ")) : _("", !0)]))]),
122
+ }, " Change Email ")) : v("", !0)]))]),
123
123
  _: 1
124
124
  })])
125
- ])], 8, V));
125
+ ])], 8, H));
126
126
  }
127
- }), Y = { 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 = {
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__ */ C({
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(t) {
149
- return (n, r) => (A(), v("div", Y, [S(a, {
150
- agent: t.agent,
151
- "is-online": t.isOnline
152
- }, null, 8, ["agent", "is-online"]), y("div", X, [
153
- t.agent.summary.value ? (A(), v("div", ie, [r[0] || (r[0] = y("h3", { class: "font-medium text-white/50" }, " About ", -1)), y("div", {
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: t.agent.summary.value
156
- }, null, 8, ae)])) : _("", !0),
157
- t.agent.entityType.value === "company" ? (A(), v("div", oe, [r[1] || (r[1] = y("h3", { class: "text-sm font-medium text-white/90 mb-2" }, " Company Info ", -1)), y("p", se, " This is a company agent representing " + P(t.agent.name.value) + ". ", 1)])) : _("", !0),
158
- t.agent.email.value ? (A(), v("div", ce, [r[3] || (r[3] = y("h3", { class: "text-sm font-medium text-white/90" }, " Contact ", -1)), y("a", {
159
- href: `mailto:${t.agent.email.value}`,
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
- }, [...r[2] || (r[2] = [y("span", { class: "i-heroicons-envelope flex items-center size-[1.1em] mt-[-.07em]" }, null, -1), x(" Email ", -1)])], 8, le)])) : _("", !0),
164
- t.agent.accounts.value && t.agent.accounts.value.length > 0 ? (A(), v("div", ue, [r[4] || (r[4] = y("h3", { class: "text-sm font-medium text-white/90" }, " Links ", -1)), y("div", de, [(A(!0), v(f, null, M(t.agent.accounts.value, (t) => (A(), v("a", {
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: F(e)[t.platform].getUrl(t.handle),
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
- }, [y("span", { class: E(["flex items-center size-[1.1em] mt-[-.07em]", F(e)[t.platform].icon]) }, null, 2), x(" " + P(F(e)[t.platform].label), 1)], 8, fe))), 128))])])) : _("", !0)
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__ */ C({
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) => (A(), v("div", me, [y("div", he, [y("div", ge, [y("img", {
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) => F(o) && F(o)(...e))
191
- }, null, 40, _e)]), y("div", ve, [e.isOnline ? (A(), v(f, { key: 0 }, [n[1] || (n[1] = y("div", {
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] = y("div", { class: "size-4 bg-green-500 rounded-full ring-2 ring-white" }, null, -1))], 64)) : (A(), v("div", ye))])]), y("div", be, [y("h1", xe, P(e.agent.displayName.value), 1), y("p", Se, P(e.agent.title.value), 1)])]));
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__ */ C({
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 = j(!1);
202
- return k(() => {
201
+ let t = M(!1);
202
+ return A(() => {
203
203
  setTimeout(() => {
204
204
  t.value = !0;
205
205
  }, 100);
206
- }), (e, n) => (A(), v("a", {
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] = y("span", { class: "absolute inset-0 rounded-full transition-all" }, null, -1)), y("span", we, [y("span", {
210
- class: E(["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"]),
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), y("span", {
216
- class: E(["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"]),
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__ */ C({
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 = h({
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 = h(() => n.items.filter((e) => !e.isHidden));
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 = h(() => i === "left" ? {
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) => (A(), v(f, null, [S(p, {
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: L(() => [o.value ? (A(), v("div", {
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
- })) : _("", !0)]),
278
+ })) : v("", !0)]),
279
279
  _: 1
280
- }), S(p, {
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: L(() => [o.value ? (A(), v("div", {
288
+ default: R(() => [o.value ? (j(), y("div", {
289
289
  key: 0,
290
- class: E(["absolute inset-0 z-50 flex", c.value.position]),
290
+ class: D(["absolute inset-0 z-50 flex", c.value.position]),
291
291
  onClick: n[3] || (n[3] = (e) => o.value = !1)
292
- }, [y("div", {
293
- class: E(["relative h-full shadow-2xl bg-black/30 backdrop-blur-xl flex flex-col justify-center", F(a)]),
294
- onClick: n[2] || (n[2] = z(() => {}, ["stop"]))
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
- S(Te, {
297
- class: E(["absolute top-4 z-10 text-white", c.value.closeButton]),
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 ? (A(), v("div", Ee, [y("h3", De, P(e.title), 1)])) : _("", !0),
301
- t.$slots.header ? (A(), v("div", Oe, [N(t.$slots, "header")])) : _("", !0),
302
- y("div", { class: E(["flex-1 p-6 space-y-2 overflow-y-auto", {
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
- }]) }, [S(m, {
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": F(i) === "left" ? "-translate-x-4 opacity-0" : "translate-x-4 opacity-0",
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": F(i) === "left" ? "-translate-x-4 opacity-0" : "translate-x-4 opacity-0"
311
+ "leave-to-class": I(i) === "left" ? "-translate-x-4 opacity-0" : "translate-x-4 opacity-0"
312
312
  }, {
313
- default: L(() => [(A(!0), v(f, null, M(s.value, (e, t) => (A(), v("button", {
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: O({ transitionDelay: `${t * 40}ms` }),
316
- class: E(["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"]]),
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
- }, [y("div", Ae, [e.icon?.src ? (A(), v("i", {
319
+ }, [b("div", Ae, [e.icon?.src ? (j(), y("i", {
320
320
  key: 0,
321
- class: E(["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)) : _("", !0), y("div", je, [y("div", { class: E(["font-medium text-sm", e.isActive ? "text-primary-300" : "text-white"]) }, P(e.label), 3), e.subLabel ? (A(), v("div", Me, P(e.subLabel), 1)) : _("", !0)])])], 14, ke))), 128))]),
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
- y("div", Ne, [N(t.$slots, "footer")])
326
- ], 2)], 2)) : _("", !0)]),
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__ */ C({
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, a = h({
339
+ let n = e, r = t, i = g({
340
340
  get: () => n.modelValue,
341
341
  set: (e) => r("update:modelValue", e)
342
- }), o = h(() => n.chatController?.agentMode?.value ?? "self"), s = h(() => i.map((e) => ({
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: o.value === e.mode,
346
+ isActive: a.value === e.mode,
347
347
  onClick: () => {
348
348
  n.chatController?.setMode(e.mode);
349
349
  }
350
350
  })));
351
- return (e, t) => (A(), g(Z, {
352
- modelValue: a.value,
353
- "onUpdate:modelValue": t[0] || (t[0] = (e) => a.value = e),
354
- items: s.value,
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__ */ C({
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 = h({
371
+ let n = e, r = t, i = g({
372
372
  get: () => n.modelValue,
373
373
  set: (e) => r("update:modelValue", e)
374
- }), a = h(() => {
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) => (A(), g(Z, {
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__ */ C({
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(t, { emit: o }) {
494
- let l = o, d = re(), p = j(!1), m = j(!1), C = j(), T = j(), R = h(() => d.value?.agentMode?.value ?? "self"), B = h(() => d.value?.textState.value.isConnected ?? !1), V = h(() => t.sdk.activeUser.value !== void 0), H = h(() => i.find((e) => e.mode === R.value));
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
- d.value && d.value.destroy();
497
+ f.value && f.value.destroy();
497
498
  try {
498
- d.value = new r({
499
- sdk: t.sdk,
500
- agent: t.agent,
501
- context: t.context,
502
- firstMessage: t.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
- C.value = t, l("error", t);
514
+ w.value = t, d("error", t);
513
515
  }
514
516
  function applyTheme(e) {
515
- if (!T.value) return;
516
- let t = te(e);
517
+ if (!E.value) return;
518
+ let t = ee(e);
517
519
  Object.entries(t).forEach(([e, t]) => {
518
- T.value.style.setProperty(`--primary-${e}`, t);
520
+ E.value.style.setProperty(`--primary-${e}`, t);
519
521
  });
520
522
  }
521
- k(() => {
523
+ A(() => {
522
524
  try {
523
- applyTheme(t.theme), t.chatOnly && d.value && d.value.setMode("chat");
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
- C.value = t, l("error", t);
528
+ w.value = t, d("error", t);
527
529
  }
528
- }), ne(() => {
529
- d.value && d.value.destroy();
530
- }), I(() => t.theme, (e) => {
530
+ }), te(() => {
531
+ f.value && f.value.destroy();
532
+ }), L(() => c.theme, (e) => {
531
533
  applyTheme(e);
532
- }), I(() => t.sdk.activeUser.value, (e, t) => {
533
- t && !e && d.value && d.value.setMode("self");
534
+ }), L(() => c.sdk.activeUser.value, (e, t) => {
535
+ t && !e && f.value && f.value.setMode("self");
534
536
  });
535
- let U = h(() => !!(t.agent.cover.value?.src && t.agent.cover.value?.quality === "low") || !!(t.agent.avatar.value?.src && t.agent.avatar.value?.quality === "low")), W = h(() => {
536
- let e = [U.value ? "backdrop-blur-sm" : ""];
537
- return U.value && R.value === "self" ? e.push("from-black/80 via-black/60 to-black/80") : R.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(" ");
538
- }), G = {
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
- }, K = h(() => ee({
545
- template: t.buttonText || "Talk to {name}",
546
- agent: t.agent.toConfig()
547
- })), q = h(() => G[t.buttonIcon || "phone"] || G.phone);
548
- return (r, i) => (A(), v("div", {
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: T,
551
- key: F(n)(t.agent.toConfig()),
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
- t.loading ? (A(), v("div", Ie, [S(s, { class: "text-white size-8" })])) : t.agent && !C.value ? (A(), v("div", {
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: E(["absolute inset-0", t.bare ? "bg-theme-0" : "bg-cover bg-center bg-no-repeat"]),
558
- style: O(t.bare ? void 0 : { backgroundImage: `url(${F(n)(t.agent.toConfig())})` }),
559
- "data-quality": t.agent.avatar.value?.quality || "none"
560
- }, [t.bare ? _("", !0) : (A(), v("div", {
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: E(["absolute inset-0 bg-gradient-to-br z-0", W.value])
563
- }, null, 2)), y("div", { class: E(["relative z-10 flex flex-col h-full transition-all duration-500 ease-[cubic-bezier(0.25,1,0.33,1)] will-change-transform", t.isActive ? "opacity-100 translate-y-0" : "opacity-0 translate-y-2"]) }, [!t.bare || t.hasClose ? (A(), v("div", {
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: E(["relative z-30 p-2", !t.bare && R.value !== "self" ? "backdrop-blur-lg" : ""])
566
- }, [t.chatOnly ? (A(), v("div", {
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: E(["flex items-center", t.bare ? "justify-end" : ""])
569
- }, [t.bare ? _("", !0) : (A(), v("div", Re, [y("img", {
570
- src: F(n)(t.agent.toConfig()),
571
- alt: t.agent.displayName.value,
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), y("span", Be, P(t.agent.displayName.value), 1)])), t.hasClose ? (A(), v("div", Ve, [y("button", {
574
- class: E(["flex cursor-pointer items-center rounded-2xl p-3 transition-colors", t.bare ? "text-theme-500 hover:bg-theme-50" : "text-white/70 hover:bg-white/10"]),
575
- onClick: i[0] || (i[0] = z((e) => l("close", "button"), ["stop"]))
576
- }, [...i[7] || (i[7] = [y("i", { class: "size-6 i-tabler-x" }, null, -1)])], 2)])) : _("", !0)], 2)) : (A(), v("div", {
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: E(["flex items-center", t.hasClose ? "" : "justify-between"])
580
+ class: D(["flex items-center", c.hasClose ? "" : "justify-between"])
579
581
  }, [
580
- y("div", { class: E(t.hasClose ? "flex-1 basis-0" : "") }, [y("button", {
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) => p.value = !0)
583
- }, [...i[8] || (i[8] = [y("i", { class: "i-tabler-menu size-7" }, null, -1)])])], 2),
584
- y("button", {
585
- class: E(["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": m.value }]),
586
- onClick: i[2] || (i[2] = (e) => m.value = !0)
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
- y("i", { class: E([H.value?.icon, "size-4 opacity-60"]) }, null, 2),
589
- y("span", He, P(H.value?.label), 1),
590
- i[9] || (i[9] = y("i", { class: "i-tabler-chevron-down size-4" }, null, -1))
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
- t.hasClose ? (A(), v("div", Q, [y("button", {
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] = z((e) => l("close", "button"), ["stop"]))
595
- }, [...i[10] || (i[10] = [y("i", { class: "size-6 i-tabler-x" }, null, -1)])])])) : _("", !0)
596
- ], 2))], 2)) : _("", !0), t.chatOnly ? (A(), v("div", {
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: E(["relative z-20 flex min-h-0 w-full flex-1 flex-col", t.bare ? "bg-theme-0" : "px-4"])
599
- }, [y("div", { class: E(["min-h-0 w-full flex-1", t.bare ? "" : "mx-auto max-w-md"]) }, [S(c, {
600
- "chat-controller": d.value,
601
- agent: t.agent,
602
- scope: V.value ? "private" : "public",
603
- "empty-state-message": t.emptyStateMessage,
604
- "suggested-prompts": t.suggestedPrompts,
605
- variant: t.bare ? "light" : "dark",
606
- "show-header": !t.bare,
607
- centered: t.bare
608
- }, b({ _: 2 }, [r.$slots["empty-heading"] ? {
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: L((e) => [N(r.$slots, "empty-heading", D(w(e)))]),
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)) : (A(), v(f, { key: 2 }, [R.value === "self" ? (A(), v("div", Ue, [
622
- i[11] || (i[11] = y("div", { class: "flex-1 basis-0 mb-12" }, null, -1)),
623
- S(Ce, {
624
- agent: t.agent,
625
- "is-online": B.value
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
- y("div", We, [S(u, {
629
+ b("div", We, [C(n, {
628
630
  theme: "primary",
629
631
  size: "lg",
630
632
  class: "w-full",
631
- icon: q.value,
633
+ icon: J.value,
632
634
  "data-test": "voice-button",
633
- onClick: i[4] || (i[4] = (e) => d.value?.setMode("talk"))
635
+ onClick: i[4] || (i[4] = (e) => f.value?.setMode("talk"))
634
636
  }, {
635
- default: L(() => [x(P(K.value), 1)]),
637
+ default: R(() => [S(F(q.value), 1)]),
636
638
  _: 1
637
- }, 8, ["icon"]), t.agent.accounts.value && t.agent.accounts.value.length > 0 ? (A(), v("div", Ge, [(A(!0), v(f, null, M((t.agent.accounts.value || []).filter((t) => F(e)[t.platform]), (t) => (A(), v("a", {
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: F(e)[t.platform].getUrl(t.handle),
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
- }, [y("i", { class: E([F(e)[t.platform].icon, "size-5"]) }, null, 2)], 8, Ke))), 128))])) : _("", !0)])
643
- ])) : R.value === "talk" ? (A(), v("div", qe, [t.requireAuth && !V.value ? (A(), g(J, {
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: t.sdk
646
- }, null, 8, ["sdk"])) : (A(), v(f, { key: 1 }, [y("div", null, [y("div", Je, [S(a, {
647
- agent: t.agent,
648
- "is-online": B.value
649
- }, null, 8, ["agent", "is-online"])])]), S(c, {
650
- "chat-controller": d.value,
651
- agent: t.agent
652
- }, null, 8, ["chat-controller", "agent"])], 64))])) : (A(), v("div", Ye, [y("div", Xe, [R.value === "chat" ? (A(), v(f, { key: 0 }, [t.requireAuth && !V.value ? (A(), g(J, {
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: t.sdk
655
- }, null, 8, ["sdk"])) : (A(), g(c, {
656
+ sdk: c.sdk
657
+ }, null, 8, ["sdk"])) : (j(), _(s, {
656
658
  key: 1,
657
- "chat-controller": d.value,
658
- agent: t.agent,
659
+ "chat-controller": f.value,
660
+ agent: c.agent,
659
661
  "show-header": ""
660
- }, null, 8, ["chat-controller", "agent"]))], 64)) : R.value === "info" ? (A(), g(pe, {
662
+ }, null, 8, ["chat-controller", "agent"]))], 64)) : z.value === "info" ? (j(), _(pe, {
661
663
  key: 1,
662
- agent: t.agent,
663
- "is-online": B.value
664
- }, null, 8, ["agent", "is-online"])) : _("", !0)])]))], 64))], 2)], 14, Le)) : C.value ? (A(), v("div", Ze, [y("div", Qe, [
665
- i[12] || (i[12] = y("div", { class: "flex justify-center" }, [y("div", { class: "rounded-full bg-red-500/20 flex items-center justify-center size-10" }, [y("i", { class: "i-tabler-alert-circle size-6 text-red-400" })])], -1)),
666
- i[13] || (i[13] = y("h3", { class: "text-lg font-medium" }, " Agent Error ", -1)),
667
- y("p", $e, P(C.value), 1)
668
- ])])) : (A(), v("div", et, " Couldn't load your assistant. Please try again later. ")),
669
- t.chatOnly ? _("", !0) : (A(), g(Fe, {
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: p.value,
672
- "onUpdate:modelValue": i[5] || (i[5] = (e) => p.value = e),
673
- agent: t.agent,
674
- sdk: t.sdk,
675
- title: t.agent.displayName.value,
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
- t.chatOnly ? _("", !0) : (A(), g(Pe, {
685
+ c.chatOnly ? v("", !0) : (j(), _(Pe, {
684
686
  key: 5,
685
- modelValue: m.value,
686
- "onUpdate:modelValue": i[6] || (i[6] = (e) => m.value = e),
687
- "chat-controller": d.value,
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__ */ C({
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) => (A(), g(d, T(n, { class: "agent-provider size-full relative" }), {
714
- default: L((i) => [S($, {
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
- }, b({ _: 2 }, [e.$slots["empty-heading"] ? {
732
+ }, x({ _: 2 }, [e.$slots["empty-heading"] ? {
731
733
  name: "empty-heading",
732
- fn: L((t) => [N(e.$slots, "empty-heading", D(w(t)))]),
734
+ fn: R((t) => [P(e.$slots, "empty-heading", O(T(t)))]),
733
735
  key: "0"
734
736
  } : void 0]), 1032, [
735
737
  "sdk",