@silurus/ooxml 0.33.2 → 0.35.0

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.
@@ -132,6 +132,9 @@ declare interface ChartElement {
132
132
  * plot-area placement so bars don't extend past the chart-frame's intended
133
133
  * inner region (sample-2 slide-16 horizontal bar chart). */
134
134
  plotAreaManualLayout?: ChartManualLayout | null;
135
+ /** `<c:scatterChart><c:scatterStyle val>` (ECMA-376 §21.2.2.42) — drives
136
+ * whether scatter charts connect points with straight or smooth lines. */
137
+ scatterStyle?: string | null;
135
138
  }
136
139
 
137
140
  declare interface ChartErrBars {
@@ -246,6 +249,14 @@ declare interface ChartSeries {
246
249
  * regardless of `errValType`.
247
250
  */
248
251
  errBars?: ChartErrBars[] | null;
252
+ /**
253
+ * `<c:bubbleSize>` per-point sizes for bubble charts (ECMA-376 §21.2.2.4).
254
+ * Drives marker radius — renderer treats the values as areas (radius
255
+ * scales by sqrt) so visual area is proportional to value, matching
256
+ * Excel. null / empty array = uniform marker size. Ignored for non-bubble
257
+ * series.
258
+ */
259
+ bubbleSizes?: (number | null)[] | null;
249
260
  }
250
261
 
251
262
  declare interface ChartSeriesDataLabels {
@@ -360,6 +371,12 @@ export declare interface Paragraph {
360
371
  defFontFamily: string | null;
361
372
  /** Tab stops from pPr > tabLst */
362
373
  tabStops: TabStop[];
374
+ /**
375
+ * `<a:pPr rtl="1">` — right-to-left paragraph (ECMA-376 §21.1.2.2.7).
376
+ * When true and no explicit `algn`, the parser-side default flips from
377
+ * "l" to "r"; renderers can also use this flag to flow runs RTL.
378
+ */
379
+ rtl?: boolean;
363
380
  runs: TextRun[];
364
381
  }
365
382
 
@@ -818,6 +835,13 @@ export declare interface TextBody {
818
835
  spcCol?: number;
819
836
  }
820
837
 
838
+ /** Run-level glyph outline. Width is in OOXML EMU (12700 EMU = 1 pt). */
839
+ declare interface TextOutline {
840
+ width: number;
841
+ /** Hex without '#'. Absent = inherit from text fill colour. */
842
+ color?: string;
843
+ }
844
+
821
845
  export declare type TextRun = TextRunData | LineBreak;
822
846
 
823
847
  export declare type TextRunCallback = (run: TextRunInfo) => void;
@@ -882,6 +906,19 @@ export declare interface TextRunData {
882
906
  * Undefined for runs without a hyperlink. ECMA-376 §21.1.2.3.5 (CT_Hyperlink).
883
907
  */
884
908
  hyperlink?: string;
909
+ /**
910
+ * Run-level drop shadow on glyphs (`<a:rPr><a:effectLst><a:outerShdw>`),
911
+ * ECMA-376 §20.1.8.45. Independent of the shape-level shadow on `spPr`.
912
+ * Absent means no run-level shadow.
913
+ */
914
+ shadow?: Shadow;
915
+ /**
916
+ * Run-level glyph outline (`<a:rPr><a:ln w="..">`), ECMA-376 §20.1.2.2.24
917
+ * (CT_TextOutlineEffect). Renderer strokes each glyph with the given
918
+ * width / colour in addition to the normal fill. Absent means glyphs are
919
+ * fill-only.
920
+ */
921
+ outline?: TextOutline;
885
922
  }
886
923
 
887
924
  /** Information about a rendered text segment for building a transparent selection overlay. */
@@ -525,6 +525,20 @@ export declare interface RenderViewportOptions {
525
525
  loadedImages?: Map<string, HTMLImageElement>;
526
526
  /** Called once per cell that contains text, with canvas-pixel position and cell address. */
527
527
  onTextRun?: (info: TextRunInfo) => void;
528
+ /** Highlighted row range for selected row headers (1-indexed inclusive).
529
+ * `strong: true` → light blue + blue border (rows / cols / all selection modes).
530
+ * `strong: false` → slightly darker grey (cells selection mode). */
531
+ selectedRowRange?: {
532
+ start: number;
533
+ end: number;
534
+ strong: boolean;
535
+ } | null;
536
+ /** Same shape as selectedRowRange, for column headers. */
537
+ selectedColRange?: {
538
+ start: number;
539
+ end: number;
540
+ strong: boolean;
541
+ } | null;
528
542
  }
529
543
 
530
544
  export declare interface Row {
@@ -937,6 +951,7 @@ export declare class XlsxViewer {
937
951
  private tabStyle;
938
952
  private updateSpacerSize;
939
953
  private renderCurrentSheet;
954
+ private computeHeaderHighlight;
940
955
  get sheetNames(): string[];
941
956
  destroy(): void;
942
957
  }