ooxml-ui 0.31.0 → 1.0.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 (96) hide show
  1. package/README.md +14 -0
  2. package/custom-elements.json +10 -0
  3. package/dist/{chunk-RAZAJMHK.js → chunk-4QQASR5A.js} +2 -2
  4. package/dist/{chunk-HZ422LTR.js → chunk-BOX43CZD.js} +1 -0
  5. package/dist/{chunk-3GE2NHNG.js → chunk-FLHM5Q4O.js} +119 -81
  6. package/dist/{chunk-2QW4QE56.js → chunk-T3HB5LMH.js} +103 -68
  7. package/dist/controls.js +2 -2
  8. package/dist/docx/hard-break-command.d.ts +1 -3
  9. package/dist/docx/link-commands.d.ts +4 -15
  10. package/dist/docx/note-editor.d.ts +3 -2
  11. package/dist/docx/run-styles.d.ts +1 -1
  12. package/dist/docx/schema.d.ts +1 -1
  13. package/dist/docx/toggle-commands.d.ts +2 -8
  14. package/dist/docx.js +109 -302
  15. package/dist/form/gradient-direction-gallery.d.ts +19 -0
  16. package/dist/form/gradient-gallery-preview.d.ts +3 -0
  17. package/dist/form/gradient-preset-gallery.d.ts +16 -0
  18. package/dist/form/gradient-stop-track.d.ts +20 -0
  19. package/dist/form/number-range.d.ts +12 -0
  20. package/dist/icons.d.ts.map +1 -1
  21. package/dist/icons.js +1 -1
  22. package/dist/index.js +4 -4
  23. package/dist/menu/menu-button.d.ts +10 -0
  24. package/dist/menu/menu-button.d.ts.map +1 -1
  25. package/dist/pptx/{chart-3d-view-scene-IANLDFIE.mjs → chart-3d-view-scene-2KRQ5667.mjs} +2 -2
  26. package/dist/pptx/{chart-3d-view-scene-3DK5TUBZ.cjs → chart-3d-view-scene-36DMZWZ3.cjs} +37 -37
  27. package/dist/pptx/{chunk-C42ZL35K.mjs → chunk-ADOC5JLI.mjs} +1 -1
  28. package/dist/pptx/{chunk-QM4FGZG4.cjs → chunk-AIL3BNZS.cjs} +31 -131
  29. package/dist/pptx/{chunk-WLETAW3T.cjs → chunk-CJU4P5FT.cjs} +33 -13
  30. package/dist/pptx/{chunk-6SCK57RJ.cjs → chunk-FEFQTZDM.cjs} +158 -245
  31. package/dist/pptx/{chunk-EVGSFPUV.mjs → chunk-XWE5GSE7.mjs} +16 -109
  32. package/dist/pptx/{chunk-7JEMQW6R.mjs → chunk-YARCML7O.mjs} +11 -122
  33. package/dist/pptx/{chunk-OHE5UXST.cjs → chunk-YHA6XAB3.cjs} +1 -1
  34. package/dist/pptx/{chunk-X2F6PA2D.mjs → chunk-YOGDIDPB.mjs} +22 -3
  35. package/dist/pptx/dom/index.cjs +235 -235
  36. package/dist/pptx/dom/index.mjs +6 -6
  37. package/dist/pptx/export/html2canvas-clone.cjs +2 -2
  38. package/dist/pptx/export/html2canvas-clone.mjs +1 -1
  39. package/dist/pptx/index.cjs +2993 -2989
  40. package/dist/pptx/index.mjs +4 -4
  41. package/dist/pptx/render/chart-combo-stock.cjs +3 -3
  42. package/dist/pptx/render/chart-combo-stock.mjs +1 -1
  43. package/dist/pptx/render/chart-manual-layout.d.ts +2 -20
  44. package/dist/pptx/render/chart-manual-layout.d.ts.map +1 -1
  45. package/dist/pptx/render/chart-overlays.cjs +7 -7
  46. package/dist/pptx/render/chart-overlays.mjs +1 -1
  47. package/dist/pptx/render/chart-surface-treemap.cjs +4 -4
  48. package/dist/pptx/render/chart-surface-treemap.mjs +1 -1
  49. package/dist/pptx/render/chart-svg-def-types.d.ts +6 -1
  50. package/dist/pptx/render/chart-svg-def-types.d.ts.map +1 -1
  51. package/dist/pptx/render/chart-view-model-dom-helpers.d.ts +1 -1
  52. package/dist/pptx/render/chart-view-model-dom-helpers.d.ts.map +1 -1
  53. package/dist/pptx/render/chart-view-model.cjs +41 -41
  54. package/dist/pptx/render/chart-view-model.mjs +1 -1
  55. package/dist/pptx/render/chart-waterfall-map.cjs +6 -6
  56. package/dist/pptx/render/chart-waterfall-map.mjs +1 -1
  57. package/dist/pptx/render/element-interaction.d.ts +1 -1
  58. package/dist/pptx/render/element-interaction.d.ts.map +1 -1
  59. package/dist/pptx/render/gradient-picker.d.ts.map +1 -1
  60. package/dist/pptx/render/index.d.ts +1 -0
  61. package/dist/pptx/render/index.d.ts.map +1 -1
  62. package/dist/pptx/render/path-gradient-rect.d.ts +1 -75
  63. package/dist/pptx/render/path-gradient-rect.d.ts.map +1 -1
  64. package/dist/pptx/render/rotate-handle-placement.d.ts +1 -27
  65. package/dist/pptx/render/rotate-handle-placement.d.ts.map +1 -1
  66. package/dist/pptx/render/rotation-drag.d.ts +1 -7
  67. package/dist/pptx/render/rotation-drag.d.ts.map +1 -1
  68. package/dist/teams/app/files-panel.d.ts +8 -3
  69. package/dist/teams/app/teams-app.d.ts +1 -0
  70. package/dist/teams/app/teams-settings.d.ts +6 -0
  71. package/dist/teams.js +3 -3
  72. package/dist/visio/render-fill.d.ts +2 -1
  73. package/dist/visio/render-svg.d.ts +2 -0
  74. package/dist/visio/ribbon-action.d.ts +8 -1
  75. package/dist/visio/ribbon-parts.d.ts +2 -1
  76. package/dist/visio/ribbon-router.d.ts +4 -2
  77. package/dist/visio/viewer-commands.d.ts +3 -3
  78. package/dist/visio/viewer-draw-tool.d.ts +16 -6
  79. package/dist/visio/viewer-handle-events.d.ts +19 -0
  80. package/dist/visio/viewer-line-endpoints.d.ts +14 -0
  81. package/dist/visio/viewer-rotation-handle.d.ts +14 -0
  82. package/dist/visio/viewer-rotation-preview.d.ts +7 -0
  83. package/dist/visio.js +734 -88
  84. package/dist/xlsx/chart-area-pane.d.ts +9 -0
  85. package/dist/xlsx/chart-fill-binding.d.ts +23 -0
  86. package/dist/xlsx/chart-gradient-preview.d.ts +8 -0
  87. package/dist/xlsx/chart-series-fill.d.ts +2 -1
  88. package/dist/xlsx/chart-series-gradient-type.d.ts +9 -0
  89. package/dist/xlsx/chart-series-gradient.d.ts +8 -0
  90. package/dist/xlsx/chart-series-pane.d.ts +2 -1
  91. package/dist/xlsx/chart-series-range-preview.d.ts +7 -0
  92. package/dist/xlsx/chart-series-transparency.d.ts +2 -1
  93. package/dist/xlsx/grid/measure.d.ts +5 -0
  94. package/dist/xlsx/grid/styles.d.ts +1 -1
  95. package/dist/xlsx.js +962 -102
  96. package/package.json +2 -2
