@epam/ai-dial-conversation-messages 1.2.0-dev.288 → 1.2.0-dev.300

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":"AAYA,OAAO,EAAE,EAAE,EAAW,MAAM,OAAO,CAAC;AAGpC,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAC;AAa/E,gHAAgH;AAChH,eAAO,MAAM,sBAAsB,EAAE,EAAE,CAAC,2BAA2B,CA4NlE,CAAC"}
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;AAa/E,gHAAgH;AAChH,eAAO,MAAM,sBAAsB,EAAE,EAAE,CAAC,2BAA2B,CAiOlE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"UserMessageBubble.d.ts","sourceRoot":"","sources":["../../../src/components/MessageBubble/UserMessageBubble.tsx"],"names":[],"mappings":"AAUA,OAAO,EAAE,EAAE,EAAS,MAAM,OAAO,CAAC;AAElC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAQ1E,kGAAkG;AAClG,eAAO,MAAM,iBAAiB,EAAE,EAAE,CAAC,sBAAsB,CAgKxD,CAAC"}
1
+ {"version":3,"file":"UserMessageBubble.d.ts","sourceRoot":"","sources":["../../../src/components/MessageBubble/UserMessageBubble.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,EAAE,EAAS,MAAM,OAAO,CAAC;AAElC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAQ1E,kGAAkG;AAClG,eAAO,MAAM,iBAAiB,EAAE,EAAE,CAAC,sBAAsB,CAqKxD,CAAC"}
package/index.js CHANGED
@@ -2,14 +2,14 @@ import { AttachmentType as e, CopyIconButton as t, DeploymentIcon as n, MDMessag
2
2
  import { AttachmentGroup as u } from "@epam/ai-dial-attachment-input";
3
3
  import { Button as d, ButtonVariant as f, DIAL_ICON_SIZE as p, DIAL_KIT_ICON_STROKE as m, ElementSize as h, GhostIconButton as g, InfoMessageNotification as _, LinkButton as v, NeutralButton as y } from "@epam/ai-dial-ui-kit";
4
4
  import { useCallback as b, useEffect as x, useId as S, useLayoutEffect as C, useMemo as ee, useRef as w, useState as T } from "react";
5
- import { IconArrowBackUp as E, IconChevronDown as D, IconChevronUp as O, IconMarkdown as k, IconPencilMinus as A, IconRefresh as j, IconThumbDown as M, IconThumbDownFilled as te, IconThumbUp as N, IconThumbUpFilled as ne, IconTrashX as re } from "@tabler/icons-react";
6
- import { Fragment as P, jsx as F, jsxs as I } from "react/jsx-runtime";
7
- import { createPortal as L } from "react-dom";
5
+ import { IconArrowBackUp as E, IconChevronDown as D, IconChevronUp as O, IconMarkdown as k, IconPencilMinus as A, IconRefresh as j, IconThumbDown as M, IconThumbDownFilled as N, IconThumbUp as P, IconThumbUpFilled as te, IconTrashX as ne } from "@tabler/icons-react";
6
+ import { Fragment as F, jsx as I, jsxs as L } from "react/jsx-runtime";
7
+ import { createPortal as R } from "react-dom";
8
8
  //#region src/constants/public-class-names.ts
9
- var R = {
9
+ var z = {
10
10
  userBubble: "dial-cm-user-bubble",
11
11
  assistantContent: "dial-cm-assistant-content"
12
- }, z = 4, B = (e) => {
12
+ }, B = 4, V = (e) => {
13
13
  let t = w(null), [n, r] = T(0);
14
14
  return x(() => {
15
15
  if (!e) return;
@@ -22,88 +22,88 @@ var R = {
22
22
  return i.observe(n), () => i.disconnect();
23
23
  }, [e]), {
24
24
  slotRef: t,
25
- firstLineIndent: e ? `calc(${n}px + ${z}px)` : void 0
25
+ firstLineIndent: e ? `calc(${n}px + ${B}px)` : void 0
26
26
  };
27
- }, V = [
27
+ }, H = [
28
28
  "href",
29
29
  "src",
30
30
  "alt",
31
31
  "colspan",
32
32
  "rowspan",
33
33
  "start"
34
- ], H = new Set([
34
+ ], U = new Set([
35
35
  "pre",
36
36
  "pre-wrap",
37
37
  "pre-line",
38
38
  "break-spaces"
39
- ]), U = (e) => {
39
+ ]), W = (e) => {
40
40
  let t = document.createElement(e.tagName.toLowerCase());
41
- V.forEach((n) => {
41
+ H.forEach((n) => {
42
42
  let r = e.getAttribute(n);
43
43
  r !== null && t.setAttribute(n, r);
44
44
  });
45
45
  let { whiteSpace: n } = window.getComputedStyle(e);
46
- return H.has(n) && (t.style.whiteSpace = "pre-wrap"), t;
47
- }, W = (e) => e instanceof SVGElement || window.getComputedStyle(e).display === "none", G = (e, t) => {
46
+ return U.has(n) && (t.style.whiteSpace = "pre-wrap"), t;
47
+ }, G = (e) => e instanceof SVGElement || window.getComputedStyle(e).display === "none", K = (e, t) => {
48
48
  if (!t.intersectsNode(e)) return null;
49
49
  if (e.nodeType === Node.TEXT_NODE) {
50
50
  let n = e.data, r = e === t.startContainer ? t.startOffset : 0, i = e === t.endContainer ? t.endOffset : n.length;
51
51
  return document.createTextNode(n.slice(r, i));
52
52
  }
53
- if (!(e instanceof Element) || W(e)) return null;
54
- let n = U(e);
53
+ if (!(e instanceof Element) || G(e)) return null;
54
+ let n = W(e);
55
55
  return e.childNodes.forEach((e) => {
56
- let r = G(e, t);
56
+ let r = K(e, t);
57
57
  r && n.appendChild(r);
58
58
  }), n;
59
- }, K = (e, t, n) => {
59
+ }, re = (e, t, n) => {
60
60
  let r = e, i = t;
61
61
  for (; i && i !== n && n.contains(i);) {
62
- let e = U(i);
62
+ let e = W(i);
63
63
  e.appendChild(r), r = e, i = i.parentElement;
64
64
  }
65
65
  return r;
66
- }, q = (e, t) => {
66
+ }, ie = (e, t) => {
67
67
  let n = e.commonAncestorContainer, r = n instanceof Element ? n : n.parentElement;
68
68
  if (!r) return null;
69
- let i = G(r, e);
70
- return i ? K(i, r.parentElement, t) : null;
71
- }, ie = (e) => {
69
+ let i = K(r, e);
70
+ return i ? re(i, r.parentElement, t) : null;
71
+ }, ae = (e) => {
72
72
  let t = window.getSelection();
73
73
  if (!t || t.isCollapsed || t.rangeCount === 0 || !e.clipboardData) return;
74
74
  let n = t.toString();
75
75
  if (!n) return;
76
76
  let r = document.createElement("div");
77
77
  for (let n = 0; n < t.rangeCount; n++) {
78
- let i = q(t.getRangeAt(n), e.currentTarget);
78
+ let i = ie(t.getRangeAt(n), e.currentTarget);
79
79
  i && r.appendChild(i);
80
80
  }
81
81
  e.clipboardData.setData("text/html", r.innerHTML), e.clipboardData.setData("text/plain", n), e.preventDefault();
82
- }, J = { activeRating: "_activeRating_ygoee_1" }, Y = 2e3, ae = ({ role: e = a.User, onEdit: n, onEditHover: r, onDelete: o, onRegenerate: l, onCopy: u, onCopyMarkdown: d, onLike: f, onDislike: _, activeRating: v, isAlwaysVisible: y, isDisabled: x = !1, className: S, labels: C, colors: ee }) => {
83
- let { tooltips: w, ariaLabels: E } = C ?? {}, [D, O] = T(null), [L, R] = T(""), z = n != null || o != null || l != null || u != null || d != null || f != null || _ != null, B = s({ "--ma-active-rating-text": ee?.activeRatingText }), V = b(() => {
84
- u?.(), O("copy"), R(e === a.User ? E?.copiedMessageStatus ?? "Message copied to clipboard" : E?.copiedStatus ?? "Copied to clipboard"), setTimeout(() => O(null), Y);
82
+ }, q = { activeRating: "_activeRating_ygoee_1" }, J = 2e3, oe = ({ role: e = a.User, onEdit: n, onEditHover: r, onDelete: o, onRegenerate: l, onCopy: u, onCopyMarkdown: d, onLike: f, onDislike: _, activeRating: v, isAlwaysVisible: y, isDisabled: x = !1, className: S, labels: C, colors: ee }) => {
83
+ let { tooltips: w, ariaLabels: E } = C ?? {}, [D, O] = T(null), [R, z] = T(""), B = n != null || o != null || l != null || u != null || d != null || f != null || _ != null, V = s({ "--ma-active-rating-text": ee?.activeRatingText }), H = b(() => {
84
+ u?.(), O("copy"), z(e === a.User ? E?.copiedMessageStatus ?? "Message copied to clipboard" : E?.copiedStatus ?? "Copied to clipboard"), setTimeout(() => O(null), J);
85
85
  }, [
86
86
  u,
87
87
  e,
88
88
  E?.copiedStatus,
89
89
  E?.copiedMessageStatus
90
- ]), H = b(() => {
91
- d?.(), O("markdown"), R(E?.copiedMarkdownStatus ?? "Copied as Markdown to clipboard"), setTimeout(() => O(null), Y);
90
+ ]), U = b(() => {
91
+ d?.(), O("markdown"), z(E?.copiedMarkdownStatus ?? "Copied as Markdown to clipboard"), setTimeout(() => O(null), J);
92
92
  }, [d, E?.copiedMarkdownStatus]);
93
- return z ? /* @__PURE__ */ I("div", {
93
+ return B ? /* @__PURE__ */ L("div", {
94
94
  role: "toolbar",
95
95
  "aria-label": E?.actionsGroup ?? "Message actions",
96
- style: B,
96
+ style: V,
97
97
  className: c("flex gap-1", !y && "opacity-0 group-hover:opacity-100", S),
98
- children: [/* @__PURE__ */ F("span", {
98
+ children: [/* @__PURE__ */ I("span", {
99
99
  role: "status",
100
100
  "aria-live": "polite",
101
101
  className: "sr-only",
102
- children: L
103
- }), e === a.User ? /* @__PURE__ */ I(P, { children: [
104
- u && /* @__PURE__ */ F(t, {
102
+ children: R
103
+ }), e === a.User ? /* @__PURE__ */ L(F, { children: [
104
+ u && /* @__PURE__ */ I(t, {
105
105
  iconSize: p.SM,
106
- onClick: V,
106
+ onClick: H,
107
107
  size: h.Small,
108
108
  isCopied: D === "copy",
109
109
  copyLabel: w?.copyMessage ?? "Copy message",
@@ -111,8 +111,8 @@ var R = {
111
111
  ariaLabel: E?.copyMessage ?? "Copy message",
112
112
  isDisabled: x
113
113
  }),
114
- n && /* @__PURE__ */ F(g, {
115
- icon: /* @__PURE__ */ F(A, {
114
+ n && /* @__PURE__ */ I(g, {
115
+ icon: /* @__PURE__ */ I(A, {
116
116
  size: p.SM,
117
117
  "aria-hidden": !0,
118
118
  stroke: m
@@ -125,8 +125,8 @@ var R = {
125
125
  onFocus: r,
126
126
  disabled: x
127
127
  }),
128
- o && /* @__PURE__ */ F(g, {
129
- icon: /* @__PURE__ */ F(re, {
128
+ o && /* @__PURE__ */ I(g, {
129
+ icon: /* @__PURE__ */ I(ne, {
130
130
  size: p.SM,
131
131
  "aria-hidden": !0,
132
132
  stroke: m
@@ -137,9 +137,9 @@ var R = {
137
137
  onClick: o,
138
138
  disabled: x
139
139
  })
140
- ] }) : /* @__PURE__ */ I(P, { children: [
141
- l && /* @__PURE__ */ F(g, {
142
- icon: /* @__PURE__ */ F(j, {
140
+ ] }) : /* @__PURE__ */ L(F, { children: [
141
+ l && /* @__PURE__ */ I(g, {
142
+ icon: /* @__PURE__ */ I(j, {
143
143
  size: p.SM,
144
144
  "aria-hidden": !0,
145
145
  stroke: m
@@ -150,9 +150,9 @@ var R = {
150
150
  onClick: l,
151
151
  disabled: x
152
152
  }),
153
- u && /* @__PURE__ */ F(t, {
153
+ u && /* @__PURE__ */ I(t, {
154
154
  iconSize: p.SM,
155
- onClick: V,
155
+ onClick: H,
156
156
  size: h.Small,
157
157
  isCopied: D === "copy",
158
158
  copyLabel: w?.copy ?? "Copy",
@@ -160,12 +160,12 @@ var R = {
160
160
  ariaLabel: E?.copyResponse ?? "Copy response",
161
161
  isDisabled: x
162
162
  }),
163
- d && /* @__PURE__ */ F(t, {
163
+ d && /* @__PURE__ */ I(t, {
164
164
  iconSize: p.SM,
165
- onClick: H,
165
+ onClick: U,
166
166
  size: h.Small,
167
167
  isCopied: D === "markdown",
168
- iconCopy: /* @__PURE__ */ F(k, {
168
+ iconCopy: /* @__PURE__ */ I(k, {
169
169
  size: p.SM,
170
170
  "aria-hidden": !0,
171
171
  stroke: m
@@ -175,12 +175,12 @@ var R = {
175
175
  ariaLabel: E?.copyAsMarkdown ?? "Copy as markdown",
176
176
  isDisabled: x
177
177
  }),
178
- f && /* @__PURE__ */ F(g, {
179
- icon: v === i.Like ? /* @__PURE__ */ F(ne, {
180
- className: J.activeRating,
178
+ f && /* @__PURE__ */ I(g, {
179
+ icon: v === i.Like ? /* @__PURE__ */ I(te, {
180
+ className: q.activeRating,
181
181
  size: p.SM,
182
182
  "aria-hidden": !0
183
- }) : /* @__PURE__ */ F(N, {
183
+ }) : /* @__PURE__ */ I(P, {
184
184
  size: p.SM,
185
185
  "aria-hidden": !0,
186
186
  stroke: m
@@ -192,12 +192,12 @@ var R = {
192
192
  onClick: f,
193
193
  disabled: x
194
194
  }),
195
- _ && /* @__PURE__ */ F(g, {
196
- icon: v === i.Dislike ? /* @__PURE__ */ F(te, {
197
- className: J.activeRating,
195
+ _ && /* @__PURE__ */ I(g, {
196
+ icon: v === i.Dislike ? /* @__PURE__ */ I(N, {
197
+ className: q.activeRating,
198
198
  size: p.SM,
199
199
  "aria-hidden": !0
200
- }) : /* @__PURE__ */ F(M, {
200
+ }) : /* @__PURE__ */ I(M, {
201
201
  size: p.SM,
202
202
  "aria-hidden": !0,
203
203
  stroke: m
@@ -211,107 +211,111 @@ var R = {
211
211
  })
212
212
  ] })]
213
213
  }) : null;
214
- }, X = {
214
+ }, Y = {
215
215
  userBubble: "_userBubble_cq829_1",
216
216
  collapsibleText: "_collapsibleText_cq829_6",
217
217
  expandedText: "_expandedText_cq829_11",
218
218
  collapsedText: "_collapsedText_cq829_15",
219
219
  startersDivider: "_startersDivider_cq829_26",
220
220
  text: "_text_cq829_30"
221
- }, oe = "[&>.cm-bubble-markdown>div>*:first-child]:indent-[var(--cm-bubble-first-line-indent,0px)]", Z = ({ text: t, contentRef: i, styles: l, actions: d, hasAlwaysVisibleActions: f, isStreaming: p, attachments: m, beforeContent: h, responseFormat: g, afterContent: _, hasThinkingPlaceholder: v = !0, starters: b, onSelectStarter: x, deploymentIconUrl: S, deploymentDisplayName: C, markdownComponents: w, markdownClassNames: T, markdownUrlTransform: E, onAttachmentClick: D, onDownloadAll: O, onAttachmentRetry: k, codeBlockTheme: A, tableOnOpenInCanvas: j, labels: M, selectedAttachmentId: te }) => {
222
- let { colors: N, typography: ne, className: re, bubbleClassName: P } = l ?? {}, { attachmentClickLabel: L, attachmentRetryLabel: z, attachmentOpenInNewTabLabel: V, startersAriaLabel: H = "Quick reply buttons", thinkingLabel: U, codeBlockCopyLabel: W, codeBlockCopiedLabel: G, codeBlockDownloadLabel: K, tableCopyLabel: q, tableCopiedLabel: J, tableDownloadCsvLabel: Y, tableOpenInCanvasLabel: Z, tableDownloadFilename: Q, tableScrollRegionAriaLabel: $, mathScrollRegionAriaLabel: se, assistantMessageAriaLabel: ce = "Assistant message", deploymentIconFallbackLabel: le = "AI" } = M ?? {}, ue = ee(() => ({
221
+ }, se = "[&>.cm-bubble-markdown>div>*:first-child]:indent-[var(--cm-bubble-first-line-indent,0px)]", X = ({ text: t, contentRef: i, styles: l, actions: d, hasAlwaysVisibleActions: f, isStreaming: p, attachments: m, beforeContent: h, responseFormat: g, afterContent: _, hasThinkingPlaceholder: v = !0, starters: b, onSelectStarter: x, deploymentIconUrl: S, deploymentDisplayName: C, markdownComponents: w, markdownClassNames: T, markdownUrlTransform: E, onAttachmentClick: D, onDownloadAll: O, onAttachmentRetry: k, codeBlockTheme: A, tableOnOpenInCanvas: j, labels: M, selectedAttachmentId: N }) => {
222
+ let { colors: P, typography: te, className: ne, bubbleClassName: F } = l ?? {}, { attachmentClickLabel: R, attachmentDownloadLabel: B, attachmentRetryLabel: H, attachmentOpenInNewTabLabel: U, startersAriaLabel: W = "Quick reply buttons", thinkingLabel: G, codeBlockCopyLabel: K, codeBlockCopiedLabel: re, codeBlockDownloadLabel: ie, tableCopyLabel: q, tableCopiedLabel: J, tableDownloadCsvLabel: X, tableOpenInCanvasLabel: Z, tableDownloadFilename: Q, tableScrollRegionAriaLabel: ce, mathScrollRegionAriaLabel: $, assistantMessageAriaLabel: le = "Assistant message", deploymentIconFallbackLabel: ue = "AI" } = M ?? {}, de = ee(() => ({
223
223
  copyLabel: q,
224
224
  copiedLabel: J,
225
- downloadCsvLabel: Y,
225
+ downloadCsvLabel: X,
226
226
  openInCanvasLabel: Z
227
227
  }), [
228
228
  q,
229
229
  J,
230
- Y,
230
+ X,
231
231
  Z
232
- ]), de = p ? (m ?? []).filter((t) => t.type !== e.Audio) : m ?? [], { slotRef: fe, firstLineIndent: pe } = B(h != null && !!t), me = s({
233
- "--cm-bubble-text": N?.text,
234
- "--cm-starters-divider": N?.startersDivider,
235
- "--cm-bubble-first-line-indent": pe
236
- }), he = c(X.text, ne?.fontClassName), ge = !!(S || C);
237
- return /* @__PURE__ */ I("div", {
232
+ ]), fe = p ? (m ?? []).filter((t) => t.type !== e.Audio) : m ?? [], { slotRef: pe, firstLineIndent: me } = V(h != null && !!t), he = s({
233
+ "--cm-bubble-text": P?.text,
234
+ "--cm-starters-divider": P?.startersDivider,
235
+ "--cm-bubble-first-line-indent": me
236
+ }), ge = c(Y.text, te?.fontClassName), _e = !!(S || C);
237
+ return /* @__PURE__ */ L("div", {
238
238
  role: "group",
239
- "aria-label": ce,
240
- style: me,
241
- onCopy: ie,
242
- className: c("flex w-full items-start gap-3", re),
243
- children: [ge && /* @__PURE__ */ F(n, {
239
+ "aria-label": le,
240
+ style: he,
241
+ onCopy: ae,
242
+ className: c("flex w-full items-start gap-3", ne),
243
+ children: [_e && /* @__PURE__ */ I(n, {
244
244
  src: S,
245
245
  size: 28,
246
- initialsName: C || le,
247
- labels: { tooltip: C ?? le }
248
- }), /* @__PURE__ */ I("div", {
246
+ initialsName: C || ue,
247
+ labels: { tooltip: C ?? ue }
248
+ }), /* @__PURE__ */ L("div", {
249
249
  className: "flex w-full min-w-0 max-w-full flex-col items-start gap-5",
250
- children: [/* @__PURE__ */ I("div", {
251
- className: c("flex w-full min-w-0 max-w-full flex-col items-start gap-4", P),
250
+ children: [/* @__PURE__ */ L("div", {
251
+ className: c("flex w-full min-w-0 max-w-full flex-col items-start gap-4", F),
252
252
  children: [
253
- h != null && !t && /* @__PURE__ */ F("div", {
253
+ h != null && !t && /* @__PURE__ */ I("div", {
254
254
  className: "min-w-0",
255
255
  children: h
256
256
  }),
257
- (t || p && v) && /* @__PURE__ */ I("div", {
257
+ (t || p && v) && /* @__PURE__ */ L("div", {
258
258
  "aria-live": "polite",
259
259
  "aria-atomic": "false",
260
- className: c(he, "relative min-w-0 max-w-full text-start", h != null && t && oe, R.assistantContent),
261
- children: [h != null && t && /* @__PURE__ */ F("div", {
262
- ref: fe,
260
+ className: c(ge, "relative min-w-0 max-w-full text-start", h != null && t && se, z.assistantContent),
261
+ children: [h != null && t && /* @__PURE__ */ I("div", {
262
+ ref: pe,
263
263
  className: "absolute start-0 top-0",
264
264
  children: h
265
- }), /* @__PURE__ */ F("div", {
265
+ }), /* @__PURE__ */ I("div", {
266
266
  ref: i,
267
267
  className: "cm-bubble-markdown min-w-0 max-w-full",
268
- children: /* @__PURE__ */ F(r, {
268
+ children: /* @__PURE__ */ I(r, {
269
269
  content: t ?? "",
270
270
  isPlainText: g === o.PlainText,
271
271
  isStreaming: p,
272
- thinkingLabel: U,
272
+ thinkingLabel: G,
273
273
  components: w,
274
274
  classNames: T,
275
275
  urlTransform: E,
276
- codeBlockCopyLabel: W,
277
- codeBlockCopiedLabel: G,
278
- codeBlockDownloadLabel: K,
276
+ codeBlockCopyLabel: K,
277
+ codeBlockCopiedLabel: re,
278
+ codeBlockDownloadLabel: ie,
279
279
  codeBlockTheme: A,
280
- tableActionLabels: ue,
280
+ tableActionLabels: de,
281
281
  tableDownloadFilename: Q,
282
282
  tableOnOpenInCanvas: j,
283
- tableScrollRegionAriaLabel: $,
284
- mathScrollRegionAriaLabel: se
283
+ tableScrollRegionAriaLabel: ce,
284
+ mathScrollRegionAriaLabel: $
285
285
  })
286
286
  })]
287
287
  }),
288
- /* @__PURE__ */ F(u, {
289
- attachments: de,
290
- onAttachmentClick: (e) => D?.(m?.find((t) => t.id === e)),
288
+ /* @__PURE__ */ I(u, {
289
+ attachments: fe,
290
+ onAttachmentClick: D ? (e) => {
291
+ let t = m?.find((t) => t.id === e);
292
+ t && D(t);
293
+ } : void 0,
291
294
  onDownloadAll: O,
292
295
  onRetry: k,
293
296
  labels: {
294
- clickLabel: L,
295
- retryLabel: z,
296
- openInNewTabLabel: V
297
+ clickLabel: R,
298
+ downloadLabel: B,
299
+ retryLabel: H,
300
+ openInNewTabLabel: U
297
301
  },
298
- selectedAttachmentId: te
302
+ selectedAttachmentId: N
299
303
  }),
300
304
  _,
301
- /* @__PURE__ */ F(ae, {
305
+ /* @__PURE__ */ I(oe, {
302
306
  ...d,
303
307
  isAlwaysVisible: f,
304
308
  role: a.Assistant
305
309
  })
306
310
  ]
307
- }), b && b.length > 0 && x && /* @__PURE__ */ F("div", {
311
+ }), b && b.length > 0 && x && /* @__PURE__ */ I("div", {
308
312
  role: "list",
309
- "aria-label": H,
310
- className: c("flex w-full flex-wrap gap-2 border-t pt-5", X.startersDivider),
311
- children: b.map((e, t) => /* @__PURE__ */ F("div", {
313
+ "aria-label": W,
314
+ className: c("flex w-full flex-wrap gap-2 border-t pt-5", Y.startersDivider),
315
+ children: b.map((e, t) => /* @__PURE__ */ I("div", {
312
316
  role: "listitem",
313
317
  className: "min-w-[40px]",
314
- children: /* @__PURE__ */ F(y, {
318
+ children: /* @__PURE__ */ I(y, {
315
319
  label: e.title,
316
320
  className: "min-w-[40px]",
317
321
  onClick: () => x(e)
@@ -320,79 +324,83 @@ var R = {
320
324
  })]
321
325
  })]
322
326
  });
323
- }, Q = ({ labels: { titleText: e = "Model switched.", bodyText: t } }) => /* @__PURE__ */ F("div", {
327
+ }, Z = ({ labels: { titleText: e = "Model switched.", bodyText: t } }) => /* @__PURE__ */ I("div", {
324
328
  role: "status",
325
329
  "aria-live": "polite",
326
- children: /* @__PURE__ */ F(_, {
330
+ children: /* @__PURE__ */ I(_, {
327
331
  title: e,
328
332
  message: t,
329
333
  textClassName: "flex-row flex-wrap gap-1"
330
334
  })
331
- }), $ = /* @__PURE__ */ function(e) {
335
+ }), Q = /* @__PURE__ */ function(e) {
332
336
  return e.Bottom = "Bottom", e.Top = "Top", e;
333
- }({}), se = 10, ce = ({ text: e, contentRef: t, position: n = $.Bottom, styles: r, actions: i, hasAlwaysVisibleActions: o, attachments: d, collapsedLineCount: f = se, labels: m, textSegments: g, onAttachmentClick: _, onDownloadAll: y, onAttachmentRetry: b, selectedAttachmentId: x }) => {
334
- let { colors: C, typography: ee, className: w, bubbleClassName: T } = r ?? {}, { showMoreLabel: E = "Show more", showLessLabel: k = "Show less", showMoreAriaLabel: A, showLessAriaLabel: j, attachmentClickLabel: M, attachmentRetryLabel: te, attachmentOpenInNewTabLabel: N, userMessageAriaLabel: ne = "User message" } = m ?? {}, { textRef: re, isTextCollapsed: L, isOverflowing: z, collapsedMaxHeight: B, expandedMaxHeight: V, isCollapsed: H, toggleCollapsed: U } = l({
337
+ }({}), ce = 10, $ = ({ text: e, contentRef: t, position: n = Q.Bottom, styles: r, actions: i, hasAlwaysVisibleActions: o, attachments: d, collapsedLineCount: f = ce, labels: m, textSegments: g, onAttachmentClick: _, onDownloadAll: y, onAttachmentRetry: b, selectedAttachmentId: x }) => {
338
+ let { colors: C, typography: ee, className: w, bubbleClassName: T } = r ?? {}, { showMoreLabel: E = "Show more", showLessLabel: k = "Show less", showMoreAriaLabel: A, showLessAriaLabel: j, attachmentClickLabel: M, attachmentDownloadLabel: N, attachmentRetryLabel: P, attachmentOpenInNewTabLabel: te, userMessageAriaLabel: ne = "User message" } = m ?? {}, { textRef: R, isTextCollapsed: B, isOverflowing: V, collapsedMaxHeight: H, expandedMaxHeight: U, isCollapsed: W, toggleCollapsed: G } = l({
335
339
  text: e ?? "",
336
340
  collapsedLineCount: f
337
- }), W = s({
341
+ }), K = s({
338
342
  "--cm-bubble-user-bg": C?.userBackground,
339
343
  "--cm-bubble-user-border": C?.userBorder,
340
344
  "--cm-bubble-fade-start": C?.fadeStart,
341
345
  "--cm-bubble-text": C?.text,
342
- "--cm-bubble-collapsed-height": z ? `${B}px` : void 0,
343
- "--cm-bubble-expanded-height": z ? `${V}px` : void 0
344
- }), G = n === $.Top ? "rounded-ee-md rounded-se-2xl" : "rounded-se-md rounded-ee-2xl", K = c(X.text, ee?.fontClassName), q = A ?? E, J = j ?? k, Y = H ? E : k, oe = H ? q : J, Z = H ? D : O, Q = S();
345
- return /* @__PURE__ */ F("div", {
346
+ "--cm-bubble-collapsed-height": V ? `${H}px` : void 0,
347
+ "--cm-bubble-expanded-height": V ? `${U}px` : void 0
348
+ }), re = n === Q.Top ? "rounded-ee-md rounded-se-2xl" : "rounded-se-md rounded-ee-2xl", ie = c(Y.text, ee?.fontClassName), q = A ?? E, J = j ?? k, se = W ? E : k, X = W ? q : J, Z = W ? D : O, $ = S();
349
+ return /* @__PURE__ */ I("div", {
346
350
  role: "group",
347
351
  "aria-label": ne,
348
- style: W,
349
- onCopy: ie,
352
+ style: K,
353
+ onCopy: ae,
350
354
  className: c("flex w-full", w),
351
- children: /* @__PURE__ */ I("div", {
355
+ children: /* @__PURE__ */ L("div", {
352
356
  className: "ms-auto flex w-fit min-w-0 max-w-full flex-col items-end gap-4",
353
357
  children: [
354
- /* @__PURE__ */ F(u, {
358
+ /* @__PURE__ */ I(u, {
355
359
  attachments: d ?? [],
356
- onAttachmentClick: (e) => _?.(d?.find((t) => t.id === e)),
360
+ onAttachmentClick: _ ? (e) => {
361
+ let t = d?.find((t) => t.id === e);
362
+ t && _(t);
363
+ } : void 0,
357
364
  onDownloadAll: y,
358
365
  onRetry: b,
359
366
  labels: {
360
367
  clickLabel: M,
361
- retryLabel: te,
362
- openInNewTabLabel: N
368
+ downloadLabel: N,
369
+ retryLabel: P,
370
+ openInNewTabLabel: te
363
371
  },
364
372
  styles: { className: "max-w-[640px]" },
365
373
  selectedAttachmentId: x
366
374
  }),
367
- e && /* @__PURE__ */ F("div", {
368
- className: c(X.userBubble, "flex w-fit items-center justify-end rounded-es-2xl rounded-ss-2xl border px-6 py-4", G, T, R.userBubble),
369
- children: /* @__PURE__ */ I("div", {
375
+ e && /* @__PURE__ */ I("div", {
376
+ className: c(Y.userBubble, "flex w-fit items-center justify-end rounded-es-2xl rounded-ss-2xl border px-6 py-4", re, T, z.userBubble),
377
+ children: /* @__PURE__ */ L("div", {
370
378
  className: "flex min-w-0 flex-col items-start",
371
- children: [/* @__PURE__ */ F("div", {
372
- id: Q,
379
+ children: [/* @__PURE__ */ I("div", {
380
+ id: $,
373
381
  ref: t,
374
- className: c("relative -me-1 -ms-1 w-[calc(100%+8px)] overflow-hidden pe-1 ps-1", z && X.collapsibleText, z && !H && X.expandedText, L && X.collapsedText),
375
- children: /* @__PURE__ */ F("p", {
376
- ref: re,
377
- className: c(K, "whitespace-pre-wrap text-start [overflow-wrap:anywhere]"),
382
+ className: c("relative -me-1 -ms-1 w-[calc(100%+8px)] overflow-hidden pe-1 ps-1", V && Y.collapsibleText, V && !W && Y.expandedText, B && Y.collapsedText),
383
+ children: /* @__PURE__ */ I("p", {
384
+ ref: R,
385
+ className: c(ie, "whitespace-pre-wrap text-start [overflow-wrap:anywhere]"),
378
386
  children: g ?? e
379
387
  })
380
- }), z && /* @__PURE__ */ F(v, {
381
- label: /* @__PURE__ */ F(P, { children: Y }),
382
- iconBefore: /* @__PURE__ */ F(Z, {
388
+ }), V && /* @__PURE__ */ I(v, {
389
+ label: /* @__PURE__ */ I(F, { children: se }),
390
+ iconBefore: /* @__PURE__ */ I(Z, {
383
391
  size: p.SM,
384
392
  "aria-hidden": "true"
385
393
  }),
386
- "aria-label": oe,
387
- "aria-expanded": !H,
388
- "aria-controls": Q,
394
+ "aria-label": X,
395
+ "aria-expanded": !W,
396
+ "aria-controls": $,
389
397
  className: "mt-3",
390
- onClick: U,
398
+ onClick: G,
391
399
  size: h.Small
392
400
  })]
393
401
  })
394
402
  }),
395
- /* @__PURE__ */ F(ae, {
403
+ /* @__PURE__ */ I(oe, {
396
404
  ...i,
397
405
  isAlwaysVisible: o,
398
406
  role: a.User
@@ -400,14 +408,14 @@ var R = {
400
408
  ]
401
409
  })
402
410
  });
403
- }, le = ({ role: e, beforeContent: t, textSegments: n, onAttachmentClick: r, responseFormat: i, markdownComponents: o, markdownUrlTransform: s, ...c }) => e === a.Status ? /* @__PURE__ */ F(Q, { labels: {
411
+ }, le = ({ role: e, beforeContent: t, textSegments: n, onAttachmentClick: r, responseFormat: i, markdownComponents: o, markdownUrlTransform: s, ...c }) => e === a.Status ? /* @__PURE__ */ I(Z, { labels: {
404
412
  titleText: c.labels?.statusTitleText,
405
413
  bodyText: c.labels?.statusBodyText ?? ""
406
- } }) : e === a.User ? /* @__PURE__ */ F(ce, {
414
+ } }) : e === a.User ? /* @__PURE__ */ I($, {
407
415
  ...c,
408
416
  textSegments: n,
409
417
  onAttachmentClick: r
410
- }) : /* @__PURE__ */ F(Z, {
418
+ }) : /* @__PURE__ */ I(X, {
411
419
  ...c,
412
420
  beforeContent: t,
413
421
  responseFormat: i,
@@ -438,33 +446,33 @@ var R = {
438
446
  g,
439
447
  _,
440
448
  i.reply
441
- ]), v ? L(/* @__PURE__ */ I(P, { children: [e && /* @__PURE__ */ F("div", {
449
+ ]), v ? R(/* @__PURE__ */ L(F, { children: [e && /* @__PURE__ */ I("div", {
442
450
  ref: t,
443
451
  className: c("fixed left-0 top-0 z-50 max-w-[calc(100vw-16px)]", p),
444
452
  style: {
445
453
  ...y,
446
454
  transform: `translate(${b.x}px, ${b.y}px)`
447
455
  },
448
- children: /* @__PURE__ */ F(d, {
456
+ children: /* @__PURE__ */ I(d, {
449
457
  variant: f.Neutral,
450
458
  size: h.Small,
451
459
  label: i.reply,
452
460
  onClick: n,
453
461
  textClassName: _,
454
462
  className: c(ue.button, "h-8 min-h-8 min-w-11 px-2 shadow-lg mobile:h-11 mobile:min-h-11", g),
455
- iconAfter: /* @__PURE__ */ F(E, {
463
+ iconAfter: /* @__PURE__ */ I(E, {
456
464
  size: 16,
457
465
  stroke: m,
458
466
  "aria-hidden": "true",
459
467
  className: "rtl:scale-x-[-1]"
460
468
  })
461
469
  })
462
- }), /* @__PURE__ */ F("div", {
470
+ }), /* @__PURE__ */ I("div", {
463
471
  role: "status",
464
472
  "aria-live": "polite",
465
473
  className: "sr-only",
466
- children: e ? i.selectionAvailable : r > 0 ? /* @__PURE__ */ F("span", { children: i.attachmentAdded }, r) : null
474
+ children: e ? i.selectionAvailable : r > 0 ? /* @__PURE__ */ I("span", { children: i.attachmentAdded }, r) : null
467
475
  })] }), v) : null;
468
476
  };
469
477
  //#endregion
470
- export { Z as AssistantMessageBubble, $ as BubblePosition, R as CONVERSATION_MESSAGES_CLASS, ae as MessageActions, le as MessageBubble, de as MessageSelectionReply, Q as StatusMessageBubble, ce as UserMessageBubble };
478
+ export { X as AssistantMessageBubble, Q as BubblePosition, z as CONVERSATION_MESSAGES_CLASS, oe as MessageActions, le as MessageBubble, de as MessageSelectionReply, Z as StatusMessageBubble, $ as UserMessageBubble };
@@ -48,6 +48,8 @@ export interface MessageBubbleLabels {
48
48
  assistantMessageAriaLabel?: string;
49
49
  /** aria-label for interactive attachment tiles. */
50
50
  attachmentClickLabel?: string;
51
+ /** aria-label for each file tile's own download button (rendered when `onDownloadAll` is given). Defaults to `'Download attachment'`. */
52
+ attachmentDownloadLabel?: string;
51
53
  /** aria-label for the attachment retry button. */
52
54
  attachmentRetryLabel?: string;
53
55
  /** aria-label for the attachment open-in-new-tab button. */
@@ -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":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,iBAAiB,EACjB,0BAA0B,EAC1B,WAAW,EACX,cAAc,EACd,aAAa,EACd,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAE7D,mEAAmE;AACnE,MAAM,WAAW,mBAAmB;IAClC,mDAAmD;IACnD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,+CAA+C;IAC/C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2FAA2F;IAC3F,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iDAAiD;IACjD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,kFAAkF;IAClF,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,0DAA0D;AAC1D,MAAM,WAAW,uBAAuB;IACtC,0DAA0D;IAC1D,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,oEAAoE;AACpE,MAAM,WAAW,mBAAmB;IAClC,wDAAwD;IACxD,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,8DAA8D;IAC9D,UAAU,CAAC,EAAE,uBAAuB,CAAC;IACrC,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6CAA6C;IAC7C,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,sDAAsD;AACtD,MAAM,WAAW,mBAAmB;IAClC,sDAAsD;IACtD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,wDAAwD;IACxD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qEAAqE;IACrE,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,uEAAuE;IACvE,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,2EAA2E;IAC3E,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,qFAAqF;IACrF,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,mDAAmD;IACnD,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,yIAAyI;IACzI,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,kDAAkD;IAClD,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,4DAA4D;IAC5D,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,mHAAmH;IACnH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,oFAAoF;IACpF,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,mEAAmE;AACnE,MAAM,WAAW,4BAA6B,SAAQ,mBAAmB;IACvE,gFAAgF;IAChF,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qGAAqG;IACrG,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iDAAiD;IACjD,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,+DAA+D;IAC/D,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,qDAAqD;IACrD,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,iFAAiF;IACjF,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,+DAA+D;IAC/D,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,qDAAqD;IACrD,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,wDAAwD;IACxD,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,8DAA8D;IAC9D,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,iEAAiE;IACjE,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,gEAAgE;IAChE,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,uEAAuE;IACvE,2BAA2B,CAAC,EAAE,MAAM,CAAC;CACtC;AAED,qEAAqE;AACrE,UAAU,sBAAsB;IAC9B,gFAAgF;IAChF,UAAU,CAAC,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC;IACjC,kHAAkH;IAClH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,uEAAuE;IACvE,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,2DAA2D;IAC3D,OAAO,CAAC,EAAE,mBAAmB,CAAC;IAC9B,wEAAwE;IACxE,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,oFAAoF;IACpF,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,4EAA4E;IAC5E,WAAW,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAClC,kEAAkE;IAClE,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,2CAA2C;IAC3C,iBAAiB,CAAC,EAAE,CAAC,UAAU,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC5D,gFAAgF;IAChF,aAAa,CAAC,EAAE,CAAC,WAAW,EAAE,iBAAiB,EAAE,KAAK,IAAI,CAAC;IAC3D,wDAAwD;IACxD,iBAAiB,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,kHAAkH;IAClH,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,qCAAqC;AACrC,MAAM,WAAW,sBAAuB,SAAQ,sBAAsB;IACpE,4FAA4F;IAC5F,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,mGAAmG;IACnG,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;;;;;OAQG;IACH,YAAY,CAAC,EAAE,SAAS,EAAE,CAAC;CAC5B;AAED,0CAA0C;AAC1C,MAAM,WAAW,2BAA4B,SAAQ,sBAAsB;IACzE;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC;;;;;;;;;OASG;IACH,aAAa,CAAC,EAAE,SAAS,CAAC;IAC1B,yHAAyH;IACzH,kBAAkB,CAAC,EAAE,UAAU,CAAC;IAChC,2JAA2J;IAC3J,kBAAkB,CAAC,EAAE,0BAA0B,CAAC;IAChD;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;IAC/C,0EAA0E;IAC1E,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC;IAC3B,8CAA8C;IAC9C,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,CAAC;IACnD,2FAA2F;IAC3F,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,gKAAgK;IAChK,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,6DAA6D;IAC7D,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,2DAA2D;IAC3D,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,oEAAoE;IACpE,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,kEAAkE;IAClE,mBAAmB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACjD,+FAA+F;IAC/F,MAAM,CAAC,EAAE,4BAA4B,CAAC;CACvC;AAED,kGAAkG;AAClG,MAAM,MAAM,kBAAkB,GAAG,2BAA2B,GAC1D,IAAI,CACF,sBAAsB,EACtB,UAAU,GAAG,oBAAoB,GAAG,cAAc,CACnD,GAAG;IACF,8DAA8D;IAC9D,IAAI,EAAE,WAAW,CAAC;CACnB,CAAC"}
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.288",
4
+ "version": "1.2.0-dev.300",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
7
7
  "main": "./index.js",
@@ -19,13 +19,13 @@
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.288"
22
+ "@epam/ai-dial-attachment-input": "1.2.0-dev.300"
23
23
  },
24
24
  "peerDependencies": {
25
25
  "react": "^19.2.8",
26
26
  "react-dom": "^19.2.8",
27
- "@epam/ai-dial-chat-shared": "1.2.0-dev.288",
28
- "@epam/ai-dial-ui-kit": "^0.15.0-dev.36"
27
+ "@epam/ai-dial-chat-shared": "1.2.0-dev.300",
28
+ "@epam/ai-dial-ui-kit": "^0.15.0-dev.39"
29
29
  },
30
30
  "repository": {
31
31
  "type": "git",