@silurus/ooxml 0.82.0 → 0.83.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.
Files changed (45) hide show
  1. package/README.md +72 -3
  2. package/dist/assets/{render-worker-7-Zr7fSw.js → render-worker-Bu31cf1J.js} +4 -4
  3. package/dist/assets/render-worker-DuztdEcX.js +11 -0
  4. package/dist/{canvas-viewer-mechanics-CS_qbr6T.js → canvas-viewer-mechanics-h07vpVOQ.js} +42 -2
  5. package/dist/{comment-ui-runtime-BAe30Ct9.js → comment-ui-runtime-BelHJt73.js} +3 -3
  6. package/dist/{comment-ui-runtime-BUCj4hWn.js → comment-ui-runtime-DD5a3x3k.js} +3 -3
  7. package/dist/comment-ui-runtime-DTGN3Vyy.js +2 -0
  8. package/dist/{comments-Cf9W7r3M.js → comments-AAaNnQTi.js} +7 -2
  9. package/dist/{document-pull-client-BCgmytqI.js → document-pull-client-BAhqoTmm.js} +4509 -3953
  10. package/dist/docx-Dg73PGgC.js +2707 -0
  11. package/dist/docx.mjs +6 -6
  12. package/dist/docx_parser_bg.wasm +0 -0
  13. package/dist/dom-interaction-boundary-CepOlXt6.js +217 -0
  14. package/dist/index.mjs +4 -4
  15. package/dist/line-distribute-D7A_wnJg.js +1003 -0
  16. package/dist/{line-metrics-B3syvDn2.js → line-metrics-Bpn7OeZD.js} +616 -616
  17. package/dist/node.mjs +308 -308
  18. package/dist/pptx-BcUCETmQ.js +2990 -0
  19. package/dist/pptx.mjs +5 -5
  20. package/dist/pptx_parser_bg.wasm +0 -0
  21. package/dist/{read-only-comment-margin-Dn2y55W6.js → read-only-comment-margin-DrUX-YrP.js} +1 -1
  22. package/dist/{render-CenWM4g1.js → render-CL-7V3E8.js} +1 -1
  23. package/dist/{render-worker-host-BNENN3qP.js → render-worker-host-DDZo0feh.js} +1 -1
  24. package/dist/{render-worker-host-BmH3kGSj.js → render-worker-host-FJ19-fUI.js} +1 -1
  25. package/dist/{resource-measurement-CsW4_eYt.js → resource-measurement-DuiFWzam.js} +3 -3
  26. package/dist/{session-Cky_swUj.js → session-BjydZEDF.js} +107 -94
  27. package/dist/{slide-pull-client-CqTVFb3W.js → slide-pull-client-CwvvncPA.js} +1199 -970
  28. package/dist/types/docx.d.ts +99 -7
  29. package/dist/types/index.d.ts +189 -12
  30. package/dist/types/node.d.ts +385 -379
  31. package/dist/types/pptx.d.ts +96 -5
  32. package/dist/types/xlsx.d.ts +4 -2
  33. package/dist/{worksheet-pull-client-CYtwXP5D.js → worksheet-pull-client-DyFsDF4A.js} +32 -32
  34. package/dist/{xlsx-DlV37-0j.js → xlsx-BibrHQ52.js} +477 -477
  35. package/dist/xlsx.mjs +5 -5
  36. package/dist/xlsx_parser_bg.wasm +0 -0
  37. package/package.json +4 -1
  38. package/dist/assets/render-worker-B5gsW6b5.js +0 -11
  39. package/dist/comment-ui-runtime-F4a3te6p.js +0 -2
  40. package/dist/docx-wokGKYfi.js +0 -2162
  41. package/dist/dom-interaction-boundary-C8F6HO5x.js +0 -119
  42. package/dist/line-distribute-iXsUCIH-.js +0 -1003
  43. package/dist/pptx-DU8L8I2T.js +0 -2432
  44. /package/dist/{comment-occurrence-C34fWs_F.js → comment-occurrence-X54si2ob.js} +0 -0
  45. /package/dist/{highlight-rect-MaCt0om0.js → highlight-rect-Hes0z_Mj.js} +0 -0
@@ -1275,7 +1275,7 @@ interface ChartRegionMapRenderer {
1275
1275
  render(ctx: CanvasRenderingContext2D, chart: ChartModel, rect: ChartRect, ptToPx: number, shapeRotationDeg?: number): boolean;
1276
1276
  }
1277
1277
  //#endregion
1278
- //#region dist/.types-work/hyperlink-CZoV-4B8.d.ts
1278
+ //#region dist/.types-work/hyperlink-Bk5fiM_m.d.ts
1279
1279
  type OoxmlErrorCode = 'encrypted' | 'invalid-password' | 'unsupported-encryption' | 'legacy-binary-format' | 'not-ooxml';
1280
1280
  type OoxmlErrorStage = 'container' | 'decompression' | 'parsing' | 'serialization' | 'layout' | 'rendering' | 'worker';
