@superdoc-dev/mcp 0.3.0-next.87 → 0.3.0-next.89

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 (2) hide show
  1. package/dist/index.js +163 -59
  2. package/package.json +2 -2
package/dist/index.js CHANGED
@@ -51891,7 +51891,7 @@ var init_remark_gfm_BhnWr3yf_es = __esm(() => {
51891
51891
  emptyOptions2 = {};
51892
51892
  });
51893
51893
 
51894
- // ../../packages/superdoc/dist/chunks/SuperConverter-5Idv4fhC.es.js
51894
+ // ../../packages/superdoc/dist/chunks/SuperConverter-CbX9ZPI9.es.js
51895
51895
  function getExtensionConfigField(extension$1, field, context = { name: "" }) {
51896
51896
  const fieldValue = extension$1.config[field];
51897
51897
  if (typeof fieldValue === "function")
@@ -91625,25 +91625,62 @@ var isRegExp = (value) => {
91625
91625
  node2._vMergeConsumed = true;
91626
91626
  }, getTableCellMargins = (inlineMargins, referencedStyles) => {
91627
91627
  const { cellMargins = {} } = referencedStyles;
91628
- return [
91629
- "left",
91630
- "right",
91631
- "top",
91632
- "bottom"
91633
- ].reduce((acc, direction) => {
91634
- const key = `margin${direction.charAt(0).toUpperCase() + direction.slice(1)}`;
91635
- const inlineValue = inlineMargins ? inlineMargins?.[key]?.value : null;
91636
- const styleValue = cellMargins ? cellMargins[key] : null;
91637
- if (inlineValue != null)
91638
- acc[direction] = twipsToPixels(inlineValue);
91639
- else if (styleValue == null)
91640
- acc[direction] = undefined;
91641
- else if (typeof styleValue === "object")
91642
- acc[direction] = twipsToPixels(styleValue.value);
91628
+ const readMargin = (source, key) => {
91629
+ if (!source)
91630
+ return null;
91631
+ const v = source[key];
91632
+ if (v == null)
91633
+ return null;
91634
+ if (typeof v === "number")
91635
+ return v;
91636
+ if (typeof v === "object" && typeof v.value === "number")
91637
+ return v.value;
91638
+ return null;
91639
+ };
91640
+ const sides = [
91641
+ {
91642
+ physical: "top",
91643
+ physicalKey: "marginTop",
91644
+ logicalKey: null
91645
+ },
91646
+ {
91647
+ physical: "bottom",
91648
+ physicalKey: "marginBottom",
91649
+ logicalKey: null
91650
+ },
91651
+ {
91652
+ physical: "left",
91653
+ physicalKey: "marginLeft",
91654
+ logicalKey: "marginStart"
91655
+ },
91656
+ {
91657
+ physical: "right",
91658
+ physicalKey: "marginRight",
91659
+ logicalKey: "marginEnd"
91660
+ }
91661
+ ];
91662
+ const result = {};
91663
+ for (const { physical, physicalKey, logicalKey } of sides) {
91664
+ const inlinePhysical = readMargin(inlineMargins, physicalKey);
91665
+ const inlineLogical = logicalKey ? readMargin(inlineMargins, logicalKey) : null;
91666
+ if (inlinePhysical != null) {
91667
+ result[physical] = twipsToPixels(inlinePhysical);
91668
+ continue;
91669
+ }
91670
+ if (inlineLogical != null) {
91671
+ result[physical] = twipsToPixels(inlineLogical);
91672
+ continue;
91673
+ }
91674
+ const stylePhysical = readMargin(cellMargins, physicalKey);
91675
+ const styleLogical = logicalKey ? readMargin(cellMargins, logicalKey) : null;
91676
+ if (stylePhysical != null)
91677
+ result[physical] = twipsToPixels(stylePhysical);
91678
+ else if (styleLogical != null)
91679
+ result[physical] = twipsToPixels(styleLogical);
91643
91680
  else
91644
- acc[direction] = twipsToPixels(styleValue);
91645
- return acc;
91646
- }, {});
91681
+ result[physical] = undefined;
91682
+ }
91683
+ return result;
91647
91684
  }, PX_PER_PT$1, pxToEighthPoints = (px) => Math.round(px / PX_PER_PT$1 * 8), SIDES, XML_NODE_NAME$30 = "w:tc", SD_NODE_NAME$29 = "tableCell", validXmlAttributes$8, config$29, translator$6, propertyTranslators$9, translator$154, translator$51, translator$68, translator$69, translator$74, translator$157, translator$160, translator$172, translator$177, translator$178, propertyTranslators$8, translator$173, createPlaceholderCell = (gridWidth, reason) => {
91648
91685
  const safeWidth = Number.isFinite(gridWidth) ? gridWidth : 0;
91649
91686
  const noBorder = {
@@ -105344,7 +105381,7 @@ var isRegExp = (value) => {
105344
105381
  state.kern = kernNode.attributes["w:val"];
105345
105382
  }
105346
105383
  }, SuperConverter;
105347
- var init_SuperConverter_5Idv4fhC_es = __esm(() => {
105384
+ var init_SuperConverter_CbX9ZPI9_es = __esm(() => {
105348
105385
  init_rolldown_runtime_Bg48TavK_es();
105349
105386
  init_jszip_C49i9kUs_es();
105350
105387
  init_xml_js_CqGKpaft_es();
@@ -143213,7 +143250,7 @@ var init_SuperConverter_5Idv4fhC_es = __esm(() => {
143213
143250
  };
143214
143251
  });
143215
143252
 
143216
- // ../../packages/superdoc/dist/chunks/create-headless-toolbar-CEUTigkM.es.js
143253
+ // ../../packages/superdoc/dist/chunks/create-headless-toolbar-CbUkXBcM.es.js
143217
143254
  function parseSizeUnit(val = "0") {
143218
143255
  const length = val.toString() || "0";
143219
143256
  const value = Number.parseFloat(length);
@@ -145935,8 +145972,8 @@ var CSS_DIMENSION_REGEX, DOM_SIZE_UNITS, Extension = class Extension2 {
145935
145972
  }
145936
145973
  };
145937
145974
  };
145938
- var init_create_headless_toolbar_CEUTigkM_es = __esm(() => {
145939
- init_SuperConverter_5Idv4fhC_es();
145975
+ var init_create_headless_toolbar_CbUkXBcM_es = __esm(() => {
145976
+ init_SuperConverter_CbX9ZPI9_es();
145940
145977
  init_constants_DrU4EASo_es();
145941
145978
  init_dist_B8HfvhaK_es();
145942
145979
  CSS_DIMENSION_REGEX = /[\d-.]+(\w+)$/;
@@ -147383,7 +147420,7 @@ var init_decrypt_docx_4kQ488M9_es = __esm(() => {
147383
147420
  ]);
147384
147421
  });
147385
147422
 
147386
- // ../../packages/superdoc/dist/chunks/DocxZipper-Dh4RtvcE.es.js
147423
+ // ../../packages/superdoc/dist/chunks/DocxZipper-TPSo9G36.es.js
147387
147424
  function sniffEncoding(u8) {
147388
147425
  if (u8.length >= 2) {
147389
147426
  const b0 = u8[0], b1 = u8[1];
@@ -148043,7 +148080,7 @@ var DOCX = "application/vnd.openxmlformats-officedocument.wordprocessingml.docum
148043
148080
  return `image/${MIME_TYPE_FOR_EXT[detectedType] || detectedType}`;
148044
148081
  }
148045
148082
  }, DocxZipper_default;
148046
- var init_DocxZipper_Dh4RtvcE_es = __esm(() => {
148083
+ var init_DocxZipper_TPSo9G36_es = __esm(() => {
148047
148084
  init_rolldown_runtime_Bg48TavK_es();
148048
148085
  init_jszip_C49i9kUs_es();
148049
148086
  init_xml_js_CqGKpaft_es();
@@ -148098,7 +148135,8 @@ var init_DocxZipper_Dh4RtvcE_es = __esm(() => {
148098
148135
  ]);
148099
148136
  MIME_TYPE_FOR_EXT = {
148100
148137
  tif: "tiff",
148101
- jpg: "jpeg"
148138
+ jpg: "jpeg",
148139
+ svg: "svg+xml"
148102
148140
  };
148103
148141
  FONT_CONTENT_TYPES = {
148104
148142
  odttf: "application/vnd.openxmlformats-officedocument.obfuscatedFont",
@@ -200154,7 +200192,7 @@ var init_remark_gfm_eZN6yzWQ_es = __esm(() => {
200154
200192
  init_remark_gfm_BhnWr3yf_es();
200155
200193
  });
200156
200194
 
200157
- // ../../packages/superdoc/dist/chunks/src-OZOxpRA7.es.js
200195
+ // ../../packages/superdoc/dist/chunks/src-BfDVvw9H.es.js
200158
200196
  function deleteProps(obj, propOrProps) {
200159
200197
  const props = typeof propOrProps === "string" ? [propOrProps] : propOrProps;
200160
200198
  const removeNested = (target, pathParts, index2 = 0) => {
@@ -203077,6 +203115,15 @@ function shallowEqual$2(a2, b$1) {
203077
203115
  return false;
203078
203116
  return true;
203079
203117
  }
203118
+ function isSdtContentFullyLocked(node2) {
203119
+ return node2.attrs.lockMode === "sdtContentLocked";
203120
+ }
203121
+ function findAncestorDepth$1($pos, predicate) {
203122
+ for (let depth = $pos.depth;depth > 0; depth -= 1)
203123
+ if (predicate($pos.node(depth)))
203124
+ return depth;
203125
+ return null;
203126
+ }
203080
203127
  function deleteFromEndOfRun(state, dispatch, $pos) {
203081
203128
  const rightRun = state.doc.nodeAt($pos.pos + 1);
203082
203129
  const $afterRightRunPos = state.doc.resolve($pos.pos + 2 + rightRun.nodeSize);
@@ -267875,6 +267922,35 @@ var Node$13 = class Node$14 {
267875
267922
  dispatch(tr.scrollIntoView());
267876
267923
  }
267877
267924
  return true;
267925
+ }, deleteBlockSdtAtTextBlockStart = () => ({ state, dispatch }) => {
267926
+ const { selection } = state;
267927
+ if (!selection.empty)
267928
+ return false;
267929
+ const { $from } = selection;
267930
+ const sdtDepth = findAncestorDepth$1($from, (node2) => node2.type.name === "structuredContentBlock");
267931
+ if (sdtDepth == null)
267932
+ return false;
267933
+ const textblockDepth = findAncestorDepth$1($from, (node2) => node2.isTextblock);
267934
+ if (textblockDepth !== sdtDepth + 1)
267935
+ return false;
267936
+ if ($from.node(textblockDepth).type.name !== "paragraph")
267937
+ return false;
267938
+ if ($from.pos !== $from.start(textblockDepth))
267939
+ return false;
267940
+ if ($from.before(textblockDepth) !== $from.start(sdtDepth))
267941
+ return false;
267942
+ const sdtNode = $from.node(sdtDepth);
267943
+ if (sdtNode.attrs.lockMode === "sdtLocked")
267944
+ return false;
267945
+ if (isSdtContentFullyLocked(sdtNode))
267946
+ return true;
267947
+ if (dispatch) {
267948
+ const from$1 = $from.before(sdtDepth);
267949
+ const tr = state.tr.delete(from$1, from$1 + sdtNode.nodeSize);
267950
+ const selectionPos = Math.min(from$1, tr.doc.content.size);
267951
+ dispatch(tr.setSelection(Selection.near(tr.doc.resolve(selectionPos), -1)).scrollIntoView());
267952
+ }
267953
+ return true;
267878
267954
  }, deleteSkipEmptyRun = () => ({ state, dispatch }) => {
267879
267955
  const sel = state.selection;
267880
267956
  if (!sel.empty)
@@ -276368,6 +276444,7 @@ var Node$13 = class Node$14 {
276368
276444
  tr.setMeta("inputType", "deleteContentBackward");
276369
276445
  return false;
276370
276446
  },
276447
+ () => commands$1.deleteBlockSdtAtTextBlockStart(),
276371
276448
  () => commands$1.backspaceEmptyRunParagraph(),
276372
276449
  () => commands$1.backspaceSkipEmptyRun(),
276373
276450
  () => commands$1.backspaceAtomBefore(),
@@ -276382,6 +276459,7 @@ var Node$13 = class Node$14 {
276382
276459
  const { view } = editor;
276383
276460
  dispatchHistoryBoundary(view);
276384
276461
  return editor.commands.first(({ commands: commands$1 }) => [
276462
+ () => commands$1.deleteBlockSdtAtTextBlockStart(),
276385
276463
  () => commands$1.deleteSkipEmptyRun(),
276386
276464
  () => commands$1.deleteAtomAfter(),
276387
276465
  () => commands$1.deleteNextToRun(),
@@ -288357,11 +288435,10 @@ menclose::after {
288357
288435
  }, EMPTY_CHART_DATA, hydrateTableStyleAttrs = (tableNode, context, effectiveStyleId) => {
288358
288436
  const hydration = {};
288359
288437
  const tableProps = tableNode.attrs?.tableProperties ?? null;
288360
- const isRtlTable$1 = tableProps?.rightToLeft === true;
288361
288438
  let inlineBorders;
288362
288439
  let inlinePadding;
288363
288440
  if (tableProps) {
288364
- const padding = convertCellMarginsToPx(tableProps.cellMargins, isRtlTable$1);
288441
+ const padding = convertCellMarginsToPx(tableProps.cellMargins);
288365
288442
  if (padding)
288366
288443
  inlinePadding = normalizeCellPaddingTopBottom(padding);
288367
288444
  if (tableProps.borders && typeof tableProps.borders === "object")
@@ -288392,7 +288469,7 @@ menclose::after {
288392
288469
  } else if (inlineBorders)
288393
288470
  hydration.borders = inlineBorders;
288394
288471
  if (resolved.cellMargins) {
288395
- const stylePadding = convertCellMarginsToPx(resolved.cellMargins, isRtlTable$1);
288472
+ const stylePadding = convertCellMarginsToPx(resolved.cellMargins);
288396
288473
  if (stylePadding) {
288397
288474
  const normalizedStylePadding = normalizeCellPaddingTopBottom(stylePadding);
288398
288475
  hydration.cellPadding = inlinePadding ? {
@@ -288458,7 +288535,7 @@ menclose::after {
288458
288535
  ...border,
288459
288536
  size: size$1
288460
288537
  } : border;
288461
- }, convertCellMarginsToPx = (margins, isRtlTable$1 = false) => {
288538
+ }, convertCellMarginsToPx = (margins) => {
288462
288539
  if (!margins || typeof margins !== "object")
288463
288540
  return;
288464
288541
  const spacing = {};
@@ -288471,8 +288548,8 @@ menclose::after {
288471
288548
  marginBottom: "bottom",
288472
288549
  marginLeft: "left",
288473
288550
  marginRight: "right",
288474
- marginStart: isRtlTable$1 ? "right" : "left",
288475
- marginEnd: isRtlTable$1 ? "left" : "right"
288551
+ marginStart: "left",
288552
+ marginEnd: "right"
288476
288553
  };
288477
288554
  Object.entries(margins).forEach(([key2, value]) => {
288478
288555
  const side = keyMap[key2];
@@ -293958,18 +294035,18 @@ menclose::after {
293958
294035
  return;
293959
294036
  console.log(...args$1);
293960
294037
  }, HEADER_FOOTER_INIT_BUDGET_MS = 200, MAX_ZOOM_WARNING_THRESHOLD = 10, MAX_SELECTION_RECTS_PER_USER = 100, SEMANTIC_RESIZE_DEBOUNCE_MS = 120, MIN_SEMANTIC_CONTENT_WIDTH_PX = 1, GLOBAL_PERFORMANCE, PresentationEditor, ICONS, TEXTS, tableActionsOptions;
293961
- var init_src_OZOxpRA7_es = __esm(() => {
294038
+ var init_src_BfDVvw9H_es = __esm(() => {
293962
294039
  init_rolldown_runtime_Bg48TavK_es();
293963
- init_SuperConverter_5Idv4fhC_es();
294040
+ init_SuperConverter_CbX9ZPI9_es();
293964
294041
  init_jszip_C49i9kUs_es();
293965
294042
  init_uuid_qzgm05fK_es();
293966
- init_create_headless_toolbar_CEUTigkM_es();
294043
+ init_create_headless_toolbar_CbUkXBcM_es();
293967
294044
  init_constants_DrU4EASo_es();
293968
294045
  init_dist_B8HfvhaK_es();
293969
294046
  init_unified_Dsuw2be5_es();
293970
294047
  init_remark_gfm_BhnWr3yf_es();
293971
294048
  init_remark_stringify_6MMJfY0k_es();
293972
- init_DocxZipper_Dh4RtvcE_es();
294049
+ init_DocxZipper_TPSo9G36_es();
293973
294050
  init__plugin_vue_export_helper_HmhZBO0u_es();
293974
294051
  init_eventemitter3_UwU_CLPU_es();
293975
294052
  init_errors_C_DoKMoN_es();
@@ -296731,6 +296808,7 @@ ${err.toString()}`);
296731
296808
  decreaseListIndent: () => decreaseListIndent,
296732
296809
  decreaseTextIndent: () => decreaseTextIndent,
296733
296810
  deleteAtomAfter: () => deleteAtomAfter,
296811
+ deleteBlockSdtAtTextBlockStart: () => deleteBlockSdtAtTextBlockStart,
296734
296812
  deleteNextToRun: () => deleteNextToRun,
296735
296813
  deleteSelection: () => deleteSelection$1,
296736
296814
  deleteSkipEmptyRun: () => deleteSkipEmptyRun,
@@ -332004,11 +332082,11 @@ function print() { __p += __j.call(arguments, '') }
332004
332082
  ];
332005
332083
  });
332006
332084
 
332007
- // ../../packages/superdoc/dist/chunks/create-super-doc-ui-BGYHCZ5O.es.js
332085
+ // ../../packages/superdoc/dist/chunks/create-super-doc-ui-CkcWwDom.es.js
332008
332086
  var MOD_ALIASES, ALT_ALIASES, CTRL_ALIASES, SHIFT_ALIASES, BUILTIN_CONTEXT_MENU_GROUPS, BUILTIN_GROUP_ORDER, RESERVED_PROXY_PROPERTY_NAMES, ALL_TOOLBAR_COMMAND_IDS, EMPTY_ACTIVE_IDS;
332009
- var init_create_super_doc_ui_BGYHCZ5O_es = __esm(() => {
332010
- init_SuperConverter_5Idv4fhC_es();
332011
- init_create_headless_toolbar_CEUTigkM_es();
332087
+ var init_create_super_doc_ui_CkcWwDom_es = __esm(() => {
332088
+ init_SuperConverter_CbX9ZPI9_es();
332089
+ init_create_headless_toolbar_CbUkXBcM_es();
332012
332090
  MOD_ALIASES = new Set([
332013
332091
  "Mod",
332014
332092
  "Meta",
@@ -332050,16 +332128,16 @@ var init_zipper_BxRAi0_5_es = __esm(() => {
332050
332128
 
332051
332129
  // ../../packages/superdoc/dist/super-editor.es.js
332052
332130
  var init_super_editor_es = __esm(() => {
332053
- init_src_OZOxpRA7_es();
332054
- init_SuperConverter_5Idv4fhC_es();
332131
+ init_src_BfDVvw9H_es();
332132
+ init_SuperConverter_CbX9ZPI9_es();
332055
332133
  init_jszip_C49i9kUs_es();
332056
332134
  init_xml_js_CqGKpaft_es();
332057
- init_create_headless_toolbar_CEUTigkM_es();
332135
+ init_create_headless_toolbar_CbUkXBcM_es();
332058
332136
  init_constants_DrU4EASo_es();
332059
332137
  init_dist_B8HfvhaK_es();
332060
332138
  init_unified_Dsuw2be5_es();
332061
- init_DocxZipper_Dh4RtvcE_es();
332062
- init_create_super_doc_ui_BGYHCZ5O_es();
332139
+ init_DocxZipper_TPSo9G36_es();
332140
+ init_create_super_doc_ui_CkcWwDom_es();
332063
332141
  init_ui_CGB3qmy3_es();
332064
332142
  init_eventemitter3_UwU_CLPU_es();
332065
332143
  init_errors_C_DoKMoN_es();
@@ -395476,21 +395554,47 @@ var getTableCellVMerge2 = (node4) => {
395476
395554
  }
395477
395555
  }, getTableCellMargins2 = (inlineMargins, referencedStyles) => {
395478
395556
  const { cellMargins = {} } = referencedStyles;
395479
- return ["left", "right", "top", "bottom"].reduce((acc, direction) => {
395480
- const key2 = `margin${direction.charAt(0).toUpperCase() + direction.slice(1)}`;
395481
- const inlineValue = inlineMargins ? inlineMargins?.[key2]?.value : null;
395482
- const styleValue = cellMargins ? cellMargins[key2] : null;
395483
- if (inlineValue != null) {
395484
- acc[direction] = twipsToPixels4(inlineValue);
395485
- } else if (styleValue == null) {
395486
- acc[direction] = undefined;
395487
- } else if (typeof styleValue === "object") {
395488
- acc[direction] = twipsToPixels4(styleValue.value);
395557
+ const readMargin = (source, key2) => {
395558
+ if (!source)
395559
+ return null;
395560
+ const v = source[key2];
395561
+ if (v == null)
395562
+ return null;
395563
+ if (typeof v === "number")
395564
+ return v;
395565
+ if (typeof v === "object" && typeof v.value === "number")
395566
+ return v.value;
395567
+ return null;
395568
+ };
395569
+ const sides = [
395570
+ { physical: "top", physicalKey: "marginTop", logicalKey: null },
395571
+ { physical: "bottom", physicalKey: "marginBottom", logicalKey: null },
395572
+ { physical: "left", physicalKey: "marginLeft", logicalKey: "marginStart" },
395573
+ { physical: "right", physicalKey: "marginRight", logicalKey: "marginEnd" }
395574
+ ];
395575
+ const result = {};
395576
+ for (const { physical, physicalKey, logicalKey } of sides) {
395577
+ const inlinePhysical = readMargin(inlineMargins, physicalKey);
395578
+ const inlineLogical = logicalKey ? readMargin(inlineMargins, logicalKey) : null;
395579
+ if (inlinePhysical != null) {
395580
+ result[physical] = twipsToPixels4(inlinePhysical);
395581
+ continue;
395582
+ }
395583
+ if (inlineLogical != null) {
395584
+ result[physical] = twipsToPixels4(inlineLogical);
395585
+ continue;
395586
+ }
395587
+ const stylePhysical = readMargin(cellMargins, physicalKey);
395588
+ const styleLogical = logicalKey ? readMargin(cellMargins, logicalKey) : null;
395589
+ if (stylePhysical != null) {
395590
+ result[physical] = twipsToPixels4(stylePhysical);
395591
+ } else if (styleLogical != null) {
395592
+ result[physical] = twipsToPixels4(styleLogical);
395489
395593
  } else {
395490
- acc[direction] = twipsToPixels4(styleValue);
395594
+ result[physical] = undefined;
395491
395595
  }
395492
- return acc;
395493
- }, {});
395596
+ }
395597
+ return result;
395494
395598
  };
395495
395599
  var init_legacy_handle_table_cell_node = __esm(() => {
395496
395600
  init_helpers();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@superdoc-dev/mcp",
3
- "version": "0.3.0-next.87",
3
+ "version": "0.3.0-next.89",
4
4
  "type": "module",
5
5
  "engines": {
6
6
  "node": ">=20"
@@ -19,8 +19,8 @@
19
19
  "@types/bun": "^1.3.8",
20
20
  "@types/node": "22.19.2",
21
21
  "typescript": "^5.9.2",
22
- "@superdoc/super-editor": "0.0.1",
23
22
  "@superdoc/document-api": "0.0.1",
23
+ "@superdoc/super-editor": "0.0.1",
24
24
  "superdoc": "1.32.0"
25
25
  },
26
26
  "publishConfig": {