pptx-vue-viewer 4.2.0 → 4.3.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 (124) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/dist/{AiChatPanel-CMpvBPva.cjs → AiChatPanel-BIJ-bHQj.cjs} +1 -1
  3. package/dist/AiChatPanel-BIJ-bHQj.cjs.br +0 -0
  4. package/dist/AiChatPanel-BIJ-bHQj.cjs.gz +0 -0
  5. package/dist/{AiChatPanel-BAXxvQl4.js → AiChatPanel-U3EFn2Ng.js} +2 -2
  6. package/dist/AiChatPanel-U3EFn2Ng.js.br +0 -0
  7. package/dist/AiChatPanel-U3EFn2Ng.js.gz +0 -0
  8. package/dist/{dist-3uZ0g742.cjs → dist-0XJeILOd.cjs} +24804 -20069
  9. package/dist/dist-0XJeILOd.cjs.br +0 -0
  10. package/dist/dist-0XJeILOd.cjs.gz +0 -0
  11. package/dist/{dist-BgtJA5eT.js → dist-BV_7SUio.js} +29355 -24620
  12. package/dist/dist-BV_7SUio.js.br +0 -0
  13. package/dist/dist-BV_7SUio.js.gz +0 -0
  14. package/dist/gif-encoder-Bbb-HJnH.js +2 -0
  15. package/dist/gif-encoder-Bbb-HJnH.js.br +0 -0
  16. package/dist/gif-encoder-Bbb-HJnH.js.gz +0 -0
  17. package/dist/gif-encoder-CmBKDBC6.cjs +2 -0
  18. package/dist/gif-encoder-CmBKDBC6.cjs.br +0 -0
  19. package/dist/gif-encoder-CmBKDBC6.cjs.gz +0 -0
  20. package/dist/i18n/de.cjs +2 -2
  21. package/dist/i18n/de.cjs.br +0 -0
  22. package/dist/i18n/de.cjs.gz +0 -0
  23. package/dist/i18n/de.mjs +2 -2
  24. package/dist/i18n/de.mjs.br +0 -0
  25. package/dist/i18n/de.mjs.gz +0 -0
  26. package/dist/i18n/es.cjs +2 -2
  27. package/dist/i18n/es.cjs.br +0 -0
  28. package/dist/i18n/es.cjs.gz +0 -0
  29. package/dist/i18n/es.mjs +2 -2
  30. package/dist/i18n/es.mjs.br +0 -0
  31. package/dist/i18n/es.mjs.gz +0 -0
  32. package/dist/i18n/fr.cjs +2 -2
  33. package/dist/i18n/fr.cjs.br +0 -0
  34. package/dist/i18n/fr.cjs.gz +0 -0
  35. package/dist/i18n/fr.mjs +2 -2
  36. package/dist/i18n/fr.mjs.br +0 -0
  37. package/dist/i18n/fr.mjs.gz +0 -0
  38. package/dist/i18n/zh-CN.cjs +2 -2
  39. package/dist/i18n/zh-CN.cjs.br +0 -0
  40. package/dist/i18n/zh-CN.cjs.gz +0 -0
  41. package/dist/i18n/zh-CN.mjs +2 -2
  42. package/dist/i18n/zh-CN.mjs.br +0 -0
  43. package/dist/i18n/zh-CN.mjs.gz +0 -0
  44. package/dist/{i18n-BUjfZOiM.cjs → i18n-C5PLnqCs.cjs} +2 -2
  45. package/dist/i18n-C5PLnqCs.cjs.br +0 -0
  46. package/dist/i18n-C5PLnqCs.cjs.gz +0 -0
  47. package/dist/{i18n-cTdK-NvK.js → i18n-DOJnZmCW.js} +2 -2
  48. package/dist/i18n-DOJnZmCW.js.br +0 -0
  49. package/dist/i18n-DOJnZmCW.js.gz +0 -0
  50. package/dist/i18n.cjs +1 -1
  51. package/dist/i18n.cjs.br +0 -0
  52. package/dist/i18n.cjs.gz +0 -0
  53. package/dist/i18n.js +1 -1
  54. package/dist/i18n.js.br +1 -3
  55. package/dist/i18n.js.gz +0 -0
  56. package/dist/index.cjs +1 -1
  57. package/dist/index.cjs.br +0 -0
  58. package/dist/index.cjs.gz +0 -0
  59. package/dist/index.d.ts +236 -2
  60. package/dist/index.js +3 -3
  61. package/dist/index.js.br +0 -0
  62. package/dist/index.js.gz +0 -0
  63. package/dist/internals.cjs +1 -1
  64. package/dist/internals.cjs.br +0 -0
  65. package/dist/internals.cjs.gz +0 -0
  66. package/dist/internals.d.ts +305 -5
  67. package/dist/internals.js +2 -2
  68. package/dist/internals.js.br +0 -0
  69. package/dist/internals.js.gz +0 -0
  70. package/dist/pptx-vue-viewer.css +33 -12
  71. package/dist/pptx-vue-viewer.css.br +0 -0
  72. package/dist/pptx-vue-viewer.css.gz +0 -0
  73. package/dist/{useViewerSettingsDialog-2Agl6hEE.cjs → useViewerSettingsDialog-BYMmaXqc.cjs} +12150 -10925
  74. package/dist/useViewerSettingsDialog-BYMmaXqc.cjs.br +0 -0
  75. package/dist/useViewerSettingsDialog-BYMmaXqc.cjs.gz +0 -0
  76. package/dist/{useViewerSettingsDialog-csWTWDGr.js → useViewerSettingsDialog-DKWvCzGK.js} +11248 -10033
  77. package/dist/useViewerSettingsDialog-DKWvCzGK.js.br +0 -0
  78. package/dist/useViewerSettingsDialog-DKWvCzGK.js.gz +0 -0
  79. package/dist/viewer/index.cjs +1 -1
  80. package/dist/viewer/index.cjs.br +0 -0
  81. package/dist/viewer/index.cjs.gz +0 -0
  82. package/dist/viewer/index.d.ts +236 -2
  83. package/dist/viewer/index.js +3 -3
  84. package/dist/viewer/index.js.br +0 -0
  85. package/dist/viewer/index.js.gz +0 -0
  86. package/dist/{viewer-BCE1J1So.js → viewer-CDKF3LoJ.js} +10472 -10444
  87. package/dist/viewer-CDKF3LoJ.js.br +0 -0
  88. package/dist/viewer-CDKF3LoJ.js.gz +0 -0
  89. package/dist/{viewer-BF80DYuw.cjs → viewer-D4jitSRB.cjs} +578 -550
  90. package/dist/viewer-D4jitSRB.cjs.br +0 -0
  91. package/dist/viewer-D4jitSRB.cjs.gz +0 -0
  92. package/package.json +1 -1
  93. package/dist/AiChatPanel-BAXxvQl4.js.br +0 -0
  94. package/dist/AiChatPanel-BAXxvQl4.js.gz +0 -0
  95. package/dist/AiChatPanel-CMpvBPva.cjs.br +0 -0
  96. package/dist/AiChatPanel-CMpvBPva.cjs.gz +0 -0
  97. package/dist/canvas_emf-converter-CXU7lu1I.cjs +0 -1
  98. package/dist/canvas_emf-converter-CXU7lu1I.cjs.br +0 -0
  99. package/dist/canvas_emf-converter-CXU7lu1I.cjs.gz +0 -0
  100. package/dist/canvas_emf-converter-HimA9Y3J.js +0 -3
  101. package/dist/canvas_emf-converter-HimA9Y3J.js.br +0 -0
  102. package/dist/canvas_emf-converter-HimA9Y3J.js.gz +0 -0
  103. package/dist/dist-3uZ0g742.cjs.br +0 -0
  104. package/dist/dist-3uZ0g742.cjs.gz +0 -0
  105. package/dist/dist-BgtJA5eT.js.br +0 -0
  106. package/dist/dist-BgtJA5eT.js.gz +0 -0
  107. package/dist/gif-encoder-BAJa752-.js +0 -2
  108. package/dist/gif-encoder-BAJa752-.js.br +0 -0
  109. package/dist/gif-encoder-BAJa752-.js.gz +0 -0
  110. package/dist/gif-encoder-DkEWIbep.cjs +0 -2
  111. package/dist/gif-encoder-DkEWIbep.cjs.br +0 -0
  112. package/dist/gif-encoder-DkEWIbep.cjs.gz +0 -0
  113. package/dist/i18n-BUjfZOiM.cjs.br +0 -0
  114. package/dist/i18n-BUjfZOiM.cjs.gz +0 -0
  115. package/dist/i18n-cTdK-NvK.js.br +0 -0
  116. package/dist/i18n-cTdK-NvK.js.gz +0 -0
  117. package/dist/useViewerSettingsDialog-2Agl6hEE.cjs.br +0 -0
  118. package/dist/useViewerSettingsDialog-2Agl6hEE.cjs.gz +0 -0
  119. package/dist/useViewerSettingsDialog-csWTWDGr.js.br +0 -0
  120. package/dist/useViewerSettingsDialog-csWTWDGr.js.gz +0 -0
  121. package/dist/viewer-BCE1J1So.js.br +0 -0
  122. package/dist/viewer-BCE1J1So.js.gz +0 -0
  123. package/dist/viewer-BF80DYuw.cjs.br +0 -0
  124. package/dist/viewer-BF80DYuw.cjs.gz +0 -0
