@superdoc-dev/cli 0.2.0-next.81 → 0.2.0-next.82

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 +2630 -85
  2. package/package.json +6 -6
package/dist/index.js CHANGED
@@ -1054,7 +1054,7 @@ function readOperation(options = {}) {
1054
1054
  idempotency: options.idempotency ?? "idempotent",
1055
1055
  supportsDryRun: false,
1056
1056
  supportsTrackedMode: false,
1057
- possibleFailureCodes: NONE_FAILURES,
1057
+ possibleFailureCodes: options.possibleFailureCodes ?? NONE_FAILURES,
1058
1058
  throws: {
1059
1059
  preApply: options.throws ?? NONE_THROWS,
1060
1060
  postApplyForbidden: true
@@ -2184,6 +2184,176 @@ var init_operation_definitions = __esm(() => {
2184
2184
  referenceDocPath: "lists/convert-to-text.mdx",
2185
2185
  referenceGroup: "lists"
2186
2186
  },
2187
+ "lists.applyTemplate": {
2188
+ memberPath: "lists.applyTemplate",
2189
+ description: "Apply a captured ListTemplate to the target list, optionally filtered to specific levels.",
2190
+ expectedResult: "Returns a ListsMutateItemResult receipt; reports NO_OP if all levels already match.",
2191
+ requiresDocumentContext: true,
2192
+ metadata: mutationOperation({
2193
+ idempotency: "conditional",
2194
+ supportsDryRun: true,
2195
+ supportsTrackedMode: false,
2196
+ possibleFailureCodes: ["NO_OP", "INVALID_TARGET", "LEVEL_OUT_OF_RANGE", "INVALID_INPUT"],
2197
+ throws: [...T_NOT_FOUND_CAPABLE, "INVALID_TARGET", "INVALID_INPUT"]
2198
+ }),
2199
+ referenceDocPath: "lists/apply-template.mdx",
2200
+ referenceGroup: "lists"
2201
+ },
2202
+ "lists.applyPreset": {
2203
+ memberPath: "lists.applyPreset",
2204
+ description: "Apply a built-in list formatting preset to the target list.",
2205
+ expectedResult: "Returns a ListsMutateItemResult receipt; reports NO_OP if all levels already match the preset.",
2206
+ requiresDocumentContext: true,
2207
+ metadata: mutationOperation({
2208
+ idempotency: "conditional",
2209
+ supportsDryRun: true,
2210
+ supportsTrackedMode: false,
2211
+ possibleFailureCodes: ["NO_OP", "INVALID_TARGET", "LEVEL_OUT_OF_RANGE", "INVALID_INPUT"],
2212
+ throws: [...T_NOT_FOUND_CAPABLE, "INVALID_TARGET", "INVALID_INPUT"]
2213
+ }),
2214
+ referenceDocPath: "lists/apply-preset.mdx",
2215
+ referenceGroup: "lists"
2216
+ },
2217
+ "lists.captureTemplate": {
2218
+ memberPath: "lists.captureTemplate",
2219
+ description: "Capture the formatting of a list as a reusable ListTemplate.",
2220
+ expectedResult: "Returns a ListsCaptureTemplateResult containing the captured template.",
2221
+ requiresDocumentContext: true,
2222
+ metadata: readOperation({
2223
+ idempotency: "idempotent",
2224
+ throws: ["TARGET_NOT_FOUND", "INVALID_TARGET", "INVALID_INPUT"],
2225
+ possibleFailureCodes: ["INVALID_TARGET", "INVALID_INPUT", "LEVEL_OUT_OF_RANGE"]
2226
+ }),
2227
+ referenceDocPath: "lists/capture-template.mdx",
2228
+ referenceGroup: "lists"
2229
+ },
2230
+ "lists.setLevelNumbering": {
2231
+ memberPath: "lists.setLevelNumbering",
2232
+ description: "Set the numbering format, pattern, and optional start value for a specific list level.",
2233
+ expectedResult: "Returns a ListsMutateItemResult receipt; reports NO_OP if the level already matches.",
2234
+ requiresDocumentContext: true,
2235
+ metadata: mutationOperation({
2236
+ idempotency: "conditional",
2237
+ supportsDryRun: true,
2238
+ supportsTrackedMode: false,
2239
+ possibleFailureCodes: ["NO_OP", "INVALID_TARGET", "LEVEL_OUT_OF_RANGE", "LEVEL_NOT_FOUND"],
2240
+ throws: [...T_NOT_FOUND_CAPABLE, "INVALID_TARGET"]
2241
+ }),
2242
+ referenceDocPath: "lists/set-level-numbering.mdx",
2243
+ referenceGroup: "lists"
2244
+ },
2245
+ "lists.setLevelBullet": {
2246
+ memberPath: "lists.setLevelBullet",
2247
+ description: "Set the bullet marker text for a specific list level.",
2248
+ expectedResult: "Returns a ListsMutateItemResult receipt; reports NO_OP if the marker already matches.",
2249
+ requiresDocumentContext: true,
2250
+ metadata: mutationOperation({
2251
+ idempotency: "conditional",
2252
+ supportsDryRun: true,
2253
+ supportsTrackedMode: false,
2254
+ possibleFailureCodes: ["NO_OP", "INVALID_TARGET", "LEVEL_OUT_OF_RANGE", "LEVEL_NOT_FOUND"],
2255
+ throws: [...T_NOT_FOUND_CAPABLE, "INVALID_TARGET"]
2256
+ }),
2257
+ referenceDocPath: "lists/set-level-bullet.mdx",
2258
+ referenceGroup: "lists"
2259
+ },
2260
+ "lists.setLevelPictureBullet": {
2261
+ memberPath: "lists.setLevelPictureBullet",
2262
+ description: "Set a picture bullet for a specific list level by its OOXML lvlPicBulletId.",
2263
+ expectedResult: "Returns a ListsMutateItemResult receipt; reports NO_OP if the picture bullet already matches.",
2264
+ requiresDocumentContext: true,
2265
+ metadata: mutationOperation({
2266
+ idempotency: "conditional",
2267
+ supportsDryRun: true,
2268
+ supportsTrackedMode: false,
2269
+ possibleFailureCodes: [
2270
+ "NO_OP",
2271
+ "INVALID_TARGET",
2272
+ "LEVEL_OUT_OF_RANGE",
2273
+ "LEVEL_NOT_FOUND",
2274
+ "INVALID_INPUT",
2275
+ "CAPABILITY_UNAVAILABLE"
2276
+ ],
2277
+ throws: [...T_NOT_FOUND_CAPABLE, "INVALID_TARGET", "CAPABILITY_UNAVAILABLE"]
2278
+ }),
2279
+ referenceDocPath: "lists/set-level-picture-bullet.mdx",
2280
+ referenceGroup: "lists"
2281
+ },
2282
+ "lists.setLevelAlignment": {
2283
+ memberPath: "lists.setLevelAlignment",
2284
+ description: "Set the marker alignment (left, center, right) for a specific list level.",
2285
+ expectedResult: "Returns a ListsMutateItemResult receipt; reports NO_OP if the alignment already matches.",
2286
+ requiresDocumentContext: true,
2287
+ metadata: mutationOperation({
2288
+ idempotency: "conditional",
2289
+ supportsDryRun: true,
2290
+ supportsTrackedMode: false,
2291
+ possibleFailureCodes: ["NO_OP", "INVALID_TARGET", "LEVEL_OUT_OF_RANGE", "LEVEL_NOT_FOUND"],
2292
+ throws: [...T_NOT_FOUND_CAPABLE, "INVALID_TARGET"]
2293
+ }),
2294
+ referenceDocPath: "lists/set-level-alignment.mdx",
2295
+ referenceGroup: "lists"
2296
+ },
2297
+ "lists.setLevelIndents": {
2298
+ memberPath: "lists.setLevelIndents",
2299
+ description: "Set the paragraph indentation values (left, hanging, firstLine) for a specific list level.",
2300
+ expectedResult: "Returns a ListsMutateItemResult receipt; reports NO_OP if all indent values already match.",
2301
+ requiresDocumentContext: true,
2302
+ metadata: mutationOperation({
2303
+ idempotency: "conditional",
2304
+ supportsDryRun: true,
2305
+ supportsTrackedMode: false,
2306
+ possibleFailureCodes: ["NO_OP", "INVALID_TARGET", "LEVEL_OUT_OF_RANGE", "LEVEL_NOT_FOUND", "INVALID_INPUT"],
2307
+ throws: [...T_NOT_FOUND_CAPABLE, "INVALID_TARGET", "INVALID_INPUT"]
2308
+ }),
2309
+ referenceDocPath: "lists/set-level-indents.mdx",
2310
+ referenceGroup: "lists"
2311
+ },
2312
+ "lists.setLevelTrailingCharacter": {
2313
+ memberPath: "lists.setLevelTrailingCharacter",
2314
+ description: "Set the trailing character (tab, space, nothing) after the marker for a specific list level.",
2315
+ expectedResult: "Returns a ListsMutateItemResult receipt; reports NO_OP if the trailing character already matches.",
2316
+ requiresDocumentContext: true,
2317
+ metadata: mutationOperation({
2318
+ idempotency: "conditional",
2319
+ supportsDryRun: true,
2320
+ supportsTrackedMode: false,
2321
+ possibleFailureCodes: ["NO_OP", "INVALID_TARGET", "LEVEL_OUT_OF_RANGE", "LEVEL_NOT_FOUND"],
2322
+ throws: [...T_NOT_FOUND_CAPABLE, "INVALID_TARGET"]
2323
+ }),
2324
+ referenceDocPath: "lists/set-level-trailing-character.mdx",
2325
+ referenceGroup: "lists"
2326
+ },
2327
+ "lists.setLevelMarkerFont": {
2328
+ memberPath: "lists.setLevelMarkerFont",
2329
+ description: "Set the font family used for the marker character at a specific list level.",
2330
+ expectedResult: "Returns a ListsMutateItemResult receipt; reports NO_OP if the font already matches.",
2331
+ requiresDocumentContext: true,
2332
+ metadata: mutationOperation({
2333
+ idempotency: "conditional",
2334
+ supportsDryRun: true,
2335
+ supportsTrackedMode: false,
2336
+ possibleFailureCodes: ["NO_OP", "INVALID_TARGET", "LEVEL_OUT_OF_RANGE", "LEVEL_NOT_FOUND"],
2337
+ throws: [...T_NOT_FOUND_CAPABLE, "INVALID_TARGET"]
2338
+ }),
2339
+ referenceDocPath: "lists/set-level-marker-font.mdx",
2340
+ referenceGroup: "lists"
2341
+ },
2342
+ "lists.clearLevelOverrides": {
2343
+ memberPath: "lists.clearLevelOverrides",
2344
+ description: "Remove instance-level overrides for a specific list level, restoring abstract definition values.",
2345
+ expectedResult: "Returns a ListsMutateItemResult receipt; reports NO_OP if no override exists.",
2346
+ requiresDocumentContext: true,
2347
+ metadata: mutationOperation({
2348
+ idempotency: "conditional",
2349
+ supportsDryRun: true,
2350
+ supportsTrackedMode: false,
2351
+ possibleFailureCodes: ["NO_OP", "INVALID_TARGET", "LEVEL_OUT_OF_RANGE"],
2352
+ throws: [...T_NOT_FOUND_CAPABLE, "INVALID_TARGET"]
2353
+ }),
2354
+ referenceDocPath: "lists/clear-level-overrides.mdx",
2355
+ referenceGroup: "lists"
2356
+ },
2187
2357
  "comments.create": {
2188
2358
  memberPath: "comments.create",
2189
2359
  description: "Create a new comment thread (or reply when parentCommentId is given).",
@@ -6226,6 +6396,178 @@ var init_schemas = __esm(() => {
6226
6396
  success: objectSchema({ success: { const: true }, paragraph: ref("ParagraphAddress") }, ["success", "paragraph"]),
6227
6397
  failure: listsFailureSchemaFor("lists.convertToText")
6228
6398
  },
6399
+ "lists.applyTemplate": {
6400
+ input: objectSchema({
6401
+ target: listItemAddressSchema,
6402
+ template: objectSchema({
6403
+ version: { const: 1 },
6404
+ levels: arraySchema(objectSchema({
6405
+ level: { type: "integer", minimum: 0, maximum: 8 },
6406
+ numFmt: { type: "string" },
6407
+ lvlText: { type: "string" },
6408
+ start: { type: "integer" },
6409
+ alignment: { enum: ["left", "center", "right"] },
6410
+ indents: objectSchema({
6411
+ left: { type: "integer" },
6412
+ hanging: { type: "integer" },
6413
+ firstLine: { type: "integer" }
6414
+ }),
6415
+ trailingCharacter: { enum: ["tab", "space", "nothing"] },
6416
+ markerFont: { type: "string" },
6417
+ pictureBulletId: { type: "integer" }
6418
+ }, ["level"]))
6419
+ }, ["version", "levels"]),
6420
+ levels: arraySchema({ type: "integer", minimum: 0, maximum: 8 })
6421
+ }, ["target", "template"]),
6422
+ output: listsMutateItemResultSchemaFor("lists.applyTemplate"),
6423
+ success: listsMutateItemSuccessSchema,
6424
+ failure: listsFailureSchemaFor("lists.applyTemplate")
6425
+ },
6426
+ "lists.applyPreset": {
6427
+ input: objectSchema({
6428
+ target: listItemAddressSchema,
6429
+ preset: {
6430
+ enum: [
6431
+ "decimal",
6432
+ "decimalParenthesis",
6433
+ "lowerLetter",
6434
+ "upperLetter",
6435
+ "lowerRoman",
6436
+ "upperRoman",
6437
+ "disc",
6438
+ "circle",
6439
+ "square",
6440
+ "dash"
6441
+ ]
6442
+ },
6443
+ levels: arraySchema({ type: "integer", minimum: 0, maximum: 8 })
6444
+ }, ["target", "preset"]),
6445
+ output: listsMutateItemResultSchemaFor("lists.applyPreset"),
6446
+ success: listsMutateItemSuccessSchema,
6447
+ failure: listsFailureSchemaFor("lists.applyPreset")
6448
+ },
6449
+ "lists.captureTemplate": (() => {
6450
+ const successSchema = objectSchema({
6451
+ success: { const: true },
6452
+ template: objectSchema({
6453
+ version: { const: 1 },
6454
+ levels: arraySchema(objectSchema({
6455
+ level: { type: "integer", minimum: 0, maximum: 8 },
6456
+ numFmt: { type: "string" },
6457
+ lvlText: { type: "string" },
6458
+ start: { type: "integer" },
6459
+ alignment: { enum: ["left", "center", "right"] },
6460
+ indents: objectSchema({
6461
+ left: { type: "integer" },
6462
+ hanging: { type: "integer" },
6463
+ firstLine: { type: "integer" }
6464
+ }),
6465
+ trailingCharacter: { enum: ["tab", "space", "nothing"] },
6466
+ markerFont: { type: "string" },
6467
+ pictureBulletId: { type: "integer" }
6468
+ }, ["level"]))
6469
+ }, ["version", "levels"])
6470
+ }, ["success", "template"]);
6471
+ return {
6472
+ input: objectSchema({
6473
+ target: listItemAddressSchema,
6474
+ levels: arraySchema({ type: "integer", minimum: 0, maximum: 8 })
6475
+ }, ["target"]),
6476
+ output: { oneOf: [successSchema, listsFailureSchemaFor("lists.captureTemplate")] },
6477
+ success: successSchema,
6478
+ failure: listsFailureSchemaFor("lists.captureTemplate")
6479
+ };
6480
+ })(),
6481
+ "lists.setLevelNumbering": {
6482
+ input: objectSchema({
6483
+ target: listItemAddressSchema,
6484
+ level: { type: "integer", minimum: 0, maximum: 8 },
6485
+ numFmt: { type: "string" },
6486
+ lvlText: { type: "string" },
6487
+ start: { type: "integer" }
6488
+ }, ["target", "level", "numFmt", "lvlText"]),
6489
+ output: listsMutateItemResultSchemaFor("lists.setLevelNumbering"),
6490
+ success: listsMutateItemSuccessSchema,
6491
+ failure: listsFailureSchemaFor("lists.setLevelNumbering")
6492
+ },
6493
+ "lists.setLevelBullet": {
6494
+ input: objectSchema({
6495
+ target: listItemAddressSchema,
6496
+ level: { type: "integer", minimum: 0, maximum: 8 },
6497
+ markerText: { type: "string" }
6498
+ }, ["target", "level", "markerText"]),
6499
+ output: listsMutateItemResultSchemaFor("lists.setLevelBullet"),
6500
+ success: listsMutateItemSuccessSchema,
6501
+ failure: listsFailureSchemaFor("lists.setLevelBullet")
6502
+ },
6503
+ "lists.setLevelPictureBullet": {
6504
+ input: objectSchema({
6505
+ target: listItemAddressSchema,
6506
+ level: { type: "integer", minimum: 0, maximum: 8 },
6507
+ pictureBulletId: { type: "integer" }
6508
+ }, ["target", "level", "pictureBulletId"]),
6509
+ output: listsMutateItemResultSchemaFor("lists.setLevelPictureBullet"),
6510
+ success: listsMutateItemSuccessSchema,
6511
+ failure: listsFailureSchemaFor("lists.setLevelPictureBullet")
6512
+ },
6513
+ "lists.setLevelAlignment": {
6514
+ input: objectSchema({
6515
+ target: listItemAddressSchema,
6516
+ level: { type: "integer", minimum: 0, maximum: 8 },
6517
+ alignment: { enum: ["left", "center", "right"] }
6518
+ }, ["target", "level", "alignment"]),
6519
+ output: listsMutateItemResultSchemaFor("lists.setLevelAlignment"),
6520
+ success: listsMutateItemSuccessSchema,
6521
+ failure: listsFailureSchemaFor("lists.setLevelAlignment")
6522
+ },
6523
+ "lists.setLevelIndents": {
6524
+ input: {
6525
+ type: "object",
6526
+ properties: {
6527
+ target: listItemAddressSchema,
6528
+ level: { type: "integer", minimum: 0, maximum: 8 },
6529
+ left: { type: "integer" },
6530
+ hanging: { type: "integer" },
6531
+ firstLine: { type: "integer" }
6532
+ },
6533
+ required: ["target", "level"],
6534
+ additionalProperties: false,
6535
+ anyOf: [{ required: ["left"] }, { required: ["hanging"] }, { required: ["firstLine"] }],
6536
+ not: { required: ["hanging", "firstLine"] }
6537
+ },
6538
+ output: listsMutateItemResultSchemaFor("lists.setLevelIndents"),
6539
+ success: listsMutateItemSuccessSchema,
6540
+ failure: listsFailureSchemaFor("lists.setLevelIndents")
6541
+ },
6542
+ "lists.setLevelTrailingCharacter": {
6543
+ input: objectSchema({
6544
+ target: listItemAddressSchema,
6545
+ level: { type: "integer", minimum: 0, maximum: 8 },
6546
+ trailingCharacter: { enum: ["tab", "space", "nothing"] }
6547
+ }, ["target", "level", "trailingCharacter"]),
6548
+ output: listsMutateItemResultSchemaFor("lists.setLevelTrailingCharacter"),
6549
+ success: listsMutateItemSuccessSchema,
6550
+ failure: listsFailureSchemaFor("lists.setLevelTrailingCharacter")
6551
+ },
6552
+ "lists.setLevelMarkerFont": {
6553
+ input: objectSchema({
6554
+ target: listItemAddressSchema,
6555
+ level: { type: "integer", minimum: 0, maximum: 8 },
6556
+ fontFamily: { type: "string" }
6557
+ }, ["target", "level", "fontFamily"]),
6558
+ output: listsMutateItemResultSchemaFor("lists.setLevelMarkerFont"),
6559
+ success: listsMutateItemSuccessSchema,
6560
+ failure: listsFailureSchemaFor("lists.setLevelMarkerFont")
6561
+ },
6562
+ "lists.clearLevelOverrides": {
6563
+ input: objectSchema({
6564
+ target: listItemAddressSchema,
6565
+ level: { type: "integer", minimum: 0, maximum: 8 }
6566
+ }, ["target", "level"]),
6567
+ output: listsMutateItemResultSchemaFor("lists.clearLevelOverrides"),
6568
+ success: listsMutateItemSuccessSchema,
6569
+ failure: listsFailureSchemaFor("lists.clearLevelOverrides")
6570
+ },
6229
6571
  "comments.create": {
6230
6572
  input: objectSchema({
6231
6573
  text: { type: "string" },
@@ -8045,6 +8387,50 @@ function executeListsConvertToText(adapter, input, options) {
8045
8387
  validateListTarget(input, "lists.convertToText");
8046
8388
  return adapter.convertToText(input, normalizeMutationOptions(options));
8047
8389
  }
8390
+ function executeListsApplyTemplate(adapter, input, options) {
8391
+ validateListTarget(input, "lists.applyTemplate");
8392
+ return adapter.applyTemplate(input, normalizeMutationOptions(options));
8393
+ }
8394
+ function executeListsApplyPreset(adapter, input, options) {
8395
+ validateListTarget(input, "lists.applyPreset");
8396
+ return adapter.applyPreset(input, normalizeMutationOptions(options));
8397
+ }
8398
+ function executeListsCaptureTemplate(adapter, input) {
8399
+ validateListTarget(input, "lists.captureTemplate");
8400
+ return adapter.captureTemplate(input);
8401
+ }
8402
+ function executeListsSetLevelNumbering(adapter, input, options) {
8403
+ validateListTarget(input, "lists.setLevelNumbering");
8404
+ return adapter.setLevelNumbering(input, normalizeMutationOptions(options));
8405
+ }
8406
+ function executeListsSetLevelBullet(adapter, input, options) {
8407
+ validateListTarget(input, "lists.setLevelBullet");
8408
+ return adapter.setLevelBullet(input, normalizeMutationOptions(options));
8409
+ }
8410
+ function executeListsSetLevelPictureBullet(adapter, input, options) {
8411
+ validateListTarget(input, "lists.setLevelPictureBullet");
8412
+ return adapter.setLevelPictureBullet(input, normalizeMutationOptions(options));
8413
+ }
8414
+ function executeListsSetLevelAlignment(adapter, input, options) {
8415
+ validateListTarget(input, "lists.setLevelAlignment");
8416
+ return adapter.setLevelAlignment(input, normalizeMutationOptions(options));
8417
+ }
8418
+ function executeListsSetLevelIndents(adapter, input, options) {
8419
+ validateListTarget(input, "lists.setLevelIndents");
8420
+ return adapter.setLevelIndents(input, normalizeMutationOptions(options));
8421
+ }
8422
+ function executeListsSetLevelTrailingCharacter(adapter, input, options) {
8423
+ validateListTarget(input, "lists.setLevelTrailingCharacter");
8424
+ return adapter.setLevelTrailingCharacter(input, normalizeMutationOptions(options));
8425
+ }
8426
+ function executeListsSetLevelMarkerFont(adapter, input, options) {
8427
+ validateListTarget(input, "lists.setLevelMarkerFont");
8428
+ return adapter.setLevelMarkerFont(input, normalizeMutationOptions(options));
8429
+ }
8430
+ function executeListsClearLevelOverrides(adapter, input, options) {
8431
+ validateListTarget(input, "lists.clearLevelOverrides");
8432
+ return adapter.clearLevelOverrides(input, normalizeMutationOptions(options));
8433
+ }
8048
8434
  var init_lists = __esm(() => {
8049
8435
  init_errors2();
8050
8436
  });
@@ -8378,6 +8764,17 @@ function buildDispatchTable(api) {
8378
8764
  "lists.canContinuePrevious": (input) => api.lists.canContinuePrevious(input),
8379
8765
  "lists.setLevelRestart": (input, options) => api.lists.setLevelRestart(input, options),
8380
8766
  "lists.convertToText": (input, options) => api.lists.convertToText(input, options),
8767
+ "lists.applyTemplate": (input, options) => api.lists.applyTemplate(input, options),
8768
+ "lists.applyPreset": (input, options) => api.lists.applyPreset(input, options),
8769
+ "lists.captureTemplate": (input) => api.lists.captureTemplate(input),
8770
+ "lists.setLevelNumbering": (input, options) => api.lists.setLevelNumbering(input, options),
8771
+ "lists.setLevelBullet": (input, options) => api.lists.setLevelBullet(input, options),
8772
+ "lists.setLevelPictureBullet": (input, options) => api.lists.setLevelPictureBullet(input, options),
8773
+ "lists.setLevelAlignment": (input, options) => api.lists.setLevelAlignment(input, options),
8774
+ "lists.setLevelIndents": (input, options) => api.lists.setLevelIndents(input, options),
8775
+ "lists.setLevelTrailingCharacter": (input, options) => api.lists.setLevelTrailingCharacter(input, options),
8776
+ "lists.setLevelMarkerFont": (input, options) => api.lists.setLevelMarkerFont(input, options),
8777
+ "lists.clearLevelOverrides": (input, options) => api.lists.clearLevelOverrides(input, options),
8381
8778
  "sections.list": (input) => api.sections.list(input),
8382
8779
  "sections.get": (input) => api.sections.get(input),
8383
8780
  "sections.setBreakType": (input, options) => api.sections.setBreakType(input, options),
@@ -9390,6 +9787,46 @@ function createDocumentApi(adapters) {
9390
9787
  },
9391
9788
  convertToText(input, options) {
9392
9789
  return executeListsConvertToText(adapters.lists, input, options);
9790
+ },
9791
+ applyTemplate(input, options) {
9792
+ return executeListsApplyTemplate(adapters.lists, input, options);
9793
+ },
9794
+ applyPreset(input, options) {
9795
+ return executeListsApplyPreset(adapters.lists, input, options);
9796
+ },
9797
+ captureTemplate(input) {
9798
+ return executeListsCaptureTemplate(adapters.lists, input);
9799
+ },
9800
+ setLevelNumbering(input, options) {
9801
+ return executeListsSetLevelNumbering(adapters.lists, input, options);
9802
+ },
9803
+ setLevelBullet(input, options) {
9804
+ return executeListsSetLevelBullet(adapters.lists, input, options);
9805
+ },
9806
+ setLevelPictureBullet(input, options) {
9807
+ return executeListsSetLevelPictureBullet(adapters.lists, input, options);
9808
+ },
9809
+ setLevelAlignment(input, options) {
9810
+ return executeListsSetLevelAlignment(adapters.lists, input, options);
9811
+ },
9812
+ setLevelIndents(input, options) {
9813
+ return executeListsSetLevelIndents(adapters.lists, input, options);
9814
+ },
9815
+ setLevelTrailingCharacter(input, options) {
9816
+ return executeListsSetLevelTrailingCharacter(adapters.lists, input, options);
9817
+ },
9818
+ setLevelMarkerFont(input, options) {
9819
+ return executeListsSetLevelMarkerFont(adapters.lists, input, options);
9820
+ },
9821
+ clearLevelOverrides(input, options) {
9822
+ return executeListsClearLevelOverrides(adapters.lists, input, options);
9823
+ },
9824
+ setType(input, options) {
9825
+ const presetMap = {
9826
+ ordered: "decimal",
9827
+ bullet: "disc"
9828
+ };
9829
+ return executeListsApplyPreset(adapters.lists, { target: input.target, preset: presetMap[input.kind] }, options);
9393
9830
  }
9394
9831
  },
9395
9832
  sections: {
@@ -10387,6 +10824,17 @@ var init_operation_hints = __esm(() => {
10387
10824
  "lists.continuePrevious": "continued previous list",
10388
10825
  "lists.canContinuePrevious": "checked continue feasibility",
10389
10826
  "lists.setLevelRestart": "set level restart",
10827
+ "lists.applyTemplate": "applied list template",
10828
+ "lists.applyPreset": "applied list preset",
10829
+ "lists.captureTemplate": "captured list template",
10830
+ "lists.setLevelNumbering": "set level numbering",
10831
+ "lists.setLevelBullet": "set level bullet",
10832
+ "lists.setLevelPictureBullet": "set level picture bullet",
10833
+ "lists.setLevelAlignment": "set level alignment",
10834
+ "lists.setLevelIndents": "set level indents",
10835
+ "lists.setLevelTrailingCharacter": "set level trailing character",
10836
+ "lists.setLevelMarkerFont": "set level marker font",
10837
+ "lists.clearLevelOverrides": "cleared level overrides",
10390
10838
  "lists.convertToText": "converted list to text",
10391
10839
  "comments.create": "created comment",
10392
10840
  "comments.patch": "patched comment",
@@ -10506,6 +10954,17 @@ var init_operation_hints = __esm(() => {
10506
10954
  "lists.continuePrevious": "listsMutationResult",
10507
10955
  "lists.canContinuePrevious": "plain",
10508
10956
  "lists.setLevelRestart": "listsMutationResult",
10957
+ "lists.applyTemplate": "listsMutationResult",
10958
+ "lists.applyPreset": "listsMutationResult",
10959
+ "lists.captureTemplate": "plain",
10960
+ "lists.setLevelNumbering": "listsMutationResult",
10961
+ "lists.setLevelBullet": "listsMutationResult",
10962
+ "lists.setLevelPictureBullet": "listsMutationResult",
10963
+ "lists.setLevelAlignment": "listsMutationResult",
10964
+ "lists.setLevelIndents": "listsMutationResult",
10965
+ "lists.setLevelTrailingCharacter": "listsMutationResult",
10966
+ "lists.setLevelMarkerFont": "listsMutationResult",
10967
+ "lists.clearLevelOverrides": "listsMutationResult",
10509
10968
  "lists.convertToText": "listsMutationResult",
10510
10969
  "comments.create": "commentReceipt",
10511
10970
  "comments.patch": "commentReceipt",
@@ -10625,6 +11084,17 @@ var init_operation_hints = __esm(() => {
10625
11084
  "lists.continuePrevious": "result",
10626
11085
  "lists.canContinuePrevious": "result",
10627
11086
  "lists.setLevelRestart": "result",
11087
+ "lists.applyTemplate": "result",
11088
+ "lists.applyPreset": "result",
11089
+ "lists.captureTemplate": "result",
11090
+ "lists.setLevelNumbering": "result",
11091
+ "lists.setLevelBullet": "result",
11092
+ "lists.setLevelPictureBullet": "result",
11093
+ "lists.setLevelAlignment": "result",
11094
+ "lists.setLevelIndents": "result",
11095
+ "lists.setLevelTrailingCharacter": "result",
11096
+ "lists.setLevelMarkerFont": "result",
11097
+ "lists.clearLevelOverrides": "result",
10628
11098
  "lists.convertToText": "result",
10629
11099
  "comments.create": "receipt",
10630
11100
  "comments.patch": "receipt",
@@ -10751,6 +11221,17 @@ var init_operation_hints = __esm(() => {
10751
11221
  "lists.continuePrevious": "lists",
10752
11222
  "lists.canContinuePrevious": "lists",
10753
11223
  "lists.setLevelRestart": "lists",
11224
+ "lists.applyTemplate": "lists",
11225
+ "lists.applyPreset": "lists",
11226
+ "lists.captureTemplate": "lists",
11227
+ "lists.setLevelNumbering": "lists",
11228
+ "lists.setLevelBullet": "lists",
11229
+ "lists.setLevelPictureBullet": "lists",
11230
+ "lists.setLevelAlignment": "lists",
11231
+ "lists.setLevelIndents": "lists",
11232
+ "lists.setLevelTrailingCharacter": "lists",
11233
+ "lists.setLevelMarkerFont": "lists",
11234
+ "lists.clearLevelOverrides": "lists",
10754
11235
  "lists.convertToText": "lists",
10755
11236
  "comments.create": "comments",
10756
11237
  "comments.patch": "comments",
@@ -31834,7 +32315,7 @@ var init_remark_gfm_z_sDF4ss_es = __esm(() => {
31834
32315
  emptyOptions2 = {};
31835
32316
  });
31836
32317
 
31837
- // ../../packages/superdoc/dist/chunks/SuperConverter-Bo_KNppf.es.js
32318
+ // ../../packages/superdoc/dist/chunks/SuperConverter-CejXSSGL.es.js
31838
32319
  function getExtensionConfigField(extension$1, field, context = { name: "" }) {
31839
32320
  const fieldValue = extension$1.config[field];
31840
32321
  if (typeof fieldValue === "function")
@@ -32914,7 +33395,7 @@ function readOperation2(options = {}) {
32914
33395
  idempotency: options.idempotency ?? "idempotent",
32915
33396
  supportsDryRun: false,
32916
33397
  supportsTrackedMode: false,
32917
- possibleFailureCodes: NONE_FAILURES2,
33398
+ possibleFailureCodes: options.possibleFailureCodes ?? NONE_FAILURES2,
32918
33399
  throws: {
32919
33400
  preApply: options.throws ?? NONE_THROWS2,
32920
33401
  postApplyForbidden: true
@@ -34168,6 +34649,50 @@ function executeListsConvertToText2(adapter, input, options) {
34168
34649
  validateListTarget2(input, "lists.convertToText");
34169
34650
  return adapter.convertToText(input, normalizeMutationOptions2(options));
34170
34651
  }
34652
+ function executeListsApplyTemplate2(adapter, input, options) {
34653
+ validateListTarget2(input, "lists.applyTemplate");
34654
+ return adapter.applyTemplate(input, normalizeMutationOptions2(options));
34655
+ }
34656
+ function executeListsApplyPreset2(adapter, input, options) {
34657
+ validateListTarget2(input, "lists.applyPreset");
34658
+ return adapter.applyPreset(input, normalizeMutationOptions2(options));
34659
+ }
34660
+ function executeListsCaptureTemplate2(adapter, input) {
34661
+ validateListTarget2(input, "lists.captureTemplate");
34662
+ return adapter.captureTemplate(input);
34663
+ }
34664
+ function executeListsSetLevelNumbering2(adapter, input, options) {
34665
+ validateListTarget2(input, "lists.setLevelNumbering");
34666
+ return adapter.setLevelNumbering(input, normalizeMutationOptions2(options));
34667
+ }
34668
+ function executeListsSetLevelBullet2(adapter, input, options) {
34669
+ validateListTarget2(input, "lists.setLevelBullet");
34670
+ return adapter.setLevelBullet(input, normalizeMutationOptions2(options));
34671
+ }
34672
+ function executeListsSetLevelPictureBullet2(adapter, input, options) {
34673
+ validateListTarget2(input, "lists.setLevelPictureBullet");
34674
+ return adapter.setLevelPictureBullet(input, normalizeMutationOptions2(options));
34675
+ }
34676
+ function executeListsSetLevelAlignment2(adapter, input, options) {
34677
+ validateListTarget2(input, "lists.setLevelAlignment");
34678
+ return adapter.setLevelAlignment(input, normalizeMutationOptions2(options));
34679
+ }
34680
+ function executeListsSetLevelIndents2(adapter, input, options) {
34681
+ validateListTarget2(input, "lists.setLevelIndents");
34682
+ return adapter.setLevelIndents(input, normalizeMutationOptions2(options));
34683
+ }
34684
+ function executeListsSetLevelTrailingCharacter2(adapter, input, options) {
34685
+ validateListTarget2(input, "lists.setLevelTrailingCharacter");
34686
+ return adapter.setLevelTrailingCharacter(input, normalizeMutationOptions2(options));
34687
+ }
34688
+ function executeListsSetLevelMarkerFont2(adapter, input, options) {
34689
+ validateListTarget2(input, "lists.setLevelMarkerFont");
34690
+ return adapter.setLevelMarkerFont(input, normalizeMutationOptions2(options));
34691
+ }
34692
+ function executeListsClearLevelOverrides2(adapter, input, options) {
34693
+ validateListTarget2(input, "lists.clearLevelOverrides");
34694
+ return adapter.clearLevelOverrides(input, normalizeMutationOptions2(options));
34695
+ }
34171
34696
  function validateReplaceInput2(input) {
34172
34697
  if (!isRecord3(input))
34173
34698
  throw new DocumentApiValidationError2("INVALID_TARGET", "Replace input must be a non-null object.");
@@ -34451,6 +34976,17 @@ function buildDispatchTable2(api) {
34451
34976
  "lists.canContinuePrevious": (input) => api.lists.canContinuePrevious(input),
34452
34977
  "lists.setLevelRestart": (input, options) => api.lists.setLevelRestart(input, options),
34453
34978
  "lists.convertToText": (input, options) => api.lists.convertToText(input, options),
34979
+ "lists.applyTemplate": (input, options) => api.lists.applyTemplate(input, options),
34980
+ "lists.applyPreset": (input, options) => api.lists.applyPreset(input, options),
34981
+ "lists.captureTemplate": (input) => api.lists.captureTemplate(input),
34982
+ "lists.setLevelNumbering": (input, options) => api.lists.setLevelNumbering(input, options),
34983
+ "lists.setLevelBullet": (input, options) => api.lists.setLevelBullet(input, options),
34984
+ "lists.setLevelPictureBullet": (input, options) => api.lists.setLevelPictureBullet(input, options),
34985
+ "lists.setLevelAlignment": (input, options) => api.lists.setLevelAlignment(input, options),
34986
+ "lists.setLevelIndents": (input, options) => api.lists.setLevelIndents(input, options),
34987
+ "lists.setLevelTrailingCharacter": (input, options) => api.lists.setLevelTrailingCharacter(input, options),
34988
+ "lists.setLevelMarkerFont": (input, options) => api.lists.setLevelMarkerFont(input, options),
34989
+ "lists.clearLevelOverrides": (input, options) => api.lists.clearLevelOverrides(input, options),
34454
34990
  "sections.list": (input) => api.sections.list(input),
34455
34991
  "sections.get": (input) => api.sections.get(input),
34456
34992
  "sections.setBreakType": (input, options) => api.sections.setBreakType(input, options),
@@ -35339,6 +35875,48 @@ function createDocumentApi2(adapters) {
35339
35875
  },
35340
35876
  convertToText(input, options) {
35341
35877
  return executeListsConvertToText2(adapters.lists, input, options);
35878
+ },
35879
+ applyTemplate(input, options) {
35880
+ return executeListsApplyTemplate2(adapters.lists, input, options);
35881
+ },
35882
+ applyPreset(input, options) {
35883
+ return executeListsApplyPreset2(adapters.lists, input, options);
35884
+ },
35885
+ captureTemplate(input) {
35886
+ return executeListsCaptureTemplate2(adapters.lists, input);
35887
+ },
35888
+ setLevelNumbering(input, options) {
35889
+ return executeListsSetLevelNumbering2(adapters.lists, input, options);
35890
+ },
35891
+ setLevelBullet(input, options) {
35892
+ return executeListsSetLevelBullet2(adapters.lists, input, options);
35893
+ },
35894
+ setLevelPictureBullet(input, options) {
35895
+ return executeListsSetLevelPictureBullet2(adapters.lists, input, options);
35896
+ },
35897
+ setLevelAlignment(input, options) {
35898
+ return executeListsSetLevelAlignment2(adapters.lists, input, options);
35899
+ },
35900
+ setLevelIndents(input, options) {
35901
+ return executeListsSetLevelIndents2(adapters.lists, input, options);
35902
+ },
35903
+ setLevelTrailingCharacter(input, options) {
35904
+ return executeListsSetLevelTrailingCharacter2(adapters.lists, input, options);
35905
+ },
35906
+ setLevelMarkerFont(input, options) {
35907
+ return executeListsSetLevelMarkerFont2(adapters.lists, input, options);
35908
+ },
35909
+ clearLevelOverrides(input, options) {
35910
+ return executeListsClearLevelOverrides2(adapters.lists, input, options);
35911
+ },
35912
+ setType(input, options) {
35913
+ return executeListsApplyPreset2(adapters.lists, {
35914
+ target: input.target,
35915
+ preset: {
35916
+ ordered: "decimal",
35917
+ bullet: "disc"
35918
+ }[input.kind]
35919
+ }, options);
35342
35920
  }
35343
35921
  },
35344
35922
  sections: {
@@ -63134,7 +63712,7 @@ var isRegExp = (value) => {
63134
63712
  state.kern = kernNode.attributes["w:val"];
63135
63713
  }
63136
63714
  }, SuperConverter;
63137
- var init_SuperConverter_Bo_KNppf_es = __esm(() => {
63715
+ var init_SuperConverter_CejXSSGL_es = __esm(() => {
63138
63716
  init_rolldown_runtime_B2q5OVn9_es();
63139
63717
  init_jszip_ChlR43oI_es();
63140
63718
  init_xml_js_DLE8mr0n_es();
@@ -67079,6 +67657,245 @@ var init_SuperConverter_Bo_KNppf_es = __esm(() => {
67079
67657
  referenceDocPath: "lists/convert-to-text.mdx",
67080
67658
  referenceGroup: "lists"
67081
67659
  },
67660
+ "lists.applyTemplate": {
67661
+ memberPath: "lists.applyTemplate",
67662
+ description: "Apply a captured ListTemplate to the target list, optionally filtered to specific levels.",
67663
+ expectedResult: "Returns a ListsMutateItemResult receipt; reports NO_OP if all levels already match.",
67664
+ requiresDocumentContext: true,
67665
+ metadata: mutationOperation2({
67666
+ idempotency: "conditional",
67667
+ supportsDryRun: true,
67668
+ supportsTrackedMode: false,
67669
+ possibleFailureCodes: [
67670
+ "NO_OP",
67671
+ "INVALID_TARGET",
67672
+ "LEVEL_OUT_OF_RANGE",
67673
+ "INVALID_INPUT"
67674
+ ],
67675
+ throws: [
67676
+ ...T_NOT_FOUND_CAPABLE2,
67677
+ "INVALID_TARGET",
67678
+ "INVALID_INPUT"
67679
+ ]
67680
+ }),
67681
+ referenceDocPath: "lists/apply-template.mdx",
67682
+ referenceGroup: "lists"
67683
+ },
67684
+ "lists.applyPreset": {
67685
+ memberPath: "lists.applyPreset",
67686
+ description: "Apply a built-in list formatting preset to the target list.",
67687
+ expectedResult: "Returns a ListsMutateItemResult receipt; reports NO_OP if all levels already match the preset.",
67688
+ requiresDocumentContext: true,
67689
+ metadata: mutationOperation2({
67690
+ idempotency: "conditional",
67691
+ supportsDryRun: true,
67692
+ supportsTrackedMode: false,
67693
+ possibleFailureCodes: [
67694
+ "NO_OP",
67695
+ "INVALID_TARGET",
67696
+ "LEVEL_OUT_OF_RANGE",
67697
+ "INVALID_INPUT"
67698
+ ],
67699
+ throws: [
67700
+ ...T_NOT_FOUND_CAPABLE2,
67701
+ "INVALID_TARGET",
67702
+ "INVALID_INPUT"
67703
+ ]
67704
+ }),
67705
+ referenceDocPath: "lists/apply-preset.mdx",
67706
+ referenceGroup: "lists"
67707
+ },
67708
+ "lists.captureTemplate": {
67709
+ memberPath: "lists.captureTemplate",
67710
+ description: "Capture the formatting of a list as a reusable ListTemplate.",
67711
+ expectedResult: "Returns a ListsCaptureTemplateResult containing the captured template.",
67712
+ requiresDocumentContext: true,
67713
+ metadata: readOperation2({
67714
+ idempotency: "idempotent",
67715
+ throws: [
67716
+ "TARGET_NOT_FOUND",
67717
+ "INVALID_TARGET",
67718
+ "INVALID_INPUT"
67719
+ ],
67720
+ possibleFailureCodes: [
67721
+ "INVALID_TARGET",
67722
+ "INVALID_INPUT",
67723
+ "LEVEL_OUT_OF_RANGE"
67724
+ ]
67725
+ }),
67726
+ referenceDocPath: "lists/capture-template.mdx",
67727
+ referenceGroup: "lists"
67728
+ },
67729
+ "lists.setLevelNumbering": {
67730
+ memberPath: "lists.setLevelNumbering",
67731
+ description: "Set the numbering format, pattern, and optional start value for a specific list level.",
67732
+ expectedResult: "Returns a ListsMutateItemResult receipt; reports NO_OP if the level already matches.",
67733
+ requiresDocumentContext: true,
67734
+ metadata: mutationOperation2({
67735
+ idempotency: "conditional",
67736
+ supportsDryRun: true,
67737
+ supportsTrackedMode: false,
67738
+ possibleFailureCodes: [
67739
+ "NO_OP",
67740
+ "INVALID_TARGET",
67741
+ "LEVEL_OUT_OF_RANGE",
67742
+ "LEVEL_NOT_FOUND"
67743
+ ],
67744
+ throws: [...T_NOT_FOUND_CAPABLE2, "INVALID_TARGET"]
67745
+ }),
67746
+ referenceDocPath: "lists/set-level-numbering.mdx",
67747
+ referenceGroup: "lists"
67748
+ },
67749
+ "lists.setLevelBullet": {
67750
+ memberPath: "lists.setLevelBullet",
67751
+ description: "Set the bullet marker text for a specific list level.",
67752
+ expectedResult: "Returns a ListsMutateItemResult receipt; reports NO_OP if the marker already matches.",
67753
+ requiresDocumentContext: true,
67754
+ metadata: mutationOperation2({
67755
+ idempotency: "conditional",
67756
+ supportsDryRun: true,
67757
+ supportsTrackedMode: false,
67758
+ possibleFailureCodes: [
67759
+ "NO_OP",
67760
+ "INVALID_TARGET",
67761
+ "LEVEL_OUT_OF_RANGE",
67762
+ "LEVEL_NOT_FOUND"
67763
+ ],
67764
+ throws: [...T_NOT_FOUND_CAPABLE2, "INVALID_TARGET"]
67765
+ }),
67766
+ referenceDocPath: "lists/set-level-bullet.mdx",
67767
+ referenceGroup: "lists"
67768
+ },
67769
+ "lists.setLevelPictureBullet": {
67770
+ memberPath: "lists.setLevelPictureBullet",
67771
+ description: "Set a picture bullet for a specific list level by its OOXML lvlPicBulletId.",
67772
+ expectedResult: "Returns a ListsMutateItemResult receipt; reports NO_OP if the picture bullet already matches.",
67773
+ requiresDocumentContext: true,
67774
+ metadata: mutationOperation2({
67775
+ idempotency: "conditional",
67776
+ supportsDryRun: true,
67777
+ supportsTrackedMode: false,
67778
+ possibleFailureCodes: [
67779
+ "NO_OP",
67780
+ "INVALID_TARGET",
67781
+ "LEVEL_OUT_OF_RANGE",
67782
+ "LEVEL_NOT_FOUND",
67783
+ "INVALID_INPUT",
67784
+ "CAPABILITY_UNAVAILABLE"
67785
+ ],
67786
+ throws: [
67787
+ ...T_NOT_FOUND_CAPABLE2,
67788
+ "INVALID_TARGET",
67789
+ "CAPABILITY_UNAVAILABLE"
67790
+ ]
67791
+ }),
67792
+ referenceDocPath: "lists/set-level-picture-bullet.mdx",
67793
+ referenceGroup: "lists"
67794
+ },
67795
+ "lists.setLevelAlignment": {
67796
+ memberPath: "lists.setLevelAlignment",
67797
+ description: "Set the marker alignment (left, center, right) for a specific list level.",
67798
+ expectedResult: "Returns a ListsMutateItemResult receipt; reports NO_OP if the alignment already matches.",
67799
+ requiresDocumentContext: true,
67800
+ metadata: mutationOperation2({
67801
+ idempotency: "conditional",
67802
+ supportsDryRun: true,
67803
+ supportsTrackedMode: false,
67804
+ possibleFailureCodes: [
67805
+ "NO_OP",
67806
+ "INVALID_TARGET",
67807
+ "LEVEL_OUT_OF_RANGE",
67808
+ "LEVEL_NOT_FOUND"
67809
+ ],
67810
+ throws: [...T_NOT_FOUND_CAPABLE2, "INVALID_TARGET"]
67811
+ }),
67812
+ referenceDocPath: "lists/set-level-alignment.mdx",
67813
+ referenceGroup: "lists"
67814
+ },
67815
+ "lists.setLevelIndents": {
67816
+ memberPath: "lists.setLevelIndents",
67817
+ description: "Set the paragraph indentation values (left, hanging, firstLine) for a specific list level.",
67818
+ expectedResult: "Returns a ListsMutateItemResult receipt; reports NO_OP if all indent values already match.",
67819
+ requiresDocumentContext: true,
67820
+ metadata: mutationOperation2({
67821
+ idempotency: "conditional",
67822
+ supportsDryRun: true,
67823
+ supportsTrackedMode: false,
67824
+ possibleFailureCodes: [
67825
+ "NO_OP",
67826
+ "INVALID_TARGET",
67827
+ "LEVEL_OUT_OF_RANGE",
67828
+ "LEVEL_NOT_FOUND",
67829
+ "INVALID_INPUT"
67830
+ ],
67831
+ throws: [
67832
+ ...T_NOT_FOUND_CAPABLE2,
67833
+ "INVALID_TARGET",
67834
+ "INVALID_INPUT"
67835
+ ]
67836
+ }),
67837
+ referenceDocPath: "lists/set-level-indents.mdx",
67838
+ referenceGroup: "lists"
67839
+ },
67840
+ "lists.setLevelTrailingCharacter": {
67841
+ memberPath: "lists.setLevelTrailingCharacter",
67842
+ description: "Set the trailing character (tab, space, nothing) after the marker for a specific list level.",
67843
+ expectedResult: "Returns a ListsMutateItemResult receipt; reports NO_OP if the trailing character already matches.",
67844
+ requiresDocumentContext: true,
67845
+ metadata: mutationOperation2({
67846
+ idempotency: "conditional",
67847
+ supportsDryRun: true,
67848
+ supportsTrackedMode: false,
67849
+ possibleFailureCodes: [
67850
+ "NO_OP",
67851
+ "INVALID_TARGET",
67852
+ "LEVEL_OUT_OF_RANGE",
67853
+ "LEVEL_NOT_FOUND"
67854
+ ],
67855
+ throws: [...T_NOT_FOUND_CAPABLE2, "INVALID_TARGET"]
67856
+ }),
67857
+ referenceDocPath: "lists/set-level-trailing-character.mdx",
67858
+ referenceGroup: "lists"
67859
+ },
67860
+ "lists.setLevelMarkerFont": {
67861
+ memberPath: "lists.setLevelMarkerFont",
67862
+ description: "Set the font family used for the marker character at a specific list level.",
67863
+ expectedResult: "Returns a ListsMutateItemResult receipt; reports NO_OP if the font already matches.",
67864
+ requiresDocumentContext: true,
67865
+ metadata: mutationOperation2({
67866
+ idempotency: "conditional",
67867
+ supportsDryRun: true,
67868
+ supportsTrackedMode: false,
67869
+ possibleFailureCodes: [
67870
+ "NO_OP",
67871
+ "INVALID_TARGET",
67872
+ "LEVEL_OUT_OF_RANGE",
67873
+ "LEVEL_NOT_FOUND"
67874
+ ],
67875
+ throws: [...T_NOT_FOUND_CAPABLE2, "INVALID_TARGET"]
67876
+ }),
67877
+ referenceDocPath: "lists/set-level-marker-font.mdx",
67878
+ referenceGroup: "lists"
67879
+ },
67880
+ "lists.clearLevelOverrides": {
67881
+ memberPath: "lists.clearLevelOverrides",
67882
+ description: "Remove instance-level overrides for a specific list level, restoring abstract definition values.",
67883
+ expectedResult: "Returns a ListsMutateItemResult receipt; reports NO_OP if no override exists.",
67884
+ requiresDocumentContext: true,
67885
+ metadata: mutationOperation2({
67886
+ idempotency: "conditional",
67887
+ supportsDryRun: true,
67888
+ supportsTrackedMode: false,
67889
+ possibleFailureCodes: [
67890
+ "NO_OP",
67891
+ "INVALID_TARGET",
67892
+ "LEVEL_OUT_OF_RANGE"
67893
+ ],
67894
+ throws: [...T_NOT_FOUND_CAPABLE2, "INVALID_TARGET"]
67895
+ }),
67896
+ referenceDocPath: "lists/clear-level-overrides.mdx",
67897
+ referenceGroup: "lists"
67898
+ },
67082
67899
  "comments.create": {
67083
67900
  memberPath: "comments.create",
67084
67901
  description: "Create a new comment thread (or reply when parentCommentId is given).",
@@ -70604,6 +71421,199 @@ var init_SuperConverter_Bo_KNppf_es = __esm(() => {
70604
71421
  success: { const: true },
70605
71422
  paragraph: ref2("ParagraphAddress")
70606
71423
  }, ["success", "paragraph"]), listsFailureSchemaFor2("lists.convertToText"), objectSchema2({
71424
+ target: listItemAddressSchema2,
71425
+ template: objectSchema2({
71426
+ version: { const: 1 },
71427
+ levels: arraySchema2(objectSchema2({
71428
+ level: {
71429
+ type: "integer",
71430
+ minimum: 0,
71431
+ maximum: 8
71432
+ },
71433
+ numFmt: { type: "string" },
71434
+ lvlText: { type: "string" },
71435
+ start: { type: "integer" },
71436
+ alignment: { enum: [
71437
+ "left",
71438
+ "center",
71439
+ "right"
71440
+ ] },
71441
+ indents: objectSchema2({
71442
+ left: { type: "integer" },
71443
+ hanging: { type: "integer" },
71444
+ firstLine: { type: "integer" }
71445
+ }),
71446
+ trailingCharacter: { enum: [
71447
+ "tab",
71448
+ "space",
71449
+ "nothing"
71450
+ ] },
71451
+ markerFont: { type: "string" },
71452
+ pictureBulletId: { type: "integer" }
71453
+ }, ["level"]))
71454
+ }, ["version", "levels"]),
71455
+ levels: arraySchema2({
71456
+ type: "integer",
71457
+ minimum: 0,
71458
+ maximum: 8
71459
+ })
71460
+ }, ["target", "template"]), listsMutateItemResultSchemaFor2("lists.applyTemplate"), listsFailureSchemaFor2("lists.applyTemplate"), objectSchema2({
71461
+ target: listItemAddressSchema2,
71462
+ preset: { enum: [
71463
+ "decimal",
71464
+ "decimalParenthesis",
71465
+ "lowerLetter",
71466
+ "upperLetter",
71467
+ "lowerRoman",
71468
+ "upperRoman",
71469
+ "disc",
71470
+ "circle",
71471
+ "square",
71472
+ "dash"
71473
+ ] },
71474
+ levels: arraySchema2({
71475
+ type: "integer",
71476
+ minimum: 0,
71477
+ maximum: 8
71478
+ })
71479
+ }, ["target", "preset"]), listsMutateItemResultSchemaFor2("lists.applyPreset"), listsFailureSchemaFor2("lists.applyPreset"), (() => {
71480
+ const successSchema = objectSchema2({
71481
+ success: { const: true },
71482
+ template: objectSchema2({
71483
+ version: { const: 1 },
71484
+ levels: arraySchema2(objectSchema2({
71485
+ level: {
71486
+ type: "integer",
71487
+ minimum: 0,
71488
+ maximum: 8
71489
+ },
71490
+ numFmt: { type: "string" },
71491
+ lvlText: { type: "string" },
71492
+ start: { type: "integer" },
71493
+ alignment: { enum: [
71494
+ "left",
71495
+ "center",
71496
+ "right"
71497
+ ] },
71498
+ indents: objectSchema2({
71499
+ left: { type: "integer" },
71500
+ hanging: { type: "integer" },
71501
+ firstLine: { type: "integer" }
71502
+ }),
71503
+ trailingCharacter: { enum: [
71504
+ "tab",
71505
+ "space",
71506
+ "nothing"
71507
+ ] },
71508
+ markerFont: { type: "string" },
71509
+ pictureBulletId: { type: "integer" }
71510
+ }, ["level"]))
71511
+ }, ["version", "levels"])
71512
+ }, ["success", "template"]);
71513
+ return {
71514
+ input: objectSchema2({
71515
+ target: listItemAddressSchema2,
71516
+ levels: arraySchema2({
71517
+ type: "integer",
71518
+ minimum: 0,
71519
+ maximum: 8
71520
+ })
71521
+ }, ["target"]),
71522
+ output: { oneOf: [successSchema, listsFailureSchemaFor2("lists.captureTemplate")] },
71523
+ success: successSchema,
71524
+ failure: listsFailureSchemaFor2("lists.captureTemplate")
71525
+ };
71526
+ })(), objectSchema2({
71527
+ target: listItemAddressSchema2,
71528
+ level: {
71529
+ type: "integer",
71530
+ minimum: 0,
71531
+ maximum: 8
71532
+ },
71533
+ numFmt: { type: "string" },
71534
+ lvlText: { type: "string" },
71535
+ start: { type: "integer" }
71536
+ }, [
71537
+ "target",
71538
+ "level",
71539
+ "numFmt",
71540
+ "lvlText"
71541
+ ]), listsMutateItemResultSchemaFor2("lists.setLevelNumbering"), listsFailureSchemaFor2("lists.setLevelNumbering"), objectSchema2({
71542
+ target: listItemAddressSchema2,
71543
+ level: {
71544
+ type: "integer",
71545
+ minimum: 0,
71546
+ maximum: 8
71547
+ },
71548
+ markerText: { type: "string" }
71549
+ }, [
71550
+ "target",
71551
+ "level",
71552
+ "markerText"
71553
+ ]), listsMutateItemResultSchemaFor2("lists.setLevelBullet"), listsFailureSchemaFor2("lists.setLevelBullet"), objectSchema2({
71554
+ target: listItemAddressSchema2,
71555
+ level: {
71556
+ type: "integer",
71557
+ minimum: 0,
71558
+ maximum: 8
71559
+ },
71560
+ pictureBulletId: { type: "integer" }
71561
+ }, [
71562
+ "target",
71563
+ "level",
71564
+ "pictureBulletId"
71565
+ ]), listsMutateItemResultSchemaFor2("lists.setLevelPictureBullet"), listsFailureSchemaFor2("lists.setLevelPictureBullet"), objectSchema2({
71566
+ target: listItemAddressSchema2,
71567
+ level: {
71568
+ type: "integer",
71569
+ minimum: 0,
71570
+ maximum: 8
71571
+ },
71572
+ alignment: { enum: [
71573
+ "left",
71574
+ "center",
71575
+ "right"
71576
+ ] }
71577
+ }, [
71578
+ "target",
71579
+ "level",
71580
+ "alignment"
71581
+ ]), listsMutateItemResultSchemaFor2("lists.setLevelAlignment"), listsFailureSchemaFor2("lists.setLevelAlignment"), listsMutateItemResultSchemaFor2("lists.setLevelIndents"), listsFailureSchemaFor2("lists.setLevelIndents"), objectSchema2({
71582
+ target: listItemAddressSchema2,
71583
+ level: {
71584
+ type: "integer",
71585
+ minimum: 0,
71586
+ maximum: 8
71587
+ },
71588
+ trailingCharacter: { enum: [
71589
+ "tab",
71590
+ "space",
71591
+ "nothing"
71592
+ ] }
71593
+ }, [
71594
+ "target",
71595
+ "level",
71596
+ "trailingCharacter"
71597
+ ]), listsMutateItemResultSchemaFor2("lists.setLevelTrailingCharacter"), listsFailureSchemaFor2("lists.setLevelTrailingCharacter"), objectSchema2({
71598
+ target: listItemAddressSchema2,
71599
+ level: {
71600
+ type: "integer",
71601
+ minimum: 0,
71602
+ maximum: 8
71603
+ },
71604
+ fontFamily: { type: "string" }
71605
+ }, [
71606
+ "target",
71607
+ "level",
71608
+ "fontFamily"
71609
+ ]), listsMutateItemResultSchemaFor2("lists.setLevelMarkerFont"), listsFailureSchemaFor2("lists.setLevelMarkerFont"), objectSchema2({
71610
+ target: listItemAddressSchema2,
71611
+ level: {
71612
+ type: "integer",
71613
+ minimum: 0,
71614
+ maximum: 8
71615
+ }
71616
+ }, ["target", "level"]), listsMutateItemResultSchemaFor2("lists.clearLevelOverrides"), listsFailureSchemaFor2("lists.clearLevelOverrides"), objectSchema2({
70607
71617
  text: { type: "string" },
70608
71618
  target: textAddressSchema2,
70609
71619
  parentCommentId: { type: "string" }
@@ -118788,9 +119798,9 @@ var init_remark_gfm_CjV8kaUy_es = __esm(() => {
118788
119798
  init_remark_gfm_z_sDF4ss_es();
118789
119799
  });
118790
119800
 
118791
- // ../../packages/superdoc/dist/chunks/src-C1h0gpEb.es.js
118792
- var exports_src_C1h0gpEb_es = {};
118793
- __export(exports_src_C1h0gpEb_es, {
119801
+ // ../../packages/superdoc/dist/chunks/src-SQD068uc.es.js
119802
+ var exports_src_SQD068uc_es = {};
119803
+ __export(exports_src_SQD068uc_es, {
118794
119804
  zt: () => defineMark,
118795
119805
  z: () => cM,
118796
119806
  yt: () => removeAwarenessStates,
@@ -132757,7 +133767,7 @@ function resolveListItem(editor, address2) {
132757
133767
  });
132758
133768
  return projectListItemCandidate(editor, matches2[0]);
132759
133769
  }
132760
- function toListsFailure(code$1, message, details) {
133770
+ function toListsFailure$1(code$1, message, details) {
132761
133771
  return {
132762
133772
  success: false,
132763
133773
  failure: {
@@ -132767,7 +133777,7 @@ function toListsFailure(code$1, message, details) {
132767
133777
  }
132768
133778
  };
132769
133779
  }
132770
- function dispatchEditorTransaction$1(editor, tr) {
133780
+ function dispatchEditorTransaction$2(editor, tr) {
132771
133781
  if (typeof editor.dispatch === "function") {
132772
133782
  editor.dispatch(tr);
132773
133783
  return;
@@ -132804,23 +133814,23 @@ function resolveInsertedListItem(editor, sdBlockId) {
132804
133814
  function withListTarget(editor, input2) {
132805
133815
  return resolveListItem(editor, input2.target);
132806
133816
  }
132807
- function hasLevelOverride(editor, numId, level) {
133817
+ function hasLevelOverride$1(editor, numId, level) {
132808
133818
  const definition3 = editor.converter?.numbering?.definitions?.[numId];
132809
133819
  const ilvl = String(level);
132810
133820
  return definition3?.elements?.some((element3) => element3.name === "w:lvlOverride" && element3.attributes?.["w:ilvl"] === ilvl) ?? false;
132811
133821
  }
132812
133822
  function executeSetLevel(editor, target, newLevel, options) {
132813
133823
  if (target.numId == null)
132814
- return toListsFailure("INVALID_TARGET", "Target must have numbering metadata.", { target: target.address });
133824
+ return toListsFailure$1("INVALID_TARGET", "Target must have numbering metadata.", { target: target.address });
132815
133825
  if (newLevel < 0 || newLevel > 8)
132816
- return toListsFailure("LEVEL_OUT_OF_RANGE", "Level must be between 0 and 8.", { level: newLevel });
133826
+ return toListsFailure$1("LEVEL_OUT_OF_RANGE", "Level must be between 0 and 8.", { level: newLevel });
132817
133827
  if (target.level === newLevel)
132818
- return toListsFailure("NO_OP", "Item is already at the requested level.", {
133828
+ return toListsFailure$1("NO_OP", "Item is already at the requested level.", {
132819
133829
  target: target.address,
132820
133830
  level: newLevel
132821
133831
  });
132822
133832
  if (!ListHelpers.hasListDefinition(editor, target.numId, newLevel))
132823
- return toListsFailure("LEVEL_OUT_OF_RANGE", "Target level is not defined in the active numbering definition.", {
133833
+ return toListsFailure$1("LEVEL_OUT_OF_RANGE", "Target level is not defined in the active numbering definition.", {
132824
133834
  target: target.address,
132825
133835
  level: newLevel
132826
133836
  });
@@ -132835,11 +133845,11 @@ function executeSetLevel(editor, target, newLevel, options) {
132835
133845
  numId: target.numId,
132836
133846
  ilvl: newLevel
132837
133847
  }, target.candidate.node, target.candidate.pos, editor, tr);
132838
- dispatchEditorTransaction$1(editor, tr);
133848
+ dispatchEditorTransaction$2(editor, tr);
132839
133849
  clearIndexCache(editor);
132840
133850
  return true;
132841
133851
  }, { expectedRevision: options?.expectedRevision }).steps[0]?.effect !== "changed")
132842
- return toListsFailure("INVALID_TARGET", "Level change could not be applied.", {
133852
+ return toListsFailure$1("INVALID_TARGET", "Level change could not be applied.", {
132843
133853
  target: target.address,
132844
133854
  level: newLevel
132845
133855
  });
@@ -132905,7 +133915,7 @@ function listsInsertWrapper(editor, input2, options) {
132905
133915
  }
132906
133916
  return didApply;
132907
133917
  }, { expectedRevision: options?.expectedRevision }).steps[0]?.effect !== "changed")
132908
- return toListsFailure("INVALID_TARGET", "List item insertion could not be applied at the requested target.", {
133918
+ return toListsFailure$1("INVALID_TARGET", "List item insertion could not be applied at the requested target.", {
132909
133919
  target: input2.target,
132910
133920
  position: input2.position
132911
133921
  });
@@ -132951,24 +133961,24 @@ function listsOutdentWrapper(editor, input2, options) {
132951
133961
  const target = withListTarget(editor, input2);
132952
133962
  const currentLevel = target.level ?? 0;
132953
133963
  if (currentLevel <= 0)
132954
- return toListsFailure("NO_OP", "List item is already at level 0.", { target: input2.target });
133964
+ return toListsFailure$1("NO_OP", "List item is already at level 0.", { target: input2.target });
132955
133965
  return executeSetLevel(editor, target, currentLevel - 1, options);
132956
133966
  }
132957
133967
  function listsCreateWrapper(editor, input2, options) {
132958
133968
  rejectTrackedMode("lists.create", options);
132959
133969
  const raw = input2;
132960
133970
  if (input2.mode === "empty" && raw.at == null)
132961
- return toListsFailure("INVALID_TARGET", 'Mode "empty" requires an "at" field.', { mode: "empty" });
133971
+ return toListsFailure$1("INVALID_TARGET", 'Mode "empty" requires an "at" field.', { mode: "empty" });
132962
133972
  if (input2.mode === "fromParagraphs" && raw.target == null)
132963
- return toListsFailure("INVALID_TARGET", 'Mode "fromParagraphs" requires a "target" field.', { mode: "fromParagraphs" });
133973
+ return toListsFailure$1("INVALID_TARGET", 'Mode "fromParagraphs" requires a "target" field.', { mode: "fromParagraphs" });
132964
133974
  const level = input2.level ?? 0;
132965
133975
  if (level < 0 || level > 8)
132966
- return toListsFailure("LEVEL_OUT_OF_RANGE", "Level must be between 0 and 8.", { level });
133976
+ return toListsFailure$1("LEVEL_OUT_OF_RANGE", "Level must be between 0 and 8.", { level });
132967
133977
  const listType = input2.kind === "ordered" ? "orderedList" : "bulletList";
132968
133978
  if (input2.mode === "empty") {
132969
133979
  const block = resolveBlock(editor, input2.at.nodeId);
132970
133980
  if (block.nodeType === "listItem")
132971
- return toListsFailure("INVALID_TARGET", "Target paragraph is already a list item.", { target: input2.at });
133981
+ return toListsFailure$1("INVALID_TARGET", "Target paragraph is already a list item.", { target: input2.at });
132972
133982
  if (options?.dryRun)
132973
133983
  return {
132974
133984
  success: true,
@@ -132992,11 +134002,11 @@ function listsCreateWrapper(editor, input2, options) {
132992
134002
  numId: numId$1,
132993
134003
  ilvl: level
132994
134004
  }, block.node, block.pos, editor, tr);
132995
- dispatchEditorTransaction$1(editor, tr);
134005
+ dispatchEditorTransaction$2(editor, tr);
132996
134006
  clearIndexCache(editor);
132997
134007
  return true;
132998
134008
  }, { expectedRevision: options?.expectedRevision }).steps[0]?.effect !== "changed")
132999
- return toListsFailure("INVALID_TARGET", "List creation could not be applied.", { mode: input2.mode });
134009
+ return toListsFailure$1("INVALID_TARGET", "List creation could not be applied.", { mode: input2.mode });
133000
134010
  return {
133001
134011
  success: true,
133002
134012
  listId: `${numId$1}:${block.nodeId}`,
@@ -133009,10 +134019,10 @@ function listsCreateWrapper(editor, input2, options) {
133009
134019
  }
133010
134020
  const targets = isBlockRange(input2.target) ? resolveBlocksInRange(editor, input2.target.from.nodeId, input2.target.to.nodeId) : [resolveBlock(editor, input2.target.nodeId)];
133011
134021
  if (targets.length === 0)
133012
- return toListsFailure("INVALID_TARGET", "No paragraphs found in the specified range.", { target: input2.target });
134022
+ return toListsFailure$1("INVALID_TARGET", "No paragraphs found in the specified range.", { target: input2.target });
133013
134023
  const alreadyListItem = targets.find((t) => t.nodeType === "listItem");
133014
134024
  if (alreadyListItem)
133015
- return toListsFailure("INVALID_TARGET", "One or more target paragraphs are already list items.", { nodeId: alreadyListItem.nodeId });
134025
+ return toListsFailure$1("INVALID_TARGET", "One or more target paragraphs are already list items.", { nodeId: alreadyListItem.nodeId });
133016
134026
  if (options?.dryRun)
133017
134027
  return {
133018
134028
  success: true,
@@ -133037,11 +134047,11 @@ function listsCreateWrapper(editor, input2, options) {
133037
134047
  numId,
133038
134048
  ilvl: level
133039
134049
  }, block.node, block.pos, editor, tr);
133040
- dispatchEditorTransaction$1(editor, tr);
134050
+ dispatchEditorTransaction$2(editor, tr);
133041
134051
  clearIndexCache(editor);
133042
134052
  return true;
133043
134053
  }, { expectedRevision: options?.expectedRevision }).steps[0]?.effect !== "changed")
133044
- return toListsFailure("INVALID_TARGET", "List creation could not be applied.", { mode: input2.mode });
134054
+ return toListsFailure$1("INVALID_TARGET", "List creation could not be applied.", { mode: input2.mode });
133045
134055
  return {
133046
134056
  success: true,
133047
134057
  listId: `${numId}:${targets[0].nodeId}`,
@@ -133056,15 +134066,15 @@ function listsAttachWrapper(editor, input2, options) {
133056
134066
  rejectTrackedMode("lists.attach", options);
133057
134067
  const attachTo = resolveListItem(editor, input2.attachTo);
133058
134068
  if (attachTo.numId == null)
133059
- return toListsFailure("INVALID_TARGET", "attachTo target must be a list item with numbering metadata.", { attachTo: input2.attachTo });
134069
+ return toListsFailure$1("INVALID_TARGET", "attachTo target must be a list item with numbering metadata.", { attachTo: input2.attachTo });
133060
134070
  const numId = attachTo.numId;
133061
134071
  const level = input2.level ?? attachTo.level ?? 0;
133062
134072
  const targets = isBlockRange(input2.target) ? resolveBlocksInRange(editor, input2.target.from.nodeId, input2.target.to.nodeId) : [resolveBlock(editor, input2.target.nodeId)];
133063
134073
  if (targets.length === 0)
133064
- return toListsFailure("INVALID_TARGET", "No paragraphs found in the specified target.", { target: input2.target });
134074
+ return toListsFailure$1("INVALID_TARGET", "No paragraphs found in the specified target.", { target: input2.target });
133065
134075
  const alreadyListItem = targets.find((t) => t.nodeType === "listItem");
133066
134076
  if (alreadyListItem)
133067
- return toListsFailure("INVALID_TARGET", "Target paragraphs are already list items.", { nodeId: alreadyListItem.nodeId });
134077
+ return toListsFailure$1("INVALID_TARGET", "Target paragraphs are already list items.", { nodeId: alreadyListItem.nodeId });
133068
134078
  if (options?.dryRun)
133069
134079
  return {
133070
134080
  success: true,
@@ -133081,11 +134091,11 @@ function listsAttachWrapper(editor, input2, options) {
133081
134091
  numId,
133082
134092
  ilvl: level
133083
134093
  }, block.node, block.pos, editor, tr);
133084
- dispatchEditorTransaction$1(editor, tr);
134094
+ dispatchEditorTransaction$2(editor, tr);
133085
134095
  clearIndexCache(editor);
133086
134096
  return true;
133087
134097
  }, { expectedRevision: options?.expectedRevision }).steps[0]?.effect !== "changed")
133088
- return toListsFailure("INVALID_TARGET", "List attachment could not be applied.", { target: input2.target });
134098
+ return toListsFailure$1("INVALID_TARGET", "List attachment could not be applied.", { target: input2.target });
133089
134099
  return {
133090
134100
  success: true,
133091
134101
  item: {
@@ -133110,11 +134120,11 @@ function listsDetachWrapper(editor, input2, options) {
133110
134120
  if (executeDomainCommand(editor, () => {
133111
134121
  const { tr } = editor.state;
133112
134122
  updateNumberingProperties(null, target.candidate.node, target.candidate.pos, editor, tr);
133113
- dispatchEditorTransaction$1(editor, tr);
134123
+ dispatchEditorTransaction$2(editor, tr);
133114
134124
  clearIndexCache(editor);
133115
134125
  return true;
133116
134126
  }, { expectedRevision: options?.expectedRevision }).steps[0]?.effect !== "changed")
133117
- return toListsFailure("INVALID_TARGET", "List detach could not be applied.", { target: input2.target });
134127
+ return toListsFailure$1("INVALID_TARGET", "List detach could not be applied.", { target: input2.target });
133118
134128
  return {
133119
134129
  success: true,
133120
134130
  paragraph: {
@@ -133128,10 +134138,10 @@ function listsJoinWrapper(editor, input2, options) {
133128
134138
  rejectTrackedMode("lists.join", options);
133129
134139
  const target = resolveListItem(editor, input2.target);
133130
134140
  if (target.numId == null)
133131
- return toListsFailure("INVALID_TARGET", "Target must have numbering metadata.", { target: input2.target });
134141
+ return toListsFailure$1("INVALID_TARGET", "Target must have numbering metadata.", { target: input2.target });
133132
134142
  const canJoinResult = evaluateCanJoin(editor, target, input2.direction);
133133
134143
  if (!canJoinResult.canJoin)
133134
- return toListsFailure(canJoinResult.reason, `Cannot join: ${canJoinResult.reason}`, {
134144
+ return toListsFailure$1(canJoinResult.reason, `Cannot join: ${canJoinResult.reason}`, {
133135
134145
  target: input2.target,
133136
134146
  direction: input2.direction
133137
134147
  });
@@ -133163,11 +134173,11 @@ function listsJoinWrapper(editor, input2, options) {
133163
134173
  ilvl: currentLevel
133164
134174
  }, item.candidate.node, item.candidate.pos, editor, tr);
133165
134175
  }
133166
- dispatchEditorTransaction$1(editor, tr);
134176
+ dispatchEditorTransaction$2(editor, tr);
133167
134177
  clearIndexCache(editor);
133168
134178
  return true;
133169
134179
  }, { expectedRevision: options?.expectedRevision }).steps[0]?.effect !== "changed")
133170
- return toListsFailure("INVALID_TARGET", "List join could not be applied.", {
134180
+ return toListsFailure$1("INVALID_TARGET", "List join could not be applied.", {
133171
134181
  target: input2.target,
133172
134182
  direction: input2.direction
133173
134183
  });
@@ -133180,13 +134190,13 @@ function listsSeparateWrapper(editor, input2, options) {
133180
134190
  rejectTrackedMode("lists.separate", options);
133181
134191
  const target = resolveListItem(editor, input2.target);
133182
134192
  if (target.numId == null)
133183
- return toListsFailure("INVALID_TARGET", "Target must have numbering metadata.", { target: input2.target });
134193
+ return toListsFailure$1("INVALID_TARGET", "Target must have numbering metadata.", { target: input2.target });
133184
134194
  if (isFirstInSequence(editor, target))
133185
- return toListsFailure("NO_OP", "Target is already the first item in its sequence.", { target: input2.target });
134195
+ return toListsFailure$1("NO_OP", "Target is already the first item in its sequence.", { target: input2.target });
133186
134196
  const copyOverrides = input2.copyOverrides !== false;
133187
134197
  const abstractNumId = getAbstractNumId(editor, target.numId);
133188
134198
  if (abstractNumId == null)
133189
- return toListsFailure("INVALID_TARGET", "Could not resolve abstract definition for target.", { target: input2.target });
134199
+ return toListsFailure$1("INVALID_TARGET", "Could not resolve abstract definition for target.", { target: input2.target });
133190
134200
  const itemsToReassign = getSequenceFromTarget(editor, target);
133191
134201
  if (options?.dryRun)
133192
134202
  return {
@@ -133205,11 +134215,11 @@ function listsSeparateWrapper(editor, input2, options) {
133205
134215
  ilvl: currentLevel
133206
134216
  }, item.candidate.node, item.candidate.pos, editor, tr);
133207
134217
  }
133208
- dispatchEditorTransaction$1(editor, tr);
134218
+ dispatchEditorTransaction$2(editor, tr);
133209
134219
  clearIndexCache(editor);
133210
134220
  return true;
133211
134221
  }, { expectedRevision: options?.expectedRevision }).steps[0]?.effect !== "changed")
133212
- return toListsFailure("INVALID_TARGET", "List separation could not be applied.", { target: input2.target });
134222
+ return toListsFailure$1("INVALID_TARGET", "List separation could not be applied.", { target: input2.target });
133213
134223
  return {
133214
134224
  success: true,
133215
134225
  listId: `${newNumId}:${target.address.nodeId}`,
@@ -133224,7 +134234,7 @@ function listsSetValueWrapper(editor, input2, options) {
133224
134234
  rejectTrackedMode("lists.setValue", options);
133225
134235
  const target = resolveListItem(editor, input2.target);
133226
134236
  if (target.numId == null)
133227
- return toListsFailure("INVALID_TARGET", "Target must have numbering metadata.", { target: input2.target });
134237
+ return toListsFailure$1("INVALID_TARGET", "Target must have numbering metadata.", { target: input2.target });
133228
134238
  const level = target.level ?? 0;
133229
134239
  if (options?.dryRun)
133230
134240
  return {
@@ -133232,14 +134242,14 @@ function listsSetValueWrapper(editor, input2, options) {
133232
134242
  item: target.address
133233
134243
  };
133234
134244
  if (input2.value === null) {
133235
- if (!hasLevelOverride(editor, target.numId, level))
133236
- return toListsFailure("NO_OP", "No startOverride to remove.", { target: input2.target });
134245
+ if (!hasLevelOverride$1(editor, target.numId, level))
134246
+ return toListsFailure$1("NO_OP", "No startOverride to remove.", { target: input2.target });
133237
134247
  if (executeDomainCommand(editor, () => {
133238
134248
  ListHelpers.removeLvlOverride(editor, target.numId, level);
133239
- dispatchEditorTransaction$1(editor, editor.state.tr);
134249
+ dispatchEditorTransaction$2(editor, editor.state.tr);
133240
134250
  return true;
133241
134251
  }, { expectedRevision: options?.expectedRevision }).steps[0]?.effect !== "changed")
133242
- return toListsFailure("NO_OP", "No startOverride to remove.", { target: input2.target });
134252
+ return toListsFailure$1("NO_OP", "No startOverride to remove.", { target: input2.target });
133243
134253
  return {
133244
134254
  success: true,
133245
134255
  item: target.address
@@ -133248,10 +134258,10 @@ function listsSetValueWrapper(editor, input2, options) {
133248
134258
  if (isFirstInSequence(editor, target)) {
133249
134259
  if (executeDomainCommand(editor, () => {
133250
134260
  ListHelpers.setLvlOverride(editor, target.numId, level, { startOverride: input2.value });
133251
- dispatchEditorTransaction$1(editor, editor.state.tr);
134261
+ dispatchEditorTransaction$2(editor, editor.state.tr);
133252
134262
  return true;
133253
134263
  }, { expectedRevision: options?.expectedRevision }).steps[0]?.effect !== "changed")
133254
- return toListsFailure("INVALID_TARGET", "setValue could not be applied.", { target: input2.target });
134264
+ return toListsFailure$1("INVALID_TARGET", "setValue could not be applied.", { target: input2.target });
133255
134265
  return {
133256
134266
  success: true,
133257
134267
  item: target.address
@@ -133259,7 +134269,7 @@ function listsSetValueWrapper(editor, input2, options) {
133259
134269
  }
133260
134270
  const abstractNumId = getAbstractNumId(editor, target.numId);
133261
134271
  if (abstractNumId == null)
133262
- return toListsFailure("INVALID_TARGET", "Could not resolve abstract definition for target.", { target: input2.target });
134272
+ return toListsFailure$1("INVALID_TARGET", "Could not resolve abstract definition for target.", { target: input2.target });
133263
134273
  const itemsToReassign = getSequenceFromTarget(editor, target);
133264
134274
  if (executeDomainCommand(editor, () => {
133265
134275
  const { numId: newNumId } = ListHelpers.createNumDefinition(editor, abstractNumId, { copyOverridesFrom: target.numId });
@@ -133270,11 +134280,11 @@ function listsSetValueWrapper(editor, input2, options) {
133270
134280
  numId: newNumId,
133271
134281
  ilvl: item.level ?? 0
133272
134282
  }, item.candidate.node, item.candidate.pos, editor, tr);
133273
- dispatchEditorTransaction$1(editor, tr);
134283
+ dispatchEditorTransaction$2(editor, tr);
133274
134284
  clearIndexCache(editor);
133275
134285
  return true;
133276
134286
  }, { expectedRevision: options?.expectedRevision }).steps[0]?.effect !== "changed")
133277
- return toListsFailure("INVALID_TARGET", "setValue could not be applied.", { target: input2.target });
134287
+ return toListsFailure$1("INVALID_TARGET", "setValue could not be applied.", { target: input2.target });
133278
134288
  return {
133279
134289
  success: true,
133280
134290
  item: target.address
@@ -133284,10 +134294,10 @@ function listsContinuePreviousWrapper(editor, input2, options) {
133284
134294
  rejectTrackedMode("lists.continuePrevious", options);
133285
134295
  const target = resolveListItem(editor, input2.target);
133286
134296
  if (target.numId == null)
133287
- return toListsFailure("INVALID_TARGET", "Target must have numbering metadata.", { target: input2.target });
134297
+ return toListsFailure$1("INVALID_TARGET", "Target must have numbering metadata.", { target: input2.target });
133288
134298
  const canContinue = evaluateCanContinuePrevious(editor, target);
133289
134299
  if (!canContinue.canContinue)
133290
- return toListsFailure({
134300
+ return toListsFailure$1({
133291
134301
  NO_PREVIOUS_LIST: "NO_COMPATIBLE_PREVIOUS",
133292
134302
  INCOMPATIBLE_DEFINITIONS: "NO_COMPATIBLE_PREVIOUS",
133293
134303
  ALREADY_CONTINUOUS: "ALREADY_CONTINUOUS"
@@ -133310,11 +134320,11 @@ function listsContinuePreviousWrapper(editor, input2, options) {
133310
134320
  ilvl: currentLevel
133311
134321
  }, item.candidate.node, item.candidate.pos, editor, tr);
133312
134322
  }
133313
- dispatchEditorTransaction$1(editor, tr);
134323
+ dispatchEditorTransaction$2(editor, tr);
133314
134324
  clearIndexCache(editor);
133315
134325
  return true;
133316
134326
  }, { expectedRevision: options?.expectedRevision }).steps[0]?.effect !== "changed")
133317
- return toListsFailure("INVALID_TARGET", "continuePrevious could not be applied.", { target: input2.target });
134327
+ return toListsFailure$1("INVALID_TARGET", "continuePrevious could not be applied.", { target: input2.target });
133318
134328
  return {
133319
134329
  success: true,
133320
134330
  item: target.address
@@ -133324,9 +134334,9 @@ function listsSetLevelRestartWrapper(editor, input2, options) {
133324
134334
  rejectTrackedMode("lists.setLevelRestart", options);
133325
134335
  const target = resolveListItem(editor, input2.target);
133326
134336
  if (target.numId == null)
133327
- return toListsFailure("INVALID_TARGET", "Target must have numbering metadata.", { target: input2.target });
134337
+ return toListsFailure$1("INVALID_TARGET", "Target must have numbering metadata.", { target: input2.target });
133328
134338
  if (input2.level < 0 || input2.level > 8)
133329
- return toListsFailure("LEVEL_OUT_OF_RANGE", "Level must be between 0 and 8.", { level: input2.level });
134339
+ return toListsFailure$1("LEVEL_OUT_OF_RANGE", "Level must be between 0 and 8.", { level: input2.level });
133330
134340
  if (options?.dryRun)
133331
134341
  return {
133332
134342
  success: true,
@@ -133342,10 +134352,10 @@ function listsSetLevelRestartWrapper(editor, input2, options) {
133342
134352
  return false;
133343
134353
  ListHelpers.setLvlRestartOnAbstract(editor, abstractNumId, input2.level, input2.restartAfterLevel);
133344
134354
  }
133345
- dispatchEditorTransaction$1(editor, editor.state.tr);
134355
+ dispatchEditorTransaction$2(editor, editor.state.tr);
133346
134356
  return true;
133347
134357
  }, { expectedRevision: options?.expectedRevision }).steps[0]?.effect !== "changed")
133348
- return toListsFailure("INVALID_TARGET", "setLevelRestart could not be applied.", { target: input2.target });
134358
+ return toListsFailure$1("INVALID_TARGET", "setLevelRestart could not be applied.", { target: input2.target });
133349
134359
  return {
133350
134360
  success: true,
133351
134361
  item: target.address
@@ -133371,11 +134381,11 @@ function listsConvertToTextWrapper(editor, input2, options) {
133371
134381
  tr.insertText(target.marker, startPos);
133372
134382
  }
133373
134383
  updateNumberingProperties(null, target.candidate.node, target.candidate.pos, editor, tr);
133374
- dispatchEditorTransaction$1(editor, tr);
134384
+ dispatchEditorTransaction$2(editor, tr);
133375
134385
  clearIndexCache(editor);
133376
134386
  return true;
133377
134387
  }, { expectedRevision: options?.expectedRevision }).steps[0]?.effect !== "changed")
133378
- return toListsFailure("INVALID_TARGET", "convertToText could not be applied.", { target: input2.target });
134388
+ return toListsFailure$1("INVALID_TARGET", "convertToText could not be applied.", { target: input2.target });
133379
134389
  return {
133380
134390
  success: true,
133381
134391
  paragraph: {
@@ -133385,6 +134395,682 @@ function listsConvertToTextWrapper(editor, input2, options) {
133385
134395
  }
133386
134396
  };
133387
134397
  }
134398
+ function findLevelElement(abstract, ilvl) {
134399
+ const ilvlStr = String(ilvl);
134400
+ return abstract.elements?.find((el) => el.name === "w:lvl" && el.attributes?.["w:ilvl"] === ilvlStr);
134401
+ }
134402
+ function readChildAttr(parent, elementName) {
134403
+ return parent.elements?.find((el) => el.name === elementName)?.attributes?.["w:val"];
134404
+ }
134405
+ function setChildAttr(parent, elementName, value) {
134406
+ if (!parent.elements)
134407
+ parent.elements = [];
134408
+ const existing = parent.elements.find((el) => el.name === elementName);
134409
+ if (existing) {
134410
+ if (existing.attributes?.["w:val"] === value)
134411
+ return false;
134412
+ if (!existing.attributes)
134413
+ existing.attributes = {};
134414
+ existing.attributes["w:val"] = value;
134415
+ return true;
134416
+ }
134417
+ parent.elements.push({
134418
+ type: "element",
134419
+ name: elementName,
134420
+ attributes: { "w:val": value }
134421
+ });
134422
+ return true;
134423
+ }
134424
+ function findOrCreateChild(parent, elementName) {
134425
+ if (!parent.elements)
134426
+ parent.elements = [];
134427
+ let child = parent.elements.find((el) => el.name === elementName);
134428
+ if (!child) {
134429
+ child = {
134430
+ type: "element",
134431
+ name: elementName,
134432
+ elements: []
134433
+ };
134434
+ parent.elements.push(child);
134435
+ }
134436
+ if (!child.elements)
134437
+ child.elements = [];
134438
+ return child;
134439
+ }
134440
+ function syncAbstractAndEmit(editor, abstractNumId, abstract) {
134441
+ const numbering = editor.converter.numbering;
134442
+ numbering.abstracts[abstractNumId] = abstract;
134443
+ editor.converter.numbering = { ...numbering };
134444
+ const translated = { ...editor.converter.translatedNumbering || {} };
134445
+ if (!translated.abstracts)
134446
+ translated.abstracts = {};
134447
+ translated.abstracts[abstractNumId] = translator$28.encode({ nodes: [abstract] });
134448
+ editor.converter.translatedNumbering = translated;
134449
+ const definitions = numbering.definitions || {};
134450
+ for (const [, numDef] of Object.entries(definitions)) {
134451
+ const absId = numDef?.elements?.find((el) => el.name === "w:abstractNumId")?.attributes?.["w:val"];
134452
+ if (absId != null && Number(absId) === abstractNumId)
134453
+ editor.emit("list-definitions-change", {
134454
+ change: {
134455
+ numDef,
134456
+ editor
134457
+ },
134458
+ numbering: editor.converter.numbering,
134459
+ editor
134460
+ });
134461
+ }
134462
+ }
134463
+ function resolveAbstractLevel(editor, abstractNumId, ilvl) {
134464
+ const abstract = editor.converter.numbering?.abstracts?.[abstractNumId];
134465
+ if (!abstract)
134466
+ return null;
134467
+ const lvlEl = findLevelElement(abstract, ilvl);
134468
+ if (!lvlEl)
134469
+ return null;
134470
+ return {
134471
+ abstract,
134472
+ lvlEl
134473
+ };
134474
+ }
134475
+ function hasLevel(editor, abstractNumId, ilvl) {
134476
+ return resolveAbstractLevel(editor, abstractNumId, ilvl) != null;
134477
+ }
134478
+ function readLevelProperties(lvlEl, ilvl) {
134479
+ const props = { level: ilvl };
134480
+ const numFmt = readChildAttr(lvlEl, "w:numFmt");
134481
+ if (numFmt != null)
134482
+ props.numFmt = numFmt;
134483
+ const lvlText = readChildAttr(lvlEl, "w:lvlText");
134484
+ if (lvlText != null)
134485
+ props.lvlText = lvlText;
134486
+ const startVal = readChildAttr(lvlEl, "w:start");
134487
+ if (startVal != null)
134488
+ props.start = Number(startVal);
134489
+ const alignment$1 = readChildAttr(lvlEl, "w:lvlJc");
134490
+ if (alignment$1 != null)
134491
+ props.alignment = alignment$1;
134492
+ const suff = readChildAttr(lvlEl, "w:suff");
134493
+ if (suff != null)
134494
+ props.trailingCharacter = suff;
134495
+ const picBulletId = readChildAttr(lvlEl, "w:lvlPicBulletId");
134496
+ if (picBulletId != null)
134497
+ props.pictureBulletId = Number(picBulletId);
134498
+ const ind = lvlEl.elements?.find((el) => el.name === "w:pPr")?.elements?.find((el) => el.name === "w:ind");
134499
+ if (ind?.attributes) {
134500
+ const indents = {};
134501
+ if (ind.attributes["w:left"] != null)
134502
+ indents.left = Number(ind.attributes["w:left"]);
134503
+ if (ind.attributes["w:hanging"] != null)
134504
+ indents.hanging = Number(ind.attributes["w:hanging"]);
134505
+ if (ind.attributes["w:firstLine"] != null)
134506
+ indents.firstLine = Number(ind.attributes["w:firstLine"]);
134507
+ if (Object.keys(indents).length > 0)
134508
+ props.indents = indents;
134509
+ }
134510
+ const rFonts = lvlEl.elements?.find((el) => el.name === "w:rPr")?.elements?.find((el) => el.name === "w:rFonts");
134511
+ if (rFonts?.attributes?.["w:ascii"])
134512
+ props.markerFont = rFonts.attributes["w:ascii"];
134513
+ return props;
134514
+ }
134515
+ function mutateLevelNumberingFormat(lvlEl, { numFmt, lvlText, start: start$1 }) {
134516
+ let changed = false;
134517
+ changed = setChildAttr(lvlEl, "w:numFmt", numFmt) || changed;
134518
+ changed = setChildAttr(lvlEl, "w:lvlText", lvlText) || changed;
134519
+ if (start$1 != null)
134520
+ changed = setChildAttr(lvlEl, "w:start", String(start$1)) || changed;
134521
+ return changed;
134522
+ }
134523
+ function mutateLevelBulletMarker(lvlEl, markerText) {
134524
+ let changed = false;
134525
+ changed = setChildAttr(lvlEl, "w:numFmt", "bullet") || changed;
134526
+ changed = setChildAttr(lvlEl, "w:lvlText", markerText) || changed;
134527
+ return changed;
134528
+ }
134529
+ function mutateLevelPictureBulletId(lvlEl, pictureBulletId) {
134530
+ return setChildAttr(lvlEl, "w:lvlPicBulletId", String(pictureBulletId));
134531
+ }
134532
+ function mutateLevelAlignment(lvlEl, alignment$1) {
134533
+ return setChildAttr(lvlEl, "w:lvlJc", alignment$1);
134534
+ }
134535
+ function mutateLevelIndents(lvlEl, indents) {
134536
+ const ind = findOrCreateChild(findOrCreateChild(lvlEl, "w:pPr"), "w:ind");
134537
+ if (!ind.attributes)
134538
+ ind.attributes = {};
134539
+ let changed = false;
134540
+ if (indents.left != null) {
134541
+ const newVal = String(indents.left);
134542
+ if (ind.attributes["w:left"] !== newVal) {
134543
+ ind.attributes["w:left"] = newVal;
134544
+ changed = true;
134545
+ }
134546
+ }
134547
+ if (indents.hanging != null) {
134548
+ const newVal = String(indents.hanging);
134549
+ if (ind.attributes["w:hanging"] !== newVal) {
134550
+ ind.attributes["w:hanging"] = newVal;
134551
+ changed = true;
134552
+ }
134553
+ if (ind.attributes["w:firstLine"] != null) {
134554
+ delete ind.attributes["w:firstLine"];
134555
+ changed = true;
134556
+ }
134557
+ }
134558
+ if (indents.firstLine != null) {
134559
+ const newVal = String(indents.firstLine);
134560
+ if (ind.attributes["w:firstLine"] !== newVal) {
134561
+ ind.attributes["w:firstLine"] = newVal;
134562
+ changed = true;
134563
+ }
134564
+ if (ind.attributes["w:hanging"] != null) {
134565
+ delete ind.attributes["w:hanging"];
134566
+ changed = true;
134567
+ }
134568
+ }
134569
+ return changed;
134570
+ }
134571
+ function mutateLevelTrailingCharacter(lvlEl, trailingCharacter) {
134572
+ return setChildAttr(lvlEl, "w:suff", trailingCharacter);
134573
+ }
134574
+ function mutateLevelMarkerFont(lvlEl, fontFamily$1) {
134575
+ const rPr = findOrCreateChild(lvlEl, "w:rPr");
134576
+ const rFonts = rPr.elements.find((el) => el.name === "w:rFonts");
134577
+ if (rFonts) {
134578
+ const attrs = rFonts.attributes || {};
134579
+ if (attrs["w:ascii"] === fontFamily$1 && attrs["w:hAnsi"] === fontFamily$1 && attrs["w:eastAsia"] === fontFamily$1 && attrs["w:cs"] === fontFamily$1)
134580
+ return false;
134581
+ rFonts.attributes = {
134582
+ ...rFonts.attributes,
134583
+ "w:ascii": fontFamily$1,
134584
+ "w:hAnsi": fontFamily$1,
134585
+ "w:eastAsia": fontFamily$1,
134586
+ "w:cs": fontFamily$1
134587
+ };
134588
+ return true;
134589
+ }
134590
+ rPr.elements.push({
134591
+ type: "element",
134592
+ name: "w:rFonts",
134593
+ attributes: {
134594
+ "w:ascii": fontFamily$1,
134595
+ "w:hAnsi": fontFamily$1,
134596
+ "w:eastAsia": fontFamily$1,
134597
+ "w:cs": fontFamily$1
134598
+ }
134599
+ });
134600
+ return true;
134601
+ }
134602
+ function setLevelNumberingFormat(editor, abstractNumId, ilvl, params$1) {
134603
+ const resolved = resolveAbstractLevel(editor, abstractNumId, ilvl);
134604
+ if (!resolved)
134605
+ return false;
134606
+ const changed = mutateLevelNumberingFormat(resolved.lvlEl, params$1);
134607
+ if (changed)
134608
+ syncAbstractAndEmit(editor, abstractNumId, resolved.abstract);
134609
+ return changed;
134610
+ }
134611
+ function setLevelBulletMarker(editor, abstractNumId, ilvl, markerText) {
134612
+ const resolved = resolveAbstractLevel(editor, abstractNumId, ilvl);
134613
+ if (!resolved)
134614
+ return false;
134615
+ const changed = mutateLevelBulletMarker(resolved.lvlEl, markerText);
134616
+ if (changed)
134617
+ syncAbstractAndEmit(editor, abstractNumId, resolved.abstract);
134618
+ return changed;
134619
+ }
134620
+ function setLevelPictureBulletId(editor, abstractNumId, ilvl, pictureBulletId) {
134621
+ const resolved = resolveAbstractLevel(editor, abstractNumId, ilvl);
134622
+ if (!resolved)
134623
+ return false;
134624
+ const changed = mutateLevelPictureBulletId(resolved.lvlEl, pictureBulletId);
134625
+ if (changed)
134626
+ syncAbstractAndEmit(editor, abstractNumId, resolved.abstract);
134627
+ return changed;
134628
+ }
134629
+ function setLevelAlignment(editor, abstractNumId, ilvl, alignment$1) {
134630
+ const resolved = resolveAbstractLevel(editor, abstractNumId, ilvl);
134631
+ if (!resolved)
134632
+ return false;
134633
+ const changed = mutateLevelAlignment(resolved.lvlEl, alignment$1);
134634
+ if (changed)
134635
+ syncAbstractAndEmit(editor, abstractNumId, resolved.abstract);
134636
+ return changed;
134637
+ }
134638
+ function setLevelIndents(editor, abstractNumId, ilvl, indents) {
134639
+ const resolved = resolveAbstractLevel(editor, abstractNumId, ilvl);
134640
+ if (!resolved)
134641
+ return false;
134642
+ const changed = mutateLevelIndents(resolved.lvlEl, indents);
134643
+ if (changed)
134644
+ syncAbstractAndEmit(editor, abstractNumId, resolved.abstract);
134645
+ return changed;
134646
+ }
134647
+ function setLevelTrailingCharacter(editor, abstractNumId, ilvl, trailingCharacter) {
134648
+ const resolved = resolveAbstractLevel(editor, abstractNumId, ilvl);
134649
+ if (!resolved)
134650
+ return false;
134651
+ const changed = mutateLevelTrailingCharacter(resolved.lvlEl, trailingCharacter);
134652
+ if (changed)
134653
+ syncAbstractAndEmit(editor, abstractNumId, resolved.abstract);
134654
+ return changed;
134655
+ }
134656
+ function setLevelMarkerFont(editor, abstractNumId, ilvl, fontFamily$1) {
134657
+ const resolved = resolveAbstractLevel(editor, abstractNumId, ilvl);
134658
+ if (!resolved)
134659
+ return false;
134660
+ const changed = mutateLevelMarkerFont(resolved.lvlEl, fontFamily$1);
134661
+ if (changed)
134662
+ syncAbstractAndEmit(editor, abstractNumId, resolved.abstract);
134663
+ return changed;
134664
+ }
134665
+ function hasLevelOverride(editor, numId, ilvl) {
134666
+ const numDef = editor.converter.numbering?.definitions?.[numId];
134667
+ if (!numDef?.elements)
134668
+ return false;
134669
+ const ilvlStr = String(ilvl);
134670
+ return numDef.elements.some((el) => el.name === "w:lvlOverride" && el.attributes?.["w:ilvl"] === ilvlStr);
134671
+ }
134672
+ function clearLevelOverride(editor, numId, ilvl) {
134673
+ if (!hasLevelOverride(editor, numId, ilvl))
134674
+ return false;
134675
+ removeLvlOverride(editor, numId, ilvl);
134676
+ return true;
134677
+ }
134678
+ function captureTemplate(editor, abstractNumId, levels) {
134679
+ const abstract = editor.converter.numbering?.abstracts?.[abstractNumId];
134680
+ if (!abstract?.elements)
134681
+ return null;
134682
+ const lvlElements = abstract.elements.filter((el) => el.name === "w:lvl");
134683
+ const captured = [];
134684
+ for (const lvlEl of lvlElements) {
134685
+ const ilvl = Number(lvlEl.attributes?.["w:ilvl"]);
134686
+ if (levels && !levels.includes(ilvl))
134687
+ continue;
134688
+ captured.push(readLevelProperties(lvlEl, ilvl));
134689
+ }
134690
+ captured.sort((a2, b$1) => a2.level - b$1.level);
134691
+ return {
134692
+ version: 1,
134693
+ levels: captured
134694
+ };
134695
+ }
134696
+ function applyTemplateToAbstract(editor, abstractNumId, template, levels) {
134697
+ const abstract = editor.converter.numbering?.abstracts?.[abstractNumId];
134698
+ if (!abstract?.elements)
134699
+ return {
134700
+ changed: false,
134701
+ error: "ABSTRACT_NOT_FOUND"
134702
+ };
134703
+ const templateByLevel = /* @__PURE__ */ new Map;
134704
+ for (const entry of template.levels)
134705
+ templateByLevel.set(entry.level, entry);
134706
+ const targetLevels = levels ?? template.levels.map((l) => l.level);
134707
+ for (const ilvl of targetLevels)
134708
+ if (!templateByLevel.has(ilvl))
134709
+ return {
134710
+ changed: false,
134711
+ error: "LEVEL_NOT_IN_TEMPLATE"
134712
+ };
134713
+ for (const ilvl of targetLevels)
134714
+ if (!findLevelElement(abstract, ilvl))
134715
+ return {
134716
+ changed: false,
134717
+ error: "LEVEL_NOT_IN_ABSTRACT"
134718
+ };
134719
+ let anyChanged = false;
134720
+ for (const ilvl of targetLevels) {
134721
+ const entry = templateByLevel.get(ilvl);
134722
+ const lvlEl = findLevelElement(abstract, ilvl);
134723
+ if (entry.numFmt != null || entry.lvlText != null) {
134724
+ const fmtParams = {};
134725
+ if (entry.numFmt != null)
134726
+ fmtParams.numFmt = entry.numFmt;
134727
+ if (entry.lvlText != null)
134728
+ fmtParams.lvlText = entry.lvlText;
134729
+ if (entry.start != null)
134730
+ fmtParams.start = entry.start;
134731
+ if (fmtParams.numFmt != null && fmtParams.lvlText != null)
134732
+ anyChanged = mutateLevelNumberingFormat(lvlEl, fmtParams) || anyChanged;
134733
+ else {
134734
+ if (fmtParams.numFmt != null)
134735
+ anyChanged = setChildAttr(lvlEl, "w:numFmt", fmtParams.numFmt) || anyChanged;
134736
+ if (fmtParams.lvlText != null)
134737
+ anyChanged = setChildAttr(lvlEl, "w:lvlText", fmtParams.lvlText) || anyChanged;
134738
+ if (fmtParams.start != null)
134739
+ anyChanged = setChildAttr(lvlEl, "w:start", String(fmtParams.start)) || anyChanged;
134740
+ }
134741
+ } else if (entry.start != null)
134742
+ anyChanged = setChildAttr(lvlEl, "w:start", String(entry.start)) || anyChanged;
134743
+ if (entry.alignment != null)
134744
+ anyChanged = mutateLevelAlignment(lvlEl, entry.alignment) || anyChanged;
134745
+ if (entry.indents != null)
134746
+ anyChanged = mutateLevelIndents(lvlEl, entry.indents) || anyChanged;
134747
+ if (entry.trailingCharacter != null)
134748
+ anyChanged = mutateLevelTrailingCharacter(lvlEl, entry.trailingCharacter) || anyChanged;
134749
+ if (entry.markerFont != null)
134750
+ anyChanged = mutateLevelMarkerFont(lvlEl, entry.markerFont) || anyChanged;
134751
+ if (entry.pictureBulletId != null)
134752
+ anyChanged = mutateLevelPictureBulletId(lvlEl, entry.pictureBulletId) || anyChanged;
134753
+ }
134754
+ if (anyChanged)
134755
+ syncAbstractAndEmit(editor, abstractNumId, abstract);
134756
+ return { changed: anyChanged };
134757
+ }
134758
+ function buildOrderedPresetTemplate(config2) {
134759
+ const levels = [];
134760
+ for (let ilvl = 0;ilvl <= 8; ilvl++)
134761
+ levels.push({
134762
+ level: ilvl,
134763
+ numFmt: config2.numFmt,
134764
+ lvlText: `%${ilvl + 1}${config2.lvlTextSuffix}`,
134765
+ start: 1,
134766
+ alignment: "left",
134767
+ indents: {
134768
+ left: INDENT_PER_LEVEL_TWIPS * (ilvl + 1),
134769
+ hanging: HANGING_INDENT_TWIPS
134770
+ }
134771
+ });
134772
+ return {
134773
+ version: 1,
134774
+ levels
134775
+ };
134776
+ }
134777
+ function buildBulletPresetTemplate(config2) {
134778
+ const levels = [];
134779
+ for (let ilvl = 0;ilvl <= 8; ilvl++)
134780
+ levels.push({
134781
+ level: ilvl,
134782
+ numFmt: "bullet",
134783
+ lvlText: config2.markerText,
134784
+ start: 1,
134785
+ alignment: "left",
134786
+ markerFont: config2.fontFamily,
134787
+ indents: {
134788
+ left: INDENT_PER_LEVEL_TWIPS * (ilvl + 1),
134789
+ hanging: HANGING_INDENT_TWIPS
134790
+ }
134791
+ });
134792
+ return {
134793
+ version: 1,
134794
+ levels
134795
+ };
134796
+ }
134797
+ function getPresetTemplate(presetId) {
134798
+ return PRESET_TEMPLATES[presetId];
134799
+ }
134800
+ function toListsFailure(code$1, message, details) {
134801
+ return {
134802
+ success: false,
134803
+ failure: {
134804
+ code: code$1,
134805
+ message,
134806
+ details
134807
+ }
134808
+ };
134809
+ }
134810
+ function dispatchEditorTransaction$1(editor, tr) {
134811
+ if (typeof editor.dispatch === "function") {
134812
+ editor.dispatch(tr);
134813
+ return;
134814
+ }
134815
+ if (typeof editor.view?.dispatch === "function")
134816
+ editor.view.dispatch(tr);
134817
+ }
134818
+ function validateLevel(level) {
134819
+ if (level < 0 || level > 8)
134820
+ return toListsFailure("LEVEL_OUT_OF_RANGE", "Level must be between 0 and 8.", { level });
134821
+ return null;
134822
+ }
134823
+ function validateLevelsArray(levels) {
134824
+ if (!levels)
134825
+ return null;
134826
+ for (const lvl of levels)
134827
+ if (lvl < 0 || lvl > 8)
134828
+ return toListsFailure("LEVEL_OUT_OF_RANGE", "Each level must be between 0 and 8.", { level: lvl });
134829
+ if (new Set(levels).size !== levels.length)
134830
+ return toListsFailure("INVALID_INPUT", "levels must contain unique values.", { levels });
134831
+ for (let i$1 = 1;i$1 < levels.length; i$1++)
134832
+ if (levels[i$1] <= levels[i$1 - 1])
134833
+ return toListsFailure("INVALID_INPUT", "levels must be sorted in ascending order.", { levels });
134834
+ return null;
134835
+ }
134836
+ function preflightTemplateLevels(template, levels, target) {
134837
+ const templateLevelSet = new Set(template.levels.map((l) => l.level));
134838
+ const targetLevels = levels ?? template.levels.map((l) => l.level);
134839
+ for (const ilvl of targetLevels)
134840
+ if (!templateLevelSet.has(ilvl))
134841
+ return toListsFailure("INVALID_INPUT", "Requested level does not exist in the template.", { target });
134842
+ return null;
134843
+ }
134844
+ function toApplyTemplateError(error, target) {
134845
+ switch (error) {
134846
+ case "ABSTRACT_NOT_FOUND":
134847
+ return toListsFailure("INVALID_TARGET", "Abstract numbering definition not found.", { target });
134848
+ case "LEVEL_NOT_IN_TEMPLATE":
134849
+ return toListsFailure("INVALID_INPUT", "Requested level does not exist in the template.", { target });
134850
+ case "LEVEL_NOT_IN_ABSTRACT":
134851
+ return toListsFailure("INVALID_TARGET", "Requested level does not exist in the abstract definition.", { target });
134852
+ default:
134853
+ return toListsFailure("INVALID_INPUT", `Template application failed: ${error}.`, { target });
134854
+ }
134855
+ }
134856
+ function resolveTargetAbstract(editor, target) {
134857
+ const resolved = resolveListItem(editor, target);
134858
+ if (resolved.numId == null)
134859
+ return {
134860
+ ok: false,
134861
+ failure: toListsFailure("INVALID_TARGET", "Target must have numbering metadata.", { target })
134862
+ };
134863
+ const abstractNumId = getAbstractNumId(editor, resolved.numId);
134864
+ if (abstractNumId == null)
134865
+ return {
134866
+ ok: false,
134867
+ failure: toListsFailure("INVALID_TARGET", "Could not resolve abstract definition for target.", { target })
134868
+ };
134869
+ return {
134870
+ ok: true,
134871
+ resolved,
134872
+ abstractNumId,
134873
+ numId: resolved.numId
134874
+ };
134875
+ }
134876
+ function executeSingleLevelMutation(editor, operationId, target, level, options, mutate) {
134877
+ rejectTrackedMode(operationId, options);
134878
+ const levelError = validateLevel(level);
134879
+ if (levelError)
134880
+ return levelError;
134881
+ const targetResult = resolveTargetAbstract(editor, target);
134882
+ if (!targetResult.ok)
134883
+ return targetResult.failure;
134884
+ if (!LevelFormattingHelpers.hasLevel(editor, targetResult.abstractNumId, level))
134885
+ return toListsFailure("LEVEL_NOT_FOUND", `Level ${level} does not exist in the abstract definition.`, {
134886
+ target,
134887
+ level
134888
+ });
134889
+ if (options?.dryRun)
134890
+ return {
134891
+ success: true,
134892
+ item: targetResult.resolved.address
134893
+ };
134894
+ if (executeDomainCommand(editor, () => {
134895
+ if (!mutate(targetResult.abstractNumId, level))
134896
+ return false;
134897
+ dispatchEditorTransaction$1(editor, editor.state.tr);
134898
+ return true;
134899
+ }, { expectedRevision: options?.expectedRevision }).steps[0]?.effect !== "changed")
134900
+ return toListsFailure("NO_OP", `${operationId}: values already match.`, { target });
134901
+ return {
134902
+ success: true,
134903
+ item: targetResult.resolved.address
134904
+ };
134905
+ }
134906
+ function listsApplyTemplateWrapper(editor, input2, options) {
134907
+ rejectTrackedMode("lists.applyTemplate", options);
134908
+ if (input2.template.version !== 1)
134909
+ return toListsFailure("INVALID_INPUT", "Unsupported template version.", { version: input2.template.version });
134910
+ const levelsError = validateLevelsArray(input2.levels);
134911
+ if (levelsError)
134912
+ return levelsError;
134913
+ const targetResult = resolveTargetAbstract(editor, input2.target);
134914
+ if (!targetResult.ok)
134915
+ return targetResult.failure;
134916
+ const preflightError = preflightTemplateLevels(input2.template, input2.levels, input2.target);
134917
+ if (preflightError)
134918
+ return preflightError;
134919
+ if (options?.dryRun)
134920
+ return {
134921
+ success: true,
134922
+ item: targetResult.resolved.address
134923
+ };
134924
+ let applyError;
134925
+ const receipt2 = executeDomainCommand(editor, () => {
134926
+ const result = LevelFormattingHelpers.applyTemplateToAbstract(editor, targetResult.abstractNumId, input2.template, input2.levels);
134927
+ if (result.error) {
134928
+ applyError = result.error;
134929
+ return false;
134930
+ }
134931
+ if (!result.changed)
134932
+ return false;
134933
+ dispatchEditorTransaction$1(editor, editor.state.tr);
134934
+ return true;
134935
+ }, { expectedRevision: options?.expectedRevision });
134936
+ if (applyError)
134937
+ return toApplyTemplateError(applyError, input2.target);
134938
+ if (receipt2.steps[0]?.effect !== "changed")
134939
+ return toListsFailure("NO_OP", "All template levels already match.", { target: input2.target });
134940
+ return {
134941
+ success: true,
134942
+ item: targetResult.resolved.address
134943
+ };
134944
+ }
134945
+ function listsApplyPresetWrapper(editor, input2, options) {
134946
+ rejectTrackedMode("lists.applyPreset", options);
134947
+ const template = LevelFormattingHelpers.getPresetTemplate(input2.preset);
134948
+ if (!template)
134949
+ return toListsFailure("INVALID_INPUT", `Unknown preset: ${input2.preset}.`, { preset: input2.preset });
134950
+ const levelsError = validateLevelsArray(input2.levels);
134951
+ if (levelsError)
134952
+ return levelsError;
134953
+ const targetResult = resolveTargetAbstract(editor, input2.target);
134954
+ if (!targetResult.ok)
134955
+ return targetResult.failure;
134956
+ const preflightError = preflightTemplateLevels(template, input2.levels, input2.target);
134957
+ if (preflightError)
134958
+ return preflightError;
134959
+ if (options?.dryRun)
134960
+ return {
134961
+ success: true,
134962
+ item: targetResult.resolved.address
134963
+ };
134964
+ let applyError;
134965
+ const receipt2 = executeDomainCommand(editor, () => {
134966
+ const result = LevelFormattingHelpers.applyTemplateToAbstract(editor, targetResult.abstractNumId, template, input2.levels);
134967
+ if (result.error) {
134968
+ applyError = result.error;
134969
+ return false;
134970
+ }
134971
+ if (!result.changed)
134972
+ return false;
134973
+ dispatchEditorTransaction$1(editor, editor.state.tr);
134974
+ return true;
134975
+ }, { expectedRevision: options?.expectedRevision });
134976
+ if (applyError)
134977
+ return toApplyTemplateError(applyError, input2.target);
134978
+ if (receipt2.steps[0]?.effect !== "changed")
134979
+ return toListsFailure("NO_OP", "All preset levels already match.", { target: input2.target });
134980
+ return {
134981
+ success: true,
134982
+ item: targetResult.resolved.address
134983
+ };
134984
+ }
134985
+ function listsCaptureTemplateWrapper(editor, input2) {
134986
+ const levelsError = validateLevelsArray(input2.levels);
134987
+ if (levelsError)
134988
+ return levelsError;
134989
+ const targetResult = resolveTargetAbstract(editor, input2.target);
134990
+ if (!targetResult.ok)
134991
+ return targetResult.failure;
134992
+ const template = LevelFormattingHelpers.captureTemplate(editor, targetResult.abstractNumId, input2.levels);
134993
+ if (!template)
134994
+ return toListsFailure("INVALID_TARGET", "Could not capture template from target.", { target: input2.target });
134995
+ return {
134996
+ success: true,
134997
+ template
134998
+ };
134999
+ }
135000
+ function listsSetLevelNumberingWrapper(editor, input2, options) {
135001
+ return executeSingleLevelMutation(editor, "lists.setLevelNumbering", input2.target, input2.level, options, (abstractNumId, ilvl) => LevelFormattingHelpers.setLevelNumberingFormat(editor, abstractNumId, ilvl, {
135002
+ numFmt: input2.numFmt,
135003
+ lvlText: input2.lvlText,
135004
+ start: input2.start
135005
+ }));
135006
+ }
135007
+ function listsSetLevelBulletWrapper(editor, input2, options) {
135008
+ return executeSingleLevelMutation(editor, "lists.setLevelBullet", input2.target, input2.level, options, (abstractNumId, ilvl) => LevelFormattingHelpers.setLevelBulletMarker(editor, abstractNumId, ilvl, input2.markerText));
135009
+ }
135010
+ function listsSetLevelPictureBulletWrapper(editor, input2, options) {
135011
+ rejectTrackedMode("lists.setLevelPictureBullet", options);
135012
+ const converter = editor.converter;
135013
+ if (converter?.convertedXml && !converter.convertedXml["word/numbering.xml"])
135014
+ return toListsFailure("CAPABILITY_UNAVAILABLE", "Picture bullets require a numbering definition (word/numbering.xml).", { target: input2.target });
135015
+ return executeSingleLevelMutation(editor, "lists.setLevelPictureBullet", input2.target, input2.level, options, (abstractNumId, ilvl) => LevelFormattingHelpers.setLevelPictureBulletId(editor, abstractNumId, ilvl, input2.pictureBulletId));
135016
+ }
135017
+ function listsSetLevelAlignmentWrapper(editor, input2, options) {
135018
+ return executeSingleLevelMutation(editor, "lists.setLevelAlignment", input2.target, input2.level, options, (abstractNumId, ilvl) => LevelFormattingHelpers.setLevelAlignment(editor, abstractNumId, ilvl, input2.alignment));
135019
+ }
135020
+ function listsSetLevelIndentsWrapper(editor, input2, options) {
135021
+ const hasLeft = input2.left != null;
135022
+ const hasHanging = input2.hanging != null;
135023
+ const hasFirstLine = input2.firstLine != null;
135024
+ if (!hasLeft && !hasHanging && !hasFirstLine)
135025
+ return toListsFailure("INVALID_INPUT", "At least one indent property is required.", {});
135026
+ if (hasHanging && hasFirstLine)
135027
+ return toListsFailure("INVALID_INPUT", "hanging and firstLine are mutually exclusive.", {});
135028
+ return executeSingleLevelMutation(editor, "lists.setLevelIndents", input2.target, input2.level, options, (abstractNumId, ilvl) => {
135029
+ const indents = {};
135030
+ if (hasLeft)
135031
+ indents.left = input2.left;
135032
+ if (hasHanging)
135033
+ indents.hanging = input2.hanging;
135034
+ if (hasFirstLine)
135035
+ indents.firstLine = input2.firstLine;
135036
+ return LevelFormattingHelpers.setLevelIndents(editor, abstractNumId, ilvl, indents);
135037
+ });
135038
+ }
135039
+ function listsSetLevelTrailingCharacterWrapper(editor, input2, options) {
135040
+ return executeSingleLevelMutation(editor, "lists.setLevelTrailingCharacter", input2.target, input2.level, options, (abstractNumId, ilvl) => LevelFormattingHelpers.setLevelTrailingCharacter(editor, abstractNumId, ilvl, input2.trailingCharacter));
135041
+ }
135042
+ function listsSetLevelMarkerFontWrapper(editor, input2, options) {
135043
+ return executeSingleLevelMutation(editor, "lists.setLevelMarkerFont", input2.target, input2.level, options, (abstractNumId, ilvl) => LevelFormattingHelpers.setLevelMarkerFont(editor, abstractNumId, ilvl, input2.fontFamily));
135044
+ }
135045
+ function listsClearLevelOverridesWrapper(editor, input2, options) {
135046
+ rejectTrackedMode("lists.clearLevelOverrides", options);
135047
+ const levelError = validateLevel(input2.level);
135048
+ if (levelError)
135049
+ return levelError;
135050
+ const resolved = resolveListItem(editor, input2.target);
135051
+ if (resolved.numId == null)
135052
+ return toListsFailure("INVALID_TARGET", "Target must have numbering metadata.", { target: input2.target });
135053
+ if (options?.dryRun)
135054
+ return {
135055
+ success: true,
135056
+ item: resolved.address
135057
+ };
135058
+ if (!LevelFormattingHelpers.hasLevelOverride(editor, resolved.numId, input2.level))
135059
+ return toListsFailure("NO_OP", "No override exists for this level.", {
135060
+ target: input2.target,
135061
+ level: input2.level
135062
+ });
135063
+ if (executeDomainCommand(editor, () => {
135064
+ LevelFormattingHelpers.clearLevelOverride(editor, resolved.numId, input2.level);
135065
+ dispatchEditorTransaction$1(editor, editor.state.tr);
135066
+ return true;
135067
+ }, { expectedRevision: options?.expectedRevision }).steps[0]?.effect !== "changed")
135068
+ return toListsFailure("NO_OP", "clearLevelOverrides could not be applied.", { target: input2.target });
135069
+ return {
135070
+ success: true,
135071
+ item: resolved.address
135072
+ };
135073
+ }
133388
135074
  function previewPlan(editor, input2) {
133389
135075
  checkRevision(editor, input2.expectedRevision);
133390
135076
  if (!input2.steps?.length)
@@ -140696,7 +142382,18 @@ function assembleDocumentApiAdapters(editor) {
140696
142382
  continuePrevious: (input2, options) => listsContinuePreviousWrapper(editor, input2, options),
140697
142383
  canContinuePrevious: (input2) => listsCanContinuePreviousWrapper(editor, input2),
140698
142384
  setLevelRestart: (input2, options) => listsSetLevelRestartWrapper(editor, input2, options),
140699
- convertToText: (input2, options) => listsConvertToTextWrapper(editor, input2, options)
142385
+ convertToText: (input2, options) => listsConvertToTextWrapper(editor, input2, options),
142386
+ applyTemplate: (input2, options) => listsApplyTemplateWrapper(editor, input2, options),
142387
+ applyPreset: (input2, options) => listsApplyPresetWrapper(editor, input2, options),
142388
+ captureTemplate: (input2) => listsCaptureTemplateWrapper(editor, input2),
142389
+ setLevelNumbering: (input2, options) => listsSetLevelNumberingWrapper(editor, input2, options),
142390
+ setLevelBullet: (input2, options) => listsSetLevelBulletWrapper(editor, input2, options),
142391
+ setLevelPictureBullet: (input2, options) => listsSetLevelPictureBulletWrapper(editor, input2, options),
142392
+ setLevelAlignment: (input2, options) => listsSetLevelAlignmentWrapper(editor, input2, options),
142393
+ setLevelIndents: (input2, options) => listsSetLevelIndentsWrapper(editor, input2, options),
142394
+ setLevelTrailingCharacter: (input2, options) => listsSetLevelTrailingCharacterWrapper(editor, input2, options),
142395
+ setLevelMarkerFont: (input2, options) => listsSetLevelMarkerFontWrapper(editor, input2, options),
142396
+ clearLevelOverrides: (input2, options) => listsClearLevelOverridesWrapper(editor, input2, options)
140700
142397
  },
140701
142398
  sections: {
140702
142399
  list: (query2) => sectionsListAdapter(editor, query2),
@@ -175450,7 +177147,7 @@ var Node$13 = class Node$14 {
175450
177147
  console.warn("Failed to initialize developer tools:", error);
175451
177148
  }
175452
177149
  }
175453
- }, 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, 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) => {
177150
+ }, 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) => {
175454
177151
  let hash$3 = 0;
175455
177152
  for (let i$1 = 0;i$1 < str.length; i$1++) {
175456
177153
  const char = str.charCodeAt(i$1);
@@ -194092,9 +195789,9 @@ var Node$13 = class Node$14 {
194092
195789
  trackedChanges: context.trackedChanges ?? []
194093
195790
  });
194094
195791
  }, _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;
194095
- var init_src_C1h0gpEb_es = __esm(() => {
195792
+ var init_src_SQD068uc_es = __esm(() => {
194096
195793
  init_rolldown_runtime_B2q5OVn9_es();
194097
- init_SuperConverter_Bo_KNppf_es();
195794
+ init_SuperConverter_CejXSSGL_es();
194098
195795
  init_jszip_ChlR43oI_es();
194099
195796
  init_uuid_qzgm05fK_es();
194100
195797
  init_constants_CMPtQbp7_es();
@@ -202282,6 +203979,17 @@ function print() { __p += __j.call(arguments, '') }
202282
203979
  "lists.continuePrevious": [],
202283
203980
  "lists.setLevelRestart": [],
202284
203981
  "lists.convertToText": [],
203982
+ "lists.applyTemplate": [],
203983
+ "lists.applyPreset": [],
203984
+ "lists.captureTemplate": [],
203985
+ "lists.setLevelNumbering": [],
203986
+ "lists.setLevelBullet": [],
203987
+ "lists.setLevelPictureBullet": [],
203988
+ "lists.setLevelAlignment": [],
203989
+ "lists.setLevelIndents": [],
203990
+ "lists.setLevelTrailingCharacter": [],
203991
+ "lists.setLevelMarkerFont": [],
203992
+ "lists.clearLevelOverrides": [],
202285
203993
  "blocks.delete": ["deleteBlockNodeById"],
202286
203994
  "comments.create": [
202287
203995
  "addComment",
@@ -202366,7 +204074,11 @@ function print() { __p += __j.call(arguments, '') }
202366
204074
  "sections.setOddEvenHeadersFooters": (editor) => Boolean(editor.converter),
202367
204075
  "sections.setHeaderFooterRef": (editor) => Boolean(editor.converter),
202368
204076
  "tables.setDefaultStyle": (editor) => Boolean(editor.converter),
202369
- "tables.clearDefaultStyle": (editor) => Boolean(editor.converter)
204077
+ "tables.clearDefaultStyle": (editor) => Boolean(editor.converter),
204078
+ "lists.setLevelPictureBullet": (editor) => {
204079
+ const converter = editor.converter;
204080
+ return Boolean(converter?.convertedXml?.["word/numbering.xml"]);
204081
+ }
202370
204082
  };
202371
204083
  SUPPORTED_NON_UNIFORM_STRATEGIES = [
202372
204084
  "error",
@@ -202547,6 +204259,73 @@ function print() { __p += __j.call(arguments, '') }
202547
204259
  groupedCache = /* @__PURE__ */ new WeakMap;
202548
204260
  SUPPORTED_NODE_TYPES = new Set(DELETABLE_BLOCK_NODE_TYPES2);
202549
204261
  REJECTED_NODE_TYPES = new Set(["tableRow", "tableCell"]);
204262
+ ORDERED_PRESET_CONFIG = {
204263
+ decimal: {
204264
+ numFmt: "decimal",
204265
+ lvlTextSuffix: "."
204266
+ },
204267
+ decimalParenthesis: {
204268
+ numFmt: "decimal",
204269
+ lvlTextSuffix: ")"
204270
+ },
204271
+ lowerLetter: {
204272
+ numFmt: "lowerLetter",
204273
+ lvlTextSuffix: "."
204274
+ },
204275
+ upperLetter: {
204276
+ numFmt: "upperLetter",
204277
+ lvlTextSuffix: "."
204278
+ },
204279
+ lowerRoman: {
204280
+ numFmt: "lowerRoman",
204281
+ lvlTextSuffix: "."
204282
+ },
204283
+ upperRoman: {
204284
+ numFmt: "upperRoman",
204285
+ lvlTextSuffix: "."
204286
+ }
204287
+ };
204288
+ BULLET_PRESET_CONFIG = {
204289
+ disc: {
204290
+ markerText: "•",
204291
+ fontFamily: "Symbol"
204292
+ },
204293
+ circle: {
204294
+ markerText: "o",
204295
+ fontFamily: "Courier New"
204296
+ },
204297
+ square: {
204298
+ markerText: "",
204299
+ fontFamily: "Wingdings"
204300
+ },
204301
+ dash: {
204302
+ markerText: "–",
204303
+ fontFamily: "Calibri"
204304
+ }
204305
+ };
204306
+ PRESET_TEMPLATES = {};
204307
+ for (const [id2, config2] of Object.entries(ORDERED_PRESET_CONFIG))
204308
+ PRESET_TEMPLATES[id2] = buildOrderedPresetTemplate(config2);
204309
+ for (const [id2, config2] of Object.entries(BULLET_PRESET_CONFIG))
204310
+ PRESET_TEMPLATES[id2] = buildBulletPresetTemplate(config2);
204311
+ LevelFormattingHelpers = {
204312
+ readLevelProperties,
204313
+ findLevelElement,
204314
+ hasLevel,
204315
+ setLevelNumberingFormat,
204316
+ setLevelBulletMarker,
204317
+ setLevelPictureBulletId,
204318
+ setLevelAlignment,
204319
+ setLevelIndents,
204320
+ setLevelTrailingCharacter,
204321
+ setLevelMarkerFont,
204322
+ hasLevelOverride,
204323
+ clearLevelOverride,
204324
+ captureTemplate,
204325
+ applyTemplateToAbstract,
204326
+ getPresetTemplate,
204327
+ PRESET_TEMPLATES
204328
+ };
202550
204329
  CSS_NAMED_COLORS = {
202551
204330
  aliceblue: "#f0f8ff",
202552
204331
  antiquewhite: "#faebd7",
@@ -225684,8 +227463,8 @@ function print() { __p += __j.call(arguments, '') }
225684
227463
  return isObjectLike_default(value) && hasOwnProperty$8.call(value, "callee") && !propertyIsEnumerable$1.call(value, "callee");
225685
227464
  };
225686
227465
  stubFalse_default = stubFalse;
225687
- freeExports$2 = typeof exports_src_C1h0gpEb_es == "object" && exports_src_C1h0gpEb_es && !exports_src_C1h0gpEb_es.nodeType && exports_src_C1h0gpEb_es;
225688
- freeModule$2 = freeExports$2 && typeof module_src_C1h0gpEb_es == "object" && module_src_C1h0gpEb_es && !module_src_C1h0gpEb_es.nodeType && module_src_C1h0gpEb_es;
227466
+ freeExports$2 = typeof exports_src_SQD068uc_es == "object" && exports_src_SQD068uc_es && !exports_src_SQD068uc_es.nodeType && exports_src_SQD068uc_es;
227467
+ freeModule$2 = freeExports$2 && typeof module_src_SQD068uc_es == "object" && module_src_SQD068uc_es && !module_src_SQD068uc_es.nodeType && module_src_SQD068uc_es;
225689
227468
  Buffer$1 = freeModule$2 && freeModule$2.exports === freeExports$2 ? _root_default.Buffer : undefined;
225690
227469
  isBuffer_default = (Buffer$1 ? Buffer$1.isBuffer : undefined) || stubFalse_default;
225691
227470
  typedArrayTags = {};
@@ -225693,8 +227472,8 @@ function print() { __p += __j.call(arguments, '') }
225693
227472
  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;
225694
227473
  _baseIsTypedArray_default = baseIsTypedArray;
225695
227474
  _baseUnary_default = baseUnary;
225696
- freeExports$1 = typeof exports_src_C1h0gpEb_es == "object" && exports_src_C1h0gpEb_es && !exports_src_C1h0gpEb_es.nodeType && exports_src_C1h0gpEb_es;
225697
- freeModule$1 = freeExports$1 && typeof module_src_C1h0gpEb_es == "object" && module_src_C1h0gpEb_es && !module_src_C1h0gpEb_es.nodeType && module_src_C1h0gpEb_es;
227475
+ freeExports$1 = typeof exports_src_SQD068uc_es == "object" && exports_src_SQD068uc_es && !exports_src_SQD068uc_es.nodeType && exports_src_SQD068uc_es;
227476
+ freeModule$1 = freeExports$1 && typeof module_src_SQD068uc_es == "object" && module_src_SQD068uc_es && !module_src_SQD068uc_es.nodeType && module_src_SQD068uc_es;
225698
227477
  freeProcess = freeModule$1 && freeModule$1.exports === freeExports$1 && _freeGlobal_default.process;
225699
227478
  _nodeUtil_default = function() {
225700
227479
  try {
@@ -225799,8 +227578,8 @@ function print() { __p += __j.call(arguments, '') }
225799
227578
  Stack.prototype.has = _stackHas_default;
225800
227579
  Stack.prototype.set = _stackSet_default;
225801
227580
  _Stack_default = Stack;
225802
- freeExports = typeof exports_src_C1h0gpEb_es == "object" && exports_src_C1h0gpEb_es && !exports_src_C1h0gpEb_es.nodeType && exports_src_C1h0gpEb_es;
225803
- freeModule = freeExports && typeof module_src_C1h0gpEb_es == "object" && module_src_C1h0gpEb_es && !module_src_C1h0gpEb_es.nodeType && module_src_C1h0gpEb_es;
227581
+ freeExports = typeof exports_src_SQD068uc_es == "object" && exports_src_SQD068uc_es && !exports_src_SQD068uc_es.nodeType && exports_src_SQD068uc_es;
227582
+ freeModule = freeExports && typeof module_src_SQD068uc_es == "object" && module_src_SQD068uc_es && !module_src_SQD068uc_es.nodeType && module_src_SQD068uc_es;
225804
227583
  Buffer4 = freeModule && freeModule.exports === freeExports ? _root_default.Buffer : undefined;
225805
227584
  allocUnsafe = Buffer4 ? Buffer4.allocUnsafe : undefined;
225806
227585
  _cloneBuffer_default = cloneBuffer;
@@ -233880,8 +235659,8 @@ var init_zipper_DqXT7uTa_es = __esm(() => {
233880
235659
 
233881
235660
  // ../../packages/superdoc/dist/super-editor.es.js
233882
235661
  var init_super_editor_es = __esm(() => {
233883
- init_src_C1h0gpEb_es();
233884
- init_SuperConverter_Bo_KNppf_es();
235662
+ init_src_SQD068uc_es();
235663
+ init_SuperConverter_CejXSSGL_es();
233885
235664
  init_jszip_ChlR43oI_es();
233886
235665
  init_xml_js_DLE8mr0n_es();
233887
235666
  init_constants_CMPtQbp7_es();
@@ -295649,6 +297428,17 @@ var init_capabilities_adapter = __esm(() => {
295649
297428
  "lists.continuePrevious": [],
295650
297429
  "lists.setLevelRestart": [],
295651
297430
  "lists.convertToText": [],
297431
+ "lists.applyTemplate": [],
297432
+ "lists.applyPreset": [],
297433
+ "lists.captureTemplate": [],
297434
+ "lists.setLevelNumbering": [],
297435
+ "lists.setLevelBullet": [],
297436
+ "lists.setLevelPictureBullet": [],
297437
+ "lists.setLevelAlignment": [],
297438
+ "lists.setLevelIndents": [],
297439
+ "lists.setLevelTrailingCharacter": [],
297440
+ "lists.setLevelMarkerFont": [],
297441
+ "lists.clearLevelOverrides": [],
295652
297442
  "blocks.delete": ["deleteBlockNodeById"],
295653
297443
  "comments.create": ["addComment", "setTextSelection", "addCommentReply"],
295654
297444
  "comments.patch": ["editComment", "moveComment", "resolveComment", "setCommentInternal"],
@@ -295724,7 +297514,11 @@ var init_capabilities_adapter = __esm(() => {
295724
297514
  "sections.setOddEvenHeadersFooters": (editor) => Boolean(editor.converter),
295725
297515
  "sections.setHeaderFooterRef": (editor) => Boolean(editor.converter),
295726
297516
  "tables.setDefaultStyle": (editor) => Boolean(editor.converter),
295727
- "tables.clearDefaultStyle": (editor) => Boolean(editor.converter)
297517
+ "tables.clearDefaultStyle": (editor) => Boolean(editor.converter),
297518
+ "lists.setLevelPictureBullet": (editor) => {
297519
+ const converter = editor.converter;
297520
+ return Boolean(converter?.convertedXml?.["word/numbering.xml"]);
297521
+ }
295728
297522
  };
295729
297523
  SUPPORTED_NON_UNIFORM_STRATEGIES2 = ["error", "useLeadingRun", "majority", "union"];
295730
297524
  SUPPORTED_SET_MARKS2 = ["bold", "italic", "underline", "strike"];
@@ -301981,6 +303775,723 @@ var init_lists_wrappers = __esm(() => {
301981
303775
  init_changeListLevel();
301982
303776
  });
301983
303777
 
303778
+ // ../../packages/super-editor/src/core/helpers/list-level-formatting-helpers.js
303779
+ function findLevelElement2(abstract, ilvl) {
303780
+ const ilvlStr = String(ilvl);
303781
+ return abstract.elements?.find((el) => el.name === "w:lvl" && el.attributes?.["w:ilvl"] === ilvlStr);
303782
+ }
303783
+ function readChildAttr2(parent, elementName) {
303784
+ return parent.elements?.find((el) => el.name === elementName)?.attributes?.["w:val"];
303785
+ }
303786
+ function setChildAttr2(parent, elementName, value) {
303787
+ if (!parent.elements)
303788
+ parent.elements = [];
303789
+ const existing = parent.elements.find((el) => el.name === elementName);
303790
+ if (existing) {
303791
+ if (existing.attributes?.["w:val"] === value)
303792
+ return false;
303793
+ if (!existing.attributes)
303794
+ existing.attributes = {};
303795
+ existing.attributes["w:val"] = value;
303796
+ return true;
303797
+ }
303798
+ parent.elements.push({
303799
+ type: "element",
303800
+ name: elementName,
303801
+ attributes: { "w:val": value }
303802
+ });
303803
+ return true;
303804
+ }
303805
+ function findOrCreateChild2(parent, elementName) {
303806
+ if (!parent.elements)
303807
+ parent.elements = [];
303808
+ let child = parent.elements.find((el) => el.name === elementName);
303809
+ if (!child) {
303810
+ child = { type: "element", name: elementName, elements: [] };
303811
+ parent.elements.push(child);
303812
+ }
303813
+ if (!child.elements)
303814
+ child.elements = [];
303815
+ return child;
303816
+ }
303817
+ function syncAbstractAndEmit2(editor, abstractNumId, abstract) {
303818
+ const numbering = editor.converter.numbering;
303819
+ numbering.abstracts[abstractNumId] = abstract;
303820
+ editor.converter.numbering = { ...numbering };
303821
+ const translated = { ...editor.converter.translatedNumbering || {} };
303822
+ if (!translated.abstracts)
303823
+ translated.abstracts = {};
303824
+ translated.abstracts[abstractNumId] = translator182.encode({ nodes: [abstract] });
303825
+ editor.converter.translatedNumbering = translated;
303826
+ const definitions = numbering.definitions || {};
303827
+ for (const [, numDef] of Object.entries(definitions)) {
303828
+ const absId = numDef?.elements?.find((el) => el.name === "w:abstractNumId")?.attributes?.["w:val"];
303829
+ if (absId != null && Number(absId) === abstractNumId) {
303830
+ editor.emit("list-definitions-change", {
303831
+ change: { numDef, editor },
303832
+ numbering: editor.converter.numbering,
303833
+ editor
303834
+ });
303835
+ }
303836
+ }
303837
+ }
303838
+ function resolveAbstractLevel2(editor, abstractNumId, ilvl) {
303839
+ const abstract = editor.converter.numbering?.abstracts?.[abstractNumId];
303840
+ if (!abstract)
303841
+ return null;
303842
+ const lvlEl = findLevelElement2(abstract, ilvl);
303843
+ if (!lvlEl)
303844
+ return null;
303845
+ return { abstract, lvlEl };
303846
+ }
303847
+ function hasLevel2(editor, abstractNumId, ilvl) {
303848
+ return resolveAbstractLevel2(editor, abstractNumId, ilvl) != null;
303849
+ }
303850
+ function readLevelProperties2(lvlEl, ilvl) {
303851
+ const props = { level: ilvl };
303852
+ const numFmt = readChildAttr2(lvlEl, "w:numFmt");
303853
+ if (numFmt != null)
303854
+ props.numFmt = numFmt;
303855
+ const lvlText = readChildAttr2(lvlEl, "w:lvlText");
303856
+ if (lvlText != null)
303857
+ props.lvlText = lvlText;
303858
+ const startVal = readChildAttr2(lvlEl, "w:start");
303859
+ if (startVal != null)
303860
+ props.start = Number(startVal);
303861
+ const alignment2 = readChildAttr2(lvlEl, "w:lvlJc");
303862
+ if (alignment2 != null)
303863
+ props.alignment = alignment2;
303864
+ const suff = readChildAttr2(lvlEl, "w:suff");
303865
+ if (suff != null)
303866
+ props.trailingCharacter = suff;
303867
+ const picBulletId = readChildAttr2(lvlEl, "w:lvlPicBulletId");
303868
+ if (picBulletId != null)
303869
+ props.pictureBulletId = Number(picBulletId);
303870
+ const pPr = lvlEl.elements?.find((el) => el.name === "w:pPr");
303871
+ const ind = pPr?.elements?.find((el) => el.name === "w:ind");
303872
+ if (ind?.attributes) {
303873
+ const indents = {};
303874
+ if (ind.attributes["w:left"] != null)
303875
+ indents.left = Number(ind.attributes["w:left"]);
303876
+ if (ind.attributes["w:hanging"] != null)
303877
+ indents.hanging = Number(ind.attributes["w:hanging"]);
303878
+ if (ind.attributes["w:firstLine"] != null)
303879
+ indents.firstLine = Number(ind.attributes["w:firstLine"]);
303880
+ if (Object.keys(indents).length > 0)
303881
+ props.indents = indents;
303882
+ }
303883
+ const rPr = lvlEl.elements?.find((el) => el.name === "w:rPr");
303884
+ const rFonts = rPr?.elements?.find((el) => el.name === "w:rFonts");
303885
+ if (rFonts?.attributes?.["w:ascii"]) {
303886
+ props.markerFont = rFonts.attributes["w:ascii"];
303887
+ }
303888
+ return props;
303889
+ }
303890
+ function mutateLevelNumberingFormat2(lvlEl, { numFmt, lvlText, start: start2 }) {
303891
+ let changed = false;
303892
+ changed = setChildAttr2(lvlEl, "w:numFmt", numFmt) || changed;
303893
+ changed = setChildAttr2(lvlEl, "w:lvlText", lvlText) || changed;
303894
+ if (start2 != null) {
303895
+ changed = setChildAttr2(lvlEl, "w:start", String(start2)) || changed;
303896
+ }
303897
+ return changed;
303898
+ }
303899
+ function mutateLevelBulletMarker2(lvlEl, markerText) {
303900
+ let changed = false;
303901
+ changed = setChildAttr2(lvlEl, "w:numFmt", "bullet") || changed;
303902
+ changed = setChildAttr2(lvlEl, "w:lvlText", markerText) || changed;
303903
+ return changed;
303904
+ }
303905
+ function mutateLevelPictureBulletId2(lvlEl, pictureBulletId) {
303906
+ return setChildAttr2(lvlEl, "w:lvlPicBulletId", String(pictureBulletId));
303907
+ }
303908
+ function mutateLevelAlignment2(lvlEl, alignment2) {
303909
+ return setChildAttr2(lvlEl, "w:lvlJc", alignment2);
303910
+ }
303911
+ function mutateLevelIndents2(lvlEl, indents) {
303912
+ const pPr = findOrCreateChild2(lvlEl, "w:pPr");
303913
+ const ind = findOrCreateChild2(pPr, "w:ind");
303914
+ if (!ind.attributes)
303915
+ ind.attributes = {};
303916
+ let changed = false;
303917
+ if (indents.left != null) {
303918
+ const newVal = String(indents.left);
303919
+ if (ind.attributes["w:left"] !== newVal) {
303920
+ ind.attributes["w:left"] = newVal;
303921
+ changed = true;
303922
+ }
303923
+ }
303924
+ if (indents.hanging != null) {
303925
+ const newVal = String(indents.hanging);
303926
+ if (ind.attributes["w:hanging"] !== newVal) {
303927
+ ind.attributes["w:hanging"] = newVal;
303928
+ changed = true;
303929
+ }
303930
+ if (ind.attributes["w:firstLine"] != null) {
303931
+ delete ind.attributes["w:firstLine"];
303932
+ changed = true;
303933
+ }
303934
+ }
303935
+ if (indents.firstLine != null) {
303936
+ const newVal = String(indents.firstLine);
303937
+ if (ind.attributes["w:firstLine"] !== newVal) {
303938
+ ind.attributes["w:firstLine"] = newVal;
303939
+ changed = true;
303940
+ }
303941
+ if (ind.attributes["w:hanging"] != null) {
303942
+ delete ind.attributes["w:hanging"];
303943
+ changed = true;
303944
+ }
303945
+ }
303946
+ return changed;
303947
+ }
303948
+ function mutateLevelTrailingCharacter2(lvlEl, trailingCharacter) {
303949
+ return setChildAttr2(lvlEl, "w:suff", trailingCharacter);
303950
+ }
303951
+ function mutateLevelMarkerFont2(lvlEl, fontFamily2) {
303952
+ const rPr = findOrCreateChild2(lvlEl, "w:rPr");
303953
+ const rFonts = rPr.elements.find((el) => el.name === "w:rFonts");
303954
+ if (rFonts) {
303955
+ const attrs = rFonts.attributes || {};
303956
+ if (attrs["w:ascii"] === fontFamily2 && attrs["w:hAnsi"] === fontFamily2 && attrs["w:eastAsia"] === fontFamily2 && attrs["w:cs"] === fontFamily2) {
303957
+ return false;
303958
+ }
303959
+ rFonts.attributes = {
303960
+ ...rFonts.attributes,
303961
+ "w:ascii": fontFamily2,
303962
+ "w:hAnsi": fontFamily2,
303963
+ "w:eastAsia": fontFamily2,
303964
+ "w:cs": fontFamily2
303965
+ };
303966
+ return true;
303967
+ }
303968
+ rPr.elements.push({
303969
+ type: "element",
303970
+ name: "w:rFonts",
303971
+ attributes: {
303972
+ "w:ascii": fontFamily2,
303973
+ "w:hAnsi": fontFamily2,
303974
+ "w:eastAsia": fontFamily2,
303975
+ "w:cs": fontFamily2
303976
+ }
303977
+ });
303978
+ return true;
303979
+ }
303980
+ function setLevelNumberingFormat2(editor, abstractNumId, ilvl, params3) {
303981
+ const resolved = resolveAbstractLevel2(editor, abstractNumId, ilvl);
303982
+ if (!resolved)
303983
+ return false;
303984
+ const changed = mutateLevelNumberingFormat2(resolved.lvlEl, params3);
303985
+ if (changed)
303986
+ syncAbstractAndEmit2(editor, abstractNumId, resolved.abstract);
303987
+ return changed;
303988
+ }
303989
+ function setLevelBulletMarker2(editor, abstractNumId, ilvl, markerText) {
303990
+ const resolved = resolveAbstractLevel2(editor, abstractNumId, ilvl);
303991
+ if (!resolved)
303992
+ return false;
303993
+ const changed = mutateLevelBulletMarker2(resolved.lvlEl, markerText);
303994
+ if (changed)
303995
+ syncAbstractAndEmit2(editor, abstractNumId, resolved.abstract);
303996
+ return changed;
303997
+ }
303998
+ function setLevelPictureBulletId2(editor, abstractNumId, ilvl, pictureBulletId) {
303999
+ const resolved = resolveAbstractLevel2(editor, abstractNumId, ilvl);
304000
+ if (!resolved)
304001
+ return false;
304002
+ const changed = mutateLevelPictureBulletId2(resolved.lvlEl, pictureBulletId);
304003
+ if (changed)
304004
+ syncAbstractAndEmit2(editor, abstractNumId, resolved.abstract);
304005
+ return changed;
304006
+ }
304007
+ function setLevelAlignment2(editor, abstractNumId, ilvl, alignment2) {
304008
+ const resolved = resolveAbstractLevel2(editor, abstractNumId, ilvl);
304009
+ if (!resolved)
304010
+ return false;
304011
+ const changed = mutateLevelAlignment2(resolved.lvlEl, alignment2);
304012
+ if (changed)
304013
+ syncAbstractAndEmit2(editor, abstractNumId, resolved.abstract);
304014
+ return changed;
304015
+ }
304016
+ function setLevelIndents2(editor, abstractNumId, ilvl, indents) {
304017
+ const resolved = resolveAbstractLevel2(editor, abstractNumId, ilvl);
304018
+ if (!resolved)
304019
+ return false;
304020
+ const changed = mutateLevelIndents2(resolved.lvlEl, indents);
304021
+ if (changed)
304022
+ syncAbstractAndEmit2(editor, abstractNumId, resolved.abstract);
304023
+ return changed;
304024
+ }
304025
+ function setLevelTrailingCharacter2(editor, abstractNumId, ilvl, trailingCharacter) {
304026
+ const resolved = resolveAbstractLevel2(editor, abstractNumId, ilvl);
304027
+ if (!resolved)
304028
+ return false;
304029
+ const changed = mutateLevelTrailingCharacter2(resolved.lvlEl, trailingCharacter);
304030
+ if (changed)
304031
+ syncAbstractAndEmit2(editor, abstractNumId, resolved.abstract);
304032
+ return changed;
304033
+ }
304034
+ function setLevelMarkerFont2(editor, abstractNumId, ilvl, fontFamily2) {
304035
+ const resolved = resolveAbstractLevel2(editor, abstractNumId, ilvl);
304036
+ if (!resolved)
304037
+ return false;
304038
+ const changed = mutateLevelMarkerFont2(resolved.lvlEl, fontFamily2);
304039
+ if (changed)
304040
+ syncAbstractAndEmit2(editor, abstractNumId, resolved.abstract);
304041
+ return changed;
304042
+ }
304043
+ function hasLevelOverride3(editor, numId, ilvl) {
304044
+ const numDef = editor.converter.numbering?.definitions?.[numId];
304045
+ if (!numDef?.elements)
304046
+ return false;
304047
+ const ilvlStr = String(ilvl);
304048
+ return numDef.elements.some((el) => el.name === "w:lvlOverride" && el.attributes?.["w:ilvl"] === ilvlStr);
304049
+ }
304050
+ function clearLevelOverride2(editor, numId, ilvl) {
304051
+ if (!hasLevelOverride3(editor, numId, ilvl))
304052
+ return false;
304053
+ removeLvlOverride2(editor, numId, ilvl);
304054
+ return true;
304055
+ }
304056
+ function captureTemplate2(editor, abstractNumId, levels) {
304057
+ const abstract = editor.converter.numbering?.abstracts?.[abstractNumId];
304058
+ if (!abstract?.elements)
304059
+ return null;
304060
+ const lvlElements = abstract.elements.filter((el) => el.name === "w:lvl");
304061
+ const captured = [];
304062
+ for (const lvlEl of lvlElements) {
304063
+ const ilvl = Number(lvlEl.attributes?.["w:ilvl"]);
304064
+ if (levels && !levels.includes(ilvl))
304065
+ continue;
304066
+ captured.push(readLevelProperties2(lvlEl, ilvl));
304067
+ }
304068
+ captured.sort((a2, b2) => a2.level - b2.level);
304069
+ return { version: 1, levels: captured };
304070
+ }
304071
+ function applyTemplateToAbstract2(editor, abstractNumId, template, levels) {
304072
+ const abstract = editor.converter.numbering?.abstracts?.[abstractNumId];
304073
+ if (!abstract?.elements)
304074
+ return { changed: false, error: "ABSTRACT_NOT_FOUND" };
304075
+ const templateByLevel = new Map;
304076
+ for (const entry of template.levels) {
304077
+ templateByLevel.set(entry.level, entry);
304078
+ }
304079
+ const targetLevels = levels ?? template.levels.map((l) => l.level);
304080
+ for (const ilvl of targetLevels) {
304081
+ if (!templateByLevel.has(ilvl)) {
304082
+ return { changed: false, error: "LEVEL_NOT_IN_TEMPLATE" };
304083
+ }
304084
+ }
304085
+ for (const ilvl of targetLevels) {
304086
+ if (!findLevelElement2(abstract, ilvl)) {
304087
+ return { changed: false, error: "LEVEL_NOT_IN_ABSTRACT" };
304088
+ }
304089
+ }
304090
+ let anyChanged = false;
304091
+ for (const ilvl of targetLevels) {
304092
+ const entry = templateByLevel.get(ilvl);
304093
+ const lvlEl = findLevelElement2(abstract, ilvl);
304094
+ if (entry.numFmt != null || entry.lvlText != null) {
304095
+ const fmtParams = {};
304096
+ if (entry.numFmt != null)
304097
+ fmtParams.numFmt = entry.numFmt;
304098
+ if (entry.lvlText != null)
304099
+ fmtParams.lvlText = entry.lvlText;
304100
+ if (entry.start != null)
304101
+ fmtParams.start = entry.start;
304102
+ if (fmtParams.numFmt != null && fmtParams.lvlText != null) {
304103
+ anyChanged = mutateLevelNumberingFormat2(lvlEl, fmtParams) || anyChanged;
304104
+ } else {
304105
+ if (fmtParams.numFmt != null)
304106
+ anyChanged = setChildAttr2(lvlEl, "w:numFmt", fmtParams.numFmt) || anyChanged;
304107
+ if (fmtParams.lvlText != null)
304108
+ anyChanged = setChildAttr2(lvlEl, "w:lvlText", fmtParams.lvlText) || anyChanged;
304109
+ if (fmtParams.start != null)
304110
+ anyChanged = setChildAttr2(lvlEl, "w:start", String(fmtParams.start)) || anyChanged;
304111
+ }
304112
+ } else if (entry.start != null) {
304113
+ anyChanged = setChildAttr2(lvlEl, "w:start", String(entry.start)) || anyChanged;
304114
+ }
304115
+ if (entry.alignment != null) {
304116
+ anyChanged = mutateLevelAlignment2(lvlEl, entry.alignment) || anyChanged;
304117
+ }
304118
+ if (entry.indents != null) {
304119
+ anyChanged = mutateLevelIndents2(lvlEl, entry.indents) || anyChanged;
304120
+ }
304121
+ if (entry.trailingCharacter != null) {
304122
+ anyChanged = mutateLevelTrailingCharacter2(lvlEl, entry.trailingCharacter) || anyChanged;
304123
+ }
304124
+ if (entry.markerFont != null) {
304125
+ anyChanged = mutateLevelMarkerFont2(lvlEl, entry.markerFont) || anyChanged;
304126
+ }
304127
+ if (entry.pictureBulletId != null) {
304128
+ anyChanged = mutateLevelPictureBulletId2(lvlEl, entry.pictureBulletId) || anyChanged;
304129
+ }
304130
+ }
304131
+ if (anyChanged) {
304132
+ syncAbstractAndEmit2(editor, abstractNumId, abstract);
304133
+ }
304134
+ return { changed: anyChanged };
304135
+ }
304136
+ function buildOrderedPresetTemplate2(config34) {
304137
+ const levels = [];
304138
+ for (let ilvl = 0;ilvl <= 8; ilvl++) {
304139
+ levels.push({
304140
+ level: ilvl,
304141
+ numFmt: config34.numFmt,
304142
+ lvlText: `%${ilvl + 1}${config34.lvlTextSuffix}`,
304143
+ start: 1,
304144
+ alignment: "left",
304145
+ indents: {
304146
+ left: INDENT_PER_LEVEL_TWIPS2 * (ilvl + 1),
304147
+ hanging: HANGING_INDENT_TWIPS2
304148
+ }
304149
+ });
304150
+ }
304151
+ return { version: 1, levels };
304152
+ }
304153
+ function buildBulletPresetTemplate2(config34) {
304154
+ const levels = [];
304155
+ for (let ilvl = 0;ilvl <= 8; ilvl++) {
304156
+ levels.push({
304157
+ level: ilvl,
304158
+ numFmt: "bullet",
304159
+ lvlText: config34.markerText,
304160
+ start: 1,
304161
+ alignment: "left",
304162
+ markerFont: config34.fontFamily,
304163
+ indents: {
304164
+ left: INDENT_PER_LEVEL_TWIPS2 * (ilvl + 1),
304165
+ hanging: HANGING_INDENT_TWIPS2
304166
+ }
304167
+ });
304168
+ }
304169
+ return { version: 1, levels };
304170
+ }
304171
+ function getPresetTemplate2(presetId) {
304172
+ return PRESET_TEMPLATES2[presetId];
304173
+ }
304174
+ var INDENT_PER_LEVEL_TWIPS2 = 720, HANGING_INDENT_TWIPS2 = 360, ORDERED_PRESET_CONFIG2, BULLET_PRESET_CONFIG2, PRESET_TEMPLATES2, LevelFormattingHelpers2;
304175
+ var init_list_level_formatting_helpers = __esm(() => {
304176
+ init_abstractNum();
304177
+ init_list_numbering_helpers();
304178
+ ORDERED_PRESET_CONFIG2 = {
304179
+ decimal: { numFmt: "decimal", lvlTextSuffix: "." },
304180
+ decimalParenthesis: { numFmt: "decimal", lvlTextSuffix: ")" },
304181
+ lowerLetter: { numFmt: "lowerLetter", lvlTextSuffix: "." },
304182
+ upperLetter: { numFmt: "upperLetter", lvlTextSuffix: "." },
304183
+ lowerRoman: { numFmt: "lowerRoman", lvlTextSuffix: "." },
304184
+ upperRoman: { numFmt: "upperRoman", lvlTextSuffix: "." }
304185
+ };
304186
+ BULLET_PRESET_CONFIG2 = {
304187
+ disc: { markerText: "•", fontFamily: "Symbol" },
304188
+ circle: { markerText: "o", fontFamily: "Courier New" },
304189
+ square: { markerText: "", fontFamily: "Wingdings" },
304190
+ dash: { markerText: "–", fontFamily: "Calibri" }
304191
+ };
304192
+ PRESET_TEMPLATES2 = {};
304193
+ for (const [id2, config34] of Object.entries(ORDERED_PRESET_CONFIG2)) {
304194
+ PRESET_TEMPLATES2[id2] = buildOrderedPresetTemplate2(config34);
304195
+ }
304196
+ for (const [id2, config34] of Object.entries(BULLET_PRESET_CONFIG2)) {
304197
+ PRESET_TEMPLATES2[id2] = buildBulletPresetTemplate2(config34);
304198
+ }
304199
+ LevelFormattingHelpers2 = {
304200
+ readLevelProperties: readLevelProperties2,
304201
+ findLevelElement: findLevelElement2,
304202
+ hasLevel: hasLevel2,
304203
+ setLevelNumberingFormat: setLevelNumberingFormat2,
304204
+ setLevelBulletMarker: setLevelBulletMarker2,
304205
+ setLevelPictureBulletId: setLevelPictureBulletId2,
304206
+ setLevelAlignment: setLevelAlignment2,
304207
+ setLevelIndents: setLevelIndents2,
304208
+ setLevelTrailingCharacter: setLevelTrailingCharacter2,
304209
+ setLevelMarkerFont: setLevelMarkerFont2,
304210
+ hasLevelOverride: hasLevelOverride3,
304211
+ clearLevelOverride: clearLevelOverride2,
304212
+ captureTemplate: captureTemplate2,
304213
+ applyTemplateToAbstract: applyTemplateToAbstract2,
304214
+ getPresetTemplate: getPresetTemplate2,
304215
+ PRESET_TEMPLATES: PRESET_TEMPLATES2
304216
+ };
304217
+ });
304218
+
304219
+ // ../../packages/super-editor/src/document-api-adapters/plan-engine/lists-formatting-wrappers.ts
304220
+ function toListsFailure3(code9, message, details) {
304221
+ return { success: false, failure: { code: code9, message, details } };
304222
+ }
304223
+ function dispatchEditorTransaction3(editor, tr) {
304224
+ if (typeof editor.dispatch === "function") {
304225
+ editor.dispatch(tr);
304226
+ return;
304227
+ }
304228
+ if (typeof editor.view?.dispatch === "function") {
304229
+ editor.view.dispatch(tr);
304230
+ }
304231
+ }
304232
+ function validateLevel2(level) {
304233
+ if (level < 0 || level > 8) {
304234
+ return toListsFailure3("LEVEL_OUT_OF_RANGE", "Level must be between 0 and 8.", { level });
304235
+ }
304236
+ return null;
304237
+ }
304238
+ function validateLevelsArray2(levels) {
304239
+ if (!levels)
304240
+ return null;
304241
+ for (const lvl of levels) {
304242
+ if (lvl < 0 || lvl > 8) {
304243
+ return toListsFailure3("LEVEL_OUT_OF_RANGE", "Each level must be between 0 and 8.", { level: lvl });
304244
+ }
304245
+ }
304246
+ if (new Set(levels).size !== levels.length) {
304247
+ return toListsFailure3("INVALID_INPUT", "levels must contain unique values.", { levels });
304248
+ }
304249
+ for (let i4 = 1;i4 < levels.length; i4++) {
304250
+ if (levels[i4] <= levels[i4 - 1]) {
304251
+ return toListsFailure3("INVALID_INPUT", "levels must be sorted in ascending order.", { levels });
304252
+ }
304253
+ }
304254
+ return null;
304255
+ }
304256
+ function preflightTemplateLevels2(template, levels, target) {
304257
+ const templateLevelSet = new Set(template.levels.map((l) => l.level));
304258
+ const targetLevels = levels ?? template.levels.map((l) => l.level);
304259
+ for (const ilvl of targetLevels) {
304260
+ if (!templateLevelSet.has(ilvl)) {
304261
+ return toListsFailure3("INVALID_INPUT", "Requested level does not exist in the template.", { target });
304262
+ }
304263
+ }
304264
+ return null;
304265
+ }
304266
+ function toApplyTemplateError2(error, target) {
304267
+ switch (error) {
304268
+ case "ABSTRACT_NOT_FOUND":
304269
+ return toListsFailure3("INVALID_TARGET", "Abstract numbering definition not found.", { target });
304270
+ case "LEVEL_NOT_IN_TEMPLATE":
304271
+ return toListsFailure3("INVALID_INPUT", "Requested level does not exist in the template.", { target });
304272
+ case "LEVEL_NOT_IN_ABSTRACT":
304273
+ return toListsFailure3("INVALID_TARGET", "Requested level does not exist in the abstract definition.", { target });
304274
+ default:
304275
+ return toListsFailure3("INVALID_INPUT", `Template application failed: ${error}.`, { target });
304276
+ }
304277
+ }
304278
+ function resolveTargetAbstract2(editor, target) {
304279
+ const resolved = resolveListItem2(editor, target);
304280
+ if (resolved.numId == null) {
304281
+ return {
304282
+ ok: false,
304283
+ failure: toListsFailure3("INVALID_TARGET", "Target must have numbering metadata.", { target })
304284
+ };
304285
+ }
304286
+ const abstractNumId = getAbstractNumId2(editor, resolved.numId);
304287
+ if (abstractNumId == null) {
304288
+ return {
304289
+ ok: false,
304290
+ failure: toListsFailure3("INVALID_TARGET", "Could not resolve abstract definition for target.", { target })
304291
+ };
304292
+ }
304293
+ return { ok: true, resolved, abstractNumId, numId: resolved.numId };
304294
+ }
304295
+ function executeSingleLevelMutation2(editor, operationId, target, level, options, mutate) {
304296
+ rejectTrackedMode2(operationId, options);
304297
+ const levelError = validateLevel2(level);
304298
+ if (levelError)
304299
+ return levelError;
304300
+ const targetResult = resolveTargetAbstract2(editor, target);
304301
+ if (!targetResult.ok)
304302
+ return targetResult.failure;
304303
+ if (!LevelFormattingHelpers2.hasLevel(editor, targetResult.abstractNumId, level)) {
304304
+ return toListsFailure3("LEVEL_NOT_FOUND", `Level ${level} does not exist in the abstract definition.`, {
304305
+ target,
304306
+ level
304307
+ });
304308
+ }
304309
+ if (options?.dryRun) {
304310
+ return { success: true, item: targetResult.resolved.address };
304311
+ }
304312
+ const receipt2 = executeDomainCommand2(editor, () => {
304313
+ const changed = mutate(targetResult.abstractNumId, level);
304314
+ if (!changed)
304315
+ return false;
304316
+ dispatchEditorTransaction3(editor, editor.state.tr);
304317
+ return true;
304318
+ }, { expectedRevision: options?.expectedRevision });
304319
+ if (receipt2.steps[0]?.effect !== "changed") {
304320
+ return toListsFailure3("NO_OP", `${operationId}: values already match.`, { target });
304321
+ }
304322
+ return { success: true, item: targetResult.resolved.address };
304323
+ }
304324
+ function listsApplyTemplateWrapper2(editor, input2, options) {
304325
+ rejectTrackedMode2("lists.applyTemplate", options);
304326
+ if (input2.template.version !== 1) {
304327
+ return toListsFailure3("INVALID_INPUT", "Unsupported template version.", { version: input2.template.version });
304328
+ }
304329
+ const levelsError = validateLevelsArray2(input2.levels);
304330
+ if (levelsError)
304331
+ return levelsError;
304332
+ const targetResult = resolveTargetAbstract2(editor, input2.target);
304333
+ if (!targetResult.ok)
304334
+ return targetResult.failure;
304335
+ const preflightError = preflightTemplateLevels2(input2.template, input2.levels, input2.target);
304336
+ if (preflightError)
304337
+ return preflightError;
304338
+ if (options?.dryRun) {
304339
+ return { success: true, item: targetResult.resolved.address };
304340
+ }
304341
+ let applyError;
304342
+ const receipt2 = executeDomainCommand2(editor, () => {
304343
+ const result = LevelFormattingHelpers2.applyTemplateToAbstract(editor, targetResult.abstractNumId, input2.template, input2.levels);
304344
+ if (result.error) {
304345
+ applyError = result.error;
304346
+ return false;
304347
+ }
304348
+ if (!result.changed)
304349
+ return false;
304350
+ dispatchEditorTransaction3(editor, editor.state.tr);
304351
+ return true;
304352
+ }, { expectedRevision: options?.expectedRevision });
304353
+ if (applyError) {
304354
+ return toApplyTemplateError2(applyError, input2.target);
304355
+ }
304356
+ if (receipt2.steps[0]?.effect !== "changed") {
304357
+ return toListsFailure3("NO_OP", "All template levels already match.", { target: input2.target });
304358
+ }
304359
+ return { success: true, item: targetResult.resolved.address };
304360
+ }
304361
+ function listsApplyPresetWrapper2(editor, input2, options) {
304362
+ rejectTrackedMode2("lists.applyPreset", options);
304363
+ const template = LevelFormattingHelpers2.getPresetTemplate(input2.preset);
304364
+ if (!template) {
304365
+ return toListsFailure3("INVALID_INPUT", `Unknown preset: ${input2.preset}.`, { preset: input2.preset });
304366
+ }
304367
+ const levelsError = validateLevelsArray2(input2.levels);
304368
+ if (levelsError)
304369
+ return levelsError;
304370
+ const targetResult = resolveTargetAbstract2(editor, input2.target);
304371
+ if (!targetResult.ok)
304372
+ return targetResult.failure;
304373
+ const preflightError = preflightTemplateLevels2(template, input2.levels, input2.target);
304374
+ if (preflightError)
304375
+ return preflightError;
304376
+ if (options?.dryRun) {
304377
+ return { success: true, item: targetResult.resolved.address };
304378
+ }
304379
+ let applyError;
304380
+ const receipt2 = executeDomainCommand2(editor, () => {
304381
+ const result = LevelFormattingHelpers2.applyTemplateToAbstract(editor, targetResult.abstractNumId, template, input2.levels);
304382
+ if (result.error) {
304383
+ applyError = result.error;
304384
+ return false;
304385
+ }
304386
+ if (!result.changed)
304387
+ return false;
304388
+ dispatchEditorTransaction3(editor, editor.state.tr);
304389
+ return true;
304390
+ }, { expectedRevision: options?.expectedRevision });
304391
+ if (applyError) {
304392
+ return toApplyTemplateError2(applyError, input2.target);
304393
+ }
304394
+ if (receipt2.steps[0]?.effect !== "changed") {
304395
+ return toListsFailure3("NO_OP", "All preset levels already match.", { target: input2.target });
304396
+ }
304397
+ return { success: true, item: targetResult.resolved.address };
304398
+ }
304399
+ function listsCaptureTemplateWrapper2(editor, input2) {
304400
+ const levelsError = validateLevelsArray2(input2.levels);
304401
+ if (levelsError)
304402
+ return levelsError;
304403
+ const targetResult = resolveTargetAbstract2(editor, input2.target);
304404
+ if (!targetResult.ok)
304405
+ return targetResult.failure;
304406
+ const template = LevelFormattingHelpers2.captureTemplate(editor, targetResult.abstractNumId, input2.levels);
304407
+ if (!template) {
304408
+ return toListsFailure3("INVALID_TARGET", "Could not capture template from target.", { target: input2.target });
304409
+ }
304410
+ return { success: true, template };
304411
+ }
304412
+ function listsSetLevelNumberingWrapper2(editor, input2, options) {
304413
+ return executeSingleLevelMutation2(editor, "lists.setLevelNumbering", input2.target, input2.level, options, (abstractNumId, ilvl) => LevelFormattingHelpers2.setLevelNumberingFormat(editor, abstractNumId, ilvl, {
304414
+ numFmt: input2.numFmt,
304415
+ lvlText: input2.lvlText,
304416
+ start: input2.start
304417
+ }));
304418
+ }
304419
+ function listsSetLevelBulletWrapper2(editor, input2, options) {
304420
+ return executeSingleLevelMutation2(editor, "lists.setLevelBullet", input2.target, input2.level, options, (abstractNumId, ilvl) => LevelFormattingHelpers2.setLevelBulletMarker(editor, abstractNumId, ilvl, input2.markerText));
304421
+ }
304422
+ function listsSetLevelPictureBulletWrapper2(editor, input2, options) {
304423
+ rejectTrackedMode2("lists.setLevelPictureBullet", options);
304424
+ const converter = editor.converter;
304425
+ if (converter?.convertedXml && !converter.convertedXml["word/numbering.xml"]) {
304426
+ return toListsFailure3("CAPABILITY_UNAVAILABLE", "Picture bullets require a numbering definition (word/numbering.xml).", {
304427
+ target: input2.target
304428
+ });
304429
+ }
304430
+ return executeSingleLevelMutation2(editor, "lists.setLevelPictureBullet", input2.target, input2.level, options, (abstractNumId, ilvl) => LevelFormattingHelpers2.setLevelPictureBulletId(editor, abstractNumId, ilvl, input2.pictureBulletId));
304431
+ }
304432
+ function listsSetLevelAlignmentWrapper2(editor, input2, options) {
304433
+ return executeSingleLevelMutation2(editor, "lists.setLevelAlignment", input2.target, input2.level, options, (abstractNumId, ilvl) => LevelFormattingHelpers2.setLevelAlignment(editor, abstractNumId, ilvl, input2.alignment));
304434
+ }
304435
+ function listsSetLevelIndentsWrapper2(editor, input2, options) {
304436
+ const hasLeft = input2.left != null;
304437
+ const hasHanging = input2.hanging != null;
304438
+ const hasFirstLine = input2.firstLine != null;
304439
+ if (!hasLeft && !hasHanging && !hasFirstLine) {
304440
+ return toListsFailure3("INVALID_INPUT", "At least one indent property is required.", {});
304441
+ }
304442
+ if (hasHanging && hasFirstLine) {
304443
+ return toListsFailure3("INVALID_INPUT", "hanging and firstLine are mutually exclusive.", {});
304444
+ }
304445
+ return executeSingleLevelMutation2(editor, "lists.setLevelIndents", input2.target, input2.level, options, (abstractNumId, ilvl) => {
304446
+ const indents = {};
304447
+ if (hasLeft)
304448
+ indents.left = input2.left;
304449
+ if (hasHanging)
304450
+ indents.hanging = input2.hanging;
304451
+ if (hasFirstLine)
304452
+ indents.firstLine = input2.firstLine;
304453
+ return LevelFormattingHelpers2.setLevelIndents(editor, abstractNumId, ilvl, indents);
304454
+ });
304455
+ }
304456
+ function listsSetLevelTrailingCharacterWrapper2(editor, input2, options) {
304457
+ return executeSingleLevelMutation2(editor, "lists.setLevelTrailingCharacter", input2.target, input2.level, options, (abstractNumId, ilvl) => LevelFormattingHelpers2.setLevelTrailingCharacter(editor, abstractNumId, ilvl, input2.trailingCharacter));
304458
+ }
304459
+ function listsSetLevelMarkerFontWrapper2(editor, input2, options) {
304460
+ return executeSingleLevelMutation2(editor, "lists.setLevelMarkerFont", input2.target, input2.level, options, (abstractNumId, ilvl) => LevelFormattingHelpers2.setLevelMarkerFont(editor, abstractNumId, ilvl, input2.fontFamily));
304461
+ }
304462
+ function listsClearLevelOverridesWrapper2(editor, input2, options) {
304463
+ rejectTrackedMode2("lists.clearLevelOverrides", options);
304464
+ const levelError = validateLevel2(input2.level);
304465
+ if (levelError)
304466
+ return levelError;
304467
+ const resolved = resolveListItem2(editor, input2.target);
304468
+ if (resolved.numId == null) {
304469
+ return toListsFailure3("INVALID_TARGET", "Target must have numbering metadata.", { target: input2.target });
304470
+ }
304471
+ if (options?.dryRun) {
304472
+ return { success: true, item: resolved.address };
304473
+ }
304474
+ if (!LevelFormattingHelpers2.hasLevelOverride(editor, resolved.numId, input2.level)) {
304475
+ return toListsFailure3("NO_OP", "No override exists for this level.", { target: input2.target, level: input2.level });
304476
+ }
304477
+ const receipt2 = executeDomainCommand2(editor, () => {
304478
+ LevelFormattingHelpers2.clearLevelOverride(editor, resolved.numId, input2.level);
304479
+ dispatchEditorTransaction3(editor, editor.state.tr);
304480
+ return true;
304481
+ }, { expectedRevision: options?.expectedRevision });
304482
+ if (receipt2.steps[0]?.effect !== "changed") {
304483
+ return toListsFailure3("NO_OP", "clearLevelOverrides could not be applied.", { target: input2.target });
304484
+ }
304485
+ return { success: true, item: resolved.address };
304486
+ }
304487
+ var init_lists_formatting_wrappers = __esm(() => {
304488
+ init_mutation_helpers();
304489
+ init_plan_wrappers();
304490
+ init_list_item_resolver();
304491
+ init_list_sequence_helpers();
304492
+ init_list_level_formatting_helpers();
304493
+ });
304494
+
301984
304495
  // ../../packages/super-editor/src/document-api-adapters/plan-engine/preview.ts
301985
304496
  function previewPlan2(editor, input2) {
301986
304497
  checkRevision2(editor, input2.expectedRevision);
@@ -309196,7 +311707,7 @@ function normalizeTocContent2(content5, editor) {
309196
311707
  return null;
309197
311708
  return content5.map((entry) => entry && typeof entry === "object" && typeof entry.type === "string" ? editor.state.schema.nodeFromJSON(entry) : entry);
309198
311709
  }
309199
- function dispatchEditorTransaction3(editor, tr) {
311710
+ function dispatchEditorTransaction4(editor, tr) {
309200
311711
  if (typeof editor.dispatch === "function") {
309201
311712
  editor.dispatch(tr);
309202
311713
  return;
@@ -309312,7 +311823,7 @@ function tocConfigureWrapper2(editor, input2, options) {
309312
311823
  const to = resolved.pos + resolved.node.nodeSize - 1;
309313
311824
  tr.replaceWith(from4, to, normalizeTocContent2(nextContent, editor) ?? []);
309314
311825
  }
309315
- dispatchEditorTransaction3(editor, tr);
311826
+ dispatchEditorTransaction4(editor, tr);
309316
311827
  return true;
309317
311828
  } catch {
309318
311829
  return false;
@@ -309353,7 +311864,7 @@ function tocUpdateAll2(editor, input2, options) {
309353
311864
  const from4 = resolved.pos + 1;
309354
311865
  const to = resolved.pos + resolved.node.nodeSize - 1;
309355
311866
  tr.replaceWith(from4, to, normalizeTocContent2(content5, editor) ?? []);
309356
- dispatchEditorTransaction3(editor, tr);
311867
+ dispatchEditorTransaction4(editor, tr);
309357
311868
  return true;
309358
311869
  } catch {
309359
311870
  return false;
@@ -309403,7 +311914,7 @@ function tocUpdatePageNumbers2(editor, input2, options) {
309403
311914
  const from4 = resolved.pos + 1;
309404
311915
  const to = resolved.pos + resolved.node.nodeSize - 1;
309405
311916
  tr.replaceWith(from4, to, normalizeTocContent2(updatedContent, editor) ?? []);
309406
- dispatchEditorTransaction3(editor, tr);
311917
+ dispatchEditorTransaction4(editor, tr);
309407
311918
  return true;
309408
311919
  } catch {
309409
311920
  return false;
@@ -309462,7 +311973,7 @@ function tocRemoveWrapper2(editor, input2, options) {
309462
311973
  try {
309463
311974
  const { tr } = editor.state;
309464
311975
  tr.delete(resolved.pos, resolved.pos + resolved.node.nodeSize);
309465
- dispatchEditorTransaction3(editor, tr);
311976
+ dispatchEditorTransaction4(editor, tr);
309466
311977
  return true;
309467
311978
  } catch {
309468
311979
  return false;
@@ -309512,7 +312023,7 @@ function createTableOfContentsWrapper2(editor, input2, options) {
309512
312023
  try {
309513
312024
  const { tr } = editor.state;
309514
312025
  tr.insert(pos, tocNode);
309515
- dispatchEditorTransaction3(editor, tr);
312026
+ dispatchEditorTransaction4(editor, tr);
309516
312027
  return true;
309517
312028
  } catch (error) {
309518
312029
  if (error instanceof RangeError)
@@ -310479,7 +312990,18 @@ function assembleDocumentApiAdapters2(editor) {
310479
312990
  continuePrevious: (input2, options) => listsContinuePreviousWrapper2(editor, input2, options),
310480
312991
  canContinuePrevious: (input2) => listsCanContinuePreviousWrapper2(editor, input2),
310481
312992
  setLevelRestart: (input2, options) => listsSetLevelRestartWrapper2(editor, input2, options),
310482
- convertToText: (input2, options) => listsConvertToTextWrapper2(editor, input2, options)
312993
+ convertToText: (input2, options) => listsConvertToTextWrapper2(editor, input2, options),
312994
+ applyTemplate: (input2, options) => listsApplyTemplateWrapper2(editor, input2, options),
312995
+ applyPreset: (input2, options) => listsApplyPresetWrapper2(editor, input2, options),
312996
+ captureTemplate: (input2) => listsCaptureTemplateWrapper2(editor, input2),
312997
+ setLevelNumbering: (input2, options) => listsSetLevelNumberingWrapper2(editor, input2, options),
312998
+ setLevelBullet: (input2, options) => listsSetLevelBulletWrapper2(editor, input2, options),
312999
+ setLevelPictureBullet: (input2, options) => listsSetLevelPictureBulletWrapper2(editor, input2, options),
313000
+ setLevelAlignment: (input2, options) => listsSetLevelAlignmentWrapper2(editor, input2, options),
313001
+ setLevelIndents: (input2, options) => listsSetLevelIndentsWrapper2(editor, input2, options),
313002
+ setLevelTrailingCharacter: (input2, options) => listsSetLevelTrailingCharacterWrapper2(editor, input2, options),
313003
+ setLevelMarkerFont: (input2, options) => listsSetLevelMarkerFontWrapper2(editor, input2, options),
313004
+ clearLevelOverrides: (input2, options) => listsClearLevelOverridesWrapper2(editor, input2, options)
310483
313005
  },
310484
313006
  sections: {
310485
313007
  list: (query2) => sectionsListAdapter3(editor, query2),
@@ -310597,6 +313119,7 @@ var init_assemble_adapters = __esm(() => {
310597
313119
  init_create_wrappers();
310598
313120
  init_blocks_wrappers();
310599
313121
  init_lists_wrappers();
313122
+ init_lists_formatting_wrappers();
310600
313123
  init_executor();
310601
313124
  init_preview();
310602
313125
  init_query_match_adapter();
@@ -365504,6 +368027,17 @@ var init_invoke_input = __esm(() => {
365504
368027
  "lists.continuePrevious": "input",
365505
368028
  "lists.canContinuePrevious": "input",
365506
368029
  "lists.setLevelRestart": "input",
368030
+ "lists.applyTemplate": "input",
368031
+ "lists.applyPreset": "input",
368032
+ "lists.captureTemplate": "input",
368033
+ "lists.setLevelNumbering": "input",
368034
+ "lists.setLevelBullet": "input",
368035
+ "lists.setLevelPictureBullet": "input",
368036
+ "lists.setLevelAlignment": "input",
368037
+ "lists.setLevelIndents": "input",
368038
+ "lists.setLevelTrailingCharacter": "input",
368039
+ "lists.setLevelMarkerFont": "input",
368040
+ "lists.clearLevelOverrides": "input",
365507
368041
  "lists.convertToText": "input",
365508
368042
  "create.paragraph": "input",
365509
368043
  "create.heading": "input"
@@ -366682,6 +369216,17 @@ var init_operation_params = __esm(() => {
366682
369216
  ...LIST_TARGET_FLAT_PARAMS
366683
369217
  ],
366684
369218
  "doc.lists.setLevelRestart": [{ name: "input", kind: "jsonFlag", flag: "input-json", type: "json" }],
369219
+ "doc.lists.applyTemplate": [{ name: "input", kind: "jsonFlag", flag: "input-json", type: "json" }],
369220
+ "doc.lists.applyPreset": [{ name: "input", kind: "jsonFlag", flag: "input-json", type: "json" }],
369221
+ "doc.lists.captureTemplate": [{ name: "input", kind: "jsonFlag", flag: "input-json", type: "json" }],
369222
+ "doc.lists.setLevelNumbering": [{ name: "input", kind: "jsonFlag", flag: "input-json", type: "json" }],
369223
+ "doc.lists.setLevelBullet": [{ name: "input", kind: "jsonFlag", flag: "input-json", type: "json" }],
369224
+ "doc.lists.setLevelPictureBullet": [{ name: "input", kind: "jsonFlag", flag: "input-json", type: "json" }],
369225
+ "doc.lists.setLevelAlignment": [{ name: "input", kind: "jsonFlag", flag: "input-json", type: "json" }],
369226
+ "doc.lists.setLevelIndents": [{ name: "input", kind: "jsonFlag", flag: "input-json", type: "json" }],
369227
+ "doc.lists.setLevelTrailingCharacter": [{ name: "input", kind: "jsonFlag", flag: "input-json", type: "json" }],
369228
+ "doc.lists.setLevelMarkerFont": [{ name: "input", kind: "jsonFlag", flag: "input-json", type: "json" }],
369229
+ "doc.lists.clearLevelOverrides": [{ name: "input", kind: "jsonFlag", flag: "input-json", type: "json" }],
366685
369230
  "doc.lists.convertToText": [
366686
369231
  { name: "input", kind: "jsonFlag", flag: "input-json", type: "json" },
366687
369232
  ...LIST_TARGET_FLAT_PARAMS