@superdoc-dev/cli 0.17.0-next.36 → 0.17.0-next.38

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 +298 -73
  2. package/package.json +8 -8
package/dist/index.js CHANGED
@@ -10083,7 +10083,10 @@ var init_schemas = __esm(() => {
10083
10083
  },
10084
10084
  caseSensitive: { type: "boolean", description: "Case-sensitive matching. Default: false." },
10085
10085
  wholeWord: { type: "boolean", description: "Require word-boundary matches. Default: false." },
10086
- includeDeletedText: { type: "boolean", description: "When true, includes text from pending tracked deletions. Default: false." }
10086
+ includeDeletedText: {
10087
+ type: "boolean",
10088
+ description: "When true, includes text from pending tracked deletions. Default: false."
10089
+ }
10087
10090
  }, ["type", "pattern"]);
10088
10091
  planTextSelectorSchema = objectSchema({
10089
10092
  type: { const: "text", description: "Must be 'text' for text pattern search." },
@@ -69154,7 +69157,7 @@ var init_remark_gfm_BUJjZJLy_es = __esm(() => {
69154
69157
  emptyOptions2 = {};
69155
69158
  });
69156
69159
 
69157
- // ../../packages/superdoc/dist/chunks/SuperConverter-DVjSc-AY.es.js
69160
+ // ../../packages/superdoc/dist/chunks/SuperConverter-Du0apG1R.es.js
69158
69161
  function getExtensionConfigField(extension$1, field, context = { name: "" }) {
69159
69162
  const fieldValue = extension$1.config[field];
69160
69163
  if (typeof fieldValue === "function")
@@ -103310,6 +103313,17 @@ function translateDrawingMLTextbox(params3) {
103310
103313
  if (!drawingContent || !shapeTextbox)
103311
103314
  return null;
103312
103315
  const drawing = carbonCopy(drawingContent);
103316
+ const { width: pxWidth, height: pxHeight, marginOffset } = node3.attrs ?? {};
103317
+ if (pxWidth != null || pxHeight != null) {
103318
+ const emuCx = pxWidth != null ? String(pixelsToEmu(pxWidth)) : null;
103319
+ const emuCy = pxHeight != null ? String(pixelsToEmu(pxHeight)) : null;
103320
+ patchNodeAttributes(drawing, "wp:extent", emuCx, emuCy);
103321
+ patchShapeGeometryExt(drawing, emuCx, emuCy);
103322
+ }
103323
+ if (marginOffset?.horizontal != null)
103324
+ patchPositionOffset(drawing, "wp:positionH", String(pixelsToEmu(marginOffset.horizontal)));
103325
+ if (marginOffset?.top != null)
103326
+ patchPositionOffset(drawing, "wp:positionV", String(pixelsToEmu(marginOffset.top)));
103313
103327
  const liveParagraphs = translateChildNodes({
103314
103328
  ...params3,
103315
103329
  node: shapeTextbox
@@ -103341,6 +103355,67 @@ function findTextboxContentNode(node3) {
103341
103355
  }
103342
103356
  return null;
103343
103357
  }
103358
+ function patchPositionOffset(node3, posNodeName, emuValue) {
103359
+ if (!node3 || typeof node3 !== "object")
103360
+ return false;
103361
+ if (node3.name === posNodeName && Array.isArray(node3.elements)) {
103362
+ const offsetEl = node3.elements.find((el) => el.name === "wp:posOffset");
103363
+ if (offsetEl && Array.isArray(offsetEl.elements) && offsetEl.elements.length > 0) {
103364
+ offsetEl.elements[0].text = emuValue;
103365
+ return true;
103366
+ }
103367
+ return false;
103368
+ }
103369
+ if (!Array.isArray(node3.elements))
103370
+ return false;
103371
+ for (const child of node3.elements)
103372
+ if (patchPositionOffset(child, posNodeName, emuValue))
103373
+ return true;
103374
+ return false;
103375
+ }
103376
+ function patchShapeGeometryExt(root2, cx, cy) {
103377
+ const PATH = [
103378
+ "wp:anchor",
103379
+ "a:graphic",
103380
+ "a:graphicData",
103381
+ "wps:wsp",
103382
+ "wps:spPr",
103383
+ "a:xfrm",
103384
+ "a:ext"
103385
+ ];
103386
+ let node3 = root2;
103387
+ for (const name of PATH) {
103388
+ if (!node3 || !Array.isArray(node3.elements))
103389
+ return false;
103390
+ node3 = node3.elements.find((el) => el.name === name) ?? null;
103391
+ if (!node3)
103392
+ return false;
103393
+ }
103394
+ if (!node3.attributes)
103395
+ node3.attributes = {};
103396
+ if (cx != null)
103397
+ node3.attributes.cx = cx;
103398
+ if (cy != null)
103399
+ node3.attributes.cy = cy;
103400
+ return true;
103401
+ }
103402
+ function patchNodeAttributes(node3, targetName, cx, cy) {
103403
+ if (!node3 || typeof node3 !== "object")
103404
+ return false;
103405
+ if (node3.name === targetName && node3.attributes) {
103406
+ if (cx != null)
103407
+ node3.attributes.cx = cx;
103408
+ if (cy != null)
103409
+ node3.attributes.cy = cy;
103410
+ return true;
103411
+ }
103412
+ if (!Array.isArray(node3.elements))
103413
+ return false;
103414
+ for (const child of node3.elements)
103415
+ if (patchNodeAttributes(child, targetName, cx, cy))
103416
+ return true;
103417
+ return false;
103418
+ }
103344
103419
  function translateShapeContainer(params3) {
103345
103420
  const { node: node3 } = params3;
103346
103421
  if (node3?.attrs?.drawingContent) {
@@ -103399,6 +103474,10 @@ function buildShapeStyle(attrs) {
103399
103474
  style["mso-position-vertical"] = attrs.anchorData.alignV;
103400
103475
  if (attrs.anchorData?.vRelativeFrom)
103401
103476
  style["mso-position-vertical-relative"] = attrs.anchorData.vRelativeFrom;
103477
+ if (attrs.width != null)
103478
+ style["width"] = `${convertToPt$2(attrs.width)}pt`;
103479
+ if (attrs.height != null)
103480
+ style["height"] = `${convertToPt$2(attrs.height)}pt`;
103402
103481
  const entries2 = Object.entries(style);
103403
103482
  if (entries2.length === 0)
103404
103483
  return;
@@ -137155,7 +137234,7 @@ Docs: https://docs.superdoc.dev/getting-started/fonts`);
137155
137234
  state.kern = kernNode.attributes["w:val"];
137156
137235
  }
137157
137236
  }, SuperConverter;
137158
- var init_SuperConverter_DVjSc_AY_es = __esm(() => {
137237
+ var init_SuperConverter_Du0apG1R_es = __esm(() => {
137159
137238
  init_rolldown_runtime_Bg48TavK_es();
137160
137239
  init_jszip_C49i9kUs_es();
137161
137240
  init_xml_js_CqGKpaft_es();
@@ -166164,7 +166243,7 @@ var init_SuperConverter_DVjSc_AY_es = __esm(() => {
166164
166243
  };
166165
166244
  });
166166
166245
 
166167
- // ../../packages/superdoc/dist/chunks/create-headless-toolbar-DYtdH4mX.es.js
166246
+ // ../../packages/superdoc/dist/chunks/create-headless-toolbar-BNcguDpP.es.js
166168
166247
  function parseSizeUnit(val = "0") {
166169
166248
  const length3 = val.toString() || "0";
166170
166249
  const value = Number.parseFloat(length3);
@@ -176907,9 +176986,9 @@ var CSS_DIMENSION_REGEX, DOM_SIZE_UNITS, MARK_KEYS, STEP_OP_CATALOG_UNFROZEN2, P
176907
176986
  }
176908
176987
  };
176909
176988
  };
176910
- var init_create_headless_toolbar_DYtdH4mX_es = __esm(() => {
176989
+ var init_create_headless_toolbar_BNcguDpP_es = __esm(() => {
176911
176990
  init_rolldown_runtime_Bg48TavK_es();
176912
- init_SuperConverter_DVjSc_AY_es();
176991
+ init_SuperConverter_Du0apG1R_es();
176913
176992
  init_jszip_C49i9kUs_es();
176914
176993
  init_uuid_B2wVPhPi_es();
176915
176994
  init_constants_D9qj59G2_es();
@@ -227003,7 +227082,7 @@ var init_remark_gfm_DCND_V_3_es = __esm(() => {
227003
227082
  init_remark_gfm_BUJjZJLy_es();
227004
227083
  });
227005
227084
 
227006
- // ../../packages/superdoc/dist/chunks/src-9y-vcUyr.es.js
227085
+ // ../../packages/superdoc/dist/chunks/src-DfMY3HP9.es.js
227007
227086
  function deleteProps(obj, propOrProps) {
227008
227087
  const props = typeof propOrProps === "string" ? [propOrProps] : propOrProps;
227009
227088
  const removeNested = (target, pathParts, index2 = 0) => {
@@ -276297,6 +276376,13 @@ function computeHeaderFooterContentHash(blocks2) {
276297
276376
  if ("pageNumberFieldFormat" in run2 && run2.pageNumberFieldFormat)
276298
276377
  parts.push(`pnf:${JSON.stringify(run2.pageNumberFieldFormat)}`);
276299
276378
  }
276379
+ if (block.kind === "drawing") {
276380
+ const drawing = block;
276381
+ if ("geometry" in drawing && drawing.geometry)
276382
+ parts.push(`g:${drawing.geometry.width ?? 0}x${drawing.geometry.height ?? 0}`);
276383
+ if (drawing.anchor)
276384
+ parts.push(`a:${drawing.anchor.offsetH ?? 0},${drawing.anchor.offsetV ?? 0}`);
276385
+ }
276300
276386
  }
276301
276387
  return parts.join("|");
276302
276388
  }
@@ -286835,7 +286921,7 @@ async function measureDrawingBlock(block, constraints) {
286835
286921
  const rotatedBounds = calculateRotatedBounds(geometry);
286836
286922
  const naturalWidth = Math.max(1, rotatedBounds.width);
286837
286923
  const naturalHeight = Math.max(1, rotatedBounds.height);
286838
- const isFloating = block.wrap?.type === "None";
286924
+ const isFloating = block.wrap?.type === "None" || block.anchor?.isAnchored === true;
286839
286925
  const maxWidth = fullWidthMax ?? (constraints.maxWidth > 0 && !isFloating ? constraints.maxWidth : naturalWidth);
286840
286926
  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;
286841
286927
  const widthScale = maxWidth / naturalWidth;
@@ -301330,7 +301416,7 @@ var Node$13 = class Node$14 {
301330
301416
  if (!target || !target.classList)
301331
301417
  return;
301332
301418
  target.classList.add(STYLE_ISOLATION_CLASS);
301333
- }, _hoisted_1$23, _hoisted_2$18, _hoisted_3$14, _hoisted_4$10, _hoisted_5$9, Mentions_default, popoverPluginKey, PopoverPlugin, Popover = class {
301419
+ }, _hoisted_1$24, _hoisted_2$18, _hoisted_3$14, _hoisted_4$10, _hoisted_5$9, Mentions_default, popoverPluginKey, PopoverPlugin, Popover = class {
301334
301420
  constructor(view, editor) {
301335
301421
  this.editor = editor;
301336
301422
  this.view = view;
@@ -303081,7 +303167,7 @@ var Node$13 = class Node$14 {
303081
303167
  </linearGradient>
303082
303168
  </defs>
303083
303169
  <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"/>
303084
- </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>
303170
+ </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>
303085
303171
  `, 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>
303086
303172
  `, 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">
303087
303173
  <g clip-path="url(#clip0_0_1)">
@@ -303148,8 +303234,8 @@ var Node$13 = class Node$14 {
303148
303234
  `, 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>
303149
303235
  `, 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>
303150
303236
  `, 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>
303151
- `, 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>
303152
- `, _hoisted_1$15, _hoisted_2$12, _hoisted_3$9, IconGrid_default, closeDropdown$1 = (dropdown) => {
303237
+ `, 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>
303238
+ `, _hoisted_1$16, _hoisted_2$12, _hoisted_3$9, IconGrid_default, closeDropdown$1 = (dropdown) => {
303153
303239
  dropdown.expand.value = false;
303154
303240
  }, makeColorOption = (color2, label = null) => {
303155
303241
  return {
@@ -303180,8 +303266,8 @@ var Node$13 = class Node$14 {
303180
303266
  })]);
303181
303267
  }, icons, getAvailableColorOptions = () => {
303182
303268
  return icons.flat().map((item) => item.value);
303183
- }, _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>
303184
- `, _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) => {
303269
+ }, _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>
303270
+ `, _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) => {
303185
303271
  dropdown.expand.value = false;
303186
303272
  }, makeDefaultItems = ({ superToolbar, toolbarIcons: toolbarIcons$1, toolbarTexts: toolbarTexts$1, toolbarFonts, hideButtons, availableWidth, role, isDev = false } = {}) => {
303187
303273
  const bold2 = useToolbarItem({
@@ -304245,7 +304331,7 @@ var Node$13 = class Node$14 {
304245
304331
  defaultItems: visibleItems,
304246
304332
  overflowItems: overflowItems.filter((item) => item.type !== "separator")
304247
304333
  };
304248
- }, _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 = (query2, labels) => {
304334
+ }, _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 = (query2, labels) => {
304249
304335
  const q$1 = normalize4(query2);
304250
304336
  if (!q$1)
304251
304337
  return -1;
@@ -304277,7 +304363,7 @@ var Node$13 = class Node$14 {
304277
304363
  return result;
304278
304364
  }, normalizeCustomFontFamily = (value) => {
304279
304365
  return stripWrappingQuotes((String(value ?? "").split(",")[0] ?? "").replace(/[\u0000-\u001f\u007f]/g, "")).replace(/\s+/g, " ").trim();
304280
- }, _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 = {}) => {
304366
+ }, _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 = {}) => {
304281
304367
  const fontFamilyProps = paragraphProps?.runProperties?.fontFamily;
304282
304368
  if (!fontFamilyProps)
304283
304369
  return null;
@@ -316621,7 +316707,9 @@ menclose::after {
316621
316707
  vector.geometry.rotation ?? 0,
316622
316708
  vector.geometry.flipH ? 1 : 0,
316623
316709
  vector.geometry.flipV ? 1 : 0,
316624
- drawingTextVersion(vector)
316710
+ drawingTextVersion(vector),
316711
+ block.anchor?.offsetH ?? "",
316712
+ block.anchor?.offsetV ?? ""
316625
316713
  ].join("|");
316626
316714
  }
316627
316715
  if (block.drawingKind === "shapeGroup") {
@@ -320474,6 +320562,7 @@ menclose::after {
320474
320562
  #pendingMarginClick = null;
320475
320563
  #pendingTocLinkNav = null;
320476
320564
  #lastSelectedImageBlockId = null;
320565
+ #lastSelectedTextboxBlockId = null;
320477
320566
  #suppressFocusInFromDraggable = false;
320478
320567
  #pendingStructuredContentLabelGesture = null;
320479
320568
  #debugLastPointer = null;
@@ -321183,6 +321272,37 @@ menclose::after {
321183
321272
  this.#callbacks.updateSelectionDebugHud?.();
321184
321273
  if (!suppressFocusForDrag)
321185
321274
  event.preventDefault();
321275
+ const textboxBorderSelection = this.#resolveTextboxBorderSelection({
321276
+ event,
321277
+ editor,
321278
+ doc: doc$12,
321279
+ hitPos: hit?.pos ?? null,
321280
+ rawHitPos: rawHit?.pos ?? null,
321281
+ pageIndex: normalizedPoint.pageIndex
321282
+ });
321283
+ if (textboxBorderSelection) {
321284
+ const { editor: selectionEditor, fragmentEl, shapeContainerPos, blockId } = textboxBorderSelection;
321285
+ try {
321286
+ const tr = selectionEditor.state.tr.setSelection(NodeSelection.create(doc$12, shapeContainerPos));
321287
+ selectionEditor.view?.dispatch(tr);
321288
+ if (this.#lastSelectedImageBlockId) {
321289
+ this.#callbacks.emit?.("imageDeselected", { blockId: this.#lastSelectedImageBlockId });
321290
+ this.#lastSelectedImageBlockId = null;
321291
+ }
321292
+ if (this.#lastSelectedTextboxBlockId && this.#lastSelectedTextboxBlockId !== blockId)
321293
+ this.#callbacks.emit?.("textboxDeselected", { blockId: this.#lastSelectedTextboxBlockId });
321294
+ this.#callbacks.emit?.("textboxSelected", {
321295
+ element: fragmentEl,
321296
+ blockId
321297
+ });
321298
+ this.#lastSelectedTextboxBlockId = blockId;
321299
+ } catch (error3) {
321300
+ if (process$1.env.NODE_ENV === "development")
321301
+ console.warn("[EditorInputManager] Failed to create NodeSelection for textbox container:", error3);
321302
+ }
321303
+ this.#callbacks.focusEditorAfterImageSelection?.();
321304
+ return;
321305
+ }
321186
321306
  if (!rawHit) {
321187
321307
  this.#focusEditor();
321188
321308
  return;
@@ -321214,6 +321334,10 @@ menclose::after {
321214
321334
  this.#callbacks.emit?.("imageDeselected", { blockId: this.#lastSelectedImageBlockId });
321215
321335
  this.#lastSelectedImageBlockId = null;
321216
321336
  }
321337
+ if (this.#lastSelectedTextboxBlockId) {
321338
+ this.#callbacks.emit?.("textboxDeselected", { blockId: this.#lastSelectedTextboxBlockId });
321339
+ this.#lastSelectedTextboxBlockId = null;
321340
+ }
321217
321341
  if (event.shiftKey && editor.state.selection.$anchor) {
321218
321342
  this.#handleShiftClick(event, hit.pos);
321219
321343
  return;
@@ -321863,6 +321987,10 @@ menclose::after {
321863
321987
  const newSelectionId = `inline-${clampedImgPos}`;
321864
321988
  if (this.#lastSelectedImageBlockId && this.#lastSelectedImageBlockId !== newSelectionId)
321865
321989
  this.#callbacks.emit?.("imageDeselected", { blockId: this.#lastSelectedImageBlockId });
321990
+ if (this.#lastSelectedTextboxBlockId && this.#lastSelectedTextboxBlockId !== newSelectionId) {
321991
+ this.#callbacks.emit?.("textboxDeselected", { blockId: this.#lastSelectedTextboxBlockId });
321992
+ this.#lastSelectedTextboxBlockId = null;
321993
+ }
321866
321994
  const editor = this.#deps?.getEditor();
321867
321995
  try {
321868
321996
  const tr = editor.state.tr.setSelection(NodeSelection.create(doc$12, clampedImgPos));
@@ -321895,6 +322023,10 @@ menclose::after {
321895
322023
  editor.view?.dispatch(tr);
321896
322024
  if (this.#lastSelectedImageBlockId && this.#lastSelectedImageBlockId !== fragmentHit.fragment.blockId)
321897
322025
  this.#callbacks.emit?.("imageDeselected", { blockId: this.#lastSelectedImageBlockId });
322026
+ if (this.#lastSelectedTextboxBlockId) {
322027
+ this.#callbacks.emit?.("textboxDeselected", { blockId: this.#lastSelectedTextboxBlockId });
322028
+ this.#lastSelectedTextboxBlockId = null;
322029
+ }
321898
322030
  if (fragmentHit.fragment.kind === "image") {
321899
322031
  const targetElement = fragmentHit.fragment.pmStart != null ? this.#callbacks.resolveImageFragmentElementByPmStart?.(fragmentHit.fragment.pmStart) ?? null : null;
321900
322032
  if (targetElement) {
@@ -321913,6 +322045,90 @@ menclose::after {
321913
322045
  this.#callbacks.focusEditorAfterImageSelection?.();
321914
322046
  return true;
321915
322047
  }
322048
+ #resolveTextboxBorderSelection({ event, editor, doc: doc$12, hitPos, rawHitPos, pageIndex }) {
322049
+ if (!doc$12)
322050
+ return null;
322051
+ const fragmentEl = this.#resolveTextboxFragmentElement(event.target, event.clientX, event.clientY, pageIndex);
322052
+ if (!fragmentEl)
322053
+ return null;
322054
+ const BORDER_HIT_MARGIN = 6;
322055
+ const rect = fragmentEl.getBoundingClientRect();
322056
+ 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))
322057
+ return null;
322058
+ const shapeContainerPos = this.#resolveShapeContainerPos(doc$12, fragmentEl, [hitPos, rawHitPos]);
322059
+ if (shapeContainerPos == null)
322060
+ return null;
322061
+ return {
322062
+ editor,
322063
+ fragmentEl,
322064
+ shapeContainerPos,
322065
+ blockId: fragmentEl.dataset.blockId ?? null
322066
+ };
322067
+ }
322068
+ #resolveTextboxFragmentElement(target, clientX, clientY, pageIndex) {
322069
+ const candidates = [];
322070
+ const seen = /* @__PURE__ */ new Set;
322071
+ const addCandidate = (element3) => {
322072
+ if (!element3 || seen.has(element3))
322073
+ return;
322074
+ seen.add(element3);
322075
+ candidates.push(element3);
322076
+ };
322077
+ const resolveCandidate = (element3) => {
322078
+ if (!(element3 instanceof HTMLElement))
322079
+ return null;
322080
+ const pageLevelFragment = element3.closest(".superdoc-drawing-fragment");
322081
+ if (pageLevelFragment)
322082
+ return pageLevelFragment;
322083
+ const tableDrawing = element3.closest(".superdoc-table-drawing");
322084
+ if (tableDrawing?.parentElement instanceof HTMLElement && tableDrawing.parentElement.dataset.blockId)
322085
+ return tableDrawing.parentElement;
322086
+ return element3.closest("[data-block-id]") ?? null;
322087
+ };
322088
+ addCandidate(resolveCandidate(target));
322089
+ const ownerDocument = target instanceof Element ? target.ownerDocument : document;
322090
+ if (typeof ownerDocument.elementsFromPoint === "function")
322091
+ for (const element3 of ownerDocument.elementsFromPoint(clientX, clientY))
322092
+ addCandidate(resolveCandidate(element3));
322093
+ if (Number.isFinite(pageIndex)) {
322094
+ const pageCandidates = this.#deps?.getViewportHost()?.querySelector(`[data-page-index="${pageIndex}"]`)?.querySelectorAll("[data-block-id]");
322095
+ if (pageCandidates)
322096
+ for (const candidate of Array.from(pageCandidates)) {
322097
+ const rect = candidate.getBoundingClientRect();
322098
+ if (clientX >= rect.left && clientX <= rect.right && clientY >= rect.top && clientY <= rect.bottom)
322099
+ addCandidate(candidate);
322100
+ }
322101
+ }
322102
+ for (const candidate of candidates)
322103
+ if (candidate.classList.contains("superdoc-textbox-shape") || candidate.querySelector(".superdoc-textbox-shape") != null)
322104
+ return candidate;
322105
+ return null;
322106
+ }
322107
+ #resolveShapeContainerPos(doc$12, fragmentEl, candidatePositions) {
322108
+ const fragmentPmStart = fragmentEl.querySelector("[data-pm-start]")?.dataset.pmStart;
322109
+ const positions = [...candidatePositions];
322110
+ if (fragmentPmStart != null)
322111
+ positions.push(Number(fragmentPmStart));
322112
+ for (const pos of positions) {
322113
+ if (!Number.isFinite(pos))
322114
+ continue;
322115
+ const resolvedPos = this.#findAncestorShapeContainerPos(doc$12, Number(pos));
322116
+ if (resolvedPos != null)
322117
+ return resolvedPos;
322118
+ }
322119
+ return null;
322120
+ }
322121
+ #findAncestorShapeContainerPos(doc$12, pos) {
322122
+ try {
322123
+ const $pos = doc$12.resolve(pos);
322124
+ for (let depth = $pos.depth;depth >= 0; depth -= 1)
322125
+ if ($pos.node(depth).type.name === "shapeContainer")
322126
+ return $pos.before(depth);
322127
+ } catch {
322128
+ return null;
322129
+ }
322130
+ return null;
322131
+ }
321916
322132
  #handleShiftClick(event, headPos) {
321917
322133
  const editor = this.#deps?.getActiveEditor() ?? this.#deps?.getEditor();
321918
322134
  if (!editor)
@@ -325984,13 +326200,13 @@ menclose::after {
325984
326200
  return;
325985
326201
  console.log(...args$1);
325986
326202
  }, 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;
325987
- var init_src_9y_vcUyr_es = __esm(() => {
326203
+ var init_src_DfMY3HP9_es = __esm(() => {
325988
326204
  init_rolldown_runtime_Bg48TavK_es();
325989
- init_SuperConverter_DVjSc_AY_es();
326205
+ init_SuperConverter_Du0apG1R_es();
325990
326206
  init_jszip_C49i9kUs_es();
325991
326207
  init_xml_js_CqGKpaft_es();
325992
326208
  init_uuid_B2wVPhPi_es();
325993
- init_create_headless_toolbar_DYtdH4mX_es();
326209
+ init_create_headless_toolbar_BNcguDpP_es();
325994
326210
  init_constants_D9qj59G2_es();
325995
326211
  init_unified_BDuVPlMu_es();
325996
326212
  init_remark_gfm_BUJjZJLy_es();
@@ -350179,7 +350395,7 @@ function print() { __p += __j.call(arguments, '') }
350179
350395
  } });
350180
350396
  tippy.setDefaultProps({ render });
350181
350397
  tippy_esm_default = tippy;
350182
- _hoisted_1$23 = ["onClick", "onMouseenter"];
350398
+ _hoisted_1$24 = ["onClick", "onMouseenter"];
350183
350399
  _hoisted_2$18 = { key: 0 };
350184
350400
  _hoisted_3$14 = { key: 0 };
350185
350401
  _hoisted_4$10 = { key: 1 };
@@ -350249,7 +350465,7 @@ function print() { __p += __j.call(arguments, '') }
350249
350465
  onMouseleave: _cache[0] || (_cache[0] = ($event) => activeUserIndex.value = null),
350250
350466
  key: user.email,
350251
350467
  class: exports_vue.normalizeClass(["user-row", { "sd-selected": activeUserIndex.value === index2 }])
350252
- }, [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);
350468
+ }, [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);
350253
350469
  }), 128))], 544);
350254
350470
  };
350255
350471
  }
@@ -351540,7 +351756,7 @@ function print() { __p += __j.call(arguments, '') }
351540
351756
  })
351541
351757
  }
351542
351758
  ] };
351543
- _hoisted_1$22 = { class: "ai-user-input-field" };
351759
+ _hoisted_1$23 = { class: "ai-user-input-field" };
351544
351760
  _hoisted_2$17 = ["innerHTML"];
351545
351761
  _hoisted_3$13 = ["placeholder"];
351546
351762
  _hoisted_4$9 = { class: "ai-loader" };
@@ -351771,7 +351987,7 @@ function print() { __p += __j.call(arguments, '') }
351771
351987
  ref_key: "aiWriterRef",
351772
351988
  ref: aiWriterRef,
351773
351989
  onMousedown: _cache[1] || (_cache[1] = exports_vue.withModifiers(() => {}, ["stop"]))
351774
- }, [exports_vue.createElementVNode("div", _hoisted_1$22, [exports_vue.createElementVNode("span", {
351990
+ }, [exports_vue.createElementVNode("div", _hoisted_1$23, [exports_vue.createElementVNode("span", {
351775
351991
  class: "ai-textarea-icon",
351776
351992
  innerHTML: exports_vue.unref(edit_regular_default)
351777
351993
  }, null, 8, _hoisted_2$17), exports_vue.withDirectives(exports_vue.createElementVNode("textarea", {
@@ -351873,7 +352089,7 @@ function print() { __p += __j.call(arguments, '') }
351873
352089
  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>
351874
352090
  `
351875
352091
  };
351876
- _hoisted_1$21 = [
352092
+ _hoisted_1$22 = [
351877
352093
  "onClick",
351878
352094
  "innerHTML",
351879
352095
  "aria-label",
@@ -351965,12 +352181,12 @@ function print() { __p += __j.call(arguments, '') }
351965
352181
  ref_key: "alignmentButtonsRefs",
351966
352182
  ref: alignmentButtonsRefs,
351967
352183
  onKeydown: exports_vue.withModifiers((event) => handleKeyDown$1(event, index2), ["prevent"])
351968
- }, null, 40, _hoisted_1$21);
352184
+ }, null, 40, _hoisted_1$22);
351969
352185
  }), 64))], 2);
351970
352186
  };
351971
352187
  }
351972
352188
  }, [["__scopeId", "data-v-ceb338e0"]]);
351973
- _hoisted_1$20 = [
352189
+ _hoisted_1$21 = [
351974
352190
  "onClick",
351975
352191
  "innerHTML",
351976
352192
  "aria-label",
@@ -352059,7 +352275,7 @@ function print() { __p += __j.call(arguments, '') }
352059
352275
  ref_key: "buttonRefs",
352060
352276
  ref: buttonRefs,
352061
352277
  onKeydown: exports_vue.withModifiers((event) => handleKeyDown$1(event, index2), ["prevent"])
352062
- }, null, 46, _hoisted_1$20);
352278
+ }, null, 46, _hoisted_1$21);
352063
352279
  }), 128))], 2);