@@ -260,6 +260,11 @@ export declare interface AnimationClickGroup {
260
260
  declare interface AnimationCondition {
261
261
  /** Event that triggers the condition. */
262
262
  event?: AnimationConditionEvent;
263
+ /**
264
+ * The media element/bookmark this condition fires for, when
265
+ * {@link event} is `onMediaBookmark`. See {@link PptxMediaBookmarkTarget}.
266
+ */
267
+ bookmarkTarget?: PptxMediaBookmarkTarget;
263
268
  /** Delay in milliseconds (from `@_delay`). "indefinite" is represented as -1. */
264
269
  delay?: number;
265
270
  /** Target time node ID reference (from `@_tn`). */
@@ -278,7 +283,7 @@ declare interface AnimationCondition {
278
283
  * These map directly to OOXML condition event attribute values
279
284
  * (ISO/IEC 29500-1 S19.5.28 CT_TLTimeCondition).
280
285
  */
281
- declare type AnimationConditionEvent = 'onBegin' | 'onEnd' | 'begin' | 'end' | 'onClick' | 'onMouseOver' | 'onMouseOut' | 'onNext' | 'onPrev' | 'onStopAudio' | 'onDblClick';
286
+ declare type AnimationConditionEvent = 'onBegin' | 'onEnd' | 'begin' | 'end' | 'onClick' | 'onMouseOver' | 'onMouseOut' | 'onNext' | 'onPrev' | 'onStopAudio' | 'onDblClick' | 'onMediaBookmark';
282
287
 
283
288
  declare interface AnimationInput {
284
289
  preset: PptxAnimationPreset;
@@ -481,6 +486,18 @@ declare interface BulletInfo {
481
486
  /** When true, `<a:buSzTx/>` was specified — inherit the bullet size from
482
487
  * the run text font size. */
483
488
  sizeInherit?: boolean;
489
+ /**
490
+ * True when this bullet resolution came from the paragraph's OWN `a:pPr`
491
+ * rather than the shape's `a:lstStyle`, an inherited placeholder, or the
492
+ * master's `a:defPPr` / `p:txStyles`. `resolveParagraphBulletInfo` walks
493
+ * that cascade and returns the first match, so without this flag a
494
+ * writer that re-emits every resolved `BulletInfo` in full pins an
495
+ * inherited bullet (e.g. a master `buFont="Arial"` / `buChar="•"`) onto
496
+ * every paragraph's own `a:pPr` the moment the slide is rewritten. The
497
+ * save path only writes the bullet group when this is `true`, mirroring
498
+ * how `paragraphProperties` gates every other per-paragraph field.
499
+ */
500
+ ownedByParagraph?: boolean;
484
501
  }
485
502
 
486
503
  /** Canvas dimensions in pixels. */
@@ -1025,6 +1042,20 @@ declare interface ContentPartInkStroke {
1025
1042
  * NAMES differ.
1026
1043
  */
1027
1044
  tiltEncoding?: 'vector' | 'azimuthAltitude';
1045
+ /**
1046
+ * Per-point timestamps (milliseconds), decoded from the source InkML
1047
+ * trace's `T` channel when it declared one.
1048
+ *
1049
+ * Absent for the overwhelming majority of real decks: PowerPoint's own
1050
+ * SaveAs output declares only `X`/`Y` and has no per-point time channel at
1051
+ * all (see `contentpart-real-ink-roundtrip.test.ts`'s fixture), so this is
1052
+ * populated only for InkML sources that genuinely author one (a captured
1053
+ * digitizer session, OneNote, a Surface Hub export). When present, ink
1054
+ * replay ("watch the ink get drawn") uses each stroke's own first/last
1055
+ * timestamp to time its reveal instead of the fixed per-stroke cascade; see
1056
+ * `pptx-viewer-shared`'s `render/ink-replay-timeline.ts`.
1057
+ */
1058
+ pointTimestamps?: number[];
1028
1059
  }
1029
1060
 
1030
1061
  /**
@@ -1426,6 +1457,9 @@ export declare interface EditorHistoryResult {
1426
1457
  setMaxDepth: (depth: number) => void;
1427
1458
  }
1428
1459
 
1460
+ /** A logical editor command produced by one key press. */
1461
+ declare 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';
1462
+
1429
1463
  export declare interface EditorOperations {
1430
1464
  /** Resolved active slide (or `undefined` when the index is out of range). */
1431
1465
  activeSlide: ComputedRef<PptxSlide | undefined>;
@@ -3261,6 +3295,14 @@ declare interface ParsedTableStyleFill {
3261
3295
  tint?: number;
3262
3296
  /** Shade value (0-100 000). */
3263
3297
  shade?: number;
3298
+ /**
3299
+ * Alpha (opacity) value (0-100 000, where 100 000 is fully opaque) from an
3300
+ * `a:alpha` child of `a:schemeClr`/`a:srgbClr`. Several built-in table
3301
+ * styles (e.g. "Light Style 1/3", "Themed Style 1/2") band their rows with
3302
+ * a partially transparent tint of the theme colour rather than a tint/shade
3303
+ * blend.
3304
+ */
3305
+ alpha?: number;
3264
3306
  /** Explicit sRGB hex colour (e.g. `#FF8800`) from `a:srgbClr`. */
3265
3307
  color?: string;
3266
3308
  /** The fill was `a:noFill`: renders transparent and clears lower layers. */
@@ -3460,6 +3502,24 @@ declare interface PicturePptxElement extends PptxElementBase, PptxShapePropertie
3460
3502
  */
3461
3503
  declare interface PlaceholderTextLevelStyle {
3462
3504
  fontFamily?: string;
3505
+ /**
3506
+ * The RAW `a:defRPr/a:latin/@typeface` string (verbatim: a theme alias
3507
+ * such as `+mj-lt`/`+mn-lt`, or a literal face name) {@link fontFamily}
3508
+ * was resolved from. Master/layout text styles are parsed once and
3509
+ * cached, so `fontFamily` is a resolved-for-display snapshot; re-emitting
3510
+ * it as the literal name on every save (the master-level analogue of
3511
+ * `colorChoiceXml` below) flattens the theme alias the moment ANYTHING
3512
+ * about the deck is rewritten, even when this level was never touched.
3513
+ * Absent when the level declares no `a:latin`.
3514
+ */
3515
+ fontTypefaceXml?: string;
3516
+ /**
3517
+ * Snapshot of {@link fontFamily} exactly as parsed, before any edit. The
3518
+ * save path diffs the live value against this: unchanged means re-emit
3519
+ * {@link fontTypefaceXml} verbatim (preserve the alias); different means
3520
+ * a genuine edit, so the new literal name is written instead.
3521
+ */
3522
+ resolvedFontFamily?: string;
3463
3523
  fontSize?: number;
3464
3524
  bold?: boolean;
3465
3525
  italic?: boolean;
@@ -3509,8 +3569,32 @@ declare interface PlaceholderTextLevelStyle {
3509
3569
  tabStops?: TextStyle['tabStops'];
3510
3570
  lineSpacing?: number;
3511
3571
  lineSpacingExactPt?: number;
3572
+ /**
3573
+ * Space before the paragraph in px, resolved from EITHER `a:spcPts`
3574
+ * (absolute) or `a:spcPct` (a percentage of this level's own `a:defRPr`
3575
+ * font size) - the OOXML source is not distinguishable from this field
3576
+ * alone. See {@link spaceBeforePercent} / {@link resolvedSpaceBefore}.
3577
+ */
3512
3578
  spaceBefore?: number;
3513
3579
  spaceAfter?: number;
3580
+ /**
3581
+ * Snapshot of {@link spaceBefore} / {@link spaceAfter} exactly as parsed.
3582
+ * Diffed the same way as {@link resolvedFontFamily}: unchanged means the
3583
+ * writer re-emits the ORIGINAL form (`a:spcPct` when
3584
+ * {@link spaceBeforePercent} / {@link spaceAfterPercent} is set); a value
3585
+ * that has since moved away from the snapshot is a genuine edit and is
3586
+ * always written as `a:spcPts`, since an editor works in absolute units.
3587
+ */
3588
+ resolvedSpaceBefore?: number;
3589
+ resolvedSpaceAfter?: number;
3590
+ /**
3591
+ * The raw `a:spcPct` fraction (e.g. `0.2` for 20%) {@link spaceBefore} /
3592
+ * {@link spaceAfter} was resolved from, when the source used percentage
3593
+ * spacing rather than `a:spcPts`. Absent when the source used `a:spcPts`
3594
+ * (or authored no spacing at all).
3595
+ */
3596
+ spaceBeforePercent?: number;
3597
+ spaceAfterPercent?: number;
3514
3598
  /** Default tab interval in CSS pixels (`a:lvlXpPr/@defTabSz`). */
3515
3599
  defaultTabSize?: number;
3516
3600
  /** Whether East Asian line-breaking rules are enabled. */
@@ -4060,6 +4144,17 @@ declare interface PptxAttributeAnimation {
4060
4144
  * IS consulted regardless of this field's value. Absent means `lin`.
4061
4145
  */
4062
4146
  calcMode?: 'discrete' | 'lin' | 'fmla';
4147
+ /**
4148
+ * `p:anim/@_p14:bounceEnd` (Office 2010 `p14` extension attribute,
4149
+ * MS-OI29500), normalized to a 0-1 fraction of this behaviour's own
4150
+ * duration. PowerPoint's Fly In "Bounce End" effect option writes this on
4151
+ * the position-ramp `p:anim` node(s): the fraction of the duration at
4152
+ * which the primary travel completes, with the remainder spent bouncing
4153
+ * and settling at the final value. Mirrored verbatim by PowerPoint onto
4154
+ * the enclosing `p:cTn/@_p14:presetBounceEnd`. Absent for every animation
4155
+ * that doesn't use this effect option (the overwhelming majority).
4156
+ */
4157
+ bounceEnd?: number;
4063
4158
  }
4064
4159
 
4065
4160
  declare interface PptxAudioCdPosition {
@@ -7730,7 +7825,12 @@ declare interface PptxHeaderFooter {
7730
7825
  hasDateTime?: boolean;
7731
7826
  dateTimeText?: string;
7732
7827
  dateTimeAuto?: boolean;
7733
- /** OOXML date format pattern (e.g. "M/d/yyyy", "dddd, MMMM dd, yyyy"). */
7828
+ /**
7829
+ * The master date placeholder's own `a:fld/@type` (e.g. "datetime2"), NOT a
7830
+ * format pattern. It is one of the predefined OOXML datetime field types
7831
+ * (`datetime1`-`datetime13`); the display pattern for each is resolved by
7832
+ * `resolveFieldDateText` in `packages/shared/src/render/text-field-substitution.ts`.
7833
+ */
7734
7834
  dateFormat?: string;
7735
7835
  hasSlideNumber?: boolean;
7736
7836
  }
@@ -8231,6 +8331,19 @@ declare interface PptxMasterTextStyles {
8231
8331
  otherStyle?: PptxTextStyleLevels;
8232
8332
  }
8233
8333
 
8334
+ /**
8335
+ * `p14:bmkTgt` (Office 2010 `p14` extension, MS-OI29500): names the specific
8336
+ * media element and bookmark an `evt="onMediaBookmark"` condition fires for.
8337
+ * `bookmarkName` matches a `p14:bmk/@_name` on that media element's own
8338
+ * `p14:bmkLst` (see `MediaBookmark.label` in `core/types/elements.ts`).
8339
+ */
8340
+ declare interface PptxMediaBookmarkTarget {
8341
+ /** `p14:bmkTgt/@_spid`: the media element's shape id. */
8342
+ shapeId: string;
8343
+ /** `p14:bmkTgt/@_bmkName`: the bookmark's name. */
8344
+ bookmarkName: string;
8345
+ }
8346
+
8234
8347
  declare type PptxMediaReferenceKind = 'audioCd' | 'wavAudioFile' | 'audioFile' | 'videoFile' | 'quickTimeFile';
8235
8348
 
8236
8349
  /**
@@ -10030,6 +10143,18 @@ declare interface PptxSmartArtLayoutDefinition {
10030
10143
  rootNode: PptxSmartArtLayoutNode;
10031
10144
  /** Original definition retained for constraint evaluation and foreign rules. */
10032
10145
  rawXml?: XmlObject;
10146
+ /**
10147
+ * The un-parsed layout-definition part text (starting at `<dgm:layoutDef>`,
10148
+ * XML declaration included). `rawXml` above loses the document order of
10149
+ * differently-named siblings (the package-wide `fast-xml-parser`
10150
+ * configuration groups children into one array per tag), which the
10151
+ * per-point DiagramML engine (`core/utils/smartart-engine/`) needs to
10152
+ * execute a `layoutNode` body's `forEach`/`choose`/`constrLst` statements
10153
+ * in their real declared sequence - see that package's `ordered-xml.ts`.
10154
+ * `undefined` when the part could not be read (matches `rawXml`'s own
10155
+ * optionality); the engine falls back to the legacy interpreter then.
10156
+ */
10157
+ rawXmlText?: string;
10033
10158
  }
10034
10159
 
10035
10160
  /** Identity and ordering metadata from DiagramML CT_LayoutNode. */
@@ -10997,6 +11122,20 @@ declare interface PptxTableData {
10997
11122
  * present when there is at least one effect.
10998
11123
  */
10999
11124
  tableEffects?: ParsedTableStyleEffect[];
11125
+ /**
11126
+ * Table-cell-context default text size in points, resolved from the
11127
+ * slide's master `p:otherStyle` (ECMA-376 §19.3.1.42 CT_TextListStyle,
11128
+ * §19.3.1.52 for `p:txStyles`). PowerPoint sizes a table cell's text off
11129
+ * this master default (commonly 18pt) whenever neither the run nor the
11130
+ * (size-less) table style provides one; without it, cell text without an
11131
+ * explicit `a:rPr@sz` fell back to the browser's own default font size
11132
+ * (16px / 12pt) instead. A render-only hint: it is not part of any
11133
+ * individual cell's parsed style and is never written back on save, so
11134
+ * resaving an unstyled cell does not bake in an explicit size that was
11135
+ * never authored. `undefined` when no master/otherStyle size resolves
11136
+ * (renderers should leave the browser default in place in that case).
11137
+ */
11138
+ defaultCellFontSize?: number;
11000
11139
  }
11001
11140
 
11002
11141
  /**
@@ -12191,6 +12330,11 @@ declare interface RibbonProps {
12191
12330
  onOpenSettings?: () => void;
12192
12331
  onRunAccessibilityCheck: () => void;
12193
12332
  onToggleSlideSorter: () => void;
12333
+ /**
12334
+ * View > Normal: leave whichever alternate view (slide sorter, reading,
12335
+ * outline, master) is open and return to the ordinary editing canvas.
12336
+ */
12337
+ onGoToNormalView?: () => void;
12194
12338
  /** Open the windowed Reading View (NOT the fullscreen slide show). */
12195
12339
  onOpenReadingView: () => void;
12196
12340
  /** Enter PowerPoint's Outline view: the deck as editable indented text. */
@@ -12899,8 +13043,12 @@ export declare const SHORTCUT_CATALOG: readonly ShortcutDefinition[];
12899
13043
  /** i18n keys for each group's label, in display order. */
12900
13044
  export declare const SHORTCUT_GROUP_LABEL_KEYS: Record<ShortcutGroup, string>;
12901
13045
 
12902
- /** The set of action identifiers the registry can dispatch. */
12903
- export declare type ShortcutActionName = 'undo' | 'redo' | 'copy' | 'cut' | 'paste' | 'duplicate' | 'delete' | 'selectAll' | 'group' | 'ungroup' | 'toggleShortcuts' | 'nudge' | 'prevSlide' | 'nextSlide' | 'escape' | 'find';
13046
+ /**
13047
+ * The set of action identifiers the registry can dispatch: an alias of the
13048
+ * shared keymap's own action union, not a hand-copied one, so a new shared
13049
+ * action can never silently fall through the dispatcher.
13050
+ */
13051
+ export declare type ShortcutActionName = EditorKeyActionName;
12904
13052
 
12905
13053
  /**
12906
13054
  * Action callbacks the registry dispatches to. All are optional; a missing
@@ -12940,6 +13088,34 @@ export declare interface ShortcutActions {
12940
13088
  escape?: () => void;
12941
13089
  /** Open or close the find bar (Ctrl/Cmd+F). */
12942
13090
  find?: () => void;
13091
+ /** Open Find & Replace (Ctrl/Cmd+H). */
13092
+ findReplace?: () => void;
13093
+ /** Left-align the current paragraph (Ctrl/Cmd+L). */
13094
+ alignLeft?: () => void;
13095
+ /** Centre-align the current paragraph (Ctrl/Cmd+E). */
13096
+ alignCenter?: () => void;
13097
+ /** Right-align the current paragraph (Ctrl/Cmd+R). */
13098
+ alignRight?: () => void;
13099
+ /** Justify the current paragraph (Ctrl/Cmd+J). */
13100
+ alignJustify?: () => void;
13101
+ /** Step the font size up PowerPoint's size ladder (Ctrl/Cmd+Shift+> or +]). */
13102
+ increaseFontSize?: () => void;
13103
+ /** Step the font size down PowerPoint's size ladder (Ctrl/Cmd+Shift+< or +[). */
13104
+ decreaseFontSize?: () => void;
13105
+ /** Copy the selection's formatting (Ctrl/Cmd+Shift+C). */
13106
+ copyFormat?: () => void;
13107
+ /** Apply the copied formatting to the selection (Ctrl/Cmd+Shift+V). */
13108
+ pasteFormat?: () => void;
13109
+ /** Insert a new slide (Ctrl/Cmd+M). */
13110
+ newSlide?: () => void;
13111
+ /** Open the hyperlink dialog (Ctrl/Cmd+K). */
13112
+ hyperlink?: () => void;
13113
+ /** Clear direct character formatting on the selection (Ctrl/Cmd+Space). */
13114
+ clearFormatting?: () => void;
13115
+ /** Select the next element on the slide (Tab). */
13116
+ cycleSelectionNext?: () => void;
13117
+ /** Select the previous element on the slide (Shift+Tab). */
13118
+ cycleSelectionPrev?: () => void;
12943
13119
  }
12944
13120
 
12945
13121
  /** The catalog grouped by `group`, in `SHORTCUT_GROUP_LABEL_KEYS` order. */
@@ -12949,7 +13125,7 @@ export declare interface ShortcutCatalogGroup {
12949
13125
  shortcuts: ShortcutDefinition[];
12950
13126
  }
12951
13127
 
12952
- /** A single entry in the shortcut catalog (drives both dispatch and the help UI). */
13128
+ /** A single entry in the shortcut catalog (drives the help UI). */
12953
13129
  export declare interface ShortcutDefinition {
12954
13130
  /** Stable identifier (also the action name where 1:1). */
12955
13131
  id: string;
@@ -12964,6 +13140,15 @@ export declare interface ShortcutDefinition {
12964
13140
  descriptionKey: string;
12965
13141
  }
12966
13142
 
13143
+ /**
13144
+ * The keyboard-shortcut help catalog: data for `ShortcutPanel.vue`.
13145
+ *
13146
+ * Split out of `useKeyboardShortcuts.ts` to keep that file under this repo's
13147
+ * file-size limit; the catalog is presentation data for the "?" help overlay,
13148
+ * not dispatch logic, so it stands on its own.
13149
+ *
13150
+ * @module composables/shortcut-catalog
13151
+ */
12967
13152
  /** Logical grouping for the help overlay. */
12968
13153
  export declare type ShortcutGroup = 'history' | 'clipboard' | 'editing' | 'navigation' | 'general';
12969
13154
 
@@ -13523,6 +13708,10 @@ declare interface SummaryZoomTarget extends PptxImageProperties {
13523
13708
  offsetFactorY?: number;
13524
13709
  scaleFactorX?: number;
13525
13710
  scaleFactorY?: number;
13711
+ /** This tile's own `zmPr/@returnToParent`; see {@link ZoomPptxElement.returnToParent}. */
13712
+ returnToParent?: boolean;
13713
+ /** This tile's own `zmPr/@transitionDur` in milliseconds; see {@link ZoomPptxElement.transitionDurationMs}. */
13714
+ transitionDurationMs?: number;
13526
13715
  rawXml?: XmlObject;
13527
13716
  }
13528
13717
 
@@ -13867,6 +14056,23 @@ declare interface TextSegment {
13867
14056
  fieldParagraphPropertiesXml?: XmlObject;
13868
14057
  /** Raw OMML XML node for equation segments (from `a14:m` / `m:oMathPara`). */
13869
14058
  equationXml?: Record<string, unknown>;
14059
+ /**
14060
+ * The ORIGINAL top-level paragraph child that carried this equation,
14061
+ * captured verbatim at parse time and keyed by its own tag: `{ 'a14:m':
14062
+ * ... }`, `{ 'm:oMathPara': ... }`, `{ 'm:oMath': ... }`, or `{
14063
+ * 'mc:AlternateContent': ... }` for an equation authored behind a
14064
+ * Choice/Fallback switch. `equationXml` above is the resolved math content
14065
+ * used for rendering (unwrapped one level for `a14:m`/`mc:AlternateContent`
14066
+ * sources); this field exists solely so the writer can re-emit an UNTOUCHED
14067
+ * equation byte-for-byte, Choice and Fallback both, instead of collapsing
14068
+ * it to a bare math element PowerPoint's own writer never produces.
14069
+ * `undefined` for a freshly inserted or edited equation, which the writer
14070
+ * instead reconstructs from `equationXml` (always `{ 'm:oMathPara': ... }`
14071
+ * or `{ 'm:oMath': ... }` for those cases). Any code that replaces
14072
+ * `equationXml` on an existing segment must drop this field, or the writer
14073
+ * would keep re-emitting the equation's OLD XML instead of the edit.
14074
+ */
14075
+ equationSourceXml?: Record<string, unknown>;
13870
14076
  /**
13871
14077
  * Optional equation number for numbered equations (e.g. "(1)", "(2.3)").
13872
14078
  * When present, the equation is rendered centered with the number right-aligned.
@@ -14030,6 +14236,32 @@ declare interface TextStyle {
14030
14236
  * @see element-paragraph-geometry.ts
14031
14237
  */
14032
14238
  resolvedParagraphGeometry?: TextStyle;
14239
+ /**
14240
+ * Snapshot of the ELEMENT-scope `a:bodyPr` properties (vertical anchor,
14241
+ * text direction, columns, overflow, autofit, body insets, text wrap, and
14242
+ * the boolean/rotation attributes) as the load pipeline resolved them.
14243
+ *
14244
+ * A shape's own `a:bodyPr` is parsed first, then whatever it left
14245
+ * `undefined` is back-filled from the placeholder / layout / master
14246
+ * defaults (`applyPlaceholderBodyDefaults`), and a placeholder shape with
14247
+ * no `a:bodyPr` of its own has the INHERITED one parsed as if it were its
14248
+ * own. None of those three sources is distinguishable at
14249
+ * `element.textStyle` once the cascade finishes, so a writer that
14250
+ * re-emits every defined field turns an inherited anchor, inset, autofit
14251
+ * mode or `rtlCol` into a value pinned on the slide forever (and an
14252
+ * inherited `a:normAutofit` with no scale gets written back as
14253
+ * `a:spAutoFit`, flipping AutoSize from "shrink text" to "resize shape").
14254
+ *
14255
+ * Present only on an `element.textStyle` that came from a parsed deck.
14256
+ * The save path diffs the live style against this snapshot: a field that
14257
+ * still matches is an inheritance artefact and the writer leaves the
14258
+ * underlying `a:bodyPr` attribute untouched (whatever it already is,
14259
+ * present or absent); a field that differs was authored or has since
14260
+ * been edited and is written out.
14261
+ *
14262
+ * @see element-body-properties.ts
14263
+ */
14264
+ resolvedBodyProperties?: TextStyle;
14033
14265
  fontFamily?: string;
14034
14266
  fontSize?: number;
14035
14267
  /** When true, some form of autofit is in effect; see {@link autoFitMode} for which. */
@@ -14212,6 +14444,16 @@ declare interface TextStyle {
14212
14444
  align: 'l' | 'ctr' | 'r' | 'dec';
14213
14445
  leader?: 'none' | 'dot' | 'hyphen' | 'underscore';
14214
14446
  }>;
14447
+ /**
14448
+ * True when the paragraph's own `a:pPr` authored an EMPTY `<a:tabLst/>`
14449
+ * (explicitly "no tab stops", overriding whatever the cascade would
14450
+ * otherwise supply) rather than omitting the element entirely (inherit).
14451
+ * fast-xml-parser gives a childless element as the empty string, so
14452
+ * `tabLst` and no-`tabLst` are otherwise indistinguishable once `tabStops`
14453
+ * comes back empty either way. Paragraph-scope only; not part of the
14454
+ * element-level geometry cascade.
14455
+ */
14456
+ tabStopsExplicitEmpty?: boolean;
14215
14457
  /** Body text wrapping mode from `a:bodyPr/@wrap`. */
14216
14458
  textWrap?: 'square' | 'none';
14217
14459
  /** Preset text warp type from `a:bodyPr/a:prstTxWarp`. */
@@ -14254,6 +14496,20 @@ declare interface TextStyle {
14254
14496
  * serialised back on save, so it never disturbs the round-trip typefaces.
14255
14497
  */
14256
14498
  scriptFallbackFont?: string;
14499
+ /**
14500
+ * Set alongside {@link scriptFallbackFont} when the resolved {@link fontFamily}
14501
+ * came only from the paragraph/list-style/theme CASCADE (the run's own
14502
+ * `a:rPr` authored no `a:latin`/`a:ea`/`a:cs` of its own). A run always
14503
+ * inherits SOME font this way (typically the theme's `+mn-lt`), so without
14504
+ * this flag `fontFamily` was indistinguishable from a run that genuinely
14505
+ * chose that font itself, and the renderer never applied the theme's
14506
+ * per-script override (see #83): `+mn-lt` names only the LATIN member of
14507
+ * the font scheme and was never meant to cover text in a different
14508
+ * dominant script. An explicit `a:latin`/`a:ea`/`a:cs` authored on the run
14509
+ * itself still always wins; only the cascade default yields to the
14510
+ * script-specific override.
14511
+ */
14512
+ fontFamilyIsCascadeDefault?: boolean;
14257
14513
  /** Text language from `a:rPr/@lang`. */
14258
14514
  language?: string;
14259
14515
  /** Hyperlink mouse-over target from `a:hlinkMouseOver`. */
@@ -15386,6 +15642,28 @@ export declare interface UseEditorKeyboardInput {
15386
15642
  presentFromBeginning: () => void;
15387
15643
  /** Shift+F5: start the show from the active slide (same as "From Current Slide"). */
15388
15644
  startPresenting: () => void;
15645
+ /** Id of the element under active inline edit, or `null`. Lets live-format chords survive the typing gate. */
15646
+ inlineEditingElementId: Ref<string | null>;
15647
+ /** Whether a table cell is actively being edited. Same purpose as `inlineEditingElementId`. */
15648
+ tableEditorIsEditing: () => boolean;
15649
+ /** The armed drawing tool; shortcuts stand down unless it is `'select'`. */
15650
+ activeTool: () => string;
15651
+ /** The current selection's elements, for reading the effective font size. */
15652
+ selectedElements: ComputedRef<PptxElement[]>;
15653
+ /** Select one element non-additively (Tab / Shift+Tab cycling). */
15654
+ selectElement: (id: string, additive: boolean) => void;
15655
+ /** Apply a text-style delta to the selection (Home ▸ Text section's own path). */
15656
+ ribbonUpdateTextStyle: (updates: Partial<TextStyle>) => void;
15657
+ /** Insert a new slide after the active one (Ctrl/Cmd+M). */
15658
+ addSlide: () => void;
15659
+ /** Open the hyperlink dialog for the current selection (Ctrl/Cmd+K). */
15660
+ openHyperlinkForSelection: () => void;
15661
+ /** Arm the format painter from the current selection (Ctrl/Cmd+Shift+C). */
15662
+ toggleFormatPainter: () => void;
15663
+ /** Apply the copied format to one element (used by `pasteFormat`). */
15664
+ applyFormatToTarget: (id: string) => void;
15665
+ /** Disarm the format painter without applying (used after `pasteFormat`). */
15666
+ cancelFormatPainter: () => void;
15389
15667
  }
15390
15668
 
15391
15669
  export declare interface UseEditorKeyboardResult {
@@ -17903,6 +18181,28 @@ declare interface ZoomPptxElement extends PptxElementBase, PptxImageProperties {
17903
18181
  summaryTargets?: SummaryZoomTarget[];
17904
18182
  /** Layout mode authored on the Summary Zoom container. */
17905
18183
  summaryLayout?: 'grid' | 'fixed';
18184
+ /**
18185
+ * `zmPr/@returnToParent` (MS-PPTX `CT_ZoomObjectProperties`, shared by all
18186
+ * three Zoom kinds): whether continuing forward from the destination slide
18187
+ * during a live show returns to this Zoom's origin slide instead of
18188
+ * advancing linearly through the deck. OOXML default is `true` when the
18189
+ * attribute is present but this codebase leaves it `undefined` when the
18190
+ * source XML omits it, so a round-trip never fabricates the attribute.
18191
+ * For `zoomType: 'summary'`, this mirrors the first tile's own value; see
18192
+ * {@link SummaryZoomTarget.returnToParent} for the per-tile value.
18193
+ */
18194
+ returnToParent?: boolean;
18195
+ /**
18196
+ * `zmPr/@transitionDur` (MS-PPTX `CT_ZoomObjectProperties`): the
18197
+ * zoom-transition length in milliseconds. PowerPoint's own writer emits a
18198
+ * unitless decimal-millisecond value for every OOXML `ST_UniversalTimeOffset`
18199
+ * this codebase has observed (see the media-trim/-fade parsers), so this
18200
+ * follows the same convention rather than the full TIMEOFFSET grammar's
18201
+ * unit suffixes. Undefined uses the destination slide's own transition.
18202
+ * For `zoomType: 'summary'`, this mirrors the first tile's own value; see
18203
+ * {@link SummaryZoomTarget.transitionDurationMs} for the per-tile value.
18204
+ */
18205
+ transitionDurationMs?: number;
17906
18206
  }
17907
18207
 
17908
18208
  export { }
package/dist/internals.js CHANGED
@@ -1,2 +1,2 @@
1
- import { $ as s, A as a, An as t, B as n, Bd as i, Bt as r, Cs as e, Ct as o, D as l, Dr as m, E as d, F as f, Ft as p, G as y, Hl as g, Ht as c, I as h, Is as u, It as T, J as j, K as q, Ki as L, Kn as M, L as S, Lt as V, M as v, Mn as x, Mt as B, N as D, Ni as F, Nt as I, O as K, P as N, Pt as P, Q as U, Qr as _, R as b, Rt as w, Sa as z, Sr as A, St as C, T as E, Tn as H, Tt as O, U as Q, Uc as R, Ut as W, V as Z, Vd as k, Vt as G, W as J, Wt as X, X as Y, Y as $, Z as ss, Zd as as, _ as ts, _a as ns, _t as is, a as rs, at as es, b as os, bt as ls, c as ms, cn as ds, ct as fs, d as ps, do as ys, dt as gs, ea as cs, et as hs, f as us, fn as Ts, ft as js, g as qs, gn as Ls, gt as Ms, h as Ss, hi as Vs, hn as vs, ht as xs, i as Bs, ii as Ds, il as Fs, it as Is, j as Ks, jn as Ns, jt as Ps, k as Us, l as _s, ln as bs, lt as ws, m as zs, mi as As, ml as Cs, mn as Es, mt as Hs, n as Os, nf as Qs, nt as Rs, o as Ws, oi as Zs, on as ks, ot as Gs, p as Js, pi as Xs, pn as Ys, pt as $s, q as sa, qc as aa, qi as ta, qt as na, r as ia, ri as ra, rt as ea, s as oa, sf as la, si as ma, sn as da, sr as fa, st as pa, t as ya, tt as ga, u as ca, uf as ha, un as ua, ut as Ta, v as ja, vt as qa, wt as La, xt as Ma, y as Sa, yn as Va, yr as va, yt as xa, z as Ba, zt as Da } from "./useViewerSettingsDialog-csWTWDGr.js";
2
- export { fa as CINEMATIC_TRANSITION_KEYFRAMES, Bs as DEFAULT_MAX_VERSIONS, va as DEFAULT_MORPH_DURATION_MS, t as DEFAULT_RENDERING_3D_FLAGS, A as DEFAULT_TRANSITION_DURATION_MS, m as EASE, qa as ERASER_RADIUS, Hs as FragmentedTransitionLayer, xa as HIGHLIGHTER_OPACITY, ls as HIGHLIGHTER_WIDTH, _ as INSTANT, ra as MOBILE_BREAKPOINT, Ds as MOBILE_LANDSCAPE_MAX_HEIGHT, $s as MorphExtraLayers, Zs as NUDGE_LARGE, ma as NUDGE_SMALL, Xs as P14_TRANSITION_KEYFRAMES, As as P14_TRANSITION_KEYFRAMES_2, Vs as P14_TRANSITION_KEYFRAMES_ALL, Ma as PEN_WIDTH, js as PresentationTransitionOverlay, F as RANDOM_ELIGIBLE_TYPES, ts as RIBBON_ALIGN, Ns as Rendering3DFlagsKey, w as SHORTCUT_CATALOG, Da as SHORTCUT_GROUP_LABEL_KEYS, L as SLIDE_TRANSITION_KEYFRAMES, ta as SLIDE_TRANSITION_KEYFRAMES_CSS, B as SMARTART_COLOR_SCHEMES, I as SMARTART_STYLE_OPTIONS, cs as TABLET_BREAKPOINT, ns as TRANSITION_SPEED_DURATION_MS, ks as TableSelectionKey, z as WHEEL_SPOKE_COUNTS, ys as buildClickGroups, da as computeCellSelection, e as computeDocumentStatistics, ws as computeElapsed, u as countWords, C as createStroke, o as eraseStrokesAtPoint, Ta as formatRehearseMs, R as generateCommentId, aa as getCinematicTransitionAnimations, Fs as getP14TransitionAnimations, Cs as getSlideTransitionAnimations, r as groupShortcutCatalog, ds as injectTableSelection, Ys as inlineEditorRect, g as isMobileViewport, Es as nodeIdsInRenderOrder, a as parseSignaturesFromBuffer, bs as provideTableSelection, i as resolveDirection, k as resolveDirection8, as as resolveOrientation, G as resolveShortcutAction, Qs as resolveSlideTransition, la as resolveTransitionDurationMs, ha as resolveWheelSpokeCount, P as smartArtLayoutLabel, vs as textNodeIdsInRenderOrder, ja as toShapePreset, pa as useAccessibility, Gs as useAlignGroup, O as useAnimationPlayback, es as useAutosave, V as useChartEditing, Is as useCollaboration, ea as useCollaborationWiring, H as useColorChangeImage, Rs as useComments, ga as useCommentsWiring, hs as useContextMenu, s as useCustomShows, U as useCustomShowsWiring, T as useDebouncedCallback, ss as useDocumentPropertiesDialog, W as useDocumentStatistics, Y as useEditorHistory, $ as useEditorKeyboard, j as useEditorOperations, sa as useElementDrag, q as useElementInsertion, y as useEmbeddedFonts, J as useExport, Q as useExportProgress, n as useExportWiring, Ba as useFindReplace, b as useFontEmbedding, S as useFormatPainter, h as useHeaderFooterDialog, f as useInkDrawing, N as useInlineEditing, D as useInsertElementDialogs, X as useIsMobile, v as useKeyboardInsets, c as useKeyboardShortcuts, Ks as useLoadContent, Us as useMasterViewState, Z as useMediaExport, K as useMobileChrome, Va as useModel3dScene, xs as useMorphTransitionOverlay, l as useMultiSelectOps, d as usePasswordProtection, La as usePresentationAnnotations, E as usePresentationModeWiring, os as usePrint, gs as useRehearseTimings, x as useRendering3DFlags, Sa as useRibbonActions, Os as useRibbonProps, qs as useRibbonUiState, Ss as useSectionOperations, zs as useSelectionPaneWiring, M as useSheetDismissDrag, Js as useSignatureWorkflow, fs as useSignatures, us as useSlideMutations, ps as useSlideOperations, ca as useSlideShowSettings, _s as useSlideTemplateInsertion, Ps as useSmartArtEditing, p as useSmartArtFocus, Ts as useSmartArtHoverRect, Ls as useSmartArtInlineEditState, ms as useSmartArtNodeEditContext, oa as useTableCellEditingContext, ua as useTableCellSelection, Ws as useThemeEditing, is as useToolbarAutoHide, na as useToolbarVisibility, Ms as useTouchGestures, rs as useVersionHistory, ia as useVersionHistoryWiring, ya as useViewerSettingsDialog };
1
+ import { $ as a, $d as s, A as t, An as n, B as i, Bt as r, Ct as e, D as o, Dr as l, E as f, F as d, Ft as m, G as p, Hd as y, Ht as g, I as h, It as c, J as L, Jc as T, K as j, Ki as u, Kn as M, L as S, Ls as U, Lt as q, M as v, Mn as w, Mt as x, N as D, Ni as F, Nt as K, O as N, P, Pt as V, Q as W, Qr as _, R as b, Rt as z, Sa as A, Sr as B, St as E, T as H, Tn as I, Tt as J, U as O, Ud as Q, Ul as R, Ut as $, V as k, Vt as C, W as G, Wc as X, Wt as Y, X as Z, Y as aa, Z as sa, _ as ta, _a as na, _t as ia, a as ra, al as ea, at as oa, b as la, bt as fa, c as da, cn as ma, ct as pa, d as ya, do as ga, dt as ha, ea as ca, et as La, f as Ta, ff as ja, fn as ua, ft as Ma, g as Sa, gn as Ua, gt as qa, h as va, hi as wa, hl as xa, hn as Da, ht as Fa, i as Ka, if as Na, ii as Pa, it as Va, j as Wa, jn as _a, jt as ba, k as za, l as Aa, lf as Ba, ln as Ea, lt as Ha, m as Ia, mi as Ja, mn as Oa, mt as Qa, n as Ra, nt as $a, o as ka, oi as Ca, on as Ga, ot as Xa, p as Ya, pi as Za, pn as as, pt as ss, q as ts, qi as ns, qt as is, r as rs, ri as es, rt as os, s as ls, si as fs, sn as ds, sr as ms, st as ps, t as ys, tt as gs, u as hs, un as cs, ut as Ls, v as Ts, vt as js, ws as us, wt as Ms, xt as Ss, y as Us, yn as qs, yr as vs, yt as ws, z as xs, zt as Ds } from "./useViewerSettingsDialog-DKWvCzGK.js";
2
+ export { ms as CINEMATIC_TRANSITION_KEYFRAMES, Ka as DEFAULT_MAX_VERSIONS, vs as DEFAULT_MORPH_DURATION_MS, n as DEFAULT_RENDERING_3D_FLAGS, B as DEFAULT_TRANSITION_DURATION_MS, l as EASE, js as ERASER_RADIUS, Qa as FragmentedTransitionLayer, ws as HIGHLIGHTER_OPACITY, fa as HIGHLIGHTER_WIDTH, _ as INSTANT, es as MOBILE_BREAKPOINT, Pa as MOBILE_LANDSCAPE_MAX_HEIGHT, ss as MorphExtraLayers, Ca as NUDGE_LARGE, fs as NUDGE_SMALL, Za as P14_TRANSITION_KEYFRAMES, Ja as P14_TRANSITION_KEYFRAMES_2, wa as P14_TRANSITION_KEYFRAMES_ALL, Ss as PEN_WIDTH, Ma as PresentationTransitionOverlay, F as RANDOM_ELIGIBLE_TYPES, ta as RIBBON_ALIGN, _a as Rendering3DFlagsKey, r as SHORTCUT_CATALOG, C as SHORTCUT_GROUP_LABEL_KEYS, u as SLIDE_TRANSITION_KEYFRAMES, ns as SLIDE_TRANSITION_KEYFRAMES_CSS, x as SMARTART_COLOR_SCHEMES, K as SMARTART_STYLE_OPTIONS, ca as TABLET_BREAKPOINT, na as TRANSITION_SPEED_DURATION_MS, Ga as TableSelectionKey, A as WHEEL_SPOKE_COUNTS, ga as buildClickGroups, ds as computeCellSelection, us as computeDocumentStatistics, Ha as computeElapsed, U as countWords, E as createStroke, e as eraseStrokesAtPoint, Ls as formatRehearseMs, X as generateCommentId, T as getCinematicTransitionAnimations, ea as getP14TransitionAnimations, xa as getSlideTransitionAnimations, g as groupShortcutCatalog, ma as injectTableSelection, as as inlineEditorRect, R as isMobileViewport, Oa as nodeIdsInRenderOrder, t as parseSignaturesFromBuffer, Ea as provideTableSelection, y as resolveDirection, Q as resolveDirection8, s as resolveOrientation, z as resolveShortcutAction, Na as resolveSlideTransition, Ba as resolveTransitionDurationMs, ja as resolveWheelSpokeCount, V as smartArtLayoutLabel, Da as textNodeIdsInRenderOrder, Ts as toShapePreset, ps as useAccessibility, Xa as useAlignGroup, J as useAnimationPlayback, oa as useAutosave, q as useChartEditing, Va as useCollaboration, os as useCollaborationWiring, I as useColorChangeImage, $a as useComments, gs as useCommentsWiring, La as useContextMenu, a as useCustomShows, W as useCustomShowsWiring, c as useDebouncedCallback, sa as useDocumentPropertiesDialog, $ as useDocumentStatistics, Z as useEditorHistory, aa as useEditorKeyboard, L as useEditorOperations, ts as useElementDrag, j as useElementInsertion, p as useEmbeddedFonts, G as useExport, O as useExportProgress, i as useExportWiring, xs as useFindReplace, b as useFontEmbedding, S as useFormatPainter, h as useHeaderFooterDialog, d as useInkDrawing, P as useInlineEditing, D as useInsertElementDialogs, Y as useIsMobile, v as useKeyboardInsets, Ds as useKeyboardShortcuts, Wa as useLoadContent, za as useMasterViewState, k as useMediaExport, N as useMobileChrome, qs as useModel3dScene, Fa as useMorphTransitionOverlay, o as useMultiSelectOps, f as usePasswordProtection, Ms as usePresentationAnnotations, H as usePresentationModeWiring, la as usePrint, ha as useRehearseTimings, w as useRendering3DFlags, Us as useRibbonActions, Ra as useRibbonProps, Sa as useRibbonUiState, va as useSectionOperations, Ia as useSelectionPaneWiring, M as useSheetDismissDrag, Ya as useSignatureWorkflow, pa as useSignatures, Ta as useSlideMutations, ya as useSlideOperations, hs as useSlideShowSettings, Aa as useSlideTemplateInsertion, ba as useSmartArtEditing, m as useSmartArtFocus, ua as useSmartArtHoverRect, Ua as useSmartArtInlineEditState, da as useSmartArtNodeEditContext, ls as useTableCellEditingContext, cs as useTableCellSelection, ka as useThemeEditing, ia as useToolbarAutoHide, is as useToolbarVisibility, qa as useTouchGestures, ra as useVersionHistory, rs as useVersionHistoryWiring, ys as useViewerSettingsDialog };
Binary file
Binary file
@@ -34,7 +34,7 @@
34
34
  }
35
35
 
36
36
 
37
- .pptx-vue-chart-svg[data-v-b41ce5bb] {
37
+ .pptx-vue-chart-svg[data-v-527055f4] {
38
38
  width: 100%;
39
39
  height: 100%;
40
40
  display: block;
@@ -85,14 +85,14 @@
85
85
  }
86
86
 
87
87
 
88
- .pptx-vue-contentpart-svg[data-v-f83c81f0] {
88
+ .pptx-vue-contentpart-svg[data-v-4f7a16dc] {
89
89
  width: 100%;
90
90
  height: 100%;
91
91
  pointer-events: none;
92
92
  display: block;
93
93
  }
94
94
 
95
- .pptx-vue-contentpart-fallback[data-v-f83c81f0] {
95
+ .pptx-vue-contentpart-fallback[data-v-4f7a16dc] {
96
96
  width: 100%;
97
97
  height: 100%;
98
98
  box-sizing: border-box;
@@ -104,7 +104,7 @@
104
104
  background: rgba(148, 163, 184, 0.08);
105
105
  }
106
106
 
107
- .pptx-vue-contentpart-fallback-label[data-v-f83c81f0] {
107
+ .pptx-vue-contentpart-fallback-label[data-v-4f7a16dc] {
108
108
  font-size: 11px;
109
109
  font-family: system-ui, sans-serif;
110
110
  color: rgba(100, 116, 139, 0.9);
@@ -137,7 +137,7 @@
137
137
 
138
138
  /* The host `.pptx-vue-media` is already absolutely positioned by
139
139
  `getContainerStyle`, so the badge centres against the element's own box. */
140
- .pptx-vue-media-badge[data-v-58b8d34c] {
140
+ .pptx-vue-media-badge[data-v-943e5f33] {
141
141
  position: absolute;
142
142
  inset: 0;
143
143
  display: flex;
@@ -151,31 +151,52 @@
151
151
  font-size: 10px;
152
152
  }
153
153
 
154
- .pptx-vue-media-badge svg[data-v-58b8d34c] {
154
+ .pptx-vue-media-badge svg[data-v-943e5f33] {
155
155
  width: 48px;
156
156
  height: 48px;
157
157
  }
158
158
 
159
- .pptx-vue-media-badge-missing[data-v-58b8d34c] {
159
+ .pptx-vue-media-badge-missing[data-v-943e5f33] {
160
160
  color: rgba(255, 255, 255, 0.6);
161
161
  }
162
162
 
163
- .pptx-vue-media-badge-missing svg[data-v-58b8d34c] {
163
+ .pptx-vue-media-badge-missing svg[data-v-943e5f33] {
164
164
  width: 32px;
165
165
  height: 32px;
166
166
  }
167
167
 
168
- .pptx-vue-media-placeholder[data-v-58b8d34c] {
168
+ .pptx-vue-media-placeholder[data-v-943e5f33] {
169
169
  flex-direction: column;
170
170
  gap: 4px;
171
171
  font-size: 10px;
172
172
  }
173
173
 
174
- .pptx-vue-media-placeholder svg[data-v-58b8d34c] {
174
+ .pptx-vue-media-placeholder svg[data-v-943e5f33] {
175
175
  width: 32px;
176
176
  height: 32px;
177
177
  }
178
178
 
179
+ .pptx-vue-media-fullscreen-stop[data-v-943e5f33] {
180
+ position: absolute;
181
+ bottom: 12px;
182
+ right: 12px;
183
+ z-index: 30;
184
+ border: none;
185
+ border-radius: 9999px;
186
+ background: rgba(0, 0, 0, 0.5);
187
+ color: rgba(255, 255, 255, 0.8);
188
+ padding: 8px;
189
+ cursor: pointer;
190
+ transition:
191
+ background-color 0.15s ease,
192
+ color 0.15s ease;
193
+ }
194
+
195
+ .pptx-vue-media-fullscreen-stop[data-v-943e5f33]:hover {
196
+ background: rgba(0, 0, 0, 0.7);
197
+ color: #fff;
198
+ }
199
+
179
200
 
180
201
  .pptx-vue-equation-wrapper[data-v-040d8b50] {
181
202
  display: flex;
@@ -213,7 +234,7 @@
213
234
  }
214
235
 
215
236
 
216
- .pptx-vue-ink-svg[data-v-b57bbdfb] {
237
+ .pptx-vue-ink-svg[data-v-af9d7ab9] {
217
238
  width: 100%;
218
239
  height: 100%;
219
240
  pointer-events: none;
@@ -567,7 +588,7 @@
567
588
  }
568
589
 
569
590
 
570
- .pptx-vue-wordart[data-v-b190a737] {
591
+ .pptx-vue-wordart[data-v-fb0f296a] {
571
592
  position: absolute;
572
593
  inset: 0;
573
594
  overflow: visible;
Binary file
Binary file