@epam/ai-dial-attachment-canvas 1.1.0-dev.44 → 1.1.0-dev.441

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/LazyContentBoundary-CL7J_W9c.js +166 -0
  2. package/PdfContent-solOLCRi.js +239 -0
  3. package/PdfContent.css +1 -0
  4. package/attachment-canvas-Bp6WeQws.js +12 -0
  5. package/bounded-raw-part-cache-BfbSxRIL-DD07NKh9.js +37832 -0
  6. package/chart-ex-B0DgG3Dt.js +1009 -0
  7. package/comment-occurrence-CqejEuts-7SeKCBXk.js +6 -0
  8. package/comment-ui-runtime-DEtgcmj7-B1G7PH4z.js +170 -0
  9. package/comment-ui-runtime-TLHustXJ-DWCXG2mL.js +2 -0
  10. package/comment-ui-runtime-lXwVOgjW-Be4RALsI.js +112 -0
  11. package/comments-CAn2A_Xh-CdgNAj0h.js +282 -0
  12. package/components/AttachmentCanvas/AttachmentCanvas.d.ts +1 -0
  13. package/components/AttachmentCanvas/AttachmentCanvas.d.ts.map +1 -1
  14. package/components/AttachmentCanvasBody/AttachmentCanvasBody.d.ts +4 -0
  15. package/components/AttachmentCanvasBody/AttachmentCanvasBody.d.ts.map +1 -0
  16. package/components/AttachmentCanvasContainer/AttachmentCanvasContainer.d.ts +14 -0
  17. package/components/AttachmentCanvasContainer/AttachmentCanvasContainer.d.ts.map +1 -1
  18. package/components/CodeContent/CodeContent.d.ts +24 -0
  19. package/components/CodeContent/CodeContent.d.ts.map +1 -0
  20. package/components/HtmlContent/HtmlContent.d.ts +21 -0
  21. package/components/HtmlContent/HtmlContent.d.ts.map +1 -0
  22. package/components/LazyContentBoundary/LazyContentBoundary.d.ts +73 -0
  23. package/components/LazyContentBoundary/LazyContentBoundary.d.ts.map +1 -0
  24. package/components/McpAppCanvasRenderer/McpAppCanvasRenderer.d.ts +12 -0
  25. package/components/McpAppCanvasRenderer/McpAppCanvasRenderer.d.ts.map +1 -0
  26. package/components/OoxmlContent/OoxmlContent.d.ts +22 -0
  27. package/components/OoxmlContent/OoxmlContent.d.ts.map +1 -0
  28. package/components/PdfContent/PdfContent.d.ts +56 -0
  29. package/components/PdfContent/PdfContent.d.ts.map +1 -1
  30. package/components/VisualizerCanvasRenderer/VisualizerCanvasRenderer.d.ts +25 -0
  31. package/components/VisualizerCanvasRenderer/VisualizerCanvasRenderer.d.ts.map +1 -0
  32. package/constants/file.d.ts +8 -0
  33. package/constants/file.d.ts.map +1 -1
  34. package/context/AttachmentCanvasContext.d.ts +5 -3
  35. package/context/AttachmentCanvasContext.d.ts.map +1 -1
  36. package/delimited-text-worker-host-DcHj_JZt-DWJmaPag.js +25 -0
  37. package/docx-B9qBTEkj.js +29822 -0
  38. package/hooks/useOpenAttachmentCanvas/useOpenAttachmentCanvas.d.ts +64 -0
  39. package/hooks/useOpenAttachmentCanvas/useOpenAttachmentCanvas.d.ts.map +1 -0
  40. package/index.css +1 -2
  41. package/index.d.ts +11 -3
  42. package/index.d.ts.map +1 -1
  43. package/index.js +1123 -17237
  44. package/line-distribute-IsUGfHXm-DeITjLzJ.js +1234 -0
  45. package/line-metrics-CBbw80Ko-DoOuwYxZ.js +60 -0
  46. package/models/attachment-canvas.d.ts +314 -11
  47. package/models/attachment-canvas.d.ts.map +1 -1
  48. package/ooxml-highlight-surfaces-BhfVZvru.js +294 -0
  49. package/package.json +17 -9
  50. package/pptx-dkJw0-Vx.js +9179 -0
  51. package/read-only-comment-decoration-BTnWEeo5-BNhbteYc.js +94 -0
  52. package/read-only-comment-margin-plStyGfE-mggNAMB_.js +189 -0
  53. package/render-worker-host-BEfLZvSL-COy91Rd8.js +7 -0
  54. package/render-worker-host-Ba6Fchqr-DZeKpMWD.js +7 -0
  55. package/render-worker-host-C3xwtHnv-BBGHFdo9.js +7 -0
  56. package/renderer-module-contract-Cu-GKuPd-Bt0YZuzB.js +10063 -0
  57. package/types/attachment-canvas.d.ts +22 -0
  58. package/types/attachment-canvas.d.ts.map +1 -1
  59. package/utils/content.d.ts +11 -0
  60. package/utils/content.d.ts.map +1 -1
  61. package/utils/download.d.ts.map +1 -1
  62. package/utils/ooxml-highlight-geometry.d.ts +158 -0
  63. package/utils/ooxml-highlight-geometry.d.ts.map +1 -0
  64. package/utils/ooxml-highlight-surfaces.d.ts +42 -0
  65. package/utils/ooxml-highlight-surfaces.d.ts.map +1 -0
  66. package/utils/visualizer.d.ts +8 -0
  67. package/utils/visualizer.d.ts.map +1 -0
  68. package/utils/vite-external-matcher.d.ts +16 -0
  69. package/utils/vite-external-matcher.d.ts.map +1 -0
  70. package/visible-index-DPoQYSDt-9lRc-2Ik.js +162 -0
  71. package/xlsx-BAXMTJTG.js +8585 -0