352064
352280
  };
352065
352281
  }
@@ -352123,7 +352339,7 @@ function print() { __p += __j.call(arguments, '') }
352123
352339
  ariaLabel: "a) b) c)"
352124
352340
  }
352125
352341
  ];
352126
- _hoisted_1$19 = ["onClick", "onKeydown"];
352342
+ _hoisted_1$20 = ["onClick", "onKeydown"];
352127
352343
  _hoisted_2$16 = { class: "document-mode-column icon-column" };
352128
352344
  _hoisted_3$12 = ["innerHTML"];
352129
352345
  _hoisted_4$8 = { class: "document-mode-column text-column" };
@@ -352192,12 +352408,12 @@ function print() { __p += __j.call(arguments, '') }
352192
352408
  }, [exports_vue.createElementVNode("div", _hoisted_2$16, [exports_vue.createElementVNode("div", {
352193
352409
  class: "icon-column__icon",
352194
352410
  innerHTML: option.icon
352195
- }, 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);
352411
+ }, 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);
352196
352412
  }), 256))], 2);
352197
352413
  };
352198
352414
  }
352199
352415
  }, [["__scopeId", "data-v-abd514d9"]]);
352200
- _hoisted_1$18 = {
352416
+ _hoisted_1$19 = {
352201
352417
  key: 0,
352202
352418
  class: "linked-style-buttons",
352203
352419
  "data-editor-ui-surface": ""
@@ -352259,7 +352475,7 @@ function print() { __p += __j.call(arguments, '') }
352259
352475
  styleRefs.value[0].focus();
352260
352476
  });
