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
@@ -0,0 +1,19 @@
1
+ import { type ChartGradientFill } from 'ooxml-core/chart';
2
+ import { type RectGradientDirection } from 'ooxml-core/diagram';
3
+ import { type OfficeUiGallery } from '../ribbon/gallery.js';
4
+ interface DirectionOptions {
5
+ gradient: ChartGradientFill;
6
+ disabled: boolean;
7
+ label: string;
8
+ translate(label: string): string;
9
+ onPick(angle: number): void;
10
+ onRectPick?(direction: RectGradientDirection): void;
11
+ onPathPick?(direction: RectGradientDirection): void;
12
+ }
13
+ /** Shared Office gallery and chart painter provide previews, focus and popup behavior. */
14
+ export declare function createGradientDirectionGallery(doc: Document): {
15
+ element: OfficeUiGallery;
16
+ update: (options: DirectionOptions) => void;
17
+ close: () => void;
18
+ };
19
+ export {};
@@ -0,0 +1,3 @@
1
+ import { type ChartGradientFill } from 'ooxml-core/chart';
2
+ /** Shared chart paint supplies SVG thumbnails for Office gradient galleries. */
3
+ export declare function gradientGalleryPreview(id: string, fill: ChartGradientFill): string;
@@ -0,0 +1,16 @@
1
+ import { type DiagramFill } from 'ooxml-core/diagram';
2
+ import { type OfficeUiGallery } from '../ribbon/gallery.js';
3
+ interface PresetOptions {
4
+ fill: DiagramFill;
5
+ disabled: boolean;
6
+ label: string;
7
+ translate(label: string): string;
8
+ onPick(id: number): void;
9
+ }
10
+ /** Native preset paint with the shared Office popup and keyboard navigation. */
11
+ export declare function createGradientPresetGallery(doc: Document): {
12
+ element: OfficeUiGallery;
13
+ close: () => void;
14
+ update(options: PresetOptions): void;
15
+ };
16
+ export {};
@@ -0,0 +1,20 @@
1
+ export interface GradientStopTrackOptions {
2
+ stops: readonly {
3
+ position: number;
4
+ color: string;
5
+ }[];
6
+ selected: number;
7
+ disabled: boolean;
8
+ label: string;
9
+ stopLabel(index: number): string;
10
+ onSelect(index: number): void;
11
+ onMove?(index: number, position: number): void;
12
+ onPreview?(index: number, position: number | undefined): void;
13
+ }
14
+ /** Native buttons provide keyboard navigation and focus for the shared Office gradient strip. */
15
+ export declare function createGradientStopTrack(doc: Document): {
16
+ element: HTMLDivElement;
17
+ update: (options: GradientStopTrackOptions) => void;
18
+ cancel: () => void;
19
+ preview: (stops: GradientStopTrackOptions['stops']) => void;
20
+ };
@@ -0,0 +1,12 @@
1
+ interface NumberRangeOptions {
2
+ label(): string;
3
+ enabled?(): boolean;
4
+ onPreview?(value: number | undefined): void;
5
+ }
6
+ /** Pair a native range with a number field, committing once through the field's change handler. */
7
+ export declare function createNumberRange(input: HTMLInputElement, options: NumberRangeOptions): {
8
+ element: HTMLDivElement;
9
+ cancel: () => void;
10
+ refresh: () => void;
11
+ };
12
+ export {};
@@ -1 +1 @@
1
- {"version":3,"file":"icons.d.ts","sourceRoot":"","sources":["../src/icons.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,MAAM,WAAW,UAAU;IAC1B,CAAC,EAAE,MAAM,CAAC;IACV,+BAA+B;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB;AAmFD,4EAA4E;AAC5E,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,MAAM,GAAG,OAAO,CAK7E;AAED,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,CAE/E;AAED,wBAAgB,SAAS,IAAI,MAAM,EAAE,CAEpC;AAID,wBAAgB,aAAa,CAAC,GAAG,EAAE,QAAQ,GAAG,aAAa,CAI1D;AAED,0FAA0F;AAC1F,wBAAgB,SAAS,CAAC,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAmBnF"}
1
+ {"version":3,"file":"icons.d.ts","sourceRoot":"","sources":["../src/icons.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,MAAM,WAAW,UAAU;IAC1B,CAAC,EAAE,MAAM,CAAC;IACV,+BAA+B;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB;AAoFD,4EAA4E;AAC5E,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,MAAM,GAAG,OAAO,CAK7E;AAED,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,CAE/E;AAED,wBAAgB,SAAS,IAAI,MAAM,EAAE,CAEpC;AAID,wBAAgB,aAAa,CAAC,GAAG,EAAE,QAAQ,GAAG,aAAa,CAI1D;AAED,0FAA0F;AAC1F,wBAAgB,SAAS,CAAC,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAmBnF"}
package/dist/icons.js CHANGED
@@ -1 +1 @@
1
- export { createIconSvg, getIcon, listIcons, paintIcon, registerIcon } from './chunk-HZ422LTR.js';
1
+ export { createIconSvg, getIcon, listIcons, paintIcon, registerIcon } from './chunk-BOX43CZD.js';
package/dist/index.js CHANGED
@@ -1,10 +1,10 @@
1
- export { OFFICE_UI_TAGS, registerOfficeUi } from './chunk-RAZAJMHK.js';
1
+ export { OFFICE_UI_TAGS, registerOfficeUi } from './chunk-4QQASR5A.js';
2
2
  export { OfficeUiSmartArt, defineSmartArt, renderDiagramDrawing } from './chunk-XDUYS4KK.js';
3
- export { EMOJI, OfficeUiAppRail, OfficeUiAvatar, OfficeUiCallControls, OfficeUiCallGrid, OfficeUiChannelList, OfficeUiChatComposer, OfficeUiChatList, OfficeUiPrejoin, QUICK_REACTIONS, TEAMS_TAGS, TeamsApp, TeamsChannelTab, TeamsContentPreview, TeamsController, TeamsElement, TeamsFilesPanel, TeamsSettings, applyTeamsProps, colorFor, createTeams, dayLabel, defineAppRail, defineAvatar, defineCallControls, defineCallGrid, defineChannelList, defineChatComposer, defineChatList, definePrejoin, defineTeamsApp, defineTeamsChannelTab, defineTeamsContentPreview, defineTeamsFilesPanel, defineTeamsSettings, formatElapsed, formatSize, formatTime, icon, listenTeamsEvents, loadConfig, loadIdentity, parseIceLines, registerTeams, safeStorage, saveConfig, saveIdentity, withStyles } from './chunk-3GE2NHNG.js';
3
+ export { EMOJI, OfficeUiAppRail, OfficeUiAvatar, OfficeUiCallControls, OfficeUiCallGrid, OfficeUiChannelList, OfficeUiChatComposer, OfficeUiChatList, OfficeUiPrejoin, QUICK_REACTIONS, TEAMS_TAGS, TeamsApp, TeamsChannelTab, TeamsContentPreview, TeamsController, TeamsElement, TeamsFilesPanel, TeamsSettings, applyTeamsProps, colorFor, createTeams, dayLabel, defineAppRail, defineAvatar, defineCallControls, defineCallGrid, defineChannelList, defineChatComposer, defineChatList, definePrejoin, defineTeamsApp, defineTeamsChannelTab, defineTeamsContentPreview, defineTeamsFilesPanel, defineTeamsSettings, formatElapsed, formatSize, formatTime, icon, listenTeamsEvents, loadConfig, loadIdentity, parseIceLines, registerTeams, safeStorage, saveConfig, saveIdentity, withStyles } from './chunk-FLHM5Q4O.js';
4
4
  export { TeamsPresentationPreview, defineTeamsPresentationPreview } from './chunk-SNV6YKPC.js';
5
5
  export { THEME_CSS, THEME_STYLE_ID, installOfficeUiTheme, shadcnBridge, themeBridge } from './chunk-X7RINDJQ.js';
6
- export { CONTROL_DEFINERS, DEFAULT_OFFICE_PROFILE, EMPTY_MENU_STATE, OFFICE_AVATAR_SWATCHES, OFFICE_COLOR_SWATCHES, OFFICE_COLOR_SWATCH_HEXES, OFFICE_PROFILE_STORAGE_KEY, OFFICE_TITLE_BAR_SEARCH_LIMIT, OFFICE_TOAST_VISIBLE_LIMIT, assignKeyTips, attachKeyTips, clampFlyoutPosition, clampOptionNumber, clearOfficeProfile, createRibbonOverflow, defineAccount, defineBackstage, defineButton, defineCheckbox, defineCommandSearch, defineContextMenu, defineDialog, defineDialogFooter, defineFindBar, defineGallery, defineIcon, defineMenuButton, defineMenuItem, defineMenuSeparator, defineOptionsDialog, definePasteOptions, definePrintPreview, defineRadio, defineReadOnlyBanner, defineRibbon, defineRibbonGroup, defineRibbonSection, defineRibbonStack, defineRibbonToggle, defineRuler, defineSearchField, defineSelect, defineStatusBar, defineStatusItem, defineSwitch, defineTabStrip, defineTitleBar, defineToasts, defineToolbar, defineZoomSlider, glyph, nextEnabledIndex, parseSvgPreview, profileInitials, readOfficeProfile, registerControls, rulerDivisions, runKeyTips, sanitizeOfficeProfile, typeAheadIndex, writeOfficeProfile } from './chunk-2QW4QE56.js';
7
- export { createIconSvg, getIcon, listIcons, paintIcon, registerIcon } from './chunk-HZ422LTR.js';
6
+ export { CONTROL_DEFINERS, DEFAULT_OFFICE_PROFILE, EMPTY_MENU_STATE, OFFICE_AVATAR_SWATCHES, OFFICE_COLOR_SWATCHES, OFFICE_COLOR_SWATCH_HEXES, OFFICE_PROFILE_STORAGE_KEY, OFFICE_TITLE_BAR_SEARCH_LIMIT, OFFICE_TOAST_VISIBLE_LIMIT, assignKeyTips, attachKeyTips, clampFlyoutPosition, clampOptionNumber, clearOfficeProfile, createRibbonOverflow, defineAccount, defineBackstage, defineButton, defineCheckbox, defineCommandSearch, defineContextMenu, defineDialog, defineDialogFooter, defineFindBar, defineGallery, defineIcon, defineMenuButton, defineMenuItem, defineMenuSeparator, defineOptionsDialog, definePasteOptions, definePrintPreview, defineRadio, defineReadOnlyBanner, defineRibbon, defineRibbonGroup, defineRibbonSection, defineRibbonStack, defineRibbonToggle, defineRuler, defineSearchField, defineSelect, defineStatusBar, defineStatusItem, defineSwitch, defineTabStrip, defineTitleBar, defineToasts, defineToolbar, defineZoomSlider, glyph, nextEnabledIndex, parseSvgPreview, profileInitials, readOfficeProfile, registerControls, rulerDivisions, runKeyTips, sanitizeOfficeProfile, typeAheadIndex, writeOfficeProfile } from './chunk-T3HB5LMH.js';
7
+ export { createIconSvg, getIcon, listIcons, paintIcon, registerIcon } from './chunk-BOX43CZD.js';
8
8
  export { OfficeUiPresence, definePresence, initialsOf, participantsFromAwareness } from './chunk-OXKWNNNJ.js';
9
9
  export { CONTRACT_REVISION, OfficeElement, controlStyles, flag, readFlag, triState, valueOn, withTokens } from './chunk-ZV2Z4IWH.js';
10
10
  export { COMPACT, FOCUS_RING, OFFICE_TOKENS, TOUCH, tok } from './chunk-JFJXBYRD.js';
@@ -32,6 +32,14 @@ export declare class OfficeUiMenuButton extends OfficeElement {
32
32
  toAttribute: (value: unknown) => string | null;
33
33
  };
34
34
  };
35
+ submenu: {
36
+ type: BooleanConstructor;
37
+ reflect: true;
38
+ converter: {
39
+ fromAttribute: (value: string | null) => boolean;
40
+ toAttribute: (value: unknown) => string | null;
41
+ };
42
+ };
35
43
  iconOnly: {
36
44
  type: BooleanConstructor;
37
45
  reflect: true;
@@ -50,6 +58,7 @@ export declare class OfficeUiMenuButton extends OfficeElement {
50
58
  command: string | null;
51
59
  keyshortcuts: string | null;
52
60
  disabled: boolean;
61
+ submenu: boolean;
53
62
  iconOnly: boolean;
54
63
  open: boolean;
55
64
  private outside;
@@ -62,6 +71,7 @@ export declare class OfficeUiMenuButton extends OfficeElement {
62
71
  private get split();
63
72
  private get nativePopover();
64
73
  private items;
74
+ focus(options?: FocusOptions): void;
65
75
  private toggle;
66
76
  private show;
67
77
  /** Keep the open menu inside the viewport: flip left of the trigger's right edge if needed. */
@@ -1 +1 @@
1
- {"version":3,"file":"menu-button.d.ts","sourceRoot":"","sources":["../../src/menu/menu-button.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAuB,MAAM,SAAS,CAAC;AAQ7D;;;;;;;;GAQG;AACH,qBAAa,kBAAmB,SAAQ,aAAa;IACpD,OAAgB,MAAM,4BAAsB;IAC5C,OAAgB,UAAU;;YAChB,IAAI;;;YACL,IAAI;;;YACD,IAAI;YAAU,OAAO;;;YAChB,IAAI;;;;;;;;;;;;;;;;;;;;YAGZ,KAAK;;MACZ;IACM,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,OAAO,CAAuC;IAEtD,0FAA0F;IAC1F,WAAoB,kBAAkB,IAAI,MAAM,EAAE,CAEjD;IAED,cAaC;IAEQ,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAG9F;IAEQ,oBAAoB,IAAI,IAAI,CAGpC;IAED,OAAO,KAAK,KAAK,GAEhB;IACD,OAAO,KAAK,KAAK,GAEhB;IACD,OAAO,KAAK,aAAa,GAExB;IAED,OAAO,CAAC,KAAK;IAIb,OAAO,CAAC,MAAM;IAKd,OAAO,CAAC,IAAI;IAmBZ,+FAA+F;IAC/F,OAAO,CAAC,KAAK;IAeb,OAAO,CAAC,IAAI;IAeZ,OAAO,CAAC,MAAM;IAMd,OAAO,CAAC,MAAM;IAMd,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,SAAS;IAmBjB,UAAmB,UAAU,IAAI,IAAI,CAEpC;IAED,UAAmB,MAAM,oCAkDxB;CACD;AAED,eAAO,MAAM,gBAAgB,+BAA6D,CAAC"}
1
+ {"version":3,"file":"menu-button.d.ts","sourceRoot":"","sources":["../../src/menu/menu-button.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAuB,MAAM,SAAS,CAAC;AAc7D;;;;;;;;GAQG;AACH,qBAAa,kBAAmB,SAAQ,aAAa;IACpD,OAAgB,MAAM,4BAAsB;IAC5C,OAAgB,UAAU;;YAChB,IAAI;;;YACL,IAAI;;;YACD,IAAI;YAAU,OAAO;;;YAChB,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAIZ,KAAK;;MACZ;IACM,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,OAAO,CAAuC;IAEtD,0FAA0F;IAC1F,WAAoB,kBAAkB,IAAI,MAAM,EAAE,CAEjD;IAED,cAcC;IAEQ,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAG9F;IAEQ,oBAAoB,IAAI,IAAI,CAGpC;IAED,OAAO,KAAK,KAAK,GAEhB;IACD,OAAO,KAAK,KAAK,GAEhB;IACD,OAAO,KAAK,aAAa,GAExB;IAED,OAAO,CAAC,KAAK;IAWJ,KAAK,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,IAAI,CAE3C;IAED,OAAO,CAAC,MAAM;IASd,OAAO,CAAC,IAAI;IA2BZ,+FAA+F;IAC/F,OAAO,CAAC,KAAK;IAoBb,OAAO,CAAC,IAAI;IAeZ,OAAO,CAAC,MAAM;IAOd,OAAO,CAAC,MAAM;IAMd,OAAO,CAAC,YAAY;IAWpB,OAAO,CAAC,SAAS;IAqBjB,UAAmB,UAAU,IAAI,IAAI,CAEpC;IAED,UAAmB,MAAM,oCAqDxB;CACD;AAED,eAAO,MAAM,gBAAgB,+BAA6D,CAAC"}
@@ -1,5 +1,5 @@
1
- import { widenPieViewModel, buildPerspCamera, createSvgEl, appendChartLegendSvg, renderChartLineSvg, renderChartTextSvg, perspBoxMatrix, pieRimPoint, perspScreenToPlaneY, resolvePieSliceShareValue, perspToScreen, roundDragValue, buildBarChart3DHoverTooltip, isChartInteractionArmed, computePieChartLayout, obliqueBarTaper } from './chunk-X2F6PA2D.mjs';
2
- import { DEFAULT_PALETTE, shade } from './chunk-7JEMQW6R.mjs';
1
+ import { widenPieViewModel, buildPerspCamera, createSvgEl, appendChartLegendSvg, renderChartLineSvg, renderChartTextSvg, perspBoxMatrix, pieRimPoint, perspScreenToPlaneY, resolvePieSliceShareValue, perspToScreen, roundDragValue, buildBarChart3DHoverTooltip, isChartInteractionArmed, computePieChartLayout, obliqueBarTaper } from './chunk-YOGDIDPB.mjs';
2
+ import { DEFAULT_PALETTE, shade } from './chunk-YARCML7O.mjs';
3
3
 
4
4
  // src/pptx/render/chart-3d-shading.ts
5
5
  var FACE_SHADE_AMOUNT = {
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var chunkWLETAW3T_cjs = require('./chunk-WLETAW3T.cjs');
4
- var chunkQM4FGZG4_cjs = require('./chunk-QM4FGZG4.cjs');
3
+ var chunkCJU4P5FT_cjs = require('./chunk-CJU4P5FT.cjs');
4
+ var chunkAIL3BNZS_cjs = require('./chunk-AIL3BNZS.cjs');
5
5
 
6
6
  // src/pptx/render/chart-3d-shading.ts
7
7
  var FACE_SHADE_AMOUNT = {
@@ -14,7 +14,7 @@ var FACE_SHADE_AMOUNT = {
14
14
  };
15
15
  function shadeChart3DFace(baseColor, face) {
16
16
  const amount = FACE_SHADE_AMOUNT[face];
17
- return amount === 0 ? baseColor : chunkQM4FGZG4_cjs.shade(baseColor, amount);
17
+ return amount === 0 ? baseColor : chunkAIL3BNZS_cjs.shade(baseColor, amount);
18
18
  }
19
19
  function buildChart3DBoxFaceColors(baseColor) {
20
20
  return [
@@ -203,7 +203,7 @@ function buildChart3DBarMeshes(three, layout, svgWidth, svgHeight) {
203
203
  // src/pptx/render/chart-3d-chrome-overlay.ts
204
204
  function renderChart3DChromeOverlaySvg(doc, source, box) {
205
205
  const vm = box ? withBoxChromePositions(source) : source;
206
- const svg = chunkWLETAW3T_cjs.createSvgEl(doc, "svg", {
206
+ const svg = chunkCJU4P5FT_cjs.createSvgEl(doc, "svg", {
207
207
  class: "pptxv-chart-3d-chrome",
208
208
  viewBox: `0 0 ${vm.svgWidth} ${vm.svgHeight}`,
209
209
  preserveAspectRatio: "none"
@@ -216,7 +216,7 @@ function renderChart3DChromeOverlaySvg(doc, source, box) {
216
216
  svg.style.setProperty("pointer-events", "none");
217
217
  if (vm.areaFill) {
218
218
  svg.appendChild(
219
- chunkWLETAW3T_cjs.createSvgEl(doc, "rect", {
219
+ chunkCJU4P5FT_cjs.createSvgEl(doc, "rect", {
220
220
  x: 0,
221
221
  y: 0,
222
222
  width: vm.svgWidth,
@@ -227,7 +227,7 @@ function renderChart3DChromeOverlaySvg(doc, source, box) {
227
227
  );
228
228
  }
229
229
  if (vm.title) {
230
- const title = chunkWLETAW3T_cjs.createSvgEl(doc, "text", {
230
+ const title = chunkCJU4P5FT_cjs.createSvgEl(doc, "text", {
231
231
  x: vm.titleX,
232
232
  y: vm.titleY,
233
233
  "text-anchor": "middle",
@@ -239,7 +239,7 @@ function renderChart3DChromeOverlaySvg(doc, source, box) {
239
239
  });
240
240
  if (vm.titleRunSpans && vm.titleRunSpans.length > 0) {
241
241
  for (const run of vm.titleRunSpans) {
242
- const tspan = chunkWLETAW3T_cjs.createSvgEl(doc, "tspan", {
242
+ const tspan = chunkCJU4P5FT_cjs.createSvgEl(doc, "tspan", {
243
243
  "font-size": run.fontSize,
244
244
  "font-weight": run.fontWeight,
245
245
  "font-style": run.fontStyle,
@@ -258,28 +258,28 @@ function renderChart3DChromeOverlaySvg(doc, source, box) {
258
258
  appendBoxLabels(doc, svg, vm, box.labels);
259
259
  const legend = box.legend ?? vm.legend.map((item) => ({ ...item, lineSwatch: void 0 }));
260
260
  const legendVm = { ...vm, legend: box.reverseLegend ? legend.reverse() : legend };
261
- chunkWLETAW3T_cjs.appendChartLegendSvg(doc, svg, legendVm);
261
+ chunkCJU4P5FT_cjs.appendChartLegendSvg(doc, svg, legendVm);
262
262
  return svg;
263
263
  }
264
264
  for (const gl of vm.gridlines) {
265
- svg.appendChild(chunkWLETAW3T_cjs.renderChartLineSvg(doc, gl));
265
+ svg.appendChild(chunkCJU4P5FT_cjs.renderChartLineSvg(doc, gl));
266
266
  }
267
267
  for (const gl of vm.secondaryGridlines ?? []) {
268
- svg.appendChild(chunkWLETAW3T_cjs.renderChartLineSvg(doc, gl));
268
+ svg.appendChild(chunkCJU4P5FT_cjs.renderChartLineSvg(doc, gl));
269
269
  }
270
270
  for (const lbl of vm.axisLabels) {
271
- svg.appendChild(chunkWLETAW3T_cjs.renderChartTextSvg(doc, lbl));
271
+ svg.appendChild(chunkCJU4P5FT_cjs.renderChartTextSvg(doc, lbl));
272
272
  }
273
273
  for (const lbl of vm.secondaryAxisLabels ?? []) {
274
- svg.appendChild(chunkWLETAW3T_cjs.renderChartTextSvg(doc, lbl));
274
+ svg.appendChild(chunkCJU4P5FT_cjs.renderChartTextSvg(doc, lbl));
275
275
  }
276
276
  if (vm.zeroLine) {
277
- svg.appendChild(chunkWLETAW3T_cjs.renderChartLineSvg(doc, vm.zeroLine));
277
+ svg.appendChild(chunkCJU4P5FT_cjs.renderChartLineSvg(doc, vm.zeroLine));
278
278
  }
279
279
  for (const lbl of vm.categoryLabels) {
280
- svg.appendChild(chunkWLETAW3T_cjs.renderChartTextSvg(doc, lbl));
280
+ svg.appendChild(chunkCJU4P5FT_cjs.renderChartTextSvg(doc, lbl));
281
281
  }
282
- chunkWLETAW3T_cjs.appendChartLegendSvg(doc, svg, vm);
282
+ chunkCJU4P5FT_cjs.appendChartLegendSvg(doc, svg, vm);
283
283
  return svg;
284
284
  }
285
285
  var PT = 4 / 3;
@@ -298,7 +298,7 @@ function appendBoxLabels(doc, svg, vm, labels) {
298
298
  const style = vm.axisLabels[0];
299
299
  for (const label of labels) {
300
300
  svg.appendChild(
301
- chunkWLETAW3T_cjs.renderChartTextSvg(doc, {
301
+ chunkCJU4P5FT_cjs.renderChartTextSvg(doc, {
302
302
  kind: "text",
303
303
  x: label.x,
304
304
  y: label.y,
@@ -368,7 +368,7 @@ function attachChart3DMarkInteraction(options) {
368
368
  }
369
369
  const point = pointAt(event.clientX, event.clientY);
370
370
  const value = point ? adapter.valueOf(point) : void 0;
371
- const tooltip = point && value !== void 0 ? chunkWLETAW3T_cjs.buildBarChart3DHoverTooltip(
371
+ const tooltip = point && value !== void 0 ? chunkCJU4P5FT_cjs.buildBarChart3DHoverTooltip(
372
372
  { seriesIndex: point.seriesIndex, categoryIndex: point.pointIndex, value },
373
373
  {
374
374
  categoryLabels: options.categoryLabels,
@@ -386,7 +386,7 @@ function attachChart3DMarkInteraction(options) {
386
386
  return;
387
387
  }
388
388
  const point = pointAt(event.clientX, event.clientY);
389
- const armed = point !== null && chunkWLETAW3T_cjs.isChartInteractionArmed(target);
389
+ const armed = point !== null && chunkCJU4P5FT_cjs.isChartInteractionArmed(target);
390
390
  if (armed) {
391
391
  event.stopPropagation();
392
392
  }
@@ -462,7 +462,7 @@ function obliqueDragValue(layout, startValue, dx, dy) {
462
462
  const along = layout.horizontal ? dx : -dy;
463
463
  const raw = startValue + along / layout.valueScale;
464
464
  const span = layout.range.max - layout.range.min;
465
- return chunkWLETAW3T_cjs.roundDragValue(raw, { min: layout.range.min, max: layout.range.max, span });
465
+ return chunkCJU4P5FT_cjs.roundDragValue(raw, { min: layout.range.min, max: layout.range.max, span });
466
466
  }
467
467
  function obliqueDraggedExtent(layout, value) {
468
468
  const { min, max } = layout.range;
@@ -475,7 +475,7 @@ function obliqueDraggedExtent(layout, value) {
475
475
  function obliqueBarAtValue(layout, bar, value) {
476
476
  const { from, length } = obliqueDraggedExtent(layout, value);
477
477
  const extent = (layout.range.max - layout.range.min) * layout.valueScale;
478
- const taper = chunkWLETAW3T_cjs.obliqueBarTaper(bar.shape, from, from + length, extent, value);
478
+ const taper = chunkCJU4P5FT_cjs.obliqueBarTaper(bar.shape, from, from + length, extent, value);
479
479
  return layout.horizontal ? { ...bar, x: from, w: length, value, taper } : { ...bar, y: from, h: length, value, taper };
480
480
  }
481
481
 
@@ -621,7 +621,7 @@ function buildPerspBarPrisms(chartData, layout, override) {
621
621
  z0,
622
622
  z1: z0 + depth,
623
623
  shape,
624
- taper: chunkWLETAW3T_cjs.obliqueBarTaper(
624
+ taper: chunkCJU4P5FT_cjs.obliqueBarTaper(
625
625
  shape,
626
626
  v0,
627
627
  v1,
@@ -816,7 +816,7 @@ function buildPerspGridlines(three, layout) {
816
816
  function buildPerspMeshes(three, layout, prisms) {
817
817
  const group = new three.Group();
818
818
  group.matrixAutoUpdate = false;
819
- group.matrix.copy(chunkWLETAW3T_cjs.perspBoxMatrix(three, layout.view));
819
+ group.matrix.copy(chunkCJU4P5FT_cjs.perspBoxMatrix(three, layout.view));
820
820
  const gridlines = buildPerspGridlines(three, layout);
821
821
  group.add(gridlines);
822
822
  const material = new three.MeshBasicMaterial({ vertexColors: true, side: three.DoubleSide });
@@ -871,7 +871,7 @@ function surfaceBands(chartData, range, palette) {
871
871
  const fmt = chartData.bandFmts?.find((b) => b.index === i)?.spPr;
872
872
  const cycle = palette.length > 0 ? palette : ["#4472C4"];
873
873
  const base = cycle[i % cycle.length];
874
- const fallback = Math.floor(i / cycle.length) % 2 === 1 ? chunkQM4FGZG4_cjs.shade(base, 0.4) : base;
874
+ const fallback = Math.floor(i / cycle.length) % 2 === 1 ? chunkAIL3BNZS_cjs.shade(base, 0.4) : base;
875
875
  return {
876
876
  label: `${formatEdge(lo)}-${formatEdge(edges[i + 1])}`,
877
877
  color: fmt?.fillColor ?? fmt?.strokeColor ?? fallback
@@ -1055,7 +1055,7 @@ function disposeObject(object) {
1055
1055
  function buildSurfaceMarks(three, chartData, layout, palette) {
1056
1056
  const group = new three.Group();
1057
1057
  group.matrixAutoUpdate = false;
1058
- group.matrix.copy(chunkWLETAW3T_cjs.perspBoxMatrix(three, layout.view));
1058
+ group.matrix.copy(chunkCJU4P5FT_cjs.perspBoxMatrix(three, layout.view));
1059
1059
  const gridlines = buildPerspGridlines(three, layout);
1060
1060
  group.add(gridlines);
1061
1061
  let visual = buildVisual(three, chartData, layout, palette);
@@ -1195,8 +1195,8 @@ function surfaceLegend(chartData, layout, palette, background, textStyle) {
1195
1195
  function mountPerspChartView(input, ctx) {
1196
1196
  const three = ctx.three;
1197
1197
  const { vm, layout, chartData } = input;
1198
- const palette = chartData.colorPalette?.length ? chartData.colorPalette : chunkQM4FGZG4_cjs.DEFAULT_PALETTE;
1199
- const camera = chunkWLETAW3T_cjs.buildPerspCamera(three, layout.view, vm.svgWidth, vm.svgHeight);
1198
+ const palette = chartData.colorPalette?.length ? chartData.colorPalette : chunkAIL3BNZS_cjs.DEFAULT_PALETTE;
1199
+ const camera = chunkCJU4P5FT_cjs.buildPerspCamera(three, layout.view, vm.svgWidth, vm.svgHeight);
1200
1200
  const scene = new three.Scene();
1201
1201
  const marks = buildPerspMarkSet(three, chartData, layout, palette);
1202
1202
  scene.add(marks.group);
@@ -1245,15 +1245,15 @@ function mountPerspChartView(input, ctx) {
1245
1245
  const a = marks.anchor(point, start);
1246
1246
  const step = unit * layout.valueScale;
1247
1247
  const b = layout.horizontal ? [a[0] + step, a[1], a[2]] : [a[0], a[1] + step, a[2]];
1248
- const s0 = chunkWLETAW3T_cjs.perspToScreen(layout.view, a);
1249
- const s1 = chunkWLETAW3T_cjs.perspToScreen(layout.view, b);
1248
+ const s0 = chunkCJU4P5FT_cjs.perspToScreen(layout.view, a);
1249
+ const s1 = chunkCJU4P5FT_cjs.perspToScreen(layout.view, b);
1250
1250
  const ux = (s1.x - s0.x) / unit;
1251
1251
  const uy = (s1.y - s0.y) / unit;
1252
1252
  const len2 = ux * ux + uy * uy || 1;
1253
1253
  const span = layout.range.max - layout.range.min;
1254
1254
  return {
1255
1255
  preview(dx, dy) {
1256
- const value = chunkWLETAW3T_cjs.roundDragValue(start + (dx * ux + dy * uy) / len2, {
1256
+ const value = chunkCJU4P5FT_cjs.roundDragValue(start + (dx * ux + dy * uy) / len2, {
1257
1257
  min: layout.range.min,
1258
1258
  max: layout.range.max,
1259
1259
  span
@@ -1341,7 +1341,7 @@ function sliceBuffers(three, layout, slice) {
1341
1341
  const steps = Math.max(2, Math.ceil(span / (Math.PI * 2) * SEGMENTS_PER_TURN));
1342
1342
  const angles = Array.from({ length: steps + 1 }, (_, i) => slice.startAngle + span * i / steps);
1343
1343
  const rim = (a, y) => {
1344
- const p = chunkWLETAW3T_cjs.pieRimPoint(cx, cz, r, a);
1344
+ const p = chunkCJU4P5FT_cjs.pieRimPoint(cx, cz, r, a);
1345
1345
  return [p.x, y, p.z];
1346
1346
  };
1347
1347
  const radial = (a) => [Math.sin(a), 0, Math.cos(a)];
@@ -1385,7 +1385,7 @@ function sliceBuffers(three, layout, slice) {
1385
1385
  function buildPieMarks(three, layout) {
1386
1386
  const group = new three.Group();
1387
1387
  group.matrixAutoUpdate = false;
1388
- group.matrix.copy(chunkWLETAW3T_cjs.perspBoxMatrix(three, layout.view));
1388
+ group.matrix.copy(chunkCJU4P5FT_cjs.perspBoxMatrix(three, layout.view));
1389
1389
  const material = new three.MeshBasicMaterial({
1390
1390
  vertexColors: true,
1391
1391
  side: three.DoubleSide,
@@ -1449,12 +1449,12 @@ function slicesWith(input, pointIndex, value) {
1449
1449
  ...input.element,
1450
1450
  chartData: { ...input.chartData, series }
1451
1451
  };
1452
- return chunkWLETAW3T_cjs.computePieChartLayout(element, input.vm)?.slices ?? input.layout.slices;
1452
+ return chunkCJU4P5FT_cjs.computePieChartLayout(element, input.vm)?.slices ?? input.layout.slices;
1453
1453
  }
1454
1454
  function mountPieChartView(input, ctx) {
1455
1455
  const three = ctx.three;
1456
1456
  const { vm, layout, chartData } = input;
1457
- const camera = chunkWLETAW3T_cjs.buildPerspCamera(three, layout.view, vm.svgWidth, vm.svgHeight);
1457
+ const camera = chunkCJU4P5FT_cjs.buildPerspCamera(three, layout.view, vm.svgWidth, vm.svgHeight);
1458
1458
  const scene = new three.Scene();
1459
1459
  const marks = buildPieMarks(three, layout);
1460
1460
  scene.add(marks.group);
@@ -1495,7 +1495,7 @@ function mountPieChartView(input, ctx) {
1495
1495
  const start = values();
1496
1496
  return {
1497
1497
  preview(_dx, _dy, at) {
1498
- const hit = chunkWLETAW3T_cjs.perspScreenToPlaneY(layout.view, at.x, at.y, layout.center.y);
1498
+ const hit = chunkCJU4P5FT_cjs.perspScreenToPlaneY(layout.view, at.x, at.y, layout.center.y);
1499
1499
  if (!hit) {
1500
1500
  return start[point.pointIndex];
1501
1501
  }
@@ -1503,7 +1503,7 @@ function mountPieChartView(input, ctx) {
1503
1503
  hit.x - layout.center.x - slice.offset.x,
1504
1504
  hit.z - layout.center.z - slice.offset.z
1505
1505
  );
1506
- const value = chunkWLETAW3T_cjs.resolvePieSliceShareValue(
1506
+ const value = chunkCJU4P5FT_cjs.resolvePieSliceShareValue(
1507
1507
  angle,
1508
1508
  slice.startAngle,
1509
1509
  start,
@@ -1519,7 +1519,7 @@ function mountPieChartView(input, ctx) {
1519
1519
  marker.visible = slice !== void 0;
1520
1520
  if (slice) {
1521
1521
  const mid = (slice.startAngle + slice.endAngle) / 2;
1522
- const p = chunkWLETAW3T_cjs.pieRimPoint(
1522
+ const p = chunkCJU4P5FT_cjs.pieRimPoint(
1523
1523
  layout.center.x + slice.offset.x,
1524
1524
  layout.center.z + slice.offset.z,
1525
1525
  layout.radius * 0.6,
@@ -1584,7 +1584,7 @@ async function mountChart3DView(spec, ctx) {
1584
1584
  return mountPieChartView(
1585
1585
  {
1586
1586
  element: spec.element,
1587
- vm: chunkWLETAW3T_cjs.widenPieViewModel(spec.vm, spec.element),
1587
+ vm: chunkCJU4P5FT_cjs.widenPieViewModel(spec.vm, spec.element),
1588
1588
  layout: spec.geometry.layout,
1589
1589
  chartData: chartData2,
1590
1590
  categoryLabels: spec.categoryLabels
@@ -30,7 +30,7 @@ async function loadChart3DThree() {
30
30
 
31
31
  // src/pptx/three-view/scene-registry.ts
32
32
  var loaders = {
33
- chart: async () => (await import('./chart-3d-view-scene-IANLDFIE.mjs')).mountChart3DView,
33
+ chart: async () => (await import('./chart-3d-view-scene-2KRQ5667.mjs')).mountChart3DView,
34
34
  smartart: async () => (await import('./view-scene-GHBN7QMR.mjs')).mountSmartArt3DView
35
35
  };
36
36
  async function loadThreeViewScene(kind) {