@epam/ai-dial-conversation-messages 1.2.0-dev.102 → 1.2.0-dev.106

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.
@@ -1 +1 @@
1
- {"version":3,"file":"AssistantMessageBubble.d.ts","sourceRoot":"","sources":["../../../src/components/MessageBubble/AssistantMessageBubble.tsx"],"names":[],"mappings":"AAWA,OAAO,EAAE,EAAE,EAAW,MAAM,OAAO,CAAC;AAGpC,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAC;AAY/E,gHAAgH;AAChH,eAAO,MAAM,sBAAsB,EAAE,EAAE,CAAC,2BAA2B,CAgNlE,CAAC"}
1
+ {"version":3,"file":"AssistantMessageBubble.d.ts","sourceRoot":"","sources":["../../../src/components/MessageBubble/AssistantMessageBubble.tsx"],"names":[],"mappings":"AAYA,OAAO,EAAE,EAAE,EAAW,MAAM,OAAO,CAAC;AAGpC,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAC;AAY/E,gHAAgH;AAChH,eAAO,MAAM,sBAAsB,EAAE,EAAE,CAAC,2BAA2B,CAkNlE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"MessageBubble.d.ts","sourceRoot":"","sources":["../../../src/components/MessageBubble/MessageBubble.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAC3B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAKtE,wGAAwG;AACxG,eAAO,MAAM,aAAa,EAAE,EAAE,CAAC,kBAAkB,CAsChD,CAAC"}
1
+ {"version":3,"file":"MessageBubble.d.ts","sourceRoot":"","sources":["../../../src/components/MessageBubble/MessageBubble.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAC3B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAKtE,wGAAwG;AACxG,eAAO,MAAM,aAAa,EAAE,EAAE,CAAC,kBAAkB,CAwChD,CAAC"}
package/index.js CHANGED
@@ -1,16 +1,16 @@
1
- import { AttachmentType as e, CopyIconButton as t, DeploymentIcon as n, MDMessageViewer as r, MessageRating as i, MessageRole as a, buildCssVars as o, mergeClasses as s, useCollapsedText as c } from "@epam/ai-dial-chat-shared";
2
- import { AttachmentGroup as l } from "@epam/ai-dial-attachment-input";
3
- import { DIAL_ICON_SIZE as u, DIAL_KIT_ICON_STROKE as d, ElementSize as f, InfoMessageNotification as p, LinkButton as m, NeutralButton as h, ToggleIconButton as g } from "@epam/ai-dial-ui-kit";
4
- import { useCallback as _, useEffect as v, useId as y, useMemo as b, useRef as x, useState as S } from "react";
5
- import { IconChevronDown as C, IconChevronUp as w, IconMarkdown as T, IconPencilMinus as E, IconRefresh as D, IconThumbDown as O, IconThumbDownFilled as k, IconThumbUp as A, IconThumbUpFilled as j, IconTrashX as M } from "@tabler/icons-react";
6
- import { Fragment as N, jsx as P, jsxs as F } from "react/jsx-runtime";
1
+ import { AttachmentType as e, CopyIconButton as t, DeploymentIcon as n, MDMessageViewer as r, MessageRating as i, MessageRole as a, ResponseFormat as o, buildCssVars as s, mergeClasses as c, useCollapsedText as l } from "@epam/ai-dial-chat-shared";
2
+ import { AttachmentGroup as u } from "@epam/ai-dial-attachment-input";
3
+ import { DIAL_ICON_SIZE as d, DIAL_KIT_ICON_STROKE as f, ElementSize as p, InfoMessageNotification as m, LinkButton as h, NeutralButton as g, ToggleIconButton as _ } from "@epam/ai-dial-ui-kit";
4
+ import { useCallback as v, useEffect as y, useId as b, useMemo as x, useRef as S, useState as C } from "react";
5
+ import { IconChevronDown as w, IconChevronUp as T, IconMarkdown as E, IconPencilMinus as D, IconRefresh as O, IconThumbDown as k, IconThumbDownFilled as A, IconThumbUp as j, IconThumbUpFilled as M, IconTrashX as N } from "@tabler/icons-react";
6
+ import { Fragment as P, jsx as F, jsxs as I } from "react/jsx-runtime";
7
7
  //#region src/constants/public-class-names.ts
8
- var I = {
8
+ var L = {
9
9
  userBubble: "dial-cm-user-bubble",
10
10
  assistantContent: "dial-cm-assistant-content"
11
- }, L = 4, R = (e) => {
12
- let t = x(null), [n, r] = S(0);
13
- return v(() => {
11
+ }, R = 4, z = (e) => {
12
+ let t = S(null), [n, r] = C(0);
13
+ return y(() => {
14
14
  if (!e) return;
15
15
  let n = t.current;
16
16
  if (n == null) return;
@@ -21,291 +21,292 @@ var I = {
21
21
  return i.observe(n), () => i.disconnect();
22
22
  }, [e]), {
23
23
  slotRef: t,
24
- firstLineIndent: e ? `calc(${n}px + ${L}px)` : void 0
24
+ firstLineIndent: e ? `calc(${n}px + ${R}px)` : void 0
25
25
  };
26
- }, z = { activeRating: "_activeRating_ygoee_1" }, B = 2e3, V = ({ role: e = a.User, onEdit: n, onEditHover: r, onDelete: c, onRegenerate: l, onCopy: p, onCopyMarkdown: m, onLike: h, onDislike: v, activeRating: y, isAlwaysVisible: b, isDisabled: x = !1, className: C, labels: w, colors: I }) => {
27
- let { tooltips: L, ariaLabels: R } = w ?? {}, [V, H] = S(null), [U, W] = S(""), G = n != null || c != null || l != null || p != null || m != null || h != null || v != null, K = o({ "--ma-active-rating-text": I?.activeRatingText }), q = _(() => {
28
- p?.(), H("copy"), W(R?.copiedStatus ?? "Copied to clipboard"), setTimeout(() => H(null), B);
29
- }, [p, R?.copiedStatus]), J = _(() => {
30
- m?.(), H("markdown"), W(R?.copiedMarkdownStatus ?? "Copied as Markdown to clipboard"), setTimeout(() => H(null), B);
26
+ }, B = { activeRating: "_activeRating_ygoee_1" }, V = 2e3, H = ({ role: e = a.User, onEdit: n, onEditHover: r, onDelete: o, onRegenerate: l, onCopy: u, onCopyMarkdown: m, onLike: h, onDislike: g, activeRating: y, isAlwaysVisible: b, isDisabled: x = !1, className: S, labels: w, colors: T }) => {
27
+ let { tooltips: L, ariaLabels: R } = w ?? {}, [z, H] = C(null), [U, W] = C(""), G = n != null || o != null || l != null || u != null || m != null || h != null || g != null, K = s({ "--ma-active-rating-text": T?.activeRatingText }), q = v(() => {
28
+ u?.(), H("copy"), W(R?.copiedStatus ?? "Copied to clipboard"), setTimeout(() => H(null), V);
29
+ }, [u, R?.copiedStatus]), J = v(() => {
30
+ m?.(), H("markdown"), W(R?.copiedMarkdownStatus ?? "Copied as Markdown to clipboard"), setTimeout(() => H(null), V);
31
31
  }, [m, R?.copiedMarkdownStatus]);
32
- return G ? /* @__PURE__ */ F("div", {
32
+ return G ? /* @__PURE__ */ I("div", {
33
33
  role: "toolbar",
34
34
  "aria-label": R?.actionsGroup ?? "Message actions",
35
35
  style: K,
36
- className: s("flex gap-1", !b && "opacity-0 group-hover:opacity-100", C),
37
- children: [/* @__PURE__ */ P("span", {
36
+ className: c("flex gap-1", !b && "opacity-0 group-hover:opacity-100", S),
37
+ children: [/* @__PURE__ */ F("span", {
38
38
  role: "status",
39
39
  "aria-live": "polite",
40
40
  className: "sr-only",
41
41
  children: U
42
- }), e === a.User ? /* @__PURE__ */ F(N, { children: [n && /* @__PURE__ */ P(g, {
43
- icon: /* @__PURE__ */ P(E, {
44
- size: u.SM,
42
+ }), e === a.User ? /* @__PURE__ */ I(P, { children: [n && /* @__PURE__ */ F(_, {
43
+ icon: /* @__PURE__ */ F(D, {
44
+ size: d.SM,
45
45
  "aria-hidden": !0,
46
- stroke: d
46
+ stroke: f
47
47
  }),
48
- size: f.Small,
48
+ size: p.Small,
49
49
  "aria-label": R?.editMessage ?? "Edit message",
50
50
  tooltipProps: { tooltip: L?.edit ?? "Edit" },
51
51
  onClick: n,
52
52
  onMouseEnter: r,
53
53
  onFocus: r,
54
54
  disabled: x
55
- }), c && /* @__PURE__ */ P(g, {
56
- icon: /* @__PURE__ */ P(M, {
57
- size: u.SM,
55
+ }), o && /* @__PURE__ */ F(_, {
56
+ icon: /* @__PURE__ */ F(N, {
57
+ size: d.SM,
58
58
  "aria-hidden": !0,
59
- stroke: d
59
+ stroke: f
60
60
  }),
61
- size: f.Small,
61
+ size: p.Small,
62
62
  "aria-label": R?.deleteMessage ?? "Delete message",
63
63
  tooltipProps: { tooltip: L?.delete ?? "Delete" },
64
- onClick: c,
64
+ onClick: o,
65
65
  disabled: x
66
- })] }) : /* @__PURE__ */ F(N, { children: [
67
- l && /* @__PURE__ */ P(g, {
68
- icon: /* @__PURE__ */ P(D, {
69
- size: u.SM,
66
+ })] }) : /* @__PURE__ */ I(P, { children: [
67
+ l && /* @__PURE__ */ F(_, {
68
+ icon: /* @__PURE__ */ F(O, {
69
+ size: d.SM,
70
70
  "aria-hidden": !0,
71
- stroke: d
71
+ stroke: f
72
72
  }),
73
- size: f.Small,
73
+ size: p.Small,
74
74
  "aria-label": R?.regenerateResponse ?? "Regenerate response",
75
75
  tooltipProps: { tooltip: L?.regenerate ?? "Regenerate" },
76
76
  onClick: l,
77
77
  disabled: x
78
78
  }),
79
- p && /* @__PURE__ */ P(t, {
80
- iconSize: u.SM,
79
+ u && /* @__PURE__ */ F(t, {
80
+ iconSize: d.SM,
81
81
  onClick: q,
82
- size: f.Small,
83
- isCopied: V === "copy",
82
+ size: p.Small,
83
+ isCopied: z === "copy",
84
84
  copyLabel: L?.copy ?? "Copy",
85
85
  copiedLabel: L?.copied ?? "Copied!",
86
86
  ariaLabel: R?.copyResponse ?? "Copy response",
87
87
  isDisabled: x
88
88
  }),
89
- m && /* @__PURE__ */ P(t, {
90
- iconSize: u.SM,
89
+ m && /* @__PURE__ */ F(t, {
90
+ iconSize: d.SM,
91
91
  onClick: J,
92
- size: f.Small,
93
- isCopied: V === "markdown",
94
- iconCopy: /* @__PURE__ */ P(T, {
95
- size: u.SM,
92
+ size: p.Small,
93
+ isCopied: z === "markdown",
94
+ iconCopy: /* @__PURE__ */ F(E, {
95
+ size: d.SM,
96
96
  "aria-hidden": !0,
97
- stroke: d
97
+ stroke: f
98
98
  }),
99
99
  copyLabel: L?.copyMarkdown ?? "Copy as Markdown",
100
100
  copiedLabel: L?.copiedMarkdown ?? "Copied!",
101
101
  ariaLabel: R?.copyAsMarkdown ?? "Copy as markdown",
102
102
  isDisabled: x
103
103
  }),
104
- h && /* @__PURE__ */ P(g, {
105
- icon: y === i.Like ? /* @__PURE__ */ P(j, {
106
- className: z.activeRating,
107
- size: u.SM,
104
+ h && /* @__PURE__ */ F(_, {
105
+ icon: y === i.Like ? /* @__PURE__ */ F(M, {
106
+ className: B.activeRating,
107
+ size: d.SM,
108
108
  "aria-hidden": !0
109
- }) : /* @__PURE__ */ P(A, {
110
- size: u.SM,
109
+ }) : /* @__PURE__ */ F(j, {
110
+ size: d.SM,
111
111
  "aria-hidden": !0,
112
- stroke: d
112
+ stroke: f
113
113
  }),
114
- size: f.Small,
114
+ size: p.Small,
115
115
  "aria-label": R?.likeResponse ?? "Like response",
116
116
  "aria-pressed": y === i.Like,
117
117
  tooltipProps: { tooltip: L?.like ?? "Like" },
118
118
  onClick: h,
119
119
  disabled: x
120
120
  }),
121
- v && /* @__PURE__ */ P(g, {
122
- icon: y === i.Dislike ? /* @__PURE__ */ P(k, {
123
- className: z.activeRating,
124
- size: u.SM,
121
+ g && /* @__PURE__ */ F(_, {
122
+ icon: y === i.Dislike ? /* @__PURE__ */ F(A, {
123
+ className: B.activeRating,
124
+ size: d.SM,
125
125
  "aria-hidden": !0
126
- }) : /* @__PURE__ */ P(O, {
127
- size: u.SM,
126
+ }) : /* @__PURE__ */ F(k, {
127
+ size: d.SM,
128
128
  "aria-hidden": !0,
129
- stroke: d
129
+ stroke: f
130
130
  }),
131
- size: f.Small,
131
+ size: p.Small,
132
132
  "aria-label": R?.dislikeResponse ?? "Dislike response",
133
133
  "aria-pressed": y === i.Dislike,
134
134
  tooltipProps: { tooltip: L?.dislike ?? "Dislike" },
135
- onClick: v,
135
+ onClick: g,
136
136
  disabled: x
137
137
  })
138
138
  ] })]
139
139
  }) : null;
140
- }, H = {
140
+ }, U = {
141
141
  userBubble: "_userBubble_cq829_1",
142
142
  collapsibleText: "_collapsibleText_cq829_6",
143
143
  expandedText: "_expandedText_cq829_11",
144
144
  collapsedText: "_collapsedText_cq829_15",
145
145
  startersDivider: "_startersDivider_cq829_26",
146
146
  text: "_text_cq829_30"
147
- }, U = "[&>.cm-bubble-markdown>div>*:first-child]:indent-[var(--cm-bubble-first-line-indent,0px)]", W = ({ text: t, styles: i, actions: c, hasAlwaysVisibleActions: u, isStreaming: d, attachments: f, beforeContent: p, afterContent: m, starters: g, onSelectStarter: _, deploymentIconUrl: v, deploymentDisplayName: y, markdownComponents: x, markdownClassNames: S, markdownUrlTransform: C, onAttachmentClick: w, onDownloadAll: T, onAttachmentRetry: E, codeBlockTheme: D, tableOnOpenInCanvas: O, labels: k, selectedAttachmentId: A }) => {
148
- let { colors: j, typography: M, className: N, bubbleClassName: L } = i ?? {}, { attachmentClickLabel: z, attachmentRetryLabel: B, attachmentOpenInNewTabLabel: W, startersAriaLabel: G = "Quick reply buttons", thinkingLabel: K, codeBlockCopyLabel: q, codeBlockCopiedLabel: J, tableCopyLabel: Y, tableCopiedLabel: X, tableDownloadCsvLabel: Z, tableOpenInCanvasLabel: Q, tableDownloadFilename: ee, tableScrollRegionAriaLabel: te, assistantMessageAriaLabel: ne = "Assistant message", deploymentIconFallbackLabel: $ = "AI" } = k ?? {}, re = b(() => ({
149
- copyLabel: Y,
150
- copiedLabel: X,
151
- downloadCsvLabel: Z,
152
- openInCanvasLabel: Q
147
+ }, W = "[&>.cm-bubble-markdown>div>*:first-child]:indent-[var(--cm-bubble-first-line-indent,0px)]", G = ({ text: t, styles: i, actions: l, hasAlwaysVisibleActions: d, isStreaming: f, attachments: p, beforeContent: m, responseFormat: h, afterContent: _, starters: v, onSelectStarter: y, deploymentIconUrl: b, deploymentDisplayName: S, markdownComponents: C, markdownClassNames: w, markdownUrlTransform: T, onAttachmentClick: E, onDownloadAll: D, onAttachmentRetry: O, codeBlockTheme: k, tableOnOpenInCanvas: A, labels: j, selectedAttachmentId: M }) => {
148
+ let { colors: N, typography: P, className: R, bubbleClassName: B } = i ?? {}, { attachmentClickLabel: V, attachmentRetryLabel: G, attachmentOpenInNewTabLabel: K, startersAriaLabel: q = "Quick reply buttons", thinkingLabel: J, codeBlockCopyLabel: Y, codeBlockCopiedLabel: X, tableCopyLabel: Z, tableCopiedLabel: Q, tableDownloadCsvLabel: $, tableOpenInCanvasLabel: ee, tableDownloadFilename: te, tableScrollRegionAriaLabel: ne, assistantMessageAriaLabel: re = "Assistant message", deploymentIconFallbackLabel: ie = "AI" } = j ?? {}, ae = x(() => ({
149
+ copyLabel: Z,
150
+ copiedLabel: Q,
151
+ downloadCsvLabel: $,
152
+ openInCanvasLabel: ee
153
153
  }), [
154
- Y,
155
- X,
156
154
  Z,
157
- Q
158
- ]), ie = d ? (f ?? []).filter((t) => t.type !== e.Audio) : f ?? [], { slotRef: ae, firstLineIndent: oe } = R(p != null && !!t), se = o({
159
- "--cm-bubble-text": j?.text,
160
- "--cm-starters-divider": j?.startersDivider,
161
- "--cm-bubble-first-line-indent": oe
162
- }), ce = s(H.text, M?.fontClassName), le = !!(v || y);
163
- return /* @__PURE__ */ F("div", {
155
+ Q,
156
+ $,
157
+ ee
158
+ ]), oe = f ? (p ?? []).filter((t) => t.type !== e.Audio) : p ?? [], { slotRef: se, firstLineIndent: ce } = z(m != null && !!t), le = s({
159
+ "--cm-bubble-text": N?.text,
160
+ "--cm-starters-divider": N?.startersDivider,
161
+ "--cm-bubble-first-line-indent": ce
162
+ }), ue = c(U.text, P?.fontClassName), de = !!(b || S);
163
+ return /* @__PURE__ */ I("div", {
164
164
  role: "group",
165
- "aria-label": ne,
166
- style: se,
167
- className: s("flex w-full items-start gap-3", N),
168
- children: [le && /* @__PURE__ */ P(n, {
169
- src: v,
165
+ "aria-label": re,
166
+ style: le,
167
+ className: c("flex w-full items-start gap-3", R),
168
+ children: [de && /* @__PURE__ */ F(n, {
169
+ src: b,
170
170
  size: 28,
171
- initialsName: y || $,
172
- labels: { tooltip: y ?? $ }
173
- }), /* @__PURE__ */ F("div", {
171
+ initialsName: S || ie,
172
+ labels: { tooltip: S ?? ie }
173
+ }), /* @__PURE__ */ I("div", {
174
174
  className: "flex w-full min-w-0 max-w-full flex-col items-start gap-5",
175
- children: [/* @__PURE__ */ F("div", {
176
- className: s("flex w-full min-w-0 max-w-full flex-col items-start gap-4", L),
175
+ children: [/* @__PURE__ */ I("div", {
176
+ className: c("flex w-full min-w-0 max-w-full flex-col items-start gap-4", B),
177
177
  children: [
178
- p != null && !t && /* @__PURE__ */ P("div", {
178
+ m != null && !t && /* @__PURE__ */ F("div", {
179
179
  className: "min-w-0",
180
- children: p
180
+ children: m
181
181
  }),
182
- (t || d) && /* @__PURE__ */ F("div", {
182
+ (t || f) && /* @__PURE__ */ I("div", {
183
183
  "aria-live": "polite",
184
184
  "aria-atomic": "false",
185
- className: s(ce, "relative min-w-0 max-w-full text-start", p != null && t && U, I.assistantContent),
186
- children: [p != null && t && /* @__PURE__ */ P("div", {
187
- ref: ae,
185
+ className: c(ue, "relative min-w-0 max-w-full text-start", m != null && t && W, L.assistantContent),
186
+ children: [m != null && t && /* @__PURE__ */ F("div", {
187
+ ref: se,
188
188
  className: "absolute start-0 top-0",
189
- children: p
190
- }), /* @__PURE__ */ P("div", {
189
+ children: m
190
+ }), /* @__PURE__ */ F("div", {
191
191
  className: "cm-bubble-markdown min-w-0 max-w-full",
192
- children: /* @__PURE__ */ P(r, {
192
+ children: /* @__PURE__ */ F(r, {
193
193
  content: t ?? "",
194
- isStreaming: d,
195
- thinkingLabel: K,
196
- components: x,
197
- classNames: S,
198
- urlTransform: C,
199
- codeBlockCopyLabel: q,
200
- codeBlockCopiedLabel: J,
201
- codeBlockTheme: D,
202
- tableActionLabels: re,
203
- tableDownloadFilename: ee,
204
- tableOnOpenInCanvas: O,
205
- tableScrollRegionAriaLabel: te
194
+ isPlainText: h === o.PlainText,
195
+ isStreaming: f,
196
+ thinkingLabel: J,
197
+ components: C,
198
+ classNames: w,
199
+ urlTransform: T,
200
+ codeBlockCopyLabel: Y,
201
+ codeBlockCopiedLabel: X,
202
+ codeBlockTheme: k,
203
+ tableActionLabels: ae,
204
+ tableDownloadFilename: te,
205
+ tableOnOpenInCanvas: A,
206
+ tableScrollRegionAriaLabel: ne
206
207
  })
207
208
  })]
208
209
  }),
209
- /* @__PURE__ */ P(l, {
210
- attachments: ie,
211
- onAttachmentClick: (e) => w?.(f?.find((t) => t.id === e)),
212
- onDownloadAll: T,
213
- onRetry: E,
210
+ /* @__PURE__ */ F(u, {
211
+ attachments: oe,
212
+ onAttachmentClick: (e) => E?.(p?.find((t) => t.id === e)),
213
+ onDownloadAll: D,
214
+ onRetry: O,
214
215
  labels: {
215
- clickLabel: z,
216
- retryLabel: B,
217
- openInNewTabLabel: W
216
+ clickLabel: V,
217
+ retryLabel: G,
218
+ openInNewTabLabel: K
218
219
  },
219
- selectedAttachmentId: A
220
+ selectedAttachmentId: M
220
221
  }),
221
- m,
222
- /* @__PURE__ */ P(V, {
223
- ...c,
224
- isAlwaysVisible: u,
222
+ _,
223
+ /* @__PURE__ */ F(H, {
224
+ ...l,
225
+ isAlwaysVisible: d,
225
226
  role: a.Assistant
226
227
  })
227
228
  ]
228
- }), g && g.length > 0 && _ && /* @__PURE__ */ P("div", {
229
+ }), v && v.length > 0 && y && /* @__PURE__ */ F("div", {
229
230
  role: "list",
230
- "aria-label": G,
231
- className: s("flex w-full flex-wrap gap-2 border-t pt-5", H.startersDivider),
232
- children: g.map((e, t) => /* @__PURE__ */ P("div", {
231
+ "aria-label": q,
232
+ className: c("flex w-full flex-wrap gap-2 border-t pt-5", U.startersDivider),
233
+ children: v.map((e, t) => /* @__PURE__ */ F("div", {
233
234
  role: "listitem",
234
235
  className: "min-w-[40px]",
235
- children: /* @__PURE__ */ P(h, {
236
+ children: /* @__PURE__ */ F(g, {
236
237
  label: e.title,
237
238
  className: "min-w-[40px]",
238
- onClick: () => _(e)
239
+ onClick: () => y(e)
239
240
  })
240
241
  }, t))
241
242
  })]
242
243
  })]
243
244
  });
244
- }, G = ({ labels: { titleText: e = "Model switched.", bodyText: t } }) => /* @__PURE__ */ P("div", {
245
+ }, K = ({ labels: { titleText: e = "Model switched.", bodyText: t } }) => /* @__PURE__ */ F("div", {
245
246
  role: "status",
246
247
  "aria-live": "polite",
247
- children: /* @__PURE__ */ P(p, {
248
+ children: /* @__PURE__ */ F(m, {
248
249
  title: e,
249
250
  message: t,
250
251
  textClassName: "flex-row flex-wrap gap-1"
251
252
  })
252
- }), K = /* @__PURE__ */ function(e) {
253
+ }), q = /* @__PURE__ */ function(e) {
253
254
  return e.Bottom = "Bottom", e.Top = "Top", e;
254
- }({}), q = 10, J = ({ text: e, position: t = K.Bottom, styles: n, actions: r, hasAlwaysVisibleActions: i, attachments: d, collapsedLineCount: p = q, labels: h, beforeContent: g, onAttachmentClick: _, onDownloadAll: v, onAttachmentRetry: b, selectedAttachmentId: x }) => {
255
- let { colors: S, typography: T, className: E, bubbleClassName: D } = n ?? {}, { showMoreLabel: O = "Show more", showLessLabel: k = "Show less", showMoreAriaLabel: A, showLessAriaLabel: j, attachmentClickLabel: M, attachmentRetryLabel: L, attachmentOpenInNewTabLabel: R, userMessageAriaLabel: z = "User message" } = h ?? {}, { textRef: B, isTextCollapsed: U, isOverflowing: W, collapsedMaxHeight: G, expandedMaxHeight: J, isCollapsed: Y, toggleCollapsed: X } = c({
255
+ }({}), J = 10, Y = ({ text: e, position: t = q.Bottom, styles: n, actions: r, hasAlwaysVisibleActions: i, attachments: o, collapsedLineCount: f = J, labels: m, beforeContent: g, onAttachmentClick: _, onDownloadAll: v, onAttachmentRetry: y, selectedAttachmentId: x }) => {
256
+ let { colors: S, typography: C, className: E, bubbleClassName: D } = n ?? {}, { showMoreLabel: O = "Show more", showLessLabel: k = "Show less", showMoreAriaLabel: A, showLessAriaLabel: j, attachmentClickLabel: M, attachmentRetryLabel: N, attachmentOpenInNewTabLabel: R, userMessageAriaLabel: z = "User message" } = m ?? {}, { textRef: B, isTextCollapsed: V, isOverflowing: W, collapsedMaxHeight: G, expandedMaxHeight: K, isCollapsed: Y, toggleCollapsed: X } = l({
256
257
  text: e ?? "",
257
- collapsedLineCount: p
258
- }), Z = o({
258
+ collapsedLineCount: f
259
+ }), Z = s({
259
260
  "--cm-bubble-user-bg": S?.userBackground,
260
261
  "--cm-bubble-user-border": S?.userBorder,
261
262
  "--cm-bubble-fade-start": S?.fadeStart,
262
263
  "--cm-bubble-text": S?.text,
263
264
  "--cm-bubble-collapsed-height": W ? `${G}px` : void 0,
264
- "--cm-bubble-expanded-height": W ? `${J}px` : void 0
265
- }), Q = t === K.Top ? "rounded-ee-md rounded-se-2xl" : "rounded-se-md rounded-ee-2xl", ee = s(H.text, T?.fontClassName), te = A ?? O, ne = j ?? k, $ = Y ? O : k, re = Y ? te : ne, ie = Y ? C : w, ae = y();
266
- return /* @__PURE__ */ P("div", {
265
+ "--cm-bubble-expanded-height": W ? `${K}px` : void 0
266
+ }), Q = t === q.Top ? "rounded-ee-md rounded-se-2xl" : "rounded-se-md rounded-ee-2xl", $ = c(U.text, C?.fontClassName), ee = A ?? O, te = j ?? k, ne = Y ? O : k, re = Y ? ee : te, ie = Y ? w : T, ae = b();
267
+ return /* @__PURE__ */ F("div", {
267
268
  role: "group",
268
269
  "aria-label": z,
269
270
  style: Z,
270
- className: s("flex w-full", E),
271
- children: /* @__PURE__ */ F("div", {
271
+ className: c("flex w-full", E),
272
+ children: /* @__PURE__ */ I("div", {
272
273
  className: "ms-auto flex w-fit min-w-0 max-w-full flex-col items-end gap-4",
273
274
  children: [
274
- /* @__PURE__ */ P(l, {
275
- attachments: d ?? [],
276
- onAttachmentClick: (e) => _?.(d?.find((t) => t.id === e)),
275
+ /* @__PURE__ */ F(u, {
276
+ attachments: o ?? [],
277
+ onAttachmentClick: (e) => _?.(o?.find((t) => t.id === e)),
277
278
  onDownloadAll: v,
278
- onRetry: b,
279
+ onRetry: y,
279
280
  labels: {
280
281
  clickLabel: M,
281
- retryLabel: L,
282
+ retryLabel: N,
282
283
  openInNewTabLabel: R
283
284
  },
284
285
  styles: { className: "max-w-[640px]" },
285
286
  selectedAttachmentId: x
286
287
  }),
287
- (e || g != null) && /* @__PURE__ */ P("div", {
288
- className: s(H.userBubble, "flex w-fit items-center justify-end rounded-es-2xl rounded-ss-2xl border px-6 py-4", Q, D, I.userBubble),
289
- children: /* @__PURE__ */ F("div", {
288
+ (e || g != null) && /* @__PURE__ */ F("div", {
289
+ className: c(U.userBubble, "flex w-fit items-center justify-end rounded-es-2xl rounded-ss-2xl border px-6 py-4", Q, D, L.userBubble),
290
+ children: /* @__PURE__ */ I("div", {
290
291
  className: "flex min-w-0 flex-col items-start",
291
292
  children: [
292
- e && /* @__PURE__ */ P("div", {
293
+ e && /* @__PURE__ */ F("div", {
293
294
  id: ae,
294
- className: s("relative overflow-hidden", W && H.collapsibleText, W && !Y && H.expandedText, U && H.collapsedText),
295
- children: /* @__PURE__ */ F("p", {
295
+ className: c("relative overflow-hidden", W && U.collapsibleText, W && !Y && U.expandedText, V && U.collapsedText),
296
+ children: /* @__PURE__ */ I("p", {
296
297
  ref: B,
297
- className: s(ee, "whitespace-pre-wrap text-start [overflow-wrap:anywhere]"),
298
- children: [g != null && /* @__PURE__ */ P("span", {
298
+ className: c($, "whitespace-pre-wrap text-start [overflow-wrap:anywhere]"),
299
+ children: [g != null && /* @__PURE__ */ F("span", {
299
300
  className: "me-1",
300
301
  children: g
301
302
  }), e]
302
303
  })
303
304
  }),
304
- g != null && !e && /* @__PURE__ */ P("div", { children: g }),
305
- W && /* @__PURE__ */ P(m, {
306
- label: /* @__PURE__ */ P(N, { children: $ }),
307
- iconBefore: /* @__PURE__ */ P(ie, {
308
- size: u.SM,
305
+ g != null && !e && /* @__PURE__ */ F("div", { children: g }),
306
+ W && /* @__PURE__ */ F(h, {
307
+ label: /* @__PURE__ */ F(P, { children: ne }),
308
+ iconBefore: /* @__PURE__ */ F(ie, {
309
+ size: d.SM,
309
310
  "aria-hidden": "true"
310
311
  }),
311
312
  "aria-label": re,
@@ -313,12 +314,12 @@ var I = {
313
314
  "aria-controls": ae,
314
315
  className: "mt-3",
315
316
  onClick: X,
316
- size: f.Small
317
+ size: p.Small
317
318
  })
318
319
  ]
319
320
  })
320
321
  }),
321
- /* @__PURE__ */ P(V, {
322
+ /* @__PURE__ */ F(H, {
322
323
  ...r,
323
324
  isAlwaysVisible: i,
324
325
  role: a.User
@@ -326,19 +327,20 @@ var I = {
326
327
  ]
327
328
  })
328
329
  });
329
- }, Y = ({ role: e, beforeContent: t, onAttachmentClick: n, markdownComponents: r, markdownUrlTransform: i, ...o }) => e === a.Status ? /* @__PURE__ */ P(G, { labels: {
330
- titleText: o.labels?.statusTitleText,
331
- bodyText: o.labels?.statusBodyText ?? ""
332
- } }) : e === a.User ? /* @__PURE__ */ P(J, {
333
- ...o,
330
+ }, X = ({ role: e, beforeContent: t, onAttachmentClick: n, responseFormat: r, markdownComponents: i, markdownUrlTransform: o, ...s }) => e === a.Status ? /* @__PURE__ */ F(K, { labels: {
331
+ titleText: s.labels?.statusTitleText,
332
+ bodyText: s.labels?.statusBodyText ?? ""
333
+ } }) : e === a.User ? /* @__PURE__ */ F(Y, {
334
+ ...s,
334
335
  beforeContent: t,
335
336
  onAttachmentClick: n
336
- }) : /* @__PURE__ */ P(W, {
337
- ...o,
337
+ }) : /* @__PURE__ */ F(G, {
338
+ ...s,
338
339
  beforeContent: t,
339
- markdownComponents: r,
340
- markdownUrlTransform: i,
340
+ responseFormat: r,
341
+ markdownComponents: i,
342
+ markdownUrlTransform: o,
341
343
  onAttachmentClick: n
342
344
  });
343
345
  //#endregion
344
- export { W as AssistantMessageBubble, K as BubblePosition, I as CONVERSATION_MESSAGES_CLASS, V as MessageActions, Y as MessageBubble, G as StatusMessageBubble, J as UserMessageBubble };
346
+ export { G as AssistantMessageBubble, q as BubblePosition, L as CONVERSATION_MESSAGES_CLASS, H as MessageActions, X as MessageBubble, K as StatusMessageBubble, Y as UserMessageBubble };
@@ -1,4 +1,4 @@
1
- import { CodeBlockTheme, DisplayAttachment, MarkdownRendererClassNames, MessageRole, StarterOption } from '@epam/ai-dial-chat-shared';
1
+ import { CodeBlockTheme, DisplayAttachment, MarkdownRendererClassNames, MessageRole, ResponseFormat, StarterOption } from '@epam/ai-dial-chat-shared';
2
2
  import { ReactNode } from 'react';
3
3
  import { Components } from 'react-markdown';
4
4
  import { BubblePosition } from '../types/bubble-position';
@@ -127,6 +127,14 @@ export interface UserMessageBubbleProps extends BaseMessageBubbleProps {
127
127
  }
128
128
  /** Props for `AssistantMessageBubble`. */
129
129
  export interface AssistantMessageBubbleProps extends BaseMessageBubbleProps {
130
+ /**
131
+ * Conversation response format. `ResponseFormat.PlainText` renders the
132
+ * message body verbatim — no Markdown pipeline, so a table, a heading, or
133
+ * `**bold**` reaches the reader exactly as the model wrote it — and the
134
+ * markdown-only props below stop applying. Defaults to
135
+ * `ResponseFormat.Markdown`.
136
+ */
137
+ responseFormat?: ResponseFormat;
130
138
  /** react-markdown component overrides. Use to inject custom renderers (e.g. citation markers) into markdown elements. */
131
139
  markdownComponents?: Components;
132
140
  /** Per-element markdown typography classes. Defaults to the renderer's full-size scale; pass `COMPACT_MARKDOWN_CLASS_NAMES` for the smaller body scale. */
@@ -1 +1 @@
1
- {"version":3,"file":"message-bubble.d.ts","sourceRoot":"","sources":["../../src/models/message-bubble.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"message-bubble.d.ts","sourceRoot":"","sources":["../../src/models/message-bubble.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@epam/ai-dial-conversation-messages",
3
3
  "description": "Message bubble components for rendering conversation history with actions and source citations",
4
- "version": "1.2.0-dev.102",
4
+ "version": "1.2.0-dev.106",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
7
7
  "main": "./index.js",
@@ -19,11 +19,11 @@
19
19
  "dependencies": {
20
20
  "@tabler/icons-react": "^3.44.0",
21
21
  "react-markdown": "^10.1.0",
22
- "@epam/ai-dial-attachment-input": "1.2.0-dev.102"
22
+ "@epam/ai-dial-attachment-input": "1.2.0-dev.106"
23
23
  },
24
24
  "peerDependencies": {
25
25
  "react": "^19.2.8",
26
- "@epam/ai-dial-chat-shared": "1.2.0-dev.102",
26
+ "@epam/ai-dial-chat-shared": "1.2.0-dev.106",
27
27
  "@epam/ai-dial-ui-kit": "^0.15.0-dev.12"
28
28
  },
29
29
  "repository": {