@stll/folio-react 0.25.3 → 0.26.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 (26) hide show
  1. package/README.md +1 -1
  2. package/dist/{CommentsSidebar-IR9uTkkk.js → CommentsSidebar-C4IpXib8.js} +53 -33
  3. package/dist/{FindReplaceDialog-BUwFQWaq.js → FindReplaceDialog-LlVMe3EW.js} +148 -107
  4. package/dist/{FootnotePropertiesDialog-6XdO0zBH.js → FootnotePropertiesDialog-D73t3LNP.js} +1 -1
  5. package/dist/ImagePositionDialog-Cwt6R8iM.js +1039 -0
  6. package/dist/ImagePropertiesDialog-GNZLBFLB.js +607 -0
  7. package/dist/{InsertSymbolDialog-Cn_Nifhg.js → InsertSymbolDialog-CeEhkEvc.js} +1 -1
  8. package/dist/PageSetupDialog-DD6IEZAo.js +805 -0
  9. package/dist/SetNumberingValueDialog-CDQGDvP1.js +233 -0
  10. package/dist/TablePropertiesDialog-Vu0HXQz6.js +416 -0
  11. package/dist/{TextContextMenu-Bqth8itn.js → TextContextMenu-DZ3AUFKh.js} +4 -2
  12. package/dist/compat/eigenpal.js +1 -1
  13. package/dist/{dialogs-DZz6gVev.d.ts → dialogs-BENP66Ly.d.ts} +11 -11
  14. package/dist/{dialogs-Dzu4hqRp.js → dialogs-De-oslzU.js} +417 -394
  15. package/dist/dialogs.d.ts +1 -1
  16. package/dist/dialogs.js +8 -8
  17. package/dist/{folio-ui-DO95voaI.js → folio-ui-rCHqCEG6.js} +125 -35
  18. package/dist/index.d.ts +1 -1
  19. package/dist/index.js +10 -10
  20. package/dist/{renderAsync-C0_y_c9Y.js → renderAsync-T2p_qqNU.js} +2843 -2022
  21. package/package.json +4 -4
  22. package/dist/ImagePositionDialog-9q71ka9N.js +0 -1065
  23. package/dist/ImagePropertiesDialog-o79NCGk7.js +0 -613
  24. package/dist/PageSetupDialog-CMdVXCZ-.js +0 -820
  25. package/dist/SetNumberingValueDialog-DOsaSq7e.js +0 -237
  26. package/dist/TablePropertiesDialog-DwPiUj4m.js +0 -421
package/dist/dialogs.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- import { A as HyperlinkDialog, C as ImagePropertiesData, D as ImagePositionDialog, E as ImagePositionData, F as FindReplaceDialog, I as FindReplaceDialogProps, M as HyperlinkDialogProps, N as FootnotePropertiesDialog, O as ImagePositionDialogProps, P as FootnotePropertiesDialogProps, S as InsertImageDialogProps, T as ImagePropertiesDialogProps, _ as InsertTableStyleOption, a as TablePropertiesDialogProps, b as InsertImageDialog, c as SplitCellDialogProps, d as PasteSpecialMode, f as PageSetupDialog, g as InsertTableDialogProps, h as InsertTableDialogData, i as TablePropertiesDialog, j as HyperlinkDialogData, k as HyperlinkBookmarkOption, l as PasteSpecialDialog, m as InsertTableDialog, n as WatermarkDialogProps, o as SplitCellDialog, p as PageSetupDialogProps, r as TableProperties, s as SplitCellDialogData, t as WatermarkDialog, u as PasteSpecialDialogProps, v as InsertSymbolDialog, w as ImagePropertiesDialog, x as InsertImageDialogData, y as InsertSymbolDialogProps } from "./dialogs-DZz6gVev.js";
1
+ import { A as HyperlinkDialog, C as ImagePropertiesData, D as ImagePositionDialog, E as ImagePositionData, F as FindReplaceDialog, I as FindReplaceDialogProps, M as HyperlinkDialogProps, N as FootnotePropertiesDialog, O as ImagePositionDialogProps, P as FootnotePropertiesDialogProps, S as InsertImageDialogProps, T as ImagePropertiesDialogProps, _ as InsertTableStyleOption, a as TablePropertiesDialogProps, b as InsertImageDialog, c as SplitCellDialogProps, d as PasteSpecialMode, f as PageSetupDialog, g as InsertTableDialogProps, h as InsertTableDialogData, i as TablePropertiesDialog, j as HyperlinkDialogData, k as HyperlinkBookmarkOption, l as PasteSpecialDialog, m as InsertTableDialog, n as WatermarkDialogProps, o as SplitCellDialog, p as PageSetupDialogProps, r as TableProperties, s as SplitCellDialogData, t as WatermarkDialog, u as PasteSpecialDialogProps, v as InsertSymbolDialog, w as ImagePropertiesDialog, x as InsertImageDialogData, y as InsertSymbolDialogProps } from "./dialogs-BENP66Ly.js";
2
2
  export { FindReplaceDialog, type FindReplaceDialogProps, FootnotePropertiesDialog, type FootnotePropertiesDialogProps, type HyperlinkBookmarkOption, HyperlinkDialog, type HyperlinkDialogData, type HyperlinkDialogProps, type ImagePositionData, ImagePositionDialog, type ImagePositionDialogProps, type ImagePropertiesData, ImagePropertiesDialog, type ImagePropertiesDialogProps, InsertImageDialog, type InsertImageDialogData, type InsertImageDialogProps, InsertSymbolDialog, type InsertSymbolDialogProps, InsertTableDialog, type InsertTableDialogData, type InsertTableDialogProps, type InsertTableStyleOption, PageSetupDialog, type PageSetupDialogProps, PasteSpecialDialog, type PasteSpecialDialogProps, type PasteSpecialMode, SplitCellDialog, type SplitCellDialogData, type SplitCellDialogProps, type TableProperties, TablePropertiesDialog, type TablePropertiesDialogProps, WatermarkDialog, type WatermarkDialogProps };