352261
352477
  return (_ctx, _cache) => {
352262
- 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) => {
352478
+ 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) => {
352263
352479
  return exports_vue.openBlock(), exports_vue.createElementBlock("div", {
352264
352480
  class: exports_vue.normalizeClass(["style-item", { selected: __props.selectedOption === style2.id }]),
352265
352481
  onClick: ($event) => select2(style2),
@@ -352277,7 +352493,7 @@ function print() { __p += __j.call(arguments, '') }
352277
352493
  };
352278
352494
  }
352279
352495
  }, [["__scopeId", "data-v-80e74746"]]);
352280
- _hoisted_1$17 = {
352496
+ _hoisted_1$18 = {
352281
352497
  key: 0,
352282
352498
  class: "link-title"
352283
352499
  };
@@ -352480,7 +352696,7 @@ function print() { __p += __j.call(arguments, '') }
352480
352696
  props.goToAnchor(url$1);
352481
352697
  };
352482
352698
  return (_ctx, _cache) => {
352483
- 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, [
352699
+ 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, [
352484
352700
  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", {
352485
352701
  type: "text",
352486
352702
  name: "text",
@@ -352527,7 +352743,7 @@ function print() { __p += __j.call(arguments, '') }
352527
352743
  };
352528
352744
  }
352529
352745
  }, [["__scopeId", "data-v-c490d677"]]);
