pptx-angular-viewer 4.6.0 → 4.7.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.
@@ -1264,7 +1264,34 @@ interface ChartSvgPatternDef {
1264
1264
  height: number;
1265
1265
  preserveAspectRatio?: string;
1266
1266
  }
1267
- type ChartSvgDef = ChartSvgPatternDef;
1267
+ /** One `<stop>` of a gradient def (`offset` 0..1). */
1268
+ interface ChartSvgGradientStop {
1269
+ offset: number;
1270
+ color: string;
1271
+ opacity?: number;
1272
+ }
1273
+ /**
1274
+ * A chart gradient fill (`c:spPr/a:gradFill`, see `chart-gradient-defs.ts`),
1275
+ * in `objectBoundingBox` units: a linear gradient's vector runs x1,y1 to
1276
+ * x2,y2; a radial one centres on cx,cy with radius r.
1277
+ */
1278
+ type ChartSvgGradientDef = {
1279
+ kind: 'linearGradient';
1280
+ id: string;
1281
+ x1: number;
1282
+ y1: number;
1283
+ x2: number;
1284
+ y2: number;
1285
+ stops: ChartSvgGradientStop[];
1286
+ } | {
1287
+ kind: 'radialGradient';
1288
+ id: string;
1289
+ cx: number;
1290
+ cy: number;
1291
+ r: number;
1292
+ stops: ChartSvgGradientStop[];
1293
+ };
1294
+ type ChartSvgDef = ChartSvgPatternDef | ChartSvgGradientDef;
1268
1295
 
1269
1296
  /**
1270
1297
  * Chart title rich text: per-run render spans and the flat-text-edit
@@ -2498,6 +2525,35 @@ declare function applyAnimationPreset(animations: PptxElementAnimation[], elemen
2498
2525
  /** Return `animations` without the entry for `elementId`. */
2499
2526
  declare function removeElementAnimation(animations: PptxElementAnimation[], elementId: string): PptxElementAnimation[];
2500
2527
 
2528
+ /**
2529
+ * `animation-bookmark-trigger`: the "On bookmark" trigger picker every
2530
+ * binding's animation panel shows.
2531
+ *
2532
+ * An effect with `trigger: 'onMediaBookmark'` waits for a media element on the
2533
+ * slide to reach one of its bookmarks (`MediaPptxElement.bookmarks`). The
2534
+ * picker is a single `<select>` whose options are every (media element,
2535
+ * bookmark) pair on the slide; each option's value packs both halves so a
2536
+ * binding only ever maps {@link listMediaBookmarkOptions} onto `<option>`s and
2537
+ * hands the chosen value back to {@link setTriggerBookmark}.
2538
+ *
2539
+ * @module render/animation-bookmark-trigger
2540
+ */
2541
+
2542
+ /** One entry of the bookmark `<select>`. */
2543
+ interface MediaBookmarkOption {
2544
+ /** Opaque `<option value>`: pass it back to {@link setTriggerBookmark}. */
2545
+ value: string;
2546
+ /** The media element the bookmark belongs to. */
2547
+ mediaId: string;
2548
+ /** The bookmark's name. */
2549
+ bookmarkName: string;
2550
+ /**
2551
+ * Display text: the bookmark name, prefixed with the media element's name
2552
+ * when the slide has more than one media element with bookmarks.
2553
+ */
2554
+ label: string;
2555
+ }
2556
+
2501
2557
  /**
2502
2558
  * `animation-sound-authoring` — pure decision logic for the animation panel's
2503
2559
  * effect sound picker (`p:stSnd`).
@@ -7857,6 +7913,18 @@ interface OutlineRow {
7857
7913
  /** A logical editor command produced by one key press. */
7858
7914
  type EditorKeyActionName = 'undo' | 'redo' | 'copy' | 'cut' | 'paste' | 'duplicate' | 'delete' | 'selectAll' | 'group' | 'ungroup' | 'nudge' | 'prevSlide' | 'nextSlide' | 'escape' | 'find' | 'findReplace' | 'toggleShortcuts' | 'alignLeft' | 'alignCenter' | 'alignRight' | 'alignJustify' | 'increaseFontSize' | 'decreaseFontSize' | 'copyFormat' | 'pasteFormat' | 'newSlide' | 'hyperlink' | 'clearFormatting' | 'cycleSelectionNext' | 'cycleSelectionPrev' | 'pasteSpecial';
7859
7915
 
7916
+ /**
7917
+ * The Merge Shapes menu as data: one entry per operation with its i18n key and
7918
+ * the context-menu command id it answers to, so the ribbon dropdown and the
7919
+ * right-click entries in all five bindings list the same operations in the
7920
+ * same order under the same names.
7921
+ *
7922
+ * @module render/merge-shapes/merge-shapes-menu
7923
+ */
7924
+
7925
+ /** The right-click command id for each operation. */
7926
+ type MergeShapesCommandId = 'merge-union' | 'merge-combine' | 'merge-fragment' | 'merge-intersect' | 'merge-subtract';
7927
+
7860
7928
  /**
7861
7929
  * The one definition of what the canvas context menu contains.
7862
7930
  *
@@ -7881,7 +7949,7 @@ type EditorKeyActionName = 'undo' | 'redo' | 'copy' | 'cut' | 'paste' | 'duplica
7881
7949
  */
7882
7950
 
7883
7951
  /** Every command a canvas context menu can offer, in no particular order. */
7884
- type ContextMenuCommandId = 'copy' | 'cut' | 'paste' | 'duplicate' | 'edit-text' | 'bring-forward' | 'send-backward' | 'bring-front' | 'send-back' | 'ai-ask' | 'ai-fix' | 'comment' | 'hyperlink' | 'table-insert-row-above' | 'table-insert-row-below' | 'table-delete-row' | 'table-insert-col-left' | 'table-insert-col-right' | 'table-delete-col' | 'table-merge-selected' | 'table-merge-right' | 'table-merge-down' | 'table-split' | 'group' | 'ungroup' | 'save-as-picture' | 'edit-alt-text' | 'size-and-position' | 'format-shape' | 'delete';
7952
+ type ContextMenuCommandId = 'copy' | 'cut' | 'paste' | 'duplicate' | 'edit-text' | 'edit-points' | 'bring-forward' | 'send-backward' | 'bring-front' | 'send-back' | 'ai-ask' | 'ai-fix' | 'comment' | 'hyperlink' | 'table-insert-row-above' | 'table-insert-row-below' | 'table-delete-row' | 'table-insert-col-left' | 'table-insert-col-right' | 'table-delete-col' | 'table-merge-selected' | 'table-merge-right' | 'table-merge-down' | 'table-split' | 'group' | 'ungroup' | 'crop' | MergeShapesCommandId | 'save-as-picture' | 'edit-alt-text' | 'size-and-position' | 'format-shape' | 'delete';
7885
7953
  /** One rendered entry: a command, plus how it is presented. */
