@superdoc-dev/mcp 0.12.0-next.40 → 0.12.0-next.42

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 +380 -73
  2. package/package.json +3 -3
package/dist/index.js CHANGED
@@ -50479,7 +50479,7 @@ var init_remark_gfm_BUJjZJLy_es = __esm(() => {
50479
50479
  emptyOptions2 = {};
50480
50480
  });
50481
50481
 
50482
- // ../../packages/superdoc/dist/chunks/SuperConverter-DVjSc-AY.es.js
50482
+ // ../../packages/superdoc/dist/chunks/SuperConverter-Du0apG1R.es.js
50483
50483
  function getExtensionConfigField(extension$1, field, context = { name: "" }) {
50484
50484
  const fieldValue = extension$1.config[field];
50485
50485
  if (typeof fieldValue === "function")
@@ -84635,6 +84635,17 @@ function translateDrawingMLTextbox(params) {
84635
84635
  if (!drawingContent || !shapeTextbox)
84636
84636
  return null;
84637
84637
  const drawing = carbonCopy(drawingContent);
84638
+ const { width: pxWidth, height: pxHeight, marginOffset } = node2.attrs ?? {};
84639
+ if (pxWidth != null || pxHeight != null) {
84640
+ const emuCx = pxWidth != null ? String(pixelsToEmu(pxWidth)) : null;
84641
+ const emuCy = pxHeight != null ? String(pixelsToEmu(pxHeight)) : null;
84642
+ patchNodeAttributes(drawing, "wp:extent", emuCx, emuCy);
84643
+ patchShapeGeometryExt(drawing, emuCx, emuCy);
84644
+ }
84645
+ if (marginOffset?.horizontal != null)
84646
+ patchPositionOffset(drawing, "wp:positionH", String(pixelsToEmu(marginOffset.horizontal)));
84647
+ if (marginOffset?.top != null)
84648
+ patchPositionOffset(drawing, "wp:positionV", String(pixelsToEmu(marginOffset.top)));
84638
84649
  const liveParagraphs = translateChildNodes({
84639
84650
  ...params,
84640
84651
  node: shapeTextbox
@@ -84666,6 +84677,67 @@ function findTextboxContentNode(node2) {
84666
84677
  }
84667
84678
  return null;
84668
84679
  }
84680
+ function patchPositionOffset(node2, posNodeName, emuValue) {
84681
+ if (!node2 || typeof node2 !== "object")
84682
+ return false;
84683
+ if (node2.name === posNodeName && Array.isArray(node2.elements)) {
84684
+ const offsetEl = node2.elements.find((el) => el.name === "wp:posOffset");
84685
+ if (offsetEl && Array.isArray(offsetEl.elements) && offsetEl.elements.length > 0) {
84686
+ offsetEl.elements[0].text = emuValue;
84687
+ return true;
84688
+ }
84689
+ return false;
84690
+ }
84691
+ if (!Array.isArray(node2.elements))
84692
+ return false;
84693
+ for (const child of node2.elements)
84694
+ if (patchPositionOffset(child, posNodeName, emuValue))
84695
+ return true;
84696
+ return false;
84697
+ }
84698
+ function patchShapeGeometryExt(root2, cx, cy) {
84699
+ const PATH = [
84700
+ "wp:anchor",
84701
+ "a:graphic",
84702
+ "a:graphicData",
84703
+ "wps:wsp",
84704
+ "wps:spPr",
84705
+ "a:xfrm",
84706
+ "a:ext"
84707
+ ];
84708
+ let node2 = root2;
84709
+ for (const name of PATH) {
84710
+ if (!node2 || !Array.isArray(node2.elements))
84711
+ return false;
84712
+ node2 = node2.elements.find((el) => el.name === name) ?? null;
84713
+ if (!node2)
84714
+ return false;
84715
+ }
84716
+ if (!node2.attributes)
84717
+ node2.attributes = {};
84718
+ if (cx != null)
84719
+ node2.attributes.cx = cx;
84720
+ if (cy != null)
84721
+ node2.attributes.cy = cy;
84722
+ return true;
84723
+ }
84724
+ function patchNodeAttributes(node2, targetName, cx, cy) {
84725
+ if (!node2 || typeof node2 !== "object")
84726
+ return false;
84727
+ if (node2.name === targetName && node2.attributes) {
84728
+ if (cx != null)
84729
+ node2.attributes.cx = cx;
84730
+ if (cy != null)
84731
+ node2.attributes.cy = cy;
84732
+ return true;
84733
+ }
84734
+ if (!Array.isArray(node2.elements))
84735
+ return false;
84736
+ for (const child of node2.elements)
84737
+ if (patchNodeAttributes(child, targetName, cx, cy))
84738
+ return true;
84739
+ return false;
84740
+ }
84669
84741
  function translateShapeContainer(params) {
84670
84742
  const { node: node2 } = params;
84671
84743
  if (node2?.attrs?.drawingContent) {
@@ -84724,6 +84796,10 @@ function buildShapeStyle(attrs) {
84724
84796
  style["mso-position-vertical"] = attrs.anchorData.alignV;
84725
84797
  if (attrs.anchorData?.vRelativeFrom)
84726
84798
  style["mso-position-vertical-relative"] = attrs.anchorData.vRelativeFrom;
84799
+ if (attrs.width != null)
84800
+ style["width"] = `${convertToPt$2(attrs.width)}pt`;
84801
+ if (attrs.height != null)
84802
+ style["height"] = `${convertToPt$2(attrs.height)}pt`;
84727
84803
  const entries = Object.entries(style);
84728
84804
  if (entries.length === 0)
84729
84805
  return;
@@ -118480,7 +118556,7 @@ Docs: https://docs.superdoc.dev/getting-started/fonts`);
118480
118556
  state.kern = kernNode.attributes["w:val"];
118481
118557
  }
118482
118558
  }, SuperConverter;
118483
- var init_SuperConverter_DVjSc_AY_es = __esm(() => {
118559
+ var init_SuperConverter_Du0apG1R_es = __esm(() => {
118484
118560
  init_rolldown_runtime_Bg48TavK_es();
118485
118561
  init_jszip_C49i9kUs_es();
118486
118562
  init_xml_js_CqGKpaft_es();
@@ -147489,7 +147565,7 @@ var init_SuperConverter_DVjSc_AY_es = __esm(() => {
147489
147565
  };
147490
147566
  });
147491
147567
 
147492
- // ../../packages/superdoc/dist/chunks/create-headless-toolbar-DYtdH4mX.es.js
147568
+ // ../../packages/superdoc/dist/chunks/create-headless-toolbar-BNcguDpP.es.js
147493
147569
  function parseSizeUnit(val = "0") {
147494
147570
  const length = val.toString() || "0";
147495
147571
  const value = Number.parseFloat(length);
@@ -158232,9 +158308,9 @@ var CSS_DIMENSION_REGEX, DOM_SIZE_UNITS, MARK_KEYS, STEP_OP_CATALOG_UNFROZEN, PU
158232
158308
  }
158233
158309
  };
158234
158310
  };
158235
- var init_create_headless_toolbar_DYtdH4mX_es = __esm(() => {
158311
+ var init_create_headless_toolbar_BNcguDpP_es = __esm(() => {
158236
158312
  init_rolldown_runtime_Bg48TavK_es();
158237
- init_SuperConverter_DVjSc_AY_es();
158313
+ init_SuperConverter_Du0apG1R_es();
158238
158314
  init_jszip_C49i9kUs_es();
158239
158315
  init_uuid_B2wVPhPi_es();
158240
158316
  init_constants_D9qj59G2_es();
@@ -213849,7 +213925,7 @@ var init_remark_gfm_DCND_V_3_es = __esm(() => {
213849
213925
  init_remark_gfm_BUJjZJLy_es();
213850
213926
  });
213851
213927
 
213852
- // ../../packages/superdoc/dist/chunks/src-DX3B_Otx.es.js
213928
+ // ../../packages/superdoc/dist/chunks/src-DfMY3HP9.es.js
213853
213929
  function deleteProps(obj, propOrProps) {
213854
213930
  const props = typeof propOrProps === "string" ? [propOrProps] : propOrProps;
213855
213931
  const removeNested = (target, pathParts, index2 = 0) => {
@@ -263010,6 +263086,13 @@ function computeHeaderFooterContentHash(blocks2) {
263010
263086
  if ("pageNumberFieldFormat" in run2 && run2.pageNumberFieldFormat)
263011
263087
  parts.push(`pnf:${JSON.stringify(run2.pageNumberFieldFormat)}`);
263012
263088
  }
263089
+ if (block.kind === "drawing") {
263090
+ const drawing = block;
263091
+ if ("geometry" in drawing && drawing.geometry)
263092
+ parts.push(`g:${drawing.geometry.width ?? 0}x${drawing.geometry.height ?? 0}`);
263093
+ if (drawing.anchor)
263094
+ parts.push(`a:${drawing.anchor.offsetH ?? 0},${drawing.anchor.offsetV ?? 0}`);
263095
+ }
263013
263096
  }
263014
263097
  return parts.join("|");
263015
263098
  }
@@ -267649,6 +267732,13 @@ function renderRemoteCursors(options) {
267649
267732
  options.remoteCursorElements.delete(clientId);
267650
267733
  }
267651
267734
  });
267735
+ options.remoteCursorOverlay?.querySelectorAll(".presentation-editor__remote-selection[data-client-id]")?.forEach((selectionEl) => {
267736
+ const clientIdAttr = selectionEl.getAttribute("data-client-id");
267737
+ if (clientIdAttr === null)
267738
+ return;
267739
+ if (!visibleClientIds.has(Number(clientIdAttr)))
267740
+ selectionEl.remove();
267741
+ });
267652
267742
  }
267653
267743
  function renderRemoteCaret(options) {
267654
267744
  const caretLayout = options.computeCaretLayoutRect(options.cursor.head);
@@ -273541,7 +273631,7 @@ async function measureDrawingBlock(block, constraints) {
273541
273631
  const rotatedBounds = calculateRotatedBounds(geometry);
273542
273632
  const naturalWidth = Math.max(1, rotatedBounds.width);
273543
273633
  const naturalHeight = Math.max(1, rotatedBounds.height);
273544
- const isFloating = block.wrap?.type === "None";
273634
+ const isFloating = block.wrap?.type === "None" || block.anchor?.isAnchored === true;
273545
273635
  const maxWidth = fullWidthMax ?? (constraints.maxWidth > 0 && !isFloating ? constraints.maxWidth : naturalWidth);
273546
273636
  const maxHeight = block.anchor?.isAnchored && (typeof block.anchor?.offsetV === "number" && block.anchor.offsetV < 0 || typeof block.margin?.top === "number" && block.margin.top < 0) || !constraints.maxHeight || constraints.maxHeight <= 0 ? Infinity : constraints.maxHeight;
273547
273637
  const widthScale = maxWidth / naturalWidth;
@@ -288036,7 +288126,7 @@ var Node$13 = class Node$14 {
288036
288126
  if (!target || !target.classList)
288037
288127
  return;
288038
288128
  target.classList.add(STYLE_ISOLATION_CLASS);
288039
- }, _hoisted_1$23, _hoisted_2$18, _hoisted_3$14, _hoisted_4$10, _hoisted_5$9, Mentions_default, popoverPluginKey, PopoverPlugin, Popover = class {
288129
+ }, _hoisted_1$24, _hoisted_2$18, _hoisted_3$14, _hoisted_4$10, _hoisted_5$9, Mentions_default, popoverPluginKey, PopoverPlugin, Popover = class {
288040
288130
  constructor(view, editor) {
288041
288131
  this.editor = editor;
288042
288132
  this.view = view;
@@ -289787,7 +289877,7 @@ var Node$13 = class Node$14 {
289787
289877
  </linearGradient>
289788
289878
  </defs>
289789
289879
  <path fill="url(#gradient)" d="M440 6.5L24 246.4c-34.4 19.9-31.1 70.8 5.7 85.9L144 379.6V464c0 46.4 59.2 65.5 86.6 28.6l43.8-59.1 111.9 46.2c5.9 2.4 12.1 3.6 18.3 3.6 8.2 0 16.3-2.1 23.6-6.2 12.8-7.2 21.6-20 23.9-34.5l59.4-387.2c6.1-40.1-36.9-68.8-71.5-48.9zM192 464v-64.6l36.6 15.1L192 464zm212.6-28.7l-153.8-63.5L391 169.5c10.7-15.5-9.5-33.5-23.7-21.2L155.8 332.6 48 288 464 48l-59.4 387.3z"/>
289790
- </svg>`, _hoisted_1$22, _hoisted_2$17, _hoisted_3$13, _hoisted_4$9, _hoisted_5$8, AIWriter_default, isHighContrastMode, bold_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M0 64C0 46.3 14.3 32 32 32l48 0 16 0 128 0c70.7 0 128 57.3 128 128c0 31.3-11.3 60.1-30 82.3c37.1 22.4 62 63.1 62 109.7c0 70.7-57.3 128-128 128L96 480l-16 0-48 0c-17.7 0-32-14.3-32-32s14.3-32 32-32l16 0 0-160L48 96 32 96C14.3 96 0 81.7 0 64zM224 224c35.3 0 64-28.7 64-64s-28.7-64-64-64L112 96l0 128 112 0zM112 288l0 128 144 0c35.3 0 64-28.7 64-64s-28.7-64-64-64l-32 0-112 0z"/></svg>', italic_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M128 64c0-17.7 14.3-32 32-32l192 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-58.7 0L160 416l64 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 480c-17.7 0-32-14.3-32-32s14.3-32 32-32l58.7 0L224 96l-64 0c-17.7 0-32-14.3-32-32z"/></svg>', underline_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M16 64c0-17.7 14.3-32 32-32l96 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-16 0 0 128c0 53 43 96 96 96s96-43 96-96l0-128-16 0c-17.7 0-32-14.3-32-32s14.3-32 32-32l96 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-16 0 0 128c0 88.4-71.6 160-160 160s-160-71.6-160-160L64 96 48 96C30.3 96 16 81.7 16 64zM0 448c0-17.7 14.3-32 32-32l384 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 480c-17.7 0-32-14.3-32-32z"/></svg>', list_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M40 48C26.7 48 16 58.7 16 72l0 48c0 13.3 10.7 24 24 24l48 0c13.3 0 24-10.7 24-24l0-48c0-13.3-10.7-24-24-24L40 48zM192 64c-17.7 0-32 14.3-32 32s14.3 32 32 32l288 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L192 64zm0 160c-17.7 0-32 14.3-32 32s14.3 32 32 32l288 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-288 0zm0 160c-17.7 0-32 14.3-32 32s14.3 32 32 32l288 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-288 0zM16 232l0 48c0 13.3 10.7 24 24 24l48 0c13.3 0 24-10.7 24-24l0-48c0-13.3-10.7-24-24-24l-48 0c-13.3 0-24 10.7-24 24zM40 368c-13.3 0-24 10.7-24 24l0 48c0 13.3 10.7 24 24 24l48 0c13.3 0 24-10.7 24-24l0-48c0-13.3-10.7-24-24-24l-48 0z"/></svg>', list_circle_solid_default = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc. (bullet shapes modified)--><path fill-rule="evenodd" d="M192 64c-17.7 0-32 14.3-32 32s14.3 32 32 32l288 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L192 64zm0 160c-17.7 0-32 14.3-32 32s14.3 32 32 32l288 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-288 0zm0 160c-17.7 0-32 14.3-32 32s14.3 32 32 32l288 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-288 0zM64 48 A48 48 0 1 0 64 144 A48 48 0 1 0 64 48 Z M64 68 A28 28 0 1 1 64 124 A28 28 0 1 1 64 68 Z M64 208 A48 48 0 1 0 64 304 A48 48 0 1 0 64 208 Z M64 228 A28 28 0 1 1 64 284 A28 28 0 1 1 64 228 Z M64 368 A48 48 0 1 0 64 464 A48 48 0 1 0 64 368 Z M64 388 A28 28 0 1 1 64 444 A28 28 0 1 1 64 388 Z"/></svg>
289880
+ </svg>`, _hoisted_1$23, _hoisted_2$17, _hoisted_3$13, _hoisted_4$9, _hoisted_5$8, AIWriter_default, isHighContrastMode, bold_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M0 64C0 46.3 14.3 32 32 32l48 0 16 0 128 0c70.7 0 128 57.3 128 128c0 31.3-11.3 60.1-30 82.3c37.1 22.4 62 63.1 62 109.7c0 70.7-57.3 128-128 128L96 480l-16 0-48 0c-17.7 0-32-14.3-32-32s14.3-32 32-32l16 0 0-160L48 96 32 96C14.3 96 0 81.7 0 64zM224 224c35.3 0 64-28.7 64-64s-28.7-64-64-64L112 96l0 128 112 0zM112 288l0 128 144 0c35.3 0 64-28.7 64-64s-28.7-64-64-64l-32 0-112 0z"/></svg>', italic_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M128 64c0-17.7 14.3-32 32-32l192 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-58.7 0L160 416l64 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 480c-17.7 0-32-14.3-32-32s14.3-32 32-32l58.7 0L224 96l-64 0c-17.7 0-32-14.3-32-32z"/></svg>', underline_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M16 64c0-17.7 14.3-32 32-32l96 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-16 0 0 128c0 53 43 96 96 96s96-43 96-96l0-128-16 0c-17.7 0-32-14.3-32-32s14.3-32 32-32l96 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-16 0 0 128c0 88.4-71.6 160-160 160s-160-71.6-160-160L64 96 48 96C30.3 96 16 81.7 16 64zM0 448c0-17.7 14.3-32 32-32l384 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 480c-17.7 0-32-14.3-32-32z"/></svg>', list_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M40 48C26.7 48 16 58.7 16 72l0 48c0 13.3 10.7 24 24 24l48 0c13.3 0 24-10.7 24-24l0-48c0-13.3-10.7-24-24-24L40 48zM192 64c-17.7 0-32 14.3-32 32s14.3 32 32 32l288 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L192 64zm0 160c-17.7 0-32 14.3-32 32s14.3 32 32 32l288 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-288 0zm0 160c-17.7 0-32 14.3-32 32s14.3 32 32 32l288 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-288 0zM16 232l0 48c0 13.3 10.7 24 24 24l48 0c13.3 0 24-10.7 24-24l0-48c0-13.3-10.7-24-24-24l-48 0c-13.3 0-24 10.7-24 24zM40 368c-13.3 0-24 10.7-24 24l0 48c0 13.3 10.7 24 24 24l48 0c13.3 0 24-10.7 24-24l0-48c0-13.3-10.7-24-24-24l-48 0z"/></svg>', list_circle_solid_default = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc. (bullet shapes modified)--><path fill-rule="evenodd" d="M192 64c-17.7 0-32 14.3-32 32s14.3 32 32 32l288 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L192 64zm0 160c-17.7 0-32 14.3-32 32s14.3 32 32 32l288 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-288 0zm0 160c-17.7 0-32 14.3-32 32s14.3 32 32 32l288 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-288 0zM64 48 A48 48 0 1 0 64 144 A48 48 0 1 0 64 48 Z M64 68 A28 28 0 1 1 64 124 A28 28 0 1 1 64 68 Z M64 208 A48 48 0 1 0 64 304 A48 48 0 1 0 64 208 Z M64 228 A28 28 0 1 1 64 284 A28 28 0 1 1 64 228 Z M64 368 A48 48 0 1 0 64 464 A48 48 0 1 0 64 368 Z M64 388 A28 28 0 1 1 64 444 A28 28 0 1 1 64 388 Z"/></svg>
289791
289881
  `, list_square_solid_default = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc. (bullet shapes modified)--><path d="M192 64c-17.7 0-32 14.3-32 32s14.3 32 32 32l288 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L192 64zm0 160c-17.7 0-32 14.3-32 32s14.3 32 32 32l288 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-288 0zm0 160c-17.7 0-32 14.3-32 32s14.3 32 32 32l288 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-288 0zM16 48 L112 48 L112 144 L16 144 Z M16 208 L112 208 L112 304 L16 304 Z M16 368 L112 368 L112 464 L16 464 Z"/></svg>
289792
289882
  `, list_ol_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M24 56c0-13.3 10.7-24 24-24l32 0c13.3 0 24 10.7 24 24l0 120 16 0c13.3 0 24 10.7 24 24s-10.7 24-24 24l-80 0c-13.3 0-24-10.7-24-24s10.7-24 24-24l16 0 0-96-8 0C34.7 80 24 69.3 24 56zM86.7 341.2c-6.5-7.4-18.3-6.9-24 1.2L51.5 357.9c-7.7 10.8-22.7 13.3-33.5 5.6s-13.3-22.7-5.6-33.5l11.1-15.6c23.7-33.2 72.3-35.6 99.2-4.9c21.3 24.4 20.8 60.9-1.1 84.7L86.8 432l33.2 0c13.3 0 24 10.7 24 24s-10.7 24-24 24l-88 0c-9.5 0-18.2-5.6-22-14.4s-2.1-18.9 4.3-25.9l72-78c5.3-5.8 5.4-14.6 .3-20.5zM224 64l256 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-256 0c-17.7 0-32-14.3-32-32s14.3-32 32-32zm0 160l256 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-256 0c-17.7 0-32-14.3-32-32s14.3-32 32-32zm0 160l256 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-256 0c-17.7 0-32-14.3-32-32s14.3-32 32-32z"/></svg>', list_decimal_solid_default = `<svg width="512" height="512" viewBox="0 0 512 512" fill="none" xmlns="http://www.w3.org/2000/svg">
289793
289883
  <g clip-path="url(#clip0_0_1)">
@@ -289854,8 +289944,8 @@ var Node$13 = class Node$14 {
289854
289944
  `, image_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M0 96C0 60.7 28.7 32 64 32l384 0c35.3 0 64 28.7 64 64l0 320c0 35.3-28.7 64-64 64L64 480c-35.3 0-64-28.7-64-64L0 96zM323.8 202.5c-4.5-6.6-11.9-10.5-19.8-10.5s-15.4 3.9-19.8 10.5l-87 127.6L170.7 297c-4.6-5.7-11.5-9-18.7-9s-14.2 3.3-18.7 9l-64 80c-5.8 7.2-6.9 17.1-2.9 25.4s12.4 13.6 21.6 13.6l96 0 32 0 208 0c8.9 0 17.1-4.9 21.2-12.8s3.6-17.4-1.4-24.7l-120-176zM112 192a48 48 0 1 0 0-96 48 48 0 1 0 0 96z"/></svg>', link_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M579.8 267.7c56.5-56.5 56.5-148 0-204.5c-50-50-128.8-56.5-186.3-15.4l-1.6 1.1c-14.4 10.3-17.7 30.3-7.4 44.6s30.3 17.7 44.6 7.4l1.6-1.1c32.1-22.9 76-19.3 103.8 8.6c31.5 31.5 31.5 82.5 0 114L422.3 334.8c-31.5 31.5-82.5 31.5-114 0c-27.9-27.9-31.5-71.8-8.6-103.8l1.1-1.6c10.3-14.4 6.9-34.4-7.4-44.6s-34.4-6.9-44.6 7.4l-1.1 1.6C206.5 251.2 213 330 263 380c56.5 56.5 148 56.5 204.5 0L579.8 267.7zM60.2 244.3c-56.5 56.5-56.5 148 0 204.5c50 50 128.8 56.5 186.3 15.4l1.6-1.1c14.4-10.3 17.7-30.3 7.4-44.6s-30.3-17.7-44.6-7.4l-1.6 1.1c-32.1 22.9-76 19.3-103.8-8.6C74 372 74 321 105.5 289.5L217.7 177.2c31.5-31.5 82.5-31.5 114 0c27.9 27.9 31.5 71.8 8.6 103.9l-1.1 1.6c-10.3 14.4-6.9 34.4 7.4 44.6s34.4 6.9 44.6-7.4l1.1-1.6C433.5 260.8 427 182 377 132c-56.5-56.5-148-56.5-204.5 0L60.2 244.3z"/></svg>', align_left_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M288 64c0 17.7-14.3 32-32 32L32 96C14.3 96 0 81.7 0 64S14.3 32 32 32l224 0c17.7 0 32 14.3 32 32zm0 256c0 17.7-14.3 32-32 32L32 352c-17.7 0-32-14.3-32-32s14.3-32 32-32l224 0c17.7 0 32 14.3 32 32zM0 192c0-17.7 14.3-32 32-32l384 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 224c-17.7 0-32-14.3-32-32zM448 448c0 17.7-14.3 32-32 32L32 480c-17.7 0-32-14.3-32-32s14.3-32 32-32l384 0c17.7 0 32 14.3 32 32z"/></svg>', align_center_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M352 64c0-17.7-14.3-32-32-32L128 32c-17.7 0-32 14.3-32 32s14.3 32 32 32l192 0c17.7 0 32-14.3 32-32zm96 128c0-17.7-14.3-32-32-32L32 160c-17.7 0-32 14.3-32 32s14.3 32 32 32l384 0c17.7 0 32-14.3 32-32zM0 448c0 17.7 14.3 32 32 32l384 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L32 416c-17.7 0-32 14.3-32 32zM352 320c0-17.7-14.3-32-32-32l-192 0c-17.7 0-32 14.3-32 32s14.3 32 32 32l192 0c17.7 0 32-14.3 32-32z"/></svg>', align_right_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M448 64c0 17.7-14.3 32-32 32L192 96c-17.7 0-32-14.3-32-32s14.3-32 32-32l224 0c17.7 0 32 14.3 32 32zm0 256c0 17.7-14.3 32-32 32l-224 0c-17.7 0-32-14.3-32-32s14.3-32 32-32l224 0c17.7 0 32 14.3 32 32zM0 192c0-17.7 14.3-32 32-32l384 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 224c-17.7 0-32-14.3-32-32zM448 448c0 17.7-14.3 32-32 32L32 480c-17.7 0-32-14.3-32-32s14.3-32 32-32l384 0c17.7 0 32 14.3 32 32z"/></svg>', align_justify_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M448 64c0-17.7-14.3-32-32-32L32 32C14.3 32 0 46.3 0 64S14.3 96 32 96l384 0c17.7 0 32-14.3 32-32zm0 256c0-17.7-14.3-32-32-32L32 288c-17.7 0-32 14.3-32 32s14.3 32 32 32l384 0c17.7 0 32-14.3 32-32zM0 192c0 17.7 14.3 32 32 32l384 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L32 160c-17.7 0-32 14.3-32 32zM448 448c0-17.7-14.3-32-32-32L32 416c-17.7 0-32 14.3-32 32s14.3 32 32 32l384 0c17.7 0 32-14.3 32-32z"/></svg>', indent_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M0 64C0 46.3 14.3 32 32 32l384 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 96C14.3 96 0 81.7 0 64zM192 192c0-17.7 14.3-32 32-32l192 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-192 0c-17.7 0-32-14.3-32-32zm32 96l192 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-192 0c-17.7 0-32-14.3-32-32s14.3-32 32-32zM0 448c0-17.7 14.3-32 32-32l384 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 480c-17.7 0-32-14.3-32-32zM127.8 268.6L25.8 347.9C15.3 356.1 0 348.6 0 335.3L0 176.7c0-13.3 15.3-20.8 25.8-12.6l101.9 79.3c8.2 6.4 8.2 18.9 0 25.3z"/></svg>', outdent_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M0 64C0 46.3 14.3 32 32 32l384 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 96C14.3 96 0 81.7 0 64zM192 192c0-17.7 14.3-32 32-32l192 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-192 0c-17.7 0-32-14.3-32-32zm32 96l192 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-192 0c-17.7 0-32-14.3-32-32s14.3-32 32-32zM0 448c0-17.7 14.3-32 32-32l384 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 480c-17.7 0-32-14.3-32-32zM.2 268.6c-8.2-6.4-8.2-18.9 0-25.3l101.9-79.3c10.5-8.2 25.8-.7 25.8 12.6l0 158.6c0 13.3-15.3 20.8-25.8 12.6L.2 268.6z"/></svg>', paint_roller_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M0 64C0 28.7 28.7 0 64 0L352 0c35.3 0 64 28.7 64 64l0 64c0 35.3-28.7 64-64 64L64 192c-35.3 0-64-28.7-64-64L0 64zM160 352c0-17.7 14.3-32 32-32l0-16c0-44.2 35.8-80 80-80l144 0c17.7 0 32-14.3 32-32l0-32 0-90.5c37.3 13.2 64 48.7 64 90.5l0 32c0 53-43 96-96 96l-144 0c-8.8 0-16 7.2-16 16l0 16c17.7 0 32 14.3 32 32l0 128c0 17.7-14.3 32-32 32l-64 0c-17.7 0-32-14.3-32-32l0-128z"/></svg>', text_slash_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7L355.7 253.5 400.2 96 503 96 497 120.2c-4.3 17.1 6.1 34.5 23.3 38.8s34.5-6.1 38.8-23.3l11-44.1C577.6 61.3 554.7 32 523.5 32L376.1 32l-.3 0L204.5 32c-22 0-41.2 15-46.6 36.4l-6.3 25.2L38.8 5.1zm168 131.7c.1-.3 .2-.7 .3-1L217 96l116.7 0L301.3 210.8l-94.5-74.1zM243.3 416L192 416c-17.7 0-32 14.3-32 32s14.3 32 32 32l160 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-42.2 0 17.6-62.1L272.9 311 243.3 416z"/></svg>', rotate_left_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M48.5 224L40 224c-13.3 0-24-10.7-24-24L16 72c0-9.7 5.8-18.5 14.8-22.2s19.3-1.7 26.2 5.2L98.6 96.6c87.6-86.5 228.7-86.2 315.8 1c87.5 87.5 87.5 229.3 0 316.8s-229.3 87.5-316.8 0c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0c62.5 62.5 163.8 62.5 226.3 0s62.5-163.8 0-226.3c-62.2-62.2-162.7-62.5-225.3-1L185 183c6.9 6.9 8.9 17.2 5.2 26.2s-12.5 14.8-22.2 14.8L48.5 224z"/></svg>', rotate_right_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M463.5 224l8.5 0c13.3 0 24-10.7 24-24l0-128c0-9.7-5.8-18.5-14.8-22.2s-19.3-1.7-26.2 5.2L413.4 96.6c-87.6-86.5-228.7-86.2-315.8 1c-87.5 87.5-87.5 229.3 0 316.8s229.3 87.5 316.8 0c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0c-62.5 62.5-163.8 62.5-226.3 0s-62.5-163.8 0-226.3c62.2-62.2 162.7-62.5 225.3-1L327 183c-6.9 6.9-8.9 17.2-5.2 26.2s12.5 14.8 22.2 14.8l119.5 0z"/></svg>', calendar_check_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M128 0c17.7 0 32 14.3 32 32l0 32 128 0 0-32c0-17.7 14.3-32 32-32s32 14.3 32 32l0 32 48 0c26.5 0 48 21.5 48 48l0 48L0 160l0-48C0 85.5 21.5 64 48 64l48 0 0-32c0-17.7 14.3-32 32-32zM0 192l448 0 0 272c0 26.5-21.5 48-48 48L48 512c-26.5 0-48-21.5-48-48L0 192zM329 305c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-95 95-47-47c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l64 64c9.4 9.4 24.6 9.4 33.9 0L329 305z"/></svg>', calendar_xmark_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M128 0c17.7 0 32 14.3 32 32l0 32 128 0 0-32c0-17.7 14.3-32 32-32s32 14.3 32 32l0 32 48 0c26.5 0 48 21.5 48 48l0 48L0 160l0-48C0 85.5 21.5 64 48 64l48 0 0-32c0-17.7 14.3-32 32-32zM0 192l448 0 0 272c0 26.5-21.5 48-48 48L48 512c-26.5 0-48-21.5-48-48L0 192zM305 305c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-47 47-47-47c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l47 47-47 47c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l47-47 47 47c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9l-47-47 47-47z"/></svg>', list_check_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M152.1 38.2c9.9 8.9 10.7 24 1.8 33.9l-72 80c-4.4 4.9-10.6 7.8-17.2 7.9s-12.9-2.4-17.6-7L7 113C-2.3 103.6-2.3 88.4 7 79s24.6-9.4 33.9 0l22.1 22.1 55.1-61.2c8.9-9.9 24-10.7 33.9-1.8zm0 160c9.9 8.9 10.7 24 1.8 33.9l-72 80c-4.4 4.9-10.6 7.8-17.2 7.9s-12.9-2.4-17.6-7L7 273c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l22.1 22.1 55.1-61.2c8.9-9.9 24-10.7 33.9-1.8zM224 96c0-17.7 14.3-32 32-32l224 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-224 0c-17.7 0-32-14.3-32-32zm0 160c0-17.7 14.3-32 32-32l224 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-224 0c-17.7 0-32-14.3-32-32zM160 416c0-17.7 14.3-32 32-32l288 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-288 0c-17.7 0-32-14.3-32-32zM48 368a48 48 0 1 1 0 96 48 48 0 1 1 0-96z"/></svg>', user_edit_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M224 256A128 128 0 1 0 224 0a128 128 0 1 0 0 256zm-45.7 48C79.8 304 0 383.8 0 482.3C0 498.7 13.3 512 29.7 512l293.1 0c-3.1-8.8-3.7-18.4-1.4-27.8l15-60.1c2.8-11.3 8.6-21.5 16.8-29.7l40.3-40.3c-32.1-31-75.7-50.1-123.9-50.1l-91.4 0zm435.5-68.3c-15.6-15.6-40.9-15.6-56.6 0l-29.4 29.4 71 71 29.4-29.4c15.6-15.6 15.6-40.9 0-56.6l-14.4-14.4zM375.9 417c-4.1 4.1-7 9.2-8.4 14.9l-15 60.1c-1.4 5.5 .2 11.2 4.2 15.2s9.7 5.6 15.2 4.2l60.1-15c5.6-1.4 10.8-4.3 14.9-8.4L576.1 358.7l-71-71L375.9 417z"/></svg>', eye_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M288 32c-80.8 0-145.5 36.8-192.6 80.6C48.6 156 17.3 208 2.5 243.7c-3.3 7.9-3.3 16.7 0 24.6C17.3 304 48.6 356 95.4 399.4C142.5 443.2 207.2 480 288 480s145.5-36.8 192.6-80.6c46.8-43.5 78.1-95.4 93-131.1c3.3-7.9 3.3-16.7 0-24.6c-14.9-35.7-46.2-87.7-93-131.1C433.5 68.8 368.8 32 288 32zM144 256a144 144 0 1 1 288 0 144 144 0 1 1 -288 0zm144-64c0 35.3-28.7 64-64 64c-7.1 0-13.9-1.2-20.3-3.3c-5.5-1.8-11.9 1.6-11.7 7.4c.3 6.9 1.3 13.8 3.2 20.7c13.7 51.2 66.4 81.6 117.6 67.9s81.6-66.4 67.9-117.6c-11.1-41.5-47.8-69.4-88.6-71.1c-5.8-.2-9.2 6.1-7.4 11.7c2.1 6.4 3.3 13.2 3.3 20.3z"/></svg>', file_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M0 64C0 28.7 28.7 0 64 0L224 0l0 128c0 17.7 14.3 32 32 32l128 0 0 288c0 35.3-28.7 64-64 64L64 512c-35.3 0-64-28.7-64-64L0 64zm384 64l-128 0L256 0 384 128z"/></svg>', font_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M254 52.8C249.3 40.3 237.3 32 224 32s-25.3 8.3-30 20.8L57.8 416 32 416c-17.7 0-32 14.3-32 32s14.3 32 32 32l96 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-1.8 0 18-48 159.6 0 18 48-1.8 0c-17.7 0-32 14.3-32 32s14.3 32 32 32l96 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-25.8 0L254 52.8zM279.8 304l-111.6 0L224 155.1 279.8 304z"/></svg>', file_half_dashed_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M64 0C28.7 0 0 28.7 0 64L0 320l384 0 0-160-128 0c-17.7 0-32-14.3-32-32L224 0 64 0zM256 0l0 128 128 0L256 0zM0 416l64 0 0-64L0 352l0 64zm288 32l-80 0 0 64 80 0 0-64zm-112 0l-80 0 0 64 80 0 0-64zM64 448L0 448c0 35.3 28.7 64 64 64l0-64zm256 0l0 64c35.3 0 64-28.7 64-64l-64 0zm64-32l0-64-64 0 0 64 64 0z"/></svg>', comment_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M512 240c0 114.9-114.6 208-256 208c-37.1 0-72.3-6.4-104.1-17.9c-11.9 8.7-31.3 20.6-54.3 30.6C73.6 471.1 44.7 480 16 480c-6.5 0-12.3-3.9-14.8-9.9c-2.5-6-1.1-12.8 3.4-17.4c0 0 0 0 0 0s0 0 0 0s0 0 0 0c0 0 0 0 0 0l.3-.3c.3-.3 .7-.7 1.3-1.4c1.1-1.2 2.8-3.1 4.9-5.7c4.1-5 9.6-12.4 15.2-21.6c10-16.6 19.5-38.4 21.4-62.9C17.7 326.8 0 285.1 0 240C0 125.1 114.6 32 256 32s256 93.1 256 208z"/></svg>', circle_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512z"/></svg>', check_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z"/></svg>', xmark_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z"/></svg>', up_right_from_square_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M352 0c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9L370.7 96 201.4 265.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L416 141.3l41.4 41.4c9.2 9.2 22.9 11.9 34.9 6.9s19.8-16.6 19.8-29.6l0-128c0-17.7-14.3-32-32-32L352 0zM80 32C35.8 32 0 67.8 0 112L0 432c0 44.2 35.8 80 80 80l320 0c44.2 0 80-35.8 80-80l0-112c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 112c0 8.8-7.2 16-16 16L80 448c-8.8 0-16-7.2-16-16l0-320c0-8.8 7.2-16 16-16l112 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L80 32z"/></svg>', ellipsis_vertical_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M64 360a56 56 0 1 0 0 112 56 56 0 1 0 0-112zm0-160a56 56 0 1 0 0 112 56 56 0 1 0 0-112zM120 96A56 56 0 1 0 8 96a56 56 0 1 0 112 0z"/></svg>', caret_up_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M182.6 137.4c-12.5-12.5-32.8-12.5-45.3 0l-128 128c-9.2 9.2-11.9 22.9-6.9 34.9s16.6 19.8 29.6 19.8l256 0c12.9 0 24.6-7.8 29.6-19.8s2.2-25.7-6.9-34.9l-128-128z"/></svg>', caret_down_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z"/></svg>', ruler_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M177.9 494.1c-18.7 18.7-49.1 18.7-67.9 0L17.9 401.9c-18.7-18.7-18.7-49.1 0-67.9l50.7-50.7 48 48c6.2 6.2 16.4 6.2 22.6 0s6.2-16.4 0-22.6l-48-48 41.4-41.4 48 48c6.2 6.2 16.4 6.2 22.6 0s6.2-16.4 0-22.6l-48-48 41.4-41.4 48 48c6.2 6.2 16.4 6.2 22.6 0s6.2-16.4 0-22.6l-48-48 41.4-41.4 48 48c6.2 6.2 16.4 6.2 22.6 0s6.2-16.4 0-22.6l-48-48 50.7-50.7c18.7-18.7 49.1-18.7 67.9 0l92.1 92.1c18.7 18.7 18.7 49.1 0 67.9L177.9 494.1z"/></svg>', paintbrush_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M339.3 367.1c27.3-3.9 51.9-19.4 67.2-42.9L568.2 74.1c12.6-19.5 9.4-45.3-7.6-61.2S517.7-4.4 499.1 9.6L262.4 187.2c-24 18-38.2 46.1-38.4 76.1L339.3 367.1zm-19.6 25.4l-116-104.4C143.9 290.3 96 339.6 96 400c0 3.9 .2 7.8 .6 11.6C98.4 429.1 86.4 448 68.8 448L64 448c-17.7 0-32 14.3-32 32s14.3 32 32 32l144 0c61.9 0 112-50.1 112-112c0-2.5-.1-5-.2-7.5z"/></svg>', highlighter_icon_default = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M315 315l158.4-215L444.1 70.6 229 229 315 315zm-187 5s0 0 0 0l0-71.7c0-15.3 7.2-29.6 19.5-38.6L420.6 8.4C428 2.9 437 0 446.2 0c11.4 0 22.4 4.5 30.5 12.6l54.8 54.8c8.1 8.1 12.6 19 12.6 30.5c0 9.2-2.9 18.2-8.4 25.6L334.4 396.5c-9 12.3-23.4 19.5-38.6 19.5L224 416l-25.4 25.4c-12.5 12.5-32.8 12.5-45.3 0l-50.7-50.7c-12.5-12.5-12.5-32.8 0-45.3L128 320zM7 466.3l63-63 70.6 70.6-31 31c-4.5 4.5-10.6 7-17 7L24 512c-13.3 0-24-10.7-24-24l0-4.7c0-6.4 2.5-12.5 7-17z"/></svg>
289855
289945
  `, magic_wand_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M224 96l16-32 32-16-32-16-16-32-16 32-32 16 32 16 16 32zM80 160l26.7-53.3L160 80l-53.3-26.7L80 0 53.3 53.3 0 80l53.3 26.7L80 160zm352 128l-26.7 53.3L352 368l53.3 26.7L432 448l26.7-53.3L512 368l-53.3-26.7L432 288zm70.6-193.8L417.8 9.4C411.5 3.1 403.3 0 395.2 0c-8.2 0-16.4 3.1-22.6 9.4L9.4 372.5c-12.5 12.5-12.5 32.8 0 45.3l84.9 84.9c6.3 6.3 14.4 9.4 22.6 9.4 8.2 0 16.4-3.1 22.6-9.4l363.1-363.2c12.5-12.5 12.5-32.8 0-45.2zM359.5 203.5l-50.9-50.9 86.6-86.6 50.9 50.9-86.6 86.6z"/></svg>', table_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M64 256l0-96 160 0 0 96L64 256zm0 64l160 0 0 96L64 416l0-96zm224 96l0-96 160 0 0 96-160 0zM448 256l-160 0 0-96 160 0 0 96zM64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l384 0c35.3 0 64-28.7 64-64l0-320c0-35.3-28.7-64-64-64L64 32z"/></svg>', table_columns_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M0 96C0 60.7 28.7 32 64 32l384 0c35.3 0 64 28.7 64 64l0 320c0 35.3-28.7 64-64 64L64 480c-35.3 0-64-28.7-64-64L0 96zm64 64l0 256 160 0 0-256L64 160zm384 0l-160 0 0 256 160 0 0-256z"/></svg>', arrows_left_right_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M406.6 374.6l96-96c12.5-12.5 12.5-32.8 0-45.3l-96-96c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224l-293.5 0 41.4-41.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-96 96c-12.5 12.5-12.5 32.8 0 45.3l96 96c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 288l293.5 0-41.4 41.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0z"/></svg>', arrows_to_dot_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M256 0c17.7 0 32 14.3 32 32l0 32 32 0c12.9 0 24.6 7.8 29.6 19.8s2.2 25.7-6.9 34.9l-64 64c-12.5 12.5-32.8 12.5-45.3 0l-64-64c-9.2-9.2-11.9-22.9-6.9-34.9s16.6-19.8 29.6-19.8l32 0 0-32c0-17.7 14.3-32 32-32zM169.4 393.4l64-64c12.5-12.5 32.8-12.5 45.3 0l64 64c9.2 9.2 11.9 22.9 6.9 34.9s-16.6 19.8-29.6 19.8l-32 0 0 32c0 17.7-14.3 32-32 32s-32-14.3-32-32l0-32-32 0c-12.9 0-24.6-7.8-29.6-19.8s-2.2-25.7 6.9-34.9zM32 224l32 0 0-32c0-12.9 7.8-24.6 19.8-29.6s25.7-2.2 34.9 6.9l64 64c12.5 12.5 12.5 32.8 0 45.3l-64 64c-9.2 9.2-22.9 11.9-34.9 6.9s-19.8-16.6-19.8-29.6l0-32-32 0c-17.7 0-32-14.3-32-32s14.3-32 32-32zm297.4 54.6c-12.5-12.5-12.5-32.8 0-45.3l64-64c9.2-9.2 22.9-11.9 34.9-6.9s19.8 16.6 19.8 29.6l0 32 32 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-32 0 0 32c0 12.9-7.8 24.6-19.8 29.6s-25.7 2.2-34.9-6.9l-64-64zM256 224a32 32 0 1 1 0 64 32 32 0 1 1 0-64z"/></svg>', plus_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M256 80c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 144L48 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l144 0 0 144c0 17.7 14.3 32 32 32s32-14.3 32-32l0-144 144 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-144 0 0-144z"/></svg>', trash_can_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M135.2 17.7C140.6 6.8 151.7 0 163.8 0L284.2 0c12.1 0 23.2 6.8 28.6 17.7L320 32l96 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 96C14.3 96 0 81.7 0 64S14.3 32 32 32l96 0 7.2-14.3zM32 128l384 0 0 320c0 35.3-28.7 64-64 64L96 512c-35.3 0-64-28.7-64-64l0-320zm96 64c-8.8 0-16 7.2-16 16l0 224c0 8.8 7.2 16 16 16s16-7.2 16-16l0-224c0-8.8-7.2-16-16-16zm96 0c-8.8 0-16 7.2-16 16l0 224c0 8.8 7.2 16 16 16s16-7.2 16-16l0-224c0-8.8-7.2-16-16-16zm96 0c-8.8 0-16 7.2-16 16l0 224c0 8.8 7.2 16 16 16s16-7.2 16-16l0-224c0-8.8-7.2-16-16-16z"/></svg>', wrench_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M352 320c88.4 0 160-71.6 160-160c0-15.3-2.2-30.1-6.2-44.2c-3.1-10.8-16.4-13.2-24.3-5.3l-76.8 76.8c-3 3-7.1 4.7-11.3 4.7L336 192c-8.8 0-16-7.2-16-16l0-57.4c0-4.2 1.7-8.3 4.7-11.3l76.8-76.8c7.9-7.9 5.4-21.2-5.3-24.3C382.1 2.2 367.3 0 352 0C263.6 0 192 71.6 192 160c0 19.1 3.4 37.5 9.5 54.5L19.9 396.1C7.2 408.8 0 426.1 0 444.1C0 481.6 30.4 512 67.9 512c18 0 35.3-7.2 48-19.9L297.5 310.5c17 6.2 35.4 9.5 54.5 9.5zM80 408a24 24 0 1 1 0 48 24 24 0 1 1 0-48z"/></svg>', border_none_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M32 480a32 32 0 1 1 0-64 32 32 0 1 1 0 64zm96-64a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm0-384a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm0 256a32 32 0 1 1 0-64 32 32 0 1 1 0 64zM320 416a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm0-320a32 32 0 1 1 0-64 32 32 0 1 1 0 64zm0 128a32 32 0 1 1 0 64 32 32 0 1 1 0-64zM224 480a32 32 0 1 1 0-64 32 32 0 1 1 0 64zm0-448a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm0 256a32 32 0 1 1 0-64 32 32 0 1 1 0 64zM416 416a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm0-384a32 32 0 1 1 0 64 32 32 0 1 1 0-64zM32 96a32 32 0 1 1 0-64 32 32 0 1 1 0 64zM416 224a32 32 0 1 1 0 64 32 32 0 1 1 0-64zM32 288a32 32 0 1 1 0-64 32 32 0 1 1 0 64zm192 32a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm192 64a32 32 0 1 1 0-64 32 32 0 1 1 0 64zM32 320a32 32 0 1 1 0 64 32 32 0 1 1 0-64zM416 192a32 32 0 1 1 0-64 32 32 0 1 1 0 64zM32 128a32 32 0 1 1 0 64 32 32 0 1 1 0-64zm192 64a32 32 0 1 1 0-64 32 32 0 1 1 0 64z"/></svg>', up_down_default = `<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://www.w3.org/2000/svg" viewBox="3 4 18 16"><path stroke="#000000" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M6 10V5m0 0L4 7m2-2 2 2m-2 7v5m0 0 2-2m-2 2-2-2m8-10h8m0 5h-8m0 5h8"></path></svg>
289856
289946
  `, magnifying_glass_default = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z"/></svg>
289857
- `, scissors_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M278.1 256L444.5 89.6c4.7-4.7 4.7-12.3 0-17-32.8-32.8-86-32.8-118.8 0L210.2 188.1l-24.9-24.9c4.3-10.9 6.7-22.8 6.7-35.3 0-53-43-96-96-96S0 75 0 128s43 96 96 96c4.5 0 9-.3 13.4-.9L142.3 256l-32.9 32.9c-4.4-.6-8.8-.9-13.4-.9-53 0-96 43-96 96s43 96 96 96 96-43 96-96c0-12.5-2.4-24.3-6.7-35.3l24.9-24.9L325.7 439.4c32.8 32.8 86 32.8 118.8 0 4.7-4.7 4.7-12.3 0-17L278.1 256zM96 160c-17.6 0-32-14.4-32-32s14.4-32 32-32 32 14.4 32 32-14.4 32-32 32zm0 256c-17.6 0-32-14.4-32-32s14.4-32 32-32 32 14.4 32 32-14.4 32-32 32z"/></svg>', copy_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M320 448v40c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24V120c0-13.3 10.7-24 24-24h72v296c0 30.9 25.1 56 56 56h168zm0-344V0H152c-13.3 0-24 10.7-24 24v368c0 13.3 10.7 24 24 24h272c13.3 0 24-10.7 24-24V128H344c-13.2 0-24-10.8-24-24zm121-31L375 7A24 24 0 0 0 358.1 0H352v96h96v-6.1a24 24 0 0 0 -7-17z"/></svg>', paste_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M128 184c0-30.9 25.1-56 56-56h136V56c0-13.3-10.7-24-24-24h-80.6C204.3 12.9 183.6 0 160 0s-44.3 12.9-55.4 32H24C10.7 32 0 42.7 0 56v336c0 13.3 10.7 24 24 24h104V184zm32-144c13.3 0 24 10.7 24 24s-10.7 24-24 24-24-10.7-24-24 10.7-24 24-24zm184 248h104v200c0 13.3-10.7 24-24 24H184c-13.3 0-24-10.7-24-24V184c0-13.3 10.7-24 24-24h136v104c0 13.2 10.8 24 24 24zm104-38.1V256h-96v-96h6.1a24 24 0 0 1 17 7l65.9 65.9a24 24 0 0 1 7 17z"/></svg>', toolbarIcons, _hoisted_1$21, AlignmentButtons_default, _hoisted_1$20, StyleButtonsList_default, bulletStyleButtons, numberedStyleButtons, _hoisted_1$19, _hoisted_2$16, _hoisted_3$12, _hoisted_4$8, _hoisted_5$7, _hoisted_6$5, DocumentMode_default, _hoisted_1$18, _hoisted_2$15, LinkedStyle_default, _hoisted_1$17, _hoisted_2$14, _hoisted_3$11, _hoisted_4$7, _hoisted_5$6, _hoisted_6$4, _hoisted_7$3, _hoisted_8$1, _hoisted_9$1, _hoisted_10$1, _hoisted_11$1, _hoisted_12$1, _hoisted_13$1, _hoisted_14$1, LinkInput_default, _hoisted_1$16, _hoisted_2$13, _hoisted_3$10, ROW_SIZE$1 = 7, IconGridRow_default, droplet_slash_default = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M320 512c53.2 0 101.4-21.6 136.1-56.6l-298.3-235C140 257.1 128 292.3 128 320c0 106 86 192 192 192zM505.2 370.7c4.4-16.2 6.8-33.1 6.8-50.7c0-91.2-130.2-262.3-166.6-308.3C339.4 4.2 330.5 0 320.9 0l-1.8 0c-9.6 0-18.5 4.2-24.5 11.7C277.8 33 240.7 81.3 205.8 136L38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7L505.2 370.7zM224 336c0 44.2 35.8 80 80 80c8.8 0 16 7.2 16 16s-7.2 16-16 16c-61.9 0-112-50.1-112-112c0-8.8 7.2-16 16-16s16 7.2 16 16z"/></svg>
289858
- `, _hoisted_1$15, _hoisted_2$12, _hoisted_3$9, IconGrid_default, closeDropdown$1 = (dropdown) => {
289947
+ `, scissors_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M278.1 256L444.5 89.6c4.7-4.7 4.7-12.3 0-17-32.8-32.8-86-32.8-118.8 0L210.2 188.1l-24.9-24.9c4.3-10.9 6.7-22.8 6.7-35.3 0-53-43-96-96-96S0 75 0 128s43 96 96 96c4.5 0 9-.3 13.4-.9L142.3 256l-32.9 32.9c-4.4-.6-8.8-.9-13.4-.9-53 0-96 43-96 96s43 96 96 96 96-43 96-96c0-12.5-2.4-24.3-6.7-35.3l24.9-24.9L325.7 439.4c32.8 32.8 86 32.8 118.8 0 4.7-4.7 4.7-12.3 0-17L278.1 256zM96 160c-17.6 0-32-14.4-32-32s14.4-32 32-32 32 14.4 32 32-14.4 32-32 32zm0 256c-17.6 0-32-14.4-32-32s14.4-32 32-32 32 14.4 32 32-14.4 32-32 32z"/></svg>', copy_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M320 448v40c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24V120c0-13.3 10.7-24 24-24h72v296c0 30.9 25.1 56 56 56h168zm0-344V0H152c-13.3 0-24 10.7-24 24v368c0 13.3 10.7 24 24 24h272c13.3 0 24-10.7 24-24V128H344c-13.2 0-24-10.8-24-24zm121-31L375 7A24 24 0 0 0 358.1 0H352v96h96v-6.1a24 24 0 0 0 -7-17z"/></svg>', paste_solid_default = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M128 184c0-30.9 25.1-56 56-56h136V56c0-13.3-10.7-24-24-24h-80.6C204.3 12.9 183.6 0 160 0s-44.3 12.9-55.4 32H24C10.7 32 0 42.7 0 56v336c0 13.3 10.7 24 24 24h104V184zm32-144c13.3 0 24 10.7 24 24s-10.7 24-24 24-24-10.7-24-24 10.7-24 24-24zm184 248h104v200c0 13.3-10.7 24-24 24H184c-13.3 0-24-10.7-24-24V184c0-13.3 10.7-24 24-24h136v104c0 13.2 10.8 24 24 24zm104-38.1V256h-96v-96h6.1a24 24 0 0 1 17 7l65.9 65.9a24 24 0 0 1 7 17z"/></svg>', toolbarIcons, _hoisted_1$22, AlignmentButtons_default, _hoisted_1$21, StyleButtonsList_default, bulletStyleButtons, numberedStyleButtons, _hoisted_1$20, _hoisted_2$16, _hoisted_3$12, _hoisted_4$8, _hoisted_5$7, _hoisted_6$5, DocumentMode_default, _hoisted_1$19, _hoisted_2$15, LinkedStyle_default, _hoisted_1$18, _hoisted_2$14, _hoisted_3$11, _hoisted_4$7, _hoisted_5$6, _hoisted_6$4, _hoisted_7$3, _hoisted_8$1, _hoisted_9$1, _hoisted_10$1, _hoisted_11$1, _hoisted_12$1, _hoisted_13$1, _hoisted_14$1, LinkInput_default, _hoisted_1$17, _hoisted_2$13, _hoisted_3$10, ROW_SIZE$1 = 7, IconGridRow_default, droplet_slash_default = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M320 512c53.2 0 101.4-21.6 136.1-56.6l-298.3-235C140 257.1 128 292.3 128 320c0 106 86 192 192 192zM505.2 370.7c4.4-16.2 6.8-33.1 6.8-50.7c0-91.2-130.2-262.3-166.6-308.3C339.4 4.2 330.5 0 320.9 0l-1.8 0c-9.6 0-18.5 4.2-24.5 11.7C277.8 33 240.7 81.3 205.8 136L38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7L505.2 370.7zM224 336c0 44.2 35.8 80 80 80c8.8 0 16 7.2 16 16s-7.2 16-16 16c-61.9 0-112-50.1-112-112c0-8.8 7.2-16 16-16s16 7.2 16 16z"/></svg>
289948
+ `, _hoisted_1$16, _hoisted_2$12, _hoisted_3$9, IconGrid_default, closeDropdown$1 = (dropdown) => {
289859
289949
  dropdown.expand.value = false;
289860
289950
  }, makeColorOption = (color2, label = null) => {
289861
289951
  return {
@@ -289886,8 +289976,8 @@ var Node$13 = class Node$14 {
289886
289976
  })]);
289887
289977
  }, icons, getAvailableColorOptions = () => {
289888
289978
  return icons.flat().map((item) => item.value);
289889
- }, _hoisted_1$14, _hoisted_2$11, ROW_SIZE = 5, TableGrid_default, _hoisted_1$13, _hoisted_2$10, _hoisted_3$8, _hoisted_4$6, _hoisted_5$5, TableActions_default, check_default = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z"/></svg>
289890
- `, _hoisted_1$12, _hoisted_2$9, _hoisted_3$7, SearchInput_default, TOOLBAR_FONTS, TOOLBAR_FONT_SIZES, RESPONSIVE_BREAKPOINTS, HEADLESS_ITEM_MAP, TABLE_ACTION_COMMAND_MAP, TABLE_ACTION_COMMAND_IDS, HEADLESS_TOOLBAR_COMMANDS, NON_HEADLESS_EXECUTE_ITEM_NAMES, HEADLESS_EXECUTE_ITEMS, closeDropdown = (dropdown) => {
289979
+ }, _hoisted_1$15, _hoisted_2$11, ROW_SIZE = 5, TableGrid_default, _hoisted_1$14, _hoisted_2$10, _hoisted_3$8, _hoisted_4$6, _hoisted_5$5, TableActions_default, check_default = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z"/></svg>
289980
+ `, _hoisted_1$13, _hoisted_2$9, _hoisted_3$7, SearchInput_default, TOOLBAR_FONTS, TOOLBAR_FONT_SIZES, RESPONSIVE_BREAKPOINTS, HEADLESS_ITEM_MAP, TABLE_ACTION_COMMAND_MAP, TABLE_ACTION_COMMAND_IDS, HEADLESS_TOOLBAR_COMMANDS, NON_HEADLESS_EXECUTE_ITEM_NAMES, HEADLESS_EXECUTE_ITEMS, closeDropdown = (dropdown) => {
289891
289981
  dropdown.expand.value = false;
289892
289982
  }, makeDefaultItems = ({ superToolbar, toolbarIcons: toolbarIcons$1, toolbarTexts: toolbarTexts$1, toolbarFonts, hideButtons, availableWidth, role, isDev = false } = {}) => {
289893
289983
  const bold = useToolbarItem({
@@ -290951,7 +291041,7 @@ var Node$13 = class Node$14 {
290951
291041
  defaultItems: visibleItems,
290952
291042
  overflowItems: overflowItems.filter((item) => item.type !== "separator")
290953
291043
  };
290954
- }, _hoisted_1$11, _hoisted_2$8, ToolbarButtonIcon_default, _hoisted_1$10, _hoisted_2$7, _hoisted_3$6, _hoisted_4$5, _hoisted_5$4, _hoisted_6$3, _hoisted_7$2, _hoisted_8, _hoisted_9, _hoisted_10, _hoisted_11, _hoisted_12, _hoisted_13, _hoisted_14, ToolbarButton_default, _hoisted_1$9, ToolbarSeparator_default, _hoisted_1$8, _hoisted_2$6, _hoisted_3$5, OverflowMenu_default, _hoisted_1$7, _hoisted_2$5, _hoisted_3$4, _hoisted_4$4, TRIGGER_FOCUS_SELECTOR = 'button, [href], input, select, textarea, [role="button"], [tabindex]:not([tabindex="-1"])', ToolbarDropdown_default, normalize4 = (value) => String(value ?? "").trim().toLowerCase(), findPrefixMatchIndex = (query, labels) => {
291044
+ }, _hoisted_1$12, _hoisted_2$8, ToolbarButtonIcon_default, _hoisted_1$11, _hoisted_2$7, _hoisted_3$6, _hoisted_4$5, _hoisted_5$4, _hoisted_6$3, _hoisted_7$2, _hoisted_8, _hoisted_9, _hoisted_10, _hoisted_11, _hoisted_12, _hoisted_13, _hoisted_14, ToolbarButton_default, _hoisted_1$10, ToolbarSeparator_default, _hoisted_1$9, _hoisted_2$6, _hoisted_3$5, OverflowMenu_default, _hoisted_1$8, _hoisted_2$5, _hoisted_3$4, _hoisted_4$4, TRIGGER_FOCUS_SELECTOR = 'button, [href], input, select, textarea, [role="button"], [tabindex]:not([tabindex="-1"])', ToolbarDropdown_default, normalize4 = (value) => String(value ?? "").trim().toLowerCase(), findPrefixMatchIndex = (query, labels) => {
290955
291045
  const q$1 = normalize4(query);
290956
291046
  if (!q$1)
290957
291047
  return -1;
@@ -290983,7 +291073,7 @@ var Node$13 = class Node$14 {
290983
291073
  return result;
290984
291074
  }, normalizeCustomFontFamily = (value) => {
290985
291075
  return stripWrappingQuotes((String(value ?? "").split(",")[0] ?? "").replace(/[\u0000-\u001f\u007f]/g, "")).replace(/\s+/g, " ").trim();
290986
- }, _hoisted_1$6, _hoisted_2$4, _hoisted_3$3, _hoisted_4$3, _hoisted_5$3, _hoisted_6$2, _hoisted_7$1, FontFamilyCombobox_default, SdTooltip_default, _hoisted_1$5, _hoisted_2$3, _hoisted_3$2, _hoisted_4$2, _hoisted_5$2, _hoisted_6$1, TOOLBAR_TOOLTIP_AUTO_HIDE_MS = 3000, ButtonGroup_default, DEFAULT_UI_FONT_FAMILY = "Arial, Helvetica, sans-serif", Toolbar_default, toolbarTexts, getParagraphFontFamilyFromProperties = (paragraphProps, convertedXml = {}) => {
291076
+ }, _hoisted_1$7, _hoisted_2$4, _hoisted_3$3, _hoisted_4$3, _hoisted_5$3, _hoisted_6$2, _hoisted_7$1, FontFamilyCombobox_default, SdTooltip_default, _hoisted_1$6, _hoisted_2$3, _hoisted_3$2, _hoisted_4$2, _hoisted_5$2, _hoisted_6$1, TOOLBAR_TOOLTIP_AUTO_HIDE_MS = 3000, ButtonGroup_default, DEFAULT_UI_FONT_FAMILY = "Arial, Helvetica, sans-serif", Toolbar_default, toolbarTexts, getParagraphFontFamilyFromProperties = (paragraphProps, convertedXml = {}) => {
290987
291077
  const fontFamilyProps = paragraphProps?.runProperties?.fontFamily;
290988
291078
  if (!fontFamilyProps)
290989
291079
  return null;
@@ -303327,7 +303417,9 @@ menclose::after {
303327
303417
  vector.geometry.rotation ?? 0,
303328
303418
  vector.geometry.flipH ? 1 : 0,
303329
303419
  vector.geometry.flipV ? 1 : 0,
303330
- drawingTextVersion(vector)
303420
+ drawingTextVersion(vector),
303421
+ block.anchor?.offsetH ?? "",
303422
+ block.anchor?.offsetV ?? ""
303331
303423
  ].join("|");
303332
303424
  }
303333
303425
  if (block.drawingKind === "shapeGroup") {
@@ -307180,6 +307272,7 @@ menclose::after {
307180
307272
  #pendingMarginClick = null;
307181
307273
  #pendingTocLinkNav = null;
307182
307274
  #lastSelectedImageBlockId = null;
307275
+ #lastSelectedTextboxBlockId = null;
307183
307276
  #suppressFocusInFromDraggable = false;
307184
307277
  #pendingStructuredContentLabelGesture = null;
307185
307278
  #debugLastPointer = null;
@@ -307889,6 +307982,37 @@ menclose::after {
307889
307982
  this.#callbacks.updateSelectionDebugHud?.();
307890
307983
  if (!suppressFocusForDrag)
307891
307984
  event.preventDefault();
307985
+ const textboxBorderSelection = this.#resolveTextboxBorderSelection({
307986
+ event,
307987
+ editor,
307988
+ doc: doc$12,
307989
+ hitPos: hit?.pos ?? null,
307990
+ rawHitPos: rawHit?.pos ?? null,
307991
+ pageIndex: normalizedPoint.pageIndex
307992
+ });
307993
+ if (textboxBorderSelection) {
307994
+ const { editor: selectionEditor, fragmentEl, shapeContainerPos, blockId } = textboxBorderSelection;
307995
+ try {
307996
+ const tr = selectionEditor.state.tr.setSelection(NodeSelection.create(doc$12, shapeContainerPos));
307997
+ selectionEditor.view?.dispatch(tr);
307998
+ if (this.#lastSelectedImageBlockId) {
307999
+ this.#callbacks.emit?.("imageDeselected", { blockId: this.#lastSelectedImageBlockId });
308000
+ this.#lastSelectedImageBlockId = null;
308001
+ }
308002
+ if (this.#lastSelectedTextboxBlockId && this.#lastSelectedTextboxBlockId !== blockId)
308003
+ this.#callbacks.emit?.("textboxDeselected", { blockId: this.#lastSelectedTextboxBlockId });
308004
+ this.#callbacks.emit?.("textboxSelected", {
308005
+ element: fragmentEl,
308006
+ blockId
308007
+ });
308008
+ this.#lastSelectedTextboxBlockId = blockId;
308009
+ } catch (error48) {
308010
+ if (process$1.env.NODE_ENV === "development")
308011
+ console.warn("[EditorInputManager] Failed to create NodeSelection for textbox container:", error48);
308012
+ }
308013
+ this.#callbacks.focusEditorAfterImageSelection?.();
308014
+ return;
308015
+ }
307892
308016
  if (!rawHit) {
307893
308017
  this.#focusEditor();
307894
308018
  return;
@@ -307920,6 +308044,10 @@ menclose::after {
307920
308044
  this.#callbacks.emit?.("imageDeselected", { blockId: this.#lastSelectedImageBlockId });
307921
308045
  this.#lastSelectedImageBlockId = null;
307922
308046
  }
308047
+ if (this.#lastSelectedTextboxBlockId) {
308048
+ this.#callbacks.emit?.("textboxDeselected", { blockId: this.#lastSelectedTextboxBlockId });
308049
+ this.#lastSelectedTextboxBlockId = null;
308050
+ }
307923
308051
  if (event.shiftKey && editor.state.selection.$anchor) {
307924
308052
  this.#handleShiftClick(event, hit.pos);
307925
308053
  return;
@@ -308569,6 +308697,10 @@ menclose::after {
308569
308697
  const newSelectionId = `inline-${clampedImgPos}`;
308570
308698
  if (this.#lastSelectedImageBlockId && this.#lastSelectedImageBlockId !== newSelectionId)
308571
308699
  this.#callbacks.emit?.("imageDeselected", { blockId: this.#lastSelectedImageBlockId });
308700
+ if (this.#lastSelectedTextboxBlockId && this.#lastSelectedTextboxBlockId !== newSelectionId) {
308701
+ this.#callbacks.emit?.("textboxDeselected", { blockId: this.#lastSelectedTextboxBlockId });
308702
+ this.#lastSelectedTextboxBlockId = null;
308703
+ }
308572
308704
  const editor = this.#deps?.getEditor();
308573
308705
  try {
308574
308706
  const tr = editor.state.tr.setSelection(NodeSelection.create(doc$12, clampedImgPos));
@@ -308601,6 +308733,10 @@ menclose::after {
308601
308733
  editor.view?.dispatch(tr);
308602
308734
  if (this.#lastSelectedImageBlockId && this.#lastSelectedImageBlockId !== fragmentHit.fragment.blockId)
308603
308735
  this.#callbacks.emit?.("imageDeselected", { blockId: this.#lastSelectedImageBlockId });
308736
+ if (this.#lastSelectedTextboxBlockId) {
308737
+ this.#callbacks.emit?.("textboxDeselected", { blockId: this.#lastSelectedTextboxBlockId });
308738
+ this.#lastSelectedTextboxBlockId = null;
308739
+ }
308604
308740
  if (fragmentHit.fragment.kind === "image") {
308605
308741
  const targetElement = fragmentHit.fragment.pmStart != null ? this.#callbacks.resolveImageFragmentElementByPmStart?.(fragmentHit.fragment.pmStart) ?? null : null;
308606
308742
  if (targetElement) {
@@ -308619,6 +308755,90 @@ menclose::after {
308619
308755
  this.#callbacks.focusEditorAfterImageSelection?.();
308620
308756
  return true;
308621
308757
  }
308758
+ #resolveTextboxBorderSelection({ event, editor, doc: doc$12, hitPos, rawHitPos, pageIndex }) {
308759
+ if (!doc$12)
308760
+ return null;
308761
+ const fragmentEl = this.#resolveTextboxFragmentElement(event.target, event.clientX, event.clientY, pageIndex);
308762
+ if (!fragmentEl)
308763
+ return null;
308764
+ const BORDER_HIT_MARGIN = 6;
308765
+ const rect = fragmentEl.getBoundingClientRect();
308766
+ if (!(event.clientX - rect.left <= BORDER_HIT_MARGIN || rect.right - event.clientX <= BORDER_HIT_MARGIN || event.clientY - rect.top <= BORDER_HIT_MARGIN || rect.bottom - event.clientY <= BORDER_HIT_MARGIN))
308767
+ return null;
308768
+ const shapeContainerPos = this.#resolveShapeContainerPos(doc$12, fragmentEl, [hitPos, rawHitPos]);
308769
+ if (shapeContainerPos == null)
308770
+ return null;
308771
+ return {
308772
+ editor,
308773
+ fragmentEl,
308774
+ shapeContainerPos,
308775
+ blockId: fragmentEl.dataset.blockId ?? null
308776
+ };
308777
+ }
308778
+ #resolveTextboxFragmentElement(target, clientX, clientY, pageIndex) {
308779
+ const candidates = [];
308780
+ const seen = /* @__PURE__ */ new Set;
308781
+ const addCandidate = (element3) => {
308782
+ if (!element3 || seen.has(element3))
308783
+ return;
308784
+ seen.add(element3);
308785
+ candidates.push(element3);
308786
+ };
308787
+ const resolveCandidate = (element3) => {
308788
+ if (!(element3 instanceof HTMLElement))
308789
+ return null;
308790
+ const pageLevelFragment = element3.closest(".superdoc-drawing-fragment");
308791
+ if (pageLevelFragment)
308792
+ return pageLevelFragment;
308793
+ const tableDrawing = element3.closest(".superdoc-table-drawing");
308794
+ if (tableDrawing?.parentElement instanceof HTMLElement && tableDrawing.parentElement.dataset.blockId)
308795
+ return tableDrawing.parentElement;
308796
+ return element3.closest("[data-block-id]") ?? null;
308797
+ };
308798
+ addCandidate(resolveCandidate(target));
308799
+ const ownerDocument = target instanceof Element ? target.ownerDocument : document;
308800
+ if (typeof ownerDocument.elementsFromPoint === "function")
308801
+ for (const element3 of ownerDocument.elementsFromPoint(clientX, clientY))
308802
+ addCandidate(resolveCandidate(element3));
308803
+ if (Number.isFinite(pageIndex)) {
308804
+ const pageCandidates = this.#deps?.getViewportHost()?.querySelector(`[data-page-index="${pageIndex}"]`)?.querySelectorAll("[data-block-id]");
308805
+ if (pageCandidates)
308806
+ for (const candidate of Array.from(pageCandidates)) {
308807
+ const rect = candidate.getBoundingClientRect();
308808
+ if (clientX >= rect.left && clientX <= rect.right && clientY >= rect.top && clientY <= rect.bottom)
308809
+ addCandidate(candidate);
308810
+ }
308811
+ }
308812
+ for (const candidate of candidates)
308813
+ if (candidate.classList.contains("superdoc-textbox-shape") || candidate.querySelector(".superdoc-textbox-shape") != null)
308814
+ return candidate;
308815
+ return null;
308816
+ }
308817
+ #resolveShapeContainerPos(doc$12, fragmentEl, candidatePositions) {
308818
+ const fragmentPmStart = fragmentEl.querySelector("[data-pm-start]")?.dataset.pmStart;
308819
+ const positions = [...candidatePositions];
308820
+ if (fragmentPmStart != null)
308821
+ positions.push(Number(fragmentPmStart));
308822
+ for (const pos of positions) {
308823
+ if (!Number.isFinite(pos))
308824
+ continue;
308825
+ const resolvedPos = this.#findAncestorShapeContainerPos(doc$12, Number(pos));
308826
+ if (resolvedPos != null)
308827
+ return resolvedPos;
308828
+ }
308829
+ return null;
308830
+ }
308831
+ #findAncestorShapeContainerPos(doc$12, pos) {
308832
+ try {
308833
+ const $pos = doc$12.resolve(pos);
308834
+ for (let depth = $pos.depth;depth >= 0; depth -= 1)
308835
+ if ($pos.node(depth).type.name === "shapeContainer")
308836
+ return $pos.before(depth);
308837
+ } catch {
308838
+ return null;
308839
+ }
308840
+ return null;
308841
+ }
308622
308842
  #handleShiftClick(event, headPos) {
308623
308843
  const editor = this.#deps?.getActiveEditor() ?? this.#deps?.getEditor();
308624
308844
  if (!editor)
@@ -312690,13 +312910,13 @@ menclose::after {
312690
312910
  return;
312691
312911
  console.log(...args$1);
312692
312912
  }, 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, TRACKED_MARK_NAMES;
312693
- var init_src_DX3B_Otx_es = __esm(() => {
312913
+ var init_src_DfMY3HP9_es = __esm(() => {
312694
312914
  init_rolldown_runtime_Bg48TavK_es();
312695
- init_SuperConverter_DVjSc_AY_es();
312915
+ init_SuperConverter_Du0apG1R_es();
312696
312916
  init_jszip_C49i9kUs_es();
312697
312917
  init_xml_js_CqGKpaft_es();
312698
312918
  init_uuid_B2wVPhPi_es();
312699
- init_create_headless_toolbar_DYtdH4mX_es();
312919
+ init_create_headless_toolbar_BNcguDpP_es();
312700
312920
  init_constants_D9qj59G2_es();
312701
312921
  init_unified_BDuVPlMu_es();
312702
312922
  init_remark_gfm_BUJjZJLy_es();
@@ -336885,7 +337105,7 @@ function print() { __p += __j.call(arguments, '') }
336885
337105
  } });
336886
337106
  tippy.setDefaultProps({ render });
336887
337107
  tippy_esm_default = tippy;
336888
- _hoisted_1$23 = ["onClick", "onMouseenter"];
337108
+ _hoisted_1$24 = ["onClick", "onMouseenter"];
336889
337109
  _hoisted_2$18 = { key: 0 };
336890
337110
  _hoisted_3$14 = { key: 0 };
336891
337111
  _hoisted_4$10 = { key: 1 };
@@ -336955,7 +337175,7 @@ function print() { __p += __j.call(arguments, '') }
336955
337175
  onMouseleave: _cache[0] || (_cache[0] = ($event) => activeUserIndex.value = null),
336956
337176
  key: user.email,
336957
337177
  class: exports_vue.normalizeClass(["user-row", { "sd-selected": activeUserIndex.value === index2 }])
336958
- }, [user.name ? (exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_2$18, [user.name ? (exports_vue.openBlock(), exports_vue.createElementBlock("span", _hoisted_3$14, exports_vue.toDisplayString(user.name), 1)) : exports_vue.createCommentVNode("", true), user.name && user.email ? (exports_vue.openBlock(), exports_vue.createElementBlock("span", _hoisted_4$10, " (" + exports_vue.toDisplayString(user.email) + ")", 1)) : exports_vue.createCommentVNode("", true)])) : (exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_5$9, [exports_vue.createElementVNode("span", null, exports_vue.toDisplayString(user.email), 1)]))], 42, _hoisted_1$23);
337178
+ }, [user.name ? (exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_2$18, [user.name ? (exports_vue.openBlock(), exports_vue.createElementBlock("span", _hoisted_3$14, exports_vue.toDisplayString(user.name), 1)) : exports_vue.createCommentVNode("", true), user.name && user.email ? (exports_vue.openBlock(), exports_vue.createElementBlock("span", _hoisted_4$10, " (" + exports_vue.toDisplayString(user.email) + ")", 1)) : exports_vue.createCommentVNode("", true)])) : (exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_5$9, [exports_vue.createElementVNode("span", null, exports_vue.toDisplayString(user.email), 1)]))], 42, _hoisted_1$24);
336959
337179
  }), 128))], 544);
336960
337180
  };
336961
337181
  }
@@ -338246,7 +338466,7 @@ function print() { __p += __j.call(arguments, '') }
338246
338466
  })
338247
338467
  }
338248
338468
  ] };