352530
- _hoisted_1$16 = [
352746
+ _hoisted_1$17 = [
352531
352747
  "aria-label",
352532
352748
  "onClick",
352533
352749
  "onKeydown"
@@ -352659,13 +352875,13 @@ function print() { __p += __j.call(arguments, '') }
352659
352875
  class: "sd-option__check",
352660
352876
  innerHTML: exports_vue.unref(toolbarIcons).colorOptionCheck,
352661
352877
  style: exports_vue.normalizeStyle(getCheckStyle(option.value, optionIndex))
352662
- }, null, 12, _hoisted_3$10)) : exports_vue.createCommentVNode("", true)], 40, _hoisted_1$16);
352878
+ }, null, 12, _hoisted_3$10)) : exports_vue.createCommentVNode("", true)], 40, _hoisted_1$17);
352663
352879
  }), 128))]);
352664
352880
  }), 128);
352665
352881
  };
352666
352882
  }
352667
352883
  }, [["__scopeId", "data-v-30cad300"]]);
352668
- _hoisted_1$15 = { class: "options-grid-wrap" };
352884
+ _hoisted_1$16 = { class: "options-grid-wrap" };
352669
352885
  _hoisted_2$12 = ["innerHTML"];
352670
352886
  _hoisted_3$9 = { class: "option-grid-ctn" };