package/dist/dialogs.js CHANGED
@@ -1,9 +1,9 @@
1
- import { t as FindReplaceDialog } from "./FindReplaceDialog-BUwFQWaq.js";
2
- import { t as FootnotePropertiesDialog } from "./FootnotePropertiesDialog-6XdO0zBH.js";
3
- import { a as InsertImageDialog, i as InsertTableDialog, n as SplitCellDialog, o as HyperlinkDialog, r as PasteSpecialDialog, t as WatermarkDialog } from "./dialogs-Dzu4hqRp.js";
4
- import { t as ImagePositionDialog } from "./ImagePositionDialog-9q71ka9N.js";
5
- import { t as ImagePropertiesDialog } from "./ImagePropertiesDialog-o79NCGk7.js";
6
- import { t as InsertSymbolDialog } from "./InsertSymbolDialog-Cn_Nifhg.js";
7
- import { t as PageSetupDialog } from "./PageSetupDialog-CMdVXCZ-.js";
8
- import { t as TablePropertiesDialog } from "./TablePropertiesDialog-DwPiUj4m.js";
1
+ import { t as FindReplaceDialog } from "./FindReplaceDialog-LlVMe3EW.js";
2
+ import { t as FootnotePropertiesDialog } from "./FootnotePropertiesDialog-D73t3LNP.js";
3
+ import { a as InsertImageDialog, i as InsertTableDialog, n as SplitCellDialog, o as HyperlinkDialog, r as PasteSpecialDialog, t as WatermarkDialog } from "./dialogs-De-oslzU.js";
4
+ import { t as ImagePositionDialog } from "./ImagePositionDialog-Cwt6R8iM.js";
5
+ import { t as ImagePropertiesDialog } from "./ImagePropertiesDialog-GNZLBFLB.js";
6
+ import { t as InsertSymbolDialog } from "./InsertSymbolDialog-CeEhkEvc.js";
7
+ import { t as PageSetupDialog } from "./PageSetupDialog-DD6IEZAo.js";
8
+ import { t as TablePropertiesDialog } from "./TablePropertiesDialog-Vu0HXQz6.js";
9
9
  export { FindReplaceDialog, FootnotePropertiesDialog, HyperlinkDialog, ImagePositionDialog, ImagePropertiesDialog, InsertImageDialog, InsertSymbolDialog, InsertTableDialog, PageSetupDialog, PasteSpecialDialog, SplitCellDialog, TablePropertiesDialog, WatermarkDialog };