@@ -0,0 +1,60 @@
1
+ //#region ../../node_modules/@silurus/ooxml/dist/line-metrics-CBbw80Ko.js
2
+ var e = [
3
+ [(e) => e.includes("meiryo ui") || e.includes("meiryoui") || e.includes("メイリオ") && e.includes("ui"), {
4
+ asc: 2171 * 1.3 / 2048,
5
+ desc: 430 * 1.3 / 2048,
6
+ eaOnly: !0
7
+ }],
8
+ [(e) => e.includes("meiryo") || e.includes("メイリオ"), {
9
+ asc: 2210 / 2048,
10
+ desc: 1059 / 2048
11
+ }],
12
+ [(e) => !e.includes("ui") && (e.includes("yu mincho") || e.includes("yumincho") || e.includes("游明朝") || e.includes("yu gothic") || e.includes("yugothic") || e.includes("游ゴシック")), {
13
+ asc: 1802 * 1.3 / 2048,
14
+ desc: 455 * 1.3 / 2048,
15
+ eaOnly: !0
16
+ }],
17
+ [(e) => e.includes("sakkal majalla") || e.includes("majalla"), {
18
+ asc: 1810 / 2048,
19
+ desc: 1050 / 2048
20
+ }],
21
+ [(e) => e === "times new roman", {
22
+ asc: 1825 / 2048,
23
+ desc: 530 / 2048
24
+ }],
25
+ [(e) => e === "arial", {
26
+ asc: 1854 / 2048,
27
+ desc: 501 / 2048
28
+ }]
29
+ ];
30
+ function t(t, n) {
31
+ if (!t) return null;
32
+ let r = t.toLowerCase();
33
+ for (let [t, i] of e) if (t(r) && (n || !i.eaOnly)) return i;
34
+ return null;
35
+ }
36
+ function n(e, n = !1) {
37
+ let r = t(e, n);
38
+ return r === null ? null : r.asc + r.desc;
39
+ }
40
+ function r(e, t, r = !1) {
41
+ let i = n(e, r);
42
+ return i === null ? 0 : i * t;
43
+ }
44
+ function i(e, n, r, i, a = !1) {
45
+ let o = t(e, a);
46
+ if (o === null) return {
47
+ ascent: r,
48
+ descent: i
49
+ };
50
+ let s = (o.asc + o.desc) * n;
51
+ return r + i <= s ? {
52
+ ascent: r,
53
+ descent: i
54
+ } : {
55
+ ascent: o.asc * n,
56
+ descent: o.desc * n
57
+ };
58
+ }
59
+ //#endregion
60
+ export { r as n, i as t };
@@ -1,8 +1,10 @@
1
- import { CodeBlockTheme } from '@epam/ai-dial-chat-shared';
1
+ import { CodeBlockTheme, CustomVisualizerDataLayout } from '@epam/ai-dial-chat-shared';
2
2
  import { SidebarPanelStyles } from '@epam/ai-dial-sidebar';
3
3
  import { InputHighlightData } from '@epam/pdf-highlighter-kit';
4
+ import { McpUiHostContext } from '@mcp-ui/client';
5
+ import { CallToolResult } from '@modelcontextprotocol/sdk/types.js';
4
6
  import { CSSProperties } from 'react';
5
- import { AttachmentContentType, AttachmentErrorType } from '../types/attachment-canvas';
7
+ import { AttachmentContentType, AttachmentErrorType, OoxmlFileType, OoxmlHighlightKind } from '../types/attachment-canvas';
6
8
  /** Content payload for plain-text attachments. */