352671
352887
  IconGrid_default = /* @__PURE__ */ __plugin_vue_export_helper_default({
@@ -352695,7 +352911,7 @@ function print() { __p += __j.call(arguments, '') }
352695
352911
  emit("select", option);
352696
352912
  };
352697
352913
  return (_ctx, _cache) => {
352698
- return exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_1$15, [__props.hasNoneIcon ? (exports_vue.openBlock(), exports_vue.createElementBlock("div", {
352914
+ return exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_1$16, [__props.hasNoneIcon ? (exports_vue.openBlock(), exports_vue.createElementBlock("div", {
352699
352915
  key: 0,
352700
352916
  class: "none-option",
352701
352917
  role: "menuitem",
@@ -352790,7 +353006,7 @@ function print() { __p += __j.call(arguments, '') }
352790
353006
  makeColorOption("#A91DFF", "neon purple")
352791
353007
  ]
352792
353008
  ];
352793
- _hoisted_1$14 = [
353009
+ _hoisted_1$15 = [
352794
353010
  "data-cols",
352795
353011
  "data-rows",
352796
353012
  "onKeydown",
@@ -352907,7 +353123,7 @@ function print() { __p += __j.call(arguments, '') }
352907
353123
  cols: n,
352908
353124
  rows: i3
352909
353125
  }), ["stop", "prevent"])
352910
- }, null, 40, _hoisted_1$14);
353126
+ }, null, 40, _hoisted_1$15);
352911
353127
  }), 64))], 64);