338249
- _hoisted_1$22 = { class: "ai-user-input-field" };
338469
+ _hoisted_1$23 = { class: "ai-user-input-field" };
338250
338470
  _hoisted_2$17 = ["innerHTML"];
338251
338471
  _hoisted_3$13 = ["placeholder"];
338252
338472
  _hoisted_4$9 = { class: "ai-loader" };
@@ -338477,7 +338697,7 @@ function print() { __p += __j.call(arguments, '') }
338477
338697
  ref_key: "aiWriterRef",
338478
338698
  ref: aiWriterRef,
338479
338699
  onMousedown: _cache[1] || (_cache[1] = exports_vue.withModifiers(() => {}, ["stop"]))
338480
- }, [exports_vue.createElementVNode("div", _hoisted_1$22, [exports_vue.createElementVNode("span", {
338700
+ }, [exports_vue.createElementVNode("div", _hoisted_1$23, [exports_vue.createElementVNode("span", {
338481
338701
  class: "ai-textarea-icon",
338482
338702
  innerHTML: exports_vue.unref(edit_regular_default)
338483
338703
  }, null, 8, _hoisted_2$17), exports_vue.withDirectives(exports_vue.createElementVNode("textarea", {
@@ -338579,7 +338799,7 @@ function print() { __p += __j.call(arguments, '') }
338579
338799
  formattingMarks: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true"><text x="12" y="18" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="20" font-weight="700" fill="currentColor">¶</text></svg>
338580
338800
  `
338581
338801
  };
338582
- _hoisted_1$21 = [
338802
+ _hoisted_1$22 = [
338583
338803
  "onClick",
338584
338804
  "innerHTML",
338585
338805
  "aria-label",
@@ -338671,12 +338891,12 @@ function print() { __p += __j.call(arguments, '') }
338671
338891
  ref_key: "alignmentButtonsRefs",
338672
338892
  ref: alignmentButtonsRefs,
338673
338893
  onKeydown: exports_vue.withModifiers((event) => handleKeyDown$1(event, index2), ["prevent"])
338674
- }, null, 40, _hoisted_1$21);
338894
+ }, null, 40, _hoisted_1$22);
338675
338895
  }), 64))], 2);
338676
338896
  };
338677
338897
  }
338678
338898
  }, [["__scopeId", "data-v-ceb338e0"]]);
338679
- _hoisted_1$20 = [
338899
+ _hoisted_1$21 = [
338680
338900
  "onClick",
338681
338901
  "innerHTML",
338682
338902
  "aria-label",
@@ -338765,7 +338985,7 @@ function print() { __p += __j.call(arguments, '') }
338765
338985
  ref_key: "buttonRefs",
338766
338986
  ref: buttonRefs,
338767
338987
  onKeydown: exports_vue.withModifiers((event) => handleKeyDown$1(event, index2), ["prevent"])
338768
- }, null, 46, _hoisted_1$20);
338988
+ }, null, 46, _hoisted_1$21);
338769
338989
  }), 128))], 2);
338770
338990
  };
338771
338991
  }
@@ -338829,7 +339049,7 @@ function print() { __p += __j.call(arguments, '') }
338829
339049
  ariaLabel: "a) b) c)"
338830
339050
  }
338831
339051
  ];
338832
- _hoisted_1$19 = ["onClick", "onKeydown"];
339052
+ _hoisted_1$20 = ["onClick", "onKeydown"];
338833
339053
  _hoisted_2$16 = { class: "document-mode-column icon-column" };
338834
339054
  _hoisted_3$12 = ["innerHTML"];
338835
339055
  _hoisted_4$8 = { class: "document-mode-column text-column" };
@@ -338898,12 +339118,12 @@ function print() { __p += __j.call(arguments, '') }
338898
339118
  }, [exports_vue.createElementVNode("div", _hoisted_2$16, [exports_vue.createElementVNode("div", {
338899
339119
  class: "icon-column__icon",
338900
339120
  innerHTML: option.icon
338901
- }, null, 8, _hoisted_3$12)]), exports_vue.createElementVNode("div", _hoisted_4$8, [exports_vue.createElementVNode("div", _hoisted_5$7, exports_vue.toDisplayString(option.label), 1), exports_vue.createElementVNode("div", _hoisted_6$5, exports_vue.toDisplayString(option.description), 1)])], 42, _hoisted_1$19);
339121
+ }, null, 8, _hoisted_3$12)]), exports_vue.createElementVNode("div", _hoisted_4$8, [exports_vue.createElementVNode("div", _hoisted_5$7, exports_vue.toDisplayString(option.label), 1), exports_vue.createElementVNode("div", _hoisted_6$5, exports_vue.toDisplayString(option.description), 1)])], 42, _hoisted_1$20);
338902
339122
  }), 256))], 2);
338903
339123
  };
338904
339124
  }
338905
339125
  }, [["__scopeId", "data-v-abd514d9"]]);
338906
- _hoisted_1$18 = {
339126
+ _hoisted_1$19 = {
338907
339127
  key: 0,
338908
339128
  class: "linked-style-buttons",
338909
339129
  "data-editor-ui-surface": ""
@@ -338965,7 +339185,7 @@ function print() { __p += __j.call(arguments, '') }
338965
339185
  styleRefs.value[0].focus();
338966
339186
  });
338967
339187
  return (_ctx, _cache) => {
338968
- return props.editor ? (exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_1$18, [(exports_vue.openBlock(true), exports_vue.createElementBlock(exports_vue.Fragment, null, exports_vue.renderList(exports_vue.unref(getQuickFormatList)(__props.editor), (style2, index2) => {
339188
+ return props.editor ? (exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_1$19, [(exports_vue.openBlock(true), exports_vue.createElementBlock(exports_vue.Fragment, null, exports_vue.renderList(exports_vue.unref(getQuickFormatList)(__props.editor), (style2, index2) => {
338969
339189
  return exports_vue.openBlock(), exports_vue.createElementBlock("div", {
338970
339190
  class: exports_vue.normalizeClass(["style-item", { selected: __props.selectedOption === style2.id }]),
338971
339191
  onClick: ($event) => select2(style2),
@@ -338983,7 +339203,7 @@ function print() { __p += __j.call(arguments, '') }
338983
339203
  };
338984
339204
  }
338985
339205
  }, [["__scopeId", "data-v-80e74746"]]);
338986
- _hoisted_1$17 = {
339206
+ _hoisted_1$18 = {
338987
339207
  key: 0,
338988
339208
  class: "link-title"
338989
339209
  };
@@ -339186,7 +339406,7 @@ function print() { __p += __j.call(arguments, '') }
339186
339406
  props.goToAnchor(url$1);
339187
339407
  };
339188
339408
  return (_ctx, _cache) => {
339189
- return exports_vue.openBlock(), exports_vue.createElementBlock("div", { class: exports_vue.normalizeClass(["link-input-ctn", { "high-contrast": exports_vue.unref(isHighContrastMode$1) }]) }, [isAnchor.value ? (exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_1$17, "Page anchor")) : isViewingMode.value ? (exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_2$14, "Link details")) : isEditing.value ? (exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_3$11, "Edit link")) : (exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_4$7, "Add link")), __props.showInput && !isAnchor.value ? (exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_5$6, [
339409
+ return exports_vue.openBlock(), exports_vue.createElementBlock("div", { class: exports_vue.normalizeClass(["link-input-ctn", { "high-contrast": exports_vue.unref(isHighContrastMode$1) }]) }, [isAnchor.value ? (exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_1$18, "Page anchor")) : isViewingMode.value ? (exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_2$14, "Link details")) : isEditing.value ? (exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_3$11, "Edit link")) : (exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_4$7, "Add link")), __props.showInput && !isAnchor.value ? (exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_5$6, [
339190
339410
  exports_vue.createElementVNode("div", _hoisted_6$4, [_cache[5] || (_cache[5] = exports_vue.createElementVNode("div", { class: "input-icon text-input-icon" }, "T", -1)), exports_vue.withDirectives(exports_vue.createElementVNode("input", {
339191
339411
  type: "text",
339192
339412
  name: "text",
@@ -339233,7 +339453,7 @@ function print() { __p += __j.call(arguments, '') }
339233
339453
  };
339234
339454
  }
339235
339455
  }, [["__scopeId", "data-v-c490d677"]]);
339236
- _hoisted_1$16 = [
339456
+ _hoisted_1$17 = [
339237
339457
  "aria-label",
339238
339458
  "onClick",
339239
339459
  "onKeydown"
@@ -339365,13 +339585,13 @@ function print() { __p += __j.call(arguments, '') }
339365
339585
  class: "sd-option__check",
339366
339586
  innerHTML: exports_vue.unref(toolbarIcons).colorOptionCheck,
339367
339587
  style: exports_vue.normalizeStyle(getCheckStyle(option.value, optionIndex))
339368
- }, null, 12, _hoisted_3$10)) : exports_vue.createCommentVNode("", true)], 40, _hoisted_1$16);
339588
+ }, null, 12, _hoisted_3$10)) : exports_vue.createCommentVNode("", true)], 40, _hoisted_1$17);
339369
339589
  }), 128))]);
339370
339590
  }), 128);
339371
339591
  };
339372
339592
  }
339373
339593
  }, [["__scopeId", "data-v-30cad300"]]);
339374
- _hoisted_1$15 = { class: "options-grid-wrap" };
339594
+ _hoisted_1$16 = { class: "options-grid-wrap" };
339375
339595
  _hoisted_2$12 = ["innerHTML"];
339376
339596
  _hoisted_3$9 = { class: "option-grid-ctn" };
339377
339597
  IconGrid_default = /* @__PURE__ */ __plugin_vue_export_helper_default({
@@ -339401,7 +339621,7 @@ function print() { __p += __j.call(arguments, '') }
339401
339621
  emit("select", option);
339402
339622
  };
339403
339623
  return (_ctx, _cache) => {
339404
- return exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_1$15, [__props.hasNoneIcon ? (exports_vue.openBlock(), exports_vue.createElementBlock("div", {
339624
+ return exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_1$16, [__props.hasNoneIcon ? (exports_vue.openBlock(), exports_vue.createElementBlock("div", {
339405
339625
  key: 0,
339406
339626
  class: "none-option",
339407
339627
  role: "menuitem",
@@ -339496,7 +339716,7 @@ function print() { __p += __j.call(arguments, '') }
339496
339716
  makeColorOption("#A91DFF", "neon purple")
339497
339717
  ]
339498
339718
  ];
339499
- _hoisted_1$14 = [
339719
+ _hoisted_1$15 = [
339500
339720
  "data-cols",
339501
339721
  "data-rows",
339502
339722
  "onKeydown",
@@ -339613,7 +339833,7 @@ function print() { __p += __j.call(arguments, '') }
339613
339833
  cols: n,
339614
339834
  rows: i3
339615
339835
  }), ["stop", "prevent"])
339616
- }, null, 40, _hoisted_1$14);
339836
+ }, null, 40, _hoisted_1$15);
339617
339837
  }), 64))], 64);
339618
339838
  }), 64))], 32), exports_vue.createElementVNode("div", {
339619
339839
  class: "toolbar-table-grid-value",
@@ -339622,7 +339842,7 @@ function print() { __p += __j.call(arguments, '') }
339622
339842
  };
339623
339843
  }
339624
339844
  }, [["__scopeId", "data-v-168b91ce"]]);
339625
- _hoisted_1$13 = { class: "toolbar-table-actions" };
339845
+ _hoisted_1$14 = { class: "toolbar-table-actions" };
339626
339846
  _hoisted_2$10 = [
339627
339847
  "onClick",
339628
339848
  "data-item",
@@ -339641,7 +339861,7 @@ function print() { __p += __j.call(arguments, '') }
339641
339861
  emit("select", { command: item.command });
339642
339862
  };
339643
339863
  return (_ctx, _cache) => {
339644
- return exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_1$13, [(exports_vue.openBlock(true), exports_vue.createElementBlock(exports_vue.Fragment, null, exports_vue.renderList(__props.options, (option) => {
339864
+ return exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_1$14, [(exports_vue.openBlock(true), exports_vue.createElementBlock(exports_vue.Fragment, null, exports_vue.renderList(__props.options, (option) => {
339645
339865
  return exports_vue.openBlock(), exports_vue.createElementBlock("div", {
339646
339866
  class: exports_vue.normalizeClass(["toolbar-table-actions__item", { "toolbar-table-actions__item--border": option.bottomBorder }]),
339647
339867
  onClick: ($event) => handleClick$1(option),
@@ -339656,7 +339876,7 @@ function print() { __p += __j.call(arguments, '') }
339656
339876
  };
339657
339877
  }
339658
339878
  }, [["__scopeId", "data-v-652015c8"]]);
339659
- _hoisted_1$12 = { class: "search-input-ctn" };
339879
+ _hoisted_1$13 = { class: "search-input-ctn" };
339660
339880
  _hoisted_2$9 = { class: "sd-row" };
339661
339881
  _hoisted_3$7 = ["onKeydown"];
339662
339882
  SearchInput_default = /* @__PURE__ */ __plugin_vue_export_helper_default({
@@ -339670,7 +339890,7 @@ function print() { __p += __j.call(arguments, '') }
339670
339890
  emit("submit", { value: searchValue.value });
339671
339891
  };
339672
339892
  return (_ctx, _cache) => {
339673
- return exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_1$12, [exports_vue.createElementVNode("div", _hoisted_2$9, [exports_vue.withDirectives(exports_vue.createElementVNode("input", {
339893
+ return exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_1$13, [exports_vue.createElementVNode("div", _hoisted_2$9, [exports_vue.withDirectives(exports_vue.createElementVNode("input", {
339674
339894
  ref: __props.searchRef,
339675
339895
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => searchValue.value = $event),
339676
339896
  class: "search-input",
@@ -339814,7 +340034,7 @@ function print() { __p += __j.call(arguments, '') }
339814
340034
  HEADLESS_TOOLBAR_COMMANDS = [...new Set([...Object.values(HEADLESS_ITEM_MAP), ...TABLE_ACTION_COMMAND_IDS])];
339815
340035
  NON_HEADLESS_EXECUTE_ITEM_NAMES = new Set(["link"]);
339816
340036
  HEADLESS_EXECUTE_ITEMS = new Set(Object.keys(HEADLESS_ITEM_MAP).filter((itemName) => !NON_HEADLESS_EXECUTE_ITEM_NAMES.has(itemName)));
339817
- _hoisted_1$11 = { class: "sd-toolbar-icon" };
340037
+ _hoisted_1$12 = { class: "sd-toolbar-icon" };
339818
340038
  _hoisted_2$8 = ["innerHTML"];
339819
340039
  ToolbarButtonIcon_default = /* @__PURE__ */ __plugin_vue_export_helper_default({
339820
340040
  __name: "ToolbarButtonIcon",
@@ -339844,7 +340064,7 @@ function print() { __p += __j.call(arguments, '') }
339844
340064
  return ["color", "highlight"].includes(props.name);
339845
340065
  });
339846
340066
  return (_ctx, _cache) => {
339847
- return exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_1$11, [exports_vue.createElementVNode("div", {
340067
+ return exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_1$12, [exports_vue.createElementVNode("div", {
339848
340068
  class: exports_vue.normalizeClass(["sd-toolbar-icon__icon", [`sd-toolbar-icon__icon--${props.name}`]]),
339849
340069
  innerHTML: __props.icon
339850
340070
  }, null, 10, _hoisted_2$8), hasColorBar.value ? (exports_vue.openBlock(), exports_vue.createElementBlock("div", {
@@ -339855,7 +340075,7 @@ function print() { __p += __j.call(arguments, '') }
339855
340075
  };
339856
340076
  }
339857
340077
  }, [["__scopeId", "data-v-521c3d93"]]);
339858
- _hoisted_1$10 = ["role", "aria-label"];
340078
+ _hoisted_1$11 = ["role", "aria-label"];
339859
340079
  _hoisted_2$7 = ["data-item"];
339860
340080
  _hoisted_3$6 = ["data-item"];
339861
340081
  _hoisted_4$5 = {
@@ -340106,11 +340326,11 @@ function print() { __p += __j.call(arguments, '') }
340106
340326
  }, null, 12, _hoisted_13)) : exports_vue.createCommentVNode("", true)
340107
340327
  ], 64)),
340108
340328
  exports_vue.createElementVNode("div", _hoisted_14, exports_vue.toDisplayString(`${exports_vue.unref(attributes).ariaLabel} ${exports_vue.unref(active) ? "selected" : "unset"}`), 1)
340109
- ], 10, _hoisted_2$7)], 46, _hoisted_1$10);
340329
+ ], 10, _hoisted_2$7)], 46, _hoisted_1$11);
340110
340330
  };
340111
340331
  }
340112
340332
  }, [["__scopeId", "data-v-2caa0057"]]);
340113
- _hoisted_1$9 = {
340333
+ _hoisted_1$10 = {
340114
340334
  class: "toolbar-separator",
340115
340335
  role: "separator",
340116
340336
  "aria-label": "Toolbar separator"
@@ -340130,14 +340350,14 @@ function print() { __p += __j.call(arguments, '') }
340130
340350
  return "var(--sd-ui-border, #dbdbdb)";
340131
340351
  };
340132
340352
  return (_ctx, _cache) => {
340133
- return exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_1$9, [exports_vue.createElementVNode("div", {
340353
+ return exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_1$10, [exports_vue.createElementVNode("div", {
340134
340354
  class: "separator-inner",
340135
340355
  style: exports_vue.normalizeStyle({ backgroundColor: getSeparatorColor() })
340136
340356
  }, null, 4)]);
340137
340357
  };
340138
340358
  }
340139
340359
  }, [["__scopeId", "data-v-d027f7fc"]]);
340140
- _hoisted_1$8 = { class: "overflow-menu" };
340360
+ _hoisted_1$9 = { class: "overflow-menu" };
340141
340361
  _hoisted_2$6 = { class: "overflow-menu-trigger" };
340142
340362
  _hoisted_3$5 = {
340143
340363
  key: 0,
@@ -340191,7 +340411,7 @@ function print() { __p += __j.call(arguments, '') }
340191
340411
  document.removeEventListener("keydown", handleKeyDown$1, true);
340192
340412
  });
340193
340413
  return (_ctx, _cache) => {
340194
- return exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_1$8, [exports_vue.createElementVNode("div", _hoisted_2$6, [exports_vue.createVNode(ToolbarButton_default, {
340414
+ return exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_1$9, [exports_vue.createElementVNode("div", _hoisted_2$6, [exports_vue.createVNode(ToolbarButton_default, {
340195
340415
  "toolbar-item": overflowToolbarItem.value,
340196
340416
  onButtonClick: toggleOverflowMenu
340197
340417
  }, null, 8, ["toolbar-item"])]), isOverflowMenuOpened.value ? (exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_3$5, [exports_vue.createVNode(ButtonGroup_default, {
@@ -340204,7 +340424,7 @@ function print() { __p += __j.call(arguments, '') }
340204
340424
  };
340205
340425
  }
340206
340426
  }, [["__scopeId", "data-v-35b48dff"]]);
340207
- _hoisted_1$7 = { class: "toolbar-dropdown" };
340427
+ _hoisted_1$8 = { class: "toolbar-dropdown" };
340208
340428
  _hoisted_2$5 = ["onClick"];
340209
340429
  _hoisted_3$4 = {
340210
340430
  key: 0,
@@ -340558,7 +340778,7 @@ function print() { __p += __j.call(arguments, '') }
340558
340778
  window.removeEventListener("scroll", updateMenuPosition, true);
340559
340779
  });
340560
340780
  return (_ctx, _cache) => {
340561
- return exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_1$7, [exports_vue.createElementVNode("div", {
340781
+ return exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_1$8, [exports_vue.createElementVNode("div", {
340562
340782
  ref_key: "triggerRef",
340563
340783
  ref: triggerRef,
340564
340784
  class: "toolbar-dropdown-trigger",
@@ -340600,7 +340820,7 @@ function print() { __p += __j.call(arguments, '') }
340600
340820
  };
340601
340821
  }
340602
340822
  }, [["__scopeId", "data-v-69732782"]]);
340603
- _hoisted_1$6 = [
340823
+ _hoisted_1$7 = [
340604
340824
  "value",
340605
340825
  "disabled",
340606
340826
  "aria-label",
@@ -341028,7 +341248,7 @@ function print() { __p += __j.call(arguments, '') }
341028
341248
  onKeydown,
341029
341249
  onCompositionstart: _cache[0] || (_cache[0] = ($event) => isComposing.value = true),
341030
341250
  onCompositionend: onCompositionEnd
341031
- }, null, 44, _hoisted_1$6)], 32),
341251
+ }, null, 44, _hoisted_1$7)], 32),
341032
341252
  exports_vue.createElementVNode("button", {
341033
341253
  type: "button",
341034
341254
  class: "sd-font-combobox__caret sd-toolbar-split-field__caret",
@@ -341284,7 +341504,7 @@ function print() { __p += __j.call(arguments, '') }
341284
341504
  };
341285
341505
  }
341286
341506
  }), [["__scopeId", "data-v-f0925f67"]]);
341287
- _hoisted_1$5 = ["data-toolbar-position"];
341507
+ _hoisted_1$6 = ["data-toolbar-position"];
341288
341508
  _hoisted_2$3 = [
341289
341509
  "onKeydown",
341290
341510
  "tabindex",
@@ -341845,7 +342065,7 @@ function print() { __p += __j.call(arguments, '') }
341845
342065
  "overflow-items"
341846
342066
  ])) : exports_vue.createCommentVNode("", true)
341847
342067
  ], 42, _hoisted_2$3);
341848
- }), 128))], 44, _hoisted_1$5);
342068
+ }), 128))], 44, _hoisted_1$6);
341849
342069
  };
341850
342070
  }
341851
342071
  }, [["__scopeId", "data-v-181bd035"]]);
@@ -346889,6 +347109,13 @@ function print() { __p += __j.call(arguments, '') }
346889
347109
  .${DOM_CLASS_NAMES.INLINE_IMAGE_CLIP_WRAPPER}.superdoc-image-selected {
346890
347110
  outline-offset: 2px;
346891
347111
  }
347112
+
347113
+ .superdoc-textbox-selected {
347114
+ outline: 2px solid #4a90e2;
347115
+ outline-offset: 2px;
347116
+ border-radius: 2px;
347117
+ box-shadow: 0 0 0 1px rgba(74, 144, 226, 0.35);
347118
+ }
346892
347119
  `;
346893
347120
  init_dist();
346894
347121
  globalValidationStats = new ValidationStatsCollector;
@@ -351262,13 +351489,15 @@ function print() { __p += __j.call(arguments, '') }
351262
351489
  });
351263
351490
  },
351264
351491
  onSurfaceTransaction: ({ sourceEditor, surface, headerId, sectionType, transaction, duration: duration3 }) => {
351265
- if ((transaction && typeof transaction === "object" ? transaction : null)?.docChanged && headerId) {
351266
- this.#invalidateTrackedChangesForStory({
351267
- kind: "story",
351268
- storyType: "headerFooterPart",
351269
- refId: headerId
351270
- });
351271
- this.#headerFooterSession?.invalidateLayoutForRefs([headerId]);
351492
+ if ((transaction && typeof transaction === "object" ? transaction : null)?.docChanged) {
351493
+ if (headerId) {
351494
+ this.#invalidateTrackedChangesForStory({
351495
+ kind: "story",
351496
+ storyType: "headerFooterPart",
351497
+ refId: headerId
351498
+ });
351499
+ this.#headerFooterSession?.invalidateLayoutForRefs([headerId]);
351500
+ }
351272
351501
  this.#flowBlockCache.setHasExternalChanges?.(true);
351273
351502
  this.#pendingDocChange = true;
351274
351503
  this.#selectionSync.onLayoutStart();
@@ -354935,11 +355164,11 @@ function print() { __p += __j.call(arguments, '') }
354935
355164
  ]);
354936
355165
  });
354937
355166
 
354938
- // ../../packages/superdoc/dist/chunks/create-super-doc-ui-RmuwqQZI.es.js
355167
+ // ../../packages/superdoc/dist/chunks/create-super-doc-ui-oSlpT6HI.es.js
354939
355168
  var DEFAULT_TEXT_ALIGN_OPTIONS, DEFAULT_LINE_HEIGHT_OPTIONS, DEFAULT_ZOOM_OPTIONS, DEFAULT_DOCUMENT_MODE_OPTIONS, DEFAULT_FONT_SIZE_OPTIONS, headlessToolbarConstants, 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, FONT_SIZE_OPTIONS;
354940
- var init_create_super_doc_ui_RmuwqQZI_es = __esm(() => {
354941
- init_SuperConverter_DVjSc_AY_es();
354942
- init_create_headless_toolbar_DYtdH4mX_es();
355169
+ var init_create_super_doc_ui_oSlpT6HI_es = __esm(() => {
355170
+ init_SuperConverter_Du0apG1R_es();
355171
+ init_create_headless_toolbar_BNcguDpP_es();
354943
355172
  DEFAULT_TEXT_ALIGN_OPTIONS = [
354944
355173
  {
354945
355174
  label: "Left",
@@ -355230,15 +355459,15 @@ var init_zipper_BxRAi0_5_es = __esm(() => {
355230
355459
 
355231
355460
  // ../../packages/superdoc/dist/super-editor.es.js
355232
355461
  var init_super_editor_es = __esm(() => {
355233
- init_src_DX3B_Otx_es();
355234
- init_SuperConverter_DVjSc_AY_es();
355462
+ init_src_DfMY3HP9_es();
355463
+ init_SuperConverter_Du0apG1R_es();
355235
355464
  init_jszip_C49i9kUs_es();
355236
355465
  init_xml_js_CqGKpaft_es();
355237
- init_create_headless_toolbar_DYtdH4mX_es();
355466
+ init_create_headless_toolbar_BNcguDpP_es();
355238
355467
  init_constants_D9qj59G2_es();
355239
355468
  init_unified_BDuVPlMu_es();
355240
355469
  init_DocxZipper_BzS208BW_es();
355241
- init_create_super_doc_ui_RmuwqQZI_es();
355470
+ init_create_super_doc_ui_oSlpT6HI_es();
355242
355471
  init_ui_CGB3qmy3_es();
355243
355472
  init_eventemitter3_UwU_CLPU_es();
355244
355473
  init_errors_C_DoKMoN_es();
@@ -365614,7 +365843,10 @@ var init_schemas4 = __esm(() => {
365614
365843
  },
365615
365844
  caseSensitive: { type: "boolean", description: "Case-sensitive matching. Default: false." },
365616
365845
  wholeWord: { type: "boolean", description: "Require word-boundary matches. Default: false." },
365617
- includeDeletedText: { type: "boolean", description: "When true, includes text from pending tracked deletions. Default: false." }
365846
+ includeDeletedText: {
365847
+ type: "boolean",
365848
+ description: "When true, includes text from pending tracked deletions. Default: false."
365849
+ }
365618
365850
  }, ["type", "pattern"]);
365619
365851
  planTextSelectorSchema = objectSchema({
365620
365852
  type: { const: "text", description: "Must be 'text' for text pattern search." },
@@ -460070,6 +460302,19 @@ function translateDrawingMLTextbox2(params3) {
460070
460302
  return null;
460071
460303
  }
460072
460304
  const drawing = carbonCopy2(drawingContent);
460305
+ const { width: pxWidth, height: pxHeight, marginOffset } = node4.attrs ?? {};
460306
+ if (pxWidth != null || pxHeight != null) {
460307
+ const emuCx = pxWidth != null ? String(pixelsToEmu2(pxWidth)) : null;
460308
+ const emuCy = pxHeight != null ? String(pixelsToEmu2(pxHeight)) : null;
460309
+ patchNodeAttributes2(drawing, "wp:extent", emuCx, emuCy);
460310
+ patchShapeGeometryExt2(drawing, emuCx, emuCy);
460311
+ }
460312
+ if (marginOffset?.horizontal != null) {
460313
+ patchPositionOffset2(drawing, "wp:positionH", String(pixelsToEmu2(marginOffset.horizontal)));
460314
+ }
460315
+ if (marginOffset?.top != null) {
460316
+ patchPositionOffset2(drawing, "wp:positionV", String(pixelsToEmu2(marginOffset.top)));
460317
+ }
460073
460318
  const liveParagraphs = translateChildNodes2({
460074
460319
  ...params3,
460075
460320
  node: shapeTextbox
@@ -460105,9 +460350,65 @@ function findTextboxContentNode2(node4) {
460105
460350
  }
460106
460351
  return null;
460107
460352
  }
460353
+ function patchPositionOffset2(node4, posNodeName, emuValue) {
460354
+ if (!node4 || typeof node4 !== "object")
460355
+ return false;
460356
+ if (node4.name === posNodeName && Array.isArray(node4.elements)) {
460357
+ const offsetEl = node4.elements.find((el) => el.name === "wp:posOffset");
460358
+ if (offsetEl && Array.isArray(offsetEl.elements) && offsetEl.elements.length > 0) {
460359
+ offsetEl.elements[0].text = emuValue;
460360
+ return true;
460361
+ }
460362
+ return false;
460363
+ }
460364
+ if (!Array.isArray(node4.elements))
460365
+ return false;
460366
+ for (const child of node4.elements) {
460367
+ if (patchPositionOffset2(child, posNodeName, emuValue))
460368
+ return true;
460369
+ }
460370
+ return false;
460371
+ }
460372
+ function patchShapeGeometryExt2(root4, cx, cy) {
460373
+ const PATH = ["wp:anchor", "a:graphic", "a:graphicData", "wps:wsp", "wps:spPr", "a:xfrm", "a:ext"];
460374
+ let node4 = root4;
460375
+ for (const name of PATH) {
460376
+ if (!node4 || !Array.isArray(node4.elements))
460377
+ return false;
460378
+ node4 = node4.elements.find((el) => el.name === name) ?? null;
460379
+ if (!node4)
460380
+ return false;
460381
+ }
460382
+ if (!node4.attributes)
460383
+ node4.attributes = {};
460384
+ if (cx != null)
460385
+ node4.attributes.cx = cx;
460386
+ if (cy != null)
460387
+ node4.attributes.cy = cy;
460388
+ return true;
460389
+ }
460390
+ function patchNodeAttributes2(node4, targetName, cx, cy) {
460391
+ if (!node4 || typeof node4 !== "object")
460392
+ return false;
460393
+ if (node4.name === targetName && node4.attributes) {
460394
+ if (cx != null)
460395
+ node4.attributes.cx = cx;
460396
+ if (cy != null)
460397
+ node4.attributes.cy = cy;
460398
+ return true;
460399
+ }
460400
+ if (!Array.isArray(node4.elements))
460401
+ return false;
460402
+ for (const child of node4.elements) {
460403
+ if (patchNodeAttributes2(child, targetName, cx, cy))
460404
+ return true;
460405
+ }
460406
+ return false;
460407
+ }
460108
460408
  var init_translate_drawingml_textbox = __esm(() => {
460109
460409
  init_translateChildNodes();
460110
460410
  init_exporter();
460411
+ init_helpers();
460111
460412
  });
460112
460413
 
460113
460414
  // ../../packages/super-editor/src/editors/v1/core/super-converter/v3/handlers/w/pict/helpers/translate-shape-container.js
@@ -460185,6 +460486,12 @@ function buildShapeStyle2(attrs) {
460185
460486
  if (attrs.anchorData?.vRelativeFrom) {
460186
460487
  style2["mso-position-vertical-relative"] = attrs.anchorData.vRelativeFrom;
460187
460488
  }
460489
+ if (attrs.width != null) {
460490
+ style2["width"] = `${convertToPt2(attrs.width)}pt`;
460491
+ }
460492
+ if (attrs.height != null) {
460493
+ style2["height"] = `${convertToPt2(attrs.height)}pt`;
460494
+ }
460188
460495
  const entries = Object.entries(style2);
460189
460496
  if (entries.length === 0)
460190
460497
  return;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@superdoc-dev/mcp",
3
- "version": "0.12.0-next.40",
3
+ "version": "0.12.0-next.42",
4
4
  "type": "module",
5
5
  "engines": {
6
6
  "node": ">=20"
@@ -19,9 +19,9 @@
19
19
  "@types/bun": "^1.3.8",
20
20
  "@types/node": "22.19.2",
21
21
  "typescript": "^5.9.2",
22
- "@superdoc/document-api": "0.1.0-alpha.0",
23
22
  "superdoc": "1.41.0",
24
- "@superdoc/super-editor": "0.0.1"
23
+ "@superdoc/super-editor": "0.0.1",
24
+ "@superdoc/document-api": "0.1.0-alpha.0"
25
25
  },
26
26
  "publishConfig": {
27
27
  "access": "public"