@@ -1,12 +1,19 @@
1
+ export type CanvasTool = 'pointer' | 'rectangle' | 'ellipse' | 'line';
1
2
  /** Every command the Visio ribbon, status bar or a shortcut can raise, as a `ribbon-action` event. */
2
3
  export type VisioRibbonAction = {
3
4
  type: 'history';
4
5
  key: 'undo' | 'redo';
5
6
  } | {
6
7
  type: 'tool';
7
- tool: 'pointer' | 'rectangle';
8
+ tool: CanvasTool;
8
9
  } | {
9
10
  type: 'delete';
11
+ } | {
12
+ type: 'rotate';
13
+ direction: 'left' | 'right';
14
+ } | {
15
+ type: 'flip';
16
+ axis: 'horizontal' | 'vertical';
10
17
  } | {
11
18
  type: 'pane';
12
19
  pane: 'shapes' | 'inspector';
@@ -20,6 +20,7 @@ export interface CommandSpec {
20
20
  pressed?: boolean;
21
21
  controls?: string;
22
22
  checked?: boolean;
23
+ items?: readonly CommandSpec[];
23
24
  }
24
25
  export interface MenuSpec extends CommandSpec {
25
26
  items: readonly CommandSpec[];
@@ -29,7 +30,7 @@ export interface MenuSpec extends CommandSpec {
29
30
  /** A shared `office-ui-button` in Visio's large, small or icon-only size. */
30
31
  export declare function command(doc: Document, spec: CommandSpec): RibbonCommand;
31
32
  /** A shared `office-ui-menu-button` (dropdown or split) with typed actions per item. */
32
- export declare function menu(doc: Document, spec: MenuSpec): RibbonCommand;
33
+ export declare function menu(doc: Document, spec: MenuSpec, submenu?: boolean): RibbonCommand;
33
34
  /** Office's three-row column of small commands, or a row with `horizontal`. */
34
35
  export declare function stack(doc: Document, children: readonly HTMLElement[], horizontal?: boolean): HTMLElement;
35
36
  /** A labelled ribbon group; `launcher` shows Visio's dialog launcher, disabled with a reason. */
@@ -1,11 +1,13 @@
1
1
  import type { ViewerController } from './controller.js';
2
- import type { VisioRibbonAction } from './ribbon-action.js';
2
+ import type { VisioRibbonAction, CanvasTool } from './ribbon-action.js';
3
3
  /** The controllers a ribbon action can reach. The element supplies each one. */
4
4
  export interface RibbonTargets {
5
5
  controller: ViewerController;
6
6
  history(key: 'undo' | 'redo'): void;
7
7
  deleteSelection(): void;
8
- setTool(tool: 'pointer' | 'rectangle'): void;
8
+ rotateSelection(direction: 'left' | 'right'): void;
9
+ flipSelection(axis: 'horizontal' | 'vertical'): void;
10
+ setTool(tool: CanvasTool): void;
9
11
  toggleGrid(): void;
10
12
  toggleRuler(): void;
11
13
  togglePanZoom(): void;
@@ -1,7 +1,7 @@
1
1
  import type { ViewerController, ViewerState } from './controller.js';
2
- import { type VisioRibbonAction } from './ribbon-action.js';
2
+ import { type VisioRibbonAction, type CanvasTool } from './ribbon-action.js';
3
3
  import type { Rulers } from './viewer-ruler.js';
4
- export type CanvasTool = 'pointer' | 'rectangle';
4
+ export type { CanvasTool } from './ribbon-action.js';
5
5
  interface CommandHost {
6
6
  root: ShadowRoot;
7
7
  viewport: HTMLElement;
@@ -14,6 +14,7 @@ interface CommandHost {
14
14
  togglePanZoom(): void;
15
15
  /** Transient command feedback for the status bar; document text is never interpreted as markup. */
16
16
  announce(message: string): void;
17
+ toolChanged?(): void;
17
18
  }
18
19
  /**
19
20
  * Visio command state (tool, grid, pending edits) and keyboard shortcuts. Ribbon controls emit
@@ -31,4 +32,3 @@ export declare class ViewerCommands {
31
32
  setTool(tool: CanvasTool): void;
32
33
  render(state: ViewerState): void;
33
34
  }
34
- export {};
@@ -1,9 +1,12 @@
1
1
  import type { VisioPage } from 'ooxml-core/visio';
2
+ import type { CanvasTool } from './ribbon-action.js';
2
3
  import type { ViewerController } from './controller.js';
3
- /** Next free numeric shape ID on the page tree. Core still rejects any collision. */
4
- export declare function nextShapeId(page: VisioPage): string;
4
+ export { visioNextShapeId as nextShapeId } from 'ooxml-core/visio/ui';
5
5
  /** Page inches with a top-left origin (SVG user space) from a client point. */
6
- export declare function pagePoint(svg: SVGSVGElement, page: VisioPage, event: Pick<MouseEvent, 'clientX' | 'clientY'>): {
6
+ export declare function pagePoint(svg: SVGSVGElement, page: VisioPage, event: Pick<MouseEvent, 'clientX' | 'clientY'>, options?: {
7
+ snap?: boolean;
8
+ bounded?: boolean;
9
+ }): {
7
10
  x: number;
8
11
  y: number;
9
12
  } | undefined;
@@ -18,14 +21,21 @@ export declare function insertRectangle(controller: ViewerController, page: Visi
18
21
  width: number;
19
22
  height: number;
20
23
  }): Promise<string>;
21
- /** Drag-to-draw rectangle tool. The preview is viewer-only; the shape is created by core. */
22
- export declare class RectangleDrawTool {
24
+ export declare function insertLine(controller: ViewerController, page: VisioPage, begin: {
25
+ x: number;
26
+ y: number;
27
+ }, end: {
28
+ x: number;
29
+ y: number;
30
+ }): Promise<string>;
31
+ /** Shared rectangle/line gesture lifecycle. Preview is DOM-only; core owns creation. */
32
+ export declare class ShapeDrawTool {
23
33
  #private;
24
34
  private readonly viewport;
25
35
  private readonly controller;
26
36
  private readonly options;
27
37
  constructor(viewport: HTMLElement, controller: ViewerController, options: {
28
- active(): boolean;
38
+ tool(): Exclude<CanvasTool, 'pointer'> | undefined;
29
39
  announce(message: string): void;
30
40
  });
31
41
  get drawing(): boolean;
@@ -0,0 +1,19 @@
1
+ import type { VisioDocument, VisioPage } from 'ooxml-core/visio';
2
+ import type { ViewerState } from './controller.js';
3
+ export interface HandleGestureSnapshot {
4
+ pointer: number;
5
+ svg: SVGSVGElement;
6
+ page: VisioPage;
7
+ document: VisioDocument;
8
+ shapeId: string;
9
+ }
10
+ /** Cancel previews when source, page, selection, tool or editing availability changes. */
11
+ export declare function handleGestureIsCurrent(drag: HandleGestureSnapshot, state: ViewerState, active: boolean): boolean;
12
+ /** Shared capture, cancellation, Escape and post-release click ownership for geometry handles. */
13
+ export declare function wireHandleEvents(viewport: HTMLElement, callbacks: {
14
+ pointer(): number | undefined;
15
+ start(event: PointerEvent): void;
16
+ move(event: PointerEvent): void;
17
+ finish(event: PointerEvent): Promise<void>;
18
+ cancel(): void;
19
+ }): () => void;
@@ -0,0 +1,14 @@
1
+ import type { ViewerController, ViewerState } from './controller.js';
2
+ /** A preview-only endpoint gesture; release commits one source-backed core transaction. */
3
+ export declare class ViewerLineEndpoints {
4
+ #private;
5
+ private readonly viewport;
6
+ private readonly controller;
7
+ private readonly options;
8
+ constructor(viewport: HTMLElement, controller: ViewerController, options: {
9
+ active(): boolean;
10
+ announce(message: string): void;
11
+ });
12
+ render(state: ViewerState): void;
13
+ wire(): () => void;
14
+ }
@@ -0,0 +1,14 @@
1
+ import type { ViewerController, ViewerState } from './controller.js';
2
+ /** A source-backed rotation gesture; previews never mutate the model or history. */
3
+ export declare class ViewerRotationHandle {
4
+ #private;
5
+ private readonly viewport;
6
+ private readonly controller;
7
+ private readonly options;
8
+ constructor(viewport: HTMLElement, controller: ViewerController, options: {
9
+ active(): boolean;
10
+ announce(message: string): void;
11
+ });
12
+ render(state: ViewerState): void;
13
+ wire(): () => void;
14
+ }
@@ -0,0 +1,7 @@
1
+ import type { VisioDocument, VisioPage, VisioShape } from 'ooxml-core/visio';
2
+ /** Render the temporary pose through the same geometry, paint, text and resource pipeline. */
3
+ export declare function createRotationPreview(model: VisioDocument, page: VisioPage, shape: VisioShape, source: SVGGElement): {
4
+ element: SVGGElement;
5
+ update(angle: number): void;
6
+ dispose(): void;
7
+ };