352912
353128
  }), 64))], 32), exports_vue.createElementVNode("div", {
352913
353129
  class: "toolbar-table-grid-value",
@@ -352916,7 +353132,7 @@ function print() { __p += __j.call(arguments, '') }
352916
353132
  };
352917
353133
  }
352918
353134
  }, [["__scopeId", "data-v-168b91ce"]]);
352919
- _hoisted_1$13 = { class: "toolbar-table-actions" };
353135
+ _hoisted_1$14 = { class: "toolbar-table-actions" };
352920
353136
  _hoisted_2$10 = [
352921
353137
  "onClick",
352922
353138
  "data-item",
@@ -352935,7 +353151,7 @@ function print() { __p += __j.call(arguments, '') }
352935
353151
  emit("select", { command: item.command });
352936
353152
  };
352937
353153
  return (_ctx, _cache) => {
352938
- 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) => {
353154
+ 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) => {
352939
353155
  return exports_vue.openBlock(), exports_vue.createElementBlock("div", {
352940
353156
  class: exports_vue.normalizeClass(["toolbar-table-actions__item", { "toolbar-table-actions__item--border": option.bottomBorder }]),
352941
353157
  onClick: ($event) => handleClick$1(option),
@@ -352950,7 +353166,7 @@ function print() { __p += __j.call(arguments, '') }
352950
353166
  };
352951
353167
  }
352952
353168
  }, [["__scopeId", "data-v-652015c8"]]);
352953
- _hoisted_1$12 = { class: "search-input-ctn" };
353169
+ _hoisted_1$13 = { class: "search-input-ctn" };
352954
353170
  _hoisted_2$9 = { class: "sd-row" };
352955
353171
  _hoisted_3$7 = ["onKeydown"];
352956
353172
  SearchInput_default = /* @__PURE__ */ __plugin_vue_export_helper_default({
@@ -352964,7 +353180,7 @@ function print() { __p += __j.call(arguments, '') }
352964
353180
  emit("submit", { value: searchValue.value });
352965
353181
  };
352966
353182
  return (_ctx, _cache) => {
352967
- 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", {
353183
+ 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", {
352968
353184
  ref: __props.searchRef,
352969
353185
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => searchValue.value = $event),
352970
353186
  class: "search-input",
@@ -353108,7 +353324,7 @@ function print() { __p += __j.call(arguments, '') }
353108
353324
  HEADLESS_TOOLBAR_COMMANDS = [...new Set([...Object.values(HEADLESS_ITEM_MAP), ...TABLE_ACTION_COMMAND_IDS])];
353109
353325
  NON_HEADLESS_EXECUTE_ITEM_NAMES = new Set(["link"]);
353110
353326
  HEADLESS_EXECUTE_ITEMS = new Set(Object.keys(HEADLESS_ITEM_MAP).filter((itemName) => !NON_HEADLESS_EXECUTE_ITEM_NAMES.has(itemName)));
353111
- _hoisted_1$11 = { class: "sd-toolbar-icon" };
353327
+ _hoisted_1$12 = { class: "sd-toolbar-icon" };
353112
353328
  _hoisted_2$8 = ["innerHTML"];
353113
353329
  ToolbarButtonIcon_default = /* @__PURE__ */ __plugin_vue_export_helper_default({
353114
353330
  __name: "ToolbarButtonIcon",
@@ -353138,7 +353354,7 @@ function print() { __p += __j.call(arguments, '') }
353138
353354
  return ["color", "highlight"].includes(props.name);
353139
353355
  });
353140
353356
  return (_ctx, _cache) => {
353141
- return exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_1$11, [exports_vue.createElementVNode("div", {
353357
+ return exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_1$12, [exports_vue.createElementVNode("div", {
353142
353358
  class: exports_vue.normalizeClass(["sd-toolbar-icon__icon", [`sd-toolbar-icon__icon--${props.name}`]]),
353143
353359
  innerHTML: __props.icon
353144
353360
  }, null, 10, _hoisted_2$8), hasColorBar.value ? (exports_vue.openBlock(), exports_vue.createElementBlock("div", {
@@ -353149,7 +353365,7 @@ function print() { __p += __j.call(arguments, '') }
353149
353365
  };
353150
353366
  }
353151
353367
  }, [["__scopeId", "data-v-521c3d93"]]);
353152
- _hoisted_1$10 = ["role", "aria-label"];
353368
+ _hoisted_1$11 = ["role", "aria-label"];
353153
353369
  _hoisted_2$7 = ["data-item"];
353154
353370
  _hoisted_3$6 = ["data-item"];
353155
353371
  _hoisted_4$5 = {
@@ -353400,11 +353616,11 @@ function print() { __p += __j.call(arguments, '') }
353400
353616
  }, null, 12, _hoisted_13)) : exports_vue.createCommentVNode("", true)
353401
353617
  ], 64)),