1281
1281
  declare class OoxmlError extends Error {
@@ -1348,6 +1348,14 @@ interface OoxmlResourceLimits {
1348
1348
  maxTotalInflatedBytes?: OoxmlResourceLimit;
1349
1349
  maxArchiveEntries?: OoxmlResourceLimit;
1350
1350
  }
1351
+ interface ProgressiveLayoutProgress {
1352
+ committedUnits: number;
1353
+ }
1354
+ interface ProgressiveLayoutPartial {
1355
+ availableUnits: number;
1356
+ totalUnits?: number;
1357
+ exact: boolean;
1358
+ }
1351
1359
  interface LoadOptions$3 {
1352
1360
  useGoogleFonts?: boolean;
1353
1361
  password?: string;
@@ -1442,7 +1450,7 @@ interface FindHighlightColors {
1442
1450
  active?: string;
1443
1451
  }
1444
1452
  //#endregion
1445
- //#region dist/.types-work/docx-Cz7hTdgv.d.ts
1453
+ //#region dist/.types-work/types-B2UaFocY.d.ts
1446
1454
  interface DocxDocumentModel {
1447
1455
  section: SectionProps;
1448
1456
  body: BodyElement[];
@@ -2185,7 +2193,10 @@ interface RenderPageOptions {
2185
2193
  defaultTextColor?: string;
2186
2194
  onTextRun?: (run: DocxTextRunInfo) => void;
2187
2195
  currentDate?: Date | number;
2196
+ showTrackedChanges?: boolean;
2188
2197
  }
2198
+ //#endregion
2199
+ //#region dist/.types-work/docx-CBra4_iJ.d.ts
2189
2200
  interface CommentAnchorRange {
2190
2201
  readonly commentId: string;
2191
2202
  readonly source: Readonly<DocxStorySource>;
@@ -2292,6 +2303,7 @@ declare function readDocxTextSelectionContext(root: HTMLElement, selection: Sele
2292
2303
  interface DocxElementContextOptions {
2293
2304
  readonly maxTextCharacters?: number;
2294
2305
  readonly currentDate?: Date | number;
2306
+ readonly showTrackedChanges?: boolean;
2295
2307
  }
2296
2308
  interface RevisionAnchorRange {
2297
2309
  readonly revisionIndex: number;
@@ -2308,8 +2320,15 @@ declare function resolveRevisionAnchorRuns(anchor: Readonly<RevisionAnchorRange>
2308
2320
  interface LoadOptions$2 extends LoadOptions$3 {
2309
2321
  math?: MathRenderer;
2310
2322
  mode?: 'main' | 'worker';
2323
+ sliceLayout?: boolean;
2324
+ onLayoutProgress?: (progress: Readonly<ProgressiveLayoutProgress>) => void;
2325
+ progressiveLayout?: boolean;
2326
+ onLayoutComplete?: (error?: unknown) => void;
2327
+ onLayoutPartial?: (progress: Readonly<ProgressiveLayoutPartial>) => void;
2328
+ showTrackedChanges?: boolean;
2329
+ currentDate?: Date | number;
2311
2330
  }
2312
- type CollectPageRunsOptions = Pick<RenderPageOptions, 'width' | 'currentDate'>;
2331
+ type CollectPageRunsOptions = Pick<RenderPageOptions, 'width' | 'currentDate' | 'showTrackedChanges'>;
2313
2332
  interface DocxPageCommentThreadsOptions extends CollectPageRunsOptions, ResolveDocxCommentThreadsOptions {}
2314
2333
  type RenderPageToBitmapOptions = Omit<RenderPageOptions, 'onTextRun'> & {
2315
2334
  onTextRun?: (run: DocxTextRunInfo) => void;
@@ -2320,10 +2339,19 @@ declare class DocxDocument {
2320
2339
  private _source;
2321
2340
  private _meta;
2322
2341
  private _review;
2342
+ private readonly _layoutLifecycle;
2343
+ private readonly _layoutObservers;
2344
+ private _layoutCompletion;
2345
+ private _layoutAbort;
2323
2346
  private _bookmarkPages;
2324
2347
  private _commentAnchorRanges;
2325
2348
  private _revisionAnchorRanges;
2326
- private _reviewTextRunSourceIndex;
2349
+ private _reviewProjectionIndex;
2350
+ private _parseRequestId;
2351
+ private _progressive;
2352
+ private _parseWatchdog;
2353
+ private _parseWatchdogMs;
2354
+ private _layoutViewGeneration;
2327
2355
  private _mode;
2328
2356
  private _threeD;
2329
2357
  private _regionMap;
@@ -2338,6 +2366,18 @@ declare class DocxDocument {
2338
2366
  private constructor();
2339
2367
  static load(source: string | ArrayBuffer, opts?: LoadOptions$2): Promise<DocxDocument>;
2340
2368
  private _parse;
2369
+ private _onWorkerLayoutPush;
2370
+ private _applyLayoutPartial;
2371
+ private _onAuthoritativeMeta;
2372
+ private _invalidateLayoutDerivedCaches;
2373
+ private _replaceMainLayoutPublication;
2374
+ private _isLayoutViewActive;
2375
+ private _rearmParseWatchdog;
2376
+ private _clearParseWatchdog;
2377
+ private _onParseWentSilent;
2378
+ private _failWorkerProgressive;
2379
+ private _parseViewFields;
2380
+ private _parseProgressively;
2341
2381
  destroy(): void;
2342
2382
  getImage(imagePath: string, mimeType: string): Promise<Blob>;
2343
2383
  getFontBytes(partPath: string): Promise<Uint8Array>;
@@ -2345,6 +2385,8 @@ declare class DocxDocument {
2345
2385
  getResourceMetrics(): Promise<OoxmlResourceMetrics>;
2346
2386
  toMarkdown(): Promise<string>;
2347
2387
  get pageCount(): number;
2388
+ get layoutComplete(): boolean;
2389
+ waitUntilLayoutComplete(): Promise<void>;
2348
2390
  get mode(): 'main' | 'worker';
2349
2391
  get document(): DocxDocumentModel;
2350
2392
  get comments(): readonly Readonly<DocComment>[];
@@ -2355,12 +2397,17 @@ declare class DocxDocument {
2355
2397
  get footnotes(): DocNote[];
2356
2398
  get endnotes(): DocNote[];
2357
2399
  private _getLayout;
2400
+ setLayoutView(view?: Readonly<{
2401
+ showTrackedChanges?: boolean;
2402
+ currentDate?: Date | number;
2403
+ }>): Promise<void>;
2358
2404
  private _getBookmarkPages;
2359
2405
  getBookmarkPage(bookmarkName: string): number | undefined;
2360
2406
  pageSize(pageIndex: number): {
2361
2407
  widthPt: number;
2362
2408
  heightPt: number;
2363
2409
  };
2410
+ private _withActiveView;
2364
2411
  renderPage(target: HTMLCanvasElement | OffscreenCanvas, pageIndex: number, opts?: RenderPageOptions): Promise<void>;
2365
2412
  renderPageToBitmap(pageIndex: number, opts?: RenderPageToBitmapOptions): Promise<ImageBitmap>;
2366
2413
  collectPageRuns(pageIndex: number, opts?: CollectPageRunsOptions): Promise<DocxTextRunInfo[]>;
@@ -2377,7 +2424,7 @@ interface DocxViewerOptions extends Omit<RenderPageOptions, 'onTextRun'>, LoadOp
2377
2424
  onSelectionContextChange?: (context: DocxSelectionContext | null) => void;
2378
2425
  onContextMenu?: (event: ViewerContextMenuEvent<DocxSelectionContext>) => void;
2379
2426
  findHighlightColors?: FindHighlightColors;
2380
- onPageChange?: (index: number, total: number) => void;
2427
+ onPageChange?: (index: number, total: number, layoutComplete: boolean) => void;
2381
2428
  zoomMin?: number;
2382
2429
  zoomMax?: number;
2383
2430
  onScaleChange?: (scale: number) => void;
@@ -2399,6 +2446,7 @@ declare class DocxViewer implements ZoomableViewer {
2399
2446
  private _highlightLayer;
2400
2447
  private _elementLayer;
2401
2448
  private _find;
2449
+ private _findRequestGeneration;
2402
2450
  private _measureCtx;
2403
2451
  private _opts;
2404
2452
  private readonly _mode;
@@ -2409,6 +2457,13 @@ declare class DocxViewer implements ZoomableViewer {
2409
2457
  private _selectionContextKey;
2410
2458
  private _elementContext;
2411
2459
  private _elementHitGeneration;
2460
+ private _layoutViewGeneration;
2461
+ private _navigationGeneration;
2462
+ private _layoutUnsubscribe;
2463
+ private _internalHyperlinkGeneration;
2464
+ private readonly _layoutWaiters;
2465
+ private _layoutFailed;
2466
+ private readonly _loadingLayer;
2412
2467
  private _elementClickListener;
2413
2468
  private _contextMenuListener;
2414
2469
  static fromDocument(canvas: HTMLCanvasElement, document: DocxDocument, opts?: Omit<DocxViewerOptions, keyof LoadOptions$2>): Omit<DocxViewer, 'load'>;
@@ -2416,6 +2471,8 @@ declare class DocxViewer implements ZoomableViewer {
2416
2471
  load(source: string | ArrayBuffer): Promise<void>;
2417
2472
  get pageCount(): number;
2418
2473
  get currentPage(): number;
2474
+ get layoutComplete(): boolean;
2475
+ waitUntilLayoutComplete(): Promise<void>;
2419
2476
  get canvasElement(): HTMLCanvasElement;
2420
2477
  goToPage(index: number): Promise<void>;
2421
2478
  nextPage(): Promise<void>;
@@ -2451,12 +2508,21 @@ declare class DocxViewer implements ZoomableViewer {
2451
2508
  private _render;
2452
2509
  private _reportRenderError;
2453
2510
  private _renderPage;
2511
+ private _bindLayoutDocument;
2512
+ private _unbindLayoutDocument;
2513
+ private _onLayoutPublication;
2514
+ private _waitForPage;
2515
+ private _wakeLayoutWaiters;
2516
+ private _cancelPendingNavigation;
2517
+ private _setLoading;
2518
+ setShowTrackedChanges(value: boolean): Promise<void>;
2454
2519
  private _buildHighlightLayer;
2455
2520
  private _canvasCssPx;
2456
2521
  private _measureForFont;
2457
2522
  private _collectPageRuns;
2458
2523
  private _buildTextLayer;
2459
2524
  private _hyperlinkHandler;
2525
+ private _navigateInternalHyperlink;
2460
2526
  }
2461
2527
  interface DocxCommentsOptions extends ViewerCommentsOptions {
2462
2528
  readonly cards?: boolean;
@@ -2472,6 +2538,8 @@ interface DocxScrollViewerOptions extends Omit<RenderPageOptions, 'onTextRun'>,
2472
2538
  paddingLeft?: number;
2473
2539
  paddingRight?: number;
2474
2540
  overscan?: number;
2541
+ progressiveLayout?: boolean;
2542
+ sliceLayout?: boolean;
2475
2543
  enableTextSelection?: boolean;
2476
2544
  comments?: boolean | DocxCommentsOptions;
2477
2545
  enableElementSelection?: boolean;
@@ -2484,7 +2552,7 @@ interface DocxScrollViewerOptions extends Omit<RenderPageOptions, 'onTextRun'>,
2484
2552
  refitOnResize?: boolean;
2485
2553
  background?: string;
2486
2554
  pageShadow?: string | false;
2487
- onVisiblePageChange?: (topIndex: number, total: number) => void;
2555
+ onVisiblePageChange?: (topIndex: number, total: number, layoutComplete: boolean) => void;
2488
2556
  onScaleChange?: (scale: number) => void;
2489
2557
  onHyperlinkClick?: (target: HyperlinkTarget) => void;
2490
2558
  enableHyperlinks?: boolean;
@@ -2495,6 +2563,7 @@ declare class DocxScrollViewer implements ZoomableViewer {
2495
2563
  private get _doc();
2496
2564
  private readonly _borrowed;
2497
2565
  private readonly _opts;
2566
+ private readonly _errorRouter;
2498
2567
  private readonly _container;
2499
2568
  private readonly _wrapper;
2500
2569
  private readonly _scrollHost;
@@ -2509,6 +2578,11 @@ declare class DocxScrollViewer implements ZoomableViewer {
2509
2578
  private _scrollGeometry;
2510
2579
  private _lastRange;
2511
2580
  private _lastTopIndex;
2581
+ private _lastReportedTotal;
2582
+ private _lastReportedLayoutComplete;
2583
+ private _layoutUnsubscribe;
2584
+ private _presentedPageCount;
2585
+ private _pendingLayoutPublication;
2512
2586
  private _scrollListener;
2513
2587
  private _selectionChangeListener;
2514
2588
  private _selectionContextKey;
@@ -2524,8 +2598,10 @@ declare class DocxScrollViewer implements ZoomableViewer {
2524
2598
  private readonly _commentIndexedPages;
2525
2599
  private _commentScanFrontier;
2526
2600
  private _commentNavigationGeneration;
2601
+ private _internalHyperlinkGeneration;
2527
2602
  private _commentAnchorRangesForMargin;
2528
2603
  private _commentAnchorIds;
2604
+ private _reviewOriginPx;
2529
2605
  private _commentGeometryScheduled;
2530
2606
  private _commentGeometryFrame;
2531
2607
  private readonly _pendingCommentGeometry;
@@ -2543,10 +2619,22 @@ declare class DocxScrollViewer implements ZoomableViewer {
2543
2619
  private readonly _pageShadow;
2544
2620
  private readonly _find;
2545
2621
  private _findActive;
2622
+ private _findRequestGeneration;
2623
+ private _showTrackedChanges;
2624
+ private _layoutViewGeneration;
2546
2625
  static fromDocument(container: HTMLElement, document: DocxDocument, opts?: Omit<DocxScrollViewerOptions, keyof LoadOptions$2>): Omit<DocxScrollViewer, 'load'>;
2547
2626
  constructor(container: HTMLElement, opts?: DocxScrollViewerOptions);
2548
2627
  load(source: string | ArrayBuffer): Promise<void>;
2549
2628
  get pageCount(): number;
2629
+ get layoutComplete(): boolean;
2630
+ waitUntilLayoutComplete(): Promise<void>;
2631
+ private _bindLayoutDocument;
2632
+ private _unbindLayoutDocument;
2633
+ private _onLayoutPublication;
2634
+ private _refreshCommentSurface;
2635
+ private _applyLayoutPublication;
2636
+ private _revealPendingLayoutAtPresentedTail;
2637
+ private _revealPendingLayoutThroughPage;
2550
2638
  private _pageWidthPx;
2551
2639
  private _pageHeightPx;
2552
2640
  private _fitWidthPx;
@@ -2572,6 +2660,7 @@ declare class DocxScrollViewer implements ZoomableViewer {
2572
2660
  private _syncSpacerWidth;
2573
2661
  private _onScroll;
2574
2662
  private _mountVisible;
2663
+ private _emitVisiblePageChange;
2575
2664
  private _applyPageShadow;
2576
2665
  private _acquireSlot;
2577
2666
  private _recycleSlot;
@@ -2579,6 +2668,7 @@ declare class DocxScrollViewer implements ZoomableViewer {
2579
2668
  private _dpr;
2580
2669
  private _renderSlot;
2581
2670
  private _hyperlinkHandler;
2671
+ private _navigateInternalHyperlink;
2582
2672
  private _measureForFont;
2583
2673
  private _canvasCssPx;
2584
2674
  private _reportRenderError;
@@ -2592,9 +2682,11 @@ declare class DocxScrollViewer implements ZoomableViewer {
2592
2682
  private _fit;
2593
2683
  private _previewVisible;
2594
2684
  private _previewSlot;
2685
+ private _clearTextLayerPreview;
2595
2686
  private _scheduleSettle;
2596
2687
  private _settleRender;
2597
- private _settleSlot;
2688
+ private _refreshSlotAtomically;
2689
+ setShowTrackedChanges(value: boolean): Promise<void>;
2598
2690
  scrollToPage(index: number, opts?: {
2599
2691
  behavior?: 'auto' | 'smooth';
2600
2692
  }): void;
@@ -2645,7 +2737,7 @@ declare namespace docx_d_exports {
2645
2737
  export { AnchorHostMetrics, AutoResizeOptions, BodyElement, BorderSpec, CellBorders, CellElement, ChartAreaGroupDecorations, ChartBarGroupDecorations, ChartDataLabelOverride, ChartDataPointOverride, ChartDataTable, ChartDecorationLineStyle, ChartDisplayUnits, ChartDisplayUnitsLabel, ChartErrBars, ChartExElementStyle, ChartExRenderer, ChartLabelBox, ChartLegendEntryOverride, ChartLineDashSegment, ChartLineGroupDecorations, ChartManualLayout, ChartModel, ChartOfPie, ChartPlotGroup, ChartPlotGroupAxisSlot, ChartPlotGroupKind, ChartRect, ChartRegionMapRenderer, ChartRun, ChartSeries, ChartSeriesDataLabels, ChartStockBarPaint, ChartStockUpDownBarStyle, ChartSurfaceBandFormat, ChartTextBox, ChartTextParagraph, ChartTextRun, ChartThreeD, ChartThreeDPictureOptions, ChartThreeDRenderer, ChartThreeDSeriesAxis, ChartThreeDSurface, ChartTrendline, ChartType, ChartexBoxSeries, ChartexBoxWhisker, ChartexGeography, ChartexHistogramBinning, ChartexRegionMap, ChartexRegionMapColors, ChartexRegionMapRow, ChartexSunburst, ChartexSunburstRow, ChartexTreemap, ChartexValueColorStop, ColSpec, CollectPageRunsOptions, ColumnsSpec, CommentAnchorGeometryFallback, CommentAnchorPoint, CommentAnchorRange, DocComment, DocNote, DocParagraph, DocRevision, DocRun, DocSettings, DocTable, DocTableCell, DocTableRow, DocxCommentAnchorKind, DocxCommentHighlightRect, DocxCommentMark, DocxCommentSelectionContext, DocxCommentsOptions, DocxDocument, DocxDocumentModel, DocxElementContext, DocxElementContextOptions, DocxHighlightColors, DocxHighlightMatch, DocxMatchLocation, DocxPageCommentThreadsOptions, DocxPagePoint, DocxRunBorder, DocxScrollViewer, DocxScrollViewerOptions, DocxSelectionContext, DocxSelectionContextOptions, DocxSelectionRunLocator, DocxSelectionSourceLocator, DocxStorySource, DocxTextRun, DocxTextRunInfo, DocxTextSelectionContext, DocxViewer, DocxViewerOptions, DrawingMLCustomDashSegment, Duotone$1 as Duotone, EmbeddedFontRef, FieldRun, FillRect, FindHighlightColors, FindMatch, FindMatchesOptions, FramePr, GradientFill, GradientStop, HeaderFooter, HeadersFooters, HyperlinkTarget, ImageFill, ImageRun, LegendManualLayout, LineEnd, LineNumbering, LineSpacing, LoadOptions$2 as LoadOptions, MatchRunSlice, MathAccent, MathArray, MathBar, MathBorderBox, MathBox, MathDelimiter, MathFraction, MathFunc, MathGroup, MathGroupChr, MathLimit, MathNary, MathNode, MathPhant, MathRadical, MathRenderer, MathRun, MathSPre, MathScript, MathStyle, MathSvg, NoFill, NoteRef, NumberingInfo, OoxmlDecodedImageLimitError, OoxmlDecodedImageLimitMetric, OoxmlError, OoxmlErrorCode, OoxmlErrorStage, OoxmlFormat, OoxmlResourceLimit, OoxmlResourceLimitError, OoxmlResourceLimitErrorDetails, OoxmlResourceLimits, OoxmlResourceMetric, OoxmlResourceMetrics, OoxmlResourceMetricsCheckpoint, OoxmlResourceName, OoxmlResourcePolicySnapshot, OoxmlResourceUsageSnapshot, OoxmlResourceViolation, PTabRun, PageBorderEdge, PageBorders, PageNumType, ParaBorderEdge, ParagraphBorders, PathCmd$1 as PathCmd, PatternFill, RenderPageOptions, RenderPageToBitmapOptions, ResolveDocxCommentThreadsOptions, ResolvedDocxCommentAnchor, ResolvedDocxCommentThread, RevisionAnchorGeometryFallback, RevisionAnchorRange, RubyAnnotation, RunRevision, SecondaryValueAxis, SectionGeom, SectionProps, ShapeFill$1 as ShapeFill, ShapeRun, ShapeStrokeFill, ShapeText$1 as ShapeText, ShapeTextRun$1 as ShapeTextRun, SolidFill, SrcRect, TabStop, TableBorders, TblpPr, TextPath, TextSelectionContextOptions, TileInfo, ViewerCommentConnectorOptions, ViewerCommentConnectorRoute, ViewerCommentConnectorStroke, ViewerCommentMessageContext, ViewerCommentThreadContext, ViewerContextMenuEvent, ZoomableViewer, autoResize, buildDocxHighlightLayer, buildDocxTextLayer, isOoxmlDecodedImageLimitError, noteText, openExternalHyperlink, readDocxTextSelectionContext, resolveCommentAnchorRuns, resolveDocxCommentThreads, resolveRevisionAnchorRuns };
2646
2738
  }
2647
2739
  //#endregion
2648
- //#region dist/.types-work/pptx-B0JHj0n1.d.ts
2740
+ //#region dist/.types-work/types-PWBS8kGC.d.ts
2649
2741
  interface BlipBullet {
2650
2742
  type: 'blip';
2651
2743
  imagePath: string;
@@ -2906,6 +2998,8 @@ interface PictureElement {
2906
2998
  scene3d?: Scene3d;
2907
2999
  sp3d?: Sp3d;
2908
3000
  }
3001
+ //#endregion
3002
+ //#region dist/.types-work/pptx-Btl3_eEe.d.ts
2909
3003
  interface PptxTextRunInfo {
2910
3004
  elementIndex?: number;
2911
3005
  origin?: SlideElementOrigin;
@@ -3030,6 +3124,10 @@ interface PptxElementBounds {
3030
3124
  type PptxSelectionContext = PptxTextSelectionContext | PptxCommentSelectionContext | PptxElementContext;
3031
3125
  type LoadOptions$1 = LoadOptions$3 & {
3032
3126
  mode?: 'main' | 'worker';
3127
+ progressiveLayout?: boolean;
3128
+ onLayoutProgress?: (progress: Readonly<ProgressiveLayoutProgress>) => void;
3129
+ onLayoutPartial?: (progress: Readonly<ProgressiveLayoutPartial>) => void;
3130
+ onLayoutComplete?: (error?: unknown) => void;
3033
3131
  };
3034
3132
  interface RenderSlideToBitmapOptions {
3035
3133
  width?: number;
@@ -3052,13 +3150,27 @@ declare class PptxPresentation {
3052
3150
  private readonly _worker;
3053
3151
  private readonly _bridge;
3054
3152
  private _mode;
3153
+ private _bootstrap;
3055
3154
  private _preflight;
3155
+ private _availableSlideCount;
3156
+ private readonly _layoutLifecycle;
3157
+ private readonly _layoutObservers;
3158
+ private _layoutCompletion;
3159
+ private _parseRequestId;
3160
+ private _progressive;
3161
+ private _progressiveWatchdog;
3162
+ private _progressiveWatchdogMs;
3163
+ private readonly _layoutWaiters;
3056
3164
  private _slides;
3057
3165
  private _slidePullClient;
3058
3166
  private _resourceFailure;
3059
3167
  private _slidePartIndex;
3060
3168
  private readonly _rawParts;
3061
3169
  private _googleFontFaces;
3170
+ private _embeddedFontFaces;
3171
+ private _embeddedFontAliases;
3172
+ private _embeddedFontAuthoredFamilies;
3173
+ private _destroyed;
3062
3174
  private readonly _fetchImage;
3063
3175
  private readonly _fetchMedia;
3064
3176
  private _math;
@@ -3070,7 +3182,22 @@ declare class PptxPresentation {
3070
3182
  private _rethrowWithResourceFailure;
3071
3183
  static load(source: string | ArrayBuffer, opts?: LoadOptions$1): Promise<PptxPresentation>;
3072
3184
  private _parse;
3185
+ private _parseMainProgressively;
3186
+ private _parseWorkerProgressively;
3187
+ private _createSlidePullClient;
3188
+ private _onWorkerLayoutPush;
3189
+ private _applyProgressivePrefix;
3190
+ private _finishProgressiveLayout;
3191
+ private _failProgressiveLayout;
3192
+ private _wakeLayoutWaiters;
3193
+ private _rearmProgressiveWatchdog;
3194
+ private _clearProgressiveWatchdog;
3195
+ private _waitForSlide;
3196
+ private _assertSlideIndex;
3073
3197
  get slideCount(): number;
3198
+ get availableSlideCount(): number;
3199
+ get layoutComplete(): boolean;
3200
+ waitUntilLayoutComplete(): Promise<void>;
3074
3201
  get slideWidth(): number;
3075
3202
  get slideHeight(): number;
3076
3203
  get mode(): 'main' | 'worker';
@@ -3089,6 +3216,7 @@ declare class PptxPresentation {
3089
3216
  getMedia(mediaPath: string): Promise<Blob>;
3090
3217
  private _findMimeTypeForPath;
3091
3218
  getImage(imagePath: string, mimeType: string): Promise<Blob>;
3219
+ private getFontBytes;
3092
3220
  getResourceMetrics(): Promise<OoxmlResourceMetrics>;
3093
3221
  toMarkdown(): Promise<string>;
3094
3222
  presentSlide(canvas: HTMLCanvasElement, slideIndex: number, opts?: PresentSlideOptions): Promise<PresentationHandle>;
@@ -3096,7 +3224,7 @@ declare class PptxPresentation {
3096
3224
  }
3097
3225
  type HiddenSlideMode = 'show' | 'skip' | 'dim';
3098
3226
  interface PptxViewerOptions extends Pick<RenderOptions, 'width' | 'dpr'>, LoadOptions$1 {
3099
- onSlideChange?: (index: number, total: number) => void;
3227
+ onSlideChange?: (index: number, total: number, layoutComplete: boolean) => void;
3100
3228
  onError?: (err: Error) => void;
3101
3229
  zoomMin?: number;
3102
3230
  zoomMax?: number;
@@ -3122,6 +3250,7 @@ declare class PptxViewer implements ZoomableViewer {
3122
3250
  private highlightLayer;
3123
3251
  private elementLayer;
3124
3252
  private _find;
3253
+ private _findGeneration;
3125
3254
  private _measureCtx;
3126
3255
  private readonly presentationOwner;
3127
3256
  private get engine();
@@ -3129,6 +3258,7 @@ declare class PptxViewer implements ZoomableViewer {
3129
3258
  private readonly hostWindow;
3130
3259
  private readonly opts;
3131
3260
  private currentSlide;
3261
+ private _renderedSlide;
3132
3262
  private _hiddenMode;
3133
3263
  private handle;
3134
3264
  private readonly _mode;
@@ -3142,10 +3272,21 @@ declare class PptxViewer implements ZoomableViewer {
3142
3272
  private elementContext;
3143
3273
  private elementHitGeneration;
3144
3274
  private readonly elementHitTolerance;
3275
+ private readonly _loadingLayer;
3276
+ private _layoutUnsubscribe;
3277
+ private readonly _layoutWaiters;
3278
+ private _layoutFailed;
3279
+ private _navigationGeneration;
3280
+ private _renderProgressGeneration;
3281
+ private _lastReportedSlide;
3282
+ private _lastReportedTotal;
3283
+ private _lastReportedAvailable;
3284
+ private _lastReportedLayoutComplete;
3145
3285
  static fromPresentation(canvas: HTMLCanvasElement, presentation: PptxPresentation, opts?: Omit<PptxViewerOptions, keyof LoadOptions$1>): Omit<PptxViewer, 'load'>;
3146
3286
  constructor(canvas: HTMLCanvasElement, opts?: PptxViewerOptions);
3147
3287
  load(source: string | ArrayBuffer): Promise<void>;
3148
3288
  goToSlide(index: number): Promise<void>;
3289
+ private _goToSlide;
3149
3290
  nextSlide(): Promise<void>;
3150
3291
  prevSlide(): Promise<void>;
3151
3292
  private _step;
@@ -3156,6 +3297,9 @@ declare class PptxViewer implements ZoomableViewer {
3156
3297
  get visibleSlideCount(): number;
3157
3298
  get slideIndex(): number;
3158
3299
  get slideCount(): number;
3300
+ get availableSlideCount(): number;
3301
+ get layoutComplete(): boolean;
3302
+ waitUntilLayoutComplete(): Promise<void>;
3159
3303
  getNotes(slideIndex: number): string | null;
3160
3304
  get canvasElement(): HTMLCanvasElement;
3161
3305
  private _naturalWidthPx;
@@ -3170,6 +3314,14 @@ declare class PptxViewer implements ZoomableViewer {
3170
3314
  fitPage(): Promise<void>;
3171
3315
  private _fit;
3172
3316
  private renderCurrentSlide;
3317
+ private _bindLayoutPresentation;
3318
+ private _unbindLayoutPresentation;
3319
+ private _beginNavigation;
3320
+ private _onLayoutPublication;
3321
+ private _waitForSlide;
3322
+ private _wakeLayoutWaiters;
3323
+ private _emitSlideChange;
3324
+ private _setLoading;
3173
3325
  private _buildHighlightLayer;
3174
3326
  private _measureForFont;
3175
3327
  private _collectSlideRuns;
@@ -3177,6 +3329,7 @@ declare class PptxViewer implements ZoomableViewer {
3177
3329
  findNext(): Promise<FindMatch<PptxMatchLocation> | null>;
3178
3330
  findPrev(): Promise<FindMatch<PptxMatchLocation> | null>;
3179
3331
  clearFind(): void;
3332
+ private _invalidateFind;
3180
3333
  private _activateMatch;
3181
3334
  private _redrawHighlights;
3182
3335
  private _buildTextLayer;
@@ -3224,7 +3377,7 @@ interface PptxScrollViewerOptions extends Pick<RenderSlideOptions, 'width' | 'dp
3224
3377
  refitOnResize?: boolean;
3225
3378
  background?: string;
3226
3379
  pageShadow?: string | false;
3227
- onVisibleSlideChange?: (topIndex: number, total: number) => void;
3380
+ onVisibleSlideChange?: (topIndex: number, total: number, layoutComplete: boolean) => void;
3228
3381
  onScaleChange?: (scale: number) => void;
3229
3382
  onError?: (err: Error) => void;
3230
3383
  onHyperlinkClick?: (target: HyperlinkTarget) => void;
@@ -3235,6 +3388,7 @@ declare class PptxScrollViewer implements ZoomableViewer {
3235
3388
  private get _pres();
3236
3389
  private readonly _borrowed;
3237
3390
  private readonly _opts;
3391
+ private readonly _errorRouter;
3238
3392
  private readonly _container;
3239
3393
  private readonly _wrapper;
3240
3394
  private readonly _scrollHost;
@@ -3248,6 +3402,9 @@ declare class PptxScrollViewer implements ZoomableViewer {
3248
3402
  private _uniformSlideHeight;
3249
3403
  private _lastRange;
3250
3404
  private _lastTopIndex;
3405
+ private _lastReportedTotal;
3406
+ private _lastReportedLayoutComplete;
3407
+ private _layoutUnsubscribe;
3251
3408
  private _scrollListener;
3252
3409
  private _selectionChangeListener;
3253
3410
  private _selectionContextKey;
@@ -3263,6 +3420,10 @@ declare class PptxScrollViewer implements ZoomableViewer {
3263
3420
  private _commentGeometryFrame;
3264
3421
  private readonly _pendingCommentGeometry;
3265
3422
  private _hasComments;
3423
+ private _reviewOriginPx;
3424
+ private _commentScanFrontier;
3425
+ private readonly _layoutWaiters;
3426
+ private _layoutFailed;
3266
3427
  private _elementHitGeneration;
3267
3428
  private readonly _elementHitTolerance;
3268
3429
  private _destroyed;
@@ -3276,12 +3437,16 @@ declare class PptxScrollViewer implements ZoomableViewer {
3276
3437
  private _lastFitWidth;
3277
3438
  private readonly _pageShadow;
3278
3439
  private readonly _find;
3440
+ private _findGeneration;
3279
3441
  private _findActive;
3280
3442
  private _findMeasureCtx;
3281
3443
  static fromPresentation(container: HTMLElement, presentation: PptxPresentation, opts?: Omit<PptxScrollViewerOptions, keyof LoadOptions$1>): Omit<PptxScrollViewer, 'load'>;
3282
3444
  constructor(container: HTMLElement, opts?: PptxScrollViewerOptions);
3283
3445
  load(source: string | ArrayBuffer): Promise<void>;
3284
3446
  get slideCount(): number;
3447
+ get availableSlideCount(): number;
3448
+ get layoutComplete(): boolean;
3449
+ waitUntilLayoutComplete(): Promise<void>;
3285
3450
  private _slideWidthPx;
3286
3451
  private _slideHeightPx;
3287
3452
  private _fitWidthPx;
@@ -3292,7 +3457,8 @@ declare class PptxScrollViewer implements ZoomableViewer {
3292
3457
  private _commentsOptions;
3293
3458
  private _commentSide;
3294
3459
  private _syncCommentMarginGeometry;
3295
- private _presentationHasComments;
3460
+ private _scanAvailableComments;
3461
+ private _refreshDiscoveredComments;
3296
3462
  private _baseScale;
3297
3463
  relayout(): void;
3298
3464
  private _relayout;
@@ -3318,6 +3484,14 @@ declare class PptxScrollViewer implements ZoomableViewer {
3318
3484
  private _positionSlot;
3319
3485
  private _dpr;
3320
3486
  private _renderSlot;
3487
+ private _trackSlotLoading;
3488
+ private _bindLayoutPresentation;
3489
+ private _unbindLayoutPresentation;
3490
+ private _onLayoutPublication;
3491
+ private _wakeLayoutWaiters;
3492
+ private _beginCommentNavigation;
3493
+ private _waitForSlideMetadata;
3494
+ private _emitVisibleSlideChange;
3321
3495
  private _renderInteractiveSlot;
3322
3496
  private _syncMediaPlayback;
3323
3497
  private _reportRenderError;
@@ -3347,6 +3521,7 @@ declare class PptxScrollViewer implements ZoomableViewer {
3347
3521
  findNext(): Promise<FindMatch<PptxMatchLocation> | null>;
3348
3522
  findPrev(): Promise<FindMatch<PptxMatchLocation> | null>;
3349
3523
  clearFind(): void;
3524
+ private _invalidateFind;
3350
3525
  private _activateMatch;
3351
3526
  private _collectSlideRuns;
3352
3527
  private _redrawHighlights;
@@ -3386,7 +3561,7 @@ declare namespace pptx_d_exports {
3386
3561
  export { ArrowEnd, AutoResizeOptions, Bevel3d, BlipBullet, Bullet, Camera3d, ChartAreaGroupDecorations, ChartBarGroupDecorations, ChartDataLabelOverride, ChartDataPointOverride, ChartDataTable, ChartDecorationLineStyle, ChartDisplayUnits, ChartDisplayUnitsLabel, ChartElement, ChartErrBars, ChartExElementStyle, ChartExRenderer, ChartLabelBox, ChartLegendEntryOverride, ChartLineDashSegment, ChartLineGroupDecorations, ChartManualLayout, ChartModel, ChartOfPie, ChartPlotGroup, ChartPlotGroupAxisSlot, ChartPlotGroupKind, ChartRect, ChartRegionMapRenderer, ChartSeries, ChartSeriesDataLabels, ChartStockBarPaint, ChartStockUpDownBarStyle, ChartSurfaceBandFormat, ChartTextBox, ChartTextParagraph, ChartTextRun, ChartThreeD, ChartThreeDPictureOptions, ChartThreeDRenderer, ChartThreeDSeriesAxis, ChartThreeDSurface, ChartTrendline, ChartType, ChartexBoxSeries, ChartexBoxWhisker, ChartexGeography, ChartexHistogramBinning, ChartexRegionMap, ChartexRegionMapColors, ChartexRegionMapRow, ChartexSunburst, ChartexSunburstRow, ChartexTreemap, ChartexValueColorStop, DimOptions, DrawingMLCustomDashSegment, Duotone$1 as Duotone, EquationRun, Fill, FillRect, FindHighlightColors, FindMatch, FindMatchesOptions, Glow, GradientFill, GradientStop$1 as GradientStop, HiddenSlideMode, HyperlinkTarget, ImageFill, LegendManualLayout, LightRig, LineBreak, LoadOptions$1 as LoadOptions, MatchRunSlice, MathAccent, MathArray, MathBar, MathBorderBox, MathBox, MathDelimiter, MathFraction, MathFunc, MathGroup, MathGroupChr, MathLimit, MathNary, MathNode, MathPhant, MathRadical, MathRenderer, MathRun, MathSPre, MathScript, MathStyle, MathSvg, MediaElement, NoFill, OoxmlDecodedImageLimitError, OoxmlDecodedImageLimitMetric, OoxmlError, OoxmlErrorCode, OoxmlErrorStage, OoxmlFormat, OoxmlResourceLimit, OoxmlResourceLimitError, OoxmlResourceLimitErrorDetails, OoxmlResourceLimits, OoxmlResourceMetric, OoxmlResourceMetrics, OoxmlResourceMetricsCheckpoint, OoxmlResourceName, OoxmlResourcePolicySnapshot, OoxmlResourceUsageSnapshot, OoxmlResourceViolation, Paragraph, PathCmd$2 as PathCmd, PatternFill, PictureElement, PptxComment, PptxCommentAnchor, PptxCommentReply, PptxCommentSelectionContext, PptxCommentsOptions, PptxElementBounds, PptxElementContext, PptxElementContextOptions, PptxHighlightColors, PptxHighlightMatch, PptxMatchLocation, PptxPresentation, PptxScrollViewer, PptxScrollViewerOptions, PptxSelectionContext, PptxSelectionContextOptions, PptxSelectionRunLocator, PptxSlidePoint, PptxTextRunInfo, PptxTextSelectionContext, PptxViewer, PptxViewerOptions, PresentSlideOptions, Presentation, PresentationHandle, Reflection, RenderOptions, RenderSlideOptions, RenderSlideToBitmapOptions, Rot3d, Scene3d, SecondaryValueAxis, Shadow, ShapeElement, Slide, SlideElement, SlideElementOrigin, SlideElementSource, SlideRenderOptions, SoftEdge, SolidFill, Sp3d, SpaceLine, SrcRect, Stroke, TabStop$1 as TabStop, TableCell, TableElement, TableRow, TextBody, TextOutline, TextRect, TextRun, TextRunCallback, TextRunData, TextSelectionContextOptions, TileInfo, ViewerCommentConnectorOptions, ViewerCommentConnectorRoute, ViewerCommentConnectorStroke, ViewerCommentMessageContext, ViewerCommentThreadContext, ViewerContextMenuEvent, ZoomableViewer, autoResize, buildPptxHighlightLayer, buildPptxTextLayer, isOoxmlDecodedImageLimitError, openExternalHyperlink, readPptxTextSelectionContext, renderSlide };
3387
3562
  }
3388
3563
  //#endregion
3389
- //#region dist/.types-work/xlsx-Dx2KTVG5.d.ts
3564
+ //#region dist/.types-work/types-Dktpy0kq.d.ts
3390
3565
  type ShapeFill = Exclude<Fill, {
3391
3566
  fillType: 'image';
3392
3567
  } | {
@@ -4138,6 +4313,8 @@ interface XlsxRenderViewportOptions {
4138
4313
  strong: boolean;
4139
4314
  } | null;
4140
4315
  }
4316
+ //#endregion
4317
+ //#region dist/.types-work/xlsx-BjLUPERo.d.ts
4141
4318
  type ResolvedList = {
4142
4319
  kind: 'values';
4143
4320
  values: string[];