pptx-svelte-viewer 2.12.0 → 2.13.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.
@@ -1307,6 +1307,15 @@ var n = {
1307
1307
  "pptx.presenter.eraseAllInk": "Erase All Ink on Slide",
1308
1308
  "pptx.presenter.slideLabel": "Slide {{current}} of {{total}}",
1309
1309
  "pptx.presenter.timerProgress": "Timer Progress",
1310
+ "pptx.presenter.toggleTimer": "Pause or Resume Timer",
1311
+ "pptx.presenter.resetTimer": "Reset Timer",
1312
+ "pptx.presenter.zoomIn": "Zoom In",
1313
+ "pptx.presenter.zoomOut": "Zoom Out",
1314
+ "pptx.presenter.resetZoom": "Reset Zoom",
1315
+ "pptx.presenter.swapDisplays": "Swap Displays",
1316
+ "pptx.presenter.slideNavigator": "Slide Navigator",
1317
+ "pptx.presenter.closeNavigator": "Close",
1318
+ "pptx.presenter.timerTitle": "{{elapsed}} (segment {{segment}})",
1310
1319
  "pptx.print.allSlides": "All Slides",
1311
1320
  "pptx.print.blackAndWhite": "Black and White",
1312
1321
  "pptx.print.color": "Color",
@@ -2164,6 +2173,7 @@ Item 3`,
2164
2173
  "pptx.editorToolbar.resetZoom": "Reset zoom",
2165
2174
  "pptx.editorToolbar.resetZoomTo100": "Reset zoom to 100%",
2166
2175
  "pptx.effects.innerShadow": "Inner Shadow",
2176
+ "pptx.element.hasAction": "Has action",
2167
2177
  "pptx.element.linkFallback": "Link",
2168
2178
  "pptx.export.export": "Export",
2169
2179
  "pptx.export.gifAnimated": "Animated GIF",
@@ -0,0 +1,33 @@
1
+ import { PresentationPointerTool, PresentationSnapshot } from 'pptx-viewer-shared';
2
+ /** Everything the strip needs to decide how a control currently reads. */
3
+ export interface PresenterStripState {
4
+ snapshot: PresentationSnapshot;
5
+ /** Whether the audience-display window is open (the `audience` toggle). */
6
+ audienceOpen: boolean;
7
+ }
8
+ /**
9
+ * Whether a strip control id names an annotation tool.
10
+ *
11
+ * A type guard rather than a cast at the call site: the console dispatches on
12
+ * the shared inventory's `string` ids, and narrowing here is what keeps
13
+ * `setTool` free of an unchecked assertion.
14
+ */
15
+ export declare function isPresenterPointerTool(id: string): id is PresentationPointerTool;
16
+ /**
17
+ * Whether a control currently reads as "on".
18
+ *
19
+ * Drives `aria-pressed` and the active styling for the toggles, and the
20
+ * icon/label swap for the two slots whose appearance genuinely changes with
21
+ * state (the timer shows a play glyph while paused, the audience toggle renames
22
+ * itself once a display is open).
23
+ */
24
+ export declare function presenterControlActive(id: string, state: PresenterStripState): boolean;
25
+ /**
26
+ * Whether a control is unavailable.
27
+ *
28
+ * Only "swap displays", which needs a second window to swap with; React
29
+ * disables it the same way. Everything else stays live, deliberately including
30
+ * Next on the last slide (see the shared `presenterNextDisabled`).
31
+ */
32
+ export declare function presenterControlDisabled(id: string, state: PresenterStripState): boolean;
33
+ //# sourceMappingURL=presenter-console-strip.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"presenter-console-strip.d.ts","sourceRoot":"","sources":["../../../src/viewer/components/presenter-console-strip.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,KAAK,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAExF,0EAA0E;AAC1E,MAAM,WAAW,mBAAmB;IACnC,QAAQ,EAAE,oBAAoB,CAAC;IAC/B,2EAA2E;IAC3E,YAAY,EAAE,OAAO,CAAC;CACtB;AAKD;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,MAAM,GAAG,EAAE,IAAI,uBAAuB,CAEhF;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAmBtF;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAExF"}
@@ -2486,6 +2486,14 @@ interface PptxChartSeries {
2486
2486
  * `c:dispBlanksAs` (gap / zero / span) using this mask.
2487
2487
  */
2488
2488
  blanks?: boolean[];
2489
+ /**
2490
+ * ECMA-376 number-format code for this series' values, resolved from
2491
+ * `c:ser/c:dLbls/c:numFmt/@formatCode` and falling back to the value cache's
2492
+ * own `c:numCache/c:formatCode` (which is what `@sourceLinked="1"` means).
2493
+ * Data labels render through it: a percentage series caches fractions, so
2494
+ * without the code `0.52` reaches the label where PowerPoint shows `52%`.
2495
+ */
2496
+ numberFormat?: string;
2489
2497
  color?: string;
2490
2498
  trendlines?: PptxChartTrendline[];
2491
2499
  errBars?: PptxChartErrBars[];
@@ -2592,6 +2600,16 @@ interface PptxChartStyle {
2592
2600
  hasTitle?: boolean;
2593
2601
  /** Whether gridlines are visible. */
2594
2602
  hasGridlines?: boolean;
2603
+ /**
2604
+ * Chart-area fill from `c:chartSpace/c:spPr`: a resolved colour, or the
2605
+ * literal `'none'` when the source declares `<a:noFill/>`. Absent when the
2606
+ * chart says nothing, in which case the renderer picks its own default.
2607
+ * PowerPoint decks routinely set `a:noFill` so the chart floats on the slide
2608
+ * background; painting a panel behind it boxes the chart in.
2609
+ */
2610
+ chartAreaFill?: string;
2611
+ /** Plot-area fill from `c:plotArea/c:spPr`. See {@link chartAreaFill}. */
2612
+ plotAreaFill?: string;
2595
2613
  /** Whether data labels are shown. */
2596
2614
  hasDataLabels?: boolean;
2597
2615
  /** Chart-level data-label content/position options (when `hasDataLabels`). */
@@ -11559,6 +11577,14 @@ declare class PresenterSession {
11559
11577
  constructor(options: PresenterSessionOptions);
11560
11578
  connect(): void;
11561
11579
  openAudience(): boolean;
11580
+ /**
11581
+ * Move the console to the audience screen and the audience display to this
11582
+ * one (the presenter console's "Swap Displays"). Resolves `false` when there
11583
+ * is no audience window, when the browser withholds the Window Management
11584
+ * permission, or when both windows already sit on the same screen, which is
11585
+ * why the strip's control is disabled until a display is open.
11586
+ */
11587
+ swapDisplays(): Promise<boolean>;
11562
11588
  sync(slideIndex?: number): void;
11563
11589
  updateSnapshot(patch: Partial<PresentationSnapshot>): void;
11564
11590
  closeAudience(): void;
@@ -1,4 +1,4 @@
1
- import { $ as s, D as e, O as a, a as i, c as t, d as l, et as S, f as n, g as v, i as d, k as o, l as b, n as g, o as p, r as c, s as x, t as w, u as T } from "../export-BGT5Ohf0.js";
1
+ import { $ as s, D as e, O as a, a as i, c as t, d as l, et as S, f as n, g as v, i as d, k as o, l as b, n as g, o as p, r as c, s as x, t as w, u as T } from "../export-BAvoKLTO.js";
2
2
  var m = o, P = a, V = e;
3
3
  export {
4
4
  w as PowerPointViewer,
@@ -18,6 +18,14 @@ export declare class PresenterSession {
18
18
  constructor(options: PresenterSessionOptions);
19
19
  connect(): void;
20
20
  openAudience(): boolean;
21
+ /**
22
+ * Move the console to the audience screen and the audience display to this
23
+ * one (the presenter console's "Swap Displays"). Resolves `false` when there
24
+ * is no audience window, when the browser withholds the Window Management
25
+ * permission, or when both windows already sit on the same screen, which is
26
+ * why the strip's control is disabled until a display is open.
27
+ */
28
+ swapDisplays(): Promise<boolean>;
21
29
  sync(slideIndex?: number): void;
22
30
  updateSnapshot(patch: Partial<PresentationSnapshot>): void;
23
31
  closeAudience(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"presenter-session.svelte.d.ts","sourceRoot":"","sources":["../../../src/viewer/presentation/presenter-session.svelte.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE/D,MAAM,WAAW,uBAAuB;IACvC,SAAS,EAAE,MAAM,UAAU,GAAG,WAAW,GAAG,IAAI,GAAG,SAAS,CAAC;IAC7D,aAAa,EAAE,MAAM,MAAM,CAAC;IAC5B,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,cAAc,EAAE,MAAM,IAAI,CAAC;CAC3B;AAED,qBAAa,gBAAgB;IAWhB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAVpC,YAAY,UAAiB;IAC7B,QAAQ,uBAAgD;IACxD,QAAQ,CAAC,iBAAiB,gBAC+D;IACzF,QAAQ,CAAC,UAAU,UAAmC;IACtD,OAAO,CAAC,OAAO,CAAiC;IAChD,OAAO,CAAC,cAAc,CAAuB;IAC7C,OAAO,CAAC,kBAAkB,CAAM;IAChC,OAAO,CAAC,QAAQ,CAAK;gBAEQ,OAAO,EAAE,uBAAuB;IAE7D,OAAO,IAAI,IAAI;IAqCf,YAAY,IAAI,OAAO;IA2BvB,IAAI,CAAC,UAAU,SAA+B,GAAG,IAAI;IAYrD,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,oBAAoB,CAAC,GAAG,IAAI;IAK1D,aAAa,IAAI,IAAI;IAoBrB,OAAO,IAAI,IAAI;IAQf,OAAO,CAAC,UAAU;CAQlB"}
1
+ {"version":3,"file":"presenter-session.svelte.d.ts","sourceRoot":"","sources":["../../../src/viewer/presentation/presenter-session.svelte.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE/D,MAAM,WAAW,uBAAuB;IACvC,SAAS,EAAE,MAAM,UAAU,GAAG,WAAW,GAAG,IAAI,GAAG,SAAS,CAAC;IAC7D,aAAa,EAAE,MAAM,MAAM,CAAC;IAC5B,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,cAAc,EAAE,MAAM,IAAI,CAAC;CAC3B;AAED,qBAAa,gBAAgB;IAWhB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAVpC,YAAY,UAAiB;IAC7B,QAAQ,uBAAgD;IACxD,QAAQ,CAAC,iBAAiB,gBAC+D;IACzF,QAAQ,CAAC,UAAU,UAAmC;IACtD,OAAO,CAAC,OAAO,CAAiC;IAChD,OAAO,CAAC,cAAc,CAAuB;IAC7C,OAAO,CAAC,kBAAkB,CAAM;IAChC,OAAO,CAAC,QAAQ,CAAK;gBAEQ,OAAO,EAAE,uBAAuB;IAE7D,OAAO,IAAI,IAAI;IAqCf,YAAY,IAAI,OAAO;IA2BvB;;;;;;OAMG;IACG,YAAY,IAAI,OAAO,CAAC,OAAO,CAAC;IAQtC,IAAI,CAAC,UAAU,SAA+B,GAAG,IAAI;IAYrD,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,oBAAoB,CAAC,GAAG,IAAI;IAK1D,aAAa,IAAI,IAAI;IAoBrB,OAAO,IAAI,IAAI;IAQf,OAAO,CAAC,UAAU;CAQlB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pptx-svelte-viewer",
3
- "version": "2.12.0",
3
+ "version": "2.13.0",
4
4
  "description": "Svelte 5 PowerPoint viewer and editor component: render, edit, present, and export PPTX slides in the browser.",
5
5
  "keywords": [
6
6
  "office",