353402
353618
  exports_vue.createElementVNode("div", _hoisted_14, exports_vue.toDisplayString(`${exports_vue.unref(attributes).ariaLabel} ${exports_vue.unref(active) ? "selected" : "unset"}`), 1)
353403
- ], 10, _hoisted_2$7)], 46, _hoisted_1$10);
353619
+ ], 10, _hoisted_2$7)], 46, _hoisted_1$11);
353404
353620
  };
353405
353621
  }
353406
353622
  }, [["__scopeId", "data-v-2caa0057"]]);
353407
- _hoisted_1$9 = {
353623
+ _hoisted_1$10 = {
353408
353624
  class: "toolbar-separator",
353409
353625
  role: "separator",
353410
353626
  "aria-label": "Toolbar separator"
@@ -353424,14 +353640,14 @@ function print() { __p += __j.call(arguments, '') }
353424
353640
  return "var(--sd-ui-border, #dbdbdb)";
353425
353641
  };
353426
353642
  return (_ctx, _cache) => {
353427
- return exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_1$9, [exports_vue.createElementVNode("div", {
353643
+ return exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_1$10, [exports_vue.createElementVNode("div", {
353428
353644
  class: "separator-inner",
353429
353645
  style: exports_vue.normalizeStyle({ backgroundColor: getSeparatorColor() })
353430
353646
  }, null, 4)]);
353431
353647
  };
353432
353648
  }
353433
353649
  }, [["__scopeId", "data-v-d027f7fc"]]);
353434
- _hoisted_1$8 = { class: "overflow-menu" };
353650
+ _hoisted_1$9 = { class: "overflow-menu" };
353435
353651
  _hoisted_2$6 = { class: "overflow-menu-trigger" };
353436
353652
  _hoisted_3$5 = {
353437
353653
  key: 0,
@@ -353485,7 +353701,7 @@ function print() { __p += __j.call(arguments, '') }
353485
353701
  document.removeEventListener("keydown", handleKeyDown$1, true);
353486
353702
  });
353487
353703
  return (_ctx, _cache) => {
353488
- return exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_1$8, [exports_vue.createElementVNode("div", _hoisted_2$6, [exports_vue.createVNode(ToolbarButton_default, {
353704
+ return exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_1$9, [exports_vue.createElementVNode("div", _hoisted_2$6, [exports_vue.createVNode(ToolbarButton_default, {
353489
353705
  "toolbar-item": overflowToolbarItem.value,
353490
353706
  onButtonClick: toggleOverflowMenu
353491
353707
  }, null, 8, ["toolbar-item"])]), isOverflowMenuOpened.value ? (exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_3$5, [exports_vue.createVNode(ButtonGroup_default, {
@@ -353498,7 +353714,7 @@ function print() { __p += __j.call(arguments, '') }
353498
353714
  };
353499
353715
  }
353500
353716
  }, [["__scopeId", "data-v-35b48dff"]]);
353501
- _hoisted_1$7 = { class: "toolbar-dropdown" };
353717
+ _hoisted_1$8 = { class: "toolbar-dropdown" };
353502
353718
  _hoisted_2$5 = ["onClick"];
353503
353719
  _hoisted_3$4 = {
353504
353720
  key: 0,
@@ -353852,7 +354068,7 @@ function print() { __p += __j.call(arguments, '') }
353852
354068
  window.removeEventListener("scroll", updateMenuPosition, true);
353853
354069
  });
353854
354070
  return (_ctx, _cache) => {
353855
- return exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_1$7, [exports_vue.createElementVNode("div", {
354071
+ return exports_vue.openBlock(), exports_vue.createElementBlock("div", _hoisted_1$8, [exports_vue.createElementVNode("div", {
353856
354072
  ref_key: "triggerRef",
353857
354073
  ref: triggerRef,
353858
354074
  class: "toolbar-dropdown-trigger",
@@ -353894,7 +354110,7 @@ function print() { __p += __j.call(arguments, '') }
353894
354110
  };
353895
354111
  }
353896
354112
  }, [["__scopeId", "data-v-69732782"]]);
353897
- _hoisted_1$6 = [
354113
+ _hoisted_1$7 = [
353898
354114
  "value",
353899
354115
  "disabled",
353900
354116
  "aria-label",
@@ -354322,7 +354538,7 @@ function print() { __p += __j.call(arguments, '') }
354322
354538
  onKeydown,
354323
354539
  onCompositionstart: _cache[0] || (_cache[0] = ($event) => isComposing.value = true),
354324
354540
  onCompositionend: onCompositionEnd
354325
- }, null, 44, _hoisted_1$6)], 32),
354541
+ }, null, 44, _hoisted_1$7)], 32),
354326
354542
  exports_vue.createElementVNode("button", {
354327
354543
  type: "button",
354328
354544
  class: "sd-font-combobox__caret sd-toolbar-split-field__caret",
@@ -354578,7 +354794,7 @@ function print() { __p += __j.call(arguments, '') }
354578
354794
  };
354579
354795
  }
354580
354796
  }), [["__scopeId", "data-v-f0925f67"]]);
354581
- _hoisted_1$5 = ["data-toolbar-position"];
354797
+ _hoisted_1$6 = ["data-toolbar-position"];
354582
354798
  _hoisted_2$3 = [
354583
354799
  "onKeydown",
354584
354800
  "tabindex",
@@ -355139,7 +355355,7 @@ function print() { __p += __j.call(arguments, '') }
355139
355355
  "overflow-items"
355140
355356
  ])) : exports_vue.createCommentVNode("", true)
