@epam/ai-dial-conversation-messages 1.1.0-dev.12 → 1.1.0-dev.121
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/components/MessageActions/MessageActions.d.ts.map +1 -1
- package/components/MessageBubble/AssistantMessageBubble.d.ts.map +1 -1
- package/components/MessageBubble/StatusMessageBubble.d.ts +1 -5
- package/components/MessageBubble/StatusMessageBubble.d.ts.map +1 -1
- package/components/MessageBubble/UserMessageBubble.d.ts.map +1 -1
- package/index.css +1 -1
- package/index.d.ts +0 -1
- package/index.d.ts.map +1 -1
- package/index.js +457 -569
- package/models/message-actions.d.ts +29 -22
- package/models/message-actions.d.ts.map +1 -1
- package/models/message-bubble.d.ts +41 -69
- package/models/message-bubble.d.ts.map +1 -1
- package/models/message-source.d.ts +8 -8
- package/models/message-source.d.ts.map +1 -1
- package/package.json +5 -5
- package/types/bubble-position.d.ts +3 -3
- package/types/bubble-position.d.ts.map +1 -1
- package/components/MessageSource/MessageSource.d.ts +0 -5
- package/components/MessageSource/MessageSource.d.ts.map +0 -1
package/index.js
CHANGED
|
@@ -1,268 +1,234 @@
|
|
|
1
|
-
import { AttachmentErrorReason as e, AttachmentType as t,
|
|
2
|
-
import { DIAL_ICON_SIZE as p,
|
|
3
|
-
import {
|
|
1
|
+
import { AttachmentErrorReason as e, AttachmentType as t, CopyIconButton as n, DeploymentIcon as r, MDMessageViewer as i, MIME_TYPE_EXT_MAP as a, MessageRating as o, MessageRole as s, RequestStatus as c, ResponseFormat as l, buildCssVars as u, mergeClasses as d, useCollapsedText as f } from "@epam/ai-dial-chat-shared";
|
|
2
|
+
import { DIAL_ICON_SIZE as p, DialInput as m, DialPopup as h, DialRadioGroup as g, DialSkeleton as _, DialSkeletonVariant as v, DialSlider as y, DialSpinner as b, DialTooltip as x, ElementSize as S, GhostIconButton as C, Highlight as w, InfoMessageNotification as T, LinkButton as E, NeutralButton as D, PopupSize as O, PrimaryButton as k, RadioGroupOrientation as A, StaticIconButton as j } from "@epam/ai-dial-ui-kit";
|
|
3
|
+
import { IconChevronDown as M, IconChevronUp as N, IconClipboard as P, IconDownload as F, IconExternalLink as I, IconFile as L, IconFileTypeBmp as R, IconFileTypeCss as z, IconFileTypeCsv as B, IconFileTypeDoc as V, IconFileTypeDocx as H, IconFileTypeHtml as U, IconFileTypeJpg as W, IconFileTypeJs as ee, IconFileTypeJsx as te, IconFileTypePdf as ne, IconFileTypePhp as re, IconFileTypePng as ie, IconFileTypePpt as ae, IconFileTypeRs as oe, IconFileTypeSql as se, IconFileTypeSvg as ce, IconFileTypeTs as le, IconFileTypeTsx as ue, IconFileTypeTxt as de, IconFileTypeVue as fe, IconFileTypeXls as pe, IconFileTypeXml as me, IconFileTypeZip as he, IconMarkdown as ge, IconMusic as _e, IconPaperclip as ve, IconPencilMinus as ye, IconPhoto as G, IconRefresh as be, IconReload as xe, IconTerminal2 as Se, IconThumbDown as Ce, IconThumbUp as we, IconTrashX as Te, IconVideo as Ee, IconX as De } from "@tabler/icons-react";
|
|
4
4
|
import "react-dom";
|
|
5
|
-
import { memo as
|
|
6
|
-
import { Fragment as
|
|
5
|
+
import { memo as Oe, useCallback as K, useEffect as ke, useId as Ae, useMemo as je, useRef as Me, useState as q } from "react";
|
|
6
|
+
import { Fragment as J, jsx as Y, jsxs as X } from "react/jsx-runtime";
|
|
7
7
|
//#region ../attachment-input/dist/index.js
|
|
8
|
-
var
|
|
9
|
-
|
|
10
|
-
}({}), Ie = (e) => {
|
|
8
|
+
var Ne = (e) => {
|
|
9
|
+
if (e == null) return "";
|
|
11
10
|
let t = e.lastIndexOf(".");
|
|
12
11
|
return t > 0 ? e.slice(0, t) : e;
|
|
13
|
-
},
|
|
12
|
+
}, Pe = (e) => {
|
|
14
13
|
if (!e) return L;
|
|
15
14
|
if (e.startsWith("image/")) switch (e) {
|
|
16
15
|
case "image/jpeg":
|
|
17
|
-
case "image/jpg": return
|
|
18
|
-
case "image/png": return
|
|
19
|
-
case "image/svg+xml": return
|
|
16
|
+
case "image/jpg": return W;
|
|
17
|
+
case "image/png": return ie;
|
|
18
|
+
case "image/svg+xml": return ce;
|
|
20
19
|
case "image/bmp": return R;
|
|
21
|
-
default: return
|
|
20
|
+
default: return G;
|
|
22
21
|
}
|
|
23
|
-
if (e.startsWith("video/")) return
|
|
24
|
-
if (e.startsWith("audio/")) return
|
|
22
|
+
if (e.startsWith("video/")) return Ee;
|
|
23
|
+
if (e.startsWith("audio/")) return _e;
|
|
25
24
|
switch (e) {
|
|
26
|
-
case "application/pdf": return
|
|
25
|
+
case "application/pdf": return ne;
|
|
27
26
|
case "application/msword":
|
|
28
|
-
case "application/vnd.ms-word": return
|
|
29
|
-
case "application/vnd.openxmlformats-officedocument.wordprocessingml.document": return
|
|
30
|
-
case "application/vnd.ms-powerpoint": return
|
|
31
|
-
case "application/vnd.openxmlformats-officedocument.presentationml.presentation": return
|
|
32
|
-
case "application/vnd.ms-excel": return
|
|
33
|
-
case "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": return
|
|
27
|
+
case "application/vnd.ms-word": return V;
|
|
28
|
+
case "application/vnd.openxmlformats-officedocument.wordprocessingml.document": return H;
|
|
29
|
+
case "application/vnd.ms-powerpoint": return ae;
|
|
30
|
+
case "application/vnd.openxmlformats-officedocument.presentationml.presentation": return ae;
|
|
31
|
+
case "application/vnd.ms-excel": return pe;
|
|
32
|
+
case "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": return pe;
|
|
34
33
|
case "application/zip":
|
|
35
34
|
case "application/x-zip-compressed":
|
|
36
35
|
case "application/x-rar-compressed":
|
|
37
36
|
case "application/x-7z-compressed":
|
|
38
37
|
case "application/gzip":
|
|
39
|
-
case "application/x-tar": return
|
|
38
|
+
case "application/x-tar": return he;
|
|
40
39
|
case "text/csv": return B;
|
|
41
|
-
case "text/plain": return
|
|
40
|
+
case "text/plain": return de;
|
|
42
41
|
case "text/html":
|
|
43
|
-
case "application/xhtml+xml": return
|
|
42
|
+
case "application/xhtml+xml": return U;
|
|
44
43
|
case "text/xml":
|
|
45
|
-
case "application/xml": return
|
|
44
|
+
case "application/xml": return me;
|
|
46
45
|
case "application/sql":
|
|
47
|
-
case "text/x-sql": return
|
|
46
|
+
case "text/x-sql": return se;
|
|
48
47
|
case "text/javascript":
|
|
49
|
-
case "application/javascript": return
|
|
50
|
-
case "text/jsx": return
|
|
48
|
+
case "application/javascript": return ee;
|
|
49
|
+
case "text/jsx": return te;
|
|
51
50
|
case "application/typescript":
|
|
52
|
-
case "text/typescript": return
|
|
53
|
-
case "text/tsx": return
|
|
51
|
+
case "text/typescript": return le;
|
|
52
|
+
case "text/tsx": return ue;
|
|
54
53
|
case "text/css": return z;
|
|
55
54
|
case "text/x-php":
|
|
56
|
-
case "application/x-php": return
|
|
55
|
+
case "application/x-php": return re;
|
|
57
56
|
case "text/x-rustsrc":
|
|
58
|
-
case "application/x-rust": return
|
|
59
|
-
case "text/x-vue": return
|
|
57
|
+
case "application/x-rust": return oe;
|
|
58
|
+
case "text/x-vue": return fe;
|
|
60
59
|
default: return L;
|
|
61
60
|
}
|
|
62
|
-
},
|
|
61
|
+
}, Fe = (e) => {
|
|
63
62
|
let { type: n, contentType: r } = e;
|
|
64
|
-
return n === t.Prompt ?
|
|
65
|
-
},
|
|
63
|
+
return n === t.Prompt ? Se : n === t.Pasted ? P : n === t.Image ? G : Pe(r ?? "");
|
|
64
|
+
}, Ie = (e) => {
|
|
66
65
|
let t = e.toLowerCase().split(";")[0].trim(), n = a[t];
|
|
67
66
|
if (n) return n;
|
|
68
67
|
let r = t.split("/")[1];
|
|
69
68
|
if (r && !r.startsWith("vnd.") && !r.includes("+")) return r;
|
|
70
|
-
},
|
|
69
|
+
}, Le = (e, n) => {
|
|
71
70
|
let { type: r, name: i, contentType: a } = e;
|
|
72
71
|
if (r === t.Prompt) return n.promptLabel ?? "Prompt";
|
|
73
72
|
if (r === t.Pasted) return n.pastedLabel ?? "Pasted";
|
|
74
73
|
if (r === t.Image) return n.imageLabel ?? "Image";
|
|
75
74
|
if (a) {
|
|
76
|
-
let e =
|
|
75
|
+
let e = Ie(a);
|
|
77
76
|
if (e) return `.${e}`;
|
|
78
77
|
}
|
|
79
78
|
let o = i.lastIndexOf(".");
|
|
80
79
|
return o > 0 && o < i.length - 1 ? `.${i.slice(o + 1).toLowerCase()}` : i;
|
|
81
|
-
},
|
|
82
|
-
let { type: r, status: i, previewUrl: a, url: o } = e, s = i === c.Loading, l = i === c.Error, u = r === t.Image && !!(a ?? o) && !l, d = r === t.
|
|
80
|
+
}, Re = (e, n = {}) => {
|
|
81
|
+
let { type: r, status: i, previewUrl: a, url: o } = e, s = i === c.Loading, l = i === c.Error, u = r === t.Image && !!(a ?? o) && !l, d = r === t.Link && !l;
|
|
83
82
|
return {
|
|
84
83
|
isLoading: s,
|
|
85
84
|
isError: l,
|
|
86
85
|
isImage: u,
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
typeLabel: f ? null : Be(e, n)
|
|
86
|
+
isLink: d,
|
|
87
|
+
BottomIcon: d ? null : Fe(e),
|
|
88
|
+
typeLabel: d ? null : Le(e, n)
|
|
91
89
|
};
|
|
92
|
-
},
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
}, X = {
|
|
105
|
-
tile: "_tile_3x6ks_1",
|
|
106
|
-
tileLight: "_tileLight_3x6ks_12",
|
|
107
|
-
tileError: "_tileError_3x6ks_16",
|
|
108
|
-
nameText: "_nameText_3x6ks_23",
|
|
109
|
-
typeText: "_typeText_3x6ks_24",
|
|
110
|
-
retryIcon: "_retryIcon_3x6ks_36",
|
|
111
|
-
hoverIcon: "_hoverIcon_3x6ks_40",
|
|
112
|
-
track: "_track_3x6ks_48",
|
|
113
|
-
indeterminateFill: "_indeterminateFill_3x6ks_52",
|
|
114
|
-
"attachment-tile-indeterminate": "_attachment-tile-indeterminate_3x6ks_1"
|
|
115
|
-
}, Z = ({ ariaLabel: e, errorTitle: t, errorDescId: n, onClick: r, id: i, icon: a, className: o }) => /* @__PURE__ */ q(m, {
|
|
90
|
+
}, ze = "flex size-[84px] items-center justify-center rounded-xl border", Z = {
|
|
91
|
+
tile: "_tile_3jao2_1",
|
|
92
|
+
hovered: "_hovered_3jao2_5",
|
|
93
|
+
selected: "_selected_3jao2_15",
|
|
94
|
+
tileError: "_tileError_3jao2_20",
|
|
95
|
+
nameText: "_nameText_3jao2_25",
|
|
96
|
+
typeText: "_typeText_3jao2_29",
|
|
97
|
+
retryIcon: "_retryIcon_3jao2_33",
|
|
98
|
+
track: "_track_3jao2_37",
|
|
99
|
+
actionButton: "_actionButton_3jao2_43",
|
|
100
|
+
imageActionButton: "_imageActionButton_3jao2_47"
|
|
101
|
+
}, Q = ({ ariaLabel: e, errorTitle: t, errorDescId: n, onClick: r, id: i, icon: a, className: o }) => /* @__PURE__ */ Y(j, {
|
|
116
102
|
icon: a,
|
|
117
|
-
size:
|
|
118
|
-
className: d("absolute end-1 top-1
|
|
103
|
+
size: S.Small,
|
|
104
|
+
className: d("absolute end-1 top-1 opacity-0 focus-visible:opacity-100 group-focus-within/attachment-tile:opacity-100 group-hover/attachment-tile:opacity-100", Z.actionButton, o),
|
|
119
105
|
"aria-label": e,
|
|
120
106
|
"aria-describedby": t ? n : void 0,
|
|
121
107
|
onClick: (e) => {
|
|
122
108
|
e.stopPropagation(), r(i);
|
|
123
109
|
}
|
|
124
|
-
}),
|
|
125
|
-
icon: /* @__PURE__ */
|
|
110
|
+
}), Be = ({ ...e }) => /* @__PURE__ */ Y(Q, {
|
|
111
|
+
icon: /* @__PURE__ */ Y(xe, {
|
|
126
112
|
size: p.SM,
|
|
127
113
|
"aria-hidden": !0
|
|
128
114
|
}),
|
|
129
|
-
className:
|
|
115
|
+
className: Z.retryIcon,
|
|
130
116
|
...e
|
|
131
|
-
}),
|
|
132
|
-
icon: /* @__PURE__ */
|
|
117
|
+
}), Ve = ({ ...e }) => /* @__PURE__ */ Y(Q, {
|
|
118
|
+
icon: /* @__PURE__ */ Y(F, {
|
|
133
119
|
size: p.SM,
|
|
134
120
|
"aria-hidden": !0
|
|
135
121
|
}),
|
|
136
122
|
...e
|
|
137
|
-
}),
|
|
138
|
-
icon: /* @__PURE__ */
|
|
123
|
+
}), He = ({ ...e }) => /* @__PURE__ */ Y(Q, {
|
|
124
|
+
icon: /* @__PURE__ */ Y(I, {
|
|
139
125
|
size: p.SM,
|
|
140
126
|
"aria-hidden": !0
|
|
141
127
|
}),
|
|
142
128
|
...e
|
|
143
|
-
}),
|
|
144
|
-
icon: /* @__PURE__ */
|
|
129
|
+
}), Ue = ({ ...e }) => /* @__PURE__ */ Y(Q, {
|
|
130
|
+
icon: /* @__PURE__ */ Y(De, {
|
|
145
131
|
size: p.SM,
|
|
146
132
|
"aria-hidden": !0
|
|
147
133
|
}),
|
|
148
|
-
className: X.hoverIcon,
|
|
149
134
|
...e
|
|
150
|
-
}),
|
|
151
|
-
let { clickLabel: s = "Open attachment" } = i ?? {}, { typography: c, className: l } = a ?? {};
|
|
152
|
-
return /* @__PURE__ */ J("div", {
|
|
153
|
-
style: o,
|
|
154
|
-
className: d("group flex w-full min-w-[280px] max-w-[300px] flex-col gap-2 rounded-xl border p-3", l),
|
|
155
|
-
children: [/* @__PURE__ */ J("div", {
|
|
156
|
-
className: "flex items-center justify-between gap-2",
|
|
157
|
-
children: [/* @__PURE__ */ q("span", {
|
|
158
|
-
title: e.name,
|
|
159
|
-
className: d(c?.fontClassName ?? "dial-tiny-text", "min-w-0 truncate", X.nameText),
|
|
160
|
-
children: t ? /* @__PURE__ */ q(r, {
|
|
161
|
-
text: e.name,
|
|
162
|
-
query: t,
|
|
163
|
-
maxLines: 1
|
|
164
|
-
}) : e.name
|
|
165
|
-
}), n && /* @__PURE__ */ q(We, {
|
|
166
|
-
ariaLabel: s,
|
|
167
|
-
onClick: n,
|
|
168
|
-
id: e.id
|
|
169
|
-
})]
|
|
170
|
-
}), e.playUrl && /* @__PURE__ */ q("audio", {
|
|
171
|
-
controls: !0,
|
|
172
|
-
src: e.playUrl,
|
|
173
|
-
"aria-label": e.name,
|
|
174
|
-
className: "w-full",
|
|
175
|
-
preload: "metadata"
|
|
176
|
-
})]
|
|
177
|
-
});
|
|
178
|
-
}, Je = {
|
|
135
|
+
}), We = {
|
|
179
136
|
[e.Network]: "Upload failed · network error",
|
|
180
137
|
[e.UnsupportedType]: "Upload failed · unsupported file type"
|
|
181
|
-
},
|
|
182
|
-
let { clickLabel:
|
|
183
|
-
(e.key === "Enter" || e.key === " ") && (e.preventDefault(),
|
|
184
|
-
},
|
|
138
|
+
}, Ge = ({ attachment: t, searchQuery: n = "", onClick: r, onRetry: i, labels: a, styles: o, onDownload: s, isPasted: l, isLink: u, cssVars: f, onExpand: p, isExpandable: m, onRemove: h, isSelected: g }) => {
|
|
139
|
+
let { clickLabel: _ = "Download attachment", retryLabel: v = "Retry upload", sizeLabel: y, uploadingLabel: x = "Uploading", errorReasonLabels: S, genericErrorLabel: C = "Upload failed" } = a ?? {}, { typography: T, className: E } = o ?? {}, { id: D, name: O, status: k, errorReason: A } = t, j = k === c.Loading, M = k === c.Error, N = Ae(), P = M ? A && (S?.[A] ?? We[A]) || C : "", { BottomIcon: F, typeLabel: I } = Re(t), L = !M && !j && s && !u, R = M && !!i && A !== e.UnsupportedType, z = L || R ? "pe-5" : void 0, B = (e) => {
|
|
140
|
+
(e.key === "Enter" || e.key === " ") && (e.preventDefault(), r?.(t.id));
|
|
141
|
+
}, V = je(() => l ? O : Ne(O), [l, O]), H = K(() => {
|
|
185
142
|
window.open(t.referenceUrl, "_blank", "noopener,noreferrer");
|
|
186
|
-
}, [t]),
|
|
187
|
-
title:
|
|
188
|
-
className: d(
|
|
189
|
-
children:
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
143
|
+
}, [t]), U = d(ze, "group/attachment-tile relative flex-col justify-between items-start gap-1 overflow-hidden p-1.5", Z.tile, !M && Z.hovered, g && Z.selected, M && Z.tileError), W = /* @__PURE__ */ Y("div", {
|
|
144
|
+
title: V,
|
|
145
|
+
className: d(T?.nameClassName ?? "dial-caption-text", "line-clamp-2 min-w-0 break-all", Z.nameText, !M && z),
|
|
146
|
+
children: n ? /* @__PURE__ */ Y(w, {
|
|
147
|
+
text: V,
|
|
148
|
+
query: n,
|
|
149
|
+
maxLines: 2
|
|
150
|
+
}) : V
|
|
151
|
+
}), ee = F && /* @__PURE__ */ X("div", {
|
|
152
|
+
className: d("flex w-full items-center gap-1", M && z),
|
|
153
|
+
children: [/* @__PURE__ */ Y(F, {
|
|
193
154
|
size: 16,
|
|
194
|
-
className:
|
|
155
|
+
className: Z.typeText,
|
|
195
156
|
"aria-hidden": !0
|
|
196
|
-
}), /* @__PURE__ */
|
|
197
|
-
className: d(
|
|
198
|
-
children:
|
|
157
|
+
}), /* @__PURE__ */ Y("span", {
|
|
158
|
+
className: d(T?.metaClassName ?? "dial-caption-text", "min-w-0 flex-1 truncate", Z.typeText),
|
|
159
|
+
children: y ? `${I} · ${y}` : I
|
|
199
160
|
})]
|
|
200
161
|
}), te = () => {
|
|
201
|
-
|
|
202
|
-
}, ne = /* @__PURE__ */ J
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
"aria-label":
|
|
207
|
-
className: d("absolute
|
|
208
|
-
children: /* @__PURE__ */
|
|
209
|
-
}),
|
|
210
|
-
P && /* @__PURE__ */ q(We, {
|
|
211
|
-
ariaLabel: h,
|
|
212
|
-
errorTitle: j,
|
|
213
|
-
errorDescId: A,
|
|
214
|
-
onClick: o,
|
|
215
|
-
id: w
|
|
162
|
+
m && p ? p(D) : r && r(D);
|
|
163
|
+
}, ne = /* @__PURE__ */ X(J, { children: [
|
|
164
|
+
W,
|
|
165
|
+
ee,
|
|
166
|
+
j && /* @__PURE__ */ Y("div", {
|
|
167
|
+
"aria-label": x,
|
|
168
|
+
className: d("absolute left-[-1px] top-[-1px] flex size-full items-center justify-center rounded", Z.track),
|
|
169
|
+
children: /* @__PURE__ */ Y(b, { size: 32 })
|
|
216
170
|
}),
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
171
|
+
/* @__PURE__ */ X("div", {
|
|
172
|
+
className: d("absolute right-0 top-0 flex gap-1"),
|
|
173
|
+
children: [
|
|
174
|
+
L && /* @__PURE__ */ Y(Ve, {
|
|
175
|
+
ariaLabel: _,
|
|
176
|
+
errorTitle: P,
|
|
177
|
+
errorDescId: N,
|
|
178
|
+
onClick: s,
|
|
179
|
+
id: D
|
|
180
|
+
}),
|
|
181
|
+
R && /* @__PURE__ */ Y(Be, {
|
|
182
|
+
ariaLabel: v,
|
|
183
|
+
errorTitle: P,
|
|
184
|
+
errorDescId: N,
|
|
185
|
+
onClick: i,
|
|
186
|
+
id: D
|
|
187
|
+
}),
|
|
188
|
+
u && /* @__PURE__ */ Y(He, {
|
|
189
|
+
ariaLabel: v,
|
|
190
|
+
errorTitle: P,
|
|
191
|
+
errorDescId: N,
|
|
192
|
+
onClick: H
|
|
193
|
+
}),
|
|
194
|
+
h && /* @__PURE__ */ Y(Ue, {
|
|
195
|
+
ariaLabel: v,
|
|
196
|
+
errorTitle: P,
|
|
197
|
+
errorDescId: N,
|
|
198
|
+
onClick: h,
|
|
199
|
+
id: D
|
|
200
|
+
})
|
|
201
|
+
]
|
|
236
202
|
}),
|
|
237
|
-
|
|
238
|
-
id:
|
|
203
|
+
M && /* @__PURE__ */ Y("span", {
|
|
204
|
+
id: N,
|
|
239
205
|
role: "status",
|
|
240
206
|
"aria-live": "polite",
|
|
241
207
|
className: "sr-only",
|
|
242
|
-
children:
|
|
208
|
+
children: P
|
|
243
209
|
})
|
|
244
210
|
] });
|
|
245
|
-
return /* @__PURE__ */
|
|
246
|
-
style:
|
|
247
|
-
className: d("inline-flex",
|
|
248
|
-
children: /* @__PURE__ */
|
|
211
|
+
return /* @__PURE__ */ Y("div", {
|
|
212
|
+
style: f,
|
|
213
|
+
className: d("inline-flex", E),
|
|
214
|
+
children: /* @__PURE__ */ Y("div", {
|
|
249
215
|
role: "button",
|
|
250
216
|
tabIndex: 0,
|
|
251
|
-
"aria-label":
|
|
217
|
+
"aria-label": _,
|
|
252
218
|
onClick: te,
|
|
253
|
-
onKeyDown:
|
|
254
|
-
style:
|
|
255
|
-
className: d(
|
|
219
|
+
onKeyDown: B,
|
|
220
|
+
style: f,
|
|
221
|
+
className: d(U, "cursor-pointer focus-within:outline focus-within:outline-1 focus-within:outline-offset-1"),
|
|
256
222
|
children: ne
|
|
257
223
|
})
|
|
258
224
|
});
|
|
259
|
-
},
|
|
225
|
+
}, Ke = /* @__PURE__ */ function(e) {
|
|
260
226
|
return e.Idle = "idle", e.Loading = "loading", e.Loaded = "loaded", e.Error = "error", e;
|
|
261
|
-
}({}),
|
|
262
|
-
let n =
|
|
263
|
-
return
|
|
227
|
+
}({}), qe = ({ enabled: e, src: t }) => {
|
|
228
|
+
let n = Me(null), [r, i] = q("idle");
|
|
229
|
+
return ke(() => {
|
|
264
230
|
i(e && t ? "loading" : "idle");
|
|
265
|
-
}, [e, t]),
|
|
231
|
+
}, [e, t]), ke(() => {
|
|
266
232
|
let r = n.current;
|
|
267
233
|
if (!r || !e || !t) return;
|
|
268
234
|
let a = () => i("loaded"), o = () => i("error");
|
|
@@ -273,15 +239,15 @@ var Fe = "flex size-[84px] items-center justify-center rounded-xl border", Y = /
|
|
|
273
239
|
imageRef: n,
|
|
274
240
|
imageLoadStatus: r
|
|
275
241
|
};
|
|
276
|
-
},
|
|
277
|
-
let { clickLabel:
|
|
278
|
-
enabled:
|
|
279
|
-
src:
|
|
242
|
+
}, Je = ({ attachment: e, onExpand: n, onClick: r, labels: i, onRemove: a, cssVars: o, onDownload: s, styles: c, isSelected: l }) => {
|
|
243
|
+
let { clickLabel: u = "Open attachment", expandLabel: f = "Expand pasted text" } = i ?? {}, { className: m } = c ?? {}, { id: h, name: g } = e, y = e.previewUrl ?? e.url, b = e.type === t.Pasted && n !== void 0, { isLoading: x, isError: S, isImage: C } = je(() => Re(e), [e]), w = r !== void 0 && !b && !x && !S, { imageRef: T, imageLoadStatus: E } = qe({
|
|
244
|
+
enabled: C,
|
|
245
|
+
src: y
|
|
280
246
|
}), D = () => {
|
|
281
|
-
|
|
247
|
+
b && n ? n(h) : w && r && r(h);
|
|
282
248
|
};
|
|
283
|
-
return /* @__PURE__ */
|
|
284
|
-
className: d(
|
|
249
|
+
return /* @__PURE__ */ Y("div", {
|
|
250
|
+
className: d(ze, "group/attachment-tile", w && "cursor-pointer", Z.tile, l && Z.selected, m),
|
|
285
251
|
onClick: D,
|
|
286
252
|
onKeyDown: (e) => {
|
|
287
253
|
(e.key === "Enter" || e.key === " ") && (e.preventDefault(), D());
|
|
@@ -289,222 +255,153 @@ var Fe = "flex size-[84px] items-center justify-center rounded-xl border", Y = /
|
|
|
289
255
|
tabIndex: 0,
|
|
290
256
|
role: "button",
|
|
291
257
|
style: o,
|
|
292
|
-
"aria-label": w ?
|
|
293
|
-
children: /* @__PURE__ */
|
|
258
|
+
"aria-label": w ? u : b ? f : void 0,
|
|
259
|
+
children: /* @__PURE__ */ X("div", {
|
|
294
260
|
className: "relative h-full w-full overflow-hidden",
|
|
295
261
|
children: [
|
|
296
|
-
a && /* @__PURE__ */
|
|
262
|
+
a && /* @__PURE__ */ Y(Ue, {
|
|
297
263
|
onClick: a,
|
|
298
|
-
id: h
|
|
264
|
+
id: h,
|
|
265
|
+
className: Z.imageActionButton
|
|
299
266
|
}),
|
|
300
|
-
s && /* @__PURE__ */
|
|
267
|
+
s && /* @__PURE__ */ Y(Ve, {
|
|
301
268
|
onClick: s,
|
|
302
|
-
id: h
|
|
269
|
+
id: h,
|
|
270
|
+
className: Z.imageActionButton
|
|
303
271
|
}),
|
|
304
|
-
E !==
|
|
305
|
-
variant:
|
|
272
|
+
E !== Ke.Loaded && /* @__PURE__ */ Y(_, {
|
|
273
|
+
variant: v.Rectangular,
|
|
306
274
|
width: "100%",
|
|
307
275
|
height: "100%",
|
|
308
|
-
active: E ===
|
|
309
|
-
overlay: /* @__PURE__ */
|
|
276
|
+
active: E === Ke.Loading,
|
|
277
|
+
overlay: /* @__PURE__ */ Y(G, {
|
|
310
278
|
size: p.LG,
|
|
311
|
-
className:
|
|
279
|
+
className: Z.typeText,
|
|
312
280
|
"aria-hidden": !0
|
|
313
281
|
}),
|
|
314
282
|
className: "absolute inset-0 rounded-xl"
|
|
315
283
|
}),
|
|
316
|
-
/* @__PURE__ */
|
|
284
|
+
/* @__PURE__ */ Y("img", {
|
|
317
285
|
ref: T,
|
|
318
|
-
src:
|
|
286
|
+
src: y,
|
|
319
287
|
alt: g,
|
|
320
288
|
loading: "lazy",
|
|
321
289
|
decoding: "async",
|
|
322
|
-
className: d("h-full w-full rounded-xl object-cover transition-opacity duration-200", E ===
|
|
290
|
+
className: d("h-full w-full rounded-xl object-cover transition-opacity duration-200", E === Ke.Loaded ? "opacity-100" : "opacity-0")
|
|
323
291
|
})
|
|
324
292
|
]
|
|
325
293
|
})
|
|
326
294
|
});
|
|
327
|
-
},
|
|
328
|
-
let { colors:
|
|
329
|
-
"--
|
|
330
|
-
"--
|
|
331
|
-
"--
|
|
332
|
-
"--
|
|
333
|
-
"--
|
|
334
|
-
"--
|
|
335
|
-
"--
|
|
336
|
-
"--
|
|
337
|
-
"--
|
|
338
|
-
"--
|
|
339
|
-
"--
|
|
340
|
-
"--
|
|
341
|
-
"--
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
onClick: o,
|
|
347
|
-
searchQuery: n,
|
|
348
|
-
styles: l,
|
|
349
|
-
cssVars: m
|
|
350
|
-
}) : h ? /* @__PURE__ */ q(Qe, {
|
|
295
|
+
}, Ye = ({ attachment: e, searchQuery: n = "", onRemove: r, onRetry: i, onExpand: a, onClick: o, onDownload: s, labels: c, styles: l, isSelected: d }) => {
|
|
296
|
+
let { colors: f } = l ?? {}, p = e.type === t.Pasted, m = p && a !== void 0, h = u({
|
|
297
|
+
"--ai-tile-bg": f?.background,
|
|
298
|
+
"--ai-tile-border": f?.border,
|
|
299
|
+
"--ai-tile-bg-hover": f?.backgroundHover,
|
|
300
|
+
"--ai-tile-border-hover": f?.borderHover,
|
|
301
|
+
"--ai-tile-bg-selected": f?.backgroundSelected,
|
|
302
|
+
"--ai-tile-border-selected": f?.borderSelected,
|
|
303
|
+
"--ai-tile-focus-outline": f?.focusOutline,
|
|
304
|
+
"--ai-tile-bg-error": f?.backgroundError,
|
|
305
|
+
"--ai-tile-border-error": f?.borderError,
|
|
306
|
+
"--ai-tile-error-text": f?.errorText,
|
|
307
|
+
"--ai-tile-name-text": f?.nameText,
|
|
308
|
+
"--ai-tile-type-text": f?.typeText,
|
|
309
|
+
"--ai-tile-hover-icon-bg": f?.hoverIconBackground,
|
|
310
|
+
"--ai-tile-hover-icon-color": f?.hoverIconColor,
|
|
311
|
+
"--ai-tile-progress-track": f?.trackBackground
|
|
312
|
+
}), { isImage: g, isLink: _ } = je(() => Re(e), [e]);
|
|
313
|
+
return g ? /* @__PURE__ */ Y(Je, {
|
|
351
314
|
attachment: e,
|
|
352
315
|
labels: c,
|
|
353
316
|
onClick: o,
|
|
354
317
|
onExpand: a,
|
|
355
318
|
styles: l,
|
|
356
319
|
onRemove: r,
|
|
357
|
-
cssVars:
|
|
358
|
-
onDownload: s
|
|
359
|
-
|
|
320
|
+
cssVars: h,
|
|
321
|
+
onDownload: s,
|
|
322
|
+
isSelected: d
|
|
323
|
+
}) : /* @__PURE__ */ Y(Ge, {
|
|
360
324
|
attachment: e,
|
|
325
|
+
searchQuery: n,
|
|
361
326
|
onClick: o,
|
|
362
327
|
onRetry: i,
|
|
363
328
|
onRemove: r,
|
|
364
329
|
onDownload: s,
|
|
365
330
|
isLink: _,
|
|
366
|
-
isPasted:
|
|
331
|
+
isPasted: p,
|
|
367
332
|
styles: l,
|
|
368
333
|
labels: c,
|
|
369
334
|
onExpand: a,
|
|
370
|
-
cssVars:
|
|
371
|
-
isExpandable:
|
|
335
|
+
cssVars: h,
|
|
336
|
+
isExpandable: m,
|
|
337
|
+
isSelected: d
|
|
372
338
|
});
|
|
373
|
-
},
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
"--ci-more-tile-bg-hover": c?.backgroundHover,
|
|
379
|
-
"--ci-more-tile-color-hover": c?.colorHover,
|
|
380
|
-
"--ci-more-tile-border-hover": c?.borderHover,
|
|
381
|
-
"--ci-more-tile-focus-outline": c?.focusOutline
|
|
382
|
-
});
|
|
383
|
-
return /* @__PURE__ */ q("button", {
|
|
384
|
-
type: "button",
|
|
385
|
-
onClick: t,
|
|
386
|
-
"aria-label": a ?? `Show ${e} more attachments`,
|
|
387
|
-
style: l,
|
|
388
|
-
className: d(Fe, o, et.tile, s),
|
|
389
|
-
children: r ?? /* @__PURE__ */ q("bdi", {
|
|
390
|
-
dir: "ltr",
|
|
391
|
-
children: `+${e}`
|
|
392
|
-
})
|
|
393
|
-
});
|
|
394
|
-
}, Q = {
|
|
395
|
-
container: "_container_7fktb_1",
|
|
396
|
-
headerIcon: "_headerIcon_7fktb_6",
|
|
397
|
-
headerLabel: "_headerLabel_7fktb_7",
|
|
398
|
-
downloadAllButton: "_downloadAllButton_7fktb_8",
|
|
399
|
-
imageTile: "_imageTile_7fktb_12"
|
|
400
|
-
}, nt = (e, t) => `${e} ${t}${e === 1 ? "" : "s"}`, rt = ({ attachments: e, onAttachmentClick: n, onDownloadAll: r, onRetry: i, labels: a, styles: o }) => {
|
|
401
|
-
let { ariaLabel: s = "Attachments", clickLabel: l = "Download attachment", retryLabel: f = "Retry upload", showLessLabel: h = "Show less", downloadAllLabel: g = "Download all", openInNewTabLabel: _, getHeaderLabel: v = (e) => nt(e, "attachment"), promptLabel: y, pastedLabel: b, imageLabel: x } = a ?? {}, { typography: { headerLabelClassName: S = "dial-tiny-semi-text" } = {}, colors: C, className: w } = o ?? {}, T = u({
|
|
402
|
-
"--ci-group-bg": C?.background,
|
|
403
|
-
"--ci-group-border": C?.border,
|
|
404
|
-
"--ci-group-text": C?.text
|
|
405
|
-
}), [E, D] = G(!1), O = W(() => He(e.length, E), [e.length, E]);
|
|
339
|
+
}, Xe = {
|
|
340
|
+
headerIcon: "_headerIcon_1dmgi_1",
|
|
341
|
+
headerLabel: "_headerLabel_1dmgi_2"
|
|
342
|
+
}, Ze = (e, t) => `${e} ${t}${e === 1 ? "" : "s"}`, Qe = ({ attachments: e, onAttachmentClick: n, onDownloadAll: r, onRetry: i, labels: a, styles: o, selectedAttachmentId: s }) => {
|
|
343
|
+
let { ariaLabel: l = "Attachments", clickLabel: f = "Download attachment", retryLabel: m = "Retry upload", downloadAllLabel: h = "Download all", openInNewTabLabel: g, getHeaderLabel: _ = (e) => Ze(e, "attachment"), promptLabel: v, pastedLabel: y, imageLabel: b } = a ?? {}, { typography: x, colors: w, className: T } = o ?? {}, E = u({ "--ai-group-text": w?.text });
|
|
406
344
|
if (e.length === 0) return null;
|
|
407
|
-
let
|
|
345
|
+
let D = e.some((e) => e.type === t.Image), O = e.some((e) => e.type !== t.Image), k = D && O, A = e.length >= 5, j = k ? ve : D ? G : L, M = _(e.length), N = () => {
|
|
408
346
|
let t = e.filter((e) => e.status === c.Idle);
|
|
409
347
|
r ? r(t) : t.forEach((e) => n?.(e.id));
|
|
410
|
-
},
|
|
348
|
+
}, P = (t) => {
|
|
411
349
|
let n = e.find((e) => e.id === t);
|
|
412
350
|
n && r?.([n]);
|
|
413
351
|
};
|
|
414
|
-
return /* @__PURE__ */
|
|
352
|
+
return /* @__PURE__ */ X("div", {
|
|
415
353
|
role: "group",
|
|
416
|
-
"aria-label":
|
|
417
|
-
style:
|
|
418
|
-
className: d("
|
|
419
|
-
children: [/* @__PURE__ */
|
|
420
|
-
className: "
|
|
421
|
-
children: [
|
|
422
|
-
|
|
354
|
+
"aria-label": l,
|
|
355
|
+
style: E,
|
|
356
|
+
className: d("flex flex-col gap-1", A ? "w-full min-w-0 max-w-[492px]" : "max-w-[420px]", Xe.container, T),
|
|
357
|
+
children: [/* @__PURE__ */ X("div", {
|
|
358
|
+
className: "flex items-center justify-between",
|
|
359
|
+
children: [/* @__PURE__ */ X("div", {
|
|
360
|
+
className: "flex items-center gap-1",
|
|
361
|
+
children: [/* @__PURE__ */ Y(j, {
|
|
362
|
+
size: p.SM,
|
|
363
|
+
className: d("shrink-0", Xe.headerIcon),
|
|
364
|
+
"aria-hidden": !0
|
|
365
|
+
}), /* @__PURE__ */ Y("span", {
|
|
366
|
+
className: d(x?.headerLabelClassName ?? "dial-tiny-semi-text", Xe.headerLabel),
|
|
367
|
+
children: M
|
|
368
|
+
})]
|
|
369
|
+
}), e.length >= 2 && (r || n) && /* @__PURE__ */ Y(C, {
|
|
370
|
+
icon: /* @__PURE__ */ Y(F, {
|
|
423
371
|
size: p.SM,
|
|
424
|
-
className: d("shrink-0", Q.headerIcon),
|
|
425
372
|
"aria-hidden": !0
|
|
426
373
|
}),
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
icon: /* @__PURE__ */ q(F, {
|
|
433
|
-
size: p.SM,
|
|
434
|
-
"aria-hidden": !0
|
|
435
|
-
}),
|
|
436
|
-
className: d("ms-auto h-6 w-6 rounded-lg", Q.downloadAllButton),
|
|
437
|
-
"aria-label": g,
|
|
438
|
-
onClick: z
|
|
439
|
-
})
|
|
440
|
-
]
|
|
441
|
-
}), /* @__PURE__ */ J("div", {
|
|
374
|
+
size: S.Small,
|
|
375
|
+
"aria-label": h,
|
|
376
|
+
onClick: N
|
|
377
|
+
})]
|
|
378
|
+
}), /* @__PURE__ */ Y("div", {
|
|
442
379
|
role: "list",
|
|
443
|
-
"aria-label":
|
|
444
|
-
className: d("gap-3",
|
|
445
|
-
children:
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
})
|
|
462
|
-
}, e.id)),
|
|
463
|
-
O.layout === Y.Collapsed && /* @__PURE__ */ q("div", {
|
|
464
|
-
role: "listitem",
|
|
465
|
-
children: /* @__PURE__ */ q(tt, {
|
|
466
|
-
count: O.hiddenCount,
|
|
467
|
-
onClick: () => D(!0)
|
|
468
|
-
})
|
|
469
|
-
}),
|
|
470
|
-
N && E && /* @__PURE__ */ q("div", {
|
|
471
|
-
role: "listitem",
|
|
472
|
-
children: /* @__PURE__ */ q(tt, {
|
|
473
|
-
count: 0,
|
|
474
|
-
onClick: () => D(!1),
|
|
475
|
-
labels: { ariaLabel: h },
|
|
476
|
-
children: /* @__PURE__ */ q(M, {
|
|
477
|
-
size: p.MD,
|
|
478
|
-
"aria-hidden": !0
|
|
479
|
-
})
|
|
480
|
-
})
|
|
380
|
+
"aria-label": M,
|
|
381
|
+
className: d("gap-3", A ? "grid grid-cols-[repeat(5,83px)]" : "flex flex-wrap"),
|
|
382
|
+
children: e.map((e, t) => /* @__PURE__ */ Y("div", {
|
|
383
|
+
role: "listitem",
|
|
384
|
+
children: /* @__PURE__ */ Y(Ye, {
|
|
385
|
+
attachment: e,
|
|
386
|
+
onClick: n,
|
|
387
|
+
onDownload: P,
|
|
388
|
+
onRetry: i,
|
|
389
|
+
labels: {
|
|
390
|
+
clickLabel: f,
|
|
391
|
+
retryLabel: m,
|
|
392
|
+
promptLabel: v,
|
|
393
|
+
pastedLabel: y,
|
|
394
|
+
imageLabel: b,
|
|
395
|
+
openInNewTabLabel: g
|
|
396
|
+
},
|
|
397
|
+
isSelected: e.id === s
|
|
481
398
|
})
|
|
482
|
-
|
|
399
|
+
}, `${e.id}-${t}`))
|
|
483
400
|
})]
|
|
484
401
|
});
|
|
485
|
-
},
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
};
|
|
489
|
-
je(({ tabs: e, activeTabId: t, onTabChange: n, styles: r }) => {
|
|
490
|
-
let { tabClassName: i = "dial-tiny-semi-text" } = r?.typography ?? {};
|
|
491
|
-
return /* @__PURE__ */ q("div", {
|
|
492
|
-
className: "flex flex-nowrap gap-1",
|
|
493
|
-
children: e.map((e) => {
|
|
494
|
-
let r = t === e.id;
|
|
495
|
-
return /* @__PURE__ */ q(T, {
|
|
496
|
-
label: e.label,
|
|
497
|
-
selected: r,
|
|
498
|
-
onClick: () => n(e.id),
|
|
499
|
-
"aria-selected": r,
|
|
500
|
-
className: d("box-border h-auto shrink-0 justify-center rounded-full p-2 text-center", i, it.tabContainer, r && it.tabActive)
|
|
501
|
-
}, e.id);
|
|
502
|
-
})
|
|
503
|
-
});
|
|
504
|
-
});
|
|
505
|
-
var at = (e) => /* @__PURE__ */ q(y, { ...e }), ot = ({ features: e, initialResponseFormat: t, initialSystemPrompt: n, initialTemperature: r, onSave: i, onClose: a, isOpen: o }) => {
|
|
506
|
-
let [s, c] = G(t), [l, u] = G(n), [d, f] = G(r), p = Pe(o);
|
|
507
|
-
Me(() => {
|
|
402
|
+
}, $e = ({ features: e, initialResponseFormat: t, initialSystemPrompt: n, initialTemperature: r, onSave: i, onClose: a, isOpen: o }) => {
|
|
403
|
+
let [s, c] = q(t), [l, u] = q(n), [d, f] = q(r), p = Me(o);
|
|
404
|
+
ke(() => {
|
|
508
405
|
o && !p.current && (c(t), u(n), f(r)), p.current = o;
|
|
509
406
|
}, [
|
|
510
407
|
o,
|
|
@@ -521,7 +418,7 @@ var at = (e) => /* @__PURE__ */ q(y, { ...e }), ot = ({ features: e, initialResp
|
|
|
521
418
|
setResponseFormat: c,
|
|
522
419
|
setSystemPrompt: u,
|
|
523
420
|
setTemperature: f,
|
|
524
|
-
handleSubmit:
|
|
421
|
+
handleSubmit: K(() => {
|
|
525
422
|
if (!m) return;
|
|
526
423
|
let t = {};
|
|
527
424
|
e.responseFormat && s != null && (t.responseFormat = s), e.systemPrompt && (t.systemPrompt = l), e.temperature && (t.temperature = d), i(t), a();
|
|
@@ -535,55 +432,59 @@ var at = (e) => /* @__PURE__ */ q(y, { ...e }), ot = ({ features: e, initialResp
|
|
|
535
432
|
a
|
|
536
433
|
])
|
|
537
434
|
};
|
|
538
|
-
},
|
|
435
|
+
}, et = { label: "_label_14i7c_1" }, tt = ({ features: e, responseFormat: t, systemPrompt: n, temperature: r, onResponseFormatChange: i, onSystemPromptChange: a, onTemperatureChange: o, responseFormatLabel: s = "Response format", responseFormatHint: c = "Applies to new and existing messages", responseFormatMarkdownLabel: f = "Markdown", responseFormatPlainTextLabel: p = "Plain text", systemPromptLabel: h = "System prompt", systemPromptTooltip: _ = "Enter a prompt", temperatureLabel: v = "Temperature", temperatureLabels: b = [
|
|
539
436
|
"Precise",
|
|
540
437
|
"Neutral",
|
|
541
438
|
"Creative"
|
|
542
|
-
], temperatureHint:
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
439
|
+
], temperatureHint: x, labelClassName: S = "!dial-small-semi-text", colors: C }) => {
|
|
440
|
+
let w = u({ "--csf-label-text": C?.labelText }), T = d(S, et.label, "gap-1");
|
|
441
|
+
return /* @__PURE__ */ X("div", {
|
|
442
|
+
className: "flex flex-col gap-4 px-6 py-3",
|
|
443
|
+
style: w,
|
|
444
|
+
children: [
|
|
445
|
+
e.responseFormat && /* @__PURE__ */ Y(g, {
|
|
446
|
+
fieldTitle: s,
|
|
447
|
+
labelClassName: T,
|
|
448
|
+
elementId: "response-format",
|
|
449
|
+
orientation: A.Column,
|
|
450
|
+
activeRadioButton: t ?? l.Markdown,
|
|
451
|
+
labelDescription: c,
|
|
452
|
+
radioButtons: [{
|
|
453
|
+
id: l.Markdown,
|
|
454
|
+
name: f
|
|
455
|
+
}, {
|
|
456
|
+
id: l.PlainText,
|
|
457
|
+
name: p
|
|
458
|
+
}],
|
|
459
|
+
onChange: (e) => i(e)
|
|
460
|
+
}),
|
|
461
|
+
e.systemPrompt && /* @__PURE__ */ Y(m, {
|
|
462
|
+
value: n,
|
|
463
|
+
placeholder: _,
|
|
464
|
+
labelProps: {
|
|
465
|
+
className: T,
|
|
466
|
+
label: h
|
|
467
|
+
},
|
|
468
|
+
onChange: (e) => a(e ?? "")
|
|
469
|
+
}),
|
|
470
|
+
e.temperature && /* @__PURE__ */ Y(y, {
|
|
471
|
+
labelProps: {
|
|
472
|
+
label: v,
|
|
473
|
+
className: T,
|
|
474
|
+
caption: x
|
|
475
|
+
},
|
|
476
|
+
value: r,
|
|
477
|
+
min: 0,
|
|
478
|
+
max: 1,
|
|
479
|
+
step: .1,
|
|
480
|
+
labels: b,
|
|
481
|
+
onChange: o
|
|
482
|
+
})
|
|
483
|
+
]
|
|
484
|
+
});
|
|
485
|
+
}, nt = { modal: "_modal_od073_1" };
|
|
486
|
+
Oe(({ features: e, initialResponseFormat: t, initialSystemPrompt: n, initialTemperature: r, onSave: i, onClose: a, title: o = "Chat settings", responseFormatLabel: s, responseFormatHint: c, responseFormatMarkdownLabel: l, responseFormatPlainTextLabel: u, systemPromptLabel: d, systemPromptTooltip: f, temperatureLabel: p, temperatureLabels: m, temperatureHint: g, saveLabel: _ = "Apply changes", saveDisabledTooltip: v, backgroundClassName: y = nt.modal }) => {
|
|
487
|
+
let { responseFormat: b, systemPrompt: S, temperature: C, canSubmit: w, setResponseFormat: T, setSystemPrompt: E, setTemperature: D, handleSubmit: A } = $e({
|
|
587
488
|
features: e,
|
|
588
489
|
initialResponseFormat: t,
|
|
589
490
|
initialSystemPrompt: n,
|
|
@@ -591,32 +492,32 @@ je(({ features: e, initialResponseFormat: t, initialSystemPrompt: n, initialTemp
|
|
|
591
492
|
onSave: i,
|
|
592
493
|
onClose: a
|
|
593
494
|
});
|
|
594
|
-
return /* @__PURE__ */
|
|
495
|
+
return /* @__PURE__ */ Y(h, {
|
|
595
496
|
open: !0,
|
|
596
497
|
header: o,
|
|
597
498
|
size: O.Sm,
|
|
598
499
|
onClose: a,
|
|
599
|
-
className:
|
|
600
|
-
footer: /* @__PURE__ */
|
|
500
|
+
className: y,
|
|
501
|
+
footer: /* @__PURE__ */ Y("div", {
|
|
601
502
|
className: "flex justify-end px-6 py-4",
|
|
602
|
-
children: /* @__PURE__ */
|
|
603
|
-
tooltip:
|
|
604
|
-
hideTooltip:
|
|
605
|
-
children: /* @__PURE__ */
|
|
606
|
-
label:
|
|
607
|
-
onClick:
|
|
608
|
-
disabled: !
|
|
503
|
+
children: /* @__PURE__ */ Y(x, {
|
|
504
|
+
tooltip: v,
|
|
505
|
+
hideTooltip: w || !v,
|
|
506
|
+
children: /* @__PURE__ */ Y(k, {
|
|
507
|
+
label: _,
|
|
508
|
+
onClick: A,
|
|
509
|
+
disabled: !w
|
|
609
510
|
})
|
|
610
511
|
})
|
|
611
512
|
}),
|
|
612
|
-
children: /* @__PURE__ */
|
|
513
|
+
children: /* @__PURE__ */ Y(tt, {
|
|
613
514
|
features: e,
|
|
614
|
-
responseFormat:
|
|
615
|
-
systemPrompt:
|
|
616
|
-
temperature:
|
|
617
|
-
onResponseFormatChange:
|
|
618
|
-
onSystemPromptChange:
|
|
619
|
-
onTemperatureChange:
|
|
515
|
+
responseFormat: b,
|
|
516
|
+
systemPrompt: S,
|
|
517
|
+
temperature: C,
|
|
518
|
+
onResponseFormatChange: T,
|
|
519
|
+
onSystemPromptChange: E,
|
|
520
|
+
onTemperatureChange: D,
|
|
620
521
|
responseFormatLabel: s,
|
|
621
522
|
responseFormatHint: c,
|
|
622
523
|
responseFormatMarkdownLabel: l,
|
|
@@ -625,171 +526,173 @@ je(({ features: e, initialResponseFormat: t, initialSystemPrompt: n, initialTemp
|
|
|
625
526
|
systemPromptTooltip: f,
|
|
626
527
|
temperatureLabel: p,
|
|
627
528
|
temperatureLabels: m,
|
|
628
|
-
temperatureHint:
|
|
529
|
+
temperatureHint: g
|
|
629
530
|
})
|
|
630
531
|
});
|
|
631
532
|
});
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
}, [
|
|
638
|
-
|
|
639
|
-
}, [c, y?.copiedMarkdownStatus]);
|
|
640
|
-
return /* @__PURE__ */ J("div", {
|
|
533
|
+
var rt = { activeRating: "_activeRating_7jito_1" }, it = 2e3, at = ({ role: e = s.User, onEdit: t, onEditHover: r, onDelete: i, onRegenerate: a, onCopy: c, onCopyMarkdown: l, onLike: f, onDislike: m, activeRating: h, isAlwaysVisible: g, className: _, labels: v, colors: y }) => {
|
|
534
|
+
let { tooltips: b, ariaLabels: x } = v ?? {}, [w, T] = q(null), [E, D] = q(""), O = u({ "--ma-active-rating-text": y?.activeRatingText }), k = K(() => {
|
|
535
|
+
c?.(), T("copy"), D(x?.copiedStatus ?? "Copied to clipboard"), setTimeout(() => T(null), it);
|
|
536
|
+
}, [c, x?.copiedStatus]), A = K(() => {
|
|
537
|
+
l?.(), T("markdown"), D(x?.copiedMarkdownStatus ?? "Copied as Markdown to clipboard"), setTimeout(() => T(null), it);
|
|
538
|
+
}, [l, x?.copiedMarkdownStatus]);
|
|
539
|
+
return /* @__PURE__ */ X("div", {
|
|
641
540
|
role: "toolbar",
|
|
642
|
-
"aria-label":
|
|
643
|
-
|
|
644
|
-
|
|
541
|
+
"aria-label": x?.actionsGroup ?? "Message actions",
|
|
542
|
+
style: O,
|
|
543
|
+
className: d("flex gap-1", !g && "opacity-0 group-hover:opacity-100", _),
|
|
544
|
+
children: [/* @__PURE__ */ Y("span", {
|
|
645
545
|
role: "status",
|
|
646
546
|
"aria-live": "polite",
|
|
647
547
|
className: "sr-only",
|
|
648
|
-
children:
|
|
649
|
-
}), e === s.User ? /* @__PURE__ */ J
|
|
650
|
-
icon: /* @__PURE__ */
|
|
548
|
+
children: E
|
|
549
|
+
}), e === s.User ? /* @__PURE__ */ X(J, { children: [t && /* @__PURE__ */ Y(C, {
|
|
550
|
+
icon: /* @__PURE__ */ Y(ye, {
|
|
651
551
|
size: p.SM,
|
|
652
552
|
"aria-hidden": !0
|
|
653
553
|
}),
|
|
654
|
-
size:
|
|
655
|
-
"aria-label":
|
|
656
|
-
tooltipProps: { tooltip:
|
|
554
|
+
size: S.Small,
|
|
555
|
+
"aria-label": x?.editMessage ?? "Edit message",
|
|
556
|
+
tooltipProps: { tooltip: b?.edit ?? "Edit" },
|
|
657
557
|
onClick: t,
|
|
658
|
-
onMouseEnter:
|
|
659
|
-
onFocus:
|
|
660
|
-
}),
|
|
661
|
-
icon: /* @__PURE__ */
|
|
558
|
+
onMouseEnter: r,
|
|
559
|
+
onFocus: r
|
|
560
|
+
}), i && /* @__PURE__ */ Y(C, {
|
|
561
|
+
icon: /* @__PURE__ */ Y(Te, {
|
|
662
562
|
size: p.SM,
|
|
663
563
|
"aria-hidden": !0
|
|
664
564
|
}),
|
|
665
|
-
size:
|
|
666
|
-
"aria-label":
|
|
667
|
-
tooltipProps: { tooltip:
|
|
668
|
-
onClick:
|
|
669
|
-
})] }) : /* @__PURE__ */ J
|
|
670
|
-
|
|
671
|
-
icon: /* @__PURE__ */
|
|
565
|
+
size: S.Small,
|
|
566
|
+
"aria-label": x?.deleteMessage ?? "Delete message",
|
|
567
|
+
tooltipProps: { tooltip: b?.delete ?? "Delete" },
|
|
568
|
+
onClick: i
|
|
569
|
+
})] }) : /* @__PURE__ */ X(J, { children: [
|
|
570
|
+
a && /* @__PURE__ */ Y(C, {
|
|
571
|
+
icon: /* @__PURE__ */ Y(be, {
|
|
672
572
|
size: p.SM,
|
|
673
573
|
"aria-hidden": !0
|
|
674
574
|
}),
|
|
675
|
-
size:
|
|
676
|
-
"aria-label":
|
|
677
|
-
tooltipProps: { tooltip:
|
|
678
|
-
onClick:
|
|
575
|
+
size: S.Small,
|
|
576
|
+
"aria-label": x?.regenerateResponse ?? "Regenerate response",
|
|
577
|
+
tooltipProps: { tooltip: b?.regenerate ?? "Regenerate" },
|
|
578
|
+
onClick: a
|
|
679
579
|
}),
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
onClick: w
|
|
580
|
+
c && /* @__PURE__ */ Y(n, {
|
|
581
|
+
iconSize: p.SM,
|
|
582
|
+
onClick: k,
|
|
583
|
+
size: S.Small,
|
|
584
|
+
isCopied: w === "copy",
|
|
585
|
+
copyLabel: b?.copy ?? "Copy",
|
|
586
|
+
copiedLabel: b?.copied ?? "Copied!",
|
|
587
|
+
ariaLabel: x?.copyResponse ?? "Copy response"
|
|
689
588
|
}),
|
|
690
|
-
|
|
691
|
-
|
|
589
|
+
l && /* @__PURE__ */ Y(n, {
|
|
590
|
+
iconSize: p.SM,
|
|
591
|
+
onClick: A,
|
|
592
|
+
size: S.Small,
|
|
593
|
+
isCopied: w === "markdown",
|
|
594
|
+
iconCopy: /* @__PURE__ */ Y(ge, {
|
|
692
595
|
size: p.SM,
|
|
693
596
|
"aria-hidden": !0
|
|
694
597
|
}),
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
onClick: T
|
|
598
|
+
copyLabel: b?.copyMarkdown ?? "Copy as Markdown",
|
|
599
|
+
copiedLabel: b?.copiedMarkdown ?? "Copied!",
|
|
600
|
+
ariaLabel: x?.copyAsMarkdown ?? "Copy as markdown"
|
|
699
601
|
}),
|
|
700
|
-
|
|
701
|
-
icon: /* @__PURE__ */
|
|
602
|
+
f && /* @__PURE__ */ Y(C, {
|
|
603
|
+
icon: /* @__PURE__ */ Y(we, {
|
|
702
604
|
size: p.SM,
|
|
703
605
|
"aria-hidden": !0
|
|
704
606
|
}),
|
|
705
|
-
size:
|
|
706
|
-
"aria-label":
|
|
707
|
-
"aria-pressed":
|
|
708
|
-
className:
|
|
709
|
-
tooltipProps: { tooltip:
|
|
710
|
-
onClick:
|
|
607
|
+
size: S.Small,
|
|
608
|
+
"aria-label": x?.likeResponse ?? "Like response",
|
|
609
|
+
"aria-pressed": h === o.Like,
|
|
610
|
+
className: h === o.Like ? rt.activeRating : void 0,
|
|
611
|
+
tooltipProps: { tooltip: b?.like ?? "Like" },
|
|
612
|
+
onClick: f
|
|
711
613
|
}),
|
|
712
|
-
|
|
713
|
-
icon: /* @__PURE__ */
|
|
614
|
+
m && /* @__PURE__ */ Y(C, {
|
|
615
|
+
icon: /* @__PURE__ */ Y(Ce, {
|
|
714
616
|
size: p.SM,
|
|
715
617
|
"aria-hidden": !0
|
|
716
618
|
}),
|
|
717
|
-
size:
|
|
718
|
-
"aria-label":
|
|
719
|
-
"aria-pressed":
|
|
720
|
-
className:
|
|
721
|
-
tooltipProps: { tooltip:
|
|
722
|
-
onClick:
|
|
619
|
+
size: S.Small,
|
|
620
|
+
"aria-label": x?.dislikeResponse ?? "Dislike response",
|
|
621
|
+
"aria-pressed": h === o.Dislike,
|
|
622
|
+
className: h === o.Dislike ? rt.activeRating : void 0,
|
|
623
|
+
tooltipProps: { tooltip: b?.dislike ?? "Dislike" },
|
|
624
|
+
onClick: m
|
|
723
625
|
})
|
|
724
626
|
] })]
|
|
725
627
|
});
|
|
726
628
|
}, $ = {
|
|
727
|
-
userBubble: "
|
|
728
|
-
collapsibleText: "
|
|
729
|
-
expandedText: "
|
|
730
|
-
collapsedText: "
|
|
731
|
-
startersDivider: "
|
|
732
|
-
text: "
|
|
733
|
-
},
|
|
734
|
-
let { colors: w, typography: T, className: E, bubbleClassName:
|
|
629
|
+
userBubble: "_userBubble_ovjc1_1",
|
|
630
|
+
collapsibleText: "_collapsibleText_ovjc1_6",
|
|
631
|
+
expandedText: "_expandedText_ovjc1_11",
|
|
632
|
+
collapsedText: "_collapsedText_ovjc1_15",
|
|
633
|
+
startersDivider: "_startersDivider_ovjc1_26",
|
|
634
|
+
text: "_text_ovjc1_30"
|
|
635
|
+
}, ot = ({ text: e, styles: n, actions: a, hasAlwaysVisibleActions: o, isStreaming: c, attachments: l, afterContent: f, starters: p, onSelectStarter: m, deploymentIconUrl: h, deploymentDisplayName: g, markdownComponents: _, onAttachmentClick: v, onDownloadAll: y, onAttachmentRetry: b, codeBlockTheme: x, labels: S, selectedAttachmentId: C }) => {
|
|
636
|
+
let { colors: w, typography: T, className: E, bubbleClassName: O } = n ?? {}, { attachmentClickLabel: k, attachmentRetryLabel: A, attachmentOpenInNewTabLabel: j, startersAriaLabel: M = "Quick reply buttons", thinkingLabel: N, codeBlockCopyLabel: P, codeBlockCopiedLabel: F, assistantMessageAriaLabel: I = "Assistant message", deploymentIconFallbackLabel: L = "AI" } = S ?? {}, R = c ? (l ?? []).filter((e) => e.type !== t.Audio) : l ?? [], z = u({
|
|
735
637
|
"--cm-bubble-text": w?.text,
|
|
736
638
|
"--cm-starters-divider": w?.startersDivider
|
|
737
|
-
}),
|
|
738
|
-
return /* @__PURE__ */
|
|
639
|
+
}), B = d($.text, T?.fontClassName), V = !!(h || g);
|
|
640
|
+
return /* @__PURE__ */ X("div", {
|
|
739
641
|
role: "group",
|
|
740
|
-
"aria-label":
|
|
741
|
-
style:
|
|
642
|
+
"aria-label": I,
|
|
643
|
+
style: z,
|
|
742
644
|
className: d("flex w-full items-start gap-3", E),
|
|
743
|
-
children: [
|
|
645
|
+
children: [V && /* @__PURE__ */ Y(r, {
|
|
744
646
|
src: h,
|
|
745
647
|
size: 28,
|
|
746
|
-
initialsName: g ||
|
|
747
|
-
labels: { tooltip: g ??
|
|
748
|
-
}), /* @__PURE__ */
|
|
648
|
+
initialsName: g || L,
|
|
649
|
+
labels: { tooltip: g ?? L }
|
|
650
|
+
}), /* @__PURE__ */ X("div", {
|
|
749
651
|
className: "flex w-full min-w-0 max-w-full flex-col items-start gap-5",
|
|
750
|
-
children: [/* @__PURE__ */
|
|
751
|
-
className: d("flex w-full min-w-0 max-w-full flex-col items-start gap-4",
|
|
652
|
+
children: [/* @__PURE__ */ X("div", {
|
|
653
|
+
className: d("flex w-full min-w-0 max-w-full flex-col items-start gap-4", O),
|
|
752
654
|
children: [
|
|
753
|
-
(e || c) && /* @__PURE__ */
|
|
655
|
+
(e || c) && /* @__PURE__ */ Y("div", {
|
|
754
656
|
"aria-live": "polite",
|
|
755
657
|
"aria-atomic": "false",
|
|
756
|
-
className: d(
|
|
757
|
-
children: /* @__PURE__ */
|
|
658
|
+
className: d(B, "min-w-0 max-w-full text-start"),
|
|
659
|
+
children: /* @__PURE__ */ Y(i, {
|
|
758
660
|
content: e,
|
|
759
661
|
isStreaming: c,
|
|
760
|
-
thinkingLabel:
|
|
662
|
+
thinkingLabel: N,
|
|
761
663
|
components: _,
|
|
762
|
-
codeBlockCopyLabel:
|
|
763
|
-
codeBlockCopiedLabel:
|
|
764
|
-
codeBlockTheme:
|
|
664
|
+
codeBlockCopyLabel: P,
|
|
665
|
+
codeBlockCopiedLabel: F,
|
|
666
|
+
codeBlockTheme: x
|
|
765
667
|
})
|
|
766
668
|
}),
|
|
767
|
-
/* @__PURE__ */
|
|
768
|
-
attachments:
|
|
669
|
+
/* @__PURE__ */ Y(Qe, {
|
|
670
|
+
attachments: R,
|
|
769
671
|
onAttachmentClick: (e) => v?.(l?.find((t) => t.id === e)),
|
|
770
672
|
onDownloadAll: y,
|
|
771
673
|
onRetry: b,
|
|
772
674
|
labels: {
|
|
773
|
-
clickLabel:
|
|
774
|
-
retryLabel:
|
|
775
|
-
openInNewTabLabel:
|
|
776
|
-
}
|
|
675
|
+
clickLabel: k,
|
|
676
|
+
retryLabel: A,
|
|
677
|
+
openInNewTabLabel: j
|
|
678
|
+
},
|
|
679
|
+
selectedAttachmentId: C
|
|
777
680
|
}),
|
|
778
681
|
f,
|
|
779
|
-
/* @__PURE__ */
|
|
682
|
+
/* @__PURE__ */ Y(at, {
|
|
780
683
|
...a,
|
|
781
684
|
isAlwaysVisible: o,
|
|
782
685
|
role: s.Assistant
|
|
783
686
|
})
|
|
784
687
|
]
|
|
785
|
-
}), p && p.length > 0 && m && /* @__PURE__ */
|
|
688
|
+
}), p && p.length > 0 && m && /* @__PURE__ */ Y("div", {
|
|
786
689
|
role: "list",
|
|
787
|
-
"aria-label":
|
|
690
|
+
"aria-label": M,
|
|
788
691
|
className: d("flex w-full flex-wrap gap-2 border-t pt-5", $.startersDivider),
|
|
789
|
-
children: p.map((e, t) => /* @__PURE__ */
|
|
692
|
+
children: p.map((e, t) => /* @__PURE__ */ Y("div", {
|
|
790
693
|
role: "listitem",
|
|
791
694
|
className: "min-w-[40px]",
|
|
792
|
-
children: /* @__PURE__ */
|
|
695
|
+
children: /* @__PURE__ */ Y(D, {
|
|
793
696
|
label: e.title,
|
|
794
697
|
className: "min-w-[40px]",
|
|
795
698
|
onClick: () => m(e)
|
|
@@ -798,77 +701,77 @@ var lt = 2e3, ut = ({ role: e = s.User, onEdit: t, onEditHover: n, onDelete: r,
|
|
|
798
701
|
})]
|
|
799
702
|
})]
|
|
800
703
|
});
|
|
801
|
-
},
|
|
704
|
+
}, st = ({ labels: { titleText: e = "Model switched.", bodyText: t } }) => /* @__PURE__ */ Y("div", {
|
|
802
705
|
role: "status",
|
|
803
706
|
"aria-live": "polite",
|
|
804
|
-
|
|
805
|
-
children: /* @__PURE__ */ q(_, {
|
|
707
|
+
children: /* @__PURE__ */ Y(T, {
|
|
806
708
|
title: e,
|
|
807
709
|
message: t,
|
|
808
710
|
textClassName: "flex-row flex-wrap gap-1"
|
|
809
711
|
})
|
|
810
|
-
}),
|
|
712
|
+
}), ct = /* @__PURE__ */ function(e) {
|
|
811
713
|
return e.Bottom = "Bottom", e.Top = "Top", e;
|
|
812
|
-
}({}),
|
|
813
|
-
let { colors: _, typography: v, className: y, bubbleClassName: b } = n ?? {}, { showMoreLabel: x = "Show more", showLessLabel:
|
|
714
|
+
}({}), lt = 10, ut = ({ text: e, position: t = ct.Bottom, styles: n, actions: r, hasAlwaysVisibleActions: i, attachments: a, collapsedLineCount: o = lt, labels: c, onAttachmentClick: l, onDownloadAll: m, onAttachmentRetry: h, selectedAttachmentId: g }) => {
|
|
715
|
+
let { colors: _, typography: v, className: y, bubbleClassName: b } = n ?? {}, { showMoreLabel: x = "Show more", showLessLabel: C = "Show less", showMoreAriaLabel: w, showLessAriaLabel: T, attachmentClickLabel: D, attachmentRetryLabel: O, attachmentOpenInNewTabLabel: k, userMessageAriaLabel: A = "User message" } = c ?? {}, { textRef: j, isTextCollapsed: P, isOverflowing: F, collapsedMaxHeight: I, expandedMaxHeight: L, isCollapsed: R, toggleCollapsed: z } = f({
|
|
814
716
|
text: e,
|
|
815
717
|
collapsedLineCount: o
|
|
816
|
-
}),
|
|
718
|
+
}), B = u({
|
|
817
719
|
"--cm-bubble-user-bg": _?.userBackground,
|
|
818
720
|
"--cm-bubble-user-border": _?.userBorder,
|
|
819
721
|
"--cm-bubble-fade-start": _?.fadeStart,
|
|
820
722
|
"--cm-bubble-text": _?.text,
|
|
821
|
-
"--cm-bubble-collapsed-height":
|
|
822
|
-
"--cm-bubble-expanded-height":
|
|
823
|
-
}),
|
|
824
|
-
return /* @__PURE__ */
|
|
723
|
+
"--cm-bubble-collapsed-height": F ? `${I}px` : void 0,
|
|
724
|
+
"--cm-bubble-expanded-height": F ? `${L}px` : void 0
|
|
725
|
+
}), V = t === ct.Top ? "rounded-ee-md rounded-se-2xl" : "rounded-se-md rounded-ee-2xl", H = d($.text, v?.fontClassName), U = w ?? x, W = T ?? C, ee = R ? x : C, te = R ? U : W, ne = R ? M : N, re = Ae();
|
|
726
|
+
return /* @__PURE__ */ Y("div", {
|
|
825
727
|
role: "group",
|
|
826
|
-
"aria-label":
|
|
827
|
-
style:
|
|
728
|
+
"aria-label": A,
|
|
729
|
+
style: B,
|
|
828
730
|
className: d("flex w-full", y),
|
|
829
|
-
children: /* @__PURE__ */
|
|
731
|
+
children: /* @__PURE__ */ X("div", {
|
|
830
732
|
className: "ms-auto flex w-fit min-w-0 max-w-full flex-col items-end gap-4",
|
|
831
733
|
children: [
|
|
832
|
-
/* @__PURE__ */
|
|
734
|
+
/* @__PURE__ */ Y(Qe, {
|
|
833
735
|
attachments: a ?? [],
|
|
834
736
|
onAttachmentClick: (e) => l?.(a?.find((t) => t.id === e)),
|
|
835
737
|
onDownloadAll: m,
|
|
836
738
|
onRetry: h,
|
|
837
739
|
labels: {
|
|
838
|
-
clickLabel:
|
|
839
|
-
retryLabel:
|
|
840
|
-
openInNewTabLabel:
|
|
740
|
+
clickLabel: D,
|
|
741
|
+
retryLabel: O,
|
|
742
|
+
openInNewTabLabel: k
|
|
841
743
|
},
|
|
842
|
-
styles: { className: "max-w-[640px]" }
|
|
744
|
+
styles: { className: "max-w-[640px]" },
|
|
745
|
+
selectedAttachmentId: g
|
|
843
746
|
}),
|
|
844
|
-
e && /* @__PURE__ */
|
|
845
|
-
className: d($.userBubble, "flex w-fit items-center justify-end rounded-es-2xl rounded-ss-2xl border px-6 py-4",
|
|
846
|
-
children: /* @__PURE__ */
|
|
747
|
+
e && /* @__PURE__ */ Y("div", {
|
|
748
|
+
className: d($.userBubble, "flex w-fit items-center justify-end rounded-es-2xl rounded-ss-2xl border px-6 py-4", V, b),
|
|
749
|
+
children: /* @__PURE__ */ X("div", {
|
|
847
750
|
className: "flex min-w-0 flex-col items-start",
|
|
848
|
-
children: [/* @__PURE__ */
|
|
849
|
-
id:
|
|
850
|
-
className: d("relative overflow-hidden",
|
|
851
|
-
children: /* @__PURE__ */
|
|
852
|
-
ref:
|
|
853
|
-
className: d(
|
|
751
|
+
children: [/* @__PURE__ */ Y("div", {
|
|
752
|
+
id: re,
|
|
753
|
+
className: d("relative overflow-hidden", F && $.collapsibleText, F && !R && $.expandedText, P && $.collapsedText),
|
|
754
|
+
children: /* @__PURE__ */ Y("p", {
|
|
755
|
+
ref: j,
|
|
756
|
+
className: d(H, "whitespace-pre-wrap text-start [overflow-wrap:anywhere]"),
|
|
854
757
|
children: e
|
|
855
758
|
})
|
|
856
|
-
}),
|
|
857
|
-
label: /* @__PURE__ */
|
|
858
|
-
iconBefore: /* @__PURE__ */
|
|
759
|
+
}), F && /* @__PURE__ */ Y(E, {
|
|
760
|
+
label: /* @__PURE__ */ Y(J, { children: ee }),
|
|
761
|
+
iconBefore: /* @__PURE__ */ Y(ne, {
|
|
859
762
|
size: p.SM,
|
|
860
763
|
"aria-hidden": "true"
|
|
861
764
|
}),
|
|
862
|
-
"aria-label":
|
|
863
|
-
"aria-expanded": !
|
|
864
|
-
"aria-controls":
|
|
765
|
+
"aria-label": te,
|
|
766
|
+
"aria-expanded": !R,
|
|
767
|
+
"aria-controls": re,
|
|
865
768
|
className: "mt-3",
|
|
866
|
-
onClick:
|
|
867
|
-
size:
|
|
769
|
+
onClick: z,
|
|
770
|
+
size: S.Small
|
|
868
771
|
})]
|
|
869
772
|
})
|
|
870
773
|
}),
|
|
871
|
-
/* @__PURE__ */
|
|
774
|
+
/* @__PURE__ */ Y(at, {
|
|
872
775
|
...r,
|
|
873
776
|
isAlwaysVisible: i,
|
|
874
777
|
role: s.User
|
|
@@ -876,31 +779,16 @@ var lt = 2e3, ut = ({ role: e = s.User, onEdit: t, onEditHover: n, onDelete: r,
|
|
|
876
779
|
]
|
|
877
780
|
})
|
|
878
781
|
});
|
|
879
|
-
},
|
|
782
|
+
}, dt = ({ role: e, onAttachmentClick: t, markdownComponents: n, ...r }) => e === s.Status ? /* @__PURE__ */ Y(st, { labels: {
|
|
880
783
|
titleText: r.labels?.statusTitleText,
|
|
881
784
|
bodyText: r.labels?.statusBodyText ?? ""
|
|
882
|
-
} }) : e === s.User ? /* @__PURE__ */
|
|
785
|
+
} }) : e === s.User ? /* @__PURE__ */ Y(ut, {
|
|
883
786
|
...r,
|
|
884
787
|
onAttachmentClick: t
|
|
885
|
-
}) : /* @__PURE__ */
|
|
788
|
+
}) : /* @__PURE__ */ Y(ot, {
|
|
886
789
|
...r,
|
|
887
790
|
markdownComponents: n,
|
|
888
791
|
onAttachmentClick: t
|
|
889
|
-
})
|
|
890
|
-
let { colors: r, typography: i, className: a } = n ?? {};
|
|
891
|
-
return /* @__PURE__ */ q("button", {
|
|
892
|
-
type: "button",
|
|
893
|
-
onClick: t,
|
|
894
|
-
style: u({
|
|
895
|
-
"--cm-source-bg": r?.background,
|
|
896
|
-
"--cm-source-border": r?.border,
|
|
897
|
-
"--cm-source-text": r?.text,
|
|
898
|
-
"--cm-source-bg-hover": r?.backgroundHover,
|
|
899
|
-
"--cm-source-border-hover": r?.borderHover
|
|
900
|
-
}),
|
|
901
|
-
className: d(_t.button, "relative flex h-6 items-center justify-center px-2", "border border-solid", "outline-none focus-visible:outline focus-visible:outline-1", "focus-visible:outline-offset-[3px]", "cursor-pointer whitespace-nowrap", i?.fontClassName, a),
|
|
902
|
-
children: e
|
|
903
|
-
});
|
|
904
|
-
};
|
|
792
|
+
});
|
|
905
793
|
//#endregion
|
|
906
|
-
export {
|
|
794
|
+
export { ot as AssistantMessageBubble, ct as BubblePosition, at as MessageActions, dt as MessageBubble, st as StatusMessageBubble, ut as UserMessageBubble };
|