pptx-angular-viewer 4.24.1 → 4.24.3

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pptx-angular-viewer",
3
- "version": "4.24.1",
3
+ "version": "4.24.3",
4
4
  "description": "pptx-viewer for Angular: a PowerPoint viewer and editor component to render, edit, and export PPTX slides in the browser.",
5
5
  "keywords": [
6
6
  "angular",
@@ -1787,8 +1787,12 @@ declare function buildStrokeOutline(element: PptxElement): StrokeOutline | undef
1787
1787
  * INTERACTIVE-only padded box (see `elementHitTargetStyle`); painting the
1788
1788
  * outline at that padded size in read-only rendering stretched a hairline
1789
1789
  * rule's border across a much taller box than it was authored at (issue #285).
1790
+ *
1791
+ * Returns `undefined` for a box under 1px on either side. A zero side would
1792
+ * hide the `<svg>`, and the 1px minimum size the bindings give it would stretch
1793
+ * a sub-pixel one. The path is then drawn in the wrapper's own pixels.
1790
1794
  */
1791
- declare function strokeOutlineViewBox(element: PptxElement): string;
1795
+ declare function strokeOutlineViewBox(element: PptxElement): string | undefined;
1792
1796
  /**
1793
1797
  * Whether a binding should suppress its CSS border for this element because the
1794
1798
  * stroke overlay is painting the outline instead. Keeping both would draw the
@@ -23114,15 +23118,23 @@ declare function buildSmartArt3DSpecForElement(element: PptxElement, options?: S
23114
23118
  */
23115
23119
  /** Element markers a second render of a diagram must not repeat. */
23116
23120
  declare const EDIT_LAYER_MARKER_ATTRS: readonly ["data-element-id", "data-testid", "data-pptx-element", "role", "aria-label", "aria-roledescription"];
23117
- /** Remove the element markers from `root` and everything under it. */
23121
+ /** Remove the element markers from `root` and everything under it, except on its controls. */
23118
23122
  declare function stripEditLayerMarkers(root: Element): void;
23119
23123
  /**
23120
23124
  * The `[data-smartart-node-id]` element under viewport point `(x, y)` inside
23121
- * `root`, by geometry: the smallest node box containing the point. Unlike
23125
+ * `root`, by geometry: the smallest node containing the point. Unlike
23122
23126
  * `document.elementsFromPoint`, this finds nodes that hit-testing skips, such
23123
23127
  * as a hidden layer's `pointer-events: none` groups.
23128
+ *
23129
+ * A node is tested against its drawn shapes where the host can, so a rotated
23130
+ * diagram resolves the node under the pointer rather than a neighbour whose
23131
+ * bounding box merely overlaps it; otherwise by its bounding box.
23124
23132
  */
23125
23133
  declare function smartArtNodeAtPoint(root: ParentNode, x: number, y: number): Element | null;
23134
+ /** `smartArtData` after setting a node's text, or `null` when nothing changed. */
23135
+ declare function commitSmartArtNodeText(element: PptxElement, nodeId: string, text: string): PptxSmartArtData | null;
23136
+ /** `smartArtData` after setting a node's fill colour, or `null` when nothing changed. */
23137
+ declare function commitSmartArtNodeFill(element: PptxElement, nodeId: string, fill: string): PptxSmartArtData | null;
23126
23138
  /** Gap between a value label and the box edge it labels. */
23127
23139
  declare const OBLIQUE_VALUE_LABEL_GAP: number;
23128
23140
  /** Gap between a category or series label and the box edge it labels. */
@@ -37436,6 +37448,33 @@ declare function snapshotThreeViewsIntoClone(originalRoot: ParentNode, cloneRoot
37436
37448
  declare const MAX_DEVICE_PIXEL_RATIO = 2;
37437
37449
  /** Pure: backing size for a layout box shown at `screenWidth` x `screenHeight` CSS px. */
37438
37450
  declare function computeThreeViewSize(layoutWidth: number, layoutHeight: number, screenWidth: number, screenHeight: number, devicePixelRatio: number): ThreeViewSize;
37451
+ /** The linear part of a 2D transform: `x' = a x + c y`, `y' = b x + d y`. */
37452
+ interface Linear2D {
37453
+ a: number;
37454
+ b: number;
37455
+ c: number;
37456
+ d: number;
37457
+ }
37458
+ /**
37459
+ * The linear part of a computed `transform` (`matrix(...)` or `matrix3d(...)`,
37460
+ * the only forms `getComputedStyle` returns), or `null` for `none` or text it
37461
+ * cannot read.
37462
+ */
37463
+ declare function parseComputedTransform(value: string | undefined): Linear2D | null;
37464
+ /** Scale factors of a 2D linear map, which a rotation leaves unchanged. */
37465
+ declare function matrixScale(m: Linear2D): {
37466
+ x: number;
37467
+ y: number;
37468
+ };
37469
+ /**
37470
+ * The scale the page applies to `element` through CSS transforms (`transform`
37471
+ * and the individual `scale` property) on it and its ancestors. Rotation and
37472
+ * translation do not change it.
37473
+ */
37474
+ declare function measureTransformScale(element: Element): {
37475
+ x: number;
37476
+ y: number;
37477
+ };
37439
37478
  /** Measure an element's {@link ThreeViewSize}. */
37440
37479
  declare function measureThreeViewSize(element: HTMLElement): ThreeViewSize;
37441
37480
  /** Whether two sizes would draw differently. */
@@ -55799,7 +55838,7 @@ export declare class AccountPageComponent {
55799
55838
  readonly accountAuth: import("@angular/core").InputSignal<AccountAuthConfig | undefined>;
55800
55839
  private readonly translate;
55801
55840
  protected readonly swatches: readonly string[];
55802
- protected readonly version = "4.24.0";
55841
+ protected readonly version = "4.24.2";
55803
55842
  protected readonly profile: import("@angular/core").WritableSignal<ViewerProfile>;
55804
55843
  protected readonly initial: import("@angular/core").Signal<string>;
55805
55844
  protected readonly usage: import("@angular/core").WritableSignal<LocalStorageUsageSummary | null>;
@@ -57488,6 +57527,11 @@ export declare class SmartArt3DRendererComponent {
57488
57527
  */
57489
57528
  readonly hitTargetStyle: import("@angular/core").Signal<CssStyleMap | undefined>;
57490
57529
  private readonly smartArtData;
57530
+ /** Resolved palette for the hover swatch bar, as on the 2D diagram. */
57531
+ protected readonly palette: import("@angular/core").Signal<string[]>;
57532
+ protected readonly hoveredNodeId: import("@angular/core").WritableSignal<string | null>;
57533
+ private readonly hoveredNodeRect;
57534
+ protected readonly styleBarStyle: import("@angular/core").Signal<Record<string, string> | null>;
57491
57535
  constructor();
57492
57536
  /**
57493
57537
  * Locate the SmartArt node at the click position within the invisible
@@ -57497,6 +57541,18 @@ export declare class SmartArt3DRendererComponent {
57497
57541
  * (`smartArtNodeAtPoint`).
57498
57542
  */
57499
57543
  onOverlayDblClick(event: MouseEvent): void;
57544
+ /**
57545
+ * Track the node under the pointer for the fill swatch bar. The overlay's
57546
+ * node groups take no pointer events, so the node is found by geometry.
57547
+ */
57548
+ onOverlayMouseMove(event: MouseEvent): void;
57549
+ /**
57550
+ * The overlay and the bar are siblings, so crossing from one to the other
57551
+ * fires `mouseleave` on the first; only a leave elsewhere ends the hover.
57552
+ */
57553
+ onHoverLeave(event: MouseEvent): void;
57554
+ /** Apply a fill colour to a node through the same commit path as a text edit. */
57555
+ handleChangeNodeStyle(nodeId: string, fill: string): void;
57500
57556
  /** Update the live draft text on each keystroke. */
57501
57557
  updateDraft(event: Event): void;
57502
57558
  /** Enter commits (via blur); Escape cancels. Propagation always stopped. */