355141
355357
  ], 42, _hoisted_2$3);
355142
- }), 128))], 44, _hoisted_1$5);
355358
+ }), 128))], 44, _hoisted_1$6);
355143
355359
  };
355144
355360
  }
355145
355361
  }, [["__scopeId", "data-v-181bd035"]]);
@@ -360183,6 +360399,13 @@ function print() { __p += __j.call(arguments, '') }
360183
360399
  .${DOM_CLASS_NAMES.INLINE_IMAGE_CLIP_WRAPPER}.superdoc-image-selected {
360184
360400
  outline-offset: 2px;
360185
360401
  }
360402
+
360403
+ .superdoc-textbox-selected {
360404
+ outline: 2px solid #4a90e2;
360405
+ outline-offset: 2px;
360406
+ border-radius: 2px;
360407
+ box-shadow: 0 0 0 1px rgba(74, 144, 226, 0.35);
360408
+ }
360186
360409
  `;
360187
360410
  init_dist5();
360188
360411
  globalValidationStats = new ValidationStatsCollector;
@@ -364556,13 +364779,15 @@ function print() { __p += __j.call(arguments, '') }
364556
364779
  });
364557
364780
  },
364558
364781
  onSurfaceTransaction: ({ sourceEditor, surface, headerId, sectionType, transaction, duration }) => {
364559
- if ((transaction && typeof transaction === "object" ? transaction : null)?.docChanged && headerId) {
364560
- this.#invalidateTrackedChangesForStory({
364561
- kind: "story",
364562
- storyType: "headerFooterPart",
364563
- refId: headerId
364564
- });
364565
- this.#headerFooterSession?.invalidateLayoutForRefs([headerId]);
364782
+ if ((transaction && typeof transaction === "object" ? transaction : null)?.docChanged) {
364783
+ if (headerId) {
364784
+ this.#invalidateTrackedChangesForStory({
364785
+ kind: "story",
364786
+ storyType: "headerFooterPart",
364787
+ refId: headerId
364788
+ });
364789
+ this.#headerFooterSession?.invalidateLayoutForRefs([headerId]);
364790
+ }
364566
364791
  this.#flowBlockCache.setHasExternalChanges?.(true);
364567
364792
  this.#pendingDocChange = true;
364568
364793
  this.#selectionSync.onLayoutStart();
@@ -368229,11 +368454,11 @@ function print() { __p += __j.call(arguments, '') }
368229
368454
  ]);
368230
368455
  });
368231
368456
 
368232
- // ../../packages/superdoc/dist/chunks/create-super-doc-ui-RmuwqQZI.es.js
368457
+ // ../../packages/superdoc/dist/chunks/create-super-doc-ui-oSlpT6HI.es.js
368233
368458
  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;
368234
- var init_create_super_doc_ui_RmuwqQZI_es = __esm(() => {
368235
- init_SuperConverter_DVjSc_AY_es();
368236
- init_create_headless_toolbar_DYtdH4mX_es();
368459
+ var init_create_super_doc_ui_oSlpT6HI_es = __esm(() => {
368460
+ init_SuperConverter_Du0apG1R_es();
368461
+ init_create_headless_toolbar_BNcguDpP_es();
368237
368462
  DEFAULT_TEXT_ALIGN_OPTIONS = [
368238
368463
  {
368239
368464
  label: "Left",
@@ -368524,15 +368749,15 @@ var init_zipper_BxRAi0_5_es = __esm(() => {
368524
368749
 
368525
368750
  // ../../packages/superdoc/dist/super-editor.es.js
368526
368751
  var init_super_editor_es = __esm(() => {
368527
- init_src_9y_vcUyr_es();
368528
- init_SuperConverter_DVjSc_AY_es();
368752
+ init_src_DfMY3HP9_es();
368753
+ init_SuperConverter_Du0apG1R_es();
368529
368754
  init_jszip_C49i9kUs_es();
368530
368755
  init_xml_js_CqGKpaft_es();
368531
- init_create_headless_toolbar_DYtdH4mX_es();
368756
+ init_create_headless_toolbar_BNcguDpP_es();
368532
368757
  init_constants_D9qj59G2_es();
368533
368758
  init_unified_BDuVPlMu_es();
368534
368759
  init_DocxZipper_BzS208BW_es();
368535
- init_create_super_doc_ui_RmuwqQZI_es();
368760
+ init_create_super_doc_ui_oSlpT6HI_es();
368536
368761
  init_ui_CGB3qmy3_es();
368537
368762
  init_eventemitter3_UwU_CLPU_es();
368538
368763
  init_errors_C_DoKMoN_es();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@superdoc-dev/cli",
3
- "version": "0.17.0-next.36",
3
+ "version": "0.17.0-next.38",
4
4
  "type": "module",
5
5
  "bin": {
6
6
  "superdoc": "./dist/index.js"
@@ -26,20 +26,20 @@
26
26
  "lib0": "^0.2.114",
27
27
  "typescript": "^5.9.2",
28
28
  "y-protocols": "^1.0.6",
29
- "@superdoc/document-api": "0.1.0-alpha.0",
29
+ "@superdoc/super-editor": "0.0.1",
30
30
  "superdoc": "1.41.0",
31
- "@superdoc/super-editor": "0.0.1"
31
+ "@superdoc/document-api": "0.1.0-alpha.0"
32
32
  },
33
33
  "module": "src/index.ts",
34
34
  "publishConfig": {
35
35
  "access": "public"
36
36
  },
37
37
  "optionalDependencies": {
38
- "@superdoc-dev/cli-darwin-x64": "0.17.0-next.36",
39
- "@superdoc-dev/cli-darwin-arm64": "0.17.0-next.36",
40
- "@superdoc-dev/cli-linux-x64": "0.17.0-next.36",
41
- "@superdoc-dev/cli-windows-x64": "0.17.0-next.36",
42
- "@superdoc-dev/cli-linux-arm64": "0.17.0-next.36"
38
+ "@superdoc-dev/cli-darwin-arm64": "0.17.0-next.38",
39
+ "@superdoc-dev/cli-darwin-x64": "0.17.0-next.38",
40
+ "@superdoc-dev/cli-linux-x64": "0.17.0-next.38",
41
+ "@superdoc-dev/cli-windows-x64": "0.17.0-next.38",
42
+ "@superdoc-dev/cli-linux-arm64": "0.17.0-next.38"
43
43
  },
44
44
  "scripts": {
45
45
  "predev": "node scripts/ensure-superdoc-build.js",