pptx-react-viewer 4.56.1 → 4.57.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 (42) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/dist/{chunk-3CN33VMC.mjs → chunk-7NWM7HWP.mjs} +5 -3
  3. package/dist/chunk-7NWM7HWP.mjs.br +0 -0
  4. package/dist/{chunk-3CN33VMC.mjs.gz → chunk-7NWM7HWP.mjs.gz} +0 -0
  5. package/dist/{chunk-PAJZXF2Q.js → chunk-M52H5M5R.js} +123 -121
  6. package/dist/chunk-M52H5M5R.js.br +0 -0
  7. package/dist/chunk-M52H5M5R.js.gz +0 -0
  8. package/dist/{chunk-UMGVFMAW.mjs → chunk-MO4FI3EX.mjs} +27 -13
  9. package/dist/chunk-MO4FI3EX.mjs.br +0 -0
  10. package/dist/chunk-MO4FI3EX.mjs.gz +0 -0
  11. package/dist/{chunk-OOBBI4DH.js → chunk-PUXJT6AD.js} +27 -13
  12. package/dist/chunk-PUXJT6AD.js.br +0 -0
  13. package/dist/chunk-PUXJT6AD.js.gz +0 -0
  14. package/dist/index.d.ts +18 -2
  15. package/dist/index.js +24 -24
  16. package/dist/index.js.br +0 -0
  17. package/dist/index.js.gz +0 -0
  18. package/dist/index.mjs +2 -2
  19. package/dist/index.mjs.br +0 -0
  20. package/dist/index.mjs.gz +0 -0
  21. package/dist/internals.d.ts +15 -1
  22. package/dist/internals.js +80 -80
  23. package/dist/internals.js.br +0 -0
  24. package/dist/internals.js.gz +0 -0
  25. package/dist/internals.mjs +1 -1
  26. package/dist/internals.mjs.br +0 -0
  27. package/dist/internals.mjs.gz +0 -0
  28. package/dist/viewer/index.d.ts +10 -1
  29. package/dist/viewer/index.js +18 -18
  30. package/dist/viewer/index.js.br +0 -0
  31. package/dist/viewer/index.js.gz +0 -0
  32. package/dist/viewer/index.mjs +2 -2
  33. package/dist/viewer/index.mjs.br +0 -0
  34. package/dist/viewer/index.mjs.gz +0 -0
  35. package/package.json +3 -3
  36. package/dist/chunk-3CN33VMC.mjs.br +0 -0
  37. package/dist/chunk-OOBBI4DH.js.br +0 -0
  38. package/dist/chunk-OOBBI4DH.js.gz +0 -0
  39. package/dist/chunk-PAJZXF2Q.js.br +0 -0
  40. package/dist/chunk-PAJZXF2Q.js.gz +0 -0
  41. package/dist/chunk-UMGVFMAW.mjs.br +0 -0
  42. package/dist/chunk-UMGVFMAW.mjs.gz +0 -0
Binary file
Binary file
@@ -4652,7 +4652,8 @@ function useTextElementOperations(input) {
4652
4652
  inlineEditingText,
4653
4653
  inlineEditingSnapshotRef,
4654
4654
  setInlineEditingElementId,
4655
- updateSelectedElement
4655
+ updateSelectedElement,
4656
+ listConversionScope
4656
4657
  } = input;