@@ -671,15 +671,21 @@ const DefaultMenu = {
671
671
  function DefaultOutlineRail({ items, scrollContainerRef, resolvePct, onJump, activeId, ariaLabel = "Outline", presentation = "panel" }) {
672
672
  const listRef = useRef(null);
673
673
  const activeIndex = items.findIndex((item) => item.id === activeId);
674
- const [focusIndex, setFocusIndex] = useState(Math.max(0, activeIndex));
674
+ const [focus, setFocus] = useState({
675
+ type: "outside",
676
+ fallbackIndex: Math.max(0, activeIndex)
677
+ });
678
+ const focusIndex = (() => {
679
+ switch (focus.type) {
680
+ case "outside": return activeIndex >= 0 ? activeIndex : focus.fallbackIndex;
681
+ case "inside": return focus.index;
682
+ default: return focus;
683
+ }
684
+ })();
675
685
  const lastIndex = items.length - 1;
676
686
  const clampedFocusIndex = Math.max(0, Math.min(lastIndex, focusIndex));
677
687
  let minLevel = Infinity;
678
688
  for (const item_0 of items) minLevel = Math.min(minLevel, item_0.level);
679
- const focusWithin = useRef(false);
680
- useEffect(() => {
681
- if (!focusWithin.current && activeIndex >= 0) setFocusIndex(activeIndex);
682
- }, [activeIndex]);
683
689
  useEffect(() => {
684
690
  const list = listRef.current;
685
691
  if (!list || presentation !== "panel" || activeIndex < 0) return;
@@ -706,7 +712,10 @@ function DefaultOutlineRail({ items, scrollContainerRef, resolvePct, onJump, act
706
712
  })();
707
713
  if (next === null) return;
708
714
  event.preventDefault();
709
- setFocusIndex(next);
715
+ setFocus({
716
+ type: "inside",
717
+ index: next
718
+ });
710
719
  const buttons = listRef.current?.querySelectorAll("button");
711
720
  if (buttons) [...buttons].at(next)?.focus();
712
721
  }, [clampedFocusIndex, lastIndex]);
@@ -724,12 +733,12 @@ function DefaultOutlineRail({ items, scrollContainerRef, resolvePct, onJump, act
724
733
  "aria-label": ariaLabel,
725
734
  className: rail ? "folio-outline-ticks" : "folio-outline-list",
726
735
  onKeyDown: handleKeyDown,
727
- onFocus: () => {
728
- focusWithin.current = true;
729
- },
730
736
  onBlur: (event_0) => {
731
737
  const next_0 = event_0.relatedTarget;
732
- if (!(next_0 instanceof Node && event_0.currentTarget.contains(next_0))) focusWithin.current = false;
738
+ if (!(next_0 instanceof Node && event_0.currentTarget.contains(next_0))) setFocus({
739
+ type: "outside",
740
+ fallbackIndex: clampedFocusIndex
741
+ });
733
742
  },
734
743
  children: items.map((item_2, index) => {
735
744
  const isActive = item_2.id === activeId;
@@ -743,7 +752,12 @@ function DefaultOutlineRail({ items, scrollContainerRef, resolvePct, onJump, act
743
752
  className: cn(rail ? "folio-outline-tick" : "folio-outline-item", isActive && (rail ? "folio-outline-tick--active" : "folio-outline-item--active")),
744
753
  "data-depth": depth,
745
754
  onClick: () => jump(item_2),
746
- onFocus: () => setFocusIndex(index),
755
+ onFocus: () => {
756
+ setFocus((previous) => previous.type === "inside" && previous.index === index ? previous : {
757
+ type: "inside",
758
+ index
759
+ });
760
+ },
747
761
  tabIndex: index === clampedFocusIndex ? 0 : -1,
748
762
  title: rail ? void 0 : item_2.label,
749
763
  type: "button",
@@ -770,32 +784,108 @@ const TICK_PITCH_PX = 12;
770
784
  * pushed apart so no two ticks share a hit area, and pulled back inside the
771
785
  * rail. When the rail is too short for every tick, they are spread evenly.
772
786
  */
773
- function useRailTickTops({ enabled, items, listRef, resolvePct, scrollContainerRef }) {
774
- const [height, setHeight] = useState(0);
775
- useLayoutEffect(() => {
776
- const list = listRef.current;
777
- if (!enabled || !list) return;
778
- setHeight(list.clientHeight);
779
- const observer = new ResizeObserver(() => setHeight(list.clientHeight));
780
- observer.observe(list);
781
- return () => observer.disconnect();
782
- }, [enabled, listRef]);
783
- if (!enabled || height === 0) return [];
784
- const container = scrollContainerRef.current;
785
- const span = Math.max(0, height - TICK_PITCH_PX);
786
- if (items.length * TICK_PITCH_PX > height) {
787
- const step = items.length > 1 ? span / (items.length - 1) : 0;
788
- return items.map((_, index) => index * step);
787
+ function useRailTickTops(t0) {
788
+ const $ = c(22);
789
+ const { enabled, items, listRef, resolvePct, scrollContainerRef } = t0;
790
+ let t1;
791
+ if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
792
+ t1 = {
793
+ height: 0,
794
+ percentages: []
795
+ };
796
+ $[0] = t1;
797
+ } else t1 = $[0];
798
+ const [measurement, setMeasurement] = useState(t1);
799
+ let t2;
800
+ let t3;
801
+ if ($[1] !== enabled || $[2] !== items || $[3] !== listRef || $[4] !== resolvePct || $[5] !== scrollContainerRef) {
802
+ t2 = () => {
803
+ const list = listRef.current;
804
+ if (!enabled || !list) return;
805
+ const update = () => {
806
+ const container = scrollContainerRef.current;
807
+ const height = list.clientHeight;
808
+ const percentages = items.map((item) => container ? resolvePct(item.id, container) : null);
809
+ setMeasurement((previous) => previous.height === height && previous.percentages.length === percentages.length && previous.percentages.every((value, index) => value === percentages.at(index)) ? previous : {
810
+ height,
811
+ percentages
812
+ });
813
+ };
814
+ update();
815
+ const observer = new ResizeObserver(update);
816
+ observer.observe(list);
817
+ return () => observer.disconnect();
818
+ };
819
+ t3 = [
820
+ enabled,
821
+ items,
822
+ listRef,
823
+ resolvePct,
824
+ scrollContainerRef
825
+ ];
826
+ $[1] = enabled;
827
+ $[2] = items;
828
+ $[3] = listRef;
829
+ $[4] = resolvePct;
830
+ $[5] = scrollContainerRef;
831
+ $[6] = t2;
832
+ $[7] = t3;
833
+ } else {
834
+ t2 = $[6];
835
+ t3 = $[7];
789
836
  }
790
- const tops = items.map((item, index_0) => {
791
- const pct = container ? resolvePct(item.id, container) : null;
792
- return (pct === null ? index_0 / Math.max(1, items.length - 1) : pct / 100) * span;
793
- });
794
- for (let index_1 = 1; index_1 < tops.length; index_1++) tops[index_1] = Math.max(tops[index_1] ?? 0, (tops[index_1 - 1] ?? 0) + TICK_PITCH_PX);
795
- for (let index_2 = tops.length - 1; index_2 >= 0; index_2--) {
796
- const limit = index_2 === tops.length - 1 ? span : (tops[index_2 + 1] ?? span) - TICK_PITCH_PX;
797
- tops[index_2] = Math.min(tops[index_2] ?? 0, limit);
837
+ useLayoutEffect(t2, t3);
838
+ const { height: height_0, percentages: percentages_0 } = measurement;
839
+ if (!enabled || height_0 === 0) {
840
+ let t4;
841
+ if ($[8] === Symbol.for("react.memo_cache_sentinel")) {
842
+ t4 = [];
843
+ $[8] = t4;
844
+ } else t4 = $[8];
845
+ return t4;
846
+ }
847
+ const span = Math.max(0, height_0 - TICK_PITCH_PX);
848
+ if (items.length * TICK_PITCH_PX > height_0) {
849
+ const step = items.length > 1 ? span / (items.length - 1) : 0;
850
+ let t4;
851
+ if ($[9] !== items || $[10] !== step) {
852
+ let t5;
853
+ if ($[12] !== step) {
854
+ t5 = (_, index_0) => index_0 * step;
855
+ $[12] = step;
856
+ $[13] = t5;
857
+ } else t5 = $[13];
858
+ t4 = items.map(t5);
859
+ $[9] = items;
860
+ $[10] = step;
861
+ $[11] = t4;
862
+ } else t4 = $[11];
863
+ return t4;
798
864
  }
865
+ let tops;
866
+ if ($[14] !== items || $[15] !== percentages_0 || $[16] !== span) {
867
+ let t4;
868
+ if ($[18] !== items.length || $[19] !== percentages_0 || $[20] !== span) {
869
+ t4 = (__0, index_1) => {
870
+ const pct = percentages_0.at(index_1) ?? null;
871
+ return (pct === null ? index_1 / Math.max(1, items.length - 1) : pct / 100) * span;
872
+ };
873
+ $[18] = items.length;
874
+ $[19] = percentages_0;
875
+ $[20] = span;
876
+ $[21] = t4;
877
+ } else t4 = $[21];
878
+ tops = items.map(t4);
879
+ for (let index_2 = 1; index_2 < tops.length; index_2++) tops[index_2] = Math.max(tops[index_2] ?? 0, (tops[index_2 - 1] ?? 0) + TICK_PITCH_PX);
880
+ for (let index_3 = tops.length - 1; index_3 >= 0; index_3--) {
881
+ const limit = index_3 === tops.length - 1 ? span : (tops[index_3 + 1] ?? span) - TICK_PITCH_PX;
882
+ tops[index_3] = Math.min(tops[index_3] ?? 0, limit);
883
+ }
884
+ $[14] = items;
885
+ $[15] = percentages_0;
886
+ $[16] = span;
887
+ $[17] = tops;
888
+ } else tops = $[17];
799
889
  return tops;
800
890
  }
801
891
  //#endregion
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { _ as FolioUIProvider, a as DocxEditorApplyDocumentOperationsOptions, c as DocxEditorRef, d as ToolbarProps, f as EditorMode, g as FolioUIComponents, h as FolioButtonProps, i as renderAsync, l as HighlightPassageOptions, m as ColorPreset, n as EditorHandle, o as DocxEditorCollaboration, p as FontOption, r as RenderAsyncOptions, s as DocxEditorProps, t as DocxEditorHandle, u as HighlightPassageResult, v as OutlineItem, y as FontDefinition } from "./renderAsync-JTB5ldQI.js";
2
- import { A as HyperlinkDialog, C as ImagePropertiesData, D as ImagePositionDialog, E as ImagePositionData, F as FindReplaceDialog, I as FindReplaceDialogProps, M as HyperlinkDialogProps, N as FootnotePropertiesDialog, O as ImagePositionDialogProps, P as FootnotePropertiesDialogProps, S as InsertImageDialogProps, T as ImagePropertiesDialogProps, _ as InsertTableStyleOption, a as TablePropertiesDialogProps, b as InsertImageDialog, c as SplitCellDialogProps, d as PasteSpecialMode, f as PageSetupDialog, g as InsertTableDialogProps, h as InsertTableDialogData, i as TablePropertiesDialog, j as HyperlinkDialogData, k as HyperlinkBookmarkOption, l as PasteSpecialDialog, m as InsertTableDialog, n as WatermarkDialogProps, o as SplitCellDialog, p as PageSetupDialogProps, r as TableProperties, s as SplitCellDialogData, t as WatermarkDialog, u as PasteSpecialDialogProps, v as InsertSymbolDialog, w as ImagePropertiesDialog, x as InsertImageDialogData, y as InsertSymbolDialogProps } from "./dialogs-DZz6gVev.js";
2
+ import { A as HyperlinkDialog, C as ImagePropertiesData, D as ImagePositionDialog, E as ImagePositionData, F as FindReplaceDialog, I as FindReplaceDialogProps, M as HyperlinkDialogProps, N as FootnotePropertiesDialog, O as ImagePositionDialogProps, P as FootnotePropertiesDialogProps, S as InsertImageDialogProps, T as ImagePropertiesDialogProps, _ as InsertTableStyleOption, a as TablePropertiesDialogProps, b as InsertImageDialog, c as SplitCellDialogProps, d as PasteSpecialMode, f as PageSetupDialog, g as InsertTableDialogProps, h as InsertTableDialogData, i as TablePropertiesDialog, j as HyperlinkDialogData, k as HyperlinkBookmarkOption, l as PasteSpecialDialog, m as InsertTableDialog, n as WatermarkDialogProps, o as SplitCellDialog, p as PageSetupDialogProps, r as TableProperties, s as SplitCellDialogData, t as WatermarkDialog, u as PasteSpecialDialogProps, v as InsertSymbolDialog, w as ImagePropertiesDialog, x as InsertImageDialogData, y as InsertSymbolDialogProps } from "./dialogs-BENP66Ly.js";
3
3
  import React, { CSSProperties, ReactNode, RefObject } from "react";
4
4
  import { CreateEmptyDocumentOptions, createEmptyDocument } from "@stll/folio-core/utils/createDocument";
5
5
  import { FolioAIBlock, FolioAIBlockAnchor, FolioAIBlockKind, FolioAIBlockPreviewRun, FolioAIComment, FolioAIEditAppliedOperation, FolioAIEditApplyMode, FolioAIEditApplyResult, FolioAIEditOperation, FolioAIEditReviewMeta, FolioAIEditSeverity, FolioAIEditSkipReason, FolioAIEditSkippedOperation, FolioAIEditSnapshot, FolioAISignatureParty, WordDiffSegment, applyFolioAIEditOperations, createFolioAIEditSnapshot, diffWordSegments, hashFolioAIBlockText, normalizeFolioAIBlockText } from "@stll/folio-core/ai-edits";
package/dist/index.js CHANGED
@@ -1,13 +1,13 @@
1
- import { a as formatZoom, c as FormattingBar, d as AutocompleteCaretOverlay, i as clampZoom, l as ZoomControl, n as DocxEditor, o as parseZoom, r as ZOOM_PRESETS, s as useWheelZoom, t as renderAsync } from "./renderAsync-C0_y_c9Y.js";
2
- import { n as FolioUIProvider } from "./folio-ui-DO95voaI.js";
3
- import { t as FindReplaceDialog } from "./FindReplaceDialog-BUwFQWaq.js";
4
- import { t as FootnotePropertiesDialog } from "./FootnotePropertiesDialog-6XdO0zBH.js";
5
- import { a as InsertImageDialog, i as InsertTableDialog, n as SplitCellDialog, o as HyperlinkDialog, r as PasteSpecialDialog, t as WatermarkDialog } from "./dialogs-Dzu4hqRp.js";
6
- import { t as ImagePositionDialog } from "./ImagePositionDialog-9q71ka9N.js";
7
- import { t as ImagePropertiesDialog } from "./ImagePropertiesDialog-o79NCGk7.js";
8
- import { t as InsertSymbolDialog } from "./InsertSymbolDialog-Cn_Nifhg.js";
9
- import { t as PageSetupDialog } from "./PageSetupDialog-CMdVXCZ-.js";
10
- import { t as TablePropertiesDialog } from "./TablePropertiesDialog-DwPiUj4m.js";
1
+ import { a as formatZoom, c as FormattingBar, d as AutocompleteCaretOverlay, i as clampZoom, l as ZoomControl, n as DocxEditor, o as parseZoom, r as ZOOM_PRESETS, s as useWheelZoom, t as renderAsync } from "./renderAsync-T2p_qqNU.js";
2
+ import { n as FolioUIProvider } from "./folio-ui-rCHqCEG6.js";
3
+ import { t as FindReplaceDialog } from "./FindReplaceDialog-LlVMe3EW.js";
4
+ import { t as FootnotePropertiesDialog } from "./FootnotePropertiesDialog-D73t3LNP.js";
5
+ import { a as InsertImageDialog, i as InsertTableDialog, n as SplitCellDialog, o as HyperlinkDialog, r as PasteSpecialDialog, t as WatermarkDialog } from "./dialogs-De-oslzU.js";
6
+ import { t as ImagePositionDialog } from "./ImagePositionDialog-Cwt6R8iM.js";
7
+ import { t as ImagePropertiesDialog } from "./ImagePropertiesDialog-GNZLBFLB.js";
8
+ import { t as InsertSymbolDialog } from "./InsertSymbolDialog-CeEhkEvc.js";
9
+ import { t as PageSetupDialog } from "./PageSetupDialog-DD6IEZAo.js";
10
+ import { t as TablePropertiesDialog } from "./TablePropertiesDialog-Vu0HXQz6.js";
11
11
  import { applyFolioAIEditOperations, createFolioAIEditSnapshot, diffWordSegments, hashFolioAIBlockText, normalizeFolioAIBlockText } from "@stll/folio-core/ai-edits";
12
12
  import { insertImageFromFile, insertPageBreakInView, insertTableInView, insertTableOfContentsInView } from "@stll/folio-core/prosemirror";
13
13
  import { createAICitationDecorationsPlugin, setAICitationsMeta, setActiveCitationMeta } from "@stll/folio-core/prosemirror/plugins/aiCitationDecorations";