7
9
  export interface PlainTextCanvasContent {
8
10
  /** Discriminates the content type to select the correct renderer. */
@@ -24,6 +26,13 @@ export interface MarkdownCanvasContent {
24
26
  /** Raw Markdown string to render. */
25
27
  text: string;
26
28
  }
29
+ /** Content payload for a Markdown table opened standalone (e.g. via a table's "open in canvas" action). */
30
+ export interface MarkdownTableCanvasContent {
31
+ /** Discriminates the content type to select the correct renderer. */
32
+ type: AttachmentContentType.MarkdownTable;
33
+ /** The table serialized back to Markdown syntax. */
34
+ text: string;
35
+ }
27
36
  /** Content payload for JSON file attachments. */
28
37
  export interface JsonCanvasContent {
29
38
  /** Discriminates the content type to select the correct renderer. */
@@ -41,6 +50,78 @@ export interface PdfCanvasContent {
41
50
  highlights?: InputHighlightData[];
42
51
  /** ID of the highlight to scroll to and select on initial load. */
43
52
  selectedHighlightId?: string;
53
+ /** 1-based page to navigate to on initial load, independent of highlight geometry. */
54
+ page?: number;
55
+ }
56
+ /** A cited character range inside a DOCX story, addressed by story name and source-tree path. */
57
+ export interface OoxmlDocxHighlightLocation {
58
+ /** Discriminates this location within `OoxmlHighlightLocation`. */
59
+ kind: OoxmlHighlightKind.DocxTextRange;
60
+ /** Name of the DOCX story the range lives in, as an opaque string (only `'body'` is confirmed upstream). */
61
+ story: string;
62
+ /** Source-tree element indices identifying the paragraph, matched element-wise. */
63
+ path: number[];
64
+ /** Inclusive start character offset within the story's matched text. */
65
+ start: number;
66
+ /** Exclusive end character offset, already converted from the wire's inclusive `end`. */
67
+ endExclusive: number;
68
+ /** The cited text, compared against the text resolved over `[start, endExclusive)`. */
69
+ text: string;
70
+ }
71
+ /** A cited character range inside a single shape on one PPTX slide. */
72
+ export interface OoxmlPptxHighlightLocation {
73
+ /** Discriminates this location within `OoxmlHighlightLocation`. */
74
+ kind: OoxmlHighlightKind.PptxTextRange;
75
+ /** 1-based slide number. */
76
+ slide: number;
77
+ /** Shape identifier, compared as a string against the run's own `shapeId`. */
78
+ shapeId: string;
79
+ /** Inclusive start character offset within the shape's matched text. */
80
+ start: number;
81
+ /** Exclusive end character offset, already converted from the wire's inclusive `end`. */
82
+ endExclusive: number;
83
+ /** The cited text, compared against the text resolved over `[start, endExclusive)`. */
84
+ text: string;
85
+ }
86
+ /** A 1-based cell address, matching `@silurus/ooxml`'s own `CellAddress`. */
87
+ export interface OoxmlCellAddress {
88
+ /** 1-based row number. */
89
+ row: number;
90
+ /** 1-based column number. */
91
+ col: number;
92
+ }
93
+ /** A cited cell, or contiguous same-row cell range, on a named XLSX sheet. */
94
+ export interface OoxmlXlsxHighlightLocation {
95
+ /** Discriminates this location within `OoxmlHighlightLocation`. */
96
+ kind: OoxmlHighlightKind.XlsxCellRange;
97
+ /** Sheet name, matched exactly against the workbook's own sheet names. */
98
+ sheet: string;
99
+ /** First cell of the range. 1-based, passed to the viewer unconverted. */
100
+ start: OoxmlCellAddress;
101
+ /** Last cell of the range, on the same row as `start`. Omitted for a single cell. */
102
+ end?: OoxmlCellAddress;
103
+ }
104
+ /** A cited location inside an Office document, in document coordinates. */
105
+ export type OoxmlHighlightLocation = OoxmlDocxHighlightLocation | OoxmlPptxHighlightLocation | OoxmlXlsxHighlightLocation;
106
+ /** One citation's highlight: the locations it resolved to, under a stable id. */
107
+ export interface OoxmlHighlight {
108
+ /** Stable id, used to mark exactly one highlight selected. */
109
+ id: string;
110
+ /** One or more locations — a single citation may carry several selectors. */
111
+ locations: OoxmlHighlightLocation[];
112
+ }
113
+ /** Content payload for OOXML document and CSV spreadsheet attachments. */
114
+ export interface OoxmlCanvasContent {
115
+ /** Discriminates the content type to select the correct renderer. */
116
+ type: AttachmentContentType.Ooxml;
117
+ /** Resolved download URL or object URL for the source file. */
118
+ url: string;
119
+ /** The document format used to select and configure the format-specific renderer. */
120
+ format: OoxmlFileType;
121
+ /** Cited locations to draw over the document. Omitted, never `[]`, when there is nothing to highlight. */
122
+ highlights?: OoxmlHighlight[];
123
+ /** Id of the highlight to navigate to and emphasise. Omitted when the clicked citation resolved to no location. */
124
+ selectedHighlightId?: string;
44
125
  }
45
126
  /** Content payload for audio file attachments. */
46
127
  export interface AudioCanvasContent {
@@ -51,6 +132,62 @@ export interface AudioCanvasContent {
51
132
  /** MIME type forwarded to the `<audio>` element (e.g. `audio/webm`). */
52
133
  mimeType?: string;
53
134
  }
135
+ /** Content payload for syntax-highlighted source-code or text file attachments. */
136
+ export interface CodeCanvasContent {
137
+ /** Discriminates the content type to select the correct renderer. */
138
+ type: AttachmentContentType.Code;
139
+ /** The raw source text to display. */
140
+ text: string;
141
+ /** `react-syntax-highlighter` language identifier (e.g. `'typescript'`). `undefined` renders plain monospace. */
142
+ language?: string;
143
+ }
144
+ /** Content payload for HTML file attachments or external HTML URL sources. */
145
+ export interface HtmlCanvasContent {
146
+ /** Discriminates the content type to select the correct renderer. */
147
+ type: AttachmentContentType.Html;
148
+ /** Full HTML text rendered via `srcdoc` in a sandboxed iframe. Used for file attachments. */
149
+ srcdoc?: string;
150
+ /** External URL rendered via `src` in a sandboxed iframe. Used for external link sources. */
151
+ url?: string;
152
+ }
153
+ /** Content payload for a custom-visualizer attachment rendered inside a sandboxed iframe. */
154
+ export interface VisualizerCanvasContent {
155
+ /** Discriminates the content type to select the correct renderer. */
156
+ type: AttachmentContentType.Visualizer;
157
+ /** Iframe `src`, resolved from the matching registry entry's `url`. */
158
+ url: string;
159
+ /** The attachment's own MIME type (not the registry entry's raw, possibly comma-separated, `contentType`). */
160
+ mimeType: string;
161
+ /** Opaque attachment payload consumed by the visualizer. */
162
+ data: unknown;
163
+ /** Presentation layout hints (`themeId`, `width`, `height`, `mobileHeight`). */
164
+ layout: CustomVisualizerDataLayout;
165
+ /** postMessage protocol namespace — MUST equal the registry entry's `title`, or the iframe never receives data. */
166
+ visualizerName: string;
167
+ /** Milliseconds to wait for a `send()` request's response before rejecting. From the registry entry; does NOT bound the handshake. */
168
+ requestTimeout?: number;
169
+ }
170
+ /** Content payload for an MCP App's `ui://` resource, rendered in a sandboxed iframe via an isolated-origin sandbox proxy. */
171
+ export interface McpAppCanvasContent {
172
+ /** Discriminates the content type to select the correct renderer. */
173
+ type: AttachmentContentType.McpApp;
174
+ /** HTML body of the tool's `ui://` resource, fetched by the app layer — never fetched by this lib. */
175
+ html: string;
176
+ /** Isolated-origin URL of the MCP Apps sandbox-proxy page, resolved by the app layer from its own config. */
177
+ sandboxUrl: string;
178
+ /** Name of the tool call that produced this resource, forwarded on every `onToolCall`. */
179
+ toolName: string;
180
+ /** Arguments of the original tool call that produced this resource, passed to the mounted app so it renders that invocation immediately instead of an empty initial state. */
181
+ toolInput?: Record<string, unknown>;
182
+ /** Result of the original tool call that produced this resource, passed to the mounted app so it renders that invocation immediately instead of an empty initial state. */
183
+ toolResult?: CallToolResult;
184
+ /** UI context delivered to the View during the `ui/initialize` handshake; built by the app layer from the active theme, locale, and CSS design tokens. */
185
+ hostContext?: McpUiHostContext;
186
+ /** Forwards a `tools/call` request issued by the mounted app to the owning MCP session via the app layer. */
187
+ onToolCall: (name: string, args: unknown) => Promise<CallToolResult>;
188
+ /** Re-fetches the resource and re-resolves the tool result from scratch, bypassing any cache the app layer keeps. Shows a reload action in the canvas header when provided; omit to hide it. */
189
+ onReload?: () => void;
190
+ }
54
191
  /** Content payload for attachments whose format cannot be previewed. */
55
192
  export interface UnsupportedCanvasContent {
56
193
  /** Discriminates the content type to select the correct renderer. */
@@ -66,15 +203,61 @@ export interface ErrorCanvasContent {
66
203
  errorType: AttachmentErrorType;
67
204
  /** Remote URL of the file, if known. Ignored for download purposes when `errorType` is `Forbidden`. */
68
205
  url?: string;
206
+ /** Overrides the default `loadErrorLabel`/`forbiddenErrorLabel` message, for callers whose failed content isn't a generic "file" (e.g. an MCP App). */
207
+ label?: string;
69
208
  }
70
209
  /** The content payload passed to AttachmentCanvas. */
71
- export type AttachmentCanvasContent = PlainTextCanvasContent | ImageCanvasContent | AudioCanvasContent | MarkdownCanvasContent | JsonCanvasContent | PdfCanvasContent | UnsupportedCanvasContent | ErrorCanvasContent;
210
+ export type AttachmentCanvasContent = PlainTextCanvasContent | ImageCanvasContent | AudioCanvasContent | MarkdownCanvasContent | MarkdownTableCanvasContent | JsonCanvasContent | PdfCanvasContent | OoxmlCanvasContent | CodeCanvasContent | HtmlCanvasContent | VisualizerCanvasContent | McpAppCanvasContent | UnsupportedCanvasContent | ErrorCanvasContent;
72
211
  /** Themeable color overrides for the AttachmentCanvas content body. */
73
212
  export interface AttachmentCanvasColors {
74
213
  /** Primary text color for the content body. */
75
214
  text?: string;
215
+ /** Status/summary line text color. Defaults to `--text-secondary`. */
216
+ statusText?: string;
217
+ /** Error icon color. Defaults to `--text-error`. */
218
+ errorIcon?: string;
219
+ /** "Open in new tab" link color in the blocked-iframe panel. Defaults to `--text-accent`. */
220
+ openInNewTabText?: string;
221
+ /** Border color of the JSON viewer wrapper. Defaults to `--stroke-secondary`. */
222
+ jsonBorder?: string;
223
+ /** Background color of the JSON viewer wrapper. Defaults to `--bg-layer-base`. */
224
+ jsonBackground?: string;
225
+ /** JSON key/label color. Defaults to `--text-primary`. */
226
+ jsonLabel?: string;
227
+ /** JSON expandable key/label color. Defaults to `--text-primary`. */
228
+ jsonClickableLabel?: string;
229
+ /** JSON punctuation (braces, commas, colons) color. Defaults to `--text-secondary`. */
230
+ jsonPunctuation?: string;
231
+ /** JSON string-literal color. Defaults to `--text-success`. */
232
+ jsonString?: string;
233
+ /** JSON number-literal color. Defaults to `--text-accent`. */
234
+ jsonNumber?: string;
235
+ /** JSON boolean-literal color. Defaults to `--text-warning`. */
236
+ jsonBoolean?: string;
237
+ /** JSON `null`-literal color. Defaults to `--text-secondary`. */
238
+ jsonNull?: string;
239
+ /** Expand/collapse triangle color. Defaults to `--text-secondary`. */
240
+ jsonToggleIcon?: string;
241
+ /** Expand/collapse triangle color on hover. Defaults to `--text-primary`. */
242
+ jsonToggleIconHover?: string;
243
+ /** Background color of the OOXML/CSV viewer surface and its loading/error overlay. Defaults to `--bg-layer-raised`. */
244
+ ooxmlBackground?: string;
245
+ /** Border color of the XLSX formula panel and value field. Defaults to `--stroke-secondary`. */
246
+ ooxmlFormulaBorder?: string;
247
+ /** Background color of the XLSX formula value field. Defaults to `--bg-layer-base`. */
248
+ ooxmlFormulaBackground?: string;
249
+ /** Text color of the XLSX formula panel. Defaults to `--text-primary`. */
250
+ ooxmlFormulaText?: string;
251
+ /** Border color of a cited-location highlight rectangle. Defaults to `--stroke-accent`. */
252
+ ooxmlHighlightBorder?: string;
253
+ /** Fill color of a cited-location highlight rectangle. Defaults to `transparent`, so the cited text keeps its own contrast. */
254
+ ooxmlHighlightBackground?: string;
255
+ /** Text color of the collapsed-content ellipsis. Defaults to `--text-secondary`. */
256
+ jsonCollapsedText?: string;
257
+ /** Background color of the collapsed-content ellipsis. Defaults to `--bg-layer-raised`. */
258
+ jsonCollapsedBackground?: string;
76
259
  }
77
- /** Themeable typography overrides for the AttachmentCanvas content body. */
260
+ /** Themeable typography overrides for the AttachmentCanvas plain-text content body. */
78
261
  export interface AttachmentCanvasTypography {
79
262
  /** CSS font-family value. */
80
263
  fontFamily?: string;
@@ -87,27 +270,33 @@ export interface AttachmentCanvasTypography {
87
270
  /** CSS letter-spacing value. */
88
271
  letterSpacing?: string;
89
272
  /**
90
- * A single CSS utility class applied to the content body instead of
91
- * individual typography vars. When set, individual typography fields
92
- * are ignored.
273
+ * A single CSS utility class applied to the content body instead of the
274
+ * individual typography fields above. When set, those fields are ignored.
93
275
  */
94
276
  fontClassName?: string;
277
+ /** CSS utility class applied to the JSON tree viewer. Defaults to `'dial-code-text'`. */
278
+ jsonClassName?: string;
279
+ /** CSS utility class applied to the decorative XLSX `fx` label. Defaults to `'dial-italic-text'`. */
280
+ xlsxFormulaLabelClassName?: string;
95
281
  }
96
- /** Combined style override prop for AttachmentCanvas. */
97
- export interface AttachmentCanvasStyles {
282
+ /** Style override prop for `AttachmentCanvasBody`'s content-rendering area. */
283
+ export interface AttachmentCanvasBodyStyles {
98
284
  /** Color overrides for the content body, applied as CSS custom properties. */
99
285
  colors?: AttachmentCanvasColors;
100
286
  /** Typography overrides for the content body. */
101
287
  typography?: AttachmentCanvasTypography;
102
288
  /** Extra class name(s) merged onto the scrollable content body element. */
103
289
  bodyClassName?: string;
104
- /** Extra class name(s) merged onto the panel width wrapper. */
105
- className?: string;
106
290
  /**
107
291
  * Arbitrary CSS custom properties applied inline to the content body.
108
292
  * Merged after the typed color/typography vars, so they can override them.
109
293
  */
110
294
  cssVars?: CSSProperties;
295
+ }
296
+ /** Combined style override prop for AttachmentCanvas. */
297
+ export interface AttachmentCanvasStyles extends AttachmentCanvasBodyStyles {
298
+ /** Extra class name(s) merged onto the panel width wrapper. */
299
+ className?: string;
111
300
  /** Style overrides forwarded to the underlying SidebarPanel (panel chrome). */
112
301
  panelStyles?: SidebarPanelStyles;
113
302
  }
@@ -117,6 +306,8 @@ export interface AttachmentCanvasLabels {
117
306
  ariaLabel: string;
118
307
  /** Accessible label for the close button. Defaults to `'Close'`. */
119
308
  closeLabel?: string;
309
+ /** Accessible label for the panel's drag-to-resize handle. Defaults to `'Resize panel'`. */
310
+ resizeLabel?: string;
120
311
  /** Message shown in the canvas body when the content type is `Unsupported`. Defaults to `'Preview is not supported for this file'`. */
121
312
  unsupportedLabel?: string;
122
313
  /** Message shown in the canvas body when content type is `Error` with `errorType: LoadFailed`. Defaults to `'Failed to load file'`. */
@@ -137,6 +328,54 @@ export interface AttachmentCanvasLabels {
137
328
  copyJsonLabel?: string;
138
329
  /** Tooltip and accessible label for the copy-JSON button after a successful copy. Defaults to `'Copied!'`. */
139
330
  copiedJsonLabel?: string;
331
+ /** Message shown inside the visualizer canvas when the iframe handshake fails. Defaults to `'Failed to load visualizer'`. */
332
+ visualizerErrorLabel?: string;
333
+ /** Message shown when a URL-sourced iframe is blocked by the page's CSP or X-Frame-Options. Defaults to `'This page cannot be displayed in preview'`. */
334
+ htmlFrameBlockedLabel?: string;
335
+ /** Label for the "Open in new tab" fallback link shown alongside `htmlFrameBlockedLabel`. Defaults to `'Open in new tab'`. */
336
+ htmlOpenInNewTabLabel?: string;
337
+ /** Tooltip and `aria-label` for the toggle button when the rendered view is active (clicking switches to source). Defaults to `'View source'`. */
338
+ htmlViewSourceLabel?: string;
339
+ /** Tooltip and `aria-label` for the toggle button when the source view is active (clicking switches back to rendered). Defaults to `'View rendered'`. */
340
+ htmlViewRenderedLabel?: string;
341
+ /** Tooltip and accessible label for the MCP App reload button. Only shown when content type is `McpApp` and `content.onReload` is provided. Defaults to `'Reload'`. */
342
+ mcpAppReloadLabel?: string;
343
+ /** Accessible name for the PDF viewer's floating thumbnails panel region. Defaults to `'Thumbnails'`. */
344
+ pdfThumbnailsLabel?: string;
345
+ /** Accessible label for the FAB button that opens the PDF thumbnails panel. Defaults to `'Show thumbnails'`. */
346
+ pdfShowThumbnailsLabel?: string;
347
+ /** Accessible label for the FAB button that closes the PDF thumbnails panel. Defaults to `'Hide thumbnails'`. */
348
+ pdfHideThumbnailsLabel?: string;
349
+ /** Accessible label for the current-page number input at the top of the PDF thumbnails panel. Defaults to `'Page number'`. */
350
+ pdfPageNumberLabel?: string;
351
+ /** Accessible status text announced while the PDF viewer's dynamic import is loading. Defaults to `'Loading…'`. */
352
+ pdfContentLoadingLabel?: string;
353
+ /** Message shown when the PDF viewer's dynamic import fails to load. Defaults to `'Failed to load content'`. */
354
+ pdfContentErrorLabel?: string;
355
+ /** Label and accessible name for the retry control shown alongside `pdfContentErrorLabel`. Defaults to `'Retry'`. */
356
+ pdfContentRetryLabel?: string;
357
+ /** Accessible label for the active XLSX cell's formula panel. Defaults to `'Formula'`. */
358
+ xlsxFormulaLabel?: string;
359
+ /** Accessible status text announced while the syntax-highlighter engine's dynamic import is loading. Defaults to `'Loading…'`. */
360
+ codeContentLoadingLabel?: string;
361
+ /** Message shown when the syntax-highlighter engine's dynamic import fails to load. Defaults to `'Failed to load content'`. */
362
+ codeContentErrorLabel?: string;
363
+ /** Label and accessible name for the retry control shown alongside `codeContentErrorLabel`. Defaults to `'Retry'`. */
364
+ codeContentRetryLabel?: string;
365
+ /** Label for copying a Markdown table as CSV. */
366
+ tableCopyCsvLabel?: string;
367
+ /** Label for copying a Markdown table as text. */
368
+ tableCopyTxtLabel?: string;
369
+ /** Label for copying a Markdown table as Markdown. */
370
+ tableCopyMarkdownLabel?: string;
371
+ /** Status announced after a Markdown table has been copied. */
372
+ tableCopiedLabel?: string;
373
+ /** Label for downloading a Markdown table as CSV. */
374
+ tableDownloadCsvLabel?: string;
375
+ /** Accessible name for the OOXML citation-highlights overlay region. Defaults to `'Cited locations'`. */
376
+ ooxmlHighlightsLabel?: string;
377
+ /** Status announced once navigation to the selected OOXML citation highlight completes. Defaults to `'Scrolled to the cited location'`. */
378
+ ooxmlHighlightNavigatedLabel?: string;
140
379
  }
141
380
  /** Props for the AttachmentCanvas component. */
142
381
  export interface AttachmentCanvasProps {
@@ -160,6 +399,8 @@ export interface AttachmentCanvasProps {
160
399
  onCopyMarkdown?: () => void;
161
400
  /** Called when the user activates the copy-JSON button. When omitted the button is hidden. Only relevant when content type is `Json`. */
162
401
  onCopyJson?: () => void;
402
+ /** Filename used when downloading a `MarkdownTable`'s content as CSV. Defaults to `'table.csv'`. */
403
+ tableDownloadFilename?: string;
163
404
  /** Whether the viewport is in mobile breakpoint — disables drag-to-resize. */
164
405
  isMobile?: boolean;
165
406
  /** Initial panel width in pixels (when resizable). Defaults to `min(maxWidth, 2/3 of viewport width)`. */
@@ -180,5 +421,67 @@ export interface AttachmentCanvasProps {
180
421
  * plain `fetch` if not provided.
181
422
  */
182
423
  loadPdf?: (url: string) => Promise<Blob>;
424
+ /**
425
+ * Configures `pdfjs-dist`'s worker (`GlobalWorkerOptions.workerSrc`) for the
426
+ * host app. Called once, the first time a PDF attachment is opened, and
427
+ * awaited before the viewer mounts. Concurrent PDF opens share one
428
+ * in-flight call; a successful call is memoized so later opens never
429
+ * repeat it. A rejected call is not cached — the next PDF open (or a
430
+ * subsequent retry) invokes it again. When omitted,
431
+ * `@epam/pdf-highlighter-kit`'s own CDN-hosted worker fallback is used
432
+ * instead, so PDF rendering still works, just without the host's own
433
+ * bundled worker asset.
434
+ */
435
+ configurePdfWorker?: () => void | Promise<void>;
436
+ }
437
+ /** User-visible strings for `AttachmentCanvasBody`'s content states. */
438
+ export type AttachmentCanvasBodyLabels = Pick<AttachmentCanvasLabels, 'unsupportedLabel' | 'loadErrorLabel' | 'forbiddenErrorLabel' | 'visualizerErrorLabel' | 'htmlFrameBlockedLabel' | 'htmlOpenInNewTabLabel' | 'pdfThumbnailsLabel' | 'pdfShowThumbnailsLabel' | 'pdfHideThumbnailsLabel' | 'pdfPageNumberLabel' | 'pdfContentLoadingLabel' | 'pdfContentErrorLabel' | 'pdfContentRetryLabel' | 'xlsxFormulaLabel' | 'codeContentLoadingLabel' | 'codeContentErrorLabel' | 'codeContentRetryLabel' | 'tableCopyCsvLabel' | 'tableCopyTxtLabel' | 'tableCopyMarkdownLabel' | 'tableCopiedLabel' | 'tableDownloadCsvLabel' | 'ooxmlHighlightsLabel' | 'ooxmlHighlightNavigatedLabel'>;
439
+ /** Props for the `AttachmentCanvasBody` component. */
440
+ export interface AttachmentCanvasBodyProps {
441
+ /** The attachment content to render. */
442
+ content: AttachmentCanvasContent;
443
+ /** When `true`, renders a loading spinner instead of content. Defaults to `false`. */
444
+ isLoading?: boolean;
445
+ /** File name used for image `alt` text and the audio player's accessible label. */
446
+ fileName?: string;
447
+ /**
448
+ * Whether an `Html` content type renders its raw source instead of the
449
+ * sandboxed rendered view. Ignored for every other content type. Defaults
450
+ * to `false`. The host owns this toggle's state since the corresponding
451
+ * toggle button lives outside this component.
452
+ */
453
+ isHtmlSourceView?: boolean;
454
+ /** User-visible strings for content states (unsupported/error/HTML-blocked messages). */
455
+ labels?: AttachmentCanvasBodyLabels;
456
+ /** Style overrides for the content body. */
457
+ styles?: AttachmentCanvasBodyStyles;
458
+ /** Syntax highlight color theme forwarded to MarkdownRenderer/CodeContent code blocks. */
459
+ codeBlockTheme?: CodeBlockTheme;
460
+ /** Filename used when downloading a `MarkdownTable`'s content as CSV. Defaults to `'table.csv'`. Only relevant when content type is `MarkdownTable`. */
461
+ tableDownloadFilename?: string;
462
+ /**
463
+ * Fetches a PDF file by URL and returns its bytes as a `Blob`. Used when
464
+ * content type is `Pdf` to load the file before rendering. Defaults to a
465
+ * plain `fetch` if not provided.
466
+ */
467
+ loadPdf?: (url: string) => Promise<Blob>;
468
+ /**
469
+ * Hides the PDF renderer's own title/zoom toolbar row for `Pdf` content —
470
+ * for hosts that render their own header and don't want it duplicated.
471
+ * Ignored for every other content type. Defaults to `false`.
472
+ */
473
+ hidePdfToolbar?: boolean;
474
+ /**
475
+ * Configures `pdfjs-dist`'s worker (`GlobalWorkerOptions.workerSrc`) for the
476
+ * host app. Called once, the first time a PDF attachment is opened, and
477
+ * awaited before the viewer mounts. Concurrent PDF opens share one
478
+ * in-flight call; a successful call is memoized so later opens never
479
+ * repeat it. A rejected call is not cached — the next PDF open (or a
480
+ * subsequent retry) invokes it again. When omitted,
481
+ * `@epam/pdf-highlighter-kit`'s own CDN-hosted worker fallback is used
482
+ * instead, so PDF rendering still works, just without the host's own
483
+ * bundled worker asset.
484
+ */
485
+ configurePdfWorker?: () => void | Promise<void>;
183
486
  }
184
487
  //# sourceMappingURL=attachment-canvas.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"attachment-canvas.d.ts","sourceRoot":"","sources":["../../src/models/attachment-canvas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"attachment-canvas.d.ts","sourceRoot":"","sources":["../../src/models/attachment-canvas.ts"],"names":[],"mappings":"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"}