4657
4658
  const liveTextSegments = useCallback(() => {
4658
4659
  if (!selectedElement || !hasTextProperties(selectedElement)) {
@@ -4695,7 +4696,8 @@ function useTextElementOperations(input) {
4695
4696
  textSegments: currentSegments
4696
4697
  },
4697
4698
  updates,
4698
- inlineSel
4699
+ inlineSel,
4700
+ { listConversionScope }
4699
4701
  );
4700
4702
  if (!patch2 || !("textSegments" in patch2)) {
4701
4703
  return;
@@ -4718,7 +4720,8 @@ function useTextElementOperations(input) {
4718
4720
  const result = applyListStyleUpdate(
4719
4721
  { ...selectedElement, textSegments: currentSegments },
4720
4722
  updates,
4721
- inlineSel
4723
+ inlineSel,
4724
+ { listConversionScope }
4722
4725
  );
4723
4726
  setPendingSelectionRestore(result.selection);
4724
4727
  updateSelectedElement({
@@ -4746,7 +4749,8 @@ function useTextElementOperations(input) {
4746
4749
  updateSelectedElement,
4747
4750
  inlineEditingElementId,
4748
4751
  inlineEditingText,
4749
- liveTextSegments
4752
+ liveTextSegments,
4753
+ listConversionScope
4750
4754
  ]
4751
4755
  );
4752
4756
  const toggleSelectedBullets = useCallback(
@@ -4764,7 +4768,8 @@ function useTextElementOperations(input) {
4764
4768
  selectedElement,
4765
4769
  kind,
4766
4770
  result.selection,
4767
- draft?.textSegments ?? currentSegments
4771
+ draft?.textSegments ?? currentSegments,
4772
+ { listConversionScope }
4768
4773
  );
4769
4774
  if (draft) {
4770
4775
  if (!("textSegments" in patch) || !patch.textSegments) {
@@ -4797,7 +4802,8 @@ function useTextElementOperations(input) {
4797
4802
  liveTextSegments,
4798
4803
  updateSelectedElement,
4799
4804
  inlineEditingElementId,
4800
- inlineEditingText
4805
+ inlineEditingText,
4806
+ listConversionScope
4801
4807
  ]
4802
4808
  );
4803
4809
  const updateSelectedTextCase = useCallback(
@@ -4877,7 +4883,8 @@ function useElementOperations(input) {
4877
4883
  setContextMenuState,
4878
4884
  inlineEditingElementId,
4879
4885
  inlineEditingText,
4880
- inlineEditingSnapshotRef
4886
+ inlineEditingSnapshotRef,
4887
+ listConversionScope
4881
4888
  } = input;
4882
4889
  const applySelection = useCallback(
4883
4890
  (primaryId, ids = []) => {
@@ -4969,7 +4976,8 @@ function useElementOperations(input) {
4969
4976
  inlineEditingText,
4970
4977
  inlineEditingSnapshotRef,
4971
4978
  setInlineEditingElementId,
4972
- updateSelectedElement
4979
+ updateSelectedElement,
4980
+ listConversionScope
4973
4981
  });
4974
4982
  const updateSlides = useCallback(
4975
4983
  (updater) => {
@@ -9738,7 +9746,8 @@ function useEditorOperations(input) {
9738
9746
  userName,
9739
9747
  handlerRef,
9740
9748
  transformCommittedText,
9741
- keyboard
9749
+ keyboard,
9750
+ listConversionScope
9742
9751
  } = input;
9743
9752
  const masterView = useMemo(
9744
9753
  () => ({
@@ -9784,7 +9793,8 @@ function useEditorOperations(input) {
9784
9793
  setContextMenuState: state.setContextMenuState,
9785
9794
  inlineEditingElementId: state.inlineEditingElementId,
9786
9795
  inlineEditingText: state.inlineEditingText,
9787
- inlineEditingSnapshotRef: state.inlineEditingSnapshotRef
9796
+ inlineEditingSnapshotRef: state.inlineEditingSnapshotRef,
9797
+ listConversionScope
9788
9798
  });
9789
9799
  const sectionOps = useSectionOperations({
9790
9800
  sections: state.sections,
@@ -12900,7 +12910,7 @@ function useViewPreferencesSync(input) {
12900
12910
  // src/viewer/hooks/useViewerBuildingBlocksState.ts
12901
12911
  function useViewerBuildingBlocksState(input) {
12902
12912
  const { core, content, canEdit, filePath, autosaveEnabled, userName, handle, setContent } = input;
12903
- const { initialSlide, googleFonts, allowExternalContent, limits } = input;
12913
+ const { initialSlide, googleFonts, listConversionScope, allowExternalContent, limits } = input;
12904
12914
  const externalContentLockedRef = useRef(false);
12905
12915
  const { optionsStore } = core;
12906
12916
  useLayoutEffect(() => {
@@ -12986,7 +12996,8 @@ function useViewerBuildingBlocksState(input) {
12986
12996
  dialogs,
12987
12997
  presentation,
12988
12998
  userName,
12989
- handlerRef: actionSoundHandlerRef
12999
+ handlerRef: actionSoundHandlerRef,
13000
+ listConversionScope
12990
13001
  });
12991
13002
  const {
12992
13003
  exportHandlers,
@@ -13078,6 +13089,7 @@ function useViewerBuildingBlocks(input) {
13078
13089
  fileName,
13079
13090
  initialSlide,
13080
13091
  googleFonts,
13092
+ listConversionScope,
13081
13093
  allowExternalContent,
13082
13094
  limits,
13083
13095
  autosaveEnabled = true,
@@ -13171,6 +13183,7 @@ function useViewerBuildingBlocks(input) {
13171
13183
  filePath,
13172
13184
  initialSlide,
13173
13185
  googleFonts,
13186
+ listConversionScope,
13174
13187
  allowExternalContent,
13175
13188
  limits,
13176
13189
  autosaveEnabled,
@@ -17426,7 +17439,8 @@ function WarpedText({
17426
17439
  align,
17427
17440
  warpAdj,
17428
17441
  warpAdj2,
17429
- getGlyphOutline
17442
+ getGlyphOutline,
17443
+ textEl.textStyle
17430
17444
  );
17431
17445
  return /* @__PURE__ */ jsx(
17432
17446
  "svg",
Binary file
Binary file
@@ -4657,7 +4657,8 @@ function useTextElementOperations(input) {
4657
4657
  inlineEditingText,
4658
4658
  inlineEditingSnapshotRef,
4659
4659
  setInlineEditingElementId,
4660
- updateSelectedElement
4660
+ updateSelectedElement,
4661
+ listConversionScope
4661
4662
  } = input;
4662
4663
  const liveTextSegments = React17.useCallback(() => {
4663
4664
  if (!selectedElement || !pptx$1.hasTextProperties(selectedElement)) {
@@ -4700,7 +4701,8 @@ function useTextElementOperations(input) {
4700
4701
  textSegments: currentSegments
4701
4702
  },
4702
4703
  updates,
4703
- inlineSel
4704
+ inlineSel,
4705
+ { listConversionScope }
4704
4706
  );
4705
4707
  if (!patch2 || !("textSegments" in patch2)) {
4706
4708
  return;
@@ -4723,7 +4725,8 @@ function useTextElementOperations(input) {
4723
4725
  const result = pptx.applyListStyleUpdate(
4724
4726
  { ...selectedElement, textSegments: currentSegments },
4725
4727
  updates,
4726
- inlineSel
4728
+ inlineSel,
4729
+ { listConversionScope }
4727
4730
  );
4728
4731
  pptx.setPendingSelectionRestore(result.selection);
4729
4732
  updateSelectedElement({
@@ -4751,7 +4754,8 @@ function useTextElementOperations(input) {
4751
4754
  updateSelectedElement,
4752
4755
  inlineEditingElementId,
4753
4756
  inlineEditingText,
4754
- liveTextSegments
4757
+ liveTextSegments,
4758
+ listConversionScope
4755
4759
  ]
4756
4760
  );
4757
4761
  const toggleSelectedBullets = React17.useCallback(
@@ -4769,7 +4773,8 @@ function useTextElementOperations(input) {
4769
4773
  selectedElement,
4770
4774
  kind,
4771
4775
  result.selection,
4772
- draft?.textSegments ?? currentSegments
4776
+ draft?.textSegments ?? currentSegments,
4777
+ { listConversionScope }
4773
4778
  );
4774
4779
  if (draft) {
4775
4780
  if (!("textSegments" in patch) || !patch.textSegments) {
@@ -4802,7 +4807,8 @@ function useTextElementOperations(input) {
4802
4807
  liveTextSegments,
4803
4808
  updateSelectedElement,
4804
4809
  inlineEditingElementId,
4805
- inlineEditingText
4810
+ inlineEditingText,
4811
+ listConversionScope
4806
4812
  ]
4807
4813
  );
4808
4814
  const updateSelectedTextCase = React17.useCallback(
@@ -4882,7 +4888,8 @@ function useElementOperations(input) {
4882
4888
  setContextMenuState,
4883
4889
  inlineEditingElementId,
4884
4890
  inlineEditingText,
4885
- inlineEditingSnapshotRef
4891
+ inlineEditingSnapshotRef,
4892
+ listConversionScope
4886
4893
  } = input;
4887
4894
  const applySelection = React17.useCallback(
4888
4895
  (primaryId, ids = []) => {
@@ -4974,7 +4981,8 @@ function useElementOperations(input) {
4974
4981
  inlineEditingText,
4975
4982
  inlineEditingSnapshotRef,
4976
4983
  setInlineEditingElementId,
4977
- updateSelectedElement
4984
+ updateSelectedElement,
4985
+ listConversionScope
4978
4986
  });
4979
4987
  const updateSlides = React17.useCallback(
4980
4988
  (updater) => {
@@ -9743,7 +9751,8 @@ function useEditorOperations(input) {
9743
9751
  userName,
9744
9752
  handlerRef,
9745
9753
  transformCommittedText,
9746
- keyboard
9754
+ keyboard,
9755
+ listConversionScope
9747
9756
  } = input;
9748
9757
  const masterView = React17.useMemo(
9749
9758
  () => ({
@@ -9789,7 +9798,8 @@ function useEditorOperations(input) {
9789
9798
  setContextMenuState: state.setContextMenuState,
9790
9799
  inlineEditingElementId: state.inlineEditingElementId,
9791
9800
  inlineEditingText: state.inlineEditingText,
9792
- inlineEditingSnapshotRef: state.inlineEditingSnapshotRef
9801
+ inlineEditingSnapshotRef: state.inlineEditingSnapshotRef,
9802
+ listConversionScope
9793
9803
  });
9794
9804
  const sectionOps = useSectionOperations({
9795
9805
  sections: state.sections,
@@ -12905,7 +12915,7 @@ function useViewPreferencesSync(input) {
12905
12915
  // src/viewer/hooks/useViewerBuildingBlocksState.ts
12906
12916
  function useViewerBuildingBlocksState(input) {
12907
12917
  const { core, content, canEdit, filePath, autosaveEnabled, userName, handle, setContent } = input;
12908
- const { initialSlide, googleFonts, allowExternalContent, limits } = input;
12918
+ const { initialSlide, googleFonts, listConversionScope, allowExternalContent, limits } = input;
12909
12919
  const externalContentLockedRef = React17.useRef(false);
12910
12920
  const { optionsStore } = core;
12911
12921
  React17.useLayoutEffect(() => {
@@ -12991,7 +13001,8 @@ function useViewerBuildingBlocksState(input) {
12991
13001
  dialogs,
12992
13002
  presentation,
12993
13003
  userName,
12994
- handlerRef: actionSoundHandlerRef
13004
+ handlerRef: actionSoundHandlerRef,
13005
+ listConversionScope
12995
13006
  });
12996
13007
  const {
12997
13008
  exportHandlers,
@@ -13083,6 +13094,7 @@ function useViewerBuildingBlocks(input) {
13083
13094
  fileName,
13084
13095
  initialSlide,
13085
13096
  googleFonts,
13097
+ listConversionScope,
13086
13098
  allowExternalContent,
13087
13099
  limits,
13088
13100
  autosaveEnabled = true,
@@ -13176,6 +13188,7 @@ function useViewerBuildingBlocks(input) {
13176
13188
  filePath,
13177
13189
  initialSlide,
13178
13190
  googleFonts,
13191
+ listConversionScope,
13179
13192
  allowExternalContent,
13180
13193
  limits,
13181
13194
  autosaveEnabled,
@@ -17431,7 +17444,8 @@ function WarpedText({
17431
17444
  align,
17432
17445
  warpAdj,
17433
17446
  warpAdj2,
17434
- getGlyphOutline
17447
+ getGlyphOutline,
17448
+ textEl.textStyle
17435
17449
  );
17436
17450
  return /* @__PURE__ */ jsxRuntime.jsx(
17437
17451
  "svg",
Binary file
Binary file
package/dist/index.d.ts CHANGED
@@ -1,8 +1,8 @@
1
1
  import * as React$1 from 'react';
2
2
  import React$1__default, { ReactNode, ReactElement } from 'react';
3
3
  import * as ooxml_ui_pptx from 'ooxml-ui/pptx';
4
- import { CollaborationRole, CollaborationConfig, ViewportFitOptions, ViewerFontSource, CanvasSize, DocumentStorage, ViewerAutosaveStatus, AutosaveRecord, ConnectionStatus, ViewerTheme, ThemeCatalogEntry, AccountAuthConfig, CollaborationInput, GoogleFontsOption, ToolbarActionId, RibbonAddInTab, ViewerCustomization, PptxLoadLimits, PowerPointViewerAPI, ViewerCustomizationApi, CollaborationLivePatcher, InlineListReadResult, EditorImagePasteOptions, ViewerMode, RulerUnit, ElementAnimationState, ShapeAdjustmentHandleDescriptor, InlineTextEditSnapshot, ZoomNavigationTarget, FieldSubstitutionContext, EditPointsCommandId, EditPointsElementPatch, FreeformToolKind, ElementClipboardPayload, AnimationApplyGroup, InsertChartKind, ChangeCaseMode, SlideTemplateId, ReviewCommentsHost, SlidesPaneLayoutGalleryRequest, CollaborationShellState, PptxAutosaveStatus } from 'ooxml-ui/pptx';
5
- export { AVATAR_COLOR_SWATCHES, AccountAuthConfig, BACKSTAGE_CARD_IDS, BACKSTAGE_PAGE_IDS, BackstageCustomization, CANVAS_CONTEXT_MENU_COMMAND_IDS, CollaborationConfig, CollaborationShellState, ContextMenuCustomization, DEFAULT_VIEWER_PROFILE, EDITOR_SHORTCUT_ACTION_IDS, ELEMENT_CONTEXT_MENU_COMMAND_IDS, ElementUpdate, ElementUpdateOptions, ExternalCollaborationAwareness, ExternalCollaborationSession, ExternalCollaborationSnapshot, HostCanvasMenuContext, HostElementMenuContext, HostMenuCommand, KeyboardCustomization, LocalStorageUsageSummary, OPTIONS_PAGE_IDS, OPTIONS_SECTION_IDS, OPTIONS_SETTING_IDS, OptionsCustomization, OptionsPageId, OptionsSectionId, OptionsSettingId, OptionsSettingValues, PPTX_OPEN_ACCEPT, PRESENTATION_OPEN_EXTENSIONS, PowerPointViewerAPI, RIBBON_TAB_IDS, ResolvedCustomization, RibbonCustomization, SLIDE_TEMPLATES, SavedPresentationFormat, ShortcutChord, SlideTemplateId, SlideTemplateSpec, SlidesPaneLayoutGalleryRequest, StoredViewerPrefs, THEME_CATALOG, TOOLBAR_BUTTON_IDS, ThemeCatalogEntry, ToolbarActionId, ToolbarButtonId, ToolbarTabId, VIEWER_DIALOG_IDS, VIEWER_EXPORT_FORMAT_IDS, VIEWER_FEATURE_IDS, VIEWER_PANEL_IDS, VIEWER_PREFS_STORAGE_KEY, ViewerCustomization, ViewerCustomizationApi, ViewerDialogId, ViewerExportFormatId, ViewerFeatureId, ViewerMode, ViewerPanelId, ViewerProfile, ViewerTheme, ViewerThemeColors, ViewportFitOptions, ViewportFitPadding, buildSlideTemplateContent, buildSlideTemplateSlide, clearAllLocalViewerData, clearStoredViewerPrefs, createImageElementFromFile, defaultCssVars, defaultRadius, defaultThemeColors, describeCollaborationShellState, getLocalStorageUsageSummary, isLegacyBinaryPresentation, isSupportedPresentationFile, presentationBaseName, readStoredViewerPrefs, resolveProfileInitial, resolveThemeCatalogEntry, saveViewerProfile, savedPresentationFileName, themeToCssVars, vermilionDarkColors, vermilionDarkTheme, vermilionLightColors, vermilionLightTheme, vermilionRadius, writeStoredViewerPrefs } from 'ooxml-ui/pptx';
4
+ import { CollaborationRole, CollaborationConfig, ViewportFitOptions, ViewerFontSource, CanvasSize, DocumentStorage, ViewerAutosaveStatus, AutosaveRecord, ConnectionStatus, ViewerTheme, ThemeCatalogEntry, AccountAuthConfig, CollaborationInput, GoogleFontsOption, ListConversionScope, ToolbarActionId, RibbonAddInTab, ViewerCustomization, PptxLoadLimits, PowerPointViewerAPI, ViewerCustomizationApi, CollaborationLivePatcher, InlineListReadResult, EditorImagePasteOptions, ViewerMode, RulerUnit, ElementAnimationState, ShapeAdjustmentHandleDescriptor, InlineTextEditSnapshot, ZoomNavigationTarget, FieldSubstitutionContext, EditPointsCommandId, EditPointsElementPatch, FreeformToolKind, ElementClipboardPayload, AnimationApplyGroup, InsertChartKind, ChangeCaseMode, SlideTemplateId, ReviewCommentsHost, SlidesPaneLayoutGalleryRequest, CollaborationShellState, PptxAutosaveStatus } from 'ooxml-ui/pptx';
5
+ export { AVATAR_COLOR_SWATCHES, AccountAuthConfig, BACKSTAGE_CARD_IDS, BACKSTAGE_PAGE_IDS, BackstageCustomization, CANVAS_CONTEXT_MENU_COMMAND_IDS, CollaborationConfig, CollaborationShellState, ContextMenuCustomization, DEFAULT_VIEWER_PROFILE, EDITOR_SHORTCUT_ACTION_IDS, ELEMENT_CONTEXT_MENU_COMMAND_IDS, ElementUpdate, ElementUpdateOptions, ExternalCollaborationAwareness, ExternalCollaborationSession, ExternalCollaborationSnapshot, HostCanvasMenuContext, HostElementMenuContext, HostMenuCommand, KeyboardCustomization, ListConversionScope, LocalStorageUsageSummary, OPTIONS_PAGE_IDS, OPTIONS_SECTION_IDS, OPTIONS_SETTING_IDS, OptionsCustomization, OptionsPageId, OptionsSectionId, OptionsSettingId, OptionsSettingValues, PPTX_OPEN_ACCEPT, PRESENTATION_OPEN_EXTENSIONS, PowerPointViewerAPI, RIBBON_TAB_IDS, ResolvedCustomization, RibbonCustomization, SLIDE_TEMPLATES, SavedPresentationFormat, ShortcutChord, SlideTemplateId, SlideTemplateSpec, SlidesPaneLayoutGalleryRequest, StoredViewerPrefs, THEME_CATALOG, TOOLBAR_BUTTON_IDS, ThemeCatalogEntry, ToolbarActionId, ToolbarButtonId, ToolbarTabId, VIEWER_DIALOG_IDS, VIEWER_EXPORT_FORMAT_IDS, VIEWER_FEATURE_IDS, VIEWER_PANEL_IDS, VIEWER_PREFS_STORAGE_KEY, ViewerCustomization, ViewerCustomizationApi, ViewerDialogId, ViewerExportFormatId, ViewerFeatureId, ViewerMode, ViewerPanelId, ViewerProfile, ViewerTheme, ViewerThemeColors, ViewportFitOptions, ViewportFitPadding, buildSlideTemplateContent, buildSlideTemplateSlide, clearAllLocalViewerData, clearStoredViewerPrefs, createImageElementFromFile, defaultCssVars, defaultRadius, defaultThemeColors, describeCollaborationShellState, getLocalStorageUsageSummary, isLegacyBinaryPresentation, isSupportedPresentationFile, presentationBaseName, readStoredViewerPrefs, resolveProfileInitial, resolveThemeCatalogEntry, saveViewerProfile, savedPresentationFileName, themeToCssVars, vermilionDarkColors, vermilionDarkTheme, vermilionLightColors, vermilionLightTheme, vermilionRadius, writeStoredViewerPrefs } from 'ooxml-ui/pptx';
6
6
  import { PptxAiConfig } from 'ooxml-ui/pptx/ai';
7
7
  export { PptxAiBridge, PptxAiConfig, PptxAiConnection, PptxAiContextStrategy, PptxAiToolName, PptxAiWritePolicy } from 'ooxml-ui/pptx/ai';
8
8
  import { PptxAiAssistant } from 'ooxml-ui/pptx/ai/host';
@@ -474,6 +474,15 @@ interface PowerPointViewerProps extends ViewportFitOptions {
474
474
  * invalid `baseUrl` disables the fallback (with a console warning).
475
475
  */
476
476
  googleFonts?: GoogleFontsOption;
477
+ /**
478
+ * How far Bullets / Numbering reach from a bare caret (no text selected).
479
+ * `'paragraph'` (default, PowerPoint behaviour): only the caret's paragraph
480
+ * changes. `'list'` (Word / Google Docs behaviour): when the caret's
481
+ * paragraph is already a list item and the command switches it between
482
+ * bullets and numbering, every adjacent item of that list converts with it.
483
+ * A range selection always affects only the paragraphs it touches.
484
+ */
485
+ listConversionScope?: ListConversionScope;
477
486
  /**
478
487
  * Show the editor chrome: title bar, ribbon and toolbar, protected-view
479
488
  * and read-only banners, the mobile toolbar and the status bar. Default
@@ -1161,6 +1170,13 @@ interface UseViewerBuildingBlocksInput extends ViewportFitOptions {
1161
1170
  initialSlide?: number;
1162
1171
  /** As `PowerPointViewer`'s `googleFonts`: the Google Fonts fallback policy (off, or a self-hosted mirror). */
1163
1172
  googleFonts?: GoogleFontsOption;
1173
+ /**
1174
+ * As `PowerPointViewer`'s `listConversionScope`: how far Bullets / Numbering reach from a
1175
+ * bare caret. `'paragraph'` (default, PowerPoint behaviour) changes only the caret's
1176
+ * paragraph; `'list'` (Word / Google Docs behaviour) converts the whole adjacent list when
1177
+ * the caret switches a list paragraph between bullets and numbering.
1178
+ */
1179
+ listConversionScope?: ListConversionScope;
1164
1180
  /**
1165
1181
  * As `PowerPointViewer`'s `allowExternalContent`: `false` fetches no linked
1166
1182
  * http(s) content, `true` allows it, either value locks the Trust Center
package/dist/index.js CHANGED
@@ -1,8 +1,8 @@
1
1
  'use strict';
2
2
 
3
- var chunkPAJZXF2Q_js = require('./chunk-PAJZXF2Q.js');
3
+ var chunkM52H5M5R_js = require('./chunk-M52H5M5R.js');
4
4
  require('./chunk-F6WCYCHV.js');
5
- var chunkOOBBI4DH_js = require('./chunk-OOBBI4DH.js');
5
+ var chunkPUXJT6AD_js = require('./chunk-PUXJT6AD.js');
6
6
  var chunk5KFSMXI4_js = require('./chunk-5KFSMXI4.js');
7
7
  require('./chunk-PIRHQTI4.js');
8
8
  var pptx = require('ooxml-ui/pptx');
@@ -12,91 +12,91 @@ var i18n = require('ooxml-ui/pptx/i18n');
12
12
 
13
13
  Object.defineProperty(exports, "PowerPointViewer", {
14
14
  enumerable: true,
15
- get: function () { return chunkPAJZXF2Q_js.PowerPointViewer; }
15
+ get: function () { return chunkM52H5M5R_js.PowerPointViewer; }
16
16
  });
17
17
  Object.defineProperty(exports, "PptxI18nProvider", {
18
18
  enumerable: true,
19
- get: function () { return chunkPAJZXF2Q_js.PptxI18nProvider; }
19
+ get: function () { return chunkM52H5M5R_js.PptxI18nProvider; }
20
20
  });
21
21
  Object.defineProperty(exports, "SlideCanvas", {
22
22
  enumerable: true,
23
- get: function () { return chunkPAJZXF2Q_js.SlideCanvas; }
23
+ get: function () { return chunkM52H5M5R_js.SlideCanvas; }
24
24
  });
25
25
  Object.defineProperty(exports, "SlideTemplateGalleryDialog", {
26
26
  enumerable: true,
27
- get: function () { return chunkPAJZXF2Q_js.SlideTemplateGalleryDialog; }
27
+ get: function () { return chunkM52H5M5R_js.SlideTemplateGalleryDialog; }
28
28
  });
29
29
  Object.defineProperty(exports, "SlideTemplatePreview", {
30
30
  enumerable: true,
31
- get: function () { return chunkPAJZXF2Q_js.SlideTemplatePreview; }
31
+ get: function () { return chunkM52H5M5R_js.SlideTemplatePreview; }
32
32
  });
33
33
  Object.defineProperty(exports, "SlidesPane", {
34
34
  enumerable: true,
35
- get: function () { return chunkPAJZXF2Q_js.SlidesPaneSidebar; }
35
+ get: function () { return chunkM52H5M5R_js.SlidesPaneSidebar; }
36
36
  });
37
37
  Object.defineProperty(exports, "THEME_CATALOG", {
38
38
  enumerable: true,
39
- get: function () { return chunkPAJZXF2Q_js.THEME_CATALOG; }
39
+ get: function () { return chunkM52H5M5R_js.THEME_CATALOG; }
40
40
  });
41
41
  Object.defineProperty(exports, "Toolbar", {
42
42
  enumerable: true,
43
- get: function () { return chunkPAJZXF2Q_js.Toolbar; }
43
+ get: function () { return chunkM52H5M5R_js.Toolbar; }
44
44
  });
45
45
  Object.defineProperty(exports, "ViewerThemeProvider", {
46
46
  enumerable: true,
47
- get: function () { return chunkPAJZXF2Q_js.ViewerThemeProvider; }
47
+ get: function () { return chunkM52H5M5R_js.ViewerThemeProvider; }
48
48
  });
49
49
  Object.defineProperty(exports, "defaultCssVars", {
50
50
  enumerable: true,
51
- get: function () { return chunkPAJZXF2Q_js.defaultCssVars; }
51
+ get: function () { return chunkM52H5M5R_js.defaultCssVars; }
52
52
  });
53
53
  Object.defineProperty(exports, "defaultRadius", {
54
54
  enumerable: true,
55
- get: function () { return chunkPAJZXF2Q_js.defaultRadius; }
55
+ get: function () { return chunkM52H5M5R_js.defaultRadius; }
56
56
  });
57
57
  Object.defineProperty(exports, "defaultThemeColors", {
58
58
  enumerable: true,
59
- get: function () { return chunkPAJZXF2Q_js.defaultThemeColors; }
59
+ get: function () { return chunkM52H5M5R_js.defaultThemeColors; }
60
60
  });
61
61
  Object.defineProperty(exports, "resolveThemeCatalogEntry", {
62
62
  enumerable: true,
63
- get: function () { return chunkPAJZXF2Q_js.resolveThemeCatalogEntry; }
63
+ get: function () { return chunkM52H5M5R_js.resolveThemeCatalogEntry; }
64
64
  });
65
65
  Object.defineProperty(exports, "themeToCssVars", {
66
66
  enumerable: true,
67
- get: function () { return chunkPAJZXF2Q_js.themeToCssVars; }
67
+ get: function () { return chunkM52H5M5R_js.themeToCssVars; }
68
68
  });
69
69
  Object.defineProperty(exports, "useViewerTheme", {
70
70
  enumerable: true,
71
- get: function () { return chunkPAJZXF2Q_js.useViewerTheme; }
71
+ get: function () { return chunkM52H5M5R_js.useViewerTheme; }
72
72
  });
73
73
  Object.defineProperty(exports, "vermilionDarkColors", {
74
74
  enumerable: true,
75
- get: function () { return chunkPAJZXF2Q_js.vermilionDarkColors; }
75
+ get: function () { return chunkM52H5M5R_js.vermilionDarkColors; }
76
76
  });
77
77
  Object.defineProperty(exports, "vermilionDarkTheme", {
78
78
  enumerable: true,
79
- get: function () { return chunkPAJZXF2Q_js.vermilionDarkTheme; }
79
+ get: function () { return chunkM52H5M5R_js.vermilionDarkTheme; }
80
80
  });
81
81
  Object.defineProperty(exports, "vermilionLightColors", {
82
82
  enumerable: true,
83
- get: function () { return chunkPAJZXF2Q_js.vermilionLightColors; }
83
+ get: function () { return chunkM52H5M5R_js.vermilionLightColors; }
84
84
  });
85
85
  Object.defineProperty(exports, "vermilionLightTheme", {
86
86
  enumerable: true,
87
- get: function () { return chunkPAJZXF2Q_js.vermilionLightTheme; }
87
+ get: function () { return chunkM52H5M5R_js.vermilionLightTheme; }
88
88
  });
89
89
  Object.defineProperty(exports, "vermilionRadius", {
90
90
  enumerable: true,
91
- get: function () { return chunkPAJZXF2Q_js.vermilionRadius; }
91
+ get: function () { return chunkM52H5M5R_js.vermilionRadius; }
92
92
  });
93
93
  Object.defineProperty(exports, "renderToCanvas", {
94
94
  enumerable: true,
95
- get: function () { return chunkOOBBI4DH_js.renderToCanvas; }
95
+ get: function () { return chunkPUXJT6AD_js.renderToCanvas; }
96
96
  });
97
97
  Object.defineProperty(exports, "useViewerBuildingBlocks", {
98
98
  enumerable: true,
99
- get: function () { return chunkOOBBI4DH_js.useViewerBuildingBlocks; }
99
+ get: function () { return chunkPUXJT6AD_js.useViewerBuildingBlocks; }
100
100
  });
101
101
  Object.defineProperty(exports, "getAnimationInitialStyle", {
102
102
  enumerable: true,
package/dist/index.js.br CHANGED
Binary file
package/dist/index.js.gz CHANGED
Binary file
package/dist/index.mjs CHANGED
@@ -1,6 +1,6 @@
1
- export { PowerPointViewer, PptxI18nProvider, SlideCanvas, SlideTemplateGalleryDialog, SlideTemplatePreview, SlidesPaneSidebar as SlidesPane, THEME_CATALOG, Toolbar, ViewerThemeProvider, defaultCssVars, defaultRadius, defaultThemeColors, resolveThemeCatalogEntry, themeToCssVars, useViewerTheme, vermilionDarkColors, vermilionDarkTheme, vermilionLightColors, vermilionLightTheme, vermilionRadius } from './chunk-3CN33VMC.mjs';
1
+ export { PowerPointViewer, PptxI18nProvider, SlideCanvas, SlideTemplateGalleryDialog, SlideTemplatePreview, SlidesPaneSidebar as SlidesPane, THEME_CATALOG, Toolbar, ViewerThemeProvider, defaultCssVars, defaultRadius, defaultThemeColors, resolveThemeCatalogEntry, themeToCssVars, useViewerTheme, vermilionDarkColors, vermilionDarkTheme, vermilionLightColors, vermilionLightTheme, vermilionRadius } from './chunk-7NWM7HWP.mjs';
2
2
  import './chunk-NE5JQMED.mjs';
3
- export { renderToCanvas, useViewerBuildingBlocks } from './chunk-UMGVFMAW.mjs';
3
+ export { renderToCanvas, useViewerBuildingBlocks } from './chunk-MO4FI3EX.mjs';
4
4
  export { getAnimationInitialStyle } from './chunk-MR3ZSEHS.mjs';
5
5
  import './chunk-UV2HVMKZ.mjs';
6
6
  export { AVATAR_COLOR_SWATCHES, BACKSTAGE_CARD_IDS, BACKSTAGE_PAGE_IDS, CANVAS_CONTEXT_MENU_COMMAND_IDS, DEFAULT_VIEWER_PROFILE, EDITOR_SHORTCUT_ACTION_IDS, ELEMENT_CONTEXT_MENU_COMMAND_IDS, OPTIONS_PAGE_IDS, OPTIONS_SECTION_IDS, OPTIONS_SETTING_IDS, PPTX_OPEN_ACCEPT, PRESENTATION_OPEN_EXTENSIONS, RIBBON_TAB_IDS, SLIDE_TEMPLATES, TOOLBAR_BUTTON_IDS, VIEWER_DIALOG_IDS, VIEWER_EXPORT_FORMAT_IDS, VIEWER_FEATURE_IDS, VIEWER_PANEL_IDS, VIEWER_PREFS_STORAGE_KEY, buildSlideTemplateContent, buildSlideTemplateSlide, clearAllLocalViewerData, clearStoredViewerPrefs, createImageElementFromFile, describeCollaborationShellState, getLocalStorageUsageSummary, isLegacyBinaryPresentation, isSupportedPresentationFile, presentationBaseName, readStoredViewerPrefs, resolveProfileInitial, saveViewerProfile, savedPresentationFileName, writeStoredViewerPrefs } from 'ooxml-ui/pptx';
package/dist/index.mjs.br CHANGED
Binary file
package/dist/index.mjs.gz CHANGED
Binary file
@@ -1,4 +1,4 @@
1
- import { CollaborationRole, CollaborationConfig, HistoryTheme, PowerPointViewerAPI, ViewerCustomizationApi, PptxAutosaveStatus, ShapeAdjustmentHandleDescriptor, EditorHistoryController, ChangeCaseMode, ResolvedKeyboardCustomization, FindResult, EditorImagePasteOptions, InsertChartKind, InsertChartOptions, PasteSpecialFormat, SlidePasteRequest, SlideTemplateId, MorphTransitionPlan, ElementAnimationState, ZoomNavigationTarget, PresentationSnapshot, DocumentStorage, InlineTextDraftSink, ViewerMode, ShapeAdjustmentDragState, GestureKind, PointerLike, InlineTextEditSnapshot, InlineListReadResult, FreeformToolKind, CollaborationLivePatcher, SlideSizeEmu, ElementClipboardPayload, CropSession, FontEmbeddingDescriptor, MasterViewTarget, ViewportFitOptions, CollaborationInput, GoogleFontsOption, PptxLoadLimits, ToolbarActionId, SlidesPaneLayoutGalleryRequest, CollaborationShellState, AnimationApplyGroup, ReviewCommentsHost, RulerUnit, FieldSubstitutionContext, EditPointsCommandId, EditPointsElementPatch, PresentationPointerTool, RunProgramNotice, BorrowedCollaborationAwareness, CollabLoadOrigin, AuthoredSlideRange, DocumentSaveReason, FragmentedLayer, PrintSettings, ThemeEditorEdit, CompareResult, ReadOnlyRecommendation, CompatibilityWarningToast, DeviceOrientation, ResolvedCustomization, AutosaveRecord, DeckSavePurpose, ZoomExcursion, TouchGestureCallbacks, ViewerAutosaveStatus, ViewerOptionsStore, ViewerOptions, AutosaveRecoveryPrompt, VirtualizedRange, ToolbarTabId } from 'ooxml-ui/pptx';
1
+ import { CollaborationRole, CollaborationConfig, HistoryTheme, PowerPointViewerAPI, ViewerCustomizationApi, PptxAutosaveStatus, ShapeAdjustmentHandleDescriptor, EditorHistoryController, ChangeCaseMode, ResolvedKeyboardCustomization, FindResult, EditorImagePasteOptions, InsertChartKind, InsertChartOptions, PasteSpecialFormat, SlidePasteRequest, SlideTemplateId, MorphTransitionPlan, ElementAnimationState, ZoomNavigationTarget, PresentationSnapshot, DocumentStorage, InlineTextDraftSink, ViewerMode, ShapeAdjustmentDragState, GestureKind, PointerLike, InlineTextEditSnapshot, InlineListReadResult, FreeformToolKind, CollaborationLivePatcher, SlideSizeEmu, ElementClipboardPayload, CropSession, FontEmbeddingDescriptor, ListConversionScope, MasterViewTarget, ViewportFitOptions, CollaborationInput, GoogleFontsOption, PptxLoadLimits, ToolbarActionId, SlidesPaneLayoutGalleryRequest, CollaborationShellState, AnimationApplyGroup, ReviewCommentsHost, RulerUnit, FieldSubstitutionContext, EditPointsCommandId, EditPointsElementPatch, PresentationPointerTool, RunProgramNotice, BorrowedCollaborationAwareness, CollabLoadOrigin, AuthoredSlideRange, DocumentSaveReason, FragmentedLayer, PrintSettings, ThemeEditorEdit, CompareResult, ReadOnlyRecommendation, CompatibilityWarningToast, DeviceOrientation, ResolvedCustomization, AutosaveRecord, DeckSavePurpose, ZoomExcursion, TouchGestureCallbacks, ViewerAutosaveStatus, ViewerOptionsStore, ViewerOptions, AutosaveRecoveryPrompt, VirtualizedRange, ToolbarTabId } from 'ooxml-ui/pptx';
2
2
  export { CINEMATIC_TRANSITION_KEYFRAMES, CollaborationConfig, DEFAULT_MORPH_DURATION_MS, DEFAULT_TRANSITION_DURATION_MS, DeviceOrientation, EASE, INSTANT, MOBILE_BREAKPOINT, P14_TRANSITION_KEYFRAMES, P14_TRANSITION_KEYFRAMES_2, P14_TRANSITION_KEYFRAMES_ALL, RANDOM_ELIGIBLE_TYPES, ResolvedDirection, ResolvedDirection8, SLIDE_TRANSITION_KEYFRAMES, SLIDE_TRANSITION_KEYFRAMES_CSS, SlideTransitionAnimations, TABLET_BREAKPOINT, TRANSITION_SPEED_DURATION_MS, TouchGestureCallbacks, VirtualizedRange, WHEEL_SPOKE_COUNTS, computeVirtualRange, getCinematicTransitionAnimations, getP14TransitionAnimations, getSlideTransitionAnimations, resolveDirection, resolveDirection8, resolveOrientation, resolveSlideTransition, resolveTransitionDurationMs, resolveWheelSpokeCount } from 'ooxml-ui/pptx';
3
3
  import { PptxSlide, PptxElement, PptxElementAnimation, TextStyle, PptxHeaderFooter, PptxTheme, PptxSlideMaster, ShapeStyle, PptxCommentMention, SmartArtLayout, InkPptxElement, ShapePptxElement, MergeShapeOperation, PptxSlideTransition, PptxAction, PptxModernCommentAuthor, ParsedTableStyleMap, PptxThemeOption, PptxCustomShow, PptxSection, PptxPresentationProperties, PptxViewProperties, PptxNotesMaster, PptxHandoutMaster, PptxCustomProperty, PptxTagCollection, PptxCoreProperties, PptxAppProperties, PptxEmbeddedFont, MasterViewTab, PptxSlideLayout, PptxHandler, PptxLayoutOption, PptxLayoutPreview, PptxComment, ConnectorPptxElement, PptxThemePreset, PptxThemeColorScheme, PptxThemeFontScheme, PptxData, PptxHandlerSaveOptions, PptxSaveFormat, TextSegment, PptxModifyVerifier } from 'ooxml-core/pptx';
4
4
  import { CollaborationWriteBackState } from 'ooxml-core/collab';
@@ -760,6 +760,11 @@ interface UseElementOperationsInput {
760
760
  inlineEditingElementId: string | null;
761
761
  inlineEditingText: string;
762
762
  inlineEditingSnapshotRef?: React.MutableRefObject<InlineTextEditSnapshot | undefined>;
763
+ /**
764
+ * Host `listConversionScope`: how far a bare caret's Bullets / Numbering reach.
765
+ * Unset keeps the shared default, `'paragraph'` (PowerPoint behaviour).
766
+ */
767
+ listConversionScope?: ListConversionScope | undefined;
763
768
  setContextMenuState: React.Dispatch<React.SetStateAction<ElementContextMenuState | null>>;
764
769
  }
765
770
  interface ElementOperations {
@@ -2093,6 +2098,8 @@ interface UseEditorOperationsInput {
2093
2098
  transformCommittedText?: (text: string, previous?: string) => string;
2094
2099
  /** Host keyboard customisation, forwarded to the Find shortcut. */
2095
2100
  keyboard?: ResolvedKeyboardCustomization;
2101
+ /** Host `listConversionScope`: bare-caret Bullets / Numbering reach; forwarded to the text ops. */
2102
+ listConversionScope?: ListConversionScope;
2096
2103
  }
2097
2104
  interface EditorOperationsResult {
2098
2105
  ops: ElementOperations;
@@ -2427,6 +2434,13 @@ interface UseViewerBuildingBlocksInput extends ViewportFitOptions {
2427
2434
  initialSlide?: number;
2428
2435
  /** As `PowerPointViewer`'s `googleFonts`: the Google Fonts fallback policy (off, or a self-hosted mirror). */
2429
2436
  googleFonts?: GoogleFontsOption;
2437
+ /**
2438
+ * As `PowerPointViewer`'s `listConversionScope`: how far Bullets / Numbering reach from a
2439
+ * bare caret. `'paragraph'` (default, PowerPoint behaviour) changes only the caret's
2440
+ * paragraph; `'list'` (Word / Google Docs behaviour) converts the whole adjacent list when
2441
+ * the caret switches a list paragraph between bullets and numbering.
2442
+ */
2443
+ listConversionScope?: ListConversionScope;
2430
2444
  /**
2431
2445
  * As `PowerPointViewer`'s `allowExternalContent`: `false` fetches no linked
2432
2446
  * http(s) content, `true` allows it, either value locks the Trust Center