@superdoc-dev/cli 0.2.0-next.90 → 0.2.0-next.92

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 +572 -194
  2. package/package.json +8 -8
package/dist/index.js CHANGED
@@ -2233,6 +2233,21 @@ var init_operation_definitions = __esm(() => {
2233
2233
  referenceDocPath: "lists/apply-preset.mdx",
2234
2234
  referenceGroup: "lists"
2235
2235
  },
2236
+ "lists.setType": {
2237
+ memberPath: "lists.setType",
2238
+ description: "Convert a list to ordered or bullet and merge adjacent compatible sequences to preserve continuous numbering.",
2239
+ expectedResult: "Returns a ListsMutateItemResult receipt; reports NO_OP if the list is already the requested kind and no sequences were merged.",
2240
+ requiresDocumentContext: true,
2241
+ metadata: mutationOperation({
2242
+ idempotency: "conditional",
2243
+ supportsDryRun: true,
2244
+ supportsTrackedMode: false,
2245
+ possibleFailureCodes: ["NO_OP", "INVALID_TARGET", "INVALID_INPUT"],
2246
+ throws: [...T_NOT_FOUND_CAPABLE, "INVALID_TARGET", "INVALID_INPUT"]
2247
+ }),
2248
+ referenceDocPath: "lists/set-type.mdx",
2249
+ referenceGroup: "lists"
2250
+ },
2236
2251
  "lists.captureTemplate": {
2237
2252
  memberPath: "lists.captureTemplate",
2238
2253
  description: "Capture the formatting of a list as a reusable ListTemplate.",
@@ -6842,6 +6857,16 @@ var init_schemas = __esm(() => {
6842
6857
  success: listsMutateItemSuccessSchema,
6843
6858
  failure: listsFailureSchemaFor("lists.applyPreset")
6844
6859
  },
6860
+ "lists.setType": {
6861
+ input: objectSchema({
6862
+ target: listItemAddressSchema,
6863
+ kind: { enum: ["ordered", "bullet"] },
6864
+ continuity: { enum: ["preserve", "none"] }
6865
+ }, ["target", "kind"]),
6866
+ output: listsMutateItemResultSchemaFor("lists.setType"),
6867
+ success: listsMutateItemSuccessSchema,
6868
+ failure: listsFailureSchemaFor("lists.setType")
6869
+ },
6845
6870
  "lists.captureTemplate": (() => {
6846
6871
  const successSchema = objectSchema({
6847
6872
  success: { const: true },
@@ -9014,6 +9039,10 @@ function executeListsClearLevelOverrides(adapter, input, options) {
9014
9039
  validateListTarget(input, "lists.clearLevelOverrides");
9015
9040
  return adapter.clearLevelOverrides(input, normalizeMutationOptions(options));
9016
9041
  }
9042
+ function executeListsSetType(adapter, input, options) {
9043
+ validateListTarget(input, "lists.setType");
9044
+ return adapter.setType(input, normalizeMutationOptions(options));
9045
+ }
9017
9046
  var init_lists = __esm(() => {
9018
9047
  init_errors2();
9019
9048
  });
@@ -9350,6 +9379,7 @@ function buildDispatchTable(api) {
9350
9379
  "lists.convertToText": (input, options) => api.lists.convertToText(input, options),
9351
9380
  "lists.applyTemplate": (input, options) => api.lists.applyTemplate(input, options),
9352
9381
  "lists.applyPreset": (input, options) => api.lists.applyPreset(input, options),
9382
+ "lists.setType": (input, options) => api.lists.setType(input, options),
9353
9383
  "lists.captureTemplate": (input) => api.lists.captureTemplate(input),
9354
9384
  "lists.setLevelNumbering": (input, options) => api.lists.setLevelNumbering(input, options),
9355
9385
  "lists.setLevelBullet": (input, options) => api.lists.setLevelBullet(input, options),
@@ -10717,11 +10747,7 @@ function createDocumentApi(adapters) {
10717
10747
  return executeListsClearLevelOverrides(adapters.lists, input, options);
10718
10748
  },
10719
10749
  setType(input, options) {
10720
- const presetMap = {
10721
- ordered: "decimal",
10722
- bullet: "disc"
10723
- };
10724
- return executeListsApplyPreset(adapters.lists, { target: input.target, preset: presetMap[input.kind] }, options);
10750
+ return executeListsSetType(adapters.lists, input, options);
10725
10751
  }
10726
10752
  },
10727
10753
  sections: {
@@ -33254,7 +33280,7 @@ var init_remark_gfm_z_sDF4ss_es = __esm(() => {
33254
33280
  emptyOptions2 = {};
33255
33281
  });
33256
33282
 
33257
- // ../../packages/superdoc/dist/chunks/SuperConverter-WVv8Qhfn.es.js
33283
+ // ../../packages/superdoc/dist/chunks/SuperConverter-6i-hCnOE.es.js
33258
33284
  function getExtensionConfigField(extension$1, field, context = { name: "" }) {
33259
33285
  const fieldValue = extension$1.config[field];
33260
33286
  if (typeof fieldValue === "function")
@@ -35659,6 +35685,10 @@ function executeListsClearLevelOverrides2(adapter, input, options) {
35659
35685
  validateListTarget2(input, "lists.clearLevelOverrides");
35660
35686
  return adapter.clearLevelOverrides(input, normalizeMutationOptions2(options));
35661
35687
  }
35688
+ function executeListsSetType2(adapter, input, options) {
35689
+ validateListTarget2(input, "lists.setType");
35690
+ return adapter.setType(input, normalizeMutationOptions2(options));
35691
+ }
35662
35692
  function validateReplaceInput2(input) {
35663
35693
  if (!isRecord3(input))
35664
35694
  throw new DocumentApiValidationError2("INVALID_TARGET", "Replace input must be a non-null object.");
@@ -35945,6 +35975,7 @@ function buildDispatchTable2(api) {
35945
35975
  "lists.convertToText": (input, options) => api.lists.convertToText(input, options),
35946
35976
  "lists.applyTemplate": (input, options) => api.lists.applyTemplate(input, options),
35947
35977
  "lists.applyPreset": (input, options) => api.lists.applyPreset(input, options),
35978
+ "lists.setType": (input, options) => api.lists.setType(input, options),
35948
35979
  "lists.captureTemplate": (input) => api.lists.captureTemplate(input),
35949
35980
  "lists.setLevelNumbering": (input, options) => api.lists.setLevelNumbering(input, options),
35950
35981
  "lists.setLevelBullet": (input, options) => api.lists.setLevelBullet(input, options),
@@ -37132,13 +37163,7 @@ function createDocumentApi2(adapters) {
37132
37163
  return executeListsClearLevelOverrides2(adapters.lists, input, options);
37133
37164
  },
37134
37165
  setType(input, options) {
37135
- return executeListsApplyPreset2(adapters.lists, {
37136
- target: input.target,
37137
- preset: {
37138
- ordered: "decimal",
37139
- bullet: "disc"
37140
- }[input.kind]
37141
- }, options);
37166
+ return executeListsSetType2(adapters.lists, input, options);
37142
37167
  }
37143
37168
  },
37144
37169
  sections: {
@@ -47666,6 +47691,144 @@ function remarkParse(options) {
47666
47691
  function parseMarkdownToAst(markdown) {
47667
47692
  return unified().use(remarkParse).use(remarkGfm).parse(markdown);
47668
47693
  }
47694
+ function readImageDimensions(bytes) {
47695
+ if (!(bytes instanceof Uint8Array) || bytes.length < 12)
47696
+ return null;
47697
+ if (bytes[0] === 137 && bytes[1] === 80 && bytes[2] === 78 && bytes[3] === 71) {
47698
+ if (bytes.length < 24)
47699
+ return null;
47700
+ const view = new DataView(bytes.buffer, bytes.byteOffset, bytes.byteLength);
47701
+ const width = view.getInt32(16);
47702
+ const height = view.getInt32(20);
47703
+ if (width > 0 && height > 0)
47704
+ return {
47705
+ width,
47706
+ height
47707
+ };
47708
+ return null;
47709
+ }
47710
+ if (bytes[0] === 255 && bytes[1] === 216 && bytes[2] === 255)
47711
+ return readJpegDimensions(bytes);
47712
+ if (bytes[0] === 71 && bytes[1] === 73 && bytes[2] === 70 && bytes[3] === 56) {
47713
+ if (bytes.length < 10)
47714
+ return null;
47715
+ const view = new DataView(bytes.buffer, bytes.byteOffset, bytes.byteLength);
47716
+ const width = view.getUint16(6, true);
47717
+ const height = view.getUint16(8, true);
47718
+ if (width > 0 && height > 0)
47719
+ return {
47720
+ width,
47721
+ height
47722
+ };
47723
+ return null;
47724
+ }
47725
+ if (bytes[0] === 66 && bytes[1] === 77) {
47726
+ if (bytes.length < 26)
47727
+ return null;
47728
+ const view = new DataView(bytes.buffer, bytes.byteOffset, bytes.byteLength);
47729
+ const width = view.getInt32(18, true);
47730
+ const height = Math.abs(view.getInt32(22, true));
47731
+ if (width > 0 && height > 0)
47732
+ return {
47733
+ width,
47734
+ height
47735
+ };
47736
+ return null;
47737
+ }
47738
+ if (bytes[0] === 82 && bytes[1] === 73 && bytes[2] === 70 && bytes[3] === 70 && bytes[8] === 87 && bytes[9] === 69 && bytes[10] === 66 && bytes[11] === 80)
47739
+ return readWebpDimensions(bytes);
47740
+ return null;
47741
+ }
47742
+ function readJpegDimensions(bytes) {
47743
+ const view = new DataView(bytes.buffer, bytes.byteOffset, bytes.byteLength);
47744
+ let offset = 2;
47745
+ while (offset + 4 < bytes.length) {
47746
+ if (bytes[offset] !== 255)
47747
+ return null;
47748
+ const marker = bytes[offset + 1];
47749
+ if (marker === 192 || marker === 194) {
47750
+ if (offset + 9 > bytes.length)
47751
+ return null;
47752
+ const height = view.getUint16(offset + 5);
47753
+ const width = view.getUint16(offset + 7);
47754
+ if (width > 0 && height > 0)
47755
+ return {
47756
+ width,
47757
+ height
47758
+ };
47759
+ return null;
47760
+ }
47761
+ if (marker === 217)
47762
+ return null;
47763
+ if (marker === 218)
47764
+ return null;
47765
+ const segmentLength = view.getUint16(offset + 2);
47766
+ offset += 2 + segmentLength;
47767
+ }
47768
+ return null;
47769
+ }
47770
+ function readWebpDimensions(bytes) {
47771
+ if (bytes.length < 16)
47772
+ return null;
47773
+ const chunkTag = String.fromCharCode(bytes[12], bytes[13], bytes[14], bytes[15]);
47774
+ if (chunkTag === "VP8 ") {
47775
+ if (bytes.length < 30)
47776
+ return null;
47777
+ const view = new DataView(bytes.buffer, bytes.byteOffset, bytes.byteLength);
47778
+ const width = view.getUint16(26, true) & 16383;
47779
+ const height = view.getUint16(28, true) & 16383;
47780
+ if (width > 0 && height > 0)
47781
+ return {
47782
+ width,
47783
+ height
47784
+ };
47785
+ return null;
47786
+ }
47787
+ if (chunkTag === "VP8L") {
47788
+ if (bytes.length < 25)
47789
+ return null;
47790
+ const b0 = bytes[21];
47791
+ const b1 = bytes[22];
47792
+ const b2 = bytes[23];
47793
+ const b3 = bytes[24];
47794
+ const width = ((b1 & 63) << 8 | b0) + 1;
47795
+ const height = ((b3 & 15) << 10 | b2 << 2 | b1 >> 6) + 1;
47796
+ if (width > 0 && height > 0)
47797
+ return {
47798
+ width,
47799
+ height
47800
+ };
47801
+ return null;
47802
+ }
47803
+ if (chunkTag === "VP8X") {
47804
+ if (bytes.length < 30)
47805
+ return null;
47806
+ const width = (bytes[24] | bytes[25] << 8 | bytes[26] << 16) + 1;
47807
+ const height = (bytes[27] | bytes[28] << 8 | bytes[29] << 16) + 1;
47808
+ if (width > 0 && height > 0)
47809
+ return {
47810
+ width,
47811
+ height
47812
+ };
47813
+ return null;
47814
+ }
47815
+ return null;
47816
+ }
47817
+ function readImageDimensionsFromDataUri(dataUri) {
47818
+ if (typeof dataUri !== "string" || !dataUri.startsWith("data:"))
47819
+ return null;
47820
+ const commaIndex = dataUri.indexOf(",");
47821
+ if (commaIndex === -1)
47822
+ return null;
47823
+ const base64Payload = dataUri.slice(commaIndex + 1);
47824
+ if (!base64Payload)
47825
+ return null;
47826
+ try {
47827
+ return readImageDimensions(base64ToUint8Array(base64Payload));
47828
+ } catch {
47829
+ return null;
47830
+ }
47831
+ }
47669
47832
  function convertMdastToBlocks(root2, ctx) {
47670
47833
  return flatMapRootChildrenPreserveBlankLines(root2, ctx);
47671
47834
  }
@@ -47852,11 +48015,7 @@ function convertImageBlock(node3, ctx) {
47852
48015
  type: "paragraph",
47853
48016
  content: [{
47854
48017
  type: "image",
47855
- attrs: {
47856
- src: node3.url,
47857
- alt: node3.alt ?? null,
47858
- title: node3.title ?? null
47859
- }
48018
+ attrs: buildImageAttrs(node3, ctx)
47860
48019
  }]
47861
48020
  };
47862
48021
  }
@@ -47926,13 +48085,47 @@ function convertInlineImage(node3, ctx) {
47926
48085
  }
47927
48086
  return [{
47928
48087
  type: "image",
47929
- attrs: {
47930
- src: node3.url,
47931
- alt: node3.alt ?? null,
47932
- title: node3.title ?? null
47933
- }
48088
+ attrs: buildImageAttrs(node3, ctx)
47934
48089
  }];
47935
48090
  }
48091
+ function buildImageAttrs(node3, ctx) {
48092
+ const attrs = {
48093
+ src: node3.url,
48094
+ alt: node3.alt ?? null,
48095
+ title: node3.title ?? null,
48096
+ sdImageId: v4_default(),
48097
+ id: generateUniqueImageDocPrId(ctx)
48098
+ };
48099
+ const dimensions = readImageDimensionsFromDataUri(node3.url);
48100
+ if (dimensions)
48101
+ attrs.size = dimensions;
48102
+ return attrs;
48103
+ }
48104
+ function generateUniqueImageDocPrId(ctx) {
48105
+ const existingIds = getOrCreateImageDocPrIdSet(ctx);
48106
+ let candidate = "";
48107
+ do {
48108
+ const hex = generateDocxRandomId();
48109
+ candidate = String(parseInt(hex, 16));
48110
+ } while (!candidate || existingIds.has(candidate));
48111
+ existingIds.add(candidate);
48112
+ return candidate;
48113
+ }
48114
+ function getOrCreateImageDocPrIdSet(ctx) {
48115
+ const cached = imageDocPrIdsByContext.get(ctx);
48116
+ if (cached)
48117
+ return cached;
48118
+ const existingIds = /* @__PURE__ */ new Set;
48119
+ ctx.editor?.state?.doc?.descendants((node3) => {
48120
+ if (node3.type.name !== "image")
48121
+ return true;
48122
+ if (node3.attrs.id !== undefined && node3.attrs.id !== null)
48123
+ existingIds.add(String(node3.attrs.id));
48124
+ return true;
48125
+ });
48126
+ imageDocPrIdsByContext.set(ctx, existingIds);
48127
+ return existingIds;
48128
+ }
47936
48129
  function makeParagraph(content$2, extraParagraphProps) {
47937
48130
  const paragraphProperties = extraParagraphProps ? { ...extraParagraphProps } : undefined;
47938
48131
  const attrs = {};
@@ -48386,144 +48579,6 @@ function updateDOMAttributes(dom, attrs = {}, options = {}) {
48386
48579
  dom.removeAttribute(key);
48387
48580
  });
48388
48581
  }
48389
- function readImageDimensions(bytes) {
48390
- if (!(bytes instanceof Uint8Array) || bytes.length < 12)
48391
- return null;
48392
- if (bytes[0] === 137 && bytes[1] === 80 && bytes[2] === 78 && bytes[3] === 71) {
48393
- if (bytes.length < 24)
48394
- return null;
48395
- const view = new DataView(bytes.buffer, bytes.byteOffset, bytes.byteLength);
48396
- const width = view.getInt32(16);
48397
- const height = view.getInt32(20);
48398
- if (width > 0 && height > 0)
48399
- return {
48400
- width,
48401
- height
48402
- };
48403
- return null;
48404
- }
48405
- if (bytes[0] === 255 && bytes[1] === 216 && bytes[2] === 255)
48406
- return readJpegDimensions(bytes);
48407
- if (bytes[0] === 71 && bytes[1] === 73 && bytes[2] === 70 && bytes[3] === 56) {
48408
- if (bytes.length < 10)
48409
- return null;
48410
- const view = new DataView(bytes.buffer, bytes.byteOffset, bytes.byteLength);
48411
- const width = view.getUint16(6, true);
48412
- const height = view.getUint16(8, true);
48413
- if (width > 0 && height > 0)
48414
- return {
48415
- width,
48416
- height
48417
- };
48418
- return null;
48419
- }
48420
- if (bytes[0] === 66 && bytes[1] === 77) {
48421
- if (bytes.length < 26)
48422
- return null;
48423
- const view = new DataView(bytes.buffer, bytes.byteOffset, bytes.byteLength);
48424
- const width = view.getInt32(18, true);
48425
- const height = Math.abs(view.getInt32(22, true));
48426
- if (width > 0 && height > 0)
48427
- return {
48428
- width,
48429
- height
48430
- };
48431
- return null;
48432
- }
48433
- if (bytes[0] === 82 && bytes[1] === 73 && bytes[2] === 70 && bytes[3] === 70 && bytes[8] === 87 && bytes[9] === 69 && bytes[10] === 66 && bytes[11] === 80)
48434
- return readWebpDimensions(bytes);
48435
- return null;
48436
- }
48437
- function readJpegDimensions(bytes) {
48438
- const view = new DataView(bytes.buffer, bytes.byteOffset, bytes.byteLength);
48439
- let offset = 2;
48440
- while (offset + 4 < bytes.length) {
48441
- if (bytes[offset] !== 255)
48442
- return null;
48443
- const marker = bytes[offset + 1];
48444
- if (marker === 192 || marker === 194) {
48445
- if (offset + 9 > bytes.length)
48446
- return null;
48447
- const height = view.getUint16(offset + 5);
48448
- const width = view.getUint16(offset + 7);
48449
- if (width > 0 && height > 0)
48450
- return {
48451
- width,
48452
- height
48453
- };
48454
- return null;
48455
- }
48456
- if (marker === 217)
48457
- return null;
48458
- if (marker === 218)
48459
- return null;
48460
- const segmentLength = view.getUint16(offset + 2);
48461
- offset += 2 + segmentLength;
48462
- }
48463
- return null;
48464
- }
48465
- function readWebpDimensions(bytes) {
48466
- if (bytes.length < 16)
48467
- return null;
48468
- const chunkTag = String.fromCharCode(bytes[12], bytes[13], bytes[14], bytes[15]);
48469
- if (chunkTag === "VP8 ") {
48470
- if (bytes.length < 30)
48471
- return null;
48472
- const view = new DataView(bytes.buffer, bytes.byteOffset, bytes.byteLength);
48473
- const width = view.getUint16(26, true) & 16383;
48474
- const height = view.getUint16(28, true) & 16383;
48475
- if (width > 0 && height > 0)
48476
- return {
48477
- width,
48478
- height
48479
- };
48480
- return null;
48481
- }
48482
- if (chunkTag === "VP8L") {
48483
- if (bytes.length < 25)
48484
- return null;
48485
- const b0 = bytes[21];
48486
- const b1 = bytes[22];
48487
- const b2 = bytes[23];
48488
- const b3 = bytes[24];
48489
- const width = ((b1 & 63) << 8 | b0) + 1;
48490
- const height = ((b3 & 15) << 10 | b2 << 2 | b1 >> 6) + 1;
48491
- if (width > 0 && height > 0)
48492
- return {
48493
- width,
48494
- height
48495
- };
48496
- return null;
48497
- }
48498
- if (chunkTag === "VP8X") {
48499
- if (bytes.length < 30)
48500
- return null;
48501
- const width = (bytes[24] | bytes[25] << 8 | bytes[26] << 16) + 1;
48502
- const height = (bytes[27] | bytes[28] << 8 | bytes[29] << 16) + 1;
48503
- if (width > 0 && height > 0)
48504
- return {
48505
- width,
48506
- height
48507
- };
48508
- return null;
48509
- }
48510
- return null;
48511
- }
48512
- function readImageDimensionsFromDataUri(dataUri) {
48513
- if (typeof dataUri !== "string" || !dataUri.startsWith("data:"))
48514
- return null;
48515
- const commaIndex = dataUri.indexOf(",");
48516
- if (commaIndex === -1)
48517
- return null;
48518
- const base64Payload = dataUri.slice(commaIndex + 1);
48519
- if (!base64Payload)
48520
- return null;
48521
- try {
48522
- return readImageDimensions(base64ToUint8Array(base64Payload));
48523
- } catch {
48524
- return null;
48525
- }
48526
- }
48527
48582
  function resolveHyperlinkRId(attrs, params) {
48528
48583
  if (!attrs.hyperlink?.url || !params)
48529
48584
  return null;
@@ -61556,7 +61611,7 @@ var isRegExp = (value) => {
61556
61611
  chunkedPush(this.left, removed.reverse());
61557
61612
  }
61558
61613
  }
61559
- }, content$1, continuationConstruct, definition2, titleBefore, hardBreakEscape, headingAtx, htmlBlockNames, htmlRawNames, htmlFlow, blankLineBefore, nonLazyContinuationStart, htmlText, labelEnd, resourceConstruct, referenceFullConstruct, referenceCollapsedConstruct, labelStartImage, labelStartLink, lineEnding, thematicBreak2, list2, listItemPrefixWhitespaceConstruct, indentConstruct, setextUnderline, flow, resolver, string, text3, constructs_exports, document$2, contentInitial, flowInitial, flow$1, string$1, text$1, insideSpan, attentionMarkers, disable, search, own3, FULL_WIDTH_TABLE_PCT = 5000, HEADING_STYLE_MAP, FENCE_OPEN_RE, INDENTED_CODE_RE, MAX_BORDER_SCAN = 100, MIN_BORDER_WIDTH_RATIO = 0.4, defaultBooleans, MAX_INLINE_NAVIGATION_ITERATIONS = 8, computeChangeRange = (original, suggested) => {
61614
+ }, content$1, continuationConstruct, definition2, titleBefore, hardBreakEscape, headingAtx, htmlBlockNames, htmlRawNames, htmlFlow, blankLineBefore, nonLazyContinuationStart, htmlText, labelEnd, resourceConstruct, referenceFullConstruct, referenceCollapsedConstruct, labelStartImage, labelStartLink, lineEnding, thematicBreak2, list2, listItemPrefixWhitespaceConstruct, indentConstruct, setextUnderline, flow, resolver, string, text3, constructs_exports, document$2, contentInitial, flowInitial, flow$1, string$1, text$1, insideSpan, attentionMarkers, disable, search, own3, FULL_WIDTH_TABLE_PCT = 5000, imageDocPrIdsByContext, HEADING_STYLE_MAP, FENCE_OPEN_RE, INDENTED_CODE_RE, MAX_BORDER_SCAN = 100, MIN_BORDER_WIDTH_RATIO = 0.4, defaultBooleans, MAX_INLINE_NAVIGATION_ITERATIONS = 8, computeChangeRange = (original, suggested) => {
61560
61615
  const origLen = original.length;
61561
61616
  const suggLen = suggested.length;
61562
61617
  let prefix = 0;
@@ -65053,7 +65108,7 @@ var isRegExp = (value) => {
65053
65108
  state.kern = kernNode.attributes["w:val"];
65054
65109
  }
65055
65110
  }, SuperConverter;
65056
- var init_SuperConverter_WVv8Qhfn_es = __esm(() => {
65111
+ var init_SuperConverter_6i_hCnOE_es = __esm(() => {
65057
65112
  init_rolldown_runtime_B2q5OVn9_es();
65058
65113
  init_jszip_ChlR43oI_es();
65059
65114
  init_xml_js_DLE8mr0n_es();
@@ -69065,6 +69120,29 @@ var init_SuperConverter_WVv8Qhfn_es = __esm(() => {
69065
69120
  referenceDocPath: "lists/apply-preset.mdx",
69066
69121
  referenceGroup: "lists"
69067
69122
  },
69123
+ "lists.setType": {
69124
+ memberPath: "lists.setType",
69125
+ description: "Convert a list to ordered or bullet and merge adjacent compatible sequences to preserve continuous numbering.",
69126
+ expectedResult: "Returns a ListsMutateItemResult receipt; reports NO_OP if the list is already the requested kind and no sequences were merged.",
69127
+ requiresDocumentContext: true,
69128
+ metadata: mutationOperation2({
69129
+ idempotency: "conditional",
69130
+ supportsDryRun: true,
69131
+ supportsTrackedMode: false,
69132
+ possibleFailureCodes: [
69133
+ "NO_OP",
69134
+ "INVALID_TARGET",
69135
+ "INVALID_INPUT"
69136
+ ],
69137
+ throws: [
69138
+ ...T_NOT_FOUND_CAPABLE2,
69139
+ "INVALID_TARGET",
69140
+ "INVALID_INPUT"
69141
+ ]
69142
+ }),
69143
+ referenceDocPath: "lists/set-type.mdx",
69144
+ referenceGroup: "lists"
69145
+ },
69068
69146
  "lists.captureTemplate": {
69069
69147
  memberPath: "lists.captureTemplate",
69070
69148
  description: "Capture the formatting of a list as a reusable ListTemplate.",
@@ -73212,7 +73290,11 @@ var init_SuperConverter_WVv8Qhfn_es = __esm(() => {
73212
73290
  minimum: 0,
73213
73291
  maximum: 8
73214
73292
  })
73215
- }, ["target", "preset"]), listsMutateItemResultSchemaFor2("lists.applyPreset"), listsFailureSchemaFor2("lists.applyPreset"), (() => {
73293
+ }, ["target", "preset"]), listsMutateItemResultSchemaFor2("lists.applyPreset"), listsFailureSchemaFor2("lists.applyPreset"), objectSchema2({
73294
+ target: listItemAddressSchema2,
73295
+ kind: { enum: ["ordered", "bullet"] },
73296
+ continuity: { enum: ["preserve", "none"] }
73297
+ }, ["target", "kind"]), listsMutateItemResultSchemaFor2("lists.setType"), listsFailureSchemaFor2("lists.setType"), (() => {
73216
73298
  const successSchema = objectSchema2({
73217
73299
  success: { const: true },
73218
73300
  template: objectSchema2({
@@ -89214,6 +89296,7 @@ var init_SuperConverter_WVv8Qhfn_es = __esm(() => {
89214
89296
  disable = { null: [] };
89215
89297
  search = /[\0\t\n\r]/g;
89216
89298
  own3 = {}.hasOwnProperty;
89299
+ imageDocPrIdsByContext = /* @__PURE__ */ new WeakMap;
89217
89300
  HEADING_STYLE_MAP = {
89218
89301
  1: "Heading1",
89219
89302
  2: "Heading2",
@@ -121801,9 +121884,9 @@ var init_remark_gfm_CjV8kaUy_es = __esm(() => {
121801
121884
  init_remark_gfm_z_sDF4ss_es();
121802
121885
  });
121803
121886
 
121804
- // ../../packages/superdoc/dist/chunks/src-BpEuYrQh.es.js
121805
- var exports_src_BpEuYrQh_es = {};
121806
- __export(exports_src_BpEuYrQh_es, {
121887
+ // ../../packages/superdoc/dist/chunks/src-Db-ZEAR0.es.js
121888
+ var exports_src_Db_ZEAR0_es = {};
121889
+ __export(exports_src_Db_ZEAR0_es, {
121807
121890
  zt: () => defineMark,
121808
121891
  z: () => cM,
121809
121892
  yt: () => removeAwarenessStates,
@@ -133087,6 +133170,26 @@ function editorHasDom(editor) {
133087
133170
  const opts = editor.options;
133088
133171
  return !!(opts?.document ?? opts?.mockDocument ?? (typeof document !== "undefined" ? document : null));
133089
133172
  }
133173
+ function isJsonObject(value) {
133174
+ return typeof value === "object" && value !== null && !Array.isArray(value);
133175
+ }
133176
+ function ensureMarkdownImageIds(nodes) {
133177
+ const visit2 = (node3) => {
133178
+ if (node3.type === "image") {
133179
+ const attrs = isJsonObject(node3.attrs) ? { ...node3.attrs } : {};
133180
+ if (!(typeof attrs.sdImageId === "string" && attrs.sdImageId.length > 0))
133181
+ attrs.sdImageId = v4_default();
133182
+ node3.attrs = attrs;
133183
+ }
133184
+ if (!Array.isArray(node3.content))
133185
+ return;
133186
+ for (const child of node3.content)
133187
+ if (isJsonObject(child))
133188
+ visit2(child);
133189
+ };
133190
+ for (const node3 of nodes)
133191
+ visit2(node3);
133192
+ }
133090
133193
  function ensureTableSeparators(jsonNodes) {
133091
133194
  for (let i$1 = jsonNodes.length - 2;i$1 >= 0; i$1--)
133092
133195
  if (jsonNodes[i$1].type === "table" && jsonNodes[i$1 + 1].type === "table")
@@ -133553,6 +133656,7 @@ function insertStructuredWrapper(editor, input2, options) {
133553
133656
  }
133554
133657
  const jsonNodes = [];
133555
133658
  fragment.forEach((node3) => jsonNodes.push(node3.toJSON()));
133659
+ ensureMarkdownImageIds(jsonNodes);
133556
133660
  ensureTableSeparators(jsonNodes);
133557
133661
  if (from$12 === to) {
133558
133662
  const $pos = editor.state.doc.resolve(from$12);
@@ -137108,6 +137212,108 @@ function listsApplyPresetWrapper(editor, input2, options) {
137108
137212
  item: targetResult.resolved.address
137109
137213
  };
137110
137214
  }
137215
+ function areAbstractsCompatibleForMerge(targetAbstractNumId, adjacentAbstractNumId) {
137216
+ return adjacentAbstractNumId != null && targetAbstractNumId === adjacentAbstractNumId;
137217
+ }
137218
+ function resolveSequenceKind(sequence) {
137219
+ const first$1 = sequence[0];
137220
+ if (!first$1 || first$1.numId == null)
137221
+ return;
137222
+ return first$1.kind;
137223
+ }
137224
+ function mergeAdjacentSequence(editor, tr, absorbingNumId, absorbedItems) {
137225
+ const firstAbsorbed = absorbedItems[0];
137226
+ if (firstAbsorbed?.numId != null)
137227
+ ListHelpers.removeLvlOverride(editor, firstAbsorbed.numId, firstAbsorbed.level ?? 0);
137228
+ for (const item of absorbedItems)
137229
+ updateNumberingProperties({
137230
+ numId: absorbingNumId,
137231
+ ilvl: item.level ?? 0
137232
+ }, item.candidate.node, item.candidate.pos, editor, tr);
137233
+ }
137234
+ function listsSetTypeWrapper(editor, input2, options) {
137235
+ rejectTrackedMode("lists.setType", options);
137236
+ const preset = DEFAULT_PRESET_FOR_KIND[input2.kind];
137237
+ if (!preset)
137238
+ return toListsFailure("INVALID_INPUT", `Unknown list kind: ${input2.kind}.`, { kind: input2.kind });
137239
+ const template = LevelFormattingHelpers.getPresetTemplate(preset);
137240
+ if (!template)
137241
+ return toListsFailure("INVALID_INPUT", `No template found for preset: ${preset}.`, { preset });
137242
+ const targetResult = resolveTargetAbstract(editor, input2.target);
137243
+ if (!targetResult.ok)
137244
+ return targetResult.failure;
137245
+ if (options?.dryRun)
137246
+ return {
137247
+ success: true,
137248
+ item: targetResult.resolved.address
137249
+ };
137250
+ const continuity = input2.continuity ?? "preserve";
137251
+ let applyError;
137252
+ const receipt2 = executeDomainCommand(editor, () => {
137253
+ let didAnything = false;
137254
+ const result = LevelFormattingHelpers.applyTemplateToAbstract(editor, targetResult.abstractNumId, template, undefined);
137255
+ if (result.error) {
137256
+ applyError = result.error;
137257
+ return false;
137258
+ }
137259
+ if (result.changed)
137260
+ didAnything = true;
137261
+ const { tr } = editor.state;
137262
+ if (continuity === "preserve") {
137263
+ clearIndexCache(editor);
137264
+ const freshTarget = resolveListItem(editor, input2.target);
137265
+ if (freshTarget.numId != null) {
137266
+ if (mergeAdjacentCompatibleSequences(editor, tr, freshTarget, targetResult.abstractNumId))
137267
+ didAnything = true;
137268
+ }
137269
+ }
137270
+ if (!didAnything)
137271
+ return false;
137272
+ dispatchEditorTransaction$1(editor, tr);
137273
+ if (continuity === "preserve")
137274
+ clearIndexCache(editor);
137275
+ return true;
137276
+ }, { expectedRevision: options?.expectedRevision });
137277
+ if (applyError)
137278
+ return toApplyTemplateError(applyError, input2.target);
137279
+ if (receipt2.steps[0]?.effect !== "changed")
137280
+ return toListsFailure("NO_OP", "List type is already the requested kind.", { target: input2.target });
137281
+ return {
137282
+ success: true,
137283
+ item: targetResult.resolved.address
137284
+ };
137285
+ }
137286
+ function mergeAdjacentCompatibleSequences(editor, tr, target, targetAbstractNumId) {
137287
+ const targetNumId = target.numId;
137288
+ let merged = false;
137289
+ const prev = findAdjacentSequence(editor, target, "withPrevious");
137290
+ if (prev && canMergeSequences(prev.abstractNumId, targetAbstractNumId, prev.sequence, target.kind)) {
137291
+ const targetSequence = getContiguousSequence(editor, target);
137292
+ mergeAdjacentSequence(editor, tr, prev.numId, targetSequence);
137293
+ clearIndexCache(editor);
137294
+ merged = true;
137295
+ const freshTarget = resolveListItem(editor, target.address);
137296
+ const next$1 = findAdjacentSequence(editor, freshTarget, "withNext");
137297
+ if (next$1 && prev.abstractNumId != null && canMergeSequences(next$1.abstractNumId, prev.abstractNumId, next$1.sequence, freshTarget.kind)) {
137298
+ mergeAdjacentSequence(editor, tr, prev.numId, next$1.sequence);
137299
+ clearIndexCache(editor);
137300
+ }
137301
+ return merged;
137302
+ }
137303
+ const next2 = findAdjacentSequence(editor, target, "withNext");
137304
+ if (next2 && canMergeSequences(next2.abstractNumId, targetAbstractNumId, next2.sequence, target.kind)) {
137305
+ mergeAdjacentSequence(editor, tr, targetNumId, next2.sequence);
137306
+ clearIndexCache(editor);
137307
+ merged = true;
137308
+ }
137309
+ return merged;
137310
+ }
137311
+ function canMergeSequences(adjacentAbstractNumId, targetAbstractNumId, adjacentSequence, targetKind) {
137312
+ const adjacentKind = resolveSequenceKind(adjacentSequence);
137313
+ if (adjacentKind == null || adjacentKind !== targetKind)
137314
+ return false;
137315
+ return areAbstractsCompatibleForMerge(targetAbstractNumId, adjacentAbstractNumId);
137316
+ }
137111
137317
  function listsCaptureTemplateWrapper(editor, input2) {
137112
137318
  const levelsError = validateLevelsArray(input2.levels);
137113
137319
  if (levelsError)
@@ -145439,7 +145645,8 @@ function assembleDocumentApiAdapters(editor) {
145439
145645
  setLevelIndents: (input2, options) => listsSetLevelIndentsWrapper(editor, input2, options),
145440
145646
  setLevelTrailingCharacter: (input2, options) => listsSetLevelTrailingCharacterWrapper(editor, input2, options),
145441
145647
  setLevelMarkerFont: (input2, options) => listsSetLevelMarkerFontWrapper(editor, input2, options),
145442
- clearLevelOverrides: (input2, options) => listsClearLevelOverridesWrapper(editor, input2, options)
145648
+ clearLevelOverrides: (input2, options) => listsClearLevelOverridesWrapper(editor, input2, options),
145649
+ setType: (input2, options) => listsSetTypeWrapper(editor, input2, options)
145443
145650
  },
145444
145651
  sections: {
145445
145652
  list: (query2) => sectionsListAdapter(editor, query2),
@@ -180247,7 +180454,7 @@ var Node$13 = class Node$14 {
180247
180454
  console.warn("Failed to initialize developer tools:", error);
180248
180455
  }
180249
180456
  }
180250
- }, BLANK_DOCX_DATA_URI = `data:application/vnd.openxmlformats-officedocument.wordprocessingml.document;base64,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`, LINK_MARK_NAME = "link", COMMENT_MARK_NAME, SUPPORTED_INLINE_TYPES, DocumentApiAdapterError, ALIAS_ELIGIBLE_TYPES, cacheByEditor, OBJECT_REPLACEMENT_CHAR = "", TAB_LEADER_TO_SEPARATOR, SEPARATOR_TO_TAB_LEADER, DEFAULT_TOC_CONFIG, SWITCH_PATTERN$1, SNIPPET_PADDING = 30, DUAL_KIND_TYPES, KNOWN_BLOCK_PM_NODE_TYPES, KNOWN_INLINE_PM_NODE_TYPES, MAX_PATTERN_LENGTH = 1024, PlanError, revisionMap, subscribedEditors, HEADING_STYLE_DEPTH, BULLET_FORMATS, MARK_PRIORITY, remarkProcessor, DEFAULT_UNFLATTEN_LISTS = true, everSyncedProviders, REQUIRED_COMMANDS, VALID_CAPABILITY_REASON_CODES, REQUIRED_HELPERS, SUPPORTED_NON_UNIFORM_STRATEGIES, SUPPORTED_SET_MARKS, REGEX_MAX_PATTERN_LENGTH = 1024, registry, TOGGLE_MARK_SPECS, CORE_MARK_NAMES, METADATA_MARK_NAMES, VALID_CREATE_POSITIONS, REF_HANDLERS, STEP_INTERACTION_MATRIX, MATRIX_EXEMPT_OPS, DEFAULT_INLINE_POLICY, CORE_SET_MARK_KEYS, BOOLEAN_INLINE_MARK_KEYS, TEXT_STYLE_KEYS, PRESERVE_RUN_PROPERTIES_META_KEY = "sdPreserveRunPropertiesKeys", STUB_WHERE, FALLBACK_STORE_KEY = "__documentApiComments", STYLES_PART = "word/styles.xml", PROPERTIES_KEY_BY_CHANNEL, XML_PATH_BY_CHANNEL2, UNDERLINE_API_TO_STORAGE, UNDERLINE_STORAGE_TO_API, HEX_SUBKEYS_BY_PROPERTY, PARAGRAPH_NODE_TYPES, ALIGNMENT_TO_JUSTIFICATION, DERIVED_ID_LENGTH = 24, groupedCache, SUPPORTED_NODE_TYPES, REJECTED_NODE_TYPES, INDENT_PER_LEVEL_TWIPS = 720, HANGING_INDENT_TWIPS = 360, ORDERED_PRESET_CONFIG, BULLET_PRESET_CONFIG, PRESET_TEMPLATES, LevelFormattingHelpers, CSS_NAMED_COLORS, SETTINGS_PART_PATH = "word/settings.xml", POINTS_TO_PIXELS, POINTS_TO_TWIPS = 20, PIXELS_TO_TWIPS, DEFAULT_TABLE_GRID_WIDTH_TWIPS = 1500, TABLE_ADAPTER_DISPATCH, ROW_OPS, TABLE_SCOPED_OPS, registered = false, SectionType, DEFAULT_PARAGRAPH_SECTION_TYPE, DEFAULT_BODY_SECTION_TYPE, TWIPS_PER_INCH$2 = 1440, PX_PER_INCH$2 = 96, DEFAULT_COLUMN_GAP_INCHES = 0.5, DEFAULT_HEADER_FOOTER_MARGIN_PX = 0, LINE_NUMBER_RESTART_VALUES, PAGE_NUMBER_FORMAT_VALUES, SECTION_ORIENTATION_VALUES, SECTION_VERTICAL_ALIGN_VALUES, readSectPrHeaderFooterRefs, PIXELS_PER_INCH$2 = 96, DOCUMENT_RELS_PATH = "word/_rels/document.xml.rels", RELS_XMLNS2 = "http://schemas.openxmlformats.org/package/2006/relationships", HEADER_RELATIONSHIP_TYPE2 = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/header", FOOTER_RELATIONSHIP_TYPE2 = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/footer", WORDPROCESSINGML_XMLNS = "http://schemas.openxmlformats.org/wordprocessingml/2006/main", OFFICE_DOCUMENT_RELS_XMLNS = "http://schemas.openxmlformats.org/officeDocument/2006/relationships", RELATIONSHIP_ID_PATTERN, HEADER_FILE_PATTERN, FOOTER_FILE_PATTERN, HISTORY_UNSAFE_OPS, DEFAULT_LEVEL = 1, SWITCH_PATTERN, DEFAULT_RIGHT_TAB_POS = 9350, TAB_LEADER_MAP, NO_ENTRIES_PLACEHOLDER, TC_LEVEL_MIN = 1, TC_LEVEL_MAX = 9, DEFAULT_MIME_TYPE = "application/octet-stream", simpleHash2 = (str) => {
180457
+ }, BLANK_DOCX_DATA_URI = `data:application/vnd.openxmlformats-officedocument.wordprocessingml.document;base64,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`, LINK_MARK_NAME = "link", COMMENT_MARK_NAME, SUPPORTED_INLINE_TYPES, DocumentApiAdapterError, ALIAS_ELIGIBLE_TYPES, cacheByEditor, OBJECT_REPLACEMENT_CHAR = "", TAB_LEADER_TO_SEPARATOR, SEPARATOR_TO_TAB_LEADER, DEFAULT_TOC_CONFIG, SWITCH_PATTERN$1, SNIPPET_PADDING = 30, DUAL_KIND_TYPES, KNOWN_BLOCK_PM_NODE_TYPES, KNOWN_INLINE_PM_NODE_TYPES, MAX_PATTERN_LENGTH = 1024, PlanError, revisionMap, subscribedEditors, HEADING_STYLE_DEPTH, BULLET_FORMATS, MARK_PRIORITY, remarkProcessor, DEFAULT_UNFLATTEN_LISTS = true, everSyncedProviders, REQUIRED_COMMANDS, VALID_CAPABILITY_REASON_CODES, REQUIRED_HELPERS, SUPPORTED_NON_UNIFORM_STRATEGIES, SUPPORTED_SET_MARKS, REGEX_MAX_PATTERN_LENGTH = 1024, registry, TOGGLE_MARK_SPECS, CORE_MARK_NAMES, METADATA_MARK_NAMES, VALID_CREATE_POSITIONS, REF_HANDLERS, STEP_INTERACTION_MATRIX, MATRIX_EXEMPT_OPS, DEFAULT_INLINE_POLICY, CORE_SET_MARK_KEYS, BOOLEAN_INLINE_MARK_KEYS, TEXT_STYLE_KEYS, PRESERVE_RUN_PROPERTIES_META_KEY = "sdPreserveRunPropertiesKeys", STUB_WHERE, FALLBACK_STORE_KEY = "__documentApiComments", STYLES_PART = "word/styles.xml", PROPERTIES_KEY_BY_CHANNEL, XML_PATH_BY_CHANNEL2, UNDERLINE_API_TO_STORAGE, UNDERLINE_STORAGE_TO_API, HEX_SUBKEYS_BY_PROPERTY, PARAGRAPH_NODE_TYPES, ALIGNMENT_TO_JUSTIFICATION, DERIVED_ID_LENGTH = 24, groupedCache, SUPPORTED_NODE_TYPES, REJECTED_NODE_TYPES, INDENT_PER_LEVEL_TWIPS = 720, HANGING_INDENT_TWIPS = 360, ORDERED_PRESET_CONFIG, BULLET_PRESET_CONFIG, PRESET_TEMPLATES, LevelFormattingHelpers, DEFAULT_PRESET_FOR_KIND, CSS_NAMED_COLORS, SETTINGS_PART_PATH = "word/settings.xml", POINTS_TO_PIXELS, POINTS_TO_TWIPS = 20, PIXELS_TO_TWIPS, DEFAULT_TABLE_GRID_WIDTH_TWIPS = 1500, TABLE_ADAPTER_DISPATCH, ROW_OPS, TABLE_SCOPED_OPS, registered = false, SectionType, DEFAULT_PARAGRAPH_SECTION_TYPE, DEFAULT_BODY_SECTION_TYPE, TWIPS_PER_INCH$2 = 1440, PX_PER_INCH$2 = 96, DEFAULT_COLUMN_GAP_INCHES = 0.5, DEFAULT_HEADER_FOOTER_MARGIN_PX = 0, LINE_NUMBER_RESTART_VALUES, PAGE_NUMBER_FORMAT_VALUES, SECTION_ORIENTATION_VALUES, SECTION_VERTICAL_ALIGN_VALUES, readSectPrHeaderFooterRefs, PIXELS_PER_INCH$2 = 96, DOCUMENT_RELS_PATH = "word/_rels/document.xml.rels", RELS_XMLNS2 = "http://schemas.openxmlformats.org/package/2006/relationships", HEADER_RELATIONSHIP_TYPE2 = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/header", FOOTER_RELATIONSHIP_TYPE2 = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/footer", WORDPROCESSINGML_XMLNS = "http://schemas.openxmlformats.org/wordprocessingml/2006/main", OFFICE_DOCUMENT_RELS_XMLNS = "http://schemas.openxmlformats.org/officeDocument/2006/relationships", RELATIONSHIP_ID_PATTERN, HEADER_FILE_PATTERN, FOOTER_FILE_PATTERN, HISTORY_UNSAFE_OPS, DEFAULT_LEVEL = 1, SWITCH_PATTERN, DEFAULT_RIGHT_TAB_POS = 9350, TAB_LEADER_MAP, NO_ENTRIES_PLACEHOLDER, TC_LEVEL_MIN = 1, TC_LEVEL_MAX = 9, DEFAULT_MIME_TYPE = "application/octet-stream", simpleHash2 = (str) => {
180251
180458
  let hash$3 = 0;
180252
180459
  for (let i$1 = 0;i$1 < str.length; i$1++) {
180253
180460
  const char = str.charCodeAt(i$1);
@@ -198889,9 +199096,9 @@ var Node$13 = class Node$14 {
198889
199096
  trackedChanges: context.trackedChanges ?? []
198890
199097
  });
198891
199098
  }, _hoisted_1$6, _hoisted_2$2, _hoisted_3, _hoisted_4, ContextMenu_default, _hoisted_1$5, BasicUpload_default, _hoisted_1$4, MIN_WIDTH = 200, PPI = 96, alignment = "flex-end", Ruler_default, GenericPopover_default, _hoisted_1$3, _hoisted_2$1, RESIZE_HANDLE_WIDTH_PX = 9, RESIZE_HANDLE_HEIGHT_PX = 9, RESIZE_HANDLE_OFFSET_PX = 4, DRAG_OVERLAY_EXTENSION_PX = 1000, MIN_DRAG_OVERLAY_WIDTH_PX = 2000, THROTTLE_INTERVAL_MS = 16, MIN_RESIZE_DELTA_PX = 1, TableResizeOverlay_default, _hoisted_1$2, OVERLAY_EXPANSION_PX = 2000, RESIZE_HANDLE_SIZE_PX = 12, MOUSE_MOVE_THROTTLE_MS = 16, DIMENSION_CHANGE_THRESHOLD_PX = 1, Z_INDEX_OVERLAY = 10, Z_INDEX_HANDLE = 15, Z_INDEX_GUIDELINE = 20, ImageResizeOverlay_default, LINK_CLICK_DEBOUNCE_MS = 300, CURSOR_UPDATE_TIMEOUT_MS = 10, POPOVER_VERTICAL_OFFSET_PX = 15, LinkClickHandler_default, _hoisted_1$1, _hoisted_2, DOCX2 = "application/vnd.openxmlformats-officedocument.wordprocessingml.document", TABLE_RESIZE_HOVER_THRESHOLD = 8, TABLE_RESIZE_THROTTLE_MS = 16, SuperEditor_default, _hoisted_1, SuperInput_default, SlashMenu, Extensions;
198892
- var init_src_BpEuYrQh_es = __esm(() => {
199099
+ var init_src_Db_ZEAR0_es = __esm(() => {
198893
199100
  init_rolldown_runtime_B2q5OVn9_es();
198894
- init_SuperConverter_WVv8Qhfn_es();
199101
+ init_SuperConverter_6i_hCnOE_es();
198895
199102
  init_jszip_ChlR43oI_es();
198896
199103
  init_uuid_qzgm05fK_es();
198897
199104
  init_constants_CMPtQbp7_es();
@@ -207440,6 +207647,10 @@ function print() { __p += __j.call(arguments, '') }
207440
207647
  getPresetTemplate,
207441
207648
  PRESET_TEMPLATES
207442
207649
  };
207650
+ DEFAULT_PRESET_FOR_KIND = {
207651
+ ordered: "decimal",
207652
+ bullet: "disc"
207653
+ };
207443
207654
  CSS_NAMED_COLORS = {
207444
207655
  aliceblue: "#f0f8ff",
207445
207656
  antiquewhite: "#faebd7",
@@ -230622,8 +230833,8 @@ function print() { __p += __j.call(arguments, '') }
230622
230833
  return isObjectLike_default(value) && hasOwnProperty$8.call(value, "callee") && !propertyIsEnumerable$1.call(value, "callee");
230623
230834
  };
230624
230835
  stubFalse_default = stubFalse;
230625
- freeExports$2 = typeof exports_src_BpEuYrQh_es == "object" && exports_src_BpEuYrQh_es && !exports_src_BpEuYrQh_es.nodeType && exports_src_BpEuYrQh_es;
230626
- freeModule$2 = freeExports$2 && typeof module_src_BpEuYrQh_es == "object" && module_src_BpEuYrQh_es && !module_src_BpEuYrQh_es.nodeType && module_src_BpEuYrQh_es;
230836
+ freeExports$2 = typeof exports_src_Db_ZEAR0_es == "object" && exports_src_Db_ZEAR0_es && !exports_src_Db_ZEAR0_es.nodeType && exports_src_Db_ZEAR0_es;
230837
+ freeModule$2 = freeExports$2 && typeof module_src_Db_ZEAR0_es == "object" && module_src_Db_ZEAR0_es && !module_src_Db_ZEAR0_es.nodeType && module_src_Db_ZEAR0_es;
230627
230838
  Buffer$1 = freeModule$2 && freeModule$2.exports === freeExports$2 ? _root_default.Buffer : undefined;
230628
230839
  isBuffer_default = (Buffer$1 ? Buffer$1.isBuffer : undefined) || stubFalse_default;
230629
230840
  typedArrayTags = {};
@@ -230631,8 +230842,8 @@ function print() { __p += __j.call(arguments, '') }
230631
230842
  typedArrayTags[argsTag$1] = typedArrayTags[arrayTag$1] = typedArrayTags[arrayBufferTag$1] = typedArrayTags[boolTag$1] = typedArrayTags[dataViewTag$2] = typedArrayTags[dateTag$1] = typedArrayTags[errorTag$1] = typedArrayTags[funcTag] = typedArrayTags[mapTag$2] = typedArrayTags[numberTag$1] = typedArrayTags[objectTag$3] = typedArrayTags[regexpTag$1] = typedArrayTags[setTag$2] = typedArrayTags[stringTag$1] = typedArrayTags[weakMapTag$1] = false;
230632
230843
  _baseIsTypedArray_default = baseIsTypedArray;
230633
230844
  _baseUnary_default = baseUnary;
230634
- freeExports$1 = typeof exports_src_BpEuYrQh_es == "object" && exports_src_BpEuYrQh_es && !exports_src_BpEuYrQh_es.nodeType && exports_src_BpEuYrQh_es;
230635
- freeModule$1 = freeExports$1 && typeof module_src_BpEuYrQh_es == "object" && module_src_BpEuYrQh_es && !module_src_BpEuYrQh_es.nodeType && module_src_BpEuYrQh_es;
230845
+ freeExports$1 = typeof exports_src_Db_ZEAR0_es == "object" && exports_src_Db_ZEAR0_es && !exports_src_Db_ZEAR0_es.nodeType && exports_src_Db_ZEAR0_es;
230846
+ freeModule$1 = freeExports$1 && typeof module_src_Db_ZEAR0_es == "object" && module_src_Db_ZEAR0_es && !module_src_Db_ZEAR0_es.nodeType && module_src_Db_ZEAR0_es;
230636
230847
  freeProcess = freeModule$1 && freeModule$1.exports === freeExports$1 && _freeGlobal_default.process;
230637
230848
  _nodeUtil_default = function() {
230638
230849
  try {
@@ -230737,8 +230948,8 @@ function print() { __p += __j.call(arguments, '') }
230737
230948
  Stack.prototype.has = _stackHas_default;
230738
230949
  Stack.prototype.set = _stackSet_default;
230739
230950
  _Stack_default = Stack;
230740
- freeExports = typeof exports_src_BpEuYrQh_es == "object" && exports_src_BpEuYrQh_es && !exports_src_BpEuYrQh_es.nodeType && exports_src_BpEuYrQh_es;
230741
- freeModule = freeExports && typeof module_src_BpEuYrQh_es == "object" && module_src_BpEuYrQh_es && !module_src_BpEuYrQh_es.nodeType && module_src_BpEuYrQh_es;
230951
+ freeExports = typeof exports_src_Db_ZEAR0_es == "object" && exports_src_Db_ZEAR0_es && !exports_src_Db_ZEAR0_es.nodeType && exports_src_Db_ZEAR0_es;
230952
+ freeModule = freeExports && typeof module_src_Db_ZEAR0_es == "object" && module_src_Db_ZEAR0_es && !module_src_Db_ZEAR0_es.nodeType && module_src_Db_ZEAR0_es;
230742
230953
  Buffer4 = freeModule && freeModule.exports === freeExports ? _root_default.Buffer : undefined;
230743
230954
  allocUnsafe = Buffer4 ? Buffer4.allocUnsafe : undefined;
230744
230955
  _cloneBuffer_default = cloneBuffer;
@@ -238818,8 +239029,8 @@ var init_zipper_DqXT7uTa_es = __esm(() => {
238818
239029
 
238819
239030
  // ../../packages/superdoc/dist/super-editor.es.js
238820
239031
  var init_super_editor_es = __esm(() => {
238821
- init_src_BpEuYrQh_es();
238822
- init_SuperConverter_WVv8Qhfn_es();
239032
+ init_src_Db_ZEAR0_es();
239033
+ init_SuperConverter_6i_hCnOE_es();
238823
239034
  init_jszip_ChlR43oI_es();
238824
239035
  init_xml_js_DLE8mr0n_es();
238825
239036
  init_constants_CMPtQbp7_es();
@@ -299211,14 +299422,7 @@ function convertImageBlock2(node4, ctx2) {
299211
299422
  addDiagnostic4(ctx2, "warning", "image", "Image with empty URL — skipped.", node4);
299212
299423
  return makeParagraph2([]);
299213
299424
  }
299214
- const imageNode = {
299215
- type: "image",
299216
- attrs: {
299217
- src: node4.url,
299218
- alt: node4.alt ?? null,
299219
- title: node4.title ?? null
299220
- }
299221
- };
299425
+ const imageNode = { type: "image", attrs: buildImageAttrs2(node4, ctx2) };
299222
299426
  return {
299223
299427
  type: "paragraph",
299224
299428
  content: [imageNode]
@@ -299298,14 +299502,50 @@ function convertInlineImage2(node4, ctx2) {
299298
299502
  return [
299299
299503
  {
299300
299504
  type: "image",
299301
- attrs: {
299302
- src: node4.url,
299303
- alt: node4.alt ?? null,
299304
- title: node4.title ?? null
299305
- }
299505
+ attrs: buildImageAttrs2(node4, ctx2)
299306
299506
  }
299307
299507
  ];
299308
299508
  }
299509
+ function buildImageAttrs2(node4, ctx2) {
299510
+ const attrs = {
299511
+ src: node4.url,
299512
+ alt: node4.alt ?? null,
299513
+ title: node4.title ?? null,
299514
+ sdImageId: v42(),
299515
+ id: generateUniqueImageDocPrId2(ctx2)
299516
+ };
299517
+ const dimensions = readImageDimensionsFromDataUri2(node4.url);
299518
+ if (dimensions) {
299519
+ attrs.size = dimensions;
299520
+ }
299521
+ return attrs;
299522
+ }
299523
+ function generateUniqueImageDocPrId2(ctx2) {
299524
+ const existingIds = getOrCreateImageDocPrIdSet2(ctx2);
299525
+ let candidate = "";
299526
+ do {
299527
+ const hex2 = generateDocxRandomId2();
299528
+ candidate = String(parseInt(hex2, 16));
299529
+ } while (!candidate || existingIds.has(candidate));
299530
+ existingIds.add(candidate);
299531
+ return candidate;
299532
+ }
299533
+ function getOrCreateImageDocPrIdSet2(ctx2) {
299534
+ const cached = imageDocPrIdsByContext2.get(ctx2);
299535
+ if (cached)
299536
+ return cached;
299537
+ const existingIds = new Set;
299538
+ ctx2.editor?.state?.doc?.descendants((node4) => {
299539
+ if (node4.type.name !== "image")
299540
+ return true;
299541
+ if (node4.attrs.id !== undefined && node4.attrs.id !== null) {
299542
+ existingIds.add(String(node4.attrs.id));
299543
+ }
299544
+ return true;
299545
+ });
299546
+ imageDocPrIdsByContext2.set(ctx2, existingIds);
299547
+ return existingIds;
299548
+ }
299309
299549
  function makeParagraph2(content5, extraParagraphProps) {
299310
299550
  const paragraphProperties = extraParagraphProps ? { ...extraParagraphProps } : undefined;
299311
299551
  const attrs = {};
@@ -299354,9 +299594,12 @@ function addDiagnostic4(ctx2, severity, nodeType, message, node4) {
299354
299594
  }
299355
299595
  ctx2.diagnostics.push(diagnostic);
299356
299596
  }
299357
- var FULL_WIDTH_TABLE_PCT2 = 5000, HEADING_STYLE_MAP2;
299597
+ var FULL_WIDTH_TABLE_PCT2 = 5000, imageDocPrIdsByContext2, HEADING_STYLE_MAP2;
299358
299598
  var init_mdastToProseMirror = __esm(() => {
299599
+ init_wrapper();
299359
299600
  init_list_numbering_helpers();
299601
+ init_image_dimensions();
299602
+ imageDocPrIdsByContext2 = new WeakMap;
299360
299603
  HEADING_STYLE_MAP2 = {
299361
299604
  1: "Heading1",
299362
299605
  2: "Heading2",
@@ -303784,6 +304027,30 @@ function editorHasDom2(editor) {
303784
304027
  const opts = editor.options;
303785
304028
  return !!(opts?.document ?? opts?.mockDocument ?? (typeof document !== "undefined" ? document : null));
303786
304029
  }
304030
+ function isJsonObject2(value) {
304031
+ return typeof value === "object" && value !== null && !Array.isArray(value);
304032
+ }
304033
+ function ensureMarkdownImageIds2(nodes) {
304034
+ const visit3 = (node4) => {
304035
+ if (node4.type === "image") {
304036
+ const attrs = isJsonObject2(node4.attrs) ? { ...node4.attrs } : {};
304037
+ const hasStableId = typeof attrs.sdImageId === "string" && attrs.sdImageId.length > 0;
304038
+ if (!hasStableId) {
304039
+ attrs.sdImageId = v42();
304040
+ }
304041
+ node4.attrs = attrs;
304042
+ }
304043
+ if (!Array.isArray(node4.content))
304044
+ return;
304045
+ for (const child of node4.content) {
304046
+ if (isJsonObject2(child))
304047
+ visit3(child);
304048
+ }
304049
+ };
304050
+ for (const node4 of nodes) {
304051
+ visit3(node4);
304052
+ }
304053
+ }
303787
304054
  function ensureTableSeparators2(jsonNodes) {
303788
304055
  for (let i4 = jsonNodes.length - 2;i4 >= 0; i4--) {
303789
304056
  if (jsonNodes[i4].type === "table" && jsonNodes[i4 + 1].type === "table") {
@@ -304185,6 +304452,7 @@ function insertStructuredWrapper2(editor, input2, options) {
304185
304452
  }
304186
304453
  const jsonNodes = [];
304187
304454
  fragment.forEach((node4) => jsonNodes.push(node4.toJSON()));
304455
+ ensureMarkdownImageIds2(jsonNodes);
304188
304456
  ensureTableSeparators2(jsonNodes);
304189
304457
  if (from4 === to) {
304190
304458
  const $pos = editor.state.doc.resolve(from4);
@@ -307937,6 +308205,107 @@ function listsApplyPresetWrapper2(editor, input2, options) {
307937
308205
  }
307938
308206
  return { success: true, item: targetResult.resolved.address };
307939
308207
  }
308208
+ function areAbstractsCompatibleForMerge2(targetAbstractNumId, adjacentAbstractNumId) {
308209
+ return adjacentAbstractNumId != null && targetAbstractNumId === adjacentAbstractNumId;
308210
+ }
308211
+ function resolveSequenceKind2(sequence) {
308212
+ const first2 = sequence[0];
308213
+ if (!first2 || first2.numId == null)
308214
+ return;
308215
+ return first2.kind;
308216
+ }
308217
+ function mergeAdjacentSequence2(editor, tr, absorbingNumId, absorbedItems) {
308218
+ const firstAbsorbed = absorbedItems[0];
308219
+ if (firstAbsorbed?.numId != null) {
308220
+ ListHelpers2.removeLvlOverride(editor, firstAbsorbed.numId, firstAbsorbed.level ?? 0);
308221
+ }
308222
+ for (const item of absorbedItems) {
308223
+ updateNumberingProperties2({ numId: absorbingNumId, ilvl: item.level ?? 0 }, item.candidate.node, item.candidate.pos, editor, tr);
308224
+ }
308225
+ }
308226
+ function listsSetTypeWrapper2(editor, input2, options) {
308227
+ rejectTrackedMode2("lists.setType", options);
308228
+ const preset = DEFAULT_PRESET_FOR_KIND2[input2.kind];
308229
+ if (!preset) {
308230
+ return toListsFailure3("INVALID_INPUT", `Unknown list kind: ${input2.kind}.`, { kind: input2.kind });
308231
+ }
308232
+ const template = LevelFormattingHelpers2.getPresetTemplate(preset);
308233
+ if (!template) {
308234
+ return toListsFailure3("INVALID_INPUT", `No template found for preset: ${preset}.`, { preset });
308235
+ }
308236
+ const targetResult = resolveTargetAbstract2(editor, input2.target);
308237
+ if (!targetResult.ok)
308238
+ return targetResult.failure;
308239
+ if (options?.dryRun) {
308240
+ return { success: true, item: targetResult.resolved.address };
308241
+ }
308242
+ const continuity = input2.continuity ?? "preserve";
308243
+ let applyError;
308244
+ const receipt2 = executeDomainCommand2(editor, () => {
308245
+ let didAnything = false;
308246
+ const result = LevelFormattingHelpers2.applyTemplateToAbstract(editor, targetResult.abstractNumId, template, undefined);
308247
+ if (result.error) {
308248
+ applyError = result.error;
308249
+ return false;
308250
+ }
308251
+ if (result.changed)
308252
+ didAnything = true;
308253
+ const { tr } = editor.state;
308254
+ if (continuity === "preserve") {
308255
+ clearIndexCache2(editor);
308256
+ const freshTarget = resolveListItem2(editor, input2.target);
308257
+ if (freshTarget.numId != null) {
308258
+ const merged = mergeAdjacentCompatibleSequences2(editor, tr, freshTarget, targetResult.abstractNumId);
308259
+ if (merged)
308260
+ didAnything = true;
308261
+ }
308262
+ }
308263
+ if (!didAnything)
308264
+ return false;
308265
+ dispatchEditorTransaction3(editor, tr);
308266
+ if (continuity === "preserve")
308267
+ clearIndexCache2(editor);
308268
+ return true;
308269
+ }, { expectedRevision: options?.expectedRevision });
308270
+ if (applyError) {
308271
+ return toApplyTemplateError2(applyError, input2.target);
308272
+ }
308273
+ if (receipt2.steps[0]?.effect !== "changed") {
308274
+ return toListsFailure3("NO_OP", "List type is already the requested kind.", { target: input2.target });
308275
+ }
308276
+ return { success: true, item: targetResult.resolved.address };
308277
+ }
308278
+ function mergeAdjacentCompatibleSequences2(editor, tr, target, targetAbstractNumId) {
308279
+ const targetNumId = target.numId;
308280
+ let merged = false;
308281
+ const prev = findAdjacentSequence2(editor, target, "withPrevious");
308282
+ if (prev && canMergeSequences2(prev.abstractNumId, targetAbstractNumId, prev.sequence, target.kind)) {
308283
+ const targetSequence = getContiguousSequence2(editor, target);
308284
+ mergeAdjacentSequence2(editor, tr, prev.numId, targetSequence);
308285
+ clearIndexCache2(editor);
308286
+ merged = true;
308287
+ const freshTarget = resolveListItem2(editor, target.address);
308288
+ const next3 = findAdjacentSequence2(editor, freshTarget, "withNext");
308289
+ if (next3 && prev.abstractNumId != null && canMergeSequences2(next3.abstractNumId, prev.abstractNumId, next3.sequence, freshTarget.kind)) {
308290
+ mergeAdjacentSequence2(editor, tr, prev.numId, next3.sequence);
308291
+ clearIndexCache2(editor);
308292
+ }
308293
+ return merged;
308294
+ }
308295
+ const next2 = findAdjacentSequence2(editor, target, "withNext");
308296
+ if (next2 && canMergeSequences2(next2.abstractNumId, targetAbstractNumId, next2.sequence, target.kind)) {
308297
+ mergeAdjacentSequence2(editor, tr, targetNumId, next2.sequence);
308298
+ clearIndexCache2(editor);
308299
+ merged = true;
308300
+ }
308301
+ return merged;
308302
+ }
308303
+ function canMergeSequences2(adjacentAbstractNumId, targetAbstractNumId, adjacentSequence, targetKind) {
308304
+ const adjacentKind = resolveSequenceKind2(adjacentSequence);
308305
+ if (adjacentKind == null || adjacentKind !== targetKind)
308306
+ return false;
308307
+ return areAbstractsCompatibleForMerge2(targetAbstractNumId, adjacentAbstractNumId);
308308
+ }
307940
308309
  function listsCaptureTemplateWrapper2(editor, input2) {
307941
308310
  const levelsError = validateLevelsArray2(input2.levels);
307942
308311
  if (levelsError)
@@ -308025,12 +308394,20 @@ function listsClearLevelOverridesWrapper2(editor, input2, options) {
308025
308394
  }
308026
308395
  return { success: true, item: resolved.address };
308027
308396
  }
308397
+ var DEFAULT_PRESET_FOR_KIND2;
308028
308398
  var init_lists_formatting_wrappers = __esm(() => {
308029
308399
  init_mutation_helpers();
308030
308400
  init_plan_wrappers();
308031
308401
  init_list_item_resolver();
308032
308402
  init_list_sequence_helpers();
308403
+ init_index_cache();
308033
308404
  init_list_level_formatting_helpers();
308405
+ init_changeListLevel();
308406
+ init_list_numbering_helpers();
308407
+ DEFAULT_PRESET_FOR_KIND2 = {
308408
+ ordered: "decimal",
308409
+ bullet: "disc"
308410
+ };
308034
308411
  });
308035
308412
 
308036
308413
  // ../../packages/super-editor/src/document-api-adapters/plan-engine/preview.ts
@@ -317514,7 +317891,8 @@ function assembleDocumentApiAdapters2(editor) {
317514
317891
  setLevelIndents: (input2, options) => listsSetLevelIndentsWrapper2(editor, input2, options),
317515
317892
  setLevelTrailingCharacter: (input2, options) => listsSetLevelTrailingCharacterWrapper2(editor, input2, options),
317516
317893
  setLevelMarkerFont: (input2, options) => listsSetLevelMarkerFontWrapper2(editor, input2, options),
317517
- clearLevelOverrides: (input2, options) => listsClearLevelOverridesWrapper2(editor, input2, options)
317894
+ clearLevelOverrides: (input2, options) => listsClearLevelOverridesWrapper2(editor, input2, options),
317895
+ setType: (input2, options) => listsSetTypeWrapper2(editor, input2, options)
317518
317896
  },
317519
317897
  sections: {
317520
317898
  list: (query2) => sectionsListAdapter3(editor, query2),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@superdoc-dev/cli",
3
- "version": "0.2.0-next.90",
3
+ "version": "0.2.0-next.92",
4
4
  "type": "module",
5
5
  "bin": {
6
6
  "superdoc": "./dist/index.js"
@@ -21,20 +21,20 @@
21
21
  "@types/node": "22.19.2",
22
22
  "typescript": "^5.9.2",
23
23
  "@superdoc/pm-adapter": "0.0.0",
24
- "@superdoc/super-editor": "0.0.1",
25
24
  "superdoc": "1.17.0",
26
- "@superdoc/document-api": "0.0.1"
25
+ "@superdoc/document-api": "0.0.1",
26
+ "@superdoc/super-editor": "0.0.1"
27
27
  },
28
28
  "module": "src/index.ts",
29
29
  "publishConfig": {
30
30
  "access": "public"
31
31
  },
32
32
  "optionalDependencies": {
33
- "@superdoc-dev/cli-darwin-arm64": "0.2.0-next.90",
34
- "@superdoc-dev/cli-darwin-x64": "0.2.0-next.90",
35
- "@superdoc-dev/cli-linux-x64": "0.2.0-next.90",
36
- "@superdoc-dev/cli-windows-x64": "0.2.0-next.90",
37
- "@superdoc-dev/cli-linux-arm64": "0.2.0-next.90"
33
+ "@superdoc-dev/cli-darwin-arm64": "0.2.0-next.92",
34
+ "@superdoc-dev/cli-darwin-x64": "0.2.0-next.92",
35
+ "@superdoc-dev/cli-linux-x64": "0.2.0-next.92",
36
+ "@superdoc-dev/cli-linux-arm64": "0.2.0-next.92",
37
+ "@superdoc-dev/cli-windows-x64": "0.2.0-next.92"
38
38
  },
39
39
  "scripts": {
40
40
  "dev": "bun run src/index.ts",