7886
7954
  interface ContextMenuEntry {
7887
7955
  id: ContextMenuCommandId;
@@ -9586,7 +9654,7 @@ declare function saveViewerProfile(profile: ViewerProfile): void;
9586
9654
  * whole control cluster (zoom in/out/fit, prev/next) rather than each button
9587
9655
  * in it, matching how hosts actually want to hide/keep them as a unit.
9588
9656
  */
9589
- type ToolbarButtonId = 'share' | 'broadcast' | 'export' | 'undo' | 'redo' | 'record' | 'notes' | 'fullscreen' | 'zoom' | 'navigation';
9657
+ type ToolbarButtonId = 'share' | 'broadcast' | 'export' | 'undo' | 'redo' | 'record' | 'notes' | 'fullscreen' | 'zoom' | 'navigation' | 'mergeShapes' | 'crop';
9590
9658
  /** A top-level ribbon tab. `record` intentionally shares its id with the quick-access Record button above: both surface the same recording feature, so hiding one hides the other. */
9591
9659
  type ToolbarTabId = 'file' | 'home' | 'insert' | 'draw' | 'design' | 'transitions' | 'animations' | 'slideShow' | 'record' | 'review' | 'view' | 'help';
9592
9660
  type ToolbarActionId = ToolbarButtonId | ToolbarTabId;
@@ -9906,6 +9974,30 @@ interface Rendering3DFlags {
9906
9974
  pieChart3D: boolean;
9907
9975
  }
9908
9976
 
9977
+ /** Every command the Edit Points right-click menu can offer. */
9978
+ type EditPointsCommandId = 'add-point' | 'delete-point' | 'delete-segment' | 'open-path' | 'close-path' | 'smooth-point' | 'straight-point' | 'corner-point' | 'straight-segment' | 'curved-segment' | 'exit';
9979
+
9980
+ /**
9981
+ * Geometry for PowerPoint's Insert > Shapes > Lines drawing tools that build
9982
+ * an `a:custGeom` freeform from clicks:
9983
+ *
9984
+ * - **Freeform: Shape** (`freeformShape`): each click places a corner; a drag
9985
+ * between clicks adds a freehand run (simplified, then drawn as short
9986
+ * straight segments, as PowerPoint stores it);
9987
+ * - **Curve** (`curve`): each click places a point the outline passes
9988
+ * through smoothly (a Catmull-Rom spline, emitted as cubic Beziers).
9989
+ *
9990
+ * Both close when the user clicks back on the start point, and otherwise stay
9991
+ * open. The element box, EMU path space and serialisation are the same as an
9992
+ * Edit Points commit (`editGeometryToElementPatch`), so a drawn freeform is
9993
+ * byte-for-byte the kind of shape Edit Points produces.
9994
+ *
9995
+ * @module render/edit-points/freeform-tool-geometry
9996
+ */
9997
+
9998
+ /** The two click-to-place drawing tools. */
9999
+ type FreeformToolKind = 'freeformShape' | 'curve';
10000
+
9909
10001
  /**
9910
10002
  * Control/section/tab descriptor types for the File > Options schema, plus
9911
10003
  * the terse constructors the tab-definition modules build panes with.
@@ -10049,6 +10141,11 @@ interface ContextMenuCustomization {
10049
10141
  hiddenElementCommands?: readonly ContextMenuCommandId[];
10050
10142
  /** Entries to remove from the empty-canvas menu. */
10051
10143
  hiddenCanvasCommands?: readonly CanvasContextMenuCommandId[];
10144
+ /**
10145
+ * Entries to remove from the Edit Points menu (right-click a vertex or a
10146
+ * segment while editing a shape's points).
10147
+ */
10148
+ hiddenEditPointsCommands?: readonly EditPointsCommandId[];
10052
10149
  /** Remove the element context menu entirely. */
10053
10150
  disableElementMenu?: boolean;
10054
10151
  /** Remove the empty-canvas context menu entirely. */
@@ -10078,7 +10175,12 @@ interface KeyboardCustomization {
10078
10175
  */
10079
10176
  type ViewerPanelId = 'statusBar' | 'slidesPane' | 'inspector' | 'notes' | 'quickAccessToolbar' | 'titleBar';
10080
10177
  /** Feature areas that can be switched off as a whole. */
10081
- type ViewerFeatureId = 'ai' | 'collaboration' | 'comments' | 'presentMode';
10178
+ type ViewerFeatureId = 'ai' | 'collaboration' | 'comments' | 'presentMode' | 'editPoints';
10179
+ /**
10180
+ * The click-to-place drawing tools of Insert > Shapes > Lines: Freeform:
10181
+ * Shape and Curve.
10182
+ */
10183
+ type ViewerDrawingToolId = FreeformToolKind;
10082
10184
  /** Dialogs (and the entry points that open them) a host can remove. */
10083
10185
  type ViewerDialogId = 'options' | 'share' | 'broadcast' | 'print' | 'export';
10084
10186
  /** Export formats offered by the File > Export page. */
@@ -10101,6 +10203,8 @@ interface ViewerCustomization {
10101
10203
  hiddenDialogs?: readonly ViewerDialogId[];
10102
10204
  /** Export formats to remove from File > Export. */
10103
10205
  hiddenExportFormats?: readonly ViewerExportFormatId[];
10206
+ /** Drawing tools to remove from the Insert > Shapes gallery. */
10207
+ hiddenDrawingTools?: readonly ViewerDrawingToolId[];
10104
10208
  }
10105
10209
 
10106
10210
  /**
@@ -10175,17 +10279,17 @@ interface ViewerOptionsStore {
10175
10279
  }
10176
10280
 
10177
10281
  declare const RIBBON_TAB_IDS: readonly ToolbarTabId[];
10178
- declare const TOOLBAR_BUTTON_IDS: readonly ["share", "broadcast", "export", "undo", "redo", "record", "notes", "fullscreen", "zoom", "navigation"];
10282
+ declare const TOOLBAR_BUTTON_IDS: readonly ["share", "broadcast", "export", "undo", "redo", "record", "notes", "fullscreen", "zoom", "navigation", "mergeShapes", "crop"];
10179
10283
  declare const OPTIONS_PAGE_IDS: readonly OptionsPageId[];
10180
10284
  declare const OPTIONS_SECTION_IDS: readonly OptionsSectionId[];
10181
10285
  declare const OPTIONS_SETTING_IDS: readonly OptionsSettingId[];
10182
10286
  declare const BACKSTAGE_PAGE_IDS: readonly BackstagePage[];
10183
10287
  declare const BACKSTAGE_CARD_IDS: readonly BackstageCardId[];
10184
- declare const ELEMENT_CONTEXT_MENU_COMMAND_IDS: readonly ["copy", "cut", "paste", "duplicate", "edit-text", "bring-forward", "send-backward", "bring-front", "send-back", "ai-ask", "ai-fix", "comment", "hyperlink", "table-insert-row-above", "table-insert-row-below", "table-delete-row", "table-insert-col-left", "table-insert-col-right", "table-delete-col", "table-merge-selected", "table-merge-right", "table-merge-down", "table-split", "group", "ungroup", "save-as-picture", "edit-alt-text", "size-and-position", "format-shape", "delete"];
10288
+ declare const ELEMENT_CONTEXT_MENU_COMMAND_IDS: readonly ["copy", "cut", "paste", "duplicate", "edit-text", "edit-points", "bring-forward", "send-backward", "bring-front", "send-back", "ai-ask", "ai-fix", "comment", "hyperlink", "table-insert-row-above", "table-insert-row-below", "table-delete-row", "table-insert-col-left", "table-insert-col-right", "table-delete-col", "table-merge-selected", "table-merge-right", "table-merge-down", "table-split", "group", "ungroup", "crop", "merge-union", "merge-combine", "merge-fragment", "merge-intersect", "merge-subtract", "save-as-picture", "edit-alt-text", "size-and-position", "format-shape", "delete"];
10185
10289
  declare const CANVAS_CONTEXT_MENU_COMMAND_IDS: readonly ["paste", "layout", "reset-slide", "format-background", "grid-and-guides", "ruler"];
10186
10290
  declare const EDITOR_SHORTCUT_ACTION_IDS: readonly ["undo", "redo", "copy", "cut", "paste", "duplicate", "delete", "selectAll", "group", "ungroup", "nudge", "prevSlide", "nextSlide", "escape", "find", "findReplace", "toggleShortcuts", "alignLeft", "alignCenter", "alignRight", "alignJustify", "increaseFontSize", "decreaseFontSize", "copyFormat", "pasteFormat", "newSlide", "hyperlink", "clearFormatting", "cycleSelectionNext", "cycleSelectionPrev", "pasteSpecial"];
10187
10291
  declare const VIEWER_PANEL_IDS: readonly ["statusBar", "slidesPane", "inspector", "notes", "quickAccessToolbar", "titleBar"];
10188
- declare const VIEWER_FEATURE_IDS: readonly ["ai", "collaboration", "comments", "presentMode"];
10292
+ declare const VIEWER_FEATURE_IDS: readonly ["ai", "collaboration", "comments", "presentMode", "editPoints"];
10189
10293
  declare const VIEWER_DIALOG_IDS: readonly ["options", "share", "broadcast", "print", "export"];
10190
10294
  declare const VIEWER_EXPORT_FORMAT_IDS: readonly ["pdf", "png", "video", "gif", "json", "copyImage"];
10191
10295
 
@@ -10214,6 +10318,7 @@ interface ResolvedKeyboardCustomization {
10214
10318
  * - switching off `collaboration` removes the Share and Broadcast dialogs;
10215
10319
  * - switching off `comments` removes the Add Comment menu entry;
10216
10320
  * - switching off `presentMode` removes the Slide Show tab;
10321
+ * - switching off `editPoints` removes the Edit Points menu entry;
10217
10322
  * - hiding a dialog removes every entry point that opens it (toolbar button,
10218
10323
  * File tab page, action card);
10219
10324
  * - hiding every export format removes the Export page and button.
@@ -10233,6 +10338,8 @@ interface ResolvedCustomization {
10233
10338
  hiddenBackstageCards: ReadonlySet<BackstageCardId>;
10234
10339
  hiddenElementCommands: ReadonlySet<ContextMenuCommandId>;
10235
10340
  hiddenCanvasCommands: ReadonlySet<CanvasContextMenuCommandId>;
10341
+ hiddenEditPointsCommands: ReadonlySet<EditPointsCommandId>;
10342
+ hiddenDrawingTools: ReadonlySet<ViewerDrawingToolId>;
10236
10343
  elementMenuEnabled: boolean;
10237
10344
  canvasMenuEnabled: boolean;
10238
10345
  hiddenPanels: ReadonlySet<ViewerPanelId>;
@@ -10496,6 +10603,64 @@ interface ViewportFitOptions {
10496
10603
  maxFitScale?: number | null;
10497
10604
  }
10498
10605
 
10606
+ /**
10607
+ * The geometry of PowerPoint's on-canvas picture crop.
10608
+ *
10609
+ * In crop mode two rectangles matter: the FRAME (the element's box, what stays
10610
+ * visible) and the IMAGE (the whole bitmap, cropped-away parts included).
10611
+ * `a:srcRect` ties them together: each inset is the fraction of the image cut
10612
+ * off that side, so `image = frame` grown by those fractions. Dragging a black
10613
+ * crop handle moves a frame edge while the image stays put; dragging inside the
10614
+ * frame pans the image while the frame stays put. Both reduce to "new frame,
10615
+ * new image, recompute the insets", which is all this module does.
10616
+ *
10617
+ * Everything here is in the element's own (unrotated) axes; a binding with a
10618
+ * rotated picture converts pointer deltas with {@link toElementAxes} first.
10619
+ *
10620
+ * @module render/picture-crop/crop-geometry
10621
+ */
10622
+
10623
+ /** An axis-aligned rectangle in slide pixels. */
10624
+ interface CropRect {
10625
+ x: number;
10626
+ y: number;
10627
+ width: number;
10628
+ height: number;
10629
+ }
10630
+ /** The four `a:srcRect` insets as fractions of the image (negative pads). */
10631
+ interface CropInsets {
10632
+ cropLeft: number;
10633
+ cropTop: number;
10634
+ cropRight: number;
10635
+ cropBottom: number;
10636
+ }
10637
+ /** What a crop edit writes back onto the picture element. */
10638
+ type CropElementUpdate = CropInsets & CropRect;
10639
+
10640
+ /**
10641
+ * Crop mode's lifecycle, shared so every binding enters, commits and cancels
10642
+ * it the same way:
10643
+ *
10644
+ * - Enter: the Crop ribbon button, the picture context menu's Crop entry.
10645
+ * Only a croppable picture ({@link canCropElement}) enters.
10646
+ * - While in crop mode, handle and pan drags update the picture LIVE (so the
10647
+ * renderer shows the new `a:srcRect` as it changes) without recording undo.
10648
+ * - Enter, a click outside the picture, selecting something else, or pressing
10649
+ * the Crop button again COMMITS: one undo step from the snapshot taken on
10650
+ * entry to the current state (none when nothing changed).
10651
+ * - Escape CANCELS: the snapshot is written back and no undo step is left.
10652
+ *
10653
+ * @module render/picture-crop/crop-session
10654
+ */
10655
+
10656
+ /** The snapshot a crop session restores on cancel. */
10657
+ interface CropSession {
10658
+ elementId: string;
10659
+ original: CropElementUpdate;
10660
+ /** Insets the picture did not carry at all (no `a:srcRect` opinion). */
10661
+ absentInsets: readonly (keyof CropInsets)[];
10662
+ }
10663
+
10499
10664
  /**
10500
10665
  * Minimal GIF89a encoder (pure JS, no external dependency) plus pure
10501
10666
  * frame-planning helpers — shared by the React, Vue, and Angular bindings.
@@ -12121,7 +12286,8 @@ declare class EditorStateService {
12121
12286
  /**
12122
12287
  * Apply a live transform during a gesture WITHOUT recording history (the
12123
12288
  * gesture's snapshot was taken in {@link beginTransform}). Accepts any subset
12124
- * of x/y/width/height. Routes by id: template (master/layout) elements mutate
12289
+ * of x/y/width/height (plus a picture's crop insets, for crop mode's live
12290
+ * handle drags). Routes by id: template (master/layout) elements mutate
12125
12291
  * the template store, normal elements mutate the slide.
12126
12292
  */
12127
12293
  applyTransform(slideIndex: number, id: string, box: {
@@ -12130,6 +12296,10 @@ declare class EditorStateService {
12130
12296
  width?: number;
12131
12297
  height?: number;
12132
12298
  rotation?: number;
12299
+ cropLeft?: number;
12300
+ cropTop?: number;
12301
+ cropRight?: number;
12302
+ cropBottom?: number;
12133
12303
  }): void;
12134
12304
  /**
12135
12305
  * Recompute the endpoints of every connector bound to one of `movedIds` and
@@ -12677,6 +12847,26 @@ declare class MobileBottomBarComponent {
12677
12847
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<MobileBottomBarComponent, "pptx-mobile-bottom-bar", never, { "slideCount": { "alias": "slideCount"; "required": false; "isSignal": true; }; "commentCount": { "alias": "commentCount"; "required": false; "isSignal": true; }; "activeSheet": { "alias": "activeSheet"; "required": false; "isSignal": true; }; }, { "openSlides": "openSlides"; "insert": "insert"; "openFormat": "openFormat"; "openComments": "openComments"; "notes": "notes"; }, never, never, true, never>;
12678
12848
  }
12679
12849
 
12850
+ declare class OutlineAuthoringService {
12851
+ private readonly editor;
12852
+ /** The shape in Edit Points mode, or null. */
12853
+ readonly editPointsElementId: _angular_core.WritableSignal<string | null>;
12854
+ /** The armed click-to-place drawing tool, or null. */
12855
+ readonly activeFreeformTool: _angular_core.WritableSignal<FreeformToolKind | null>;
12856
+ /**
12857
+ * The canvas selection with the Edit Points shape removed, so its resize
12858
+ * and rotate handles do not sit on top of its vertex handles.
12859
+ */
12860
+ readonly canvasSelectedIds: _angular_core.Signal<readonly string[]>;
12861
+ /** Enter Edit Points on `element` when its outline may be edited. */
12862
+ startEditPoints(element: PptxElement | null | undefined): void;
12863
+ exitEditPoints(): void;
12864
+ /** Arm a drawing tool (null disarms). */
12865
+ armFreeformTool(tool: FreeformToolKind | null): void;
12866
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<OutlineAuthoringService, never>;
12867
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<any>;
12868
+ }
12869
+
12680
12870
  /** The deck after an outline edit, plus the slide the editor should land on. */
12681
12871
  interface OutlineCommit {
12682
12872
  slides: PptxSlide[];
@@ -15019,6 +15209,7 @@ declare class PowerPointViewerComponent extends ViewerCustomizationHandle implem
15019
15209
  protected readonly fileIO: ViewerFileIOService;
15020
15210
  protected readonly themeGallery: ViewerThemeGalleryService;
15021
15211
  protected readonly canvasEditing: ViewerCanvasEditingService;
15212
+ protected readonly outlineAuthoring: OutlineAuthoringService;
15022
15213
  /** Shared AI panel scope + on-canvas highlight store (pick mode, tool focus). */
15023
15214
  protected readonly aiPanelStore: AiPanelStore;
15024
15215
  protected readonly collabCursor: ViewerCollabCursorService;
@@ -15748,6 +15939,46 @@ declare class GoogleWebfontsService {
15748
15939
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<any>;
15749
15940
  }
15750
15941
 
15942
+ /** A live crop session and the slide its picture sits on. */
15943
+ interface PictureCropState {
15944
+ slideIndex: number;
15945
+ session: CropSession;
15946
+ }
15947
+ declare class PictureCropService {
15948
+ private readonly editor;
15949
+ /** The live session, or null outside crop mode. */
15950
+ readonly state: _angular_core.WritableSignal<PictureCropState | null>;
15951
+ /** Id of the picture in crop mode, or null. */
15952
+ readonly activeElementId: _angular_core.Signal<string | null>;
15953
+ /** Whether `id` is the picture currently in crop mode. */
15954
+ isCropping(id: string | null | undefined): boolean;
15955
+ /**
15956
+ * Enter crop mode on `element` (a croppable picture) on slide `slideIndex`.
15957
+ * A session on another picture is committed first. Returns whether crop
15958
+ * mode is now active on `element`.
15959
+ */
15960
+ enter(slideIndex: number, element: PptxElement | null | undefined): boolean;
15961
+ /** The ribbon Crop button: enter, or commit when already cropping. */
15962
+ toggle(slideIndex: number, element: PptxElement | null | undefined): void;
15963
+ /** Apply a live handle / pan update WITHOUT recording history. */
15964
+ applyLive(update: CropElementUpdate): void;
15965
+ /** End the session, leaving one undo step when the crop changed anything. */
15966
+ commit(): void;
15967
+ /** Commit, but only while `session` is still the live one. */
15968
+ commitSession(session: CropSession | null | undefined): void;
15969
+ /** Escape: restore the snapshot and leave no history. */
15970
+ cancel(): void;
15971
+ /**
15972
+ * Crop mode's own keys (Enter commits, Escape cancels). Returns true when
15973
+ * the key was consumed, so the caller skips its normal handling for it
15974
+ * (an Escape that cancels a crop must not also deselect or close chrome).
15975
+ */
15976
+ handleKeyDown(event: KeyboardEvent): boolean;
15977
+ private elementOf;
15978
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<PictureCropService, never>;
15979
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<any>;
15980
+ }
15981
+
15751
15982
  /**
15752
15983
  * The host's opt-in 3D rendering flags (`smartArt3D`, `surfaceChart3D`,
15753
15984
  * `barChart3D`, `lineChart3D`, `areaChart3D`, `pieChart3D`), already narrowed
@@ -15865,6 +16096,7 @@ declare class ViewerKeyboardService {
15865
16096
  private readonly docProperties;
15866
16097
  private readonly canvasEditing;
15867
16098
  private readonly customization;
16099
+ private readonly crop;
15868
16100
  private host;
15869
16101
  /** Wire the host accessors (called once from the component constructor). */
15870
16102
  bind(host: KeyboardHost): void;
@@ -15994,7 +16226,7 @@ declare class ZoomTargetService {
15994
16226
  * `PowerPointViewerComponent`'s children (ribbon, slide canvas, inspector,
15995
16227
  * dialogs, ...) rely on via `inject()`.
15996
16228
  */
15997
- declare const POWER_POINT_VIEWER_PROVIDERS: readonly [typeof LoadContentService, typeof LoadNoticesService, typeof ExportService, typeof EditorStateService, typeof ChartPartSelectionService, typeof TableSelectionService, typeof EmbeddedFontsService, typeof GoogleWebfontsService, typeof CollaborationService, typeof CustomFontsService, typeof AccessibilityService, typeof AutosaveService, typeof AutosaveRecoveryService, typeof PrintService, typeof IsMobileService, typeof Rendering3DService, typeof FieldContextService, typeof RecentColorsService, typeof ZoomTargetService, typeof AiPanelStore, typeof ViewerDialogsService, typeof ViewerCompareService, typeof ViewerExportService, typeof ViewerFindReplaceService, typeof ViewerCustomShowsService, typeof ViewerCollaborationSessionService, typeof ViewerCanvasEditingService, typeof ViewerCollabCursorService, typeof ViewerDocumentPropertiesService, typeof ViewerFileIOService, typeof ViewerFormatPainterService, typeof ViewerInspectorPanelService, typeof ViewerKeyboardService, typeof ViewerMobileSheetService, typeof ViewerOptionsService, typeof ViewerCustomizationService, typeof ViewerPresentationModeService, typeof ViewerThemeGalleryService, typeof ViewerTouchGesturesService, typeof ViewerZoomService];
16229
+ declare const POWER_POINT_VIEWER_PROVIDERS: readonly [typeof LoadContentService, typeof LoadNoticesService, typeof ExportService, typeof EditorStateService, typeof ChartPartSelectionService, typeof TableSelectionService, typeof EmbeddedFontsService, typeof GoogleWebfontsService, typeof CollaborationService, typeof CustomFontsService, typeof AccessibilityService, typeof AutosaveService, typeof AutosaveRecoveryService, typeof PrintService, typeof IsMobileService, typeof Rendering3DService, typeof FieldContextService, typeof RecentColorsService, typeof ZoomTargetService, typeof AiPanelStore, typeof ViewerDialogsService, typeof ViewerCompareService, typeof ViewerExportService, typeof ViewerFindReplaceService, typeof ViewerCustomShowsService, typeof ViewerCollaborationSessionService, typeof ViewerCanvasEditingService, typeof ViewerCollabCursorService, typeof ViewerDocumentPropertiesService, typeof ViewerFileIOService, typeof ViewerFormatPainterService, typeof ViewerInspectorPanelService, typeof ViewerKeyboardService, typeof ViewerMobileSheetService, typeof ViewerOptionsService, typeof ViewerCustomizationService, typeof ViewerPresentationModeService, typeof ViewerThemeGalleryService, typeof ViewerTouchGesturesService, typeof ViewerZoomService, typeof OutlineAuthoringService, typeof PictureCropService];
15998
16230
 
15999
16231
  /** Lifecycle of the AI session bootstrap. */
16000
16232
  type AiChatInitState = 'checking' | 'unavailable' | 'ready' | 'error';
@@ -17287,6 +17519,13 @@ declare class SlideCanvasComponent implements SlideContext {
17287
17519
  private elementById;
17288
17520
  /** The single selected element itself (not just its box), or null. */
17289
17521
  private readonly singleSelectedElement;
17522
+ private readonly pictureCrop;
17523
+ /**
17524
+ * The picture in crop mode, when it is this editable canvas's single
17525
+ * selection. Drives the crop overlay and hides the normal resize / rotate /
17526
+ * adjust handles for it (the overlay also swallows its move-drag).
17527
+ */
17528
+ readonly cropElement: _angular_core.Signal<PptxElement | null>;
17290
17529
  /**
17291
17530
  * The single selected element when (and only when) it is a chart: gates
17292
17531
  * the "Chart Elements"/"Chart Styles"/"Chart Filters" quick-action overlay,
@@ -21444,6 +21683,10 @@ declare class AnimationAuthorPanelComponent {
21444
21683
  * yet have an animation entry. Used by the on-shape-click trigger picker.
21445
21684
  */
21446
21685
  protected readonly otherElements: _angular_core.Signal<PptxElement[]>;
21686
+ /** Every media bookmark on the slide, for the "On bookmark" trigger picker. */
21687
+ protected readonly bookmarkOptions: _angular_core.Signal<MediaBookmarkOption[]>;
21688
+ protected readonly selectedBookmark: _angular_core.Signal<string>;
21689
+ protected onTriggerBookmarkChange(event: Event): void;
21447
21690
  protected elementLabel(element: PptxElement): string;
21448
21691
  private emit;
21449
21692
  protected onPreview(): void;
@@ -21924,10 +22167,7 @@ declare class EditorContextMenuComponent {
21924
22167
  readonly y: _angular_core.InputSignal<number>;
21925
22168
  /** Zero-based index of the slide being edited. */
21926
22169
  readonly slideIndex: _angular_core.InputSignal<number>;
21927
- /**
21928
- * Whether to show the "Ask AI about this" / "Fix with AI" items. Gated by the
21929
- * host on the `ai` config + a single selected element.
21930
- */
22170
+ /** Show "Ask AI about this" / "Fix with AI" (host: `ai` config + one selection). */
21931
22171
  readonly showAiActions: _angular_core.InputSignal<boolean>;
21932
22172
  /** Emitted when the menu should close (Escape or outside click). */
21933
22173
  readonly closed: _angular_core.OutputEmitterRef<void>;
@@ -21935,23 +22175,13 @@ declare class EditorContextMenuComponent {
21935
22175
  readonly askAi: _angular_core.OutputEmitterRef<void>;
21936
22176
  /** "Fix with AI": open the assistant with a prefilled fix directive. */
21937
22177
  readonly fixAi: _angular_core.OutputEmitterRef<void>;
21938
- /**
21939
- * "Edit Hyperlink": the dialog lives at viewer level (it needs the selected
21940
- * element and the document-properties service), so the menu asks for it
21941
- * rather than owning it.
21942
- */
22178
+ /** "Edit Hyperlink": the dialog lives at viewer level, so the menu asks for it. */
21943
22179
  readonly editHyperlink: _angular_core.OutputEmitterRef<void>;
21944
22180
  /** "Add Comment": open the right-docked comments panel, as React does. */
21945
22181
  readonly addComment: _angular_core.OutputEmitterRef<void>;
21946
- /**
21947
- * "Edit Text": the host owns the same inline-text-edit entry point a
21948
- * double-click uses, so the menu just asks for it on the current element.
21949
- */
22182
+ /** "Edit Text": the host owns the inline-text-edit entry point a double-click uses. */
21950
22183
  readonly editText: _angular_core.OutputEmitterRef<void>;
21951
- /**
21952
- * "Save as Picture": the host owns the DOM lookup + html2canvas fallback
21953
- * driver this needs, so the menu asks for it on the current element.
21954
- */
22184
+ /** "Save as Picture": the host owns the DOM lookup + html2canvas driver it needs. */
21955
22185
  readonly saveAsPicture: _angular_core.OutputEmitterRef<void>;
21956
22186
  protected readonly editor: EditorStateService;
21957
22187
  private readonly tableSelection;
@@ -21959,23 +22189,17 @@ declare class EditorContextMenuComponent {
21959
22189
  protected readonly position: ClampedMenuPosition;
21960
22190
  private readonly inspectorPanel;
21961
22191
  private readonly customization;
21962
- /**
21963
- * The table element + cell selection the menu should act on, or null when the
21964
- * current selection is not a single table with a selected cell. Drives the
21965
- * table row/column/merge section of the menu.
21966
- */
22192
+ private readonly outline;
22193
+ private readonly crop;
22194
+ private readonly translate;
22195
+ /** The single table + selected cell the table commands act on, or null. */
21967
22196
  protected readonly tableCtx: _angular_core.Signal<{
21968
22197
  element: TablePptxElement;
21969
22198
  sel: TableCellSelection;
21970
22199
  } | null>;
21971
22200
  /** The single selected element, or null on an empty or multi selection. */
21972
22201
  private readonly selectedElement;
21973
- /**
21974
- * Lock-only half of Group/Ungroup gating (`a:spLocks`/`a:grpSpLocks`
21975
- * `@noGrp`), independent of selection count, mirroring the guard
21976
- * `EditorStateService.groupSelected`/`ungroupSelected` already enforce on
21977
- * the commands themselves (`group-lock-guard.ts`).
21978
- */
22202
+ /** Lock-only Group/Ungroup gating (`@noGrp`); see `group-lock-guard.ts`. */
21979
22203
  private readonly selectionGroupable;
21980
22204
  /** The menu, as the shared command list builds it for this right-click. */
21981
22205
  protected readonly entries: _angular_core.Signal<ContextMenuEntry[]>;
@@ -23486,7 +23710,7 @@ declare class AccountPageComponent {
23486
23710
  readonly accountAuth: _angular_core.InputSignal<AccountAuthConfig | undefined>;
23487
23711
  private readonly translate;
23488
23712
  protected readonly swatches: readonly string[];
23489
- protected readonly version = "4.5.0";
23713
+ protected readonly version = "4.6.0";
23490
23714
  protected readonly profile: _angular_core.WritableSignal<ViewerProfile>;
23491
23715
  protected readonly initial: _angular_core.Signal<string>;
23492
23716
  protected readonly usage: _angular_core.WritableSignal<LocalStorageUsageSummary | null>;
@@ -25351,13 +25575,16 @@ declare class RibbonArrangeSectionComponent {
25351
25575
  readonly canEdit: _angular_core.InputSignal<boolean>;
25352
25576
  readonly formatPainterActive: _angular_core.InputSignal<boolean>;
25353
25577
  readonly canActivateFormatPainter: _angular_core.InputSignal<boolean>;
25578
+ /** Toolbar buttons the host hides (gates Merge Shapes and Crop). */
25579
+ readonly hiddenActions: _angular_core.InputSignal<ToolbarActionId[]>;
25580
+ protected readonly toolbar: ToolbarVisibility;
25354
25581
  readonly toggleFormatPainter: _angular_core.OutputEmitterRef<void>;
25355
25582
  protected hasSel(): boolean;
25356
25583
  protected canDistribute(): boolean;
25357
25584
  /** Toggle horizontal/vertical flip on each selected element. */
25358
25585
  protected flipSelected(axis: 'horizontal' | 'vertical'): void;
25359
25586
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<RibbonArrangeSectionComponent, never>;
25360
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<RibbonArrangeSectionComponent, "pptx-ribbon-arrange-section", never, { "slideIndex": { "alias": "slideIndex"; "required": false; "isSignal": true; }; "selectedElement": { "alias": "selectedElement"; "required": false; "isSignal": true; }; "canEdit": { "alias": "canEdit"; "required": false; "isSignal": true; }; "formatPainterActive": { "alias": "formatPainterActive"; "required": false; "isSignal": true; }; "canActivateFormatPainter": { "alias": "canActivateFormatPainter"; "required": false; "isSignal": true; }; }, { "toggleFormatPainter": "toggleFormatPainter"; }, never, never, true, never>;
25587
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<RibbonArrangeSectionComponent, "pptx-ribbon-arrange-section", never, { "slideIndex": { "alias": "slideIndex"; "required": false; "isSignal": true; }; "selectedElement": { "alias": "selectedElement"; "required": false; "isSignal": true; }; "canEdit": { "alias": "canEdit"; "required": false; "isSignal": true; }; "formatPainterActive": { "alias": "formatPainterActive"; "required": false; "isSignal": true; }; "canActivateFormatPainter": { "alias": "canActivateFormatPainter"; "required": false; "isSignal": true; }; "hiddenActions": { "alias": "hiddenActions"; "required": false; "isSignal": true; }; }, { "toggleFormatPainter": "toggleFormatPainter"; }, never, never, true, never>;
25361
25588
  }
25362
25589
 
25363
25590
  declare class RibbonColorPopoverComponent {
@@ -26845,5 +27072,5 @@ declare function thumbnailHeight(canvasW: number, canvasH: number, thumbW: numbe
26845
27072
  declare function gridColumns(containerW: number, thumbW: number, gap: number, maxCols: number): number;
26846
27073
 
26847
27074
  export { AFTER_ANIMATION_VALUES, ALIGN_OPTIONS, ANIMATION_PRESET_CATEGORIES, AUDIENCE_HASH, AUDIENCE_NONCE_KEY, AVATAR_COLOR_SWATCHES, AXIS_LABEL_COLOR, AccessibilityPanelComponent, AccessibilityService, AccessibilityTextPanelComponent, AccountPageComponent, ActionSettingsPanelComponent, AdvancedChartEditorComponent, AiChangeOverlayComponent, AiChatPanelComponent, AiChatService, AiComposerComponent, AiFocusBarComponent, AiFocusHighlightOverlayComponent, AiHistoryMenuComponent, AiHistoryService, AiMessageListComponent, AiPanelStore, AiProposalCardComponent, AiSettingsSectionComponent, AiToolCallCardComponent, AnimationAuthorPanelComponent, AnimationPanelComponent, AnimationPlaybackService, AutosaveRecoveryDialogComponent, AutosaveService, BACKSTAGE_CARD_IDS, BACKSTAGE_PAGE_IDS, BroadcastDialogComponent, CANVAS_CONTEXT_MENU_COMMAND_IDS, CHART_EDITOR_STYLES, CINEMATIC_TRANSITION_KEYFRAMES, CURSOR_PALETTE, CanvasFitService, ChartAxisOptionsComponent, ChartAxisStyleOptionsComponent, ChartComboTypeOptionsComponent, ChartDataEditorComponent, ChartDataLabelOptionsComponent, ChartDatapointMarkerOptionsComponent, ChartDatapointOptionsComponent, ChartDisplayOptionsComponent, ChartElementViewComponent, ChartErrorBarOptionsComponent, ChartMarkerOptionsComponent, ChartPartSelectionService, ChartPrimitivesComponent, ChartRendererComponent, ChartTrendlineOptionsComponent, ChartTypeSelectorComponent, CollaborationCursorsComponent, CollaborationService, ColorChangedImageComponent, CommentMarkersOverlayComponent, CommentsPanelComponent, CommentsService, ComparePanelComponent, ConnectorRendererComponent, ConnectorTextOverlayComponent, CustomShowsComponent, DEFAULT_BOUNDS, DEFAULT_BROADCAST_SERVER_URL, DEFAULT_CANVAS_HEIGHT, DEFAULT_CANVAS_WIDTH, DEFAULT_COLOR_SCHEME, DEFAULT_FILL_COLOR, DEFAULT_LAYOUT, DEFAULT_MORPH_DURATION_MS, DEFAULT_PALETTE$1 as DEFAULT_PALETTE, DEFAULT_PATTERN_FILL_PRESET, DEFAULT_PRINT_SETTINGS, DEFAULT_SLIDE_BACKGROUND, DEFAULT_STROKE_COLOR, DEFAULT_STYLE, DEFAULT_TABLE_ROW_HEIGHT, DEFAULT_TEXT_COLOR, DEFAULT_VIEWER_PROFILE, DIRECTIONAL_PRESETS, DIRECTION_OPTIONS, DocumentPropertiesCardComponent, EASE, EDITOR_SHORTCUT_ACTION_IDS, EFFECT_SOUND_CATALOGUE, ELEMENT_CONTEXT_MENU_COMMAND_IDS, EMBEDDED_FONTS_STYLE_ID, EMPHASIS_PRESETS, ENTRANCE_PRESETS, TEMPLATES as EQUATION_TEMPLATES, EXIT_PRESETS, EditorContextMenuComponent, EditorHistory, EditorStateService, EditorToolbarComponent, EffectsPanelComponent, ElementRendererComponent, EmbeddedFontsService, EncryptedFileDialogComponent, EquationEditorDialogComponent, EquationRendererComponent, EquationTemplateGalleryComponent, ExportProgressModalComponent, ExportService, FieldContextService, FindBarComponent, FindReplaceBarComponent, FollowModeBarComponent, FontEmbeddingListComponent, FontEmbeddingPanelComponent, GALLERY_THEME_PRESETS, GOOGLE_WEBFONTS_LINK_ID, GRIDLINE_COLOR, GoogleWebfontsService, GradientPickerComponent, HANDOUT_OPTIONS, HeaderFooterDialogComponent, HyperlinkDialogComponent, INSTANT, ImagePropertiesPanelComponent, InkDrawingService, InkRendererComponent, InsertSmartArtDialogComponent, InspectorPaneHeaderComponent, InspectorPanelComponent, IsMobileService, KeepAnnotationsDialogComponent, LOCALE_CATALOG, LONG_PRESS_DURATION_MS, LONG_PRESS_MOVE_TOLERANCE_PX, LoadContentService, LocalPresencePublisher, MAX_ZOOM_SCALE, MIN_ZOOM_SCALE, MOTION_PATH_COLUMNS, MediaPreviewComponent, MediaPropertiesPanelComponent, MediaRendererComponent, MediaTrimTimelineComponent, MobileBottomBarComponent, MobileMenuSheetComponent, MobilePresenterViewComponent, MobileSheetComponent, MobileSlidesSheetComponent, MobileToolbarComponent, ModalDialogComponent, Model3DRendererComponent, NotesHandoutCardComponent, NotesPanelComponent, NotesToolbarComponent, OPTIONS_PAGE_IDS, OPTIONS_SECTION_IDS, OPTIONS_SETTING_IDS, OleRendererComponent, OutlineViewOverlayComponent, P14_TRANSITION_KEYFRAMES, P14_TRANSITION_KEYFRAMES_2, P14_TRANSITION_KEYFRAMES_ALL, POWER_POINT_VIEWER_PROVIDERS, PPTX_OPEN_ACCEPT, PRESENTATION_OPEN_EXTENSIONS, PRESENTER_CHANNEL_NAME, PRESENTER_MSG_ORIGIN, PRESENTER_TIMER_SEGMENT_MS, PX_PER_CM, PX_PER_INCH, PasswordProtectionDialogComponent, PasswordStrengthMeterComponent, PowerPointViewerComponent, PresentToolbarAutoHide, PresentationAnnotationOverlayComponent, PresentationAnnotationsService, PresentationOverlayComponent, PresentationPropertiesPanelComponent, PresentationSettingsCardComponent, PresentationSubtitleBarComponent, PresentationToolbarComponent, PresentationTransitionOverlayComponent, PresenterViewComponent, PresenterWindowService, PrintDialogComponent, PrintService, PrintSettingsPanelComponent, PropertiesDialogComponent, RANDOM_ELIGIBLE_TYPES, REPEAT_MODE_OPTIONS, RESIZE_HANDLES, RIBBON_TAB_IDS, RULER_FONT_SIZE, RULER_THICKNESS, ReadingViewOverlayComponent, RemoteSelectionOverlayComponent, Rendering3DService, RibbonAnimationGalleryComponent, RibbonAnimationsSectionComponent, RibbonArrangeSectionComponent, RibbonColorPopoverComponent, RibbonComponent, RibbonDesignSectionComponent, RibbonDrawSectionComponent, RibbonDrawingGroupComponent, RibbonEditingSectionComponent, RibbonFileSectionComponent, RibbonFontControlsComponent, RibbonHomeSectionComponent, RibbonHyperlinkButtonComponent, RibbonInsertFieldsComponent, RibbonInsertSectionComponent, RibbonMotionPathGalleryComponent, RibbonParagraphControlsComponent, RibbonPrimaryRowComponent, RibbonReviewSectionComponent, RibbonShapeExtrasComponent, RibbonSlideshowSectionComponent, RibbonTransitionsSectionComponent, RibbonViewSectionComponent, RulerGuidesService, SEQUENCE_OPTIONS, SEVERITY_GROUPS, SEVERITY_LABELS, DEFAULT_TRANSITION_DURATION_MS as SHARED_DEFAULT_TRANSITION_DURATION_MS, SHORTCUT_REFERENCE_ITEMS, SLIDE_TRANSITION_KEYFRAMES, SLIDE_TRANSITION_KEYFRAMES_CSS, DEFAULT_PALETTE as SMARTART_DEFAULT_PALETTE, PALETTES as SMARTART_PALETTES, SMART_ART_COLOR_SCHEMES, SMART_ART_STYLE_OPTIONS, SUB_ITEM_LABEL, SVG_WARP_PRESETS, SWIPE_MAX_VERTICAL_PX, SWIPE_THRESHOLD_PX, SelectionPaneComponent, SetUpSlideShowDialogComponent, SettingsAppearanceTabComponent, SettingsDialogComponent, SettingsLanguageTabComponent, ShareDialogComponent, ShortcutPanelComponent, ShowOptionsFieldsetComponent, ShowSlidesFieldsetComponent, SignatureStrippedDialogComponent, SignaturesPanelComponent, SignaturesService, SlideBackgroundCardComponent, SlideCanvasComponent, SlideDefaultInspectorComponent, SlideDiffChangesComponent, SlideDiffRowComponent, SlideDiffThumbnailsComponent, SlideSizeCardComponent, SlideSorterOverlayComponent, SlideThemeOverridePanelComponent, SlideTransitionCardComponent, SlidesPanelComponent, SmartArt3DRendererComponent, SmartArtPreviewComponent, SmartArtPropertiesComponent, SmartArtRendererComponent, StatusBarComponent, TABLE_STRUCTURE_TOGGLES, TEXT_3D_BOTTOM_BEVEL_KEYS, TEXT_3D_TOP_BEVEL_KEYS, TEXT_DIRECTION_OPTIONS, THEME_CATALOG, TIMING_CURVE_OPTIONS, TOOLBAR_BUTTON_IDS, TRANSITION_SPEED_DURATION_MS, TRIGGER_OPTIONS, TYPE_LABELS, TableCellAdvancedFillComponent, TableCellFormattingComponent, TableDataEditorComponent, TablePropertiesComponent, TableRendererComponent, TableResizeOverlayComponent, TableSelectionService, TagsCardComponent, Text3DBevelSectionComponent, Text3DPanelComponent, TextAdvancedPanelComponent, ThemeEditorFieldsComponent, ThemeGalleryComponent, ThemeSelectorCardComponent, TitleBarComponent, TitleBarSearchComponent, TransitionDirectionPickerComponent, TransitionPreviewComponent, VALIGN_OPTIONS, VIEWER_DIALOG_IDS, VIEWER_EXPORT_FORMAT_IDS, VIEWER_FEATURE_IDS, VIEWER_PANEL_IDS, VIEWER_THEME, VersionHistoryPanelComponent, ViewerCanvasEditingService, ViewerCollabCursorService, ViewerCollaborationSessionService, ViewerCollaborationShellService, ViewerCompareService, ViewerCustomShowsService, ViewerCustomizationHandle, ViewerCustomizationService, ViewerDialogsService, ViewerDocumentPropertiesService, ViewerExportService, ViewerExtraDialogsComponent, ViewerFileIOService, ViewerFindReplaceService, ViewerFormatPainterService, ViewerInspectorPanelService, ViewerKeyboardService, ViewerMobileSheetService, ViewerPresentationModeService, ViewerThemeGalleryService, ViewerTouchGesturesService, ViewerZoomService, WEBM_MIME_CANDIDATES, WHEEL_SPOKE_COUNTS, WriteBackScheduler, ZERO_LINE_COLOR, ZoomNavigationService, ZoomRendererComponent, ZoomTargetService, addCategory, addCommentToList, addGradientStopPatch, addItem, addSeries, addSubItem, advanceStep, affordanceElements, aiToggleVisible, alignPatch, animationFor, animationPresetLabelKey, annotationMapToInkInserts, applyAcceptedDiff, applyAnimationPreset, applyFindReplacements, applyFormatToElement, applyMove, applyResize, asMediaElement, assignUserColor, attachShowVisibilityPause, attachTouchGestures, axisTickValues, beginDrawingNodeEdit, beginNodeEdit, bevelSizePatch, boolFromEvent, bringForward, bringToFront, buildBarActions, buildBroadcastConfig, buildBroadcastViewerUrl, buildCategoryLabels, buildCellParagraphs, buildChartViewModel, buildChatLogExport, buildChatLogMarkdown, buildChromeStyle, buildClearHyperlinkPatch, buildClickGroups, buildColStyles, buildCollaborationConfig, buildComboViewModel, buildCssGradientFromShapeStyle, buildDuotoneFilter, buildDuotoneFilterId, buildEmbeddedFontStyles, buildEquationElement, buildEquationSegment, buildFallbackViewModel, buildFontFaceRule, buildGradientFillCss, buildGridlinesAndLabels, buildHyperlinkPatch, buildInkContainerStyle, buildInkStrokes, buildLegend, buildLiveInkStrokeView, buildMarkTooltip, buildModel3DContainerStyle, buildModel3DViewModel, buildOleActionModel, buildOleInfoRows, buildPatternFillCss, buildPieViewModel, buildPrintHtmlDocument as buildPrintDocument, buildPropertiesPatch, buildRadarViewModel, buildRegionMapViewModel, buildSaveSlides, buildShareUrl, buildSmartArtInsertElement, buildSmartArtNodes, buildStockViewModel, buildSurfaceViewModel, buildTableViewModel, buildTreemapViewModel, buildTrimFragment, buildWaterfallViewModel, buildZeroLine, buildZoomContainerStyle, buildZoomViewModel, bulletIndentPx, canAddTopLevelNode, canEditSmartArtNodes, canGroupSelection, canRemoveTopLevelNode, canSetStrokeWidth, canStartBroadcast, canStartShare, canUngroupSelection, canUseClipboard, captionDisplayText, cellRunStyle, cellStyleToStyleMap, cellTdStyle, changeCountLabel, changeIcon, characterSpacingPatch, chartPreserveAspectRatio, checkFontAvailable, clampCursorPosition, clampGifDimensions, clampIndex, clampNotesFontSize, clampScale, clampStep, clearAllLocalViewerData, clearAudienceContent, cn, collectAccessibilityIssues, collectElementText, collectSlideText, collectStoredChats, collectUsedFontFamilies, columnWidthStyle, commitNodeText, computeAlign, computeAxisTitlePrimitives, computeBarRects, computeBubbleRadius, computeCornerHandle, computeDistribute, computeDrawingViewBox, computeErrorBarPrimitives, computeFocusTargets, computeGridSpacingPx, computeHandleBoxes, computeHandoutLayout, computeIsMobile, computeIsTablet, computeLinePoints, computeLinearRegression, computePageCount, computePieLayout, computePieSlicePath, computePieSlices, computePlotLayout, computeRSquared, computeRadarPoints, computeResizeHandleBoxes, computeRotateHandleBox, computeScatterDots, computeScatterXDomain, computeSelectionBoxes, computeSingleSelected, computeSlideIndices, computeSnap, computeStackedBarRects, computeStackedValueRange, computeTrendlinePrimitives, computeValueRange, convertOmmlToMathMl, copyFormatFromElement, countAccessibilityIssues, countAnnotationStrokes, createAngularAiBridge, createCustomShow, createImageElementFromFile, createSwipeDismissDrag, createWebrtcBundle, createWebsocketBundle, cssObjectToStyleMap, currentColorScheme, currentLayout, currentStyle, defaultCssVars, defaultRadius, defaultThemeColors, deleteElementsByIds, deleteVersion as deleteRecoveryVersion, demoteNode, deriveModel3DBlobUrl, derivePresenceList, describeCollaborationShellState, describeSmartArtBounds, disableGlowPatch, disableInnerShadowPatch, disableOuterShadowPatch, disableReflectionPatch, disableSoftEdgePatch, duplicateElementById, durationOf, effectsStateOf, enableGlowPatch, enableInnerShadowPatch, enableOuterShadowPatch, enableReflectionPatch, enableSoftEdgePatch, encodeGif, endShowMediaCleanup, estimatePageCount, exitPresentationFullscreen, exportAiChatLogs, extractPathPoints, eyedropperAvailable, fillColorOf, findInSlides, findOwningSlideIndex, findSlideIndexByElementId, firstVisibleIndex, fitPolynomial, fitZoom, focusTargetChips, fontMimeForFormat, fontSizeOf, forgetSessionDeck, formatAxisValue, formatBytes, formatCursorLabel, formatElapsed, formatFileSize, formatInlineListStyle, formatPropertyDate, formatTime, fpsToFrameIntervalMs, generateBroadcastRoomId, generateCommentId, generateCustomShowId, generatePressureCircles, generateTicks, getCinematicTransitionAnimations, getClrChangeParams, getContainerStyle, getDuotoneFilterDef, getEffectSoundAsset, getEffectSoundState, getImageSrc, getLocalStorageUsageSummary, getOleAriaLabel, getOleBadgeLabel, getOleDisplayName, getOleDownloadFileName, getOleTypeColor, getOleTypeLabel, getP14TransitionAnimations, getPasswordStrength, getPatternSvg, getPlaceholderStyle, getVersions as getRecoveryVersions, getResolvedShapeClipPath, getResolvedShapeClipPathFor, getSessionTabId, getShapeFillStrokeStyle, getSlideBackgroundStyle, getSlideTransitionAnimations, getSmartArtNodeBounds, getSpeechRecognitionCtor, getTextBlockStyle, getTextWarp, getTouchDistance, getWarpCategory, getWarpPath, gradientStateFromStyle, gradientStateOf, gradientStatePatch, gradientStopColorCommitPatch, gridColumns, groupIssuesBySeverity, hasAnimation, hasCopyableFormat, hasExistingLink, hasExitedFullscreen, hasGradientFill, hasPressureVariation, hasVisibleSlideAfter, headerLabel, imageDimensions, injectResolvedCustomization, inkViewBox, insertTableElementColumn as insertColumn, insertTableElementRow as insertRow, interpolateWidth, isAudienceTab, isBold, isBrowserOpenableMime, isChildNode, isElementInteractive, isInjectableUrl, isItalic, isLegacyBinaryPresentation, isPpactionUrl, isPresenterMessage, isSigned, isSupportedPresentationFile, isTextElement, isTwoTableFocus, isUnderline, isUrlSafe, isValidRoomId, isViewportBackgroundPressTarget, isZoomActivationKey, issueTrackKey, issueTypeLabel, keyToLabel, lastVisibleIndex, latexToMathml, layoutConnectorPaints, layoutNodeLabels, linePointsToSvgString, lineSpacingPatch, loadAudienceContent, loadSessionDeck, mediaFallbackFor, mediaSurfaceFor, mergeCaptionResults, mergeDown, mergeRight, mergeSelection, mergeTablesDirective, moveElementBy, moveNodeDown, moveNodeUp, msToFrameDelayCs, narrowToCircle, narrowToPolygon, narrowToRect, newChartElement, newEquationElement, newPresetShapeElement, newShapeElement, newSmartArtElement, newTableElement, newTextElement, nextVisibleIndex, nodeBold, nodeEditBox, nodeFillColor, nodeFontColor, nodeIdFromKey, nodeItalic, nodeStyle, normalizeFontFormat, normalizeSlidesPerPage, normalizeValue, numFromEvent, oleActionsVisibleFor, ommlToMathml, ooxmlDashToCssBorderStyle, openNativeEyeDropper, overallStatus, paletteColor, parseAudienceNonce, parseNodeTextarea, partitionSlides, patchChartData, patchChartStyle, patchTableData, patchTextStyle, patternPresetOptions, pendingElementStyles, pickColorByClickFallback, pickFile, pickSupportedMimeType, planGifFrames, planVideoSegments, pointFromPointerEvent, pointsToSvgPathD, presenceToCursors, presentationBaseName, presentationStageStyle, presenterTimerProgress, presetByLayout, presetsForCategory, pressuresToWidths, prevVisibleIndex, projectDrawingShapes, promoteNode, provideViewerTheme, radarAngle, radarRingPoints, readAsDataUrl, recordWebm, registerCrossSlideAudio, rememberSessionDeck, removeAnimation, removeCategory, removeTableElementColumn as removeColumn, removeCommentFromList, removeElementAnimation, removeGradientStopPatch, removeNode, removeTableElementRow as removeRow, removeSeries, renderToCanvas, reorderAnimationDown, reorderAnimationUp, replaceInSlides, replaceMatch, requestPresentationFullscreen, resizeElement, resolveCaptionTracks, resolveChartKind, resolveDirection, resolveDirection8, resolveFontVariant, resolveHyperlinkHref, resolveInteractiveElementId, resolveLegendAnchorPosition, resolveMediaSrc, resolveOleType, resolveOrientation, resolveParagraphBullet, resolvePresenterNotes, resolveProfileInitial, resolveRegionCode, resolveRibbonCanGroup, resolveSlideAutoAdvanceMs, resolveSlideTransition, resolvePalette as resolveSmartArtPalette, resolveThemeCatalogEntry, resolveTransitionDuration, resolveTransitionDurationMs, resolveWheelSpokeCount, restoreSessionDeck, revealedElementStyles, routeOrthogonalConnector, rowStyle, rulerDragToGuidePosition, rulerHighlight, rulerStripTicks, sampleColorFromSlide, sanitizeColor, sanitizeSlideIndex, sanitizeUserName, saveViewerProfile, savedPresentationFileName, scanAvailableFonts, searchSlides, seedBroadcastFields, seedHyperlinkDraft, seedPropertiesDraft, seedShareFields, segmentFrameCount, selectValue, sendBackward, sendToBack, sequentialColorScale, serializeWriteBack, seriesColor, seriesXValues, setAfterAnimation, setAfterAnimationColor, setAnimationEmphasis, setAnimationEntrance, setAnimationExit, setAxis, setAxisLogScale, setAxisTitleStyle, setCategoryLabel, setCellText, setColorScheme, setDataLabels, setDataPointExplosion, setDataPointFill, setDataPointLabel, setDataPointMarker, setDelay, setDirection, setDuration, setEffectSound, setEffectStockSound, setElementPosition, setGridlineStyle, setLayout, setLegend, setNodeStyle, setNodeText, setRepeatCount, setRepeatMode, setSequence, setSeriesChartType, setSeriesColor, setSeriesErrorBars, setSeriesMarker, setSeriesName, setSeriesTrendline, setSeriesValue, setStyle, setTimingCurve, setTitle, setTrigger, setTriggerShapeId, shapeStylePatch, sheetAfterNavigate, shouldBlockClickAdvance, shouldUseSvgWarp, showDirectionPicker, showsTemplateAffordance, signatureCountLabel, signatureKey, signatureTimestamp, signerName, statusLabel as slideDiffStatusLabel, slideNumberOf, slidesWithReappliedLayout, smartArtNodes, paletteColour as smartArtPaletteColour, snapToGridStep, splitCursorCell, splitMergedCell, statusKind, statusLabel$1 as statusLabel, storeAudienceContent, stringFromEvent, strokeColorOf, strokeToInkElement, strokeWidthOf, styleShadowFilter, surfaceColor, textAdvancedPatch, textAdvancedStateFromStyle, textAdvancedStateOf, textColorOf, textDirectionPatch, textFontSizePatch, textStyleOf, textStylePatch, themeStyle, themeToCssVars, thumbnailHeight, thumbnailZoom, toggleCommentResolvedInList, toggleNodeBold, toggleNodeItalic, toggleSheet, topLevelNodeCount, transformSelectedTextCase, translationsEn, updateElementById, updateGlowPatch, updateGradientStopPatch, updateInnerShadowPatch, updateOuterShadowPatch, updateReflectionPatch, vAlignPatch, validatePassword, validatePrintSettings, validateRoomId, valueToY, vermilionDarkColors, vermilionDarkTheme, vermilionLightColors, vermilionLightTheme, vermilionRadius, waypointsToPathD, withManualLayouts, worstStatus, zoomTargetSlideIndex };
26848
- export type { AccessibilityIssueGroup, AccountAuthConfig, ActionDescriptor, ActiveShow, AiCanvasHighlight, AiChatInitState, AiHistoryInitDeps, AiLogChat, AiLogExport, AiLogFormat, AiLogMessage, AiPanelSelectionAccessors, AlignBox, AlignMode, AnimationClickGroup, AnimationGroup, AnimationPresetCategory, AnimationPresetEntry, AnimationPresetPick, AnnotationInkInsert, AnnotationStroke, AttachTouchGesturesConfig, AuthoredRange, AwarenessLike, BackstageCustomization, BarRect, Box, BridgeDeps, BroadcastConfig, BroadcastDefaults, BubbleRadiusOptions, CSSProperties, CanvasSize, CellCoord, CellParagraph, CellTextRun, ChartPartRef, ChartPartSelection, ChartSvgDef, ChartSvgPatternDef, ChartValueDrag, ChartViewModel, ClassValue, ClrChangeParams, CollaborationConfig, CollaborationRole, CollaborationShellState, ConnectionStatus, RouterRect as ConnectorObstacle, RouterPoint as ConnectorPoint, ConnectorRouting, ContextMenuCustomization, CopiedFormat, CornerHandleBox, CustomShow, CustomThemeEdit, DeckSaveState, DestroyableYDoc, DiagonalBorderInfo, DistributeMode, DocumentProperties, DrawingViewBox, DuotoneFilterDef, EffectSoundState, EffectsState, ElementUpdate, ElementUpdateOptions, EmbeddedFontStyles, EquationTemplate, ExternalCollaborationAwareness, ExternalCollaborationSession, ExternalCollaborationSnapshot, EyedropperResult, FindOptions, FindResult, FocusChip, FocusSelectionInput, GifFrame, GifFramePlan, GifPlanOptions, GlowState, GradientState, GradientStop$1 as GradientStop, HandleBox, HandoutSlidesPerPage, HyperlinkDraft, InkPoint, InkStroke, InkStrokeView, InlineEditState, InnerShadowState, KeyboardCustomization, LegendEntry, LinePoint, LinearFit, LocalIdentity, LocalStorageUsageSummary, LocaleCatalogEntry, MobileSheetKey, Model3DViewModel, MotionPathColumn, MotionPathEntry, NodeEditBox, NotesSegmentViewModel, ObjectUrlFactory, OleActionModel, OleInfoRow, OptionsCustomization, OptionsPageId, OptionsSectionId, OptionsSettingId, OptionsSettingValues, OuterShadowState, OutlineCommit, OverallSignatureStatus, PartitionedSlides, PathPoint, PieSliceGeometry, PieSliceOptions, PlotLayout, PlotLayoutOptions, PositionUpdate, PowerPointViewerAPI, PptxAiBridge, PptxAiConfig, PptxAiConnection, PptxAiContextStrategy, PptxAiElementUpdate, PptxAiToolName, PptxAiUIMessage, PptxAiWritePolicy, PresentToolbarAction, PresentationTool, PresenterExitMessage, PresenterMessage, PresenterNotes, PresenterSlideChangeMessage, PresenterTimerProgress, PressureCircle, PrintColorMode, PrintHtmlDocumentOptions as PrintDocumentOptions, PrintOrientation, PrintSettings, PrintSlideRange, PrintWhat, PropertiesDraft, ProposalView, ProviderBundle, ProviderLike, RadarPoint, RecordWebmOptions, RecoveryVersion, ReflectionState, RemoteCursor, SanitizedPresence as RemotePresence, RenderedShape, ReplaceResult, ResizeHandle, ResolvedCaptionTrack, ResolvedCustomization, ResolvedDirection, ResolvedDirection8, ResolvedFontVariant, ResolvedOleType, RibbonCustomization, RulerUnit, SanitizedPresence, SavedPresentationFormat, ScatterDot, ScatterXDomain, SelectionBox, SessionDeck, ShapeStyleChanges, ShareDefaults$1 as ShareDefaults, ShareFormFields, ShortcutChord, ShortcutReferenceItem, SignatureStatusKind, SlideInspectorTab, SlideTransitionAnimations, SmartArtInsertEvent, SmartArtNodeBounds, SnapBox, SnapGuide, SnapResult, SoftEdgeState, SpeechAlternative, SpeechRecognitionCtor, SpeechRecognitionEventLite, SpeechRecognitionLite, SpeechResult, SpeechResultList, SpeechSupportState, StagedProposal, StrokeToInkElementOpts, StyleMap, SupportedChartKind, SvgAreaGradient, SvgCircle, SvgLine, SvgPath, SvgPolygon, SvgPolyline, SvgPrimitive, SvgRect, SvgText, SwipeDismissDrag, TableBooleanFlag, TableCellSelection, TableCellViewModel, TableRowViewModel, TemplateElementsBySlideId, Text3DBevelKeys, TextAdvancedChanges, TextAdvancedState, TextStyleChanges, TextWarpCssDef, TextWarpDef, TextWarpPathDef, ThemeCatalogEntry, Tick, ToolbarActionId, TouchGestureCallbacks, TranslationKey, ValueRange, VideoPlanOptions, VideoSegmentPlan, ViewerCollaborationShellOptions, ViewerCustomization, ViewerCustomizationApi, ViewerDialogId, ViewerExportFormatId, ViewerFeatureId, ViewerMode, ViewerPanelId, ViewerProfile, ViewerSettings, ViewerTheme, ViewerThemeColors, ViewportFitOptions, ViewportFitPadding, ZoomTranslate, ZoomViewModel };
27075
+ export type { AccessibilityIssueGroup, AccountAuthConfig, ActionDescriptor, ActiveShow, AiCanvasHighlight, AiChatInitState, AiHistoryInitDeps, AiLogChat, AiLogExport, AiLogFormat, AiLogMessage, AiPanelSelectionAccessors, AlignBox, AlignMode, AnimationClickGroup, AnimationGroup, AnimationPresetCategory, AnimationPresetEntry, AnimationPresetPick, AnnotationInkInsert, AnnotationStroke, AttachTouchGesturesConfig, AuthoredRange, AwarenessLike, BackstageCustomization, BarRect, Box, BridgeDeps, BroadcastConfig, BroadcastDefaults, BubbleRadiusOptions, CSSProperties, CanvasSize, CellCoord, CellParagraph, CellTextRun, ChartPartRef, ChartPartSelection, ChartSvgDef, ChartSvgGradientDef, ChartSvgGradientStop, ChartSvgPatternDef, ChartValueDrag, ChartViewModel, ClassValue, ClrChangeParams, CollaborationConfig, CollaborationRole, CollaborationShellState, ConnectionStatus, RouterRect as ConnectorObstacle, RouterPoint as ConnectorPoint, ConnectorRouting, ContextMenuCustomization, CopiedFormat, CornerHandleBox, CustomShow, CustomThemeEdit, DeckSaveState, DestroyableYDoc, DiagonalBorderInfo, DistributeMode, DocumentProperties, DrawingViewBox, DuotoneFilterDef, EffectSoundState, EffectsState, ElementUpdate, ElementUpdateOptions, EmbeddedFontStyles, EquationTemplate, ExternalCollaborationAwareness, ExternalCollaborationSession, ExternalCollaborationSnapshot, EyedropperResult, FindOptions, FindResult, FocusChip, FocusSelectionInput, GifFrame, GifFramePlan, GifPlanOptions, GlowState, GradientState, GradientStop$1 as GradientStop, HandleBox, HandoutSlidesPerPage, HyperlinkDraft, InkPoint, InkStroke, InkStrokeView, InlineEditState, InnerShadowState, KeyboardCustomization, LegendEntry, LinePoint, LinearFit, LocalIdentity, LocalStorageUsageSummary, LocaleCatalogEntry, MobileSheetKey, Model3DViewModel, MotionPathColumn, MotionPathEntry, NodeEditBox, NotesSegmentViewModel, ObjectUrlFactory, OleActionModel, OleInfoRow, OptionsCustomization, OptionsPageId, OptionsSectionId, OptionsSettingId, OptionsSettingValues, OuterShadowState, OutlineCommit, OverallSignatureStatus, PartitionedSlides, PathPoint, PieSliceGeometry, PieSliceOptions, PlotLayout, PlotLayoutOptions, PositionUpdate, PowerPointViewerAPI, PptxAiBridge, PptxAiConfig, PptxAiConnection, PptxAiContextStrategy, PptxAiElementUpdate, PptxAiToolName, PptxAiUIMessage, PptxAiWritePolicy, PresentToolbarAction, PresentationTool, PresenterExitMessage, PresenterMessage, PresenterNotes, PresenterSlideChangeMessage, PresenterTimerProgress, PressureCircle, PrintColorMode, PrintHtmlDocumentOptions as PrintDocumentOptions, PrintOrientation, PrintSettings, PrintSlideRange, PrintWhat, PropertiesDraft, ProposalView, ProviderBundle, ProviderLike, RadarPoint, RecordWebmOptions, RecoveryVersion, ReflectionState, RemoteCursor, SanitizedPresence as RemotePresence, RenderedShape, ReplaceResult, ResizeHandle, ResolvedCaptionTrack, ResolvedCustomization, ResolvedDirection, ResolvedDirection8, ResolvedFontVariant, ResolvedOleType, RibbonCustomization, RulerUnit, SanitizedPresence, SavedPresentationFormat, ScatterDot, ScatterXDomain, SelectionBox, SessionDeck, ShapeStyleChanges, ShareDefaults$1 as ShareDefaults, ShareFormFields, ShortcutChord, ShortcutReferenceItem, SignatureStatusKind, SlideInspectorTab, SlideTransitionAnimations, SmartArtInsertEvent, SmartArtNodeBounds, SnapBox, SnapGuide, SnapResult, SoftEdgeState, SpeechAlternative, SpeechRecognitionCtor, SpeechRecognitionEventLite, SpeechRecognitionLite, SpeechResult, SpeechResultList, SpeechSupportState, StagedProposal, StrokeToInkElementOpts, StyleMap, SupportedChartKind, SvgAreaGradient, SvgCircle, SvgLine, SvgPath, SvgPolygon, SvgPolyline, SvgPrimitive, SvgRect, SvgText, SwipeDismissDrag, TableBooleanFlag, TableCellSelection, TableCellViewModel, TableRowViewModel, TemplateElementsBySlideId, Text3DBevelKeys, TextAdvancedChanges, TextAdvancedState, TextStyleChanges, TextWarpCssDef, TextWarpDef, TextWarpPathDef, ThemeCatalogEntry, Tick, ToolbarActionId, TouchGestureCallbacks, TranslationKey, ValueRange, VideoPlanOptions, VideoSegmentPlan, ViewerCollaborationShellOptions, ViewerCustomization, ViewerCustomizationApi, ViewerDialogId, ViewerExportFormatId, ViewerFeatureId, ViewerMode, ViewerPanelId, ViewerProfile, ViewerSettings, ViewerTheme, ViewerThemeColors, ViewportFitOptions, ViewportFitPadding, ZoomTranslate, ZoomViewModel };
26849
27076
  //# sourceMappingURL=pptx-angular-viewer.d.ts.map